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 6111b81dbb..f7d4c30ec8 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 @@ -54,6 +54,7 @@ album?: AlbumResponseDto | null; person?: PersonResponseDto | null; stack?: StackResponseDto | null; + showCloseButton?: boolean; showDetailButton: boolean; showSlideshow?: boolean; onZoomImage: () => void; @@ -73,6 +74,7 @@ album = null, person = null, stack = null, + showCloseButton = true, showDetailButton, showSlideshow = false, onZoomImage, @@ -89,6 +91,7 @@ const sharedLink = getSharedLink(); let isOwner = $derived($user && asset.ownerId === $user?.id); let showDownloadButton = $derived(sharedLink ? sharedLink.allowDownload : !asset.isOffline); + // $: showEditorButton = // isOwner && // asset.type === AssetTypeEnum.Image && @@ -104,7 +107,9 @@ class="z-[1001] flex h-16 place-items-center justify-between bg-gradient-to-b from-black/40 px-3 transition-transform duration-200" >
- + {#if showCloseButton} + + {/if}
{#if !asset.isTrashed && $user} diff --git a/web/src/lib/components/asset-viewer/asset-viewer.svelte b/web/src/lib/components/asset-viewer/asset-viewer.svelte index c4db1290d6..eec55ec396 100644 --- a/web/src/lib/components/asset-viewer/asset-viewer.svelte +++ b/web/src/lib/components/asset-viewer/asset-viewer.svelte @@ -61,6 +61,7 @@ preAction?: PreAction | undefined; onAction?: OnAction | undefined; reactions?: ActivityResponseDto[]; + showCloseButton?: boolean; onClose: (dto: { asset: AssetResponseDto }) => void; onNext: () => Promise; onPrevious: () => Promise; @@ -79,6 +80,7 @@ preAction = undefined, onAction = undefined, reactions = $bindable([]), + showCloseButton, onClose, onNext, onPrevious, @@ -431,6 +433,7 @@ {album} {person} {stack} + {showCloseButton} showDetailButton={enableDetailPanel} showSlideshow={true} onZoomImage={zoomToggle} 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 b46342ad91..36ccf3f7dc 100644 --- a/web/src/lib/components/share-page/individual-shared-viewer.svelte +++ b/web/src/lib/components/share-page/individual-shared-viewer.svelte @@ -1,6 +1,7 @@
- {#if assetInteraction.selectionActive} - cancelMultiselect(assetInteraction)} - > - - {#if sharedLink?.allowDownload} - - {/if} - {#if isOwned} - - {/if} - - {:else} - goto(AppRoute.PHOTOS)} backIcon={mdiArrowLeft} showBackButton={false}> - {#snippet leading()} - - {/snippet} - - {#snippet trailing()} - {#if sharedLink?.allowUpload} - handleUploadAssets()} - icon={mdiFileImagePlusOutline} - /> - {/if} - + {#if sharedLink?.allowUpload || assets.length > 1} + {#if assetInteraction.selectionActive} + cancelMultiselect(assetInteraction)} + > + {#if sharedLink?.allowDownload} - + {/if} - {/snippet} - + {#if isOwned} + + {/if} + + {:else} + goto(AppRoute.PHOTOS)} backIcon={mdiArrowLeft} showBackButton={false}> + {#snippet leading()} + + {/snippet} + + {#snippet trailing()} + {#if sharedLink?.allowUpload} + handleUploadAssets()} + icon={mdiFileImagePlusOutline} + /> + {/if} + + {#if sharedLink?.allowDownload} + + {/if} + {/snippet} + + {/if} +
+ +
+ {:else} + Promise.resolve(false)} + onNext={() => Promise.resolve(false)} + onRandom={() => Promise.resolve(undefined)} + onClose={() => {}} + /> {/if} -
- -