@issuegraph/viewer 0.2.0 → 0.5.0

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.
Files changed (52) hide show
  1. package/README.md +39 -2
  2. package/dist/document.d.ts +286 -3
  3. package/dist/document.d.ts.map +1 -1
  4. package/dist/document.js +247 -1
  5. package/dist/document.js.map +1 -1
  6. package/dist/element.d.ts +11 -0
  7. package/dist/element.d.ts.map +1 -1
  8. package/dist/element.js.map +1 -1
  9. package/dist/index.d.ts +6 -6
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +30 -4
  12. package/dist/index.js.map +1 -1
  13. package/dist/layout.d.ts +51 -50
  14. package/dist/layout.d.ts.map +1 -1
  15. package/dist/layout.js +364 -168
  16. package/dist/layout.js.map +1 -1
  17. package/dist/mount.d.ts +13 -0
  18. package/dist/mount.d.ts.map +1 -1
  19. package/dist/mount.js +94 -3
  20. package/dist/mount.js.map +1 -1
  21. package/dist/navigation.d.ts +14 -0
  22. package/dist/navigation.d.ts.map +1 -1
  23. package/dist/navigation.js +20 -0
  24. package/dist/navigation.js.map +1 -1
  25. package/dist/parts.d.ts +338 -1
  26. package/dist/parts.d.ts.map +1 -1
  27. package/dist/parts.js +899 -30
  28. package/dist/parts.js.map +1 -1
  29. package/dist/projections/graph.d.ts +10 -0
  30. package/dist/projections/graph.d.ts.map +1 -1
  31. package/dist/projections/graph.js +413 -311
  32. package/dist/projections/graph.js.map +1 -1
  33. package/dist/projections/linear.d.ts +90 -0
  34. package/dist/projections/linear.d.ts.map +1 -1
  35. package/dist/projections/linear.js +220 -28
  36. package/dist/projections/linear.js.map +1 -1
  37. package/dist/projections/tree.d.ts.map +1 -1
  38. package/dist/projections/tree.js +29 -3
  39. package/dist/projections/tree.js.map +1 -1
  40. package/dist/styles.d.ts +10 -1
  41. package/dist/styles.d.ts.map +1 -1
  42. package/dist/styles.js +825 -68
  43. package/dist/styles.js.map +1 -1
  44. package/dist/theme.d.ts +41 -10
  45. package/dist/theme.d.ts.map +1 -1
  46. package/dist/theme.js +265 -11
  47. package/dist/theme.js.map +1 -1
  48. package/dist/vocabulary.d.ts +39 -0
  49. package/dist/vocabulary.d.ts.map +1 -1
  50. package/dist/vocabulary.js +27 -0
  51. package/dist/vocabulary.js.map +1 -1
  52. package/package.json +2 -2
package/dist/document.js CHANGED
@@ -299,6 +299,237 @@ function normalizeCycles(cycles, byKey, diagnostics) {
299
299
  });
300
300
  return kept;
301
301
  }
302
+ function isCount(value) {
303
+ return Number.isInteger(value) && value >= 0;
304
+ }
305
+ /**
306
+ * The strings a condition CANNOT be drawn without, per kind.
307
+ *
308
+ * An exhaustive switch rather than a lookup table, because the arms carry
309
+ * different field names and a table would have to reach them through an index
310
+ * the union does not offer. It is the same shape `sceneFor` uses for the
311
+ * projections: one interpreter, one line per arm, and the compiler is what
312
+ * proves a new arm was not forgotten.
313
+ */
314
+ function requiredTextOf(condition) {
315
+ switch (condition.kind) {
316
+ case 'importing':
317
+ return [condition.headline, condition.caution, condition.progress];
318
+ case 'empty':
319
+ return [condition.headline, condition.reason, condition.assurance];
320
+ case 'error':
321
+ return [condition.headline, condition.assurance];
322
+ }
323
+ }
324
+ /**
325
+ * A host-supplied href, through the SAME allowlist a deep link goes through.
326
+ *
327
+ * Validated here rather than where it is drawn, for the reason the allowlist's
328
+ * own comment gives: a second scheme check somewhere else is a second answer
329
+ * free to drift from this one, and the miss it publishes is the bug the check
330
+ * exists to stop. The label survives a refused href — a line that loses its
331
+ * link still says what it says.
332
+ */
333
+ function safeHref(href, where, diagnostics) {
334
+ if (href === undefined || href === '')
335
+ return undefined;
336
+ if (isLinkable(href))
337
+ return href;
338
+ diagnostics.push(`${where} href ${href} is not a linkable scheme and was dropped`);
339
+ return undefined;
340
+ }
341
+ /**
342
+ * A label a host actually said, or nothing.
343
+ *
344
+ * TRIMMED, LIKE EVERY REQUIRED STRING BESIDE IT. A control is drawn only for a
345
+ * host that named one, and `' '` is not a name — it renders a button with a
346
+ * published command and no accessible name, which is the "control nobody
347
+ * wired" failure arriving through the one predicate that compared for exact
348
+ * emptiness instead of asking whether anything was said.
349
+ */
350
+ function spoken(label) {
351
+ return label === undefined || label.trim() === '' ? undefined : label;
352
+ }
353
+ /** A condition the viewer can draw, or nothing plus a diagnostic naming what was missing. */
354
+ function normalizeCondition(condition, diagnostics) {
355
+ if (requiredTextOf(condition).some((text) => text.trim() === '')) {
356
+ diagnostics.push(`${condition.kind} condition has an empty required string and was dropped whole`);
357
+ return undefined;
358
+ }
359
+ if (condition.kind !== 'empty' || condition.action === undefined)
360
+ return Object.freeze({ ...condition });
361
+ if (spoken(condition.action.label) === undefined) {
362
+ diagnostics.push('condition action has no label and was dropped');
363
+ const { action: _unnamed, ...rest } = condition;
364
+ return Object.freeze(rest);
365
+ }
366
+ const href = safeHref(condition.action.href, 'condition action', diagnostics);
367
+ // A REFUSED LINK IS NOT A COMMAND. An action carrying an `href` is a host
368
+ // that means to ROUTE; keeping it with the URL stripped hands it to the
369
+ // notice as a plain action, which publishes `review-pick-order` — a command
370
+ // that host never wired, and one another listener may act on instead. That is
371
+ // the "control nobody wired" failure arriving through the validation meant to
372
+ // prevent an unsafe one. So the whole action goes, and the state keeps its
373
+ // sentences: an action a reader cannot safely be given is better absent.
374
+ if (condition.action.href !== undefined && condition.action.href !== '' && href === undefined) {
375
+ const { action: _refused, ...rest } = condition;
376
+ return Object.freeze(rest);
377
+ }
378
+ return Object.freeze({
379
+ ...condition,
380
+ action: Object.freeze({
381
+ label: condition.action.label,
382
+ ...(href === undefined ? {} : { href }),
383
+ }),
384
+ });
385
+ }
386
+ /**
387
+ * The adoption fact, validated — and REPORTED ON when it contradicts the
388
+ * document in hand.
389
+ *
390
+ * Reporting is not deriving, and the difference is what the viewer can see.
391
+ * `OrderCounts` counts a runner's world this layer has no view of, so it is
392
+ * taken on trust. How many issues declare a relationship is a property of the
393
+ * very edges that were passed here, so a header reading `0 of 48 declare
394
+ * relationships` above rows carrying `blocked-by` badges is a contradiction
395
+ * this layer holds the evidence for. It still draws what it was given — the
396
+ * host owns the number — and says so in a diagnostic, exactly as it does for a
397
+ * dangling edge.
398
+ */
399
+ /**
400
+ * The floors this document puts under an adoption count.
401
+ *
402
+ * ONE PLACE, OVER BOTH MEMBERS. Every issue the document carries is an issue
403
+ * the repository has, and every distinct carrier is an issue that declares —
404
+ * so each member has a floor, and neither can be below it however small a slice
405
+ * this document is of the backlog. Stating them together is what stopped this
406
+ * arriving a comparison at a time: `declaring === 0` was checked, then
407
+ * `declaring < carriers`, and `total` was next.
408
+ */
409
+ const ADOPTION_FLOORS = Object.freeze([
410
+ { member: 'declaring', floor: (bounds) => bounds.carriers, says: 'already carries' },
411
+ { member: 'total', floor: (bounds) => bounds.issues, says: 'already holds' },
412
+ ]);
413
+ function normalizeAdoption(adoption, bounds, diagnostics) {
414
+ let counts;
415
+ if (adoption.counts !== undefined) {
416
+ const { declaring, total } = adoption.counts;
417
+ // `declaring <= total` NEEDS NO DOCUMENT TO REFUTE IT. `50 of 48` is
418
+ // unsatisfiable on its face, and a header that prints it is stating
419
+ // something no repository could ever be — so it is refused with the
420
+ // out-of-range members rather than reported beside them. The floors below
421
+ // are the other kind: possible numbers this document happens to disprove,
422
+ // so they are reported and still drawn.
423
+ if (isCount(declaring) && isCount(total) && declaring <= total)
424
+ counts = Object.freeze({ declaring, total });
425
+ else
426
+ diagnostics.push('adoption counts are not two non-negative integers with declaring no greater than total, and were dropped whole');
427
+ }
428
+ if (counts !== undefined) {
429
+ for (const rule of ADOPTION_FLOORS) {
430
+ const floor = rule.floor(bounds);
431
+ if (counts[rule.member] >= floor)
432
+ continue;
433
+ diagnostics.push(`adoption states ${String(counts.declaring)} of ${String(counts.total)} declare relationships, but this document ${rule.says} ${String(floor)}`);
434
+ }
435
+ }
436
+ let note;
437
+ if (adoption.note !== undefined) {
438
+ if (adoption.note.text.trim() === '')
439
+ diagnostics.push('adoption note has empty text and was dropped whole');
440
+ else {
441
+ const link = adoption.note.link;
442
+ const href = link === undefined ? undefined : safeHref(link.href, 'adoption note', diagnostics);
443
+ note = Object.freeze({
444
+ text: adoption.note.text,
445
+ ...(link === undefined || href === undefined || link.text.trim() === ''
446
+ ? {}
447
+ : { link: Object.freeze({ text: link.text, href }) }),
448
+ ...(spoken(adoption.note.dismiss) === undefined ? {} : { dismiss: adoption.note.dismiss }),
449
+ });
450
+ }
451
+ }
452
+ if (counts === undefined && note === undefined)
453
+ return undefined;
454
+ return Object.freeze({
455
+ ...(counts === undefined ? {} : { counts }),
456
+ ...(note === undefined ? {} : { note }),
457
+ });
458
+ }
459
+ /**
460
+ * The host facts, validated the way every other input is: a value the viewer
461
+ * cannot draw is dropped and said so, never thrown on and never rendered as a
462
+ * value it is not.
463
+ *
464
+ * A RUNNING KEY MUST BE AN ISSUE THIS DOCUMENT CARRIES, because the NOW row is
465
+ * built from that issue's title and identity — a key with no issue has no row
466
+ * to draw. `counts` drops WHOLE when one member is bad: a tally with one of its
467
+ * numbers missing would print a sentence that adds up to nothing.
468
+ */
469
+ function normalizeHost(host, byKey, bounds, diagnostics) {
470
+ const running = [];
471
+ const seen = new Set();
472
+ for (const job of host?.running ?? []) {
473
+ if (!byKey.has(job.key)) {
474
+ diagnostics.push(`running job names ${job.key}, which this document does not carry, and was dropped`);
475
+ continue;
476
+ }
477
+ if (seen.has(job.key)) {
478
+ diagnostics.push(`running job names ${job.key} twice; the repeat was dropped`);
479
+ continue;
480
+ }
481
+ seen.add(job.key);
482
+ running.push(Object.freeze({ ...job }));
483
+ }
484
+ let concurrencyCap;
485
+ if (host?.concurrencyCap !== undefined) {
486
+ if (isCount(host.concurrencyCap))
487
+ concurrencyCap = host.concurrencyCap;
488
+ else
489
+ diagnostics.push(`concurrency cap ${String(host.concurrencyCap)} is not a non-negative integer and was dropped`);
490
+ }
491
+ let counts;
492
+ if (host?.counts !== undefined) {
493
+ const { ranked, readyNow, held } = host.counts;
494
+ if (isCount(ranked) && isCount(readyNow) && isCount(held))
495
+ counts = Object.freeze({ ranked, readyNow, held });
496
+ else
497
+ diagnostics.push('order counts carry a value that is not a non-negative integer and were dropped whole');
498
+ }
499
+ let freshness;
500
+ if (host?.freshness !== undefined) {
501
+ if (host.freshness.asOf.trim() === '')
502
+ diagnostics.push('freshness has an empty asOf stamp and was dropped whole');
503
+ else
504
+ freshness = Object.freeze({ ...host.freshness });
505
+ }
506
+ const condition = host?.condition === undefined ? undefined : normalizeCondition(host.condition, diagnostics);
507
+ // REPORTED, NOT CORRECTED. A host that says nothing is eligible over an order
508
+ // full of slots is stating something this layer can see is not so, and the
509
+ // panel would then carry a notice contradicting the rows beneath it. The
510
+ // number and the sentence are still the host's; the disagreement is a fact
511
+ // about the DATA, which is what a diagnostic is for.
512
+ if (condition?.kind === 'empty' && bounds.slots > 0) {
513
+ diagnostics.push(`an empty condition was stated over an order carrying ${String(bounds.slots)} slots`);
514
+ }
515
+ const adoption = host?.adoption === undefined ? undefined : normalizeAdoption(host.adoption, bounds, diagnostics);
516
+ // EMPTY IS ABSENT for both, exactly as `Freshness.asOf` treats an empty
517
+ // stamp: a header member drawn from an empty string is a chip with nothing in
518
+ // it, which reads as a fact the host failed to state rather than one it chose
519
+ // not to.
520
+ const identity = host?.identity === undefined || host.identity === '' ? undefined : host.identity;
521
+ const firstPass = host?.firstPass === undefined || host.firstPass === '' ? undefined : host.firstPass;
522
+ return Object.freeze({
523
+ ...(identity === undefined ? {} : { identity }),
524
+ ...(firstPass === undefined ? {} : { firstPass }),
525
+ ...(concurrencyCap === undefined ? {} : { concurrencyCap }),
526
+ ...(counts === undefined ? {} : { counts }),
527
+ running: Object.freeze(running),
528
+ ...(freshness === undefined ? {} : { freshness }),
529
+ ...(condition === undefined ? {} : { condition }),
530
+ ...(adoption === undefined ? {} : { adoption }),
531
+ });
532
+ }
302
533
  /**
303
534
  * Read a document into the shape every projection consumes.
304
535
  *
@@ -339,8 +570,22 @@ export function normalizeDocument(input) {
339
570
  placed.add(exclusion.key);
340
571
  return true;
341
572
  });
573
+ // THE SHAPE THE HOST'S CLAIMS ARE READ AGAINST — the KEPT edges and slots, so a
574
+ // contradiction is reported against what will actually be drawn rather than
575
+ // against what was passed in and then dropped.
576
+ //
577
+ // CARRIERS, NOT EDGES. An edge is DECLARED by one of its ends — the format
578
+ // writes the field on one issue pointing at another — so two edges written by
579
+ // one issue are one declaring issue, and counting edges would report a
580
+ // contradiction where there is none.
581
+ const carriers = new Set(edges.map((edge) => edge.from));
582
+ const host = normalizeHost(input.host, byKey, { carriers: carriers.size, issues: issues.length, slots: slots.length }, diagnostics);
583
+ // A RUNNING ISSUE IS DRAWN — as the NOW row — so it is not "in no slot", even
584
+ // when the host put it in none. Counting it would make the isolated chip
585
+ // state a falsehood about a row the reader can see above the order.
586
+ const running = new Set(host.running.map((job) => job.key));
342
587
  const isolated = issues
343
- .filter((issue) => !placed.has(issue.key) && (edgesOf.get(issue.key) ?? []).length === 0)
588
+ .filter((issue) => !placed.has(issue.key) && !running.has(issue.key) && (edgesOf.get(issue.key) ?? []).length === 0)
344
589
  .map((issue) => issue.key);
345
590
  const cycles = normalizeCycles(input.cycles, byKey, diagnostics);
346
591
  return Object.freeze({
@@ -353,6 +598,7 @@ export function normalizeDocument(input) {
353
598
  edgesOf,
354
599
  isolated: Object.freeze(isolated),
355
600
  outOfSetOrigins,
601
+ host,
356
602
  }),
357
603
  diagnostics: Object.freeze(diagnostics),
358
604
  });
@@ -1 +1 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"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"}
package/dist/element.d.ts CHANGED
@@ -69,6 +69,17 @@ export interface SpecElement extends SpecNode {
69
69
  * to say so by omitting it rather than by throwing.
70
70
  */
71
71
  focus?(): void;
72
+ /**
73
+ * Optional for the same reason `focus` is: building a tree never needs it,
74
+ * and only the shell's projection switch does. §16f requires
75
+ * the other view to bring the surviving selection into view, and where an
76
+ * implementation cannot scroll — a server render, a test double — omitting it
77
+ * degrades to "the selection survives", which is the half that matters.
78
+ */
79
+ scrollIntoView?(options?: {
80
+ block?: string;
81
+ inline?: string;
82
+ }): void;
72
83
  }
73
84
  export interface MaterializeOptions {
74
85
  readonly ns?: 'svg' | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../src/element.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAErE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC;IACjE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,CAAC;CACtD;AAED,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;AAE7C,eAAO,MAAM,aAAa,+BAA+B,CAAC;AAiD1D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAyCvF;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;IACxC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;IAC7D,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;CACxC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;IACnC;;;;OAIG;IACH,KAAK,CAAC,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACtF;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,WAAW,EACjB,OAAO,GAAE,kBAAuB,GAC/B,WAAW,CAwDb;AAED,qFAAqF;AACrF,wBAAgB,OAAO,CACrB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAC1C,QAAQ,GAAE,SAAS,CAAC,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,EAAO,GAC/D,WAAW,CAQb;AAED,sCAAsC;AACtC,wBAAgB,GAAG,CACjB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAC1C,QAAQ,GAAE,SAAS,CAAC,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,EAAO,GAC/D,WAAW,CAEb"}
1
+ {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../src/element.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAErE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC;IACjE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,CAAC;CACtD;AAED,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;AAE7C,eAAO,MAAM,aAAa,+BAA+B,CAAC;AAiD1D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAyCvF;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;IACxC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;IAC7D,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;CACxC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;IACnC;;;;OAIG;IACH,KAAK,CAAC,IAAI,IAAI,CAAC;IACf;;;;;;OAMG;IACH,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACtE;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACtF;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,WAAW,EACjB,OAAO,GAAE,kBAAuB,GAC/B,WAAW,CAwDb;AAED,qFAAqF;AACrF,wBAAgB,OAAO,CACrB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAC1C,QAAQ,GAAE,SAAS,CAAC,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,EAAO,GAC/D,WAAW,CAQb;AAED,sCAAsC;AACtC,wBAAgB,GAAG,CACjB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAC1C,QAAQ,GAAE,SAAS,CAAC,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,EAAO,GAC/D,WAAW,CAEb"}
@@ -1 +1 @@
1
- {"version":3,"file":"element.js","sourceRoot":"","sources":["../src/element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"element.js","sourceRoot":"","sources":["../src/element.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * The innermost layer of the Issuegraph UI, and the whole of its contract:
5
5
  *
6
- * in {issues, edges, order, cycles} + a projection choice
6
+ * in {issues, edges, order, cycles, host?} + a projection choice
7
7
  * out onSelect, onHover
8
8
  * never fetching, mutation, auth, persistence, or a host's vocabulary
9
9
  *
@@ -32,7 +32,7 @@
32
32
  *
33
33
  * @see https://github.com/autnmy/issuegraph/blob/main/SPEC.md
34
34
  */
35
- export type { HoldFamily, NormalizeResult, NormalizedDocument, RankProvenance, ViewerCycle, ViewerDocument, ViewerEdge, ViewerExclusion, ViewerHold, ViewerIssue, ViewerOrder, ViewerSlot, } from './document.ts';
35
+ export type { Adoption, ConditionAction, Disagreement, Freshness, GraphHold, HoldFamily, HostFacts, NormalizeResult, NormalizedDocument, NormalizedHostFacts, OrderCounts, PreviewOnly, RankProvenance, RunningJob, TrackerHold, ViewerCondition, ViewerCycle, ViewerDocument, ViewerEdge, ViewerExclusion, ViewerHold, ViewerIssue, ViewerOrder, ViewerSlot, } from './document.ts';
36
36
  export { normalizeDocument } from './document.ts';
37
37
  export type { Projection, Scene } from './scene.ts';
38
38
  export { KEY_ATTRIBUTE } from './scene.ts';
@@ -42,13 +42,13 @@ export type { MountElement, MountEvent, MountOptions, ViewerHandle, } from './mo
42
42
  export { mountViewer } from './mount.ts';
43
43
  export type { NavigationCommand, NavigationResult, NavigationState } from './navigation.ts';
44
44
  export { initialNavigationState, navigate, reconcile } from './navigation.ts';
45
- export type { ColorToken, MetricToken, Theme, ThemeOverride, TypeToken, } from './theme.ts';
46
- export { resolveTheme, COLOR_TOKENS, METRIC_TOKENS, THEME_TOKENS, TYPE_TOKENS, defaultTheme, extendTheme, themeCss, } from './theme.ts';
45
+ export type { ColorToken, EffectToken, MetricToken, Theme, ThemeOverride, TypeToken, } from './theme.ts';
46
+ export { resolveTheme, COLOR_TOKENS, EFFECT_TOKENS, METRIC_TOKENS, THEME_TOKENS, TYPE_TOKENS, defaultTheme, extendTheme, themeCss, } from './theme.ts';
47
47
  export { viewerStylesheet } from './styles.ts';
48
48
  export type { EdgeDash, EdgeTerminal, EdgeTreatment, OrderingEffect } from './vocabulary.ts';
49
- export { EDGE_TREATMENTS, dashArrayFor, treatmentFor } from './vocabulary.ts';
49
+ export { EDGE_TREATMENTS, dashArrayFor, labelFrom, treatmentFor } from './vocabulary.ts';
50
50
  export { CLUSTER_ONLY_BUDGET, GRAPH_NODE_BUDGET } from './projections/graph.ts';
51
- export { ROW_BADGE_BUDGET } from './parts.ts';
51
+ export { COMMAND_ATTRIBUTE, ROW_BADGE_BUDGET, glyphAndLabel, hiddenGlyph, identity, provenanceClause, } from './parts.ts';
52
52
  export type { Cluster } from './clusters.ts';
53
53
  export { clustersOf } from './clusters.ts';
54
54
  export type { AttrValue, ElementSpec, SpecChild } from './element.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,YAAY,EACV,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,cAAc,EACd,UAAU,EACV,eAAe,EACf,UAAU,EACV,WAAW,EACX,WAAW,EACX,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,YAAY,EACV,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE9E,YAAY,EACV,UAAU,EACV,WAAW,EACX,KAAK,EACL,aAAa,EACb,SAAS,GACV,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EACnB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,GACT,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE9E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,YAAY,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,YAAY,EACV,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,cAAc,EACd,UAAU,EACV,WAAW,EACX,eAAe,EACf,WAAW,EACX,cAAc,EACd,UAAU,EACV,eAAe,EACf,UAAU,EACV,WAAW,EACX,WAAW,EACX,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,YAAY,EACV,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE9E,YAAY,EACV,UAAU,EACV,WAAW,EACX,WAAW,EACX,KAAK,EACL,aAAa,EACb,SAAS,GACV,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EACnB,YAAY,EACZ,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,GACT,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAW7F,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEzF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAiBhF,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,QAAQ,EACR,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * The innermost layer of the Issuegraph UI, and the whole of its contract:
5
5
  *
6
- * in {issues, edges, order, cycles} + a projection choice
6
+ * in {issues, edges, order, cycles, host?} + a projection choice
7
7
  * out onSelect, onHover
8
8
  * never fetching, mutation, auth, persistence, or a host's vocabulary
9
9
  *
@@ -37,11 +37,37 @@ export { KEY_ATTRIBUTE } from "./scene.js";
37
37
  export { renderViewer } from "./render.js";
38
38
  export { mountViewer } from "./mount.js";
39
39
  export { initialNavigationState, navigate, reconcile } from "./navigation.js";
40
- export { resolveTheme, COLOR_TOKENS, METRIC_TOKENS, THEME_TOKENS, TYPE_TOKENS, defaultTheme, extendTheme, themeCss, } from "./theme.js";
40
+ export { resolveTheme, COLOR_TOKENS, EFFECT_TOKENS, METRIC_TOKENS, THEME_TOKENS, TYPE_TOKENS, defaultTheme, extendTheme, themeCss, } from "./theme.js";
41
41
  export { viewerStylesheet } from "./styles.js";
42
- export { EDGE_TREATMENTS, dashArrayFor, treatmentFor } from "./vocabulary.js";
42
+ // `labelFrom` is on the surface for the same reason `treatmentFor` beside it
43
+ // is, and it carries more than a lookup: it is the ONE construction of "which
44
+ // verb, read from which end". §16's rail badge and §17a's inspector row draw
45
+ // the same edge one zone apart on one screen, so a consumer left to write
46
+ // `outgoing || symmetric ? label : reverseLabel` itself has a second copy of an
47
+ // expression whose failure mode is not a missing word but an INVERTED one — an
48
+ // inbound `duplicate-of` worded forwards asserts that the reader's subject is
49
+ // the duplicate when the other issue is. Publishing the treatment's fields and
50
+ // withholding the rule that reads them is what put two copies of it here once
51
+ // already.
52
+ export { EDGE_TREATMENTS, dashArrayFor, labelFrom, treatmentFor } from "./vocabulary.js";
43
53
  export { CLUSTER_ONLY_BUDGET, GRAPH_NODE_BUDGET } from "./projections/graph.js";
44
- export { ROW_BADGE_BUDGET } from "./parts.js";
54
+ // `COMMAND_ATTRIBUTE` is on the surface because a host that reads the DOM rather
55
+ // than the callback needs the attribute name, and knowing it by inspection is
56
+ // how a consumer ends up with a literal that drifts.
57
+ // `identity`, `provenanceClause`, `glyphAndLabel` and `hiddenGlyph` are on the
58
+ // surface for the EDITOR, which composes all four into §17a's inspector.
59
+ // Reaching them by relative path instead is a package escape
60
+ // `check:isolation` fails, and re-spelling any of them in layer 2 would give
61
+ // one fact two wordings — the identity chip's link rule and the provenance
62
+ // sentence would then be free to drift from the rail's, and a second
63
+ // glyph/word pairing is free to drop the `aria-hidden` that makes the pair
64
+ // accessible at all.
65
+ // TWO PIECES OF ONE RULE, BECAUSE ONE OF THEM ALONE PUBLISHED A COPY. The
66
+ // inspector's `✕` is a glyph with no visible word — its name is on the button
67
+ // it sits in — so given only the pairing, layer 2 wrote the `ig-glyph` class
68
+ // and the `aria-hidden` out by hand: the same duplication, in the same commit
69
+ // that argued against it. `hiddenGlyph` is the half that call site needs.
70
+ export { COMMAND_ATTRIBUTE, ROW_BADGE_BUDGET, glyphAndLabel, hiddenGlyph, identity, provenanceClause, } from "./parts.js";
45
71
  export { clustersOf } from "./clusters.js";
46
72
  export { element, renderMarkup } from "./element.js";
47
73
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAgBH,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAQ3C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAS9E,OAAO,EAAE,YAAY,EACnB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,GACT,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG/C,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE9E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AA4BH,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAQ3C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAU9E,OAAO,EAAE,YAAY,EACnB,YAAY,EACZ,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,GACT,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG/C,6EAA6E;AAC7E,8EAA8E;AAC9E,6EAA6E;AAC7E,0EAA0E;AAC1E,gFAAgF;AAChF,+EAA+E;AAC/E,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,WAAW;AACX,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEzF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChF,iFAAiF;AACjF,8EAA8E;AAC9E,qDAAqD;AACrD,+EAA+E;AAC/E,yEAAyE;AACzE,6DAA6D;AAC7D,6EAA6E;AAC7E,2EAA2E;AAC3E,qEAAqE;AACrE,2EAA2E;AAC3E,qBAAqB;AACrB,0EAA0E;AAC1E,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E;AAC9E,0EAA0E;AAC1E,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,QAAQ,EACR,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
package/dist/layout.d.ts CHANGED
@@ -46,6 +46,15 @@ export interface NodeBox {
46
46
  /** The slot this node belongs to, when it is on the spine. */
47
47
  readonly rank: number | null;
48
48
  readonly held: boolean;
49
+ /**
50
+ * The runner is working this one NOW.
51
+ *
52
+ * §16b gives it the top station on the spine, above rank 1, because "what is
53
+ * running" and "what is next" are the same question asked one step apart —
54
+ * and a NOW row rendered above the canvas, which is what shipped, is off the
55
+ * one line the whole sequence is supposed to read down.
56
+ */
57
+ readonly now?: boolean;
49
58
  }
50
59
  export interface Point {
51
60
  readonly x: number;
@@ -62,22 +71,53 @@ export interface GraphLayout {
62
71
  /** The free vertical channels arcs route through. */
63
72
  readonly leftChannel: number;
64
73
  readonly rightChannel: number;
74
+ /**
75
+ * The x of the spine LINE — the one vertical the whole sequence reads off.
76
+ * Stations are centred on it and the cards sit to its right.
77
+ */
78
+ readonly spineLineX: number;
79
+ /** Where the spine line starts and ends, so it spans the stations and no more. */
80
+ readonly spineTop: number;
81
+ readonly spineBottom: number;
82
+ /** The x each of the three column headings is set at. */
83
+ readonly columnX: Readonly<Record<Column, number>>;
84
+ /**
85
+ * The slot leads the canvas draws NOWHERE — runner-held, and blocking nothing
86
+ * on the spine, so they explain nothing about the order. They are the graph's
87
+ * half of §16a's footer group, and the projection renders them beneath the
88
+ * stage as that group rather than on a column.
89
+ */
90
+ readonly footer: readonly string[];
91
+ /** Whether this layout is the in-column preview or the full-width picture. */
92
+ readonly compact: boolean;
65
93
  }
66
94
  /**
67
- * How wide a drawn label runs, under the same model {@link fitLabel} truncates
68
- * with.
95
+ * How wide a drawn label runs.
69
96
  *
70
- * EXPORTED SO A TEST CAN CHECK THE GEOMETRY WITHOUT RESTATING THE MODEL. The
71
- * overflow invariant used to be asserted with `text.length * --ig-char-width`,
72
- * which is the mono advance at the wrong size and the very assumption #44
73
- * named — so the guard shared the defect it was guarding against. Measuring
74
- * with this checks that the right box got the right label; the wide-glyph
75
- * bound is what checks the model itself, against a number stated outside it.
97
+ * NOTHING TRUNCATES ANY MORE, and this is what replaced the function that did.
98
+ * A node is an HTML card whose title wraps, so the question stopped being "how
99
+ * much of this fits on one line" and became "how many lines does this need" —
100
+ * which is what {@link layoutGraph} asks it, to give a card a height before
101
+ * anything is rendered. `fitLabel` went with the truncation it existed to
102
+ * perform: §16b's acceptance is that nothing truncates that the design draws in
103
+ * full, and a helper that shortens a title had no caller left.
104
+ *
105
+ * IT IS A CEILING, per character class rather than a flat average — see
106
+ * `labelWidth`. A card that reserves slightly too much leaves a gap; one that
107
+ * reserves too little is overlapped by the next rank.
76
108
  */
77
109
  export declare function measureLabel(theme: Theme, label: string): number;
78
- export declare function fitLabel(theme: Theme, label: string, width: number): string;
79
- /** Lay a document out. Pure: coordinates depend only on the document and the theme. */
80
- export declare function layoutGraph(document: NormalizedDocument, theme: Theme): GraphLayout;
110
+ /**
111
+ * Lay a document out. Pure: coordinates depend only on the document, the theme
112
+ * and the size.
113
+ *
114
+ * COMPACT IS A SIZE, NOT A DEGRADED MODE. §16b is explicit that at a settings
115
+ * column's width the arcs and both gutters cannot be drawn legibly, so the
116
+ * in-column case is a spine-only preview with an expand affordance rather than
117
+ * the same picture squeezed. Expressed as a zero-width gutter, so exactly one
118
+ * layout computes both and the spine's own geometry cannot differ between them.
119
+ */
120
+ export declare function layoutGraph(document: NormalizedDocument, theme: Theme, compact?: boolean): GraphLayout;
81
121
  export interface EdgeGeometry {
82
122
  /** The SVG path. Always a quadratic through one of the free channels. */
83
123
  readonly d: string;
@@ -86,44 +126,5 @@ export interface EdgeGeometry {
86
126
  /** Radians. Orients the terminal marker along the path's own tangent. */
87
127
  readonly endAngle: number;
88
128
  }
89
- /**
90
- * The geometry for one edge, derived entirely from the two boxes' bounds.
91
- *
92
- * Returns `null` when either end has no box — which `normalizeDocument` has
93
- * already made impossible for a kept edge, so a `null` here means a caller
94
- * built a layout from a different document than the edge came from. Refusing is
95
- * better than drawing at coordinates nobody computed.
96
- */
97
129
  export declare function edgeGeometry(layout: GraphLayout, edge: ViewerEdge): EdgeGeometry | null;
98
- /**
99
- * The path joining two members of one together unit, clear of every member box.
100
- *
101
- * ONE CONNECTOR PER DECLARED EDGE, which is why this takes two keys rather than
102
- * a position in the member list. A group is joined by pointing at any existing
103
- * member (§4.3.7), so `2 together-with 1` plus `3 together-with 1` is an
104
- * ordinary STAR whose members lay out as three consecutive rows — and a
105
- * connector drawn between adjacent rows would claim a `2`–`3` relationship the
106
- * document never declares while leaving the real `1`–`3` edge undrawable.
107
- *
108
- * TWO ROUTES, and the branch is the whole of it. Members of a slot are placed
109
- * consecutively in one column, so an edge between NEIGHBOURING rows crosses
110
- * only the gap between them and is drawn straight. An edge that spans a row —
111
- * which only a star can produce — would run through the node between them, so
112
- * it is routed out to a lane in the enclosure's own padding. The lane sits left
113
- * of `x`, and every member box in a column starts at exactly `x`, so the
114
- * vertical run is provably outside every occupied x-range rather than merely
115
- * looking clear.
116
- *
117
- * Endpoints come from measured bounds on both routes, per the kit's
118
- * implementation note: a hit target derived from an eyeballed offset drifts the
119
- * first time the type scale moves.
120
- */
121
- export declare function connectorPath(layout: GraphLayout, members: readonly string[], from: string, to: string, theme: Theme): string | null;
122
- /** The box enclosing a together unit's members, padded clear of their bounds. */
123
- export declare function enclosureBounds(layout: GraphLayout, members: readonly string[], theme: Theme): {
124
- x: number;
125
- y: number;
126
- width: number;
127
- height: number;
128
- } | null;
129
130
  //# sourceMappingURL=layout.d.ts.map