feat(17-02): implement save flow, cover art editing, and error handling

- Wire saveEdit() to WriteTrackTagsByPath with diff-only TagChanges map
- Add cover art selection via ImageFilePicker with instant blob preview
- Add cover art removal (× button) with clearCoverArt state
- Show saving indicator and disable buttons during save
- Display errors inline in action bar; edit mode stays active on error
- Add ReadFile Go method on FrontendUtil to read cover art bytes
- Add Wails binding for ReadFile
- Clean up all edit state (editValues, pendingCoverArt, errorMessage) on close/cancel
This commit is contained in:
2026-03-17 21:20:01 -04:00
parent b776f3acb9
commit 265a9ea8ce
4 changed files with 373 additions and 6 deletions
+2
View File
@@ -8,4 +8,6 @@ export function ImageFilePicker():Promise<string>;
export function PlaylistFilePicker():Promise<Array<string>>;
export function ReadFile(arg1:string):Promise<Array<number>>;
export function SetContext(arg1:context.Context):Promise<void>;
@@ -14,6 +14,10 @@ export function PlaylistFilePicker() {
return window['go']['frontendutil']['FrontendUtil']['PlaylistFilePicker']();
}
export function ReadFile(arg1) {
return window['go']['frontendutil']['FrontendUtil']['ReadFile'](arg1);
}
export function SetContext(arg1) {
return window['go']['frontendutil']['FrontendUtil']['SetContext'](arg1);
}