@elaraai/e3-ui 1.0.97 → 1.0.99
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/README.md +0 -2
- package/dist/src/allocation/adapters.d.ts +1 -1
- package/dist/src/allocation/adapters.js +1 -1
- package/dist/src/allocation/index.d.ts +232 -25
- package/dist/src/allocation/index.d.ts.map +1 -1
- package/dist/src/allocation/index.js +35 -6
- package/dist/src/allocation/index.js.map +1 -1
- package/dist/src/allocation/types.d.ts +41 -0
- package/dist/src/allocation/types.d.ts.map +1 -1
- package/dist/src/allocation/types.js +35 -0
- package/dist/src/allocation/types.js.map +1 -1
- package/dist/src/bind/data-indexed.d.ts +286 -37
- package/dist/src/bind/data-indexed.d.ts.map +1 -1
- package/dist/src/bind/data-indexed.js +259 -38
- package/dist/src/bind/data-indexed.js.map +1 -1
- package/dist/src/bind/data.d.ts +48 -9
- package/dist/src/bind/data.d.ts.map +1 -1
- package/dist/src/bind/data.js +48 -3
- package/dist/src/bind/data.js.map +1 -1
- package/dist/src/bind/record.d.ts +61 -24
- package/dist/src/bind/record.d.ts.map +1 -1
- package/dist/src/bind/record.js +17 -57
- package/dist/src/bind/record.js.map +1 -1
- package/dist/src/calendar/index.d.ts +522 -36
- package/dist/src/calendar/index.d.ts.map +1 -1
- package/dist/src/calendar/index.js +53 -13
- package/dist/src/calendar/index.js.map +1 -1
- package/dist/src/calendar/paged.d.ts +89 -0
- package/dist/src/calendar/paged.d.ts.map +1 -0
- package/dist/src/calendar/paged.js +148 -0
- package/dist/src/calendar/paged.js.map +1 -0
- package/dist/src/flowchart/index.d.ts +35 -31
- package/dist/src/flowchart/index.d.ts.map +1 -1
- package/dist/src/flowchart/index.js +35 -31
- package/dist/src/flowchart/index.js.map +1 -1
- package/dist/src/flowchart/library.d.ts +108 -84
- package/dist/src/flowchart/library.d.ts.map +1 -1
- package/dist/src/flowchart/library.js +108 -84
- package/dist/src/flowchart/library.js.map +1 -1
- package/dist/src/flowchart/payload.d.ts +105 -17
- package/dist/src/flowchart/payload.d.ts.map +1 -1
- package/dist/src/flowchart/payload.js +3 -3
- package/dist/src/flowchart/payload.js.map +1 -1
- package/dist/src/flowchart/values.d.ts +35 -31
- package/dist/src/flowchart/values.d.ts.map +1 -1
- package/dist/src/flowchart/values.js +35 -31
- package/dist/src/flowchart/values.js.map +1 -1
- package/dist/src/flowchart/window.d.ts.map +1 -1
- package/dist/src/flowchart/window.js +3 -2
- package/dist/src/flowchart/window.js.map +1 -1
- package/dist/src/index.d.ts +13 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +20 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal.d.ts +18 -8
- package/dist/src/internal.d.ts.map +1 -1
- package/dist/src/internal.js +40 -10
- package/dist/src/internal.js.map +1 -1
- package/dist/src/plan/assemble.d.ts +8 -0
- package/dist/src/plan/assemble.d.ts.map +1 -1
- package/dist/src/plan/assemble.js +1 -1
- package/dist/src/plan/assemble.js.map +1 -1
- package/dist/src/plan/builders.d.ts +1530 -10
- package/dist/src/plan/builders.d.ts.map +1 -1
- package/dist/src/plan/builders.js +260 -122
- package/dist/src/plan/builders.js.map +1 -1
- package/dist/src/plan/event-rows.d.ts +224 -157
- package/dist/src/plan/event-rows.d.ts.map +1 -1
- package/dist/src/plan/event-rows.js +201 -56
- package/dist/src/plan/event-rows.js.map +1 -1
- package/dist/src/plan/factories.d.ts +72 -4
- package/dist/src/plan/factories.d.ts.map +1 -1
- package/dist/src/plan/factories.js +147 -1
- package/dist/src/plan/factories.js.map +1 -1
- package/dist/src/plan/index.d.ts +152 -125
- package/dist/src/plan/index.d.ts.map +1 -1
- package/dist/src/plan/index.js +138 -122
- package/dist/src/plan/index.js.map +1 -1
- package/dist/src/plan/ir.d.ts +1139 -8
- package/dist/src/plan/ir.d.ts.map +1 -1
- package/dist/src/plan/ir.js +5 -0
- package/dist/src/plan/ir.js.map +1 -1
- package/dist/src/plan/library.d.ts +65 -42
- package/dist/src/plan/library.d.ts.map +1 -1
- package/dist/src/plan/library.js +65 -42
- package/dist/src/plan/library.js.map +1 -1
- package/dist/src/plan/nested-checks.d.ts +146 -0
- package/dist/src/plan/nested-checks.d.ts.map +1 -0
- package/dist/src/plan/nested-checks.js +468 -0
- package/dist/src/plan/nested-checks.js.map +1 -0
- package/dist/src/plan/nested-patch.d.ts +35 -0
- package/dist/src/plan/nested-patch.d.ts.map +1 -0
- package/dist/src/plan/nested-patch.js +143 -0
- package/dist/src/plan/nested-patch.js.map +1 -0
- package/dist/src/plan/nested-read.d.ts +3250 -0
- package/dist/src/plan/nested-read.d.ts.map +1 -0
- package/dist/src/plan/nested-read.js +163 -0
- package/dist/src/plan/nested-read.js.map +1 -0
- package/dist/src/plan/nested.d.ts +280 -0
- package/dist/src/plan/nested.d.ts.map +1 -0
- package/dist/src/plan/nested.js +6 -0
- package/dist/src/plan/nested.js.map +1 -0
- package/dist/src/plan/ordered-source.d.ts +3067 -1
- package/dist/src/plan/ordered-source.d.ts.map +1 -1
- package/dist/src/plan/ordered-source.js +67 -17
- package/dist/src/plan/ordered-source.js.map +1 -1
- package/dist/src/plan/over.d.ts +111 -75
- package/dist/src/plan/over.d.ts.map +1 -1
- package/dist/src/plan/over.js +111 -75
- package/dist/src/plan/over.js.map +1 -1
- package/dist/src/plan/pick.d.ts +15 -3
- package/dist/src/plan/pick.d.ts.map +1 -1
- package/dist/src/plan/pick.js +75 -36
- package/dist/src/plan/pick.js.map +1 -1
- package/dist/src/plan/plan.d.ts +3143 -501
- package/dist/src/plan/plan.d.ts.map +1 -1
- package/dist/src/plan/plan.js +133 -34
- package/dist/src/plan/plan.js.map +1 -1
- package/dist/src/plan/reads.d.ts +421 -0
- package/dist/src/plan/reads.d.ts.map +1 -0
- package/dist/src/plan/reads.js +143 -0
- package/dist/src/plan/reads.js.map +1 -0
- package/dist/src/plan/refs.d.ts +111 -75
- package/dist/src/plan/refs.d.ts.map +1 -1
- package/dist/src/plan/refs.js +111 -75
- package/dist/src/plan/refs.js.map +1 -1
- package/dist/src/plan/root.d.ts +14 -7
- package/dist/src/plan/root.d.ts.map +1 -1
- package/dist/src/plan/root.js +82 -17
- package/dist/src/plan/root.js.map +1 -1
- package/dist/src/plan/series.d.ts +5153 -4331
- package/dist/src/plan/series.d.ts.map +1 -1
- package/dist/src/plan/series.js +1082 -266
- package/dist/src/plan/series.js.map +1 -1
- package/dist/src/plan/shade.d.ts +981 -0
- package/dist/src/plan/shade.d.ts.map +1 -0
- package/dist/src/plan/shade.js +60 -0
- package/dist/src/plan/shade.js.map +1 -0
- package/dist/src/plan/types.d.ts +192 -18
- package/dist/src/plan/types.d.ts.map +1 -1
- package/dist/src/plan/types.js +77 -19
- package/dist/src/plan/types.js.map +1 -1
- package/dist/src/query/builder.d.ts +3 -3
- package/dist/src/query/builder.d.ts.map +1 -1
- package/dist/src/query/builder.js +1 -1
- package/dist/src/query/library.d.ts +3 -3
- package/dist/src/query/library.d.ts.map +1 -1
- package/dist/src/query/library.js +1 -1
- package/dist/src/query/queries.d.ts +2 -2
- package/dist/src/query/queries.js +1 -1
- package/dist/src/query/saved.d.ts +8 -4
- package/dist/src/query/saved.d.ts.map +1 -1
- package/dist/src/query/saved.js +8 -4
- package/dist/src/query/saved.js.map +1 -1
- package/dist/src/query/types.d.ts +8 -3
- package/dist/src/query/types.d.ts.map +1 -1
- package/dist/src/query/types.js +8 -3
- package/dist/src/query/types.js.map +1 -1
- package/dist/src/roster/index.d.ts +583 -39
- package/dist/src/roster/index.d.ts.map +1 -1
- package/dist/src/roster/index.js +109 -35
- package/dist/src/roster/index.js.map +1 -1
- package/dist/src/roster/library.d.ts +12 -2
- package/dist/src/roster/library.d.ts.map +1 -1
- package/dist/src/roster/library.js +8 -0
- package/dist/src/roster/library.js.map +1 -1
- package/dist/src/roster/lists.d.ts +59 -12
- package/dist/src/roster/lists.d.ts.map +1 -1
- package/dist/src/roster/lists.js +51 -58
- package/dist/src/roster/lists.js.map +1 -1
- package/dist/src/roster/targets.d.ts +8 -4
- package/dist/src/roster/targets.d.ts.map +1 -1
- package/dist/src/roster/targets.js +9 -5
- package/dist/src/roster/targets.js.map +1 -1
- package/dist/src/roster/times.d.ts +402 -0
- package/dist/src/roster/times.d.ts.map +1 -1
- package/dist/src/roster/types.d.ts +913 -1
- package/dist/src/roster/types.d.ts.map +1 -1
- package/dist/src/roster/types.js +43 -3
- package/dist/src/roster/types.js.map +1 -1
- package/dist/src/schedule/cell-checks.d.ts +85 -0
- package/dist/src/schedule/cell-checks.d.ts.map +1 -0
- package/dist/src/schedule/cell-checks.js +211 -0
- package/dist/src/schedule/cell-checks.js.map +1 -0
- package/dist/src/schedule/days.d.ts +1 -1
- package/dist/src/schedule/days.js +1 -1
- package/dist/src/schedule/events.d.ts +52 -16
- package/dist/src/schedule/events.d.ts.map +1 -1
- package/dist/src/schedule/events.js +574 -356
- package/dist/src/schedule/events.js.map +1 -1
- package/dist/src/schedule/fields.d.ts +134 -0
- package/dist/src/schedule/fields.d.ts.map +1 -0
- package/dist/src/schedule/fields.js +207 -0
- package/dist/src/schedule/fields.js.map +1 -0
- package/dist/src/schedule/library.d.ts +11 -3
- package/dist/src/schedule/library.d.ts.map +1 -1
- package/dist/src/schedule/library.js +9 -6
- package/dist/src/schedule/library.js.map +1 -1
- package/dist/src/schedule/optimise.d.ts +124 -0
- package/dist/src/schedule/optimise.d.ts.map +1 -0
- package/dist/src/schedule/optimise.js +140 -0
- package/dist/src/schedule/optimise.js.map +1 -0
- package/dist/src/schedule/pages.d.ts +76 -0
- package/dist/src/schedule/pages.d.ts.map +1 -0
- package/dist/src/schedule/pages.js +86 -0
- package/dist/src/schedule/pages.js.map +1 -0
- package/dist/src/schedule/patch.d.ts +1 -1
- package/dist/src/schedule/patch.js +1 -1
- package/dist/src/schedule/periods.d.ts +8 -4
- package/dist/src/schedule/periods.d.ts.map +1 -1
- package/dist/src/schedule/periods.js +1 -1
- package/dist/src/schedule/periods.js.map +1 -1
- package/dist/src/schedule/record-window.d.ts +115 -22
- package/dist/src/schedule/record-window.d.ts.map +1 -1
- package/dist/src/schedule/record-window.js +140 -62
- package/dist/src/schedule/record-window.js.map +1 -1
- package/dist/src/schedule/resources.d.ts +9 -5
- package/dist/src/schedule/resources.d.ts.map +1 -1
- package/dist/src/schedule/resources.js +35 -15
- package/dist/src/schedule/resources.js.map +1 -1
- package/dist/src/schedule/session.d.ts +15 -1
- package/dist/src/schedule/session.d.ts.map +1 -1
- package/dist/src/schedule/session.js +30 -18
- package/dist/src/schedule/session.js.map +1 -1
- package/dist/src/schedule/types.d.ts +455 -37
- package/dist/src/schedule/types.d.ts.map +1 -1
- package/dist/src/schedule/types.js +79 -18
- package/dist/src/schedule/types.js.map +1 -1
- package/dist/src/schedule/window.d.ts +30 -9
- package/dist/src/schedule/window.d.ts.map +1 -1
- package/dist/src/schedule/window.js +101 -49
- package/dist/src/schedule/window.js.map +1 -1
- package/dist/src/schematic/index.d.ts +287 -0
- package/dist/src/schematic/index.d.ts.map +1 -0
- package/dist/src/schematic/index.js +216 -0
- package/dist/src/schematic/index.js.map +1 -0
- package/dist/src/schematic/kinds.d.ts +501 -0
- package/dist/src/schematic/kinds.d.ts.map +1 -0
- package/dist/src/schematic/kinds.js +1027 -0
- package/dist/src/schematic/kinds.js.map +1 -0
- package/dist/src/schematic/layers.d.ts +74 -0
- package/dist/src/schematic/layers.d.ts.map +1 -0
- package/dist/src/schematic/layers.js +99 -0
- package/dist/src/schematic/layers.js.map +1 -0
- package/dist/src/schematic/library.d.ts +202 -0
- package/dist/src/schematic/library.d.ts.map +1 -0
- package/dist/src/schematic/library.js +244 -0
- package/dist/src/schematic/library.js.map +1 -0
- package/dist/src/schematic/payload.d.ts +8310 -0
- package/dist/src/schematic/payload.d.ts.map +1 -0
- package/dist/src/schematic/payload.js +446 -0
- package/dist/src/schematic/payload.js.map +1 -0
- package/dist/src/schematic/schematic.d.ts +27 -0
- package/dist/src/schematic/schematic.d.ts.map +1 -0
- package/dist/src/schematic/schematic.js +17 -0
- package/dist/src/schematic/schematic.js.map +1 -0
- package/dist/src/schematic/shapes.d.ts +150 -0
- package/dist/src/schematic/shapes.d.ts.map +1 -0
- package/dist/src/schematic/shapes.js +171 -0
- package/dist/src/schematic/shapes.js.map +1 -0
- package/dist/src/schematic/templates.d.ts +96 -0
- package/dist/src/schematic/templates.d.ts.map +1 -0
- package/dist/src/schematic/templates.js +91 -0
- package/dist/src/schematic/templates.js.map +1 -0
- package/dist/src/schematic/types.d.ts +5766 -0
- package/dist/src/schematic/types.d.ts.map +1 -0
- package/dist/src/schematic/types.js +688 -0
- package/dist/src/schematic/types.js.map +1 -0
- package/dist/src/schematic/window.d.ts +213 -0
- package/dist/src/schematic/window.d.ts.map +1 -0
- package/dist/src/schematic/window.js +340 -0
- package/dist/src/schematic/window.js.map +1 -0
- package/dist/src/sheet/bridge.d.ts +19 -0
- package/dist/src/sheet/bridge.d.ts.map +1 -1
- package/dist/src/sheet/bridge.js +28 -21
- package/dist/src/sheet/bridge.js.map +1 -1
- package/dist/src/sheet/editing-bridge.d.ts +4 -2
- package/dist/src/sheet/editing-bridge.d.ts.map +1 -1
- package/dist/src/sheet/editing-bridge.js +8 -2
- package/dist/src/sheet/editing-bridge.js.map +1 -1
- package/dist/src/sheet/editing-types.d.ts +9 -5
- package/dist/src/sheet/editing-types.d.ts.map +1 -1
- package/dist/src/sheet/editing-types.js +9 -5
- package/dist/src/sheet/editing-types.js.map +1 -1
- package/dist/src/sheet/index.d.ts +84 -54
- package/dist/src/sheet/index.d.ts.map +1 -1
- package/dist/src/sheet/index.js +81 -53
- package/dist/src/sheet/index.js.map +1 -1
- package/dist/src/sheet/library.d.ts +13 -8
- package/dist/src/sheet/library.d.ts.map +1 -1
- package/dist/src/sheet/library.js +13 -8
- package/dist/src/sheet/library.js.map +1 -1
- package/dist/src/sheet/optimise.d.ts +69 -0
- package/dist/src/sheet/optimise.d.ts.map +1 -0
- package/dist/src/sheet/optimise.js +81 -0
- package/dist/src/sheet/optimise.js.map +1 -0
- package/dist/src/sheet/record.d.ts +1 -1
- package/dist/src/sheet/record.js +2 -2
- package/dist/src/sheet/record.js.map +1 -1
- package/dist/src/sheet/registers.d.ts +157 -133
- package/dist/src/sheet/registers.d.ts.map +1 -1
- package/dist/src/sheet/registers.js +157 -133
- package/dist/src/sheet/registers.js.map +1 -1
- package/dist/src/sheet/root.d.ts +6 -1
- package/dist/src/sheet/root.d.ts.map +1 -1
- package/dist/src/sheet/root.js +17 -5
- package/dist/src/sheet/root.js.map +1 -1
- package/dist/src/sheet/sheet.d.ts +696 -590
- package/dist/src/sheet/sheet.d.ts.map +1 -1
- package/dist/src/sheet/sheet.js +49 -15
- package/dist/src/sheet/sheet.js.map +1 -1
- package/dist/src/sheet/sub-rows.d.ts +106 -76
- package/dist/src/sheet/sub-rows.d.ts.map +1 -1
- package/dist/src/sheet/sub-rows.js +106 -76
- package/dist/src/sheet/sub-rows.js.map +1 -1
- package/dist/src/sheet/types.d.ts +57 -20
- package/dist/src/sheet/types.d.ts.map +1 -1
- package/dist/src/sheet/types.js +4 -8
- package/dist/src/sheet/types.js.map +1 -1
- package/dist/src/studio/builder.d.ts +3 -153
- package/dist/src/studio/builder.d.ts.map +1 -1
- package/dist/src/studio/builder.js +1 -1
- package/dist/src/studio/canvas.d.ts +5 -4
- package/dist/src/studio/canvas.d.ts.map +1 -1
- package/dist/src/studio/canvas.js +8 -7
- package/dist/src/studio/canvas.js.map +1 -1
- package/dist/src/studio/component.d.ts +30 -20
- package/dist/src/studio/component.d.ts.map +1 -1
- package/dist/src/studio/component.js +26 -61
- package/dist/src/studio/component.js.map +1 -1
- package/dist/src/studio/index.d.ts +2 -2
- package/dist/src/studio/index.d.ts.map +1 -1
- package/dist/src/studio/index.js +1 -1
- package/dist/src/studio/index.js.map +1 -1
- package/dist/src/studio/inspector.d.ts +10 -39
- package/dist/src/studio/inspector.d.ts.map +1 -1
- package/dist/src/studio/inspector.js +11 -31
- package/dist/src/studio/inspector.js.map +1 -1
- package/dist/src/studio/library.d.ts +3 -169
- package/dist/src/studio/library.d.ts.map +1 -1
- package/dist/src/studio/library.js +1 -1
- package/dist/src/studio/page.d.ts +0 -8
- package/dist/src/studio/page.d.ts.map +1 -1
- package/dist/src/studio/pages.d.ts +17 -591
- package/dist/src/studio/pages.d.ts.map +1 -1
- package/dist/src/studio/pages.js +17 -44
- package/dist/src/studio/pages.js.map +1 -1
- package/dist/src/studio/palette.d.ts +2 -7
- package/dist/src/studio/palette.d.ts.map +1 -1
- package/dist/src/studio/palette.js +4 -5
- package/dist/src/studio/palette.js.map +1 -1
- package/dist/src/studio/publish.d.ts +8 -18
- package/dist/src/studio/publish.d.ts.map +1 -1
- package/dist/src/studio/publish.js +10 -36
- package/dist/src/studio/publish.js.map +1 -1
- package/dist/src/utils/derive.d.ts +12 -12
- package/dist/src/utils/derive.d.ts.map +1 -1
- package/dist/src/utils/derive.js +5 -2
- package/dist/src/utils/derive.js.map +1 -1
- package/dist/src/utils/keyed-rows.d.ts +41 -0
- package/dist/src/utils/keyed-rows.d.ts.map +1 -0
- package/dist/src/utils/keyed-rows.js +64 -0
- package/dist/src/utils/keyed-rows.js.map +1 -0
- package/dist/src/utils/optimise.d.ts +79 -0
- package/dist/src/utils/optimise.d.ts.map +1 -0
- package/dist/src/utils/optimise.js +46 -0
- package/dist/src/utils/optimise.js.map +1 -0
- package/dist/src/utils/ordered-source.d.ts.map +1 -1
- package/dist/src/utils/ordered-source.js +14 -5
- package/dist/src/utils/ordered-source.js.map +1 -1
- package/dist/test/allocation/allocation.examples.d.ts +1900 -1610
- package/dist/test/allocation/allocation.examples.d.ts.map +1 -1
- package/dist/test/allocation/allocation.examples.js +179 -89
- package/dist/test/allocation/allocation.examples.js.map +1 -1
- package/dist/test/allocation/optimise.examples.d.ts +109 -0
- package/dist/test/allocation/optimise.examples.d.ts.map +1 -0
- package/dist/test/allocation/optimise.examples.js +223 -0
- package/dist/test/allocation/optimise.examples.js.map +1 -0
- package/dist/test/bind/data/data.examples.d.ts +1172 -514
- package/dist/test/bind/data/data.examples.d.ts.map +1 -1
- package/dist/test/bind/data/data.examples.js +284 -164
- package/dist/test/bind/data/data.examples.js.map +1 -1
- package/dist/test/bind/record/record.examples.d.ts +457 -428
- package/dist/test/bind/record/record.examples.d.ts.map +1 -1
- package/dist/test/bind/record/record.examples.js +41 -21
- package/dist/test/bind/record/record.examples.js.map +1 -1
- package/dist/test/calendar/calendar-records.examples.d.ts +162 -170
- package/dist/test/calendar/calendar-records.examples.d.ts.map +1 -1
- package/dist/test/calendar/calendar-records.examples.js +20 -12
- package/dist/test/calendar/calendar-records.examples.js.map +1 -1
- package/dist/test/calendar/calendar-windows.examples.d.ts +9 -0
- package/dist/test/calendar/calendar-windows.examples.d.ts.map +1 -0
- package/dist/test/calendar/calendar-windows.examples.js +111 -0
- package/dist/test/calendar/calendar-windows.examples.js.map +1 -0
- package/dist/test/calendar/calendar.examples.d.ts +1172 -915
- package/dist/test/calendar/calendar.examples.d.ts.map +1 -1
- package/dist/test/calendar/calendar.examples.js +211 -124
- package/dist/test/calendar/calendar.examples.js.map +1 -1
- package/dist/test/calendar/optimise.examples.d.ts +132 -0
- package/dist/test/calendar/optimise.examples.d.ts.map +1 -0
- package/dist/test/calendar/optimise.examples.js +75 -0
- package/dist/test/calendar/optimise.examples.js.map +1 -0
- package/dist/test/examples-package.d.ts +49 -16
- package/dist/test/examples-package.d.ts.map +1 -1
- package/dist/test/examples-package.js +138 -49
- package/dist/test/examples-package.js.map +1 -1
- package/dist/test/flowchart/flowchart.examples.d.ts +3841 -2840
- package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -1
- package/dist/test/flowchart/flowchart.examples.js +211 -121
- package/dist/test/flowchart/flowchart.examples.js.map +1 -1
- package/dist/test/plan/optimise.examples.d.ts +207 -0
- package/dist/test/plan/optimise.examples.d.ts.map +1 -0
- package/dist/test/plan/optimise.examples.js +98 -0
- package/dist/test/plan/optimise.examples.js.map +1 -0
- package/dist/test/plan/plan-events.examples.d.ts +4055 -3279
- package/dist/test/plan/plan-events.examples.d.ts.map +1 -1
- package/dist/test/plan/plan-events.examples.js +492 -319
- package/dist/test/plan/plan-events.examples.js.map +1 -1
- package/dist/test/plan/plan-nested.examples.d.ts +1829 -0
- package/dist/test/plan/plan-nested.examples.d.ts.map +1 -0
- package/dist/test/plan/plan-nested.examples.js +321 -0
- package/dist/test/plan/plan-nested.examples.js.map +1 -0
- package/dist/test/plan/plan-records.examples.d.ts +391 -244
- package/dist/test/plan/plan-records.examples.d.ts.map +1 -1
- package/dist/test/plan/plan-records.examples.js +186 -65
- package/dist/test/plan/plan-records.examples.js.map +1 -1
- package/dist/test/plan/plan-windows.examples.d.ts +1978 -803
- package/dist/test/plan/plan-windows.examples.d.ts.map +1 -1
- package/dist/test/plan/plan-windows.examples.js +269 -99
- package/dist/test/plan/plan-windows.examples.js.map +1 -1
- package/dist/test/plan/plan.examples.d.ts +2238 -5726
- package/dist/test/plan/plan.examples.d.ts.map +1 -1
- package/dist/test/plan/plan.examples.js +846 -973
- package/dist/test/plan/plan.examples.js.map +1 -1
- package/dist/test/query/query.examples.d.ts +5221 -3005
- package/dist/test/query/query.examples.d.ts.map +1 -1
- package/dist/test/query/query.examples.js +169 -118
- package/dist/test/query/query.examples.js.map +1 -1
- package/dist/test/roster/domain.examples.d.ts +804 -0
- package/dist/test/roster/domain.examples.d.ts.map +1 -1
- package/dist/test/roster/domain.examples.js +3 -3
- package/dist/test/roster/domain.examples.js.map +1 -1
- package/dist/test/roster/optimise.examples.d.ts +485 -0
- package/dist/test/roster/optimise.examples.d.ts.map +1 -0
- package/dist/test/roster/optimise.examples.js +155 -0
- package/dist/test/roster/optimise.examples.js.map +1 -0
- package/dist/test/roster/roster-records.examples.d.ts +364 -404
- package/dist/test/roster/roster-records.examples.d.ts.map +1 -1
- package/dist/test/roster/roster-records.examples.js +40 -26
- package/dist/test/roster/roster-records.examples.js.map +1 -1
- package/dist/test/roster/roster.examples.d.ts +5091 -1424
- package/dist/test/roster/roster.examples.d.ts.map +1 -1
- package/dist/test/roster/roster.examples.js +255 -109
- package/dist/test/roster/roster.examples.js.map +1 -1
- package/dist/test/roster/warehouse.d.ts +150 -7
- package/dist/test/roster/warehouse.d.ts.map +1 -1
- package/dist/test/roster/warehouse.js +36 -11
- package/dist/test/roster/warehouse.js.map +1 -1
- package/dist/test/schedule/schedule.examples.d.ts +2646 -2473
- package/dist/test/schedule/schedule.examples.d.ts.map +1 -1
- package/dist/test/schedule/schedule.examples.js +144 -88
- package/dist/test/schedule/schedule.examples.js.map +1 -1
- package/dist/test/schematic/schematic-records.examples.d.ts +454 -0
- package/dist/test/schematic/schematic-records.examples.d.ts.map +1 -0
- package/dist/test/schematic/schematic-records.examples.js +219 -0
- package/dist/test/schematic/schematic-records.examples.js.map +1 -0
- package/dist/test/schematic/schematic.examples.d.ts +2640 -0
- package/dist/test/schematic/schematic.examples.d.ts.map +1 -0
- package/dist/test/schematic/schematic.examples.js +559 -0
- package/dist/test/schematic/schematic.examples.js.map +1 -0
- package/dist/test/sheet/optimise.examples.d.ts +184 -0
- package/dist/test/sheet/optimise.examples.d.ts.map +1 -0
- package/dist/test/sheet/optimise.examples.js +79 -0
- package/dist/test/sheet/optimise.examples.js.map +1 -0
- package/dist/test/sheet/sheet-records.examples.d.ts +208 -356
- package/dist/test/sheet/sheet-records.examples.d.ts.map +1 -1
- package/dist/test/sheet/sheet-records.examples.js +66 -29
- package/dist/test/sheet/sheet-records.examples.js.map +1 -1
- package/dist/test/sheet/sheet.examples.d.ts +3650 -3377
- package/dist/test/sheet/sheet.examples.d.ts.map +1 -1
- package/dist/test/sheet/sheet.examples.js +406 -296
- package/dist/test/sheet/sheet.examples.js.map +1 -1
- package/dist/test/studio/component.examples.js +2 -2
- package/dist/test/studio/component.examples.js.map +1 -1
- package/dist/test/studio/page.examples.js +6 -6
- package/dist/test/studio/page.examples.js.map +1 -1
- package/dist/test/studio/studio.examples.d.ts +2329 -873
- package/dist/test/studio/studio.examples.d.ts.map +1 -1
- package/dist/test/studio/studio.examples.js +155 -107
- package/dist/test/studio/studio.examples.js.map +1 -1
- package/package.json +15 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"allocation.examples.d.ts","sourceRoot":"","sources":["../../../test/allocation/allocation.examples.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AACH,sCAAsC;AACtC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAsB,QAAQ,EAAa,UAAU,EAAuB,OAAO,EAAE,MAAM,eAAe,CAAC;AAYrJ,sDAAsD;AACtD,eAAO,MAAM,QAAQ
|
|
1
|
+
{"version":3,"file":"allocation.examples.d.ts","sourceRoot":"","sources":["../../../test/allocation/allocation.examples.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,56 +6,104 @@ import { jsx as _jsx, jsxs as _jsxs } from "@elaraai/e3-ui/jsx-runtime";
|
|
|
6
6
|
/** @jsxImportSource @elaraai/e3-ui */
|
|
7
7
|
import { ArrayType, DateTimeType, DictType, East, FunctionType, NullType, PatchType, StringType, example, none, some, variant } from "@elaraai/east";
|
|
8
8
|
import e3 from "@elaraai/e3";
|
|
9
|
-
import { Box, Field, Reactive, Slice, UIComponentType, VStack } from "@elaraai/east-ui";
|
|
9
|
+
import { Box, Button, Field, HStack, Reactive, Slice, Text, UIComponentType, VStack } from "@elaraai/east-ui";
|
|
10
10
|
import { Allocation, Data, Func, Record, Schedule } from "@elaraai/e3-ui";
|
|
11
11
|
import { Bay, Kiln, KilnBin, MinimalBin, TimberLoad, YardDay, yardArrivals, yardBayRows, yardBinHistoryRows, yardBinRows, yardDay, yardDayHistoryRows, yardDayRows, yardKilns, yardMinimalBinRows, yardPublishedDay, yardSplitDay, } from "./kiln-yard.js";
|
|
12
12
|
// The kiln yard's own records (`Builder Interfaces Spec.md` §6.5): its bins and the days of its plan, which the board
|
|
13
13
|
// writes, each through its patch door; and what it reads — its kilns, its loads and its bays.
|
|
14
14
|
/** The bins, every day's, each the yard's own row. */
|
|
15
|
-
export const kilnBins = e3.record("kiln_bins", DictType(StringType, KilnBin),
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
export const kilnBins = e3.record("kiln_bins", DictType(StringType, KilnBin), {
|
|
16
|
+
initial: yardBinRows,
|
|
17
|
+
indexes: (index) => ({
|
|
18
|
+
// The bins by their time: what the board's slice reads a day of them through, its navigation writing the range.
|
|
19
|
+
kiln_bins_by_time: index.interval({ from: "at", to: "at" }),
|
|
20
|
+
}),
|
|
21
|
+
mutations: (mutation) => ({
|
|
22
|
+
patch: mutation.patch(),
|
|
23
|
+
}),
|
|
24
|
+
});
|
|
19
25
|
/** The days of the yard's plan, what the board publishes: Tue 4 May issued, Tue 11 and Wed 12 drafts. */
|
|
20
|
-
export const yardDays = e3.record("yard_days", DictType(DateTimeType, YardDay),
|
|
21
|
-
|
|
26
|
+
export const yardDays = e3.record("yard_days", DictType(DateTimeType, YardDay), {
|
|
27
|
+
initial: yardDayRows,
|
|
28
|
+
mutations: (mutation) => ({
|
|
29
|
+
patch: mutation.patch(),
|
|
30
|
+
}),
|
|
31
|
+
});
|
|
22
32
|
/** The same bins, locked for the day: their door, a checked one, refuses every change, naming why — what a Save over it is answered. */
|
|
23
|
-
export const kilnLockedBins = e3.record("kiln_locked_bins", DictType(StringType, KilnBin),
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
33
|
+
export const kilnLockedBins = e3.record("kiln_locked_bins", DictType(StringType, KilnBin), {
|
|
34
|
+
initial: yardBinRows,
|
|
35
|
+
indexes: (index) => ({
|
|
36
|
+
kiln_locked_bins_by_time: index.interval({ from: "at", to: "at" }),
|
|
37
|
+
}),
|
|
38
|
+
mutations: (mutation) => ({
|
|
39
|
+
patch: mutation.reduce(East.function([DictType(StringType, KilnBin), PatchType(DictType(StringType, KilnBin))], DictType(StringType, KilnBin), ($, bins, _patch) => {
|
|
40
|
+
$.error("the yard's bins are locked for the day");
|
|
41
|
+
return bins;
|
|
42
|
+
})),
|
|
43
|
+
}),
|
|
44
|
+
});
|
|
29
45
|
/** The same days, locked: the site office issues them, and their door refuses every change, naming why. */
|
|
30
|
-
export const yardLockedDays = e3.record("yard_locked_days", DictType(DateTimeType, YardDay),
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
46
|
+
export const yardLockedDays = e3.record("yard_locked_days", DictType(DateTimeType, YardDay), {
|
|
47
|
+
initial: yardDayRows,
|
|
48
|
+
mutations: (mutation) => ({
|
|
49
|
+
patch: mutation.reduce(East.function([DictType(DateTimeType, YardDay), PatchType(DictType(DateTimeType, YardDay))], DictType(DateTimeType, YardDay), ($, days, _patch) => {
|
|
50
|
+
$.error("the site office issues the yard's days");
|
|
51
|
+
return days;
|
|
52
|
+
})),
|
|
53
|
+
}),
|
|
54
|
+
});
|
|
35
55
|
/** Two years of the yard's bins, for the board read a day at a time through its slice. */
|
|
36
|
-
export const kilnBinHistory = e3.record("kiln_bin_history", DictType(StringType, KilnBin),
|
|
37
|
-
|
|
38
|
-
|
|
56
|
+
export const kilnBinHistory = e3.record("kiln_bin_history", DictType(StringType, KilnBin), {
|
|
57
|
+
initial: yardBinHistoryRows,
|
|
58
|
+
indexes: (index) => ({
|
|
59
|
+
kiln_bin_history_by_time: index.interval({ from: "at", to: "at" }),
|
|
60
|
+
}),
|
|
61
|
+
mutations: (mutation) => ({
|
|
62
|
+
patch: mutation.patch(),
|
|
63
|
+
}),
|
|
64
|
+
});
|
|
39
65
|
/** The days of those two years, read by key. */
|
|
40
|
-
export const yardDayHistory = e3.record("yard_day_history", DictType(DateTimeType, YardDay),
|
|
41
|
-
|
|
66
|
+
export const yardDayHistory = e3.record("yard_day_history", DictType(DateTimeType, YardDay), {
|
|
67
|
+
initial: yardDayHistoryRows,
|
|
68
|
+
mutations: (mutation) => ({
|
|
69
|
+
patch: mutation.patch(),
|
|
70
|
+
}),
|
|
71
|
+
});
|
|
42
72
|
// The kilns, indexed by group for the narrowing; and by group then max, so a group and a range of max combine, and by name, for a search.
|
|
43
|
-
export const kilns = e3.record("kilns", DictType(StringType, Kiln),
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
73
|
+
export const kilns = e3.record("kilns", DictType(StringType, Kiln), {
|
|
74
|
+
initial: yardKilns,
|
|
75
|
+
indexes: (index) => ({
|
|
76
|
+
kilns_by_group: index.on(["group"]),
|
|
77
|
+
kilns_by_group_max: index.on(["group", "max"]),
|
|
78
|
+
kilns_by_name: index.on(["name"]),
|
|
79
|
+
}),
|
|
80
|
+
mutations: (mutation) => ({
|
|
81
|
+
// The kilns' patch door: another session's edit of the yard's kilns, as the renderer's tests on e3 commit it (#1376).
|
|
82
|
+
patch: mutation.patch(),
|
|
83
|
+
}),
|
|
84
|
+
});
|
|
49
85
|
// Every load the day may book: booked or not, the board tells them apart by its bins; indexed by spec for the narrowing.
|
|
50
|
-
export const arrivals = e3.record("arrivals", DictType(StringType, TimberLoad),
|
|
51
|
-
|
|
86
|
+
export const arrivals = e3.record("arrivals", DictType(StringType, TimberLoad), {
|
|
87
|
+
initial: yardArrivals,
|
|
88
|
+
indexes: (index) => ({
|
|
89
|
+
arrivals_by_spec: index.on(["spec"]),
|
|
90
|
+
}),
|
|
91
|
+
});
|
|
52
92
|
// The unloading bays, by key: each takes one bin an hour, at its offset past the hour; indexed by area, and by cover, for the narrowing.
|
|
53
|
-
export const yardBays = e3.record("yard_bays", DictType(StringType, Bay),
|
|
54
|
-
|
|
55
|
-
|
|
93
|
+
export const yardBays = e3.record("yard_bays", DictType(StringType, Bay), {
|
|
94
|
+
initial: yardBayRows,
|
|
95
|
+
indexes: (index) => ({
|
|
96
|
+
yard_bays_by_area: index.on(["area"]),
|
|
97
|
+
yard_bays_by_cover: index.on(["cover"]),
|
|
98
|
+
}),
|
|
99
|
+
});
|
|
56
100
|
// The smallest board's own bins (§6.5): the board's roles alone.
|
|
57
|
-
export const minimalBins = e3.record("kiln_minimal_bins", DictType(StringType, MinimalBin),
|
|
58
|
-
|
|
101
|
+
export const minimalBins = e3.record("kiln_minimal_bins", DictType(StringType, MinimalBin), {
|
|
102
|
+
initial: yardMinimalBinRows,
|
|
103
|
+
mutations: (mutation) => ({
|
|
104
|
+
patch: mutation.patch(),
|
|
105
|
+
}),
|
|
106
|
+
});
|
|
59
107
|
/** The yard's fit's body: the built-in rules, then a greedy look-ahead over the day's other loads. */
|
|
60
108
|
export const yardFitBody = East.function([Allocation.Types.FitRequest(KilnBin)], Allocation.Types.FitResult, ($, req) => {
|
|
61
109
|
const answer = $.const(Allocation.answer(KilnBin));
|
|
@@ -88,7 +136,7 @@ export const allocationMinimal = example({
|
|
|
88
136
|
description: "The smallest board over the app's own records: bins with only the board's roles — their bay, time, load, m³, split across kilns and drying time — the bays, the kilns and the day's loads, and the yard's fit on e3. No library, no inspector and no Publish; every gesture is still a draft until Save.",
|
|
89
137
|
keywords: ["Allocation", "Schedule.events", "Schedule.resources", "Allocation.arrivals", "Record.bind", "Func.bind", "e3.function", "fit", "minimal", "BuilderFrame", "Save"], inputs: [],
|
|
90
138
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
91
|
-
const bins = $.let(Record.bind(minimalBins
|
|
139
|
+
const bins = $.let(Record.bind(minimalBins));
|
|
92
140
|
const loads = $.let(Data.bind(arrivals));
|
|
93
141
|
const yard = $.let(Data.bind(kilns));
|
|
94
142
|
const bays = $.let(Data.bind(yardBays));
|
|
@@ -108,17 +156,17 @@ export const allocationKilnYard = example({
|
|
|
108
156
|
keywords: ["Allocation", "Schedule.events", "Schedule.resources", "Schedule.periods", "Allocation.arrivals", "Slice.bindRecords", "Data.bindPaged", "Func.bind", "fit", "check", "columns", "links", "Publish", "Library", "narrowing"], inputs: [],
|
|
109
157
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
110
158
|
// What the board writes: the bins and the days of the plan, each through its patch door.
|
|
111
|
-
const bins = $.let(Record.bind(kilnBins
|
|
159
|
+
const bins = $.let(Record.bind(kilnBins));
|
|
112
160
|
const entries = $.let(Data.bindPaged(kilnBins));
|
|
113
|
-
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: [
|
|
114
|
-
const days = $.let(Record.bind(yardDays
|
|
161
|
+
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: ["kiln_bins_by_time"] }));
|
|
162
|
+
const days = $.let(Record.bind(yardDays));
|
|
115
163
|
// Every bay, kiln and load is the calculation scope; the narrowing only chooses which show.
|
|
116
164
|
const yard = $.let(Data.bind(kilns));
|
|
117
165
|
const loads = $.let(Data.bind(arrivals));
|
|
118
166
|
const bays = $.let(Data.bind(yardBays));
|
|
119
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
120
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
121
|
-
const loadIndex = $.let(Data.bindPaged(arrivals, { indexes: [
|
|
167
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area", "yard_bays_by_cover"] }));
|
|
168
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group_max", "kilns_by_name"] }));
|
|
169
|
+
const loadIndex = $.let(Data.bindPaged(arrivals, { indexes: ["arrivals_by_spec"] }));
|
|
122
170
|
const slice = $.let(Slice.bindRecords("ex.allocationKilnYard", {
|
|
123
171
|
// The day's bins: the board's navigation writes the range; no chip picks the day.
|
|
124
172
|
bin: { source: byTime, range: "at" },
|
|
@@ -180,17 +228,17 @@ export const allocationTable = example({
|
|
|
180
228
|
description: "The kiln yard as a Table: one row per bay slot and one per extra bin of a batch, in four foldable time bands, narrowed by the bays' area or cover, the kilns' group, max or name, and the loads' spec; the same drafts, library and inspector as the Timeline.",
|
|
181
229
|
keywords: ["Allocation", "Table", "Schedule.events", "Schedule.resources", "Schedule.periods", "Allocation.arrivals", "Func.bind", "columns", "Chooser", "Slice.bindRecords"], inputs: [],
|
|
182
230
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
183
|
-
const bins = $.let(Record.bind(kilnBins
|
|
231
|
+
const bins = $.let(Record.bind(kilnBins));
|
|
184
232
|
const entries = $.let(Data.bindPaged(kilnBins));
|
|
185
|
-
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: [
|
|
186
|
-
const days = $.let(Record.bind(yardDays
|
|
233
|
+
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: ["kiln_bins_by_time"] }));
|
|
234
|
+
const days = $.let(Record.bind(yardDays));
|
|
187
235
|
// Every bay, kiln and load is the calculation scope; the narrowing only chooses which show.
|
|
188
236
|
const yard = $.let(Data.bind(kilns));
|
|
189
237
|
const loads = $.let(Data.bind(arrivals));
|
|
190
238
|
const bays = $.let(Data.bind(yardBays));
|
|
191
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
192
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
193
|
-
const loadIndex = $.let(Data.bindPaged(arrivals, { indexes: [
|
|
239
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area", "yard_bays_by_cover"] }));
|
|
240
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group_max", "kilns_by_name"] }));
|
|
241
|
+
const loadIndex = $.let(Data.bindPaged(arrivals, { indexes: ["arrivals_by_spec"] }));
|
|
194
242
|
const slice = $.let(Slice.bindRecords("ex.allocationTable", {
|
|
195
243
|
bin: { source: byTime, range: "at" },
|
|
196
244
|
bays: { source: bayIndex, icon: { prefix: "fas", name: "warehouse" },
|
|
@@ -235,16 +283,16 @@ export const allocationLabels = example({
|
|
|
235
283
|
description: "The kiln yard in its own words: labels={{ lane: \"Bay\", arrival: { one: \"Delivery\", other: \"Deliveries\" }, resource: \"Kiln\", quantity: \"Vol\" }} names the board's lanes, arrivals, resources and quantity everywhere it writes them — the Table's heads, the Chooser, the placeholders, the drag captions, the banners and the narrowing's summary — and table={{ bands }} sets the Table's time bands to the yard's shifts.",
|
|
236
284
|
keywords: ["Allocation", "labels", "nouns", "arrival", "Table", "bands", "Schedule.events", "Allocation.arrivals", "Func.bind"], inputs: [],
|
|
237
285
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
238
|
-
const bins = $.let(Record.bind(kilnBins
|
|
286
|
+
const bins = $.let(Record.bind(kilnBins));
|
|
239
287
|
const entries = $.let(Data.bindPaged(kilnBins));
|
|
240
|
-
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: [
|
|
241
|
-
const days = $.let(Record.bind(yardDays
|
|
288
|
+
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: ["kiln_bins_by_time"] }));
|
|
289
|
+
const days = $.let(Record.bind(yardDays));
|
|
242
290
|
// Every bay and kiln is the calculation scope; the narrowing only chooses which show.
|
|
243
291
|
const yard = $.let(Data.bind(kilns));
|
|
244
292
|
const loads = $.let(Data.bind(arrivals));
|
|
245
293
|
const bays = $.let(Data.bind(yardBays));
|
|
246
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
247
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
294
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area"] }));
|
|
295
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group"] }));
|
|
248
296
|
const slice = $.let(Slice.bindRecords("ex.allocationLabels", {
|
|
249
297
|
bin: { source: byTime, range: "at" },
|
|
250
298
|
bays: { source: bayIndex, fields: { area: { label: "Area", hints: ["North", "South"] } } },
|
|
@@ -285,16 +333,16 @@ export const allocationPublished = example({
|
|
|
285
333
|
description: "A published day, Tue 4 May, its status the yard's own day issued: read-only under its banner; navigation, the narrowing, the focus, links and the inspector still work.",
|
|
286
334
|
keywords: ["Allocation", "Schedule.periods", "Publish", "published", "readOnly", "Record.bind"], inputs: [],
|
|
287
335
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
288
|
-
const bins = $.let(Record.bind(kilnBins
|
|
336
|
+
const bins = $.let(Record.bind(kilnBins));
|
|
289
337
|
const entries = $.let(Data.bindPaged(kilnBins));
|
|
290
|
-
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: [
|
|
291
|
-
const days = $.let(Record.bind(yardDays
|
|
338
|
+
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: ["kiln_bins_by_time"] }));
|
|
339
|
+
const days = $.let(Record.bind(yardDays));
|
|
292
340
|
// Every bay and kiln is the calculation scope; the narrowing only chooses which show.
|
|
293
341
|
const yard = $.let(Data.bind(kilns));
|
|
294
342
|
const loads = $.let(Data.bind(arrivals));
|
|
295
343
|
const bays = $.let(Data.bind(yardBays));
|
|
296
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
297
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
344
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area"] }));
|
|
345
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group"] }));
|
|
298
346
|
const slice = $.let(Slice.bindRecords("ex.allocationPublished", {
|
|
299
347
|
bin: { source: byTime, range: "at" },
|
|
300
348
|
bays: { source: bayIndex, fields: { area: { label: "Area", hints: ["North", "South"] } } },
|
|
@@ -335,15 +383,15 @@ export const allocationNoPublish = example({
|
|
|
335
383
|
description: "The kiln yard with no `periods`: no status chip and no Publish; Save writes the day's bins as drafts.",
|
|
336
384
|
keywords: ["Allocation", "periods", "publish", "Save", "Schedule.events", "Record.bind"], inputs: [],
|
|
337
385
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
338
|
-
const bins = $.let(Record.bind(kilnBins
|
|
386
|
+
const bins = $.let(Record.bind(kilnBins));
|
|
339
387
|
const entries = $.let(Data.bindPaged(kilnBins));
|
|
340
|
-
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: [
|
|
388
|
+
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: ["kiln_bins_by_time"] }));
|
|
341
389
|
// Every bay and kiln is the calculation scope; the narrowing only chooses which show.
|
|
342
390
|
const yard = $.let(Data.bind(kilns));
|
|
343
391
|
const loads = $.let(Data.bind(arrivals));
|
|
344
392
|
const bays = $.let(Data.bind(yardBays));
|
|
345
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
346
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
393
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area"] }));
|
|
394
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group"] }));
|
|
347
395
|
const slice = $.let(Slice.bindRecords("ex.allocationNoPublish", {
|
|
348
396
|
bin: { source: byTime, range: "at" },
|
|
349
397
|
bays: { source: bayIndex, fields: { area: { label: "Area", hints: ["North", "South"] } } },
|
|
@@ -384,16 +432,16 @@ export const allocationSplit = example({
|
|
|
384
432
|
description: "Loads split across kilns on Wed 12 May: each bin's parts on their kilns, one load with 4 m³ unallocated and its Partly allocated issue, and a link to each part.",
|
|
385
433
|
keywords: ["Allocation", "split", "parts", "unallocated", "Find a fit", "links", "Schedule.events"], inputs: [],
|
|
386
434
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
387
|
-
const bins = $.let(Record.bind(kilnBins
|
|
435
|
+
const bins = $.let(Record.bind(kilnBins));
|
|
388
436
|
const entries = $.let(Data.bindPaged(kilnBins));
|
|
389
|
-
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: [
|
|
390
|
-
const days = $.let(Record.bind(yardDays
|
|
437
|
+
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: ["kiln_bins_by_time"] }));
|
|
438
|
+
const days = $.let(Record.bind(yardDays));
|
|
391
439
|
// Every bay and kiln is the calculation scope; the narrowing only chooses which show.
|
|
392
440
|
const yard = $.let(Data.bind(kilns));
|
|
393
441
|
const loads = $.let(Data.bind(arrivals));
|
|
394
442
|
const bays = $.let(Data.bind(yardBays));
|
|
395
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
396
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
443
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area"] }));
|
|
444
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group"] }));
|
|
397
445
|
const slice = $.let(Slice.bindRecords("ex.allocationSplit", {
|
|
398
446
|
bin: { source: byTime, range: "at" },
|
|
399
447
|
bays: { source: bayIndex, fields: { area: { label: "Area", hints: ["North", "South"] } } },
|
|
@@ -432,20 +480,20 @@ export const allocationSplit = example({
|
|
|
432
480
|
});
|
|
433
481
|
export const allocationWindowed = example({
|
|
434
482
|
description: "Two years of bins read a day at a time through the slice's bin source — an interval index over their times, its range the board's own navigation — and the plan's days by key: only the active day and the open picker's month are requested, never a record whole.",
|
|
435
|
-
keywords: ["Allocation", "Schedule.events", "Schedule.periods", "Slice.bindRecords", "Data.bindPaged", "
|
|
483
|
+
keywords: ["Allocation", "Schedule.events", "Schedule.periods", "Slice.bindRecords", "Data.bindPaged", "indexes", "interval", "history", "entries", "BuilderFrame", "Save", "Publish"], inputs: [],
|
|
436
484
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
437
|
-
const bins = $.let(Record.bind(kilnBinHistory
|
|
485
|
+
const bins = $.let(Record.bind(kilnBinHistory));
|
|
438
486
|
const entries = $.let(Data.bindPaged(kilnBinHistory));
|
|
439
|
-
const byTime = $.let(Data.bindPaged(kilnBinHistory, { indexes: [
|
|
487
|
+
const byTime = $.let(Data.bindPaged(kilnBinHistory, { indexes: ["kiln_bin_history_by_time"] }));
|
|
440
488
|
// The days of the plan read by key: the day, and the open picker's month.
|
|
441
|
-
const days = $.let(Record.bind(yardDayHistory
|
|
489
|
+
const days = $.let(Record.bind(yardDayHistory));
|
|
442
490
|
const dayEntries = $.let(Data.bindPaged(yardDayHistory));
|
|
443
491
|
// Every bay and kiln is the calculation scope; the narrowing only chooses which show.
|
|
444
492
|
const yard = $.let(Data.bind(kilns));
|
|
445
493
|
const loads = $.let(Data.bind(arrivals));
|
|
446
494
|
const bays = $.let(Data.bind(yardBays));
|
|
447
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
448
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
495
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area"] }));
|
|
496
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group"] }));
|
|
449
497
|
const slice = $.let(Slice.bindRecords("ex.allocationWindowed", {
|
|
450
498
|
// The day's bins: the board's navigation writes the range.
|
|
451
499
|
bin: { source: byTime, range: "at" },
|
|
@@ -487,16 +535,16 @@ export const allocationMobile = example({
|
|
|
487
535
|
description: "The kiln yard in a 390px container: a card per kiln (or per slot in the Table) with Book, Reserve, Allocate, Unlink and Back to Arrivals in anchored popovers; no drag source or target.",
|
|
488
536
|
keywords: ["Allocation", "mobile", "narrow", "cards", "Schedule.events", "Record.bind"], inputs: [],
|
|
489
537
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
490
|
-
const bins = $.let(Record.bind(kilnBins
|
|
538
|
+
const bins = $.let(Record.bind(kilnBins));
|
|
491
539
|
const entries = $.let(Data.bindPaged(kilnBins));
|
|
492
|
-
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: [
|
|
493
|
-
const days = $.let(Record.bind(yardDays
|
|
540
|
+
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: ["kiln_bins_by_time"] }));
|
|
541
|
+
const days = $.let(Record.bind(yardDays));
|
|
494
542
|
// Every bay and kiln is the calculation scope; the narrowing only chooses which show.
|
|
495
543
|
const yard = $.let(Data.bind(kilns));
|
|
496
544
|
const loads = $.let(Data.bind(arrivals));
|
|
497
545
|
const bays = $.let(Data.bind(yardBays));
|
|
498
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
499
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
546
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area"] }));
|
|
547
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group"] }));
|
|
500
548
|
const slice = $.let(Slice.bindRecords("ex.allocationMobile", {
|
|
501
549
|
bin: { source: byTime, range: "at" },
|
|
502
550
|
bays: { source: bayIndex, fields: { area: { label: "Area", hints: ["North", "South"] } } },
|
|
@@ -537,16 +585,16 @@ export const allocationCustomBin = example({
|
|
|
537
585
|
description: "The bin kind's own inspector: the yard's typed bin form — its m³ and its loading instruction, each change the bin written back whole — in place of the built-in quantity field and the row's other fields.",
|
|
538
586
|
keywords: ["Allocation", "Schedule.events", "inspector", "bin", "Field", "typed form"], inputs: [],
|
|
539
587
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
540
|
-
const bins = $.let(Record.bind(kilnBins
|
|
588
|
+
const bins = $.let(Record.bind(kilnBins));
|
|
541
589
|
const entries = $.let(Data.bindPaged(kilnBins));
|
|
542
|
-
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: [
|
|
543
|
-
const days = $.let(Record.bind(yardDays
|
|
590
|
+
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: ["kiln_bins_by_time"] }));
|
|
591
|
+
const days = $.let(Record.bind(yardDays));
|
|
544
592
|
// Every bay and kiln is the calculation scope; the narrowing only chooses which show.
|
|
545
593
|
const yard = $.let(Data.bind(kilns));
|
|
546
594
|
const loads = $.let(Data.bind(arrivals));
|
|
547
595
|
const bays = $.let(Data.bind(yardBays));
|
|
548
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
549
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
596
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area"] }));
|
|
597
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group"] }));
|
|
550
598
|
const slice = $.let(Slice.bindRecords("ex.allocationCustomBin", {
|
|
551
599
|
bin: { source: byTime, range: "at" },
|
|
552
600
|
bays: { source: bayIndex, fields: { area: { label: "Area", hints: ["North", "South"] } } },
|
|
@@ -594,16 +642,16 @@ export const allocationFitRule = example({
|
|
|
594
642
|
description: "The ready-made fit with one yard rule over it, as an e3.function: a bulk kiln takes no load under 20 m³, so LD-2235 (8 m³) fits K-305 alone.",
|
|
595
643
|
keywords: ["Allocation", "fit", "e3.function", "Func.bind", "Allocation.fit", "Allocation.answer", "rule"], inputs: [],
|
|
596
644
|
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
597
|
-
const bins = $.let(Record.bind(kilnBins
|
|
645
|
+
const bins = $.let(Record.bind(kilnBins));
|
|
598
646
|
const entries = $.let(Data.bindPaged(kilnBins));
|
|
599
|
-
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: [
|
|
600
|
-
const days = $.let(Record.bind(yardDays
|
|
647
|
+
const byTime = $.let(Data.bindPaged(kilnBins, { indexes: ["kiln_bins_by_time"] }));
|
|
648
|
+
const days = $.let(Record.bind(yardDays));
|
|
601
649
|
// Every bay and kiln is the calculation scope; the narrowing only chooses which show.
|
|
602
650
|
const yard = $.let(Data.bind(kilns));
|
|
603
651
|
const loads = $.let(Data.bind(arrivals));
|
|
604
652
|
const bays = $.let(Data.bind(yardBays));
|
|
605
|
-
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: [
|
|
606
|
-
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: [
|
|
653
|
+
const bayIndex = $.let(Data.bindPaged(yardBays, { indexes: ["yard_bays_by_area"] }));
|
|
654
|
+
const kilnIndex = $.let(Data.bindPaged(kilns, { indexes: ["kilns_by_group"] }));
|
|
607
655
|
const slice = $.let(Slice.bindRecords("ex.allocationFitRule", {
|
|
608
656
|
bin: { source: byTime, range: "at" },
|
|
609
657
|
bays: { source: bayIndex, fields: { area: { label: "Area", hints: ["North", "South"] } } },
|
|
@@ -640,4 +688,46 @@ export const allocationFitRule = example({
|
|
|
640
688
|
] }) });
|
|
641
689
|
} })),
|
|
642
690
|
});
|
|
691
|
+
/** The bins the conflicts example edits, in a record of their own, so no other example's edits meet them. */
|
|
692
|
+
export const conflictBins = e3.record("kiln_conflict_bins", DictType(StringType, MinimalBin), {
|
|
693
|
+
initial: yardMinimalBinRows,
|
|
694
|
+
mutations: (mutation) => ({
|
|
695
|
+
patch: mutation.patch(),
|
|
696
|
+
// Someone else's save: every bin a quarter hour later, and 1 m³ more on each of its kilns, its m³ with them.
|
|
697
|
+
elsewhere: mutation.reduce(East.function([DictType(StringType, MinimalBin)], DictType(StringType, MinimalBin), (_$, bins) => bins.map((_$2, bin) => ({
|
|
698
|
+
bay: bin.bay, at: bin.at.addMinutes(15n), load: bin.load,
|
|
699
|
+
m3: bin.m3.add(bin.kilns.size().toFloat()),
|
|
700
|
+
kilns: bin.kilns.map((_$3, share) => share.add(1.0)),
|
|
701
|
+
dryFor: bin.dryFor,
|
|
702
|
+
})))),
|
|
703
|
+
}),
|
|
704
|
+
});
|
|
705
|
+
/**
|
|
706
|
+
* Your edits meeting someone else's save, in one window: edit, then press
|
|
707
|
+
* Someone else saves, which saves another person's change to the same bins —
|
|
708
|
+
* every bin a quarter hour later, and 1 m³ more on each of its kilns. A bin you
|
|
709
|
+
* moved is a conflict on its time; a bin's m³ you changed is one card, its
|
|
710
|
+
* split across kilns going with it. Each press saves their change again.
|
|
711
|
+
*/
|
|
712
|
+
export const allocationConflicts = example({
|
|
713
|
+
description: "Your edits meeting someone else's save, in one window — move a bin or change its m³ in the panel, then press Someone else saves, which saves another person's change to the same bins (every bin a quarter hour later, 1 m³ more on each of its kilns), so yours conflict and wait to be chosen, an m³ and its split across kilns one card",
|
|
714
|
+
keywords: ["Allocation", "conflict", "conflicts", "someone else", "Choose", "quantity", "split", "Schedule.events", "Record.bind", "mutate", "Button", "inspector", "Save"], inputs: [],
|
|
715
|
+
fn: East.function([], UIComponentType, _$ => _jsx(Reactive, { children: $ => {
|
|
716
|
+
const bins = $.let(Record.bind(conflictBins, ["patch"]));
|
|
717
|
+
const others = $.let(Record.bind(conflictBins, ["elsewhere"]));
|
|
718
|
+
const theirs = $.const(East.function([], NullType, ($) => { $(others.mutate.elsewhere()); }));
|
|
719
|
+
const loads = $.let(Data.bind(arrivals));
|
|
720
|
+
const yard = $.let(Data.bind(kilns));
|
|
721
|
+
const bays = $.let(Data.bind(yardBays));
|
|
722
|
+
const fit = $.let(Func.bind(minimalFit));
|
|
723
|
+
return _jsxs(VStack, { gap: "3", align: "stretch", children: [_jsxs(HStack, { gap: "3", children: [_jsx(Button, { variant: "outline", onClick: theirs, loading: others.mutate.pending(), children: "Someone else saves" }), _jsx(Text, { color: "fg.muted", children: "Their change: every bin a quarter hour later, 1 m\u00B3 more on each of its kilns" })] }), _jsx(Box, { width: "100%", height: "760px", children: _jsx(Allocation, { id: "allocationConflicts", fit: fit, inspector: true, view: { date: yardDay }, events: { bin: Schedule.events(bins, {
|
|
724
|
+
name: "Bin", icon: "box",
|
|
725
|
+
at: "at", resource: { field: "bay", of: "bays" }, arrival: "load",
|
|
726
|
+
quantity: { field: "m3", unit: "m³" }, parts: { field: "kilns", of: "kilns" }, hold: "dryFor",
|
|
727
|
+
}) }, resources: {
|
|
728
|
+
bays: Schedule.resources(bays.read(), { name: "Bays", icon: "warehouse", label: b => b.name, offset: b => b.offset }),
|
|
729
|
+
kilns: Schedule.resources(yard.read(), { name: "Kilns", icon: "fire", label: k => k.name, min: k => k.min, max: k => k.max, jobs: k => k.charges }),
|
|
730
|
+
}, arrivals: Allocation.arrivals(loads.read(), { label: l => l.code, quantity: l => l.m3, hold: l => variant("days", l.dryingDays) }) }) })] });
|
|
731
|
+
} })),
|
|
732
|
+
});
|
|
643
733
|
//# sourceMappingURL=allocation.examples.js.map
|