@adaptabletools/adaptable 21.2.2-canary.0 → 22.0.0-canary.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -6
- package/icons/inspector.svg +1 -0
- package/index.css +6464 -5488
- package/index.css.map +1 -1
- package/package.json +5 -6
- package/src/AdaptableInterfaces/IAdaptable.d.ts +9 -1
- package/src/AdaptableState/ChartingState.d.ts +1 -1
- package/src/AdaptableState/Common/AdaptableAlert.d.ts +2 -2
- package/src/AdaptableState/Common/AdaptableIcon.d.ts +1 -1
- package/src/AdaptableState/Common/AdaptablePredicate.js +7 -3
- package/src/AdaptableState/Common/AggregationColumns.d.ts +3 -3
- package/src/AdaptableState/Common/DataUpdateConfig.d.ts +4 -4
- package/src/AdaptableState/TeamSharingState.d.ts +1 -1
- package/src/Api/CustomSortApi.d.ts +6 -1
- package/src/Api/GridApi.d.ts +14 -0
- package/src/Api/Implementation/ColumnApiImpl.d.ts +3 -0
- package/src/Api/Implementation/ColumnApiImpl.js +12 -3
- package/src/Api/Implementation/CustomSortApiImpl.d.ts +2 -1
- package/src/Api/Implementation/CustomSortApiImpl.js +5 -1
- package/src/Api/Implementation/GridApiImpl.d.ts +9 -0
- package/src/Api/Implementation/GridApiImpl.js +16 -0
- package/src/Api/Implementation/LayoutApiImpl.d.ts +1 -0
- package/src/Api/Implementation/LayoutApiImpl.js +85 -2
- package/src/Api/Implementation/LayoutHelpers.d.ts +2 -2
- package/src/Api/Implementation/ScheduleApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ScheduleApiImpl.js +12 -0
- package/src/Api/Implementation/ShortcutApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ShortcutApiImpl.js +4 -0
- package/src/Api/Implementation/StyledColumnApiImpl.d.ts +1 -0
- package/src/Api/Implementation/StyledColumnApiImpl.js +4 -0
- package/src/Api/Internal/AdaptableInternalApi.d.ts +0 -1
- package/src/Api/Internal/AdaptableInternalApi.js +3 -3
- package/src/Api/Internal/ColumnFilterInternalApi.js +1 -1
- package/src/Api/Internal/LayoutInternalApi.d.ts +5 -0
- package/src/Api/Internal/LayoutInternalApi.js +25 -0
- package/src/Api/LayoutApi.d.ts +7 -1
- package/src/Api/ScheduleApi.d.ts +5 -0
- package/src/Api/ShortcutApi.d.ts +5 -0
- package/src/Api/StyledColumnApi.d.ts +5 -0
- package/src/Redux/ActionsReducers/CommentsRedux.d.ts +1 -1
- package/src/Redux/ActionsReducers/DashboardRedux.d.ts +1 -1
- package/src/Redux/ActionsReducers/InternalRedux.d.ts +6 -6
- package/src/Redux/ActionsReducers/LayoutRedux.d.ts +3 -9
- package/src/Redux/ActionsReducers/StyledColumnRedux.d.ts +6 -6
- package/src/Redux/ActionsReducers/StyledColumnRedux.js +16 -16
- package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +3 -0
- package/src/Redux/Store/AdaptableStore.js +8 -7
- package/src/Strategy/FormatColumnModule.js +2 -2
- package/src/Strategy/Utilities/Alert/getAlertPreviewViewItems.js +1 -1
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +2 -1
- package/src/Strategy/Utilities/Layout/getLayoutFilterViewItems.js +4 -3
- package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +18 -17
- package/src/Utilities/Constants/DocumentationLinkConstants.js +18 -17
- package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.d.ts +4 -4
- package/src/Utilities/Extensions/StringExtensions.d.ts +1 -1
- package/src/Utilities/Helpers/StyleHelper.d.ts +1 -1
- package/src/Utilities/Services/Interface/IAlertService.d.ts +2 -2
- package/src/Utilities/Services/ModuleService.js +37 -38
- package/src/Utilities/createAgStatusPanelComponent.d.ts +1 -1
- package/src/Utilities/getObjectTagsViewItems.js +1 -1
- package/src/Utilities/runIfNotResolvedIn.d.ts +1 -1
- package/src/View/AdaptableComputedCSSVarsContext.js +6 -1
- package/src/View/AdaptablePopover/index.d.ts +1 -1
- package/src/View/AdaptablePopover/index.js +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +7 -8
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +7 -6
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.d.ts +4 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.js +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.js +9 -9
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.js +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +4 -4
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +4 -4
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.js +2 -2
- package/src/View/AdaptableWizardView/Wizard.js +1 -1
- package/src/View/AdaptableWizardView/index.js +1 -4
- package/src/View/Alert/ActiveAlertsPanelItemLabel.js +2 -2
- package/src/View/Alert/AlertStatusSubPanel.js +1 -1
- package/src/View/Alert/AlertViewPanel.js +2 -2
- package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +3 -20
- package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +15 -13
- package/src/View/Alert/Wizard/AlertButtonsEditor.js +25 -22
- package/src/View/Alert/Wizard/AlertMessageWizardSection.js +12 -16
- package/src/View/Alert/Wizard/AlertNotificationWizardSection.d.ts +3 -1
- package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +7 -7
- package/src/View/Alert/Wizard/AlertRulesWizardSection.js +2 -2
- package/src/View/Alert/Wizard/AlertScopeWizardSection.js +2 -2
- package/src/View/Alert/Wizard/AlertTypeWizardSection.js +1 -1
- package/src/View/Alert/Wizard/AlertWizard.js +8 -8
- package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +11 -8
- package/src/View/BulkUpdate/BulkUpdatePopup.js +11 -11
- package/src/View/BulkUpdate/BulkUpdateViewPanel.js +4 -4
- package/src/View/CalculatedColumn/CalculatedColumnSummary.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +8 -8
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +4 -4
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +4 -5
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.js +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.d.ts +0 -2
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +8 -14
- package/src/View/CalculatedColumn/Wizard/calculatedColumnTypes.d.ts +2 -0
- package/src/View/CalculatedColumn/Wizard/calculatedColumnTypes.js +6 -0
- package/src/View/CellSummary/CellSummaryPopup.js +1 -1
- package/src/View/CellSummary/CellSummaryViewPanel.js +5 -5
- package/src/View/Charting/ChartingStatusBarPopover.js +4 -4
- package/src/View/Charting/ChartingViewPanel.js +7 -7
- package/src/View/Charting/ChartingWizard/AgChargingWizard/AgChargingWizard.js +4 -4
- package/src/View/Charting/ChartingWizard/ExternalChartingWizard/ExternalChartingWizard.js +3 -3
- package/src/View/Charting/useChartingElements.d.ts +1 -1
- package/src/View/Charting/useChartingElements.js +1 -1
- package/src/View/ColumnInfo/ColumnInfo.js +14 -19
- package/src/View/ColumnInfo/ColumnInfoPopup.js +2 -2
- package/src/View/Comments/CommentsEditor.js +14 -17
- package/src/View/Comments/CommentsPopup.js +6 -6
- package/src/View/Components/AdaptableDateInput/index.js +1 -1
- package/src/View/Components/AdaptableInput/index.js +3 -2
- package/src/View/Components/AdaptableObjectCollection/index.d.ts +2 -2
- package/src/View/Components/AdaptableObjectCollection/index.js +9 -5
- package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +10 -10
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.d.ts +2 -0
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +20 -18
- package/src/View/Components/AdaptableObjectRow/index.d.ts +1 -0
- package/src/View/Components/AdaptableObjectRow/index.js +4 -5
- package/src/View/Components/Buttons/ButtonBase/index.d.ts +1 -2
- package/src/View/Components/Buttons/ButtonBase/index.js +5 -4
- package/src/View/Components/Buttons/ButtonClear.js +2 -1
- package/src/View/Components/Buttons/ButtonFunction.js +2 -1
- package/src/View/Components/Buttons/ButtonNew.d.ts +11 -1
- package/src/View/Components/Buttons/ButtonNew.js +2 -1
- package/src/View/Components/Buttons/EntityListActionButtons.d.ts +1 -1
- package/src/View/Components/Buttons/EntityListActionButtons.js +14 -43
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.d.ts +1 -0
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +3 -2
- package/src/View/Components/CellPopup/index.d.ts +1 -1
- package/src/View/Components/ColumnFilter/AdaptableColumnFilter.d.ts +4 -3
- package/src/View/Components/ColumnFilter/ColumnFilter.d.ts +4 -2
- package/src/View/Components/ColumnFilter/ColumnFilter.js +26 -23
- package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +6 -6
- package/src/View/Components/ColumnFilter/FloatingFilter.js +6 -6
- package/src/View/Components/ColumnFilter/components/ColumnFilterInput.d.ts +1 -1
- package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +2 -2
- package/src/View/Components/ColumnFilter/components/ColumnFilterInputList.js +1 -1
- package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +6 -6
- package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.d.ts +1 -1
- package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.js +9 -1
- package/src/View/Components/ColumnSelector/index.js +1 -3
- package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicateEditor.js +10 -10
- package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +11 -15
- package/src/View/Components/EntityRulesEditor/index.d.ts +5 -2
- package/src/View/Components/EntityRulesEditor/index.js +11 -10
- package/src/View/Components/ExpressionWizard.js +4 -4
- package/src/View/Components/FilterForm/Waiting.d.ts +4 -2
- package/src/View/Components/FilterForm/Waiting.js +3 -2
- package/src/View/Components/Forms/AdaptableFormControlTextClear.d.ts +1 -0
- package/src/View/Components/Forms/AdaptableFormControlTextClear.js +4 -8
- package/src/View/Components/ModuleValueSelector/index.js +2 -2
- package/src/View/Components/NewScopeComponent.js +20 -20
- package/src/View/Components/Panels/PanelFooter.js +5 -5
- package/src/View/Components/Panels/PanelToolPanel/index.d.ts +1 -1
- package/src/View/Components/Panels/PanelToolPanel/index.js +9 -11
- package/src/View/Components/Panels/PanelWithButton.d.ts +3 -5
- package/src/View/Components/Panels/PanelWithButton.js +7 -6
- package/src/View/Components/Panels/PanelWithImage.d.ts +2 -3
- package/src/View/Components/Panels/PanelWithImage.js +10 -12
- package/src/View/Components/Panels/PanelWithRow.d.ts +0 -1
- package/src/View/Components/Panels/PanelWithRow.js +3 -3
- package/src/View/Components/Panels/PanelWithTwoButtons.d.ts +1 -1
- package/src/View/Components/Panels/PanelWithTwoButtons.js +3 -3
- package/src/View/Components/Popups/AdaptableLoadingScreen.js +3 -5
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +4 -3
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +3 -2
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +4 -4
- package/src/View/Components/Popups/AdaptablePopup/Navigation.js +63 -31
- package/src/View/Components/Popups/AdaptablePopup/PopupPanel.d.ts +2 -0
- package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +8 -9
- package/src/View/Components/Popups/AdaptablePopup/TopBar.js +5 -4
- package/src/View/Components/Popups/AdaptablePopup/useMenuItems.d.ts +1 -1
- package/src/View/Components/Popups/AdaptablePopupAlert.js +6 -11
- package/src/View/Components/Popups/AdaptablePopupConfirmation.js +6 -6
- package/src/View/Components/Popups/AdaptablePopupPrompt.js +7 -7
- package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +9 -11
- package/src/View/Components/Popups/FormPopups/FormPopups.js +3 -3
- package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +1 -1
- package/src/View/Components/Popups/WindowPopups/WindowPopups.js +3 -3
- package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +0 -1
- package/src/View/Components/PredicateEditor/PredicateEditor.js +7 -7
- package/src/View/Components/PreviewResultsPanel.d.ts +1 -0
- package/src/View/Components/PreviewResultsPanel.js +6 -13
- package/src/View/Components/RangesComponent.js +19 -19
- package/src/View/Components/ReorderDraggable/index.d.ts +2 -0
- package/src/View/Components/ReorderDraggable/index.js +8 -7
- package/src/View/Components/Selectors/BulkUpdateValueSelector.js +4 -7
- package/src/View/Components/Selectors/ColumnSelector.js +1 -1
- package/src/View/Components/Selectors/ColumnSelectorOld.js +1 -1
- package/src/View/Components/StyleComponent.d.ts +2 -26
- package/src/View/Components/StyleComponent.js +186 -190
- package/src/View/Components/TagValueSelector/index.d.ts +1 -1
- package/src/View/Components/TagValueSelector/index.js +4 -3
- package/src/View/Components/ToolPanel/AdaptableToolPanel.d.ts +1 -1
- package/src/View/Components/ToolPanel/AdaptableToolPanel.js +13 -12
- package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +1 -1
- package/src/View/Components/ToolPanel/ToolPanelPopup.js +13 -10
- package/src/View/Components/ToolPanel/ToolPanelWrapper.js +2 -2
- package/src/View/Components/ValueSelector/index.d.ts +9 -33
- package/src/View/Components/ValueSelector/index.js +38 -61
- package/src/View/Components/WizardSummaryPage.js +1 -1
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +2 -2
- package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +4 -7
- package/src/View/CustomSort/Wizard/CustomSortWizard.js +5 -5
- package/src/View/Dashboard/Dashboard.js +3 -3
- package/src/View/Dashboard/DashboardPopup.js +27 -23
- package/src/View/Dashboard/DashboardViewPanel.js +4 -4
- package/src/View/Dashboard/PinnedDashboard.js +3 -3
- package/src/View/Dashboard/PinnedToolbarsSelector.js +3 -2
- package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +10 -10
- package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +7 -7
- package/src/View/DataImport/DataImportPopup.js +2 -2
- package/src/View/DataImport/DataImportWizard/DataImportWizard.js +2 -2
- package/src/View/DataImport/DataImportWizard/sections/ColumnsSection.js +6 -6
- package/src/View/DataImport/DataImportWizard/sections/ImportSection.js +4 -4
- package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadFileSection.js +1 -1
- package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadSection.js +4 -4
- package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadTextSection.js +1 -1
- package/src/View/DataImport/DataImportWizard/sections/ValidationSection.js +4 -4
- package/src/View/DataSet/DataSetViewPanel.d.ts +2 -2
- package/src/View/DataSet/DataSetViewPanel.js +2 -2
- package/src/View/Export/ExportDestinationPicker.js +2 -1
- package/src/View/Export/ExportViewPanel.js +4 -4
- package/src/View/Export/ReportFormatSelector.js +3 -3
- package/src/View/Export/ReportListItem.js +1 -1
- package/src/View/Export/ReportNameSelector.js +3 -3
- package/src/View/Export/Wizard/NewReportWizard.js +4 -4
- package/src/View/Export/Wizard/ReportColumnTypeWizard.js +8 -8
- package/src/View/Export/Wizard/ReportColumnsWizardSection.js +11 -11
- package/src/View/Export/Wizard/ReportNameWizardSection.js +4 -4
- package/src/View/Export/Wizard/ReportRowTypeWizard.js +8 -8
- package/src/View/Export/Wizard/ReportRowsWizardSection.js +9 -9
- package/src/View/Export/Wizard/ReportSettingsWizard.js +3 -3
- package/src/View/Filter/FilterSummary.d.ts +1 -1
- package/src/View/Filter/FilterSummary.js +1 -1
- package/src/View/Filter/FilterViewPanel.d.ts +2 -2
- package/src/View/Filter/FilterViewPanel.js +4 -4
- package/src/View/FlashingCell/FlashingCellStyle.d.ts +2 -2
- package/src/View/FlashingCell/FlashingCellStyle.js +4 -4
- package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +2 -2
- package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +11 -11
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.d.ts +2 -2
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +4 -4
- package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +5 -5
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +59 -64
- package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +0 -4
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +28 -28
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +2 -2
- package/src/View/FormatColumn/Wizard/FormatColumnTargetWizardSection.js +2 -2
- package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +8 -8
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +11 -11
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +4 -4
- package/src/View/GridFilter/GridFilterExpressionEditor.js +6 -6
- package/src/View/GridFilter/GridFilterPopup.js +31 -40
- package/src/View/GridFilter/GridFilterPopupUI/index.d.ts +68 -0
- package/src/View/GridFilter/GridFilterPopupUI/index.js +42 -0
- package/src/View/GridFilter/GridFilterViewPanel.js +14 -21
- package/src/View/GridFilter/NamedQuerySelector.js +7 -7
- package/src/View/GridFilter/useGridFilterExpressionEditor.d.ts +5 -1
- package/src/View/GridFilter/useGridFilterExpressionEditor.js +2 -1
- package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.d.ts +3 -1
- package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +4 -3
- package/src/View/GridInfo/GridInfoPopup/AdaptableOptionsComponent.js +5 -9
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +7 -7
- package/src/View/KeyHint.d.ts +5 -2
- package/src/View/KeyHint.js +4 -2
- package/src/View/Layout/EditCurrentLayoutButton.js +1 -1
- package/src/View/Layout/LayoutStatusBarSubPanelPopover.js +1 -1
- package/src/View/Layout/LayoutViewPanel.d.ts +3 -3
- package/src/View/Layout/LayoutViewPanel.js +2 -2
- package/src/View/Layout/TransposedPopup.js +4 -4
- package/src/View/Layout/Wizard/LayoutWizard.js +18 -18
- package/src/View/Layout/Wizard/sections/AggregationsSection.js +6 -8
- package/src/View/Layout/Wizard/sections/ColumnsSection.js +213 -138
- package/src/View/Layout/Wizard/sections/FilterSection.js +6 -7
- package/src/View/Layout/Wizard/sections/GridFilterSection.js +2 -2
- package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +15 -18
- package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +4 -6
- package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +3 -5
- package/src/View/Layout/Wizard/sections/RowGroupingSection.js +8 -10
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +15 -17
- package/src/View/Layout/Wizard/sections/SettingsSection.js +8 -8
- package/src/View/Layout/Wizard/sections/SortSection.js +5 -7
- package/src/View/License/LicenseWatermark.js +1 -1
- package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +2 -2
- package/src/View/NamedQuery/Wizard/NamedQuerySettingsWizardSection.js +3 -3
- package/src/View/NamedQuery/Wizard/NamedQueryWizard.js +3 -3
- package/src/View/Note/NoteEditor.js +5 -1
- package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +5 -5
- package/src/View/PlusMinus/Wizard/PlusMinusWizard.js +4 -4
- package/src/View/QuickSearch/FloatingQuickSearch/FloatingQuickSearch.js +2 -2
- package/src/View/QuickSearch/QuickSearchInput.d.ts +1 -0
- package/src/View/QuickSearch/QuickSearchInput.js +5 -5
- package/src/View/QuickSearch/QuickSearchPopup.js +17 -16
- package/src/View/QuickSearch/QuickSearchViewPanel.js +1 -1
- package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +4 -4
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.js +5 -5
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.js +2 -2
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +4 -4
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.js +5 -5
- package/src/View/Schedule/Wizard/ScheduleWizard.js +5 -5
- package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +5 -8
- package/src/View/Shortcut/Wizard/ShortcutWizard.js +5 -5
- package/src/View/SmartEdit/SmartEditPopup.d.ts +1 -1
- package/src/View/SmartEdit/SmartEditPopup.js +8 -8
- package/src/View/SmartEdit/SmartEditViewPanel.js +1 -1
- package/src/View/SpecialColumnSettingsWizardStep.js +4 -4
- package/src/View/StateManagement/StateManagementPopup.js +12 -12
- package/src/View/StateManagement/StateManagementViewPanel.js +1 -1
- package/src/View/StateManagement/handleExportState.d.ts +1 -1
- package/src/View/StatusBar/AdaptableStatusBar.js +1 -1
- package/src/View/StatusBar/StatusBarPanel.d.ts +2 -2
- package/src/View/StatusBar/StatusBarPanel.js +5 -4
- package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +9 -9
- package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +51 -48
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +8 -8
- package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardSettingsSection.js +18 -18
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarColumnComparisonPreview.js +3 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarRangesPreview.js +4 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.js +5 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgeSettings.js +4 -6
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +14 -15
- package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +4 -4
- package/src/View/SystemStatus/SystemStatusEntityRow.js +3 -3
- package/src/View/SystemStatus/SystemStatusPopup.js +2 -2
- package/src/View/SystemStatus/SystemStatusStatusBarContent.js +2 -2
- package/src/View/SystemStatus/SystemStatusViewPanel.d.ts +2 -2
- package/src/View/SystemStatus/SystemStatusViewPanel.js +2 -2
- package/src/View/TeamSharing/SharedEntityDependencies.js +4 -4
- package/src/View/TeamSharing/SharedEntityObjectView.js +8 -8
- package/src/View/Theme/ThemeEditor.js +6 -31
- package/src/View/Theme/ThemeEditorWindow.js +2 -2
- package/src/View/Theme/ThemeField.js +1 -2
- package/src/View/Theme/ThemePopup.d.ts +1 -1
- package/src/View/Theme/ThemePopup.js +4 -4
- package/src/View/Theme/ThemeStatusbar.js +1 -1
- package/src/View/Theme/VariantSelector.js +1 -1
- package/src/View/UIHelper.d.ts +1 -1
- package/src/View/Wizard/Interface/IAdaptableWizard.d.ts +1 -1
- package/src/View/Wizard/ObjectTagsWizardSection.js +2 -4
- package/src/View/Wizard/OnePageAdaptableWizard.d.ts +10 -4
- package/src/View/Wizard/OnePageAdaptableWizard.js +14 -16
- package/src/View/Wizard/OnePageWizards.d.ts +10 -4
- package/src/View/Wizard/OnePageWizards.js +50 -64
- package/src/View/Wizard/TypeRadio.js +3 -3
- package/src/View/Wizard/WizardLegend.js +3 -4
- package/src/View/Wizard/useKeyboardNavigation.d.ts +1 -1
- package/src/View/Wizard/useKeyboardNavigation.js +7 -4
- package/src/View/renderWithAdaptableContext.js +2 -5
- package/src/agGrid/AdaptableAgGrid.d.ts +11 -3
- package/src/agGrid/AdaptableAgGrid.js +153 -18
- package/src/agGrid/AdaptableFilterHandler.d.ts +5 -7
- package/src/agGrid/AdaptableFilterHandler.js +12 -28
- package/src/agGrid/AgGridColumnAdapter.d.ts +6 -1
- package/src/agGrid/AgGridColumnAdapter.js +26 -5
- package/src/agGrid/AgGridFilterAdapter.js +1 -1
- package/src/agGrid/AgGridFloatingFilterAdapter.js +1 -21
- package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +1 -5
- package/src/agGrid/editors/AdaptablePercentageEditor/InternalAdaptablePercentageEditor.js +1 -5
- package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +9 -8
- package/src/components/Card/index.d.ts +25 -0
- package/src/components/Card/index.js +45 -0
- package/src/components/CheckBox/index.d.ts +3 -4
- package/src/components/CheckBox/index.js +7 -9
- package/src/components/CodeBlock/index.d.ts +6 -2
- package/src/components/CodeBlock/index.js +3 -3
- package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
- package/src/components/ColorPicker/ColorPicker.js +10 -9
- package/src/components/Dashboard/Dashboard.js +1 -1
- package/src/components/Dashboard/DashboardToolbar.js +5 -6
- package/src/components/Datepicker/index.d.ts +2 -2
- package/src/components/Datepicker/index.js +9 -8
- package/src/components/Dialog/index.d.ts +8 -2
- package/src/components/Dialog/index.js +7 -7
- package/src/components/DragAndDropContext/DragAndDropContext.d.ts +1 -1
- package/src/components/DragAndDropContext/ModuleManager.d.ts +1 -0
- package/src/components/DragAndDropContext/ModuleManager.js +9 -6
- package/src/components/DragAndDropContext/TabList.d.ts +2 -1
- package/src/components/DragAndDropContext/TabList.js +44 -24
- package/src/components/DragAndDropContext/UnusedPanel.js +7 -15
- package/src/components/Dropdown/index.d.ts +2 -2
- package/src/components/Dropdown/index.js +5 -6
- package/src/components/DropdownButton/index.d.ts +2 -22
- package/src/components/DropdownButton/index.js +7 -4
- package/src/components/EmptyContent/index.d.ts +2 -2
- package/src/components/EmptyContent/index.js +4 -4
- package/src/components/ErrorBox/index.d.ts +2 -2
- package/src/components/ErrorBox/index.js +3 -3
- package/src/components/ExpressionEditor/BaseEditorInput.js +65 -48
- package/src/components/ExpressionEditor/DataTableEditor.js +6 -10
- package/src/components/ExpressionEditor/EditorButton.js +0 -2
- package/src/components/ExpressionEditor/EditorContext.d.ts +0 -1
- package/src/components/ExpressionEditor/EditorInputWithWhereClause.js +5 -5
- package/src/components/ExpressionEditor/ExpressionFunctionDocumentation.js +9 -11
- package/src/components/ExpressionEditor/NamedQueryContext.d.ts +0 -1
- package/src/components/ExpressionEditor/NamedQueryEditor.js +6 -16
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilder.d.ts +2 -10
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilder.js +6 -6
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.d.ts +1 -1
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +7 -7
- package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +9 -14
- package/src/components/ExpressionEditor/index.d.ts +1 -0
- package/src/components/ExpressionEditor/index.js +29 -34
- package/src/components/FieldWrap/index.d.ts +9 -2
- package/src/components/FieldWrap/index.js +3 -8
- package/src/components/FileDroppable/FileDroppableState.d.ts +0 -1
- package/src/components/FileDroppable/index.d.ts +3 -2
- package/src/components/FileDroppable/index.js +3 -3
- package/src/components/Flex.d.ts +15 -1
- package/src/components/Flex.js +40 -1
- package/src/components/FlexWithFooter.d.ts +3 -2
- package/src/components/FlexWithFooter.js +4 -4
- package/src/components/FormLayout/index.d.ts +5 -1
- package/src/components/FormLayout/index.js +1 -1
- package/src/components/HelpBlock/index.d.ts +2 -2
- package/src/components/HelpBlock/index.js +4 -3
- package/src/components/IconSelector/IconSelector.js +8 -8
- package/src/components/Input/index.d.ts +1 -2
- package/src/components/Input/index.js +6 -3
- package/src/components/Modal/Backdrop.js +1 -1
- package/src/components/Modal/index.d.ts +3 -2
- package/src/components/Modal/index.js +3 -3
- package/src/components/OverlayTrigger/index.js +3 -0
- package/src/components/Panel/index.d.ts +22 -6
- package/src/components/Panel/index.js +54 -15
- package/src/components/PopupWithFooter.js +3 -4
- package/src/components/ProgressIndicator/ProgressIndicator.js +3 -3
- package/src/components/Radio/index.d.ts +25 -3
- package/src/components/Radio/index.js +18 -20
- package/src/components/Select/Select.js +33 -21
- package/src/components/SelectList.js +1 -1
- package/src/components/SelectableList/index.d.ts +1 -1
- package/src/components/SimpleButton/index.d.ts +4 -6
- package/src/components/SimpleButton/index.js +55 -23
- package/src/components/SizedContainer/index.d.ts +3 -1
- package/src/components/SizedContainer/index.js +1 -1
- package/src/components/StylePreview.d.ts +3 -1
- package/src/components/StylePreview.js +4 -3
- package/src/components/Tabs/index.d.ts +3 -3
- package/src/components/Tabs/index.js +26 -9
- package/src/components/Tag/Tag.d.ts +14 -2
- package/src/components/Tag/Tag.js +10 -3
- package/src/components/Tag/index.d.ts +1 -1
- package/src/components/Tag/index.js +1 -1
- package/src/components/Textarea/index.d.ts +5 -1
- package/src/components/Textarea/index.js +4 -3
- package/src/components/Toggle/Toggle.js +48 -3
- package/src/components/Toggle/ToggleGroup.d.ts +7 -0
- package/src/components/Toggle/ToggleGroup.js +57 -2
- package/src/components/ToggleButton/index.d.ts +2 -2
- package/src/components/ToggleButton/index.js +25 -7
- package/src/components/Tree/TreeDropdown/index.js +10 -15
- package/src/components/Tree/TreeList/index.js +5 -9
- package/src/components/WarningBox/index.d.ts +6 -2
- package/src/components/WarningBox/index.js +3 -3
- package/src/components/WizardPanel/index.d.ts +6 -1
- package/src/components/WizardPanel/index.js +2 -2
- package/src/components/icons/DefaultIcon.d.ts +1 -0
- package/src/components/icons/index.d.ts +1 -1
- package/src/components/icons/index.js +2 -0
- package/src/components/icons/inspector.d.ts +3 -0
- package/src/components/icons/inspector.js +5 -0
- package/src/components/twUtils.d.ts +7 -0
- package/src/components/twUtils.js +13 -0
- package/src/components/utils/useDraggable.d.ts +0 -1
- package/src/devTools/index.d.ts +23 -23
- package/src/env.js +2 -2
- package/src/layout-manager/src/LMEmitter.d.ts +1 -0
- package/src/layout-manager/src/LMEmitter.js +1 -0
- package/src/layout-manager/src/index.js +2 -2
- package/src/migration/VersionUpgrade20.js +6 -5
- package/src/twMerge.d.ts +1 -0
- package/src/twMerge.js +11 -0
- package/themes/dark.css +35 -9
- package/themes/light.css +0 -2
- package/tsconfig.esm.tsbuildinfo +1 -1
- package/base.css +0 -5602
- package/base.css.map +0 -1
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnStyleViewItems.d.ts +0 -3
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnStyleViewItems.js +0 -6
- package/src/View/Alert/AlertsPanel.d.ts +0 -14
- package/src/View/Alert/AlertsPanel.js +0 -38
- package/src/View/Alert/Wizard/AlertSelectQueryWizard.d.ts +0 -19
- package/src/View/Alert/Wizard/AlertSelectQueryWizard.js +0 -54
- package/src/View/Components/FilterForm/ListBoxMenu.d.ts +0 -14
- package/src/View/Components/FilterForm/ListBoxMenu.js +0 -28
- package/src/View/Components/ListBox/DualListBoxEditor.d.ts +0 -22
- package/src/View/Components/ListBox/DualListBoxEditor.js +0 -515
- package/src/View/Components/ListBox/ListBoxFilterSortComponent.d.ts +0 -13
- package/src/View/Components/ListBox/ListBoxFilterSortComponent.js +0 -26
- package/src/View/CustomSort/Wizard/CustomSortSummaryWizard.d.ts +0 -15
- package/src/View/CustomSort/Wizard/CustomSortSummaryWizard.js +0 -31
- package/src/View/Layout/Wizard/Components/ColumnLabels.d.ts +0 -9
- package/src/View/Layout/Wizard/Components/ColumnLabels.js +0 -52
- package/src/View/Wizard/AdaptableWizard.d.ts +0 -56
- package/src/View/Wizard/AdaptableWizard.js +0 -168
- package/src/components/ContainerProps.d.ts +0 -30
- package/src/components/ContainerProps.js +0 -1
- package/src/components/EllipsisContainer/index.d.ts +0 -13
- package/src/components/EllipsisContainer/index.js +0 -100
- package/src/components/List/GridList/index.d.ts +0 -10
- package/src/components/List/GridList/index.js +0 -23
- package/src/components/List/ListGroup/index.d.ts +0 -6
- package/src/components/List/ListGroup/index.js +0 -9
- package/src/components/List/ListGroupItem/index.d.ts +0 -11
- package/src/components/List/ListGroupItem/index.js +0 -16
- package/src/components/utils/useTheme.d.ts +0 -32
- package/src/components/utils/useTheme.js +0 -2
- package/src/theme.d.ts +0 -32
- package/src/theme.js +0 -49
- package/themes/dark.css.map +0 -1
- package/themes/light.css.map +0 -1
|
@@ -2,56 +2,27 @@ import * as React from 'react';
|
|
|
2
2
|
import { ButtonEdit } from './ButtonEdit';
|
|
3
3
|
import { ButtonClone } from './ButtonClone';
|
|
4
4
|
import { ButtonDelete } from './ButtonDelete';
|
|
5
|
-
import { Flex } from 'rebass';
|
|
6
5
|
import { ButtonShare } from './ButtonShare';
|
|
7
6
|
import { SuspendToggleButton } from './SuspendToggleButton/SuspendToggleButton';
|
|
7
|
+
import { Flex } from '../../../components/Flex';
|
|
8
|
+
import clsx from 'clsx';
|
|
8
9
|
const stopPropagation = (e) => {
|
|
9
10
|
e.stopPropagation();
|
|
10
11
|
};
|
|
11
12
|
export class EntityListActionButtons extends React.Component {
|
|
12
13
|
render() {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
this.props.
|
|
24
|
-
|
|
25
|
-
marginTop: '2px',
|
|
26
|
-
marginBottom: '2px',
|
|
27
|
-
marginRight: '2px',
|
|
28
|
-
color: 'var(--ab-color-text-on-clone)',
|
|
29
|
-
fill: 'var(--ab-color-text-on-clone)',
|
|
30
|
-
background: 'var(--ab-color-action-clone)',
|
|
31
|
-
}, children: null, disabled: this.props.overrideDisableClone || this.props.cloneAccessLevel == 'ReadOnly', tooltip: this.props.overrideTooltipClone, accessLevel: this.props.cloneAccessLevel })),
|
|
32
|
-
this.props.showDelete && (React.createElement(ButtonDelete, { "data-name": "delete", style: {
|
|
33
|
-
marginLeft: '1px',
|
|
34
|
-
marginTop: '2px',
|
|
35
|
-
marginBottom: '2px',
|
|
36
|
-
marginRight: '1px',
|
|
37
|
-
//TODO move those styles in ButtonDelete
|
|
38
|
-
color: 'var(--ab-color-text-on-delete)',
|
|
39
|
-
fill: 'var(--ab-color-text-on-delete)',
|
|
40
|
-
background: 'var(--ab-color-action-delete)',
|
|
41
|
-
}, disabled: this.props.overrideDisableDelete || this.props.accessLevel == 'ReadOnly', tooltip: this.props.overrideTooltipDelete, ConfirmAction: this.props.confirmDeleteAction, ConfirmationMsg: 'Are you sure you want to delete this ' + this.props.entityType + '?', ConfirmationTitle: 'Delete ' + this.props.entityType, accessLevel: this.props.accessLevel })),
|
|
42
|
-
this.props.showShare && (React.createElement(ButtonShare, { style: {
|
|
43
|
-
marginLeft: '1px',
|
|
44
|
-
marginTop: '2px',
|
|
45
|
-
marginBottom: '2px',
|
|
46
|
-
marginRight: '1px',
|
|
47
|
-
color: 'var(--ab-color-text-on-share)',
|
|
48
|
-
fill: 'var(--ab-color-text-on-share)',
|
|
49
|
-
background: 'var(--ab-color-action-share)',
|
|
50
|
-
}, onShare: (config) => this.props.shareClick ? this.props.shareClick(config) : null, Header: `TeamSharing ${this.props.entityType}`, disabled: this.props.overrideDisableShare || this.props.accessLevel == 'ReadOnly', tooltip: this.props.overrideTooltipShare, accessLevel: this.props.accessLevel })),
|
|
51
|
-
this.props.showSuspend && this.props.suspendableObject && (React.createElement(SuspendToggleButton, { style: {
|
|
52
|
-
marginLeft: 2,
|
|
53
|
-
alignSelf: 'center',
|
|
54
|
-
}, onSuspend: this.props.onSuspend, onUnSuspend: this.props.onUnSuspend, suspendableObject: this.props.suspendableObject, disabled: this.props.accessLevel == 'ReadOnly' }))));
|
|
14
|
+
const { justifyContent } = this.props;
|
|
15
|
+
const justifyContentClassName = clsx({
|
|
16
|
+
'twa:justify-start': justifyContent === 'start',
|
|
17
|
+
'twa:justify-center': justifyContent === 'center',
|
|
18
|
+
'twa:justify-end': justifyContent === 'end',
|
|
19
|
+
}) || 'twa:justify-center';
|
|
20
|
+
return (React.createElement(Flex, { className: `${justifyContentClassName} twa:m-0 twa:p-0`, onClick: stopPropagation },
|
|
21
|
+
this.props.showEdit && (React.createElement(ButtonEdit, { onClick: () => (this.props.editClick ? this.props.editClick() : null), className: `twa:ml-0 twa:mr-[2px] twa:my-[2px] twa:text-text-on-edit twa:bg-action-edit twa:fill-text-on-edit`, disabled: this.props.overrideDisableEdit || this.props.accessLevel == 'ReadOnly', tooltip: this.props.overrideTooltipEdit, accessLevel: this.props.accessLevel })),
|
|
22
|
+
this.props.showClone && (React.createElement(ButtonClone, { onClick: () => (this.props.cloneClick ? this.props.cloneClick() : null), className: `twa:ml-0 twa:mr-[2px] twa:my-[2px] twa:text-text-on-clone twa:bg-action-clone twa:fill-text-on-clone`, children: null, disabled: this.props.overrideDisableClone || this.props.cloneAccessLevel == 'ReadOnly', tooltip: this.props.overrideTooltipClone, accessLevel: this.props.cloneAccessLevel })),
|
|
23
|
+
this.props.showDelete && (React.createElement(ButtonDelete, { "data-name": "delete", className: `twa:mx-[px] twa:my-[2px] twa:text-text-on-delete twa:bg-action-delete twa:fill-text-on-delete`, disabled: this.props.overrideDisableDelete || this.props.accessLevel == 'ReadOnly', tooltip: this.props.overrideTooltipDelete, ConfirmAction: this.props.confirmDeleteAction, ConfirmationMsg: 'Are you sure you want to delete this ' + this.props.entityType + '?', ConfirmationTitle: 'Delete ' + this.props.entityType, accessLevel: this.props.accessLevel })),
|
|
24
|
+
this.props.showShare && (React.createElement(ButtonShare, { className: `twa:mx-[1px] twa:my-[2px] twa:text-text-on-share twa:bg-action-share twa:fill-text-on-share`, onShare: (config) => this.props.shareClick ? this.props.shareClick(config) : null, Header: `TeamSharing ${this.props.entityType}`, disabled: this.props.overrideDisableShare || this.props.accessLevel == 'ReadOnly', tooltip: this.props.overrideTooltipShare, accessLevel: this.props.accessLevel })),
|
|
25
|
+
this.props.showSuspend && this.props.suspendableObject && (React.createElement(SuspendToggleButton, { className: `twa:ml-[2px] twa:align-self-center`, onSuspend: this.props.onSuspend, onUnSuspend: this.props.onUnSuspend, suspendableObject: this.props.suspendableObject, disabled: this.props.accessLevel == 'ReadOnly' }))));
|
|
55
26
|
}
|
|
56
27
|
}
|
|
57
28
|
EntityListActionButtons.defaultProps = {
|
|
@@ -9,6 +9,7 @@ interface EntityListSuspendButtonProps {
|
|
|
9
9
|
style?: React.CSSProperties;
|
|
10
10
|
disabled?: boolean;
|
|
11
11
|
accessLevel?: AccessLevel;
|
|
12
|
+
className?: string;
|
|
12
13
|
}
|
|
13
14
|
export declare const SuspendToggleButton: React.FunctionComponent<EntityListSuspendButtonProps>;
|
|
14
15
|
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { ToggleButton } from '../../../../components/ToggleButton';
|
|
3
|
-
|
|
3
|
+
import clsx from 'clsx';
|
|
4
|
+
export const SuspendToggleButton = React.memo(({ suspendableObject, onUnSuspend, onSuspend, style, disabled, accessLevel, className }) => {
|
|
4
5
|
const handleOnChange = React.useCallback((checked) => {
|
|
5
6
|
if (checked) {
|
|
6
7
|
onUnSuspend(suspendableObject);
|
|
@@ -11,5 +12,5 @@ export const SuspendToggleButton = React.memo(({ suspendableObject, onUnSuspend,
|
|
|
11
12
|
}, [onUnSuspend, onSuspend]);
|
|
12
13
|
const preparedDisabled = (accessLevel && accessLevel === 'ReadOnly') || disabled;
|
|
13
14
|
const isSuspended = suspendableObject.IsSuspended;
|
|
14
|
-
return (React.createElement(ToggleButton, { className:
|
|
15
|
+
return (React.createElement(ToggleButton, { className: clsx(`ab-SuspendButton`, className), "data-name": suspendableObject.IsSuspended ? 'un-suspend' : 'suspend', disabled: preparedDisabled, style: style, onChange: handleOnChange, checked: !isSuspended }, isSuspended ? 'inactive' : 'active'));
|
|
15
16
|
});
|
|
@@ -9,5 +9,5 @@ export type CellPopupHandle = {
|
|
|
9
9
|
refreshContent: () => void;
|
|
10
10
|
};
|
|
11
11
|
export declare const CellPopup: React.ForwardRefExoticComponent<CellPopupProps & {
|
|
12
|
-
children?: React.ReactNode;
|
|
12
|
+
children?: React.ReactNode | undefined;
|
|
13
13
|
} & React.RefAttributes<CellPopupHandle>>;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { BoxProps } from 'rebass';
|
|
3
2
|
export interface AdaptableColumnFilterProps {
|
|
4
3
|
location: 'columnMenu' | 'filterForm';
|
|
5
4
|
columnId: string;
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
wrapperProps?: {
|
|
6
|
+
className?: string;
|
|
7
|
+
style?: React.CSSProperties;
|
|
8
|
+
};
|
|
8
9
|
}
|
|
9
10
|
/**
|
|
10
11
|
* This wrapper knows about predicates.
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { BoxProps } from 'rebass';
|
|
3
2
|
import { QlPredicate, QlPredicateDef } from '../../../parser/src/predicate';
|
|
4
3
|
interface ColumnFilterComponentProps {
|
|
5
4
|
location: 'columnMenu' | 'filterForm';
|
|
@@ -9,7 +8,10 @@ interface ColumnFilterComponentProps {
|
|
|
9
8
|
predicate?: QlPredicate;
|
|
10
9
|
predicateDefs: QlPredicateDef[];
|
|
11
10
|
onPredicateChange: (predicate: QlPredicate | null) => void;
|
|
12
|
-
wrapperProps?:
|
|
11
|
+
wrapperProps?: {
|
|
12
|
+
className?: string;
|
|
13
|
+
style?: React.CSSProperties;
|
|
14
|
+
};
|
|
13
15
|
}
|
|
14
16
|
export declare const ColumnFilterComponent: React.FunctionComponent<ColumnFilterComponentProps>;
|
|
15
17
|
export {};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Box, Flex } from 'rebass';
|
|
3
2
|
import SimpleButton from '../../../components/SimpleButton';
|
|
4
3
|
import { ColumnFilterInputList } from './components/ColumnFilterInputList';
|
|
5
4
|
import { usePredicateDef } from './hooks';
|
|
@@ -7,28 +6,26 @@ import Radio from '../../../components/Radio';
|
|
|
7
6
|
import { useAdaptable } from '../../AdaptableContext';
|
|
8
7
|
import { Select } from '../../../components/Select';
|
|
9
8
|
import { mapQlPredicateToAdaptablePredicate } from './utils';
|
|
9
|
+
import { Box, Flex } from '../../../components/Flex';
|
|
10
|
+
import clsx from 'clsx';
|
|
11
|
+
import { twMerge } from '../../../twMerge';
|
|
10
12
|
const ColumnFilterPredicateDropdown = (props) => {
|
|
11
13
|
const predicateDef = usePredicateDef(props.predicate?.operator, props.predicateDefs);
|
|
12
14
|
const options = props.predicateDefs.map((predicateDef) => {
|
|
13
15
|
return {
|
|
14
|
-
label: (React.createElement(Box, {
|
|
15
|
-
React.createElement(SimpleButton, { variant: "raised",
|
|
16
|
+
label: (React.createElement(Box, { className: "twa:flex twa:items-center" },
|
|
17
|
+
React.createElement(SimpleButton, { variant: "raised", className: "twa:mr-2", tone: "accent" }, predicateDef.icon),
|
|
16
18
|
predicateDef.label)),
|
|
17
19
|
value: predicateDef.operator,
|
|
18
20
|
};
|
|
19
21
|
});
|
|
20
22
|
const operator = props.predicate?.operator;
|
|
21
23
|
const isAndOr = operator === 'AND' || operator === 'OR';
|
|
22
|
-
return (React.createElement(Box, {
|
|
24
|
+
return (React.createElement(Box, { className: "twa:flex twa:items-center ab-ColumnFilterPredicateDropdown", style: {
|
|
23
25
|
//@ts-ignore ignore
|
|
24
26
|
'--ab-cmp-input__background': 'var(--ab-color-primary)',
|
|
25
27
|
} },
|
|
26
|
-
React.createElement(Select, {
|
|
27
|
-
? {
|
|
28
|
-
minWidth: '10rem',
|
|
29
|
-
}
|
|
30
|
-
: null // for AND and OR don't apply a min width
|
|
31
|
-
, onChange: (value) => {
|
|
28
|
+
React.createElement(Select, { className: predicateDef ? `twa:min-w-[10rem]` : null, onChange: (value) => {
|
|
32
29
|
props.onPredicateChange({
|
|
33
30
|
operator: value,
|
|
34
31
|
args: [],
|
|
@@ -36,10 +33,10 @@ const ColumnFilterPredicateDropdown = (props) => {
|
|
|
36
33
|
}, options: options, value: isAndOr ? 'Add Condition' : props.predicate?.operator })));
|
|
37
34
|
};
|
|
38
35
|
const ColumnFilterEditor = (props) => {
|
|
39
|
-
return (React.createElement(Box, {
|
|
40
|
-
React.createElement(Flex, {
|
|
36
|
+
return (React.createElement(Box, { className: "twa:mb-3" },
|
|
37
|
+
React.createElement(Flex, { className: "twa:mb-2" },
|
|
41
38
|
React.createElement(ColumnFilterPredicateDropdown, { columnId: props.columnId, disabled: props.disabled, predicate: props.predicate, predicateDefs: props.predicateDefs, onPredicateChange: props.onPredicateChange }),
|
|
42
|
-
React.createElement(Flex, { alignItems: "center",
|
|
39
|
+
React.createElement(Flex, { alignItems: "center", className: "twa:ml-2" },
|
|
43
40
|
React.createElement(SimpleButton, { disabled: props.deleteDisabled, onClick: props.onDelete, variant: "text", icon: "delete" }))),
|
|
44
41
|
React.createElement(ColumnFilterInputList, { columnId: props.columnId, disabled: props.disabled, predicate: props.predicate, onPredicateChange: props.onPredicateChange, predicateDefs: props.predicateDefs })));
|
|
45
42
|
};
|
|
@@ -55,9 +52,9 @@ const AndOrInput = (props) => {
|
|
|
55
52
|
// />
|
|
56
53
|
(React.createElement(
|
|
57
54
|
Flex,
|
|
58
|
-
{
|
|
59
|
-
React.createElement(Radio, {
|
|
60
|
-
React.createElement(Radio, {
|
|
55
|
+
{ className: "twa:flex-1" },
|
|
56
|
+
React.createElement(Radio, { className: "twa:mr-2", onClick: () => props.onChange('AND'), checked: props.operator === 'AND' }, "AND"),
|
|
57
|
+
React.createElement(Radio, { className: "twa:mr-2", onClick: () => props.onChange('OR'), checked: props.operator === 'OR' }, "OR")
|
|
61
58
|
))
|
|
62
59
|
);
|
|
63
60
|
};
|
|
@@ -125,22 +122,28 @@ export const ColumnFilterComponent = (props) => {
|
|
|
125
122
|
.some((adaptablePredicate) => adaptable.api.predicateApi.isValidPredicate(adaptablePredicate));
|
|
126
123
|
};
|
|
127
124
|
return (React.createElement(React.Fragment, null,
|
|
128
|
-
React.createElement(Flex, { flexDirection: "column",
|
|
129
|
-
|
|
125
|
+
React.createElement(Flex, { flexDirection: "column", className: clsx({
|
|
126
|
+
'twa:bg-primarylight': true,
|
|
127
|
+
'twa:pb-2': !props.hideActionButtons,
|
|
128
|
+
'twa:mb-2': props.location === 'filterForm',
|
|
129
|
+
'twa:mt-2 twa:ml-2 twa:mr-2': props.location === 'columnMenu',
|
|
130
|
+
'twa:rounded-standard': true,
|
|
131
|
+
}) },
|
|
132
|
+
React.createElement(Flex, { className: "twa:m-2" },
|
|
130
133
|
React.createElement(AndOrInput, { onChange: onCombineChange, operator: currentPredicate.operator })),
|
|
131
|
-
!props.hideActionButtons && (React.createElement(Flex, {
|
|
134
|
+
!props.hideActionButtons && (React.createElement(Flex, { className: "ab-ColumnFilter-actions twa:ml-2 twa:mr-2", justifyContent: "space-between" },
|
|
132
135
|
React.createElement(Box, { className: "ab-ColumnFilter-action-clearall" },
|
|
133
136
|
React.createElement(SimpleButton, { "aria-label": 'Clear All Filters', onClick: () => clearAllFilters() }, "Clear All")),
|
|
134
137
|
manuallyApplyColumnFilter ? (React.createElement(React.Fragment, null,
|
|
135
|
-
React.createElement(Box, {
|
|
136
|
-
React.createElement(Box, { className: "ab-ColumnFilter-action-reset
|
|
138
|
+
React.createElement(Box, { className: "twa:flex-1", "data-name": "spacer" }),
|
|
139
|
+
React.createElement(Box, { className: "ab-ColumnFilter-action-reset twa:mr-2" },
|
|
137
140
|
React.createElement(SimpleButton, { "aria-label": 'Reset All', tone: "neutral", variant: "raised", onClick: () => {
|
|
138
141
|
setPredicateNotYetApplied(props.predicate);
|
|
139
142
|
} }, "Reset")),
|
|
140
143
|
React.createElement(Box, { className: "ab-ColumnFilter-action-apply" },
|
|
141
144
|
React.createElement(SimpleButton, { "aria-label": 'Apply Filter', tone: "accent", variant: "raised", onClick: applyFilter, disabled: !isAtLeastOneColumnFilterValid(predicateNotYetApplied?.args) && !isAtLeastOneColumnFilterValid(currentPredicate.args) }, "Apply")))) : null))),
|
|
142
|
-
React.createElement(Flex, { flexDirection: "column", className:
|
|
143
|
-
React.createElement(Box, {
|
|
145
|
+
React.createElement(Flex, { flexDirection: "column", style: props.wrapperProps?.style, className: twMerge(`ab-ColumnFilter twa:flex-1 twa:min-h-0`, props.wrapperProps?.className) },
|
|
146
|
+
React.createElement(Box, { className: "ab-ColumnFilter-content twa:overflow-auto" },
|
|
144
147
|
currentPredicate.args.map((predicate, index) => {
|
|
145
148
|
return (React.createElement(ColumnFilterEditor, { deleteDisabled: currentPredicate.args.length < 2, onDelete: () => {
|
|
146
149
|
const currentPredicate = currentPredicateRef.current;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Box, Flex } from 'rebass';
|
|
3
2
|
import FormLayout, { FormRow } from '../../../components/FormLayout';
|
|
4
3
|
import { ColumnSelector } from '../Selectors/ColumnSelector';
|
|
5
4
|
import { AdaptableColumnFilter } from './AdaptableColumnFilter';
|
|
6
5
|
import { useAdaptable } from '../../AdaptableContext';
|
|
7
6
|
import { AdaptableIconComponent } from '../AdaptableIconComponent';
|
|
7
|
+
import { Box, Flex } from '../../../components/Flex';
|
|
8
8
|
export const ColumnFilterWindow = (props) => {
|
|
9
9
|
const { api } = useAdaptable();
|
|
10
10
|
const { value: initialColumnId } = props?.popupProps;
|
|
@@ -12,19 +12,19 @@ export const ColumnFilterWindow = (props) => {
|
|
|
12
12
|
React.useEffect(() => {
|
|
13
13
|
setColumnId(initialColumnId);
|
|
14
14
|
}, [props.popupProps.value]);
|
|
15
|
-
const onChange = props.popupProps.onChange;
|
|
16
|
-
return (React.createElement(Flex, {
|
|
17
|
-
React.createElement(Box, {
|
|
15
|
+
// const onChange = props.popupProps.onChange;
|
|
16
|
+
return (React.createElement(Flex, { flexDirection: "column", className: "ab-ColumnFilterWindow twa:flex-1 twa:min-h-0 twa:p-2 twa:h-full" },
|
|
17
|
+
React.createElement(Box, { className: "twa:mb-2" },
|
|
18
18
|
React.createElement(FormLayout, null,
|
|
19
19
|
React.createElement(FormRow, { label: "Column" },
|
|
20
20
|
React.createElement(ColumnSelector, { renderOption: (column) => {
|
|
21
21
|
const columnFilter = api.filterApi.columnFilterApi.getColumnFilterForColumn(column.columnId);
|
|
22
|
-
|
|
22
|
+
const label = column.friendlyName ?? column.columnId;
|
|
23
23
|
if (columnFilter &&
|
|
24
24
|
api.filterApi.columnFilterApi.isColumnFilterActive(columnFilter)) {
|
|
25
25
|
return (React.createElement(Flex, null,
|
|
26
26
|
label,
|
|
27
|
-
React.createElement(Box, {
|
|
27
|
+
React.createElement(Box, { className: "twa:flex-1" }),
|
|
28
28
|
React.createElement(AdaptableIconComponent, { icon: { name: 'filter' } })));
|
|
29
29
|
}
|
|
30
30
|
return label;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Box, Flex } from 'rebass';
|
|
3
2
|
import OverlayTrigger from '../../../components/OverlayTrigger';
|
|
4
3
|
import SimpleButton from '../../../components/SimpleButton';
|
|
5
4
|
import { useAdaptable } from '../../AdaptableContext';
|
|
@@ -8,6 +7,7 @@ import { ColumnFilterMenu } from './components/ColumnFilterMenu';
|
|
|
8
7
|
import { FloatingFilterInputList } from './components/FloatingFilterInputList';
|
|
9
8
|
import { isPredicateEmpty, qlPredicateToString } from './utils';
|
|
10
9
|
import { AG_GRID_GROUPED_COLUMN } from '../../../Utilities/Constants/GeneralConstants';
|
|
10
|
+
import { Box, Flex } from '../../../components/Flex';
|
|
11
11
|
export const FloatingFilter = (props) => {
|
|
12
12
|
const adaptable = useAdaptable();
|
|
13
13
|
/**
|
|
@@ -53,7 +53,7 @@ export const FloatingFilter = (props) => {
|
|
|
53
53
|
: {}),
|
|
54
54
|
} },
|
|
55
55
|
React.createElement(Box, null, !isManualApply && singleFilterPredicateDef?.icon ? (singleFilterPredicateDef?.icon) : (React.createElement(AdaptableIconComponent, { icon: { name: 'filter' } }))),
|
|
56
|
-
showLabel && (React.createElement(Box, {
|
|
56
|
+
showLabel && (React.createElement(Box, { className: "ab-FloatingFilter-label twa:ml-2 twa:flex-1", title: label }, label))));
|
|
57
57
|
if (isInlineEditable) {
|
|
58
58
|
filterDropdown = showQuickFilterDropdown && (React.createElement(OverlayTrigger, { className: "ab-FloatingFilter-overlay", showEvent: showEvent, hideEvent: hideEvent, preventPortalEventPropagation: showEvent === 'click', targetOffset: 10, hideDelay: 50, "data-name": "floating-filter-overlay", render: () => {
|
|
59
59
|
// we render this only for single filter
|
|
@@ -68,9 +68,9 @@ export const FloatingFilter = (props) => {
|
|
|
68
68
|
else {
|
|
69
69
|
filterDropdown = filterDropdownButton;
|
|
70
70
|
}
|
|
71
|
-
return (React.createElement(Flex, { className: "ab-FloatingFilter
|
|
71
|
+
return (React.createElement(Flex, { className: "ab-FloatingFilter twa:w-full" },
|
|
72
72
|
filterDropdown,
|
|
73
|
-
isInlineEditable && (React.createElement(Flex, {
|
|
73
|
+
isInlineEditable && (React.createElement(Flex, { className: "twa:flex-1 twa:min-w-0" },
|
|
74
74
|
React.createElement(FloatingFilterInputList, { onKeyDown: props.onKeydown, columnId: props.columnId, disabled: props.disabled,
|
|
75
75
|
// It works only with a predicate
|
|
76
76
|
predicate: props.predicate.args[0], predicateDefs: props.predicateDefs, onPredicateChange: (predicate) => {
|
|
@@ -79,11 +79,11 @@ export const FloatingFilter = (props) => {
|
|
|
79
79
|
args: [predicate],
|
|
80
80
|
});
|
|
81
81
|
} }))),
|
|
82
|
-
isInlineEditable && (React.createElement(SimpleButton, {
|
|
82
|
+
isInlineEditable && (React.createElement(SimpleButton, { className: "twa:px-0", onClick: () => {
|
|
83
83
|
adaptable.api.filterApi.columnFilterApi.internalApi.openColumnFilterPopup(props.columnId, {
|
|
84
84
|
onChange: props.onChange,
|
|
85
85
|
});
|
|
86
86
|
}, "data-name": "expand-filter", icon: "expand", variant: "text" })),
|
|
87
87
|
(isMultiple ||
|
|
88
|
-
!isPredicateEmpty(props.predicate.args[0], singleFilterPredicateDef)) && (React.createElement(SimpleButton, { "data-name": "clear-filter",
|
|
88
|
+
!isPredicateEmpty(props.predicate.args[0], singleFilterPredicateDef)) && (React.createElement(SimpleButton, { "data-name": "clear-filter", className: "twa:p-0", variant: "text", onClick: handleClear, icon: "close" }))));
|
|
89
89
|
};
|
|
@@ -20,7 +20,7 @@ export declare const ColumnFilterInput: (props: {
|
|
|
20
20
|
disabled: boolean;
|
|
21
21
|
onClear: () => void;
|
|
22
22
|
onKeyDown?: (event: React.KeyboardEventHandler<HTMLInputElement>) => void;
|
|
23
|
-
filterType?:
|
|
23
|
+
filterType?: "floating" | "default";
|
|
24
24
|
usePrimitiveInputs?: boolean;
|
|
25
25
|
columnId: string;
|
|
26
26
|
} & ColumnFilterEditorChangeProps) => React.JSX.Element;
|
|
@@ -71,7 +71,7 @@ export const ColumnFilterInput = (props) => {
|
|
|
71
71
|
}
|
|
72
72
|
};
|
|
73
73
|
if (type === 'date' && !showDatePicker) {
|
|
74
|
-
return (React.createElement(AdaptableDateInlineInput, { "data-name": "floating-filter-input", value: liveValue, disabled: disabled, onFocus: onFocus, onBlur: onBlur,
|
|
74
|
+
return (React.createElement(AdaptableDateInlineInput, { "data-name": "floating-filter-input", value: liveValue, disabled: disabled, onFocus: onFocus, onBlur: onBlur, className: "twa:border-none twa:pr-0", onKeyDownCapture: onKeyDownCapture, onChange: (value) => {
|
|
75
75
|
onChange(value);
|
|
76
76
|
setLiveValue(value);
|
|
77
77
|
} }));
|
|
@@ -100,7 +100,7 @@ export const ColumnFilterInput = (props) => {
|
|
|
100
100
|
: {}, "data-name": "floating-filter-input", onFocus: onFocus, onBlur: onBlur, disabled: disabled, type: type === 'number' ? 'text' : type,
|
|
101
101
|
// autoFocus has to be FALSE because if the input receives focus in the init phase,
|
|
102
102
|
// it may scroll the AG Grid header viewport into view and de-synchronize it (relative to the content viewport)
|
|
103
|
-
autoFocus: false, value: liveValue ?? '', onKeyDown: onKeyDown, showClearButton: false, onChange: (e) => {
|
|
103
|
+
autoFocus: false, value: liveValue ?? '', onKeyDown: onKeyDown, showClearButton: false, className: "twa:flex-1", onChange: (e) => {
|
|
104
104
|
const prevValue = `${liveValue}`;
|
|
105
105
|
const value = e.target.value;
|
|
106
106
|
if (value) {
|
|
@@ -21,7 +21,7 @@ export const ColumnFilterInputList = (props) => {
|
|
|
21
21
|
props.onPredicateChange(predicate);
|
|
22
22
|
}, 300), [props.predicate, props.columnId]);
|
|
23
23
|
if (['date[]', 'number[]', 'text[]'].includes(matchingInputs[0])) {
|
|
24
|
-
return (React.createElement(Panel, { bodyProps: {
|
|
24
|
+
return (React.createElement(Panel, { bodyProps: { className: 'twa:p-0' }, className: "twa:w-full twa:rounded-sm twa:border-none twa:p-0" },
|
|
25
25
|
React.createElement(FloatingFilterValues, { inline: false, columnId: props.columnId, disabled: props.disabled, onClear: () => {
|
|
26
26
|
props.onPredicateChange({ operator: props.predicate.operator, args: [] });
|
|
27
27
|
}, onChange: (inputs) => {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Box, Flex } from 'rebass';
|
|
3
2
|
import Panel from '../../../../components/Panel';
|
|
4
3
|
import SimpleButton from '../../../../components/SimpleButton';
|
|
4
|
+
import { Box, Flex } from '../../../../components/Flex';
|
|
5
5
|
const ColumnFilterMenuItem = ({ active, onClick, icon, label, }) => {
|
|
6
|
-
return (React.createElement(SimpleButton, {
|
|
7
|
-
React.createElement(Box, {
|
|
8
|
-
React.createElement(Box, {
|
|
6
|
+
return (React.createElement(SimpleButton, { className: "twa:p-1 twa:w-full", variant: "text", tone: active ? 'info' : 'none', onClick: onClick },
|
|
7
|
+
React.createElement(Box, { className: "twa:mr-2" }, icon),
|
|
8
|
+
React.createElement(Box, { className: "twa:text-2" }, label)));
|
|
9
9
|
};
|
|
10
10
|
export const ColumnFilterMenu = (props) => {
|
|
11
|
-
return (React.createElement(Panel, {
|
|
12
|
-
return (React.createElement(Flex, {
|
|
11
|
+
return (React.createElement(Panel, { className: "twa:min-w-max" }, props.predicateDefs?.map((predicateDef, index) => {
|
|
12
|
+
return (React.createElement(Flex, { className: "twa:mb-1", key: index, onMouseDownCapture: (e) => {
|
|
13
13
|
e.stopPropagation();
|
|
14
14
|
} },
|
|
15
15
|
React.createElement(ColumnFilterMenuItem, { onClick: () => props.onPredicateChange({ operator: predicateDef.operator, args: [] }), icon: predicateDef.icon, label: predicateDef.label, active: props.predicate.operator === predicateDef.operator })));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { QlLogicalOperator, QlPredicate } from '../../../parser/src/predicate';
|
|
2
2
|
import * as LayoutRedux from '../../../Redux/ActionsReducers/LayoutRedux';
|
|
3
3
|
import { AdaptablePredicate, ColumnFilter } from '../../../types';
|
|
4
|
-
export declare const useAdaptableFilterWrapper: (columnId: string, filterComponent:
|
|
4
|
+
export declare const useAdaptableFilterWrapper: (columnId: string, filterComponent: "FilterBar" | "FilterForm", handleOnChangeOverride?: (columnFilter: ColumnFilter) => void) => {
|
|
5
5
|
qlPredicate: QlPredicate;
|
|
6
6
|
qlPredicateDefs: import("@adaptabletools/adaptable/src/parser/src/predicate/types").QlPredicateDef[];
|
|
7
7
|
columnFilter: ColumnFilter;
|
|
@@ -14,7 +14,15 @@ export const useAdaptableFilterWrapper = (columnId, filterComponent, handleOnCha
|
|
|
14
14
|
const column = api.columnApi.getColumnWithColumnId(columnId);
|
|
15
15
|
const columnFilterOptions = api.optionsApi.getFilterOptions().columnFilterOptions;
|
|
16
16
|
const qlPredicateDefs = React.useMemo(() => {
|
|
17
|
-
|
|
17
|
+
// this is NOT the ideal place to do this, but it is what it is: autoGroupCol should NOT have the 'Blanks'/'NonBlanks' predicates
|
|
18
|
+
const predicateDefs = api.filterApi.columnFilterApi
|
|
19
|
+
.getFilterPredicateDefsForColumn(column)
|
|
20
|
+
.filter((predDef) => {
|
|
21
|
+
if (api.columnApi.isAutoRowGroupColumnForSingle(column.columnId)) {
|
|
22
|
+
return predDef.id !== 'Blanks' && predDef.id !== 'NonBlanks';
|
|
23
|
+
}
|
|
24
|
+
return true;
|
|
25
|
+
});
|
|
18
26
|
const qlDataType = mapColumnDataTypeToExpressionFunctionType(columnType);
|
|
19
27
|
return predicateDefs.map((predDef) => mapAdaptablePredicateDefToQlPredicateDef(predDef, qlDataType));
|
|
20
28
|
}, [columnId]);
|
|
@@ -15,7 +15,5 @@ export const NewColumnSelector = ({ allowReorder = true, ...props }) => {
|
|
|
15
15
|
else {
|
|
16
16
|
onChange(colIds);
|
|
17
17
|
}
|
|
18
|
-
}, toIdentifier: (c) => c.columnId, toLabel: (c) => c.friendlyName
|
|
19
|
-
? () => null
|
|
20
|
-
: (count) => (count > 1 ? `You selected ${count} columns.` : 'You selected one column.') }));
|
|
18
|
+
}, toIdentifier: (c) => c.columnId, toLabel: (c) => c.friendlyName }));
|
|
21
19
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Box, Flex } from 'rebass';
|
|
3
|
-
import DropdownButton from '../../../../components/DropdownButton';
|
|
4
2
|
import FormLayout, { FormRow } from '../../../../components/FormLayout';
|
|
5
3
|
import SimpleButton from '../../../../components/SimpleButton';
|
|
6
4
|
import { useAdaptable } from '../../../AdaptableContext';
|
|
7
5
|
import { PredicateEditor } from '../../PredicateEditor/PredicateEditor';
|
|
6
|
+
import { Box, Flex } from '../../../../components/Flex';
|
|
7
|
+
import { Select } from '../../../../components/Select';
|
|
8
8
|
export const EntityRulePredicateEditor = (props) => {
|
|
9
9
|
const { api } = useAdaptable();
|
|
10
10
|
const { predicate } = props;
|
|
@@ -55,12 +55,10 @@ export const EntityRulePredicateEditor = (props) => {
|
|
|
55
55
|
return preparedPredicates;
|
|
56
56
|
}, [props.predicate]);
|
|
57
57
|
const columnIdPredicateScopeEnabled = Boolean(props.columnPredicateEnabled);
|
|
58
|
-
const
|
|
58
|
+
const selectedColumn = allColumns.find((col) => col.value === predicate?.ColumnId);
|
|
59
59
|
const columnOptions = allColumns.map((col) => ({
|
|
60
60
|
label: col.label,
|
|
61
|
-
|
|
62
|
-
handlePredicateChange({ PredicateId: null, ColumnId: col.value, Inputs: [] });
|
|
63
|
-
},
|
|
61
|
+
value: col.value,
|
|
64
62
|
}));
|
|
65
63
|
// use global scope or custom scope
|
|
66
64
|
let predicateColumnId = null;
|
|
@@ -70,13 +68,15 @@ export const EntityRulePredicateEditor = (props) => {
|
|
|
70
68
|
else if ('ColumnIds' in props.data.Scope && props.data.Scope?.ColumnIds?.[0]) {
|
|
71
69
|
predicateColumnId = props.data.Scope?.ColumnIds?.[0];
|
|
72
70
|
}
|
|
73
|
-
return (React.createElement(Flex, { className: "ab-EntityRulePredicateEditor
|
|
74
|
-
React.createElement(Box, {
|
|
71
|
+
return (React.createElement(Flex, { className: "ab-EntityRulePredicateEditor twa:p-3 twa:mb-3" },
|
|
72
|
+
React.createElement(Box, { className: "twa:flex-1" },
|
|
75
73
|
React.createElement(FormLayout, null,
|
|
76
74
|
columnIdPredicateScopeEnabled && (React.createElement(FormRow, { label: "Column" },
|
|
77
|
-
React.createElement(
|
|
75
|
+
React.createElement(Select, { placeholder: "Select Column", options: columnOptions, value: selectedColumn?.value, onChange: (value) => {
|
|
76
|
+
handlePredicateChange({ PredicateId: null, ColumnId: value, Inputs: [] });
|
|
77
|
+
} }))),
|
|
78
78
|
React.createElement(FormRow, { label: "Predicate" },
|
|
79
79
|
React.createElement(PredicateEditor, { columnId: predicateColumnId, predicateDefs: predicateDefs, predicate: predicate, onChange: handlePredicateChange, onClear: handleClear })))),
|
|
80
80
|
React.createElement(Box, null,
|
|
81
|
-
React.createElement(SimpleButton, { disabled: !predicate,
|
|
81
|
+
React.createElement(SimpleButton, { disabled: !predicate, className: "twa:ml-2 twa:h-input", onClick: handleClear, icon: "delete" }))));
|
|
82
82
|
};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Box, Flex, Text } from 'rebass';
|
|
3
2
|
import HelpBlock from '../../../../components/HelpBlock';
|
|
4
3
|
import { useAdaptable } from '../../../AdaptableContext';
|
|
5
4
|
import { ButtonInfo } from '../../Buttons/ButtonInfo';
|
|
@@ -9,6 +8,7 @@ import { Tag } from '../../../../components/Tag';
|
|
|
9
8
|
import { EntityRulePredicateEditor } from './EntityRulePredicateEditor';
|
|
10
9
|
import Radio from '../../../../components/Radio';
|
|
11
10
|
import { getScopeViewItems } from '../../../../Utilities/getScopeViewItems';
|
|
11
|
+
import { Box, Flex } from '../../../../components/Flex';
|
|
12
12
|
export const EntityRulePredicatesEditor = (props) => {
|
|
13
13
|
const { api } = useAdaptable();
|
|
14
14
|
const showDocumentationLinks = api.internalApi.isDocumentationLinksDisplayed();
|
|
@@ -57,15 +57,14 @@ export const EntityRulePredicatesEditor = (props) => {
|
|
|
57
57
|
const scopeString = getScopeViewItems(props.data.Scope, api).values.join(', ');
|
|
58
58
|
const enablePredicateColumnId = props.enablePredicateColumnId ?? true;
|
|
59
59
|
return (React.createElement(React.Fragment, null,
|
|
60
|
-
React.createElement(Flex, {
|
|
61
|
-
React.createElement(
|
|
60
|
+
React.createElement(Flex, { justifyContent: "space-between", className: "twa:mb-2" },
|
|
61
|
+
React.createElement(Box, { className: "twa:text-2 twa:mb-2" }, props.descriptions.selectPredicate),
|
|
62
62
|
React.createElement(SimpleButton, { disabled: !props.data.Rule?.Predicates?.length, onClick: handleAddNewPredicate, icon: "plus", variant: "raised" }, "Add Predicate")),
|
|
63
|
-
enablePredicateColumnId && (React.createElement(Flex, { className: "ab-EntityRulePredicateEditor-ScopeTypeSelector
|
|
64
|
-
React.createElement(
|
|
65
|
-
React.createElement(Radio, { "data-name": "entity-scope", onClick: () => handlePredicateScopeTypeChange(false),
|
|
66
|
-
"Active Column:",
|
|
67
|
-
' ',
|
|
68
|
-
React.createElement(Tag, { ml: 1, mr: 1 }, scopeString || 'Not Defined'),
|
|
63
|
+
enablePredicateColumnId && (React.createElement(Flex, { className: "ab-EntityRulePredicateEditor-ScopeTypeSelector twa:p-2 twa:mb-2", flexDirection: "column" },
|
|
64
|
+
React.createElement(Box, { className: "twa:mb-2" }, "Create Predicate Rule(s) using"),
|
|
65
|
+
React.createElement(Radio, { "data-name": "entity-scope", onClick: () => handlePredicateScopeTypeChange(false), className: "twa:mr-3", checked: !columnPredicateEnabled },
|
|
66
|
+
"Active Column: ",
|
|
67
|
+
React.createElement(Tag, { className: "twa:mx-1" }, scopeString || 'Not Defined'),
|
|
69
68
|
' '),
|
|
70
69
|
React.createElement(Radio, { "data-name": "column-scope", onClick: () => handlePredicateScopeTypeChange(true), checked: columnPredicateEnabled }, "Selected Columns (overriding Active Column)"))),
|
|
71
70
|
(props.data.Rule?.Predicates?.length ? props.data.Rule.Predicates : [null]).map((predicate, index) => {
|
|
@@ -76,13 +75,10 @@ export const EntityRulePredicatesEditor = (props) => {
|
|
|
76
75
|
}
|
|
77
76
|
return (React.createElement(React.Fragment, { key: `${index}-${predicate?.PredicateId}` },
|
|
78
77
|
index > 0 && (React.createElement(Box, null,
|
|
79
|
-
React.createElement(Tag, {
|
|
78
|
+
React.createElement(Tag, { className: "twa:mb-3" }, "AND"))),
|
|
80
79
|
React.createElement(EntityRulePredicateEditor, { data: props.data, predicate: predicate, onChange: props.onChange, predicateDefs: editorPredicateDefs, getPredicateDefsForColId: props.getPredicateDefsForColId, columnPredicateEnabled: columnPredicateEnabled })));
|
|
81
80
|
}),
|
|
82
|
-
showDocumentationLinks && (React.createElement(HelpBlock, { "data-name": "query-documentation",
|
|
83
|
-
|
|
84
|
-
padding: 0,
|
|
85
|
-
} },
|
|
86
|
-
React.createElement(ButtonInfo, { mr: 2, onClick: () => window.open(PredicateDocsLink, '_blank') }),
|
|
81
|
+
showDocumentationLinks && (React.createElement(HelpBlock, { "data-name": "query-documentation", className: "twa:mt-3 twa:mb-2 twa:p-0 twa:text-3" },
|
|
82
|
+
React.createElement(ButtonInfo, { className: "twa:mr-2", onClick: () => window.open(PredicateDocsLink, '_blank') }),
|
|
87
83
|
"See Predicate documentation for more details and examples"))));
|
|
88
84
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { FlexProps } from 'rebass';
|
|
3
2
|
import type { AdaptableColumnPredicate, AdaptableModule, AdaptablePredicateDef, ColumnScope } from '../../../types';
|
|
4
3
|
import type { XOR } from '../../../Utilities/Extensions/TypeExtensions';
|
|
5
4
|
import { AdaptableQuery } from '../../../AdaptableState/Common/AdaptableQuery';
|
|
5
|
+
import { FlexProps } from '../../../components/Flex';
|
|
6
6
|
export type RuleType = XOR<{
|
|
7
7
|
Predicates: AdaptableColumnPredicate[];
|
|
8
8
|
}, AdaptableQuery>;
|
|
@@ -26,7 +26,10 @@ export type EntityRulesEditorProps<T> = {
|
|
|
26
26
|
useObservableQuery: React.ReactNode;
|
|
27
27
|
useAggregationQuery: React.ReactNode;
|
|
28
28
|
};
|
|
29
|
-
flexProps?: FlexProps
|
|
29
|
+
flexProps?: FlexProps & {
|
|
30
|
+
className?: string;
|
|
31
|
+
style?: React.CSSProperties;
|
|
32
|
+
};
|
|
30
33
|
showQueryBuilder?: boolean;
|
|
31
34
|
};
|
|
32
35
|
export declare const EntityRulesSummary: <T extends {
|