fix(web): update stack state in timeline (#17021)

* fix(web): update stack state in timeline

* js docs

* fix: handle state update from unstack action from gallery viewer

* use navigate in View Stack notification

---------

Co-authored-by: Snowknight26 <Snowknight26@users.noreply.github.com>
This commit is contained in:
Alex
2025-03-21 12:42:36 -05:00
committed by GitHub
parent b00da18e84
commit b5d5c40c69
5 changed files with 78 additions and 22 deletions
@@ -25,7 +25,12 @@
import { AssetStore } from '$lib/stores/assets-store.svelte';
import { isFaceEditMode } from '$lib/stores/face-edit.svelte';
import { preferences, user } from '$lib/stores/user.store';
import type { OnLink, OnUnlink } from '$lib/utils/actions';
import {
updateStackedAssetInTimeline,
updateUnstackedAssetInTimeline,
type OnLink,
type OnUnlink,
} from '$lib/utils/actions';
import { openFileUploadDialog } from '$lib/utils/file-uploader';
import { AssetTypeEnum } from '@immich/sdk';
import { mdiDotsVertical, mdiPlus } from '@mdi/js';
@@ -100,8 +105,8 @@
{#if assetInteraction.selectedAssets.length > 1 || isAssetStackSelected}
<StackAction
unstack={isAssetStackSelected}
onStack={(assetIds) => assetStore.removeAssets(assetIds)}
onUnstack={(assets) => assetStore.addAssets(assets)}
onStack={(result) => updateStackedAssetInTimeline(assetStore, result)}
onUnstack={(assets) => updateUnstackedAssetInTimeline(assetStore, assets)}
/>
{/if}
{#if isLinkActionAvailable}