@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.
- package/dist/src/bind/data-indexed.d.ts +159 -0
- package/dist/src/bind/data-indexed.d.ts.map +1 -0
- package/dist/src/bind/data-indexed.js +105 -0
- package/dist/src/bind/data-indexed.js.map +1 -0
- package/dist/src/bind/data.d.ts +5 -3
- package/dist/src/bind/data.d.ts.map +1 -1
- package/dist/src/bind/data.js +6 -0
- package/dist/src/bind/data.js.map +1 -1
- package/dist/src/bind/record.d.ts +34 -23
- package/dist/src/bind/record.d.ts.map +1 -1
- package/dist/src/bind/record.js +46 -19
- package/dist/src/bind/record.js.map +1 -1
- package/dist/src/calendar/index.d.ts +2923 -0
- package/dist/src/calendar/index.d.ts.map +1 -0
- package/dist/src/calendar/index.js +135 -0
- package/dist/src/calendar/index.js.map +1 -0
- package/dist/src/decision/queue.d.ts +3 -3
- package/dist/src/decision/queue.d.ts.map +1 -1
- package/dist/src/decision/queue.js +2 -2
- package/dist/src/decision/queue.js.map +1 -1
- package/dist/src/decision/types.d.ts +4 -0
- package/dist/src/decision/types.d.ts.map +1 -1
- package/dist/src/decision/types.js +4 -0
- package/dist/src/decision/types.js.map +1 -1
- package/dist/src/flowchart/canvas.d.ts +114 -0
- package/dist/src/flowchart/canvas.d.ts.map +1 -0
- package/dist/src/flowchart/canvas.js +84 -0
- package/dist/src/flowchart/canvas.js.map +1 -0
- package/dist/src/flowchart/flowchart.d.ts +79 -0
- package/dist/src/flowchart/flowchart.d.ts.map +1 -0
- package/dist/src/flowchart/flowchart.js +9 -0
- package/dist/src/flowchart/flowchart.js.map +1 -0
- package/dist/src/flowchart/index.d.ts +305 -0
- package/dist/src/flowchart/index.d.ts.map +1 -0
- package/dist/src/flowchart/index.js +267 -0
- package/dist/src/flowchart/index.js.map +1 -0
- package/dist/src/flowchart/library.d.ts +720 -0
- package/dist/src/flowchart/library.d.ts.map +1 -0
- package/dist/src/flowchart/library.js +611 -0
- package/dist/src/flowchart/library.js.map +1 -0
- package/dist/src/flowchart/over.d.ts +234 -0
- package/dist/src/flowchart/over.d.ts.map +1 -0
- package/dist/src/flowchart/over.js +220 -0
- package/dist/src/flowchart/over.js.map +1 -0
- package/dist/src/flowchart/patch.d.ts +64 -0
- package/dist/src/flowchart/patch.d.ts.map +1 -0
- package/dist/src/flowchart/patch.js +67 -0
- package/dist/src/flowchart/patch.js.map +1 -0
- package/dist/src/flowchart/payload.d.ts +8220 -0
- package/dist/src/flowchart/payload.d.ts.map +1 -0
- package/dist/src/flowchart/payload.js +521 -0
- package/dist/src/flowchart/payload.js.map +1 -0
- package/dist/src/flowchart/types.d.ts +393 -0
- package/dist/src/flowchart/types.d.ts.map +1 -0
- package/dist/src/flowchart/types.js +216 -0
- package/dist/src/flowchart/types.js.map +1 -0
- package/dist/src/flowchart/values.d.ts +267 -0
- package/dist/src/flowchart/values.d.ts.map +1 -0
- package/dist/src/flowchart/values.js +216 -0
- package/dist/src/flowchart/values.js.map +1 -0
- package/dist/src/flowchart/window.d.ts +521 -0
- package/dist/src/flowchart/window.d.ts.map +1 -0
- package/dist/src/flowchart/window.js +69 -0
- package/dist/src/flowchart/window.js.map +1 -0
- package/dist/src/index.d.ts +25 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +48 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal.d.ts +35 -3
- package/dist/src/internal.d.ts.map +1 -1
- package/dist/src/internal.js +72 -3
- package/dist/src/internal.js.map +1 -1
- package/dist/src/plan/assemble.d.ts +2224 -0
- package/dist/src/plan/assemble.d.ts.map +1 -0
- package/dist/src/plan/assemble.js +210 -0
- package/dist/src/plan/assemble.js.map +1 -0
- package/dist/src/plan/builders.d.ts +790 -0
- package/dist/src/plan/builders.d.ts.map +1 -0
- package/dist/src/plan/builders.js +749 -0
- package/dist/src/plan/builders.js.map +1 -0
- package/dist/src/plan/event-rows.d.ts +2565 -0
- package/dist/src/plan/event-rows.d.ts.map +1 -0
- package/dist/src/plan/event-rows.js +689 -0
- package/dist/src/plan/event-rows.js.map +1 -0
- package/dist/src/plan/factories.d.ts +458 -0
- package/dist/src/plan/factories.d.ts.map +1 -0
- package/dist/src/plan/factories.js +484 -0
- package/dist/src/plan/factories.js.map +1 -0
- package/dist/src/plan/index.d.ts +672 -0
- package/dist/src/plan/index.d.ts.map +1 -0
- package/dist/src/plan/index.js +532 -0
- package/dist/src/plan/index.js.map +1 -0
- package/dist/src/plan/ir.d.ts +2594 -0
- package/dist/src/plan/ir.d.ts.map +1 -0
- package/dist/src/plan/ir.js +78 -0
- package/dist/src/plan/ir.js.map +1 -0
- package/dist/src/plan/library.d.ts +772 -0
- package/dist/src/plan/library.d.ts.map +1 -0
- package/dist/src/plan/library.js +424 -0
- package/dist/src/plan/library.js.map +1 -0
- package/dist/src/plan/ordered-source.d.ts +27 -0
- package/dist/src/plan/ordered-source.d.ts.map +1 -0
- package/dist/src/plan/ordered-source.js +48 -0
- package/dist/src/plan/ordered-source.js.map +1 -0
- package/dist/src/plan/over.d.ts +247 -0
- package/dist/src/plan/over.d.ts.map +1 -0
- package/dist/src/plan/over.js +266 -0
- package/dist/src/plan/over.js.map +1 -0
- package/dist/src/plan/pick.d.ts +78 -0
- package/dist/src/plan/pick.d.ts.map +1 -0
- package/dist/src/plan/pick.js +146 -0
- package/dist/src/plan/pick.js.map +1 -0
- package/dist/src/plan/plan.d.ts +11611 -0
- package/dist/src/plan/plan.d.ts.map +1 -0
- package/dist/src/plan/plan.js +428 -0
- package/dist/src/plan/plan.js.map +1 -0
- package/dist/src/plan/refs.d.ts +218 -0
- package/dist/src/plan/refs.d.ts.map +1 -0
- package/dist/src/plan/refs.js +226 -0
- package/dist/src/plan/refs.js.map +1 -0
- package/dist/src/plan/root.d.ts +290 -0
- package/dist/src/plan/root.d.ts.map +1 -0
- package/dist/src/plan/root.js +463 -0
- package/dist/src/plan/root.js.map +1 -0
- package/dist/src/plan/series.d.ts +13554 -0
- package/dist/src/plan/series.d.ts.map +1 -0
- package/dist/src/plan/series.js +1921 -0
- package/dist/src/plan/series.js.map +1 -0
- package/dist/src/plan/types.d.ts +12400 -0
- package/dist/src/plan/types.d.ts.map +1 -0
- package/dist/src/plan/types.js +1335 -0
- package/dist/src/plan/types.js.map +1 -0
- package/dist/src/roster/coverage.d.ts +240 -0
- package/dist/src/roster/coverage.d.ts.map +1 -0
- package/dist/src/roster/coverage.js +109 -0
- package/dist/src/roster/coverage.js.map +1 -0
- package/dist/src/roster/index.d.ts +4028 -0
- package/dist/src/roster/index.d.ts.map +1 -0
- package/dist/src/roster/index.js +115 -0
- package/dist/src/roster/index.js.map +1 -0
- package/dist/src/roster/library.d.ts +106 -0
- package/dist/src/roster/library.d.ts.map +1 -0
- package/dist/src/roster/library.js +78 -0
- package/dist/src/roster/library.js.map +1 -0
- package/dist/src/roster/people.d.ts +50 -0
- package/dist/src/roster/people.d.ts.map +1 -0
- package/dist/src/roster/people.js +32 -0
- package/dist/src/roster/people.js.map +1 -0
- package/dist/src/roster/rules.d.ts +275 -0
- package/dist/src/roster/rules.d.ts.map +1 -0
- package/dist/src/roster/rules.js +162 -0
- package/dist/src/roster/rules.js.map +1 -0
- package/dist/src/roster/types.d.ts +672 -0
- package/dist/src/roster/types.d.ts.map +1 -0
- package/dist/src/roster/types.js +248 -0
- package/dist/src/roster/types.js.map +1 -0
- package/dist/src/roster/visibility.d.ts +66 -0
- package/dist/src/roster/visibility.d.ts.map +1 -0
- package/dist/src/roster/visibility.js +25 -0
- package/dist/src/roster/visibility.js.map +1 -0
- package/dist/src/schedule/days.d.ts +54 -0
- package/dist/src/schedule/days.d.ts.map +1 -0
- package/dist/src/schedule/days.js +68 -0
- package/dist/src/schedule/days.js.map +1 -0
- package/dist/src/schedule/events.d.ts +433 -0
- package/dist/src/schedule/events.d.ts.map +1 -0
- package/dist/src/schedule/events.js +851 -0
- package/dist/src/schedule/events.js.map +1 -0
- package/dist/src/schedule/index.d.ts +150 -0
- package/dist/src/schedule/index.d.ts.map +1 -0
- package/dist/src/schedule/index.js +132 -0
- package/dist/src/schedule/index.js.map +1 -0
- package/dist/src/schedule/library.d.ts +70 -0
- package/dist/src/schedule/library.d.ts.map +1 -0
- package/dist/src/schedule/library.js +102 -0
- package/dist/src/schedule/library.js.map +1 -0
- package/dist/src/schedule/patch.d.ts +74 -0
- package/dist/src/schedule/patch.d.ts.map +1 -0
- package/dist/src/schedule/patch.js +68 -0
- package/dist/src/schedule/patch.js.map +1 -0
- package/dist/src/schedule/record-window.d.ts +189 -0
- package/dist/src/schedule/record-window.d.ts.map +1 -0
- package/dist/src/schedule/record-window.js +95 -0
- package/dist/src/schedule/record-window.js.map +1 -0
- package/dist/src/schedule/resources.d.ts +165 -0
- package/dist/src/schedule/resources.d.ts.map +1 -0
- package/dist/src/schedule/resources.js +234 -0
- package/dist/src/schedule/resources.js.map +1 -0
- package/dist/src/schedule/templates.d.ts +47 -0
- package/dist/src/schedule/templates.d.ts.map +1 -0
- package/dist/src/schedule/templates.js +61 -0
- package/dist/src/schedule/templates.js.map +1 -0
- package/dist/src/schedule/types.d.ts +1677 -0
- package/dist/src/schedule/types.d.ts.map +1 -0
- package/dist/src/schedule/types.js +374 -0
- package/dist/src/schedule/types.js.map +1 -0
- package/dist/src/schedule/window.d.ts +154 -0
- package/dist/src/schedule/window.d.ts.map +1 -0
- package/dist/src/schedule/window.js +363 -0
- package/dist/src/schedule/window.js.map +1 -0
- package/dist/src/sheet/bridge.d.ts +385 -0
- package/dist/src/sheet/bridge.d.ts.map +1 -0
- package/dist/src/sheet/bridge.js +809 -0
- package/dist/src/sheet/bridge.js.map +1 -0
- package/dist/src/sheet/columns.d.ts +410 -0
- package/dist/src/sheet/columns.d.ts.map +1 -0
- package/dist/src/sheet/columns.js +99 -0
- package/dist/src/sheet/columns.js.map +1 -0
- package/dist/src/sheet/context-bridge.d.ts +48 -0
- package/dist/src/sheet/context-bridge.d.ts.map +1 -0
- package/dist/src/sheet/context-bridge.js +216 -0
- package/dist/src/sheet/context-bridge.js.map +1 -0
- package/dist/src/sheet/draft-bridge.d.ts +37 -0
- package/dist/src/sheet/draft-bridge.d.ts.map +1 -0
- package/dist/src/sheet/draft-bridge.js +153 -0
- package/dist/src/sheet/draft-bridge.js.map +1 -0
- package/dist/src/sheet/drafts.d.ts +14 -0
- package/dist/src/sheet/drafts.d.ts.map +1 -0
- package/dist/src/sheet/drafts.js +14 -0
- package/dist/src/sheet/drafts.js.map +1 -0
- package/dist/src/sheet/editing-bridge.d.ts +40 -0
- package/dist/src/sheet/editing-bridge.d.ts.map +1 -0
- package/dist/src/sheet/editing-bridge.js +231 -0
- package/dist/src/sheet/editing-bridge.js.map +1 -0
- package/dist/src/sheet/editing-types.d.ts +268 -0
- package/dist/src/sheet/editing-types.d.ts.map +1 -0
- package/dist/src/sheet/editing-types.js +34 -0
- package/dist/src/sheet/editing-types.js.map +1 -0
- package/dist/src/sheet/edits.d.ts +37 -0
- package/dist/src/sheet/edits.d.ts.map +1 -0
- package/dist/src/sheet/edits.js +31 -0
- package/dist/src/sheet/edits.js.map +1 -0
- package/dist/src/sheet/fields.d.ts +693 -0
- package/dist/src/sheet/fields.d.ts.map +1 -0
- package/dist/src/sheet/fields.js +280 -0
- package/dist/src/sheet/fields.js.map +1 -0
- package/dist/src/sheet/group.d.ts +165 -0
- package/dist/src/sheet/group.d.ts.map +1 -0
- package/dist/src/sheet/group.js +52 -0
- package/dist/src/sheet/group.js.map +1 -0
- package/dist/src/sheet/index.d.ts +542 -0
- package/dist/src/sheet/index.d.ts.map +1 -0
- package/dist/src/sheet/index.js +387 -0
- package/dist/src/sheet/index.js.map +1 -0
- package/dist/src/sheet/library.d.ts +284 -0
- package/dist/src/sheet/library.d.ts.map +1 -0
- package/dist/src/sheet/library.js +259 -0
- package/dist/src/sheet/library.js.map +1 -0
- package/dist/src/sheet/link.d.ts +398 -0
- package/dist/src/sheet/link.d.ts.map +1 -0
- package/dist/src/sheet/link.js +228 -0
- package/dist/src/sheet/link.js.map +1 -0
- package/dist/src/sheet/record.d.ts +75 -0
- package/dist/src/sheet/record.d.ts.map +1 -0
- package/dist/src/sheet/record.js +128 -0
- package/dist/src/sheet/record.js.map +1 -0
- package/dist/src/sheet/registers.d.ts +681 -0
- package/dist/src/sheet/registers.d.ts.map +1 -0
- package/dist/src/sheet/registers.js +671 -0
- package/dist/src/sheet/registers.js.map +1 -0
- package/dist/src/sheet/root.d.ts +329 -0
- package/dist/src/sheet/root.d.ts.map +1 -0
- package/dist/src/sheet/root.js +511 -0
- package/dist/src/sheet/root.js.map +1 -0
- package/dist/src/sheet/seed-bridge.d.ts +14 -0
- package/dist/src/sheet/seed-bridge.d.ts.map +1 -0
- package/dist/src/sheet/seed-bridge.js +51 -0
- package/dist/src/sheet/seed-bridge.js.map +1 -0
- package/dist/src/sheet/sheet.d.ts +11819 -0
- package/dist/src/sheet/sheet.d.ts.map +1 -0
- package/dist/src/sheet/sheet.js +236 -0
- package/dist/src/sheet/sheet.js.map +1 -0
- package/dist/src/sheet/sub-rows.d.ts +299 -0
- package/dist/src/sheet/sub-rows.d.ts.map +1 -0
- package/dist/src/sheet/sub-rows.js +272 -0
- package/dist/src/sheet/sub-rows.js.map +1 -0
- package/dist/src/sheet/templates.d.ts +161 -0
- package/dist/src/sheet/templates.d.ts.map +1 -0
- package/dist/src/sheet/templates.js +122 -0
- package/dist/src/sheet/templates.js.map +1 -0
- package/dist/src/sheet/transactions.d.ts +76 -0
- package/dist/src/sheet/transactions.d.ts.map +1 -0
- package/dist/src/sheet/transactions.js +40 -0
- package/dist/src/sheet/transactions.js.map +1 -0
- package/dist/src/sheet/types.d.ts +15226 -0
- package/dist/src/sheet/types.d.ts.map +1 -0
- package/dist/src/sheet/types.js +1070 -0
- package/dist/src/sheet/types.js.map +1 -0
- package/dist/src/sheet/views.d.ts +29 -0
- package/dist/src/sheet/views.d.ts.map +1 -0
- package/dist/src/sheet/views.js +43 -0
- package/dist/src/sheet/views.js.map +1 -0
- package/dist/src/studio/component.d.ts.map +1 -1
- package/dist/src/studio/component.js +11 -8
- package/dist/src/studio/component.js.map +1 -1
- package/dist/src/utils/derive.d.ts +134 -8
- package/dist/src/utils/derive.d.ts.map +1 -1
- package/dist/src/utils/derive.js +409 -7
- package/dist/src/utils/derive.js.map +1 -1
- package/dist/src/utils/ordered-source.d.ts +38 -0
- package/dist/src/utils/ordered-source.d.ts.map +1 -0
- package/dist/src/utils/ordered-source.js +45 -0
- package/dist/src/utils/ordered-source.js.map +1 -0
- package/dist/src/utils/row-inspector.d.ts +36 -0
- package/dist/src/utils/row-inspector.d.ts.map +1 -0
- package/dist/src/utils/row-inspector.js +49 -0
- package/dist/src/utils/row-inspector.js.map +1 -0
- package/dist/test/bind/data/data.examples.d.ts +21 -19
- package/dist/test/bind/data/data.examples.d.ts.map +1 -1
- package/dist/test/bind/data/data.examples.js +122 -122
- package/dist/test/bind/data/data.examples.js.map +1 -1
- package/dist/test/bind/record/record.examples.d.ts.map +1 -1
- package/dist/test/bind/record/record.examples.js +9 -9
- package/dist/test/bind/record/record.examples.js.map +1 -1
- package/dist/test/calendar/calendar-records.examples.d.ts +228 -0
- package/dist/test/calendar/calendar-records.examples.d.ts.map +1 -0
- package/dist/test/calendar/calendar-records.examples.js +91 -0
- package/dist/test/calendar/calendar-records.examples.js.map +1 -0
- package/dist/test/calendar/calendar.examples.d.ts +776 -0
- package/dist/test/calendar/calendar.examples.d.ts.map +1 -0
- package/dist/test/calendar/calendar.examples.js +336 -0
- package/dist/test/calendar/calendar.examples.js.map +1 -0
- package/dist/test/decision/journal.examples.d.ts +28 -28
- package/dist/test/decision/journal.examples.d.ts.map +1 -1
- package/dist/test/decision/journal.examples.js +4 -4
- package/dist/test/decision/journal.examples.js.map +1 -1
- package/dist/test/decision/queue.examples.d.ts.map +1 -1
- package/dist/test/decision/queue.examples.js +5 -7
- package/dist/test/decision/queue.examples.js.map +1 -1
- package/dist/test/flowchart/flowchart.examples.d.ts +3713 -0
- package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -0
- package/dist/test/flowchart/flowchart.examples.js +465 -0
- package/dist/test/flowchart/flowchart.examples.js.map +1 -0
- package/dist/test/plan/plan-events.examples.d.ts +3666 -0
- package/dist/test/plan/plan-events.examples.d.ts.map +1 -0
- package/dist/test/plan/plan-events.examples.js +773 -0
- package/dist/test/plan/plan-events.examples.js.map +1 -0
- package/dist/test/plan/plan-records.examples.d.ts +3 -0
- package/dist/test/plan/plan-records.examples.d.ts.map +1 -0
- package/dist/test/plan/plan-records.examples.js +45 -0
- package/dist/test/plan/plan-records.examples.js.map +1 -0
- package/dist/test/plan/plan-windows.examples.d.ts +588 -0
- package/dist/test/plan/plan-windows.examples.d.ts.map +1 -0
- package/dist/test/plan/plan-windows.examples.js +170 -0
- package/dist/test/plan/plan-windows.examples.js.map +1 -0
- package/dist/test/plan/plan.examples.d.ts +8095 -0
- package/dist/test/plan/plan.examples.d.ts.map +1 -0
- package/dist/test/plan/plan.examples.js +2500 -0
- package/dist/test/plan/plan.examples.js.map +1 -0
- package/dist/test/roster/domain.examples.d.ts +367 -0
- package/dist/test/roster/domain.examples.d.ts.map +1 -0
- package/dist/test/roster/domain.examples.js +72 -0
- package/dist/test/roster/domain.examples.js.map +1 -0
- package/dist/test/roster/roster-records.examples.d.ts +729 -0
- package/dist/test/roster/roster-records.examples.d.ts.map +1 -0
- package/dist/test/roster/roster-records.examples.js +86 -0
- package/dist/test/roster/roster-records.examples.js.map +1 -0
- package/dist/test/roster/roster.examples.d.ts +750 -0
- package/dist/test/roster/roster.examples.d.ts.map +1 -0
- package/dist/test/roster/roster.examples.js +198 -0
- package/dist/test/roster/roster.examples.js.map +1 -0
- package/dist/test/roster/warehouse.d.ts +87 -0
- package/dist/test/roster/warehouse.d.ts.map +1 -0
- package/dist/test/roster/warehouse.js +883 -0
- package/dist/test/roster/warehouse.js.map +1 -0
- package/dist/test/sheet/sheet-link.examples.d.ts +7 -0
- package/dist/test/sheet/sheet-link.examples.d.ts.map +1 -0
- package/dist/test/sheet/sheet-link.examples.js +41 -0
- package/dist/test/sheet/sheet-link.examples.js.map +1 -0
- package/dist/test/sheet/sheet-records.examples.d.ts +421 -0
- package/dist/test/sheet/sheet-records.examples.d.ts.map +1 -0
- package/dist/test/sheet/sheet-records.examples.js +79 -0
- package/dist/test/sheet/sheet-records.examples.js.map +1 -0
- package/dist/test/sheet/sheet-transactions.examples.d.ts +7 -0
- package/dist/test/sheet/sheet-transactions.examples.d.ts.map +1 -0
- package/dist/test/sheet/sheet-transactions.examples.js +58 -0
- package/dist/test/sheet/sheet-transactions.examples.js.map +1 -0
- package/dist/test/sheet/sheet.examples.d.ts +5562 -0
- package/dist/test/sheet/sheet.examples.d.ts.map +1 -0
- package/dist/test/sheet/sheet.examples.js +1178 -0
- package/dist/test/sheet/sheet.examples.js.map +1 -0
- package/dist/test/studio/studio.examples.d.ts.map +1 -1
- package/dist/test/studio/studio.examples.js +11 -11
- package/dist/test/studio/studio.examples.js.map +1 -1
- 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
|