@elaraai/e3-ui 1.0.103 → 1.0.105

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 (287) hide show
  1. package/dist/src/allocation/functions.d.ts +2 -1
  2. package/dist/src/allocation/functions.d.ts.map +1 -1
  3. package/dist/src/allocation/functions.js +3 -2
  4. package/dist/src/allocation/functions.js.map +1 -1
  5. package/dist/src/allocation/index.d.ts +120 -1
  6. package/dist/src/allocation/index.d.ts.map +1 -1
  7. package/dist/src/allocation/index.js +24 -4
  8. package/dist/src/allocation/index.js.map +1 -1
  9. package/dist/src/bind/data-indexed.d.ts +25 -4
  10. package/dist/src/bind/data-indexed.d.ts.map +1 -1
  11. package/dist/src/bind/data-indexed.js +58 -7
  12. package/dist/src/bind/data-indexed.js.map +1 -1
  13. package/dist/src/bind/data.d.ts +12 -14
  14. package/dist/src/bind/data.d.ts.map +1 -1
  15. package/dist/src/bind/data.js +11 -11
  16. package/dist/src/bind/data.js.map +1 -1
  17. package/dist/src/bind/func.d.ts +7 -2
  18. package/dist/src/bind/func.d.ts.map +1 -1
  19. package/dist/src/bind/func.js +10 -3
  20. package/dist/src/bind/func.js.map +1 -1
  21. package/dist/src/calendar/index.d.ts +148 -1
  22. package/dist/src/calendar/index.d.ts.map +1 -1
  23. package/dist/src/calendar/index.js +55 -5
  24. package/dist/src/calendar/index.js.map +1 -1
  25. package/dist/src/flowchart/canvas.d.ts +32 -14
  26. package/dist/src/flowchart/canvas.d.ts.map +1 -1
  27. package/dist/src/flowchart/canvas.js +21 -6
  28. package/dist/src/flowchart/canvas.js.map +1 -1
  29. package/dist/src/flowchart/details.d.ts +469 -0
  30. package/dist/src/flowchart/details.d.ts.map +1 -0
  31. package/dist/src/flowchart/details.js +1035 -0
  32. package/dist/src/flowchart/details.js.map +1 -0
  33. package/dist/src/flowchart/flowchart.d.ts +16 -72
  34. package/dist/src/flowchart/flowchart.d.ts.map +1 -1
  35. package/dist/src/flowchart/flowchart.js +10 -1
  36. package/dist/src/flowchart/flowchart.js.map +1 -1
  37. package/dist/src/flowchart/index.d.ts +282 -251
  38. package/dist/src/flowchart/index.d.ts.map +1 -1
  39. package/dist/src/flowchart/index.js +234 -220
  40. package/dist/src/flowchart/index.js.map +1 -1
  41. package/dist/src/flowchart/kinds.d.ts +438 -0
  42. package/dist/src/flowchart/kinds.d.ts.map +1 -0
  43. package/dist/src/flowchart/kinds.js +799 -0
  44. package/dist/src/flowchart/kinds.js.map +1 -0
  45. package/dist/src/flowchart/library.d.ts +154 -739
  46. package/dist/src/flowchart/library.d.ts.map +1 -1
  47. package/dist/src/flowchart/library.js +191 -673
  48. package/dist/src/flowchart/library.js.map +1 -1
  49. package/dist/src/flowchart/payload.d.ts +3652 -7843
  50. package/dist/src/flowchart/payload.d.ts.map +1 -1
  51. package/dist/src/flowchart/payload.js +331 -469
  52. package/dist/src/flowchart/payload.js.map +1 -1
  53. package/dist/src/flowchart/templates.d.ts +657 -0
  54. package/dist/src/flowchart/templates.d.ts.map +1 -0
  55. package/dist/src/flowchart/templates.js +658 -0
  56. package/dist/src/flowchart/templates.js.map +1 -0
  57. package/dist/src/flowchart/types.d.ts +2258 -214
  58. package/dist/src/flowchart/types.d.ts.map +1 -1
  59. package/dist/src/flowchart/types.js +374 -124
  60. package/dist/src/flowchart/types.js.map +1 -1
  61. package/dist/src/index.d.ts +13 -15
  62. package/dist/src/index.d.ts.map +1 -1
  63. package/dist/src/index.js +24 -29
  64. package/dist/src/index.js.map +1 -1
  65. package/dist/src/internal.d.ts +5 -7
  66. package/dist/src/internal.d.ts.map +1 -1
  67. package/dist/src/internal.js +12 -19
  68. package/dist/src/internal.js.map +1 -1
  69. package/dist/src/ontology/index.d.ts +44 -15
  70. package/dist/src/ontology/index.d.ts.map +1 -1
  71. package/dist/src/ontology/index.js +19 -11
  72. package/dist/src/ontology/index.js.map +1 -1
  73. package/dist/src/plan/event-rows.d.ts +2 -1
  74. package/dist/src/plan/event-rows.d.ts.map +1 -1
  75. package/dist/src/plan/event-rows.js +6 -4
  76. package/dist/src/plan/event-rows.js.map +1 -1
  77. package/dist/src/plan/ir.d.ts +1 -0
  78. package/dist/src/plan/ir.d.ts.map +1 -1
  79. package/dist/src/plan/plan.d.ts +145 -1
  80. package/dist/src/plan/plan.d.ts.map +1 -1
  81. package/dist/src/plan/plan.js +67 -3
  82. package/dist/src/plan/plan.js.map +1 -1
  83. package/dist/src/plan/types.d.ts +1 -0
  84. package/dist/src/plan/types.d.ts.map +1 -1
  85. package/dist/src/query/builder.d.ts +362 -315
  86. package/dist/src/query/builder.d.ts.map +1 -1
  87. package/dist/src/query/builder.js +12 -1
  88. package/dist/src/query/builder.js.map +1 -1
  89. package/dist/src/query/index.d.ts +5 -1
  90. package/dist/src/query/index.d.ts.map +1 -1
  91. package/dist/src/query/index.js +3 -1
  92. package/dist/src/query/index.js.map +1 -1
  93. package/dist/src/roster/fit.d.ts +5 -2
  94. package/dist/src/roster/fit.d.ts.map +1 -1
  95. package/dist/src/roster/fit.js +5 -3
  96. package/dist/src/roster/fit.js.map +1 -1
  97. package/dist/src/roster/index.d.ts +103 -2
  98. package/dist/src/roster/index.d.ts.map +1 -1
  99. package/dist/src/roster/index.js +45 -6
  100. package/dist/src/roster/index.js.map +1 -1
  101. package/dist/src/runtime/index.d.ts +1 -3
  102. package/dist/src/runtime/index.d.ts.map +1 -1
  103. package/dist/src/runtime/index.js +1 -3
  104. package/dist/src/runtime/index.js.map +1 -1
  105. package/dist/src/schedule/record-window.d.ts +1 -0
  106. package/dist/src/schedule/record-window.d.ts.map +1 -1
  107. package/dist/src/schematic/index.d.ts +1 -1
  108. package/dist/src/schematic/index.d.ts.map +1 -1
  109. package/dist/src/schematic/index.js +1 -1
  110. package/dist/src/schematic/index.js.map +1 -1
  111. package/dist/src/schematic/kinds.d.ts +4 -24
  112. package/dist/src/schematic/kinds.d.ts.map +1 -1
  113. package/dist/src/schematic/kinds.js +8 -212
  114. package/dist/src/schematic/kinds.js.map +1 -1
  115. package/dist/src/schematic/payload.d.ts +140 -1
  116. package/dist/src/schematic/payload.d.ts.map +1 -1
  117. package/dist/src/schematic/payload.js +38 -1
  118. package/dist/src/schematic/payload.js.map +1 -1
  119. package/dist/src/schematic/types.d.ts.map +1 -1
  120. package/dist/src/schematic/types.js +4 -36
  121. package/dist/src/schematic/types.js.map +1 -1
  122. package/dist/src/schematic/window.d.ts +9 -42
  123. package/dist/src/schematic/window.d.ts.map +1 -1
  124. package/dist/src/schematic/window.js +10 -115
  125. package/dist/src/schematic/window.js.map +1 -1
  126. package/dist/src/sheet/actions.d.ts +388 -0
  127. package/dist/src/sheet/actions.d.ts.map +1 -0
  128. package/dist/src/sheet/actions.js +594 -0
  129. package/dist/src/sheet/actions.js.map +1 -0
  130. package/dist/src/sheet/bridge.d.ts +12 -1
  131. package/dist/src/sheet/bridge.d.ts.map +1 -1
  132. package/dist/src/sheet/bridge.js +30 -6
  133. package/dist/src/sheet/bridge.js.map +1 -1
  134. package/dist/src/sheet/columns.d.ts +5 -2
  135. package/dist/src/sheet/columns.d.ts.map +1 -1
  136. package/dist/src/sheet/columns.js.map +1 -1
  137. package/dist/src/sheet/draft-bridge.d.ts +9 -4
  138. package/dist/src/sheet/draft-bridge.d.ts.map +1 -1
  139. package/dist/src/sheet/draft-bridge.js +22 -7
  140. package/dist/src/sheet/draft-bridge.js.map +1 -1
  141. package/dist/src/sheet/fields.d.ts +13 -0
  142. package/dist/src/sheet/fields.d.ts.map +1 -1
  143. package/dist/src/sheet/fields.js +3 -0
  144. package/dist/src/sheet/fields.js.map +1 -1
  145. package/dist/src/sheet/index.d.ts +32 -2
  146. package/dist/src/sheet/index.d.ts.map +1 -1
  147. package/dist/src/sheet/index.js +18 -3
  148. package/dist/src/sheet/index.js.map +1 -1
  149. package/dist/src/sheet/library.d.ts +8 -0
  150. package/dist/src/sheet/library.d.ts.map +1 -1
  151. package/dist/src/sheet/root.d.ts +23 -1
  152. package/dist/src/sheet/root.d.ts.map +1 -1
  153. package/dist/src/sheet/root.js +40 -5
  154. package/dist/src/sheet/root.js.map +1 -1
  155. package/dist/src/sheet/sheet.d.ts +7843 -4132
  156. package/dist/src/sheet/sheet.d.ts.map +1 -1
  157. package/dist/src/sheet/sheet.js +41 -2
  158. package/dist/src/sheet/sheet.js.map +1 -1
  159. package/dist/src/sheet/templates.d.ts +4 -0
  160. package/dist/src/sheet/templates.d.ts.map +1 -1
  161. package/dist/src/sheet/types.d.ts +12449 -5268
  162. package/dist/src/sheet/types.d.ts.map +1 -1
  163. package/dist/src/sheet/types.js +114 -2
  164. package/dist/src/sheet/types.js.map +1 -1
  165. package/dist/src/utils/derive.d.ts +1 -1
  166. package/dist/src/utils/derive.js +1 -1
  167. package/dist/src/utils/record-kind.d.ts +625 -0
  168. package/dist/src/utils/record-kind.d.ts.map +1 -0
  169. package/dist/src/utils/record-kind.js +450 -0
  170. package/dist/src/utils/record-kind.js.map +1 -0
  171. package/dist/src/utils/views.d.ts +55 -0
  172. package/dist/src/utils/views.d.ts.map +1 -0
  173. package/dist/src/utils/views.js +72 -0
  174. package/dist/src/utils/views.js.map +1 -0
  175. package/dist/src/utils/vocabulary.d.ts +48 -0
  176. package/dist/src/utils/vocabulary.d.ts.map +1 -0
  177. package/dist/src/utils/vocabulary.js +47 -0
  178. package/dist/src/utils/vocabulary.js.map +1 -0
  179. package/dist/test/allocation/allocation.examples.d.ts +2 -0
  180. package/dist/test/allocation/allocation.examples.d.ts.map +1 -1
  181. package/dist/test/allocation/allocation.examples.js +81 -2
  182. package/dist/test/allocation/allocation.examples.js.map +1 -1
  183. package/dist/test/bind/func/func.examples.d.ts +19 -1
  184. package/dist/test/bind/func/func.examples.d.ts.map +1 -1
  185. package/dist/test/bind/func/func.examples.js +36 -1
  186. package/dist/test/bind/func/func.examples.js.map +1 -1
  187. package/dist/test/calendar/calendar.examples.d.ts +2 -0
  188. package/dist/test/calendar/calendar.examples.d.ts.map +1 -1
  189. package/dist/test/calendar/calendar.examples.js +80 -2
  190. package/dist/test/calendar/calendar.examples.js.map +1 -1
  191. package/dist/test/decision/queue.examples.d.ts +1 -0
  192. package/dist/test/decision/queue.examples.d.ts.map +1 -1
  193. package/dist/test/decision/queue.examples.js +12 -0
  194. package/dist/test/decision/queue.examples.js.map +1 -1
  195. package/dist/test/examples-package.d.ts.map +1 -1
  196. package/dist/test/examples-package.js +5 -4
  197. package/dist/test/examples-package.js.map +1 -1
  198. package/dist/test/flowchart/flowchart.examples.d.ts +1250 -4605
  199. package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -1
  200. package/dist/test/flowchart/flowchart.examples.js +861 -512
  201. package/dist/test/flowchart/flowchart.examples.js.map +1 -1
  202. package/dist/test/ontology/ontology.examples.d.ts +2 -3
  203. package/dist/test/ontology/ontology.examples.d.ts.map +1 -1
  204. package/dist/test/ontology/ontology.examples.js +32 -21
  205. package/dist/test/ontology/ontology.examples.js.map +1 -1
  206. package/dist/test/plan/plan-events.examples.d.ts +1 -0
  207. package/dist/test/plan/plan-events.examples.d.ts.map +1 -1
  208. package/dist/test/plan/plan-events.examples.js +44 -0
  209. package/dist/test/plan/plan-events.examples.js.map +1 -1
  210. package/dist/test/plan/plan-nested.examples.d.ts +2 -2
  211. package/dist/test/plan/plan-nested.examples.js +5 -5
  212. package/dist/test/plan/plan-nested.examples.js.map +1 -1
  213. package/dist/test/plan/plan-records.examples.d.ts.map +1 -1
  214. package/dist/test/plan/plan-records.examples.js +1 -1
  215. package/dist/test/plan/plan-records.examples.js.map +1 -1
  216. package/dist/test/query/query.examples.d.ts +2 -0
  217. package/dist/test/query/query.examples.d.ts.map +1 -1
  218. package/dist/test/query/query.examples.js +37 -1
  219. package/dist/test/query/query.examples.js.map +1 -1
  220. package/dist/test/roster/roster.examples.d.ts +2 -0
  221. package/dist/test/roster/roster.examples.d.ts.map +1 -1
  222. package/dist/test/roster/roster.examples.js +76 -15
  223. package/dist/test/roster/roster.examples.js.map +1 -1
  224. package/dist/test/schematic/schematic-records.examples.d.ts.map +1 -1
  225. package/dist/test/schematic/schematic-records.examples.js +6 -4
  226. package/dist/test/schematic/schematic-records.examples.js.map +1 -1
  227. package/dist/test/schematic/schematic.examples.d.ts +1 -0
  228. package/dist/test/schematic/schematic.examples.d.ts.map +1 -1
  229. package/dist/test/schematic/schematic.examples.js +144 -0
  230. package/dist/test/schematic/schematic.examples.js.map +1 -1
  231. package/dist/test/sheet/sheet-actions.examples.d.ts +1264 -0
  232. package/dist/test/sheet/sheet-actions.examples.d.ts.map +1 -0
  233. package/dist/test/sheet/sheet-actions.examples.js +394 -0
  234. package/dist/test/sheet/sheet-actions.examples.js.map +1 -0
  235. package/dist/test/sheet/sheet.examples.d.ts +1 -0
  236. package/dist/test/sheet/sheet.examples.d.ts.map +1 -1
  237. package/dist/test/sheet/sheet.examples.js +77 -0
  238. package/dist/test/sheet/sheet.examples.js.map +1 -1
  239. package/dist/test/studio/studio.examples.d.ts +1 -0
  240. package/dist/test/studio/studio.examples.d.ts.map +1 -1
  241. package/dist/test/studio/studio.examples.js +18 -8
  242. package/dist/test/studio/studio.examples.js.map +1 -1
  243. package/package.json +12 -12
  244. package/dist/src/diff/index.d.ts +0 -407
  245. package/dist/src/diff/index.d.ts.map +0 -1
  246. package/dist/src/diff/index.js +0 -203
  247. package/dist/src/diff/index.js.map +0 -1
  248. package/dist/src/experiment/index.d.ts +0 -1033
  249. package/dist/src/experiment/index.d.ts.map +0 -1
  250. package/dist/src/experiment/index.js +0 -197
  251. package/dist/src/experiment/index.js.map +0 -1
  252. package/dist/src/experiment/types.d.ts +0 -1093
  253. package/dist/src/experiment/types.d.ts.map +0 -1
  254. package/dist/src/experiment/types.js +0 -423
  255. package/dist/src/experiment/types.js.map +0 -1
  256. package/dist/src/flowchart/over.d.ts +0 -227
  257. package/dist/src/flowchart/over.d.ts.map +0 -1
  258. package/dist/src/flowchart/over.js +0 -213
  259. package/dist/src/flowchart/over.js.map +0 -1
  260. package/dist/src/flowchart/patch.d.ts +0 -64
  261. package/dist/src/flowchart/patch.d.ts.map +0 -1
  262. package/dist/src/flowchart/patch.js +0 -67
  263. package/dist/src/flowchart/patch.js.map +0 -1
  264. package/dist/src/flowchart/values.d.ts +0 -271
  265. package/dist/src/flowchart/values.d.ts.map +0 -1
  266. package/dist/src/flowchart/values.js +0 -220
  267. package/dist/src/flowchart/values.js.map +0 -1
  268. package/dist/src/flowchart/window.d.ts +0 -306
  269. package/dist/src/flowchart/window.d.ts.map +0 -1
  270. package/dist/src/flowchart/window.js +0 -63
  271. package/dist/src/flowchart/window.js.map +0 -1
  272. package/dist/src/runtime/diff.d.ts +0 -36
  273. package/dist/src/runtime/diff.d.ts.map +0 -1
  274. package/dist/src/runtime/diff.js +0 -34
  275. package/dist/src/runtime/diff.js.map +0 -1
  276. package/dist/src/runtime/experiment.d.ts +0 -48
  277. package/dist/src/runtime/experiment.d.ts.map +0 -1
  278. package/dist/src/runtime/experiment.js +0 -10
  279. package/dist/src/runtime/experiment.js.map +0 -1
  280. package/dist/test/diff/diff.examples.d.ts +0 -313
  281. package/dist/test/diff/diff.examples.d.ts.map +0 -1
  282. package/dist/test/diff/diff.examples.js +0 -452
  283. package/dist/test/diff/diff.examples.js.map +0 -1
  284. package/dist/test/experiment/experiment.examples.d.ts +0 -1512
  285. package/dist/test/experiment/experiment.examples.d.ts.map +0 -1
  286. package/dist/test/experiment/experiment.examples.js +0 -609
  287. package/dist/test/experiment/experiment.examples.js.map +0 -1
@@ -0,0 +1,469 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * The Flowchart's details (#1507, `Flowchart Records Spec.md` §3, R18–R21):
7
+ * `Flowchart.details` and its four reads — `Flowchart.figure`, `.histogram`,
8
+ * `.list` and `.tags` — over the app's rows keyed as a kind's are, read only.
9
+ *
10
+ * - **A read is a frozen description behind a phantom brand**, as the Plan's
11
+ * named reads are (`plan/reads.ts`): the row it reads, its kind, where it
12
+ * shows and, for tags, whether the legend lists them. The row is inferred
13
+ * where the read is placed — in a `Flowchart.details` array — so a field
14
+ * name is checked against the row it reads, and a misfit is a type error
15
+ * naming the fields that fit (R20). A read's return type keeps its show and
16
+ * its legend from inference (`NoInfer`), so each is the one given — `"all"`
17
+ * and `false` unless given — wherever the read is placed, and `details`'
18
+ * keeps its row and its reads from the place it is put, so a kind's `details`
19
+ * never infers them in its stead.
20
+ * - **One array, in order** (R21): each kind's `details` is one array of
21
+ * reads, any mix of the four, drawn in its order and shown in full, in the
22
+ * same order, in the inspector, each where its `show` says. A transition's
23
+ * label draws lines, so its tags and histograms take `show: "inspector"`: a
24
+ * type error otherwise, with its words.
25
+ * - **Read as the kind is** (R19): beside a kind read whole the details bind
26
+ * `Data.bind(record)`, read whole; beside one read through its source,
27
+ * `Data.bindPaged(record)`, read by the drawn rows' keys, every key in one
28
+ * request. They are read only (R18): `Record.bind` is refused.
29
+ * - **The row type never reaches the payload**: `values` turns a row's bytes
30
+ * into one value a read, one type whatever the row holds.
31
+ * - **The rail's picks weigh them** (#1522, R43–R46): details that name a
32
+ * source of the slice, `source`, are bound through their record's entries
33
+ * index, and a pick of its Dict field's keys weighs each read the entries
34
+ * hold, added up by kind in East — a figure adds, a histogram adds bin by
35
+ * bin, a list adds by name and tags join — while `weigh: false` keeps a
36
+ * read's own. `fold` turns a row's bytes and its picked entries' into one
37
+ * value a read.
38
+ *
39
+ * What only the built value shows is refused as the Flowchart is built, in
40
+ * the tag's words (§3, "What the editor and the tag say").
41
+ *
42
+ * @packageDocumentation
43
+ */
44
+ import { ArrayType, DictType, FloatType, IntegerType, OptionType, SetType, StringType, StructType, type EastType, type ExprType, type SubtypeExprOrValue } from "@elaraai/east";
45
+ import { ColorSchemeType, StyleVariantType, type ColorSchemeLiteral, type IndexedSource, type StyleVariantLiteral } from "@elaraai/east-ui/internal";
46
+ import type { FlowchartBinding } from "./kinds.js";
47
+ import { FlowchartDetailsType, FlowchartTagColorType } from "./types.js";
48
+ /** Fields of R a figure reads: a number, or an Option of one. */
49
+ export type FlowchartFigureField<R extends StructType> = {
50
+ [K in keyof R["fields"] & string]: R["fields"][K] extends IntegerType | FloatType | OptionType<IntegerType | FloatType> ? K : never;
51
+ }[keyof R["fields"] & string];
52
+ /** Fields of R a histogram reads: a Dict from a duration to its count, both numbers — or, beside the app's bins, an Array of counts, one a bin. */
53
+ export type FlowchartHistogramField<R extends StructType> = {
54
+ [K in keyof R["fields"] & string]: R["fields"][K] extends DictType<IntegerType | FloatType, IntegerType | FloatType> | ArrayType<IntegerType | FloatType> ? K : never;
55
+ }[keyof R["fields"] & string];
56
+ /** Fields of R a list reads: a Dict from an item's name to a number, or to a struct its draw reads. */
57
+ export type FlowchartListField<R extends StructType> = {
58
+ [K in keyof R["fields"] & string]: R["fields"][K] extends DictType<StringType, IntegerType | FloatType | StructType> ? K : never;
59
+ }[keyof R["fields"] & string];
60
+ /** Fields of R a tags read reads: an Array or a Set of strings. */
61
+ export type FlowchartTagsField<R extends StructType> = {
62
+ [K in keyof R["fields"] & string]: R["fields"][K] extends ArrayType<StringType> | SetType<StringType> ? K : never;
63
+ }[keyof R["fields"] & string];
64
+ /** An item of the list at F: what its draw is handed. */
65
+ export type FlowchartListItem<R extends StructType, F extends FlowchartListField<R>> = R["fields"][F] extends DictType<StringType, infer V> ? V : never;
66
+ /** The unit a histogram's durations are in; the axis prints them as 15m, 4h, 2d, 1w. */
67
+ export type FlowchartDurationUnit = "minutes" | "hours" | "days";
68
+ /**
69
+ * How the bars space the bins along the axis, in the Chart's words for its x
70
+ * scales (`ChartScaleLiteral`): `"band"`, a bar a bin whatever its span;
71
+ * `"linear"`, each bar as wide as its span.
72
+ */
73
+ export type FlowchartBarScale = "band" | "linear";
74
+ /** An edge the axis names: a number, printed as a duration in the unit, or the app's own words. */
75
+ export type FlowchartTick = number | {
76
+ at: number;
77
+ label: string;
78
+ };
79
+ /** What a histogram takes beside its field. */
80
+ export interface FlowchartHistogramOptions {
81
+ /** The unit its durations are in. */
82
+ unit: FlowchartDurationUnit;
83
+ /** False keeps the row's own beside the rail's picks, which add the entries' bin by bin otherwise (#1522): beside details that name a source. */
84
+ weigh?: boolean;
85
+ /** Its title; the field's name unless given. */
86
+ label?: string;
87
+ /** What is counted: `"parcels"`. */
88
+ counts?: string;
89
+ /** The app's edges, ascending, any spacing: a literal, or bound. Left out, every row's edges merged. */
90
+ bins?: SubtypeExprOrValue<ArrayType<FloatType>>;
91
+ /** `"band"` unless given. */
92
+ scale?: FlowchartBarScale;
93
+ /** The edges the axis names, besides the first; left out, round durations. */
94
+ ticks?: ReadonlyArray<FlowchartTick>;
95
+ }
96
+ /** A tag's look, as a Tag takes it: east-ui's `ColorSchemeType` and `StyleVariantType`. */
97
+ export interface FlowchartTagColor {
98
+ /** Its palette. */
99
+ colorPalette: SubtypeExprOrValue<ColorSchemeType> | ColorSchemeLiteral;
100
+ /** Its variant: subtle unless given. */
101
+ variant?: SubtypeExprOrValue<StyleVariantType> | StyleVariantLiteral;
102
+ }
103
+ /**
104
+ * Where a read shows — `"all"`, the default: on the canvas, a state's card or
105
+ * a transition's label, and in the inspector; `"canvas"`: there alone;
106
+ * `"inspector"`: in the inspector alone. A variant on the wire, as the
107
+ * Schematic carries its narrowed `show`.
108
+ */
109
+ export type FlowchartShow = "all" | "canvas" | "inspector";
110
+ /** A read's kind. */
111
+ export type FlowchartReadKind = "figure" | "histogram" | "list" | "tags";
112
+ /** The phantom brand a read carries: what it reads, its kind, where it shows and whether the legend lists it. */
113
+ export declare const FlowchartReadBrand: unique symbol;
114
+ /** The type of {@link FlowchartReadBrand}. */
115
+ export type FlowchartReadBrand = typeof FlowchartReadBrand;
116
+ /**
117
+ * A read: a frozen description behind a phantom brand — the row R it reads,
118
+ * its kind K, where it shows (W) and, for tags, whether the legend lists them
119
+ * (L).
120
+ *
121
+ * @typeParam R - The details' row type, inferred where the read is placed
122
+ * @typeParam K - Its kind
123
+ * @typeParam W - Where it shows
124
+ * @typeParam L - Whether the legend lists it: tags only
125
+ */
126
+ export type FlowchartRead<R extends StructType, K extends FlowchartReadKind, W extends FlowchartShow = FlowchartShow, L extends boolean = false> = {
127
+ readonly [FlowchartReadBrand]: {
128
+ row: R;
129
+ kind: K;
130
+ show: W;
131
+ legend: L;
132
+ };
133
+ };
134
+ /**
135
+ * A figure (R25): a number, or an Option of one — a line on the card or the
136
+ * label, its label and its value with its unit; the inspector's stats.
137
+ *
138
+ * @typeParam R - The details' row type, inferred where the read is placed
139
+ * @typeParam F - The field
140
+ * @typeParam W - Where it shows: `"all"` unless given
141
+ * @param field - The field it reads
142
+ * @param options - Its label — the field's name unless given — its unit, where it shows, and `weigh: false` to keep the
143
+ * row's own beside the rail's picks — a share or an average — which add the entries' otherwise (#1522)
144
+ * @returns The read, for `Flowchart.details`
145
+ * @throws {Error} When the field is named by no string, or an option is of another kind
146
+ */
147
+ export declare function flowchartFigure<R extends StructType, F extends FlowchartFigureField<R>, const W extends FlowchartShow = "all">(field: F, options?: {
148
+ label?: string;
149
+ unit?: string;
150
+ show?: W;
151
+ weigh?: boolean;
152
+ }): FlowchartRead<R, "figure", NoInfer<W>>;
153
+ /**
154
+ * A histogram (R26–R28): a Dict from a duration to its count, both numbers —
155
+ * or, beside the app's `bins`, an Array of counts, one a bin. The card's bars
156
+ * on their axis; the inspector's chart.
157
+ *
158
+ * @typeParam R - The details' row type, inferred where the read is placed
159
+ * @typeParam F - The field
160
+ * @typeParam W - Where it shows: `"all"` unless given
161
+ * @param field - The field it reads
162
+ * @param options - Its unit, its label, what it counts, the app's bins — required beside an Array of counts — how the bars
163
+ * space them, the edges the axis names, where it shows, and `weigh: false` to keep the row's own beside the rail's picks
164
+ * @returns The read, for `Flowchart.details`
165
+ * @throws {Error} When the unit, the scale or a tick is none of its words, and when the bins' edges do not ascend —
166
+ * "The bins' edges ascend — 12, then 4"
167
+ */
168
+ export declare function flowchartHistogram<R extends StructType, F extends FlowchartHistogramField<R>, const W extends FlowchartShow = "all">(field: F, options: FlowchartHistogramOptions & {
169
+ show?: W;
170
+ } & (R["fields"][F] extends ArrayType<IntegerType | FloatType> ? {
171
+ bins: SubtypeExprOrValue<ArrayType<FloatType>>;
172
+ } : unknown)): FlowchartRead<R, "histogram", NoInfer<W>>;
173
+ /**
174
+ * A list (R29): a Dict from an item's name to a number, or to a struct whose
175
+ * `draw` says which number is the value, and a note. Lines on a card, under
176
+ * the list's title, or under a transition's evidence; the inspector's list.
177
+ *
178
+ * @typeParam R - The details' row type, inferred where the read is placed
179
+ * @typeParam F - The field
180
+ * @typeParam W - Where it shows: `"all"` unless given
181
+ * @param field - The field it reads
182
+ * @param options - Its label, its unit, the lines it draws on the canvas — 2 on a card and 1 on a label unless given, at
183
+ * most 3: the inspector lists every item — where it shows, and `weigh: false` to keep the row's own beside the rail's
184
+ * picks, which add the entries' by name otherwise (#1522)
185
+ * @param draw - An item's value and its note, from the item, its name and the row: required for a Dict of structs.
186
+ * Weighed, it draws the picked entries' items added up, each struct's numbers added and its lists joined
187
+ * @returns The read, for `Flowchart.details`
188
+ * @throws {Error} When `top` is not 1, 2 or 3, or `draw` is no function
189
+ */
190
+ export declare function flowchartList<R extends StructType, F extends FlowchartListField<R>, const W extends FlowchartShow = "all">(field: F, options?: {
191
+ label?: string;
192
+ unit?: string;
193
+ top?: 1 | 2 | 3;
194
+ show?: W;
195
+ weigh?: boolean;
196
+ }, // top: the card's or label's lines
197
+ draw?: (item: ExprType<FlowchartListItem<R, F>>, name: ExprType<StringType>, row: ExprType<R>) => {
198
+ value: SubtypeExprOrValue<IntegerType | FloatType>;
199
+ note?: SubtypeExprOrValue<OptionType<StringType>>;
200
+ }): FlowchartRead<R, "list", NoInfer<W>>;
201
+ /**
202
+ * A tags read (R30, R31): an Array or a Set of strings, the row's tags. On a
203
+ * card, a list beside its label, wrapping to three lines; the inspector shows
204
+ * every tag.
205
+ *
206
+ * @typeParam R - The details' row type, inferred where the read is placed
207
+ * @typeParam F - The field
208
+ * @typeParam W - Where it shows: `"all"` unless given
209
+ * @typeParam L - Whether the canvas's legend lists the defined tags
210
+ * @param field - The field it reads
211
+ * @param options - Its label; each tag's look as a Tag takes it — `{ colorPalette, variant }`, first defined, first shown,
212
+ * a literal or an Array the app binds (`Flowchart.Types.TagColor`) — a tag with none neutral and subtle; whether the
213
+ * legend lists the defined tags, for tags on the canvas only; where it shows; and `weigh: false` to keep the row's own
214
+ * beside the rail's picks, whose entries' tags join otherwise (#1522): a Set's as a Set does, in its order, an Array's
215
+ * each once in the entries' key order
216
+ * @returns The read, for `Flowchart.details`
217
+ * @throws {Error} When a look's palette or variant is none of east-ui's, or `legend` is given beside `show: "inspector"` —
218
+ * "Only tags on the canvas go in the legend — show them on the canvas, or drop legend"
219
+ */
220
+ export declare function flowchartTags<R extends StructType, F extends FlowchartTagsField<R>, const W extends FlowchartShow = "all", const L extends boolean = false>(field: F, options?: {
221
+ label?: string;
222
+ colors?: Record<string, FlowchartTagColor> | SubtypeExprOrValue<ArrayType<typeof FlowchartTagColorType>>;
223
+ legend?: L;
224
+ show?: W;
225
+ weigh?: boolean;
226
+ }): FlowchartRead<R, "tags", NoInfer<W>, NoInfer<L>>;
227
+ /**
228
+ * The refusal's words as a type, as `plan/nested.ts` carries them: unknown
229
+ * unless a tags read in the legend shows in the inspector alone.
230
+ */
231
+ export type FlowchartLegendOnCanvas<S> = S extends {
232
+ details: ReadonlyArray<infer D>;
233
+ } ? [Extract<D, FlowchartRead<StructType, "tags", "inspector", true>>] extends [never] ? unknown : {
234
+ "Only tags on the canvas go in the legend — show them on the canvas, or drop legend": never;
235
+ } : unknown;
236
+ /**
237
+ * Whether a transition's label draws a details' reads, with its words as a
238
+ * type: `true` unless a histogram or a tags read shows on the canvas — a
239
+ * transition's label draws lines, figures and lists (R21).
240
+ */
241
+ export type FlowchartLabelDraws<S> = S extends {
242
+ details: ReadonlyArray<infer D>;
243
+ } ? [Extract<D, FlowchartRead<StructType, "histogram", "all" | "canvas", boolean>>] extends [never] ? [Extract<D, FlowchartRead<StructType, "tags", "all" | "canvas", boolean>>] extends [never] ? true : {
244
+ "A transition's label draws lines: a figure or a list — give the tags show: \"inspector\"": never;
245
+ } : {
246
+ "A transition's label draws lines: a figure or a list — give the histogram show: \"inspector\"": never;
247
+ } : true;
248
+ /** What a kind's details take: every read, in the order drawn, and the source whose picks weigh them. */
249
+ export interface FlowchartDetailsSpec<R extends StructType> {
250
+ /**
251
+ * The rail's source whose picks weigh them (#1522): a source of the
252
+ * Flowchart's slice over the details' record, its Dict field offered
253
+ * through the entries index the details are bound with. Its picked keys'
254
+ * entries are what each read the entries hold draws, added up by kind.
255
+ */
256
+ source?: string;
257
+ /**
258
+ * Every read, any mix of the four, in the order drawn — on a state's card
259
+ * or a transition's label, and in the inspector — each where its show says.
260
+ */
261
+ details: ReadonlyArray<FlowchartRead<R, FlowchartReadKind, FlowchartShow, boolean>>;
262
+ }
263
+ /**
264
+ * A transition's: its label draws lines — figures and lists — so a tags or a
265
+ * histogram read shows in the inspector alone, a type error otherwise, with
266
+ * the words "A transition's label draws lines: a figure or a list — give the
267
+ * histogram show: "inspector"".
268
+ */
269
+ export interface FlowchartTransitionDetailsSpec {
270
+ /** The rail's source whose picks weigh them (#1522). */
271
+ source?: string;
272
+ /** Its reads: figures and lists anywhere, tags and histograms in the inspector alone. */
273
+ details: ReadonlyArray<FlowchartRead<StructType, "figure" | "list"> | FlowchartRead<StructType, "tags" | "histogram", "inspector">>;
274
+ }
275
+ /**
276
+ * The binding a kind's details take (R19): `Data.bind(record)`'s handle, read
277
+ * whole, or `Data.bindPaged(record)`'s, read by key — or, weighed by the
278
+ * rail's picks (#1522), `Data.bindPaged(record, { indexes: [its entries index] })`'s,
279
+ * its rows read by key through the index's lean rows.
280
+ *
281
+ * @typeParam R - The details' row type
282
+ * @typeParam P - Through an entries index, an index entry's value: the row, its Dict field emptied
283
+ * @typeParam M - Through an entries index, the binding's indexes, each its fields and its kind
284
+ * @typeParam IK - Through an entries index, the binding's index keys
285
+ * @typeParam N - Through an entries index, the binding's nested part
286
+ * @typeParam X - Through an entries index, the binding's maintenance part
287
+ */
288
+ export type FlowchartDetailsBinding<R extends StructType, P extends EastType = EastType, M extends EastType = EastType, IK extends EastType = EastType, N extends EastType = EastType, X extends EastType = EastType> = FlowchartBinding<R> | IndexedSource<StringType, R, P, M, IK, N, X>;
289
+ /** The key a kind's details carry their mark under. */
290
+ export declare const FLOWCHART_DETAILS: unique symbol;
291
+ /** The phantom brand a kind's details carry: their row, their reads, and whether a transition's label draws them. */
292
+ export declare const FlowchartDetailsBrand: unique symbol;
293
+ /** The type of {@link FlowchartDetailsBrand}. */
294
+ export type FlowchartDetailsBrand = typeof FlowchartDetailsBrand;
295
+ /**
296
+ * A kind's details, declared: what a state's or a transition's `details`
297
+ * takes.
298
+ *
299
+ * @typeParam R - The details' row type
300
+ * @typeParam S - Their reads, as given
301
+ * @typeParam L - Whether a transition's label draws them: `true`, or the words saying why not
302
+ */
303
+ export interface FlowchartDetails<R extends StructType, S, L = FlowchartLabelDraws<S>> {
304
+ /** What it is. */
305
+ readonly [FLOWCHART_DETAILS]: "details";
306
+ /** The details' row type. */
307
+ readonly rowType: StructType;
308
+ /** The rail's source whose picks weigh them (#1522); `undefined` for details none weighs. */
309
+ readonly source: string | undefined;
310
+ /** Whether a read shows in the inspector alone: refused beside `inspector={false}`. */
311
+ readonly inspectorReads: boolean;
312
+ /**
313
+ * Checks the details where their kind declares them: a transition's label
314
+ * draws figures and lists, three lines at most under its evidence.
315
+ *
316
+ * @param noun - The kind's rows, `states` or `transitions`
317
+ * @param where - The kind, as a refusal names it
318
+ * @throws {Error} On a transition: a tags or a histogram read on the canvas, and lines past three
319
+ */
320
+ check(noun: "states" | "transitions", where: string): void;
321
+ /**
322
+ * The details on the wire, beside their kind.
323
+ *
324
+ * @param noun - The kind's rows, `states` or `transitions`: a list's lines, 2 on a card and 1 on a label unless given
325
+ * @param where - The kind, as a refusal names it
326
+ * @param throughSource - Whether the kind is read through its source of the slice: details a source weighs are read
327
+ * by key whatever their kind's read (#1522)
328
+ * @returns The details, closed
329
+ * @throws {Error} When they are bound in a form their kind's read does not take (R19), naming the one to use
330
+ */
331
+ build(noun: "states" | "transitions", where: string, throughSource: boolean): ExprType<typeof FlowchartDetailsType>;
332
+ /** Their row, their reads, and whether a transition's label draws them (phantom). */
333
+ readonly [FlowchartDetailsBrand]?: {
334
+ readonly label: L;
335
+ readonly row: R;
336
+ readonly spec: S;
337
+ };
338
+ }
339
+ /**
340
+ * Whether something is a kind's details: `Flowchart.details`'.
341
+ *
342
+ * @param value - What a kind's `details` holds
343
+ * @returns Whether it is
344
+ */
345
+ export declare function isFlowchartDetails(value: unknown): value is FlowchartDetails<StructType, unknown, unknown>;
346
+ /**
347
+ * The rows an index-selected binding's type pages through (#1522): each
348
+ * entry's joined row and its key, as `Data.bindPaged(record, { indexes })`'s
349
+ * `page` serves them.
350
+ *
351
+ * @param type - The binding's type
352
+ * @returns The row's struct and the key's type; `undefined` for a binding that pages no such entries
353
+ * @internal
354
+ */
355
+ export declare function flowchartIndexedRows(type: EastType): {
356
+ readonly row: StructType;
357
+ readonly key: EastType;
358
+ } | undefined;
359
+ /**
360
+ * One kind's details over the app's rows (R18, R19, R21), keyed as the kind's
361
+ * are, read only: `Data.bind(record)`, read whole beside a kind read whole,
362
+ * or `Data.bindPaged(record)`, read by the drawn rows' keys beside one read
363
+ * through its source.
364
+ *
365
+ * Bound through an entries index — `Data.bindPaged(record, { indexes: [it] })`
366
+ * — and naming the rail's source over that binding with `source`, the details
367
+ * are weighed by the source's picks of the Dict field the index files (#1522,
368
+ * R44, R45): read by key whatever the kind's read, each row with that field
369
+ * emptied, and each read whose field the entries hold drawing the picked keys'
370
+ * entries added up by kind — a figure adds, a histogram adds bin by bin, a
371
+ * list adds by name, tags join. A read given `weigh: false`, or one whose field
372
+ * the entries lack, draws the row's own; with no pick, every read does. A share
373
+ * or an average is given `weigh: false`, since adding two would make it wrong:
374
+ * `Flowchart.figure("onTime", { label: "On time", weigh: false })` draws each
375
+ * state's own share of its parcels through on time, whatever the picks.
376
+ *
377
+ * @typeParam R - The details' row type, inferred from the binding
378
+ * @typeParam S - The reads, as given
379
+ * @typeParam P - Through an entries index, an index entry's value, inferred from the binding
380
+ * @typeParam M - Through an entries index, the binding's indexes, inferred from it
381
+ * @typeParam IK - Through an entries index, the binding's index keys, inferred from it
382
+ * @typeParam N - Through an entries index, the binding's nested part, inferred from it
383
+ * @typeParam X - Through an entries index, the binding's maintenance part, inferred from it
384
+ * @param binding - The details' record: `Data.bind(record)`, `Data.bindPaged(record)`, or `Data.bindPaged(record, { indexes: [its entries index] })`
385
+ * @param spec - `{ source?, details: [ … ] }`: the rail's source whose picks weigh them, and every read, in the order drawn
386
+ * @returns The details, for a state's or a transition's `details`
387
+ * @throws {Error} Naming the binding or the read (R18–R20): `Record.bind` — "Details are read only: bind them with
388
+ * Data.bind(record), or Data.bindPaged(record) beside a kind read through its source" — or anything but a binding of
389
+ * a record of structs keyed by String; an element that is no read; a read's field the row lacks, or one of another
390
+ * type; an Array of counts without bins; a Dict of structs without a draw. Weighed (#1522): `source` naming the
391
+ * states' or the transitions' own; a source named while bound without an entries index, or an entries index bound
392
+ * with no source named; `weigh` beside details that name no source; a read of the entries' own field; a read whose
393
+ * field the entries hold in a type it doesn't take; a list of structs one of whose fields neither adds nor joins,
394
+ * unless it says `weigh: false`. The Flowchart refuses a source its slice lacks, and one over rows of another type
395
+ * (`Flowchart.payload`)
396
+ *
397
+ * @example
398
+ * ```tsx
399
+ * // .tsx file with the `@jsxImportSource @elaraai/e3-ui` pragma
400
+ * import { ArrayType, DictType, East, IntegerType, StringType, StructType, variant } from "@elaraai/east";
401
+ * import { Box, Reactive, UIComponentType } from "@elaraai/east-ui";
402
+ * import { Data, Flowchart } from "@elaraai/e3-ui";
403
+ * import e3 from "@elaraai/e3";
404
+ *
405
+ * // A support desk's tickets: the states they pass through, the transitions between them, and the minutes
406
+ * // each spent in each state. The app's task counts each state's tickets into the app's own bins — minutes at
407
+ * // first, then hours, a shift and a day — an Array of counts, one a bin, keyed as the states are.
408
+ * export const DeskState = StructType({ name: StringType, stage: StringType });
409
+ * export const DeskTransition = StructType({ from: StringType, to: StringType });
410
+ * export const DeskStage = StructType({ label: StringType, seq: IntegerType });
411
+ * export const deskStates = e3.input("flowchart_desk_states", DictType(StringType, DeskState), variant("value", new Map([
412
+ * ["NEW", { name: "New", stage: "open" }], ["TRI", { name: "Triaged", stage: "open" }],
413
+ * ["WIP", { name: "In progress", stage: "work" }], ["WAI", { name: "Waiting on customer", stage: "work" }],
414
+ * ["RES", { name: "Resolved", stage: "close" }],
415
+ * ])));
416
+ * export const deskTransitions = e3.input("flowchart_desk_transitions", DictType(StringType, DeskTransition), variant("value", new Map([
417
+ * ["t1", { from: "NEW", to: "TRI" }], ["t2", { from: "TRI", to: "WIP" }], ["t3", { from: "WIP", to: "WAI" }],
418
+ * ["t4", { from: "WAI", to: "WIP" }], ["t5", { from: "WIP", to: "RES" }],
419
+ * ])));
420
+ * export const deskStages = e3.input("flowchart_desk_stages", DictType(StringType, DeskStage), variant("value", new Map([
421
+ * ["open", { label: "Open", seq: 1n }], ["work", { label: "Work", seq: 2n }], ["close", { label: "Close", seq: 3n }],
422
+ * ])));
423
+ * export const TicketMinutes = StructType({ minutes: ArrayType(IntegerType) });
424
+ * export const ticketMinutes = e3.input("flowchart_ticket_minutes", DictType(StringType, TicketMinutes), variant("value", new Map([
425
+ * ["NEW", { minutes: [140n, 96n, 120n, 64n, 30n, 22n, 9n, 4n, 2n, 1n, 0n, 0n] }],
426
+ * ["TRI", { minutes: [62n, 88n, 131n, 90n, 41n, 25n, 12n, 6n, 3n, 1n, 0n, 0n] }],
427
+ * ["WIP", { minutes: [3n, 8n, 41n, 96n, 120n, 150n, 132n, 88n, 40n, 18n, 9n, 4n] }],
428
+ * ["WAI", { minutes: [0n, 1n, 2n, 6n, 9n, 14n, 30n, 58n, 74n, 66n, 41n, 22n] }],
429
+ * // A resolved ticket stays resolved: the app counts no time in it, so its row is absent and its card says no data.
430
+ * ])));
431
+ *
432
+ * const flowchartTicketMinutes = East.function([], UIComponentType, (_$) => (
433
+ * <Reactive>{$ => {
434
+ * const states = $.let(Data.bind(deskStates));
435
+ * const transitions = $.let(Data.bind(deskTransitions));
436
+ * const stages = $.let(Data.bind(deskStages));
437
+ * const minutes = $.let(Data.bind(ticketMinutes));
438
+ * return (
439
+ * <Box height="560px">
440
+ * <Flowchart
441
+ * states={Flowchart.states(states, {
442
+ * label: "name", lane: "stage",
443
+ * details: Flowchart.details(minutes, {
444
+ * details: [Flowchart.histogram("minutes", {
445
+ * unit: "minutes",
446
+ * label: "Time in state",
447
+ * counts: "tickets",
448
+ * // The edges, in minutes: an Array of counts is a bin each, in this order.
449
+ * bins: [0, 1, 2, 5, 10, 15, 30, 60, 120, 240, 480, 1440],
450
+ * // A bar a bin, whatever its span — the default; "linear" draws them to scale.
451
+ * scale: "band",
452
+ * // The edges the axis names besides 0: 5m and 1h printed from the unit,
453
+ * // the last two in the app's own words.
454
+ * ticks: [5, 60, { at: 480, label: "a shift" }, { at: 1440, label: "a day" }],
455
+ * })],
456
+ * }),
457
+ * })}
458
+ * transitions={Flowchart.transitions(transitions, { from: "from", to: "to" })}
459
+ * lanes={Flowchart.lanes(stages, { label: "label", order: "seq" })}
460
+ * name="ticketMinutes"
461
+ * />
462
+ * </Box>
463
+ * );
464
+ * }}</Reactive>
465
+ * ));
466
+ * ```
467
+ */
468
+ export declare function flowchartDetails<R extends StructType, const S extends FlowchartDetailsSpec<R>, P extends EastType = EastType, M extends EastType = EastType, IK extends EastType = EastType, N extends EastType = EastType, X extends EastType = EastType>(binding: FlowchartDetailsBinding<R, P, M, IK, N, X>, spec: S & FlowchartLegendOnCanvas<S>): FlowchartDetails<NoInfer<R>, NoInfer<S>>;
469
+ //# sourceMappingURL=details.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"details.d.ts","sourceRoot":"","sources":["../../../src/flowchart/details.ts"],"names":[],"mappings":"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"}