@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 @@
1
+ {"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/flowchart/payload.ts"],"names":[],"mappings":"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B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ/B,CAAC;AAEH,4DAA4D;AAC5D,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC;AAE/D;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA0E,CAAC;AAM1G;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG;IACrD,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAC;IACd,oHAAoH;IACpH,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,+FAA+F;IAC/F,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,OAAO,EAAE,MAAM,CAAC;CACnB,CASA;AAMD;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IAClC,0BAA0B;IAC1B,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACzD,4BAA4B;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,MAAM,EAAE,OAAO,CAAC;IAChB,4BAA4B;IAC5B,OAAO,EAAE,OAAO,CAAC;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,QAAQ;IACnD,yBAAyB;IACzB,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC;CAC3C;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,UAAU,IAAI,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;AAE9I;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACtC,mKAAmK;IACnK,KAAK,CAAC,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;IAClD,qKAAqK;IACrK,UAAU,CAAC,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;CACzD;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,sBAAsB;IAC3D;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;IAChD,wGAAwG;IACxG,QAAQ,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;IACrD,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAgQD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CA8DpF"}
@@ -0,0 +1,521 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * The flowchart's payload (#1244, `Flowchart Builder Spec.md` §4.1, §4.4,
7
+ * §5.2): what `<Flowchart>` hands the renderer through its `Flowchart`
8
+ * carrier — its canvas, where its flows come from, the flow it opens first,
9
+ * its library's tabs, its inspector, whether it is read only, and its name —
10
+ * and every refusal of its props, made when the surface is built.
11
+ *
12
+ * Its flows come from one of two sources:
13
+ * - `record`, an e3 record of `Flowchart.Types.Flows` — flows by name — bound
14
+ * with its patch mutation. The handle crosses the payload as the query
15
+ * builder's does: its `read`, its `history` and its patch write — and, for
16
+ * the editing session over the flows (#1246), its Save: the session's keyed
17
+ * batch committed through the patch mutation by `Record.onApply(record, {
18
+ * keyed: true })`. A record always holds flows by name (ruled 2026-10-07:
19
+ * e3's patch mutation writes only keyed records), so a lone flow is a
20
+ * one-entry record, or the host's. With `window`, only the paged browse
21
+ * source and primary-entry read cross; the whole-record read is omitted;
22
+ * - `data`, the host's flows by name or one flow — a value, an expression or a
23
+ * bind handle — the value's type picking the arm. Given the host's
24
+ * `onApply`, the arm carries the session's Save through it (#1247): the
25
+ * session's batch restated as one patch of the host's value, which the
26
+ * host's `onApply` takes and answers.
27
+ *
28
+ * The flowchart takes no callback for an edit (#1247, FB24): every gesture is
29
+ * one transaction of its editing session, and each callback it took before is
30
+ * refused when the surface is built, naming the remedy.
31
+ *
32
+ * Its library's tabs are the `Flowchart.library.*` calls `library` lists, on
33
+ * the wire in that order: `library.ts` builds each — the Flows tab, and the
34
+ * template and author's tabs, each card read from the tab's own rows — and
35
+ * makes the library's refusals (#1248).
36
+ *
37
+ * Its inspector is on by default (#1250, ruled by the user on 2026-10-08):
38
+ * the end pane, Details and Issues, unless `inspector={false}`; and
39
+ * `inspector={{ state, transition }}` gives a kind its own Details in place of
40
+ * its form, each an East function over the row and its writer, wrapped over
41
+ * bytes as the Sheet's own Details are. The hover cards went with it: each
42
+ * hover prop is refused, naming the inspector.
43
+ *
44
+ * @packageDocumentation
45
+ */
46
+ import { ArrayType, AsyncFunctionType, BlobType, BooleanType, DictType, East, Expr, FunctionType, OptionType, PatchType, StringType, StructType, VariantType, dictPatchOpsType, isTypeEqual, isValueOf, none, printType, some, variant, } from "@elaraai/east";
47
+ import { RecordCommitInfoType } from "@elaraai/e3-types";
48
+ import { EastUI, Editing } from "@elaraai/east-ui";
49
+ import { flowchartWindow, FlowchartWindowType, FlowchartReadEntryType, FlowchartRecordChromeType } from "./window.js";
50
+ import { Record as RecordBind, RecordOutcomeType } from "../bind/record.js";
51
+ import { RowInspectorType, rowInspector } from "../utils/row-inspector.js";
52
+ import { buildCanvas, FlowchartCanvasType } from "./canvas.js";
53
+ import { FlowchartLibraryTabType, buildLibrary } from "./library.js";
54
+ import { FlowchartFlowType, FlowchartFlowsType, FlowchartLinkType, FlowchartStateType } from "./types.js";
55
+ // ============================================================================
56
+ // Where the flows come from
57
+ // ============================================================================
58
+ /** A record's commits, newest first: who changed it last, and when. */
59
+ export const FlowchartHistoryType = FunctionType([], OptionType(ArrayType(RecordCommitInfoType)));
60
+ /**
61
+ * The editing session's Save (#1246, #1247, FB22): the session's keyed batch —
62
+ * the open flow's insert, update or delete by name — as the session hands it,
63
+ * bytes of `Editing.Types.ChangeSet(Flowchart.Types.Flow, String)`, sent as
64
+ * one commit and answered as the session's Save is: over a record, one patch
65
+ * through its patch mutation by `Record.onApply(record, { keyed: true })`;
66
+ * over the host's flows or flow, one patch of that value through the host's
67
+ * `onApply`, handed the batch's request id with it (#1275).
68
+ */
69
+ export const FlowchartSessionApplyType = AsyncFunctionType([BlobType], Editing.Types.ApplyResult);
70
+ /**
71
+ * A record of flows by name, bound with its patch mutation — what the
72
+ * renderer reads the flows from and commits to, as the query builder's
73
+ * `QueriesHandleType` is the saved queries record's.
74
+ *
75
+ * @property read - The record's flows
76
+ * @property history - Its commits, newest first
77
+ * @property commit - Its patch write, awaited: a request id and the patch, answered by the outcome
78
+ * @property apply - The editing session's Apply through that patch write ({@link FlowchartSessionApplyType})
79
+ */
80
+ export const FlowchartFlowsHandleType = StructType({
81
+ read: FunctionType([], FlowchartFlowsType),
82
+ history: FlowchartHistoryType,
83
+ commit: StructType({ patch: AsyncFunctionType([StringType, PatchType(FlowchartFlowsType)], RecordOutcomeType) }),
84
+ apply: FlowchartSessionApplyType,
85
+ });
86
+ /**
87
+ * The host's commit of its flows' edits (#1247, #1275): the session's request
88
+ * id and one patch of the flows, as a record's patch write takes them, answered
89
+ * as the editing session's Save is. A Retry after a write with no answer hands
90
+ * the same id again, so a host that keys its write by it — as e3's `commit.patch`
91
+ * does — writes once.
92
+ */
93
+ export const FlowchartFlowsApplyType = AsyncFunctionType([StringType, PatchType(FlowchartFlowsType)], Editing.Types.ApplyResult);
94
+ /**
95
+ * The host's commit of its one flow's edits (#1247, #1275): the session's
96
+ * request id and the flow's own patch, answered as the editing session's Save
97
+ * is — a Retry handing the same id again.
98
+ */
99
+ export const FlowchartFlowApplyType = AsyncFunctionType([StringType, PatchType(FlowchartFlowType)], Editing.Types.ApplyResult);
100
+ /**
101
+ * The host's flows: its value, of either type, and — when the host takes the
102
+ * flowchart's edits — the session's Save through the host's `onApply` (#1247,
103
+ * FB22), which hands the host the batch's request id and one patch of its own
104
+ * value's type (#1275).
105
+ *
106
+ * @property flows - Flows by name
107
+ * @property flow - One flow
108
+ */
109
+ export const FlowchartDataType = VariantType({
110
+ flows: StructType({ value: FlowchartFlowsType, apply: OptionType(FlowchartSessionApplyType) }),
111
+ flow: StructType({ value: FlowchartFlowType, apply: OptionType(FlowchartSessionApplyType) }),
112
+ });
113
+ /**
114
+ * Where a flowchart's flows come from.
115
+ *
116
+ * @property record - A record of flows by name, bound with its patch mutation
117
+ * @property paged - Bounded browse pages, primary-entry reads and shared record Slice chrome over a record
118
+ * @property data - The host's flows by name, or one flow: the arm its value's type picked
119
+ */
120
+ export const FlowchartSourceType = VariantType({
121
+ record: FlowchartFlowsHandleType,
122
+ paged: StructType({
123
+ recordId: StringType,
124
+ window: FlowchartWindowType,
125
+ entry: FlowchartReadEntryType,
126
+ chrome: FlowchartRecordChromeType,
127
+ history: FlowchartHistoryType,
128
+ apply: FlowchartSessionApplyType,
129
+ }),
130
+ data: FlowchartDataType,
131
+ });
132
+ // ============================================================================
133
+ // The inspector
134
+ // ============================================================================
135
+ /**
136
+ * The inspector pane on the wire (#1250, `Flowchart Builder Spec.md` §5.3,
137
+ * FB35–FB38, FB44, FB45): each kind's own Details, where the author gives them
138
+ * — a state's, a transition's — in place of that kind's form, as the Sheet's
139
+ * own Details (SB58) and a Plan event kind's inspector are: the row as bytes,
140
+ * and the writer that takes the edited row back as bytes.
141
+ *
142
+ * @property state - A state's own Details; `none`, its form
143
+ * @property transition - A transition's own Details; `none`, its form
144
+ */
145
+ export const FlowchartInspectorType = StructType({
146
+ state: OptionType(RowInspectorType),
147
+ transition: OptionType(RowInspectorType),
148
+ });
149
+ // ============================================================================
150
+ // The payload
151
+ // ============================================================================
152
+ /**
153
+ * The `Flowchart` renderer's payload: the flowchart's interface.
154
+ *
155
+ * @property canvas - What the canvas draws its flow with ({@link FlowchartCanvasType})
156
+ * @property source - Where the flows come from: a record of flows by name, or the host's flows or flow
157
+ * @property open - Over many flows, the one opened first
158
+ * @property library - The library pane's tabs, in the order `library` lists them; none, no library pane
159
+ * @property inspector - The inspector pane — on by default — with each kind's own Details the author gives ({@link FlowchartInspectorType}); `none`, no inspector pane (`inspector={false}`)
160
+ * @property readOnly - No gesture edits, no drop lands, the inspector edits nothing
161
+ * @property name - Names the flowchart, when a surface holds two
162
+ */
163
+ export const FlowchartPayloadType = StructType({
164
+ canvas: FlowchartCanvasType,
165
+ source: FlowchartSourceType,
166
+ open: OptionType(StringType),
167
+ library: ArrayType(FlowchartLibraryTabType),
168
+ inspector: OptionType(FlowchartInspectorType),
169
+ readOnly: BooleanType,
170
+ name: OptionType(StringType),
171
+ });
172
+ /**
173
+ * The `Flowchart` carrier: `<Flowchart>` builds a {@link FlowchartPayloadType}
174
+ * and returns it through this {@link EastUI.component}. The React renderer
175
+ * registers against it in `@elaraai/e3-ui-components` via
176
+ * `implementUIComponent`.
177
+ */
178
+ export const FlowchartComponent = EastUI.component("Flowchart", FlowchartPayloadType, { optional: true });
179
+ // ============================================================================
180
+ // The flowchart's shared keys
181
+ // ============================================================================
182
+ /**
183
+ * The names a flowchart keeps its viewer's state under, by its `name`: its
184
+ * frame's panes — their open tab and collapsed state (#1245) — the flow open
185
+ * in it, its library's id, LR · TD (#1246), and its drop target, where its
186
+ * library's cards land (#1249).
187
+ *
188
+ * @remarks
189
+ * As the Plan's `planKeys` and the Sheet's `sheetKeys`: two flowcharts on one
190
+ * surface keep apart only when each is named, and two of one name open one
191
+ * flow together, and turn together, as the query builder's open query is
192
+ * shared by its id.
193
+ *
194
+ * @param name - The flowchart's name, when a surface holds more than one; omitted, the one flowchart
195
+ * @returns The keys
196
+ */
197
+ export function flowchartKeys(name) {
198
+ const suffix = name === undefined ? "" : `.${name}`;
199
+ return {
200
+ frame: `flowchart${suffix}.frame`,
201
+ flow: `flowchart${suffix}.flow`,
202
+ library: `flowchart.library${suffix}`,
203
+ orientation: `flowchart${suffix}.orientation`,
204
+ surface: `flowchart${suffix}.surface`,
205
+ };
206
+ }
207
+ /** The tables and row mappers the flowchart took before it held flows, which `Flowchart.over` takes now. */
208
+ const TABLES = ["states", "links", "lanes", "triggers", "state", "link", "lane", "trigger"];
209
+ /** The sizes the flowchart took before it filled the box it is given (#1245). */
210
+ const SIZES = ["height", "maxHeight"];
211
+ /**
212
+ * The refusal of `density`, which the flowchart took and never drew by (#1251,
213
+ * ruled by the user on 2026-10-09: "Remove it"): the canvas draws at one
214
+ * rhythm, the spec's.
215
+ */
216
+ const DENSITY = "Flowchart: `density` is not a prop — the canvas draws at one rhythm, the spec's 116×40 state cards in their lanes; leave `density` out";
217
+ /** The callbacks the flowchart took for its edits before each gesture was a transaction of its editing session (#1247, FB24). */
218
+ const EDIT_CALLBACKS = ["linkMode", "onCreateLink", "onDeleteLink", "onAddLane", "onRenameLane", "onDeleteLane", "onAddState", "onEditState", "onMoveState"];
219
+ /**
220
+ * The hover cards the flowchart took before its inspector showed what is
221
+ * selected (#1250, FB46, ruled by the user on 2026-10-08), each with its
222
+ * remedy: a state's or a transition's own Details, or a decision's form.
223
+ */
224
+ const HOVERS = {
225
+ stateHover: "give a state its own Details with inspector={{ state: East.function([Flowchart.Types.State, FunctionType([Flowchart.Types.State], NullType)], UIComponentType, ($, state, update) => …) }}",
226
+ linkHover: "give a transition its own Details with inspector={{ transition: East.function([Flowchart.Types.Link, FunctionType([Flowchart.Types.Link], NullType)], UIComponentType, ($, link, update) => …) }}",
227
+ triggerHover: "a decision's Details are its form — every field, and the transitions it governs",
228
+ };
229
+ /**
230
+ * The refusal of a kind's own Details of another type than its row's.
231
+ *
232
+ * @param kind - The kind, as `inspector` names it
233
+ * @param type - Its row's type, as `Flowchart.Types` names it
234
+ * @param row - What the function calls its row
235
+ * @returns The refusal
236
+ */
237
+ function rowRefusal(kind, type, row) {
238
+ return `Flowchart: \`inspector.${kind}\` is a ${kind}'s own Details — an East function over the ${kind} and its writer: East.function([Flowchart.Types.${type}, FunctionType([Flowchart.Types.${type}], NullType)], UIComponentType, ($, ${row}, update) => …)`;
239
+ }
240
+ /**
241
+ * The inspector pane on the wire (#1250, FB44, FB45): on by default, or given
242
+ * `true`; none for `false`; and each kind's own Details where `{ state,
243
+ * transition }` gives them, checked against the row's type and wrapped over
244
+ * bytes, as the Sheet's own Details are.
245
+ *
246
+ * @param inspector - The flowchart's `inspector`
247
+ * @returns The pane, or none
248
+ * @throws {Error} Naming the prop and the remedy: an `inspector` of another
249
+ * kind, a key other than `state` and `transition`, and a function of another
250
+ * type than `(Row, (Row) => Null) => UIComponentType`
251
+ */
252
+ function inspectorOf(inspector) {
253
+ if (inspector === false)
254
+ return East.value(none, OptionType(FlowchartInspectorType));
255
+ if (inspector === undefined || inspector === true) {
256
+ return East.value(some({ state: none, transition: none }), OptionType(FlowchartInspectorType));
257
+ }
258
+ if (inspector === null || typeof inspector !== "object" || inspector instanceof Expr || Array.isArray(inspector)) {
259
+ throw new Error("Flowchart: `inspector` is on by default — inspector={false} removes the pane, and inspector={{ state, transition }} gives a state or a transition its own Details, each an East function over the row and its writer");
260
+ }
261
+ const given = inspector;
262
+ for (const key of Object.keys(given)) {
263
+ if (key !== "state" && key !== "transition") {
264
+ throw new Error(`Flowchart: \`inspector\` gives a state or a transition its own Details — { state, transition } — and \`${key}\` is neither: every other kind's Details are its form`);
265
+ }
266
+ }
267
+ const state = given.state === undefined ? none : some(rowInspector(given.state, FlowchartStateType, rowRefusal("state", "State", "state")));
268
+ const transition = given.transition === undefined ? none : some(rowInspector(given.transition, FlowchartLinkType, rowRefusal("transition", "Link", "link")));
269
+ return East.value(some({ state, transition }), OptionType(FlowchartInspectorType));
270
+ }
271
+ /** The refusal of a record not bound with its patch mutation. */
272
+ const UNBOUND = "Flowchart: `record` is an e3 record bound with its patch mutation — Record.bind(record, [e3.mutation.patch(record)])";
273
+ /** A field of a struct type, or `undefined`. */
274
+ function fieldOf(type, name) {
275
+ return type?.type === "Struct" ? type.fields[name] : undefined;
276
+ }
277
+ /**
278
+ * The record arm: a `Record.bind` handle over flows by name, bound with its
279
+ * patch mutation, crossing the payload as its read, its history, its patch
280
+ * write and the editing session's Apply through it. A record of one flow is
281
+ * refused: e3's patch mutation writes only keyed records (ruled 2026-10-07),
282
+ * so a lone flow is a one-entry record, or the host's `data`.
283
+ */
284
+ function recordArm(record, window, slice) {
285
+ if (!(record instanceof Expr))
286
+ throw new Error(UNBOUND);
287
+ const type = Expr.type(record);
288
+ const read = fieldOf(type, "read");
289
+ if (read === undefined || read.type !== "Function" || read.inputs.length !== 0
290
+ || fieldOf(type, "history")?.type !== "Function" || fieldOf(type, "binding") === undefined) {
291
+ throw new Error(UNBOUND);
292
+ }
293
+ const recordType = read.output;
294
+ if (isTypeEqual(recordType, FlowchartFlowType)) {
295
+ throw new Error("Flowchart: `record` holds flows by name, Flowchart.Types.Flows — e3's patch mutation writes only keyed records — and this record holds one flow: make it a record of flows with one entry (Flowchart.values({ [name]: flow })), or pass the flow as `data`");
296
+ }
297
+ if (!isTypeEqual(recordType, FlowchartFlowsType)) {
298
+ throw new Error(`Flowchart: \`record\` holds flows by name, Flowchart.Types.Flows — declare it with that type — and this record holds ${printType(recordType)}`);
299
+ }
300
+ // The patch door: e3.mutation.patch's, the mutation named `patch` taking
301
+ // the record's patch.
302
+ const door = fieldOf(fieldOf(type, "commit"), "patch");
303
+ if (door === undefined || !isTypeEqual(door, AsyncFunctionType([StringType, PatchType(FlowchartFlowsType)], RecordOutcomeType))) {
304
+ throw new Error(`${UNBOUND}, and this binding ${door === undefined ? "has no `patch`" : "has a `patch` that takes another patch than the record's"}`);
305
+ }
306
+ const handle = record;
307
+ // The session's Apply (#1246): its keyed batch, decoded at its own type
308
+ // and committed as it is — each flow's insert, update or delete by name —
309
+ // through the patch door, by Record.onApply's keyed form.
310
+ const keyed = RecordBind.onApply(record, { keyed: true });
311
+ const batchType = Editing.Types.ChangeSet(FlowchartFlowType, StringType);
312
+ const apply = East.asyncFunction([BlobType], Editing.Types.ApplyResult, ($, blob) => {
313
+ const commit = $.const(keyed);
314
+ return commit(blob.decodeBeast(batchType, "v2"));
315
+ });
316
+ if (window !== undefined) {
317
+ const view = flowchartWindow(window, slice);
318
+ const binding = record;
319
+ return { many: true, source: variant("paged", {
320
+ recordId: binding.binding.name, ...view, history: handle.history, apply,
321
+ }) };
322
+ }
323
+ return {
324
+ many: true,
325
+ source: variant("record", { read: handle.read, history: handle.history, commit: { patch: handle.commit.patch }, apply }),
326
+ };
327
+ }
328
+ /** The host's flows as an expression: an expression, a bind handle's read, or a value of either type. */
329
+ function dataValue(data) {
330
+ if (data instanceof Expr) {
331
+ const read = fieldOf(Expr.type(data), "read");
332
+ return read !== undefined && read.type === "Function" && read.inputs.length === 0
333
+ ? data.read()
334
+ : data;
335
+ }
336
+ if (isValueOf(data, FlowchartFlowsType))
337
+ return East.value(data, FlowchartFlowsType);
338
+ if (isValueOf(data, FlowchartFlowType))
339
+ return East.value(data, FlowchartFlowType);
340
+ throw new Error("Flowchart: `data` is Flowchart.Types.Flows, flows by name, or Flowchart.Types.Flow, one flow — a value, an expression or a bind handle of either; Flowchart.over builds one flow from an app's tables — and this value is neither");
341
+ }
342
+ /** The host's `onApply`, checked against a request id and the patch of its flows' type. */
343
+ function applyOf(onApply, applyType, value) {
344
+ const apply = (onApply instanceof Expr ? onApply : East.value(onApply, applyType));
345
+ const type = Expr.type(apply);
346
+ if (!isTypeEqual(type, applyType)) {
347
+ throw new Error(`Flowchart: \`onApply\` commits \`data\`'s edits, one patch of the value at a time — an East.asyncFunction from the session's request id and PatchType(${value}), [StringType, PatchType(${value})], to Editing.Types.ApplyResult; a Retry hands the same id again — and this one is ${printType(type)}`);
348
+ }
349
+ return apply;
350
+ }
351
+ /**
352
+ * The data arm: the host's flows, of either type, and — when the host takes
353
+ * the edits — the session's Save through its `onApply` (#1247, FB22). The
354
+ * session's batch is keyed by name, as over a record: over flows by name it is
355
+ * restated as one patch of the flows, each change the open flow's insert,
356
+ * update or delete by name, as `Record.onApply(record, { keyed: true })`
357
+ * restates it for a record — never the whole value replaced, so the host's
358
+ * other flows stay as they are; over one flow, its one change is the flow's
359
+ * own patch. The host's `onApply` is handed the batch's request id with it
360
+ * (#1275) — the same id on a Retry, which resends the same batch — and answers
361
+ * the session.
362
+ */
363
+ function dataArm(data, onApply) {
364
+ const value = dataValue(data);
365
+ const type = Expr.type(value);
366
+ const many = isTypeEqual(type, FlowchartFlowsType);
367
+ if (!many && !isTypeEqual(type, FlowchartFlowType)) {
368
+ throw new Error(`Flowchart: \`data\` is Flowchart.Types.Flows, flows by name, or Flowchart.Types.Flow, one flow — a value, an expression or a bind handle of either; Flowchart.over builds one flow from an app's tables — and this is ${printType(type)}`);
369
+ }
370
+ if (onApply === undefined)
371
+ return { many, source: variant("data", variant(many ? "flows" : "flow", { value, apply: none })) };
372
+ // The host's commit, its patch opaque here, as in `Record.onApply`; its runtime type is exact.
373
+ const host = applyOf(onApply, many ? FlowchartFlowsApplyType : FlowchartFlowApplyType, many ? "Flowchart.Types.Flows" : "Flowchart.Types.Flow");
374
+ const batchType = Editing.Types.ChangeSet(FlowchartFlowType, StringType);
375
+ const apply = many
376
+ ? East.asyncFunction([BlobType], Editing.Types.ApplyResult, ($, blob) => {
377
+ const commit = $.const(host);
378
+ const batch = $.const(blob.decodeBeast(batchType, "v2"));
379
+ // Each change is its flow's insert, update or delete, by name: the
380
+ // batch's own values and patches, carrying what the flow was when
381
+ // the edit began.
382
+ const ops = $.let(new Map(), DictType(StringType, dictPatchOpsType(FlowchartFlowType)));
383
+ $.for(batch.changes, ($, change) => {
384
+ $.match(change.patch, {
385
+ replace: ($, swap) => {
386
+ $.match(swap.after, {
387
+ some: ($, after) => {
388
+ $.match(swap.before, {
389
+ none: ($) => { $(ops.insert(change.id, variant("insert", after))); },
390
+ some: ($, before) => { $(ops.insert(change.id, variant("update", East.diff(before, after)))); },
391
+ });
392
+ },
393
+ none: ($) => {
394
+ $.match(swap.before, { some: ($, before) => { $(ops.insert(change.id, variant("delete", before))); } });
395
+ },
396
+ });
397
+ },
398
+ patch: ($, entry) => {
399
+ $.match(entry, { some: ($, update) => { $(ops.insert(change.id, variant("update", update))); } });
400
+ },
401
+ });
402
+ });
403
+ return commit(batch.requestId, variant("patch", ops));
404
+ })
405
+ : East.asyncFunction([BlobType], Editing.Types.ApplyResult, ($, blob) => {
406
+ const commit = $.const(host);
407
+ const batch = $.const(blob.decodeBeast(batchType, "v2"));
408
+ // One flow is one entry, changed in place: its change is the flow's own patch.
409
+ const result = $.let(variant("rejected", [{ entry: "", row: none, field: none,
410
+ message: "One flow is changed in place: Save never adds or removes it" }]), Editing.Types.ApplyResult);
411
+ $.for(batch.changes, ($, change) => {
412
+ $.match(change.patch, {
413
+ replace: ($, swap) => {
414
+ $.match(swap.before, {
415
+ some: ($, before) => {
416
+ $.match(swap.after, { some: ($, after) => { $.assign(result, commit(batch.requestId, East.diff(before, after))); } });
417
+ },
418
+ });
419
+ },
420
+ patch: ($, entry) => {
421
+ $.match(entry, { some: ($, update) => { $.assign(result, commit(batch.requestId, update)); } });
422
+ },
423
+ });
424
+ });
425
+ return result;
426
+ });
427
+ return { many, source: variant("data", variant(many ? "flows" : "flow", { value, apply: some(apply) })) };
428
+ }
429
+ /**
430
+ * Creates the flowchart's payload alone — what `<Flowchart>` returns through
431
+ * the `Flowchart` carrier — for the tests and the renderer's fixtures, which
432
+ * read it whole.
433
+ *
434
+ * @param props - The flowchart's props, as `<Flowchart>` takes them
435
+ * @returns An East expression of {@link FlowchartPayloadType}
436
+ * @throws {Error} Naming the prop and the remedy: flows from both `record` and
437
+ * `data`, or from neither; `onApply` or top-level `affordances` over a
438
+ * record; a record Slice without a window or a local Slice over a record; `flow` over one flow; a record of one flow, or of another type
439
+ * than `Flowchart.Types.Flows`, or not bound with its patch mutation; `data`
440
+ * of neither flow type; an `onApply` that does not take a request id and
441
+ * the patch of `data`'s type; `"brush"` among the affordances; a table or row mapper,
442
+ * which `Flowchart.over` takes; `height` or `maxHeight`, which the box the
443
+ * flowchart fills sets; a callback for an edit, or `linkMode`, which the
444
+ * editing session's gestures replace; a hover card's builder (`stateHover`,
445
+ * `linkHover`, `triggerHover`), which the inspector replaces; `density`,
446
+ * which the canvas's one rhythm replaces; an `inspector`
447
+ * of another kind than a Boolean or `{ state, transition }`, a key other
448
+ * than those two, or a kind's own Details of another type than `(Row, (Row)
449
+ * => Null) => UIComponentType`; and each of the library's refusals
450
+ * (`library.ts`'s `buildLibrary`): a tab listed twice, the Flows tab over
451
+ * one flow, a data tab's rows of neither an Array nor a `Dict<String, T>`,
452
+ * and a `drop` of another type than its tab's
453
+ * @internal
454
+ */
455
+ export function createFlowchartPayload(props) {
456
+ const { record, window, data, onApply, flow, library, slice, affordances, inspector, readOnly, name, ...canvas } = props;
457
+ for (const table of TABLES) {
458
+ if (table in canvas) {
459
+ throw new Error(`Flowchart: \`${table}\` is one of the tables, or the row mappers, Flowchart.over builds a flow from — pass data={Flowchart.over(states, { … })}, or bind a record of flows as \`record\``);
460
+ }
461
+ }
462
+ for (const size of SIZES) {
463
+ if (size in canvas) {
464
+ throw new Error(`Flowchart: \`${size}\` is not a prop — the flowchart fills the box it is given; give it a box of its own height: <Box height="560px"><Flowchart … /></Box>`);
465
+ }
466
+ }
467
+ if ("density" in canvas)
468
+ throw new Error(DENSITY);
469
+ for (const callback of EDIT_CALLBACKS) {
470
+ if (callback in canvas) {
471
+ throw new Error(`Flowchart: \`${callback}\` is not a prop — every gesture is a transaction of the flowchart's editing session, and Save commits them as one patch: over \`record\`, through its patch mutation; over \`data\`, through the host's \`onApply\``);
472
+ }
473
+ }
474
+ for (const [hover, remedy] of Object.entries(HOVERS)) {
475
+ if (hover in canvas) {
476
+ throw new Error(`Flowchart: \`${hover}\` is not a prop — the hover cards went, and the inspector, on by default, shows what is selected: ${remedy}`);
477
+ }
478
+ }
479
+ if (record !== undefined && data !== undefined) {
480
+ throw new Error("Flowchart: takes its flows from `record` or from `data`, never both");
481
+ }
482
+ if (record === undefined && data === undefined) {
483
+ throw new Error("Flowchart: needs its flows — `record`, an e3 record of Flowchart.Types.Flows bound with its patch mutation, or `data`: flows by name or one flow, as a value, an expression or a bind handle");
484
+ }
485
+ let arm;
486
+ if (record !== undefined) {
487
+ if (onApply !== undefined) {
488
+ throw new Error("Flowchart: `onApply` commits `data`'s edits — a flowchart over `record` commits through the record's patch mutation; leave `onApply` out");
489
+ }
490
+ if (slice !== undefined && (window === undefined || slice instanceof Expr || !("slice" in slice))) {
491
+ throw new Error("Flowchart: record filters use window={Slice.rows(slice)} and slice={{ slice }}; a local Slice only narrows transitions over data");
492
+ }
493
+ if (affordances !== undefined) {
494
+ throw new Error("Flowchart: record affordances belong inside slice={{ slice, affordances }}");
495
+ }
496
+ arm = recordArm(record, window, slice);
497
+ }
498
+ else {
499
+ if (window !== undefined)
500
+ throw new Error("Flowchart: `window` pages a bound `record`; pass the record with its patch mutation");
501
+ arm = dataArm(data, onApply);
502
+ }
503
+ if (flow !== undefined && !arm.many) {
504
+ throw new Error("Flowchart: `flow` opens one of many flows first, and this `data` is one flow, Flowchart.Types.Flow — leave `flow` out");
505
+ }
506
+ const tabs = buildLibrary(library, arm.many);
507
+ const pane = inspectorOf(inspector);
508
+ return East.value({
509
+ canvas: buildCanvas(canvas, {
510
+ ...(slice === undefined || record !== undefined ? {} : { slice: slice }),
511
+ ...(affordances === undefined ? {} : { affordances }),
512
+ }),
513
+ source: arm.source,
514
+ open: flow === undefined ? none : some(flow),
515
+ library: tabs,
516
+ inspector: pane,
517
+ readOnly: readOnly ?? false,
518
+ name: name === undefined ? none : some(name),
519
+ }, FlowchartPayloadType);
520
+ }
521
+ //# sourceMappingURL=payload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../src/flowchart/payload.ts"],"names":[],"mappings":"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"}