@issuegraph/viewer 0.3.0 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/clusters.d.ts +116 -0
- package/dist/clusters.d.ts.map +1 -1
- package/dist/clusters.js +85 -2
- package/dist/clusters.js.map +1 -1
- package/dist/document.d.ts +228 -5
- package/dist/document.d.ts.map +1 -1
- package/dist/document.js +204 -3
- package/dist/document.js.map +1 -1
- package/dist/element.d.ts +11 -0
- package/dist/element.d.ts.map +1 -1
- package/dist/element.js.map +1 -1
- package/dist/index.d.ts +17 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -4
- package/dist/index.js.map +1 -1
- package/dist/layout.d.ts +79 -50
- package/dist/layout.d.ts.map +1 -1
- package/dist/layout.js +371 -170
- package/dist/layout.js.map +1 -1
- package/dist/marks.d.ts +105 -0
- package/dist/marks.d.ts.map +1 -0
- package/dist/marks.js +430 -0
- package/dist/marks.js.map +1 -0
- package/dist/mount.d.ts +13 -0
- package/dist/mount.d.ts.map +1 -1
- package/dist/mount.js +69 -1
- package/dist/mount.js.map +1 -1
- package/dist/navigation.d.ts +14 -0
- package/dist/navigation.d.ts.map +1 -1
- package/dist/navigation.js +51 -0
- package/dist/navigation.js.map +1 -1
- package/dist/parts.d.ts +308 -2
- package/dist/parts.d.ts.map +1 -1
- package/dist/parts.js +845 -65
- package/dist/parts.js.map +1 -1
- package/dist/projections/graph.d.ts +25 -0
- package/dist/projections/graph.d.ts.map +1 -1
- package/dist/projections/graph.js +476 -335
- package/dist/projections/graph.js.map +1 -1
- package/dist/projections/linear.d.ts +135 -0
- package/dist/projections/linear.d.ts.map +1 -1
- package/dist/projections/linear.js +266 -31
- package/dist/projections/linear.js.map +1 -1
- package/dist/projections/tree.d.ts.map +1 -1
- package/dist/projections/tree.js +29 -3
- package/dist/projections/tree.js.map +1 -1
- package/dist/styles.d.ts +10 -1
- package/dist/styles.d.ts.map +1 -1
- package/dist/styles.js +1275 -132
- package/dist/styles.js.map +1 -1
- package/dist/theme.d.ts +5 -6
- package/dist/theme.d.ts.map +1 -1
- package/dist/theme.js +119 -7
- package/dist/theme.js.map +1 -1
- package/dist/vocabulary.d.ts +39 -0
- package/dist/vocabulary.d.ts.map +1 -1
- package/dist/vocabulary.js +27 -0
- package/dist/vocabulary.js.map +1 -1
- package/package.json +2 -2
package/dist/layout.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.js","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"layout.js","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"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"}
|
package/dist/marks.d.ts
ADDED
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Marks a host asks to have drawn on an edge, in a vocabulary of POSITIONS.
|
|
3
|
+
*
|
|
4
|
+
* ## Why this lives in layer 1 at all
|
|
5
|
+
*
|
|
6
|
+
* An editor draws mutation states as overlays on these edges, and most of that
|
|
7
|
+
* needs no help: a halo is the path stroked wider, a ghost is the path dashed
|
|
8
|
+
* differently. Neither moves, so a layer that never interprets the geometry can
|
|
9
|
+
* clone a solved path and be right.
|
|
10
|
+
*
|
|
11
|
+
* The marks are the half that cannot work that way. A chip sits ON a node, a
|
|
12
|
+
* cross sits BESIDE a terminal, a reason sits BESIDE the line, and a conflict's
|
|
13
|
+
* second version sits on the line's PERPENDICULAR. Each needs a position that
|
|
14
|
+
* is not the path's own, and the only layer that has one is the layer that
|
|
15
|
+
* computed the layout.
|
|
16
|
+
*
|
|
17
|
+
* The kit says the same thing in the one crossing it declares: the together
|
|
18
|
+
* connector must live here "because a click target can't be added from outside
|
|
19
|
+
* without the viewer knowing where members are". The remedy there is to move the
|
|
20
|
+
* DRAWING in, not to publish the coordinates out — and the same answer applies
|
|
21
|
+
* for the same reason.
|
|
22
|
+
*
|
|
23
|
+
* ## What keeps this from making the viewer edit-aware
|
|
24
|
+
*
|
|
25
|
+
* The vocabulary is positional and nothing else. {@link EdgeMarkPlacement} says
|
|
26
|
+
* `terminal`, never `failed`; `companion`, never `conflict`. The host maps its
|
|
27
|
+
* own states onto these four, and the mapping never travels — so this module
|
|
28
|
+
* cannot name a mutation state, and a reader of it cannot learn that the
|
|
29
|
+
* package has an editor.
|
|
30
|
+
*
|
|
31
|
+
* That is the property to protect if this file grows. A placement named for
|
|
32
|
+
* what it MEANS rather than where it GOES is the point at which layer 1 has
|
|
33
|
+
* quietly learned layer 2's vocabulary.
|
|
34
|
+
*
|
|
35
|
+
* ## Content is opaque, and the tone is a token NAME
|
|
36
|
+
*
|
|
37
|
+
* A mark carries a glyph the host supplies verbatim, because "✕" and "writing…"
|
|
38
|
+
* belong to whoever knows what they mean. Colour travels as the NAME of a theme
|
|
39
|
+
* custom property rather than a value, which is the contract the edge vocabulary
|
|
40
|
+
* already uses for its own hues: a host that rethemes moves both at once, and
|
|
41
|
+
* nothing here holds a colour.
|
|
42
|
+
*
|
|
43
|
+
* ## The offset is derived, never chosen
|
|
44
|
+
*
|
|
45
|
+
* Every distance below is read from the theme, for the reason the layout module
|
|
46
|
+
* states about its own geometry: a literal stays put while a host scales the
|
|
47
|
+
* type around it. The companion in particular separates by the same stroke
|
|
48
|
+
* width the doubled edge treatment already uses, so the two versions read as a
|
|
49
|
+
* pair at any scale — the property that treatment's own comment exists to keep.
|
|
50
|
+
*/
|
|
51
|
+
import { type ElementSpec } from './element.ts';
|
|
52
|
+
import type { EdgeGeometry } from './layout.ts';
|
|
53
|
+
import type { Theme } from './theme.ts';
|
|
54
|
+
/**
|
|
55
|
+
* Where a mark goes. POSITIONS, not meanings — see the module note.
|
|
56
|
+
*
|
|
57
|
+
* - `both-ends` — one mark at each endpoint, on the boxes the edge joins.
|
|
58
|
+
* - `terminal` — beside the arriving end, stepped clear of the terminal marker.
|
|
59
|
+
* - `beside` — off the curve's midpoint, on its perpendicular.
|
|
60
|
+
* - `companion` — the whole line again, offset onto its perpendicular.
|
|
61
|
+
*/
|
|
62
|
+
export type EdgeMarkPlacement = 'both-ends' | 'terminal' | 'beside' | 'companion';
|
|
63
|
+
export interface EdgeMark {
|
|
64
|
+
readonly placement: EdgeMarkPlacement;
|
|
65
|
+
/** Drawn verbatim. Absent for a placement whose whole form is the line. */
|
|
66
|
+
readonly glyph?: string | null;
|
|
67
|
+
/** A theme custom-property NAME, e.g. `--ig-state-failed`. Never a value. */
|
|
68
|
+
readonly tone?: string | null;
|
|
69
|
+
}
|
|
70
|
+
/** The class every mark carries, so a host can find them and a sheet can style them. */
|
|
71
|
+
export declare const EDGE_MARK_CLASS = "ig-edge-mark";
|
|
72
|
+
/** The attribute a mark publishes its placement on. */
|
|
73
|
+
export declare const MARK_PLACEMENT_ATTRIBUTE = "data-ig-mark";
|
|
74
|
+
/**
|
|
75
|
+
* How the edge this mark decorates is DRAWN.
|
|
76
|
+
*
|
|
77
|
+
* Passed in rather than re-derived, because the relationship vocabulary belongs
|
|
78
|
+
* to `vocabulary.ts` and a second reading of it here is the drifting copy this
|
|
79
|
+
* package family objects to everywhere else.
|
|
80
|
+
*/
|
|
81
|
+
export interface EdgeDrawing {
|
|
82
|
+
/** Whether the kind draws its line twice. */
|
|
83
|
+
readonly doubled: boolean;
|
|
84
|
+
/** The kind's own dash array, or `null` for a solid line. */
|
|
85
|
+
readonly dashArray: string | null;
|
|
86
|
+
/**
|
|
87
|
+
* The kind's hue token, used by a mark that declares none of its own.
|
|
88
|
+
*
|
|
89
|
+
* A MARK CANNOT INHERIT IT, which is the whole reason this is here. Marks are
|
|
90
|
+
* siblings of the edge rather than its descendants, and the hue reaches the
|
|
91
|
+
* line through `.ig-edge[data-edge=…]` — a selector no mark matches — so a
|
|
92
|
+
* mark left on `currentColor` resolves to the viewer's body text and not to
|
|
93
|
+
* the relationship at all. `overlay/render.ts` states the hue inline on its
|
|
94
|
+
* dashed clone for exactly this reason; the same trap is one element over.
|
|
95
|
+
*/
|
|
96
|
+
readonly hueToken: string;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Draw the marks a host asked for on one edge.
|
|
100
|
+
*
|
|
101
|
+
* Takes the geometry the projection already solved, so this adds no layout pass
|
|
102
|
+
* and cannot disagree with the line it decorates.
|
|
103
|
+
*/
|
|
104
|
+
export declare function edgeMarkSpecs(marks: readonly EdgeMark[], geometry: EdgeGeometry, theme: Theme, identity: string, drawing: EdgeDrawing): readonly ElementSpec[];
|
|
105
|
+
//# sourceMappingURL=marks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marks.d.ts","sourceRoot":"","sources":["../src/marks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAEH,OAAO,EAAE,KAAK,WAAW,EAAO,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAS,MAAM,aAAa,CAAC;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC;;;;;;;GAOG;AACH,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,CAAC;AAElF,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAuBD,wFAAwF;AACxF,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAE9C,uDAAuD;AACvD,eAAO,MAAM,wBAAwB,iBAAiB,CAAC;AAkMvD;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,6DAA6D;IAC7D,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC;;;;;;;;;OASG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAsED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GACnB,SAAS,WAAW,EAAE,CAyHxB"}
|
package/dist/marks.js
ADDED
|
@@ -0,0 +1,430 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Marks a host asks to have drawn on an edge, in a vocabulary of POSITIONS.
|
|
3
|
+
*
|
|
4
|
+
* ## Why this lives in layer 1 at all
|
|
5
|
+
*
|
|
6
|
+
* An editor draws mutation states as overlays on these edges, and most of that
|
|
7
|
+
* needs no help: a halo is the path stroked wider, a ghost is the path dashed
|
|
8
|
+
* differently. Neither moves, so a layer that never interprets the geometry can
|
|
9
|
+
* clone a solved path and be right.
|
|
10
|
+
*
|
|
11
|
+
* The marks are the half that cannot work that way. A chip sits ON a node, a
|
|
12
|
+
* cross sits BESIDE a terminal, a reason sits BESIDE the line, and a conflict's
|
|
13
|
+
* second version sits on the line's PERPENDICULAR. Each needs a position that
|
|
14
|
+
* is not the path's own, and the only layer that has one is the layer that
|
|
15
|
+
* computed the layout.
|
|
16
|
+
*
|
|
17
|
+
* The kit says the same thing in the one crossing it declares: the together
|
|
18
|
+
* connector must live here "because a click target can't be added from outside
|
|
19
|
+
* without the viewer knowing where members are". The remedy there is to move the
|
|
20
|
+
* DRAWING in, not to publish the coordinates out — and the same answer applies
|
|
21
|
+
* for the same reason.
|
|
22
|
+
*
|
|
23
|
+
* ## What keeps this from making the viewer edit-aware
|
|
24
|
+
*
|
|
25
|
+
* The vocabulary is positional and nothing else. {@link EdgeMarkPlacement} says
|
|
26
|
+
* `terminal`, never `failed`; `companion`, never `conflict`. The host maps its
|
|
27
|
+
* own states onto these four, and the mapping never travels — so this module
|
|
28
|
+
* cannot name a mutation state, and a reader of it cannot learn that the
|
|
29
|
+
* package has an editor.
|
|
30
|
+
*
|
|
31
|
+
* That is the property to protect if this file grows. A placement named for
|
|
32
|
+
* what it MEANS rather than where it GOES is the point at which layer 1 has
|
|
33
|
+
* quietly learned layer 2's vocabulary.
|
|
34
|
+
*
|
|
35
|
+
* ## Content is opaque, and the tone is a token NAME
|
|
36
|
+
*
|
|
37
|
+
* A mark carries a glyph the host supplies verbatim, because "✕" and "writing…"
|
|
38
|
+
* belong to whoever knows what they mean. Colour travels as the NAME of a theme
|
|
39
|
+
* custom property rather than a value, which is the contract the edge vocabulary
|
|
40
|
+
* already uses for its own hues: a host that rethemes moves both at once, and
|
|
41
|
+
* nothing here holds a colour.
|
|
42
|
+
*
|
|
43
|
+
* ## The offset is derived, never chosen
|
|
44
|
+
*
|
|
45
|
+
* Every distance below is read from the theme, for the reason the layout module
|
|
46
|
+
* states about its own geometry: a literal stays put while a host scales the
|
|
47
|
+
* type around it. The companion in particular separates by the same stroke
|
|
48
|
+
* width the doubled edge treatment already uses, so the two versions read as a
|
|
49
|
+
* pair at any scale — the property that treatment's own comment exists to keep.
|
|
50
|
+
*/
|
|
51
|
+
import { svg } from "./element.js";
|
|
52
|
+
/*
|
|
53
|
+
* THERE IS NO `label`, AND ITS ABSENCE IS DELIBERATE.
|
|
54
|
+
*
|
|
55
|
+
* An earlier draft took one and rendered `role="img"` with an `aria-label` when a
|
|
56
|
+
* host supplied it. That could never have worked: the canvas is an
|
|
57
|
+
* `<svg aria-hidden="true">`, and `aria-hidden` excludes the whole SUBTREE, so no
|
|
58
|
+
* descendant of it can carry an accessible name however it is marked up.
|
|
59
|
+
*
|
|
60
|
+
* It was a field that lied — a published option whose contract the renderer
|
|
61
|
+
* cannot honour — which is worse than not having one, because a host wiring it
|
|
62
|
+
* gets silence rather than an error. This package's own rule is that a control
|
|
63
|
+
* which cannot complete the act it advertises is not drawn; the same applies to
|
|
64
|
+
* an option that cannot deliver what it promises.
|
|
65
|
+
*
|
|
66
|
+
* Marks need no accessible name of their own. Every state is announced once, on
|
|
67
|
+
* the edge's own `aria-label`, and the rail beside the canvas carries every node,
|
|
68
|
+
* name and tab stop. A second, flattened description of the same fact is what the
|
|
69
|
+
* canvas is hidden to avoid. If a host ever does need one, it belongs in the
|
|
70
|
+
* RAIL, which is where accessible content already lives.
|
|
71
|
+
*/
|
|
72
|
+
/** The class every mark carries, so a host can find them and a sheet can style them. */
|
|
73
|
+
export const EDGE_MARK_CLASS = 'ig-edge-mark';
|
|
74
|
+
/** The attribute a mark publishes its placement on. */
|
|
75
|
+
export const MARK_PLACEMENT_ATTRIBUTE = 'data-ig-mark';
|
|
76
|
+
/**
|
|
77
|
+
* The unit perpendicular to the edge, at its midpoint.
|
|
78
|
+
*
|
|
79
|
+
* THE TANGENT OF A QUADRATIC AT ITS MIDPOINT IS ITS CHORD, exactly: differentiate
|
|
80
|
+
* `(1-t)²P₀ + 2(1-t)tC + t²P₂` at `t = ½` and the control point cancels, leaving
|
|
81
|
+
* `P₂ - P₀`. So "beside the line" is decided by the two endpoints alone, and the
|
|
82
|
+
* channel the curve bows through cannot tilt it.
|
|
83
|
+
*
|
|
84
|
+
* That is what makes this safe on the case that has bitten before. Two boxes in
|
|
85
|
+
* one column share an x, so the chord is VERTICAL — and a companion offset by a
|
|
86
|
+
* fixed vertical step would slide ALONG such a line rather than beside it,
|
|
87
|
+
* drawing a second version on top of the first. Here a vertical chord yields a
|
|
88
|
+
* horizontal normal, by construction rather than by a special case.
|
|
89
|
+
*
|
|
90
|
+
* A zero-length chord cannot happen — `edgeGeometry` answers `null` when both
|
|
91
|
+
* ends resolve to one box — but it is guarded anyway, because the alternative to
|
|
92
|
+
* a guard is a `NaN` that reaches the markup as a silently undrawn mark.
|
|
93
|
+
*/
|
|
94
|
+
function normalAt(start, end) {
|
|
95
|
+
const dx = end.x - start.x;
|
|
96
|
+
const dy = end.y - start.y;
|
|
97
|
+
const length = Math.hypot(dx, dy);
|
|
98
|
+
if (length === 0)
|
|
99
|
+
return { x: 0, y: 0 };
|
|
100
|
+
return { x: -dy / length, y: dx / length };
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* The edge's normal, turned to face the CHANNEL rather than the cards.
|
|
104
|
+
*
|
|
105
|
+
* A normal has two directions and `normalAt` picks one from the order the
|
|
106
|
+
* endpoints happen to be in — which is a fact about traversal, not about the
|
|
107
|
+
* drawing. Measured: for an upward `blocked-by` between two spine cards it
|
|
108
|
+
* points at +x, and both endpoints sit on the cards' LEFT bounds, so every mark
|
|
109
|
+
* offset that way landed INSIDE the card — where the rail, an opaque HTML layer
|
|
110
|
+
* painted after the canvas, hides it completely. Marks that render and cannot be
|
|
111
|
+
* seen, which is worse than marks that do not render.
|
|
112
|
+
*
|
|
113
|
+
* The control point is the answer, and it needs no new input: the layout routes
|
|
114
|
+
* every arc through a free vertical channel, so the side the curve bows toward
|
|
115
|
+
* is by construction the side with no card on it. Facing the normal that way
|
|
116
|
+
* puts every mark in the space the line already occupies.
|
|
117
|
+
*
|
|
118
|
+
* It also holds where the naive sign happened to be right, so there is one rule
|
|
119
|
+
* rather than a rule and an exception.
|
|
120
|
+
*/
|
|
121
|
+
function outwardNormal(geometry) {
|
|
122
|
+
const normal = normalAt(geometry.start, geometry.end);
|
|
123
|
+
const chordMid = {
|
|
124
|
+
x: (geometry.start.x + geometry.end.x) / 2,
|
|
125
|
+
y: (geometry.start.y + geometry.end.y) / 2,
|
|
126
|
+
};
|
|
127
|
+
const toChannel = {
|
|
128
|
+
x: geometry.control.x - chordMid.x,
|
|
129
|
+
y: geometry.control.y - chordMid.y,
|
|
130
|
+
};
|
|
131
|
+
const facing = normal.x * toChannel.x + normal.y * toChannel.y;
|
|
132
|
+
return facing < 0 ? { x: -normal.x, y: -normal.y } : normal;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Which way is away from the CARD at one endpoint, as a unit x.
|
|
136
|
+
*
|
|
137
|
+
* THIS IS THE FACT EVERY EARLIER ATTEMPT WAS APPROXIMATING, and it is the reason
|
|
138
|
+
* three of them were wrong. A mark beside an endpoint has to clear that
|
|
139
|
+
* endpoint's own card, and nothing about the LINE says where that card is: the
|
|
140
|
+
* chord's direction, the arriving tangent and the routing channel each answer a
|
|
141
|
+
* different question, and each of them put marks inside a card for some edges.
|
|
142
|
+
*
|
|
143
|
+
* `edgeGeometry` knows, because it resolved the box — an anchor on a box's left
|
|
144
|
+
* bound is cleared by moving further left, and a right one by moving right — and
|
|
145
|
+
* it publishes the side per endpoint precisely because THE TWO CAN DIFFER. An
|
|
146
|
+
* arc between a gutter card and a spine card leaves one box's right face and
|
|
147
|
+
* arrives on the other's left, so one shared direction clears one end and drives
|
|
148
|
+
* the other mark straight into its card.
|
|
149
|
+
*
|
|
150
|
+
* The y component is zero: cards are laid out in columns and every anchor sits
|
|
151
|
+
* on a vertical bound, so "away" is horizontal by construction.
|
|
152
|
+
*/
|
|
153
|
+
function awayFromCard(side) {
|
|
154
|
+
return { x: side === 'left' ? -1 : 1, y: 0 };
|
|
155
|
+
}
|
|
156
|
+
/** The point on the curve at `t = ½`. The control point is a quarter of it. */
|
|
157
|
+
function midpointOf(geometry) {
|
|
158
|
+
const { start, control, end } = geometry;
|
|
159
|
+
return {
|
|
160
|
+
x: 0.25 * start.x + 0.5 * control.x + 0.25 * end.x,
|
|
161
|
+
y: 0.25 * start.y + 0.5 * control.y + 0.25 * end.y,
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
function round(value) {
|
|
165
|
+
return (Math.round(value * 100) / 100).toFixed(2);
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* The colour a STROKE paints with.
|
|
169
|
+
*
|
|
170
|
+
* A stroke that declares no tone takes the RELATIONSHIP's, never `currentColor`.
|
|
171
|
+
* The two are not the same thing here: a mark is a sibling of the edge, so it
|
|
172
|
+
* inherits the viewer's body text rather than the hue `.ig-edge[data-edge=…]`
|
|
173
|
+
* gives the line — which would render a companion grey beside the red line it
|
|
174
|
+
* doubles, silently dropping the one channel that says which relationship is
|
|
175
|
+
* being written.
|
|
176
|
+
*
|
|
177
|
+
* "No tone" therefore means "the kind's", which is what a state with no hue of
|
|
178
|
+
* its own is asking for; a state that has one overrides it here.
|
|
179
|
+
*
|
|
180
|
+
* ONLY A STROKE. A glyph is TEXT and takes {@link GLYPH_FILL} instead — see the
|
|
181
|
+
* note there, and `theme.ts`, which guarantees these hues at a bar text may not
|
|
182
|
+
* be drawn at.
|
|
183
|
+
*/
|
|
184
|
+
function strokeToneOf(mark, drawing) {
|
|
185
|
+
const token = mark.tone === undefined || mark.tone === null ? drawing.hueToken : mark.tone;
|
|
186
|
+
return `var(${token})`;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* The colour every worded or glyphed mark is drawn in, and it is TEXT-GRADE.
|
|
190
|
+
*
|
|
191
|
+
* THE HUES ARE NOT AVAILABLE TO TEXT, and the palette says so in as many words:
|
|
192
|
+
* `theme.ts` guarantees text at WCAG AA's 4.5:1 and holds every edge hue AND
|
|
193
|
+
* every edit-state hue to the 3:1 bar that applies to a line or a badge outline
|
|
194
|
+
* instead. `theme.test.ts` states the reason for keeping the two apart —
|
|
195
|
+
* "stating the DIFFERENT bar explicitly is what stops the looser number leaking
|
|
196
|
+
* onto text later" — which is precisely what a glyph painted in a relationship
|
|
197
|
+
* hue does. Measured, a `writing…` chip in `--ig-edge-duplicate-of` lands at
|
|
198
|
+
* about 4.47:1, and a host's own theme may sit nearer 3:1 and still be valid.
|
|
199
|
+
*
|
|
200
|
+
* NOTHING IS LOST BY IT, because the mark was never the hue's carrier. The type
|
|
201
|
+
* identity rests on four redundant channels, and a mark's contribution is its
|
|
202
|
+
* SHAPE — a ✕ is not a `!` is not a word, without colour. The hue stays on the
|
|
203
|
+
* line, where the bar it is guaranteed at is the right one: the edge's own
|
|
204
|
+
* stroke, the dashed ghost, and the conflict's companion, which is a stroke and
|
|
205
|
+
* so keeps its tone.
|
|
206
|
+
*/
|
|
207
|
+
const GLYPH_FILL = 'var(--ig-text-body)';
|
|
208
|
+
/**
|
|
209
|
+
* One glyph, placed.
|
|
210
|
+
*
|
|
211
|
+
* IT ANNOUNCES NOTHING, and cannot: the canvas is `aria-hidden`, so its whole
|
|
212
|
+
* subtree is out of the accessibility tree whatever this writes. That is also
|
|
213
|
+
* the right answer — every node, name and tab stop is carried by the HTML rail
|
|
214
|
+
* beside it, and the state is announced once on the edge's own `aria-label`, so
|
|
215
|
+
* a mark that spoke would be a second, flattened description of something
|
|
216
|
+
* already said properly.
|
|
217
|
+
*
|
|
218
|
+
* `aria-hidden` is still written rather than left implicit, so the intent is
|
|
219
|
+
* legible on the element rather than inherited from an ancestor a reader of this
|
|
220
|
+
* function cannot see.
|
|
221
|
+
*/
|
|
222
|
+
function glyphMark(at, mark, placement, identity,
|
|
223
|
+
/**
|
|
224
|
+
* Which end of the glyph sits on `at`.
|
|
225
|
+
*
|
|
226
|
+
* `middle` centres it, which is right for a single symbol. A WORD needs
|
|
227
|
+
* `start` or `end` instead, because a centred box half as wide as the word
|
|
228
|
+
* reaches back over whatever the sideways offset was meant to clear — and this
|
|
229
|
+
* layer renders to a string, so it can never measure a word to compensate.
|
|
230
|
+
* Anchoring the near edge makes the glyph grow AWAY from the line, at any
|
|
231
|
+
* length and in any font.
|
|
232
|
+
*/
|
|
233
|
+
anchor = 'middle') {
|
|
234
|
+
if (mark.glyph === undefined || mark.glyph === null || mark.glyph === '')
|
|
235
|
+
return null;
|
|
236
|
+
return svg('text', {
|
|
237
|
+
class: EDGE_MARK_CLASS,
|
|
238
|
+
[MARK_PLACEMENT_ATTRIBUTE]: placement,
|
|
239
|
+
// THE SAME POINTER IDENTITY THE STROKE CARRIES. A mark sitting on its own
|
|
240
|
+
// edge that resolved to nothing would read as the click having missed —
|
|
241
|
+
// the defect the terminal marker's own identity was added to fix.
|
|
242
|
+
'data-ig-group': identity,
|
|
243
|
+
x: round(at.x),
|
|
244
|
+
y: round(at.y),
|
|
245
|
+
// Centred on the point it was given, so a caller reasons about ONE
|
|
246
|
+
// position rather than about a glyph's own box.
|
|
247
|
+
'text-anchor': anchor,
|
|
248
|
+
'dominant-baseline': 'middle',
|
|
249
|
+
fill: GLYPH_FILL,
|
|
250
|
+
'aria-hidden': 'true',
|
|
251
|
+
}, [mark.glyph]);
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* The line again, offset onto its perpendicular.
|
|
255
|
+
*
|
|
256
|
+
* ONE PER STROKE THE KIND ALREADY DRAWS, and that is the correctness of it
|
|
257
|
+
* rather than a nicety. A doubled relationship is two paths separated by a
|
|
258
|
+
* stroke width; a single companion beside that pair is a third line, which is
|
|
259
|
+
* neither of the two things a reader is being asked to compare. The doubling is
|
|
260
|
+
* re-applied here from the same theme metric the edge treatment spends, so the
|
|
261
|
+
* companion is the same SHAPE as the thing it doubles.
|
|
262
|
+
*
|
|
263
|
+
* The offset is a translation of the whole path rather than a re-solved curve:
|
|
264
|
+
* a translated quadratic is congruent to its original, so the two versions are
|
|
265
|
+
* the same line twice, which is what "two versions" has to mean.
|
|
266
|
+
*/
|
|
267
|
+
function companionPaths(geometry, mark, theme, identity, drawing) {
|
|
268
|
+
const normal = outwardNormal(geometry);
|
|
269
|
+
const stroke = theme.metrics['--ig-stroke'];
|
|
270
|
+
// Clear of the original by more than the original's own doubling, or the two
|
|
271
|
+
// versions merge into one thicker line at exactly the width the doubling uses.
|
|
272
|
+
const gap = stroke * (drawing.doubled ? 4 : 3);
|
|
273
|
+
const base = {
|
|
274
|
+
class: `${EDGE_MARK_CLASS} ig-edge-companion`,
|
|
275
|
+
[MARK_PLACEMENT_ATTRIBUTE]: 'companion',
|
|
276
|
+
'data-ig-group': identity,
|
|
277
|
+
d: geometry.d,
|
|
278
|
+
fill: 'none',
|
|
279
|
+
stroke: strokeToneOf(mark, drawing),
|
|
280
|
+
// THE KIND'S OWN DASH, CARRIED. A companion drops `class` like every other
|
|
281
|
+
// mark, so `.ig-edge[data-edge=…]` no longer patterns it — and a SOLID
|
|
282
|
+
// second version beside a dotted `duplicate-of` is not the same line twice,
|
|
283
|
+
// it is a different relationship drawn beside the first. The dash is one of
|
|
284
|
+
// the four redundant channels the type identity rests on, and losing it on
|
|
285
|
+
// the companion loses it exactly where a reader is being asked to compare.
|
|
286
|
+
'stroke-dasharray': drawing.dashArray,
|
|
287
|
+
// Decoration over a rail that already carries every name.
|
|
288
|
+
'aria-hidden': 'true',
|
|
289
|
+
};
|
|
290
|
+
/** A shift of `distance` along the chord's normal, as a transform. */
|
|
291
|
+
const along = (distance) => `translate(${round(normal.x * distance)} ${round(normal.y * distance)})`;
|
|
292
|
+
if (!drawing.doubled)
|
|
293
|
+
return [svg('path', { ...base, transform: along(gap) })];
|
|
294
|
+
// THE DOUBLING RIDES THE NORMAL TOO, and the first version of this did not.
|
|
295
|
+
//
|
|
296
|
+
// It separated the pair with `translate(0 ±stroke)` — copied from the edge
|
|
297
|
+
// treatment, which doubles on the global y-axis. That is right for the shapes
|
|
298
|
+
// the viewer happens to draw and wrong here for the same reason the whole
|
|
299
|
+
// module exists: on a VERTICAL chord the y-axis runs ALONG the line, so the
|
|
300
|
+
// two companion strokes slid over each other and drew as one.
|
|
301
|
+
//
|
|
302
|
+
// A vertical chord is the ordinary same-column case, not a corner, so this was
|
|
303
|
+
// the recorded round-4 failure reintroduced inside the change that claims to
|
|
304
|
+
// retire it — and it survived a test asserting the pair's COUNT, because two
|
|
305
|
+
// strokes were emitted and they simply coincided.
|
|
306
|
+
return [
|
|
307
|
+
svg('path', { ...base, transform: along(gap - stroke) }),
|
|
308
|
+
svg('path', { ...base, transform: along(gap + stroke) }),
|
|
309
|
+
];
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Draw the marks a host asked for on one edge.
|
|
313
|
+
*
|
|
314
|
+
* Takes the geometry the projection already solved, so this adds no layout pass
|
|
315
|
+
* and cannot disagree with the line it decorates.
|
|
316
|
+
*/
|
|
317
|
+
export function edgeMarkSpecs(marks, geometry, theme, identity, drawing) {
|
|
318
|
+
const specs = [];
|
|
319
|
+
for (const mark of marks) {
|
|
320
|
+
switch (mark.placement) {
|
|
321
|
+
case 'both-ends': {
|
|
322
|
+
// OFF THE LINE, at both ends, and the offset is not decoration.
|
|
323
|
+
//
|
|
324
|
+
// An endpoint is a point on a node's bound, which is also exactly where
|
|
325
|
+
// the terminal marker sits at the arriving end — so a chip drawn ON the
|
|
326
|
+
// endpoint lands on the arrowhead. Measured before this offset existed:
|
|
327
|
+
// five pixels between their centres, which is a collision, on the one
|
|
328
|
+
// channel that carries the relationship's type without colour.
|
|
329
|
+
//
|
|
330
|
+
// Pushed onto the chord's perpendicular, both chips clear the line and
|
|
331
|
+
// the marker at once, and the pair stays symmetric — the same sideways
|
|
332
|
+
// step at each end, so the two read as one state rather than as two
|
|
333
|
+
// marks that happen to share a colour.
|
|
334
|
+
const aside = theme.metrics['--ig-terminal-width'] + theme.metrics['--ig-stroke'] * 4;
|
|
335
|
+
// EACH END IS CLEARED AGAINST ITS OWN CARD. A single direction for the
|
|
336
|
+
// pair is only right when both anchors sit on the same face, which a
|
|
337
|
+
// same-column edge satisfies and a gutter-to-spine edge does not — there
|
|
338
|
+
// one box is left by its right face and the other entered by its left,
|
|
339
|
+
// so one shared direction drove the second chip into its card.
|
|
340
|
+
//
|
|
341
|
+
// The text anchor follows the same side, or a chip cleared leftward
|
|
342
|
+
// grows straight back across the line the offset just moved it off.
|
|
343
|
+
const chip = (point, side) => {
|
|
344
|
+
const away = awayFromCard(side);
|
|
345
|
+
return glyphMark({ x: point.x + away.x * aside, y: point.y + away.y * aside }, mark, 'both-ends', identity, side === 'left' ? 'end' : 'start');
|
|
346
|
+
};
|
|
347
|
+
const at = chip(geometry.start, geometry.startSide);
|
|
348
|
+
const to = chip(geometry.end, geometry.endSide);
|
|
349
|
+
if (at !== null)
|
|
350
|
+
specs.push(at);
|
|
351
|
+
if (to !== null)
|
|
352
|
+
specs.push(to);
|
|
353
|
+
break;
|
|
354
|
+
}
|
|
355
|
+
case 'terminal': {
|
|
356
|
+
// BESIDE THE TERMINAL, AND THE SIDEWAYS STEP IS THE PART THAT WORKS.
|
|
357
|
+
//
|
|
358
|
+
// The arrowhead is one of the four redundant channels the type identity
|
|
359
|
+
// rests on — the one that carries the type without colour — so a mark
|
|
360
|
+
// may sit next to it and must never sit on it.
|
|
361
|
+
//
|
|
362
|
+
// Stepping BACK along the tangent alone does not achieve that, and it
|
|
363
|
+
// measurably did not: a glyph is centred on the point it is given and
|
|
364
|
+
// has a width of its own, so backing off by the marker's own length put
|
|
365
|
+
// the glyph's box over the marker's tail. This layer renders to a string
|
|
366
|
+
// and can never measure a glyph, so any clearance derived from the
|
|
367
|
+
// glyph's size would be a guess.
|
|
368
|
+
//
|
|
369
|
+
// The perpendicular is what actually separates them: offset sideways by
|
|
370
|
+
// more than the marker's full width and the glyph clears it whatever its
|
|
371
|
+
// own width turns out to be, because the two no longer share a line. The
|
|
372
|
+
// step back stays, so the mark still reads as belonging to the arrowhead
|
|
373
|
+
// rather than floating past the tip.
|
|
374
|
+
//
|
|
375
|
+
// Both distances are theme data, and the perpendicular is the one at the
|
|
376
|
+
// END — the tangent there — rather than the chord's, because this mark
|
|
377
|
+
// is about the arrival and not about the line as a whole.
|
|
378
|
+
//
|
|
379
|
+
// THE STEP BACK IS THE TANGENT'S; THE STEP ASIDE IS THE CARD'S. Which
|
|
380
|
+
// way "sideways" points cannot be read off the tangent, and measured, an
|
|
381
|
+
// upward arrival between two spine cards sent the ✕ across the
|
|
382
|
+
// destination card's left bound where the opaque rail hides it.
|
|
383
|
+
//
|
|
384
|
+
// It is the ARRIVING endpoint's own side, not the routing channel's:
|
|
385
|
+
// those agree for a same-column arc and disagree for one that crosses
|
|
386
|
+
// between columns, which is the case a channel-derived sign gets wrong.
|
|
387
|
+
const stroke = theme.metrics['--ig-stroke'];
|
|
388
|
+
const back = theme.metrics['--ig-terminal-length'] + stroke;
|
|
389
|
+
const aside = theme.metrics['--ig-terminal-width'] + stroke * 4;
|
|
390
|
+
const cos = Math.cos(geometry.endAngle);
|
|
391
|
+
const sin = Math.sin(geometry.endAngle);
|
|
392
|
+
const away = awayFromCard(geometry.endSide);
|
|
393
|
+
const at = {
|
|
394
|
+
x: geometry.end.x - cos * back + away.x * aside,
|
|
395
|
+
y: geometry.end.y - sin * back + away.y * aside,
|
|
396
|
+
};
|
|
397
|
+
const spec = glyphMark(at, mark, 'terminal', identity);
|
|
398
|
+
if (spec !== null)
|
|
399
|
+
specs.push(spec);
|
|
400
|
+
break;
|
|
401
|
+
}
|
|
402
|
+
case 'beside': {
|
|
403
|
+
// IN THE CHANNEL, WHICH IS FREE OF CARDS BY DEFINITION — rather than
|
|
404
|
+
// beside the curve by an offset in some derived direction.
|
|
405
|
+
//
|
|
406
|
+
// That distinction is the whole fix. A routing channel is the gap the
|
|
407
|
+
// layout leaves BETWEEN columns precisely so an arc has somewhere to go,
|
|
408
|
+
// so a point at the channel's x is clear of every card without anything
|
|
409
|
+
// needing to know where the cards are. An offset from the curve's
|
|
410
|
+
// midpoint is not: measured, a long arc crossing between the gutters has
|
|
411
|
+
// its midpoint over a spine card, so the glyph landed under the opaque
|
|
412
|
+
// rail — the same invisible-mark failure the endpoint marks had, arrived
|
|
413
|
+
// at from the one placement that has no endpoint of its own to clear.
|
|
414
|
+
//
|
|
415
|
+
// The y is still the curve's, so the mark sits at the line's own height
|
|
416
|
+
// and reads as belonging to it. Only the x is taken from the channel.
|
|
417
|
+
const mid = midpointOf(geometry);
|
|
418
|
+
const spec = glyphMark({ x: geometry.control.x, y: mid.y }, mark, 'beside', identity);
|
|
419
|
+
if (spec !== null)
|
|
420
|
+
specs.push(spec);
|
|
421
|
+
break;
|
|
422
|
+
}
|
|
423
|
+
case 'companion':
|
|
424
|
+
specs.push(...companionPaths(geometry, mark, theme, identity, drawing));
|
|
425
|
+
break;
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
return specs;
|
|
429
|
+
}
|
|
430
|
+
//# sourceMappingURL=marks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marks.js","sourceRoot":"","sources":["../src/marks.ts"],"names":[],"mappings":"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"}
|
package/dist/mount.d.ts
CHANGED
|
@@ -42,6 +42,19 @@ export interface MountOptions extends RenderOptions {
|
|
|
42
42
|
readonly onSelect?: ((key: string | null) => void) | undefined;
|
|
43
43
|
/** Called with the hovered key, and with `null` when nothing is hovered. */
|
|
44
44
|
readonly onHover?: ((key: string | null) => void) | undefined;
|
|
45
|
+
/**
|
|
46
|
+
* Called with a command the viewer PUBLISHES and cannot complete: `refresh`,
|
|
47
|
+
* `projection:linear`, `projection:graph`, `expand`, `collapse`.
|
|
48
|
+
*
|
|
49
|
+
* THE VIEWER IS A PURE RENDERER, so none of these is its to perform — it
|
|
50
|
+
* cannot fetch a mirror, switch its own projection or widen its own column.
|
|
51
|
+
* They already travel on `data-ig-command` for a host that listens to the
|
|
52
|
+
* DOM; this is the same set on the callback channel, because §16e puts one of
|
|
53
|
+
* them on a KEY (`g` toggles the view) and a key press has no element for a
|
|
54
|
+
* host to have been listening to. One name set, two channels, so a host
|
|
55
|
+
* cannot wire the button and silently lose the shortcut.
|
|
56
|
+
*/
|
|
57
|
+
readonly onCommand?: ((command: string) => void) | undefined;
|
|
45
58
|
}
|
|
46
59
|
export interface ViewerHandle {
|
|
47
60
|
/** Redraw. A still-present selection survives; focus follows it. */
|