Deluan Quintão
fcdd30ba8f
build(ui): migrate from CRA/Jest to Vite/Vitest ( #3311 )
...
* feat: create vite project
* feat: it's alive!
* feat: `make dev` working!
* feat: replace custom serviceWorker with vite plugin
* test: replace Jest with Vitest
* fix: run prettier
* fix: skip eslint for now.
* chore: remove ui.old folder
* refactor: replace lodash.pick with simple destructuring
* fix: eslint errors (wip)
* fix: eslint errors (wip)
* fix: display-name eslint errors (wip)
* fix: no-console eslint errors (wip)
* fix: react-refresh/only-export-components eslint errors (wip)
* fix: react-refresh/only-export-components eslint errors (wip)
* fix: react-refresh/only-export-components eslint errors (wip)
* fix: react-refresh/only-export-components eslint errors (wip)
* fix: build
* fix: pwa manifest
* refactor: pwa manifest
* refactor: simplify PORT configuration
* refactor: rename simple JS files
* test: cover playlistUtils
* fix: react-image-lightbox
* feat(ui): add sourcemaps to help debug issues
2024-09-28 11:54:36 -04:00
Deluan
3107170afd
Improve SQL sanitization
2024-09-14 18:53:34 -04:00
certuna
52b77e4194
Support for Original Date, Release Date & splitting/grouping of album editions ( #2162 )
...
* Update AlbumGridView.js
* Update AlbumDetails.js
* Update AlbumDetails.js
* Create DoubleRangeField.js
* Update and rename DoubleRangeField.js to RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update AlbumGridView.js
* Update AlbumDetails.js
* Update RangeFieldDouble.js
* Update index.js
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update AlbumDetails.js
* Update RangeFieldDouble.js
* Update AlbumDetails.js
* Update RangeFieldDouble.js
* Update AlbumDetails.js
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update AlbumDetails.js
* Update AlbumDetails.js
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update AlbumDetails.js
* Update RangeFieldDouble.js
* Update AlbumDetails.js
* Update en.json
* Update en.json
* Update AlbumDetails.js
* Update RangeFieldDouble.js
* Update AlbumGridView.js
* Update AlbumDetails.js
* Update AlbumSongs.js
* Update ContextMenus.js
* Update SongDatagrid.js
* Update AlbumSongs.js
* Update SongDatagrid.js
* Update SongDatagrid.js
* Update SongDatagrid.js
* Update AlbumSongs.js
* Update SongList.js
* Update playlist_track_repository.go
* Update 20230113000000_release_year.go
* Update PlayButton.js
* Update mediafile_repository.go
* Update album.go
* Update playlist_track_repository.go
* Update playlist_track_repository.go
* Update SongDatagrid.js
* Update 20230113000000_release_year.go
* Update SongDatagrid.js
* Update AlbumSongs.js
* Update SongDatagrid.js
* Update SongDatagrid.js
* Update SongDatagrid.js
* Update SongDatagrid.js
* Update AlbumDetails.js
* Update AlbumSongs.js
* Update AlbumSongs.js
* Update RangeFieldDouble.js
* Update SongDatagrid.js
* Update 20230113000000_release_year.go
* Update 20230113000000_release_year.go
* Update 20230113000000_release_year.go
* Update 20230113000000_release_year.go
* Update AlbumSongs.js
* Update AlbumSongs.js
* Update mapping.go
* Update RangeFieldDouble.js
* Update AlbumGridView.js
* Update AlbumSongs.js
* Update en.json
* Update SongDatagrid.js
* Update SongDatagrid.js
* Update metadata.go
* Update mapping.go
* Update AlbumDetails.js
* Update AlbumGridView.js
* Update RangeFieldDouble.js
* Update mapping.go
* Update metadata.go
* Update mapping.go
* Update AlbumDetails.js
* Update 20230113000000_release_year.go
* Update AlbumDetails.js
* Update en.json
* Update configuration.go
* Update mapping.go
* Update configuration.go
* Update mediafile.go
* Update metadata.go
* Update RangeFieldDouble.js
* Update 20230113000000_release_year.go
* Update configuration.go
* Update mapping.go
* Update mediafile.go
* Update mapping.go
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update RangeFieldDouble.js
* Update 20230113000000_release_year.go
* Update AlbumDetails.js
* Update RangeFieldDouble.js
* Update mapping.go
* Update metadata.go
* Update album.go
* Update mediafile.go
* Update mediafile.go
* Update album.go
* Update fields.go
* Update mediafile_repository.go
* Update playlist_track_repository.go
* Update AlbumSongs.js
* Update SongDatagrid.js
* Update PlayButton.js
* Update SongList.js
* Update ContextMenus.js
* Update SongDatagrid.js
* Update metadata.go
* Update ArtistShow.js
* Update mapping.go
* Update configuration.go
* Update mapping.go
* Update metadata.go
* Update metadata.go
* Update mapping.go
* Update metadata.go
* Update metadata.go
* Update mapping.go
* Update 20230113000000_release_year.go
* Update 20230113000000_release_year.go
* Update mapping.go
* Update metadata.go
* Update metadata.go
* Update album.go
* Update mediafile.go
* Update AlbumDetails.js
* Update AlbumSongs.js
* Update album.go
* Update mediafile.go
* Update metadata.go
* Update mediafile.go
* Update 20230113000000_release_year.go
* Update 20230113000000_release_year.go
* Update album.go
* Update mediafile.go
* Update RangeFieldDouble.js
* Update AlbumDetails.js
* Update AlbumGridView.js
* Update en.json
* Update AlbumGridView.js
* Update RangeFieldDouble.js
* Update and rename 20230113000000_release_year.go to 20230113000000_release_date.go
* Update album.go
* Update mediafile.go
* Update fields.go
* Update playlist_track_repository.go
* Update mediafile_repository.go
* Update mapping.go
* Update metadata.go
* Update mapping.go
* Update SongDatagrid.js
* Update RangeFieldDouble.js
* Update index.js
* Update ContextMenus.js
* Update PlayButton.js
* Create FormatDate.js
* Update SongList.js
* Update AlbumDetails.js
* Update AlbumSongs.js
* Update AlbumSongs.js
* Update en.json
* Update AlbumDetails.js
* Update album.go
fixed conflict I think?
* Update mediafile.go
fixed conflict
* Format with goimports
* Update SongDatagrid.js
only show Cat # in desktop view
* Update metadata_internal_test.go
* Update metadata_test.go
* Delete test.mp3
* Add files via upload
mp3 test file with Date, Original Date and Release Date
* Update metadata_test.go
* Update metadata_test.go
* Update metadata_test.go
* Update metadata_test.go
* Update taglib_test.go
* Delete test.mp3
* Add files via upload
file with replaygain & dates
* Update AlbumGridView.js
* Update AlbumDetails.js
* Update AlbumSongs.js
* Update ContextMenus.js
* Update FormatDate.js
* Update PlayButton.js
* Update RangeFieldDouble.js
* Update SongDatagrid.js
* Update AlbumSongs.js
* Update SongDatagrid.js
* Update AlbumSongs.js
* Fix formatting
* Update mapping.go
* Update AlbumSongs.js
* Update SongDatagrid.js
* Update SongDatagrid.js
prettier
* Create RangeDoubleField.js
rename of RangeFieldDouble.js
* Update AlbumGridView.js
RangeFieldDouble -> RangeDoubleField
* Update mediafile.go
AllOrNothing() -> allOrNothing()
* Update metadata_internal_test.go
getYear -> getDate
* Update AlbumDetails.js
wrote suggested changes
* Update en.json
Editions -> Releases & fixed the field name
* Update configuration.go
Rename Editions -> Releases
* Update 20230113000000_release_date.go
Editions -> Releases
* Update album.go
Editions -> Releases
* Update mediafile.go
Editions -> Releases
* Update AlbumDetails.js
Editions -> Releases
* Update AlbumSongs.js
Editions -> Releases
* Update RangeDoubleField.js
Editions -> Releases
* Update SongDatagrid.js
Editions -> Releases
* Update index.js
FormatFullDate and RangeDoubleField
* Rename FormatDate.js to FormatFullDate.js
* Delete RangeFieldDouble.js
* Update mediafile.go
AllOrNothing -> allOrNothing
* Update mapping.go
Editions -> Releases
* Update AlbumDetails.js
prettier
* Update SongDatagrid.js
showReleaseRow -> showReleaseDivider
* Update AlbumSongs.js
showReleaseRow -> showReleaseDivider for clarity
* Update and rename 20230113000000_release_date.go to 20230515184510_add_release_date.go
- rename the migration file
- fixed the import to goose/v3
- additional db fields for original date & year
* Update 20230515184510_add_release_date.go
* Update fields.go
* Update album.go
* Update mediafile.go
* Update mapping.go
* Update AlbumDetails.js
* Update en.json
* Update AlbumDetails.js
* Update AlbumDetails.js
now hopefully prettier
* Update mapping.go
---------
Co-authored-by: Deluan <deluan@navidrome.org >
2023-05-19 15:27:47 -04:00
Deluan
9667f3cd48
Add file path to toggleable columns in SongList view. Fix #1719
2023-03-09 17:47:20 -05:00
Deluan
17d9573f4d
Refactor dialogs, make it simple to add a new dialog to all views
2023-01-24 18:36:47 -05:00
Kendall Garner
55b0227494
Add Date Added column in Album and Song lists ( #2055 )
2022-12-22 22:44:07 -05:00
Kendall Garner
54395e7e6a
Enable transcoding of downlods ( #1667 )
...
* feat(download): Enable transcoding of downlods - #573
Signed-off-by: Kendall Garner <17521368+kgarner7@users.noreply.github.com >
* feat(download): Make automatic transcoding of downloads optional
Signed-off-by: Kendall Garner <17521368+kgarner7@users.noreply.github.com >
* Fix spelling
* address changes
* prettier
* fix config
* use previous name
Signed-off-by: Kendall Garner <17521368+kgarner7@users.noreply.github.com >
2022-12-18 12:12:37 -05:00
Deluan
91b470c93b
Show artist link in Songs lists
2021-11-05 20:25:12 -04:00
Samarjeet
0c0bd2967d
Replace expanded with a dialog ( #1258 )
...
* Replace expanded with a dialog
* Change `info` label to "Get Info"
* Rename things for consistency
Co-authored-by: Deluan <deluan@navidrome.org >
2021-09-20 20:30:43 -04:00
Miguel A. Arroyo
e12a14a87d
feat: Adds Audio Channel Metadata - #1036
2021-09-20 19:33:50 -04:00
Deluan
7bd506accc
Retrieve all options for Genre filters
2021-07-24 16:00:27 -04:00
Deluan
20b7e5c49b
Add Genre filters to UI
2021-07-20 17:45:08 -04:00
certuna
77f6bc83ac
Update SongList.js ( #1219 )
...
Genre and Comments columns in Songs listview (hidden by default)
2021-07-02 10:18:45 -04:00
Deluan
25f0e11562
Add 'AlbumArtist' column to SongList
2021-06-28 09:54:17 -04:00
Deluan
c4623d7bc3
Don't show "empty" dates
2021-06-16 12:28:49 -04:00
Deluan
e0fd1c6ad8
Add "Last Played" column to SongList
2021-06-16 11:57:02 -04:00
Deluan
7f85ecd515
Trigger a UI refresh when the scanner finds changes.
...
Closes #1025
2021-06-09 21:02:20 -04:00
Deluan
60d50de8c9
Refactoring to make common components usage more uniform
2021-05-26 09:35:13 -04:00
Aldrin Jenson
cf8ee251ee
Option to toggle fields in songs, albums & artists ( #923 )
...
* Add toggleColumns
- Add logic for toggling columns
- Add MenuComponent + useSelectedFields hook
* Refactoring
* eslint-fixes
* Typo
* skip menu in albumGridView
* add omittedFields
* Add toggling for playlists and albumSong
* Refactoring
* defaultProps - fix
* Add toggling for PlaylistSongs
* remove accidental console log
* Refactoring for future compatibility
* Hide ToggleMenu in albumGridView
* Add TopBarComponent in ToggleFieldsMenu
* Add defaultOff for useSelectedFields
* Fix edge case
* eslint fix
* Refactoring
* Add propType for forwardRef
* Fix issues
* add translation for grid and table
* add translation for grid and table
* Ignore menuBtn for spotify-ish and Ligera themes
* hide bpm by default in playlistSongs
* Add memoization
* Default album view must be Grid
Co-authored-by: Deluan <deluan@navidrome.org >
2021-05-24 11:09:06 -04:00
Brian Schrameck
30bb3f7b43
BPM metadata enhancement ( #1087 )
...
* BPM metadata enhancement
Related to #1036 .
Adds BPM to the stored metadata about MediaFiles.
Displays BPM in the following locations:
- Listing songs in the song list (desktop, sortable)
- Listing songs in playlists (desktop, sortable)
- Listing songs in albums (desktop)
- Expanding song details
When listing, shows a blank field if no BPM is present. When showing song details, shows a question mark.
Updates test MP3 file to have BPM tag. Updated test to ensure tag is read correctly.
Updated localization files. Most languages just use "BPM" as discovered during research on Wikipedia. However, a couple use some different nomenclature. Spanish uses PPM and Japanese uses M.M.
* Enhances support for BPM metadata extraction
- Supports reading floating point BPM (still storing it as an integer) and FFmpeg as the extractor
- Replaces existing .ogg test file with one that shouldn't fail randomly
- Adds supporting tests for both FFmpeg and TagLib
* Addresses various issues with PR #1087 .
- Adds index for BPM. Removes drop column as it's not supported by SQLite (duh).
- Removes localizations for BPM as those will be done in POEditor.
- Moves BPM before Comment in Song Details and removes BPM altogether if it's empty.
- Omits empty BPM in JSON responses, eliminating need for FunctionField.
- Fixes copy/paste error in ffmpeg_test.
2021-05-05 21:35:01 -04:00
Ruchi Kushwaha
b441260186
Change icon on active menu item ( #903 )
...
* add icons
* add logic to change the icon
* make the active menu bold
* Encapsulate the dynamic icon behaviour into a self-contained component
Co-authored-by: Deluan <deluan@navidrome.org >
2021-04-17 00:40:07 -04:00
Deluan
96a14ec484
Hide QualityInfo on small screens
2021-04-07 16:10:31 -04:00
Neil Chauhan
48ae4f7479
Add 5-star rating system( #986 )
...
* Added Star Rating functionality for Songs
* Added Star Rating functionality for Artists
* Added Star Rating functionality for AlbumListView
* Added Star Rating functionality for AlbumDetails and improved typography for title
* Added functionality to turn on/off Star Rating functionality for Songs
* Added functionality to turn on/off Star Rating functionality for Artists
* Added functionality to turn on/off Star Rating functionality for Albums
* Added enableStarRating to server config
* Resolved the bugs and improved the ratings functionality.
* synced repo and removed duplicate key
* changed the default rating size to small, and changed the color to match the theme.
* Added translations for ratings, and Top Rated tab in side menu.
* Changed rating translation to topRated in albumLists, and added has_rating filter to topRated.
* Added empty stars icon to RatingField.
* Added sortable=false in AlbumSongs and added sortByOrder=DESC in all List components.
* Added translations for rating, for artists and albums, and removed the sortByOrder=DESC from SimpleLists.
2021-04-07 16:02:52 -04:00
Himanshu maurya
52812fa48b
Added quality info ( #918 )
...
* added quality info
* fixed formatting
* implemented various suggestions
* npm run prettier
* applied suggestions
* npm run prettier
* corrected lossless formats and other suggestions
* moved losslessformats into consts.js
* added some test
* typo while resolving conflicts
* fetch
* removed a bug causing component (as suggested)
* Update PlayerToolbar.js
* implemented suggestions
* added few more tests
* npm run prettier
* added size
* updated qualityInfo
* implemented suggestions
* added test for when no record is recieved
* Update QualityInfo.js
2021-04-06 21:30:17 -04:00
Neil Chauhan
404253a881
Enable turn on/off Favorites/Loved feature. ( #917 )
...
* Added option to enable/disable favorites in Song
* Added option to enable/disable favorites in Artist
* Added option to enable/disable favorites in Albums and Favorites tab in sidebar
* Added option to enable/disable favorites in Player
* Set default value of enableFavourites as true
* Improved the functionality to enable/disable Favorites
* Add `EnableFavourites` config option
Co-authored-by: Deluan <deluan@navidrome.org >
2021-03-28 20:35:49 -04:00
Deluan
90cf118349
Fix context menu/heart column header alignment in SongList
2021-03-27 22:09:43 -04:00
Neil Chauhan
ac37bf3631
Refactored the current ⭐ ️/Star feature to ❤️ /Love/Favourite feature. ( #908 )
...
* Added setRating feature to AlbumListView
* Refactored the iconography from ⭐ to ❤️
* Refactored the current component from StarButton to LoveButton
* Refactored all translations from Starred to Loved, and all props from showStar to showLove
* Refactored useToggleStar hook to useToggleLove
* rebased repository from master and removed stray commmits
* Refactored handler name from TOGGLE_STAR to TOGGLE_LOVE in PlayerToolbar.js
* Change "starred" translation to "Favorite"
Co-authored-by: Deluan <deluan@navidrome.org >
2021-03-26 23:56:19 -04:00
Arbaz Ahmed
4e44d841dd
New component for song display in song list ( #833 )
...
* added new component SONGSIMPLELIST for smaller displays
* added new component SONGSIMPLELIST for smaller displays
* added new component SONGSIMPLELIST for smaller displays
* Updated songsimplelist
Removed truncation
* removed garbage code
* refactored some issues of overlapping
* refactored some issues of overlapping
* changed the song ui design
* refactored some bugs in artist display
* refactored some bugs in artist display
* removed garbage dependencies
* removed div bugs
* added all the logic to the component itself
2021-03-23 00:12:19 -04:00
Deluan
847531391d
Help dialog with available hotkeys
2021-02-03 19:08:03 -05:00
Deluan
dab83c4f6a
Disambiguate tracks by AlbumArtist when sorting by album
2020-12-23 11:38:40 -05:00
Deluan
a42fb024be
Fix song context menu "on hover" visibility
2020-11-27 13:13:51 -05:00
Deluan
3fc81638c7
Moved all reducers and actions to their own folders
2020-11-08 13:19:38 -05:00
Deluan
1f842b08e2
Remove duplicated code for SongBulkActions
2020-10-31 10:46:38 -04:00
Deluan
aabef62b11
Add "PlayNow" button to bulk actions
2020-10-31 10:14:12 -04:00
Deluan
e6d1e67297
Add more padding tertiary info and the star icon, in Mobile simple list views. Fixes #466
2020-09-24 21:29:26 -04:00
Deluan
7305e3aa17
Add "Play Next" action (finally)
2020-09-21 20:10:52 -04:00
Deluan
bd1c3d9229
Use outlined Material-UI variant for all inputs
2020-08-17 11:19:39 -04:00
Deluan
ca5da5b0ea
Use active filters when shuffling songs
2020-08-14 14:10:39 -04:00
Deluan
0730c667a2
Add "Shuffle All" option to Song List. Closes #256
2020-08-07 10:47:55 -04:00
Deluan
9d23b191b5
Show indicator on current playing song. Fixes #128
2020-06-19 11:32:23 -04:00
Deluan
72b2e756f7
Revert "Show indicator on current playing song. Fixes #128 "
...
This implementation causes performance issues
2020-06-13 16:41:11 -04:00
Deluan
be2afb94ae
Show indicator on current playing song. Fixes #128
2020-06-13 14:04:45 -04:00
Deluan
82d437f004
Better defaults to sort orders in List views
2020-06-09 07:46:28 -04:00
Deluan
b836dfe7f4
Do not reset the SongList query params
2020-05-31 14:27:02 -04:00
Deluan
62290bca77
Remove extra ,
2020-05-28 08:16:31 -04:00
Deluan
26dba27778
Always show song context menu on tablets
2020-05-26 22:02:15 -04:00
Deluan
2c68ba3934
only show playlist tracks' context menu on hover
2020-05-26 16:18:28 -04:00
Deluan
f9dae2dd2a
Added individual AddToPlaylistDialogs to each list view
2020-05-25 22:51:31 -04:00
Deluan
6db63e4dfc
Use creatable autocomplete, to select or create a new playlist
2020-05-25 22:51:31 -04:00
Deluan
a6cc88177c
Fix "starred" sorting
2020-05-24 12:49:32 -04:00