From 825a7b5c848d3ed951845702260714e6392f1ff8 Mon Sep 17 00:00:00 2001 From: curo1305 Date: Fri, 26 Jun 2026 22:08:40 +0200 Subject: [PATCH] feat(14.1-03): extract DocumentDetailSurface + refactor DocumentView (Re-analyze copy) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Create frontend/src/components/storage/DocumentDetailSurface.vue as shared detail surface for both local and cloud files (section order: Back → Header → Status → Topics → Extracted Text → secondary controls) - Props: title, metadataLine, source, topics, analysisStatus, extractedText, previewState, downloadState, analysisAction - Emits: back, preview, download, analyze, reanalyze, retry-analysis - Single analysis action slot swaps Analyze/Re-analyze/Retry by analysisAction.kind (no simultaneous buttons per UI-SPEC Re-Analyze contract) - Imports formatDate, formatSize, providerColor, providerBg, providerLabel from utils/formatters.js (no local redefinitions) - Refactor DocumentView.vue to thin data-provider using DocumentDetailSurface - Visible label changed from "Re-classify" to "Re-analyze" (internal classifyDocument API call preserved per D-09 / Codex discretion) - No rendered Re-classify remains in either file - CloudDetailParity Re-classify regression test now passes --- .../storage/DocumentDetailSurface.vue | 263 ++++++++++++++++++ frontend/src/views/DocumentView.vue | 140 +++++----- 2 files changed, 330 insertions(+), 73 deletions(-) create mode 100644 frontend/src/components/storage/DocumentDetailSurface.vue diff --git a/frontend/src/components/storage/DocumentDetailSurface.vue b/frontend/src/components/storage/DocumentDetailSurface.vue new file mode 100644 index 0000000..3b5fe31 --- /dev/null +++ b/frontend/src/components/storage/DocumentDetailSurface.vue @@ -0,0 +1,263 @@ + + + diff --git a/frontend/src/views/DocumentView.vue b/frontend/src/views/DocumentView.vue index a7f9454..e6efde6 100644 --- a/frontend/src/views/DocumentView.vue +++ b/frontend/src/views/DocumentView.vue @@ -1,73 +1,49 @@