refactor(lib): move uploadArtistImage to subsonicArtists (M5 misplacement)

uploadArtistImage lived in lib/api/subsonicPlaylists but is artist-domain and
consumed only by features/artist/runArtistDetailActions. Relocated to
lib/api/subsonicArtists (its rightful API module); consumer repointed. Also fixes
a stale doc comment in features/randomMix/index.ts (mixRatingFilter now lives in
features/playback). No behavior change; tests pass unmodified.
This commit is contained in:
Psychotoxical
2026-06-30 21:33:38 +02:00
parent 10d948db61
commit ccaecdddd8
4 changed files with 22 additions and 21 deletions
@@ -1,6 +1,6 @@
import type React from 'react';
import type { TFunction } from 'i18next';
import { uploadArtistImage } from '@/lib/api/subsonicPlaylists';
import { uploadArtistImage } from '@/lib/api/subsonicArtists';
import { setRating, star, unstar } from '@/lib/api/subsonicStarRating';
import type { SubsonicArtist } from '@/lib/api/subsonicTypes';
import { useAuthStore } from '@/store/authStore';
+3 -3
View File
@@ -5,9 +5,9 @@
* random-mix queue-build helpers. The pages are lazy-loaded by the router via
* their deep paths, so they are not re-exported here.
*
* Stays OUT (shared infra, consumed by the playback core too, not owned):
* `utils/mix/mixRatingFilter` (a generic rating-window filter used by the
* infinite-queue builder + home/album/CLI → a `lib/` candidate).
* Stays OUT (owned by the playback feature, consumed cross-feature here):
* `features/playback/utils/mixRatingFilter` (rating-window filter driven by the
* infinite-queue builder; reads playback's userRatingOverrides).
*/
export { useLuckyMixAvailable, isLuckyMixAvailable } from './hooks/useLuckyMixAvailable';
export { useLuckyMixStore } from './store/luckyMixStore';