@elaraai/east-ui 1.0.39 → 1.0.41

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.
Files changed (121) hide show
  1. package/dist/src/collections/calendar/index.d.ts +275 -62
  2. package/dist/src/collections/calendar/index.d.ts.map +1 -1
  3. package/dist/src/collections/calendar/index.js +168 -51
  4. package/dist/src/collections/calendar/index.js.map +1 -1
  5. package/dist/src/collections/calendar/types.d.ts +228 -22
  6. package/dist/src/collections/calendar/types.d.ts.map +1 -1
  7. package/dist/src/collections/calendar/types.js +132 -18
  8. package/dist/src/collections/calendar/types.js.map +1 -1
  9. package/dist/src/collections/deck/index.d.ts +2229 -0
  10. package/dist/src/collections/deck/index.d.ts.map +1 -0
  11. package/dist/src/collections/deck/index.js +461 -0
  12. package/dist/src/collections/deck/index.js.map +1 -0
  13. package/dist/src/collections/deck/types.d.ts +327 -0
  14. package/dist/src/collections/deck/types.d.ts.map +1 -0
  15. package/dist/src/collections/deck/types.js +206 -0
  16. package/dist/src/collections/deck/types.js.map +1 -0
  17. package/dist/src/collections/index.d.ts +2 -0
  18. package/dist/src/collections/index.d.ts.map +1 -1
  19. package/dist/src/collections/index.js +2 -0
  20. package/dist/src/collections/index.js.map +1 -1
  21. package/dist/src/collections/value-tree/index.d.ts +380 -0
  22. package/dist/src/collections/value-tree/index.d.ts.map +1 -0
  23. package/dist/src/collections/value-tree/index.js +688 -0
  24. package/dist/src/collections/value-tree/index.js.map +1 -0
  25. package/dist/src/collections/value-tree/materialize.d.ts +65 -0
  26. package/dist/src/collections/value-tree/materialize.d.ts.map +1 -0
  27. package/dist/src/collections/value-tree/materialize.js +238 -0
  28. package/dist/src/collections/value-tree/materialize.js.map +1 -0
  29. package/dist/src/collections/value-tree/types.d.ts +324 -0
  30. package/dist/src/collections/value-tree/types.d.ts.map +1 -0
  31. package/dist/src/collections/value-tree/types.js +168 -0
  32. package/dist/src/collections/value-tree/types.js.map +1 -0
  33. package/dist/src/component.d.ts +1047 -61
  34. package/dist/src/component.d.ts.map +1 -1
  35. package/dist/src/component.js +97 -3
  36. package/dist/src/component.js.map +1 -1
  37. package/dist/src/index.d.ts +3 -3
  38. package/dist/src/index.d.ts.map +1 -1
  39. package/dist/src/index.js +2 -2
  40. package/dist/src/index.js.map +1 -1
  41. package/dist/src/internal.d.ts +4 -3
  42. package/dist/src/internal.d.ts.map +1 -1
  43. package/dist/src/internal.js +3 -3
  44. package/dist/src/internal.js.map +1 -1
  45. package/dist/src/layout/splitter/index.d.ts +1 -0
  46. package/dist/src/layout/splitter/index.d.ts.map +1 -1
  47. package/dist/src/layout/splitter/index.js +2 -1
  48. package/dist/src/layout/splitter/index.js.map +1 -1
  49. package/dist/src/layout/splitter/types.d.ts +9 -0
  50. package/dist/src/layout/splitter/types.d.ts.map +1 -1
  51. package/dist/src/layout/splitter/types.js +4 -0
  52. package/dist/src/layout/splitter/types.js.map +1 -1
  53. package/dist/src/navigation/app/index.d.ts +135 -0
  54. package/dist/src/navigation/app/index.d.ts.map +1 -0
  55. package/dist/src/navigation/app/index.js +191 -0
  56. package/dist/src/navigation/app/index.js.map +1 -0
  57. package/dist/src/navigation/index.d.ts +1 -0
  58. package/dist/src/navigation/index.d.ts.map +1 -1
  59. package/dist/src/navigation/index.js +1 -0
  60. package/dist/src/navigation/index.js.map +1 -1
  61. package/dist/src/navigation/pages/types.d.ts +15 -1
  62. package/dist/src/navigation/pages/types.d.ts.map +1 -1
  63. package/dist/src/navigation/pages/types.js.map +1 -1
  64. package/dist/src/platform/slice/impl.js +2 -2
  65. package/dist/src/platform/slice/impl.js.map +1 -1
  66. package/dist/src/runtime/collections/calendar.d.ts +10 -5
  67. package/dist/src/runtime/collections/calendar.d.ts.map +1 -1
  68. package/dist/src/runtime/collections/calendar.js +10 -5
  69. package/dist/src/runtime/collections/calendar.js.map +1 -1
  70. package/dist/src/runtime/collections/deck.d.ts +1066 -0
  71. package/dist/src/runtime/collections/deck.d.ts.map +1 -0
  72. package/dist/src/runtime/collections/deck.js +54 -0
  73. package/dist/src/runtime/collections/deck.js.map +1 -0
  74. package/dist/src/runtime/collections/index.d.ts +2 -0
  75. package/dist/src/runtime/collections/index.d.ts.map +1 -1
  76. package/dist/src/runtime/collections/index.js +2 -0
  77. package/dist/src/runtime/collections/index.js.map +1 -1
  78. package/dist/src/runtime/collections/value-tree.d.ts +202 -0
  79. package/dist/src/runtime/collections/value-tree.d.ts.map +1 -0
  80. package/dist/src/runtime/collections/value-tree.js +49 -0
  81. package/dist/src/runtime/collections/value-tree.js.map +1 -0
  82. package/dist/src/runtime/navigation/app.d.ts +50 -0
  83. package/dist/src/runtime/navigation/app.d.ts.map +1 -0
  84. package/dist/src/runtime/navigation/app.js +51 -0
  85. package/dist/src/runtime/navigation/app.js.map +1 -0
  86. package/dist/src/runtime/navigation/index.d.ts +1 -0
  87. package/dist/src/runtime/navigation/index.d.ts.map +1 -1
  88. package/dist/src/runtime/navigation/index.js +1 -0
  89. package/dist/src/runtime/navigation/index.js.map +1 -1
  90. package/dist/test/collections/calendar.examples.d.ts +2 -0
  91. package/dist/test/collections/calendar.examples.d.ts.map +1 -1
  92. package/dist/test/collections/calendar.examples.js +74 -42
  93. package/dist/test/collections/calendar.examples.js.map +1 -1
  94. package/dist/test/collections/deck.examples.d.ts +8 -0
  95. package/dist/test/collections/deck.examples.d.ts.map +1 -0
  96. package/dist/test/collections/deck.examples.js +169 -0
  97. package/dist/test/collections/deck.examples.js.map +1 -0
  98. package/dist/test/collections/planner.examples.js +2 -2
  99. package/dist/test/collections/value-tree.examples.d.ts +10 -0
  100. package/dist/test/collections/value-tree.examples.d.ts.map +1 -0
  101. package/dist/test/collections/value-tree.examples.js +263 -0
  102. package/dist/test/collections/value-tree.examples.js.map +1 -0
  103. package/dist/test/display/image.examples.js +1 -1
  104. package/dist/test/display/image.examples.js.map +1 -1
  105. package/dist/test/layout/aligned-stack.examples.js +4 -4
  106. package/dist/test/layout/aligned-stack.examples.js.map +1 -1
  107. package/dist/test/layout/dock.examples.js +6 -6
  108. package/dist/test/layout/dock.examples.js.map +1 -1
  109. package/dist/test/layout/splitter.examples.d.ts +1 -0
  110. package/dist/test/layout/splitter.examples.d.ts.map +1 -1
  111. package/dist/test/layout/splitter.examples.js +11 -0
  112. package/dist/test/layout/splitter.examples.js.map +1 -1
  113. package/dist/test/navigation/app.examples.d.ts +22 -0
  114. package/dist/test/navigation/app.examples.d.ts.map +1 -0
  115. package/dist/test/navigation/app.examples.js +116 -0
  116. package/dist/test/navigation/app.examples.js.map +1 -0
  117. package/dist/test/navigation/nav-list.examples.js +2 -2
  118. package/dist/test/navigation/nav-list.examples.js.map +1 -1
  119. package/dist/test/overlays/drawer.examples.js +2 -2
  120. package/dist/test/overlays/drawer.examples.js.map +1 -1
  121. package/package.json +3 -3
@@ -0,0 +1,327 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * Deck types — the declarative grouped card collection (#359).
7
+ *
8
+ * A Deck renders `data` rows as presentation cards: a structured card face
9
+ * (title / sublabel / icon / status pill / facts) or a fully custom face,
10
+ * grouped by named GROUP BY options with the Library toolbar UX, filtered
11
+ * by slice chrome, laid out as a wrapping card grid (desktop rows → one
12
+ * phone column) or a single-column list.
13
+ *
14
+ * The card face reuses the Library card grammar deliberately — status
15
+ * pills ({@link LibraryStatusType}) and fact values
16
+ * ({@link LibraryDimValueType}: meter / chips / text) — so Library
17
+ * palettes and Decks read as one family.
18
+ */
19
+ import { type SubtypeExprOrValue, ArrayType, BooleanType, DictType, FloatType, OptionType, StringType, StructType, VariantType, NullType } from "@elaraai/east";
20
+ import { LibraryStatusType, LibraryDimValueType, LibraryGroupMetaType } from "../library/types.js";
21
+ import { StatusTokenType } from "../../style/interaction.js";
22
+ import { ValueFormatType } from "../../contracts/format.js";
23
+ /**
24
+ * Deck layout mode.
25
+ *
26
+ * @remarks
27
+ * `grid` flows cards as wrapping rows (`repeat(auto-fill, minmax(minCardWidth, 1fr))`
28
+ * — one column on phones); `list` renders full-width card rows.
29
+ */
30
+ export declare const DeckLayoutType: VariantType<{
31
+ readonly grid: NullType;
32
+ readonly list: NullType;
33
+ }>;
34
+ /**
35
+ * Type representing the Deck layout mode.
36
+ */
37
+ export type DeckLayoutType = typeof DeckLayoutType;
38
+ /** Literal shorthand for {@link DeckLayoutType}. */
39
+ export type DeckLayoutLiteral = "grid" | "list";
40
+ /**
41
+ * A labelled fact on a Deck card — the always-visible sibling of Library's
42
+ * toggleable dimensions.
43
+ *
44
+ * @property label - Caption for the fact
45
+ * @property value - The fact's rendered value ({@link LibraryDimValueType}:
46
+ * meter / chips / text)
47
+ */
48
+ export declare const DeckFactType: StructType<{
49
+ /** Caption for the fact */
50
+ readonly label: StringType;
51
+ /** The fact's rendered value (meter / chips / text) */
52
+ readonly value: VariantType<{
53
+ readonly meter: StructType<{
54
+ readonly value: FloatType;
55
+ readonly max: FloatType;
56
+ readonly text: OptionType<StringType>;
57
+ }>;
58
+ readonly chips: ArrayType<StringType>;
59
+ readonly text: StringType;
60
+ }>;
61
+ }>;
62
+ /**
63
+ * Type representing a Deck card fact.
64
+ */
65
+ export type DeckFactType = typeof DeckFactType;
66
+ /**
67
+ * Style configuration for the Deck container.
68
+ *
69
+ * @property height - Pinned height (CSS length; body scrolls within)
70
+ * @property maxHeight - Height cap (content-sized up to it, then scrolls)
71
+ * @property minCardWidth - Grid card floor (CSS length, default `"240"`);
72
+ * the wrap grid uses `minmax(minCardWidth, 1fr)`
73
+ */
74
+ export declare const DeckStyleType: StructType<{
75
+ readonly height: OptionType<StringType>;
76
+ readonly maxHeight: OptionType<StringType>;
77
+ readonly minCardWidth: OptionType<StringType>;
78
+ }>;
79
+ /**
80
+ * Type representing the Deck style structure.
81
+ */
82
+ export type DeckStyleType = typeof DeckStyleType;
83
+ /**
84
+ * TypeScript interface for Deck style options.
85
+ *
86
+ * @property height - Pinned height (CSS length; body scrolls within)
87
+ * @property maxHeight - Height cap (content-sized up to it, then scrolls)
88
+ * @property minCardWidth - Grid card floor (CSS length, default `"240"`)
89
+ */
90
+ export interface DeckStyle {
91
+ /** Pinned height (CSS length; body scrolls within) */
92
+ height?: SubtypeExprOrValue<StringType>;
93
+ /** Height cap (content-sized up to it, then scrolls) */
94
+ maxHeight?: SubtypeExprOrValue<StringType>;
95
+ /** Grid card floor (CSS length, default `"240"`) */
96
+ minCardWidth?: SubtypeExprOrValue<StringType>;
97
+ }
98
+ /**
99
+ * A status colour — a standard status token or a custom CSS colour.
100
+ *
101
+ * @property token - One of the standard status tones
102
+ * @property custom - Any CSS colour (the face tint is derived from it)
103
+ */
104
+ export declare const DeckStatusColorType: VariantType<{
105
+ /** Standard status tone */
106
+ readonly token: VariantType<{
107
+ readonly success: NullType;
108
+ readonly warning: NullType;
109
+ readonly danger: NullType;
110
+ readonly info: NullType;
111
+ readonly neutral: NullType;
112
+ }>;
113
+ /** Custom CSS colour */
114
+ readonly custom: StringType;
115
+ }>;
116
+ /**
117
+ * Type representing a Deck status colour.
118
+ */
119
+ export type DeckStatusColorType = typeof DeckStatusColorType;
120
+ /**
121
+ * One entry of the Deck status registry — the single definition that
122
+ * drives the card's solid status tag (+ dot, optional pulse), the faint
123
+ * face wash, the fill-bar colour, group-head swatches, the legend and
124
+ * the popover head wash.
125
+ *
126
+ * @property label - The tag / legend label
127
+ * @property color - Status colour (standard token or custom CSS colour)
128
+ * @property pulse - Pulse the tag dot (active states)
129
+ * @property hint - Optional legend / group-head description
130
+ */
131
+ export declare const DeckStatusType: StructType<{
132
+ /** The tag / legend label */
133
+ readonly label: StringType;
134
+ /** Status colour (token or custom) */
135
+ readonly color: VariantType<{
136
+ /** Standard status tone */
137
+ readonly token: VariantType<{
138
+ readonly success: NullType;
139
+ readonly warning: NullType;
140
+ readonly danger: NullType;
141
+ readonly info: NullType;
142
+ readonly neutral: NullType;
143
+ }>;
144
+ /** Custom CSS colour */
145
+ readonly custom: StringType;
146
+ }>;
147
+ /** Pulse the tag dot */
148
+ readonly pulse: BooleanType;
149
+ /** Optional legend / group-head description */
150
+ readonly hint: OptionType<StringType>;
151
+ }>;
152
+ /**
153
+ * Type representing one Deck status registry entry.
154
+ */
155
+ export type DeckStatusType = typeof DeckStatusType;
156
+ /**
157
+ * The Deck status registry — status key → definition.
158
+ */
159
+ export declare const DeckStatusesType: DictType<StringType, StructType<{
160
+ /** The tag / legend label */
161
+ readonly label: StringType;
162
+ /** Status colour (token or custom) */
163
+ readonly color: VariantType<{
164
+ /** Standard status tone */
165
+ readonly token: VariantType<{
166
+ readonly success: NullType;
167
+ readonly warning: NullType;
168
+ readonly danger: NullType;
169
+ readonly info: NullType;
170
+ readonly neutral: NullType;
171
+ }>;
172
+ /** Custom CSS colour */
173
+ readonly custom: StringType;
174
+ }>;
175
+ /** Pulse the tag dot */
176
+ readonly pulse: BooleanType;
177
+ /** Optional legend / group-head description */
178
+ readonly hint: OptionType<StringType>;
179
+ }>>;
180
+ /**
181
+ * Type representing the Deck status registry.
182
+ */
183
+ export type DeckStatusesType = typeof DeckStatusesType;
184
+ /**
185
+ * One metric on a Deck card face — a label-over-value pair in the mono
186
+ * tabular voice. Carries the RAW value plus a shared display format
187
+ * ({@link ValueFormatType} — the chart-tick vocabulary) or pre-rendered
188
+ * text from an accessor formatter; a `none` value renders muted "—".
189
+ *
190
+ * @property label - Metric caption (mono uppercase)
191
+ * @property value - The raw value (`none` renders "—")
192
+ * @property format - Optional shared display format (chart-tick vocabulary)
193
+ * @property text - Optional pre-rendered text (accessor formatters)
194
+ * @property warn - Render the value in the danger tone
195
+ */
196
+ export declare const DeckMetricType: StructType<{
197
+ /** Metric caption */
198
+ readonly label: StringType;
199
+ /** The raw value (`none` renders "—") */
200
+ readonly value: OptionType<FloatType>;
201
+ /** Optional shared display format */
202
+ readonly format: OptionType<VariantType<{
203
+ readonly number: NullType;
204
+ readonly currency: StructType<{
205
+ readonly code: StringType;
206
+ readonly compact: BooleanType;
207
+ }>;
208
+ readonly percent: NullType;
209
+ readonly compact: NullType;
210
+ readonly date: StringType;
211
+ readonly time: StringType;
212
+ readonly datetime: StringType;
213
+ }>>;
214
+ /** Optional pre-rendered text */
215
+ readonly text: OptionType<StringType>;
216
+ /** Render the value in the danger tone */
217
+ readonly warn: BooleanType;
218
+ }>;
219
+ /**
220
+ * Type representing a Deck card metric.
221
+ */
222
+ export type DeckMetricType = typeof DeckMetricType;
223
+ /**
224
+ * The card fill bar — a status-coloured utilisation bar with a
225
+ * right-aligned reading.
226
+ *
227
+ * @property value - Current value
228
+ * @property max - Full-bar value
229
+ * @property format - Optional shared display format for the reading
230
+ * @property text - Optional pre-rendered reading
231
+ */
232
+ export declare const DeckFillType: StructType<{
233
+ /** Current value */
234
+ readonly value: FloatType;
235
+ /** Full-bar value */
236
+ readonly max: FloatType;
237
+ /** Optional shared display format for the reading */
238
+ readonly format: OptionType<VariantType<{
239
+ readonly number: NullType;
240
+ readonly currency: StructType<{
241
+ readonly code: StringType;
242
+ readonly compact: BooleanType;
243
+ }>;
244
+ readonly percent: NullType;
245
+ readonly compact: NullType;
246
+ readonly date: StringType;
247
+ readonly time: StringType;
248
+ readonly datetime: StringType;
249
+ }>>;
250
+ /** Optional pre-rendered reading */
251
+ readonly text: OptionType<StringType>;
252
+ }>;
253
+ /**
254
+ * Type representing the Deck card fill bar.
255
+ */
256
+ export type DeckFillType = typeof DeckFillType;
257
+ /**
258
+ * The readout rail — a bordered grid of big mono values with units, the
259
+ * popover body's headline numbers.
260
+ *
261
+ * @property cells - The readout cells
262
+ */
263
+ export declare const DeckReadoutType: StructType<{
264
+ /** The readout cells */
265
+ readonly cells: ArrayType<StructType<{
266
+ /** Cell caption (mono uppercase) */
267
+ readonly label: StringType;
268
+ /** The raw value (`none` renders "—") */
269
+ readonly value: OptionType<FloatType>;
270
+ /** Optional shared display format */
271
+ readonly format: OptionType<VariantType<{
272
+ readonly number: NullType;
273
+ readonly currency: StructType<{
274
+ readonly code: StringType;
275
+ readonly compact: BooleanType;
276
+ }>;
277
+ readonly percent: NullType;
278
+ readonly compact: NullType;
279
+ readonly date: StringType;
280
+ readonly time: StringType;
281
+ readonly datetime: StringType;
282
+ }>>;
283
+ /** Optional pre-rendered text */
284
+ readonly text: OptionType<StringType>;
285
+ /** Optional unit suffix (small, muted) */
286
+ readonly unit: OptionType<StringType>;
287
+ /** Render the value in the danger tone */
288
+ readonly warn: BooleanType;
289
+ }>>;
290
+ }>;
291
+ /**
292
+ * Type representing the Deck readout rail.
293
+ */
294
+ export type DeckReadoutType = typeof DeckReadoutType;
295
+ /**
296
+ * Key–value detail rows — the popover body's labelled facts.
297
+ *
298
+ * @property rows - The rows (mono uppercase key, body-voice value)
299
+ */
300
+ export declare const DeckRowsType: StructType<{
301
+ /** The rows */
302
+ readonly rows: ArrayType<StructType<{
303
+ /** Row key (mono uppercase) */
304
+ readonly label: StringType;
305
+ /** Row value */
306
+ readonly value: StringType;
307
+ }>>;
308
+ }>;
309
+ /**
310
+ * Type representing Deck detail rows.
311
+ */
312
+ export type DeckRowsType = typeof DeckRowsType;
313
+ /**
314
+ * A dashed-top mono footnote — the popover body's trailing note.
315
+ *
316
+ * @property text - The note text
317
+ */
318
+ export declare const DeckNoteType: StructType<{
319
+ /** The note text */
320
+ readonly text: StringType;
321
+ }>;
322
+ /**
323
+ * Type representing a Deck note.
324
+ */
325
+ export type DeckNoteType = typeof DeckNoteType;
326
+ export { LibraryStatusType, LibraryDimValueType, LibraryGroupMetaType, StatusTokenType, ValueFormatType };
327
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/collections/deck/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,206 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * Deck types — the declarative grouped card collection (#359).
7
+ *
8
+ * A Deck renders `data` rows as presentation cards: a structured card face
9
+ * (title / sublabel / icon / status pill / facts) or a fully custom face,
10
+ * grouped by named GROUP BY options with the Library toolbar UX, filtered
11
+ * by slice chrome, laid out as a wrapping card grid (desktop rows → one
12
+ * phone column) or a single-column list.
13
+ *
14
+ * The card face reuses the Library card grammar deliberately — status
15
+ * pills ({@link LibraryStatusType}) and fact values
16
+ * ({@link LibraryDimValueType}: meter / chips / text) — so Library
17
+ * palettes and Decks read as one family.
18
+ */
19
+ import { ArrayType, BooleanType, DictType, FloatType, OptionType, StringType, StructType, VariantType, NullType, } from "@elaraai/east";
20
+ import { LibraryStatusType, LibraryDimValueType, LibraryGroupMetaType } from "../library/types.js";
21
+ import { StatusTokenType } from "../../style/interaction.js";
22
+ import { ValueFormatType } from "../../contracts/format.js";
23
+ // ============================================================================
24
+ // Layout
25
+ // ============================================================================
26
+ /**
27
+ * Deck layout mode.
28
+ *
29
+ * @remarks
30
+ * `grid` flows cards as wrapping rows (`repeat(auto-fill, minmax(minCardWidth, 1fr))`
31
+ * — one column on phones); `list` renders full-width card rows.
32
+ */
33
+ export const DeckLayoutType = VariantType({
34
+ grid: NullType,
35
+ list: NullType,
36
+ });
37
+ // ============================================================================
38
+ // Facts
39
+ // ============================================================================
40
+ /**
41
+ * A labelled fact on a Deck card — the always-visible sibling of Library's
42
+ * toggleable dimensions.
43
+ *
44
+ * @property label - Caption for the fact
45
+ * @property value - The fact's rendered value ({@link LibraryDimValueType}:
46
+ * meter / chips / text)
47
+ */
48
+ export const DeckFactType = StructType({
49
+ /** Caption for the fact */
50
+ label: StringType,
51
+ /** The fact's rendered value (meter / chips / text) */
52
+ value: LibraryDimValueType,
53
+ });
54
+ // ============================================================================
55
+ // Style
56
+ // ============================================================================
57
+ /**
58
+ * Style configuration for the Deck container.
59
+ *
60
+ * @property height - Pinned height (CSS length; body scrolls within)
61
+ * @property maxHeight - Height cap (content-sized up to it, then scrolls)
62
+ * @property minCardWidth - Grid card floor (CSS length, default `"240"`);
63
+ * the wrap grid uses `minmax(minCardWidth, 1fr)`
64
+ */
65
+ export const DeckStyleType = StructType({
66
+ height: OptionType(StringType),
67
+ maxHeight: OptionType(StringType),
68
+ minCardWidth: OptionType(StringType),
69
+ });
70
+ // ============================================================================
71
+ // Status registry
72
+ // ============================================================================
73
+ /**
74
+ * A status colour — a standard status token or a custom CSS colour.
75
+ *
76
+ * @property token - One of the standard status tones
77
+ * @property custom - Any CSS colour (the face tint is derived from it)
78
+ */
79
+ export const DeckStatusColorType = VariantType({
80
+ /** Standard status tone */
81
+ token: StatusTokenType,
82
+ /** Custom CSS colour */
83
+ custom: StringType,
84
+ });
85
+ /**
86
+ * One entry of the Deck status registry — the single definition that
87
+ * drives the card's solid status tag (+ dot, optional pulse), the faint
88
+ * face wash, the fill-bar colour, group-head swatches, the legend and
89
+ * the popover head wash.
90
+ *
91
+ * @property label - The tag / legend label
92
+ * @property color - Status colour (standard token or custom CSS colour)
93
+ * @property pulse - Pulse the tag dot (active states)
94
+ * @property hint - Optional legend / group-head description
95
+ */
96
+ export const DeckStatusType = StructType({
97
+ /** The tag / legend label */
98
+ label: StringType,
99
+ /** Status colour (token or custom) */
100
+ color: DeckStatusColorType,
101
+ /** Pulse the tag dot */
102
+ pulse: BooleanType,
103
+ /** Optional legend / group-head description */
104
+ hint: OptionType(StringType),
105
+ });
106
+ /**
107
+ * The Deck status registry — status key → definition.
108
+ */
109
+ export const DeckStatusesType = DictType(StringType, DeckStatusType);
110
+ // ============================================================================
111
+ // Metrics + fill
112
+ // ============================================================================
113
+ /**
114
+ * One metric on a Deck card face — a label-over-value pair in the mono
115
+ * tabular voice. Carries the RAW value plus a shared display format
116
+ * ({@link ValueFormatType} — the chart-tick vocabulary) or pre-rendered
117
+ * text from an accessor formatter; a `none` value renders muted "—".
118
+ *
119
+ * @property label - Metric caption (mono uppercase)
120
+ * @property value - The raw value (`none` renders "—")
121
+ * @property format - Optional shared display format (chart-tick vocabulary)
122
+ * @property text - Optional pre-rendered text (accessor formatters)
123
+ * @property warn - Render the value in the danger tone
124
+ */
125
+ export const DeckMetricType = StructType({
126
+ /** Metric caption */
127
+ label: StringType,
128
+ /** The raw value (`none` renders "—") */
129
+ value: OptionType(FloatType),
130
+ /** Optional shared display format */
131
+ format: OptionType(ValueFormatType),
132
+ /** Optional pre-rendered text */
133
+ text: OptionType(StringType),
134
+ /** Render the value in the danger tone */
135
+ warn: BooleanType,
136
+ });
137
+ /**
138
+ * The card fill bar — a status-coloured utilisation bar with a
139
+ * right-aligned reading.
140
+ *
141
+ * @property value - Current value
142
+ * @property max - Full-bar value
143
+ * @property format - Optional shared display format for the reading
144
+ * @property text - Optional pre-rendered reading
145
+ */
146
+ export const DeckFillType = StructType({
147
+ /** Current value */
148
+ value: FloatType,
149
+ /** Full-bar value */
150
+ max: FloatType,
151
+ /** Optional shared display format for the reading */
152
+ format: OptionType(ValueFormatType),
153
+ /** Optional pre-rendered reading */
154
+ text: OptionType(StringType),
155
+ });
156
+ // ============================================================================
157
+ // Popover building blocks (Deck.Readout / Deck.Rows / Deck.Note)
158
+ // ============================================================================
159
+ /**
160
+ * The readout rail — a bordered grid of big mono values with units, the
161
+ * popover body's headline numbers.
162
+ *
163
+ * @property cells - The readout cells
164
+ */
165
+ export const DeckReadoutType = StructType({
166
+ /** The readout cells */
167
+ cells: ArrayType(StructType({
168
+ /** Cell caption (mono uppercase) */
169
+ label: StringType,
170
+ /** The raw value (`none` renders "—") */
171
+ value: OptionType(FloatType),
172
+ /** Optional shared display format */
173
+ format: OptionType(ValueFormatType),
174
+ /** Optional pre-rendered text */
175
+ text: OptionType(StringType),
176
+ /** Optional unit suffix (small, muted) */
177
+ unit: OptionType(StringType),
178
+ /** Render the value in the danger tone */
179
+ warn: BooleanType,
180
+ })),
181
+ });
182
+ /**
183
+ * Key–value detail rows — the popover body's labelled facts.
184
+ *
185
+ * @property rows - The rows (mono uppercase key, body-voice value)
186
+ */
187
+ export const DeckRowsType = StructType({
188
+ /** The rows */
189
+ rows: ArrayType(StructType({
190
+ /** Row key (mono uppercase) */
191
+ label: StringType,
192
+ /** Row value */
193
+ value: StringType,
194
+ })),
195
+ });
196
+ /**
197
+ * A dashed-top mono footnote — the popover body's trailing note.
198
+ *
199
+ * @property text - The note text
200
+ */
201
+ export const DeckNoteType = StructType({
202
+ /** The note text */
203
+ text: StringType,
204
+ });
205
+ export { LibraryStatusType, LibraryDimValueType, LibraryGroupMetaType, StatusTokenType, ValueFormatType };
206
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/collections/deck/types.ts"],"names":[],"mappings":"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"}
@@ -15,5 +15,7 @@ export { Map, type MapConfig, type MapMarkerFields, type MapAreaFields, type Map
15
15
  export { Calendar, type CalendarConfig, type CalendarCellFields, } from "./calendar/index.js";
16
16
  export { Roster, type RosterConfig, type RosterPersonFields, type RosterShiftFields, RosterModeType, type RosterModeLiteral, } from "./roster/index.js";
17
17
  export { Board, type BoardConfig, type BoardEntityFields, type BoardAssignmentFields, type BoardRequirementFields, BoardModeType, type BoardModeLiteral, } from "./board/index.js";
18
+ export { Deck, DeckItemType, DeckRootType, DeckCardFaceType, DeckFactType, DeckLayoutType, DeckStyleType, type DeckConfig, type DeckCardFields, type DeckGroupOption, type DeckLayoutLiteral, type DeckStyle, } from "./deck/index.js";
19
+ export { ValueTree, ValueTreeStepType, ValueTreePathType, ValueTreeLeafType, ValueTreeNodeType, ValueTreeStyleType, ValueTreeRootType, type ValueTreeOptions, type ValueTreeScope, type ValueTreeScopeStep, type ValueTreeProbe, } from "./value-tree/index.js";
18
20
  export { Library, type LibraryConfig, type LibraryCardFields, type LibraryDimensionDef, type LibraryMeterDimDef, type LibraryChipsDimDef, type LibraryTextDimDef, type LibraryGroupDef, } from "./library/index.js";
19
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/collections/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACH,KAAK,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,SAAS,EACT,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACH,GAAG,EACH,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,eAAe,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACH,QAAQ,EACR,KAAK,cAAc,EACnB,KAAK,kBAAkB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,MAAM,EACN,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,cAAc,EAAE,KAAK,iBAAiB,GACzC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACH,KAAK,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,aAAa,EAAE,KAAK,gBAAgB,GACvC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,OAAO,EACP,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,eAAe,GACvB,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/collections/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACH,KAAK,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,SAAS,EACT,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACH,GAAG,EACH,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,eAAe,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACH,QAAQ,EACR,KAAK,cAAc,EACnB,KAAK,kBAAkB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,MAAM,EACN,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,cAAc,EAAE,KAAK,iBAAiB,GACzC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACH,KAAK,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,aAAa,EAAE,KAAK,gBAAgB,GACvC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,IAAI,EACJ,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,SAAS,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACH,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,cAAc,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACH,OAAO,EACP,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,eAAe,GACvB,MAAM,oBAAoB,CAAC"}
@@ -15,5 +15,7 @@ export { Map, } from "./map/index.js";
15
15
  export { Calendar, } from "./calendar/index.js";
16
16
  export { Roster, RosterModeType, } from "./roster/index.js";
17
17
  export { Board, BoardModeType, } from "./board/index.js";
18
+ export { Deck, DeckItemType, DeckRootType, DeckCardFaceType, DeckFactType, DeckLayoutType, DeckStyleType, } from "./deck/index.js";
19
+ export { ValueTree, ValueTreeStepType, ValueTreePathType, ValueTreeLeafType, ValueTreeNodeType, ValueTreeStyleType, ValueTreeRootType, } from "./value-tree/index.js";
18
20
  export { Library, } from "./library/index.js";
19
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/collections/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,WAAW,EAA0B,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAuC,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAmB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACH,KAAK,GAKR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,SAAS,GAKZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACH,GAAG,GAcN,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACH,QAAQ,GAGX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,MAAM,EAIN,cAAc,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACH,KAAK,EAKL,aAAa,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,OAAO,GAQV,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/collections/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,WAAW,EAA0B,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAuC,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAmB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACH,KAAK,GAKR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,SAAS,GAKZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACH,GAAG,GAcN,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACH,QAAQ,GAGX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,MAAM,EAIN,cAAc,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACH,KAAK,EAKL,aAAa,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,IAAI,EACJ,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,aAAa,GAMhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACH,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAKpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACH,OAAO,GAQV,MAAM,oBAAoB,CAAC"}