@adaptabletools/adaptable 23.0.4-canary.0 → 23.0.5-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/agGrid.js +0 -31
- package/index.js +0 -31
- package/package.json +1 -1
- package/src/AdaptableInterfaces/IAdaptable.d.ts +0 -2
- package/src/AdaptableOptions/AdaptablePlugin.js +1 -9
- package/src/AdaptableOptions/DefaultAdaptableOptions.js +3 -39
- package/src/AdaptableOptions/SettingsPanelOptions.d.ts +44 -16
- package/src/AdaptableState/Aggregations/only.js +0 -11
- package/src/AdaptableState/Aggregations/weightedAverage.js +0 -26
- package/src/AdaptableState/Common/AdaptableColumn.js +0 -1
- package/src/AdaptableState/Common/AdaptableForm.js +0 -49
- package/src/AdaptableState/Common/AdaptableFormatPresets.js +0 -13
- package/src/AdaptableState/Common/AdaptablePredicate.js +3 -125
- package/src/AdaptableState/Common/AggregationColumns.js +0 -10
- package/src/AdaptableState/Common/Enums.js +0 -3
- package/src/AdaptableState/Common/Menu.js +1 -7
- package/src/AdaptableState/Common/MenuItem.js +0 -2
- package/src/AdaptableState/Common/Types.js +2 -5
- package/src/AdaptableState/StatusBarState.js +0 -3
- package/src/AdaptableState/StyledColumns/BadgeStyle.js +0 -1
- package/src/AdaptableState/StyledColumns/Common/BarStyleProperties.js +0 -4
- package/src/AdaptableState/StyledColumns/Common/CellTextOptions.js +0 -5
- package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.js +0 -8
- package/src/AdaptableState/Uuid.js +0 -1
- package/src/Api/Implementation/AdaptableApiImpl.js +0 -4
- package/src/Api/Implementation/AlertApiImpl.js +0 -21
- package/src/Api/Implementation/ApiBase.js +0 -24
- package/src/Api/Implementation/CalculatedColumnApiImpl.js +0 -1
- package/src/Api/Implementation/ChartingApiImpl.js +0 -3
- package/src/Api/Implementation/ColumnApiImpl.js +1 -15
- package/src/Api/Implementation/ColumnFilterApiImpl.js +0 -9
- package/src/Api/Implementation/ColumnScopeApiImpl.js +0 -21
- package/src/Api/Implementation/DashboardApiImpl.js +0 -1
- package/src/Api/Implementation/EntitlementApiImpl.js +0 -1
- package/src/Api/Implementation/ExportApiImpl.js +0 -10
- package/src/Api/Implementation/ExpressionApiImpl.js +0 -1
- package/src/Api/Implementation/FormatColumnApiImpl.js +0 -3
- package/src/Api/Implementation/FreeTextColumnApiImpl.js +0 -2
- package/src/Api/Implementation/GridApiImpl.js +1 -22
- package/src/Api/Implementation/GridFilterApiImpl.js +0 -2
- package/src/Api/Implementation/LayoutApiImpl.js +0 -18
- package/src/Api/Implementation/LayoutHelpers.js +0 -16
- package/src/Api/Implementation/NamedQueryApiImpl.js +0 -1
- package/src/Api/Implementation/PredicateApiImpl.js +0 -5
- package/src/Api/Implementation/RowFormApiImpl.js +0 -2
- package/src/Api/Implementation/StateApiImpl.js +0 -7
- package/src/Api/Implementation/SystemStatusApiImpl.js +0 -2
- package/src/Api/Implementation/TeamSharingApiImpl.js +0 -3
- package/src/Api/Implementation/UserInterfaceApiImpl.js +0 -1
- package/src/Api/Internal/ActionColumnInternalApi.js +0 -1
- package/src/Api/Internal/AdaptableInternalApi.d.ts +0 -2
- package/src/Api/Internal/AdaptableInternalApi.js +1 -39
- package/src/Api/Internal/AlertInternalApi.js +1 -102
- package/src/Api/Internal/CalculatedColumnInternalApi.js +0 -17
- package/src/Api/Internal/ChartingInternalApi.js +0 -1
- package/src/Api/Internal/ColumnFilterInternalApi.js +0 -52
- package/src/Api/Internal/ColumnInternalApi.js +0 -32
- package/src/Api/Internal/CustomSortInternalApi.js +0 -5
- package/src/Api/Internal/DashboardInternalApi.js +0 -23
- package/src/Api/Internal/DataImportInternalApi.js +0 -1
- package/src/Api/Internal/EventInternalApi.js +0 -2
- package/src/Api/Internal/ExportInternalApi.js +1 -16
- package/src/Api/Internal/ExpressionInternalApi.js +0 -23
- package/src/Api/Internal/Fdc3InternalApi.js +0 -9
- package/src/Api/Internal/FlashingCellInternalApi.js +0 -5
- package/src/Api/Internal/FormatColumnInternalApi.js +5 -107
- package/src/Api/Internal/FreeTextColumnInternalApi.js +0 -8
- package/src/Api/Internal/GridFilterInternalApi.js +0 -3
- package/src/Api/Internal/GridInternalApi.js +0 -37
- package/src/Api/Internal/LayoutInternalApi.js +0 -18
- package/src/Api/Internal/NamedQueryInternalApi.js +0 -9
- package/src/Api/Internal/PredicateInternalApi.js +0 -23
- package/src/Api/Internal/RowFormInternalApi.js +0 -18
- package/src/Api/Internal/StateInternalApi.js +0 -25
- package/src/Api/Internal/StyledColumnInternalApi.js +0 -62
- package/src/Api/Internal/TeamSharingInternalApi.js +0 -9
- package/src/Redux/ActionsReducers/AlertRedux.js +0 -24
- package/src/Redux/ActionsReducers/ApplicationRedux.js +0 -9
- package/src/Redux/ActionsReducers/BulkUpdateRedux.js +0 -6
- package/src/Redux/ActionsReducers/CalculatedColumnRedux.js +1 -16
- package/src/Redux/ActionsReducers/ChartingRedux.js +0 -24
- package/src/Redux/ActionsReducers/CommentsRedux.js +0 -24
- package/src/Redux/ActionsReducers/CustomSortRedux.js +0 -24
- package/src/Redux/ActionsReducers/DashboardRedux.js +0 -33
- package/src/Redux/ActionsReducers/ExportRedux.js +0 -36
- package/src/Redux/ActionsReducers/FlashingCellRedux.js +0 -24
- package/src/Redux/ActionsReducers/FormatColumnRedux.js +0 -36
- package/src/Redux/ActionsReducers/FreeTextColumnRedux.js +1 -20
- package/src/Redux/ActionsReducers/InternalRedux.js +0 -42
- package/src/Redux/ActionsReducers/LayoutRedux.js +1 -67
- package/src/Redux/ActionsReducers/NamedQueryRedux.js +0 -15
- package/src/Redux/ActionsReducers/NoteRedux.js +0 -14
- package/src/Redux/ActionsReducers/PluginsRedux.js +0 -3
- package/src/Redux/ActionsReducers/PlusMinusRedux.js +0 -34
- package/src/Redux/ActionsReducers/PopupRedux.js +2 -6
- package/src/Redux/ActionsReducers/QuickSearchRedux.js +0 -15
- package/src/Redux/ActionsReducers/ShortcutRedux.js +0 -24
- package/src/Redux/ActionsReducers/SmartEditRedux.js +0 -6
- package/src/Redux/ActionsReducers/StatusBarRedux.js +0 -6
- package/src/Redux/ActionsReducers/StyledColumnRedux.js +0 -27
- package/src/Redux/ActionsReducers/SystemStatusRedux.js +0 -6
- package/src/Redux/ActionsReducers/TeamSharingRedux.js +0 -1
- package/src/Redux/ActionsReducers/ThemeRedux.js +0 -26
- package/src/Redux/ActionsReducers/ToolPanelRedux.js +0 -22
- package/src/Redux/ActionsReducers/UserInterfaceRedux.js +0 -3
- package/src/Redux/ActionsReducers/utils.js +0 -6
- package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +0 -1
- package/src/Redux/Store/AdaptableReduxMerger.js +0 -25
- package/src/Redux/Store/AdaptableStore.js +5 -301
- package/src/Strategy/AdaptableModuleBase.js +0 -35
- package/src/Strategy/AlertModule.js +0 -9
- package/src/Strategy/CellSummaryModule.js +0 -12
- package/src/Strategy/ChartingModule.js +0 -1
- package/src/Strategy/ColumnFilterModule.js +1 -11
- package/src/Strategy/CommentModule.js +0 -2
- package/src/Strategy/DashboardModule.js +0 -4
- package/src/Strategy/ExportModule.js +0 -1
- package/src/Strategy/FlashingCellModule.js +0 -8
- package/src/Strategy/FormatColumnModule.js +0 -3
- package/src/Strategy/FreeTextColumnModule.js +0 -3
- package/src/Strategy/LayoutModule.js +0 -26
- package/src/Strategy/NoteModule.js +0 -3
- package/src/Strategy/PlusMinusModule.js +0 -3
- package/src/Strategy/SettingsPanelModule.js +0 -1
- package/src/Strategy/ShortcutModule.js +0 -1
- package/src/Strategy/SmartEditModule.js +0 -5
- package/src/Strategy/StatusBarModule.js +0 -7
- package/src/Strategy/StyledColumnModule.js +1 -16
- package/src/Strategy/TeamSharingModule.js +0 -9
- package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.js +0 -5
- package/src/Utilities/Constants/DocumentationLinkConstants.js +0 -1
- package/src/Utilities/Constants/GeneralConstants.js +0 -10
- package/src/Utilities/Constants/ObjectDefaultConstants.js +0 -3
- package/src/Utilities/Constants/ReduxConstants.js +4 -8
- package/src/Utilities/Emitter.js +0 -9
- package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.js +0 -8
- package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +0 -15
- package/src/Utilities/ExpressionFunctions/booleanExpressionFunctions.js +0 -3
- package/src/Utilities/ExpressionFunctions/deepMap.js +0 -16
- package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +0 -9
- package/src/Utilities/ExpressionFunctions/groupingMap.js +0 -9
- package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +7 -78
- package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +0 -9
- package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +2 -16
- package/src/Utilities/Extensions/ArrayExtensions.js +1 -63
- package/src/Utilities/Extensions/NumberExtensions.js +0 -27
- package/src/Utilities/Extensions/ObjectExtensions.js +0 -36
- package/src/Utilities/Extensions/StringExtensions.js +0 -27
- package/src/Utilities/Helpers/ActionColumnHelper.js +0 -4
- package/src/Utilities/Helpers/AdaptableHelper.js +0 -8
- package/src/Utilities/Helpers/DateHelper.js +0 -10
- package/src/Utilities/Helpers/DisplayFormatHelper.js +0 -8
- package/src/Utilities/Helpers/Helper.js +3 -9
- package/src/Utilities/Helpers/PlusMinusHelper.js +0 -20
- package/src/Utilities/Helpers/QuickSearchHelper.js +0 -5
- package/src/Utilities/Helpers/Scheduling/CronExpression.js +0 -43
- package/src/Utilities/Helpers/Scheduling/ScheduledReportHelper.js +0 -4
- package/src/Utilities/Helpers/SettingsPanelHelper.js +40 -4
- package/src/Utilities/Helpers/StyleHelper.js +0 -56
- package/src/Utilities/Helpers/StyledColumns/BarStylesHelper.js +0 -46
- package/src/Utilities/Helpers/StyledColumns/GradientStyleHelper.js +0 -38
- package/src/Utilities/Helpers/StyledColumns/IconStyleHelper.js +0 -39
- package/src/Utilities/Helpers/StyledColumns/PercentBarStyleHelper.js +0 -1
- package/src/Utilities/Helpers/StyledColumns/SparklineStyleHelper.js +0 -5
- package/src/Utilities/Helpers/StyledColumns/StyledColumnHelper.js +0 -37
- package/src/Utilities/Helpers/TimingHelper.js +0 -13
- package/src/Utilities/ObjectFactory.js +2 -4
- package/src/Utilities/Services/AggregatedScalarLiveValue.js +0 -7
- package/src/Utilities/Services/AlertService.js +0 -1
- package/src/Utilities/Services/AnnotationsService.js +0 -22
- package/src/Utilities/Services/CalculatedColumnExpressionService.js +0 -8
- package/src/Utilities/Services/ChartingService.js +0 -9
- package/src/Utilities/Services/DataService.js +0 -11
- package/src/Utilities/Services/Fdc3Service.js +0 -3
- package/src/Utilities/Services/FlashingCellService.js +0 -6
- package/src/Utilities/Services/ModuleService.js +0 -8
- package/src/Utilities/Services/QueryLanguageService.js +2 -25
- package/src/Utilities/Services/RowFormService.js +0 -1
- package/src/Utilities/Services/RowSummaryService.js +1 -20
- package/src/Utilities/Services/TeamSharingService.js +0 -15
- package/src/Utilities/Services/ThemeService.js +0 -7
- package/src/Utilities/Services/ValidationService.js +0 -21
- package/src/Utilities/createAgStatusPanelComponent.js +0 -3
- package/src/Utilities/getExpressionViewItems.js +0 -2
- package/src/Utilities/getObjectTagsViewItems.js +0 -1
- package/src/Utilities/getScrollbarSize.js +0 -1
- package/src/Utilities/logDeprecation.js +0 -3
- package/src/Utilities/resolveContainerElement.js +0 -21
- package/src/Utilities/runIfNotResolvedIn.js +0 -7
- package/src/Utilities/sortColumnStateForVisibleColumns.js +2 -12
- package/src/Utilities/waitForTimeout.js +0 -1
- package/src/Utilities/wizardSelection.js +0 -2
- package/src/View/AdaptablePopover/index.js +1 -1
- package/src/View/AdaptableView.js +1 -5
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +0 -4
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +0 -23
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.js +0 -2
- package/src/View/AdaptableWizardView/Wizard.js +0 -12
- package/src/View/AdaptableWizardView/helper.js +0 -11
- package/src/View/Alert/ActiveAlertsPanel.js +0 -2
- package/src/View/Alert/AlertStatusSubPanel.js +0 -8
- package/src/View/Alert/Utilities/getAlertType.js +0 -7
- package/src/View/Alert/Utilities/getDefaultAlertDefinition.js +0 -5
- package/src/View/Alert/Utilities/mapAlertDefinition.js +0 -3
- package/src/View/Alert/Wizard/AlertWizard.js +0 -2
- package/src/View/Alert/Wizard/isValidAlertRules.js +0 -1
- package/src/View/BulkUpdate/BulkUpdatePopup.js +0 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +1 -3
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +0 -1
- package/src/View/CalculatedColumn/utils.d.ts +1 -1
- package/src/View/CellSummary/CellSummaryPopup.js +0 -3
- package/src/View/CellSummary/CellSummaryStatusBarSubPanelPopover.js +1 -7
- package/src/View/Charting/EditChartButton.js +1 -4
- package/src/View/Charting/ShowChartButton.js +0 -3
- package/src/View/Charting/useAgChartState.js +0 -5
- package/src/View/Charting/useChartingElements.js +0 -4
- package/src/View/Charting/useExternalChartState.js +0 -6
- package/src/View/ColumnInfo/ColumnInfo.js +7 -17
- package/src/View/Comments/CommentsEditor.js +1 -16
- package/src/View/Components/AdaptableButton/AdaptableButtonComponent.js +0 -1
- package/src/View/Components/AdaptableButton/AdaptableButtonView.js +0 -3
- package/src/View/Components/AdaptableDateInput/index.js +2 -9
- package/src/View/Components/AdaptableIconComponent/index.js +0 -4
- package/src/View/Components/AdaptableIconSelector/index.js +0 -3
- package/src/View/Components/AdaptableInput/index.js +0 -2
- package/src/View/Components/Badge/index.js +0 -8
- package/src/View/Components/Buttons/ButtonNewPage.js +1 -2
- package/src/View/Components/Buttons/EntityListActionButtons.js +0 -1
- package/src/View/Components/CellPopup/index.js +1 -2
- package/src/View/Components/ColumnFilter/AdaptableColumnFilter.js +0 -4
- package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.js +0 -4
- package/src/View/Components/ColumnFilter/ColumnFilter.js +3 -46
- package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +0 -2
- package/src/View/Components/ColumnFilter/FloatingFilter.js +1 -20
- package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +2 -16
- package/src/View/Components/ColumnFilter/components/ColumnFilterInputList.js +1 -4
- package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +0 -1
- package/src/View/Components/ColumnFilter/components/FloatingFilterInputList.js +1 -6
- package/src/View/Components/ColumnFilter/components/FloatingFilterValues.js +0 -20
- package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.js +0 -5
- package/src/View/Components/ColumnFilter/utils.js +2 -9
- package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicateEditor.js +0 -2
- package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +0 -1
- package/src/View/Components/EntityRulesEditor/index.js +1 -11
- package/src/View/Components/ExternalRenderer.js +1 -3
- package/src/View/Components/FilterForm/ListBoxFilterForm.js +1 -52
- package/src/View/Components/ModuleValueSelector/index.js +0 -2
- package/src/View/Components/Panels/PanelWithImage.js +1 -5
- package/src/View/Components/Panels/PanelWithRow.js +0 -3
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +0 -6
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupBody.js +0 -3
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +0 -6
- package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +1 -2
- package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +0 -1
- package/src/View/Components/Popups/AdaptablePopupAlert.js +0 -3
- package/src/View/Components/Popups/AdaptableToaster.js +0 -2
- package/src/View/Components/Popups/WindowPopups/WindowPopups.js +0 -8
- package/src/View/Components/RangesComponent.js +0 -57
- package/src/View/Components/Selectors/BulkUpdateValueSelector.js +0 -3
- package/src/View/Components/Selectors/PermittedValuesSelector.js +1 -6
- package/src/View/Components/ToolPanel/AdaptableToolPanel.js +1 -18
- package/src/View/Components/ToolPanel/ToolPanelPopupSections.js +0 -4
- package/src/View/Components/ToolPanel/ToolPanelWrapper.js +1 -4
- package/src/View/Components/ValueSelector/index.js +0 -4
- package/src/View/Components/wizardColumnListStyles.js +0 -5
- package/src/View/Dashboard/CustomToolbar.js +1 -25
- package/src/View/Dashboard/PinnedToolbarsSelector.js +0 -1
- package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -22
- package/src/View/DataImport/DataImportWizard/sections/DataPreview.js +0 -1
- package/src/View/DataImport/systemFileHandlers.js +1 -1
- package/src/View/FlashingCell/Wizard/isValidFlashingCellRules.js +0 -1
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +0 -27
- package/src/View/FormatColumn/Wizard/FormatColumnPreview.js +0 -1
- package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +0 -7
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +0 -12
- package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +0 -10
- package/src/View/GridFilter/GridFilterPopup.js +0 -1
- package/src/View/GridFilter/useGridFilterExpressionEditor.js +0 -2
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +1 -31
- package/src/View/Layout/LayoutViewPanel.js +0 -2
- package/src/View/Layout/PivotDetailsPopoup.js +0 -2
- package/src/View/Layout/TransposedPopup.js +0 -7
- package/src/View/Layout/Wizard/LayoutWizard.js +1 -6
- package/src/View/Layout/Wizard/sections/AggregationsSection.js +0 -2
- package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -32
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +0 -3
- package/src/View/Layout/Wizard/sections/columnLayoutHelpers.js +0 -2
- package/src/View/Layout/Wizard/sections/layoutWizardColumns.js +0 -4
- package/src/View/Note/NotePopup.js +0 -1
- package/src/View/QuickSearch/QuickSearchPopup.js +0 -1
- package/src/View/StatusBar/AdaptableStatusBar.js +0 -4
- package/src/View/StatusBar/StatusBarPanel.js +0 -8
- package/src/View/StatusBar/StatusBarPopup.js +0 -2
- package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.js +0 -11
- package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.js +0 -28
- package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +0 -13
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +1 -25
- package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +0 -26
- package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.js +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +0 -40
- package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +0 -55
- package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.js +0 -15
- package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.js +0 -21
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextPreview.js +0 -10
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.js +0 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.js +0 -4
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +0 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.js +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.js +0 -13
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.js +0 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.js +0 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnSparklinePreview.js +0 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardRangesSection.js +0 -13
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +1 -13
- package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +0 -21
- package/src/View/SystemStatus/SystemStatusPopup.js +0 -1
- package/src/View/TeamSharing/SharedEntityObjectView.js +0 -1
- package/src/View/Theme/ThemeSelector.js +0 -1
- package/src/View/UIHelper.js +0 -6
- package/src/View/UIInterfaces.js +0 -1
- package/src/View/Wizard/CollapsibleWizardCard.js +1 -8
- package/src/View/Wizard/OnePageWizards.js +2 -9
- package/src/View/Wizard/SummaryColorTag.js +0 -1
- package/src/View/Wizard/useKeyboardNavigation.js +1 -3
- package/src/agGrid/Adaptable.js +0 -12
- package/src/agGrid/AdaptableAgGrid.d.ts +0 -2
- package/src/agGrid/AdaptableAgGrid.js +3 -482
- package/src/agGrid/AdaptableFilterHandler.js +0 -5
- package/src/agGrid/AdaptableLogger.js +0 -6
- package/src/agGrid/AgGridAdapter.js +3 -90
- package/src/agGrid/AgGridColumnAdapter.js +6 -168
- package/src/agGrid/AgGridExportAdapter.js +4 -106
- package/src/agGrid/AgGridFilterAdapter.js +0 -5
- package/src/agGrid/AgGridFloatingFilterAdapter.js +0 -10
- package/src/agGrid/AgGridMenuAdapter.js +0 -143
- package/src/agGrid/AgGridModulesAdapter.js +0 -2
- package/src/agGrid/AgGridOptionsService.js +0 -2
- package/src/agGrid/AgGridThemeAdapter.js +0 -7
- package/src/agGrid/agGridDataTypeDefinitions.js +0 -8
- package/src/agGrid/cellRenderers/BadgeRenderer.js +0 -10
- package/src/agGrid/cellRenderers/BulletChartRenderer.js +1 -96
- package/src/agGrid/cellRenderers/IconRenderer.js +0 -55
- package/src/agGrid/cellRenderers/PercentBarRenderer.js +0 -51
- package/src/agGrid/cellRenderers/RangeBarRenderer.js +1 -50
- package/src/agGrid/cellRenderers/RatingRenderer.js +0 -40
- package/src/agGrid/editors/AdaptableDateEditor/index.js +0 -18
- package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +0 -3
- package/src/agGrid/editors/AdaptableNumberEditor/index.js +0 -11
- package/src/agGrid/editors/AdaptablePercentageEditor/index.js +0 -9
- package/src/agGrid/index.js +1 -9
- package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +1 -73
- package/src/components/ColorPicker/ColorPicker.js +0 -6
- package/src/components/Combobox/VirtualizedList.js +0 -5
- package/src/components/Combobox/index.js +5 -63
- package/src/components/Dashboard/Dashboard.js +1 -4
- package/src/components/Datepicker/index.js +2 -97
- package/src/components/DragAndDropContext/TabList.js +2 -6
- package/src/components/Drawer/index.js +0 -7
- package/src/components/Dropdown/index.js +0 -1
- package/src/components/DropdownButton/index.js +0 -1
- package/src/components/ExpressionEditor/BaseEditorInput.js +1 -16
- package/src/components/ExpressionEditor/EditorButton.js +0 -1
- package/src/components/ExpressionEditor/EditorInput.js +1 -7
- package/src/components/ExpressionEditor/EditorInputWithWhereClause.js +0 -1
- package/src/components/ExpressionEditor/ExpressionPreview.js +4 -14
- package/src/components/ExpressionEditor/NamedQueryContext.js +0 -1
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +1 -6
- package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +0 -12
- package/src/components/ExpressionEditor/QueryBuilder/utils.js +0 -4
- package/src/components/ExpressionEditor/index.js +5 -14
- package/src/components/Icon/index.js +0 -2
- package/src/components/Input/NumberInput.js +0 -10
- package/src/components/Modal/Backdrop.js +0 -1
- package/src/components/OverlayTrigger/Overlay.js +0 -1
- package/src/components/OverlayTrigger/index.js +3 -15
- package/src/components/ProgressIndicator/ProgressIndicator.js +3 -16
- package/src/components/ResizeObserver/index.js +0 -7
- package/src/components/SelectableList/index.js +0 -7
- package/src/components/SimpleButton/index.js +2 -16
- package/src/components/Tabs/index.js +0 -3
- package/src/components/Tag/Tag.js +0 -1
- package/src/components/Tag/columnScopeTagHelpers.js +0 -2
- package/src/components/Textarea/index.js +1 -8
- package/src/components/Toggle/Toggle.js +1 -5
- package/src/components/Toggle/ToggleGroup.js +1 -3
- package/src/components/ToggleButton/index.js +1 -3
- package/src/components/Tree/TreeDropdown/index.js +2 -130
- package/src/components/Tree/treeUtils.js +0 -4
- package/src/components/WindowModal/WindowModal.js +1 -14
- package/src/components/WindowModal/useStacking.js +0 -7
- package/src/components/icons/bullet-chart.js +0 -4
- package/src/components/icons/icon-style.js +0 -4
- package/src/components/icons/index.js +26 -36
- package/src/components/icons/range-bar.js +0 -5
- package/src/components/icons/star.js +0 -1
- package/src/components/twUtils.js +3 -12
- package/src/components/ui/calendar.js +1 -9
- package/src/components/ui/combobox.js +0 -4
- package/src/components/utils/captureTabNavigation/getFocusableChildren.js +0 -1
- package/src/components/utils/useDraggable.js +0 -4
- package/src/components/utils/useProperty.js +0 -18
- package/src/devTools/index.js +0 -1
- package/src/env.js +2 -2
- package/src/layout-manager/src/LMEmitter.js +0 -5
- package/src/layout-manager/src/destructurePivotColumnId.js +0 -19
- package/src/layout-manager/src/index.js +2 -182
- package/src/layout-manager/src/isLayoutEqual.js +0 -1
- package/src/layout-manager/src/isPivotColumnTotal.js +0 -2
- package/src/layout-manager/src/normalizeLayoutModel.js +0 -27
- package/src/layout-manager/src/simplifyLayoutModel.js +0 -11
- package/src/layout-manager/src/sortColumnIdsByOrder.js +2 -12
- package/src/lib/utils.js +0 -1
- package/src/migration/AdaptableUpgradeHelper.js +0 -2
- package/src/migration/VersionUpgrade17.js +0 -33
- package/src/migration/VersionUpgrade20.js +1 -21
- package/src/migration/VersionUpgrade21.js +0 -3
- package/src/migration/VersionUpgrade22.js +0 -11
- package/src/migration/VersionUpgrade23.js +0 -73
- package/src/parser/src/evaluator.js +0 -1
- package/src/parser/src/index.js +0 -1
- package/src/parser/src/parser.js +4 -103
- package/src/parser/src/predicate/mapExpressionToQlPredicate.js +0 -5
- package/src/parser/src/predicate/mapQlPredicateToExpression.js +0 -2
- package/src/parser/src/tokenizer.js +0 -2
- package/src/parser/src/utils.js +0 -1
- package/src/renderReactRoot.js +0 -12
- package/src/setupDevTools.js +0 -6
- package/src/twMerge.js +0 -1
- package/src/types.d.ts +1 -1
- package/src/types.js +0 -2
- package/tsconfig.esm.tsbuildinfo +1 -1
- package/src/Utilities/Services/Interface/IMetamodelService.d.ts +0 -20
- package/src/Utilities/Services/Interface/IMetamodelService.js +0 -1
- package/src/Utilities/Services/MetamodelService.d.ts +0 -17
- package/src/Utilities/Services/MetamodelService.js +0 -162
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.d.ts +0 -6
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +0 -99
- package/src/metamodel/adaptable-metamodel-model.d.ts +0 -26
- package/src/metamodel/adaptable-metamodel-model.js +0 -1
- package/src/metamodel/adaptable.metamodel.d.ts +0 -6244
- package/src/metamodel/adaptable.metamodel.js +0 -1
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import tinycolor from 'tinycolor2';
|
|
2
2
|
import { EnumExtensions } from '../Extensions/EnumExtensions';
|
|
3
|
-
/**
|
|
4
|
-
* Keys belonging to the "Font" slice (text rendering + alignment).
|
|
5
|
-
* See {@link CellFontStyle}.
|
|
6
|
-
*/
|
|
7
3
|
export const CELL_FONT_STYLE_KEYS = [
|
|
8
4
|
'ForeColor',
|
|
9
5
|
'FontWeight',
|
|
@@ -12,10 +8,6 @@ export const CELL_FONT_STYLE_KEYS = [
|
|
|
12
8
|
'FontSize',
|
|
13
9
|
'Alignment',
|
|
14
10
|
];
|
|
15
|
-
/**
|
|
16
|
-
* Keys belonging to the "Cell" slice (cell chrome — background and border).
|
|
17
|
-
* See {@link CellBoxStyle}.
|
|
18
|
-
*/
|
|
19
11
|
export const CELL_BOX_STYLE_KEYS = [
|
|
20
12
|
'BackColor',
|
|
21
13
|
'BorderColor',
|
|
@@ -27,17 +19,8 @@ const hasAtLeastOneKey = (obj, keys) => {
|
|
|
27
19
|
}
|
|
28
20
|
return keys.some((k) => obj[k] !== undefined && obj[k] !== null);
|
|
29
21
|
};
|
|
30
|
-
/**
|
|
31
|
-
* Returns true when the given style has any property in the Font slice set.
|
|
32
|
-
*/
|
|
33
22
|
export const hasCellFontStyle = (style) => hasAtLeastOneKey(style, CELL_FONT_STYLE_KEYS);
|
|
34
|
-
/**
|
|
35
|
-
* Returns true when the given style has any property in the Cell (box) slice set.
|
|
36
|
-
*/
|
|
37
23
|
export const hasCellBoxStyle = (style) => hasAtLeastOneKey(style, CELL_BOX_STYLE_KEYS);
|
|
38
|
-
/**
|
|
39
|
-
* Returns a copy of `style` containing only Font-slice keys.
|
|
40
|
-
*/
|
|
41
24
|
export const pickCellFontStyle = (style) => {
|
|
42
25
|
const out = {};
|
|
43
26
|
if (!style) {
|
|
@@ -51,9 +34,6 @@ export const pickCellFontStyle = (style) => {
|
|
|
51
34
|
});
|
|
52
35
|
return out;
|
|
53
36
|
};
|
|
54
|
-
/**
|
|
55
|
-
* Returns a copy of `style` containing only Cell-slice (box) keys.
|
|
56
|
-
*/
|
|
57
37
|
export const pickCellBoxStyle = (style) => {
|
|
58
38
|
const out = {};
|
|
59
39
|
if (!style) {
|
|
@@ -67,23 +47,16 @@ export const pickCellBoxStyle = (style) => {
|
|
|
67
47
|
});
|
|
68
48
|
return out;
|
|
69
49
|
};
|
|
70
|
-
/**
|
|
71
|
-
* Returns a copy of `style` with all Font-slice keys removed.
|
|
72
|
-
*/
|
|
73
50
|
export const omitCellFontStyle = (style) => {
|
|
74
51
|
const out = { ...(style ?? {}) };
|
|
75
52
|
CELL_FONT_STYLE_KEYS.forEach((k) => delete out[k]);
|
|
76
53
|
return out;
|
|
77
54
|
};
|
|
78
|
-
/**
|
|
79
|
-
* Returns a copy of `style` with all Cell-slice (box) keys removed.
|
|
80
|
-
*/
|
|
81
55
|
export const omitCellBoxStyle = (style) => {
|
|
82
56
|
const out = { ...(style ?? {}) };
|
|
83
57
|
CELL_BOX_STYLE_KEYS.forEach((k) => delete out[k]);
|
|
84
58
|
return out;
|
|
85
59
|
};
|
|
86
|
-
// required for hacky fix for https://github.com/AdaptableTools/adaptable/issues/2119
|
|
87
60
|
export const AgGridCellStyleProperties = [
|
|
88
61
|
'backgroundColor',
|
|
89
62
|
'color',
|
|
@@ -91,9 +64,6 @@ export const AgGridCellStyleProperties = [
|
|
|
91
64
|
'fontStyle',
|
|
92
65
|
'fontSize',
|
|
93
66
|
'borderColor',
|
|
94
|
-
// needed for quick search
|
|
95
|
-
// as otherwise, the currentTextMatchStyle is not removed correctly
|
|
96
|
-
// from the cell when looping through the values, and the cell is no longer the current match
|
|
97
67
|
'--ab-dynamic-background-color',
|
|
98
68
|
'--ab-dynamic-color',
|
|
99
69
|
'--ab-dynamic-font-weight',
|
|
@@ -103,9 +73,6 @@ export const AgGridCellStyleProperties = [
|
|
|
103
73
|
'--ab-dynamic-border-radius',
|
|
104
74
|
'--ab-dynamic-border-color',
|
|
105
75
|
];
|
|
106
|
-
// see https://github.com/AdaptableTools/adaptable/issues/2119
|
|
107
|
-
// since v29 AG Grid ignores style properties with null or undefined values
|
|
108
|
-
// Fix: pass empty string instead of null/undefined
|
|
109
76
|
export const normalizeStyleForAgGrid = (style) => {
|
|
110
77
|
const normalizedStyle = { ...style };
|
|
111
78
|
AgGridCellStyleProperties.forEach((cellStylePropKey) => {
|
|
@@ -115,7 +82,6 @@ export const normalizeStyleForAgGrid = (style) => {
|
|
|
115
82
|
});
|
|
116
83
|
return normalizedStyle;
|
|
117
84
|
};
|
|
118
|
-
// the inverse of normalizeStyleForAgGrid, see comments above
|
|
119
85
|
export const sanitizeStyle = (style) => {
|
|
120
86
|
const sanitizedStyle = {};
|
|
121
87
|
Object.keys(style).forEach((key) => {
|
|
@@ -178,10 +144,8 @@ export const convertAdaptableStyleToCSS = (style) => {
|
|
|
178
144
|
break;
|
|
179
145
|
}
|
|
180
146
|
}
|
|
181
|
-
// assertion added to comply with the ag-Grid types
|
|
182
147
|
return result;
|
|
183
148
|
};
|
|
184
|
-
// based on http://jerekdain.com/fontconversion.html
|
|
185
149
|
export const convertCSSAbsoluteFontSizeToPt = (fontSize) => {
|
|
186
150
|
switch (fontSize) {
|
|
187
151
|
case 'x-large':
|
|
@@ -216,28 +180,8 @@ export const getVariableColor = (variable) => {
|
|
|
216
180
|
}
|
|
217
181
|
return getComputedStyle(document.documentElement).getPropertyValue(match[1]).trim();
|
|
218
182
|
};
|
|
219
|
-
/**
|
|
220
|
-
* Default surface colour assumed to sit *behind* a semi-transparent cell tint
|
|
221
|
-
* when computing auto-contrast text. Gradient cells paint a base colour at a
|
|
222
|
-
* value-driven alpha, so the colour the user actually perceives is that tint
|
|
223
|
-
* composited over the grid cell background (white in the default light theme).
|
|
224
|
-
*/
|
|
225
183
|
export const DEFAULT_CELL_SURFACE_COLOR = '#ffffff';
|
|
226
|
-
/**
|
|
227
|
-
* Luminance above which a (composited, opaque) background is considered "light"
|
|
228
|
-
* enough to need dark text.
|
|
229
|
-
*/
|
|
230
184
|
const AUTO_CONTRAST_LUMINANCE_THRESHOLD = 0.45;
|
|
231
|
-
/**
|
|
232
|
-
* Picks a readable text colour (near-black or white) for a cell whose
|
|
233
|
-
* background is `baseColor` painted at `alpha` over `surfaceColor`.
|
|
234
|
-
*
|
|
235
|
-
* The tint must be composited over the surface *before* measuring luminance:
|
|
236
|
-
* `tinycolor.getLuminance()` ignores the alpha channel, so measuring the raw
|
|
237
|
-
* base colour would yield the same result for a faint cell and a fully-opaque
|
|
238
|
-
* one — making auto-contrast text identical on every row instead of adapting
|
|
239
|
-
* per cell.
|
|
240
|
-
*/
|
|
241
185
|
export const getAutoContrastTextColor = (baseColor, alpha, surfaceColor = DEFAULT_CELL_SURFACE_COLOR) => {
|
|
242
186
|
const composited = tinycolor.mix(surfaceColor, baseColor, alpha * 100);
|
|
243
187
|
return composited.getLuminance() > AUTO_CONTRAST_LUMINANCE_THRESHOLD ? '#111111' : '#ffffff';
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/** Default placement applied to a value whose Horizontal/Vertical were omitted. */
|
|
2
1
|
const DEFAULT_PLACEMENT = {
|
|
3
2
|
Horizontal: 'Left',
|
|
4
3
|
Vertical: 'Below',
|
|
@@ -7,14 +6,12 @@ const HORIZONTAL_VALUES = ['Left', 'Center', 'Right'];
|
|
|
7
6
|
const VERTICAL_VALUES = ['Above', 'Below', 'Merged'];
|
|
8
7
|
const isHorizontal = (value) => typeof value === 'string' && HORIZONTAL_VALUES.includes(value);
|
|
9
8
|
const isVertical = (value) => typeof value === 'string' && VERTICAL_VALUES.includes(value);
|
|
10
|
-
/** Normalise a placement, applying defaults for missing axes. */
|
|
11
9
|
const sanitizePlacement = (placement) => ({
|
|
12
10
|
Horizontal: isHorizontal(placement?.Horizontal)
|
|
13
11
|
? placement.Horizontal
|
|
14
12
|
: DEFAULT_PLACEMENT.Horizontal,
|
|
15
13
|
Vertical: isVertical(placement?.Vertical) ? placement.Vertical : DEFAULT_PLACEMENT.Vertical,
|
|
16
14
|
});
|
|
17
|
-
/** Returns a layout with only the values that are actually present, defaults filled in. */
|
|
18
15
|
const sanitizeCellTextLayout = (layout) => {
|
|
19
16
|
const result = {};
|
|
20
17
|
if (layout?.CellValue) {
|
|
@@ -26,12 +23,10 @@ const sanitizeCellTextLayout = (layout) => {
|
|
|
26
23
|
return result;
|
|
27
24
|
};
|
|
28
25
|
export const resolveBarStyleCellTextLayout = (props) => sanitizeCellTextLayout(props?.CellTextLayout);
|
|
29
|
-
/** True when any value is configured for display. */
|
|
30
26
|
export const hasBarStyleCellTextConfigured = (props) => {
|
|
31
27
|
const layout = resolveBarStyleCellTextLayout(props);
|
|
32
28
|
return Boolean(layout.CellValue || layout.PercentValue);
|
|
33
29
|
};
|
|
34
|
-
/** Set of value tokens that currently have a placement. */
|
|
35
30
|
export const getActiveBarStyleCellTextTokens = (props) => {
|
|
36
31
|
const layout = resolveBarStyleCellTextLayout(props);
|
|
37
32
|
const tokens = [];
|
|
@@ -56,9 +51,6 @@ export const mergeBarStyleCellTextProperties = (current, patch) => {
|
|
|
56
51
|
}
|
|
57
52
|
return merged;
|
|
58
53
|
};
|
|
59
|
-
/**
|
|
60
|
-
* Set or clear a value's placement. Passing `placement: undefined` removes the value.
|
|
61
|
-
*/
|
|
62
54
|
export const setBarStyleCellTextPlacement = (current, token, placement) => {
|
|
63
55
|
const layout = resolveBarStyleCellTextLayout(current);
|
|
64
56
|
const next = { ...layout };
|
|
@@ -71,10 +63,6 @@ export const setBarStyleCellTextPlacement = (current, token, placement) => {
|
|
|
71
63
|
}
|
|
72
64
|
return mergeBarStyleCellTextProperties(current, { CellTextLayout: next });
|
|
73
65
|
};
|
|
74
|
-
/**
|
|
75
|
-
* Patch a single axis of a value's placement (creating the value with defaults if
|
|
76
|
-
* needed). Used by the wizard's placement pickers.
|
|
77
|
-
*/
|
|
78
66
|
export const patchBarStyleCellTextPlacement = (current, token, patch) => {
|
|
79
67
|
const layout = resolveBarStyleCellTextLayout(current);
|
|
80
68
|
const key = token === 'CellValue' ? 'CellValue' : 'PercentValue';
|
|
@@ -85,10 +73,6 @@ export const patchBarStyleCellTextPlacement = (current, token, patch) => {
|
|
|
85
73
|
};
|
|
86
74
|
return setBarStyleCellTextPlacement(current, token, nextPlacement);
|
|
87
75
|
};
|
|
88
|
-
/**
|
|
89
|
-
* Toggle whether a value is displayed. When turning on a previously-hidden
|
|
90
|
-
* value we use the default placement (Left / Below).
|
|
91
|
-
*/
|
|
92
76
|
export const toggleBarStyleCellTextToken = (current, token, show) => {
|
|
93
77
|
const layout = resolveBarStyleCellTextLayout(current);
|
|
94
78
|
const key = token === 'CellValue' ? 'CellValue' : 'PercentValue';
|
|
@@ -116,7 +100,6 @@ export const buildBarStyleCellTextLabels = (props, cellValueLabel, percentageLab
|
|
|
116
100
|
return labels;
|
|
117
101
|
};
|
|
118
102
|
export const hasBarStyleCellTextLabels = (labels) => Boolean(labels.cellValue || labels.percentage);
|
|
119
|
-
/** Join active labels with a space, Cell Value first then Percent Value. */
|
|
120
103
|
export const joinBarStyleCellTextLabels = (labels) => {
|
|
121
104
|
const parts = [];
|
|
122
105
|
if (labels.cellValue)
|
|
@@ -125,16 +108,8 @@ export const joinBarStyleCellTextLabels = (labels) => {
|
|
|
125
108
|
parts.push(labels.percentage);
|
|
126
109
|
return parts.join(' ');
|
|
127
110
|
};
|
|
128
|
-
/**
|
|
129
|
-
* Resolve which placements are populated and what text goes in each cell of
|
|
130
|
-
* the 3 × 3 grid. Empty slots are omitted. Two values landing on the same
|
|
131
|
-
* (vertical, horizontal) slot are concatenated with a single space, Cell
|
|
132
|
-
* Value before Percent Value.
|
|
133
|
-
*/
|
|
134
111
|
export const resolveBarStyleCellTextSlots = (props, labels) => {
|
|
135
112
|
const layout = resolveBarStyleCellTextLayout(props);
|
|
136
|
-
// Iteration order matters when both values share a slot: Cell Value first,
|
|
137
|
-
// then Percent Value (matches the legacy "joined" behaviour).
|
|
138
113
|
const candidates = [];
|
|
139
114
|
if (layout.CellValue && labels.cellValue) {
|
|
140
115
|
candidates.push({
|
|
@@ -180,9 +155,6 @@ export const getBarStyleCellTextSlotPresence = (props) => {
|
|
|
180
155
|
hasMerged: verticals.has('Merged'),
|
|
181
156
|
};
|
|
182
157
|
};
|
|
183
|
-
// ---------------------------------------------------------------------------
|
|
184
|
-
// Summary formatting
|
|
185
|
-
// ---------------------------------------------------------------------------
|
|
186
158
|
const HORIZONTAL_LABEL = {
|
|
187
159
|
Left: 'Left',
|
|
188
160
|
Center: 'Center',
|
|
@@ -208,9 +180,6 @@ export const formatBarStyleCellTextLayoutSummary = (layout) => {
|
|
|
208
180
|
}
|
|
209
181
|
return parts.length ? parts.join('; ') : undefined;
|
|
210
182
|
};
|
|
211
|
-
// ---------------------------------------------------------------------------
|
|
212
|
-
// DOM mount
|
|
213
|
-
// ---------------------------------------------------------------------------
|
|
214
183
|
const HORIZONTAL_FLEX_JUSTIFY = {
|
|
215
184
|
Left: 'flex-start',
|
|
216
185
|
Center: 'center',
|
|
@@ -228,10 +197,6 @@ const createCellTextRow = (slots, textClassName, compact) => {
|
|
|
228
197
|
row.style.flexDirection = 'row';
|
|
229
198
|
row.style.alignItems = 'center';
|
|
230
199
|
row.style.width = '100%';
|
|
231
|
-
// When `Above` AND `Below` are both populated, two default-size text rows
|
|
232
|
-
// would squeeze the bar to 0 on a standard ~28-40px cell, so the caller
|
|
233
|
-
// asks for a compact band (smaller font + tighter line-height).
|
|
234
|
-
// Otherwise we render at the inherited cell font for legibility.
|
|
235
200
|
if (compact) {
|
|
236
201
|
row.style.fontSize = '0.75em';
|
|
237
202
|
row.style.lineHeight = '1';
|
|
@@ -241,8 +206,6 @@ const createCellTextRow = (slots, textClassName, compact) => {
|
|
|
241
206
|
}
|
|
242
207
|
row.style.flex = '0 0 auto';
|
|
243
208
|
row.style.gap = '4px';
|
|
244
|
-
// Render fixed Left / Center / Right cells so spacing is stable even when
|
|
245
|
-
// only one or two slots are present.
|
|
246
209
|
for (const horizontal of HORIZONTAL_VALUES) {
|
|
247
210
|
const slot = slots.find((s) => s.horizontal === horizontal);
|
|
248
211
|
const cell = document.createElement('span');
|
|
@@ -257,11 +220,6 @@ const createCellTextRow = (slots, textClassName, compact) => {
|
|
|
257
220
|
}
|
|
258
221
|
row.append(cell);
|
|
259
222
|
}
|
|
260
|
-
// Suppress the dummy row in the rare case where every slot for this band is
|
|
261
|
-
// empty (e.g. the only label is empty string). `String(...)` because text
|
|
262
|
-
// may arrive as a number when `params.formatValue` is undefined for a
|
|
263
|
-
// numeric column — `(11).length` is `undefined`, which would otherwise
|
|
264
|
-
// wrongly trip the empty-row branch.
|
|
265
223
|
if (!slots.some((s) => String(s.text ?? '').length)) {
|
|
266
224
|
row.style.display = 'none';
|
|
267
225
|
}
|
|
@@ -283,10 +241,6 @@ export const mountBarStyleCellText = (args) => {
|
|
|
283
241
|
Below: slots.filter((s) => s.vertical === 'Below'),
|
|
284
242
|
Merged: slots.filter((s) => s.vertical === 'Merged'),
|
|
285
243
|
};
|
|
286
|
-
// Compact when Cell Value and Percent Value have *different* verticals
|
|
287
|
-
// (i.e. the two tokens claim two separate bands of vertical space). When
|
|
288
|
-
// they share a vertical band — or when only one token is configured —
|
|
289
|
-
// we have room for the full-size font.
|
|
290
244
|
const layout = resolveBarStyleCellTextLayout(cellTextProperties);
|
|
291
245
|
const compact = Boolean(layout.CellValue &&
|
|
292
246
|
layout.PercentValue &&
|
|
@@ -2,15 +2,7 @@ import tinycolor from 'tinycolor2';
|
|
|
2
2
|
import { convertAdaptableStyleToCSS } from '../StyleHelper';
|
|
3
3
|
import { getAutoContrastTextColor, getVariableColor } from '../StyleHelper';
|
|
4
4
|
import { clamp } from '../../Extensions/NumberExtensions';
|
|
5
|
-
/**
|
|
6
|
-
* Default alpha at the **low** end of a Gradient range when `MinAlpha` is unset.
|
|
7
|
-
* Slightly above zero so the bottom-edge value of every range still shows its
|
|
8
|
-
* colour (rather than rendering fully transparent).
|
|
9
|
-
*/
|
|
10
5
|
export const DEFAULT_GRADIENT_MIN_ALPHA = 0.15;
|
|
11
|
-
/**
|
|
12
|
-
* Default alpha at the **high** end of a Gradient range when `MaxAlpha` is unset.
|
|
13
|
-
*/
|
|
14
6
|
export const DEFAULT_GRADIENT_MAX_ALPHA = 1;
|
|
15
7
|
export const hasGradientRangesConfigured = (gs) => !!(gs?.ZeroCentred || gs?.CellRanges?.length || gs?.ColumnComparison);
|
|
16
8
|
const evenlySpacedValues = (min, max, count) => {
|
|
@@ -20,12 +12,9 @@ const evenlySpacedValues = (min, max, count) => {
|
|
|
20
12
|
const step = (max - min) / (count - 1);
|
|
21
13
|
return Array.from({ length: count }, (_, i) => min + step * i);
|
|
22
14
|
};
|
|
23
|
-
/** Number of sample cells shown in Gradient / Percent Bar style previews. */
|
|
24
15
|
export const STYLED_COLUMN_PREVIEW_SAMPLE_COUNT = 6;
|
|
25
|
-
/** Illustrative zero-centred scale endpoints for preview geometry. */
|
|
26
16
|
export const ZERO_CENTRED_PREVIEW_SCALE_MIN = -20;
|
|
27
17
|
export const ZERO_CENTRED_PREVIEW_SCALE_MAX = 20;
|
|
28
|
-
/** @deprecated Use {@link getZeroCentredGradientPreviewValues} — kept for callers using endpoints. */
|
|
29
18
|
export const ZERO_CENTRED_GRADIENT_PREVIEW_VALUES = evenlySpacedValues(ZERO_CENTRED_PREVIEW_SCALE_MIN, ZERO_CENTRED_PREVIEW_SCALE_MAX, STYLED_COLUMN_PREVIEW_SAMPLE_COUNT);
|
|
30
19
|
export const getZeroCentredGradientPreviewValues = () => evenlySpacedValues(ZERO_CENTRED_PREVIEW_SCALE_MIN, ZERO_CENTRED_PREVIEW_SCALE_MAX, STYLED_COLUMN_PREVIEW_SAMPLE_COUNT);
|
|
31
20
|
export function isDivergingZeroCellRanges(ranges) {
|
|
@@ -38,9 +27,6 @@ export function isDivergingZeroCellRanges(ranges) {
|
|
|
38
27
|
export function isZeroCentredGradientStyle(gs) {
|
|
39
28
|
return !!(gs.ZeroCentred || isDivergingZeroCellRanges(gs.CellRanges));
|
|
40
29
|
}
|
|
41
|
-
/**
|
|
42
|
-
* Sample cell values for gradient preview strips — spread across the effective scale.
|
|
43
|
-
*/
|
|
44
30
|
export const getGradientPreviewSampleValues = (styledColumn, api) => {
|
|
45
31
|
const gs = styledColumn.GradientStyle;
|
|
46
32
|
if (!gs || !hasGradientRangesConfigured(gs)) {
|
|
@@ -86,11 +72,6 @@ const getZeroCentredPreviewColors = (gradientStyle) => {
|
|
|
86
72
|
}
|
|
87
73
|
return null;
|
|
88
74
|
};
|
|
89
|
-
/**
|
|
90
|
-
* Zero-centred preview uses a fixed -20…20 illustrative scale so negative
|
|
91
|
-
* colours always appear — independent of whether the column currently has
|
|
92
|
-
* negative values (Col-Min may be above zero today).
|
|
93
|
-
*/
|
|
94
75
|
const getZeroCentredGradientPreviewCellStyle = (cellValue, gradientStyle) => {
|
|
95
76
|
const colors = getZeroCentredPreviewColors(gradientStyle);
|
|
96
77
|
if (!colors) {
|
|
@@ -147,9 +128,6 @@ const getZeroCentredGradientPreviewCellStyle = (cellValue, gradientStyle) => {
|
|
|
147
128
|
}
|
|
148
129
|
return style;
|
|
149
130
|
};
|
|
150
|
-
/**
|
|
151
|
-
* Cell CSS for gradient preview — mirrors `AgGridColumnAdapter.getStyledColumnStyle` gradient path.
|
|
152
|
-
*/
|
|
153
131
|
export const getGradientPreviewCellStyle = (cellValue, styledColumn, api, rowNode) => {
|
|
154
132
|
const gradientStyle = styledColumn.GradientStyle;
|
|
155
133
|
if (!gradientStyle || !hasGradientRangesConfigured(gradientStyle)) {
|
|
@@ -214,10 +192,6 @@ export const getGradientPreviewCellStyle = (cellValue, styledColumn, api, rowNod
|
|
|
214
192
|
}
|
|
215
193
|
return style;
|
|
216
194
|
};
|
|
217
|
-
/**
|
|
218
|
-
* Effective cell ranges for gradient rendering / range lookup.
|
|
219
|
-
* When `ZeroCentred` is set, expands to the canonical Col-Min…0 and 0…Col-Max bands.
|
|
220
|
-
*/
|
|
221
195
|
export function expandGradientCellRanges(gs) {
|
|
222
196
|
if (gs.ZeroCentred) {
|
|
223
197
|
return [
|
|
@@ -227,21 +201,9 @@ export function expandGradientCellRanges(gs) {
|
|
|
227
201
|
}
|
|
228
202
|
return gs.CellRanges;
|
|
229
203
|
}
|
|
230
|
-
/**
|
|
231
|
-
* Value type passed to `findRangeForColumn` / `getCellColorRangeMinValue` /
|
|
232
|
-
* `getCellColorRangeMaxValue` when resolving which gradient band a cell falls in.
|
|
233
|
-
*
|
|
234
|
-
* Zero-centred bands use numeric `0` as an **absolute** zero crossing between
|
|
235
|
-
* `Col-Min…0` and `0…Col-Max`. Under `RangeValueType: 'Percentage'`, numeric
|
|
236
|
-
* endpoints are interpreted as % positions along the column min–max span, so
|
|
237
|
-
* literal `0` wrongly becomes `Col-Min` and the negative band collapses to a
|
|
238
|
-
* single point — boundary cells (e.g. the column minimum) pick up the negative
|
|
239
|
-
* colour incorrectly. Zero-centred lookup must always use Number semantics.
|
|
240
|
-
*/
|
|
241
204
|
export function gradientStyleRangeLookupValueType(gs) {
|
|
242
205
|
return gs.ZeroCentred ? 'Number' : gs.RangeValueType ?? 'Number';
|
|
243
206
|
}
|
|
244
|
-
/** The negative half of a zero-centred gradient (darker toward Col-Min). */
|
|
245
207
|
export function isNegativeZeroCentredBand(range) {
|
|
246
208
|
return range.Min === 'Col-Min' && range.Max === 0;
|
|
247
209
|
}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Icon Column Style resolves one key → glyph per scalar cell value; AdapTable
|
|
3
|
-
* array column types are not supported (use Badge Style for per-element visuals).
|
|
4
|
-
*/
|
|
5
1
|
export function isUnsupportedColumnDataTypeForIconStyle(dataType) {
|
|
6
2
|
switch (dataType) {
|
|
7
3
|
case 'textArray':
|
|
@@ -13,28 +9,10 @@ export function isUnsupportedColumnDataTypeForIconStyle(dataType) {
|
|
|
13
9
|
return false;
|
|
14
10
|
}
|
|
15
11
|
}
|
|
16
|
-
/**
|
|
17
|
-
* Built-in {@link IconStyle} mapping presets.
|
|
18
|
-
*
|
|
19
|
-
* The wizard's "Apply preset" action seeds `IconStyle.Mappings` from one
|
|
20
|
-
* of these. Once seeded the data is just normal mappings — users can add
|
|
21
|
-
* / edit / remove rows freely.
|
|
22
|
-
*
|
|
23
|
-
* Implementation notes:
|
|
24
|
-
* - All icons here are emoji strings, so the presets cost nothing at
|
|
25
|
-
* bundle / asset level. On Windows some flag emojis fall back to
|
|
26
|
-
* regional-indicator letter pairs (e.g. "🇺🇸" → "US"), which is still
|
|
27
|
-
* a sensible visual; users who want a consistent SVG flag pack across
|
|
28
|
-
* platforms can swap individual mappings to URL icons.
|
|
29
|
-
* - Presets are deliberately *small* — the most common values for each
|
|
30
|
-
* domain. Users add the long tail by editing the mappings list.
|
|
31
|
-
*/
|
|
32
12
|
const flagEmoji = (countryCodeAlpha2) => {
|
|
33
13
|
const cc = countryCodeAlpha2.toUpperCase();
|
|
34
14
|
if (cc.length !== 2)
|
|
35
15
|
return cc;
|
|
36
|
-
// Convert ISO-3166 alpha-2 → regional indicator pair (each letter +
|
|
37
|
-
// 0x1F1A5). Browsers render this pair as the country flag.
|
|
38
16
|
const a = 0x1f1a5;
|
|
39
17
|
return String.fromCodePoint(a + cc.charCodeAt(0), a + cc.charCodeAt(1));
|
|
40
18
|
};
|
|
@@ -54,8 +32,6 @@ const FLAG_PRESET = [
|
|
|
54
32
|
{ Key: 'NL', Icon: flagEmoji('NL'), Description: 'Netherlands' },
|
|
55
33
|
{ Key: 'PT', Icon: flagEmoji('PT'), Description: 'Portugal' },
|
|
56
34
|
{ Key: 'US', Icon: flagEmoji('US'), Description: 'United States' },
|
|
57
|
-
// Friendly synonyms so the preset works against full country names too
|
|
58
|
-
// (`MatchMode: 'CaseInsensitive'` is a sensible default for this preset).
|
|
59
35
|
{ Key: 'Australia', Icon: flagEmoji('AU'), Description: 'Australia' },
|
|
60
36
|
{ Key: 'Belgium', Icon: flagEmoji('BE'), Description: 'Belgium' },
|
|
61
37
|
{ Key: 'Canada', Icon: flagEmoji('CA'), Description: 'Canada' },
|
|
@@ -68,23 +44,11 @@ const FLAG_PRESET = [
|
|
|
68
44
|
{ Key: 'United Kingdom', Icon: flagEmoji('GB'), Description: 'United Kingdom' },
|
|
69
45
|
{ Key: 'United States', Icon: flagEmoji('US'), Description: 'United States' },
|
|
70
46
|
];
|
|
71
|
-
// Currency → issuing country flag. Currency *symbols* (`$`, `¥`) are NOT
|
|
72
|
-
// unique across currencies (USD/AUD/CAD/NZD all share `$`; CNY/JPY both use
|
|
73
|
-
// `¥`), so an icon column built from symbols ends up visually ambiguous —
|
|
74
|
-
// defeating the whole point of an icon column. Flags map 1-to-1 with the
|
|
75
|
-
// issuing economy, give every currency a distinct glyph, and read instantly
|
|
76
|
-
// in financial UIs (which is where this preset is most commonly used).
|
|
77
|
-
//
|
|
78
|
-
// Pair with `Description` ("US Dollar", "Euro") so tooltips / companion
|
|
79
|
-
// text still surface the human-readable name. Anyone who prefers symbols
|
|
80
|
-
// can still build that mapping by hand in the wizard.
|
|
81
47
|
const CURRENCY_PRESET = [
|
|
82
48
|
{ Key: 'AUD', Icon: flagEmoji('AU'), Description: 'Australian Dollar' },
|
|
83
49
|
{ Key: 'CAD', Icon: flagEmoji('CA'), Description: 'Canadian Dollar' },
|
|
84
50
|
{ Key: 'CHF', Icon: flagEmoji('CH'), Description: 'Swiss Franc' },
|
|
85
51
|
{ Key: 'CNY', Icon: flagEmoji('CN'), Description: 'Chinese Yuan' },
|
|
86
|
-
// 'EU' as a regional indicator pair renders as the EU flag in modern
|
|
87
|
-
// emoji fonts; falls back to the letters "EU" otherwise — still readable.
|
|
88
52
|
{ Key: 'EUR', Icon: flagEmoji('EU'), Description: 'Euro' },
|
|
89
53
|
{ Key: 'GBP', Icon: flagEmoji('GB'), Description: 'British Pound' },
|
|
90
54
|
{ Key: 'HKD', Icon: flagEmoji('HK'), Description: 'Hong Kong Dollar' },
|
|
@@ -105,7 +69,6 @@ const TREND_PRESET = [
|
|
|
105
69
|
{ Key: 'Up', Icon: '⬆', Description: 'Up' },
|
|
106
70
|
{ Key: 'Down', Icon: '⬇', Description: 'Down' },
|
|
107
71
|
{ Key: 'Flat', Icon: '➡', Description: 'Flat' },
|
|
108
|
-
// Trading-side synonyms so the same preset works against Buy/Sell columns.
|
|
109
72
|
{ Key: 'Buy', Icon: '⬆', Description: 'Buy' },
|
|
110
73
|
{ Key: 'Sell', Icon: '⬇', Description: 'Sell' },
|
|
111
74
|
{ Key: 'Hold', Icon: '➡', Description: 'Hold' },
|
|
@@ -116,7 +79,6 @@ const STATUS_PRESET = [
|
|
|
116
79
|
{ Key: 'Pass', Icon: '🟢', Description: 'Pass' },
|
|
117
80
|
{ Key: 'Warn', Icon: '🟡', Description: 'Warn' },
|
|
118
81
|
{ Key: 'Fail', Icon: '🔴', Description: 'Fail' },
|
|
119
|
-
// Status-column synonyms (cover the `status` column in the trade demo).
|
|
120
82
|
{ Key: 'Completed', Icon: '🟢', Description: 'Completed' },
|
|
121
83
|
{ Key: 'In Progress', Icon: '🟡', Description: 'In Progress' },
|
|
122
84
|
{ Key: 'Pending', Icon: '🟡', Description: 'Pending' },
|
|
@@ -129,7 +91,6 @@ export const ICON_STYLE_PRESETS = {
|
|
|
129
91
|
Trend: TREND_PRESET,
|
|
130
92
|
Status: STATUS_PRESET,
|
|
131
93
|
};
|
|
132
|
-
/** Returns a fresh copy of the mappings for a given preset. */
|
|
133
94
|
export const getIconStylePresetMappings = (preset) => {
|
|
134
95
|
return ICON_STYLE_PRESETS[preset].map((m) => ({ ...m }));
|
|
135
96
|
};
|
|
@@ -64,7 +64,6 @@ const getPreviewBarColor = (value, pb, scaleMin, scaleMax) => {
|
|
|
64
64
|
return pb.CellRanges?.[0]?.Color;
|
|
65
65
|
};
|
|
66
66
|
export const hasPercentBarRangesConfigured = (pb) => !!(pb?.CellRanges?.length || pb?.ColumnComparison);
|
|
67
|
-
/** Illustrative scale for preview — shows negatives when origin is Auto or Zero. */
|
|
68
67
|
export const getPercentBarPreviewScale = (pb) => {
|
|
69
68
|
const origin = pb.Origin ?? 'Auto';
|
|
70
69
|
if (origin === 'Zero' || origin === 'Auto') {
|
|
@@ -19,11 +19,6 @@ const resolveHighlightStyle = (style) => {
|
|
|
19
19
|
}
|
|
20
20
|
return resolved;
|
|
21
21
|
};
|
|
22
|
-
/**
|
|
23
|
-
* AG Charts sparklines do not resolve Adaptable `var(--ab-color-*)` tokens.
|
|
24
|
-
* Resolve palette / theme CSS variables to concrete colours at render time so
|
|
25
|
-
* wizard previews and grid cells match the chosen Fill / Stroke values.
|
|
26
|
-
*/
|
|
27
22
|
export function resolveSparklineOptionsForRender(options) {
|
|
28
23
|
const resolved = { ...options };
|
|
29
24
|
if ('fill' in options && options.fill != null) {
|
|
@@ -20,11 +20,6 @@ export const getStyledColumnRowKindDisabledReason = (styledColumn, kind) => {
|
|
|
20
20
|
}
|
|
21
21
|
return undefined;
|
|
22
22
|
};
|
|
23
|
-
/**
|
|
24
|
-
* Classifies the AG Grid row node into a single {@link StyledColumnRowKind}.
|
|
25
|
-
* Order matches {@link shouldRenderStyledColumnOnRow}: total before summary,
|
|
26
|
-
* summary before group.
|
|
27
|
-
*/
|
|
28
23
|
export const getStyledColumnRowKindForNode = (node, api) => {
|
|
29
24
|
if (api.gridApi.isGrandTotalRowNode(node)) {
|
|
30
25
|
return 'Total';
|
|
@@ -37,11 +32,6 @@ export const getStyledColumnRowKindForNode = (node, api) => {
|
|
|
37
32
|
}
|
|
38
33
|
return 'Data';
|
|
39
34
|
};
|
|
40
|
-
/**
|
|
41
|
-
* Forces `Exclude*` to `true` for row kinds that do not apply to the current
|
|
42
|
-
* Styled Column type, so persisted state cannot contradict the capability
|
|
43
|
-
* matrix. Returns `undefined` when no change is needed.
|
|
44
|
-
*/
|
|
45
35
|
export const sanitizeStyledColumnRowScope = (styledColumn) => {
|
|
46
36
|
const scope = styledColumn.RowScope;
|
|
47
37
|
if (!scope) {
|
|
@@ -61,32 +51,6 @@ export const sanitizeStyledColumnRowScope = (styledColumn) => {
|
|
|
61
51
|
}
|
|
62
52
|
return changed ? next : undefined;
|
|
63
53
|
};
|
|
64
|
-
/**
|
|
65
|
-
* Returns `true` when the Styled Column should render on the given row.
|
|
66
|
-
*
|
|
67
|
-
* Single source of truth consulted by every styled-column cell renderer
|
|
68
|
-
* (Badge / Icon / Rating / Percent Bar / Bullet Chart / Range Bar) and
|
|
69
|
-
* by `getStyledColumnStyle` (Gradient / Percent Bar cellStyle).
|
|
70
|
-
*
|
|
71
|
-
* Semantics:
|
|
72
|
-
* - **Type capabilities** first: some types never target certain row kinds
|
|
73
|
-
* (see {@link isStyledColumnRowKindSupported}). Unsupported kinds always
|
|
74
|
-
* return `false` regardless of `RowScope`.
|
|
75
|
-
* - When `StyledColumn.RowScope` is **set**, the explicit `Exclude*`
|
|
76
|
-
* flags win. Unset flags default to "include" — i.e. `RowScope: {}`
|
|
77
|
-
* means "render on every *supported* row kind".
|
|
78
|
-
* - When `StyledColumn.RowScope` is **unset**, the historical per-type
|
|
79
|
-
* default applies:
|
|
80
|
-
* - Badge: render on every row kind (that the type supports).
|
|
81
|
-
* - All other types: render on every row kind *except* group rows
|
|
82
|
-
* (matches the hardcoded "isGroupRowNode → plain text" check that
|
|
83
|
-
* every other styled-column renderer used to carry), again
|
|
84
|
-
* intersected with type capabilities (e.g. Sparkline → data only).
|
|
85
|
-
*
|
|
86
|
-
* The per-type default lets us promote `RowScope` cleanly without
|
|
87
|
-
* altering existing user-visible behaviour: state that doesn't mention
|
|
88
|
-
* `RowScope` keeps rendering exactly as before.
|
|
89
|
-
*/
|
|
90
54
|
export const shouldRenderStyledColumnOnRow = (styledColumn, node, api) => {
|
|
91
55
|
const rowKind = getStyledColumnRowKindForNode(node, api);
|
|
92
56
|
if (!isStyledColumnRowKindSupported(styledColumn, rowKind)) {
|
|
@@ -108,7 +72,6 @@ export const shouldRenderStyledColumnOnRow = (styledColumn, node, api) => {
|
|
|
108
72
|
return false;
|
|
109
73
|
return true;
|
|
110
74
|
}
|
|
111
|
-
// No explicit RowScope → fall back to historical per-type behaviour.
|
|
112
75
|
if (styledColumn.BadgeStyle) {
|
|
113
76
|
return true;
|
|
114
77
|
}
|
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Timing helpers for delaying / rate-limiting function calls.
|
|
3
|
-
*
|
|
4
|
-
* `debounce` and `throttle` are drop-in replacements for the equivalent
|
|
5
|
-
* lodash exports (`debounce` supports `{ leading, trailing, maxWait }`,
|
|
6
|
-
* `throttle` supports `{ leading, trailing }`).
|
|
7
|
-
*
|
|
8
|
-
* Both return an instance of `DebouncedFunction<T>` which exposes
|
|
9
|
-
* `cancel()` and `flush()` for managing pending invocations.
|
|
10
|
-
*/
|
|
11
1
|
export function debounce(func, wait = 0, options) {
|
|
12
2
|
let lastArgs;
|
|
13
3
|
let lastThis;
|
|
@@ -118,9 +108,6 @@ export function debounce(func, wait = 0, options) {
|
|
|
118
108
|
};
|
|
119
109
|
return debounced;
|
|
120
110
|
}
|
|
121
|
-
/**
|
|
122
|
-
* Implemented in terms of `debounce` with `maxWait` (same approach as lodash).
|
|
123
|
-
*/
|
|
124
111
|
export function throttle(func, wait = 0, options) {
|
|
125
112
|
return debounce(func, wait, {
|
|
126
113
|
leading: options?.leading ?? true,
|
|
@@ -28,7 +28,6 @@ export function CreateEmptyCalculatedColumn(defaultSpecialColumnSettings) {
|
|
|
28
28
|
Query: {
|
|
29
29
|
ScalarExpression: EMPTY_STRING,
|
|
30
30
|
},
|
|
31
|
-
// need to create some defaults - which we will change later
|
|
32
31
|
CalculatedColumnSettings: {
|
|
33
32
|
...defaultSpecialColumnSettings,
|
|
34
33
|
DataType: undefined,
|
|
@@ -269,8 +268,8 @@ export function CreateDefaultStyledColumnBadge() {
|
|
|
269
268
|
return {
|
|
270
269
|
Shape: 'Rounded',
|
|
271
270
|
PillStyle: {
|
|
272
|
-
BackColor: getSwatchColorVar(3),
|
|
273
|
-
ForeColor: getSwatchColorVar(1),
|
|
271
|
+
BackColor: getSwatchColorVar(3),
|
|
272
|
+
ForeColor: getSwatchColorVar(1),
|
|
274
273
|
},
|
|
275
274
|
};
|
|
276
275
|
}
|
|
@@ -344,7 +343,6 @@ export function CreateToastOptions(notificationsOptions, { onClose, containerId
|
|
|
344
343
|
transition: transition,
|
|
345
344
|
draggablePercent: 75,
|
|
346
345
|
onClose,
|
|
347
|
-
// progress: undefined,
|
|
348
346
|
};
|
|
349
347
|
return toastProps;
|
|
350
348
|
}
|
|
@@ -29,7 +29,6 @@ export class AggregatedScalarLiveValue {
|
|
|
29
29
|
.getQueryLanguageService()
|
|
30
30
|
.evaluateAggregatedScalarExpression(source.aggregatedScalarExpression, requestingModule, getRowNodes).value
|
|
31
31
|
: source.aggregatedScalarExpressionEvaluation;
|
|
32
|
-
// currently we support only one reducer
|
|
33
32
|
this.aggregationReducerName = Object.keys(this.expressionEvaluation.aggregationParams.reducers)[0];
|
|
34
33
|
this.aggregationResult = this.computeAggregatedValue(this.expressionEvaluation);
|
|
35
34
|
}
|
|
@@ -39,7 +38,6 @@ export class AggregatedScalarLiveValue {
|
|
|
39
38
|
.getQueryLanguageService()
|
|
40
39
|
.evaluateAggregatedScalarExpression(this.aggregatedScalarExpression, this.requestingModule, this.getRowNodes).value;
|
|
41
40
|
}
|
|
42
|
-
// currently we support only one reducer
|
|
43
41
|
this.aggregationReducerName = Object.keys(this.expressionEvaluation.aggregationParams.reducers)[0];
|
|
44
42
|
this.aggregationResult = this.computeAggregatedValue(this.expressionEvaluation);
|
|
45
43
|
}
|
|
@@ -76,7 +74,6 @@ export class AggregatedScalarLiveValue {
|
|
|
76
74
|
}
|
|
77
75
|
getRowNodeValueForColumnId(rowNode, columnId) {
|
|
78
76
|
const rawValue = this.adaptableApi.gridApi.getRawValueFromRowNode(rowNode, columnId);
|
|
79
|
-
// we need to convert the Date object to a number, otherwise the grouping will not work (each Date instance is unique)
|
|
80
77
|
return rawValue instanceof Date ? rawValue.getTime() : rawValue;
|
|
81
78
|
}
|
|
82
79
|
computeAggregatedValue(expressionEvaluation) {
|
|
@@ -85,14 +82,11 @@ export class AggregatedScalarLiveValue {
|
|
|
85
82
|
: this.adaptableApi.gridApi.getAllRowNodes({
|
|
86
83
|
filterFn: expressionEvaluation.rowFilterFn,
|
|
87
84
|
});
|
|
88
|
-
// we iterate over the RowNode list (we need this to handle complex column values (nested values, valueGetters etc)
|
|
89
|
-
// so we will map the fieldNames to RowNode.data
|
|
90
85
|
const mapReducerValueGetter = (columnId) => {
|
|
91
86
|
return (rowNode) => this.getRowNodeValueForColumnId(rowNode, columnId);
|
|
92
87
|
};
|
|
93
88
|
Object.values(expressionEvaluation.aggregationParams.reducers).forEach((aggregationReducer) => {
|
|
94
89
|
aggregationReducer.getter = mapReducerValueGetter(aggregationReducer.field);
|
|
95
|
-
// nullify the field to force the fallback on the getter fn
|
|
96
90
|
aggregationReducer.field = null;
|
|
97
91
|
});
|
|
98
92
|
const mapGroupByToKey = (columnId) => {
|
|
@@ -104,7 +98,6 @@ export class AggregatedScalarLiveValue {
|
|
|
104
98
|
let aggregatedRowNodes = gridRowNodes;
|
|
105
99
|
if (expressionEvaluation.sortByColumn) {
|
|
106
100
|
const sortByColumn = expressionEvaluation.sortByColumn;
|
|
107
|
-
// currently, we support only ascending sorting
|
|
108
101
|
aggregatedRowNodes.sort((first, second) => {
|
|
109
102
|
const firstValue = this.getRowNodeValueForColumnId(first, sortByColumn);
|
|
110
103
|
const secondValue = this.getRowNodeValueForColumnId(second, sortByColumn);
|
|
@@ -21,7 +21,6 @@ export class AlertService {
|
|
|
21
21
|
return this.emitter.on('ReactiveAlertTriggered', callback);
|
|
22
22
|
};
|
|
23
23
|
createReactiveAlert(alertDefinition) {
|
|
24
|
-
// if there is already a reactive alert for this definition, delete it (possible in case of editing definitions),
|
|
25
24
|
this.deleteReactiveAlert(alertDefinition);
|
|
26
25
|
if (!('Rule' in alertDefinition)) {
|
|
27
26
|
return;
|