From fdceed6067b0238ecc76b3334360e0ee894c64ca Mon Sep 17 00:00:00 2001 From: Richard R Date: Mon, 1 Jun 2026 11:05:43 -0600 Subject: [PATCH] Converge reader navigation buttons --- src/app/(app)/epub/[id]/page.tsx | 9 +++++---- src/app/(app)/html/[id]/page.tsx | 9 +++++---- src/app/(app)/pdf/[id]/page.tsx | 9 +++++---- src/components/views/EPUBViewer.tsx | 17 ++++++++--------- 4 files changed, 23 insertions(+), 21 deletions(-) diff --git a/src/app/(app)/epub/[id]/page.tsx b/src/app/(app)/epub/[id]/page.tsx index be5bf6d..e55761d 100644 --- a/src/app/(app)/epub/[id]/page.tsx +++ b/src/app/(app)/epub/[id]/page.tsx @@ -20,6 +20,7 @@ import { RateLimitBanner } from '@/components/auth/RateLimitBanner'; import { useAuthRateLimit } from '@/contexts/AuthRateLimitContext'; import { useFeatureFlag } from '@/contexts/RuntimeConfigContext'; import { useUnmountCleanupRef } from '@/hooks/useUnmountCleanupRef'; +import { buttonClass } from '@/components/ui'; import { useEpubDocument } from './useEpubDocument'; export default function EPUBPage() { @@ -173,9 +174,9 @@ export default function EPUBPage() {

{error}

- + Back to Documents @@ -190,10 +191,10 @@ export default function EPUBPage() { left={ - + Documents diff --git a/src/app/(app)/html/[id]/page.tsx b/src/app/(app)/html/[id]/page.tsx index 2238fc2..d5ec371 100644 --- a/src/app/(app)/html/[id]/page.tsx +++ b/src/app/(app)/html/[id]/page.tsx @@ -18,6 +18,7 @@ import { AudiobookExportModal } from '@/components/AudiobookExportModal'; import { useAuthRateLimit } from '@/contexts/AuthRateLimitContext'; import { useFeatureFlag } from '@/contexts/RuntimeConfigContext'; import { useUnmountCleanupRef } from '@/hooks/useUnmountCleanupRef'; +import { buttonClass } from '@/components/ui'; import type { TTSAudiobookChapter } from '@/types/tts'; import type { AudiobookGenerationSettings } from '@/types/client'; import { useHtmlDocument } from './useHtmlDocument'; @@ -160,9 +161,9 @@ export default function HTMLPage() {

{error}

- + Back to Documents @@ -177,10 +178,10 @@ export default function HTMLPage() { left={ - + Documents diff --git a/src/app/(app)/pdf/[id]/page.tsx b/src/app/(app)/pdf/[id]/page.tsx index 819e641..85d711e 100644 --- a/src/app/(app)/pdf/[id]/page.tsx +++ b/src/app/(app)/pdf/[id]/page.tsx @@ -20,6 +20,7 @@ import { RateLimitBanner } from '@/components/auth/RateLimitBanner'; import { useAuthRateLimit } from '@/contexts/AuthRateLimitContext'; import { useFeatureFlag } from '@/contexts/RuntimeConfigContext'; import { LoadingSpinner } from '@/components/Spinner'; +import { buttonClass } from '@/components/ui'; import { FORCE_REPARSE_CONFIRM_MESSAGE, FORCE_REPARSE_CONFIRM_TEXT, @@ -255,9 +256,9 @@ export default function PDFViewerPage() { - + Back to Documents @@ -384,10 +385,10 @@ export default function PDFViewerPage() { - + Documents diff --git a/src/components/views/EPUBViewer.tsx b/src/components/views/EPUBViewer.tsx index 60daa00..9c73a93 100644 --- a/src/components/views/EPUBViewer.tsx +++ b/src/components/views/EPUBViewer.tsx @@ -9,6 +9,7 @@ import { useEPUBTheme, getThemeStyles } from '@/hooks/epub/useEPUBTheme'; import { useEPUBResize } from '@/hooks/epub/useEPUBResize'; import { DotsVerticalIcon, ChevronLeftIcon, ChevronRightIcon } from '@/components/icons/Icons'; import type { EpubDocumentState } from '@/app/(app)/epub/[id]/useEpubDocument'; +import { ToolbarButton } from '@/components/ui'; const ReactReader = dynamic(() => import('react-reader').then(mod => mod.ReactReader), { ssr: false, @@ -160,36 +161,34 @@ export function EPUBViewer({ className = '', epubState }: EPUBViewerProps) {
- - +
{currDocPages !== undefined && typeof currDocPage === 'number' && ( {currDocPage} / {currDocPages} )} - +
{isTocOpen && tocRef.current && tocRef.current.length > 0 && (