@elaraai/east-ui 1.0.41 → 1.0.43
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/collections/flowchart/index.d.ts +430 -0
- package/dist/src/collections/flowchart/index.d.ts.map +1 -0
- package/dist/src/collections/flowchart/index.js +292 -0
- package/dist/src/collections/flowchart/index.js.map +1 -0
- package/dist/src/collections/flowchart/types.d.ts +333 -0
- package/dist/src/collections/flowchart/types.d.ts.map +1 -0
- package/dist/src/collections/flowchart/types.js +263 -0
- package/dist/src/collections/flowchart/types.js.map +1 -0
- package/dist/src/collections/index.d.ts +1 -0
- package/dist/src/collections/index.d.ts.map +1 -1
- package/dist/src/collections/index.js +1 -0
- package/dist/src/collections/index.js.map +1 -1
- package/dist/src/component.d.ts +727 -0
- package/dist/src/component.d.ts.map +1 -1
- package/dist/src/component.js +39 -0
- package/dist/src/component.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal.d.ts +1 -1
- package/dist/src/internal.d.ts.map +1 -1
- package/dist/src/internal.js +1 -1
- package/dist/src/internal.js.map +1 -1
- package/dist/src/runtime/collections/flowchart.d.ts +58 -0
- package/dist/src/runtime/collections/flowchart.d.ts.map +1 -0
- package/dist/src/runtime/collections/flowchart.js +54 -0
- package/dist/src/runtime/collections/flowchart.js.map +1 -0
- package/dist/src/runtime/collections/index.d.ts +1 -0
- package/dist/src/runtime/collections/index.d.ts.map +1 -1
- package/dist/src/runtime/collections/index.js +1 -0
- package/dist/src/runtime/collections/index.js.map +1 -1
- package/dist/test/collections/flowchart.examples.d.ts +7 -0
- package/dist/test/collections/flowchart.examples.d.ts.map +1 -0
- package/dist/test/collections/flowchart.examples.js +283 -0
- package/dist/test/collections/flowchart.examples.js.map +1 -0
- package/dist/test/collections/value-tree.examples.d.ts +1 -0
- package/dist/test/collections/value-tree.examples.d.ts.map +1 -1
- package/dist/test/collections/value-tree.examples.js +22 -1
- package/dist/test/collections/value-tree.examples.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,292 @@
|
|
|
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, Expr, variant, some, none, ArrayType, BooleanType, DateTimeType, FunctionType, IntegerType, NullType, OptionType, StringType, StructType, } from "@elaraai/east";
|
|
6
|
+
import { UIComponentType } from "../../component.js";
|
|
7
|
+
import { mapRows } from "../../shared/reify.js";
|
|
8
|
+
import { DensityType } from "../../style/interaction.js";
|
|
9
|
+
import { SliceBindType, SliceChromeType } from "../../platform/slice/index.js";
|
|
10
|
+
import { SliceAffordanceType } from "../../contracts/slice-affordances.js";
|
|
11
|
+
import { FlowchartLinkKindType, FlowchartOrientationType, FlowchartLinkModeType, FlowchartEvidenceType, FlowchartStateType, FlowchartLinkType, FlowchartLaneType, FlowchartTriggerType, FlowchartFreshnessType, FlowchartLinkCreateEventType, FlowchartLaneRenameEventType, FlowchartStateAddEventType, FlowchartStateEditEventType, FlowchartStateMoveEventType, } from "./types.js";
|
|
12
|
+
// Re-export types
|
|
13
|
+
export { FlowchartLinkKindType, FlowchartOrientationType, FlowchartLinkModeType, FlowchartEvidenceType, FlowchartStateType, FlowchartLinkType, FlowchartLaneType, FlowchartTriggerType, FlowchartFreshnessType, FlowchartLinkCreateEventType, FlowchartLaneRenameEventType, FlowchartStateAddEventType, FlowchartStateEditEventType, FlowchartStateMoveEventType, } from "./types.js";
|
|
14
|
+
/**
|
|
15
|
+
* East type for the Flowchart root — the resolved mirror of the inline
|
|
16
|
+
* `Flowchart` struct in `component.ts`. Keep the two spellings in sync
|
|
17
|
+
* field-for-field.
|
|
18
|
+
*
|
|
19
|
+
* @remarks
|
|
20
|
+
* Per-field docs live on {@link FlowchartConfig}; events and collection
|
|
21
|
+
* row types are documented in `./types.ts`.
|
|
22
|
+
*/
|
|
23
|
+
export const FlowchartRootType = StructType({
|
|
24
|
+
states: ArrayType(FlowchartStateType),
|
|
25
|
+
links: ArrayType(FlowchartLinkType),
|
|
26
|
+
lanes: ArrayType(FlowchartLaneType),
|
|
27
|
+
triggers: ArrayType(FlowchartTriggerType),
|
|
28
|
+
orientation: OptionType(FlowchartOrientationType),
|
|
29
|
+
freshness: OptionType(FlowchartFreshnessType),
|
|
30
|
+
minimap: OptionType(BooleanType),
|
|
31
|
+
legend: OptionType(BooleanType),
|
|
32
|
+
density: OptionType(DensityType),
|
|
33
|
+
height: OptionType(StringType),
|
|
34
|
+
maxHeight: OptionType(StringType),
|
|
35
|
+
slice: OptionType(SliceChromeType),
|
|
36
|
+
stateHover: OptionType(FunctionType([StringType], UIComponentType)),
|
|
37
|
+
linkHover: OptionType(FunctionType([StringType], UIComponentType)),
|
|
38
|
+
triggerHover: OptionType(FunctionType([StringType], UIComponentType)),
|
|
39
|
+
onSelectState: OptionType(FunctionType([StringType], NullType)),
|
|
40
|
+
onSelectLink: OptionType(FunctionType([StringType], NullType)),
|
|
41
|
+
onSelectTrigger: OptionType(FunctionType([StringType], NullType)),
|
|
42
|
+
onTracePath: OptionType(FunctionType([StringType], NullType)),
|
|
43
|
+
linkMode: OptionType(FlowchartLinkModeType),
|
|
44
|
+
onCreateLink: OptionType(FunctionType([FlowchartLinkCreateEventType], NullType)),
|
|
45
|
+
onDeleteLink: OptionType(FunctionType([StringType], NullType)),
|
|
46
|
+
canConnect: OptionType(FunctionType([StringType, StringType], BooleanType)),
|
|
47
|
+
onAddLane: OptionType(FunctionType([], NullType)),
|
|
48
|
+
onRenameLane: OptionType(FunctionType([FlowchartLaneRenameEventType], NullType)),
|
|
49
|
+
onDeleteLane: OptionType(FunctionType([StringType], NullType)),
|
|
50
|
+
onAddState: OptionType(FunctionType([FlowchartStateAddEventType], NullType)),
|
|
51
|
+
onEditState: OptionType(FunctionType([FlowchartStateEditEventType], NullType)),
|
|
52
|
+
onMoveState: OptionType(FunctionType([FlowchartStateMoveEventType], NullType)),
|
|
53
|
+
readOnly: OptionType(BooleanType),
|
|
54
|
+
});
|
|
55
|
+
// ============================================================================
|
|
56
|
+
// Build
|
|
57
|
+
// ============================================================================
|
|
58
|
+
/** Resolves a kind literal / value into the option envelope. */
|
|
59
|
+
function kindOption(kind) {
|
|
60
|
+
if (kind === undefined)
|
|
61
|
+
return East.value(none, OptionType(FlowchartLinkKindType));
|
|
62
|
+
if (typeof kind === "string")
|
|
63
|
+
return East.value(some(variant(kind, null)), OptionType(FlowchartLinkKindType));
|
|
64
|
+
return East.value(some(kind), OptionType(FlowchartLinkKindType));
|
|
65
|
+
}
|
|
66
|
+
function buildRoot(states, links, lanes, config) {
|
|
67
|
+
const stateMapper = config.state;
|
|
68
|
+
const resolvedStates = stateMapper === undefined
|
|
69
|
+
? East.value(states, ArrayType(FlowchartStateType))
|
|
70
|
+
: mapRows(East.value(states), FlowchartStateType, (row) => {
|
|
71
|
+
const r = stateMapper(row);
|
|
72
|
+
if (r instanceof Expr)
|
|
73
|
+
return East.value(r, FlowchartStateType);
|
|
74
|
+
return East.value({
|
|
75
|
+
key: r.key,
|
|
76
|
+
label: r.label !== undefined ? some(r.label) : none,
|
|
77
|
+
lane: r.lane,
|
|
78
|
+
members: r.members !== undefined ? r.members : none,
|
|
79
|
+
notes: r.notes !== undefined ? some(r.notes) : none,
|
|
80
|
+
}, FlowchartStateType);
|
|
81
|
+
});
|
|
82
|
+
const linkMapper = config.link;
|
|
83
|
+
const resolvedLinks = linkMapper === undefined
|
|
84
|
+
? East.value(links, ArrayType(FlowchartLinkType))
|
|
85
|
+
: mapRows(East.value(links), FlowchartLinkType, (row) => {
|
|
86
|
+
const r = linkMapper(row);
|
|
87
|
+
if (r instanceof Expr)
|
|
88
|
+
return East.value(r, FlowchartLinkType);
|
|
89
|
+
return East.value({
|
|
90
|
+
key: r.key !== undefined ? some(r.key) : none,
|
|
91
|
+
from: r.from,
|
|
92
|
+
to: r.to,
|
|
93
|
+
kind: kindOption(r.kind),
|
|
94
|
+
trigger: r.trigger !== undefined ? r.trigger : none,
|
|
95
|
+
evidence: r.evidence !== undefined
|
|
96
|
+
? some(East.value({
|
|
97
|
+
volume: r.evidence.volume !== undefined ? r.evidence.volume : none,
|
|
98
|
+
count: r.evidence.count !== undefined ? r.evidence.count : none,
|
|
99
|
+
measuredAt: r.evidence.measuredAt !== undefined ? r.evidence.measuredAt : none,
|
|
100
|
+
unit: r.evidence.unit !== undefined ? some(r.evidence.unit) : none,
|
|
101
|
+
}, FlowchartEvidenceType))
|
|
102
|
+
: none,
|
|
103
|
+
}, FlowchartLinkType);
|
|
104
|
+
});
|
|
105
|
+
const laneMapper = config.lane;
|
|
106
|
+
const resolvedLanes = laneMapper !== undefined
|
|
107
|
+
? mapRows(East.value(lanes), FlowchartLaneType, (row) => {
|
|
108
|
+
const r = laneMapper(row);
|
|
109
|
+
if (r instanceof Expr)
|
|
110
|
+
return East.value(r, FlowchartLaneType);
|
|
111
|
+
return East.value({
|
|
112
|
+
key: r.key,
|
|
113
|
+
label: r.label !== undefined ? some(r.label) : none,
|
|
114
|
+
}, FlowchartLaneType);
|
|
115
|
+
})
|
|
116
|
+
: Array.isArray(lanes)
|
|
117
|
+
? East.value(lanes.map(l => ({
|
|
118
|
+
key: l.key,
|
|
119
|
+
label: l.label !== undefined ? some(l.label) : none,
|
|
120
|
+
})), ArrayType(FlowchartLaneType))
|
|
121
|
+
: East.value(lanes, ArrayType(FlowchartLaneType));
|
|
122
|
+
const triggerMapper = config.trigger;
|
|
123
|
+
const resolvedTriggers = config.triggers === undefined
|
|
124
|
+
? East.value([], ArrayType(FlowchartTriggerType))
|
|
125
|
+
: triggerMapper === undefined
|
|
126
|
+
? East.value(config.triggers, ArrayType(FlowchartTriggerType))
|
|
127
|
+
: mapRows(East.value(config.triggers), FlowchartTriggerType, (row) => {
|
|
128
|
+
const r = triggerMapper(row);
|
|
129
|
+
if (r instanceof Expr)
|
|
130
|
+
return East.value(r, FlowchartTriggerType);
|
|
131
|
+
return East.value({
|
|
132
|
+
key: r.key,
|
|
133
|
+
label: r.label,
|
|
134
|
+
letter: r.letter !== undefined ? some(r.letter) : none,
|
|
135
|
+
owner: r.owner !== undefined ? some(r.owner) : none,
|
|
136
|
+
queue: r.queue !== undefined ? some(East.value(r.queue, ArrayType(StringType))) : none,
|
|
137
|
+
outcomes: r.outcomes !== undefined ? some(r.outcomes) : none,
|
|
138
|
+
}, FlowchartTriggerType);
|
|
139
|
+
});
|
|
140
|
+
if (config.affordances?.includes("brush")) {
|
|
141
|
+
throw new Error("Flowchart does not support the 'brush' affordance — a flowchart has no continuous 1D axis.");
|
|
142
|
+
}
|
|
143
|
+
const sliceChromeValue = config.slice !== undefined
|
|
144
|
+
? East.value({
|
|
145
|
+
slice: config.slice,
|
|
146
|
+
affordances: East.value((config.affordances ?? ["filter", "search"]).map(a => variant(a, null)), ArrayType(SliceAffordanceType)),
|
|
147
|
+
}, SliceChromeType)
|
|
148
|
+
: undefined;
|
|
149
|
+
return East.value(variant("Flowchart", {
|
|
150
|
+
states: resolvedStates,
|
|
151
|
+
links: resolvedLinks,
|
|
152
|
+
lanes: resolvedLanes,
|
|
153
|
+
triggers: resolvedTriggers,
|
|
154
|
+
orientation: config.orientation !== undefined
|
|
155
|
+
? some(typeof config.orientation === "string" ? variant(config.orientation, null) : config.orientation)
|
|
156
|
+
: none,
|
|
157
|
+
freshness: config.freshness !== undefined
|
|
158
|
+
? some(East.value({
|
|
159
|
+
label: config.freshness.label,
|
|
160
|
+
date: config.freshness.date !== undefined ? some(config.freshness.date) : none,
|
|
161
|
+
}, FlowchartFreshnessType))
|
|
162
|
+
: none,
|
|
163
|
+
minimap: config.minimap !== undefined ? some(config.minimap) : none,
|
|
164
|
+
legend: config.legend !== undefined ? some(config.legend) : none,
|
|
165
|
+
density: config.density !== undefined
|
|
166
|
+
? some(typeof config.density === "string" ? East.value(variant(config.density, null), DensityType) : config.density)
|
|
167
|
+
: none,
|
|
168
|
+
height: config.height !== undefined ? some(config.height) : none,
|
|
169
|
+
maxHeight: config.maxHeight !== undefined ? some(config.maxHeight) : none,
|
|
170
|
+
slice: sliceChromeValue ? some(sliceChromeValue) : none,
|
|
171
|
+
stateHover: config.stateHover !== undefined ? some(East.value(config.stateHover, FunctionType([StringType], UIComponentType))) : none,
|
|
172
|
+
linkHover: config.linkHover !== undefined ? some(East.value(config.linkHover, FunctionType([StringType], UIComponentType))) : none,
|
|
173
|
+
triggerHover: config.triggerHover !== undefined ? some(East.value(config.triggerHover, FunctionType([StringType], UIComponentType))) : none,
|
|
174
|
+
onSelectState: config.onSelectState !== undefined ? some(config.onSelectState) : none,
|
|
175
|
+
onSelectLink: config.onSelectLink !== undefined ? some(config.onSelectLink) : none,
|
|
176
|
+
onSelectTrigger: config.onSelectTrigger !== undefined ? some(config.onSelectTrigger) : none,
|
|
177
|
+
onTracePath: config.onTracePath !== undefined ? some(config.onTracePath) : none,
|
|
178
|
+
linkMode: config.linkMode !== undefined
|
|
179
|
+
? some(typeof config.linkMode === "string" ? variant(config.linkMode, null) : config.linkMode)
|
|
180
|
+
: none,
|
|
181
|
+
onCreateLink: config.onCreateLink !== undefined ? some(config.onCreateLink) : none,
|
|
182
|
+
onDeleteLink: config.onDeleteLink !== undefined ? some(config.onDeleteLink) : none,
|
|
183
|
+
canConnect: config.canConnect !== undefined ? some(config.canConnect) : none,
|
|
184
|
+
onAddLane: config.onAddLane !== undefined ? some(config.onAddLane) : none,
|
|
185
|
+
onRenameLane: config.onRenameLane !== undefined ? some(config.onRenameLane) : none,
|
|
186
|
+
onDeleteLane: config.onDeleteLane !== undefined ? some(config.onDeleteLane) : none,
|
|
187
|
+
onAddState: config.onAddState !== undefined ? some(config.onAddState) : none,
|
|
188
|
+
onEditState: config.onEditState !== undefined ? some(config.onEditState) : none,
|
|
189
|
+
onMoveState: config.onMoveState !== undefined ? some(config.onMoveState) : none,
|
|
190
|
+
readOnly: config.readOnly !== undefined ? some(config.readOnly) : none,
|
|
191
|
+
}), UIComponentType);
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Creates a Flowchart — a self-contained state-transition flowchart.
|
|
195
|
+
*
|
|
196
|
+
* @typeParam S - The states-table input
|
|
197
|
+
* @typeParam L - The links-table input
|
|
198
|
+
* @typeParam N - The lanes-table input
|
|
199
|
+
* @typeParam T - The triggers-table input
|
|
200
|
+
* @param states - The state rows (nodes)
|
|
201
|
+
* @param config - The Flowchart configuration ({@link FlowchartConfig}) plus
|
|
202
|
+
* the `links` / `lanes` (required) and `triggers` (optional) tables
|
|
203
|
+
* @returns An East expression of `UIComponentType`
|
|
204
|
+
*
|
|
205
|
+
* @example
|
|
206
|
+
* ```ts
|
|
207
|
+
* import { East } from "@elaraai/east";
|
|
208
|
+
* import { Flowchart, UIComponentType } from "@elaraai/east-ui";
|
|
209
|
+
*
|
|
210
|
+
* const example = East.function([], UIComponentType, _$ =>
|
|
211
|
+
* Flowchart.Root(
|
|
212
|
+
* [{ code: "RMI", name: "Raw intake", phase: "prep" },
|
|
213
|
+
* { code: "CUT", name: "Cut blanks", phase: "prep" }],
|
|
214
|
+
* {
|
|
215
|
+
* state: s => ({ key: s.code, label: s.name, lane: s.phase }),
|
|
216
|
+
* links: [{ src: "RMI", dst: "CUT" }],
|
|
217
|
+
* link: l => ({ from: l.src, to: l.dst }),
|
|
218
|
+
* lanes: [{ key: "prep", label: "Prep" }],
|
|
219
|
+
* },
|
|
220
|
+
* ),
|
|
221
|
+
* );
|
|
222
|
+
* ```
|
|
223
|
+
*/
|
|
224
|
+
function createFlowchart(states, config) {
|
|
225
|
+
const { links, lanes, ...rest } = config;
|
|
226
|
+
return buildRoot(states, links, lanes, rest);
|
|
227
|
+
}
|
|
228
|
+
// ============================================================================
|
|
229
|
+
// Namespace export
|
|
230
|
+
// ============================================================================
|
|
231
|
+
/**
|
|
232
|
+
* Flowchart component namespace.
|
|
233
|
+
*
|
|
234
|
+
* @remarks
|
|
235
|
+
* `Flowchart.Root(states, config)` builds the flowchart from up to four
|
|
236
|
+
* flat tables (states, links, lanes, triggers); closed-set fields in data
|
|
237
|
+
* (`kind`, `orientation`, `linkMode`) are typed variant values
|
|
238
|
+
* (`Flowchart.Types.*`).
|
|
239
|
+
*/
|
|
240
|
+
export const Flowchart = {
|
|
241
|
+
/**
|
|
242
|
+
* Creates a Flowchart — a self-contained state-transition flowchart.
|
|
243
|
+
*
|
|
244
|
+
* @remarks
|
|
245
|
+
* See {@link FlowchartConfig} for per-field docs. States render as
|
|
246
|
+
* nodes in ordered phase lanes; links as H/V-routed arrows; triggers
|
|
247
|
+
* as lettered diamonds. Hover cards, the inspector and the highlight
|
|
248
|
+
* grammar are built-in surfaces derived from core + declared fields.
|
|
249
|
+
*/
|
|
250
|
+
Root: createFlowchart,
|
|
251
|
+
/**
|
|
252
|
+
* East types for flowchart rows, closed-set fields and events.
|
|
253
|
+
*/
|
|
254
|
+
Types: {
|
|
255
|
+
/**
|
|
256
|
+
* East StructType for the Flowchart component.
|
|
257
|
+
*
|
|
258
|
+
* @remarks
|
|
259
|
+
* See {@link FlowchartRootType} for per-field docs.
|
|
260
|
+
*/
|
|
261
|
+
Flowchart: FlowchartRootType,
|
|
262
|
+
/** One state node ({@link FlowchartStateType}). */
|
|
263
|
+
State: FlowchartStateType,
|
|
264
|
+
/** One transition ({@link FlowchartLinkType}). */
|
|
265
|
+
Link: FlowchartLinkType,
|
|
266
|
+
/** One ordered phase band ({@link FlowchartLaneType}). */
|
|
267
|
+
Lane: FlowchartLaneType,
|
|
268
|
+
/** One decision trigger ({@link FlowchartTriggerType}). */
|
|
269
|
+
Trigger: FlowchartTriggerType,
|
|
270
|
+
/** Imported link evidence ({@link FlowchartEvidenceType}). */
|
|
271
|
+
Evidence: FlowchartEvidenceType,
|
|
272
|
+
/** Link kind — planned | observed ({@link FlowchartLinkKindType}). */
|
|
273
|
+
Kind: FlowchartLinkKindType,
|
|
274
|
+
/** Canvas orientation — LR | TD ({@link FlowchartOrientationType}). */
|
|
275
|
+
Orientation: FlowchartOrientationType,
|
|
276
|
+
/** Link-authoring mode — draw | connect ({@link FlowchartLinkModeType}). */
|
|
277
|
+
LinkMode: FlowchartLinkModeType,
|
|
278
|
+
/** Eyebrow freshness chip ({@link FlowchartFreshnessType}). */
|
|
279
|
+
Freshness: FlowchartFreshnessType,
|
|
280
|
+
/** Link-creation event ({@link FlowchartLinkCreateEventType}). */
|
|
281
|
+
LinkCreateEvent: FlowchartLinkCreateEventType,
|
|
282
|
+
/** Lane-rename event ({@link FlowchartLaneRenameEventType}). */
|
|
283
|
+
LaneRenameEvent: FlowchartLaneRenameEventType,
|
|
284
|
+
/** State-add event ({@link FlowchartStateAddEventType}). */
|
|
285
|
+
StateAddEvent: FlowchartStateAddEventType,
|
|
286
|
+
/** State-edit event ({@link FlowchartStateEditEventType}). */
|
|
287
|
+
StateEditEvent: FlowchartStateEditEventType,
|
|
288
|
+
/** State-move event ({@link FlowchartStateMoveEventType}). */
|
|
289
|
+
StateMoveEvent: FlowchartStateMoveEventType,
|
|
290
|
+
},
|
|
291
|
+
};
|
|
292
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/collections/flowchart/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,333 @@
|
|
|
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 { ArrayType, DateTimeType, FloatType, IntegerType, NullType, OptionType, StringType, StructType, VariantType } from "@elaraai/east";
|
|
6
|
+
/**
|
|
7
|
+
* Link kind — the transition's provenance class.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* `planned` renders solid; `observed` renders dashed (5/4). A link whose
|
|
11
|
+
* `from` / `to` reference has no state row is *unresolved* — that is a
|
|
12
|
+
* derived render class (dashed 4/4 in the negative tone against a ghost
|
|
13
|
+
* "No state row" node), never an authored kind.
|
|
14
|
+
*
|
|
15
|
+
* @property planned - A designed / expected transition (solid stroke)
|
|
16
|
+
* @property observed - A transition mined from evidence (dashed stroke)
|
|
17
|
+
*/
|
|
18
|
+
export declare const FlowchartLinkKindType: VariantType<{
|
|
19
|
+
/** A designed / expected transition (solid stroke) */
|
|
20
|
+
readonly planned: NullType;
|
|
21
|
+
/** A transition mined from evidence (dashed stroke) */
|
|
22
|
+
readonly observed: NullType;
|
|
23
|
+
}>;
|
|
24
|
+
/**
|
|
25
|
+
* Type representing flowchart link kinds.
|
|
26
|
+
*/
|
|
27
|
+
export type FlowchartLinkKindType = typeof FlowchartLinkKindType;
|
|
28
|
+
/**
|
|
29
|
+
* Canvas orientation — which axis the lane bands run along.
|
|
30
|
+
*
|
|
31
|
+
* @remarks
|
|
32
|
+
* Orientation is VIEW state, not slice state: the eyebrow's orientation
|
|
33
|
+
* segment toggles it and it never appears as a filter chip. `LR` lays
|
|
34
|
+
* lanes left→right (links flow rightward); `TD` swaps the axes.
|
|
35
|
+
*
|
|
36
|
+
* @property LR - Lanes run left → right
|
|
37
|
+
* @property TD - Lanes run top → down
|
|
38
|
+
*/
|
|
39
|
+
export declare const FlowchartOrientationType: VariantType<{
|
|
40
|
+
/** Lanes run left → right */
|
|
41
|
+
readonly LR: NullType;
|
|
42
|
+
/** Lanes run top → down */
|
|
43
|
+
readonly TD: NullType;
|
|
44
|
+
}>;
|
|
45
|
+
/**
|
|
46
|
+
* Type representing flowchart orientations.
|
|
47
|
+
*/
|
|
48
|
+
export type FlowchartOrientationType = typeof FlowchartOrientationType;
|
|
49
|
+
/**
|
|
50
|
+
* Link-authoring mode for the drag-to-connect gesture.
|
|
51
|
+
*
|
|
52
|
+
* @property draw - Adds locally, form-input style (the renderer appends)
|
|
53
|
+
* @property connect - Event-only; the host owns the data (plan operations)
|
|
54
|
+
*/
|
|
55
|
+
export declare const FlowchartLinkModeType: VariantType<{
|
|
56
|
+
/** Adds locally, form-input style (the renderer appends) */
|
|
57
|
+
readonly draw: NullType;
|
|
58
|
+
/** Event-only; the host owns the data (plan operations) */
|
|
59
|
+
readonly connect: NullType;
|
|
60
|
+
}>;
|
|
61
|
+
/**
|
|
62
|
+
* Type representing flowchart link-authoring modes.
|
|
63
|
+
*/
|
|
64
|
+
export type FlowchartLinkModeType = typeof FlowchartLinkModeType;
|
|
65
|
+
/**
|
|
66
|
+
* Imported evidence carried by a link — never hand-authored.
|
|
67
|
+
*
|
|
68
|
+
* @remarks
|
|
69
|
+
* Evidence drives derived marks only: stroke weight scales with `volume`
|
|
70
|
+
* (log scale 1.6 / 2 / 2.5 px, floor 1.4), `volume` + `unit` print as the
|
|
71
|
+
* paper-filled badge on the longest straight run, and `count` /
|
|
72
|
+
* `measuredAt` surface in hover cards and the inspector provenance block.
|
|
73
|
+
*
|
|
74
|
+
* @property volume - Total measured volume behind the arrow
|
|
75
|
+
* @property count - Event count behind the arrow (e.g. transfers)
|
|
76
|
+
* @property measuredAt - When the evidence was measured
|
|
77
|
+
* @property unit - Volume unit suffix for badges ("kt")
|
|
78
|
+
*/
|
|
79
|
+
export declare const FlowchartEvidenceType: StructType<{
|
|
80
|
+
/** Total measured volume behind the arrow */
|
|
81
|
+
readonly volume: OptionType<FloatType>;
|
|
82
|
+
/** Event count behind the arrow (e.g. transfers) */
|
|
83
|
+
readonly count: OptionType<IntegerType>;
|
|
84
|
+
/** When the evidence was measured */
|
|
85
|
+
readonly measuredAt: OptionType<DateTimeType>;
|
|
86
|
+
/** Volume unit suffix for badges ("kt") */
|
|
87
|
+
readonly unit: OptionType<StringType>;
|
|
88
|
+
}>;
|
|
89
|
+
/**
|
|
90
|
+
* Type representing link evidence.
|
|
91
|
+
*/
|
|
92
|
+
export type FlowchartEvidenceType = typeof FlowchartEvidenceType;
|
|
93
|
+
/**
|
|
94
|
+
* One state — a node in the flowchart.
|
|
95
|
+
*
|
|
96
|
+
* @remarks
|
|
97
|
+
* The short mono `key` is the node identity everywhere (selection events,
|
|
98
|
+
* link `from` / `to` refs, trigger queues). A state with `members` set is
|
|
99
|
+
* a STATE CLASS — one node standing for N interchangeable members (the
|
|
100
|
+
* `×N` badge). In-place transitions (`from == to` links) collapse to the
|
|
101
|
+
* `↻ n` badge on the node and never route through handles.
|
|
102
|
+
*
|
|
103
|
+
* @property key - Short mono code — the node identity ("RCT")
|
|
104
|
+
* @property label - Display label under the code
|
|
105
|
+
* @property lane - The lane (ordered phase) this state belongs to
|
|
106
|
+
* @property members - State-class member count → the ×N badge
|
|
107
|
+
* @property notes - Free-text notes surfaced on hover / inspector
|
|
108
|
+
*/
|
|
109
|
+
export declare const FlowchartStateType: StructType<{
|
|
110
|
+
/** Short mono code — the node identity ("RCT") */
|
|
111
|
+
readonly key: StringType;
|
|
112
|
+
/** Display label under the code */
|
|
113
|
+
readonly label: OptionType<StringType>;
|
|
114
|
+
/** The lane (ordered phase) this state belongs to */
|
|
115
|
+
readonly lane: StringType;
|
|
116
|
+
/** State-class member count → the ×N badge */
|
|
117
|
+
readonly members: OptionType<IntegerType>;
|
|
118
|
+
/** Free-text notes surfaced on hover / inspector */
|
|
119
|
+
readonly notes: OptionType<StringType>;
|
|
120
|
+
}>;
|
|
121
|
+
/**
|
|
122
|
+
* Type representing flowchart states.
|
|
123
|
+
*/
|
|
124
|
+
export type FlowchartStateType = typeof FlowchartStateType;
|
|
125
|
+
/**
|
|
126
|
+
* One link — a state transition drawn as an H/V-routed arrow.
|
|
127
|
+
*
|
|
128
|
+
* @remarks
|
|
129
|
+
* `from` / `to` are state keys; a reference with no state row renders the
|
|
130
|
+
* neg-dashed ghost "No state row" node (derived, counted in the footer).
|
|
131
|
+
* At most one `trigger` per link — the lettered decision diamond anchored
|
|
132
|
+
* to the midpoint of the longest straight run.
|
|
133
|
+
*
|
|
134
|
+
* @property key - Stable identity (selection / delete events); default derived from endpoints
|
|
135
|
+
* @property from - Source state key
|
|
136
|
+
* @property to - Target state key
|
|
137
|
+
* @property kind - planned (default) | observed
|
|
138
|
+
* @property trigger - 0..1 decision trigger key → diamond
|
|
139
|
+
* @property evidence - Imported evidence (weight, badges, provenance)
|
|
140
|
+
*/
|
|
141
|
+
export declare const FlowchartLinkType: StructType<{
|
|
142
|
+
/** Stable identity (selection / delete events); default derived from endpoints */
|
|
143
|
+
readonly key: OptionType<StringType>;
|
|
144
|
+
/** Source state key */
|
|
145
|
+
readonly from: StringType;
|
|
146
|
+
/** Target state key */
|
|
147
|
+
readonly to: StringType;
|
|
148
|
+
/** planned (default) | observed */
|
|
149
|
+
readonly kind: OptionType<VariantType<{
|
|
150
|
+
/** A designed / expected transition (solid stroke) */
|
|
151
|
+
readonly planned: NullType;
|
|
152
|
+
/** A transition mined from evidence (dashed stroke) */
|
|
153
|
+
readonly observed: NullType;
|
|
154
|
+
}>>;
|
|
155
|
+
/** 0..1 decision trigger key → diamond */
|
|
156
|
+
readonly trigger: OptionType<StringType>;
|
|
157
|
+
/** Imported evidence (weight, badges, provenance) */
|
|
158
|
+
readonly evidence: OptionType<StructType<{
|
|
159
|
+
/** Total measured volume behind the arrow */
|
|
160
|
+
readonly volume: OptionType<FloatType>;
|
|
161
|
+
/** Event count behind the arrow (e.g. transfers) */
|
|
162
|
+
readonly count: OptionType<IntegerType>;
|
|
163
|
+
/** When the evidence was measured */
|
|
164
|
+
readonly measuredAt: OptionType<DateTimeType>;
|
|
165
|
+
/** Volume unit suffix for badges ("kt") */
|
|
166
|
+
readonly unit: OptionType<StringType>;
|
|
167
|
+
}>>;
|
|
168
|
+
}>;
|
|
169
|
+
/**
|
|
170
|
+
* Type representing flowchart links.
|
|
171
|
+
*/
|
|
172
|
+
export type FlowchartLinkType = typeof FlowchartLinkType;
|
|
173
|
+
/**
|
|
174
|
+
* One lane — an ordered phase band.
|
|
175
|
+
*
|
|
176
|
+
* @remarks
|
|
177
|
+
* Lane order is array order; every state names its lane by `key`. The
|
|
178
|
+
* dashed `+ LANE` affordance renders at the tail of the band row.
|
|
179
|
+
*
|
|
180
|
+
* @property key - Lane identity referenced by states
|
|
181
|
+
* @property label - Band header label (defaults to the key, uppercased)
|
|
182
|
+
*/
|
|
183
|
+
export declare const FlowchartLaneType: StructType<{
|
|
184
|
+
/** Lane identity referenced by states */
|
|
185
|
+
readonly key: StringType;
|
|
186
|
+
/** Band header label (defaults to the key, uppercased) */
|
|
187
|
+
readonly label: OptionType<StringType>;
|
|
188
|
+
}>;
|
|
189
|
+
/**
|
|
190
|
+
* Type representing flowchart lanes.
|
|
191
|
+
*/
|
|
192
|
+
export type FlowchartLaneType = typeof FlowchartLaneType;
|
|
193
|
+
/**
|
|
194
|
+
* One decision trigger — a governed decision seam referenced by links.
|
|
195
|
+
*
|
|
196
|
+
* @remarks
|
|
197
|
+
* Triggers render as diamonds (max one per link) carrying a letter per
|
|
198
|
+
* TYPE, not per instance. Clicking a diamond highlights every link it
|
|
199
|
+
* governs (plus queue and outcome nodes).
|
|
200
|
+
*
|
|
201
|
+
* @property key - Trigger identity referenced by links
|
|
202
|
+
* @property label - Decision name ("press")
|
|
203
|
+
* @property letter - Diamond letter (default: first letter of the label)
|
|
204
|
+
* @property owner - Owning role / system ("press-scheduler")
|
|
205
|
+
* @property queue - State keys queued at the decision
|
|
206
|
+
* @property outcomes - Outcome summary line ("P* (×14 slots)")
|
|
207
|
+
*/
|
|
208
|
+
export declare const FlowchartTriggerType: StructType<{
|
|
209
|
+
/** Trigger identity referenced by links */
|
|
210
|
+
readonly key: StringType;
|
|
211
|
+
/** Decision name ("press") */
|
|
212
|
+
readonly label: StringType;
|
|
213
|
+
/** Diamond letter (default: first letter of the label) */
|
|
214
|
+
readonly letter: OptionType<StringType>;
|
|
215
|
+
/** Owning role / system ("press-scheduler") */
|
|
216
|
+
readonly owner: OptionType<StringType>;
|
|
217
|
+
/** State keys queued at the decision */
|
|
218
|
+
readonly queue: OptionType<ArrayType<StringType>>;
|
|
219
|
+
/** Outcome summary line ("P* (×14 slots)") */
|
|
220
|
+
readonly outcomes: OptionType<StringType>;
|
|
221
|
+
}>;
|
|
222
|
+
/**
|
|
223
|
+
* Type representing flowchart triggers.
|
|
224
|
+
*/
|
|
225
|
+
export type FlowchartTriggerType = typeof FlowchartTriggerType;
|
|
226
|
+
/**
|
|
227
|
+
* Eyebrow freshness chip content.
|
|
228
|
+
*
|
|
229
|
+
* @property label - Chip label ("evidence-2026.06")
|
|
230
|
+
* @property date - Optional stamp printed after the label
|
|
231
|
+
*/
|
|
232
|
+
export declare const FlowchartFreshnessType: StructType<{
|
|
233
|
+
/** Chip label ("evidence-2026.06") */
|
|
234
|
+
readonly label: StringType;
|
|
235
|
+
/** Optional stamp printed after the label */
|
|
236
|
+
readonly date: OptionType<DateTimeType>;
|
|
237
|
+
}>;
|
|
238
|
+
/**
|
|
239
|
+
* Type representing the freshness chip.
|
|
240
|
+
*/
|
|
241
|
+
export type FlowchartFreshnessType = typeof FlowchartFreshnessType;
|
|
242
|
+
/**
|
|
243
|
+
* Lane-rename event — a committed inline header edit.
|
|
244
|
+
*
|
|
245
|
+
* @property key - The renamed lane's key
|
|
246
|
+
* @property label - The new label text
|
|
247
|
+
*/
|
|
248
|
+
export declare const FlowchartLaneRenameEventType: StructType<{
|
|
249
|
+
/** The renamed lane's key */
|
|
250
|
+
readonly key: StringType;
|
|
251
|
+
/** The new label text */
|
|
252
|
+
readonly label: StringType;
|
|
253
|
+
}>;
|
|
254
|
+
/**
|
|
255
|
+
* Type representing lane-rename events.
|
|
256
|
+
*/
|
|
257
|
+
export type FlowchartLaneRenameEventType = typeof FlowchartLaneRenameEventType;
|
|
258
|
+
/**
|
|
259
|
+
* State-add event — a committed "+ STATE" ghost editor.
|
|
260
|
+
*
|
|
261
|
+
* @property lane - The lane the ghost was committed in
|
|
262
|
+
* @property key - The typed state code (the node identity)
|
|
263
|
+
* @property label - The typed label (may be empty)
|
|
264
|
+
*/
|
|
265
|
+
export declare const FlowchartStateAddEventType: StructType<{
|
|
266
|
+
/** The lane the ghost was committed in */
|
|
267
|
+
readonly lane: StringType;
|
|
268
|
+
/** The typed state code (the node identity) */
|
|
269
|
+
readonly key: StringType;
|
|
270
|
+
/** The typed label (may be empty) */
|
|
271
|
+
readonly label: StringType;
|
|
272
|
+
}>;
|
|
273
|
+
/**
|
|
274
|
+
* Type representing state-add events.
|
|
275
|
+
*/
|
|
276
|
+
export type FlowchartStateAddEventType = typeof FlowchartStateAddEventType;
|
|
277
|
+
/**
|
|
278
|
+
* State-edit event — a committed inline node editor.
|
|
279
|
+
*
|
|
280
|
+
* @property key - The ORIGINAL state key (the identity being edited)
|
|
281
|
+
* @property code - The possibly-changed code (rekeying is the host's call)
|
|
282
|
+
* @property label - The new label text
|
|
283
|
+
*/
|
|
284
|
+
export declare const FlowchartStateEditEventType: StructType<{
|
|
285
|
+
/** The ORIGINAL state key (the identity being edited) */
|
|
286
|
+
readonly key: StringType;
|
|
287
|
+
/** The possibly-changed code (rekeying is the host's call) */
|
|
288
|
+
readonly code: StringType;
|
|
289
|
+
/** The new label text */
|
|
290
|
+
readonly label: StringType;
|
|
291
|
+
}>;
|
|
292
|
+
/**
|
|
293
|
+
* Type representing state-edit events.
|
|
294
|
+
*/
|
|
295
|
+
export type FlowchartStateEditEventType = typeof FlowchartStateEditEventType;
|
|
296
|
+
/**
|
|
297
|
+
* State-move event — a node dropped on another lane.
|
|
298
|
+
*
|
|
299
|
+
* @property key - The moved state's key
|
|
300
|
+
* @property lane - The target lane's key
|
|
301
|
+
*/
|
|
302
|
+
export declare const FlowchartStateMoveEventType: StructType<{
|
|
303
|
+
/** The moved state's key */
|
|
304
|
+
readonly key: StringType;
|
|
305
|
+
/** The target lane's key */
|
|
306
|
+
readonly lane: StringType;
|
|
307
|
+
}>;
|
|
308
|
+
/**
|
|
309
|
+
* Type representing state-move events.
|
|
310
|
+
*/
|
|
311
|
+
export type FlowchartStateMoveEventType = typeof FlowchartStateMoveEventType;
|
|
312
|
+
/**
|
|
313
|
+
* Link-creation event — a completed drag-to-connect gesture.
|
|
314
|
+
*
|
|
315
|
+
* @remarks
|
|
316
|
+
* Handles are fixed per side, so the payload is purely topological: the
|
|
317
|
+
* source and target state keys. Vetoed pairs (`canConnect` returning
|
|
318
|
+
* false) never produce this event.
|
|
319
|
+
*
|
|
320
|
+
* @property from - Source state key (the out-handle the drag left)
|
|
321
|
+
* @property to - Target state key (the node the drag released on)
|
|
322
|
+
*/
|
|
323
|
+
export declare const FlowchartLinkCreateEventType: StructType<{
|
|
324
|
+
/** Source state key (the out-handle the drag left) */
|
|
325
|
+
readonly from: StringType;
|
|
326
|
+
/** Target state key (the node the drag released on) */
|
|
327
|
+
readonly to: StringType;
|
|
328
|
+
}>;
|
|
329
|
+
/**
|
|
330
|
+
* Type representing link-creation events.
|
|
331
|
+
*/
|
|
332
|
+
export type FlowchartLinkCreateEventType = typeof FlowchartLinkCreateEventType;
|
|
333
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/collections/flowchart/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,SAAS,EACT,YAAY,EACZ,SAAS,EACT,WAAW,EACX,QAAQ,EACR,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACd,MAAM,eAAe,CAAC;AAEvB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,qBAAqB;IAC9B,sDAAsD;;IAEtD,uDAAuD;;EAEzD,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,OAAO,qBAAqB,CAAC;AAEjE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB;IACjC,6BAA6B;;IAE7B,2BAA2B;;EAE7B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,OAAO,wBAAwB,CAAC;AAEvE;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;IAC9B,4DAA4D;;IAE5D,2DAA2D;;EAE7D,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,OAAO,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,qBAAqB;IAC9B,6CAA6C;;IAE7C,oDAAoD;;IAEpD,qCAAqC;;IAErC,2CAA2C;;EAE7C,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,OAAO,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,kBAAkB;IAC3B,kDAAkD;;IAElD,mCAAmC;;IAEnC,qDAAqD;;IAErD,8CAA8C;;IAE9C,oDAAoD;;EAEtD,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAC;AAE3D;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB;IAC1B,kFAAkF;;IAElF,uBAAuB;;IAEvB,uBAAuB;;IAEvB,mCAAmC;;QA3InC,sDAAsD;;QAEtD,uDAAuD;;;IA2IvD,0CAA0C;;IAE1C,qDAAqD;;QA5ErD,6CAA6C;;QAE7C,oDAAoD;;QAEpD,qCAAqC;;QAErC,2CAA2C;;;EAwE7C,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAEzD;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB;IAC1B,yCAAyC;;IAEzC,0DAA0D;;EAE5D,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAEzD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,oBAAoB;IAC7B,2CAA2C;;IAE3C,8BAA8B;;IAE9B,0DAA0D;;IAE1D,+CAA+C;;IAE/C,wCAAwC;;IAExC,8CAA8C;;EAEhD,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC;AAE/D;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;IAC/B,sCAAsC;;IAEtC,6CAA6C;;EAE/C,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,OAAO,sBAAsB,CAAC;AAEnE;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B;IACrC,6BAA6B;;IAE7B,yBAAyB;;EAE3B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,OAAO,4BAA4B,CAAC;AAE/E;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B;IACnC,0CAA0C;;IAE1C,+CAA+C;;IAE/C,qCAAqC;;EAEvC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,OAAO,0BAA0B,CAAC;AAE3E;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B;IACpC,yDAAyD;;IAEzD,8DAA8D;;IAE9D,yBAAyB;;EAE3B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,2BAA2B,CAAC;AAE7E;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B;IACpC,4BAA4B;;IAE5B,4BAA4B;;EAE9B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,2BAA2B,CAAC;AAE7E;;;;;;;;;;GAUG;AACH,eAAO,MAAM,4BAA4B;IACrC,sDAAsD;;IAEtD,uDAAuD;;EAEzD,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,OAAO,4BAA4B,CAAC"}
|