@elaraai/east-ui 1.0.68 → 1.0.69
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/README.md +2 -2
- package/dist/src/charts/chart/index.d.ts +39 -4
- package/dist/src/charts/chart/index.d.ts.map +1 -1
- package/dist/src/charts/chart/index.js +3 -3
- package/dist/src/charts/chart/index.js.map +1 -1
- package/dist/src/charts/spec/index.d.ts +61 -3
- package/dist/src/charts/spec/index.d.ts.map +1 -1
- package/dist/src/charts/spec/types.d.ts +1 -1
- package/dist/src/charts/spec/types.js +1 -1
- package/dist/src/collections/blend/index.d.ts +1 -1
- package/dist/src/collections/blend/index.d.ts.map +1 -1
- package/dist/src/collections/blend/index.js +1 -1
- package/dist/src/collections/blend/index.js.map +1 -1
- package/dist/src/collections/blend/types.js +1 -1
- package/dist/src/collections/blend/types.js.map +1 -1
- package/dist/src/collections/board/index.d.ts +4 -4
- package/dist/src/collections/board/index.d.ts.map +1 -1
- package/dist/src/collections/board/index.js +1 -1
- package/dist/src/collections/board/index.js.map +1 -1
- package/dist/src/collections/board/types.js +1 -1
- package/dist/src/collections/board/types.js.map +1 -1
- package/dist/src/collections/calendar/index.d.ts +1 -1
- package/dist/src/collections/calendar/index.d.ts.map +1 -1
- package/dist/src/collections/deck/index.d.ts +58 -0
- package/dist/src/collections/deck/index.d.ts.map +1 -1
- package/dist/src/collections/index.d.ts +1 -2
- package/dist/src/collections/index.d.ts.map +1 -1
- package/dist/src/collections/index.js +1 -2
- package/dist/src/collections/index.js.map +1 -1
- package/dist/src/collections/library/index.d.ts +29 -0
- package/dist/src/collections/library/index.d.ts.map +1 -1
- package/dist/src/collections/library/types.d.ts +29 -0
- package/dist/src/collections/library/types.d.ts.map +1 -1
- package/dist/src/collections/matrix/index.d.ts +1 -1
- package/dist/src/collections/matrix/index.d.ts.map +1 -1
- package/dist/src/collections/plan/assemble.d.ts +3732 -0
- package/dist/src/collections/plan/assemble.d.ts.map +1 -0
- package/dist/src/collections/plan/assemble.js +187 -0
- package/dist/src/collections/plan/assemble.js.map +1 -0
- package/dist/src/collections/plan/builders.d.ts +612 -0
- package/dist/src/collections/plan/builders.d.ts.map +1 -0
- package/dist/src/collections/plan/builders.js +543 -0
- package/dist/src/collections/plan/builders.js.map +1 -0
- package/dist/src/collections/plan/data-forms.d.ts +332 -0
- package/dist/src/collections/plan/data-forms.d.ts.map +1 -0
- package/dist/src/collections/plan/data-forms.js +212 -0
- package/dist/src/collections/plan/data-forms.js.map +1 -0
- package/dist/src/collections/plan/factories.d.ts +338 -0
- package/dist/src/collections/plan/factories.d.ts.map +1 -0
- package/dist/src/collections/plan/factories.js +414 -0
- package/dist/src/collections/plan/factories.js.map +1 -0
- package/dist/src/collections/plan/index.d.ts +271 -0
- package/dist/src/collections/plan/index.d.ts.map +1 -0
- package/dist/src/collections/plan/index.js +162 -0
- package/dist/src/collections/plan/index.js.map +1 -0
- package/dist/src/collections/plan/ir.d.ts +3496 -0
- package/dist/src/collections/plan/ir.d.ts.map +1 -0
- package/dist/src/collections/plan/ir.js +83 -0
- package/dist/src/collections/plan/ir.js.map +1 -0
- package/dist/src/collections/plan/pick.d.ts +115 -0
- package/dist/src/collections/plan/pick.d.ts.map +1 -0
- package/dist/src/collections/plan/pick.js +193 -0
- package/dist/src/collections/plan/pick.js.map +1 -0
- package/dist/src/collections/plan/root.d.ts +210 -0
- package/dist/src/collections/plan/root.d.ts.map +1 -0
- package/dist/src/collections/plan/root.js +146 -0
- package/dist/src/collections/plan/root.js.map +1 -0
- package/dist/src/collections/plan/series.d.ts +11890 -0
- package/dist/src/collections/plan/series.d.ts.map +1 -0
- package/dist/src/collections/plan/series.js +412 -0
- package/dist/src/collections/plan/series.js.map +1 -0
- package/dist/src/collections/plan/types.d.ts +9291 -0
- package/dist/src/collections/plan/types.d.ts.map +1 -0
- package/dist/src/collections/plan/types.js +940 -0
- package/dist/src/collections/plan/types.js.map +1 -0
- package/dist/src/collections/roster/index.d.ts +4 -4
- package/dist/src/collections/roster/index.d.ts.map +1 -1
- package/dist/src/collections/roster/index.js +1 -1
- package/dist/src/collections/roster/index.js.map +1 -1
- package/dist/src/collections/roster/types.d.ts +1 -1
- package/dist/src/collections/roster/types.d.ts.map +1 -1
- package/dist/src/collections/roster/types.js +4 -3
- package/dist/src/collections/roster/types.js.map +1 -1
- package/dist/src/collections/table/index.d.ts +70 -2
- package/dist/src/collections/table/index.d.ts.map +1 -1
- package/dist/src/collections/table/index.js +55 -11
- package/dist/src/collections/table/index.js.map +1 -1
- package/dist/src/collections/table/types.d.ts +1 -1
- package/dist/src/collections/table/types.d.ts.map +1 -1
- package/dist/src/component.d.ts +3898 -1339
- package/dist/src/component.d.ts.map +1 -1
- package/dist/src/component.js +83 -146
- package/dist/src/component.js.map +1 -1
- package/dist/src/container/card/types.d.ts +1 -1
- package/dist/src/container/card/types.d.ts.map +1 -1
- package/dist/src/contracts/approval.d.ts +117 -0
- package/dist/src/contracts/approval.d.ts.map +1 -0
- package/dist/src/contracts/approval.js +105 -0
- package/dist/src/contracts/approval.js.map +1 -0
- package/dist/src/contracts/drag.d.ts +3 -3
- package/dist/src/contracts/drag.d.ts.map +1 -1
- package/dist/src/contracts/drag.js +23 -10
- package/dist/src/contracts/drag.js.map +1 -1
- package/dist/src/contracts/index.d.ts +4 -1
- package/dist/src/contracts/index.d.ts.map +1 -1
- package/dist/src/contracts/index.js +4 -1
- package/dist/src/contracts/index.js.map +1 -1
- package/dist/src/contracts/pick.d.ts +705 -0
- package/dist/src/contracts/pick.d.ts.map +1 -0
- package/dist/src/contracts/pick.js +360 -0
- package/dist/src/contracts/pick.js.map +1 -0
- package/dist/src/contracts/review.d.ts +7 -99
- package/dist/src/contracts/review.d.ts.map +1 -1
- package/dist/src/contracts/review.js +11 -85
- package/dist/src/contracts/review.js.map +1 -1
- package/dist/src/contracts/slice-affordances.d.ts +13 -4
- package/dist/src/contracts/slice-affordances.d.ts.map +1 -1
- package/dist/src/contracts/slice-affordances.js +13 -3
- package/dist/src/contracts/slice-affordances.js.map +1 -1
- package/dist/src/contracts/source.d.ts +432 -0
- package/dist/src/contracts/source.d.ts.map +1 -0
- package/dist/src/contracts/source.js +505 -0
- package/dist/src/contracts/source.js.map +1 -0
- package/dist/src/contracts/states.d.ts +130 -0
- package/dist/src/contracts/states.d.ts.map +1 -1
- package/dist/src/contracts/states.js +122 -0
- package/dist/src/contracts/states.js.map +1 -1
- package/dist/src/contracts/time.d.ts +76 -0
- package/dist/src/contracts/time.d.ts.map +1 -0
- package/dist/src/contracts/time.js +78 -0
- package/dist/src/contracts/time.js.map +1 -0
- package/dist/src/display/trace/types.d.ts +1 -1
- package/dist/src/display/trace/types.d.ts.map +1 -1
- package/dist/src/index.d.ts +10 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +22 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal.d.ts +5 -3
- package/dist/src/internal.d.ts.map +1 -1
- package/dist/src/internal.js +4 -3
- package/dist/src/internal.js.map +1 -1
- package/dist/src/layout/dock/index.d.ts +1 -1
- package/dist/src/layout/dock/index.js +1 -1
- package/dist/src/layout/index.d.ts +0 -1
- package/dist/src/layout/index.d.ts.map +1 -1
- package/dist/src/layout/index.js +0 -1
- package/dist/src/layout/index.js.map +1 -1
- package/dist/src/overlays/drawer/types.d.ts +1 -1
- package/dist/src/overlays/drawer/types.d.ts.map +1 -1
- package/dist/src/pick/index.d.ts +443 -0
- package/dist/src/pick/index.d.ts.map +1 -0
- package/dist/src/pick/index.js +64 -0
- package/dist/src/pick/index.js.map +1 -0
- package/dist/src/pick/panel/index.d.ts +64 -0
- package/dist/src/pick/panel/index.d.ts.map +1 -0
- package/dist/src/pick/panel/index.js +61 -0
- package/dist/src/pick/panel/index.js.map +1 -0
- package/dist/src/platform/slice/index.d.ts +291 -0
- package/dist/src/platform/slice/index.d.ts.map +1 -1
- package/dist/src/platform/slice/index.js +16 -0
- package/dist/src/platform/slice/index.js.map +1 -1
- package/dist/src/runtime/collections/deck.d.ts +29 -0
- package/dist/src/runtime/collections/deck.d.ts.map +1 -1
- package/dist/src/runtime/collections/index.d.ts +1 -2
- package/dist/src/runtime/collections/index.d.ts.map +1 -1
- package/dist/src/runtime/collections/index.js +1 -2
- package/dist/src/runtime/collections/index.js.map +1 -1
- package/dist/src/runtime/collections/library.d.ts +1 -1
- package/dist/src/runtime/collections/library.js +1 -1
- package/dist/src/runtime/collections/plan.d.ts +98 -0
- package/dist/src/runtime/collections/plan.d.ts.map +1 -0
- package/dist/src/runtime/collections/plan.js +98 -0
- package/dist/src/runtime/collections/plan.js.map +1 -0
- package/dist/src/runtime/collections/schematic.d.ts +1 -1
- package/dist/src/runtime/collections/schematic.js +1 -1
- package/dist/src/runtime/collections/table.d.ts +9 -1
- package/dist/src/runtime/collections/table.d.ts.map +1 -1
- package/dist/src/runtime/collections/table.js +1 -7
- package/dist/src/runtime/collections/table.js.map +1 -1
- package/dist/src/runtime/layout/dock.d.ts +2 -2
- package/dist/src/runtime/layout/dock.js +2 -2
- package/dist/src/runtime/layout/index.d.ts +0 -1
- package/dist/src/runtime/layout/index.d.ts.map +1 -1
- package/dist/src/runtime/layout/index.js +0 -1
- package/dist/src/runtime/layout/index.js.map +1 -1
- package/dist/src/shared/plot-gutter.d.ts +6 -23
- package/dist/src/shared/plot-gutter.d.ts.map +1 -1
- package/dist/src/shared/plot-gutter.js +6 -19
- package/dist/src/shared/plot-gutter.js.map +1 -1
- package/dist/src/shared/reify.d.ts +47 -4
- package/dist/src/shared/reify.d.ts.map +1 -1
- package/dist/src/shared/reify.js +62 -4
- package/dist/src/shared/reify.js.map +1 -1
- package/dist/src/slice/breakdown/index.d.ts +27 -0
- package/dist/src/slice/breakdown/index.d.ts.map +1 -1
- package/dist/src/slice/breakdown/types.d.ts +27 -0
- package/dist/src/slice/breakdown/types.d.ts.map +1 -1
- package/dist/src/slice/cohort/index.d.ts +54 -0
- package/dist/src/slice/cohort/index.d.ts.map +1 -1
- package/dist/src/slice/cohort/types.d.ts +27 -0
- package/dist/src/slice/cohort/types.d.ts.map +1 -1
- package/dist/src/slice/filter/index.d.ts +27 -0
- package/dist/src/slice/filter/index.d.ts.map +1 -1
- package/dist/src/slice/filter/types.d.ts +27 -0
- package/dist/src/slice/filter/types.d.ts.map +1 -1
- package/dist/src/slice/index.d.ts +405 -0
- package/dist/src/slice/index.d.ts.map +1 -1
- package/dist/src/slice/legend/index.d.ts +27 -0
- package/dist/src/slice/legend/index.d.ts.map +1 -1
- package/dist/src/slice/legend/types.d.ts +27 -0
- package/dist/src/slice/legend/types.d.ts.map +1 -1
- package/dist/src/slice/range/index.d.ts +60 -18
- package/dist/src/slice/range/index.d.ts.map +1 -1
- package/dist/src/slice/range/index.js +9 -1
- package/dist/src/slice/range/index.js.map +1 -1
- package/dist/src/slice/range/types.d.ts +63 -22
- package/dist/src/slice/range/types.d.ts.map +1 -1
- package/dist/src/slice/range/types.js +12 -5
- package/dist/src/slice/range/types.js.map +1 -1
- package/dist/src/slice/search/index.d.ts +27 -0
- package/dist/src/slice/search/index.d.ts.map +1 -1
- package/dist/src/slice/search/types.d.ts +27 -0
- package/dist/src/slice/search/types.d.ts.map +1 -1
- package/dist/src/slice/summary/index.d.ts +27 -0
- package/dist/src/slice/summary/index.d.ts.map +1 -1
- package/dist/src/slice/summary/types.d.ts +27 -0
- package/dist/src/slice/summary/types.d.ts.map +1 -1
- package/dist/src/style/content.d.ts +4 -6
- package/dist/src/style/content.d.ts.map +1 -1
- package/dist/src/style/content.js +4 -6
- package/dist/src/style/content.js.map +1 -1
- package/dist/src/style/scheme.js +1 -1
- package/dist/src/style/scheme.js.map +1 -1
- package/dist/test/collections/index.d.ts +2 -2
- package/dist/test/collections/index.d.ts.map +1 -1
- package/dist/test/collections/index.js +2 -2
- package/dist/test/collections/index.js.map +1 -1
- package/dist/test/collections/paged-source.examples.d.ts +9 -0
- package/dist/test/collections/paged-source.examples.d.ts.map +1 -0
- package/dist/test/collections/paged-source.examples.js +136 -0
- package/dist/test/collections/paged-source.examples.js.map +1 -0
- package/dist/test/collections/plan.examples.d.ts +125 -0
- package/dist/test/collections/plan.examples.d.ts.map +1 -0
- package/dist/test/collections/plan.examples.js +2939 -0
- package/dist/test/collections/plan.examples.js.map +1 -0
- package/dist/test/contracts/pick.examples.d.ts +6 -0
- package/dist/test/contracts/pick.examples.d.ts.map +1 -0
- package/dist/test/contracts/pick.examples.js +89 -0
- package/dist/test/contracts/pick.examples.js.map +1 -0
- package/dist/test/layout/dock.examples.d.ts +4 -4
- package/dist/test/layout/dock.examples.d.ts.map +1 -1
- package/dist/test/layout/dock.examples.js +34 -16
- package/dist/test/layout/dock.examples.js.map +1 -1
- package/dist/test/slice/slice.examples.d.ts +2 -1
- package/dist/test/slice/slice.examples.d.ts.map +1 -1
- package/dist/test/slice/slice.examples.js +67 -9
- package/dist/test/slice/slice.examples.js.map +1 -1
- package/package.json +3 -3
- package/dist/src/collections/gantt/index.d.ts +0 -377
- package/dist/src/collections/gantt/index.d.ts.map +0 -1
- package/dist/src/collections/gantt/index.js +0 -896
- package/dist/src/collections/gantt/index.js.map +0 -1
- package/dist/src/collections/gantt/types.d.ts +0 -353
- package/dist/src/collections/gantt/types.d.ts.map +0 -1
- package/dist/src/collections/gantt/types.js +0 -207
- package/dist/src/collections/gantt/types.js.map +0 -1
- package/dist/src/collections/planner/index.d.ts +0 -624
- package/dist/src/collections/planner/index.d.ts.map +0 -1
- package/dist/src/collections/planner/index.js +0 -941
- package/dist/src/collections/planner/index.js.map +0 -1
- package/dist/src/collections/planner/types.d.ts +0 -615
- package/dist/src/collections/planner/types.d.ts.map +0 -1
- package/dist/src/collections/planner/types.js +0 -423
- package/dist/src/collections/planner/types.js.map +0 -1
- package/dist/src/layout/aligned-stack/index.d.ts +0 -101
- package/dist/src/layout/aligned-stack/index.d.ts.map +0 -1
- package/dist/src/layout/aligned-stack/index.js +0 -105
- package/dist/src/layout/aligned-stack/index.js.map +0 -1
- package/dist/src/layout/aligned-stack/types.d.ts +0 -50
- package/dist/src/layout/aligned-stack/types.d.ts.map +0 -1
- package/dist/src/layout/aligned-stack/types.js +0 -24
- package/dist/src/layout/aligned-stack/types.js.map +0 -1
- package/dist/src/runtime/collections/gantt.d.ts +0 -67
- package/dist/src/runtime/collections/gantt.d.ts.map +0 -1
- package/dist/src/runtime/collections/gantt.js +0 -58
- package/dist/src/runtime/collections/gantt.js.map +0 -1
- package/dist/src/runtime/collections/planner.d.ts +0 -80
- package/dist/src/runtime/collections/planner.d.ts.map +0 -1
- package/dist/src/runtime/collections/planner.js +0 -76
- package/dist/src/runtime/collections/planner.js.map +0 -1
- package/dist/src/runtime/layout/aligned-stack.d.ts +0 -38
- package/dist/src/runtime/layout/aligned-stack.d.ts.map +0 -1
- package/dist/src/runtime/layout/aligned-stack.js +0 -36
- package/dist/src/runtime/layout/aligned-stack.js.map +0 -1
- package/dist/test/collections/gantt.examples.d.ts +0 -33
- package/dist/test/collections/gantt.examples.d.ts.map +0 -1
- package/dist/test/collections/gantt.examples.js +0 -359
- package/dist/test/collections/gantt.examples.js.map +0 -1
- package/dist/test/collections/planner.examples.d.ts +0 -47
- package/dist/test/collections/planner.examples.d.ts.map +0 -1
- package/dist/test/collections/planner.examples.js +0 -546
- package/dist/test/collections/planner.examples.js.map +0 -1
- package/dist/test/layout/aligned-stack.examples.d.ts +0 -25
- package/dist/test/layout/aligned-stack.examples.d.ts.map +0 -1
- package/dist/test/layout/aligned-stack.examples.js +0 -294
- package/dist/test/layout/aligned-stack.examples.js.map +0 -1
|
@@ -0,0 +1,612 @@
|
|
|
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
|
+
* Plan value builders — shorthand resolvers, the instant sugar
|
|
7
|
+
* ({@link resolveInstant} / `Plan.at`), the axis declarations (`Plan.axis`,
|
|
8
|
+
* `.time` / `.number` / `.ordinal`), element value builders (`Plan.run` /
|
|
9
|
+
* `decision` / `port` / `event` / `marker` / `chip` / `mark`) and cell
|
|
10
|
+
* builders (`heatCells` / `weightCells` / `segmentCells` / `tableCells`).
|
|
11
|
+
* Every element is pure data — rich click/hover surfaces resolve through
|
|
12
|
+
* the ROOT's `popover` / `hover` functions over `PlanElementRefType`
|
|
13
|
+
* (`Plan Data Interface.md` §3.3), never per-element embeds.
|
|
14
|
+
*
|
|
15
|
+
* @packageDocumentation
|
|
16
|
+
*/
|
|
17
|
+
import { type EastType, type ExprType, type SubtypeExprOrValue, ArrayType, BooleanType, DateTimeType, FloatType, IntegerType, OptionType, StringType, StructType } from "@elaraai/east";
|
|
18
|
+
import { TickFormatType } from "../../format/types.js";
|
|
19
|
+
import { IconType, type IconName } from "../../display/icon/types.js";
|
|
20
|
+
import { StatusValueType, type StatusValueLiteral } from "../../feedback/status/types.js";
|
|
21
|
+
import { ColorSchemeType, type ColorSchemeLiteral } from "../../style/scheme.js";
|
|
22
|
+
import { EventStateType, type EventStateLiteral } from "../../contracts/states.js";
|
|
23
|
+
import { type MatrixFillLiteral, MatrixFillType } from "../matrix/types.js";
|
|
24
|
+
import { type PlanAxisOptions, type PlanNumberAxisOptions, type PlanOrdinalAxisOptions, PlanInstantType, type PlanInstantLikeType, type PlanInstantInput, type PlanAxisKindLiteral, type PlanKindOf, type PlanInstantExpr, type PlanRunExpr, type PlanDecisionMarkExpr, type PlanPortExpr, type PlanBucketEventExpr, type PlanCellMarkerExpr, type PlanChipExpr, type PlanEventMarkExpr, type PlanHeatCellsExpr, type PlanTableCellsExpr, type PlanTableSeriesExpr, type PlanAxisExpr, type PlanCellsInput, type PlanTableCellsInput, PlanStretchType, type PlanStretchLiteral, PlanContentAlignType, type PlanContentAlignLiteral, PlanAnimationType, type PlanAnimationLiteral, PlanEventMarkKindType, PlanHeatCellType, PlanWeightCellType, PlanSegmentType, PlanSegmentCellType, PlanTableToneType, type PlanTableToneLiteral, PlanLinkType, PlanLaneType, type PlanRowsValue } from "./types.js";
|
|
25
|
+
/**
|
|
26
|
+
* Resolves the shared event-lifecycle string shorthands into an
|
|
27
|
+
* {@link EventStateType} value: `"estimated"`, `"added"`, `"recommended"`,
|
|
28
|
+
* `"removed"` (the three `proposed` flavours), `"confirmed"`,
|
|
29
|
+
* `"in-progress"`, `"actual"`, `"rejected"`.
|
|
30
|
+
*
|
|
31
|
+
* @param state - An `EventStateType` value/expression or a string shorthand
|
|
32
|
+
* @returns The resolved `EventStateType` value
|
|
33
|
+
*/
|
|
34
|
+
export declare function resolvePlanEventState(state: SubtypeExprOrValue<EventStateType> | EventStateLiteral): SubtypeExprOrValue<EventStateType>;
|
|
35
|
+
/** Resolve a null-payload variant string shorthand against its East type. */
|
|
36
|
+
export declare function resolveTag<T extends EastType>(v: SubtypeExprOrValue<NoInfer<T>> | string, type: T): ExprType<T>;
|
|
37
|
+
/**
|
|
38
|
+
* An icon input — a bare Font Awesome solid name (`"rocket"`), a
|
|
39
|
+
* `{ prefix, name }` pair, or an `IconType` expression (the Banner envelope
|
|
40
|
+
* precedent). The mounting context pins size and colour; hosts choose the
|
|
41
|
+
* glyph, never the geometry.
|
|
42
|
+
*/
|
|
43
|
+
export type PlanIconInput = IconName | {
|
|
44
|
+
prefix: string;
|
|
45
|
+
name: string;
|
|
46
|
+
} | SubtypeExprOrValue<IconType>;
|
|
47
|
+
/** Resolve a {@link PlanIconInput} into an `IconType` value. */
|
|
48
|
+
export declare function resolveIcon(icon: PlanIconInput): SubtypeExprOrValue<IconType>;
|
|
49
|
+
/** An empty flattened-subtree value — the keyed collection with no rows. */
|
|
50
|
+
export declare function emptyRows(): PlanRowsValue;
|
|
51
|
+
/**
|
|
52
|
+
* Resolves an instant input into a {@link PlanInstantType} value — the one
|
|
53
|
+
* place the arm is inferred (#631).
|
|
54
|
+
*
|
|
55
|
+
* @remarks
|
|
56
|
+
* The input is any {@link PlanInstantLikeType} value or expression. JS values
|
|
57
|
+
* wrap by their type (`Date` ⇒ `time`, `number` / `bigint` ⇒ `number`,
|
|
58
|
+
* `string` ⇒ `ordinal`); East expressions wrap by their STATIC type
|
|
59
|
+
* (`DateTimeType` ⇒ `time`, `FloatType` ⇒ `number`, `IntegerType` ⇒ `number`
|
|
60
|
+
* via `toFloat`, `StringType` ⇒ `ordinal`); a {@link PlanInstantType} value
|
|
61
|
+
* or expression passes through (subtype-checked by `East.value`). Nothing
|
|
62
|
+
* here knows the canvas axis — the arm is the INPUT's; the renderer holds it
|
|
63
|
+
* against the root's declaration.
|
|
64
|
+
*
|
|
65
|
+
* @param v - The instant (a value or expression of a {@link PlanInstantLikeType})
|
|
66
|
+
* @param where - The field being resolved, for the error message
|
|
67
|
+
* @returns The instant as a `PlanInstantType` expression
|
|
68
|
+
* @throws {Error} If `v` is an expression of a non-instant type
|
|
69
|
+
*/
|
|
70
|
+
export declare function resolveInstant(v: PlanInstantInput, where: string): ExprType<PlanInstantType>;
|
|
71
|
+
/**
|
|
72
|
+
* The `Plan.at` builders — one instant per axis kind, explicitly. The
|
|
73
|
+
* element builders already wrap by type; these are for element RECORDS
|
|
74
|
+
* written as data (`{ at: Plan.at.time(week(27n)), … }` in a
|
|
75
|
+
* `Plan.Types.HeatCell` array) and for reading as a declaration. Each
|
|
76
|
+
* result is BRANDED with its arm ({@link PlanInstantExpr}), so a cell
|
|
77
|
+
* list built from them carries the kind to the root's compile-time check.
|
|
78
|
+
*/
|
|
79
|
+
export declare const at: {
|
|
80
|
+
/**
|
|
81
|
+
* A `time` instant.
|
|
82
|
+
*
|
|
83
|
+
* @param v - The UTC instant (a `Date` or `DateTimeType` expression)
|
|
84
|
+
* @returns A `PlanInstantType` expression with the `time` arm, branded `"time"`
|
|
85
|
+
*/
|
|
86
|
+
readonly time: (v: SubtypeExprOrValue<DateTimeType>) => PlanInstantExpr<"time">;
|
|
87
|
+
/**
|
|
88
|
+
* A `number` instant.
|
|
89
|
+
*
|
|
90
|
+
* @param v - The position (a number or `FloatType` expression)
|
|
91
|
+
* @returns A `PlanInstantType` expression with the `number` arm, branded `"number"`
|
|
92
|
+
*/
|
|
93
|
+
readonly number: (v: SubtypeExprOrValue<FloatType> | number) => PlanInstantExpr<"number">;
|
|
94
|
+
/**
|
|
95
|
+
* An `ordinal` instant.
|
|
96
|
+
*
|
|
97
|
+
* @param v - The declared value (a string or `StringType` expression)
|
|
98
|
+
* @returns A `PlanInstantType` expression with the `ordinal` arm, branded `"ordinal"`
|
|
99
|
+
*/
|
|
100
|
+
readonly ordinal: (v: SubtypeExprOrValue<StringType>) => PlanInstantExpr<"ordinal">;
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Builds the `time` axis declaration — `Plan.axis({ … })` / `Plan.axis.time`.
|
|
104
|
+
*
|
|
105
|
+
* @param options - Window, resolution(s), now instant and tick format ({@link PlanAxisOptions})
|
|
106
|
+
* @returns An East expression of {@link PlanAxisType} (the `time` arm), branded `"time"` — the root's canvas kind
|
|
107
|
+
*
|
|
108
|
+
* @remarks
|
|
109
|
+
* The window is half-open `[min, max)` in UTC; omit it to follow the bound
|
|
110
|
+
* slice's datetime range (else fit to the data). `resolutions` lists the
|
|
111
|
+
* WEEK/DAY-style segment options (omit ⇒ no segment). When the Plan is
|
|
112
|
+
* slice-bound, slice state supersedes window + resolution after mount — the
|
|
113
|
+
* slice is the single source of truth.
|
|
114
|
+
*/
|
|
115
|
+
export declare function createTimeAxis(options: PlanAxisOptions): PlanAxisExpr<"time">;
|
|
116
|
+
/**
|
|
117
|
+
* Builds the `number` axis declaration — `Plan.axis.number({ … })`.
|
|
118
|
+
*
|
|
119
|
+
* @param options - Window, step, now position and tick format ({@link PlanNumberAxisOptions})
|
|
120
|
+
* @returns An East expression of {@link PlanAxisType} (the `number` arm), branded `"number"` — the root's canvas kind
|
|
121
|
+
* @throws {Error} If a literal `step` is not `> 0`
|
|
122
|
+
*
|
|
123
|
+
* @remarks
|
|
124
|
+
* `[min, max)` ÷ `step` = `n` buckets, edges on whole multiples of `step`
|
|
125
|
+
* (the `TimeResolution` rule, numerically). Omit the window to follow the
|
|
126
|
+
* bound slice's `float` / `integer` range (else fit to the data). Element
|
|
127
|
+
* instants on this canvas are numbers — a `FloatType` / `IntegerType`
|
|
128
|
+
* accessor or a bare number wraps to the `number` arm.
|
|
129
|
+
*/
|
|
130
|
+
export declare function createNumberAxis(options: PlanNumberAxisOptions): PlanAxisExpr<"number">;
|
|
131
|
+
/**
|
|
132
|
+
* Builds the `ordinal` axis declaration — `Plan.axis.ordinal({ … })`.
|
|
133
|
+
*
|
|
134
|
+
* @param options - The ordered values and the now value ({@link PlanOrdinalAxisOptions})
|
|
135
|
+
* @returns An East expression of {@link PlanAxisType} (the `ordinal` arm), branded `"ordinal"` — the root's canvas kind
|
|
136
|
+
* @throws {Error} If a literal `values` list is empty
|
|
137
|
+
*
|
|
138
|
+
* @remarks
|
|
139
|
+
* The declared values ARE the buckets, one each, in order; the window is
|
|
140
|
+
* the whole list, so there is no slice range to brush and the window keys
|
|
141
|
+
* idle. Element instants on this canvas are the values — a `StringType`
|
|
142
|
+
* accessor or a bare string wraps to the `ordinal` arm.
|
|
143
|
+
*/
|
|
144
|
+
export declare function createOrdinalAxis(options: PlanOrdinalAxisOptions): PlanAxisExpr<"ordinal">;
|
|
145
|
+
/**
|
|
146
|
+
* The `Plan.axis` builder — the `time` shorthand, with the explicit
|
|
147
|
+
* per-kind builders as members (the Planner's `Planner.axis.time / .number /
|
|
148
|
+
* .ordinal` names).
|
|
149
|
+
*/
|
|
150
|
+
export interface PlanAxisBuilder {
|
|
151
|
+
/** The `time` axis (the shorthand — `Plan.axis({ resolution: "week", … })`). */
|
|
152
|
+
(options: PlanAxisOptions): PlanAxisExpr<"time">;
|
|
153
|
+
/** The `time` axis, explicitly. */
|
|
154
|
+
time: typeof createTimeAxis;
|
|
155
|
+
/** The `number` axis — a numeric window ÷ `step`. */
|
|
156
|
+
number: typeof createNumberAxis;
|
|
157
|
+
/** The `ordinal` axis — a declared list of values. */
|
|
158
|
+
ordinal: typeof createOrdinalAxis;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Builds the shared axis declaration — `Plan.axis({ … })` is the `time`
|
|
162
|
+
* shorthand; `Plan.axis.time` / `.number` / `.ordinal` declare each kind.
|
|
163
|
+
*
|
|
164
|
+
* @param options - The time-axis options ({@link PlanAxisOptions})
|
|
165
|
+
* @returns An East expression of {@link PlanAxisType}, branded with its kind
|
|
166
|
+
*/
|
|
167
|
+
export declare const createAxis: PlanAxisBuilder;
|
|
168
|
+
/**
|
|
169
|
+
* Flat input for {@link Plan.run} — one continuous state-run bar.
|
|
170
|
+
*
|
|
171
|
+
* @typeParam S - The `start` input's type — its axis kind brands the result ({@link PlanKindOf})
|
|
172
|
+
* @typeParam E - The `end` input's type
|
|
173
|
+
* @property key - Stable run identity (drag refs, link edges)
|
|
174
|
+
* @property start - Run start (inclusive) — an instant input (a Date / number / string, or a typed expression)
|
|
175
|
+
* @property end - Run end (exclusive)
|
|
176
|
+
* @property label - The bar text (`"RUN · B-214"`)
|
|
177
|
+
* @property quantity - Optional displayed quantity suffix (`"96 t"`)
|
|
178
|
+
* @property qty - Optional numeric quantity (summed into rollup bands)
|
|
179
|
+
* @property state - The lifecycle state (string shorthand or `EventStateType`)
|
|
180
|
+
* @property status - Optional status tint (`"warning"` ⇒ the over-dwell ring)
|
|
181
|
+
* @property moved - Optional same-status churn counter (`moved ×k`)
|
|
182
|
+
* @property icon - Optional leading FA glyph (10px, inherits bar text colour)
|
|
183
|
+
*/
|
|
184
|
+
export interface PlanRunInput<S extends PlanInstantInput = PlanInstantInput, E extends PlanInstantInput = PlanInstantInput> {
|
|
185
|
+
/** Stable run identity (drag refs, link edges). */
|
|
186
|
+
key: SubtypeExprOrValue<StringType>;
|
|
187
|
+
/** Run start (inclusive) — wraps to the axis arm by its type (see {@link PlanInstantLikeType}). */
|
|
188
|
+
start: S;
|
|
189
|
+
/** Run end (exclusive). */
|
|
190
|
+
end: E;
|
|
191
|
+
/** The bar text (`"RUN · B-214"`). */
|
|
192
|
+
label: SubtypeExprOrValue<StringType>;
|
|
193
|
+
/** Optional displayed quantity suffix (`"96 t"` — the muted `.q` text). */
|
|
194
|
+
quantity?: SubtypeExprOrValue<StringType>;
|
|
195
|
+
/** Optional numeric quantity — summed into parent rollup bands (pair with the span factory's `unit`). */
|
|
196
|
+
qty?: SubtypeExprOrValue<FloatType>;
|
|
197
|
+
/** The lifecycle state — a string shorthand or an `EventStateType` value. */
|
|
198
|
+
state: SubtypeExprOrValue<EventStateType> | EventStateLiteral;
|
|
199
|
+
/** Optional status tint — `"warning"` draws the `.stuck` over-dwell ring. */
|
|
200
|
+
status?: SubtypeExprOrValue<StatusValueType> | StatusValueLiteral;
|
|
201
|
+
/** Optional same-status churn counter (rendered `moved ×k`, never extra bars). */
|
|
202
|
+
moved?: SubtypeExprOrValue<IntegerType> | number;
|
|
203
|
+
/** Optional leading FA glyph (10px, inherits the bar text colour). */
|
|
204
|
+
icon?: PlanIconInput;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Builds one span run from a flat input. The result is BRANDED with the axis
|
|
208
|
+
* kind `start` / `end` imply ({@link PlanKindOf}) — a `DateTimeType` accessor
|
|
209
|
+
* makes a `"time"` run, a `FloatType` one a `"number"` run — so the series and
|
|
210
|
+
* root can refuse a mismatched kind at compile time; an erased input (an
|
|
211
|
+
* `Expr<PlanInstantType>`) leaves the run unbranded.
|
|
212
|
+
*
|
|
213
|
+
* @typeParam S - The `start` input's type
|
|
214
|
+
* @typeParam E - The `end` input's type
|
|
215
|
+
* @param input - The run configuration ({@link PlanRunInput})
|
|
216
|
+
* @returns An East expression of {@link PlanRunType}, branded with its kind
|
|
217
|
+
*/
|
|
218
|
+
export declare function createRun<S extends PlanInstantInput, E extends PlanInstantInput>(input: PlanRunInput<S, E>): PlanRunExpr<PlanKindOf<S | E>>;
|
|
219
|
+
/**
|
|
220
|
+
* Flat input for {@link Plan.decision} — a ◇/◆ diamond on a run transition.
|
|
221
|
+
*
|
|
222
|
+
* @typeParam A - The `at` input's type — its axis kind brands the result
|
|
223
|
+
* @property key - Stable decision identity
|
|
224
|
+
* @property at - The transition instant the diamond sits on
|
|
225
|
+
* @property applied - `true` fills the diamond (◆)
|
|
226
|
+
*/
|
|
227
|
+
export interface PlanDecisionInput<A extends PlanInstantInput = PlanInstantInput> {
|
|
228
|
+
/** Stable decision identity. */
|
|
229
|
+
key: SubtypeExprOrValue<StringType>;
|
|
230
|
+
/** The transition instant the diamond sits on (see {@link PlanInstantLikeType}). */
|
|
231
|
+
at: A;
|
|
232
|
+
/** `true` fills the diamond (◆ applied). */
|
|
233
|
+
applied: SubtypeExprOrValue<BooleanType> | boolean;
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Builds one decision mark from a flat input, branded with `at`'s kind.
|
|
237
|
+
*
|
|
238
|
+
* @typeParam A - The `at` input's type
|
|
239
|
+
* @param input - The decision configuration ({@link PlanDecisionInput})
|
|
240
|
+
* @returns An East expression of {@link PlanDecisionMarkType}, branded with its kind
|
|
241
|
+
*/
|
|
242
|
+
export declare function createDecision<A extends PlanInstantInput>(input: PlanDecisionInput<A>): PlanDecisionMarkExpr<PlanKindOf<A>>;
|
|
243
|
+
/**
|
|
244
|
+
* Flat input for {@link Plan.port} — a quantity in/out glyph on a span row.
|
|
245
|
+
*
|
|
246
|
+
* @typeParam A - The `at` input's type — its axis kind brands the result
|
|
247
|
+
* @property at - The instant the quantity moves
|
|
248
|
+
* @property label - Optional caption (`"−24 t"`)
|
|
249
|
+
*/
|
|
250
|
+
export interface PlanPortInput<A extends PlanInstantInput = PlanInstantInput> {
|
|
251
|
+
/** The instant the quantity moves (see {@link PlanInstantLikeType}). */
|
|
252
|
+
at: A;
|
|
253
|
+
/** Optional caption (`"−24 t"`). */
|
|
254
|
+
label?: SubtypeExprOrValue<StringType>;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Builds one port glyph from a flat input, branded with `at`'s kind.
|
|
258
|
+
*
|
|
259
|
+
* @typeParam A - The `at` input's type
|
|
260
|
+
* @param input - The port configuration ({@link PlanPortInput})
|
|
261
|
+
* @returns An East expression of {@link PlanPortType}, branded with its kind
|
|
262
|
+
*/
|
|
263
|
+
export declare function createPort<A extends PlanInstantInput>(input: PlanPortInput<A>): PlanPortExpr<PlanKindOf<A>>;
|
|
264
|
+
/**
|
|
265
|
+
* Flat input for {@link Plan.event} — one bucket-row tile (the full Planner
|
|
266
|
+
* point-event grammar).
|
|
267
|
+
*
|
|
268
|
+
* @typeParam A - The `at` input's type — its axis kind brands the result
|
|
269
|
+
* @property key - Stable event identity (drag refs)
|
|
270
|
+
* @property at - The bucket instant
|
|
271
|
+
* @property lane - The lane key (`[]`-laned rows omit it; in a laned row, omitting takes the full cell)
|
|
272
|
+
* @property label - Optional tile text; omitted ⇒ the resting ✓ / `plan` chip
|
|
273
|
+
* @property icon - Optional leading FA glyph (icon-only tile when `label` omitted)
|
|
274
|
+
* @property state - The lifecycle state (string shorthand or value)
|
|
275
|
+
* @property tone - Optional semantic tile tint
|
|
276
|
+
* @property color - Optional raw colour token override
|
|
277
|
+
* @property colorPalette - Optional brand palette override
|
|
278
|
+
* @property stretch - Optional fill axis (`"horizontal"` / `"vertical"` / `"both"`)
|
|
279
|
+
* @property content - Optional two-axis content alignment
|
|
280
|
+
* @property animation - Optional attention animation (`"pulse"`)
|
|
281
|
+
*/
|
|
282
|
+
export interface PlanBucketEventInput<A extends PlanInstantInput = PlanInstantInput> {
|
|
283
|
+
/** Stable event identity (drag-grammar cell refs). */
|
|
284
|
+
key: SubtypeExprOrValue<StringType>;
|
|
285
|
+
/** The bucket instant (see {@link PlanInstantLikeType}). */
|
|
286
|
+
at: A;
|
|
287
|
+
/** The lane key. In a laned row, omitting takes the full cell (the mixed grammar). */
|
|
288
|
+
lane?: SubtypeExprOrValue<StringType>;
|
|
289
|
+
/** Optional tile text; omitted ⇒ ✓ (confirmed/actual) or the dashed `plan` chip (proposed). */
|
|
290
|
+
label?: SubtypeExprOrValue<StringType>;
|
|
291
|
+
/** Optional leading FA glyph (chip-sized, inherits chip colour; icon-only tile when `label` omitted). */
|
|
292
|
+
icon?: PlanIconInput;
|
|
293
|
+
/** The lifecycle state — a string shorthand or an `EventStateType` value. */
|
|
294
|
+
state: SubtypeExprOrValue<EventStateType> | EventStateLiteral;
|
|
295
|
+
/** Optional semantic tile tint (keeps the state's border-style). */
|
|
296
|
+
tone?: SubtypeExprOrValue<StatusValueType> | StatusValueLiteral;
|
|
297
|
+
/** Optional raw colour token override (`"teal.solid"`). */
|
|
298
|
+
color?: SubtypeExprOrValue<StringType>;
|
|
299
|
+
/** Optional brand palette override (`"teal"`, `"purple"`). */
|
|
300
|
+
colorPalette?: SubtypeExprOrValue<ColorSchemeType> | ColorSchemeLiteral;
|
|
301
|
+
/** Optional fill axis. */
|
|
302
|
+
stretch?: SubtypeExprOrValue<PlanStretchType> | PlanStretchLiteral;
|
|
303
|
+
/** Optional two-axis content alignment (defaults to top-left). */
|
|
304
|
+
content?: {
|
|
305
|
+
/** Horizontal content alignment (→ `justifyContent`). */
|
|
306
|
+
horizontal?: SubtypeExprOrValue<PlanContentAlignType> | PlanContentAlignLiteral;
|
|
307
|
+
/** Vertical content alignment (→ `alignItems`). */
|
|
308
|
+
vertical?: SubtypeExprOrValue<PlanContentAlignType> | PlanContentAlignLiteral;
|
|
309
|
+
};
|
|
310
|
+
/** Optional attention animation (`"pulse"` honours `prefers-reduced-motion`). */
|
|
311
|
+
animation?: SubtypeExprOrValue<PlanAnimationType> | PlanAnimationLiteral;
|
|
312
|
+
}
|
|
313
|
+
/**
|
|
314
|
+
* Builds one bucket event from a flat input, branded with `at`'s kind.
|
|
315
|
+
*
|
|
316
|
+
* @typeParam A - The `at` input's type
|
|
317
|
+
* @param input - The event configuration ({@link PlanBucketEventInput})
|
|
318
|
+
* @returns An East expression of {@link PlanBucketEventType}, branded with its kind
|
|
319
|
+
*/
|
|
320
|
+
export declare function createBucketEvent<A extends PlanInstantInput>(input: PlanBucketEventInput<A>): PlanBucketEventExpr<PlanKindOf<A>>;
|
|
321
|
+
/**
|
|
322
|
+
* Flat input for {@link Plan.lane} — one bucket-row sub-slot lane.
|
|
323
|
+
*
|
|
324
|
+
* @property key - The lane key (`"am"`) — bucket events reference it via `lane`
|
|
325
|
+
* @property label - Optional printed caption (`"AM"`); omitted ⇒ an unlabelled strip
|
|
326
|
+
*/
|
|
327
|
+
export interface PlanLaneInput {
|
|
328
|
+
/** The lane key (`"am"`) — bucket events reference it via `lane`. */
|
|
329
|
+
key: SubtypeExprOrValue<StringType>;
|
|
330
|
+
/** Optional printed caption (`"AM"`); omitted ⇒ an unlabelled strip. */
|
|
331
|
+
label?: SubtypeExprOrValue<StringType>;
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* Builds one bucket-row lane from a flat input.
|
|
335
|
+
*
|
|
336
|
+
* @param input - The lane configuration ({@link PlanLaneInput})
|
|
337
|
+
* @returns An East expression of {@link PlanLaneType}
|
|
338
|
+
*/
|
|
339
|
+
export declare function createLane(input: PlanLaneInput): ExprType<PlanLaneType>;
|
|
340
|
+
/**
|
|
341
|
+
* Flat input for {@link Plan.link} — one run-edge quantity link of the
|
|
342
|
+
* canvas's link graph (`Plan.Root`'s `links`).
|
|
343
|
+
*
|
|
344
|
+
* @property from - The source row key
|
|
345
|
+
* @property fromRun - The source run key (the ribbon leaves this run's end edge)
|
|
346
|
+
* @property to - The destination row key
|
|
347
|
+
* @property toRun - The destination run key (the ribbon lands on this run's start edge)
|
|
348
|
+
* @property quantity - The moved quantity (drives ribbon share + opacity)
|
|
349
|
+
* @property label - The printed quantity caption (`"34 t"`)
|
|
350
|
+
*/
|
|
351
|
+
export interface PlanLinkInput {
|
|
352
|
+
/** The source row key. */
|
|
353
|
+
from: SubtypeExprOrValue<StringType>;
|
|
354
|
+
/** The source run key (the ribbon leaves this run's end edge). */
|
|
355
|
+
fromRun: SubtypeExprOrValue<StringType>;
|
|
356
|
+
/** The destination row key. */
|
|
357
|
+
to: SubtypeExprOrValue<StringType>;
|
|
358
|
+
/** The destination run key (the ribbon lands on this run's start edge). */
|
|
359
|
+
toRun: SubtypeExprOrValue<StringType>;
|
|
360
|
+
/** The moved quantity (drives ribbon share + opacity). */
|
|
361
|
+
quantity: SubtypeExprOrValue<FloatType> | number;
|
|
362
|
+
/** The printed quantity caption (`"34 t"`). */
|
|
363
|
+
label: SubtypeExprOrValue<StringType>;
|
|
364
|
+
}
|
|
365
|
+
/**
|
|
366
|
+
* Builds one link edge from a flat input. Links are root DATA
|
|
367
|
+
* (`links={transfers.map(($, t) => Plan.link({ … }))}`): the links-focus
|
|
368
|
+
* control gathers a row's transitive upstream/downstream family over them.
|
|
369
|
+
*
|
|
370
|
+
* @param input - The link configuration ({@link PlanLinkInput})
|
|
371
|
+
* @returns An East expression of {@link PlanLinkType}
|
|
372
|
+
*/
|
|
373
|
+
export declare function createLink(input: PlanLinkInput): ExprType<PlanLinkType>;
|
|
374
|
+
/**
|
|
375
|
+
* Flat input for {@link Plan.marker} — a bucket-cell status ring.
|
|
376
|
+
*
|
|
377
|
+
* @typeParam A - The `at` input's type — its axis kind brands the result
|
|
378
|
+
* @property at - The bucket instant the marker rings
|
|
379
|
+
* @property lane - The lane key within the cell
|
|
380
|
+
* @property status - The semantic status (default `"danger"`)
|
|
381
|
+
* @property message - The hover-tooltip text
|
|
382
|
+
*/
|
|
383
|
+
export interface PlanCellMarkerInput<A extends PlanInstantInput = PlanInstantInput> {
|
|
384
|
+
/** The bucket instant the marker rings (see {@link PlanInstantLikeType}). */
|
|
385
|
+
at: A;
|
|
386
|
+
/** The lane key within the cell. */
|
|
387
|
+
lane?: SubtypeExprOrValue<StringType>;
|
|
388
|
+
/** The semantic status (default `"danger"`). */
|
|
389
|
+
status?: SubtypeExprOrValue<StatusValueType> | StatusValueLiteral;
|
|
390
|
+
/** The hover-tooltip text. */
|
|
391
|
+
message: SubtypeExprOrValue<StringType>;
|
|
392
|
+
}
|
|
393
|
+
/**
|
|
394
|
+
* Builds one cell marker from a flat input, branded with `at`'s kind.
|
|
395
|
+
*
|
|
396
|
+
* @typeParam A - The `at` input's type
|
|
397
|
+
* @param input - The marker configuration ({@link PlanCellMarkerInput})
|
|
398
|
+
* @returns An East expression of {@link PlanCellMarkerType}, branded with its kind
|
|
399
|
+
*/
|
|
400
|
+
export declare function createCellMarker<A extends PlanInstantInput>(input: PlanCellMarkerInput<A>): PlanCellMarkerExpr<PlanKindOf<A>>;
|
|
401
|
+
/**
|
|
402
|
+
* Flat input for {@link Plan.chip} — one cards-row shift chip.
|
|
403
|
+
*
|
|
404
|
+
* @typeParam F - The `from` input's type — its axis kind brands the result
|
|
405
|
+
* @typeParam T - The `to` input's type
|
|
406
|
+
* @property key - Stable chip identity
|
|
407
|
+
* @property from - Chip start (inclusive)
|
|
408
|
+
* @property to - Chip end (exclusive)
|
|
409
|
+
* @property label - The chip text (`"80h"`, `"+64h"`)
|
|
410
|
+
* @property state - The lifecycle state (string shorthand or value)
|
|
411
|
+
* @property icon - Optional leading FA glyph
|
|
412
|
+
*/
|
|
413
|
+
export interface PlanChipInput<F extends PlanInstantInput = PlanInstantInput, T extends PlanInstantInput = PlanInstantInput> {
|
|
414
|
+
/** Stable chip identity (drag refs). */
|
|
415
|
+
key: SubtypeExprOrValue<StringType>;
|
|
416
|
+
/** Chip start (inclusive) — see {@link PlanInstantLikeType}. */
|
|
417
|
+
from: F;
|
|
418
|
+
/** Chip end (exclusive). */
|
|
419
|
+
to: T;
|
|
420
|
+
/** The chip text (`"80h"`, `"+64h"`). */
|
|
421
|
+
label: SubtypeExprOrValue<StringType>;
|
|
422
|
+
/** The lifecycle state — confirmed tint · proposed dashed · removed strikethrough · estimated ghost. */
|
|
423
|
+
state: SubtypeExprOrValue<EventStateType> | EventStateLiteral;
|
|
424
|
+
/** Optional leading FA glyph (shift-type etc.). */
|
|
425
|
+
icon?: PlanIconInput;
|
|
426
|
+
}
|
|
427
|
+
/**
|
|
428
|
+
* Builds one cards chip from a flat input, branded with the kind `from` /
|
|
429
|
+
* `to` imply.
|
|
430
|
+
*
|
|
431
|
+
* @typeParam F - The `from` input's type
|
|
432
|
+
* @typeParam T - The `to` input's type
|
|
433
|
+
* @param input - The chip configuration ({@link PlanChipInput})
|
|
434
|
+
* @returns An East expression of {@link PlanChipType}, branded with its kind
|
|
435
|
+
*/
|
|
436
|
+
export declare function createChip<F extends PlanInstantInput, T extends PlanInstantInput>(input: PlanChipInput<F, T>): PlanChipExpr<PlanKindOf<F | T>>;
|
|
437
|
+
/**
|
|
438
|
+
* Flat input for {@link Plan.mark} — one event-row instant mark.
|
|
439
|
+
*
|
|
440
|
+
* @typeParam A - The `at` input's type — its axis kind brands the result
|
|
441
|
+
* @property key - Stable mark identity
|
|
442
|
+
* @property at - The instant
|
|
443
|
+
* @property kind - `"milestone"` / `"exception"` / `Plan.markKind.decision(applied)`
|
|
444
|
+
* @property icon - Optional FA glyph swap (12px, kind-coloured)
|
|
445
|
+
* @property label - Optional caption (printed when there is room)
|
|
446
|
+
*/
|
|
447
|
+
export interface PlanEventMarkInput<A extends PlanInstantInput = PlanInstantInput> {
|
|
448
|
+
/** Stable mark identity. */
|
|
449
|
+
key: SubtypeExprOrValue<StringType>;
|
|
450
|
+
/** The instant (see {@link PlanInstantLikeType}). */
|
|
451
|
+
at: A;
|
|
452
|
+
/** The mark kind — `"milestone"` / `"exception"` string shorthand or a `PlanEventMarkKindType` value (see `Plan.markKind`). */
|
|
453
|
+
kind: SubtypeExprOrValue<PlanEventMarkKindType> | "milestone" | "exception";
|
|
454
|
+
/** Optional FA glyph swap (12px, still kind-coloured). */
|
|
455
|
+
icon?: PlanIconInput;
|
|
456
|
+
/** Optional caption (printed when there is room). */
|
|
457
|
+
label?: SubtypeExprOrValue<StringType>;
|
|
458
|
+
}
|
|
459
|
+
/**
|
|
460
|
+
* Builds one event mark from a flat input, branded with `at`'s kind.
|
|
461
|
+
*
|
|
462
|
+
* @typeParam A - The `at` input's type
|
|
463
|
+
* @param input - The mark configuration ({@link PlanEventMarkInput})
|
|
464
|
+
* @returns An East expression of {@link PlanEventMarkType}, branded with its kind
|
|
465
|
+
*/
|
|
466
|
+
export declare function createEventMark<A extends PlanInstantInput>(input: PlanEventMarkInput<A>): PlanEventMarkExpr<PlanKindOf<A>>;
|
|
467
|
+
/** The `Plan.markKind` builders — non-null mark kinds. */
|
|
468
|
+
export declare const markKind: {
|
|
469
|
+
/**
|
|
470
|
+
* A decision diamond mark — ◇ pending / ◆ applied.
|
|
471
|
+
*
|
|
472
|
+
* @param applied - `true` fills the diamond
|
|
473
|
+
* @returns A `PlanEventMarkKindType` expression with the `decision` arm
|
|
474
|
+
*/
|
|
475
|
+
readonly decision: (applied: SubtypeExprOrValue<BooleanType> | boolean) => ExprType<PlanEventMarkKindType>;
|
|
476
|
+
};
|
|
477
|
+
/**
|
|
478
|
+
* Options for {@link Plan.heatCells} — the heat scale + warn threshold.
|
|
479
|
+
*
|
|
480
|
+
* @property min - Scale minimum (default: observed)
|
|
481
|
+
* @property max - Scale maximum (default: observed)
|
|
482
|
+
* @property warnAt - Warn-ring threshold (≥ it rings the cell)
|
|
483
|
+
*/
|
|
484
|
+
export interface PlanHeatCellsOptions {
|
|
485
|
+
/** Scale minimum (default: the observed extent). */
|
|
486
|
+
min?: SubtypeExprOrValue<FloatType> | number;
|
|
487
|
+
/** Scale maximum (default: the observed extent). */
|
|
488
|
+
max?: SubtypeExprOrValue<FloatType> | number;
|
|
489
|
+
/** Warn-ring threshold (≥ it rings the cell). */
|
|
490
|
+
warnAt?: SubtypeExprOrValue<FloatType> | number;
|
|
491
|
+
}
|
|
492
|
+
/**
|
|
493
|
+
* Wraps per-bucket heat cells into the `heat` arm of {@link PlanHeatCellsType}.
|
|
494
|
+
* Literal records whose `at` is a `Plan.at.*` value brand the result with
|
|
495
|
+
* that kind ({@link PlanCellsInput}); an East array is kind-erased.
|
|
496
|
+
*
|
|
497
|
+
* @typeParam K - The kind inferred from the literal records' `at`
|
|
498
|
+
* @param cells - The cells (`{ at, value, label }` structs; `value: none` ⇒ the no-data hatch)
|
|
499
|
+
* @param options - Scale + warn threshold ({@link PlanHeatCellsOptions})
|
|
500
|
+
* @returns A `PlanHeatCellsType` expression, branded with the cells' kind
|
|
501
|
+
*/
|
|
502
|
+
export declare function createHeatCells<K extends PlanAxisKindLiteral = never>(cells: PlanCellsInput<PlanHeatCellType, K>, options?: PlanHeatCellsOptions): PlanHeatCellsExpr<K>;
|
|
503
|
+
/**
|
|
504
|
+
* Wraps per-bucket weight cells into the `weight` arm of
|
|
505
|
+
* {@link PlanHeatCellsType} (booked-vs-free bars; planned ⇒ pale). Literal
|
|
506
|
+
* records with `Plan.at.*` instants brand the result with their kind.
|
|
507
|
+
*
|
|
508
|
+
* @typeParam K - The kind inferred from the literal records' `at`
|
|
509
|
+
* @param cells - The cells (`{ at, fraction, planned }` structs)
|
|
510
|
+
* @returns A `PlanHeatCellsType` expression, branded with the cells' kind
|
|
511
|
+
*/
|
|
512
|
+
export declare function createWeightCells<K extends PlanAxisKindLiteral = never>(cells: PlanCellsInput<PlanWeightCellType, K>): PlanHeatCellsExpr<K>;
|
|
513
|
+
/**
|
|
514
|
+
* Wraps per-bucket segment cells into the `segments` arm of
|
|
515
|
+
* {@link PlanHeatCellsType} (committed / pending / slack compositions).
|
|
516
|
+
* Literal records with `Plan.at.*` instants brand the result with their kind.
|
|
517
|
+
*
|
|
518
|
+
* @typeParam K - The kind inferred from the literal records' `at`
|
|
519
|
+
* @param cells - The cells (`{ at, segments }` structs — build segments with `Plan.segment`)
|
|
520
|
+
* @returns A `PlanHeatCellsType` expression, branded with the cells' kind
|
|
521
|
+
*/
|
|
522
|
+
export declare function createSegmentCells<K extends PlanAxisKindLiteral = never>(cells: PlanCellsInput<PlanSegmentCellType, K>): PlanHeatCellsExpr<K>;
|
|
523
|
+
/**
|
|
524
|
+
* Flat input for {@link Plan.segment} — one weighted slice of a segment cell.
|
|
525
|
+
*
|
|
526
|
+
* @property fill - The status-leveraged fill (string shorthand or `MatrixFillType`)
|
|
527
|
+
* @property weight - The proportional weight
|
|
528
|
+
* @property label - Optional in-bar text (printed when wide enough)
|
|
529
|
+
*/
|
|
530
|
+
export interface PlanSegmentInput {
|
|
531
|
+
/** The status-leveraged fill. */
|
|
532
|
+
fill: SubtypeExprOrValue<MatrixFillType> | MatrixFillLiteral;
|
|
533
|
+
/** The proportional weight (normalised with siblings). */
|
|
534
|
+
weight: SubtypeExprOrValue<FloatType> | number;
|
|
535
|
+
/** Optional in-bar text (printed when the segment is wide enough). */
|
|
536
|
+
label?: SubtypeExprOrValue<StringType>;
|
|
537
|
+
}
|
|
538
|
+
/**
|
|
539
|
+
* Builds one segment from a flat input (the Matrix segment vocabulary).
|
|
540
|
+
*
|
|
541
|
+
* @param input - The segment configuration ({@link PlanSegmentInput})
|
|
542
|
+
* @returns An East expression of {@link PlanSegmentType}
|
|
543
|
+
*/
|
|
544
|
+
export declare function createSegment(input: PlanSegmentInput): ExprType<typeof PlanSegmentType>;
|
|
545
|
+
/**
|
|
546
|
+
* Flat input for {@link Plan.tableSeries} — one value series of a
|
|
547
|
+
* multi-series table row. Style is declared ONCE here, per position (never
|
|
548
|
+
* per cell — the wire-lean contract); the cells stay raw values.
|
|
549
|
+
*
|
|
550
|
+
* @typeParam K - The cells' axis kind (a `Plan.tableCells` result carries it)
|
|
551
|
+
* @property cells - The series' cells (a `Plan.tableCells` result / `PlanTableCellType` values)
|
|
552
|
+
* @property format - Numeral format override for this series (else the row's `format`)
|
|
553
|
+
* @property tone - Default tone for the series' values (`"muted"` de-emphasises a plan column)
|
|
554
|
+
* @property strong - Semibold emphasis for this series' values
|
|
555
|
+
* @property rollup - `true` ⇒ this series feeds declared parent aggregation (default: the first)
|
|
556
|
+
*/
|
|
557
|
+
export interface PlanTableSeriesInput<K extends PlanAxisKindLiteral = never> {
|
|
558
|
+
/** The series' cells (a `Plan.tableCells` result / `PlanTableCellType` values). */
|
|
559
|
+
cells: PlanTableCellsInput<K>;
|
|
560
|
+
/** Numeral format override for THIS series — a `Format.*` spec (else the row's `format`). */
|
|
561
|
+
format?: SubtypeExprOrValue<TickFormatType>;
|
|
562
|
+
/** Default tone for the series' values; per-cell tones and the derived neg/em-dash win. */
|
|
563
|
+
tone?: SubtypeExprOrValue<PlanTableToneType> | PlanTableToneLiteral;
|
|
564
|
+
/** Semibold emphasis for this series' values. */
|
|
565
|
+
strong?: SubtypeExprOrValue<BooleanType> | boolean;
|
|
566
|
+
/** `true` ⇒ this series feeds declared parent aggregation (default: the first series). */
|
|
567
|
+
rollup?: SubtypeExprOrValue<BooleanType> | boolean;
|
|
568
|
+
}
|
|
569
|
+
/**
|
|
570
|
+
* Builds one table-row value series (see {@link Plan.table}'s `series`) —
|
|
571
|
+
* per-position style declared once, raw cells beneath it; the result carries
|
|
572
|
+
* the cells' axis kind.
|
|
573
|
+
*
|
|
574
|
+
* @typeParam K - The cells' axis kind
|
|
575
|
+
* @param input - The series configuration ({@link PlanTableSeriesInput})
|
|
576
|
+
* @returns An East expression of {@link PlanTableSeriesType}, branded with the cells' kind
|
|
577
|
+
*/
|
|
578
|
+
export declare function createTableSeries<K extends PlanAxisKindLiteral = never>(input: PlanTableSeriesInput<K>): PlanTableSeriesExpr<K>;
|
|
579
|
+
/**
|
|
580
|
+
* The raw table-cell record — `{ at, value }`, its `at` any
|
|
581
|
+
* {@link PlanInstantLikeType} (wrapped to the axis arm by its static type).
|
|
582
|
+
*/
|
|
583
|
+
export type PlanRawTableCellType = StructType<{
|
|
584
|
+
at: PlanInstantLikeType;
|
|
585
|
+
value: OptionType<FloatType>;
|
|
586
|
+
}>;
|
|
587
|
+
/**
|
|
588
|
+
* Builds per-bucket table cells from raw values. The RENDERER prints each
|
|
589
|
+
* value through the row's `format` (a `Format.*` spec — the shared
|
|
590
|
+
* `TickFormatType`), tones negatives `neg` and renders `none` as the muted
|
|
591
|
+
* em-dash; build `PlanTableCellType` values directly for explicit `text` /
|
|
592
|
+
* `tone` overrides.
|
|
593
|
+
*
|
|
594
|
+
* @remarks
|
|
595
|
+
* The `at` of each raw cell wraps to the axis arm by its type — a
|
|
596
|
+
* `DateTimeType` field to `time`, a numeric field to `number`, a string
|
|
597
|
+
* field to `ordinal`, a {@link PlanInstantType} field as is — so a
|
|
598
|
+
* `{ at: DateTimeType, value }` dataset keeps compiling unchanged.
|
|
599
|
+
*
|
|
600
|
+
* Literal records brand the result with the kind their `at` implies
|
|
601
|
+
* ({@link PlanKindOf}); an East array is kind-erased.
|
|
602
|
+
*
|
|
603
|
+
* @typeParam A - The literal records' `at` type
|
|
604
|
+
* @param cells - The raw cells (`{ at, value }` records; `value` an `Option<Float>`)
|
|
605
|
+
* @returns An `ArrayType(PlanTableCellType)` expression, branded with the cells' kind
|
|
606
|
+
* @throws {Error} If an East array's element `at` is not an instant-typed field
|
|
607
|
+
*/
|
|
608
|
+
export declare function createTableCells<A extends PlanInstantInput = never>(cells: {
|
|
609
|
+
at: A;
|
|
610
|
+
value: SubtypeExprOrValue<OptionType<FloatType>>;
|
|
611
|
+
}[] | SubtypeExprOrValue<ArrayType<PlanRawTableCellType>>): PlanTableCellsExpr<PlanKindOf<A>>;
|
|
612
|
+
//# sourceMappingURL=builders.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../../../src/collections/plan/builders.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;GAWG;AAEH,OAAO,EACH,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,kBAAkB,EAGvB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,SAAS,EACT,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EAIb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,KAAK,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnF,OAAO,EAAE,KAAK,iBAAiB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAEH,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,eAAe,EACf,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EAGxB,eAAe,EACf,KAAK,kBAAkB,EACvB,oBAAoB,EACpB,KAAK,uBAAuB,EAE5B,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EAGnB,iBAAiB,EACjB,KAAK,oBAAoB,EAEzB,YAAY,EAMZ,YAAY,EAEZ,KAAK,aAAa,EACrB,MAAM,YAAY,CAAC;AAMpB;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACjC,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,GAC9D,kBAAkB,CAAC,cAAc,CAAC,CAYpC;AAED,6EAA6E;AAC7E,wBAAgB,UAAU,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAG/G;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AAEvG,gEAAgE;AAChE,wBAAgB,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAa7E;AAED,4EAA4E;AAC5E,wBAAgB,SAAS,IAAI,aAAa,CAEzC;AAMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC,CAqB5F;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,EAAE;IACX;;;;;OAKG;uBACO,kBAAkB,CAAC,YAAY,CAAC,KAAG,eAAe,CAAC,MAAM,CAAC;IAEpE;;;;;OAKG;yBACS,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,KAAG,eAAe,CAAC,QAAQ,CAAC;IAE9E;;;;;OAKG;0BACU,kBAAkB,CAAC,UAAU,CAAC,KAAG,eAAe,CAAC,SAAS,CAAC;CAElE,CAAC;AAMX;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAU7E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,qBAAqB,GAAG,YAAY,CAAC,QAAQ,CAAC,CAYvF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,sBAAsB,GAAG,YAAY,CAAC,SAAS,CAAC,CAQ1F;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC5B,gFAAgF;IAChF,CAAC,OAAO,EAAE,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjD,mCAAmC;IACnC,IAAI,EAAE,OAAO,cAAc,CAAC;IAC5B,qDAAqD;IACrD,MAAM,EAAE,OAAO,gBAAgB,CAAC;IAChC,sDAAsD;IACtD,OAAO,EAAE,OAAO,iBAAiB,CAAC;CACrC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,EAAE,eAGxB,CAAC;AAMF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,EAAE,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IACtH,mDAAmD;IACnD,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,mGAAmG;IACnG,KAAK,EAAE,CAAC,CAAC;IACT,2BAA2B;IAC3B,GAAG,EAAE,CAAC,CAAC;IACP,sCAAsC;IACtC,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC1C,yGAAyG;IACzG,GAAG,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACpC,6EAA6E;IAC7E,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,CAAC;IAC9D,6EAA6E;IAC7E,MAAM,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IAClE,kFAAkF;IAClF,KAAK,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IACjD,sEAAsE;IACtE,IAAI,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,gBAAgB,EAAE,CAAC,SAAS,gBAAgB,EAC5E,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,GAC1B,WAAW,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAahC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IAC5E,gCAAgC;IAChC,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,oFAAoF;IACpF,EAAE,EAAE,CAAC,CAAC;IACN,4CAA4C;IAC5C,OAAO,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;CACtD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAM3H;AAED;;;;;;GAMG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IACxE,wEAAwE;IACxE,EAAE,EAAE,CAAC,CAAC;IACN,oCAAoC;IACpC,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAK3G;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IAC/E,sDAAsD;IACtD,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,4DAA4D;IAC5D,EAAE,EAAE,CAAC,CAAC;IACN,sFAAsF;IACtF,IAAI,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,+FAA+F;IAC/F,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACvC,yGAAyG;IACzG,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,6EAA6E;IAC7E,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,CAAC;IAC9D,oEAAoE;IACpE,IAAI,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IAChE,2DAA2D;IAC3D,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACvC,8DAA8D;IAC9D,YAAY,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IACxE,0BAA0B;IAC1B,OAAO,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IACnE,kEAAkE;IAClE,OAAO,CAAC,EAAE;QACN,yDAAyD;QACzD,UAAU,CAAC,EAAE,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,uBAAuB,CAAC;QAChF,mDAAmD;QACnD,QAAQ,CAAC,EAAE,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,uBAAuB,CAAC;KACjF,CAAC;IACF,iFAAiF;IACjF,SAAS,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,oBAAoB,CAAC;CAC5E;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAqBhI;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC1B,qEAAqE;IACrE,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,wEAAwE;IACxE,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,QAAQ,CAAC,YAAY,CAAC,CAKvE;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC1B,0BAA0B;IAC1B,IAAI,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACrC,kEAAkE;IAClE,OAAO,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACxC,+BAA+B;IAC/B,EAAE,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACnC,2EAA2E;IAC3E,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,0DAA0D;IAC1D,QAAQ,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IACjD,+CAA+C;IAC/C,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CACzC;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,QAAQ,CAAC,YAAY,CAAC,CASvE;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IAC9E,6EAA6E;IAC7E,EAAE,EAAE,CAAC,CAAC;IACN,oCAAoC;IACpC,IAAI,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,gDAAgD;IAChD,MAAM,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IAClE,8BAA8B;IAC9B,OAAO,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC3C;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAO7H;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,EAAE,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IACvH,wCAAwC;IACxC,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,gEAAgE;IAChE,IAAI,EAAE,CAAC,CAAC;IACR,4BAA4B;IAC5B,EAAE,EAAE,CAAC,CAAC;IACN,yCAAyC;IACzC,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,wGAAwG;IACxG,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,CAAC;IAC9D,mDAAmD;IACnD,IAAI,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,gBAAgB,EAAE,CAAC,SAAS,gBAAgB,EAC7E,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,YAAY,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CASjC;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IAC7E,4BAA4B;IAC5B,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,qDAAqD;IACrD,EAAE,EAAE,CAAC,CAAC;IACN,+HAA+H;IAC/H,IAAI,EAAE,kBAAkB,CAAC,qBAAqB,CAAC,GAAG,WAAW,GAAG,WAAW,CAAC;IAC5E,0DAA0D;IAC1D,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,qDAAqD;IACrD,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAQ1H;AAED,0DAA0D;AAC1D,eAAO,MAAM,QAAQ;IACjB;;;;;OAKG;iCACiB,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,KAAG,QAAQ,CAAC,qBAAqB,CAAC;CAEzF,CAAC;AAMX;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACjC,oDAAoD;IACpD,GAAG,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC7C,oDAAoD;IACpD,GAAG,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC7C,iDAAiD;IACjD,MAAM,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;CACnD;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK,EACjE,KAAK,EAAE,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAC1C,OAAO,CAAC,EAAE,oBAAoB,GAC/B,iBAAiB,CAAC,CAAC,CAAC,CAOtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK,EACnE,KAAK,EAAE,cAAc,CAAC,kBAAkB,EAAE,CAAC,CAAC,GAC7C,iBAAiB,CAAC,CAAC,CAAC,CAEtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK,EACpE,KAAK,EAAE,cAAc,CAAC,mBAAmB,EAAE,CAAC,CAAC,GAC9C,iBAAiB,CAAC,CAAC,CAAC,CAEtB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC7B,iCAAiC;IACjC,IAAI,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,CAAC;IAC7D,0DAA0D;IAC1D,MAAM,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC/C,sEAAsE;IACtE,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,QAAQ,CAAC,OAAO,eAAe,CAAC,CAMvF;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK;IACvE,mFAAmF;IACnF,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC9B,6FAA6F;IAC7F,MAAM,CAAC,EAAE,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAC5C,2FAA2F;IAC3F,IAAI,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,oBAAoB,CAAC;IACpE,iDAAiD;IACjD,MAAM,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;IACnD,0FAA0F;IAC1F,MAAM,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;CACtD;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAQ/H;AAED;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC;IAAE,EAAE,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAA;CAAE,CAAC,CAAC;AAEzG;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,gBAAgB,GAAG,KAAK,EAC/D,KAAK,EACC;IAAE,EAAE,EAAE,CAAC,CAAC;IAAC,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAA;CAAE,EAAE,GAC7D,kBAAkB,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,GAC1D,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAuCnC"}
|