Files
yellowjacket/frontend/src/events.ts
T
yonlu bd44f8306c feat(12-01): implement library CRUD methods and orphan cleanup pipeline
- Add AddLibrary, RenameLibrary, RemoveLibrary, GetRemovalImpact methods
- RemoveLibrary follows exact order: phantom populate → delete audio_files → orphan cleanup → commit → FTS5 rebuild → cover art file cleanup → queue compact → events
- Add cancelLibraryScan and currentTrackBelongsToLibrary helpers
- Add RemovalHooks type and removalHooks field on Library struct
- Add LibraryAdded, LibraryRenamed, LibraryRemoved event constants
- Regenerate frontend events.ts with new CRUD events
- All hand-crafted SQL has SAFETY comments per project convention
- Dual artist_credit FK check (recordings + release_groups) for orphan cleanup
2026-03-12 19:37:07 -04:00

53 lines
1.8 KiB
TypeScript

// Code generated by genevents from backend/events/events.go. DO NOT EDIT.
export const Events = {
// Playback events (backend → frontend push)
PlaybackStateChanged: "PlaybackStateChanged",
PlaybackFinished: "PlaybackFinished",
TrackChanged: "TrackChanged",
SeekFailed: "SeekFailed",
VolumeChanged: "VolumeChanged",
// Queue events (backend → frontend push)
QueueChanged: "QueueChanged",
QueueIndexChanged: "QueueIndexChanged",
QueueModeChanged: "QueueModeChanged",
QueueTracksModified: "QueueTracksModified",
// Config events
LibraryConfigChanged: "LibraryConfigChanged",
ThemeConfigChanged: "ThemeConfigChanged",
TrackListConfigChanged: "TrackListConfigChanged",
FavoritesConfigChanged: "FavoritesConfigChanged",
ShortcutsConfigChanged: "ShortcutsConfigChanged",
// Playlist events
PlaylistCreated: "PlaylistCreated",
PlaylistDeleted: "PlaylistDeleted",
PlaylistRenamed: "PlaylistRenamed",
PlaylistTracksChanged: "PlaylistTracksChanged",
PlaylistsRestored: "PlaylistsRestored",
DefaultPlaylistChanged: "DefaultPlaylistChanged",
// Library events
LibraryScanStarted: "LibraryScanStarted",
LibraryScanProgress: "LibraryScanProgress",
LibraryScanComplete: "LibraryScanComplete",
// Scan control events
LibraryScanCancelled: "LibraryScanCancelled",
LibraryScanPaused: "LibraryScanPaused",
LibraryScanResumed: "LibraryScanResumed",
// Scan queue events
LibraryScanQueued: "LibraryScanQueued",
LibraryScanQueueDrained: "LibraryScanQueueDrained",
// Library CRUD events
LibraryAdded: "LibraryAdded",
LibraryRenamed: "LibraryRenamed",
LibraryRemoved: "LibraryRemoved",
} as const;
export type EventName = (typeof Events)[keyof typeof Events];