xref: /MusicFree/src/constants/commonConst.ts (revision adf41771e5c3ca7c27879b461cece7e444d1dc58)
100ebdfd8S猫头猫import {Easing, EasingFunction} from 'react-native-reanimated';
2e650bfb3S猫头猫
321f1ca13S猫头猫export const internalSymbolKey = Symbol.for('$');
44c222b69S猫头猫// 加入播放列表的时间;app内使用,无法被序列化
55500cea7S猫头猫export const timeStampSymbol = Symbol.for('time-stamp');
65500cea7S猫头猫// 加入播放列表的辅助顺序
75500cea7S猫头猫export const sortIndexSymbol = Symbol.for('sort-index');
80e4173cdS猫头猫export const internalSerializeKey = '$';
9c99a59f8S猫头猫export const localMusicSheetId = 'local-music-sheet';
100412c91bS猫头猫export const musicHistorySheetId = 'history-music-sheet';
117993f90eS猫头猫
127993f90eS猫头猫export const localPluginPlatform = '本地';
137993f90eS猫头猫export const localPluginHash = 'local-plugin-hash';
14ebadf528S猫头猫
15ebadf528S猫头猫export const internalFakeSoundKey = 'fake-key';
16e08d37a3S猫头猫
17e08d37a3S猫头猫const emptyFunction = () => {};
18e08d37a3S猫头猫Object.freeze(emptyFunction);
19e08d37a3S猫头猫export {emptyFunction};
20e08d37a3S猫头猫
2120e2869eS猫头猫export enum RequestStateCode {
222d0ec5c1S猫头猫    /** 空闲 */
23956ee1b7S猫头猫    IDLE = 0b00000000,
24956ee1b7S猫头猫    PENDING_FIRST_PAGE = 0b00000010,
25956ee1b7S猫头猫    LOADING = 0b00000010,
2620e2869eS猫头猫    /** 检索中 */
27956ee1b7S猫头猫    PENDING_REST_PAGE = 0b00000011,
2820e2869eS猫头猫    /** 部分结束 */
29956ee1b7S猫头猫    PARTLY_DONE = 0b00000100,
3020e2869eS猫头猫    /** 全部结束 */
31956ee1b7S猫头猫    FINISHED = 0b0001000,
32956ee1b7S猫头猫    /** 出错了 */
33956ee1b7S猫头猫    ERROR = 0b10000000,
34be474dd8S猫头猫}
352d0ec5c1S猫头猫
362d0ec5c1S猫头猫export const StorageKeys = {
3743eb30bfS猫头猫    /** @deprecated */
3824e5e74aS猫头猫    MediaMetaKeys: 'media-meta-keys',
39e08d37a3S猫头猫    PluginMetaKey: 'plugin-meta',
404060c00aS猫头猫    MediaCache: 'media-cache',
41afb5c234S猫头猫    LocalMusicSheet: 'local-music-sheet',
422d0ec5c1S猫头猫};
43cfa0fc07S猫头猫
44cfa0fc07S猫头猫export const CacheControl = {
45cfa0fc07S猫头猫    Cache: 'cache',
46cfa0fc07S猫头猫    NoCache: 'no-cache',
47cfa0fc07S猫头猫    NoStore: 'no-store',
48cfa0fc07S猫头猫};
498fc75cb2S猫头猫
508fc75cb2S猫头猫export const supportLocalMediaType = [
518fc75cb2S猫头猫    '.mp3',
528fc75cb2S猫头猫    '.flac',
538fc75cb2S猫头猫    '.wma',
548fc75cb2S猫头猫    '.wav',
558fc75cb2S猫头猫    '.m4a',
568fc75cb2S猫头猫    '.ogg',
578fc75cb2S猫头猫    '.acc',
588fc75cb2S猫头猫    '.aac',
598fc75cb2S猫头猫    '.ape',
608fc75cb2S猫头猫    '.opus',
618fc75cb2S猫头猫];
6297f16fdcS猫头猫
6397f16fdcS猫头猫/** 全局事件 */
6497f16fdcS猫头猫export enum EDeviceEvents {
6597f16fdcS猫头猫    /** 刷新歌词 */
6697f16fdcS猫头猫    REFRESH_LYRIC = 'refresh-lyric',
6797f16fdcS猫头猫}
68e650bfb3S猫头猫
6900ebdfd8S猫头猫const ANIMATION_EASING: EasingFunction = Easing.out(Easing.exp);
70e650bfb3S猫头猫const ANIMATION_DURATION = 150;
71e650bfb3S猫头猫
72e650bfb3S猫头猫const animationFast = {
73e650bfb3S猫头猫    duration: ANIMATION_DURATION,
74e650bfb3S猫头猫    easing: ANIMATION_EASING,
75e650bfb3S猫头猫};
76e650bfb3S猫头猫
77277c5280S猫头猫const animationNormal = {
78277c5280S猫头猫    duration: 250,
79277c5280S猫头猫    easing: ANIMATION_EASING,
80277c5280S猫头猫};
81277c5280S猫头猫
82277c5280S猫头猫const animationSlow = {
83277c5280S猫头猫    duration: 500,
84277c5280S猫头猫    easing: ANIMATION_EASING,
85277c5280S猫头猫};
86277c5280S猫头猫
87e650bfb3S猫头猫export const timingConfig = {
88e650bfb3S猫头猫    animationFast,
89277c5280S猫头猫    animationNormal,
90277c5280S猫头猫    animationSlow,
91e650bfb3S猫头猫};
92740e3947S猫头猫
93740e3947S猫头猫export const enum SortType {
94740e3947S猫头猫    // 未排序
95740e3947S猫头猫    None = 'None',
96740e3947S猫头猫    // 按标题排序
97740e3947S猫头猫    Title = 'title',
98740e3947S猫头猫    // 按作者排序
99740e3947S猫头猫    Artist = 'artist',
100740e3947S猫头猫    // 按专辑名排序
101740e3947S猫头猫    Album = 'album',
102740e3947S猫头猫    // 按时间排序
103740e3947S猫头猫    Newest = 'time',
104740e3947S猫头猫    // 按时间逆序
105740e3947S猫头猫    Oldest = 'time-rev',
106740e3947S猫头猫}
107*adf41771S猫头猫
108*adf41771S猫头猫export const enum ResumeMode {
109*adf41771S猫头猫    Append = 'append',
110*adf41771S猫头猫    Overwrite = 'overwrite',
111*adf41771S猫头猫    OverwriteDefault = 'overwrite-default',
112*adf41771S猫头猫}
113