@elaraai/east-ui 1.0.26 → 1.0.28
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/buttons/icon-button/index.d.ts +33 -1
- package/dist/src/buttons/icon-button/index.d.ts.map +1 -1
- package/dist/src/buttons/icon-button/index.js +22 -4
- package/dist/src/buttons/icon-button/index.js.map +1 -1
- package/dist/src/buttons/icon-button/types.d.ts +61 -13
- package/dist/src/buttons/icon-button/types.d.ts.map +1 -1
- package/dist/src/buttons/icon-button/types.js +22 -1
- package/dist/src/buttons/icon-button/types.js.map +1 -1
- package/dist/src/charts/chart/index.d.ts +57 -2
- package/dist/src/charts/chart/index.d.ts.map +1 -1
- package/dist/src/charts/chart/index.js +13 -4
- package/dist/src/charts/chart/index.js.map +1 -1
- package/dist/src/charts/spec/index.d.ts +49 -0
- package/dist/src/charts/spec/index.d.ts.map +1 -1
- package/dist/src/charts/spec/index.js +5 -2
- package/dist/src/charts/spec/index.js.map +1 -1
- package/dist/src/charts/spec/types.d.ts +21 -5
- package/dist/src/charts/spec/types.d.ts.map +1 -1
- package/dist/src/charts/spec/types.js +12 -4
- package/dist/src/charts/spec/types.js.map +1 -1
- package/dist/src/collections/calendar/index.d.ts +18 -2
- package/dist/src/collections/calendar/index.d.ts.map +1 -1
- package/dist/src/collections/calendar/index.js +15 -1
- package/dist/src/collections/calendar/index.js.map +1 -1
- package/dist/src/collections/calendar/types.d.ts +12 -0
- package/dist/src/collections/calendar/types.d.ts.map +1 -1
- package/dist/src/collections/calendar/types.js +7 -0
- package/dist/src/collections/calendar/types.js.map +1 -1
- package/dist/src/collections/gantt/index.d.ts.map +1 -1
- package/dist/src/collections/gantt/index.js +12 -1
- package/dist/src/collections/gantt/index.js.map +1 -1
- package/dist/src/collections/gantt/types.d.ts +10 -0
- package/dist/src/collections/gantt/types.d.ts.map +1 -1
- package/dist/src/collections/gantt/types.js +3 -0
- package/dist/src/collections/gantt/types.js.map +1 -1
- package/dist/src/collections/matrix/index.d.ts +4 -0
- package/dist/src/collections/matrix/index.d.ts.map +1 -1
- package/dist/src/collections/matrix/index.js +9 -0
- package/dist/src/collections/matrix/index.js.map +1 -1
- package/dist/src/collections/planner/index.d.ts +69 -4
- package/dist/src/collections/planner/index.d.ts.map +1 -1
- package/dist/src/collections/planner/index.js +112 -4
- package/dist/src/collections/planner/index.js.map +1 -1
- package/dist/src/collections/planner/types.d.ts +89 -0
- package/dist/src/collections/planner/types.d.ts.map +1 -1
- package/dist/src/collections/planner/types.js +63 -0
- package/dist/src/collections/planner/types.js.map +1 -1
- package/dist/src/collections/schematic/index.d.ts +546 -2
- package/dist/src/collections/schematic/index.d.ts.map +1 -1
- package/dist/src/collections/schematic/index.js +14 -2
- package/dist/src/collections/schematic/index.js.map +1 -1
- package/dist/src/collections/schematic/types.d.ts +534 -0
- package/dist/src/collections/schematic/types.d.ts.map +1 -1
- package/dist/src/collections/schematic/types.js +3 -0
- package/dist/src/collections/schematic/types.js.map +1 -1
- package/dist/src/collections/table/index.d.ts.map +1 -1
- package/dist/src/collections/table/index.js +11 -1
- package/dist/src/collections/table/index.js.map +1 -1
- package/dist/src/collections/table/types.d.ts +10 -0
- package/dist/src/collections/table/types.d.ts.map +1 -1
- package/dist/src/collections/table/types.js +3 -0
- package/dist/src/collections/table/types.js.map +1 -1
- package/dist/src/component.d.ts +687 -0
- package/dist/src/component.d.ts.map +1 -1
- package/dist/src/component.js +22 -1
- package/dist/src/component.js.map +1 -1
- package/dist/src/container/card/index.d.ts +4 -0
- package/dist/src/container/card/index.d.ts.map +1 -1
- package/dist/src/container/card/index.js +4 -0
- package/dist/src/container/card/index.js.map +1 -1
- package/dist/src/container/card/types.d.ts +11 -1
- package/dist/src/container/card/types.d.ts.map +1 -1
- package/dist/src/container/card/types.js +5 -1
- package/dist/src/container/card/types.js.map +1 -1
- package/dist/src/display/chip-rail/index.d.ts +1 -1
- package/dist/src/display/chip-rail/index.js +1 -1
- package/dist/src/display/trace/index.d.ts +10 -0
- package/dist/src/display/trace/index.d.ts.map +1 -1
- package/dist/src/display/trace/index.js +11 -1
- package/dist/src/display/trace/index.js.map +1 -1
- package/dist/src/display/trace/types.d.ts +17 -0
- package/dist/src/display/trace/types.d.ts.map +1 -1
- package/dist/src/display/trace/types.js +5 -0
- package/dist/src/display/trace/types.js.map +1 -1
- package/dist/src/forms/field/index.d.ts +1 -0
- package/dist/src/forms/field/index.d.ts.map +1 -1
- package/dist/src/forms/field/types.d.ts +2 -0
- package/dist/src/forms/field/types.d.ts.map +1 -1
- package/dist/src/forms/tags-input/index.d.ts.map +1 -1
- package/dist/src/forms/tags-input/index.js +1 -0
- package/dist/src/forms/tags-input/index.js.map +1 -1
- package/dist/src/forms/tags-input/types.d.ts +4 -0
- package/dist/src/forms/tags-input/types.d.ts.map +1 -1
- package/dist/src/forms/tags-input/types.js +2 -0
- package/dist/src/forms/tags-input/types.js.map +1 -1
- package/dist/src/index.d.ts +3 -3
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +7 -5
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal.d.ts +7 -5
- package/dist/src/internal.d.ts.map +1 -1
- package/dist/src/internal.js +6 -4
- package/dist/src/internal.js.map +1 -1
- package/dist/src/layout/aligned-stack/index.d.ts +101 -0
- package/dist/src/layout/aligned-stack/index.d.ts.map +1 -0
- package/dist/src/layout/aligned-stack/index.js +105 -0
- package/dist/src/layout/aligned-stack/index.js.map +1 -0
- package/dist/src/layout/aligned-stack/types.d.ts +50 -0
- package/dist/src/layout/aligned-stack/types.d.ts.map +1 -0
- package/dist/src/layout/aligned-stack/types.js +24 -0
- package/dist/src/layout/aligned-stack/types.js.map +1 -0
- package/dist/src/layout/index.d.ts +1 -0
- package/dist/src/layout/index.d.ts.map +1 -1
- package/dist/src/layout/index.js +1 -0
- package/dist/src/layout/index.js.map +1 -1
- package/dist/src/navigation/index.d.ts +1 -1
- package/dist/src/navigation/index.d.ts.map +1 -1
- package/dist/src/navigation/index.js +1 -1
- package/dist/src/navigation/index.js.map +1 -1
- package/dist/src/navigation/pages/index.d.ts +35 -30
- package/dist/src/navigation/pages/index.d.ts.map +1 -1
- package/dist/src/navigation/pages/index.js +33 -36
- package/dist/src/navigation/pages/index.js.map +1 -1
- package/dist/src/navigation/pages/types.d.ts +17 -0
- package/dist/src/navigation/pages/types.d.ts.map +1 -1
- package/dist/src/navigation/pages/types.js +28 -0
- package/dist/src/navigation/pages/types.js.map +1 -1
- package/dist/src/overlays/drawer/index.d.ts +6 -0
- package/dist/src/overlays/drawer/index.d.ts.map +1 -1
- package/dist/src/overlays/drawer/index.js +8 -1
- package/dist/src/overlays/drawer/index.js.map +1 -1
- package/dist/src/overlays/drawer/types.d.ts +18 -0
- package/dist/src/overlays/drawer/types.d.ts.map +1 -1
- package/dist/src/overlays/drawer/types.js +9 -0
- package/dist/src/overlays/drawer/types.js.map +1 -1
- package/dist/src/platform/index.d.ts +1 -1
- package/dist/src/platform/index.d.ts.map +1 -1
- package/dist/src/platform/index.js +1 -1
- package/dist/src/platform/index.js.map +1 -1
- package/dist/src/platform/slice/impl.d.ts +2 -0
- package/dist/src/platform/slice/impl.d.ts.map +1 -1
- package/dist/src/platform/slice/impl.js +74 -17
- package/dist/src/platform/slice/impl.js.map +1 -1
- package/dist/src/platform/slice/index.d.ts +550 -0
- package/dist/src/platform/slice/index.d.ts.map +1 -1
- package/dist/src/platform/slice/index.js +107 -1
- package/dist/src/platform/slice/index.js.map +1 -1
- package/dist/src/platform/state.d.ts +15 -0
- package/dist/src/platform/state.d.ts.map +1 -1
- package/dist/src/platform/state.js +25 -0
- package/dist/src/platform/state.js.map +1 -1
- package/dist/src/runtime/collections/schematic.d.ts +2 -2
- package/dist/src/runtime/collections/schematic.js +2 -2
- package/dist/src/runtime/layout/aligned-stack.d.ts +38 -0
- package/dist/src/runtime/layout/aligned-stack.d.ts.map +1 -0
- package/dist/src/runtime/layout/aligned-stack.js +36 -0
- package/dist/src/runtime/layout/aligned-stack.js.map +1 -0
- package/dist/src/runtime/layout/index.d.ts +1 -0
- package/dist/src/runtime/layout/index.d.ts.map +1 -1
- package/dist/src/runtime/layout/index.js +1 -0
- package/dist/src/runtime/layout/index.js.map +1 -1
- package/dist/src/runtime/navigation/index.d.ts +1 -0
- package/dist/src/runtime/navigation/index.d.ts.map +1 -1
- package/dist/src/runtime/navigation/index.js +1 -0
- package/dist/src/runtime/navigation/index.js.map +1 -1
- package/dist/src/runtime/navigation/pages.d.ts +50 -0
- package/dist/src/runtime/navigation/pages.d.ts.map +1 -0
- package/dist/src/runtime/navigation/pages.js +52 -0
- package/dist/src/runtime/navigation/pages.js.map +1 -0
- package/dist/src/shared/plot-gutter.d.ts +65 -0
- package/dist/src/shared/plot-gutter.d.ts.map +1 -0
- package/dist/src/shared/plot-gutter.js +48 -0
- package/dist/src/shared/plot-gutter.js.map +1 -0
- package/dist/src/slice/breakdown/index.d.ts +1 -0
- package/dist/src/slice/breakdown/index.d.ts.map +1 -1
- package/dist/src/slice/breakdown/types.d.ts +1 -0
- package/dist/src/slice/breakdown/types.d.ts.map +1 -1
- package/dist/src/slice/cohort/index.d.ts +1 -0
- package/dist/src/slice/cohort/index.d.ts.map +1 -1
- package/dist/src/slice/cohort/types.d.ts +1 -0
- package/dist/src/slice/cohort/types.d.ts.map +1 -1
- package/dist/src/slice/filter/index.d.ts +1 -0
- package/dist/src/slice/filter/index.d.ts.map +1 -1
- package/dist/src/slice/filter/types.d.ts +1 -0
- package/dist/src/slice/filter/types.d.ts.map +1 -1
- package/dist/src/slice/index.d.ts +17 -0
- package/dist/src/slice/index.d.ts.map +1 -1
- package/dist/src/slice/legend/index.d.ts +1 -0
- package/dist/src/slice/legend/index.d.ts.map +1 -1
- package/dist/src/slice/legend/types.d.ts +1 -0
- package/dist/src/slice/legend/types.d.ts.map +1 -1
- package/dist/src/slice/range/index.d.ts +1 -0
- package/dist/src/slice/range/index.d.ts.map +1 -1
- package/dist/src/slice/range/types.d.ts +1 -0
- package/dist/src/slice/range/types.d.ts.map +1 -1
- package/dist/src/slice/search/index.d.ts +1 -0
- package/dist/src/slice/search/index.d.ts.map +1 -1
- package/dist/src/slice/search/types.d.ts +1 -0
- package/dist/src/slice/search/types.d.ts.map +1 -1
- package/dist/src/slice/summary/index.d.ts +1 -0
- package/dist/src/slice/summary/index.d.ts.map +1 -1
- package/dist/src/slice/summary/types.d.ts +1 -0
- package/dist/src/slice/summary/types.d.ts.map +1 -1
- package/dist/test/buttons/icon-button.examples.d.ts +1 -0
- package/dist/test/buttons/icon-button.examples.d.ts.map +1 -1
- package/dist/test/buttons/icon-button.examples.js +8 -0
- package/dist/test/buttons/icon-button.examples.js.map +1 -1
- package/dist/test/charts/chart.examples.d.ts +4 -0
- package/dist/test/charts/chart.examples.d.ts.map +1 -1
- package/dist/test/charts/chart.examples.js +62 -4
- package/dist/test/charts/chart.examples.js.map +1 -1
- package/dist/test/collections/calendar.examples.d.ts +1 -0
- package/dist/test/collections/calendar.examples.d.ts.map +1 -1
- package/dist/test/collections/calendar.examples.js +17 -0
- package/dist/test/collections/calendar.examples.js.map +1 -1
- package/dist/test/collections/gantt.examples.d.ts +1 -0
- package/dist/test/collections/gantt.examples.d.ts.map +1 -1
- package/dist/test/collections/gantt.examples.js +12 -0
- package/dist/test/collections/gantt.examples.js.map +1 -1
- package/dist/test/collections/planner.examples.d.ts +42 -7
- package/dist/test/collections/planner.examples.d.ts.map +1 -1
- package/dist/test/collections/planner.examples.js +139 -24
- package/dist/test/collections/planner.examples.js.map +1 -1
- package/dist/test/collections/schematic.examples.d.ts +1 -0
- package/dist/test/collections/schematic.examples.d.ts.map +1 -1
- package/dist/test/collections/schematic.examples.js +35 -12
- package/dist/test/collections/schematic.examples.js.map +1 -1
- package/dist/test/collections/table.examples.d.ts +1 -0
- package/dist/test/collections/table.examples.d.ts.map +1 -1
- package/dist/test/collections/table.examples.js +11 -0
- package/dist/test/collections/table.examples.js.map +1 -1
- package/dist/test/container/card.examples.d.ts +1 -0
- package/dist/test/container/card.examples.d.ts.map +1 -1
- package/dist/test/container/card.examples.js +8 -0
- package/dist/test/container/card.examples.js.map +1 -1
- package/dist/test/disclosure/accordion.examples.js +3 -3
- package/dist/test/disclosure/accordion.examples.js.map +1 -1
- package/dist/test/disclosure/tabs.examples.js +3 -3
- package/dist/test/disclosure/tabs.examples.js.map +1 -1
- package/dist/test/display/chip-rail.examples.js +3 -3
- package/dist/test/display/chip-rail.examples.js.map +1 -1
- package/dist/test/display/combine.examples.js +3 -3
- package/dist/test/display/combine.examples.js.map +1 -1
- package/dist/test/display/trace.examples.d.ts +2 -0
- package/dist/test/display/trace.examples.d.ts.map +1 -1
- package/dist/test/display/trace.examples.js +23 -0
- package/dist/test/display/trace.examples.js.map +1 -1
- package/dist/test/forms/combobox.examples.js +1 -1
- package/dist/test/forms/tags-input.examples.d.ts +1 -0
- package/dist/test/forms/tags-input.examples.d.ts.map +1 -1
- package/dist/test/forms/tags-input.examples.js +8 -0
- package/dist/test/forms/tags-input.examples.js.map +1 -1
- package/dist/test/layout/aligned-stack.examples.d.ts +79 -0
- package/dist/test/layout/aligned-stack.examples.d.ts.map +1 -0
- package/dist/test/layout/aligned-stack.examples.js +355 -0
- package/dist/test/layout/aligned-stack.examples.js.map +1 -0
- package/dist/test/layout/stack.examples.js +1 -1
- package/dist/test/navigation/pages.examples.d.ts +3 -2
- package/dist/test/navigation/pages.examples.d.ts.map +1 -1
- package/dist/test/navigation/pages.examples.js +83 -99
- package/dist/test/navigation/pages.examples.js.map +1 -1
- package/dist/test/overlays/drawer.examples.d.ts +1 -0
- package/dist/test/overlays/drawer.examples.d.ts.map +1 -1
- package/dist/test/overlays/drawer.examples.js +9 -1
- package/dist/test/overlays/drawer.examples.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,105 @@
|
|
|
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
|
+
import { East, ArrayType, StructType, OptionType, variant, some, none, } from "@elaraai/east";
|
|
6
|
+
import { UIComponentType } from "../../component.js";
|
|
7
|
+
import { DensityType } from "../../style/interaction.js";
|
|
8
|
+
/**
|
|
9
|
+
* Standalone East type for `AlignedStack` data — mirrors the inline arm in
|
|
10
|
+
* `component.ts` (which spells `children` with the recursion `node`). Used by the
|
|
11
|
+
* renderer for `equalFor` + `ValueTypeOf`.
|
|
12
|
+
*
|
|
13
|
+
* @property children - The stacked lane components
|
|
14
|
+
* @property gutter - The imposed gutter (`auto` | `fixed{left,right}`)
|
|
15
|
+
* @property style - Optional box-model style
|
|
16
|
+
*/
|
|
17
|
+
export const AlignedStackType = StructType({
|
|
18
|
+
children: ArrayType(UIComponentType),
|
|
19
|
+
gutter: OptionType(AlignedGutterType),
|
|
20
|
+
style: OptionType(AlignedStackStyleType),
|
|
21
|
+
});
|
|
22
|
+
import { AlignedStackStyleType } from "./types.js";
|
|
23
|
+
import { PlotGutterType, AlignedGutterType, } from "../../shared/plot-gutter.js";
|
|
24
|
+
export { AlignedStackStyleType } from "./types.js";
|
|
25
|
+
export { PlotGutterType, AlignedGutterType } from "../../shared/plot-gutter.js";
|
|
26
|
+
/** Build the `AlignedGutterType` value (`auto` | `fixed{left,right}`) from the input. */
|
|
27
|
+
function resolveGutter(g) {
|
|
28
|
+
if (g === undefined)
|
|
29
|
+
return undefined;
|
|
30
|
+
if (g === "auto")
|
|
31
|
+
return East.value(variant("auto", null), AlignedGutterType);
|
|
32
|
+
const gutter = East.value({
|
|
33
|
+
left: g.left !== undefined ? some(g.left) : none,
|
|
34
|
+
right: g.right !== undefined ? some(g.right) : none,
|
|
35
|
+
}, PlotGutterType);
|
|
36
|
+
return East.value(variant("fixed", gutter), AlignedGutterType);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Build an `<AlignedStack>` — a vertical stack of axis/lane components (Chart,
|
|
40
|
+
* Trace, Calendar, …) that share one horizontal plot gutter so their data lanes
|
|
41
|
+
* line up on a common x. The gutter is published to the children via context; a
|
|
42
|
+
* child's own `plotGutter` prop still wins over the inherited value (#147).
|
|
43
|
+
*
|
|
44
|
+
* @param children - The stacked lane components
|
|
45
|
+
* @param options - The {@link AlignedStackOptions} (`gutter` + box-model style)
|
|
46
|
+
* @returns An `AlignedStack` {@link UIComponentType} value
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```ts
|
|
50
|
+
* import { East } from "@elaraai/east";
|
|
51
|
+
* import { AlignedStack, Chart, UIComponentType } from "@elaraai/east-ui";
|
|
52
|
+
*
|
|
53
|
+
* const aligned = East.function([], UIComponentType, ($) =>
|
|
54
|
+
* AlignedStack.Root([
|
|
55
|
+
* Chart.Root(Chart.Line(rows, { x: r => r.day, y: r => r.value })),
|
|
56
|
+
* // …a Trace / Planner on the same day axis…
|
|
57
|
+
* ], { gutter: { left: "48px", right: "12px" }, gap: "8px" }));
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
function createAlignedStack(children, options) {
|
|
61
|
+
const gutter = resolveGutter(options?.gutter);
|
|
62
|
+
const densityValue = options?.density !== undefined
|
|
63
|
+
? (typeof options.density === "string"
|
|
64
|
+
? East.value(variant(options.density, null), DensityType)
|
|
65
|
+
: options.density)
|
|
66
|
+
: undefined;
|
|
67
|
+
const hasStyle = options !== undefined &&
|
|
68
|
+
(options.gap !== undefined || options.width !== undefined ||
|
|
69
|
+
options.height !== undefined || options.minHeight !== undefined ||
|
|
70
|
+
options.density !== undefined);
|
|
71
|
+
return East.value(variant("AlignedStack", {
|
|
72
|
+
children,
|
|
73
|
+
gutter: gutter !== undefined ? some(gutter) : none,
|
|
74
|
+
style: hasStyle
|
|
75
|
+
? some(East.value({
|
|
76
|
+
gap: options.gap !== undefined ? some(options.gap) : none,
|
|
77
|
+
width: options.width !== undefined ? some(options.width) : none,
|
|
78
|
+
height: options.height !== undefined ? some(options.height) : none,
|
|
79
|
+
minHeight: options.minHeight !== undefined ? some(options.minHeight) : none,
|
|
80
|
+
density: densityValue !== undefined ? some(densityValue) : none,
|
|
81
|
+
}, AlignedStackStyleType))
|
|
82
|
+
: none,
|
|
83
|
+
}), UIComponentType);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* `AlignedStack` — vertically stacks axis/lane components on a shared plot gutter.
|
|
87
|
+
*
|
|
88
|
+
* @remarks
|
|
89
|
+
* Use `AlignedStack.Root(children, { gutter })`. Types via `.Types`.
|
|
90
|
+
*/
|
|
91
|
+
export const AlignedStack = {
|
|
92
|
+
/** Build an AlignedStack (see {@link createAlignedStack}). */
|
|
93
|
+
Root: createAlignedStack,
|
|
94
|
+
Types: {
|
|
95
|
+
/** The AlignedStack data struct. */
|
|
96
|
+
AlignedStack: AlignedStackType,
|
|
97
|
+
/** The `{ left, right }` plot-gutter struct. */
|
|
98
|
+
PlotGutter: PlotGutterType,
|
|
99
|
+
/** The `auto | fixed` gutter mode. */
|
|
100
|
+
Gutter: AlignedGutterType,
|
|
101
|
+
/** The AlignedStack style struct. */
|
|
102
|
+
Style: AlignedStackStyleType,
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/layout/aligned-stack/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
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
|
+
import { type SubtypeExprOrValue, OptionType, StringType, StructType } from "@elaraai/east";
|
|
6
|
+
import { DensityType, type DensityLiteral } from "../../style/interaction.js";
|
|
7
|
+
/**
|
|
8
|
+
* Style for {@link AlignedStack} — a vertical stack of axis/lane components that
|
|
9
|
+
* share one plot gutter. Minimal box-model knobs (the gutter is the point).
|
|
10
|
+
*
|
|
11
|
+
* @property gap - Vertical spacing between stacked children (CSS length / token)
|
|
12
|
+
* @property width - Stack width (default `100%`)
|
|
13
|
+
* @property height - Stack height
|
|
14
|
+
* @property minHeight - Stack min-height
|
|
15
|
+
* @property density - Density preset imposed on every lane child (comfortable | compact | condensed)
|
|
16
|
+
*/
|
|
17
|
+
export declare const AlignedStackStyleType: StructType<{
|
|
18
|
+
readonly gap: OptionType<StringType>;
|
|
19
|
+
readonly width: OptionType<StringType>;
|
|
20
|
+
readonly height: OptionType<StringType>;
|
|
21
|
+
readonly minHeight: OptionType<StringType>;
|
|
22
|
+
readonly density: OptionType<import("@elaraai/east").VariantType<{
|
|
23
|
+
readonly comfortable: import("@elaraai/east").NullType;
|
|
24
|
+
readonly compact: import("@elaraai/east").NullType;
|
|
25
|
+
readonly condensed: import("@elaraai/east").NullType;
|
|
26
|
+
}>>;
|
|
27
|
+
}>;
|
|
28
|
+
export type AlignedStackStyleType = typeof AlignedStackStyleType;
|
|
29
|
+
/**
|
|
30
|
+
* TS input for {@link AlignedStackStyleType}.
|
|
31
|
+
*
|
|
32
|
+
* @property gap - Vertical spacing between stacked children
|
|
33
|
+
* @property width - Stack width (default `100%`)
|
|
34
|
+
* @property height - Stack height
|
|
35
|
+
* @property minHeight - Stack min-height
|
|
36
|
+
* @property density - Density preset imposed on every lane child
|
|
37
|
+
*/
|
|
38
|
+
export interface AlignedStackStyle {
|
|
39
|
+
/** Vertical spacing between stacked children (CSS length / token). */
|
|
40
|
+
gap?: SubtypeExprOrValue<StringType>;
|
|
41
|
+
/** Stack width (default `100%`). */
|
|
42
|
+
width?: SubtypeExprOrValue<StringType>;
|
|
43
|
+
/** Stack height. */
|
|
44
|
+
height?: SubtypeExprOrValue<StringType>;
|
|
45
|
+
/** Stack min-height. */
|
|
46
|
+
minHeight?: SubtypeExprOrValue<StringType>;
|
|
47
|
+
/** Density preset imposed on every lane child (comfortable | compact | condensed). Each child still overrides with its own `density` if set. */
|
|
48
|
+
density?: SubtypeExprOrValue<DensityType> | DensityLiteral;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/layout/aligned-stack/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,kBAAkB,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE9E;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;EAMhC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,OAAO,qBAAqB,CAAC;AAEjE;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAC9B,sEAAsE;IACtE,GAAG,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACrC,oCAAoC;IACpC,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACvC,oBAAoB;IACpB,MAAM,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACxC,wBAAwB;IACxB,SAAS,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC3C,gJAAgJ;IAChJ,OAAO,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,cAAc,CAAC;CAC9D"}
|
|
@@ -0,0 +1,24 @@
|
|
|
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
|
+
import { OptionType, StringType, StructType } from "@elaraai/east";
|
|
6
|
+
import { DensityType } from "../../style/interaction.js";
|
|
7
|
+
/**
|
|
8
|
+
* Style for {@link AlignedStack} — a vertical stack of axis/lane components that
|
|
9
|
+
* share one plot gutter. Minimal box-model knobs (the gutter is the point).
|
|
10
|
+
*
|
|
11
|
+
* @property gap - Vertical spacing between stacked children (CSS length / token)
|
|
12
|
+
* @property width - Stack width (default `100%`)
|
|
13
|
+
* @property height - Stack height
|
|
14
|
+
* @property minHeight - Stack min-height
|
|
15
|
+
* @property density - Density preset imposed on every lane child (comfortable | compact | condensed)
|
|
16
|
+
*/
|
|
17
|
+
export const AlignedStackStyleType = StructType({
|
|
18
|
+
gap: OptionType(StringType),
|
|
19
|
+
width: OptionType(StringType),
|
|
20
|
+
height: OptionType(StringType),
|
|
21
|
+
minHeight: OptionType(StringType),
|
|
22
|
+
density: OptionType(DensityType),
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/layout/aligned-stack/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAA2B,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAuB,MAAM,4BAA4B,CAAC;AAE9E;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAC;IAC5C,GAAG,EAAQ,UAAU,CAAC,UAAU,CAAC;IACjC,KAAK,EAAM,UAAU,CAAC,UAAU,CAAC;IACjC,MAAM,EAAK,UAAU,CAAC,UAAU,CAAC;IACjC,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC;IACjC,OAAO,EAAI,UAAU,CAAC,WAAW,CAAC;CACrC,CAAC,CAAC"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
export { Box } from "./box/index.js";
|
|
6
6
|
export { Flex } from "./flex/index.js";
|
|
7
7
|
export { Stack } from "./stack/index.js";
|
|
8
|
+
export { AlignedStack } from "./aligned-stack/index.js";
|
|
8
9
|
export { Separator } from "./separator/index.js";
|
|
9
10
|
export { Grid } from "./grid/index.js";
|
|
10
11
|
export { Splitter } from "./splitter/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layout/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layout/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC"}
|
package/dist/src/layout/index.js
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
export { Box } from "./box/index.js";
|
|
6
6
|
export { Flex } from "./flex/index.js";
|
|
7
7
|
export { Stack } from "./stack/index.js";
|
|
8
|
+
export { AlignedStack } from "./aligned-stack/index.js";
|
|
8
9
|
export { Separator } from "./separator/index.js";
|
|
9
10
|
export { Grid } from "./grid/index.js";
|
|
10
11
|
export { Splitter } from "./splitter/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/layout/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/layout/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export { Breadcrumb } from "./breadcrumb/index.js";
|
|
6
6
|
export { NavList, NavListType, NavSectionType, NavItemType, type NavListStyle, type NavSectionInput, type NavItemInput, } from "./nav-list/index.js";
|
|
7
|
-
export { Navigation, Pages, NavBindHandleType, navBindPlatformFn, routeVariantType, type NavRoutes, type NavRouteConfig, type NavConfig, type RouteVariantOf, type NavHandleType, type BoundNav, type PageConstructors, type PagesHandlers, type
|
|
7
|
+
export { Navigation, Pages, NavBindHandleType, navBindPlatformFn, NavBindPrimitives, routeVariantType, type NavRoutes, type NavRouteConfig, type NavConfig, type RouteVariantOf, type NavHandleType, type BoundNav, type PageConstructors, type PagesHandlers, type PagesInput, } from "./pages/index.js";
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/navigation/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACH,OAAO,EACP,WAAW,EACX,cAAc,EACd,WAAW,EACX,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,YAAY,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,UAAU,EACV,KAAK,EACL,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/navigation/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACH,OAAO,EACP,WAAW,EACX,cAAc,EACd,WAAW,EACX,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,YAAY,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,UAAU,EACV,KAAK,EACL,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,UAAU,GAClB,MAAM,kBAAkB,CAAC"}
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export { Breadcrumb } from "./breadcrumb/index.js";
|
|
6
6
|
export { NavList, NavListType, NavSectionType, NavItemType, } from "./nav-list/index.js";
|
|
7
|
-
export { Navigation, Pages, NavBindHandleType, navBindPlatformFn, routeVariantType, } from "./pages/index.js";
|
|
7
|
+
export { Navigation, Pages, NavBindHandleType, navBindPlatformFn, NavBindPrimitives, routeVariantType, } from "./pages/index.js";
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/navigation/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACH,OAAO,EACP,WAAW,EACX,cAAc,EACd,WAAW,GAId,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,UAAU,EACV,KAAK,EACL,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,GAUnB,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/navigation/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACH,OAAO,EACP,WAAW,EACX,cAAc,EACd,WAAW,GAId,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,UAAU,EACV,KAAK,EACL,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,GAUnB,MAAM,kBAAkB,CAAC"}
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
import { ArrayType, NullType, type BlockBuilder, type ExprType, type SubtypeExprOrValue } from "@elaraai/east";
|
|
17
17
|
import { UIComponentType } from "../../component.js";
|
|
18
18
|
import { type NavRoutes, type RouteVariantOf, type BoundNav } from "./types.js";
|
|
19
|
-
export { NavBindHandleType, navBindPlatformFn, routeVariantType, type NavRoutes, type NavRouteConfig, type RouteVariantOf, type NavHandleType, type BoundNav, } from "./types.js";
|
|
19
|
+
export { NavBindHandleType, navBindPlatformFn, NavBindPrimitives, routeVariantType, type NavRoutes, type NavRouteConfig, type RouteVariantOf, type NavHandleType, type BoundNav, } from "./types.js";
|
|
20
20
|
/**
|
|
21
21
|
* Per-route typed segment constructors. `Page.<route>(payload)` returns
|
|
22
22
|
* `variant(route, payload)`, type-checked against the config's payload — so a
|
|
23
|
-
* whole typed path is `[Page.overview(), Page.
|
|
24
|
-
* raw `[variant("overview", null), variant("
|
|
23
|
+
* whole typed path is `[Page.overview(), Page.detail(row)]` (identical to the
|
|
24
|
+
* raw `[variant("overview", null), variant("detail", row)]`).
|
|
25
25
|
*/
|
|
26
26
|
export type PageConstructors<R extends NavRoutes> = {
|
|
27
27
|
[K in keyof R]: R[K]["value"] extends typeof NullType ? () => ExprType<RouteVariantOf<R>> : (payload: SubtypeExprOrValue<R[K]["value"]>) => ExprType<RouteVariantOf<R>>;
|
|
@@ -80,45 +80,50 @@ export type PagesHandlers<R extends NavRoutes> = {
|
|
|
80
80
|
[K in keyof R]: ($: BlockBuilder<typeof UIComponentType>, payload: ExprType<R[K]["value"]>, nav: BoundNav<R>) => SubtypeExprOrValue<typeof UIComponentType>;
|
|
81
81
|
};
|
|
82
82
|
/**
|
|
83
|
-
* The
|
|
84
|
-
*
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
*
|
|
83
|
+
* The input to the `<Pages>` switcher: the nav handle (bound once in the
|
|
84
|
+
* enclosing `<Reactive>` via `Navigation.bind`, shared with the chrome) plus
|
|
85
|
+
* the typed page registry.
|
|
86
|
+
*
|
|
87
|
+
* @remarks
|
|
88
|
+
* Taking the **bound handle** as a prop — rather than re-binding internally
|
|
89
|
+
* from a key — is what makes Pages re-render on navigation inside an e3 `ui()`
|
|
90
|
+
* task (#114): one binding, subscribed via the correct store, drives both the
|
|
91
|
+
* writer (`nav.go.*` / `nav.pop()`) and the Pages render (`nav.current()`).
|
|
92
|
+
* `R` is fixed by `nav`, so every `pages` handler is contextually typed.
|
|
88
93
|
*/
|
|
89
|
-
export interface
|
|
90
|
-
/** The
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
|
|
94
|
-
/** One body per route — see {@link PagesHandlers}. */
|
|
95
|
-
pages: PagesHandlers<R>;
|
|
94
|
+
export interface PagesInput<R extends NavRoutes> {
|
|
95
|
+
/** The nav handle from `Navigation.bind(config, key, initial)`, bound in the enclosing `<Reactive>`. */
|
|
96
|
+
nav: BoundNav<R>;
|
|
97
|
+
/** One body per route — see {@link PagesHandlers}. `R` is fixed by `nav`, so the handlers are contextually typed. */
|
|
98
|
+
pages: PagesHandlers<NoInfer<R>>;
|
|
96
99
|
}
|
|
97
100
|
/**
|
|
98
|
-
* Build a `<Pages>` content-switcher from a
|
|
101
|
+
* Build a `<Pages>` content-switcher from a bound nav handle + a typed page
|
|
102
|
+
* registry.
|
|
99
103
|
*
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
*
|
|
106
|
-
*
|
|
104
|
+
* The nullary `render` reads `current()` on the **passed** handle (no internal
|
|
105
|
+
* re-bind) and `match`es the active route to its page body. The bodies live in
|
|
106
|
+
* the match arms (in the IR), so the manifest walk collects every page's binds
|
|
107
|
+
* (the union) while only the matched arm executes — the renderer mounts just
|
|
108
|
+
* the active page (leaf-only, visible-only). The render closes over `nav`, so
|
|
109
|
+
* its `current()` read subscribes to the same store the app's handle is bound
|
|
110
|
+
* to (#114).
|
|
107
111
|
*
|
|
108
|
-
* @param
|
|
109
|
-
* @returns A
|
|
112
|
+
* @param input - The {@link PagesInput} (`nav` handle + `pages` registry).
|
|
113
|
+
* @returns A `Pages` `UIComponentType` value.
|
|
110
114
|
*/
|
|
111
|
-
declare function createPages<R extends NavRoutes>(
|
|
115
|
+
declare function createPages<R extends NavRoutes>({ nav, pages }: PagesInput<R>): ExprType<typeof UIComponentType>;
|
|
112
116
|
/**
|
|
113
117
|
* The `Pages` namespace — the first-class navigation content-switcher.
|
|
114
118
|
*
|
|
115
119
|
* @remarks
|
|
116
|
-
*
|
|
117
|
-
*
|
|
118
|
-
*
|
|
120
|
+
* Authored as the `<Pages nav={…} pages={{…}} />` tag; `Pages.Root({ nav,
|
|
121
|
+
* pages })` is the underlying factory. Bind the handle once with
|
|
122
|
+
* `Navigation.bind` in the enclosing `<Reactive>` and share it with the chrome
|
|
123
|
+
* (`<Breadcrumb nav>` / `<NavList nav>`).
|
|
119
124
|
*/
|
|
120
125
|
export declare const Pages: {
|
|
121
|
-
/** Build a `<Pages>` content-switcher
|
|
126
|
+
/** Build a `<Pages>` content-switcher from `{ nav, pages }`. See {@link createPages}. */
|
|
122
127
|
readonly Root: typeof createPages;
|
|
123
128
|
};
|
|
124
129
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/navigation/pages/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAEH,SAAS,EACT,QAAQ,EAGR,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EAC1B,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAIH,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,QAAQ,EAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACH,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,QAAQ,GAChB,MAAM,YAAY,CAAC;AAMpB;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,SAAS,IAAI;KAC/C,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,OAAO,QAAQ,GAC/C,MAAM,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GACjC,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CACpF,CAAC;AAeF;;;;;;GAMG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,SAAS;IAC1C,0DAA0D;IAC1D,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACnB,6CAA6C;IAC7C,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAClC,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;CACtC;AAED,iBAAS,eAAe,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAMrE;AAMD;;;;;;;;;;;;GAYG;AACH,iBAAS,cAAc,CAAC,CAAC,SAAS,SAAS,EACvC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EACpB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAC1D,QAAQ,CAAC,CAAC,CAAC,CAQb;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU;IACnB,oEAAoE;;IAEpE,qDAAqD;;CAE/C,CAAC;AAMX;;;;;GAKG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,SAAS,IAAI;KAC5C,CAAC,IAAI,MAAM,CAAC,GAAG,CACZ,CAAC,EAAE,YAAY,CAAC,OAAO,eAAe,CAAC,EACvC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAChC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KACf,kBAAkB,CAAC,OAAO,eAAe,CAAC;CAClD,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/navigation/pages/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
import { East, ArrayType, NullType, StringType, variant, } from "@elaraai/east";
|
|
17
17
|
import { UIComponentType } from "../../component.js";
|
|
18
18
|
import { NavBindHandleType, navBindPlatformFn, routeVariantType, } from "./types.js";
|
|
19
|
-
export { NavBindHandleType, navBindPlatformFn, routeVariantType, } from "./types.js";
|
|
19
|
+
export { NavBindHandleType, navBindPlatformFn, NavBindPrimitives, routeVariantType, } from "./types.js";
|
|
20
20
|
function makePageConstructors(routes) {
|
|
21
21
|
const page = {};
|
|
22
22
|
for (const name of Object.keys(routes)) {
|
|
@@ -67,52 +67,49 @@ export const Navigation = {
|
|
|
67
67
|
bind: bindNavigation,
|
|
68
68
|
};
|
|
69
69
|
/**
|
|
70
|
-
* Build a `<Pages>` content-switcher from a
|
|
70
|
+
* Build a `<Pages>` content-switcher from a bound nav handle + a typed page
|
|
71
|
+
* registry.
|
|
71
72
|
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
73
|
+
* The nullary `render` reads `current()` on the **passed** handle (no internal
|
|
74
|
+
* re-bind) and `match`es the active route to its page body. The bodies live in
|
|
75
|
+
* the match arms (in the IR), so the manifest walk collects every page's binds
|
|
76
|
+
* (the union) while only the matched arm executes — the renderer mounts just
|
|
77
|
+
* the active page (leaf-only, visible-only). The render closes over `nav`, so
|
|
78
|
+
* its `current()` read subscribes to the same store the app's handle is bound
|
|
79
|
+
* to (#114).
|
|
79
80
|
*
|
|
80
|
-
* @param
|
|
81
|
-
* @returns A
|
|
81
|
+
* @param input - The {@link PagesInput} (`nav` handle + `pages` registry).
|
|
82
|
+
* @returns A `Pages` `UIComponentType` value.
|
|
82
83
|
*/
|
|
83
|
-
function createPages(
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
const
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
}
|
|
95
|
-
return arms;
|
|
96
|
-
};
|
|
97
|
-
const render = East.function([], UIComponentType, ($) => {
|
|
98
|
-
// Re-bind by key inside the free render body (bound once — no capture of an outer handle).
|
|
99
|
-
const nav = $.const(bindNavigation(config, stateKey, initial));
|
|
100
|
-
const cur = $.const(nav.current());
|
|
101
|
-
return cur.match(armsFor(nav));
|
|
102
|
-
});
|
|
103
|
-
return East.value(variant("Pages", { render, navKey: stateKey }), UIComponentType);
|
|
84
|
+
function createPages({ nav, pages }) {
|
|
85
|
+
const handlers = pages;
|
|
86
|
+
// Build the match arms in host TS (outside the East block): one arm per
|
|
87
|
+
// route, forwarding the typed payload + the shared handle to the page body.
|
|
88
|
+
const armsFor = (navH) => {
|
|
89
|
+
const arms = {};
|
|
90
|
+
for (const name of Object.keys(handlers)) {
|
|
91
|
+
const fn = handlers[name];
|
|
92
|
+
arms[name] = (h, payload) => fn(h, payload, navH);
|
|
93
|
+
}
|
|
94
|
+
return arms;
|
|
104
95
|
};
|
|
96
|
+
const render = East.function([], UIComponentType, ($) => {
|
|
97
|
+
const cur = $.const(nav.current());
|
|
98
|
+
return cur.match(armsFor(nav));
|
|
99
|
+
});
|
|
100
|
+
return East.value(variant("Pages", { render, navKey: nav.key }), UIComponentType);
|
|
105
101
|
}
|
|
106
102
|
/**
|
|
107
103
|
* The `Pages` namespace — the first-class navigation content-switcher.
|
|
108
104
|
*
|
|
109
105
|
* @remarks
|
|
110
|
-
*
|
|
111
|
-
*
|
|
112
|
-
*
|
|
106
|
+
* Authored as the `<Pages nav={…} pages={{…}} />` tag; `Pages.Root({ nav,
|
|
107
|
+
* pages })` is the underlying factory. Bind the handle once with
|
|
108
|
+
* `Navigation.bind` in the enclosing `<Reactive>` and share it with the chrome
|
|
109
|
+
* (`<Breadcrumb nav>` / `<NavList nav>`).
|
|
113
110
|
*/
|
|
114
111
|
export const Pages = {
|
|
115
|
-
/** Build a `<Pages>` content-switcher
|
|
112
|
+
/** Build a `<Pages>` content-switcher from `{ nav, pages }`. See {@link createPages}. */
|
|
116
113
|
Root: createPages,
|
|
117
114
|
};
|
|
118
115
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/navigation/pages/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EACH,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,UAAU,EACV,OAAO,GAIV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EACH,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,GAInB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACH,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,GAMnB,MAAM,YAAY,CAAC;AAkBpB,SAAS,oBAAoB,CAAsB,MAAS;IACxD,MAAM,IAAI,GAAmD,EAAE,CAAC;IAChE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAiB,EAAE,EAAE,CAC/B,OAAO,CAAC,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAA2C,CAAC;IACxG,CAAC;IACD,OAAO,IAA2B,CAAC;AACvC,CAAC;AAsBD,SAAS,eAAe,CAAsB,MAAS;IACnD,OAAO;QACH,MAAM;QACN,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC;QAC/B,IAAI,EAAE,oBAAoB,CAAC,MAAM,CAAC;KACrC,CAAC;AACN,CAAC;AAED,+EAA+E;AAC/E,kFAAkF;AAClF,+EAA+E;AAE/E;;;;;;;;;;;;GAYG;AACH,SAAS,cAAc,CACnB,MAAoB,EACpB,GAAW,EACX,OAAyD;IAEzD,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC7C,OAAO,iBAAiB,CACpB,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,EAC1B,QAAQ,EACR,OAAgB,CACJ,CAAC;AACrB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB,oEAAoE;IACpE,MAAM,EAAE,eAAe;IACvB,qDAAqD;IACrD,IAAI,EAAE,cAAc;CACd,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/navigation/pages/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -76,5 +76,22 @@ export type BoundNav<R extends NavRoutes> = ExprType<NavHandleType<R>>;
|
|
|
76
76
|
* The single literal/value args are the store key and the initial path.
|
|
77
77
|
*/
|
|
78
78
|
export declare const navBindPlatformFn: import("@elaraai/east").GenericPlatformDefinition<readonly ["H", "R"], readonly [StringType, ArrayType<"R">], "H">;
|
|
79
|
+
/**
|
|
80
|
+
* Low-level platform primitives that back {@link Navigation.bind}'s handle methods.
|
|
81
|
+
*
|
|
82
|
+
* @internal Not for direct use — author against {@link Navigation.bind}. These
|
|
83
|
+
* exist so the handle's methods can be IR-bearing `East.function`s (serializable)
|
|
84
|
+
* rather than raw host closures.
|
|
85
|
+
*/
|
|
86
|
+
export declare const NavBindPrimitives: {
|
|
87
|
+
/** `nav_read([P], key, initial) -> P` — the path stack (tracks the key). */
|
|
88
|
+
readonly read: import("@elaraai/east").GenericPlatformDefinition<readonly ["P"], readonly [StringType, "P"], "P">;
|
|
89
|
+
/** `nav_write([P], key, path) -> Null` — replace the whole stack. */
|
|
90
|
+
readonly write: import("@elaraai/east").GenericPlatformDefinition<readonly ["P"], readonly [StringType, "P"], NullType>;
|
|
91
|
+
/** `nav_pop([P], key, initial) -> Null` — drop the leaf (if depth > 1). */
|
|
92
|
+
readonly pop: import("@elaraai/east").GenericPlatformDefinition<readonly ["P"], readonly [StringType, "P"], NullType>;
|
|
93
|
+
/** `nav_go([P, V], key, routeName, payload, initial) -> Null` — push a route. */
|
|
94
|
+
readonly go: import("@elaraai/east").GenericPlatformDefinition<readonly ["P", "V"], readonly [StringType, StringType, "V", "P"], NullType>;
|
|
95
|
+
};
|
|
79
96
|
export {};
|
|
80
97
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/navigation/pages/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAEH,SAAS,EACT,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,UAAU,EACV,UAAU,EACV,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,QAAQ,EAChB,MAAM,eAAe,CAAC;AAMvB;;;;;;GAMG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ;IACzD,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,6DAA6D;AAC7D,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAEvD,sFAAsF;AACtF,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,SAAS,IAAI,WAAW,CAAC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;CAAE,CAAC,CAAC;AAEjG,gEAAgE;AAChE,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAIlF;AAMD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAyBlF;AAED,oDAAoD;AACpD,KAAK,YAAY,CAAC,CAAC,SAAS,SAAS,IAAI,WAAW,CAAC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;CAAE,CAAC,CAAC;AAExF;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,SAAS,IAAI,UAAU,CAAC;IACxD,GAAG,EAAE,OAAO,UAAU,CAAC;IACvB,IAAI,EAAE,YAAY,CAAC,EAAE,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,KAAK,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,WAAW,CAAC,CAAC;IAC5C,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,WAAW,CAAC,CAAC;IAC7C,GAAG,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,QAAQ,CAAC,CAAC;IACvC,EAAE,EAAE,UAAU,CAAC;SAAG,CAAC,IAAI,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,QAAQ,CAAC;KAAE,CAAC,CAAC;IACnF,UAAU,EAAE,YAAY,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,QAAQ,CAAC,CAAC;CAC3E,CAAC,CAAC;AAEH,yEAAyE;AACzE,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,SAAS,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAMvE;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,oHAM7B,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/navigation/pages/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAEH,SAAS,EACT,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,UAAU,EACV,UAAU,EACV,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,QAAQ,EAChB,MAAM,eAAe,CAAC;AAMvB;;;;;;GAMG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ;IACzD,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,6DAA6D;AAC7D,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAEvD,sFAAsF;AACtF,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,SAAS,IAAI,WAAW,CAAC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;CAAE,CAAC,CAAC;AAEjG,gEAAgE;AAChE,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAIlF;AAMD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAyBlF;AAED,oDAAoD;AACpD,KAAK,YAAY,CAAC,CAAC,SAAS,SAAS,IAAI,WAAW,CAAC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;CAAE,CAAC,CAAC;AAExF;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,SAAS,IAAI,UAAU,CAAC;IACxD,GAAG,EAAE,OAAO,UAAU,CAAC;IACvB,IAAI,EAAE,YAAY,CAAC,EAAE,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,KAAK,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,WAAW,CAAC,CAAC;IAC5C,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,WAAW,CAAC,CAAC;IAC7C,GAAG,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,QAAQ,CAAC,CAAC;IACvC,EAAE,EAAE,UAAU,CAAC;SAAG,CAAC,IAAI,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,QAAQ,CAAC;KAAE,CAAC,CAAC;IACnF,UAAU,EAAE,YAAY,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,QAAQ,CAAC,CAAC;CAC3E,CAAC,CAAC;AAEH,yEAAyE;AACzE,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,SAAS,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAMvE;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,oHAM7B,CAAC;AAcF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;IAC1B,4EAA4E;;IAE5E,qEAAqE;;IAErE,2EAA2E;;IAE3E,iFAAiF;;CAE3E,CAAC"}
|
|
@@ -70,4 +70,32 @@ export function NavBindHandleType(routes) {
|
|
|
70
70
|
* The single literal/value args are the store key and the initial path.
|
|
71
71
|
*/
|
|
72
72
|
export const navBindPlatformFn = East.genericPlatform("nav_bind", ["H", "R"], [StringType, ArrayType("R")], "H", { optional: true });
|
|
73
|
+
// Low-level primitives backing a `Navigation.bind` handle's methods (issue #106).
|
|
74
|
+
//
|
|
75
|
+
// The handle's path-stack ops become thin `East.function`s over these primitives,
|
|
76
|
+
// capturing only the plain-data store key (+ the seed path for the decode-side
|
|
77
|
+
// fallback). `P` is the path type (`ArrayType(Route)`); `V` is one route's payload
|
|
78
|
+
// type. current/depth/canPop are derived in East from `nav_read`. So a nav handle
|
|
79
|
+
// is ordinary serializable East data and re-binds to the decoder's store.
|
|
80
|
+
const nav_read = East.genericPlatform("nav_read", ["P"], [StringType, "P"], "P", { optional: true });
|
|
81
|
+
const nav_write = East.genericPlatform("nav_write", ["P"], [StringType, "P"], NullType, { optional: true });
|
|
82
|
+
const nav_pop = East.genericPlatform("nav_pop", ["P"], [StringType, "P"], NullType, { optional: true });
|
|
83
|
+
const nav_go = East.genericPlatform("nav_go", ["P", "V"], [StringType, StringType, "V", "P"], NullType, { optional: true });
|
|
84
|
+
/**
|
|
85
|
+
* Low-level platform primitives that back {@link Navigation.bind}'s handle methods.
|
|
86
|
+
*
|
|
87
|
+
* @internal Not for direct use — author against {@link Navigation.bind}. These
|
|
88
|
+
* exist so the handle's methods can be IR-bearing `East.function`s (serializable)
|
|
89
|
+
* rather than raw host closures.
|
|
90
|
+
*/
|
|
91
|
+
export const NavBindPrimitives = {
|
|
92
|
+
/** `nav_read([P], key, initial) -> P` — the path stack (tracks the key). */
|
|
93
|
+
read: nav_read,
|
|
94
|
+
/** `nav_write([P], key, path) -> Null` — replace the whole stack. */
|
|
95
|
+
write: nav_write,
|
|
96
|
+
/** `nav_pop([P], key, initial) -> Null` — drop the leaf (if depth > 1). */
|
|
97
|
+
pop: nav_pop,
|
|
98
|
+
/** `nav_go([P, V], key, routeName, payload, initial) -> Null` — push a route. */
|
|
99
|
+
go: nav_go,
|
|
100
|
+
};
|
|
73
101
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/navigation/pages/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EACH,IAAI,EACJ,SAAS,EACT,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,UAAU,EACV,UAAU,EACV,WAAW,GAGd,MAAM,eAAe,CAAC;AAwBvB,gEAAgE;AAChE,MAAM,UAAU,gBAAgB,CAAsB,MAAS;IAC3D,MAAM,KAAK,GAA6B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;IAC1E,OAAO,WAAW,CAAC,KAAK,CAAsB,CAAC;AACnD,CAAC;AAED,+EAA+E;AAC/E,iDAAiD;AACjD,+EAA+E;AAE/E;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAsB,MAAS;IAC5D,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,QAAQ,GAA6B,EAAE,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/C,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,UAAU,CAAC;QACd,gFAAgF;QAChF,GAAG,EAAE,UAAU;QACf,2EAA2E;QAC3E,IAAI,EAAE,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC;QAC5B,4DAA4D;QAC5D,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC;QAChC,mBAAmB;QACnB,KAAK,EAAE,YAAY,CAAC,EAAE,EAAE,WAAW,CAAC;QACpC,qDAAqD;QACrD,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE,WAAW,CAAC;QACrC,4BAA4B;QAC5B,GAAG,EAAE,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC;QAC/B,6EAA6E;QAC7E,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC;QACxB,kEAAkE;QAClE,UAAU,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;KAC7C,CAAgC,CAAC;AACtC,CAAC;AA0BD,+EAA+E;AAC/E,yEAAyE;AACzE,+EAA+E;AAE/E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,CACjD,UAAU,EACV,CAAC,GAAG,EAAE,GAAG,CAAC,EACV,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAC5B,GAAG,EACH,EAAE,QAAQ,EAAE,IAAI,EAAE,CACrB,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/navigation/pages/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -211,6 +211,9 @@ export declare const Drawer: {
|
|
|
211
211
|
* @property size - Drawer size variant
|
|
212
212
|
* @property placement - Edge placement
|
|
213
213
|
* @property contained - Render within parent container
|
|
214
|
+
* @property bodyPadding - CSS padding shorthand for the body (default `"16px 20px"`)
|
|
215
|
+
* @property flush - Removes body padding (full-bleed); overrides `bodyPadding`
|
|
216
|
+
* @property fillBody - Body becomes a definite-height flex column so a single child fills + owns its scroll
|
|
214
217
|
*/
|
|
215
218
|
readonly Style: StructType<{
|
|
216
219
|
readonly size: OptionType<import("@elaraai/east").VariantType<{
|
|
@@ -230,6 +233,9 @@ export declare const Drawer: {
|
|
|
230
233
|
readonly contained: OptionType<import("@elaraai/east").BooleanType>;
|
|
231
234
|
readonly onOpenChange: OptionType<import("@elaraai/east").FunctionType<[import("@elaraai/east").BooleanType], NullType>>;
|
|
232
235
|
readonly onExitComplete: OptionType<import("@elaraai/east").FunctionType<[], NullType>>;
|
|
236
|
+
readonly bodyPadding: OptionType<StringType>;
|
|
237
|
+
readonly flush: OptionType<import("@elaraai/east").BooleanType>;
|
|
238
|
+
readonly fillBody: OptionType<import("@elaraai/east").BooleanType>;
|
|
233
239
|
}>;
|
|
234
240
|
/**
|
|
235
241
|
* Size variant type for Drawer component.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/overlays/drawer/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,KAAK,QAAQ,EACb,KAAK,kBAAkB,EAEvB,UAAU,EAAE,UAAU,EACtB,UAAU,EACV,SAAS,EAIT,QAAQ,EACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAGH,eAAe,EACf,KAAK,WAAW,EACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACH,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,KAAK,WAAW,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAM5E;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,UAAU,EAAE,UAAU,CAAC;IAChC,OAAO,EAAE,eAAe,CAAC;IACzB,IAAI,EAAE,SAAS,CAAC,eAAe,CAAC,CAAC;IACjC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IAChC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IAC9B,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IACpC,KAAK,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;CACtC,CAOC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC;AAM3C;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAAU,CAAC;IACzC,IAAI,EAAE,SAAS,CAAC,eAAe,CAAC,CAAC;IACjC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IAChC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IAC9B,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IACpC,KAAK,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;CACtC,CAMC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAC;AAM7D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,aAAc,SAAQ,WAAW;IAC9C,yDAAyD;IACzD,OAAO,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC;CAChD;AAED,iBAAS,YAAY,CACjB,IAAI,EAAE,kBAAkB,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,EACpD,OAAO,EAAE,aAAa,GACvB,QAAQ,CAAC,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/overlays/drawer/index.ts"],"names":[],"mappings":"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"}
|