From 8dfdac3fc40543383895dd27ec208fda11c3b84d Mon Sep 17 00:00:00 2001 From: Jin Yi Date: Mon, 3 Nov 2025 07:06:55 +0900 Subject: [PATCH] [UI] Redesign media asset card layout (#6541) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary - Reorganized media asset card layout for improved UX - Moved duration/format chips to top-left (visible in default state) - Replaced multiple action buttons with zoom + more menu pattern - Repositioned output count to top-right for better visibility ## Changes 1. **Duration & format chips**: Moved from bottom-left to top-left, shown when card is not hovered and media is not playing 2. **Media actions**: Simplified to zoom button + more menu (contains delete, download options), shown on hover or during playback 3. **Output count**: Relocated from bottom-right to top-right for consistent positioning ## Test plan - [x] Verify duration/format chips appear in top-left when card is idle - [x] Confirm action buttons (zoom + more) appear on hover - [x] Check output count displays correctly in top-right - [x] Test transitions between hover/non-hover states - [x] Verify media playback doesn't interfere with UI elements 🤖 Generated with [Claude Code](https://claude.ai/code) ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-6541-UI-Redesign-media-asset-card-layout-29f6d73d365081eb8614d5dc9b2dc214) by [Unito](https://www.unito.io) --- .../sidebar/tabs/AssetsSidebarTab.vue | 2 +- .../assets/components/MediaAssetActions.vue | 77 ------------ .../assets/components/MediaAssetCard.vue | 112 ++++++++---------- .../assets/components/MediaAssetMoreMenu.vue | 13 +- src/types/buttonTypes.ts | 2 +- 5 files changed, 53 insertions(+), 153 deletions(-) delete mode 100644 src/platform/assets/components/MediaAssetActions.vue diff --git a/src/components/sidebar/tabs/AssetsSidebarTab.vue b/src/components/sidebar/tabs/AssetsSidebarTab.vue index 9b3639ff5..16fc147e5 100644 --- a/src/components/sidebar/tabs/AssetsSidebarTab.vue +++ b/src/components/sidebar/tabs/AssetsSidebarTab.vue @@ -170,7 +170,7 @@ import { formatDuration, getMediaTypeFromFilename } from '@/utils/formatUtil' import AssetsSidebarTemplate from './AssetSidebarTemplate.vue' -const activeTab = ref<'input' | 'output'>('input') +const activeTab = ref<'input' | 'output'>('output') const folderPromptId = ref(null) const folderExecutionTime = ref(undefined) const isInFolderView = computed(() => folderPromptId.value !== null) diff --git a/src/platform/assets/components/MediaAssetActions.vue b/src/platform/assets/components/MediaAssetActions.vue deleted file mode 100644 index a4c9a6b55..000000000 --- a/src/platform/assets/components/MediaAssetActions.vue +++ /dev/null @@ -1,77 +0,0 @@ - - - diff --git a/src/platform/assets/components/MediaAssetCard.vue b/src/platform/assets/components/MediaAssetCard.vue index 64f0c5b78..aa51b964c 100644 --- a/src/platform/assets/components/MediaAssetCard.vue +++ b/src/platform/assets/components/MediaAssetCard.vue @@ -44,37 +44,10 @@ /> - - - - - - - -