@adaptabletools/adaptable 23.0.0-canary.5 → 23.0.0-canary.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/icons/sort-asc.svg +1 -1
- package/index.css +756 -257
- package/package.json +1 -1
- package/src/AdaptableOptions/DataSetOptions.d.ts +26 -2
- package/src/AdaptableOptions/DefaultAdaptableOptions.js +0 -1
- package/src/AdaptableOptions/SettingsPanelOptions.d.ts +42 -10
- package/src/AdaptableState/Common/AdaptableFormat.d.ts +7 -0
- package/src/AdaptableState/Common/AdaptableMessageType.d.ts +1 -1
- package/src/AdaptableState/Common/Enums.d.ts +1 -1
- package/src/AdaptableState/Common/Enums.js +1 -1
- package/src/AdaptableState/StyledColumnState.d.ts +2 -2
- package/src/Api/Internal/AlertInternalApi.js +1 -1
- package/src/Api/Internal/DataSetInternalApi.d.ts +3 -0
- package/src/Api/Internal/DataSetInternalApi.js +73 -13
- package/src/Redux/Store/AdaptableStore.js +6 -4
- package/src/Strategy/CalculatedColumnModule.js +1 -0
- package/src/Strategy/ColumnFilterModule.js +1 -0
- package/src/Strategy/FlashingCellModule.js +6 -2
- package/src/Strategy/FormatColumnModule.js +2 -2
- package/src/Strategy/FreeTextColumnModule.js +38 -28
- package/src/Strategy/Interface/IModule.d.ts +3 -1
- package/src/Strategy/LayoutModule.js +15 -66
- package/src/Strategy/StyledColumnModule.js +12 -29
- package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.d.ts +1 -0
- package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.js +1 -0
- package/src/Strategy/Utilities/Export/getExportColumnsViewItems.d.ts +2 -0
- package/src/Strategy/Utilities/Export/getExportColumnsViewItems.js +14 -0
- package/src/Strategy/Utilities/Export/getExportRowsViewItems.d.ts +1 -0
- package/src/Strategy/Utilities/Export/getExportRowsViewItems.js +3 -0
- package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.d.ts +11 -0
- package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.js +105 -0
- package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.d.ts +48 -0
- package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.js +166 -0
- package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.d.ts +1 -0
- package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.js +1 -0
- package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.d.ts +26 -0
- package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.js +85 -0
- package/src/Utilities/Defaults/DefaultSettingsPanel.d.ts +3 -5
- package/src/Utilities/Defaults/DefaultSettingsPanel.js +46 -41
- package/src/Utilities/Helpers/FormatHelper.js +3 -0
- package/src/Utilities/Helpers/ScheduleHelper.js +2 -0
- package/src/Utilities/Helpers/StyleHelper.d.ts +18 -0
- package/src/Utilities/Helpers/StyleHelper.js +27 -0
- package/src/Utilities/Helpers/StyledColumnGradientHelper.js +7 -5
- package/src/Utilities/Helpers/resolveSettingsPanelNavigation.d.ts +3 -0
- package/src/Utilities/Helpers/resolveSettingsPanelNavigation.js +15 -0
- package/src/Utilities/getScopeViewItems.js +2 -0
- package/src/Utilities/wizardSelection.d.ts +10 -0
- package/src/Utilities/wizardSelection.js +15 -0
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +2 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +2 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +3 -3
- package/src/View/Alert/AlertViewPanel.js +2 -2
- package/src/View/Alert/Utilities/getAlertButtonStyle.js +7 -4
- package/src/View/Alert/Wizard/AlertBehaviourWizardSection.d.ts +0 -1
- package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +0 -4
- package/src/View/Alert/Wizard/AlertButtonsEditor.js +2 -1
- package/src/View/Alert/Wizard/AlertMessageWizardSection.d.ts +1 -1
- package/src/View/Alert/Wizard/AlertMessageWizardSection.js +1 -2
- package/src/View/Alert/Wizard/AlertNotificationWizardSection.d.ts +1 -1
- package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +3 -4
- package/src/View/Alert/Wizard/AlertScheduledWizardSection.d.ts +1 -1
- package/src/View/Alert/Wizard/AlertScheduledWizardSection.js +1 -2
- package/src/View/Alert/Wizard/AlertTypeWizardSection.d.ts +1 -1
- package/src/View/Alert/Wizard/AlertTypeWizardSection.js +31 -7
- package/src/View/Alert/Wizard/AlertWizard.js +4 -4
- package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.d.ts +2 -1
- package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +4 -14
- package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
- package/src/View/BulkUpdate/BulkUpdateViewPanel.js +4 -6
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +1 -2
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.js +30 -4
- package/src/View/CellSummary/CellSummaryViewPanel.js +4 -4
- package/src/View/Charting/ShowChartButton.js +8 -8
- package/src/View/ColumnInfo/ColumnInfo.js +21 -1
- package/src/View/Components/AdaptableObjectCollection/index.js +2 -2
- package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +1 -1
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +4 -4
- package/src/View/Components/AdaptableObjectRow/index.js +2 -2
- package/src/View/Components/Buttons/ButtonBase/index.js +2 -3
- package/src/View/Components/Buttons/ButtonNew.d.ts +2 -0
- package/src/View/Components/Buttons/ButtonNew.js +1 -1
- package/src/View/Components/Buttons/EntityListActionButtons.js +3 -3
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +2 -2
- package/src/View/Components/ColumnFilter/ColumnFilter.js +2 -3
- package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +0 -1
- package/src/View/Components/ColumnFilter/components/ColumnFilterInputList.js +3 -1
- package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +2 -2
- package/src/View/Components/ColumnSelector/index.d.ts +12 -0
- package/src/View/Components/ColumnSelector/index.js +30 -6
- package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +2 -2
- package/src/View/Components/ModuleValueSelector/index.js +2 -1
- package/src/View/Components/NewScopeComponent.js +4 -9
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +5 -4
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +4 -4
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +1 -1
- package/src/View/Components/Popups/AdaptablePopup/Navigation.d.ts +3 -2
- package/src/View/Components/Popups/AdaptablePopup/Navigation.js +38 -28
- package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +3 -3
- package/src/View/Components/Popups/AdaptablePopup/TopBar.js +2 -2
- package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.d.ts +11 -0
- package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.js +1 -0
- package/src/View/Components/Popups/AdaptablePopup/useMenuItems.d.ts +3 -1
- package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +25 -27
- package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -1
- package/src/View/Components/RangesComponent.d.ts +2 -4
- package/src/View/Components/RangesComponent.js +95 -66
- package/src/View/Components/ReorderDraggable/index.js +2 -2
- package/src/View/Components/Selectors/BulkUpdateValueSelector.d.ts +0 -2
- package/src/View/Components/Selectors/BulkUpdateValueSelector.js +3 -3
- package/src/View/Components/StyleComponent.js +32 -65
- package/src/View/Components/ToolPanel/AdaptableToolPanel.js +10 -7
- package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +3 -13
- package/src/View/Components/ToolPanel/ToolPanelPopup.js +5 -81
- package/src/View/Components/ToolPanel/ToolPanelPopupSections.d.ts +17 -0
- package/src/View/Components/ToolPanel/ToolPanelPopupSections.js +76 -0
- package/src/View/Components/ValueSelector/index.d.ts +29 -0
- package/src/View/Components/ValueSelector/index.js +113 -30
- package/src/View/Components/wizardColumnListStyles.d.ts +10 -0
- package/src/View/Components/wizardColumnListStyles.js +10 -0
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.d.ts +2 -1
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +5 -7
- package/src/View/CustomSort/Wizard/CustomSortWizard.js +2 -2
- package/src/View/Dashboard/DashboardPopup.d.ts +1 -11
- package/src/View/Dashboard/DashboardPopup.js +3 -67
- package/src/View/Dashboard/DashboardPopupSections.d.ts +20 -0
- package/src/View/Dashboard/DashboardPopupSections.js +68 -0
- package/src/View/Dashboard/PinnedToolbarsSelector.js +2 -2
- package/src/View/DataChangeHistory/DataChangeHistoryPopup.d.ts +1 -6
- package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +8 -20
- package/src/View/DataChangeHistory/DataChangeHistoryTable.d.ts +8 -0
- package/src/View/DataChangeHistory/DataChangeHistoryTable.js +94 -0
- package/src/View/DataChangeHistory/buildActionColumnButton.d.ts +5 -3
- package/src/View/DataChangeHistory/buildActionColumnButton.js +30 -39
- package/src/View/DataChangeHistory/dataChangeHistoryHelpers.d.ts +15 -0
- package/src/View/DataChangeHistory/dataChangeHistoryHelpers.js +37 -0
- package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -1
- package/src/View/DataImport/DataImportWizard/sections/ColumnsSection.js +32 -19
- package/src/View/DataImport/DataImportWizard/sections/DataPreview.js +1 -1
- package/src/View/DataSet/DataSetViewPanel.d.ts +2 -2
- package/src/View/Export/ExportDestinationPicker.js +3 -3
- package/src/View/Export/ExportViewPanel.js +2 -2
- package/src/View/Export/Wizard/ReportColumnsWizardSection.d.ts +2 -1
- package/src/View/Export/Wizard/ReportColumnsWizardSection.js +4 -9
- package/src/View/Export/Wizard/ReportRowsWizardSection.d.ts +2 -1
- package/src/View/Export/Wizard/ReportRowsWizardSection.js +3 -6
- package/src/View/FlashingCell/FlashingCellStyle.d.ts +4 -2
- package/src/View/FlashingCell/FlashingCellStyle.js +4 -2
- package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.d.ts +2 -1
- package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +7 -11
- package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.d.ts +9 -0
- package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.js +5 -0
- package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.d.ts +1 -1
- package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +1 -0
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.d.ts +0 -5
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +1 -5
- package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +2 -3
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +99 -42
- package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.d.ts +0 -1
- package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +0 -4
- package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +56 -15
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.d.ts +2 -3
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +5 -8
- package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +8 -13
- package/src/View/FreeTextColumn/Utilities/getFreeTextColumnSettingsTags.js +3 -2
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +1 -2
- package/src/View/GridFilter/GridFilterPopupUI/index.js +3 -2
- package/src/View/GridFilter/GridFilterViewPanel.js +5 -5
- package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +2 -2
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -2
- package/src/View/Layout/LayoutViewPanel.js +1 -1
- package/src/View/Layout/Wizard/LayoutWizard.js +24 -28
- package/src/View/Layout/Wizard/sections/AggregationsSection.d.ts +13 -1
- package/src/View/Layout/Wizard/sections/AggregationsSection.js +73 -33
- package/src/View/Layout/Wizard/sections/ColumnsSection.d.ts +4 -1
- package/src/View/Layout/Wizard/sections/ColumnsSection.js +155 -276
- package/src/View/Layout/Wizard/sections/PivotAggregationsSection.d.ts +4 -1
- package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +148 -145
- package/src/View/Layout/Wizard/sections/PivotColumnsSection.d.ts +5 -2
- package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +24 -12
- package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.d.ts +4 -1
- package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +23 -12
- package/src/View/Layout/Wizard/sections/RowGroupingSection.d.ts +5 -2
- package/src/View/Layout/Wizard/sections/RowGroupingSection.js +19 -12
- package/src/View/Layout/Wizard/sections/RowSelectionSection.js +8 -4
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +11 -11
- package/src/View/Layout/Wizard/sections/SortSection.d.ts +12 -2
- package/src/View/Layout/Wizard/sections/SortSection.js +41 -17
- package/src/View/Layout/Wizard/sections/columnLayoutCards.d.ts +20 -0
- package/src/View/Layout/Wizard/sections/columnLayoutCards.js +159 -0
- package/src/View/Layout/Wizard/sections/columnLayoutHelpers.d.ts +30 -0
- package/src/View/Layout/Wizard/sections/columnLayoutHelpers.js +201 -0
- package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.d.ts +8 -0
- package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.js +63 -0
- package/src/View/Layout/Wizard/sections/layoutWizardColumns.d.ts +11 -0
- package/src/View/Layout/Wizard/sections/layoutWizardColumns.js +52 -0
- package/src/View/License/LicenseWatermark.js +1 -1
- package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.d.ts +1 -1
- package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +1 -2
- package/src/View/Note/NoteEditor.js +2 -2
- package/src/View/QuickSearch/QuickSearchPopup.js +2 -3
- package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +1 -1
- package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +1 -1
- package/src/View/SmartEdit/SmartEditPopup.js +2 -2
- package/src/View/SmartEdit/SmartEditViewPanel.js +2 -2
- package/src/View/StateManagement/StateManagementPopup.js +1 -1
- package/src/View/StateManagement/components/ExportDropdown.d.ts +2 -2
- package/src/View/StateManagement/components/ExportDropdown.js +12 -12
- package/src/View/StatusBar/StatusBarPanel.js +2 -2
- package/src/View/StatusBar/StatusBarPopup.js +33 -5
- package/src/View/StatusBar/statusBarPanelHelpers.d.ts +2 -0
- package/src/View/StatusBar/statusBarPanelHelpers.js +7 -0
- package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.d.ts +2 -0
- package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.js +14 -11
- package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.d.ts +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +137 -119
- package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.js +8 -14
- package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.d.ts +5 -0
- package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.js +50 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.d.ts +2 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +26 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +8 -17
- package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.js +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +46 -28
- package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +98 -43
- package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.js +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.d.ts +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.js +32 -46
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +11 -6
- package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +94 -7
- package/src/View/UIHelper.d.ts +0 -2
- package/src/View/UIHelper.js +8 -23
- package/src/View/Wizard/CollapsibleWizardCard.d.ts +68 -0
- package/src/View/Wizard/CollapsibleWizardCard.js +81 -0
- package/src/View/Wizard/OnePageWizards.js +6 -6
- package/src/View/Wizard/SummaryColorTag.d.ts +24 -0
- package/src/View/Wizard/SummaryColorTag.js +67 -0
- package/src/View/Wizard/WizardTypeSelection.d.ts +34 -0
- package/src/View/Wizard/WizardTypeSelection.js +31 -0
- package/src/View/Wizard/rowGroupSummaryTags.d.ts +18 -0
- package/src/View/Wizard/rowGroupSummaryTags.js +14 -0
- package/src/View/Wizard/scopeSummaryTags.d.ts +6 -0
- package/src/View/Wizard/scopeSummaryTags.js +33 -0
- package/src/agGrid/AdaptableAgGrid.js +1 -1
- package/src/agGrid/AgGridAdapter.js +0 -5
- package/src/agGrid/AgGridColumnAdapter.js +2 -2
- package/src/agGrid/cellRenderers/ActionColumnRenderer.js +4 -7
- package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +1 -1
- package/src/components/Card/index.js +5 -6
- package/src/components/CheckBox/index.js +2 -3
- package/src/components/CodeBlock/index.js +2 -2
- package/src/components/ColorPicker/ColorPicker.d.ts +1 -0
- package/src/components/ColorPicker/ColorPicker.js +8 -6
- package/src/components/ColorPicker/OptionalColorPicker.d.ts +12 -0
- package/src/components/ColorPicker/OptionalColorPicker.js +26 -0
- package/src/components/ColorPicker/index.d.ts +1 -0
- package/src/components/ColorPicker/index.js +1 -0
- package/src/components/Combobox/comboboxUtils.d.ts +1 -0
- package/src/components/Combobox/index.js +19 -18
- package/src/components/Dashboard/DashboardManager.js +2 -4
- package/src/components/Dialog/index.js +4 -4
- package/src/components/DragAndDropContext/DragAndDropContext.d.ts +5 -0
- package/src/components/DragAndDropContext/DragAndDropContext.js +3 -0
- package/src/components/DragAndDropContext/ModuleManager.d.ts +15 -3
- package/src/components/DragAndDropContext/ModuleManager.js +47 -8
- package/src/components/DragAndDropContext/TabList.d.ts +11 -4
- package/src/components/DragAndDropContext/TabList.js +52 -38
- package/src/components/DragAndDropContext/UnusedPanel.d.ts +4 -3
- package/src/components/DragAndDropContext/UnusedPanel.js +15 -11
- package/src/components/DragAndDropContext/dragScope.d.ts +6 -0
- package/src/components/DragAndDropContext/dragScope.js +26 -0
- package/src/components/DragAndDropContext/types.d.ts +7 -0
- package/src/components/DropdownButton/index.d.ts +33 -25
- package/src/components/DropdownButton/index.js +24 -158
- package/src/components/EmptyContent/index.js +2 -2
- package/src/components/ErrorBox/index.js +2 -2
- package/src/components/ExpressionEditor/BaseEditorInput.js +3 -3
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +3 -3
- package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +6 -6
- package/src/components/FieldWrap/index.js +2 -2
- package/src/components/Flex.js +2 -2
- package/src/components/FormLayout/index.d.ts +1 -1
- package/src/components/HelpBlock/index.js +3 -3
- package/src/components/IconSelector/IconSelector.d.ts +8 -0
- package/src/components/IconSelector/IconSelector.js +11 -7
- package/src/components/IconSelector/index.d.ts +1 -0
- package/src/components/IconSelector/index.js +1 -0
- package/src/components/Modal/index.js +2 -2
- package/src/components/NewSelect/index.js +11 -1
- package/src/components/Panel/index.js +7 -7
- package/src/components/Radio/index.d.ts +1 -1
- package/src/components/Radio/index.js +8 -6
- package/src/components/SimpleButton/index.js +7 -7
- package/src/components/StylePreview.js +2 -2
- package/src/components/Tabs/index.js +4 -4
- package/src/components/Tag/Tag.d.ts +16 -0
- package/src/components/Tag/Tag.js +14 -4
- package/src/components/Tag/columnScopeTagHelpers.d.ts +8 -0
- package/src/components/Tag/columnScopeTagHelpers.js +6 -0
- package/src/components/Tag/index.d.ts +1 -1
- package/src/components/Tag/index.js +1 -1
- package/src/components/Textarea/index.js +2 -3
- package/src/components/Toggle/Toggle.d.ts +2 -0
- package/src/components/Toggle/Toggle.js +14 -7
- package/src/components/Toggle/ToggleGroup.js +2 -2
- package/src/components/ToggleButton/index.js +4 -4
- package/src/components/Tree/TreeDropdown/index.js +3 -4
- package/src/components/WarningBox/index.js +2 -2
- package/src/components/icons/sort-asc.js +1 -1
- package/src/components/ui/button.d.ts +2 -2
- package/src/components/ui/combobox.d.ts +3 -1
- package/src/components/ui/combobox.js +2 -2
- package/src/components/ui/input-group.d.ts +1 -1
- package/src/components/ui/select.js +3 -2
- package/src/components/ui/textarea.js +1 -1
- package/src/env.js +2 -2
- package/src/layout-manager/src/index.js +7 -3
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/types.d.ts +1 -1
- package/tsconfig.esm.tsbuildinfo +1 -1
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.d.ts +0 -17
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +0 -290
- package/src/components/DropdownButton/DropdownButtonItem.d.ts +0 -12
- package/src/components/DropdownButton/DropdownButtonItem.js +0 -1
- package/src/components/DropdownButton/renderItem.d.ts +0 -14
- package/src/components/DropdownButton/renderItem.js +0 -11
- package/src/components/DropdownButton/useExpanded.d.ts +0 -24
- package/src/components/DropdownButton/useExpanded.js +0 -56
- package/src/components/NewDropdownButton/index.d.ts +0 -27
- package/src/components/NewDropdownButton/index.js +0 -24
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { AdaptableModuleBase } from './AdaptableModuleBase';
|
|
2
2
|
import * as ModuleConstants from '../Utilities/Constants/ModuleConstants';
|
|
3
3
|
import * as StyledColumnRedux from '../Redux/ActionsReducers/StyledColumnRedux';
|
|
4
|
-
import { StyledColumnWizard } from '../View/StyledColumn/Wizard/StyledColumnWizard';
|
|
4
|
+
import { StyledColumnWizard, getStyledColumnEditDefaultSectionName } from '../View/StyledColumn/Wizard/StyledColumnWizard';
|
|
5
|
+
import { summaryStringsToTagContents } from '../View/Wizard/SummaryColorTag';
|
|
5
6
|
import { renderStyledColumnRangesSummary, getStyledColumnPercentBarStyleViewValues, } from '../View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection';
|
|
6
7
|
import { getStyledColumnGradientStyleViewValues } from '../View/StyledColumn/Wizard/StyledColumnWizardGradientSection';
|
|
7
8
|
import { getStyledColumnBulletStyleViewValues, StyledColumnBulletRangesView, } from '../View/StyledColumn/Wizard/StyledColumnWizardBulletSection';
|
|
@@ -80,26 +81,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
80
81
|
// Edit is common
|
|
81
82
|
if (styledColumn) {
|
|
82
83
|
if (!styledColumn.IsReadOnly) {
|
|
83
|
-
|
|
84
|
-
if (styledColumn.BadgeStyle) {
|
|
85
|
-
defaultCurrentSectionName = 'Badges';
|
|
86
|
-
}
|
|
87
|
-
else if (styledColumn.GradientStyle || styledColumn.PercentBarStyle) {
|
|
88
|
-
// Gradient + Percent Bar wizards now lead with the Ranges step.
|
|
89
|
-
defaultCurrentSectionName = 'Ranges';
|
|
90
|
-
}
|
|
91
|
-
else if (styledColumn.BulletChartStyle) {
|
|
92
|
-
defaultCurrentSectionName = 'Ranges';
|
|
93
|
-
}
|
|
94
|
-
else if (styledColumn.RangeBarStyle) {
|
|
95
|
-
defaultCurrentSectionName = 'Style';
|
|
96
|
-
}
|
|
97
|
-
else if (styledColumn.IconStyle) {
|
|
98
|
-
defaultCurrentSectionName = 'Mappings';
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
defaultCurrentSectionName = 'Style';
|
|
102
|
-
}
|
|
84
|
+
const defaultCurrentSectionName = getStyledColumnEditDefaultSectionName(styledColumn);
|
|
103
85
|
const popupParam = {
|
|
104
86
|
action: 'Edit',
|
|
105
87
|
source: 'ColumnMenu',
|
|
@@ -291,7 +273,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
291
273
|
if (styledColumn.PercentBarStyle) {
|
|
292
274
|
specificTypeItems.push({
|
|
293
275
|
name: 'Style',
|
|
294
|
-
values: getStyledColumnPercentBarStyleViewValues(styledColumn),
|
|
276
|
+
values: summaryStringsToTagContents(getStyledColumnPercentBarStyleViewValues(styledColumn)),
|
|
295
277
|
});
|
|
296
278
|
specificTypeItems.push({
|
|
297
279
|
name: 'Preview',
|
|
@@ -301,7 +283,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
301
283
|
if (styledColumn.GradientStyle) {
|
|
302
284
|
specificTypeItems.push({
|
|
303
285
|
name: 'Style',
|
|
304
|
-
values: getStyledColumnGradientStyleViewValues(styledColumn),
|
|
286
|
+
values: summaryStringsToTagContents(getStyledColumnGradientStyleViewValues(styledColumn)),
|
|
305
287
|
});
|
|
306
288
|
specificTypeItems.push({
|
|
307
289
|
name: 'Preview',
|
|
@@ -316,7 +298,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
316
298
|
});
|
|
317
299
|
specificTypeItems.push({
|
|
318
300
|
name: 'Style',
|
|
319
|
-
values: getStyledColumnBulletStyleViewValues(styledColumn),
|
|
301
|
+
values: summaryStringsToTagContents(getStyledColumnBulletStyleViewValues(styledColumn)),
|
|
320
302
|
});
|
|
321
303
|
specificTypeItems.push({
|
|
322
304
|
name: 'Preview',
|
|
@@ -326,7 +308,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
326
308
|
if (styledColumn.RatingStyle) {
|
|
327
309
|
specificTypeItems.push({
|
|
328
310
|
name: 'Style',
|
|
329
|
-
values: getStyledColumnRatingStyleViewValues(styledColumn),
|
|
311
|
+
values: summaryStringsToTagContents(getStyledColumnRatingStyleViewValues(styledColumn)),
|
|
330
312
|
});
|
|
331
313
|
specificTypeItems.push({
|
|
332
314
|
name: 'Preview',
|
|
@@ -340,7 +322,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
340
322
|
});
|
|
341
323
|
specificTypeItems.push({
|
|
342
324
|
name: 'Display',
|
|
343
|
-
values: getStyledColumnRangeBarDisplayViewValues(styledColumn),
|
|
325
|
+
values: summaryStringsToTagContents(getStyledColumnRangeBarDisplayViewValues(styledColumn)),
|
|
344
326
|
});
|
|
345
327
|
specificTypeItems.push({
|
|
346
328
|
name: 'Preview',
|
|
@@ -354,7 +336,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
354
336
|
});
|
|
355
337
|
specificTypeItems.push({
|
|
356
338
|
name: 'Style',
|
|
357
|
-
values: getStyledColumnIconStyleViewValues(styledColumn),
|
|
339
|
+
values: summaryStringsToTagContents(getStyledColumnIconStyleViewValues(styledColumn)),
|
|
358
340
|
});
|
|
359
341
|
specificTypeItems.push({
|
|
360
342
|
name: 'Preview',
|
|
@@ -368,7 +350,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
368
350
|
});
|
|
369
351
|
specificTypeItems.push({
|
|
370
352
|
name: 'Style',
|
|
371
|
-
values: getStyledColumnBadgeStyleViewValues(styledColumn, this.api),
|
|
353
|
+
values: summaryStringsToTagContents(getStyledColumnBadgeStyleViewValues(styledColumn, this.api)),
|
|
372
354
|
});
|
|
373
355
|
specificTypeItems.push({
|
|
374
356
|
name: 'Preview',
|
|
@@ -378,7 +360,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
378
360
|
if (styledColumn.SparklineStyle) {
|
|
379
361
|
specificTypeItems.push({
|
|
380
362
|
name: 'Style',
|
|
381
|
-
values: getStyledColumnSparklineStyleViewValues(styledColumn),
|
|
363
|
+
values: summaryStringsToTagContents(getStyledColumnSparklineStyleViewValues(styledColumn)),
|
|
382
364
|
});
|
|
383
365
|
specificTypeItems.push({
|
|
384
366
|
name: 'Preview',
|
|
@@ -400,6 +382,7 @@ export class StyledColumnModule extends AdaptableModuleBase {
|
|
|
400
382
|
{
|
|
401
383
|
name: 'Column',
|
|
402
384
|
values: [this.api.columnApi.getFriendlyNameForColumnId(styledColumn.ColumnId)],
|
|
385
|
+
tagVariant: 'column',
|
|
403
386
|
},
|
|
404
387
|
{
|
|
405
388
|
name: 'Rows',
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
1
2
|
import { AdaptableObjectItemView } from '../../Interface/IModule';
|
|
2
3
|
import { AdaptableApi, Report } from '../../../../types';
|
|
3
4
|
export declare const getExportColumnsViewItems: (report: Report, api: AdaptableApi) => AdaptableObjectItemView;
|
|
5
|
+
export declare const renderExportColumnsView: (report: Report, api: AdaptableApi) => React.ReactNode;
|
|
@@ -1,6 +1,20 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { TagList } from '../../../components/Tag/Tag';
|
|
3
|
+
import { reportColumnTagsUseColumnVariant } from '../../../components/Tag/columnScopeTagHelpers';
|
|
1
4
|
export const getExportColumnsViewItems = (report, api) => {
|
|
2
5
|
return {
|
|
3
6
|
name: 'Columns',
|
|
4
7
|
values: [...api.exportApi.internalApi.getReportColumnScopeShortDescription(report)],
|
|
8
|
+
tagVariant: reportColumnTagsUseColumnVariant(report) ? 'column' : undefined,
|
|
5
9
|
};
|
|
6
10
|
};
|
|
11
|
+
export const renderExportColumnsView = (report, api) => {
|
|
12
|
+
const { values } = getExportColumnsViewItems(report, api);
|
|
13
|
+
if (!values?.length) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
return React.createElement(TagList, {
|
|
17
|
+
tags: values,
|
|
18
|
+
variant: reportColumnTagsUseColumnVariant(report) ? 'column' : undefined,
|
|
19
|
+
});
|
|
20
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AdaptableApi, PivotLayout, TableLayout } from '../../../types';
|
|
2
|
+
export declare function getTableAggregationSummaryValues(layout: TableLayout, api: AdaptableApi): string[];
|
|
3
|
+
export declare function getPivotAggregationSummaryValues(layout: PivotLayout, api: AdaptableApi): string[];
|
|
4
|
+
export declare function getLayoutTableAggregationViewItems(layout: TableLayout, api: AdaptableApi): {
|
|
5
|
+
name: string;
|
|
6
|
+
values: string[];
|
|
7
|
+
}[];
|
|
8
|
+
export declare function getLayoutPivotAggregationViewItems(layout: PivotLayout, api: AdaptableApi): {
|
|
9
|
+
name: string;
|
|
10
|
+
values: string[];
|
|
11
|
+
}[];
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { WEIGHTED_AVERAGE_AGG_FN_NAME } from '../../../AdaptableState/Common/AggregationColumns';
|
|
2
|
+
const IGNORED_AGG_COLUMN_IDS = new Set(['Source', 'Uuid', 'AdaptableVersion']);
|
|
3
|
+
const GRAND_TOTAL_ROW_LABELS = {
|
|
4
|
+
off: 'None',
|
|
5
|
+
top: 'Top',
|
|
6
|
+
bottom: 'Bottom',
|
|
7
|
+
pinnedTop: 'Pinned Top',
|
|
8
|
+
pinnedBottom: 'Pinned Bottom',
|
|
9
|
+
};
|
|
10
|
+
const PIVOT_LAYOUT_TOTAL_LABELS = {
|
|
11
|
+
off: 'None',
|
|
12
|
+
before: 'Before',
|
|
13
|
+
after: 'After',
|
|
14
|
+
};
|
|
15
|
+
function getGrandTotalRowKey(layout) {
|
|
16
|
+
const value = layout.GrandTotalRow;
|
|
17
|
+
if (value == null || value === false) {
|
|
18
|
+
return 'off';
|
|
19
|
+
}
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
function getGrandTotalRowLabel(layout) {
|
|
23
|
+
return GRAND_TOTAL_ROW_LABELS[getGrandTotalRowKey(layout)];
|
|
24
|
+
}
|
|
25
|
+
function getPivotLayoutTotalKey(value) {
|
|
26
|
+
if (value == null || value === false) {
|
|
27
|
+
return 'off';
|
|
28
|
+
}
|
|
29
|
+
if (value === 'before') {
|
|
30
|
+
return 'before';
|
|
31
|
+
}
|
|
32
|
+
if (value === 'after') {
|
|
33
|
+
return 'after';
|
|
34
|
+
}
|
|
35
|
+
return 'off';
|
|
36
|
+
}
|
|
37
|
+
function getPivotLayoutTotalLabel(value) {
|
|
38
|
+
return PIVOT_LAYOUT_TOTAL_LABELS[getPivotLayoutTotalKey(value)];
|
|
39
|
+
}
|
|
40
|
+
function formatAggregationTag(columnId, aggFn, columnIdToFriendlyName) {
|
|
41
|
+
if (IGNORED_AGG_COLUMN_IDS.has(columnId)) {
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
let aggFnName = '';
|
|
45
|
+
if (typeof aggFn === 'string') {
|
|
46
|
+
aggFnName = aggFn;
|
|
47
|
+
}
|
|
48
|
+
else if (typeof aggFn === 'object' && aggFn?.type === 'weightedAverage') {
|
|
49
|
+
aggFnName = WEIGHTED_AVERAGE_AGG_FN_NAME;
|
|
50
|
+
}
|
|
51
|
+
if (!aggFnName) {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
return `${aggFnName}(${columnIdToFriendlyName(columnId)})`;
|
|
55
|
+
}
|
|
56
|
+
export function getTableAggregationSummaryValues(layout, api) {
|
|
57
|
+
const columnIdToFriendlyName = (columnId) => api.columnApi.getFriendlyNameForColumnId(columnId);
|
|
58
|
+
const values = (layout.TableAggregationColumns || [])
|
|
59
|
+
.map(({ ColumnId, AggFunc }) => formatAggregationTag(ColumnId, AggFunc, columnIdToFriendlyName))
|
|
60
|
+
.filter((value) => Boolean(value));
|
|
61
|
+
if (getGrandTotalRowKey(layout) !== 'off') {
|
|
62
|
+
values.push(`Grand Total Row: ${getGrandTotalRowLabel(layout)}`);
|
|
63
|
+
}
|
|
64
|
+
return values;
|
|
65
|
+
}
|
|
66
|
+
export function getPivotAggregationSummaryValues(layout, api) {
|
|
67
|
+
const columnIdToFriendlyName = (columnId) => api.columnApi.getFriendlyNameForColumnId(columnId);
|
|
68
|
+
const values = (layout.PivotAggregationColumns || [])
|
|
69
|
+
.map(({ ColumnId, AggFunc }) => formatAggregationTag(ColumnId, AggFunc, columnIdToFriendlyName))
|
|
70
|
+
.filter((value) => Boolean(value));
|
|
71
|
+
if (getGrandTotalRowKey(layout) !== 'off') {
|
|
72
|
+
values.push(`Grand Total Row: ${getGrandTotalRowLabel(layout)}`);
|
|
73
|
+
}
|
|
74
|
+
if (getPivotLayoutTotalKey(layout.PivotGrandTotal) !== 'off') {
|
|
75
|
+
values.push(`Pivot Grand Total: ${getPivotLayoutTotalLabel(layout.PivotGrandTotal)}`);
|
|
76
|
+
}
|
|
77
|
+
if (getPivotLayoutTotalKey(layout.PivotColumnTotal) !== 'off') {
|
|
78
|
+
values.push(`Pivot Column Total: ${getPivotLayoutTotalLabel(layout.PivotColumnTotal)}`);
|
|
79
|
+
}
|
|
80
|
+
return values;
|
|
81
|
+
}
|
|
82
|
+
export function getLayoutTableAggregationViewItems(layout, api) {
|
|
83
|
+
const values = getTableAggregationSummaryValues(layout, api);
|
|
84
|
+
if (!values.length) {
|
|
85
|
+
return [];
|
|
86
|
+
}
|
|
87
|
+
return [
|
|
88
|
+
{
|
|
89
|
+
name: 'Aggregations',
|
|
90
|
+
values,
|
|
91
|
+
},
|
|
92
|
+
];
|
|
93
|
+
}
|
|
94
|
+
export function getLayoutPivotAggregationViewItems(layout, api) {
|
|
95
|
+
const values = getPivotAggregationSummaryValues(layout, api);
|
|
96
|
+
if (!values.length) {
|
|
97
|
+
return [];
|
|
98
|
+
}
|
|
99
|
+
return [
|
|
100
|
+
{
|
|
101
|
+
name: 'Aggregations',
|
|
102
|
+
values,
|
|
103
|
+
},
|
|
104
|
+
];
|
|
105
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { AdaptableApi, Layout, TableLayout } from '../../../types';
|
|
2
|
+
export declare const TABLE_COLUMNS_SETTINGS_PANEL_LABELS: {
|
|
3
|
+
visibility: string;
|
|
4
|
+
pinning: string;
|
|
5
|
+
sizing: string;
|
|
6
|
+
sorting: string;
|
|
7
|
+
};
|
|
8
|
+
export declare const TABLE_COLUMNS_WIZARD_SUBSECTION_LABELS: {
|
|
9
|
+
visibility: string;
|
|
10
|
+
pinning: string;
|
|
11
|
+
sizing: string;
|
|
12
|
+
sorting: string;
|
|
13
|
+
};
|
|
14
|
+
export type TableColumnsSummaryLabels = {
|
|
15
|
+
readonly visibility: string;
|
|
16
|
+
readonly pinning: string;
|
|
17
|
+
readonly sizing: string;
|
|
18
|
+
readonly sorting: string;
|
|
19
|
+
};
|
|
20
|
+
export type TableColumnsSummaryGroup = {
|
|
21
|
+
label: string;
|
|
22
|
+
values: string[];
|
|
23
|
+
emptyLabel: string;
|
|
24
|
+
};
|
|
25
|
+
export declare function getTableColumnsVisibilitySummaryValues(layout: TableLayout, api: AdaptableApi): string[];
|
|
26
|
+
export declare function getTableColumnsPinningSummaryValues(layout: Layout, api: AdaptableApi): string[];
|
|
27
|
+
export declare function getTableColumnsSizingSummaryValues(layout: Layout, api: AdaptableApi): string[];
|
|
28
|
+
export declare function getTableColumnsSortingSummaryValues(layout: Layout, api: AdaptableApi): string[];
|
|
29
|
+
/** Matches legacy Layout settings panel behaviour (`layoutViewOptions.maxColumnsToDisplay`). */
|
|
30
|
+
export declare const DEFAULT_LAYOUT_VIEW_MAX_COLUMNS = 10;
|
|
31
|
+
/**
|
|
32
|
+
* Collapse a long column list for compact views (e.g. Layout settings panel).
|
|
33
|
+
* Keeps all items when the overflow is only 1 column; otherwise shows `+N more`.
|
|
34
|
+
*/
|
|
35
|
+
export declare function truncateColumnSummaryValues(values: string[], maxToDisplay?: number): string[];
|
|
36
|
+
export declare function getTableColumnsSummaryGroups(layout: TableLayout, api: AdaptableApi, labels?: TableColumnsSummaryLabels): TableColumnsSummaryGroup[];
|
|
37
|
+
export declare function getLayoutTableColumnsViewItems(layout: Layout, api: AdaptableApi, options?: {
|
|
38
|
+
maxColumnsToDisplay?: number;
|
|
39
|
+
}): {
|
|
40
|
+
name: string;
|
|
41
|
+
values: string[];
|
|
42
|
+
tagVariant: "column";
|
|
43
|
+
}[];
|
|
44
|
+
export declare function getLayoutPivotSortingViewItem(layout: Layout, api: AdaptableApi): {
|
|
45
|
+
name: string;
|
|
46
|
+
values: string[];
|
|
47
|
+
tagVariant: "column";
|
|
48
|
+
};
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
export const TABLE_COLUMNS_SETTINGS_PANEL_LABELS = {
|
|
2
|
+
visibility: 'Columns',
|
|
3
|
+
pinning: 'Pinning',
|
|
4
|
+
sizing: 'Sizing',
|
|
5
|
+
sorting: 'Sorting',
|
|
6
|
+
};
|
|
7
|
+
export const TABLE_COLUMNS_WIZARD_SUBSECTION_LABELS = {
|
|
8
|
+
visibility: 'Visibility and Order',
|
|
9
|
+
pinning: 'Pinning',
|
|
10
|
+
sizing: 'Sizing',
|
|
11
|
+
sorting: 'Sorting',
|
|
12
|
+
};
|
|
13
|
+
function resolveDefaultColumnWidth(api) {
|
|
14
|
+
return (columnId) => api.internalApi.getAdaptableInstance().getDefaultColumnWidthForCol(columnId);
|
|
15
|
+
}
|
|
16
|
+
function hasExplicitLayoutSizing(columnId, sizing, resolveDefaultWidth) {
|
|
17
|
+
if (!sizing) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
if (sizing.Flex != null) {
|
|
21
|
+
return true;
|
|
22
|
+
}
|
|
23
|
+
if (sizing.MinWidth != null || sizing.MaxWidth != null) {
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
if (sizing.Width != null) {
|
|
27
|
+
return sizing.Width !== resolveDefaultWidth(columnId);
|
|
28
|
+
}
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
function getLayoutExplicitSizedColumnIds(layout, resolveDefaultWidth) {
|
|
32
|
+
const sizing = layout.ColumnSizing ?? {};
|
|
33
|
+
return Object.keys(sizing).filter((columnId) => hasExplicitLayoutSizing(columnId, sizing[columnId], resolveDefaultWidth));
|
|
34
|
+
}
|
|
35
|
+
function formatExplicitColumnSizingBrief(columnId, sizing, resolveDefaultWidth) {
|
|
36
|
+
if (!hasExplicitLayoutSizing(columnId, sizing, resolveDefaultWidth)) {
|
|
37
|
+
return '';
|
|
38
|
+
}
|
|
39
|
+
const parts = [];
|
|
40
|
+
if (sizing?.Flex != null) {
|
|
41
|
+
parts.push(`flex ${sizing.Flex}`);
|
|
42
|
+
}
|
|
43
|
+
else if (sizing?.Width != null && sizing.Width !== resolveDefaultWidth(columnId)) {
|
|
44
|
+
parts.push(String(sizing.Width));
|
|
45
|
+
}
|
|
46
|
+
if (sizing?.MinWidth != null) {
|
|
47
|
+
parts.push(`min ${sizing.MinWidth}`);
|
|
48
|
+
}
|
|
49
|
+
if (sizing?.MaxWidth != null) {
|
|
50
|
+
parts.push(`max ${sizing.MaxWidth}`);
|
|
51
|
+
}
|
|
52
|
+
return parts.join(', ');
|
|
53
|
+
}
|
|
54
|
+
function getLayoutTableColumnIds(layout, api) {
|
|
55
|
+
return (layout.TableColumns ?? [])
|
|
56
|
+
.filter((columnId) => !api.columnApi.isAutoRowGroupColumn(columnId))
|
|
57
|
+
.filter((columnId) => !api.columnApi.isPivotResultColumn(columnId))
|
|
58
|
+
.filter((columnId) => !api.columnApi.isSelectionColumn(columnId));
|
|
59
|
+
}
|
|
60
|
+
function getLayoutPinnedColumnIds(layout, side) {
|
|
61
|
+
const pinning = layout.ColumnPinning ?? {};
|
|
62
|
+
return Object.entries(pinning)
|
|
63
|
+
.filter(([, pin]) => pin === side)
|
|
64
|
+
.map(([columnId]) => columnId);
|
|
65
|
+
}
|
|
66
|
+
export function getTableColumnsVisibilitySummaryValues(layout, api) {
|
|
67
|
+
return getLayoutTableColumnIds(layout, api).map((columnId) => {
|
|
68
|
+
const name = api.columnApi.getFriendlyNameForColumnId(columnId, layout);
|
|
69
|
+
const customHeader = layout.ColumnHeaders?.[columnId]?.trim();
|
|
70
|
+
if (customHeader) {
|
|
71
|
+
return `${name} (header: ${customHeader})`;
|
|
72
|
+
}
|
|
73
|
+
return name;
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
export function getTableColumnsPinningSummaryValues(layout, api) {
|
|
77
|
+
const leftPinned = getLayoutPinnedColumnIds(layout, 'left');
|
|
78
|
+
const rightPinned = getLayoutPinnedColumnIds(layout, 'right');
|
|
79
|
+
return [
|
|
80
|
+
...leftPinned.map((columnId) => `${api.columnApi.getFriendlyNameForColumnId(columnId, layout)} (left)`),
|
|
81
|
+
...rightPinned.map((columnId) => `${api.columnApi.getFriendlyNameForColumnId(columnId, layout)} (right)`),
|
|
82
|
+
];
|
|
83
|
+
}
|
|
84
|
+
export function getTableColumnsSizingSummaryValues(layout, api) {
|
|
85
|
+
const resolveDefaultWidth = resolveDefaultColumnWidth(api);
|
|
86
|
+
return getLayoutExplicitSizedColumnIds(layout, resolveDefaultWidth).map((columnId) => {
|
|
87
|
+
const name = api.columnApi.getFriendlyNameForColumnId(columnId, layout);
|
|
88
|
+
const sizingBrief = formatExplicitColumnSizingBrief(columnId, layout.ColumnSizing?.[columnId], resolveDefaultWidth);
|
|
89
|
+
return `${name} (${sizingBrief})`;
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
export function getTableColumnsSortingSummaryValues(layout, api) {
|
|
93
|
+
return (layout.ColumnSorts ?? []).map((sort) => `[${api.columnApi.getFriendlyNameForColumnId(sort.ColumnId, layout)}: ${sort.SortOrder}]`);
|
|
94
|
+
}
|
|
95
|
+
/** Matches legacy Layout settings panel behaviour (`layoutViewOptions.maxColumnsToDisplay`). */
|
|
96
|
+
export const DEFAULT_LAYOUT_VIEW_MAX_COLUMNS = 10;
|
|
97
|
+
/**
|
|
98
|
+
* Collapse a long column list for compact views (e.g. Layout settings panel).
|
|
99
|
+
* Keeps all items when the overflow is only 1 column; otherwise shows `+N more`.
|
|
100
|
+
*/
|
|
101
|
+
export function truncateColumnSummaryValues(values, maxToDisplay = DEFAULT_LAYOUT_VIEW_MAX_COLUMNS) {
|
|
102
|
+
if (maxToDisplay <= 0 || values.length <= maxToDisplay + 1) {
|
|
103
|
+
return values;
|
|
104
|
+
}
|
|
105
|
+
const extra = values.length - maxToDisplay;
|
|
106
|
+
return [...values.slice(0, maxToDisplay), `+${extra} more`];
|
|
107
|
+
}
|
|
108
|
+
export function getTableColumnsSummaryGroups(layout, api, labels = TABLE_COLUMNS_SETTINGS_PANEL_LABELS) {
|
|
109
|
+
return [
|
|
110
|
+
{
|
|
111
|
+
label: labels.visibility,
|
|
112
|
+
values: getTableColumnsVisibilitySummaryValues(layout, api),
|
|
113
|
+
emptyLabel: 'No columns in this Layout',
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
label: labels.pinning,
|
|
117
|
+
values: getTableColumnsPinningSummaryValues(layout, api),
|
|
118
|
+
emptyLabel: 'No columns pinned in this Layout',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
label: labels.sizing,
|
|
122
|
+
values: getTableColumnsSizingSummaryValues(layout, api),
|
|
123
|
+
emptyLabel: 'All columns use default sizing in this Layout',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
label: labels.sorting,
|
|
127
|
+
values: getTableColumnsSortingSummaryValues(layout, api),
|
|
128
|
+
emptyLabel: 'No column sorts in this Layout',
|
|
129
|
+
},
|
|
130
|
+
];
|
|
131
|
+
}
|
|
132
|
+
export function getLayoutTableColumnsViewItems(layout, api, options) {
|
|
133
|
+
const maxColumnsToDisplay = options?.maxColumnsToDisplay ?? DEFAULT_LAYOUT_VIEW_MAX_COLUMNS;
|
|
134
|
+
const optionalRowLabels = new Set([
|
|
135
|
+
TABLE_COLUMNS_SETTINGS_PANEL_LABELS.pinning,
|
|
136
|
+
TABLE_COLUMNS_SETTINGS_PANEL_LABELS.sizing,
|
|
137
|
+
TABLE_COLUMNS_SETTINGS_PANEL_LABELS.sorting,
|
|
138
|
+
]);
|
|
139
|
+
return getTableColumnsSummaryGroups(layout, api).flatMap(({ label, values, emptyLabel }) => {
|
|
140
|
+
if (optionalRowLabels.has(label) && !values.length) {
|
|
141
|
+
return [];
|
|
142
|
+
}
|
|
143
|
+
const resolvedValues = values.length ? values : [emptyLabel];
|
|
144
|
+
const displayValues = label === TABLE_COLUMNS_SETTINGS_PANEL_LABELS.visibility
|
|
145
|
+
? truncateColumnSummaryValues(resolvedValues, maxColumnsToDisplay)
|
|
146
|
+
: resolvedValues;
|
|
147
|
+
return [
|
|
148
|
+
{
|
|
149
|
+
name: label,
|
|
150
|
+
values: displayValues,
|
|
151
|
+
tagVariant: 'column',
|
|
152
|
+
},
|
|
153
|
+
];
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
export function getLayoutPivotSortingViewItem(layout, api) {
|
|
157
|
+
const values = getTableColumnsSortingSummaryValues(layout, api);
|
|
158
|
+
if (!values.length) {
|
|
159
|
+
return null;
|
|
160
|
+
}
|
|
161
|
+
return {
|
|
162
|
+
name: 'Sorting',
|
|
163
|
+
values,
|
|
164
|
+
tagVariant: 'column',
|
|
165
|
+
};
|
|
166
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { AdaptableApi, Layout, TableLayout } from '../../../types';
|
|
3
|
+
export declare const ROW_GROUP_DISPLAY_TYPE_LABELS: Record<NonNullable<TableLayout['RowGroupDisplayType']>, string>;
|
|
4
|
+
export declare const ROW_GROUP_DISPLAY_TYPE_DESCRIPTIONS: Record<NonNullable<TableLayout['RowGroupDisplayType']>, string>;
|
|
5
|
+
export declare const ROW_GROUP_BEHAVIOR_LABELS: Record<TableLayout['RowGroupValues']['RowGroupDefaultBehavior'], string>;
|
|
6
|
+
export declare const ROW_GROUP_BEHAVIOR_DESCRIPTIONS: Record<TableLayout['RowGroupValues']['RowGroupDefaultBehavior'], string>;
|
|
7
|
+
export declare function getRowGroupDisplayTypeLabel(layout: Layout): string;
|
|
8
|
+
export declare function getRowGroupDisplayTypeDescription(layout: Layout): string;
|
|
9
|
+
export declare function getRowGroupBehaviorLabel(layout: Layout): string;
|
|
10
|
+
export declare function getRowGroupBehaviorDescription(layout: Layout): string;
|
|
11
|
+
export declare function getTableRowGroupSummaryValues(layout: Layout, api: AdaptableApi): string[];
|
|
12
|
+
export declare function getLayoutTableRowGroupViewItems(layout: Layout, api: AdaptableApi): {
|
|
13
|
+
name: string;
|
|
14
|
+
view: () => React.FunctionComponentElement<{
|
|
15
|
+
layout: Layout;
|
|
16
|
+
api: AdaptableApi;
|
|
17
|
+
}>;
|
|
18
|
+
}[];
|
|
19
|
+
export declare function getPivotRowGroupSummaryValues(layout: Layout, api: AdaptableApi): string[];
|
|
20
|
+
export declare function getLayoutPivotRowGroupViewItems(layout: Layout, api: AdaptableApi): {
|
|
21
|
+
name: string;
|
|
22
|
+
view: () => React.FunctionComponentElement<{
|
|
23
|
+
layout: Layout;
|
|
24
|
+
api: AdaptableApi;
|
|
25
|
+
}>;
|
|
26
|
+
}[];
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { PivotRowGroupSummaryView, TableRowGroupSummaryView, } from '../../../View/Wizard/rowGroupSummaryTags';
|
|
3
|
+
export const ROW_GROUP_DISPLAY_TYPE_LABELS = {
|
|
4
|
+
single: 'Single Column',
|
|
5
|
+
multi: 'Multiple Columns',
|
|
6
|
+
groupRows: 'Full Width Group Rows',
|
|
7
|
+
};
|
|
8
|
+
export const ROW_GROUP_DISPLAY_TYPE_DESCRIPTIONS = {
|
|
9
|
+
single: 'All Row Grouped Columns display in one hierarchical Column',
|
|
10
|
+
multi: 'Each Row Grouped Column displays in its own, separate, Column',
|
|
11
|
+
groupRows: 'Row groups display as full-width rows (no group column and no aggregations)',
|
|
12
|
+
};
|
|
13
|
+
export const ROW_GROUP_BEHAVIOR_LABELS = {
|
|
14
|
+
'always-collapsed': 'All Collapsed',
|
|
15
|
+
'always-expanded': 'All Expanded',
|
|
16
|
+
expanded: 'Mostly Expanded',
|
|
17
|
+
collapsed: 'Mostly Collapsed',
|
|
18
|
+
};
|
|
19
|
+
export const ROW_GROUP_BEHAVIOR_DESCRIPTIONS = {
|
|
20
|
+
'always-collapsed': 'All Grouped Rows are always collapsed',
|
|
21
|
+
'always-expanded': 'All Grouped Rows are always expanded',
|
|
22
|
+
expanded: 'All Grouped Rows expanded, other than those collapsed when Layout last displayed',
|
|
23
|
+
collapsed: 'All Grouped Rows collapsed, other than those expanded when Layout last displayed',
|
|
24
|
+
};
|
|
25
|
+
export function getRowGroupDisplayTypeLabel(layout) {
|
|
26
|
+
const displayType = layout.RowGroupDisplayType ?? 'single';
|
|
27
|
+
return ROW_GROUP_DISPLAY_TYPE_LABELS[displayType];
|
|
28
|
+
}
|
|
29
|
+
export function getRowGroupDisplayTypeDescription(layout) {
|
|
30
|
+
const displayType = layout.RowGroupDisplayType ?? 'single';
|
|
31
|
+
return ROW_GROUP_DISPLAY_TYPE_DESCRIPTIONS[displayType];
|
|
32
|
+
}
|
|
33
|
+
export function getRowGroupBehaviorLabel(layout) {
|
|
34
|
+
const behavior = layout.RowGroupValues?.RowGroupDefaultBehavior ?? 'always-collapsed';
|
|
35
|
+
return ROW_GROUP_BEHAVIOR_LABELS[behavior];
|
|
36
|
+
}
|
|
37
|
+
export function getRowGroupBehaviorDescription(layout) {
|
|
38
|
+
const behavior = layout.RowGroupValues?.RowGroupDefaultBehavior ?? 'always-collapsed';
|
|
39
|
+
return ROW_GROUP_BEHAVIOR_DESCRIPTIONS[behavior];
|
|
40
|
+
}
|
|
41
|
+
export function getTableRowGroupSummaryValues(layout, api) {
|
|
42
|
+
const columnIdToFriendlyName = (columnId) => api.columnApi.getFriendlyNameForColumnId(columnId);
|
|
43
|
+
const values = [];
|
|
44
|
+
if (!layout.RowGroupedColumns?.length) {
|
|
45
|
+
values.push('No Row Grouped Columns');
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
layout.RowGroupedColumns.forEach((colId) => {
|
|
49
|
+
values.push(columnIdToFriendlyName(colId));
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
values.push(`Display Type: ${getRowGroupDisplayTypeLabel(layout)}`);
|
|
53
|
+
values.push(`Behaviour: ${getRowGroupBehaviorLabel(layout)}`);
|
|
54
|
+
return values;
|
|
55
|
+
}
|
|
56
|
+
export function getLayoutTableRowGroupViewItems(layout, api) {
|
|
57
|
+
return [
|
|
58
|
+
{
|
|
59
|
+
name: 'Row Groups',
|
|
60
|
+
view: () => React.createElement(TableRowGroupSummaryView, { layout, api }),
|
|
61
|
+
},
|
|
62
|
+
];
|
|
63
|
+
}
|
|
64
|
+
export function getPivotRowGroupSummaryValues(layout, api) {
|
|
65
|
+
const columnIdToFriendlyName = (columnId) => api.columnApi.getFriendlyNameForColumnId(columnId);
|
|
66
|
+
const values = [];
|
|
67
|
+
if (!layout.PivotGroupedColumns?.length) {
|
|
68
|
+
values.push('No Row Grouped Columns');
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
layout.PivotGroupedColumns.forEach((colId) => {
|
|
72
|
+
values.push(columnIdToFriendlyName(colId));
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
values.push(`Behaviour: ${getRowGroupBehaviorLabel(layout)}`);
|
|
76
|
+
return values;
|
|
77
|
+
}
|
|
78
|
+
export function getLayoutPivotRowGroupViewItems(layout, api) {
|
|
79
|
+
return [
|
|
80
|
+
{
|
|
81
|
+
name: 'Row Groups',
|
|
82
|
+
view: () => React.createElement(PivotRowGroupSummaryView, { layout, api }),
|
|
83
|
+
},
|
|
84
|
+
];
|
|
85
|
+
}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
*/
|
|
5
|
-
export declare const DEFAULT_SETTINGS_PANEL_NAVIGATION_ITEMS: (AdaptableSettingsPanel | '-')[];
|
|
1
|
+
import { SettingsPanelNavigation, SettingsPanelNavigationGroup } from '../../AdaptableOptions/SettingsPanelOptions';
|
|
2
|
+
export declare const DEFAULT_SETTINGS_PANEL_NAVIGATION_GROUPS: SettingsPanelNavigationGroup[];
|
|
3
|
+
export declare const buildDefaultSettingsPanelNavigation: (customPanelNames?: string[]) => SettingsPanelNavigation;
|