feat(web): downloads and organize records open the shared organize wizard (FE-4)

下载详情"整理"按内容路径(经下载器路径映射)换算成登记目录后打开向导;整理记录详情加"重新整理";
整理记录页"手动整理"转到文件管理;删除旧的 downloads/organize-dialog。

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
rootandClaude Opus 5.5 committed 2026-09-28 16:26:52 +08:00
1 parent c31df8b69a
commit 563098c77a
4 files changed
+25 -358

No files matched your search

@@ -17,13 +17,13 @@ import { DetailSection } from "~/components/console/detail-sheet.tsx";
import { JsonView } from "~/components/console/json-view.tsx";
import { KvList } from "~/components/console/kv-list.tsx";
import { StatusBadge } from "~/components/console/status-badge.tsx";
import { OrganizeWizard } from "~/components/organize-wizard/organize-wizard.tsx";
import { Button } from "~/components/ui/button.tsx";
import { relTime } from "~/components/workbench/release-fields.ts";
import { errorMessage } from "~/lib/api.ts";
import { planReasonText } from "~/lib/labels.ts";
import { formatBytes, formatDateTime } from "~/lib/utils.ts";
import { BusinessTimeline } from "./business-timeline.tsx";
import { OrganizeDialog } from "./organize-dialog.tsx";
const PLAN_PURPOSE_LABEL: Record<string, string> = { fill: "补缺", upgrade: "升级", replace_source: "换源" };
@@ -197,7 +197,16 @@ export function DownloadDetail({ task }: { task: DownloadTask }) {
{task.lastError ? <JsonView label="下载器错误" value={task.lastError} tone="destructive" defaultOpen /> : null}
{organizing ? (
<OrganizeDialog open onOpenChange={(o) => !o && setOrganizing(false)} downloadTaskId={task.id} />
<OrganizeWizard
source={{
kind: "download",
taskId: task.id,
instanceId: task.instanceId,
contentPath: task.contentPath,
name: task.name,
}}
onClose={() => setOrganizing(false)}
/>
) : null}
</div>
);