Commit Graph

86 Commits

Author SHA1 Message Date
jeffvli b8fc0fb668 enforce fetch order for addToQueue 2025-11-29 19:32:18 -08:00
jeffvli 1b80d7fd27 reduce default scrollbar size 2025-11-29 19:32:17 -08:00
jeffvli 17c4d3e5fb add LoadingOverlay component 2025-11-29 19:32:14 -08:00
jeffvli 489daa6353 add drag/drop from lists into queue 2025-11-29 19:32:14 -08:00
jeffvli ad409fecfa add drag state to item grid 2025-11-29 19:32:14 -08:00
jeffvli 9fafb4f397 add rating / favorite to player context and events 2025-11-29 19:32:13 -08:00
jeffvli 0cfa07bfbc fix merge 2025-11-29 19:32:13 -08:00
jeffvli 56907436a3 add remaining song filter changes 2025-11-29 19:32:11 -08:00
jeffvli 26d635791a update settings store for album/song lists 2025-11-29 19:32:10 -08:00
jeffvli f6a7af2b12 remove typed _custom query 2025-11-29 19:30:51 -08:00
jeffvli f90a11e9cf wrap disclosure hook 2025-11-29 19:30:51 -08:00
jeffvli dffa8e710a wrap localstorage hook 2025-11-29 19:30:50 -08:00
jeffvli e53b434dfe add keys, pagination types 2025-11-29 19:30:50 -08:00
jeffvli 24f9753bc0 add PLAYLIST_SONG, QUEUE_SONG item types 2025-11-29 19:30:50 -08:00
jeffvli 076710672c forward switch ref 2025-11-29 19:30:50 -08:00
jeffvli 53daa90bff update popover/dropdown bg styles 2025-11-29 19:30:50 -08:00
jeffvli 3b4a667f61 add alignment icons 2025-11-29 19:30:50 -08:00
jeffvli b6e38815e3 center align checkbox label by default 2025-11-29 19:30:50 -08:00
jeffvli 6471114c28 export ButtonGroup components 2025-11-29 19:30:50 -08:00
jeffvli 667aacc6c8 add prop configuration for X,Y scroll on ScrollArea 2025-11-29 19:30:49 -08:00
jeffvli e4189e92d0 improve tooltip readability 2025-11-29 19:30:49 -08:00
jeffvli 545ea25e43 implement table list callbacks 2025-11-29 19:30:49 -08:00
jeffvli 02d9e8328f disable default skeleton animation 2025-11-29 19:30:49 -08:00
jeffvli 06a3686739 add links to genre / album artists columns 2025-11-29 19:30:49 -08:00
jeffvli 3c2f186891 fix Navidrome normalized types for userFavorite, userRating 2025-11-29 19:30:49 -08:00
jeffvli ae8ca54a07 add initial table columns 2025-11-29 19:30:49 -08:00
jeffvli 00e7b4a9d5 fix styling props on Text component 2025-11-29 19:30:49 -08:00
jeffvli f610489a61 update pagination itemcount wording to be language agnostic 2025-11-29 19:30:49 -08:00
jeffvli 6ae103850b progress on table columns 2025-11-29 19:30:49 -08:00
jeffvli d4b8b12687 add color utilities 2025-11-29 19:30:48 -08:00
jeffvli 9cfe396d0f add GRID_PAGINATED to ListDisplayType 2025-11-29 19:30:48 -08:00
jeffvli 3fc2583470 properly handle weight prop on Text and TextTitle 2025-11-29 19:30:48 -08:00
jeffvli 3efa54b68a add additional list pagination helpers and components 2025-11-29 19:30:48 -08:00
jeffvli 85407f3e11 remove uniqueId property from all entities except QueueSong 2025-11-29 19:30:48 -08:00
jeffvli 9fd4abec25 re-implement mpv with new player 2025-11-29 19:30:47 -08:00
jeffvli 427f808180 rename internal types in domain models 2025-11-29 19:30:47 -08:00
jeffvli 550ba4f768 temporarily remove old player implementations to prevent broken app 2025-11-29 19:30:46 -08:00
jeffvli f266e299f5 remove old api types files 2025-11-03 11:16:50 -08:00
Kendall Garner e26ffaac53 Add additional information to album: record label, release type, version (#1242)
* Add additional information to album

* add mbz release types and normalization

* update Pill styling

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
2025-11-03 00:34:42 -08:00
jeffvli c7a473d864 refactor api controller to internalize server fetch 2025-11-02 21:56:35 -08:00
jeffvli 34b728c86d fix shared song type import 2025-11-02 01:39:01 -07:00
jeffvli abd1d55f23 remove limit / startIndex from count query args 2025-11-02 01:39:01 -07:00
jeffvli 78fb9b5ab7 require response from detail/list endpoints 2025-11-02 01:39:01 -07:00
jeffvli dd70d30cd3 fix inconsistent image loader aspect ratio 2025-11-01 22:17:02 -07:00
Kendall Garner 1a176fd118 Refactor add to playlist modal (#1236)
* Refactor add to playlist modal

* redesign base modal component, add ModalButton component

* improve visibility of filled button focus

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
2025-11-01 21:57:12 -07:00
jeffvli 805c75a67f optimize image component
- use new intersection hooks instead of react-intersection-observer
- remove motion, replace with css animation
- remove unneeded container from Loader component
2025-11-01 05:00:51 -07:00
jeffvli 29991ea95d replace react-intersection-observer package with mantine hooks 2025-11-01 04:41:51 -07:00
Jake King a9f2b083fa Import / Export Feishin Settings (#1163)
* Create a shared DragDrop Zone

- This zone allows the dropping of files
- The zone allows validation by parent
- The zone allows customisation like icon shown

* Import Settings

- Ability to import settings from a JSON file
- Validation to ensure file compatibility
- Visualiser for viewing string differences

* i18n

- Moved all hardcoded values to be en localised

* Zod / Validation

This commit contains the code to move settings to using ZOD, the reason for this is so that we can validate the settings schema that is being imported.

This commit also adds various validation and transforms to ensure the settings being reimported match values we expect.

I also removed the original crude validation and replaced it with the new ZOD parser that will handle this for us.

Finally the "styles-settings" component will listen to any external content updates and update its value, the reasoning is the external import wouldn't update the existing value.


- Split Settings schema into two parts, schema that is validated on import and schema that is not
- Schemas are merged to make the full SettingsStateSchema

* Migrate during validation

- Migration is done as part of validation
- Updated the store version to v10 as there has been changes to the settings
- Migrate will now add the fields from v9 to v10


- the build was failing due to ids not being mapped to their enum values

---------

Co-authored-by: Jeff <42182408+jeffvli@users.noreply.github.com>
2025-10-28 20:54:13 -07:00
Lyall 4dd52b0cef feat: Add explicit status for Navidrome and OpenSubsonic (#1220)
* add navidrome explicit status

* add ExplicitStatus enum and support opensubsonic

* add explicit status to cards
2025-10-26 13:48:45 +00:00
Kendall Garner 6733047942 improve jellyfin participants 2025-10-10 19:32:11 -07:00