SYMBOL INDEX (950 symbols across 272 files) FILE: generator/generate-assets.mjs function toCamelCase (line 6) | function toCamelCase(str) { FILE: src/components/base/SortableFlatList.tsx type ISortableFlatListProps (line 31) | interface ISortableFlatListProps { function SortableFlatList (line 51) | function SortableFlatList( type ISortableFlatListItemProps (line 318) | interface ISortableFlatListItemProps { function _SortableFlatListItem (line 335) | function _SortableFlatListItem(props: ISortableFlatListItemProps) { FILE: src/components/base/appBar.tsx type IAppBarProps (line 29) | interface IAppBarProps { constant ANIMATION_EASING (line 51) | const ANIMATION_EASING: Animated.EasingFunction = Easing.out(Easing.exp); constant ANIMATION_DURATION (line 52) | const ANIMATION_DURATION = 500; function AppBar (line 59) | function AppBar(props: IAppBarProps) { FILE: src/components/base/button.tsx function Button (line 13) | function Button(props: { FILE: src/components/base/checkbox.tsx type ICheckboxProps (line 8) | interface ICheckboxProps { function Checkbox (line 16) | function Checkbox(props: ICheckboxProps) { FILE: src/components/base/chip.tsx type IChipProps (line 8) | interface IChipProps { function Chip (line 14) | function Chip(props: IChipProps) { FILE: src/components/base/colorBlock.tsx type IColorBlockProps (line 6) | interface IColorBlockProps { function ColorBlock (line 9) | function ColorBlock(props: IColorBlockProps) { FILE: src/components/base/divider.tsx type IDividerProps (line 5) | interface IDividerProps { function Divider (line 9) | function Divider(props: IDividerProps) { FILE: src/components/base/empty.tsx type IEmptyProps (line 7) | interface IEmptyProps { function Empty (line 10) | function Empty(props: IEmptyProps) { FILE: src/components/base/fab.tsx type IFabProps (line 8) | interface IFabProps { function Fab (line 12) | function Fab(props: IFabProps) { FILE: src/components/base/fastImage.tsx type IFastImageProps (line 5) | interface IFastImageProps { FILE: src/components/base/horizontalSafeAreaView.tsx type IHorizontalSafeAreaViewProps (line 5) | interface IHorizontalSafeAreaViewProps { function HorizontalSafeAreaView (line 10) | function HorizontalSafeAreaView( FILE: src/components/base/icon.tsx type IIconName (line 78) | type IIconName = type IProps (line 153) | interface IProps extends SvgProps { function Icon (line 236) | function Icon(props: IProps) { FILE: src/components/base/iconButton.tsx type IIconButtonProps (line 9) | interface IIconButtonProps extends SvgProps { function IconButtonWithGesture (line 18) | function IconButtonWithGesture(props: IIconButtonProps) { function IconButton (line 46) | function IconButton(props: IIconButtonProps) { FILE: src/components/base/iconTextButton.tsx type IProps (line 10) | interface IProps { FILE: src/components/base/image.tsx type IImageProps (line 4) | interface IImageProps extends ImageProps { FILE: src/components/base/imageBtn.tsx type IImageBtnProps (line 8) | interface IImageBtnProps { function ImageBtn (line 14) | function ImageBtn(props: IImageBtnProps) { FILE: src/components/base/input.tsx type IInputProps (line 7) | interface IInputProps extends TextInputProps { function Input (line 12) | function Input(props: IInputProps) { FILE: src/components/base/linkText.tsx type ILinkTextProps (line 8) | type ILinkTextProps = TextProps & { function LinkText (line 15) | function LinkText(props: ILinkTextProps) { FILE: src/components/base/listEmpty.tsx type IEmptyProps (line 10) | interface IEmptyProps { function ListEmpty (line 14) | function ListEmpty(props: IEmptyProps) { FILE: src/components/base/listFooter.tsx type IProps (line 12) | interface IProps { function ListFooter (line 17) | function ListFooter(props: IProps) { FILE: src/components/base/listItem.tsx type IListItemProps (line 24) | interface IListItemProps { function ListItem (line 51) | function ListItem(props: IListItemProps) { type IListItemTextProps (line 84) | interface IListItemTextProps { function ListItemText (line 97) | function ListItemText(props: IListItemTextProps) { type IListItemIconProps (line 132) | interface IListItemIconProps { function ListItemIcon (line 144) | function ListItemIcon(props: IListItemIconProps) { type IListItemImageProps (line 184) | interface IListItemImageProps { function ListItemImage (line 196) | function ListItemImage(props: IListItemImageProps) { type IContentProps (line 235) | interface IContentProps { function Content (line 242) | function Content(props: IContentProps) { function ListItemHeader (line 281) | function ListItemHeader(props: { children?: ReactNode }) { FILE: src/components/base/loading.tsx type ILoadingProps (line 8) | interface ILoadingProps { function Loading (line 14) | function Loading(props: ILoadingProps) { FILE: src/components/base/noPlugin.tsx type IProps (line 7) | interface IProps { function NoPlugin (line 11) | function NoPlugin(props: IProps) { FILE: src/components/base/pageBackground.tsx function PageBackground (line 7) | function PageBackground() { FILE: src/components/base/paragraph.tsx type IParagraphProps (line 6) | interface IParagraphProps extends TextProps {} function Paragraph (line 7) | function Paragraph(props: IParagraphProps) { FILE: src/components/base/playAllBar.tsx type IProps (line 17) | interface IProps { FILE: src/components/base/portal.tsx type IPortalNode (line 5) | interface IPortalNode { type IPortalProps (line 12) | interface IPortalProps { function Portal (line 15) | function Portal(props: IPortalProps) { function PortalHost (line 62) | function PortalHost() { FILE: src/components/base/statusBar.tsx type IStatusBarProps (line 5) | interface IStatusBarProps extends StatusBarProps {} FILE: src/components/base/switch.tsx type ISwitchProps (line 17) | interface ISwitchProps extends SwitchProps {} function ThemeSwitch (line 21) | function ThemeSwitch(props: ISwitchProps) { FILE: src/components/base/tag.tsx type ITagProps (line 7) | interface ITagProps { function Tag (line 12) | function Tag(props: ITagProps) { FILE: src/components/base/textButton.tsx type IButtonProps (line 7) | interface IButtonProps { FILE: src/components/base/themeText.tsx type IThemeTextProps (line 6) | type IThemeTextProps = TextProps & { function ThemeText (line 14) | function ThemeText(props: IThemeTextProps) { FILE: src/components/base/tip.tsx type TipPosition (line 15) | type TipPosition = "top" | "bottom" | "left" | "right"; type ITipProps (line 17) | interface ITipProps { type ITipPortalProps (line 27) | interface ITipPortalProps { function Tip (line 224) | function Tip({ FILE: src/components/base/toast.tsx type IToastConfig (line 24) | interface IToastConfig { type IToastConfigInner (line 37) | type IToastConfigInner = IToastConfig & { function ToastBaseComponent (line 58) | function ToastBaseComponent() { function showToast (line 205) | function showToast(config: IToastConfig) { FILE: src/components/base/typeTag.tsx type ITypeTagProps (line 14) | interface ITypeTagProps { function TypeTag (line 22) | function TypeTag(props: ITypeTagProps) { FILE: src/components/base/verticalSafeAreaView.tsx type IVerticalSafeAreaViewProps (line 5) | interface IVerticalSafeAreaViewProps { function VerticalSafeAreaView (line 10) | function VerticalSafeAreaView( FILE: src/components/debug/index.tsx function Debug (line 6) | function Debug() { FILE: src/components/dialogs/components/base/index.tsx type IDialogProps (line 26) | interface IDialogProps { function Dialog (line 31) | function Dialog(props: IDialogProps) { type IDialogTitleProps (line 118) | interface IDialogTitleProps { function Title (line 125) | function Title(props: IDialogTitleProps) { type IDialogContentProps (line 147) | interface IDialogContentProps { function Content (line 153) | function Content(props: IDialogContentProps) { type IDialogActionsProps (line 179) | interface IDialogActionsProps { function Actions (line 190) | function Actions(props: IDialogActionsProps) { function BottomButton (line 229) | function BottomButton(props: { FILE: src/components/dialogs/components/checkStorage.tsx function CheckStorage (line 13) | function CheckStorage() { FILE: src/components/dialogs/components/downloadDialog.tsx type IDownloadDialogProps (line 15) | interface IDownloadDialogProps { function DownloadDialog (line 21) | function DownloadDialog(props: IDownloadDialogProps) { FILE: src/components/dialogs/components/editSheetDetail.tsx type IEditSheetDetailProps (line 20) | interface IEditSheetDetailProps { function EditSheetDetailDialog (line 23) | function EditSheetDetailDialog(props: IEditSheetDetailProps) { FILE: src/components/dialogs/components/index.ts type IDialogType (line 25) | type IDialogType = typeof dialogs; type IDialogKey (line 26) | type IDialogKey = keyof IDialogType; FILE: src/components/dialogs/components/loadingDialog.tsx type ILoadingDialogProps (line 9) | interface ILoadingDialogProps { function LoadingDialog (line 18) | function LoadingDialog(props: ILoadingDialogProps) { FILE: src/components/dialogs/components/markdownDialog.tsx type IMarkdownDialogProps (line 16) | interface IMarkdownDialogProps { function MarkdownDialog (line 21) | function MarkdownDialog(props: IMarkdownDialogProps) { FILE: src/components/dialogs/components/radioDialog.tsx type IKV (line 14) | interface IKV { type IRadioDialogProps (line 20) | interface IRadioDialogProps { function isObject (line 28) | function isObject(v: string | number | IKV): v is IKV { function RadioDialog (line 32) | function RadioDialog(props: IRadioDialogProps) { FILE: src/components/dialogs/components/setScheduleCloseTimeDialog.tsx type ISetScheduleCloseTimeDialogProps (line 12) | interface ISetScheduleCloseTimeDialogProps { function SetScheduleCloseTimeDialog (line 16) | function SetScheduleCloseTimeDialog( FILE: src/components/dialogs/components/simpleDialog.tsx type ISimpleDialogProps (line 6) | interface ISimpleDialogProps { function SimpleDialog (line 13) | function SimpleDialog(props: ISimpleDialogProps) { FILE: src/components/dialogs/components/subscribePluginDialog.tsx type ISubscribeItem (line 11) | interface ISubscribeItem { type ISubscribePluginDialogProps (line 15) | interface ISubscribePluginDialogProps { function SubscribePluginDialog (line 26) | function SubscribePluginDialog( FILE: src/components/dialogs/useDialog.ts type IDialogInfo (line 5) | interface IDialogInfo { function showDialog (line 15) | function showDialog( function hideDialog (line 25) | function hideDialog() { function useDialog (line 32) | function useDialog() { function getCurrentDialog (line 56) | function getCurrentDialog() { FILE: src/components/errorBoundary/index.tsx type DeviceInfoProps (line 10) | interface DeviceInfoProps { function DeviceInfoSection (line 14) | function DeviceInfoSection({ colors }: DeviceInfoProps) { type ErrorBoundaryProps (line 84) | interface ErrorBoundaryProps { type ErrorBoundaryState (line 88) | interface ErrorBoundaryState { class ErrorBoundary (line 94) | class ErrorBoundary extends Component( function hidePanel (line 38) | function hidePanel() { FILE: src/constants/commonConst.ts type RequestStateCode (line 21) | enum RequestStateCode { constant ANIMATION_EASING (line 63) | const ANIMATION_EASING: EasingFunction = Easing.out(Easing.exp); constant ANIMATION_DURATION (line 64) | const ANIMATION_DURATION = 150; type SortType (line 87) | const enum SortType { type ResumeMode (line 102) | const enum ResumeMode { FILE: src/constants/repeatModeConst.ts type MusicRepeatMode (line 1) | enum MusicRepeatMode { FILE: src/constants/uiConst.ts type ColorKey (line 35) | type ColorKey = "normal" | "secondary" | "highlight" | "primary"; FILE: src/core.defination/trackPlayer/index.ts type TrackPlayerEvents (line 1) | enum TrackPlayerEvents { FILE: src/core/appConfig.ts class AppConfig (line 11) | class AppConfig implements IAppConfig { method migrateConfig (line 13) | private async migrateConfig(): Promise { method setup (line 171) | async setup(): Promise { method setConfig (line 175) | setConfig( method getConfig (line 186) | getConfig( function useAppConfig (line 201) | function useAppConfig(key: K): IAp... FILE: src/core/appMeta.ts class AppMeta (line 3) | class AppMeta { method getAppMeta (line 4) | private getAppMeta(key: string) { method setAppMeta (line 9) | private setAppMeta(key: string, value: any) { method musicSheetVersion (line 17) | get musicSheetVersion(): number { method setMusicSheetVersion (line 25) | setMusicSheetVersion(version: number) { method historySheetVersion (line 29) | get historySheetVersion(): number { method setHistorySheetVersion (line 37) | setHistorySheetVersion(version: number) { FILE: src/core/backup.ts type IBackJson (line 16) | interface IBackJson { function backup (line 21) | function backup() { function resume (line 35) | async function resume( FILE: src/core/downloader.ts type DownloadStatus (line 21) | enum DownloadStatus { type DownloaderEvent (line 35) | enum DownloaderEvent { type DownloadFailReason (line 49) | enum DownloadFailReason { type IDownloadTaskInfo (line 61) | interface IDownloadTaskInfo { type IEvents (line 85) | interface IEvents { class Downloader (line 96) | class Downloader extends EventEmitter implements IInjectable { method generateFilename (line 102) | private static generateFilename(musicItem: IMusic.IMusicItem) { method injectDependencies (line 111) | injectDependencies(configService: IAppConfig, pluginManager: IPluginMa... method updateDownloadTask (line 116) | private updateDownloadTask(musicItem: IMusic.IMusicItem, patch: Partia... method markTaskAsStarted (line 127) | private markTaskAsStarted(musicItem: IMusic.IMusicItem) { method markTaskAsCompleted (line 134) | private markTaskAsCompleted(musicItem: IMusic.IMusicItem) { method markTaskAsError (line 141) | private markTaskAsError(musicItem: IMusic.IMusicItem, reason: Download... method getExtensionName (line 151) | private getExtensionName(url: string) { method getDownloadPath (line 163) | private getDownloadPath(fileName: string) { method getCacheDownloadPath (line 173) | private getCacheDownloadPath(fileName: string) { method downloadNextPendingTask (line 182) | private async downloadNextPendingTask() { method download (line 361) | download(musicItems: IMusic.IMusicItem | IMusic.IMusicItem[], quality?... method remove (line 412) | remove(musicItem: IMusic.IMusicItem) { function useDownloadTask (line 434) | function useDownloadTask(musicItem: IMusic.IMusicItem) { FILE: src/core/i18n/index.ts class I18N (line 28) | class I18N { method setup (line 29) | setup() { method getSupportedLanguages (line 33) | getSupportedLanguages() { method getLanguage (line 37) | getLanguage() { method setLanguage (line 41) | setLanguage(locale: string) { method t (line 47) | t(key: K, args?: Record): ILanguageData[K] { function useI18N (line 64) | function useI18N(): I18N { FILE: src/core/localMusicSheet.ts function setup (line 22) | async function setup() { function addMusic (line 42) | async function addMusic( function addMusicDraft (line 59) | function addMusicDraft(musicItem: IMusic.IMusicItem | IMusic.IMusicItem[... function saveLocalSheet (line 73) | async function saveLocalSheet() { function removeMusic (line 77) | async function removeMusic( function parseFilename (line 104) | function parseFilename(fn: string): Partial | null { function localMediaFilter (line 118) | function localMediaFilter(filename: string) { function getMusicStats (line 124) | async function getMusicStats(folderPaths: string[]) { function cancelImportLocal (line 153) | function cancelImportLocal() { function importLocal (line 159) | async function importLocal(_folderPaths: string[]) { function isLocalMusic (line 208) | function isLocalMusic( function useIsLocal (line 217) | function useIsLocal(musicItem: IMusic.IMusicItem | null) { function getMusicList (line 230) | function getMusicList() { function updateMusicList (line 234) | async function updateMusicList(newSheet: IMusic.IMusicItem[]) { FILE: src/core/lyricManager.ts type ILyricState (line 22) | interface ILyricState { class LyricManager (line 39) | class LyricManager implements IInjectable { method currentLyricItem (line 48) | get currentLyricItem() { method lyricState (line 52) | get lyricState() { method injectDependencies (line 56) | injectDependencies(trackPlayerService: ITrackPlayer, appConfigService:... method setup (line 62) | setup() { method associateLyric (line 125) | associateLyric(musicItem: IMusic.IMusicItem, linkToMusicItem: ICommon.... method unassociateLyric (line 147) | unassociateLyric(musicItem: IMusic.IMusicItem) { method uploadLocalLyric (line 161) | async uploadLocalLyric(musicItem: IMusic.IMusicItem, lyricContent: str... method removeLocalLyric (line 187) | async removeLocalLyric(musicItem: IMusic.IMusicItem) { method updateLyricOffset (line 212) | updateLyricOffset(musicItem: IMusic.IMusicItem, offset: number) { method setLyricAsLoadingState (line 227) | private setLyricAsLoadingState() { method setLyricAsNoLyricState (line 236) | private setLyricAsNoLyricState() { method refreshLyric (line 249) | private async refreshLyric(skipFetchLyricSourceIfSame: boolean = true,... method searchSimilarLyric (line 340) | private async searchSimilarLyric(musicItem: IMusic.IMusicItem) { FILE: src/core/mediaCache.ts function clearLocalCaches (line 51) | async function clearLocalCaches(cacheData: IMusic.IMusicItemCache) { function checkPathAndRemove (line 58) | async function checkPathAndRemove(filePath?: string) { FILE: src/core/musicHistory.ts class MusicHistory (line 17) | class MusicHistory implements IMusicHistory, IInjectable { method injectDependencies (line 20) | injectDependencies(configService: IAppConfig): void { method history (line 24) | get history() { method setup (line 28) | async setup() { method addMusic (line 37) | async addMusic(musicItem: IMusic.IMusicItem) { method removeMusic (line 48) | async removeMusic(musicItem: IMusic.IMusicItem) { method clearMusic (line 56) | async clearMusic() { method setHistory (line 61) | async setHistory(newHistory: IMusic.IMusicItem[]) { method migrateToMMKV (line 66) | async migrateToMMKV() { function useMusicHistory (line 76) | function useMusicHistory() { FILE: src/core/musicSheet/index.ts class MusicSheetClazz (line 47) | class MusicSheetClazz implements IInjectable { method injectDependencies (line 52) | injectDependencies(appConfigService: IAppConfig): void { method setup (line 57) | async setup() { method getSortedMusicListBySheetId (line 134) | getSortedMusicListBySheetId(sheetId: string) { method updateMusicSheetBase (line 151) | async updateMusicSheetBase( method addSheet (line 182) | async addSheet(title: string) { method backupSheets (line 224) | backupSheets() { method resumeSheets (line 233) | async resumeSheets( method removeSheet (line 286) | async removeSheet(sheetId: string) { method addMusic (line 310) | async addMusic( method removeMusicByIndex (line 360) | async removeMusicByIndex(sheetId: string, indices: number | number[]) { method removeMusic (line 398) | async removeMusic( method setSortType (line 433) | async setSortType(sheetId: string, sortType: SortType) { method manualSort (line 446) | async manualSort( method starMusicSheet (line 468) | async starMusicSheet(musicSheet: IMusic.IMusicSheetItem) { method unstarMusicSheet (line 480) | async unstarMusicSheet(musicSheet: IMusic.IMusicSheetItemBase) { function useSheetsBase (line 504) | function useSheetsBase() { function useSheetItem (line 509) | function useSheetItem(sheetId: string) { function useFavorite (line 552) | function useFavorite(musicItem: IMusic.IMusicItem | null) { function useSheetIsStarred (line 573) | function useSheetIsStarred( function useStarredSheets (line 593) | function useStarredSheets() { FILE: src/core/musicSheet/migrate.ts function migrate (line 6) | async function migrate() { method migrate (line 35) | migrate(sheetId: string, musicItems: IMusic.IMusicItem[]) { method done (line 53) | done() { FILE: src/core/musicSheet/sortedMusicList.ts class SortedMusicList (line 42) | class SortedMusicList { method musicList (line 49) | get musicList() { method firstMusic (line 53) | get firstMusic() { method platforms (line 57) | get platforms() { method length (line 61) | get length() { method constructor (line 65) | constructor( method at (line 79) | at(index: number) { method has (line 83) | has(musicItem: IMusic.IMusicItem | null) { method setSortType (line 94) | setSortType(sortType: SortType) { method manualSort (line 106) | manualSort(newMusicItems: IMusic.IMusicItem[]) { method add (line 111) | add(musicItems: IMusic.IMusicItem[]) { method remove (line 138) | remove(musicItems: IMusic.IMusicItem[]) { method removeByIndex (line 145) | removeByIndex(indices: number[]) { method clearAll (line 160) | clearAll() { method addToCountMap (line 164) | private addToCountMap(musicItems: IMusic.IMusicItem[]) { method removeFromCountMap (line 177) | private removeFromCountMap(musicItems: IMusic.IMusicItem[]) { method mergeArray (line 199) | private mergeArray( method findIndex (line 242) | public findIndex(musicItem: IMusic.IMusicItem) { method resort (line 270) | private resort() { FILE: src/core/musicSheet/storage.ts function getStorageData (line 6) | function getStorageData(key: string) { function setStorageData (line 12) | async function setStorageData(key: string, value: any) { function removeStorageData (line 19) | function removeStorageData(key: string) { function setSheets (line 28) | async function setSheets(sheets: IMusic.IMusicSheetItemBase[]) { function getSheets (line 35) | function getSheets(): IMusic.IMusicSheetItemBase[] { function setStarredSheets (line 43) | async function setStarredSheets(sheets: IMusic.IMusicSheetItemBase[]) { function getStarredSheets (line 50) | function getStarredSheets(): IMusic.IMusicSheetItem[] { function setMusicList (line 59) | async function setMusicList(sheetId: string, musicList: IMusic.IMusicIte... function getMusicList (line 68) | function getMusicList(sheetId: string): IMusic.IMusicItem[] { function removeMusicList (line 76) | function removeMusicList(sheetId: string) { type IMusicSheetMeta (line 80) | interface IMusicSheetMeta extends Record { function setSheetMeta (line 84) | function setSheetMeta( function getSheetMeta (line 93) | function getSheetMeta( FILE: src/core/pluginManager/index.ts class PluginManager (line 40) | class PluginManager implements IPluginManager, IInjectable { method injectDependencies (line 43) | injectDependencies(config: IAppConfig): void { method getPlugins (line 51) | private getPlugins() { method setPlugins (line 59) | private setPlugins(plugins: Plugin[]) { method updatePluginCache (line 75) | private updatePluginCache(plugin: Plugin) { method setup (line 95) | async setup() { method installPluginFromLocalFile (line 183) | async installPluginFromLocalFile( method installPluginFromUrl (line 272) | async installPluginFromUrl( method uninstallPlugin (line 381) | async uninstallPlugin(hash: string) { method uninstallAllPlugins (line 402) | async uninstallAllPlugins() { method updatePlugin (line 429) | async updatePlugin(plugin: Plugin) { method getByMedia (line 450) | getByMedia(mediaItem: ICommon.IMediaBase) { method getByName (line 459) | getByName(name: string) { method getByHash (line 470) | getByHash(hash: string) { method getEnabledPlugins (line 480) | getEnabledPlugins() { method getSortedPlugins (line 490) | getSortedPlugins() { method getSearchablePlugins (line 504) | getSearchablePlugins(supportedSearchType?: ICommon.SupportMediaType) { method getSortedSearchablePlugins (line 522) | getSortedSearchablePlugins(supportedSearchType?: ICommon.SupportMediaT... method getPluginsWithAbility (line 537) | getPluginsWithAbility(ability: keyof IPlugin.IPluginInstanceMethods) { method getSortedPluginsWithAbility (line 550) | getSortedPluginsWithAbility(ability: keyof IPlugin.IPluginInstanceMeth... method setPluginEnabled (line 564) | setPluginEnabled(plugin: Plugin, enabled: boolean) { method isPluginEnabled (line 574) | isPluginEnabled(plugin: Plugin) { method setPluginOrder (line 582) | setPluginOrder(sortedPlugins: Plugin[]) { method setUserVariables (line 591) | setUserVariables(plugin: Plugin, userVariables: Record) { method getUserVariables (line 595) | getUserVariables(plugin: Plugin) { method setAlternativePluginName (line 599) | setAlternativePluginName(plugin: Plugin, alternativePluginName: string) { method getAlternativePluginName (line 603) | getAlternativePluginName(plugin: Plugin) { method getAlternativePlugin (line 607) | getAlternativePlugin(plugin: Plugin) { function useSortedPlugins (line 620) | function useSortedPlugins() { function usePluginEnabled (line 649) | function usePluginEnabled(plugin: Plugin) { FILE: src/core/pluginManager/meta.ts type IPluginPlatform (line 6) | type IPluginPlatform = string; type IPluginMetaStorage (line 8) | interface IPluginMetaStorage { class PluginMeta (line 20) | class PluginMeta { method getMetaStorage (line 23) | private getMetaStorage(key: K): IP... method setMetaStorage (line 27) | private setMetaStorage(key: K, val... method migratePluginMeta (line 32) | async migratePluginMeta() { method getPluginOrder (line 74) | getPluginOrder() { method setPluginOrder (line 78) | setPluginOrder(orderMap: Record) { method disabledPlugins (line 83) | public get disabledPlugins() { method isPluginEnabled (line 92) | isPluginEnabled(pluginPlatform: IPluginPlatform) { method setPluginEnabled (line 98) | setPluginEnabled(pluginPlatform: IPluginPlatform, enabled: boolean) { method getUserVariables (line 110) | getUserVariables(pluginPlatform: IPluginPlatform) { method setUserVariables (line 115) | setUserVariables(pluginPlatform: IPluginPlatform, userVariables: Recor... method setAlternativePlugin (line 119) | setAlternativePlugin(pluginPlatform: IPluginPlatform, alternativePlugi... method getAlternativePlugin (line 123) | getAlternativePlugin(pluginPlatform: IPluginPlatform): IPluginPlatform... FILE: src/core/pluginManager/plugin.ts function formatAuthUrl (line 95) | function formatAuthUrl(url: string) { type PluginState (line 123) | enum PluginState { type PluginErrorReason (line 134) | enum PluginErrorReason { type ILazyProps (line 142) | interface ILazyProps { class PluginMethodsWrapper (line 151) | class PluginMethodsWrapper implements IPlugin.IPluginInstanceMethods { method constructor (line 155) | constructor(plugin: Plugin, ensurePluginIsMounted: () => Promise) { method search (line 162) | async search( method getMediaSource (line 193) | async getMediaSource( method getMusicInfo (line 325) | async getMusicInfo( method getLyric (line 353) | async getLyric( method getAlbumInfo (line 553) | async getAlbumInfo( method getMusicSheetInfo (line 604) | async getMusicSheetInfo( method getArtistWorks (line 650) | async getArtistWorks( method importMusicSheet (line 688) | async importMusicSheet(urlLike: string): Promise { method importMusicItem (line 704) | async importMusicItem(urlLike: string): Promise { method getTopListDetail (line 738) | async getTopListDetail( method getRecommendSheetTags (line 764) | async getRecommendSheetTags(): Promise = T[keyof T]; type RoutePaths (line 52) | type RoutePaths = ValueOf; type RouterParamsBase (line 54) | type RouterParamsBase = Record; type RouterParams (line 56) | interface RouterParams extends RouterParamsBase { function useParams (line 108) | function useParams(): RouterParams[T] { function useNavigate (line 116) | function useNavigate() { FILE: src/core/router/routes.tsx type ValueOf (line 22) | type ValueOf = T[keyof T]; type RoutePaths (line 23) | type RoutePaths = ValueOf; type IRoutes (line 25) | type IRoutes = { FILE: src/core/theme.ts type IBackgroundInfo (line 66) | interface IBackgroundInfo { function setup (line 75) | function setup() { function setTheme (line 104) | function setTheme( function setColors (line 155) | function setColors(colors: Partial) { function setBackground (line 171) | function setBackground(backgroundInfo: Partial) { FILE: src/core/trackPlayer/index.ts class TrackPlayer (line 51) | class TrackPlayer extends EventEmitter<{ method constructor (line 82) | constructor() { method previousMusic (line 86) | public get previousMusic() { method currentMusic (line 95) | public get currentMusic() { method nextMusic (line 99) | public get nextMusic() { method repeatMode (line 108) | public get repeatMode() { method quality (line 112) | public get quality() { method playList (line 116) | public get playList() { method injectDependencies (line 121) | injectDependencies(configService: IAppConfig, musicHistoryService: IMu... method setupTrackPlayer (line 128) | async setupTrackPlayer() { method getMusicIndexInPlayList (line 249) | getMusicIndexInPlayList(musicItem?: IMusic.IMusicItem | null) { method isInPlayList (line 256) | isInPlayList(musicItem?: IMusic.IMusicItem | null) { method getPlayListMusicAt (line 264) | getPlayListMusicAt(index: number): IMusic.IMusicItem | null { method isPlayListEmpty (line 273) | isPlayListEmpty() { method addAll (line 278) | addAll( method add (line 325) | add( method addNext (line 335) | addNext(musicItem: IMusic.IMusicItem | IMusic.IMusicItem[]): void { method remove (line 345) | async remove(musicItem: IMusic.IMusicItem): Promise { method isCurrentMusic (line 393) | isCurrentMusic(musicItem?: IMusic.IMusicItem | null) { method play (line 397) | async play( method pause (line 627) | async pause(): Promise { method toggleRepeatMode (line 631) | toggleRepeatMode(): void { method clearPlayList (line 636) | async clearPlayList(): Promise { method skipToNext (line 645) | async skipToNext(): Promise { method skipToPrevious (line 654) | async skipToPrevious(): Promise { method changeQuality (line 666) | async changeQuality(newQuality: IMusic.IQualityKey): Promise { method playWithReplacePlayList (line 706) | async playWithReplacePlayList( method seekTo (line 733) | async seekTo(progress: number) { method setCurrentMusic (line 746) | private setCurrentMusic(musicItem?: IMusic.IMusicItem | null) { method setRepeatMode (line 766) | private setRepeatMode(mode: MusicRepeatMode) { method setQuality (line 794) | private setQuality(quality: IMusic.IQualityKey) { method setTrackSource (line 800) | private async setTrackSource(track: Track, autoPlay = true) { method setPlayList (line 818) | private setPlayList(newPlayList: IMusic.IMusicItem[], persist = true) { method mergeTrackSource (line 852) | private mergeTrackSource( method sortByTimestampAndIndex (line 866) | private sortByTimestampAndIndex(array: any[], newArray = false) { method getFakeNextTrack (line 879) | private getFakeNextTrack() { method handlePlayFail (line 906) | private async handlePlayFail() { method getSimilarMusic (line 921) | private async getSimilarMusic( method patchMediaArtwork (line 980) | private patchMediaArtwork(track: Track) { function useMusicState (line 999) | function useMusicState() { type PlayFailReason (line 1006) | enum PlayFailReason { FILE: src/entry/bootstrap/BootstrapComponent.tsx function BootstrapComponent (line 13) | function BootstrapComponent() { FILE: src/entry/bootstrap/bootstrap.atom.ts type IBootStrapState (line 4) | interface IBootStrapState { FILE: src/entry/bootstrap/bootstrap.ts function bootstrapImpl (line 40) | async function bootstrapImpl() { function setupFolder (line 135) | async function setupFolder() { function initTrackPlayer (line 150) | async function initTrackPlayer(logger?: IPerfLogger) { function extraMakeup (line 206) | async function extraMakeup() { function bindEvents (line 287) | function bindEvents() { FILE: src/entry/index.tsx function Pages (line 31) | function Pages() { FILE: src/hooks/useColors.ts type IColors (line 5) | type IColors = Theme["colors"]; type CustomizedColors (line 7) | interface CustomizedColors extends IColors { function useColors (line 40) | function useColors() { FILE: src/hooks/useDelayFalsy.ts function useDelayFalsy (line 3) | function useDelayFalsy( FILE: src/hooks/useMounted.ts function useOnMounted (line 3) | function useOnMounted() { FILE: src/hooks/useOnceEffect.ts function useOnceEffect (line 3) | function useOnceEffect( FILE: src/hooks/useOrientation.ts function useListenOrientationChange (line 7) | function useListenOrientationChange() { function useOrientation (line 31) | function useOrientation() { FILE: src/hooks/usePrimaryColor.ts function usePrimaryColor (line 3) | function usePrimaryColor() { FILE: src/hooks/useRerender.ts function useRerender (line 3) | function useRerender() { FILE: src/hooks/useTextColor.ts function useTextColor (line 3) | function useTextColor() { FILE: src/lib/react-native-vdebug/index.js class VDebug (line 40) | class VDebug extends PureComponent { method constructor (line 50) | constructor(props) { method componentDidMount (line 107) | componentDidMount() { method getRef (line 119) | getRef(index) { method addPanels (line 125) | addPanels() { method togglePanel (line 152) | togglePanel() { method clearLogs (line 158) | clearLogs() { method showDev (line 163) | showDev() { method reloadDev (line 167) | reloadDev() { method evalInContext (line 171) | evalInContext(js, context) { method execCommand (line 184) | execCommand() { method clearCommand (line 191) | clearCommand() { method scrollToPage (line 198) | scrollToPage(index, animated = true) { method scrollToCard (line 202) | scrollToCard(cardIndex, animated = true) { method scrollToTop (line 214) | scrollToTop() { method renderPanelHeader (line 231) | renderPanelHeader() { method syncHistory (line 259) | syncHistory() { method onChange (line 279) | onChange(text) { method renderCommandBar (line 292) | renderCommandBar() { method renderPanelFooter (line 359) | renderPanelFooter() { method onScrollAnimationEnd (line 384) | onScrollAnimationEnd({nativeEvent}) { method renderPanel (line 394) | renderPanel() { method renderDebugBtn (line 422) | renderDebugBtn() { method render (line 436) | render() { FILE: src/lib/react-native-vdebug/src/event.js class Event (line 1) | class Event { method constructor (line 2) | constructor() { method on (line 6) | on(eventName, callback) { method trigger (line 14) | trigger(...args) { method off (line 26) | off(key, fn) { FILE: src/lib/react-native-vdebug/src/hoc.js method constructor (line 5) | constructor(props) { method render (line 8) | render() { FILE: src/lib/react-native-vdebug/src/log.js constant LEVEL_ENUM (line 15) | const LEVEL_ENUM = { class LogStack (line 25) | class LogStack { method constructor (line 26) | constructor() { method getLogs (line 33) | getLogs() { method addLog (line 37) | addLog(method, data) { method clearLogs (line 52) | clearLogs() { method notify (line 57) | notify() { method attach (line 63) | attach(callback) { class Log (line 68) | class Log extends Component { method constructor (line 69) | constructor(props) { method getScrollRef (line 89) | getScrollRef() { method componentDidMount (line 93) | componentDidMount() { method componentWillUnmount (line 103) | componentWillUnmount() { method ListHeaderComponent (line 119) | ListHeaderComponent() { method clearFilterValue (line 184) | clearFilterValue() { method renderItem (line 195) | renderItem({item}) { method render (line 233) | render() { function unixId (line 323) | function unixId() { function strLog (line 327) | function strLog(logs) { function formatLog (line 332) | function formatLog(obj) { FILE: src/lib/react-native-vdebug/src/network.js class AjaxStack (line 8) | class AjaxStack { method constructor (line 9) | constructor() { method getRequestIds (line 17) | getRequestIds() { method getRequests (line 21) | getRequests() { method getRequest (line 25) | getRequest(id) { method readBlobAsText (line 29) | readBlobAsText(blob, encoding = 'utf-8') { method JSONTryParse (line 43) | JSONTryParse(jsonStr) { method formatResponse (line 51) | formatResponse(response) { method updateRequest (line 61) | updateRequest(id, data) { method clearRequests (line 140) | clearRequests() { method notify (line 146) | notify(args) { method attach (line 152) | attach(callback) { class Network (line 157) | class Network extends Component { method constructor (line 158) | constructor(props) { method getScrollRef (line 178) | getScrollRef() { method componentDidMount (line 182) | componentDidMount() { method componentWillUnmount (line 191) | componentWillUnmount() { method clearRequests (line 196) | clearRequests(name) { method ListHeaderComponent (line 202) | ListHeaderComponent() { method clearFilterValue (line 268) | clearFilterValue() { method copy2cURL (line 279) | copy2cURL(item) { method retryFetch (line 295) | retryFetch(item) { method renderItem (line 305) | renderItem({item}) { method render (line 484) | render() { function unixId (line 564) | function unixId() { function proxyAjax (line 568) | function proxyAjax(XHR, stack) { FILE: src/lib/react-native-vdebug/src/tool.js function throttle (line 1) | function throttle(delay, noTrailing, callback, debounceMode) { function debounce (line 44) | function debounce(delay, atBegin, callback) { function replaceReg (line 50) | function replaceReg(str) { FILE: src/native/lyricUtil/index.ts type NativeTextAlignment (line 6) | enum NativeTextAlignment { type ILyricUtil (line 16) | interface ILyricUtil extends NativeModule { FILE: src/native/mp3Util/index.ts type IBasicMeta (line 3) | interface IBasicMeta { type IWritableMeta (line 11) | interface IWritableMeta extends IBasicMeta { type IMp3Util (line 16) | interface IMp3Util { FILE: src/native/utils/index.ts type INativeUtils (line 3) | interface INativeUtils extends NativeModule { FILE: src/pages/albumDetail/hooks/useAlbumMusicList.ts function useAlbumDetail (line 5) | function useAlbumDetail( FILE: src/pages/albumDetail/index.tsx function AlbumDetail (line 7) | function AlbumDetail() { FILE: src/pages/artistDetail/components/body.tsx function Body (line 31) | function Body() { function BodyContentWrapper (line 78) | function BodyContentWrapper(props: any) { FILE: src/pages/artistDetail/components/content/albumContentItem.tsx type IAlbumContentProps (line 4) | interface IAlbumContentProps { function AlbumContentItem (line 7) | function AlbumContentItem(props: IAlbumContentProps) { FILE: src/pages/artistDetail/components/content/musicContentItem.tsx type IMusicContentProps (line 4) | interface IMusicContentProps { function MusicContentItem (line 7) | function MusicContentItem(props: IMusicContentProps) { FILE: src/pages/artistDetail/components/header.tsx type IHeaderProps (line 20) | interface IHeaderProps { function Header (line 24) | function Header(props: IHeaderProps) { FILE: src/pages/artistDetail/components/resultList.tsx constant ITEM_HEIGHT (line 12) | const ITEM_HEIGHT = rpx(120); type IResultListProps (line 14) | interface IResultListProps { function ResultList (line 19) | function ResultList(props: IResultListProps) { FILE: src/pages/artistDetail/hooks/useQuery.ts function useQueryArtist (line 9) | function useQueryArtist(pluginHash: string) { FILE: src/pages/artistDetail/index.tsx function ArtistDetail (line 15) | function ArtistDetail() { FILE: src/pages/artistDetail/store/atoms.ts type IQueryResult (line 6) | interface IQueryResult< type IQueryResults (line 14) | type IQueryResults< FILE: src/pages/downloading/downloadingList.tsx type DownloadingListItemProps (line 11) | interface DownloadingListItemProps { function DownloadingListItem (line 14) | function DownloadingListItem(props: DownloadingListItemProps) { function DownloadingList (line 58) | function DownloadingList() { FILE: src/pages/downloading/index.tsx function Downloading (line 10) | function Downloading() { FILE: src/pages/fileSelector/fileItem.tsx constant ITEM_HEIGHT (line 11) | const ITEM_HEIGHT = rpx(96); type IProps (line 13) | interface IProps { function FileItem (line 21) | function FileItem(props: IProps) { FILE: src/pages/fileSelector/index.tsx type IPathItem (line 26) | interface IPathItem { type IFileItem (line 31) | interface IFileItem { constant ITEM_HEIGHT (line 36) | const ITEM_HEIGHT = rpx(96); function FileSelector (line 38) | function FileSelector() { FILE: src/pages/history/index.tsx function History (line 13) | function History() { FILE: src/pages/home/components/ActionButton.tsx type IActionButtonProps (line 9) | interface IActionButtonProps { function ActionButton (line 17) | function ActionButton(props: IActionButtonProps) { FILE: src/pages/home/components/drawer/index.tsx constant ITEM_HEIGHT (line 21) | const ITEM_HEIGHT = rpx(108); type ISettingOptions (line 23) | interface ISettingOptions { function HomeDrawer (line 29) | function HomeDrawer(props: any) { function _CountDownItem (line 260) | function _CountDownItem() { FILE: src/pages/home/components/homeBody/index.tsx function HomeBody (line 7) | function HomeBody() { FILE: src/pages/home/components/homeBody/operations.tsx function Operations (line 8) | function Operations() { FILE: src/pages/home/components/homeBody/sheets.tsx function Sheets (line 20) | function Sheets() { FILE: src/pages/home/components/homeBodyHorizontal/index.tsx function HomeBodyHorizontal (line 7) | function HomeBodyHorizontal() { FILE: src/pages/home/components/homeBodyHorizontal/operations.tsx function Operations (line 9) | function Operations() { FILE: src/pages/home/components/navBar.tsx function NavBar (line 14) | function NavBar() { FILE: src/pages/home/index.tsx function Home (line 17) | function Home() { function HomeStatusBar (line 38) | function HomeStatusBar() { function App (line 63) | function App() { FILE: src/pages/localMusic/index.tsx function LocalMusic (line 6) | function LocalMusic() { FILE: src/pages/localMusic/mainPage/index.tsx function MainPage (line 12) | function MainPage() { FILE: src/pages/localMusic/mainPage/localMusicList.tsx function LocalMusicList (line 9) | function LocalMusicList() { FILE: src/pages/musicDetail/components/background.tsx function Background (line 6) | function Background() { FILE: src/pages/musicDetail/components/bottom/index.tsx function Bottom (line 8) | function Bottom() { FILE: src/pages/musicDetail/components/bottom/seekBar.tsx type ITimeLabelProps (line 9) | interface ITimeLabelProps { function TimeLabel (line 13) | function TimeLabel(props: ITimeLabelProps) { function SeekBar (line 19) | function SeekBar() { FILE: src/pages/musicDetail/components/content/albumCover/index.tsx type IProps (line 13) | interface IProps { function AlbumCover (line 17) | function AlbumCover(props: IProps) { FILE: src/pages/musicDetail/components/content/albumCover/operations.tsx function Operations (line 21) | function Operations() { FILE: src/pages/musicDetail/components/content/index.tsx function Content (line 9) | function Content() { FILE: src/pages/musicDetail/components/content/lyric/draggingTime.tsx function DraggingTime (line 8) | function DraggingTime(props: { time: number }) { FILE: src/pages/musicDetail/components/content/lyric/index.tsx constant ITEM_HEIGHT (line 23) | const ITEM_HEIGHT = rpx(92); type IItemHeights (line 25) | interface IItemHeights { type IProps (line 30) | interface IProps { function Lyric (line 41) | function Lyric(props: IProps) { FILE: src/pages/musicDetail/components/content/lyric/lyricItem.tsx type ILyricItemComponentProps (line 7) | interface ILyricItemComponentProps { function _LyricItemComponent (line 22) | function _LyricItemComponent(props: ILyricItemComponentProps) { FILE: src/pages/musicDetail/components/content/lyric/lyricOperations.tsx type ILyricOperationsProps (line 17) | interface ILyricOperationsProps { function LyricOperations (line 21) | function LyricOperations(props: ILyricOperationsProps) { FILE: src/pages/musicDetail/components/navBar.tsx function NavBar (line 12) | function NavBar() { FILE: src/pages/musicDetail/index.tsx function MusicDetail (line 15) | function MusicDetail() { FILE: src/pages/musicListEditor/components/body.tsx function Body (line 18) | function Body() { FILE: src/pages/musicListEditor/components/bottom.tsx function Bottom (line 18) | function Bottom() { type IBottomIconProps (line 102) | interface IBottomIconProps { function BottomIcon (line 108) | function BottomIcon(props: IBottomIconProps) { FILE: src/pages/musicListEditor/components/musicList.tsx constant ITEM_HEIGHT (line 18) | const ITEM_HEIGHT = rpx(120); type IMusicEditorItemProps (line 20) | interface IMusicEditorItemProps { function _MusicEditorItem (line 24) | function _MusicEditorItem(props: IMusicEditorItemProps) { function MusicList (line 60) | function MusicList() { FILE: src/pages/musicListEditor/index.tsx function MusicListEditor (line 13) | function MusicListEditor() { FILE: src/pages/musicListEditor/store/atom.ts type IEditorMusicItem (line 3) | interface IEditorMusicItem { FILE: src/pages/permissions/index.tsx type IPermissionTypes (line 15) | type IPermissionTypes = "floatingWindow" | "fileStorage"; function Permissions (line 17) | function Permissions() { FILE: src/pages/pluginSheetDetail/hooks/usePluginSheetMusicList.ts function usePluginSheetMusicList (line 5) | function usePluginSheetMusicList( FILE: src/pages/pluginSheetDetail/index.tsx function PluginSheetDetail (line 7) | function PluginSheetDetail() { FILE: src/pages/recommendSheets/components/body/index.tsx function Body (line 12) | function Body() { FILE: src/pages/recommendSheets/components/body/sheetBody.tsx type IProps (line 13) | interface IProps { function SheetBody (line 18) | function SheetBody(props: IProps) { FILE: src/pages/recommendSheets/components/body/sheetList.tsx type ISheetListProps (line 10) | interface ISheetListProps { function SheetList (line 15) | function SheetList(props: ISheetListProps) { FILE: src/pages/recommendSheets/index.tsx function RecommendSheets (line 10) | function RecommendSheets() { FILE: src/pages/searchMusicList/index.tsx function filterMusic (line 16) | function filterMusic(query: string, musicList: IMusic.IMusicItem[]) { function SearchMusicList (line 27) | function SearchMusicList() { FILE: src/pages/searchMusicList/searchResult.tsx type ISearchResultProps (line 7) | interface ISearchResultProps { constant ITEM_HEIGHT (line 12) | const ITEM_HEIGHT = rpx(120); function SearchResult (line 14) | function SearchResult(props: ISearchResultProps) { FILE: src/pages/searchPage/common/historySearch.ts function getHistory (line 3) | async function getHistory() { function addHistory (line 7) | async function addHistory(query: string) { function removeHistory (line 13) | async function removeHistory(query: string) { function removeAllHistory (line 19) | async function removeAllHistory() { FILE: src/pages/searchPage/components/navBar.tsx function NavBar (line 24) | function NavBar() { FILE: src/pages/searchPage/components/resultPanel/index.tsx function ResultPanel (line 28) | function ResultPanel() { FILE: src/pages/searchPage/components/resultPanel/resultSubPanel.tsx type IResultSubPanelProps (line 16) | interface IResultSubPanelProps { function getResultComponent (line 21) | function getResultComponent( function getSubRouterScene (line 53) | function getSubRouterScene( function ResultSubPanel (line 65) | function ResultSubPanel(props: IResultSubPanelProps) { FILE: src/pages/searchPage/components/resultPanel/resultWrapper.tsx type IResultWrapperProps (line 14) | interface IResultWrapperProps< function ResultWrapper (line 23) | function ResultWrapper(props: IResultWrapperProps) { FILE: src/pages/searchPage/components/resultPanel/results/albumResultItem.tsx type IAlbumResultsProps (line 4) | interface IAlbumResultsProps { function AlbumResultItem (line 9) | function AlbumResultItem(props: IAlbumResultsProps) { FILE: src/pages/searchPage/components/resultPanel/results/artistResultItem.tsx type IArtistResultsProps (line 8) | interface IArtistResultsProps { function ArtistResultItem (line 13) | function ArtistResultItem(props: IArtistResultsProps) { FILE: src/pages/searchPage/components/resultPanel/results/defaultResults.tsx function DefaultResults (line 6) | function DefaultResults() { FILE: src/pages/searchPage/components/resultPanel/results/musicResultItem.tsx type IMusicResultsProps (line 7) | interface IMusicResultsProps { function MusicResultItem (line 13) | function MusicResultItem(props: IMusicResultsProps) { FILE: src/pages/searchPage/components/resultPanel/results/musicSheetResultItem.tsx type IMusicSheetResultItemProps (line 4) | interface IMusicSheetResultItemProps { function MusicSheetResultItem (line 8) | function MusicSheetResultItem( FILE: src/pages/searchPage/hooks/useSearch.ts function useSearch (line 9) | function useSearch() { FILE: src/pages/searchPage/store/atoms.ts type ISearchResult (line 6) | interface ISearchResult { type ISearchResults (line 17) | type ISearchResults< type PageStatus (line 35) | enum PageStatus { FILE: src/pages/setCustomTheme/body.tsx function Body (line 21) | function Body() { FILE: src/pages/setCustomTheme/index.tsx function SetCustomTheme (line 12) | function SetCustomTheme() { FILE: src/pages/setting/index.tsx function Setting (line 11) | function Setting() { FILE: src/pages/setting/settingTypes/aboutSetting.tsx function AboutSetting (line 17) | function AboutSetting() { FILE: src/pages/setting/settingTypes/backupSetting.tsx function BackupSetting (line 22) | function BackupSetting() { FILE: src/pages/setting/settingTypes/basicSetting.tsx function createSwitch (line 28) | function createSwitch( method onOk (line 65) | onOk(val) { function useCacheSize (line 82) | function useCacheSize() { function BasicSetting (line 105) | function BasicSetting() { function LyricSetting (line 663) | function LyricSetting() { FILE: src/pages/setting/settingTypes/pluginSetting/components/pluginItem.tsx type IPluginItemProps (line 20) | interface IPluginItemProps { type IOption (line 24) | interface IOption { function _PluginItem (line 31) | function _PluginItem(props: IPluginItemProps) { FILE: src/pages/setting/settingTypes/pluginSetting/index.tsx function PluginSetting (line 25) | function PluginSetting() { FILE: src/pages/setting/settingTypes/pluginSetting/views/pluginList.tsx type IOption (line 25) | interface IOption { function PluginList (line 31) | function PluginList() { function installPluginFromUrl (line 343) | async function installPluginFromUrl(text: string): Promise = T & { type PaginationResponse (line 66) | type PaginationResponse = { type IPoint (line 71) | interface IPoint { FILE: src/types/core/config.d.ts type IAppConfigProperties (line 4) | interface IAppConfigProperties { type AppConfigPropertyKey (line 73) | type AppConfigPropertyKey = keyof IAppConfigProperties; type IAppConfig (line 75) | interface IAppConfig; FILE: src/types/musicSheetGroup.d.ts type IMusicSheetGroupItem (line 3) | interface IMusicSheetGroupItem { FILE: src/types/plugin.d.ts type IMediaSourceResult (line 2) | interface IMediaSourceResult { type ISearchResult (line 12) | interface ISearchResult { type ISearchResultType (line 17) | type ISearchResultType = ICommon.SupportMediaType; type ISearchFunc (line 19) | type ISearchFunc = ( type IGetArtistWorksFunc (line 25) | type IGetArtistWorksFunc = ( type IUserVariable (line 31) | interface IUserVariable { type IAlbumInfoResult (line 40) | interface IAlbumInfoResult { type ISheetInfoResult (line 46) | interface ISheetInfoResult { type ITopListInfoResult (line 52) | interface ITopListInfoResult { type IGetRecommendSheetTagsResult (line 58) | interface IGetRecommendSheetTagsResult { type IPluginDefine (line 64) | interface IPluginDefine { type IPluginInstance (line 146) | interface IPluginInstance extends IPluginDefine { type R (line 152) | type R = Required; type IPluginInstanceMethods (line 153) | type IPluginInstanceMethods = { type IPluginMeta (line 158) | type IPluginMeta = { FILE: src/utils/checkUpdate.ts type IUpdateInfo (line 11) | interface IUpdateInfo { function checkUpdate (line 20) | async function checkUpdate(): Promise { FILE: src/utils/colorUtil.ts function grayRate (line 3) | function grayRate(color: string | Color) { function grayLevelCode (line 16) | function grayLevelCode(color: string | Color) { FILE: src/utils/eventBus.ts class EventBus (line 3) | class EventBus { method constructor (line 6) | constructor() { method on (line 15) | on( method once (line 22) | once( method emit (line 29) | emit( method off (line 36) | off( FILE: src/utils/fileUtils.ts function saveToGallery (line 24) | async function saveToGallery(src: string) { function sizeFormatter (line 51) | function sizeFormatter(bytes: number | string) { function checkAndCreateDir (line 64) | async function checkAndCreateDir(dirPath: string) { function getFolderSize (line 75) | async function getFolderSize(dirPath: string): Promise { function getCacheSize (line 92) | async function getCacheSize( function clearCache (line 105) | async function clearCache(type: "music" | "lyric" | "image") { function addFileScheme (line 122) | function addFileScheme(fileName: string) { function addRandomHash (line 129) | function addRandomHash(url: string) { function trimHash (line 136) | function trimHash(url: string) { function escapeCharacter (line 144) | function escapeCharacter(str?: string) { function getDirectory (line 148) | function getDirectory(dirPath: string) { function getFileName (line 156) | function getFileName(filePath: string, withoutExt?: boolean) { function mkdirR (line 174) | async function mkdirR(directory: string) { function writeInChunks (line 199) | async function writeInChunks( function resolveImportedAssetOrPath (line 221) | function resolveImportedAssetOrPath(pathOrAsset: string | number | undef... function resolveImportedAsset (line 229) | function resolveImportedAsset(id?: number) { FILE: src/utils/getUrlExt.ts function getUrlExt (line 3) | function getUrlExt(url?: string) { FILE: src/utils/htmlUtil.ts function sanitizeHtml (line 2) | function sanitizeHtml(html: string): string { FILE: src/utils/jsonUtil.ts function safeStringify (line 1) | function safeStringify(raw: any): string { function safeParse (line 10) | function safeParse(raw?: string) { FILE: src/utils/log.ts function trace (line 30) | function trace( function clearLog (line 47) | async function clearLog() { function getErrorLogContent (line 60) | async function getErrorLogContent() { function errorLog (line 99) | function errorLog(desc: string, message: any) { function devLog (line 109) | function devLog( FILE: src/utils/lrcParser.ts type LyricMeta (line 4) | type LyricMeta = Record; type IOptions (line 6) | interface IOptions { type IParsedLrcItem (line 13) | interface IParsedLrcItem { class LyricParser (line 24) | class LyricParser { method musicItem (line 37) | get musicItem() { method constructor (line 41) | constructor(raw: string, options?: IOptions) { method getPosition (line 87) | getPosition(position: number): IParsedLrcItem | null { method getLyricItems (line 124) | getLyricItems() { method getMeta (line 128) | getMeta() { method toString (line 132) | toString(options?: { method parseTime (line 155) | private parseTime(timeStr: string): number { method timeToLrctime (line 164) | private timeToLrctime(sec: number) { method parseMetaImpl (line 174) | private parseMetaImpl(metaStr: string) { method parseLyricImpl (line 193) | private parseLyricImpl(raw: string) { FILE: src/utils/mediaExtra.ts type IMediaExtraProperties (line 15) | interface IMediaExtraProperties { function getMediaExtra (line 34) | function getMediaExtra(mediaItem: ICommon.IMediaBase | null): IMediaExtr... function getMediaExtraProperty (line 56) | function getMediaExtraProperty(me... function patchMediaExtra (line 67) | function patchMediaExtra(mediaItem: ICommon.IMediaBase, extra: Partial(me... FILE: src/utils/mediaIndexMap.ts type IIndexMap (line 1) | interface IIndexMap { function createMediaIndexMap (line 7) | function createMediaIndexMap( FILE: src/utils/mediaUtils.ts function getMediaUniqueKey (line 12) | function getMediaUniqueKey(mediaItem: ICommon.IMediaBase) { function parseMediaUniqueKey (line 21) | function parseMediaUniqueKey(key: string): ICommon.IMediaBase { function isSameMediaItem (line 49) | function isSameMediaItem( function resetMediaItem (line 59) | function resetMediaItem( function getLocalPath (line 89) | function getLocalPath(mediaItem: ICommon.IMediaBase) { FILE: src/utils/minDistance.ts function makeMatrix (line 1) | function makeMatrix(row: number, col: number) { function minDistance (line 7) | function minDistance(word1?: string, word2?: string): number { FILE: src/utils/network.ts type NetworkState (line 4) | enum NetworkState { class Network (line 10) | class Network { method state (line 14) | get state() { method isOffline (line 19) | get isOffline() { method isWifi (line 24) | get isWifi() { method isCellular (line 29) | get isCellular() { method isConnected (line 34) | get isConnected() { method constructor (line 38) | constructor() { method mapState (line 48) | private mapState(state: any) { FILE: src/utils/notImplementedFunction.ts function notImplementedFunction (line 1) | function notImplementedFunction() { FILE: src/utils/perfLogger.ts type IPerfLogger (line 1) | interface IPerfLogger { function perfLogger (line 5) | function perfLogger(): IPerfLogger { FILE: src/utils/persistStatus.ts type IPersistStatus (line 14) | interface IPersistStatus { function set (line 43) | function set( function get (line 55) | function get(key: K): IPersistStatus[K] ... function useValue (line 64) | function useValue( FILE: src/utils/qualities.ts function getQualityOrder (line 20) | function getQualityOrder( FILE: src/utils/rpx.ts function vh (line 12) | function vh(pct: number) { function vw (line 16) | function vw(pct: number) { function vmin (line 20) | function vmin(pct: number) { function vmax (line 24) | function vmax(pct: number) { function sh (line 28) | function sh(pct: number) { function sw (line 32) | function sw(pct: number) { FILE: src/utils/scheduleClose.ts function exitApp (line 15) | async function exitApp() { function setScheduleClose (line 20) | function setScheduleClose(deadline: number | null) { function setCloseAfterPlayEnd (line 41) | function setCloseAfterPlayEnd(closeAfterPlayEnd: boolean) { function useScheduleCloseCountDown (line 49) | function useScheduleCloseCountDown() { FILE: src/utils/stateMapper.ts class StateMapper (line 3) | class StateMapper { method constructor (line 6) | constructor(getFun: () => T) { type UpdateFunc (line 29) | type UpdateFunc = (prev: T) => T; class GlobalState (line 31) | class GlobalState { method constructor (line 35) | constructor(initValue: T) { FILE: src/utils/storage.ts function setStorage (line 4) | async function setStorage(key: string, value: any) { function getStorage (line 12) | async function getStorage(key: string) { function getMultiStorage (line 22) | async function getMultiStorage(keys: string[]) { function removeStorage (line 40) | async function removeStorage(key: string) { FILE: src/utils/toast.ts function success (line 3) | function success(message: string, config?: IToastConfig) { function warn (line 11) | function warn(message: string, config?: IToastConfig) {