@issuegraph/viewer 0.5.0 → 0.10.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 +116 -0
- package/dist/clusters.d.ts.map +1 -1
- package/dist/clusters.js +85 -2
- package/dist/clusters.js.map +1 -1
- package/dist/document.d.ts +76 -5
- package/dist/document.d.ts.map +1 -1
- package/dist/document.js +19 -1
- package/dist/document.js.map +1 -1
- package/dist/index.d.ts +16 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/layout.d.ts +28 -0
- package/dist/layout.d.ts.map +1 -1
- package/dist/layout.js +7 -2
- package/dist/layout.js.map +1 -1
- package/dist/marks.d.ts +105 -0
- package/dist/marks.d.ts.map +1 -0
- package/dist/marks.js +430 -0
- package/dist/marks.js.map +1 -0
- package/dist/navigation.d.ts.map +1 -1
- package/dist/navigation.js +31 -0
- package/dist/navigation.js.map +1 -1
- package/dist/parts.d.ts +23 -7
- package/dist/parts.d.ts.map +1 -1
- package/dist/parts.js +80 -37
- package/dist/parts.js.map +1 -1
- package/dist/projections/graph.d.ts +15 -0
- package/dist/projections/graph.d.ts.map +1 -1
- package/dist/projections/graph.js +91 -35
- package/dist/projections/graph.js.map +1 -1
- package/dist/projections/linear.d.ts +116 -15
- package/dist/projections/linear.d.ts.map +1 -1
- package/dist/projections/linear.js +171 -69
- package/dist/projections/linear.js.map +1 -1
- package/dist/projections/tree.d.ts.map +1 -1
- package/dist/projections/tree.js +15 -4
- package/dist/projections/tree.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 +1 -1
- package/dist/styles.d.ts.map +1 -1
- package/dist/styles.js +636 -24
- package/dist/styles.js.map +1 -1
- package/dist/theme.d.ts +1 -1
- package/dist/theme.d.ts.map +1 -1
- package/dist/theme.js +47 -0
- package/dist/theme.js.map +1 -1
- package/package.json +1 -1
package/dist/parts.js
CHANGED
|
@@ -123,7 +123,7 @@ export function provenanceClause(provenance) {
|
|
|
123
123
|
switch (provenance.kind) {
|
|
124
124
|
case 'matched-query':
|
|
125
125
|
return element('span', {}, [
|
|
126
|
-
`
|
|
126
|
+
`Picked by query ${String(provenance.index)} · `,
|
|
127
127
|
element('span', { class: 'ig-id' }, [provenance.label]),
|
|
128
128
|
]);
|
|
129
129
|
case 'declared-tier':
|
|
@@ -134,19 +134,18 @@ export function provenanceClause(provenance) {
|
|
|
134
134
|
// explicitly-declared P0 had no declared priority. A panel whose job is
|
|
135
135
|
// explaining the order cannot invent the reason.
|
|
136
136
|
return element('span', {}, [
|
|
137
|
-
'
|
|
137
|
+
'No query matched, so it goes by its priority, ',
|
|
138
138
|
element('span', { class: 'ig-id' }, [`P${String(provenance.priority)}`]),
|
|
139
139
|
]);
|
|
140
140
|
case 'promotion': {
|
|
141
141
|
const via = provenance.promotedBy.length === 0
|
|
142
142
|
? null
|
|
143
143
|
: element('span', {}, [
|
|
144
|
-
'
|
|
144
|
+
' because it blocks ',
|
|
145
145
|
element('span', { class: 'ig-id' }, [provenance.promotedBy.join(', ')]),
|
|
146
|
-
', which it blocks',
|
|
147
146
|
]);
|
|
148
147
|
return element('span', {}, [
|
|
149
|
-
'
|
|
148
|
+
'Priority raised ',
|
|
150
149
|
element('span', { class: 'ig-id' }, [provenance.notation]),
|
|
151
150
|
via,
|
|
152
151
|
]);
|
|
@@ -200,7 +199,7 @@ export function priorityBadge(provenance) {
|
|
|
200
199
|
// `· tier`, NOT `· default`. The chip says which tier ranked the row; it
|
|
201
200
|
// cannot say the tier was a default, because this arm does not know that.
|
|
202
201
|
return element('span', { class: 'ig-badge', 'data-priority': 'tier' }, [
|
|
203
|
-
`P${String(provenance.priority)}
|
|
202
|
+
`P${String(provenance.priority)}`,
|
|
204
203
|
]);
|
|
205
204
|
case 'promotion':
|
|
206
205
|
return element('span', { class: 'ig-badge', 'data-priority': 'promoted' }, [
|
|
@@ -218,7 +217,7 @@ export function priorityBadge(provenance) {
|
|
|
218
217
|
export function evidenceBadge(issue) {
|
|
219
218
|
if (issue?.evidence !== 'verified')
|
|
220
219
|
return null;
|
|
221
|
-
return element('span', { class: 'ig-badge', 'data-evidence': 'verified', title: '
|
|
220
|
+
return element('span', { class: 'ig-badge', 'data-evidence': 'verified', title: 'verified' }, glyphAndLabel('✓', 'verified'));
|
|
222
221
|
}
|
|
223
222
|
/**
|
|
224
223
|
* One hold, rendered with the family it belongs to visible in the markup — and
|
|
@@ -241,24 +240,6 @@ export function holdLine(hold) {
|
|
|
241
240
|
'data-subject': hold.subject,
|
|
242
241
|
}, [turn(), label, element('span', {}, [hold.reason])]);
|
|
243
242
|
}
|
|
244
|
-
/**
|
|
245
|
-
* The runner's own words for the holds a footer collects — `claimed · parked` —
|
|
246
|
-
* so the footer title can name them the way the design does. Empty when no
|
|
247
|
-
* hold carries a label, which keeps the title exactly as it was before labels
|
|
248
|
-
* existed.
|
|
249
|
-
*/
|
|
250
|
-
export function footerLabels(slots) {
|
|
251
|
-
const labels = [];
|
|
252
|
-
for (const slot of slots) {
|
|
253
|
-
for (const hold of slot.holds) {
|
|
254
|
-
if (hold.family !== 'tracker' || hold.label === undefined || hold.label === '')
|
|
255
|
-
continue;
|
|
256
|
-
if (!labels.includes(hold.label))
|
|
257
|
-
labels.push(hold.label);
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
return labels.join(' · ');
|
|
261
|
-
}
|
|
262
243
|
/**
|
|
263
244
|
* The projection toggle and the size affordance — controls the viewer PUBLISHES
|
|
264
245
|
* and does not wire, exactly like the refresh button beside them.
|
|
@@ -282,7 +263,7 @@ function headerControls(controls) {
|
|
|
282
263
|
'aria-pressed': controls.projection === projection ? 'true' : 'false',
|
|
283
264
|
[COMMAND_ATTRIBUTE]: `projection:${projection}`,
|
|
284
265
|
}, [element('span', { class: 'ig-glyph', 'aria-hidden': 'true' }, [glyph]), label]);
|
|
285
|
-
return element('span', { class: 'ig-toggle', role: 'group', 'aria-label': '
|
|
266
|
+
return element('span', { class: 'ig-toggle', role: 'group', 'aria-label': 'view' }, [
|
|
286
267
|
toggle('linear', '☰', 'List'),
|
|
287
268
|
toggle('graph', '⛓', 'Graph'),
|
|
288
269
|
]);
|
|
@@ -323,14 +304,14 @@ export function hostHeader(document, controls) {
|
|
|
323
304
|
]), element('span', { class: 'ig-count-chip', 'data-count': 'ready' }, [
|
|
324
305
|
concurrencyCap === undefined
|
|
325
306
|
? `${String(counts.readyNow)} ready now`
|
|
326
|
-
: `${String(counts.readyNow)} ready now ·
|
|
307
|
+
: `${String(counts.readyNow)} ready now · ${String(concurrencyCap)} at a time`,
|
|
327
308
|
]), element('span', { class: 'ig-count-chip', 'data-count': 'held' }, [
|
|
328
309
|
`${String(counts.held)} held`,
|
|
329
310
|
]));
|
|
330
311
|
}
|
|
331
312
|
else if (concurrencyCap !== undefined) {
|
|
332
313
|
chips.push(element('span', { class: 'ig-count-chip', 'data-count': 'ready' }, [
|
|
333
|
-
|
|
314
|
+
`${String(concurrencyCap)} at a time`,
|
|
334
315
|
]));
|
|
335
316
|
}
|
|
336
317
|
// §16h'S ONE AMBIGUITY WORTH REMOVING, stated once and here. "No edges shown"
|
|
@@ -340,7 +321,7 @@ export function hostHeader(document, controls) {
|
|
|
340
321
|
// header prints it beside them rather than inventing a second place for it.
|
|
341
322
|
if (adoption?.counts !== undefined) {
|
|
342
323
|
chips.push(element('span', { class: 'ig-count-chip', 'data-count': 'adoption' }, [
|
|
343
|
-
`${String(adoption.counts.declaring)} of ${String(adoption.counts.total)}
|
|
324
|
+
`${String(adoption.counts.declaring)} of ${String(adoption.counts.total)} have relationships`,
|
|
344
325
|
]));
|
|
345
326
|
}
|
|
346
327
|
const summary = chips.length === 0
|
|
@@ -457,6 +438,29 @@ function noticeParts(condition) {
|
|
|
457
438
|
? {}
|
|
458
439
|
: { control: { label: condition.retry, command: 'retry:index' } }),
|
|
459
440
|
};
|
|
441
|
+
// THE DENOMINATOR IS THE BODY, so it sits under the headline as the
|
|
442
|
+
// sentence that contradicts the wrong reading rather than beside it as a
|
|
443
|
+
// count. `No flagged rows match.` / `8 issues are ranked`.
|
|
444
|
+
//
|
|
445
|
+
// THE CONTROL REUSES THE AUDIT FILTER'S OWN COMMAND NAME rather than
|
|
446
|
+
// inventing a second one. §17d gives the count one job and "always the same
|
|
447
|
+
// click"; a clear-the-filter control that published a different command
|
|
448
|
+
// would be a second toggle for one boolean, which is the defect the audit
|
|
449
|
+
// surface already refused once.
|
|
450
|
+
case 'filtered':
|
|
451
|
+
return {
|
|
452
|
+
headline: condition.headline,
|
|
453
|
+
body: [condition.denominator],
|
|
454
|
+
...(condition.action === undefined
|
|
455
|
+
? {}
|
|
456
|
+
: {
|
|
457
|
+
control: {
|
|
458
|
+
label: condition.action.label,
|
|
459
|
+
command: 'audit-filter',
|
|
460
|
+
...(condition.action.href === undefined ? {} : { href: condition.action.href }),
|
|
461
|
+
},
|
|
462
|
+
}),
|
|
463
|
+
};
|
|
460
464
|
}
|
|
461
465
|
}
|
|
462
466
|
/**
|
|
@@ -649,7 +653,7 @@ export function caveatLines(issue) {
|
|
|
649
653
|
lines.push(element('p', { class: 'ig-caveat', 'data-caveat': 'disagree' }, [
|
|
650
654
|
turn(),
|
|
651
655
|
element('span', {}, [
|
|
652
|
-
`
|
|
656
|
+
`Using ${used} · ${ignored.carrier} says `,
|
|
653
657
|
element('s', { class: 'ig-strike' }, [ignored.value]),
|
|
654
658
|
]),
|
|
655
659
|
]));
|
|
@@ -669,10 +673,10 @@ export function caveatBadges(issue) {
|
|
|
669
673
|
return [];
|
|
670
674
|
const chips = [];
|
|
671
675
|
if (issue.previewOnly !== undefined) {
|
|
672
|
-
chips.push(element('span', { class: 'ig-badge', 'data-caveat': 'preview-only' }, glyphAndLabel('◐', '
|
|
676
|
+
chips.push(element('span', { class: 'ig-badge', 'data-caveat': 'preview-only' }, glyphAndLabel('◐', 'estimated')));
|
|
673
677
|
}
|
|
674
678
|
if (issue.disagreement !== undefined) {
|
|
675
|
-
chips.push(element('span', { class: 'ig-badge', 'data-caveat': 'disagree' }, glyphAndLabel('◆', '
|
|
679
|
+
chips.push(element('span', { class: 'ig-badge', 'data-caveat': 'disagree' }, glyphAndLabel('◆', 'priorities disagree')));
|
|
676
680
|
}
|
|
677
681
|
return chips;
|
|
678
682
|
}
|
|
@@ -700,10 +704,10 @@ export function caveatText(issue) {
|
|
|
700
704
|
return '';
|
|
701
705
|
const parts = [];
|
|
702
706
|
if (issue.previewOnly !== undefined)
|
|
703
|
-
parts.push(`
|
|
707
|
+
parts.push(`estimated: ${issue.previewOnly.note}`);
|
|
704
708
|
if (issue.disagreement !== undefined) {
|
|
705
709
|
const { used, ignored } = issue.disagreement;
|
|
706
|
-
parts.push(`
|
|
710
|
+
parts.push(`priorities disagree: using ${used}, ${ignored.carrier} says ${ignored.value}`);
|
|
707
711
|
}
|
|
708
712
|
return parts.join(' · ');
|
|
709
713
|
}
|
|
@@ -970,7 +974,7 @@ export function noteText(document, key) {
|
|
|
970
974
|
// THE BADGE ALREADY NAMES THE CANONICAL, so the sentence says only what the
|
|
971
975
|
// badge cannot: that this issue is never worked at all.
|
|
972
976
|
if (exclusion.key === key)
|
|
973
|
-
lines.push('
|
|
977
|
+
lines.push('The original gets worked instead.');
|
|
974
978
|
}
|
|
975
979
|
return lines;
|
|
976
980
|
}
|
|
@@ -1178,10 +1182,49 @@ export function slotTitle(document, slot) {
|
|
|
1178
1182
|
.map((member) => document.byKey.get(member)?.title ?? member)
|
|
1179
1183
|
.join(' · ');
|
|
1180
1184
|
}
|
|
1185
|
+
/**
|
|
1186
|
+
* Where a slot sits and whether anything may start it, as one spoken phrase.
|
|
1187
|
+
*
|
|
1188
|
+
* TWO FACTS, READ FROM TWO FIELDS, and that is the whole point of this
|
|
1189
|
+
* function existing. It used to be one expression — `rank === null ? 'held, no
|
|
1190
|
+
* rank' : 'rank N'` — which inferred HELD from the ABSENCE OF A RANK. That
|
|
1191
|
+
* inference was sound while `@issuegraph/derive` assigned `ready ? rank : null`
|
|
1192
|
+
* and is wrong since `RULINGS.md` §1: a held slot whose blocker is inside the
|
|
1193
|
+
* previewed order carries a number, so the old expression announced it as
|
|
1194
|
+
* plain `rank 2` and DROPPED the word held. A sighted reader still saw the
|
|
1195
|
+
* hatched row and the `⊘ blocked-by #488` chip; a screen-reader user lost the
|
|
1196
|
+
* single most important fact about the row, silently, on the exact case the
|
|
1197
|
+
* ruling exists to draw.
|
|
1198
|
+
*
|
|
1199
|
+
* So `ready` is read on its own, never through `rank`. §16a's row says both
|
|
1200
|
+
* things at once — `⊘ blocked-by #488` beside `rank 2` — and the accessible
|
|
1201
|
+
* name says both too.
|
|
1202
|
+
*
|
|
1203
|
+
* ONE FUNCTION FOR EVERY SURFACE. The linear row's `aria-label`, the graph
|
|
1204
|
+
* node's and the graph station's all phrase this, and three copies of a
|
|
1205
|
+
* two-field rule is three chances to reintroduce the one-field one.
|
|
1206
|
+
*/
|
|
1207
|
+
export function slotPosition(slot) {
|
|
1208
|
+
const parts = [];
|
|
1209
|
+
// HELD LEADS, because it is the fact that decides whether the rest matters.
|
|
1210
|
+
if (!slot.ready)
|
|
1211
|
+
parts.push('held');
|
|
1212
|
+
if (slot.rank === null) {
|
|
1213
|
+
parts.push('no rank');
|
|
1214
|
+
// The other arm of §1: no position to state, but the row still answers
|
|
1215
|
+
// "where would this have been" when the host worked it out.
|
|
1216
|
+
const would = slot.wouldBeRank;
|
|
1217
|
+
if (would !== null && would !== undefined)
|
|
1218
|
+
parts.push(`would be rank ${String(would)}`);
|
|
1219
|
+
}
|
|
1220
|
+
else {
|
|
1221
|
+
parts.push(`rank ${String(slot.rank)}`);
|
|
1222
|
+
}
|
|
1223
|
+
return parts.join(', ');
|
|
1224
|
+
}
|
|
1181
1225
|
/** A slot's accessible name: what it is, where it sits, and whether it is held. */
|
|
1182
1226
|
export function slotLabel(document, slot) {
|
|
1183
|
-
|
|
1184
|
-
return `${slotTitle(document, slot)} — ${slot.members.join(', ')} — ${position}`;
|
|
1227
|
+
return `${slotTitle(document, slot)} — ${slot.members.join(', ')} — ${slotPosition(slot)}`;
|
|
1185
1228
|
}
|
|
1186
1229
|
/** The empty state. A container with nothing in it reads as a bug. */
|
|
1187
1230
|
export function emptyState(message) {
|
package/dist/parts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parts.js","sourceRoot":"","sources":["../src/parts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parts.js","sourceRoot":"","sources":["../src/parts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAkB,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAUhE,OAAO,EAAoB,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAqB,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEvG;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAEnD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAChF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa,EAAE,KAAa;IACxD,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC;AAKD;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,IAAgB;IAC1C,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAC;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC;IAClC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;AACrE,CAAC;AAED,MAAM,aAAa,GAA0C,MAAM,CAAC,MAAM,CAAC;IACzE,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,6BAA6B;IACrC,MAAM,EAAE,MAAM;CACf,CAAC,CAAC;AAEH,MAAM,UAAU,OAAO,CAAC,IAAiB;IACvC,OAAO,OAAO,CAAC,MAAM,EAAE;QACrB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,KAAK;QACX,YAAY,EAAE,aAAa,CAAC,IAAI,CAAC;KAClC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAkB;IACzC,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC;QAChD,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACzC,OAAO,CACL,GAAG,EACH;YACE,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,KAAK,CAAC,GAAG;YACf,GAAG,EAAE,YAAY;YACjB,YAAY,EAAE,QAAQ,KAAK,CAAC,GAAG,EAAE;SAClC,EACD,CAAC,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,CACnB;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAsC;IACrE,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC1C,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,eAAe;YAClB,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE;gBACzB,mBAAmB,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK;gBAChD,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;aACxD,CAAC,CAAC;QACL,KAAK,eAAe;YAClB,uEAAuE;YACvE,wEAAwE;YACxE,0EAA0E;YAC1E,yEAAyE;YACzE,wEAAwE;YACxE,iDAAiD;YACjD,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE;gBACzB,gDAAgD;gBAChD,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;aACzE,CAAC,CAAC;QACL,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,GAAG,GACP,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;gBAChC,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE;oBAClB,qBAAqB;oBACrB,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;iBACxE,CAAC,CAAC;YACT,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE;gBACzB,kBAAkB;gBAClB,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC1D,GAAG;aACJ,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,UAAsC;IACnE,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,IAAI;IACX,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,UAAsC;IAClE,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC1C,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,eAAe;YAClB,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9F,KAAK,eAAe;YAClB,yEAAyE;YACzE,0EAA0E;YAC1E,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE;gBACrE,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;aAClC,CAAC,CAAC;QACL,KAAK,WAAW;YACd,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE;gBACzE,UAAU,CAAC,QAAQ;aACpB,CAAC,CAAC;IACP,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,KAA8B;IAC1D,IAAI,KAAK,EAAE,QAAQ,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,OAAO,CACZ,MAAM,EACN,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,EACrE,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAgB;IACvC,6EAA6E;IAC7E,2EAA2E;IAC3E,2EAA2E;IAC3E,gDAAgD;IAChD,MAAM,KAAK,GACT,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE;QACxE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/E,CAAC,CAAC,IAAI,CAAC;IACX,OAAO,OAAO,CACZ,GAAG,EACH;QACE,KAAK,EAAE,SAAS;QAChB,aAAa,EAAE,IAAI,CAAC,MAAM;QAC1B,WAAW,EAAE,IAAI,CAAC,IAAI;QACtB,cAAc,EAAE,IAAI,CAAC,OAAO;KAC7B,EACD,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CACpD,CAAC;AACJ,CAAC;AA0BD;;;;;;;;;;GAUG;AACH,SAAS,cAAc,CAAC,QAAoC;IAC1D,8EAA8E;IAC9E,4EAA4E;IAC5E,kDAAkD;IAClD,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAChE,MAAM,MAAM,GAAG,CACb,UAA8B,EAC9B,KAAa,EACb,KAAa,EACA,EAAE,CACf,OAAO,CACL,QAAQ,EACR;QACE,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,QAAQ;QACd,cAAc,EAAE,QAAQ,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QACrE,CAAC,iBAAiB,CAAC,EAAE,cAAc,UAAU,EAAE;KAChD,EACD,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAChF,CAAC;IACJ,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE;QAClF,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC;QAC7B,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC;KAC9B,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAAC,QAAoC;IACvD,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAClG,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,2EAA2E;IAC3E,OAAO,OAAO,CACZ,QAAQ,EACR;QACE,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,QAAQ;QACd,CAAC,iBAAiB,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU;KAC9D,EACD,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAC/C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,QAA4B,EAC5B,QAAyB;IAEzB,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC;IAEtE,6EAA6E;IAC7E,0EAA0E;IAC1E,wEAAwE;IACxE,4EAA4E;IAC5E,6EAA6E;IAC7E,0EAA0E;IAC1E,6BAA6B;IAC7B,MAAM,KAAK,GAAkB,EAAE,CAAC;IAChC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE;YAClE,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS;SAClC,CAAC,EACF,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE;YACjE,cAAc,KAAK,SAAS;gBAC1B,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY;gBACxC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,MAAM,CAAC,cAAc,CAAC,YAAY;SACjF,CAAC,EACF,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE;YAChE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;SAC9B,CAAC,CACH,CAAC;IACJ,CAAC;SAAM,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACxC,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE;YACjE,GAAG,MAAM,CAAC,cAAc,CAAC,YAAY;SACtC,CAAC,CACH,CAAC;IACJ,CAAC;IACD,8EAA8E;IAC9E,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,IAAI,QAAQ,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE;YACpE,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB;SAC9F,CAAC,CACH,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GACX,KAAK,CAAC,MAAM,KAAK,CAAC;QAChB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,EAAE,KAAK,CAAC,CAAC;IAEjF,MAAM,KAAK,GACT,SAAS,KAAK,SAAS;QACrB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE;YACjG,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE;gBAClB,QAAQ;gBACR,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACrD,SAAS,CAAC,GAAG,KAAK,SAAS,IAAI,SAAS,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,GAAG,EAAE;gBAClF,SAAS,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;aAC7C,CAAC;YACF,wEAAwE;YACxE,sEAAsE;YACtE,mEAAmE;YACnE,mEAAmE;YACnE,2BAA2B;YAC3B,SAAS,CAAC,OAAO,KAAK,SAAS,IAAI,SAAS,CAAC,OAAO,KAAK,EAAE;gBACzD,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,OAAO,CACL,QAAQ,EACR,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,EACvE,CAAC,SAAS,CAAC,OAAO,CAAC,CACpB;SACN,CAAC,CAAC;IAET,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,OAAO,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACvE,6EAA6E;IAC7E,yEAAyE;IACzE,sCAAsC;IACtC,OAAO,OAAO,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;QAC/C,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE;YACzC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE;gBAC3C,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC;gBAChE,MAAM;aACP,CAAC;YACF,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;SAC5D,CAAC;QACF,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,QAA4B,EAAE,MAA2B;IACrF,yEAAyE;IACzE,0EAA0E;IAC1E,8EAA8E;IAC9E,oEAAoE;IACpE,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAClC,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,IAAI,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAA4B;IAC5D,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC;AAC/C,CAAC;AAaD;;;;;;;;;;;;;GAaG;AACH,SAAS,WAAW,CAAC,SAA0B;IAC7C,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;QACvB,KAAK,WAAW;YACd,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC;QACnG,KAAK,OAAO;YACV,OAAO;gBACL,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC;gBAC7C,GAAG,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS;oBAChC,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC;wBACE,OAAO,EAAE;4BACP,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK;4BAC7B,OAAO,EAAE,mBAAmB;4BAC5B,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;yBAChF;qBACF,CAAC;aACP,CAAC;QACJ,KAAK,OAAO;YACV,OAAO;gBACL,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,IAAI,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC;gBAC3B,GAAG,CAAC,SAAS,CAAC,KAAK,KAAK,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;oBAChE,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,CAAC;aACrE,CAAC;QACJ,oEAAoE;QACpE,yEAAyE;QACzE,2DAA2D;QAC3D,EAAE;QACF,qEAAqE;QACrE,4EAA4E;QAC5E,wEAAwE;QACxE,0EAA0E;QAC1E,gCAAgC;QAChC,KAAK,UAAU;YACb,OAAO;gBACL,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,IAAI,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC;gBAC7B,GAAG,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS;oBAChC,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC;wBACE,OAAO,EAAE;4BACP,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK;4BAC7B,OAAO,EAAE,cAAc;4BACvB,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;yBAChF;qBACF,CAAC;aACP,CAAC;IACN,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,eAAe,CAAC,QAA4B,EAAE,MAA2B;IACvF,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;IAC1C,IAAI,MAAM,KAAK,KAAK,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;IACrC,MAAM,OAAO,GACX,KAAK,CAAC,OAAO,KAAK,SAAS;QACzB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS;YAChC,CAAC,CAAC,OAAO,CACL,QAAQ,EACR,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EACzF,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CACtB;YACH,CAAC,CAAC,OAAO,CACL,GAAG;YACH,oEAAoE;YACpE,oEAAoE;YACpE,iEAAiE;YACjE,gEAAgE;YAChE,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,EAC1E,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CACtB,CAAC;IACV,OAAO,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,SAAS,CAAC,IAAI,EAAE,EAAE;QACnF,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC1D,OAAO,CACL,GAAG,EACH,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAC3B,SAAS,CAAC,KAAK,KAAK,SAAS,IAAI,SAAS,CAAC,KAAK,KAAK,EAAE;gBACrD,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACtB,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,CACvD;YACD,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9E,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SACtG,CAAC;QACF,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,YAAY,CAAC,QAA4B,EAAE,MAA2B;IACpF,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC;IAC1C,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACxD,OAAO,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;QAC5C,yEAAyE;QACzE,2EAA2E;QAC3E,qDAAqD;QACrD,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,KAAK,SAAS;YACrB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1G,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE;YACtD,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,OAAO,CACL,QAAQ,EACR;gBACE,KAAK,EAAE,qBAAqB;gBAC5B,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,IAAI,CAAC,OAAO;gBAC1B,CAAC,iBAAiB,CAAC,EAAE,kBAAkB;aACxC,EACD,CAAC,IAAI,CAAC,OAAO,CAAC,CACf;KACN,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,OAAO,CAAC,QAA4B;IAClD,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,OAAO,OAAO,CACZ,IAAI,EACJ,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,EAChD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAChC,wEAAwE;QACxE,yEAAyE;QACzE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1C,OAAO,OAAO,CACZ,IAAI,EACJ;YACE,KAAK,EAAE,YAAY;YACnB,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,GAAG;YAC1B,4EAA4E;YAC5E,YAAY,EAAE,GAAG,KAAK,EAAE,KAAK,IAAI,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,MAAM,GAAG,CAAC,OAAO,EAAE;SAC3E,EACD;YACE,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;YACzE,sEAAsE;YACtE,mEAAmE;YACnE,mEAAmE;YACnE,oEAAoE;YACpE,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;gBACvC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;gBACjE,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;oBAClC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAC/C,MAAM,GAAG,CAAC,KAAK,MAAM,GAAG,CAAC,OAAO,EAAE;iBACnC,CAAC;aACH,CAAC;YACF,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;gBACzC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC;gBACjE,SAAS;aACV,CAAC;SACH,CACF,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,QAA4B,EAAE,IAAgB;IACtE,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,OAAO,CACZ,IAAI,EACJ,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,EACvF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC1B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,2EAA2E;QAC3E,wEAAwE;QACxE,wEAAwE;QACxE,sEAAsE;QACtE,wEAAwE;QACxE,qCAAqC;QACrC,OAAO,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE;YAChD,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,MAAM,CAAC,CAAC;YAChE,KAAK,KAAK,SAAS;gBACjB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC/C,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;oBAClC,QAAQ,CAAC,KAAK,CAAC;oBACf,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;iBAChC,CAAC;SACP,CAAC,CAAC;IACL,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,QAAQ,CAAC,IAAgB;IACvC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;QAC/C,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;YACzC,gBAAgB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS;SACrD,CAAC;QACF,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC;KAChE,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,KAA8B;IACxD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,KAAK,GAAkB,EAAE,CAAC;IAChC,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,EAAE;YAClE,IAAI,EAAE;YACN,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SAC9C,CAAC,CACH,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC;QAC7C,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE;YAC9D,IAAI,EAAE;YACN,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE;gBAClB,SAAS,IAAI,MAAM,OAAO,CAAC,OAAO,QAAQ;gBAC1C,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aACtD,CAAC;SACH,CAAC,CACH,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,KAA8B;IACzD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,KAAK,GAAkB,EAAE,CAAC;IAChC,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,EAAE,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CACvG,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,aAAa,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC,CAC7G,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,IAAgB;IAC5C,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAC5B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACrE,OAAO,OAAO,CACZ,MAAM,EACN,EAAE,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAC/C,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAChC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,KAA8B;IACvD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;IACxF,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,8BAA8B,IAAI,KAAK,OAAO,CAAC,OAAO,SAAS,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAS,SAAS,CAAC,KAAgB,EAAE,MAAc,EAAE,KAAa,EAAE,KAAa;IAC/E,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACtC,OAAO,OAAO,CACZ,MAAM,EACN;QACE,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,KAAK;QAClB,CAAC,eAAe,CAAC,EAAE,MAAM;QACzB,KAAK,EAAE,GAAG,KAAK,IAAI,KAAK,EAAE;QAC1B,YAAY,EAAE,GAAG,KAAK,IAAI,KAAK,EAAE;KAClC;IACD,2EAA2E;IAC3E,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAC5E,0EAA0E;IAC1E,uDAAuD;IACvD,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,KAAK,EAAE,CAAC,CACpD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAEnC;;;;;;;;;GASG;AACH,SAAS,aAAa,CAAC,OAAe;IACpC,wEAAwE;IACxE,yEAAyE;IACzE,0EAA0E;IAC1E,2EAA2E;IAC3E,2DAA2D;IAC3D,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC;IAC9D,OAAO,OAAO,CACZ,MAAM,EACN,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,YAAY,EAAE,EAClG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CACrC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,UAAU,CAAC,QAA4B,EAAE,IAAuB;IAC9E,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC7C,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC;AACtF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAC3B,QAA4B,EAC5B,IAAuB;IAEvB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,0EAA0E;IAC1E,0EAA0E;IAC1E,6EAA6E;IAC7E,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,4EAA4E;IAC5E,8EAA8E;IAC9E,2BAA2B;IAC3B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnD,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK;oBAAE,SAAS;gBACnC,oEAAoE;gBACpE,wEAAwE;gBACxE,oCAAoC;gBACpC,wEAAwE;gBACxE,6DAA6D;gBAC7D,wEAAwE;gBACxE,uEAAuE;gBACvE,wEAAwE;gBACxE,yEAAyE;gBACzE,mBAAmB;gBACnB,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC5D,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;oBAAE,SAAS;gBAC/B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACjB,mEAAmE;gBACnE,kEAAkE;gBAClE,mEAAmE;gBACnE,gEAAgE;gBAChE,mDAAmD;gBACnD,IAAI,MAAM,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;oBACtC,OAAO,IAAI,CAAC,CAAC;oBACb,SAAS;gBACX,CAAC;gBACD,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;gBACtC,yEAAyE;gBACzE,kEAAkE;gBAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC7C,iEAAiE;gBACjE,gEAAgE;gBAChE,2DAA2D;gBAC3D,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAC7C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,OAAO,GAAG,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IACrD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CACxB,QAA4B,EAC5B,IAA4B,EAC5B,KAA8B,EAC9B,IAAuB;IAEvB,8EAA8E;IAC9E,4EAA4E;IAC5E,4EAA4E;IAC5E,sEAAsE;IACtE,6EAA6E;IAC7E,yEAAyE;IACzE,MAAM,KAAK,GAAG;QACZ,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC;QAChC,aAAa,CAAC,KAAK,CAAC;QACpB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;QAC/C,GAAG,YAAY,CAAC,KAAK,CAAC;QACtB,GAAG,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC;KACjC,CAAC;IACF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAuB,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAChF,CAAC;AAED,6EAA6E;AAC7E,SAAS,MAAM,CAAC,IAAiB;IAC/B,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QACxC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QACpD,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAiCD;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CACxB,QAA4B,EAC5B,GAAW,EACX,OAA0B,EAC1B,OAAgB,EAChB,GAAY;IAEZ,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,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,MAAM,GAAgB,EAAE,CAAC;IAE/B,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QACvF,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,MAAM,GAAG,CAAC,OAAO,EAAE;SAC/D,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7C,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,gBAAgB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS;YACrD,IAAI,EAAE,iBAAiB;SACxB,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACzD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;IAE7D,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,QAA4B,EAAE,GAAW;IAChE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxC,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG;YAAE,SAAS;QAChC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAChD,4EAA4E;QAC5E,wDAAwD;QACxD,IAAI,SAAS,CAAC,GAAG,KAAK,GAAG;YAAE,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,QAA4B,EAAE,KAAgB;IACrE,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACzC,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,OAAO,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAChD,CAAC;QACD,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;gBACvC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,MAAM;gBAC3C,MAAM;aACP,CAAC,CAAC;QACL,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,KAAK,CAAC;QACrB,KAAK,MAAM;YACT,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,MAAM;IACpB,OAAO,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;QACjD,OAAO,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC;QACpE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAC1B,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE;gBAClD,YAAY,CAAC,KAAK,CAAC;gBACnB,qEAAqE;gBACrE,oEAAoE;gBACpE,oEAAoE;gBACpE,kEAAkE;gBAClE,qBAAqB;gBACrB,GAAG,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC;aACnD,CAAC,CAAC;QACL,CAAC,CAAC;QACF,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE;YAC3C,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CACpC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAC5F;SACF,CAAC;KACH,CAAC,CAAC;AACL,CAAC;AAED,MAAM,YAAY,GAAgD,MAAM,CAAC,MAAM,CAAC;IAC9E,CAAC,QAAQ,EAAE,WAAW,CAAC;IACvB,CAAC,QAAQ,EAAE,aAAa,CAAC;IACzB,CAAC,QAAQ,EAAE,MAAM,CAAC;CACV,CAAC,CAAC;AAEZ,sEAAsE;AACtE,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,KAAgB;IACpC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC;IAClG,MAAM,GAAG,GAAG,aAAa,GAAG,CAAC,CAAC;IAC9B,8EAA8E;IAC9E,2EAA2E;IAC3E,2EAA2E;IAC3E,8EAA8E;IAC9E,8EAA8E;IAC9E,yDAAyD;IACzD,IAAI,SAAS,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE;YACrB,GAAG,CAAC,MAAM,EAAE;gBACV,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,KAAK;gBAClB,CAAC,EAAE,GAAG;gBACN,CAAC,EAAE,GAAG;gBACN,KAAK,EAAE,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC;gBAC/B,MAAM,EAAE,MAAM,CAAC,aAAa,GAAG,CAAC,CAAC;gBACjC,EAAE,EAAE,GAAG;aACR,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IACD,MAAM,KAAK,GACT,SAAS,CAAC,IAAI,KAAK,QAAQ;QACzB,CAAC,CAAC;YACE,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC;YACjD,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC;SAClD;QACH,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,YAAY,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1D,OAAO,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,GAAG,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,UAAU,CACjB,KAAgB,EAChB,EAAU,EACV,EAAU,EACV,CAAS,EACT,IAAmB;IAEnB,OAAO,GAAG,CAAC,MAAM,EAAE;QACjB,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,KAAK;QAClB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;QACd,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;QACb,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;QACd,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC;KACvD,CAAC,CAAC;AACL,CAAC;AAED,iFAAiF;AACjF,SAAS,cAAc,CAAC,KAAgB,EAAE,QAAsB,EAAE,CAAS;IACzE,MAAM,GAAG,GAAG,YAAY,CAAC;IACzB,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,GAAG,CAAC,MAAM,EAAE;gBACjB,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,KAAK;gBAClB,IAAI,EAAE,cAAc;gBACpB,CAAC,EAAE,IAAI,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI;aAC9G,CAAC,CAAC;QACL,KAAK,eAAe;YAClB,OAAO,GAAG,CAAC,QAAQ,EAAE;gBACnB,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,KAAK;gBAClB,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,cAAc;gBACtB,EAAE,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;gBACnB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;gBACb,CAAC,EAAE,GAAG;aACP,CAAC,CAAC;QACL,KAAK,KAAK;YACR,OAAO,GAAG,CAAC,MAAM,EAAE;gBACjB,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,KAAK;gBAClB,MAAM,EAAE,cAAc;gBACtB,EAAE,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;gBACnB,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;gBACjB,EAAE,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;gBACnB,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;aAClB,CAAC,CAAC;QACL,KAAK,MAAM,CAAC;QACZ,KAAK,WAAW;YACd,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,QAA4B;IACrD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,MAAM,KAAK,IAAI,CAAC,IAAI;gBAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,UAAU,CACxB,OAAU,EACV,QAAqC;IAErC,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACxC,MAAM,EAAE,GAAG,CAAC,GAA8B,EAA6B,EAAE,CACvE,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;IACvE,OAAO,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;AACtF,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,SAAS,CAAC,QAA4B,EAAE,IAAgB;IACtE,OAAO,IAAI,CAAC,OAAO;SAChB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,MAAM,CAAC;SAC5D,IAAI,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,YAAY,CAAC,IAAgB;IAC3C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,4EAA4E;IAC5E,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,uEAAuE;QACvE,4DAA4D;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;QAC/B,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC1F,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,SAAS,CAAC,QAA4B,EAAE,IAAgB;IACtE,OAAO,GAAG,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;AAC7F,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,OAAO,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AACxD,CAAC"}
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
* so and offers the next move instead of drawing a hairball.
|
|
15
15
|
*/
|
|
16
16
|
import type { NormalizedDocument } from '../document.ts';
|
|
17
|
+
import { type EdgeMark } from '../marks.ts';
|
|
17
18
|
import { type Scene } from '../scene.ts';
|
|
18
19
|
import { type Theme } from '../theme.ts';
|
|
19
20
|
import { type SceneOptions } from './linear.ts';
|
|
@@ -35,6 +36,20 @@ export interface GraphOptions extends SceneOptions {
|
|
|
35
36
|
*/
|
|
36
37
|
readonly compact?: boolean | undefined;
|
|
37
38
|
readonly theme?: Theme | undefined;
|
|
39
|
+
/**
|
|
40
|
+
* Marks to draw on edges, keyed by `edgeIdentity(field, from, to)` — the same
|
|
41
|
+
* string the strokes publish on `data-ig-group`, so a caller needs no second
|
|
42
|
+
* identity and nothing to keep in step.
|
|
43
|
+
*
|
|
44
|
+
* AN INPUT IN A VOCABULARY OF POSITIONS, and that is what keeps this
|
|
45
|
+
* projection ignorant of why a mark was asked for. See `marks.ts`: a caller
|
|
46
|
+
* says `companion`, never `conflict`. The mapping from its own states onto
|
|
47
|
+
* these four placements stays with the caller and never travels here.
|
|
48
|
+
*
|
|
49
|
+
* Absent draws nothing, which is also what an older consumer of this package
|
|
50
|
+
* gets — the reason this is an option rather than a field on the scene.
|
|
51
|
+
*/
|
|
52
|
+
readonly edgeMarks?: ReadonlyMap<string, readonly EdgeMark[]> | undefined;
|
|
38
53
|
}
|
|
39
54
|
export declare function graphScene(document: NormalizedDocument, rawOptions?: GraphOptions): Scene;
|
|
40
55
|
//# sourceMappingURL=graph.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/projections/graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/projections/graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,gBAAgB,CAAC;AASxB,OAAO,EAAE,KAAK,QAAQ,EAAiB,MAAM,aAAa,CAAC;AA0B3D,OAAO,EAA0B,KAAK,KAAK,EAAmB,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,KAAK,KAAK,EAAgB,MAAM,aAAa,CAAC;AAEvD,OAAO,EACL,KAAK,YAAY,EAOlB,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IACnC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,QAAQ,EAAE,CAAC,GAAG,SAAS,CAAC;CAC3E;AAqiBD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,GAAE,YAAiB,GAAG,KAAK,CAuZ7F"}
|
|
@@ -14,14 +14,15 @@
|
|
|
14
14
|
* so and offers the next move instead of drawing a hairball.
|
|
15
15
|
*/
|
|
16
16
|
import { edgeIdentity } from '@issuegraph/core';
|
|
17
|
-
import { clustersOf } from "../clusters.js";
|
|
17
|
+
import { clusterReach, clusterReachLabel, clustersOf } from "../clusters.js";
|
|
18
18
|
import { element, svg } from "../element.js";
|
|
19
19
|
import { edgeGeometry, layoutGraph, } from "../layout.js";
|
|
20
|
-
import {
|
|
20
|
+
import { edgeMarkSpecs } from "../marks.js";
|
|
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";
|
|
21
22
|
import { resolveFocusKey } from "../scene.js";
|
|
22
23
|
import { resolveTheme } from "../theme.js";
|
|
23
24
|
import { dashArrayFor, treatmentFor } from "../vocabulary.js";
|
|
24
|
-
import { asideRow, excludedRow,
|
|
25
|
+
import { asideRow, excludedRow, footerHead, footerRow, isFooterSlot, slotRow, } from "./linear.js";
|
|
25
26
|
/**
|
|
26
27
|
* The node budget, from the design's scale table. Above the first threshold the
|
|
27
28
|
* canvas shows component capsules; above the second, clusters only.
|
|
@@ -157,7 +158,7 @@ function nodeCard(document, layout, key, options, focused) {
|
|
|
157
158
|
...(caveats === '' ? [] : [caveats]),
|
|
158
159
|
...(exclusion === undefined
|
|
159
160
|
? []
|
|
160
|
-
: [`${treatmentFor('duplicate-of').label} ${exclusion.canonical}
|
|
161
|
+
: [`${treatmentFor('duplicate-of').label} ${exclusion.canonical}, which gets worked instead`]),
|
|
161
162
|
].join(' · ');
|
|
162
163
|
// RENDERED FROM THE CARD'S OWN DESCRIPTION, which is also what the layout
|
|
163
164
|
// counted this card's height from — see `CardBlock`. Built from a second
|
|
@@ -265,11 +266,15 @@ function spineStations(document, layout, theme) {
|
|
|
265
266
|
'data-fill': box.now === true ? 'filled' : fill,
|
|
266
267
|
'data-wait': waiting ? 'serialize' : null,
|
|
267
268
|
role: 'img',
|
|
269
|
+
// THE SAME TWO-FIELD PHRASE THE ROW SPEAKS — `slotPosition`, not a
|
|
270
|
+
// second reading of `rank`. Inferring held from a missing rank here
|
|
271
|
+
// dropped the word held from a held-but-ranked station exactly as it
|
|
272
|
+
// did from the row's own name; see `slotPosition`.
|
|
268
273
|
'aria-label': box.now === true
|
|
269
274
|
? 'working now'
|
|
270
|
-
: slot === undefined
|
|
275
|
+
: slot === undefined
|
|
271
276
|
? 'held, no rank'
|
|
272
|
-
:
|
|
277
|
+
: slotPosition(slot),
|
|
273
278
|
style: `--ig-station-x:${String(box.x - theme.metrics['--ig-space'] - size)}px;--ig-station-y:${String(box.y + theme.metrics['--ig-space'])}px`,
|
|
274
279
|
}, [box.now === true ? '▸' : slot?.rank === null || slot === undefined ? '—' : String(slot.rank)]));
|
|
275
280
|
}
|
|
@@ -327,6 +332,35 @@ function refusalOrder(document, options, focused) {
|
|
|
327
332
|
...excluded.map((exclusion) => excludedRow(document, exclusion.key, exclusion.canonical, withFocus)),
|
|
328
333
|
]);
|
|
329
334
|
}
|
|
335
|
+
/**
|
|
336
|
+
* One component, as §16's refusal presents it.
|
|
337
|
+
*
|
|
338
|
+
* NOT A CONTROL, and that is settled rather than pending — `refusal`'s own
|
|
339
|
+
* note below records why: this package does not narrow, so a control here can
|
|
340
|
+
* never complete the action it advertises. Frame `17f`'s "click to enter one"
|
|
341
|
+
* is layer 2's to draw, on the layer that can.
|
|
342
|
+
*
|
|
343
|
+
* What it does carry is the same reach the editor's capsule carries, from the
|
|
344
|
+
* same function, so one component is never described two ways on one screen.
|
|
345
|
+
*/
|
|
346
|
+
function capsuleSpec(cluster) {
|
|
347
|
+
const reach = clusterReach(cluster);
|
|
348
|
+
return element('li', { class: 'ig-capsule' }, [
|
|
349
|
+
element('span', { class: 'ig-count' }, [`${String(cluster.members.length)} issues`]),
|
|
350
|
+
// THE BLOCKING COUNT STAYS, unlike on §17f's card. That rule is the frame's,
|
|
351
|
+
// and the frame's constraint is a two-column card with ONE slot beside the
|
|
352
|
+
// count; this capsule is a flex row with room for both, and dropping the
|
|
353
|
+
// number would leave a §16 reader unable to tell a two-edge cycle component
|
|
354
|
+
// from a two-hundred-edge one. "§16 ships unchanged" is the standing rule;
|
|
355
|
+
// the only thing that changes here is the depth, which was untrue.
|
|
356
|
+
element('span', { class: 'ig-count' }, [`${String(cluster.blockedByEdges)} blocking`]),
|
|
357
|
+
reach.kind === 'cyclic'
|
|
358
|
+
? element('span', { class: 'ig-badge', 'data-edge': 'blocked-by' }, ['cycle'])
|
|
359
|
+
: null,
|
|
360
|
+
element('span', { class: 'ig-count' }, [clusterReachLabel(reach)]),
|
|
361
|
+
element('span', { class: 'ig-id' }, [cluster.members.slice(0, 3).join(', ')]),
|
|
362
|
+
]);
|
|
363
|
+
}
|
|
330
364
|
/**
|
|
331
365
|
* The refusal.
|
|
332
366
|
*
|
|
@@ -347,8 +381,8 @@ function refusal(document, layout, nodeCount, mode) {
|
|
|
347
381
|
// under a sentence telling the reader to choose one.
|
|
348
382
|
const clusters = clustersOf(document, new Set(layout.nodes.keys()));
|
|
349
383
|
const heading = mode === 'capsules'
|
|
350
|
-
? `${String(nodeCount)} related issues
|
|
351
|
-
: `${String(nodeCount)} related issues
|
|
384
|
+
? `${String(nodeCount)} related issues are too many to draw here. The limit is ${String(GRAPH_NODE_BUDGET)}.`
|
|
385
|
+
: `${String(nodeCount)} related issues are far too many to draw, so they are shown as groups.`;
|
|
352
386
|
// THE REFUSAL IS INFORMATIONAL. IT PUBLISHES NO CONTROL — and that is a
|
|
353
387
|
// RESTRUCTURE, not a regression of the round-five finding it answers.
|
|
354
388
|
// That finding offered two remedies: expose an actionable component target,
|
|
@@ -376,22 +410,14 @@ function refusal(document, layout, nodeCount, mode) {
|
|
|
376
410
|
const omitted = clusters.length - shown.length;
|
|
377
411
|
return element('section', { class: 'ig-refusal', role: 'note' }, [
|
|
378
412
|
element('p', {}, [heading]),
|
|
379
|
-
element('ol', { class: 'ig-list', 'aria-label': '
|
|
380
|
-
element('span', { class: 'ig-count' }, [`${String(cluster.members.length)} issues`]),
|
|
381
|
-
element('span', { class: 'ig-count' }, [`${String(cluster.blockedByEdges)} blocking`]),
|
|
382
|
-
element('span', { class: 'ig-count' }, [`depth ${String(cluster.chainDepth)}`]),
|
|
383
|
-
cluster.hasCycle
|
|
384
|
-
? element('span', { class: 'ig-badge', 'data-edge': 'blocked-by' }, ['cycle'])
|
|
385
|
-
: null,
|
|
386
|
-
element('span', { class: 'ig-id' }, [cluster.members.slice(0, 3).join(', ')]),
|
|
387
|
-
]))),
|
|
413
|
+
element('ol', { class: 'ig-list', 'aria-label': 'groups of related issues' }, shown.map((cluster) => capsuleSpec(cluster))),
|
|
388
414
|
omitted > 0
|
|
389
415
|
? element('p', { class: 'ig-refusal-omitted' }, [
|
|
390
|
-
`${String(omitted)}
|
|
416
|
+
`${String(omitted)} more ${omitted === 1 ? 'group is' : 'groups are'} not listed (${String(clusters.length)} in all).`,
|
|
391
417
|
])
|
|
392
418
|
: null,
|
|
393
419
|
element('p', { class: 'ig-refusal-next' }, [
|
|
394
|
-
'
|
|
420
|
+
'The list always shows the full order, however many issues there are.',
|
|
395
421
|
]),
|
|
396
422
|
]);
|
|
397
423
|
}
|
|
@@ -415,19 +441,13 @@ function footerGroup(document, layout, options, focused) {
|
|
|
415
441
|
// that named only the runner and the never-worked said something untrue about
|
|
416
442
|
// them.
|
|
417
443
|
const undrawn = entries.length > slots.length + excluded.length;
|
|
418
|
-
const labels = footerLabels(slots);
|
|
419
444
|
return element('section', { class: 'ig-footer' }, [
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
}),
|
|
427
|
-
]),
|
|
428
|
-
labels === '' ? null : element('span', { class: 'ig-footer-labels' }, [labels]),
|
|
429
|
-
]),
|
|
430
|
-
element('ol', { class: 'ig-list', 'aria-label': 'outside the order' }, entries),
|
|
445
|
+
footerHead(entries.length, {
|
|
446
|
+
runner: slots.length > 0,
|
|
447
|
+
neverWorked: excluded.length > 0,
|
|
448
|
+
undrawn,
|
|
449
|
+
}),
|
|
450
|
+
element('ol', { class: 'ig-list', 'aria-label': 'not in the order' }, entries),
|
|
431
451
|
]);
|
|
432
452
|
}
|
|
433
453
|
/**
|
|
@@ -625,12 +645,12 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
625
645
|
canvas = null;
|
|
626
646
|
}
|
|
627
647
|
else if (drawsNothing) {
|
|
628
|
-
canvas = emptyState('No
|
|
648
|
+
canvas = emptyState('No relationships yet, so there is nothing to draw.');
|
|
629
649
|
}
|
|
630
650
|
else if (nodeCount === 0) {
|
|
631
651
|
// Nothing to draw ON the canvas, and a footer group beneath it that is the
|
|
632
652
|
// whole panel. No stage, no refusal: the group renders in ordinary flow.
|
|
633
|
-
canvas = emptyState('Nothing
|
|
653
|
+
canvas = emptyState('Nothing is in the order yet, so there is nothing to draw.');
|
|
634
654
|
}
|
|
635
655
|
else if (nodeCount > CLUSTER_ONLY_BUDGET) {
|
|
636
656
|
diagnostics.push(`graph refused: ${String(nodeCount)} nodes is past the cluster-only budget of ${String(CLUSTER_ONLY_BUDGET)}`);
|
|
@@ -665,10 +685,33 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
665
685
|
const geometry = edgeGeometry(layout, drawn);
|
|
666
686
|
if (geometry === null)
|
|
667
687
|
continue;
|
|
688
|
+
const identity = edgeIdentity(edge.field, edge.from, edge.to);
|
|
668
689
|
edgeLayers.push(...edgePaths(edge, geometry, theme));
|
|
669
|
-
const marker = terminalMarker(treatmentFor(edge.field).terminal, geometry, edge.field,
|
|
690
|
+
const marker = terminalMarker(treatmentFor(edge.field).terminal, geometry, edge.field, identity, theme);
|
|
670
691
|
if (marker !== null)
|
|
671
692
|
edgeLayers.push(marker);
|
|
693
|
+
// THE MARKS A CALLER ASKED FOR, LAST, so every one of them sits in front
|
|
694
|
+
// of the line it decorates rather than under it.
|
|
695
|
+
//
|
|
696
|
+
// Keyed on the DECLARED identity, like the terminal above, even though the
|
|
697
|
+
// geometry was solved from a possibly-swapped `drawn` edge — a caller
|
|
698
|
+
// holds the edge as written and has no way to know which way this
|
|
699
|
+
// projection chose to point the arrow.
|
|
700
|
+
const requested = options.edgeMarks?.get(identity);
|
|
701
|
+
if (requested !== undefined && requested.length > 0) {
|
|
702
|
+
const treatment = treatmentFor(edge.field);
|
|
703
|
+
edgeLayers.push(...edgeMarkSpecs(requested, geometry, theme, identity, {
|
|
704
|
+
doubled: treatment.dash === 'double',
|
|
705
|
+
// THE KIND'S OWN DASH AND HUE, HANDED OVER RATHER THAN LEFT TO CSS.
|
|
706
|
+
// Every mark drops `class`, so `.ig-edge[data-edge=…]` reaches none
|
|
707
|
+
// of them — a companion would draw solid beside a dotted line, and a
|
|
708
|
+
// chip would take the viewer's body text instead of the
|
|
709
|
+
// relationship's colour. Both are channels the type identity rests
|
|
710
|
+
// on, lost exactly where a reader is comparing two versions.
|
|
711
|
+
dashArray: dashArrayFor(treatment.dash),
|
|
712
|
+
hueToken: treatment.hueToken,
|
|
713
|
+
}));
|
|
714
|
+
}
|
|
672
715
|
}
|
|
673
716
|
// THE SPINE ITSELF, painted first so every arc bows off a line that is
|
|
674
717
|
// already there. It spans the stations and no further: a line running the
|
|
@@ -718,6 +761,19 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
718
761
|
const root = element('section', {
|
|
719
762
|
class: 'ig-viewer ig-graph',
|
|
720
763
|
'data-projection': 'graph',
|
|
764
|
+
// See `SceneOptions.frame`; stamped on all three roots, because the
|
|
765
|
+
// container that declines the frame does not know which projection it
|
|
766
|
+
// was handed.
|
|
767
|
+
'data-frame': options.frame === false ? 'none' : undefined,
|
|
768
|
+
// See `SceneOptions.dockLegend`; stamped on all three roots, because every
|
|
769
|
+
// projection draws the same legend and the container's scrollport does not
|
|
770
|
+
// change with the projection.
|
|
771
|
+
'data-legend': options.dockLegend === true ? 'docked' : undefined,
|
|
772
|
+
// Stamped on all three roots rather than on the one that draws rows.
|
|
773
|
+
// A projection toggle must not silently drop a host's decision, and
|
|
774
|
+
// the graph carries a footer group of rows of its own. See
|
|
775
|
+
// `SceneOptions.density`.
|
|
776
|
+
'data-density': options.density,
|
|
721
777
|
'data-ig-condition': conditionKind(document, options.chrome),
|
|
722
778
|
'aria-label': 'issue order and relationships',
|
|
723
779
|
}, [
|
|
@@ -776,7 +832,7 @@ export function graphScene(document, rawOptions = {}) {
|
|
|
776
832
|
document.isolated.length === 0
|
|
777
833
|
? null
|
|
778
834
|
: element('p', { class: 'ig-count' }, [
|
|
779
|
-
`${String(document.isolated.length)}
|
|
835
|
+
`${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`,
|
|
780
836
|
]),
|
|
781
837
|
legend(),
|
|
782
838
|
// LAST, because §16h calls it the panel FOOTER and the legend is a footer
|