@adaptabletools/adaptable 22.0.0-canary.0 → 22.0.0-canary.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -6
- package/agGrid.d.ts +9 -9
- package/agGrid.js +1 -0
- package/index.css +1280 -1400
- package/index.css.map +1 -1
- package/index.d.ts +66 -0
- package/index.js +73 -0
- package/package.json +3 -3
- package/src/AdaptableInterfaces/IAdaptable.d.ts +10 -1
- package/src/AdaptableOptions/ActionColumnOptions.d.ts +2 -2
- package/src/AdaptableOptions/AdaptablePlugin.js +6 -1
- package/src/AdaptableOptions/ColumnOptions.d.ts +2 -2
- package/src/AdaptableOptions/ContainerOptions.d.ts +55 -15
- package/src/AdaptableOptions/CustomSortOptions.d.ts +4 -0
- package/src/AdaptableOptions/DashboardOptions.d.ts +1 -2
- package/src/AdaptableOptions/ExportOptions.d.ts +1 -2
- package/src/AdaptableOptions/FilterOptions.d.ts +3 -0
- package/src/AdaptableOptions/ToolPanelOptions.d.ts +1 -2
- package/src/AdaptableState/AdaptableState.d.ts +2 -0
- package/src/AdaptableState/AlertState.d.ts +5 -2
- package/src/AdaptableState/ChartingState.d.ts +2 -2
- package/src/AdaptableState/Common/AdaptableAlert.d.ts +2 -2
- package/src/AdaptableState/Common/AdaptableButton.d.ts +2 -2
- package/src/AdaptableState/Common/AdaptableColumn.d.ts +16 -10
- package/src/AdaptableState/Common/AdaptableColumnContext.d.ts +9 -0
- package/src/AdaptableState/Common/AdaptableFlashingCell.d.ts +2 -2
- package/src/AdaptableState/Common/AdaptableObject.d.ts +20 -2
- package/src/AdaptableState/Common/AdaptableRowContext.d.ts +11 -0
- package/src/AdaptableState/Common/AdaptableStyle.d.ts +8 -0
- package/src/AdaptableState/Common/BaseContext.d.ts +2 -0
- package/src/AdaptableState/Common/ColumnHighlightInfo.d.ts +18 -0
- package/src/AdaptableState/Common/DataUpdateConfig.d.ts +17 -0
- package/src/AdaptableState/Common/NamedObject.d.ts +10 -0
- package/src/AdaptableState/Common/NamedObject.js +1 -0
- package/src/AdaptableState/Common/RowDataChangedInfo.d.ts +3 -0
- package/src/AdaptableState/Common/RowSummary.d.ts +1 -1
- package/src/AdaptableState/Common/Schedule.d.ts +8 -5
- package/src/AdaptableState/Common/SystemStatusMessageInfo.d.ts +2 -2
- package/src/AdaptableState/Common/TransposeConfig.d.ts +12 -10
- package/src/AdaptableState/CustomSortState.d.ts +5 -1
- package/src/AdaptableState/DashboardState.d.ts +1 -1
- package/src/AdaptableState/ExportState.d.ts +1 -1
- package/src/AdaptableState/FlashingCellState.d.ts +6 -2
- package/src/AdaptableState/FormatColumnState.d.ts +5 -9
- package/src/AdaptableState/InitialState.d.ts +10 -1
- package/src/AdaptableState/InternalState.d.ts +2 -0
- package/src/AdaptableState/LayoutState.d.ts +7 -3
- package/src/AdaptableState/NamedQueryState.d.ts +1 -1
- package/src/AdaptableState/PlusMinusState.d.ts +5 -1
- package/src/AdaptableState/Selection/GridCell.d.ts +9 -0
- package/src/AdaptableState/ShortcutState.d.ts +5 -1
- package/src/AdaptableState/StyledColumnState.d.ts +1 -1
- package/src/AdaptableState/ThemeState.d.ts +1 -1
- package/src/AdaptableState/UserInterfaceState.d.ts +14 -0
- package/src/AdaptableState/UserInterfaceState.js +1 -0
- package/src/Api/AlertApi.d.ts +6 -0
- package/src/Api/CustomSortApi.d.ts +12 -3
- package/src/Api/DataSetApi.d.ts +1 -1
- package/src/Api/FlashingCellApi.d.ts +6 -0
- package/src/Api/FormatColumnApi.d.ts +10 -4
- package/src/Api/GridApi.d.ts +29 -4
- package/src/Api/Implementation/ActionColumnApiImpl.js +1 -0
- package/src/Api/Implementation/AdaptableApiImpl.js +52 -0
- package/src/Api/Implementation/AlertApiImpl.d.ts +1 -0
- package/src/Api/Implementation/AlertApiImpl.js +6 -6
- package/src/Api/Implementation/ApiBase.d.ts +1 -1
- package/src/Api/Implementation/ApiBase.js +2 -1
- package/src/Api/Implementation/CalculatedColumnApiImpl.js +1 -0
- package/src/Api/Implementation/ChartingApiImpl.js +6 -2
- package/src/Api/Implementation/ColumnApiImpl.d.ts +1 -1
- package/src/Api/Implementation/ColumnApiImpl.js +1 -0
- package/src/Api/Implementation/ColumnFilterApiImpl.js +1 -0
- package/src/Api/Implementation/CommentsApiImpl.js +1 -0
- package/src/Api/Implementation/CustomSortApiImpl.d.ts +6 -1
- package/src/Api/Implementation/CustomSortApiImpl.js +6 -2
- package/src/Api/Implementation/DashboardApiImpl.js +1 -0
- package/src/Api/Implementation/DataChangeHistoryApiImpl.js +12 -15
- package/src/Api/Implementation/DataImportApiImpl.js +1 -0
- package/src/Api/Implementation/DataSetApiImpl.js +1 -0
- package/src/Api/Implementation/EntitlementApiImpl.js +1 -0
- package/src/Api/Implementation/EventApiImpl.js +16 -14
- package/src/Api/Implementation/ExportApiImpl.js +1 -0
- package/src/Api/Implementation/ExpressionApiImpl.js +1 -0
- package/src/Api/Implementation/Fdc3ApiImpl.js +1 -0
- package/src/Api/Implementation/FilterApiImpl.js +3 -0
- package/src/Api/Implementation/FlashingCellApiImpl.d.ts +1 -0
- package/src/Api/Implementation/FlashingCellApiImpl.js +4 -0
- package/src/Api/Implementation/FormatColumnApiImpl.d.ts +6 -5
- package/src/Api/Implementation/FormatColumnApiImpl.js +7 -5
- package/src/Api/Implementation/FreeTextColumnApiImpl.js +1 -0
- package/src/Api/Implementation/GridApiImpl.d.ts +10 -1
- package/src/Api/Implementation/GridApiImpl.js +36 -5
- package/src/Api/Implementation/GridFilterApiImpl.js +1 -0
- package/src/Api/Implementation/LayoutApiImpl.d.ts +1 -0
- package/src/Api/Implementation/LayoutApiImpl.js +5 -1
- package/src/Api/Implementation/LayoutHelpers.js +7 -0
- package/src/Api/Implementation/NamedQueryApiImpl.js +3 -2
- package/src/Api/Implementation/NoteApiImpl.js +1 -0
- package/src/Api/Implementation/PlusMinusApiImpl.d.ts +1 -0
- package/src/Api/Implementation/PlusMinusApiImpl.js +3 -0
- package/src/Api/Implementation/PredicateApiImpl.js +1 -0
- package/src/Api/Implementation/RowFormApiImpl.js +1 -0
- package/src/Api/Implementation/ScheduleApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ScheduleApiImpl.js +4 -0
- package/src/Api/Implementation/ShortcutApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ShortcutApiImpl.js +3 -0
- package/src/Api/Implementation/StyledColumnApiImpl.js +1 -0
- package/src/Api/Implementation/SystemStatusApiImpl.js +8 -9
- package/src/Api/Implementation/TeamSharingApiImpl.js +1 -0
- package/src/Api/Implementation/ThemeApiImpl.js +1 -0
- package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +5 -0
- package/src/Api/Implementation/UserInterfaceApiImpl.js +15 -1
- package/src/Api/Internal/CalculatedColumnInternalApi.js +2 -2
- package/src/Api/Internal/ColumnInternalApi.js +1 -1
- package/src/Api/Internal/FormatColumnInternalApi.d.ts +0 -10
- package/src/Api/Internal/FormatColumnInternalApi.js +1 -19
- package/src/Api/Internal/FreeTextColumnInternalApi.js +2 -2
- package/src/Api/Internal/LayoutInternalApi.js +1 -1
- package/src/Api/Internal/NamedQueryInternalApi.js +4 -4
- package/src/Api/LayoutApi.d.ts +6 -0
- package/src/Api/PlusMinusApi.d.ts +6 -0
- package/src/Api/ScheduleApi.d.ts +6 -0
- package/src/Api/ShortcutApi.d.ts +6 -0
- package/src/Api/UserInterfaceApi.d.ts +17 -0
- package/src/Redux/ActionsReducers/FormatColumnRedux.d.ts +8 -0
- package/src/Redux/ActionsReducers/FormatColumnRedux.js +15 -0
- package/src/Redux/ActionsReducers/InternalRedux.d.ts +15 -0
- package/src/Redux/ActionsReducers/InternalRedux.js +36 -0
- package/src/Redux/ActionsReducers/LayoutRedux.d.ts +1 -1
- package/src/Redux/ActionsReducers/NoteRedux.js +1 -1
- package/src/Redux/ActionsReducers/UserInterfaceRedux.d.ts +11 -0
- package/src/Redux/ActionsReducers/UserInterfaceRedux.js +21 -0
- package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +6 -0
- package/src/Redux/Store/AdaptableStore.js +121 -64
- package/src/Strategy/AdaptableModuleBase.js +4 -0
- package/src/Strategy/AlertModule.js +5 -0
- package/src/Strategy/BulkUpdateModule.js +8 -8
- package/src/Strategy/CalculatedColumnModule.js +1 -0
- package/src/Strategy/CellSummaryModule.js +1 -1
- package/src/Strategy/CustomSortModule.js +4 -0
- package/src/Strategy/DataChangeHistoryModule.js +1 -0
- package/src/Strategy/FlashingCellModule.js +6 -0
- package/src/Strategy/FormatColumnModule.js +4 -0
- package/src/Strategy/FreeTextColumnModule.js +1 -0
- package/src/Strategy/LayoutModule.js +6 -5
- package/src/Strategy/PlusMinusModule.js +7 -1
- package/src/Strategy/QuickSearchModule.js +1 -1
- package/src/Strategy/ScheduleModule.js +5 -0
- package/src/Strategy/SettingsPanelModule.js +11 -7
- package/src/Strategy/ShortcutModule.js +6 -0
- package/src/Strategy/SmartEditModule.js +10 -10
- package/src/Strategy/TeamSharingModule.js +10 -10
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +0 -3
- package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +18 -17
- package/src/Utilities/Constants/DocumentationLinkConstants.js +18 -17
- package/src/Utilities/ExpressionFunctions/deepMap.js +31 -31
- package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +3 -3
- package/src/Utilities/Extensions/StringExtensions.d.ts +2 -0
- package/src/Utilities/Extensions/StringExtensions.js +16 -0
- package/src/Utilities/Helpers/FormatHelper.js +9 -2
- package/src/Utilities/Helpers/StyleHelper.js +14 -0
- package/src/Utilities/MenuItem.js +18 -0
- package/src/Utilities/ObjectFactory.js +16 -3
- package/src/Utilities/Services/AggregatedScalarLiveValue.js +8 -0
- package/src/Utilities/Services/AlertService.js +6 -4
- package/src/Utilities/Services/AnnotationsService.js +4 -1
- package/src/Utilities/Services/CalculatedColumnExpressionService.js +2 -1
- package/src/Utilities/Services/ChartingService.js +1 -0
- package/src/Utilities/Services/DataService.js +11 -3
- package/src/Utilities/Services/Fdc3Service.js +9 -7
- package/src/Utilities/Services/FlashingCellService.js +5 -0
- package/src/Utilities/Services/LicenseService/index.js +1 -1
- package/src/Utilities/Services/MetamodelService.js +2 -2
- package/src/Utilities/Services/ModuleService.js +39 -41
- package/src/Utilities/Services/QueryLanguageService.js +6 -5
- package/src/Utilities/Services/RowFormService.js +1 -0
- package/src/Utilities/Services/RowSummaryService.js +10 -7
- package/src/Utilities/Services/TeamSharingService.js +3 -1
- package/src/Utilities/Services/ThemeService.js +13 -15
- package/src/Utilities/Services/ValidationService.js +2 -1
- package/src/Utilities/createAgStatusPanelComponent.js +3 -0
- package/src/Utilities/logDeprecation.js +3 -4
- package/src/Utilities/resolveContainerElement.d.ts +23 -0
- package/src/Utilities/resolveContainerElement.js +44 -0
- package/src/View/AdaptablePopover/index.d.ts +1 -0
- package/src/View/AdaptablePopover/index.js +1 -1
- package/src/View/Alert/ActiveAlertsPanel.js +8 -0
- package/src/View/Alert/AlertViewPanel.js +13 -9
- package/src/View/Alert/Utilities/getAlertButtonStyle.d.ts +1 -0
- package/src/View/Alert/Utilities/getAlertButtonStyle.js +8 -0
- package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +1 -0
- package/src/View/Alert/Wizard/AlertTypeWizardSection.d.ts +5 -2
- package/src/View/Alert/Wizard/AlertTypeWizardSection.js +47 -12
- package/src/View/Alert/Wizard/AlertWizard.js +14 -10
- package/src/View/Alert/Wizard/isValidAlertRules.js +1 -1
- package/src/View/BulkUpdate/BulkUpdateViewPanel.js +24 -11
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +2 -2
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +2 -2
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +1 -1
- package/src/View/CellSummary/CellSummaryViewPanel.js +16 -17
- package/src/View/Charting/ChartingWizard/AgChargingWizard/SettingsSection.js +2 -2
- package/src/View/Charting/ChartingWizard/ExternalChartingWizard/SettingsSection.js +2 -2
- package/src/View/Components/AdaptableDateInput/index.js +1 -1
- package/src/View/Components/Buttons/ButtonApply.js +1 -1
- package/src/View/Components/Buttons/ButtonBase/index.js +9 -9
- package/src/View/Components/Buttons/ButtonClear.d.ts +1 -0
- package/src/View/Components/Buttons/EntityListActionButtons.d.ts +1 -2
- package/src/View/Components/Buttons/EntityListActionButtons.js +18 -18
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.d.ts +1 -2
- package/src/View/Components/CellPopup/index.js +1 -1
- package/src/View/Components/ColumnFilter/FloatingFilter.js +41 -3
- package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +1 -1
- package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +54 -2
- package/src/View/Components/ColumnFilter/components/FloatingFilterValues.js +1 -1
- package/src/View/Components/EntityRulesEditor/Utilities.js +5 -5
- package/src/View/Components/NewScopeComponent.js +3 -3
- package/src/View/Components/Panels/PanelDashboard/index.js +8 -8
- package/src/View/Components/Panels/PanelToolPanel/index.js +7 -7
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +2 -1
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupBody.js +1 -1
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.d.ts +1 -1
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +1 -8
- package/src/View/Components/Popups/AdaptablePopupConfirmation.js +1 -1
- package/src/View/Components/Popups/WindowPopups/WindowPopups.js +36 -1
- package/src/View/Components/Selectors/BulkUpdateValueSelector.js +19 -18
- package/src/View/Components/StyleComponent.d.ts +1 -0
- package/src/View/Components/StyleComponent.js +94 -24
- package/src/View/Components/ToolPanel/AdaptableToolPanel.js +2 -0
- package/src/View/Components/WizardSummaryPage.js +1 -1
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.d.ts +2 -1
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +41 -15
- package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +1 -1
- package/src/View/CustomSort/Wizard/CustomSortWizard.js +4 -4
- package/src/View/Dashboard/CustomToolbar.js +1 -1
- package/src/View/Dashboard/DashboardPopup.js +4 -5
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +1 -0
- package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +1 -1
- package/src/View/Export/ExportDestinationPicker.js +1 -1
- package/src/View/Export/ExportStatusBar.js +4 -2
- package/src/View/Export/ExportViewPanel.js +25 -18
- package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.d.ts +2 -1
- package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +34 -14
- package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +14 -10
- package/src/View/FlashingCell/Wizard/isValidFlashingCellRules.js +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +46 -51
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +2 -2
- package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +20 -9
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.d.ts +1 -1
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +3 -3
- package/src/View/GridFilter/GridFilterExpressionEditor.js +6 -1
- package/src/View/GridFilter/GridFilterViewPanel.js +33 -70
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +57 -65
- package/src/View/Layout/LayoutViewPanel.js +1 -1
- package/src/View/Layout/TransposedPopup.js +144 -138
- package/src/View/Layout/Wizard/sections/AggregationsSection.js +1 -1
- package/src/View/Layout/Wizard/sections/FilterSection.js +1 -1
- package/src/View/Layout/Wizard/sections/GridFilterSection.js +1 -1
- package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +3 -3
- package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +8 -0
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +1 -1
- package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +2 -2
- package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +35 -12
- package/src/View/PlusMinus/Wizard/PlusMinusWizard.js +20 -15
- package/src/View/QuickSearch/QuickSearchPopup.js +4 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.js +12 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.js +12 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +14 -4
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.js +12 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/isSettingsValid.d.ts +2 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/isSettingsValid.js +19 -10
- package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.d.ts +2 -1
- package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +25 -4
- package/src/View/Shortcut/Wizard/ShortcutWizard.js +18 -14
- package/src/View/SmartEdit/SmartEditViewPanel.js +1 -0
- package/src/View/StateManagement/handleExportState.js +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +1 -1
- package/src/View/Theme/ThemePopup.js +13 -16
- package/src/View/UIHelper.d.ts +4 -1
- package/src/View/UIHelper.js +23 -14
- package/src/agGrid/Adaptable.js +15 -11
- package/src/agGrid/AdaptableAgGrid.d.ts +16 -3
- package/src/agGrid/AdaptableAgGrid.js +306 -103
- package/src/agGrid/AdaptableFilterHandler.js +4 -0
- package/src/agGrid/AdaptableLogger.d.ts +3 -0
- package/src/agGrid/AdaptableLogger.js +10 -0
- package/src/agGrid/AgGridAdapter.js +19 -9
- package/src/agGrid/AgGridColumnAdapter.d.ts +1 -0
- package/src/agGrid/AgGridColumnAdapter.js +20 -22
- package/src/agGrid/AgGridExportAdapter.js +15 -14
- package/src/agGrid/AgGridFilterAdapter.js +4 -0
- package/src/agGrid/AgGridFloatingFilterAdapter.js +4 -1
- package/src/agGrid/AgGridMenuAdapter.js +10 -1
- package/src/agGrid/AgGridModulesAdapter.js +2 -1
- package/src/agGrid/AgGridOptionsService.js +3 -0
- package/src/agGrid/AgGridThemeAdapter.js +4 -2
- package/src/agGrid/cellRenderers/ActionColumnRenderer.js +5 -0
- package/src/agGrid/cellRenderers/BadgeRenderer.js +2 -0
- package/src/agGrid/cellRenderers/PercentBarRenderer.js +1 -0
- package/src/agGrid/editors/AdaptableDateEditor/index.js +6 -3
- package/src/agGrid/editors/AdaptableNumberEditor/index.js +16 -12
- package/src/agGrid/editors/AdaptablePercentageEditor/index.js +17 -13
- package/src/agGrid/index.d.ts +6 -0
- package/src/agGrid/index.js +6 -0
- package/src/components/CheckBox/index.js +1 -1
- package/src/components/ColorPicker/ColorPicker.js +5 -4
- package/src/components/Dashboard/DashboardToolbar.js +1 -1
- package/src/components/Datepicker/index.js +1 -1
- package/src/components/Dropdown/Arrows.js +1 -1
- package/src/components/ExpressionEditor/DataTableEditor.js +3 -3
- package/src/components/ExpressionEditor/EditorInput.js +19 -3
- package/src/components/ExpressionEditor/ExpressionFunctionDocumentation.js +1 -1
- package/src/components/FormLayout/index.js +1 -1
- package/src/components/OverlayTrigger/index.js +1 -1
- package/src/components/Select/Select.js +79 -16
- package/src/components/Tree/TreeDropdown/index.js +2 -2
- package/src/components/overlayBaseZIndex.js +1 -1
- package/src/components/utils/useContainerScrollObserver/index.js +17 -14
- package/src/devTools/index.js +54 -53
- package/src/env.js +2 -2
- package/src/layout-manager/src/LMEmitter.js +11 -11
- package/src/layout-manager/src/LMLogger.js +7 -0
- package/src/layout-manager/src/LayoutManagerModel.d.ts +1 -0
- package/src/layout-manager/src/index.js +81 -58
- package/src/layout-manager/src/normalizeLayoutModel.js +3 -0
- package/src/metamodel/adaptable.metamodel.d.ts +177 -8
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/migration/AdaptableUpgradeHelper.js +8 -3
- package/src/migration/VersionUpgrade.js +1 -0
- package/src/migration/VersionUpgrade17.js +5 -6
- package/src/migration/VersionUpgrade20.js +4 -4
- package/src/migration/VersionUpgrade22.d.ts +21 -0
- package/src/migration/VersionUpgrade22.js +187 -0
- package/src/parser/src/ExpressionEvaluationError.js +1 -0
- package/src/types.d.ts +9 -7
- package/themes/dark.css +30 -30
- package/themes/light.css +4 -2
- package/tsconfig.esm.tsbuildinfo +1 -1
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/FinanceForm.js +0 -632
- package/src/View/Alert/AlertEntityRow.d.ts +0 -11
- package/src/View/Alert/AlertEntityRow.js +0 -28
- package/src/View/CalculatedColumn/CalculatedColumnSummary.d.ts +0 -21
- package/src/View/CalculatedColumn/CalculatedColumnSummary.js +0 -58
- package/src/View/Components/Buttons/ButtonFunction.d.ts +0 -7
- package/src/View/Components/Buttons/ButtonFunction.js +0 -8
- package/src/View/Components/Buttons/ButtonGeneral.d.ts +0 -5
- package/src/View/Components/Buttons/ButtonGeneral.js +0 -7
- package/src/View/Components/Buttons/ButtonPreviewDelete.d.ts +0 -4
- package/src/View/Components/Buttons/ButtonPreviewDelete.js +0 -5
- package/src/View/Components/Buttons/ButtonShow.d.ts +0 -5
- package/src/View/Components/Buttons/ButtonShow.js +0 -7
- package/src/View/Components/Buttons/ButtonShowChart.d.ts +0 -5
- package/src/View/Components/Buttons/ButtonShowChart.js +0 -7
- package/src/View/Components/Buttons/ButtonUndo.d.ts +0 -5
- package/src/View/Components/Buttons/ButtonUndo.js +0 -7
- package/src/View/Components/ExpressionWizard.d.ts +0 -24
- package/src/View/Components/ExpressionWizard.js +0 -77
- package/src/View/Components/FilterForm/Waiting.d.ts +0 -10
- package/src/View/Components/FilterForm/Waiting.js +0 -14
- package/src/View/Components/Panels/PanelFooter.d.ts +0 -10
- package/src/View/Components/Panels/PanelFooter.js +0 -9
- package/src/View/Components/Panels/PanelWithTwoButtons.d.ts +0 -12
- package/src/View/Components/Panels/PanelWithTwoButtons.js +0 -15
- package/src/View/Components/Panels/ToolPanelSettingsPanel.d.ts +0 -8
- package/src/View/Components/Panels/ToolPanelSettingsPanel.js +0 -26
- package/src/View/Components/Selectors/ColumnSelectorOld.d.ts +0 -18
- package/src/View/Components/Selectors/ColumnSelectorOld.js +0 -45
- package/src/View/Components/SharedProps/WizardScopeState.d.ts +0 -4
- package/src/View/Components/WizardSummaryRow.d.ts +0 -9
- package/src/View/Components/WizardSummaryRow.js +0 -11
- package/src/View/CustomSort/CustomSortSummary.d.ts +0 -23
- package/src/View/CustomSort/CustomSortSummary.js +0 -105
- package/src/View/DataImport/DataImportWizard/sections/ImportSection.d.ts +0 -9
- package/src/View/DataImport/DataImportWizard/sections/ImportSection.js +0 -19
- package/src/View/Export/Wizard/ReportColumnTypeWizard.d.ts +0 -19
- package/src/View/Export/Wizard/ReportColumnTypeWizard.js +0 -68
- package/src/View/Export/Wizard/ReportRowTypeWizard.d.ts +0 -19
- package/src/View/Export/Wizard/ReportRowTypeWizard.js +0 -68
- package/src/View/Export/Wizard/ReportSettingsWizard.d.ts +0 -21
- package/src/View/Export/Wizard/ReportSettingsWizard.js +0 -56
- package/src/View/Export/Wizard/ReportSummaryWizard.d.ts +0 -15
- package/src/View/Export/Wizard/ReportSummaryWizard.js +0 -35
- package/src/View/Filter/FilterSummary.d.ts +0 -18
- package/src/View/Filter/FilterSummary.js +0 -48
- package/src/View/FormatColumn/FormatColumnSummary.d.ts +0 -22
- package/src/View/FormatColumn/FormatColumnSummary.js +0 -90
- package/src/View/FreeTextColumn/FreeTextColumnSummary.d.ts +0 -22
- package/src/View/FreeTextColumn/FreeTextColumnSummary.js +0 -88
- package/src/View/GridInfo/GridInfoPopup/AdaptableOptionsComponent.d.ts +0 -7
- package/src/View/GridInfo/GridInfoPopup/AdaptableOptionsComponent.js +0 -94
- package/src/View/PlusMinus/PlusMinusSummary.d.ts +0 -22
- package/src/View/PlusMinus/PlusMinusSummary.js +0 -95
- package/src/View/Wizard/WizardLegend.d.ts +0 -12
- package/src/View/Wizard/WizardLegend.js +0 -23
- /package/src/{View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/FinanceForm.d.ts → AdaptableState/Common/AdaptableRowContext.js} +0 -0
- /package/src/{View/Components/SharedProps/WizardScopeState.js → AdaptableState/Common/ColumnHighlightInfo.js} +0 -0
|
@@ -38,6 +38,7 @@ import * as InternalRedux from '../ActionsReducers/InternalRedux';
|
|
|
38
38
|
import * as TeamSharingRedux from '../ActionsReducers/TeamSharingRedux';
|
|
39
39
|
import * as ThemeRedux from '../ActionsReducers/ThemeRedux';
|
|
40
40
|
import * as ToolPanelRedux from '../ActionsReducers/ToolPanelRedux';
|
|
41
|
+
import * as UserInterfaceRedux from '../ActionsReducers/UserInterfaceRedux';
|
|
41
42
|
import { areAdaptableProfileTracksEnabled, getMarker } from '../../devTools';
|
|
42
43
|
import { isAdaptableSharedEntity, isCustomSharedEntity, } from '../../AdaptableState/TeamSharingState';
|
|
43
44
|
import { buildAdaptableStateFunctionConfig } from './buildAdaptableStateFunctionConfig';
|
|
@@ -66,6 +67,23 @@ export const LoadState = (State) => ({
|
|
|
66
67
|
State,
|
|
67
68
|
});
|
|
68
69
|
export class AdaptableStore {
|
|
70
|
+
TheStore;
|
|
71
|
+
Load;
|
|
72
|
+
emitter;
|
|
73
|
+
storageEngine;
|
|
74
|
+
currentStorageState;
|
|
75
|
+
previousStorageState;
|
|
76
|
+
loadStorageInProgress = false;
|
|
77
|
+
loadStateOnStartup = true; // set to false if you want no state
|
|
78
|
+
on = (eventName, callback) => {
|
|
79
|
+
return this.emitter.on(eventName, callback);
|
|
80
|
+
};
|
|
81
|
+
onAny = (callback) => {
|
|
82
|
+
return this.emitter.onAny(callback);
|
|
83
|
+
};
|
|
84
|
+
emit = (eventName, data) => {
|
|
85
|
+
return this.emitter.emit(eventName, data);
|
|
86
|
+
};
|
|
69
87
|
/**
|
|
70
88
|
*
|
|
71
89
|
* @param adaptable The Adaptable instance
|
|
@@ -75,49 +93,6 @@ export class AdaptableStore {
|
|
|
75
93
|
/*
|
|
76
94
|
This is the main store for Adaptable State
|
|
77
95
|
*/
|
|
78
|
-
this.loadStorageInProgress = false;
|
|
79
|
-
this.loadStateOnStartup = true; // set to false if you want no state
|
|
80
|
-
this.on = (eventName, callback) => {
|
|
81
|
-
return this.emitter.on(eventName, callback);
|
|
82
|
-
};
|
|
83
|
-
this.onAny = (callback) => {
|
|
84
|
-
return this.emitter.onAny(callback);
|
|
85
|
-
};
|
|
86
|
-
this.emit = (eventName, data) => {
|
|
87
|
-
return this.emitter.emit(eventName, data);
|
|
88
|
-
};
|
|
89
|
-
this.loadStore = (config) => {
|
|
90
|
-
const { adaptable, adaptableStateKey, initialState, postLoadHook } = config;
|
|
91
|
-
const postProcessState = postLoadHook ?? ((state) => state);
|
|
92
|
-
this.storageEngine.setStateKey(adaptableStateKey);
|
|
93
|
-
// START STATE LOAD
|
|
94
|
-
this.loadStorageInProgress = true;
|
|
95
|
-
return (this.Load = this.storageEngine
|
|
96
|
-
.load(adaptable, initialState)
|
|
97
|
-
.then((storedState) => {
|
|
98
|
-
if (storedState && this.loadStateOnStartup) {
|
|
99
|
-
this.TheStore.dispatch(LoadState(postProcessState(adaptable.adaptableOptions.stateOptions.applyState(storedState, buildAdaptableStateFunctionConfig(adaptable)))));
|
|
100
|
-
}
|
|
101
|
-
})
|
|
102
|
-
.then(() => {
|
|
103
|
-
this.TheStore.dispatch(InitState());
|
|
104
|
-
// END STATE LOAD
|
|
105
|
-
this.loadStorageInProgress = false;
|
|
106
|
-
}, (e) => {
|
|
107
|
-
adaptable.api.consoleError('Failed to load previous Adaptable State : ', e);
|
|
108
|
-
//for now i'm still initializing Adaptable even if loading state has failed....
|
|
109
|
-
//we may revisit that later
|
|
110
|
-
this.TheStore.dispatch(InitState());
|
|
111
|
-
// END STATE LOAD
|
|
112
|
-
this.loadStorageInProgress = false;
|
|
113
|
-
this.TheStore.dispatch(PopupRedux.PopupShowAlert({
|
|
114
|
-
alertType: 'generic',
|
|
115
|
-
header: 'Configuration',
|
|
116
|
-
message: 'Error loading your configuration:' + e,
|
|
117
|
-
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
118
|
-
}));
|
|
119
|
-
}));
|
|
120
|
-
};
|
|
121
96
|
let rootReducerObject = {
|
|
122
97
|
// Reducers for Non-Persisted State
|
|
123
98
|
Popup: PopupRedux.PopupReducer,
|
|
@@ -147,6 +122,7 @@ export class AdaptableStore {
|
|
|
147
122
|
TeamSharing: TeamSharingRedux.TeamSharingReducer,
|
|
148
123
|
Theme: ThemeRedux.ThemeReducer,
|
|
149
124
|
ToolPanel: ToolPanelRedux.ToolPanelReducer,
|
|
125
|
+
UserInterface: UserInterfaceRedux.UserInterfaceReducer,
|
|
150
126
|
};
|
|
151
127
|
// allow plugins to participate in the root reducer
|
|
152
128
|
adaptable.forPlugins((plugin) => {
|
|
@@ -262,6 +238,38 @@ export class AdaptableStore {
|
|
|
262
238
|
}
|
|
263
239
|
return Promise.resolve(true);
|
|
264
240
|
}
|
|
241
|
+
loadStore = (config) => {
|
|
242
|
+
const { adaptable, adaptableStateKey, initialState, postLoadHook } = config;
|
|
243
|
+
const postProcessState = postLoadHook ?? ((state) => state);
|
|
244
|
+
this.storageEngine.setStateKey(adaptableStateKey);
|
|
245
|
+
// START STATE LOAD
|
|
246
|
+
this.loadStorageInProgress = true;
|
|
247
|
+
return (this.Load = this.storageEngine
|
|
248
|
+
.load(adaptable, initialState)
|
|
249
|
+
.then((storedState) => {
|
|
250
|
+
if (storedState && this.loadStateOnStartup) {
|
|
251
|
+
this.TheStore.dispatch(LoadState(postProcessState(adaptable.adaptableOptions.stateOptions.applyState(storedState, buildAdaptableStateFunctionConfig(adaptable)))));
|
|
252
|
+
}
|
|
253
|
+
})
|
|
254
|
+
.then(() => {
|
|
255
|
+
this.TheStore.dispatch(InitState());
|
|
256
|
+
// END STATE LOAD
|
|
257
|
+
this.loadStorageInProgress = false;
|
|
258
|
+
}, (e) => {
|
|
259
|
+
adaptable.api.consoleError('Failed to load saved Adaptable state.', e);
|
|
260
|
+
//for now i'm still initializing Adaptable even if loading state has failed....
|
|
261
|
+
//we may revisit that later
|
|
262
|
+
this.TheStore.dispatch(InitState());
|
|
263
|
+
// END STATE LOAD
|
|
264
|
+
this.loadStorageInProgress = false;
|
|
265
|
+
this.TheStore.dispatch(PopupRedux.PopupShowAlert({
|
|
266
|
+
alertType: 'generic',
|
|
267
|
+
header: 'Configuration',
|
|
268
|
+
message: 'Failed to load your configuration: ' + e,
|
|
269
|
+
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
270
|
+
}));
|
|
271
|
+
}));
|
|
272
|
+
};
|
|
265
273
|
}
|
|
266
274
|
function createDevToolsActionMarkerMiddleware(adaptable) {
|
|
267
275
|
const adaptableId = adaptable?.adaptableOptions?.adaptableId;
|
|
@@ -575,6 +583,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
575
583
|
* Action: We set up all columns again
|
|
576
584
|
*/
|
|
577
585
|
case QuickSearchRedux.QUICK_SEARCH_SET_CELL_MATCHING_STYLE:
|
|
586
|
+
case FormatColumnRedux.FORMAT_COLUMN_ADD_BATCH:
|
|
578
587
|
case FormatColumnRedux.FORMAT_COLUMN_ADD:
|
|
579
588
|
case FormatColumnRedux.FORMAT_COLUMN_EDIT:
|
|
580
589
|
case FormatColumnRedux.FORMAT_COLUMN_DELETE:
|
|
@@ -739,6 +748,27 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
739
748
|
});
|
|
740
749
|
return ret;
|
|
741
750
|
}
|
|
751
|
+
case InternalRedux.HIGHLIGHT_COLUMN_ADD: {
|
|
752
|
+
const actionTyped = action;
|
|
753
|
+
const ret = next(action);
|
|
754
|
+
const columnHighlightInfo = actionTyped.columnHighlightInfo;
|
|
755
|
+
adaptable.api.gridApi.refreshColumn(columnHighlightInfo.columnId);
|
|
756
|
+
return ret;
|
|
757
|
+
}
|
|
758
|
+
case InternalRedux.HIGHLIGHT_COLUMN_DELETE: {
|
|
759
|
+
const actionTyped = action;
|
|
760
|
+
const ret = next(action);
|
|
761
|
+
adaptable.api.gridApi.refreshColumn(actionTyped.columnId);
|
|
762
|
+
return ret;
|
|
763
|
+
}
|
|
764
|
+
case InternalRedux.HIGHLIGHT_COLUMN_DELETE_ALL: {
|
|
765
|
+
const columnHighlightInfos = middlewareAPI.getState().Internal.ColumnHighlightInfo;
|
|
766
|
+
const ret = next(action);
|
|
767
|
+
columnHighlightInfos.forEach((columnHighlightInfo) => {
|
|
768
|
+
adaptable.api.gridApi.refreshColumn(columnHighlightInfo.columnId);
|
|
769
|
+
});
|
|
770
|
+
return ret;
|
|
771
|
+
}
|
|
742
772
|
case InternalRedux.HIGHLIGHT_ROW_ADD: {
|
|
743
773
|
const actionTyped = action;
|
|
744
774
|
const ret = next(action);
|
|
@@ -964,6 +994,31 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
964
994
|
module.setUpScheduleJobs();
|
|
965
995
|
return returnAction;
|
|
966
996
|
}
|
|
997
|
+
/*******************
|
|
998
|
+
* USER INTERFACE ACTIONS
|
|
999
|
+
*******************/
|
|
1000
|
+
case UserInterfaceRedux.USER_INTERFACE_SET_HIDE_ADAPTABLE_UI: {
|
|
1001
|
+
const returnAction = next(action);
|
|
1002
|
+
const { hideAdaptableUI } = action;
|
|
1003
|
+
// Hide or show Dashboard
|
|
1004
|
+
middlewareAPI.dispatch(DashboardRedux.DashboardSetIsHidden(hideAdaptableUI));
|
|
1005
|
+
// Hide or show Adaptable ToolPanel in the AG Grid sidebar
|
|
1006
|
+
if (hideAdaptableUI) {
|
|
1007
|
+
adaptable.hideAdaptableToolPanel();
|
|
1008
|
+
}
|
|
1009
|
+
else {
|
|
1010
|
+
adaptable.showAdaptableToolPanel();
|
|
1011
|
+
}
|
|
1012
|
+
// Hide or show Adaptable StatusBar panels
|
|
1013
|
+
if (hideAdaptableUI) {
|
|
1014
|
+
adaptable.hideAdaptableStatusBar();
|
|
1015
|
+
}
|
|
1016
|
+
else {
|
|
1017
|
+
adaptable.showAdaptableStatusBar();
|
|
1018
|
+
}
|
|
1019
|
+
// Column and Context Menus are handled in the AgGridMenuAdapter
|
|
1020
|
+
return returnAction;
|
|
1021
|
+
}
|
|
967
1022
|
/*******************
|
|
968
1023
|
* DASHBOARD ACTIONS
|
|
969
1024
|
*******************/
|
|
@@ -1000,6 +1055,14 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1000
1055
|
const newLayout = (newLayoutState.Layouts || []).find((l) => l.Name == newLayoutState.CurrentLayout) ||
|
|
1001
1056
|
newLayoutState.Layouts[0] ||
|
|
1002
1057
|
ERROR_LAYOUT;
|
|
1058
|
+
if (returnAction.type == LayoutRedux.LAYOUT_SELECT ||
|
|
1059
|
+
returnAction.type == LayoutRedux.LAYOUT_DELETE) {
|
|
1060
|
+
// tell AdapTable the Layout has been selected
|
|
1061
|
+
if (newLayout) {
|
|
1062
|
+
adaptable.updateLayoutInManagerAfterStoreHasChanged(newLayout);
|
|
1063
|
+
}
|
|
1064
|
+
}
|
|
1065
|
+
// !!! filter refresh has to be AFTER the layout has been set in the store
|
|
1003
1066
|
let refreshColumnFilters = false;
|
|
1004
1067
|
if (adaptable.api.filterApi.columnFilterApi.internalApi.areColumnFiltersDifferent(oldLayout.ColumnFilters, newLayout.ColumnFilters)) {
|
|
1005
1068
|
refreshColumnFilters = true;
|
|
@@ -1011,13 +1074,6 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1011
1074
|
if (refreshColumnFilters || refreshGridFilter) {
|
|
1012
1075
|
adaptable.applyFiltering({ updateColumnFilterModel: refreshColumnFilters });
|
|
1013
1076
|
}
|
|
1014
|
-
if (returnAction.type == LayoutRedux.LAYOUT_SELECT ||
|
|
1015
|
-
returnAction.type == LayoutRedux.LAYOUT_DELETE) {
|
|
1016
|
-
// tell AdapTable the Layout has been selected
|
|
1017
|
-
if (newLayout) {
|
|
1018
|
-
adaptable.updateLayoutInManagerAfterStoreHasChanged(newLayout);
|
|
1019
|
-
}
|
|
1020
|
-
}
|
|
1021
1077
|
// when changing current layout via the api, the layout should update
|
|
1022
1078
|
if (returnAction.type == LayoutRedux.LAYOUT_SAVE) {
|
|
1023
1079
|
const savingLayout = returnAction.layout;
|
|
@@ -1285,7 +1341,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1285
1341
|
const alert = {
|
|
1286
1342
|
alertType: 'generic',
|
|
1287
1343
|
header: 'Team Sharing',
|
|
1288
|
-
message:
|
|
1344
|
+
message: 'Failed to retrieve shared items: ' + error.message,
|
|
1289
1345
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1290
1346
|
};
|
|
1291
1347
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1355,7 +1411,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1355
1411
|
const alert = {
|
|
1356
1412
|
alertType: 'generic',
|
|
1357
1413
|
header: 'Team Sharing',
|
|
1358
|
-
message: `
|
|
1414
|
+
message: `Cannot share ${adaptable.ModuleService.getModuleFriendlyName(Module)} — an active share already exists: ${existingActiveSharedEntity.Description}.`,
|
|
1359
1415
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1360
1416
|
};
|
|
1361
1417
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1379,7 +1435,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1379
1435
|
const alert = {
|
|
1380
1436
|
alertType: 'generic',
|
|
1381
1437
|
header: 'Team Sharing',
|
|
1382
|
-
message: `${adaptable.ModuleService.getModuleFriendlyName(Module)}
|
|
1438
|
+
message: `${adaptable.ModuleService.getModuleFriendlyName(Module)} shared successfully.`,
|
|
1383
1439
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Success'),
|
|
1384
1440
|
};
|
|
1385
1441
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1390,7 +1446,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1390
1446
|
const alert = {
|
|
1391
1447
|
alertType: 'generic',
|
|
1392
1448
|
header: 'Team Sharing',
|
|
1393
|
-
message:
|
|
1449
|
+
message: 'Failed to share item: ' + error.message,
|
|
1394
1450
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1395
1451
|
};
|
|
1396
1452
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1415,10 +1471,11 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1415
1471
|
if (sharedEntityDependants.length) {
|
|
1416
1472
|
const alert = {
|
|
1417
1473
|
alertType: 'generic',
|
|
1418
|
-
header:
|
|
1419
|
-
message:
|
|
1420
|
-
|
|
1421
|
-
|
|
1474
|
+
header: 'Team Sharing',
|
|
1475
|
+
message: 'Cannot remove this shared item. It is referenced by: ' +
|
|
1476
|
+
sharedEntityDependants
|
|
1477
|
+
.map((sharedEntity) => `${adaptable.ModuleService.getModuleFriendlyName(sharedEntity.Module)} ${sharedEntity.Description}`)
|
|
1478
|
+
.join(', '),
|
|
1422
1479
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Warning'),
|
|
1423
1480
|
};
|
|
1424
1481
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1435,7 +1492,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1435
1492
|
const alert = {
|
|
1436
1493
|
alertType: 'generic',
|
|
1437
1494
|
header: 'Team Sharing',
|
|
1438
|
-
message:
|
|
1495
|
+
message: 'Failed to remove shared item: ' + error.message,
|
|
1439
1496
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1440
1497
|
};
|
|
1441
1498
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1457,8 +1514,8 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1457
1514
|
!adaptable.api.optionsApi.getTeamSharingOptions().suppressOverrideConfigWarning) {
|
|
1458
1515
|
let confirmation = {
|
|
1459
1516
|
CancelButtonText: 'Cancel Import',
|
|
1460
|
-
Header: '
|
|
1461
|
-
Msg: 'This import will overwrite an existing
|
|
1517
|
+
Header: 'Overwrite Existing Item',
|
|
1518
|
+
Msg: 'This import will overwrite an existing item in your configuration. Do you wish to continue?',
|
|
1462
1519
|
ConfirmButtonText: 'Import',
|
|
1463
1520
|
CancelAction: null,
|
|
1464
1521
|
ConfirmAction: processImportAction,
|
|
@@ -1504,7 +1561,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1504
1561
|
const alert = {
|
|
1505
1562
|
alertType: 'generic',
|
|
1506
1563
|
header: 'Team Sharing',
|
|
1507
|
-
message:
|
|
1564
|
+
message: 'Item imported successfully.',
|
|
1508
1565
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Success'),
|
|
1509
1566
|
};
|
|
1510
1567
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1544,7 +1601,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1544
1601
|
const alert = {
|
|
1545
1602
|
alertType: 'generic',
|
|
1546
1603
|
header: 'Team Sharing',
|
|
1547
|
-
message:
|
|
1604
|
+
message: 'Failed to update shared item: ' + error.message,
|
|
1548
1605
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1549
1606
|
};
|
|
1550
1607
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1565,7 +1622,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1565
1622
|
const alert = {
|
|
1566
1623
|
alertType: 'generic',
|
|
1567
1624
|
header: 'Team Sharing',
|
|
1568
|
-
message:
|
|
1625
|
+
message: 'Failed to check for updates: ' + error.message,
|
|
1569
1626
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1570
1627
|
};
|
|
1571
1628
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -4,6 +4,10 @@ import ArrayExtensions from '../Utilities/Extensions/ArrayExtensions';
|
|
|
4
4
|
* Base class for all strategies and does most of the work of creating menus
|
|
5
5
|
*/
|
|
6
6
|
export class AdaptableModuleBase {
|
|
7
|
+
api;
|
|
8
|
+
moduleInfo;
|
|
9
|
+
AccessLevel;
|
|
10
|
+
agGridModuleDepsInfo;
|
|
7
11
|
constructor(module, friendlyName, glyph, popup, description, api) {
|
|
8
12
|
this.api = api;
|
|
9
13
|
this.moduleInfo = {
|
|
@@ -16,6 +16,7 @@ import { getAlertBehaviourViewItems } from './Utilities/Alert/getAlertBehaviourV
|
|
|
16
16
|
import { getAlertPreviewViewItems } from './Utilities/Alert/getAlertPreviewViewItems';
|
|
17
17
|
import { getAlertTypeViewItems } from './Utilities/Alert/getAlertTypeViewItems';
|
|
18
18
|
export class AlertModule extends AdaptableModuleBase {
|
|
19
|
+
isListeningToCellDataChanges;
|
|
19
20
|
constructor(api) {
|
|
20
21
|
super(ModuleConstants.AlertModuleId, ModuleConstants.AlertModuleFriendlyName, 'alert', 'AlertPopup', 'Get notified when things happen in Adaptable that you need to know about', api);
|
|
21
22
|
this.isListeningToCellDataChanges = false;
|
|
@@ -182,6 +183,10 @@ export class AlertModule extends AdaptableModuleBase {
|
|
|
182
183
|
const alertType = getAlertType(alert);
|
|
183
184
|
return {
|
|
184
185
|
items: [
|
|
186
|
+
{
|
|
187
|
+
name: 'Name',
|
|
188
|
+
values: [alert.Name],
|
|
189
|
+
},
|
|
185
190
|
getAlertTypeViewItems(alert),
|
|
186
191
|
alertType === 'DataChange' && {
|
|
187
192
|
...getScopeViewItems(alert.Scope, this.api),
|
|
@@ -39,8 +39,8 @@ export class BulkUpdateModule extends AdaptableModuleBase {
|
|
|
39
39
|
IsValid: false,
|
|
40
40
|
Alert: {
|
|
41
41
|
alertType: 'generic',
|
|
42
|
-
header: 'Bulk Update
|
|
43
|
-
message: '
|
|
42
|
+
header: 'Bulk Update',
|
|
43
|
+
message: 'Editing is not available in Pivot Mode.',
|
|
44
44
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
45
45
|
},
|
|
46
46
|
};
|
|
@@ -50,8 +50,8 @@ export class BulkUpdateModule extends AdaptableModuleBase {
|
|
|
50
50
|
IsValid: false,
|
|
51
51
|
Alert: {
|
|
52
52
|
alertType: 'generic',
|
|
53
|
-
header: 'Bulk Update
|
|
54
|
-
message: 'No cells
|
|
53
|
+
header: 'Bulk Update',
|
|
54
|
+
message: 'No cells selected. Please select one or more cells to continue.',
|
|
55
55
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
56
56
|
},
|
|
57
57
|
};
|
|
@@ -61,8 +61,8 @@ export class BulkUpdateModule extends AdaptableModuleBase {
|
|
|
61
61
|
IsValid: false,
|
|
62
62
|
Alert: {
|
|
63
63
|
alertType: 'generic',
|
|
64
|
-
header: 'Bulk Update
|
|
65
|
-
message: 'Bulk Update
|
|
64
|
+
header: 'Bulk Update',
|
|
65
|
+
message: 'Bulk Update supports editing a single column at a time. Please adjust your selection.',
|
|
66
66
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
67
67
|
},
|
|
68
68
|
};
|
|
@@ -74,8 +74,8 @@ export class BulkUpdateModule extends AdaptableModuleBase {
|
|
|
74
74
|
IsValid: false,
|
|
75
75
|
Alert: {
|
|
76
76
|
alertType: 'generic',
|
|
77
|
-
header: 'Bulk Update
|
|
78
|
-
message: 'Bulk Update is not
|
|
77
|
+
header: 'Bulk Update',
|
|
78
|
+
message: 'Bulk Update is not available for read-only cells. Please adjust your selection.',
|
|
79
79
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
80
80
|
},
|
|
81
81
|
};
|
|
@@ -7,6 +7,7 @@ import { getCalculatedColumnSettingsTags } from '../View/CalculatedColumn/Utilit
|
|
|
7
7
|
import { getExpressionViewItems } from '../Utilities/getExpressionViewItems';
|
|
8
8
|
import { getObjectTagsViewItems } from '../Utilities/getObjectTagsViewItems';
|
|
9
9
|
export class CalculatedColumnModule extends AdaptableModuleBase {
|
|
10
|
+
isListeningToCellDataChanges;
|
|
10
11
|
constructor(api) {
|
|
11
12
|
super(ModuleConstants.CalculatedColumnModuleId, ModuleConstants.CalculatedColumnFriendlyName, 'calculated-column', 'CalculatedColumnPopup', 'Create bespoke columns whose cell value is derived dynamically from an Expression', api);
|
|
12
13
|
this.isListeningToCellDataChanges = false;
|
|
@@ -8,9 +8,9 @@ import { AdaptableModuleBase } from './AdaptableModuleBase';
|
|
|
8
8
|
* Module that provides Cell Summaries on numeric columns
|
|
9
9
|
*/
|
|
10
10
|
export class CellSummaryModule extends AdaptableModuleBase {
|
|
11
|
+
cachedCellSummary = new WeakMap();
|
|
11
12
|
constructor(api) {
|
|
12
13
|
super(ModuleConstants.CellSummaryModuleId, ModuleConstants.CellSummaryFriendlyName, 'cells', 'CellSummaryPopup', 'See summary information on a group of numeric cells using multiple summary operations', api);
|
|
13
|
-
this.cachedCellSummary = new WeakMap();
|
|
14
14
|
}
|
|
15
15
|
getViewAccessLevel() {
|
|
16
16
|
return 'Full';
|
|
@@ -47,6 +47,10 @@ export class CustomSortModule extends AdaptableModuleBase {
|
|
|
47
47
|
toView(customSort) {
|
|
48
48
|
return {
|
|
49
49
|
items: [
|
|
50
|
+
{
|
|
51
|
+
name: 'Name',
|
|
52
|
+
values: [customSort.Name],
|
|
53
|
+
},
|
|
50
54
|
getCustomSortColumnViewItems(customSort, this.api),
|
|
51
55
|
getCustomSortSortOrderViewItems(customSort),
|
|
52
56
|
getObjectTagsViewItems(customSort, this.api),
|
|
@@ -2,6 +2,7 @@ import { AdaptableModuleBase } from './AdaptableModuleBase';
|
|
|
2
2
|
import * as ModuleConstants from '../Utilities/Constants/ModuleConstants';
|
|
3
3
|
import { DataChangeHistoryStatusBarContent } from '../View/DataChangeHistory/DataChangeHistoryStatusBarContent';
|
|
4
4
|
export class DataChangeHistoryModule extends AdaptableModuleBase {
|
|
5
|
+
isListeningToCellDataChanges;
|
|
5
6
|
constructor(api) {
|
|
6
7
|
super(ModuleConstants.DataChangeHistoryModuleId, ModuleConstants.DataChangeHistoryFriendlyName, 'target', 'DataChangeHistoryPopup', 'Provides an overview of all previous changes, giving the possibility to undo specific changes', api);
|
|
7
8
|
this.isListeningToCellDataChanges = false;
|
|
@@ -12,6 +12,7 @@ import { FlashingCellWizard } from '../View/FlashingCell/Wizard/FlashingCellWiza
|
|
|
12
12
|
import { getFlashingCellDurationViewItems } from './Utilities/FlashingCell/getFlashingCellDurationViewItems';
|
|
13
13
|
import { errorOnce } from '../agGrid/AdaptableLogger';
|
|
14
14
|
export class FlashingCellModule extends AdaptableModuleBase {
|
|
15
|
+
isListeningToCellDataChanges;
|
|
15
16
|
constructor(api) {
|
|
16
17
|
super(ModuleConstants.FlashingCellModuleId, ModuleConstants.FlashingCellFriendlyName, 'lightning', 'FlashingAlert', 'Flash cells when they change', api);
|
|
17
18
|
this.isListeningToCellDataChanges = false;
|
|
@@ -181,6 +182,7 @@ export class FlashingCellModule extends AdaptableModuleBase {
|
|
|
181
182
|
}
|
|
182
183
|
return [
|
|
183
184
|
this.createMenuItemReduxAction('flashing-cell-add', 'Add Flashing Cell', this.moduleInfo.Glyph, FlashingCellRedux.FlashingCellDefinitionAdd({
|
|
185
|
+
Name: `Any Change [${column.columnId}]`,
|
|
184
186
|
Scope: {
|
|
185
187
|
ColumnIds: [column.columnId],
|
|
186
188
|
},
|
|
@@ -246,6 +248,10 @@ export class FlashingCellModule extends AdaptableModuleBase {
|
|
|
246
248
|
toView(flashingCell) {
|
|
247
249
|
return {
|
|
248
250
|
items: [
|
|
251
|
+
{
|
|
252
|
+
name: 'Name',
|
|
253
|
+
values: [flashingCell.Name],
|
|
254
|
+
},
|
|
249
255
|
{ ...getScopeViewItems(flashingCell.Scope, this.api), label: 'Trigger' },
|
|
250
256
|
{
|
|
251
257
|
...getRuleViewItems(flashingCell.Rule, this.api),
|
|
@@ -82,6 +82,10 @@ export class FormatColumnModule extends AdaptableModuleBase {
|
|
|
82
82
|
return {
|
|
83
83
|
abObject: formatColumn,
|
|
84
84
|
items: [
|
|
85
|
+
{
|
|
86
|
+
name: 'Name',
|
|
87
|
+
values: [formatColumn.Name],
|
|
88
|
+
},
|
|
85
89
|
getScopeViewItems(formatColumn.Scope, this.api),
|
|
86
90
|
getFormatColumnSettingsTargetItems(formatColumn),
|
|
87
91
|
formatColumn.Rule && getRuleViewItems(formatColumn.Rule, this.api),
|
|
@@ -5,6 +5,7 @@ import { FreeTextColumnWizard } from '../View/FreeTextColumn/Wizard/FreeTextColu
|
|
|
5
5
|
import { getObjectTagsViewItems } from '../Utilities/getObjectTagsViewItems';
|
|
6
6
|
import ArrayExtensions from '../Utilities/Extensions/ArrayExtensions';
|
|
7
7
|
export class FreeTextColumnModule extends AdaptableModuleBase {
|
|
8
|
+
isListeningToCellDataChanges;
|
|
8
9
|
constructor(api) {
|
|
9
10
|
super(ModuleConstants.FreeTextColumnModuleId, ModuleConstants.FreeTextColumnFriendlyName, 'horizontal-lines', 'FreeTextColumnPopup', 'Dynamic column showing custom content (stored in state and not with grid data)', api);
|
|
10
11
|
this.isListeningToCellDataChanges = false;
|
|
@@ -17,9 +17,10 @@ import { getGridFilterViewItems } from '../View/Layout/Wizard/getGridFilterPrevi
|
|
|
17
17
|
import { RowSummaryService } from '../Utilities/Services/RowSummaryService';
|
|
18
18
|
import { isPivotLayout } from '../Api/Implementation/LayoutHelpers';
|
|
19
19
|
export class LayoutModule extends AdaptableModuleBase {
|
|
20
|
+
LayoutState;
|
|
21
|
+
rowSummaryService = new RowSummaryService(this.api);
|
|
20
22
|
constructor(api) {
|
|
21
23
|
super(ModuleConstants.LayoutModuleId, ModuleConstants.LayoutFriendlyName, 'grid', 'LayoutPopup', 'Named sets of column visibility, order, groupings, aggregation, pivots etc.', api);
|
|
22
|
-
this.rowSummaryService = new RowSummaryService(this.api);
|
|
23
24
|
}
|
|
24
25
|
onAdaptableReady() {
|
|
25
26
|
this.rowSummaryService.onAdaptableReady();
|
|
@@ -298,14 +299,14 @@ export class LayoutModule extends AdaptableModuleBase {
|
|
|
298
299
|
}
|
|
299
300
|
return {
|
|
300
301
|
items: [
|
|
301
|
-
{
|
|
302
|
-
name: 'Grid Type',
|
|
303
|
-
values: [isPivotLayout(layout) ? 'Pivot' : 'Table'],
|
|
304
|
-
},
|
|
305
302
|
{
|
|
306
303
|
name: 'Name',
|
|
307
304
|
values: [layout.Name],
|
|
308
305
|
},
|
|
306
|
+
{
|
|
307
|
+
name: 'Grid Type',
|
|
308
|
+
values: [isPivotLayout(layout) ? 'Pivot' : 'Table'],
|
|
309
|
+
},
|
|
309
310
|
/**
|
|
310
311
|
* Hide pivot columns.
|
|
311
312
|
*
|
|
@@ -11,6 +11,8 @@ import { MovePlusMinus } from '../View/PlusMinus/MovePlusMinus';
|
|
|
11
11
|
import { PlusMinusWizard } from '../View/PlusMinus/Wizard/PlusMinusWizard';
|
|
12
12
|
import { errorOnce } from '../agGrid/AdaptableLogger';
|
|
13
13
|
export class PlusMinusModule extends AdaptableModuleBase {
|
|
14
|
+
shouldHandleKeyDown;
|
|
15
|
+
adaptable;
|
|
14
16
|
constructor(api) {
|
|
15
17
|
super(ModuleConstants.PlusMinusModuleId, ModuleConstants.PlusMinusFriendlyName, 'add-circle', 'PlusMinusPopup', 'Configure how a cell value will edit when the + or - keys are pressed', api);
|
|
16
18
|
this.shouldHandleKeyDown = false;
|
|
@@ -184,7 +186,7 @@ export class PlusMinusModule extends AdaptableModuleBase {
|
|
|
184
186
|
failedMessages.push(failedMessage);
|
|
185
187
|
}
|
|
186
188
|
});
|
|
187
|
-
this.api.alertApi.showAlertError('
|
|
189
|
+
this.api.alertApi.showAlertError('Plus/Minus', 'One or more nudge values were rejected by validation rules: ' + failedMessages.toString());
|
|
188
190
|
}
|
|
189
191
|
}
|
|
190
192
|
getTeamSharingAction() {
|
|
@@ -198,6 +200,10 @@ export class PlusMinusModule extends AdaptableModuleBase {
|
|
|
198
200
|
return {
|
|
199
201
|
abObject: plusMinus,
|
|
200
202
|
items: [
|
|
203
|
+
{
|
|
204
|
+
name: 'Name',
|
|
205
|
+
values: [plusMinus.Name],
|
|
206
|
+
},
|
|
201
207
|
{
|
|
202
208
|
name: 'Target',
|
|
203
209
|
...getScopeViewItems(plusMinus.Scope, this.api),
|
|
@@ -24,7 +24,7 @@ export class QuickSearchModule extends AdaptableModuleBase {
|
|
|
24
24
|
// Check for AG Grid QuickFilterModule if running Filter After Quick Search
|
|
25
25
|
if (api.optionsApi.getQuickSearchOptions().filterGridAfterQuickSearch) {
|
|
26
26
|
if (!api.internalApi.getAgGridModulesAdapter().isAgGridModuleRegistered('QuickFilterModule')) {
|
|
27
|
-
api.consoleError('
|
|
27
|
+
api.consoleError('Quick Search with filterGridAfterQuickSearch requires the AG Grid "QuickFilterModule". Quick Search will run but grid filters will not be applied.');
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
const isServerSideRowModel = agGridApi.getGridOption('rowModelType') === 'serverSide';
|
|
@@ -31,6 +31,7 @@ const NodeSchedule = {
|
|
|
31
31
|
},
|
|
32
32
|
};
|
|
33
33
|
export class ScheduleModule extends AdaptableModuleBase {
|
|
34
|
+
scheduleJobs;
|
|
34
35
|
constructor(api) {
|
|
35
36
|
super(ModuleConstants.ScheduleModuleId, ModuleConstants.ScheduleFriendlyName, 'schedule', 'SchedulePopup', 'Schedule AdapTable functionality to run at times of your choosing (e.g. run reports)', api);
|
|
36
37
|
this.scheduleJobs = [];
|
|
@@ -131,6 +132,10 @@ export class ScheduleModule extends AdaptableModuleBase {
|
|
|
131
132
|
return {
|
|
132
133
|
abObject: schedule,
|
|
133
134
|
items: [
|
|
135
|
+
{
|
|
136
|
+
name: 'Name',
|
|
137
|
+
values: [schedule.Name],
|
|
138
|
+
},
|
|
134
139
|
{
|
|
135
140
|
name: 'Settings',
|
|
136
141
|
values: getScheduleSettingsValues(schedule).map((description) => `${description.label}: ${description.value}`),
|
|
@@ -7,15 +7,19 @@ export class SettingsPanelModule extends AdaptableModuleBase {
|
|
|
7
7
|
super(ModuleConstants.SettingsPanelModuleId, friendlyName, 'settings', null, 'Manage all Adaptable Settings', api);
|
|
8
8
|
}
|
|
9
9
|
createColumnMenuItems(column) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
if (this.isModuleVisible()) {
|
|
11
|
+
return [
|
|
12
|
+
// To do : get the icon and name from settings in case they have changed?
|
|
13
|
+
this.createMenuItemReduxAction('settings-panel-open', 'Open ' + this.moduleInfo.FriendlyName, this.moduleInfo.Glyph, PopupRedux.PopupShowScreen()),
|
|
14
|
+
];
|
|
15
|
+
}
|
|
14
16
|
}
|
|
15
17
|
createContextMenuItems(menuContext) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
if (this.isModuleVisible()) {
|
|
19
|
+
return [
|
|
20
|
+
this.createMenuItemReduxAction('settings-panel-open', 'Open ' + this.moduleInfo.FriendlyName, this.moduleInfo.Glyph, PopupRedux.PopupShowScreen()),
|
|
21
|
+
];
|
|
22
|
+
}
|
|
19
23
|
}
|
|
20
24
|
createModuleMenuItem(source) {
|
|
21
25
|
if (this.isModuleVisible()) {
|
|
@@ -9,6 +9,8 @@ import { getShortcutSettingsViewItems } from './Utilities/Shortcut/getShortcutSe
|
|
|
9
9
|
import { getObjectTagsViewItems } from '../Utilities/getObjectTagsViewItems';
|
|
10
10
|
import { getScopeViewItems } from '../Utilities/getScopeViewItems';
|
|
11
11
|
export class ShortcutModule extends AdaptableModuleBase {
|
|
12
|
+
shouldHandleKeyDown;
|
|
13
|
+
adaptable;
|
|
12
14
|
constructor(api) {
|
|
13
15
|
super(ModuleConstants.ShortcutModuleId, ModuleConstants.ShortcutFriendlyName, 'link', 'ShortcutPopup', 'Set up rules so cells update mathematically when keys are pressed in numeric cells', api);
|
|
14
16
|
this.shouldHandleKeyDown = false;
|
|
@@ -80,6 +82,10 @@ export class ShortcutModule extends AdaptableModuleBase {
|
|
|
80
82
|
return {
|
|
81
83
|
abObject: shortcut,
|
|
82
84
|
items: [
|
|
85
|
+
{
|
|
86
|
+
name: 'Name',
|
|
87
|
+
values: [shortcut.Name],
|
|
88
|
+
},
|
|
83
89
|
getScopeViewItems(shortcut.Scope, this.api),
|
|
84
90
|
getShortcutSettingsViewItems(shortcut),
|
|
85
91
|
getObjectTagsViewItems(shortcut, this.api),
|