@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,787 +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
- * `Roster` — people-on-shifts scheduling: a people × days-of-week grid of
7
- * shift chips under the shared event-state grammar (committed / proposed /
8
- * rejected, with the `model` flavour rendering as a dashed ghost). Takes the
9
- * two flat tables a dataset naturally provides — people and shifts — each
10
- * with a chart-style field encoding; the factory joins them by person key.
11
- * The component owns the week: `days` defaults to Mon–Sun.
12
- *
13
- * Declares the drag & drop **target** role: `id` + `sources` connect it to
14
- * sibling Libraries, and every completed drag (add / move / remove) funnels
15
- * through one `onDrag` callback as a `DragEventType` value.
16
- *
17
- * @packageDocumentation
18
- */
19
- import { type ExprType, type SubtypeExprOrValue, type TypeOf, ArrayType, type BooleanType, FunctionType, IntegerType, NullType, OptionType, StringType, StructType } from "@elaraai/east";
20
- import { UIComponentType } from "../../component.js";
21
- import { DensityType, type DensityLiteral } from "../../style/interaction.js";
22
- import { CellRefType, DragEventType } from "../../contracts/drag.js";
23
- import { PlannerStateType } from "../../contracts/states.js";
24
- import { RosterModeType, type RosterModeLiteral } from "./types.js";
25
- import { ApprovalStateType, RowRefType, type ReviewConfig } from "../../contracts/review.js";
26
- import { StatusValueType } from "../../feedback/status/types.js";
27
- export { RosterModeType, type RosterModeLiteral, RosterPersonType, RosterShiftType, } from "./types.js";
28
- /**
29
- * East StructType for the Roster component.
30
- *
31
- * @remarks
32
- * Flat resolved tables — the renderer groups shifts into cells by
33
- * `person × day`. Shift states reuse the Planner event-state grammar
34
- * ({@link PlannerStateType}); the `model` flavour renders as the dashed
35
- * ghost with the acceptance affordance. Defined here (not `types.ts`)
36
- * since #265: the root carries the shared review config, whose `summary`
37
- * is a `UIComponentType` — `component.ts` mirrors this arm inline with the
38
- * recursion `node`.
39
- *
40
- * @property id - DnD target identity
41
- * @property sources - Library ids accepted for `add` drags
42
- * @property mode - `published` (committed-only, immutable) or `edit`
43
- * @property days - The day columns, in order
44
- * @property personHeader - The frozen person column's header
45
- * @property personWidth - Optional CSS width for the frozen person column
46
- * @property people - The grid rows
47
- * @property shifts - The shift chips (joined to people by person key)
48
- * @property density - Optional density
49
- * @property summary - Optional status-strip text (dirty / ghost counts)
50
- * @property onDrag - Drag funnel — add / move / remove events
51
- * @property canDrop - Optional IR-level drop veto over synthesized candidate events
52
- * @property onSelect - Shift / cell click callback
53
- * @property onAccept - Ghost-shift acceptance callback (ONE proposed shift)
54
- * @property onAddAt - Empty-cell click callback (edit mode)
55
- * @property review - Optional row-level review chrome (shared contract, #265)
56
- */
57
- export declare const RosterRootType: StructType<{
58
- /** DnD target identity */
59
- readonly id: StringType;
60
- /** Library ids accepted for `add` drags */
61
- readonly sources: ArrayType<StringType>;
62
- /** `published` (committed-only, immutable) or `edit` */
63
- readonly mode: import("@elaraai/east").VariantType<{
64
- readonly published: NullType;
65
- readonly edit: NullType;
66
- }>;
67
- /** The day columns, in order */
68
- readonly days: ArrayType<StringType>;
69
- /** The frozen person column's header */
70
- readonly personHeader: StringType;
71
- /** Optional CSS width for the frozen person column (none = the Planner-consistent 150px) */
72
- readonly personWidth: OptionType<StringType>;
73
- /** The grid rows */
74
- readonly people: ArrayType<StructType<{
75
- readonly key: StringType;
76
- readonly label: StringType;
77
- readonly sublabel: OptionType<StringType>;
78
- readonly status: OptionType<import("@elaraai/east").VariantType<{
79
- readonly success: NullType;
80
- readonly warning: NullType;
81
- readonly danger: NullType;
82
- readonly info: NullType;
83
- readonly neutral: NullType;
84
- }>>;
85
- readonly approval: OptionType<import("@elaraai/east").VariantType<{
86
- readonly approved: NullType;
87
- readonly pending: NullType;
88
- readonly rejected: NullType;
89
- }>>;
90
- }>>;
91
- /** The shift chips (joined to people by person key) */
92
- readonly shifts: ArrayType<StructType<{
93
- readonly key: StringType;
94
- readonly person: StringType;
95
- readonly day: StringType;
96
- readonly label: StringType;
97
- readonly state: import("@elaraai/east").VariantType<{
98
- readonly committed: NullType;
99
- readonly proposed: import("@elaraai/east").VariantType<{
100
- readonly added: NullType;
101
- readonly model: NullType;
102
- readonly removed: NullType;
103
- }>;
104
- readonly rejected: NullType;
105
- }>;
106
- }>>;
107
- /** Optional density */
108
- readonly density: OptionType<import("@elaraai/east").VariantType<{
109
- readonly comfortable: NullType;
110
- readonly compact: NullType;
111
- readonly condensed: NullType;
112
- }>>;
113
- /** Uniform sizing (#320): bound the grid; it scrolls within. `"fill"` fills the parent box. */
114
- readonly height: OptionType<StringType>;
115
- /** Uniform sizing (#320): max-height cap; content-sized up to it. */
116
- readonly maxHeight: OptionType<StringType>;
117
- /** Optional status-strip text (dirty / ghost counts) */
118
- readonly summary: OptionType<StringType>;
119
- /** Drag funnel — add / move / remove events */
120
- readonly onDrag: OptionType<FunctionType<[import("@elaraai/east").VariantType<{
121
- readonly add: StructType<{
122
- readonly from: StructType<{
123
- readonly library: StringType;
124
- readonly key: StringType;
125
- }>;
126
- readonly into: StructType<{
127
- readonly surface: StringType;
128
- readonly row: StringType;
129
- readonly slot: StringType;
130
- readonly event: OptionType<StringType>;
131
- }>;
132
- readonly duplicate: BooleanType;
133
- }>;
134
- readonly move: StructType<{
135
- readonly from: StructType<{
136
- readonly surface: StringType;
137
- readonly row: StringType;
138
- readonly slot: StringType;
139
- readonly event: OptionType<StringType>;
140
- }>;
141
- readonly to: StructType<{
142
- readonly surface: StringType;
143
- readonly row: StringType;
144
- readonly slot: StringType;
145
- readonly event: OptionType<StringType>;
146
- }>;
147
- }>;
148
- readonly remove: StructType<{
149
- readonly from: StructType<{
150
- readonly surface: StringType;
151
- readonly row: StringType;
152
- readonly slot: StringType;
153
- readonly event: OptionType<StringType>;
154
- }>;
155
- readonly to: import("@elaraai/east").VariantType<{
156
- readonly trash: NullType;
157
- readonly source: NullType;
158
- }>;
159
- }>;
160
- readonly resize: StructType<{
161
- readonly event: StructType<{
162
- readonly surface: StringType;
163
- readonly row: StringType;
164
- readonly slot: StringType;
165
- readonly event: OptionType<StringType>;
166
- }>;
167
- readonly edge: import("@elaraai/east").VariantType<{
168
- readonly start: NullType;
169
- readonly end: NullType;
170
- }>;
171
- }>;
172
- }>], NullType>>;
173
- /** Optional IR-level drop veto — consulted per hovered cell with the
174
- * synthesized candidate event (`CanDropFnType` semantics); `false`
175
- * ⇒ the ⊘ invalid stage and the drop is a no-op. Absent ⇒ accept. */
176
- readonly canDrop: OptionType<FunctionType<[import("@elaraai/east").VariantType<{
177
- readonly add: StructType<{
178
- readonly from: StructType<{
179
- readonly library: StringType;
180
- readonly key: StringType;
181
- }>;
182
- readonly into: StructType<{
183
- readonly surface: StringType;
184
- readonly row: StringType;
185
- readonly slot: StringType;
186
- readonly event: OptionType<StringType>;
187
- }>;
188
- readonly duplicate: BooleanType;
189
- }>;
190
- readonly move: StructType<{
191
- readonly from: StructType<{
192
- readonly surface: StringType;
193
- readonly row: StringType;
194
- readonly slot: StringType;
195
- readonly event: OptionType<StringType>;
196
- }>;
197
- readonly to: StructType<{
198
- readonly surface: StringType;
199
- readonly row: StringType;
200
- readonly slot: StringType;
201
- readonly event: OptionType<StringType>;
202
- }>;
203
- }>;
204
- readonly remove: StructType<{
205
- readonly from: StructType<{
206
- readonly surface: StringType;
207
- readonly row: StringType;
208
- readonly slot: StringType;
209
- readonly event: OptionType<StringType>;
210
- }>;
211
- readonly to: import("@elaraai/east").VariantType<{
212
- readonly trash: NullType;
213
- readonly source: NullType;
214
- }>;
215
- }>;
216
- readonly resize: StructType<{
217
- readonly event: StructType<{
218
- readonly surface: StringType;
219
- readonly row: StringType;
220
- readonly slot: StringType;
221
- readonly event: OptionType<StringType>;
222
- }>;
223
- readonly edge: import("@elaraai/east").VariantType<{
224
- readonly start: NullType;
225
- readonly end: NullType;
226
- }>;
227
- }>;
228
- }>], BooleanType>>;
229
- /** Shift / cell click callback */
230
- readonly onSelect: OptionType<FunctionType<[StructType<{
231
- readonly surface: StringType;
232
- readonly row: StringType;
233
- readonly slot: StringType;
234
- readonly event: OptionType<StringType>;
235
- }>], NullType>>;
236
- /** Ghost-shift acceptance callback — resolves ONE proposed shift. The
237
- * granularity contract (#265): `onAccept(CellRef)` is the *item*-level
238
- * call; `review.onApprove({ rowIndex })` signs off a LINE. The interplay
239
- * is host-owned — the component reports, the host decides whether
240
- * row-approval implies accepting the row's ghosts (no implicit
241
- * cascading in the component). */
242
- readonly onAccept: OptionType<FunctionType<[StructType<{
243
- readonly surface: StringType;
244
- readonly row: StringType;
245
- readonly slot: StringType;
246
- readonly event: OptionType<StringType>;
247
- }>], NullType>>;
248
- /** Empty-cell click callback (edit mode) */
249
- readonly onAddAt: OptionType<FunctionType<[StructType<{
250
- readonly surface: StringType;
251
- readonly row: StringType;
252
- readonly slot: StringType;
253
- readonly event: OptionType<StringType>;
254
- }>], NullType>>;
255
- /** Optional row-level review chrome (#265) — the shared contract's
256
- * Decision column + commitBar foot; rows are people. Absent ⇒ a plain
257
- * Roster (people `status`/`approval` are inert). Composes with — does
258
- * not replace — per-tile ghost `onAccept`. */
259
- readonly review: OptionType<import("../../contracts/approval.js").ReviewStructType<StructType<{
260
- readonly rowIndex: IntegerType;
261
- }>, import("@elaraai/east").RecursiveType<import("../../component.js").UIComponentNode>>>;
262
- }>;
263
- /**
264
- * Type representing the Roster component.
265
- */
266
- export type RosterRootType = typeof RosterRootType;
267
- /**
268
- * The struct element type of a `SubtypeExprOrValue<ArrayType<StructType>>`.
269
- */
270
- export type RowElement<T extends SubtypeExprOrValue<ArrayType<StructType>>> = TypeOf<T> extends ArrayType<infer S> ? (S extends StructType ? S : never) : never;
271
- /**
272
- * Fields the `person` mapper returns — one grid row, before defaults.
273
- *
274
- * @remarks
275
- * The mapper returns this plain object or a full
276
- * `ExprType<RosterPersonType>` when the row is already resolved.
277
- *
278
- * @property key - Person identity — the join key shifts reference
279
- * @property label - Display name
280
- * @property sublabel - Optional muted second line (e.g. target hours)
281
- */
282
- export interface RosterPersonFields {
283
- /** Person identity — the join key shifts reference. */
284
- key: SubtypeExprOrValue<StringType>;
285
- /** Display name. */
286
- label: SubtypeExprOrValue<StringType>;
287
- /** Optional muted second line (e.g. target hours). */
288
- sublabel?: SubtypeExprOrValue<StringType>;
289
- /** Optional per-row status — the quiet dot beside the person (some ⇒
290
- * flagged, none ⇒ clean). Only rendered when `review` is set (#265). */
291
- status?: SubtypeExprOrValue<OptionType<StatusValueType>>;
292
- /** Optional per-row review decision (see the shared `deriveApproval`
293
- * helper: clean ⇒ approved, flagged ⇒ pending). Only rendered when
294
- * `review` is set (#265). */
295
- approval?: SubtypeExprOrValue<OptionType<ApprovalStateType>>;
296
- }
297
- /**
298
- * Fields the `shift` mapper returns — one shift chip, before defaults.
299
- *
300
- * @remarks
301
- * One of `hours` / `label` is required: `hours` resolves to the `${hours}h`
302
- * chip text unless `label` overrides it.
303
- *
304
- * @property key - Stable shift identity
305
- * @property person - The person key (join key)
306
- * @property day - The day — must name one of `days`
307
- * @property hours - Shift length; chips read `${hours}h`
308
- * @property label - Explicit chip text (overrides `hours`)
309
- * @property state - The audit state (a `PlannerStateType` value)
310
- */
311
- export interface RosterShiftFields {
312
- /** Stable shift identity. */
313
- key: SubtypeExprOrValue<StringType>;
314
- /** The person key (join key). */
315
- person: SubtypeExprOrValue<StringType>;
316
- /** The day — must name one of `days`. */
317
- day: SubtypeExprOrValue<StringType>;
318
- /** Shift length; chips read `${hours}h`. */
319
- hours?: SubtypeExprOrValue<IntegerType>;
320
- /** Explicit chip text (overrides `hours`). */
321
- label?: SubtypeExprOrValue<StringType>;
322
- /** The audit state (a `PlannerStateType` value). */
323
- state: SubtypeExprOrValue<PlannerStateType>;
324
- }
325
- /**
326
- * Configuration for {@link createRoster}.
327
- *
328
- * @typeParam P - The people row struct
329
- * @typeParam S - The shift row struct
330
- * @property id - DnD target identity
331
- * @property sources - Library ids accepted for `add` drags (omit = no adds)
332
- * @property mode - `published` (default) or `edit`
333
- * @property person - People row mapper (omit when rows are already resolved)
334
- * @property personHeader - The frozen person column's header
335
- * @property shift - Shifts row mapper (omit when rows are already resolved)
336
- * @property days - The day columns, in order (defaults to Mon–Sun)
337
- * @property density - Optional density
338
- * @property summary - Optional status-strip text (dirty / ghost counts)
339
- * @property onDrag - Drag funnel — add / move / remove events
340
- * @property canDrop - Optional IR-level drop veto over synthesized candidate events
341
- * @property onSelect - Shift / cell click callback (a drag-grammar cell ref)
342
- * @property onAccept - Ghost-shift acceptance callback
343
- * @property onAddAt - Empty-cell click callback (edit mode)
344
- */
345
- export interface RosterConfig<P extends StructType, S extends StructType> {
346
- /** DnD target identity. */
347
- id: string;
348
- /** Library ids accepted for `add` drags (omit = no adds). */
349
- sources?: string[];
350
- /** `published` (default) or `edit`. */
351
- mode?: SubtypeExprOrValue<RosterModeType> | RosterModeLiteral;
352
- /** People row mapper; omit when `people` is already `ArrayType(Roster.Types.Person)`. */
353
- person?: (person: ExprType<P>) => RosterPersonFields;
354
- /** The frozen person column's header (defaults to `"Operator"`). */
355
- personHeader?: string;
356
- /** Optional CSS width for the frozen person column (omit = the Planner-consistent `150px`). */
357
- personWidth?: string;
358
- /** Shifts row mapper; omit when `shifts` is already `ArrayType(Roster.Types.Shift)`. */
359
- shift?: (shift: ExprType<S>) => RosterShiftFields;
360
- /** The day columns, in order (defaults to Mon–Sun). */
361
- days?: string[];
362
- /** Optional density. */
363
- density?: SubtypeExprOrValue<DensityType> | DensityLiteral;
364
- /** Uniform sizing (#320): bound the component — a pixel number, `"fill"` (fill the parent box), or a CSS length; the whole component takes this height and scrolls within. */
365
- height?: SubtypeExprOrValue<StringType>;
366
- /** Uniform sizing (#320): max-height cap — a pixel number or CSS length; content-sized up to it. */
367
- maxHeight?: SubtypeExprOrValue<StringType>;
368
- /** Optional status-strip text (dirty / ghost counts). */
369
- summary?: SubtypeExprOrValue<StringType>;
370
- /** Drag funnel — add / move / remove events. */
371
- onDrag?: SubtypeExprOrValue<FunctionType<[DragEventType], NullType>>;
372
- /** Optional IR-level drop veto — consulted per hovered cell with the
373
- * synthesized candidate event (`CanDropFnType` semantics, see
374
- * `contracts/drag.ts`); `false` ⇒ the ⊘ invalid stage and the drop is a
375
- * no-op. Absent ⇒ accept (the pre-#261 behaviour). */
376
- canDrop?: SubtypeExprOrValue<FunctionType<[DragEventType], BooleanType>>;
377
- /** Shift / cell click callback (a drag-grammar cell ref). */
378
- onSelect?: SubtypeExprOrValue<FunctionType<[CellRefType], NullType>>;
379
- /** Ghost-shift acceptance callback. */
380
- onAccept?: SubtypeExprOrValue<FunctionType<[CellRefType], NullType>>;
381
- /** Empty-cell click callback (edit mode). */
382
- onAddAt?: SubtypeExprOrValue<FunctionType<[CellRefType], NullType>>;
383
- /** Optional row-level review chrome (#265) — the shared contract's
384
- * Decision column + commitBar foot; rows are people, callbacks receive
385
- * `{ rowIndex }`. Presence is the opt-in. Composes with — does not
386
- * replace — per-tile ghost `onAccept`: accept resolves ONE ghost,
387
- * approve signs off a LINE; the interplay is host-owned. */
388
- review?: ReviewConfig<RowRefType>;
389
- }
390
- /**
391
- * Creates a Roster — people × days-of-week shift scheduling.
392
- *
393
- * @typeParam P - The people-table input
394
- * @typeParam S - The shifts-table input
395
- * @param people - The people rows (one grid row each)
396
- * @param shifts - The shift rows (joined to people by the encoded person key)
397
- * @param config - The Roster configuration ({@link RosterConfig})
398
- * @returns An East expression of `UIComponentType`
399
- *
400
- * @example
401
- * ```ts
402
- * import { East, variant } from "@elaraai/east";
403
- * import { Roster, UIComponentType } from "@elaraai/east-ui";
404
- *
405
- * const example = East.function([], UIComponentType, _$ =>
406
- * Roster.Root(
407
- * [{ id: "patel", name: "Patel" }],
408
- * [{ id: "p1", person: "patel", day: "Mon", hours: 8n, state: variant("committed", null) }],
409
- * {
410
- * id: "roster-se",
411
- * sources: ["people"],
412
- * mode: "edit",
413
- * person: p => ({ key: p.id, label: p.name }),
414
- * shift: s => ({ key: s.id, person: s.person, day: s.day,
415
- * hours: s.hours, state: s.state }),
416
- * },
417
- * ),
418
- * );
419
- * ```
420
- */
421
- declare function createRoster<P extends SubtypeExprOrValue<ArrayType<StructType>>, S extends SubtypeExprOrValue<ArrayType<StructType>>>(people: P, shifts: S, config: RosterConfig<RowElement<P>, RowElement<S>>): ExprType<UIComponentType>;
422
- /**
423
- * Roster component namespace.
424
- *
425
- * @remarks
426
- * `Roster.Root(people, shifts, config)` builds the grid from the two flat
427
- * tables; shift states reuse the Planner event-state grammar
428
- * (`Roster.Types.State`), so data carries typed `variant(...)` values.
429
- */
430
- export declare const Roster: {
431
- /**
432
- * Creates a Roster — people × days-of-week shift scheduling with the
433
- * drag & drop target role.
434
- *
435
- * @typeParam P - The people-table input
436
- * @typeParam S - The shifts-table input
437
- * @param people - The people rows (one grid row each)
438
- * @param shifts - The shift rows (joined to people by the encoded person key)
439
- * @param config - The Roster configuration ({@link RosterConfig})
440
- * @returns An East expression of `UIComponentType`
441
- *
442
- * @remarks
443
- * Published mode renders committed shifts only, pointer-immutable; edit
444
- * mode enables drag handles on proposed shifts, empty-cell add, and
445
- * ghost acceptance. Cross-row moves arrive as plain `move` events — the
446
- * host derives any swap-proposal representation from
447
- * `from.row ≠ to.row`.
448
- *
449
- * @example
450
- * ```ts
451
- * import { East, variant } from "@elaraai/east";
452
- * import { Roster, UIComponentType } from "@elaraai/east-ui";
453
- *
454
- * const example = East.function([], UIComponentType, _$ =>
455
- * Roster.Root(
456
- * [{ id: "patel", name: "Patel" }],
457
- * [{ id: "p1", person: "patel", day: "Mon", hours: 8n, state: variant("committed", null) }],
458
- * {
459
- * id: "roster-se",
460
- * person: p => ({ key: p.id, label: p.name }),
461
- * shift: s => ({ key: s.id, person: s.person, day: s.day,
462
- * hours: s.hours, state: s.state }),
463
- * },
464
- * ),
465
- * );
466
- * ```
467
- */
468
- readonly Root: typeof createRoster;
469
- readonly Types: {
470
- /**
471
- * East StructType for the Roster component.
472
- *
473
- * @remarks
474
- * Flat resolved tables; the renderer groups shifts into cells by
475
- * `person × day`. See {@link RosterRootType} for per-field docs.
476
- *
477
- * @property id - DnD target identity
478
- * @property sources - Library ids accepted for `add` drags
479
- * @property mode - `published` or `edit`
480
- * @property days - The day columns, in order
481
- * @property personHeader - The frozen person column's header
482
- * @property people - The grid rows
483
- * @property shifts - The shift chips
484
- * @property density - Optional density
485
- * @property summary - Optional status-strip text
486
- * @property onDrag - Drag funnel
487
- * @property onSelect - Shift / cell click callback
488
- * @property onAccept - Ghost acceptance callback
489
- * @property onAddAt - Empty-cell click callback
490
- */
491
- readonly Roster: StructType<{
492
- /** DnD target identity */
493
- readonly id: StringType;
494
- /** Library ids accepted for `add` drags */
495
- readonly sources: ArrayType<StringType>;
496
- /** `published` (committed-only, immutable) or `edit` */
497
- readonly mode: import("@elaraai/east").VariantType<{
498
- readonly published: NullType;
499
- readonly edit: NullType;
500
- }>;
501
- /** The day columns, in order */
502
- readonly days: ArrayType<StringType>;
503
- /** The frozen person column's header */
504
- readonly personHeader: StringType;
505
- /** Optional CSS width for the frozen person column (none = the Planner-consistent 150px) */
506
- readonly personWidth: OptionType<StringType>;
507
- /** The grid rows */
508
- readonly people: ArrayType<StructType<{
509
- readonly key: StringType;
510
- readonly label: StringType;
511
- readonly sublabel: OptionType<StringType>;
512
- readonly status: OptionType<import("@elaraai/east").VariantType<{
513
- readonly success: NullType;
514
- readonly warning: NullType;
515
- readonly danger: NullType;
516
- readonly info: NullType;
517
- readonly neutral: NullType;
518
- }>>;
519
- readonly approval: OptionType<import("@elaraai/east").VariantType<{
520
- readonly approved: NullType;
521
- readonly pending: NullType;
522
- readonly rejected: NullType;
523
- }>>;
524
- }>>;
525
- /** The shift chips (joined to people by person key) */
526
- readonly shifts: ArrayType<StructType<{
527
- readonly key: StringType;
528
- readonly person: StringType;
529
- readonly day: StringType;
530
- readonly label: StringType;
531
- readonly state: import("@elaraai/east").VariantType<{
532
- readonly committed: NullType;
533
- readonly proposed: import("@elaraai/east").VariantType<{
534
- readonly added: NullType;
535
- readonly model: NullType;
536
- readonly removed: NullType;
537
- }>;
538
- readonly rejected: NullType;
539
- }>;
540
- }>>;
541
- /** Optional density */
542
- readonly density: OptionType<import("@elaraai/east").VariantType<{
543
- readonly comfortable: NullType;
544
- readonly compact: NullType;
545
- readonly condensed: NullType;
546
- }>>;
547
- /** Uniform sizing (#320): bound the grid; it scrolls within. `"fill"` fills the parent box. */
548
- readonly height: OptionType<StringType>;
549
- /** Uniform sizing (#320): max-height cap; content-sized up to it. */
550
- readonly maxHeight: OptionType<StringType>;
551
- /** Optional status-strip text (dirty / ghost counts) */
552
- readonly summary: OptionType<StringType>;
553
- /** Drag funnel — add / move / remove events */
554
- readonly onDrag: OptionType<FunctionType<[import("@elaraai/east").VariantType<{
555
- readonly add: StructType<{
556
- readonly from: StructType<{
557
- readonly library: StringType;
558
- readonly key: StringType;
559
- }>;
560
- readonly into: StructType<{
561
- readonly surface: StringType;
562
- readonly row: StringType;
563
- readonly slot: StringType;
564
- readonly event: OptionType<StringType>;
565
- }>;
566
- readonly duplicate: BooleanType;
567
- }>;
568
- readonly move: StructType<{
569
- readonly from: StructType<{
570
- readonly surface: StringType;
571
- readonly row: StringType;
572
- readonly slot: StringType;
573
- readonly event: OptionType<StringType>;
574
- }>;
575
- readonly to: StructType<{
576
- readonly surface: StringType;
577
- readonly row: StringType;
578
- readonly slot: StringType;
579
- readonly event: OptionType<StringType>;
580
- }>;
581
- }>;
582
- readonly remove: StructType<{
583
- readonly from: StructType<{
584
- readonly surface: StringType;
585
- readonly row: StringType;
586
- readonly slot: StringType;
587
- readonly event: OptionType<StringType>;
588
- }>;
589
- readonly to: import("@elaraai/east").VariantType<{
590
- readonly trash: NullType;
591
- readonly source: NullType;
592
- }>;
593
- }>;
594
- readonly resize: StructType<{
595
- readonly event: StructType<{
596
- readonly surface: StringType;
597
- readonly row: StringType;
598
- readonly slot: StringType;
599
- readonly event: OptionType<StringType>;
600
- }>;
601
- readonly edge: import("@elaraai/east").VariantType<{
602
- readonly start: NullType;
603
- readonly end: NullType;
604
- }>;
605
- }>;
606
- }>], NullType>>;
607
- /** Optional IR-level drop veto — consulted per hovered cell with the
608
- * synthesized candidate event (`CanDropFnType` semantics); `false`
609
- * ⇒ the ⊘ invalid stage and the drop is a no-op. Absent ⇒ accept. */
610
- readonly canDrop: OptionType<FunctionType<[import("@elaraai/east").VariantType<{
611
- readonly add: StructType<{
612
- readonly from: StructType<{
613
- readonly library: StringType;
614
- readonly key: StringType;
615
- }>;
616
- readonly into: StructType<{
617
- readonly surface: StringType;
618
- readonly row: StringType;
619
- readonly slot: StringType;
620
- readonly event: OptionType<StringType>;
621
- }>;
622
- readonly duplicate: BooleanType;
623
- }>;
624
- readonly move: StructType<{
625
- readonly from: StructType<{
626
- readonly surface: StringType;
627
- readonly row: StringType;
628
- readonly slot: StringType;
629
- readonly event: OptionType<StringType>;
630
- }>;
631
- readonly to: StructType<{
632
- readonly surface: StringType;
633
- readonly row: StringType;
634
- readonly slot: StringType;
635
- readonly event: OptionType<StringType>;
636
- }>;
637
- }>;
638
- readonly remove: StructType<{
639
- readonly from: StructType<{
640
- readonly surface: StringType;
641
- readonly row: StringType;
642
- readonly slot: StringType;
643
- readonly event: OptionType<StringType>;
644
- }>;
645
- readonly to: import("@elaraai/east").VariantType<{
646
- readonly trash: NullType;
647
- readonly source: NullType;
648
- }>;
649
- }>;
650
- readonly resize: StructType<{
651
- readonly event: StructType<{
652
- readonly surface: StringType;
653
- readonly row: StringType;
654
- readonly slot: StringType;
655
- readonly event: OptionType<StringType>;
656
- }>;
657
- readonly edge: import("@elaraai/east").VariantType<{
658
- readonly start: NullType;
659
- readonly end: NullType;
660
- }>;
661
- }>;
662
- }>], BooleanType>>;
663
- /** Shift / cell click callback */
664
- readonly onSelect: OptionType<FunctionType<[StructType<{
665
- readonly surface: StringType;
666
- readonly row: StringType;
667
- readonly slot: StringType;
668
- readonly event: OptionType<StringType>;
669
- }>], NullType>>;
670
- /** Ghost-shift acceptance callback — resolves ONE proposed shift. The
671
- * granularity contract (#265): `onAccept(CellRef)` is the *item*-level
672
- * call; `review.onApprove({ rowIndex })` signs off a LINE. The interplay
673
- * is host-owned — the component reports, the host decides whether
674
- * row-approval implies accepting the row's ghosts (no implicit
675
- * cascading in the component). */
676
- readonly onAccept: OptionType<FunctionType<[StructType<{
677
- readonly surface: StringType;
678
- readonly row: StringType;
679
- readonly slot: StringType;
680
- readonly event: OptionType<StringType>;
681
- }>], NullType>>;
682
- /** Empty-cell click callback (edit mode) */
683
- readonly onAddAt: OptionType<FunctionType<[StructType<{
684
- readonly surface: StringType;
685
- readonly row: StringType;
686
- readonly slot: StringType;
687
- readonly event: OptionType<StringType>;
688
- }>], NullType>>;
689
- /** Optional row-level review chrome (#265) — the shared contract's
690
- * Decision column + commitBar foot; rows are people. Absent ⇒ a plain
691
- * Roster (people `status`/`approval` are inert). Composes with — does
692
- * not replace — per-tile ghost `onAccept`. */
693
- readonly review: OptionType<import("../../contracts/approval.js").ReviewStructType<StructType<{
694
- readonly rowIndex: IntegerType;
695
- }>, import("@elaraai/east").RecursiveType<import("../../component.js").UIComponentNode>>>;
696
- }>;
697
- /** A row's review decision — the shared `ApprovalStateType` (#265). */
698
- readonly Approval: import("@elaraai/east").VariantType<{
699
- readonly approved: NullType;
700
- readonly pending: NullType;
701
- readonly rejected: NullType;
702
- }>;
703
- /** The review configuration — the shared row-granularity `RowReviewType` (#265). */
704
- readonly Review: import("../../contracts/approval.js").ReviewStructType<StructType<{
705
- readonly rowIndex: IntegerType;
706
- }>, import("@elaraai/east").RecursiveType<import("../../component.js").UIComponentNode>>;
707
- /** The per-row approve / reject payload — the shared `RowRefType` (`{ rowIndex }`). */
708
- readonly ApproveEvent: StructType<{
709
- readonly rowIndex: IntegerType;
710
- }>;
711
- /**
712
- * Roster render mode (`published` / `edit`).
713
- *
714
- * @property published - Committed-only, pointer-immutable
715
- * @property edit - Operator + model proposals are interactive
716
- */
717
- readonly Mode: import("@elaraai/east").VariantType<{
718
- readonly published: NullType;
719
- readonly edit: NullType;
720
- }>;
721
- /**
722
- * A resolved roster person (one grid row).
723
- *
724
- * @property key - Person identity — the join key shifts reference
725
- * @property label - Display name
726
- * @property sublabel - Optional muted second line
727
- */
728
- readonly Person: StructType<{
729
- readonly key: StringType;
730
- readonly label: StringType;
731
- readonly sublabel: OptionType<StringType>;
732
- readonly status: OptionType<import("@elaraai/east").VariantType<{
733
- readonly success: NullType;
734
- readonly warning: NullType;
735
- readonly danger: NullType;
736
- readonly info: NullType;
737
- readonly neutral: NullType;
738
- }>>;
739
- readonly approval: OptionType<import("@elaraai/east").VariantType<{
740
- readonly approved: NullType;
741
- readonly pending: NullType;
742
- readonly rejected: NullType;
743
- }>>;
744
- }>;
745
- /**
746
- * A resolved shift chip.
747
- *
748
- * @property key - Stable shift identity
749
- * @property person - The person key this shift belongs to
750
- * @property day - The day column this shift sits in
751
- * @property label - The chip text
752
- * @property state - The audit state
753
- */
754
- readonly Shift: StructType<{
755
- readonly key: StringType;
756
- readonly person: StringType;
757
- readonly day: StringType;
758
- readonly label: StringType;
759
- readonly state: import("@elaraai/east").VariantType<{
760
- readonly committed: NullType;
761
- readonly proposed: import("@elaraai/east").VariantType<{
762
- readonly added: NullType;
763
- readonly model: NullType;
764
- readonly removed: NullType;
765
- }>;
766
- readonly rejected: NullType;
767
- }>;
768
- }>;
769
- /**
770
- * The shared event-state grammar (committed / proposed / rejected).
771
- *
772
- * @property committed - A published shift
773
- * @property proposed - A proposal (`added` / `model` / `removed`)
774
- * @property rejected - A rejected proposal
775
- */
776
- readonly State: import("@elaraai/east").VariantType<{
777
- readonly committed: NullType;
778
- readonly proposed: import("@elaraai/east").VariantType<{
779
- readonly added: NullType;
780
- readonly model: NullType;
781
- readonly removed: NullType;
782
- }>;
783
- readonly rejected: NullType;
784
- }>;
785
- };
786
- };
787
- //# sourceMappingURL=index.d.ts.map