feat(tag-editor): add batch metadata editor with artwork support

New metadata editor accessible via "Edit Metadata" in the song, album,
and playlist song context menus. Supports editing one or more files at once.

Tags:
- Displays all metadata fields for the selected files
- Fields differing across files are shown as "(Multiple Values)"
- Fields can be added from a dropdown or removed individually
- Only modified fields are written back to disk

Artwork:
- Displays shared cover art across all selected files
- Supports setting new artwork via file picker or drag-and-drop
- Supports clearing existing artwork
- Shows a placeholder when selected files have different covers

Reading and writing:
- Tags are read via music-metadata, preserving full ISO date strings
- Writes use taglib-wasm WASI in-place editing via setProperty,
  only touching fields that were explicitly changed
- Writability of all files is checked before any writes begin
- Partial read failures show a warning but still allow editing

Other:
- Per-file batch progress is reported during reads and writes
- In-flight reads are cancelled when the modal is closed
- An optional server library rescan can be triggered after saving
This commit is contained in:
ChrisScott9456
2026-06-14 22:52:30 -04:00
parent 4297d0d5b3
commit 7e82ab146e
31 changed files with 3808 additions and 2193 deletions
+2248 -2190
View File
File diff suppressed because it is too large Load Diff