@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
|
@@ -6,15 +6,6 @@ import { Toggle, ToggleGroup } from '../../../components/Toggle';
|
|
|
6
6
|
import { renderSummaryLabelValueTags } from '../../Wizard/SummaryColorTag';
|
|
7
7
|
const LABEL_COLUMN = { name: 'label', style: { textAlign: 'start' } };
|
|
8
8
|
const CHILD_COLUMN = { name: 'children' };
|
|
9
|
-
/**
|
|
10
|
-
* Compact editor for the cut-down {@link BadgePillStyle}.
|
|
11
|
-
*
|
|
12
|
-
* Intentionally narrower than `StyleComponent`:
|
|
13
|
-
* - **No** `BorderRadius` — corner radius is owned by `Shape`.
|
|
14
|
-
* - **No** `Alignment` — badge-row alignment is column-level (`BadgeStyle.Font`).
|
|
15
|
-
* - **No** `ClassName` — pill `ClassName` had no effect at runtime; gone.
|
|
16
|
-
* - **No** `FontSize` — pills inherit cell font sizing.
|
|
17
|
-
*/
|
|
18
9
|
export const BadgePillStyleEditor = (props) => {
|
|
19
10
|
const pill = props.value ?? {};
|
|
20
11
|
const { disabled } = props;
|
|
@@ -40,7 +31,6 @@ export const BadgePillStyleEditor = (props) => {
|
|
|
40
31
|
}
|
|
41
32
|
return (_jsx(Box, { className: "twa:mt-2 twa:rounded-standard twa:border twa:border-border twa:overflow-hidden twa:shadow-sm", children: _jsx(Box, { className: "twa:p-3", children: form }) }));
|
|
42
33
|
};
|
|
43
|
-
/** Descriptive pill properties for summary panels (`Label: value` strings). */
|
|
44
34
|
export const getBadgePillStyleSummaryItems = (pill) => {
|
|
45
35
|
if (!pill) {
|
|
46
36
|
return [];
|
|
@@ -66,7 +56,6 @@ export const getBadgePillStyleSummaryItems = (pill) => {
|
|
|
66
56
|
}
|
|
67
57
|
return items;
|
|
68
58
|
};
|
|
69
|
-
/** Compact summary tags for a {@link BadgePillStyle}; used by wizard summaries. */
|
|
70
59
|
export const renderBadgePillStyleSummaryTags = (pill) => {
|
|
71
60
|
const items = getBadgePillStyleSummaryItems(pill);
|
|
72
61
|
if (!items.length) {
|
|
@@ -16,14 +16,6 @@ const FONT_SIZE_ITEMS = [
|
|
|
16
16
|
{ value: 'Large', label: 'Large' },
|
|
17
17
|
{ value: 'XLarge', label: 'XLarge' },
|
|
18
18
|
];
|
|
19
|
-
/**
|
|
20
|
-
* Compact editor for the `Font` slice (`CellFontStyle`).
|
|
21
|
-
*
|
|
22
|
-
* Used by Styled Column wizards (Gradient, Percent Bar, Bullet Chart) that
|
|
23
|
-
* own a `Font?` slot. Any change emits a new `CellFontStyle` (or
|
|
24
|
-
* `undefined` once every key is unset) which the host wizard merges back
|
|
25
|
-
* into its `*Style` patch.
|
|
26
|
-
*/
|
|
27
19
|
const disabledClassName = (disabled) => disabled ? 'twa:opacity-50 twa:pointer-events-none' : '';
|
|
28
20
|
export const StyledColumnFontStyleEditor = (props) => {
|
|
29
21
|
const font = props.value ?? {};
|
|
@@ -31,7 +23,6 @@ export const StyledColumnFontStyleEditor = (props) => {
|
|
|
31
23
|
const disabledClass = disabledClassName(disabled);
|
|
32
24
|
const update = (patch) => {
|
|
33
25
|
const next = { ...font, ...patch };
|
|
34
|
-
// strip empty/undefined keys
|
|
35
26
|
Object.keys(next).forEach((k) => {
|
|
36
27
|
const v = next[k];
|
|
37
28
|
if (v === undefined || v === null || v === '') {
|
|
@@ -55,13 +46,6 @@ export const StyledColumnFontStyleEditor = (props) => {
|
|
|
55
46
|
FontSize: (value || undefined),
|
|
56
47
|
}) }) })] }) }) }), !hideAlignment && (_jsx(FormRow, { label: "Alignment:", children: _jsx(Box, { className: disabledClass, children: _jsx(Flex, { alignItems: "center", className: "twa:ml-2 twa:gap-2", children: _jsxs(ToggleGroup, { children: [_jsx(Toggle, { icon: "align-left", pressed: font.Alignment === 'Left', onPressedChange: (pressed) => onAlignmentChange(pressed ? 'Left' : undefined) }), _jsx(Toggle, { icon: "align-center", pressed: font.Alignment === 'Center', onPressedChange: (pressed) => onAlignmentChange(pressed ? 'Center' : undefined) }), _jsx(Toggle, { icon: "align-right", pressed: font.Alignment === 'Right', onPressedChange: (pressed) => onAlignmentChange(pressed ? 'Right' : undefined) })] }) }) }) }))] }) }));
|
|
57
48
|
};
|
|
58
|
-
/**
|
|
59
|
-
* Compact editor for the `Cell` slice (`CellBoxStyle`).
|
|
60
|
-
*
|
|
61
|
-
* Used by Styled Column wizards (Rating, Sparkline) that own a `Cell?`
|
|
62
|
-
* slot. Any change emits a new `CellBoxStyle` (or `undefined` once every
|
|
63
|
-
* key is unset) which the host wizard merges back into its `*Style` patch.
|
|
64
|
-
*/
|
|
65
49
|
export const StyledColumnCellStyleEditor = (props) => {
|
|
66
50
|
const cell = props.value ?? {};
|
|
67
51
|
const cellRef = React.useRef(cell);
|
|
@@ -84,9 +68,6 @@ export const StyledColumnCellStyleEditor = (props) => {
|
|
|
84
68
|
};
|
|
85
69
|
return (_jsx(Box, { children: _jsxs(FormLayout, { className: "twa:ml-2", sizes: [...FORM_SIZES], children: [_jsx(FormRow, { label: "Background:", children: _jsx(OptionalColorPicker, { className: "twa:ml-2", disabled: disabled, api: props.api, value: cell.BackColor, defaultColor: "#ffffff", onChange: (c) => update({ BackColor: c }) }) }), _jsx(FormRow, { label: "Border colour:", children: _jsx(OptionalColorPicker, { className: "twa:ml-2", disabled: disabled, api: props.api, value: cell.BorderColor, defaultColor: "#000000", onChange: (c) => update({ BorderColor: c }) }) }), _jsx(FormRow, { label: "Border radius:", children: _jsxs(Flex, { alignItems: "center", className: "twa:ml-2 twa:gap-2", children: [_jsx(NumberInput, { disabled: disabled, className: "twa:w-20", value: cell.BorderRadius, min: 0, max: 64, step: 1, onChange: (v) => update({ BorderRadius: v === undefined || isNaN(Number(v)) ? undefined : v }) }), _jsx(Box, { className: "twa:text-xs twa:opacity-70", children: "px" })] }) })] }) }));
|
|
86
70
|
};
|
|
87
|
-
/**
|
|
88
|
-
* Descriptive font properties for summary panels (`Label: value` strings).
|
|
89
|
-
*/
|
|
90
71
|
export const getCellFontStyleSummaryItems = (font) => {
|
|
91
72
|
if (!font) {
|
|
92
73
|
return [];
|
|
@@ -112,9 +93,6 @@ export const getCellFontStyleSummaryItems = (font) => {
|
|
|
112
93
|
}
|
|
113
94
|
return items;
|
|
114
95
|
};
|
|
115
|
-
/**
|
|
116
|
-
* Compact summary tags for the Font slice; used by wizard summary panels.
|
|
117
|
-
*/
|
|
118
96
|
export const renderFontStyleSummaryTags = (font) => {
|
|
119
97
|
const items = getCellFontStyleSummaryItems(font);
|
|
120
98
|
if (!items.length) {
|
|
@@ -122,9 +100,6 @@ export const renderFontStyleSummaryTags = (font) => {
|
|
|
122
100
|
}
|
|
123
101
|
return renderSummaryLabelValueTags(items);
|
|
124
102
|
};
|
|
125
|
-
/**
|
|
126
|
-
* Descriptive cell box properties for summary panels (`Label: value` strings).
|
|
127
|
-
*/
|
|
128
103
|
export const getCellBoxStyleSummaryItems = (cell) => {
|
|
129
104
|
if (!cell) {
|
|
130
105
|
return [];
|
|
@@ -141,9 +116,6 @@ export const getCellBoxStyleSummaryItems = (cell) => {
|
|
|
141
116
|
}
|
|
142
117
|
return items;
|
|
143
118
|
};
|
|
144
|
-
/**
|
|
145
|
-
* Compact summary tags for the Cell slice; used by wizard summary panels.
|
|
146
|
-
*/
|
|
147
119
|
export const renderCellStyleSummaryTags = (cell) => {
|
|
148
120
|
const items = getCellBoxStyleSummaryItems(cell);
|
|
149
121
|
if (!items.length) {
|
|
@@ -13,7 +13,6 @@ import { getCellBoxStyleSummaryItems, StyledColumnCellStyleEditor, } from './Sty
|
|
|
13
13
|
import { Card } from '../../../components/Card';
|
|
14
14
|
import ErrorBox from '../../../components/ErrorBox';
|
|
15
15
|
const STYLE_FORM_SIZES = ['200px', '1fr'];
|
|
16
|
-
/** Sentinel for the theme dropdown — persisted options omit `theme` when this is chosen. */
|
|
17
16
|
const SPARKLINE_CUSTOM_COLOURS_THEME = '__custom__';
|
|
18
17
|
const SparklineTypes = {
|
|
19
18
|
LINE: 'line',
|
|
@@ -84,9 +83,6 @@ export const getStyledColumnSparklineStyleViewValues = (data) => {
|
|
|
84
83
|
includeEmptyFeatures: false,
|
|
85
84
|
});
|
|
86
85
|
};
|
|
87
|
-
/**
|
|
88
|
-
* Wizard-step summary for the Sparkline Settings step.
|
|
89
|
-
*/
|
|
90
86
|
export const renderSparklineSummary = (data) => {
|
|
91
87
|
const sparkline = data.SparklineStyle;
|
|
92
88
|
if (!sparkline?.options) {
|
|
@@ -97,11 +93,6 @@ export const renderSparklineSummary = (data) => {
|
|
|
97
93
|
});
|
|
98
94
|
return renderSummaryStringTags(items);
|
|
99
95
|
};
|
|
100
|
-
/**
|
|
101
|
-
* Validation for the Sparkline Settings wizard step.
|
|
102
|
-
* - Sparkline type must be set (defaulted to `line` so this is mostly a safety net).
|
|
103
|
-
* - When Min and Max overrides are both provided, Min must be strictly less than Max.
|
|
104
|
-
*/
|
|
105
96
|
export const isValidSparklineSettings = (data) => {
|
|
106
97
|
const opts = data.SparklineStyle?.options;
|
|
107
98
|
if (!opts?.type) {
|
|
@@ -114,8 +105,6 @@ export const isValidSparklineSettings = (data) => {
|
|
|
114
105
|
};
|
|
115
106
|
export const StyledColumnSparklineSettingsSection = ({ onChange }) => {
|
|
116
107
|
const { data, api } = useOnePageAdaptableWizardContext();
|
|
117
|
-
// Compute defaults non-destructively — never mutate persisted state during
|
|
118
|
-
// render. The chart `type` is required so default it to `line` if absent.
|
|
119
108
|
const persistedOptions = data.SparklineStyle?.options;
|
|
120
109
|
const sparklineOptions = persistedOptions
|
|
121
110
|
? { ...persistedOptions, type: persistedOptions.type ?? SparklineTypes.LINE }
|
|
@@ -252,8 +241,6 @@ const SparklineThemingOptions = ({ options, onChange, }) => {
|
|
|
252
241
|
};
|
|
253
242
|
const SparklineAxisOptions = ({ options, onChange, }) => {
|
|
254
243
|
const { api } = useOnePageAdaptableWizardContext();
|
|
255
|
-
// Non-destructive default for the axis sub-tree so we never mutate the
|
|
256
|
-
// persisted options object during render.
|
|
257
244
|
const sparklineOptions = {
|
|
258
245
|
...(options ?? {}),
|
|
259
246
|
axis: {
|
|
@@ -25,11 +25,6 @@ import { StyledColumnIconPreview } from './StyledColumnWizardStyleSection/Compon
|
|
|
25
25
|
import { StyledColumnBulletPreview } from './StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview';
|
|
26
26
|
import { StyledColumnRangeBarPreview } from './StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview';
|
|
27
27
|
import { StyledColumnSparklinePreview } from './StyledColumnWizardStyleSection/Components/StyledColumnSparklinePreview';
|
|
28
|
-
/**
|
|
29
|
-
* Mirrors the migration default in `VersionUpgrade23.patchStyledColumnName` and
|
|
30
|
-
* the auto-fill logic in `StyledColumnWizardTypeSection` so users opening the
|
|
31
|
-
* wizard immediately see a sensible Name (e.g. `Badge-tradeId`).
|
|
32
|
-
*/
|
|
33
28
|
const computeDefaultStyledColumnName = (sc) => {
|
|
34
29
|
let typeKey = '';
|
|
35
30
|
if (sc.GradientStyle)
|
|
@@ -53,7 +48,6 @@ const computeDefaultStyledColumnName = (sc) => {
|
|
|
53
48
|
}
|
|
54
49
|
return `${typeKey}-${sc.ColumnId || 'column'}`;
|
|
55
50
|
};
|
|
56
|
-
/** First wizard step to open when editing an existing Styled Column (column menu, settings list, etc.). */
|
|
57
51
|
export const getStyledColumnEditDefaultSectionName = (styledColumn) => {
|
|
58
52
|
if (styledColumn.BadgeStyle) {
|
|
59
53
|
return 'Badges';
|
|
@@ -84,10 +78,6 @@ export const StyledColumnWizard = (props) => {
|
|
|
84
78
|
const [styledColumn, setStyledColumn] = useState(() => {
|
|
85
79
|
if (data) {
|
|
86
80
|
const cloned = cloneObject(data);
|
|
87
|
-
// For *Edit* (existing object loaded from state) we fall back to the
|
|
88
|
-
// migration default if the Name is somehow missing. For *New* we leave
|
|
89
|
-
// the Name blank so the user enters one themselves — same pattern as
|
|
90
|
-
// Format Column / Alert / Custom Sort etc.
|
|
91
81
|
const isNew = props.popupParams?.action === 'New';
|
|
92
82
|
if (!isNew && !cloned.Name) {
|
|
93
83
|
cloned.Name = computeDefaultStyledColumnName(cloned);
|
|
@@ -95,16 +85,11 @@ export const StyledColumnWizard = (props) => {
|
|
|
95
85
|
return cloned;
|
|
96
86
|
}
|
|
97
87
|
const newData = ObjectFactory.CreateEmptyStyledColumn();
|
|
98
|
-
// Default new Styled Columns to a Badge — applicable to every data type
|
|
99
|
-
// and the most-used styled column overall, so it makes a sensible
|
|
100
|
-
// initial pick in the Type wizard step.
|
|
101
88
|
newData.BadgeStyle = {
|
|
102
89
|
Badges: [ObjectFactory.CreateDefaultStyledColumnBadge()],
|
|
103
90
|
};
|
|
104
91
|
if (props.popupParams?.column && props.popupParams?.action === 'New') {
|
|
105
92
|
newData.ColumnId = props.popupParams.column.columnId;
|
|
106
|
-
// For numeric-array columns the natural pick is a Sparkline; flip the
|
|
107
|
-
// default rather than open a Badge over an array column.
|
|
108
93
|
if (props.popupParams.column.dataType.includes('Array')) {
|
|
109
94
|
newData.SparklineStyle = {};
|
|
110
95
|
delete newData.BadgeStyle;
|
|
@@ -265,10 +250,6 @@ export const StyledColumnWizard = (props) => {
|
|
|
265
250
|
render: () => (_jsx(Box, { className: "twa:p-2", children: _jsx(StyledColumnBadgeStyleSection, { onChange: setStyledColumn }) })),
|
|
266
251
|
});
|
|
267
252
|
}
|
|
268
|
-
// Persistent live preview shown at the top of the section content on
|
|
269
|
-
// every step. We render the bare preview (no Card chrome) so it sits
|
|
270
|
-
// flush above the form. Only one of these can apply at a time — the
|
|
271
|
-
// styled column owns exactly one of these style buckets.
|
|
272
253
|
let headerPreview = null;
|
|
273
254
|
if (styledColumn.GradientStyle) {
|
|
274
255
|
headerPreview = _jsx(StyledColumnGradientPreview, { data: styledColumn });
|
|
@@ -294,12 +275,7 @@ export const StyledColumnWizard = (props) => {
|
|
|
294
275
|
else if (styledColumn.SparklineStyle) {
|
|
295
276
|
headerPreview = _jsx(StyledColumnSparklinePreview, { data: styledColumn });
|
|
296
277
|
}
|
|
297
|
-
return (_jsx(OnePageAdaptableWizard, { defaultCurrentSectionName: defaultCurrentSectionName, moduleInfo: props.moduleInfo,
|
|
298
|
-
// Display the picked type in the header (e.g. "Gradient Column",
|
|
299
|
-
// "Percent Bar Column") so the user always knows which kind of
|
|
300
|
-
// column they're configuring. Falls back to "Styled Column"
|
|
301
|
-
// before a type has been selected.
|
|
302
|
-
moduleName: getStyledColumnWizardTitle(styledColumn), data: styledColumn, headerPreview: headerPreview, onFinish: handleFinish, onHide: props.onCloseWizard, sections: [
|
|
278
|
+
return (_jsx(OnePageAdaptableWizard, { defaultCurrentSectionName: defaultCurrentSectionName, moduleInfo: props.moduleInfo, moduleName: getStyledColumnWizardTitle(styledColumn), data: styledColumn, headerPreview: headerPreview, onFinish: handleFinish, onHide: props.onCloseWizard, sections: [
|
|
303
279
|
{
|
|
304
280
|
details: 'Enter a Name and select a Styled Column Type',
|
|
305
281
|
isValid: (data) => {
|
|
@@ -127,7 +127,6 @@ export const getStyledColumnBulletStyleViewValues = (data) => {
|
|
|
127
127
|
includeEmptyTooltip: false,
|
|
128
128
|
});
|
|
129
129
|
};
|
|
130
|
-
/** Wizard / list-view summary for the Ranges step (qualitative bands). */
|
|
131
130
|
export const renderStyledColumnBulletRangesSummary = (data) => {
|
|
132
131
|
const bullet = data.BulletChartStyle;
|
|
133
132
|
if (!bullet) {
|
|
@@ -137,7 +136,6 @@ export const renderStyledColumnBulletRangesSummary = (data) => {
|
|
|
137
136
|
return (_jsxs(Flex, { flexDirection: "column", className: "twa:gap-2 twa:items-start", children: [renderSummaryStringTags(tagItems), _jsx(BulletRangesSummaryPreview, { bulletStyle: bullet })] }));
|
|
138
137
|
};
|
|
139
138
|
export const StyledColumnBulletRangesView = ({ data }) => renderStyledColumnBulletRangesSummary(data);
|
|
140
|
-
/** Wizard / list-view summary for the Style step (target, bar, text, font). */
|
|
141
139
|
export const renderStyledColumnBulletStyleSummary = (data) => {
|
|
142
140
|
const bullet = data.BulletChartStyle;
|
|
143
141
|
if (!bullet) {
|
|
@@ -152,7 +150,6 @@ export const renderStyledColumnBulletStyleSummary = (data) => {
|
|
|
152
150
|
}
|
|
153
151
|
return renderSummaryStringTags(items);
|
|
154
152
|
};
|
|
155
|
-
/** Full combined summary (ranges + style); kept for callers that expect one block. */
|
|
156
153
|
export const renderStyledColumnBulletSummary = (data) => {
|
|
157
154
|
const bullet = data.BulletChartStyle;
|
|
158
155
|
if (!bullet) {
|
|
@@ -160,12 +157,6 @@ export const renderStyledColumnBulletSummary = (data) => {
|
|
|
160
157
|
}
|
|
161
158
|
return (_jsxs(Flex, { flexDirection: "column", className: "twa:gap-3 twa:items-start", children: [renderStyledColumnBulletRangesSummary(data), renderStyledColumnBulletStyleSummary(data)] }));
|
|
162
159
|
};
|
|
163
|
-
/**
|
|
164
|
-
* Maps the structured `BulletChartStyle.Target` field to one of the simple
|
|
165
|
-
* modes the wizard exposes. The wizard only configures *one* primary target;
|
|
166
|
-
* if a state-defined Bullet Chart used the array form or a per-target marker
|
|
167
|
-
* override, we leave it alone but treat the first entry as the editable one.
|
|
168
|
-
*/
|
|
169
160
|
const getSimpleTargetMode = (target) => {
|
|
170
161
|
if (target == undefined) {
|
|
171
162
|
return 'None';
|
|
@@ -217,9 +208,6 @@ export const StyledColumnWizardBulletSection = (props) => {
|
|
|
217
208
|
const scope = { ColumnIds: [data.ColumnId] };
|
|
218
209
|
const bullet = data.BulletChartStyle ?? {};
|
|
219
210
|
const disabled = !data.ColumnId || !column;
|
|
220
|
-
// -------------------------------------------------------------------------
|
|
221
|
-
// Updaters
|
|
222
|
-
// -------------------------------------------------------------------------
|
|
223
211
|
const update = (patch) => {
|
|
224
212
|
props.onChange({
|
|
225
213
|
...data,
|
|
@@ -233,10 +221,6 @@ export const StyledColumnWizardBulletSection = (props) => {
|
|
|
233
221
|
update({ CellRanges: ranges });
|
|
234
222
|
};
|
|
235
223
|
const onUpdateColumnComparison = (columnComparison) => {
|
|
236
|
-
// Bullet Chart can technically still accept a ColumnComparison through
|
|
237
|
-
// state, but the Bullet wizard hides the toggle. This callback is wired
|
|
238
|
-
// up only to satisfy the RangesComponent prop contract; in practice it
|
|
239
|
-
// will never be invoked because hideColumnComparison is true.
|
|
240
224
|
update({ ColumnComparison: columnComparison });
|
|
241
225
|
};
|
|
242
226
|
const onRangeValueTypeChange = React.useCallback((rangeValueType) => {
|
|
@@ -258,14 +242,12 @@ export const StyledColumnWizardBulletSection = (props) => {
|
|
|
258
242
|
},
|
|
259
243
|
});
|
|
260
244
|
}, [data, bullet]);
|
|
261
|
-
// -- Target ----------------------------------------------------------------
|
|
262
245
|
const currentMode = getSimpleTargetMode(bullet.TargetProperties?.Target);
|
|
263
246
|
const updateTargetProperties = (patch) => {
|
|
264
247
|
const merged = {
|
|
265
248
|
...bullet.TargetProperties,
|
|
266
249
|
...patch,
|
|
267
250
|
};
|
|
268
|
-
// Strip the wrapper when nothing meaningful is left.
|
|
269
251
|
const isEmpty = merged.Target == undefined && merged.Marker == undefined;
|
|
270
252
|
update({ TargetProperties: isEmpty ? undefined : merged });
|
|
271
253
|
};
|
|
@@ -284,7 +266,6 @@ export const StyledColumnWizardBulletSection = (props) => {
|
|
|
284
266
|
return;
|
|
285
267
|
}
|
|
286
268
|
if (mode === 'Column') {
|
|
287
|
-
// Use the first available numeric column (excluding the styled column itself)
|
|
288
269
|
const candidate = api.columnApi.getNumericColumns().find((c) => c.columnId !== data.ColumnId);
|
|
289
270
|
setTarget(candidate?.columnId ?? '');
|
|
290
271
|
return;
|
|
@@ -296,7 +277,6 @@ export const StyledColumnWizardBulletSection = (props) => {
|
|
|
296
277
|
const handleColumnTargetChange = (columnId) => {
|
|
297
278
|
setTarget(columnId);
|
|
298
279
|
};
|
|
299
|
-
// -- Bar -------------------------------------------------------------------
|
|
300
280
|
const updateBar = (patch) => {
|
|
301
281
|
const merged = {
|
|
302
282
|
...bullet.Bar,
|
|
@@ -305,7 +285,6 @@ export const StyledColumnWizardBulletSection = (props) => {
|
|
|
305
285
|
const isEmpty = merged.Color == undefined && merged.Height == undefined;
|
|
306
286
|
update({ Bar: isEmpty ? undefined : merged });
|
|
307
287
|
};
|
|
308
|
-
// -- Marker ----------------------------------------------------------------
|
|
309
288
|
const updateMarker = (patch) => {
|
|
310
289
|
updateTargetProperties({
|
|
311
290
|
Marker: {
|
|
@@ -315,7 +294,6 @@ export const StyledColumnWizardBulletSection = (props) => {
|
|
|
315
294
|
},
|
|
316
295
|
});
|
|
317
296
|
};
|
|
318
|
-
// -- Cell text -------------------------------------------------------------
|
|
319
297
|
const toggleCellText = (token, show) => {
|
|
320
298
|
update(toggleBarStyleCellTextToken(bullet.CellTextProperties, token, show));
|
|
321
299
|
};
|
|
@@ -331,15 +309,11 @@ export const StyledColumnWizardBulletSection = (props) => {
|
|
|
331
309
|
: current.filter((t) => t !== token);
|
|
332
310
|
update({ ToolTipText: next });
|
|
333
311
|
};
|
|
334
|
-
// -------------------------------------------------------------------------
|
|
335
|
-
// Render
|
|
336
|
-
// -------------------------------------------------------------------------
|
|
337
312
|
if (!data.ColumnId || !column) {
|
|
338
313
|
return (_jsx(Box, { children: _jsx(ErrorBox, { className: "twa:mt-2", children: !data.ColumnId
|
|
339
314
|
? 'You need to select a column before styling.'
|
|
340
315
|
: `Column "${data.ColumnId}" was not found in the grid.` }) }));
|
|
341
316
|
}
|
|
342
|
-
// ----- Ranges-only variant (wizard step before Style) ---------------------
|
|
343
317
|
if (variant === 'ranges') {
|
|
344
318
|
return (_jsx(Box, { children: _jsxs(Card, { shadow: false, children: [_jsxs(Card.Title, { children: [_jsx(Box, { className: "twa:font-medium", children: "Ranges" }), _jsx(Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Define qualitative bands for the bullet scale" })] }), _jsx(Card.Body, { children: _jsx(RangesComponent, { disabled: disabled, minMaxRangeValues: minMaxRangeValues, api: api, scope: scope, ranges: bullet.CellRanges, rangeValueType: bullet.RangeValueType, onRangeValueTypeChange: onRangeValueTypeChange, columnComparison: bullet.ColumnComparison, updateRanges: onUpdateRanges, updateColumnComparison: onUpdateColumnComparison, hideColumnComparison: true }) })] }) }));
|
|
345
319
|
}
|
|
@@ -42,9 +42,6 @@ export const getStyledColumnGradientStyleViewValues = (data) => {
|
|
|
42
42
|
}
|
|
43
43
|
return buildStyledColumnGradientStyleSummaryStrings(gs, { includeEmptyTooltip: false });
|
|
44
44
|
};
|
|
45
|
-
/**
|
|
46
|
-
* Summary of Gradient-only style options (alpha bounds, auto-contrast, tooltip).
|
|
47
|
-
*/
|
|
48
45
|
export const renderStyledColumnGradientStyleSummary = (data) => {
|
|
49
46
|
const gs = data.GradientStyle;
|
|
50
47
|
if (!gs) {
|
|
@@ -39,9 +39,6 @@ const previewIcon = (spec) => {
|
|
|
39
39
|
}
|
|
40
40
|
return _jsx(AdaptableIconComponent, { icon: spec });
|
|
41
41
|
};
|
|
42
|
-
// ---------------------------------------------------------------------------
|
|
43
|
-
// Summary helpers (used by the wizard step header + Styled Columns list)
|
|
44
|
-
// ---------------------------------------------------------------------------
|
|
45
42
|
const ICON_MAPPINGS_PREVIEW_CHIP_LIMIT = 6;
|
|
46
43
|
const previewMapping = (mapping, index) => {
|
|
47
44
|
return (_jsxs(Flex, { alignItems: "center", className: "twa:gap-1 twa:px-1.5 twa:py-0.5 twa:rounded twa:bg-[var(--ab-color-primary)] twa:text-[var(--ab-color-primarytext)]", children: [_jsx(Box, { children: previewIcon(mapping.Icon) }), _jsx(Box, { className: "twa:text-xs twa:opacity-90", children: String(mapping.Key) })] }, `${String(mapping.Key)}-${index}`));
|
|
@@ -123,7 +120,6 @@ export const getStyledColumnIconStyleViewValues = (data) => {
|
|
|
123
120
|
includeEmptyTooltip: false,
|
|
124
121
|
});
|
|
125
122
|
};
|
|
126
|
-
/** Mappings step summary. */
|
|
127
123
|
export const renderStyledColumnIconMappingsSummary = (data) => {
|
|
128
124
|
const ic = data.IconStyle;
|
|
129
125
|
if (!ic) {
|
|
@@ -134,7 +130,6 @@ export const renderStyledColumnIconMappingsSummary = (data) => {
|
|
|
134
130
|
return (_jsxs(Flex, { flexDirection: "column", className: "twa:gap-2 twa:items-start", children: [renderSummaryStringTags(tagItems), renderMappingsPreview(previewMappings)] }));
|
|
135
131
|
};
|
|
136
132
|
export const StyledColumnIconMappingsView = ({ data }) => renderStyledColumnIconMappingsSummary(data);
|
|
137
|
-
/** Style step summary (size, text, tooltip, font / cell). */
|
|
138
133
|
export const renderStyledColumnIconStyleSummary = (data) => {
|
|
139
134
|
const ic = data.IconStyle;
|
|
140
135
|
if (!ic) {
|
|
@@ -149,9 +144,6 @@ export const renderStyledColumnIconStyleSummary = (data) => {
|
|
|
149
144
|
}
|
|
150
145
|
return renderSummaryStringTags(items);
|
|
151
146
|
};
|
|
152
|
-
/**
|
|
153
|
-
* Combined summary for the Styled Columns list row (preview + key facts).
|
|
154
|
-
*/
|
|
155
147
|
export const renderStyledColumnIconSummary = (data) => {
|
|
156
148
|
const ic = data.IconStyle;
|
|
157
149
|
if (!ic) {
|
|
@@ -159,9 +151,6 @@ export const renderStyledColumnIconSummary = (data) => {
|
|
|
159
151
|
}
|
|
160
152
|
return renderStyledColumnIconMappingsSummary(data);
|
|
161
153
|
};
|
|
162
|
-
// ---------------------------------------------------------------------------
|
|
163
|
-
// Wizard validity check
|
|
164
|
-
// ---------------------------------------------------------------------------
|
|
165
154
|
export const isValidIconStyleMappings = (data) => {
|
|
166
155
|
const ic = data.IconStyle;
|
|
167
156
|
if (!ic)
|
|
@@ -206,18 +195,9 @@ export const StyledColumnWizardIconSection = (props) => {
|
|
|
206
195
|
props.onChange({ ...data, IconStyle: rest });
|
|
207
196
|
}
|
|
208
197
|
};
|
|
209
|
-
// -----------------------------------------------------------------------
|
|
210
|
-
// Preset operations
|
|
211
|
-
// -----------------------------------------------------------------------
|
|
212
198
|
const applyPreset = (preset) => {
|
|
213
|
-
// Presets are now resolved at *runtime* — we only need to record the
|
|
214
|
-
// selection here. Custom `Mappings` continue to act as overrides /
|
|
215
|
-
// additions on top of the preset.
|
|
216
199
|
update({
|
|
217
200
|
Preset: preset,
|
|
218
|
-
// Flags / Status presets pair best with case-insensitive matching
|
|
219
|
-
// because they include both code (`'GBP'`) and name (`'United Kingdom'`)
|
|
220
|
-
// synonyms; user can flip back to Exact in the wizard if needed.
|
|
221
201
|
MatchMode: preset === 'Flags' || preset === 'Status'
|
|
222
202
|
? 'CaseInsensitive'
|
|
223
203
|
: iconStyle.MatchMode ?? 'Exact',
|
|
@@ -226,9 +206,6 @@ export const StyledColumnWizardIconSection = (props) => {
|
|
|
226
206
|
const clearPreset = () => {
|
|
227
207
|
update({ Preset: undefined });
|
|
228
208
|
};
|
|
229
|
-
// -----------------------------------------------------------------------
|
|
230
|
-
// Mapping list operations
|
|
231
|
-
// -----------------------------------------------------------------------
|
|
232
209
|
const setMappings = (next) => {
|
|
233
210
|
update({ Mappings: next });
|
|
234
211
|
};
|
|
@@ -251,16 +228,11 @@ export const StyledColumnWizardIconSection = (props) => {
|
|
|
251
228
|
setMappings(next);
|
|
252
229
|
setAutoOpenPickerIndex(next.length - 1);
|
|
253
230
|
};
|
|
254
|
-
// -----------------------------------------------------------------------
|
|
255
|
-
// CellText helpers
|
|
256
|
-
// -----------------------------------------------------------------------
|
|
257
231
|
const updateCellTextProperties = (patch) => {
|
|
258
232
|
const merged = {
|
|
259
233
|
...iconStyle.CellTextProperties,
|
|
260
234
|
...patch,
|
|
261
235
|
};
|
|
262
|
-
// Strip the wrapper when both inner properties are unset, so empty state
|
|
263
|
-
// serialises cleanly.
|
|
264
236
|
const isEmpty = !merged.CellText?.length && merged.CellTextPosition == undefined;
|
|
265
237
|
update({ CellTextProperties: isEmpty ? undefined : merged });
|
|
266
238
|
};
|
|
@@ -271,16 +243,11 @@ export const StyledColumnWizardIconSection = (props) => {
|
|
|
271
243
|
: current.filter((t) => t !== token);
|
|
272
244
|
updateCellTextProperties({ CellText: next });
|
|
273
245
|
};
|
|
274
|
-
// -----------------------------------------------------------------------
|
|
275
|
-
// Fallback helpers
|
|
276
|
-
// -----------------------------------------------------------------------
|
|
277
246
|
const updateFallbackProperties = (patch) => {
|
|
278
247
|
const merged = {
|
|
279
248
|
...iconStyle.FallbackProperties,
|
|
280
249
|
...patch,
|
|
281
250
|
};
|
|
282
|
-
// Strip the wrapper when there's nothing to remember; the renderer
|
|
283
|
-
// already defaults to `Mode: 'Hide'` when `FallbackProperties` is unset.
|
|
284
251
|
const isEmpty = (merged.Mode == undefined || merged.Mode === 'Hide') && merged.Icon == undefined;
|
|
285
252
|
update({ FallbackProperties: isEmpty ? undefined : merged });
|
|
286
253
|
};
|
|
@@ -291,9 +258,6 @@ export const StyledColumnWizardIconSection = (props) => {
|
|
|
291
258
|
: current.filter((t) => t !== token);
|
|
292
259
|
update({ ToolTipText: next });
|
|
293
260
|
};
|
|
294
|
-
// -----------------------------------------------------------------------
|
|
295
|
-
// Render
|
|
296
|
-
// -----------------------------------------------------------------------
|
|
297
261
|
if (props.variant === 'mappings') {
|
|
298
262
|
const presetMappingsPreview = iconStyle.Preset
|
|
299
263
|
? getIconStylePresetMappings(iconStyle.Preset)
|
|
@@ -317,7 +281,6 @@ export const StyledColumnWizardIconSection = (props) => {
|
|
|
317
281
|
{ value: 'Icon', label: 'Show Fallback Icon' },
|
|
318
282
|
] }) }) }), iconStyle.FallbackProperties?.Mode === 'Icon' && (_jsx(FormRow, { label: "Fallback Icon:", children: _jsx(IconPickerButton, { value: iconStyle.FallbackProperties?.Icon, onChange: (next) => updateFallbackProperties({ Icon: next }) }) }))] }) })] })] }));
|
|
319
283
|
}
|
|
320
|
-
// ----- Style variant (wizard step title: "Style") ------------------------
|
|
321
284
|
const cellText = iconStyle.CellTextProperties?.CellText ?? [];
|
|
322
285
|
const toolTipText = iconStyle.ToolTipText ?? [];
|
|
323
286
|
const cellTextDisabled = cellText.length === 0;
|
|
@@ -340,9 +303,6 @@ export const StyledColumnWizardIconSection = (props) => {
|
|
|
340
303
|
{ value: 'Below', label: 'Below' },
|
|
341
304
|
] }) }) })] }), _jsx(Box, { className: `twa:mt-3 twa:pt-3 twa:border-t twa:border-foreground/15 ${cellTextDisabled ? 'twa:opacity-50' : ''}`, children: _jsx(StyledColumnFontStyleEditor, { api: api, disabled: disabled || cellTextDisabled, value: iconStyle.Font, onChange: onFontChange }) })] })] }), _jsxs(Card, { shadow: false, className: "twa:mb-3", children: [_jsxs(Card.Title, { children: [_jsx(Box, { className: "twa:font-medium", children: "Tooltip" }), _jsx(Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Choose whether and how to display a tooltip" })] }), _jsx(Card.Body, { children: _jsx(FormLayout, { sizes: [...STYLE_FORM_SIZES], children: _jsxs(FormRow, { label: "Tooltip Display:", children: [_jsx(CheckBox, { checked: toolTipText.includes('CellValue'), onChange: (checked) => toggleToolTipText('CellValue', checked), children: "Cell Value" }), ' ', _jsx(CheckBox, { className: "twa:ml-3", checked: toolTipText.includes('IconDescription'), onChange: (checked) => toggleToolTipText('IconDescription', checked), children: "Description" })] }) }) })] }), _jsxs(Card, { shadow: false, children: [_jsxs(Card.Title, { children: [_jsx(Box, { className: "twa:font-medium", children: "Cell" }), _jsx(Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Optional cell box styling (overrides Format Column properties)" })] }), _jsx(Card.Body, { children: _jsx(StyledColumnCellStyleEditor, { api: api, disabled: disabled, value: iconStyle.Cell, onChange: onCellChange }) })] })] }));
|
|
342
305
|
};
|
|
343
|
-
// ---------------------------------------------------------------------------
|
|
344
|
-
// Icon picker — click-to-open popover (closes on outside click or system pick)
|
|
345
|
-
// ---------------------------------------------------------------------------
|
|
346
306
|
const ICON_KIND_OPTIONS = [
|
|
347
307
|
{ value: 'Emoji', label: 'Emoji' },
|
|
348
308
|
{ value: 'System', label: 'Built-in' },
|
|
@@ -47,20 +47,6 @@ const summarizeBound = (bound) => {
|
|
|
47
47
|
}
|
|
48
48
|
return bound;
|
|
49
49
|
};
|
|
50
|
-
/**
|
|
51
|
-
* A single joined bound control: a type selector (Fixed Number / Column /
|
|
52
|
-
* Column Min / Max / Average / Median, plus `None` for the optional Reference)
|
|
53
|
-
* joined inline with a contextual editor. Mirrors the Column Comparison bound
|
|
54
|
-
* input so the two read as one block: the select hard-codes `rounded-input`, so
|
|
55
|
-
* the touching corners are flattened directly (important, to beat it) and the
|
|
56
|
-
* shared border overlapped via `-ml-px`.
|
|
57
|
-
*
|
|
58
|
-
* - Fixed Number → editable number input
|
|
59
|
-
* - Column → numeric column selector (excluding the styled column)
|
|
60
|
-
* - Col-* (aggregate) → disabled input showing the resolved value (when a
|
|
61
|
-
* column is in scope), so the user sees the underlying number
|
|
62
|
-
* - None → no editor (selector only)
|
|
63
|
-
*/
|
|
64
50
|
const RangeBarBoundInput = ({ api, value, optional, fallbackNumber, excludeColumnId, resolved, disabled, onChange }) => {
|
|
65
51
|
const mode = getBoundMode(value);
|
|
66
52
|
const handleModeChange = (next) => {
|
|
@@ -76,7 +62,6 @@ const RangeBarBoundInput = ({ api, value, optional, fallbackNumber, excludeColum
|
|
|
76
62
|
.find((c) => c.columnId !== excludeColumnId);
|
|
77
63
|
return onChange(candidate?.columnId ?? '');
|
|
78
64
|
}
|
|
79
|
-
// Col-Min / Col-Max / Col-Avg / Col-Median
|
|
80
65
|
return onChange(next);
|
|
81
66
|
};
|
|
82
67
|
const items = [
|
|
@@ -201,7 +186,6 @@ export const getStyledColumnRangeBarDisplayViewValues = (data) => {
|
|
|
201
186
|
includeEmptyTooltip: false,
|
|
202
187
|
});
|
|
203
188
|
};
|
|
204
|
-
/** Summary line for the Range wizard step (bounds + bands only). */
|
|
205
189
|
export const renderStyledColumnRangeBarRangeStepSummary = (data) => {
|
|
206
190
|
const range = data.RangeBarStyle;
|
|
207
191
|
if (!range) {
|
|
@@ -211,7 +195,6 @@ export const renderStyledColumnRangeBarRangeStepSummary = (data) => {
|
|
|
211
195
|
return (_jsxs(Flex, { flexDirection: "column", className: "twa:gap-2 twa:items-start", children: [renderSummaryStringTags(tagItems), _jsx(RangeBarRangesSummaryPreview, { rangeStyle: range })] }));
|
|
212
196
|
};
|
|
213
197
|
export const StyledColumnRangeBarRangeView = ({ data }) => renderStyledColumnRangeBarRangeStepSummary(data);
|
|
214
|
-
/** Summary for the Display wizard step (markers, track, text). */
|
|
215
198
|
export const renderStyledColumnRangeBarDisplayStepSummary = (data) => {
|
|
216
199
|
const range = data.RangeBarStyle;
|
|
217
200
|
if (!range) {
|
|
@@ -226,9 +209,6 @@ export const renderStyledColumnRangeBarDisplayStepSummary = (data) => {
|
|
|
226
209
|
}
|
|
227
210
|
return renderSummaryStringTags(items);
|
|
228
211
|
};
|
|
229
|
-
/**
|
|
230
|
-
* Combined summary for the Styled Columns list row (preview + key facts).
|
|
231
|
-
*/
|
|
232
212
|
export const renderStyledColumnRangeBarSummary = (data) => {
|
|
233
213
|
const range = data.RangeBarStyle;
|
|
234
214
|
if (!range) {
|
|
@@ -236,15 +216,6 @@ export const renderStyledColumnRangeBarSummary = (data) => {
|
|
|
236
216
|
}
|
|
237
217
|
return (_jsxs(Flex, { flexDirection: "column", className: "twa:gap-3 twa:items-start", children: [renderStyledColumnRangeBarRangeStepSummary(data), renderStyledColumnRangeBarDisplayStepSummary(data)] }));
|
|
238
218
|
};
|
|
239
|
-
// ---------------------------------------------------------------------------
|
|
240
|
-
// Wizard validity check (also used by the wizard step config)
|
|
241
|
-
// ---------------------------------------------------------------------------
|
|
242
|
-
/**
|
|
243
|
-
* Returns `true` if the Range Bar's bounds are well-formed, otherwise an
|
|
244
|
-
* error string explaining what's missing. Used as the wizard step's
|
|
245
|
-
* `isValid` callback.
|
|
246
|
-
*/
|
|
247
|
-
/** Bounds + bands step — Min / Max required and numeric pair must span. */
|
|
248
219
|
export const isValidRangeBarBounds = (data) => {
|
|
249
220
|
const range = data.RangeBarStyle;
|
|
250
221
|
if (!range)
|
|
@@ -260,9 +231,6 @@ export const isValidRangeBarBounds = (data) => {
|
|
|
260
231
|
}
|
|
261
232
|
return true;
|
|
262
233
|
};
|
|
263
|
-
// ---------------------------------------------------------------------------
|
|
264
|
-
// Section
|
|
265
|
-
// ---------------------------------------------------------------------------
|
|
266
234
|
const MARKER_SHAPES = [
|
|
267
235
|
{ value: 'Diamond', label: 'Diamond' },
|
|
268
236
|
{ value: 'Line', label: 'Line' },
|
|
@@ -290,9 +258,6 @@ export const StyledColumnWizardRangeBarSection = (props) => {
|
|
|
290
258
|
const scope = { ColumnIds: [data.ColumnId] };
|
|
291
259
|
const range = data.RangeBarStyle ?? {};
|
|
292
260
|
const disabled = !data.ColumnId || !column;
|
|
293
|
-
// -------------------------------------------------------------------------
|
|
294
|
-
// Updaters
|
|
295
|
-
// -------------------------------------------------------------------------
|
|
296
261
|
const update = (patch) => {
|
|
297
262
|
props.onChange({
|
|
298
263
|
...data,
|
|
@@ -305,9 +270,6 @@ export const StyledColumnWizardRangeBarSection = (props) => {
|
|
|
305
270
|
const onUpdateRanges = (ranges) => {
|
|
306
271
|
update({ CellRanges: ranges });
|
|
307
272
|
};
|
|
308
|
-
// The Range Bar wizard hides the column-comparison toggle (bounds *are*
|
|
309
|
-
// the per-row range here). Stub kept to satisfy the RangesComponent prop
|
|
310
|
-
// contract.
|
|
311
273
|
const onUpdateColumnComparison = (columnComparison) => {
|
|
312
274
|
update({ ColumnComparison: columnComparison });
|
|
313
275
|
};
|
|
@@ -346,8 +308,6 @@ export const StyledColumnWizardRangeBarSection = (props) => {
|
|
|
346
308
|
...range.OutOfRange,
|
|
347
309
|
...patch,
|
|
348
310
|
};
|
|
349
|
-
// Default mode is `Clamp` with no override colour; drop the wrapper in
|
|
350
|
-
// that case so empty state serialises cleanly.
|
|
351
311
|
const isEmpty = (merged.Mode == undefined || merged.Mode === 'Clamp') && merged.Color == undefined;
|
|
352
312
|
update({ OutOfRange: isEmpty ? undefined : merged });
|
|
353
313
|
};
|
|
@@ -359,9 +319,6 @@ export const StyledColumnWizardRangeBarSection = (props) => {
|
|
|
359
319
|
};
|
|
360
320
|
update({ Reference: merged });
|
|
361
321
|
};
|
|
362
|
-
// -- Bound editors ---------------------------------------------------------
|
|
363
|
-
// Resolved values for the column-wide aggregate bound modes, shown read-only
|
|
364
|
-
// in the bound editor so the user sees the underlying number.
|
|
365
322
|
const resolvedBoundValues = {
|
|
366
323
|
'Col-Min': minMaxRangeValues?.min,
|
|
367
324
|
'Col-Max': minMaxRangeValues?.max,
|
|
@@ -372,11 +329,6 @@ export const StyledColumnWizardRangeBarSection = (props) => {
|
|
|
372
329
|
? api.styledColumnApi.internalApi.getMedianValueForNumericColumn(column)
|
|
373
330
|
: undefined,
|
|
374
331
|
};
|
|
375
|
-
/**
|
|
376
|
-
* Renders one of `Min` / `Max` / `Reference` as a single joined row (type
|
|
377
|
-
* selector + contextual editor). Centralised so the three controls stay
|
|
378
|
-
* visually and behaviourally identical (only the field name differs).
|
|
379
|
-
*/
|
|
380
332
|
const renderBoundEditor = (opts) => {
|
|
381
333
|
const setBound = (next) => {
|
|
382
334
|
if (opts.field === 'Reference') {
|
|
@@ -400,7 +352,6 @@ export const StyledColumnWizardRangeBarSection = (props) => {
|
|
|
400
352
|
const value = opts.field === 'Reference' ? range.Reference?.Value : range[opts.field];
|
|
401
353
|
return (_jsx(FormRow, { label: `${opts.label}:`, children: _jsx(RangeBarBoundInput, { api: api, value: value, optional: opts.optional, fallbackNumber: opts.fallbackNumber, excludeColumnId: data.ColumnId, resolved: resolvedBoundValues, disabled: disabled, onChange: setBound }) }));
|
|
402
354
|
};
|
|
403
|
-
// -- Marker editors --------------------------------------------------------
|
|
404
355
|
const updateValueMarker = (patch) => {
|
|
405
356
|
update({
|
|
406
357
|
Marker: {
|
|
@@ -419,8 +370,6 @@ export const StyledColumnWizardRangeBarSection = (props) => {
|
|
|
419
370
|
},
|
|
420
371
|
});
|
|
421
372
|
};
|
|
422
|
-
// Defaults applied locally for displaying current values in the editor —
|
|
423
|
-
// the renderer applies its own defaults if these stay undefined in state.
|
|
424
373
|
const valueMarker = {
|
|
425
374
|
Shape: range.Marker?.Shape ?? 'Diamond',
|
|
426
375
|
Color: range.Marker?.Color ?? '',
|
|
@@ -432,7 +381,6 @@ export const StyledColumnWizardRangeBarSection = (props) => {
|
|
|
432
381
|
Color: referenceMarkerCfg?.Color ?? '',
|
|
433
382
|
Size: referenceMarkerCfg?.Size ?? (referenceMarkerCfg?.Shape === 'Line' ? 2 : 8),
|
|
434
383
|
};
|
|
435
|
-
// -- Cell text -------------------------------------------------------------
|
|
436
384
|
const toggleCellText = (token, show) => {
|
|
437
385
|
update(toggleBarStyleCellTextToken(range.CellTextProperties, token, show));
|
|
438
386
|
};
|
|
@@ -448,9 +396,6 @@ export const StyledColumnWizardRangeBarSection = (props) => {
|
|
|
448
396
|
: current.filter((t) => t !== token);
|
|
449
397
|
update({ ToolTipText: next });
|
|
450
398
|
};
|
|
451
|
-
// -------------------------------------------------------------------------
|
|
452
|
-
// Render
|
|
453
|
-
// -------------------------------------------------------------------------
|
|
454
399
|
if (!data.ColumnId || !column) {
|
|
455
400
|
return (_jsx(Box, { children: _jsx(ErrorBox, { className: "twa:mt-2", children: !data.ColumnId
|
|
456
401
|
? 'You need to select a column before styling.'
|