@adaptabletools/adaptable 23.0.0-canary.0 → 23.0.0-canary.10

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 (766) hide show
  1. package/icons/sort-asc.svg +1 -1
  2. package/index.css +1048 -426
  3. package/package.json +9 -4
  4. package/src/AdaptableOptions/ColumnMenuOptions.d.ts +3 -3
  5. package/src/AdaptableOptions/ContextMenuOptions.d.ts +3 -3
  6. package/src/AdaptableOptions/DataSetOptions.d.ts +26 -2
  7. package/src/AdaptableOptions/DefaultAdaptableOptions.js +0 -5
  8. package/src/AdaptableOptions/EditOptions.d.ts +2 -2
  9. package/src/AdaptableOptions/FilterOptions.d.ts +0 -7
  10. package/src/AdaptableOptions/SettingsPanelOptions.d.ts +42 -10
  11. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +1 -3
  12. package/src/{Utilities → AdaptableState/Aggregations}/weightedAverage.js +1 -1
  13. package/src/AdaptableState/Common/AdaptableForm.d.ts +18 -1
  14. package/src/AdaptableState/Common/AdaptableForm.js +31 -0
  15. package/src/AdaptableState/Common/AdaptableFormat.d.ts +8 -1
  16. package/src/AdaptableState/Common/AdaptableMessageType.d.ts +1 -1
  17. package/src/AdaptableState/Common/AggregationColumns.d.ts +14 -6
  18. package/src/AdaptableState/Common/AggregationColumns.js +27 -2
  19. package/src/AdaptableState/Common/CellDataChangedInfo.d.ts +3 -2
  20. package/src/AdaptableState/Common/ColumnScope.d.ts +4 -0
  21. package/src/AdaptableState/Common/Enums.d.ts +6 -23
  22. package/src/AdaptableState/Common/Enums.js +5 -26
  23. package/src/{Utilities → AdaptableState/Common}/MenuItem.d.ts +4 -4
  24. package/src/{Utilities → AdaptableState/Common}/MenuItem.js +1 -1
  25. package/src/AdaptableState/LayoutState.d.ts +5 -4
  26. package/src/AdaptableState/PlusMinusState.d.ts +3 -3
  27. package/src/AdaptableState/ShortcutState.d.ts +2 -6
  28. package/src/AdaptableState/StyledColumnState.d.ts +8 -861
  29. package/src/AdaptableState/StyledColumns/BadgeStyle.d.ts +143 -0
  30. package/src/AdaptableState/StyledColumns/BadgeStyle.js +9 -0
  31. package/src/AdaptableState/StyledColumns/BulletChartStyle.d.ts +147 -0
  32. package/src/AdaptableState/StyledColumns/Common/BarStyleProperties.d.ts +84 -0
  33. package/src/AdaptableState/StyledColumns/Common/BarStyleProperties.js +5 -0
  34. package/src/AdaptableState/StyledColumns/Common/CellTextOptions.d.ts +13 -0
  35. package/src/AdaptableState/StyledColumns/Common/CellTextOptions.js +6 -0
  36. package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.d.ts +79 -0
  37. package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.js +9 -0
  38. package/src/AdaptableState/StyledColumns/GradientStyle.d.ts +48 -0
  39. package/src/AdaptableState/StyledColumns/GradientStyle.js +1 -0
  40. package/src/AdaptableState/StyledColumns/IconStyle.d.ts +158 -0
  41. package/src/AdaptableState/StyledColumns/IconStyle.js +1 -0
  42. package/src/AdaptableState/StyledColumns/PercentBarStyle.d.ts +32 -0
  43. package/src/AdaptableState/StyledColumns/PercentBarStyle.js +1 -0
  44. package/src/AdaptableState/StyledColumns/RangeBarStyle.d.ts +155 -0
  45. package/src/AdaptableState/StyledColumns/RangeBarStyle.js +1 -0
  46. package/src/AdaptableState/StyledColumns/RatingStyle.d.ts +111 -0
  47. package/src/AdaptableState/StyledColumns/RatingStyle.js +1 -0
  48. package/src/AdaptableState/StyledColumns/SparklineStyle.d.ts +21 -0
  49. package/src/AdaptableState/StyledColumns/SparklineStyle.js +1 -0
  50. package/src/AdaptableState/ThemeState.d.ts +33 -28
  51. package/src/Api/ColumnScopeApi.d.ts +1 -1
  52. package/src/Api/EventApi.d.ts +15 -2
  53. package/src/Api/Events/ReportScheduleRan.d.ts +4 -0
  54. package/src/Api/Events/ThemeChanged.d.ts +6 -0
  55. package/src/Api/Events/ThemeSelected.d.ts +11 -0
  56. package/src/Api/Events/ThemeSelected.js +1 -0
  57. package/src/Api/Implementation/AlertApiImpl.js +1 -1
  58. package/src/Api/Implementation/ChartingApiImpl.js +1 -1
  59. package/src/Api/Implementation/ColumnScopeApiImpl.d.ts +1 -1
  60. package/src/Api/Implementation/EventApiImpl.js +4 -0
  61. package/src/Api/Implementation/ExportApiImpl.js +1 -1
  62. package/src/Api/Implementation/LayoutApiImpl.d.ts +0 -2
  63. package/src/Api/Implementation/LayoutApiImpl.js +0 -14
  64. package/src/Api/Implementation/LayoutHelpers.d.ts +2 -0
  65. package/src/Api/Implementation/LayoutHelpers.js +30 -8
  66. package/src/Api/Implementation/QuickSearchApiImpl.js +1 -1
  67. package/src/Api/Implementation/ThemeApiImpl.d.ts +3 -2
  68. package/src/Api/Implementation/ThemeApiImpl.js +19 -15
  69. package/src/Api/Internal/ActionColumnInternalApi.js +1 -1
  70. package/src/Api/Internal/AlertInternalApi.js +2 -2
  71. package/src/Api/Internal/ChartingInternalApi.js +1 -1
  72. package/src/Api/Internal/ColumnInternalApi.js +1 -1
  73. package/src/Api/Internal/DataSetInternalApi.d.ts +3 -0
  74. package/src/Api/Internal/DataSetInternalApi.js +73 -13
  75. package/src/Api/Internal/EventInternalApi.d.ts +2 -0
  76. package/src/Api/Internal/EventInternalApi.js +11 -3
  77. package/src/Api/Internal/ExportInternalApi.js +1 -1
  78. package/src/Api/Internal/FormatColumnInternalApi.js +1 -1
  79. package/src/Api/Internal/GridInternalApi.js +1 -1
  80. package/src/Api/Internal/StyledColumnInternalApi.d.ts +7 -5
  81. package/src/Api/Internal/StyledColumnInternalApi.js +5 -5
  82. package/src/Api/Internal/ThemeInternalApi.d.ts +0 -1
  83. package/src/Api/Internal/ThemeInternalApi.js +0 -10
  84. package/src/Api/LayoutApi.d.ts +1 -8
  85. package/src/Api/ThemeApi.d.ts +6 -2
  86. package/src/Redux/ActionsReducers/ExportRedux.js +1 -1
  87. package/src/Redux/ActionsReducers/InternalRedux.js +1 -1
  88. package/src/Redux/ActionsReducers/ThemeRedux.d.ts +3 -3
  89. package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +1 -1
  90. package/src/Redux/Store/AdaptableReduxMerger.js +2 -4
  91. package/src/Redux/Store/AdaptableStore.js +9 -7
  92. package/src/Strategy/AdaptableModuleBase.d.ts +1 -1
  93. package/src/Strategy/AdaptableModuleBase.js +1 -1
  94. package/src/Strategy/AlertModule.d.ts +1 -1
  95. package/src/Strategy/AlertModule.js +2 -2
  96. package/src/Strategy/BulkUpdateModule.d.ts +1 -1
  97. package/src/Strategy/CalculatedColumnModule.d.ts +2 -2
  98. package/src/Strategy/CalculatedColumnModule.js +4 -1
  99. package/src/Strategy/CellSummaryModule.d.ts +2 -2
  100. package/src/Strategy/ChartingModule.d.ts +1 -1
  101. package/src/Strategy/ChartingModule.js +1 -1
  102. package/src/Strategy/ColumnFilterModule.js +1 -0
  103. package/src/Strategy/ColumnInfoModule.d.ts +2 -2
  104. package/src/Strategy/CommentModule.d.ts +1 -1
  105. package/src/Strategy/CustomSortModule.d.ts +1 -1
  106. package/src/Strategy/ExportModule.js +15 -3
  107. package/src/Strategy/FlashingCellModule.d.ts +1 -1
  108. package/src/Strategy/FlashingCellModule.js +6 -2
  109. package/src/Strategy/FormatColumnModule.js +15 -8
  110. package/src/Strategy/FreeTextColumnModule.d.ts +1 -1
  111. package/src/Strategy/FreeTextColumnModule.js +38 -28
  112. package/src/Strategy/GridInfoModule.d.ts +2 -2
  113. package/src/Strategy/Interface/IModule.d.ts +3 -1
  114. package/src/Strategy/LayoutModule.js +16 -62
  115. package/src/Strategy/NoteModule.d.ts +1 -1
  116. package/src/Strategy/PlusMinusModule.d.ts +1 -1
  117. package/src/Strategy/PlusMinusModule.js +1 -1
  118. package/src/Strategy/SettingsPanelModule.d.ts +2 -2
  119. package/src/Strategy/SmartEditModule.d.ts +1 -1
  120. package/src/Strategy/StyledColumnModule.js +68 -57
  121. package/src/Strategy/SystemStatusModule.d.ts +2 -2
  122. package/src/Strategy/TeamSharingModule.js +2 -2
  123. package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.d.ts +1 -0
  124. package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.js +1 -0
  125. package/src/Strategy/Utilities/Export/getExportColumnsViewItems.d.ts +2 -0
  126. package/src/Strategy/Utilities/Export/getExportColumnsViewItems.js +14 -0
  127. package/src/Strategy/Utilities/Export/getExportRowsViewItems.d.ts +1 -0
  128. package/src/Strategy/Utilities/Export/getExportRowsViewItems.js +3 -0
  129. package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.d.ts +11 -0
  130. package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.js +105 -0
  131. package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.d.ts +48 -0
  132. package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.js +166 -0
  133. package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.d.ts +1 -0
  134. package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.js +1 -0
  135. package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.d.ts +26 -0
  136. package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.js +85 -0
  137. package/src/Utilities/Constants/ReduxConstants.d.ts +2 -2
  138. package/src/Utilities/Constants/ReduxConstants.js +1 -14
  139. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.js +1 -1
  140. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +1 -1
  141. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +1 -1
  142. package/src/Utilities/Extensions/ArrayExtensions.d.ts +32 -0
  143. package/src/Utilities/Extensions/ArrayExtensions.js +49 -0
  144. package/src/Utilities/Extensions/NumberExtensions.d.ts +21 -0
  145. package/src/Utilities/Extensions/NumberExtensions.js +74 -0
  146. package/src/Utilities/Extensions/ObjectExtensions.d.ts +44 -0
  147. package/src/Utilities/Extensions/ObjectExtensions.js +271 -0
  148. package/src/Utilities/Extensions/StringExtensions.d.ts +26 -0
  149. package/src/Utilities/Extensions/StringExtensions.js +44 -1
  150. package/src/Utilities/Helpers/AdaptableHelper.js +2 -2
  151. package/src/Utilities/Helpers/{alertFormHelper.js → AlertHelper.js} +1 -1
  152. package/src/Utilities/Helpers/DateHelper.js +1 -1
  153. package/src/Utilities/Helpers/{FormatHelper.js → DisplayFormatHelper.js} +24 -2
  154. package/src/Utilities/Helpers/Helper.d.ts +0 -6
  155. package/src/Utilities/Helpers/Helper.js +0 -35
  156. package/src/Utilities/Helpers/{QuickSearchStyleHelper.js → QuickSearchHelper.js} +1 -1
  157. package/src/Utilities/Helpers/{ScheduleHelper.d.ts → Scheduling/ScheduleHelper.d.ts} +1 -1
  158. package/src/Utilities/Helpers/{ScheduleHelper.js → Scheduling/ScheduleHelper.js} +3 -1
  159. package/src/Utilities/Helpers/{ScheduleJobManager.d.ts → Scheduling/ScheduleJobManager.d.ts} +1 -1
  160. package/src/Utilities/Helpers/{ScheduleJobRunner.d.ts → Scheduling/ScheduleJobRunner.d.ts} +1 -1
  161. package/src/Utilities/Helpers/{ScheduledAlertHelper.d.ts → Scheduling/ScheduledAlertHelper.d.ts} +1 -1
  162. package/src/Utilities/Helpers/{ScheduledAlertHelper.js → Scheduling/ScheduledAlertHelper.js} +4 -4
  163. package/src/Utilities/Helpers/{ScheduledJobsMiddlewareHelper.d.ts → Scheduling/ScheduledJobsMiddlewareHelper.d.ts} +1 -1
  164. package/src/Utilities/Helpers/{ScheduledJobsMiddlewareHelper.js → Scheduling/ScheduledJobsMiddlewareHelper.js} +1 -1
  165. package/src/Utilities/Helpers/{ScheduledReportHelper.d.ts → Scheduling/ScheduledReportHelper.d.ts} +1 -1
  166. package/src/Utilities/Helpers/{ScheduledReportHelper.js → Scheduling/ScheduledReportHelper.js} +1 -1
  167. package/src/Utilities/Helpers/SettingsPanelHelper.d.ts +5 -0
  168. package/src/Utilities/Helpers/SettingsPanelHelper.js +61 -0
  169. package/src/Utilities/Helpers/StyleHelper.d.ts +18 -0
  170. package/src/Utilities/Helpers/StyleHelper.js +27 -0
  171. package/src/Utilities/Helpers/StyledColumns/BarStylesHelper.d.ts +63 -0
  172. package/src/Utilities/Helpers/StyledColumns/BarStylesHelper.js +317 -0
  173. package/src/Utilities/Helpers/StyledColumns/GradientStyleHelper.d.ts +54 -0
  174. package/src/Utilities/Helpers/StyledColumns/GradientStyleHelper.js +247 -0
  175. package/src/Utilities/Helpers/{IconStylePresets.d.ts → StyledColumns/IconStyleHelper.d.ts} +6 -1
  176. package/src/Utilities/Helpers/{IconStylePresets.js → StyledColumns/IconStyleHelper.js} +15 -0
  177. package/src/Utilities/Helpers/StyledColumns/PercentBarStyleHelper.d.ts +20 -0
  178. package/src/Utilities/Helpers/StyledColumns/PercentBarStyleHelper.js +138 -0
  179. package/src/Utilities/Helpers/StyledColumns/SparklineStyleHelper.d.ts +7 -0
  180. package/src/Utilities/Helpers/StyledColumns/SparklineStyleHelper.js +65 -0
  181. package/src/Utilities/Helpers/StyledColumns/StyledColumnHelper.d.ts +52 -0
  182. package/src/{agGrid/cellRenderers/shouldRenderStyledColumnOnRow.js → Utilities/Helpers/StyledColumns/StyledColumnHelper.js} +64 -2
  183. package/src/Utilities/Helpers/ThemeHelper.d.ts +5 -0
  184. package/src/Utilities/Helpers/ThemeHelper.js +38 -0
  185. package/src/Utilities/Helpers/TimingHelper.d.ts +34 -0
  186. package/src/Utilities/{utils/debounce.js → Helpers/TimingHelper.js} +23 -9
  187. package/src/Utilities/ObjectFactory.d.ts +1 -3
  188. package/src/Utilities/ObjectFactory.js +1 -9
  189. package/src/Utilities/Services/CalculatedColumnExpressionService.d.ts +3 -0
  190. package/src/Utilities/Services/CalculatedColumnExpressionService.js +120 -0
  191. package/src/Utilities/Services/Interface/ICalculatedColumnExpressionService.d.ts +1 -0
  192. package/src/Utilities/Services/LicenseService/index.js +1 -1
  193. package/src/Utilities/Services/RowSummaryService.d.ts +1 -1
  194. package/src/Utilities/Services/RowSummaryService.js +4 -4
  195. package/src/Utilities/Services/ThemeService.js +1 -1
  196. package/src/Utilities/getScopeViewItems.js +2 -0
  197. package/src/Utilities/wizardSelection.d.ts +10 -0
  198. package/src/Utilities/wizardSelection.js +15 -0
  199. package/src/View/AdaptablePopover/index.js +1 -1
  200. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +2 -2
  201. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +1 -1
  202. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +2 -2
  203. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +3 -3
  204. package/src/View/Alert/AlertViewPanel.js +2 -2
  205. package/src/View/Alert/Utilities/getAlertButtonStyle.js +7 -4
  206. package/src/View/Alert/Utilities/getAlertType.js +1 -1
  207. package/src/View/Alert/Utilities/getDefaultAlertDefinition.js +1 -1
  208. package/src/View/Alert/Utilities/mapAlertDefinition.js +1 -1
  209. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.d.ts +0 -1
  210. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +18 -21
  211. package/src/View/Alert/Wizard/AlertButtonsEditor.js +170 -125
  212. package/src/View/Alert/Wizard/AlertMessageWizardSection.d.ts +1 -1
  213. package/src/View/Alert/Wizard/AlertMessageWizardSection.js +14 -16
  214. package/src/View/Alert/Wizard/AlertNotificationWizardSection.d.ts +1 -1
  215. package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +60 -61
  216. package/src/View/Alert/Wizard/AlertRulesWizardSection.js +6 -5
  217. package/src/View/Alert/Wizard/AlertScheduledWizardSection.d.ts +1 -1
  218. package/src/View/Alert/Wizard/AlertScheduledWizardSection.js +4 -5
  219. package/src/View/Alert/Wizard/AlertScopeWizardSection.js +32 -40
  220. package/src/View/Alert/Wizard/AlertTypeWizardSection.d.ts +1 -1
  221. package/src/View/Alert/Wizard/AlertTypeWizardSection.js +30 -7
  222. package/src/View/Alert/Wizard/AlertWizard.js +17 -9
  223. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.d.ts +2 -1
  224. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +4 -14
  225. package/src/View/Alert/Wizard/isValidAlertRules.js +1 -1
  226. package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
  227. package/src/View/BulkUpdate/BulkUpdateViewPanel.js +4 -6
  228. package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +9 -13
  229. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.d.ts +1 -1
  230. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +31 -19
  231. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +7 -9
  232. package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.js +31 -5
  233. package/src/View/CellSummary/CellSummaryViewPanel.js +5 -5
  234. package/src/View/Charting/ChartingWizard/AgChargingWizard/AgChargingWizard.js +3 -10
  235. package/src/View/Charting/ChartingWizard/AgChargingWizard/PreviewChartSection.js +2 -2
  236. package/src/View/Charting/ChartingWizard/AgChargingWizard/SettingsSection.js +36 -53
  237. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/ExternalChartingWizard.js +4 -31
  238. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/PreviewChartSection.d.ts +5 -0
  239. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/PreviewChartSection.js +21 -0
  240. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/SettingsSection.d.ts +1 -0
  241. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/SettingsSection.js +11 -8
  242. package/src/View/Charting/ShowChartButton.js +8 -8
  243. package/src/View/ColumnInfo/ColumnInfo.js +21 -1
  244. package/src/View/Comments/CommentsEditor.js +2 -2
  245. package/src/View/Comments/CommentsPopup.js +1 -1
  246. package/src/View/Components/AdaptableObjectCollection/index.js +2 -2
  247. package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +3 -2
  248. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +7 -6
  249. package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.d.ts +2 -0
  250. package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.js +2 -0
  251. package/src/View/Components/AdaptableObjectRow/index.js +2 -2
  252. package/src/View/Components/Buttons/ButtonBase/index.js +2 -3
  253. package/src/View/Components/Buttons/ButtonInfo.d.ts +1 -1
  254. package/src/View/Components/Buttons/ButtonInfo.js +4 -3
  255. package/src/View/Components/Buttons/ButtonNew.d.ts +2 -0
  256. package/src/View/Components/Buttons/ButtonNew.js +1 -1
  257. package/src/View/Components/Buttons/EntityListActionButtons.js +3 -3
  258. package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.d.ts +1 -0
  259. package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +9 -9
  260. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.d.ts +3 -1
  261. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.js +7 -1
  262. package/src/View/Components/ColumnFilter/ColumnFilter.d.ts +2 -1
  263. package/src/View/Components/ColumnFilter/ColumnFilter.js +32 -9
  264. package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +1 -1
  265. package/src/View/Components/ColumnFilter/FloatingFilter.js +58 -60
  266. package/src/View/Components/ColumnFilter/columnFilterLocation.d.ts +2 -0
  267. package/src/View/Components/ColumnFilter/columnFilterLocation.js +1 -0
  268. package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +1 -2
  269. package/src/View/Components/ColumnFilter/components/ColumnFilterInputList.js +4 -2
  270. package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +2 -2
  271. package/src/View/Components/ColumnFilter/components/FloatingFilterInputList.js +1 -1
  272. package/src/View/Components/ColumnSelector/index.d.ts +12 -0
  273. package/src/View/Components/ColumnSelector/index.js +30 -6
  274. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +2 -2
  275. package/src/View/Components/FilterForm/ListBoxFilterForm.js +2 -1
  276. package/src/View/Components/Forms/AdaptableFormControlTextClear.js +4 -2
  277. package/src/View/Components/ModuleProfile.js +1 -1
  278. package/src/View/Components/ModuleValueSelector/index.js +2 -1
  279. package/src/View/Components/NewScopeComponent.js +4 -9
  280. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +5 -4
  281. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +4 -4
  282. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +3 -3
  283. package/src/View/Components/Popups/AdaptablePopup/Navigation.d.ts +3 -2
  284. package/src/View/Components/Popups/AdaptablePopup/Navigation.js +38 -28
  285. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +3 -3
  286. package/src/View/Components/Popups/AdaptablePopup/TopBar.js +2 -2
  287. package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.d.ts +11 -0
  288. package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.js +1 -0
  289. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.d.ts +3 -1
  290. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +25 -27
  291. package/src/View/Components/Popups/AdaptablePopupAlert.js +1 -1
  292. package/src/View/Components/Popups/Utilities.js +1 -1
  293. package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +0 -1
  294. package/src/View/Components/Popups/WindowPopups/windowFactory.js +0 -1
  295. package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -1
  296. package/src/View/Components/RangesComponent.d.ts +13 -9
  297. package/src/View/Components/RangesComponent.js +182 -85
  298. package/src/View/Components/ReorderDraggable/index.js +2 -2
  299. package/src/View/Components/Selectors/BulkUpdateValueSelector.d.ts +0 -2
  300. package/src/View/Components/Selectors/BulkUpdateValueSelector.js +3 -3
  301. package/src/View/Components/Selectors/ColumnSelector.js +5 -0
  302. package/src/View/Components/StyleComponent.d.ts +1 -0
  303. package/src/View/Components/StyleComponent.js +32 -65
  304. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +11 -8
  305. package/src/View/Components/ToolPanel/CustomToolPanelContent.js +1 -1
  306. package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +3 -13
  307. package/src/View/Components/ToolPanel/ToolPanelPopup.js +5 -81
  308. package/src/View/Components/ToolPanel/ToolPanelPopupSections.d.ts +17 -0
  309. package/src/View/Components/ToolPanel/ToolPanelPopupSections.js +79 -0
  310. package/src/View/Components/ValueSelector/index.d.ts +29 -0
  311. package/src/View/Components/ValueSelector/index.js +158 -62
  312. package/src/View/Components/wizardColumnListStyles.d.ts +10 -0
  313. package/src/View/Components/wizardColumnListStyles.js +10 -0
  314. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.d.ts +2 -1
  315. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +12 -19
  316. package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +8 -8
  317. package/src/View/CustomSort/Wizard/CustomSortWizard.js +2 -2
  318. package/src/View/Dashboard/CustomDashboardButton.js +1 -1
  319. package/src/View/Dashboard/Dashboard.js +1 -1
  320. package/src/View/Dashboard/DashboardPopup.d.ts +1 -11
  321. package/src/View/Dashboard/DashboardPopup.js +3 -67
  322. package/src/View/Dashboard/DashboardPopupSections.d.ts +20 -0
  323. package/src/View/Dashboard/DashboardPopupSections.js +68 -0
  324. package/src/View/Dashboard/PinnedToolbarsSelector.js +2 -2
  325. package/src/View/DataChangeHistory/DataChangeHistoryPopup.d.ts +1 -6
  326. package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +9 -21
  327. package/src/View/DataChangeHistory/DataChangeHistoryTable.d.ts +8 -0
  328. package/src/View/DataChangeHistory/DataChangeHistoryTable.js +94 -0
  329. package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +1 -1
  330. package/src/View/DataChangeHistory/buildActionColumnButton.d.ts +5 -3
  331. package/src/View/DataChangeHistory/buildActionColumnButton.js +30 -39
  332. package/src/View/DataChangeHistory/dataChangeHistoryHelpers.d.ts +15 -0
  333. package/src/View/DataChangeHistory/dataChangeHistoryHelpers.js +37 -0
  334. package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -1
  335. package/src/View/DataImport/DataImportWizard/sections/ColumnsSection.js +42 -30
  336. package/src/View/DataImport/DataImportWizard/sections/DataPreview.js +2 -2
  337. package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadSection.js +6 -4
  338. package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadTextSection.js +3 -2
  339. package/src/View/DataImport/DataImportWizard/sections/ValidationSection.js +5 -15
  340. package/src/View/DataSet/DataSetViewPanel.d.ts +2 -2
  341. package/src/View/Export/ExportDestinationPicker.js +3 -3
  342. package/src/View/Export/ExportSchedulesTab.js +3 -4
  343. package/src/View/Export/ExportViewPanel.js +2 -2
  344. package/src/View/Export/Wizard/ExportPopupWizardRouter.js +10 -1
  345. package/src/View/Export/Wizard/ReportColumnsWizardSection.d.ts +2 -1
  346. package/src/View/Export/Wizard/ReportColumnsWizardSection.js +28 -35
  347. package/src/View/Export/Wizard/ReportNameWizardSection.js +10 -13
  348. package/src/View/Export/Wizard/ReportRowsWizardSection.d.ts +2 -1
  349. package/src/View/Export/Wizard/ReportRowsWizardSection.js +23 -28
  350. package/src/View/Export/Wizard/ScheduledReportSettings.d.ts +5 -1
  351. package/src/View/Export/Wizard/ScheduledReportSettings.js +17 -10
  352. package/src/View/Export/Wizard/ScheduledReportWizard.js +11 -7
  353. package/src/View/Export/Wizard/isReportScheduledSettingsValid.d.ts +1 -1
  354. package/src/View/Export/Wizard/isReportScheduledSettingsValid.js +3 -0
  355. package/src/View/Filter/FilterViewPanel.js +1 -1
  356. package/src/View/FlashingCell/FlashingCellStyle.d.ts +4 -2
  357. package/src/View/FlashingCell/FlashingCellStyle.js +4 -2
  358. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.d.ts +2 -1
  359. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +15 -17
  360. package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.d.ts +9 -0
  361. package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.js +5 -0
  362. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.d.ts +1 -1
  363. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +25 -23
  364. package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +20 -11
  365. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.d.ts +0 -5
  366. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +22 -10
  367. package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +6 -7
  368. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +8 -1
  369. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +200 -38
  370. package/src/View/FormatColumn/Wizard/FormatColumnPreview.d.ts +15 -0
  371. package/src/View/FormatColumn/Wizard/FormatColumnPreview.js +66 -0
  372. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.d.ts +3 -0
  373. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +26 -0
  374. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +69 -28
  375. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +2 -2
  376. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.d.ts +3 -2
  377. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +62 -16
  378. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +11 -14
  379. package/src/View/FreeTextColumn/Utilities/getFreeTextColumnSettingsTags.d.ts +2 -0
  380. package/src/View/FreeTextColumn/Utilities/getFreeTextColumnSettingsTags.js +16 -0
  381. package/src/View/FreeTextColumn/Wizard/FreeTextColumnDefinitionWizardSection.d.ts +10 -0
  382. package/src/View/FreeTextColumn/Wizard/FreeTextColumnDefinitionWizardSection.js +53 -0
  383. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.d.ts +2 -3
  384. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +33 -69
  385. package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +15 -11
  386. package/src/View/GridFilter/GridFilterPopupUI/index.js +3 -2
  387. package/src/View/GridFilter/GridFilterViewPanel.js +6 -6
  388. package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +2 -2
  389. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -2
  390. package/src/View/Layout/LayoutCloneButton.js +2 -1
  391. package/src/View/Layout/LayoutViewPanel.js +25 -23
  392. package/src/View/Layout/TransposedPopup.js +2 -2
  393. package/src/View/Layout/Wizard/LayoutWizard.js +34 -33
  394. package/src/View/Layout/Wizard/sections/AggregationsSection.d.ts +15 -4
  395. package/src/View/Layout/Wizard/sections/AggregationsSection.js +168 -39
  396. package/src/View/Layout/Wizard/sections/ColumnsSection.d.ts +4 -1
  397. package/src/View/Layout/Wizard/sections/ColumnsSection.js +156 -277
  398. package/src/View/Layout/Wizard/sections/FilterSection.js +31 -32
  399. package/src/View/Layout/Wizard/sections/GridFilterSection.js +11 -11
  400. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.d.ts +5 -3
  401. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +200 -148
  402. package/src/View/Layout/Wizard/sections/PivotColumnsSection.d.ts +5 -2
  403. package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +26 -13
  404. package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.d.ts +4 -1
  405. package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +25 -14
  406. package/src/View/Layout/Wizard/sections/RowGroupingSection.d.ts +5 -2
  407. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +52 -38
  408. package/src/View/Layout/Wizard/sections/RowSelectionSection.js +9 -5
  409. package/src/View/Layout/Wizard/sections/RowSummarySection.js +118 -70
  410. package/src/View/Layout/Wizard/sections/SettingsSection.js +4 -5
  411. package/src/View/Layout/Wizard/sections/SortSection.d.ts +12 -2
  412. package/src/View/Layout/Wizard/sections/SortSection.js +42 -18
  413. package/src/View/Layout/Wizard/sections/columnLayoutCards.d.ts +20 -0
  414. package/src/View/Layout/Wizard/sections/columnLayoutCards.js +159 -0
  415. package/src/View/Layout/Wizard/sections/columnLayoutHelpers.d.ts +30 -0
  416. package/src/View/Layout/Wizard/sections/columnLayoutHelpers.js +201 -0
  417. package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.d.ts +8 -0
  418. package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.js +63 -0
  419. package/src/View/Layout/Wizard/sections/layoutWizardColumns.d.ts +11 -0
  420. package/src/View/Layout/Wizard/sections/layoutWizardColumns.js +52 -0
  421. package/src/View/License/LicenseWatermark.js +1 -1
  422. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.d.ts +1 -1
  423. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +2 -3
  424. package/src/View/NamedQuery/Wizard/NamedQuerySettingsWizardSection.js +9 -14
  425. package/src/View/NamedQuery/Wizard/NamedQueryWizard.js +1 -3
  426. package/src/View/Note/NoteEditor.js +3 -3
  427. package/src/View/Note/NotePopup.js +1 -1
  428. package/src/View/PlusMinus/Wizard/PlusMinusRuleWizardSection.d.ts +4 -0
  429. package/src/View/PlusMinus/Wizard/PlusMinusRuleWizardSection.js +43 -13
  430. package/src/View/PlusMinus/Wizard/PlusMinusScopeWizardSection.js +11 -18
  431. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.d.ts +2 -6
  432. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +7 -23
  433. package/src/View/PlusMinus/Wizard/PlusMinusWizard.js +15 -21
  434. package/src/View/QuickSearch/QuickSearchPopup.js +3 -4
  435. package/src/View/QuickSearch/useQuickSearchDebounced.js +1 -1
  436. package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +3 -3
  437. package/src/View/Shortcut/Wizard/ShortcutScopeWizardSection.js +11 -18
  438. package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +17 -6
  439. package/src/View/Shortcut/Wizard/ShortcutWizard.js +3 -3
  440. package/src/View/Shortcut/shortcutOperations.d.ts +3 -0
  441. package/src/View/Shortcut/shortcutOperations.js +28 -0
  442. package/src/View/SmartEdit/SmartEditPopup.js +2 -2
  443. package/src/View/SmartEdit/SmartEditViewPanel.js +2 -2
  444. package/src/View/SpecialColumnSettingsWizardStep.js +10 -9
  445. package/src/View/StateManagement/StateManagementPopup.js +1 -1
  446. package/src/View/StateManagement/components/ExportDropdown.d.ts +2 -2
  447. package/src/View/StateManagement/components/ExportDropdown.js +12 -12
  448. package/src/View/StatusBar/StatusBarPanel.js +2 -2
  449. package/src/View/StatusBar/StatusBarPopup.js +37 -5
  450. package/src/View/StatusBar/statusBarPanelHelpers.d.ts +2 -0
  451. package/src/View/StatusBar/statusBarPanelHelpers.js +7 -0
  452. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.d.ts +8 -1
  453. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.js +31 -19
  454. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.d.ts +10 -2
  455. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +196 -93
  456. package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.d.ts +15 -3
  457. package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.js +51 -36
  458. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.d.ts +2 -3
  459. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +108 -33
  460. package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.d.ts +5 -0
  461. package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.js +50 -0
  462. package/src/View/StyledColumn/Wizard/StyledColumnWizard.d.ts +2 -0
  463. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +76 -18
  464. package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.d.ts +5 -0
  465. package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +184 -85
  466. package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.d.ts +1 -0
  467. package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.js +34 -11
  468. package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.d.ts +5 -0
  469. package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +161 -43
  470. package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.d.ts +5 -0
  471. package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +274 -93
  472. package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.d.ts +1 -0
  473. package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.js +55 -74
  474. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.d.ts +1 -1
  475. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.js +34 -48
  476. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextLayoutEditor.d.ts +9 -0
  477. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextLayoutEditor.js +33 -0
  478. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextPreview.d.ts +23 -0
  479. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextPreview.js +57 -0
  480. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BulletRangesSummaryPreview.d.ts +5 -0
  481. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BulletRangesSummaryPreview.js +16 -0
  482. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.d.ts +3 -2
  483. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.js +8 -16
  484. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarColumnComparisonPreview.js +5 -5
  485. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarRangesPreview.js +4 -3
  486. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.d.ts +5 -4
  487. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.js +12 -14
  488. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/RangeBarRangesSummaryPreview.d.ts +5 -0
  489. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/RangeBarRangesSummaryPreview.js +16 -0
  490. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +31 -4
  491. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.d.ts +7 -0
  492. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.js +52 -0
  493. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.d.ts +2 -1
  494. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.js +5 -5
  495. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnGradientPreview.d.ts +7 -0
  496. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnGradientPreview.js +28 -0
  497. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnIconPreview.d.ts +7 -0
  498. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnIconPreview.js +89 -0
  499. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnPercentBarPreview.d.ts +5 -0
  500. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnPercentBarPreview.js +59 -0
  501. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.d.ts +5 -0
  502. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.js +45 -0
  503. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.d.ts +16 -0
  504. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.js +58 -0
  505. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnSparklinePreview.d.ts +7 -0
  506. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnSparklinePreview.js +124 -0
  507. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardRangesSection.js +12 -5
  508. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.d.ts +1 -5
  509. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +67 -80
  510. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +94 -7
  511. package/src/View/SystemStatus/Utilities/getStatusItemStyle.js +1 -1
  512. package/src/View/Theme/ThemePopup.d.ts +2 -14
  513. package/src/View/Theme/ThemePopup.js +1 -36
  514. package/src/View/UIHelper.d.ts +0 -2
  515. package/src/View/UIHelper.js +10 -25
  516. package/src/View/Wizard/CollapsibleWizardCard.d.ts +68 -0
  517. package/src/View/Wizard/CollapsibleWizardCard.js +81 -0
  518. package/src/View/Wizard/OnePageAdaptableWizard.d.ts +7 -0
  519. package/src/View/Wizard/OnePageAdaptableWizard.js +8 -22
  520. package/src/View/Wizard/OnePageWizards.d.ts +8 -0
  521. package/src/View/Wizard/OnePageWizards.js +10 -8
  522. package/src/View/Wizard/SummaryColorTag.d.ts +24 -0
  523. package/src/View/Wizard/SummaryColorTag.js +67 -0
  524. package/src/View/Wizard/WizardTypeSelection.d.ts +34 -0
  525. package/src/View/Wizard/WizardTypeSelection.js +31 -0
  526. package/src/View/Wizard/rowGroupSummaryTags.d.ts +18 -0
  527. package/src/View/Wizard/rowGroupSummaryTags.js +14 -0
  528. package/src/View/Wizard/scopeSummaryTags.d.ts +6 -0
  529. package/src/View/Wizard/scopeSummaryTags.js +33 -0
  530. package/src/View/renderWithAdaptableContext.js +2 -3
  531. package/src/agGrid/AdaptableAgGrid.d.ts +1 -1
  532. package/src/agGrid/AdaptableAgGrid.js +45 -50
  533. package/src/agGrid/AdaptableFrameworkComponent.d.ts +25 -3
  534. package/src/agGrid/AgGridAdapter.d.ts +1 -1
  535. package/src/agGrid/AgGridAdapter.js +27 -22
  536. package/src/agGrid/AgGridColumnAdapter.js +27 -34
  537. package/src/agGrid/AgGridExportAdapter.js +1 -1
  538. package/src/agGrid/AgGridFilterAdapter.js +3 -1
  539. package/src/agGrid/AgGridMenuAdapter.d.ts +0 -1
  540. package/src/agGrid/AgGridMenuAdapter.js +145 -37
  541. package/src/agGrid/cellRenderers/ActionColumnRenderer.js +4 -7
  542. package/src/agGrid/cellRenderers/BadgeRenderer.js +8 -6
  543. package/src/agGrid/cellRenderers/BulletChartRenderer.js +45 -44
  544. package/src/agGrid/cellRenderers/IconRenderer.d.ts +8 -1
  545. package/src/agGrid/cellRenderers/IconRenderer.js +58 -29
  546. package/src/agGrid/cellRenderers/PercentBarRenderer.js +26 -98
  547. package/src/agGrid/cellRenderers/RangeBarRenderer.js +52 -50
  548. package/src/agGrid/cellRenderers/RatingRenderer.js +2 -2
  549. package/src/agGrid/editors/AdaptableDateEditor/index.js +1 -1
  550. package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +12 -7
  551. package/src/components/Card/index.js +5 -6
  552. package/src/components/CheckBox/index.js +2 -3
  553. package/src/components/CodeBlock/index.js +2 -2
  554. package/src/components/ColorPicker/ColorPicker.d.ts +1 -0
  555. package/src/components/ColorPicker/ColorPicker.js +9 -7
  556. package/src/components/ColorPicker/OptionalColorPicker.d.ts +12 -0
  557. package/src/components/ColorPicker/OptionalColorPicker.js +26 -0
  558. package/src/components/ColorPicker/index.d.ts +1 -0
  559. package/src/components/ColorPicker/index.js +1 -0
  560. package/src/components/Combobox/VirtualizedList.js +5 -5
  561. package/src/components/Combobox/comboboxUtils.d.ts +5 -1
  562. package/src/components/Combobox/comboboxUtils.js +2 -0
  563. package/src/components/Combobox/index.d.ts +1 -0
  564. package/src/components/Combobox/index.js +55 -28
  565. package/src/components/Dashboard/DashboardManager.js +2 -4
  566. package/src/components/Datepicker/index.js +7 -7
  567. package/src/components/Dialog/index.js +4 -4
  568. package/src/components/DragAndDropContext/DragAndDropContext.d.ts +5 -0
  569. package/src/components/DragAndDropContext/DragAndDropContext.js +3 -0
  570. package/src/components/DragAndDropContext/ModuleManager.d.ts +15 -3
  571. package/src/components/DragAndDropContext/ModuleManager.js +50 -8
  572. package/src/components/DragAndDropContext/TabList.d.ts +11 -4
  573. package/src/components/DragAndDropContext/TabList.js +52 -38
  574. package/src/components/DragAndDropContext/UnusedPanel.d.ts +4 -3
  575. package/src/components/DragAndDropContext/UnusedPanel.js +15 -11
  576. package/src/components/DragAndDropContext/dragScope.d.ts +6 -0
  577. package/src/components/DragAndDropContext/dragScope.js +26 -0
  578. package/src/components/DragAndDropContext/types.d.ts +14 -0
  579. package/src/components/Dropdown/Arrows.js +0 -1
  580. package/src/components/DropdownButton/index.d.ts +33 -25
  581. package/src/components/DropdownButton/index.js +24 -158
  582. package/src/components/EmptyContent/index.js +2 -2
  583. package/src/components/ErrorBox/index.js +2 -2
  584. package/src/components/ExpressionEditor/BaseEditorInput.js +4 -4
  585. package/src/components/ExpressionEditor/ExpressionFunctionDocumentation.js +1 -1
  586. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +3 -3
  587. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +6 -6
  588. package/src/components/ExpressionEditor/index.js +1 -1
  589. package/src/components/FieldWrap/index.js +2 -2
  590. package/src/components/Flex.js +2 -2
  591. package/src/components/FormLayout/index.d.ts +1 -1
  592. package/src/components/FormLayout/index.js +1 -1
  593. package/src/components/HelpBlock/index.js +3 -3
  594. package/src/components/IconSelector/IconSelector.d.ts +8 -0
  595. package/src/components/IconSelector/IconSelector.js +11 -7
  596. package/src/components/IconSelector/index.d.ts +1 -0
  597. package/src/components/IconSelector/index.js +1 -0
  598. package/src/components/Input/NumberInput.js +1 -1
  599. package/src/components/Input/index.js +1 -1
  600. package/src/components/Modal/index.js +2 -2
  601. package/src/components/NewSelect/index.d.ts +2 -0
  602. package/src/components/NewSelect/index.js +22 -9
  603. package/src/components/NewTooltip/index.js +1 -1
  604. package/src/components/OverlayTrigger/index.js +1 -1
  605. package/src/components/Panel/index.js +9 -9
  606. package/src/components/Radio/index.d.ts +1 -1
  607. package/src/components/Radio/index.js +8 -6
  608. package/src/components/SimpleButton/index.js +12 -12
  609. package/src/components/StylePreview.js +2 -2
  610. package/src/components/Tabs/index.js +4 -4
  611. package/src/components/Tag/Tag.d.ts +16 -0
  612. package/src/components/Tag/Tag.js +14 -4
  613. package/src/components/Tag/columnScopeTagHelpers.d.ts +8 -0
  614. package/src/components/Tag/columnScopeTagHelpers.js +6 -0
  615. package/src/components/Tag/index.d.ts +1 -1
  616. package/src/components/Tag/index.js +1 -1
  617. package/src/components/Textarea/index.js +2 -3
  618. package/src/components/Toggle/Toggle.d.ts +2 -0
  619. package/src/components/Toggle/Toggle.js +15 -8
  620. package/src/components/Toggle/ToggleGroup.js +2 -2
  621. package/src/components/ToggleButton/index.js +4 -4
  622. package/src/components/Tree/TreeDropdown/index.js +8 -17
  623. package/src/components/WarningBox/index.js +2 -2
  624. package/src/components/icons/sort-asc.js +1 -1
  625. package/src/components/ui/button.d.ts +6 -3
  626. package/src/components/ui/button.js +6 -5
  627. package/src/components/ui/calendar.d.ts +1 -1
  628. package/src/components/ui/calendar.js +2 -2
  629. package/src/components/ui/combobox.d.ts +18 -16
  630. package/src/components/ui/combobox.js +39 -39
  631. package/src/components/ui/dropdown-menu.js +1 -1
  632. package/src/components/ui/input-group.d.ts +10 -9
  633. package/src/components/ui/input-group.js +17 -16
  634. package/src/components/ui/input.d.ts +2 -2
  635. package/src/components/ui/input.js +6 -5
  636. package/src/components/ui/popover.d.ts +5 -5
  637. package/src/components/ui/popover.js +8 -8
  638. package/src/components/ui/select.d.ts +7 -6
  639. package/src/components/ui/select.js +18 -16
  640. package/src/components/ui/textarea.d.ts +2 -2
  641. package/src/components/ui/textarea.js +5 -4
  642. package/src/components/ui/tooltip.d.ts +6 -5
  643. package/src/components/ui/tooltip.js +9 -8
  644. package/src/env.js +2 -2
  645. package/src/layout-manager/src/LayoutManagerModel.d.ts +6 -2
  646. package/src/layout-manager/src/index.js +14 -16
  647. package/src/layout-manager/src/isLayoutEqual.js +1 -1
  648. package/src/layout-manager/src/normalizeLayoutModel.js +5 -1
  649. package/src/layout-manager/src/rowGroupDisplayType.d.ts +6 -0
  650. package/src/layout-manager/src/rowGroupDisplayType.js +24 -0
  651. package/src/lib/utils.d.ts +20 -0
  652. package/src/lib/utils.js +45 -0
  653. package/src/metamodel/adaptable.metamodel.d.ts +176 -91
  654. package/src/metamodel/adaptable.metamodel.js +1 -1
  655. package/src/migration/VersionUpgrade23.d.ts +27 -32
  656. package/src/migration/VersionUpgrade23.js +112 -43
  657. package/src/types.d.ts +19 -8
  658. package/themes/dark.css +1 -70
  659. package/themes/light.css +1 -5
  660. package/tsconfig.esm.tsbuildinfo +1 -1
  661. package/src/AdaptableState/Common/FilterActionOnDataChange.d.ts +0 -17
  662. package/src/AdaptableState/Common/FilterActionOnDataChange.js +0 -4
  663. package/src/Aggregation/ParameterizedAggregationRegistry.d.ts +0 -35
  664. package/src/Aggregation/ParameterizedAggregationRegistry.js +0 -63
  665. package/src/Aggregation/definitions/weightedAverageAggregationDefinition.d.ts +0 -3
  666. package/src/Aggregation/definitions/weightedAverageAggregationDefinition.js +0 -55
  667. package/src/Aggregation/parameterizedAggregationColumnMenu.d.ts +0 -8
  668. package/src/Aggregation/parameterizedAggregationColumnMenu.js +0 -137
  669. package/src/Aggregation/parameterizedAggregationHeader.d.ts +0 -13
  670. package/src/Aggregation/parameterizedAggregationHeader.js +0 -60
  671. package/src/Aggregation/parameterizedAggregationHelpers.d.ts +0 -23
  672. package/src/Aggregation/parameterizedAggregationHelpers.js +0 -111
  673. package/src/Aggregation/parameterizedAggregationWizardHelpers.d.ts +0 -9
  674. package/src/Aggregation/parameterizedAggregationWizardHelpers.js +0 -66
  675. package/src/Aggregation/validateParameterizedAggregations.d.ts +0 -4
  676. package/src/Aggregation/validateParameterizedAggregations.js +0 -20
  677. package/src/Utilities/Defaults/DefaultSettingsPanel.d.ts +0 -5
  678. package/src/Utilities/Defaults/DefaultSettingsPanel.js +0 -42
  679. package/src/Utilities/Helpers/StyledColumnGradientHelper.d.ts +0 -30
  680. package/src/Utilities/Helpers/StyledColumnGradientHelper.js +0 -41
  681. package/src/Utilities/Helpers/iconStyledColumnColumnSupport.d.ts +0 -5
  682. package/src/Utilities/Helpers/iconStyledColumnColumnSupport.js +0 -15
  683. package/src/Utilities/Helpers/styledColumnRowKindSupport.d.ts +0 -25
  684. package/src/Utilities/Helpers/styledColumnRowKindSupport.js +0 -63
  685. package/src/Utilities/utils/chunk.d.ts +0 -6
  686. package/src/Utilities/utils/chunk.js +0 -17
  687. package/src/Utilities/utils/clamp.d.ts +0 -5
  688. package/src/Utilities/utils/clamp.js +0 -7
  689. package/src/Utilities/utils/cloneDeepWith.d.ts +0 -9
  690. package/src/Utilities/utils/cloneDeepWith.js +0 -67
  691. package/src/Utilities/utils/debounce.d.ts +0 -20
  692. package/src/Utilities/utils/flatten.d.ts +0 -5
  693. package/src/Utilities/utils/flatten.js +0 -7
  694. package/src/Utilities/utils/flattenDeep.d.ts +0 -5
  695. package/src/Utilities/utils/flattenDeep.js +0 -7
  696. package/src/Utilities/utils/get.d.ts +0 -6
  697. package/src/Utilities/utils/get.js +0 -35
  698. package/src/Utilities/utils/index.d.ts +0 -22
  699. package/src/Utilities/utils/index.js +0 -22
  700. package/src/Utilities/utils/isArray.d.ts +0 -6
  701. package/src/Utilities/utils/isArray.js +0 -6
  702. package/src/Utilities/utils/isEqual.d.ts +0 -5
  703. package/src/Utilities/utils/isEqual.js +0 -124
  704. package/src/Utilities/utils/isObject.d.ts +0 -6
  705. package/src/Utilities/utils/isObject.js +0 -9
  706. package/src/Utilities/utils/isPlainObject.d.ts +0 -6
  707. package/src/Utilities/utils/isPlainObject.js +0 -17
  708. package/src/Utilities/utils/kebabCase.d.ts +0 -5
  709. package/src/Utilities/utils/kebabCase.js +0 -8
  710. package/src/Utilities/utils/merge.d.ts +0 -11
  711. package/src/Utilities/utils/merge.js +0 -40
  712. package/src/Utilities/utils/mergeWith.d.ts +0 -7
  713. package/src/Utilities/utils/mergeWith.js +0 -46
  714. package/src/Utilities/utils/orderBy.d.ts +0 -8
  715. package/src/Utilities/utils/orderBy.js +0 -30
  716. package/src/Utilities/utils/parseInt.d.ts +0 -6
  717. package/src/Utilities/utils/parseInt.js +0 -9
  718. package/src/Utilities/utils/sentenceCase.d.ts +0 -6
  719. package/src/Utilities/utils/sentenceCase.js +0 -15
  720. package/src/Utilities/utils/startCase.d.ts +0 -5
  721. package/src/Utilities/utils/startCase.js +0 -11
  722. package/src/Utilities/utils/throttle.d.ts +0 -17
  723. package/src/Utilities/utils/throttle.js +0 -19
  724. package/src/Utilities/utils/toNumber.d.ts +0 -5
  725. package/src/Utilities/utils/toNumber.js +0 -39
  726. package/src/Utilities/utils/uniq.d.ts +0 -7
  727. package/src/Utilities/utils/uniq.js +0 -9
  728. package/src/Utilities/utils/uniqBy.d.ts +0 -8
  729. package/src/Utilities/utils/uniqBy.js +0 -22
  730. package/src/Utilities/utils/words.d.ts +0 -7
  731. package/src/Utilities/utils/words.js +0 -10
  732. package/src/View/AdaptableComputedCSSVarsContext.d.ts +0 -12
  733. package/src/View/AdaptableComputedCSSVarsContext.js +0 -29
  734. package/src/View/DataChangeHistory/DataChangeHistoryGrid.d.ts +0 -17
  735. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +0 -290
  736. package/src/View/Layout/Wizard/sections/ParameterizedAggFuncPicker.d.ts +0 -12
  737. package/src/View/Layout/Wizard/sections/ParameterizedAggFuncPicker.js +0 -43
  738. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgeSettings.d.ts +0 -5
  739. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgeSettings.js +0 -28
  740. package/src/View/Theme/VariantSelector.d.ts +0 -8
  741. package/src/View/Theme/VariantSelector.js +0 -20
  742. package/src/agGrid/cellRenderers/shouldRenderStyledColumnOnRow.d.ts +0 -30
  743. package/src/components/DropdownButton/DropdownButtonItem.d.ts +0 -12
  744. package/src/components/DropdownButton/renderItem.d.ts +0 -14
  745. package/src/components/DropdownButton/renderItem.js +0 -11
  746. package/src/components/DropdownButton/useExpanded.d.ts +0 -24
  747. package/src/components/DropdownButton/useExpanded.js +0 -56
  748. package/src/components/NewDropdownButton/index.d.ts +0 -26
  749. package/src/components/NewDropdownButton/index.js +0 -24
  750. package/src/components/Select/CSSNumericVariableWatch.d.ts +0 -11
  751. package/src/components/Select/CSSNumericVariableWatch.js +0 -45
  752. /package/src/{Utilities → AdaptableState/Aggregations}/only.d.ts +0 -0
  753. /package/src/{Utilities → AdaptableState/Aggregations}/only.js +0 -0
  754. /package/src/{Utilities → AdaptableState/Aggregations}/weightedAverage.d.ts +0 -0
  755. /package/src/{components/DropdownButton/DropdownButtonItem.js → AdaptableState/StyledColumns/BulletChartStyle.js} +0 -0
  756. /package/src/Utilities/Helpers/{ActionColumnWidthHelper.d.ts → ActionColumnHelper.d.ts} +0 -0
  757. /package/src/Utilities/Helpers/{ActionColumnWidthHelper.js → ActionColumnHelper.js} +0 -0
  758. /package/src/Utilities/Helpers/{alertFormHelper.d.ts → AlertHelper.d.ts} +0 -0
  759. /package/src/Utilities/Helpers/{chartingHelper.d.ts → ChartHelper.d.ts} +0 -0
  760. /package/src/Utilities/Helpers/{chartingHelper.js → ChartHelper.js} +0 -0
  761. /package/src/Utilities/Helpers/{FormatHelper.d.ts → DisplayFormatHelper.d.ts} +0 -0
  762. /package/src/Utilities/Helpers/{plusMinusTriggerKeys.d.ts → PlusMinusHelper.d.ts} +0 -0
  763. /package/src/Utilities/Helpers/{plusMinusTriggerKeys.js → PlusMinusHelper.js} +0 -0
  764. /package/src/Utilities/Helpers/{QuickSearchStyleHelper.d.ts → QuickSearchHelper.d.ts} +0 -0
  765. /package/src/Utilities/Helpers/{ScheduleJobManager.js → Scheduling/ScheduleJobManager.js} +0 -0
  766. /package/src/Utilities/Helpers/{ScheduleJobRunner.js → Scheduling/ScheduleJobRunner.js} +0 -0
@@ -1,4 +1,5 @@
1
- import { IconStyle, IconStyleMapping, StyledColumn } from '../../AdaptableState/StyledColumnState';
1
+ import { StyledColumn } from '../../AdaptableState/StyledColumnState';
2
+ import { IconStyle, IconStyleMapping } from '../../AdaptableState/StyledColumns/IconStyle';
2
3
  import { AdaptableApi } from '../../Api/AdaptableApi';
3
4
  import { AdaptableColumn } from '../../AdaptableState/Common/AdaptableColumn';
4
5
  /**
@@ -18,6 +19,12 @@ import { AdaptableColumn } from '../../AdaptableState/Common/AdaptableColumn';
18
19
  * is configured for case-insensitive matching.
19
20
  */
20
21
  export declare const resolveEffectiveIconStyleMappings: (iconStyle: IconStyle | undefined) => IconStyleMapping[];
22
+ /**
23
+ * Mapping list for wizard / settings summaries: custom mappings first so
24
+ * user-authored entries are always visible, then any remaining preset
25
+ * entries (after override filtering).
26
+ */
27
+ export declare const resolveIconStyleMappingsForSummaryPreview: (iconStyle: IconStyle | undefined) => IconStyleMapping[];
21
28
  export declare const getIconRendererForColumn: (styledColumn: StyledColumn, abColumn: AdaptableColumn, api: AdaptableApi) => any;
22
29
  /** Helper exposed for the tooltip getter in `AgGridColumnAdapter`. */
23
30
  export declare const findIconStyleMappingForValue: (iconStyle: IconStyle | undefined, cellValue: any) => IconStyleMapping | undefined;
@@ -2,12 +2,30 @@ import * as React from 'react';
2
2
  import { IconComponent, isAdaptableSystemIcon, isAdaptableCustomIcon, isAdaptableElementIcon, } from '../../components/Icon';
3
3
  import { renderWithAdaptableContext } from '../../View/renderWithAdaptableContext';
4
4
  import Helper from '../../Utilities/Helpers/Helper';
5
- import { getIconStylePresetMappings } from '../../Utilities/Helpers/IconStylePresets';
6
- import { shouldRenderStyledColumnOnRow } from './shouldRenderStyledColumnOnRow';
7
- import { isUnsupportedColumnDataTypeForIconStyle } from '../../Utilities/Helpers/iconStyledColumnColumnSupport';
5
+ import { getIconStylePresetMappings, isUnsupportedColumnDataTypeForIconStyle, } from '../../Utilities/Helpers/StyledColumns/IconStyleHelper';
6
+ import { shouldRenderStyledColumnOnRow } from '../../Utilities/Helpers/StyledColumns/StyledColumnHelper';
8
7
  import { errorOnce } from '../AdaptableLogger';
9
8
  const DEFAULT_SIZE = 18;
10
9
  const DEFAULT_GAP = 4;
10
+ const normaliseIconMappingKey = (key, matchMode) => {
11
+ if (typeof key === 'string' && matchMode === 'CaseInsensitive') {
12
+ return key.toLowerCase();
13
+ }
14
+ return key;
15
+ };
16
+ const resolveIconStyleMappingParts = (iconStyle) => {
17
+ const presetMappings = iconStyle.Preset
18
+ ? getIconStylePresetMappings(iconStyle.Preset)
19
+ : [];
20
+ const userMappings = iconStyle.Mappings ?? [];
21
+ if (presetMappings.length === 0 || userMappings.length === 0) {
22
+ return { presetMappings, userMappings };
23
+ }
24
+ const matchMode = iconStyle.MatchMode ?? 'Exact';
25
+ const overrideKeys = new Set(userMappings.map((m) => normaliseIconMappingKey(m.Key, matchMode)));
26
+ const filteredPreset = presetMappings.filter((p) => !overrideKeys.has(normaliseIconMappingKey(p.Key, matchMode)));
27
+ return { presetMappings: filteredPreset, userMappings };
28
+ };
11
29
  /**
12
30
  * Resolve the **effective** mapping list for an `IconStyle`:
13
31
  *
@@ -27,24 +45,33 @@ const DEFAULT_GAP = 4;
27
45
  export const resolveEffectiveIconStyleMappings = (iconStyle) => {
28
46
  if (!iconStyle)
29
47
  return [];
30
- const presetMappings = iconStyle.Preset
31
- ? getIconStylePresetMappings(iconStyle.Preset)
32
- : [];
33
- const userMappings = iconStyle.Mappings ?? [];
48
+ const { presetMappings, userMappings } = resolveIconStyleMappingParts(iconStyle);
34
49
  if (presetMappings.length === 0)
35
50
  return userMappings;
36
- if (userMappings.length === 0)
37
- return presetMappings;
38
- const matchMode = iconStyle.MatchMode ?? 'Exact';
39
- const normaliseKey = (k) => {
40
- if (typeof k === 'string' && matchMode === 'CaseInsensitive') {
41
- return k.toLowerCase();
51
+ if (userMappings.length === 0) {
52
+ return iconStyle.Preset ? getIconStylePresetMappings(iconStyle.Preset) : [];
53
+ }
54
+ return [...presetMappings, ...userMappings];
55
+ };
56
+ /**
57
+ * Mapping list for wizard / settings summaries: custom mappings first so
58
+ * user-authored entries are always visible, then any remaining preset
59
+ * entries (after override filtering).
60
+ */
61
+ export const resolveIconStyleMappingsForSummaryPreview = (iconStyle) => {
62
+ if (!iconStyle)
63
+ return [];
64
+ const { presetMappings, userMappings } = resolveIconStyleMappingParts(iconStyle);
65
+ if (userMappings.length === 0) {
66
+ if (presetMappings.length > 0) {
67
+ return presetMappings;
42
68
  }
43
- return k;
44
- };
45
- const overrideKeys = new Set(userMappings.map((m) => normaliseKey(m.Key)));
46
- const filteredPreset = presetMappings.filter((p) => !overrideKeys.has(normaliseKey(p.Key)));
47
- return [...filteredPreset, ...userMappings];
69
+ return iconStyle.Preset ? getIconStylePresetMappings(iconStyle.Preset) : [];
70
+ }
71
+ if (presetMappings.length === 0) {
72
+ return userMappings;
73
+ }
74
+ return [...userMappings, ...presetMappings];
48
75
  };
49
76
  /**
50
77
  * Look up `cellValue` in the mapping list using the configured match mode.
@@ -165,7 +192,9 @@ export const getIconRendererForColumn = (styledColumn, abColumn, api) => {
165
192
  const iconStyle = styledColumn.IconStyle;
166
193
  const size = iconStyle.Size ?? DEFAULT_SIZE;
167
194
  const gap = iconStyle.Gap ?? DEFAULT_GAP;
168
- const textPosition = iconStyle.CellTextPosition ?? 'After';
195
+ const cellTextProperties = iconStyle.CellTextProperties;
196
+ const textPosition = cellTextProperties?.CellTextPosition ?? 'After';
197
+ const cellTextTokens = cellTextProperties?.CellText ?? [];
169
198
  const matchMode = iconStyle.MatchMode ?? 'Exact';
170
199
  // Resolve once at column-setup time. Cheap; recomputed when the column
171
200
  // is reconfigured (which is when this factory is re-invoked anyway).
@@ -202,16 +231,15 @@ export const getIconRendererForColumn = (styledColumn, abColumn, api) => {
202
231
  const formatted = params.formatValue?.(cellValue) ??
203
232
  (cellValue != undefined ? String(cellValue) : '');
204
233
  // `CellText` describes the *companion text alongside a matched icon*.
205
- // `Fallback` describes *what to do when no mapping matches*. They are
206
- // independent: when there is no match, `Fallback` decides on its own
207
- // — `CellText` does not get to override `Fallback: 'Hide'`.
234
+ // `FallbackProperties.Mode` describes *what to do when no mapping matches*.
235
+ // They are independent: when there is no match, the fallback decides
236
+ // on its own — `CellText` does not get to override `Mode: 'Hide'`.
208
237
  let iconSpec;
209
238
  let text;
210
239
  let descriptionForTooltip;
211
240
  if (matched) {
212
241
  iconSpec = matched.Icon;
213
242
  descriptionForTooltip = matched.Description;
214
- const cellTextTokens = iconStyle.CellText ?? [];
215
243
  const textParts = [];
216
244
  if (cellTextTokens.includes('CellValue') && formatted) {
217
245
  textParts.push(formatted);
@@ -222,17 +250,18 @@ export const getIconRendererForColumn = (styledColumn, abColumn, api) => {
222
250
  text = textParts.length > 0 ? textParts.join(' · ') : undefined;
223
251
  }
224
252
  else if (!cellValueIsEmpty) {
225
- // Unmatched, non-empty cell: defer entirely to `Fallback`.
226
- const fallback = iconStyle.Fallback ?? 'Hide';
227
- if (fallback === 'ShowText') {
253
+ // Unmatched, non-empty cell: defer entirely to the fallback config.
254
+ const fallbackMode = iconStyle.FallbackProperties?.Mode ?? 'Hide';
255
+ const fallbackIcon = iconStyle.FallbackProperties?.Icon;
256
+ if (fallbackMode === 'ShowText') {
228
257
  text = formatted || undefined;
229
258
  }
230
- else if (fallback === 'Icon' && iconStyle.FallbackIcon) {
231
- iconSpec = iconStyle.FallbackIcon;
259
+ else if (fallbackMode === 'Icon' && fallbackIcon) {
260
+ iconSpec = fallbackIcon;
232
261
  }
233
262
  // 'Hide' (and the unsupported permutations) render nothing.
234
263
  }
235
- // else: empty cell → render nothing, regardless of `Fallback`.
264
+ // else: empty cell → render nothing, regardless of fallback config.
236
265
  // If we have nothing to draw, leave the cell empty (and skip mounting
237
266
  // a React root for this row).
238
267
  if (!iconSpec && !text) {
@@ -1,6 +1,7 @@
1
1
  import Helper from '../../Utilities/Helpers/Helper';
2
- import clamp from '../../Utilities/utils/clamp';
3
- import { shouldRenderStyledColumnOnRow } from './shouldRenderStyledColumnOnRow';
2
+ import { clamp } from '../../Utilities/Extensions/NumberExtensions';
3
+ import { shouldRenderStyledColumnOnRow } from '../../Utilities/Helpers/StyledColumns/StyledColumnHelper';
4
+ import { buildBarStyleCellTextLabels, hasBarStyleCellTextConfigured, mountBarStyleCellText, } from '../../Utilities/Helpers/StyledColumns/BarStylesHelper';
4
5
  /**
5
6
  * Resolve the origin value (in the same numeric space as `min`/`max`) the bar
6
7
  * should grow from.
@@ -41,58 +42,6 @@ const columnComparisonUsesCentredAxis = (origin) => {
41
42
  }
42
43
  return o === 'Zero' || o === 'Auto';
43
44
  };
44
- /**
45
- * Linear (non-comparison) mode: bar grows from an interior point of the scale
46
- * (so positives / negatives can diverge left and right).
47
- */
48
- const linearScaleUsesCentredAxis = (percentBarStyle, cellValue, min, max) => {
49
- const origin = percentBarStyle.Origin ?? 'Auto';
50
- if (origin === 'Zero') {
51
- return true;
52
- }
53
- if (origin === 'Min') {
54
- return false;
55
- }
56
- if (typeof origin === 'number') {
57
- if (max === min) {
58
- return false;
59
- }
60
- const f = toFraction(origin, min, max);
61
- return f > 0 && f < 1;
62
- }
63
- // Auto — same condition as resolveOrigin using 0 as the pivot.
64
- return min < 0 || max < 0 || cellValue < 0;
65
- };
66
- const resolveCellTextAlignCss = (percentBarStyle, args) => {
67
- const mode = percentBarStyle.CellTextAlignment;
68
- if (mode == undefined) {
69
- return undefined;
70
- }
71
- if (mode === 'Left') {
72
- return 'left';
73
- }
74
- if (mode === 'Right') {
75
- return 'right';
76
- }
77
- if (mode === 'Center') {
78
- return 'center';
79
- }
80
- // Auto
81
- const centred = args.hasColumnComparison
82
- ? columnComparisonUsesCentredAxis(percentBarStyle.Origin)
83
- : linearScaleUsesCentredAxis(percentBarStyle, args.numericValue, args.min, args.max);
84
- if (!centred) {
85
- return undefined;
86
- }
87
- const v = args.hasColumnComparison ? args.percentageValue : args.numericValue;
88
- if (v > 0) {
89
- return 'right';
90
- }
91
- if (v < 0) {
92
- return 'left';
93
- }
94
- return 'center';
95
- };
96
45
  export const getPercentBarRendererForColumn = (styledColumn, abColumn, api) => {
97
46
  if (!styledColumn.PercentBarStyle) {
98
47
  return;
@@ -191,11 +140,14 @@ export const getPercentBarRendererForColumn = (styledColumn, abColumn, api) => {
191
140
  }
192
141
  }
193
142
  // ----- Build the DOM -------------------------------------------------
194
- const hasCellText = percentBarStyle.CellText && percentBarStyle.CellText.length > 0;
195
- const isTextPositionMerged = percentBarStyle.CellTextPosition === 'Merged';
143
+ const cellTextProperties = percentBarStyle.CellTextProperties;
144
+ const hasCellText = hasBarStyleCellTextConfigured(cellTextProperties);
145
+ // Wrapper always fills the cell. The bar is the flex-grow child so it
146
+ // claims whatever space the (compact) text rows leave, with a small
147
+ // floor to stay visible even on short rows.
196
148
  this.eGui = document.createElement('div');
197
149
  this.eGui.className = 'ab-PercentBar__wrapper';
198
- this.eGui.style.height = hasCellText && !isTextPositionMerged ? '80%' : '100%';
150
+ this.eGui.style.height = '100%';
199
151
  this.eGui.style.display = 'flex';
200
152
  this.eGui.style.flexDirection = 'column';
201
153
  this.eGui.style.justifyContent = 'center';
@@ -208,7 +160,10 @@ export const getPercentBarRendererForColumn = (styledColumn, abColumn, api) => {
208
160
  if (percentBarStyle.BackColor) {
209
161
  barEl.style.background = percentBarStyle.BackColor;
210
162
  }
211
- barEl.style.flex = '1';
163
+ barEl.style.flex = '1 1 0';
164
+ // Floor so the bar can't be squeezed out of existence when both
165
+ // `Above` and `Below` bands are populated on a short row.
166
+ barEl.style.minHeight = '6px';
212
167
  // Render the inside bar whenever a colour has been resolved, even at
213
168
  // 0% width. A zero-width div is visually identical to skipping the
214
169
  // element but keeps the DOM consistent so tests / tooling can still
@@ -229,47 +184,20 @@ export const getPercentBarRendererForColumn = (styledColumn, abColumn, api) => {
229
184
  }
230
185
  this.eGui.append(barEl);
231
186
  if (hasCellText) {
232
- const textEl = document.createElement('div');
233
- textEl.className = 'ab-PercentBar__text';
234
- textEl.style.lineHeight = '1.2';
235
- const parts = [];
236
- if (percentBarStyle.CellText.includes('CellValue')) {
237
- parts.push(params.formatValue?.(rawCellValue) ?? String(rawCellValue));
238
- }
239
- if (percentBarStyle.CellText.includes('PercentageValue')) {
240
- parts.push(`${percentageValue.toFixed(0)}%`);
241
- }
242
- textEl.innerText = parts.join(' ');
243
- const textAlignCss = resolveCellTextAlignCss(percentBarStyle, {
244
- numericValue,
245
- percentageValue,
246
- min,
247
- max,
248
- hasColumnComparison: !!percentBarStyle.ColumnComparison,
187
+ // Coerce to string: when no `valueFormatter` is set on the column,
188
+ // `params.formatValue` returns the raw value (a number for numeric
189
+ // columns), which then propagates through the helpers as a non-string
190
+ // and breaks string-only operations (e.g. `.length` checks).
191
+ const formattedCellValue = String(params.formatValue?.(rawCellValue) ?? rawCellValue);
192
+ const labels = buildBarStyleCellTextLabels(cellTextProperties, formattedCellValue, `${percentageValue.toFixed(0)}%`);
193
+ mountBarStyleCellText({
194
+ wrapperEl: this.eGui,
195
+ mergedOverlayEl: barEl,
196
+ textClassName: 'ab-PercentBar__text',
197
+ cellTextProperties,
198
+ labels,
199
+ mergedPointerEventsNone: false,
249
200
  });
250
- if (textAlignCss) {
251
- textEl.style.textAlign = textAlignCss;
252
- }
253
- switch (percentBarStyle.CellTextPosition) {
254
- case 'Above':
255
- this.eGui.prepend(textEl);
256
- break;
257
- case 'Merged':
258
- textEl.style.position = 'absolute';
259
- // Centre vertically without knowing the row height
260
- textEl.style.top = '50%';
261
- textEl.style.transform = 'translateY(-50%)';
262
- textEl.style.left = '0';
263
- textEl.style.right = '0';
264
- textEl.style.paddingLeft = '5px';
265
- textEl.style.paddingRight = '5px';
266
- barEl.append(textEl);
267
- break;
268
- case 'Below':
269
- default:
270
- this.eGui.append(textEl);
271
- break;
272
- }
273
201
  }
274
202
  }
275
203
  getGui() {
@@ -1,6 +1,7 @@
1
1
  import Helper from '../../Utilities/Helpers/Helper';
2
- import clamp from '../../Utilities/utils/clamp';
3
- import { shouldRenderStyledColumnOnRow } from './shouldRenderStyledColumnOnRow';
2
+ import { clamp } from '../../Utilities/Extensions/NumberExtensions';
3
+ import { buildBarStyleCellTextLabels, hasBarStyleCellTextConfigured, mountBarStyleCellText, } from '../../Utilities/Helpers/StyledColumns/BarStylesHelper';
4
+ import { shouldRenderStyledColumnOnRow } from '../../Utilities/Helpers/StyledColumns/StyledColumnHelper';
4
5
  const SVG_NS = 'http://www.w3.org/2000/svg';
5
6
  const DEFAULT_TRACK_HEIGHT = 4;
6
7
  const DEFAULT_BAND_HEIGHT = 14;
@@ -46,8 +47,7 @@ const normaliseMarker = (override, defaults) => {
46
47
  return {
47
48
  Shape: shape,
48
49
  Color: override?.Color ?? defaults.Color,
49
- Size: override?.Size ??
50
- (shape === 'Line' ? DEFAULT_LINE_MARKER_THICKNESS : defaults.Size),
50
+ Size: override?.Size ?? (shape === 'Line' ? DEFAULT_LINE_MARKER_THICKNESS : defaults.Size),
51
51
  };
52
52
  };
53
53
  /**
@@ -96,8 +96,9 @@ export const getRangeBarRendererForColumn = (styledColumn, abColumn, api) => {
96
96
  this.eGui.append(params.formatValue?.(rawCellValue) ?? String(rawCellValue));
97
97
  return;
98
98
  }
99
- const referenceValue = rangeStyle.Reference != undefined
100
- ? resolveBoundValue(rangeStyle.Reference, abColumn, params.node, api)
99
+ const referenceProperties = rangeStyle.Reference;
100
+ const referenceValue = referenceProperties?.Value != undefined
101
+ ? resolveBoundValue(referenceProperties.Value, abColumn, params.node, api)
101
102
  : undefined;
102
103
  // Markers - resolve user overrides against per-marker defaults.
103
104
  const valueMarker = normaliseMarker(rangeStyle.Marker, {
@@ -105,21 +106,24 @@ export const getRangeBarRendererForColumn = (styledColumn, abColumn, api) => {
105
106
  Color: DEFAULT_VALUE_MARKER_COLOR,
106
107
  Size: DEFAULT_VALUE_MARKER_SIZE,
107
108
  });
108
- const referenceMarker = normaliseMarker(rangeStyle.ReferenceMarker, {
109
+ const referenceMarker = normaliseMarker(referenceProperties?.Marker, {
109
110
  Shape: 'Line',
110
111
  Color: DEFAULT_REFERENCE_MARKER_COLOR,
111
112
  Size: DEFAULT_LINE_MARKER_THICKNESS,
112
113
  });
113
114
  // Out-of-range handling
114
- const outOfRangeMode = rangeStyle.OutOfRangeMode ?? 'Clamp';
115
+ const outOfRangeProperties = rangeStyle.OutOfRange;
116
+ const outOfRangeMode = outOfRangeProperties?.Mode ?? 'Clamp';
117
+ const outOfRangeColor = outOfRangeProperties?.Color;
115
118
  const isOutOfRange = numericValue < min || numericValue > max;
116
119
  const hideValueMarker = isOutOfRange && outOfRangeMode === 'Hide';
117
120
  // Layout
118
121
  const isVertical = rangeStyle.Orientation === 'Vertical';
119
- const trackThickness = rangeStyle.TrackHeight ?? DEFAULT_TRACK_HEIGHT;
122
+ const trackProperties = rangeStyle.Track;
123
+ const trackThickness = trackProperties?.Height ?? DEFAULT_TRACK_HEIGHT;
120
124
  const bandThickness = Math.max(trackThickness + 6, DEFAULT_BAND_HEIGHT);
121
- const hasCellText = rangeStyle.CellText && rangeStyle.CellText.length > 0;
122
- const isTextMerged = rangeStyle.CellTextPosition === 'Merged';
125
+ const cellTextProperties = rangeStyle.CellTextProperties;
126
+ const hasCellText = hasBarStyleCellTextConfigured(cellTextProperties);
123
127
  // Map a 0..1 fraction onto the long-axis viewBox (0..100). Vertical
124
128
  // orientation inverts so that lower values appear at the bottom of
125
129
  // the cell, matching user expectation.
@@ -132,7 +136,7 @@ export const getRangeBarRendererForColumn = (styledColumn, abColumn, api) => {
132
136
  this.eGui.style.alignItems = isVertical ? 'center' : 'stretch';
133
137
  this.eGui.style.justifyContent = 'center';
134
138
  this.eGui.style.position = 'relative';
135
- this.eGui.style.height = hasCellText && !isTextMerged ? '80%' : '100%';
139
+ this.eGui.style.height = '100%';
136
140
  const svg = document.createElementNS(SVG_NS, 'svg');
137
141
  svg.setAttribute('class', 'ab-RangeBar__svg');
138
142
  svg.setAttribute('preserveAspectRatio', 'none');
@@ -191,11 +195,11 @@ export const getRangeBarRendererForColumn = (styledColumn, abColumn, api) => {
191
195
  const trackCrossOffset = (bandThickness - trackThickness) / 2;
192
196
  const track = document.createElementNS(SVG_NS, 'rect');
193
197
  setRectAxes(track, 0, 100, trackCrossOffset, trackThickness);
194
- track.setAttribute('fill', rangeStyle.TrackColor ?? DEFAULT_TRACK_COLOR);
198
+ track.setAttribute('fill', trackProperties?.Color ?? DEFAULT_TRACK_COLOR);
195
199
  track.setAttribute('class', 'ab-RangeBar__track');
196
200
  // Slight transparency by default so the track doesn't drown out the
197
- // band colours; honour explicit user TrackColor as-is.
198
- if (rangeStyle.TrackColor == undefined) {
201
+ // band colours; honour explicit user Track.Color as-is.
202
+ if (trackProperties?.Color == undefined) {
199
203
  // With no bands the cell background is often plain — the same muted
200
204
  // foreground at 0.35 opacity can disappear (only the accent marker reads).
201
205
  // Bands provide contrast underneath, so keep the subtle blend there.
@@ -224,8 +228,8 @@ export const getRangeBarRendererForColumn = (styledColumn, abColumn, api) => {
224
228
  valueFraction = toFraction(numericValue, min, max);
225
229
  }
226
230
  const valueCoord = valueAxisCoord(valueFraction);
227
- const effectiveMarker = isOutOfRange && outOfRangeMode === 'Clamp' && rangeStyle.OutOfRangeColor
228
- ? { ...valueMarker, Color: rangeStyle.OutOfRangeColor }
231
+ const effectiveMarker = isOutOfRange && outOfRangeMode === 'Clamp' && outOfRangeColor
232
+ ? { ...valueMarker, Color: outOfRangeColor }
229
233
  : valueMarker;
230
234
  const markerEl = createMarkerElement(effectiveMarker, valueCoord, bandThickness, isVertical);
231
235
  if (markerEl) {
@@ -233,40 +237,38 @@ export const getRangeBarRendererForColumn = (styledColumn, abColumn, api) => {
233
237
  svg.appendChild(markerEl);
234
238
  }
235
239
  }
236
- this.eGui.appendChild(svg);
240
+ // Wrap the SVG in a positioned container so a `Merged` text row sits
241
+ // centred on the *bar*, not on the cell — see BulletChartRenderer for
242
+ // the same fix and Percent Bar for the matching behaviour via its
243
+ // `barEl`.
244
+ const svgContainer = document.createElement('div');
245
+ svgContainer.style.position = 'relative';
246
+ svgContainer.style.display = 'flex';
247
+ svgContainer.style.alignItems = 'center';
248
+ svgContainer.style.justifyContent = 'center';
249
+ if (isVertical) {
250
+ svgContainer.style.flex = '1 1 auto';
251
+ svgContainer.style.minHeight = '0';
252
+ }
253
+ else {
254
+ svgContainer.style.flex = '0 0 auto';
255
+ }
256
+ svgContainer.appendChild(svg);
257
+ this.eGui.appendChild(svgContainer);
237
258
  if (hasCellText) {
238
- const textEl = document.createElement('div');
239
- textEl.className = 'ab-RangeBar__text';
240
- textEl.style.lineHeight = '1.2';
241
- const parts = [];
242
- if (rangeStyle.CellText.includes('CellValue')) {
243
- parts.push(params.formatValue?.(numericValue) ?? String(numericValue));
244
- }
245
- if (rangeStyle.CellText.includes('PercentageValue')) {
246
- const pct = clamp((numericValue - min) / (max - min), 0, 1) * 100;
247
- parts.push(`${pct.toFixed(0)}%`);
248
- }
249
- textEl.innerText = parts.join(' ');
250
- switch (rangeStyle.CellTextPosition) {
251
- case 'Above':
252
- this.eGui.prepend(textEl);
253
- break;
254
- case 'Merged':
255
- textEl.style.position = 'absolute';
256
- textEl.style.top = '50%';
257
- textEl.style.transform = 'translateY(-50%)';
258
- textEl.style.left = '0';
259
- textEl.style.right = '0';
260
- textEl.style.paddingLeft = '5px';
261
- textEl.style.paddingRight = '5px';
262
- textEl.style.pointerEvents = 'none';
263
- this.eGui.appendChild(textEl);
264
- break;
265
- case 'Below':
266
- default:
267
- this.eGui.appendChild(textEl);
268
- break;
269
- }
259
+ const pct = clamp((numericValue - min) / (max - min), 0, 1) * 100;
260
+ // See PercentBarRenderer: `params.formatValue` on a column without a
261
+ // `valueFormatter` returns the raw value (a number here), so coerce
262
+ // to string before it flows into the helpers.
263
+ const formattedCellValue = String(params.formatValue?.(numericValue) ?? numericValue);
264
+ const labels = buildBarStyleCellTextLabels(cellTextProperties, formattedCellValue, `${pct.toFixed(0)}%`);
265
+ mountBarStyleCellText({
266
+ wrapperEl: this.eGui,
267
+ mergedOverlayEl: svgContainer,
268
+ textClassName: 'ab-RangeBar__text',
269
+ cellTextProperties,
270
+ labels,
271
+ });
270
272
  }
271
273
  }
272
274
  getGui() {
@@ -1,6 +1,6 @@
1
1
  import Helper from '../../Utilities/Helpers/Helper';
2
- import clamp from '../../Utilities/utils/clamp';
3
- import { shouldRenderStyledColumnOnRow } from './shouldRenderStyledColumnOnRow';
2
+ import { clamp } from '../../Utilities/Extensions/NumberExtensions';
3
+ import { shouldRenderStyledColumnOnRow } from '../../Utilities/Helpers/StyledColumns/StyledColumnHelper';
4
4
  const SVG_NS = 'http://www.w3.org/2000/svg';
5
5
  const DEFAULT_MAX = 5;
6
6
  const DEFAULT_SIZE = 14;
@@ -3,7 +3,7 @@ import { renderWithAdaptableContext } from '../../../View/renderWithAdaptableCon
3
3
  import { InternalAdaptableDateEditor, } from './InternalAdaptableDateEditor';
4
4
  import { KeyCode } from 'ag-grid-enterprise';
5
5
  import { forwardRef, useImperativeHandle, useRef, useState } from 'react';
6
- import { DateFormatter } from '../../../Utilities/Helpers/FormatHelper';
6
+ import { DateFormatter } from '../../../Utilities/Helpers/DisplayFormatHelper';
7
7
  function shouldClearExistingValue(params) {
8
8
  return params.eventKey === KeyCode.BACKSPACE || params.eventKey === KeyCode.DELETE;
9
9
  }
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as React from 'react';
3
- import { flattenAdaptableFormFields, isAdaptableFormFieldDisabled, isAdaptableFormFieldGroup, isAdaptableFormFieldGroupHidden, isAdaptableFormFieldHidden, validateAdaptableForm, } from '../../AdaptableState/Common/AdaptableForm';
3
+ import { flattenAdaptableFormFields, isAdaptableFormFieldDisabled, isAdaptableFormFieldGroup, isAdaptableFormFieldGroupHidden, isAdaptableFormFieldHidden, resolveSelectPlaceholder, resolveSelectValueAfterClear, validateAdaptableForm, } from '../../AdaptableState/Common/AdaptableForm';
4
4
  import FormLayout, { FormRow } from '../FormLayout';
5
5
  import Input from '../Input';
6
6
  import { AdaptableButtonView, } from '../../View/Components/AdaptableButton';
@@ -204,10 +204,12 @@ export function AdaptableFormComponent({ formDef, data, onChange, onButtonClick,
204
204
  break;
205
205
  }
206
206
  case 'select': {
207
- const items = resolveOptions(field).map((item) => ({
207
+ const optionItems = resolveOptions(field);
208
+ const items = optionItems.map((item) => ({
208
209
  value: item.value,
209
210
  label: item.label,
210
211
  }));
212
+ const selectPlaceholder = resolveSelectPlaceholder(field, optionItems);
211
213
  // The underlying SingleCombobox / MultiCombobox manage their own
212
214
  // popup-based focus; we wrap them in a labelled `role="group"` so
213
215
  // assistive tech announces "<label> group" when focus enters and
@@ -225,10 +227,10 @@ export function AdaptableFormComponent({ formDef, data, onChange, onButtonClick,
225
227
  // anything else (e.g. legacy string defaults) to [] so the
226
228
  // underlying combobox never receives a non-array value.
227
229
  const selected = Array.isArray(value) ? value : [];
228
- control = (_jsx(Box, { ...groupProps, children: _jsx(MultiCombobox, { items: items, onValueChange: (newValues) => setFieldValue(field.name, newValues), value: selected, disabled: isDisabled, placeholder: field.placeholder }) }));
230
+ control = (_jsx(Box, { ...groupProps, children: _jsx(MultiCombobox, { items: items, onValueChange: (newValues) => setFieldValue(field.name, newValues), value: selected, disabled: isDisabled, placeholder: selectPlaceholder }) }));
229
231
  }
230
232
  else {
231
- control = (_jsx(Box, { ...groupProps, children: _jsx(SingleCombobox, { items: items, onValueChange: (newValue) => setFieldValue(field.name, newValue), value: value, disabled: isDisabled, placeholder: field.placeholder }) }));
233
+ control = (_jsx(Box, { ...groupProps, children: _jsx(SingleCombobox, { items: items, onValueChange: (newValue) => setFieldValue(field.name, resolveSelectValueAfterClear(field, newValue)), value: value, disabled: isDisabled, placeholder: selectPlaceholder }) }));
232
234
  }
233
235
  break;
234
236
  }
@@ -274,7 +276,7 @@ export function AdaptableFormComponent({ formDef, data, onChange, onButtonClick,
274
276
  if (!field.helpText && !error) {
275
277
  return control;
276
278
  }
277
- return (_jsxs(Box, { children: [control, field.helpText && !error ? (_jsx(Box, { id: helpId, className: "ab-Form_help twa:text-xs twa:opacity-70 twa:mt-1", children: field.helpText })) : null, error ? (_jsx(Box, { id: errorId, role: "alert", "aria-live": "polite", className: "ab-Form_error twa:text-xs twa:mt-1", style: { color: 'var(--ab-color-error, #c00)' }, children: error })) : null] }));
279
+ return (_jsxs(Box, { children: [control, field.helpText && !error ? (_jsx(Box, { id: helpId, className: "ab-Form_help twa:text-xs twa:opacity-70 twa:mt-1", children: field.helpText })) : null, error ? (_jsx(Box, { id: errorId, role: "alert", "aria-live": "polite", className: "ab-Form_error twa:text-xs twa:mt-1", style: { color: 'var(--ab-color-destructive, #c00)' }, children: error })) : null] }));
278
280
  };
279
281
  // by default we have 2 columns: label & input
280
282
  const columns = formDef.config?.columns ?? [1, 2];
@@ -354,10 +356,13 @@ export function AdaptableFormComponent({ formDef, data, onChange, onButtonClick,
354
356
  }
355
357
  return items
356
358
  .filter((field) => !isAdaptableFormFieldHidden(field, data, context))
357
- .map((field) => {
359
+ .map((field, index) => {
358
360
  const useFor = field.fieldType !== 'radio' && field.fieldType !== 'textOutput';
359
361
  const requiredMarker = field.required ? (_jsx("span", { className: "ab-Form_required-marker", "aria-hidden": "true", children: ' *' })) : null;
360
- return (_jsxs(Flex, { flexDirection: "row", alignItems: "center", style: { columnGap: 'var(--ab-base-space)' }, children: [field.label ? (useFor ? (_jsxs("label", { id: fieldLabelId(field), htmlFor: fieldDomId(field), className: "ab-FormLayout--inline_field-label", title: field.tooltip, children: [field.label, requiredMarker] })) : (_jsxs(Box, { id: fieldLabelId(field), className: "ab-FormLayout--inline_field-label", title: field.tooltip, children: [field.label, requiredMarker] }))) : null, renderField(field)] }, field.name));
362
+ return (_jsxs(Flex, { flexDirection: "row", alignItems: "center", style: {
363
+ columnGap: 'var(--ab-base-space)',
364
+ marginLeft: index > 0 ? 'var(--ab-base-space)' : undefined,
365
+ }, children: [field.label ? (useFor ? (_jsxs("label", { id: fieldLabelId(field), htmlFor: fieldDomId(field), className: "ab-FormLayout--inline_field-label", title: field.tooltip, children: [field.label, requiredMarker] })) : (_jsxs(Box, { id: fieldLabelId(field), className: "ab-FormLayout--inline_field-label", title: field.tooltip, children: [field.label, requiredMarker] }))) : null, renderField(field)] }, field.name));
361
366
  });
362
367
  };
363
368
  const renderRowsEntry = (entry, index) => {
@@ -1,10 +1,9 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { twMerge } from '../../twMerge';
3
- import clsx from 'clsx';
2
+ import { cn } from '../../lib/utils';
4
3
  import { Box } from '../Flex';
5
4
  export function Card(props) {
6
5
  const { shadow = true, children, className, style, gap = 2 } = props;
7
- return (_jsx(Box, { className: clsx('twa:bg-defaultbackground twa:text-foreground', 'ab-Card', 'twa:text-3', 'twa:rounded-standard twa:p-2', 'twa:flex twa:flex-col', {
6
+ return (_jsx(Box, { className: cn('twa:bg-background twa:text-foreground', 'ab-Card', 'twa:text-3', 'twa:rounded-standard twa:p-2', 'twa:flex twa:flex-col', {
8
7
  'twa:shadow-sm': shadow,
9
8
  'twa:gap-0': gap === 0,
10
9
  'twa:gap-1': gap === 1,
@@ -16,7 +15,7 @@ export function Card(props) {
16
15
  }
17
16
  const CardTitle = (props) => {
18
17
  const { children, className, gap = 2, border = true } = props;
19
- return (_jsx("div", { className: twMerge(clsx('ab-Card__title', {
18
+ return (_jsx("div", { className: cn('ab-Card__title', {
20
19
  'twa:flex twa:flex-row': true,
21
20
  'twa:items-center': true,
22
21
  'twa:text-4 twa:px-2': true,
@@ -28,11 +27,11 @@ const CardTitle = (props) => {
28
27
  'twa:gap-3': gap === 3,
29
28
  'twa:gap-4': gap === 4,
30
29
  'twa:gap-8': gap === 8,
31
- }, className)), children: children }));
30
+ }, className), children: children }));
32
31
  };
33
32
  const CardBody = (props) => {
34
33
  const { children, gap, className } = props;
35
- return (_jsx("div", { className: clsx('ab-Card__body', 'twa:overflow-auto twa:min-h-0', 'twa:flex-1 twa:flex twa:flex-col', {
34
+ return (_jsx("div", { className: cn('ab-Card__body', 'twa:overflow-auto twa:min-h-0', 'twa:flex-1 twa:flex twa:flex-col', {
36
35
  'twa:gap-0': gap === 0,
37
36
  'twa:gap-1': gap === 1,
38
37
  'twa:gap-2': gap === 2,
@@ -2,7 +2,6 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as React from 'react';
3
3
  import { useRef, useState } from 'react';
4
4
  import { Box, Flex } from '../Flex';
5
- import clsx from 'clsx';
6
5
  import { cn } from '../../lib/utils';
7
6
  import { targetPeer } from '../twUtils';
8
7
  const Square = (props) => {
@@ -44,10 +43,10 @@ const CheckBox = ({ children, checked, onChange, value, name, disabled, readOnly
44
43
  React.useEffect(() => {
45
44
  checkboxRef.current.indeterminate = indeterminate;
46
45
  }, [indeterminate]);
47
- let input = (_jsx("input", { className: clsx(`ab-CheckBox-input twa:peer twa:align-middle twa:opacity-0`, {
46
+ let input = (_jsx("input", { className: cn(`ab-CheckBox-input twa:peer twa:align-middle twa:opacity-0`, {
48
47
  'twa:cursor-pointer': !readOnly && !disabled,
49
48
  }), ref: checkboxRef, disabled: disabled, readOnly: readOnly, checked: !!computedChecked, tabIndex: tabIndex, type: "checkbox", name: name, value: value, onChange: onInputChange }));
50
- return (_jsxs(Box, { ...props, className: clsx('twa:my-2', 'ab-CheckBox', `ab-CheckBox--${type}`, `ab-CheckBox--variant-${variant}`, disabled ? 'ab-CheckBox--disabled' : '', readOnly ? 'ab-CheckBox--readonly' : '', props.className), style: props.style, as: as, children: [before, beforeGap, input, _jsx(Square, { type: type, className: checkSquareClassName }), afterGap, after] }));
49
+ return (_jsxs(Box, { ...props, className: cn('twa:my-2', 'ab-CheckBox', `ab-CheckBox--${type}`, `ab-CheckBox--variant-${variant}`, disabled ? 'ab-CheckBox--disabled' : '', readOnly ? 'ab-CheckBox--readonly' : '', props.className), style: props.style, as: as, children: [before, beforeGap, input, _jsx(Square, { type: type, className: checkSquareClassName }), afterGap, after] }));
51
50
  };
52
51
  export const CheckBoxGroup = (props) => {
53
52
  const { orientation, ...flexProps } = props;