No description
Closes #18. Navigating away from a PO create/edit screen with unsaved changes could silently lose in-progress work. The forms now track a dirty flag and guard both navigation paths: - Hard navigations (refresh / tab close / external link) → the browser's native "Leave site?" prompt via beforeunload. - In-app navigations (sidebar / header / any internal link) → a capture-phase click interceptor opens a modal offering Save as draft / Discard changes / Stay on page. Save as draft runs the form's existing draft save (which redirects to the PO); Discard continues to the intended destination. The guard (components/po/unsaved-changes-guard.tsx) is reusable and wired into both new-po-form and edit-po-form. dirty is cleared before a successful submit so saving never trips the prompt. SPA back-button (popstate) is left to beforeunload only; the manager inline-edit panel is out of scope (saves in place, no draft concept). Tests: 7 new unit cases for the guard (intercept-when-dirty, no-op-when-clean, external links pass through, Stay/Discard/Save actions, beforeunload arming). Unit suite 296 green; tsc clean. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .claude | ||
| .forgejo | ||
| App | ||
| automation | ||
| Docs | ||
| EpfoService | ||
| GstService | ||
| PdfService | ||
| Progress | ||
| static | ||
| Wireframe | ||
| .gitattributes | ||
| .gitignore | ||
| CHANGELOG.md | ||
| ecosystem.config.js | ||
| generate_po.py | ||
| inspect_po.py | ||
| test-report-2026-05-17.md | ||
Docs — retired (moved to the wiki)
The design, architecture, and test documents that used to live here have been migrated to the project wiki and removed from the repo. The wiki is the living reference going forward.
Wiki: https://git.pelagiamarine.com/shad0w/pelagia-portal/wiki
(working clone: pelagia-portal.wiki/ alongside this repo).
Where each retired doc went
| Retired file | Now in the wiki |
|---|---|
01-design-document.md |
System/Architecture, Product/Workflows (user stories), Product/Design-System, Overview/Open-Questions |
02-architecture.md |
System/Architecture (+ System/Data-Model, Ops/Deployment-and-Operations, Build-and-Run/Environment-Variables) |
03-open-questions.md |
Overview/Open-Questions |
DESIGN.md |
Product/Workflows, Product/Pages-and-Navigation, Product/Design-System |
TEST_PLAN.md |
Quality/Test-Plan |
e2e-test-framework.md |
Quality/E2E-Test-Framework |
e2e-test-plan.md |
Quality/E2E-Test-Plan |
PLAYRIGHT_TEST_DESIGN.md |
Quality/Playwright-Test-Design |
The wiki's on-disk folder layout (Overview / Build-and-Run / System / Product / Quality / Ops) mirrors its sidebar hierarchy.
Keep current behaviour documented in the wiki, not here. Other authoritative in-repo sources remain:
App/CLAUDE.md,App/README.md,automation/README.md, andCHANGELOG.md.