@elaraai/e3-ui 1.0.102 → 1.0.104
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/src/allocation/functions.d.ts +2 -1
- package/dist/src/allocation/functions.d.ts.map +1 -1
- package/dist/src/allocation/functions.js +3 -2
- package/dist/src/allocation/functions.js.map +1 -1
- package/dist/src/allocation/index.d.ts +120 -1
- package/dist/src/allocation/index.d.ts.map +1 -1
- package/dist/src/allocation/index.js +24 -4
- package/dist/src/allocation/index.js.map +1 -1
- package/dist/src/bind/data-indexed.d.ts +25 -4
- package/dist/src/bind/data-indexed.d.ts.map +1 -1
- package/dist/src/bind/data-indexed.js +58 -7
- package/dist/src/bind/data-indexed.js.map +1 -1
- package/dist/src/bind/data.d.ts +12 -14
- package/dist/src/bind/data.d.ts.map +1 -1
- package/dist/src/bind/data.js +11 -11
- package/dist/src/bind/data.js.map +1 -1
- package/dist/src/bind/func.d.ts +7 -2
- package/dist/src/bind/func.d.ts.map +1 -1
- package/dist/src/bind/func.js +10 -3
- package/dist/src/bind/func.js.map +1 -1
- package/dist/src/bind/record.d.ts +6 -6
- package/dist/src/bind/record.d.ts.map +1 -1
- package/dist/src/bind/record.js.map +1 -1
- package/dist/src/calendar/index.d.ts +148 -1
- package/dist/src/calendar/index.d.ts.map +1 -1
- package/dist/src/calendar/index.js +55 -5
- package/dist/src/calendar/index.js.map +1 -1
- package/dist/src/decision/bind.d.ts.map +1 -1
- package/dist/src/decision/index.d.ts +218 -218
- package/dist/src/decision/index.d.ts.map +1 -1
- package/dist/src/decision/types.d.ts.map +1 -1
- package/dist/src/flowchart/canvas.d.ts +32 -14
- package/dist/src/flowchart/canvas.d.ts.map +1 -1
- package/dist/src/flowchart/canvas.js +21 -6
- package/dist/src/flowchart/canvas.js.map +1 -1
- package/dist/src/flowchart/details.d.ts +469 -0
- package/dist/src/flowchart/details.d.ts.map +1 -0
- package/dist/src/flowchart/details.js +1035 -0
- package/dist/src/flowchart/details.js.map +1 -0
- package/dist/src/flowchart/flowchart.d.ts +16 -72
- package/dist/src/flowchart/flowchart.d.ts.map +1 -1
- package/dist/src/flowchart/flowchart.js +10 -1
- package/dist/src/flowchart/flowchart.js.map +1 -1
- package/dist/src/flowchart/index.d.ts +282 -251
- package/dist/src/flowchart/index.d.ts.map +1 -1
- package/dist/src/flowchart/index.js +234 -220
- package/dist/src/flowchart/index.js.map +1 -1
- package/dist/src/flowchart/kinds.d.ts +438 -0
- package/dist/src/flowchart/kinds.d.ts.map +1 -0
- package/dist/src/flowchart/kinds.js +799 -0
- package/dist/src/flowchart/kinds.js.map +1 -0
- package/dist/src/flowchart/library.d.ts +155 -740
- package/dist/src/flowchart/library.d.ts.map +1 -1
- package/dist/src/flowchart/library.js +191 -673
- package/dist/src/flowchart/library.js.map +1 -1
- package/dist/src/flowchart/payload.d.ts +3654 -7845
- package/dist/src/flowchart/payload.d.ts.map +1 -1
- package/dist/src/flowchart/payload.js +331 -469
- package/dist/src/flowchart/payload.js.map +1 -1
- package/dist/src/flowchart/templates.d.ts +657 -0
- package/dist/src/flowchart/templates.d.ts.map +1 -0
- package/dist/src/flowchart/templates.js +658 -0
- package/dist/src/flowchart/templates.js.map +1 -0
- package/dist/src/flowchart/types.d.ts +2258 -214
- package/dist/src/flowchart/types.d.ts.map +1 -1
- package/dist/src/flowchart/types.js +374 -124
- package/dist/src/flowchart/types.js.map +1 -1
- package/dist/src/index.d.ts +13 -15
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +24 -29
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal.d.ts +5 -7
- package/dist/src/internal.d.ts.map +1 -1
- package/dist/src/internal.js +12 -19
- package/dist/src/internal.js.map +1 -1
- package/dist/src/ontology/index.d.ts +44 -15
- package/dist/src/ontology/index.d.ts.map +1 -1
- package/dist/src/ontology/index.js +19 -11
- package/dist/src/ontology/index.js.map +1 -1
- package/dist/src/plan/builders.d.ts +26 -26
- package/dist/src/plan/builders.d.ts.map +1 -1
- package/dist/src/plan/builders.js.map +1 -1
- package/dist/src/plan/event-rows.d.ts +59 -58
- package/dist/src/plan/event-rows.d.ts.map +1 -1
- package/dist/src/plan/event-rows.js +6 -4
- package/dist/src/plan/event-rows.js.map +1 -1
- package/dist/src/plan/factories.js.map +1 -1
- package/dist/src/plan/ir.d.ts +1 -0
- package/dist/src/plan/ir.d.ts.map +1 -1
- package/dist/src/plan/library.d.ts.map +1 -1
- package/dist/src/plan/nested-checks.js.map +1 -1
- package/dist/src/plan/plan.d.ts +567 -423
- package/dist/src/plan/plan.d.ts.map +1 -1
- package/dist/src/plan/plan.js +67 -3
- package/dist/src/plan/plan.js.map +1 -1
- package/dist/src/plan/series.d.ts.map +1 -1
- package/dist/src/plan/series.js.map +1 -1
- package/dist/src/plan/types.d.ts +173 -172
- package/dist/src/plan/types.d.ts.map +1 -1
- package/dist/src/query/builder.d.ts +368 -321
- package/dist/src/query/builder.d.ts.map +1 -1
- package/dist/src/query/builder.js +12 -1
- package/dist/src/query/builder.js.map +1 -1
- package/dist/src/query/index.d.ts +5 -1
- package/dist/src/query/index.d.ts.map +1 -1
- package/dist/src/query/index.js +3 -1
- package/dist/src/query/index.js.map +1 -1
- package/dist/src/query/library.d.ts +6 -6
- package/dist/src/query/queries.d.ts +3 -3
- package/dist/src/roster/fit.d.ts +5 -2
- package/dist/src/roster/fit.d.ts.map +1 -1
- package/dist/src/roster/fit.js +5 -3
- package/dist/src/roster/fit.js.map +1 -1
- package/dist/src/roster/index.d.ts +103 -2
- package/dist/src/roster/index.d.ts.map +1 -1
- package/dist/src/roster/index.js +45 -6
- package/dist/src/roster/index.js.map +1 -1
- package/dist/src/runtime/index.d.ts +1 -3
- package/dist/src/runtime/index.d.ts.map +1 -1
- package/dist/src/runtime/index.js +1 -3
- package/dist/src/runtime/index.js.map +1 -1
- package/dist/src/schedule/fields.js.map +1 -1
- package/dist/src/schedule/library.js.map +1 -1
- package/dist/src/schedule/record-window.d.ts +27 -26
- package/dist/src/schedule/record-window.d.ts.map +1 -1
- package/dist/src/schedule/types.d.ts +196 -196
- package/dist/src/schematic/index.d.ts +1 -1
- package/dist/src/schematic/index.d.ts.map +1 -1
- package/dist/src/schematic/index.js +1 -1
- package/dist/src/schematic/index.js.map +1 -1
- package/dist/src/schematic/kinds.d.ts +4 -24
- package/dist/src/schematic/kinds.d.ts.map +1 -1
- package/dist/src/schematic/kinds.js +8 -212
- package/dist/src/schematic/kinds.js.map +1 -1
- package/dist/src/schematic/library.d.ts.map +1 -1
- package/dist/src/schematic/payload.d.ts +1688 -1549
- package/dist/src/schematic/payload.d.ts.map +1 -1
- package/dist/src/schematic/payload.js +38 -1
- package/dist/src/schematic/payload.js.map +1 -1
- package/dist/src/schematic/shapes.d.ts.map +1 -1
- package/dist/src/schematic/types.d.ts +978 -978
- package/dist/src/schematic/types.d.ts.map +1 -1
- package/dist/src/schematic/types.js +4 -36
- package/dist/src/schematic/types.js.map +1 -1
- package/dist/src/schematic/window.d.ts +9 -42
- package/dist/src/schematic/window.d.ts.map +1 -1
- package/dist/src/schematic/window.js +10 -115
- package/dist/src/schematic/window.js.map +1 -1
- package/dist/src/sheet/actions.d.ts +388 -0
- package/dist/src/sheet/actions.d.ts.map +1 -0
- package/dist/src/sheet/actions.js +594 -0
- package/dist/src/sheet/actions.js.map +1 -0
- package/dist/src/sheet/bridge.d.ts +12 -1
- package/dist/src/sheet/bridge.d.ts.map +1 -1
- package/dist/src/sheet/bridge.js +30 -6
- package/dist/src/sheet/bridge.js.map +1 -1
- package/dist/src/sheet/columns.d.ts +5 -2
- package/dist/src/sheet/columns.d.ts.map +1 -1
- package/dist/src/sheet/columns.js.map +1 -1
- package/dist/src/sheet/draft-bridge.d.ts +9 -4
- package/dist/src/sheet/draft-bridge.d.ts.map +1 -1
- package/dist/src/sheet/draft-bridge.js +22 -7
- package/dist/src/sheet/draft-bridge.js.map +1 -1
- package/dist/src/sheet/editing-types.d.ts +71 -71
- package/dist/src/sheet/fields.d.ts +13 -0
- package/dist/src/sheet/fields.d.ts.map +1 -1
- package/dist/src/sheet/fields.js +3 -0
- package/dist/src/sheet/fields.js.map +1 -1
- package/dist/src/sheet/group.js.map +1 -1
- package/dist/src/sheet/index.d.ts +32 -2
- package/dist/src/sheet/index.d.ts.map +1 -1
- package/dist/src/sheet/index.js +18 -3
- package/dist/src/sheet/index.js.map +1 -1
- package/dist/src/sheet/library.d.ts +8 -0
- package/dist/src/sheet/library.d.ts.map +1 -1
- package/dist/src/sheet/library.js.map +1 -1
- package/dist/src/sheet/link.d.ts.map +1 -1
- package/dist/src/sheet/record.js.map +1 -1
- package/dist/src/sheet/root.d.ts +23 -1
- package/dist/src/sheet/root.d.ts.map +1 -1
- package/dist/src/sheet/root.js +40 -5
- package/dist/src/sheet/root.js.map +1 -1
- package/dist/src/sheet/sheet.d.ts +9332 -5621
- package/dist/src/sheet/sheet.d.ts.map +1 -1
- package/dist/src/sheet/sheet.js +41 -2
- package/dist/src/sheet/sheet.js.map +1 -1
- package/dist/src/sheet/templates.d.ts +4 -0
- package/dist/src/sheet/templates.d.ts.map +1 -1
- package/dist/src/sheet/types.d.ts +13020 -5839
- package/dist/src/sheet/types.d.ts.map +1 -1
- package/dist/src/sheet/types.js +114 -2
- package/dist/src/sheet/types.js.map +1 -1
- package/dist/src/studio/builder.d.ts +6 -6
- package/dist/src/studio/library.d.ts +9 -9
- package/dist/src/studio/pages.d.ts +6 -6
- package/dist/src/studio/publish.d.ts +3 -3
- package/dist/src/utils/derive.d.ts +1 -1
- package/dist/src/utils/derive.js +1 -1
- package/dist/src/utils/derive.js.map +1 -1
- package/dist/src/utils/key-visibility.d.ts +1 -1
- package/dist/src/utils/record-kind.d.ts +625 -0
- package/dist/src/utils/record-kind.d.ts.map +1 -0
- package/dist/src/utils/record-kind.js +450 -0
- package/dist/src/utils/record-kind.js.map +1 -0
- package/dist/src/utils/views.d.ts +55 -0
- package/dist/src/utils/views.d.ts.map +1 -0
- package/dist/src/utils/views.js +72 -0
- package/dist/src/utils/views.js.map +1 -0
- package/dist/src/utils/vocabulary.d.ts +48 -0
- package/dist/src/utils/vocabulary.d.ts.map +1 -0
- package/dist/src/utils/vocabulary.js +47 -0
- package/dist/src/utils/vocabulary.js.map +1 -0
- package/dist/test/allocation/allocation.examples.d.ts +3 -1
- package/dist/test/allocation/allocation.examples.d.ts.map +1 -1
- package/dist/test/allocation/allocation.examples.js +81 -2
- package/dist/test/allocation/allocation.examples.js.map +1 -1
- package/dist/test/bind/data/data.examples.d.ts +1 -1
- package/dist/test/bind/func/func.examples.d.ts +19 -1
- package/dist/test/bind/func/func.examples.d.ts.map +1 -1
- package/dist/test/bind/func/func.examples.js +36 -1
- package/dist/test/bind/func/func.examples.js.map +1 -1
- package/dist/test/calendar/calendar.examples.d.ts +2 -0
- package/dist/test/calendar/calendar.examples.d.ts.map +1 -1
- package/dist/test/calendar/calendar.examples.js +80 -2
- package/dist/test/calendar/calendar.examples.js.map +1 -1
- package/dist/test/decision/queue.examples.d.ts +1 -0
- package/dist/test/decision/queue.examples.d.ts.map +1 -1
- package/dist/test/decision/queue.examples.js +12 -0
- package/dist/test/decision/queue.examples.js.map +1 -1
- package/dist/test/examples-package.d.ts.map +1 -1
- package/dist/test/examples-package.js +5 -4
- package/dist/test/examples-package.js.map +1 -1
- package/dist/test/flowchart/flowchart.examples.d.ts +1250 -4605
- package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -1
- package/dist/test/flowchart/flowchart.examples.js +861 -512
- package/dist/test/flowchart/flowchart.examples.js.map +1 -1
- package/dist/test/ontology/ontology.examples.d.ts +2 -3
- package/dist/test/ontology/ontology.examples.d.ts.map +1 -1
- package/dist/test/ontology/ontology.examples.js +32 -21
- package/dist/test/ontology/ontology.examples.js.map +1 -1
- package/dist/test/plan/plan-events.examples.d.ts +1 -0
- package/dist/test/plan/plan-events.examples.d.ts.map +1 -1
- package/dist/test/plan/plan-events.examples.js +44 -0
- package/dist/test/plan/plan-events.examples.js.map +1 -1
- package/dist/test/plan/plan-nested.examples.d.ts +15 -15
- package/dist/test/plan/plan-nested.examples.d.ts.map +1 -1
- package/dist/test/plan/plan-nested.examples.js +5 -5
- package/dist/test/plan/plan-nested.examples.js.map +1 -1
- package/dist/test/plan/plan-records.examples.d.ts.map +1 -1
- package/dist/test/plan/plan-records.examples.js +1 -1
- package/dist/test/plan/plan-records.examples.js.map +1 -1
- package/dist/test/plan/plan.examples.js.map +1 -1
- package/dist/test/query/query.examples.d.ts +2 -0
- package/dist/test/query/query.examples.d.ts.map +1 -1
- package/dist/test/query/query.examples.js +37 -1
- package/dist/test/query/query.examples.js.map +1 -1
- package/dist/test/roster/domain.examples.d.ts.map +1 -1
- package/dist/test/roster/roster.examples.d.ts +2 -0
- package/dist/test/roster/roster.examples.d.ts.map +1 -1
- package/dist/test/roster/roster.examples.js +76 -15
- package/dist/test/roster/roster.examples.js.map +1 -1
- package/dist/test/schematic/schematic-records.examples.d.ts.map +1 -1
- package/dist/test/schematic/schematic-records.examples.js +6 -4
- package/dist/test/schematic/schematic-records.examples.js.map +1 -1
- package/dist/test/schematic/schematic.examples.d.ts +1 -0
- package/dist/test/schematic/schematic.examples.d.ts.map +1 -1
- package/dist/test/schematic/schematic.examples.js +144 -0
- package/dist/test/schematic/schematic.examples.js.map +1 -1
- package/dist/test/sheet/sheet-actions.examples.d.ts +1264 -0
- package/dist/test/sheet/sheet-actions.examples.d.ts.map +1 -0
- package/dist/test/sheet/sheet-actions.examples.js +394 -0
- package/dist/test/sheet/sheet-actions.examples.js.map +1 -0
- package/dist/test/sheet/sheet-records.examples.d.ts +1 -1
- package/dist/test/sheet/sheet.examples.d.ts +1 -0
- package/dist/test/sheet/sheet.examples.d.ts.map +1 -1
- package/dist/test/sheet/sheet.examples.js +77 -0
- package/dist/test/sheet/sheet.examples.js.map +1 -1
- package/dist/test/studio/studio.examples.d.ts +1 -0
- package/dist/test/studio/studio.examples.d.ts.map +1 -1
- package/dist/test/studio/studio.examples.js +18 -8
- package/dist/test/studio/studio.examples.js.map +1 -1
- package/package.json +14 -13
- package/dist/src/diff/index.d.ts +0 -407
- package/dist/src/diff/index.d.ts.map +0 -1
- package/dist/src/diff/index.js +0 -203
- package/dist/src/diff/index.js.map +0 -1
- package/dist/src/experiment/index.d.ts +0 -1033
- package/dist/src/experiment/index.d.ts.map +0 -1
- package/dist/src/experiment/index.js +0 -197
- package/dist/src/experiment/index.js.map +0 -1
- package/dist/src/experiment/types.d.ts +0 -1093
- package/dist/src/experiment/types.d.ts.map +0 -1
- package/dist/src/experiment/types.js +0 -423
- package/dist/src/experiment/types.js.map +0 -1
- package/dist/src/flowchart/over.d.ts +0 -227
- package/dist/src/flowchart/over.d.ts.map +0 -1
- package/dist/src/flowchart/over.js +0 -213
- package/dist/src/flowchart/over.js.map +0 -1
- package/dist/src/flowchart/patch.d.ts +0 -64
- package/dist/src/flowchart/patch.d.ts.map +0 -1
- package/dist/src/flowchart/patch.js +0 -67
- package/dist/src/flowchart/patch.js.map +0 -1
- package/dist/src/flowchart/values.d.ts +0 -271
- package/dist/src/flowchart/values.d.ts.map +0 -1
- package/dist/src/flowchart/values.js +0 -220
- package/dist/src/flowchart/values.js.map +0 -1
- package/dist/src/flowchart/window.d.ts +0 -306
- package/dist/src/flowchart/window.d.ts.map +0 -1
- package/dist/src/flowchart/window.js +0 -63
- package/dist/src/flowchart/window.js.map +0 -1
- package/dist/src/runtime/diff.d.ts +0 -36
- package/dist/src/runtime/diff.d.ts.map +0 -1
- package/dist/src/runtime/diff.js +0 -34
- package/dist/src/runtime/diff.js.map +0 -1
- package/dist/src/runtime/experiment.d.ts +0 -48
- package/dist/src/runtime/experiment.d.ts.map +0 -1
- package/dist/src/runtime/experiment.js +0 -10
- package/dist/src/runtime/experiment.js.map +0 -1
- package/dist/test/diff/diff.examples.d.ts +0 -313
- package/dist/test/diff/diff.examples.d.ts.map +0 -1
- package/dist/test/diff/diff.examples.js +0 -452
- package/dist/test/diff/diff.examples.js.map +0 -1
- package/dist/test/experiment/experiment.examples.d.ts +0 -1512
- package/dist/test/experiment/experiment.examples.d.ts.map +0 -1
- package/dist/test/experiment/experiment.examples.js +0 -609
- package/dist/test/experiment/experiment.examples.js.map +0 -1
|
@@ -4,22 +4,31 @@
|
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
6
|
* The flowchart's canvas (#1244, `Flowchart Builder Spec.md` §5.2): what it
|
|
7
|
-
* draws with besides its
|
|
7
|
+
* draws with besides its kinds — orientation, the freshness chip, the legend
|
|
8
8
|
* and the minimap, the selection callbacks and the connect veto. The payload
|
|
9
9
|
* carries one whole, as its `canvas`. The flowchart fills the box it is given
|
|
10
10
|
* (#1245): it takes no height of its own. Its gestures are its editing
|
|
11
11
|
* session's (#1247): it takes no callback for an edit. It has no hover cards
|
|
12
12
|
* (#1250): the inspector shows what is selected. It draws at one rhythm, the
|
|
13
|
-
* spec's
|
|
14
|
-
*
|
|
15
|
-
*
|
|
13
|
+
* spec's cards in their lanes (#1251): it takes no density. Its one narrowing
|
|
14
|
+
* is its `slice` over the app's records (#1500), the payload's, never the
|
|
15
|
+
* canvas's.
|
|
16
16
|
*
|
|
17
17
|
* @packageDocumentation
|
|
18
18
|
*/
|
|
19
|
-
import { East, variant, some, none, BooleanType, DateTimeType, FunctionType, NullType, OptionType, StringType, StructType, } from "@elaraai/east";
|
|
19
|
+
import { East, variant, some, none, BooleanType, DateTimeType, FunctionType, IntegerType, NullType, OptionType, StringType, StructType, } from "@elaraai/east";
|
|
20
20
|
import { FlowchartOrientationType, FlowchartFreshnessType } from "./types.js";
|
|
21
21
|
/**
|
|
22
|
-
*
|
|
22
|
+
* The flowchart on a phone: a frame 560 px wide or narrower shows a window of
|
|
23
|
+
* its lanes across its width, which its pager steps through. Above 560 px it
|
|
24
|
+
* does nothing. Where the details draw on the cards the window shows one lane,
|
|
25
|
+
* at least its own width, each step bringing the lane's card to its middle.
|
|
26
|
+
*
|
|
27
|
+
* @property lanes - How many lanes the window shows at once, 1 to 3; `none` shows 2
|
|
28
|
+
*/
|
|
29
|
+
export const FlowchartNarrowType = StructType({ lanes: OptionType(IntegerType) });
|
|
30
|
+
/**
|
|
31
|
+
* East type for the flowchart's canvas — what it draws its kinds with: the
|
|
23
32
|
* payload's `canvas`.
|
|
24
33
|
*
|
|
25
34
|
* @remarks
|
|
@@ -37,6 +46,7 @@ export const FlowchartCanvasType = StructType({
|
|
|
37
46
|
onSelectTrigger: OptionType(FunctionType([StringType], NullType)),
|
|
38
47
|
onTracePath: OptionType(FunctionType([StringType], NullType)),
|
|
39
48
|
canConnect: OptionType(FunctionType([StringType, StringType], BooleanType)),
|
|
49
|
+
narrow: OptionType(FlowchartNarrowType),
|
|
40
50
|
});
|
|
41
51
|
// ============================================================================
|
|
42
52
|
// Build
|
|
@@ -50,6 +60,10 @@ export const FlowchartCanvasType = StructType({
|
|
|
50
60
|
* @internal
|
|
51
61
|
*/
|
|
52
62
|
export function buildCanvas(options) {
|
|
63
|
+
const lanes = options.narrow?.lanes;
|
|
64
|
+
if (lanes !== undefined && ![1, 2, 3].includes(lanes)) {
|
|
65
|
+
throw new Error(`Flowchart: \`narrow.lanes\` is how many lanes a phone shows at once, 1 to 3 — got ${String(lanes)}`);
|
|
66
|
+
}
|
|
53
67
|
return East.value({
|
|
54
68
|
orientation: options.orientation !== undefined
|
|
55
69
|
? some(typeof options.orientation === "string" ? variant(options.orientation, null) : options.orientation)
|
|
@@ -67,6 +81,7 @@ export function buildCanvas(options) {
|
|
|
67
81
|
onSelectTrigger: options.onSelectTrigger !== undefined ? some(options.onSelectTrigger) : none,
|
|
68
82
|
onTracePath: options.onTracePath !== undefined ? some(options.onTracePath) : none,
|
|
69
83
|
canConnect: options.canConnect !== undefined ? some(options.canConnect) : none,
|
|
84
|
+
narrow: options.narrow !== undefined ? some({ lanes: lanes !== undefined ? some(BigInt(lanes)) : none }) : none,
|
|
70
85
|
}, FlowchartCanvasType);
|
|
71
86
|
}
|
|
72
87
|
//# sourceMappingURL=canvas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/flowchart/canvas.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAGH,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,UAAU,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAE9E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/flowchart/canvas.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,469 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* The Flowchart's details (#1507, `Flowchart Records Spec.md` §3, R18–R21):
|
|
7
|
+
* `Flowchart.details` and its four reads — `Flowchart.figure`, `.histogram`,
|
|
8
|
+
* `.list` and `.tags` — over the app's rows keyed as a kind's are, read only.
|
|
9
|
+
*
|
|
10
|
+
* - **A read is a frozen description behind a phantom brand**, as the Plan's
|
|
11
|
+
* named reads are (`plan/reads.ts`): the row it reads, its kind, where it
|
|
12
|
+
* shows and, for tags, whether the legend lists them. The row is inferred
|
|
13
|
+
* where the read is placed — in a `Flowchart.details` array — so a field
|
|
14
|
+
* name is checked against the row it reads, and a misfit is a type error
|
|
15
|
+
* naming the fields that fit (R20). A read's return type keeps its show and
|
|
16
|
+
* its legend from inference (`NoInfer`), so each is the one given — `"all"`
|
|
17
|
+
* and `false` unless given — wherever the read is placed, and `details`'
|
|
18
|
+
* keeps its row and its reads from the place it is put, so a kind's `details`
|
|
19
|
+
* never infers them in its stead.
|
|
20
|
+
* - **One array, in order** (R21): each kind's `details` is one array of
|
|
21
|
+
* reads, any mix of the four, drawn in its order and shown in full, in the
|
|
22
|
+
* same order, in the inspector, each where its `show` says. A transition's
|
|
23
|
+
* label draws lines, so its tags and histograms take `show: "inspector"`: a
|
|
24
|
+
* type error otherwise, with its words.
|
|
25
|
+
* - **Read as the kind is** (R19): beside a kind read whole the details bind
|
|
26
|
+
* `Data.bind(record)`, read whole; beside one read through its source,
|
|
27
|
+
* `Data.bindPaged(record)`, read by the drawn rows' keys, every key in one
|
|
28
|
+
* request. They are read only (R18): `Record.bind` is refused.
|
|
29
|
+
* - **The row type never reaches the payload**: `values` turns a row's bytes
|
|
30
|
+
* into one value a read, one type whatever the row holds.
|
|
31
|
+
* - **The rail's picks weigh them** (#1522, R43–R46): details that name a
|
|
32
|
+
* source of the slice, `source`, are bound through their record's entries
|
|
33
|
+
* index, and a pick of its Dict field's keys weighs each read the entries
|
|
34
|
+
* hold, added up by kind in East — a figure adds, a histogram adds bin by
|
|
35
|
+
* bin, a list adds by name and tags join — while `weigh: false` keeps a
|
|
36
|
+
* read's own. `fold` turns a row's bytes and its picked entries' into one
|
|
37
|
+
* value a read.
|
|
38
|
+
*
|
|
39
|
+
* What only the built value shows is refused as the Flowchart is built, in
|
|
40
|
+
* the tag's words (§3, "What the editor and the tag say").
|
|
41
|
+
*
|
|
42
|
+
* @packageDocumentation
|
|
43
|
+
*/
|
|
44
|
+
import { ArrayType, DictType, FloatType, IntegerType, OptionType, SetType, StringType, StructType, type EastType, type ExprType, type SubtypeExprOrValue } from "@elaraai/east";
|
|
45
|
+
import { ColorSchemeType, StyleVariantType, type ColorSchemeLiteral, type IndexedSource, type StyleVariantLiteral } from "@elaraai/east-ui/internal";
|
|
46
|
+
import type { FlowchartBinding } from "./kinds.js";
|
|
47
|
+
import { FlowchartDetailsType, FlowchartTagColorType } from "./types.js";
|
|
48
|
+
/** Fields of R a figure reads: a number, or an Option of one. */
|
|
49
|
+
export type FlowchartFigureField<R extends StructType> = {
|
|
50
|
+
[K in keyof R["fields"] & string]: R["fields"][K] extends IntegerType | FloatType | OptionType<IntegerType | FloatType> ? K : never;
|
|
51
|
+
}[keyof R["fields"] & string];
|
|
52
|
+
/** Fields of R a histogram reads: a Dict from a duration to its count, both numbers — or, beside the app's bins, an Array of counts, one a bin. */
|
|
53
|
+
export type FlowchartHistogramField<R extends StructType> = {
|
|
54
|
+
[K in keyof R["fields"] & string]: R["fields"][K] extends DictType<IntegerType | FloatType, IntegerType | FloatType> | ArrayType<IntegerType | FloatType> ? K : never;
|
|
55
|
+
}[keyof R["fields"] & string];
|
|
56
|
+
/** Fields of R a list reads: a Dict from an item's name to a number, or to a struct its draw reads. */
|
|
57
|
+
export type FlowchartListField<R extends StructType> = {
|
|
58
|
+
[K in keyof R["fields"] & string]: R["fields"][K] extends DictType<StringType, IntegerType | FloatType | StructType> ? K : never;
|
|
59
|
+
}[keyof R["fields"] & string];
|
|
60
|
+
/** Fields of R a tags read reads: an Array or a Set of strings. */
|
|
61
|
+
export type FlowchartTagsField<R extends StructType> = {
|
|
62
|
+
[K in keyof R["fields"] & string]: R["fields"][K] extends ArrayType<StringType> | SetType<StringType> ? K : never;
|
|
63
|
+
}[keyof R["fields"] & string];
|
|
64
|
+
/** An item of the list at F: what its draw is handed. */
|
|
65
|
+
export type FlowchartListItem<R extends StructType, F extends FlowchartListField<R>> = R["fields"][F] extends DictType<StringType, infer V> ? V : never;
|
|
66
|
+
/** The unit a histogram's durations are in; the axis prints them as 15m, 4h, 2d, 1w. */
|
|
67
|
+
export type FlowchartDurationUnit = "minutes" | "hours" | "days";
|
|
68
|
+
/**
|
|
69
|
+
* How the bars space the bins along the axis, in the Chart's words for its x
|
|
70
|
+
* scales (`ChartScaleLiteral`): `"band"`, a bar a bin whatever its span;
|
|
71
|
+
* `"linear"`, each bar as wide as its span.
|
|
72
|
+
*/
|
|
73
|
+
export type FlowchartBarScale = "band" | "linear";
|
|
74
|
+
/** An edge the axis names: a number, printed as a duration in the unit, or the app's own words. */
|
|
75
|
+
export type FlowchartTick = number | {
|
|
76
|
+
at: number;
|
|
77
|
+
label: string;
|
|
78
|
+
};
|
|
79
|
+
/** What a histogram takes beside its field. */
|
|
80
|
+
export interface FlowchartHistogramOptions {
|
|
81
|
+
/** The unit its durations are in. */
|
|
82
|
+
unit: FlowchartDurationUnit;
|
|
83
|
+
/** False keeps the row's own beside the rail's picks, which add the entries' bin by bin otherwise (#1522): beside details that name a source. */
|
|
84
|
+
weigh?: boolean;
|
|
85
|
+
/** Its title; the field's name unless given. */
|
|
86
|
+
label?: string;
|
|
87
|
+
/** What is counted: `"parcels"`. */
|
|
88
|
+
counts?: string;
|
|
89
|
+
/** The app's edges, ascending, any spacing: a literal, or bound. Left out, every row's edges merged. */
|
|
90
|
+
bins?: SubtypeExprOrValue<ArrayType<FloatType>>;
|
|
91
|
+
/** `"band"` unless given. */
|
|
92
|
+
scale?: FlowchartBarScale;
|
|
93
|
+
/** The edges the axis names, besides the first; left out, round durations. */
|
|
94
|
+
ticks?: ReadonlyArray<FlowchartTick>;
|
|
95
|
+
}
|
|
96
|
+
/** A tag's look, as a Tag takes it: east-ui's `ColorSchemeType` and `StyleVariantType`. */
|
|
97
|
+
export interface FlowchartTagColor {
|
|
98
|
+
/** Its palette. */
|
|
99
|
+
colorPalette: SubtypeExprOrValue<ColorSchemeType> | ColorSchemeLiteral;
|
|
100
|
+
/** Its variant: subtle unless given. */
|
|
101
|
+
variant?: SubtypeExprOrValue<StyleVariantType> | StyleVariantLiteral;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Where a read shows — `"all"`, the default: on the canvas, a state's card or
|
|
105
|
+
* a transition's label, and in the inspector; `"canvas"`: there alone;
|
|
106
|
+
* `"inspector"`: in the inspector alone. A variant on the wire, as the
|
|
107
|
+
* Schematic carries its narrowed `show`.
|
|
108
|
+
*/
|
|
109
|
+
export type FlowchartShow = "all" | "canvas" | "inspector";
|
|
110
|
+
/** A read's kind. */
|
|
111
|
+
export type FlowchartReadKind = "figure" | "histogram" | "list" | "tags";
|
|
112
|
+
/** The phantom brand a read carries: what it reads, its kind, where it shows and whether the legend lists it. */
|
|
113
|
+
export declare const FlowchartReadBrand: unique symbol;
|
|
114
|
+
/** The type of {@link FlowchartReadBrand}. */
|
|
115
|
+
export type FlowchartReadBrand = typeof FlowchartReadBrand;
|
|
116
|
+
/**
|
|
117
|
+
* A read: a frozen description behind a phantom brand — the row R it reads,
|
|
118
|
+
* its kind K, where it shows (W) and, for tags, whether the legend lists them
|
|
119
|
+
* (L).
|
|
120
|
+
*
|
|
121
|
+
* @typeParam R - The details' row type, inferred where the read is placed
|
|
122
|
+
* @typeParam K - Its kind
|
|
123
|
+
* @typeParam W - Where it shows
|
|
124
|
+
* @typeParam L - Whether the legend lists it: tags only
|
|
125
|
+
*/
|
|
126
|
+
export type FlowchartRead<R extends StructType, K extends FlowchartReadKind, W extends FlowchartShow = FlowchartShow, L extends boolean = false> = {
|
|
127
|
+
readonly [FlowchartReadBrand]: {
|
|
128
|
+
row: R;
|
|
129
|
+
kind: K;
|
|
130
|
+
show: W;
|
|
131
|
+
legend: L;
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* A figure (R25): a number, or an Option of one — a line on the card or the
|
|
136
|
+
* label, its label and its value with its unit; the inspector's stats.
|
|
137
|
+
*
|
|
138
|
+
* @typeParam R - The details' row type, inferred where the read is placed
|
|
139
|
+
* @typeParam F - The field
|
|
140
|
+
* @typeParam W - Where it shows: `"all"` unless given
|
|
141
|
+
* @param field - The field it reads
|
|
142
|
+
* @param options - Its label — the field's name unless given — its unit, where it shows, and `weigh: false` to keep the
|
|
143
|
+
* row's own beside the rail's picks — a share or an average — which add the entries' otherwise (#1522)
|
|
144
|
+
* @returns The read, for `Flowchart.details`
|
|
145
|
+
* @throws {Error} When the field is named by no string, or an option is of another kind
|
|
146
|
+
*/
|
|
147
|
+
export declare function flowchartFigure<R extends StructType, F extends FlowchartFigureField<R>, const W extends FlowchartShow = "all">(field: F, options?: {
|
|
148
|
+
label?: string;
|
|
149
|
+
unit?: string;
|
|
150
|
+
show?: W;
|
|
151
|
+
weigh?: boolean;
|
|
152
|
+
}): FlowchartRead<R, "figure", NoInfer<W>>;
|
|
153
|
+
/**
|
|
154
|
+
* A histogram (R26–R28): a Dict from a duration to its count, both numbers —
|
|
155
|
+
* or, beside the app's `bins`, an Array of counts, one a bin. The card's bars
|
|
156
|
+
* on their axis; the inspector's chart.
|
|
157
|
+
*
|
|
158
|
+
* @typeParam R - The details' row type, inferred where the read is placed
|
|
159
|
+
* @typeParam F - The field
|
|
160
|
+
* @typeParam W - Where it shows: `"all"` unless given
|
|
161
|
+
* @param field - The field it reads
|
|
162
|
+
* @param options - Its unit, its label, what it counts, the app's bins — required beside an Array of counts — how the bars
|
|
163
|
+
* space them, the edges the axis names, where it shows, and `weigh: false` to keep the row's own beside the rail's picks
|
|
164
|
+
* @returns The read, for `Flowchart.details`
|
|
165
|
+
* @throws {Error} When the unit, the scale or a tick is none of its words, and when the bins' edges do not ascend —
|
|
166
|
+
* "The bins' edges ascend — 12, then 4"
|
|
167
|
+
*/
|
|
168
|
+
export declare function flowchartHistogram<R extends StructType, F extends FlowchartHistogramField<R>, const W extends FlowchartShow = "all">(field: F, options: FlowchartHistogramOptions & {
|
|
169
|
+
show?: W;
|
|
170
|
+
} & (R["fields"][F] extends ArrayType<IntegerType | FloatType> ? {
|
|
171
|
+
bins: SubtypeExprOrValue<ArrayType<FloatType>>;
|
|
172
|
+
} : unknown)): FlowchartRead<R, "histogram", NoInfer<W>>;
|
|
173
|
+
/**
|
|
174
|
+
* A list (R29): a Dict from an item's name to a number, or to a struct whose
|
|
175
|
+
* `draw` says which number is the value, and a note. Lines on a card, under
|
|
176
|
+
* the list's title, or under a transition's evidence; the inspector's list.
|
|
177
|
+
*
|
|
178
|
+
* @typeParam R - The details' row type, inferred where the read is placed
|
|
179
|
+
* @typeParam F - The field
|
|
180
|
+
* @typeParam W - Where it shows: `"all"` unless given
|
|
181
|
+
* @param field - The field it reads
|
|
182
|
+
* @param options - Its label, its unit, the lines it draws on the canvas — 2 on a card and 1 on a label unless given, at
|
|
183
|
+
* most 3: the inspector lists every item — where it shows, and `weigh: false` to keep the row's own beside the rail's
|
|
184
|
+
* picks, which add the entries' by name otherwise (#1522)
|
|
185
|
+
* @param draw - An item's value and its note, from the item, its name and the row: required for a Dict of structs.
|
|
186
|
+
* Weighed, it draws the picked entries' items added up, each struct's numbers added and its lists joined
|
|
187
|
+
* @returns The read, for `Flowchart.details`
|
|
188
|
+
* @throws {Error} When `top` is not 1, 2 or 3, or `draw` is no function
|
|
189
|
+
*/
|
|
190
|
+
export declare function flowchartList<R extends StructType, F extends FlowchartListField<R>, const W extends FlowchartShow = "all">(field: F, options?: {
|
|
191
|
+
label?: string;
|
|
192
|
+
unit?: string;
|
|
193
|
+
top?: 1 | 2 | 3;
|
|
194
|
+
show?: W;
|
|
195
|
+
weigh?: boolean;
|
|
196
|
+
}, // top: the card's or label's lines
|
|
197
|
+
draw?: (item: ExprType<FlowchartListItem<R, F>>, name: ExprType<StringType>, row: ExprType<R>) => {
|
|
198
|
+
value: SubtypeExprOrValue<IntegerType | FloatType>;
|
|
199
|
+
note?: SubtypeExprOrValue<OptionType<StringType>>;
|
|
200
|
+
}): FlowchartRead<R, "list", NoInfer<W>>;
|
|
201
|
+
/**
|
|
202
|
+
* A tags read (R30, R31): an Array or a Set of strings, the row's tags. On a
|
|
203
|
+
* card, a list beside its label, wrapping to three lines; the inspector shows
|
|
204
|
+
* every tag.
|
|
205
|
+
*
|
|
206
|
+
* @typeParam R - The details' row type, inferred where the read is placed
|
|
207
|
+
* @typeParam F - The field
|
|
208
|
+
* @typeParam W - Where it shows: `"all"` unless given
|
|
209
|
+
* @typeParam L - Whether the canvas's legend lists the defined tags
|
|
210
|
+
* @param field - The field it reads
|
|
211
|
+
* @param options - Its label; each tag's look as a Tag takes it — `{ colorPalette, variant }`, first defined, first shown,
|
|
212
|
+
* a literal or an Array the app binds (`Flowchart.Types.TagColor`) — a tag with none neutral and subtle; whether the
|
|
213
|
+
* legend lists the defined tags, for tags on the canvas only; where it shows; and `weigh: false` to keep the row's own
|
|
214
|
+
* beside the rail's picks, whose entries' tags join otherwise (#1522): a Set's as a Set does, in its order, an Array's
|
|
215
|
+
* each once in the entries' key order
|
|
216
|
+
* @returns The read, for `Flowchart.details`
|
|
217
|
+
* @throws {Error} When a look's palette or variant is none of east-ui's, or `legend` is given beside `show: "inspector"` —
|
|
218
|
+
* "Only tags on the canvas go in the legend — show them on the canvas, or drop legend"
|
|
219
|
+
*/
|
|
220
|
+
export declare function flowchartTags<R extends StructType, F extends FlowchartTagsField<R>, const W extends FlowchartShow = "all", const L extends boolean = false>(field: F, options?: {
|
|
221
|
+
label?: string;
|
|
222
|
+
colors?: Record<string, FlowchartTagColor> | SubtypeExprOrValue<ArrayType<typeof FlowchartTagColorType>>;
|
|
223
|
+
legend?: L;
|
|
224
|
+
show?: W;
|
|
225
|
+
weigh?: boolean;
|
|
226
|
+
}): FlowchartRead<R, "tags", NoInfer<W>, NoInfer<L>>;
|
|
227
|
+
/**
|
|
228
|
+
* The refusal's words as a type, as `plan/nested.ts` carries them: unknown
|
|
229
|
+
* unless a tags read in the legend shows in the inspector alone.
|
|
230
|
+
*/
|
|
231
|
+
export type FlowchartLegendOnCanvas<S> = S extends {
|
|
232
|
+
details: ReadonlyArray<infer D>;
|
|
233
|
+
} ? [Extract<D, FlowchartRead<StructType, "tags", "inspector", true>>] extends [never] ? unknown : {
|
|
234
|
+
"Only tags on the canvas go in the legend — show them on the canvas, or drop legend": never;
|
|
235
|
+
} : unknown;
|
|
236
|
+
/**
|
|
237
|
+
* Whether a transition's label draws a details' reads, with its words as a
|
|
238
|
+
* type: `true` unless a histogram or a tags read shows on the canvas — a
|
|
239
|
+
* transition's label draws lines, figures and lists (R21).
|
|
240
|
+
*/
|
|
241
|
+
export type FlowchartLabelDraws<S> = S extends {
|
|
242
|
+
details: ReadonlyArray<infer D>;
|
|
243
|
+
} ? [Extract<D, FlowchartRead<StructType, "histogram", "all" | "canvas", boolean>>] extends [never] ? [Extract<D, FlowchartRead<StructType, "tags", "all" | "canvas", boolean>>] extends [never] ? true : {
|
|
244
|
+
"A transition's label draws lines: a figure or a list — give the tags show: \"inspector\"": never;
|
|
245
|
+
} : {
|
|
246
|
+
"A transition's label draws lines: a figure or a list — give the histogram show: \"inspector\"": never;
|
|
247
|
+
} : true;
|
|
248
|
+
/** What a kind's details take: every read, in the order drawn, and the source whose picks weigh them. */
|
|
249
|
+
export interface FlowchartDetailsSpec<R extends StructType> {
|
|
250
|
+
/**
|
|
251
|
+
* The rail's source whose picks weigh them (#1522): a source of the
|
|
252
|
+
* Flowchart's slice over the details' record, its Dict field offered
|
|
253
|
+
* through the entries index the details are bound with. Its picked keys'
|
|
254
|
+
* entries are what each read the entries hold draws, added up by kind.
|
|
255
|
+
*/
|
|
256
|
+
source?: string;
|
|
257
|
+
/**
|
|
258
|
+
* Every read, any mix of the four, in the order drawn — on a state's card
|
|
259
|
+
* or a transition's label, and in the inspector — each where its show says.
|
|
260
|
+
*/
|
|
261
|
+
details: ReadonlyArray<FlowchartRead<R, FlowchartReadKind, FlowchartShow, boolean>>;
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* A transition's: its label draws lines — figures and lists — so a tags or a
|
|
265
|
+
* histogram read shows in the inspector alone, a type error otherwise, with
|
|
266
|
+
* the words "A transition's label draws lines: a figure or a list — give the
|
|
267
|
+
* histogram show: "inspector"".
|
|
268
|
+
*/
|
|
269
|
+
export interface FlowchartTransitionDetailsSpec {
|
|
270
|
+
/** The rail's source whose picks weigh them (#1522). */
|
|
271
|
+
source?: string;
|
|
272
|
+
/** Its reads: figures and lists anywhere, tags and histograms in the inspector alone. */
|
|
273
|
+
details: ReadonlyArray<FlowchartRead<StructType, "figure" | "list"> | FlowchartRead<StructType, "tags" | "histogram", "inspector">>;
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* The binding a kind's details take (R19): `Data.bind(record)`'s handle, read
|
|
277
|
+
* whole, or `Data.bindPaged(record)`'s, read by key — or, weighed by the
|
|
278
|
+
* rail's picks (#1522), `Data.bindPaged(record, { indexes: [its entries index] })`'s,
|
|
279
|
+
* its rows read by key through the index's lean rows.
|
|
280
|
+
*
|
|
281
|
+
* @typeParam R - The details' row type
|
|
282
|
+
* @typeParam P - Through an entries index, an index entry's value: the row, its Dict field emptied
|
|
283
|
+
* @typeParam M - Through an entries index, the binding's indexes, each its fields and its kind
|
|
284
|
+
* @typeParam IK - Through an entries index, the binding's index keys
|
|
285
|
+
* @typeParam N - Through an entries index, the binding's nested part
|
|
286
|
+
* @typeParam X - Through an entries index, the binding's maintenance part
|
|
287
|
+
*/
|
|
288
|
+
export type FlowchartDetailsBinding<R extends StructType, P extends EastType = EastType, M extends EastType = EastType, IK extends EastType = EastType, N extends EastType = EastType, X extends EastType = EastType> = FlowchartBinding<R> | IndexedSource<StringType, R, P, M, IK, N, X>;
|
|
289
|
+
/** The key a kind's details carry their mark under. */
|
|
290
|
+
export declare const FLOWCHART_DETAILS: unique symbol;
|
|
291
|
+
/** The phantom brand a kind's details carry: their row, their reads, and whether a transition's label draws them. */
|
|
292
|
+
export declare const FlowchartDetailsBrand: unique symbol;
|
|
293
|
+
/** The type of {@link FlowchartDetailsBrand}. */
|
|
294
|
+
export type FlowchartDetailsBrand = typeof FlowchartDetailsBrand;
|
|
295
|
+
/**
|
|
296
|
+
* A kind's details, declared: what a state's or a transition's `details`
|
|
297
|
+
* takes.
|
|
298
|
+
*
|
|
299
|
+
* @typeParam R - The details' row type
|
|
300
|
+
* @typeParam S - Their reads, as given
|
|
301
|
+
* @typeParam L - Whether a transition's label draws them: `true`, or the words saying why not
|
|
302
|
+
*/
|
|
303
|
+
export interface FlowchartDetails<R extends StructType, S, L = FlowchartLabelDraws<S>> {
|
|
304
|
+
/** What it is. */
|
|
305
|
+
readonly [FLOWCHART_DETAILS]: "details";
|
|
306
|
+
/** The details' row type. */
|
|
307
|
+
readonly rowType: StructType;
|
|
308
|
+
/** The rail's source whose picks weigh them (#1522); `undefined` for details none weighs. */
|
|
309
|
+
readonly source: string | undefined;
|
|
310
|
+
/** Whether a read shows in the inspector alone: refused beside `inspector={false}`. */
|
|
311
|
+
readonly inspectorReads: boolean;
|
|
312
|
+
/**
|
|
313
|
+
* Checks the details where their kind declares them: a transition's label
|
|
314
|
+
* draws figures and lists, three lines at most under its evidence.
|
|
315
|
+
*
|
|
316
|
+
* @param noun - The kind's rows, `states` or `transitions`
|
|
317
|
+
* @param where - The kind, as a refusal names it
|
|
318
|
+
* @throws {Error} On a transition: a tags or a histogram read on the canvas, and lines past three
|
|
319
|
+
*/
|
|
320
|
+
check(noun: "states" | "transitions", where: string): void;
|
|
321
|
+
/**
|
|
322
|
+
* The details on the wire, beside their kind.
|
|
323
|
+
*
|
|
324
|
+
* @param noun - The kind's rows, `states` or `transitions`: a list's lines, 2 on a card and 1 on a label unless given
|
|
325
|
+
* @param where - The kind, as a refusal names it
|
|
326
|
+
* @param throughSource - Whether the kind is read through its source of the slice: details a source weighs are read
|
|
327
|
+
* by key whatever their kind's read (#1522)
|
|
328
|
+
* @returns The details, closed
|
|
329
|
+
* @throws {Error} When they are bound in a form their kind's read does not take (R19), naming the one to use
|
|
330
|
+
*/
|
|
331
|
+
build(noun: "states" | "transitions", where: string, throughSource: boolean): ExprType<typeof FlowchartDetailsType>;
|
|
332
|
+
/** Their row, their reads, and whether a transition's label draws them (phantom). */
|
|
333
|
+
readonly [FlowchartDetailsBrand]?: {
|
|
334
|
+
readonly label: L;
|
|
335
|
+
readonly row: R;
|
|
336
|
+
readonly spec: S;
|
|
337
|
+
};
|
|
338
|
+
}
|
|
339
|
+
/**
|
|
340
|
+
* Whether something is a kind's details: `Flowchart.details`'.
|
|
341
|
+
*
|
|
342
|
+
* @param value - What a kind's `details` holds
|
|
343
|
+
* @returns Whether it is
|
|
344
|
+
*/
|
|
345
|
+
export declare function isFlowchartDetails(value: unknown): value is FlowchartDetails<StructType, unknown, unknown>;
|
|
346
|
+
/**
|
|
347
|
+
* The rows an index-selected binding's type pages through (#1522): each
|
|
348
|
+
* entry's joined row and its key, as `Data.bindPaged(record, { indexes })`'s
|
|
349
|
+
* `page` serves them.
|
|
350
|
+
*
|
|
351
|
+
* @param type - The binding's type
|
|
352
|
+
* @returns The row's struct and the key's type; `undefined` for a binding that pages no such entries
|
|
353
|
+
* @internal
|
|
354
|
+
*/
|
|
355
|
+
export declare function flowchartIndexedRows(type: EastType): {
|
|
356
|
+
readonly row: StructType;
|
|
357
|
+
readonly key: EastType;
|
|
358
|
+
} | undefined;
|
|
359
|
+
/**
|
|
360
|
+
* One kind's details over the app's rows (R18, R19, R21), keyed as the kind's
|
|
361
|
+
* are, read only: `Data.bind(record)`, read whole beside a kind read whole,
|
|
362
|
+
* or `Data.bindPaged(record)`, read by the drawn rows' keys beside one read
|
|
363
|
+
* through its source.
|
|
364
|
+
*
|
|
365
|
+
* Bound through an entries index — `Data.bindPaged(record, { indexes: [it] })`
|
|
366
|
+
* — and naming the rail's source over that binding with `source`, the details
|
|
367
|
+
* are weighed by the source's picks of the Dict field the index files (#1522,
|
|
368
|
+
* R44, R45): read by key whatever the kind's read, each row with that field
|
|
369
|
+
* emptied, and each read whose field the entries hold drawing the picked keys'
|
|
370
|
+
* entries added up by kind — a figure adds, a histogram adds bin by bin, a
|
|
371
|
+
* list adds by name, tags join. A read given `weigh: false`, or one whose field
|
|
372
|
+
* the entries lack, draws the row's own; with no pick, every read does. A share
|
|
373
|
+
* or an average is given `weigh: false`, since adding two would make it wrong:
|
|
374
|
+
* `Flowchart.figure("onTime", { label: "On time", weigh: false })` draws each
|
|
375
|
+
* state's own share of its parcels through on time, whatever the picks.
|
|
376
|
+
*
|
|
377
|
+
* @typeParam R - The details' row type, inferred from the binding
|
|
378
|
+
* @typeParam S - The reads, as given
|
|
379
|
+
* @typeParam P - Through an entries index, an index entry's value, inferred from the binding
|
|
380
|
+
* @typeParam M - Through an entries index, the binding's indexes, inferred from it
|
|
381
|
+
* @typeParam IK - Through an entries index, the binding's index keys, inferred from it
|
|
382
|
+
* @typeParam N - Through an entries index, the binding's nested part, inferred from it
|
|
383
|
+
* @typeParam X - Through an entries index, the binding's maintenance part, inferred from it
|
|
384
|
+
* @param binding - The details' record: `Data.bind(record)`, `Data.bindPaged(record)`, or `Data.bindPaged(record, { indexes: [its entries index] })`
|
|
385
|
+
* @param spec - `{ source?, details: [ … ] }`: the rail's source whose picks weigh them, and every read, in the order drawn
|
|
386
|
+
* @returns The details, for a state's or a transition's `details`
|
|
387
|
+
* @throws {Error} Naming the binding or the read (R18–R20): `Record.bind` — "Details are read only: bind them with
|
|
388
|
+
* Data.bind(record), or Data.bindPaged(record) beside a kind read through its source" — or anything but a binding of
|
|
389
|
+
* a record of structs keyed by String; an element that is no read; a read's field the row lacks, or one of another
|
|
390
|
+
* type; an Array of counts without bins; a Dict of structs without a draw. Weighed (#1522): `source` naming the
|
|
391
|
+
* states' or the transitions' own; a source named while bound without an entries index, or an entries index bound
|
|
392
|
+
* with no source named; `weigh` beside details that name no source; a read of the entries' own field; a read whose
|
|
393
|
+
* field the entries hold in a type it doesn't take; a list of structs one of whose fields neither adds nor joins,
|
|
394
|
+
* unless it says `weigh: false`. The Flowchart refuses a source its slice lacks, and one over rows of another type
|
|
395
|
+
* (`Flowchart.payload`)
|
|
396
|
+
*
|
|
397
|
+
* @example
|
|
398
|
+
* ```tsx
|
|
399
|
+
* // .tsx file with the `@jsxImportSource @elaraai/e3-ui` pragma
|
|
400
|
+
* import { ArrayType, DictType, East, IntegerType, StringType, StructType, variant } from "@elaraai/east";
|
|
401
|
+
* import { Box, Reactive, UIComponentType } from "@elaraai/east-ui";
|
|
402
|
+
* import { Data, Flowchart } from "@elaraai/e3-ui";
|
|
403
|
+
* import e3 from "@elaraai/e3";
|
|
404
|
+
*
|
|
405
|
+
* // A support desk's tickets: the states they pass through, the transitions between them, and the minutes
|
|
406
|
+
* // each spent in each state. The app's task counts each state's tickets into the app's own bins — minutes at
|
|
407
|
+
* // first, then hours, a shift and a day — an Array of counts, one a bin, keyed as the states are.
|
|
408
|
+
* export const DeskState = StructType({ name: StringType, stage: StringType });
|
|
409
|
+
* export const DeskTransition = StructType({ from: StringType, to: StringType });
|
|
410
|
+
* export const DeskStage = StructType({ label: StringType, seq: IntegerType });
|
|
411
|
+
* export const deskStates = e3.input("flowchart_desk_states", DictType(StringType, DeskState), variant("value", new Map([
|
|
412
|
+
* ["NEW", { name: "New", stage: "open" }], ["TRI", { name: "Triaged", stage: "open" }],
|
|
413
|
+
* ["WIP", { name: "In progress", stage: "work" }], ["WAI", { name: "Waiting on customer", stage: "work" }],
|
|
414
|
+
* ["RES", { name: "Resolved", stage: "close" }],
|
|
415
|
+
* ])));
|
|
416
|
+
* export const deskTransitions = e3.input("flowchart_desk_transitions", DictType(StringType, DeskTransition), variant("value", new Map([
|
|
417
|
+
* ["t1", { from: "NEW", to: "TRI" }], ["t2", { from: "TRI", to: "WIP" }], ["t3", { from: "WIP", to: "WAI" }],
|
|
418
|
+
* ["t4", { from: "WAI", to: "WIP" }], ["t5", { from: "WIP", to: "RES" }],
|
|
419
|
+
* ])));
|
|
420
|
+
* export const deskStages = e3.input("flowchart_desk_stages", DictType(StringType, DeskStage), variant("value", new Map([
|
|
421
|
+
* ["open", { label: "Open", seq: 1n }], ["work", { label: "Work", seq: 2n }], ["close", { label: "Close", seq: 3n }],
|
|
422
|
+
* ])));
|
|
423
|
+
* export const TicketMinutes = StructType({ minutes: ArrayType(IntegerType) });
|
|
424
|
+
* export const ticketMinutes = e3.input("flowchart_ticket_minutes", DictType(StringType, TicketMinutes), variant("value", new Map([
|
|
425
|
+
* ["NEW", { minutes: [140n, 96n, 120n, 64n, 30n, 22n, 9n, 4n, 2n, 1n, 0n, 0n] }],
|
|
426
|
+
* ["TRI", { minutes: [62n, 88n, 131n, 90n, 41n, 25n, 12n, 6n, 3n, 1n, 0n, 0n] }],
|
|
427
|
+
* ["WIP", { minutes: [3n, 8n, 41n, 96n, 120n, 150n, 132n, 88n, 40n, 18n, 9n, 4n] }],
|
|
428
|
+
* ["WAI", { minutes: [0n, 1n, 2n, 6n, 9n, 14n, 30n, 58n, 74n, 66n, 41n, 22n] }],
|
|
429
|
+
* // A resolved ticket stays resolved: the app counts no time in it, so its row is absent and its card says no data.
|
|
430
|
+
* ])));
|
|
431
|
+
*
|
|
432
|
+
* const flowchartTicketMinutes = East.function([], UIComponentType, (_$) => (
|
|
433
|
+
* <Reactive>{$ => {
|
|
434
|
+
* const states = $.let(Data.bind(deskStates));
|
|
435
|
+
* const transitions = $.let(Data.bind(deskTransitions));
|
|
436
|
+
* const stages = $.let(Data.bind(deskStages));
|
|
437
|
+
* const minutes = $.let(Data.bind(ticketMinutes));
|
|
438
|
+
* return (
|
|
439
|
+
* <Box height="560px">
|
|
440
|
+
* <Flowchart
|
|
441
|
+
* states={Flowchart.states(states, {
|
|
442
|
+
* label: "name", lane: "stage",
|
|
443
|
+
* details: Flowchart.details(minutes, {
|
|
444
|
+
* details: [Flowchart.histogram("minutes", {
|
|
445
|
+
* unit: "minutes",
|
|
446
|
+
* label: "Time in state",
|
|
447
|
+
* counts: "tickets",
|
|
448
|
+
* // The edges, in minutes: an Array of counts is a bin each, in this order.
|
|
449
|
+
* bins: [0, 1, 2, 5, 10, 15, 30, 60, 120, 240, 480, 1440],
|
|
450
|
+
* // A bar a bin, whatever its span — the default; "linear" draws them to scale.
|
|
451
|
+
* scale: "band",
|
|
452
|
+
* // The edges the axis names besides 0: 5m and 1h printed from the unit,
|
|
453
|
+
* // the last two in the app's own words.
|
|
454
|
+
* ticks: [5, 60, { at: 480, label: "a shift" }, { at: 1440, label: "a day" }],
|
|
455
|
+
* })],
|
|
456
|
+
* }),
|
|
457
|
+
* })}
|
|
458
|
+
* transitions={Flowchart.transitions(transitions, { from: "from", to: "to" })}
|
|
459
|
+
* lanes={Flowchart.lanes(stages, { label: "label", order: "seq" })}
|
|
460
|
+
* name="ticketMinutes"
|
|
461
|
+
* />
|
|
462
|
+
* </Box>
|
|
463
|
+
* );
|
|
464
|
+
* }}</Reactive>
|
|
465
|
+
* ));
|
|
466
|
+
* ```
|
|
467
|
+
*/
|
|
468
|
+
export declare function flowchartDetails<R extends StructType, const S extends FlowchartDetailsSpec<R>, P extends EastType = EastType, M extends EastType = EastType, IK extends EastType = EastType, N extends EastType = EastType, X extends EastType = EastType>(binding: FlowchartDetailsBinding<R, P, M, IK, N, X>, spec: S & FlowchartLegendOnCanvas<S>): FlowchartDetails<NoInfer<R>, NoInfer<S>>;
|
|
469
|
+
//# sourceMappingURL=details.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"details.d.ts","sourceRoot":"","sources":["../../../src/flowchart/details.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EACH,SAAS,EAAY,QAAQ,EAAc,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAC5E,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAE,KAAK,kBAAkB,EAC1F,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,eAAe,EAAE,gBAAgB,EAAgC,KAAK,kBAAkB,EAAE,KAAK,aAAa,EAAE,KAAK,mBAAmB,EACzI,MAAM,2BAA2B,CAAC;AAGnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAA0B,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAMjG,iEAAiE;AACjE,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,UAAU,IAAI;KACpD,CAAC,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK;CACtI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC;AAE9B,mJAAmJ;AACnJ,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,UAAU,IAAI;KACvD,CAAC,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,WAAW,GAAG,SAAS,EAAE,WAAW,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK;CACxK,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC;AAE9B,uGAAuG;AACvG,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,UAAU,IAAI;KAClD,CAAC,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,UAAU,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK;CACnI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC;AAE9B,mEAAmE;AACnE,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,UAAU,IAAI;KAClD,CAAC,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK;CACpH,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC;AAE9B,yDAAyD;AACzD,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,kBAAkB,CAAC,CAAC,CAAC,IAC/E,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAMrE,wFAAwF;AACxF,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAEjE;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAElD,mGAAmG;AACnG,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE,+CAA+C;AAC/C,MAAM,WAAW,yBAAyB;IACtC,qCAAqC;IACrC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,iJAAiJ;IACjJ,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wGAAwG;IACxG,IAAI,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;IAChD,6BAA6B;IAC7B,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,8EAA8E;IAC9E,KAAK,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CACxC;AAED,2FAA2F;AAC3F,MAAM,WAAW,iBAAiB;IAC9B,mBAAmB;IACnB,YAAY,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IACvE,wCAAwC;IACxC,OAAO,CAAC,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,mBAAmB,CAAC;CACxE;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE3D,qBAAqB;AACrB,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC;AAEzE,iHAAiH;AACjH,eAAO,MAAM,kBAAkB,EAAE,OAAO,MAAgC,CAAC;AACzE,8CAA8C;AAC9C,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAC;AAE3D;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,iBAAiB,EAAE,CAAC,SAAS,aAAa,GAAG,aAAa,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,IAC3I;IAAE,QAAQ,CAAC,CAAC,kBAAkB,CAAC,EAAE;QAAE,GAAG,EAAE,CAAC,CAAC;QAAC,IAAI,EAAE,CAAC,CAAC;QAAC,IAAI,EAAE,CAAC,CAAC;QAAC,MAAM,EAAE,CAAC,CAAA;KAAE,CAAA;CAAE,CAAC;AA8J/E;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,oBAAoB,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,aAAa,GAAG,KAAK,EAC1H,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GACvE,aAAa,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAOxC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,uBAAuB,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,aAAa,GAAG,KAAK,EAChI,KAAK,EAAE,CAAC,EAER,OAAO,EAAE,yBAAyB,GAAG;IAAE,IAAI,CAAC,EAAE,CAAC,CAAA;CAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG;IAAE,IAAI,EAAE,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAA;CAAE,GAAG,OAAO,CAAC,GAC/K,aAAa,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAe3C;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,kBAAkB,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,aAAa,GAAG,KAAK,EACtH,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,EAAI,mCAAmC;AAC9H,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK;IAC9F,KAAK,EAAE,kBAAkB,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IACnD,IAAI,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;CACrD,GACF,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAUtC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,kBAAkB,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,aAAa,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC,SAAS,OAAO,GAAG,KAAK,EACvJ,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE;IACN,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAAG,kBAAkB,CAAC,SAAS,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC;IACzG,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB,GACF,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAWlD;AAMD;;;GAGG;AACH,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,GAChF,CAAC,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,GACxF;IAAE,oFAAoF,EAAE,KAAK,CAAA;CAAE,GACnG,OAAO,CAAC;AAEd;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,GAC5E,CAAC,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC3F,CAAC,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,GAC7F;IAAE,0FAA0F,EAAE,KAAK,CAAA;CAAE,GACzG;IAAE,+FAA+F,EAAE,KAAK,CAAA;CAAE,GAC9G,IAAI,CAAC;AAEX,yGAAyG;AACzG,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,UAAU;IACtD;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC,EAAE,iBAAiB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;CACvF;AAED;;;;;GAKG;AACH,MAAM,WAAW,8BAA8B;IAC3C,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yFAAyF;IACzF,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,GAAG,MAAM,CAAC,GAAG,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;CACvI;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,EAAE,SAAS,QAAQ,GAAG,QAAQ,EAClJ,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,CAAC,SAAS,QAAQ,GAAG,QAAQ,IAC1D,gBAAgB,CAAC,CAAC,CAAC,GACnB,aAAa,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAEnD,uDAAuD;AACvD,eAAO,MAAM,iBAAiB,EAAE,OAAO,MAAoC,CAAC;AAE5E,qHAAqH;AACrH,eAAO,MAAM,qBAAqB,EAAE,OAAO,MAAmC,CAAC;AAC/E,iDAAiD;AACjD,MAAM,MAAM,qBAAqB,GAAG,OAAO,qBAAqB,CAAC;AAEjE;;;;;;;GAOG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,EAAE,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC;IACjF,kBAAkB;IAClB,QAAQ,CAAC,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC;IACxC,6BAA6B;IAC7B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,6FAA6F;IAC7F,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,uFAAuF;IACvF,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC;;;;;;;OAOG;IACH,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3D;;;;;;;;;OASG;IACH,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,GAAG,QAAQ,CAAC,OAAO,oBAAoB,CAAC,CAAC;IACpH,qFAAqF;IACrF,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC;CAC/F;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAG1G;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAA;CAAE,GAAG,SAAS,CAUrH;AAyeD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4GG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,UAAU,EAAE,KAAK,CAAC,CAAC,SAAS,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,CAAC,SAAS,QAAQ,GAAG,QAAQ,EACxJ,EAAE,SAAS,QAAQ,GAAG,QAAQ,EAAE,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAC5F,OAAO,EAAE,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EACnD,IAAI,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,GACrC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAkI1C"}
|