diff --git a/frontend/src/lib/components/reader/chapter-sidebar.svelte b/frontend/src/lib/components/reader/chapter-sidebar.svelte deleted file mode 100644 index 809c91b..0000000 --- a/frontend/src/lib/components/reader/chapter-sidebar.svelte +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - Chapters - - - {#each chapters as chapter} - - - {#snippet child({ props })} - {chapter.label} - {/snippet} - - - {/each} - - - - - - diff --git a/frontend/src/routes/(root)/(library)/book/[bookId]/read/+layout@.svelte b/frontend/src/routes/(root)/(library)/book/[bookId]/read/+layout@.svelte index 01e30c7..914b4c5 100644 --- a/frontend/src/routes/(root)/(library)/book/[bookId]/read/+layout@.svelte +++ b/frontend/src/routes/(root)/(library)/book/[bookId]/read/+layout@.svelte @@ -1,7 +1,4 @@ diff --git a/frontend/src/routes/(root)/(library)/book/[bookId]/read/pdf/[fileId]/+page.svelte b/frontend/src/routes/(root)/(library)/book/[bookId]/read/pdf/[fileId]/+page.svelte index c3c1b27..635dbc0 100644 --- a/frontend/src/routes/(root)/(library)/book/[bookId]/read/pdf/[fileId]/+page.svelte +++ b/frontend/src/routes/(root)/(library)/book/[bookId]/read/pdf/[fileId]/+page.svelte @@ -1,42 +1,99 @@ -
- -
+ + {data?.title ? `${data.title} — Chitai` : 'Reader — Chitai'} + - +
+ {#if loadError} +
+
+ +

This file wouldn't open

+

{loadError}

+
+ + + Back to book + +
+
+
+ {:else if loading} +
+ + Opening… +
+ {/if} + + +
+ diff --git a/frontend/src/routes/(root)/(library)/book/[bookId]/read/pdf/[fileId]/+page.ts b/frontend/src/routes/(root)/(library)/book/[bookId]/read/pdf/[fileId]/+page.ts new file mode 100644 index 0000000..055de42 --- /dev/null +++ b/frontend/src/routes/(root)/(library)/book/[bookId]/read/pdf/[fileId]/+page.ts @@ -0,0 +1,13 @@ +import { error } from '@sveltejs/kit'; + +export async function load({ fetch, params }) { + const response = await fetch(`/api/books/${params.bookId}`); + + if (!response.ok) { + error(response.status, 'This book could not be loaded.'); + } + + const book = await response.json(); + + return { title: book.title }; +}