Commit Graph

376 Commits

Author SHA1 Message Date
jeffvli d0b709e317 add links to genre / album artists columns 2025-11-07 17:13:02 -08:00
jeffvli d013976823 handle table column order based on pinned column config 2025-11-07 17:13:02 -08:00
jeffvli b38a800c53 add initial table columns 2025-11-07 17:13:01 -08:00
jeffvli 90efdd586c use derived column props, add table header styles 2025-11-07 17:13:01 -08:00
jeffvli 070aca44bf support both left and right column pinning 2025-11-07 17:13:01 -08:00
jeffvli 5a7de78d2b move list pagination padding to separate container 2025-11-07 17:13:01 -08:00
jeffvli 66cbcb5f94 progress on table columns 2025-11-07 17:13:01 -08:00
jeffvli 3f0536e780 more table list progress
- scroll shadow
- header shadow
- remove sticky row count - only allow sticky header
- support table expansion
2025-11-07 17:13:01 -08:00
jeffvli 6e73b08663 fix queryKey on infinite loader 2025-11-07 17:13:01 -08:00
jeffvli 5dcbf1154f fix sticky column autoscroll 2025-11-07 17:13:01 -08:00
jeffvli 9b375f0ff0 progress 2025-11-07 17:13:01 -08:00
jeffvli 9de7d1e610 move item table list 2025-11-07 17:13:01 -08:00
jeffvli 733ba4077a first iteration of table 2025-11-07 17:13:01 -08:00
jeffvli 9dc338adcb rename list components 2025-11-07 17:13:01 -08:00
jeffvli 4caad27d32 rename expanded container classname 2025-11-07 17:13:01 -08:00
jeffvli bbafa6cf40 add initial item detail list design 2025-11-07 17:13:01 -08:00
jeffvli 76033e7ab6 clean up log 2025-11-07 17:13:00 -08:00
jeffvli cff2f87666 add additional list pagination helpers and components 2025-11-07 17:13:00 -08:00
jeffvli 3fb8335578 rename infinite loader hook file 2025-11-07 17:13:00 -08:00
jeffvli 311cbc16e0 add paginated list loader hook 2025-11-07 17:13:00 -08:00
jeffvli 8a18ee3609 finalize infinite loader hook 2025-11-07 17:13:00 -08:00
jeffvli 4d18ea1e84 add initial infinite loader helpers 2025-11-07 17:12:35 -08:00
jeffvli 08cb083928 update ItemGrid to use react-window v2 2025-11-07 17:12:35 -08:00
jeffvli 56a61c2581 add expanded list item component 2025-11-07 17:12:35 -08:00
jeffvli fa13e4afc6 add item card skeleton 2025-11-07 17:12:35 -08:00
jeffvli 81bf610912 add placeholder expanded list item 2025-11-07 17:12:35 -08:00
jeffvli cf4fef1b4d add additional props to ItemGrid 2025-11-07 17:12:35 -08:00
jeffvli 6a780f2e39 add serverId to list state selection 2025-11-07 17:12:35 -08:00
jeffvli 074867fbe5 add utils to handle list multiselect / expand states 2025-11-07 17:12:34 -08:00
jeffvli 69b31e15f7 plain item grid 2025-11-07 17:12:34 -08:00
jeffvli abafdd988a add new card component 2025-11-07 17:12:34 -08:00
jeffvli f30a466fb2 re-implement mpv with new player 2025-11-06 18:42:43 -08:00
jeffvli 0e384a6302 reorganize 2025-11-06 18:39:09 -08:00
jeffvli 0c7cec9f4f fix table row styles listener 2025-11-06 18:39:09 -08:00
jeffvli f30a706eef rework player events to use properties object instead of flat value 2025-11-06 18:39:09 -08:00
jeffvli a980a8de0b add new web player implementation 2025-11-06 18:39:09 -08:00
jeffvli 9abda23a4a temporarily remove old player implementations to prevent broken app 2025-11-06 18:39:09 -08:00
jeffvli c7a473d864 refactor api controller to internalize server fetch 2025-11-02 21:56:35 -08:00
jeffvli 8dbaec3943 fix type errors 2025-11-02 04:27:44 -08:00
jeffvli b685ec370a remove barrel files in renderer 2025-11-02 01:39:01 -07:00
jeffvli 8115963264 upgrade and refactor for react-query v5 2025-11-02 01:38:47 -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
Jeff bca4a14f2e adjust web playback error handler (#1150) 2025-09-24 18:09:30 -07:00
Dave Johnson 59e01f90e8 fix: ensure autoplay on bad encoding 2025-09-01 09:23:39 +01:00
jeffvli 8b141d652c disable single attribute per line 2025-07-12 11:17:54 -07:00
Jeff b7a0b7f997 handle undefined options in GenericCell (#998) 2025-07-06 03:33:11 -07:00
Kendall Garner 2b8db9cfc1 fix table albumCount translation 2025-07-02 19:52:13 -07:00
Kendall Garner caa9448200 don't set sink on closed context 2025-07-02 19:19:51 -07:00
Lyall 81ca6937bc add preserve pitch option (#972) 2025-06-28 13:18:08 -07:00