From 4b93e08b28cd6210d19434ed92bfa70661f61464 Mon Sep 17 00:00:00 2001 From: Nabil-Fareed Alikhan Date: Thu, 6 Aug 2026 17:38:40 +0100 Subject: [PATCH] feat: improve viewer and ring editing workflow --- CHANGELOG.md | 4 +- components/AnnotationEditor.tsx | 8 +- components/BrowserSessionBar.tsx | 6 +- components/BugReportModal.tsx | 19 ++- components/ProductNav.tsx | 2 + components/ReferenceInput.tsx | 2 +- components/ResultViewer.tsx | 17 +- components/RingConfiguration.tsx | 62 +++++-- components/RingsPanel.tsx | 224 +++++++++++++++++++++++-- docs/getting-started.md | 8 +- docs/guides/custom-annotations.md | 2 +- docs/guides/whole-genome-comparison.md | 2 +- docs/reference/file-formats.md | 2 +- docs/reference/sessions-and-sharing.md | 12 +- lib/controller.ts | 27 +-- lib/resultPreviewStore.ts | 72 -------- src/App.tsx | 13 +- src/globals.css | 135 ++++++++++++++- src/pages/Home.tsx | 27 +-- src/pages/Preview.tsx | 107 ++++++------ tests/e2e/brigx.spec.ts | 133 ++++++++++++--- 21 files changed, 614 insertions(+), 270 deletions(-) delete mode 100644 lib/resultPreviewStore.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index fb80dce..f65eb9a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,7 +8,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), ### Added - Bakta `.gbff` and GFF3 feature import support. -- Reference GenBank CDS annotations in both the canvas preview and SVG export. +- A desktop floating Ring Configuration panel with drag, resize, minimise, dock, close and session-persisted dimensions. - A plot centre control and correctly scaled legend dragging. - Direct HEX colour entry for comparison rings. - Explanatory average-identity tooltip in the statistics panel. @@ -17,6 +17,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), - Regression coverage for GFF3, file access, editable SVG output, and annotation editing/paste/deletion. ### Changed +- Replaced the temporary editor preview action with a top-level read-only **Viewer** at `/viewer` for public URLs and local result/session files, including the result statistics and saved BLAST-output downloads. - Settings and output panels now remain usable together on laptop screens. - Annotation editing now preserves manual edits and spreadsheet paste, with reliable row deletion and reset. - SVG and PNG exports preserve the preview zoom, pan, and dragged legend positions. @@ -25,6 +26,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), - Production DOMPurify is pinned to the patched release. ### Removed +- Automatic display of CDS annotations embedded in GenBank and GBFF reference files; annotations are now added explicitly as custom ring overlays. - `@biowasm/aioli` dependency — unused since BRIGx ships its own custom WASM build. ### Moved diff --git a/components/AnnotationEditor.tsx b/components/AnnotationEditor.tsx index bc88d87..260a537 100644 --- a/components/AnnotationEditor.tsx +++ b/components/AnnotationEditor.tsx @@ -231,7 +231,7 @@ export default function AnnotationEditor({ return (
)} -
- +
+
- +
Editable annotations. Use the checkboxes to select rows for deletion.
void; onLoad: (event: React.ChangeEvent) => void; - onPreview: () => void; - previewDisabled: boolean; onReportBug: () => void; } -export default function BrowserSessionBar({ onSave, onLoad, onPreview, previewDisabled, onReportBug }: BrowserSessionBarProps) { +export default function BrowserSessionBar({ onSave, onLoad, onReportBug }: BrowserSessionBarProps) { return (