@issuegraph/viewer 0.1.0 → 0.1.2

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/mount.js CHANGED
@@ -13,12 +13,13 @@
13
13
  * DOM — the property the workspace smoke test measures against the published
14
14
  * entry.
15
15
  */
16
+ import { edgeIdentity } from '@issuegraph/core';
16
17
  import { normalizeDocument } from "./document.js";
17
18
  import { materialize } from "./element.js";
18
19
  import { initialNavigationState, navigate, reconcile, } from "./navigation.js";
19
20
  import { sceneFor } from "./render.js";
20
21
  import { GROUP_ATTRIBUTE, KEY_ATTRIBUTE } from "./scene.js";
21
- import { defaultTheme } from "./theme.js";
22
+ import { resolveTheme } from "./theme.js";
22
23
  /**
23
24
  * Elements that own their own keyboard activation.
24
25
  *
@@ -101,11 +102,63 @@ export function mountViewer(container, input, options = {}) {
101
102
  };
102
103
  let root = null;
103
104
  let keyed = new Map();
105
+ // EVERY IDENTITY THE LAST DRAW PUT UNDER THE POINTER — issues AND decoration.
106
+ // Rebuilt by each `draw()` from the scene it just materialized, and read by
107
+ // BOTH the hover reconciliation and `emitSelect`, because "what the pointer
108
+ // can name" is one question. A click and a hover resolve their target through
109
+ // the same `keyAt` walk, so answering them from two different sets is how a
110
+ // mark becomes hoverable but unselectable.
111
+ let pointable = new Set();
112
+ /**
113
+ * Whether this document carries the edge a key names.
114
+ *
115
+ * THE EDGE COUNTERPART OF `byKey`, and that symmetry is the whole point. An
116
+ * edge identity is in no document MAP, so before this the only evidence an
117
+ * edge existed was that some projection had drawn a mark for it — which made
118
+ * a selection's survival a property of the CURRENT REPRESENTATION rather than
119
+ * of the subject. An ISSUE has never been held to that standard: `byKey`
120
+ * answers for one whether or not the active projection draws its row, which
121
+ * is why an issue selection already survives into a projection that renders
122
+ * nothing for it.
123
+ *
124
+ * DERIVED FROM `normalized` ON EVERY CALL rather than cached beside it. There
125
+ * are two assignment sites (mount and `update`), and a cache would have to be
126
+ * rebuilt at both — the shape this file has been bitten by repeatedly, where
127
+ * one site is updated and the other silently answers from a stale copy.
128
+ * Reading the live value has no second site to forget.
129
+ */
130
+ const isDocumentEdge = (key) => normalized.edges.some((edge) => edgeIdentity(edge.field, edge.from, edge.to) === key);
131
+ /**
132
+ * Whether a key still names something the reader can be looking at.
133
+ *
134
+ * ASKED TWICE PER DRAW, from either side of the rebuild of `pointable`, and
135
+ * that is exactly why it is a function rather than a copied condition: before
136
+ * the rebuild it means "the last scene drew this", after it means "this one
137
+ * does", and both are the question that site needs. Two hand-written copies
138
+ * of it would answer differently the first time either was touched — the
139
+ * failure this file has already recorded twice, once for focus keys and once
140
+ * for the hover.
141
+ *
142
+ * THE DOCUMENT ANSWERS FIRST, FOR ISSUES AND FOR EDGES ALIKE; `pointable` is
143
+ * what admits a mark the document cannot speak for. Resting an edge on
144
+ * `pointable` alone made its survival depend on every projection publishing
145
+ * an identity, and a projection that renders no mark for an edge therefore
146
+ * DROPPED THE SUBJECT — the refused graph being the case with no arc and no
147
+ * badge to fall back on, and an edge between two gutter nodes the case no
148
+ * amount of rail-row badging can reach, since neither endpoint has a row.
149
+ * Chasing that per representation is unbounded; asking the document is not.
150
+ *
151
+ * IT STILL CLEARS AN EDGE THE DOCUMENT DOES NOT CARRY. This widens the
152
+ * evidence, not the acceptance: an identity naming an edge no longer in the
153
+ * document fails every leg, so a host restoring a stale selection is refused
154
+ * and an `update` that removes an edge still drops it.
155
+ */
156
+ const stillDrawn = (key) => normalized.byKey.has(key) || isDocumentEdge(key) || pointable.has(key);
104
157
  let hovered = null;
105
158
  let destroyed = false;
106
159
  // Set by the first `draw()` below, which runs before any listener can fire.
107
160
  let currentScene = null;
108
- const theme = options.theme ?? defaultTheme;
161
+ const theme = resolveTheme(options.theme);
109
162
  // ONE PLACE THAT CLEARS A HOVER, because forgetting a site is exactly how this
110
163
  // kept going wrong: `pointerleave` had it, then a redraw needed it, and now
111
164
  // teardown does too. Three call sites open-coding two lines is a fourth site
@@ -145,7 +198,22 @@ export function mountViewer(container, input, options = {}) {
145
198
  // covered only the first, so `setProjection` renamed the selection and told
146
199
  // nobody: the handle read the station while the host still held the member.
147
200
  const selectedBefore = state.selected;
148
- if (state.selected !== null && !normalized.byKey.has(state.selected)) {
201
+ // A DECORATION SELECTION IS NOT AN ISSUE AND MUST SURVIVE THIS TEST. The
202
+ // subject can be a `together-with` connector, whose identity is an edge and
203
+ // is therefore absent from `byKey` by construction — dropping on document
204
+ // membership alone deselected it on the very next redraw. Whether the NEW
205
+ // scene still draws it is a different question, and it is answered below,
206
+ // after materialize, exactly where the hover clear answers it.
207
+ //
208
+ // AND NOT AT ALL BEFORE THE FIRST DRAW, which is what `currentScene` tests.
209
+ // `pointable` is empty until a scene has been materialized, so on mount
210
+ // this check has NO evidence about decoration — it would clear a connector
211
+ // identity a host passed as `selected`, making a selection impossible to
212
+ // restore across a remount even though every later redraw preserves it.
213
+ // The post-materialize check settles it a few lines down, against a scene
214
+ // that exists; deferring costs one frame in which nothing renders an edge
215
+ // selection anyway.
216
+ if (currentScene !== null && state.selected !== null && !stillDrawn(state.selected)) {
149
217
  state = { ...state, selected: null };
150
218
  }
151
219
  if (root !== null)
@@ -162,9 +230,10 @@ export function mountViewer(container, input, options = {}) {
162
230
  // `keyed` and a NARROWER one than the document. `keyed` holds focus
163
231
  // identities only; decoration announces itself through `GROUP_ATTRIBUTE` and
164
232
  // deliberately never enters the focus index, so an enclosure or a connector
165
- // is absent from `keyed` on every redraw. The hover reconciliation below
166
- // needs both, and needs them from the SCENE rather than from `byKey`.
167
- const drawnHoverable = new Set();
233
+ // is absent from `keyed` on every redraw. The hover reconciliation and the
234
+ // selection both need both, and need them from the SCENE rather than from
235
+ // `byKey` a decoration identity is in no document.
236
+ pointable = new Set();
168
237
  // WHICH KEYS ARE INDEXED BY SOMETHING THAT CAN ACTUALLY TAKE FOCUS. `keyed`
169
238
  // is a FOCUS index — its only readers call `focus()` on what it holds — so
170
239
  // holding an element a browser ignores makes it silently useless.
@@ -194,11 +263,11 @@ export function mountViewer(container, input, options = {}) {
194
263
  if (canFocus)
195
264
  focusableKeys.add(key);
196
265
  }
197
- drawnHoverable.add(key);
266
+ pointable.add(key);
198
267
  }
199
268
  const group = spec.attrs?.[GROUP_ATTRIBUTE];
200
269
  if (typeof group === 'string' && group !== '')
201
- drawnHoverable.add(group);
270
+ pointable.add(group);
202
271
  },
203
272
  });
204
273
  container.appendChild(root);
@@ -223,11 +292,20 @@ export function mountViewer(container, input, options = {}) {
223
292
  // switching destroys the element while its issue stays in `byKey` — the
224
293
  // document test then preserves a hover on something that is no longer on
225
294
  // screen, and the host never receives the documented `onHover(null)` until
226
- // the pointer leaves the whole viewer. `drawnHoverable` carries both
295
+ // the pointer leaves the whole viewer. `pointable` carries both
227
296
  // attributes from the scene just materialized, so it answers for decoration
228
297
  // and for issues, on every redraw, from the thing the pointer can touch.
229
- if (hovered !== null && !drawnHoverable.has(hovered))
298
+ if (hovered !== null && !pointable.has(hovered))
230
299
  clearHover();
300
+ // THE SAME QUESTION FOR THE SELECTION, and it has to be asked here rather
301
+ // than above: only a materialized scene knows whether this draw still drew
302
+ // the connector the reader selected. An issue selection is already settled
303
+ // by `byKey` and by `reconcile`; this covers the decoration case those two
304
+ // cannot see. It runs BEFORE the notice below, so a subject that went away
305
+ // is reported exactly once, through the same channel as every other change.
306
+ if (state.selected !== null && !stillDrawn(state.selected)) {
307
+ state = { ...state, selected: null };
308
+ }
231
309
  // TOLD, NOT JUST DROPPED. The host was told a selection began, so leaving it
232
310
  // to infer the ending from a document it happens to have replaced is the
233
311
  // same divergence `clearHover` exists to prevent one line up. Fired AFTER
@@ -251,8 +329,20 @@ export function mountViewer(container, input, options = {}) {
251
329
  // while the handle read `selected: null`. Resolving first means the state
252
330
  // and the one notification agree, and the reconciliation in `draw()` finds
253
331
  // nothing left to undo.
254
- const resolved = key !== null && normalized.byKey.has(key) ? key : null;
255
- state = { ...state, selected: resolved, focused: resolved ?? state.focused };
332
+ // DECORATION IS A SUBJECT TOO. The document answers for issues; `pointable`
333
+ // answers for the marks this scene drew that are not issues — today the
334
+ // `together-with` connector, whose identity is an edge. Without the second
335
+ // arm a connector click resolved to `null`, so the host was told a
336
+ // selection ENDED by the one gesture that was starting one.
337
+ const resolved = key !== null && stillDrawn(key) ? key : null;
338
+ // FOCUS FOLLOWS AN ISSUE, NEVER A DECORATION IDENTITY. `navigable` lists
339
+ // issues, and `navigate` resolves a key it cannot find to -1 and throws the
340
+ // reader back to the top of the order — which is why `onKeyDown` already
341
+ // narrows its own adoption to `KEY_ATTRIBUTE`. Selecting a connector must
342
+ // leave the tab stop where the reader left it, so the focus arm asks the
343
+ // document rather than reusing `resolved`.
344
+ const focusable = resolved !== null && normalized.byKey.has(resolved) ? resolved : null;
345
+ state = { ...state, selected: resolved, focused: focusable ?? state.focused };
256
346
  // SILENCED, because this function reports the result itself once the draw
257
347
  // has settled it. Letting the draw announce too would fire `onSelect` twice
258
348
  // for one selection whenever reconciliation renamed it — and a caller
package/dist/mount.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mount.js","sourceRoot":"","sources":["../src/mount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mount.js","sourceRoot":"","sources":["../src/mount.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parts.d.ts","sourceRoot":"","sources":["../src/parts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,WAAW,EACX,UAAU,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,cAAc,CAAC;AAGzD,mEAAmE;AACnE,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAIzD;AAQD,wBAAgB,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAOtD;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW,CAgBxD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,cAAc,GAAG,SAAS,GAAG,WAAW,GAAG,IAAI,CAuBzF;AAED,8EAA8E;AAC9E,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAEtD;AAoBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,WAAW,GAAG,IAAI,CA0BpG;AAED,2EAA2E;AAC3E,wBAAgB,MAAM,IAAI,WAAW,CAWpC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,kBAAkB,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAQpF;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CAAE,EAChH,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,CAAC,CAKH;AAED,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,CAIhF;AAED,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,CAGhF;AAED,sEAAsE;AACtE,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAEvD"}
1
+ {"version":3,"file":"parts.d.ts","sourceRoot":"","sources":["../src/parts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,WAAW,EACX,UAAU,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,cAAc,CAAC;AAIzD,mEAAmE;AACnE,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAIzD;AAQD,wBAAgB,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAOtD;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW,CAgBxD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,cAAc,GAAG,SAAS,GAAG,WAAW,GAAG,IAAI,CAuBzF;AAED,8EAA8E;AAC9E,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAEtD;AAgDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,WAAW,GAAG,IAAI,CAoCpG;AAED,2EAA2E;AAC3E,wBAAgB,MAAM,IAAI,WAAW,CAWpC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,kBAAkB,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAQpF;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CAAE,EAChH,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,CAAC,CAKH;AAED,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,CAIhF;AAED,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,CAGhF;AAED,sEAAsE;AACtE,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAEvD"}
package/dist/parts.js CHANGED
@@ -6,7 +6,9 @@
6
6
  * them here means a projection cannot invent a second spelling of "this issue
7
7
  * is held", and a change to the grammar lands in every projection at once.
8
8
  */
9
+ import { edgeIdentity } from '@issuegraph/core';
9
10
  import { element } from "./element.js";
11
+ import { GROUP_ATTRIBUTE } from "./scene.js";
10
12
  import { EDGE_ORDER, treatmentFor } from "./vocabulary.js";
11
13
  /**
12
14
  * Filled = ready now. Hollow = ready once a named rank lands. Dashed = held.
@@ -85,12 +87,40 @@ export function provenanceLine(provenance) {
85
87
  export function holdLine(hold) {
86
88
  return element('p', { class: 'ig-hold', 'data-family': hold.family }, [hold.reason]);
87
89
  }
88
- /** A badge naming one relationship, on all four channels at once. */
89
- function edgeBadge(field, detail) {
90
+ /**
91
+ * A badge naming one relationship, on all four channels at once.
92
+ *
93
+ * IT CARRIES THE EDGE'S POINTER IDENTITY, the same one the canvas publishes.
94
+ * `mount`'s `pointable` set is built from `data-ig-key` and this attribute, and
95
+ * an edge identity is in no document — so `data-ig-group` is its ONLY route
96
+ * into that set. Without it an edge was pointable on the graph canvas and
97
+ * nowhere else, and `stillDrawn` therefore answered `false` the moment a switch
98
+ * to the linear or tree projection redrew the scene: the selection was cleared
99
+ * and the host told `onSelect(null)`, contradicting `setProjection`'s own
100
+ * promise that only the representation changes.
101
+ *
102
+ * THE BADGE IS WHAT REPRESENTS AN EDGE HERE. These projections draw no arc, but
103
+ * they do draw the relationship — so the honest answer to "is this subject still
104
+ * on screen" is yes, and naming it is what makes that answer readable. This is
105
+ * the same move `Scene.stationOf` makes for a `together-with` partner: MAP the
106
+ * subject onto what represents it, rather than exempt it from the drawn-check.
107
+ * One mechanism in the parts every projection shares, rather than a special case
108
+ * in the shell.
109
+ *
110
+ * `data-ig-GROUP`, not `data-ig-key`, for the reason `graph.ts` gives at length
111
+ * where it makes the same choice: an edge is not a navigation target, so it must
112
+ * not enter the focus index.
113
+ *
114
+ * A CLICK ON A BADGE NOW NAMES THE EDGE rather than the row carrying it, because
115
+ * `keyAt` walks target-upward. That is the intended half of "an edge is pointable
116
+ * in every projection", and it is what the canvas already does for an arc.
117
+ */
118
+ function edgeBadge(field, edgeId, detail) {
90
119
  const treatment = treatmentFor(field);
91
120
  return element('span', {
92
121
  class: 'ig-badge',
93
122
  'data-edge': field,
123
+ [GROUP_ATTRIBUTE]: edgeId,
94
124
  title: `${treatment.label} ${detail}`,
95
125
  'aria-label': `${treatment.label} ${detail}`,
96
126
  }, [
@@ -123,17 +153,27 @@ export function edgeBadges(document, keys) {
123
153
  for (const edge of document.edgesOf.get(key) ?? []) {
124
154
  if (edge.field !== field)
125
155
  continue;
126
- const identity = `${edge.field}\u0000${edge.from}\u0000${edge.to}`;
127
- if (seen.has(identity))
156
+ // THE SAME IDENTITY THE BADGE PUBLISHES, so this function holds ONE
157
+ // spelling of "which edge is this" rather than two that can drift apart
158
+ // the first time either is touched.
159
+ // IT IS NOT A BEHAVIOUR CHANGE, and saying so is the point: the private
160
+ // key it replaces deduped exactly the same set here, because
161
+ // `normalizeDocument` has ALREADY collapsed a symmetric field's reverse
162
+ // declaration before an edge reaches `edgesOf`. What this buys is that
163
+ // the value the dedupe reasons about and the value the markup publishes
164
+ // are the same value, so neither can answer for one edge while the other
165
+ // answers for two.
166
+ const edgeId = edgeIdentity(edge.field, edge.from, edge.to);
167
+ if (seen.has(edgeId))
128
168
  continue;
129
- seen.add(identity);
169
+ seen.add(edgeId);
130
170
  const treatment = treatmentFor(field);
131
171
  // A symmetric edge states one fact whichever end you read it from, so it
132
172
  // is announced as one relationship rather than as two directions.
133
173
  const outgoing = mine.has(edge.from);
134
174
  const other = outgoing ? edge.to : edge.from;
135
175
  const detail = treatment.symmetric || outgoing ? other : `${other} (incoming)`;
136
- badges.push(edgeBadge(field, detail));
176
+ badges.push(edgeBadge(field, edgeId, detail));
137
177
  }
138
178
  }
139
179
  }
package/dist/parts.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"parts.js","sourceRoot":"","sources":["../src/parts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parts.js","sourceRoot":"","sources":["../src/parts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/projections/graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,gBAAgB,CAAC;AAoBxB,OAAO,EAA0B,KAAK,KAAK,EAAmB,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,KAAK,KAAK,EAAgB,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAE,KAAK,YAAY,EAA6B,MAAM,aAAa,CAAC;AAE3E;;;GAGG;AACH,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CACpC;AA4bD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,GAAE,YAAiB,GAAG,KAAK,CA4Q7F"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/projections/graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,gBAAgB,CAAC;AAqBxB,OAAO,EAA0B,KAAK,KAAK,EAAmB,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,KAAK,KAAK,EAAgB,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAE,KAAK,YAAY,EAA6B,MAAM,aAAa,CAAC;AAE3E;;;GAGG;AACH,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CACpC;AAqdD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,GAAE,YAAiB,GAAG,KAAK,CA2S7F"}
@@ -13,12 +13,13 @@
13
13
  * instrument answering "what surrounds this issue", so past its budget it says
14
14
  * so and offers the next move instead of drawing a hairball.
15
15
  */
16
+ import { edgeIdentity } from '@issuegraph/core';
16
17
  import { clustersOf } from "../clusters.js";
17
18
  import { element, svg } from "../element.js";
18
- import { edgeGeometry, enclosureBounds, fitLabel, layoutGraph, } from "../layout.js";
19
+ import { edgeGeometry, connectorPath, enclosureBounds, fitLabel, layoutGraph, } from "../layout.js";
19
20
  import { emptyState, legend, slotLabel, slotTitle, station, stationFill, stationsOf, atStations, } from "../parts.js";
20
21
  import { resolveFocusKey } from "../scene.js";
21
- import { defaultTheme } from "../theme.js";
22
+ import { resolveTheme } from "../theme.js";
22
23
  import { dashArrayFor, treatmentFor } from "../vocabulary.js";
23
24
  import { excludedRow, isFooterSlot } from "./linear.js";
24
25
  /**
@@ -27,11 +28,18 @@ import { excludedRow, isFooterSlot } from "./linear.js";
27
28
  */
28
29
  export const GRAPH_NODE_BUDGET = 60;
29
30
  export const CLUSTER_ONLY_BUDGET = 300;
30
- function terminalMarker(terminal, geometry, field, theme) {
31
+ function terminalMarker(terminal, geometry, field, identity, theme) {
31
32
  const { end, endAngle } = geometry;
32
33
  const degrees = (endAngle * 180) / Math.PI;
33
34
  const transform = `translate(${end.x.toFixed(2)} ${end.y.toFixed(2)}) rotate(${degrees.toFixed(2)})`;
34
- const common = { class: 'ig-terminal', 'data-edge': field, transform };
35
+ // THE TERMINAL IS PART OF THE EDGE A READER SEES, so it answers to the same
36
+ // identity as the stroke it caps. Without this the arrowhead is a hole in
37
+ // its own line: the path beside it selects and the mark at its end resolves
38
+ // to nothing, which reads as the click having missed.
39
+ // Overlays are unaffected — `attachEdgeOverlays` skips `ig-terminal` on the
40
+ // CLASS, before it ever looks at an identity, precisely so an overlay never
41
+ // draws over one of the four redundant channels.
42
+ const common = { class: 'ig-terminal', 'data-edge': field, 'data-ig-group': identity, transform };
35
43
  // Every dimension is theme data. A marker sized by a literal would stay put
36
44
  // while a host scaled the type around it, and the shape channel the
37
45
  // colour-blind-safety claim leans on is exactly what would stop reading.
@@ -80,6 +88,23 @@ function edgePaths(edge, geometry, theme) {
80
88
  const base = {
81
89
  class: 'ig-edge',
82
90
  'data-edge': edge.field,
91
+ // THE SAME POINTER IDENTITY THE CONNECTOR ALREADY PUBLISHES. A
92
+ // `together-with` connector has carried `edgeIdentity(...)` on
93
+ // `data-ig-group` since it became a click target; every OTHER relationship
94
+ // was drawn as a bare path with no identity at all, so `keyAt` walked past
95
+ // it, found the canvas `<g>`, and a click on a `blocked-by` line either
96
+ // named an unrelated issue or resolved to nothing. Four of the five
97
+ // relationships could not be pointed at on the canvas.
98
+ //
99
+ // `data-ig-GROUP`, not `data-ig-key`, for the reason that attribute exists:
100
+ // the focus index takes one element per key, and an edge is not a
101
+ // navigation target — `navigable` lists issues. Pointer identity and focus
102
+ // identity are different questions, and this one is only the first.
103
+ //
104
+ // `edgeIdentity` is the SAME function the store derives `StoredEdge.id`
105
+ // with, so what `onSelect` hands the host is a key `findEdge` resolves
106
+ // rather than a shape it has to be taught.
107
+ 'data-ig-group': edgeIdentity(edge.field, edge.from, edge.to),
83
108
  d: geometry.d,
84
109
  'stroke-dasharray': dash,
85
110
  role: 'img',
@@ -401,7 +426,7 @@ export function graphScene(document, rawOptions = {}) {
401
426
  // See `linearScene` — the same rule, applied before the canvas is laid out.
402
427
  const stations = stationsOf(document);
403
428
  const options = atStations(rawOptions, stations);
404
- const theme = options.theme ?? defaultTheme;
429
+ const theme = resolveTheme(options.theme);
405
430
  const layout = layoutGraph(document, theme);
406
431
  const nodeCount = layout.nodes.size;
407
432
  const inline = document.order.slots.filter((slot) => !isFooterSlot(slot));
@@ -549,7 +574,7 @@ export function graphScene(document, rawOptions = {}) {
549
574
  if (geometry === null)
550
575
  continue;
551
576
  edgeLayers.push(...edgePaths(edge, geometry, theme));
552
- const marker = terminalMarker(treatmentFor(edge.field).terminal, geometry, edge.field, theme);
577
+ const marker = terminalMarker(treatmentFor(edge.field).terminal, geometry, edge.field, edgeIdentity(edge.field, edge.from, edge.to), theme);
553
578
  if (marker !== null)
554
579
  edgeLayers.push(marker);
555
580
  }
@@ -580,18 +605,45 @@ export function graphScene(document, rawOptions = {}) {
580
605
  role: 'img',
581
606
  'aria-label': `${members.join(' and ')} share one rank`,
582
607
  }));
583
- for (let index = 1; index < members.length; index += 1) {
584
- const previous = layout.nodes.get(members[index - 1]);
585
- const current = layout.nodes.get(members[index]);
586
- if (previous === undefined || current === undefined)
608
+ const inUnit = new Set(members);
609
+ for (const edge of document.edges) {
610
+ // ONE CONNECTOR PER DECLARED EDGE, NOT ONE PER ADJACENT PAIR. Walking
611
+ // the member list pairwise assumed a group is written as a chain — but
612
+ // a writer joins one by pointing at ANY existing member (§4.3.7), so
613
+ // `2 together-with 1` and `3 together-with 1` is an ordinary star. That
614
+ // walk drew a `2`–`3` connector for a relationship the document does
615
+ // not contain, so the identity it published resolved to no
616
+ // `StoredEdge`, while the real `1`–`3` edge got no connector at all.
617
+ // Reading the edges themselves cannot invent one and cannot miss one.
618
+ if (edge.field !== 'together-with')
587
619
  continue;
588
- enclosures.push(svg('line', {
620
+ if (!inUnit.has(edge.from) || !inUnit.has(edge.to))
621
+ continue;
622
+ const d = connectorPath(layout, members, edge.from, edge.to, theme);
623
+ if (d === null)
624
+ continue;
625
+ enclosures.push(svg('path', {
589
626
  class: 'ig-connector',
590
- 'data-ig-group': lead,
591
- x1: previous.x + previous.width / 2,
592
- y1: previous.y + previous.height,
593
- x2: current.x + current.width / 2,
594
- y2: current.y,
627
+ fill: 'none',
628
+ // THE PAIR'S OWN IDENTITY, NOT THE SLOT'S. Every connector in a
629
+ // unit used to carry the lead, so a three-member unit drew two
630
+ // marks a pointer could not tell apart and a click on either named
631
+ // the unit — the one thing an editor cannot delete, retype or
632
+ // report a write against. `edgeIdentity` is the SAME function the
633
+ // store derives `StoredEdge.id` with, so what `onSelect` hands the
634
+ // host is a key `findEdge` resolves rather than a shape it has to
635
+ // be taught.
636
+ //
637
+ // STILL `data-ig-group`, and that is not an oversight about the
638
+ // "addressable via the key scheme" wording. Decoration announces
639
+ // itself on this attribute precisely so it stays OUT of the focus
640
+ // index — one element per key, or `focus()` lands on a
641
+ // non-tabbable mark instead of the node it decorates. `keyAt`
642
+ // reads both attributes for POINTER identity, which is the
643
+ // question a click asks, so the connector is addressable without
644
+ // re-opening that.
645
+ 'data-ig-group': edgeIdentity(edge.field, edge.from, edge.to),
646
+ d,
595
647
  }));
596
648
  }
597
649
  }
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/projections/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/projections/graph.ts"],"names":[],"mappings":"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"}
package/dist/render.js CHANGED
@@ -12,7 +12,7 @@ import { renderMarkup } from "./element.js";
12
12
  import { graphScene } from "./projections/graph.js";
13
13
  import { linearScene } from "./projections/linear.js";
14
14
  import { treeScene } from "./projections/tree.js";
15
- import { defaultTheme, themeCss } from "./theme.js";
15
+ import { resolveTheme, themeCss } from "./theme.js";
16
16
  import { viewerStylesheet } from "./styles.js";
17
17
  /** Build the scene for one projection. Exported so `mount` reuses it exactly. */
18
18
  export function sceneFor(document, projection, options) {
@@ -33,7 +33,7 @@ export function sceneFor(document, projection, options) {
33
33
  */
34
34
  export function renderViewer(input, options = {}) {
35
35
  const { document, diagnostics } = normalizeDocument(input);
36
- const theme = options.theme ?? defaultTheme;
36
+ const theme = resolveTheme(options.theme);
37
37
  const scene = sceneFor(document, options.projection ?? 'linear', { ...options, theme });
38
38
  return {
39
39
  markup: renderMarkup(scene.root),