57044dabba45df91156234ce1baf409ed5054eb6
Adds src/api/endpoints/settings.ts (getSettings/updateSettings, getScrobbling/updateScrobbling) plus AppSettings/ScrobblingConfig types and a Settings cache tag. Replaces the "coming soon" scaffolds: - Playback: stream-quality preference (SegmentedControl), server-synced. - Scrobbling: enable + provider (Last.fm/ListenBrainz) + username + write-only session key, with a linked/not-linked badge and save states. Built with modern-sk (Window/SegmentedControl/TextField/Button/Callout/ Badge) + the shared Loading/Error states; en + ru strings added. Server state flows through RTK Query hooks only (no fetch in components). Also drops a pre-existing unused TextField import in LibraryPage that was failing `tsc --noEmit`. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Rsbuild project
Setup
Install the dependencies:
npm install
Get started
Start the dev server, and the app will be available at http://localhost:3000.
npm run dev
Build the app for production:
npm run build
Preview the production build locally:
npm run preview
Learn more
To learn more about Rsbuild, check out the following resources:
- Rsbuild documentation - explore Rsbuild features and APIs.
- Rsbuild GitHub repository - your feedback and contributions are welcome!
Description
Languages
HTML
62.3%
TypeScript
34.2%
CSS
2.2%
JavaScript
1.2%
Shell
0.1%