@adaptabletools/adaptable-cjs 23.0.0-canary.6 → 23.0.0-canary.8
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 +828 -263
- 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 +8 -850
- package/src/AdaptableState/StyledColumnState.js +0 -10
- package/src/AdaptableState/StyledColumns/BadgeStyle.d.ts +143 -0
- package/src/AdaptableState/StyledColumns/BadgeStyle.js +12 -0
- package/src/AdaptableState/StyledColumns/BulletChartStyle.d.ts +147 -0
- package/src/AdaptableState/StyledColumns/Common/BarChartCellText.d.ts +60 -0
- package/src/AdaptableState/StyledColumns/Common/BarChartCellText.js +7 -0
- package/src/AdaptableState/StyledColumns/Common/BarChartMarker.d.ts +24 -0
- package/src/AdaptableState/StyledColumns/Common/BarChartMarker.js +6 -0
- package/src/AdaptableState/StyledColumns/Common/CellTextOptions.d.ts +13 -0
- package/src/AdaptableState/StyledColumns/Common/CellTextOptions.js +7 -0
- package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.d.ts +79 -0
- package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.js +10 -0
- package/src/AdaptableState/StyledColumns/GradientStyle.d.ts +48 -0
- package/src/AdaptableState/StyledColumns/GradientStyle.js +2 -0
- package/src/AdaptableState/StyledColumns/IconStyle.d.ts +158 -0
- package/src/AdaptableState/StyledColumns/IconStyle.js +2 -0
- package/src/AdaptableState/StyledColumns/PercentBarStyle.d.ts +32 -0
- package/src/AdaptableState/StyledColumns/PercentBarStyle.js +2 -0
- package/src/AdaptableState/StyledColumns/RangeBarStyle.d.ts +155 -0
- package/src/AdaptableState/StyledColumns/RangeBarStyle.js +2 -0
- package/src/AdaptableState/StyledColumns/RatingStyle.d.ts +111 -0
- package/src/AdaptableState/StyledColumns/RatingStyle.js +2 -0
- package/src/AdaptableState/StyledColumns/SparklineStyle.d.ts +21 -0
- package/src/AdaptableState/StyledColumns/SparklineStyle.js +2 -0
- package/src/Api/ColumnScopeApi.d.ts +1 -1
- package/src/Api/Implementation/ColumnScopeApiImpl.d.ts +1 -1
- 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/Api/Internal/StyledColumnInternalApi.d.ts +3 -1
- 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 +1 -1
- 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 +11 -28
- 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 +17 -1
- package/src/Strategy/Utilities/Export/getExportRowsViewItems.d.ts +1 -0
- package/src/Strategy/Utilities/Export/getExportRowsViewItems.js +5 -1
- package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.d.ts +11 -0
- package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.js +111 -0
- package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.d.ts +48 -0
- package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.js +177 -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 +97 -0
- package/src/Utilities/Defaults/DefaultSettingsPanel.d.ts +3 -5
- package/src/Utilities/Defaults/DefaultSettingsPanel.js +48 -42
- package/src/Utilities/Helpers/FormatHelper.js +3 -0
- package/src/Utilities/Helpers/IconStylePresets.d.ts +1 -1
- package/src/Utilities/Helpers/ScheduleHelper.js +2 -0
- package/src/Utilities/Helpers/StyleHelper.d.ts +18 -0
- package/src/Utilities/Helpers/StyleHelper.js +30 -1
- package/src/Utilities/Helpers/StyledColumnGradientHelper.d.ts +3 -1
- package/src/Utilities/Helpers/StyledColumnGradientHelper.js +6 -4
- package/src/Utilities/Helpers/barChartCellText.d.ts +63 -0
- package/src/Utilities/Helpers/barChartCellText.js +333 -0
- package/src/Utilities/Helpers/percentBarPreviewHelper.d.ts +2 -1
- package/src/Utilities/Helpers/percentBarPreviewHelper.js +3 -8
- package/src/Utilities/Helpers/resolveSettingsPanelNavigation.d.ts +3 -0
- package/src/Utilities/Helpers/resolveSettingsPanelNavigation.js +19 -0
- package/src/Utilities/getScopeViewItems.js +2 -0
- package/src/Utilities/wizardSelection.d.ts +10 -0
- package/src/Utilities/wizardSelection.js +22 -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 +1 -6
- package/src/View/Alert/Wizard/AlertButtonsEditor.js +159 -125
- 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 +4 -5
- 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 +30 -7
- package/src/View/Alert/Wizard/AlertWizard.js +12 -4
- package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.d.ts +2 -1
- package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +3 -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 +29 -3
- 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 -3
- package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +3 -2
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +7 -6
- package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.d.ts +2 -0
- package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.js +6 -0
- 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.d.ts +1 -0
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +9 -9
- package/src/View/Components/ColumnFilter/ColumnFilter.js +15 -3
- 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 +3 -8
- 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 +3 -3
- 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 -4
- package/src/View/Components/Popups/AdaptablePopup/TopBar.js +2 -3
- package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.d.ts +11 -0
- package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.js +5 -0
- package/src/View/Components/Popups/AdaptablePopup/useMenuItems.d.ts +3 -1
- package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +27 -28
- package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -1
- package/src/View/Components/RangesComponent.d.ts +4 -5
- package/src/View/Components/RangesComponent.js +95 -66
- package/src/View/Components/ReorderDraggable/index.js +2 -3
- 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 +30 -63
- package/src/View/Components/ToolPanel/AdaptableToolPanel.js +9 -6
- package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +3 -13
- package/src/View/Components/ToolPanel/ToolPanelPopup.js +5 -80
- package/src/View/Components/ToolPanel/ToolPanelPopupSections.d.ts +17 -0
- package/src/View/Components/ToolPanel/ToolPanelPopupSections.js +81 -0
- package/src/View/Components/ValueSelector/index.d.ts +29 -0
- package/src/View/Components/ValueSelector/index.js +112 -29
- package/src/View/Components/wizardColumnListStyles.d.ts +10 -0
- package/src/View/Components/wizardColumnListStyles.js +13 -0
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.d.ts +2 -1
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +4 -6
- 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 +73 -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 +99 -0
- package/src/View/DataChangeHistory/buildActionColumnButton.d.ts +5 -3
- package/src/View/DataChangeHistory/buildActionColumnButton.js +33 -41
- package/src/View/DataChangeHistory/dataChangeHistoryHelpers.d.ts +15 -0
- package/src/View/DataChangeHistory/dataChangeHistoryHelpers.js +46 -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 +4 -5
- package/src/View/Export/ExportSchedulesTab.js +3 -4
- 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 +2 -7
- package/src/View/Export/Wizard/ReportRowsWizardSection.d.ts +2 -1
- package/src/View/Export/Wizard/ReportRowsWizardSection.js +2 -5
- package/src/View/Filter/FilterViewPanel.js +1 -1
- package/src/View/FlashingCell/FlashingCellStyle.d.ts +4 -2
- package/src/View/FlashingCell/FlashingCellStyle.js +5 -3
- package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.d.ts +2 -1
- package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +5 -9
- package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.d.ts +9 -0
- package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.js +10 -0
- package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.d.ts +1 -1
- package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +5 -1
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.d.ts +0 -5
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +3 -8
- package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +1 -2
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +101 -44
- package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.d.ts +0 -1
- package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +1 -6
- package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +55 -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 -9
- package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +4 -9
- 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 -3
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -2
- package/src/View/Layout/LayoutViewPanel.js +2 -2
- 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 +77 -33
- package/src/View/Layout/Wizard/sections/ColumnsSection.d.ts +4 -1
- package/src/View/Layout/Wizard/sections/ColumnsSection.js +154 -275
- package/src/View/Layout/Wizard/sections/PivotAggregationsSection.d.ts +4 -1
- package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +146 -143
- package/src/View/Layout/Wizard/sections/PivotColumnsSection.d.ts +5 -2
- package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +22 -10
- package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.d.ts +4 -1
- package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +21 -10
- package/src/View/Layout/Wizard/sections/RowGroupingSection.d.ts +5 -2
- package/src/View/Layout/Wizard/sections/RowGroupingSection.js +23 -12
- package/src/View/Layout/Wizard/sections/RowSelectionSection.js +7 -3
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +130 -104
- package/src/View/Layout/Wizard/sections/SortSection.d.ts +12 -2
- package/src/View/Layout/Wizard/sections/SortSection.js +43 -18
- package/src/View/Layout/Wizard/sections/columnLayoutCards.d.ts +20 -0
- package/src/View/Layout/Wizard/sections/columnLayoutCards.js +167 -0
- package/src/View/Layout/Wizard/sections/columnLayoutHelpers.d.ts +30 -0
- package/src/View/Layout/Wizard/sections/columnLayoutHelpers.js +216 -0
- package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.d.ts +8 -0
- package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.js +72 -0
- package/src/View/Layout/Wizard/sections/layoutWizardColumns.d.ts +11 -0
- package/src/View/Layout/Wizard/sections/layoutWizardColumns.js +57 -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 -13
- 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 +11 -0
- package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.d.ts +3 -1
- package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.js +13 -10
- package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.d.ts +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +143 -119
- package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.d.ts +1 -3
- package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.js +7 -13
- 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 +54 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.d.ts +2 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +28 -6
- package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +76 -70
- package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.js +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +83 -38
- package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +172 -75
- 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 +31 -45
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextLayoutEditor.d.ts +9 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextLayoutEditor.js +40 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextPreview.d.ts +23 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextPreview.js +62 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BulletRangesSummaryPreview.d.ts +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.d.ts +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/RangeBarRangesSummaryPreview.d.ts +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +3 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.d.ts +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.js +13 -17
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.d.ts +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.js +5 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnIconPreview.js +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnPercentBarPreview.js +13 -6
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.js +11 -17
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.d.ts +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +26 -57
- package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +93 -6
- package/src/View/UIHelper.d.ts +0 -2
- package/src/View/UIHelper.js +8 -24
- package/src/View/Wizard/CollapsibleWizardCard.d.ts +68 -0
- package/src/View/Wizard/CollapsibleWizardCard.js +90 -0
- package/src/View/Wizard/OnePageWizards.js +6 -6
- package/src/View/Wizard/SummaryColorTag.d.ts +24 -0
- package/src/View/Wizard/SummaryColorTag.js +79 -0
- package/src/View/Wizard/WizardTypeSelection.d.ts +34 -0
- package/src/View/Wizard/WizardTypeSelection.js +40 -0
- package/src/View/Wizard/rowGroupSummaryTags.d.ts +18 -0
- package/src/View/Wizard/rowGroupSummaryTags.js +21 -0
- package/src/View/Wizard/scopeSummaryTags.d.ts +6 -0
- package/src/View/Wizard/scopeSummaryTags.js +38 -0
- package/src/agGrid/AgGridAdapter.js +0 -5
- package/src/agGrid/AgGridColumnAdapter.js +3 -2
- package/src/agGrid/cellRenderers/ActionColumnRenderer.js +4 -7
- package/src/agGrid/cellRenderers/BadgeRenderer.js +7 -5
- package/src/agGrid/cellRenderers/BulletChartRenderer.js +43 -42
- package/src/agGrid/cellRenderers/IconRenderer.d.ts +2 -1
- package/src/agGrid/cellRenderers/IconRenderer.js +13 -11
- package/src/agGrid/cellRenderers/PercentBarRenderer.js +24 -96
- package/src/agGrid/cellRenderers/RangeBarRenderer.js +49 -46
- package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +1 -1
- package/src/components/Card/index.js +5 -7
- package/src/components/CheckBox/index.js +2 -3
- package/src/components/CodeBlock/index.js +2 -3
- 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 +31 -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 +4 -1
- package/src/components/DragAndDropContext/ModuleManager.d.ts +15 -3
- package/src/components/DragAndDropContext/ModuleManager.js +43 -4
- 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 +13 -9
- package/src/components/DragAndDropContext/dragScope.d.ts +6 -0
- package/src/components/DragAndDropContext/dragScope.js +34 -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 -3
- package/src/components/ErrorBox/index.js +2 -3
- package/src/components/ExpressionEditor/BaseEditorInput.js +3 -3
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +3 -3
- package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +9 -9
- package/src/components/FieldWrap/index.js +2 -3
- package/src/components/Flex.js +2 -2
- package/src/components/FormLayout/index.d.ts +1 -1
- package/src/components/HelpBlock/index.js +3 -4
- package/src/components/IconSelector/IconSelector.d.ts +8 -0
- package/src/components/IconSelector/IconSelector.js +13 -8
- package/src/components/IconSelector/index.d.ts +1 -0
- package/src/components/IconSelector/index.js +3 -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 -3
- package/src/components/Tabs/index.js +4 -4
- package/src/components/Tag/Tag.d.ts +16 -0
- package/src/components/Tag/Tag.js +16 -5
- package/src/components/Tag/columnScopeTagHelpers.d.ts +8 -0
- package/src/components/Tag/columnScopeTagHelpers.js +12 -0
- package/src/components/Tag/index.d.ts +1 -1
- package/src/components/Tag/index.js +3 -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 -5
- package/src/components/Tree/TreeDropdown/index.js +3 -5
- package/src/components/WarningBox/index.js +2 -3
- 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.d.ts +80 -14
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/migration/VersionUpgrade23.d.ts +27 -31
- package/src/migration/VersionUpgrade23.js +110 -29
- package/src/types.d.ts +13 -2
- package/tsconfig.cjs.tsbuildinfo +1 -1
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.d.ts +0 -17
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +0 -295
- package/src/components/DropdownButton/DropdownButtonItem.d.ts +0 -12
- package/src/components/DropdownButton/renderItem.d.ts +0 -14
- package/src/components/DropdownButton/renderItem.js +0 -14
- package/src/components/DropdownButton/useExpanded.d.ts +0 -24
- package/src/components/DropdownButton/useExpanded.js +0 -59
- package/src/components/NewDropdownButton/index.d.ts +0 -27
- package/src/components/NewDropdownButton/index.js +0 -28
- /package/src/{components/DropdownButton/DropdownButtonItem.js → AdaptableState/StyledColumns/BulletChartStyle.js} +0 -0
|
@@ -13,8 +13,6 @@ const RangesComponent_1 = require("../../Components/RangesComponent");
|
|
|
13
13
|
const ColumnSelector_1 = require("../../Components/Selectors/ColumnSelector");
|
|
14
14
|
const UIHelper_1 = require("../../UIHelper");
|
|
15
15
|
const OnePageAdaptableWizard_1 = require("../../Wizard/OnePageAdaptableWizard");
|
|
16
|
-
const DropdownButton_1 = tslib_1.__importDefault(require("../../../components/DropdownButton"));
|
|
17
|
-
const ArrayExtensions_1 = tslib_1.__importDefault(require("../../../Utilities/Extensions/ArrayExtensions"));
|
|
18
16
|
const AdaptableInput_1 = tslib_1.__importDefault(require("../../Components/AdaptableInput"));
|
|
19
17
|
const Flex_1 = require("../../../components/Flex");
|
|
20
18
|
const BulletRangesSummaryPreview_1 = require("./StyledColumnWizardStyleSection/Components/BulletRangesSummaryPreview");
|
|
@@ -22,10 +20,10 @@ const StyledColumnBulletPreview_1 = require("./StyledColumnWizardStyleSection/Co
|
|
|
22
20
|
const NewSelect_1 = require("../../../components/NewSelect");
|
|
23
21
|
const StyledColumnSliceStyleEditors_1 = require("./StyledColumnSliceStyleEditors");
|
|
24
22
|
const Card_1 = require("../../../components/Card");
|
|
23
|
+
const SummaryColorTag_1 = require("../../Wizard/SummaryColorTag");
|
|
24
|
+
const barChartCellText_1 = require("../../../Utilities/Helpers/barChartCellText");
|
|
25
|
+
const BarChartCellTextLayoutEditor_1 = require("./StyledColumnWizardStyleSection/Components/BarChartCellTextLayoutEditor");
|
|
25
26
|
const BULLET_STYLE_FORM_SIZES = ['200px', '1fr'];
|
|
26
|
-
// ---------------------------------------------------------------------------
|
|
27
|
-
// Summary helpers
|
|
28
|
-
// ---------------------------------------------------------------------------
|
|
29
27
|
const getTargetSummary = (target) => {
|
|
30
28
|
if (target == undefined) {
|
|
31
29
|
return null;
|
|
@@ -78,11 +76,12 @@ const getStyledColumnBulletRangesViewValues = (data) => {
|
|
|
78
76
|
exports.getStyledColumnBulletRangesViewValues = getStyledColumnBulletRangesViewValues;
|
|
79
77
|
const buildStyledColumnBulletStyleSummaryStrings = (bullet, options) => {
|
|
80
78
|
const items = [];
|
|
81
|
-
const
|
|
79
|
+
const targetProperties = bullet.TargetProperties;
|
|
80
|
+
const targetSummary = getTargetSummary(targetProperties?.Target);
|
|
82
81
|
if (targetSummary) {
|
|
83
82
|
items.push(`Target: ${targetSummary}`);
|
|
84
83
|
}
|
|
85
|
-
const marker =
|
|
84
|
+
const marker = targetProperties?.Marker;
|
|
86
85
|
if (marker?.Shape && marker.Shape !== 'Line') {
|
|
87
86
|
items.push(`Target Marker Shape: ${marker.Shape}`);
|
|
88
87
|
}
|
|
@@ -95,19 +94,24 @@ const buildStyledColumnBulletStyleSummaryStrings = (bullet, options) => {
|
|
|
95
94
|
if (bullet.Orientation === 'Vertical') {
|
|
96
95
|
items.push('Orientation: Vertical');
|
|
97
96
|
}
|
|
98
|
-
|
|
99
|
-
|
|
97
|
+
const barProperties = bullet.Bar;
|
|
98
|
+
if (barProperties?.Color) {
|
|
99
|
+
items.push(`Bar Colour: ${barProperties.Color}`);
|
|
100
100
|
}
|
|
101
|
-
if (
|
|
102
|
-
items.push(`${bullet.Orientation === 'Vertical' ? 'Bar Width' : 'Bar Height'}: ${
|
|
101
|
+
if (barProperties?.Height != null) {
|
|
102
|
+
items.push(`${bullet.Orientation === 'Vertical' ? 'Bar Width' : 'Bar Height'}: ${barProperties.Height}px`);
|
|
103
103
|
}
|
|
104
104
|
items.push(`Origin: ${formatBulletOriginLabel(bullet.Origin)}`);
|
|
105
105
|
if (bullet.BackColor) {
|
|
106
106
|
items.push(`Back Colour: ${bullet.BackColor}`);
|
|
107
107
|
}
|
|
108
|
-
if (bullet.
|
|
109
|
-
|
|
110
|
-
items.push(`Cell Text
|
|
108
|
+
if ((0, barChartCellText_1.hasBarChartCellTextConfigured)(bullet.CellTextProperties)) {
|
|
109
|
+
const tokens = (0, barChartCellText_1.getActiveBarChartCellTextTokens)(bullet.CellTextProperties);
|
|
110
|
+
items.push(`Cell Text: ${formatBulletCellTextSummary(tokens)}`);
|
|
111
|
+
const layoutSummary = (0, barChartCellText_1.formatBarChartCellTextLayoutSummary)((0, barChartCellText_1.resolveBarChartCellTextLayout)(bullet.CellTextProperties));
|
|
112
|
+
if (layoutSummary) {
|
|
113
|
+
items.push(`Placement: ${layoutSummary}`);
|
|
114
|
+
}
|
|
111
115
|
}
|
|
112
116
|
else if (options.includeEmptyCellText) {
|
|
113
117
|
items.push('Cell Text: None');
|
|
@@ -141,7 +145,7 @@ const renderStyledColumnBulletRangesSummary = (data) => {
|
|
|
141
145
|
return (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: "No bands defined" });
|
|
142
146
|
}
|
|
143
147
|
const tagItems = (0, exports.getStyledColumnBulletRangesViewValues)(data);
|
|
144
|
-
return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-2 twa:items-start", children: [(0,
|
|
148
|
+
return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-2 twa:items-start", children: [(0, SummaryColorTag_1.renderSummaryStringTags)(tagItems), (0, jsx_runtime_1.jsx)(BulletRangesSummaryPreview_1.BulletRangesSummaryPreview, { bulletStyle: bullet })] }));
|
|
145
149
|
};
|
|
146
150
|
exports.renderStyledColumnBulletRangesSummary = renderStyledColumnBulletRangesSummary;
|
|
147
151
|
const StyledColumnBulletRangesView = ({ data }) => (0, exports.renderStyledColumnBulletRangesSummary)(data);
|
|
@@ -159,7 +163,7 @@ const renderStyledColumnBulletStyleSummary = (data) => {
|
|
|
159
163
|
if (!items.length) {
|
|
160
164
|
return (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: "No Style Defined" });
|
|
161
165
|
}
|
|
162
|
-
return (
|
|
166
|
+
return (0, SummaryColorTag_1.renderSummaryStringTags)(items);
|
|
163
167
|
};
|
|
164
168
|
exports.renderStyledColumnBulletStyleSummary = renderStyledColumnBulletStyleSummary;
|
|
165
169
|
/** Full combined summary (ranges + style); kept for callers that expect one block. */
|
|
@@ -270,20 +274,28 @@ const StyledColumnWizardBulletSection = (props) => {
|
|
|
270
274
|
});
|
|
271
275
|
}, [data, bullet]);
|
|
272
276
|
// -- Target ----------------------------------------------------------------
|
|
273
|
-
const currentMode = getSimpleTargetMode(bullet.Target);
|
|
277
|
+
const currentMode = getSimpleTargetMode(bullet.TargetProperties?.Target);
|
|
278
|
+
const updateTargetProperties = (patch) => {
|
|
279
|
+
const merged = {
|
|
280
|
+
...bullet.TargetProperties,
|
|
281
|
+
...patch,
|
|
282
|
+
};
|
|
283
|
+
// Strip the wrapper when nothing meaningful is left.
|
|
284
|
+
const isEmpty = merged.Target == undefined && merged.Marker == undefined;
|
|
285
|
+
update({ TargetProperties: isEmpty ? undefined : merged });
|
|
286
|
+
};
|
|
287
|
+
const setTarget = (target) => updateTargetProperties({ Target: target });
|
|
274
288
|
const handleTargetModeChange = (mode) => {
|
|
275
289
|
if (mode === 'None') {
|
|
276
|
-
|
|
277
|
-
delete next.Target;
|
|
278
|
-
props.onChange({ ...data, BulletChartStyle: next });
|
|
290
|
+
setTarget(undefined);
|
|
279
291
|
return;
|
|
280
292
|
}
|
|
281
293
|
if (mode === 'Col-Avg' || mode === 'Col-Median') {
|
|
282
|
-
|
|
294
|
+
setTarget(mode);
|
|
283
295
|
return;
|
|
284
296
|
}
|
|
285
297
|
if (mode === 'Number') {
|
|
286
|
-
|
|
298
|
+
setTarget(minMaxRangeValues?.max ?? 0);
|
|
287
299
|
return;
|
|
288
300
|
}
|
|
289
301
|
if (mode === 'Column') {
|
|
@@ -291,38 +303,43 @@ const StyledColumnWizardBulletSection = (props) => {
|
|
|
291
303
|
const candidate = api.columnApi
|
|
292
304
|
.getNumericColumns()
|
|
293
305
|
.find((c) => c.columnId !== data.ColumnId);
|
|
294
|
-
|
|
306
|
+
setTarget(candidate?.columnId ?? '');
|
|
295
307
|
return;
|
|
296
308
|
}
|
|
297
309
|
};
|
|
298
310
|
const handleNumericTargetChange = (value) => {
|
|
299
|
-
|
|
300
|
-
update({ Target: 0 });
|
|
301
|
-
}
|
|
302
|
-
else {
|
|
303
|
-
update({ Target: value });
|
|
304
|
-
}
|
|
311
|
+
setTarget(value == undefined || isNaN(value) ? 0 : value);
|
|
305
312
|
};
|
|
306
313
|
const handleColumnTargetChange = (columnId) => {
|
|
307
|
-
|
|
314
|
+
setTarget(columnId);
|
|
315
|
+
};
|
|
316
|
+
// -- Bar -------------------------------------------------------------------
|
|
317
|
+
const updateBar = (patch) => {
|
|
318
|
+
const merged = {
|
|
319
|
+
...bullet.Bar,
|
|
320
|
+
...patch,
|
|
321
|
+
};
|
|
322
|
+
const isEmpty = merged.Color == undefined && merged.Height == undefined;
|
|
323
|
+
update({ Bar: isEmpty ? undefined : merged });
|
|
308
324
|
};
|
|
309
325
|
// -- Marker ----------------------------------------------------------------
|
|
310
326
|
const updateMarker = (patch) => {
|
|
311
|
-
|
|
312
|
-
|
|
327
|
+
updateTargetProperties({
|
|
328
|
+
Marker: {
|
|
313
329
|
Shape: 'Line',
|
|
314
|
-
...bullet.
|
|
330
|
+
...bullet.TargetProperties?.Marker,
|
|
315
331
|
...patch,
|
|
316
332
|
},
|
|
317
333
|
});
|
|
318
334
|
};
|
|
319
335
|
// -- Cell text -------------------------------------------------------------
|
|
320
|
-
const toggleCellText = (token,
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
336
|
+
const toggleCellText = (token, show) => {
|
|
337
|
+
update((0, barChartCellText_1.toggleBarChartCellTextToken)(bullet.CellTextProperties, token, show));
|
|
338
|
+
};
|
|
339
|
+
const onCellTextPlacementChange = (token, patch) => {
|
|
340
|
+
update({
|
|
341
|
+
CellTextProperties: (0, barChartCellText_1.patchBarChartCellTextPlacement)(bullet.CellTextProperties, token, patch),
|
|
342
|
+
});
|
|
326
343
|
};
|
|
327
344
|
const toggleToolTipText = (token, checked) => {
|
|
328
345
|
const current = bullet.ToolTipText ?? [];
|
|
@@ -331,9 +348,6 @@ const StyledColumnWizardBulletSection = (props) => {
|
|
|
331
348
|
: current.filter((t) => t !== token);
|
|
332
349
|
update({ ToolTipText: next });
|
|
333
350
|
};
|
|
334
|
-
const handleCellTextPositionChange = (pos) => {
|
|
335
|
-
update({ CellTextPosition: pos });
|
|
336
|
-
};
|
|
337
351
|
// -------------------------------------------------------------------------
|
|
338
352
|
// Render
|
|
339
353
|
// -------------------------------------------------------------------------
|
|
@@ -346,22 +360,27 @@ const StyledColumnWizardBulletSection = (props) => {
|
|
|
346
360
|
if (variant === 'ranges') {
|
|
347
361
|
return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { children: (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Ranges" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Define qualitative bands for the bullet scale" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsx)(RangesComponent_1.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 }) })] }) }));
|
|
348
362
|
}
|
|
349
|
-
const
|
|
350
|
-
? bullet.Target
|
|
351
|
-
:
|
|
352
|
-
|
|
363
|
+
const primaryTarget = Array.isArray(bullet.TargetProperties?.Target)
|
|
364
|
+
? bullet.TargetProperties?.Target?.[0]
|
|
365
|
+
: bullet.TargetProperties?.Target;
|
|
366
|
+
const numericTargetValue = typeof primaryTarget === 'number'
|
|
367
|
+
? primaryTarget
|
|
368
|
+
: typeof primaryTarget?.Value === 'number'
|
|
369
|
+
? primaryTarget.Value
|
|
353
370
|
: undefined;
|
|
354
|
-
const columnTargetValue = typeof
|
|
355
|
-
?
|
|
356
|
-
: typeof
|
|
357
|
-
?
|
|
371
|
+
const columnTargetValue = typeof primaryTarget === 'string' && primaryTarget !== 'Col-Avg' && primaryTarget !== 'Col-Median'
|
|
372
|
+
? primaryTarget
|
|
373
|
+
: typeof primaryTarget?.Value === 'string'
|
|
374
|
+
? primaryTarget.Value
|
|
358
375
|
: undefined;
|
|
376
|
+
const markerCfg = bullet.TargetProperties?.Marker;
|
|
359
377
|
const marker = {
|
|
360
|
-
Shape:
|
|
361
|
-
Color:
|
|
362
|
-
Size:
|
|
378
|
+
Shape: markerCfg?.Shape ?? 'Line',
|
|
379
|
+
Color: markerCfg?.Color ?? '',
|
|
380
|
+
Size: markerCfg?.Size ?? (markerCfg?.Shape === 'Line' ? 2 : 8),
|
|
363
381
|
};
|
|
364
|
-
const
|
|
382
|
+
const cellTextProperties = bullet.CellTextProperties;
|
|
383
|
+
const cellTextDisabled = !(0, barChartCellText_1.hasBarChartCellTextConfigured)(cellTextProperties) || disabled;
|
|
365
384
|
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { children: [(0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Target" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Select a target value for the bullet scale" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsxs)(FormLayout_1.default, { sizes: [...BULLET_STYLE_FORM_SIZES], children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Target:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[180px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", value: currentMode, onValueChange: (v) => handleTargetModeChange(v), items: [
|
|
366
385
|
{ value: 'None', label: 'None' },
|
|
367
386
|
{ value: 'Number', label: 'Fixed Number' },
|
|
@@ -371,8 +390,8 @@ const StyledColumnWizardBulletSection = (props) => {
|
|
|
371
390
|
] }) }) }), currentMode === 'Number' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Target Value:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[160px]", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { type: "number", value: numericTargetValue ?? '', onChange: (e) => handleNumericTargetChange(e.target.value === '' ? undefined : Number(e.target.value)) }) }) })), currentMode === 'Column' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Target Column:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[220px]", children: (0, jsx_runtime_1.jsx)(ColumnSelector_1.ColumnSelector, { type: "number", value: columnTargetValue ?? '', onChange: handleColumnTargetChange, filterColumn: (c) => c.columnId !== data.ColumnId, placeholder: "Select numeric column" }) }) })), currentMode !== 'None' && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Marker Shape:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[160px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", value: marker.Shape, onValueChange: (s) => updateMarker({ Shape: s }), items: MARKER_SHAPES.map((s) => ({ value: s.value, label: s.label })) }) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Marker Colour:", children: (0, jsx_runtime_1.jsx)(ColorPicker_1.ColorPicker, { disabled: disabled, api: api, value: marker.Color || undefined, onChange: (c) => updateMarker({ Color: c }) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Marker Size:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[100px]", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { type: "number", min: 1, value: marker.Size, onChange: (e) => updateMarker({ Size: Number(e.target.value) }) }) }) })] }))] }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Bar" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Set the bar orientation and height" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsxs)(FormLayout_1.default, { sizes: [...BULLET_STYLE_FORM_SIZES], children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Orientation:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[160px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", value: bullet.Orientation ?? 'Horizontal', onValueChange: (v) => update({ Orientation: v }), items: [
|
|
372
391
|
{ value: 'Horizontal', label: 'Horizontal' },
|
|
373
392
|
{ value: 'Vertical', label: 'Vertical' },
|
|
374
|
-
] }) }) }), bullet.Orientation === 'Vertical' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "", children: (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-xs twa:text-neutral-500", children: ["Tip: vertical bullet charts need a tall row height to be readable (we recommend at least 60px). Set ", (0, jsx_runtime_1.jsx)("code", { children: "rowHeight" }), " on ", (0, jsx_runtime_1.jsx)("code", { children: " gridOptions " }), " or use", ' ', (0, jsx_runtime_1.jsx)("code", { children: "getRowHeight" }), "."] }) })), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Bar Colour:", children: (0, jsx_runtime_1.jsx)(ColorPicker_1.ColorPicker, { disabled: disabled, api: api, value: bullet.
|
|
375
|
-
|
|
393
|
+
] }) }) }), bullet.Orientation === 'Vertical' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "", children: (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-xs twa:text-neutral-500", children: ["Tip: vertical bullet charts need a tall row height to be readable (we recommend at least 60px). Set ", (0, jsx_runtime_1.jsx)("code", { children: "rowHeight" }), " on ", (0, jsx_runtime_1.jsx)("code", { children: " gridOptions " }), " or use", ' ', (0, jsx_runtime_1.jsx)("code", { children: "getRowHeight" }), "."] }) })), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Bar Colour:", children: (0, jsx_runtime_1.jsx)(ColorPicker_1.ColorPicker, { disabled: disabled, api: api, value: bullet.Bar?.Color, onChange: (c) => updateBar({ Color: c }) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: bullet.Orientation === 'Vertical' ? 'Bar Width (px):' : 'Bar Height (px):', children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[100px]", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { type: "number", min: 1, value: bullet.Bar?.Height ?? '', onChange: (e) => updateBar({
|
|
394
|
+
Height: e.target.value === '' ? undefined : Number(e.target.value),
|
|
376
395
|
}), placeholder: "8" }) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Origin:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[160px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", value: typeof bullet.Origin === 'number' ? 'Number' : (bullet.Origin ?? 'Auto'), onValueChange: (v) => {
|
|
377
396
|
if (v === 'Auto' || v === 'Zero') {
|
|
378
397
|
update({ Origin: v });
|
|
@@ -383,20 +402,7 @@ const StyledColumnWizardBulletSection = (props) => {
|
|
|
383
402
|
}, items: [
|
|
384
403
|
{ value: 'Auto', label: 'Auto' },
|
|
385
404
|
{ value: 'Zero', label: 'Zero' },
|
|
386
|
-
] }) }) })] }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Cell Text" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "
|
|
387
|
-
{
|
|
388
|
-
label: 'Above Bar',
|
|
389
|
-
onClick: () => handleCellTextPositionChange('Above'),
|
|
390
|
-
},
|
|
391
|
-
{
|
|
392
|
-
label: 'Below Bar',
|
|
393
|
-
onClick: () => handleCellTextPositionChange('Below'),
|
|
394
|
-
},
|
|
395
|
-
{
|
|
396
|
-
label: 'Merged',
|
|
397
|
-
onClick: () => handleCellTextPositionChange('Merged'),
|
|
398
|
-
},
|
|
399
|
-
], children: bullet.CellTextPosition ?? 'Below' }) })] }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: `twa:mt-3 twa:pt-3 twa:border-t twa:border-foreground/15 ${cellTextDisabled ? 'twa:opacity-50' : ''}`, children: (0, jsx_runtime_1.jsx)(StyledColumnSliceStyleEditors_1.StyledColumnFontStyleEditor, { api: api, disabled: cellTextDisabled, value: bullet.Font, onChange: (next) => {
|
|
405
|
+
] }) }) })] }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Cell Text" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Pick which values to display and where each one sits around the bar" })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card.Body, { children: [(0, jsx_runtime_1.jsx)(FormLayout_1.default, { sizes: [...BULLET_STYLE_FORM_SIZES], children: (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Cell Text Layout:", children: (0, jsx_runtime_1.jsx)(BarChartCellTextLayoutEditor_1.BarChartCellTextLayoutEditor, { disabled: disabled, cellTextProperties: cellTextProperties, onToggle: toggleCellText, onPlacementChange: onCellTextPlacementChange }) }) }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: `twa:mt-3 twa:pt-3 twa:border-t twa:border-foreground/15 ${cellTextDisabled ? 'twa:opacity-50' : ''}`, children: (0, jsx_runtime_1.jsx)(StyledColumnSliceStyleEditors_1.StyledColumnFontStyleEditor, { api: api, disabled: cellTextDisabled, value: bullet.Font, onChange: (next) => {
|
|
400
406
|
if (next) {
|
|
401
407
|
update({ Font: next });
|
|
402
408
|
}
|
|
@@ -14,6 +14,7 @@ const NumberInput_1 = require("../../../components/Input/NumberInput");
|
|
|
14
14
|
const StyledColumnGradientHelper_1 = require("../../../Utilities/Helpers/StyledColumnGradientHelper");
|
|
15
15
|
const StyledColumnSliceStyleEditors_1 = require("./StyledColumnSliceStyleEditors");
|
|
16
16
|
const Card_1 = require("../../../components/Card");
|
|
17
|
+
const SummaryColorTag_1 = require("../../Wizard/SummaryColorTag");
|
|
17
18
|
const StyledColumnGradientPreview_1 = require("./StyledColumnWizardStyleSection/Components/StyledColumnGradientPreview");
|
|
18
19
|
const STYLE_FORM_SIZES = ['200px', '1fr'];
|
|
19
20
|
function formatGradientToolTipSummary(opts) {
|
|
@@ -56,7 +57,7 @@ const renderStyledColumnGradientStyleSummary = (data) => {
|
|
|
56
57
|
return (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: "No Styling Defined" });
|
|
57
58
|
}
|
|
58
59
|
const items = buildStyledColumnGradientStyleSummaryStrings(gs, { includeEmptyTooltip: true });
|
|
59
|
-
return (
|
|
60
|
+
return (0, SummaryColorTag_1.renderSummaryStringTags)(items);
|
|
60
61
|
};
|
|
61
62
|
exports.renderStyledColumnGradientStyleSummary = renderStyledColumnGradientStyleSummary;
|
|
62
63
|
const StyledColumnWizardGradientSection = (props) => {
|
|
@@ -9,17 +9,22 @@ const FormLayout_1 = tslib_1.__importStar(require("../../../components/FormLayou
|
|
|
9
9
|
const Tag_1 = require("../../../components/Tag");
|
|
10
10
|
const CheckBox_1 = require("../../../components/CheckBox");
|
|
11
11
|
const SimpleButton_1 = tslib_1.__importDefault(require("../../../components/SimpleButton"));
|
|
12
|
+
const ButtonNew_1 = require("../../Components/Buttons/ButtonNew");
|
|
12
13
|
const NewSelect_1 = require("../../../components/NewSelect");
|
|
13
14
|
const NumberInput_1 = require("../../../components/Input/NumberInput");
|
|
14
15
|
const Input_1 = tslib_1.__importDefault(require("../../../components/Input"));
|
|
16
|
+
const popover_1 = require("../../../components/ui/popover");
|
|
17
|
+
const IconSelector_1 = require("../../../components/IconSelector");
|
|
15
18
|
const OnePageAdaptableWizard_1 = require("../../Wizard/OnePageAdaptableWizard");
|
|
16
|
-
const
|
|
19
|
+
const AdaptableContext_1 = require("../../AdaptableContext");
|
|
17
20
|
const AdaptableIconComponent_1 = require("../../Components/AdaptableIconComponent");
|
|
18
21
|
const IconStylePresets_1 = require("../../../Utilities/Helpers/IconStylePresets");
|
|
19
22
|
const IconRenderer_1 = require("../../../agGrid/cellRenderers/IconRenderer");
|
|
20
23
|
const Card_1 = require("../../../components/Card");
|
|
24
|
+
const SummaryColorTag_1 = require("../../Wizard/SummaryColorTag");
|
|
21
25
|
const StyledColumnSliceStyleEditors_1 = require("./StyledColumnSliceStyleEditors");
|
|
22
26
|
const StyledColumnIconPreview_1 = require("./StyledColumnWizardStyleSection/Components/StyledColumnIconPreview");
|
|
27
|
+
const wizardSelection_1 = require("../../../Utilities/wizardSelection");
|
|
23
28
|
const STYLE_FORM_SIZES = ['200px', '1fr'];
|
|
24
29
|
const detectIconKind = (spec) => {
|
|
25
30
|
if (typeof spec === 'string')
|
|
@@ -77,8 +82,9 @@ const getStyledColumnIconMappingsViewValues = (data) => {
|
|
|
77
82
|
if (ic.MatchMode && ic.MatchMode !== 'Exact') {
|
|
78
83
|
items.push(`Match Mode: ${ic.MatchMode}`);
|
|
79
84
|
}
|
|
80
|
-
|
|
81
|
-
|
|
85
|
+
const fallbackMode = ic.FallbackProperties?.Mode;
|
|
86
|
+
if (fallbackMode && fallbackMode !== 'Hide') {
|
|
87
|
+
items.push(`Fallback: ${fallbackMode}`);
|
|
82
88
|
}
|
|
83
89
|
return items;
|
|
84
90
|
};
|
|
@@ -91,9 +97,10 @@ const buildStyledColumnIconStyleSummaryStrings = (ic, options) => {
|
|
|
91
97
|
if (ic.Gap != null) {
|
|
92
98
|
items.push(`Gap: ${ic.Gap}px`);
|
|
93
99
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
items.push(`Cell Text
|
|
100
|
+
const ctp = ic.CellTextProperties;
|
|
101
|
+
if (ctp?.CellText?.length) {
|
|
102
|
+
items.push(`Cell Text: ${formatIconCellTextSummary(ctp.CellText)}`);
|
|
103
|
+
items.push(`Cell Text Position: ${ctp.CellTextPosition ?? 'After'}`);
|
|
97
104
|
}
|
|
98
105
|
else if (options.includeEmptyCellText) {
|
|
99
106
|
items.push('Cell Text: None');
|
|
@@ -131,7 +138,7 @@ const renderStyledColumnIconMappingsSummary = (data) => {
|
|
|
131
138
|
}
|
|
132
139
|
const tagItems = (0, exports.getStyledColumnIconMappingsViewValues)(data);
|
|
133
140
|
const previewMappings = (0, IconRenderer_1.resolveIconStyleMappingsForSummaryPreview)(ic);
|
|
134
|
-
return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-2 twa:items-start", children: [(0,
|
|
141
|
+
return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-2 twa:items-start", children: [(0, SummaryColorTag_1.renderSummaryStringTags)(tagItems), renderMappingsPreview(previewMappings)] }));
|
|
135
142
|
};
|
|
136
143
|
exports.renderStyledColumnIconMappingsSummary = renderStyledColumnIconMappingsSummary;
|
|
137
144
|
const StyledColumnIconMappingsView = ({ data }) => (0, exports.renderStyledColumnIconMappingsSummary)(data);
|
|
@@ -149,7 +156,7 @@ const renderStyledColumnIconStyleSummary = (data) => {
|
|
|
149
156
|
if (!items.length) {
|
|
150
157
|
return (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: "No Style Defined" });
|
|
151
158
|
}
|
|
152
|
-
return (
|
|
159
|
+
return (0, SummaryColorTag_1.renderSummaryStringTags)(items);
|
|
153
160
|
};
|
|
154
161
|
exports.renderStyledColumnIconStyleSummary = renderStyledColumnIconStyleSummary;
|
|
155
162
|
/**
|
|
@@ -183,11 +190,7 @@ const StyledColumnWizardIconSection = (props) => {
|
|
|
183
190
|
const iconStyle = data.IconStyle ?? {};
|
|
184
191
|
const mappings = iconStyle.Mappings ?? [];
|
|
185
192
|
const disabled = !data.ColumnId;
|
|
186
|
-
|
|
187
|
-
// a single row at a time to keep the table tidy and to avoid having
|
|
188
|
-
// multiple editors fighting for screen space.
|
|
189
|
-
const [editingRow, setEditingRow] = React.useState(null);
|
|
190
|
-
const [fallbackIconEditing, setFallbackIconEditing] = React.useState(false);
|
|
193
|
+
const [autoOpenPickerIndex, setAutoOpenPickerIndex] = React.useState(null);
|
|
191
194
|
const update = (patch) => {
|
|
192
195
|
props.onChange({
|
|
193
196
|
...data,
|
|
@@ -247,9 +250,7 @@ const StyledColumnWizardIconSection = (props) => {
|
|
|
247
250
|
};
|
|
248
251
|
const removeMapping = (index) => {
|
|
249
252
|
setMappings(mappings.filter((_, i) => i !== index));
|
|
250
|
-
|
|
251
|
-
// want the wrong row to suddenly appear expanded.
|
|
252
|
-
setEditingRow(null);
|
|
253
|
+
setAutoOpenPickerIndex(null);
|
|
253
254
|
};
|
|
254
255
|
const addMapping = () => {
|
|
255
256
|
const next = [
|
|
@@ -260,18 +261,40 @@ const StyledColumnWizardIconSection = (props) => {
|
|
|
260
261
|
},
|
|
261
262
|
];
|
|
262
263
|
setMappings(next);
|
|
263
|
-
|
|
264
|
-
setEditingRow(next.length - 1);
|
|
264
|
+
setAutoOpenPickerIndex(next.length - 1);
|
|
265
265
|
};
|
|
266
266
|
// -----------------------------------------------------------------------
|
|
267
267
|
// CellText helpers
|
|
268
268
|
// -----------------------------------------------------------------------
|
|
269
|
+
const updateCellTextProperties = (patch) => {
|
|
270
|
+
const merged = {
|
|
271
|
+
...iconStyle.CellTextProperties,
|
|
272
|
+
...patch,
|
|
273
|
+
};
|
|
274
|
+
// Strip the wrapper when both inner properties are unset, so empty state
|
|
275
|
+
// serialises cleanly.
|
|
276
|
+
const isEmpty = !merged.CellText?.length && merged.CellTextPosition == undefined;
|
|
277
|
+
update({ CellTextProperties: isEmpty ? undefined : merged });
|
|
278
|
+
};
|
|
269
279
|
const toggleCellText = (token, checked) => {
|
|
270
|
-
const current = iconStyle.CellText ?? [];
|
|
280
|
+
const current = iconStyle.CellTextProperties?.CellText ?? [];
|
|
271
281
|
const next = checked
|
|
272
282
|
? Array.from(new Set([...current, token]))
|
|
273
283
|
: current.filter((t) => t !== token);
|
|
274
|
-
|
|
284
|
+
updateCellTextProperties({ CellText: next });
|
|
285
|
+
};
|
|
286
|
+
// -----------------------------------------------------------------------
|
|
287
|
+
// Fallback helpers
|
|
288
|
+
// -----------------------------------------------------------------------
|
|
289
|
+
const updateFallbackProperties = (patch) => {
|
|
290
|
+
const merged = {
|
|
291
|
+
...iconStyle.FallbackProperties,
|
|
292
|
+
...patch,
|
|
293
|
+
};
|
|
294
|
+
// Strip the wrapper when there's nothing to remember; the renderer
|
|
295
|
+
// already defaults to `Mode: 'Hide'` when `FallbackProperties` is unset.
|
|
296
|
+
const isEmpty = (merged.Mode == undefined || merged.Mode === 'Hide') && merged.Icon == undefined;
|
|
297
|
+
update({ FallbackProperties: isEmpty ? undefined : merged });
|
|
275
298
|
};
|
|
276
299
|
const toggleToolTipText = (token, checked) => {
|
|
277
300
|
const current = iconStyle.ToolTipText ?? [];
|
|
@@ -287,27 +310,27 @@ const StyledColumnWizardIconSection = (props) => {
|
|
|
287
310
|
const presetMappingsPreview = iconStyle.Preset
|
|
288
311
|
? (0, IconStylePresets_1.getIconStylePresetMappings)(iconStyle.Preset)
|
|
289
312
|
: [];
|
|
290
|
-
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { children: [(0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Presets" }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: ["Contains most commonly used values; add anything missing in", ' ', (0, jsx_runtime_1.jsx)("strong", { children: "Custom mappings" }), " below"] })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsxs)(FormLayout_1.default, { children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Select Preset:", children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: "twa:gap-2 twa:flex-wrap", children: [['Flags', 'Currencies', 'Trend', 'Status'].map((p) => ((0, jsx_runtime_1.jsx)(SimpleButton_1.default, {
|
|
313
|
+
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { children: [(0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Presets" }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: ["Contains most commonly used values; add anything missing in", ' ', (0, jsx_runtime_1.jsx)("strong", { children: "Custom mappings" }), " below"] })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsxs)(FormLayout_1.default, { children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Select Preset:", children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: "twa:gap-2 twa:flex-wrap", children: [['Flags', 'Currencies', 'Trend', 'Status'].map((p) => ((0, jsx_runtime_1.jsx)(SimpleButton_1.default, { ...(0, wizardSelection_1.wizardSelectionSimpleButtonProps)(iconStyle.Preset === p), onClick: () => applyPreset(p), children: IconStylePresets_1.ICON_STYLE_PRESET_LABELS[p] }, p))), iconStyle.Preset && ((0, jsx_runtime_1.jsx)(SimpleButton_1.default, { variant: "text", icon: "undo", tooltip: "Stop using this preset (custom mappings are kept)", onClick: clearPreset, children: "Clear preset" }))] }) }), iconStyle.Preset && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Active:", children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-1 twa:max-w-[640px]", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70", children: [IconStylePresets_1.ICON_STYLE_PRESET_DESCRIPTIONS[iconStyle.Preset], " \u2014", ' ', presetMappingsPreview.length, " mappings shipped with the preset."] }), renderMappingsPreview(presetMappingsPreview)] }) }))] }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Custom Mappings" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: iconStyle.Preset
|
|
291
314
|
? 'Add any mappings that are not present in the selected preset'
|
|
292
315
|
: 'Add custom mappings entries (icon, key and description)' })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card.Body, { children: [mappings.length === 0 ? ((0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-60 twa:max-w-[520px] twa:mb-2", children: iconStyle.Preset
|
|
293
316
|
? 'No custom mappings — the preset above is being used as-is'
|
|
294
|
-
: 'No mappings applied - select a preset above or click "Add Mapping" to define your own' })) : ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:max-w-[720px]", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: "twa:gap-2 twa:px-2 twa:py-1 twa:text-xs twa:opacity-60", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:w-[44px] twa:shrink-0" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:min-w-0 twa:flex-1", children: "Key" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:min-w-0 twa:flex-1", children: "Description" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:w-8 twa:shrink-0" })] }), mappings.map((m, i) => {
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
{ value: 'Exact', label: 'Exact
|
|
317
|
+
: 'No mappings applied - select a preset above or click "Add Mapping" to define your own' })) : ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:max-w-[720px]", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: "twa:gap-2 twa:px-2 twa:py-1 twa:text-xs twa:opacity-60", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:w-[44px] twa:shrink-0" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:min-w-0 twa:flex-1", children: "Key" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:min-w-0 twa:flex-1", children: "Description" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:w-8 twa:shrink-0" })] }), mappings.map((m, i) => ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: "twa:gap-2 twa:px-2 twa:py-1 twa:rounded twa:hover:bg-[var(--ab-color-primarylight)]", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:w-[44px] twa:shrink-0 twa:flex twa:justify-center", children: (0, jsx_runtime_1.jsx)(IconPickerButton, { value: m.Icon, defaultOpen: autoOpenPickerIndex === i, onOpenChange: (open) => {
|
|
318
|
+
if (!open && autoOpenPickerIndex === i) {
|
|
319
|
+
setAutoOpenPickerIndex(null);
|
|
320
|
+
}
|
|
321
|
+
}, onChange: (next) => updateMapping(i, { Icon: next }) }) }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:min-w-0 twa:flex-1", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: "twa:w-full", value: String(m.Key ?? ''), onChange: (e) => updateMapping(i, { Key: e.target.value }), placeholder: "Cell value" }) }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:min-w-0 twa:flex-1", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: "twa:w-full", value: m.Description ?? '', onChange: (e) => updateMapping(i, {
|
|
322
|
+
Description: e.target.value || undefined,
|
|
323
|
+
}), placeholder: "Tooltip label (optional)" }) }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:w-8 twa:shrink-0 twa:flex twa:justify-center", children: (0, jsx_runtime_1.jsx)(SimpleButton_1.default, { icon: "delete", variant: "text", tooltip: "Remove mapping", onClick: () => removeMapping(i) }) })] }, i)))] })), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:mt-2", children: (0, jsx_runtime_1.jsx)(ButtonNew_1.ButtonNew, { onClick: addMapping, children: "Add Mapping" }) })] })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Matching" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "How keys are compared to cell values, and what to render when no mapping matches" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsxs)(FormLayout_1.default, { children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Match Mode:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[200px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", value: iconStyle.MatchMode ?? 'Exact', onValueChange: (v) => update({ MatchMode: v }), items: [
|
|
324
|
+
{ value: 'Exact', label: 'Exact Match Required' },
|
|
302
325
|
{ value: 'CaseInsensitive', label: 'Case-insensitive (strings)' },
|
|
303
|
-
] }) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Fallback:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[200px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", value: iconStyle.
|
|
326
|
+
] }) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Fallback:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[200px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", value: iconStyle.FallbackProperties?.Mode ?? 'Hide', onValueChange: (v) => updateFallbackProperties({ Mode: v }), items: [
|
|
304
327
|
{ value: 'Hide', label: 'Show No Value' },
|
|
305
328
|
{ value: 'ShowText', label: 'Show Raw Value' },
|
|
306
329
|
{ value: 'Icon', label: 'Show Fallback Icon' },
|
|
307
|
-
] }) }) }), iconStyle.
|
|
330
|
+
] }) }) }), iconStyle.FallbackProperties?.Mode === 'Icon' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Fallback Icon:", children: (0, jsx_runtime_1.jsx)(IconPickerButton, { value: iconStyle.FallbackProperties?.Icon, onChange: (next) => updateFallbackProperties({ Icon: next }) }) }))] }) })] })] }));
|
|
308
331
|
}
|
|
309
332
|
// ----- Style variant (wizard step title: "Style") ------------------------
|
|
310
|
-
const cellText = iconStyle.CellText ?? [];
|
|
333
|
+
const cellText = iconStyle.CellTextProperties?.CellText ?? [];
|
|
311
334
|
const toolTipText = iconStyle.ToolTipText ?? [];
|
|
312
335
|
const cellTextDisabled = cellText.length === 0;
|
|
313
336
|
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { children: [(0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsx)(Card_1.Card.Title, { children: "Sizing" }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsxs)(FormLayout_1.default, { sizes: [...STYLE_FORM_SIZES], children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Icon Size (px):", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[100px]", children: (0, jsx_runtime_1.jsx)(Input_1.default, { type: "number", min: 8, step: 1, value: iconStyle.Size ?? '', placeholder: "18", className: "twa:w-full", onChange: (event) => {
|
|
@@ -320,7 +343,9 @@ const StyledColumnWizardIconSection = (props) => {
|
|
|
320
343
|
update({
|
|
321
344
|
Size: Number.isFinite(parsed) && parsed >= 8 ? parsed : undefined,
|
|
322
345
|
});
|
|
323
|
-
} }) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Gap (px):", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[100px]", children: (0, jsx_runtime_1.jsx)(NumberInput_1.NumberInput, { value: iconStyle.Gap ?? '', placeholder: "4", min: 0, step: 1, onChange: (value) => update({ Gap: typeof value === 'number' ? value : undefined }) }) }) })] }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Cell Text" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Optionally show the raw value or the matched description alongside the icon (e.g. flag plus label)." })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card.Body, { children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.default, { sizes: [...STYLE_FORM_SIZES], children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { label: "Cell Display:", children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { checked: cellText.includes('CellValue'), onChange: (checked) => toggleCellText('CellValue', checked), children: "Cell Value" }), ' ', (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { className: "twa:ml-3", checked: cellText.includes('IconDescription'), onChange: (checked) => toggleCellText('IconDescription', checked), children: "Description" })] }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Position:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[160px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", value: iconStyle.CellTextPosition ?? 'After', onValueChange: (v) =>
|
|
346
|
+
} }) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Gap (px):", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[100px]", children: (0, jsx_runtime_1.jsx)(NumberInput_1.NumberInput, { value: iconStyle.Gap ?? '', placeholder: "4", min: 0, step: 1, onChange: (value) => update({ Gap: typeof value === 'number' ? value : undefined }) }) }) })] }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Cell Text" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Optionally show the raw value or the matched description alongside the icon (e.g. flag plus label)." })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card.Body, { children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.default, { sizes: [...STYLE_FORM_SIZES], children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { label: "Cell Display:", children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { checked: cellText.includes('CellValue'), onChange: (checked) => toggleCellText('CellValue', checked), children: "Cell Value" }), ' ', (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { className: "twa:ml-3", checked: cellText.includes('IconDescription'), onChange: (checked) => toggleCellText('IconDescription', checked), children: "Description" })] }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Position:", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[160px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", value: iconStyle.CellTextProperties?.CellTextPosition ?? 'After', onValueChange: (v) => updateCellTextProperties({
|
|
347
|
+
CellTextPosition: v,
|
|
348
|
+
}), items: [
|
|
324
349
|
{ value: 'Before', label: 'Before' },
|
|
325
350
|
{ value: 'After', label: 'After' },
|
|
326
351
|
{ value: 'Above', label: 'Above' },
|
|
@@ -328,7 +353,30 @@ const StyledColumnWizardIconSection = (props) => {
|
|
|
328
353
|
] }) }) })] }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: `twa:mt-3 twa:pt-3 twa:border-t twa:border-foreground/15 ${cellTextDisabled ? 'twa:opacity-50' : ''}`, children: (0, jsx_runtime_1.jsx)(StyledColumnSliceStyleEditors_1.StyledColumnFontStyleEditor, { api: api, disabled: disabled || cellTextDisabled, value: iconStyle.Font, onChange: onFontChange }) })] })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:mb-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Tooltip" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Choose whether and how to display a tooltip" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsx)(FormLayout_1.default, { sizes: [...STYLE_FORM_SIZES], children: (0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { label: "Tooltip Display:", children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { checked: toolTipText.includes('CellValue'), onChange: (checked) => toggleToolTipText('CellValue', checked), children: "Cell Value" }), ' ', (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { className: "twa:ml-3", checked: toolTipText.includes('IconDescription'), onChange: (checked) => toggleToolTipText('IconDescription', checked), children: "Description" })] }) }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Cell" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Optional cell box styling (overrides Format Column properties)" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsx)(StyledColumnSliceStyleEditors_1.StyledColumnCellStyleEditor, { api: api, disabled: disabled, value: iconStyle.Cell, onChange: onCellChange }) })] }), (0, jsx_runtime_1.jsx)(StyledColumnIconPreview_1.StyledColumnIconPreviewCard, { data: data })] }));
|
|
329
354
|
};
|
|
330
355
|
exports.StyledColumnWizardIconSection = StyledColumnWizardIconSection;
|
|
356
|
+
// ---------------------------------------------------------------------------
|
|
357
|
+
// Icon picker — click-to-open popover (closes on outside click or system pick)
|
|
358
|
+
// ---------------------------------------------------------------------------
|
|
359
|
+
const ICON_KIND_OPTIONS = [
|
|
360
|
+
{ value: 'Emoji', label: 'Emoji' },
|
|
361
|
+
{ value: 'System', label: 'Built-in' },
|
|
362
|
+
{ value: 'Url', label: 'Image URL' },
|
|
363
|
+
];
|
|
364
|
+
const IconPickerButton = (props) => {
|
|
365
|
+
const [open, setOpen] = React.useState(props.defaultOpen ?? false);
|
|
366
|
+
React.useEffect(() => {
|
|
367
|
+
if (props.defaultOpen) {
|
|
368
|
+
setOpen(true);
|
|
369
|
+
}
|
|
370
|
+
}, [props.defaultOpen]);
|
|
371
|
+
const handleOpenChange = (next) => {
|
|
372
|
+
setOpen(next);
|
|
373
|
+
props.onOpenChange?.(next);
|
|
374
|
+
};
|
|
375
|
+
return ((0, jsx_runtime_1.jsxs)(popover_1.Popover, { open: open, onOpenChange: handleOpenChange, children: [(0, jsx_runtime_1.jsx)(popover_1.PopoverTrigger, { nativeButton: true, render: (0, jsx_runtime_1.jsx)(SimpleButton_1.default, { type: "button", tooltip: "Choose icon", ...(0, wizardSelection_1.wizardSelectionSimpleButtonProps)(open, 'twa:!min-w-[40px] twa:!w-10 twa:!h-10 twa:!p-0 twa:justify-center twa:items-center'), children: previewIcon(props.value) }) }), (0, jsx_runtime_1.jsx)(popover_1.PopoverContent, { align: "start", side: "bottom", sideOffset: 8, className: "twa:!w-[300px] twa:max-w-[300px] twa:p-3 twa:gap-0", children: (0, jsx_runtime_1.jsx)(IconSpecEditorFields, { value: props.value, onChange: props.onChange, onSystemIconSelected: () => handleOpenChange(false) }) })] }));
|
|
376
|
+
};
|
|
331
377
|
const IconSpecEditorFields = (props) => {
|
|
378
|
+
const adaptable = (0, AdaptableContext_1.useAdaptable)();
|
|
379
|
+
const customIcons = adaptable.api.userInterfaceApi.getCustomIcons();
|
|
332
380
|
const kind = detectIconKind(props.value);
|
|
333
381
|
const [pendingKind, setPendingKind] = React.useState(null);
|
|
334
382
|
const prevValueRef = React.useRef(props.value);
|
|
@@ -356,13 +404,10 @@ const IconSpecEditorFields = (props) => {
|
|
|
356
404
|
? props.value.name
|
|
357
405
|
: undefined;
|
|
358
406
|
const urlSrc = isObject && 'src' in props.value ? props.value.src : '';
|
|
359
|
-
return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-
|
|
360
|
-
{ value: 'Emoji', label: 'Emoji / text' },
|
|
361
|
-
{ value: 'System', label: 'System' },
|
|
362
|
-
{ value: 'Url', label: 'Image URL' },
|
|
363
|
-
] }), effectiveKind === 'Emoji' && ((0, jsx_runtime_1.jsx)(Input_1.default, { className: "twa:w-full", value: typeof props.value === 'string' ? props.value : '', onChange: (e) => props.onChange(e.target.value), placeholder: "\uD83C\uDDFA\uD83C\uDDF8 $ \u2B06" })), effectiveKind === 'System' && ((0, jsx_runtime_1.jsx)(AdaptableIconSelector_1.AdaptableIconSelector, { clearable: false, value: systemName, onChange: (iconName) => {
|
|
407
|
+
return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-3 twa:w-full", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:grid twa:grid-cols-3 twa:gap-1 twa:w-full", role: "tablist", "aria-label": "Icon type", children: ICON_KIND_OPTIONS.map((option) => ((0, jsx_runtime_1.jsx)(SimpleButton_1.default, { type: "button", role: "tab", "aria-selected": effectiveKind === option.value, ...(0, wizardSelection_1.wizardSelectionSimpleButtonProps)(effectiveKind === option.value, 'twa:w-full twa:min-h-[32px] twa:h-8 twa:px-1 twa:text-xs twa:leading-tight'), onClick: () => onKindChange(option.value), children: option.label }, option.value))) }), effectiveKind === 'Emoji' && ((0, jsx_runtime_1.jsx)(Input_1.default, { className: "twa:w-full", value: typeof props.value === 'string' ? props.value : '', onChange: (e) => props.onChange(e.target.value), placeholder: "\uD83C\uDDFA\uD83C\uDDF8 $ \u2B06" })), effectiveKind === 'System' && ((0, jsx_runtime_1.jsx)(IconSelector_1.IconSelectorPanel, { className: "twa:p-0", showTitle: false, customIcons: customIcons, value: systemName, onChange: (iconName) => {
|
|
364
408
|
if (iconName) {
|
|
365
409
|
props.onChange({ name: iconName });
|
|
410
|
+
props.onSystemIconSelected?.();
|
|
366
411
|
}
|
|
367
412
|
} })), effectiveKind === 'Url' && ((0, jsx_runtime_1.jsx)(Input_1.default, { className: "twa:w-full", value: urlSrc, onChange: (e) => props.onChange({ src: e.target.value }), placeholder: "https://\u2026" }))] }));
|
|
368
413
|
};
|