fix(metadata): improve Libro.fm metadata integration

Persist Libro.fm identifiers across metadata refresh, editing, file round trips, and provider links. Enable explicitly selected audiobook providers during Auto-fill and retain AudNexus ASINs as Audible identifiers.
This commit is contained in:
neon
2026-07-12 07:05:02 +00:00
parent 5e03f92037
commit eac0917d22
57 changed files with 14166 additions and 24 deletions
+1
View File
@@ -188,6 +188,7 @@ export type BookMetadataRefreshPreviewFields = {
openLibraryId?: string | null;
itunesId?: string | null;
audibleId?: string | null;
librofmId?: string | null;
koboId?: string | null;
comicvineId?: string | null;
ranobedbId?: string | null;
+3
View File
@@ -50,6 +50,7 @@ export const BOOK_FILE_WRITE_FIELDS = [
...COMIC_BOOK_FILE_WRITE_FIELDS,
"itunesId",
"audibleId",
"librofmId",
"narrators",
"coverBytes",
] as const;
@@ -96,6 +97,7 @@ export const BOOK_FILE_WRITE_FIELD_LABELS = {
comicStoryArcs: "Story arcs",
itunesId: "iTunes ID",
audibleId: "Audible ID",
librofmId: "Libro.fm ISBN",
narrators: "Narrators",
coverBytes: "Cover",
} as const satisfies Record<BookFileWriteField, string>;
@@ -133,6 +135,7 @@ export const AUDIO_BOOK_FILE_WRITE_FIELDS = [
"seriesName",
"seriesIndex",
"audibleId",
"librofmId",
"coverBytes",
] as const satisfies readonly BookFileWriteField[];
+1
View File
@@ -26,6 +26,7 @@ export const BOOK_METADATA_LOCK_FIELDS = [
"openLibraryId",
"itunesId",
"audibleId",
"librofmId",
"koboId",
"comicvineId",
"ranobedbId",