@issuegraph/viewer 0.9.1 → 0.11.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.
- package/dist/clusters.d.ts +1 -1
- package/dist/clusters.d.ts.map +1 -1
- package/dist/clusters.js +13 -12
- package/dist/clusters.js.map +1 -1
- package/dist/document.d.ts +27 -0
- package/dist/document.d.ts.map +1 -1
- package/dist/document.js +10 -2
- package/dist/document.js.map +1 -1
- package/dist/element.d.ts +10 -2
- package/dist/element.d.ts.map +1 -1
- package/dist/element.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -1
- package/dist/index.js.map +1 -1
- package/dist/layout.d.ts.map +1 -1
- package/dist/layout.js +7 -2
- package/dist/layout.js.map +1 -1
- package/dist/mount.d.ts +2 -2
- package/dist/mount.d.ts.map +1 -1
- package/dist/mount.js +6 -0
- package/dist/mount.js.map +1 -1
- package/dist/parts.d.ts +0 -7
- package/dist/parts.d.ts.map +1 -1
- package/dist/parts.js +24 -42
- package/dist/parts.js.map +1 -1
- package/dist/projections/graph.d.ts +50 -2
- package/dist/projections/graph.d.ts.map +1 -1
- package/dist/projections/graph.js +140 -49
- package/dist/projections/graph.js.map +1 -1
- package/dist/projections/linear.d.ts +105 -15
- package/dist/projections/linear.d.ts.map +1 -1
- package/dist/projections/linear.js +132 -58
- package/dist/projections/linear.js.map +1 -1
- package/dist/projections/tree.d.ts.map +1 -1
- package/dist/projections/tree.js +17 -4
- package/dist/projections/tree.js.map +1 -1
- package/dist/render.d.ts +5 -0
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js.map +1 -1
- package/dist/scene.d.ts +22 -0
- package/dist/scene.d.ts.map +1 -1
- package/dist/scene.js.map +1 -1
- package/dist/skeleton.d.ts +63 -0
- package/dist/skeleton.d.ts.map +1 -0
- package/dist/skeleton.js +108 -0
- package/dist/skeleton.js.map +1 -0
- package/dist/styles.d.ts.map +1 -1
- package/dist/styles.js +236 -69
- package/dist/styles.js.map +1 -1
- package/package.json +1 -1
|
@@ -18,17 +18,72 @@ import { clusterReach, clusterReachLabel, clustersOf } from "../clusters.js";
|
|
|
18
18
|
import { element, svg } from "../element.js";
|
|
19
19
|
import { edgeGeometry, layoutGraph, } from "../layout.js";
|
|
20
20
|
import { edgeMarkSpecs } from "../marks.js";
|
|
21
|
-
import { adoptionNote, atStations, cardBlocks, caveatBadges, conditionKind, conditionNotice,
|
|
21
|
+
import { adoptionNote, atStations, cardBlocks, caveatBadges, conditionKind, conditionNotice, nowRows, caveatText, edgeBadgeList, emptyState, evidenceBadge, hostHeader, statesItsOwnCause, identity, legend, notReadyBadge, priorityBadge, slotLabel, slotPosition, stationFill, stationsOf, unitBlock, } from "../parts.js";
|
|
22
22
|
import { resolveFocusKey } from "../scene.js";
|
|
23
23
|
import { resolveTheme } from "../theme.js";
|
|
24
24
|
import { dashArrayFor, treatmentFor } from "../vocabulary.js";
|
|
25
|
-
import { asideRow, excludedRow,
|
|
25
|
+
import { asideRow, excludedRow, footerHead, footerRow, isFooterSlot, slotRow, } from "./linear.js";
|
|
26
26
|
/**
|
|
27
|
-
* The node budget, from the design's scale table
|
|
28
|
-
*
|
|
27
|
+
* The node budget, from the design's scale table: the most RELATED issues — the
|
|
28
|
+
* count {@link relatedKeys} answers — the canvas draws. Past it the canvas
|
|
29
|
+
* shows component capsules instead.
|
|
30
|
+
*
|
|
31
|
+
* WHAT IS COUNTED IS THE WHOLE MEANING OF THE NUMBER, and it used to be the
|
|
32
|
+
* wrong thing. The budget compared `layout.nodes.size` — every laid-out card,
|
|
33
|
+
* related or not — while the refusal it triggers says "N related issues are too
|
|
34
|
+
* many to draw here". A day-one repository of 300 issues and no relationships
|
|
35
|
+
* was therefore refused as "300 related issues", with 300 one-issue capsules,
|
|
36
|
+
* and that refusal cost MORE to build than the plain spine it withheld: 293 KB
|
|
37
|
+
* and 6,050 elements against the canvas's 198 KB and 2,451 (issuegraph #133).
|
|
38
|
+
* An issue with no relationship adds a card to the spine and nothing else — no
|
|
39
|
+
* gutter, no arc — which is the same work the list does at any size, so it is
|
|
40
|
+
* not what the budget bounds.
|
|
29
41
|
*/
|
|
30
42
|
export const GRAPH_NODE_BUDGET = 60;
|
|
43
|
+
/**
|
|
44
|
+
* The second threshold, over the same count as {@link GRAPH_NODE_BUDGET}: past
|
|
45
|
+
* this many RELATED issues the refusal lists clusters only, truncated.
|
|
46
|
+
*/
|
|
31
47
|
export const CLUSTER_ONLY_BUDGET = 300;
|
|
48
|
+
/**
|
|
49
|
+
* The issues both budgets count: every issue that is an endpoint of at least
|
|
50
|
+
* one relationship this document keeps.
|
|
51
|
+
*
|
|
52
|
+
* ONE FUNCTION, SO THE RULE LIVES IN ONE PLACE. The canvas compares it against
|
|
53
|
+
* the budgets, the refusal partitions it into capsules — so the count in the
|
|
54
|
+
* heading and the sum of the capsules cannot disagree — and the editor's scale
|
|
55
|
+
* ladder reads it for the same decision, so the workspace's tier and the
|
|
56
|
+
* canvas it narrows to cannot either.
|
|
57
|
+
*
|
|
58
|
+
* WHICH EDGES COUNT: every edge `normalizeDocument` kept, which is every edge
|
|
59
|
+
* this projection draws. Most become an arc between two cards. An edge whose
|
|
60
|
+
* two ends share one card — a `together-with` pair, or any relationship between
|
|
61
|
+
* members of one unit — draws no arc, but it is drawn: as the unit's enclosure,
|
|
62
|
+
* one title per member, and as a chip on the card's badge row. So a unit's
|
|
63
|
+
* members count, each of them, which is also how the capsules have always
|
|
64
|
+
* counted them ("3 issues" for a three-member unit) and what "related issues"
|
|
65
|
+
* says. An edge `normalizeDocument` dropped — dangling, or a `together-with`
|
|
66
|
+
* across two slots — is drawn nowhere and makes nothing related.
|
|
67
|
+
*
|
|
68
|
+
* NOT CYCLES. A cycle is the host's reading OF edges, and it draws no node of
|
|
69
|
+
* its own: on the canvas it is a badge on a card that is already there. A
|
|
70
|
+
* cycle member is counted when it keeps an edge in this document and not
|
|
71
|
+
* otherwise — a slice that carries the member but none of the loop's edges
|
|
72
|
+
* draws it as an ordinary station, so it costs what any unrelated issue costs.
|
|
73
|
+
*
|
|
74
|
+
* NOT RELATIVE TO `compact`. The column draws no arcs, yet the count is the
|
|
75
|
+
* same at either width: the budget is a property of the DOCUMENT, so the
|
|
76
|
+
* preview and the picture its expand affordance opens never disagree about
|
|
77
|
+
* whether this document can be drawn.
|
|
78
|
+
*/
|
|
79
|
+
export function relatedKeys(document) {
|
|
80
|
+
const keys = new Set();
|
|
81
|
+
for (const issue of document.issues) {
|
|
82
|
+
if ((document.edgesOf.get(issue.key) ?? []).length > 0)
|
|
83
|
+
keys.add(issue.key);
|
|
84
|
+
}
|
|
85
|
+
return keys;
|
|
86
|
+
}
|
|
32
87
|
function terminalMarker(terminal, geometry, field, identity, theme) {
|
|
33
88
|
const { end, endAngle } = geometry;
|
|
34
89
|
const degrees = (endAngle * 180) / Math.PI;
|
|
@@ -149,7 +204,9 @@ function nodeCard(document, layout, key, options, focused) {
|
|
|
149
204
|
if (box === undefined)
|
|
150
205
|
return null;
|
|
151
206
|
const issue = document.byKey.get(key);
|
|
152
|
-
|
|
207
|
+
// ONE LOOKUP PER CARD — see `NormalizedDocument.slotByLead` for the scan this
|
|
208
|
+
// replaced and what it cost.
|
|
209
|
+
const slot = document.slotByLead.get(key);
|
|
153
210
|
const members = layout.slotMembers.get(key) ?? [key];
|
|
154
211
|
const exclusion = document.order.excluded.find((candidate) => candidate.key === key);
|
|
155
212
|
const caveats = caveatText(issue);
|
|
@@ -158,7 +215,7 @@ function nodeCard(document, layout, key, options, focused) {
|
|
|
158
215
|
...(caveats === '' ? [] : [caveats]),
|
|
159
216
|
...(exclusion === undefined
|
|
160
217
|
? []
|
|
161
|
-
: [`${treatmentFor('duplicate-of').label} ${exclusion.canonical}
|
|
218
|
+
: [`${treatmentFor('duplicate-of').label} ${exclusion.canonical}, which gets worked instead`]),
|
|
162
219
|
].join(' · ');
|
|
163
220
|
// RENDERED FROM THE CARD'S OWN DESCRIPTION, which is also what the layout
|
|
164
221
|
// counted this card's height from — see `CardBlock`. Built from a second
|
|
@@ -256,7 +313,7 @@ function spineStations(document, layout, theme) {
|
|
|
256
313
|
const box = layout.nodes.get(key);
|
|
257
314
|
if (box === undefined)
|
|
258
315
|
continue;
|
|
259
|
-
const slot = document.
|
|
316
|
+
const slot = document.slotByLead.get(key);
|
|
260
317
|
const fill = slot === undefined ? 'filled' : stationFill(slot);
|
|
261
318
|
// A serialize hold waits on a PEER rather than on a rank above it, and the
|
|
262
319
|
// frame colours that station differently for exactly that reason.
|
|
@@ -374,15 +431,19 @@ function capsuleSpec(cluster) {
|
|
|
374
431
|
* narrows the document, because narrowing IS the host's job in a package that
|
|
375
432
|
* renders exactly what it is given.
|
|
376
433
|
*/
|
|
377
|
-
function refusal(document,
|
|
378
|
-
// THE SAME KEY SET THE COUNT
|
|
379
|
-
// so the component list has to partition `
|
|
380
|
-
// which is how an edge-free over-budget document listed no components
|
|
381
|
-
// under a sentence telling the reader to choose one.
|
|
382
|
-
|
|
434
|
+
function refusal(document, related, mode) {
|
|
435
|
+
// THE SAME KEY SET THE COUNT CAME FROM. The heading's number is `related`'s
|
|
436
|
+
// size, so the component list has to partition `related` or the two disagree
|
|
437
|
+
// — which is how an edge-free over-budget document once listed no components
|
|
438
|
+
// at all under a sentence telling the reader to choose one. It partitioned
|
|
439
|
+
// `layout.nodes` while the budget counted those; since the budget counts
|
|
440
|
+
// related issues, a related issue is the only kind that reaches a capsule,
|
|
441
|
+
// and an issue with no relationship is never listed as a "group" of one.
|
|
442
|
+
const clusters = clustersOf(document, related);
|
|
443
|
+
const nodeCount = related.size;
|
|
383
444
|
const heading = mode === 'capsules'
|
|
384
|
-
? `${String(nodeCount)} related issues
|
|
385
|
-
: `${String(nodeCount)} related issues
|
|
445
|
+
? `${String(nodeCount)} related issues are too many to draw here. The limit is ${String(GRAPH_NODE_BUDGET)}.`
|
|
446
|
+
: `${String(nodeCount)} related issues are far too many to draw, so they are shown as groups.`;
|
|
386
447
|
// THE REFUSAL IS INFORMATIONAL. IT PUBLISHES NO CONTROL — and that is a
|
|
387
448
|
// RESTRUCTURE, not a regression of the round-five finding it answers.
|
|
388
449
|
// That finding offered two remedies: expose an actionable component target,
|
|
@@ -410,14 +471,14 @@ function refusal(document, layout, nodeCount, mode) {
|
|
|
410
471
|
const omitted = clusters.length - shown.length;
|
|
411
472
|
return element('section', { class: 'ig-refusal', role: 'note' }, [
|
|
412
473
|
element('p', {}, [heading]),
|
|
413
|
-
element('ol', { class: 'ig-list', 'aria-label': '
|
|
474
|
+
element('ol', { class: 'ig-list', 'aria-label': 'groups of related issues' }, shown.map((cluster) => capsuleSpec(cluster))),
|
|
414
475
|
omitted > 0
|
|
415
476
|
? element('p', { class: 'ig-refusal-omitted' }, [
|
|
416
|
-
`${String(omitted)}
|
|
477
|
+
`${String(omitted)} more ${omitted === 1 ? 'group is' : 'groups are'} not listed (${String(clusters.length)} in all).`,
|
|
417
478
|
])
|
|
418
479
|
: null,
|
|
419
480
|
element('p', { class: 'ig-refusal-next' }, [
|
|
420
|
-
'
|
|
481
|
+
'The list always shows the full order, however many issues there are.',
|
|
421
482
|
]),
|
|
422
483
|
]);
|
|
423
484
|
}
|
|
@@ -433,27 +494,24 @@ function footerGroup(document, layout, options, focused) {
|
|
|
433
494
|
const entries = footerKeys(document, layout, { ...options, focused });
|
|
434
495
|
if (entries.length === 0)
|
|
435
496
|
return null;
|
|
436
|
-
|
|
437
|
-
|
|
497
|
+
// A SET, so each test is a lookup rather than a scan of the footer — the
|
|
498
|
+
// same membership question, asked once per slot and once per exclusion.
|
|
499
|
+
const inFooter = new Set(layout.footer);
|
|
500
|
+
const slots = document.order.slots.filter((slot) => inFooter.has(slot.lead));
|
|
501
|
+
const excluded = document.order.excluded.filter((exclusion) => inFooter.has(exclusion.key));
|
|
438
502
|
// WHAT THIS GROUP ACTUALLY HOLDS. In the column it also holds every gutter
|
|
439
503
|
// endpoint the compact picture does not draw — an ordinary open blocker, say,
|
|
440
504
|
// which no runner holds and which is worked like anything else — so a heading
|
|
441
505
|
// that named only the runner and the never-worked said something untrue about
|
|
442
506
|
// them.
|
|
443
507
|
const undrawn = entries.length > slots.length + excluded.length;
|
|
444
|
-
const labels = footerLabels(slots);
|
|
445
508
|
return element('section', { class: 'ig-footer' }, [
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
}),
|
|
453
|
-
]),
|
|
454
|
-
labels === '' ? null : element('span', { class: 'ig-footer-labels' }, [labels]),
|
|
455
|
-
]),
|
|
456
|
-
element('ol', { class: 'ig-list', 'aria-label': 'outside the order' }, entries),
|
|
509
|
+
footerHead(entries.length, {
|
|
510
|
+
runner: slots.length > 0,
|
|
511
|
+
neverWorked: excluded.length > 0,
|
|
512
|
+
undrawn,
|
|
513
|
+
}),
|
|
514
|
+
element('ol', { class: 'ig-list', 'aria-label': 'not in the order' }, entries),
|
|
457
515
|
]);
|
|
458
516
|
}
|
|
459
517
|
/**
|
|
@@ -470,7 +528,7 @@ function footerGroup(document, layout, options, focused) {
|
|
|
470
528
|
*/
|
|
471
529
|
function footerKeys(document, layout, options) {
|
|
472
530
|
return layout.footer.map((key) => {
|
|
473
|
-
const slot = document.
|
|
531
|
+
const slot = document.slotByLead.get(key);
|
|
474
532
|
if (slot !== undefined)
|
|
475
533
|
return footerRow(document, slot, options);
|
|
476
534
|
const exclusion = document.order.excluded.find((candidate) => candidate.key === key);
|
|
@@ -486,7 +544,11 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
486
544
|
const options = atStations(rawOptions, stations);
|
|
487
545
|
const theme = resolveTheme(options.theme);
|
|
488
546
|
const layout = layoutGraph(document, theme, options.compact === true);
|
|
547
|
+
// TWO COUNTS, AND THEY ANSWER DIFFERENT QUESTIONS. `nodeCount` is whether
|
|
548
|
+
// there is anything to draw at all; `related` is what the budgets bound —
|
|
549
|
+
// see `relatedKeys` for why those are not the same number.
|
|
489
550
|
const nodeCount = layout.nodes.size;
|
|
551
|
+
const related = relatedKeys(document);
|
|
490
552
|
const inline = document.order.slots.filter((slot) => !isFooterSlot(slot));
|
|
491
553
|
const footerSlots = document.order.slots.filter(isFooterSlot);
|
|
492
554
|
// ── WHICH KEYS CAN HOLD FOCUS IS DERIVED FROM WHAT THIS SCENE WILL DRAW ────
|
|
@@ -511,7 +573,7 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
511
573
|
// footer group that was holding all of them, so the panel came back blank.
|
|
512
574
|
// The question is whether this scene draws anything, and the footer draws.
|
|
513
575
|
const drawsNothing = nodeCount === 0 && layout.footer.length === 0;
|
|
514
|
-
const refused = drawsNothing ||
|
|
576
|
+
const refused = drawsNothing || related.size > GRAPH_NODE_BUDGET;
|
|
515
577
|
// FROM THE SAME RULE THE LIST RENDERS FROM — see `refusalContents`. With a
|
|
516
578
|
// canvas every node is a card and the card owns the tab stop; without one,
|
|
517
579
|
// the list is the whole order UI and its rows do.
|
|
@@ -535,12 +597,19 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
535
597
|
// held no slot, so the keyboard walked the drawing non-monotonically: down
|
|
536
598
|
// the spine, back up to the top, on again.
|
|
537
599
|
const spineFirst = refused ? [] : [...layout.spineOrder];
|
|
538
|
-
|
|
600
|
+
// FIRST OCCURRENCE WINS, through a Set: `indexOf` per entry made this dedupe
|
|
601
|
+
// quadratic in the order's length, for the same answer.
|
|
602
|
+
const ordered = new Set();
|
|
603
|
+
for (const key of [
|
|
539
604
|
...spineFirst,
|
|
540
605
|
...inline.map((slot) => slot.lead),
|
|
541
606
|
...footerSlots.map((slot) => slot.lead),
|
|
542
607
|
...document.order.excluded.map((exclusion) => exclusion.key),
|
|
543
|
-
]
|
|
608
|
+
]) {
|
|
609
|
+
if (focusable.has(key))
|
|
610
|
+
ordered.add(key);
|
|
611
|
+
}
|
|
612
|
+
const focusOrder = [...ordered];
|
|
544
613
|
// ── the lateral axis: ONLY PAIRS WHOSE REVERSE HOLDS ──────────────────────
|
|
545
614
|
//
|
|
546
615
|
// A one-way mapping is not a traversal — focus went out to a gutter node and
|
|
@@ -615,9 +684,13 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
615
684
|
// than on a column, so a set derived from the laid-out nodes alone reached
|
|
616
685
|
// none of them — and in compact mode, where the gutters are not drawn, that
|
|
617
686
|
// is every off-order endpoint the panel still lists.
|
|
687
|
+
// `ordered` IS `focusOrder`'s membership, kept in step with every push, so
|
|
688
|
+
// the test is a lookup where `includes` scanned the whole order per node.
|
|
618
689
|
for (const key of [...layout.nodes.keys(), ...layout.footer]) {
|
|
619
|
-
if (!
|
|
690
|
+
if (!ordered.has(key) && !lateral.has(key) && !represented.has(key)) {
|
|
691
|
+
ordered.add(key);
|
|
620
692
|
focusOrder.push(key);
|
|
693
|
+
}
|
|
621
694
|
}
|
|
622
695
|
}
|
|
623
696
|
// A GUTTER NODE IS REACHABLE SIDEWAYS WITHOUT BEING A POSITION IN THE ORDER,
|
|
@@ -630,7 +703,7 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
630
703
|
// come after a pass that changes the order.
|
|
631
704
|
const navigableKeys = [...focusOrder];
|
|
632
705
|
for (const key of lateral.keys()) {
|
|
633
|
-
if (!
|
|
706
|
+
if (!ordered.has(key))
|
|
634
707
|
navigableKeys.push(key);
|
|
635
708
|
}
|
|
636
709
|
// One rule, shared with `reconcile` and the other projections, so the element
|
|
@@ -651,20 +724,24 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
651
724
|
canvas = null;
|
|
652
725
|
}
|
|
653
726
|
else if (drawsNothing) {
|
|
654
|
-
canvas = emptyState('No
|
|
727
|
+
canvas = emptyState('No relationships yet, so there is nothing to draw.');
|
|
728
|
+
}
|
|
729
|
+
else if (related.size > CLUSTER_ONLY_BUDGET) {
|
|
730
|
+
diagnostics.push(`graph refused: ${String(related.size)} nodes is past the cluster-only budget of ${String(CLUSTER_ONLY_BUDGET)}`);
|
|
731
|
+
canvas = refusal(document, related, 'clusters');
|
|
732
|
+
}
|
|
733
|
+
else if (related.size > GRAPH_NODE_BUDGET) {
|
|
734
|
+
diagnostics.push(`graph refused: ${String(related.size)} nodes is past the node budget of ${String(GRAPH_NODE_BUDGET)}`);
|
|
735
|
+
canvas = refusal(document, related, 'capsules');
|
|
655
736
|
}
|
|
656
737
|
else if (nodeCount === 0) {
|
|
657
738
|
// Nothing to draw ON the canvas, and a footer group beneath it that is the
|
|
658
739
|
// whole panel. No stage, no refusal: the group renders in ordinary flow.
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
canvas =
|
|
664
|
-
}
|
|
665
|
-
else if (nodeCount > GRAPH_NODE_BUDGET) {
|
|
666
|
-
diagnostics.push(`graph refused: ${String(nodeCount)} nodes is past the node budget of ${String(GRAPH_NODE_BUDGET)}`);
|
|
667
|
-
canvas = refusal(document, layout, nodeCount, 'capsules');
|
|
740
|
+
// AFTER THE BUDGETS, because `refused` above is read off the related count
|
|
741
|
+
// alone: in the column every off-order endpoint is in the footer and
|
|
742
|
+
// nothing is laid out, so an over-budget document there has no nodes and
|
|
743
|
+
// still refuses — and the refusal, not this sentence, is what it draws.
|
|
744
|
+
canvas = emptyState('Nothing is in the order yet, so there is nothing to draw.');
|
|
668
745
|
}
|
|
669
746
|
else {
|
|
670
747
|
const edgeLayers = [];
|
|
@@ -767,6 +844,14 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
767
844
|
const root = element('section', {
|
|
768
845
|
class: 'ig-viewer ig-graph',
|
|
769
846
|
'data-projection': 'graph',
|
|
847
|
+
// See `SceneOptions.frame`; stamped on all three roots, because the
|
|
848
|
+
// container that declines the frame does not know which projection it
|
|
849
|
+
// was handed.
|
|
850
|
+
'data-frame': options.frame === false ? 'none' : undefined,
|
|
851
|
+
// See `SceneOptions.dockLegend`; stamped on all three roots, because every
|
|
852
|
+
// projection draws the same legend and the container's scrollport does not
|
|
853
|
+
// change with the projection.
|
|
854
|
+
'data-legend': options.dockLegend === true ? 'docked' : undefined,
|
|
770
855
|
// Stamped on all three roots rather than on the one that draws rows.
|
|
771
856
|
// A projection toggle must not silently drop a host's decision, and
|
|
772
857
|
// the graph carries a footer group of rows of its own. See
|
|
@@ -830,7 +915,7 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
830
915
|
document.isolated.length === 0
|
|
831
916
|
? null
|
|
832
917
|
: element('p', { class: 'ig-count' }, [
|
|
833
|
-
`${String(document.isolated.length)}
|
|
918
|
+
`${String(document.isolated.length)} ${document.isolated.length === 1 ? 'issue has' : 'issues have'} no relationships, so ${document.isolated.length === 1 ? 'it is' : 'they are'} not drawn`,
|
|
834
919
|
]),
|
|
835
920
|
legend(),
|
|
836
921
|
// LAST, because §16h calls it the panel FOOTER and the legend is a footer
|
|
@@ -840,6 +925,12 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
840
925
|
return {
|
|
841
926
|
projection: 'graph',
|
|
842
927
|
root,
|
|
928
|
+
// INLINE, WHATEVER `detachFooter` SAYS. The option exists for a host that
|
|
929
|
+
// virtualizes rows, and nothing virtualizes a graph: the rail that windows
|
|
930
|
+
// the order is always linear, and a canvas draws every node it draws at
|
|
931
|
+
// once. So the footer group stays where the canvas puts it and this field
|
|
932
|
+
// says so. See `SceneOptions.detachFooter`.
|
|
933
|
+
footer: null,
|
|
843
934
|
focusOrder,
|
|
844
935
|
navigable: navigableKeys,
|
|
845
936
|
lateral,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/projections/graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAkB,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhE,OAAO,EAAgB,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAO3F,OAAO,EAAoB,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAIL,YAAY,EACZ,WAAW,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAiB,aAAa,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAEL,YAAY,EACZ,UAAU,EACV,UAAU,EACV,YAAY,EACZ,aAAa,EACb,eAAe,EACf,YAAY,EACZ,OAAO,EACP,UAAU,EACV,aAAa,EACb,UAAU,EACV,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACR,MAAM,EACN,aAAa,EACb,aAAa,EACb,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EAAsC,eAAe,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EAAc,YAAY,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAqB,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAEL,QAAQ,EACR,WAAW,EACX,aAAa,EACb,SAAS,EACT,YAAY,EACZ,OAAO,GACR,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AA8BvC,SAAS,cAAc,CACrB,QAAsB,EACtB,QAAsB,EACtB,KAAgB,EAChB,QAAgB,EAChB,KAAY;IAEZ,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IACnC,MAAM,OAAO,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACrG,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAC5E,sDAAsD;IACtD,4EAA4E;IAC5E,4EAA4E;IAC5E,iDAAiD;IACjD,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAClG,4EAA4E;IAC5E,oEAAoE;IACpE,yEAAyE;IACzE,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAEtD,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,GAAG,CAAC,MAAM,EAAE;gBACjB,GAAG,MAAM;gBACT,CAAC,EAAE,WAAW,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI;gBACvF,IAAI,EAAE,cAAc;aACrB,CAAC,CAAC;QACL,KAAK,eAAe;YAClB,OAAO,GAAG,CAAC,QAAQ,EAAE;gBACnB,GAAG,MAAM;gBACT,EAAE,EAAE,CAAC,IAAI;gBACT,EAAE,EAAE,CAAC;gBACL,CAAC,EAAE,IAAI;gBACP,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,cAAc;aACvB,CAAC,CAAC;QACL,KAAK,KAAK;YACR,OAAO,GAAG,CAAC,MAAM,EAAE;gBACjB,GAAG,MAAM;gBACT,CAAC,EAAE,OAAO,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,EAAE;gBAC7C,MAAM,EAAE,cAAc;gBACtB,IAAI,EAAE,MAAM;aACb,CAAC,CAAC;QACL,KAAK,MAAM,CAAC;QACZ,KAAK,WAAW;YACd,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,SAAS,CAAC,IAAgB,EAAE,QAAsB,EAAE,KAAY;IACvE,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;IAC3D,MAAM,IAAI,GAAG;QACX,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,IAAI,CAAC,KAAK;QACvB,+DAA+D;QAC/D,+DAA+D;QAC/D,2EAA2E;QAC3E,2EAA2E;QAC3E,wEAAwE;QACxE,oEAAoE;QACpE,uDAAuD;QACvD,EAAE;QACF,4EAA4E;QAC5E,kEAAkE;QAClE,2EAA2E;QAC3E,oEAAoE;QACpE,EAAE;QACF,wEAAwE;QACxE,uEAAuE;QACvE,2CAA2C;QAC3C,eAAe,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;QAC7D,CAAC,EAAE,QAAQ,CAAC,CAAC;QACb,kBAAkB,EAAE,IAAI;QACxB,IAAI,EAAE,KAAK;QACX,YAAY,EAAE,KAAK;KACX,CAAC;IAEX,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAChC,uEAAuE;QACvE,6DAA6D;QAC7D,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC5C,OAAO;YACL,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,eAAe,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YACtE,GAAG,CAAC,MAAM,EAAE;gBACV,GAAG,IAAI;gBACP,SAAS,EAAE,eAAe,MAAM,CAAC,MAAM,CAAC,GAAG;gBAC3C,aAAa,EAAE,MAAM;gBACrB,IAAI,EAAE,IAAI;aACX,CAAC;SACH,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,QAAQ,CACf,QAA4B,EAC5B,MAAmB,EACnB,GAAW,EACX,OAAqB,EACrB,OAAsB;IAEtB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IAErF,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,WAAW,GAAG;QAClB,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;QACjD,GAAG,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACpC,GAAG,CAAC,SAAS,KAAK,SAAS;YACzB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,SAAS,iBAAiB,CAAC,CAAC;KACrF,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAEd,0EAA0E;IAC1E,yEAAyE;IACzE,2EAA2E;IAC3E,8EAA8E;IAC9E,yBAAyB;IACzB,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,KAAK,OAAO,EAAE,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,GAAG,CAC5F,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CACzD,CAAC;IAEF,MAAM,KAAK,GAAG;QACZ,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC;QACtE,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW;KACxC;SACE,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;SAC/C,IAAI,CAAC,KAAK,CAAC,CAAC;IAEf,OAAO,OAAO,CACZ,IAAI,EACJ;QACE,KAAK,EAAE,aAAa;QACpB,aAAa,EAAE,GAAG;QAClB,cAAc,EAAE,OAAO,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QAC3D,YAAY,EAAE,KAAK;QACnB,KAAK,EAAE,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW;QAC9C,QAAQ,EAAE,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,0EAA0E;QAC1E,yDAAyD;QACzD,KAAK,EAAE,cAAc,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI;KAC1I,EACD;QACE,OAAO,CACL,KAAK,EACL;YACE,KAAK,EAAE,SAAS;YAChB,aAAa,EAAE,GAAG,CAAC,MAAM;YACzB,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;YACxC,UAAU,EAAE,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;YAC/C,WAAW,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;YAClD,gBAAgB,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;SAC1D,EACD,KAAK,CACN;KACF,CACF,CAAC;AACJ,CAAC;AAED,kEAAkE;AAClE,SAAS,QAAQ,CACf,QAA4B,EAC5B,KAAgB,EAChB,GAAW,EACX,OAA0B,EAC1B,IAA4B;IAE5B,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;gBAC/C,OAAO,CACL,MAAM,EACN,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,EAAE,EAChE,CAAC,KAAK,CAAC,IAAI,CAAC,CACb;gBACD,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aACpF,CAAC,CAAC;QACL,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;gBAC9C,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;gBACnE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;aAC7C,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM;YACT,wEAAwE;YACxE,wDAAwD;YACxD,OAAO,IAAI,KAAK,SAAS;gBACvB,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;gBAC9C,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAClF,KAAK,QAAQ;YACX,wEAAwE;YACxE,uEAAuE;YACvE,oEAAoE;YACpE,uEAAuE;YACvE,OAAO,OAAO,CACZ,KAAK,EACL,EAAE,KAAK,EAAE,WAAW,EAAE;YACtB,uEAAuE;YACvE,qEAAqE;YACrE,qBAAqB;YACrB;gBACE,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC;gBAClD,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;gBAC/C,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACxC,GAAG,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC;aACpC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAwB,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAC1D,CAAC;QACJ,KAAK,MAAM;YACT,oEAAoE;YACpE,2EAA2E;YAC3E,wEAAwE;YACxE,qDAAqD;YACrD,OAAO,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE;gBAClE,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAClC,CAAC,CAAC;IACP,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,aAAa,CACpB,QAA4B,EAC5B,MAAmB,EACnB,KAAY;IAEZ,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,GAAG,KAAK,SAAS;YAAE,SAAS;QAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;QAC9E,MAAM,IAAI,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/D,2EAA2E;QAC3E,kEAAkE;QAClE,MAAM,OAAO,GAAG,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,KAAK,IAAI,CAAC;QAChF,QAAQ,CAAC,IAAI,CACX,OAAO,CACL,MAAM,EACN;YACE,KAAK,EAAE,kBAAkB;YACzB,WAAW,EAAE,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;YAC/C,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;YACzC,IAAI,EAAE,KAAK;YACX,mEAAmE;YACnE,oEAAoE;YACpE,qEAAqE;YACrE,mDAAmD;YACnD,YAAY,EACV,GAAG,CAAC,GAAG,KAAK,IAAI;gBACd,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,IAAI,KAAK,SAAS;oBAClB,CAAC,CAAC,eAAe;oBACjB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;YAC1B,KAAK,EAAE,kBAAkB,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,qBAAqB,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI;SAChJ,EACD,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAC/F,CACF,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,wEAAwE;AACxE,SAAS,WAAW,CAAC,MAAmB;IACtC,MAAM,KAAK,GAA2C;QACpD,CAAC,MAAM,EAAE,oBAAoB,CAAC;QAC9B,CAAC,OAAO,EAAE,kBAAkB,CAAC;QAC7B,CAAC,OAAO,EAAE,YAAY,CAAC;KACxB,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE;QAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/D,OAAO,KAAK;SACT,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,CACtB,OAAO,CACL,MAAM,EACN;QACE,KAAK,EAAE,gBAAgB;QACvB,aAAa,EAAE,MAAM;QACrB,KAAK,EAAE,cAAc,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI;KACxD,EACD,CAAC,IAAI,CAAC,CACP,CACF,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,eAAe,CACtB,QAA4B,EAC5B,OAAgB;IAEhB,OAAO,OAAO;QACZ,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE;QACpE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAClC,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CACnB,QAA4B,EAC5B,OAAqB,EACrB,OAAsB;IAEtB,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAiB,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC;IACxD,OAAO,OAAO,CACZ,IAAI,EACJ,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,EAChD;QACE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAChE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAC5B,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CACrE;KACF,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,WAAW,CAAC,OAAgB;IACnC,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACpC,OAAO,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;QAC5C,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpF,6EAA6E;QAC7E,2EAA2E;QAC3E,yEAAyE;QACzE,4EAA4E;QAC5E,2EAA2E;QAC3E,mEAAmE;QACnE,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACtF,KAAK,CAAC,IAAI,KAAK,QAAQ;YACrB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;YAC9E,CAAC,CAAC,IAAI;QACR,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KAC9E,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,OAAO,CACd,QAA4B,EAC5B,MAAmB,EACnB,SAAiB,EACjB,IAA6B;IAE7B,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,qDAAqD;IACrD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,MAAM,OAAO,GACX,IAAI,KAAK,UAAU;QACjB,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,mDAAmD,MAAM,CAAC,iBAAiB,CAAC,8BAA8B;QAChI,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,mFAAmF,CAAC;IAE9G,wEAAwE;IACxE,sEAAsE;IACtE,4EAA4E;IAC5E,sEAAsE;IACtE,6EAA6E;IAC7E,6EAA6E;IAC7E,0EAA0E;IAC1E,yEAAyE;IACzE,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,yEAAyE;IACzE,iCAAiC;IACjC,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,MAAM,KAAK,GAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACxE,uEAAuE;IACvE,yEAAyE;IACzE,sEAAsE;IACtE,yEAAyE;IACzE,oDAAoD;IACpD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC/C,OAAO,OAAO,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;QAC/D,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,CACL,IAAI,EACJ,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,EAAE,EAC1D,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACpB,WAAW,CAAC,OAAO,CAAC,CACrB,CACF;QACD,OAAO,GAAG,CAAC;YACT,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE;gBAC5C,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,gBAAgB,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,uBAAuB;aAC9I,CAAC;YACJ,CAAC,CAAC,IAAI;QACR,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE;YACzC,oLAAoL;SACrL,CAAC;KACH,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,WAAW,CAClB,QAA4B,EAC5B,MAAmB,EACnB,OAAqB,EACrB,OAAsB;IAEtB,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACtE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACvF,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAC5D,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CACtC,CAAC;IACF,2EAA2E;IAC3E,8EAA8E;IAC9E,8EAA8E;IAC9E,8EAA8E;IAC9E,QAAQ;IACR,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAChE,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;QAChD,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE;YAC1C,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE;gBACzC,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE;oBAC5B,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC;oBACxB,WAAW,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC;oBAChC,OAAO;iBACR,CAAC;aACH,CAAC;YACF,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;SAChF,CAAC;QACF,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,EAAE,EAAE,OAAO,CAAC;KAChF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,UAAU,CACjB,QAA4B,EAC5B,MAAmB,EACnB,OAAqB;IAErB,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC/B,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;QAC9E,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QACrF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,WAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,QAA4B,EAAE,aAA2B,EAAE;IACpF,4EAA4E;IAC5E,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;IAEpC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1E,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAE9D,8EAA8E;IAC9E,EAAE;IACF,0EAA0E;IAC1E,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,2EAA2E;IAC3E,QAAQ;IACR,EAAE;IACF,8EAA8E;IAC9E,4EAA4E;IAC5E,6EAA6E;IAC7E,yEAAyE;IACzE,2CAA2C;IAC3C,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,2EAA2E;IAC3E,2EAA2E;IAC3E,MAAM,YAAY,GAAG,SAAS,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,YAAY,IAAI,SAAS,GAAG,iBAAiB,CAAC;IAC9D,2EAA2E;IAC3E,2EAA2E;IAC3E,kDAAkD;IAClD,MAAM,KAAK,GAAG,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjD,MAAM,MAAM,GAAwB,IAAI,GAAG,CAAC;QAC1C,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;QACvC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC;KACpD,CAAC,CAAC;IACH,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAC5E,wBAAwB;IACxB,MAAM,SAAS,GAAwB,IAAI,GAAG,CAAC;QAC7C,GAAG,MAAM;QACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;KAC/D,CAAC,CAAC;IAEH,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,2EAA2E;IAC3E,2CAA2C;IAC3C,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG;QACjB,GAAG,UAAU;QACb,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;QAClC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;QACvC,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC;KAC7D,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC;IAEhF,6EAA6E;IAC7E,EAAE;IACF,6EAA6E;IAC7E,0EAA0E;IAC1E,6EAA6E;IAC7E,0EAA0E;IAC1E,wDAAwD;IACxD,EAAE;IACF,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,8EAA8E;IAC9E,6EAA6E;IAC7E,wBAAwB;IACxB,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;IACrD,MAAM,QAAQ,GAAG,CAAC,IAAsB,EAAoB,EAAE,CAC5D,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACrC,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,IAAsB,EAAW,EAAE,CAChE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;IAC/C,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,IAAsB,EAAE,MAAc,EAAQ,EAAE;QACzE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACpE,CAAC,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS;QACxC,2EAA2E;QAC3E,2EAA2E;QAC3E,4EAA4E;QAC5E,0EAA0E;QAC1E,yEAAyE;QACzE,sDAAsD;QACtD,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO;YAAE,SAAS;QAC9D,4EAA4E;QAC5E,uEAAuE;QACvE,qEAAqE;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAC/C,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAChD,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAC3C,CACF,CAAC;QAEF,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,CAAU,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAC1B,CAAC,KAAK,EAAE,EAAE,CACR,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI;gBACxC,kEAAkE;gBAClE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;gBACzB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAClC,CAAC;YACF,IAAI,MAAM,KAAK,SAAS;gBAAE,SAAS;YACnC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAC9B,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,8EAA8E;IAC9E,6EAA6E;IAC7E,0EAA0E;IAC1E,wDAAwD;IACxD,gFAAgF;IAChF,4EAA4E;IAC5E,8EAA8E;IAC9E,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,wEAAwE;IACxE,6EAA6E;IAC7E,4EAA4E;IAC5E,+EAA+E;IAC/E,6CAA6C;IAC7C,2EAA2E;IAC3E,6EAA6E;IAC7E,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK;QAAE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO;YAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACpG,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,2EAA2E;QAC3E,2EAA2E;QAC3E,4EAA4E;QAC5E,qDAAqD;QACrD,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpG,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,wEAAwE;IACxE,6EAA6E;IAC7E,6EAA6E;IAC7E,+EAA+E;IAC/E,0EAA0E;IAC1E,+EAA+E;IAC/E,4CAA4C;IAC5C,MAAM,aAAa,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;IACtC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACjC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;IACD,8EAA8E;IAC9E,0EAA0E;IAC1E,MAAM,SAAS,GAAG;QAChB,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC;QAC1E,MAAM;KACP,CAAC;IAEF,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,MAA0B,CAAC;IAE/B,IAAI,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;QACrE,0EAA0E;QAC1E,0EAA0E;QAC1E,qEAAqE;QACrE,2EAA2E;QAC3E,gEAAgE;QAChE,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC;SAAM,IAAI,YAAY,EAAE,CAAC;QACxB,MAAM,GAAG,UAAU,CAAC,4EAA4E,CAAC,CAAC;IACpG,CAAC;SAAM,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QAC3B,2EAA2E;QAC3E,yEAAyE;QACzE,MAAM,GAAG,UAAU,CAAC,kEAAkE,CAAC,CAAC;IAC1F,CAAC;SAAM,IAAI,SAAS,GAAG,mBAAmB,EAAE,CAAC;QAC3C,WAAW,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,SAAS,CAAC,6CAA6C,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAChI,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC5D,CAAC;SAAM,IAAI,SAAS,GAAG,iBAAiB,EAAE,CAAC;QACzC,WAAW,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,SAAS,CAAC,qCAAqC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACtH,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,MAAM,UAAU,GAAkB,EAAE,CAAC;QACrC,4EAA4E;QAC5E,0EAA0E;QAC1E,4EAA4E;QAC5E,2EAA2E;QAC3E,yEAAyE;QACzE,2EAA2E;QAC3E,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YAClC,uEAAuE;YACvE,oEAAoE;YACpE,wEAAwE;YACxE,IAAI,MAAM,CAAC,OAAO;gBAAE,MAAM;YAC1B,wEAAwE;YACxE,yEAAyE;YACzE,wEAAwE;YACxE,uEAAuE;YACvE,0EAA0E;YAC1E,uEAAuE;YACvE,wCAAwC;YACxC,MAAM,KAAK,GACT,IAAI,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3F,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC7C,IAAI,QAAQ,KAAK,IAAI;gBAAE,SAAS;YAChC,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9D,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,cAAc,CAC3B,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,EACjC,QAAQ,EACR,IAAI,CAAC,KAAK,EACV,QAAQ,EACR,KAAK,CACN,CAAC;YACF,IAAI,MAAM,KAAK,IAAI;gBAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7C,yEAAyE;YACzE,iDAAiD;YACjD,EAAE;YACF,2EAA2E;YAC3E,sEAAsE;YACtE,kEAAkE;YAClE,uCAAuC;YACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3C,UAAU,CAAC,IAAI,CACb,GAAG,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;oBACrD,OAAO,EAAE,SAAS,CAAC,IAAI,KAAK,QAAQ;oBACpC,oEAAoE;oBACpE,oEAAoE;oBACpE,qEAAqE;oBACrE,wDAAwD;oBACxD,mEAAmE;oBACnE,6DAA6D;oBAC7D,SAAS,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC;oBACvC,QAAQ,EAAE,SAAS,CAAC,QAAQ;iBAC7B,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QAED,uEAAuE;QACvE,0EAA0E;QAC1E,qEAAqE;QACrE,MAAM,KAAK,GACT,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YAC5B,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE;gBACV,KAAK,EAAE,UAAU;gBACjB,EAAE,EAAE,MAAM,CAAC,UAAU;gBACrB,EAAE,EAAE,MAAM,CAAC,QAAQ;gBACnB,EAAE,EAAE,MAAM,CAAC,UAAU;gBACrB,EAAE,EAAE,MAAM,CAAC,WAAW;aACvB,CAAC,CAAC;QAET,MAAM,GAAG,GAAG,CACV,KAAK,EACL;YACE,KAAK,EAAE,WAAW;YAClB,OAAO,EAAE,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE;YACvF,uEAAuE;YACvE,qEAAqE;YACrE,yEAAyE;YACzE,8CAA8C;YAC9C,aAAa,EAAE,MAAM;SACtB,EACD,CAAC,KAAK,EAAE,GAAG,UAAU,CAAC,CACvB,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,uEAAuE;IACvE,6EAA6E;IAC7E,yEAAyE;IACzE,0CAA0C;IAC1C,MAAM,OAAO,GAA2C;QACtD,CAAC,OAAO,EAAE,YAAY,CAAC;QACvB,CAAC,MAAM,EAAE,oBAAoB,CAAC;QAC9B,CAAC,OAAO,EAAE,YAAY,CAAC;KACxB,CAAC;IACF,MAAM,SAAS,GAAG,OAAO;QACvB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,OAAO;aACJ,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;YACvB,MAAM,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;iBACnC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;iBACzD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;iBACzE,MAAM,CAAC,CAAC,IAAI,EAAuB,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YACxD,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;gBACvB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,KAAK,CAAC,CAAC;QACtE,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,IAAI,EAAuB,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAE5D,MAAM,IAAI,GAAG,OAAO,CAClB,SAAS,EACT;QACE,KAAK,EAAE,oBAAoB;QAC3B,iBAAiB,EAAE,OAAO;QAC1B,qEAAqE;QACrE,oEAAoE;QACpE,2DAA2D;QAC3D,0BAA0B;QAC1B,cAAc,EAAE,OAAO,CAAC,OAAO;QAC/B,mBAAmB,EAAE,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC;QAC5D,YAAY,EAAE,+BAA+B;KAC9C,EACD;QACE,OAAO,CAAC,MAAM,KAAK,KAAK;YACtB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE;gBACnB,UAAU,EAAE,OAAO;gBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,UAAU,EAAE,OAAO,CAAC,UAAU,KAAK,IAAI;aACxC,CAAC;QACN,yEAAyE;QACzE,wEAAwE;QACxE,2EAA2E;QAC3E,0EAA0E;QAC1E,qEAAqE;QACrE,sEAAsE;QACtE,4DAA4D;QAC5D,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC;QACzC,0EAA0E;QAC1E,qEAAqE;QACrE,sEAAsE;QACtE,uEAAuE;QACvE,sDAAsD;QACtD,0EAA0E;QAC1E,0EAA0E;QAC1E,sEAAsE;QACtE,4DAA4D;QAC5D,OAAO,IAAI,SAAS,KAAK,CAAC;YACxB,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,OAAO,CACL,KAAK,EACL;gBACE,KAAK,EAAE,UAAU;gBACjB,KAAK,EAAE,gBAAgB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,mBAAmB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI;aAChH,EACD;gBACE,MAAM;gBACN,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;oBACnC,GAAG,WAAW,CAAC,MAAM,CAAC;oBACtB,GAAG,SAAS;oBACZ,GAAG,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;iBAC1C,CAAC;aACH,CACF;QACL,yEAAyE;QACzE,iEAAiE;QACjE,wEAAwE;QACxE,uEAAuE;QACvE,qEAAqE;QACrE,qBAAqB;QACrB,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;QAClC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;QACnE,oEAAoE;QACpE,yEAAyE;QACzE,mEAAmE;QACnE,0EAA0E;QAC1E,uEAAuE;QACvE,8CAA8C;QAC9C,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC;QAC1E,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAC5B,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;gBAClC,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,YAAY;aAChH,CAAC;QACN,MAAM,EAAE;QACR,0EAA0E;QAC1E,+DAA+D;QAC/D,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC;KACvC,CACF,CAAC;IAEF,OAAO;QACL,UAAU,EAAE,OAAO;QACnB,IAAI;QACJ,UAAU;QACV,SAAS,EAAE,aAAa;QACxB,OAAO;QACP,gEAAgE;QAChE,6EAA6E;QAC7E,SAAS,EAAE,QAAQ;QACnB,WAAW;KACZ,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/projections/graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,99 @@ export interface SceneOptions {
|
|
|
31
31
|
* rather than this package guessing which of its instances is the panel.
|
|
32
32
|
*/
|
|
33
33
|
readonly chrome?: boolean | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Draw the panel's own outer frame — the border and the corner radius.
|
|
36
|
+
* Defaults to `true`.
|
|
37
|
+
*
|
|
38
|
+
* THE CONTAINER OWNS ITS SEAMS, AND ONLY THE CONTAINER KNOWS IT HAS ANY.
|
|
39
|
+
* Standing alone in a host's page the viewer is a card and has to draw its
|
|
40
|
+
* own edge, which is why the frame is on by default. Composed into a
|
|
41
|
+
* surface that already rules its zones off — the grooming workspace draws
|
|
42
|
+
* `border-right` on the rail track and `border-bottom` under the canvas
|
|
43
|
+
* toolbar — that same edge lands one pixel from the container's, and the
|
|
44
|
+
* two read as a single doubled hairline down every seam. Measured in the
|
|
45
|
+
* workspace: the rail's right edge carried the zone's rule and the viewer's
|
|
46
|
+
* border with nothing between them, and the canvas graph's top border sat
|
|
47
|
+
* directly under the toolbar's.
|
|
48
|
+
*
|
|
49
|
+
* IT IS AN OPTION RATHER THAN THE CONTAINER OVERRIDING THE BORDER AWAY. A
|
|
50
|
+
* host reaching into `.ig-viewer` to unset a property this package set is a
|
|
51
|
+
* second stylesheet with an opinion about this one's internals, and it
|
|
52
|
+
* breaks the first time the frame is expressed differently. Declining the
|
|
53
|
+
* frame is a statement about COMPOSITION, so it belongs in the composition
|
|
54
|
+
* API.
|
|
55
|
+
*
|
|
56
|
+
* It renders as `data-frame="none"` on the viewer root; absent is the
|
|
57
|
+
* framed default.
|
|
58
|
+
*/
|
|
59
|
+
readonly frame?: boolean | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* Dock the legend against the bottom of the container's scrollport instead
|
|
62
|
+
* of letting it scroll away with the order. Defaults to `false`.
|
|
63
|
+
*
|
|
64
|
+
* IT IS THE KEY TO THE GRAMMAR, AND IT WAS AT THE BOTTOM OF THE SCROLL. Five
|
|
65
|
+
* line styles and three station fills are what make every row and every edge
|
|
66
|
+
* on the surface legible, and in a container tall enough to scroll they sat
|
|
67
|
+
* below everything they explain — so the one thing a reader consults WHILE
|
|
68
|
+
* reading was the one thing they had to leave the reading to reach.
|
|
69
|
+
*
|
|
70
|
+
* ONLY A CONTAINER CAN ANSWER THIS, which is why it is an option and not the
|
|
71
|
+
* default. Sticky positions against the nearest scrollport: dropped into a
|
|
72
|
+
* host's page at its natural height the viewer has no scrollport of its own,
|
|
73
|
+
* so the nearest one is the PAGE, and a legend docked there would float over
|
|
74
|
+
* the host's own content for the whole of their document. A container that
|
|
75
|
+
* has given this viewer a bounded, scrolling box is the only party that knows
|
|
76
|
+
* the dock has somewhere to sit.
|
|
77
|
+
*
|
|
78
|
+
* IT IMPLIES `frame: false`, AND THE STYLESHEET ENFORCES THAT BY CONSTRUCTION.
|
|
79
|
+
* A sticky child cannot escape an ancestor that is itself a scroll container,
|
|
80
|
+
* and this root is `overflow: hidden` precisely so a drawn frame clips its
|
|
81
|
+
* own corners — so the docked rule has to lift that, and a root that no
|
|
82
|
+
* longer clips must not be drawing a radius to clip to. The workspace passes
|
|
83
|
+
* both; a caller that passes only this one gets a docked legend and an
|
|
84
|
+
* unclipped frame, which is why they are documented together.
|
|
85
|
+
*
|
|
86
|
+
* WHERE the dock sits is still the container's: it renders as
|
|
87
|
+
* `data-legend="docked"` with `bottom: 0`, and a container with something
|
|
88
|
+
* else already pinned to that edge moves it. The grooming workspace does —
|
|
89
|
+
* its rail footer holds the bottom of that zone — and sets the offset from
|
|
90
|
+
* the footer it measures rather than from a number either package wrote down.
|
|
91
|
+
*/
|
|
92
|
+
readonly dockLegend?: boolean | undefined;
|
|
93
|
+
/**
|
|
94
|
+
* Hand the "not in the order" group back on `Scene.footer` instead of drawing
|
|
95
|
+
* it inside `Scene.root`. Defaults to `false`.
|
|
96
|
+
*
|
|
97
|
+
* THE FOOTER ENDS THE ORDER, AND A HOST THAT WINDOWS THE ORDER ENDS IT
|
|
98
|
+
* SOMEWHERE ELSE. The group is a fact about the whole document — every
|
|
99
|
+
* runner-held slot and every exclusion — so it belongs after the last row of
|
|
100
|
+
* the order. A host that virtualizes rows draws only a window of them, with a
|
|
101
|
+
* spacer above and below standing in for the rest, and composes
|
|
102
|
+
* `spacer + root + spacer`. With the footer inside the root that put the
|
|
103
|
+
* group directly under the VISIBLE rows: mid-scroll, with hundreds of ranks
|
|
104
|
+
* still to come beneath it. Detached, the host composes it after the
|
|
105
|
+
* trailing spacer, which is where the order actually ends.
|
|
106
|
+
*
|
|
107
|
+
* ONLY A CONTAINER THAT VIRTUALIZES NEEDS IT, which is why it is an option and
|
|
108
|
+
* not the default — the same reasoning as `frame` and `dockLegend`. A viewer
|
|
109
|
+
* that draws every row is its own extent, and the inline footer is already
|
|
110
|
+
* in the right place.
|
|
111
|
+
*
|
|
112
|
+
* HONOURED BY THE LINEAR PROJECTION ONLY. The graph and the tree are never
|
|
113
|
+
* virtualized — the rail that windows the order is always linear — so they
|
|
114
|
+
* keep their footer inline and return `footer: null` whatever this says. A
|
|
115
|
+
* host passing it to every projection is therefore safe: nothing goes
|
|
116
|
+
* missing from the projections that ignore it.
|
|
117
|
+
*
|
|
118
|
+
* THE DETACHED GROUP CARRIES ITS OWN `.ig-viewer` WRAPPER. Its styles hang off
|
|
119
|
+
* that ancestor — the type, the box sizing, the focus ring and §17j's density
|
|
120
|
+
* block are all scoped to it — so the group is handed out inside an element
|
|
121
|
+
* carrying the root's class and its `frame` and `density` attributes rather
|
|
122
|
+
* than leaving every host to rebuild that context or this sheet to say every
|
|
123
|
+
* rule twice. The traversal does not change: `focusOrder` and `navigable` are
|
|
124
|
+
* identical either way.
|
|
125
|
+
*/
|
|
126
|
+
readonly detachFooter?: boolean | undefined;
|
|
34
127
|
/**
|
|
35
128
|
* Draw the header's own view controls — the List/Graph toggle, and the
|
|
36
129
|
* graph's expand/collapse affordance. Defaults to `false`.
|
|
@@ -95,25 +188,22 @@ export interface SceneOptions {
|
|
|
95
188
|
*/
|
|
96
189
|
readonly density?: 'dense' | 'wide' | undefined;
|
|
97
190
|
}
|
|
191
|
+
export declare function footerHeading(): string;
|
|
192
|
+
export declare function footerReason(kinds: FooterKinds): string | null;
|
|
98
193
|
/**
|
|
99
|
-
*
|
|
194
|
+
* The group's head, for either projection, in the panel header's own voice.
|
|
100
195
|
*
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* What the footer group calls itself.
|
|
196
|
+
* THE SAME TWO PIECES THE PANEL HEADER USES, NOT A THIRD STYLE. The name is an
|
|
197
|
+
* `.ig-header-label` — the accent mono kicker that reads "ORDER PREVIEW" at the
|
|
198
|
+
* top of the panel — and the count is an `.ig-count-chip`, the outlined tally
|
|
199
|
+
* beside it. A group that invented its own heading treatment was one more thing
|
|
200
|
+
* a reader had to learn, on the part of the panel they reach last.
|
|
108
201
|
*
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
*
|
|
112
|
-
* from a claim or a park. A document with one duplicate and no tracker hold
|
|
113
|
-
* therefore read "1 held by the runner" about an issue no runner has touched.
|
|
114
|
-
* Shared by both projections, so the two cannot word one group two ways.
|
|
202
|
+
* "HELD" ONLY WHEN SOMETHING IS. The chip reads `4 held` the way the header's
|
|
203
|
+
* `6 held` does, but a group of duplicates alone is not held by anyone — §16d
|
|
204
|
+
* keeps the two facts apart — so it then states the bare count.
|
|
115
205
|
*/
|
|
116
|
-
export declare function
|
|
206
|
+
export declare function footerHead(count: number, kinds: FooterKinds): ElementSpec;
|
|
117
207
|
/**
|
|
118
208
|
* Which families of entry a footer group actually holds.
|
|
119
209
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linear.d.ts","sourceRoot":"","sources":["../../src/projections/linear.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAc,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjF,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"linear.d.ts","sourceRoot":"","sources":["../../src/projections/linear.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAc,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjF,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,eAAe,CAAC;AA6B1D,OAAO,EAA0B,KAAK,KAAK,EAAmB,MAAM,aAAa,CAAC;AAGlF,MAAM,WAAW,YAAY;IAC3B,4DAA4D;IAC5D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7C;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5C;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1C;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAClD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;CACjD;AA6BD,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAY9D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,WAAW,CAWzE;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAEtD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CACrB,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,OAAO,GAChB,WAAW,CAsHb;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CACvB,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,YAAY,GACpB,WAAW,CAmCb;AA0DD,wBAAgB,WAAW,CACzB,QAAQ,EAAE,kBAAkB,EAC5B,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,YAAY,GACpB,WAAW,CA8Bb;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,kBAAkB,EAC5B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,YAAY,GACpB,WAAW,CAmBb;AAUD,wBAAgB,WAAW,CACzB,QAAQ,EAAE,kBAAkB,EAC5B,UAAU,GAAE,YAAiB,GAC5B,KAAK,CA4KP"}
|