@elaraai/east-ui 1.0.85 → 1.0.87
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/buttons/button/index.d.ts +4 -0
- package/dist/src/buttons/button/index.d.ts.map +1 -1
- package/dist/src/buttons/button/index.js +8 -1
- package/dist/src/buttons/button/index.js.map +1 -1
- package/dist/src/buttons/button/types.d.ts +6 -5
- package/dist/src/buttons/button/types.d.ts.map +1 -1
- package/dist/src/buttons/button/types.js.map +1 -1
- package/dist/src/buttons/icon-button/index.d.ts +5 -5
- package/dist/src/buttons/icon-button/index.d.ts.map +1 -1
- package/dist/src/buttons/icon-button/index.js +8 -2
- package/dist/src/buttons/icon-button/index.js.map +1 -1
- package/dist/src/buttons/icon-button/types.d.ts +8 -12
- package/dist/src/buttons/icon-button/types.d.ts.map +1 -1
- package/dist/src/buttons/icon-button/types.js +2 -2
- package/dist/src/buttons/icon-button/types.js.map +1 -1
- package/dist/src/buttons/toggle/index.d.ts +4 -0
- package/dist/src/buttons/toggle/index.d.ts.map +1 -1
- package/dist/src/buttons/toggle/index.js +6 -1
- package/dist/src/buttons/toggle/index.js.map +1 -1
- package/dist/src/buttons/toggle/types.d.ts +3 -2
- package/dist/src/buttons/toggle/types.d.ts.map +1 -1
- package/dist/src/buttons/toggle/types.js.map +1 -1
- package/dist/src/charts/chart/index.d.ts.map +1 -1
- package/dist/src/charts/chart/index.js +3 -3
- package/dist/src/charts/chart/index.js.map +1 -1
- package/dist/src/charts/spec/index.d.ts.map +1 -1
- package/dist/src/charts/spec/index.js +5 -2
- package/dist/src/charts/spec/index.js.map +1 -1
- package/dist/src/collections/deck/index.d.ts.map +1 -1
- package/dist/src/collections/deck/index.js +2 -2
- package/dist/src/collections/deck/index.js.map +1 -1
- package/dist/src/collections/index.d.ts +0 -6
- package/dist/src/collections/index.d.ts.map +1 -1
- package/dist/src/collections/index.js +0 -6
- package/dist/src/collections/index.js.map +1 -1
- package/dist/src/collections/library/index.d.ts +1 -1
- package/dist/src/collections/library/index.d.ts.map +1 -1
- package/dist/src/collections/library/index.js +2 -2
- package/dist/src/collections/library/index.js.map +1 -1
- package/dist/src/collections/schematic/index.d.ts.map +1 -1
- package/dist/src/collections/schematic/index.js +2 -2
- package/dist/src/collections/schematic/index.js.map +1 -1
- package/dist/src/collections/table/index.d.ts +1 -1
- package/dist/src/collections/table/index.d.ts.map +1 -1
- package/dist/src/collections/table/index.js +2 -2
- package/dist/src/collections/table/index.js.map +1 -1
- package/dist/src/collections/tree-view/index.d.ts +11 -32
- package/dist/src/collections/tree-view/index.d.ts.map +1 -1
- package/dist/src/collections/tree-view/index.js +15 -10
- package/dist/src/collections/tree-view/index.js.map +1 -1
- package/dist/src/component.d.ts +673 -9344
- package/dist/src/component.d.ts.map +1 -1
- package/dist/src/component.js +5 -259
- package/dist/src/component.js.map +1 -1
- package/dist/src/contracts/approval.d.ts +6 -8
- package/dist/src/contracts/approval.d.ts.map +1 -1
- package/dist/src/contracts/approval.js +6 -8
- package/dist/src/contracts/approval.js.map +1 -1
- package/dist/src/contracts/drag.d.ts +1 -1
- package/dist/src/contracts/drag.d.ts.map +1 -1
- package/dist/src/contracts/drag.js +4 -5
- package/dist/src/contracts/drag.js.map +1 -1
- package/dist/src/contracts/editing.d.ts +19 -19
- package/dist/src/contracts/editing.js +14 -14
- package/dist/src/contracts/fields.d.ts +471 -0
- package/dist/src/contracts/fields.d.ts.map +1 -0
- package/dist/src/contracts/fields.js +492 -0
- package/dist/src/contracts/fields.js.map +1 -0
- package/dist/src/contracts/index.d.ts +1 -0
- package/dist/src/contracts/index.d.ts.map +1 -1
- package/dist/src/contracts/index.js +1 -0
- package/dist/src/contracts/index.js.map +1 -1
- package/dist/src/contracts/indexed-source.d.ts +118 -0
- package/dist/src/contracts/indexed-source.d.ts.map +1 -0
- package/dist/src/contracts/indexed-source.js +89 -0
- package/dist/src/contracts/indexed-source.js.map +1 -0
- package/dist/src/contracts/pick.d.ts +0 -16
- package/dist/src/contracts/pick.d.ts.map +1 -1
- package/dist/src/contracts/review.d.ts +4 -6
- package/dist/src/contracts/review.d.ts.map +1 -1
- package/dist/src/contracts/review.js +4 -6
- package/dist/src/contracts/review.js.map +1 -1
- package/dist/src/contracts/source.d.ts +2 -2
- package/dist/src/contracts/source.d.ts.map +1 -1
- package/dist/src/contracts/source.js.map +1 -1
- package/dist/src/contracts/states.d.ts +1 -3
- package/dist/src/contracts/states.d.ts.map +1 -1
- package/dist/src/contracts/states.js +1 -3
- package/dist/src/contracts/states.js.map +1 -1
- package/dist/src/display/editable-chip/index.d.ts +2 -0
- package/dist/src/display/editable-chip/index.d.ts.map +1 -1
- package/dist/src/display/editable-chip/index.js +4 -1
- package/dist/src/display/editable-chip/index.js.map +1 -1
- package/dist/src/display/icon/index.d.ts +14 -31
- package/dist/src/display/icon/index.d.ts.map +1 -1
- package/dist/src/display/icon/index.js +15 -19
- package/dist/src/display/icon/index.js.map +1 -1
- package/dist/src/display/icon/solid.d.ts +24 -0
- package/dist/src/display/icon/solid.d.ts.map +1 -0
- package/dist/src/display/icon/solid.js +39 -0
- package/dist/src/display/icon/solid.js.map +1 -0
- package/dist/src/display/icon/types.d.ts +14 -38
- package/dist/src/display/icon/types.d.ts.map +1 -1
- package/dist/src/display/icon/types.js +6 -15
- package/dist/src/display/icon/types.js.map +1 -1
- package/dist/src/display/metric-chip/index.d.ts +2 -0
- package/dist/src/display/metric-chip/index.d.ts.map +1 -1
- package/dist/src/display/metric-chip/index.js +4 -1
- package/dist/src/display/metric-chip/index.js.map +1 -1
- package/dist/src/display/stat/index.d.ts +2 -0
- package/dist/src/display/stat/index.d.ts.map +1 -1
- package/dist/src/display/stat/index.js +4 -1
- package/dist/src/display/stat/index.js.map +1 -1
- package/dist/src/display/stat/types.d.ts +3 -5
- package/dist/src/display/stat/types.d.ts.map +1 -1
- package/dist/src/display/stat/types.js +5 -2
- package/dist/src/display/stat/types.js.map +1 -1
- package/dist/src/feedback/banner/index.d.ts +5 -3
- package/dist/src/feedback/banner/index.d.ts.map +1 -1
- package/dist/src/feedback/banner/index.js +4 -1
- package/dist/src/feedback/banner/index.js.map +1 -1
- package/dist/src/feedback/empty-state/index.d.ts +16 -19
- package/dist/src/feedback/empty-state/index.d.ts.map +1 -1
- package/dist/src/feedback/empty-state/index.js +17 -10
- package/dist/src/feedback/empty-state/index.js.map +1 -1
- package/dist/src/feedback/status/index.d.ts +5 -3
- package/dist/src/feedback/status/index.d.ts.map +1 -1
- package/dist/src/feedback/status/index.js +4 -1
- package/dist/src/feedback/status/index.js.map +1 -1
- package/dist/src/index.d.ts +5 -6
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +12 -11
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal.d.ts +23 -16
- package/dist/src/internal.d.ts.map +1 -1
- package/dist/src/internal.js +29 -13
- package/dist/src/internal.js.map +1 -1
- package/dist/src/navigation/index.d.ts +0 -2
- package/dist/src/navigation/index.d.ts.map +1 -1
- package/dist/src/navigation/index.js +0 -2
- package/dist/src/navigation/index.js.map +1 -1
- package/dist/src/navigation/nav-list/index.d.ts +2 -0
- package/dist/src/navigation/nav-list/index.d.ts.map +1 -1
- package/dist/src/navigation/nav-list/index.js +4 -1
- package/dist/src/navigation/nav-list/index.js.map +1 -1
- package/dist/src/navigation/nav-list/types.d.ts +3 -14
- package/dist/src/navigation/nav-list/types.d.ts.map +1 -1
- package/dist/src/navigation/nav-list/types.js.map +1 -1
- package/dist/src/overlays/command-palette/index.d.ts +2 -0
- package/dist/src/overlays/command-palette/index.d.ts.map +1 -1
- package/dist/src/overlays/command-palette/index.js +5 -0
- package/dist/src/overlays/command-palette/index.js.map +1 -1
- package/dist/src/overlays/command-palette/types.d.ts +0 -8
- package/dist/src/overlays/command-palette/types.d.ts.map +1 -1
- package/dist/src/pick/index.d.ts +1 -17
- package/dist/src/pick/index.d.ts.map +1 -1
- package/dist/src/pick/index.js +1 -1
- package/dist/src/platform/slice/index.d.ts +1324 -2039
- package/dist/src/platform/slice/index.d.ts.map +1 -1
- package/dist/src/platform/slice/index.js +55 -74
- package/dist/src/platform/slice/index.js.map +1 -1
- package/dist/src/platform/slice/local.d.ts +743 -0
- package/dist/src/platform/slice/local.d.ts.map +1 -0
- package/dist/src/platform/slice/local.js +133 -0
- package/dist/src/platform/slice/local.js.map +1 -0
- package/dist/src/platform/slice/record-chrome.d.ts +211 -0
- package/dist/src/platform/slice/record-chrome.d.ts.map +1 -0
- package/dist/src/platform/slice/record-chrome.js +52 -0
- package/dist/src/platform/slice/record-chrome.js.map +1 -0
- package/dist/src/platform/slice/record-interval.d.ts +24 -0
- package/dist/src/platform/slice/record-interval.d.ts.map +1 -0
- package/dist/src/platform/slice/record-interval.js +61 -0
- package/dist/src/platform/slice/record-interval.js.map +1 -0
- package/dist/src/platform/slice/record-plan.d.ts +54 -0
- package/dist/src/platform/slice/record-plan.d.ts.map +1 -0
- package/dist/src/platform/slice/record-plan.js +139 -0
- package/dist/src/platform/slice/record-plan.js.map +1 -0
- package/dist/src/platform/slice/record-types.d.ts +2739 -0
- package/dist/src/platform/slice/record-types.d.ts.map +1 -0
- package/dist/src/platform/slice/record-types.js +209 -0
- package/dist/src/platform/slice/record-types.js.map +1 -0
- package/dist/src/platform/slice/record.d.ts +109 -0
- package/dist/src/platform/slice/record.d.ts.map +1 -0
- package/dist/src/platform/slice/record.js +210 -0
- package/dist/src/platform/slice/record.js.map +1 -0
- package/dist/src/reactive/match.d.ts +4 -6
- package/dist/src/reactive/match.d.ts.map +1 -1
- package/dist/src/reactive/match.js +4 -6
- package/dist/src/reactive/match.js.map +1 -1
- package/dist/src/runtime/collections/deck.d.ts.map +1 -1
- package/dist/src/runtime/collections/index.d.ts +0 -6
- package/dist/src/runtime/collections/index.d.ts.map +1 -1
- package/dist/src/runtime/collections/index.js +0 -6
- package/dist/src/runtime/collections/index.js.map +1 -1
- package/dist/src/runtime/display/icon.d.ts +6 -5
- package/dist/src/runtime/display/icon.d.ts.map +1 -1
- package/dist/src/runtime/display/icon.js +6 -5
- package/dist/src/runtime/display/icon.js.map +1 -1
- package/dist/src/runtime/feedback/empty-state.d.ts +5 -5
- package/dist/src/runtime/feedback/empty-state.js +5 -5
- package/dist/src/runtime/layout/dock.d.ts +2 -1
- package/dist/src/runtime/layout/dock.d.ts.map +1 -1
- package/dist/src/runtime/layout/dock.js +2 -1
- package/dist/src/runtime/layout/dock.js.map +1 -1
- package/dist/src/runtime/navigation/index.d.ts +0 -3
- package/dist/src/runtime/navigation/index.d.ts.map +1 -1
- package/dist/src/runtime/navigation/index.js +0 -3
- package/dist/src/runtime/navigation/index.js.map +1 -1
- package/dist/src/runtime/reactive/match.d.ts +2 -3
- package/dist/src/runtime/reactive/match.d.ts.map +1 -1
- package/dist/src/runtime/reactive/match.js +2 -3
- package/dist/src/runtime/reactive/match.js.map +1 -1
- package/dist/src/runtime/record-slice-source.d.ts +78 -0
- package/dist/src/runtime/record-slice-source.d.ts.map +1 -0
- package/dist/src/runtime/record-slice-source.js +201 -0
- package/dist/src/runtime/record-slice-source.js.map +1 -0
- package/dist/src/runtime/record-slice.d.ts +110 -0
- package/dist/src/runtime/record-slice.d.ts.map +1 -0
- package/dist/src/runtime/record-slice.js +374 -0
- package/dist/src/runtime/record-slice.js.map +1 -0
- package/dist/src/runtime/slice.d.ts +11 -13
- package/dist/src/runtime/slice.d.ts.map +1 -1
- package/dist/src/runtime/slice.js +41 -93
- package/dist/src/runtime/slice.js.map +1 -1
- package/dist/src/shared/plot-gutter.d.ts +1 -1
- package/dist/src/shared/plot-gutter.js +1 -1
- package/dist/src/shared/resolve-tag.d.ts +23 -0
- package/dist/src/shared/resolve-tag.d.ts.map +1 -0
- package/dist/src/shared/resolve-tag.js +26 -0
- package/dist/src/shared/resolve-tag.js.map +1 -0
- package/dist/src/shared/tree.d.ts +1 -1
- package/dist/src/shared/tree.js +1 -1
- package/dist/src/slice/breakdown/index.d.ts +1 -1
- package/dist/src/slice/breakdown/index.d.ts.map +1 -1
- package/dist/src/slice/breakdown/index.js +3 -3
- package/dist/src/slice/breakdown/index.js.map +1 -1
- package/dist/src/slice/cohort/index.d.ts +4 -5
- package/dist/src/slice/cohort/index.d.ts.map +1 -1
- package/dist/src/slice/cohort/index.js +6 -7
- package/dist/src/slice/cohort/index.js.map +1 -1
- package/dist/src/slice/filter/index.d.ts +1 -1
- package/dist/src/slice/filter/index.d.ts.map +1 -1
- package/dist/src/slice/filter/index.js +3 -3
- package/dist/src/slice/filter/index.js.map +1 -1
- package/dist/src/slice/index.d.ts +20 -2230
- package/dist/src/slice/index.d.ts.map +1 -1
- package/dist/src/slice/legend/index.d.ts +2 -2
- package/dist/src/slice/legend/index.d.ts.map +1 -1
- package/dist/src/slice/legend/index.js +4 -4
- package/dist/src/slice/legend/index.js.map +1 -1
- package/dist/src/slice/rail/index.d.ts +7 -4
- package/dist/src/slice/rail/index.d.ts.map +1 -1
- package/dist/src/slice/rail/index.js +10 -5
- package/dist/src/slice/rail/index.js.map +1 -1
- package/dist/src/slice/range/index.d.ts +1 -1
- package/dist/src/slice/range/index.d.ts.map +1 -1
- package/dist/src/slice/range/index.js +3 -3
- package/dist/src/slice/range/index.js.map +1 -1
- package/dist/src/slice/record/index.d.ts +171 -0
- package/dist/src/slice/record/index.d.ts.map +1 -0
- package/dist/src/slice/record/index.js +10 -0
- package/dist/src/slice/record/index.js.map +1 -0
- package/dist/src/slice/search/index.d.ts +6 -6
- package/dist/src/slice/search/index.d.ts.map +1 -1
- package/dist/src/slice/search/index.js +7 -7
- package/dist/src/slice/search/index.js.map +1 -1
- package/dist/src/slice/summary/index.d.ts +1 -1
- package/dist/src/slice/summary/index.d.ts.map +1 -1
- package/dist/src/slice/summary/index.js +3 -3
- package/dist/src/slice/summary/index.js.map +1 -1
- package/dist/src/typography/list/index.d.ts +2 -8
- package/dist/src/typography/list/index.d.ts.map +1 -1
- package/dist/src/typography/list/index.js +4 -1
- package/dist/src/typography/list/index.js.map +1 -1
- package/dist/src/typography/list/types.d.ts +0 -8
- package/dist/src/typography/list/types.d.ts.map +1 -1
- package/dist/test/collections/deck.examples.d.ts.map +1 -1
- package/dist/test/collections/deck.examples.js +6 -7
- package/dist/test/collections/deck.examples.js.map +1 -1
- package/dist/test/collections/index.d.ts +0 -1
- package/dist/test/collections/index.d.ts.map +1 -1
- package/dist/test/collections/index.js +0 -1
- package/dist/test/collections/index.js.map +1 -1
- package/dist/test/collections/library.examples.d.ts.map +1 -1
- package/dist/test/collections/library.examples.js +6 -7
- package/dist/test/collections/library.examples.js.map +1 -1
- package/dist/test/collections/schematic.examples.d.ts.map +1 -1
- package/dist/test/collections/schematic.examples.js +11 -19
- package/dist/test/collections/schematic.examples.js.map +1 -1
- package/dist/test/collections/tree-view.examples.js +2 -2
- package/dist/test/contracts/editing.examples.d.ts +1 -0
- package/dist/test/contracts/editing.examples.d.ts.map +1 -1
- package/dist/test/contracts/editing.examples.js +37 -6
- package/dist/test/contracts/editing.examples.js.map +1 -1
- package/dist/test/contracts/fields.examples.d.ts +7 -0
- package/dist/test/contracts/fields.examples.d.ts.map +1 -0
- package/dist/test/contracts/fields.examples.js +42 -0
- package/dist/test/contracts/fields.examples.js.map +1 -0
- package/dist/test/display/avatar.examples.d.ts.map +1 -1
- package/dist/test/display/avatar.examples.js +3 -3
- package/dist/test/display/avatar.examples.js.map +1 -1
- package/dist/test/display/icon.examples.d.ts.map +1 -1
- package/dist/test/display/icon.examples.js +12 -11
- package/dist/test/display/icon.examples.js.map +1 -1
- package/dist/test/feedback/empty-state.examples.js +9 -9
- package/dist/test/feedback/empty-state.examples.js.map +1 -1
- package/dist/test/layout/dock.examples.d.ts +0 -8
- package/dist/test/layout/dock.examples.d.ts.map +1 -1
- package/dist/test/layout/dock.examples.js +2 -42
- package/dist/test/layout/dock.examples.js.map +1 -1
- package/dist/test/layout/snap-grid.examples.d.ts.map +1 -1
- package/dist/test/layout/snap-grid.examples.js +18 -28
- package/dist/test/layout/snap-grid.examples.js.map +1 -1
- package/dist/test/navigation/index.d.ts +0 -2
- package/dist/test/navigation/index.d.ts.map +1 -1
- package/dist/test/navigation/index.js +0 -2
- package/dist/test/navigation/index.js.map +1 -1
- package/dist/test/navigation/nav-list.examples.js.map +1 -1
- package/dist/test/platform/index.d.ts +1 -0
- package/dist/test/platform/index.d.ts.map +1 -1
- package/dist/test/platform/index.js +1 -0
- package/dist/test/platform/index.js.map +1 -1
- package/dist/test/platform/slice-local.examples.d.ts +2 -0
- package/dist/test/platform/slice-local.examples.d.ts.map +1 -0
- package/dist/test/platform/slice-local.examples.js +31 -0
- package/dist/test/platform/slice-local.examples.js.map +1 -0
- package/dist/test/platform/slice.examples.js +61 -61
- package/dist/test/platform/slice.examples.js.map +1 -1
- package/dist/test/slice/slice.examples.d.ts +0 -1
- package/dist/test/slice/slice.examples.d.ts.map +1 -1
- package/dist/test/slice/slice.examples.js +67 -181
- package/dist/test/slice/slice.examples.js.map +1 -1
- package/package.json +4 -4
- package/dist/src/collections/board/index.d.ts +0 -855
- package/dist/src/collections/board/index.d.ts.map +0 -1
- package/dist/src/collections/board/index.js +0 -416
- package/dist/src/collections/board/index.js.map +0 -1
- package/dist/src/collections/board/types.d.ts +0 -111
- package/dist/src/collections/board/types.d.ts.map +0 -1
- package/dist/src/collections/board/types.js +0 -89
- package/dist/src/collections/board/types.js.map +0 -1
- package/dist/src/collections/calendar/index.d.ts +0 -446
- package/dist/src/collections/calendar/index.d.ts.map +0 -1
- package/dist/src/collections/calendar/index.js +0 -287
- package/dist/src/collections/calendar/index.js.map +0 -1
- package/dist/src/collections/calendar/types.d.ts +0 -338
- package/dist/src/collections/calendar/types.d.ts.map +0 -1
- package/dist/src/collections/calendar/types.js +0 -206
- package/dist/src/collections/calendar/types.js.map +0 -1
- package/dist/src/collections/flowchart/index.d.ts +0 -430
- package/dist/src/collections/flowchart/index.d.ts.map +0 -1
- package/dist/src/collections/flowchart/index.js +0 -292
- package/dist/src/collections/flowchart/index.js.map +0 -1
- package/dist/src/collections/flowchart/types.d.ts +0 -333
- package/dist/src/collections/flowchart/types.d.ts.map +0 -1
- package/dist/src/collections/flowchart/types.js +0 -263
- package/dist/src/collections/flowchart/types.js.map +0 -1
- package/dist/src/collections/plan/assemble.d.ts +0 -2274
- package/dist/src/collections/plan/assemble.d.ts.map +0 -1
- package/dist/src/collections/plan/assemble.js +0 -210
- package/dist/src/collections/plan/assemble.js.map +0 -1
- package/dist/src/collections/plan/builders.d.ts +0 -765
- package/dist/src/collections/plan/builders.d.ts.map +0 -1
- package/dist/src/collections/plan/builders.js +0 -673
- package/dist/src/collections/plan/builders.js.map +0 -1
- package/dist/src/collections/plan/factories.d.ts +0 -512
- package/dist/src/collections/plan/factories.d.ts.map +0 -1
- package/dist/src/collections/plan/factories.js +0 -539
- package/dist/src/collections/plan/factories.js.map +0 -1
- package/dist/src/collections/plan/index.d.ts +0 -324
- package/dist/src/collections/plan/index.d.ts.map +0 -1
- package/dist/src/collections/plan/index.js +0 -193
- package/dist/src/collections/plan/index.js.map +0 -1
- package/dist/src/collections/plan/ir.d.ts +0 -2490
- package/dist/src/collections/plan/ir.d.ts.map +0 -1
- package/dist/src/collections/plan/ir.js +0 -107
- package/dist/src/collections/plan/ir.js.map +0 -1
- package/dist/src/collections/plan/pick.d.ts +0 -133
- package/dist/src/collections/plan/pick.d.ts.map +0 -1
- package/dist/src/collections/plan/pick.js +0 -208
- package/dist/src/collections/plan/pick.js.map +0 -1
- package/dist/src/collections/plan/root.d.ts +0 -297
- package/dist/src/collections/plan/root.d.ts.map +0 -1
- package/dist/src/collections/plan/root.js +0 -427
- package/dist/src/collections/plan/root.js.map +0 -1
- package/dist/src/collections/plan/series.d.ts +0 -13887
- package/dist/src/collections/plan/series.d.ts.map +0 -1
- package/dist/src/collections/plan/series.js +0 -1710
- package/dist/src/collections/plan/series.js.map +0 -1
- package/dist/src/collections/plan/types.d.ts +0 -12612
- package/dist/src/collections/plan/types.d.ts.map +0 -1
- package/dist/src/collections/plan/types.js +0 -1345
- package/dist/src/collections/plan/types.js.map +0 -1
- package/dist/src/collections/roster/index.d.ts +0 -787
- package/dist/src/collections/roster/index.d.ts.map +0 -1
- package/dist/src/collections/roster/index.js +0 -325
- package/dist/src/collections/roster/index.js.map +0 -1
- package/dist/src/collections/roster/types.d.ts +0 -97
- package/dist/src/collections/roster/types.d.ts.map +0 -1
- package/dist/src/collections/roster/types.js +0 -72
- package/dist/src/collections/roster/types.js.map +0 -1
- package/dist/src/collections/sheet/bridge.d.ts +0 -376
- package/dist/src/collections/sheet/bridge.d.ts.map +0 -1
- package/dist/src/collections/sheet/bridge.js +0 -773
- package/dist/src/collections/sheet/bridge.js.map +0 -1
- package/dist/src/collections/sheet/columns.d.ts +0 -410
- package/dist/src/collections/sheet/columns.d.ts.map +0 -1
- package/dist/src/collections/sheet/columns.js +0 -99
- package/dist/src/collections/sheet/columns.js.map +0 -1
- package/dist/src/collections/sheet/context-bridge.d.ts +0 -48
- package/dist/src/collections/sheet/context-bridge.d.ts.map +0 -1
- package/dist/src/collections/sheet/context-bridge.js +0 -216
- package/dist/src/collections/sheet/context-bridge.js.map +0 -1
- package/dist/src/collections/sheet/draft-bridge.d.ts +0 -37
- package/dist/src/collections/sheet/draft-bridge.d.ts.map +0 -1
- package/dist/src/collections/sheet/draft-bridge.js +0 -153
- package/dist/src/collections/sheet/draft-bridge.js.map +0 -1
- package/dist/src/collections/sheet/drafts.d.ts +0 -14
- package/dist/src/collections/sheet/drafts.d.ts.map +0 -1
- package/dist/src/collections/sheet/drafts.js +0 -14
- package/dist/src/collections/sheet/drafts.js.map +0 -1
- package/dist/src/collections/sheet/editing-bridge.d.ts +0 -36
- package/dist/src/collections/sheet/editing-bridge.d.ts.map +0 -1
- package/dist/src/collections/sheet/editing-bridge.js +0 -196
- package/dist/src/collections/sheet/editing-bridge.js.map +0 -1
- package/dist/src/collections/sheet/editing-types.d.ts +0 -268
- package/dist/src/collections/sheet/editing-types.d.ts.map +0 -1
- package/dist/src/collections/sheet/editing-types.js +0 -34
- package/dist/src/collections/sheet/editing-types.js.map +0 -1
- package/dist/src/collections/sheet/edits.d.ts +0 -37
- package/dist/src/collections/sheet/edits.d.ts.map +0 -1
- package/dist/src/collections/sheet/edits.js +0 -31
- package/dist/src/collections/sheet/edits.js.map +0 -1
- package/dist/src/collections/sheet/group.d.ts +0 -165
- package/dist/src/collections/sheet/group.d.ts.map +0 -1
- package/dist/src/collections/sheet/group.js +0 -52
- package/dist/src/collections/sheet/group.js.map +0 -1
- package/dist/src/collections/sheet/index.d.ts +0 -351
- package/dist/src/collections/sheet/index.d.ts.map +0 -1
- package/dist/src/collections/sheet/index.js +0 -208
- package/dist/src/collections/sheet/index.js.map +0 -1
- package/dist/src/collections/sheet/link.d.ts +0 -398
- package/dist/src/collections/sheet/link.d.ts.map +0 -1
- package/dist/src/collections/sheet/link.js +0 -228
- package/dist/src/collections/sheet/link.js.map +0 -1
- package/dist/src/collections/sheet/registers.d.ts +0 -278
- package/dist/src/collections/sheet/registers.d.ts.map +0 -1
- package/dist/src/collections/sheet/registers.js +0 -268
- package/dist/src/collections/sheet/registers.js.map +0 -1
- package/dist/src/collections/sheet/root.d.ts +0 -328
- package/dist/src/collections/sheet/root.d.ts.map +0 -1
- package/dist/src/collections/sheet/root.js +0 -432
- package/dist/src/collections/sheet/root.js.map +0 -1
- package/dist/src/collections/sheet/seed-bridge.d.ts +0 -14
- package/dist/src/collections/sheet/seed-bridge.d.ts.map +0 -1
- package/dist/src/collections/sheet/seed-bridge.js +0 -51
- package/dist/src/collections/sheet/seed-bridge.js.map +0 -1
- package/dist/src/collections/sheet/sub-rows.d.ts +0 -249
- package/dist/src/collections/sheet/sub-rows.d.ts.map +0 -1
- package/dist/src/collections/sheet/sub-rows.js +0 -222
- package/dist/src/collections/sheet/sub-rows.js.map +0 -1
- package/dist/src/collections/sheet/transactions.d.ts +0 -76
- package/dist/src/collections/sheet/transactions.d.ts.map +0 -1
- package/dist/src/collections/sheet/transactions.js +0 -40
- package/dist/src/collections/sheet/transactions.js.map +0 -1
- package/dist/src/collections/sheet/types.d.ts +0 -14992
- package/dist/src/collections/sheet/types.d.ts.map +0 -1
- package/dist/src/collections/sheet/types.js +0 -1061
- package/dist/src/collections/sheet/types.js.map +0 -1
- package/dist/src/navigation/app/index.d.ts +0 -150
- package/dist/src/navigation/app/index.d.ts.map +0 -1
- package/dist/src/navigation/app/index.js +0 -191
- package/dist/src/navigation/app/index.js.map +0 -1
- package/dist/src/navigation/pages/index.d.ts +0 -165
- package/dist/src/navigation/pages/index.d.ts.map +0 -1
- package/dist/src/navigation/pages/index.js +0 -152
- package/dist/src/navigation/pages/index.js.map +0 -1
- package/dist/src/navigation/pages/types.d.ts +0 -111
- package/dist/src/navigation/pages/types.d.ts.map +0 -1
- package/dist/src/navigation/pages/types.js +0 -101
- package/dist/src/navigation/pages/types.js.map +0 -1
- package/dist/src/runtime/collections/board.d.ts +0 -73
- package/dist/src/runtime/collections/board.d.ts.map +0 -1
- package/dist/src/runtime/collections/board.js +0 -68
- package/dist/src/runtime/collections/board.js.map +0 -1
- package/dist/src/runtime/collections/calendar.d.ts +0 -54
- package/dist/src/runtime/collections/calendar.d.ts.map +0 -1
- package/dist/src/runtime/collections/calendar.js +0 -54
- package/dist/src/runtime/collections/calendar.js.map +0 -1
- package/dist/src/runtime/collections/flowchart.d.ts +0 -58
- package/dist/src/runtime/collections/flowchart.d.ts.map +0 -1
- package/dist/src/runtime/collections/flowchart.js +0 -54
- package/dist/src/runtime/collections/flowchart.js.map +0 -1
- package/dist/src/runtime/collections/plan.d.ts +0 -181
- package/dist/src/runtime/collections/plan.d.ts.map +0 -1
- package/dist/src/runtime/collections/plan.js +0 -186
- package/dist/src/runtime/collections/plan.js.map +0 -1
- package/dist/src/runtime/collections/roster.d.ts +0 -60
- package/dist/src/runtime/collections/roster.d.ts.map +0 -1
- package/dist/src/runtime/collections/roster.js +0 -59
- package/dist/src/runtime/collections/roster.js.map +0 -1
- package/dist/src/runtime/collections/sheet.d.ts +0 -122
- package/dist/src/runtime/collections/sheet.d.ts.map +0 -1
- package/dist/src/runtime/collections/sheet.js +0 -73
- package/dist/src/runtime/collections/sheet.js.map +0 -1
- package/dist/src/runtime/navigation/app.d.ts +0 -52
- package/dist/src/runtime/navigation/app.d.ts.map +0 -1
- package/dist/src/runtime/navigation/app.js +0 -53
- package/dist/src/runtime/navigation/app.js.map +0 -1
- package/dist/src/runtime/navigation/pages.d.ts +0 -50
- package/dist/src/runtime/navigation/pages.d.ts.map +0 -1
- package/dist/src/runtime/navigation/pages.js +0 -52
- package/dist/src/runtime/navigation/pages.js.map +0 -1
- package/dist/src/runtime/navigation/route.d.ts +0 -46
- package/dist/src/runtime/navigation/route.d.ts.map +0 -1
- package/dist/src/runtime/navigation/route.js +0 -47
- package/dist/src/runtime/navigation/route.js.map +0 -1
- package/dist/test/collections/board.examples.d.ts +0 -18
- package/dist/test/collections/board.examples.d.ts.map +0 -1
- package/dist/test/collections/board.examples.js +0 -297
- package/dist/test/collections/board.examples.js.map +0 -1
- package/dist/test/collections/calendar.examples.d.ts +0 -5
- package/dist/test/collections/calendar.examples.d.ts.map +0 -1
- package/dist/test/collections/calendar.examples.js +0 -147
- package/dist/test/collections/calendar.examples.js.map +0 -1
- package/dist/test/collections/flowchart.examples.d.ts +0 -17
- package/dist/test/collections/flowchart.examples.d.ts.map +0 -1
- package/dist/test/collections/flowchart.examples.js +0 -243
- package/dist/test/collections/flowchart.examples.js.map +0 -1
- package/dist/test/collections/plan.examples.d.ts +0 -200
- package/dist/test/collections/plan.examples.d.ts.map +0 -1
- package/dist/test/collections/plan.examples.js +0 -3665
- package/dist/test/collections/plan.examples.js.map +0 -1
- package/dist/test/collections/roster.examples.d.ts +0 -26
- package/dist/test/collections/roster.examples.d.ts.map +0 -1
- package/dist/test/collections/roster.examples.js +0 -237
- package/dist/test/collections/roster.examples.js.map +0 -1
- package/dist/test/collections/sheet-link.examples.d.ts +0 -7
- package/dist/test/collections/sheet-link.examples.d.ts.map +0 -1
- package/dist/test/collections/sheet-link.examples.js +0 -41
- package/dist/test/collections/sheet-link.examples.js.map +0 -1
- package/dist/test/collections/sheet-transactions.examples.d.ts +0 -7
- package/dist/test/collections/sheet-transactions.examples.d.ts.map +0 -1
- package/dist/test/collections/sheet-transactions.examples.js +0 -58
- package/dist/test/collections/sheet-transactions.examples.js.map +0 -1
- package/dist/test/collections/sheet.examples.d.ts +0 -96
- package/dist/test/collections/sheet.examples.d.ts.map +0 -1
- package/dist/test/collections/sheet.examples.js +0 -1040
- package/dist/test/collections/sheet.examples.js.map +0 -1
- package/dist/test/navigation/app.examples.d.ts +0 -22
- package/dist/test/navigation/app.examples.d.ts.map +0 -1
- package/dist/test/navigation/app.examples.js +0 -136
- package/dist/test/navigation/app.examples.js.map +0 -1
- package/dist/test/navigation/pages.examples.d.ts +0 -13
- package/dist/test/navigation/pages.examples.d.ts.map +0 -1
- package/dist/test/navigation/pages.examples.js +0 -113
- package/dist/test/navigation/pages.examples.js.map +0 -1
- package/dist/test/navigation/route.examples.d.ts +0 -13
- package/dist/test/navigation/route.examples.d.ts.map +0 -1
- package/dist/test/navigation/route.examples.js +0 -69
- package/dist/test/navigation/route.examples.js.map +0 -1
|
@@ -1,787 +0,0 @@
|
|
|
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
|
-
* `Roster` — people-on-shifts scheduling: a people × days-of-week grid of
|
|
7
|
-
* shift chips under the shared event-state grammar (committed / proposed /
|
|
8
|
-
* rejected, with the `model` flavour rendering as a dashed ghost). Takes the
|
|
9
|
-
* two flat tables a dataset naturally provides — people and shifts — each
|
|
10
|
-
* with a chart-style field encoding; the factory joins them by person key.
|
|
11
|
-
* The component owns the week: `days` defaults to Mon–Sun.
|
|
12
|
-
*
|
|
13
|
-
* Declares the drag & drop **target** role: `id` + `sources` connect it to
|
|
14
|
-
* sibling Libraries, and every completed drag (add / move / remove) funnels
|
|
15
|
-
* through one `onDrag` callback as a `DragEventType` value.
|
|
16
|
-
*
|
|
17
|
-
* @packageDocumentation
|
|
18
|
-
*/
|
|
19
|
-
import { type ExprType, type SubtypeExprOrValue, type TypeOf, ArrayType, type BooleanType, FunctionType, IntegerType, NullType, OptionType, StringType, StructType } from "@elaraai/east";
|
|
20
|
-
import { UIComponentType } from "../../component.js";
|
|
21
|
-
import { DensityType, type DensityLiteral } from "../../style/interaction.js";
|
|
22
|
-
import { CellRefType, DragEventType } from "../../contracts/drag.js";
|
|
23
|
-
import { PlannerStateType } from "../../contracts/states.js";
|
|
24
|
-
import { RosterModeType, type RosterModeLiteral } from "./types.js";
|
|
25
|
-
import { ApprovalStateType, RowRefType, type ReviewConfig } from "../../contracts/review.js";
|
|
26
|
-
import { StatusValueType } from "../../feedback/status/types.js";
|
|
27
|
-
export { RosterModeType, type RosterModeLiteral, RosterPersonType, RosterShiftType, } from "./types.js";
|
|
28
|
-
/**
|
|
29
|
-
* East StructType for the Roster component.
|
|
30
|
-
*
|
|
31
|
-
* @remarks
|
|
32
|
-
* Flat resolved tables — the renderer groups shifts into cells by
|
|
33
|
-
* `person × day`. Shift states reuse the Planner event-state grammar
|
|
34
|
-
* ({@link PlannerStateType}); the `model` flavour renders as the dashed
|
|
35
|
-
* ghost with the acceptance affordance. Defined here (not `types.ts`)
|
|
36
|
-
* since #265: the root carries the shared review config, whose `summary`
|
|
37
|
-
* is a `UIComponentType` — `component.ts` mirrors this arm inline with the
|
|
38
|
-
* recursion `node`.
|
|
39
|
-
*
|
|
40
|
-
* @property id - DnD target identity
|
|
41
|
-
* @property sources - Library ids accepted for `add` drags
|
|
42
|
-
* @property mode - `published` (committed-only, immutable) or `edit`
|
|
43
|
-
* @property days - The day columns, in order
|
|
44
|
-
* @property personHeader - The frozen person column's header
|
|
45
|
-
* @property personWidth - Optional CSS width for the frozen person column
|
|
46
|
-
* @property people - The grid rows
|
|
47
|
-
* @property shifts - The shift chips (joined to people by person key)
|
|
48
|
-
* @property density - Optional density
|
|
49
|
-
* @property summary - Optional status-strip text (dirty / ghost counts)
|
|
50
|
-
* @property onDrag - Drag funnel — add / move / remove events
|
|
51
|
-
* @property canDrop - Optional IR-level drop veto over synthesized candidate events
|
|
52
|
-
* @property onSelect - Shift / cell click callback
|
|
53
|
-
* @property onAccept - Ghost-shift acceptance callback (ONE proposed shift)
|
|
54
|
-
* @property onAddAt - Empty-cell click callback (edit mode)
|
|
55
|
-
* @property review - Optional row-level review chrome (shared contract, #265)
|
|
56
|
-
*/
|
|
57
|
-
export declare const RosterRootType: StructType<{
|
|
58
|
-
/** DnD target identity */
|
|
59
|
-
readonly id: StringType;
|
|
60
|
-
/** Library ids accepted for `add` drags */
|
|
61
|
-
readonly sources: ArrayType<StringType>;
|
|
62
|
-
/** `published` (committed-only, immutable) or `edit` */
|
|
63
|
-
readonly mode: import("@elaraai/east").VariantType<{
|
|
64
|
-
readonly published: NullType;
|
|
65
|
-
readonly edit: NullType;
|
|
66
|
-
}>;
|
|
67
|
-
/** The day columns, in order */
|
|
68
|
-
readonly days: ArrayType<StringType>;
|
|
69
|
-
/** The frozen person column's header */
|
|
70
|
-
readonly personHeader: StringType;
|
|
71
|
-
/** Optional CSS width for the frozen person column (none = the Planner-consistent 150px) */
|
|
72
|
-
readonly personWidth: OptionType<StringType>;
|
|
73
|
-
/** The grid rows */
|
|
74
|
-
readonly people: ArrayType<StructType<{
|
|
75
|
-
readonly key: StringType;
|
|
76
|
-
readonly label: StringType;
|
|
77
|
-
readonly sublabel: OptionType<StringType>;
|
|
78
|
-
readonly status: OptionType<import("@elaraai/east").VariantType<{
|
|
79
|
-
readonly success: NullType;
|
|
80
|
-
readonly warning: NullType;
|
|
81
|
-
readonly danger: NullType;
|
|
82
|
-
readonly info: NullType;
|
|
83
|
-
readonly neutral: NullType;
|
|
84
|
-
}>>;
|
|
85
|
-
readonly approval: OptionType<import("@elaraai/east").VariantType<{
|
|
86
|
-
readonly approved: NullType;
|
|
87
|
-
readonly pending: NullType;
|
|
88
|
-
readonly rejected: NullType;
|
|
89
|
-
}>>;
|
|
90
|
-
}>>;
|
|
91
|
-
/** The shift chips (joined to people by person key) */
|
|
92
|
-
readonly shifts: ArrayType<StructType<{
|
|
93
|
-
readonly key: StringType;
|
|
94
|
-
readonly person: StringType;
|
|
95
|
-
readonly day: StringType;
|
|
96
|
-
readonly label: StringType;
|
|
97
|
-
readonly state: import("@elaraai/east").VariantType<{
|
|
98
|
-
readonly committed: NullType;
|
|
99
|
-
readonly proposed: import("@elaraai/east").VariantType<{
|
|
100
|
-
readonly added: NullType;
|
|
101
|
-
readonly model: NullType;
|
|
102
|
-
readonly removed: NullType;
|
|
103
|
-
}>;
|
|
104
|
-
readonly rejected: NullType;
|
|
105
|
-
}>;
|
|
106
|
-
}>>;
|
|
107
|
-
/** Optional density */
|
|
108
|
-
readonly density: OptionType<import("@elaraai/east").VariantType<{
|
|
109
|
-
readonly comfortable: NullType;
|
|
110
|
-
readonly compact: NullType;
|
|
111
|
-
readonly condensed: NullType;
|
|
112
|
-
}>>;
|
|
113
|
-
/** Uniform sizing (#320): bound the grid; it scrolls within. `"fill"` fills the parent box. */
|
|
114
|
-
readonly height: OptionType<StringType>;
|
|
115
|
-
/** Uniform sizing (#320): max-height cap; content-sized up to it. */
|
|
116
|
-
readonly maxHeight: OptionType<StringType>;
|
|
117
|
-
/** Optional status-strip text (dirty / ghost counts) */
|
|
118
|
-
readonly summary: OptionType<StringType>;
|
|
119
|
-
/** Drag funnel — add / move / remove events */
|
|
120
|
-
readonly onDrag: OptionType<FunctionType<[import("@elaraai/east").VariantType<{
|
|
121
|
-
readonly add: StructType<{
|
|
122
|
-
readonly from: StructType<{
|
|
123
|
-
readonly library: StringType;
|
|
124
|
-
readonly key: StringType;
|
|
125
|
-
}>;
|
|
126
|
-
readonly into: StructType<{
|
|
127
|
-
readonly surface: StringType;
|
|
128
|
-
readonly row: StringType;
|
|
129
|
-
readonly slot: StringType;
|
|
130
|
-
readonly event: OptionType<StringType>;
|
|
131
|
-
}>;
|
|
132
|
-
readonly duplicate: BooleanType;
|
|
133
|
-
}>;
|
|
134
|
-
readonly move: StructType<{
|
|
135
|
-
readonly from: StructType<{
|
|
136
|
-
readonly surface: StringType;
|
|
137
|
-
readonly row: StringType;
|
|
138
|
-
readonly slot: StringType;
|
|
139
|
-
readonly event: OptionType<StringType>;
|
|
140
|
-
}>;
|
|
141
|
-
readonly to: StructType<{
|
|
142
|
-
readonly surface: StringType;
|
|
143
|
-
readonly row: StringType;
|
|
144
|
-
readonly slot: StringType;
|
|
145
|
-
readonly event: OptionType<StringType>;
|
|
146
|
-
}>;
|
|
147
|
-
}>;
|
|
148
|
-
readonly remove: StructType<{
|
|
149
|
-
readonly from: StructType<{
|
|
150
|
-
readonly surface: StringType;
|
|
151
|
-
readonly row: StringType;
|
|
152
|
-
readonly slot: StringType;
|
|
153
|
-
readonly event: OptionType<StringType>;
|
|
154
|
-
}>;
|
|
155
|
-
readonly to: import("@elaraai/east").VariantType<{
|
|
156
|
-
readonly trash: NullType;
|
|
157
|
-
readonly source: NullType;
|
|
158
|
-
}>;
|
|
159
|
-
}>;
|
|
160
|
-
readonly resize: StructType<{
|
|
161
|
-
readonly event: StructType<{
|
|
162
|
-
readonly surface: StringType;
|
|
163
|
-
readonly row: StringType;
|
|
164
|
-
readonly slot: StringType;
|
|
165
|
-
readonly event: OptionType<StringType>;
|
|
166
|
-
}>;
|
|
167
|
-
readonly edge: import("@elaraai/east").VariantType<{
|
|
168
|
-
readonly start: NullType;
|
|
169
|
-
readonly end: NullType;
|
|
170
|
-
}>;
|
|
171
|
-
}>;
|
|
172
|
-
}>], NullType>>;
|
|
173
|
-
/** Optional IR-level drop veto — consulted per hovered cell with the
|
|
174
|
-
* synthesized candidate event (`CanDropFnType` semantics); `false`
|
|
175
|
-
* ⇒ the ⊘ invalid stage and the drop is a no-op. Absent ⇒ accept. */
|
|
176
|
-
readonly canDrop: OptionType<FunctionType<[import("@elaraai/east").VariantType<{
|
|
177
|
-
readonly add: StructType<{
|
|
178
|
-
readonly from: StructType<{
|
|
179
|
-
readonly library: StringType;
|
|
180
|
-
readonly key: StringType;
|
|
181
|
-
}>;
|
|
182
|
-
readonly into: StructType<{
|
|
183
|
-
readonly surface: StringType;
|
|
184
|
-
readonly row: StringType;
|
|
185
|
-
readonly slot: StringType;
|
|
186
|
-
readonly event: OptionType<StringType>;
|
|
187
|
-
}>;
|
|
188
|
-
readonly duplicate: BooleanType;
|
|
189
|
-
}>;
|
|
190
|
-
readonly move: StructType<{
|
|
191
|
-
readonly from: StructType<{
|
|
192
|
-
readonly surface: StringType;
|
|
193
|
-
readonly row: StringType;
|
|
194
|
-
readonly slot: StringType;
|
|
195
|
-
readonly event: OptionType<StringType>;
|
|
196
|
-
}>;
|
|
197
|
-
readonly to: StructType<{
|
|
198
|
-
readonly surface: StringType;
|
|
199
|
-
readonly row: StringType;
|
|
200
|
-
readonly slot: StringType;
|
|
201
|
-
readonly event: OptionType<StringType>;
|
|
202
|
-
}>;
|
|
203
|
-
}>;
|
|
204
|
-
readonly remove: StructType<{
|
|
205
|
-
readonly from: StructType<{
|
|
206
|
-
readonly surface: StringType;
|
|
207
|
-
readonly row: StringType;
|
|
208
|
-
readonly slot: StringType;
|
|
209
|
-
readonly event: OptionType<StringType>;
|
|
210
|
-
}>;
|
|
211
|
-
readonly to: import("@elaraai/east").VariantType<{
|
|
212
|
-
readonly trash: NullType;
|
|
213
|
-
readonly source: NullType;
|
|
214
|
-
}>;
|
|
215
|
-
}>;
|
|
216
|
-
readonly resize: StructType<{
|
|
217
|
-
readonly event: StructType<{
|
|
218
|
-
readonly surface: StringType;
|
|
219
|
-
readonly row: StringType;
|
|
220
|
-
readonly slot: StringType;
|
|
221
|
-
readonly event: OptionType<StringType>;
|
|
222
|
-
}>;
|
|
223
|
-
readonly edge: import("@elaraai/east").VariantType<{
|
|
224
|
-
readonly start: NullType;
|
|
225
|
-
readonly end: NullType;
|
|
226
|
-
}>;
|
|
227
|
-
}>;
|
|
228
|
-
}>], BooleanType>>;
|
|
229
|
-
/** Shift / cell click callback */
|
|
230
|
-
readonly onSelect: OptionType<FunctionType<[StructType<{
|
|
231
|
-
readonly surface: StringType;
|
|
232
|
-
readonly row: StringType;
|
|
233
|
-
readonly slot: StringType;
|
|
234
|
-
readonly event: OptionType<StringType>;
|
|
235
|
-
}>], NullType>>;
|
|
236
|
-
/** Ghost-shift acceptance callback — resolves ONE proposed shift. The
|
|
237
|
-
* granularity contract (#265): `onAccept(CellRef)` is the *item*-level
|
|
238
|
-
* call; `review.onApprove({ rowIndex })` signs off a LINE. The interplay
|
|
239
|
-
* is host-owned — the component reports, the host decides whether
|
|
240
|
-
* row-approval implies accepting the row's ghosts (no implicit
|
|
241
|
-
* cascading in the component). */
|
|
242
|
-
readonly onAccept: OptionType<FunctionType<[StructType<{
|
|
243
|
-
readonly surface: StringType;
|
|
244
|
-
readonly row: StringType;
|
|
245
|
-
readonly slot: StringType;
|
|
246
|
-
readonly event: OptionType<StringType>;
|
|
247
|
-
}>], NullType>>;
|
|
248
|
-
/** Empty-cell click callback (edit mode) */
|
|
249
|
-
readonly onAddAt: OptionType<FunctionType<[StructType<{
|
|
250
|
-
readonly surface: StringType;
|
|
251
|
-
readonly row: StringType;
|
|
252
|
-
readonly slot: StringType;
|
|
253
|
-
readonly event: OptionType<StringType>;
|
|
254
|
-
}>], NullType>>;
|
|
255
|
-
/** Optional row-level review chrome (#265) — the shared contract's
|
|
256
|
-
* Decision column + commitBar foot; rows are people. Absent ⇒ a plain
|
|
257
|
-
* Roster (people `status`/`approval` are inert). Composes with — does
|
|
258
|
-
* not replace — per-tile ghost `onAccept`. */
|
|
259
|
-
readonly review: OptionType<import("../../contracts/approval.js").ReviewStructType<StructType<{
|
|
260
|
-
readonly rowIndex: IntegerType;
|
|
261
|
-
}>, import("@elaraai/east").RecursiveType<import("../../component.js").UIComponentNode>>>;
|
|
262
|
-
}>;
|
|
263
|
-
/**
|
|
264
|
-
* Type representing the Roster component.
|
|
265
|
-
*/
|
|
266
|
-
export type RosterRootType = typeof RosterRootType;
|
|
267
|
-
/**
|
|
268
|
-
* The struct element type of a `SubtypeExprOrValue<ArrayType<StructType>>`.
|
|
269
|
-
*/
|
|
270
|
-
export type RowElement<T extends SubtypeExprOrValue<ArrayType<StructType>>> = TypeOf<T> extends ArrayType<infer S> ? (S extends StructType ? S : never) : never;
|
|
271
|
-
/**
|
|
272
|
-
* Fields the `person` mapper returns — one grid row, before defaults.
|
|
273
|
-
*
|
|
274
|
-
* @remarks
|
|
275
|
-
* The mapper returns this plain object or a full
|
|
276
|
-
* `ExprType<RosterPersonType>` when the row is already resolved.
|
|
277
|
-
*
|
|
278
|
-
* @property key - Person identity — the join key shifts reference
|
|
279
|
-
* @property label - Display name
|
|
280
|
-
* @property sublabel - Optional muted second line (e.g. target hours)
|
|
281
|
-
*/
|
|
282
|
-
export interface RosterPersonFields {
|
|
283
|
-
/** Person identity — the join key shifts reference. */
|
|
284
|
-
key: SubtypeExprOrValue<StringType>;
|
|
285
|
-
/** Display name. */
|
|
286
|
-
label: SubtypeExprOrValue<StringType>;
|
|
287
|
-
/** Optional muted second line (e.g. target hours). */
|
|
288
|
-
sublabel?: SubtypeExprOrValue<StringType>;
|
|
289
|
-
/** Optional per-row status — the quiet dot beside the person (some ⇒
|
|
290
|
-
* flagged, none ⇒ clean). Only rendered when `review` is set (#265). */
|
|
291
|
-
status?: SubtypeExprOrValue<OptionType<StatusValueType>>;
|
|
292
|
-
/** Optional per-row review decision (see the shared `deriveApproval`
|
|
293
|
-
* helper: clean ⇒ approved, flagged ⇒ pending). Only rendered when
|
|
294
|
-
* `review` is set (#265). */
|
|
295
|
-
approval?: SubtypeExprOrValue<OptionType<ApprovalStateType>>;
|
|
296
|
-
}
|
|
297
|
-
/**
|
|
298
|
-
* Fields the `shift` mapper returns — one shift chip, before defaults.
|
|
299
|
-
*
|
|
300
|
-
* @remarks
|
|
301
|
-
* One of `hours` / `label` is required: `hours` resolves to the `${hours}h`
|
|
302
|
-
* chip text unless `label` overrides it.
|
|
303
|
-
*
|
|
304
|
-
* @property key - Stable shift identity
|
|
305
|
-
* @property person - The person key (join key)
|
|
306
|
-
* @property day - The day — must name one of `days`
|
|
307
|
-
* @property hours - Shift length; chips read `${hours}h`
|
|
308
|
-
* @property label - Explicit chip text (overrides `hours`)
|
|
309
|
-
* @property state - The audit state (a `PlannerStateType` value)
|
|
310
|
-
*/
|
|
311
|
-
export interface RosterShiftFields {
|
|
312
|
-
/** Stable shift identity. */
|
|
313
|
-
key: SubtypeExprOrValue<StringType>;
|
|
314
|
-
/** The person key (join key). */
|
|
315
|
-
person: SubtypeExprOrValue<StringType>;
|
|
316
|
-
/** The day — must name one of `days`. */
|
|
317
|
-
day: SubtypeExprOrValue<StringType>;
|
|
318
|
-
/** Shift length; chips read `${hours}h`. */
|
|
319
|
-
hours?: SubtypeExprOrValue<IntegerType>;
|
|
320
|
-
/** Explicit chip text (overrides `hours`). */
|
|
321
|
-
label?: SubtypeExprOrValue<StringType>;
|
|
322
|
-
/** The audit state (a `PlannerStateType` value). */
|
|
323
|
-
state: SubtypeExprOrValue<PlannerStateType>;
|
|
324
|
-
}
|
|
325
|
-
/**
|
|
326
|
-
* Configuration for {@link createRoster}.
|
|
327
|
-
*
|
|
328
|
-
* @typeParam P - The people row struct
|
|
329
|
-
* @typeParam S - The shift row struct
|
|
330
|
-
* @property id - DnD target identity
|
|
331
|
-
* @property sources - Library ids accepted for `add` drags (omit = no adds)
|
|
332
|
-
* @property mode - `published` (default) or `edit`
|
|
333
|
-
* @property person - People row mapper (omit when rows are already resolved)
|
|
334
|
-
* @property personHeader - The frozen person column's header
|
|
335
|
-
* @property shift - Shifts row mapper (omit when rows are already resolved)
|
|
336
|
-
* @property days - The day columns, in order (defaults to Mon–Sun)
|
|
337
|
-
* @property density - Optional density
|
|
338
|
-
* @property summary - Optional status-strip text (dirty / ghost counts)
|
|
339
|
-
* @property onDrag - Drag funnel — add / move / remove events
|
|
340
|
-
* @property canDrop - Optional IR-level drop veto over synthesized candidate events
|
|
341
|
-
* @property onSelect - Shift / cell click callback (a drag-grammar cell ref)
|
|
342
|
-
* @property onAccept - Ghost-shift acceptance callback
|
|
343
|
-
* @property onAddAt - Empty-cell click callback (edit mode)
|
|
344
|
-
*/
|
|
345
|
-
export interface RosterConfig<P extends StructType, S extends StructType> {
|
|
346
|
-
/** DnD target identity. */
|
|
347
|
-
id: string;
|
|
348
|
-
/** Library ids accepted for `add` drags (omit = no adds). */
|
|
349
|
-
sources?: string[];
|
|
350
|
-
/** `published` (default) or `edit`. */
|
|
351
|
-
mode?: SubtypeExprOrValue<RosterModeType> | RosterModeLiteral;
|
|
352
|
-
/** People row mapper; omit when `people` is already `ArrayType(Roster.Types.Person)`. */
|
|
353
|
-
person?: (person: ExprType<P>) => RosterPersonFields;
|
|
354
|
-
/** The frozen person column's header (defaults to `"Operator"`). */
|
|
355
|
-
personHeader?: string;
|
|
356
|
-
/** Optional CSS width for the frozen person column (omit = the Planner-consistent `150px`). */
|
|
357
|
-
personWidth?: string;
|
|
358
|
-
/** Shifts row mapper; omit when `shifts` is already `ArrayType(Roster.Types.Shift)`. */
|
|
359
|
-
shift?: (shift: ExprType<S>) => RosterShiftFields;
|
|
360
|
-
/** The day columns, in order (defaults to Mon–Sun). */
|
|
361
|
-
days?: string[];
|
|
362
|
-
/** Optional density. */
|
|
363
|
-
density?: SubtypeExprOrValue<DensityType> | DensityLiteral;
|
|
364
|
-
/** Uniform sizing (#320): bound the component — a pixel number, `"fill"` (fill the parent box), or a CSS length; the whole component takes this height and scrolls within. */
|
|
365
|
-
height?: SubtypeExprOrValue<StringType>;
|
|
366
|
-
/** Uniform sizing (#320): max-height cap — a pixel number or CSS length; content-sized up to it. */
|
|
367
|
-
maxHeight?: SubtypeExprOrValue<StringType>;
|
|
368
|
-
/** Optional status-strip text (dirty / ghost counts). */
|
|
369
|
-
summary?: SubtypeExprOrValue<StringType>;
|
|
370
|
-
/** Drag funnel — add / move / remove events. */
|
|
371
|
-
onDrag?: SubtypeExprOrValue<FunctionType<[DragEventType], NullType>>;
|
|
372
|
-
/** Optional IR-level drop veto — consulted per hovered cell with the
|
|
373
|
-
* synthesized candidate event (`CanDropFnType` semantics, see
|
|
374
|
-
* `contracts/drag.ts`); `false` ⇒ the ⊘ invalid stage and the drop is a
|
|
375
|
-
* no-op. Absent ⇒ accept (the pre-#261 behaviour). */
|
|
376
|
-
canDrop?: SubtypeExprOrValue<FunctionType<[DragEventType], BooleanType>>;
|
|
377
|
-
/** Shift / cell click callback (a drag-grammar cell ref). */
|
|
378
|
-
onSelect?: SubtypeExprOrValue<FunctionType<[CellRefType], NullType>>;
|
|
379
|
-
/** Ghost-shift acceptance callback. */
|
|
380
|
-
onAccept?: SubtypeExprOrValue<FunctionType<[CellRefType], NullType>>;
|
|
381
|
-
/** Empty-cell click callback (edit mode). */
|
|
382
|
-
onAddAt?: SubtypeExprOrValue<FunctionType<[CellRefType], NullType>>;
|
|
383
|
-
/** Optional row-level review chrome (#265) — the shared contract's
|
|
384
|
-
* Decision column + commitBar foot; rows are people, callbacks receive
|
|
385
|
-
* `{ rowIndex }`. Presence is the opt-in. Composes with — does not
|
|
386
|
-
* replace — per-tile ghost `onAccept`: accept resolves ONE ghost,
|
|
387
|
-
* approve signs off a LINE; the interplay is host-owned. */
|
|
388
|
-
review?: ReviewConfig<RowRefType>;
|
|
389
|
-
}
|
|
390
|
-
/**
|
|
391
|
-
* Creates a Roster — people × days-of-week shift scheduling.
|
|
392
|
-
*
|
|
393
|
-
* @typeParam P - The people-table input
|
|
394
|
-
* @typeParam S - The shifts-table input
|
|
395
|
-
* @param people - The people rows (one grid row each)
|
|
396
|
-
* @param shifts - The shift rows (joined to people by the encoded person key)
|
|
397
|
-
* @param config - The Roster configuration ({@link RosterConfig})
|
|
398
|
-
* @returns An East expression of `UIComponentType`
|
|
399
|
-
*
|
|
400
|
-
* @example
|
|
401
|
-
* ```ts
|
|
402
|
-
* import { East, variant } from "@elaraai/east";
|
|
403
|
-
* import { Roster, UIComponentType } from "@elaraai/east-ui";
|
|
404
|
-
*
|
|
405
|
-
* const example = East.function([], UIComponentType, _$ =>
|
|
406
|
-
* Roster.Root(
|
|
407
|
-
* [{ id: "patel", name: "Patel" }],
|
|
408
|
-
* [{ id: "p1", person: "patel", day: "Mon", hours: 8n, state: variant("committed", null) }],
|
|
409
|
-
* {
|
|
410
|
-
* id: "roster-se",
|
|
411
|
-
* sources: ["people"],
|
|
412
|
-
* mode: "edit",
|
|
413
|
-
* person: p => ({ key: p.id, label: p.name }),
|
|
414
|
-
* shift: s => ({ key: s.id, person: s.person, day: s.day,
|
|
415
|
-
* hours: s.hours, state: s.state }),
|
|
416
|
-
* },
|
|
417
|
-
* ),
|
|
418
|
-
* );
|
|
419
|
-
* ```
|
|
420
|
-
*/
|
|
421
|
-
declare function createRoster<P extends SubtypeExprOrValue<ArrayType<StructType>>, S extends SubtypeExprOrValue<ArrayType<StructType>>>(people: P, shifts: S, config: RosterConfig<RowElement<P>, RowElement<S>>): ExprType<UIComponentType>;
|
|
422
|
-
/**
|
|
423
|
-
* Roster component namespace.
|
|
424
|
-
*
|
|
425
|
-
* @remarks
|
|
426
|
-
* `Roster.Root(people, shifts, config)` builds the grid from the two flat
|
|
427
|
-
* tables; shift states reuse the Planner event-state grammar
|
|
428
|
-
* (`Roster.Types.State`), so data carries typed `variant(...)` values.
|
|
429
|
-
*/
|
|
430
|
-
export declare const Roster: {
|
|
431
|
-
/**
|
|
432
|
-
* Creates a Roster — people × days-of-week shift scheduling with the
|
|
433
|
-
* drag & drop target role.
|
|
434
|
-
*
|
|
435
|
-
* @typeParam P - The people-table input
|
|
436
|
-
* @typeParam S - The shifts-table input
|
|
437
|
-
* @param people - The people rows (one grid row each)
|
|
438
|
-
* @param shifts - The shift rows (joined to people by the encoded person key)
|
|
439
|
-
* @param config - The Roster configuration ({@link RosterConfig})
|
|
440
|
-
* @returns An East expression of `UIComponentType`
|
|
441
|
-
*
|
|
442
|
-
* @remarks
|
|
443
|
-
* Published mode renders committed shifts only, pointer-immutable; edit
|
|
444
|
-
* mode enables drag handles on proposed shifts, empty-cell add, and
|
|
445
|
-
* ghost acceptance. Cross-row moves arrive as plain `move` events — the
|
|
446
|
-
* host derives any swap-proposal representation from
|
|
447
|
-
* `from.row ≠ to.row`.
|
|
448
|
-
*
|
|
449
|
-
* @example
|
|
450
|
-
* ```ts
|
|
451
|
-
* import { East, variant } from "@elaraai/east";
|
|
452
|
-
* import { Roster, UIComponentType } from "@elaraai/east-ui";
|
|
453
|
-
*
|
|
454
|
-
* const example = East.function([], UIComponentType, _$ =>
|
|
455
|
-
* Roster.Root(
|
|
456
|
-
* [{ id: "patel", name: "Patel" }],
|
|
457
|
-
* [{ id: "p1", person: "patel", day: "Mon", hours: 8n, state: variant("committed", null) }],
|
|
458
|
-
* {
|
|
459
|
-
* id: "roster-se",
|
|
460
|
-
* person: p => ({ key: p.id, label: p.name }),
|
|
461
|
-
* shift: s => ({ key: s.id, person: s.person, day: s.day,
|
|
462
|
-
* hours: s.hours, state: s.state }),
|
|
463
|
-
* },
|
|
464
|
-
* ),
|
|
465
|
-
* );
|
|
466
|
-
* ```
|
|
467
|
-
*/
|
|
468
|
-
readonly Root: typeof createRoster;
|
|
469
|
-
readonly Types: {
|
|
470
|
-
/**
|
|
471
|
-
* East StructType for the Roster component.
|
|
472
|
-
*
|
|
473
|
-
* @remarks
|
|
474
|
-
* Flat resolved tables; the renderer groups shifts into cells by
|
|
475
|
-
* `person × day`. See {@link RosterRootType} for per-field docs.
|
|
476
|
-
*
|
|
477
|
-
* @property id - DnD target identity
|
|
478
|
-
* @property sources - Library ids accepted for `add` drags
|
|
479
|
-
* @property mode - `published` or `edit`
|
|
480
|
-
* @property days - The day columns, in order
|
|
481
|
-
* @property personHeader - The frozen person column's header
|
|
482
|
-
* @property people - The grid rows
|
|
483
|
-
* @property shifts - The shift chips
|
|
484
|
-
* @property density - Optional density
|
|
485
|
-
* @property summary - Optional status-strip text
|
|
486
|
-
* @property onDrag - Drag funnel
|
|
487
|
-
* @property onSelect - Shift / cell click callback
|
|
488
|
-
* @property onAccept - Ghost acceptance callback
|
|
489
|
-
* @property onAddAt - Empty-cell click callback
|
|
490
|
-
*/
|
|
491
|
-
readonly Roster: StructType<{
|
|
492
|
-
/** DnD target identity */
|
|
493
|
-
readonly id: StringType;
|
|
494
|
-
/** Library ids accepted for `add` drags */
|
|
495
|
-
readonly sources: ArrayType<StringType>;
|
|
496
|
-
/** `published` (committed-only, immutable) or `edit` */
|
|
497
|
-
readonly mode: import("@elaraai/east").VariantType<{
|
|
498
|
-
readonly published: NullType;
|
|
499
|
-
readonly edit: NullType;
|
|
500
|
-
}>;
|
|
501
|
-
/** The day columns, in order */
|
|
502
|
-
readonly days: ArrayType<StringType>;
|
|
503
|
-
/** The frozen person column's header */
|
|
504
|
-
readonly personHeader: StringType;
|
|
505
|
-
/** Optional CSS width for the frozen person column (none = the Planner-consistent 150px) */
|
|
506
|
-
readonly personWidth: OptionType<StringType>;
|
|
507
|
-
/** The grid rows */
|
|
508
|
-
readonly people: ArrayType<StructType<{
|
|
509
|
-
readonly key: StringType;
|
|
510
|
-
readonly label: StringType;
|
|
511
|
-
readonly sublabel: OptionType<StringType>;
|
|
512
|
-
readonly status: OptionType<import("@elaraai/east").VariantType<{
|
|
513
|
-
readonly success: NullType;
|
|
514
|
-
readonly warning: NullType;
|
|
515
|
-
readonly danger: NullType;
|
|
516
|
-
readonly info: NullType;
|
|
517
|
-
readonly neutral: NullType;
|
|
518
|
-
}>>;
|
|
519
|
-
readonly approval: OptionType<import("@elaraai/east").VariantType<{
|
|
520
|
-
readonly approved: NullType;
|
|
521
|
-
readonly pending: NullType;
|
|
522
|
-
readonly rejected: NullType;
|
|
523
|
-
}>>;
|
|
524
|
-
}>>;
|
|
525
|
-
/** The shift chips (joined to people by person key) */
|
|
526
|
-
readonly shifts: ArrayType<StructType<{
|
|
527
|
-
readonly key: StringType;
|
|
528
|
-
readonly person: StringType;
|
|
529
|
-
readonly day: StringType;
|
|
530
|
-
readonly label: StringType;
|
|
531
|
-
readonly state: import("@elaraai/east").VariantType<{
|
|
532
|
-
readonly committed: NullType;
|
|
533
|
-
readonly proposed: import("@elaraai/east").VariantType<{
|
|
534
|
-
readonly added: NullType;
|
|
535
|
-
readonly model: NullType;
|
|
536
|
-
readonly removed: NullType;
|
|
537
|
-
}>;
|
|
538
|
-
readonly rejected: NullType;
|
|
539
|
-
}>;
|
|
540
|
-
}>>;
|
|
541
|
-
/** Optional density */
|
|
542
|
-
readonly density: OptionType<import("@elaraai/east").VariantType<{
|
|
543
|
-
readonly comfortable: NullType;
|
|
544
|
-
readonly compact: NullType;
|
|
545
|
-
readonly condensed: NullType;
|
|
546
|
-
}>>;
|
|
547
|
-
/** Uniform sizing (#320): bound the grid; it scrolls within. `"fill"` fills the parent box. */
|
|
548
|
-
readonly height: OptionType<StringType>;
|
|
549
|
-
/** Uniform sizing (#320): max-height cap; content-sized up to it. */
|
|
550
|
-
readonly maxHeight: OptionType<StringType>;
|
|
551
|
-
/** Optional status-strip text (dirty / ghost counts) */
|
|
552
|
-
readonly summary: OptionType<StringType>;
|
|
553
|
-
/** Drag funnel — add / move / remove events */
|
|
554
|
-
readonly onDrag: OptionType<FunctionType<[import("@elaraai/east").VariantType<{
|
|
555
|
-
readonly add: StructType<{
|
|
556
|
-
readonly from: StructType<{
|
|
557
|
-
readonly library: StringType;
|
|
558
|
-
readonly key: StringType;
|
|
559
|
-
}>;
|
|
560
|
-
readonly into: StructType<{
|
|
561
|
-
readonly surface: StringType;
|
|
562
|
-
readonly row: StringType;
|
|
563
|
-
readonly slot: StringType;
|
|
564
|
-
readonly event: OptionType<StringType>;
|
|
565
|
-
}>;
|
|
566
|
-
readonly duplicate: BooleanType;
|
|
567
|
-
}>;
|
|
568
|
-
readonly move: StructType<{
|
|
569
|
-
readonly from: StructType<{
|
|
570
|
-
readonly surface: StringType;
|
|
571
|
-
readonly row: StringType;
|
|
572
|
-
readonly slot: StringType;
|
|
573
|
-
readonly event: OptionType<StringType>;
|
|
574
|
-
}>;
|
|
575
|
-
readonly to: StructType<{
|
|
576
|
-
readonly surface: StringType;
|
|
577
|
-
readonly row: StringType;
|
|
578
|
-
readonly slot: StringType;
|
|
579
|
-
readonly event: OptionType<StringType>;
|
|
580
|
-
}>;
|
|
581
|
-
}>;
|
|
582
|
-
readonly remove: StructType<{
|
|
583
|
-
readonly from: StructType<{
|
|
584
|
-
readonly surface: StringType;
|
|
585
|
-
readonly row: StringType;
|
|
586
|
-
readonly slot: StringType;
|
|
587
|
-
readonly event: OptionType<StringType>;
|
|
588
|
-
}>;
|
|
589
|
-
readonly to: import("@elaraai/east").VariantType<{
|
|
590
|
-
readonly trash: NullType;
|
|
591
|
-
readonly source: NullType;
|
|
592
|
-
}>;
|
|
593
|
-
}>;
|
|
594
|
-
readonly resize: StructType<{
|
|
595
|
-
readonly event: StructType<{
|
|
596
|
-
readonly surface: StringType;
|
|
597
|
-
readonly row: StringType;
|
|
598
|
-
readonly slot: StringType;
|
|
599
|
-
readonly event: OptionType<StringType>;
|
|
600
|
-
}>;
|
|
601
|
-
readonly edge: import("@elaraai/east").VariantType<{
|
|
602
|
-
readonly start: NullType;
|
|
603
|
-
readonly end: NullType;
|
|
604
|
-
}>;
|
|
605
|
-
}>;
|
|
606
|
-
}>], NullType>>;
|
|
607
|
-
/** Optional IR-level drop veto — consulted per hovered cell with the
|
|
608
|
-
* synthesized candidate event (`CanDropFnType` semantics); `false`
|
|
609
|
-
* ⇒ the ⊘ invalid stage and the drop is a no-op. Absent ⇒ accept. */
|
|
610
|
-
readonly canDrop: OptionType<FunctionType<[import("@elaraai/east").VariantType<{
|
|
611
|
-
readonly add: StructType<{
|
|
612
|
-
readonly from: StructType<{
|
|
613
|
-
readonly library: StringType;
|
|
614
|
-
readonly key: StringType;
|
|
615
|
-
}>;
|
|
616
|
-
readonly into: StructType<{
|
|
617
|
-
readonly surface: StringType;
|
|
618
|
-
readonly row: StringType;
|
|
619
|
-
readonly slot: StringType;
|
|
620
|
-
readonly event: OptionType<StringType>;
|
|
621
|
-
}>;
|
|
622
|
-
readonly duplicate: BooleanType;
|
|
623
|
-
}>;
|
|
624
|
-
readonly move: StructType<{
|
|
625
|
-
readonly from: StructType<{
|
|
626
|
-
readonly surface: StringType;
|
|
627
|
-
readonly row: StringType;
|
|
628
|
-
readonly slot: StringType;
|
|
629
|
-
readonly event: OptionType<StringType>;
|
|
630
|
-
}>;
|
|
631
|
-
readonly to: StructType<{
|
|
632
|
-
readonly surface: StringType;
|
|
633
|
-
readonly row: StringType;
|
|
634
|
-
readonly slot: StringType;
|
|
635
|
-
readonly event: OptionType<StringType>;
|
|
636
|
-
}>;
|
|
637
|
-
}>;
|
|
638
|
-
readonly remove: StructType<{
|
|
639
|
-
readonly from: StructType<{
|
|
640
|
-
readonly surface: StringType;
|
|
641
|
-
readonly row: StringType;
|
|
642
|
-
readonly slot: StringType;
|
|
643
|
-
readonly event: OptionType<StringType>;
|
|
644
|
-
}>;
|
|
645
|
-
readonly to: import("@elaraai/east").VariantType<{
|
|
646
|
-
readonly trash: NullType;
|
|
647
|
-
readonly source: NullType;
|
|
648
|
-
}>;
|
|
649
|
-
}>;
|
|
650
|
-
readonly resize: StructType<{
|
|
651
|
-
readonly event: StructType<{
|
|
652
|
-
readonly surface: StringType;
|
|
653
|
-
readonly row: StringType;
|
|
654
|
-
readonly slot: StringType;
|
|
655
|
-
readonly event: OptionType<StringType>;
|
|
656
|
-
}>;
|
|
657
|
-
readonly edge: import("@elaraai/east").VariantType<{
|
|
658
|
-
readonly start: NullType;
|
|
659
|
-
readonly end: NullType;
|
|
660
|
-
}>;
|
|
661
|
-
}>;
|
|
662
|
-
}>], BooleanType>>;
|
|
663
|
-
/** Shift / cell click callback */
|
|
664
|
-
readonly onSelect: OptionType<FunctionType<[StructType<{
|
|
665
|
-
readonly surface: StringType;
|
|
666
|
-
readonly row: StringType;
|
|
667
|
-
readonly slot: StringType;
|
|
668
|
-
readonly event: OptionType<StringType>;
|
|
669
|
-
}>], NullType>>;
|
|
670
|
-
/** Ghost-shift acceptance callback — resolves ONE proposed shift. The
|
|
671
|
-
* granularity contract (#265): `onAccept(CellRef)` is the *item*-level
|
|
672
|
-
* call; `review.onApprove({ rowIndex })` signs off a LINE. The interplay
|
|
673
|
-
* is host-owned — the component reports, the host decides whether
|
|
674
|
-
* row-approval implies accepting the row's ghosts (no implicit
|
|
675
|
-
* cascading in the component). */
|
|
676
|
-
readonly onAccept: OptionType<FunctionType<[StructType<{
|
|
677
|
-
readonly surface: StringType;
|
|
678
|
-
readonly row: StringType;
|
|
679
|
-
readonly slot: StringType;
|
|
680
|
-
readonly event: OptionType<StringType>;
|
|
681
|
-
}>], NullType>>;
|
|
682
|
-
/** Empty-cell click callback (edit mode) */
|
|
683
|
-
readonly onAddAt: OptionType<FunctionType<[StructType<{
|
|
684
|
-
readonly surface: StringType;
|
|
685
|
-
readonly row: StringType;
|
|
686
|
-
readonly slot: StringType;
|
|
687
|
-
readonly event: OptionType<StringType>;
|
|
688
|
-
}>], NullType>>;
|
|
689
|
-
/** Optional row-level review chrome (#265) — the shared contract's
|
|
690
|
-
* Decision column + commitBar foot; rows are people. Absent ⇒ a plain
|
|
691
|
-
* Roster (people `status`/`approval` are inert). Composes with — does
|
|
692
|
-
* not replace — per-tile ghost `onAccept`. */
|
|
693
|
-
readonly review: OptionType<import("../../contracts/approval.js").ReviewStructType<StructType<{
|
|
694
|
-
readonly rowIndex: IntegerType;
|
|
695
|
-
}>, import("@elaraai/east").RecursiveType<import("../../component.js").UIComponentNode>>>;
|
|
696
|
-
}>;
|
|
697
|
-
/** A row's review decision — the shared `ApprovalStateType` (#265). */
|
|
698
|
-
readonly Approval: import("@elaraai/east").VariantType<{
|
|
699
|
-
readonly approved: NullType;
|
|
700
|
-
readonly pending: NullType;
|
|
701
|
-
readonly rejected: NullType;
|
|
702
|
-
}>;
|
|
703
|
-
/** The review configuration — the shared row-granularity `RowReviewType` (#265). */
|
|
704
|
-
readonly Review: import("../../contracts/approval.js").ReviewStructType<StructType<{
|
|
705
|
-
readonly rowIndex: IntegerType;
|
|
706
|
-
}>, import("@elaraai/east").RecursiveType<import("../../component.js").UIComponentNode>>;
|
|
707
|
-
/** The per-row approve / reject payload — the shared `RowRefType` (`{ rowIndex }`). */
|
|
708
|
-
readonly ApproveEvent: StructType<{
|
|
709
|
-
readonly rowIndex: IntegerType;
|
|
710
|
-
}>;
|
|
711
|
-
/**
|
|
712
|
-
* Roster render mode (`published` / `edit`).
|
|
713
|
-
*
|
|
714
|
-
* @property published - Committed-only, pointer-immutable
|
|
715
|
-
* @property edit - Operator + model proposals are interactive
|
|
716
|
-
*/
|
|
717
|
-
readonly Mode: import("@elaraai/east").VariantType<{
|
|
718
|
-
readonly published: NullType;
|
|
719
|
-
readonly edit: NullType;
|
|
720
|
-
}>;
|
|
721
|
-
/**
|
|
722
|
-
* A resolved roster person (one grid row).
|
|
723
|
-
*
|
|
724
|
-
* @property key - Person identity — the join key shifts reference
|
|
725
|
-
* @property label - Display name
|
|
726
|
-
* @property sublabel - Optional muted second line
|
|
727
|
-
*/
|
|
728
|
-
readonly Person: StructType<{
|
|
729
|
-
readonly key: StringType;
|
|
730
|
-
readonly label: StringType;
|
|
731
|
-
readonly sublabel: OptionType<StringType>;
|
|
732
|
-
readonly status: OptionType<import("@elaraai/east").VariantType<{
|
|
733
|
-
readonly success: NullType;
|
|
734
|
-
readonly warning: NullType;
|
|
735
|
-
readonly danger: NullType;
|
|
736
|
-
readonly info: NullType;
|
|
737
|
-
readonly neutral: NullType;
|
|
738
|
-
}>>;
|
|
739
|
-
readonly approval: OptionType<import("@elaraai/east").VariantType<{
|
|
740
|
-
readonly approved: NullType;
|
|
741
|
-
readonly pending: NullType;
|
|
742
|
-
readonly rejected: NullType;
|
|
743
|
-
}>>;
|
|
744
|
-
}>;
|
|
745
|
-
/**
|
|
746
|
-
* A resolved shift chip.
|
|
747
|
-
*
|
|
748
|
-
* @property key - Stable shift identity
|
|
749
|
-
* @property person - The person key this shift belongs to
|
|
750
|
-
* @property day - The day column this shift sits in
|
|
751
|
-
* @property label - The chip text
|
|
752
|
-
* @property state - The audit state
|
|
753
|
-
*/
|
|
754
|
-
readonly Shift: StructType<{
|
|
755
|
-
readonly key: StringType;
|
|
756
|
-
readonly person: StringType;
|
|
757
|
-
readonly day: StringType;
|
|
758
|
-
readonly label: StringType;
|
|
759
|
-
readonly state: import("@elaraai/east").VariantType<{
|
|
760
|
-
readonly committed: NullType;
|
|
761
|
-
readonly proposed: import("@elaraai/east").VariantType<{
|
|
762
|
-
readonly added: NullType;
|
|
763
|
-
readonly model: NullType;
|
|
764
|
-
readonly removed: NullType;
|
|
765
|
-
}>;
|
|
766
|
-
readonly rejected: NullType;
|
|
767
|
-
}>;
|
|
768
|
-
}>;
|
|
769
|
-
/**
|
|
770
|
-
* The shared event-state grammar (committed / proposed / rejected).
|
|
771
|
-
*
|
|
772
|
-
* @property committed - A published shift
|
|
773
|
-
* @property proposed - A proposal (`added` / `model` / `removed`)
|
|
774
|
-
* @property rejected - A rejected proposal
|
|
775
|
-
*/
|
|
776
|
-
readonly State: import("@elaraai/east").VariantType<{
|
|
777
|
-
readonly committed: NullType;
|
|
778
|
-
readonly proposed: import("@elaraai/east").VariantType<{
|
|
779
|
-
readonly added: NullType;
|
|
780
|
-
readonly model: NullType;
|
|
781
|
-
readonly removed: NullType;
|
|
782
|
-
}>;
|
|
783
|
-
readonly rejected: NullType;
|
|
784
|
-
}>;
|
|
785
|
-
};
|
|
786
|
-
};
|
|
787
|
-
//# sourceMappingURL=index.d.ts.map
|