@elaraai/e3-ui 1.0.94 → 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
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/schedule/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/schedule/events.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,10 @@
14
14
  * bound with its patch mutation, closed behind East functions over beast2
15
15
  * bytes so a builder's payload is one type whatever the records hold.
16
16
  * Plan's options sit beside the Calendar's (#1190): how a kind draws, an
17
- * instant kind's `at`, and its roles' fields.
17
+ * instant kind's `at`, and its roles' fields; and the Roster's and the
18
+ * Allocation's roles beside them (#1367).
19
+ * - `Schedule.periods(record, config)`: what a builder publishes, the app's
20
+ * own record of periods, its status a variant field of the app's (#1367).
18
21
  * - `Schedule.field`: the inspector's typed form, east-ui's `Fields`.
19
22
  * - `Schedule.patch`: what a library card dropped on an event sets, a patch
20
23
  * over an event kind's row type (#1195).
@@ -35,12 +38,14 @@ import { scheduleDays, scheduleUnscheduled } from "./days.js";
35
38
  import { scheduleTemplates } from "./templates.js";
36
39
  import { scheduleEvents, type ScheduleEventKind } from "./events.js";
37
40
  import { SchedulePatchTypeFor, schedulePatch } from "./patch.js";
41
+ import { schedulePeriods } from "./periods.js";
38
42
  import { scheduleResources, type ScheduleResourceKind } from "./resources.js";
39
- import { PlanEventItemType, PlanEventKindType, PlanEventReadType, PlanEventRolesType, PlanResourceRowType, PlanResourcesType, ScheduleCandidateType, ScheduleClockType, ScheduleDraftsType, ScheduleDurationType, ScheduleEventRefType, ScheduleGestureType, ScheduleItemType, ScheduleKindType, ScheduleOverlapsType, ScheduleReadyEntryType, ScheduleResourceRefType, ScheduleResourceRowType, ScheduleResourcesType, ScheduleStatusCasesFor, ScheduleStatusType, ScheduleTemplateType, ScheduleWriteType } from "./types.js";
43
+ import { PlanEventItemType, PlanEventKindType, PlanEventReadType, PlanEventRolesType, PlanResourceRowType, PlanResourcesType, ScheduleAllocationEntryType, ScheduleAllocationKindType, ScheduleAllocationRolesType, ScheduleCandidateType, ScheduleClockType, ScheduleDraftsType, ScheduleDurationType, ScheduleEventRefType, ScheduleFitType, ScheduleGestureType, ScheduleItemType, ScheduleKindType, ScheduleOverlapsType, SchedulePeriodStatusType, SchedulePeriodsKindType, ScheduleReadyEntryType, ScheduleResourceRefType, ScheduleResourceRowType, ScheduleRefusalType, ScheduleResourcesType, ScheduleRosterEntryType, ScheduleRosterKindType, ScheduleRosterRolesType, ScheduleStatusCasesFor, ScheduleStatusType, ScheduleTemplateType, ScheduleWriteType } from "./types.js";
40
44
  export * from "./types.js";
41
45
  export { scheduleTemplates, type ScheduleTemplates, type ScheduleTemplatesConfig } from "./templates.js";
42
- export { scheduleEvents, type ScheduleAtField, type ScheduleBacklog, type ScheduleEventKind, type ScheduleEventsBase, type ScheduleEventsConfig, type ScheduleFloatField, type ScheduleInstantEventsConfig, type ScheduleInstantField, type ScheduleInstantTemplate, type ScheduleOverlapsLiteral, type ScheduleQuantity, type ScheduleRecordHandle, type ScheduleResourceField, type ScheduleResourceOf, type ScheduleStateField, type ScheduleStatusCasesOf, type ScheduleStatusConfig, type ScheduleStatusField, type ScheduleStringField, type ScheduleTemplate, type ScheduleValuesOf, } from "./events.js";
43
- export { SCHEDULE_DEF, scheduleResources, type ScheduleResourceKind, type ScheduleResourcesConfig } from "./resources.js";
46
+ export { scheduleEvents, type ScheduleAtField, type ScheduleBacklog, type ScheduleCaseOf, type ScheduleDictFloatField, type ScheduleEventKind, type ScheduleEventsBase, type ScheduleEventsConfig, type ScheduleFloatField, type ScheduleInstantEventsConfig, type ScheduleIntegerField, type ScheduleInstantField, type ScheduleInstantTemplate, type ScheduleOptionStringField, type ScheduleOverlapsLiteral, type ScheduleParts, type ScheduleQuantity, type ScheduleRecordHandle, type ScheduleResourceField, type ScheduleResourceOf, type ScheduleSetStringField, type ScheduleStateField, type ScheduleStatusCasesOf, type ScheduleStatusConfig, type ScheduleStatusField, type ScheduleStringField, type ScheduleTemplate, type ScheduleTimeStepField, type ScheduleValuesOf, } from "./events.js";
47
+ export { schedulePeriods, type SchedulePeriods, type SchedulePeriodsConfig } from "./periods.js";
48
+ export { SCHEDULE_DEF, scheduleResources, type ScheduleResourceAccessor, type ScheduleResourceAccessors, type ScheduleResourceKind, type ScheduleResourcesConfig, } from "./resources.js";
44
49
  export { scheduleDays, scheduleUnscheduled } from "./days.js";
45
50
  export { SchedulePatchTypeFor, schedulePatch, type SchedulePatchInput, type SchedulePatchOf } from "./patch.js";
46
51
  /**
@@ -55,6 +60,16 @@ export { SchedulePatchTypeFor, schedulePatch, type SchedulePatchInput, type Sche
55
60
  * @throws {Error} Naming the slot and the remedy
56
61
  */
57
62
  export declare function scheduleCheck(resources: Readonly<Record<string, ScheduleResourceKind<EastType, EastType>>>, events: Readonly<Record<string, ScheduleEventKind<EastType, EastType>>>, builder: string): void;
63
+ /**
64
+ * The check a builder that draws each event's title makes (#1367): every
65
+ * event kind names its `title`, which `Schedule.events` takes as optional for
66
+ * the builders that draw none.
67
+ *
68
+ * @param events - The builder's event kinds, by slot
69
+ * @param builder - The builder, for the refusal (`Calendar`, `Plan`)
70
+ * @throws {Error} Naming the slot of a kind with no title
71
+ */
72
+ export declare function scheduleTitled(events: Readonly<Record<string, ScheduleEventKind<EastType, EastType>>>, builder: string): void;
58
73
  /**
59
74
  * The type of the {@link Schedule} namespace — declared explicitly so the
60
75
  * declaration emit stays within TypeScript's serialization limit.
@@ -62,6 +77,8 @@ export declare function scheduleCheck(resources: Readonly<Record<string, Schedul
62
77
  export interface ScheduleNamespace {
63
78
  /** One event kind: a record of its own, bound with its patch mutation. */
64
79
  events: typeof scheduleEvents;
80
+ /** What a builder publishes: the app's record of periods, bound with its patch mutation, its status a field of the app's. */
81
+ periods: typeof schedulePeriods;
65
82
  /** Reads typed templates from bound keyed data. */
66
83
  templates: typeof scheduleTemplates;
67
84
  /** One resource kind, read from keyed rows. */
@@ -92,6 +109,10 @@ export interface ScheduleNamespace {
92
109
  Candidate: typeof ScheduleCandidateType;
93
110
  /** `Patch(R)`: a patch over an event kind's row type, every field an `Option` — what `Schedule.patch` builds. */
94
111
  Patch: typeof SchedulePatchTypeFor;
112
+ /** One verdict of a fit: it fits, with its score and reason, or it is refused — the Allocation's and the Roster's. */
113
+ Fit: typeof ScheduleFitType;
114
+ /** Why something does not fit, and what a run of refusals gathers into its label. */
115
+ Refusal: typeof ScheduleRefusalType;
95
116
  };
96
117
  }
97
118
  /**
@@ -140,6 +161,22 @@ export interface ScheduleInternalNamespace extends Omit<ScheduleNamespace, "Type
140
161
  PlanResources: typeof PlanResourcesType;
141
162
  /** One resource as Plan's builder takes it. */
142
163
  PlanResourceRow: typeof PlanResourceRowType;
164
+ /** A duty's roles, as the Roster reads them from the app's row (#1367). */
165
+ RosterRoles: typeof ScheduleRosterRolesType;
166
+ /** One stored duty: its roles and its row. */
167
+ RosterEntry: typeof ScheduleRosterEntryType;
168
+ /** One event kind as the Roster takes it. */
169
+ RosterKind: typeof ScheduleRosterKindType;
170
+ /** A bin's roles, as the Allocation reads them from the app's row (#1367). */
171
+ AllocationRoles: typeof ScheduleAllocationRolesType;
172
+ /** One stored bin: its roles and its row. */
173
+ AllocationEntry: typeof ScheduleAllocationEntryType;
174
+ /** One event kind as the Allocation takes it. */
175
+ AllocationKind: typeof ScheduleAllocationKindType;
176
+ /** A period's status, as a builder reads it from the app's status field (#1367). */
177
+ PeriodStatus: typeof SchedulePeriodStatusType;
178
+ /** What a builder publishes, closed. */
179
+ PeriodsKind: typeof SchedulePeriodsKindType;
143
180
  };
144
181
  }
145
182
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schedule/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAsC,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAU,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAgB,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EACH,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,iBAAiB,EACnH,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,mBAAmB,EAC7H,gBAAgB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,uBAAuB,EAClI,qBAAqB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,iBAAiB,EAC7G,MAAM,YAAY,CAAC;AAEpB,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,KAAK,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzG,OAAO,EACH,cAAc,EACd,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,KAAK,oBAAoB,EACtH,KAAK,kBAAkB,EAAE,KAAK,2BAA2B,EAAE,KAAK,oBAAoB,EAAE,KAAK,uBAAuB,EAClH,KAAK,uBAAuB,EAAE,KAAK,gBAAgB,EAAE,KAAK,oBAAoB,EAAE,KAAK,qBAAqB,EAAE,KAAK,kBAAkB,EACnI,KAAK,kBAAkB,EAAE,KAAK,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,KAAK,mBAAmB,EAAE,KAAK,mBAAmB,EAClI,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,GAC/C,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,KAAK,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC1H,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAEhH;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CACzB,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAC7E,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EACvE,OAAO,EAAE,MAAM,GAChB,IAAI,CAwBN;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAC9B,0EAA0E;IAC1E,MAAM,EAAE,OAAO,cAAc,CAAC;IAC9B,mDAAmD;IACnD,SAAS,EAAE,OAAO,iBAAiB,CAAC;IACpC,+CAA+C;IAC/C,SAAS,EAAE,OAAO,iBAAiB,CAAC;IACpC,sDAAsD;IACtD,KAAK,EAAE,eAAe,CAAC;IACvB,oHAAoH;IACpH,KAAK,EAAE,OAAO,aAAa,CAAC;IAC5B,kEAAkE;IAClE,IAAI,EAAE,OAAO,YAAY,CAAC;IAC1B,kFAAkF;IAClF,WAAW,EAAE,OAAO,mBAAmB,CAAC;IACxC,4BAA4B;IAC5B,KAAK,EAAE;QACH,2DAA2D;QAC3D,WAAW,EAAE,OAAO,uBAAuB,CAAC;QAC5C,gEAAgE;QAChE,QAAQ,EAAE,OAAO,oBAAoB,CAAC;QACtC,sCAAsC;QACtC,MAAM,EAAE,OAAO,kBAAkB,CAAC;QAClC,iEAAiE;QACjE,WAAW,EAAE,OAAO,sBAAsB,CAAC;QAC3C,qBAAqB;QACrB,KAAK,EAAE,OAAO,iBAAiB,CAAC;QAChC,gCAAgC;QAChC,QAAQ,EAAE,OAAO,oBAAoB,CAAC;QACtC,4EAA4E;QAC5E,SAAS,EAAE,OAAO,qBAAqB,CAAC;QACxC,iHAAiH;QACjH,KAAK,EAAE,OAAO,oBAAoB,CAAC;KACtC,CAAC;CACL;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,iBAkBtB,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,yBAA0B,SAAQ,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC;IAC/E,2CAA2C;IAC3C,KAAK,EAAE,OAAO,aAAa,CAAC;IAC5B,iDAAiD;IACjD,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG;QAChC,8BAA8B;QAC9B,IAAI,EAAE,OAAO,gBAAgB,CAAC;QAC9B,4CAA4C;QAC5C,SAAS,EAAE,OAAO,qBAAqB,CAAC;QACxC,8BAA8B;QAC9B,WAAW,EAAE,OAAO,uBAAuB,CAAC;QAC5C,yCAAyC;QACzC,IAAI,EAAE,OAAO,gBAAgB,CAAC;QAC9B,mBAAmB;QACnB,OAAO,EAAE,OAAO,mBAAmB,CAAC;QACpC,2CAA2C;QAC3C,KAAK,EAAE,OAAO,iBAAiB,CAAC;QAChC,oBAAoB;QACpB,QAAQ,EAAE,OAAO,oBAAoB,CAAC;QACtC,4CAA4C;QAC5C,MAAM,EAAE,OAAO,kBAAkB,CAAC;QAClC,8CAA8C;QAC9C,UAAU,EAAE,OAAO,sBAAsB,CAAC;QAC1C,2EAA2E;QAC3E,QAAQ,EAAE,OAAO,oBAAoB,CAAC;QACtC,iDAAiD;QACjD,QAAQ,EAAE,OAAO,iBAAiB,CAAC;QACnC,kCAAkC;QAClC,QAAQ,EAAE,OAAO,iBAAiB,CAAC;QACnC,wEAAwE;QACxE,QAAQ,EAAE,OAAO,iBAAiB,CAAC;QACnC,uDAAuD;QACvD,SAAS,EAAE,OAAO,kBAAkB,CAAC;QACrC,oDAAoD;QACpD,aAAa,EAAE,OAAO,iBAAiB,CAAC;QACxC,+CAA+C;QAC/C,eAAe,EAAE,OAAO,mBAAmB,CAAC;KAC/C,CAAC;CACL;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,yBAsB9B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schedule/index.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,10 @@
14
14
  * bound with its patch mutation, closed behind East functions over beast2
15
15
  * bytes so a builder's payload is one type whatever the records hold.
16
16
  * Plan's options sit beside the Calendar's (#1190): how a kind draws, an
17
- * instant kind's `at`, and its roles' fields.
17
+ * instant kind's `at`, and its roles' fields; and the Roster's and the
18
+ * Allocation's roles beside them (#1367).
19
+ * - `Schedule.periods(record, config)`: what a builder publishes, the app's
20
+ * own record of periods, its status a variant field of the app's (#1367).
18
21
  * - `Schedule.field`: the inspector's typed form, east-ui's `Fields`.
19
22
  * - `Schedule.patch`: what a library card dropped on an event sets, a patch
20
23
  * over an event kind's row type (#1195).
@@ -35,12 +38,14 @@ import { scheduleDays, scheduleUnscheduled } from "./days.js";
35
38
  import { scheduleTemplates } from "./templates.js";
36
39
  import { scheduleEvents } from "./events.js";
37
40
  import { SchedulePatchTypeFor, schedulePatch } from "./patch.js";
41
+ import { schedulePeriods } from "./periods.js";
38
42
  import { SCHEDULE_DEF, scheduleResources } from "./resources.js";
39
- import { PlanEventItemType, PlanEventKindType, PlanEventReadType, PlanEventRolesType, PlanResourceRowType, PlanResourcesType, ScheduleCandidateType, ScheduleClockType, ScheduleDraftsType, ScheduleDurationType, ScheduleEventRefType, ScheduleGestureType, ScheduleItemType, ScheduleKindType, ScheduleOverlapsType, ScheduleReadyEntryType, ScheduleResourceRefType, ScheduleResourceRowType, ScheduleResourcesType, ScheduleStatusCasesFor, ScheduleStatusType, ScheduleTemplateType, ScheduleWriteType, } from "./types.js";
43
+ import { PlanEventItemType, PlanEventKindType, PlanEventReadType, PlanEventRolesType, PlanResourceRowType, PlanResourcesType, ScheduleAllocationEntryType, ScheduleAllocationKindType, ScheduleAllocationRolesType, ScheduleCandidateType, ScheduleClockType, ScheduleDraftsType, ScheduleDurationType, ScheduleEventRefType, ScheduleFitType, ScheduleGestureType, ScheduleItemType, ScheduleKindType, ScheduleOverlapsType, SchedulePeriodStatusType, SchedulePeriodsKindType, ScheduleReadyEntryType, ScheduleResourceRefType, ScheduleResourceRowType, ScheduleRefusalType, ScheduleResourcesType, ScheduleRosterEntryType, ScheduleRosterKindType, ScheduleRosterRolesType, ScheduleStatusCasesFor, ScheduleStatusType, ScheduleTemplateType, ScheduleWriteType, } from "./types.js";
40
44
  export * from "./types.js";
41
45
  export { scheduleTemplates } from "./templates.js";
42
46
  export { scheduleEvents, } from "./events.js";
43
- export { SCHEDULE_DEF, scheduleResources } from "./resources.js";
47
+ export { schedulePeriods } from "./periods.js";
48
+ export { SCHEDULE_DEF, scheduleResources, } from "./resources.js";
44
49
  export { scheduleDays, scheduleUnscheduled } from "./days.js";
45
50
  export { SchedulePatchTypeFor, schedulePatch } from "./patch.js";
46
51
  /**
@@ -79,12 +84,29 @@ export function scheduleCheck(resources, events, builder) {
79
84
  }
80
85
  }
81
86
  }
87
+ /**
88
+ * The check a builder that draws each event's title makes (#1367): every
89
+ * event kind names its `title`, which `Schedule.events` takes as optional for
90
+ * the builders that draw none.
91
+ *
92
+ * @param events - The builder's event kinds, by slot
93
+ * @param builder - The builder, for the refusal (`Calendar`, `Plan`)
94
+ * @throws {Error} Naming the slot of a kind with no title
95
+ */
96
+ export function scheduleTitled(events, builder) {
97
+ for (const [slot, kind] of Object.entries(events)) {
98
+ if (kind.title === undefined) {
99
+ throw new Error(`${builder}: events.${slot} has no title — the ${builder} draws each event's title: give the kind a \`title\`, a String field of its row`);
100
+ }
101
+ }
102
+ }
82
103
  /**
83
104
  * The event and resource kinds the Calendar and Plan's builder share (see the
84
105
  * module docs).
85
106
  */
86
107
  export const Schedule = {
87
108
  events: scheduleEvents,
109
+ periods: schedulePeriods,
88
110
  templates: scheduleTemplates,
89
111
  resources: scheduleResources,
90
112
  field: Fields,
@@ -100,6 +122,8 @@ export const Schedule = {
100
122
  Duration: ScheduleDurationType,
101
123
  Candidate: ScheduleCandidateType,
102
124
  Patch: SchedulePatchTypeFor,
125
+ Fit: ScheduleFitType,
126
+ Refusal: ScheduleRefusalType,
103
127
  },
104
128
  };
105
129
  /**
@@ -127,6 +151,14 @@ export const ScheduleInternal = {
127
151
  PlanRoles: PlanEventRolesType,
128
152
  PlanResources: PlanResourcesType,
129
153
  PlanResourceRow: PlanResourceRowType,
154
+ RosterRoles: ScheduleRosterRolesType,
155
+ RosterEntry: ScheduleRosterEntryType,
156
+ RosterKind: ScheduleRosterKindType,
157
+ AllocationRoles: ScheduleAllocationRolesType,
158
+ AllocationEntry: ScheduleAllocationEntryType,
159
+ AllocationKind: ScheduleAllocationKindType,
160
+ PeriodStatus: SchedulePeriodStatusType,
161
+ PeriodsKind: SchedulePeriodsKindType,
130
162
  },
131
163
  };
132
164
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schedule/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schedule/index.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,10 @@ export declare const ScheduleLibraryCardType: StructType<{
18
18
  }>;
19
19
  /** Type representing {@link ScheduleLibraryCardType}. */
20
20
  export type ScheduleLibraryCardType = typeof ScheduleLibraryCardType;
21
- /** An author's tab, resolved for a renderer. */
21
+ /**
22
+ * An author's tab, resolved for a renderer.
23
+ * @property source - The builder's Slice source whose shown keys filter its cards, each card's key that record's key; none, its cards whole (#1343)
24
+ */
22
25
  export declare const ScheduleAuthorTabType: StructType<{
23
26
  readonly name: StringType;
24
27
  readonly icon: OptionType<StringType>;
@@ -33,6 +36,7 @@ export declare const ScheduleAuthorTabType: StructType<{
33
36
  readonly value: import("@elaraai/east").BlobType;
34
37
  }>>;
35
38
  }>>;
39
+ readonly source: OptionType<StringType>;
36
40
  }>;
37
41
  /** Typed accessors describing one author-defined library card. */
38
42
  export interface ScheduleLibraryTabConfig<K extends EastType, R extends EastType, P extends EastType = EastType> {
@@ -48,6 +52,11 @@ export interface ScheduleLibraryTabConfig<K extends EastType, R extends EastType
48
52
  group?: (row: ExprType<R>, key: ExprType<K>) => SubtypeExprOrValue<StringType>;
49
53
  /** What a card dropped on an event sets: `Schedule.patch(KindRowType, …)`, whose type names the event kind it lands on. */
50
54
  drop?: (row: ExprType<R>, key: ExprType<K>) => ExprType<P>;
55
+ /**
56
+ * The builder's `Slice.bindRecords` source whose shown keys filter this tab's cards (`people`), its rows that record's
57
+ * rows by key; omitted, the tab lists its rows whole. It counts what it shows, and says so when the rail leaves it none.
58
+ */
59
+ source?: string;
51
60
  }
52
61
  /** An author's declared tab, before its accessors are reified. */
53
62
  export interface ScheduleTabDeclaration {
@@ -63,8 +72,9 @@ export interface ScheduleTabDeclaration {
63
72
  * @param tab - The declared tab
64
73
  * @param events - Event kinds by slot
65
74
  * @param owner - The builder's name for diagnostics
75
+ * @param sources - The builder's Slice sources, which the tab's `source` must be one of
66
76
  * @returns The closed author tab
67
- * @throws {Error} When rows are not keyed, or a drop matches zero or several kinds
77
+ * @throws {Error} When rows are not keyed, a drop matches zero or several kinds, or the tab names a source the slice lacks
68
78
  */
69
- export declare function buildScheduleTab(tab: ScheduleTabDeclaration, events: readonly (readonly [string, ScheduleEventKind<EastType, EastType>])[], owner: string): ExprType<typeof ScheduleAuthorTabType>;
79
+ export declare function buildScheduleTab(tab: ScheduleTabDeclaration, events: readonly (readonly [string, ScheduleEventKind<EastType, EastType>])[], owner: string, sources: readonly string[]): ExprType<typeof ScheduleAuthorTabType>;
70
80
  //# sourceMappingURL=library.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../../src/schedule/library.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,sEAAsE;AACtE,OAAO,EACH,SAAS,EAAwB,UAAU,EAAE,UAAU,EAAE,UAAU,EACnE,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAqB,KAAK,kBAAkB,EAC3E,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAIrD,gEAAgE;AAChE,eAAO,MAAM,uBAAuB;;;;;;;;;EAMlC,CAAC;AAEH,yDAAyD;AACzD,MAAM,MAAM,uBAAuB,GAAG,OAAO,uBAAuB,CAAC;AAErE,gDAAgD;AAChD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;EAEhC,CAAC;AAEH,kEAAkE;AAClE,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,QAAQ,GAAG,QAAQ;IAC3G,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uBAAuB;IACvB,KAAK,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC9E,uDAAuD;IACvD,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IAC1F,2CAA2C;IAC3C,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC/E,2HAA2H;IAC3H,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC;CAC9D;AAED,kEAAkE;AAClE,MAAM,WAAW,sBAAsB;IACnC,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,sBAAsB;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,yBAAyB;IACzB,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;CACjE;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,OAAO,qBAAqB,CAAC,CA0ElM"}
1
+ {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../../src/schedule/library.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,sEAAsE;AACtE,OAAO,EACH,SAAS,EAAwB,UAAU,EAAE,UAAU,EAAE,UAAU,EACnE,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAqB,KAAK,kBAAkB,EAC3E,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAKrD,gEAAgE;AAChE,eAAO,MAAM,uBAAuB;;;;;;;;;EAMlC,CAAC;AAEH,yDAAyD;AACzD,MAAM,MAAM,uBAAuB,GAAG,OAAO,uBAAuB,CAAC;AAErE;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAEhC,CAAC;AAEH,kEAAkE;AAClE,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,QAAQ,GAAG,QAAQ;IAC3G,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uBAAuB;IACvB,KAAK,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC9E,uDAAuD;IACvD,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IAC1F,2CAA2C;IAC3C,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC/E,2HAA2H;IAC3H,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3D;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,kEAAkE;AAClE,MAAM,WAAW,sBAAsB;IACnC,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,sBAAsB;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,yBAAyB;IACzB,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;CACjE;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EACtJ,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,qBAAqB,CAAC,CA4EtE"}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  /** Shared author-defined library cards for record-backed builders. */
6
6
  import { ArrayType, DictType, East, Expr, OptionType, StringType, StructType, isTypeEqual, none, printType, some, } from "@elaraai/east";
7
+ import { tabSource } from "../utils/record-sources.js";
7
8
  import { SchedulePatchTypeFor } from "./patch.js";
8
9
  import { ScheduleFieldWriteType } from "./types.js";
9
10
  /** One keyed card, carrying the field writes its drop makes. */
@@ -14,20 +15,25 @@ export const ScheduleLibraryCardType = StructType({
14
15
  group: OptionType(StringType),
15
16
  sets: ArrayType(ScheduleFieldWriteType),
16
17
  });
17
- /** An author's tab, resolved for a renderer. */
18
+ /**
19
+ * An author's tab, resolved for a renderer.
20
+ * @property source - The builder's Slice source whose shown keys filter its cards, each card's key that record's key; none, its cards whole (#1343)
21
+ */
18
22
  export const ScheduleAuthorTabType = StructType({
19
- name: StringType, icon: OptionType(StringType), drop: OptionType(StringType), cards: ArrayType(ScheduleLibraryCardType),
23
+ name: StringType, icon: OptionType(StringType), drop: OptionType(StringType), cards: ArrayType(ScheduleLibraryCardType), source: OptionType(StringType),
20
24
  });
21
25
  /**
22
26
  * Resolves author cards and checks the patch type against the event kinds.
23
27
  * @param tab - The declared tab
24
28
  * @param events - Event kinds by slot
25
29
  * @param owner - The builder's name for diagnostics
30
+ * @param sources - The builder's Slice sources, which the tab's `source` must be one of
26
31
  * @returns The closed author tab
27
- * @throws {Error} When rows are not keyed, or a drop matches zero or several kinds
32
+ * @throws {Error} When rows are not keyed, a drop matches zero or several kinds, or the tab names a source the slice lacks
28
33
  */
29
- export function buildScheduleTab(tab, events, owner) {
34
+ export function buildScheduleTab(tab, events, owner, sources) {
30
35
  const cfg = tab.config;
36
+ const named = tabSource(owner, cfg.name, cfg.source, sources);
31
37
  const where = owner + ': the "' + cfg.name + '" tab';
32
38
  const source = East.value(tab.rows);
33
39
  const type = Expr.type(source);
@@ -97,6 +103,7 @@ export function buildScheduleTab(tab, events, owner) {
97
103
  icon: cfg.icon === undefined ? none : some(cfg.icon),
98
104
  drop: lands === undefined ? none : some(lands),
99
105
  cards,
106
+ source: named,
100
107
  }, ScheduleAuthorTabType);
101
108
  }
102
109
  //# sourceMappingURL=library.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"library.js","sourceRoot":"","sources":["../../../src/schedule/library.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"library.js","sourceRoot":"","sources":["../../../src/schedule/library.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,sEAAsE;AACtE,OAAO,EACH,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,GAE1G,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEpD,gEAAgE;AAChE,MAAM,CAAC,MAAM,uBAAuB,GAAG,UAAU,CAAC;IAC9C,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC;IAC5B,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,SAAS,CAAC,sBAAsB,CAAC;CAC1C,CAAC,CAAC;AAKH;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAC;IAC5C,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,uBAAuB,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC;CAC1J,CAAC,CAAC;AAiCH;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAA2B,EAAE,MAA6E,EAAE,KAAa,EACtJ,OAA0B;IAC1B,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IACvB,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,KAAK,GAAG,SAAS,GAAG,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC;IACrD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAoC,CAAuB,CAAC;IAC1F,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAyB,CAAa,CAAC;IAC9D,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,kGAAkG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjJ,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAe,CAAC;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAiB,CAAC;IAEvC,8EAA8E;IAC9E,IAAI,KAAyB,CAAC;IAC9B,IAAI,MAA0G,CAAC;IAC/G,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QAC9F,MAAM,SAAS,GAAI,IAAI,CAAC,IAAI,CAAC,MAAyB,CAAkB,CAAC,MAAkB,CAAC;QAC5F,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAE,IAAI,CAAC,OAAoB,CAAC,IAAI,KAAK,QAAQ;eAChF,WAAW,CAAC,SAAS,EAAE,oBAAoB,CAAC,IAAI,CAAC,OAAqB,CAAC,CAAC,CAAC,CAAC;QACjF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,2GAA2G;gBAC/H,oDAAoD,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,GAAG,qBAAqB,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;QAC/H,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,+CAA+C,MAAM,CAAC,MAAM,qBAAqB;gBACrG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;QAC5H,CAAC;QACD,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC;QACtB,yFAAyF;QACzF,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAE,SAAwB,CAAC,MAAkC,CAAC,CAAC;QACzF,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YAC1F,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAY,EAAE,GAAY,CAAC,CAA8D,CAAC;YACxH,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAC7D,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;gBACxB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAE,EAAE;oBAClB,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAA2B,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBACpI,CAAC,CAAC;YACP,CAAC;YACD,OAAO,OAAO,CAAC;QACnB,CAAC,CAAsG,CAAC;IAC5G,CAAC;IAED,iEAAiE;IACjE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,QAAQ;QAClC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC;QAC3D,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,uBAAuB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACxF,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,IAAiE,CAAC,CAAC;QAC3F,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC1D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAY,EAAE,GAAY,CAAC,CAAC,CAAC;QACvD,CAAC;QACD,OAAO;YACH,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC;YACjB,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC;YAC1B,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;YAC5F,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;YACrG,IAAI;SACP,CAAC;IACN,CAAC,CAAC,CAAC;IACH,MAAM,KAAK,GAAI,MAA4D,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QAChG,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,KAAK,CAAC;QACd,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;QACpD,IAAI,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9C,KAAK;QACL,MAAM,EAAE,KAAK;KAChB,EAAE,qBAAqB,CAAC,CAAC;AAC9B,CAAC"}