@elaraai/e3-ui 1.0.86 → 1.0.87

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 (385) hide show
  1. package/dist/src/bind/data-indexed.d.ts +159 -0
  2. package/dist/src/bind/data-indexed.d.ts.map +1 -0
  3. package/dist/src/bind/data-indexed.js +105 -0
  4. package/dist/src/bind/data-indexed.js.map +1 -0
  5. package/dist/src/bind/data.d.ts +5 -3
  6. package/dist/src/bind/data.d.ts.map +1 -1
  7. package/dist/src/bind/data.js +6 -0
  8. package/dist/src/bind/data.js.map +1 -1
  9. package/dist/src/bind/record.d.ts +34 -23
  10. package/dist/src/bind/record.d.ts.map +1 -1
  11. package/dist/src/bind/record.js +46 -19
  12. package/dist/src/bind/record.js.map +1 -1
  13. package/dist/src/calendar/index.d.ts +2923 -0
  14. package/dist/src/calendar/index.d.ts.map +1 -0
  15. package/dist/src/calendar/index.js +135 -0
  16. package/dist/src/calendar/index.js.map +1 -0
  17. package/dist/src/decision/queue.d.ts +3 -3
  18. package/dist/src/decision/queue.d.ts.map +1 -1
  19. package/dist/src/decision/queue.js +2 -2
  20. package/dist/src/decision/queue.js.map +1 -1
  21. package/dist/src/decision/types.d.ts +4 -0
  22. package/dist/src/decision/types.d.ts.map +1 -1
  23. package/dist/src/decision/types.js +4 -0
  24. package/dist/src/decision/types.js.map +1 -1
  25. package/dist/src/flowchart/canvas.d.ts +114 -0
  26. package/dist/src/flowchart/canvas.d.ts.map +1 -0
  27. package/dist/src/flowchart/canvas.js +84 -0
  28. package/dist/src/flowchart/canvas.js.map +1 -0
  29. package/dist/src/flowchart/flowchart.d.ts +79 -0
  30. package/dist/src/flowchart/flowchart.d.ts.map +1 -0
  31. package/dist/src/flowchart/flowchart.js +9 -0
  32. package/dist/src/flowchart/flowchart.js.map +1 -0
  33. package/dist/src/flowchart/index.d.ts +305 -0
  34. package/dist/src/flowchart/index.d.ts.map +1 -0
  35. package/dist/src/flowchart/index.js +267 -0
  36. package/dist/src/flowchart/index.js.map +1 -0
  37. package/dist/src/flowchart/library.d.ts +720 -0
  38. package/dist/src/flowchart/library.d.ts.map +1 -0
  39. package/dist/src/flowchart/library.js +611 -0
  40. package/dist/src/flowchart/library.js.map +1 -0
  41. package/dist/src/flowchart/over.d.ts +234 -0
  42. package/dist/src/flowchart/over.d.ts.map +1 -0
  43. package/dist/src/flowchart/over.js +220 -0
  44. package/dist/src/flowchart/over.js.map +1 -0
  45. package/dist/src/flowchart/patch.d.ts +64 -0
  46. package/dist/src/flowchart/patch.d.ts.map +1 -0
  47. package/dist/src/flowchart/patch.js +67 -0
  48. package/dist/src/flowchart/patch.js.map +1 -0
  49. package/dist/src/flowchart/payload.d.ts +8220 -0
  50. package/dist/src/flowchart/payload.d.ts.map +1 -0
  51. package/dist/src/flowchart/payload.js +521 -0
  52. package/dist/src/flowchart/payload.js.map +1 -0
  53. package/dist/src/flowchart/types.d.ts +393 -0
  54. package/dist/src/flowchart/types.d.ts.map +1 -0
  55. package/dist/src/flowchart/types.js +216 -0
  56. package/dist/src/flowchart/types.js.map +1 -0
  57. package/dist/src/flowchart/values.d.ts +267 -0
  58. package/dist/src/flowchart/values.d.ts.map +1 -0
  59. package/dist/src/flowchart/values.js +216 -0
  60. package/dist/src/flowchart/values.js.map +1 -0
  61. package/dist/src/flowchart/window.d.ts +521 -0
  62. package/dist/src/flowchart/window.d.ts.map +1 -0
  63. package/dist/src/flowchart/window.js +69 -0
  64. package/dist/src/flowchart/window.js.map +1 -0
  65. package/dist/src/index.d.ts +25 -1
  66. package/dist/src/index.d.ts.map +1 -1
  67. package/dist/src/index.js +48 -1
  68. package/dist/src/index.js.map +1 -1
  69. package/dist/src/internal.d.ts +35 -3
  70. package/dist/src/internal.d.ts.map +1 -1
  71. package/dist/src/internal.js +72 -3
  72. package/dist/src/internal.js.map +1 -1
  73. package/dist/src/plan/assemble.d.ts +2224 -0
  74. package/dist/src/plan/assemble.d.ts.map +1 -0
  75. package/dist/src/plan/assemble.js +210 -0
  76. package/dist/src/plan/assemble.js.map +1 -0
  77. package/dist/src/plan/builders.d.ts +790 -0
  78. package/dist/src/plan/builders.d.ts.map +1 -0
  79. package/dist/src/plan/builders.js +749 -0
  80. package/dist/src/plan/builders.js.map +1 -0
  81. package/dist/src/plan/event-rows.d.ts +2565 -0
  82. package/dist/src/plan/event-rows.d.ts.map +1 -0
  83. package/dist/src/plan/event-rows.js +689 -0
  84. package/dist/src/plan/event-rows.js.map +1 -0
  85. package/dist/src/plan/factories.d.ts +458 -0
  86. package/dist/src/plan/factories.d.ts.map +1 -0
  87. package/dist/src/plan/factories.js +484 -0
  88. package/dist/src/plan/factories.js.map +1 -0
  89. package/dist/src/plan/index.d.ts +672 -0
  90. package/dist/src/plan/index.d.ts.map +1 -0
  91. package/dist/src/plan/index.js +532 -0
  92. package/dist/src/plan/index.js.map +1 -0
  93. package/dist/src/plan/ir.d.ts +2594 -0
  94. package/dist/src/plan/ir.d.ts.map +1 -0
  95. package/dist/src/plan/ir.js +78 -0
  96. package/dist/src/plan/ir.js.map +1 -0
  97. package/dist/src/plan/library.d.ts +772 -0
  98. package/dist/src/plan/library.d.ts.map +1 -0
  99. package/dist/src/plan/library.js +424 -0
  100. package/dist/src/plan/library.js.map +1 -0
  101. package/dist/src/plan/ordered-source.d.ts +27 -0
  102. package/dist/src/plan/ordered-source.d.ts.map +1 -0
  103. package/dist/src/plan/ordered-source.js +48 -0
  104. package/dist/src/plan/ordered-source.js.map +1 -0
  105. package/dist/src/plan/over.d.ts +247 -0
  106. package/dist/src/plan/over.d.ts.map +1 -0
  107. package/dist/src/plan/over.js +266 -0
  108. package/dist/src/plan/over.js.map +1 -0
  109. package/dist/src/plan/pick.d.ts +78 -0
  110. package/dist/src/plan/pick.d.ts.map +1 -0
  111. package/dist/src/plan/pick.js +146 -0
  112. package/dist/src/plan/pick.js.map +1 -0
  113. package/dist/src/plan/plan.d.ts +11611 -0
  114. package/dist/src/plan/plan.d.ts.map +1 -0
  115. package/dist/src/plan/plan.js +428 -0
  116. package/dist/src/plan/plan.js.map +1 -0
  117. package/dist/src/plan/refs.d.ts +218 -0
  118. package/dist/src/plan/refs.d.ts.map +1 -0
  119. package/dist/src/plan/refs.js +226 -0
  120. package/dist/src/plan/refs.js.map +1 -0
  121. package/dist/src/plan/root.d.ts +290 -0
  122. package/dist/src/plan/root.d.ts.map +1 -0
  123. package/dist/src/plan/root.js +463 -0
  124. package/dist/src/plan/root.js.map +1 -0
  125. package/dist/src/plan/series.d.ts +13554 -0
  126. package/dist/src/plan/series.d.ts.map +1 -0
  127. package/dist/src/plan/series.js +1921 -0
  128. package/dist/src/plan/series.js.map +1 -0
  129. package/dist/src/plan/types.d.ts +12400 -0
  130. package/dist/src/plan/types.d.ts.map +1 -0
  131. package/dist/src/plan/types.js +1335 -0
  132. package/dist/src/plan/types.js.map +1 -0
  133. package/dist/src/roster/coverage.d.ts +240 -0
  134. package/dist/src/roster/coverage.d.ts.map +1 -0
  135. package/dist/src/roster/coverage.js +109 -0
  136. package/dist/src/roster/coverage.js.map +1 -0
  137. package/dist/src/roster/index.d.ts +4028 -0
  138. package/dist/src/roster/index.d.ts.map +1 -0
  139. package/dist/src/roster/index.js +115 -0
  140. package/dist/src/roster/index.js.map +1 -0
  141. package/dist/src/roster/library.d.ts +106 -0
  142. package/dist/src/roster/library.d.ts.map +1 -0
  143. package/dist/src/roster/library.js +78 -0
  144. package/dist/src/roster/library.js.map +1 -0
  145. package/dist/src/roster/people.d.ts +50 -0
  146. package/dist/src/roster/people.d.ts.map +1 -0
  147. package/dist/src/roster/people.js +32 -0
  148. package/dist/src/roster/people.js.map +1 -0
  149. package/dist/src/roster/rules.d.ts +275 -0
  150. package/dist/src/roster/rules.d.ts.map +1 -0
  151. package/dist/src/roster/rules.js +162 -0
  152. package/dist/src/roster/rules.js.map +1 -0
  153. package/dist/src/roster/types.d.ts +672 -0
  154. package/dist/src/roster/types.d.ts.map +1 -0
  155. package/dist/src/roster/types.js +248 -0
  156. package/dist/src/roster/types.js.map +1 -0
  157. package/dist/src/roster/visibility.d.ts +66 -0
  158. package/dist/src/roster/visibility.d.ts.map +1 -0
  159. package/dist/src/roster/visibility.js +25 -0
  160. package/dist/src/roster/visibility.js.map +1 -0
  161. package/dist/src/schedule/days.d.ts +54 -0
  162. package/dist/src/schedule/days.d.ts.map +1 -0
  163. package/dist/src/schedule/days.js +68 -0
  164. package/dist/src/schedule/days.js.map +1 -0
  165. package/dist/src/schedule/events.d.ts +433 -0
  166. package/dist/src/schedule/events.d.ts.map +1 -0
  167. package/dist/src/schedule/events.js +851 -0
  168. package/dist/src/schedule/events.js.map +1 -0
  169. package/dist/src/schedule/index.d.ts +150 -0
  170. package/dist/src/schedule/index.d.ts.map +1 -0
  171. package/dist/src/schedule/index.js +132 -0
  172. package/dist/src/schedule/index.js.map +1 -0
  173. package/dist/src/schedule/library.d.ts +70 -0
  174. package/dist/src/schedule/library.d.ts.map +1 -0
  175. package/dist/src/schedule/library.js +102 -0
  176. package/dist/src/schedule/library.js.map +1 -0
  177. package/dist/src/schedule/patch.d.ts +74 -0
  178. package/dist/src/schedule/patch.d.ts.map +1 -0
  179. package/dist/src/schedule/patch.js +68 -0
  180. package/dist/src/schedule/patch.js.map +1 -0
  181. package/dist/src/schedule/record-window.d.ts +189 -0
  182. package/dist/src/schedule/record-window.d.ts.map +1 -0
  183. package/dist/src/schedule/record-window.js +95 -0
  184. package/dist/src/schedule/record-window.js.map +1 -0
  185. package/dist/src/schedule/resources.d.ts +165 -0
  186. package/dist/src/schedule/resources.d.ts.map +1 -0
  187. package/dist/src/schedule/resources.js +234 -0
  188. package/dist/src/schedule/resources.js.map +1 -0
  189. package/dist/src/schedule/templates.d.ts +47 -0
  190. package/dist/src/schedule/templates.d.ts.map +1 -0
  191. package/dist/src/schedule/templates.js +61 -0
  192. package/dist/src/schedule/templates.js.map +1 -0
  193. package/dist/src/schedule/types.d.ts +1677 -0
  194. package/dist/src/schedule/types.d.ts.map +1 -0
  195. package/dist/src/schedule/types.js +374 -0
  196. package/dist/src/schedule/types.js.map +1 -0
  197. package/dist/src/schedule/window.d.ts +154 -0
  198. package/dist/src/schedule/window.d.ts.map +1 -0
  199. package/dist/src/schedule/window.js +363 -0
  200. package/dist/src/schedule/window.js.map +1 -0
  201. package/dist/src/sheet/bridge.d.ts +385 -0
  202. package/dist/src/sheet/bridge.d.ts.map +1 -0
  203. package/dist/src/sheet/bridge.js +809 -0
  204. package/dist/src/sheet/bridge.js.map +1 -0
  205. package/dist/src/sheet/columns.d.ts +410 -0
  206. package/dist/src/sheet/columns.d.ts.map +1 -0
  207. package/dist/src/sheet/columns.js +99 -0
  208. package/dist/src/sheet/columns.js.map +1 -0
  209. package/dist/src/sheet/context-bridge.d.ts +48 -0
  210. package/dist/src/sheet/context-bridge.d.ts.map +1 -0
  211. package/dist/src/sheet/context-bridge.js +216 -0
  212. package/dist/src/sheet/context-bridge.js.map +1 -0
  213. package/dist/src/sheet/draft-bridge.d.ts +37 -0
  214. package/dist/src/sheet/draft-bridge.d.ts.map +1 -0
  215. package/dist/src/sheet/draft-bridge.js +153 -0
  216. package/dist/src/sheet/draft-bridge.js.map +1 -0
  217. package/dist/src/sheet/drafts.d.ts +14 -0
  218. package/dist/src/sheet/drafts.d.ts.map +1 -0
  219. package/dist/src/sheet/drafts.js +14 -0
  220. package/dist/src/sheet/drafts.js.map +1 -0
  221. package/dist/src/sheet/editing-bridge.d.ts +40 -0
  222. package/dist/src/sheet/editing-bridge.d.ts.map +1 -0
  223. package/dist/src/sheet/editing-bridge.js +231 -0
  224. package/dist/src/sheet/editing-bridge.js.map +1 -0
  225. package/dist/src/sheet/editing-types.d.ts +268 -0
  226. package/dist/src/sheet/editing-types.d.ts.map +1 -0
  227. package/dist/src/sheet/editing-types.js +34 -0
  228. package/dist/src/sheet/editing-types.js.map +1 -0
  229. package/dist/src/sheet/edits.d.ts +37 -0
  230. package/dist/src/sheet/edits.d.ts.map +1 -0
  231. package/dist/src/sheet/edits.js +31 -0
  232. package/dist/src/sheet/edits.js.map +1 -0
  233. package/dist/src/sheet/fields.d.ts +693 -0
  234. package/dist/src/sheet/fields.d.ts.map +1 -0
  235. package/dist/src/sheet/fields.js +280 -0
  236. package/dist/src/sheet/fields.js.map +1 -0
  237. package/dist/src/sheet/group.d.ts +165 -0
  238. package/dist/src/sheet/group.d.ts.map +1 -0
  239. package/dist/src/sheet/group.js +52 -0
  240. package/dist/src/sheet/group.js.map +1 -0
  241. package/dist/src/sheet/index.d.ts +542 -0
  242. package/dist/src/sheet/index.d.ts.map +1 -0
  243. package/dist/src/sheet/index.js +387 -0
  244. package/dist/src/sheet/index.js.map +1 -0
  245. package/dist/src/sheet/library.d.ts +284 -0
  246. package/dist/src/sheet/library.d.ts.map +1 -0
  247. package/dist/src/sheet/library.js +259 -0
  248. package/dist/src/sheet/library.js.map +1 -0
  249. package/dist/src/sheet/link.d.ts +398 -0
  250. package/dist/src/sheet/link.d.ts.map +1 -0
  251. package/dist/src/sheet/link.js +228 -0
  252. package/dist/src/sheet/link.js.map +1 -0
  253. package/dist/src/sheet/record.d.ts +75 -0
  254. package/dist/src/sheet/record.d.ts.map +1 -0
  255. package/dist/src/sheet/record.js +128 -0
  256. package/dist/src/sheet/record.js.map +1 -0
  257. package/dist/src/sheet/registers.d.ts +681 -0
  258. package/dist/src/sheet/registers.d.ts.map +1 -0
  259. package/dist/src/sheet/registers.js +671 -0
  260. package/dist/src/sheet/registers.js.map +1 -0
  261. package/dist/src/sheet/root.d.ts +329 -0
  262. package/dist/src/sheet/root.d.ts.map +1 -0
  263. package/dist/src/sheet/root.js +511 -0
  264. package/dist/src/sheet/root.js.map +1 -0
  265. package/dist/src/sheet/seed-bridge.d.ts +14 -0
  266. package/dist/src/sheet/seed-bridge.d.ts.map +1 -0
  267. package/dist/src/sheet/seed-bridge.js +51 -0
  268. package/dist/src/sheet/seed-bridge.js.map +1 -0
  269. package/dist/src/sheet/sheet.d.ts +11819 -0
  270. package/dist/src/sheet/sheet.d.ts.map +1 -0
  271. package/dist/src/sheet/sheet.js +236 -0
  272. package/dist/src/sheet/sheet.js.map +1 -0
  273. package/dist/src/sheet/sub-rows.d.ts +299 -0
  274. package/dist/src/sheet/sub-rows.d.ts.map +1 -0
  275. package/dist/src/sheet/sub-rows.js +272 -0
  276. package/dist/src/sheet/sub-rows.js.map +1 -0
  277. package/dist/src/sheet/templates.d.ts +161 -0
  278. package/dist/src/sheet/templates.d.ts.map +1 -0
  279. package/dist/src/sheet/templates.js +122 -0
  280. package/dist/src/sheet/templates.js.map +1 -0
  281. package/dist/src/sheet/transactions.d.ts +76 -0
  282. package/dist/src/sheet/transactions.d.ts.map +1 -0
  283. package/dist/src/sheet/transactions.js +40 -0
  284. package/dist/src/sheet/transactions.js.map +1 -0
  285. package/dist/src/sheet/types.d.ts +15226 -0
  286. package/dist/src/sheet/types.d.ts.map +1 -0
  287. package/dist/src/sheet/types.js +1070 -0
  288. package/dist/src/sheet/types.js.map +1 -0
  289. package/dist/src/sheet/views.d.ts +29 -0
  290. package/dist/src/sheet/views.d.ts.map +1 -0
  291. package/dist/src/sheet/views.js +43 -0
  292. package/dist/src/sheet/views.js.map +1 -0
  293. package/dist/src/studio/component.d.ts.map +1 -1
  294. package/dist/src/studio/component.js +11 -8
  295. package/dist/src/studio/component.js.map +1 -1
  296. package/dist/src/utils/derive.d.ts +134 -8
  297. package/dist/src/utils/derive.d.ts.map +1 -1
  298. package/dist/src/utils/derive.js +409 -7
  299. package/dist/src/utils/derive.js.map +1 -1
  300. package/dist/src/utils/ordered-source.d.ts +38 -0
  301. package/dist/src/utils/ordered-source.d.ts.map +1 -0
  302. package/dist/src/utils/ordered-source.js +45 -0
  303. package/dist/src/utils/ordered-source.js.map +1 -0
  304. package/dist/src/utils/row-inspector.d.ts +36 -0
  305. package/dist/src/utils/row-inspector.d.ts.map +1 -0
  306. package/dist/src/utils/row-inspector.js +49 -0
  307. package/dist/src/utils/row-inspector.js.map +1 -0
  308. package/dist/test/bind/data/data.examples.d.ts +21 -19
  309. package/dist/test/bind/data/data.examples.d.ts.map +1 -1
  310. package/dist/test/bind/data/data.examples.js +122 -122
  311. package/dist/test/bind/data/data.examples.js.map +1 -1
  312. package/dist/test/bind/record/record.examples.d.ts.map +1 -1
  313. package/dist/test/bind/record/record.examples.js +9 -9
  314. package/dist/test/bind/record/record.examples.js.map +1 -1
  315. package/dist/test/calendar/calendar-records.examples.d.ts +228 -0
  316. package/dist/test/calendar/calendar-records.examples.d.ts.map +1 -0
  317. package/dist/test/calendar/calendar-records.examples.js +91 -0
  318. package/dist/test/calendar/calendar-records.examples.js.map +1 -0
  319. package/dist/test/calendar/calendar.examples.d.ts +776 -0
  320. package/dist/test/calendar/calendar.examples.d.ts.map +1 -0
  321. package/dist/test/calendar/calendar.examples.js +336 -0
  322. package/dist/test/calendar/calendar.examples.js.map +1 -0
  323. package/dist/test/decision/journal.examples.d.ts +28 -28
  324. package/dist/test/decision/journal.examples.d.ts.map +1 -1
  325. package/dist/test/decision/journal.examples.js +4 -4
  326. package/dist/test/decision/journal.examples.js.map +1 -1
  327. package/dist/test/decision/queue.examples.d.ts.map +1 -1
  328. package/dist/test/decision/queue.examples.js +5 -7
  329. package/dist/test/decision/queue.examples.js.map +1 -1
  330. package/dist/test/flowchart/flowchart.examples.d.ts +3713 -0
  331. package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -0
  332. package/dist/test/flowchart/flowchart.examples.js +465 -0
  333. package/dist/test/flowchart/flowchart.examples.js.map +1 -0
  334. package/dist/test/plan/plan-events.examples.d.ts +3666 -0
  335. package/dist/test/plan/plan-events.examples.d.ts.map +1 -0
  336. package/dist/test/plan/plan-events.examples.js +773 -0
  337. package/dist/test/plan/plan-events.examples.js.map +1 -0
  338. package/dist/test/plan/plan-records.examples.d.ts +3 -0
  339. package/dist/test/plan/plan-records.examples.d.ts.map +1 -0
  340. package/dist/test/plan/plan-records.examples.js +45 -0
  341. package/dist/test/plan/plan-records.examples.js.map +1 -0
  342. package/dist/test/plan/plan-windows.examples.d.ts +588 -0
  343. package/dist/test/plan/plan-windows.examples.d.ts.map +1 -0
  344. package/dist/test/plan/plan-windows.examples.js +170 -0
  345. package/dist/test/plan/plan-windows.examples.js.map +1 -0
  346. package/dist/test/plan/plan.examples.d.ts +8095 -0
  347. package/dist/test/plan/plan.examples.d.ts.map +1 -0
  348. package/dist/test/plan/plan.examples.js +2500 -0
  349. package/dist/test/plan/plan.examples.js.map +1 -0
  350. package/dist/test/roster/domain.examples.d.ts +367 -0
  351. package/dist/test/roster/domain.examples.d.ts.map +1 -0
  352. package/dist/test/roster/domain.examples.js +72 -0
  353. package/dist/test/roster/domain.examples.js.map +1 -0
  354. package/dist/test/roster/roster-records.examples.d.ts +729 -0
  355. package/dist/test/roster/roster-records.examples.d.ts.map +1 -0
  356. package/dist/test/roster/roster-records.examples.js +86 -0
  357. package/dist/test/roster/roster-records.examples.js.map +1 -0
  358. package/dist/test/roster/roster.examples.d.ts +750 -0
  359. package/dist/test/roster/roster.examples.d.ts.map +1 -0
  360. package/dist/test/roster/roster.examples.js +198 -0
  361. package/dist/test/roster/roster.examples.js.map +1 -0
  362. package/dist/test/roster/warehouse.d.ts +87 -0
  363. package/dist/test/roster/warehouse.d.ts.map +1 -0
  364. package/dist/test/roster/warehouse.js +883 -0
  365. package/dist/test/roster/warehouse.js.map +1 -0
  366. package/dist/test/sheet/sheet-link.examples.d.ts +7 -0
  367. package/dist/test/sheet/sheet-link.examples.d.ts.map +1 -0
  368. package/dist/test/sheet/sheet-link.examples.js +41 -0
  369. package/dist/test/sheet/sheet-link.examples.js.map +1 -0
  370. package/dist/test/sheet/sheet-records.examples.d.ts +421 -0
  371. package/dist/test/sheet/sheet-records.examples.d.ts.map +1 -0
  372. package/dist/test/sheet/sheet-records.examples.js +79 -0
  373. package/dist/test/sheet/sheet-records.examples.js.map +1 -0
  374. package/dist/test/sheet/sheet-transactions.examples.d.ts +7 -0
  375. package/dist/test/sheet/sheet-transactions.examples.d.ts.map +1 -0
  376. package/dist/test/sheet/sheet-transactions.examples.js +58 -0
  377. package/dist/test/sheet/sheet-transactions.examples.js.map +1 -0
  378. package/dist/test/sheet/sheet.examples.d.ts +5562 -0
  379. package/dist/test/sheet/sheet.examples.d.ts.map +1 -0
  380. package/dist/test/sheet/sheet.examples.js +1178 -0
  381. package/dist/test/sheet/sheet.examples.js.map +1 -0
  382. package/dist/test/studio/studio.examples.d.ts.map +1 -1
  383. package/dist/test/studio/studio.examples.js +11 -11
  384. package/dist/test/studio/studio.examples.js.map +1 -1
  385. package/package.json +12 -9
@@ -0,0 +1,484 @@
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 Plan kind factories — `span` / `buckets` / `chart` / `heat` / `table` /
7
+ * `cards` / `events` / `group` — the vocabulary for rows no dataset holds,
8
+ * placed on a canvas by a `Plan.series.rows` entry. Each returns its row's
9
+ * STREAM (`PlanRowsValue` — the row, then its nested rows), so factories
10
+ * compose: a nested `rows:` input is other factories' results, placed under
11
+ * the parent in order (#822). A nesting parent DECLARES its rollup / aggregate
12
+ * / subtotal; the renderer derives the values from the subtree.
13
+ *
14
+ * The per-kind constructors ({@link spanKind} … {@link groupKind}) are shared
15
+ * with the data-driven series, so a hand-built row and a row made from a
16
+ * source entry carry the same kind for the same input.
17
+ *
18
+ * @packageDocumentation
19
+ */
20
+ import { East, Expr, ArrayType, BooleanType, FloatType, OptionType, StringType, variant, some, none, } from "@elaraai/east";
21
+ import { ChartXType, TableAggregateType, TickFormatType, resolveTag, } from "@elaraai/east-ui/internal";
22
+ import { PlanAggregateType, PlanTableEmphasisType, PlanTableSeriesType, PlanTableSplitType, PlanChartAxisType, PlanChartHeightType, PlanHeatCellsType, PlanTableCellType, PlanPortType, PlanCellMarkerType, PlanChartPointType, PlanChartBandPointType, PlanChartLayerType, PlanAxisSideType, PlanBreachType, PlanRollupType, PlanRunType, PlanDecisionMarkType, PlanBucketEventType, PlanChipType, PlanEventMarkType, PlanLaneType, PlanRowKindType, PlanInstantType, PlanHeatScaleType, PlanGroupSummaryType, } from "./types.js";
23
+ import { createHeatCells, createHeatScale, resolveFold, resolveInstant, } from "./builders.js";
24
+ import { makeRow, assembleNested, } from "./assemble.js";
25
+ /**
26
+ * Wraps a Chart layer builder result with the Plan-only channels (axis side,
27
+ * breach threshold, stack series, and how a coarser bucket folds its points).
28
+ *
29
+ * @param layer - The `Chart.Line` / `Column` / `Area` / `Scatter` / `Band` / `ref*` builder result
30
+ * @param channels - The Plan-only channels ({@link PlanLayerChannels})
31
+ * @returns The wrapped layer for `Plan.chart`'s `layers`
32
+ */
33
+ export function createLayer(layer, channels) {
34
+ return { plan: true, layer, channels };
35
+ }
36
+ /** Resolve an axis side literal into a `PlanAxisSideType` value. */
37
+ function axisSide(side) {
38
+ return East.value(variant(side ?? "left", null), PlanAxisSideType);
39
+ }
40
+ /** Envelope the optional breach channel. */
41
+ function breachOpt(breach) {
42
+ if (breach === undefined)
43
+ return East.value(none, OptionType(PlanBreachType));
44
+ const arm = "above" in breach
45
+ ? variant("above", breach.above)
46
+ : variant("below", breach.below);
47
+ return East.value(some(arm), OptionType(PlanBreachType));
48
+ }
49
+ /**
50
+ * A consumed layer point's x coordinate as a canvas instant (#631). The
51
+ * Chart builder already typed the coordinate by the accessor's STATIC type
52
+ * (`ChartXType`: `time` / `number` / `category` — `scaleFor`), so the arm
53
+ * is known here without an East match: a `DateTimeType` x is a `time`
54
+ * instant, a numeric x a `number` instant, a `StringType` x an `ordinal`
55
+ * one. Which arm the canvas accepts is the root axis's; the renderer holds
56
+ * every row against it.
57
+ */
58
+ function pointInstant(x, xScale) {
59
+ switch (xScale) {
60
+ case "time": return East.value(variant("time", x.unwrap("time")), PlanInstantType);
61
+ case "linear": return East.value(variant("number", x.unwrap("number")), PlanInstantType);
62
+ default: return East.value(variant("ordinal", x.unwrap("category")), PlanInstantType);
63
+ }
64
+ }
65
+ /**
66
+ * Consumes one chart-row layer input into `ArrayType(PlanChartLayerType)`
67
+ * arms (one per series for multi-series layers).
68
+ */
69
+ function consumeLayer(input) {
70
+ const wrapped = input.plan === true;
71
+ const layer = wrapped ? input.layer : input;
72
+ const channels = wrapped ? input.channels : {};
73
+ if (layer.kind === "ref") {
74
+ const side = axisSide(channels.axis);
75
+ if (layer.refKind === "line") {
76
+ const o = layer.refOptions;
77
+ if (o.y === undefined) {
78
+ throw new Error("Plan.chart: vertical (x) refLines are not supported — instants are event marks (Plan.events) or the axis now-line");
79
+ }
80
+ return East.value([East.value(variant("refLine", {
81
+ y: o.y, axis: side,
82
+ label: o.label !== undefined ? some(o.label) : none,
83
+ }), PlanChartLayerType)], ArrayType(PlanChartLayerType));
84
+ }
85
+ if (layer.refKind === "band") {
86
+ const o = layer.refOptions;
87
+ if (o.x === undefined) {
88
+ throw new Error("Plan.chart: refBand needs x bounds (two instants) — y-range refBands are not supported on chart rows");
89
+ }
90
+ return East.value([East.value(variant("refBand", {
91
+ from: resolveInstant(o.x[0], "refBand x bounds"),
92
+ to: resolveInstant(o.x[1], "refBand x bounds"),
93
+ label: o.label !== undefined ? some(o.label) : none,
94
+ }), PlanChartLayerType)], ArrayType(PlanChartLayerType));
95
+ }
96
+ if (layer.refKind === "dot") {
97
+ const o = layer.refOptions;
98
+ return East.value([East.value(variant("refDot", {
99
+ t: resolveInstant(o.x, "refDot x"), y: o.y, axis: side,
100
+ label: o.label !== undefined ? some(o.label) : none,
101
+ }), PlanChartLayerType)], ArrayType(PlanChartLayerType));
102
+ }
103
+ throw new Error("Plan.chart: unsupported annotation layer");
104
+ }
105
+ if (layer.kind === "band") {
106
+ const xScale = layer.xScale;
107
+ const side = axisSide(channels.axis ?? layer.style.axis);
108
+ return layer.data.map((_$, s) => East.value(variant("band", {
109
+ points: s.points.map((_$2, p) => East.value({
110
+ t: pointInstant(p.x, xScale), lo: p.low, hi: p.high,
111
+ }, PlanChartBandPointType)),
112
+ axis: side,
113
+ }), PlanChartLayerType));
114
+ }
115
+ // Series layer — line / column / area / scatter. The shared channels are
116
+ // built fresh per use so no East expression is spliced twice.
117
+ if (layer.orientation === "horizontal") {
118
+ throw new Error("Plan.chart: Chart.Bar (horizontal) flips the frame the shared axis owns — use Chart.Column (vertical)");
119
+ }
120
+ const xScale = layer.xScale;
121
+ const stacked = layer.style.stack !== undefined;
122
+ if (layer.mark === "line") {
123
+ return layer.data.map((_$, s) => East.value(variant("line", {
124
+ points: s.points.map((_$2, p) => East.value({ t: pointInstant(p.x, xScale), y: p.value }, PlanChartPointType)),
125
+ axis: axisSide(channels.axis ?? layer.style.axis), breach: breachOpt(channels.breach),
126
+ // A line is a level: a bucket folds its points to their mean (#824).
127
+ fold: resolveFold(channels.fold, "mean"),
128
+ }), PlanChartLayerType));
129
+ }
130
+ if (layer.mark === "area") {
131
+ return layer.data.map((_$, s) => East.value(variant("area", {
132
+ points: s.points.map((_$2, p) => East.value({ t: pointInstant(p.x, xScale), y: p.value }, PlanChartPointType)),
133
+ axis: axisSide(channels.axis ?? layer.style.axis),
134
+ fold: resolveFold(channels.fold, "mean"),
135
+ }), PlanChartLayerType));
136
+ }
137
+ if (layer.mark === "scatter") {
138
+ return layer.data.map((_$, s) => East.value(variant("scatter", {
139
+ points: s.points.map((_$2, p) => East.value({ t: pointInstant(p.x, xScale), y: p.value }, PlanChartPointType)),
140
+ axis: axisSide(channels.axis ?? layer.style.axis),
141
+ }), PlanChartLayerType));
142
+ }
143
+ return layer.data.map((_$, s) => East.value(variant("column", {
144
+ points: s.points.map((_$2, p) => East.value({ t: pointInstant(p.x, xScale), y: p.value }, PlanChartPointType)),
145
+ axis: axisSide(channels.axis ?? layer.style.axis),
146
+ series: channels.series !== undefined
147
+ ? East.value(some(channels.series), OptionType(StringType))
148
+ : (stacked
149
+ ? East.value(some(s.key), OptionType(StringType))
150
+ : East.value(none, OptionType(StringType))),
151
+ breach: breachOpt(channels.breach),
152
+ // A column is an amount: a bucket folds its points to their sum (#824).
153
+ fold: resolveFold(channels.fold, "sum"),
154
+ }), PlanChartLayerType));
155
+ }
156
+ /** Concatenate the consumed layers of a chart row. */
157
+ export function consumeLayers(inputs) {
158
+ const list = Array.isArray(inputs) ? inputs : [inputs];
159
+ return list.reduce((acc, l) => acc.concat(consumeLayer(l)), East.value([], ArrayType(PlanChartLayerType)));
160
+ }
161
+ /**
162
+ * Pins a chart row to an explicit height (composed charts — §4·K3's 120px
163
+ * OUT + DEFECTS row), a CSS px size like every component height.
164
+ *
165
+ * @param size - The CSS px size (`"120px"`)
166
+ * @returns A `PlanChartHeightType` expression with the `fixed` arm
167
+ */
168
+ export function createFixedHeight(size) {
169
+ return East.value(variant("fixed", size), PlanChartHeightType);
170
+ }
171
+ /** Whether a domain bound is temporal — mirrors `Chart.Root`'s `isTemporalBound`. */
172
+ function isTemporalBound(bound) {
173
+ if (bound instanceof Date)
174
+ return true;
175
+ if (typeof bound === "number")
176
+ return false;
177
+ return Expr.type(bound).type === "DateTime";
178
+ }
179
+ /** Whether explicit tick positions are temporal — mirrors `Chart.Root`'s `isTemporalTickValues`. */
180
+ function isTemporalTickValues(tv) {
181
+ if (tv === undefined)
182
+ return false;
183
+ const expr = East.value(tv);
184
+ return Expr.type(expr).value.type === "DateTime";
185
+ }
186
+ /** Envelope a chart-row y-axis input (`Chart.Root`'s y-axis rules — value axes are numeric). */
187
+ function buildChartAxis(a, side) {
188
+ if (a.domain !== undefined && isTemporalBound(a.domain[0])) {
189
+ throw new Error(`Plan.chart: the ${side} axis is a numeric value axis — a temporal extent belongs to the shared time axis (Plan.axis window)`);
190
+ }
191
+ if (isTemporalTickValues(a.tickValues)) {
192
+ throw new Error(`Plan.chart: Date tickValues are only valid on a time axis — the ${side} axis is numeric; pass float tick positions`);
193
+ }
194
+ return East.value({
195
+ domain: a.domain !== undefined
196
+ ? some(variant("number", { min: a.domain[0], max: a.domain[1] }))
197
+ : none,
198
+ tickValues: a.tickValues !== undefined
199
+ ? some(variant("number", a.tickValues))
200
+ : none,
201
+ format: a.format !== undefined ? some(a.format) : none,
202
+ }, PlanChartAxisType);
203
+ }
204
+ /**
205
+ * A span row's kind.
206
+ *
207
+ * @param parts - The row's runs, decisions and ports
208
+ * @param rollup - The declared rollup — `some` on a row whose subtree rolls up into its bands
209
+ * @returns The kind
210
+ */
211
+ export function spanKind(parts, rollup) {
212
+ return East.value(variant("span", {
213
+ runs: East.value((parts.runs ?? []), ArrayType(PlanRunType)),
214
+ decisions: East.value((parts.decisions ?? []), ArrayType(PlanDecisionMarkType)),
215
+ ports: East.value((parts.ports ?? []), ArrayType(PlanPortType)),
216
+ rollup,
217
+ }), PlanRowKindType);
218
+ }
219
+ /**
220
+ * A bucket row's kind.
221
+ *
222
+ * @param parts - The row's lanes, tiles and markers
223
+ * @returns The kind
224
+ */
225
+ export function bucketsKind(parts) {
226
+ return East.value(variant("buckets", {
227
+ lanes: East.value(parts.lanes ?? [], ArrayType(PlanLaneType)),
228
+ events: East.value((parts.events ?? []), ArrayType(PlanBucketEventType)),
229
+ markers: East.value((parts.markers ?? []), ArrayType(PlanCellMarkerType)),
230
+ }), PlanRowKindType);
231
+ }
232
+ /**
233
+ * A chart row's kind — Chart layers consumed AS DATA.
234
+ *
235
+ * @param parts - The row's layers and axes ({@link PlanChartParts})
236
+ * @returns The kind
237
+ */
238
+ export function chartKind(parts) {
239
+ const heightMode = parts.height === undefined
240
+ ? East.value(variant("spark", null), PlanChartHeightType)
241
+ : (typeof parts.height === "string"
242
+ ? East.value(variant(parts.height, null), PlanChartHeightType)
243
+ : East.value(parts.height, PlanChartHeightType));
244
+ return East.value(variant("chart", {
245
+ layers: consumeLayers(parts.layers),
246
+ left: parts.left !== undefined ? some(buildChartAxis(parts.left, "left")) : none,
247
+ right: parts.right !== undefined ? some(buildChartAxis(parts.right, "right")) : none,
248
+ height: heightMode,
249
+ expandedHeight: parts.expandedHeight !== undefined ? some(parts.expandedHeight) : none,
250
+ expandable: parts.expandable ?? false,
251
+ }), PlanRowKindType);
252
+ }
253
+ /**
254
+ * A heat row's kind.
255
+ *
256
+ * @param parts - The row's cells and the scale its derived cells paint on
257
+ * @param aggregate - The declared aggregate — how a parent with no cells of its own derives them from its children
258
+ * @returns The kind
259
+ */
260
+ export function heatKind(parts, aggregate) {
261
+ const cells = parts.cells;
262
+ return East.value(variant("heat", {
263
+ cells: cells !== undefined ? East.value(cells, PlanHeatCellsType) : createHeatCells([]),
264
+ aggregate,
265
+ scale: parts.scale !== undefined
266
+ ? East.value(some(createHeatScale(parts.scale)), OptionType(PlanHeatScaleType))
267
+ : East.value(none, OptionType(PlanHeatScaleType)),
268
+ }), PlanRowKindType);
269
+ }
270
+ /**
271
+ * A table row's kind — its value series (`cells` wraps into one unstyled
272
+ * series, so the renderer has a single representation).
273
+ *
274
+ * @param parts - The row's cells or series, split, format, emphasis and the cells' fold
275
+ * @param aggregate - The declared subtotal mode — how a parent with no values of its own derives them from its children
276
+ * @returns The kind
277
+ * @throws {Error} When both `cells` and `series` are given, or `fold` with `series` (each series declares its own)
278
+ */
279
+ export function tableKind(parts, aggregate) {
280
+ if (parts.cells !== undefined && parts.series !== undefined) {
281
+ throw new Error("Plan.table: pass `cells` (sugar for one plain series) OR `series` — not both");
282
+ }
283
+ if (parts.fold !== undefined && parts.series !== undefined) {
284
+ throw new Error("Plan.table: `fold` goes with `cells` — each `Plan.tableSeries` declares its own fold");
285
+ }
286
+ const series = parts.series !== undefined
287
+ ? East.value(parts.series, ArrayType(PlanTableSeriesType))
288
+ : (parts.cells !== undefined
289
+ ? East.value([East.value({
290
+ cells: East.value(parts.cells, ArrayType(PlanTableCellType)),
291
+ format: none, tone: none, strong: false, rollup: false,
292
+ fold: resolveFold(parts.fold, "sum"),
293
+ }, PlanTableSeriesType)], ArrayType(PlanTableSeriesType))
294
+ : East.value([], ArrayType(PlanTableSeriesType)));
295
+ return East.value(variant("table", {
296
+ series,
297
+ split: resolveTag(parts.split ?? "horizontal", PlanTableSplitType),
298
+ aggregate,
299
+ format: parts.format !== undefined ? some(East.value(parts.format, TickFormatType)) : none,
300
+ emphasis: resolveTag(parts.emphasis ?? "body", PlanTableEmphasisType),
301
+ }), PlanRowKindType);
302
+ }
303
+ /**
304
+ * A cards row's kind.
305
+ *
306
+ * @param chips - The row's shift chips
307
+ * @returns The kind
308
+ */
309
+ export function cardsKind(chips) {
310
+ return East.value(variant("cards", {
311
+ chips: East.value((chips ?? []), ArrayType(PlanChipType)),
312
+ }), PlanRowKindType);
313
+ }
314
+ /**
315
+ * An event row's kind.
316
+ *
317
+ * @param marks - The row's marks
318
+ * @returns The kind
319
+ */
320
+ export function eventsKind(marks) {
321
+ return East.value(variant("events", {
322
+ marks: East.value((marks ?? []), ArrayType(PlanEventMarkType)),
323
+ }), PlanRowKindType);
324
+ }
325
+ /**
326
+ * A group strip's ONE summary declaration (#824) — explicit cells, a declared
327
+ * aggregate, or a plain band — from the two inputs an author writes it with.
328
+ *
329
+ * @param cells - Explicit collapsed-strip cells, if given
330
+ * @param aggregate - The declared strip aggregation over the members' heat cells, if given
331
+ * @param where - Who is asking, for the message
332
+ * @returns The summary
333
+ * @throws {Error} When both are given — a strip shows one or the other
334
+ */
335
+ export function groupSummary(cells, aggregate, where) {
336
+ if (cells !== undefined && aggregate !== undefined) {
337
+ throw new Error(`${where}: give \`summary\` (explicit strip cells) OR \`summaryAggregate\` (cells derived from the ` +
338
+ "members) — a collapsed strip shows one or the other");
339
+ }
340
+ if (cells !== undefined)
341
+ return East.value(variant("cells", East.value(cells, PlanHeatCellsType)), PlanGroupSummaryType);
342
+ if (aggregate !== undefined)
343
+ return East.value(variant("aggregate", resolveTag(aggregate, PlanAggregateType)), PlanGroupSummaryType);
344
+ return East.value(variant("none", null), PlanGroupSummaryType);
345
+ }
346
+ /**
347
+ * A group strip's kind.
348
+ *
349
+ * @param summary - What the collapsed strip shows ({@link groupSummary})
350
+ * @returns The kind
351
+ */
352
+ export function groupKind(summary) {
353
+ return East.value(variant("group", { summary }), PlanRowKindType);
354
+ }
355
+ /**
356
+ * Creates a span row (the Gantt surface) — continuous state-run bars. With
357
+ * nested `rows` it DECLARES a rollup (default `"union"`), and the renderer
358
+ * derives the parent's union / byStatus bands from the subtree's runs (`×k`
359
+ * peak concurrency, quantities summed unit by unit, pessimistic certainty).
360
+ *
361
+ * The data flagship, `planTargetState`, places a planned shutdown this way:
362
+ * a `Plan.series.rows` entry holding one `Plan.span` whose two nested trades
363
+ * roll up into its band.
364
+ *
365
+ * @typeParam K - The axis kind the row's instants ride (inferred; `never` when erased)
366
+ * @param input - The span configuration ({@link PlanSpanInput})
367
+ * @returns The row stream — the span row, then every nested row under it — branded with its kind
368
+ */
369
+ export function createSpan(input) {
370
+ if (input.rows === undefined) {
371
+ const rollup = input.rollup !== undefined ? some(resolveTag(input.rollup, PlanRollupType)) : none;
372
+ return makeRow(input, spanKind(input, rollup));
373
+ }
374
+ // Nesting declares the rollup (default union); the RENDERER derives the
375
+ // bands from the subtree's runs — never precomputed expressions.
376
+ return assembleNested(input, input.rows, spanKind(input, some(resolveTag(input.rollup ?? "union", PlanRollupType))));
377
+ }
378
+ /**
379
+ * Creates a bucket row (the Planner surface, verbatim) — allocation tiles in
380
+ * discrete slots, optionally sub-divided into lanes (AM/PM). WEEK resolution
381
+ * folds lanes into week cells; DAY re-splits — same data, slice-driven.
382
+ *
383
+ * @typeParam K - The axis kind the row's instants ride (inferred; `never` when erased)
384
+ * @param input - The buckets configuration ({@link PlanBucketsInput})
385
+ * @returns A one-row stream, branded with its kind
386
+ */
387
+ export function createBuckets(input) {
388
+ return makeRow(input, bucketsKind(input));
389
+ }
390
+ /**
391
+ * Creates a chart row — Chart layers consumed AS DATA (reified `{t, y}`
392
+ * points on the axis arm the x accessor's type implies), drawn by the canvas
393
+ * itself on the shared scale. Never an embedded `<Chart>`; `Chart.Bar` is a
394
+ * build-time error.
395
+ *
396
+ * @param input - The chart configuration ({@link PlanChartInput})
397
+ * @returns A one-row stream
398
+ */
399
+ export function createChart(input) {
400
+ // Base-input `height` is the row-height override; the chart's own height
401
+ // mode is the `height` field here — spelled apart deliberately.
402
+ const kind = chartKind(input);
403
+ const { height: _rowHeight, ...base } = input;
404
+ return makeRow(base, kind);
405
+ }
406
+ /**
407
+ * Creates a heat row (the Matrix cell recipes on the shared axis) — colour
408
+ * depth, weight bars or segment compositions. With `rows` and no explicit
409
+ * `cells`, the renderer derives the parent's cells — the per-bucket
410
+ * `aggregate` of its direct children's heat cells; the warn ring stays on
411
+ * the breaching child.
412
+ *
413
+ * @typeParam K - The axis kind the row's instants ride (inferred; `never` when erased)
414
+ * @param input - The heat configuration ({@link PlanHeatInput})
415
+ * @returns The row stream — the heat row, then every nested row under it — branded with its kind
416
+ */
417
+ export function createHeat(input) {
418
+ if (input.rows === undefined) {
419
+ const aggregate = input.aggregate !== undefined ? some(resolveTag(input.aggregate, PlanAggregateType)) : none;
420
+ return makeRow(input, heatKind({ ...(input.cells !== undefined ? { cells: input.cells } : {}) }, aggregate));
421
+ }
422
+ // A nesting parent DECLARES its aggregation (default mean) and the scale
423
+ // its derived cells paint on (#824); its cells stay empty and the
424
+ // renderer derives the per-bucket values from the children.
425
+ return assembleNested(input, input.rows, heatKind(input, some(resolveTag(input.aggregate ?? "mean", PlanAggregateType))));
426
+ }
427
+ /**
428
+ * Creates a table row (bucketed numerals under the shared time-bucket columns).
429
+ * With `rows` and no explicit `cells`, the parent prints per-bucket
430
+ * subtotals via `aggregate` — a collapsed parent reads as its subtotal line.
431
+ *
432
+ * @typeParam K - The axis kind the row's instants ride (inferred; `never` when erased)
433
+ * @param input - The table configuration ({@link PlanTableInput})
434
+ * @returns The row stream — the table row, then every nested row under it — branded with its kind
435
+ */
436
+ export function createTable(input) {
437
+ if (input.rows === undefined) {
438
+ const aggregate = input.aggregate !== undefined ? some(resolveTag(input.aggregate, TableAggregateType)) : none;
439
+ return makeRow(input, tableKind(input, aggregate));
440
+ }
441
+ // A nesting parent DECLARES its subtotal mode + format; the renderer
442
+ // derives the per-bucket cells from the children.
443
+ return assembleNested(input, input.rows, tableKind(input, some(resolveTag(input.aggregate ?? "sum", TableAggregateType))));
444
+ }
445
+ /**
446
+ * Creates a cards row (the Roster surface on the shared axis) — shift chips
447
+ * spanning whole buckets.
448
+ *
449
+ * @typeParam K - The axis kind the row's instants ride (inferred; `never` when erased)
450
+ * @param input - The cards configuration ({@link PlanCardsInput})
451
+ * @returns A one-row stream, branded with its kind
452
+ */
453
+ export function createCards(input) {
454
+ return makeRow(input, cardsKind(input.chips));
455
+ }
456
+ /**
457
+ * Creates an event row — ● milestone / ◇◆ decision / ▲ exception marks at
458
+ * their instants on the shared scale (Gantt milestones live here).
459
+ *
460
+ * @typeParam K - The axis kind the row's instants ride (inferred; `never` when erased)
461
+ * @param input - The events configuration ({@link PlanEventsInput})
462
+ * @returns A one-row stream, branded with its kind
463
+ */
464
+ export function createEvents(input) {
465
+ return makeRow(input, eventsKind(input.marks));
466
+ }
467
+ /**
468
+ * Creates a group strip — the canvas-level heterogeneous container. Collapsed
469
+ * it rests as its summary heat strip — explicit `summary` cells, or the
470
+ * renderer-derived `summaryAggregate` declaration (neither ⇒ a plain band);
471
+ * expanding swaps the strip for the member rows in place.
472
+ *
473
+ * @typeParam K - The axis kind the group's instants ride (inferred; `never` when erased)
474
+ * @param input - The group configuration ({@link PlanGroupInput})
475
+ * @returns The row stream — the group strip, then every member under it — branded with its kind
476
+ * @throws {Error} When both `summary` and `summaryAggregate` are given
477
+ */
478
+ export function createGroup(input) {
479
+ const kind = groupKind(groupSummary(input.summary, input.summaryAggregate, "Plan.group"));
480
+ if (input.rows === undefined)
481
+ return makeRow(input, kind);
482
+ return assembleNested(input, input.rows, kind);
483
+ }
484
+ //# sourceMappingURL=factories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factories.js","sourceRoot":"","sources":["../../../src/plan/factories.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGH,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,WAAW,EACX,SAAS,EACT,UAAU,EACV,UAAU,EACV,OAAO,EACP,IAAI,EACJ,IAAI,GACP,MAAM,eAAe,CAAC;AAEvB,OAAO,EACH,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,UAAU,GAOb,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAGH,iBAAiB,EAEjB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAElB,iBAAiB,EACjB,mBAAmB,EAEnB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAEhB,cAAc,EACd,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GAOvB,MAAM,YAAY,CAAC;AACpB,OAAO,EACH,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,GAEhE,MAAM,eAAe,CAAC;AACvB,OAAO,EAGH,OAAO,EACP,cAAc,GACjB,MAAM,eAAe,CAAC;AAwCvB;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,KAAiB,EAAE,QAA2B;IACtE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC3C,CAAC;AAED,oEAAoE;AACpE,SAAS,QAAQ,CAAC,IAAqC;IACnD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,MAAM,EAAE,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAC;AACvE,CAAC;AAED,4CAA4C;AAC5C,SAAS,SAAS,CAAC,MAAmC;IAClD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,OAAO,IAAI,MAAM;QACzB,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC;QAChC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACrC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,YAAY,CAAC,CAAuB,EAAE,MAAkC;IAC7E,QAAQ,MAAM,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAG,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;QACrF,KAAK,QAAQ,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;QACzF,OAAO,CAAC,CAAO,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;IAChG,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,KAA0B;IAC5C,MAAM,OAAO,GAAI,KAA0B,CAAC,IAAI,KAAK,IAAI,CAAC;IAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAE,KAA0B,CAAC,KAAK,CAAC,CAAC,CAAE,KAAoB,CAAC;IAClF,MAAM,QAAQ,GAAsB,OAAO,CAAC,CAAC,CAAE,KAA0B,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAExF,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,KAAK,CAAC,UAA4B,CAAC;YAC7C,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,mHAAmH,CAAC,CAAC;YACzI,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;oBAC7C,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI;oBAClB,KAAK,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;iBACtD,CAAC,EAAE,kBAAkB,CAAC,CAAC,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,KAAK,CAAC,UAA4B,CAAC;YAC7C,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,sGAAsG,CAAC,CAAC;YAC5H,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;oBAC7C,IAAI,EAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAA4C,EAAE,kBAAkB,CAAC;oBAC5F,EAAE,EAAK,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAA4C,EAAE,kBAAkB,CAAC;oBAC5F,KAAK,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;iBACtD,CAAC,EAAE,kBAAkB,CAAC,CAAC,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,KAAK,CAAC,UAA2B,CAAC;YAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;oBAC5C,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAA4C,EAAE,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI;oBACjG,KAAK,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;iBACtD,CAAC,EAAE,kBAAkB,CAAC,CAAC,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;YACxD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBACxC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI;aACtD,EAAE,sBAAsB,CAAC,CAAC;YAC3B,IAAI,EAAE,IAAI;SACb,CAAC,EAAE,kBAAkB,CAAC,CAA4C,CAAC;IACxE,CAAC;IAED,yEAAyE;IACzE,8DAA8D;IAC9D,IAAI,KAAK,CAAC,WAAW,KAAK,YAAY,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,uGAAuG,CAAC,CAAC;IAC7H,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC;IAChD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;YACxD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,kBAAkB,CAAC,CAAC;YAC9G,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrF,qEAAqE;YACrE,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;SAC3C,CAAC,EAAE,kBAAkB,CAAC,CAA4C,CAAC;IACxE,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;YACxD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,kBAAkB,CAAC,CAAC;YAC9G,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;YACjD,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;SAC3C,CAAC,EAAE,kBAAkB,CAAC,CAA4C,CAAC;IACxE,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;YAC3D,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,kBAAkB,CAAC,CAAC;YAC9G,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;SACpD,CAAC,EAAE,kBAAkB,CAAC,CAA4C,CAAC;IACxE,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;QAC1D,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC9G,IAAI,EAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;QACnD,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,SAAS;YACjC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC,OAAO;gBACN,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;gBACjD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;QACnD,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;QAClC,wEAAwE;QACxE,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;KAC1C,CAAC,EAAE,kBAAkB,CAAC,CAA4C,CAAC;AACxE,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,aAAa,CAAC,MAAmD;IAC7E,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,MAAM,CACd,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAA4C,EAClF,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAChD,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAoC;IAClE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,mBAAmB,CAAC,CAAC;AACnE,CAAC;AAYD,qFAAqF;AACrF,SAAS,eAAe,CAAC,KAA4C;IACjE,IAAI,KAAK,YAAY,IAAI;QAAE,OAAO,IAAI,CAAC;IACvC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAQ,IAAI,CAAC,IAAI,CAAC,KAAa,CAAiC,CAAC,IAAI,KAAK,UAAU,CAAC;AACzF,CAAC;AAED,oGAAoG;AACpG,SAAS,oBAAoB,CAAC,EAA6B;IACvD,IAAI,EAAE,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAA8C,CAAmC,CAAC;IAC1G,OAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,CAA0B,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AAC/E,CAAC;AAED,gGAAgG;AAChG,SAAS,cAAc,CAAC,CAAqB,EAAE,IAAsB;IACjE,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,sGAAsG,CAAC,CAAC;IACnJ,CAAC;IACD,IAAI,oBAAoB,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,mEAAmE,IAAI,6CAA6C,CAAC,CAAC;IAC1I,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC;QACd,MAAM,EAAE,CAAC,CAAC,MAAM,KAAK,SAAS;YAC1B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAkC,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAkC,EAAE,CAAC,CAAC;YACnI,CAAC,CAAC,IAAI;QACV,UAAU,EAAE,CAAC,CAAC,UAAU,KAAK,SAAS;YAClC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAsD,CAAC,CAAC;YACnF,CAAC,CAAC,IAAI;QACV,MAAM,EAAE,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;KACzD,EAAE,iBAAiB,CAAC,CAAC;AAC1B,CAAC;AAwBD;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CACpB,KAAyC,EACzC,MAAsD;IAEtD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;QAC9B,IAAI,EAAO,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAA+C,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;QAC/G,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAwD,EAAE,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACtI,KAAK,EAAM,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAuD,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;QACzH,MAAM;KACT,CAAC,EAAE,eAAe,CAAC,CAAC;AACzB,CAAC;AAmBD;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,KAA4C;IACpE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;QACjC,KAAK,EAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;QAC/D,MAAM,EAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAuD,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC/H,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAA6D,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC;KACxI,CAAC,EAAE,eAAe,CAAC,CAAC;AACzB,CAAC;AA+BD;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS;QACzC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,mBAAmB,CAAC;QACzD,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;YAC/B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,mBAAmB,CAAC;YAC9D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;IACzD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE;QAC/B,MAAM,EAAM,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC;QACvC,IAAI,EAAQ,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QACtF,KAAK,EAAO,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QACzF,MAAM,EAAM,UAAU;QACtB,cAAc,EAAE,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI;QACtF,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,KAAK;KACxC,CAAC,EAAE,eAAe,CAAC,CAAC;AACzB,CAAC;AAiBD;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CACpB,KAAyC,EACzC,SAA4D;IAE5D,MAAM,KAAK,GAAG,KAAK,CAAC,KAA0D,CAAC;IAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;QAC9B,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC;QACvF,SAAS;QACT,KAAK,EAAE,KAAK,CAAC,KAAK,KAAK,SAAS;YAC5B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;YAC/E,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;KACxD,CAAC,EAAE,eAAe,CAAC,CAAC;AACzB,CAAC;AA6BD;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CACrB,KAA0C,EAC1C,SAA6D;IAE7D,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;IACpG,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;IAC5G,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS;QACrC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAA4D,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAChH,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS;YACxB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;oBACrB,KAAK,EAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAyD,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;oBACjH,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK;oBACtD,IAAI,EAAI,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;iBACzC,EAAE,mBAAmB,CAAC,CAAC,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;YACzD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE;QAC/B,MAAM;QACN,KAAK,EAAM,UAAU,CAAC,KAAK,CAAC,KAAK,IAAI,YAAY,EAAE,kBAAkB,CAAC;QACtE,SAAS;QACT,MAAM,EAAK,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QAC7F,QAAQ,EAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,EAAE,qBAAqB,CAAC;KACzE,CAAC,EAAE,eAAe,CAAC,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,KAAuE;IAC7F,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE;QAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAgD,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;KAC3G,CAAC,EAAE,eAAe,CAAC,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,KAA4E;IACnG,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;QAChC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAqD,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;KACrH,CAAC,EAAE,eAAe,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,YAAY,CACxB,KAAwD,EACxD,SAAmF,EACnF,KAAa;IAEb,IAAI,KAAK,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CACX,GAAG,KAAK,4FAA4F;YACpG,qDAAqD,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACzH,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACrI,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAAC;AACnE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,OAAiD;IACvE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC;AACtE,CAAC;AAwBD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,UAAU,CAAwC,KAAuB;IACrF,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAClG,OAAO,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAqB,CAAC;IACvE,CAAC;IACD,wEAAwE;IACxE,iEAAiE;IACjE,OAAO,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,IAAI,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAqB,CAAC;AAC7I,CAAC;AAaD;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAwC,KAA0B;IAC3F,OAAO,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAqB,CAAC;AAClE,CAAC;AAcD;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,KAAqB;IAC7C,yEAAyE;IACzE,gEAAgE;IAChE,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAC9C,OAAO,OAAO,CAAC,IAAwB,EAAE,IAAI,CAAC,CAAC;AACnD,CAAC;AAmBD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAwC,KAAuB;IACrF,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9G,OAAO,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,CAAqB,CAAC;IACrI,CAAC;IACD,yEAAyE;IACzE,kEAAkE;IAClE,4DAA4D;IAC5D,OAAO,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EACnC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,IAAI,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAqB,CAAC;AAC7G,CAAC;AAoBD;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAwC,KAAwB;IACvF,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/G,OAAO,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAqB,CAAC;IAC3E,CAAC;IACD,qEAAqE;IACrE,kDAAkD;IAClD,OAAO,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EACnC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAqB,CAAC;AAC9G,CAAC;AAaD;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAwC,KAAwB;IACvF,OAAO,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAqB,CAAC;AACtE,CAAC;AAaD;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAwC,KAAyB;IACzF,OAAO,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAqB,CAAC;AACvE,CAAC;AAoBD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAwC,KAAwB;IACvF,MAAM,IAAI,GAAG,SAAS,CAAC,YAAY,CAC/B,KAAK,CAAC,OAA4D,EAAE,KAAK,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC;IAC/G,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC,KAAK,EAAE,IAAI,CAAqB,CAAC;IAC9E,OAAO,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAqB,CAAC;AACvE,CAAC"}