Library search upgrades: tag search, tag cloud, status filter
Backend: - MediaItem gains search_tags (custom + e621 tags, lowercase) and has_custom_data, maintained on save with a data migration backfill - File list search accepts search_type=filename|tags|both (tag search is word-AND across the flattened tag text) and status=matched|custom| unknown filters - New /api/tags/cloud/ endpoint (cached 2 min per guest/auth, invalidated on item changes and deletions) returning the most-used tags, honouring guest visibility Frontend: - Library sidebar: Filename/Tags/Both selector, status pill toggles (persisted), and a clickable tag cloud that runs a tag search - Roadmap updated
This commit is contained in:
@@ -7,6 +7,8 @@ interface UiState {
|
||||
toggleSidebar: () => void;
|
||||
ratings: string[];
|
||||
setRatings: (ratings: string[]) => void;
|
||||
statuses: string[];
|
||||
setStatuses: (statuses: string[]) => void;
|
||||
perPage: number;
|
||||
setPerPage: (perPage: number) => void;
|
||||
ordering: string;
|
||||
@@ -23,6 +25,9 @@ export const useUi = create<UiState>()(
|
||||
ratings: [],
|
||||
setRatings: (ratings) => set({ ratings }),
|
||||
|
||||
statuses: [],
|
||||
setStatuses: (statuses) => set({ statuses }),
|
||||
|
||||
perPage: 48,
|
||||
setPerPage: (perPage) => set({ perPage }),
|
||||
|
||||
|
||||
Reference in New Issue
Block a user