From 43c5c12fb9a6f7aa22247f85fa26fa40057e814a Mon Sep 17 00:00:00 2001 From: Masahiko AMANO Date: Wed, 17 Jun 2026 17:19:02 +0300 Subject: [PATCH] feat(frontend): add selected pool files to another pool The pool view's selection bar could only remove files from the current pool. Add an "Add to pool" action beside it that opens the existing file picker with the selected files (in selection order), so a multi-select can be copied into another pool in one step. On success the picker closes and the selection clears. Co-Authored-By: Claude Opus 4.8 --- frontend/src/routes/pools/[id]/+page.svelte | 25 +++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/frontend/src/routes/pools/[id]/+page.svelte b/frontend/src/routes/pools/[id]/+page.svelte index 0c10bd9..b6f4d4d 100644 --- a/frontend/src/routes/pools/[id]/+page.svelte +++ b/frontend/src/routes/pools/[id]/+page.svelte @@ -6,6 +6,7 @@ import FileCard from '$lib/components/file/FileCard.svelte'; import FileViewer from '$lib/components/file/FileViewer.svelte'; import FilterBar from '$lib/components/file/FilterBar.svelte'; + import PoolPicker from '$lib/components/file/PoolPicker.svelte'; import InfiniteScroll from '$lib/components/common/InfiniteScroll.svelte'; import ConfirmDialog from '$lib/components/common/ConfirmDialog.svelte'; import { parseDslFilter } from '$lib/utils/dsl'; @@ -48,6 +49,7 @@ let selectionMode = $derived(selectedIds.size > 0); let lastSelectedIdx = $state(null); let confirmRemove = $state(false); + let poolPickerOpen = $state(false); // ---- Add files mode ---- let addMode = $state(false); @@ -705,12 +707,28 @@
+ {/if} + +{#if poolPickerOpen} + { + selectedIds = new Set(); + lastSelectedIdx = null; + }} + onClose={() => (poolPickerOpen = false)} + /> +{/if} + {#if confirmDelete}