@elaraai/east-ui 1.0.85 → 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 (561) hide show
  1. package/dist/src/buttons/button/index.d.ts +4 -0
  2. package/dist/src/buttons/button/index.d.ts.map +1 -1
  3. package/dist/src/buttons/button/index.js +8 -1
  4. package/dist/src/buttons/button/index.js.map +1 -1
  5. package/dist/src/buttons/button/types.d.ts +6 -5
  6. package/dist/src/buttons/button/types.d.ts.map +1 -1
  7. package/dist/src/buttons/button/types.js.map +1 -1
  8. package/dist/src/buttons/icon-button/index.d.ts +5 -5
  9. package/dist/src/buttons/icon-button/index.d.ts.map +1 -1
  10. package/dist/src/buttons/icon-button/index.js +8 -2
  11. package/dist/src/buttons/icon-button/index.js.map +1 -1
  12. package/dist/src/buttons/icon-button/types.d.ts +8 -12
  13. package/dist/src/buttons/icon-button/types.d.ts.map +1 -1
  14. package/dist/src/buttons/icon-button/types.js +2 -2
  15. package/dist/src/buttons/icon-button/types.js.map +1 -1
  16. package/dist/src/buttons/toggle/index.d.ts +4 -0
  17. package/dist/src/buttons/toggle/index.d.ts.map +1 -1
  18. package/dist/src/buttons/toggle/index.js +6 -1
  19. package/dist/src/buttons/toggle/index.js.map +1 -1
  20. package/dist/src/buttons/toggle/types.d.ts +3 -2
  21. package/dist/src/buttons/toggle/types.d.ts.map +1 -1
  22. package/dist/src/buttons/toggle/types.js.map +1 -1
  23. package/dist/src/charts/chart/index.d.ts.map +1 -1
  24. package/dist/src/charts/chart/index.js +3 -3
  25. package/dist/src/charts/chart/index.js.map +1 -1
  26. package/dist/src/charts/spec/index.d.ts.map +1 -1
  27. package/dist/src/charts/spec/index.js +5 -2
  28. package/dist/src/charts/spec/index.js.map +1 -1
  29. package/dist/src/collections/deck/index.d.ts.map +1 -1
  30. package/dist/src/collections/deck/index.js +2 -2
  31. package/dist/src/collections/deck/index.js.map +1 -1
  32. package/dist/src/collections/index.d.ts +0 -6
  33. package/dist/src/collections/index.d.ts.map +1 -1
  34. package/dist/src/collections/index.js +0 -6
  35. package/dist/src/collections/index.js.map +1 -1
  36. package/dist/src/collections/library/index.d.ts +1 -1
  37. package/dist/src/collections/library/index.d.ts.map +1 -1
  38. package/dist/src/collections/library/index.js +2 -2
  39. package/dist/src/collections/library/index.js.map +1 -1
  40. package/dist/src/collections/schematic/index.d.ts.map +1 -1
  41. package/dist/src/collections/schematic/index.js +2 -2
  42. package/dist/src/collections/schematic/index.js.map +1 -1
  43. package/dist/src/collections/table/index.d.ts +1 -1
  44. package/dist/src/collections/table/index.d.ts.map +1 -1
  45. package/dist/src/collections/table/index.js +2 -2
  46. package/dist/src/collections/table/index.js.map +1 -1
  47. package/dist/src/collections/tree-view/index.d.ts +11 -32
  48. package/dist/src/collections/tree-view/index.d.ts.map +1 -1
  49. package/dist/src/collections/tree-view/index.js +15 -10
  50. package/dist/src/collections/tree-view/index.js.map +1 -1
  51. package/dist/src/component.d.ts +673 -9344
  52. package/dist/src/component.d.ts.map +1 -1
  53. package/dist/src/component.js +5 -259
  54. package/dist/src/component.js.map +1 -1
  55. package/dist/src/contracts/approval.d.ts +6 -8
  56. package/dist/src/contracts/approval.d.ts.map +1 -1
  57. package/dist/src/contracts/approval.js +6 -8
  58. package/dist/src/contracts/approval.js.map +1 -1
  59. package/dist/src/contracts/drag.d.ts +1 -1
  60. package/dist/src/contracts/drag.d.ts.map +1 -1
  61. package/dist/src/contracts/drag.js +4 -5
  62. package/dist/src/contracts/drag.js.map +1 -1
  63. package/dist/src/contracts/editing.d.ts +19 -19
  64. package/dist/src/contracts/editing.js +14 -14
  65. package/dist/src/contracts/fields.d.ts +471 -0
  66. package/dist/src/contracts/fields.d.ts.map +1 -0
  67. package/dist/src/contracts/fields.js +492 -0
  68. package/dist/src/contracts/fields.js.map +1 -0
  69. package/dist/src/contracts/index.d.ts +1 -0
  70. package/dist/src/contracts/index.d.ts.map +1 -1
  71. package/dist/src/contracts/index.js +1 -0
  72. package/dist/src/contracts/index.js.map +1 -1
  73. package/dist/src/contracts/indexed-source.d.ts +118 -0
  74. package/dist/src/contracts/indexed-source.d.ts.map +1 -0
  75. package/dist/src/contracts/indexed-source.js +89 -0
  76. package/dist/src/contracts/indexed-source.js.map +1 -0
  77. package/dist/src/contracts/pick.d.ts +0 -16
  78. package/dist/src/contracts/pick.d.ts.map +1 -1
  79. package/dist/src/contracts/review.d.ts +4 -6
  80. package/dist/src/contracts/review.d.ts.map +1 -1
  81. package/dist/src/contracts/review.js +4 -6
  82. package/dist/src/contracts/review.js.map +1 -1
  83. package/dist/src/contracts/source.d.ts +2 -2
  84. package/dist/src/contracts/source.d.ts.map +1 -1
  85. package/dist/src/contracts/source.js.map +1 -1
  86. package/dist/src/contracts/states.d.ts +1 -3
  87. package/dist/src/contracts/states.d.ts.map +1 -1
  88. package/dist/src/contracts/states.js +1 -3
  89. package/dist/src/contracts/states.js.map +1 -1
  90. package/dist/src/display/editable-chip/index.d.ts +2 -0
  91. package/dist/src/display/editable-chip/index.d.ts.map +1 -1
  92. package/dist/src/display/editable-chip/index.js +4 -1
  93. package/dist/src/display/editable-chip/index.js.map +1 -1
  94. package/dist/src/display/icon/index.d.ts +14 -31
  95. package/dist/src/display/icon/index.d.ts.map +1 -1
  96. package/dist/src/display/icon/index.js +15 -19
  97. package/dist/src/display/icon/index.js.map +1 -1
  98. package/dist/src/display/icon/solid.d.ts +24 -0
  99. package/dist/src/display/icon/solid.d.ts.map +1 -0
  100. package/dist/src/display/icon/solid.js +39 -0
  101. package/dist/src/display/icon/solid.js.map +1 -0
  102. package/dist/src/display/icon/types.d.ts +14 -38
  103. package/dist/src/display/icon/types.d.ts.map +1 -1
  104. package/dist/src/display/icon/types.js +6 -15
  105. package/dist/src/display/icon/types.js.map +1 -1
  106. package/dist/src/display/metric-chip/index.d.ts +2 -0
  107. package/dist/src/display/metric-chip/index.d.ts.map +1 -1
  108. package/dist/src/display/metric-chip/index.js +4 -1
  109. package/dist/src/display/metric-chip/index.js.map +1 -1
  110. package/dist/src/display/stat/index.d.ts +2 -0
  111. package/dist/src/display/stat/index.d.ts.map +1 -1
  112. package/dist/src/display/stat/index.js +4 -1
  113. package/dist/src/display/stat/index.js.map +1 -1
  114. package/dist/src/display/stat/types.d.ts +3 -5
  115. package/dist/src/display/stat/types.d.ts.map +1 -1
  116. package/dist/src/display/stat/types.js +5 -2
  117. package/dist/src/display/stat/types.js.map +1 -1
  118. package/dist/src/feedback/banner/index.d.ts +5 -3
  119. package/dist/src/feedback/banner/index.d.ts.map +1 -1
  120. package/dist/src/feedback/banner/index.js +4 -1
  121. package/dist/src/feedback/banner/index.js.map +1 -1
  122. package/dist/src/feedback/empty-state/index.d.ts +16 -19
  123. package/dist/src/feedback/empty-state/index.d.ts.map +1 -1
  124. package/dist/src/feedback/empty-state/index.js +17 -10
  125. package/dist/src/feedback/empty-state/index.js.map +1 -1
  126. package/dist/src/feedback/status/index.d.ts +5 -3
  127. package/dist/src/feedback/status/index.d.ts.map +1 -1
  128. package/dist/src/feedback/status/index.js +4 -1
  129. package/dist/src/feedback/status/index.js.map +1 -1
  130. package/dist/src/index.d.ts +5 -6
  131. package/dist/src/index.d.ts.map +1 -1
  132. package/dist/src/index.js +12 -11
  133. package/dist/src/index.js.map +1 -1
  134. package/dist/src/internal.d.ts +23 -16
  135. package/dist/src/internal.d.ts.map +1 -1
  136. package/dist/src/internal.js +29 -13
  137. package/dist/src/internal.js.map +1 -1
  138. package/dist/src/navigation/index.d.ts +0 -2
  139. package/dist/src/navigation/index.d.ts.map +1 -1
  140. package/dist/src/navigation/index.js +0 -2
  141. package/dist/src/navigation/index.js.map +1 -1
  142. package/dist/src/navigation/nav-list/index.d.ts +2 -0
  143. package/dist/src/navigation/nav-list/index.d.ts.map +1 -1
  144. package/dist/src/navigation/nav-list/index.js +4 -1
  145. package/dist/src/navigation/nav-list/index.js.map +1 -1
  146. package/dist/src/navigation/nav-list/types.d.ts +3 -14
  147. package/dist/src/navigation/nav-list/types.d.ts.map +1 -1
  148. package/dist/src/navigation/nav-list/types.js.map +1 -1
  149. package/dist/src/overlays/command-palette/index.d.ts +2 -0
  150. package/dist/src/overlays/command-palette/index.d.ts.map +1 -1
  151. package/dist/src/overlays/command-palette/index.js +5 -0
  152. package/dist/src/overlays/command-palette/index.js.map +1 -1
  153. package/dist/src/overlays/command-palette/types.d.ts +0 -8
  154. package/dist/src/overlays/command-palette/types.d.ts.map +1 -1
  155. package/dist/src/pick/index.d.ts +1 -17
  156. package/dist/src/pick/index.d.ts.map +1 -1
  157. package/dist/src/pick/index.js +1 -1
  158. package/dist/src/platform/slice/index.d.ts +1324 -2039
  159. package/dist/src/platform/slice/index.d.ts.map +1 -1
  160. package/dist/src/platform/slice/index.js +55 -74
  161. package/dist/src/platform/slice/index.js.map +1 -1
  162. package/dist/src/platform/slice/local.d.ts +743 -0
  163. package/dist/src/platform/slice/local.d.ts.map +1 -0
  164. package/dist/src/platform/slice/local.js +133 -0
  165. package/dist/src/platform/slice/local.js.map +1 -0
  166. package/dist/src/platform/slice/record-chrome.d.ts +211 -0
  167. package/dist/src/platform/slice/record-chrome.d.ts.map +1 -0
  168. package/dist/src/platform/slice/record-chrome.js +52 -0
  169. package/dist/src/platform/slice/record-chrome.js.map +1 -0
  170. package/dist/src/platform/slice/record-interval.d.ts +24 -0
  171. package/dist/src/platform/slice/record-interval.d.ts.map +1 -0
  172. package/dist/src/platform/slice/record-interval.js +61 -0
  173. package/dist/src/platform/slice/record-interval.js.map +1 -0
  174. package/dist/src/platform/slice/record-plan.d.ts +54 -0
  175. package/dist/src/platform/slice/record-plan.d.ts.map +1 -0
  176. package/dist/src/platform/slice/record-plan.js +139 -0
  177. package/dist/src/platform/slice/record-plan.js.map +1 -0
  178. package/dist/src/platform/slice/record-types.d.ts +2739 -0
  179. package/dist/src/platform/slice/record-types.d.ts.map +1 -0
  180. package/dist/src/platform/slice/record-types.js +209 -0
  181. package/dist/src/platform/slice/record-types.js.map +1 -0
  182. package/dist/src/platform/slice/record.d.ts +109 -0
  183. package/dist/src/platform/slice/record.d.ts.map +1 -0
  184. package/dist/src/platform/slice/record.js +210 -0
  185. package/dist/src/platform/slice/record.js.map +1 -0
  186. package/dist/src/reactive/match.d.ts +4 -6
  187. package/dist/src/reactive/match.d.ts.map +1 -1
  188. package/dist/src/reactive/match.js +4 -6
  189. package/dist/src/reactive/match.js.map +1 -1
  190. package/dist/src/runtime/collections/deck.d.ts.map +1 -1
  191. package/dist/src/runtime/collections/index.d.ts +0 -6
  192. package/dist/src/runtime/collections/index.d.ts.map +1 -1
  193. package/dist/src/runtime/collections/index.js +0 -6
  194. package/dist/src/runtime/collections/index.js.map +1 -1
  195. package/dist/src/runtime/display/icon.d.ts +6 -5
  196. package/dist/src/runtime/display/icon.d.ts.map +1 -1
  197. package/dist/src/runtime/display/icon.js +6 -5
  198. package/dist/src/runtime/display/icon.js.map +1 -1
  199. package/dist/src/runtime/feedback/empty-state.d.ts +5 -5
  200. package/dist/src/runtime/feedback/empty-state.js +5 -5
  201. package/dist/src/runtime/layout/dock.d.ts +2 -1
  202. package/dist/src/runtime/layout/dock.d.ts.map +1 -1
  203. package/dist/src/runtime/layout/dock.js +2 -1
  204. package/dist/src/runtime/layout/dock.js.map +1 -1
  205. package/dist/src/runtime/navigation/index.d.ts +0 -3
  206. package/dist/src/runtime/navigation/index.d.ts.map +1 -1
  207. package/dist/src/runtime/navigation/index.js +0 -3
  208. package/dist/src/runtime/navigation/index.js.map +1 -1
  209. package/dist/src/runtime/reactive/match.d.ts +2 -3
  210. package/dist/src/runtime/reactive/match.d.ts.map +1 -1
  211. package/dist/src/runtime/reactive/match.js +2 -3
  212. package/dist/src/runtime/reactive/match.js.map +1 -1
  213. package/dist/src/runtime/record-slice-source.d.ts +78 -0
  214. package/dist/src/runtime/record-slice-source.d.ts.map +1 -0
  215. package/dist/src/runtime/record-slice-source.js +201 -0
  216. package/dist/src/runtime/record-slice-source.js.map +1 -0
  217. package/dist/src/runtime/record-slice.d.ts +110 -0
  218. package/dist/src/runtime/record-slice.d.ts.map +1 -0
  219. package/dist/src/runtime/record-slice.js +374 -0
  220. package/dist/src/runtime/record-slice.js.map +1 -0
  221. package/dist/src/runtime/slice.d.ts +11 -13
  222. package/dist/src/runtime/slice.d.ts.map +1 -1
  223. package/dist/src/runtime/slice.js +41 -93
  224. package/dist/src/runtime/slice.js.map +1 -1
  225. package/dist/src/shared/plot-gutter.d.ts +1 -1
  226. package/dist/src/shared/plot-gutter.js +1 -1
  227. package/dist/src/shared/resolve-tag.d.ts +23 -0
  228. package/dist/src/shared/resolve-tag.d.ts.map +1 -0
  229. package/dist/src/shared/resolve-tag.js +26 -0
  230. package/dist/src/shared/resolve-tag.js.map +1 -0
  231. package/dist/src/shared/tree.d.ts +1 -1
  232. package/dist/src/shared/tree.js +1 -1
  233. package/dist/src/slice/breakdown/index.d.ts +1 -1
  234. package/dist/src/slice/breakdown/index.d.ts.map +1 -1
  235. package/dist/src/slice/breakdown/index.js +3 -3
  236. package/dist/src/slice/breakdown/index.js.map +1 -1
  237. package/dist/src/slice/cohort/index.d.ts +4 -5
  238. package/dist/src/slice/cohort/index.d.ts.map +1 -1
  239. package/dist/src/slice/cohort/index.js +6 -7
  240. package/dist/src/slice/cohort/index.js.map +1 -1
  241. package/dist/src/slice/filter/index.d.ts +1 -1
  242. package/dist/src/slice/filter/index.d.ts.map +1 -1
  243. package/dist/src/slice/filter/index.js +3 -3
  244. package/dist/src/slice/filter/index.js.map +1 -1
  245. package/dist/src/slice/index.d.ts +20 -2230
  246. package/dist/src/slice/index.d.ts.map +1 -1
  247. package/dist/src/slice/legend/index.d.ts +2 -2
  248. package/dist/src/slice/legend/index.d.ts.map +1 -1
  249. package/dist/src/slice/legend/index.js +4 -4
  250. package/dist/src/slice/legend/index.js.map +1 -1
  251. package/dist/src/slice/rail/index.d.ts +7 -4
  252. package/dist/src/slice/rail/index.d.ts.map +1 -1
  253. package/dist/src/slice/rail/index.js +10 -5
  254. package/dist/src/slice/rail/index.js.map +1 -1
  255. package/dist/src/slice/range/index.d.ts +1 -1
  256. package/dist/src/slice/range/index.d.ts.map +1 -1
  257. package/dist/src/slice/range/index.js +3 -3
  258. package/dist/src/slice/range/index.js.map +1 -1
  259. package/dist/src/slice/record/index.d.ts +171 -0
  260. package/dist/src/slice/record/index.d.ts.map +1 -0
  261. package/dist/src/slice/record/index.js +10 -0
  262. package/dist/src/slice/record/index.js.map +1 -0
  263. package/dist/src/slice/search/index.d.ts +6 -6
  264. package/dist/src/slice/search/index.d.ts.map +1 -1
  265. package/dist/src/slice/search/index.js +7 -7
  266. package/dist/src/slice/search/index.js.map +1 -1
  267. package/dist/src/slice/summary/index.d.ts +1 -1
  268. package/dist/src/slice/summary/index.d.ts.map +1 -1
  269. package/dist/src/slice/summary/index.js +3 -3
  270. package/dist/src/slice/summary/index.js.map +1 -1
  271. package/dist/src/typography/list/index.d.ts +2 -8
  272. package/dist/src/typography/list/index.d.ts.map +1 -1
  273. package/dist/src/typography/list/index.js +4 -1
  274. package/dist/src/typography/list/index.js.map +1 -1
  275. package/dist/src/typography/list/types.d.ts +0 -8
  276. package/dist/src/typography/list/types.d.ts.map +1 -1
  277. package/dist/test/collections/deck.examples.d.ts.map +1 -1
  278. package/dist/test/collections/deck.examples.js +6 -7
  279. package/dist/test/collections/deck.examples.js.map +1 -1
  280. package/dist/test/collections/index.d.ts +0 -1
  281. package/dist/test/collections/index.d.ts.map +1 -1
  282. package/dist/test/collections/index.js +0 -1
  283. package/dist/test/collections/index.js.map +1 -1
  284. package/dist/test/collections/library.examples.d.ts.map +1 -1
  285. package/dist/test/collections/library.examples.js +6 -7
  286. package/dist/test/collections/library.examples.js.map +1 -1
  287. package/dist/test/collections/schematic.examples.d.ts.map +1 -1
  288. package/dist/test/collections/schematic.examples.js +11 -19
  289. package/dist/test/collections/schematic.examples.js.map +1 -1
  290. package/dist/test/collections/tree-view.examples.js +2 -2
  291. package/dist/test/contracts/editing.examples.d.ts +1 -0
  292. package/dist/test/contracts/editing.examples.d.ts.map +1 -1
  293. package/dist/test/contracts/editing.examples.js +37 -6
  294. package/dist/test/contracts/editing.examples.js.map +1 -1
  295. package/dist/test/contracts/fields.examples.d.ts +7 -0
  296. package/dist/test/contracts/fields.examples.d.ts.map +1 -0
  297. package/dist/test/contracts/fields.examples.js +42 -0
  298. package/dist/test/contracts/fields.examples.js.map +1 -0
  299. package/dist/test/display/avatar.examples.d.ts.map +1 -1
  300. package/dist/test/display/avatar.examples.js +3 -3
  301. package/dist/test/display/avatar.examples.js.map +1 -1
  302. package/dist/test/display/icon.examples.d.ts.map +1 -1
  303. package/dist/test/display/icon.examples.js +12 -11
  304. package/dist/test/display/icon.examples.js.map +1 -1
  305. package/dist/test/feedback/empty-state.examples.js +9 -9
  306. package/dist/test/feedback/empty-state.examples.js.map +1 -1
  307. package/dist/test/layout/dock.examples.d.ts +0 -8
  308. package/dist/test/layout/dock.examples.d.ts.map +1 -1
  309. package/dist/test/layout/dock.examples.js +2 -42
  310. package/dist/test/layout/dock.examples.js.map +1 -1
  311. package/dist/test/layout/snap-grid.examples.d.ts.map +1 -1
  312. package/dist/test/layout/snap-grid.examples.js +18 -28
  313. package/dist/test/layout/snap-grid.examples.js.map +1 -1
  314. package/dist/test/navigation/index.d.ts +0 -2
  315. package/dist/test/navigation/index.d.ts.map +1 -1
  316. package/dist/test/navigation/index.js +0 -2
  317. package/dist/test/navigation/index.js.map +1 -1
  318. package/dist/test/navigation/nav-list.examples.js.map +1 -1
  319. package/dist/test/platform/index.d.ts +1 -0
  320. package/dist/test/platform/index.d.ts.map +1 -1
  321. package/dist/test/platform/index.js +1 -0
  322. package/dist/test/platform/index.js.map +1 -1
  323. package/dist/test/platform/slice-local.examples.d.ts +2 -0
  324. package/dist/test/platform/slice-local.examples.d.ts.map +1 -0
  325. package/dist/test/platform/slice-local.examples.js +31 -0
  326. package/dist/test/platform/slice-local.examples.js.map +1 -0
  327. package/dist/test/platform/slice.examples.js +61 -61
  328. package/dist/test/platform/slice.examples.js.map +1 -1
  329. package/dist/test/slice/slice.examples.d.ts +0 -1
  330. package/dist/test/slice/slice.examples.d.ts.map +1 -1
  331. package/dist/test/slice/slice.examples.js +67 -181
  332. package/dist/test/slice/slice.examples.js.map +1 -1
  333. package/package.json +4 -4
  334. package/dist/src/collections/board/index.d.ts +0 -855
  335. package/dist/src/collections/board/index.d.ts.map +0 -1
  336. package/dist/src/collections/board/index.js +0 -416
  337. package/dist/src/collections/board/index.js.map +0 -1
  338. package/dist/src/collections/board/types.d.ts +0 -111
  339. package/dist/src/collections/board/types.d.ts.map +0 -1
  340. package/dist/src/collections/board/types.js +0 -89
  341. package/dist/src/collections/board/types.js.map +0 -1
  342. package/dist/src/collections/calendar/index.d.ts +0 -446
  343. package/dist/src/collections/calendar/index.d.ts.map +0 -1
  344. package/dist/src/collections/calendar/index.js +0 -287
  345. package/dist/src/collections/calendar/index.js.map +0 -1
  346. package/dist/src/collections/calendar/types.d.ts +0 -338
  347. package/dist/src/collections/calendar/types.d.ts.map +0 -1
  348. package/dist/src/collections/calendar/types.js +0 -206
  349. package/dist/src/collections/calendar/types.js.map +0 -1
  350. package/dist/src/collections/flowchart/index.d.ts +0 -430
  351. package/dist/src/collections/flowchart/index.d.ts.map +0 -1
  352. package/dist/src/collections/flowchart/index.js +0 -292
  353. package/dist/src/collections/flowchart/index.js.map +0 -1
  354. package/dist/src/collections/flowchart/types.d.ts +0 -333
  355. package/dist/src/collections/flowchart/types.d.ts.map +0 -1
  356. package/dist/src/collections/flowchart/types.js +0 -263
  357. package/dist/src/collections/flowchart/types.js.map +0 -1
  358. package/dist/src/collections/plan/assemble.d.ts +0 -2274
  359. package/dist/src/collections/plan/assemble.d.ts.map +0 -1
  360. package/dist/src/collections/plan/assemble.js +0 -210
  361. package/dist/src/collections/plan/assemble.js.map +0 -1
  362. package/dist/src/collections/plan/builders.d.ts +0 -765
  363. package/dist/src/collections/plan/builders.d.ts.map +0 -1
  364. package/dist/src/collections/plan/builders.js +0 -673
  365. package/dist/src/collections/plan/builders.js.map +0 -1
  366. package/dist/src/collections/plan/factories.d.ts +0 -512
  367. package/dist/src/collections/plan/factories.d.ts.map +0 -1
  368. package/dist/src/collections/plan/factories.js +0 -539
  369. package/dist/src/collections/plan/factories.js.map +0 -1
  370. package/dist/src/collections/plan/index.d.ts +0 -324
  371. package/dist/src/collections/plan/index.d.ts.map +0 -1
  372. package/dist/src/collections/plan/index.js +0 -193
  373. package/dist/src/collections/plan/index.js.map +0 -1
  374. package/dist/src/collections/plan/ir.d.ts +0 -2490
  375. package/dist/src/collections/plan/ir.d.ts.map +0 -1
  376. package/dist/src/collections/plan/ir.js +0 -107
  377. package/dist/src/collections/plan/ir.js.map +0 -1
  378. package/dist/src/collections/plan/pick.d.ts +0 -133
  379. package/dist/src/collections/plan/pick.d.ts.map +0 -1
  380. package/dist/src/collections/plan/pick.js +0 -208
  381. package/dist/src/collections/plan/pick.js.map +0 -1
  382. package/dist/src/collections/plan/root.d.ts +0 -297
  383. package/dist/src/collections/plan/root.d.ts.map +0 -1
  384. package/dist/src/collections/plan/root.js +0 -427
  385. package/dist/src/collections/plan/root.js.map +0 -1
  386. package/dist/src/collections/plan/series.d.ts +0 -13887
  387. package/dist/src/collections/plan/series.d.ts.map +0 -1
  388. package/dist/src/collections/plan/series.js +0 -1710
  389. package/dist/src/collections/plan/series.js.map +0 -1
  390. package/dist/src/collections/plan/types.d.ts +0 -12612
  391. package/dist/src/collections/plan/types.d.ts.map +0 -1
  392. package/dist/src/collections/plan/types.js +0 -1345
  393. package/dist/src/collections/plan/types.js.map +0 -1
  394. package/dist/src/collections/roster/index.d.ts +0 -787
  395. package/dist/src/collections/roster/index.d.ts.map +0 -1
  396. package/dist/src/collections/roster/index.js +0 -325
  397. package/dist/src/collections/roster/index.js.map +0 -1
  398. package/dist/src/collections/roster/types.d.ts +0 -97
  399. package/dist/src/collections/roster/types.d.ts.map +0 -1
  400. package/dist/src/collections/roster/types.js +0 -72
  401. package/dist/src/collections/roster/types.js.map +0 -1
  402. package/dist/src/collections/sheet/bridge.d.ts +0 -376
  403. package/dist/src/collections/sheet/bridge.d.ts.map +0 -1
  404. package/dist/src/collections/sheet/bridge.js +0 -773
  405. package/dist/src/collections/sheet/bridge.js.map +0 -1
  406. package/dist/src/collections/sheet/columns.d.ts +0 -410
  407. package/dist/src/collections/sheet/columns.d.ts.map +0 -1
  408. package/dist/src/collections/sheet/columns.js +0 -99
  409. package/dist/src/collections/sheet/columns.js.map +0 -1
  410. package/dist/src/collections/sheet/context-bridge.d.ts +0 -48
  411. package/dist/src/collections/sheet/context-bridge.d.ts.map +0 -1
  412. package/dist/src/collections/sheet/context-bridge.js +0 -216
  413. package/dist/src/collections/sheet/context-bridge.js.map +0 -1
  414. package/dist/src/collections/sheet/draft-bridge.d.ts +0 -37
  415. package/dist/src/collections/sheet/draft-bridge.d.ts.map +0 -1
  416. package/dist/src/collections/sheet/draft-bridge.js +0 -153
  417. package/dist/src/collections/sheet/draft-bridge.js.map +0 -1
  418. package/dist/src/collections/sheet/drafts.d.ts +0 -14
  419. package/dist/src/collections/sheet/drafts.d.ts.map +0 -1
  420. package/dist/src/collections/sheet/drafts.js +0 -14
  421. package/dist/src/collections/sheet/drafts.js.map +0 -1
  422. package/dist/src/collections/sheet/editing-bridge.d.ts +0 -36
  423. package/dist/src/collections/sheet/editing-bridge.d.ts.map +0 -1
  424. package/dist/src/collections/sheet/editing-bridge.js +0 -196
  425. package/dist/src/collections/sheet/editing-bridge.js.map +0 -1
  426. package/dist/src/collections/sheet/editing-types.d.ts +0 -268
  427. package/dist/src/collections/sheet/editing-types.d.ts.map +0 -1
  428. package/dist/src/collections/sheet/editing-types.js +0 -34
  429. package/dist/src/collections/sheet/editing-types.js.map +0 -1
  430. package/dist/src/collections/sheet/edits.d.ts +0 -37
  431. package/dist/src/collections/sheet/edits.d.ts.map +0 -1
  432. package/dist/src/collections/sheet/edits.js +0 -31
  433. package/dist/src/collections/sheet/edits.js.map +0 -1
  434. package/dist/src/collections/sheet/group.d.ts +0 -165
  435. package/dist/src/collections/sheet/group.d.ts.map +0 -1
  436. package/dist/src/collections/sheet/group.js +0 -52
  437. package/dist/src/collections/sheet/group.js.map +0 -1
  438. package/dist/src/collections/sheet/index.d.ts +0 -351
  439. package/dist/src/collections/sheet/index.d.ts.map +0 -1
  440. package/dist/src/collections/sheet/index.js +0 -208
  441. package/dist/src/collections/sheet/index.js.map +0 -1
  442. package/dist/src/collections/sheet/link.d.ts +0 -398
  443. package/dist/src/collections/sheet/link.d.ts.map +0 -1
  444. package/dist/src/collections/sheet/link.js +0 -228
  445. package/dist/src/collections/sheet/link.js.map +0 -1
  446. package/dist/src/collections/sheet/registers.d.ts +0 -278
  447. package/dist/src/collections/sheet/registers.d.ts.map +0 -1
  448. package/dist/src/collections/sheet/registers.js +0 -268
  449. package/dist/src/collections/sheet/registers.js.map +0 -1
  450. package/dist/src/collections/sheet/root.d.ts +0 -328
  451. package/dist/src/collections/sheet/root.d.ts.map +0 -1
  452. package/dist/src/collections/sheet/root.js +0 -432
  453. package/dist/src/collections/sheet/root.js.map +0 -1
  454. package/dist/src/collections/sheet/seed-bridge.d.ts +0 -14
  455. package/dist/src/collections/sheet/seed-bridge.d.ts.map +0 -1
  456. package/dist/src/collections/sheet/seed-bridge.js +0 -51
  457. package/dist/src/collections/sheet/seed-bridge.js.map +0 -1
  458. package/dist/src/collections/sheet/sub-rows.d.ts +0 -249
  459. package/dist/src/collections/sheet/sub-rows.d.ts.map +0 -1
  460. package/dist/src/collections/sheet/sub-rows.js +0 -222
  461. package/dist/src/collections/sheet/sub-rows.js.map +0 -1
  462. package/dist/src/collections/sheet/transactions.d.ts +0 -76
  463. package/dist/src/collections/sheet/transactions.d.ts.map +0 -1
  464. package/dist/src/collections/sheet/transactions.js +0 -40
  465. package/dist/src/collections/sheet/transactions.js.map +0 -1
  466. package/dist/src/collections/sheet/types.d.ts +0 -14992
  467. package/dist/src/collections/sheet/types.d.ts.map +0 -1
  468. package/dist/src/collections/sheet/types.js +0 -1061
  469. package/dist/src/collections/sheet/types.js.map +0 -1
  470. package/dist/src/navigation/app/index.d.ts +0 -150
  471. package/dist/src/navigation/app/index.d.ts.map +0 -1
  472. package/dist/src/navigation/app/index.js +0 -191
  473. package/dist/src/navigation/app/index.js.map +0 -1
  474. package/dist/src/navigation/pages/index.d.ts +0 -165
  475. package/dist/src/navigation/pages/index.d.ts.map +0 -1
  476. package/dist/src/navigation/pages/index.js +0 -152
  477. package/dist/src/navigation/pages/index.js.map +0 -1
  478. package/dist/src/navigation/pages/types.d.ts +0 -111
  479. package/dist/src/navigation/pages/types.d.ts.map +0 -1
  480. package/dist/src/navigation/pages/types.js +0 -101
  481. package/dist/src/navigation/pages/types.js.map +0 -1
  482. package/dist/src/runtime/collections/board.d.ts +0 -73
  483. package/dist/src/runtime/collections/board.d.ts.map +0 -1
  484. package/dist/src/runtime/collections/board.js +0 -68
  485. package/dist/src/runtime/collections/board.js.map +0 -1
  486. package/dist/src/runtime/collections/calendar.d.ts +0 -54
  487. package/dist/src/runtime/collections/calendar.d.ts.map +0 -1
  488. package/dist/src/runtime/collections/calendar.js +0 -54
  489. package/dist/src/runtime/collections/calendar.js.map +0 -1
  490. package/dist/src/runtime/collections/flowchart.d.ts +0 -58
  491. package/dist/src/runtime/collections/flowchart.d.ts.map +0 -1
  492. package/dist/src/runtime/collections/flowchart.js +0 -54
  493. package/dist/src/runtime/collections/flowchart.js.map +0 -1
  494. package/dist/src/runtime/collections/plan.d.ts +0 -181
  495. package/dist/src/runtime/collections/plan.d.ts.map +0 -1
  496. package/dist/src/runtime/collections/plan.js +0 -186
  497. package/dist/src/runtime/collections/plan.js.map +0 -1
  498. package/dist/src/runtime/collections/roster.d.ts +0 -60
  499. package/dist/src/runtime/collections/roster.d.ts.map +0 -1
  500. package/dist/src/runtime/collections/roster.js +0 -59
  501. package/dist/src/runtime/collections/roster.js.map +0 -1
  502. package/dist/src/runtime/collections/sheet.d.ts +0 -122
  503. package/dist/src/runtime/collections/sheet.d.ts.map +0 -1
  504. package/dist/src/runtime/collections/sheet.js +0 -73
  505. package/dist/src/runtime/collections/sheet.js.map +0 -1
  506. package/dist/src/runtime/navigation/app.d.ts +0 -52
  507. package/dist/src/runtime/navigation/app.d.ts.map +0 -1
  508. package/dist/src/runtime/navigation/app.js +0 -53
  509. package/dist/src/runtime/navigation/app.js.map +0 -1
  510. package/dist/src/runtime/navigation/pages.d.ts +0 -50
  511. package/dist/src/runtime/navigation/pages.d.ts.map +0 -1
  512. package/dist/src/runtime/navigation/pages.js +0 -52
  513. package/dist/src/runtime/navigation/pages.js.map +0 -1
  514. package/dist/src/runtime/navigation/route.d.ts +0 -46
  515. package/dist/src/runtime/navigation/route.d.ts.map +0 -1
  516. package/dist/src/runtime/navigation/route.js +0 -47
  517. package/dist/src/runtime/navigation/route.js.map +0 -1
  518. package/dist/test/collections/board.examples.d.ts +0 -18
  519. package/dist/test/collections/board.examples.d.ts.map +0 -1
  520. package/dist/test/collections/board.examples.js +0 -297
  521. package/dist/test/collections/board.examples.js.map +0 -1
  522. package/dist/test/collections/calendar.examples.d.ts +0 -5
  523. package/dist/test/collections/calendar.examples.d.ts.map +0 -1
  524. package/dist/test/collections/calendar.examples.js +0 -147
  525. package/dist/test/collections/calendar.examples.js.map +0 -1
  526. package/dist/test/collections/flowchart.examples.d.ts +0 -17
  527. package/dist/test/collections/flowchart.examples.d.ts.map +0 -1
  528. package/dist/test/collections/flowchart.examples.js +0 -243
  529. package/dist/test/collections/flowchart.examples.js.map +0 -1
  530. package/dist/test/collections/plan.examples.d.ts +0 -200
  531. package/dist/test/collections/plan.examples.d.ts.map +0 -1
  532. package/dist/test/collections/plan.examples.js +0 -3665
  533. package/dist/test/collections/plan.examples.js.map +0 -1
  534. package/dist/test/collections/roster.examples.d.ts +0 -26
  535. package/dist/test/collections/roster.examples.d.ts.map +0 -1
  536. package/dist/test/collections/roster.examples.js +0 -237
  537. package/dist/test/collections/roster.examples.js.map +0 -1
  538. package/dist/test/collections/sheet-link.examples.d.ts +0 -7
  539. package/dist/test/collections/sheet-link.examples.d.ts.map +0 -1
  540. package/dist/test/collections/sheet-link.examples.js +0 -41
  541. package/dist/test/collections/sheet-link.examples.js.map +0 -1
  542. package/dist/test/collections/sheet-transactions.examples.d.ts +0 -7
  543. package/dist/test/collections/sheet-transactions.examples.d.ts.map +0 -1
  544. package/dist/test/collections/sheet-transactions.examples.js +0 -58
  545. package/dist/test/collections/sheet-transactions.examples.js.map +0 -1
  546. package/dist/test/collections/sheet.examples.d.ts +0 -96
  547. package/dist/test/collections/sheet.examples.d.ts.map +0 -1
  548. package/dist/test/collections/sheet.examples.js +0 -1040
  549. package/dist/test/collections/sheet.examples.js.map +0 -1
  550. package/dist/test/navigation/app.examples.d.ts +0 -22
  551. package/dist/test/navigation/app.examples.d.ts.map +0 -1
  552. package/dist/test/navigation/app.examples.js +0 -136
  553. package/dist/test/navigation/app.examples.js.map +0 -1
  554. package/dist/test/navigation/pages.examples.d.ts +0 -13
  555. package/dist/test/navigation/pages.examples.d.ts.map +0 -1
  556. package/dist/test/navigation/pages.examples.js +0 -113
  557. package/dist/test/navigation/pages.examples.js.map +0 -1
  558. package/dist/test/navigation/route.examples.d.ts +0 -13
  559. package/dist/test/navigation/route.examples.d.ts.map +0 -1
  560. package/dist/test/navigation/route.examples.js +0 -69
  561. package/dist/test/navigation/route.examples.js.map +0 -1
@@ -1,48 +0,0 @@
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
- /** Draft-aware callback contexts; no domain values are synthesized. @packageDocumentation */
6
- import { BlobType, DictType, FunctionType, IntegerType, OptionType, StringType, StructType, type EastType, type ExprType } from "@elaraai/east";
7
- import type { SheetBridge } from "./bridge.js";
8
- type RecordType = StructType;
9
- /** A row's cells over its draft — the line decoder, or a loose row's, which writes the row's id. */
10
- type DecodeRow = ExprType<FunctionType<[StringType, DictType<StringType, import("./types.js").SheetCellType>, OptionType<RecordType>], RecordType>>;
11
- /**
12
- * Lift an authoritative value into supplied field drafts, preserving hidden
13
- * fields — a row, a group with its children, or an entry of a source with
14
- * loose rows (#846), each arm as its own.
15
- */
16
- export declare function buildDraftLift(type: EastType, children?: string): ExprType<FunctionType<[EastType], EastType>>;
17
- /** Return the existing draft, or lift the exact authoritative entry if resident. */
18
- export declare function buildDraftBase(rowType: EastType, field: string | undefined, rowById: SheetBridge["rowById"]): import("@elaraai/east").CallableFunctionExpr<[DictType<StringType, BlobType>, StringType, IntegerType], OptionType<EastType>>;
19
- /** Build a callback context from the current draft and a provisional cell edit. */
20
- export declare function buildDraftContextBridge(rowType: EastType, lineType: StructType, field: string | undefined, ctxType: StructType, driverType: EastType, rowById: SheetBridge["rowById"], draftDecode: SheetBridge["draftDecode"], draftRow: DecodeRow, lookupDriver: ExprType<FunctionType>, looseRow?: DecodeRow): SheetBridge["bridgeCtx"];
21
- /**
22
- * Build a readiness batch's typed contexts (#882): the rows are built once,
23
- * then there is one context per check over them, in the checks' order.
24
- *
25
- * @remarks
26
- * A check's row is the draft built at its place: the row's own cells over
27
- * its own draft. A wire context substitutes its provisional row into the
28
- * rows it builds ({@link buildDraftContextBridge}). For a check, that would
29
- * put back the very draft it replaces, so every context shares the rows
30
- * unchanged. On a grouped sheet a check's `group` is its group's draft,
31
- * `rows` that group's lines and `groups` the batch's groups; a LOOSE row's
32
- * (#846) has no group, and its `rows` are the batch's loose rows. Every check
33
- * of a batch reads the same rows, so a check that edits them in place changes
34
- * what the checks after it see.
35
- *
36
- * @param rowType - The source row's type (a grouped sheet: the group's; with loose rows, the entry)
37
- * @param field - A grouped sheet's lines field
38
- * @param ctxType - The typed context — `DraftContext(R, D)`, or `DraftContext(P, "lines", D)`
39
- * @param driverType - The driver's row type
40
- * @param rowById - The real source row by id and offset
41
- * @param draftDecode - A row's cells over its draft
42
- * @param lookupDriver - The driver row by key
43
- * @param loose - Whether the source holds loose rows between its groups (#846)
44
- * @returns The batch → one typed context per check
45
- */
46
- export declare function buildReadyContexts(rowType: EastType, field: string | undefined, ctxType: StructType, driverType: EastType, rowById: SheetBridge["rowById"], draftDecode: SheetBridge["draftDecode"], lookupDriver: ExprType<FunctionType>, loose?: boolean): SheetBridge["bridgeReady"];
47
- export {};
48
- //# sourceMappingURL=context-bridge.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context-bridge.d.ts","sourceRoot":"","sources":["../../../../src/collections/sheet/context-bridge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,6FAA6F;AAC7F,OAAO,EAAa,QAAQ,EAAE,QAAQ,EAAQ,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAA0C,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAA6C,MAAM,eAAe,CAAC;AAIpP,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,KAAK,UAAU,GAAG,UAAU,CAAC;AAG7B,oGAAoG;AACpG,KAAK,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,OAAO,YAAY,EAAE,aAAa,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;AAEpJ;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CA6B9G;AAED,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,iIAc3G;AAED,mFAAmF;AACnF,wBAAgB,uBAAuB,CACnC,OAAO,EAAE,QAAQ,EACjB,QAAQ,EAAE,UAAU,EACpB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,UAAU,EACnB,UAAU,EAAE,QAAQ,EACpB,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,EAC/B,WAAW,EAAE,WAAW,CAAC,aAAa,CAAC,EACvC,QAAQ,EAAE,SAAS,EACnB,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC,EACpC,QAAQ,CAAC,EAAE,SAAS,GACrB,WAAW,CAAC,WAAW,CAAC,CAgF1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,kBAAkB,CAC9B,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,UAAU,EACnB,UAAU,EAAE,QAAQ,EACpB,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,EAC/B,WAAW,EAAE,WAAW,CAAC,aAAa,CAAC,EACvC,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC,EACpC,KAAK,UAAQ,GACd,WAAW,CAAC,aAAa,CAAC,CAiD5B"}
@@ -1,216 +0,0 @@
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
- /** Draft-aware callback contexts; no domain values are synthesized. @packageDocumentation */
6
- import { ArrayType, BlobType, DictType, East, FunctionType, IntegerType, OptionType, StringType, StructType, none, some, variant } from "@elaraai/east";
7
- import { SheetContextType, SheetReadyBatchType } from "./types.js";
8
- import { SheetDraftTypeFor } from "./transactions.js";
9
- import { SheetDraftEntryTypeFor, SheetDraftGroupTypeFor } from "./drafts.js";
10
- /**
11
- * Lift an authoritative value into supplied field drafts, preserving hidden
12
- * fields — a row, a group with its children, or an entry of a source with
13
- * loose rows (#846), each arm as its own.
14
- */
15
- export function buildDraftLift(type, children) {
16
- if (type.type === "Variant") {
17
- const entry = type;
18
- const draft = SheetDraftEntryTypeFor(entry, children);
19
- const liftGroup = buildDraftLift(entry.cases.group, children);
20
- const liftRow = buildDraftLift(entry.cases.row);
21
- return East.function([entry], draft, ($, value) => {
22
- const group = $.const(liftGroup);
23
- const row = $.const(liftRow);
24
- return value.match({
25
- group: ($2, g) => $2.const(variant("group", group(g)), draft),
26
- row: ($2, r) => $2.const(variant("row", row(r)), draft),
27
- });
28
- });
29
- }
30
- const record = type;
31
- const draft = (children === undefined ? SheetDraftTypeFor(record) : SheetDraftGroupTypeFor(record, children));
32
- const childType = children === undefined ? undefined : record.fields[children];
33
- const liftChild = childType?.type === "Array" && childType.value.type === "Struct" ? buildDraftLift(childType.value) : undefined;
34
- return East.function([record], draft, ($, value) => {
35
- const out = {};
36
- for (const field of Object.keys(record.fields)) {
37
- if (field === children && liftChild !== undefined) {
38
- const lift = $.const(liftChild);
39
- out[field] = value[field].map((_$, row) => lift(row));
40
- }
41
- else
42
- out[field] = variant("value", value[field]);
43
- }
44
- return $.const(out, draft);
45
- });
46
- }
47
- /** Return the existing draft, or lift the exact authoritative entry if resident. */
48
- export function buildDraftBase(rowType, field, rowById) {
49
- const draftType = SheetDraftEntryTypeFor(rowType, field);
50
- const lift = buildDraftLift(rowType, field);
51
- return East.function([DictType(StringType, BlobType), StringType, IntegerType], OptionType(draftType), ($, drafts, id, offset) => {
52
- const read = $.const(rowById);
53
- const supplied = $.const(lift);
54
- return drafts.tryGet(id).match({
55
- some: ($, bytes) => $.const(some(bytes.decodeBeast(draftType, "v2")), OptionType(draftType)),
56
- none: () => read(id, offset).match({
57
- none: ($) => $.const(none, OptionType(draftType)),
58
- some: ($, value) => $.const(some(supplied(value)), OptionType(draftType)),
59
- }),
60
- });
61
- });
62
- }
63
- /** Build a callback context from the current draft and a provisional cell edit. */
64
- export function buildDraftContextBridge(rowType, lineType, field, ctxType, driverType, rowById, draftDecode, draftRow, lookupDriver, looseRow) {
65
- const rowDraft = SheetDraftTypeFor(lineType);
66
- const entryDraft = SheetDraftEntryTypeFor(rowType, field);
67
- const base = buildDraftBase(rowType, field, rowById);
68
- // A source with loose rows (#846): a group's draft is its entry's group arm.
69
- const groupDraft = (looseRow !== undefined && field !== undefined ? SheetDraftGroupTypeFor(rowType.cases.group, field) : entryDraft);
70
- return East.function([SheetContextType], ctxType, ($, ctx) => {
71
- const readBase = $.const(base);
72
- const dec = $.const(draftRow);
73
- const decEntry = $.const(draftDecode);
74
- const lookup = $.const(lookupDriver);
75
- // Every resident row's current draft — a readiness batch builds its rows the same way (`buildReadyContexts`).
76
- const entries = $.const(ctx.rows.map((_$, wire, index) => decEntry(wire, readBase(ctx.drafts, wire.id, ctx.rowsOffset.add(index)), some(wire))), ArrayType(entryDraft));
77
- const driver = $.const(ctx.driver.match({ none: () => none, some: (_$, key) => lookup(key) }), OptionType(driverType));
78
- if (field === undefined) {
79
- const row = $.const(dec(ctx.rowId, ctx.row, readBase(ctx.drafts, ctx.rowId, ctx.offset)), rowDraft);
80
- const rows = $.const(entries.map((_$, entry, index) => ctx.rows.get(index).id.equal(ctx.rowId).ifElse(() => row, () => entry)));
81
- return $.const({ rowIndex: ctx.rowIndex, row, rows, group: none, partial: ctx.partial, driver, today: ctx.today }, ctxType);
82
- }
83
- // On a source with loose rows (#846) the entries are variants: a group's draft is its entry's group arm.
84
- const asEntries = entries;
85
- /** A line's context: the line as it would be over its prior draft, its group's lines with it in place, every group. */
86
- const lineContext = ($2) => {
87
- const group = $2.const(ctx.rows.firstMap(($3, wire, index) => wire.id.equal(ctx.rowId).ifElse(($4) => looseRow === undefined
88
- ? $4.const(some(entries.get(index)), OptionType(groupDraft))
89
- : $4.const(asEntries.get(index).match({ group: (_$5, g) => some(g), row: () => none }), OptionType(groupDraft)), ($4) => $4.const(none, OptionType(groupDraft)))), OptionType(groupDraft));
90
- const prior = $2.const(group.match({
91
- none: () => none,
92
- some: (_$, value) => {
93
- const children = value[field];
94
- return ctx.rowIndex.greaterEqual(0n).and(() => ctx.rowIndex.less(children.size())).ifElse(() => some(children.get(ctx.rowIndex)), () => none);
95
- },
96
- }), OptionType(rowDraft));
97
- const row = $2.const(dec("", ctx.row, prior), rowDraft);
98
- const edited = $2.const(group.match({
99
- none: () => none,
100
- some: ($, value) => {
101
- const children = value[field];
102
- const updated = $.const(children.map((_$, child, index) => index.equal(ctx.rowIndex).ifElse(() => row, () => child)));
103
- const rows = $.const(ctx.rowIndex.equal(children.size()).ifElse(() => updated.concat([row]), () => updated));
104
- const result = $.const({ ...Object.fromEntries(Object.keys(groupDraft.fields).map(key => [key, key === field ? rows : value[key]])) }, groupDraft);
105
- return some(result);
106
- },
107
- }), OptionType(groupDraft));
108
- const rows = $2.const(edited.match({ none: ($) => $.const([], ArrayType(rowDraft)), some: (_$, value) => value[field] }), ArrayType(rowDraft));
109
- const groups = looseRow === undefined
110
- ? $2.const(entries.map((_$, entry, index) => ctx.rows.get(index).id.equal(ctx.rowId).ifElse(() => edited.match({ none: () => entry, some: (_$3, value) => value }), () => entry)))
111
- : $2.const(asEntries.filterMap((_$, entry, index) => entry.match({
112
- group: (_$3, g) => some(ctx.rows.get(index).id.equal(ctx.rowId).ifElse(() => edited.match({ none: () => g, some: (_$4, value) => value }), () => g)),
113
- row: () => none,
114
- })), ArrayType(groupDraft));
115
- return $2.const({ rowIndex: ctx.rowIndex, row, rows, group: edited, groups, partial: ctx.partial, driver, today: ctx.today }, ctxType);
116
- };
117
- if (looseRow === undefined)
118
- return lineContext($);
119
- // A LOOSE row (#846) — no line address: its own draft over its cells,
120
- // among the resident loose rows, beside every group.
121
- const decLoose = $.const(looseRow);
122
- return ctx.line.match({
123
- some: ($2) => lineContext($2),
124
- none: ($2) => {
125
- const own = $2.const(readBase(ctx.drafts, ctx.rowId, ctx.offset).match({
126
- none: () => none,
127
- some: (_$, entry) => entry.match({ row: (_$2, r) => some(r), group: () => none }),
128
- }), OptionType(rowDraft));
129
- const row = $2.const(decLoose(ctx.rowId, ctx.row, own), rowDraft);
130
- const asEntry = $2.const(variant("row", row), entryDraft);
131
- const edited = $2.const(asEntries.map((_$, entry, index) => ctx.rows.get(index).id.equal(ctx.rowId).ifElse(() => asEntry, () => entry)), ArrayType(entryDraft));
132
- const rows = $2.const(edited.filterMap((_$, entry) => entry.match({ row: (_$2, r) => some(r), group: () => none })), ArrayType(rowDraft));
133
- const groups = $2.const(edited.filterMap((_$, entry) => entry.match({ group: (_$2, g) => some(g), row: () => none })), ArrayType(groupDraft));
134
- // Its index among the loose rows: the loose rows before it in `rows`.
135
- const rowIndex = $2.const(ctx.rows.slice(0n, ctx.rowIndex).filter((_$, wire) => wire.band.hasTag("none")).size());
136
- return $2.const({ rowIndex, row, rows, group: none, groups, partial: ctx.partial, driver, today: ctx.today }, ctxType);
137
- },
138
- });
139
- });
140
- }
141
- /**
142
- * Build a readiness batch's typed contexts (#882): the rows are built once,
143
- * then there is one context per check over them, in the checks' order.
144
- *
145
- * @remarks
146
- * A check's row is the draft built at its place: the row's own cells over
147
- * its own draft. A wire context substitutes its provisional row into the
148
- * rows it builds ({@link buildDraftContextBridge}). For a check, that would
149
- * put back the very draft it replaces, so every context shares the rows
150
- * unchanged. On a grouped sheet a check's `group` is its group's draft,
151
- * `rows` that group's lines and `groups` the batch's groups; a LOOSE row's
152
- * (#846) has no group, and its `rows` are the batch's loose rows. Every check
153
- * of a batch reads the same rows, so a check that edits them in place changes
154
- * what the checks after it see.
155
- *
156
- * @param rowType - The source row's type (a grouped sheet: the group's; with loose rows, the entry)
157
- * @param field - A grouped sheet's lines field
158
- * @param ctxType - The typed context — `DraftContext(R, D)`, or `DraftContext(P, "lines", D)`
159
- * @param driverType - The driver's row type
160
- * @param rowById - The real source row by id and offset
161
- * @param draftDecode - A row's cells over its draft
162
- * @param lookupDriver - The driver row by key
163
- * @param loose - Whether the source holds loose rows between its groups (#846)
164
- * @returns The batch → one typed context per check
165
- */
166
- export function buildReadyContexts(rowType, field, ctxType, driverType, rowById, draftDecode, lookupDriver, loose = false) {
167
- const entryDraft = SheetDraftEntryTypeFor(rowType, field);
168
- const base = buildDraftBase(rowType, field, rowById);
169
- const groupDraft = (loose && field !== undefined ? SheetDraftGroupTypeFor(rowType.cases.group, field) : entryDraft);
170
- const rowDraft = (loose ? SheetDraftTypeFor(rowType.cases.row) : entryDraft);
171
- return East.function([SheetReadyBatchType], ArrayType(ctxType), ($, batch) => {
172
- const readBase = $.const(base);
173
- const decEntry = $.const(draftDecode);
174
- const lookup = $.const(lookupDriver);
175
- // The rows, once for every check — as a wire context builds its `entries`.
176
- const entries = $.const(batch.rows.map((_$, wire, index) => decEntry(wire, readBase(batch.drafts, wire.id, batch.rowsOffset.add(index)), some(wire))), ArrayType(entryDraft));
177
- if (field === undefined || !loose) {
178
- return batch.checks.map(($, check) => {
179
- const driver = $.const(check.driver.match({ none: () => none, some: (_$, key) => lookup(key) }), OptionType(driverType));
180
- if (field === undefined) {
181
- return $.const({ rowIndex: check.index, row: entries.get(check.index), rows: entries, group: none, partial: batch.partial, driver, today: batch.today }, ctxType);
182
- }
183
- const group = $.const(entries.get(check.index), entryDraft);
184
- const lines = $.const(group[field]);
185
- const line = $.const(check.line.unwrap("some"));
186
- return $.const({ rowIndex: line, row: lines.get(line), rows: lines, group: some(group), groups: entries, partial: batch.partial, driver, today: batch.today }, ctxType);
187
- });
188
- }
189
- // Loose rows between the groups (#846): the groups and the loose rows,
190
- // and each entry's index among the loose rows — counted once for the batch.
191
- const asEntries = entries;
192
- const groups = $.const(asEntries.filterMap((_$, entry) => entry.match({ group: (_$2, g) => some(g), row: () => none })), ArrayType(groupDraft));
193
- const looseRows = $.const(asEntries.filterMap((_$, entry) => entry.match({ row: (_$2, r) => some(r), group: () => none })), ArrayType(rowDraft));
194
- const looseAt = $.let([], ArrayType(IntegerType));
195
- const counted = $.let(0n);
196
- $.for(batch.rows, ($2, wire) => {
197
- $2(looseAt.pushLast(counted));
198
- $2.if(wire.band.hasTag("none"), ($3) => { $3.assign(counted, counted.add(1n)); });
199
- });
200
- return batch.checks.map(($, check) => {
201
- const driver = $.const(check.driver.match({ none: () => none, some: (_$, key) => lookup(key) }), OptionType(driverType));
202
- return check.line.match({
203
- none: ($2) => {
204
- const at = $2.const(looseAt.get(check.index));
205
- return $2.const({ rowIndex: at, row: looseRows.get(at), rows: looseRows, group: none, groups, partial: batch.partial, driver, today: batch.today }, ctxType);
206
- },
207
- some: ($2, line) => {
208
- const group = $2.const(asEntries.get(check.index).unwrap("group"), groupDraft);
209
- const lines = $2.const(group[field]);
210
- return $2.const({ rowIndex: line, row: lines.get(line), rows: lines, group: some(group), groups, partial: batch.partial, driver, today: batch.today }, ctxType);
211
- },
212
- });
213
- });
214
- });
215
- }
216
- //# sourceMappingURL=context-bridge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context-bridge.js","sourceRoot":"","sources":["../../../../src/collections/sheet/context-bridge.ts"],"names":[],"mappings":"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"}
@@ -1,37 +0,0 @@
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
- /** Typed draft decoding without domain defaults. @packageDocumentation */
6
- import { FunctionType, OptionType, StringType, StructType, type EastType, type ExprType, type VariantType } from "@elaraai/east";
7
- import { SheetRowType } from "./types.js";
8
- import { SheetCellsType, type SheetColumnMeta } from "./bridge.js";
9
- import type { SheetRegisterValue } from "./registers.js";
10
- type DraftRecord = StructType;
11
- type DecodeRow = ExprType<FunctionType<[StringType, typeof SheetCellsType, OptionType<DraftRecord>], DraftRecord>>;
12
- /** Compile a row's cells into field drafts, preserving every undeclared field. */
13
- export declare function buildDraftRowDecoder(rowType: StructType, metas: readonly SheetColumnMeta[], registers: Record<string, SheetRegisterValue>, idField?: string): DecodeRow;
14
- /**
15
- * Decode a group against its previous draft and wire row. Child lookup uses
16
- * the previous wire keys to find draft array positions; keys never become
17
- * fields or identifiers in the author's child schema.
18
- */
19
- export declare function buildDraftGroupDecoder(groupType: StructType, field: string, metas: readonly SheetColumnMeta[], rowDecoder: DecodeRow, registers: Record<string, SheetRegisterValue>, idField?: string): ExprType<FunctionType<[SheetRowType, OptionType<StructType>, OptionType<SheetRowType>], StructType>>;
20
- /**
21
- * Decode one entry of a source with LOOSE rows between its groups (#846) —
22
- * `Sheet.Types.Entry(P, "lines")`: a wire row with a band is a group, decoded
23
- * against its entry's group arm; one without is a loose row, its cells over
24
- * its row arm, its id field written from the wire row's id.
25
- *
26
- * @param entryType - The entry variant
27
- * @param field - The group's lines field
28
- * @param groupDecoder - A group's cells and lines over its draft ({@link buildDraftGroupDecoder})
29
- * @param looseDecoder - A loose row's cells over its draft ({@link buildDraftRowDecoder} with the id field)
30
- * @returns The wire row, its previous draft entry and wire row → its draft entry
31
- */
32
- export declare function buildDraftEntryDecoder(entryType: VariantType<{
33
- group: StructType;
34
- row: StructType;
35
- }>, field: string, groupDecoder: ReturnType<typeof buildDraftGroupDecoder>, looseDecoder: DecodeRow): ExprType<FunctionType<[SheetRowType, OptionType<EastType>, OptionType<SheetRowType>], EastType>>;
36
- export {};
37
- //# sourceMappingURL=draft-bridge.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"draft-bridge.d.ts","sourceRoot":"","sources":["../../../../src/collections/sheet/draft-bridge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,0EAA0E;AAC1E,OAAO,EAAmB,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAA0C,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAA2B,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AACnN,OAAO,EAAiB,YAAY,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAInE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,KAAK,WAAW,GAAG,UAAU,CAAC;AAC9B,KAAK,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE,OAAO,cAAc,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;AAEnH,kFAAkF;AAClF,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,SAAS,eAAe,EAAE,EACjC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,EAC7C,OAAO,CAAC,EAAE,MAAM,GACjB,SAAS,CA8DX;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAClC,SAAS,EAAE,UAAU,EACrB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,SAAS,eAAe,EAAE,EACjC,UAAU,EAAE,SAAS,EACrB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,EAC7C,OAAO,CAAC,EAAE,MAAM,GACjB,QAAQ,CAAC,YAAY,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAiCtG;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAClC,SAAS,EAAE,WAAW,CAAC;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,CAAC,EAC9D,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,EACvD,YAAY,EAAE,SAAS,GACxB,QAAQ,CAAC,YAAY,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAmBlG"}
@@ -1,153 +0,0 @@
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
- /** Typed draft decoding without domain defaults. @packageDocumentation */
6
- import { ArrayType, East, FunctionType, OptionType, StringType, StructType, none, some, variant } from "@elaraai/east";
7
- import { SheetCellType, SheetRowType } from "./types.js";
8
- import { SheetCellsType } from "./bridge.js";
9
- import { SheetDraftFieldType, SheetDraftTypeFor } from "./transactions.js";
10
- import { SheetDraftEntryTypeFor, SheetDraftGroupTypeFor } from "./drafts.js";
11
- import { printLink, printLinkWith, SheetRegisterMembersType } from "./link.js";
12
- /** Compile a row's cells into field drafts, preserving every undeclared field. */
13
- export function buildDraftRowDecoder(rowType, metas, registers, idField) {
14
- const draftType = SheetDraftTypeFor(rowType);
15
- const fields = Object.entries(rowType.fields);
16
- const decoders = new Map();
17
- for (const [field, fieldType] of fields) {
18
- const meta = metas.find(m => m.field === field || m.otherField === field);
19
- if (!meta || !meta.editable || meta.derived !== undefined)
20
- continue;
21
- const draftField = SheetDraftFieldType(fieldType);
22
- const own = meta.field === field;
23
- const decoder = East.function([SheetCellType, draftField], draftField, ($, cell, base) => {
24
- const members = meta.register !== undefined && registers[meta.register] !== undefined
25
- ? $.const(registers[meta.register], SheetRegisterMembersType) : undefined;
26
- const missing = $.const(variant("missing", null), draftField);
27
- $.if(cell.hasTag("Null"), ($) => {
28
- // An existing explicit none remains a value, while a fresh
29
- // untouched optional field remains missing until normalization.
30
- if (meta.optional) {
31
- $.if(base.hasTag("value"), ($) => {
32
- const value = base.unwrap("value");
33
- $.if(value.hasTag("none"), ($) => { $.return(base); });
34
- });
35
- }
36
- $.return(missing);
37
- });
38
- return cell.match({
39
- Invalid: ($, text) => $.const(variant("invalid", text), draftField),
40
- [meta.cellTag]: ($, payload) => {
41
- let value = payload;
42
- if (meta.form === "array") {
43
- const link = payload;
44
- const half = own ? meta.ownHalf : meta.ownHalf === "from" ? "to" : "from";
45
- value = half === "from" ? link.from : link.to;
46
- }
47
- else if (meta.form === "string") {
48
- const link = payload;
49
- value = meta.config.store === "canonical" && members !== undefined ? printLinkWith(link, members) : printLink(link);
50
- }
51
- return $.const(variant("value", meta.optional ? some(value) : value), draftField);
52
- },
53
- }, ($) => $.const(variant("invalid", cell.hasTag("String").ifElse(() => cell.unwrap("String"), () => East.print(cell))), draftField));
54
- });
55
- decoders.set(field, decoder);
56
- }
57
- return East.function([StringType, SheetCellsType, OptionType(draftType)], draftType, ($, id, cells, base) => {
58
- const out = {};
59
- for (const [field, fieldType] of fields) {
60
- const draftField = SheetDraftFieldType(fieldType);
61
- if (field === idField) {
62
- out[field] = $.const(variant("value", id), draftField);
63
- continue;
64
- }
65
- const previous = $.const(base.match({
66
- none: ($) => $.const(variant("missing", null), draftField),
67
- some: (_$, record) => record[field],
68
- }));
69
- const fn = decoders.get(field);
70
- const meta = metas.find(m => m.field === field || m.otherField === field);
71
- if (!fn || !meta) {
72
- out[field] = previous;
73
- continue;
74
- }
75
- const decode = $.const(fn);
76
- out[field] = cells.tryGet(meta.key).match({ none: () => previous, some: (_$, cell) => decode(cell, previous) });
77
- }
78
- return $.const(out, draftType);
79
- });
80
- }
81
- /**
82
- * Decode a group against its previous draft and wire row. Child lookup uses
83
- * the previous wire keys to find draft array positions; keys never become
84
- * fields or identifiers in the author's child schema.
85
- */
86
- export function buildDraftGroupDecoder(groupType, field, metas, rowDecoder, registers, idField) {
87
- const childType = groupType.fields[field];
88
- if (childType?.type !== "Array" || childType.value.type !== "Struct")
89
- throw new Error("Sheet groups require Array child rows");
90
- const rowDraft = SheetDraftTypeFor(childType.value);
91
- const draftType = SheetDraftGroupTypeFor(groupType, field);
92
- const ownType = StructType(Object.fromEntries(Object.entries(groupType.fields).filter(([key]) => key !== field)));
93
- const ownDraft = SheetDraftTypeFor(ownType);
94
- const ownDecoder = buildDraftRowDecoder(ownType, metas, registers, idField);
95
- return East.function([SheetRowType, OptionType(draftType), OptionType(SheetRowType)], draftType, ($, row, base, previous) => {
96
- const decodeOwn = $.const(ownDecoder);
97
- const decodeRow = $.const(rowDecoder);
98
- const ownBase = $.const(base.match({
99
- none: ($) => $.const(none, OptionType(ownDraft)),
100
- some: ($, group) => $.const(some($.const(Object.fromEntries(Object.keys(ownType.fields).map(key => [key, group[key]])), ownDraft)), OptionType(ownDraft)),
101
- }));
102
- const own = $.const(decodeOwn(row.id, row.cells, ownBase));
103
- const children = $.const(row.lines.map(($, line) => {
104
- const old = $.const(previous.match({
105
- none: ($) => $.const(none, OptionType(rowDraft)),
106
- some: (_$, previousRow) => previousRow.lines.firstMap(($, candidate, index) => {
107
- return candidate.key.equal(line.key).ifElse((_$) => base.match({
108
- none: ($) => $.const(none, OptionType(rowDraft)),
109
- some: ($, group) => {
110
- const rows = group[field];
111
- return index.less(rows.size()).ifElse(($) => $.const(some(rows.get(index)), OptionType(rowDraft)), ($) => $.const(none, OptionType(rowDraft)));
112
- },
113
- }), ($) => $.const(none, OptionType(rowDraft)));
114
- }),
115
- }));
116
- return decodeRow("", line.cells, old);
117
- }), ArrayType(rowDraft));
118
- return $.const({ ...Object.fromEntries(Object.keys(ownType.fields).map(key => [key, own[key]])), [field]: children }, draftType);
119
- });
120
- }
121
- /**
122
- * Decode one entry of a source with LOOSE rows between its groups (#846) —
123
- * `Sheet.Types.Entry(P, "lines")`: a wire row with a band is a group, decoded
124
- * against its entry's group arm; one without is a loose row, its cells over
125
- * its row arm, its id field written from the wire row's id.
126
- *
127
- * @param entryType - The entry variant
128
- * @param field - The group's lines field
129
- * @param groupDecoder - A group's cells and lines over its draft ({@link buildDraftGroupDecoder})
130
- * @param looseDecoder - A loose row's cells over its draft ({@link buildDraftRowDecoder} with the id field)
131
- * @returns The wire row, its previous draft entry and wire row → its draft entry
132
- */
133
- export function buildDraftEntryDecoder(entryType, field, groupDecoder, looseDecoder) {
134
- const draftType = SheetDraftEntryTypeFor(entryType, field);
135
- const groupDraft = SheetDraftGroupTypeFor(entryType.cases.group, field);
136
- const rowDraft = SheetDraftTypeFor(entryType.cases.row);
137
- return East.function([SheetRowType, OptionType(draftType), OptionType(SheetRowType)], draftType, ($, row, base, previous) => {
138
- const decodeGroup = $.const(groupDecoder);
139
- const decodeLoose = $.const(looseDecoder);
140
- const prior = base;
141
- return row.band.match({
142
- some: ($2) => {
143
- const own = $2.const(prior.match({ none: () => none, some: (_$3, entry) => entry.match({ group: (_$4, g) => some(g), row: () => none }) }), OptionType(groupDraft));
144
- return $2.const(variant("group", decodeGroup(row, own, previous)), draftType);
145
- },
146
- none: ($2) => {
147
- const own = $2.const(prior.match({ none: () => none, some: (_$3, entry) => entry.match({ row: (_$4, r) => some(r), group: () => none }) }), OptionType(rowDraft));
148
- return $2.const(variant("row", decodeLoose(row.id, row.cells, own)), draftType);
149
- },
150
- });
151
- });
152
- }
153
- //# sourceMappingURL=draft-bridge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"draft-bridge.js","sourceRoot":"","sources":["../../../../src/collections/sheet/draft-bridge.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
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 Sheet's names for the shared editing contract's draft entries
7
- * (`contracts/editing.ts`, #879) — groups carrying their rows, loose rows
8
- * beside them — and for the `onPatch` event. Each is the `Editing` namespace's
9
- * own value: `Sheet.Types.Entry` is `Editing.Types.Entry`.
10
- *
11
- * @packageDocumentation
12
- */
13
- export { type EditingChildrenField as SheetChildrenField, type EditingChildOf as SheetChildOf, type EditingDraftGroupOf as SheetDraftGroupOf, type EditingDraftEntryOf as SheetDraftEntryOf, EditingDraftGroupTypeFor as SheetDraftGroupTypeFor, EditingEntryTypeFor as SheetEntryTypeFor, EditingDraftEntryTypeFor as SheetDraftEntryTypeFor, EditingPatchEventTypeFor as SheetPatchEventTypeFor, EditingDraftChangeTypeFor as SheetDraftChangeTypeFor, } from "../../contracts/editing.js";
14
- //# sourceMappingURL=drafts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drafts.d.ts","sourceRoot":"","sources":["../../../../src/collections/sheet/drafts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AACH,OAAO,EACH,KAAK,oBAAoB,IAAI,kBAAkB,EAC/C,KAAK,cAAc,IAAI,YAAY,EACnC,KAAK,mBAAmB,IAAI,iBAAiB,EAC7C,KAAK,mBAAmB,IAAI,iBAAiB,EAC7C,wBAAwB,IAAI,sBAAsB,EAClD,mBAAmB,IAAI,iBAAiB,EACxC,wBAAwB,IAAI,sBAAsB,EAClD,wBAAwB,IAAI,sBAAsB,EAClD,yBAAyB,IAAI,uBAAuB,GACvD,MAAM,4BAA4B,CAAC"}
@@ -1,14 +0,0 @@
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 Sheet's names for the shared editing contract's draft entries
7
- * (`contracts/editing.ts`, #879) — groups carrying their rows, loose rows
8
- * beside them — and for the `onPatch` event. Each is the `Editing` namespace's
9
- * own value: `Sheet.Types.Entry` is `Editing.Types.Entry`.
10
- *
11
- * @packageDocumentation
12
- */
13
- export { EditingDraftGroupTypeFor as SheetDraftGroupTypeFor, EditingEntryTypeFor as SheetEntryTypeFor, EditingDraftEntryTypeFor as SheetDraftEntryTypeFor, EditingPatchEventTypeFor as SheetPatchEventTypeFor, EditingDraftChangeTypeFor as SheetDraftChangeTypeFor, } from "../../contracts/editing.js";
14
- //# sourceMappingURL=drafts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drafts.js","sourceRoot":"","sources":["../../../../src/collections/sheet/drafts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AACH,OAAO,EAKH,wBAAwB,IAAI,sBAAsB,EAClD,mBAAmB,IAAI,iBAAiB,EACxC,wBAAwB,IAAI,sBAAsB,EAClD,wBAAwB,IAAI,sBAAsB,EAClD,yBAAyB,IAAI,uBAAuB,GACvD,MAAM,4BAA4B,CAAC"}
@@ -1,36 +0,0 @@
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
- /** Typed author callbacks behind a closed renderer transport. @packageDocumentation */
6
- import { type ExprType } from "@elaraai/east";
7
- import type { ResolvedRowSource } from "../../contracts/source.js";
8
- import { type SheetBridge } from "./bridge.js";
9
- import { SheetEditingType } from "./editing-types.js";
10
- import { type SheetEditsInput } from "./edits.js";
11
- /** Author editing behavior, erased only at the factory boundary. @internal */
12
- export interface SheetEditingInput {
13
- edits?: SheetEditsInput;
14
- ready?: {
15
- row?: unknown;
16
- group?: unknown;
17
- };
18
- newRow?: unknown;
19
- newGroup?: unknown;
20
- onPatch?: unknown;
21
- onApply?: unknown;
22
- onUpdate?: unknown;
23
- applyMode?: "batch" | "auto";
24
- }
25
- /**
26
- * Captures source identity, codecs and authoritative callbacks for one Sheet.
27
- * @internal
28
- * @param source - Resolved rows, retaining the live handle when provided
29
- * @param bridge - The typed column bridge
30
- * @param idField - Positional entry identity field
31
- * @param input - Author editing behavior
32
- * @param driverColumn - The lookup field used to resolve a row readiness context
33
- * @returns The closed transaction transport stored in the root IR
34
- */
35
- export declare function buildSheetEditing(source: ResolvedRowSource, bridge: SheetBridge, idField: string | undefined, input: SheetEditingInput, driverColumn?: string): ExprType<typeof SheetEditingType>;
36
- //# sourceMappingURL=editing-bridge.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editing-bridge.d.ts","sourceRoot":"","sources":["../../../../src/collections/sheet/editing-bridge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,uFAAuF;AACvF,OAAO,EAG2B,KAAK,QAAQ,EAC9C,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAGhE,OAAO,EAAE,gBAAgB,EAAsB,MAAM,oBAAoB,CAAC;AAE1E,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAGrE,8EAA8E;AAC9E,MAAM,WAAW,iBAAiB;IAC9B,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,KAAK,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAChC;AAaD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,OAAO,gBAAgB,CAAC,CA0JjM"}