diff --git a/src/components/queue/QueueProgressOverlay.vue b/src/components/queue/QueueProgressOverlay.vue index 6267095939..1024dc0241 100644 --- a/src/components/queue/QueueProgressOverlay.vue +++ b/src/components/queue/QueueProgressOverlay.vue @@ -264,6 +264,7 @@ const focusAssetInSidebar = async (item: JobListItem) => { throw new Error('Asset not found in media assets panel') } assetSelectionStore.setSelection([assetId]) + assetSelectionStore.setLastSelectedAssetId(assetId) } const inspectJobAsset = wrapWithErrorHandlingAsync( diff --git a/src/components/sidebar/tabs/AssetsSidebarGridView.vue b/src/components/sidebar/tabs/AssetsSidebarGridView.vue index 6e015fe665..030f547c8c 100644 --- a/src/components/sidebar/tabs/AssetsSidebarGridView.vue +++ b/src/components/sidebar/tabs/AssetsSidebarGridView.vue @@ -2,7 +2,7 @@
@@ -70,12 +70,14 @@ import { useSettingStore } from '@/platform/settings/settingStore' const { assets, isSelected, + isInFolderView = false, assetType = 'output', showOutputCount, getOutputCount } = defineProps<{ assets: AssetItem[] isSelected: (assetId: string) => boolean + isInFolderView?: boolean assetType?: 'input' | 'output' showOutputCount: (asset: AssetItem) => boolean getOutputCount: (asset: AssetItem) => number diff --git a/src/components/sidebar/tabs/AssetsSidebarListView.stories.ts b/src/components/sidebar/tabs/AssetsSidebarListView.stories.ts index 2c50cab17c..f3c64e962a 100644 --- a/src/components/sidebar/tabs/AssetsSidebarListView.stories.ts +++ b/src/components/sidebar/tabs/AssetsSidebarListView.stories.ts @@ -1,7 +1,9 @@ import type { Meta, StoryObj } from '@storybook/vue3-vite' +import { toRef } from 'vue' import type { JobAction } from '@/composables/queue/useJobActions' import type { JobListItem } from '@/composables/queue/useJobList' +import { useOutputStacks } from '@/platform/assets/composables/useOutputStacks' import type { AssetItem } from '@/platform/assets/schemas/assetSchema' import { setMockJobActions } from '@/storybook/mocks/useJobActions' import { setMockJobItems } from '@/storybook/mocks/useJobList' @@ -138,16 +140,33 @@ function renderAssetsSidebarListView(args: StoryArgs) { setup() { setMockJobItems(args.jobs) setMockJobActions(args.actionsByJobId ?? {}) + const { assetItems, selectableAssets, isStackExpanded, toggleStack } = + useOutputStacks({ + assets: toRef(args, 'assets') + }) const selectedIds = new Set(args.selectedAssetIds ?? []) function isSelected(assetId: string) { return selectedIds.has(assetId) } - return { args, isSelected } + return { + args, + assetItems, + selectableAssets, + isSelected, + isStackExpanded, + toggleStack + } }, template: `
- +
` } diff --git a/src/components/sidebar/tabs/AssetsSidebarListView.vue b/src/components/sidebar/tabs/AssetsSidebarListView.vue index 76196e08d3..209a744f2c 100644 --- a/src/components/sidebar/tabs/AssetsSidebarListView.vue +++ b/src/components/sidebar/tabs/AssetsSidebarListView.vue @@ -40,7 +40,7 @@