Refactor workbench into task-based UI shell
This commit is contained in:
+12
-1
@@ -2,7 +2,7 @@
|
||||
|
||||
React + TypeScript + MapLibre foundation for project/area/dataset workflow.
|
||||
|
||||
The workbench is intentionally map-first: `MapWorkspace` is promoted above the dense workflow grid so GIS context stays visible before lower-detail provider, AI, QA and export panels. Long workflow panels are scroll-contained by CSS rather than stretching every grid row.
|
||||
The workbench now uses a task-based shell instead of a single long panel stack. `App.tsx` still owns shared orchestration state, but the UI is organized into Overview, Data, Map, QA/QC, AI Labs, Exports and System workspaces with a persistent top context bar and right-side dataset inspector.
|
||||
|
||||
## Scope implemented
|
||||
- API client layer (`src/services/api`)
|
||||
@@ -220,6 +220,17 @@ The workbench is intentionally map-first: `MapWorkspace` is promoted above the d
|
||||
- Offline demo workflow orchestration lives in `src/hooks/useDemoWorkflow.ts`, because it coordinates project, dataset, map, QA/QC, detection, segmentation and export state after the backend fixture seed.
|
||||
- Workbench bootstrap and reload effects live in `src/hooks/useWorkbenchBootstrap.ts`, keeping `App.tsx` focused on composing hooks into panels.
|
||||
|
||||
## Workbench shell refactor
|
||||
|
||||
- The primary UI is organized around `workspaceNavItems` in `src/App.tsx`.
|
||||
- The shell regions are:
|
||||
- `workbench-topbar`: active project, AOI, dataset and layer context.
|
||||
- `workbench-sidebar`: primary navigation between workflow workspaces.
|
||||
- `workbench-main`: one active workflow at a time.
|
||||
- `workbench-inspector`: persistent selected dataset details and raster/vector operation controls.
|
||||
- Existing API calls, hooks, MapLibre rendering and QA/AI/export flows are unchanged.
|
||||
- Stable navigation test anchors use `data-testid="workspace-nav-{workspace}"`.
|
||||
|
||||
## Raster dependency visibility
|
||||
|
||||
Raster metadata and raster ops may remain unavailable when backend raster stack is missing. In that case:
|
||||
|
||||
Reference in New Issue
Block a user