@lavalogic/scoria 0.36.0 → 0.37.0
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/Components/AccordionGroup.svelte +6 -2
- package/dist/Components/AccordionGroupButton.svelte +78 -78
- package/dist/Components/AccordionGroupButtonProps.d.ts +27 -8
- package/dist/Components/AccordionGroupProps.d.ts +10 -2
- package/dist/Components/Action.svelte +31 -33
- package/dist/Components/ActionProps.d.ts +23 -3
- package/dist/Components/AlertModal.svelte +90 -39
- package/dist/Components/AppointmentCalendar/AppointmentCalendar.svelte +1126 -0
- package/dist/Components/AppointmentCalendar/AppointmentCalendar.svelte.d.ts +4 -0
- package/dist/Components/AppointmentCalendar/AppointmentCalendarProps.d.ts +92 -0
- package/dist/Components/AppointmentCalendar/AppointmentCalendarProps.js +12 -0
- package/dist/Components/Base/BaseModal.svelte +172 -0
- package/dist/Components/Base/BaseModal.svelte.d.ts +4 -0
- package/dist/Components/Base/BaseModalProps.d.ts +73 -0
- package/dist/Components/Base/BaseModalProps.js +1 -0
- package/dist/Components/Base/ContextWrapper.svelte +37 -15
- package/dist/Components/Base/ContextWrapper.svelte.d.ts +24 -5
- package/dist/Components/Base/ContextWrapperProps.d.ts +22 -0
- package/dist/Components/Base/Pagination.svelte +70 -62
- package/dist/Components/Base/Pagination.svelte.d.ts +12 -2
- package/dist/Components/Base/PaginationProps.d.ts +60 -3
- package/dist/Components/Base/Snippets.svelte +7 -0
- package/dist/Components/Base/Snippets.svelte.d.ts +5 -1
- package/dist/Components/BigRadioSet.svelte +18 -9
- package/dist/Components/BigRadioSetProps.d.ts +17 -1
- package/dist/Components/Bubble.svelte +67 -34
- package/dist/Components/Bubble.svelte.d.ts +23 -2
- package/dist/Components/BubbleProps.d.ts +55 -4
- package/dist/Components/Button.svelte +50 -38
- package/dist/Components/ButtonProps.d.ts +66 -1
- package/dist/Components/Checkbox.svelte +57 -29
- package/dist/Components/Checkbox.svelte.d.ts +1 -12
- package/dist/Components/CheckboxProps.d.ts +27 -0
- package/dist/Components/CheckboxProps.js +1 -0
- package/dist/Components/CollapsibleCard.svelte +53 -22
- package/dist/Components/CollapsibleCardProps.d.ts +22 -1
- package/dist/Components/Contexts/ContextMenu.svelte +53 -32
- package/dist/Components/Contexts/ContextMenu.svelte.d.ts +26 -0
- package/dist/Components/Contexts/ContextMenuDivider.svelte +15 -7
- package/dist/Components/Contexts/ContextMenuDivider.svelte.d.ts +9 -0
- package/dist/Components/Contexts/ContextMenuOption.svelte +27 -18
- package/dist/Components/Contexts/ContextMenuOption.svelte.d.ts +12 -1
- package/dist/Components/Contexts/ContextMenuOptionProps.d.ts +34 -2
- package/dist/Components/Contexts/Toast.svelte +28 -4
- package/dist/Components/Contexts/Toast.svelte.d.ts +14 -0
- package/dist/Components/Contexts/ToastContainer.svelte +30 -11
- package/dist/Components/Contexts/ToastContainer.svelte.d.ts +14 -0
- package/dist/Components/Contexts/ToastProps.d.ts +14 -1
- package/dist/Components/Contexts/Tooltip.svelte +21 -10
- package/dist/Components/Contexts/Tooltip.svelte.d.ts +10 -0
- package/dist/Components/DataMatrixIcon.svelte +82 -11
- package/dist/Components/DataMatrixIconProps.d.ts +73 -1
- package/dist/Components/DateInput.svelte +64 -29
- package/dist/Components/DateInput.svelte.d.ts +1 -1
- package/dist/Components/DateOnlyInputProps.d.ts +31 -5
- package/dist/Components/DatePicker.svelte +96 -108
- package/dist/Components/DatePickerProps.d.ts +18 -1
- package/dist/Components/DateTimeInputProps.d.ts +30 -5
- package/dist/Components/DesktopModal.svelte +14 -43
- package/dist/Components/DesktopModalProps.d.ts +5 -4
- package/dist/Components/Dial.svelte +103 -41
- package/dist/Components/DialProps.d.ts +74 -2
- package/dist/Components/DimensionInput.svelte +50 -64
- package/dist/Components/DimensionInput.svelte.d.ts +1 -1
- package/dist/Components/DimensionInputProps.d.ts +39 -4
- package/dist/Components/DragMenu/DragMenuHolder.svelte +41 -29
- package/dist/Components/DragMenu/DragMenuHolderProps.d.ts +30 -1
- package/dist/Components/DragMenu/DraggableCard.svelte +44 -8
- package/dist/Components/DragMenu/DraggableCardProps.d.ts +27 -1
- package/dist/Components/FileCard.svelte +6 -2
- package/dist/Components/FileCardProps.d.ts +17 -1
- package/dist/Components/FileUpload.svelte +82 -42
- package/dist/Components/FileUploadProps.d.ts +34 -4
- package/dist/Components/GridInput.svelte +27 -17
- package/dist/Components/GridInput.svelte.d.ts +5 -5
- package/dist/Components/GridInputProps.d.ts +4 -1
- package/dist/Components/GridInputSet.svelte +12 -5
- package/dist/Components/GridInputSet.svelte.d.ts +5 -5
- package/dist/Components/GridInputSetProps.d.ts +4 -2
- package/dist/Components/HorizontalTabGroup.svelte +13 -11
- package/dist/Components/HorizontalTabGroupButton.svelte +16 -68
- package/dist/Components/HorizontalTabGroupProps.d.ts +15 -2
- package/dist/Components/Icon.svelte +62 -21
- package/dist/Components/IconProps.d.ts +54 -6
- package/dist/Components/Icons.d.ts +8 -0
- package/dist/Components/Icons.js +234 -215
- package/dist/Components/LoadingAnimation.svelte +18 -18
- package/dist/Components/LoadingAnimation.svelte.d.ts +1 -3
- package/dist/Components/LoadingAnimationProps.d.ts +16 -0
- package/dist/Components/LoadingAnimationProps.js +1 -0
- package/dist/Components/LoadingModal.svelte +18 -20
- package/dist/Components/LoadingModal.svelte.d.ts +1 -4
- package/dist/Components/LoadingModalProps.d.ts +17 -0
- package/dist/Components/LoadingModalProps.js +1 -0
- package/dist/Components/LoadingOverlay.svelte +11 -13
- package/dist/Components/LoadingOverlay.svelte.d.ts +1 -5
- package/dist/Components/LoadingOverlayProps.d.ts +28 -0
- package/dist/Components/LoadingOverlayProps.js +1 -0
- package/dist/Components/Modal.svelte +77 -82
- package/dist/Components/Modal.svelte.d.ts +1 -25
- package/dist/Components/ModalProps.d.ts +65 -0
- package/dist/Components/ModalProps.js +1 -0
- package/dist/Components/MultiSelect.svelte +88 -76
- package/dist/Components/MultiSelectCommonProps.d.ts +33 -4
- package/dist/Components/MultiSelectPropsAsObject.d.ts +5 -0
- package/dist/Components/MultiSelectPropsAsPrimitive.d.ts +6 -0
- package/dist/Components/Nav/CallbackButtonWithIcon.d.ts +22 -1
- package/dist/Components/Nav/Nav.svelte +35 -30
- package/dist/Components/Nav/Nav.svelte.d.ts +23 -2
- package/dist/Components/Nav/NavProps.d.ts +50 -3
- package/dist/Components/Nav/NavServiceMenuList.svelte +12 -3
- package/dist/Components/Nav/NavServiceMenuListProps.d.ts +25 -1
- package/dist/Components/Nav/NavTab.svelte +19 -48
- package/dist/Components/Nav/NavTab.svelte.d.ts +23 -2
- package/dist/Components/Nav/NavTabProps.d.ts +16 -2
- package/dist/Components/Nav/ServiceMenuItem.svelte +29 -20
- package/dist/Components/Nav/ServicesNav.svelte +60 -34
- package/dist/Components/Nav/ServicesNav.svelte.d.ts +23 -2
- package/dist/Components/Nav/ServicesNavProps.d.ts +20 -4
- package/dist/Components/Nav/SideMenuItemProps.d.ts +16 -0
- package/dist/Components/NumberInput.svelte +37 -27
- package/dist/Components/NumberInputProps.d.ts +37 -0
- package/dist/Components/PageHeading.svelte +2 -13
- package/dist/Components/PageHeading.svelte.d.ts +1 -6
- package/dist/Components/PageHeadingProps.d.ts +23 -0
- package/dist/Components/PageHeadingProps.js +1 -0
- package/dist/Components/PasswordInput.svelte +27 -15
- package/dist/Components/PasswordInput.svelte.d.ts +2 -2
- package/dist/Components/PasswordInputProps.d.ts +21 -0
- package/dist/Components/PasswordInputProps.js +1 -0
- package/dist/Components/Portal.svelte +14 -3
- package/dist/Components/PortalProps.d.ts +20 -1
- package/dist/Components/ProgressBubble.svelte +98 -53
- package/dist/Components/ProgressBubbleProps.d.ts +23 -2
- package/dist/Components/QuerySelect.svelte +103 -159
- package/dist/Components/QuerySelect.svelte.d.ts +2 -29
- package/dist/Components/QuerySelectProps.d.ts +66 -0
- package/dist/Components/QuerySelectProps.js +1 -0
- package/dist/Components/SingleSelect.svelte +86 -108
- package/dist/Components/SingleSelectCommonProps.d.ts +43 -5
- package/dist/Components/SingleSelectPropsAsObject.d.ts +7 -0
- package/dist/Components/SingleSelectPropsAsPrimitive.d.ts +8 -0
- package/dist/Components/StepButton.svelte +19 -69
- package/dist/Components/StepForm.svelte +52 -52
- package/dist/Components/StepFormProps.d.ts +16 -2
- package/dist/Components/Switch.svelte +68 -31
- package/dist/Components/Switch.svelte.d.ts +1 -1
- package/dist/Components/SwitchProps.d.ts +46 -0
- package/dist/Components/Table/Body/HeightData.d.ts +1 -6
- package/dist/Components/Table/Body/HeightData.js +8 -0
- package/dist/Components/Table/Body/QuickSearchCell.svelte +106 -50
- package/dist/Components/Table/Body/QuickSearchCell.svelte.d.ts +12 -11
- package/dist/Components/Table/Body/QuickSearchCellProps.d.ts +6 -0
- package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte +43 -9
- package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte.d.ts +24 -2
- package/dist/Components/Table/Body/Rows/ColumnHighlightProps.d.ts +3 -0
- package/dist/Components/Table/Body/Rows/ColumnList.svelte +15 -5
- package/dist/Components/Table/Body/Rows/ColumnList.svelte.d.ts +12 -11
- package/dist/Components/Table/Body/Rows/ColumnListProps.d.ts +1 -0
- package/dist/Components/Table/Body/Rows/ColumnListRow.svelte +424 -91
- package/dist/Components/Table/Body/Rows/ColumnListRow.svelte.d.ts +12 -11
- package/dist/Components/Table/Body/Rows/ColumnListRowProps.d.ts +5 -0
- package/dist/Components/Table/Body/Rows/Columns/AccessorComponent.svelte +43 -13
- package/dist/Components/Table/Body/Rows/Columns/AccessorComponentProps.d.ts +12 -0
- package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte +50 -38
- package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte.d.ts +12 -12
- package/dist/Components/Table/Body/Rows/Columns/ActionsColumn.d.ts +9 -0
- package/dist/Components/Table/Body/Rows/Columns/ActionsTableCell.d.ts +5 -0
- package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte +61 -26
- package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte.d.ts +14 -13
- package/dist/Components/Table/Body/Rows/Columns/BubbleCellProps.d.ts +12 -0
- package/dist/Components/Table/Body/Rows/Columns/BubbleCellProps.js +1 -0
- package/dist/Components/Table/Body/Rows/Columns/ExpandCell.svelte +36 -16
- package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte +47 -24
- package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte.d.ts +12 -11
- package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCellProps.d.ts +7 -0
- package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte +54 -20
- package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte.d.ts +17 -11
- package/dist/Components/Table/Body/Rows/Columns/RowSelectionColumn.d.ts +8 -0
- package/dist/Components/Table/Body/Rows/Columns/RowSelectionTableCell.d.ts +5 -0
- package/dist/Components/Table/Body/Rows/Columns/SelectColumn.d.ts +11 -0
- package/dist/Components/Table/Body/Rows/Columns/SelectTableCell.d.ts +11 -0
- package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte +55 -40
- package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte.d.ts +11 -0
- package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte +38 -27
- package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte.d.ts +13 -18
- package/dist/Components/Table/Body/Rows/Columns/TableCheckboxProps.d.ts +17 -0
- package/dist/Components/Table/Body/Rows/Columns/TableCheckboxProps.js +1 -0
- package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte +22 -7
- package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte.d.ts +1 -7
- package/dist/Components/Table/Body/Rows/Columns/TableColumnProps.d.ts +16 -0
- package/dist/Components/Table/Body/Rows/Columns/TableColumnProps.js +1 -0
- package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte +61 -31
- package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte.d.ts +12 -11
- package/dist/Components/Table/Body/Rows/Columns/TableDatePickerProps.d.ts +9 -0
- package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte +123 -244
- package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte.d.ts +20 -12
- package/dist/Components/Table/Body/Rows/Columns/TableQueryCell.d.ts +8 -0
- package/dist/Components/Table/Body/Rows/Columns/TableQueryColumn.d.ts +9 -0
- package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte +126 -189
- package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte.d.ts +12 -11
- package/dist/Components/Table/Body/Rows/Columns/TableQuerySelectProps.d.ts +8 -0
- package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte +31 -19
- package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte.d.ts +2 -5
- package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckboxProps.d.ts +14 -0
- package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckboxProps.js +1 -0
- package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte +125 -187
- package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte.d.ts +13 -12
- package/dist/Components/Table/Body/Rows/Columns/TableSelectProps.d.ts +6 -0
- package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte +119 -270
- package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte.d.ts +12 -11
- package/dist/Components/Table/Body/Rows/Columns/TableTextInputProps.d.ts +6 -0
- package/dist/Components/Table/Body/Rows/Columns/ValidityCell.svelte +23 -13
- package/dist/Components/Table/Body/Rows/Columns/_helpers/useAsyncEditable.svelte.d.ts +104 -0
- package/dist/Components/Table/Body/Rows/Columns/_helpers/useAsyncEditable.svelte.js +215 -0
- package/dist/Components/Table/Body/Rows/TableRow.svelte +200 -132
- package/dist/Components/Table/Body/Rows/TableRow.svelte.d.ts +2 -10
- package/dist/Components/Table/Body/Rows/TableRowProps.d.ts +11 -2
- package/dist/Components/Table/Body/TableBody.svelte +170 -53
- package/dist/Components/Table/Body/TableBody.svelte.d.ts +15 -22
- package/dist/Components/Table/Body/TableBodyProps.d.ts +9 -7
- package/dist/Components/Table/ColumnDefinitions/ExampleItemColumnDefRepository.svelte.js +18 -12
- package/dist/Components/Table/ColumnFactory.svelte.d.ts +43 -0
- package/dist/Components/Table/ColumnFactory.svelte.js +339 -0
- package/dist/Components/Table/Headers/HighlightAllHeader.svelte +5 -3
- package/dist/Components/Table/Headers/HighlightAllHeader.svelte.d.ts +12 -11
- package/dist/Components/Table/Headers/SelectAllHeader.svelte +5 -3
- package/dist/Components/Table/Headers/SelectAllHeader.svelte.d.ts +12 -11
- package/dist/Components/Table/Headers/TableHead.svelte +340 -200
- package/dist/Components/Table/Headers/TableHead.svelte.d.ts +13 -16
- package/dist/Components/Table/Headers/TableHeadProps.d.ts +10 -0
- package/dist/Components/Table/Headers/TableHeadProps.js +1 -0
- package/dist/Components/Table/Misc/ColumnPanel.svelte +108 -50
- package/dist/Components/Table/Misc/ColumnPanel.svelte.d.ts +12 -11
- package/dist/Components/Table/Misc/ColumnPanelModal.svelte +20 -7
- package/dist/Components/Table/Misc/ColumnPanelModal.svelte.d.ts +12 -11
- package/dist/Components/Table/Misc/ColumnPanelModalProps.d.ts +5 -0
- package/dist/Components/Table/Misc/FilterInput.svelte +30 -41
- package/dist/Components/Table/Misc/FilterInput.svelte.d.ts +12 -11
- package/dist/Components/Table/Misc/FilterPanel.svelte +387 -29
- package/dist/Components/Table/Misc/FilterPanel.svelte.d.ts +12 -11
- package/dist/Components/Table/Misc/FilterPanelModal.svelte +4 -51
- package/dist/Components/Table/Misc/FilterPanelModal.svelte.d.ts +2 -23
- package/dist/Components/Table/Misc/SidePanel.svelte +12 -9
- package/dist/Components/Table/Misc/SidePanel.svelte.d.ts +1 -7
- package/dist/Components/Table/Misc/SidePanelProps.d.ts +17 -0
- package/dist/Components/Table/Misc/SidePanelProps.js +1 -0
- package/dist/Components/Table/Misc/TableFooter.svelte +44 -35
- package/dist/Components/Table/Misc/TableFooter.svelte.d.ts +13 -14
- package/dist/Components/Table/Misc/TableFooterProps.d.ts +8 -0
- package/dist/Components/Table/Misc/TableFooterProps.js +1 -0
- package/dist/Components/Table/Misc/TableHorizontalBar.svelte +17 -48
- package/dist/Components/Table/Misc/TableHorizontalBar.svelte.d.ts +12 -11
- package/dist/Components/Table/Misc/TableSidebar.svelte +28 -47
- package/dist/Components/Table/Misc/TableSidebar.svelte.d.ts +12 -11
- package/dist/Components/Table/Misc/ToolboxPanel.svelte +121 -55
- package/dist/Components/Table/Misc/ToolboxPanel.svelte.d.ts +12 -11
- package/dist/Components/Table/Misc/ToolboxPanelModal.svelte +31 -24
- package/dist/Components/Table/Misc/ToolboxPanelModal.svelte.d.ts +12 -11
- package/dist/Components/Table/Misc/ToolboxPanelModalProps.d.ts +5 -0
- package/dist/Components/Table/Misc/numberDateFilterTypes.d.ts +7 -4
- package/dist/Components/Table/Misc/numberDateFilterTypes.js +8 -3
- package/dist/Components/Table/Misc/stringFilterTypes.d.ts +6 -4
- package/dist/Components/Table/Misc/stringFilterTypes.js +7 -3
- package/dist/Components/Table/NestedTable.svelte +85 -41
- package/dist/Components/Table/NestedTable.svelte.d.ts +2 -10
- package/dist/Components/Table/NestedTableProps.d.ts +25 -0
- package/dist/Components/Table/NestedTableProps.js +1 -0
- package/dist/Components/Table/SubApis.svelte.d.ts +23 -0
- package/dist/Components/Table/SubApis.svelte.js +359 -0
- package/dist/Components/Table/Table.svelte +347 -172
- package/dist/Components/Table/Table.svelte.d.ts +24 -1
- package/dist/Components/Table/TableHelpers.svelte.d.ts +58 -0
- package/dist/Components/Table/TableHelpers.svelte.js +88 -0
- package/dist/Components/Table/Types/Columns/Column.d.ts +10 -0
- package/dist/Components/Table/Types/Columns/ColumnPinningState.d.ts +12 -0
- package/dist/Components/Table/Types/Columns/ColumnSizingState.d.ts +8 -0
- package/dist/Components/Table/Types/Columns/ColumnType.d.ts +17 -0
- package/dist/Components/Table/Types/Columns/ColumnType.js +18 -1
- package/dist/Components/Table/Types/Columns/DateColumn.d.ts +6 -0
- package/dist/Components/Table/Types/Columns/DateTableCell.d.ts +7 -0
- package/dist/Components/Table/Types/Columns/Definitions/AccessorFn.d.ts +13 -0
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorDef.svelte.d.ts +28 -3
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorDef.svelte.js +15 -0
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorType.d.ts +10 -0
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorType.js +11 -1
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/CheckboxDef.svelte.d.ts +23 -2
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/CheckboxDef.svelte.js +9 -2
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/DateInputDef.svelte.d.ts +21 -2
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/DateInputDef.svelte.js +8 -0
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/NumberInputDef.svelte.d.ts +29 -3
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/NumberInputDef.svelte.js +11 -0
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/QueryDef.svelte.d.ts +23 -0
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/QueryDef.svelte.js +8 -0
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/SelectDef.svelte.d.ts +31 -0
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/SelectDef.svelte.js +17 -3
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/TextInputDef.svelte.d.ts +21 -2
- package/dist/Components/Table/Types/Columns/Definitions/Accessors/TextInputDef.svelte.js +7 -0
- package/dist/Components/Table/Types/Columns/Definitions/Actions/ActionsDef.svelte.d.ts +29 -1
- package/dist/Components/Table/Types/Columns/Definitions/Actions/ActionsDef.svelte.js +17 -3
- package/dist/Components/Table/Types/Columns/Definitions/ColumnDef.svelte.d.ts +122 -11
- package/dist/Components/Table/Types/Columns/Definitions/ColumnDef.svelte.js +77 -11
- package/dist/Components/Table/Types/Columns/Definitions/ColumnDefSet.d.ts +9 -0
- package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.d.ts +41 -1
- package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.js +16 -0
- package/dist/Components/Table/Types/Columns/Definitions/Display/BubbleDef.svelte.d.ts +19 -1
- package/dist/Components/Table/Types/Columns/Definitions/Display/BubbleDef.svelte.js +12 -1
- package/dist/Components/Table/Types/Columns/Definitions/Display/DisplayDef.svelte.d.ts +11 -0
- package/dist/Components/Table/Types/Columns/Definitions/Display/DisplayDef.svelte.js +6 -3
- package/dist/Components/Table/Types/Columns/Definitions/Display/ProgressBarDef.svelte.d.ts +19 -0
- package/dist/Components/Table/Types/Columns/Definitions/Display/ProgressBarDef.svelte.js +25 -1
- package/dist/Components/Table/Types/Columns/Definitions/Display/ValidityDef.svelte.d.ts +26 -0
- package/dist/Components/Table/Types/Columns/Definitions/Display/ValidityDef.svelte.js +20 -5
- package/dist/Components/Table/Types/Columns/Definitions/Expand/ExpandDef.svelte.d.ts +43 -7
- package/dist/Components/Table/Types/Columns/Definitions/Expand/ExpandDef.svelte.js +18 -3
- package/dist/Components/Table/Types/Columns/Definitions/FilterOnly/FilterOnlyDef.svelte.d.ts +19 -5
- package/dist/Components/Table/Types/Columns/Definitions/FilterOnly/FilterOnlyDef.svelte.js +16 -5
- package/dist/Components/Table/Types/Columns/Definitions/JSONColumnDefSet.d.ts +14 -0
- package/dist/Components/Table/Types/Columns/Definitions/RowSelection/RowSelectionDef.svelte.d.ts +34 -2
- package/dist/Components/Table/Types/Columns/Definitions/RowSelection/RowSelectionDef.svelte.js +30 -7
- package/dist/Components/Table/Types/Columns/Definitions/ValidationFn.d.ts +17 -0
- package/dist/Components/Table/Types/Columns/DefsWrapper.d.ts +10 -0
- package/dist/Components/Table/Types/Columns/DisplayType.d.ts +13 -0
- package/dist/Components/Table/Types/Columns/DisplayType.js +14 -1
- package/dist/Components/Table/Types/Columns/ExpandColumn.d.ts +5 -0
- package/dist/Components/Table/Types/Columns/ExpandTableCell.d.ts +7 -0
- package/dist/Components/Table/Types/Columns/JSONColumnPinningState.d.ts +6 -0
- package/dist/Components/Table/Types/Columns/ProgressBarColumn.d.ts +5 -0
- package/dist/Components/Table/Types/Columns/ProgressBarTableCell.d.ts +9 -0
- package/dist/Components/Table/Types/Columns/TableActionButton.d.ts +12 -0
- package/dist/Components/Table/Types/Columns/TableCell.d.ts +16 -2
- package/dist/Components/Table/Types/Columns/VisibilityState.d.ts +12 -0
- package/dist/Components/Table/Types/Context/ColumnLayoutState.svelte.d.ts +173 -0
- package/dist/Components/Table/Types/Context/ColumnLayoutState.svelte.js +241 -0
- package/dist/Components/Table/Types/Context/FilteringState.svelte.d.ts +166 -0
- package/dist/Components/Table/Types/Context/FilteringState.svelte.js +180 -0
- package/dist/Components/Table/Types/Context/FocusState.svelte.d.ts +316 -0
- package/dist/Components/Table/Types/Context/FocusState.svelte.js +751 -0
- package/dist/Components/Table/Types/Context/ITable.d.ts +10 -0
- package/dist/Components/Table/Types/Context/PreferencesState.svelte.d.ts +242 -0
- package/dist/Components/Table/Types/Context/PreferencesState.svelte.js +317 -0
- package/dist/Components/Table/Types/Context/ReadonlyRowModel.d.ts +14 -3
- package/dist/Components/Table/Types/Context/Row.d.ts +18 -0
- package/dist/Components/Table/Types/Context/RowModel.d.ts +11 -0
- package/dist/Components/Table/Types/Context/SelectionState.svelte.d.ts +260 -0
- package/dist/Components/Table/Types/Context/SelectionState.svelte.js +613 -0
- package/dist/Components/Table/Types/Context/SortingState.svelte.d.ts +112 -0
- package/dist/Components/Table/Types/Context/SortingState.svelte.js +272 -0
- package/dist/Components/Table/Types/Context/TableContext.svelte.d.ts +547 -53
- package/dist/Components/Table/Types/Context/TableContext.svelte.js +959 -1259
- package/dist/Components/Table/Types/Context/TableInitOptions.d.ts +16 -0
- package/dist/Components/Table/Types/Context/TableSettings.d.ts +20 -0
- package/dist/Components/Table/Types/Context/VirtualisationState.svelte.d.ts +167 -0
- package/dist/Components/Table/Types/Context/VirtualisationState.svelte.js +226 -0
- package/dist/Components/Table/Types/Coordinates/CellCoordinates.d.ts +12 -0
- package/dist/Components/Table/Types/Coordinates/CellCoordinatesWithoutColumn.d.ts +5 -0
- package/dist/Components/Table/Types/Coordinates/ColumnIndices.d.ts +16 -2
- package/dist/Components/Table/Types/DataRepository/BuiltInRemoteRepository.svelte.d.ts +143 -0
- package/dist/Components/Table/Types/DataRepository/BuiltInRemoteRepository.svelte.js +454 -0
- package/dist/Components/Table/Types/DataRepository/IDataRepository.d.ts +21 -0
- package/dist/Components/Table/Types/DataRepository/ILocalDataRepository.d.ts +10 -0
- package/dist/Components/Table/Types/DataRepository/IRemoteDataRepository.d.ts +16 -0
- package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.d.ts +87 -3
- package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.js +112 -7
- package/dist/Components/Table/Types/DataRepository/SortingState.d.ts +12 -0
- package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.d.ts +87 -2
- package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.js +74 -1
- package/dist/Components/Table/Types/ExpandedPanel.d.ts +9 -0
- package/dist/Components/Table/Types/ExpandedPanel.js +10 -1
- package/dist/Components/Table/Types/Filtering/ColumnFiltersState.d.ts +17 -0
- package/dist/Components/Table/Types/Filtering/CustomFilter.d.ts +21 -0
- package/dist/Components/Table/Types/Filtering/CustomFilterType.d.ts +5 -0
- package/dist/Components/Table/Types/Filtering/CustomFilterType.js +6 -1
- package/dist/Components/Table/Types/Filtering/CustomRemoteFilters.d.ts +6 -0
- package/dist/Components/Table/Types/Filtering/FilterFn.d.ts +28 -0
- package/dist/Components/Table/Types/Filtering/FilterMode.d.ts +7 -0
- package/dist/Components/Table/Types/Filtering/FilterType.d.ts +8 -0
- package/dist/Components/Table/Types/Filtering/FilterType.js +9 -1
- package/dist/Components/Table/Types/Filtering/FilterValueType.d.ts +11 -0
- package/dist/Components/Table/Types/Filtering/FilterValueType.js +12 -1
- package/dist/Components/Table/Types/Filtering/HasCustomFilterFunction.d.ts +23 -2
- package/dist/Components/Table/Types/Filtering/NumberDateFilterMode.d.ts +19 -12
- package/dist/Components/Table/Types/Filtering/NumberDateFilterMode.js +18 -14
- package/dist/Components/Table/Types/Filtering/StringFilterMode.d.ts +22 -15
- package/dist/Components/Table/Types/Filtering/StringFilterMode.js +22 -16
- package/dist/Components/Table/Types/Focus/MultiFocusEdge.d.ts +8 -0
- package/dist/Components/Table/Types/Focus/MultiFocusEdge.js +9 -1
- package/dist/Components/Table/Types/Focus/TableFocusDetails.svelte.d.ts +22 -0
- package/dist/Components/Table/Types/Focus/TableFocusDetails.svelte.js +22 -0
- package/dist/Components/Table/Types/Header.d.ts +8 -0
- package/dist/Components/Table/Types/HeaderGroup.d.ts +7 -0
- package/dist/Components/Table/Types/Layout/CellPinning.d.ts +1 -0
- package/dist/Components/Table/Types/Layout/CellPinning.js +8 -0
- package/dist/Components/Table/Types/OnChangeFn.d.ts +11 -0
- package/dist/Components/Table/Types/Pagination/PaginationState.d.ts +9 -0
- package/dist/Components/Table/Types/Pagination/PaginationType.d.ts +10 -0
- package/dist/Components/Table/Types/Pagination/PaginationType.js +11 -1
- package/dist/Components/Table/Types/Public/AnyEditEvent.d.ts +30 -0
- package/dist/Components/Table/Types/Public/AnyEditEvent.js +1 -0
- package/dist/Components/Table/Types/Public/BaseColumnOptions.d.ts +44 -0
- package/dist/Components/Table/Types/Public/BaseColumnOptions.js +1 -0
- package/dist/Components/Table/Types/Public/ColumnFactory.d.ts +35 -0
- package/dist/Components/Table/Types/Public/ColumnFactory.js +1 -0
- package/dist/Components/Table/Types/Public/ColumnOptions.d.ts +238 -0
- package/dist/Components/Table/Types/Public/ColumnOptions.js +1 -0
- package/dist/Components/Table/Types/Public/ColumnSpec.d.ts +39 -0
- package/dist/Components/Table/Types/Public/ColumnSpec.js +1 -0
- package/dist/Components/Table/Types/Public/CreateTableOptions.d.ts +87 -0
- package/dist/Components/Table/Types/Public/CreateTableOptions.js +1 -0
- package/dist/Components/Table/Types/Public/KeyConstraints.d.ts +42 -0
- package/dist/Components/Table/Types/Public/KeyConstraints.js +22 -0
- package/dist/Components/Table/Types/Public/RowSource.d.ts +87 -0
- package/dist/Components/Table/Types/Public/RowSource.js +1 -0
- package/dist/Components/Table/Types/Public/SelectionOptions.d.ts +26 -0
- package/dist/Components/Table/Types/Public/SelectionOptions.js +1 -0
- package/dist/Components/Table/Types/Public/Table.d.ts +39 -0
- package/dist/Components/Table/Types/Public/Table.js +1 -0
- package/dist/Components/Table/Types/Public/TableInitialState.d.ts +26 -0
- package/dist/Components/Table/Types/Public/TableInitialState.js +1 -0
- package/dist/Components/Table/Types/Public/TablePersistence.d.ts +38 -0
- package/dist/Components/Table/Types/Public/TablePersistence.js +1 -0
- package/dist/Components/Table/Types/Public/TableSubApis.d.ts +157 -0
- package/dist/Components/Table/Types/Public/TableSubApis.js +1 -0
- package/dist/Components/Table/Types/Public/index.d.ts +20 -0
- package/dist/Components/Table/Types/Public/index.js +8 -0
- package/dist/Components/Table/Types/Toolbar/ToolbarPosition.d.ts +4 -0
- package/dist/Components/Table/Types/Toolbar/ToolbarPosition.js +5 -1
- package/dist/Components/Table/createTable.svelte.d.ts +53 -0
- package/dist/Components/Table/createTable.svelte.js +269 -0
- package/dist/Components/TextArea.svelte +37 -18
- package/dist/Components/TextAreaProps.d.ts +37 -0
- package/dist/Components/TextInput.svelte +41 -22
- package/dist/Components/TextInputProps.d.ts +58 -1
- package/dist/Components/ThreeStateRadio.svelte +61 -64
- package/dist/Components/ThreeStateRadioProps.d.ts +29 -1
- package/dist/Components/Touch/BoolCard.svelte +8 -15
- package/dist/Components/Touch/BoolCard.svelte.d.ts +1 -10
- package/dist/Components/Touch/BoolCardProps.d.ts +21 -0
- package/dist/Components/Touch/BoolCardProps.js +1 -0
- package/dist/Components/Touch/DateModal.svelte +17 -25
- package/dist/Components/Touch/DateModal.svelte.d.ts +1 -17
- package/dist/Components/Touch/DateModalProps.d.ts +36 -0
- package/dist/Components/Touch/DateModalProps.js +1 -0
- package/dist/Components/Touch/EditCard.svelte +10 -3
- package/dist/Components/Touch/EditCardProps.d.ts +21 -0
- package/dist/Components/Touch/InfoCard.svelte +14 -7
- package/dist/Components/Touch/InfoCardProps.d.ts +9 -0
- package/dist/Components/Touch/InfoTextCard.svelte +9 -2
- package/dist/Components/Touch/InfoTextCardProps.d.ts +8 -0
- package/dist/Components/Touch/ModalExplanation.svelte +9 -12
- package/dist/Components/Touch/ModalExplanation.svelte.d.ts +1 -6
- package/dist/Components/Touch/ModalExplanationProps.d.ts +22 -0
- package/dist/Components/Touch/ModalExplanationProps.js +1 -0
- package/dist/Components/Touch/NumberKeyboard.svelte +62 -105
- package/dist/Components/Touch/NumberKeyboardProps.d.ts +19 -0
- package/dist/Components/Touch/NumberModal.svelte +16 -6
- package/dist/Components/Touch/NumberModalProps.d.ts +23 -1
- package/dist/Components/Touch/PlusMinusCard.svelte +12 -16
- package/dist/Components/Touch/PlusMinusCard.svelte.d.ts +1 -6
- package/dist/Components/Touch/PlusMinusCardProps.d.ts +18 -0
- package/dist/Components/Touch/PlusMinusCardProps.js +1 -0
- package/dist/Components/Touch/SelectModal.svelte +33 -15
- package/dist/Components/Touch/SelectModalProps.d.ts +22 -1
- package/dist/Components/Touch/SummaryCard.svelte +56 -14
- package/dist/Components/Touch/SummaryCardProps.d.ts +16 -3
- package/dist/Components/Touch/TextAreaModal.svelte +18 -9
- package/dist/Components/Touch/TextAreaModalProps.d.ts +21 -0
- package/dist/Components/Touch/TextModal.svelte +15 -32
- package/dist/Components/Touch/TextModalProps.d.ts +28 -1
- package/dist/Components/Touch/TouchCard.svelte +9 -47
- package/dist/Components/Touch/TouchCardProps.d.ts +21 -0
- package/dist/Components/Touch/TouchModal.svelte +105 -99
- package/dist/Components/Touch/TouchModalProps.d.ts +35 -1
- package/dist/Components/Touch/UtilityButton.svelte +36 -18
- package/dist/Components/Touch/UtilityButtonProps.d.ts +16 -0
- package/dist/Components/VerticalTabGroup.svelte +18 -40
- package/dist/Components/VerticalTabGroupButton.svelte +11 -50
- package/dist/Components/VerticalTabGroupProps.d.ts +15 -2
- package/dist/Contexts/AlertContext.svelte.d.ts +92 -8
- package/dist/Contexts/AlertContext.svelte.js +69 -6
- package/dist/Contexts/ContextMenuContext.svelte.d.ts +54 -8
- package/dist/Contexts/ContextMenuContext.svelte.js +48 -2
- package/dist/Contexts/TestContext.svelte.d.ts +27 -1
- package/dist/Contexts/TestContext.svelte.js +29 -1
- package/dist/Contexts/ToastContext.svelte.d.ts +29 -1
- package/dist/Contexts/ToastContext.svelte.js +93 -24
- package/dist/Contexts/TooltipContext.svelte.d.ts +68 -1
- package/dist/Contexts/TooltipContext.svelte.js +70 -7
- package/dist/Contexts/UntypedInputContext.svelte.d.ts +54 -5
- package/dist/Contexts/UntypedInputContext.svelte.js +87 -34
- package/dist/Delay/Delay.js +1 -1
- package/dist/Helpers/AsyncFlag.svelte.d.ts +39 -0
- package/dist/Helpers/AsyncFlag.svelte.js +72 -0
- package/dist/Helpers/Datamatrix.d.ts +10 -1
- package/dist/Helpers/Datamatrix.js +290 -1
- package/dist/Helpers/Helpers.svelte.d.ts +252 -18
- package/dist/Helpers/Helpers.svelte.js +271 -75
- package/dist/Helpers/INamed.d.ts +6 -0
- package/dist/Helpers/Storage.d.ts +67 -0
- package/dist/Helpers/Storage.js +138 -0
- package/dist/Helpers/dropdownPortal.d.ts +52 -0
- package/dist/Helpers/dropdownPortal.js +232 -0
- package/dist/Helpers/dropdownPortal.svelte.d.ts +2 -0
- package/dist/Helpers/dropdownPortal.svelte.js +5 -0
- package/dist/Helpers/memoiseByRow.d.ts +45 -0
- package/dist/Helpers/memoiseByRow.js +78 -0
- package/dist/Helpers/prefersReducedMotion.svelte.d.ts +27 -0
- package/dist/Helpers/prefersReducedMotion.svelte.js +18 -0
- package/dist/Helpers/useTooltip.svelte.d.ts +53 -0
- package/dist/Helpers/useTooltip.svelte.js +62 -0
- package/dist/Types/Examples/ExampleModal.svelte +2 -1
- package/dist/Types/Examples/ExampleSelectEnum.js +1 -1
- package/dist/Types/Internal/AsyncFlag.d.ts +7 -0
- package/dist/Types/Internal/AsyncFlag.js +1 -0
- package/dist/Types/Internal/BigRadioOption.d.ts +8 -0
- package/dist/Types/Internal/ButtonProp.d.ts +24 -2
- package/dist/Types/Internal/CallbackButton.d.ts +12 -0
- package/dist/Types/Internal/DateChange.d.ts +8 -0
- package/dist/Types/Internal/DatePickerType.d.ts +5 -0
- package/dist/Types/Internal/DatePickerType.js +6 -1
- package/dist/Types/Internal/IdentifiableToastMessage.d.ts +8 -0
- package/dist/Types/Internal/InputVariant.d.ts +5 -0
- package/dist/Types/Internal/InputVariant.js +6 -1
- package/dist/Types/Internal/Misc.d.ts +91 -0
- package/dist/Types/Internal/RefWrapper.d.ts +6 -0
- package/dist/Types/Internal/SelectOption.d.ts +8 -0
- package/dist/Types/Internal/Shape.d.ts +1 -0
- package/dist/Types/Internal/Shape.js +2 -1
- package/dist/Types/Internal/Side.d.ts +1 -0
- package/dist/Types/Internal/Side.js +2 -1
- package/dist/Types/Internal/Size.d.ts +5 -0
- package/dist/Types/Internal/Size.js +6 -1
- package/dist/Types/Internal/TabOption.d.ts +15 -5
- package/dist/Types/Internal/Ternary.d.ts +6 -0
- package/dist/Types/Internal/Ternary.js +7 -1
- package/dist/Types/Internal/ToastMessage.d.ts +28 -0
- package/dist/Types/Internal/Validity.d.ts +6 -0
- package/dist/Types/Internal/Validity.js +7 -1
- package/dist/Types/Internal/ValidityWrapper.d.ts +8 -0
- package/dist/Types/Internal/Variant.d.ts +5 -0
- package/dist/Types/Internal/Variant.js +6 -1
- package/dist/index.d.ts +27 -82
- package/dist/index.js +24 -62
- package/dist/scss/_mixins.scss +451 -167
- package/dist/scss/_motion.scss +57 -0
- package/dist/scss/_sizing.scss +16 -0
- package/dist/scss/colours.js +2 -2
- package/dist/scss/sizing.d.ts +9 -0
- package/dist/scss/sizing.js +10 -1
- package/package.json +35 -31
|
@@ -1,3 +1,9 @@
|
|
|
1
1
|
import type { SvelteMap } from 'svelte/reactivity';
|
|
2
2
|
import type { CustomFilter } from './CustomFilter.js';
|
|
3
|
+
/**
|
|
4
|
+
* Reactive registry of custom filters keyed by `CustomFilter.id`. Held on
|
|
5
|
+
* `DefsWrapper.remoteFilters` and consumed by the filter panel. The
|
|
6
|
+
* `SvelteMap` choice (rather than a plain `Map`) ensures the filter panel
|
|
7
|
+
* re-renders when filters are added / removed.
|
|
8
|
+
*/
|
|
3
9
|
export type CustomRemoteFilters<FilterValueType> = SvelteMap<string, CustomFilter<FilterValueType>>;
|
|
@@ -1,9 +1,37 @@
|
|
|
1
1
|
import type { Row } from '../Context/Row.js';
|
|
2
|
+
/**
|
|
3
|
+
* Date column filter value: an inclusive `[from, to]` tuple. Either bound
|
|
4
|
+
* may be `undefined` to represent an open-ended range (e.g.
|
|
5
|
+
* `[d, undefined]` is "from `d` onwards").
|
|
6
|
+
*/
|
|
2
7
|
export type DateFilterValueType = [Date | undefined, Date | undefined];
|
|
8
|
+
/**
|
|
9
|
+
* Number column filter value: an array of `number | string | undefined`.
|
|
10
|
+
* Strings are accepted because the filter input may forward raw string
|
|
11
|
+
* values for ranges or `In` / `NotIn` mode lists; the filter function is
|
|
12
|
+
* expected to coerce them. `undefined` entries represent open ends.
|
|
13
|
+
*/
|
|
3
14
|
export type NumberFilterValueType = Array<number | string | undefined>;
|
|
15
|
+
/**
|
|
16
|
+
* Select column filter value. Permits string, array, set, or wrapped-object
|
|
17
|
+
* shapes so the same filter can serve both single-select and multi-select
|
|
18
|
+
* columns and remote-shaped value objects.
|
|
19
|
+
*/
|
|
4
20
|
export type SelectFilterValueType<T, columnType = T[keyof T]> = string | Array<unknown> | Set<unknown> | {
|
|
5
21
|
value: columnType;
|
|
6
22
|
} | undefined;
|
|
23
|
+
/** Tri-state boolean filter: `true` / `false` / `null` (no filter). */
|
|
7
24
|
export type BoolFilterValueType = boolean | null;
|
|
25
|
+
/** String filter: a string or `null` (no filter). */
|
|
8
26
|
export type StringFilterValueType = string | null;
|
|
27
|
+
/**
|
|
28
|
+
* Per-column row-matching function. Returns `true` to keep the row in the
|
|
29
|
+
* filtered set, `false` to drop it. The `in FilterValueType` variance marker
|
|
30
|
+
* is correct because the function consumes (but does not produce) the filter
|
|
31
|
+
* value.
|
|
32
|
+
*
|
|
33
|
+
* May return a `Promise<boolean>` so the implementation can read from an
|
|
34
|
+
* async source; `LocalTableDataRepository` awaits the result before applying
|
|
35
|
+
* pagination.
|
|
36
|
+
*/
|
|
9
37
|
export type FilterFn<T extends object, in FilterValueType> = (row: Row<T>, columnId: string, filterValue: FilterValueType) => boolean | Promise<boolean>;
|
|
@@ -1,3 +1,10 @@
|
|
|
1
1
|
import type { NumberDateFilterMode } from './NumberDateFilterMode.js';
|
|
2
2
|
import type { StringFilterMode } from './StringFilterMode.js';
|
|
3
|
+
/**
|
|
4
|
+
* Union of all per-column filter operators. The string values are operator
|
|
5
|
+
* suffixes appended to query parameters when serialising filter state, so
|
|
6
|
+
* the literal values are part of the on-disk / on-wire contract and must
|
|
7
|
+
* not be reordered or renamed without a migration. See
|
|
8
|
+
* `NumberDateFilterMode` and `StringFilterMode` for the canonical lists.
|
|
9
|
+
*/
|
|
3
10
|
export type FilterMode = StringFilterMode | NumberDateFilterMode;
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discriminator on the active filter pipeline:
|
|
3
|
+
*
|
|
4
|
+
* - `Virtual` - filters are applied client-side over the full data set held
|
|
5
|
+
* by `LocalTableDataRepository`.
|
|
6
|
+
* - `Real` - filters are forwarded to the remote repository and applied
|
|
7
|
+
* server-side; the client only sees the already-filtered page.
|
|
8
|
+
*/
|
|
1
9
|
export declare const FilterType: {
|
|
2
10
|
readonly Virtual: "Virtual";
|
|
3
11
|
readonly Real: "Real";
|
|
@@ -1,5 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discriminator on the active filter pipeline:
|
|
3
|
+
*
|
|
4
|
+
* - `Virtual` - filters are applied client-side over the full data set held
|
|
5
|
+
* by `LocalTableDataRepository`.
|
|
6
|
+
* - `Real` - filters are forwarded to the remote repository and applied
|
|
7
|
+
* server-side; the client only sees the already-filtered page.
|
|
8
|
+
*/
|
|
1
9
|
export const FilterType = {
|
|
2
10
|
Virtual: 'Virtual',
|
|
3
|
-
Real: 'Real'
|
|
11
|
+
Real: 'Real',
|
|
4
12
|
};
|
|
5
13
|
Object.freeze(FilterType);
|
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discriminator on the value-side shape of a column filter. Selects which
|
|
3
|
+
* `FilterFn` and filter input the table wires up:
|
|
4
|
+
*
|
|
5
|
+
* - `String` - `StringFilterValueType`, text input with `StringFilterMode`s.
|
|
6
|
+
* - `Number` - `NumberFilterValueType`, number input with
|
|
7
|
+
* `NumberDateFilterMode`s.
|
|
8
|
+
* - `Date` - `DateFilterValueType`, date picker.
|
|
9
|
+
* - `Bool` - `BoolFilterValueType`, tri-state switch.
|
|
10
|
+
* - `Select` - `SelectFilterValueType`, dropdown / multi-select.
|
|
11
|
+
*/
|
|
1
12
|
export declare const FilterValueType: {
|
|
2
13
|
readonly String: "String";
|
|
3
14
|
readonly Number: "Number";
|
|
@@ -1,8 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discriminator on the value-side shape of a column filter. Selects which
|
|
3
|
+
* `FilterFn` and filter input the table wires up:
|
|
4
|
+
*
|
|
5
|
+
* - `String` - `StringFilterValueType`, text input with `StringFilterMode`s.
|
|
6
|
+
* - `Number` - `NumberFilterValueType`, number input with
|
|
7
|
+
* `NumberDateFilterMode`s.
|
|
8
|
+
* - `Date` - `DateFilterValueType`, date picker.
|
|
9
|
+
* - `Bool` - `BoolFilterValueType`, tri-state switch.
|
|
10
|
+
* - `Select` - `SelectFilterValueType`, dropdown / multi-select.
|
|
11
|
+
*/
|
|
1
12
|
export const FilterValueType = {
|
|
2
13
|
String: 'String',
|
|
3
14
|
Number: 'Number',
|
|
4
15
|
Date: 'Date',
|
|
5
16
|
Bool: 'Bool',
|
|
6
|
-
Select: 'Select'
|
|
17
|
+
Select: 'Select',
|
|
7
18
|
};
|
|
8
19
|
Object.freeze(FilterValueType);
|
|
@@ -1,3 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import type { FilterFn } from './FilterFn.js';
|
|
2
|
+
/**
|
|
3
|
+
* Type predicate companion used by `isSearchable(def)` to narrow a
|
|
4
|
+
* `ColumnDef` to "has a non-undefined `filterFn`". Used to gate filter UI
|
|
5
|
+
* surfaces (quick search, advanced filter input) on whether a column can
|
|
6
|
+
* actually be searched.
|
|
7
|
+
*
|
|
8
|
+
* The historical declaration was a self-recursive `{ filterFn:
|
|
9
|
+
* HasCustomFilterFunction }`, which compiled but reduced to a meaningless
|
|
10
|
+
* "anything truthy" check. The corrected form requires `filterFn` to be a
|
|
11
|
+
* `FilterFn`, matching what the predicate body actually asserts:
|
|
12
|
+
*
|
|
13
|
+
* ```ts
|
|
14
|
+
* def.filterFn && typeof def.filterFn === 'function'
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* `T` defaults to `object` and `FilterValueType` to `unknown` so existing
|
|
18
|
+
* call sites that do not parametrise the type continue to compile; concrete
|
|
19
|
+
* consumers can narrow further once `ColumnDef.filterFn`'s generic chain is
|
|
20
|
+
* tightened.
|
|
21
|
+
*/
|
|
22
|
+
export type HasCustomFilterFunction<T extends object = object, FilterValueType = unknown> = {
|
|
23
|
+
filterFn: FilterFn<T, FilterValueType>;
|
|
3
24
|
};
|
|
@@ -1,12 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Modes available when filtering a numeric or date column. The string values are
|
|
3
|
+
* the filter operator suffixes appended to query parameters; they MUST be preserved
|
|
4
|
+
* verbatim because serialised filter presets in localStorage and any in-flight
|
|
5
|
+
* URL/query encodings depend on them.
|
|
6
|
+
*/
|
|
7
|
+
export declare const NumberDateFilterMode: Readonly<{
|
|
8
|
+
readonly Equals: "=";
|
|
9
|
+
readonly NotEquals: "__notequals=";
|
|
10
|
+
readonly LessThan: "__lt=";
|
|
11
|
+
readonly LessThanOrEqual: "__lte=";
|
|
12
|
+
readonly GreaterThan: "__gt=";
|
|
13
|
+
readonly GreaterThanOrEqual: "__gte=";
|
|
14
|
+
readonly Between: "__between=";
|
|
15
|
+
readonly In: "__in=";
|
|
16
|
+
readonly NotIn: "__notin=";
|
|
17
|
+
readonly null: "__null=";
|
|
18
|
+
}>;
|
|
19
|
+
export type NumberDateFilterMode = (typeof NumberDateFilterMode)[keyof typeof NumberDateFilterMode];
|
|
@@ -1,14 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Modes available when filtering a numeric or date column. The string values are
|
|
3
|
+
* the filter operator suffixes appended to query parameters; they MUST be preserved
|
|
4
|
+
* verbatim because serialised filter presets in localStorage and any in-flight
|
|
5
|
+
* URL/query encodings depend on them.
|
|
6
|
+
*/
|
|
7
|
+
export const NumberDateFilterMode = Object.freeze({
|
|
8
|
+
Equals: '=',
|
|
9
|
+
NotEquals: '__notequals=',
|
|
10
|
+
LessThan: '__lt=',
|
|
11
|
+
LessThanOrEqual: '__lte=',
|
|
12
|
+
GreaterThan: '__gt=',
|
|
13
|
+
GreaterThanOrEqual: '__gte=',
|
|
14
|
+
Between: '__between=',
|
|
15
|
+
In: '__in=',
|
|
16
|
+
NotIn: '__notin=',
|
|
17
|
+
null: '__null=',
|
|
18
|
+
});
|
|
@@ -1,15 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Modes available when filtering a string (or boolean coerced to string) column.
|
|
3
|
+
* The string values are the filter operator suffixes appended to query parameters;
|
|
4
|
+
* they MUST be preserved verbatim because serialised filter presets in
|
|
5
|
+
* localStorage and any in-flight URL/query encodings depend on them.
|
|
6
|
+
*/
|
|
7
|
+
export declare const StringFilterMode: Readonly<{
|
|
8
|
+
readonly ImplicitEquals: "=";
|
|
9
|
+
readonly Equals: "__equals=";
|
|
10
|
+
readonly NotEquals: "__notequals=";
|
|
11
|
+
readonly Contains: "__contains=";
|
|
12
|
+
readonly NotContains: "__notcontains=";
|
|
13
|
+
readonly StartsWith: "__startswith=";
|
|
14
|
+
readonly NotStartsWith: "__notstartswith=";
|
|
15
|
+
readonly EndsWith: "__endswith=";
|
|
16
|
+
readonly NotEndsWith: "__notendswith=";
|
|
17
|
+
readonly In: "__in=";
|
|
18
|
+
readonly NotIn: "__notin=";
|
|
19
|
+
readonly Empty: "__empty=";
|
|
20
|
+
readonly null: "__null=";
|
|
21
|
+
}>;
|
|
22
|
+
export type StringFilterMode = (typeof StringFilterMode)[keyof typeof StringFilterMode];
|
|
@@ -1,16 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
(
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Modes available when filtering a string (or boolean coerced to string) column.
|
|
3
|
+
* The string values are the filter operator suffixes appended to query parameters;
|
|
4
|
+
* they MUST be preserved verbatim because serialised filter presets in
|
|
5
|
+
* localStorage and any in-flight URL/query encodings depend on them.
|
|
6
|
+
*/
|
|
7
|
+
export const StringFilterMode = Object.freeze({
|
|
8
|
+
// Used by booleans which fall under 'true'/'false' and therefore strings in the current implementation.
|
|
9
|
+
ImplicitEquals: '=',
|
|
10
|
+
Equals: '__equals=',
|
|
11
|
+
NotEquals: '__notequals=',
|
|
12
|
+
Contains: '__contains=',
|
|
13
|
+
NotContains: '__notcontains=',
|
|
14
|
+
StartsWith: '__startswith=',
|
|
15
|
+
NotStartsWith: '__notstartswith=',
|
|
16
|
+
EndsWith: '__endswith=',
|
|
17
|
+
NotEndsWith: '__notendswith=',
|
|
18
|
+
In: '__in=',
|
|
19
|
+
NotIn: '__notin=',
|
|
20
|
+
Empty: '__empty=',
|
|
21
|
+
null: '__null=',
|
|
22
|
+
});
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Edge positions for cells that sit on the boundary of a multi-cell focus
|
|
3
|
+
* selection. Currently only `ActionsCell.svelte` consumes a single
|
|
4
|
+
* `MultiFocusEdge | undefined` field; the bulk of `TableFocusDetails` still
|
|
5
|
+
* exposes per-edge booleans (`topEdge`, `leftEdge`, ...). Either fully
|
|
6
|
+
* converting `TableFocusDetails` to the enum or deleting this type is
|
|
7
|
+
* deferred (workorder Types-Focus finding 8).
|
|
8
|
+
*/
|
|
1
9
|
export declare const MultiFocusEdge: {
|
|
2
10
|
readonly TopLeft: "TopLeft";
|
|
3
11
|
readonly Top: "Top";
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Edge positions for cells that sit on the boundary of a multi-cell focus
|
|
3
|
+
* selection. Currently only `ActionsCell.svelte` consumes a single
|
|
4
|
+
* `MultiFocusEdge | undefined` field; the bulk of `TableFocusDetails` still
|
|
5
|
+
* exposes per-edge booleans (`topEdge`, `leftEdge`, ...). Either fully
|
|
6
|
+
* converting `TableFocusDetails` to the enum or deleting this type is
|
|
7
|
+
* deferred (workorder Types-Focus finding 8).
|
|
8
|
+
*/
|
|
1
9
|
export const MultiFocusEdge = {
|
|
2
10
|
TopLeft: 'TopLeft',
|
|
3
11
|
Top: 'Top',
|
|
@@ -6,6 +14,6 @@ export const MultiFocusEdge = {
|
|
|
6
14
|
BottomRight: 'BottomRight',
|
|
7
15
|
Bottom: 'Bottom',
|
|
8
16
|
BottomLeft: 'BottomLeft',
|
|
9
|
-
Left: 'Left'
|
|
17
|
+
Left: 'Left',
|
|
10
18
|
};
|
|
11
19
|
Object.freeze(MultiFocusEdge);
|
|
@@ -4,6 +4,28 @@ import type { TableCell } from '../Columns/TableCell.js';
|
|
|
4
4
|
import type { TableContext } from '../Context/TableContext.svelte.js';
|
|
5
5
|
import type { Primitive } from '../Context/TableInitOptions.js';
|
|
6
6
|
import type { CellCoordinates } from '../Coordinates/CellCoordinates.js';
|
|
7
|
+
/**
|
|
8
|
+
* Per-cell helper that derives "is this cell part of the current focus
|
|
9
|
+
* group" and the inline `box-shadow:` CSS string that draws the multi-focus
|
|
10
|
+
* outline. One instance per cell per render is the current pattern; the
|
|
11
|
+
* caching/flattening rewrite is tracked under the parent workorder
|
|
12
|
+
* (Types-Focus finding 1 / 2) and is the largest contributor to cell-render
|
|
13
|
+
* cost.
|
|
14
|
+
*
|
|
15
|
+
* Public surface:
|
|
16
|
+
*
|
|
17
|
+
* - `coordinates` - the `{ row, column, id }` for this cell.
|
|
18
|
+
* - `isMultiFocused` / `isMultiFocusStart` - whether this cell is in the
|
|
19
|
+
* focus group / the anchor cell.
|
|
20
|
+
* - `topEdge` / `rightEdge` / `bottomEdge` / `leftEdge` - whether this cell
|
|
21
|
+
* sits on each edge of the multi-focus rectangle.
|
|
22
|
+
* - `validity` - the `Promise<Validity | ValidityWrapper | undefined>` for
|
|
23
|
+
* this cell, computed by invoking `columnDef.isValid` (currently
|
|
24
|
+
* unwrapped in a try/catch fence; see the security note in the workorder).
|
|
25
|
+
* - `outline` - the inline `box-shadow: ...;` CSS fragment for the cell;
|
|
26
|
+
* safe because the colour comes from the `Colour['$brand-primary']` token
|
|
27
|
+
* and not user input.
|
|
28
|
+
*/
|
|
7
29
|
export declare class TableFocusDetails<T extends object, RowIdType extends Primitive> {
|
|
8
30
|
private cell;
|
|
9
31
|
private tableContext;
|
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
import { Colour } from '../../../../scss/colours.js';
|
|
2
2
|
import { Validity } from '../../../../Types/Internal/Validity.js';
|
|
3
|
+
/**
|
|
4
|
+
* Per-cell helper that derives "is this cell part of the current focus
|
|
5
|
+
* group" and the inline `box-shadow:` CSS string that draws the multi-focus
|
|
6
|
+
* outline. One instance per cell per render is the current pattern; the
|
|
7
|
+
* caching/flattening rewrite is tracked under the parent workorder
|
|
8
|
+
* (Types-Focus finding 1 / 2) and is the largest contributor to cell-render
|
|
9
|
+
* cost.
|
|
10
|
+
*
|
|
11
|
+
* Public surface:
|
|
12
|
+
*
|
|
13
|
+
* - `coordinates` - the `{ row, column, id }` for this cell.
|
|
14
|
+
* - `isMultiFocused` / `isMultiFocusStart` - whether this cell is in the
|
|
15
|
+
* focus group / the anchor cell.
|
|
16
|
+
* - `topEdge` / `rightEdge` / `bottomEdge` / `leftEdge` - whether this cell
|
|
17
|
+
* sits on each edge of the multi-focus rectangle.
|
|
18
|
+
* - `validity` - the `Promise<Validity | ValidityWrapper | undefined>` for
|
|
19
|
+
* this cell, computed by invoking `columnDef.isValid` (currently
|
|
20
|
+
* unwrapped in a try/catch fence; see the security note in the workorder).
|
|
21
|
+
* - `outline` - the inline `box-shadow: ...;` CSS fragment for the cell;
|
|
22
|
+
* safe because the colour comes from the `Colour['$brand-primary']` token
|
|
23
|
+
* and not user input.
|
|
24
|
+
*/
|
|
3
25
|
export class TableFocusDetails {
|
|
4
26
|
cell;
|
|
5
27
|
tableContext;
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
import type { Column } from './Columns/Column.js';
|
|
2
|
+
/**
|
|
3
|
+
* Header-cell view of one column. Produced by the header machinery and
|
|
4
|
+
* consumed by `TableHead.svelte`. Holds the underlying `Column` plus
|
|
5
|
+
* header-only affordances: column-span, header size, and the resize handler.
|
|
6
|
+
*
|
|
7
|
+
* Variance markers (`in FilterValueType`, `out FilterOptionsType`) mirror
|
|
8
|
+
* the inner `Column<T, F, O>` so headers compose with column assignability.
|
|
9
|
+
*/
|
|
2
10
|
export interface Header<T extends object, in FilterValueType, out FilterOptionsType> {
|
|
3
11
|
id: string;
|
|
4
12
|
colSpan: number;
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
import type { Header } from './Header.js';
|
|
2
|
+
/**
|
|
3
|
+
* One row of headers (left / centre / right group). `headers` is typed with
|
|
4
|
+
* the conservative placeholder element type `Header<T, never, unknown>`
|
|
5
|
+
* because the group holds heterogeneous columns whose per-column filter
|
|
6
|
+
* value type cannot be expressed in the array element type. Tightening to
|
|
7
|
+
* `Header<T, unknown, unknown>` is deferred (workorder Types-Root finding 1).
|
|
8
|
+
*/
|
|
2
9
|
export interface HeaderGroup<T extends object> {
|
|
3
10
|
id: string;
|
|
4
11
|
headers: Array<Header<T, never, unknown>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// File scheduled for deletion. The CellPinning type was designed for
|
|
2
|
+
// a per-cell pinning prop, but the final div+grid refactor moved the
|
|
3
|
+
// sticky positioning concern onto a wrapper `<div role="cell">` in
|
|
4
|
+
// TableRow / TableHead. Cells no longer need to know about pinning.
|
|
5
|
+
//
|
|
6
|
+
// Kept as an empty module until the next housekeeping pass removes it
|
|
7
|
+
// from the tree. No exports.
|
|
8
|
+
export {};
|
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tanstack-style updater: either the new value directly, or a function from
|
|
3
|
+
* the old value to the new value. The locally-declared shape (rather than
|
|
4
|
+
* importing `Updater` from `svelte/store`) is intentional - scoria avoids a
|
|
5
|
+
* runtime dependency on legacy Svelte stores per project convention.
|
|
6
|
+
*/
|
|
1
7
|
type Updater<T> = T | ((old: T) => T);
|
|
8
|
+
/**
|
|
9
|
+
* Subscriber-callback signature for state changes on `ITable`. Accepts the
|
|
10
|
+
* new value or an updater function. Used by `onColumnVisibilityChange`,
|
|
11
|
+
* `onColumnFiltersChange`, etc. on the table-options surface.
|
|
12
|
+
*/
|
|
2
13
|
export type OnChangeFn<T> = (updaterOrValue: Updater<T>) => void;
|
|
3
14
|
export {};
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pagination cursor held by `IDataRepository.paginationState`.
|
|
3
|
+
*
|
|
4
|
+
* - `pageIndex` is zero-based (`0` is the first page). The footer / toolbar
|
|
5
|
+
* add `1` when displaying it to the user.
|
|
6
|
+
* - `pageSize` is the number of rows per page. Bare numbers rather than
|
|
7
|
+
* branded `PageIndex` / `PageSize`; brand promotion is deferred (workorder
|
|
8
|
+
* Types-Root finding 4).
|
|
9
|
+
*/
|
|
1
10
|
export interface PaginationState {
|
|
2
11
|
pageIndex: number;
|
|
3
12
|
pageSize: number;
|
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discriminator on a `IDataRepository`'s pagination mode. Used by
|
|
3
|
+
* `TableContext` to select code paths and by `TableFooter.svelte` to decide
|
|
4
|
+
* whether to render the page-count label.
|
|
5
|
+
*
|
|
6
|
+
* - `Remote` - server-paged; `lastPage` is authoritative from the backend.
|
|
7
|
+
* - `Local` - client-side pagination over the full in-memory data set.
|
|
8
|
+
* - `None` - no pagination (currently unused; the footer simply renders
|
|
9
|
+
* no page controls in this case).
|
|
10
|
+
*/
|
|
1
11
|
export declare const PaginationType: {
|
|
2
12
|
readonly Remote: "Remote";
|
|
3
13
|
readonly Local: "Local";
|
|
@@ -1,6 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discriminator on a `IDataRepository`'s pagination mode. Used by
|
|
3
|
+
* `TableContext` to select code paths and by `TableFooter.svelte` to decide
|
|
4
|
+
* whether to render the page-count label.
|
|
5
|
+
*
|
|
6
|
+
* - `Remote` - server-paged; `lastPage` is authoritative from the backend.
|
|
7
|
+
* - `Local` - client-side pagination over the full in-memory data set.
|
|
8
|
+
* - `None` - no pagination (currently unused; the footer simply renders
|
|
9
|
+
* no page controls in this case).
|
|
10
|
+
*/
|
|
1
11
|
export const PaginationType = {
|
|
2
12
|
Remote: 'Remote',
|
|
3
13
|
Local: 'Local',
|
|
4
|
-
None: 'None'
|
|
14
|
+
None: 'None',
|
|
5
15
|
};
|
|
6
16
|
Object.freeze(PaginationType);
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { CellCoordinates } from '../Coordinates/CellCoordinates.js';
|
|
2
|
+
/**
|
|
3
|
+
* Payload passed to the top-level `onAnyEdit` callback (see `CreateTableOptions.onAnyEdit`).
|
|
4
|
+
*
|
|
5
|
+
* Fires after every cell edit, regardless of column. Use for change tracking,
|
|
6
|
+
* batched saves, telemetry, audit logs, or anything else that needs a single
|
|
7
|
+
* observation point across every editable column.
|
|
8
|
+
*
|
|
9
|
+
* `value` is typed `unknown` deliberately. The Table cannot statically know
|
|
10
|
+
* which column produced the edit (the discriminated mapped-type funnel was
|
|
11
|
+
* considered and rejected in the proposal because it required `as const`
|
|
12
|
+
* column arrays, which the FloWMS audit shows are never possible in practice).
|
|
13
|
+
* Consumers that need a typed value go through per-column `onEdit` instead.
|
|
14
|
+
*
|
|
15
|
+
* When both per-column `onEdit` and `onAnyEdit` are configured, the per-column
|
|
16
|
+
* callback fires first with its typed `value`; `onAnyEdit` runs after the
|
|
17
|
+
* per-column callback resolves. A per-column callback that throws or rejects
|
|
18
|
+
* suppresses the corresponding `onAnyEdit`.
|
|
19
|
+
*/
|
|
20
|
+
export interface AnyEditEvent<TRow extends object> {
|
|
21
|
+
/** The column id whose cell was edited. */
|
|
22
|
+
readonly column: string;
|
|
23
|
+
/** The new value. Untyped at this seam by design; use per-column `onEdit`
|
|
24
|
+
* for the typed value. */
|
|
25
|
+
readonly value: unknown;
|
|
26
|
+
/** The row instance the edit applied to. */
|
|
27
|
+
readonly row: TRow;
|
|
28
|
+
/** Full cell coordinates. */
|
|
29
|
+
readonly coords: CellCoordinates;
|
|
30
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { Snippet } from 'svelte';
|
|
2
|
+
import type { Pixels } from '../../../../Types/Internal/Misc.js';
|
|
3
|
+
export type { Pixels };
|
|
4
|
+
/**
|
|
5
|
+
* Options shared by every column kind. Each per-kind option interface
|
|
6
|
+
* (`TextColumnOptions`, `NumberColumnOptions`, etc.) extends this base.
|
|
7
|
+
*
|
|
8
|
+
* Width fields use plain `number` (pixels) at the public surface; the column
|
|
9
|
+
* factory converts to the internal `Pixels` brand at the boundary so consumers
|
|
10
|
+
* do not have to import the brand or its constructor. This matches the
|
|
11
|
+
* "branded primitives stay invisible at the call site" principle in the
|
|
12
|
+
* proposal (section 3 of `agent-review/proposals/table-api.md`).
|
|
13
|
+
*/
|
|
14
|
+
export interface BaseColumnOptions {
|
|
15
|
+
/** Column header. Plain string renders as text; a Snippet renders arbitrary
|
|
16
|
+
* markup. Only string headers serialise cleanly into saved column presets;
|
|
17
|
+
* Snippet headers are stored by id and re-rendered from the live column
|
|
18
|
+
* defs on hydration. */
|
|
19
|
+
header: string | Snippet;
|
|
20
|
+
/** Minimum width in pixels. Defaults to 48. */
|
|
21
|
+
minWidth?: number;
|
|
22
|
+
/** Initial width in pixels. Defaults to `minWidth`. */
|
|
23
|
+
width?: number;
|
|
24
|
+
/** Whether this column may be sorted. Defaults to true. */
|
|
25
|
+
allowSorting?: boolean;
|
|
26
|
+
/** Whether this column may be filtered. Defaults to true. */
|
|
27
|
+
allowFiltering?: boolean;
|
|
28
|
+
/** Whether the column is hidden by default. Still appears in the column
|
|
29
|
+
* picker. Defaults to false. */
|
|
30
|
+
defaultHidden?: boolean;
|
|
31
|
+
/** Whether the user may resize the column via the resize handle. Defaults
|
|
32
|
+
* to true. */
|
|
33
|
+
resizable?: boolean;
|
|
34
|
+
/** When true, the cell, header, and filter row log per-render debug info to
|
|
35
|
+
* the console. Defaults to false. */
|
|
36
|
+
debug?: boolean;
|
|
37
|
+
/** Optional grouping label for this column's filter row in the
|
|
38
|
+
* advanced filter panel. Columns sharing the same `filterGroup`
|
|
39
|
+
* string render under a single collapsible section with the group
|
|
40
|
+
* name as its header. Columns without a `filterGroup` collect into
|
|
41
|
+
* a default "Other" group at the bottom of the panel. Has no
|
|
42
|
+
* effect on quick-filtering or on the column visibility panel. */
|
|
43
|
+
filterGroup?: string;
|
|
44
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { Primitive } from '../Context/TableInitOptions.js';
|
|
2
|
+
import type { ActionsColumnOptions, BubbleColumnOptions, CheckboxColumnOptions, DateColumnOptions, DisplayColumnOptions, ExpandColumnOptions, FilterOnlyColumnOptions, NumberColumnOptions, ProgressColumnOptions, QueryColumnOptions, RowSelectionColumnOptions, SelectColumnOptions, TextColumnOptions, ValidityColumnOptions } from './ColumnOptions.js';
|
|
3
|
+
import type { ColumnSpec } from './ColumnSpec.js';
|
|
4
|
+
import type { BooleanKeyOf, DateKeyOf, NumberKeyOf, StringKeyOf } from './KeyConstraints.js';
|
|
5
|
+
/**
|
|
6
|
+
* Typed builder handed to the `columns:` closure on `createTable(...)`.
|
|
7
|
+
*
|
|
8
|
+
* Each method returns a `ColumnSpec<TRow, Kind>`. The accessor kinds
|
|
9
|
+
* (`text`, `number`, `checkbox`, `date`, `select`, `query`) constrain the
|
|
10
|
+
* `id` parameter via the matching `<Kind>KeyOf<TRow>` helper from
|
|
11
|
+
* `KeyConstraints.ts`, so IDE autocomplete only lists fields whose value
|
|
12
|
+
* type fits the kind. Display kinds and structural kinds do not take an
|
|
13
|
+
* `id` from the caller; the factory mints a synthetic id via
|
|
14
|
+
* `syntheticColumnId(...)` internally.
|
|
15
|
+
*
|
|
16
|
+
* Inference flows from the `<TRow>` parameter on `createTable(...)`
|
|
17
|
+
* through every method on this factory. Consumers do not write generics
|
|
18
|
+
* at any call site.
|
|
19
|
+
*/
|
|
20
|
+
export interface ColumnFactory<TRow extends object> {
|
|
21
|
+
text<K extends StringKeyOf<TRow>>(options: TextColumnOptions<TRow, K>): ColumnSpec<TRow, 'text'>;
|
|
22
|
+
number<K extends NumberKeyOf<TRow>>(options: NumberColumnOptions<TRow, K>): ColumnSpec<TRow, 'number'>;
|
|
23
|
+
checkbox<K extends BooleanKeyOf<TRow>>(options: CheckboxColumnOptions<TRow, K>): ColumnSpec<TRow, 'checkbox'>;
|
|
24
|
+
date<K extends DateKeyOf<TRow>>(options: DateColumnOptions<TRow, K>): ColumnSpec<TRow, 'date'>;
|
|
25
|
+
select<K extends keyof TRow & string, TValue = TRow[K]>(options: SelectColumnOptions<TRow, K, TValue>): ColumnSpec<TRow, 'select'>;
|
|
26
|
+
query<K extends keyof TRow & string, TValue = TRow[K]>(options: QueryColumnOptions<TRow, K, TValue>): ColumnSpec<TRow, 'query'>;
|
|
27
|
+
display<TValue = unknown>(options: DisplayColumnOptions<TRow, TValue>): ColumnSpec<TRow, 'display'>;
|
|
28
|
+
bubble<TValue = unknown>(options: BubbleColumnOptions<TRow, TValue>): ColumnSpec<TRow, 'bubble'>;
|
|
29
|
+
progress(options: ProgressColumnOptions<TRow>): ColumnSpec<TRow, 'progress'>;
|
|
30
|
+
validity(options?: ValidityColumnOptions<TRow>): ColumnSpec<TRow, 'validity'>;
|
|
31
|
+
rowSelection(options?: RowSelectionColumnOptions<TRow>): ColumnSpec<TRow, 'rowSelection'>;
|
|
32
|
+
actions(options: ActionsColumnOptions<TRow>): ColumnSpec<TRow, 'actions'>;
|
|
33
|
+
expand<TInner extends object, TInnerId extends Primitive = string>(options: ExpandColumnOptions<TRow, TInner, TInnerId>): ColumnSpec<TRow, 'expand'>;
|
|
34
|
+
filterOnly<K extends keyof TRow & string, TValue = TRow[K]>(options: FilterOnlyColumnOptions<TRow, K, TValue>): ColumnSpec<TRow, 'filterOnly'>;
|
|
35
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|