@elaraai/e3-ui 1.0.93 → 1.0.95

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 (303) hide show
  1. package/dist/src/allocation/adapters.d.ts +159 -0
  2. package/dist/src/allocation/adapters.d.ts.map +1 -0
  3. package/dist/src/allocation/adapters.js +241 -0
  4. package/dist/src/allocation/adapters.js.map +1 -0
  5. package/dist/src/allocation/functions.d.ts +664 -0
  6. package/dist/src/allocation/functions.d.ts.map +1 -0
  7. package/dist/src/allocation/functions.js +782 -0
  8. package/dist/src/allocation/functions.js.map +1 -0
  9. package/dist/src/allocation/index.d.ts +2985 -0
  10. package/dist/src/allocation/index.d.ts.map +1 -0
  11. package/dist/src/allocation/index.js +499 -0
  12. package/dist/src/allocation/index.js.map +1 -0
  13. package/dist/src/allocation/types.d.ts +832 -0
  14. package/dist/src/allocation/types.d.ts.map +1 -0
  15. package/dist/src/allocation/types.js +360 -0
  16. package/dist/src/allocation/types.js.map +1 -0
  17. package/dist/src/bind/func.d.ts +14 -0
  18. package/dist/src/bind/func.d.ts.map +1 -1
  19. package/dist/src/bind/func.js +22 -1
  20. package/dist/src/bind/func.js.map +1 -1
  21. package/dist/src/calendar/index.d.ts +510 -1639
  22. package/dist/src/calendar/index.d.ts.map +1 -1
  23. package/dist/src/calendar/index.js +56 -29
  24. package/dist/src/calendar/index.js.map +1 -1
  25. package/dist/src/flowchart/canvas.d.ts +9 -21
  26. package/dist/src/flowchart/canvas.d.ts.map +1 -1
  27. package/dist/src/flowchart/canvas.js +10 -22
  28. package/dist/src/flowchart/canvas.js.map +1 -1
  29. package/dist/src/flowchart/flowchart.d.ts +19 -13
  30. package/dist/src/flowchart/flowchart.d.ts.map +1 -1
  31. package/dist/src/flowchart/flowchart.js.map +1 -1
  32. package/dist/src/flowchart/index.d.ts +44 -21
  33. package/dist/src/flowchart/index.d.ts.map +1 -1
  34. package/dist/src/flowchart/index.js +43 -20
  35. package/dist/src/flowchart/index.js.map +1 -1
  36. package/dist/src/flowchart/library.d.ts +166 -81
  37. package/dist/src/flowchart/library.d.ts.map +1 -1
  38. package/dist/src/flowchart/library.js +232 -105
  39. package/dist/src/flowchart/library.js.map +1 -1
  40. package/dist/src/flowchart/over.d.ts +9 -16
  41. package/dist/src/flowchart/over.d.ts.map +1 -1
  42. package/dist/src/flowchart/over.js +9 -16
  43. package/dist/src/flowchart/over.js.map +1 -1
  44. package/dist/src/flowchart/payload.d.ts +710 -508
  45. package/dist/src/flowchart/payload.d.ts.map +1 -1
  46. package/dist/src/flowchart/payload.js +128 -74
  47. package/dist/src/flowchart/payload.js.map +1 -1
  48. package/dist/src/flowchart/window.d.ts +132 -347
  49. package/dist/src/flowchart/window.d.ts.map +1 -1
  50. package/dist/src/flowchart/window.js +48 -55
  51. package/dist/src/flowchart/window.js.map +1 -1
  52. package/dist/src/index.d.ts +11 -7
  53. package/dist/src/index.d.ts.map +1 -1
  54. package/dist/src/index.js +14 -6
  55. package/dist/src/index.js.map +1 -1
  56. package/dist/src/internal.d.ts +18 -7
  57. package/dist/src/internal.d.ts.map +1 -1
  58. package/dist/src/internal.js +28 -9
  59. package/dist/src/internal.js.map +1 -1
  60. package/dist/src/plan/event-rows.d.ts +26 -10
  61. package/dist/src/plan/event-rows.d.ts.map +1 -1
  62. package/dist/src/plan/event-rows.js +39 -13
  63. package/dist/src/plan/event-rows.js.map +1 -1
  64. package/dist/src/plan/ir.d.ts +244 -815
  65. package/dist/src/plan/ir.d.ts.map +1 -1
  66. package/dist/src/plan/ir.js +8 -6
  67. package/dist/src/plan/ir.js.map +1 -1
  68. package/dist/src/plan/library.d.ts +3 -0
  69. package/dist/src/plan/library.d.ts.map +1 -1
  70. package/dist/src/plan/library.js +1 -1
  71. package/dist/src/plan/library.js.map +1 -1
  72. package/dist/src/plan/ordered-source.d.ts +1 -0
  73. package/dist/src/plan/ordered-source.d.ts.map +1 -1
  74. package/dist/src/plan/plan.d.ts +559 -1667
  75. package/dist/src/plan/plan.d.ts.map +1 -1
  76. package/dist/src/plan/plan.js +123 -45
  77. package/dist/src/plan/plan.js.map +1 -1
  78. package/dist/src/plan/root.d.ts +16 -20
  79. package/dist/src/plan/root.d.ts.map +1 -1
  80. package/dist/src/plan/root.js +23 -33
  81. package/dist/src/plan/root.js.map +1 -1
  82. package/dist/src/roster/coverage.d.ts +17 -231
  83. package/dist/src/roster/coverage.d.ts.map +1 -1
  84. package/dist/src/roster/coverage.js +94 -90
  85. package/dist/src/roster/coverage.js.map +1 -1
  86. package/dist/src/roster/fit.d.ts +59 -0
  87. package/dist/src/roster/fit.d.ts.map +1 -0
  88. package/dist/src/roster/fit.js +155 -0
  89. package/dist/src/roster/fit.js.map +1 -0
  90. package/dist/src/roster/index.d.ts +2862 -3662
  91. package/dist/src/roster/index.d.ts.map +1 -1
  92. package/dist/src/roster/index.js +383 -81
  93. package/dist/src/roster/index.js.map +1 -1
  94. package/dist/src/roster/library.d.ts +37 -92
  95. package/dist/src/roster/library.d.ts.map +1 -1
  96. package/dist/src/roster/library.js +25 -64
  97. package/dist/src/roster/library.js.map +1 -1
  98. package/dist/src/roster/lists.d.ts +195 -0
  99. package/dist/src/roster/lists.d.ts.map +1 -0
  100. package/dist/src/roster/lists.js +233 -0
  101. package/dist/src/roster/lists.js.map +1 -0
  102. package/dist/src/roster/rules.d.ts +17 -260
  103. package/dist/src/roster/rules.d.ts.map +1 -1
  104. package/dist/src/roster/rules.js +135 -132
  105. package/dist/src/roster/rules.js.map +1 -1
  106. package/dist/src/roster/targets.d.ts +115 -0
  107. package/dist/src/roster/targets.d.ts.map +1 -0
  108. package/dist/src/roster/targets.js +213 -0
  109. package/dist/src/roster/targets.js.map +1 -0
  110. package/dist/src/roster/times.d.ts +251 -0
  111. package/dist/src/roster/times.d.ts.map +1 -0
  112. package/dist/src/roster/times.js +174 -0
  113. package/dist/src/roster/times.js.map +1 -0
  114. package/dist/src/roster/types.d.ts +828 -183
  115. package/dist/src/roster/types.d.ts.map +1 -1
  116. package/dist/src/roster/types.js +224 -97
  117. package/dist/src/roster/types.js.map +1 -1
  118. package/dist/src/schedule/accessor.d.ts +28 -0
  119. package/dist/src/schedule/accessor.d.ts.map +1 -0
  120. package/dist/src/schedule/accessor.js +39 -0
  121. package/dist/src/schedule/accessor.js.map +1 -0
  122. package/dist/src/schedule/events.d.ts +170 -42
  123. package/dist/src/schedule/events.d.ts.map +1 -1
  124. package/dist/src/schedule/events.js +431 -171
  125. package/dist/src/schedule/events.js.map +1 -1
  126. package/dist/src/schedule/index.d.ts +41 -4
  127. package/dist/src/schedule/index.d.ts.map +1 -1
  128. package/dist/src/schedule/index.js +35 -3
  129. package/dist/src/schedule/index.js.map +1 -1
  130. package/dist/src/schedule/library.d.ts +13 -3
  131. package/dist/src/schedule/library.d.ts.map +1 -1
  132. package/dist/src/schedule/library.js +11 -4
  133. package/dist/src/schedule/library.js.map +1 -1
  134. package/dist/src/schedule/periods.d.ts +115 -0
  135. package/dist/src/schedule/periods.d.ts.map +1 -0
  136. package/dist/src/schedule/periods.js +215 -0
  137. package/dist/src/schedule/periods.js.map +1 -0
  138. package/dist/src/schedule/record-window.d.ts +25 -3
  139. package/dist/src/schedule/record-window.d.ts.map +1 -1
  140. package/dist/src/schedule/record-window.js +31 -18
  141. package/dist/src/schedule/record-window.js.map +1 -1
  142. package/dist/src/schedule/resources.d.ts +82 -4
  143. package/dist/src/schedule/resources.d.ts.map +1 -1
  144. package/dist/src/schedule/resources.js +44 -14
  145. package/dist/src/schedule/resources.js.map +1 -1
  146. package/dist/src/schedule/session.d.ts +69 -0
  147. package/dist/src/schedule/session.d.ts.map +1 -0
  148. package/dist/src/schedule/session.js +121 -0
  149. package/dist/src/schedule/session.js.map +1 -0
  150. package/dist/src/schedule/templates.d.ts +14 -2
  151. package/dist/src/schedule/templates.d.ts.map +1 -1
  152. package/dist/src/schedule/templates.js +5 -3
  153. package/dist/src/schedule/templates.js.map +1 -1
  154. package/dist/src/schedule/types.d.ts +1671 -37
  155. package/dist/src/schedule/types.d.ts.map +1 -1
  156. package/dist/src/schedule/types.js +196 -5
  157. package/dist/src/schedule/types.js.map +1 -1
  158. package/dist/src/schedule/window.d.ts +14 -0
  159. package/dist/src/schedule/window.d.ts.map +1 -1
  160. package/dist/src/schedule/window.js +14 -4
  161. package/dist/src/schedule/window.js.map +1 -1
  162. package/dist/src/schedule/words.d.ts +22 -0
  163. package/dist/src/schedule/words.d.ts.map +1 -0
  164. package/dist/src/schedule/words.js +25 -0
  165. package/dist/src/schedule/words.js.map +1 -0
  166. package/dist/src/sheet/index.d.ts +61 -27
  167. package/dist/src/sheet/index.d.ts.map +1 -1
  168. package/dist/src/sheet/index.js +59 -25
  169. package/dist/src/sheet/index.js.map +1 -1
  170. package/dist/src/sheet/library.d.ts +21 -3
  171. package/dist/src/sheet/library.d.ts.map +1 -1
  172. package/dist/src/sheet/library.js +23 -6
  173. package/dist/src/sheet/library.js.map +1 -1
  174. package/dist/src/sheet/registers.d.ts +100 -85
  175. package/dist/src/sheet/registers.d.ts.map +1 -1
  176. package/dist/src/sheet/registers.js +100 -85
  177. package/dist/src/sheet/registers.js.map +1 -1
  178. package/dist/src/sheet/root.d.ts +8 -12
  179. package/dist/src/sheet/root.d.ts.map +1 -1
  180. package/dist/src/sheet/root.js +6 -40
  181. package/dist/src/sheet/root.js.map +1 -1
  182. package/dist/src/sheet/sheet.d.ts +598 -2349
  183. package/dist/src/sheet/sheet.d.ts.map +1 -1
  184. package/dist/src/sheet/sheet.js +124 -37
  185. package/dist/src/sheet/sheet.js.map +1 -1
  186. package/dist/src/sheet/sub-rows.d.ts +74 -28
  187. package/dist/src/sheet/sub-rows.d.ts.map +1 -1
  188. package/dist/src/sheet/sub-rows.js +74 -28
  189. package/dist/src/sheet/sub-rows.js.map +1 -1
  190. package/dist/src/sheet/templates.d.ts +98 -34
  191. package/dist/src/sheet/templates.d.ts.map +1 -1
  192. package/dist/src/sheet/templates.js +102 -58
  193. package/dist/src/sheet/templates.js.map +1 -1
  194. package/dist/src/sheet/types.d.ts +289 -1359
  195. package/dist/src/sheet/types.d.ts.map +1 -1
  196. package/dist/src/sheet/types.js +20 -26
  197. package/dist/src/sheet/types.js.map +1 -1
  198. package/dist/src/sheet/views.d.ts +10 -11
  199. package/dist/src/sheet/views.d.ts.map +1 -1
  200. package/dist/src/sheet/views.js +15 -20
  201. package/dist/src/sheet/views.js.map +1 -1
  202. package/dist/src/{roster/visibility.d.ts → utils/key-visibility.d.ts} +42 -7
  203. package/dist/src/utils/key-visibility.d.ts.map +1 -0
  204. package/dist/src/utils/key-visibility.js +36 -0
  205. package/dist/src/utils/key-visibility.js.map +1 -0
  206. package/dist/src/utils/ordered-source.d.ts +1 -0
  207. package/dist/src/utils/ordered-source.d.ts.map +1 -1
  208. package/dist/src/utils/ordered-source.js +8 -3
  209. package/dist/src/utils/ordered-source.js.map +1 -1
  210. package/dist/src/utils/record-sources.d.ts +107 -0
  211. package/dist/src/utils/record-sources.d.ts.map +1 -0
  212. package/dist/src/utils/record-sources.js +132 -0
  213. package/dist/src/utils/record-sources.js.map +1 -0
  214. package/dist/test/allocation/allocation.examples.d.ts +2902 -0
  215. package/dist/test/allocation/allocation.examples.d.ts.map +1 -0
  216. package/dist/test/allocation/allocation.examples.js +643 -0
  217. package/dist/test/allocation/allocation.examples.js.map +1 -0
  218. package/dist/test/allocation/fit.examples.d.ts +546 -0
  219. package/dist/test/allocation/fit.examples.d.ts.map +1 -0
  220. package/dist/test/allocation/fit.examples.js +171 -0
  221. package/dist/test/allocation/fit.examples.js.map +1 -0
  222. package/dist/test/allocation/kiln-yard.d.ts +181 -0
  223. package/dist/test/allocation/kiln-yard.d.ts.map +1 -0
  224. package/dist/test/allocation/kiln-yard.js +228 -0
  225. package/dist/test/allocation/kiln-yard.js.map +1 -0
  226. package/dist/test/bind/data/data.examples.d.ts +651 -1
  227. package/dist/test/bind/data/data.examples.d.ts.map +1 -1
  228. package/dist/test/bind/data/data.examples.js +140 -2
  229. package/dist/test/bind/data/data.examples.js.map +1 -1
  230. package/dist/test/bind/func/func.examples.d.ts +10 -1
  231. package/dist/test/bind/func/func.examples.d.ts.map +1 -1
  232. package/dist/test/bind/func/func.examples.js +8 -1
  233. package/dist/test/bind/func/func.examples.js.map +1 -1
  234. package/dist/test/bind/record/record.examples.d.ts +633 -1
  235. package/dist/test/bind/record/record.examples.d.ts.map +1 -1
  236. package/dist/test/bind/record/record.examples.js +26 -2
  237. package/dist/test/bind/record/record.examples.js.map +1 -1
  238. package/dist/test/calendar/calendar-records.examples.d.ts.map +1 -1
  239. package/dist/test/calendar/calendar-records.examples.js +18 -14
  240. package/dist/test/calendar/calendar-records.examples.js.map +1 -1
  241. package/dist/test/calendar/calendar.examples.d.ts +521 -16
  242. package/dist/test/calendar/calendar.examples.d.ts.map +1 -1
  243. package/dist/test/calendar/calendar.examples.js +182 -135
  244. package/dist/test/calendar/calendar.examples.js.map +1 -1
  245. package/dist/test/examples-package.d.ts +75 -0
  246. package/dist/test/examples-package.d.ts.map +1 -0
  247. package/dist/test/examples-package.js +263 -0
  248. package/dist/test/examples-package.js.map +1 -0
  249. package/dist/test/flowchart/flowchart.examples.d.ts +211 -19
  250. package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -1
  251. package/dist/test/flowchart/flowchart.examples.js +102 -75
  252. package/dist/test/flowchart/flowchart.examples.js.map +1 -1
  253. package/dist/test/plan/plan-events.examples.d.ts +1439 -209
  254. package/dist/test/plan/plan-events.examples.d.ts.map +1 -1
  255. package/dist/test/plan/plan-events.examples.js +199 -59
  256. package/dist/test/plan/plan-events.examples.js.map +1 -1
  257. package/dist/test/plan/plan-records.examples.d.ts +420 -0
  258. package/dist/test/plan/plan-records.examples.d.ts.map +1 -1
  259. package/dist/test/plan/plan-records.examples.js +70 -19
  260. package/dist/test/plan/plan-records.examples.js.map +1 -1
  261. package/dist/test/plan/plan-windows.examples.d.ts +636 -55
  262. package/dist/test/plan/plan-windows.examples.d.ts.map +1 -1
  263. package/dist/test/plan/plan-windows.examples.js +69 -33
  264. package/dist/test/plan/plan-windows.examples.js.map +1 -1
  265. package/dist/test/plan/plan.examples.d.ts +153 -31
  266. package/dist/test/plan/plan.examples.d.ts.map +1 -1
  267. package/dist/test/plan/plan.examples.js +178 -101
  268. package/dist/test/plan/plan.examples.js.map +1 -1
  269. package/dist/test/roster/domain.examples.d.ts +467 -250
  270. package/dist/test/roster/domain.examples.d.ts.map +1 -1
  271. package/dist/test/roster/domain.examples.js +92 -29
  272. package/dist/test/roster/domain.examples.js.map +1 -1
  273. package/dist/test/roster/roster-records.examples.d.ts +430 -586
  274. package/dist/test/roster/roster-records.examples.d.ts.map +1 -1
  275. package/dist/test/roster/roster-records.examples.js +102 -43
  276. package/dist/test/roster/roster-records.examples.js.map +1 -1
  277. package/dist/test/roster/roster.examples.d.ts +2319 -606
  278. package/dist/test/roster/roster.examples.d.ts.map +1 -1
  279. package/dist/test/roster/roster.examples.js +456 -148
  280. package/dist/test/roster/roster.examples.js.map +1 -1
  281. package/dist/test/roster/warehouse.d.ts +172 -63
  282. package/dist/test/roster/warehouse.d.ts.map +1 -1
  283. package/dist/test/roster/warehouse.js +172 -39
  284. package/dist/test/roster/warehouse.js.map +1 -1
  285. package/dist/test/schedule/schedule.examples.d.ts +3499 -0
  286. package/dist/test/schedule/schedule.examples.d.ts.map +1 -0
  287. package/dist/test/schedule/schedule.examples.js +192 -0
  288. package/dist/test/schedule/schedule.examples.js.map +1 -0
  289. package/dist/test/sheet/sheet-records.examples.d.ts.map +1 -1
  290. package/dist/test/sheet/sheet-records.examples.js +22 -18
  291. package/dist/test/sheet/sheet-records.examples.js.map +1 -1
  292. package/dist/test/sheet/sheet.examples.d.ts +715 -26
  293. package/dist/test/sheet/sheet.examples.d.ts.map +1 -1
  294. package/dist/test/sheet/sheet.examples.js +204 -130
  295. package/dist/test/sheet/sheet.examples.js.map +1 -1
  296. package/package.json +17 -10
  297. package/dist/src/roster/people.d.ts +0 -50
  298. package/dist/src/roster/people.d.ts.map +0 -1
  299. package/dist/src/roster/people.js +0 -32
  300. package/dist/src/roster/people.js.map +0 -1
  301. package/dist/src/roster/visibility.d.ts.map +0 -1
  302. package/dist/src/roster/visibility.js +0 -25
  303. package/dist/src/roster/visibility.js.map +0 -1
@@ -20,6 +20,16 @@
20
20
  * events on one resource at once are a conflict (`overlaps`), and the kind's
21
21
  * own inspector for one event (`inspector`, #1197).
22
22
  *
23
+ * The builders over the app's own records take their roles beside Plan's
24
+ * (#1367, `Builder Interfaces Spec.md` §4.1): the Roster's — the fields a
25
+ * duty's shift, group, position and activity are (`shift`, `group`,
26
+ * `position`, `activity`), and the hours it counts (`hours`, an accessor) —
27
+ * and the Allocation's — the fields a bin's arrival, parts, hold and kind are
28
+ * (`arrival`, `parts`, `hold`, `kind`). A kind is one builder's or the
29
+ * other's. A builder ignores the roles it has no use for, so one record of
30
+ * duties drives a Calendar and the Roster at once. `title` is optional: the
31
+ * Calendar and Plan, which draw it, refuse a kind without one.
32
+ *
23
33
  * The kind closes the record behind East functions over beast2 bytes
24
34
  * ({@link ScheduleKindType}): its events over a window and its backlog, each
25
35
  * with the drafts in place; a gesture written into an entry; the author's
@@ -28,13 +38,15 @@
28
38
  * true })`); and its history. A builder's payload is one type whatever the
29
39
  * records hold, and the renderer never needs a row type.
30
40
  *
31
- * A record Slice reads overlap queries through its declared interval indexes
32
- * (`slice: Slice.bindRecord(...)`, with `range` naming the start field).
33
- * It shares the toolbar's filters and window, counts original events once,
34
- * and reads backlog through the same choices with an Unset start. It requires
35
- * `entries` for original-key inspection and Save. Existing drafts outside a
36
- * new narrowing remain in the session; Save includes them. Do not combine
37
- * this with a local `filter`, `window`, or `backlogWindow`.
41
+ * A builder's `Slice.bindRecords` narrows a kind through the source it names
42
+ * after the kind's slot (#1343): the builder hands that part to `build(slot,
43
+ * part)`, and the kind reads overlap queries through its declared interval
44
+ * indexes (the source's `range` naming the start field). It shares the
45
+ * toolbar's filters and window, counts original events once, and reads backlog
46
+ * through the same choices with an Unset start. It requires `entries` for
47
+ * original-key inspection and Save. Existing drafts outside a new narrowing
48
+ * remain in the session; Save includes them. A kind narrowed so takes no
49
+ * `window` or `backlogWindow`.
38
50
  *
39
51
  * A large record may also be read a window at a time (#1199, `window.ts`): given
40
52
  * `window`, a paged read of a day index keyed by `Schedule.days`, the kind's
@@ -50,24 +62,31 @@
50
62
  * editing session's, which is a session over the record's revision rather
51
63
  * than its snapshot — its drafts held by key, each checked by the record
52
64
  * against what it began from, and a Save's entries read back by key. It builds
53
- * two ways:
54
- * `build(slot)` is the Calendar's kind, which takes no notice of Plan's
55
- * options, and `buildPlan(slot)` Plan's ({@link PlanEventKindType}), the same
56
- * kind with how it draws, its roles, and its events as Plan draws them.
65
+ * four ways:
66
+ * `build(slot, part)` is the Calendar's kind, which takes no notice of Plan's
67
+ * options; `buildPlan(slot, part)` Plan's ({@link PlanEventKindType}), the
68
+ * same kind with how it draws, its roles, and its events as Plan draws them;
69
+ * and `buildRoster(slot, part)` the Roster's ({@link ScheduleRosterKindType})
70
+ * and `buildAllocation(slot, part)` the Allocation's
71
+ * ({@link ScheduleAllocationKindType}): the Calendar's kind, its form over the
72
+ * fields none of the builder's roles writes, with the stored rows of a
73
+ * period, and the builder's roles read from a row and written into one —
74
+ * every other field of the row as it was (B1), a new row's its type's
75
+ * default.
57
76
  *
58
77
  * A record may be keyed by any type: an event is named by its key's text, a
59
78
  * String key as it is, any other key as East prints it.
60
79
  *
61
80
  * @packageDocumentation
62
81
  */
63
- import { BooleanType, DateTimeType, DictType, FloatType, OptionType, StringType, StructType, type EastType, type ExprType, type FunctionType, type NullType, type SubtypeExprOrValue, type VariantType } from "@elaraai/east";
64
- import { EventStateType, type UIComponentType } from "@elaraai/east-ui";
82
+ import { DateTimeType, DictType, FloatType, IntegerType, OptionType, StringType, StructType, type EastType, type ExprType, type FunctionType, type NullType, type SetType, type SubtypeExprOrValue, type VariantType } from "@elaraai/east";
83
+ import { EventStateType, TimeStepType, type UIComponentType } from "@elaraai/east-ui";
65
84
  import { EditingReadinessType, TickFormatType, type FieldHints } from "@elaraai/east-ui/internal";
66
85
  import type { PlanDrawLiteral } from "../plan/types.js";
67
86
  import { type ScheduleTemplates } from "./templates.js";
68
87
  import { SCHEDULE_DEF } from "./resources.js";
69
- import { type ScheduleRecordSlice } from "./record-window.js";
70
- import { PlanEventKindType, ScheduleClockType, ScheduleDurationType, ScheduleKindType, type ScheduleStatusCasesType } from "./types.js";
88
+ import { type ScheduleKindPart } from "./record-window.js";
89
+ import { PlanEventKindType, ScheduleAllocationKindType, ScheduleClockType, ScheduleDurationType, ScheduleKindType, ScheduleRosterKindType, type ScheduleStatusCasesType } from "./types.js";
71
90
  /**
72
91
  * A record bound with its patch mutation, as a kind reads it — what
73
92
  * `Record.bind(record, [e3.mutation.patch(record)])` returns for a `Dict`.
@@ -109,8 +128,20 @@ export type ScheduleInstantField<R extends StructType> = FieldsOf<R, DateTimeTyp
109
128
  export type ScheduleAtField<R extends StructType> = FieldsOf<R, DateTimeType>;
110
129
  /** A Float field of the row: an event's quantity. */
111
130
  export type ScheduleFloatField<R extends StructType> = FieldsOf<R, FloatType>;
131
+ /** An Integer field of the row: a Roster target's positions. */
132
+ export type ScheduleIntegerField<R extends StructType> = FieldsOf<R, IntegerType>;
112
133
  /** An `EventStateType` field of the row: the lifecycle an event wears on a Plan. */
113
134
  export type ScheduleStateField<R extends StructType> = FieldsOf<R, EventStateType>;
135
+ /** An `Option<String>` field of the row: a duty's activity, a bin's arrival or its kind. */
136
+ export type ScheduleOptionStringField<R extends StructType> = FieldsOf<R, OptionType<StringType>>;
137
+ /** A `TimeStep` field of the row (east-ui's `TimeStepType`): how long a resource holds a bin. */
138
+ export type ScheduleTimeStepField<R extends StructType> = FieldsOf<R, TimeStepType>;
139
+ /** A `Dict<String, Float>` field of the row: a bin's quantity on each resource, by its key. */
140
+ export type ScheduleDictFloatField<R extends StructType> = FieldsOf<R, DictType<StringType, FloatType>>;
141
+ /** A `Set<String>` field of the row: the proposals a period dismissed. */
142
+ export type ScheduleSetStringField<R extends StructType> = FieldsOf<R, SetType<StringType>>;
143
+ /** The cases of a variant, by name. */
144
+ export type ScheduleCaseOf<T> = T extends VariantType<infer C> ? keyof C & string : never;
114
145
  /**
115
146
  * A field of the row that names a resource: a String or an `Option<String>`,
116
147
  * holding a key of one resource kind; or a variant of String cases, or an
@@ -201,11 +232,24 @@ export interface ScheduleQuantity<R extends StructType> {
201
232
  }
202
233
  /** Whether two events of a kind on one resource at once are a conflict: `warn` (the default) or `allow`. */
203
234
  export type ScheduleOverlapsLiteral = "warn" | "allow";
235
+ /**
236
+ * The bin's parts, the Allocation's: the field holding its quantity on each
237
+ * resource, by key, and the resource slot those keys are of.
238
+ *
239
+ * @typeParam R - The row type
240
+ */
241
+ export interface ScheduleParts<R extends StructType> {
242
+ /** The `Dict<String, Float>` field: the quantity on each resource, by its key; empty while the bin is linked to none. */
243
+ field: ScheduleDictFloatField<R>;
244
+ /** The resource slot its keys are of: the builder's `resources` slot of the resources a bin is allocated to (`kilns`). */
245
+ of: string;
246
+ }
204
247
  /**
205
248
  * What every event kind declares, whether its events run from a start to an
206
249
  * end or are each one instant (`Calendar Spec.md` §4.1, `Plan Builder Spec.md`
207
- * §4.1). An option a builder has no use for is accepted and ignored there:
208
- * the Calendar takes no notice of Plan's.
250
+ * §4.1, `Builder Interfaces Spec.md` §4.1). An option a builder has no use
251
+ * for is accepted and ignored there: the Calendar takes no notice of Plan's,
252
+ * the Roster's or the Allocation's.
209
253
  *
210
254
  * @typeParam K - The record's key type
211
255
  * @typeParam R - Its row type
@@ -217,8 +261,11 @@ export interface ScheduleEventsBase<K extends EastType, R extends StructType, F
217
261
  name: string;
218
262
  /** Its Font Awesome icon. */
219
263
  icon: string;
220
- /** The String field an event's title is: drawn on its block, edited in the inspector. */
221
- title: ScheduleStringField<R>;
264
+ /**
265
+ * The String field an event's title is: drawn on its block, edited in the inspector. The Calendar and Plan, which
266
+ * draw it, require it; the Roster and the Allocation draw a duty and a bin by their roles, and take no notice of it.
267
+ */
268
+ title?: ScheduleStringField<R>;
222
269
  /** The resource an event is on: a key field of one kind (`of: "people"`), or a variant field with a kind per case. Omitted, no resource. */
223
270
  resource?: {
224
271
  field: F;
@@ -228,14 +275,6 @@ export interface ScheduleEventsBase<K extends EastType, R extends StructType, F
228
275
  status?: ScheduleStatusConfig<R, SF>;
229
276
  /** Hints for the inspector's form over the other fields (`Schedule.field`, east-ui's `Fields`). */
230
277
  fields?: FieldHints<R["fields"]>;
231
- /**
232
- * Author-owned narrowing over the typed row and its original key, usually
233
- * `Slice.apply.matches` over an author-bound Slice. Runs after drafts are
234
- * overlaid on a record or index window, for scheduled rows and backlog.
235
- * Does not change by-key inspector reads, editing baselines or Save.
236
- * On a paged record this filters the requested window, not all history.
237
- */
238
- filter?: (row: ExprType<R>, key: ExprType<K>) => SubtypeExprOrValue<BooleanType>;
239
278
  /** The app's check on a drafted event: a refusal holds Save, naming the event and the field. */
240
279
  ready?: (row: ExprType<R>, key: ExprType<K>) => SubtypeExprOrValue<typeof EditingReadinessType>;
241
280
  /**
@@ -247,14 +286,13 @@ export interface ScheduleEventsBase<K extends EastType, R extends StructType, F
247
286
  * kind given it reads one event by its key through `entries`.
248
287
  */
249
288
  window?: unknown;
250
- /** Indexed record narrowing. Uses an interval index, with original-key entries beside it. */
251
- slice?: ScheduleRecordSlice<K, R>;
252
289
  /**
253
290
  * A paged read of the record's own entries (`Data.bindPaged(record)`),
254
- * beside `window` (#1199): one event read by its key — its key sought, then
255
- * a one-row page — for the inspector, and for the editing session, whose
256
- * base is the record's revision: a draft's original, a Save's entries read
257
- * back, a conflict's entries named. Required with `window` or record `slice`.
291
+ * beside `window` (#1199) or the kind's source of its builder's slice
292
+ * (#1343): one event read by its key — its key sought, then a one-row page —
293
+ * for the inspector, and for the editing session, whose base is the record's
294
+ * revision: a draft's original, a Save's entries read back, a conflict's
295
+ * entries named. Required with either.
258
296
  */
259
297
  entries?: unknown;
260
298
  /** Plan: the `EventStateType` field whose lifecycle its events wear. Omitted, confirmed. */
@@ -265,6 +303,24 @@ export interface ScheduleEventsBase<K extends EastType, R extends StructType, F
265
303
  lane?: ScheduleStringField<R>;
266
304
  /** Whether two events of the kind on one resource at once are a conflict (`"warn"`, the default) or run in parallel (`"allow"`). */
267
305
  overlaps?: ScheduleOverlapsLiteral;
306
+ /** The Roster: the String field naming a duty's shift, a key of its `shifts`. The Roster requires it. */
307
+ shift?: ScheduleStringField<R>;
308
+ /** The Roster: the String field naming the group a duty is rostered in, a key of its `groups`. The Roster requires it. */
309
+ group?: ScheduleStringField<R>;
310
+ /** The Roster: the String field naming the position a duty holds, a key of its `positions`, which its lead rule reads. Omitted, no positions and no lead rule. */
311
+ position?: ScheduleStringField<R>;
312
+ /** The Roster: the `Option<String>` field naming a duty's one skill or task, a key of its `activities`. */
313
+ activity?: ScheduleOptionStringField<R>;
314
+ /** The Roster: the hours a duty counts for coverage, skill hours, contract hours, rest and pay. Omitted, its length. */
315
+ hours?: (row: ExprType<R>, key: ExprType<K>) => SubtypeExprOrValue<FloatType>;
316
+ /** The Allocation: the `Option<String>` field naming the arrival a bin books, a key of its `arrivals`; `none` is a reservation. The Allocation requires it. */
317
+ arrival?: ScheduleOptionStringField<R>;
318
+ /** The Allocation: a bin's quantity on each resource, and the resource slot it is on. The Allocation requires it. */
319
+ parts?: ScheduleParts<R>;
320
+ /** The Allocation: the TimeStep field holding how long a resource holds a bin, kept from booking. The Allocation requires it. */
321
+ hold?: ScheduleTimeStepField<R>;
322
+ /** The Allocation: the `Option<String>` field naming what a bin goes with on a resource, kept from booking. Omitted, kind mates don't score. */
323
+ kind?: ScheduleOptionStringField<R>;
268
324
  /**
269
325
  * Plan and Calendar: the kind's own inspector for one event (PB60) — an East function
270
326
  * over the event's row and a writer of the edited row,
@@ -320,8 +376,11 @@ export interface ScheduleInstantEventsConfig<K extends EastType, R extends Struc
320
376
  at: A;
321
377
  /** Plan: how it draws — marks (the default) or tiles in bucket cells. */
322
378
  draw?: "buckets" | "marks";
323
- /** The presets the library lists; an instant has no duration. */
324
- templates?: readonly ScheduleInstantTemplate<ScheduleValuesOf<R, A | F>>[];
379
+ /**
380
+ * The presets the library lists — a templates record's (`Schedule.templates(rows, { name, values, source })`,
381
+ * #1344); an instant has no duration, so the templates give none.
382
+ */
383
+ templates?: readonly ScheduleInstantTemplate<ScheduleValuesOf<R, A | F>>[] | ScheduleTemplates<ScheduleValuesOf<R, A | F>>;
325
384
  }
326
385
  /**
327
386
  * An event kind, declared: what a builder's `events` takes, by slot.
@@ -340,27 +399,91 @@ export interface ScheduleEventKind<K extends EastType, R extends EastType> {
340
399
  readonly name: string;
341
400
  /** Its Font Awesome icon: what each of its elements on a Plan wears (#1192). */
342
401
  readonly icon: string;
402
+ /** The String field its events' titles are; `undefined` for a kind with none, which the Calendar and Plan refuse (#1367). */
403
+ readonly title: string | undefined;
343
404
  /** The resource kinds its events may be on, by slot name: `resource.of`'s. */
344
405
  readonly takes: readonly string[];
345
406
  /** Plan: how it draws — bars, tiles, chips or marks; a resource draws a row for each way its kinds draw (#1192). */
346
407
  readonly draw: PlanDrawLiteral;
408
+ /** The builder's Slice source its templates list names, whose shown keys filter its templates (#1343); `undefined` for none. */
409
+ readonly templatesSource: string | undefined;
410
+ /**
411
+ * How its templates are declared: none, a list written in the code, or a
412
+ * record's (`Schedule.templates`) — what a builder checks (#1343): every
413
+ * templates list is a record of its own, naming its source of the slice.
414
+ */
415
+ readonly templatesList: "none" | "code" | "record";
416
+ /**
417
+ * The Roster's and the Allocation's roles it maps, by their options' names
418
+ * (`shift`, `position`, `arrival`, …): what a builder checks its own props
419
+ * against at build (#1368) — the Roster refuses `positions` beside a kind
420
+ * with no `position`.
421
+ */
422
+ readonly roles: readonly string[];
423
+ /**
424
+ * The resource slot its bins' parts are on, `parts.of` (#1371): what the
425
+ * Allocation checks its `resources` against and names its slice's sources
426
+ * by at build, as `takes` is `resource.of`'s; `undefined` for a kind with
427
+ * no `parts`.
428
+ */
429
+ readonly partsOf: string | undefined;
430
+ /**
431
+ * The fields of its row none of the Allocation's roles maps, a struct
432
+ * (#1371, B13): what an arrival's `values` gives a bin booked from it,
433
+ * each field its type's default without them. The Allocation holds its
434
+ * arrivals' `values` to it at build, and `buildAllocation` carries it as
435
+ * the kind's `values`.
436
+ */
437
+ readonly allocationValues: StructType;
347
438
  /**
348
439
  * The kind on the wire, under its slot: the Calendar's, which takes no
349
440
  * notice of Plan's options.
350
441
  *
351
442
  * @param slot - The builder's slot name for it
443
+ * @param part - Its source of the builder's `Slice.bindRecords`, the source named after its slot, when the slice has one (#1343): its typed handle, bound once in the builder's payload (`recordSources(…).bind($)`, #1356)
352
444
  * @returns The kind, closed
445
+ * @throws {Error} When the kind is given a source beside `window` or `backlogWindow`, or with no `entries`, or `entries` with neither
353
446
  */
354
- build(slot: string): ExprType<ScheduleKindType>;
447
+ build(slot: string, part?: ScheduleKindPart): ExprType<ScheduleKindType>;
355
448
  /**
356
449
  * The kind on the wire as Plan's builder takes it, under its slot: the
357
450
  * Calendar's kind with how it draws, its roles, and its events as Plan
358
451
  * draws them.
359
452
  *
360
453
  * @param slot - The builder's slot name for it
454
+ * @param part - Its source of the builder's `Slice.bindRecords`, when the slice has one
455
+ * @returns The kind, closed
456
+ * @throws {Error} As `build` does
457
+ */
458
+ buildPlan(slot: string, part?: ScheduleKindPart): ExprType<PlanEventKindType>;
459
+ /**
460
+ * The kind on the wire as the Roster takes it, under its slot (#1367): the
461
+ * Calendar's kind, its form over the fields none of the Roster's roles
462
+ * writes, with the stored rows of a period and a duty's roles read from its
463
+ * row and written into it.
464
+ *
465
+ * @param slot - The builder's slot name for it
466
+ * @param part - Its source of the builder's `Slice.bindRecords`, when the slice has one
467
+ * @returns The kind, closed
468
+ * @throws {Error} For an instant kind (`at`), times that are Options, a record keyed by anything but String, a kind
469
+ * with no `shift`, `group` or `resource`, and two of the Roster's roles naming one field; and as `build` does
470
+ */
471
+ buildRoster(slot: string, part?: ScheduleKindPart): ExprType<ScheduleRosterKindType>;
472
+ /**
473
+ * The kind on the wire as the Allocation takes it, under its slot (#1367):
474
+ * the Calendar's kind, its form over the fields none of the Allocation's
475
+ * roles writes, with the stored rows of a period, a bin's roles read from
476
+ * its row and written into it, and a new bin from its roles and an
477
+ * arrival's values.
478
+ *
479
+ * @param slot - The builder's slot name for it
480
+ * @param part - Its source of the builder's `Slice.bindRecords`, when the slice has one
361
481
  * @returns The kind, closed
482
+ * @throws {Error} For a span kind (`start` and `end`), a record keyed by anything but String, a kind with no
483
+ * `resource`, `arrival`, `quantity`, `parts` or `hold`, a lane that is not a String key of one kind, and two of the
484
+ * Allocation's roles naming one field; and as `build` does
362
485
  */
363
- buildPlan(slot: string): ExprType<PlanEventKindType>;
486
+ buildAllocation(slot: string, part?: ScheduleKindPart): ExprType<ScheduleAllocationKindType>;
364
487
  }
365
488
  /**
366
489
  * Declares an event kind (see the module docs).
@@ -379,13 +502,18 @@ export interface ScheduleEventKind<K extends EastType, R extends EastType> {
379
502
  * an `at` that is not a DateTime field, or given with `start` and `end`; a `resource` field that holds no resource key, an
380
503
  * `of` that is not a slot name for a key field, or whose cases are not the variant's; a `status` that is not a variant;
381
504
  * `backlog` without Option times; a template key repeated, a span kind's template without a duration, or values of
382
- * another type; `fields` naming a field the row does not have, or hinting one it cannot; a window over another index,
505
+ * another type; a templates record (`Schedule.templates`) whose templates give no duration on a span kind, or give one
506
+ * on an instant kind (#1344); `fields` naming a field the row does not have, or hinting one it cannot; a window over another index,
383
507
  * a `backlogWindow` on plain times, a `window` over Option times without a `backlogWindow`, a `window` without
384
- * `entries`, `entries` without a `window` or record `slice`, and `entries` that is not a paged read of the record's own entries naming
385
- * its snapshot (#1199) — a window that reads no rows (`join` not true) is refused as it is read, naming `join: true`;
508
+ * `entries`, and `entries` that is not a paged read of the record's own entries naming its snapshot (#1199) — a window
509
+ * that reads no rows (`join` not true) is refused as it is read, naming `join: true`; a `slice` or a `filter`, which
510
+ * move to the builder's `Slice.bindRecords` (#1343);
386
511
  * a `draw` that is not a way to draw, or draws two ends of an instant; a `state`, `quantity` or `lane` field of
387
- * another type; a `review`, which is removed (#1260); an `overlaps` that is neither `"warn"` nor `"allow"`; and an
388
- * `inspector` that is not an East function `(row, update) => UIComponentType` over the row
512
+ * another type; a `review`, which is removed (#1260); an `overlaps` that is neither `"warn"` nor `"allow"`; an
513
+ * `inspector` that is not an East function `(row, update) => UIComponentType` over the row; and a Roster role (`shift`,
514
+ * `group`, `position`, `activity`) or an Allocation role (`arrival`, `parts.field`, `hold`, `kind`) naming a field of
515
+ * another type, a `parts.of` naming no slot, an `hours` accessor returning no Float, or roles of both builders on one
516
+ * kind (#1367)
389
517
  * @example
390
518
  * ```tsx
391
519
  * import { DateTimeType, DictType, East, NullType, OptionType, StringType, StructType, VariantType, variant } from "@elaraai/east";
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/schedule/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/schedule/events.ts"],"names":[],"mappings":"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"}