@elaraai/e3-ui 1.0.98 → 1.0.99

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 (381) hide show
  1. package/README.md +0 -2
  2. package/dist/src/allocation/adapters.d.ts +1 -1
  3. package/dist/src/allocation/adapters.js +1 -1
  4. package/dist/src/allocation/index.d.ts +46 -90
  5. package/dist/src/allocation/index.d.ts.map +1 -1
  6. package/dist/src/allocation/index.js +5 -5
  7. package/dist/src/allocation/index.js.map +1 -1
  8. package/dist/src/bind/data-indexed.d.ts +273 -51
  9. package/dist/src/bind/data-indexed.d.ts.map +1 -1
  10. package/dist/src/bind/data-indexed.js +233 -56
  11. package/dist/src/bind/data-indexed.js.map +1 -1
  12. package/dist/src/bind/data.d.ts +48 -9
  13. package/dist/src/bind/data.d.ts.map +1 -1
  14. package/dist/src/bind/data.js +48 -3
  15. package/dist/src/bind/data.js.map +1 -1
  16. package/dist/src/bind/record.d.ts +61 -24
  17. package/dist/src/bind/record.d.ts.map +1 -1
  18. package/dist/src/bind/record.js +17 -57
  19. package/dist/src/bind/record.js.map +1 -1
  20. package/dist/src/calendar/index.d.ts +55 -95
  21. package/dist/src/calendar/index.d.ts.map +1 -1
  22. package/dist/src/calendar/index.js +10 -6
  23. package/dist/src/calendar/index.js.map +1 -1
  24. package/dist/src/flowchart/index.d.ts +35 -31
  25. package/dist/src/flowchart/index.d.ts.map +1 -1
  26. package/dist/src/flowchart/index.js +35 -31
  27. package/dist/src/flowchart/index.js.map +1 -1
  28. package/dist/src/flowchart/library.d.ts +108 -84
  29. package/dist/src/flowchart/library.d.ts.map +1 -1
  30. package/dist/src/flowchart/library.js +108 -84
  31. package/dist/src/flowchart/library.js.map +1 -1
  32. package/dist/src/flowchart/payload.d.ts +39 -107
  33. package/dist/src/flowchart/payload.d.ts.map +1 -1
  34. package/dist/src/flowchart/payload.js +3 -3
  35. package/dist/src/flowchart/payload.js.map +1 -1
  36. package/dist/src/flowchart/values.d.ts +35 -31
  37. package/dist/src/flowchart/values.d.ts.map +1 -1
  38. package/dist/src/flowchart/values.js +35 -31
  39. package/dist/src/flowchart/values.js.map +1 -1
  40. package/dist/src/flowchart/window.d.ts +0 -12
  41. package/dist/src/flowchart/window.d.ts.map +1 -1
  42. package/dist/src/flowchart/window.js +3 -2
  43. package/dist/src/flowchart/window.js.map +1 -1
  44. package/dist/src/index.d.ts +2 -2
  45. package/dist/src/index.d.ts.map +1 -1
  46. package/dist/src/index.js +1 -1
  47. package/dist/src/index.js.map +1 -1
  48. package/dist/src/internal.d.ts +7 -3
  49. package/dist/src/internal.d.ts.map +1 -1
  50. package/dist/src/internal.js +12 -3
  51. package/dist/src/internal.js.map +1 -1
  52. package/dist/src/plan/assemble.d.ts +8 -0
  53. package/dist/src/plan/assemble.d.ts.map +1 -1
  54. package/dist/src/plan/assemble.js +1 -1
  55. package/dist/src/plan/assemble.js.map +1 -1
  56. package/dist/src/plan/builders.d.ts +1518 -2
  57. package/dist/src/plan/builders.d.ts.map +1 -1
  58. package/dist/src/plan/builders.js +248 -114
  59. package/dist/src/plan/builders.js.map +1 -1
  60. package/dist/src/plan/event-rows.d.ts +9 -14
  61. package/dist/src/plan/event-rows.d.ts.map +1 -1
  62. package/dist/src/plan/event-rows.js +6 -46
  63. package/dist/src/plan/event-rows.js.map +1 -1
  64. package/dist/src/plan/factories.d.ts +72 -4
  65. package/dist/src/plan/factories.d.ts.map +1 -1
  66. package/dist/src/plan/factories.js +147 -1
  67. package/dist/src/plan/factories.js.map +1 -1
  68. package/dist/src/plan/index.d.ts +147 -125
  69. package/dist/src/plan/index.d.ts.map +1 -1
  70. package/dist/src/plan/index.js +135 -122
  71. package/dist/src/plan/index.js.map +1 -1
  72. package/dist/src/plan/ir.d.ts +1105 -44
  73. package/dist/src/plan/ir.d.ts.map +1 -1
  74. package/dist/src/plan/ir.js +5 -0
  75. package/dist/src/plan/ir.js.map +1 -1
  76. package/dist/src/plan/library.d.ts +65 -42
  77. package/dist/src/plan/library.d.ts.map +1 -1
  78. package/dist/src/plan/library.js +65 -42
  79. package/dist/src/plan/library.js.map +1 -1
  80. package/dist/src/plan/nested-checks.d.ts +146 -0
  81. package/dist/src/plan/nested-checks.d.ts.map +1 -0
  82. package/dist/src/plan/nested-checks.js +468 -0
  83. package/dist/src/plan/nested-checks.js.map +1 -0
  84. package/dist/src/plan/nested-patch.d.ts +35 -0
  85. package/dist/src/plan/nested-patch.d.ts.map +1 -0
  86. package/dist/src/plan/nested-patch.js +143 -0
  87. package/dist/src/plan/nested-patch.js.map +1 -0
  88. package/dist/src/plan/nested-read.d.ts +3250 -0
  89. package/dist/src/plan/nested-read.d.ts.map +1 -0
  90. package/dist/src/plan/nested-read.js +163 -0
  91. package/dist/src/plan/nested-read.js.map +1 -0
  92. package/dist/src/plan/nested.d.ts +280 -0
  93. package/dist/src/plan/nested.d.ts.map +1 -0
  94. package/dist/src/plan/nested.js +6 -0
  95. package/dist/src/plan/nested.js.map +1 -0
  96. package/dist/src/plan/ordered-source.d.ts +1030 -1
  97. package/dist/src/plan/ordered-source.d.ts.map +1 -1
  98. package/dist/src/plan/ordered-source.js +48 -6
  99. package/dist/src/plan/ordered-source.js.map +1 -1
  100. package/dist/src/plan/over.d.ts +111 -75
  101. package/dist/src/plan/over.d.ts.map +1 -1
  102. package/dist/src/plan/over.js +111 -75
  103. package/dist/src/plan/over.js.map +1 -1
  104. package/dist/src/plan/pick.d.ts +15 -3
  105. package/dist/src/plan/pick.d.ts.map +1 -1
  106. package/dist/src/plan/pick.js +75 -36
  107. package/dist/src/plan/pick.js.map +1 -1
  108. package/dist/src/plan/plan.d.ts +2719 -558
  109. package/dist/src/plan/plan.d.ts.map +1 -1
  110. package/dist/src/plan/plan.js +14 -2
  111. package/dist/src/plan/plan.js.map +1 -1
  112. package/dist/src/plan/reads.d.ts +421 -0
  113. package/dist/src/plan/reads.d.ts.map +1 -0
  114. package/dist/src/plan/reads.js +143 -0
  115. package/dist/src/plan/reads.js.map +1 -0
  116. package/dist/src/plan/refs.d.ts +111 -75
  117. package/dist/src/plan/refs.d.ts.map +1 -1
  118. package/dist/src/plan/refs.js +111 -75
  119. package/dist/src/plan/refs.js.map +1 -1
  120. package/dist/src/plan/root.d.ts +10 -5
  121. package/dist/src/plan/root.d.ts.map +1 -1
  122. package/dist/src/plan/root.js +76 -13
  123. package/dist/src/plan/root.js.map +1 -1
  124. package/dist/src/plan/series.d.ts +5140 -4331
  125. package/dist/src/plan/series.d.ts.map +1 -1
  126. package/dist/src/plan/series.js +1026 -264
  127. package/dist/src/plan/series.js.map +1 -1
  128. package/dist/src/plan/shade.d.ts +981 -0
  129. package/dist/src/plan/shade.d.ts.map +1 -0
  130. package/dist/src/plan/shade.js +60 -0
  131. package/dist/src/plan/shade.js.map +1 -0
  132. package/dist/src/plan/types.d.ts +178 -18
  133. package/dist/src/plan/types.d.ts.map +1 -1
  134. package/dist/src/plan/types.js +69 -19
  135. package/dist/src/plan/types.js.map +1 -1
  136. package/dist/src/query/builder.d.ts +3 -3
  137. package/dist/src/query/builder.d.ts.map +1 -1
  138. package/dist/src/query/builder.js +1 -1
  139. package/dist/src/query/library.d.ts +3 -3
  140. package/dist/src/query/library.d.ts.map +1 -1
  141. package/dist/src/query/library.js +1 -1
  142. package/dist/src/query/queries.d.ts +2 -2
  143. package/dist/src/query/queries.js +1 -1
  144. package/dist/src/query/saved.d.ts +8 -4
  145. package/dist/src/query/saved.d.ts.map +1 -1
  146. package/dist/src/query/saved.js +8 -4
  147. package/dist/src/query/saved.js.map +1 -1
  148. package/dist/src/query/types.d.ts +8 -3
  149. package/dist/src/query/types.d.ts.map +1 -1
  150. package/dist/src/query/types.js +8 -3
  151. package/dist/src/query/types.js.map +1 -1
  152. package/dist/src/roster/index.d.ts +47 -91
  153. package/dist/src/roster/index.d.ts.map +1 -1
  154. package/dist/src/roster/index.js +6 -6
  155. package/dist/src/roster/index.js.map +1 -1
  156. package/dist/src/roster/targets.d.ts +8 -4
  157. package/dist/src/roster/targets.d.ts.map +1 -1
  158. package/dist/src/roster/targets.js +9 -5
  159. package/dist/src/roster/targets.js.map +1 -1
  160. package/dist/src/schedule/cell-checks.js +3 -3
  161. package/dist/src/schedule/cell-checks.js.map +1 -1
  162. package/dist/src/schedule/days.d.ts +1 -1
  163. package/dist/src/schedule/days.js +1 -1
  164. package/dist/src/schedule/events.d.ts +10 -6
  165. package/dist/src/schedule/events.d.ts.map +1 -1
  166. package/dist/src/schedule/events.js +252 -228
  167. package/dist/src/schedule/events.js.map +1 -1
  168. package/dist/src/schedule/patch.d.ts +1 -1
  169. package/dist/src/schedule/patch.js +1 -1
  170. package/dist/src/schedule/periods.d.ts +8 -4
  171. package/dist/src/schedule/periods.d.ts.map +1 -1
  172. package/dist/src/schedule/periods.js +1 -1
  173. package/dist/src/schedule/periods.js.map +1 -1
  174. package/dist/src/schedule/record-window.d.ts +38 -58
  175. package/dist/src/schedule/record-window.d.ts.map +1 -1
  176. package/dist/src/schedule/record-window.js +15 -16
  177. package/dist/src/schedule/record-window.js.map +1 -1
  178. package/dist/src/schedule/resources.d.ts +1 -1
  179. package/dist/src/schedule/session.d.ts +1 -1
  180. package/dist/src/schedule/session.js +1 -1
  181. package/dist/src/schedule/types.d.ts +29 -1
  182. package/dist/src/schedule/types.d.ts.map +1 -1
  183. package/dist/src/schedule/types.js +16 -1
  184. package/dist/src/schedule/types.js.map +1 -1
  185. package/dist/src/schematic/index.d.ts +19 -9
  186. package/dist/src/schematic/index.d.ts.map +1 -1
  187. package/dist/src/schematic/index.js +19 -9
  188. package/dist/src/schematic/index.js.map +1 -1
  189. package/dist/src/schematic/kinds.d.ts +4 -4
  190. package/dist/src/schematic/kinds.js +9 -9
  191. package/dist/src/schematic/kinds.js.map +1 -1
  192. package/dist/src/schematic/payload.d.ts +38 -88
  193. package/dist/src/schematic/payload.d.ts.map +1 -1
  194. package/dist/src/schematic/payload.js +4 -4
  195. package/dist/src/schematic/payload.js.map +1 -1
  196. package/dist/src/schematic/window.d.ts +8 -7
  197. package/dist/src/schematic/window.d.ts.map +1 -1
  198. package/dist/src/schematic/window.js +22 -19
  199. package/dist/src/schematic/window.js.map +1 -1
  200. package/dist/src/sheet/bridge.d.ts +19 -0
  201. package/dist/src/sheet/bridge.d.ts.map +1 -1
  202. package/dist/src/sheet/bridge.js +28 -21
  203. package/dist/src/sheet/bridge.js.map +1 -1
  204. package/dist/src/sheet/index.d.ts +66 -46
  205. package/dist/src/sheet/index.d.ts.map +1 -1
  206. package/dist/src/sheet/index.js +66 -46
  207. package/dist/src/sheet/index.js.map +1 -1
  208. package/dist/src/sheet/library.d.ts +13 -8
  209. package/dist/src/sheet/library.d.ts.map +1 -1
  210. package/dist/src/sheet/library.js +13 -8
  211. package/dist/src/sheet/library.js.map +1 -1
  212. package/dist/src/sheet/record.d.ts +1 -1
  213. package/dist/src/sheet/record.js +2 -2
  214. package/dist/src/sheet/record.js.map +1 -1
  215. package/dist/src/sheet/registers.d.ts +152 -128
  216. package/dist/src/sheet/registers.d.ts.map +1 -1
  217. package/dist/src/sheet/registers.js +152 -128
  218. package/dist/src/sheet/registers.js.map +1 -1
  219. package/dist/src/sheet/root.d.ts +4 -1
  220. package/dist/src/sheet/root.d.ts.map +1 -1
  221. package/dist/src/sheet/root.js +15 -3
  222. package/dist/src/sheet/root.js.map +1 -1
  223. package/dist/src/sheet/sheet.d.ts +39 -113
  224. package/dist/src/sheet/sheet.d.ts.map +1 -1
  225. package/dist/src/sheet/sheet.js +7 -5
  226. package/dist/src/sheet/sheet.js.map +1 -1
  227. package/dist/src/sheet/sub-rows.d.ts +106 -76
  228. package/dist/src/sheet/sub-rows.d.ts.map +1 -1
  229. package/dist/src/sheet/sub-rows.js +106 -76
  230. package/dist/src/sheet/sub-rows.js.map +1 -1
  231. package/dist/src/sheet/types.d.ts +19 -62
  232. package/dist/src/sheet/types.d.ts.map +1 -1
  233. package/dist/src/studio/builder.d.ts +3 -153
  234. package/dist/src/studio/builder.d.ts.map +1 -1
  235. package/dist/src/studio/builder.js +1 -1
  236. package/dist/src/studio/canvas.d.ts +5 -4
  237. package/dist/src/studio/canvas.d.ts.map +1 -1
  238. package/dist/src/studio/canvas.js +8 -7
  239. package/dist/src/studio/canvas.js.map +1 -1
  240. package/dist/src/studio/component.d.ts +30 -20
  241. package/dist/src/studio/component.d.ts.map +1 -1
  242. package/dist/src/studio/component.js +26 -61
  243. package/dist/src/studio/component.js.map +1 -1
  244. package/dist/src/studio/index.d.ts +2 -2
  245. package/dist/src/studio/index.d.ts.map +1 -1
  246. package/dist/src/studio/index.js +1 -1
  247. package/dist/src/studio/index.js.map +1 -1
  248. package/dist/src/studio/inspector.d.ts +10 -39
  249. package/dist/src/studio/inspector.d.ts.map +1 -1
  250. package/dist/src/studio/inspector.js +11 -31
  251. package/dist/src/studio/inspector.js.map +1 -1
  252. package/dist/src/studio/library.d.ts +3 -169
  253. package/dist/src/studio/library.d.ts.map +1 -1
  254. package/dist/src/studio/library.js +1 -1
  255. package/dist/src/studio/page.d.ts +0 -8
  256. package/dist/src/studio/page.d.ts.map +1 -1
  257. package/dist/src/studio/pages.d.ts +17 -591
  258. package/dist/src/studio/pages.d.ts.map +1 -1
  259. package/dist/src/studio/pages.js +17 -44
  260. package/dist/src/studio/pages.js.map +1 -1
  261. package/dist/src/studio/palette.d.ts +2 -7
  262. package/dist/src/studio/palette.d.ts.map +1 -1
  263. package/dist/src/studio/palette.js +4 -5
  264. package/dist/src/studio/palette.js.map +1 -1
  265. package/dist/src/studio/publish.d.ts +8 -18
  266. package/dist/src/studio/publish.d.ts.map +1 -1
  267. package/dist/src/studio/publish.js +10 -36
  268. package/dist/src/studio/publish.js.map +1 -1
  269. package/dist/src/utils/derive.d.ts +12 -12
  270. package/dist/src/utils/derive.d.ts.map +1 -1
  271. package/dist/src/utils/derive.js +5 -2
  272. package/dist/src/utils/derive.js.map +1 -1
  273. package/dist/src/utils/ordered-source.d.ts.map +1 -1
  274. package/dist/src/utils/ordered-source.js +14 -5
  275. package/dist/src/utils/ordered-source.js.map +1 -1
  276. package/dist/test/allocation/allocation.examples.d.ts +1900 -1598
  277. package/dist/test/allocation/allocation.examples.d.ts.map +1 -1
  278. package/dist/test/allocation/allocation.examples.js +179 -89
  279. package/dist/test/allocation/allocation.examples.js.map +1 -1
  280. package/dist/test/allocation/optimise.examples.d.ts.map +1 -1
  281. package/dist/test/allocation/optimise.examples.js +7 -7
  282. package/dist/test/allocation/optimise.examples.js.map +1 -1
  283. package/dist/test/bind/data/data.examples.d.ts +1057 -903
  284. package/dist/test/bind/data/data.examples.d.ts.map +1 -1
  285. package/dist/test/bind/data/data.examples.js +260 -204
  286. package/dist/test/bind/data/data.examples.js.map +1 -1
  287. package/dist/test/bind/record/record.examples.d.ts +457 -426
  288. package/dist/test/bind/record/record.examples.d.ts.map +1 -1
  289. package/dist/test/bind/record/record.examples.js +41 -21
  290. package/dist/test/bind/record/record.examples.js.map +1 -1
  291. package/dist/test/calendar/calendar-records.examples.d.ts +162 -170
  292. package/dist/test/calendar/calendar-records.examples.d.ts.map +1 -1
  293. package/dist/test/calendar/calendar-records.examples.js +20 -12
  294. package/dist/test/calendar/calendar-records.examples.js.map +1 -1
  295. package/dist/test/calendar/calendar-windows.examples.d.ts.map +1 -1
  296. package/dist/test/calendar/calendar-windows.examples.js +12 -12
  297. package/dist/test/calendar/calendar-windows.examples.js.map +1 -1
  298. package/dist/test/calendar/calendar.examples.d.ts +1172 -901
  299. package/dist/test/calendar/calendar.examples.d.ts.map +1 -1
  300. package/dist/test/calendar/calendar.examples.js +211 -124
  301. package/dist/test/calendar/calendar.examples.js.map +1 -1
  302. package/dist/test/calendar/optimise.examples.js +2 -2
  303. package/dist/test/calendar/optimise.examples.js.map +1 -1
  304. package/dist/test/examples-package.d.ts +6 -9
  305. package/dist/test/examples-package.d.ts.map +1 -1
  306. package/dist/test/examples-package.js +11 -32
  307. package/dist/test/examples-package.js.map +1 -1
  308. package/dist/test/flowchart/flowchart.examples.d.ts +3841 -2820
  309. package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -1
  310. package/dist/test/flowchart/flowchart.examples.js +211 -121
  311. package/dist/test/flowchart/flowchart.examples.js.map +1 -1
  312. package/dist/test/plan/optimise.examples.js +2 -2
  313. package/dist/test/plan/optimise.examples.js.map +1 -1
  314. package/dist/test/plan/plan-events.examples.d.ts +4055 -3263
  315. package/dist/test/plan/plan-events.examples.d.ts.map +1 -1
  316. package/dist/test/plan/plan-events.examples.js +492 -319
  317. package/dist/test/plan/plan-events.examples.js.map +1 -1
  318. package/dist/test/plan/plan-nested.examples.d.ts +1829 -0
  319. package/dist/test/plan/plan-nested.examples.d.ts.map +1 -0
  320. package/dist/test/plan/plan-nested.examples.js +321 -0
  321. package/dist/test/plan/plan-nested.examples.js.map +1 -0
  322. package/dist/test/plan/plan-records.examples.d.ts +328 -362
  323. package/dist/test/plan/plan-records.examples.d.ts.map +1 -1
  324. package/dist/test/plan/plan-records.examples.js +81 -57
  325. package/dist/test/plan/plan-records.examples.js.map +1 -1
  326. package/dist/test/plan/plan-windows.examples.d.ts +1756 -1398
  327. package/dist/test/plan/plan-windows.examples.d.ts.map +1 -1
  328. package/dist/test/plan/plan-windows.examples.js +161 -128
  329. package/dist/test/plan/plan-windows.examples.js.map +1 -1
  330. package/dist/test/plan/plan.examples.d.ts +2238 -5712
  331. package/dist/test/plan/plan.examples.d.ts.map +1 -1
  332. package/dist/test/plan/plan.examples.js +839 -968
  333. package/dist/test/plan/plan.examples.js.map +1 -1
  334. package/dist/test/query/query.examples.d.ts +5221 -3005
  335. package/dist/test/query/query.examples.d.ts.map +1 -1
  336. package/dist/test/query/query.examples.js +169 -118
  337. package/dist/test/query/query.examples.js.map +1 -1
  338. package/dist/test/roster/optimise.examples.d.ts.map +1 -1
  339. package/dist/test/roster/optimise.examples.js +7 -7
  340. package/dist/test/roster/optimise.examples.js.map +1 -1
  341. package/dist/test/roster/roster-records.examples.d.ts +364 -392
  342. package/dist/test/roster/roster-records.examples.d.ts.map +1 -1
  343. package/dist/test/roster/roster-records.examples.js +40 -26
  344. package/dist/test/roster/roster-records.examples.js.map +1 -1
  345. package/dist/test/roster/roster.examples.d.ts +4605 -4308
  346. package/dist/test/roster/roster.examples.d.ts.map +1 -1
  347. package/dist/test/roster/roster.examples.js +212 -113
  348. package/dist/test/roster/roster.examples.js.map +1 -1
  349. package/dist/test/schedule/schedule.examples.d.ts +2646 -2471
  350. package/dist/test/schedule/schedule.examples.d.ts.map +1 -1
  351. package/dist/test/schedule/schedule.examples.js +144 -88
  352. package/dist/test/schedule/schedule.examples.js.map +1 -1
  353. package/dist/test/schematic/schematic-records.examples.d.ts +286 -276
  354. package/dist/test/schematic/schematic-records.examples.d.ts.map +1 -1
  355. package/dist/test/schematic/schematic-records.examples.js +52 -38
  356. package/dist/test/schematic/schematic-records.examples.js.map +1 -1
  357. package/dist/test/schematic/schematic.examples.d.ts +1842 -1491
  358. package/dist/test/schematic/schematic.examples.d.ts.map +1 -1
  359. package/dist/test/schematic/schematic.examples.js +240 -134
  360. package/dist/test/schematic/schematic.examples.js.map +1 -1
  361. package/dist/test/sheet/optimise.examples.d.ts +102 -95
  362. package/dist/test/sheet/optimise.examples.d.ts.map +1 -1
  363. package/dist/test/sheet/optimise.examples.js +7 -3
  364. package/dist/test/sheet/optimise.examples.js.map +1 -1
  365. package/dist/test/sheet/sheet-records.examples.d.ts +175 -214
  366. package/dist/test/sheet/sheet-records.examples.d.ts.map +1 -1
  367. package/dist/test/sheet/sheet-records.examples.js +29 -17
  368. package/dist/test/sheet/sheet-records.examples.js.map +1 -1
  369. package/dist/test/sheet/sheet.examples.d.ts +3642 -3353
  370. package/dist/test/sheet/sheet.examples.d.ts.map +1 -1
  371. package/dist/test/sheet/sheet.examples.js +389 -282
  372. package/dist/test/sheet/sheet.examples.js.map +1 -1
  373. package/dist/test/studio/component.examples.js +2 -2
  374. package/dist/test/studio/component.examples.js.map +1 -1
  375. package/dist/test/studio/page.examples.js +6 -6
  376. package/dist/test/studio/page.examples.js.map +1 -1
  377. package/dist/test/studio/studio.examples.d.ts +2329 -873
  378. package/dist/test/studio/studio.examples.d.ts.map +1 -1
  379. package/dist/test/studio/studio.examples.js +155 -107
  380. package/dist/test/studio/studio.examples.js.map +1 -1
  381. package/package.json +15 -11
@@ -79,57 +79,72 @@ export interface SheetSubRowsValue<R extends StructType> {
79
79
  * export const BatchStep = StructType({ task: StringType, qty: OptionType(FloatType), parts: ArrayType(BatchPart), bookings: ArrayType(BatchBooking) });
80
80
  * export const Batch = StructType({ id: StringType, name: StringType, steps: ArrayType(BatchStep) });
81
81
  * export const BatchDay = StructType({ batches: ArrayType(Batch) });
82
- * export const sheetBatchDays = e3.record("sheet_batch_days", DictType(StringType, BatchDay), new Map([
83
- * ["2026-10-12", { batches: [
84
- * { id: "B-101", name: "Doors, oak", steps: [
85
- * { task: "Cut doors", qty: some(12.0), parts: [
86
- * { id: "B-101-1", code: "CUT", name: "Cut the door blanks", materials: ["Oak veneered board × 6"], station: some("S101") },
87
- * ], bookings: [variant("labour", { team: "Cutting", people: 1n, hours: 3.0 })] },
88
- * { task: "Band doors", qty: some(48.0), parts: [], bookings: [variant("equipment", { resource: "Edge bander E201" })] },
89
- * { task: "Spray doors", qty: some(12.0), parts: [
90
- * { id: "B-101-3", code: "SPR", name: "Seal and lacquer", materials: ["Sealer", "Matt lacquer"], station: none },
91
- * ], bookings: [] },
92
- * ] },
93
- * { id: "B-102", name: "Carcasses, birch", steps: [
94
- * { task: "Cut carcasses", qty: some(8.0), parts: [], bookings: [] },
95
- * { task: "Drill carcasses", qty: some(8.0), parts: [], bookings: [variant("labour", { team: "Machining", people: 2n, hours: 2.5 })] },
96
- * ] },
97
- * { id: "B-103", name: "Shelves, ash", steps: [
98
- * { task: "Cut shelves", qty: some(20.0), parts: [], bookings: [] },
99
- * { task: "Sand shelves", qty: some(20.0), parts: [], bookings: [] },
100
- * ] },
101
- * ] }],
102
- * ]));
103
- * export const sheetBatchDaysPatch = e3.mutation.patch(sheetBatchDays);
82
+ * export const sheetBatchDays = e3.record("sheet_batch_days", DictType(StringType, BatchDay), {
83
+ * initial: new Map([
84
+ * ["2026-10-12", { batches: [
85
+ * { id: "B-101", name: "Doors, oak", steps: [
86
+ * { task: "Cut doors", qty: some(12.0), parts: [
87
+ * { id: "B-101-1", code: "CUT", name: "Cut the door blanks", materials: ["Oak veneered board × 6"], station: some("S101") },
88
+ * ], bookings: [variant("labour", { team: "Cutting", people: 1n, hours: 3.0 })] },
89
+ * { task: "Band doors", qty: some(48.0), parts: [], bookings: [variant("equipment", { resource: "Edge bander E201" })] },
90
+ * { task: "Spray doors", qty: some(12.0), parts: [
91
+ * { id: "B-101-3", code: "SPR", name: "Seal and lacquer", materials: ["Sealer", "Matt lacquer"], station: none },
92
+ * ], bookings: [] },
93
+ * ] },
94
+ * { id: "B-102", name: "Carcasses, birch", steps: [
95
+ * { task: "Cut carcasses", qty: some(8.0), parts: [], bookings: [] },
96
+ * { task: "Drill carcasses", qty: some(8.0), parts: [], bookings: [variant("labour", { team: "Machining", people: 2n, hours: 2.5 })] },
97
+ * ] },
98
+ * { id: "B-103", name: "Shelves, ash", steps: [
99
+ * { task: "Cut shelves", qty: some(20.0), parts: [], bookings: [] },
100
+ * { task: "Sand shelves", qty: some(20.0), parts: [], bookings: [] },
101
+ * ] },
102
+ * ] }],
103
+ * ]),
104
+ * mutations: (mutation) => ({
105
+ * // The days' patch door — every Save commits through it.
106
+ * patch: mutation.patch(),
107
+ * }),
108
+ * });
104
109
  * export const BatchStepTemplate = StructType({ name: StringType, group: StringType, task: StringType });
105
- * export const sheetBatchStepTemplates = e3.record("sheet_batch_step_templates", DictType(StringType, BatchStepTemplate), new Map([
106
- * ["sand", { name: "Sand", group: "Steps", task: "Sand" }],
107
- * ["seal", { name: "Seal", group: "Steps", task: "Seal" }],
108
- * ]));
109
- * export const sheetBatchStepTemplatesByGroup = e3.recordIndex("sheet_batch_step_templates_by_group", sheetBatchStepTemplates, { on: ["group"] });
110
+ * export const sheetBatchStepTemplates = e3.record("sheet_batch_step_templates", DictType(StringType, BatchStepTemplate), {
111
+ * initial: new Map([
112
+ * ["sand", { name: "Sand", group: "Steps", task: "Sand" }],
113
+ * ["seal", { name: "Seal", group: "Steps", task: "Seal" }],
114
+ * ]),
115
+ * indexes: (index) => ({
116
+ * // The step templates by their group: what the rail narrows them by.
117
+ * sheet_batch_step_templates_by_group: index.on(["group"]),
118
+ * }),
119
+ * });
110
120
  * export const BatchTemplate = StructType({ name: StringType, group: StringType, batch: StringType, steps: ArrayType(BatchStep) });
111
- * export const sheetBatchTemplates = e3.record("sheet_batch_templates", DictType(StringType, BatchTemplate), new Map([
112
- * ["finishing", { name: "Finishing batch", group: "Batches", batch: "Finishing", steps: [
113
- * { task: "Sand", qty: none, parts: [], bookings: [] },
114
- * { task: "Seal", qty: none, parts: [], bookings: [] },
115
- * { task: "Spray", qty: none, parts: [], bookings: [] },
116
- * ] }],
117
- * ]));
118
- * export const sheetBatchTemplatesByGroup = e3.recordIndex("sheet_batch_templates_by_group", sheetBatchTemplates, { on: ["group"] });
121
+ * export const sheetBatchTemplates = e3.record("sheet_batch_templates", DictType(StringType, BatchTemplate), {
122
+ * initial: new Map([
123
+ * ["finishing", { name: "Finishing batch", group: "Batches", batch: "Finishing", steps: [
124
+ * { task: "Sand", qty: none, parts: [], bookings: [] },
125
+ * { task: "Seal", qty: none, parts: [], bookings: [] },
126
+ * { task: "Spray", qty: none, parts: [], bookings: [] },
127
+ * ] }],
128
+ * ]),
129
+ * indexes: (index) => ({
130
+ * // The batch templates by their group: what the rail narrows them by.
131
+ * sheet_batch_templates_by_group: index.on(["group"]),
132
+ * }),
133
+ * });
119
134
  *
120
135
  * const sheet = East.function([], UIComponentType, (_$) => (
121
136
  * <Reactive>{$ => {
122
- * const days = $.let(Record.bind(sheetBatchDays, [sheetBatchDaysPatch]));
137
+ * const days = $.let(Record.bind(sheetBatchDays));
123
138
  * const stepTemplates = $.let(Data.bind(sheetBatchStepTemplates));
124
139
  * const batchTemplates = $.let(Data.bind(sheetBatchTemplates));
125
140
  * // One rail over the templates records, each its own source: they narrow the Rows tab's cards.
126
141
  * const slice = $.let(Slice.bindRecords("sheet.batches", {
127
142
  * rowTemplates: {
128
- * source: Data.bindPaged(sheetBatchStepTemplates, { indexes: [sheetBatchStepTemplatesByGroup] }),
143
+ * source: Data.bindPaged(sheetBatchStepTemplates, { indexes: ["sheet_batch_step_templates_by_group"] }),
129
144
  * label: "Step templates", fields: { group: { label: "Group", hints: ["Steps"] } },
130
145
  * },
131
146
  * groupTemplates: {
132
- * source: Data.bindPaged(sheetBatchTemplates, { indexes: [sheetBatchTemplatesByGroup] }),
147
+ * source: Data.bindPaged(sheetBatchTemplates, { indexes: ["sheet_batch_templates_by_group"] }),
133
148
  * label: "Batch templates", fields: { group: { label: "Group", hints: ["Batches"] } },
134
149
  * },
135
150
  * }));
@@ -233,57 +248,72 @@ export interface SheetSubRowInput {
233
248
  * export const BatchStep = StructType({ task: StringType, qty: OptionType(FloatType), parts: ArrayType(BatchPart), bookings: ArrayType(BatchBooking) });
234
249
  * export const Batch = StructType({ id: StringType, name: StringType, steps: ArrayType(BatchStep) });
235
250
  * export const BatchDay = StructType({ batches: ArrayType(Batch) });
236
- * export const sheetBatchDays = e3.record("sheet_batch_days", DictType(StringType, BatchDay), new Map([
237
- * ["2026-10-12", { batches: [
238
- * { id: "B-101", name: "Doors, oak", steps: [
239
- * { task: "Cut doors", qty: some(12.0), parts: [
240
- * { id: "B-101-1", code: "CUT", name: "Cut the door blanks", materials: ["Oak veneered board × 6"], station: some("S101") },
241
- * ], bookings: [variant("labour", { team: "Cutting", people: 1n, hours: 3.0 })] },
242
- * { task: "Band doors", qty: some(48.0), parts: [], bookings: [variant("equipment", { resource: "Edge bander E201" })] },
243
- * { task: "Spray doors", qty: some(12.0), parts: [
244
- * { id: "B-101-3", code: "SPR", name: "Seal and lacquer", materials: ["Sealer", "Matt lacquer"], station: none },
245
- * ], bookings: [] },
246
- * ] },
247
- * { id: "B-102", name: "Carcasses, birch", steps: [
248
- * { task: "Cut carcasses", qty: some(8.0), parts: [], bookings: [] },
249
- * { task: "Drill carcasses", qty: some(8.0), parts: [], bookings: [variant("labour", { team: "Machining", people: 2n, hours: 2.5 })] },
250
- * ] },
251
- * { id: "B-103", name: "Shelves, ash", steps: [
252
- * { task: "Cut shelves", qty: some(20.0), parts: [], bookings: [] },
253
- * { task: "Sand shelves", qty: some(20.0), parts: [], bookings: [] },
254
- * ] },
255
- * ] }],
256
- * ]));
257
- * export const sheetBatchDaysPatch = e3.mutation.patch(sheetBatchDays);
251
+ * export const sheetBatchDays = e3.record("sheet_batch_days", DictType(StringType, BatchDay), {
252
+ * initial: new Map([
253
+ * ["2026-10-12", { batches: [
254
+ * { id: "B-101", name: "Doors, oak", steps: [
255
+ * { task: "Cut doors", qty: some(12.0), parts: [
256
+ * { id: "B-101-1", code: "CUT", name: "Cut the door blanks", materials: ["Oak veneered board × 6"], station: some("S101") },
257
+ * ], bookings: [variant("labour", { team: "Cutting", people: 1n, hours: 3.0 })] },
258
+ * { task: "Band doors", qty: some(48.0), parts: [], bookings: [variant("equipment", { resource: "Edge bander E201" })] },
259
+ * { task: "Spray doors", qty: some(12.0), parts: [
260
+ * { id: "B-101-3", code: "SPR", name: "Seal and lacquer", materials: ["Sealer", "Matt lacquer"], station: none },
261
+ * ], bookings: [] },
262
+ * ] },
263
+ * { id: "B-102", name: "Carcasses, birch", steps: [
264
+ * { task: "Cut carcasses", qty: some(8.0), parts: [], bookings: [] },
265
+ * { task: "Drill carcasses", qty: some(8.0), parts: [], bookings: [variant("labour", { team: "Machining", people: 2n, hours: 2.5 })] },
266
+ * ] },
267
+ * { id: "B-103", name: "Shelves, ash", steps: [
268
+ * { task: "Cut shelves", qty: some(20.0), parts: [], bookings: [] },
269
+ * { task: "Sand shelves", qty: some(20.0), parts: [], bookings: [] },
270
+ * ] },
271
+ * ] }],
272
+ * ]),
273
+ * mutations: (mutation) => ({
274
+ * // The days' patch door — every Save commits through it.
275
+ * patch: mutation.patch(),
276
+ * }),
277
+ * });
258
278
  * export const BatchStepTemplate = StructType({ name: StringType, group: StringType, task: StringType });
259
- * export const sheetBatchStepTemplates = e3.record("sheet_batch_step_templates", DictType(StringType, BatchStepTemplate), new Map([
260
- * ["sand", { name: "Sand", group: "Steps", task: "Sand" }],
261
- * ["seal", { name: "Seal", group: "Steps", task: "Seal" }],
262
- * ]));
263
- * export const sheetBatchStepTemplatesByGroup = e3.recordIndex("sheet_batch_step_templates_by_group", sheetBatchStepTemplates, { on: ["group"] });
279
+ * export const sheetBatchStepTemplates = e3.record("sheet_batch_step_templates", DictType(StringType, BatchStepTemplate), {
280
+ * initial: new Map([
281
+ * ["sand", { name: "Sand", group: "Steps", task: "Sand" }],
282
+ * ["seal", { name: "Seal", group: "Steps", task: "Seal" }],
283
+ * ]),
284
+ * indexes: (index) => ({
285
+ * // The step templates by their group: what the rail narrows them by.
286
+ * sheet_batch_step_templates_by_group: index.on(["group"]),
287
+ * }),
288
+ * });
264
289
  * export const BatchTemplate = StructType({ name: StringType, group: StringType, batch: StringType, steps: ArrayType(BatchStep) });
265
- * export const sheetBatchTemplates = e3.record("sheet_batch_templates", DictType(StringType, BatchTemplate), new Map([
266
- * ["finishing", { name: "Finishing batch", group: "Batches", batch: "Finishing", steps: [
267
- * { task: "Sand", qty: none, parts: [], bookings: [] },
268
- * { task: "Seal", qty: none, parts: [], bookings: [] },
269
- * { task: "Spray", qty: none, parts: [], bookings: [] },
270
- * ] }],
271
- * ]));
272
- * export const sheetBatchTemplatesByGroup = e3.recordIndex("sheet_batch_templates_by_group", sheetBatchTemplates, { on: ["group"] });
290
+ * export const sheetBatchTemplates = e3.record("sheet_batch_templates", DictType(StringType, BatchTemplate), {
291
+ * initial: new Map([
292
+ * ["finishing", { name: "Finishing batch", group: "Batches", batch: "Finishing", steps: [
293
+ * { task: "Sand", qty: none, parts: [], bookings: [] },
294
+ * { task: "Seal", qty: none, parts: [], bookings: [] },
295
+ * { task: "Spray", qty: none, parts: [], bookings: [] },
296
+ * ] }],
297
+ * ]),
298
+ * indexes: (index) => ({
299
+ * // The batch templates by their group: what the rail narrows them by.
300
+ * sheet_batch_templates_by_group: index.on(["group"]),
301
+ * }),
302
+ * });
273
303
  *
274
304
  * const sheet = East.function([], UIComponentType, (_$) => (
275
305
  * <Reactive>{$ => {
276
- * const days = $.let(Record.bind(sheetBatchDays, [sheetBatchDaysPatch]));
306
+ * const days = $.let(Record.bind(sheetBatchDays));
277
307
  * const stepTemplates = $.let(Data.bind(sheetBatchStepTemplates));
278
308
  * const batchTemplates = $.let(Data.bind(sheetBatchTemplates));
279
309
  * // One rail over the templates records, each its own source: they narrow the Rows tab's cards.
280
310
  * const slice = $.let(Slice.bindRecords("sheet.batches", {
281
311
  * rowTemplates: {
282
- * source: Data.bindPaged(sheetBatchStepTemplates, { indexes: [sheetBatchStepTemplatesByGroup] }),
312
+ * source: Data.bindPaged(sheetBatchStepTemplates, { indexes: ["sheet_batch_step_templates_by_group"] }),
283
313
  * label: "Step templates", fields: { group: { label: "Group", hints: ["Steps"] } },
284
314
  * },
285
315
  * groupTemplates: {
286
- * source: Data.bindPaged(sheetBatchTemplates, { indexes: [sheetBatchTemplatesByGroup] }),
316
+ * source: Data.bindPaged(sheetBatchTemplates, { indexes: ["sheet_batch_templates_by_group"] }),
287
317
  * label: "Batch templates", fields: { group: { label: "Group", hints: ["Batches"] } },
288
318
  * },
289
319
  * }));
@@ -1 +1 @@
1
- {"version":3,"file":"sub-rows.d.ts","sourceRoot":"","sources":["../../../src/sheet/sub-rows.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sub-rows.d.ts","sourceRoot":"","sources":["../../../src/sheet/sub-rows.ts"],"names":[],"mappings":"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"}
@@ -41,57 +41,72 @@ import { SheetFacetType, SheetSubRowType } from "./types.js";
41
41
  * export const BatchStep = StructType({ task: StringType, qty: OptionType(FloatType), parts: ArrayType(BatchPart), bookings: ArrayType(BatchBooking) });
42
42
  * export const Batch = StructType({ id: StringType, name: StringType, steps: ArrayType(BatchStep) });
43
43
  * export const BatchDay = StructType({ batches: ArrayType(Batch) });
44
- * export const sheetBatchDays = e3.record("sheet_batch_days", DictType(StringType, BatchDay), new Map([
45
- * ["2026-10-12", { batches: [
46
- * { id: "B-101", name: "Doors, oak", steps: [
47
- * { task: "Cut doors", qty: some(12.0), parts: [
48
- * { id: "B-101-1", code: "CUT", name: "Cut the door blanks", materials: ["Oak veneered board × 6"], station: some("S101") },
49
- * ], bookings: [variant("labour", { team: "Cutting", people: 1n, hours: 3.0 })] },
50
- * { task: "Band doors", qty: some(48.0), parts: [], bookings: [variant("equipment", { resource: "Edge bander E201" })] },
51
- * { task: "Spray doors", qty: some(12.0), parts: [
52
- * { id: "B-101-3", code: "SPR", name: "Seal and lacquer", materials: ["Sealer", "Matt lacquer"], station: none },
53
- * ], bookings: [] },
54
- * ] },
55
- * { id: "B-102", name: "Carcasses, birch", steps: [
56
- * { task: "Cut carcasses", qty: some(8.0), parts: [], bookings: [] },
57
- * { task: "Drill carcasses", qty: some(8.0), parts: [], bookings: [variant("labour", { team: "Machining", people: 2n, hours: 2.5 })] },
58
- * ] },
59
- * { id: "B-103", name: "Shelves, ash", steps: [
60
- * { task: "Cut shelves", qty: some(20.0), parts: [], bookings: [] },
61
- * { task: "Sand shelves", qty: some(20.0), parts: [], bookings: [] },
62
- * ] },
63
- * ] }],
64
- * ]));
65
- * export const sheetBatchDaysPatch = e3.mutation.patch(sheetBatchDays);
44
+ * export const sheetBatchDays = e3.record("sheet_batch_days", DictType(StringType, BatchDay), {
45
+ * initial: new Map([
46
+ * ["2026-10-12", { batches: [
47
+ * { id: "B-101", name: "Doors, oak", steps: [
48
+ * { task: "Cut doors", qty: some(12.0), parts: [
49
+ * { id: "B-101-1", code: "CUT", name: "Cut the door blanks", materials: ["Oak veneered board × 6"], station: some("S101") },
50
+ * ], bookings: [variant("labour", { team: "Cutting", people: 1n, hours: 3.0 })] },
51
+ * { task: "Band doors", qty: some(48.0), parts: [], bookings: [variant("equipment", { resource: "Edge bander E201" })] },
52
+ * { task: "Spray doors", qty: some(12.0), parts: [
53
+ * { id: "B-101-3", code: "SPR", name: "Seal and lacquer", materials: ["Sealer", "Matt lacquer"], station: none },
54
+ * ], bookings: [] },
55
+ * ] },
56
+ * { id: "B-102", name: "Carcasses, birch", steps: [
57
+ * { task: "Cut carcasses", qty: some(8.0), parts: [], bookings: [] },
58
+ * { task: "Drill carcasses", qty: some(8.0), parts: [], bookings: [variant("labour", { team: "Machining", people: 2n, hours: 2.5 })] },
59
+ * ] },
60
+ * { id: "B-103", name: "Shelves, ash", steps: [
61
+ * { task: "Cut shelves", qty: some(20.0), parts: [], bookings: [] },
62
+ * { task: "Sand shelves", qty: some(20.0), parts: [], bookings: [] },
63
+ * ] },
64
+ * ] }],
65
+ * ]),
66
+ * mutations: (mutation) => ({
67
+ * // The days' patch door — every Save commits through it.
68
+ * patch: mutation.patch(),
69
+ * }),
70
+ * });
66
71
  * export const BatchStepTemplate = StructType({ name: StringType, group: StringType, task: StringType });
67
- * export const sheetBatchStepTemplates = e3.record("sheet_batch_step_templates", DictType(StringType, BatchStepTemplate), new Map([
68
- * ["sand", { name: "Sand", group: "Steps", task: "Sand" }],
69
- * ["seal", { name: "Seal", group: "Steps", task: "Seal" }],
70
- * ]));
71
- * export const sheetBatchStepTemplatesByGroup = e3.recordIndex("sheet_batch_step_templates_by_group", sheetBatchStepTemplates, { on: ["group"] });
72
+ * export const sheetBatchStepTemplates = e3.record("sheet_batch_step_templates", DictType(StringType, BatchStepTemplate), {
73
+ * initial: new Map([
74
+ * ["sand", { name: "Sand", group: "Steps", task: "Sand" }],
75
+ * ["seal", { name: "Seal", group: "Steps", task: "Seal" }],
76
+ * ]),
77
+ * indexes: (index) => ({
78
+ * // The step templates by their group: what the rail narrows them by.
79
+ * sheet_batch_step_templates_by_group: index.on(["group"]),
80
+ * }),
81
+ * });
72
82
  * export const BatchTemplate = StructType({ name: StringType, group: StringType, batch: StringType, steps: ArrayType(BatchStep) });
73
- * export const sheetBatchTemplates = e3.record("sheet_batch_templates", DictType(StringType, BatchTemplate), new Map([
74
- * ["finishing", { name: "Finishing batch", group: "Batches", batch: "Finishing", steps: [
75
- * { task: "Sand", qty: none, parts: [], bookings: [] },
76
- * { task: "Seal", qty: none, parts: [], bookings: [] },
77
- * { task: "Spray", qty: none, parts: [], bookings: [] },
78
- * ] }],
79
- * ]));
80
- * export const sheetBatchTemplatesByGroup = e3.recordIndex("sheet_batch_templates_by_group", sheetBatchTemplates, { on: ["group"] });
83
+ * export const sheetBatchTemplates = e3.record("sheet_batch_templates", DictType(StringType, BatchTemplate), {
84
+ * initial: new Map([
85
+ * ["finishing", { name: "Finishing batch", group: "Batches", batch: "Finishing", steps: [
86
+ * { task: "Sand", qty: none, parts: [], bookings: [] },
87
+ * { task: "Seal", qty: none, parts: [], bookings: [] },
88
+ * { task: "Spray", qty: none, parts: [], bookings: [] },
89
+ * ] }],
90
+ * ]),
91
+ * indexes: (index) => ({
92
+ * // The batch templates by their group: what the rail narrows them by.
93
+ * sheet_batch_templates_by_group: index.on(["group"]),
94
+ * }),
95
+ * });
81
96
  *
82
97
  * const sheet = East.function([], UIComponentType, (_$) => (
83
98
  * <Reactive>{$ => {
84
- * const days = $.let(Record.bind(sheetBatchDays, [sheetBatchDaysPatch]));
99
+ * const days = $.let(Record.bind(sheetBatchDays));
85
100
  * const stepTemplates = $.let(Data.bind(sheetBatchStepTemplates));
86
101
  * const batchTemplates = $.let(Data.bind(sheetBatchTemplates));
87
102
  * // One rail over the templates records, each its own source: they narrow the Rows tab's cards.
88
103
  * const slice = $.let(Slice.bindRecords("sheet.batches", {
89
104
  * rowTemplates: {
90
- * source: Data.bindPaged(sheetBatchStepTemplates, { indexes: [sheetBatchStepTemplatesByGroup] }),
105
+ * source: Data.bindPaged(sheetBatchStepTemplates, { indexes: ["sheet_batch_step_templates_by_group"] }),
91
106
  * label: "Step templates", fields: { group: { label: "Group", hints: ["Steps"] } },
92
107
  * },
93
108
  * groupTemplates: {
94
- * source: Data.bindPaged(sheetBatchTemplates, { indexes: [sheetBatchTemplatesByGroup] }),
109
+ * source: Data.bindPaged(sheetBatchTemplates, { indexes: ["sheet_batch_templates_by_group"] }),
95
110
  * label: "Batch templates", fields: { group: { label: "Group", hints: ["Batches"] } },
96
111
  * },
97
112
  * }));
@@ -194,57 +209,72 @@ function textOrBlank(v) {
194
209
  * export const BatchStep = StructType({ task: StringType, qty: OptionType(FloatType), parts: ArrayType(BatchPart), bookings: ArrayType(BatchBooking) });
195
210
  * export const Batch = StructType({ id: StringType, name: StringType, steps: ArrayType(BatchStep) });
196
211
  * export const BatchDay = StructType({ batches: ArrayType(Batch) });
197
- * export const sheetBatchDays = e3.record("sheet_batch_days", DictType(StringType, BatchDay), new Map([
198
- * ["2026-10-12", { batches: [
199
- * { id: "B-101", name: "Doors, oak", steps: [
200
- * { task: "Cut doors", qty: some(12.0), parts: [
201
- * { id: "B-101-1", code: "CUT", name: "Cut the door blanks", materials: ["Oak veneered board × 6"], station: some("S101") },
202
- * ], bookings: [variant("labour", { team: "Cutting", people: 1n, hours: 3.0 })] },
203
- * { task: "Band doors", qty: some(48.0), parts: [], bookings: [variant("equipment", { resource: "Edge bander E201" })] },
204
- * { task: "Spray doors", qty: some(12.0), parts: [
205
- * { id: "B-101-3", code: "SPR", name: "Seal and lacquer", materials: ["Sealer", "Matt lacquer"], station: none },
206
- * ], bookings: [] },
207
- * ] },
208
- * { id: "B-102", name: "Carcasses, birch", steps: [
209
- * { task: "Cut carcasses", qty: some(8.0), parts: [], bookings: [] },
210
- * { task: "Drill carcasses", qty: some(8.0), parts: [], bookings: [variant("labour", { team: "Machining", people: 2n, hours: 2.5 })] },
211
- * ] },
212
- * { id: "B-103", name: "Shelves, ash", steps: [
213
- * { task: "Cut shelves", qty: some(20.0), parts: [], bookings: [] },
214
- * { task: "Sand shelves", qty: some(20.0), parts: [], bookings: [] },
215
- * ] },
216
- * ] }],
217
- * ]));
218
- * export const sheetBatchDaysPatch = e3.mutation.patch(sheetBatchDays);
212
+ * export const sheetBatchDays = e3.record("sheet_batch_days", DictType(StringType, BatchDay), {
213
+ * initial: new Map([
214
+ * ["2026-10-12", { batches: [
215
+ * { id: "B-101", name: "Doors, oak", steps: [
216
+ * { task: "Cut doors", qty: some(12.0), parts: [
217
+ * { id: "B-101-1", code: "CUT", name: "Cut the door blanks", materials: ["Oak veneered board × 6"], station: some("S101") },
218
+ * ], bookings: [variant("labour", { team: "Cutting", people: 1n, hours: 3.0 })] },
219
+ * { task: "Band doors", qty: some(48.0), parts: [], bookings: [variant("equipment", { resource: "Edge bander E201" })] },
220
+ * { task: "Spray doors", qty: some(12.0), parts: [
221
+ * { id: "B-101-3", code: "SPR", name: "Seal and lacquer", materials: ["Sealer", "Matt lacquer"], station: none },
222
+ * ], bookings: [] },
223
+ * ] },
224
+ * { id: "B-102", name: "Carcasses, birch", steps: [
225
+ * { task: "Cut carcasses", qty: some(8.0), parts: [], bookings: [] },
226
+ * { task: "Drill carcasses", qty: some(8.0), parts: [], bookings: [variant("labour", { team: "Machining", people: 2n, hours: 2.5 })] },
227
+ * ] },
228
+ * { id: "B-103", name: "Shelves, ash", steps: [
229
+ * { task: "Cut shelves", qty: some(20.0), parts: [], bookings: [] },
230
+ * { task: "Sand shelves", qty: some(20.0), parts: [], bookings: [] },
231
+ * ] },
232
+ * ] }],
233
+ * ]),
234
+ * mutations: (mutation) => ({
235
+ * // The days' patch door — every Save commits through it.
236
+ * patch: mutation.patch(),
237
+ * }),
238
+ * });
219
239
  * export const BatchStepTemplate = StructType({ name: StringType, group: StringType, task: StringType });
220
- * export const sheetBatchStepTemplates = e3.record("sheet_batch_step_templates", DictType(StringType, BatchStepTemplate), new Map([
221
- * ["sand", { name: "Sand", group: "Steps", task: "Sand" }],
222
- * ["seal", { name: "Seal", group: "Steps", task: "Seal" }],
223
- * ]));
224
- * export const sheetBatchStepTemplatesByGroup = e3.recordIndex("sheet_batch_step_templates_by_group", sheetBatchStepTemplates, { on: ["group"] });
240
+ * export const sheetBatchStepTemplates = e3.record("sheet_batch_step_templates", DictType(StringType, BatchStepTemplate), {
241
+ * initial: new Map([
242
+ * ["sand", { name: "Sand", group: "Steps", task: "Sand" }],
243
+ * ["seal", { name: "Seal", group: "Steps", task: "Seal" }],
244
+ * ]),
245
+ * indexes: (index) => ({
246
+ * // The step templates by their group: what the rail narrows them by.
247
+ * sheet_batch_step_templates_by_group: index.on(["group"]),
248
+ * }),
249
+ * });
225
250
  * export const BatchTemplate = StructType({ name: StringType, group: StringType, batch: StringType, steps: ArrayType(BatchStep) });
226
- * export const sheetBatchTemplates = e3.record("sheet_batch_templates", DictType(StringType, BatchTemplate), new Map([
227
- * ["finishing", { name: "Finishing batch", group: "Batches", batch: "Finishing", steps: [
228
- * { task: "Sand", qty: none, parts: [], bookings: [] },
229
- * { task: "Seal", qty: none, parts: [], bookings: [] },
230
- * { task: "Spray", qty: none, parts: [], bookings: [] },
231
- * ] }],
232
- * ]));
233
- * export const sheetBatchTemplatesByGroup = e3.recordIndex("sheet_batch_templates_by_group", sheetBatchTemplates, { on: ["group"] });
251
+ * export const sheetBatchTemplates = e3.record("sheet_batch_templates", DictType(StringType, BatchTemplate), {
252
+ * initial: new Map([
253
+ * ["finishing", { name: "Finishing batch", group: "Batches", batch: "Finishing", steps: [
254
+ * { task: "Sand", qty: none, parts: [], bookings: [] },
255
+ * { task: "Seal", qty: none, parts: [], bookings: [] },
256
+ * { task: "Spray", qty: none, parts: [], bookings: [] },
257
+ * ] }],
258
+ * ]),
259
+ * indexes: (index) => ({
260
+ * // The batch templates by their group: what the rail narrows them by.
261
+ * sheet_batch_templates_by_group: index.on(["group"]),
262
+ * }),
263
+ * });
234
264
  *
235
265
  * const sheet = East.function([], UIComponentType, (_$) => (
236
266
  * <Reactive>{$ => {
237
- * const days = $.let(Record.bind(sheetBatchDays, [sheetBatchDaysPatch]));
267
+ * const days = $.let(Record.bind(sheetBatchDays));
238
268
  * const stepTemplates = $.let(Data.bind(sheetBatchStepTemplates));
239
269
  * const batchTemplates = $.let(Data.bind(sheetBatchTemplates));
240
270
  * // One rail over the templates records, each its own source: they narrow the Rows tab's cards.
241
271
  * const slice = $.let(Slice.bindRecords("sheet.batches", {
242
272
  * rowTemplates: {
243
- * source: Data.bindPaged(sheetBatchStepTemplates, { indexes: [sheetBatchStepTemplatesByGroup] }),
273
+ * source: Data.bindPaged(sheetBatchStepTemplates, { indexes: ["sheet_batch_step_templates_by_group"] }),
244
274
  * label: "Step templates", fields: { group: { label: "Group", hints: ["Steps"] } },
245
275
  * },
246
276
  * groupTemplates: {
247
- * source: Data.bindPaged(sheetBatchTemplates, { indexes: [sheetBatchTemplatesByGroup] }),
277
+ * source: Data.bindPaged(sheetBatchTemplates, { indexes: ["sheet_batch_templates_by_group"] }),
248
278
  * label: "Batch templates", fields: { group: { label: "Group", hints: ["Batches"] } },
249
279
  * },
250
280
  * }));
@@ -1 +1 @@
1
- {"version":3,"file":"sub-rows.js","sourceRoot":"","sources":["../../../src/sheet/sub-rows.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sub-rows.js","sourceRoot":"","sources":["../../../src/sheet/sub-rows.ts"],"names":[],"mappings":"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"}