gitextract_y64r62ev/ ├── .github/ │ └── workflows/ │ └── ci.yml ├── .gitignore ├── .swcrc ├── CHANGELOG.md ├── LICENSE ├── PRIVACY.md ├── PRIVACY_CN.md ├── README.md ├── README_CN.md ├── android/ │ ├── .gitignore │ ├── app/ │ │ ├── build.gradle │ │ └── src/ │ │ └── main/ │ │ ├── AndroidManifest.xml │ │ ├── java/ │ │ │ └── nini22p/ │ │ │ └── omp/ │ │ │ ├── Application.java │ │ │ ├── DelegationService.java │ │ │ └── LauncherActivity.java │ │ └── res/ │ │ ├── drawable-anydpi/ │ │ │ └── shortcut_legacy_background.xml │ │ ├── mipmap-anydpi-v26/ │ │ │ └── ic_launcher.xml │ │ ├── raw/ │ │ │ └── web_app_manifest.json │ │ ├── values/ │ │ │ ├── colors.xml │ │ │ └── strings.xml │ │ └── xml/ │ │ ├── filepaths.xml │ │ └── shortcuts.xml │ ├── build.gradle │ ├── gradle/ │ │ └── wrapper/ │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradle.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── eslint.config.mjs ├── extract_log.py ├── generate-version-info.mjs ├── lingui.config.js ├── package.json ├── postcss.config.js ├── public/ │ └── manifest.json ├── src/ │ ├── App.tsx │ ├── components/ │ │ ├── CommonList/ │ │ │ ├── CommonList.tsx │ │ │ ├── CommonListItem.tsx │ │ │ ├── CommonListItemCard.tsx │ │ │ ├── CommonMenu.tsx │ │ │ └── ShuffleAll.tsx │ │ └── Lyrics/ │ │ └── Lyrics.tsx │ ├── data/ │ │ └── licenses.ts │ ├── graph/ │ │ ├── authConfig.ts │ │ └── graph.ts │ ├── hooks/ │ │ ├── graph/ │ │ │ ├── useFilesData.ts │ │ │ ├── useSync.ts │ │ │ └── useUser.ts │ │ ├── player/ │ │ │ ├── useMediaSession.ts │ │ │ ├── usePlayerControl.ts │ │ │ └── usePlayerCore.ts │ │ ├── ui/ │ │ │ ├── useControlHide.ts │ │ │ ├── useCustomTheme.ts │ │ │ ├── useFullscreen.ts │ │ │ ├── useStyles.ts │ │ │ └── useThemeColor.ts │ │ ├── useDebounce.ts │ │ └── useUtils.ts │ ├── index.css │ ├── index.html │ ├── locales/ │ │ ├── en/ │ │ │ └── messages.po │ │ └── zh-CN/ │ │ └── messages.po │ ├── main.tsx │ ├── pages/ │ │ ├── Files/ │ │ │ ├── BreadcrumbNav.tsx │ │ │ ├── Files.tsx │ │ │ └── FilterMenu.tsx │ │ ├── History.tsx │ │ ├── Loading.tsx │ │ ├── LogIn.tsx │ │ ├── NavBar.tsx │ │ ├── NotFound.tsx │ │ ├── PictureView/ │ │ │ ├── PictureList.tsx │ │ │ ├── PictureListItem.tsx │ │ │ └── PictureView.tsx │ │ ├── Player/ │ │ │ ├── Audio/ │ │ │ │ ├── Audio.tsx │ │ │ │ ├── Classic.tsx │ │ │ │ └── Modern.tsx │ │ │ ├── PlayQueue.tsx │ │ │ ├── Player.tsx │ │ │ ├── PlayerControl.tsx │ │ │ ├── PlayerMenu.tsx │ │ │ ├── VideoPlayer.tsx │ │ │ ├── VideoPlayerTopbar.tsx │ │ │ └── VolumeControl.tsx │ │ ├── Playlist/ │ │ │ └── Playlist.tsx │ │ ├── Refresh.tsx │ │ ├── Search.tsx │ │ ├── Setting.tsx │ │ └── SideBar/ │ │ ├── MobileSideBar.tsx │ │ ├── Playlists.tsx │ │ └── SideBar.tsx │ ├── router.tsx │ ├── store/ │ │ ├── createSelectors.ts │ │ ├── storage.ts │ │ ├── useHistoryStore.ts │ │ ├── useLocalMetaDataStore.ts │ │ ├── usePictureStore.ts │ │ ├── usePlayQueueStore.ts │ │ ├── usePlayerStore.ts │ │ ├── usePlaylistsStore.ts │ │ └── useUiStore.ts │ ├── types/ │ │ ├── MetaData.ts │ │ ├── commonMenu.ts │ │ ├── file.ts │ │ ├── history.ts │ │ ├── picture.ts │ │ ├── playQueue.ts │ │ ├── player.ts │ │ ├── playlist.ts │ │ └── ui.ts │ └── utils.ts ├── tsconfig.json └── webpack.config.cjs