Add Metadata linking page

This commit is contained in:
2025-10-14 13:40:41 +02:00
parent cdcc953ea2
commit d527f23990
3 changed files with 34 additions and 12 deletions

View File

@@ -35,7 +35,7 @@
{{ row.original }}
</template>
<template #link-cell="{ row }">
<UButton v-if="metadata.find(me => me.metadataFetcherName == row.original)">Unlink</UButton>
<UButton v-if="metadata.find(me => me.metadataFetcherName == row.original)" @click="unlinkMetadataFetcher(row.original)">Unlink</UButton>
<UButton v-else :to="`/manga/${mangaId}/linkMetadata/${row.original}`">Link</UButton>
</template>
</UTable>
@@ -62,11 +62,12 @@ const { data: manga } = await useApi('/v2/Manga/{MangaId}', {
console.error(e);
navigateTo('/');
},
lazy: true
});
const libraryId = ref(manga.value?.fileLibraryId);
const { data: metadataFetchers } = await useApi('/v2/MetadataFetcher', { key: FetchKeys.Metadata.Fetchers });
const { data: metadata } = await useApi('/v2/MetadataFetcher/Links/{MangaId}', { path: { MangaId: mangaId }, key: FetchKeys.Metadata.Manga(mangaId) });
const { data: metadataFetchers } = await useApi('/v2/MetadataFetcher', { key: FetchKeys.Metadata.Fetchers, lazy: true });
const { data: metadata } = await useApi('/v2/MetadataFetcher/Links/{MangaId}', { path: { MangaId: mangaId }, key: FetchKeys.Metadata.Manga(mangaId), lazy: true });
const setRequestedFrom = async (MangaConnectorName: string, IsRequested: boolean) => {
await useApi('/v2/Manga/{MangaId}/DownloadFrom/{MangaConnectorName}/{IsRequested}', {
@@ -76,5 +77,10 @@ const setRequestedFrom = async (MangaConnectorName: string, IsRequested: boolean
await refreshNuxtData(FetchKeys.Manga.Id(mangaId));
};
const unlinkMetadataFetcher = async (metadataFetcherName: string) => {
await useApi('/v2/MetadataFetcher/{MetadataFetcherName}/Unlink/{MangaId}', { method: 'POST', path: { MangaId: mangaId, MetadataFetcherName: metadataFetcherName } });
await refreshNuxtData(FetchKeys.Metadata.Manga(mangaId) );
}
useHead({ title: `Manga ${manga.value?.name}` });
</script>