From e586f2d6850c6b8b7bfe42c13812ed035f5b5e0d Mon Sep 17 00:00:00 2001 From: Sandakan Nipunajith <45460443+Sandakan@users.noreply.github.com> Date: Sun, 23 Apr 2023 13:32:13 +0530 Subject: [PATCH] Nora v2.0.0-stable update finalization - Updated the installer sidebar image. - Add a transition effect for some icons. - Added no of songs in a folder when selecting folders to be added to the library. - Fixed a bug where img component try to fetch 404 requests repeatedly. - Fixed a bug where users can download lyrics in the lyrics editor even though the app is not connected to the internet. --- LICENSE.txt | 2 +- README.md | 4 + assets/installer_assets/sidebar.bmp | Bin 212598 -> 212598 bytes assets/styles/styles.css | 1 + changelog.md | 5 +- open_source_licenses.txt | 2 +- package-lock.json | 64 ++--- package.json | 12 +- release-notes.json | 253 +++++++++++++++++- release/app/package-lock.json | 4 +- release/app/package.json | 2 +- release/package-lock.json | 2 +- release/package.json | 2 +- src/@types/app.d.ts | 3 +- src/@types/apple_itunes_music_api.d.ts | 1 - src/main/core/getFolderStructures.ts | 32 ++- src/main/core/getMusicFolderData.ts | 7 +- src/main/core/getSongLyrics.ts | 2 - src/main/core/restoreBlacklistedFolder.ts | 23 +- .../fs/parseFolderStructuresForSongPaths.ts | 30 ++- src/main/main.ts | 1 - src/main/preload.ts | 3 - src/main/utils/isBlacklisted.ts | 16 +- src/renderer/App.tsx | 7 - src/renderer/components/Button.tsx | 1 - src/renderer/components/Hyperlink.tsx | 1 - src/renderer/components/Img.tsx | 12 +- .../components/LyricsPage/LyricsPage.tsx | 17 +- .../components/MiniPlayer/MiniPlayer.tsx | 2 +- .../MusicFoldersPage/MusicFoldersPage.tsx | 2 - .../MusicFoldersPage/SelectableFolder.tsx | 5 +- .../ReleaseNotesPrompt/ReleaseNotesPrompt.tsx | 2 +- .../SettingsPage/AppShortcutsPrompt.tsx | 1 + .../SongTagsEditingPage/SongArtwork.tsx | 1 - .../SongMetadataResult.tsx | 2 - .../SongMetadataResultsSelectPrompt.tsx | 2 - .../SongTagsEditingPage.tsx | 8 - .../input_containers/SongAlbumInput.tsx | 6 +- .../input_containers/SongArtistsInput.tsx | 3 - .../input_containers/SongLyricsEditor.tsx | 19 +- src/renderer/utils/throttle.ts | 2 - 41 files changed, 436 insertions(+), 128 deletions(-) diff --git a/LICENSE.txt b/LICENSE.txt index 32ce21fd..bba9db52 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2022 Sandakan Nipunajith +Copyright (c) 2023 Sandakan Nipunajith Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 63cfbf6f..17cbd49e 100644 --- a/README.md +++ b/README.md @@ -63,6 +63,10 @@ It packs a horizon of features including,

+
+ +![Latest Version Artwork](/assets/other/release%20artworks/whats-new-v2.0.0-stable.webp) + Visit the [release notes](/changelog.md) to see what's new on the latest release.


diff --git a/assets/installer_assets/sidebar.bmp b/assets/installer_assets/sidebar.bmp index 131858407ee46b3cffca7f5dfcb282eea581053b..c0cf808f307d9fd3766da1204b577eb6152c0752 100644 GIT binary patch literal 212598 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 diff --git a/assets/styles/styles.css b/assets/styles/styles.css index 99d575df..5a2ef398 100644 --- a/assets/styles/styles.css +++ b/assets/styles/styles.css @@ -133,6 +133,7 @@ html { -moz-osx-font-smoothing: grayscale; font-feature-settings: 'liga'; user-select: none; + transition: font-variation-settings 0.15s ease-in-out; } .material-icons-round { diff --git a/changelog.md b/changelog.md index 24245e8e..40ce02ab 100644 --- a/changelog.md +++ b/changelog.md @@ -8,7 +8,7 @@
-- ### **v2.0.0-stable - ( 20th of April 2023 )** +- ### **v2.0.0-stable - ( 23th of April 2023 )** - ### 🎉 New Features and Features @@ -32,6 +32,7 @@ - Added a new button to the right side of the app's footer for advanced playback options. - Added a new smooth scrolling feature to pages that directs users to specific parts of the page. - Added a new title next to the artwork in the queue to show the queue type. + - Add a new transition effect for some icons. - Added support for responsive song cards in the Home. - Added support to toggle between predictive search and normal search. - Added support for highlighting more than one lyrics line at a time. Fixes #135. @@ -104,6 +105,8 @@ - Updated some styles in the Release Notes prompt and open_source_licenses prompt. - Reordered buttons in the About section of Settings. - Fixed some security vulnerabilities in the app. + - Fixed a bug where Img component try to fetch 404 requests repeatedly. + - Fixed a bug where users can download lyrics in the lyrics editor even though the app is not connected to the internet. diff --git a/open_source_licenses.txt b/open_source_licenses.txt index 360d892f..b298f50f 100644 --- a/open_source_licenses.txt +++ b/open_source_licenses.txt @@ -3,7 +3,7 @@ NORA MIT License -Copyright (c) 2022 Sandakan Nipunajith +Copyright (c) 2023 Sandakan Nipunajith Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/package-lock.json b/package-lock.json index c70bc81f..840c9f81 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "nora", - "version": "2.0.0-stable.20230420", + "version": "2.0.0-stable", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "nora", - "version": "2.0.0-stable.20230420", + "version": "2.0.0-stable", "hasInstallScript": true, "license": "MIT", "dependencies": { @@ -30,8 +30,8 @@ "@types/auto-launch": "^5.0.2", "@types/dotenv-webpack": "^7.0.3", "@types/jest": "^29.5.1", - "@types/node": "18.15.12", - "@types/react": "^18.0.37", + "@types/node": "18.16.0", + "@types/react": "^18.0.38", "@types/react-beautiful-dnd": "^13.1.4", "@types/react-dom": "^18.0.11", "@types/react-test-renderer": "^18.0.0", @@ -56,7 +56,7 @@ "electron-debug": "^3.2.0", "electron-devtools-installer": "^3.2.0", "electronmon": "^2.0.2", - "eslint": "^8.38.0", + "eslint": "^8.39.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-erb": "^4.0.6", "eslint-import-resolver-typescript": "^3.5.5", @@ -92,7 +92,7 @@ "url-loader": "^4.1.1", "webpack": "^5.80.0", "webpack-bundle-analyzer": "^4.8.0", - "webpack-cli": "^5.0.1", + "webpack-cli": "^5.0.2", "webpack-dev-server": "^4.13.3", "webpack-merge": "^5.8.0" } @@ -974,9 +974,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.38.0.tgz", - "integrity": "sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g==", + "version": "8.39.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.39.0.tgz", + "integrity": "sha512-kf9RB0Fg7NZfap83B3QOqOGg9QmD9yBudqQXzzOtn3i4y7ZUXe5ONeW34Gwi+TxhH4mvj72R1Zc300KUMa9Bng==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2436,9 +2436,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "18.15.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.12.tgz", - "integrity": "sha512-Wha1UwsB3CYdqUm2PPzh/1gujGCNtWVUYF0mB00fJFoR4gTyWTDPjSm+zBF787Ahw8vSGgBja90MkgFwvB86Dg==", + "version": "18.16.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.0.tgz", + "integrity": "sha512-BsAaKhB+7X+H4GnSjGhJG9Qi8Tw+inU9nJDwmD5CgOmBLEI6ArdhikpLX7DjbjDRDTbqZzU2LSQNZg8WGPiSZQ==", "dev": true }, "node_modules/@types/plist": { @@ -2476,9 +2476,9 @@ "dev": true }, "node_modules/@types/react": { - "version": "18.0.37", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.37.tgz", - "integrity": "sha512-4yaZZtkRN3ZIQD3KSEwkfcik8s0SWV+82dlJot1AbGYHCzJkWP3ENBY6wYeDRmKZ6HkrgoGAmR2HqdwYGp6OEw==", + "version": "18.0.38", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.38.tgz", + "integrity": "sha512-ExsidLLSzYj4cvaQjGnQCk4HFfVT9+EZ9XZsQ8Hsrcn8QNgXtpZ3m9vSIC2MWtx7jHictK6wYhQgGh6ic58oOw==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -3127,9 +3127,9 @@ } }, "node_modules/@webpack-cli/serve": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.1.tgz", - "integrity": "sha512-0G7tNyS+yW8TdgHwZKlDWYXFA6OJQnoLCQvYKkQP0Q2X205PSQ6RNUj0M+1OB/9gRQaUZ/ccYfaxd0nhaWKfjw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.2.tgz", + "integrity": "sha512-S9h3GmOmzUseyeFW3tYNnWS7gNUuwxZ3mmMq0JyW78Vx1SGKPSkt5bT4pB0rUnVfHjP0EL9gW2bOzmtiTfQt0A==", "dev": true, "engines": { "node": ">=14.15.0" @@ -6608,15 +6608,15 @@ } }, "node_modules/eslint": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.38.0.tgz", - "integrity": "sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg==", + "version": "8.39.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.39.0.tgz", + "integrity": "sha512-mwiok6cy7KTW7rBpo05k6+p4YVZByLNjAZ/ACB9DRCu4YDRwjXI01tWHp6KAUWelsBetTxKK/2sHB0vdS8Z2Og==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", "@eslint/eslintrc": "^2.0.2", - "@eslint/js": "8.38.0", + "@eslint/js": "8.39.0", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -6626,7 +6626,7 @@ "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", + "eslint-scope": "^7.2.0", "eslint-visitor-keys": "^3.4.0", "espree": "^9.5.1", "esquery": "^1.4.2", @@ -15787,17 +15787,17 @@ } }, "node_modules/webpack-cli": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.0.1.tgz", - "integrity": "sha512-S3KVAyfwUqr0Mo/ur3NzIp6jnerNpo7GUO6so51mxLi1spqsA17YcMXy0WOIJtBSnj748lthxC6XLbNKh/ZC+A==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.0.2.tgz", + "integrity": "sha512-4y3W5Dawri5+8dXm3+diW6Mn1Ya+Dei6eEVAdIduAmYNLzv1koKVAqsfgrrc9P2mhrYHQphx5htnGkcNwtubyQ==", "dev": true, "dependencies": { "@discoveryjs/json-ext": "^0.5.0", "@webpack-cli/configtest": "^2.0.1", "@webpack-cli/info": "^2.0.1", - "@webpack-cli/serve": "^2.0.1", + "@webpack-cli/serve": "^2.0.2", "colorette": "^2.0.14", - "commander": "^9.4.1", + "commander": "^10.0.1", "cross-spawn": "^7.0.3", "envinfo": "^7.7.3", "fastest-levenshtein": "^1.0.12", @@ -15832,12 +15832,12 @@ } }, "node_modules/webpack-cli/node_modules/commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", "dev": true, "engines": { - "node": "^12.20.0 || >=14" + "node": ">=14" } }, "node_modules/webpack-cli/node_modules/interpret": { diff --git a/package.json b/package.json index 94d9b209..57361e60 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "nora", "productName": "Nora", "description": "An elegant music player built using Electron and React. Inspired by Oto Music for Android by Piyush Mamidwar.", - "version": "2.0.0-stable.20230421", + "version": "2.0.0-stable", "license": "MIT", "appPreferences": { "removeReactStrictMode": false, @@ -135,8 +135,8 @@ "@types/auto-launch": "^5.0.2", "@types/dotenv-webpack": "^7.0.3", "@types/jest": "^29.5.1", - "@types/node": "18.15.12", - "@types/react": "^18.0.37", + "@types/node": "18.16.0", + "@types/react": "^18.0.38", "@types/react-beautiful-dnd": "^13.1.4", "@types/react-dom": "^18.0.11", "@types/react-test-renderer": "^18.0.0", @@ -161,7 +161,7 @@ "electron-debug": "^3.2.0", "electron-devtools-installer": "^3.2.0", "electronmon": "^2.0.2", - "eslint": "^8.38.0", + "eslint": "^8.39.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-erb": "^4.0.6", "eslint-import-resolver-typescript": "^3.5.5", @@ -197,7 +197,7 @@ "url-loader": "^4.1.1", "webpack": "^5.80.0", "webpack-bundle-analyzer": "^4.8.0", - "webpack-cli": "^5.0.1", + "webpack-cli": "^5.0.2", "webpack-dev-server": "^4.13.3", "webpack-merge": "^5.8.0" }, @@ -221,7 +221,7 @@ }, "build": { "productName": "Nora", - "copyright": "Copyright © 2022 Sandakan Nipunajith", + "copyright": "Copyright © 2023 Sandakan Nipunajith", "appId": "com.SandakanNipunajith.Nora", "asar": true, "asarUnpack": "**\\*.{node,dll}", diff --git a/release-notes.json b/release-notes.json index 885f71dd..6134e413 100644 --- a/release-notes.json +++ b/release-notes.json @@ -1,14 +1,259 @@ { "latestVersion": { - "version": "1.2.0-stable", + "version": "2.0.0-stable", "phase": "stable", - "releaseDate": "2023 March 09", - "artwork": "/assets/other/release artworks/whats-new-v1.2.0-stable.webp", + "releaseDate": "2023 April 23", + "artwork": "/assets/other/release artworks/whats-new-v2.0.0-stable.webp", "importantNotes": [ - "This release provides accessibility improvements throughout Nora." + "Installing this update would RESET the app to provide support for new features." ] }, "versions": [ + { + "version": "2.0.0-stable", + "artwork": "/assets/other/release artworks/whats-new-v2.0.0-stable.webp", + "releaseDate": "2023 April 23", + "importantNotes": [ + "Installing this update would RESET the app to provide support for new features." + ], + "notes": { + "new": [ + { + "note": "Added playback-only experimental support for audio formats like FLAC, AAC, and M4R." + }, + { + "note": "Added support for viewing storage usage by the app." + }, + { + "note": "Added experimental support for an improved folder structure." + }, + { + "note": "Added experimental support for suggestions for duplicate artists and artists identified as single artists." + }, + { + "note": "Added a new context option for the currently playing song artwork to the currently playing song's album." + }, + { + "note": "Added a new banner to the SongTagsEditingPage when trying to edit song formats that are supported for playback only." + }, + { + "note": "Added experimental support to generate a playlist cover automatically from the songs inside with the support to randomize the artworks as an additional feature." + }, + { + "note": "Added new options to configure the automatically generated playlist cover in the Preferences section of Settings." + }, + { + "note": "Added experimental support for an Audio Equalizer to the app." + }, + { + "note": "Added a new prompt for the user to customize chosen folders before parsing them." + }, + { + "note": "Added a new feature to reduce animations when the system is on battery power." + }, + { + "note": "Added the 'Generate Palettes' button to the About section of the Settings to generate palettes on demand." + }, + { + "note": "Added a new feature to change the playback speed of the player." + }, + { + "note": "Added a new button to the right side of the app's footer for advanced playback options." + }, + { + "note": "Added a new smooth scrolling feature to pages that directs users to specific parts of the page." + }, + { + "note": "Added a new title next to the artwork in the queue to show the queue type." + }, + { + "note": "Added support for responsive song cards in the Home." + }, + { + "note": "Add a new transition effect for some icons." + }, + { + "note": "Added support to toggle between predictive search and normal search." + }, + { + "note": "Added support for highlighting more than one lyrics line at a time." + }, + { + "note": "Added a new artwork filter for Deezer artist artworks to prevent showing artwork placeholders." + }, + { + "note": "Added a new auto-scrolling feature for the Queue page to scroll to the currently playing song on song skip." + }, + { + "note": "Added a new feature to show some info about the song to be played next in the currently playing song info container periodically." + } + ], + "fixed": [ + { + "note": "Reduced the parsing time of a newly created library by around 30%." + }, + { + "note": "Fixed a bug where the app theme will change when changing the system's theme even though the user didn't select to use the system theme in the app." + }, + { + "note": "Fixed a bug where the theme of the taskbar playback control buttons changed with the app theme instead of the system theme." + }, + { + "note": "Fixed a bug where users can't go to the same page with different data. For example, the user can't go to another artist's info page while staying on another artist's info page." + }, + { + "note": "Migrated the Music Folders section from Settings to the Music Folders page in the sidebar." + }, + { + "note": "Fixed a bug where Sidebar becomes cluttered in smaller resolutions." + }, + { + "note": "Updated some texts in the SongTagsEditingPage." + }, + { + "note": "Fixed a bug where users can save the same song tags again and again in the SongTagsEditingPage." + }, + { + "note": "Improved directory handling by the app." + }, + { + "note": "Reduced the brightness of background artwork." + }, + { + "note": "Fixed a bug where error messages and stack traces aren't being added to the log file." + }, + { + "note": "Fixed a bug where updating song id3 tags doesn't update album metadata." + }, + { + "note": "Fixed a bug where the app doesn't check for updates right after the connection was established." + }, + { + "note": "Fixed a bug where the focus state of a button persists even after the button is clicked." + }, + { + "note": "Fixed a bug where SongTagsEditingPage allows checking for song online results even though the app isn't connected to the internet." + }, + { + "note": "Fixed a bug where disabled buttons show a loading animation." + }, + { + "note": "Fixed a bug where clicking the recent search results and clicking another element to go to another page and come back doesn't persist the clicked recent search result in the search page." + }, + { + "note": "Fixed a bug where the user can't update the artwork of a playlist after creating it." + }, + { + "note": "Fixed a bug where images aren't being shown on the app after they were updated due to caching." + }, + { + "note": "Fixed a bug where the app could go into an infinite error loop if there were any playback errors that the app couldn't handle." + }, + { + "note": "Fixed a bug where removing a song from an album with only one song doesn't remove the album." + }, + { + "note": "Fixed some bugs related to sorting folders." + }, + { + "note": "Fixed flickering issues on some components when they were being updated." + }, + { + "note": "Fixed a bug where images show the alt text when hovered." + }, + { + "note": "Increased the font weight of the text in the sidebar." + }, + { + "note": "Fixed a bug where artist images shown next to the currently playing song cover aren't positioned correctly." + }, + { + "note": "Fixed a bug in Metadata Editing Page where the album cover is always the current song cover." + }, + { + "note": "Fixed a bug where selecting 'Add Selected' or 'Add All' when choosing song metadata results from the internet doesn't update the artists, albums, and genres I the editing page." + }, + { + "note": "Improved accessibility in the Song Metadata Editor." + }, + { "note": "Improved transitions in prompt menus." }, + { + "note": "Fixed a bug where closing the prompt menu will flicker the menu." + }, + { + "note": "Fixed a bug where clicking the Most Relevant Album doesn't open the relevant Album page." + }, + { + "note": "Fixed a bug where artist names on the Song Info page aren't positioned properly." + }, + { + "note": "Fixed some bugs related to customizing selected metadata prompt." + }, + { + "note": "Fixed a bug where hovering over seek bars show an incorrect value." + }, + { + "note": "Fixed a bug where the message 'No Synced Lyrics Found' persists after disabling the lyrics." + }, + { + "note": "Added support for selecting multiple items by Shift + Click and select all by clicking Ctrl + A." + }, + { + "note": "Fixed a bug where the loading element in a button isn't positioned correctly." + }, + { + "note": "Improved accessibility in SongTagsEditingPage." + }, + { + "note": "Fixed a bug where the F5 shortcut to reload doesn't work for other programs when Nora is opened." + }, + { + "note": "Fixed a bug where resetting the app doesn't clear local storage data." + }, + { + "note": "Reduced the space required to save listening data information by around 90%." + }, + { + "note": "Fixed a bug where resetting the app doesn't remove the data related to blacklists." + }, + { + "note": "Fixed a bug where Mini-player doesn't follow reduced motion." + }, + { + "note": "Fixed a bug where adding a song to play next to the last song of the queue will not be played." + }, + { + "note": "Fixed a bug where users can go to the same page repeatedly." + }, + { + "note": "Fixed a bug where clicking a button to go to a specific page twice would direct users to Home." + }, + { + "note": "Fixed a bug where folder modifications are not recognized in folder structures." + }, + { "note": "Updated some styles in prompts." }, + { + "note": "Updated some styles in the Release Notes prompt and open_source_licenses prompt." + }, + { + "note": "Reordered buttons in the About section of Settings." + }, + { + "note": "Fixed some security vulnerabilities in the app." + }, + { + "note": "Added no of songs in a folder when selecting folders to be added to the library." + }, + { + "note": "Fixed a bug where Img component try to fetch 404 requests repeatedly." + }, + { + "note": "Fixed a bug where users can download lyrics in the lyrics editor even though the app is not connected to the internet." + } + ], + "knownIssues": [] + } + }, { "version": "1.2.0-stable", "artwork": "/assets/other/release artworks/whats-new-v1.2.0-stable.webp", diff --git a/release/app/package-lock.json b/release/app/package-lock.json index 60ca2b29..c9bf0730 100644 --- a/release/app/package-lock.json +++ b/release/app/package-lock.json @@ -1,12 +1,12 @@ { "name": "nora", - "version": "2.0.0-stable.20230421", + "version": "2.0.0-stable", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "nora", - "version": "2.0.0-stable.20230421", + "version": "2.0.0-stable", "hasInstallScript": true, "license": "MIT", "dependencies": { diff --git a/release/app/package.json b/release/app/package.json index 26590066..cede679d 100644 --- a/release/app/package.json +++ b/release/app/package.json @@ -1,7 +1,7 @@ { "name": "nora", "productName": "Nora", - "version": "2.0.0-stable.20230421", + "version": "2.0.0-stable", "description": "An elegant music player built using Electron and React. Inspired by Oto Music for Android by Piyush Mamidwar.", "main": "./dist/main/main.js", "author": { diff --git a/release/package-lock.json b/release/package-lock.json index e5ed2746..ca8653d9 100644 --- a/release/package-lock.json +++ b/release/package-lock.json @@ -1,6 +1,6 @@ { "name": "nora", - "version": "2.0.0-stable.20230421", + "version": "2.0.0-stable", "lockfileVersion": 2, "requires": true, "packages": { diff --git a/release/package.json b/release/package.json index 5feddb62..73ee0d87 100644 --- a/release/package.json +++ b/release/package.json @@ -1,7 +1,7 @@ { "name": "nora", "productName": "Nora", - "version": "2.0.0-stable.20230421", + "version": "2.0.0-stable", "description": "An elegant music player built using Electron and React. Inspired by Oto Music for Android by Piyush Mamidwar.", "main": "./dist/main/main.js", "author": { diff --git a/src/@types/app.d.ts b/src/@types/app.d.ts index 6807438f..ad3e04f2 100644 --- a/src/@types/app.d.ts +++ b/src/@types/app.d.ts @@ -1,5 +1,3 @@ -/* eslint-disable no-use-before-define */ -/* eslint-disable no-unused-vars */ import NodeID3 from 'node-id3'; import { ReactElement, ReactNode } from 'react'; import { ButtonProps } from 'renderer/components/Button'; @@ -402,6 +400,7 @@ declare global { interface FolderStructure extends MusicFolderData { subFolders: FolderStructure[]; + noOfSongs?: number; } interface MusicFolder extends FolderStructure { diff --git a/src/@types/apple_itunes_music_api.d.ts b/src/@types/apple_itunes_music_api.d.ts index 815e7eec..67e64aa1 100644 --- a/src/@types/apple_itunes_music_api.d.ts +++ b/src/@types/apple_itunes_music_api.d.ts @@ -1,5 +1,4 @@ /* eslint-disable no-shadow */ -/* eslint-disable no-unused-vars */ // Generated by https://quicktype.io export enum Explicitness { diff --git a/src/main/core/getFolderStructures.ts b/src/main/core/getFolderStructures.ts index 9a52c3a9..cd33144c 100644 --- a/src/main/core/getFolderStructures.ts +++ b/src/main/core/getFolderStructures.ts @@ -1,13 +1,28 @@ import fs from 'fs/promises'; +import path from 'path'; + import log from '../log'; -import { getDirectories } from '../filesystem'; +import { getDirectories, supportedMusicExtensions } from '../filesystem'; import { showOpenDialog } from '../main'; import getAllSettledPromises from '../utils/getAllSettledPromises'; +import { getAllFilePathsFromFolder } from '../fs/parseFolderStructuresForSongPaths'; + +const getSongPathsInAFolder = (folderPath: string) => { + const allFiles = getAllFilePathsFromFolder(folderPath); + + const allSongPaths = allFiles.filter((filePath) => { + const fileExtension = path.extname(filePath); + return supportedMusicExtensions.includes(fileExtension); + }); + + return allSongPaths; +}; export const generateFolderStructure = async (dir: string) => { try { const stats = await fs.stat(dir); - const props: FolderStructure = { + + const structure: FolderStructure = { path: dir, stats: { lastModifiedDate: stats.mtime, @@ -16,6 +31,7 @@ export const generateFolderStructure = async (dir: string) => { lastParsedDate: new Date(), }, subFolders: [], + noOfSongs: getSongPathsInAFolder(dir).length, }; const subDirs = await getDirectories(dir); @@ -27,9 +43,16 @@ export const generateFolderStructure = async (dir: string) => { subDirsStructurePromise ); - props.subFolders.push(...subDirsStructures); + structure.subFolders.push(...subDirsStructures); + + const subDirNoOfSongs = subDirsStructures + .map((x) => x.noOfSongs || 0) + .reduce((prevValue, currValue) => prevValue + currValue, 0); + + if (structure.noOfSongs) structure.noOfSongs += subDirNoOfSongs; + else structure.noOfSongs = subDirNoOfSongs; } - return props; + return structure; } catch (error) { log('Error occurred when analysing folder structure.', { error }, 'ERROR'); throw error; @@ -42,5 +65,6 @@ export const getFolderStructures = async () => { const { fulfilled: folderStructures } = await getAllSettledPromises( musicFolderPaths.map((folderPath) => generateFolderStructure(folderPath)) ); + return folderStructures; }; diff --git a/src/main/core/getMusicFolderData.ts b/src/main/core/getMusicFolderData.ts index ce07652a..ed640e2d 100644 --- a/src/main/core/getMusicFolderData.ts +++ b/src/main/core/getMusicFolderData.ts @@ -1,5 +1,6 @@ import sortFolders from '../utils/sortFolders'; -import { getBlacklistData, getSongsData, getUserData } from '../filesystem'; +import { getSongsData, getUserData } from '../filesystem'; +import { isFolderBlacklisted } from '../utils/isBlacklisted'; const getRelevantSongsofFolders = (folderPath: string) => { const songs = getSongsData(); @@ -19,8 +20,6 @@ const getRelevantSongsofFolders = (folderPath: string) => { const createFolderData = ( folderStructures: FolderStructure[] ): MusicFolder[] => { - const { folderBlacklist } = getBlacklistData(); - const foldersData: MusicFolder[] = []; for (const structure of folderStructures) { @@ -29,7 +28,7 @@ const createFolderData = ( ...structure, subFolders: createFolderData(structure.subFolders), songIds, - isBlacklisted: folderBlacklist.includes(structure.path), + isBlacklisted: isFolderBlacklisted(structure.path), }; if (structure.subFolders.length > 0) { diff --git a/src/main/core/getSongLyrics.ts b/src/main/core/getSongLyrics.ts index 024d3bdc..b19a91dc 100644 --- a/src/main/core/getSongLyrics.ts +++ b/src/main/core/getSongLyrics.ts @@ -1,5 +1,3 @@ -/* eslint-disable no-unused-vars */ -/* eslint-disable default-param-last */ import path from 'path'; import NodeID3 from 'node-id3'; import songlyrics from 'songlyrics'; diff --git a/src/main/core/restoreBlacklistedFolder.ts b/src/main/core/restoreBlacklistedFolder.ts index bd07d7dc..26fc5b79 100644 --- a/src/main/core/restoreBlacklistedFolder.ts +++ b/src/main/core/restoreBlacklistedFolder.ts @@ -1,10 +1,31 @@ -import { dataUpdateEvent } from '../main'; +import path from 'path'; + +import { dataUpdateEvent, sendMessageToRenderer } from '../main'; import { getBlacklistData, setBlacklist } from '../filesystem'; import log from '../log'; +import { isParentFolderBlacklisted } from '../utils/isBlacklisted'; const restoreBlacklistedFolders = async (blacklistedFolderPaths: string[]) => { const blacklist = getBlacklistData(); + for (const blacklistedFolderPath of blacklistedFolderPaths) { + const isParentBlacklisted = isParentFolderBlacklisted( + blacklistedFolderPath + ); + const isParentNotInFolderPaths = !blacklistedFolderPaths.includes( + path.dirname(blacklistedFolderPath) + ); + + if (isParentBlacklisted && isParentNotInFolderPaths) + sendMessageToRenderer( + `Couldn't whitelist '${path.basename( + blacklistedFolderPath + )}' folder because its parent folder '${path.basename( + path.dirname(blacklistedFolderPath) + )}' is also blacklisted. Whitelist the parent folder to whitelist this folder.` + ); + } + blacklist.folderBlacklist = blacklist.folderBlacklist.filter( (blacklistedFolderPath) => !blacklistedFolderPaths.includes(blacklistedFolderPath) diff --git a/src/main/fs/parseFolderStructuresForSongPaths.ts b/src/main/fs/parseFolderStructuresForSongPaths.ts index 017a0958..23b586c1 100644 --- a/src/main/fs/parseFolderStructuresForSongPaths.ts +++ b/src/main/fs/parseFolderStructuresForSongPaths.ts @@ -31,18 +31,32 @@ export const getAllFoldersFromFolderStructures = ( return folderData; }; -const getAllFilesFromFolderStructures = ( +export const getAllFilePathsFromFolder = (folderPath: string) => { + try { + const baseNames = fsSync.readdirSync(folderPath); + const filePaths = baseNames + .filter((baseName) => path.extname(baseName)) + .map((baseName) => path.join(folderPath, baseName)); + + return filePaths; + } catch (error) { + log( + `Error occurred when getting file paths from '${path.basename( + folderPath + )}' folder`, + { error }, + 'ERROR' + ); + return []; + } +}; + +export const getAllFilesFromFolderStructures = ( folderStructures: FolderStructure[] ) => { const allFolders = getAllFoldersFromFolderStructures(folderStructures); const allFiles = allFolders - .map((folder) => { - const baseNames = fsSync.readdirSync(folder.path); - const filePaths = baseNames - .filter((baseName) => path.extname(baseName)) - .map((baseName) => path.join(folder.path, baseName)); - return filePaths; - }) + .map((folder) => getAllFilePathsFromFolder(folder.path)) .flat(); return allFiles; diff --git a/src/main/main.ts b/src/main/main.ts index e55a4e14..04cf81f9 100644 --- a/src/main/main.ts +++ b/src/main/main.ts @@ -839,7 +839,6 @@ function addEventsToCache( function registerFileProtocol( request: { url: string }, - // eslint-disable-next-line no-unused-vars callback: (arg: string) => void ) { const urlWithQueries = decodeURI(request.url).replace( diff --git a/src/main/preload.ts b/src/main/preload.ts index 26015100..75b3792d 100644 --- a/src/main/preload.ts +++ b/src/main/preload.ts @@ -1,6 +1,3 @@ -/* eslint-disable no-unused-vars */ -/* eslint-disable import/no-cycle */ -/* eslint-disable import/prefer-default-export */ import { contextBridge, ipcRenderer } from 'electron'; import { LastFMTrackInfoApi } from '../@types/last_fm_api'; diff --git a/src/main/utils/isBlacklisted.ts b/src/main/utils/isBlacklisted.ts index c07fc74a..653101a5 100644 --- a/src/main/utils/isBlacklisted.ts +++ b/src/main/utils/isBlacklisted.ts @@ -1,10 +1,24 @@ import path from 'path'; import { getBlacklistData } from '../filesystem'; +export const isParentFolderBlacklisted = (folderPath: string) => { + const { folderBlacklist } = getBlacklistData(); + + const isParentBlacklisted = folderBlacklist.some( + (blacklistedFolderPath) => + path.dirname(folderPath) === blacklistedFolderPath + ); + + return isParentBlacklisted; +}; + export const isFolderBlacklisted = (folderPath: string) => { const { folderBlacklist } = getBlacklistData(); - return folderBlacklist.includes(path.normalize(folderPath)); + const isBlacklsited = folderBlacklist.includes(path.normalize(folderPath)); + const isParentBlacklisted = isParentFolderBlacklisted(folderPath); + + return isBlacklsited || isParentBlacklisted; }; export const isSongBlacklisted = (songId: string, songPath: string) => { diff --git a/src/renderer/App.tsx b/src/renderer/App.tsx index 9941daa5..70ce5336 100644 --- a/src/renderer/App.tsx +++ b/src/renderer/App.tsx @@ -634,7 +634,6 @@ export default function App() { const fadeOutIntervalId = React.useRef(undefined as NodeJS.Timer | undefined); const fadeInIntervalId = React.useRef(undefined as NodeJS.Timer | undefined); const fadeOutAudio = React.useCallback(() => { - // console.log('volume on fade out', contentRef.current.volume); if (fadeInIntervalId.current) clearInterval(fadeInIntervalId.current); if (fadeOutIntervalId.current) clearInterval(fadeOutIntervalId.current); fadeOutIntervalId.current = setInterval(() => { @@ -652,7 +651,6 @@ export default function App() { }, []); const fadeInAudio = React.useCallback(() => { - // console.log('volume on fade in', contentRef.current.volume); if (fadeInIntervalId.current) clearInterval(fadeInIntervalId.current); if (fadeOutIntervalId.current) clearInterval(fadeOutIntervalId.current); fadeInIntervalId.current = setInterval(() => { @@ -887,7 +885,6 @@ export default function App() { const handleSkipForwardClickWithParams = () => handleSkipForwardClick('PLAYER_SKIP'); - // player.addEventListener('seeking', managePlayerNotStalledStatus); player.addEventListener('canplay', managePlayerNotStalledStatus); player.addEventListener('canplaythrough', managePlayerNotStalledStatus); player.addEventListener('loadeddata', managePlayerNotStalledStatus); @@ -926,7 +923,6 @@ export default function App() { return () => { toggleSongPlayback(false); clearInterval(intervalId); - // player.removeEventListener('seeking', managePlayerNotStalledStatus); player.removeEventListener('canplay', managePlayerNotStalledStatus); player.removeEventListener( 'canplaythrough', @@ -1107,7 +1103,6 @@ export default function App() { const updateNotifications = React.useCallback( ( - // eslint-disable-next-line no-unused-vars callback: (currentNotifications: AppNotification[]) => AppNotification[] ) => { const currentNotifications = content.notificationPanelData.notifications; @@ -1251,7 +1246,6 @@ export default function App() { ); - // info.delay = 60000; } if ( (messageCode === 'SONG_REMOVE_PROCESS_UPDATE' || @@ -1857,7 +1851,6 @@ export default function App() { pageY?: number, contextMenuData?: ContextMenuAdditionalData ) => { - // console.log('pageX', pageX, 'pageY', pageY); dispatch({ type: 'CONTEXT_MENU_DATA_CHANGE', data: { diff --git a/src/renderer/components/Button.tsx b/src/renderer/components/Button.tsx index 9c36b87a..4bdb0da9 100644 --- a/src/renderer/components/Button.tsx +++ b/src/renderer/components/Button.tsx @@ -1,4 +1,3 @@ -/* eslint-disable no-unused-vars */ import React from 'react'; export interface ButtonProps { diff --git a/src/renderer/components/Hyperlink.tsx b/src/renderer/components/Hyperlink.tsx index 893fd7e7..96e77ad6 100644 --- a/src/renderer/components/Hyperlink.tsx +++ b/src/renderer/components/Hyperlink.tsx @@ -37,7 +37,6 @@ const Hyperlink = (props: HyperlinkProp) => { ]); return ( - // eslint-disable-next-line jsx-a11y/click-events-have-key-events { } = props; const imgPropsRef = React.useRef(); + const errorCountRef = React.useRef(0); return ( { alt={alt} className={`outline-1 outline-offset-4 focus-visible:!outline ${className}`} onError={(e) => { - if (!noFallbacks && e.currentTarget.src !== fallbackSrc) - e.currentTarget.src = fallbackSrc; - else e.currentTarget.src = DefaultImage; + if (errorCountRef.current < 3) { + errorCountRef.current += 1; + + if (!noFallbacks && e.currentTarget.src !== fallbackSrc) + e.currentTarget.src = fallbackSrc; + else e.currentTarget.src = DefaultImage; + } else + window.api.sendLogs('maximum img fetch error count reached.', 'warn'); }} onClick={onClick} title={ diff --git a/src/renderer/components/LyricsPage/LyricsPage.tsx b/src/renderer/components/LyricsPage/LyricsPage.tsx index f789374b..bd229d71 100644 --- a/src/renderer/components/LyricsPage/LyricsPage.tsx +++ b/src/renderer/components/LyricsPage/LyricsPage.tsx @@ -1,7 +1,5 @@ -/* eslint-disable no-unused-vars */ /* eslint-disable react/jsx-no-useless-fragment */ /* eslint-disable react/no-array-index-key */ -/* eslint-disable promise/catch-or-return */ import React, { useContext } from 'react'; import debounce from 'renderer/utils/debounce'; import { AppUpdateContext } from 'renderer/contexts/AppUpdateContext'; @@ -71,7 +69,8 @@ export const LyricsPage = () => { songPath: currentSongData.path, duration: currentSongData.duration, }) - .then((res) => setLyrics(res)); + .then((res) => setLyrics(res)) + .catch((err) => console.error(err)); }, [ addNewNotifications, currentSongData.artists, @@ -140,7 +139,8 @@ export const LyricsPage = () => { .finally(() => { setIsDisabled(false); setIsPending(false); - }); + }) + .catch((err) => console.error(err)); }, [ currentSongData.artists, @@ -172,7 +172,8 @@ export const LyricsPage = () => { 'OFFLINE_ONLY' ) .then((res) => setLyrics(res)) - .finally(() => setIsDisabled(false)); + .finally(() => setIsDisabled(false)) + .catch((err) => console.error(err)); }, [ currentSongData.artists, @@ -221,7 +222,8 @@ export const LyricsPage = () => { .finally(() => { setIsPending(false); setIsDisabled(false); - }); + }) + .catch((err) => console.error(err)); } }, [addNewNotifications, currentSongData.path, lyrics] @@ -244,7 +246,8 @@ export const LyricsPage = () => { 'ONLINE_ONLY' ) .then((res) => setLyrics(res)) - .finally(() => setIsDisabled(false)); + .finally(() => setIsDisabled(false)) + .catch((err) => console.error(err)); }, [ currentSongData.artists, diff --git a/src/renderer/components/MiniPlayer/MiniPlayer.tsx b/src/renderer/components/MiniPlayer/MiniPlayer.tsx index 264bd598..838ffdc4 100644 --- a/src/renderer/components/MiniPlayer/MiniPlayer.tsx +++ b/src/renderer/components/MiniPlayer/MiniPlayer.tsx @@ -254,7 +254,7 @@ export default function MiniPlayer(props: MiniPlayerProps) { >