@elaraai/e3-ui 1.0.86 → 1.0.88

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 (385) hide show
  1. package/dist/src/bind/data-indexed.d.ts +159 -0
  2. package/dist/src/bind/data-indexed.d.ts.map +1 -0
  3. package/dist/src/bind/data-indexed.js +105 -0
  4. package/dist/src/bind/data-indexed.js.map +1 -0
  5. package/dist/src/bind/data.d.ts +5 -3
  6. package/dist/src/bind/data.d.ts.map +1 -1
  7. package/dist/src/bind/data.js +6 -0
  8. package/dist/src/bind/data.js.map +1 -1
  9. package/dist/src/bind/record.d.ts +34 -23
  10. package/dist/src/bind/record.d.ts.map +1 -1
  11. package/dist/src/bind/record.js +46 -19
  12. package/dist/src/bind/record.js.map +1 -1
  13. package/dist/src/calendar/index.d.ts +2923 -0
  14. package/dist/src/calendar/index.d.ts.map +1 -0
  15. package/dist/src/calendar/index.js +135 -0
  16. package/dist/src/calendar/index.js.map +1 -0
  17. package/dist/src/decision/queue.d.ts +3 -3
  18. package/dist/src/decision/queue.d.ts.map +1 -1
  19. package/dist/src/decision/queue.js +2 -2
  20. package/dist/src/decision/queue.js.map +1 -1
  21. package/dist/src/decision/types.d.ts +4 -0
  22. package/dist/src/decision/types.d.ts.map +1 -1
  23. package/dist/src/decision/types.js +4 -0
  24. package/dist/src/decision/types.js.map +1 -1
  25. package/dist/src/flowchart/canvas.d.ts +114 -0
  26. package/dist/src/flowchart/canvas.d.ts.map +1 -0
  27. package/dist/src/flowchart/canvas.js +84 -0
  28. package/dist/src/flowchart/canvas.js.map +1 -0
  29. package/dist/src/flowchart/flowchart.d.ts +79 -0
  30. package/dist/src/flowchart/flowchart.d.ts.map +1 -0
  31. package/dist/src/flowchart/flowchart.js +9 -0
  32. package/dist/src/flowchart/flowchart.js.map +1 -0
  33. package/dist/src/flowchart/index.d.ts +305 -0
  34. package/dist/src/flowchart/index.d.ts.map +1 -0
  35. package/dist/src/flowchart/index.js +267 -0
  36. package/dist/src/flowchart/index.js.map +1 -0
  37. package/dist/src/flowchart/library.d.ts +720 -0
  38. package/dist/src/flowchart/library.d.ts.map +1 -0
  39. package/dist/src/flowchart/library.js +611 -0
  40. package/dist/src/flowchart/library.js.map +1 -0
  41. package/dist/src/flowchart/over.d.ts +234 -0
  42. package/dist/src/flowchart/over.d.ts.map +1 -0
  43. package/dist/src/flowchart/over.js +220 -0
  44. package/dist/src/flowchart/over.js.map +1 -0
  45. package/dist/src/flowchart/patch.d.ts +64 -0
  46. package/dist/src/flowchart/patch.d.ts.map +1 -0
  47. package/dist/src/flowchart/patch.js +67 -0
  48. package/dist/src/flowchart/patch.js.map +1 -0
  49. package/dist/src/flowchart/payload.d.ts +8220 -0
  50. package/dist/src/flowchart/payload.d.ts.map +1 -0
  51. package/dist/src/flowchart/payload.js +521 -0
  52. package/dist/src/flowchart/payload.js.map +1 -0
  53. package/dist/src/flowchart/types.d.ts +393 -0
  54. package/dist/src/flowchart/types.d.ts.map +1 -0
  55. package/dist/src/flowchart/types.js +216 -0
  56. package/dist/src/flowchart/types.js.map +1 -0
  57. package/dist/src/flowchart/values.d.ts +267 -0
  58. package/dist/src/flowchart/values.d.ts.map +1 -0
  59. package/dist/src/flowchart/values.js +216 -0
  60. package/dist/src/flowchart/values.js.map +1 -0
  61. package/dist/src/flowchart/window.d.ts +521 -0
  62. package/dist/src/flowchart/window.d.ts.map +1 -0
  63. package/dist/src/flowchart/window.js +69 -0
  64. package/dist/src/flowchart/window.js.map +1 -0
  65. package/dist/src/index.d.ts +25 -1
  66. package/dist/src/index.d.ts.map +1 -1
  67. package/dist/src/index.js +48 -1
  68. package/dist/src/index.js.map +1 -1
  69. package/dist/src/internal.d.ts +35 -3
  70. package/dist/src/internal.d.ts.map +1 -1
  71. package/dist/src/internal.js +72 -3
  72. package/dist/src/internal.js.map +1 -1
  73. package/dist/src/plan/assemble.d.ts +2224 -0
  74. package/dist/src/plan/assemble.d.ts.map +1 -0
  75. package/dist/src/plan/assemble.js +210 -0
  76. package/dist/src/plan/assemble.js.map +1 -0
  77. package/dist/src/plan/builders.d.ts +790 -0
  78. package/dist/src/plan/builders.d.ts.map +1 -0
  79. package/dist/src/plan/builders.js +749 -0
  80. package/dist/src/plan/builders.js.map +1 -0
  81. package/dist/src/plan/event-rows.d.ts +2565 -0
  82. package/dist/src/plan/event-rows.d.ts.map +1 -0
  83. package/dist/src/plan/event-rows.js +689 -0
  84. package/dist/src/plan/event-rows.js.map +1 -0
  85. package/dist/src/plan/factories.d.ts +458 -0
  86. package/dist/src/plan/factories.d.ts.map +1 -0
  87. package/dist/src/plan/factories.js +484 -0
  88. package/dist/src/plan/factories.js.map +1 -0
  89. package/dist/src/plan/index.d.ts +672 -0
  90. package/dist/src/plan/index.d.ts.map +1 -0
  91. package/dist/src/plan/index.js +532 -0
  92. package/dist/src/plan/index.js.map +1 -0
  93. package/dist/src/plan/ir.d.ts +2594 -0
  94. package/dist/src/plan/ir.d.ts.map +1 -0
  95. package/dist/src/plan/ir.js +78 -0
  96. package/dist/src/plan/ir.js.map +1 -0
  97. package/dist/src/plan/library.d.ts +772 -0
  98. package/dist/src/plan/library.d.ts.map +1 -0
  99. package/dist/src/plan/library.js +424 -0
  100. package/dist/src/plan/library.js.map +1 -0
  101. package/dist/src/plan/ordered-source.d.ts +27 -0
  102. package/dist/src/plan/ordered-source.d.ts.map +1 -0
  103. package/dist/src/plan/ordered-source.js +48 -0
  104. package/dist/src/plan/ordered-source.js.map +1 -0
  105. package/dist/src/plan/over.d.ts +247 -0
  106. package/dist/src/plan/over.d.ts.map +1 -0
  107. package/dist/src/plan/over.js +266 -0
  108. package/dist/src/plan/over.js.map +1 -0
  109. package/dist/src/plan/pick.d.ts +78 -0
  110. package/dist/src/plan/pick.d.ts.map +1 -0
  111. package/dist/src/plan/pick.js +146 -0
  112. package/dist/src/plan/pick.js.map +1 -0
  113. package/dist/src/plan/plan.d.ts +11611 -0
  114. package/dist/src/plan/plan.d.ts.map +1 -0
  115. package/dist/src/plan/plan.js +428 -0
  116. package/dist/src/plan/plan.js.map +1 -0
  117. package/dist/src/plan/refs.d.ts +218 -0
  118. package/dist/src/plan/refs.d.ts.map +1 -0
  119. package/dist/src/plan/refs.js +226 -0
  120. package/dist/src/plan/refs.js.map +1 -0
  121. package/dist/src/plan/root.d.ts +290 -0
  122. package/dist/src/plan/root.d.ts.map +1 -0
  123. package/dist/src/plan/root.js +463 -0
  124. package/dist/src/plan/root.js.map +1 -0
  125. package/dist/src/plan/series.d.ts +13554 -0
  126. package/dist/src/plan/series.d.ts.map +1 -0
  127. package/dist/src/plan/series.js +1921 -0
  128. package/dist/src/plan/series.js.map +1 -0
  129. package/dist/src/plan/types.d.ts +12400 -0
  130. package/dist/src/plan/types.d.ts.map +1 -0
  131. package/dist/src/plan/types.js +1335 -0
  132. package/dist/src/plan/types.js.map +1 -0
  133. package/dist/src/roster/coverage.d.ts +240 -0
  134. package/dist/src/roster/coverage.d.ts.map +1 -0
  135. package/dist/src/roster/coverage.js +109 -0
  136. package/dist/src/roster/coverage.js.map +1 -0
  137. package/dist/src/roster/index.d.ts +4028 -0
  138. package/dist/src/roster/index.d.ts.map +1 -0
  139. package/dist/src/roster/index.js +115 -0
  140. package/dist/src/roster/index.js.map +1 -0
  141. package/dist/src/roster/library.d.ts +106 -0
  142. package/dist/src/roster/library.d.ts.map +1 -0
  143. package/dist/src/roster/library.js +78 -0
  144. package/dist/src/roster/library.js.map +1 -0
  145. package/dist/src/roster/people.d.ts +50 -0
  146. package/dist/src/roster/people.d.ts.map +1 -0
  147. package/dist/src/roster/people.js +32 -0
  148. package/dist/src/roster/people.js.map +1 -0
  149. package/dist/src/roster/rules.d.ts +275 -0
  150. package/dist/src/roster/rules.d.ts.map +1 -0
  151. package/dist/src/roster/rules.js +162 -0
  152. package/dist/src/roster/rules.js.map +1 -0
  153. package/dist/src/roster/types.d.ts +672 -0
  154. package/dist/src/roster/types.d.ts.map +1 -0
  155. package/dist/src/roster/types.js +248 -0
  156. package/dist/src/roster/types.js.map +1 -0
  157. package/dist/src/roster/visibility.d.ts +66 -0
  158. package/dist/src/roster/visibility.d.ts.map +1 -0
  159. package/dist/src/roster/visibility.js +25 -0
  160. package/dist/src/roster/visibility.js.map +1 -0
  161. package/dist/src/schedule/days.d.ts +54 -0
  162. package/dist/src/schedule/days.d.ts.map +1 -0
  163. package/dist/src/schedule/days.js +68 -0
  164. package/dist/src/schedule/days.js.map +1 -0
  165. package/dist/src/schedule/events.d.ts +433 -0
  166. package/dist/src/schedule/events.d.ts.map +1 -0
  167. package/dist/src/schedule/events.js +851 -0
  168. package/dist/src/schedule/events.js.map +1 -0
  169. package/dist/src/schedule/index.d.ts +150 -0
  170. package/dist/src/schedule/index.d.ts.map +1 -0
  171. package/dist/src/schedule/index.js +132 -0
  172. package/dist/src/schedule/index.js.map +1 -0
  173. package/dist/src/schedule/library.d.ts +70 -0
  174. package/dist/src/schedule/library.d.ts.map +1 -0
  175. package/dist/src/schedule/library.js +102 -0
  176. package/dist/src/schedule/library.js.map +1 -0
  177. package/dist/src/schedule/patch.d.ts +74 -0
  178. package/dist/src/schedule/patch.d.ts.map +1 -0
  179. package/dist/src/schedule/patch.js +68 -0
  180. package/dist/src/schedule/patch.js.map +1 -0
  181. package/dist/src/schedule/record-window.d.ts +189 -0
  182. package/dist/src/schedule/record-window.d.ts.map +1 -0
  183. package/dist/src/schedule/record-window.js +95 -0
  184. package/dist/src/schedule/record-window.js.map +1 -0
  185. package/dist/src/schedule/resources.d.ts +165 -0
  186. package/dist/src/schedule/resources.d.ts.map +1 -0
  187. package/dist/src/schedule/resources.js +234 -0
  188. package/dist/src/schedule/resources.js.map +1 -0
  189. package/dist/src/schedule/templates.d.ts +47 -0
  190. package/dist/src/schedule/templates.d.ts.map +1 -0
  191. package/dist/src/schedule/templates.js +61 -0
  192. package/dist/src/schedule/templates.js.map +1 -0
  193. package/dist/src/schedule/types.d.ts +1677 -0
  194. package/dist/src/schedule/types.d.ts.map +1 -0
  195. package/dist/src/schedule/types.js +374 -0
  196. package/dist/src/schedule/types.js.map +1 -0
  197. package/dist/src/schedule/window.d.ts +154 -0
  198. package/dist/src/schedule/window.d.ts.map +1 -0
  199. package/dist/src/schedule/window.js +363 -0
  200. package/dist/src/schedule/window.js.map +1 -0
  201. package/dist/src/sheet/bridge.d.ts +385 -0
  202. package/dist/src/sheet/bridge.d.ts.map +1 -0
  203. package/dist/src/sheet/bridge.js +809 -0
  204. package/dist/src/sheet/bridge.js.map +1 -0
  205. package/dist/src/sheet/columns.d.ts +410 -0
  206. package/dist/src/sheet/columns.d.ts.map +1 -0
  207. package/dist/src/sheet/columns.js +99 -0
  208. package/dist/src/sheet/columns.js.map +1 -0
  209. package/dist/src/sheet/context-bridge.d.ts +48 -0
  210. package/dist/src/sheet/context-bridge.d.ts.map +1 -0
  211. package/dist/src/sheet/context-bridge.js +216 -0
  212. package/dist/src/sheet/context-bridge.js.map +1 -0
  213. package/dist/src/sheet/draft-bridge.d.ts +37 -0
  214. package/dist/src/sheet/draft-bridge.d.ts.map +1 -0
  215. package/dist/src/sheet/draft-bridge.js +153 -0
  216. package/dist/src/sheet/draft-bridge.js.map +1 -0
  217. package/dist/src/sheet/drafts.d.ts +14 -0
  218. package/dist/src/sheet/drafts.d.ts.map +1 -0
  219. package/dist/src/sheet/drafts.js +14 -0
  220. package/dist/src/sheet/drafts.js.map +1 -0
  221. package/dist/src/sheet/editing-bridge.d.ts +40 -0
  222. package/dist/src/sheet/editing-bridge.d.ts.map +1 -0
  223. package/dist/src/sheet/editing-bridge.js +231 -0
  224. package/dist/src/sheet/editing-bridge.js.map +1 -0
  225. package/dist/src/sheet/editing-types.d.ts +268 -0
  226. package/dist/src/sheet/editing-types.d.ts.map +1 -0
  227. package/dist/src/sheet/editing-types.js +34 -0
  228. package/dist/src/sheet/editing-types.js.map +1 -0
  229. package/dist/src/sheet/edits.d.ts +37 -0
  230. package/dist/src/sheet/edits.d.ts.map +1 -0
  231. package/dist/src/sheet/edits.js +31 -0
  232. package/dist/src/sheet/edits.js.map +1 -0
  233. package/dist/src/sheet/fields.d.ts +693 -0
  234. package/dist/src/sheet/fields.d.ts.map +1 -0
  235. package/dist/src/sheet/fields.js +280 -0
  236. package/dist/src/sheet/fields.js.map +1 -0
  237. package/dist/src/sheet/group.d.ts +165 -0
  238. package/dist/src/sheet/group.d.ts.map +1 -0
  239. package/dist/src/sheet/group.js +52 -0
  240. package/dist/src/sheet/group.js.map +1 -0
  241. package/dist/src/sheet/index.d.ts +542 -0
  242. package/dist/src/sheet/index.d.ts.map +1 -0
  243. package/dist/src/sheet/index.js +387 -0
  244. package/dist/src/sheet/index.js.map +1 -0
  245. package/dist/src/sheet/library.d.ts +284 -0
  246. package/dist/src/sheet/library.d.ts.map +1 -0
  247. package/dist/src/sheet/library.js +259 -0
  248. package/dist/src/sheet/library.js.map +1 -0
  249. package/dist/src/sheet/link.d.ts +398 -0
  250. package/dist/src/sheet/link.d.ts.map +1 -0
  251. package/dist/src/sheet/link.js +228 -0
  252. package/dist/src/sheet/link.js.map +1 -0
  253. package/dist/src/sheet/record.d.ts +75 -0
  254. package/dist/src/sheet/record.d.ts.map +1 -0
  255. package/dist/src/sheet/record.js +128 -0
  256. package/dist/src/sheet/record.js.map +1 -0
  257. package/dist/src/sheet/registers.d.ts +681 -0
  258. package/dist/src/sheet/registers.d.ts.map +1 -0
  259. package/dist/src/sheet/registers.js +671 -0
  260. package/dist/src/sheet/registers.js.map +1 -0
  261. package/dist/src/sheet/root.d.ts +329 -0
  262. package/dist/src/sheet/root.d.ts.map +1 -0
  263. package/dist/src/sheet/root.js +511 -0
  264. package/dist/src/sheet/root.js.map +1 -0
  265. package/dist/src/sheet/seed-bridge.d.ts +14 -0
  266. package/dist/src/sheet/seed-bridge.d.ts.map +1 -0
  267. package/dist/src/sheet/seed-bridge.js +51 -0
  268. package/dist/src/sheet/seed-bridge.js.map +1 -0
  269. package/dist/src/sheet/sheet.d.ts +11819 -0
  270. package/dist/src/sheet/sheet.d.ts.map +1 -0
  271. package/dist/src/sheet/sheet.js +236 -0
  272. package/dist/src/sheet/sheet.js.map +1 -0
  273. package/dist/src/sheet/sub-rows.d.ts +299 -0
  274. package/dist/src/sheet/sub-rows.d.ts.map +1 -0
  275. package/dist/src/sheet/sub-rows.js +272 -0
  276. package/dist/src/sheet/sub-rows.js.map +1 -0
  277. package/dist/src/sheet/templates.d.ts +161 -0
  278. package/dist/src/sheet/templates.d.ts.map +1 -0
  279. package/dist/src/sheet/templates.js +122 -0
  280. package/dist/src/sheet/templates.js.map +1 -0
  281. package/dist/src/sheet/transactions.d.ts +76 -0
  282. package/dist/src/sheet/transactions.d.ts.map +1 -0
  283. package/dist/src/sheet/transactions.js +40 -0
  284. package/dist/src/sheet/transactions.js.map +1 -0
  285. package/dist/src/sheet/types.d.ts +15226 -0
  286. package/dist/src/sheet/types.d.ts.map +1 -0
  287. package/dist/src/sheet/types.js +1070 -0
  288. package/dist/src/sheet/types.js.map +1 -0
  289. package/dist/src/sheet/views.d.ts +29 -0
  290. package/dist/src/sheet/views.d.ts.map +1 -0
  291. package/dist/src/sheet/views.js +43 -0
  292. package/dist/src/sheet/views.js.map +1 -0
  293. package/dist/src/studio/component.d.ts.map +1 -1
  294. package/dist/src/studio/component.js +11 -8
  295. package/dist/src/studio/component.js.map +1 -1
  296. package/dist/src/utils/derive.d.ts +134 -8
  297. package/dist/src/utils/derive.d.ts.map +1 -1
  298. package/dist/src/utils/derive.js +409 -7
  299. package/dist/src/utils/derive.js.map +1 -1
  300. package/dist/src/utils/ordered-source.d.ts +38 -0
  301. package/dist/src/utils/ordered-source.d.ts.map +1 -0
  302. package/dist/src/utils/ordered-source.js +45 -0
  303. package/dist/src/utils/ordered-source.js.map +1 -0
  304. package/dist/src/utils/row-inspector.d.ts +36 -0
  305. package/dist/src/utils/row-inspector.d.ts.map +1 -0
  306. package/dist/src/utils/row-inspector.js +49 -0
  307. package/dist/src/utils/row-inspector.js.map +1 -0
  308. package/dist/test/bind/data/data.examples.d.ts +21 -19
  309. package/dist/test/bind/data/data.examples.d.ts.map +1 -1
  310. package/dist/test/bind/data/data.examples.js +122 -122
  311. package/dist/test/bind/data/data.examples.js.map +1 -1
  312. package/dist/test/bind/record/record.examples.d.ts.map +1 -1
  313. package/dist/test/bind/record/record.examples.js +9 -9
  314. package/dist/test/bind/record/record.examples.js.map +1 -1
  315. package/dist/test/calendar/calendar-records.examples.d.ts +228 -0
  316. package/dist/test/calendar/calendar-records.examples.d.ts.map +1 -0
  317. package/dist/test/calendar/calendar-records.examples.js +91 -0
  318. package/dist/test/calendar/calendar-records.examples.js.map +1 -0
  319. package/dist/test/calendar/calendar.examples.d.ts +776 -0
  320. package/dist/test/calendar/calendar.examples.d.ts.map +1 -0
  321. package/dist/test/calendar/calendar.examples.js +336 -0
  322. package/dist/test/calendar/calendar.examples.js.map +1 -0
  323. package/dist/test/decision/journal.examples.d.ts +28 -28
  324. package/dist/test/decision/journal.examples.d.ts.map +1 -1
  325. package/dist/test/decision/journal.examples.js +4 -4
  326. package/dist/test/decision/journal.examples.js.map +1 -1
  327. package/dist/test/decision/queue.examples.d.ts.map +1 -1
  328. package/dist/test/decision/queue.examples.js +5 -7
  329. package/dist/test/decision/queue.examples.js.map +1 -1
  330. package/dist/test/flowchart/flowchart.examples.d.ts +3713 -0
  331. package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -0
  332. package/dist/test/flowchart/flowchart.examples.js +465 -0
  333. package/dist/test/flowchart/flowchart.examples.js.map +1 -0
  334. package/dist/test/plan/plan-events.examples.d.ts +3666 -0
  335. package/dist/test/plan/plan-events.examples.d.ts.map +1 -0
  336. package/dist/test/plan/plan-events.examples.js +773 -0
  337. package/dist/test/plan/plan-events.examples.js.map +1 -0
  338. package/dist/test/plan/plan-records.examples.d.ts +3 -0
  339. package/dist/test/plan/plan-records.examples.d.ts.map +1 -0
  340. package/dist/test/plan/plan-records.examples.js +45 -0
  341. package/dist/test/plan/plan-records.examples.js.map +1 -0
  342. package/dist/test/plan/plan-windows.examples.d.ts +588 -0
  343. package/dist/test/plan/plan-windows.examples.d.ts.map +1 -0
  344. package/dist/test/plan/plan-windows.examples.js +170 -0
  345. package/dist/test/plan/plan-windows.examples.js.map +1 -0
  346. package/dist/test/plan/plan.examples.d.ts +8095 -0
  347. package/dist/test/plan/plan.examples.d.ts.map +1 -0
  348. package/dist/test/plan/plan.examples.js +2500 -0
  349. package/dist/test/plan/plan.examples.js.map +1 -0
  350. package/dist/test/roster/domain.examples.d.ts +367 -0
  351. package/dist/test/roster/domain.examples.d.ts.map +1 -0
  352. package/dist/test/roster/domain.examples.js +72 -0
  353. package/dist/test/roster/domain.examples.js.map +1 -0
  354. package/dist/test/roster/roster-records.examples.d.ts +729 -0
  355. package/dist/test/roster/roster-records.examples.d.ts.map +1 -0
  356. package/dist/test/roster/roster-records.examples.js +86 -0
  357. package/dist/test/roster/roster-records.examples.js.map +1 -0
  358. package/dist/test/roster/roster.examples.d.ts +750 -0
  359. package/dist/test/roster/roster.examples.d.ts.map +1 -0
  360. package/dist/test/roster/roster.examples.js +198 -0
  361. package/dist/test/roster/roster.examples.js.map +1 -0
  362. package/dist/test/roster/warehouse.d.ts +87 -0
  363. package/dist/test/roster/warehouse.d.ts.map +1 -0
  364. package/dist/test/roster/warehouse.js +883 -0
  365. package/dist/test/roster/warehouse.js.map +1 -0
  366. package/dist/test/sheet/sheet-link.examples.d.ts +7 -0
  367. package/dist/test/sheet/sheet-link.examples.d.ts.map +1 -0
  368. package/dist/test/sheet/sheet-link.examples.js +41 -0
  369. package/dist/test/sheet/sheet-link.examples.js.map +1 -0
  370. package/dist/test/sheet/sheet-records.examples.d.ts +421 -0
  371. package/dist/test/sheet/sheet-records.examples.d.ts.map +1 -0
  372. package/dist/test/sheet/sheet-records.examples.js +79 -0
  373. package/dist/test/sheet/sheet-records.examples.js.map +1 -0
  374. package/dist/test/sheet/sheet-transactions.examples.d.ts +7 -0
  375. package/dist/test/sheet/sheet-transactions.examples.d.ts.map +1 -0
  376. package/dist/test/sheet/sheet-transactions.examples.js +58 -0
  377. package/dist/test/sheet/sheet-transactions.examples.js.map +1 -0
  378. package/dist/test/sheet/sheet.examples.d.ts +5562 -0
  379. package/dist/test/sheet/sheet.examples.d.ts.map +1 -0
  380. package/dist/test/sheet/sheet.examples.js +1178 -0
  381. package/dist/test/sheet/sheet.examples.js.map +1 -0
  382. package/dist/test/studio/studio.examples.d.ts.map +1 -1
  383. package/dist/test/studio/studio.examples.js +11 -11
  384. package/dist/test/studio/studio.examples.js.map +1 -1
  385. package/package.json +12 -9
@@ -0,0 +1,772 @@
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
+ * `Plan.library` — the Plan's library pane, the author's (#1195,
7
+ * `Plan Builder Spec.md` §4.3, §8, §9.6, PB26–PB30, PB61, PB62). `library`
8
+ * lists the pane's tabs, in order, each built here:
9
+ *
10
+ * - `Plan.library.events()`: every event kind's templates, by kind;
11
+ * - `Plan.library.backlog()`: every event kind's unscheduled events, by when
12
+ * they are due;
13
+ * - `Plan.library.series()`: what the canvas shows that a viewer can hide,
14
+ * each with an eye — the resource kinds and their measures, the event
15
+ * kinds, `data`'s series when they are picked (`pick`), and the Plan's
16
+ * `rows`;
17
+ * - `Plan.library.tab(rows, { … })`: cards of the author's own.
18
+ *
19
+ * Left out, or empty, the Plan has no library pane.
20
+ *
21
+ * An author's tab reads its rows as `Schedule.resources` does: a `Dict<K, R>`,
22
+ * usually a record's `read()`, its accessors `(row, key) => …` reified once
23
+ * into a describe function the map then calls, each card keyed by its row's
24
+ * key as text. Its cards drag onto the rows of `data` whose series makes an
25
+ * item of a dropped card (`edit.create`, #1259), as a Library's card beside
26
+ * the Plan does — the Plan takes its own panel's cards with no `id` or
27
+ * `sources`. Its `drop` returns what a card dropped on an event sets:
28
+ * `Schedule.patch` over one event kind's row type, whose type names that kind.
29
+ * The patch crosses the closed payload as that kind's field writes — each
30
+ * field it sets, its path and its value as bytes — which a drop writes through
31
+ * the kind's own `write` (#1196).
32
+ *
33
+ * @packageDocumentation
34
+ */
35
+ import { ArrayType, DictType, NullType, StringType, StructType, VariantType, type EastType, type ExprType, type SubtypeExprOrValue } from "@elaraai/east";
36
+ import type { ScheduleEventKind } from "../schedule/events.js";
37
+ import { type ScheduleLibraryTabConfig as PlanLibraryTabConfig } from "../schedule/library.js";
38
+ export { ScheduleLibraryCardType as PlanLibraryCardType, type ScheduleLibraryTabConfig as PlanLibraryTabConfig } from "../schedule/library.js";
39
+ import type { ScheduleResourceKind } from "../schedule/resources.js";
40
+ /**
41
+ * One card of an author's tab on the wire.
42
+ *
43
+ * @property key - Its row's key, as text
44
+ * @property label - Its name
45
+ * @property meta - The line under its name
46
+ * @property group - The tab's group the card sits under
47
+ * @property sets - What a drop writes into the event it lands on: each field the tab's `drop` patch sets; empty without a `drop`
48
+ */
49
+ /**
50
+ * The id the Series tab lists a thing by, and a viewer's hidden set holds it by
51
+ * (PB29): one namespace per source, so no two collide — a resource kind and an
52
+ * event kind by slot, a measure, a hand-built row and a `Plan.over` series by
53
+ * key. `data`'s picked series are the pick's own, by their bare keys.
54
+ *
55
+ * @internal
56
+ */
57
+ export declare const planHideId: {
58
+ /** A resource kind, by slot: hiding it hides its rows. */
59
+ readonly resources: (slot: string) => string;
60
+ /** An event kind, by slot: hiding it hides its elements everywhere. */
61
+ readonly events: (slot: string) => string;
62
+ /** A measure, by key: hiding it hides its row under each resource. */
63
+ readonly measures: (key: string) => string;
64
+ /** A hand-built row, by key: hiding it hides it and the rows under it. */
65
+ readonly rows: (key: string) => string;
66
+ /** A `Plan.over` series, by key: hiding it hides its rows and its nested series'. */
67
+ readonly series: (key: string) => string;
68
+ };
69
+ /**
70
+ * What hiding one of a Plan's `rows` hides on the canvas: a `Plan.over`
71
+ * series' rows, by the keys they carry — its own and every series' nested in
72
+ * it — or a hand-built row and the rows under it, by its key, the first step
73
+ * of their ids' paths.
74
+ */
75
+ export declare const PlanLibraryHidesType: VariantType<{
76
+ readonly series: ArrayType<StringType>;
77
+ readonly rows: StringType;
78
+ }>;
79
+ /** Type representing {@link PlanLibraryHidesType}. */
80
+ export type PlanLibraryHidesType = typeof PlanLibraryHidesType;
81
+ /**
82
+ * One of a Plan's `rows` as the Series tab lists it.
83
+ *
84
+ * @property item - Its line in the tab, an eye beside it
85
+ * @property hides - What hiding it hides
86
+ */
87
+ export declare const PlanLibraryRowsItemType: StructType<{
88
+ readonly item: StructType<{
89
+ readonly id: StringType;
90
+ readonly title: StringType;
91
+ readonly subtitle: import("@elaraai/east").OptionType<StringType>;
92
+ readonly icon: import("@elaraai/east").OptionType<StructType<{
93
+ readonly name: StringType;
94
+ readonly prefix: StringType;
95
+ readonly label: import("@elaraai/east").OptionType<StringType>;
96
+ readonly style: import("@elaraai/east").OptionType<StructType<{
97
+ readonly size: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
98
+ readonly xs: NullType;
99
+ readonly sm: NullType;
100
+ readonly md: NullType;
101
+ readonly lg: NullType;
102
+ readonly xl: NullType;
103
+ readonly "2xl": NullType;
104
+ }>>;
105
+ readonly variant: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
106
+ readonly solid: NullType;
107
+ }>>;
108
+ readonly color: import("@elaraai/east").OptionType<StringType>;
109
+ readonly background: import("@elaraai/east").OptionType<StringType>;
110
+ readonly colorPalette: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
111
+ readonly brand: NullType;
112
+ readonly gray: NullType;
113
+ readonly red: NullType;
114
+ readonly orange: NullType;
115
+ readonly yellow: NullType;
116
+ readonly green: NullType;
117
+ readonly teal: NullType;
118
+ readonly blue: NullType;
119
+ readonly cyan: NullType;
120
+ readonly purple: NullType;
121
+ readonly pink: NullType;
122
+ readonly success: NullType;
123
+ readonly warning: NullType;
124
+ readonly danger: NullType;
125
+ readonly info: NullType;
126
+ readonly neutral: NullType;
127
+ }>>;
128
+ readonly opacity: import("@elaraai/east").OptionType<import("@elaraai/east").FloatType>;
129
+ readonly borderRadius: import("@elaraai/east").OptionType<StringType>;
130
+ readonly overflow: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
131
+ readonly visible: NullType;
132
+ readonly hidden: NullType;
133
+ readonly scroll: NullType;
134
+ readonly auto: NullType;
135
+ }>>;
136
+ readonly overflowX: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
137
+ readonly visible: NullType;
138
+ readonly hidden: NullType;
139
+ readonly scroll: NullType;
140
+ readonly auto: NullType;
141
+ }>>;
142
+ readonly overflowY: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
143
+ readonly visible: NullType;
144
+ readonly hidden: NullType;
145
+ readonly scroll: NullType;
146
+ readonly auto: NullType;
147
+ }>>;
148
+ readonly width: import("@elaraai/east").OptionType<StringType>;
149
+ readonly height: import("@elaraai/east").OptionType<StringType>;
150
+ readonly minWidth: import("@elaraai/east").OptionType<StringType>;
151
+ readonly minHeight: import("@elaraai/east").OptionType<StringType>;
152
+ readonly maxWidth: import("@elaraai/east").OptionType<StringType>;
153
+ readonly maxHeight: import("@elaraai/east").OptionType<StringType>;
154
+ readonly padding: import("@elaraai/east").OptionType<StructType<{
155
+ readonly top: import("@elaraai/east").OptionType<StringType>;
156
+ readonly right: import("@elaraai/east").OptionType<StringType>;
157
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
158
+ readonly left: import("@elaraai/east").OptionType<StringType>;
159
+ }>>;
160
+ readonly margin: import("@elaraai/east").OptionType<StructType<{
161
+ readonly top: import("@elaraai/east").OptionType<StringType>;
162
+ readonly right: import("@elaraai/east").OptionType<StringType>;
163
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
164
+ readonly left: import("@elaraai/east").OptionType<StringType>;
165
+ }>>;
166
+ }>>;
167
+ }>>;
168
+ readonly count: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
169
+ readonly narrowed: import("@elaraai/east").BooleanType;
170
+ }>;
171
+ readonly hides: VariantType<{
172
+ readonly series: ArrayType<StringType>;
173
+ readonly rows: StringType;
174
+ }>;
175
+ }>;
176
+ /** Type representing {@link PlanLibraryRowsItemType}. */
177
+ export type PlanLibraryRowsItemType = typeof PlanLibraryRowsItemType;
178
+ /**
179
+ * What the Series tab lists (PB29), each a pick item with its eye, in the
180
+ * order the canvas draws them. `data`'s series, when they are picked, sit
181
+ * between the two lists: they are the pick's own (the root's `pick`).
182
+ *
183
+ * @property kinds - The resource kinds, each followed by its measures, then the event kinds
184
+ * @property rows - The Plan's `rows`: a hand-built row by its key, each series of a `Plan.over` by its own
185
+ */
186
+ export declare const PlanLibrarySeriesType: StructType<{
187
+ readonly kinds: ArrayType<StructType<{
188
+ readonly id: StringType;
189
+ readonly title: StringType;
190
+ readonly subtitle: import("@elaraai/east").OptionType<StringType>;
191
+ readonly icon: import("@elaraai/east").OptionType<StructType<{
192
+ readonly name: StringType;
193
+ readonly prefix: StringType;
194
+ readonly label: import("@elaraai/east").OptionType<StringType>;
195
+ readonly style: import("@elaraai/east").OptionType<StructType<{
196
+ readonly size: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
197
+ readonly xs: NullType;
198
+ readonly sm: NullType;
199
+ readonly md: NullType;
200
+ readonly lg: NullType;
201
+ readonly xl: NullType;
202
+ readonly "2xl": NullType;
203
+ }>>;
204
+ readonly variant: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
205
+ readonly solid: NullType;
206
+ }>>;
207
+ readonly color: import("@elaraai/east").OptionType<StringType>;
208
+ readonly background: import("@elaraai/east").OptionType<StringType>;
209
+ readonly colorPalette: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
210
+ readonly brand: NullType;
211
+ readonly gray: NullType;
212
+ readonly red: NullType;
213
+ readonly orange: NullType;
214
+ readonly yellow: NullType;
215
+ readonly green: NullType;
216
+ readonly teal: NullType;
217
+ readonly blue: NullType;
218
+ readonly cyan: NullType;
219
+ readonly purple: NullType;
220
+ readonly pink: NullType;
221
+ readonly success: NullType;
222
+ readonly warning: NullType;
223
+ readonly danger: NullType;
224
+ readonly info: NullType;
225
+ readonly neutral: NullType;
226
+ }>>;
227
+ readonly opacity: import("@elaraai/east").OptionType<import("@elaraai/east").FloatType>;
228
+ readonly borderRadius: import("@elaraai/east").OptionType<StringType>;
229
+ readonly overflow: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
230
+ readonly visible: NullType;
231
+ readonly hidden: NullType;
232
+ readonly scroll: NullType;
233
+ readonly auto: NullType;
234
+ }>>;
235
+ readonly overflowX: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
236
+ readonly visible: NullType;
237
+ readonly hidden: NullType;
238
+ readonly scroll: NullType;
239
+ readonly auto: NullType;
240
+ }>>;
241
+ readonly overflowY: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
242
+ readonly visible: NullType;
243
+ readonly hidden: NullType;
244
+ readonly scroll: NullType;
245
+ readonly auto: NullType;
246
+ }>>;
247
+ readonly width: import("@elaraai/east").OptionType<StringType>;
248
+ readonly height: import("@elaraai/east").OptionType<StringType>;
249
+ readonly minWidth: import("@elaraai/east").OptionType<StringType>;
250
+ readonly minHeight: import("@elaraai/east").OptionType<StringType>;
251
+ readonly maxWidth: import("@elaraai/east").OptionType<StringType>;
252
+ readonly maxHeight: import("@elaraai/east").OptionType<StringType>;
253
+ readonly padding: import("@elaraai/east").OptionType<StructType<{
254
+ readonly top: import("@elaraai/east").OptionType<StringType>;
255
+ readonly right: import("@elaraai/east").OptionType<StringType>;
256
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
257
+ readonly left: import("@elaraai/east").OptionType<StringType>;
258
+ }>>;
259
+ readonly margin: import("@elaraai/east").OptionType<StructType<{
260
+ readonly top: import("@elaraai/east").OptionType<StringType>;
261
+ readonly right: import("@elaraai/east").OptionType<StringType>;
262
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
263
+ readonly left: import("@elaraai/east").OptionType<StringType>;
264
+ }>>;
265
+ }>>;
266
+ }>>;
267
+ readonly count: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
268
+ readonly narrowed: import("@elaraai/east").BooleanType;
269
+ }>>;
270
+ readonly rows: ArrayType<StructType<{
271
+ readonly item: StructType<{
272
+ readonly id: StringType;
273
+ readonly title: StringType;
274
+ readonly subtitle: import("@elaraai/east").OptionType<StringType>;
275
+ readonly icon: import("@elaraai/east").OptionType<StructType<{
276
+ readonly name: StringType;
277
+ readonly prefix: StringType;
278
+ readonly label: import("@elaraai/east").OptionType<StringType>;
279
+ readonly style: import("@elaraai/east").OptionType<StructType<{
280
+ readonly size: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
281
+ readonly xs: NullType;
282
+ readonly sm: NullType;
283
+ readonly md: NullType;
284
+ readonly lg: NullType;
285
+ readonly xl: NullType;
286
+ readonly "2xl": NullType;
287
+ }>>;
288
+ readonly variant: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
289
+ readonly solid: NullType;
290
+ }>>;
291
+ readonly color: import("@elaraai/east").OptionType<StringType>;
292
+ readonly background: import("@elaraai/east").OptionType<StringType>;
293
+ readonly colorPalette: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
294
+ readonly brand: NullType;
295
+ readonly gray: NullType;
296
+ readonly red: NullType;
297
+ readonly orange: NullType;
298
+ readonly yellow: NullType;
299
+ readonly green: NullType;
300
+ readonly teal: NullType;
301
+ readonly blue: NullType;
302
+ readonly cyan: NullType;
303
+ readonly purple: NullType;
304
+ readonly pink: NullType;
305
+ readonly success: NullType;
306
+ readonly warning: NullType;
307
+ readonly danger: NullType;
308
+ readonly info: NullType;
309
+ readonly neutral: NullType;
310
+ }>>;
311
+ readonly opacity: import("@elaraai/east").OptionType<import("@elaraai/east").FloatType>;
312
+ readonly borderRadius: import("@elaraai/east").OptionType<StringType>;
313
+ readonly overflow: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
314
+ readonly visible: NullType;
315
+ readonly hidden: NullType;
316
+ readonly scroll: NullType;
317
+ readonly auto: NullType;
318
+ }>>;
319
+ readonly overflowX: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
320
+ readonly visible: NullType;
321
+ readonly hidden: NullType;
322
+ readonly scroll: NullType;
323
+ readonly auto: NullType;
324
+ }>>;
325
+ readonly overflowY: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
326
+ readonly visible: NullType;
327
+ readonly hidden: NullType;
328
+ readonly scroll: NullType;
329
+ readonly auto: NullType;
330
+ }>>;
331
+ readonly width: import("@elaraai/east").OptionType<StringType>;
332
+ readonly height: import("@elaraai/east").OptionType<StringType>;
333
+ readonly minWidth: import("@elaraai/east").OptionType<StringType>;
334
+ readonly minHeight: import("@elaraai/east").OptionType<StringType>;
335
+ readonly maxWidth: import("@elaraai/east").OptionType<StringType>;
336
+ readonly maxHeight: import("@elaraai/east").OptionType<StringType>;
337
+ readonly padding: import("@elaraai/east").OptionType<StructType<{
338
+ readonly top: import("@elaraai/east").OptionType<StringType>;
339
+ readonly right: import("@elaraai/east").OptionType<StringType>;
340
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
341
+ readonly left: import("@elaraai/east").OptionType<StringType>;
342
+ }>>;
343
+ readonly margin: import("@elaraai/east").OptionType<StructType<{
344
+ readonly top: import("@elaraai/east").OptionType<StringType>;
345
+ readonly right: import("@elaraai/east").OptionType<StringType>;
346
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
347
+ readonly left: import("@elaraai/east").OptionType<StringType>;
348
+ }>>;
349
+ }>>;
350
+ }>>;
351
+ readonly count: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
352
+ readonly narrowed: import("@elaraai/east").BooleanType;
353
+ }>;
354
+ readonly hides: VariantType<{
355
+ readonly series: ArrayType<StringType>;
356
+ readonly rows: StringType;
357
+ }>;
358
+ }>>;
359
+ }>;
360
+ /** Type representing {@link PlanLibrarySeriesType}. */
361
+ export type PlanLibrarySeriesType = typeof PlanLibrarySeriesType;
362
+ /**
363
+ * One tab of the library pane on the wire, in the order `library` lists them.
364
+ *
365
+ * - `events` — every event kind's templates, read off the kinds;
366
+ * - `backlog` — every event kind's unscheduled events, read off the kinds;
367
+ * - `series` — what the canvas shows that a viewer can hide;
368
+ * - `tab` — the author's own: its name, its icon, the event kind its cards
369
+ * land on, and its cards.
370
+ */
371
+ export declare const PlanLibraryTabType: VariantType<{
372
+ readonly events: NullType;
373
+ readonly backlog: NullType;
374
+ readonly series: StructType<{
375
+ readonly kinds: ArrayType<StructType<{
376
+ readonly id: StringType;
377
+ readonly title: StringType;
378
+ readonly subtitle: import("@elaraai/east").OptionType<StringType>;
379
+ readonly icon: import("@elaraai/east").OptionType<StructType<{
380
+ readonly name: StringType;
381
+ readonly prefix: StringType;
382
+ readonly label: import("@elaraai/east").OptionType<StringType>;
383
+ readonly style: import("@elaraai/east").OptionType<StructType<{
384
+ readonly size: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
385
+ readonly xs: NullType;
386
+ readonly sm: NullType;
387
+ readonly md: NullType;
388
+ readonly lg: NullType;
389
+ readonly xl: NullType;
390
+ readonly "2xl": NullType;
391
+ }>>;
392
+ readonly variant: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
393
+ readonly solid: NullType;
394
+ }>>;
395
+ readonly color: import("@elaraai/east").OptionType<StringType>;
396
+ readonly background: import("@elaraai/east").OptionType<StringType>;
397
+ readonly colorPalette: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
398
+ readonly brand: NullType;
399
+ readonly gray: NullType;
400
+ readonly red: NullType;
401
+ readonly orange: NullType;
402
+ readonly yellow: NullType;
403
+ readonly green: NullType;
404
+ readonly teal: NullType;
405
+ readonly blue: NullType;
406
+ readonly cyan: NullType;
407
+ readonly purple: NullType;
408
+ readonly pink: NullType;
409
+ readonly success: NullType;
410
+ readonly warning: NullType;
411
+ readonly danger: NullType;
412
+ readonly info: NullType;
413
+ readonly neutral: NullType;
414
+ }>>;
415
+ readonly opacity: import("@elaraai/east").OptionType<import("@elaraai/east").FloatType>;
416
+ readonly borderRadius: import("@elaraai/east").OptionType<StringType>;
417
+ readonly overflow: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
418
+ readonly visible: NullType;
419
+ readonly hidden: NullType;
420
+ readonly scroll: NullType;
421
+ readonly auto: NullType;
422
+ }>>;
423
+ readonly overflowX: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
424
+ readonly visible: NullType;
425
+ readonly hidden: NullType;
426
+ readonly scroll: NullType;
427
+ readonly auto: NullType;
428
+ }>>;
429
+ readonly overflowY: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
430
+ readonly visible: NullType;
431
+ readonly hidden: NullType;
432
+ readonly scroll: NullType;
433
+ readonly auto: NullType;
434
+ }>>;
435
+ readonly width: import("@elaraai/east").OptionType<StringType>;
436
+ readonly height: import("@elaraai/east").OptionType<StringType>;
437
+ readonly minWidth: import("@elaraai/east").OptionType<StringType>;
438
+ readonly minHeight: import("@elaraai/east").OptionType<StringType>;
439
+ readonly maxWidth: import("@elaraai/east").OptionType<StringType>;
440
+ readonly maxHeight: import("@elaraai/east").OptionType<StringType>;
441
+ readonly padding: import("@elaraai/east").OptionType<StructType<{
442
+ readonly top: import("@elaraai/east").OptionType<StringType>;
443
+ readonly right: import("@elaraai/east").OptionType<StringType>;
444
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
445
+ readonly left: import("@elaraai/east").OptionType<StringType>;
446
+ }>>;
447
+ readonly margin: import("@elaraai/east").OptionType<StructType<{
448
+ readonly top: import("@elaraai/east").OptionType<StringType>;
449
+ readonly right: import("@elaraai/east").OptionType<StringType>;
450
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
451
+ readonly left: import("@elaraai/east").OptionType<StringType>;
452
+ }>>;
453
+ }>>;
454
+ }>>;
455
+ readonly count: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
456
+ readonly narrowed: import("@elaraai/east").BooleanType;
457
+ }>>;
458
+ readonly rows: ArrayType<StructType<{
459
+ readonly item: StructType<{
460
+ readonly id: StringType;
461
+ readonly title: StringType;
462
+ readonly subtitle: import("@elaraai/east").OptionType<StringType>;
463
+ readonly icon: import("@elaraai/east").OptionType<StructType<{
464
+ readonly name: StringType;
465
+ readonly prefix: StringType;
466
+ readonly label: import("@elaraai/east").OptionType<StringType>;
467
+ readonly style: import("@elaraai/east").OptionType<StructType<{
468
+ readonly size: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
469
+ readonly xs: NullType;
470
+ readonly sm: NullType;
471
+ readonly md: NullType;
472
+ readonly lg: NullType;
473
+ readonly xl: NullType;
474
+ readonly "2xl": NullType;
475
+ }>>;
476
+ readonly variant: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
477
+ readonly solid: NullType;
478
+ }>>;
479
+ readonly color: import("@elaraai/east").OptionType<StringType>;
480
+ readonly background: import("@elaraai/east").OptionType<StringType>;
481
+ readonly colorPalette: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
482
+ readonly brand: NullType;
483
+ readonly gray: NullType;
484
+ readonly red: NullType;
485
+ readonly orange: NullType;
486
+ readonly yellow: NullType;
487
+ readonly green: NullType;
488
+ readonly teal: NullType;
489
+ readonly blue: NullType;
490
+ readonly cyan: NullType;
491
+ readonly purple: NullType;
492
+ readonly pink: NullType;
493
+ readonly success: NullType;
494
+ readonly warning: NullType;
495
+ readonly danger: NullType;
496
+ readonly info: NullType;
497
+ readonly neutral: NullType;
498
+ }>>;
499
+ readonly opacity: import("@elaraai/east").OptionType<import("@elaraai/east").FloatType>;
500
+ readonly borderRadius: import("@elaraai/east").OptionType<StringType>;
501
+ readonly overflow: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
502
+ readonly visible: NullType;
503
+ readonly hidden: NullType;
504
+ readonly scroll: NullType;
505
+ readonly auto: NullType;
506
+ }>>;
507
+ readonly overflowX: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
508
+ readonly visible: NullType;
509
+ readonly hidden: NullType;
510
+ readonly scroll: NullType;
511
+ readonly auto: NullType;
512
+ }>>;
513
+ readonly overflowY: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
514
+ readonly visible: NullType;
515
+ readonly hidden: NullType;
516
+ readonly scroll: NullType;
517
+ readonly auto: NullType;
518
+ }>>;
519
+ readonly width: import("@elaraai/east").OptionType<StringType>;
520
+ readonly height: import("@elaraai/east").OptionType<StringType>;
521
+ readonly minWidth: import("@elaraai/east").OptionType<StringType>;
522
+ readonly minHeight: import("@elaraai/east").OptionType<StringType>;
523
+ readonly maxWidth: import("@elaraai/east").OptionType<StringType>;
524
+ readonly maxHeight: import("@elaraai/east").OptionType<StringType>;
525
+ readonly padding: import("@elaraai/east").OptionType<StructType<{
526
+ readonly top: import("@elaraai/east").OptionType<StringType>;
527
+ readonly right: import("@elaraai/east").OptionType<StringType>;
528
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
529
+ readonly left: import("@elaraai/east").OptionType<StringType>;
530
+ }>>;
531
+ readonly margin: import("@elaraai/east").OptionType<StructType<{
532
+ readonly top: import("@elaraai/east").OptionType<StringType>;
533
+ readonly right: import("@elaraai/east").OptionType<StringType>;
534
+ readonly bottom: import("@elaraai/east").OptionType<StringType>;
535
+ readonly left: import("@elaraai/east").OptionType<StringType>;
536
+ }>>;
537
+ }>>;
538
+ }>>;
539
+ readonly count: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
540
+ readonly narrowed: import("@elaraai/east").BooleanType;
541
+ }>;
542
+ readonly hides: VariantType<{
543
+ readonly series: ArrayType<StringType>;
544
+ readonly rows: StringType;
545
+ }>;
546
+ }>>;
547
+ }>;
548
+ readonly tab: StructType<{
549
+ readonly name: StringType;
550
+ readonly icon: import("@elaraai/east").OptionType<StringType>;
551
+ readonly drop: import("@elaraai/east").OptionType<StringType>;
552
+ readonly cards: ArrayType<StructType<{
553
+ readonly key: StringType;
554
+ readonly label: StringType;
555
+ readonly meta: import("@elaraai/east").OptionType<StringType>;
556
+ readonly group: import("@elaraai/east").OptionType<StringType>;
557
+ readonly sets: ArrayType<StructType<{
558
+ readonly path: ArrayType<StringType>;
559
+ readonly value: import("@elaraai/east").BlobType;
560
+ }>>;
561
+ }>>;
562
+ }>;
563
+ }>;
564
+ /** Type representing {@link PlanLibraryTabType}. */
565
+ export type PlanLibraryTabType = typeof PlanLibraryTabType;
566
+ /**
567
+ * An author's tab: its name and icon, and the accessors over one of its rows —
568
+ * its value and its key — as `Schedule.resources` takes them.
569
+ *
570
+ * @typeParam K - The rows' key type
571
+ * @typeParam R - Their row type
572
+ * @typeParam P - The patch `drop` returns: `Schedule.Types.Patch` of one event kind's row type
573
+ */
574
+ /** One tab of the library pane — what each `Plan.library.*` call returns, and `library` lists. */
575
+ export type PlanLibraryTab = {
576
+ readonly kind: "events";
577
+ } | {
578
+ readonly kind: "backlog";
579
+ } | {
580
+ readonly kind: "series";
581
+ } | {
582
+ readonly kind: "tab";
583
+ readonly rows: unknown;
584
+ readonly config: PlanLibraryTabConfig<EastType, EastType>;
585
+ };
586
+ /**
587
+ * The library's Events tab — `Plan.library.events()`: every event kind's
588
+ * templates, under the kind's name and icon, then by a template's `group`
589
+ * (PB27). A card dropped on a resource's row creates an event of its kind
590
+ * (#1196).
591
+ *
592
+ * @returns The tab
593
+ */
594
+ export declare function libraryEvents(): PlanLibraryTab;
595
+ /**
596
+ * The library's Backlog tab — `Plan.library.backlog()`: every event kind's
597
+ * unscheduled events (a kind whose times are Options), by when they are due:
598
+ * this week, next week, later, or no date (PB28). A card dropped on a
599
+ * resource's row schedules it (#1196).
600
+ *
601
+ * @returns The tab
602
+ */
603
+ export declare function libraryBacklog(): PlanLibraryTab;
604
+ /**
605
+ * The library's Series tab — `Plan.library.series()`: what the canvas shows
606
+ * that a viewer can hide, each with an eye (PB29). Hiding an event kind hides
607
+ * its elements everywhere, a resource kind its rows, a measure or one of the
608
+ * Plan's `rows` that row; `data`'s series show and hide through their `pick`.
609
+ * What a viewer hides is kept for them.
610
+ *
611
+ * @returns The tab
612
+ */
613
+ export declare function librarySeries(): PlanLibraryTab;
614
+ /**
615
+ * A tab of the author's own cards — `Plan.library.tab(rows, { … })` (PB62):
616
+ * one card per row, its label and meta, grouped by its `group`, searched by
617
+ * its key, label and meta. Each card drags onto the rows of `data` whose
618
+ * series makes an item of it (`edit.create`, #1259) — the drop's `from.key`
619
+ * its row's key as text, so `canDrop` and `create` read it as a Library card's
620
+ * — and, given a `drop`, onto an event (#1196), setting the fields the patch
621
+ * sets.
622
+ *
623
+ * @typeParam K - The rows' key type
624
+ * @typeParam R - Their row type
625
+ * @typeParam P - The patch `drop` returns
626
+ * @param rows - The rows — a `Dict<K, R>` value or expression, usually a record's `read()`
627
+ * @param config - The tab's name and icon, and the accessors ({@link PlanLibraryTabConfig})
628
+ * @returns The tab
629
+ *
630
+ * @example
631
+ * ```tsx
632
+ * // .tsx file with the `@jsxImportSource @elaraai/e3-ui` pragma
633
+ * import { DateTimeType, DictType, East, FloatType, NullType, OptionType, StringType, StructType, VariantType, none, some, variant } from "@elaraai/east";
634
+ * import { EventStateType, Reactive, UIComponentType } from "@elaraai/east-ui";
635
+ * import { Plan, Record, Schedule } from "@elaraai/e3-ui";
636
+ * import e3 from "@elaraai/e3";
637
+ *
638
+ * export const PrintPress = StructType({ name: StringType, hall: StringType, sheets_per_hour: FloatType });
639
+ * export const PrintJob = StructType({
640
+ * title: StringType,
641
+ * start: OptionType(DateTimeType),
642
+ * end: OptionType(DateTimeType),
643
+ * press: OptionType(StringType),
644
+ * state: EventStateType,
645
+ * sheets: FloatType,
646
+ * customer: StringType,
647
+ * stock: VariantType({ coated: NullType, uncoated: NullType, board: NullType }),
648
+ * due: OptionType(DateTimeType),
649
+ * });
650
+ * export const PrintCustomer = StructType({ name: StringType, district: StringType, trade: StringType });
651
+ * export const planPrintPresses = e3.record("plan_print_presses", DictType(StringType, PrintPress), new Map([
652
+ * ["a1", { name: "Press A1", hall: "Hall A", sheets_per_hour: 12000.0 }],
653
+ * ["a2", { name: "Press A2", hall: "Hall A", sheets_per_hour: 10000.0 }],
654
+ * ["a3", { name: "Press A3", hall: "Hall A", sheets_per_hour: 8000.0 }],
655
+ * ["b1", { name: "Press B1", hall: "Hall B", sheets_per_hour: 15000.0 }],
656
+ * ["b2", { name: "Press B2", hall: "Hall B", sheets_per_hour: 12000.0 }],
657
+ * ["b3", { name: "Press B3", hall: "Hall B", sheets_per_hour: 6000.0 }],
658
+ * ]));
659
+ * export const planPrintCustomers = e3.record("plan_print_customers", DictType(StringType, PrintCustomer), new Map([
660
+ * ["alder-finch", { name: "Alder & Finch", district: "Old Town", trade: "Retail" }],
661
+ * ["bluewater-tours", { name: "Bluewater Tours", district: "North Quay", trade: "Travel" }],
662
+ * ["copperleaf-cafe", { name: "Copperleaf Cafe", district: "Old Town", trade: "Hospitality" }],
663
+ * ["driftwood-museum", { name: "Driftwood Museum", district: "North Quay", trade: "Arts" }],
664
+ * ["elmway-college", { name: "Elmway College", district: "Riverside", trade: "Education" }],
665
+ * ["foxglove-gardens", { name: "Foxglove Gardens", district: "Riverside", trade: "Retail" }],
666
+ * ["granite-hall", { name: "Granite Hall", district: "Old Town", trade: "Events" }],
667
+ * ["harbour-arts", { name: "Harbour Arts Society", district: "North Quay", trade: "Arts" }],
668
+ * ["heathfield", { name: "Heathfield Theatre", district: "Old Town", trade: "Arts" }],
669
+ * ["ivy-lane", { name: "Ivy Lane Studio", district: "Riverside", trade: "Design" }],
670
+ * ["juniper-toys", { name: "Juniper Toys", district: "Riverside", trade: "Retail" }],
671
+ * ["kestrel-cycling", { name: "Kestrel Cycling Club", district: "Riverside", trade: "Sport" }],
672
+ * ["larkspur-home", { name: "Larkspur Home", district: "Old Town", trade: "Retail" }],
673
+ * ["meridian-monthly", { name: "Meridian Monthly", district: "North Quay", trade: "Publishing" }],
674
+ * ["northwind", { name: "Northwind Outfitters", district: "North Quay", trade: "Retail" }],
675
+ * ["orchard-market", { name: "Orchard Street Market", district: "Old Town", trade: "Markets" }],
676
+ * ]));
677
+ * export const planEventJobs = e3.record("plan_event_jobs", DictType(StringType, PrintJob), new Map([
678
+ * ["J-3001", { title: "Spring catalogue", start: some(new Date("2026-10-06T06:00:00Z")), end: some(new Date("2026-10-06T14:00:00Z")), press: some("a1"), state: variant("actual", null), sheets: 96000.0, customer: "Alder & Finch", stock: variant("coated", null), due: some(new Date("2026-10-08T00:00:00Z")) }],
679
+ * ["J-3002", { title: "Course handbook", start: some(new Date("2026-10-19T06:00:00Z")), end: some(new Date("2026-10-19T18:00:00Z")), press: some("a1"), state: variant("confirmed", null), sheets: 144000.0, customer: "Elmway College", stock: variant("uncoated", null), due: some(new Date("2026-10-23T00:00:00Z")) }],
680
+ * ["J-3003", { title: "Annual report", start: some(new Date("2026-10-14T06:00:00Z")), end: some(new Date("2026-10-14T12:00:00Z")), press: some("a2"), state: variant("in-progress", null), sheets: 60000.0, customer: "Harbour Arts Society", stock: variant("coated", null), due: some(new Date("2026-10-16T00:00:00Z")) }],
681
+ * ["J-3004", { title: "Club newsletter", start: some(new Date("2026-10-08T06:00:00Z")), end: some(new Date("2026-10-08T08:00:00Z")), press: some("a3"), state: variant("actual", null), sheets: 16000.0, customer: "Kestrel Cycling Club", stock: variant("uncoated", null), due: some(new Date("2026-10-09T00:00:00Z")) }],
682
+ * ["J-3005", { title: "Store flyers", start: some(new Date("2026-10-15T06:00:00Z")), end: some(new Date("2026-10-15T16:00:00Z")), press: some("b1"), state: variant("confirmed", null), sheets: 150000.0, customer: "Northwind Outfitters", stock: variant("uncoated", null), due: some(new Date("2026-10-16T00:00:00Z")) }],
683
+ * ["J-3006", { title: "Market posters", start: some(new Date("2026-10-20T06:00:00Z")), end: some(new Date("2026-10-20T12:00:00Z")), press: some("b2"), state: variant("confirmed", null), sheets: 72000.0, customer: "Orchard Street Market", stock: variant("coated", null), due: some(new Date("2026-10-22T00:00:00Z")) }],
684
+ * ["J-3007", { title: "Loyalty cards", start: some(new Date("2026-10-20T10:00:00Z")), end: some(new Date("2026-10-20T13:00:00Z")), press: some("b2"), state: variant("proposed", variant("added", null)), sheets: 36000.0, customer: "Copperleaf Cafe", stock: variant("board", null), due: some(new Date("2026-10-23T00:00:00Z")) }],
685
+ * ["J-3008", { title: "Gift boxes", start: some(new Date("2026-10-27T06:00:00Z")), end: some(new Date("2026-10-27T12:00:00Z")), press: some("b3"), state: variant("proposed", variant("recommended", null)), sheets: 48000.0, customer: "Juniper Toys", stock: variant("board", null), due: some(new Date("2026-10-30T00:00:00Z")) }],
686
+ * ["J-3009", { title: "Ticket books", start: some(new Date("2026-10-22T06:00:00Z")), end: some(new Date("2026-10-22T09:00:00Z")), press: none, state: variant("proposed", variant("added", null)), sheets: 24000.0, customer: "Heathfield Theatre", stock: variant("uncoated", null), due: some(new Date("2026-10-26T00:00:00Z")) }],
687
+ * ["J-3010", { title: "Guide reprint", start: none, end: none, press: none, state: variant("estimated", null), sheets: 24000.0, customer: "Driftwood Museum", stock: variant("coated", null), due: some(new Date("2026-10-16T00:00:00Z")) }],
688
+ * ["J-3011", { title: "Wall calendars", start: none, end: none, press: none, state: variant("estimated", null), sheets: 50000.0, customer: "Foxglove Gardens", stock: variant("coated", null), due: some(new Date("2026-10-23T00:00:00Z")) }],
689
+ * ["J-3012", { title: "Spare covers", start: none, end: none, press: none, state: variant("estimated", null), sheets: 8000.0, customer: "Meridian Monthly", stock: variant("board", null), due: none }],
690
+ * ]));
691
+ * export const planEventJobsPatch = e3.mutation.patch(planEventJobs);
692
+ *
693
+ * const planEvents = East.function([], UIComponentType, (_$) => (
694
+ * <Reactive>{$ => {
695
+ * const presses = $.let(Record.bind(planPrintPresses, []));
696
+ * const jobs = $.let(Record.bind(planEventJobs, [planEventJobsPatch]));
697
+ * const customers = $.let(Record.bind(planPrintCustomers, []));
698
+ * const axis = $.let(Plan.axis({
699
+ * window: { min: new Date("2026-10-05T00:00:00Z"), max: new Date("2026-11-02T00:00:00Z") },
700
+ * resolution: "day", now: new Date("2026-10-14T09:00:00Z"),
701
+ * }));
702
+ * return (
703
+ * <Plan
704
+ * id="jobs"
705
+ * axis={axis}
706
+ * resources={{
707
+ * presses: Schedule.resources(presses.read(), { name: "Presses", icon: "print", label: p => p.name }),
708
+ * }}
709
+ * events={{
710
+ * job: Schedule.events(jobs, {
711
+ * name: "Print job", icon: "file-lines",
712
+ * title: "title", start: "start", end: "end",
713
+ * resource: { field: "press", of: "presses" },
714
+ * state: "state",
715
+ * // A job with no start waits in the backlog: placed, it runs as long as its sheets take at
716
+ * // 8,000 an hour.
717
+ * backlog: { duration: j => variant("hours", j.sheets.divide(8000.0)), due: j => j.due },
718
+ * fields: {
719
+ * customer: Schedule.field.text({ label: "Customer" }),
720
+ * stock: Schedule.field.select({ labels: { coated: "Coated", uncoated: "Uncoated", board: "Board" } }),
721
+ * },
722
+ * }),
723
+ * }}
724
+ * library={[
725
+ * Plan.library.backlog(),
726
+ * // The customers, by district: a card dropped on a job sets its customer.
727
+ * Plan.library.tab(customers.read(), {
728
+ * name: "Customers", icon: "building",
729
+ * label: c => c.name, meta: c => some(c.trade), group: c => c.district,
730
+ * drop: c => Schedule.patch(PrintJob, { customer: c.name }),
731
+ * }),
732
+ * ]}
733
+ * inspector
734
+ * />
735
+ * );
736
+ * }}</Reactive>
737
+ * ));
738
+ * ```
739
+ */
740
+ export declare function libraryTab<K extends EastType, R extends EastType, P extends EastType = EastType>(rows: SubtypeExprOrValue<DictType<K, R>>, config: PlanLibraryTabConfig<K, R, P>): PlanLibraryTab;
741
+ /** A resource kind, its types erased. */
742
+ type AnyResourceKind = ScheduleResourceKind<EastType, EastType>;
743
+ /** An event kind, its types erased. */
744
+ type AnyEventKind = ScheduleEventKind<EastType, EastType>;
745
+ /**
746
+ * What a Plan's library is built against.
747
+ *
748
+ * @internal
749
+ */
750
+ export interface PlanLibraryContext {
751
+ /** The resource kinds, by slot, in order. */
752
+ readonly resources: readonly (readonly [string, AnyResourceKind])[];
753
+ /** The event kinds, by slot, in order. */
754
+ readonly events: readonly (readonly [string, AnyEventKind])[];
755
+ /** The Plan's `rows`, when given. */
756
+ readonly rows: readonly unknown[] | undefined;
757
+ /** Whether `data`'s series are picked (`pick`), so the Series tab lists them too. */
758
+ readonly picked: boolean;
759
+ }
760
+ /**
761
+ * Builds the library pane on the wire (PB26, PB61, PB62): its tabs in the
762
+ * order `library` lists them; none when it is left out.
763
+ *
764
+ * @param tabs - The tabs, each a `Plan.library.*` call
765
+ * @param ctx - What the library is built against
766
+ * @returns The tabs on the wire
767
+ * @throws {Error} Naming the tab: a tab listed twice (an author's tab by its name); the Events or Backlog tab on a Plan
768
+ * with no event kinds; the Series tab on a Plan with nothing a viewer can hide; and each of an author's tab's refusals
769
+ * @internal
770
+ */
771
+ export declare function buildLibrary(tabs: readonly PlanLibraryTab[] | undefined, ctx: PlanLibraryContext): ExprType<ArrayType<PlanLibraryTabType>>;
772
+ //# sourceMappingURL=library.d.ts.map