The #361 layout ADR already owns 026; renumber the custom-viewBox pan/zoom ADR to 027 and update the glossary + panZoom.ts references (Elicit review). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -125,7 +125,7 @@ _Not to be confused with [parented](#parented-layout)_ — loose is the absence
|
||||
|
||||
**canonical fixture** (Stammbaum) — `frontend/src/lib/person/genealogy/__fixtures__/stammbaum.json`, a pinned `/api/network` snapshot used by `buildLayout.test.ts` for structural-property assertions against real data. Captured locally via `frontend/scripts/capture-network-fixture.mjs` with explicit credentials and a localhost backend; never invoked from CI. Sanity-gated by `validateFixture.ts` (≥ 50 nodes / ≥ 5 generations / ≥ 1 SPOUSE_OF edge / ≥ 1 multi-spouse person).
|
||||
|
||||
**pan/zoom view state** `[#692]` — the `{ x, y, z }` triple (`PanZoomState` in `frontend/src/lib/person/genealogy/panZoom.ts`) describing the Stammbaum canvas position: `x`/`y` are pan offsets applied to the SVG viewBox centre, `z` is the zoom factor (clamped 0.25–3.0). Mirrored into the shareable URL as `?cx&cy&z` and seeded server-side from those params. See [ADR-026](adr/026-stammbaum-custom-viewbox-pan-zoom.md).
|
||||
**pan/zoom view state** `[#692]` — the `{ x, y, z }` triple (`PanZoomState` in `frontend/src/lib/person/genealogy/panZoom.ts`) describing the Stammbaum canvas position: `x`/`y` are pan offsets applied to the SVG viewBox centre, `z` is the zoom factor (clamped 0.25–3.0). Mirrored into the shareable URL as `?cx&cy&z` and seeded server-side from those params. See [ADR-027](adr/027-stammbaum-custom-viewbox-pan-zoom.md).
|
||||
|
||||
**fit-to-screen** `[user-facing, #692]` — the Stammbaum control (`⤢`) and initial state that frames the whole tree in the viewport. Because the base viewBox already encloses the layout at `z=1`, fit-to-screen is simply the default view `{x:0, y:0, z:1}`.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# ADR-026 — Stammbaum pan/zoom is a custom viewBox layer, not a third-party library
|
||||
# ADR-027 — Stammbaum pan/zoom is a custom viewBox layer, not a third-party library
|
||||
|
||||
**Date:** 2026-05-29
|
||||
**Status:** Accepted
|
||||
@@ -6,7 +6,7 @@
|
||||
* of truth for the zoom bounds, the view-state shape, and every pure geometry
|
||||
* helper used by the gesture action, the URL serialiser, and the page. Keeping
|
||||
* the math here (and free of DOM access) makes it unit-testable in the node
|
||||
* project. See ADR-026 for why this is custom rather than a third-party library.
|
||||
* project. See ADR-027 for why this is custom rather than a third-party library.
|
||||
*/
|
||||
|
||||
/** Resolved zoom bounds (OQ-001). */
|
||||
|
||||
Reference in New Issue
Block a user