@adaptabletools/adaptable 18.0.0-canary.3 → 18.0.0-canary.30
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/agGrid.d.ts +4 -21
- package/agGrid.js +9 -26
- package/base.css +27 -21
- package/base.css.map +1 -1
- package/index.css +108 -88
- package/index.css.map +1 -1
- package/package.json +4 -5
- package/src/AdaptableInterfaces/IAdaptable.d.ts +61 -109
- package/src/AdaptableOptions/AdaptableFrameworkComponent.d.ts +3 -0
- package/src/AdaptableOptions/AdaptableOptions.d.ts +7 -7
- package/src/AdaptableOptions/AdaptablePlugin.d.ts +2 -0
- package/src/AdaptableOptions/AdaptablePlugin.js +2 -0
- package/src/AdaptableOptions/ColumnFilterOptions.d.ts +11 -4
- package/src/AdaptableOptions/ColumnOptions.d.ts +9 -4
- package/src/AdaptableOptions/CommentOptions.d.ts +39 -0
- package/src/AdaptableOptions/DataImportOptions.d.ts +2 -2
- package/src/AdaptableOptions/GroupingOptions.d.ts +0 -26
- package/src/AdaptableOptions/MenuOptions.d.ts +11 -71
- package/src/AdaptableOptions/MenuOptions.js +1 -99
- package/src/AdaptableOptions/NoteOptions.d.ts +25 -0
- package/src/AdaptableOptions/StateOptions.d.ts +6 -0
- package/src/AdaptableOptions/UserInterfaceOptions.d.ts +17 -0
- package/src/Api/AdaptableApi.d.ts +9 -4
- package/src/Api/BulkUpdateApi.d.ts +0 -5
- package/src/Api/ColumnApi.d.ts +13 -0
- package/src/Api/CommentApi.d.ts +20 -22
- package/src/Api/ConfigApi.d.ts +4 -5
- package/src/Api/EventApi.d.ts +7 -9
- package/src/Api/Events/AdaptableReady.d.ts +3 -3
- package/src/Api/Events/CommentChanged.d.ts +11 -0
- package/src/Api/Events/GridDataChanged.d.ts +4 -4
- package/src/Api/GridApi.d.ts +42 -14
- package/src/Api/Implementation/ActionColumnApiImpl.d.ts +2 -0
- package/src/Api/Implementation/ActionColumnApiImpl.js +30 -0
- package/src/Api/Implementation/ActionRowApiImpl.js +3 -7
- package/src/Api/Implementation/AdaptableApiImpl.d.ts +3 -2
- package/src/Api/Implementation/AdaptableApiImpl.js +5 -2
- package/src/Api/Implementation/AlertApiImpl.js +5 -10
- package/src/Api/Implementation/ApiBase.d.ts +5 -3
- package/src/Api/Implementation/ApiBase.js +8 -2
- package/src/Api/Implementation/BulkUpdateApiImpl.d.ts +0 -1
- package/src/Api/Implementation/BulkUpdateApiImpl.js +0 -4
- package/src/Api/Implementation/CalendarApiImpl.js +1 -6
- package/src/Api/Implementation/CellSummaryApiImpl.d.ts +0 -5
- package/src/Api/Implementation/CellSummaryApiImpl.js +2 -23
- package/src/Api/Implementation/ChartingApiImpl.js +3 -3
- package/src/Api/Implementation/ColumnApiImpl.d.ts +5 -0
- package/src/Api/Implementation/ColumnApiImpl.js +45 -15
- package/src/Api/Implementation/ColumnFilterApiImpl.js +7 -7
- package/src/Api/Implementation/CommentsApiImpl.d.ts +8 -5
- package/src/Api/Implementation/CommentsApiImpl.js +12 -6
- package/src/Api/Implementation/ConfigApiImpl.d.ts +2 -2
- package/src/Api/Implementation/ConfigApiImpl.js +34 -30
- package/src/Api/Implementation/DashboardApiImpl.js +1 -6
- package/src/Api/Implementation/ExportApiImpl.js +5 -10
- package/src/Api/Implementation/ExpressionApiImpl.js +14 -19
- package/src/Api/Implementation/Fdc3ApiImpl.js +1 -1
- package/src/Api/Implementation/FlashingCellApiImpl.js +3 -8
- package/src/Api/Implementation/FormatColumnApiImpl.js +4 -4
- package/src/Api/Implementation/FreeTextColumnApiImpl.js +1 -1
- package/src/Api/Implementation/GridApiImpl.d.ts +10 -3
- package/src/Api/Implementation/GridApiImpl.js +78 -23
- package/src/Api/Implementation/LayoutApiImpl.d.ts +4 -7
- package/src/Api/Implementation/LayoutApiImpl.js +19 -13
- package/src/Api/Implementation/NoteApiImpl.d.ts +18 -0
- package/src/Api/Implementation/NoteApiImpl.js +40 -0
- package/src/Api/Implementation/OptionsApiImpl.d.ts +4 -4
- package/src/Api/Implementation/OptionsApiImpl.js +4 -4
- package/src/Api/Implementation/PredicateApiImpl.js +2 -2
- package/src/Api/Implementation/ScheduleApiImpl.js +6 -6
- package/src/Api/Implementation/ScopeApiImpl.d.ts +2 -0
- package/src/Api/Implementation/ScopeApiImpl.js +64 -18
- package/src/Api/Implementation/StatusBarApiImpl.d.ts +0 -1
- package/src/Api/Implementation/StatusBarApiImpl.js +0 -3
- package/src/Api/Implementation/TeamSharingApiImpl.js +3 -15
- package/src/Api/Implementation/ThemeApiImpl.js +2 -7
- package/src/Api/Implementation/ToolPanelApiImpl.js +6 -6
- package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +14 -8
- package/src/Api/Implementation/UserInterfaceApiImpl.js +30 -25
- package/src/Api/Internal/ActionRowInternalApi.d.ts +6 -1
- package/src/Api/Internal/ActionRowInternalApi.js +117 -38
- package/src/Api/Internal/AdaptableInternalApi.d.ts +6 -8
- package/src/Api/Internal/AdaptableInternalApi.js +25 -37
- package/src/Api/Internal/AlertInternalApi.js +4 -17
- package/src/Api/Internal/CalculatedColumnInternalApi.d.ts +2 -0
- package/src/Api/Internal/CalculatedColumnInternalApi.js +78 -14
- package/src/Api/Internal/ChartingInternalApi.js +13 -13
- package/src/Api/Internal/ColumnFilterInternalApi.d.ts +2 -0
- package/src/Api/Internal/ColumnFilterInternalApi.js +35 -31
- package/src/Api/Internal/ColumnInternalApi.d.ts +6 -1
- package/src/Api/Internal/ColumnInternalApi.js +19 -1
- package/src/Api/Internal/CommentsInternalApi.d.ts +4 -0
- package/src/Api/Internal/CommentsInternalApi.js +14 -0
- package/src/Api/Internal/CustomSortInternalApi.d.ts +3 -2
- package/src/Api/Internal/CustomSortInternalApi.js +33 -2
- package/src/Api/Internal/DashboardInternalApi.js +5 -11
- package/src/Api/Internal/DataImportInternalApi.js +3 -9
- package/src/Api/Internal/DataSetInternalApi.js +3 -8
- package/src/Api/Internal/ExportInternalApi.d.ts +2 -1
- package/src/Api/Internal/ExportInternalApi.js +8 -5
- package/src/Api/Internal/ExpressionInternalApi.js +2 -12
- package/src/Api/Internal/Fdc3InternalApi.js +3 -12
- package/src/Api/Internal/FormatColumnInternalApi.d.ts +1 -4
- package/src/Api/Internal/FormatColumnInternalApi.js +26 -28
- package/src/Api/Internal/FreeTextColumnInternalApi.d.ts +2 -0
- package/src/Api/Internal/FreeTextColumnInternalApi.js +61 -1
- package/src/Api/Internal/GridFilterInternalApi.d.ts +5 -0
- package/src/Api/Internal/GridFilterInternalApi.js +9 -9
- package/src/Api/Internal/GridInternalApi.d.ts +23 -3
- package/src/Api/Internal/GridInternalApi.js +151 -44
- package/src/Api/Internal/LayoutInternalApi.d.ts +2 -0
- package/src/Api/Internal/LayoutInternalApi.js +26 -19
- package/src/Api/Internal/NoteInternalApi.d.ts +4 -0
- package/src/Api/Internal/NoteInternalApi.js +14 -0
- package/src/Api/Internal/PredicateInternalApi.js +5 -40
- package/src/Api/Internal/ScheduleInternalApi.js +1 -6
- package/src/Api/Internal/StyledColumnInternalApi.js +5 -5
- package/src/Api/Internal/SystemStatusInternalApi.js +1 -7
- package/src/Api/Internal/TeamSharingInternalApi.js +3 -8
- package/src/Api/Internal/ThemeInternalApi.js +1 -1
- package/src/Api/Internal/UserInterfaceInternalApi.js +1 -1
- package/src/Api/InteropioPluginApi.d.ts +2 -2
- package/src/Api/LayoutApi.d.ts +17 -9
- package/src/Api/NoteApi.d.ts +48 -0
- package/src/Api/OptionsApi.d.ts +8 -8
- package/src/Api/ScopeApi.d.ts +10 -0
- package/src/Api/UserInterfaceApi.d.ts +15 -13
- package/src/EnvVars.d.ts +3 -0
- package/src/EnvVars.js +4 -0
- package/src/PredefinedConfig/AdaptableState.d.ts +2 -2
- package/src/PredefinedConfig/CommentState.d.ts +27 -23
- package/src/PredefinedConfig/Common/AdaptableColumn.d.ts +4 -0
- package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
- package/src/PredefinedConfig/Common/AdaptableScope.d.ts +4 -1
- package/src/PredefinedConfig/Common/AggregationColumns.d.ts +1 -0
- package/src/PredefinedConfig/Common/AggregationColumns.js +3 -0
- package/src/PredefinedConfig/Common/CellSummary.d.ts +5 -14
- package/src/PredefinedConfig/Common/DataUpdateConfig.d.ts +4 -0
- package/src/PredefinedConfig/Common/Enums.d.ts +4 -1
- package/src/PredefinedConfig/Common/Enums.js +3 -0
- package/src/PredefinedConfig/Common/Fdc3Intent.d.ts +2 -2
- package/src/PredefinedConfig/Common/Menu.d.ts +15 -1
- package/src/PredefinedConfig/Common/Menu.js +116 -1
- package/src/PredefinedConfig/Common/RowSummary.d.ts +21 -0
- package/src/PredefinedConfig/Common/RowSummary.js +17 -0
- package/src/PredefinedConfig/Common/TransposeConfig.d.ts +30 -0
- package/src/PredefinedConfig/Common/Types.d.ts +4 -4
- package/src/PredefinedConfig/Common/Types.js +4 -1
- package/src/PredefinedConfig/FormatColumnState.d.ts +6 -1
- package/src/PredefinedConfig/LayoutState.d.ts +5 -0
- package/src/PredefinedConfig/{NotesState.d.ts → NoteState.d.ts} +12 -22
- package/src/PredefinedConfig/PopupState.d.ts +1 -2
- package/src/PredefinedConfig/PredefinedConfig.d.ts +3 -3
- package/src/PredefinedConfig/Selection/GridCell.d.ts +13 -0
- package/src/PredefinedConfig/StyledColumnState.d.ts +5 -0
- package/src/PredefinedConfig/SystemState.d.ts +12 -4
- package/src/Redux/ActionsReducers/CommentsRedux.d.ts +0 -4
- package/src/Redux/ActionsReducers/CommentsRedux.js +0 -34
- package/src/Redux/ActionsReducers/LayoutRedux.d.ts +9 -0
- package/src/Redux/ActionsReducers/LayoutRedux.js +32 -10
- package/src/Redux/ActionsReducers/NoteRedux.d.ts +38 -0
- package/src/Redux/ActionsReducers/{NotesRedux.js → NoteRedux.js} +29 -28
- package/src/Redux/ActionsReducers/PopupRedux.d.ts +5 -13
- package/src/Redux/ActionsReducers/PopupRedux.js +0 -19
- package/src/Redux/ActionsReducers/SystemRedux.d.ts +15 -4
- package/src/Redux/ActionsReducers/SystemRedux.js +24 -9
- package/src/Redux/Store/AdaptableStore.d.ts +4 -6
- package/src/Redux/Store/AdaptableStore.js +70 -80
- package/src/Redux/Store/Interface/IAdaptableStore.d.ts +8 -2
- package/src/Strategy/AdaptableModuleBase.d.ts +11 -12
- package/src/Strategy/AdaptableModuleBase.js +17 -23
- package/src/Strategy/AlertModule.d.ts +2 -3
- package/src/Strategy/AlertModule.js +4 -57
- package/src/Strategy/BulkUpdateModule.d.ts +1 -1
- package/src/Strategy/BulkUpdateModule.js +2 -1
- package/src/Strategy/CalculatedColumnModule.d.ts +4 -5
- package/src/Strategy/CalculatedColumnModule.js +8 -28
- package/src/Strategy/CellSummaryModule.d.ts +10 -8
- package/src/Strategy/CellSummaryModule.js +85 -70
- package/src/Strategy/ChartingModule.d.ts +0 -1
- package/src/Strategy/ChartingModule.js +2 -22
- package/src/Strategy/ColumnFilterModule.d.ts +3 -4
- package/src/Strategy/ColumnFilterModule.js +37 -121
- package/src/Strategy/ColumnInfoModule.d.ts +2 -2
- package/src/Strategy/ColumnInfoModule.js +6 -4
- package/src/Strategy/CommentModule.d.ts +11 -0
- package/src/Strategy/CommentModule.js +70 -0
- package/src/Strategy/CustomSortModule.d.ts +1 -1
- package/src/Strategy/CustomSortModule.js +4 -3
- package/src/Strategy/DashboardModule.d.ts +3 -4
- package/src/Strategy/DashboardModule.js +11 -28
- package/src/Strategy/DataChangeHistoryModule.d.ts +1 -0
- package/src/Strategy/DataChangeHistoryModule.js +3 -1
- package/src/Strategy/DataImportModule.d.ts +4 -4
- package/src/Strategy/DataImportModule.js +8 -8
- package/src/Strategy/DataSetModule.d.ts +1 -1
- package/src/Strategy/DataSetModule.js +1 -1
- package/src/Strategy/ExportModule.d.ts +1 -2
- package/src/Strategy/ExportModule.js +39 -42
- package/src/Strategy/Fdc3Module.d.ts +1 -1
- package/src/Strategy/Fdc3Module.js +3 -13
- package/src/Strategy/FlashingCellModule.d.ts +3 -4
- package/src/Strategy/FlashingCellModule.js +8 -21
- package/src/Strategy/FormatColumnModule.d.ts +1 -3
- package/src/Strategy/FormatColumnModule.js +27 -91
- package/src/Strategy/FreeTextColumnModule.d.ts +1 -2
- package/src/Strategy/FreeTextColumnModule.js +2 -32
- package/src/Strategy/GridFilterModule.d.ts +0 -1
- package/src/Strategy/GridFilterModule.js +0 -37
- package/src/Strategy/GridInfoModule.d.ts +2 -2
- package/src/Strategy/GridInfoModule.js +5 -3
- package/src/Strategy/Interface/IModule.d.ts +3 -4
- package/src/Strategy/LayoutModule.d.ts +5 -6
- package/src/Strategy/LayoutModule.js +77 -122
- package/src/Strategy/NamedQueryModule.d.ts +0 -1
- package/src/Strategy/NamedQueryModule.js +0 -19
- package/src/Strategy/{NotesModule.d.ts → NoteModule.d.ts} +3 -3
- package/src/Strategy/NoteModule.js +55 -0
- package/src/Strategy/PlusMinusModule.d.ts +2 -2
- package/src/Strategy/PlusMinusModule.js +3 -3
- package/src/Strategy/ScheduleModule.d.ts +1 -1
- package/src/Strategy/ScheduleModule.js +1 -1
- package/src/Strategy/SettingsPanelModule.d.ts +3 -3
- package/src/Strategy/SettingsPanelModule.js +6 -6
- package/src/Strategy/ShortcutModule.d.ts +1 -1
- package/src/Strategy/ShortcutModule.js +1 -1
- package/src/Strategy/SmartEditModule.d.ts +1 -1
- package/src/Strategy/SmartEditModule.js +2 -1
- package/src/Strategy/StyledColumnModule.d.ts +2 -2
- package/src/Strategy/StyledColumnModule.js +45 -40
- package/src/Strategy/SystemStatusModule.d.ts +2 -2
- package/src/Strategy/SystemStatusModule.js +4 -3
- package/src/Strategy/TeamSharingModule.d.ts +1 -0
- package/src/Strategy/TeamSharingModule.js +5 -5
- package/src/Strategy/ToolPanelModule.d.ts +0 -1
- package/src/Strategy/ToolPanelModule.js +0 -23
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +1 -0
- package/src/Strategy/Utilities/getScopeViewItems.js +3 -0
- package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
- package/src/Utilities/Constants/GeneralConstants.d.ts +2 -0
- package/src/Utilities/Constants/GeneralConstants.js +2 -0
- package/src/Utilities/Constants/ModuleConstants.d.ts +6 -6
- package/src/Utilities/Constants/ModuleConstants.js +6 -6
- package/src/Utilities/Defaults/DefaultSettingsPanel.js +7 -6
- package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +3 -2
- package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +433 -3
- package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +3 -3
- package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +1 -1
- package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +1 -1
- package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +15 -0
- package/src/Utilities/Extensions/ArrayExtensions.d.ts +2 -0
- package/src/Utilities/Extensions/ArrayExtensions.js +4 -0
- package/src/Utilities/Helpers/AdaptableHelper.d.ts +3 -4
- package/src/Utilities/Helpers/AdaptableHelper.js +19 -58
- package/src/Utilities/Helpers/Helper.d.ts +2 -0
- package/src/Utilities/Helpers/Helper.js +4 -0
- package/src/Utilities/Interface/MessagePopups.d.ts +0 -3
- package/src/Utilities/MenuItem.d.ts +7 -4
- package/src/Utilities/MenuItem.js +6 -3
- package/src/Utilities/ObjectFactory.d.ts +3 -3
- package/src/Utilities/ObjectFactory.js +6 -24
- package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +4 -2
- package/src/Utilities/Services/AggregatedScalarLiveValue.js +26 -19
- package/src/Utilities/Services/CellPopupService.js +2 -3
- package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +1 -1
- package/src/Utilities/Services/Interface/IReportService.d.ts +1 -4
- package/src/Utilities/Services/LicenseService/index.d.ts +3 -0
- package/src/Utilities/Services/LicenseService/index.js +1 -181
- package/src/Utilities/Services/MetamodelService.d.ts +1 -1
- package/src/Utilities/Services/MetamodelService.js +6 -3
- package/src/Utilities/Services/ModuleService.js +6 -2
- package/src/Utilities/Services/QueryLanguageService.d.ts +1 -1
- package/src/Utilities/Services/QueryLanguageService.js +4 -3
- package/src/Utilities/Services/ReportService.d.ts +7 -5
- package/src/Utilities/Services/ReportService.js +243 -24
- package/src/Utilities/Services/RowEditService.d.ts +3 -2
- package/src/Utilities/Services/RowEditService.js +3 -1
- package/src/Utilities/Services/RowSummaryService.d.ts +22 -0
- package/src/Utilities/Services/RowSummaryService.js +141 -0
- package/src/Utilities/adaptableQlUtils.d.ts +2 -0
- package/src/Utilities/adaptableQlUtils.js +14 -0
- package/src/Utilities/license/decode.js +1 -65
- package/src/Utilities/license/hashing.js +1 -43
- package/src/View/AdaptableView.js +1 -3
- package/src/View/AdaptableViewFactory.js +2 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +2 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +1 -1
- package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +3 -3
- package/src/View/CalculatedColumn/utils.d.ts +1 -1
- package/src/View/CellSummary/CellSummaryPopup.js +1 -1
- package/src/View/Comments/CommentsEditor.js +28 -17
- package/src/View/Comments/CommentsPopup.js +25 -13
- package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
- package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.d.ts +5 -0
- package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.js +42 -0
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +5 -2
- package/src/View/Components/CellPopup/index.d.ts +1 -0
- package/src/View/Components/CellPopup/index.js +6 -3
- package/src/View/Components/FilterForm/FilterForm.js +20 -12
- package/src/View/Components/FilterForm/QuickFilterForm.js +15 -8
- package/src/View/Components/FilterForm/QuickFilterValues.js +39 -23
- package/src/View/Components/NewScopeComponent.js +34 -1
- package/src/View/Components/Popups/AdaptableLoadingScreen.d.ts +6 -5
- package/src/View/Components/Popups/AdaptableLoadingScreen.js +19 -9
- package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +9 -1
- package/src/View/Components/Popups/AdaptableToaster.js +1 -1
- package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +7 -7
- package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +1 -0
- package/src/View/Components/Popups/WindowPopups/windowFactory.js +3 -0
- package/src/View/Components/Selectors/PermittedValuesSelector.js +2 -2
- package/src/View/Components/ValueSelector/index.d.ts +1 -0
- package/src/View/Components/ValueSelector/index.js +2 -2
- package/src/View/CustomSort/CustomSortSummary.js +1 -1
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +8 -9
- package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +19 -6
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +11 -7
- package/src/View/FreeTextColumn/FreeTextColumnSummary.js +1 -1
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +3 -1
- package/src/View/GridFilter/GridFilterViewPanel.js +9 -5
- package/src/View/GridFilter/useGridFilterExpressionEditor.js +1 -1
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -3
- package/src/View/Layout/LayoutViewPanel.js +2 -1
- package/src/View/Layout/TransposedPopup.d.ts +3 -0
- package/src/View/Layout/TransposedPopup.js +195 -0
- package/src/View/Layout/Wizard/LayoutWizard.js +38 -3
- package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -1
- package/src/View/Layout/Wizard/sections/FilterSection.js +1 -1
- package/src/View/Layout/Wizard/sections/RowGroupingSection.js +17 -1
- package/src/View/Layout/Wizard/sections/RowSummarySection.d.ts +9 -0
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +174 -0
- package/src/View/License/LicenseWatermark.js +1 -61
- package/src/View/Note/NotePopup.d.ts +2 -0
- package/src/View/{Notes/NotesPopup.js → Note/NotePopup.js} +20 -17
- package/src/View/SpecialColumnSettingsWizardStep.js +4 -4
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardSettingsSection.js +14 -10
- package/src/View/Theme/ThemeSelector.js +3 -3
- package/src/agGrid/ActionColumnRenderer.js +7 -6
- package/src/agGrid/Adaptable.d.ts +3 -455
- package/src/agGrid/Adaptable.js +8 -5292
- package/src/agGrid/AdaptableAgGrid.d.ts +346 -0
- package/src/agGrid/AdaptableAgGrid.js +3910 -0
- package/src/agGrid/AdaptableLogger.js +77 -11
- package/src/agGrid/AgGridAdapter.d.ts +64 -0
- package/src/agGrid/AgGridAdapter.js +589 -0
- package/src/agGrid/AgGridColumnAdapter.d.ts +54 -0
- package/src/agGrid/AgGridColumnAdapter.js +794 -0
- package/src/agGrid/AgGridMenuAdapter.d.ts +44 -0
- package/src/agGrid/AgGridMenuAdapter.js +600 -0
- package/src/agGrid/AgGridOptionsService.d.ts +15 -0
- package/src/agGrid/AgGridOptionsService.js +76 -0
- package/src/agGrid/BadgeRenderer.js +8 -2
- package/src/agGrid/CheckboxRenderer.js +1 -1
- package/src/agGrid/FilterWrapper.d.ts +2 -2
- package/src/agGrid/FilterWrapper.js +1 -1
- package/src/agGrid/PercentBarRenderer.js +3 -1
- package/src/agGrid/attachAddaptableColumnTypes.d.ts +12 -12
- package/src/agGrid/buildSortedColumnStateForLayout.d.ts +7 -0
- package/src/agGrid/buildSortedColumnStateForLayout.js +120 -0
- package/src/agGrid/defaultAdaptableOptions.d.ts +3 -0
- package/src/{Utilities/Defaults/DefaultAdaptableOptions.js → agGrid/defaultAdaptableOptions.js} +71 -18
- package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +1 -1
- package/src/agGrid/editors/AdaptableDateEditor/index.js +3 -3
- package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +2 -2
- package/src/agGrid/editors/AdaptableNumberEditor/index.js +2 -2
- package/src/agGrid/sortColumnStateForVisibleColumns.d.ts +12 -0
- package/src/agGrid/sortColumnStateForVisibleColumns.js +46 -0
- package/src/agGrid/weightedAverage.d.ts +0 -2
- package/src/agGrid/weightedAverage.js +0 -54
- package/src/components/CheckBox/index.js +1 -1
- package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
- package/src/components/Datepicker/index.d.ts +1 -1
- package/src/components/Datepicker/index.js +10 -2
- package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -1
- package/src/components/ExpressionEditor/QueryBuilder/utils.d.ts +0 -1
- package/src/components/ExpressionEditor/QueryBuilder/utils.js +1 -14
- package/src/components/InfiniteTable/index.js +2 -2
- package/src/components/Input/index.d.ts +1 -2
- package/src/components/List/ListGroupItem/index.d.ts +1 -1
- package/src/components/Modal/index.d.ts +1 -0
- package/src/components/Modal/index.js +4 -3
- package/src/components/ProgressIndicator/ProgressIndicator.js +15 -6
- package/src/components/Select/Select.d.ts +3 -1
- package/src/components/Select/Select.js +4 -2
- package/src/components/Textarea/index.d.ts +2 -2
- package/src/components/icons/copy.d.ts +3 -0
- package/src/components/icons/copy.js +4 -0
- package/src/components/icons/filter-off.d.ts +3 -0
- package/src/components/icons/filter-off.js +4 -0
- package/src/components/icons/grid-info.d.ts +3 -0
- package/src/components/icons/grid-info.js +4 -0
- package/src/components/icons/index.js +14 -0
- package/src/components/icons/note.js +2 -2
- package/src/components/icons/rows.d.ts +3 -0
- package/src/components/icons/rows.js +4 -0
- package/src/components/icons/select-all.d.ts +3 -0
- package/src/components/icons/select-all.js +4 -0
- package/src/components/icons/select-fwd.d.ts +3 -0
- package/src/components/icons/select-fwd.js +4 -0
- package/src/components/icons/select-off.d.ts +3 -0
- package/src/components/icons/select-off.js +4 -0
- package/src/env.js +2 -2
- package/src/metamodel/adaptable.metamodel.d.ts +203 -47
- package/src/metamodel/adaptable.metamodel.js +1 -9313
- package/src/migration/AdaptableUpgradeHelper.d.ts +38 -0
- package/src/migration/AdaptableUpgradeHelper.js +48 -0
- package/src/migration/VersionUpgrade.d.ts +8 -0
- package/src/migration/VersionUpgrade.js +11 -0
- package/src/migration/VersionUpgrade17.d.ts +18 -0
- package/src/migration/VersionUpgrade17.js +342 -0
- package/src/migration/VersionUpgrade18.d.ts +5 -0
- package/src/migration/VersionUpgrade18.js +6 -0
- package/src/parser/src/parser.js +576 -553
- package/src/parser/src/predicate/mapExpressionToQlPredicate.js +1 -1
- package/src/parser/src/predicate/mapQlPredicateToExpression.js +3 -4
- package/src/parser/src/types.d.ts +7 -2
- package/src/parser/src/types.js +1 -2
- package/src/types.d.ts +27 -20
- package/tsconfig.esm.tsbuildinfo +1 -1
- package/src/AdaptableOptions/CommentsOptions.d.ts +0 -28
- package/src/AdaptableOptions/NotesOptions.d.ts +0 -16
- package/src/Api/Events/CommentsChangedInfo.d.ts +0 -5
- package/src/Api/Implementation/NotesApiImpl.d.ts +0 -16
- package/src/Api/Implementation/NotesApiImpl.js +0 -39
- package/src/Api/NotesApi.d.ts +0 -48
- package/src/PredefinedConfig/CellAddress.d.ts +0 -13
- package/src/PredefinedConfig/CellAddress.js +0 -4
- package/src/Redux/ActionsReducers/NotesRedux.d.ts +0 -39
- package/src/Strategy/CommentsModule.d.ts +0 -16
- package/src/Strategy/CommentsModule.js +0 -77
- package/src/Strategy/NotesModule.js +0 -57
- package/src/Utilities/Defaults/DefaultAdaptableOptions.d.ts +0 -2
- package/src/Utilities/Services/Interface/IRowEditService.d.ts +0 -3
- package/src/View/Components/ScopeComponent.d.ts +0 -24
- package/src/View/Components/ScopeComponent.js +0 -133
- package/src/View/Export/Wizard/ReportScopeWizard.d.ts +0 -17
- package/src/View/Export/Wizard/ReportScopeWizard.js +0 -47
- package/src/View/Notes/NotesPopup.d.ts +0 -2
- package/src/agGrid/agGridHelper.d.ts +0 -57
- package/src/agGrid/agGridHelper.js +0 -686
- package/src/agGrid/agGridMenuHelper.d.ts +0 -46
- package/src/agGrid/agGridMenuHelper.js +0 -668
- /package/src/AdaptableOptions/{CommentsOptions.js → CommentOptions.js} +0 -0
- /package/src/AdaptableOptions/{NotesOptions.js → NoteOptions.js} +0 -0
- /package/src/Api/Events/{CommentsChangedInfo.js → CommentChanged.js} +0 -0
- /package/src/Api/{NotesApi.js → NoteApi.js} +0 -0
- /package/src/PredefinedConfig/{NotesState.js → Common/TransposeConfig.js} +0 -0
- /package/src/{Utilities/Services/Interface/IRowEditService.js → PredefinedConfig/NoteState.js} +0 -0
- /package/src/View/{Notes → Note}/NoteEditor.d.ts +0 -0
- /package/src/View/{Notes → Note}/NoteEditor.js +0 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export class AgGridOptionsService {
|
|
2
|
+
constructor(adaptableInstance) {
|
|
3
|
+
this.adaptableInstance = adaptableInstance;
|
|
4
|
+
this.gridOptionsPropertyCache = new Map();
|
|
5
|
+
this.colDefPropertyCache = new Map();
|
|
6
|
+
}
|
|
7
|
+
destroy() {
|
|
8
|
+
this.gridOptionsPropertyCache.clear();
|
|
9
|
+
this.colDefPropertyCache.clear();
|
|
10
|
+
this.gridOptionsPropertyCache = null;
|
|
11
|
+
this.colDefPropertyCache = null;
|
|
12
|
+
}
|
|
13
|
+
setGridOptionsProperty(gridOptions, propertyName, propertyGetter) {
|
|
14
|
+
if (this.adaptableInstance.lifecycleState === 'preDestroyed') {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const userKey = `user.${propertyName}`;
|
|
18
|
+
const adaptableKey = `adaptable.${propertyName}`;
|
|
19
|
+
const value = gridOptions[propertyName];
|
|
20
|
+
const isUserDefined = value !== this.gridOptionsPropertyCache.get(adaptableKey);
|
|
21
|
+
if (isUserDefined) {
|
|
22
|
+
this.gridOptionsPropertyCache.set(userKey, value);
|
|
23
|
+
}
|
|
24
|
+
const userValue = this.gridOptionsPropertyCache.get(userKey);
|
|
25
|
+
let adaptableValue = propertyGetter(userValue);
|
|
26
|
+
if (typeof adaptableValue === 'function') {
|
|
27
|
+
const previousValue = adaptableValue;
|
|
28
|
+
// @ts-ignore we know that adaptableValue is a function
|
|
29
|
+
adaptableValue = (...args) => {
|
|
30
|
+
if (this.adaptableInstance.isDestroyed) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
this.agGridAdapter.grabAgGridApiOnTheFly(args);
|
|
34
|
+
return previousValue(...args);
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
if (adaptableValue != null) {
|
|
38
|
+
this.gridOptionsPropertyCache.set(adaptableKey, adaptableValue);
|
|
39
|
+
}
|
|
40
|
+
gridOptions[propertyName] = adaptableValue !== null && adaptableValue !== void 0 ? adaptableValue : userValue;
|
|
41
|
+
return gridOptions;
|
|
42
|
+
}
|
|
43
|
+
getUserGridOptionsProperty(propertyName) {
|
|
44
|
+
const userKey = `user.${propertyName}`;
|
|
45
|
+
return this.gridOptionsPropertyCache.get(userKey);
|
|
46
|
+
}
|
|
47
|
+
revertGridOptionsPropertyToUserValue(propertyName) {
|
|
48
|
+
const userKey = `user.${propertyName}`;
|
|
49
|
+
const userValue = this.gridOptionsPropertyCache.get(userKey);
|
|
50
|
+
this.agGridAdapter.setGridOption(propertyName, userValue);
|
|
51
|
+
}
|
|
52
|
+
CAREFUL_patchGridOptionsProperty(propertyName, value) {
|
|
53
|
+
var _a;
|
|
54
|
+
// @ts-ignore this is required to set gridOptions peroperties which are marked as initial (writable once, before grid is initialised)
|
|
55
|
+
const gos = (_a = this.agGridAdapter.getAgGridApi()) === null || _a === void 0 ? void 0 : _a.gos;
|
|
56
|
+
if (gos) {
|
|
57
|
+
gos.updateGridOptions({
|
|
58
|
+
options: {
|
|
59
|
+
[propertyName]: value,
|
|
60
|
+
},
|
|
61
|
+
source: 'api',
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
revertGridOptionsPropertiesToUserValue(gridOptions, propertyNames) {
|
|
66
|
+
for (const propertyName of propertyNames) {
|
|
67
|
+
// see this.setGridOptionsProperty(...)
|
|
68
|
+
const userKey = `user.${propertyName}`;
|
|
69
|
+
const userValue = this.gridOptionsPropertyCache.get(userKey);
|
|
70
|
+
gridOptions[propertyName] = userValue;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
get agGridAdapter() {
|
|
74
|
+
return this.adaptableInstance.agGridAdapter;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
import { Badge } from '../View/Components/Badge';
|
|
2
2
|
import { renderWithAdaptableContext } from '../View/renderWithAdaptableContext';
|
|
3
3
|
import * as React from 'react';
|
|
4
|
+
import { ROW_SUMMARY_ROW_ID } from '../PredefinedConfig/Common/RowSummary';
|
|
4
5
|
export const getBadgeRendererForColumn = (styledColumn, abColumn, api) => {
|
|
5
6
|
if (!styledColumn.BadgeStyle) {
|
|
6
7
|
return;
|
|
7
8
|
}
|
|
8
9
|
return class BadgetRenderer {
|
|
9
10
|
getAdaptableInstance(params) {
|
|
10
|
-
const adaptable = params.
|
|
11
|
+
const adaptable = params.context.__adaptable;
|
|
11
12
|
return adaptable;
|
|
12
13
|
}
|
|
13
14
|
init(params) {
|
|
14
|
-
var _a, _b, _c;
|
|
15
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
15
16
|
const adaptable = this.getAdaptableInstance(params);
|
|
16
17
|
const adapatableApi = adaptable.api;
|
|
17
18
|
this.eGui = document.createElement('div');
|
|
@@ -23,6 +24,11 @@ export const getBadgeRendererForColumn = (styledColumn, abColumn, api) => {
|
|
|
23
24
|
this.eGui.innerHTML = formattedValue;
|
|
24
25
|
return;
|
|
25
26
|
}
|
|
27
|
+
if (((_d = params === null || params === void 0 ? void 0 : params.data) === null || _d === void 0 ? void 0 : _d[ROW_SUMMARY_ROW_ID]) && !styledColumn.IncludeRowSummaries) {
|
|
28
|
+
const formattedValue = (_g = (_f = (_e = params.formatValue) === null || _e === void 0 ? void 0 : _e.call(params, params.value)) !== null && _f !== void 0 ? _f : params.value) !== null && _g !== void 0 ? _g : '';
|
|
29
|
+
this.eGui.innerHTML = formattedValue;
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
26
32
|
if (['NumberArray', 'StringArray'].includes(abColumn.dataType)) {
|
|
27
33
|
this.renderArrayValues(params, adapatableApi);
|
|
28
34
|
}
|
|
@@ -65,7 +65,7 @@ export class CheckboxEditor {
|
|
|
65
65
|
// however, using ReactUI makes some race conditions possible, in which cases the editor will be displayed for a few milliseconds
|
|
66
66
|
// we provide this logic for those few cases (to avoid a flicker effect)
|
|
67
67
|
init(params) {
|
|
68
|
-
const adaptable = params.
|
|
68
|
+
const adaptable = params.context.__adaptable;
|
|
69
69
|
const inputElement = document.createElement('input');
|
|
70
70
|
inputElement.type = 'checkbox';
|
|
71
71
|
inputElement.checked = params.value;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare
|
|
1
|
+
import { AdaptableAgGrid } from './AdaptableAgGrid';
|
|
2
|
+
export declare const FilterWrapperFactory: (adaptable: AdaptableAgGrid) => any;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { forwardRef, useImperativeHandle, useState } from 'react';
|
|
3
3
|
import { FilterFormReact } from '../View/Components/FilterForm/FilterForm';
|
|
4
|
-
export
|
|
4
|
+
export const FilterWrapperFactory = (adaptable) => {
|
|
5
5
|
function isFilterActive(colId) {
|
|
6
6
|
// we need this here
|
|
7
7
|
if (adaptable.isDestroyed) {
|
|
@@ -13,7 +13,9 @@ export const getPercentBarRendererForColumn = (styledColumn, abColumn, api) => {
|
|
|
13
13
|
if (Helper.objectNotExists(value)) {
|
|
14
14
|
value = 0;
|
|
15
15
|
}
|
|
16
|
-
|
|
16
|
+
// No longer support showing Percent Bar in Grouped Rows
|
|
17
|
+
if (api.gridApi.isGroupRowNode(params.node)) {
|
|
18
|
+
// if (!styledColumn.IncludeGroupedRows && api.gridApi.isGroupRowNode(params.node)) {
|
|
17
19
|
if (params.value) {
|
|
18
20
|
this.eGui = document.createElement('div');
|
|
19
21
|
this.eGui.append(params.value);
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { GridOptions } from '@ag-grid-community/core';
|
|
2
2
|
export declare const attachColumnTypes: (gridOptions: GridOptions) => {
|
|
3
|
-
[key: string]: import("@ag-grid-community/core").
|
|
3
|
+
[key: string]: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
4
4
|
} & {
|
|
5
|
-
[x: string]: import("@ag-grid-community/core").
|
|
6
|
-
abColDefNumber: import("@ag-grid-community/core").
|
|
7
|
-
abColDefString: import("@ag-grid-community/core").
|
|
8
|
-
abColDefBoolean: import("@ag-grid-community/core").
|
|
9
|
-
abColDefDate: import("@ag-grid-community/core").
|
|
10
|
-
abColDefObject: import("@ag-grid-community/core").
|
|
11
|
-
abColDefCustom: import("@ag-grid-community/core").
|
|
12
|
-
abColDefStringArray: import("@ag-grid-community/core").
|
|
13
|
-
abColDefNumberArray: import("@ag-grid-community/core").
|
|
14
|
-
abColDefTupleNumberArray: import("@ag-grid-community/core").
|
|
15
|
-
abColDefObjectNumberArray: import("@ag-grid-community/core").
|
|
5
|
+
[x: string]: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
6
|
+
abColDefNumber: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
7
|
+
abColDefString: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
8
|
+
abColDefBoolean: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
9
|
+
abColDefDate: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
10
|
+
abColDefObject: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
11
|
+
abColDefCustom: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
12
|
+
abColDefStringArray: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
13
|
+
abColDefNumberArray: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
14
|
+
abColDefTupleNumberArray: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
15
|
+
abColDefObjectNumberArray: import("@ag-grid-community/core").ColTypeDef<any, any>;
|
|
16
16
|
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ColumnState, GridOptions } from '@ag-grid-community/core';
|
|
2
|
+
import { Layout } from '../types';
|
|
3
|
+
export declare function buildSortedColumnStateForLayout(params: {
|
|
4
|
+
columnState: ColumnState[];
|
|
5
|
+
layout: Layout;
|
|
6
|
+
gridOptions: GridOptions;
|
|
7
|
+
}): ColumnState[];
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { AG_GRID_GROUPED_COLUMN } from '../Utilities/Constants/GeneralConstants';
|
|
2
|
+
import { getAutoRowGroupColumnIdFor } from '../Api/Internal/ColumnInternalApi';
|
|
3
|
+
import { isAutoRowGroupColumn } from '../Api/Implementation/ColumnApiImpl';
|
|
4
|
+
import { sortColumnStateForVisibleColumns } from './sortColumnStateForVisibleColumns';
|
|
5
|
+
export function buildSortedColumnStateForLayout(params) {
|
|
6
|
+
const { columnState, layout, gridOptions } = params;
|
|
7
|
+
let visibleColumnList = [...layout.Columns];
|
|
8
|
+
const multipleGroupColumns = gridOptions.groupDisplayType === 'multipleColumns';
|
|
9
|
+
const singleGroupColumn = !multipleGroupColumns;
|
|
10
|
+
const rowGroupedColumnsIndexes = {};
|
|
11
|
+
let generatedRowGroupColumnsIds = [];
|
|
12
|
+
// here we make sure the visibleColumnList includes all the generated group columns
|
|
13
|
+
if (layout.RowGroupedColumns) {
|
|
14
|
+
layout.RowGroupedColumns.forEach((colId, index) => {
|
|
15
|
+
rowGroupedColumnsIndexes[colId] = index;
|
|
16
|
+
rowGroupedColumnsIndexes[getAutoRowGroupColumnIdFor(colId)] = index;
|
|
17
|
+
});
|
|
18
|
+
// if the layout does not include the grouped columns,
|
|
19
|
+
// make sure we add the grouped columns to the visible column list
|
|
20
|
+
// at the start of the list
|
|
21
|
+
if (singleGroupColumn) {
|
|
22
|
+
if (!visibleColumnList.includes(AG_GRID_GROUPED_COLUMN)) {
|
|
23
|
+
visibleColumnList = [AG_GRID_GROUPED_COLUMN, ...visibleColumnList];
|
|
24
|
+
}
|
|
25
|
+
generatedRowGroupColumnsIds.push(AG_GRID_GROUPED_COLUMN);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
let missingGroupColumns = 0;
|
|
29
|
+
[...layout.RowGroupedColumns].reverse().forEach((colId) => {
|
|
30
|
+
const groupColId = getAutoRowGroupColumnIdFor(colId);
|
|
31
|
+
if (!visibleColumnList.includes(groupColId)) {
|
|
32
|
+
visibleColumnList = [groupColId, ...visibleColumnList];
|
|
33
|
+
missingGroupColumns++;
|
|
34
|
+
}
|
|
35
|
+
generatedRowGroupColumnsIds = [groupColId, ...generatedRowGroupColumnsIds];
|
|
36
|
+
});
|
|
37
|
+
// now we need to sort the visibleColumnList to contain the group columns
|
|
38
|
+
// in the correct order
|
|
39
|
+
// but we only need to do this if the layout.Columns list missed some of the
|
|
40
|
+
// group columns, but not all of them. if all were missing, we already
|
|
41
|
+
// inserted them at the start of the list
|
|
42
|
+
if (missingGroupColumns && missingGroupColumns < layout.RowGroupedColumns.length) {
|
|
43
|
+
visibleColumnList.sort((colId1, colId2) => {
|
|
44
|
+
const isRowGroup1 = isAutoRowGroupColumn(colId1);
|
|
45
|
+
const isRowGroup2 = isAutoRowGroupColumn(colId2);
|
|
46
|
+
if (isRowGroup1 && isRowGroup2) {
|
|
47
|
+
return rowGroupedColumnsIndexes[colId1] - rowGroupedColumnsIndexes[colId2];
|
|
48
|
+
}
|
|
49
|
+
return 0;
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const visibleColumnsIndexes = visibleColumnList.reduce((acc, colId, index) => {
|
|
55
|
+
acc[colId] = index;
|
|
56
|
+
return acc;
|
|
57
|
+
}, {});
|
|
58
|
+
const pivotMode = layout.EnablePivot;
|
|
59
|
+
if (pivotMode) {
|
|
60
|
+
// in pivot mode, we sort the Visible columns of the layout
|
|
61
|
+
// to make sure the group cols are at the beginning
|
|
62
|
+
const groupCols = visibleColumnList.filter(isAutoRowGroupColumn);
|
|
63
|
+
visibleColumnList = visibleColumnList.filter((colId) => !isAutoRowGroupColumn(colId));
|
|
64
|
+
visibleColumnList = [...groupCols, ...visibleColumnList];
|
|
65
|
+
}
|
|
66
|
+
// we're now ready to go over the columnState
|
|
67
|
+
// we want as much as possible to keep the order of the columns
|
|
68
|
+
// as they are in the column state.
|
|
69
|
+
// if the order is different in the visibleColumns, we only move those columns around
|
|
70
|
+
// if some columns in the columnState are not in the visibleColumns, we need to return them as hide: true
|
|
71
|
+
// first step - keep the same order, but filter out old group columns
|
|
72
|
+
// VERY IMPORTANT to only filter out OLD group columns, that is,
|
|
73
|
+
// group columns that are not in the layout anymore
|
|
74
|
+
// since we might have different group columns in the layout
|
|
75
|
+
let newColumnState = [...columnState].filter((colState) => {
|
|
76
|
+
const { colId } = colState;
|
|
77
|
+
if (isAutoRowGroupColumn(colId) && rowGroupedColumnsIndexes[colId] == null) {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
return true;
|
|
81
|
+
});
|
|
82
|
+
// second step - keep the same order
|
|
83
|
+
// but make sure the visibility is adjusted to reflect the
|
|
84
|
+
// visible columns in the layout
|
|
85
|
+
newColumnState = newColumnState.map((colState) => {
|
|
86
|
+
const { colId } = colState;
|
|
87
|
+
const visibleIndex = visibleColumnsIndexes[colId];
|
|
88
|
+
if (visibleIndex == null) {
|
|
89
|
+
return Object.assign(Object.assign({}, colState), { hide: true });
|
|
90
|
+
}
|
|
91
|
+
return Object.assign(Object.assign({}, colState), { hide: null });
|
|
92
|
+
});
|
|
93
|
+
// third step - correctly mark the columns that are grouped
|
|
94
|
+
newColumnState = newColumnState.map((colState) => {
|
|
95
|
+
const { colId } = colState;
|
|
96
|
+
const groupIndex = rowGroupedColumnsIndexes[colId];
|
|
97
|
+
if (groupIndex != null) {
|
|
98
|
+
return Object.assign(Object.assign({}, colState), { rowGroup: true, rowGroupIndex: groupIndex });
|
|
99
|
+
}
|
|
100
|
+
return Object.assign(Object.assign({}, colState), { rowGroup: false, rowGroupIndex: null });
|
|
101
|
+
});
|
|
102
|
+
// fourth step - add the new group columns, if they are missing
|
|
103
|
+
const columnStateIndexes = newColumnState.reduce((acc, colState, index) => {
|
|
104
|
+
acc[colState.colId] = index;
|
|
105
|
+
return acc;
|
|
106
|
+
}, {});
|
|
107
|
+
generatedRowGroupColumnsIds.reverse().forEach((rowGroupColId) => {
|
|
108
|
+
if (columnStateIndexes[rowGroupColId] == null) {
|
|
109
|
+
newColumnState = [
|
|
110
|
+
{
|
|
111
|
+
colId: rowGroupColId,
|
|
112
|
+
},
|
|
113
|
+
...newColumnState,
|
|
114
|
+
];
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
// fitfth step - sort the column state to respect the order of the visible columns
|
|
118
|
+
// we can't simply call sort in this case
|
|
119
|
+
return sortColumnStateForVisibleColumns(newColumnState, visibleColumnList);
|
|
120
|
+
}
|
package/src/{Utilities/Defaults/DefaultAdaptableOptions.js → agGrid/defaultAdaptableOptions.js}
RENAMED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import * as GeneralConstants from '../Constants/GeneralConstants';
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import * as ModuleConstants from '
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import * as GeneralConstants from '../Utilities/Constants/GeneralConstants';
|
|
2
|
+
import UIHelper, { getHexForName, GRAY, GREEN, RED } from '../View/UIHelper';
|
|
3
|
+
import { EMPTY_ARRAY } from '../Utilities/Constants/GeneralConstants';
|
|
4
|
+
import { ExportDestination } from '../PredefinedConfig/Common/Enums';
|
|
5
|
+
import { SystemAlertPredicateIds, SystemBadgeStylePredicateIds, SystemFilterPredicateIds, SystemFlashingCellPredicateIds, SystemFormatColumnPredicateIds, } from '../PredefinedConfig/Common/AdaptablePredicate';
|
|
6
|
+
import * as ModuleConstants from '../Utilities/Constants/ModuleConstants';
|
|
7
|
+
import { initPredefinedConfigWithUuids } from '../Utilities/Helpers/AdaptableHelper';
|
|
8
|
+
const DefaultAdaptableOptions = {
|
|
9
9
|
adaptableId: GeneralConstants.ADAPTABLE_ID,
|
|
10
10
|
adaptableStateKey: undefined,
|
|
11
11
|
primaryKey: '',
|
|
@@ -143,8 +143,6 @@ export const DefaultAdaptableOptions = {
|
|
|
143
143
|
customSortOptions: { customSortComparers: undefined },
|
|
144
144
|
dataSetOptions: { dataSets: EMPTY_ARRAY },
|
|
145
145
|
groupingOptions: {
|
|
146
|
-
showGroupingTotalsAsHeader: false,
|
|
147
|
-
balancedGroupsKey: undefined,
|
|
148
146
|
restoreUngroupedColumns: false,
|
|
149
147
|
autoOrderGroupedColumns: true,
|
|
150
148
|
},
|
|
@@ -169,13 +167,6 @@ export const DefaultAdaptableOptions = {
|
|
|
169
167
|
menuOptions: {
|
|
170
168
|
customColumnMenu: undefined,
|
|
171
169
|
customContextMenu: undefined,
|
|
172
|
-
showAdaptableContextMenu: true,
|
|
173
|
-
showAdaptableColumnMenu: true,
|
|
174
|
-
showUngroupColumnMenuItem: true,
|
|
175
|
-
columnMenuOrder: ['aggrid', 'adaptable', 'user'],
|
|
176
|
-
contextMenuOrder: ['aggrid', 'adaptable', 'user'],
|
|
177
|
-
columnMenuItems: undefined,
|
|
178
|
-
contextMenuItems: undefined,
|
|
179
170
|
},
|
|
180
171
|
columnFilterOptions: {
|
|
181
172
|
quickFilterOptions: {
|
|
@@ -197,7 +188,7 @@ export const DefaultAdaptableOptions = {
|
|
|
197
188
|
sortValuesFilter: false,
|
|
198
189
|
filterValuesUsingTime: false,
|
|
199
190
|
showDistinctFilteredValuesOnly: false,
|
|
200
|
-
maxFilterValuesToDisplay:
|
|
191
|
+
maxFilterValuesToDisplay: undefined,
|
|
201
192
|
includeBlankFilterValues: false,
|
|
202
193
|
showValuesCount: undefined,
|
|
203
194
|
},
|
|
@@ -219,6 +210,7 @@ export const DefaultAdaptableOptions = {
|
|
|
219
210
|
enableFilterOnSpecialColumns: true,
|
|
220
211
|
showClearFilterButton: false,
|
|
221
212
|
showSuspendFilterButton: false,
|
|
213
|
+
showDatePicker: true,
|
|
222
214
|
},
|
|
223
215
|
gridFilterOptions: {
|
|
224
216
|
availableFilterEditors: ['ExpressionEditor', 'QueryBuilder'],
|
|
@@ -250,6 +242,7 @@ export const DefaultAdaptableOptions = {
|
|
|
250
242
|
loadState: undefined,
|
|
251
243
|
persistState: undefined,
|
|
252
244
|
clearState: undefined,
|
|
245
|
+
autoMigrateState: true,
|
|
253
246
|
},
|
|
254
247
|
teamSharingOptions: {
|
|
255
248
|
enableTeamSharing: false,
|
|
@@ -268,6 +261,9 @@ export const DefaultAdaptableOptions = {
|
|
|
268
261
|
useCustomMacLikeScrollbars: false,
|
|
269
262
|
englishVariant: 'GB',
|
|
270
263
|
showLoadingScreen: true,
|
|
264
|
+
loadingScreenDelay: 200,
|
|
265
|
+
loadingScreenTitle: 'Initialising Grid',
|
|
266
|
+
loadingScreenText: 'Retrieving your settings and setting up the grid...',
|
|
271
267
|
disableDeleteConfirmation: false,
|
|
272
268
|
dateInputOptions: {
|
|
273
269
|
useNativeInput: false,
|
|
@@ -325,3 +321,60 @@ export const DefaultAdaptableOptions = {
|
|
|
325
321
|
},
|
|
326
322
|
},
|
|
327
323
|
};
|
|
324
|
+
export function applyDefaultAdaptableOptions(adaptableOptions) {
|
|
325
|
+
var _a;
|
|
326
|
+
const adaptableOptsWithDefaults = Object.assign({}, DefaultAdaptableOptions, adaptableOptions);
|
|
327
|
+
adaptableOptsWithDefaults.adaptableStateKey =
|
|
328
|
+
(_a = adaptableOptsWithDefaults.adaptableStateKey) !== null && _a !== void 0 ? _a : adaptableOptsWithDefaults.adaptableId;
|
|
329
|
+
adaptableOptsWithDefaults.dataImportOptions = Object.assign({}, DefaultAdaptableOptions.dataImportOptions, adaptableOptions.dataImportOptions);
|
|
330
|
+
adaptableOptsWithDefaults.expressionOptions = Object.assign({}, DefaultAdaptableOptions.expressionOptions, adaptableOptions.expressionOptions);
|
|
331
|
+
adaptableOptsWithDefaults.calendarOptions = Object.assign({}, DefaultAdaptableOptions.calendarOptions, adaptableOptions.calendarOptions);
|
|
332
|
+
adaptableOptsWithDefaults.columnOptions = Object.assign({}, DefaultAdaptableOptions.columnOptions, adaptableOptions.columnOptions);
|
|
333
|
+
adaptableOptsWithDefaults.customSortOptions = Object.assign({}, DefaultAdaptableOptions.customSortOptions, adaptableOptions.customSortOptions);
|
|
334
|
+
adaptableOptsWithDefaults.dataSetOptions = Object.assign({}, DefaultAdaptableOptions.dataSetOptions, adaptableOptions.dataSetOptions);
|
|
335
|
+
adaptableOptsWithDefaults.cellSummaryOptions = Object.assign({}, DefaultAdaptableOptions.cellSummaryOptions, adaptableOptions.cellSummaryOptions);
|
|
336
|
+
adaptableOptsWithDefaults.predicateOptions = Object.assign({}, DefaultAdaptableOptions.predicateOptions, adaptableOptsWithDefaults.predicateOptions);
|
|
337
|
+
adaptableOptsWithDefaults.layoutOptions = Object.assign({}, DefaultAdaptableOptions.layoutOptions, adaptableOptions.layoutOptions);
|
|
338
|
+
adaptableOptsWithDefaults.notificationsOptions = Object.assign({}, DefaultAdaptableOptions.notificationsOptions, adaptableOptions.notificationsOptions);
|
|
339
|
+
adaptableOptsWithDefaults.alertOptions = Object.assign({}, DefaultAdaptableOptions.alertOptions, adaptableOptions.alertOptions);
|
|
340
|
+
adaptableOptsWithDefaults.flashingCellOptions = Object.assign({}, DefaultAdaptableOptions.flashingCellOptions, adaptableOptions.flashingCellOptions);
|
|
341
|
+
adaptableOptsWithDefaults.entitlementOptions = Object.assign({}, DefaultAdaptableOptions.entitlementOptions, adaptableOptions.entitlementOptions);
|
|
342
|
+
adaptableOptsWithDefaults.dashboardOptions = Object.assign({}, DefaultAdaptableOptions.dashboardOptions, adaptableOptions.dashboardOptions);
|
|
343
|
+
adaptableOptsWithDefaults.editOptions = Object.assign({}, DefaultAdaptableOptions.editOptions, adaptableOptions.editOptions);
|
|
344
|
+
adaptableOptsWithDefaults.actionColumnOptions = Object.assign({}, DefaultAdaptableOptions.actionColumnOptions, adaptableOptions.actionColumnOptions);
|
|
345
|
+
// to do
|
|
346
|
+
adaptableOptsWithDefaults.actionRowOptions = Object.assign({}, DefaultAdaptableOptions.actionRowOptions, adaptableOptions.actionRowOptions);
|
|
347
|
+
adaptableOptsWithDefaults.actionRowOptions.actionRowButtonOptions = Object.assign({}, DefaultAdaptableOptions.actionRowOptions.actionRowButtonOptions, adaptableOptsWithDefaults.actionRowOptions.actionRowButtonOptions);
|
|
348
|
+
adaptableOptsWithDefaults.actionRowOptions.actionRowFormOptions = Object.assign({}, DefaultAdaptableOptions.actionRowOptions.actionRowFormOptions, adaptableOptsWithDefaults.actionRowOptions.actionRowFormOptions);
|
|
349
|
+
adaptableOptsWithDefaults.containerOptions = Object.assign({}, DefaultAdaptableOptions.containerOptions, adaptableOptions.containerOptions);
|
|
350
|
+
adaptableOptsWithDefaults.groupingOptions = Object.assign({}, DefaultAdaptableOptions.groupingOptions, adaptableOptions.groupingOptions);
|
|
351
|
+
adaptableOptsWithDefaults.quickSearchOptions = Object.assign({}, DefaultAdaptableOptions.quickSearchOptions, adaptableOptions.quickSearchOptions);
|
|
352
|
+
adaptableOptsWithDefaults.columnFilterOptions = Object.assign({}, DefaultAdaptableOptions.columnFilterOptions, adaptableOptions.columnFilterOptions);
|
|
353
|
+
adaptableOptsWithDefaults.columnFilterOptions.quickFilterOptions = Object.assign({}, DefaultAdaptableOptions.columnFilterOptions.quickFilterOptions, adaptableOptsWithDefaults.columnFilterOptions.quickFilterOptions);
|
|
354
|
+
adaptableOptsWithDefaults.columnFilterOptions.filterFormOptions = Object.assign({}, DefaultAdaptableOptions.columnFilterOptions.filterFormOptions, adaptableOptsWithDefaults.columnFilterOptions.filterFormOptions);
|
|
355
|
+
adaptableOptsWithDefaults.columnFilterOptions.valuesFilterOptions = Object.assign({}, DefaultAdaptableOptions.columnFilterOptions.valuesFilterOptions, adaptableOptsWithDefaults.columnFilterOptions.valuesFilterOptions);
|
|
356
|
+
adaptableOptsWithDefaults.gridFilterOptions = Object.assign({}, DefaultAdaptableOptions.gridFilterOptions, adaptableOptions.gridFilterOptions);
|
|
357
|
+
adaptableOptsWithDefaults.userInterfaceOptions = Object.assign({}, DefaultAdaptableOptions.userInterfaceOptions, adaptableOptions.userInterfaceOptions);
|
|
358
|
+
adaptableOptsWithDefaults.userInterfaceOptions.dateInputOptions = Object.assign({}, DefaultAdaptableOptions.userInterfaceOptions.dateInputOptions, adaptableOptsWithDefaults.userInterfaceOptions.dateInputOptions);
|
|
359
|
+
adaptableOptsWithDefaults.menuOptions = Object.assign({}, DefaultAdaptableOptions.menuOptions, adaptableOptions.menuOptions);
|
|
360
|
+
adaptableOptsWithDefaults.stateOptions = Object.assign({}, DefaultAdaptableOptions.stateOptions, adaptableOptions.stateOptions);
|
|
361
|
+
adaptableOptsWithDefaults.exportOptions = Object.assign({}, DefaultAdaptableOptions.exportOptions, adaptableOptions.exportOptions);
|
|
362
|
+
adaptableOptsWithDefaults.teamSharingOptions = Object.assign({}, DefaultAdaptableOptions.teamSharingOptions, adaptableOptions.teamSharingOptions);
|
|
363
|
+
adaptableOptsWithDefaults.toolPanelOptions = Object.assign({}, DefaultAdaptableOptions.toolPanelOptions, adaptableOptions.toolPanelOptions);
|
|
364
|
+
adaptableOptsWithDefaults.dataChangeHistoryOptions = Object.assign({}, DefaultAdaptableOptions.dataChangeHistoryOptions, adaptableOptions.dataChangeHistoryOptions);
|
|
365
|
+
adaptableOptsWithDefaults.chartingOptions = Object.assign({}, DefaultAdaptableOptions.chartingOptions, adaptableOptions.chartingOptions);
|
|
366
|
+
adaptableOptsWithDefaults.chartingOptions.externalChartingOptions = Object.assign({}, DefaultAdaptableOptions.chartingOptions.externalChartingOptions, adaptableOptsWithDefaults.chartingOptions.externalChartingOptions);
|
|
367
|
+
adaptableOptsWithDefaults.settingsPanelOptions = Object.assign({}, DefaultAdaptableOptions.settingsPanelOptions, adaptableOptions.settingsPanelOptions);
|
|
368
|
+
adaptableOptsWithDefaults.fdc3Options = Object.assign({}, DefaultAdaptableOptions.fdc3Options, adaptableOptions.fdc3Options);
|
|
369
|
+
adaptableOptsWithDefaults.fdc3Options.actionColumnDefaultConfiguration = Object.assign({}, DefaultAdaptableOptions.fdc3Options.actionColumnDefaultConfiguration, adaptableOptsWithDefaults.fdc3Options.actionColumnDefaultConfiguration);
|
|
370
|
+
adaptableOptsWithDefaults.fdc3Options.uiControlsDefaultConfiguration = Object.assign({}, DefaultAdaptableOptions.fdc3Options.uiControlsDefaultConfiguration, adaptableOptsWithDefaults.fdc3Options.uiControlsDefaultConfiguration);
|
|
371
|
+
const { predefinedConfig } = adaptableOptsWithDefaults;
|
|
372
|
+
if (predefinedConfig) {
|
|
373
|
+
adaptableOptsWithDefaults.predefinedConfig =
|
|
374
|
+
typeof predefinedConfig === 'string'
|
|
375
|
+
? predefinedConfig
|
|
376
|
+
: initPredefinedConfigWithUuids(predefinedConfig);
|
|
377
|
+
}
|
|
378
|
+
return adaptableOptsWithDefaults;
|
|
379
|
+
}
|
|
380
|
+
export const getDefaultAdaptableOptions = () => DefaultAdaptableOptions;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { ICellEditorComp, ICellEditorParams } from '@ag-grid-community/core';
|
|
3
3
|
import { IAdaptable } from '../../../AdaptableInterfaces/IAdaptable';
|
|
4
4
|
export declare const ReactAdaptableDateEditor: React.ForwardRefExoticComponent<ICellEditorParams<any, any, any> & {
|
|
5
5
|
showClearButton?: boolean;
|
|
@@ -2,8 +2,8 @@ import * as React from 'react';
|
|
|
2
2
|
import { renderWithAdaptableContext } from '../../../View/renderWithAdaptableContext';
|
|
3
3
|
import { InternalAdaptableDateEditor, } from './InternalAdaptableDateEditor';
|
|
4
4
|
import { KeyCode, } from '@ag-grid-community/core';
|
|
5
|
-
import { DateFormatter } from '../../../Utilities/Helpers/FormatHelper';
|
|
6
5
|
import { forwardRef, useImperativeHandle, useRef, useState } from 'react';
|
|
6
|
+
import { DateFormatter } from '../../../Utilities/Helpers/FormatHelper';
|
|
7
7
|
function shouldClearExistingValue(params) {
|
|
8
8
|
return params.eventKey === KeyCode.BACKSPACE || params.eventKey === KeyCode.DELETE;
|
|
9
9
|
}
|
|
@@ -29,7 +29,7 @@ export const ReactAdaptableDateEditor = forwardRef((props, ref) => {
|
|
|
29
29
|
const valueRef = useRef(initialValue);
|
|
30
30
|
const colValueParser = props.column.getColDef().valueParser;
|
|
31
31
|
const valueParser = typeof colValueParser === 'function' ? colValueParser : defaultDateValueParser;
|
|
32
|
-
const adaptable = props.
|
|
32
|
+
const adaptable = props.context.__adaptable;
|
|
33
33
|
const editorRef = useRef(null);
|
|
34
34
|
useImperativeHandle(ref, () => {
|
|
35
35
|
return {
|
|
@@ -135,7 +135,7 @@ export class AdaptableDateEditor {
|
|
|
135
135
|
}
|
|
136
136
|
focusOut() { }
|
|
137
137
|
getAdaptableInstance(params) {
|
|
138
|
-
const adaptable = params.
|
|
138
|
+
const adaptable = params.context.__adaptable;
|
|
139
139
|
return adaptable;
|
|
140
140
|
}
|
|
141
141
|
// after this component has been created and inserted into the grid
|
|
@@ -6,12 +6,12 @@ import { ICellEditorComp, ICellEditorParams } from '@ag-grid-community/core';
|
|
|
6
6
|
interface AdaptableNumberCellEditorParams extends ICellEditorParams {
|
|
7
7
|
/**
|
|
8
8
|
* Whether to show the clear button. If `true`, it works together with `cellEditorParams.emptyValue`
|
|
9
|
-
* @
|
|
9
|
+
* @defaultValue true
|
|
10
10
|
*/
|
|
11
11
|
showClearButton: boolean;
|
|
12
12
|
/**
|
|
13
13
|
* Value to set for the cell, when the clear button is pressed
|
|
14
|
-
* @
|
|
14
|
+
* @defaultValue '' (empty string)
|
|
15
15
|
*/
|
|
16
16
|
emptyValue: string;
|
|
17
17
|
}
|
|
@@ -35,7 +35,7 @@ export const ReactAdaptableNumberEditor = forwardRef((props, ref) => {
|
|
|
35
35
|
const [initialValue] = useState(() => getStartValue(props));
|
|
36
36
|
const valueRef = useRef(initialValue);
|
|
37
37
|
const columnId = props.column.getColId();
|
|
38
|
-
const adaptable = props.
|
|
38
|
+
const adaptable = props.context.__adaptable;
|
|
39
39
|
const colValueParser = props.column.getColDef().valueParser;
|
|
40
40
|
const valueParser = typeof colValueParser === 'function' ? colValueParser : defaultValueParser;
|
|
41
41
|
function onValueChange(value) {
|
|
@@ -134,7 +134,7 @@ export class AdaptableNumberEditor {
|
|
|
134
134
|
// after this component has been created and inserted into the grid
|
|
135
135
|
afterGuiAttached() {
|
|
136
136
|
var _a, _b;
|
|
137
|
-
const adaptable = this.params.
|
|
137
|
+
const adaptable = this.params.context.__adaptable;
|
|
138
138
|
const defaultValue = this.value;
|
|
139
139
|
const editorElement = (React.createElement(InternalAdaptableNumberEditor, { defaultValue: defaultValue, showClearButton: (_a = this.params.showClearButton) !== null && _a !== void 0 ? _a : true, emptyValue: (_b = this.params.emptyValue) !== null && _b !== void 0 ? _b : '', onValueChange: this.onValueChange, ref: (editor) => {
|
|
140
140
|
this.editor = editor;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
type ColState = {
|
|
2
|
+
colId: string;
|
|
3
|
+
hide?: boolean | null;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* This method takes a column state and the list of visible columns
|
|
7
|
+
* and returns a new column state that respects the order of the visible columns
|
|
8
|
+
* while trying to keep the hidden columns in their original order.
|
|
9
|
+
*
|
|
10
|
+
*/
|
|
11
|
+
export declare function sortColumnStateForVisibleColumns<T extends ColState>(columnState: T[], visibleColumns: string[]): T[];
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
function insertAtCorrectIndex(result, colState, visibleColumnsIndexes, offset = 0, lastVisibleOffset = 0) {
|
|
2
|
+
const prevColState = result[result.length - 1 - offset];
|
|
3
|
+
if (!prevColState) {
|
|
4
|
+
result.splice(result.length - lastVisibleOffset, 0, colState);
|
|
5
|
+
return;
|
|
6
|
+
}
|
|
7
|
+
if (prevColState.hide) {
|
|
8
|
+
insertAtCorrectIndex(result, colState, visibleColumnsIndexes, offset + 1,
|
|
9
|
+
/* do not advance this as, as we've encountered a hidden column*/ lastVisibleOffset);
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
const prevCol_visibilityIndex = visibleColumnsIndexes[prevColState.colId];
|
|
13
|
+
const currentCol_visibilityIndex = visibleColumnsIndexes[colState.colId];
|
|
14
|
+
if (currentCol_visibilityIndex < prevCol_visibilityIndex) {
|
|
15
|
+
insertAtCorrectIndex(result, colState, visibleColumnsIndexes, offset + 1,
|
|
16
|
+
/*make sure we sync with the normal offset, as we've hit a visible col*/ offset + 1);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
result.splice(result.length - lastVisibleOffset, 0, colState);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* This method takes a column state and the list of visible columns
|
|
24
|
+
* and returns a new column state that respects the order of the visible columns
|
|
25
|
+
* while trying to keep the hidden columns in their original order.
|
|
26
|
+
*
|
|
27
|
+
*/
|
|
28
|
+
export function sortColumnStateForVisibleColumns(columnState, visibleColumns) {
|
|
29
|
+
const visibleColumnsIndexes = visibleColumns.reduce((acc, colId, index) => {
|
|
30
|
+
acc[colId] = index;
|
|
31
|
+
return acc;
|
|
32
|
+
}, {});
|
|
33
|
+
const result = [];
|
|
34
|
+
for (let i = 0, len = columnState.length; i < len; i++) {
|
|
35
|
+
const colState = columnState[i];
|
|
36
|
+
const colVisible = visibleColumnsIndexes[colState.colId] != null;
|
|
37
|
+
if (!colVisible) {
|
|
38
|
+
// for cols not present in this layout, we keep them
|
|
39
|
+
// where they are
|
|
40
|
+
result.push(colState);
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
insertAtCorrectIndex(result, colState, visibleColumnsIndexes);
|
|
44
|
+
}
|
|
45
|
+
return result;
|
|
46
|
+
}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { IAggFuncParams } from '@ag-grid-community/core';
|
|
2
|
-
import { CellSummaryOperationContext } from '../types';
|
|
3
2
|
export declare const getNumericValue: (input: unknown) => number | null;
|
|
4
3
|
export declare const weightedAverage: (params: IAggFuncParams, columnId: string, weightColumnId: string) => {
|
|
5
4
|
[x: string]: number | (() => number | "");
|
|
6
5
|
toString: () => number | "";
|
|
7
6
|
valueOf: () => number;
|
|
8
7
|
};
|
|
9
|
-
export declare const cellSummaryWeightedAverage: ({ numericColumns, selectedCellInfo, adaptableApi, }: CellSummaryOperationContext) => any;
|