From f0f1687c79e873ccdfd5be18b0b1a3ab75bac25e Mon Sep 17 00:00:00 2001 From: Jason Rasmussen Date: Tue, 6 Jan 2026 10:41:53 -0500 Subject: [PATCH] refactor: asset view navbar onclose (#25087) --- .../components/asset-viewer/asset-viewer-nav-bar.svelte | 6 ++---- web/src/lib/components/asset-viewer/asset-viewer.svelte | 9 +++------ .../share-page/individual-shared-viewer.svelte | 2 -- 3 files changed, 5 insertions(+), 12 deletions(-) diff --git a/web/src/lib/components/asset-viewer/asset-viewer-nav-bar.svelte b/web/src/lib/components/asset-viewer/asset-viewer-nav-bar.svelte index 08957a5340..43fe6978e5 100644 --- a/web/src/lib/components/asset-viewer/asset-viewer-nav-bar.svelte +++ b/web/src/lib/components/asset-viewer/asset-viewer-nav-bar.svelte @@ -69,7 +69,6 @@ album?: AlbumResponseDto | null; person?: PersonResponseDto | null; stack?: StackResponseDto | null; - showCloseButton?: boolean; showSlideshow?: boolean; onZoomImage: () => void; onCopyImage?: () => Promise; @@ -79,7 +78,7 @@ onRunJob: (name: AssetJobName) => void; onPlaySlideshow: () => void; // export let showEditorHandler: () => void; - onClose: () => void; + onClose?: () => void; motionPhoto?: Snippet; playOriginalVideo: boolean; setPlayOriginalVideo: (value: boolean) => void; @@ -90,7 +89,6 @@ album = null, person = null, stack = null, - showCloseButton = true, showSlideshow = false, onZoomImage, onCopyImage, @@ -128,7 +126,7 @@ class="flex h-16 place-items-center justify-between bg-linear-to-b from-black/40 px-3 transition-transform duration-200" >
- {#if showCloseButton} + {#if onClose} {/if}
diff --git a/web/src/lib/components/asset-viewer/asset-viewer.svelte b/web/src/lib/components/asset-viewer/asset-viewer.svelte index 7b07d57fd1..f4ad70c85a 100644 --- a/web/src/lib/components/asset-viewer/asset-viewer.svelte +++ b/web/src/lib/components/asset-viewer/asset-viewer.svelte @@ -65,8 +65,7 @@ preAction?: PreAction | undefined; onAction?: OnAction | undefined; onUndoDelete?: OnUndoDelete | undefined; - showCloseButton?: boolean; - onClose: (asset: AssetResponseDto) => void; + onClose?: (asset: AssetResponseDto) => void; onNext: () => Promise; onPrevious: () => Promise; onRandom: () => Promise<{ id: string } | undefined>; @@ -84,7 +83,6 @@ preAction = undefined, onAction = undefined, onUndoDelete = undefined, - showCloseButton, onClose, onNext, onPrevious, @@ -203,7 +201,7 @@ }; const closeViewer = () => { - onClose(asset); + onClose?.(asset); }; const closeEditor = () => { @@ -411,7 +409,6 @@ {album} {person} {stack} - {showCloseButton} showSlideshow={true} onZoomImage={zoomToggle} onCopyImage={copyImage} @@ -420,7 +417,7 @@ {onUndoDelete} onRunJob={handleRunJob} onPlaySlideshow={() => ($slideshowState = SlideshowState.PlaySlideshow)} - onClose={closeViewer} + onClose={onClose ? () => onClose(asset) : undefined} {playOriginalVideo} {setPlayOriginalVideo} > diff --git a/web/src/lib/components/share-page/individual-shared-viewer.svelte b/web/src/lib/components/share-page/individual-shared-viewer.svelte index eb25d102fb..f548de7017 100644 --- a/web/src/lib/components/share-page/individual-shared-viewer.svelte +++ b/web/src/lib/components/share-page/individual-shared-viewer.svelte @@ -146,12 +146,10 @@ {#await import('$lib/components/asset-viewer/asset-viewer.svelte') then { default: AssetViewer }} Promise.resolve(false)} onNext={() => Promise.resolve(false)} onRandom={() => Promise.resolve(undefined)} - onClose={() => {}} /> {/await} {/await}