@adaptabletools/adaptable-cjs 21.2.1 → 22.0.0-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +0 -1
- package/src/AdaptableOptions/DefaultAdaptableOptions.js +2 -2
- package/src/AdaptableState/ChartingState.d.ts +1 -1
- package/src/AdaptableState/Common/AdaptableAlert.d.ts +2 -2
- package/src/AdaptableState/Common/AdaptableColumn.js +2 -2
- package/src/AdaptableState/Common/AdaptableForm.js +1 -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/Implementation/ColumnApiImpl.d.ts +3 -0
- package/src/Api/Implementation/ColumnApiImpl.js +22 -10
- package/src/Api/Implementation/CustomSortApiImpl.d.ts +2 -1
- package/src/Api/Implementation/CustomSortApiImpl.js +5 -1
- 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/LayoutHelpers.js +2 -2
- package/src/Api/Implementation/PredicateApiImpl.d.ts +1 -0
- package/src/Api/Implementation/PredicateApiImpl.js +17 -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 -0
- package/src/Api/Internal/ColumnInternalApi.js +2 -2
- package/src/Api/Internal/LayoutInternalApi.d.ts +6 -0
- package/src/Api/Internal/LayoutInternalApi.js +34 -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/ActionsReducers/utils.js +3 -4
- package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +4 -2
- package/src/Redux/Store/AdaptableReduxMerger.js +5 -5
- package/src/Redux/Store/buildAdaptableStateFunctionConfig.js +1 -2
- 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/ExpressionFunctions/deepMap.js +2 -2
- package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.d.ts +4 -4
- package/src/Utilities/ExpressionFunctions/groupingMap.js +1 -2
- package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +1 -2
- package/src/Utilities/Extensions/ArrayExtensions.js +37 -37
- package/src/Utilities/Extensions/EnumExtensions.js +3 -3
- package/src/Utilities/Extensions/NumberExtensions.js +5 -5
- package/src/Utilities/Extensions/ObjectExtensions.js +3 -3
- package/src/Utilities/Extensions/StringExtensions.d.ts +1 -1
- package/src/Utilities/Extensions/StringExtensions.js +20 -20
- package/src/Utilities/Helpers/AdaptableHelper.js +8 -8
- package/src/Utilities/Helpers/FormatHelper.js +3 -4
- package/src/Utilities/Helpers/Helper.js +18 -18
- package/src/Utilities/Helpers/PreviewHelper.js +5 -5
- package/src/Utilities/Helpers/StyleHelper.d.ts +1 -1
- package/src/Utilities/Hooks/useAdaptableColumn.js +1 -2
- package/src/Utilities/Hooks/useAdaptableState.js +1 -2
- package/src/Utilities/ObjectFactory.js +40 -40
- package/src/Utilities/Services/Interface/IAlertService.d.ts +2 -2
- package/src/Utilities/Services/LicenseService/shouldLogThankYouMessage.js +1 -2
- package/src/Utilities/adaptableOverrideCheck.js +2 -3
- package/src/Utilities/createAgStatusPanelComponent.d.ts +1 -1
- package/src/Utilities/getObjectTagsViewItems.js +1 -1
- package/src/Utilities/license/hashing.js +1 -1
- package/src/Utilities/runIfNotResolvedIn.d.ts +1 -1
- package/src/Utilities/sortColumnStateForVisibleColumns.js +1 -2
- package/src/Utilities/updateSingleToMultiplePredicates.js +1 -2
- package/src/Utilities/waitForTimeout.js +1 -2
- package/src/View/AdaptableComputedCSSVarsContext.js +6 -1
- package/src/View/AdaptablePopover/index.d.ts +1 -1
- package/src/View/AdaptablePopover/index.js +5 -5
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +8 -9
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +9 -8
- 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 +5 -5
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +6 -6
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.js +2 -2
- package/src/View/AdaptableWizardView/Wizard.js +2 -2
- package/src/View/AdaptableWizardView/index.js +1 -4
- package/src/View/Alert/ActiveAlertsPanelItemLabel.js +3 -3
- package/src/View/Alert/AlertStatusSubPanel.js +1 -1
- package/src/View/Alert/AlertViewPanel.js +4 -4
- package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +3 -20
- package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +17 -15
- package/src/View/Alert/Wizard/AlertButtonsEditor.js +29 -26
- 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 +3 -3
- package/src/View/Alert/Wizard/AlertWizard.js +8 -8
- package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +13 -10
- package/src/View/BulkUpdate/BulkUpdatePopup.js +11 -11
- package/src/View/BulkUpdate/BulkUpdateViewPanel.js +6 -6
- package/src/View/CalculatedColumn/CalculatedColumnSummary.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +11 -11
- 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 +6 -7
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.js +2 -2
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.d.ts +0 -2
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +9 -15
- package/src/View/CalculatedColumn/Wizard/calculatedColumnTypes.d.ts +2 -0
- package/src/View/CalculatedColumn/Wizard/calculatedColumnTypes.js +9 -0
- package/src/View/CellSummary/CellSummaryPopup.js +1 -1
- package/src/View/CellSummary/CellSummaryViewPanel.js +6 -6
- package/src/View/Charting/ChartingStatusBarPopover.js +5 -5
- package/src/View/Charting/ChartingViewPanel.js +9 -9
- 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 +15 -20
- package/src/View/ColumnInfo/ColumnInfoPopup.js +2 -2
- package/src/View/Comments/CommentsEditor.js +16 -19
- package/src/View/Comments/CommentsPopup.js +7 -7
- 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 +14 -14
- 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 +5 -6
- 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 +29 -26
- package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +7 -7
- package/src/View/Components/ColumnFilter/FloatingFilter.js +7 -7
- 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/components/FloatingFilterValues.js +2 -2
- 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 +11 -11
- package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +12 -16
- package/src/View/Components/EntityRulesEditor/index.d.ts +5 -2
- package/src/View/Components/EntityRulesEditor/index.js +12 -11
- 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 +5 -4
- 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 +26 -26
- 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 +8 -7
- package/src/View/Components/Panels/PanelWithImage.d.ts +2 -3
- package/src/View/Components/Panels/PanelWithImage.js +11 -13
- 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 +4 -7
- 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 +9 -10
- 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 +8 -13
- package/src/View/Components/Popups/AdaptablePopupConfirmation.js +6 -6
- package/src/View/Components/Popups/AdaptablePopupPrompt.js +8 -8
- package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +11 -13
- package/src/View/Components/Popups/FormPopups/FormPopups.js +3 -3
- package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +2 -2
- 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 +9 -9
- package/src/View/Components/PreviewResultsPanel.d.ts +1 -0
- package/src/View/Components/PreviewResultsPanel.js +6 -13
- package/src/View/Components/RangesComponent.js +23 -23
- package/src/View/Components/ReorderDraggable/index.d.ts +2 -0
- package/src/View/Components/ReorderDraggable/index.js +9 -9
- package/src/View/Components/Selectors/BulkUpdateValueSelector.js +5 -8
- 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 +3 -2
- 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 +40 -64
- package/src/View/Components/WizardSummaryPage.js +1 -1
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +2 -2
- package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +3 -6
- package/src/View/CustomSort/Wizard/CustomSortWizard.js +5 -5
- package/src/View/Dashboard/Dashboard.js +5 -5
- package/src/View/Dashboard/DashboardPopup.js +27 -23
- package/src/View/Dashboard/DashboardViewPanel.js +5 -5
- package/src/View/Dashboard/PinnedDashboard.js +4 -4
- package/src/View/Dashboard/PinnedToolbarsSelector.js +3 -2
- package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +12 -12
- package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +9 -9
- package/src/View/DataImport/DataImportPopup.js +3 -3
- 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 +5 -5
- 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 +3 -3
- 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 +2 -2
- 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 +5 -5
- 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 +6 -6
- package/src/View/FlashingCell/FlashingCellStyle.d.ts +2 -2
- package/src/View/FlashingCell/FlashingCellStyle.js +5 -5
- package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +2 -2
- package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +12 -12
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.d.ts +2 -2
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +5 -5
- 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 +63 -68
- package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +2 -3
- package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +0 -4
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +29 -29
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +4 -4
- package/src/View/FormatColumn/Wizard/FormatColumnTargetWizardSection.js +3 -3
- package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +9 -10
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +12 -12
- 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 +47 -0
- package/src/View/GridFilter/GridFilterViewPanel.js +16 -23
- package/src/View/GridFilter/NamedQuerySelector.js +9 -9
- 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 +5 -4
- 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 +2 -2
- package/src/View/Layout/LayoutViewPanel.d.ts +3 -3
- package/src/View/Layout/LayoutViewPanel.js +4 -4
- package/src/View/Layout/TransposedPopup.js +5 -5
- package/src/View/Layout/Wizard/LayoutWizard.js +18 -18
- package/src/View/Layout/Wizard/sections/AggregationsSection.js +9 -11
- package/src/View/Layout/Wizard/sections/ColumnsSection.js +214 -139
- 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 +20 -23
- package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +4 -6
- package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +4 -6
- package/src/View/Layout/Wizard/sections/RowGroupingSection.js +8 -10
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +16 -18
- package/src/View/Layout/Wizard/sections/SettingsSection.js +11 -11
- package/src/View/Layout/Wizard/sections/SortSection.js +6 -8
- 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 +4 -5
- package/src/View/Note/NoteEditor.js +5 -1
- package/src/View/PlusMinus/Wizard/PlusMinusRuleWizardSection.js +2 -3
- package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +6 -6
- 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 +5 -5
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.js +6 -6
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.js +3 -3
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +5 -5
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.js +6 -6
- package/src/View/Schedule/Wizard/ScheduleWizard.js +5 -5
- package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +9 -12
- 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 +4 -4
- package/src/View/SpecialColumnSettingsWizardStep.js +5 -5
- package/src/View/StateManagement/StateManagementPopup.js +12 -12
- package/src/View/StateManagement/StateManagementViewPanel.js +3 -3
- package/src/View/StateManagement/handleExportState.d.ts +1 -1
- package/src/View/StatusBar/AdaptableStatusBar.js +2 -2
- 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 +59 -56
- 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 +19 -19
- 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 +3 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgeSettings.js +5 -7
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +15 -16
- package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +4 -4
- package/src/View/SystemStatus/SystemStatusEntityRow.js +4 -4
- 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 +3 -3
- package/src/View/TeamSharing/SharedEntityDependencies.js +5 -5
- 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 +2 -3
- package/src/View/Theme/ThemePopup.d.ts +1 -1
- package/src/View/Theme/ThemePopup.js +4 -4
- package/src/View/Theme/ThemeStatusbar.js +2 -2
- package/src/View/Theme/VariantSelector.js +1 -1
- package/src/View/UIHelper.d.ts +1 -1
- package/src/View/UIHelper.js +29 -29
- 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 +16 -18
- package/src/View/Wizard/OnePageWizards.d.ts +10 -4
- package/src/View/Wizard/OnePageWizards.js +52 -66
- package/src/View/Wizard/TypeRadio.js +4 -4
- 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 +13 -4
- package/src/agGrid/AdaptableAgGrid.js +155 -23
- package/src/agGrid/AdaptableFilterHandler.d.ts +5 -6
- package/src/agGrid/AdaptableFilterHandler.js +13 -19
- package/src/agGrid/AgGridAdapter.d.ts +2 -0
- package/src/agGrid/AgGridAdapter.js +29 -15
- package/src/agGrid/AgGridColumnAdapter.d.ts +6 -1
- package/src/agGrid/AgGridColumnAdapter.js +28 -7
- 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/AdaptableNumberEditor/index.js +2 -2
- package/src/agGrid/editors/AdaptablePercentageEditor/InternalAdaptablePercentageEditor.js +1 -5
- package/src/agGrid/index.js +2 -4
- package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +12 -12
- package/src/components/Card/index.d.ts +25 -0
- package/src/components/Card/index.js +49 -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 +2 -3
- package/src/components/Dashboard/DashboardTab.js +1 -2
- package/src/components/Dashboard/DashboardToolbar.js +6 -8
- package/src/components/Datepicker/index.d.ts +2 -2
- package/src/components/Datepicker/index.js +10 -9
- package/src/components/Dialog/index.d.ts +8 -2
- package/src/components/Dialog/index.js +8 -8
- 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 +48 -29
- package/src/components/DragAndDropContext/UnusedPanel.js +8 -17
- 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 +67 -51
- 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 +12 -14
- 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 +11 -11
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.d.ts +1 -1
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +13 -13
- package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +11 -16
- package/src/components/ExpressionEditor/index.d.ts +1 -0
- package/src/components/ExpressionEditor/index.js +32 -37
- 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 +7 -7
- package/src/components/Flex.d.ts +15 -1
- package/src/components/Flex.js +42 -3
- package/src/components/FlexWithFooter.d.ts +3 -2
- package/src/components/FlexWithFooter.js +5 -5
- package/src/components/FormLayout/index.d.ts +5 -1
- package/src/components/FormLayout/index.js +3 -3
- package/src/components/HelpBlock/index.d.ts +2 -2
- package/src/components/HelpBlock/index.js +5 -4
- package/src/components/IconSelector/IconSelector.js +11 -11
- package/src/components/InfiniteTable/index.js +1 -2
- 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 +5 -5
- package/src/components/Radio/index.d.ts +25 -3
- package/src/components/Radio/index.js +19 -21
- 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 +3 -3
- 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 +13 -4
- package/src/components/Tag/index.d.ts +1 -1
- package/src/components/Tag/index.js +3 -1
- package/src/components/Textarea/index.d.ts +5 -1
- package/src/components/Textarea/index.js +5 -4
- package/src/components/Toggle/Toggle.js +48 -3
- package/src/components/Toggle/ToggleGroup.d.ts +7 -0
- package/src/components/Toggle/ToggleGroup.js +58 -3
- package/src/components/ToggleButton/index.d.ts +2 -2
- package/src/components/ToggleButton/index.js +25 -7
- package/src/components/Tree/TreeDropdown/index.js +13 -19
- package/src/components/Tree/TreeList/index.js +6 -11
- 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 +8 -0
- package/src/components/twUtils.d.ts +7 -0
- package/src/components/twUtils.js +16 -0
- package/src/components/utils/contains.js +1 -1
- package/src/components/utils/useDraggable.d.ts +0 -1
- package/src/components/utils/useDraggable.js +1 -1
- package/src/components/utils/usePropState.js +1 -1
- package/src/components/utils/useSelectionRange.js +1 -2
- package/src/devTools/index.d.ts +23 -23
- package/src/devTools/index.js +3 -3
- 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/destructurePivotColumnId.js +1 -2
- package/src/layout-manager/src/index.d.ts +6 -0
- package/src/layout-manager/src/index.js +22 -2
- package/src/layout-manager/src/isLayoutEqual.js +4 -4
- package/src/layout-manager/src/isPivotAggTotalColumn.js +1 -2
- package/src/layout-manager/src/isPivotColumnTotal.js +1 -2
- package/src/layout-manager/src/isPivotGrandTotal.js +1 -2
- package/src/layout-manager/src/normalizeLayoutModel.js +4 -4
- package/src/layout-manager/src/simplifyLayoutModel.js +3 -4
- package/src/layout-manager/src/sortColumnIdsByOrder.js +2 -3
- package/src/migration/VersionUpgrade20.js +8 -7
- package/src/parser/src/evaluator.js +1 -2
- package/src/parser/src/index.js +5 -5
- package/src/parser/src/predicate/mapExpressionToQlPredicate.js +2 -2
- package/src/parser/src/predicate/mapQlPredicateToExpression.js +2 -3
- package/src/parser/src/tokenizer.js +1 -2
- package/src/parser/src/utils.js +3 -4
- package/src/twMerge.d.ts +1 -0
- package/src/twMerge.js +14 -0
- package/themes/dark.css +35 -9
- package/themes/light.css +0 -2
- package/tsconfig.cjs.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 -11
- package/src/View/Alert/AlertsPanel.d.ts +0 -14
- package/src/View/Alert/AlertsPanel.js +0 -43
- package/src/View/Alert/Wizard/AlertSelectQueryWizard.d.ts +0 -19
- package/src/View/Alert/Wizard/AlertSelectQueryWizard.js +0 -59
- package/src/View/Components/FilterForm/ListBoxMenu.d.ts +0 -14
- package/src/View/Components/FilterForm/ListBoxMenu.js +0 -33
- package/src/View/Components/ListBox/DualListBoxEditor.d.ts +0 -22
- package/src/View/Components/ListBox/DualListBoxEditor.js +0 -520
- package/src/View/Components/ListBox/ListBoxFilterSortComponent.d.ts +0 -13
- package/src/View/Components/ListBox/ListBoxFilterSortComponent.js +0 -31
- package/src/View/CustomSort/Wizard/CustomSortSummaryWizard.d.ts +0 -15
- package/src/View/CustomSort/Wizard/CustomSortSummaryWizard.js +0 -36
- package/src/View/Layout/Wizard/Components/ColumnLabels.d.ts +0 -9
- package/src/View/Layout/Wizard/Components/ColumnLabels.js +0 -57
- package/src/View/Wizard/AdaptableWizard.d.ts +0 -56
- package/src/View/Wizard/AdaptableWizard.js +0 -174
- package/src/components/ContainerProps.d.ts +0 -30
- package/src/components/ContainerProps.js +0 -2
- package/src/components/EllipsisContainer/index.d.ts +0 -13
- package/src/components/EllipsisContainer/index.js +0 -105
- package/src/components/List/GridList/index.d.ts +0 -10
- package/src/components/List/GridList/index.js +0 -26
- package/src/components/List/ListGroup/index.d.ts +0 -6
- package/src/components/List/ListGroup/index.js +0 -12
- package/src/components/List/ListGroupItem/index.d.ts +0 -11
- package/src/components/List/ListGroupItem/index.js +0 -19
- package/src/components/utils/useTheme.d.ts +0 -32
- package/src/components/utils/useTheme.js +0 -5
- package/src/theme.d.ts +0 -32
- package/src/theme.js +0 -51
- package/themes/dark.css.map +0 -1
- package/themes/light.css.map +0 -1
|
@@ -106,6 +106,10 @@ const AgGridModulesAdapter_1 = require("./AgGridModulesAdapter");
|
|
|
106
106
|
const devTools_1 = require("../devTools");
|
|
107
107
|
const infinite_react_1 = require("@infinite-table/infinite-react");
|
|
108
108
|
const FormatHelper_1 = require("../Utilities/Helpers/FormatHelper");
|
|
109
|
+
const PredicateApiImpl_1 = require("../Api/Implementation/PredicateApiImpl");
|
|
110
|
+
const AgGridFilterAdapter_1 = require("./AgGridFilterAdapter");
|
|
111
|
+
const AdaptableFilterHandler_1 = require("./AdaptableFilterHandler");
|
|
112
|
+
const AgGridFloatingFilterAdapter_1 = require("./AgGridFloatingFilterAdapter");
|
|
109
113
|
const LocalEventService_Prototype = ag_grid_enterprise_1.LocalEventService.prototype;
|
|
110
114
|
const LocalEventService_dispatchEvent = LocalEventService_Prototype.dispatchEvent;
|
|
111
115
|
LocalEventService_Prototype.dispatchEvent = function (event) {
|
|
@@ -450,10 +454,14 @@ class AdaptableAgGrid {
|
|
|
450
454
|
this.api.themeApi.applyCurrentTheme();
|
|
451
455
|
this.validatePrimaryKey();
|
|
452
456
|
this.checkShouldClearExistingFiltersOrSearches();
|
|
453
|
-
// FIXME AFL FILTER: talk with Radu: should ColumnFilters still be ignored?!
|
|
454
|
-
// see layoutModel.Ignore_ColumnFilters
|
|
455
457
|
// initial filter model
|
|
456
|
-
this.applyFiltering();
|
|
458
|
+
const filteringApplied = this.applyFiltering();
|
|
459
|
+
// We may need to re-apply sort if there are ColumnSorts for columns with CustomSort defined
|
|
460
|
+
// This is required because AG Grid wasn't aware of the CustomSort when applying sorting initially
|
|
461
|
+
// this is not required when filtering was applied because filtering also triggers a sort refresh internally
|
|
462
|
+
if (!filteringApplied) {
|
|
463
|
+
this.refreshInitialSortIfNeeded();
|
|
464
|
+
}
|
|
457
465
|
// apply quick search if there is one
|
|
458
466
|
// yes, we could have put this on the gridOptions.findSearchValue
|
|
459
467
|
// but we need to wait for setupColumns to run first so as to correctly
|
|
@@ -625,26 +633,67 @@ You need to define at least one Layout!`);
|
|
|
625
633
|
normalize: true,
|
|
626
634
|
});
|
|
627
635
|
}
|
|
636
|
+
/**
|
|
637
|
+
* Returns TRUE if filtering was applied, FALSE otherwise
|
|
638
|
+
* This is important in the INIT phase because applying filtering will automatically refresh AG Grids columnState,
|
|
639
|
+
* implicitly refreshing the sorting state too (hence we don't need to apply sorting separately)
|
|
640
|
+
*/
|
|
628
641
|
applyFiltering(config) {
|
|
642
|
+
let filteringApplied = false;
|
|
629
643
|
// default updateColumnFilterModel to TRUE, if not provided
|
|
630
644
|
const updateColumnFilterModel = config?.updateColumnFilterModel ?? true;
|
|
631
645
|
const agGridApi = this.agGridAdapter.getAgGridApi();
|
|
632
646
|
if (updateColumnFilterModel) {
|
|
633
647
|
const columnFilters = this.api.filterApi.columnFilterApi
|
|
634
648
|
.getActiveColumnFilters()
|
|
635
|
-
//
|
|
649
|
+
// we need this additional filter because 'getActiveColumnFilters' checks only for suspended while 'isColumnFilterActive' also checkss for COMPLETE filters
|
|
636
650
|
.filter((columnFilter) => this.api.filterApi.columnFilterApi.isColumnFilterActive(columnFilter));
|
|
637
651
|
const filterModel = {};
|
|
638
652
|
columnFilters.forEach((columnFilter) => {
|
|
639
653
|
filterModel[columnFilter.ColumnId] = columnFilter;
|
|
640
654
|
});
|
|
641
655
|
agGridApi.setFilterModel(filterModel);
|
|
656
|
+
filteringApplied = Object.keys(filterModel).length > 0;
|
|
642
657
|
}
|
|
643
658
|
// FIXME AFL FILTER why is this needed???
|
|
644
659
|
this.refreshSelectedCellsState();
|
|
645
660
|
this.refreshSelectedRowsState();
|
|
646
|
-
|
|
661
|
+
// FIXME AFL: this is temporary, will be replaced with v22's new autoCol filtering
|
|
662
|
+
const currentPivotLayoutHasAutoCols = this.api.layoutApi.isCurrentLayoutPivot() &&
|
|
663
|
+
!!this.api.layoutApi.getCurrentRowGroupsColumnIds()?.length;
|
|
664
|
+
// agGridApi.setFilterModel() already triggered onFilterChanged(), so we skip it if updateColumnFilterModel is TRUE
|
|
665
|
+
if (!filteringApplied || currentPivotLayoutHasAutoCols) {
|
|
666
|
+
agGridApi.onFilterChanged();
|
|
667
|
+
filteringApplied = true;
|
|
668
|
+
}
|
|
647
669
|
this._emit('AdapTableFiltersApplied');
|
|
670
|
+
return filteringApplied;
|
|
671
|
+
}
|
|
672
|
+
/**
|
|
673
|
+
* Checks if the current layout has ColumnSorts for columns that have CustomSort defined
|
|
674
|
+
* (either via initialState CustomSorts or via customSortComparers option) and refreshes the sort if needed.
|
|
675
|
+
*/
|
|
676
|
+
refreshInitialSortIfNeeded() {
|
|
677
|
+
const currentLayout = this.api.layoutApi.getCurrentLayout();
|
|
678
|
+
const columnSorts = currentLayout?.ColumnSorts;
|
|
679
|
+
if (!columnSorts || columnSorts.length === 0) {
|
|
680
|
+
return;
|
|
681
|
+
}
|
|
682
|
+
const hasCustomSortForSortedColumn = columnSorts.some((columnSort) => {
|
|
683
|
+
// Check if there's a CustomSort defined in state for this column
|
|
684
|
+
const customSort = this.api.customSortApi.getCustomSortForColumn(columnSort.ColumnId);
|
|
685
|
+
if (customSort && !customSort.IsSuspended) {
|
|
686
|
+
return true;
|
|
687
|
+
}
|
|
688
|
+
// Check if there's a customSortComparer defined in options for this column
|
|
689
|
+
if (this.api.customSortApi.internalApi.columnHasCustomSortComparer(columnSort.ColumnId)) {
|
|
690
|
+
return true;
|
|
691
|
+
}
|
|
692
|
+
return false;
|
|
693
|
+
});
|
|
694
|
+
if (hasCustomSortForSortedColumn) {
|
|
695
|
+
this.layoutManager.refreshSort();
|
|
696
|
+
}
|
|
648
697
|
}
|
|
649
698
|
showQuickFilter() {
|
|
650
699
|
const height = this.api.optionsApi.getFilterOptions().columnFilterOptions.quickFilterHeight;
|
|
@@ -725,6 +774,92 @@ You need to define at least one Layout!`);
|
|
|
725
774
|
});
|
|
726
775
|
return defaultColGroupDef;
|
|
727
776
|
});
|
|
777
|
+
/**
|
|
778
|
+
* `autoGroupColumnDef`
|
|
779
|
+
*/
|
|
780
|
+
this.agGridOptionsService.setGridOptionsProperty(gridOptions, 'autoGroupColumnDef', (original_autoGroupColumnDef) => {
|
|
781
|
+
// #autoGroupColumnDef
|
|
782
|
+
const useAdaptableFilter = this.adaptableOptions.filterOptions.useAdaptableFiltering;
|
|
783
|
+
if (!useAdaptableFilter) {
|
|
784
|
+
return original_autoGroupColumnDef;
|
|
785
|
+
}
|
|
786
|
+
if (original_autoGroupColumnDef?.filter === false) {
|
|
787
|
+
// if user disables filter on autoGroupColumnDef, we respect that
|
|
788
|
+
this.logger.info(`autoGroupColumnDef.filter is disabled as per user configuration.`);
|
|
789
|
+
return original_autoGroupColumnDef;
|
|
790
|
+
}
|
|
791
|
+
if (typeof original_autoGroupColumnDef?.filter === 'object') {
|
|
792
|
+
this.logger.warn(`autoGroupColumnDef.filter is set and overrides the Adaptable custom filter mechanism! We recommend using a ColumnOptions.columnHeader instead!`);
|
|
793
|
+
return original_autoGroupColumnDef;
|
|
794
|
+
}
|
|
795
|
+
const autoGroupColumnDef = { ...original_autoGroupColumnDef };
|
|
796
|
+
// this is required to make sure that AG Grid doesn't disable the filter
|
|
797
|
+
// !! DO NOT REMOVE THIS !!
|
|
798
|
+
// see https://github.com/ag-grid/ag-grid/blob/6f43ff257c2e285068eb425b655e58d6eeb89816/packages/ag-grid-enterprise/src/rowHierarchy/autoColService.ts#L225
|
|
799
|
+
autoGroupColumnDef.filterValueGetter = (params) => {
|
|
800
|
+
this.logger.error('autoGroupColumnDef.filterValueGetter was called unexpectedly; this is not an expected execution path!', params);
|
|
801
|
+
return '';
|
|
802
|
+
};
|
|
803
|
+
// !! it is important that we always return the same component / handler instances
|
|
804
|
+
// otherwise AG Grid will re-create the filter instance on each filterModel change
|
|
805
|
+
const autoGroupFilterComponent = (0, AgGridFilterAdapter_1.AgGridFilterAdapterFactory)(this);
|
|
806
|
+
const autoGroupFilterHandlerGenerator = () => new AdaptableFilterHandler_1.AdaptableFilterHandler(this.api);
|
|
807
|
+
// Use a getter to dynamically return different filter values based on Layout.RowGroupDisplayType
|
|
808
|
+
Object.defineProperty(autoGroupColumnDef, 'filter', {
|
|
809
|
+
get: () => {
|
|
810
|
+
const rowGroupDisplayType = this.api.layoutApi.internalApi.getCurrentLayoutRowGroupDisplayType();
|
|
811
|
+
if (rowGroupDisplayType === 'single') {
|
|
812
|
+
return {
|
|
813
|
+
component: autoGroupFilterComponent,
|
|
814
|
+
handler: autoGroupFilterHandlerGenerator,
|
|
815
|
+
};
|
|
816
|
+
}
|
|
817
|
+
const groupedColumnFilterConfig = this.api.layoutApi.internalApi.areAllGroupedColumnsFilterable();
|
|
818
|
+
if (groupedColumnFilterConfig.filter) {
|
|
819
|
+
return 'agGroupColumnFilter';
|
|
820
|
+
}
|
|
821
|
+
return original_autoGroupColumnDef?.filter;
|
|
822
|
+
},
|
|
823
|
+
enumerable: true,
|
|
824
|
+
configurable: true,
|
|
825
|
+
});
|
|
826
|
+
if (original_autoGroupColumnDef?.floatingFilter !== false) {
|
|
827
|
+
autoGroupColumnDef.suppressFloatingFilterButton = true;
|
|
828
|
+
Object.defineProperty(autoGroupColumnDef, 'floatingFilter', {
|
|
829
|
+
get: () => {
|
|
830
|
+
const rowGroupDisplayType = this.api.layoutApi.internalApi.getCurrentLayoutRowGroupDisplayType();
|
|
831
|
+
if (rowGroupDisplayType === 'single') {
|
|
832
|
+
return true;
|
|
833
|
+
}
|
|
834
|
+
if (rowGroupDisplayType === 'multi') {
|
|
835
|
+
const groupedColumnFilterConfig = this.api.layoutApi.internalApi.areAllGroupedColumnsFilterable();
|
|
836
|
+
if (groupedColumnFilterConfig.floatingFilter) {
|
|
837
|
+
return true;
|
|
838
|
+
}
|
|
839
|
+
}
|
|
840
|
+
return original_autoGroupColumnDef?.floatingFilter;
|
|
841
|
+
},
|
|
842
|
+
enumerable: true,
|
|
843
|
+
configurable: true,
|
|
844
|
+
});
|
|
845
|
+
// !! it is important that we always return the same component / handler instances
|
|
846
|
+
// otherwise AG Grid will re-create the filter instance on each filterModel change
|
|
847
|
+
const autoGroupFloatingFilterComponent = (0, AgGridFloatingFilterAdapter_1.AgGridFloatingFilterAdapterFactory)(this);
|
|
848
|
+
// Use a getter to dynamically return different floatingFilterComponent values based on Layout.RowGroupDisplayType
|
|
849
|
+
Object.defineProperty(autoGroupColumnDef, 'floatingFilterComponent', {
|
|
850
|
+
get: () => {
|
|
851
|
+
const rowGroupDisplayType = this.api.layoutApi.internalApi.getCurrentLayoutRowGroupDisplayType();
|
|
852
|
+
if (rowGroupDisplayType === 'single') {
|
|
853
|
+
return autoGroupFloatingFilterComponent;
|
|
854
|
+
}
|
|
855
|
+
return;
|
|
856
|
+
},
|
|
857
|
+
enumerable: true,
|
|
858
|
+
configurable: true,
|
|
859
|
+
});
|
|
860
|
+
}
|
|
861
|
+
return autoGroupColumnDef;
|
|
862
|
+
});
|
|
728
863
|
/**
|
|
729
864
|
* `theme`
|
|
730
865
|
*/
|
|
@@ -1683,19 +1818,7 @@ You need to define at least one Layout!`);
|
|
|
1683
1818
|
deriveAdaptableColumnStateFromAgGrid() {
|
|
1684
1819
|
const allColumns = [];
|
|
1685
1820
|
const gridApi = this.agGridAdapter.getAgGridApi();
|
|
1686
|
-
|
|
1687
|
-
let agGridCols = isPivot
|
|
1688
|
-
? gridApi.getColumns()
|
|
1689
|
-
: // we call getAllGridColumns because we want to also have the generated group columns
|
|
1690
|
-
gridApi.getAllGridColumns();
|
|
1691
|
-
if (isPivot) {
|
|
1692
|
-
// let's also support the pivot result columns
|
|
1693
|
-
const pivotResultColumns = gridApi.getPivotResultColumns() || [];
|
|
1694
|
-
const autoGroupColumns = gridApi
|
|
1695
|
-
.getAllGridColumns()
|
|
1696
|
-
.filter((column) => this.api.columnApi.isAutoRowGroupColumn(column.getColId()));
|
|
1697
|
-
agGridCols = [...autoGroupColumns, ...agGridCols, ...pivotResultColumns];
|
|
1698
|
-
}
|
|
1821
|
+
let agGridCols = this.agGridColumnAdapter.getAllAgGridColumns();
|
|
1699
1822
|
const columnGroupChildren = gridApi.getAllDisplayedColumnGroups();
|
|
1700
1823
|
const groupsCount = {};
|
|
1701
1824
|
const colsToGroups = (columnGroupChildren ?? []).reduce((acc, columnGroup) => {
|
|
@@ -1768,14 +1891,21 @@ You need to define at least one Layout!`);
|
|
|
1768
1891
|
let _displayValue = defaults ? defaults.displayValue : undefined;
|
|
1769
1892
|
let _normalisedValue = defaults ? defaults.normalisedValue : undefined;
|
|
1770
1893
|
let _isRowGroupCell;
|
|
1771
|
-
|
|
1772
|
-
this.api.columnApi.isPivotAggColumnWithNoPivotColumns(columnId);
|
|
1894
|
+
let _isPivotCell;
|
|
1773
1895
|
const self = this;
|
|
1774
1896
|
const api = this.api;
|
|
1897
|
+
const getIsPivotCell = () => {
|
|
1898
|
+
if (_isPivotCell === undefined) {
|
|
1899
|
+
_isPivotCell =
|
|
1900
|
+
api.columnApi.isPivotResultColumn(columnId) ||
|
|
1901
|
+
api.columnApi.isPivotAggColumnWithNoPivotColumns(columnId);
|
|
1902
|
+
}
|
|
1903
|
+
return _isPivotCell;
|
|
1904
|
+
};
|
|
1775
1905
|
const getRawValue = () => {
|
|
1776
1906
|
if (_rawValue === undefined) {
|
|
1777
1907
|
_rawValue = self.getRawValueFromRowNode(rowNode, columnId);
|
|
1778
|
-
if (
|
|
1908
|
+
if (_rawValue?.value != undefined && getIsPivotCell()) {
|
|
1779
1909
|
// for pivot result columns, the raw value is an object with a value property
|
|
1780
1910
|
// we want to return the value property as the raw value
|
|
1781
1911
|
_rawValue = _rawValue.value;
|
|
@@ -1818,7 +1948,7 @@ You need to define at least one Layout!`);
|
|
|
1818
1948
|
return _primaryKeyValue;
|
|
1819
1949
|
},
|
|
1820
1950
|
get isPivotCell() {
|
|
1821
|
-
return
|
|
1951
|
+
return getIsPivotCell();
|
|
1822
1952
|
},
|
|
1823
1953
|
get isRowGroupCell() {
|
|
1824
1954
|
if (_isRowGroupCell === undefined) {
|
|
@@ -3390,6 +3520,7 @@ You need to define at least one Layout!`);
|
|
|
3390
3520
|
this.__prevLayoutForRefresh = undefined;
|
|
3391
3521
|
this.layoutManager?.destroy();
|
|
3392
3522
|
this.layoutManager = null;
|
|
3523
|
+
(0, PredicateApiImpl_1.clearPredicateDefMapMemo)();
|
|
3393
3524
|
const agGridApi = this.agGridAdapter?.getAgGridApi();
|
|
3394
3525
|
if (agGridApi && !agGridApi.isDestroyed()) {
|
|
3395
3526
|
agGridApi.removeEventListener('firstDataRendered', this.listenerFirstDataRendered);
|
|
@@ -3971,7 +4102,8 @@ You need to define at least one Layout!`);
|
|
|
3971
4102
|
}
|
|
3972
4103
|
}
|
|
3973
4104
|
// also we need to reset the cache for the group column, when we have rowGripDisplayType single
|
|
3974
|
-
if (layout.RowGroupDisplayType === 'single'
|
|
4105
|
+
if (layout.RowGroupDisplayType === 'single' &&
|
|
4106
|
+
(layout.RowGroupedColumns?.length || layout.PivotGroupedColumns?.length)) {
|
|
3975
4107
|
this.api.filterApi.columnFilterApi.resetFilterValues(GeneralConstants_1.AG_GRID_GROUPED_COLUMN);
|
|
3976
4108
|
}
|
|
3977
4109
|
}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import { DoesFilterPassParams, FilterHandler, FilterHandlerParams } from 'ag-grid-enterprise';
|
|
2
2
|
import { AdaptableApi } from '../Api/AdaptableApi';
|
|
3
|
-
import { ColumnSetupInfo } from '../AdaptableState/Common/ColumnSetupInfo';
|
|
4
3
|
import { InFilterValueResult } from '../AdaptableOptions/FilterOptions';
|
|
5
4
|
import { ColumnFilter } from '../types';
|
|
6
|
-
export declare class AdaptableFilterHandler implements FilterHandler {
|
|
5
|
+
export declare class AdaptableFilterHandler implements FilterHandler<any, any, ColumnFilter> {
|
|
7
6
|
private adaptableApi;
|
|
8
|
-
|
|
7
|
+
colId: string;
|
|
9
8
|
private filterDisplayValuesResult;
|
|
10
9
|
private previousFilterDisplayValuesResult;
|
|
11
|
-
constructor(adaptableApi: AdaptableApi
|
|
12
|
-
|
|
13
|
-
doesFilterPass(params: DoesFilterPassParams): boolean;
|
|
10
|
+
constructor(adaptableApi: AdaptableApi);
|
|
11
|
+
init(params: FilterHandlerParams): void;
|
|
12
|
+
doesFilterPass(params: DoesFilterPassParams<any, any, ColumnFilter>): boolean;
|
|
14
13
|
getCachedFilterDisplayValues(): InFilterValueResult | undefined;
|
|
15
14
|
getLastCachedFilterDisplayValues(): InFilterValueResult | undefined;
|
|
16
15
|
getFromCacheOrFetchFilterDisplayValues(options: {
|
|
@@ -2,20 +2,11 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AdaptableFilterHandler = void 0;
|
|
4
4
|
class AdaptableFilterHandler {
|
|
5
|
-
constructor(adaptableApi
|
|
5
|
+
constructor(adaptableApi) {
|
|
6
6
|
this.adaptableApi = adaptableApi;
|
|
7
|
-
this.colId = columnSetup.colId;
|
|
8
7
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
.getActiveColumnFilters()
|
|
12
|
-
.filter((columnFilter) => this.adaptableApi.filterApi.columnFilterApi.isColumnFilterActive(columnFilter))
|
|
13
|
-
.filter((columnFilter) => columnFilter.ColumnId === this.colId)
|
|
14
|
-
.filter((columnFilter) => {
|
|
15
|
-
const shouldEvaluateFilterOnClient = this.adaptableApi.expressionApi.internalApi.shouldEvaluatePredicatesInAdaptableQL('ColumnFilter', columnFilter, columnFilter.Predicates);
|
|
16
|
-
return shouldEvaluateFilterOnClient;
|
|
17
|
-
});
|
|
18
|
-
return columnFilters;
|
|
8
|
+
init(params) {
|
|
9
|
+
this.colId = params.column.getColId();
|
|
19
10
|
}
|
|
20
11
|
doesFilterPass(params) {
|
|
21
12
|
try {
|
|
@@ -25,12 +16,15 @@ class AdaptableFilterHandler {
|
|
|
25
16
|
if (!isRowFilterable) {
|
|
26
17
|
return true;
|
|
27
18
|
}
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
return
|
|
32
|
-
}
|
|
33
|
-
|
|
19
|
+
const columnFilterModel = params.model;
|
|
20
|
+
if (!columnFilterModel) {
|
|
21
|
+
this.adaptableApi.logWarn(`AdaptableFilterHandler.doesFilterPass: No filter model found for column ${this.colId}`);
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
if (columnFilterModel.IsSuspended) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
return this.adaptableApi.filterApi.columnFilterApi.internalApi.evaluateColumnFilter(columnFilterModel, rowNode);
|
|
34
28
|
}
|
|
35
29
|
catch (ex) {
|
|
36
30
|
this.adaptableApi.consoleError(ex);
|
|
@@ -49,7 +43,7 @@ class AdaptableFilterHandler {
|
|
|
49
43
|
}
|
|
50
44
|
return this.fetchFilterDisplayValues(options);
|
|
51
45
|
}
|
|
52
|
-
fetchFilterDisplayValues(options) {
|
|
46
|
+
async fetchFilterDisplayValues(options) {
|
|
53
47
|
return this.adaptableApi.gridApi.internalApi
|
|
54
48
|
.getDistinctFilterDisplayValuesForColumn({
|
|
55
49
|
columnId: this.colId,
|
|
@@ -11,6 +11,7 @@ export declare class AgGridAdapter {
|
|
|
11
11
|
private DANGER_updateGridOptionsMonkeyPatcher;
|
|
12
12
|
private DANGER_doFiltersPassMonkeyPatcher;
|
|
13
13
|
private DANGER_isAggFilterPresentMonkeyPatcher;
|
|
14
|
+
private activePivotColumnFilters_MEMO;
|
|
14
15
|
initialGridOptions: GridOptions;
|
|
15
16
|
private _agGridId;
|
|
16
17
|
constructor(_adaptableInstance: AdaptableAgGrid, config?: {
|
|
@@ -20,6 +21,7 @@ export declare class AgGridAdapter {
|
|
|
20
21
|
private get adaptableOptions();
|
|
21
22
|
private get adaptableApi();
|
|
22
23
|
private get logger();
|
|
24
|
+
private getActivePivotColumnFilters;
|
|
23
25
|
private get agGridOptionsService();
|
|
24
26
|
setAgGridId(agGridId: string): void;
|
|
25
27
|
setAgGridApi(gridApi: GridApi): void;
|
|
@@ -19,6 +19,7 @@ const getColumnApiModule = () => ag_grid_enterprise_1.ColumnApiModule;
|
|
|
19
19
|
class AgGridAdapter {
|
|
20
20
|
constructor(_adaptableInstance, config) {
|
|
21
21
|
this._adaptableInstance = _adaptableInstance;
|
|
22
|
+
this.activePivotColumnFilters_MEMO = new WeakMap();
|
|
22
23
|
const columnApiModuleReference = config?.getAgGridColumnApiModuleReference?.() ?? getColumnApiModule();
|
|
23
24
|
const ColumnDefFactory_Prototype = columnApiModuleReference?.beans?.[0]?.prototype;
|
|
24
25
|
if (!ColumnDefFactory_Prototype) {
|
|
@@ -44,6 +45,7 @@ class AgGridAdapter {
|
|
|
44
45
|
this.DANGER_updateGridOptionsMonkeyPatcher = null;
|
|
45
46
|
this.DANGER_doFiltersPassMonkeyPatcher = null;
|
|
46
47
|
this.DANGER_isAggFilterPresentMonkeyPatcher = null;
|
|
48
|
+
this.activePivotColumnFilters_MEMO = null;
|
|
47
49
|
this._adaptableInstance = null;
|
|
48
50
|
}
|
|
49
51
|
get adaptableOptions() {
|
|
@@ -55,6 +57,27 @@ class AgGridAdapter {
|
|
|
55
57
|
get logger() {
|
|
56
58
|
return this._adaptableInstance.logger;
|
|
57
59
|
}
|
|
60
|
+
getActivePivotColumnFilters() {
|
|
61
|
+
// we memoize based on layout column filters object reference
|
|
62
|
+
// this method is called for each row during filtering so we need to optimize it
|
|
63
|
+
const layoutColumnFilters = this.adaptableApi.layoutApi.internalApi.getCurrentLayout_perfOptimized()?.ColumnFilters;
|
|
64
|
+
if (!layoutColumnFilters) {
|
|
65
|
+
return [];
|
|
66
|
+
}
|
|
67
|
+
const memoizedColumnFilters = this.activePivotColumnFilters_MEMO.get(layoutColumnFilters);
|
|
68
|
+
if (memoizedColumnFilters) {
|
|
69
|
+
return memoizedColumnFilters;
|
|
70
|
+
}
|
|
71
|
+
const pivotColumnFilters = this.adaptableApi.filterApi.columnFilterApi
|
|
72
|
+
.getActiveColumnFilters()
|
|
73
|
+
.filter((columnFilter) => this.adaptableApi.columnApi.isPivotResultColumn(columnFilter.ColumnId) ||
|
|
74
|
+
this.adaptableApi.columnApi.isAutoRowGroupColumnForSingle(columnFilter.ColumnId) ||
|
|
75
|
+
this.adaptableApi.columnApi.isPivotAggColumnWithNoPivotColumns(columnFilter.ColumnId))
|
|
76
|
+
.filter((columnFilter) => this.adaptableApi.filterApi.columnFilterApi.isColumnFilterActive(columnFilter))
|
|
77
|
+
.filter((columnFilter) => this.adaptableApi.expressionApi.internalApi.shouldEvaluatePredicatesInAdaptableQL('ColumnFilter', columnFilter, columnFilter.Predicates));
|
|
78
|
+
this.activePivotColumnFilters_MEMO.set(layoutColumnFilters, pivotColumnFilters);
|
|
79
|
+
return pivotColumnFilters;
|
|
80
|
+
}
|
|
58
81
|
get agGridOptionsService() {
|
|
59
82
|
return this._adaptableInstance.agGridOptionsService;
|
|
60
83
|
}
|
|
@@ -155,21 +178,15 @@ class AgGridAdapter {
|
|
|
155
178
|
// should NEVER happen
|
|
156
179
|
return true;
|
|
157
180
|
}
|
|
158
|
-
const pivotColumnFilters = self.
|
|
159
|
-
.getActiveColumnFilters()
|
|
160
|
-
.filter((columnFilter) => self.adaptableApi.columnApi.isPivotResultColumn(columnFilter.ColumnId) ||
|
|
161
|
-
self.adaptableApi.columnApi.isAutoRowGroupColumnForSingle(columnFilter.ColumnId) ||
|
|
162
|
-
self.adaptableApi.columnApi.isPivotAggColumnWithNoPivotColumns(columnFilter.ColumnId));
|
|
181
|
+
const pivotColumnFilters = self.getActivePivotColumnFilters();
|
|
163
182
|
try {
|
|
164
183
|
if (pivotColumnFilters.length > 0) {
|
|
165
184
|
for (const columnFilter of pivotColumnFilters) {
|
|
166
|
-
const
|
|
167
|
-
if (
|
|
168
|
-
|
|
169
|
-
if (!columnFilterEvaluationResult) {
|
|
170
|
-
return false;
|
|
171
|
-
}
|
|
185
|
+
const columnFilterEvaluationResult = self.adaptableApi.filterApi.columnFilterApi.internalApi.evaluateColumnFilter(columnFilter, rowNode);
|
|
186
|
+
if (!columnFilterEvaluationResult) {
|
|
187
|
+
return false;
|
|
172
188
|
}
|
|
189
|
+
// else continue to next filter
|
|
173
190
|
}
|
|
174
191
|
}
|
|
175
192
|
}
|
|
@@ -181,10 +198,7 @@ class AgGridAdapter {
|
|
|
181
198
|
};
|
|
182
199
|
agGridColumnFilterService.doFiltersPass = this.DANGER_doFiltersPassMonkeyPatcher;
|
|
183
200
|
this.DANGER_isAggFilterPresentMonkeyPatcher = function () {
|
|
184
|
-
|
|
185
|
-
return columnFilters.some((colFilter) => self.adaptableApi.columnApi.isPivotResultColumn(colFilter.ColumnId) ||
|
|
186
|
-
self.adaptableApi.columnApi.isAutoRowGroupColumnForSingle(colFilter.ColumnId) ||
|
|
187
|
-
self.adaptableApi.columnApi.isPivotAggColumnWithNoPivotColumns(colFilter.ColumnId));
|
|
201
|
+
return self.getActivePivotColumnFilters().length > 0;
|
|
188
202
|
};
|
|
189
203
|
agGridColumnFilterService.isAggFilterPresent = this.DANGER_isAggFilterPresentMonkeyPatcher;
|
|
190
204
|
}
|
|
@@ -16,7 +16,12 @@ export declare class AgGridColumnAdapter {
|
|
|
16
16
|
setColDefProperty<T extends keyof ColDef>(col: Column, propertyName: T, propertyGetter: (userPropertyValue: ColDef[T]) => ColDef[T] | undefined): void;
|
|
17
17
|
getUserColDefProperty<T extends keyof ColDef>(columnId: string, propertyName: T): ColDef[T] | undefined;
|
|
18
18
|
shouldSkipColumn(colId: string): boolean;
|
|
19
|
-
|
|
19
|
+
getAllAgGridColumns(): Column<any>[];
|
|
20
|
+
/**
|
|
21
|
+
* Setup all columns, or only those with the given Ids
|
|
22
|
+
* @param specificColumnIds - optional list of column Ids to setup. If not provided, all columns are setup
|
|
23
|
+
*/
|
|
24
|
+
setupColumns(specificColumnIds?: string[]): void;
|
|
20
25
|
private setupColumnValueGetter;
|
|
21
26
|
private setupColumnCellClass;
|
|
22
27
|
private setupColumnHeaderClass;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AgGridColumnAdapter =
|
|
3
|
+
exports.AgGridColumnAdapter = void 0;
|
|
4
|
+
exports.getEditorForColumnDataType = getEditorForColumnDataType;
|
|
4
5
|
const tslib_1 = require("tslib");
|
|
5
6
|
const kebabCase_1 = tslib_1.__importDefault(require("lodash/kebabCase"));
|
|
6
7
|
const merge_1 = tslib_1.__importDefault(require("lodash/merge"));
|
|
@@ -30,7 +31,6 @@ function getEditorForColumnDataType(columnDataType, variant) {
|
|
|
30
31
|
return variant === 'react' ? AdaptableDateEditor_1.AdaptableReactDateEditor : AdaptableDateEditor_1.AdaptableDateEditor;
|
|
31
32
|
}
|
|
32
33
|
}
|
|
33
|
-
exports.getEditorForColumnDataType = getEditorForColumnDataType;
|
|
34
34
|
class AgGridColumnAdapter {
|
|
35
35
|
constructor(adaptableInstance) {
|
|
36
36
|
this.adaptableInstance = adaptableInstance;
|
|
@@ -107,7 +107,7 @@ class AgGridColumnAdapter {
|
|
|
107
107
|
!this.adaptableApi.columnApi.isAutoRowGroupColumn(colId) &&
|
|
108
108
|
!this.adaptableApi.columnApi.isSelectionColumn(colId));
|
|
109
109
|
}
|
|
110
|
-
|
|
110
|
+
getAllAgGridColumns() {
|
|
111
111
|
const pivotMode = this.adaptableInstance.isInPivotMode();
|
|
112
112
|
let cols = pivotMode
|
|
113
113
|
? // for pivot mode, we take only the initial columns
|
|
@@ -122,6 +122,17 @@ class AgGridColumnAdapter {
|
|
|
122
122
|
.filter((column) => this.adaptableApi.columnApi.isAutoRowGroupColumn(column.getColId()));
|
|
123
123
|
cols = [...autoGroupColumns, ...cols, ...pivotResultColumns];
|
|
124
124
|
}
|
|
125
|
+
return cols;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Setup all columns, or only those with the given Ids
|
|
129
|
+
* @param specificColumnIds - optional list of column Ids to setup. If not provided, all columns are setup
|
|
130
|
+
*/
|
|
131
|
+
setupColumns(specificColumnIds) {
|
|
132
|
+
let cols = this.getAllAgGridColumns();
|
|
133
|
+
if (specificColumnIds?.length) {
|
|
134
|
+
cols = cols.filter((col) => specificColumnIds.includes(col.getColId()));
|
|
135
|
+
}
|
|
125
136
|
// this needs to be here, before the other setup below
|
|
126
137
|
// so the setup methods below reference the correct columns in adaptable store
|
|
127
138
|
cols.forEach((col) => {
|
|
@@ -137,6 +148,7 @@ class AgGridColumnAdapter {
|
|
|
137
148
|
colId,
|
|
138
149
|
abColumn,
|
|
139
150
|
};
|
|
151
|
+
const isAutoRowGroupColumn = this.adaptableApi.columnApi.isAutoRowGroupColumn(colId);
|
|
140
152
|
this.setupColumnCellRenderer(colSetupInfo);
|
|
141
153
|
this.setupColumnCellStyle(colSetupInfo);
|
|
142
154
|
this.setupColumnCellClass(colSetupInfo);
|
|
@@ -144,8 +156,13 @@ class AgGridColumnAdapter {
|
|
|
144
156
|
this.setupColumnHeaderClass(colSetupInfo);
|
|
145
157
|
this.setupColumnValueGetter(colSetupInfo);
|
|
146
158
|
this.setupColumnTooltipValueGetter(colSetupInfo);
|
|
147
|
-
|
|
148
|
-
|
|
159
|
+
if (!isAutoRowGroupColumn) {
|
|
160
|
+
// we do NOT setup filtering for auto row group columns
|
|
161
|
+
// this is done via gridOptions.autoGroupColumnDef
|
|
162
|
+
// see #autoGroupColumnDef
|
|
163
|
+
this.setupColumnFilter(colSetupInfo);
|
|
164
|
+
this.setupColumnFloatingFilter(colSetupInfo);
|
|
165
|
+
}
|
|
149
166
|
this.setupColumnValueFormatter(colSetupInfo);
|
|
150
167
|
this.setupColumnEditable(colSetupInfo);
|
|
151
168
|
this.setupColumnValueSetter(colSetupInfo);
|
|
@@ -460,8 +477,12 @@ class AgGridColumnAdapter {
|
|
|
460
477
|
valueToLabelMap.set(option.value, option.label);
|
|
461
478
|
return option.value;
|
|
462
479
|
}));
|
|
480
|
+
const fetchSelectItems = (_params) => {
|
|
481
|
+
return values;
|
|
482
|
+
};
|
|
463
483
|
return {
|
|
464
|
-
|
|
484
|
+
// we need to pass a function which returns a Promise, that's what AG Grid expects
|
|
485
|
+
values: fetchSelectItems,
|
|
465
486
|
formatValue: (value) => valueToLabelMap.get(value) ?? value,
|
|
466
487
|
};
|
|
467
488
|
};
|
|
@@ -644,7 +665,7 @@ class AgGridColumnAdapter {
|
|
|
644
665
|
}
|
|
645
666
|
return {
|
|
646
667
|
component: (0, AgGridFilterAdapter_1.AgGridFilterAdapterFactory)(this.adaptableInstance),
|
|
647
|
-
handler: () => new AdaptableFilterHandler_1.AdaptableFilterHandler(this.adaptableApi
|
|
668
|
+
handler: () => new AdaptableFilterHandler_1.AdaptableFilterHandler(this.adaptableApi),
|
|
648
669
|
};
|
|
649
670
|
});
|
|
650
671
|
}
|
|
@@ -40,7 +40,7 @@ const AgGridFilterAdapterFactory = (adaptable) => {
|
|
|
40
40
|
if (column) {
|
|
41
41
|
this.unmountReactRoot = adaptable.renderReactRoot((0, renderWithAdaptableContext_1.renderWithAdaptableContext)(React.createElement(AdaptableColumnFilter_1.AdaptableColumnFilter, {
|
|
42
42
|
columnId,
|
|
43
|
-
wrapperProps: {
|
|
43
|
+
wrapperProps: { className: 'twa:p-2' },
|
|
44
44
|
location: 'columnMenu',
|
|
45
45
|
}), adaptable), this.filterContainer);
|
|
46
46
|
}
|
|
@@ -61,26 +61,6 @@ const AgGridFloatingFilterAdapterFactory = (adaptable) => {
|
|
|
61
61
|
headerCell.style.padding = 'var(--ab-space-1)';
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
|
-
if (adaptable.isAgGridInitialising) {
|
|
65
|
-
if (adaptable.variant === 'react') {
|
|
66
|
-
return () => React.createElement(React.Fragment, null);
|
|
67
|
-
}
|
|
68
|
-
return class FloatingFilterStub {
|
|
69
|
-
init(params) {
|
|
70
|
-
this.filterContainer = document.createElement('div');
|
|
71
|
-
}
|
|
72
|
-
getGui() {
|
|
73
|
-
return this.filterContainer;
|
|
74
|
-
}
|
|
75
|
-
destroy() {
|
|
76
|
-
this.unmountReactRoot?.();
|
|
77
|
-
this.filterContainer = null;
|
|
78
|
-
}
|
|
79
|
-
onParentModelChanged() {
|
|
80
|
-
// nothing yet
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
64
|
return class AgGridFloatingFilterAdapter {
|
|
85
65
|
init(params) {
|
|
86
66
|
const colId = params.column.getColId();
|
|
@@ -111,7 +91,7 @@ const AgGridFloatingFilterAdapterFactory = (adaptable) => {
|
|
|
111
91
|
}
|
|
112
92
|
refresh(params) {
|
|
113
93
|
// always reuse the current instance
|
|
114
|
-
// the
|
|
94
|
+
// the filter is refreshed in the underlying React component
|
|
115
95
|
return true;
|
|
116
96
|
}
|
|
117
97
|
destroy() {
|
|
@@ -68,11 +68,7 @@ exports.InternalAdaptableNumberEditor = React.forwardRef(function InternalAdapta
|
|
|
68
68
|
React.createElement("input", { "data-name": "AdaptableNumberEditorInput", type: props.type ?? 'number', value: value, onKeyDown: preventDisallowedChars, onChange: React.useCallback((event) => {
|
|
69
69
|
setValue(event.target.value);
|
|
70
70
|
}, []), style: inputStyle, ref: inputRef }),
|
|
71
|
-
showClear ? (React.createElement("div", {
|
|
72
|
-
display: 'inline-block',
|
|
73
|
-
marginRight: 'var(--ab-space-1)',
|
|
74
|
-
marginLeft: 'var(--ab-space-1)',
|
|
75
|
-
}, onClick: (e) => {
|
|
71
|
+
showClear ? (React.createElement("div", { className: "twa:inline-block twa:mx-1", onClick: (e) => {
|
|
76
72
|
if (props.emptyValue != null) {
|
|
77
73
|
setValue(props.emptyValue);
|
|
78
74
|
e.stopPropagation();
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AdaptableNumberEditor = exports.AdaptableReactNumberEditor =
|
|
3
|
+
exports.AdaptableNumberEditor = exports.AdaptableReactNumberEditor = void 0;
|
|
4
|
+
exports.getStartValue = getStartValue;
|
|
4
5
|
const tslib_1 = require("tslib");
|
|
5
6
|
const React = tslib_1.__importStar(require("react"));
|
|
6
7
|
const renderWithAdaptableContext_1 = require("../../../View/renderWithAdaptableContext");
|
|
@@ -24,7 +25,6 @@ function getStartValue(params) {
|
|
|
24
25
|
}
|
|
25
26
|
return params.value;
|
|
26
27
|
}
|
|
27
|
-
exports.getStartValue = getStartValue;
|
|
28
28
|
const defaultValueParser = ({ newValue, oldValue: _ }) => {
|
|
29
29
|
return newValue;
|
|
30
30
|
};
|
|
@@ -61,11 +61,7 @@ exports.InternalAdaptablePercentageEditor = React.forwardRef(function InternalAd
|
|
|
61
61
|
React.createElement(NumberInput_1.NumberInput, { type: props.type ?? 'number', className: "ab-PercentageEditor-Input", value: value, noArrows: true, autoFocus: true, onChange: React.useCallback((value) => {
|
|
62
62
|
setValue(value);
|
|
63
63
|
}, []), style: inputStyle, ref: inputRef }),
|
|
64
|
-
showClear ? (React.createElement("div", {
|
|
65
|
-
display: 'inline-block',
|
|
66
|
-
marginRight: 'var(--ab-space-1)',
|
|
67
|
-
marginLeft: 'var(--ab-space-1)',
|
|
68
|
-
}, onClick: (e) => {
|
|
64
|
+
showClear ? (React.createElement("div", { className: "twa:inline-block twa:mx-1", onClick: (e) => {
|
|
69
65
|
if (props.emptyValue != null) {
|
|
70
66
|
setValue(props.emptyValue);
|
|
71
67
|
e.stopPropagation();
|
package/src/agGrid/index.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.AdaptableLogger = exports.AdaptableNoCodeWizard = exports.AdaptableWizardView = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
7
5
|
const Adaptable_1 = require("./Adaptable");
|
|
8
6
|
const AdaptableLogger_1 = require("./AdaptableLogger");
|
|
9
7
|
var AdaptableWizardView_1 = require("../View/AdaptableWizardView");
|
|
10
|
-
Object.defineProperty(exports, "AdaptableWizardView", { enumerable: true, get: function () { return __importDefault(AdaptableWizardView_1).default; } });
|
|
8
|
+
Object.defineProperty(exports, "AdaptableWizardView", { enumerable: true, get: function () { return tslib_1.__importDefault(AdaptableWizardView_1).default; } });
|
|
11
9
|
exports.default = Adaptable_1.Adaptable;
|
|
12
10
|
exports.AdaptableNoCodeWizard = Adaptable_1.AdaptableNoCodeWizard;
|
|
13
11
|
exports.AdaptableLogger = AdaptableLogger_1.AdaptableLogger;
|