@adaptabletools/adaptable 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.
Files changed (396) hide show
  1. package/icons/sort-asc.svg +1 -1
  2. package/index.css +828 -263
  3. package/package.json +1 -1
  4. package/src/AdaptableOptions/DataSetOptions.d.ts +26 -2
  5. package/src/AdaptableOptions/DefaultAdaptableOptions.js +0 -1
  6. package/src/AdaptableOptions/SettingsPanelOptions.d.ts +42 -10
  7. package/src/AdaptableState/Common/AdaptableFormat.d.ts +7 -0
  8. package/src/AdaptableState/Common/AdaptableMessageType.d.ts +1 -1
  9. package/src/AdaptableState/Common/Enums.d.ts +1 -1
  10. package/src/AdaptableState/Common/Enums.js +1 -1
  11. package/src/AdaptableState/StyledColumnState.d.ts +8 -850
  12. package/src/AdaptableState/StyledColumnState.js +1 -9
  13. package/src/AdaptableState/StyledColumns/BadgeStyle.d.ts +143 -0
  14. package/src/AdaptableState/StyledColumns/BadgeStyle.js +9 -0
  15. package/src/AdaptableState/StyledColumns/BulletChartStyle.d.ts +147 -0
  16. package/src/AdaptableState/StyledColumns/Common/BarChartCellText.d.ts +60 -0
  17. package/src/AdaptableState/StyledColumns/Common/BarChartCellText.js +6 -0
  18. package/src/AdaptableState/StyledColumns/Common/BarChartMarker.d.ts +24 -0
  19. package/src/AdaptableState/StyledColumns/Common/BarChartMarker.js +5 -0
  20. package/src/AdaptableState/StyledColumns/Common/CellTextOptions.d.ts +13 -0
  21. package/src/AdaptableState/StyledColumns/Common/CellTextOptions.js +6 -0
  22. package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.d.ts +79 -0
  23. package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.js +9 -0
  24. package/src/AdaptableState/StyledColumns/GradientStyle.d.ts +48 -0
  25. package/src/AdaptableState/StyledColumns/GradientStyle.js +1 -0
  26. package/src/AdaptableState/StyledColumns/IconStyle.d.ts +158 -0
  27. package/src/AdaptableState/StyledColumns/IconStyle.js +1 -0
  28. package/src/AdaptableState/StyledColumns/PercentBarStyle.d.ts +32 -0
  29. package/src/AdaptableState/StyledColumns/PercentBarStyle.js +1 -0
  30. package/src/AdaptableState/StyledColumns/RangeBarStyle.d.ts +155 -0
  31. package/src/AdaptableState/StyledColumns/RangeBarStyle.js +1 -0
  32. package/src/AdaptableState/StyledColumns/RatingStyle.d.ts +111 -0
  33. package/src/AdaptableState/StyledColumns/RatingStyle.js +1 -0
  34. package/src/AdaptableState/StyledColumns/SparklineStyle.d.ts +21 -0
  35. package/src/AdaptableState/StyledColumns/SparklineStyle.js +1 -0
  36. package/src/Api/ColumnScopeApi.d.ts +1 -1
  37. package/src/Api/Implementation/ColumnScopeApiImpl.d.ts +1 -1
  38. package/src/Api/Internal/AlertInternalApi.js +1 -1
  39. package/src/Api/Internal/DataSetInternalApi.d.ts +3 -0
  40. package/src/Api/Internal/DataSetInternalApi.js +73 -13
  41. package/src/Api/Internal/StyledColumnInternalApi.d.ts +3 -1
  42. package/src/Redux/Store/AdaptableStore.js +6 -4
  43. package/src/Strategy/CalculatedColumnModule.js +1 -0
  44. package/src/Strategy/ColumnFilterModule.js +1 -0
  45. package/src/Strategy/FlashingCellModule.js +6 -2
  46. package/src/Strategy/FormatColumnModule.js +2 -2
  47. package/src/Strategy/FreeTextColumnModule.js +38 -28
  48. package/src/Strategy/Interface/IModule.d.ts +3 -1
  49. package/src/Strategy/LayoutModule.js +15 -66
  50. package/src/Strategy/StyledColumnModule.js +12 -29
  51. package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.d.ts +1 -0
  52. package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.js +1 -0
  53. package/src/Strategy/Utilities/Export/getExportColumnsViewItems.d.ts +2 -0
  54. package/src/Strategy/Utilities/Export/getExportColumnsViewItems.js +14 -0
  55. package/src/Strategy/Utilities/Export/getExportRowsViewItems.d.ts +1 -0
  56. package/src/Strategy/Utilities/Export/getExportRowsViewItems.js +3 -0
  57. package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.d.ts +11 -0
  58. package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.js +105 -0
  59. package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.d.ts +48 -0
  60. package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.js +166 -0
  61. package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.d.ts +1 -0
  62. package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.js +1 -0
  63. package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.d.ts +26 -0
  64. package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.js +85 -0
  65. package/src/Utilities/Defaults/DefaultSettingsPanel.d.ts +3 -5
  66. package/src/Utilities/Defaults/DefaultSettingsPanel.js +46 -41
  67. package/src/Utilities/Helpers/FormatHelper.js +3 -0
  68. package/src/Utilities/Helpers/IconStylePresets.d.ts +1 -1
  69. package/src/Utilities/Helpers/ScheduleHelper.js +2 -0
  70. package/src/Utilities/Helpers/StyleHelper.d.ts +18 -0
  71. package/src/Utilities/Helpers/StyleHelper.js +27 -0
  72. package/src/Utilities/Helpers/StyledColumnGradientHelper.d.ts +3 -1
  73. package/src/Utilities/Helpers/StyledColumnGradientHelper.js +7 -5
  74. package/src/Utilities/Helpers/barChartCellText.d.ts +63 -0
  75. package/src/Utilities/Helpers/barChartCellText.js +316 -0
  76. package/src/Utilities/Helpers/percentBarPreviewHelper.d.ts +2 -1
  77. package/src/Utilities/Helpers/percentBarPreviewHelper.js +3 -8
  78. package/src/Utilities/Helpers/resolveSettingsPanelNavigation.d.ts +3 -0
  79. package/src/Utilities/Helpers/resolveSettingsPanelNavigation.js +15 -0
  80. package/src/Utilities/getScopeViewItems.js +2 -0
  81. package/src/Utilities/wizardSelection.d.ts +10 -0
  82. package/src/Utilities/wizardSelection.js +15 -0
  83. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +2 -2
  84. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +2 -2
  85. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +3 -3
  86. package/src/View/Alert/AlertViewPanel.js +2 -2
  87. package/src/View/Alert/Utilities/getAlertButtonStyle.js +7 -4
  88. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.d.ts +0 -1
  89. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +0 -4
  90. package/src/View/Alert/Wizard/AlertButtonsEditor.js +160 -126
  91. package/src/View/Alert/Wizard/AlertMessageWizardSection.d.ts +1 -1
  92. package/src/View/Alert/Wizard/AlertMessageWizardSection.js +1 -2
  93. package/src/View/Alert/Wizard/AlertNotificationWizardSection.d.ts +1 -1
  94. package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +4 -5
  95. package/src/View/Alert/Wizard/AlertScheduledWizardSection.d.ts +1 -1
  96. package/src/View/Alert/Wizard/AlertScheduledWizardSection.js +1 -2
  97. package/src/View/Alert/Wizard/AlertTypeWizardSection.d.ts +1 -1
  98. package/src/View/Alert/Wizard/AlertTypeWizardSection.js +31 -7
  99. package/src/View/Alert/Wizard/AlertWizard.js +13 -5
  100. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.d.ts +2 -1
  101. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +4 -14
  102. package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
  103. package/src/View/BulkUpdate/BulkUpdateViewPanel.js +4 -6
  104. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.d.ts +1 -1
  105. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +1 -2
  106. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +1 -1
  107. package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.js +30 -4
  108. package/src/View/CellSummary/CellSummaryViewPanel.js +4 -4
  109. package/src/View/Charting/ShowChartButton.js +8 -8
  110. package/src/View/ColumnInfo/ColumnInfo.js +21 -1
  111. package/src/View/Components/AdaptableObjectCollection/index.js +2 -2
  112. package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +3 -2
  113. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +7 -6
  114. package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.d.ts +2 -0
  115. package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.js +2 -0
  116. package/src/View/Components/AdaptableObjectRow/index.js +2 -2
  117. package/src/View/Components/Buttons/ButtonBase/index.js +2 -3
  118. package/src/View/Components/Buttons/ButtonNew.d.ts +2 -0
  119. package/src/View/Components/Buttons/ButtonNew.js +1 -1
  120. package/src/View/Components/Buttons/EntityListActionButtons.js +3 -3
  121. package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.d.ts +1 -0
  122. package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +9 -9
  123. package/src/View/Components/ColumnFilter/ColumnFilter.js +16 -4
  124. package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +2 -2
  125. package/src/View/Components/ColumnSelector/index.d.ts +12 -0
  126. package/src/View/Components/ColumnSelector/index.js +30 -6
  127. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +2 -2
  128. package/src/View/Components/ModuleValueSelector/index.js +2 -1
  129. package/src/View/Components/NewScopeComponent.js +4 -9
  130. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +5 -4
  131. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +4 -4
  132. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +2 -2
  133. package/src/View/Components/Popups/AdaptablePopup/Navigation.d.ts +3 -2
  134. package/src/View/Components/Popups/AdaptablePopup/Navigation.js +38 -28
  135. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +3 -3
  136. package/src/View/Components/Popups/AdaptablePopup/TopBar.js +2 -2
  137. package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.d.ts +11 -0
  138. package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.js +1 -0
  139. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.d.ts +3 -1
  140. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +25 -27
  141. package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -1
  142. package/src/View/Components/RangesComponent.d.ts +4 -5
  143. package/src/View/Components/RangesComponent.js +95 -66
  144. package/src/View/Components/ReorderDraggable/index.js +2 -2
  145. package/src/View/Components/Selectors/BulkUpdateValueSelector.d.ts +0 -2
  146. package/src/View/Components/Selectors/BulkUpdateValueSelector.js +3 -3
  147. package/src/View/Components/StyleComponent.js +32 -65
  148. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +10 -7
  149. package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +3 -13
  150. package/src/View/Components/ToolPanel/ToolPanelPopup.js +5 -81
  151. package/src/View/Components/ToolPanel/ToolPanelPopupSections.d.ts +17 -0
  152. package/src/View/Components/ToolPanel/ToolPanelPopupSections.js +76 -0
  153. package/src/View/Components/ValueSelector/index.d.ts +29 -0
  154. package/src/View/Components/ValueSelector/index.js +113 -30
  155. package/src/View/Components/wizardColumnListStyles.d.ts +10 -0
  156. package/src/View/Components/wizardColumnListStyles.js +10 -0
  157. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.d.ts +2 -1
  158. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +5 -7
  159. package/src/View/CustomSort/Wizard/CustomSortWizard.js +2 -2
  160. package/src/View/Dashboard/DashboardPopup.d.ts +1 -11
  161. package/src/View/Dashboard/DashboardPopup.js +3 -67
  162. package/src/View/Dashboard/DashboardPopupSections.d.ts +20 -0
  163. package/src/View/Dashboard/DashboardPopupSections.js +68 -0
  164. package/src/View/Dashboard/PinnedToolbarsSelector.js +2 -2
  165. package/src/View/DataChangeHistory/DataChangeHistoryPopup.d.ts +1 -6
  166. package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +8 -20
  167. package/src/View/DataChangeHistory/DataChangeHistoryTable.d.ts +8 -0
  168. package/src/View/DataChangeHistory/DataChangeHistoryTable.js +94 -0
  169. package/src/View/DataChangeHistory/buildActionColumnButton.d.ts +5 -3
  170. package/src/View/DataChangeHistory/buildActionColumnButton.js +30 -39
  171. package/src/View/DataChangeHistory/dataChangeHistoryHelpers.d.ts +15 -0
  172. package/src/View/DataChangeHistory/dataChangeHistoryHelpers.js +37 -0
  173. package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -1
  174. package/src/View/DataImport/DataImportWizard/sections/ColumnsSection.js +32 -19
  175. package/src/View/DataImport/DataImportWizard/sections/DataPreview.js +1 -1
  176. package/src/View/DataSet/DataSetViewPanel.d.ts +2 -2
  177. package/src/View/Export/ExportDestinationPicker.js +3 -3
  178. package/src/View/Export/ExportSchedulesTab.js +3 -4
  179. package/src/View/Export/ExportViewPanel.js +2 -2
  180. package/src/View/Export/Wizard/ReportColumnsWizardSection.d.ts +2 -1
  181. package/src/View/Export/Wizard/ReportColumnsWizardSection.js +4 -9
  182. package/src/View/Export/Wizard/ReportRowsWizardSection.d.ts +2 -1
  183. package/src/View/Export/Wizard/ReportRowsWizardSection.js +3 -6
  184. package/src/View/Filter/FilterViewPanel.js +1 -1
  185. package/src/View/FlashingCell/FlashingCellStyle.d.ts +4 -2
  186. package/src/View/FlashingCell/FlashingCellStyle.js +4 -2
  187. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.d.ts +2 -1
  188. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +7 -11
  189. package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.d.ts +9 -0
  190. package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.js +5 -0
  191. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.d.ts +1 -1
  192. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +1 -0
  193. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.d.ts +0 -5
  194. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +1 -5
  195. package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +2 -3
  196. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +1 -1
  197. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +99 -42
  198. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.d.ts +0 -1
  199. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +0 -4
  200. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +56 -15
  201. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +1 -1
  202. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.d.ts +2 -3
  203. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +5 -8
  204. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +8 -13
  205. package/src/View/FreeTextColumn/Utilities/getFreeTextColumnSettingsTags.js +3 -2
  206. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +1 -2
  207. package/src/View/GridFilter/GridFilterPopupUI/index.js +3 -2
  208. package/src/View/GridFilter/GridFilterViewPanel.js +5 -5
  209. package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +2 -2
  210. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -2
  211. package/src/View/Layout/LayoutViewPanel.js +1 -1
  212. package/src/View/Layout/Wizard/LayoutWizard.js +24 -28
  213. package/src/View/Layout/Wizard/sections/AggregationsSection.d.ts +13 -1
  214. package/src/View/Layout/Wizard/sections/AggregationsSection.js +73 -33
  215. package/src/View/Layout/Wizard/sections/ColumnsSection.d.ts +4 -1
  216. package/src/View/Layout/Wizard/sections/ColumnsSection.js +155 -276
  217. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.d.ts +4 -1
  218. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +148 -145
  219. package/src/View/Layout/Wizard/sections/PivotColumnsSection.d.ts +5 -2
  220. package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +24 -12
  221. package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.d.ts +4 -1
  222. package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +23 -12
  223. package/src/View/Layout/Wizard/sections/RowGroupingSection.d.ts +5 -2
  224. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +19 -12
  225. package/src/View/Layout/Wizard/sections/RowSelectionSection.js +8 -4
  226. package/src/View/Layout/Wizard/sections/RowSummarySection.js +132 -106
  227. package/src/View/Layout/Wizard/sections/SortSection.d.ts +12 -2
  228. package/src/View/Layout/Wizard/sections/SortSection.js +41 -17
  229. package/src/View/Layout/Wizard/sections/columnLayoutCards.d.ts +20 -0
  230. package/src/View/Layout/Wizard/sections/columnLayoutCards.js +159 -0
  231. package/src/View/Layout/Wizard/sections/columnLayoutHelpers.d.ts +30 -0
  232. package/src/View/Layout/Wizard/sections/columnLayoutHelpers.js +201 -0
  233. package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.d.ts +8 -0
  234. package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.js +63 -0
  235. package/src/View/Layout/Wizard/sections/layoutWizardColumns.d.ts +11 -0
  236. package/src/View/Layout/Wizard/sections/layoutWizardColumns.js +52 -0
  237. package/src/View/License/LicenseWatermark.js +1 -1
  238. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.d.ts +1 -1
  239. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +1 -2
  240. package/src/View/Note/NoteEditor.js +2 -2
  241. package/src/View/QuickSearch/QuickSearchPopup.js +2 -3
  242. package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +1 -1
  243. package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +1 -1
  244. package/src/View/SmartEdit/SmartEditPopup.js +2 -2
  245. package/src/View/SmartEdit/SmartEditViewPanel.js +2 -2
  246. package/src/View/StateManagement/StateManagementPopup.js +1 -1
  247. package/src/View/StateManagement/components/ExportDropdown.d.ts +2 -2
  248. package/src/View/StateManagement/components/ExportDropdown.js +12 -12
  249. package/src/View/StatusBar/StatusBarPanel.js +2 -2
  250. package/src/View/StatusBar/StatusBarPopup.js +33 -5
  251. package/src/View/StatusBar/statusBarPanelHelpers.d.ts +2 -0
  252. package/src/View/StatusBar/statusBarPanelHelpers.js +7 -0
  253. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.d.ts +3 -1
  254. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.js +14 -11
  255. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.d.ts +2 -2
  256. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +143 -119
  257. package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.d.ts +1 -3
  258. package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.js +8 -14
  259. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +2 -1
  260. package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.d.ts +5 -0
  261. package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.js +50 -0
  262. package/src/View/StyledColumn/Wizard/StyledColumnWizard.d.ts +2 -0
  263. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +26 -5
  264. package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +76 -70
  265. package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.js +2 -1
  266. package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +83 -38
  267. package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +173 -76
  268. package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.js +2 -1
  269. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.d.ts +1 -1
  270. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.js +32 -46
  271. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextLayoutEditor.d.ts +9 -0
  272. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextLayoutEditor.js +35 -0
  273. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextPreview.d.ts +23 -0
  274. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextPreview.js +57 -0
  275. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BulletRangesSummaryPreview.d.ts +1 -1
  276. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.d.ts +2 -1
  277. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/RangeBarRangesSummaryPreview.d.ts +1 -1
  278. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +3 -2
  279. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.d.ts +2 -1
  280. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.js +13 -17
  281. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.d.ts +2 -1
  282. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.js +5 -5
  283. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnIconPreview.js +2 -2
  284. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnPercentBarPreview.js +14 -7
  285. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.js +11 -17
  286. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.d.ts +2 -1
  287. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +27 -58
  288. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +94 -7
  289. package/src/View/UIHelper.d.ts +0 -2
  290. package/src/View/UIHelper.js +8 -23
  291. package/src/View/Wizard/CollapsibleWizardCard.d.ts +68 -0
  292. package/src/View/Wizard/CollapsibleWizardCard.js +81 -0
  293. package/src/View/Wizard/OnePageWizards.js +6 -6
  294. package/src/View/Wizard/SummaryColorTag.d.ts +24 -0
  295. package/src/View/Wizard/SummaryColorTag.js +67 -0
  296. package/src/View/Wizard/WizardTypeSelection.d.ts +34 -0
  297. package/src/View/Wizard/WizardTypeSelection.js +31 -0
  298. package/src/View/Wizard/rowGroupSummaryTags.d.ts +18 -0
  299. package/src/View/Wizard/rowGroupSummaryTags.js +14 -0
  300. package/src/View/Wizard/scopeSummaryTags.d.ts +6 -0
  301. package/src/View/Wizard/scopeSummaryTags.js +33 -0
  302. package/src/agGrid/AgGridAdapter.js +0 -5
  303. package/src/agGrid/AgGridColumnAdapter.js +4 -3
  304. package/src/agGrid/cellRenderers/ActionColumnRenderer.js +4 -7
  305. package/src/agGrid/cellRenderers/BadgeRenderer.js +7 -5
  306. package/src/agGrid/cellRenderers/BulletChartRenderer.js +43 -42
  307. package/src/agGrid/cellRenderers/IconRenderer.d.ts +2 -1
  308. package/src/agGrid/cellRenderers/IconRenderer.js +13 -11
  309. package/src/agGrid/cellRenderers/PercentBarRenderer.js +24 -96
  310. package/src/agGrid/cellRenderers/RangeBarRenderer.js +49 -46
  311. package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +1 -1
  312. package/src/components/Card/index.js +5 -6
  313. package/src/components/CheckBox/index.js +2 -3
  314. package/src/components/CodeBlock/index.js +2 -2
  315. package/src/components/ColorPicker/ColorPicker.d.ts +1 -0
  316. package/src/components/ColorPicker/ColorPicker.js +8 -6
  317. package/src/components/ColorPicker/OptionalColorPicker.d.ts +12 -0
  318. package/src/components/ColorPicker/OptionalColorPicker.js +26 -0
  319. package/src/components/ColorPicker/index.d.ts +1 -0
  320. package/src/components/ColorPicker/index.js +1 -0
  321. package/src/components/Combobox/comboboxUtils.d.ts +1 -0
  322. package/src/components/Combobox/index.js +19 -18
  323. package/src/components/Dashboard/DashboardManager.js +2 -4
  324. package/src/components/Dialog/index.js +4 -4
  325. package/src/components/DragAndDropContext/DragAndDropContext.d.ts +5 -0
  326. package/src/components/DragAndDropContext/DragAndDropContext.js +3 -0
  327. package/src/components/DragAndDropContext/ModuleManager.d.ts +15 -3
  328. package/src/components/DragAndDropContext/ModuleManager.js +47 -8
  329. package/src/components/DragAndDropContext/TabList.d.ts +11 -4
  330. package/src/components/DragAndDropContext/TabList.js +52 -38
  331. package/src/components/DragAndDropContext/UnusedPanel.d.ts +4 -3
  332. package/src/components/DragAndDropContext/UnusedPanel.js +15 -11
  333. package/src/components/DragAndDropContext/dragScope.d.ts +6 -0
  334. package/src/components/DragAndDropContext/dragScope.js +26 -0
  335. package/src/components/DragAndDropContext/types.d.ts +7 -0
  336. package/src/components/DropdownButton/index.d.ts +33 -25
  337. package/src/components/DropdownButton/index.js +24 -158
  338. package/src/components/EmptyContent/index.js +2 -2
  339. package/src/components/ErrorBox/index.js +2 -2
  340. package/src/components/ExpressionEditor/BaseEditorInput.js +3 -3
  341. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +3 -3
  342. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +6 -6
  343. package/src/components/FieldWrap/index.js +2 -2
  344. package/src/components/Flex.js +2 -2
  345. package/src/components/FormLayout/index.d.ts +1 -1
  346. package/src/components/HelpBlock/index.js +3 -3
  347. package/src/components/IconSelector/IconSelector.d.ts +8 -0
  348. package/src/components/IconSelector/IconSelector.js +11 -7
  349. package/src/components/IconSelector/index.d.ts +1 -0
  350. package/src/components/IconSelector/index.js +1 -0
  351. package/src/components/Modal/index.js +2 -2
  352. package/src/components/NewSelect/index.js +11 -1
  353. package/src/components/Panel/index.js +7 -7
  354. package/src/components/Radio/index.d.ts +1 -1
  355. package/src/components/Radio/index.js +8 -6
  356. package/src/components/SimpleButton/index.js +7 -7
  357. package/src/components/StylePreview.js +2 -2
  358. package/src/components/Tabs/index.js +4 -4
  359. package/src/components/Tag/Tag.d.ts +16 -0
  360. package/src/components/Tag/Tag.js +14 -4
  361. package/src/components/Tag/columnScopeTagHelpers.d.ts +8 -0
  362. package/src/components/Tag/columnScopeTagHelpers.js +6 -0
  363. package/src/components/Tag/index.d.ts +1 -1
  364. package/src/components/Tag/index.js +1 -1
  365. package/src/components/Textarea/index.js +2 -3
  366. package/src/components/Toggle/Toggle.d.ts +2 -0
  367. package/src/components/Toggle/Toggle.js +14 -7
  368. package/src/components/Toggle/ToggleGroup.js +2 -2
  369. package/src/components/ToggleButton/index.js +4 -4
  370. package/src/components/Tree/TreeDropdown/index.js +3 -4
  371. package/src/components/WarningBox/index.js +2 -2
  372. package/src/components/icons/sort-asc.js +1 -1
  373. package/src/components/ui/button.d.ts +2 -2
  374. package/src/components/ui/combobox.d.ts +3 -1
  375. package/src/components/ui/combobox.js +2 -2
  376. package/src/components/ui/input-group.d.ts +1 -1
  377. package/src/components/ui/select.js +3 -2
  378. package/src/components/ui/textarea.js +1 -1
  379. package/src/env.js +2 -2
  380. package/src/layout-manager/src/index.js +7 -3
  381. package/src/metamodel/adaptable.metamodel.d.ts +80 -14
  382. package/src/metamodel/adaptable.metamodel.js +1 -1
  383. package/src/migration/VersionUpgrade23.d.ts +27 -31
  384. package/src/migration/VersionUpgrade23.js +110 -29
  385. package/src/types.d.ts +13 -2
  386. package/tsconfig.esm.tsbuildinfo +1 -1
  387. package/src/View/DataChangeHistory/DataChangeHistoryGrid.d.ts +0 -17
  388. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +0 -290
  389. package/src/components/DropdownButton/DropdownButtonItem.d.ts +0 -12
  390. package/src/components/DropdownButton/renderItem.d.ts +0 -14
  391. package/src/components/DropdownButton/renderItem.js +0 -11
  392. package/src/components/DropdownButton/useExpanded.d.ts +0 -24
  393. package/src/components/DropdownButton/useExpanded.js +0 -56
  394. package/src/components/NewDropdownButton/index.d.ts +0 -27
  395. package/src/components/NewDropdownButton/index.js +0 -24
  396. /package/src/{components/DropdownButton/DropdownButtonItem.js → AdaptableState/StyledColumns/BulletChartStyle.js} +0 -0
@@ -0,0 +1,316 @@
1
+ /** Default placement applied to a value whose Horizontal/Vertical were omitted. */
2
+ const DEFAULT_PLACEMENT = {
3
+ Horizontal: 'Left',
4
+ Vertical: 'Below',
5
+ };
6
+ const HORIZONTAL_VALUES = ['Left', 'Center', 'Right'];
7
+ const VERTICAL_VALUES = ['Above', 'Below', 'Merged'];
8
+ const isHorizontal = (value) => typeof value === 'string' &&
9
+ HORIZONTAL_VALUES.includes(value);
10
+ const isVertical = (value) => typeof value === 'string' && VERTICAL_VALUES.includes(value);
11
+ /** Normalise a placement, applying defaults for missing axes. */
12
+ const sanitizePlacement = (placement) => ({
13
+ Horizontal: isHorizontal(placement?.Horizontal) ? placement.Horizontal : DEFAULT_PLACEMENT.Horizontal,
14
+ Vertical: isVertical(placement?.Vertical) ? placement.Vertical : DEFAULT_PLACEMENT.Vertical,
15
+ });
16
+ /** Returns a layout with only the values that are actually present, defaults filled in. */
17
+ const sanitizeCellTextLayout = (layout) => {
18
+ const result = {};
19
+ if (layout?.CellValue) {
20
+ result.CellValue = sanitizePlacement(layout.CellValue);
21
+ }
22
+ if (layout?.PercentValue) {
23
+ result.PercentValue = sanitizePlacement(layout.PercentValue);
24
+ }
25
+ return result;
26
+ };
27
+ export const resolveBarChartCellTextLayout = (props) => sanitizeCellTextLayout(props?.CellTextLayout);
28
+ /** True when any value is configured for display. */
29
+ export const hasBarChartCellTextConfigured = (props) => {
30
+ const layout = resolveBarChartCellTextLayout(props);
31
+ return Boolean(layout.CellValue || layout.PercentValue);
32
+ };
33
+ /** Set of value tokens that currently have a placement. */
34
+ export const getActiveBarChartCellTextTokens = (props) => {
35
+ const layout = resolveBarChartCellTextLayout(props);
36
+ const tokens = [];
37
+ if (layout.CellValue) {
38
+ tokens.push('CellValue');
39
+ }
40
+ if (layout.PercentValue) {
41
+ tokens.push('PercentageValue');
42
+ }
43
+ return tokens;
44
+ };
45
+ export const mergeBarChartCellTextProperties = (current, patch) => {
46
+ const merged = { ...current, ...patch };
47
+ if (merged.CellTextLayout) {
48
+ merged.CellTextLayout = sanitizeCellTextLayout(merged.CellTextLayout);
49
+ if (!merged.CellTextLayout.CellValue && !merged.CellTextLayout.PercentValue) {
50
+ delete merged.CellTextLayout;
51
+ }
52
+ }
53
+ if (!merged.CellTextLayout) {
54
+ return undefined;
55
+ }
56
+ return merged;
57
+ };
58
+ /**
59
+ * Set or clear a value's placement. Passing `placement: undefined` removes the value.
60
+ */
61
+ export const setBarChartCellTextPlacement = (current, token, placement) => {
62
+ const layout = resolveBarChartCellTextLayout(current);
63
+ const next = { ...layout };
64
+ const key = token === 'CellValue' ? 'CellValue' : 'PercentValue';
65
+ if (placement) {
66
+ next[key] = sanitizePlacement(placement);
67
+ }
68
+ else {
69
+ delete next[key];
70
+ }
71
+ return mergeBarChartCellTextProperties(current, { CellTextLayout: next });
72
+ };
73
+ /**
74
+ * Patch a single axis of a value's placement (creating the value with defaults if
75
+ * needed). Used by the wizard's placement pickers.
76
+ */
77
+ export const patchBarChartCellTextPlacement = (current, token, patch) => {
78
+ const layout = resolveBarChartCellTextLayout(current);
79
+ const key = token === 'CellValue' ? 'CellValue' : 'PercentValue';
80
+ const existing = layout[key];
81
+ const nextPlacement = {
82
+ ...(existing ?? DEFAULT_PLACEMENT),
83
+ ...patch,
84
+ };
85
+ return setBarChartCellTextPlacement(current, token, nextPlacement);
86
+ };
87
+ /**
88
+ * Toggle whether a value is displayed. When turning on a previously-hidden
89
+ * value we use the default placement (Left / Below).
90
+ */
91
+ export const toggleBarChartCellTextToken = (current, token, show) => {
92
+ const layout = resolveBarChartCellTextLayout(current);
93
+ const key = token === 'CellValue' ? 'CellValue' : 'PercentValue';
94
+ if (show && !layout[key]) {
95
+ return {
96
+ CellTextProperties: setBarChartCellTextPlacement(current, token, DEFAULT_PLACEMENT),
97
+ };
98
+ }
99
+ if (!show && layout[key]) {
100
+ return {
101
+ CellTextProperties: setBarChartCellTextPlacement(current, token, undefined),
102
+ };
103
+ }
104
+ return { CellTextProperties: current };
105
+ };
106
+ export const buildBarChartCellTextLabels = (props, cellValueLabel, percentageLabel) => {
107
+ const layout = resolveBarChartCellTextLayout(props);
108
+ const labels = {};
109
+ if (layout.CellValue && cellValueLabel != undefined) {
110
+ labels.cellValue = cellValueLabel;
111
+ }
112
+ if (layout.PercentValue && percentageLabel != undefined) {
113
+ labels.percentage = percentageLabel;
114
+ }
115
+ return labels;
116
+ };
117
+ export const hasBarChartCellTextLabels = (labels) => Boolean(labels.cellValue || labels.percentage);
118
+ /** Join active labels with a space, Cell Value first then Percent Value. */
119
+ export const joinBarChartCellTextLabels = (labels) => {
120
+ const parts = [];
121
+ if (labels.cellValue)
122
+ parts.push(labels.cellValue);
123
+ if (labels.percentage)
124
+ parts.push(labels.percentage);
125
+ return parts.join(' ');
126
+ };
127
+ /**
128
+ * Resolve which placements are populated and what text goes in each cell of
129
+ * the 3 × 3 grid. Empty slots are omitted. Two values landing on the same
130
+ * (vertical, horizontal) slot are concatenated with a single space, Cell
131
+ * Value before Percent Value.
132
+ */
133
+ export const resolveBarChartCellTextSlots = (props, labels) => {
134
+ const layout = resolveBarChartCellTextLayout(props);
135
+ // Iteration order matters when both values share a slot: Cell Value first,
136
+ // then Percent Value (matches the legacy "joined" behaviour).
137
+ const candidates = [];
138
+ if (layout.CellValue && labels.cellValue) {
139
+ candidates.push({
140
+ placement: sanitizePlacement(layout.CellValue),
141
+ text: labels.cellValue,
142
+ });
143
+ }
144
+ if (layout.PercentValue && labels.percentage) {
145
+ candidates.push({
146
+ placement: sanitizePlacement(layout.PercentValue),
147
+ text: labels.percentage,
148
+ });
149
+ }
150
+ const slotMap = new Map();
151
+ for (const { placement, text } of candidates) {
152
+ const key = `${placement.Vertical}|${placement.Horizontal}`;
153
+ const existing = slotMap.get(key);
154
+ if (existing) {
155
+ existing.parts.push(text);
156
+ existing.text = existing.parts.join(' ');
157
+ }
158
+ else {
159
+ slotMap.set(key, {
160
+ vertical: placement.Vertical,
161
+ horizontal: placement.Horizontal,
162
+ parts: [text],
163
+ text,
164
+ });
165
+ }
166
+ }
167
+ return Array.from(slotMap.values());
168
+ };
169
+ export const getBarChartCellTextSlotPresence = (props) => {
170
+ const layout = resolveBarChartCellTextLayout(props);
171
+ const verticals = new Set();
172
+ if (layout.CellValue)
173
+ verticals.add(sanitizePlacement(layout.CellValue).Vertical);
174
+ if (layout.PercentValue)
175
+ verticals.add(sanitizePlacement(layout.PercentValue).Vertical);
176
+ return {
177
+ hasAbove: verticals.has('Above'),
178
+ hasBelow: verticals.has('Below'),
179
+ hasMerged: verticals.has('Merged'),
180
+ };
181
+ };
182
+ // ---------------------------------------------------------------------------
183
+ // Summary formatting
184
+ // ---------------------------------------------------------------------------
185
+ const HORIZONTAL_LABEL = {
186
+ Left: 'Left',
187
+ Center: 'Center',
188
+ Right: 'Right',
189
+ };
190
+ const VERTICAL_LABEL = {
191
+ Above: 'Above',
192
+ Below: 'Below',
193
+ Merged: 'Merged',
194
+ };
195
+ const formatTokenLabel = (token) => token === 'CellValue' ? 'Cell Value' : 'Percent Value';
196
+ const formatPlacementSummary = (placement) => {
197
+ const { Horizontal, Vertical } = sanitizePlacement(placement);
198
+ return `${VERTICAL_LABEL[Vertical]}-${HORIZONTAL_LABEL[Horizontal]}`;
199
+ };
200
+ export const formatBarChartCellTextLayoutSummary = (layout) => {
201
+ const parts = [];
202
+ if (layout.CellValue) {
203
+ parts.push(`${formatTokenLabel('CellValue')}: ${formatPlacementSummary(layout.CellValue)}`);
204
+ }
205
+ if (layout.PercentValue) {
206
+ parts.push(`${formatTokenLabel('PercentageValue')}: ${formatPlacementSummary(layout.PercentValue)}`);
207
+ }
208
+ return parts.length ? parts.join('; ') : undefined;
209
+ };
210
+ // ---------------------------------------------------------------------------
211
+ // DOM mount
212
+ // ---------------------------------------------------------------------------
213
+ const HORIZONTAL_FLEX_JUSTIFY = {
214
+ Left: 'flex-start',
215
+ Center: 'center',
216
+ Right: 'flex-end',
217
+ };
218
+ const HORIZONTAL_TEXT_ALIGN = {
219
+ Left: 'left',
220
+ Center: 'center',
221
+ Right: 'right',
222
+ };
223
+ const createCellTextRow = (slots, textClassName, compact) => {
224
+ const row = document.createElement('div');
225
+ row.className = textClassName;
226
+ row.style.display = 'flex';
227
+ row.style.flexDirection = 'row';
228
+ row.style.alignItems = 'center';
229
+ row.style.width = '100%';
230
+ // When `Above` AND `Below` are both populated, two default-size text rows
231
+ // would squeeze the bar to 0 on a standard ~28-40px cell, so the caller
232
+ // asks for a compact band (smaller font + tighter line-height).
233
+ // Otherwise we render at the inherited cell font for legibility.
234
+ if (compact) {
235
+ row.style.fontSize = '0.75em';
236
+ row.style.lineHeight = '1';
237
+ }
238
+ else {
239
+ row.style.lineHeight = '1.2';
240
+ }
241
+ row.style.flex = '0 0 auto';
242
+ row.style.gap = '4px';
243
+ // Render fixed Left / Center / Right cells so spacing is stable even when
244
+ // only one or two slots are present.
245
+ for (const horizontal of HORIZONTAL_VALUES) {
246
+ const slot = slots.find((s) => s.horizontal === horizontal);
247
+ const cell = document.createElement('span');
248
+ cell.style.flex = '1';
249
+ cell.style.minWidth = '0';
250
+ cell.style.textAlign = HORIZONTAL_TEXT_ALIGN[horizontal];
251
+ cell.style.display = 'flex';
252
+ cell.style.justifyContent = HORIZONTAL_FLEX_JUSTIFY[horizontal];
253
+ cell.style.alignItems = 'center';
254
+ if (slot) {
255
+ cell.textContent = slot.text;
256
+ }
257
+ row.append(cell);
258
+ }
259
+ // Suppress the dummy row in the rare case where every slot for this band is
260
+ // empty (e.g. the only label is empty string). `String(...)` because text
261
+ // may arrive as a number when `params.formatValue` is undefined for a
262
+ // numeric column — `(11).length` is `undefined`, which would otherwise
263
+ // wrongly trip the empty-row branch.
264
+ if (!slots.some((s) => String(s.text ?? '').length)) {
265
+ row.style.display = 'none';
266
+ }
267
+ return row;
268
+ };
269
+ export const mountBarChartCellText = (args) => {
270
+ const { cellTextProperties, labels, wrapperEl, textClassName } = args;
271
+ if (!hasBarChartCellTextConfigured(cellTextProperties) || !hasBarChartCellTextLabels(labels)) {
272
+ return;
273
+ }
274
+ const slots = resolveBarChartCellTextSlots(cellTextProperties, labels);
275
+ if (!slots.length) {
276
+ return;
277
+ }
278
+ const mergedOverlayEl = args.mergedOverlayEl ?? wrapperEl;
279
+ const mergedPointerEventsNone = args.mergedPointerEventsNone ?? mergedOverlayEl === wrapperEl;
280
+ const slotsByVertical = {
281
+ Above: slots.filter((s) => s.vertical === 'Above'),
282
+ Below: slots.filter((s) => s.vertical === 'Below'),
283
+ Merged: slots.filter((s) => s.vertical === 'Merged'),
284
+ };
285
+ // Compact when Cell Value and Percent Value have *different* verticals
286
+ // (i.e. the two tokens claim two separate bands of vertical space). When
287
+ // they share a vertical band — or when only one token is configured —
288
+ // we have room for the full-size font.
289
+ const layout = resolveBarChartCellTextLayout(cellTextProperties);
290
+ const compact = Boolean(layout.CellValue &&
291
+ layout.PercentValue &&
292
+ sanitizePlacement(layout.CellValue).Vertical !==
293
+ sanitizePlacement(layout.PercentValue).Vertical);
294
+ if (slotsByVertical.Above.length) {
295
+ const row = createCellTextRow(slotsByVertical.Above, textClassName, compact);
296
+ wrapperEl.prepend(row);
297
+ }
298
+ if (slotsByVertical.Below.length) {
299
+ const row = createCellTextRow(slotsByVertical.Below, textClassName, compact);
300
+ wrapperEl.append(row);
301
+ }
302
+ if (slotsByVertical.Merged.length) {
303
+ const row = createCellTextRow(slotsByVertical.Merged, textClassName, compact);
304
+ row.style.position = 'absolute';
305
+ row.style.top = '50%';
306
+ row.style.transform = 'translateY(-50%)';
307
+ row.style.left = '0';
308
+ row.style.right = '0';
309
+ row.style.paddingLeft = '5px';
310
+ row.style.paddingRight = '5px';
311
+ if (mergedPointerEventsNone) {
312
+ row.style.pointerEvents = 'none';
313
+ }
314
+ mergedOverlayEl.append(row);
315
+ }
316
+ };
@@ -1,4 +1,5 @@
1
- import { PercentBarStyle, StyledColumn } from '../../AdaptableState/StyledColumnState';
1
+ import { StyledColumn } from '../../AdaptableState/StyledColumnState';
2
+ import { PercentBarStyle } from '../../AdaptableState/StyledColumns/PercentBarStyle';
2
3
  export declare const hasPercentBarRangesConfigured: (pb: PercentBarStyle | undefined) => boolean;
3
4
  /** Illustrative scale for preview — shows negatives when origin is Auto or Zero. */
4
5
  export declare const getPercentBarPreviewScale: (pb: PercentBarStyle) => {
@@ -1,6 +1,7 @@
1
1
  import { getVariableColor } from './StyleHelper';
2
2
  import clamp from '../utils/clamp';
3
3
  import { STYLED_COLUMN_PREVIEW_SAMPLE_COUNT, ZERO_CENTRED_PREVIEW_SCALE_MAX, ZERO_CENTRED_PREVIEW_SCALE_MIN, } from './StyledColumnGradientHelper';
4
+ import { buildBarChartCellTextLabels, joinBarChartCellTextLabels, } from './barChartCellText';
4
5
  const evenlySpacedValues = (min, max, count) => {
5
6
  if (count <= 1) {
6
7
  return [min];
@@ -124,14 +125,8 @@ export const getPercentBarPreviewGeometry = (numericValue, pb, min, max) => {
124
125
  };
125
126
  };
126
127
  export const formatPercentBarPreviewCellText = (numericValue, percentageValue, pb) => {
127
- const parts = [];
128
- if (pb.CellText?.includes('CellValue')) {
129
- parts.push(Number.isInteger(numericValue) ? String(numericValue) : numericValue.toFixed(1));
130
- }
131
- if (pb.CellText?.includes('PercentageValue')) {
132
- parts.push(`${percentageValue.toFixed(0)}%`);
133
- }
134
- return parts.join(' ');
128
+ const labels = buildBarChartCellTextLabels(pb.CellTextProperties, Number.isInteger(numericValue) ? String(numericValue) : numericValue.toFixed(1), `${percentageValue.toFixed(0)}%`);
129
+ return joinBarChartCellTextLabels(labels);
135
130
  };
136
131
  export const getPercentBarPreviewTrackColor = (pb) => {
137
132
  if (pb.ColumnComparison) {
@@ -0,0 +1,3 @@
1
+ import { AdaptableApi } from '../../Api/AdaptableApi';
2
+ import { SettingsPanelNavigation, SettingsPanelOptions } from '../../AdaptableOptions/SettingsPanelOptions';
3
+ export declare const resolveSettingsPanelNavigation: (api: AdaptableApi, settingsPanelOptions: SettingsPanelOptions) => SettingsPanelNavigation;
@@ -0,0 +1,15 @@
1
+ import { buildDefaultSettingsPanelNavigation } from '../Defaults/DefaultSettingsPanel';
2
+ const cloneSettingsPanelNavigation = (navigation) => ({
3
+ groups: navigation.groups.map((group) => ({
4
+ label: group.label,
5
+ items: [...group.items],
6
+ })),
7
+ });
8
+ export const resolveSettingsPanelNavigation = (api, settingsPanelOptions) => {
9
+ const defaultNavigation = buildDefaultSettingsPanelNavigation(settingsPanelOptions.customSettingsPanels?.map((panel) => panel.name) ?? []);
10
+ if (!settingsPanelOptions.navigation) {
11
+ return defaultNavigation;
12
+ }
13
+ const context = api.internalApi.buildBaseContext();
14
+ return settingsPanelOptions.navigation(context, cloneSettingsPanelNavigation(defaultNavigation));
15
+ };
@@ -1,4 +1,5 @@
1
1
  import StringExtensions from './Extensions/StringExtensions';
2
+ import { getScopeViewItemsTagVariant } from '../components/Tag/columnScopeTagHelpers';
2
3
  export const getScopeViewItems = (scope, api) => {
3
4
  let values = [];
4
5
  if ('ColumnIds' in scope && Array.isArray(scope.ColumnIds)) {
@@ -20,5 +21,6 @@ export const getScopeViewItems = (scope, api) => {
20
21
  label: 'Columns',
21
22
  name: 'Target',
22
23
  values,
24
+ tagVariant: getScopeViewItemsTagVariant(scope),
23
25
  };
24
26
  };
@@ -0,0 +1,10 @@
1
+ import type { SimpleButtonProps } from '../components/SimpleButton';
2
+ /** Selected wizard option — Tailwind overrides SimpleButton outlined defaults. */
3
+ export declare const WIZARD_SELECTION_ACTIVE_CLASSES: string;
4
+ /** Unselected wizard option — muted so the active choice reads immediately. */
5
+ export declare const WIZARD_SELECTION_INACTIVE_CLASSES: string;
6
+ export type CollapsibleWizardCardSurface = 'popup' | 'panel';
7
+ export declare const getCollapsibleWizardCardCollapsedClasses: (surface?: CollapsibleWizardCardSurface) => string;
8
+ export declare const getCollapsibleWizardCardExpandedClasses: (surface?: CollapsibleWizardCardSurface) => string;
9
+ export declare const wizardSelectionButtonClassName: (selected: boolean, className?: string) => string;
10
+ export declare const wizardSelectionSimpleButtonProps: (selected: boolean, className?: string) => Pick<SimpleButtonProps, "variant" | "tone" | "className">;
@@ -0,0 +1,15 @@
1
+ import { cn } from '../lib/utils';
2
+ /** Selected wizard option — Tailwind overrides SimpleButton outlined defaults. */
3
+ export const WIZARD_SELECTION_ACTIVE_CLASSES = cn('ab-WizardSelection--active', 'twa:!border-[var(--ab-cmp-wizard-selection__border)]', 'twa:!bg-[var(--ab-cmp-wizard-selection__background)]', 'twa:!text-accent', 'twa:font-medium');
4
+ /** Unselected wizard option — muted so the active choice reads immediately. */
5
+ export const WIZARD_SELECTION_INACTIVE_CLASSES = cn('twa:!border-[color-mix(in_srgb,var(--ab-color-primarydark)_40%,transparent)]', 'twa:!text-[color-mix(in_srgb,var(--ab-color-foreground)_55%,transparent)]');
6
+ export const getCollapsibleWizardCardCollapsedClasses = (surface = 'popup') => cn(surface === 'panel'
7
+ ? 'twa:border-[var(--ab-cmp-collapsible-wizard-card__collapsed-border)] twa:bg-card'
8
+ : 'twa:border-[var(--ab-cmp-collapsible-wizard-card__collapsed-border-popup)]');
9
+ export const getCollapsibleWizardCardExpandedClasses = (surface = 'popup') => cn('ab-CollapsibleWizardCard--expanded', 'twa:border-[var(--ab-cmp-collapsible-wizard-card__expanded-border)]', surface === 'panel' && 'twa:bg-card', 'twa:p-0');
10
+ export const wizardSelectionButtonClassName = (selected, className) => cn('ab-WizardSelection', selected ? WIZARD_SELECTION_ACTIVE_CLASSES : WIZARD_SELECTION_INACTIVE_CLASSES, className);
11
+ export const wizardSelectionSimpleButtonProps = (selected, className) => ({
12
+ variant: 'outlined',
13
+ tone: 'none',
14
+ className: wizardSelectionButtonClassName(selected, className),
15
+ });
@@ -1,7 +1,7 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as React from 'react';
3
3
  import { CheckBox } from '../../../components/CheckBox';
4
- import DropdownButton from '../../../components/DropdownButton';
4
+ import { NewDropdownButton } from '../../../components/DropdownButton';
5
5
  import HelpBlock from '../../../components/HelpBlock';
6
6
  import Input from '../../../components/Input';
7
7
  import StringExtensions from '../../../Utilities/Extensions/StringExtensions';
@@ -45,7 +45,7 @@ const OptionInput = (props) => {
45
45
  label: StringExtensions.Humanize(str),
46
46
  onClick: () => props.onChange({ ...option, value: str }),
47
47
  }));
48
- input = (_jsx(DropdownButton, { ...inputProps, columns: ['label'], items: options, children: StringExtensions.Humanize(value) }));
48
+ input = (_jsx(NewDropdownButton, { className: "twa:min-w-[200px] twa:mr-2", items: options, children: StringExtensions.Humanize(value) }));
49
49
  }
50
50
  else {
51
51
  switch (option.kind) {
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { CheckBox } from '../../../../components/CheckBox';
3
- import DropdownButton from '../../../../components/DropdownButton';
3
+ import { NewDropdownButton } from '../../../../components/DropdownButton';
4
4
  import FormLayout, { FormRow } from '../../../../components/FormLayout';
5
5
  import HelpBlock from '../../../../components/HelpBlock';
6
6
  import StringExtensions from '../../../../Utilities/Extensions/StringExtensions';
@@ -73,7 +73,7 @@ export const UIOptionsSidebarForm = (props) => {
73
73
  };
74
74
  props.onChange(newGridOptions);
75
75
  };
76
- return (_jsxs(Box, { children: [_jsx(HelpBlock, { children: "Tool Panels" }), _jsxs(Box, { className: "twa:m-2", children: [_jsx(Flex, { className: "twa:mb-2", children: ALL_SIDEBAR_OPTIONS.map(renderSidebarCheckbox) }), _jsx(FormLayout, { columns: [{ name: 'label' }, { name: 'children' }], children: _jsx(FormRow, { label: "Position", children: _jsx(DropdownButton, { columns: ['label'], items: [
76
+ return (_jsxs(Box, { children: [_jsx(HelpBlock, { children: "Tool Panels" }), _jsxs(Box, { className: "twa:m-2", children: [_jsx(Flex, { className: "twa:mb-2", children: ALL_SIDEBAR_OPTIONS.map(renderSidebarCheckbox) }), _jsx(FormLayout, { columns: [{ name: 'label' }, { name: 'children' }], children: _jsx(FormRow, { label: "Position", children: _jsx(NewDropdownButton, { items: [
77
77
  { label: 'Left', onClick: () => handleSidebarPositionChange('left') },
78
78
  { label: 'Right', onClick: () => handleSidebarPositionChange('right') },
79
79
  ], children: sidebarPosition === 'left' ? 'Left' : 'Right' }) }) })] })] }));
@@ -4,8 +4,8 @@ import { ModuleManager } from '../../../../components/DragAndDropContext/ModuleM
4
4
  import HelpBlock from '../../../../components/HelpBlock';
5
5
  import FormLayout, { FormRow } from '../../../../components/FormLayout';
6
6
  import Input from '../../../../components/Input';
7
- import SimpleButton from '../../../../components/SimpleButton';
8
- import DropdownButton from '../../../../components/DropdownButton';
7
+ import { ButtonNew } from '../../../Components/Buttons/ButtonNew';
8
+ import { NewDropdownButton } from '../../../../components/DropdownButton';
9
9
  import { NocodeWizardFormBox } from '../Components/FormBox';
10
10
  import { Box } from '../../../../components/Flex';
11
11
  export const UIOptionsStatusbarForm = (props) => {
@@ -91,7 +91,7 @@ export const UIOptionsStatusbarForm = (props) => {
91
91
  },
92
92
  });
93
93
  };
94
- return (_jsxs(Box, { children: [_jsx(HelpBlock, { children: "Status Bar" }), _jsxs(Box, { className: "twa:p-2", children: [_jsxs(NocodeWizardFormBox, { children: [_jsx(Box, { as: "b", children: "Create Adaptable Statusbar Panel" }), _jsxs(FormLayout, { className: "twa:mt-2", children: [_jsx(FormRow, { label: "Panel Name", children: _jsx(Input, { value: adaptablePanelTitle, placeholder: 'Adaptable Panel Name', onChange: (event) => setAdaptablePanelTitle(event.target.value) }) }), _jsx(FormRow, { label: "Align", children: _jsx(DropdownButton, { columns: ['label'], items: alignOptions, children: alignOptions.find((option) => option.value === adaptablePanelAlign)?.label }) }), _jsxs(FormRow, { label: "", children: [_jsx(SimpleButton, { disabled: !isAdaptablePanelTitleAvailable, onClick: handleNewAdaptablePanel, icon: "plus", variant: "raised", children: "Add" }), !isAdaptablePanelTitleAvailable && (_jsx(Box, { className: "twa:mt-2 twa:text-error", children: "Adaptable panel name must be unique." }))] })] })] }), _jsx(ModuleManager, { permittedActions: {
94
+ return (_jsxs(Box, { children: [_jsx(HelpBlock, { children: "Status Bar" }), _jsxs(Box, { className: "twa:p-2", children: [_jsxs(NocodeWizardFormBox, { children: [_jsx(Box, { as: "b", children: "Create Adaptable Statusbar Panel" }), _jsxs(FormLayout, { className: "twa:mt-2", children: [_jsx(FormRow, { label: "Panel Name", children: _jsx(Input, { value: adaptablePanelTitle, placeholder: 'Adaptable Panel Name', onChange: (event) => setAdaptablePanelTitle(event.target.value) }) }), _jsx(FormRow, { label: "Align", children: _jsx(NewDropdownButton, { items: alignOptions, children: alignOptions.find((option) => option.value === adaptablePanelAlign)?.label }) }), _jsxs(FormRow, { label: "", children: [_jsx(ButtonNew, { disabled: !isAdaptablePanelTitleAvailable, onClick: handleNewAdaptablePanel, children: "Add" }), !isAdaptablePanelTitleAvailable && (_jsx(Box, { className: "twa:mt-2 twa:text-destructive", children: "Adaptable panel name must be unique." }))] })] })] }), _jsx(ModuleManager, { permittedActions: {
95
95
  createTab: false,
96
96
  dragAndDropTab: false,
97
97
  deleteTab: false,
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as React from 'react';
3
+ import { cn } from '../../lib/utils';
3
4
  import { connect } from 'react-redux';
4
5
  import * as InternalRedux from '../../Redux/ActionsReducers/InternalRedux';
5
6
  import { AdaptablePopover } from '../AdaptablePopover';
@@ -7,7 +8,6 @@ import { getAlertButtonStyle } from './Utilities/getAlertButtonStyle';
7
8
  import { ActiveAlertsPanel } from './ActiveAlertsPanel';
8
9
  import { Flex } from '../../components/Flex';
9
10
  import { ButtonClear } from '../Components/Buttons/ButtonClear';
10
- import clsx from 'clsx';
11
11
  class AlertViewPanelComponent extends React.Component {
12
12
  constructor(props) {
13
13
  super(props);
@@ -31,7 +31,7 @@ class AlertViewPanelComponent extends React.Component {
31
31
  const alertsPanel = _jsx(ActiveAlertsPanel, {});
32
32
  const isToolbar = this.props.viewType === 'Toolbar';
33
33
  const elementType = isToolbar ? 'DashboardToolbar' : 'ToolPanel';
34
- return (_jsxs(Flex, { alignItems: "stretch", className: clsx(`ab-${elementType}__Alert__wrap twa:gap-1`, {
34
+ return (_jsxs(Flex, { alignItems: "stretch", className: cn(`ab-${elementType}__Alert__wrap twa:gap-1`, {
35
35
  'twa:min-w-[140px] twa:w-[140px]': isToolbar,
36
36
  [`twa:flex-1`]: !isToolbar,
37
37
  }), children: [_jsx(Flex, { className: `ab-${elementType}__Alert__text twa:flex-1 twa:rounded-standard twa:p-2 text-2 twa:items-center twa:justify-center twa:min-h-input`, style: { color: buttonTextColor, backgroundColor: buttonBackground }, children: collapsedText }, `${buttonTextColor}_${buttonBackground}_${collapsedText}`), this.props.AdaptableAlerts.length > 0 && (_jsxs(Flex, { className: 'twa:gap-1', children: [_jsx(Flex, { className: "twa:flex twa:box-border", children: _jsx(ButtonClear, { "aria-label": 'Clear All Alerts', variant: 'outlined', className: `ab-${elementType}__Alert__clear`, onClick: () => this.props.onDeleteAllAlert(this.state.Alerts), tooltip: "Clear All Alerts", showText: this.props.viewType === 'ToolPanel', children: 'Clear Alerts' }) }), _jsx(AdaptablePopover, { className: `ab-${elementType}__Alert__info`, headerText: "Alerts Details", bodyText: [alertsPanel], MessageType: 'Info', useButton: true, showEvent: 'focus', hideEvent: "blur", popoverMinWidth: 400 })] }))] }));
@@ -6,10 +6,13 @@ export const getAlertButtonStyle = (alerts) => {
6
6
  const buttonTextColor = UIHelper.getButtonTextColourForArrayandMessageType(alerts, messageType);
7
7
  let cssClasses = '';
8
8
  if (alerts?.length) {
9
- const cssMessageType = UIHelper.getCSSColorByMessageType(messageType);
10
- cssClasses = cssMessageType
11
- ? `twa:bg-${cssMessageType} twa:text-text-on-${cssMessageType}`
12
- : '';
9
+ cssClasses =
10
+ {
11
+ Info: `twa:bg-info twa:text-info-foreground`,
12
+ Success: `twa:bg-success twa:text-success-foreground`,
13
+ Warning: `twa:bg-warning twa:text-warning-foreground`,
14
+ Error: `twa:bg-destructive twa:text-destructive-foreground`,
15
+ }[messageType] || '';
13
16
  }
14
17
  return {
15
18
  color: buttonTextColor,
@@ -2,7 +2,6 @@ import * as React from 'react';
2
2
  import { AlertDefinition } from '../../../AdaptableState/AlertState';
3
3
  import { AdaptableApi } from '../../../types';
4
4
  import { AlertType } from '../Utilities/getAlertType';
5
- export declare const renderAlertBehaviourWizardSummary: (alertDefinition: AlertDefinition) => React.JSX.Element;
6
5
  export declare const renderAlertBehaviourSummary: (alert: AlertDefinition, api: AdaptableApi, allowWrap?: boolean) => React.JSX.Element;
7
6
  type AlertBehaviourWizardSectionProps = {
8
7
  onChange: (data: AlertDefinition) => void;
@@ -39,10 +39,6 @@ const HighlightStyle = (props) => {
39
39
  props.onChange(style);
40
40
  } }) }) }))] }));
41
41
  };
42
- export const renderAlertBehaviourWizardSummary = (alertDefinition) => {
43
- const { api } = useOnePageAdaptableWizardContext();
44
- return renderAlertBehaviourSummary(alertDefinition, api);
45
- };
46
42
  export const renderAlertBehaviourSummary = (alert, api, allowWrap = false) => {
47
43
  const { AlertProperties = {} } = alert;
48
44
  const ruleProperties = isRuleBasedAlertDefinition(alert)