@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,290 @@
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's canvas — `Plan.Root`, which assembles the canvas's root
7
+ * ({@link PlanRootType}): its rows over `data`, its axis, links, editing
8
+ * session and the rest. `<Plan>` carries it in its payload (#1191),
9
+ * beside the event kinds and their resources.
10
+ *
11
+ * @packageDocumentation
12
+ */
13
+ import { type EastType, type ExprType, type SubtypeExprOrValue, Expr, ArrayType, BooleanType, DictType, FunctionType, NullType, OptionType, StringType } from "@elaraai/east";
14
+ import { DensityType, DragEventType, StatusValueType, UIComponentType, type DensityLiteral, type PagedSourceLike, type PickHandle, type StatusValueLiteral } from "@elaraai/east-ui";
15
+ import { SliceBindType, type RecordSliceChromeOptions, type SliceAffordanceLiteral } from "@elaraai/east-ui/internal";
16
+ import { PlanGrainType, type PlanGrainLiteral, PlanLinkType, PlanRowIdType, PlanGroupToggleEventType, PlanElementRefType, PlanBlocksType, PlanUiBindType, type PlanAxisKindLiteral, type PlanAxisInput } from "./types.js";
17
+ import { PlanRootType } from "./ir.js";
18
+ import { PlanSeriesType, type PlanSeriesInput } from "./series.js";
19
+ /**
20
+ * The Plan's editing session (#880) — the Sheet's, over the canvas's entries:
21
+ * every dropped card and every moved or resized element (#825) is a DRAFT of
22
+ * the entry it was made on, each gesture one undoable transaction, and Save
23
+ * one checked, idempotent batch against the base the drafts began from.
24
+ *
25
+ * @remarks
26
+ * The entries are `data`'s top-level entries: a gesture on a row at any depth
27
+ * drafts the entry its row came from (the whole subtree rides in it), and the
28
+ * canvas draws a draft by deriving the entry's rows again — exactly what
29
+ * Save leaves. The callbacks are East functions over the canvas's own entry
30
+ * type `R` and key type `K`:
31
+ *
32
+ * - `onApply(Editing.Types.ChangeSet(R, K)) → Editing.Types.ApplyResult`
33
+ * commits a batch — sync or async. Its base is the inline `Dict`'s snapshot,
34
+ * or a paged source's revision; a batch against a source that moved is
35
+ * refused, never rebased.
36
+ * - `onUpdate(Dict<K, R>)` is the inline adapter instead: with
37
+ * `data={liveHandle}` it applies each batch with `Editing.apply` over the
38
+ * handle's latest `Dict` and writes the whole result — idempotent across
39
+ * retries. Exclusive with `onApply`.
40
+ * - `onPatch(Plan.Types.PatchEvent(R))` observes every gesture.
41
+ * - `ready(R, K) → Editing.Types.Readiness` is the author's check over one
42
+ * drafted entry; a refusal holds Save and names the entry.
43
+ *
44
+ * @property onApply - Commit one checked batch (sync or async)
45
+ * @property onUpdate - The inline adapter's writer — the whole collection with the batch applied (requires `data={liveHandle}`)
46
+ * @property onPatch - Observe every gesture
47
+ * @property mode - `"batch"` (Save sends) or `"auto"` (each ready gesture goes at once)
48
+ * @property ready - The author's readiness check over a drafted entry
49
+ */
50
+ export interface PlanEditingConfig {
51
+ /** Commit one checked batch — `Fn(Editing.Types.ChangeSet(R, K)) → Editing.Types.ApplyResult`, sync or async. */
52
+ onApply?: ExprType<EastType>;
53
+ /** The inline adapter's writer — `Fn(Dict<K, R>) → Null`; requires `data={liveHandle}`, exclusive with `onApply`. */
54
+ onUpdate?: ExprType<EastType>;
55
+ /** Observe every gesture — `Fn(Plan.Types.PatchEvent(R)) → Null`. */
56
+ onPatch?: ExprType<EastType>;
57
+ /** When a ready batch goes: on Save (`"batch"`, the default), or at once (`"auto"`). */
58
+ mode?: "batch" | "auto";
59
+ /** The author's check over one drafted entry — `Fn(R, K) → Editing.Types.Readiness`. */
60
+ ready?: ExprType<EastType>;
61
+ }
62
+ /**
63
+ * A whole-value bind handle (`State.bind` / `Data.bind`) over a keyed
64
+ * collection — accepted as `data`. The canvas reads it as the inline arm, and
65
+ * `editing.onUpdate` writes each applied batch back through it (#880).
66
+ */
67
+ export interface PlanBindHandle {
68
+ /** The handle's read. */
69
+ read: (...args: never[]) => Expr<DictType<EastType, EastType>>;
70
+ }
71
+ /**
72
+ * The canvas's configuration — {@link createPlanRoot}'s (`Plan.Root`), and
73
+ * what `<Plan>` takes for its rows over `data` (#1191).
74
+ *
75
+ * @remarks
76
+ * `K` is the canvas's axis kind, inferred from `axis` ALONE (`series` is a
77
+ * `NoInfer` site): a `Plan.axis.number(...)` fixes `K = "number"`, and every
78
+ * series in the array must then carry a kind within it — a `"time"` series
79
+ * is a compile error at the tag. An erased axis (a `$.let`-bound expression,
80
+ * a variant value) leaves `K` at every kind, so the render-time diagnostic
81
+ * decides; an erased series (`$.const`-bound list, East expression) is
82
+ * accepted on any axis for the same reason.
83
+ *
84
+ * @typeParam K - The canvas's axis kind — inferred from `axis`
85
+ * @property axis - The shared axis declaration (`Plan.axis` / `.time` / `.number` / `.ordinal`)
86
+ * @property data - The source — a `Dict<K, R>` value/expression, a bind handle over one, or a paged source of one; pairs with `series` or `pick`
87
+ * @property series - The row series over `data` — `Plan.series.*` values; the list IS the layout; exclusive with `pick`
88
+ * @property pick - A bound series library (`Plan.pick`) — the canvas shows the picked series and mounts the library panel; exclusive with `series`
89
+ * @property links - The link graph (R1) — run-edge quantity links (`Plan.link` values)
90
+ * @property grain - Initial grain (`"group"` / `"resource"`; default resource)
91
+ * @property popover - Generalized click-popover resolver over the element ref (`none` result ⇒ no surface)
92
+ * @property hover - Generalized hovercard resolver over the element ref (`none` result ⇒ no surface)
93
+ * @property expandRender - The R2 developer render for rows declaring `expand` (called with the row's id)
94
+ * @property expandGutter - The R2 gutter render — fills the expanded row's grown gutter cell (called with the row's id)
95
+ * @property editing - The editing session (#880) — every dropped card, move and resize a draft, saved as one checked batch
96
+ * @property slice - Bound slice chrome (toolbar affordances)
97
+ * @property footer - Status-footer items
98
+ * @property id - DnD target identity — what a Library beside the Plan reaches it by
99
+ * @property sources - The ids of the Libraries beside the Plan whose cards it takes; its own library panel's need none
100
+ * @property canDrop - IR-level drop veto (the ⊘ stage) — consulted before a drop becomes a draft
101
+ * @property onSelect - Row click (selection)
102
+ * @property onElementClick - A click on any element — run, tile, mark, chip, cell or link ribbon — by its ref (#824)
103
+ * @property onGroupToggle - A row with children expanded or collapsed
104
+ * @property onGrainChange - Grain segment change
105
+ * @property ui - A bound interaction state (`State.bind` at `Plan.Types.UiState`, #824)
106
+ * @property style - Sizing, density and gutter width
107
+ */
108
+ export interface PlanConfig<K extends PlanAxisKindLiteral = PlanAxisKindLiteral> {
109
+ /** The shared axis declaration (`Plan.axis` / `.time` / `.number` / `.ordinal`) — fixes the canvas kind `K`.
110
+ * A time or number axis states its `window`, or the canvas binds a `slice` whose range supplies it —
111
+ * there is no fit to the data (#822), inline or paged. */
112
+ axis: PlanAxisInput<K>;
113
+ /** The source — a KEYED collection: a `Dict<K, R>` value or expression (a
114
+ * `$.let`-bound map, `Data.bind(...).read()`) or a whole-value bind handle
115
+ * over one (`data={handle}` — what `editing.onUpdate` writes back
116
+ * through) for the INLINE arm, or a `$.let`-bound paged handle over one
117
+ * (`Data.bindPaged(ops)`) for the PAGED arm; the East type is the
118
+ * discriminant. Any key type: a row's path
119
+ * starts with its entry's key (the String itself, any other key as its
120
+ * `.east` text), so the canvas is addressed by the keys the source is
121
+ * searched and windowed by. Entries may be any East type — a struct, a
122
+ * recursive node, or a collection (`groupToDicts`' groups).
123
+ *
124
+ * A positional collection is refused — key it at the call site with
125
+ * `rows.toDict((_$, r) => r.id)`, which makes the choice explicit. */
126
+ data: SubtypeExprOrValue<DictType<EastType, EastType>> | PlanBindHandle | PagedSourceLike;
127
+ /** The row series over `data` — `Plan.series.*` values, a TS array or an
128
+ * East expression of `ArrayType(Plan.Types.Series(R))`.
129
+ *
130
+ * The list IS the layout (#822): each series contributes one contiguous
131
+ * block, top to bottom in declared order, its rows in source order, each
132
+ * parent followed by its subtree. Series keys must be unique across the
133
+ * whole series tree — a TS array is checked here.
134
+ *
135
+ * Every series' axis kind must lie within the axis's (`K`): a `"time"`
136
+ * series on a `"number"` axis fails to compile here. */
137
+ series?: PlanSeriesInput<NoInfer<K>>;
138
+ /**
139
+ * A bound series library from `Plan.pick` — the pickable form of `series`.
140
+ *
141
+ * @remarks
142
+ * Exclusive with `series`, because the handle already CARRIES the series
143
+ * list; passing both would say it twice and leave the two free to disagree.
144
+ * Give one or the other: `series` for a fixed canvas, `pick` for a canvas
145
+ * whose rows the user chooses.
146
+ *
147
+ * The Plan does the rest — it feeds itself the picked series (in the pick's
148
+ * order, which is the layout) and mounts the library panel as chrome, the
149
+ * way `slice` mounts the rail.
150
+ *
151
+ * A pick is STATE, so a Plan carrying one must sit inside a `Reactive` —
152
+ * `Plan.pick` binds through `State.bind`, and a bind outside a reactive
153
+ * evaluation promotes the enclosing function to async.
154
+ */
155
+ pick?: PickHandle<ReturnType<typeof PlanSeriesType>>;
156
+ /** The link graph (R1) — run-edge quantity links (`Plan.link` values, map-derivable
157
+ * from data, their ends `Plan.ref(series, …path)`); the links-focus control gathers a
158
+ * row's transitive family over it. */
159
+ links?: SubtypeExprOrValue<ArrayType<PlanLinkType>>;
160
+ /** Initial grain (default `"resource"`). */
161
+ grain?: PlanGrainLiteral | SubtypeExprOrValue<PlanGrainType>;
162
+ /** Generalized click-popover resolver — called with the clicked element's
163
+ * ref (`run` / `event` / `chip` / `mark` / `cell` arm, each carrying the
164
+ * row's id, or a ribbon's `link` arm); returning `none` opens no surface. */
165
+ popover?: SubtypeExprOrValue<FunctionType<[PlanElementRefType], OptionType<UIComponentType>>>;
166
+ /** Generalized hovercard resolver — the hover twin of `popover`. */
167
+ hover?: SubtypeExprOrValue<FunctionType<[PlanElementRefType], OptionType<UIComponentType>>>;
168
+ /** The R2 developer render — called with the row's id when a row declaring
169
+ * `expand` focuses; builds the mounted body from captured data /
170
+ * bind-handles. */
171
+ expandRender?: SubtypeExprOrValue<FunctionType<[PlanRowIdType], UIComponentType>>;
172
+ /** The R2 GUTTER render — an expanded row's gutter cell grows with the row
173
+ * (one tall cell, top-aligned under the row's name), and this fills the
174
+ * space that opens up: the identity, measures or controls that only earn
175
+ * their place once the row has the canvas. Called with the same row id
176
+ * as `expandRender`. */
177
+ expandGutter?: SubtypeExprOrValue<FunctionType<[PlanRowIdType], UIComponentType>>;
178
+ /** The editing session (#880) — see {@link PlanEditingConfig}. Without it the canvas takes no gesture: no card
179
+ * lands and nothing moves. */
180
+ editing?: PlanEditingConfig;
181
+ /** Bound slice chrome — the handle + toolbar affordances (default `["cohort","filter","search","range","resolution","brush","summary"]`). */
182
+ slice?: {
183
+ /** The bound handle from `Slice.bind`. */
184
+ slice: SubtypeExprOrValue<SliceBindType>;
185
+ /** The toolbar affordances, in order. */
186
+ affordances?: SliceAffordanceLiteral[];
187
+ } | RecordSliceChromeOptions;
188
+ /** Status-footer items (`end: true` right-aligns). */
189
+ footer?: {
190
+ /** The footer text. */
191
+ text: SubtypeExprOrValue<StringType>;
192
+ /** Optional status tint. */
193
+ tone?: StatusValueLiteral | SubtypeExprOrValue<StatusValueType>;
194
+ /** Right-align the item. */
195
+ end?: boolean;
196
+ }[];
197
+ /** DnD target identity — names the Plan in drag-grammar cell refs, which is how a Library beside the Plan
198
+ * reaches it: its cards land only on a Plan with an `id` whose `sources` lists it. The Plan's own library
199
+ * panel needs neither — an author's tab's cards land without them (#1259). A card lands only on a row whose
200
+ * series declares `edit.create` (where it lands and how it becomes an item). The canvas's own elements
201
+ * move whether or not it has an `id` — where their series declares a move's fields (`edit.key` and
202
+ * `start` / `end`, or `at`, #825). Each is a draft of the root's `editing` session. */
203
+ id?: string;
204
+ /** The ids of the Libraries beside the Plan whose cards it takes (`add`), reached by its `id` — its own
205
+ * library panel's need none (omit = no Library beside it). */
206
+ sources?: string[];
207
+ /** IR-level drop veto — consulted with the candidate event (`add` for a card; `move` or `resize` for an
208
+ * element moved, #825; a `CellRef.row` is the row id's canonical text) where the drag rests and again
209
+ * before it becomes a draft; `false` ⇒ the ⊘ invalid stage; a throwing predicate fails open. */
210
+ canDrop?: SubtypeExprOrValue<FunctionType<[DragEventType], BooleanType>>;
211
+ /** Row click (selection) — the row's id. */
212
+ onSelect?: SubtypeExprOrValue<FunctionType<[PlanRowIdType], NullType>>;
213
+ /** A click on any element, by its ref (#824) — `run` (`{ row, run }`), `event` (`{ row, event }`),
214
+ * `mark` (an event mark or a decision diamond, `{ row, mark }`), `chip` (`{ row, chip }`), `cell`
215
+ * (`{ row, at }` — the bucket's instant, not an index) or a link ribbon's `link` (`{ key, from, to }`).
216
+ * One function over one variant, as the `popover` / `hover` resolvers are: `ref.match({ … })`. */
217
+ onElementClick?: SubtypeExprOrValue<FunctionType<[PlanElementRefType], NullType>>;
218
+ /** A row with children expanded or collapsed (fires after the in-place swap). */
219
+ onGroupToggle?: SubtypeExprOrValue<FunctionType<[PlanGroupToggleEventType], NullType>>;
220
+ /** Grain segment change (grain is Plan-local state; initial via `grain`). */
221
+ onGrainChange?: SubtypeExprOrValue<FunctionType<[PlanGrainType], NullType>>;
222
+ /**
223
+ * The canvas's interaction state, held by the host (#824) — a
224
+ * `State.bind([Plan.Types.UiState], key, Plan.uiState())` handle.
225
+ *
226
+ * @remarks
227
+ * Bound, the canvas reads it and writes the user's actions back: the
228
+ * selection, the rows folded or opened against what they declare, the
229
+ * charts expanded. Write it from outside to select a row, fold or open one,
230
+ * expand a chart, or — through `focus` — bring a row into view (a deep
231
+ * link, a list beside the canvas); the canvas spends a `focus` request
232
+ * once it has. Unbound, the canvas keeps the state itself and persists the
233
+ * user's folds and charts under its storage key (#813).
234
+ *
235
+ * A write re-renders whatever reads the state, like any `State.bind`: read
236
+ * it in the `Reactive` that renders the canvas only for what depends on it.
237
+ */
238
+ ui?: SubtypeExprOrValue<PlanUiBindType>;
239
+ /** Sizing (#320), density, gutter width. */
240
+ style?: {
241
+ /** Definite height (`"fill"` fills the parent). */
242
+ height?: SubtypeExprOrValue<StringType>;
243
+ /** Max-height cap. */
244
+ maxHeight?: SubtypeExprOrValue<StringType>;
245
+ /** Row rhythm. */
246
+ density?: DensityLiteral | SubtypeExprOrValue<DensityType>;
247
+ /** Gutter width — a CSS px size (`"168px"`; default 168). */
248
+ gutterWidth?: SubtypeExprOrValue<StringType>;
249
+ };
250
+ }
251
+ /**
252
+ * Creates the canvas's root — the {@link PlanRootType} value `<Plan>`
253
+ * carries as its payload's `plan` — for the tests and the renderer's own
254
+ * fixtures, which read it whole.
255
+ *
256
+ * @typeParam K - The canvas's axis kind, inferred from `config.axis`; every series must lie within it
257
+ * @param config - The canvas's configuration ({@link PlanConfig})
258
+ * @returns An East expression of {@link PlanRootType}
259
+ * @throws {Error} When `data` is not a keyed source, `series` / `pick` are both or neither given, two series share a
260
+ * key, a bound series list reads another key type than `data`, or the axis states no window and no slice is bound
261
+ *
262
+ * @remarks
263
+ * Window and resolution have no callbacks by design: they are slice writes
264
+ * (`setRange` / `setResolution`) — hosts observe the slice. A change to the
265
+ * data — a dropped card, a moved or resized element — is a draft of the
266
+ * `editing` session, saved as one checked batch (#880, #825).
267
+ */
268
+ export declare function createPlanRoot<K extends PlanAxisKindLiteral = PlanAxisKindLiteral>(config: PlanConfig<K>): ExprType<PlanRootType>;
269
+ /**
270
+ * The canvas's configuration with `data` optional (#1191): a Plan of event
271
+ * kinds, or of `rows` alone, has none.
272
+ *
273
+ * @internal
274
+ */
275
+ export type PlanCanvasOptions = Omit<PlanConfig, "data"> & {
276
+ data?: PlanConfig["data"];
277
+ };
278
+ /**
279
+ * Builds the canvas's root (#1191): its rows over `data`, and then `extra`,
280
+ * fixed blocks every window serves alike — or, with no `data`, `extra`
281
+ * alone.
282
+ *
283
+ * @param config - The canvas's configuration, `data` optional
284
+ * @param extra - The fixed blocks after `data`'s: a Plan's `rows`
285
+ * @returns An East expression of {@link PlanRootType}
286
+ * @throws {Error} As {@link createPlanRoot} does; and with no `data`, a `series`, `pick` or `editing`, each of which reads it
287
+ * @internal
288
+ */
289
+ export declare function buildPlanRoot(config: PlanCanvasOptions, extra: ExprType<PlanBlocksType> | undefined): ExprType<PlanRootType>;
290
+ //# sourceMappingURL=root.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../../src/plan/root.ts"],"names":[],"mappings":"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"}