@talxis/base-controls 1.2509.1-alpha.6 → 1.2509.2
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/LICENSE.md +49 -0
- package/README.md +3 -40
- package/dist/components/DatasetControl/DatasetControl.js +55 -59
- package/dist/components/DatasetControl/DatasetControl.js.map +1 -1
- package/dist/components/DatasetControl/Paging/DatasetPaging.d.ts +3 -0
- package/dist/components/DatasetControl/Paging/DatasetPaging.js +69 -0
- package/dist/components/DatasetControl/Paging/DatasetPaging.js.map +1 -0
- package/dist/components/DatasetControl/Paging/Paging.d.ts +26 -0
- package/dist/components/DatasetControl/Paging/Paging.js +80 -0
- package/dist/components/DatasetControl/Paging/Paging.js.map +1 -0
- package/dist/components/DatasetControl/Paging/index.d.ts +3 -0
- package/dist/components/DatasetControl/Paging/index.js +3 -0
- package/dist/components/DatasetControl/Paging/index.js.map +1 -0
- package/dist/components/DatasetControl/Paging/interfaces.d.ts +16 -0
- package/dist/components/DatasetControl/Paging/styles.d.ts +35 -0
- package/dist/components/DatasetControl/Paging/styles.js +41 -0
- package/dist/components/DatasetControl/Paging/styles.js.map +1 -0
- package/dist/components/DatasetControl/Paging/translations.d.ts +38 -0
- package/dist/components/DatasetControl/Paging/translations.js +14 -0
- package/dist/components/DatasetControl/Paging/translations.js.map +1 -0
- package/dist/components/DatasetControl/QuickFind/QuickFind.d.ts +12 -4
- package/dist/components/DatasetControl/QuickFind/QuickFind.js +32 -36
- package/dist/components/DatasetControl/QuickFind/QuickFind.js.map +1 -1
- package/dist/components/DatasetControl/QuickFind/styles.d.ts +1 -1
- package/dist/components/DatasetControl/QuickFind/styles.js +2 -2
- package/dist/components/DatasetControl/QuickFind/styles.js.map +1 -1
- package/dist/components/DatasetControl/index.d.ts +1 -0
- package/dist/components/DatasetControl/index.js +2 -0
- package/dist/components/DatasetControl/index.js.map +1 -1
- package/dist/components/DatasetControl/interfaces.d.ts +20 -54
- package/dist/components/DatasetControl/styles.d.ts +11 -4
- package/dist/components/DatasetControl/styles.js +11 -5
- package/dist/components/DatasetControl/styles.js.map +1 -1
- package/dist/components/DatasetControl/translations.d.ts +0 -44
- package/dist/components/DatasetControl/translations.js +1 -15
- package/dist/components/DatasetControl/translations.js.map +1 -1
- package/dist/components/Grid/Grid.d.ts +3 -0
- package/dist/components/Grid/Grid.js +37 -0
- package/dist/components/Grid/Grid.js.map +1 -0
- package/dist/components/Grid/GridContext.d.ts +3 -0
- package/dist/components/Grid/GridContext.js.map +1 -0
- package/dist/components/Grid/aggregation/Aggregation.d.ts +18 -0
- package/dist/components/Grid/aggregation/Aggregation.js +129 -0
- package/dist/components/Grid/aggregation/Aggregation.js.map +1 -0
- package/dist/components/Grid/{grid/Grid.d.ts → core/components/AgGrid/AgGrid.d.ts} +2 -2
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js +203 -0
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.js +12 -0
- package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.js.map +1 -0
- package/dist/components/Grid/{overlays/empty-records → core/components/AgGrid/components/EmptyRecordsOverlay}/styles.d.ts +1 -1
- package/dist/components/Grid/{overlays/empty-records → core/components/AgGrid/components/EmptyRecordsOverlay}/styles.js +1 -1
- package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/styles.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/LoadingOverlay.js.map +1 -0
- package/dist/components/Grid/{grid/ag-grid/AgGridContext.d.ts → core/components/AgGrid/context.d.ts} +2 -2
- package/dist/components/Grid/{grid/ag-grid/AgGridContext.js → core/components/AgGrid/context.js} +1 -1
- package/dist/components/Grid/core/components/AgGrid/context.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.d.ts +52 -0
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js +343 -0
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js.map +1 -0
- package/dist/components/Grid/{grid/ValueComparator.d.ts → core/components/AgGrid/model/Comparator.d.ts} +1 -1
- package/dist/components/Grid/{grid/ValueComparator.js → core/components/AgGrid/model/Comparator.js} +1 -7
- package/dist/components/Grid/core/components/AgGrid/model/Comparator.js.map +1 -0
- package/dist/components/Grid/{grid → core/components/AgGrid}/styles.d.ts +4 -24
- package/dist/components/Grid/{grid → core/components/AgGrid}/styles.js +6 -37
- package/dist/components/Grid/core/components/AgGrid/styles.js.map +1 -0
- package/dist/components/Grid/{cells/cell → core/components/Cell}/Cell.d.ts +3 -3
- package/dist/components/Grid/core/components/Cell/Cell.js +158 -0
- package/dist/components/Grid/core/components/Cell/Cell.js.map +1 -0
- package/dist/components/Grid/{cells/cell/content → core/components/Cell/CellContent}/CellContent.d.ts +2 -2
- package/dist/components/Grid/{cells/cell/content → core/components/Cell/CellContent}/CellContent.js +31 -40
- package/dist/components/Grid/core/components/Cell/CellContent/CellContent.js.map +1 -0
- package/dist/components/Grid/core/components/Cell/CellContent/styles.js.map +1 -0
- package/dist/components/Grid/{cells/cell/notifications → core/components/Cell/Notifications}/Notifications.d.ts +1 -1
- package/dist/components/Grid/{cells/cell/notifications → core/components/Cell/Notifications}/Notifications.js +5 -5
- package/dist/components/Grid/core/components/Cell/Notifications/Notifications.js.map +1 -0
- package/dist/components/Grid/{cells/cell/notifications → core/components/Cell/Notifications}/styles.js +1 -1
- package/dist/components/Grid/core/components/Cell/Notifications/styles.js.map +1 -0
- package/dist/components/Grid/{cells/cell → core/components/Cell}/styles.d.ts +3 -34
- package/dist/components/Grid/core/components/Cell/styles.js +59 -0
- package/dist/components/Grid/core/components/Cell/styles.js.map +1 -0
- package/dist/components/Grid/{column-headers/column-header → core/components/ColumnHeader}/ColumnHeader.d.ts +1 -1
- package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js +61 -0
- package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js.map +1 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.d.ts +2 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js +50 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js.map +1 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.js.map +1 -0
- package/dist/components/Grid/core/components/ColumnHeader/styles.d.ts +42 -0
- package/dist/components/Grid/core/components/ColumnHeader/styles.js +48 -0
- package/dist/components/Grid/core/components/ColumnHeader/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Dialog/Constants.d.ts +2 -0
- package/dist/components/Grid/core/components/Dialog/Constants.js +9 -0
- package/dist/components/Grid/core/components/Dialog/Constants.js.map +1 -0
- package/dist/components/Grid/core/components/Dialog/Styles.d.ts +2 -0
- package/dist/components/Grid/core/components/Dialog/Styles.js +61 -0
- package/dist/components/Grid/core/components/Dialog/Styles.js.map +1 -0
- package/dist/components/Grid/core/components/Dialog/index.d.ts +4 -0
- package/dist/components/Grid/core/components/Dialog/index.js +16 -0
- package/dist/components/Grid/core/components/Dialog/index.js.map +1 -0
- package/dist/components/Grid/core/components/Dialog/interfaces/index.d.ts +6 -0
- package/dist/components/Grid/core/components/Dialog/interfaces/index.js +2 -0
- package/dist/components/Grid/core/components/Dialog/interfaces/index.js.map +1 -0
- package/dist/components/Grid/core/components/Save/Save.d.ts +2 -0
- package/dist/components/Grid/core/components/Save/Save.js +59 -0
- package/dist/components/Grid/core/components/Save/Save.js.map +1 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.d.ts +7 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js +73 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js.map +1 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.d.ts +11 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js +231 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js.map +1 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.d.ts +39 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js +45 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.d.ts +31 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.js +37 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Save/styles.d.ts +35 -0
- package/dist/components/Grid/core/components/Save/styles.js +42 -0
- package/dist/components/Grid/core/components/Save/styles.js.map +1 -0
- package/dist/components/Grid/core/controllers/useGridController.d.ts +7 -0
- package/dist/components/Grid/core/controllers/useGridController.js +29 -0
- package/dist/components/Grid/core/controllers/useGridController.js.map +1 -0
- package/dist/components/Grid/core/enums/ConditionOperator.d.ts +48 -0
- package/dist/components/Grid/core/enums/ConditionOperator.js +52 -0
- package/dist/components/Grid/core/enums/ConditionOperator.js.map +1 -0
- package/dist/components/Grid/core/enums/DataType.d.ts +25 -0
- package/dist/components/Grid/core/enums/DataType.js +30 -0
- package/dist/components/Grid/core/enums/DataType.js.map +1 -0
- package/dist/components/Grid/core/hooks/useGridInstance.d.ts +2 -0
- package/dist/components/Grid/{grid → core/hooks}/useGridInstance.js +2 -2
- package/dist/components/Grid/core/hooks/useGridInstance.js.map +1 -0
- package/dist/components/Grid/core/hooks/useRefreshCallback.d.ts +2 -0
- package/dist/components/Grid/core/hooks/useRefreshCallback.js +20 -0
- package/dist/components/Grid/core/hooks/useRefreshCallback.js.map +1 -0
- package/dist/components/Grid/core/interfaces/IGridColumn.d.ts +13 -0
- package/dist/components/Grid/core/interfaces/IGridContext.d.ts +4 -0
- package/dist/components/Grid/core/model/Grid.d.ts +83 -0
- package/dist/components/Grid/core/model/Grid.js +528 -0
- package/dist/components/Grid/core/model/Grid.js.map +1 -0
- package/dist/components/Grid/core/model/GridDependency.d.ts +13 -0
- package/dist/components/Grid/core/model/GridDependency.js +28 -0
- package/dist/components/Grid/core/model/GridDependency.js.map +1 -0
- package/dist/components/Grid/core/services/KeyListener.d.ts +12 -0
- package/dist/components/Grid/core/services/KeyListener.js +31 -0
- package/dist/components/Grid/core/services/KeyListener.js.map +1 -0
- package/dist/components/Grid/{column-headers/column-header → filtering/components/FilterCallout}/FilterCallout.d.ts +1 -1
- package/dist/components/Grid/filtering/components/FilterCallout/FilterCallout.js +59 -0
- package/dist/components/Grid/filtering/components/FilterCallout/FilterCallout.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.d.ts +7 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js +56 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.d.ts +7 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js +73 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.d.ts +7 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.js +90 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.d.ts +48 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js +146 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.d.ts +11 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.js +53 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.d.ts +9 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.js +31 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.d.ts +10 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.js +294 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/styles.d.ts +35 -0
- package/dist/components/Grid/{column-headers/column-header → filtering/components/FilterCallout}/styles.js +11 -20
- package/dist/components/Grid/filtering/components/FilterCallout/styles.js.map +1 -0
- package/dist/components/Grid/filtering/constants.d.ts +5 -0
- package/dist/components/Grid/filtering/constants.js +53 -0
- package/dist/components/Grid/filtering/constants.js.map +1 -0
- package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.d.ts +21 -0
- package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.js +44 -0
- package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.js.map +1 -0
- package/dist/components/Grid/filtering/model/Condition.d.ts +49 -0
- package/dist/components/Grid/filtering/model/Condition.js +347 -0
- package/dist/components/Grid/filtering/model/Condition.js.map +1 -0
- package/dist/components/Grid/filtering/model/Filtering.d.ts +11 -0
- package/dist/components/Grid/filtering/model/Filtering.js +78 -0
- package/dist/components/Grid/filtering/model/Filtering.js.map +1 -0
- package/dist/components/Grid/filtering/utils/FilteringUtilts.d.ts +34 -0
- package/dist/components/Grid/filtering/utils/FilteringUtilts.js +195 -0
- package/dist/components/Grid/filtering/utils/FilteringUtilts.js.map +1 -0
- package/dist/components/Grid/index.d.ts +1 -1
- package/dist/components/Grid/index.js +1 -1
- package/dist/components/Grid/interfaces.d.ts +0 -9
- package/dist/components/Grid/selection/model/Selection.d.ts +12 -0
- package/dist/components/Grid/selection/model/Selection.js +55 -0
- package/dist/components/Grid/selection/model/Selection.js.map +1 -0
- package/dist/components/Grid/sorting/Sorting.d.ts +10 -0
- package/dist/components/Grid/sorting/Sorting.js +31 -0
- package/dist/components/Grid/sorting/Sorting.js.map +1 -0
- package/dist/components/Grid/{column-headers/column-header/ColumnHeaderContextualMenu.d.ts → sorting/components/SortingContextualMenu/SortingContextualMenu.d.ts} +3 -3
- package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js +157 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js.map +1 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.d.ts +9 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.js +15 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.js.map +1 -0
- package/dist/components/Grid/sorting/controllers/useColumnSortingController.d.ts +9 -0
- package/dist/components/Grid/sorting/controllers/useColumnSortingController.js +22 -0
- package/dist/components/Grid/sorting/controllers/useColumnSortingController.js.map +1 -0
- package/dist/components/Grid/translations.d.ts +180 -20
- package/dist/components/Grid/translations.js +48 -5
- package/dist/components/Grid/translations.js.map +1 -1
- package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.d.ts +2 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js +11 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js.map +1 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/index.d.ts +1 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/index.js +2 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/index.js.map +1 -0
- package/dist/components/GridCellRenderer/GridCellRenderer.js +282 -99
- package/dist/components/GridCellRenderer/GridCellRenderer.js.map +1 -1
- package/dist/components/GridCellRenderer/OptionSet/OptionSet.d.ts +5 -0
- package/dist/components/GridCellRenderer/OptionSet/OptionSet.js +75 -0
- package/dist/components/GridCellRenderer/OptionSet/OptionSet.js.map +1 -0
- package/dist/components/GridCellRenderer/OptionSet/index.d.ts +1 -0
- package/dist/components/GridCellRenderer/OptionSet/index.js +2 -0
- package/dist/components/GridCellRenderer/OptionSet/index.js.map +1 -0
- package/dist/components/GridCellRenderer/OptionSet/styles.d.ts +20 -0
- package/dist/components/GridCellRenderer/OptionSet/styles.js +29 -0
- package/dist/components/GridCellRenderer/OptionSet/styles.js.map +1 -0
- package/dist/components/GridCellRenderer/RecordCommands/Icon.d.ts +7 -0
- package/dist/components/GridCellRenderer/RecordCommands/Icon.js +32 -0
- package/dist/components/GridCellRenderer/RecordCommands/Icon.js.map +1 -0
- package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.d.ts +13 -0
- package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.js +103 -0
- package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.js.map +1 -0
- package/dist/components/GridCellRenderer/RecordCommands/styles.d.ts +13 -0
- package/dist/components/GridCellRenderer/RecordCommands/styles.js +32 -0
- package/dist/components/GridCellRenderer/RecordCommands/styles.js.map +1 -0
- package/dist/components/GridCellRenderer/interfaces.d.ts +42 -53
- package/dist/components/GridCellRenderer/styles.d.ts +60 -34
- package/dist/components/GridCellRenderer/styles.js +77 -69
- package/dist/components/GridCellRenderer/styles.js.map +1 -1
- package/dist/components/GridCellRenderer/translations.d.ts +1 -1
- package/dist/components/GridCellRenderer/translations.js +32 -30
- package/dist/components/GridCellRenderer/translations.js.map +1 -1
- package/dist/components/GridCellRenderer/useComponentProps.d.ts +6 -0
- package/dist/components/GridCellRenderer/useComponentProps.js +10 -0
- package/dist/components/GridCellRenderer/useComponentProps.js.map +1 -0
- package/dist/components/Lookup/Lookup.js +1 -1
- package/dist/components/Lookup/Lookup.js.map +1 -1
- package/dist/components/Lookup/hooks/useLookup.js +2 -2
- package/dist/components/Lookup/hooks/useLookup.js.map +1 -1
- package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js +2 -2
- package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js.map +1 -1
- package/dist/components/NestedControlRenderer/NestedControl.d.ts +0 -2
- package/dist/components/NestedControlRenderer/NestedControl.js +2 -5
- package/dist/components/NestedControlRenderer/NestedControl.js.map +1 -1
- package/dist/components/NestedControlRenderer/NestedControlRenderer.js +6 -11
- package/dist/components/NestedControlRenderer/NestedControlRenderer.js.map +1 -1
- package/dist/components/NestedControlRenderer/interfaces.d.ts +0 -4
- package/dist/components/NestedControlRenderer/properties/FileProperty.js +1 -1
- package/dist/components/NestedControlRenderer/properties/FileProperty.js.map +1 -1
- package/dist/components/OptionSet/OptionSet.js +4 -5
- package/dist/components/OptionSet/OptionSet.js.map +1 -1
- package/dist/components/TextField/TextField.js +1 -1
- package/dist/components/TextField/TextField.js.map +1 -1
- package/dist/components/index.js +3 -1
- package/dist/components/index.js.map +1 -1
- package/dist/hooks/useControl.d.ts +0 -1
- package/dist/hooks/useControl.js +0 -1
- package/dist/hooks/useControl.js.map +1 -1
- package/dist/hooks/useInputBasedControl.js +1 -2
- package/dist/hooks/useInputBasedControl.js.map +1 -1
- package/dist/index.d.ts +299 -162
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/interfaces/property.d.ts +1 -1
- package/dist/utils/BaseControls.d.ts +1 -2
- package/dist/utils/BaseControls.js +1 -5
- package/dist/utils/BaseControls.js.map +1 -1
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.d.ts +16 -12
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js +72 -27
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js.map +1 -1
- package/dist/utils/theme/components/ThemeWrapper.d.ts +1 -1
- package/dist/utils/theme/components/ThemeWrapper.js.map +1 -1
- package/dist/utils/theme/hooks/useControlTheme.js +1 -2
- package/dist/utils/theme/hooks/useControlTheme.js.map +1 -1
- package/package.json +5 -9
- package/dist/components/DatasetControl/DatasetControlModel.d.ts +0 -37
- package/dist/components/DatasetControl/DatasetControlModel.js +0 -110
- package/dist/components/DatasetControl/DatasetControlModel.js.map +0 -1
- package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.d.ts +0 -3
- package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.js +0 -166
- package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.js.map +0 -1
- package/dist/components/DatasetControl/Filtering/DatasetColumnFilteringModel.d.ts +0 -15
- package/dist/components/DatasetControl/Filtering/DatasetColumnFilteringModel.js +0 -59
- package/dist/components/DatasetControl/Filtering/DatasetColumnFilteringModel.js.map +0 -1
- package/dist/components/DatasetControl/Filtering/interfaces.d.ts +0 -31
- package/dist/components/DatasetControl/Filtering/styles.d.ts +0 -16
- package/dist/components/DatasetControl/Filtering/styles.js +0 -23
- package/dist/components/DatasetControl/Filtering/styles.js.map +0 -1
- package/dist/components/DatasetControl/Filtering/translations.d.ts +0 -154
- package/dist/components/DatasetControl/Filtering/translations.js +0 -43
- package/dist/components/DatasetControl/Filtering/translations.js.map +0 -1
- package/dist/components/DatasetControl/Header/Header.d.ts +0 -5
- package/dist/components/DatasetControl/Header/Header.js +0 -89
- package/dist/components/DatasetControl/Header/Header.js.map +0 -1
- package/dist/components/DatasetControl/Header/styles.d.ts +0 -22
- package/dist/components/DatasetControl/Header/styles.js +0 -29
- package/dist/components/DatasetControl/Header/styles.js.map +0 -1
- package/dist/components/DatasetControl/Pagination/Pagination.d.ts +0 -5
- package/dist/components/DatasetControl/Pagination/Pagination.js +0 -91
- package/dist/components/DatasetControl/Pagination/Pagination.js.map +0 -1
- package/dist/components/DatasetControl/Pagination/PaginationModel.d.ts +0 -10
- package/dist/components/DatasetControl/Pagination/PaginationModel.js +0 -45
- package/dist/components/DatasetControl/Pagination/PaginationModel.js.map +0 -1
- package/dist/components/DatasetControl/Pagination/styles.d.ts +0 -23
- package/dist/components/DatasetControl/Pagination/styles.js +0 -29
- package/dist/components/DatasetControl/Pagination/styles.js.map +0 -1
- package/dist/components/DatasetControl/useModel.d.ts +0 -4
- package/dist/components/DatasetControl/useModel.js +0 -9
- package/dist/components/DatasetControl/useModel.js.map +0 -1
- package/dist/components/Grid/cells/cell/Cell.js +0 -302
- package/dist/components/Grid/cells/cell/Cell.js.map +0 -1
- package/dist/components/Grid/cells/cell/content/CellContent.js.map +0 -1
- package/dist/components/Grid/cells/cell/content/styles.js.map +0 -1
- package/dist/components/Grid/cells/cell/notifications/Notifications.js.map +0 -1
- package/dist/components/Grid/cells/cell/notifications/styles.js.map +0 -1
- package/dist/components/Grid/cells/cell/styles.js +0 -78
- package/dist/components/Grid/cells/cell/styles.js.map +0 -1
- package/dist/components/Grid/column-headers/column-header/ColumnHeader.js +0 -83
- package/dist/components/Grid/column-headers/column-header/ColumnHeader.js.map +0 -1
- package/dist/components/Grid/column-headers/column-header/ColumnHeaderContextualMenu.js +0 -115
- package/dist/components/Grid/column-headers/column-header/ColumnHeaderContextualMenu.js.map +0 -1
- package/dist/components/Grid/column-headers/column-header/FilterCallout.js +0 -103
- package/dist/components/Grid/column-headers/column-header/FilterCallout.js.map +0 -1
- package/dist/components/Grid/column-headers/column-header/styles.d.ts +0 -84
- package/dist/components/Grid/column-headers/column-header/styles.js.map +0 -1
- package/dist/components/Grid/column-headers/record-selection-checkbox/RecordSelectionCheckbox.d.ts +0 -2
- package/dist/components/Grid/column-headers/record-selection-checkbox/RecordSelectionCheckbox.js +0 -50
- package/dist/components/Grid/column-headers/record-selection-checkbox/RecordSelectionCheckbox.js.map +0 -1
- package/dist/components/Grid/column-headers/record-selection-checkbox/styles.js.map +0 -1
- package/dist/components/Grid/errors/FullWidthCellRendererError/FullWidthCellRendererError.d.ts +0 -6
- package/dist/components/Grid/errors/FullWidthCellRendererError/FullWidthCellRendererError.js +0 -15
- package/dist/components/Grid/errors/FullWidthCellRendererError/FullWidthCellRendererError.js.map +0 -1
- package/dist/components/Grid/errors/FullWidthCellRendererError/styles.d.ts +0 -6
- package/dist/components/Grid/errors/FullWidthCellRendererError/styles.js +0 -13
- package/dist/components/Grid/errors/FullWidthCellRendererError/styles.js.map +0 -1
- package/dist/components/Grid/grid/Grid.js +0 -64
- package/dist/components/Grid/grid/Grid.js.map +0 -1
- package/dist/components/Grid/grid/GridContext.d.ts +0 -3
- package/dist/components/Grid/grid/GridContext.js.map +0 -1
- package/dist/components/Grid/grid/GridModel.d.ts +0 -117
- package/dist/components/Grid/grid/GridModel.js +0 -787
- package/dist/components/Grid/grid/GridModel.js.map +0 -1
- package/dist/components/Grid/grid/ValueComparator.js.map +0 -1
- package/dist/components/Grid/grid/ag-grid/AgGridContext.js.map +0 -1
- package/dist/components/Grid/grid/ag-grid/AgGridModel.d.ts +0 -88
- package/dist/components/Grid/grid/ag-grid/AgGridModel.js +0 -565
- package/dist/components/Grid/grid/ag-grid/AgGridModel.js.map +0 -1
- package/dist/components/Grid/grid/ag-grid/ServerSideDatasource.d.ts +0 -7
- package/dist/components/Grid/grid/ag-grid/ServerSideDatasource.js +0 -38
- package/dist/components/Grid/grid/ag-grid/ServerSideDatasource.js.map +0 -1
- package/dist/components/Grid/grid/ag-grid/useAgGridInstance.d.ts +0 -2
- package/dist/components/Grid/grid/ag-grid/useAgGridInstance.js +0 -9
- package/dist/components/Grid/grid/ag-grid/useAgGridInstance.js.map +0 -1
- package/dist/components/Grid/grid/styles.js.map +0 -1
- package/dist/components/Grid/grid/useGridInstance.d.ts +0 -2
- package/dist/components/Grid/grid/useGridInstance.js.map +0 -1
- package/dist/components/Grid/loading/full-row/FullRowLoading.d.ts +0 -3
- package/dist/components/Grid/loading/full-row/FullRowLoading.js +0 -33
- package/dist/components/Grid/loading/full-row/FullRowLoading.js.map +0 -1
- package/dist/components/Grid/loading/full-row/styles.d.ts +0 -9
- package/dist/components/Grid/loading/full-row/styles.js +0 -16
- package/dist/components/Grid/loading/full-row/styles.js.map +0 -1
- package/dist/components/Grid/overlays/empty-records/EmptyRecordsOverlay.js +0 -13
- package/dist/components/Grid/overlays/empty-records/EmptyRecordsOverlay.js.map +0 -1
- package/dist/components/Grid/overlays/empty-records/styles.js.map +0 -1
- package/dist/components/Grid/overlays/loading/LoadingOverlay.js.map +0 -1
- package/dist/components/GridCellRenderer/GridCellRendererModel.d.ts +0 -51
- package/dist/components/GridCellRenderer/GridCellRendererModel.js +0 -211
- package/dist/components/GridCellRenderer/GridCellRendererModel.js.map +0 -1
- package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.d.ts +0 -9
- package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.js +0 -53
- package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.js.map +0 -1
- package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.d.ts +0 -20
- package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.js +0 -29
- package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.js.map +0 -1
- package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.d.ts +0 -7
- package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.js +0 -76
- package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.js.map +0 -1
- package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.d.ts +0 -18
- package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.js +0 -25
- package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.js.map +0 -1
- package/dist/components/GridCellRenderer/ValueRenderer/ValueRenderer.d.ts +0 -3
- package/dist/components/GridCellRenderer/ValueRenderer/ValueRenderer.js +0 -52
- package/dist/components/GridCellRenderer/ValueRenderer/ValueRenderer.js.map +0 -1
- package/dist/components/GridCellRenderer/ValueRenderer/styles.d.ts +0 -1666
- package/dist/components/GridCellRenderer/ValueRenderer/styles.js +0 -31
- package/dist/components/GridCellRenderer/ValueRenderer/styles.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/Email.d.ts +0 -5
- package/dist/components/GridCellRenderer/properties/Email.js +0 -15
- package/dist/components/GridCellRenderer/properties/Email.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/File.d.ts +0 -19
- package/dist/components/GridCellRenderer/properties/File.js +0 -99
- package/dist/components/GridCellRenderer/properties/File.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/Image.d.ts +0 -4
- package/dist/components/GridCellRenderer/properties/Image.js +0 -15
- package/dist/components/GridCellRenderer/properties/Image.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/Lookup.d.ts +0 -6
- package/dist/components/GridCellRenderer/properties/Lookup.js +0 -19
- package/dist/components/GridCellRenderer/properties/Lookup.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/MultiSelectOptionSet.d.ts +0 -5
- package/dist/components/GridCellRenderer/properties/MultiSelectOptionSet.js +0 -11
- package/dist/components/GridCellRenderer/properties/MultiSelectOptionSet.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/MultilineText.d.ts +0 -4
- package/dist/components/GridCellRenderer/properties/MultilineText.js +0 -10
- package/dist/components/GridCellRenderer/properties/MultilineText.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/OptionSet.d.ts +0 -5
- package/dist/components/GridCellRenderer/properties/OptionSet.js +0 -11
- package/dist/components/GridCellRenderer/properties/OptionSet.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/OptionSetBase.d.ts +0 -7
- package/dist/components/GridCellRenderer/properties/OptionSetBase.js +0 -19
- package/dist/components/GridCellRenderer/properties/OptionSetBase.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/Phone.d.ts +0 -9
- package/dist/components/GridCellRenderer/properties/Phone.js +0 -15
- package/dist/components/GridCellRenderer/properties/Phone.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/Property.d.ts +0 -19
- package/dist/components/GridCellRenderer/properties/Property.js +0 -54
- package/dist/components/GridCellRenderer/properties/Property.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/TwoOptions.d.ts +0 -5
- package/dist/components/GridCellRenderer/properties/TwoOptions.js +0 -11
- package/dist/components/GridCellRenderer/properties/TwoOptions.js.map +0 -1
- package/dist/components/GridCellRenderer/properties/Url.d.ts +0 -5
- package/dist/components/GridCellRenderer/properties/Url.js +0 -15
- package/dist/components/GridCellRenderer/properties/Url.js.map +0 -1
- package/dist/components/GridCellRenderer/useModel.d.ts +0 -4
- package/dist/components/GridCellRenderer/useModel.js +0 -9
- package/dist/components/GridCellRenderer/useModel.js.map +0 -1
- package/dist/components/GridColumnHeader/GridColumnHeader.d.ts +0 -3
- package/dist/components/GridColumnHeader/GridColumnHeader.js +0 -134
- package/dist/components/GridColumnHeader/GridColumnHeader.js.map +0 -1
- package/dist/components/GridColumnHeader/GridColumnHeaderModel.d.ts +0 -26
- package/dist/components/GridColumnHeader/GridColumnHeaderModel.js +0 -87
- package/dist/components/GridColumnHeader/GridColumnHeaderModel.js.map +0 -1
- package/dist/components/GridColumnHeader/interfaces.d.ts +0 -45
- package/dist/components/GridColumnHeader/styles.d.ts +0 -37
- package/dist/components/GridColumnHeader/styles.js +0 -55
- package/dist/components/GridColumnHeader/styles.js.map +0 -1
- package/dist/components/GridColumnHeader/translations.d.ts +0 -26
- package/dist/components/GridColumnHeader/translations.js +0 -29
- package/dist/components/GridColumnHeader/translations.js.map +0 -1
- package/dist/components/Ribbon/Ribbon.d.ts +0 -3
- package/dist/components/Ribbon/Ribbon.js +0 -97
- package/dist/components/Ribbon/Ribbon.js.map +0 -1
- package/dist/components/Ribbon/RibbonModel.d.ts +0 -4
- package/dist/components/Ribbon/interfaces.d.ts +0 -19
- package/dist/components/Ribbon/styles.d.ts +0 -11
- package/dist/components/Ribbon/styles.js +0 -18
- package/dist/components/Ribbon/styles.js.map +0 -1
- package/dist/hooks/useEventEmitter.d.ts +0 -2
- package/dist/hooks/useEventEmitter.js +0 -18
- package/dist/hooks/useEventEmitter.js.map +0 -1
- /package/dist/components/Grid/{grid/GridContext.js → GridContext.js} +0 -0
- /package/dist/components/Grid/{overlays/empty-records/EmptyRecordsOverlay.d.ts → core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.d.ts} +0 -0
- /package/dist/components/Grid/{overlays/loading → core/components/AgGrid/components/LoadingOverlay}/LoadingOverlay.d.ts +0 -0
- /package/dist/components/Grid/{overlays/loading → core/components/AgGrid/components/LoadingOverlay}/LoadingOverlay.js +0 -0
- /package/dist/components/Grid/{cells/cell/content → core/components/Cell/CellContent}/styles.d.ts +0 -0
- /package/dist/components/Grid/{cells/cell/content → core/components/Cell/CellContent}/styles.js +0 -0
- /package/dist/components/Grid/{cells/cell/notifications → core/components/Cell/Notifications}/styles.d.ts +0 -0
- /package/dist/components/Grid/{column-headers/record-selection-checkbox → core/components/ColumnHeader/components/GlobalCheckbox}/styles.d.ts +0 -0
- /package/dist/components/Grid/{column-headers/record-selection-checkbox → core/components/ColumnHeader/components/GlobalCheckbox}/styles.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../../src/components/Grid/filtering/constants.ts"],"sourcesContent":["import { DatasetConditionOperator } from \"../core/enums/ConditionOperator\";\n\nexport const OPERATORS = [\n { type: DatasetConditionOperator.None, key: 'condition-none' },\n { type: DatasetConditionOperator.Equal, key: 'condition-equal' },\n { type: DatasetConditionOperator.NotEqual, key: 'condition-notequal' },\n { type: DatasetConditionOperator.GreaterThan, key: 'condition-greaterthan' },\n { type: DatasetConditionOperator.LessThan, key: 'condition-lessthan' },\n { type: DatasetConditionOperator.GreaterEqual, key: 'condition-greaterequal' },\n { type: DatasetConditionOperator.LessEqual, key: 'condition-lessequal' },\n { type: DatasetConditionOperator.Like, key: 'condition-like' },\n { type: DatasetConditionOperator.NotLike, key: 'condition-notlike' },\n { type: DatasetConditionOperator.In, key: 'condition-in' },\n { type: DatasetConditionOperator.NotIn, key: 'condition-notin' },\n { type: DatasetConditionOperator.Between, key: 'condition-between' },\n { type: DatasetConditionOperator.NotBetween, key: 'condition-notbetween' },\n { type: DatasetConditionOperator.Null, key: 'condition-null' },\n { type: DatasetConditionOperator.NotNull, key: 'condition-notnull' },\n { type: DatasetConditionOperator.Yesterday, key: 'condition-yesterday' },\n { type: DatasetConditionOperator.Today, key: 'condition-today' },\n { type: DatasetConditionOperator.Tomorrow, key: 'condition-tomorrow' },\n { type: DatasetConditionOperator.Last7Days, key: 'condition-last7days' },\n { type: DatasetConditionOperator.Next7Days, key: 'condition-next7days' },\n { type: DatasetConditionOperator.LastWeek, key: 'condition-lastweek' },\n { type: DatasetConditionOperator.ThisWeek, key: 'condition-thisweek' },\n { type: DatasetConditionOperator.LastMonth, key: 'condition-lastmonth' },\n { type: DatasetConditionOperator.ThisMonth, key: 'condition-thismonth' },\n { type: DatasetConditionOperator.On, key: 'condition-on' },\n { type: DatasetConditionOperator.OnOrBefore, key: 'condition-onorbefore' },\n { type: DatasetConditionOperator.OnOrAfter, key: 'condition-onorafter' },\n { type: DatasetConditionOperator.LastYear, key: 'condition-lastyear' },\n { type: DatasetConditionOperator.ThisYear, key: 'condition-thisyear' },\n { type: DatasetConditionOperator.LastXDays, key: 'condition-lastxdays' },\n { type: DatasetConditionOperator.NextXDays, key: 'condition-nextxdays' },\n { type: DatasetConditionOperator.LastXMonths, key: 'condition-lastxmonths' },\n { type: DatasetConditionOperator.NextXMonths, key: 'condition-nextxmonths' },\n { type: DatasetConditionOperator.Contains, key: 'condition-contains' },\n { type: DatasetConditionOperator.BeginWith, key: 'condition-beginwith' },\n { type: DatasetConditionOperator.DoesNotBeginWith, key: 'condition-doesnotbeginwith' },\n { type: DatasetConditionOperator.EndsWith, key: 'condition-endswith' },\n { type: DatasetConditionOperator.DoesNotEndWith, key: 'condition-doesnotendwith' },\n { type: DatasetConditionOperator.InFiscalPeriodAndYear, key: 'condition-infiscalperiodandyear' },\n { type: DatasetConditionOperator.Above, key: 'condition-above' },\n { type: DatasetConditionOperator.Under, key: 'condition-under' },\n { type: DatasetConditionOperator.NotUnder, key: 'condition-notunder' },\n { type: DatasetConditionOperator.AboveOrEqual, key: 'condition-aboveorequal' },\n { type: DatasetConditionOperator.UnderOrEqual, key: 'condition-underorequal' },\n { type: DatasetConditionOperator.ContainValues, key: 'condition-containvalues' },\n { type: DatasetConditionOperator.DoesNotContainValues, key: 'condition-doesnotcontainvalues' }, // Added missing operator\n];"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { DatasetConditionOperator } from "../../core/enums/ConditionOperator";
|
|
2
|
+
import { IGridColumn } from "../../core/interfaces/IGridColumn";
|
|
3
|
+
export interface IColumnFilterConditionController {
|
|
4
|
+
isAppliedToDataset: boolean;
|
|
5
|
+
column: IGridColumn;
|
|
6
|
+
value: {
|
|
7
|
+
valid: boolean;
|
|
8
|
+
get: () => any;
|
|
9
|
+
set: (value: any) => void;
|
|
10
|
+
};
|
|
11
|
+
operator: {
|
|
12
|
+
get: () => DatasetConditionOperator | undefined;
|
|
13
|
+
set: (operator: DatasetConditionOperator) => void;
|
|
14
|
+
};
|
|
15
|
+
remove: () => void;
|
|
16
|
+
save: () => Promise<boolean>;
|
|
17
|
+
clear: () => void;
|
|
18
|
+
setShouldShowError: (shouldShowError: boolean) => void;
|
|
19
|
+
shouldShowError: () => boolean;
|
|
20
|
+
}
|
|
21
|
+
export declare const useColumnFilterConditionController: (column: IGridColumn) => IColumnFilterConditionController | null;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { useMemo, useState, useEffect } from 'react';
|
|
2
|
+
import { useGridInstance } from '../../core/hooks/useGridInstance.js';
|
|
3
|
+
import { useRefreshCallback } from '../../core/hooks/useRefreshCallback.js';
|
|
4
|
+
|
|
5
|
+
const useColumnFilterConditionController = (column) => {
|
|
6
|
+
const filtering = useGridInstance().filtering;
|
|
7
|
+
const conditionPromise = useMemo(() => filtering.condition(column), []);
|
|
8
|
+
const [controller, setController] = useState();
|
|
9
|
+
const refresh = async () => {
|
|
10
|
+
const condition = await conditionPromise;
|
|
11
|
+
setController(prevState => ({
|
|
12
|
+
...prevState,
|
|
13
|
+
isAppliedToDataset: condition.isAppliedToDataset,
|
|
14
|
+
column: condition?.column,
|
|
15
|
+
operator: {
|
|
16
|
+
get: () => condition.operator.get(),
|
|
17
|
+
set: (operator) => condition.operator.set(operator)
|
|
18
|
+
},
|
|
19
|
+
value: {
|
|
20
|
+
valid: condition.isValid,
|
|
21
|
+
get: () => condition.value.get(),
|
|
22
|
+
set: (value) => condition.value.set(value)
|
|
23
|
+
},
|
|
24
|
+
remove: () => condition?.remove(),
|
|
25
|
+
save: () => condition?.save(),
|
|
26
|
+
clear: () => condition?.clear(),
|
|
27
|
+
setShouldShowError: (shouldShowError) => condition?.setShouldShowError(shouldShowError),
|
|
28
|
+
shouldShowError: () => condition?.shouldShowError()
|
|
29
|
+
}));
|
|
30
|
+
};
|
|
31
|
+
useRefreshCallback(conditionPromise, refresh);
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
(async () => {
|
|
34
|
+
refresh();
|
|
35
|
+
})();
|
|
36
|
+
}, []);
|
|
37
|
+
if (!controller) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
return controller;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export { useColumnFilterConditionController };
|
|
44
|
+
//# sourceMappingURL=useColumnFilterConditionController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useColumnFilterConditionController.js","sources":["../../../../../src/components/Grid/filtering/controller/useColumnFilterConditionController.ts"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from \"react\";\nimport { DatasetConditionOperator } from \"../../core/enums/ConditionOperator\";\nimport { useGridInstance } from \"../../core/hooks/useGridInstance\"\nimport { useRefreshCallback } from \"../../core/hooks/useRefreshCallback\";\nimport { IGridColumn } from \"../../core/interfaces/IGridColumn\";\n\nexport interface IColumnFilterConditionController {\n isAppliedToDataset: boolean,\n column: IGridColumn,\n value: {\n valid: boolean;\n get: () => any;\n set: (value: any) => void;\n }\n operator: {\n get: () => DatasetConditionOperator | undefined;\n set: (operator: DatasetConditionOperator) => void;\n },\n remove: () => void;\n save: () => Promise<boolean>;\n clear: () => void;\n setShouldShowError: (shouldShowError: boolean) => void;\n shouldShowError: () => boolean;\n}\n\nexport const useColumnFilterConditionController = (column: IGridColumn): IColumnFilterConditionController | null => {\n const filtering = useGridInstance().filtering;\n const conditionPromise = useMemo(() => filtering.condition(column), []);\n const [controller, setController] = useState<IColumnFilterConditionController>();\n \n const refresh = async () => {\n const condition = await conditionPromise;\n setController(prevState => ({\n ...prevState,\n isAppliedToDataset: condition.isAppliedToDataset,\n column: condition?.column,\n operator: {\n get: () => condition.operator.get(),\n set: (operator) => condition.operator.set(operator)\n },\n value: {\n valid: condition.isValid,\n get: () => condition.value.get(),\n set: (value) => condition.value.set(value)\n },\n remove: () => condition?.remove(),\n save: () => condition?.save(),\n clear: () => condition?.clear(),\n setShouldShowError: (shouldShowError: boolean) => condition?.setShouldShowError(shouldShowError),\n shouldShowError: () => condition?.shouldShowError()\n }))\n }\n useRefreshCallback(conditionPromise, refresh);\n useEffect(() => {\n (async () => {\n refresh();\n })();\n }, []);\n\n\n if(!controller) {\n return null;\n }\n return controller;\n}"],"names":[],"mappings":";;;;AAyBa,MAAA,kCAAkC,GAAG,CAAC,MAAmB,KAA6C;AAC/G,IAAA,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC,SAAS,CAAC;AAC9C,IAAA,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IACxE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,EAAoC,CAAC;AAEjF,IAAA,MAAM,OAAO,GAAG,YAAW;AACvB,QAAA,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC;AACzC,QAAA,aAAa,CAAC,SAAS,KAAK;AACxB,YAAA,GAAG,SAAS;YACZ,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;YAChD,MAAM,EAAE,SAAS,EAAE,MAAM;AACzB,YAAA,QAAQ,EAAE;gBACN,GAAG,EAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE;AACnC,gBAAA,GAAG,EAAE,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;AACtD,aAAA;AACD,YAAA,KAAK,EAAE;gBACH,KAAK,EAAE,SAAS,CAAC,OAAO;gBACxB,GAAG,EAAE,MAAM,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE;AAChC,gBAAA,GAAG,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AAC7C,aAAA;AACD,YAAA,MAAM,EAAE,MAAM,SAAS,EAAE,MAAM,EAAE;AACjC,YAAA,IAAI,EAAE,MAAM,SAAS,EAAE,IAAI,EAAE;AAC7B,YAAA,KAAK,EAAE,MAAM,SAAS,EAAE,KAAK,EAAE;YAC/B,kBAAkB,EAAE,CAAC,eAAwB,KAAK,SAAS,EAAE,kBAAkB,CAAC,eAAe,CAAC;AAChG,YAAA,eAAe,EAAE,MAAM,SAAS,EAAE,eAAe,EAAE;AACtD,SAAA,CAAC,CAAC,CAAA;AACP,KAAC,CAAA;AACD,IAAA,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAC9C,SAAS,CAAC,MAAK;QACX,CAAC,YAAW;AACR,YAAA,OAAO,EAAE,CAAC;SACb,GAAG,CAAC;KACR,EAAE,EAAE,CAAC,CAAC;IAGP,IAAG,CAAC,UAAU,EAAE;AACZ,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;AACD,IAAA,OAAO,UAAU,CAAC;AACtB;;;;"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/// <reference types="@types/powerapps-component-framework" />
|
|
2
|
+
import { DatasetConditionOperator } from "../../core/enums/ConditionOperator";
|
|
3
|
+
import { IGridColumn } from "../../core/interfaces/IGridColumn";
|
|
4
|
+
import { Grid } from "../../core/model/Grid";
|
|
5
|
+
import { GridDependency } from "../../core/model/GridDependency";
|
|
6
|
+
export declare class Condition extends GridDependency {
|
|
7
|
+
private _column;
|
|
8
|
+
private _conditionExpression;
|
|
9
|
+
private _isRemoved?;
|
|
10
|
+
private _conditionUtils;
|
|
11
|
+
private _isValid;
|
|
12
|
+
private _inicializationPromise;
|
|
13
|
+
private _initialized;
|
|
14
|
+
private _shouldShowError;
|
|
15
|
+
constructor(grid: Grid, column: IGridColumn);
|
|
16
|
+
init(): Promise<boolean>;
|
|
17
|
+
get isRemoved(): boolean | undefined;
|
|
18
|
+
get column(): IGridColumn;
|
|
19
|
+
get isAppliedToDataset(): boolean;
|
|
20
|
+
get isValid(): boolean;
|
|
21
|
+
setShouldShowError(value: boolean): void;
|
|
22
|
+
shouldShowError(): boolean;
|
|
23
|
+
getExpression(): Promise<{
|
|
24
|
+
attributeName: string;
|
|
25
|
+
conditionOperator: ComponentFramework.PropertyHelper.DataSetApi.Types.ConditionOperator;
|
|
26
|
+
value: string | string[];
|
|
27
|
+
entityAliasName?: string | undefined;
|
|
28
|
+
}>;
|
|
29
|
+
save(): Promise<boolean>;
|
|
30
|
+
remove(): void;
|
|
31
|
+
clear(): void;
|
|
32
|
+
get operator(): {
|
|
33
|
+
get: () => DatasetConditionOperator;
|
|
34
|
+
set: (conditionOperator: DatasetConditionOperator) => void;
|
|
35
|
+
};
|
|
36
|
+
get value(): {
|
|
37
|
+
get: () => any;
|
|
38
|
+
set: (value: any) => void;
|
|
39
|
+
isValid: () => Promise<boolean>;
|
|
40
|
+
};
|
|
41
|
+
private _get;
|
|
42
|
+
private _set;
|
|
43
|
+
private _attributeNameDecorator;
|
|
44
|
+
private _valueDecorator;
|
|
45
|
+
private _operatorDecorator;
|
|
46
|
+
private _getDefault;
|
|
47
|
+
private get _filterExpression();
|
|
48
|
+
private _getConditionFromFilterExpression;
|
|
49
|
+
}
|
|
@@ -0,0 +1,347 @@
|
|
|
1
|
+
import { MemoryDataProvider, Attribute } from '@talxis/client-libraries';
|
|
2
|
+
import { DatasetConditionOperator } from '../../core/enums/ConditionOperator.js';
|
|
3
|
+
import { DataType } from '../../core/enums/DataType.js';
|
|
4
|
+
import { GridDependency } from '../../core/model/GridDependency.js';
|
|
5
|
+
import { FilteringUtils } from '../utils/FilteringUtilts.js';
|
|
6
|
+
import dayjs from 'dayjs';
|
|
7
|
+
|
|
8
|
+
class Condition extends GridDependency {
|
|
9
|
+
constructor(grid, column) {
|
|
10
|
+
super(grid);
|
|
11
|
+
this._conditionExpression = {};
|
|
12
|
+
this._conditionUtils = FilteringUtils.condition();
|
|
13
|
+
this._isValid = true;
|
|
14
|
+
this._initialized = false;
|
|
15
|
+
this._shouldShowError = false;
|
|
16
|
+
this._column = { ...column };
|
|
17
|
+
switch (this._column.dataType) {
|
|
18
|
+
//this will skip regex validation since it is not desirable during filtering (we have contains and stuff)
|
|
19
|
+
case DataType.SINGLE_LINE_EMAIL:
|
|
20
|
+
case DataType.SINGLE_LINE_URL: {
|
|
21
|
+
this._column.dataType = DataType.SINGLE_LINE_TEXT;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return new Proxy(this, {
|
|
25
|
+
get: (target, prop) => {
|
|
26
|
+
if (prop !== 'init') {
|
|
27
|
+
if (!target._initialized) {
|
|
28
|
+
throw new Error('Condition has not been initialized. Make sure to call the init() method on the condition object before any operations.');
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//@ts-ignore
|
|
32
|
+
if (typeof target[prop] === 'function') {
|
|
33
|
+
//@ts-ignore
|
|
34
|
+
return target[prop].bind(target);
|
|
35
|
+
}
|
|
36
|
+
//@ts-ignore
|
|
37
|
+
return target[prop];
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
async init() {
|
|
42
|
+
if (!this._inicializationPromise) {
|
|
43
|
+
this._inicializationPromise = new Promise(async (resolve) => {
|
|
44
|
+
const [map, key] = await this._getConditionFromFilterExpression();
|
|
45
|
+
if (!key) {
|
|
46
|
+
this._conditionExpression = this._getDefault();
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
this._conditionExpression = map.get(key);
|
|
50
|
+
}
|
|
51
|
+
this._conditionExpression.conditionOperator = this._operatorDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value, true);
|
|
52
|
+
this._conditionExpression.value = this._valueDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value, true);
|
|
53
|
+
this._conditionExpression.attributeName = await this._attributeNameDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.attributeName, true);
|
|
54
|
+
resolve(true);
|
|
55
|
+
this._initialized = true;
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
return this._inicializationPromise;
|
|
59
|
+
}
|
|
60
|
+
get isRemoved() {
|
|
61
|
+
return this._isRemoved;
|
|
62
|
+
}
|
|
63
|
+
get column() {
|
|
64
|
+
return this._column;
|
|
65
|
+
}
|
|
66
|
+
get isAppliedToDataset() {
|
|
67
|
+
return !!this._dataset.filtering.getFilter()?.conditions.find(cond => {
|
|
68
|
+
const attributeName = cond.entityAliasName ? `${cond.entityAliasName}.${cond.attributeName}` : cond.attributeName;
|
|
69
|
+
if (attributeName === this._column.name) {
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
if (attributeName === `${this._column.name}name`) {
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
return false;
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
get isValid() {
|
|
79
|
+
return this._isValid;
|
|
80
|
+
}
|
|
81
|
+
setShouldShowError(value) {
|
|
82
|
+
this._shouldShowError = value;
|
|
83
|
+
}
|
|
84
|
+
shouldShowError() {
|
|
85
|
+
return this._shouldShowError;
|
|
86
|
+
}
|
|
87
|
+
async getExpression() {
|
|
88
|
+
const result = { ...this._conditionExpression };
|
|
89
|
+
result.conditionOperator = this._operatorDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value);
|
|
90
|
+
result.value = this._valueDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value);
|
|
91
|
+
result.attributeName = await this._attributeNameDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.attributeName);
|
|
92
|
+
return result;
|
|
93
|
+
}
|
|
94
|
+
async save() {
|
|
95
|
+
this._shouldShowError = true;
|
|
96
|
+
if (!await this.value.isValid()) {
|
|
97
|
+
this._isValid = false;
|
|
98
|
+
this._triggerRefreshCallbacks();
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
const filterExpression = this._filterExpression;
|
|
102
|
+
if (this.isAppliedToDataset || this._isRemoved) {
|
|
103
|
+
const [map, key] = await this._getConditionFromFilterExpression();
|
|
104
|
+
map.delete(key);
|
|
105
|
+
filterExpression.conditions = [...map.values()];
|
|
106
|
+
}
|
|
107
|
+
if (!this._isRemoved) {
|
|
108
|
+
filterExpression.conditions.push(await this.getExpression());
|
|
109
|
+
}
|
|
110
|
+
this._dataset.filtering.setFilter(filterExpression);
|
|
111
|
+
return true;
|
|
112
|
+
}
|
|
113
|
+
remove() {
|
|
114
|
+
this._isRemoved = true;
|
|
115
|
+
}
|
|
116
|
+
clear() {
|
|
117
|
+
this._inicializationPromise = undefined;
|
|
118
|
+
}
|
|
119
|
+
get operator() {
|
|
120
|
+
return {
|
|
121
|
+
get: () => this._get('operator'),
|
|
122
|
+
set: (conditionOperator) => {
|
|
123
|
+
const previousOperator = this._conditionExpression.conditionOperator;
|
|
124
|
+
this._set("operator", conditionOperator, null);
|
|
125
|
+
const isCurrentEditable = this._conditionUtils.value(conditionOperator).isManuallyEditable;
|
|
126
|
+
const isPreviousEditable = this._conditionUtils.value(previousOperator).isManuallyEditable;
|
|
127
|
+
if (isCurrentEditable !== isPreviousEditable) {
|
|
128
|
+
// we are transitioning between editable and non-editable operators and the value of these data types needs to be set to null
|
|
129
|
+
// to prevent type incompability
|
|
130
|
+
switch (this._column.dataType) {
|
|
131
|
+
case DataType.MULTI_SELECT_OPTIONSET:
|
|
132
|
+
case DataType.OPTIONSET:
|
|
133
|
+
case DataType.TWO_OPTIONS:
|
|
134
|
+
case DataType.LOOKUP_SIMPLE:
|
|
135
|
+
case DataType.LOOKUP_OWNER:
|
|
136
|
+
case DataType.LOOKUP_CUSTOMER:
|
|
137
|
+
case DataType.DATE_AND_TIME_DATE_AND_TIME:
|
|
138
|
+
case DataType.DATE_AND_TIME_DATE_ONLY: {
|
|
139
|
+
this._conditionExpression.value = "";
|
|
140
|
+
break;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
//@ts-ignore - going from between/not between to other operators
|
|
145
|
+
if ((previousOperator === 10 || previousOperator === 11) && (conditionOperator !== 10 && conditionOperator !== 11)) {
|
|
146
|
+
this._conditionExpression.value = "";
|
|
147
|
+
}
|
|
148
|
+
//@ts-ignore - going from other operators to between/not between
|
|
149
|
+
if ((conditionOperator === 10 || conditionOperator === 11) && (previousOperator !== 10 && previousOperator !== 11)) {
|
|
150
|
+
this._conditionExpression.value = [];
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
get value() {
|
|
156
|
+
return {
|
|
157
|
+
get: () => this._get('value'),
|
|
158
|
+
set: (value) => this._set("value", undefined, value),
|
|
159
|
+
isValid: async () => {
|
|
160
|
+
if (this._conditionUtils.operator(this.operator.get()).doesNotAllowValue) {
|
|
161
|
+
return true;
|
|
162
|
+
}
|
|
163
|
+
const operator = this.operator.get();
|
|
164
|
+
if (operator === DatasetConditionOperator.Between || operator === DatasetConditionOperator.NotBetween) {
|
|
165
|
+
// undefined causes dayjs to use today
|
|
166
|
+
const date1 = dayjs(this.value.get()?.[0] ?? '---');
|
|
167
|
+
const date2 = dayjs(this.value.get()?.[1] ?? '---');
|
|
168
|
+
if (date1.isValid() && date2.isValid()) {
|
|
169
|
+
return true;
|
|
170
|
+
}
|
|
171
|
+
return false;
|
|
172
|
+
}
|
|
173
|
+
const memoryProvider = new MemoryDataProvider([{
|
|
174
|
+
id: 'id',
|
|
175
|
+
[this._column.name]: await this.value.get() ?? undefined
|
|
176
|
+
}], { PrimaryIdAttribute: "id" });
|
|
177
|
+
memoryProvider.setColumns([{ ...this._column, metadata: { ...this._column.metadata, RequiredLevel: 0 } }, {
|
|
178
|
+
name: 'id',
|
|
179
|
+
displayName: '',
|
|
180
|
+
dataType: DataType.SINGLE_LINE_TEXT,
|
|
181
|
+
alias: 'id',
|
|
182
|
+
order: 0,
|
|
183
|
+
visualSizeFactor: 0
|
|
184
|
+
}]);
|
|
185
|
+
const record = memoryProvider.refreshSync()[0];
|
|
186
|
+
record.expressions?.setRequiredLevelExpression(this._column.name, () => 'required');
|
|
187
|
+
return !record.getColumnInfo(this._column.name).error;
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
_get(type) {
|
|
192
|
+
if (type === 'operator') {
|
|
193
|
+
return this._conditionExpression.conditionOperator;
|
|
194
|
+
}
|
|
195
|
+
return this._conditionExpression.value;
|
|
196
|
+
}
|
|
197
|
+
_set(type, conditionOperator, value) {
|
|
198
|
+
this._isValid = true;
|
|
199
|
+
if (type === 'operator') {
|
|
200
|
+
this._conditionExpression.conditionOperator = conditionOperator;
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
this._conditionExpression.value = value;
|
|
204
|
+
}
|
|
205
|
+
this._triggerRefreshCallbacks();
|
|
206
|
+
}
|
|
207
|
+
async _attributeNameDecorator(conditionOperator, attributeName, undecorate) {
|
|
208
|
+
if (!this._conditionUtils.value(conditionOperator).isManuallyEditable) {
|
|
209
|
+
return attributeName;
|
|
210
|
+
}
|
|
211
|
+
switch (this._column.dataType) {
|
|
212
|
+
case DataType.OPTIONSET:
|
|
213
|
+
case DataType.TWO_OPTIONS:
|
|
214
|
+
case DataType.LOOKUP_OWNER:
|
|
215
|
+
case DataType.LOOKUP_SIMPLE:
|
|
216
|
+
case DataType.LOOKUP_CUSTOMER: {
|
|
217
|
+
if (undecorate) {
|
|
218
|
+
if (attributeName.endsWith('name')) {
|
|
219
|
+
return attributeName.slice(0, -4);
|
|
220
|
+
}
|
|
221
|
+
return attributeName;
|
|
222
|
+
}
|
|
223
|
+
if (attributeName.endsWith('name')) {
|
|
224
|
+
return attributeName;
|
|
225
|
+
}
|
|
226
|
+
return `${attributeName}name`;
|
|
227
|
+
}
|
|
228
|
+
default: {
|
|
229
|
+
return attributeName;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
_valueDecorator(conditionOperator, value, undecorate) {
|
|
234
|
+
switch (conditionOperator) {
|
|
235
|
+
case DatasetConditionOperator.BeginWith:
|
|
236
|
+
case DatasetConditionOperator.DoesNotBeginWith: {
|
|
237
|
+
if (undecorate) {
|
|
238
|
+
return value.slice(0, -1);
|
|
239
|
+
}
|
|
240
|
+
return `${value}%`;
|
|
241
|
+
}
|
|
242
|
+
case DatasetConditionOperator.EndsWith:
|
|
243
|
+
case DatasetConditionOperator.DoesNotEndWith: {
|
|
244
|
+
if (undecorate) {
|
|
245
|
+
return value.slice(1);
|
|
246
|
+
}
|
|
247
|
+
return `%${value}`;
|
|
248
|
+
}
|
|
249
|
+
case DatasetConditionOperator.Like:
|
|
250
|
+
case DatasetConditionOperator.NotLike: {
|
|
251
|
+
if (undecorate) {
|
|
252
|
+
return value.slice(1, -1);
|
|
253
|
+
}
|
|
254
|
+
return `%${value}%`;
|
|
255
|
+
}
|
|
256
|
+
default: {
|
|
257
|
+
return value;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
_operatorDecorator(conditionOperator, value, undecorate) {
|
|
262
|
+
switch (this._column.dataType) {
|
|
263
|
+
case DataType.MULTI_SELECT_OPTIONSET:
|
|
264
|
+
case DataType.OPTIONSET:
|
|
265
|
+
case DataType.TWO_OPTIONS:
|
|
266
|
+
case DataType.LOOKUP_OWNER:
|
|
267
|
+
case DataType.LOOKUP_SIMPLE:
|
|
268
|
+
case DataType.LOOKUP_CUSTOMER: {
|
|
269
|
+
//we need to switch the operators based on the number of selected options
|
|
270
|
+
if (typeof value !== 'string') {
|
|
271
|
+
if (undecorate) {
|
|
272
|
+
switch (conditionOperator) {
|
|
273
|
+
case DatasetConditionOperator.In: {
|
|
274
|
+
return DatasetConditionOperator.Equal;
|
|
275
|
+
}
|
|
276
|
+
case DatasetConditionOperator.NotIn: {
|
|
277
|
+
return DatasetConditionOperator.NotEqual;
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
switch (conditionOperator) {
|
|
282
|
+
case DatasetConditionOperator.Equal: {
|
|
283
|
+
return DatasetConditionOperator.In;
|
|
284
|
+
}
|
|
285
|
+
case DatasetConditionOperator.NotEqual: {
|
|
286
|
+
return DatasetConditionOperator.NotIn;
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
else {
|
|
291
|
+
switch (conditionOperator) {
|
|
292
|
+
case DatasetConditionOperator.In: {
|
|
293
|
+
return DatasetConditionOperator.Equal;
|
|
294
|
+
}
|
|
295
|
+
case DatasetConditionOperator.NotIn: {
|
|
296
|
+
return DatasetConditionOperator.NotEqual;
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
return conditionOperator;
|
|
303
|
+
}
|
|
304
|
+
_getDefault() {
|
|
305
|
+
const entityAliasName = Attribute.GetLinkedEntityAlias(this._column.name);
|
|
306
|
+
const attributeName = Attribute.GetNameFromAlias(this._column.name);
|
|
307
|
+
const cond = {
|
|
308
|
+
attributeName: attributeName,
|
|
309
|
+
conditionOperator: DatasetConditionOperator.Equal,
|
|
310
|
+
entityAliasName: entityAliasName ?? "",
|
|
311
|
+
value: ""
|
|
312
|
+
};
|
|
313
|
+
switch (this._column.dataType) {
|
|
314
|
+
case DataType.DATE_AND_TIME_DATE_AND_TIME:
|
|
315
|
+
case DataType.DATE_AND_TIME_DATE_ONLY: {
|
|
316
|
+
cond.conditionOperator = DatasetConditionOperator.On;
|
|
317
|
+
break;
|
|
318
|
+
}
|
|
319
|
+
case DataType.IMAGE:
|
|
320
|
+
case DataType.FILE: {
|
|
321
|
+
cond.conditionOperator = DatasetConditionOperator.NotNull;
|
|
322
|
+
break;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
return cond;
|
|
326
|
+
}
|
|
327
|
+
get _filterExpression() {
|
|
328
|
+
return structuredClone(this._dataset.filtering.getFilter()) ?? {
|
|
329
|
+
conditions: [],
|
|
330
|
+
filterOperator: 0
|
|
331
|
+
};
|
|
332
|
+
}
|
|
333
|
+
async _getConditionFromFilterExpression() {
|
|
334
|
+
const map = new Map(this._filterExpression.conditions.map(x => [x.attributeName, x]));
|
|
335
|
+
const attributeName = Attribute.GetNameFromAlias(this._column.name);
|
|
336
|
+
for (const cond of map.values()) {
|
|
337
|
+
const conditionAttributeName = await this._attributeNameDecorator(cond.conditionOperator, cond.attributeName, true);
|
|
338
|
+
if (conditionAttributeName === attributeName) {
|
|
339
|
+
return [map, cond.attributeName];
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
return [map, ""];
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
export { Condition };
|
|
347
|
+
//# sourceMappingURL=Condition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Condition.js","sources":["../../../../../src/components/Grid/filtering/model/Condition.ts"],"sourcesContent":["import { Attribute, MemoryDataProvider } from \"@talxis/client-libraries\";\nimport { DatasetConditionOperator } from \"../../core/enums/ConditionOperator\";\nimport { DataType } from \"../../core/enums/DataType\";\nimport { IGridColumn } from \"../../core/interfaces/IGridColumn\";\nimport { Grid } from \"../../core/model/Grid\";\nimport { GridDependency } from \"../../core/model/GridDependency\";\nimport { FilteringUtils } from \"../utils/FilteringUtilts\";\nimport dayjs from \"dayjs\";\n\nexport class Condition extends GridDependency {\n private _column: IGridColumn;\n private _conditionExpression: ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression = {} as any;\n private _isRemoved?: boolean;\n private _conditionUtils = FilteringUtils.condition();\n private _isValid: boolean = true;\n private _inicializationPromise: Promise<boolean> | undefined;\n private _initialized: boolean = false;\n private _shouldShowError: boolean = false;\n\n constructor(grid: Grid, column: IGridColumn) {\n super(grid);\n this._column = {...column};\n switch(this._column.dataType) {\n //this will skip regex validation since it is not desirable during filtering (we have contains and stuff)\n case DataType.SINGLE_LINE_EMAIL:\n case DataType.SINGLE_LINE_URL: {\n this._column.dataType = DataType.SINGLE_LINE_TEXT;\n }\n }\n return new Proxy(this, {\n get: (target, prop) => {\n if(prop !== 'init') {\n if(!target._initialized) {\n throw new Error('Condition has not been initialized. Make sure to call the init() method on the condition object before any operations.')\n }\n }\n //@ts-ignore\n if (typeof target[prop] === 'function') {\n //@ts-ignore\n return target[prop].bind(target);\n }\n //@ts-ignore\n return target[prop];\n }\n })\n }\n public async init() {\n if (!this._inicializationPromise) {\n this._inicializationPromise = new Promise(async (resolve) => {\n const [map, key] = await this._getConditionFromFilterExpression();\n if(!key) {\n this._conditionExpression = this._getDefault();\n }\n else {\n this._conditionExpression = map.get(key)!;\n }\n this._conditionExpression.conditionOperator = this._operatorDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value, true) as any;\n this._conditionExpression.value = this._valueDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value, true);\n this._conditionExpression.attributeName = await this._attributeNameDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.attributeName, true);\n resolve(true);\n this._initialized = true;\n })\n }\n return this._inicializationPromise;\n }\n public get isRemoved() {\n return this._isRemoved;\n }\n\n public get column() {\n return this._column;\n }\n\n public get isAppliedToDataset() {\n return !!this._dataset.filtering.getFilter()?.conditions.find(cond => {\n const attributeName = cond.entityAliasName ? `${cond.entityAliasName}.${cond.attributeName}` : cond.attributeName;\n if(attributeName === this._column.name) {\n return true;\n }\n if(attributeName === `${this._column.name}name`) {\n return true;\n }\n return false;\n })\n }\n\n public get isValid() {\n return this._isValid;\n }\n\n public setShouldShowError(value: boolean) {\n this._shouldShowError = value;\n }\n\n public shouldShowError() {\n return this._shouldShowError;\n }\n\n public async getExpression() {\n const result = { ...this._conditionExpression };\n result.conditionOperator = this._operatorDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value) as any;\n result.value = this._valueDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value);\n result.attributeName = await this._attributeNameDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.attributeName);\n return result;\n\n }\n public async save(): Promise<boolean> {\n this._shouldShowError = true;\n if (!await this.value.isValid()) {\n this._isValid = false;\n this._triggerRefreshCallbacks();\n return false;\n }\n const filterExpression = this._filterExpression;\n if (this.isAppliedToDataset || this._isRemoved) {\n const [map, key] = await this._getConditionFromFilterExpression();\n map.delete(key);\n filterExpression.conditions = [...map.values()];\n }\n if (!this._isRemoved) {\n filterExpression.conditions.push(await this.getExpression());\n }\n this._dataset.filtering.setFilter(filterExpression);\n return true;\n\n }\n public remove() {\n this._isRemoved = true;\n }\n public clear() {\n this._inicializationPromise = undefined;\n }\n public get operator() {\n return {\n get: () => this._get('operator') as DatasetConditionOperator,\n set: (conditionOperator: DatasetConditionOperator) => {\n const previousOperator = this._conditionExpression.conditionOperator\n this._set(\"operator\", conditionOperator, null);\n const isCurrentEditable = this._conditionUtils.value(conditionOperator).isManuallyEditable;\n const isPreviousEditable = this._conditionUtils.value(previousOperator).isManuallyEditable;\n\n if (isCurrentEditable !== isPreviousEditable) {\n // we are transitioning between editable and non-editable operators and the value of these data types needs to be set to null\n // to prevent type incompability\n switch (this._column.dataType) {\n case DataType.MULTI_SELECT_OPTIONSET:\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_CUSTOMER:\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY: {\n this._conditionExpression!.value = \"\"\n break;\n }\n }\n }\n //@ts-ignore - going from between/not between to other operators\n if((previousOperator === 10 || previousOperator === 11) && (conditionOperator !== 10 && conditionOperator !== 11)) {\n this._conditionExpression.value = \"\";\n }\n //@ts-ignore - going from other operators to between/not between\n if((conditionOperator === 10 || conditionOperator === 11) && (previousOperator !== 10 && previousOperator !== 11)) {\n this._conditionExpression.value = []\n }\n },\n }\n }\n\n public get value() {\n return {\n get: () => this._get('value') as any,\n set: (value: any) => this._set(\"value\", undefined, value),\n isValid: async () => {\n if(this._conditionUtils.operator(this.operator.get()).doesNotAllowValue) {\n return true;\n }\n const operator = this.operator.get();\n if(operator === DatasetConditionOperator.Between || operator === DatasetConditionOperator.NotBetween) {\n // undefined causes dayjs to use today\n const date1 = dayjs(this.value.get()?.[0] ?? '---');\n const date2 = dayjs(this.value.get()?.[1] ?? '---');\n if(date1.isValid() && date2.isValid()) {\n return true;\n }\n return false;\n }\n const memoryProvider = new MemoryDataProvider([{\n id: 'id',\n [this._column.name]: await this.value.get() ?? undefined\n }], {PrimaryIdAttribute: \"id\"})\n memoryProvider.setColumns([{...this._column, metadata: {...this._column.metadata as any, RequiredLevel: 0}}, {\n name: 'id',\n displayName: '',\n dataType: DataType.SINGLE_LINE_TEXT,\n alias: 'id',\n order: 0,\n visualSizeFactor: 0\n }]);\n const record = memoryProvider.refreshSync()[0];\n record.expressions?.setRequiredLevelExpression(this._column.name, () => 'required');\n return !record.getColumnInfo(this._column.name).error\n }\n }\n }\n private _get(type: 'operator' | 'value'): DatasetConditionOperator | any {\n if (type === 'operator') {\n return this._conditionExpression.conditionOperator;\n }\n return this._conditionExpression.value;\n }\n private _set(type: 'operator' | 'value', conditionOperator?: DatasetConditionOperator, value?: any) {\n this._isValid = true;\n if (type === 'operator') {\n this._conditionExpression.conditionOperator = conditionOperator as any;\n }\n else {\n this._conditionExpression.value = value;\n }\n this._triggerRefreshCallbacks();\n }\n\n private async _attributeNameDecorator(conditionOperator: DatasetConditionOperator, attributeName: string, undecorate?: boolean) {\n if (!this._conditionUtils.value(conditionOperator).isManuallyEditable) {\n return attributeName;\n }\n switch (this._column.dataType) {\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_CUSTOMER: {\n if (undecorate) {\n if (attributeName.endsWith('name')) {\n return attributeName.slice(0, -4);\n }\n return attributeName;\n }\n if (attributeName.endsWith('name')) {\n return attributeName;\n }\n return `${attributeName}name`\n }\n default: {\n return attributeName;\n }\n }\n }\n private _valueDecorator(conditionOperator: DatasetConditionOperator, value: any, undecorate?: boolean) {\n switch (conditionOperator) {\n case DatasetConditionOperator.BeginWith:\n case DatasetConditionOperator.DoesNotBeginWith: {\n if (undecorate) {\n return value.slice(0, -1);\n }\n return `${value}%`;\n }\n case DatasetConditionOperator.EndsWith:\n case DatasetConditionOperator.DoesNotEndWith: {\n if (undecorate) {\n return value.slice(1)\n }\n return `%${value}`;\n }\n case DatasetConditionOperator.Like:\n case DatasetConditionOperator.NotLike: {\n if (undecorate) {\n return value.slice(1, -1)\n }\n return `%${value}%`;\n }\n default: {\n return value;\n }\n }\n }\n\n private _operatorDecorator(conditionOperator: DatasetConditionOperator, value: any, undecorate?: boolean): DatasetConditionOperator {\n switch (this._column.dataType) {\n case DataType.MULTI_SELECT_OPTIONSET:\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_CUSTOMER: {\n //we need to switch the operators based on the number of selected options\n if (typeof value !== 'string') {\n if(undecorate) {\n switch(conditionOperator) {\n case DatasetConditionOperator.In: {\n return DatasetConditionOperator.Equal\n }\n case DatasetConditionOperator.NotIn: {\n return DatasetConditionOperator.NotEqual;\n }\n }\n }\n switch (conditionOperator) {\n case DatasetConditionOperator.Equal: {\n return DatasetConditionOperator.In;\n }\n case DatasetConditionOperator.NotEqual: {\n return DatasetConditionOperator.NotIn;\n }\n }\n }\n else {\n switch (conditionOperator) {\n case DatasetConditionOperator.In: {\n return DatasetConditionOperator.Equal;\n }\n case DatasetConditionOperator.NotIn: {\n return DatasetConditionOperator.NotEqual;\n }\n }\n }\n }\n }\n return conditionOperator;\n }\n\n private _getDefault(): ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression {\n const entityAliasName = Attribute.GetLinkedEntityAlias(this._column.name);\n const attributeName = Attribute.GetNameFromAlias(this._column.name);\n const cond: ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression = {\n attributeName: attributeName,\n conditionOperator: DatasetConditionOperator.Equal,\n entityAliasName: entityAliasName ?? \"\",\n value: \"\"\n }\n switch (this._column.dataType) {\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY: {\n cond.conditionOperator = DatasetConditionOperator.On;\n break;\n }\n case DataType.IMAGE:\n case DataType.FILE: {\n cond.conditionOperator = DatasetConditionOperator.NotNull as any;\n break;\n }\n }\n return cond;\n }\n private get _filterExpression() {\n return structuredClone(this._dataset.filtering.getFilter()) ?? {\n conditions: [],\n filterOperator: 0\n }\n }\n private async _getConditionFromFilterExpression(): Promise<[Map<string, ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression>, string]> {\n const map = new Map<string, ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression>(this._filterExpression.conditions.map(x => [x.attributeName, x]));\n const attributeName = Attribute.GetNameFromAlias(this._column.name);\n for (const cond of map.values()) {\n const conditionAttributeName = await this._attributeNameDecorator(cond.conditionOperator, cond.attributeName, true);\n if(conditionAttributeName === attributeName) {\n return [map, cond.attributeName]\n }\n }\n return [map, \"\"];\n }\n}"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IGridColumn } from "../../core/interfaces/IGridColumn";
|
|
2
|
+
import { GridDependency } from "../../core/model/GridDependency";
|
|
3
|
+
import { Condition } from "./Condition";
|
|
4
|
+
export declare class Filtering extends GridDependency {
|
|
5
|
+
private _conditions;
|
|
6
|
+
save(): Promise<boolean>;
|
|
7
|
+
clear(): void;
|
|
8
|
+
condition(column: IGridColumn): Promise<Condition>;
|
|
9
|
+
private get _filterExpression();
|
|
10
|
+
private _getColumnKeyFromCondition;
|
|
11
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { GridDependency } from '../../core/model/GridDependency.js';
|
|
2
|
+
import { Condition } from './Condition.js';
|
|
3
|
+
|
|
4
|
+
class Filtering extends GridDependency {
|
|
5
|
+
constructor() {
|
|
6
|
+
super(...arguments);
|
|
7
|
+
this._conditions = new Map();
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
const filterExpression = this._filterExpression;
|
|
11
|
+
for (const condition of this._conditions.values()) {
|
|
12
|
+
if (!condition.value.isValid()) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
const expression = await condition.getExpression();
|
|
16
|
+
if (condition.isAppliedToDataset || condition.isRemoved) {
|
|
17
|
+
filterExpression.conditions = this._filterExpression.conditions.filter(cond => this._getColumnKeyFromCondition(cond) !== condition.column.name);
|
|
18
|
+
}
|
|
19
|
+
if (!condition.isRemoved) {
|
|
20
|
+
filterExpression.conditions.push(expression);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
this.clear();
|
|
24
|
+
this._dataset.filtering.setFilter(filterExpression);
|
|
25
|
+
this._dataset.refresh();
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
clear() {
|
|
29
|
+
this._conditions.clear();
|
|
30
|
+
}
|
|
31
|
+
async condition(column) {
|
|
32
|
+
const columnKey = column.name;
|
|
33
|
+
if (!this._conditions.get(columnKey)) {
|
|
34
|
+
this._conditions.set(columnKey, new Condition(this._grid, column));
|
|
35
|
+
}
|
|
36
|
+
const cond = new Proxy(this._conditions.get(columnKey), {
|
|
37
|
+
get: (target, prop) => {
|
|
38
|
+
if (prop === 'save') {
|
|
39
|
+
return async () => {
|
|
40
|
+
const saveResult = await target.save();
|
|
41
|
+
if (saveResult) {
|
|
42
|
+
this._conditions.delete(target.column.name);
|
|
43
|
+
this._dataset.refresh();
|
|
44
|
+
}
|
|
45
|
+
return saveResult;
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
if (prop === 'clear') {
|
|
49
|
+
this._conditions.delete(target.column.name);
|
|
50
|
+
}
|
|
51
|
+
//@ts-ignore
|
|
52
|
+
if (typeof target[prop] === 'function') {
|
|
53
|
+
//@ts-ignore
|
|
54
|
+
return target[prop].bind(target);
|
|
55
|
+
}
|
|
56
|
+
//@ts-ignore
|
|
57
|
+
return target[prop];
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
await cond.init();
|
|
61
|
+
return cond;
|
|
62
|
+
}
|
|
63
|
+
get _filterExpression() {
|
|
64
|
+
return structuredClone(this._grid.dataset.filtering.getFilter()) ?? {
|
|
65
|
+
conditions: [],
|
|
66
|
+
filterOperator: 0
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
_getColumnKeyFromCondition(condition) {
|
|
70
|
+
if (condition.entityAliasName) {
|
|
71
|
+
return `${condition.entityAliasName}.${condition.attributeName}`;
|
|
72
|
+
}
|
|
73
|
+
return condition.attributeName;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export { Filtering };
|
|
78
|
+
//# sourceMappingURL=Filtering.js.map
|