diff --git a/web/src/lib/components/asset-viewer/asset-viewer.svelte b/web/src/lib/components/asset-viewer/asset-viewer.svelte index 69af907dc7..ea84089696 100644 --- a/web/src/lib/components/asset-viewer/asset-viewer.svelte +++ b/web/src/lib/components/asset-viewer/asset-viewer.svelte @@ -9,6 +9,7 @@ import { updateNumberOfComments } from '$lib/stores/activity.store'; import { closeEditorCofirm } from '$lib/stores/asset-editor.store'; import { assetViewingStore } from '$lib/stores/asset-viewing.store'; + import type { TimelineAsset } from '$lib/stores/assets-store.svelte'; import { isShowDetail } from '$lib/stores/preferences.store'; import { SlideshowNavigation, SlideshowState, slideshowStore } from '$lib/stores/slideshow.store'; import { user } from '$lib/stores/user.store'; @@ -54,7 +55,7 @@ interface Props { asset: AssetResponseDto; - preloadAssets?: { id: string }[]; + preloadAssets?: TimelineAsset[]; showNavigation?: boolean; withStacked?: boolean; isShared?: boolean; @@ -132,7 +133,7 @@ untrack(() => { if (stack && stack?.assets.length > 1) { - preloadAssets.push(stack.assets[1]); + preloadAssets.push(toTimelineAsset(stack.assets[1])); } }); }; diff --git a/web/src/lib/components/asset-viewer/photo-viewer.svelte b/web/src/lib/components/asset-viewer/photo-viewer.svelte index 0a72190548..666f871b48 100644 --- a/web/src/lib/components/asset-viewer/photo-viewer.svelte +++ b/web/src/lib/components/asset-viewer/photo-viewer.svelte @@ -3,7 +3,7 @@ import { zoomImageAction, zoomed } from '$lib/actions/zoom-image'; import FaceEditor from '$lib/components/asset-viewer/face-editor/face-editor.svelte'; import BrokenAsset from '$lib/components/assets/broken-asset.svelte'; - import { photoViewerImgElement } from '$lib/stores/assets-store.svelte'; + import { photoViewerImgElement, type TimelineAsset } from '$lib/stores/assets-store.svelte'; import { isFaceEditMode } from '$lib/stores/face-edit.svelte'; import { boundingBoxesArray } from '$lib/stores/people.store'; import { alwaysLoadOriginalFile } from '$lib/stores/preferences.store'; @@ -18,7 +18,7 @@ import { toTimelineAsset } from '$lib/utils/timeline-util'; import { AssetMediaSize, type AssetResponseDto, type SharedLinkResponseDto } from '@immich/sdk'; import { onDestroy, onMount } from 'svelte'; - import { type SwipeCustomEvent, swipe } from 'svelte-gestures'; + import { swipe, type SwipeCustomEvent } from 'svelte-gestures'; import { t } from 'svelte-i18n'; import { fade } from 'svelte/transition'; import LoadingSpinner from '../shared-components/loading-spinner.svelte'; @@ -26,7 +26,7 @@ interface Props { asset: AssetResponseDto; - preloadAssets?: { id: string }[] | undefined; + preloadAssets?: TimelineAsset[] | undefined; element?: HTMLDivElement | undefined; haveFadeTransition?: boolean; sharedLink?: SharedLinkResponseDto | undefined; @@ -70,9 +70,9 @@ $boundingBoxesArray = []; }); - const preload = (targetSize: AssetMediaSize | 'original', preloadAssets?: { id: string }[]) => { + const preload = (targetSize: AssetMediaSize | 'original', preloadAssets?: TimelineAsset[]) => { for (const preloadAsset of preloadAssets || []) { - if (preloadAsset.isImage()) { + if (preloadAsset.isImage) { let img = new Image(); img.src = getAssetUrl(preloadAsset.id, targetSize, preloadAsset.thumbhash); } diff --git a/web/src/lib/components/memory-page/memory-viewer.svelte b/web/src/lib/components/memory-page/memory-viewer.svelte index a1731786ad..70dacafe48 100644 --- a/web/src/lib/components/memory-page/memory-viewer.svelte +++ b/web/src/lib/components/memory-page/memory-viewer.svelte @@ -24,13 +24,14 @@ NotificationType, } from '$lib/components/shared-components/notification/notification'; import { AppRoute, QueryParameter } from '$lib/constants'; + import { authManager } from '$lib/managers/auth-manager.svelte'; import { AssetInteraction } from '$lib/stores/asset-interaction.svelte'; import { assetViewingStore } from '$lib/stores/asset-viewing.store'; import { type TimelineAsset, type Viewport } from '$lib/stores/assets-store.svelte'; import { type MemoryAsset, memoryStore } from '$lib/stores/memory.store.svelte'; import { locale, videoViewerMuted, videoViewerVolume } from '$lib/stores/preferences.store'; import { preferences } from '$lib/stores/user.store'; - import { getAssetPlaybackUrl, getAssetThumbnailUrl, getKey, handlePromiseError, memoryLaneTitle } from '$lib/utils'; + import { getAssetPlaybackUrl, getAssetThumbnailUrl, handlePromiseError, memoryLaneTitle } from '$lib/utils'; import { cancelMultiselect } from '$lib/utils/asset-utils'; import { getAltText } from '$lib/utils/thumbnail-util'; import { fromLocalDateTime, toTimelineAsset } from '$lib/utils/timeline-util'; @@ -68,7 +69,7 @@ let paused = $state(false); let current = $state(undefined); let currentMemoryAssetFull = $derived.by(async () => - current?.asset ? await getAssetInfo({ id: current?.asset.id, key: getKey() }) : undefined, + current?.asset ? await getAssetInfo({ id: current?.asset.id, key: authManager.key }) : undefined, ); let currentTimelineAssets = $derived(current?.memory.assets.map((a) => toTimelineAsset(a)) || []); diff --git a/web/src/lib/components/photos-page/actions/download-action.svelte b/web/src/lib/components/photos-page/actions/download-action.svelte index b4aa8b17c7..df079e45b2 100644 --- a/web/src/lib/components/photos-page/actions/download-action.svelte +++ b/web/src/lib/components/photos-page/actions/download-action.svelte @@ -1,7 +1,8 @@