@adaptabletools/adaptable 23.0.0-canary.1 → 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 (755) hide show
  1. package/icons/sort-asc.svg +1 -1
  2. package/index.css +1038 -439
  3. package/package.json +9 -4
  4. package/src/AdaptableOptions/DataSetOptions.d.ts +26 -2
  5. package/src/AdaptableOptions/DefaultAdaptableOptions.js +0 -5
  6. package/src/AdaptableOptions/EditOptions.d.ts +2 -2
  7. package/src/AdaptableOptions/FilterOptions.d.ts +0 -7
  8. package/src/AdaptableOptions/SettingsPanelOptions.d.ts +42 -10
  9. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +1 -3
  10. package/src/{Utilities → AdaptableState/Aggregations}/weightedAverage.js +1 -1
  11. package/src/AdaptableState/Common/AdaptableForm.d.ts +18 -1
  12. package/src/AdaptableState/Common/AdaptableForm.js +31 -0
  13. package/src/AdaptableState/Common/AdaptableFormat.d.ts +8 -1
  14. package/src/AdaptableState/Common/AdaptableMessageType.d.ts +1 -1
  15. package/src/AdaptableState/Common/AggregationColumns.d.ts +14 -6
  16. package/src/AdaptableState/Common/AggregationColumns.js +27 -2
  17. package/src/AdaptableState/Common/CellDataChangedInfo.d.ts +3 -2
  18. package/src/AdaptableState/Common/ColumnScope.d.ts +4 -0
  19. package/src/AdaptableState/Common/Enums.d.ts +6 -23
  20. package/src/AdaptableState/Common/Enums.js +5 -26
  21. package/src/{Utilities → AdaptableState/Common}/MenuItem.d.ts +4 -4
  22. package/src/{Utilities → AdaptableState/Common}/MenuItem.js +1 -1
  23. package/src/AdaptableState/LayoutState.d.ts +5 -4
  24. package/src/AdaptableState/PlusMinusState.d.ts +3 -3
  25. package/src/AdaptableState/ShortcutState.d.ts +2 -6
  26. package/src/AdaptableState/StyledColumnState.d.ts +8 -861
  27. package/src/AdaptableState/StyledColumns/BadgeStyle.d.ts +143 -0
  28. package/src/AdaptableState/StyledColumns/BadgeStyle.js +9 -0
  29. package/src/AdaptableState/StyledColumns/BulletChartStyle.d.ts +147 -0
  30. package/src/AdaptableState/StyledColumns/Common/BarStyleProperties.d.ts +84 -0
  31. package/src/AdaptableState/StyledColumns/Common/BarStyleProperties.js +5 -0
  32. package/src/AdaptableState/StyledColumns/Common/CellTextOptions.d.ts +13 -0
  33. package/src/AdaptableState/StyledColumns/Common/CellTextOptions.js +6 -0
  34. package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.d.ts +79 -0
  35. package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.js +9 -0
  36. package/src/AdaptableState/StyledColumns/GradientStyle.d.ts +48 -0
  37. package/src/AdaptableState/StyledColumns/GradientStyle.js +1 -0
  38. package/src/AdaptableState/StyledColumns/IconStyle.d.ts +158 -0
  39. package/src/AdaptableState/StyledColumns/IconStyle.js +1 -0
  40. package/src/AdaptableState/StyledColumns/PercentBarStyle.d.ts +32 -0
  41. package/src/AdaptableState/StyledColumns/PercentBarStyle.js +1 -0
  42. package/src/AdaptableState/StyledColumns/RangeBarStyle.d.ts +155 -0
  43. package/src/AdaptableState/StyledColumns/RangeBarStyle.js +1 -0
  44. package/src/AdaptableState/StyledColumns/RatingStyle.d.ts +111 -0
  45. package/src/AdaptableState/StyledColumns/RatingStyle.js +1 -0
  46. package/src/AdaptableState/StyledColumns/SparklineStyle.d.ts +21 -0
  47. package/src/AdaptableState/StyledColumns/SparklineStyle.js +1 -0
  48. package/src/AdaptableState/ThemeState.d.ts +33 -28
  49. package/src/Api/ColumnScopeApi.d.ts +1 -1
  50. package/src/Api/EventApi.d.ts +15 -2
  51. package/src/Api/Events/ReportScheduleRan.d.ts +4 -0
  52. package/src/Api/Events/ThemeChanged.d.ts +6 -0
  53. package/src/Api/Events/ThemeSelected.d.ts +11 -0
  54. package/src/Api/Events/ThemeSelected.js +1 -0
  55. package/src/Api/Implementation/AlertApiImpl.js +1 -1
  56. package/src/Api/Implementation/ChartingApiImpl.js +1 -1
  57. package/src/Api/Implementation/ColumnScopeApiImpl.d.ts +1 -1
  58. package/src/Api/Implementation/EventApiImpl.js +4 -0
  59. package/src/Api/Implementation/ExportApiImpl.js +1 -1
  60. package/src/Api/Implementation/LayoutApiImpl.d.ts +0 -2
  61. package/src/Api/Implementation/LayoutApiImpl.js +0 -14
  62. package/src/Api/Implementation/LayoutHelpers.d.ts +2 -0
  63. package/src/Api/Implementation/LayoutHelpers.js +30 -8
  64. package/src/Api/Implementation/QuickSearchApiImpl.js +1 -1
  65. package/src/Api/Implementation/ThemeApiImpl.d.ts +3 -2
  66. package/src/Api/Implementation/ThemeApiImpl.js +19 -15
  67. package/src/Api/Internal/ActionColumnInternalApi.js +1 -1
  68. package/src/Api/Internal/AlertInternalApi.js +2 -2
  69. package/src/Api/Internal/ChartingInternalApi.js +1 -1
  70. package/src/Api/Internal/ColumnInternalApi.js +1 -1
  71. package/src/Api/Internal/DataSetInternalApi.d.ts +3 -0
  72. package/src/Api/Internal/DataSetInternalApi.js +73 -13
  73. package/src/Api/Internal/EventInternalApi.d.ts +2 -0
  74. package/src/Api/Internal/EventInternalApi.js +11 -3
  75. package/src/Api/Internal/ExportInternalApi.js +1 -1
  76. package/src/Api/Internal/FormatColumnInternalApi.js +1 -1
  77. package/src/Api/Internal/GridInternalApi.js +1 -1
  78. package/src/Api/Internal/StyledColumnInternalApi.d.ts +7 -5
  79. package/src/Api/Internal/StyledColumnInternalApi.js +5 -5
  80. package/src/Api/Internal/ThemeInternalApi.d.ts +0 -1
  81. package/src/Api/Internal/ThemeInternalApi.js +0 -10
  82. package/src/Api/LayoutApi.d.ts +1 -8
  83. package/src/Api/ThemeApi.d.ts +6 -2
  84. package/src/Redux/ActionsReducers/ExportRedux.js +1 -1
  85. package/src/Redux/ActionsReducers/InternalRedux.js +1 -1
  86. package/src/Redux/ActionsReducers/ThemeRedux.d.ts +3 -3
  87. package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +1 -1
  88. package/src/Redux/Store/AdaptableReduxMerger.js +2 -4
  89. package/src/Redux/Store/AdaptableStore.js +9 -7
  90. package/src/Strategy/AdaptableModuleBase.d.ts +1 -1
  91. package/src/Strategy/AdaptableModuleBase.js +1 -1
  92. package/src/Strategy/AlertModule.d.ts +1 -1
  93. package/src/Strategy/AlertModule.js +2 -2
  94. package/src/Strategy/BulkUpdateModule.d.ts +1 -1
  95. package/src/Strategy/CalculatedColumnModule.d.ts +2 -2
  96. package/src/Strategy/CalculatedColumnModule.js +4 -1
  97. package/src/Strategy/CellSummaryModule.d.ts +2 -2
  98. package/src/Strategy/ChartingModule.d.ts +1 -1
  99. package/src/Strategy/ChartingModule.js +1 -1
  100. package/src/Strategy/ColumnFilterModule.js +1 -0
  101. package/src/Strategy/ColumnInfoModule.d.ts +2 -2
  102. package/src/Strategy/CommentModule.d.ts +1 -1
  103. package/src/Strategy/CustomSortModule.d.ts +1 -1
  104. package/src/Strategy/ExportModule.js +2 -2
  105. package/src/Strategy/FlashingCellModule.d.ts +1 -1
  106. package/src/Strategy/FlashingCellModule.js +6 -2
  107. package/src/Strategy/FormatColumnModule.js +15 -8
  108. package/src/Strategy/FreeTextColumnModule.d.ts +1 -1
  109. package/src/Strategy/FreeTextColumnModule.js +38 -28
  110. package/src/Strategy/GridInfoModule.d.ts +2 -2
  111. package/src/Strategy/Interface/IModule.d.ts +3 -1
  112. package/src/Strategy/LayoutModule.js +16 -62
  113. package/src/Strategy/NoteModule.d.ts +1 -1
  114. package/src/Strategy/PlusMinusModule.d.ts +1 -1
  115. package/src/Strategy/PlusMinusModule.js +1 -1
  116. package/src/Strategy/SettingsPanelModule.d.ts +2 -2
  117. package/src/Strategy/SmartEditModule.d.ts +1 -1
  118. package/src/Strategy/StyledColumnModule.js +68 -57
  119. package/src/Strategy/SystemStatusModule.d.ts +2 -2
  120. package/src/Strategy/TeamSharingModule.js +2 -2
  121. package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.d.ts +1 -0
  122. package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.js +1 -0
  123. package/src/Strategy/Utilities/Export/getExportColumnsViewItems.d.ts +2 -0
  124. package/src/Strategy/Utilities/Export/getExportColumnsViewItems.js +14 -0
  125. package/src/Strategy/Utilities/Export/getExportRowsViewItems.d.ts +1 -0
  126. package/src/Strategy/Utilities/Export/getExportRowsViewItems.js +3 -0
  127. package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.d.ts +11 -0
  128. package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.js +105 -0
  129. package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.d.ts +48 -0
  130. package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.js +166 -0
  131. package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.d.ts +1 -0
  132. package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.js +1 -0
  133. package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.d.ts +26 -0
  134. package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.js +85 -0
  135. package/src/Utilities/Constants/ReduxConstants.d.ts +2 -2
  136. package/src/Utilities/Constants/ReduxConstants.js +1 -14
  137. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.js +1 -1
  138. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +1 -1
  139. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +1 -1
  140. package/src/Utilities/Extensions/ArrayExtensions.d.ts +32 -0
  141. package/src/Utilities/Extensions/ArrayExtensions.js +49 -0
  142. package/src/Utilities/Extensions/NumberExtensions.d.ts +21 -0
  143. package/src/Utilities/Extensions/NumberExtensions.js +74 -0
  144. package/src/Utilities/Extensions/ObjectExtensions.d.ts +44 -0
  145. package/src/Utilities/Extensions/ObjectExtensions.js +271 -0
  146. package/src/Utilities/Extensions/StringExtensions.d.ts +26 -0
  147. package/src/Utilities/Extensions/StringExtensions.js +44 -1
  148. package/src/Utilities/Helpers/AdaptableHelper.js +2 -2
  149. package/src/Utilities/Helpers/{alertFormHelper.js → AlertHelper.js} +1 -1
  150. package/src/Utilities/Helpers/DateHelper.js +1 -1
  151. package/src/Utilities/Helpers/{FormatHelper.js → DisplayFormatHelper.js} +24 -2
  152. package/src/Utilities/Helpers/Helper.d.ts +0 -6
  153. package/src/Utilities/Helpers/Helper.js +0 -35
  154. package/src/Utilities/Helpers/{QuickSearchStyleHelper.js → QuickSearchHelper.js} +1 -1
  155. package/src/Utilities/Helpers/{ScheduleHelper.d.ts → Scheduling/ScheduleHelper.d.ts} +1 -1
  156. package/src/Utilities/Helpers/{ScheduleHelper.js → Scheduling/ScheduleHelper.js} +3 -1
  157. package/src/Utilities/Helpers/{ScheduleJobManager.d.ts → Scheduling/ScheduleJobManager.d.ts} +1 -1
  158. package/src/Utilities/Helpers/{ScheduleJobRunner.d.ts → Scheduling/ScheduleJobRunner.d.ts} +1 -1
  159. package/src/Utilities/Helpers/{ScheduledAlertHelper.d.ts → Scheduling/ScheduledAlertHelper.d.ts} +1 -1
  160. package/src/Utilities/Helpers/{ScheduledAlertHelper.js → Scheduling/ScheduledAlertHelper.js} +4 -4
  161. package/src/Utilities/Helpers/{ScheduledJobsMiddlewareHelper.d.ts → Scheduling/ScheduledJobsMiddlewareHelper.d.ts} +1 -1
  162. package/src/Utilities/Helpers/{ScheduledJobsMiddlewareHelper.js → Scheduling/ScheduledJobsMiddlewareHelper.js} +1 -1
  163. package/src/Utilities/Helpers/{ScheduledReportHelper.d.ts → Scheduling/ScheduledReportHelper.d.ts} +1 -1
  164. package/src/Utilities/Helpers/{ScheduledReportHelper.js → Scheduling/ScheduledReportHelper.js} +1 -1
  165. package/src/Utilities/Helpers/SettingsPanelHelper.d.ts +5 -0
  166. package/src/Utilities/Helpers/SettingsPanelHelper.js +61 -0
  167. package/src/Utilities/Helpers/StyleHelper.d.ts +18 -0
  168. package/src/Utilities/Helpers/StyleHelper.js +27 -0
  169. package/src/Utilities/Helpers/StyledColumns/BarStylesHelper.d.ts +63 -0
  170. package/src/Utilities/Helpers/StyledColumns/BarStylesHelper.js +317 -0
  171. package/src/Utilities/Helpers/StyledColumns/GradientStyleHelper.d.ts +54 -0
  172. package/src/Utilities/Helpers/StyledColumns/GradientStyleHelper.js +247 -0
  173. package/src/Utilities/Helpers/{IconStylePresets.d.ts → StyledColumns/IconStyleHelper.d.ts} +6 -1
  174. package/src/Utilities/Helpers/{IconStylePresets.js → StyledColumns/IconStyleHelper.js} +15 -0
  175. package/src/Utilities/Helpers/StyledColumns/PercentBarStyleHelper.d.ts +20 -0
  176. package/src/Utilities/Helpers/StyledColumns/PercentBarStyleHelper.js +138 -0
  177. package/src/Utilities/Helpers/StyledColumns/SparklineStyleHelper.d.ts +7 -0
  178. package/src/Utilities/Helpers/StyledColumns/SparklineStyleHelper.js +65 -0
  179. package/src/Utilities/Helpers/StyledColumns/StyledColumnHelper.d.ts +52 -0
  180. package/src/{agGrid/cellRenderers/shouldRenderStyledColumnOnRow.js → Utilities/Helpers/StyledColumns/StyledColumnHelper.js} +64 -2
  181. package/src/Utilities/Helpers/ThemeHelper.d.ts +5 -0
  182. package/src/Utilities/Helpers/ThemeHelper.js +38 -0
  183. package/src/Utilities/Helpers/TimingHelper.d.ts +34 -0
  184. package/src/Utilities/{utils/debounce.js → Helpers/TimingHelper.js} +23 -9
  185. package/src/Utilities/ObjectFactory.d.ts +1 -3
  186. package/src/Utilities/ObjectFactory.js +1 -9
  187. package/src/Utilities/Services/CalculatedColumnExpressionService.d.ts +3 -0
  188. package/src/Utilities/Services/CalculatedColumnExpressionService.js +120 -0
  189. package/src/Utilities/Services/Interface/ICalculatedColumnExpressionService.d.ts +1 -0
  190. package/src/Utilities/Services/LicenseService/index.js +1 -1
  191. package/src/Utilities/Services/RowSummaryService.d.ts +1 -1
  192. package/src/Utilities/Services/RowSummaryService.js +4 -4
  193. package/src/Utilities/Services/ThemeService.js +1 -1
  194. package/src/Utilities/getScopeViewItems.js +2 -0
  195. package/src/Utilities/wizardSelection.d.ts +10 -0
  196. package/src/Utilities/wizardSelection.js +15 -0
  197. package/src/View/AdaptablePopover/index.js +1 -1
  198. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +2 -2
  199. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +1 -1
  200. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +2 -2
  201. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +3 -3
  202. package/src/View/Alert/AlertViewPanel.js +2 -2
  203. package/src/View/Alert/Utilities/getAlertButtonStyle.js +7 -4
  204. package/src/View/Alert/Utilities/getAlertType.js +1 -1
  205. package/src/View/Alert/Utilities/getDefaultAlertDefinition.js +1 -1
  206. package/src/View/Alert/Utilities/mapAlertDefinition.js +1 -1
  207. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.d.ts +0 -1
  208. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +18 -21
  209. package/src/View/Alert/Wizard/AlertButtonsEditor.js +170 -125
  210. package/src/View/Alert/Wizard/AlertMessageWizardSection.d.ts +1 -1
  211. package/src/View/Alert/Wizard/AlertMessageWizardSection.js +14 -16
  212. package/src/View/Alert/Wizard/AlertNotificationWizardSection.d.ts +1 -1
  213. package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +60 -61
  214. package/src/View/Alert/Wizard/AlertRulesWizardSection.js +4 -3
  215. package/src/View/Alert/Wizard/AlertScheduledWizardSection.d.ts +1 -1
  216. package/src/View/Alert/Wizard/AlertScheduledWizardSection.js +4 -5
  217. package/src/View/Alert/Wizard/AlertScopeWizardSection.js +32 -40
  218. package/src/View/Alert/Wizard/AlertTypeWizardSection.d.ts +1 -1
  219. package/src/View/Alert/Wizard/AlertTypeWizardSection.js +30 -7
  220. package/src/View/Alert/Wizard/AlertWizard.js +14 -6
  221. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.d.ts +2 -1
  222. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +4 -14
  223. package/src/View/Alert/Wizard/isValidAlertRules.js +1 -1
  224. package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
  225. package/src/View/BulkUpdate/BulkUpdateViewPanel.js +4 -6
  226. package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +9 -13
  227. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.d.ts +1 -1
  228. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +31 -19
  229. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +7 -9
  230. package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.js +31 -5
  231. package/src/View/CellSummary/CellSummaryViewPanel.js +5 -5
  232. package/src/View/Charting/ChartingWizard/AgChargingWizard/AgChargingWizard.js +3 -10
  233. package/src/View/Charting/ChartingWizard/AgChargingWizard/PreviewChartSection.js +2 -2
  234. package/src/View/Charting/ChartingWizard/AgChargingWizard/SettingsSection.js +36 -53
  235. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/ExternalChartingWizard.js +4 -31
  236. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/PreviewChartSection.d.ts +5 -0
  237. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/PreviewChartSection.js +21 -0
  238. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/SettingsSection.d.ts +1 -0
  239. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/SettingsSection.js +11 -8
  240. package/src/View/Charting/ShowChartButton.js +8 -8
  241. package/src/View/ColumnInfo/ColumnInfo.js +21 -1
  242. package/src/View/Comments/CommentsEditor.js +2 -2
  243. package/src/View/Comments/CommentsPopup.js +1 -1
  244. package/src/View/Components/AdaptableObjectCollection/index.js +2 -2
  245. package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +3 -2
  246. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +7 -6
  247. package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.d.ts +2 -0
  248. package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.js +2 -0
  249. package/src/View/Components/AdaptableObjectRow/index.js +2 -2
  250. package/src/View/Components/Buttons/ButtonBase/index.js +2 -3
  251. package/src/View/Components/Buttons/ButtonInfo.d.ts +1 -1
  252. package/src/View/Components/Buttons/ButtonInfo.js +4 -3
  253. package/src/View/Components/Buttons/ButtonNew.d.ts +2 -0
  254. package/src/View/Components/Buttons/ButtonNew.js +1 -1
  255. package/src/View/Components/Buttons/EntityListActionButtons.js +3 -3
  256. package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.d.ts +1 -0
  257. package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +9 -9
  258. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.js +1 -1
  259. package/src/View/Components/ColumnFilter/ColumnFilter.js +29 -7
  260. package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +1 -1
  261. package/src/View/Components/ColumnFilter/FloatingFilter.js +58 -60
  262. package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +1 -2
  263. package/src/View/Components/ColumnFilter/components/ColumnFilterInputList.js +4 -2
  264. package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +2 -2
  265. package/src/View/Components/ColumnFilter/components/FloatingFilterInputList.js +1 -1
  266. package/src/View/Components/ColumnSelector/index.d.ts +12 -0
  267. package/src/View/Components/ColumnSelector/index.js +30 -6
  268. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +2 -2
  269. package/src/View/Components/FilterForm/ListBoxFilterForm.js +1 -1
  270. package/src/View/Components/Forms/AdaptableFormControlTextClear.js +4 -2
  271. package/src/View/Components/ModuleProfile.js +1 -1
  272. package/src/View/Components/ModuleValueSelector/index.js +2 -1
  273. package/src/View/Components/NewScopeComponent.js +4 -9
  274. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +5 -4
  275. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +4 -4
  276. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +3 -3
  277. package/src/View/Components/Popups/AdaptablePopup/Navigation.d.ts +3 -2
  278. package/src/View/Components/Popups/AdaptablePopup/Navigation.js +38 -28
  279. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +3 -3
  280. package/src/View/Components/Popups/AdaptablePopup/TopBar.js +2 -2
  281. package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.d.ts +11 -0
  282. package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.js +1 -0
  283. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.d.ts +3 -1
  284. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +25 -27
  285. package/src/View/Components/Popups/AdaptablePopupAlert.js +1 -1
  286. package/src/View/Components/Popups/Utilities.js +1 -1
  287. package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +0 -1
  288. package/src/View/Components/Popups/WindowPopups/windowFactory.js +0 -1
  289. package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -1
  290. package/src/View/Components/RangesComponent.d.ts +13 -9
  291. package/src/View/Components/RangesComponent.js +182 -85
  292. package/src/View/Components/ReorderDraggable/index.js +2 -2
  293. package/src/View/Components/Selectors/BulkUpdateValueSelector.d.ts +0 -2
  294. package/src/View/Components/Selectors/BulkUpdateValueSelector.js +3 -3
  295. package/src/View/Components/Selectors/ColumnSelector.js +5 -0
  296. package/src/View/Components/StyleComponent.d.ts +1 -0
  297. package/src/View/Components/StyleComponent.js +32 -65
  298. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +11 -8
  299. package/src/View/Components/ToolPanel/CustomToolPanelContent.js +1 -1
  300. package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +3 -13
  301. package/src/View/Components/ToolPanel/ToolPanelPopup.js +5 -81
  302. package/src/View/Components/ToolPanel/ToolPanelPopupSections.d.ts +17 -0
  303. package/src/View/Components/ToolPanel/ToolPanelPopupSections.js +79 -0
  304. package/src/View/Components/ValueSelector/index.d.ts +29 -0
  305. package/src/View/Components/ValueSelector/index.js +158 -62
  306. package/src/View/Components/wizardColumnListStyles.d.ts +10 -0
  307. package/src/View/Components/wizardColumnListStyles.js +10 -0
  308. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.d.ts +2 -1
  309. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +12 -19
  310. package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +8 -8
  311. package/src/View/CustomSort/Wizard/CustomSortWizard.js +2 -2
  312. package/src/View/Dashboard/CustomDashboardButton.js +1 -1
  313. package/src/View/Dashboard/Dashboard.js +1 -1
  314. package/src/View/Dashboard/DashboardPopup.d.ts +1 -11
  315. package/src/View/Dashboard/DashboardPopup.js +3 -67
  316. package/src/View/Dashboard/DashboardPopupSections.d.ts +20 -0
  317. package/src/View/Dashboard/DashboardPopupSections.js +68 -0
  318. package/src/View/Dashboard/PinnedToolbarsSelector.js +2 -2
  319. package/src/View/DataChangeHistory/DataChangeHistoryPopup.d.ts +1 -6
  320. package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +9 -21
  321. package/src/View/DataChangeHistory/DataChangeHistoryTable.d.ts +8 -0
  322. package/src/View/DataChangeHistory/DataChangeHistoryTable.js +94 -0
  323. package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +1 -1
  324. package/src/View/DataChangeHistory/buildActionColumnButton.d.ts +5 -3
  325. package/src/View/DataChangeHistory/buildActionColumnButton.js +30 -39
  326. package/src/View/DataChangeHistory/dataChangeHistoryHelpers.d.ts +15 -0
  327. package/src/View/DataChangeHistory/dataChangeHistoryHelpers.js +37 -0
  328. package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -1
  329. package/src/View/DataImport/DataImportWizard/sections/ColumnsSection.js +42 -30
  330. package/src/View/DataImport/DataImportWizard/sections/DataPreview.js +2 -2
  331. package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadSection.js +6 -4
  332. package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadTextSection.js +3 -2
  333. package/src/View/DataImport/DataImportWizard/sections/ValidationSection.js +5 -15
  334. package/src/View/DataSet/DataSetViewPanel.d.ts +2 -2
  335. package/src/View/Export/ExportDestinationPicker.js +3 -3
  336. package/src/View/Export/ExportSchedulesTab.js +3 -4
  337. package/src/View/Export/ExportViewPanel.js +2 -2
  338. package/src/View/Export/Wizard/ReportColumnsWizardSection.d.ts +2 -1
  339. package/src/View/Export/Wizard/ReportColumnsWizardSection.js +28 -35
  340. package/src/View/Export/Wizard/ReportNameWizardSection.js +10 -13
  341. package/src/View/Export/Wizard/ReportRowsWizardSection.d.ts +2 -1
  342. package/src/View/Export/Wizard/ReportRowsWizardSection.js +23 -28
  343. package/src/View/Export/Wizard/ScheduledReportSettings.d.ts +2 -0
  344. package/src/View/Export/Wizard/ScheduledReportSettings.js +13 -13
  345. package/src/View/Export/Wizard/ScheduledReportWizard.js +4 -5
  346. package/src/View/Filter/FilterViewPanel.js +1 -1
  347. package/src/View/FlashingCell/FlashingCellStyle.d.ts +4 -2
  348. package/src/View/FlashingCell/FlashingCellStyle.js +4 -2
  349. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.d.ts +2 -1
  350. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +15 -17
  351. package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.d.ts +9 -0
  352. package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.js +5 -0
  353. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.d.ts +1 -1
  354. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +25 -23
  355. package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +20 -11
  356. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.d.ts +0 -5
  357. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +22 -10
  358. package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +6 -7
  359. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +8 -1
  360. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +200 -38
  361. package/src/View/FormatColumn/Wizard/FormatColumnPreview.d.ts +15 -0
  362. package/src/View/FormatColumn/Wizard/FormatColumnPreview.js +66 -0
  363. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.d.ts +3 -0
  364. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +26 -0
  365. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +69 -28
  366. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +2 -2
  367. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.d.ts +3 -2
  368. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +62 -16
  369. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +11 -14
  370. package/src/View/FreeTextColumn/Utilities/getFreeTextColumnSettingsTags.d.ts +2 -0
  371. package/src/View/FreeTextColumn/Utilities/getFreeTextColumnSettingsTags.js +16 -0
  372. package/src/View/FreeTextColumn/Wizard/FreeTextColumnDefinitionWizardSection.d.ts +10 -0
  373. package/src/View/FreeTextColumn/Wizard/FreeTextColumnDefinitionWizardSection.js +53 -0
  374. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.d.ts +2 -3
  375. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +33 -69
  376. package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +15 -11
  377. package/src/View/GridFilter/GridFilterPopupUI/index.js +3 -2
  378. package/src/View/GridFilter/GridFilterViewPanel.js +6 -6
  379. package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +2 -2
  380. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -2
  381. package/src/View/Layout/LayoutCloneButton.js +2 -1
  382. package/src/View/Layout/LayoutViewPanel.js +25 -23
  383. package/src/View/Layout/TransposedPopup.js +2 -2
  384. package/src/View/Layout/Wizard/LayoutWizard.js +27 -31
  385. package/src/View/Layout/Wizard/sections/AggregationsSection.d.ts +15 -4
  386. package/src/View/Layout/Wizard/sections/AggregationsSection.js +168 -39
  387. package/src/View/Layout/Wizard/sections/ColumnsSection.d.ts +4 -1
  388. package/src/View/Layout/Wizard/sections/ColumnsSection.js +156 -277
  389. package/src/View/Layout/Wizard/sections/FilterSection.js +31 -32
  390. package/src/View/Layout/Wizard/sections/GridFilterSection.js +11 -11
  391. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.d.ts +5 -3
  392. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +200 -148
  393. package/src/View/Layout/Wizard/sections/PivotColumnsSection.d.ts +5 -2
  394. package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +26 -13
  395. package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.d.ts +4 -1
  396. package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +25 -14
  397. package/src/View/Layout/Wizard/sections/RowGroupingSection.d.ts +5 -2
  398. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +52 -38
  399. package/src/View/Layout/Wizard/sections/RowSelectionSection.js +9 -5
  400. package/src/View/Layout/Wizard/sections/RowSummarySection.js +118 -70
  401. package/src/View/Layout/Wizard/sections/SettingsSection.js +4 -5
  402. package/src/View/Layout/Wizard/sections/SortSection.d.ts +12 -2
  403. package/src/View/Layout/Wizard/sections/SortSection.js +42 -18
  404. package/src/View/Layout/Wizard/sections/columnLayoutCards.d.ts +20 -0
  405. package/src/View/Layout/Wizard/sections/columnLayoutCards.js +159 -0
  406. package/src/View/Layout/Wizard/sections/columnLayoutHelpers.d.ts +30 -0
  407. package/src/View/Layout/Wizard/sections/columnLayoutHelpers.js +201 -0
  408. package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.d.ts +8 -0
  409. package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.js +63 -0
  410. package/src/View/Layout/Wizard/sections/layoutWizardColumns.d.ts +11 -0
  411. package/src/View/Layout/Wizard/sections/layoutWizardColumns.js +52 -0
  412. package/src/View/License/LicenseWatermark.js +1 -1
  413. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.d.ts +1 -1
  414. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +2 -3
  415. package/src/View/NamedQuery/Wizard/NamedQuerySettingsWizardSection.js +9 -14
  416. package/src/View/NamedQuery/Wizard/NamedQueryWizard.js +1 -3
  417. package/src/View/Note/NoteEditor.js +3 -3
  418. package/src/View/Note/NotePopup.js +1 -1
  419. package/src/View/PlusMinus/Wizard/PlusMinusRuleWizardSection.d.ts +4 -0
  420. package/src/View/PlusMinus/Wizard/PlusMinusRuleWizardSection.js +43 -13
  421. package/src/View/PlusMinus/Wizard/PlusMinusScopeWizardSection.js +11 -18
  422. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.d.ts +2 -6
  423. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +7 -23
  424. package/src/View/PlusMinus/Wizard/PlusMinusWizard.js +15 -21
  425. package/src/View/QuickSearch/QuickSearchPopup.js +3 -4
  426. package/src/View/QuickSearch/useQuickSearchDebounced.js +1 -1
  427. package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +3 -3
  428. package/src/View/Shortcut/Wizard/ShortcutScopeWizardSection.js +11 -18
  429. package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +17 -6
  430. package/src/View/Shortcut/Wizard/ShortcutWizard.js +3 -3
  431. package/src/View/Shortcut/shortcutOperations.d.ts +3 -0
  432. package/src/View/Shortcut/shortcutOperations.js +28 -0
  433. package/src/View/SmartEdit/SmartEditPopup.js +2 -2
  434. package/src/View/SmartEdit/SmartEditViewPanel.js +2 -2
  435. package/src/View/SpecialColumnSettingsWizardStep.js +10 -9
  436. package/src/View/StateManagement/StateManagementPopup.js +1 -1
  437. package/src/View/StateManagement/components/ExportDropdown.d.ts +2 -2
  438. package/src/View/StateManagement/components/ExportDropdown.js +12 -12
  439. package/src/View/StatusBar/StatusBarPanel.js +2 -2
  440. package/src/View/StatusBar/StatusBarPopup.js +37 -5
  441. package/src/View/StatusBar/statusBarPanelHelpers.d.ts +2 -0
  442. package/src/View/StatusBar/statusBarPanelHelpers.js +7 -0
  443. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.d.ts +8 -1
  444. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.js +31 -19
  445. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.d.ts +10 -2
  446. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +196 -93
  447. package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.d.ts +15 -3
  448. package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.js +51 -36
  449. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.d.ts +2 -3
  450. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +108 -33
  451. package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.d.ts +5 -0
  452. package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.js +50 -0
  453. package/src/View/StyledColumn/Wizard/StyledColumnWizard.d.ts +2 -0
  454. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +76 -18
  455. package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.d.ts +5 -0
  456. package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +184 -85
  457. package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.d.ts +1 -0
  458. package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.js +34 -11
  459. package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.d.ts +5 -0
  460. package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +161 -43
  461. package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.d.ts +5 -0
  462. package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +274 -93
  463. package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.d.ts +1 -0
  464. package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.js +55 -74
  465. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.d.ts +1 -1
  466. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.js +34 -48
  467. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextLayoutEditor.d.ts +9 -0
  468. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextLayoutEditor.js +33 -0
  469. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextPreview.d.ts +23 -0
  470. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextPreview.js +57 -0
  471. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BulletRangesSummaryPreview.d.ts +5 -0
  472. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BulletRangesSummaryPreview.js +16 -0
  473. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.d.ts +3 -2
  474. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.js +8 -16
  475. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarColumnComparisonPreview.js +5 -5
  476. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarRangesPreview.js +4 -3
  477. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.d.ts +5 -4
  478. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.js +12 -14
  479. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/RangeBarRangesSummaryPreview.d.ts +5 -0
  480. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/RangeBarRangesSummaryPreview.js +16 -0
  481. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +31 -4
  482. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.d.ts +7 -0
  483. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.js +52 -0
  484. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.d.ts +2 -1
  485. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.js +5 -5
  486. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnGradientPreview.d.ts +7 -0
  487. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnGradientPreview.js +28 -0
  488. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnIconPreview.d.ts +7 -0
  489. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnIconPreview.js +89 -0
  490. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnPercentBarPreview.d.ts +5 -0
  491. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnPercentBarPreview.js +59 -0
  492. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.d.ts +5 -0
  493. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.js +45 -0
  494. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.d.ts +16 -0
  495. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.js +58 -0
  496. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnSparklinePreview.d.ts +7 -0
  497. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnSparklinePreview.js +124 -0
  498. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardRangesSection.js +12 -5
  499. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.d.ts +1 -5
  500. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +67 -80
  501. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +94 -7
  502. package/src/View/SystemStatus/Utilities/getStatusItemStyle.js +1 -1
  503. package/src/View/Theme/ThemePopup.d.ts +2 -14
  504. package/src/View/Theme/ThemePopup.js +1 -36
  505. package/src/View/UIHelper.d.ts +0 -2
  506. package/src/View/UIHelper.js +10 -25
  507. package/src/View/Wizard/CollapsibleWizardCard.d.ts +68 -0
  508. package/src/View/Wizard/CollapsibleWizardCard.js +81 -0
  509. package/src/View/Wizard/OnePageAdaptableWizard.d.ts +7 -0
  510. package/src/View/Wizard/OnePageAdaptableWizard.js +8 -22
  511. package/src/View/Wizard/OnePageWizards.d.ts +8 -0
  512. package/src/View/Wizard/OnePageWizards.js +10 -8
  513. package/src/View/Wizard/SummaryColorTag.d.ts +24 -0
  514. package/src/View/Wizard/SummaryColorTag.js +67 -0
  515. package/src/View/Wizard/WizardTypeSelection.d.ts +34 -0
  516. package/src/View/Wizard/WizardTypeSelection.js +31 -0
  517. package/src/View/Wizard/rowGroupSummaryTags.d.ts +18 -0
  518. package/src/View/Wizard/rowGroupSummaryTags.js +14 -0
  519. package/src/View/Wizard/scopeSummaryTags.d.ts +6 -0
  520. package/src/View/Wizard/scopeSummaryTags.js +33 -0
  521. package/src/View/renderWithAdaptableContext.js +1 -2
  522. package/src/agGrid/AdaptableAgGrid.d.ts +1 -1
  523. package/src/agGrid/AdaptableAgGrid.js +45 -50
  524. package/src/agGrid/AgGridAdapter.d.ts +1 -1
  525. package/src/agGrid/AgGridAdapter.js +27 -22
  526. package/src/agGrid/AgGridColumnAdapter.js +27 -34
  527. package/src/agGrid/AgGridExportAdapter.js +1 -1
  528. package/src/agGrid/AgGridMenuAdapter.d.ts +0 -1
  529. package/src/agGrid/AgGridMenuAdapter.js +145 -37
  530. package/src/agGrid/cellRenderers/ActionColumnRenderer.js +4 -7
  531. package/src/agGrid/cellRenderers/BadgeRenderer.js +8 -6
  532. package/src/agGrid/cellRenderers/BulletChartRenderer.js +45 -44
  533. package/src/agGrid/cellRenderers/IconRenderer.d.ts +8 -1
  534. package/src/agGrid/cellRenderers/IconRenderer.js +58 -29
  535. package/src/agGrid/cellRenderers/PercentBarRenderer.js +26 -98
  536. package/src/agGrid/cellRenderers/RangeBarRenderer.js +52 -50
  537. package/src/agGrid/cellRenderers/RatingRenderer.js +2 -2
  538. package/src/agGrid/editors/AdaptableDateEditor/index.js +1 -1
  539. package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +12 -7
  540. package/src/components/Card/index.js +5 -6
  541. package/src/components/CheckBox/index.js +2 -3
  542. package/src/components/CodeBlock/index.js +2 -2
  543. package/src/components/ColorPicker/ColorPicker.d.ts +1 -0
  544. package/src/components/ColorPicker/ColorPicker.js +9 -7
  545. package/src/components/ColorPicker/OptionalColorPicker.d.ts +12 -0
  546. package/src/components/ColorPicker/OptionalColorPicker.js +26 -0
  547. package/src/components/ColorPicker/index.d.ts +1 -0
  548. package/src/components/ColorPicker/index.js +1 -0
  549. package/src/components/Combobox/VirtualizedList.js +5 -5
  550. package/src/components/Combobox/comboboxUtils.d.ts +5 -1
  551. package/src/components/Combobox/comboboxUtils.js +2 -0
  552. package/src/components/Combobox/index.d.ts +1 -0
  553. package/src/components/Combobox/index.js +55 -28
  554. package/src/components/Dashboard/DashboardManager.js +2 -4
  555. package/src/components/Datepicker/index.js +7 -7
  556. package/src/components/Dialog/index.js +4 -4
  557. package/src/components/DragAndDropContext/DragAndDropContext.d.ts +5 -0
  558. package/src/components/DragAndDropContext/DragAndDropContext.js +3 -0
  559. package/src/components/DragAndDropContext/ModuleManager.d.ts +15 -3
  560. package/src/components/DragAndDropContext/ModuleManager.js +50 -8
  561. package/src/components/DragAndDropContext/TabList.d.ts +11 -4
  562. package/src/components/DragAndDropContext/TabList.js +52 -38
  563. package/src/components/DragAndDropContext/UnusedPanel.d.ts +4 -3
  564. package/src/components/DragAndDropContext/UnusedPanel.js +15 -11
  565. package/src/components/DragAndDropContext/dragScope.d.ts +6 -0
  566. package/src/components/DragAndDropContext/dragScope.js +26 -0
  567. package/src/components/DragAndDropContext/types.d.ts +14 -0
  568. package/src/components/Dropdown/Arrows.js +0 -1
  569. package/src/components/DropdownButton/index.d.ts +33 -25
  570. package/src/components/DropdownButton/index.js +24 -158
  571. package/src/components/EmptyContent/index.js +2 -2
  572. package/src/components/ErrorBox/index.js +2 -2
  573. package/src/components/ExpressionEditor/BaseEditorInput.js +4 -4
  574. package/src/components/ExpressionEditor/ExpressionFunctionDocumentation.js +1 -1
  575. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +3 -3
  576. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +6 -6
  577. package/src/components/ExpressionEditor/index.js +1 -1
  578. package/src/components/FieldWrap/index.js +2 -2
  579. package/src/components/Flex.js +2 -2
  580. package/src/components/FormLayout/index.d.ts +1 -1
  581. package/src/components/FormLayout/index.js +1 -1
  582. package/src/components/HelpBlock/index.js +3 -3
  583. package/src/components/IconSelector/IconSelector.d.ts +8 -0
  584. package/src/components/IconSelector/IconSelector.js +11 -7
  585. package/src/components/IconSelector/index.d.ts +1 -0
  586. package/src/components/IconSelector/index.js +1 -0
  587. package/src/components/Input/NumberInput.js +1 -1
  588. package/src/components/Input/index.js +1 -1
  589. package/src/components/Modal/index.js +2 -2
  590. package/src/components/NewSelect/index.d.ts +2 -0
  591. package/src/components/NewSelect/index.js +22 -9
  592. package/src/components/NewTooltip/index.js +1 -1
  593. package/src/components/OverlayTrigger/index.js +1 -1
  594. package/src/components/Panel/index.js +9 -9
  595. package/src/components/Radio/index.d.ts +1 -1
  596. package/src/components/Radio/index.js +8 -6
  597. package/src/components/SimpleButton/index.js +12 -12
  598. package/src/components/StylePreview.js +2 -2
  599. package/src/components/Tabs/index.js +4 -4
  600. package/src/components/Tag/Tag.d.ts +16 -0
  601. package/src/components/Tag/Tag.js +14 -4
  602. package/src/components/Tag/columnScopeTagHelpers.d.ts +8 -0
  603. package/src/components/Tag/columnScopeTagHelpers.js +6 -0
  604. package/src/components/Tag/index.d.ts +1 -1
  605. package/src/components/Tag/index.js +1 -1
  606. package/src/components/Textarea/index.js +2 -3
  607. package/src/components/Toggle/Toggle.d.ts +2 -0
  608. package/src/components/Toggle/Toggle.js +15 -8
  609. package/src/components/Toggle/ToggleGroup.js +2 -2
  610. package/src/components/ToggleButton/index.js +4 -4
  611. package/src/components/Tree/TreeDropdown/index.js +8 -17
  612. package/src/components/WarningBox/index.js +2 -2
  613. package/src/components/icons/sort-asc.js +1 -1
  614. package/src/components/ui/button.d.ts +6 -3
  615. package/src/components/ui/button.js +6 -5
  616. package/src/components/ui/calendar.d.ts +1 -1
  617. package/src/components/ui/calendar.js +2 -2
  618. package/src/components/ui/combobox.d.ts +18 -16
  619. package/src/components/ui/combobox.js +39 -39
  620. package/src/components/ui/dropdown-menu.js +1 -1
  621. package/src/components/ui/input-group.d.ts +10 -9
  622. package/src/components/ui/input-group.js +17 -16
  623. package/src/components/ui/input.d.ts +2 -2
  624. package/src/components/ui/input.js +6 -5
  625. package/src/components/ui/popover.d.ts +5 -5
  626. package/src/components/ui/popover.js +8 -8
  627. package/src/components/ui/select.d.ts +7 -6
  628. package/src/components/ui/select.js +18 -16
  629. package/src/components/ui/textarea.d.ts +2 -2
  630. package/src/components/ui/textarea.js +5 -4
  631. package/src/components/ui/tooltip.d.ts +6 -5
  632. package/src/components/ui/tooltip.js +9 -8
  633. package/src/env.js +2 -2
  634. package/src/layout-manager/src/LayoutManagerModel.d.ts +6 -2
  635. package/src/layout-manager/src/index.js +14 -16
  636. package/src/layout-manager/src/isLayoutEqual.js +1 -1
  637. package/src/layout-manager/src/normalizeLayoutModel.js +5 -1
  638. package/src/layout-manager/src/rowGroupDisplayType.d.ts +6 -0
  639. package/src/layout-manager/src/rowGroupDisplayType.js +24 -0
  640. package/src/lib/utils.d.ts +20 -0
  641. package/src/lib/utils.js +45 -0
  642. package/src/metamodel/adaptable.metamodel.d.ts +164 -91
  643. package/src/metamodel/adaptable.metamodel.js +1 -1
  644. package/src/migration/VersionUpgrade23.d.ts +27 -32
  645. package/src/migration/VersionUpgrade23.js +112 -43
  646. package/src/types.d.ts +18 -7
  647. package/themes/dark.css +1 -78
  648. package/themes/light.css +1 -5
  649. package/tsconfig.esm.tsbuildinfo +1 -1
  650. package/src/AdaptableState/Common/FilterActionOnDataChange.d.ts +0 -17
  651. package/src/AdaptableState/Common/FilterActionOnDataChange.js +0 -4
  652. package/src/Aggregation/ParameterizedAggregationRegistry.d.ts +0 -35
  653. package/src/Aggregation/ParameterizedAggregationRegistry.js +0 -63
  654. package/src/Aggregation/definitions/weightedAverageAggregationDefinition.d.ts +0 -3
  655. package/src/Aggregation/definitions/weightedAverageAggregationDefinition.js +0 -55
  656. package/src/Aggregation/parameterizedAggregationColumnMenu.d.ts +0 -8
  657. package/src/Aggregation/parameterizedAggregationColumnMenu.js +0 -137
  658. package/src/Aggregation/parameterizedAggregationHeader.d.ts +0 -13
  659. package/src/Aggregation/parameterizedAggregationHeader.js +0 -60
  660. package/src/Aggregation/parameterizedAggregationHelpers.d.ts +0 -23
  661. package/src/Aggregation/parameterizedAggregationHelpers.js +0 -111
  662. package/src/Aggregation/parameterizedAggregationWizardHelpers.d.ts +0 -9
  663. package/src/Aggregation/parameterizedAggregationWizardHelpers.js +0 -66
  664. package/src/Aggregation/validateParameterizedAggregations.d.ts +0 -4
  665. package/src/Aggregation/validateParameterizedAggregations.js +0 -20
  666. package/src/Utilities/Defaults/DefaultSettingsPanel.d.ts +0 -5
  667. package/src/Utilities/Defaults/DefaultSettingsPanel.js +0 -42
  668. package/src/Utilities/Helpers/StyledColumnGradientHelper.d.ts +0 -30
  669. package/src/Utilities/Helpers/StyledColumnGradientHelper.js +0 -41
  670. package/src/Utilities/Helpers/iconStyledColumnColumnSupport.d.ts +0 -5
  671. package/src/Utilities/Helpers/iconStyledColumnColumnSupport.js +0 -15
  672. package/src/Utilities/Helpers/styledColumnRowKindSupport.d.ts +0 -25
  673. package/src/Utilities/Helpers/styledColumnRowKindSupport.js +0 -63
  674. package/src/Utilities/utils/chunk.d.ts +0 -6
  675. package/src/Utilities/utils/chunk.js +0 -17
  676. package/src/Utilities/utils/clamp.d.ts +0 -5
  677. package/src/Utilities/utils/clamp.js +0 -7
  678. package/src/Utilities/utils/cloneDeepWith.d.ts +0 -9
  679. package/src/Utilities/utils/cloneDeepWith.js +0 -67
  680. package/src/Utilities/utils/debounce.d.ts +0 -20
  681. package/src/Utilities/utils/flatten.d.ts +0 -5
  682. package/src/Utilities/utils/flatten.js +0 -7
  683. package/src/Utilities/utils/flattenDeep.d.ts +0 -5
  684. package/src/Utilities/utils/flattenDeep.js +0 -7
  685. package/src/Utilities/utils/get.d.ts +0 -6
  686. package/src/Utilities/utils/get.js +0 -35
  687. package/src/Utilities/utils/index.d.ts +0 -22
  688. package/src/Utilities/utils/index.js +0 -22
  689. package/src/Utilities/utils/isArray.d.ts +0 -6
  690. package/src/Utilities/utils/isArray.js +0 -6
  691. package/src/Utilities/utils/isEqual.d.ts +0 -5
  692. package/src/Utilities/utils/isEqual.js +0 -124
  693. package/src/Utilities/utils/isObject.d.ts +0 -6
  694. package/src/Utilities/utils/isObject.js +0 -9
  695. package/src/Utilities/utils/isPlainObject.d.ts +0 -6
  696. package/src/Utilities/utils/isPlainObject.js +0 -17
  697. package/src/Utilities/utils/kebabCase.d.ts +0 -5
  698. package/src/Utilities/utils/kebabCase.js +0 -8
  699. package/src/Utilities/utils/merge.d.ts +0 -11
  700. package/src/Utilities/utils/merge.js +0 -40
  701. package/src/Utilities/utils/mergeWith.d.ts +0 -7
  702. package/src/Utilities/utils/mergeWith.js +0 -46
  703. package/src/Utilities/utils/orderBy.d.ts +0 -8
  704. package/src/Utilities/utils/orderBy.js +0 -30
  705. package/src/Utilities/utils/parseInt.d.ts +0 -6
  706. package/src/Utilities/utils/parseInt.js +0 -9
  707. package/src/Utilities/utils/sentenceCase.d.ts +0 -6
  708. package/src/Utilities/utils/sentenceCase.js +0 -15
  709. package/src/Utilities/utils/startCase.d.ts +0 -5
  710. package/src/Utilities/utils/startCase.js +0 -11
  711. package/src/Utilities/utils/throttle.d.ts +0 -17
  712. package/src/Utilities/utils/throttle.js +0 -19
  713. package/src/Utilities/utils/toNumber.d.ts +0 -5
  714. package/src/Utilities/utils/toNumber.js +0 -39
  715. package/src/Utilities/utils/uniq.d.ts +0 -7
  716. package/src/Utilities/utils/uniq.js +0 -9
  717. package/src/Utilities/utils/uniqBy.d.ts +0 -8
  718. package/src/Utilities/utils/uniqBy.js +0 -22
  719. package/src/Utilities/utils/words.d.ts +0 -7
  720. package/src/Utilities/utils/words.js +0 -10
  721. package/src/View/AdaptableComputedCSSVarsContext.d.ts +0 -12
  722. package/src/View/AdaptableComputedCSSVarsContext.js +0 -29
  723. package/src/View/DataChangeHistory/DataChangeHistoryGrid.d.ts +0 -17
  724. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +0 -290
  725. package/src/View/Layout/Wizard/sections/ParameterizedAggFuncPicker.d.ts +0 -12
  726. package/src/View/Layout/Wizard/sections/ParameterizedAggFuncPicker.js +0 -43
  727. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgeSettings.d.ts +0 -5
  728. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgeSettings.js +0 -28
  729. package/src/View/Theme/VariantSelector.d.ts +0 -8
  730. package/src/View/Theme/VariantSelector.js +0 -20
  731. package/src/agGrid/cellRenderers/shouldRenderStyledColumnOnRow.d.ts +0 -30
  732. package/src/components/DropdownButton/DropdownButtonItem.d.ts +0 -12
  733. package/src/components/DropdownButton/renderItem.d.ts +0 -14
  734. package/src/components/DropdownButton/renderItem.js +0 -11
  735. package/src/components/DropdownButton/useExpanded.d.ts +0 -24
  736. package/src/components/DropdownButton/useExpanded.js +0 -56
  737. package/src/components/NewDropdownButton/index.d.ts +0 -26
  738. package/src/components/NewDropdownButton/index.js +0 -24
  739. package/src/components/Select/CSSNumericVariableWatch.d.ts +0 -11
  740. package/src/components/Select/CSSNumericVariableWatch.js +0 -45
  741. /package/src/{Utilities → AdaptableState/Aggregations}/only.d.ts +0 -0
  742. /package/src/{Utilities → AdaptableState/Aggregations}/only.js +0 -0
  743. /package/src/{Utilities → AdaptableState/Aggregations}/weightedAverage.d.ts +0 -0
  744. /package/src/{components/DropdownButton/DropdownButtonItem.js → AdaptableState/StyledColumns/BulletChartStyle.js} +0 -0
  745. /package/src/Utilities/Helpers/{ActionColumnWidthHelper.d.ts → ActionColumnHelper.d.ts} +0 -0
  746. /package/src/Utilities/Helpers/{ActionColumnWidthHelper.js → ActionColumnHelper.js} +0 -0
  747. /package/src/Utilities/Helpers/{alertFormHelper.d.ts → AlertHelper.d.ts} +0 -0
  748. /package/src/Utilities/Helpers/{chartingHelper.d.ts → ChartHelper.d.ts} +0 -0
  749. /package/src/Utilities/Helpers/{chartingHelper.js → ChartHelper.js} +0 -0
  750. /package/src/Utilities/Helpers/{FormatHelper.d.ts → DisplayFormatHelper.d.ts} +0 -0
  751. /package/src/Utilities/Helpers/{plusMinusTriggerKeys.d.ts → PlusMinusHelper.d.ts} +0 -0
  752. /package/src/Utilities/Helpers/{plusMinusTriggerKeys.js → PlusMinusHelper.js} +0 -0
  753. /package/src/Utilities/Helpers/{QuickSearchStyleHelper.d.ts → QuickSearchHelper.d.ts} +0 -0
  754. /package/src/Utilities/Helpers/{ScheduleJobManager.js → Scheduling/ScheduleJobManager.js} +0 -0
  755. /package/src/Utilities/Helpers/{ScheduleJobRunner.js → Scheduling/ScheduleJobRunner.js} +0 -0
@@ -0,0 +1,31 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import Input from '../../components/Input';
3
+ import { Box } from '../../components/Flex';
4
+ import { Card } from '../../components/Card';
5
+ import { cn } from '../../lib/utils';
6
+ export const WIZARD_TYPE_SELECTION_PREVIEW_FRAME_CLASS = 'twa:flex twa:w-full twa:min-h-[32px] twa:items-center twa:justify-center twa:overflow-hidden twa:rounded-standard twa:border twa:border-[color-mix(in_srgb,var(--ab-color-foreground)_15%,transparent)] twa:bg-[color-mix(in_srgb,var(--ab-color-primary)_35%,transparent)] twa:px-2 twa:py-1';
7
+ export const getWizardTypeSelectionGridColumns = (choiceCount) => choiceCount === 4 ? 2 : 3;
8
+ export const WizardTypeSelectionCard = ({ label, description, selected, disabled, disabledTooltip, dataName, minHeightClassName = 'twa:min-h-[108px]', onSelect, children, footer, }) => {
9
+ const handleActivate = () => {
10
+ if (!disabled) {
11
+ onSelect();
12
+ }
13
+ };
14
+ return (_jsxs(Box, { role: "radio", tabIndex: disabled ? -1 : 0, "aria-checked": selected, "aria-disabled": disabled, "data-name": dataName, className: cn('ab-WizardTypeSelectionCard group twa:relative twa:h-full twa:rounded-standard twa:border twa:border-primarydark/32 twa:bg-card twa:text-card-foreground twa:outline-none twa:transition-colors twa:focus-visible:ring-2 twa:focus-visible:ring-accent', minHeightClassName, disabled
15
+ ? 'twa:cursor-not-allowed twa:opacity-60'
16
+ : 'twa:cursor-pointer hover:twa:border-accent/55 hover:twa:bg-accent/5', selected &&
17
+ 'twa:after:pointer-events-none twa:after:absolute twa:after:inset-0 twa:after:rounded-standard twa:after:border-2 twa:after:border-[var(--ab-cmp-wizard-type-selection-card__selected-border)] twa:after:bg-[var(--ab-cmp-wizard-type-selection-card__selected-overlay)]'), onClick: handleActivate, onKeyDown: (event) => {
18
+ if (disabled) {
19
+ return;
20
+ }
21
+ if (event.key === 'Enter' || event.key === ' ') {
22
+ event.preventDefault();
23
+ onSelect();
24
+ }
25
+ }, children: [_jsx(Box, { "aria-hidden": true, className: cn('twa:pointer-events-none twa:absolute twa:top-2.5 twa:right-2.5 twa:z-10 twa:size-4 twa:rounded-full twa:border-2 twa:transition-colors', selected
26
+ ? 'twa:border-[var(--ab-cmp-wizard-type-selection-card__selected-border)] twa:bg-[var(--ab-cmp-wizard-type-selection-card__selected-border)]'
27
+ : 'twa:border-primarydark/35 twa:bg-base group-hover:twa:border-accent/55'), children: selected ? (_jsx(Box, { className: "twa:absolute twa:inset-0 twa:m-auto twa:size-1.5 twa:rounded-full twa:bg-[var(--ab-cmp-wizard-type-selection-card__selected-indicator-inner)]" })) : null }), _jsxs(Card, { shadow: false, style: { backgroundColor: 'transparent' }, className: "twa:flex twa:h-full twa:flex-col twa:justify-between twa:p-3 twa:pr-7", gap: 0, children: [_jsx(Box, { className: "twa:font-medium", children: label }), children, description || disabledTooltip ? (_jsxs(Box, { children: [description ? (_jsx(Box, { className: "twa:text-xs twa:leading-snug twa:opacity-70", children: description })) : null, disabled && disabledTooltip ? (_jsx(Box, { className: "twa:mt-1 twa:text-1 twa:leading-snug twa:italic twa:opacity-80", children: disabledTooltip })) : null] })) : null, footer] })] }));
28
+ };
29
+ export const WizardTypeSelectionSection = ({ headingId, title, intro, columns, dataName, className, children }) => (_jsxs(Card, { shadow: false, gap: 1, className: cn('twa:flex-1 twa:min-h-0', className), children: [_jsxs(Card.Title, { gap: 1, border: false, className: "twa:flex-col twa:items-start twa:px-1 twa:pb-1", children: [_jsx(Box, { id: headingId, className: "twa:font-medium", children: title }), _jsx(Box, { className: "twa:mt-1.5 twa:text-xs twa:font-normal twa:opacity-70", children: intro })] }), _jsx(Card.Body, { className: "twa:min-h-0 twa:overflow-y-auto twa:p-1 twa:pt-0", children: _jsx(Box, { "data-name": dataName, className: cn('twa:grid twa:gap-2', columns === 2 ? 'twa:grid-cols-2' : 'twa:grid-cols-3'), role: "radiogroup", "aria-labelledby": headingId, children: children }) })] }));
30
+ export const WizardNameFieldSection = ({ value, onChange, inputDataName = 'wizard-name', placeholder = 'Enter Name', }) => (_jsxs(Card, { shadow: false, gap: 1, className: "twa:bg-card twa:text-card-foreground", children: [_jsx(Card.Title, { gap: 1, border: false, className: "twa:px-1 twa:pb-1", children: _jsx(Box, { className: "twa:font-medium", children: "Name" }) }), _jsx(Card.Body, { className: "twa:p-1", children: _jsx(Input, { className: "twa:w-full twa:max-w-[420px]", "data-name": inputDataName, onChange: onChange, placeholder: placeholder, value: value }) })] }));
31
+ export const WizardTypeSelectionPreviewFrame = ({ children, }) => (_jsx(Box, { "aria-hidden": true, className: WIZARD_TYPE_SELECTION_PREVIEW_FRAME_CLASS, children: children }));
@@ -0,0 +1,18 @@
1
+ import * as React from 'react';
2
+ import { AdaptableApi, Layout } from '../../types';
3
+ export declare const TableRowGroupSummaryTags: React.FC<{
4
+ layout: Layout;
5
+ api: AdaptableApi;
6
+ }>;
7
+ export declare const PivotRowGroupSummaryTags: React.FC<{
8
+ layout: Layout;
9
+ api: AdaptableApi;
10
+ }>;
11
+ export declare const TableRowGroupSummaryView: React.FC<{
12
+ layout: Layout;
13
+ api: AdaptableApi;
14
+ }>;
15
+ export declare const PivotRowGroupSummaryView: React.FC<{
16
+ layout: Layout;
17
+ api: AdaptableApi;
18
+ }>;
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ColumnTag, Tag } from '../../components/Tag';
3
+ import { Flex } from '../../components/Flex';
4
+ import { getRowGroupBehaviorLabel, getRowGroupDisplayTypeLabel, } from '../../Strategy/Utilities/Layout/rowGroupSummaryHelpers';
5
+ export const TableRowGroupSummaryTags = ({ layout, api, }) => {
6
+ const columnIds = layout.RowGroupedColumns ?? [];
7
+ return (_jsxs(Flex, { flexWrap: "wrap", alignItems: "center", className: "twa:gap-1", children: [!columnIds.length ? (_jsx(Tag, { children: "No Row Grouped Columns" })) : (columnIds.map((columnId) => (_jsx(ColumnTag, { children: api.columnApi.getFriendlyNameForColumnId(columnId) }, columnId)))), _jsxs(Tag, { children: ["Display Type: ", getRowGroupDisplayTypeLabel(layout)] }), _jsxs(Tag, { children: ["Behaviour: ", getRowGroupBehaviorLabel(layout)] })] }));
8
+ };
9
+ export const PivotRowGroupSummaryTags = ({ layout, api, }) => {
10
+ const columnIds = layout.PivotGroupedColumns ?? [];
11
+ return (_jsxs(Flex, { flexWrap: "wrap", alignItems: "center", className: "twa:gap-1", children: [!columnIds.length ? (_jsx(Tag, { children: "No Row Grouped Columns" })) : (columnIds.map((columnId) => (_jsx(ColumnTag, { children: api.columnApi.getFriendlyNameForColumnId(columnId) }, columnId)))), _jsxs(Tag, { children: ["Behaviour: ", getRowGroupBehaviorLabel(layout)] })] }));
12
+ };
13
+ export const TableRowGroupSummaryView = (props) => _jsx(TableRowGroupSummaryTags, { ...props });
14
+ export const PivotRowGroupSummaryView = (props) => _jsx(PivotRowGroupSummaryTags, { ...props });
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ import { ColumnScope } from '../../AdaptableState/Common/ColumnScope';
3
+ export { getScopeViewItemsTagVariant as getScopeSummaryTagVariant } from '../../components/Tag/columnScopeTagHelpers';
4
+ export declare const ScopeSummaryTags: React.FC<{
5
+ scope: ColumnScope;
6
+ }>;
@@ -0,0 +1,33 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { getColumnTypeFriendlyName } from '../../AdaptableState/Common/AdaptableColumn';
3
+ import { Tag, TagList } from '../../components/Tag';
4
+ import { Flex } from '../../components/Flex';
5
+ import { useAdaptable } from '../AdaptableContext';
6
+ export { getScopeViewItemsTagVariant as getScopeSummaryTagVariant } from '../../components/Tag/columnScopeTagHelpers';
7
+ export const ScopeSummaryTags = ({ scope }) => {
8
+ const { api } = useAdaptable();
9
+ const scopeApi = api.columnScopeApi;
10
+ const columnsInScope = scopeApi.getColumnsInScope(scope);
11
+ if (scopeApi.scopeIsAll(scope)) {
12
+ return _jsx(Tag, { children: "All Columns" });
13
+ }
14
+ if ('ColumnIds' in scope) {
15
+ if (!columnsInScope.length) {
16
+ return _jsx(Tag, { children: "None" });
17
+ }
18
+ return (_jsx(TagList, { tags: columnsInScope.map((c) => c.friendlyName), variant: "column" }));
19
+ }
20
+ if ('DataTypes' in scope) {
21
+ if (!scope.DataTypes.length) {
22
+ return _jsx(Tag, { children: "None" });
23
+ }
24
+ return (_jsx(Flex, { flexWrap: "wrap", className: "twa:gap-1", children: scope.DataTypes.map((dataType) => (_jsx(Tag, { children: getColumnTypeFriendlyName(dataType) }, dataType))) }));
25
+ }
26
+ if ('ColumnTypes' in scope) {
27
+ if (!scope.ColumnTypes.length) {
28
+ return _jsx(Tag, { children: "None" });
29
+ }
30
+ return (_jsx(Flex, { flexWrap: "wrap", className: "twa:gap-1", children: scope.ColumnTypes.map((columnType) => (_jsx(Tag, { children: columnType }, columnType))) }));
31
+ }
32
+ return _jsx(Tag, { children: "None" });
33
+ };
@@ -1,8 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Provider } from 'react-redux';
3
3
  import AdaptableContext from './AdaptableContext';
4
- import { WithAdaptableComputedCSSVars } from './AdaptableComputedCSSVarsContext';
5
4
  import { TooltipProvider } from "../components/ui/tooltip";
6
5
  export const renderWithAdaptableContext = (children, adaptable) => {
7
- return (_jsx(TooltipProvider, { delay: 300, children: _jsx(Provider, { store: adaptable.adaptableStore.TheStore, children: _jsx(WithAdaptableComputedCSSVars, { children: _jsx(AdaptableContext.Provider, { value: adaptable, children: children }) }) }) }));
6
+ return (_jsx(TooltipProvider, { delay: 300, children: _jsx(Provider, { store: adaptable.adaptableStore.TheStore, children: _jsx(AdaptableContext.Provider, { value: adaptable, children: children }) }) }));
8
7
  };
@@ -97,7 +97,6 @@ export declare class AdaptableAgGrid implements IAdaptable {
97
97
  private LicenseService;
98
98
  private ChartingService;
99
99
  private rowListeners;
100
- private throttleFilterOnDataChange;
101
100
  private debouncedSetSelectedRows;
102
101
  private debouncedSetSelectedCells;
103
102
  private agGridListenerKeydown;
@@ -361,6 +360,7 @@ export declare class AdaptableAgGrid implements IAdaptable {
361
360
  private hasFloatingFilterOnAtLeastOneColumn;
362
361
  getChartRef(chartId: string): ChartRef;
363
362
  updateLayoutInManagerAfterStoreHasChanged(layout?: Layout): void;
363
+ private getActiveAdaptableAggFuncForCol;
364
364
  private onRowDataChanged;
365
365
  private onCellDataChanged;
366
366
  private isUndoChange;
@@ -1,10 +1,9 @@
1
- import throttle from '../Utilities/utils/throttle';
2
- import debounce from '../Utilities/utils/debounce';
1
+ import { debounce } from '../Utilities/Helpers/TimingHelper';
3
2
  import { createGrid, LocalEventService, } from 'ag-grid-enterprise';
4
3
  import { AdaptableLogger } from './AdaptableLogger';
5
4
  import { PrimaryKeyDocsLink } from '../Utilities/Constants/DocumentationLinkConstants';
6
5
  import StringExtensions from '../Utilities/Extensions/StringExtensions';
7
- import { applyQuickSearchFindCssVars } from '../Utilities/Helpers/QuickSearchStyleHelper';
6
+ import { applyQuickSearchFindCssVars } from '../Utilities/Helpers/QuickSearchHelper';
8
7
  import Emitter from '../Utilities/Emitter';
9
8
  import { applyDefaultAdaptableOptions } from '../AdaptableOptions/DefaultAdaptableOptions';
10
9
  import { resolveContainerElement } from '../Utilities/resolveContainerElement';
@@ -21,6 +20,7 @@ import { ThemeService } from '../Utilities/Services/ThemeService';
21
20
  import { ValidationService } from '../Utilities/Services/ValidationService';
22
21
  import { ModuleService } from '../Utilities/Services/ModuleService';
23
22
  import { CalculatedColumnExpressionService } from '../Utilities/Services/CalculatedColumnExpressionService';
23
+ import { expandCellDataChangedInfosWithCalculatedColumns } from '../Utilities/Services/CalculatedColumnExpressionService';
24
24
  import { QueryLanguageService } from '../Utilities/Services/QueryLanguageService';
25
25
  import { AlertService } from '../Utilities/Services/AlertService';
26
26
  import { TeamSharingService } from '../Utilities/Services/TeamSharingService';
@@ -78,24 +78,22 @@ import { AgGridOptionsService } from './AgGridOptionsService';
78
78
  import { parseDateValue } from '../Utilities/Helpers/DateHelper';
79
79
  import { AgGridColumnAdapter } from './AgGridColumnAdapter';
80
80
  import getScrollbarSize from '../Utilities/getScrollbarSize';
81
- import { ONLY_AGG_FN_NAME } from '../AdaptableState/Common/AggregationColumns';
82
- import { computeParameterizedAggregation, getParameterizedAggregationDefinitions, } from '../Aggregation/ParameterizedAggregationRegistry';
83
- import { getParameterizedAggForColumn } from '../Aggregation/parameterizedAggregationHelpers';
84
- import { getParameterizedAggregationHeaderParenthesisValue } from '../Aggregation/parameterizedAggregationHeader';
81
+ import { ONLY_AGG_FN_NAME, WEIGHTED_AVERAGE_AGG_FN_NAME, } from '../AdaptableState/Common/AggregationColumns';
85
82
  import { RowFormService } from '../Utilities/Services/RowFormService';
86
- import { FilterOnDataChangeOptions } from '../AdaptableState/Common/Enums';
87
83
  import { ADAPTABLE_PUBLISH_TIMESTAMP } from '../EnvVars';
88
84
  import { AdaptableUpgradeHelper } from '../migration/AdaptableUpgradeHelper';
89
85
  import { ensureLoadingScreenPortalElement } from '../components/Modal';
90
86
  import { AdaptableLoadingScreen } from '../View/Components/Popups/AdaptableLoadingScreen';
91
87
  import { createElement } from 'react';
92
88
  import { createAgStatusPanelComponent } from '../Utilities/createAgStatusPanelComponent';
93
- import { only } from '../Utilities/only';
89
+ import { only } from '../AdaptableState/Aggregations/only';
90
+ import { weightedAverage } from '../AdaptableState/Aggregations/weightedAverage';
94
91
  import { ROW_SUMMARY_ROW_ID } from '../AdaptableState/Common/RowSummary';
95
92
  import { FlashingCellService } from '../Utilities/Services/FlashingCellService';
96
93
  import { AgGridExportAdapter } from './AgGridExportAdapter';
97
- import { checkForDuplicateColumns, getLayoutRowGroupValuesExceptionGroupKeys, isPivotLayout, layoutModelToLayoutState, layoutStateToLayoutModel, normalizeLayout, } from '../Api/Implementation/LayoutHelpers';
94
+ import { checkForDuplicateColumns, resetLayoutHelperErrorOnceMessages, getLayoutRowGroupValuesExceptionGroupKeys, isPivotLayout, layoutModelToLayoutState, layoutStateToLayoutModel, normalizeLayout, } from '../Api/Implementation/LayoutHelpers';
98
95
  import { LayoutManager } from '../layout-manager/src';
96
+ import { rowGroupDisplayTypeToGridOption } from '../layout-manager/src/rowGroupDisplayType';
99
97
  import { isPivotLayoutModel } from '../layout-manager/src/isPivotLayoutModel';
100
98
  import { ACTION_COLUMN_TYPE, CALCULATED_COLUMN_TYPE, FDC3_COLUMN_TYPE, FREE_TEXT_COLUMN_TYPE, HIDDEN_COLUMN_TYPE, hiddenColDefConfig, PIVOT_AGGREGATION_TOTAL_COLUMN_TYPE, PIVOT_ANY_TOTAL_COLUMN_TYPE, PIVOT_COLUMN_TOTAL_COLUMN_TYPE, PIVOT_GRAND_TOTAL_COLUMN_TYPE, } from '../AdaptableState/Common/AdaptableColumn';
101
99
  import { agGridDataTypeDefinitions } from './agGridDataTypeDefinitions';
@@ -105,7 +103,7 @@ import { tagProvidedByAdaptable } from '../Utilities/adaptableOverrideCheck';
105
103
  import { AgGridModulesAdapter } from './AgGridModulesAdapter';
106
104
  import { getMarker } from '../devTools';
107
105
  import { DeepMap } from '@infinite-table/infinite-react';
108
- import { DateFormatter } from '../Utilities/Helpers/FormatHelper';
106
+ import { DateFormatter } from '../Utilities/Helpers/DisplayFormatHelper';
109
107
  import { clearPredicateDefMapMemo } from '../Api/Implementation/PredicateApiImpl';
110
108
  import { AgGridFilterAdapterFactory } from './AgGridFilterAdapter';
111
109
  import { AdaptableFilterHandler } from './AdaptableFilterHandler';
@@ -203,7 +201,6 @@ export class AdaptableAgGrid {
203
201
  LicenseService;
204
202
  ChartingService;
205
203
  rowListeners;
206
- throttleFilterOnDataChange;
207
204
  debouncedSetSelectedRows;
208
205
  debouncedSetSelectedCells;
209
206
  agGridListenerKeydown;
@@ -355,6 +352,7 @@ export class AdaptableAgGrid {
355
352
  this._rawAdaptableOptions.adaptableId = `adaptable_id_${Date.now()}`;
356
353
  }
357
354
  this.logger = this.logger ?? new AdaptableLogger(this._rawAdaptableOptions.adaptableId);
355
+ resetLayoutHelperErrorOnceMessages();
358
356
  const adaptableId = this._rawAdaptableOptions.adaptableId;
359
357
  const initMarker = getMarker(adaptableId).track.Init.label.Init.start();
360
358
  const perfInitAdaptableAgGrid = this.logger.beginPerf(`Adaptable._initAdaptableAgGrid()`);
@@ -461,8 +459,7 @@ export class AdaptableAgGrid {
461
459
  if (isPivotLayoutModel(layoutModel)) {
462
460
  gridOptions.pivotDefaultExpanded = layoutModel.PivotExpandLevel;
463
461
  }
464
- gridOptions.groupDisplayType =
465
- layoutModel.RowGroupDisplayType === 'multi' ? 'multipleColumns' : 'singleColumn';
462
+ gridOptions.groupDisplayType = rowGroupDisplayTypeToGridOption(layoutModel.RowGroupDisplayType);
466
463
  // fixes issue #3053
467
464
  gridOptions.suppressAggFuncInHeader = !!layoutModel.SuppressAggFuncInHeader;
468
465
  if (!isPivotLayoutModel(layoutModel) &&
@@ -901,16 +898,7 @@ export class AdaptableAgGrid {
901
898
  // #customize_header
902
899
  const defaultColDef = { ...original_defaultColDef };
903
900
  defaultColDef.headerValueGetter = tagProvidedByAdaptable((params) => {
904
- let columnHeaderName = this.api.columnApi.internalApi.getColumnHeaderName(params);
905
- const currentLayout = this.api.layoutApi.getCurrentLayout();
906
- if (params.column &&
907
- !currentLayout.SuppressAggFuncInHeader &&
908
- params.location === 'header') {
909
- const parameterizedParenthesisValue = getParameterizedAggregationHeaderParenthesisValue(this.api, params.column.getColId(), currentLayout);
910
- if (parameterizedParenthesisValue) {
911
- columnHeaderName = parameterizedParenthesisValue;
912
- }
913
- }
901
+ const columnHeaderName = this.api.columnApi.internalApi.getColumnHeaderName(params);
914
902
  const formattedHeaderName = this.api.formatColumnApi.internalApi.formatColumnHeaderName(columnHeaderName, params);
915
903
  return formattedHeaderName;
916
904
  });
@@ -1124,16 +1112,17 @@ export class AdaptableAgGrid {
1124
1112
  aggregationFunctions[ONLY_AGG_FN_NAME] = (params) => {
1125
1113
  return only(params);
1126
1114
  };
1127
- getParameterizedAggregationDefinitions().forEach((definition) => {
1128
- aggregationFunctions[definition.agGridAggFuncName] = (params) => {
1129
- const columnId = params.column.getColId();
1130
- const parameterizedAggFunc = getParameterizedAggForColumn(columnId, this.api.layoutApi.getCurrentLayout());
1131
- if (!parameterizedAggFunc || parameterizedAggFunc.type !== definition.type) {
1132
- return undefined;
1133
- }
1134
- return computeParameterizedAggregation(params, params.colDef.colId, parameterizedAggFunc);
1135
- };
1136
- });
1115
+ aggregationFunctions[WEIGHTED_AVERAGE_AGG_FN_NAME] = (params) => {
1116
+ const columnId = params.column.getColId();
1117
+ const adaptableAggFunc = this.getActiveAdaptableAggFuncForCol(columnId);
1118
+ if (!adaptableAggFunc) {
1119
+ return undefined;
1120
+ }
1121
+ if (adaptableAggFunc.type === 'weightedAverage') {
1122
+ return weightedAverage(params, params.colDef.colId, adaptableAggFunc.weightedColumnId);
1123
+ }
1124
+ return undefined;
1125
+ };
1137
1126
  return aggregationFunctions;
1138
1127
  });
1139
1128
  /**
@@ -1449,7 +1438,7 @@ export class AdaptableAgGrid {
1449
1438
  // dataType: 'Number',
1450
1439
  // AG Grid requires either dataType or numberFormat to be set for Numbers
1451
1440
  numberFormat: {
1452
- format: '0.###############',
1441
+ format: `#,##0.00`,
1453
1442
  },
1454
1443
  });
1455
1444
  // store original excel styles, we will have to revert to them after each VISUAL EXPORT
@@ -1699,12 +1688,6 @@ export class AdaptableAgGrid {
1699
1688
  }), true);
1700
1689
  gridContainerElement.addEventListener('mouseleave', (this.agGridListenerMouseLeave = (event) => this._emit('MouseLeave', event)));
1701
1690
  }
1702
- this.throttleFilterOnDataChange = throttle(
1703
- // the extra function is to make sure we have a reference to ag-grid-api
1704
- () => this.agGridAdapter.getAgGridApi()?.onFilterChanged(), this.adaptableOptions.filterOptions.filterActionOnDataChange.throttleDelay, {
1705
- trailing: true,
1706
- leading: false,
1707
- });
1708
1691
  /**
1709
1692
  * Use Case: User has started inline editing but its disabled in Row Form Options
1710
1693
  * Action: Stop editing
@@ -3813,7 +3796,6 @@ export class AdaptableAgGrid {
3813
3796
  this.listenerCellSelectionChanged = null;
3814
3797
  this.listenerGlobalSetRowSelection = null;
3815
3798
  this.listenerSortChanged = null;
3816
- this.throttleFilterOnDataChange = null;
3817
3799
  const liveGridOptions = this.agGridAdapter.DANGER_getLiveGridOptions();
3818
3800
  if (liveGridOptions) {
3819
3801
  this.agGridOptionsService.revertGridOptionsPropertiesToUserValue(liveGridOptions, [
@@ -4049,6 +4031,25 @@ export class AdaptableAgGrid {
4049
4031
  ],
4050
4032
  });
4051
4033
  }
4034
+ getActiveAdaptableAggFuncForCol(columnId) {
4035
+ if (!columnId) {
4036
+ return null;
4037
+ }
4038
+ const currentLayout = this.api.layoutApi.getCurrentLayout();
4039
+ const aggregationFunctionsColumnsMap = (isPivotLayout(currentLayout)
4040
+ ? currentLayout.PivotAggregationColumns
4041
+ : currentLayout.TableAggregationColumns).reduce((acc, col) => {
4042
+ acc[col.ColumnId] = col.AggFunc;
4043
+ return acc;
4044
+ }, {});
4045
+ const adaptableAggFunc = aggregationFunctionsColumnsMap[columnId];
4046
+ if (typeof adaptableAggFunc === 'object' &&
4047
+ 'type' in adaptableAggFunc &&
4048
+ adaptableAggFunc.type === 'weightedAverage') {
4049
+ return adaptableAggFunc;
4050
+ }
4051
+ return null;
4052
+ }
4052
4053
  onRowDataChanged({ rowNode, oldData, newData, }) {
4053
4054
  if (oldData == null || oldData == undefined) {
4054
4055
  return;
@@ -4133,6 +4134,7 @@ export class AdaptableAgGrid {
4133
4134
  * There are a few things we need to do AFTER we edit a cell and it makes sense to put them in one place
4134
4135
  */
4135
4136
  performPostEditChecks(rowNode, cellDataChangedInfos) {
4137
+ cellDataChangedInfos = expandCellDataChangedInfosWithCalculatedColumns(this.api, cellDataChangedInfos);
4136
4138
  cellDataChangedInfos.forEach((cellDataChangedInfo) => {
4137
4139
  // if a Cell Data Change is undone, log to the Console
4138
4140
  if (cellDataChangedInfo.trigger === 'undo') {
@@ -4290,14 +4292,7 @@ export class AdaptableAgGrid {
4290
4292
  }
4291
4293
  }
4292
4294
  filterOnDataChange() {
4293
- if (this.adaptableOptions.filterOptions.filterActionOnDataChange.applyFilter ==
4294
- FilterOnDataChangeOptions.Always) {
4295
- this.agGridAdapter.getAgGridApi()?.onFilterChanged();
4296
- }
4297
- else if (this.adaptableOptions.filterOptions.filterActionOnDataChange.applyFilter ==
4298
- FilterOnDataChangeOptions.Throttle) {
4299
- this.throttleFilterOnDataChange();
4300
- }
4295
+ this.agGridAdapter.getAgGridApi()?.onFilterChanged();
4301
4296
  }
4302
4297
  refreshLayout() {
4303
4298
  const columnDefs = this.agGridAdapter.getColumnDefinitionsInclSpecialColumns();
@@ -50,6 +50,7 @@ export declare class AgGridAdapter {
50
50
  deriveSelectedRowInfoFromAgGrid(): SelectedRowInfo;
51
51
  isPinnedRowNode(rowNode: IRowNode): boolean;
52
52
  createAdaptableColumnFromAgGridColumn(agGridColumn: Column, colsToGroups: Record<string, AdaptableColumnGroup>): AdaptableColumn;
53
+ private getUserAllowedAggFuncs;
53
54
  private deriveAdaptableColumnDataType;
54
55
  private isColumnReadonly;
55
56
  private isColumnFieldonly;
@@ -57,7 +58,6 @@ export declare class AgGridAdapter {
57
58
  private isColumnRowGroupable;
58
59
  private isColumnPivotable;
59
60
  private isColumnAggregetable;
60
- private getUserAllowedAggFuncs;
61
61
  private getColumnAggregationFunctions;
62
62
  private isTreeColumn;
63
63
  private isColumnMoveable;
@@ -8,8 +8,7 @@ import { agGridDataTypeDefinitions, ALL_ADAPTABLE_DATA_TYPES } from './agGridDat
8
8
  import { isPivotGrandTotal } from '../Api/Implementation/ColumnApiImpl';
9
9
  import { isPivotColumnTotal } from '../layout-manager/src/isPivotColumnTotal';
10
10
  import { isPivotAggTotalColumn } from '../layout-manager/src/isPivotAggTotalColumn';
11
- import { getParameterizedAggregationDefinitionByAgGridName } from '../Aggregation/ParameterizedAggregationRegistry';
12
- import { isParameterizedAggFuncName } from '../Aggregation/ParameterizedAggregationRegistry';
11
+ import { ONLY_AGG_FN_NAME, WEIGHTED_AVERAGE_AGG_FN_NAME, } from '../AdaptableState/Common/AggregationColumns';
13
12
  // AG GRID obfuscates its internals, this is (currently) the best way to get hold of its internal services
14
13
  const DANGER_AG_GRID_BEANS_MAP = {};
15
14
  const getColumnApiModule = () => ColumnApiModule;
@@ -226,9 +225,8 @@ export class AgGridAdapter {
226
225
  if (fctName === 'only') {
227
226
  return 'Only';
228
227
  }
229
- const parameterizedDefinition = getParameterizedAggregationDefinitionByAgGridName(fctName);
230
- if (parameterizedDefinition) {
231
- return parameterizedDefinition.agGridAggFuncName;
228
+ if (fctName === 'weightedAvg') {
229
+ return 'Weighted Average';
232
230
  }
233
231
  return original_getDefaultFuncLabel.call(this, fctName);
234
232
  };
@@ -542,16 +540,23 @@ export class AgGridAdapter {
542
540
  abColumn.exportable = this.isColumnExportable(abColumn);
543
541
  if (abColumn.aggregatable) {
544
542
  abColumn.availableAggregationFunctions = this.getColumnAggregationFunctions(colDef);
545
- const userAllowedAggFuncs = this.getUserAllowedAggFuncs(ColumnId);
546
- if (userAllowedAggFuncs) {
547
- abColumn.userAllowedAggFuncs = userAllowedAggFuncs;
548
- }
543
+ Object.defineProperty(abColumn, 'userAllowedAggFuncs', {
544
+ get: () => this.getUserAllowedAggFuncs(ColumnId),
545
+ enumerable: true,
546
+ configurable: true,
547
+ });
549
548
  if (typeof colDef.aggFunc === 'string') {
550
549
  abColumn.aggregationFunction = colDef.aggFunc;
551
550
  }
552
551
  }
553
552
  return abColumn;
554
553
  }
554
+ getUserAllowedAggFuncs(columnId) {
555
+ const userColumnAllowed = this._adaptableInstance?.agGridColumnAdapter?.getUserColDefProperty(columnId, 'allowedAggFuncs');
556
+ const userDefaultColDef = this.getUserGridOptionsProperty('defaultColDef');
557
+ const userAllowed = userColumnAllowed ?? userDefaultColDef?.allowedAggFuncs;
558
+ return Array.isArray(userAllowed) ? [...userAllowed] : undefined;
559
+ }
555
560
  deriveAdaptableColumnDataType(agColumn, logWarning = true) {
556
561
  // Some columns can have no ID or Title. we return string as a consequence but it needs testing
557
562
  if (!agColumn) {
@@ -581,11 +586,6 @@ export class AgGridAdapter {
581
586
  return 'unknown';
582
587
  }
583
588
  let dataType = 'unknown';
584
- // get the column type if already in store (and not unknown)
585
- const existingColumn = this.adaptableApi.columnApi.getColumnWithColumnId(agColumn.getId(), logWarning);
586
- if (existingColumn && existingColumn.dataType !== 'unknown') {
587
- return existingColumn.dataType;
588
- }
589
589
  // check for colDef dataType
590
590
  const colDefDataType = agColumn.getColDef().cellDataType;
591
591
  if (typeof colDefDataType === 'string' && ALL_ADAPTABLE_DATA_TYPES.includes(colDefDataType)) {
@@ -684,12 +684,6 @@ export class AgGridAdapter {
684
684
  }
685
685
  return false;
686
686
  }
687
- getUserAllowedAggFuncs(columnId) {
688
- const userColumnAllowed = this._adaptableInstance?.agGridColumnAdapter?.getUserColDefProperty(columnId, 'allowedAggFuncs');
689
- const userDefaultColDef = this.getUserGridOptionsProperty('defaultColDef');
690
- const userAllowed = userColumnAllowed ?? userDefaultColDef?.allowedAggFuncs;
691
- return Array.isArray(userAllowed) ? [...userAllowed] : undefined;
692
- }
693
687
  getColumnAggregationFunctions(colDef) {
694
688
  const defaultAggFuncs = ['sum', 'min', 'max', 'count', 'avg', 'first', 'last'];
695
689
  const hasAllowedAggFuncs = Array.isArray(colDef.allowedAggFuncs);
@@ -697,9 +691,20 @@ export class AgGridAdapter {
697
691
  const gridOptionsAggFuncs = this.adaptableApi.agGridApi.getGridOption('aggFuncs') || {};
698
692
  const gridOptionsAggFuncNames = Object.keys(gridOptionsAggFuncs);
699
693
  if (!hasAllowedAggFuncs) {
700
- result.push(...gridOptionsAggFuncNames);
694
+ // we assume gridOptionsAggFuncNames includes 'weightedAvg' and 'only'
695
+ const customAggFuncNames = gridOptionsAggFuncNames.filter((name) => name !== WEIGHTED_AVERAGE_AGG_FN_NAME && name !== ONLY_AGG_FN_NAME);
696
+ // 'weightedAvg' is displayed right after 'avg'
697
+ const avgIndex = result.indexOf('avg');
698
+ if (avgIndex >= 0) {
699
+ result.splice(avgIndex + 1, 0, WEIGHTED_AVERAGE_AGG_FN_NAME);
700
+ }
701
+ else {
702
+ result.push(WEIGHTED_AVERAGE_AGG_FN_NAME);
703
+ }
704
+ result.push(...customAggFuncNames);
705
+ // 'only' is always the last element
706
+ result.push(ONLY_AGG_FN_NAME);
701
707
  }
702
- result = result.filter((func) => !isParameterizedAggFuncName(func));
703
708
  return [...new Set(result)];
704
709
  }
705
710
  isTreeColumn(isGeneratedRowGroupColumn) {
@@ -1,7 +1,9 @@
1
- import kebabCase from '../Utilities/utils/kebabCase';
1
+ import { kebabCase } from '../Utilities/Extensions/StringExtensions';
2
2
  import { resolveDisplayFormat } from '../AdaptableState/Common/AdaptableFormatPresets';
3
- import merge from '../Utilities/utils/merge';
4
- import { convertAdaptableStyleToCSS, getVariableColor, hasCellBoxStyle, hasCellFontStyle, normalizeStyleForAgGrid, } from '../Utilities/Helpers/StyleHelper';
3
+ import { merge } from '../Utilities/Extensions/ObjectExtensions';
4
+ import { resolveSparklineOptionsForRender } from '../Utilities/Helpers/StyledColumns/SparklineStyleHelper';
5
+ import { hasBarStyleCellTextConfigured } from '../Utilities/Helpers/StyledColumns/BarStylesHelper';
6
+ import { convertAdaptableStyleToCSS, getAutoContrastTextColor, getVariableColor, hasCellBoxStyle, hasCellFontStyle, normalizeStyleForAgGrid, } from '../Utilities/Helpers/StyleHelper';
5
7
  import StringExtensions from '../Utilities/Extensions/StringExtensions';
6
8
  import { ACTION_COLUMN_TYPE, CALCULATED_COLUMN_TYPE, FDC3_COLUMN_TYPE, FREE_TEXT_COLUMN_TYPE, } from '../AdaptableState/Common/AdaptableColumn';
7
9
  import tinycolor from 'tinycolor2';
@@ -11,11 +13,11 @@ import { getBadgeRendererForColumn } from './cellRenderers/BadgeRenderer';
11
13
  import { getBulletChartRendererForColumn } from './cellRenderers/BulletChartRenderer';
12
14
  import { getRangeBarRendererForColumn } from './cellRenderers/RangeBarRenderer';
13
15
  import { getRatingRendererForColumn } from './cellRenderers/RatingRenderer';
14
- import { shouldRenderStyledColumnOnRow } from './cellRenderers/shouldRenderStyledColumnOnRow';
16
+ import { shouldRenderStyledColumnOnRow } from '../Utilities/Helpers/StyledColumns/StyledColumnHelper';
15
17
  import { findIconStyleMappingForValue, getIconRendererForColumn, } from './cellRenderers/IconRenderer';
16
- import Helper from '../Utilities/Helpers/Helper';
17
- import { getRuleAlertProperties } from '../Utilities/Helpers/ScheduledAlertHelper';
18
- import { isNegativeZeroCentredBand, expandGradientCellRanges, gradientStyleRangeLookupValueType, DEFAULT_GRADIENT_MIN_ALPHA, DEFAULT_GRADIENT_MAX_ALPHA, } from '../Utilities/Helpers/StyledColumnGradientHelper';
18
+ import { clamp } from '../Utilities/Extensions/NumberExtensions';
19
+ import { getRuleAlertProperties } from '../Utilities/Helpers/Scheduling/ScheduledAlertHelper';
20
+ import { isNegativeZeroCentredBand, expandGradientCellRanges, gradientStyleRangeLookupValueType, DEFAULT_GRADIENT_MIN_ALPHA, DEFAULT_GRADIENT_MAX_ALPHA, } from '../Utilities/Helpers/StyledColumns/GradientStyleHelper';
19
21
  import { AdaptableNumberEditor, AdaptableReactNumberEditor } from './editors/AdaptableNumberEditor';
20
22
  import { AdaptableDateEditor, AdaptableReactDateEditor } from './editors/AdaptableDateEditor';
21
23
  import { AgGridExportAdapter } from './AgGridExportAdapter';
@@ -25,8 +27,8 @@ import { AdaptableFilterHandler } from './AdaptableFilterHandler';
25
27
  import { AgGridFilterAdapterFactory } from './AgGridFilterAdapter';
26
28
  import { AgGridFloatingFilterAdapterFactory } from './AgGridFloatingFilterAdapter';
27
29
  import { errorOnce } from './AdaptableLogger';
28
- import { isUnsupportedColumnDataTypeForIconStyle } from '../Utilities/Helpers/iconStyledColumnColumnSupport';
29
- import { isParameterizedAggFuncName } from '../Aggregation/ParameterizedAggregationRegistry';
30
+ import { isUnsupportedColumnDataTypeForIconStyle } from '../Utilities/Helpers/StyledColumns/IconStyleHelper';
31
+ import { isWeightedAverageAggFuncName, } from '../AdaptableState/Common/AggregationColumns';
30
32
  /**
31
33
  * CSS property keys produced by `convertAdaptableStyleToCSS` from a
32
34
  * `CellFontStyle` slice. Used to strip Format-Column-derived font CSS
@@ -552,7 +554,7 @@ export class AgGridColumnAdapter {
552
554
  if (styledColumn && !styledColumn.IsSuspended) {
553
555
  if (styledColumn.SparklineStyle) {
554
556
  const sanitizedSparklineOptions = AdaptableHelper.removeAdaptableObjectPrimitives(styledColumn.SparklineStyle.options);
555
- const sparklineOptions = merge({}, userDefined?.sparklineOptions, sanitizedSparklineOptions);
557
+ const sparklineOptions = resolveSparklineOptionsForRender(merge({}, userDefined?.sparklineOptions, sanitizedSparklineOptions));
556
558
  return {
557
559
  ...userDefined,
558
560
  sparklineOptions,
@@ -571,8 +573,7 @@ export class AgGridColumnAdapter {
571
573
  // Icon Style has its own tooltip vocabulary (`'CellValue'` /
572
574
  // `'IconDescription'`) so we handle it before falling through to the
573
575
  // numeric tooltip branch.
574
- if (styledColumn.IconStyle &&
575
- !isUnsupportedColumnDataTypeForIconStyle(abColumn.dataType)) {
576
+ if (styledColumn.IconStyle && !isUnsupportedColumnDataTypeForIconStyle(abColumn.dataType)) {
576
577
  const iconTokens = styledColumn.IconStyle.ToolTipText ?? [];
577
578
  if (iconTokens.length === 0) {
578
579
  return undefined;
@@ -610,7 +611,7 @@ export class AgGridColumnAdapter {
610
611
  if (ratingToolTip.includes('PercentageValue') && ratingMax > 0) {
611
612
  const n = Number(params.value);
612
613
  if (!isNaN(n)) {
613
- const clamped = Helper.clamp(n, 0, ratingMax);
614
+ const clamped = clamp(n, 0, ratingMax);
614
615
  const percentageValue = (clamped / ratingMax) * 100;
615
616
  const pct = `${percentageValue.toFixed(0)}%`;
616
617
  returnValue = returnValue ? `${returnValue} (${pct})` : pct;
@@ -650,9 +651,7 @@ export class AgGridColumnAdapter {
650
651
  if (textOptions.includes('CellValue')) {
651
652
  returnValue = String(params.value ?? '');
652
653
  }
653
- if (textOptions.includes('PercentageValue') &&
654
- min != undefined &&
655
- max != undefined) {
654
+ if (textOptions.includes('PercentageValue') && min != undefined && max != undefined) {
656
655
  let percentageValue;
657
656
  if (styledColumn.PercentBarStyle?.ColumnComparison) {
658
657
  const absMax = Math.abs(max);
@@ -660,9 +659,8 @@ export class AgGridColumnAdapter {
660
659
  }
661
660
  else {
662
661
  const scaleSpan = max - min;
663
- const clamped = Helper.clamp(Number(params.value), min, max);
664
- percentageValue =
665
- scaleSpan === 0 ? 0 : ((clamped - min) / scaleSpan) * 100;
662
+ const clamped = clamp(Number(params.value), min, max);
663
+ percentageValue = scaleSpan === 0 ? 0 : ((clamped - min) / scaleSpan) * 100;
666
664
  }
667
665
  returnValue += ` (${percentageValue.toFixed(0)}%)`;
668
666
  }
@@ -728,8 +726,7 @@ export class AgGridColumnAdapter {
728
726
  if (!abColumn.availableAggregationFunctions) {
729
727
  return undefined;
730
728
  }
731
- return abColumn.availableAggregationFunctions.filter((func) => !isParameterizedAggFuncName(func));
732
- // .filter((func) => func !== ONLY_AGG_FN_NAME);
729
+ return abColumn.availableAggregationFunctions.filter((func) => !isWeightedAverageAggFuncName(func));
733
730
  });
734
731
  }
735
732
  setupColumnType(columnSetupInfo) {
@@ -951,10 +948,7 @@ export class AgGridColumnAdapter {
951
948
  // 1. evaluate EditOptions.isCellEditable if provided
952
949
  if (this.adaptableApi.gridApi.internalApi.hasCellEditableAccordingToEditOptions()) {
953
950
  const gridCell = this.adaptableApi.gridApi.getGridCellFromRowNode(params.node, params.column.getColId());
954
- const editOptionsEditability = this.adaptableApi.gridApi.internalApi.isCellEditableAccordingToEditOptions(gridCell, getOriginalColDefEditable());
955
- if (editOptionsEditability) {
956
- return editOptionsEditability;
957
- }
951
+ return this.adaptableApi.gridApi.internalApi.isCellEditableAccordingToEditOptions(gridCell, getOriginalColDefEditable());
958
952
  }
959
953
  // 2. otherwise, fallback to colDef.editable
960
954
  return getOriginalColDefEditable();
@@ -1433,11 +1427,11 @@ export class AgGridColumnAdapter {
1433
1427
  }
1434
1428
  const minAlphaBound = gradientStyle.MinAlpha ?? DEFAULT_GRADIENT_MIN_ALPHA;
1435
1429
  const maxAlphaBound = gradientStyle.MaxAlpha ?? DEFAULT_GRADIENT_MAX_ALPHA;
1436
- const lo = Math.min(Helper.clamp(minAlphaBound, 0, 1), Helper.clamp(maxAlphaBound, 0, 1));
1437
- const hi = Math.max(Helper.clamp(minAlphaBound, 0, 1), Helper.clamp(maxAlphaBound, 0, 1));
1430
+ const lo = Math.min(clamp(minAlphaBound, 0, 1), clamp(maxAlphaBound, 0, 1));
1431
+ const hi = Math.max(clamp(minAlphaBound, 0, 1), clamp(maxAlphaBound, 0, 1));
1438
1432
  const span = Math.abs(max - min);
1439
1433
  let t = span === 0 ? 0.5 : (Number(colValue) - min) / span;
1440
- t = Helper.clamp(t, 0, 1);
1434
+ t = clamp(t, 0, 1);
1441
1435
  if (reverseGradient) {
1442
1436
  t = 1 - t;
1443
1437
  }
@@ -1448,11 +1442,12 @@ export class AgGridColumnAdapter {
1448
1442
  const bg = tinycolor(preparedColor).setAlpha(alpha);
1449
1443
  style.backgroundColor = bg.toRgbString();
1450
1444
  if (gradientStyle.AutoContrastText) {
1451
- style.color = bg.getLuminance() > 0.45 ? '#111111' : '#ffffff';
1445
+ style.color = getAutoContrastTextColor(preparedColor, alpha);
1452
1446
  }
1453
1447
  }
1454
1448
  }
1455
- if (styledColumn.PercentBarStyle && styledColumn.PercentBarStyle.CellText) {
1449
+ if (styledColumn.PercentBarStyle &&
1450
+ hasBarStyleCellTextConfigured(styledColumn.PercentBarStyle.CellTextProperties)) {
1456
1451
  style.paddingTop = 0;
1457
1452
  style.paddingBottom = 0;
1458
1453
  }
@@ -1466,8 +1461,7 @@ export class AgGridColumnAdapter {
1466
1461
  // basis when a Gradient cell has a tinted background, even if the user
1467
1462
  // also set `Font.ForeColor` as a baseline.
1468
1463
  const autoContrastColor = gradientStyle?.AutoContrastText && style.color ? style.color : undefined;
1469
- const iconStyleFontApplies = styledColumn.IconStyle &&
1470
- !isUnsupportedColumnDataTypeForIconStyle(abColumn.dataType);
1464
+ const iconStyleFontApplies = styledColumn.IconStyle && !isUnsupportedColumnDataTypeForIconStyle(abColumn.dataType);
1471
1465
  const fontSlot = styledColumn.GradientStyle?.Font ??
1472
1466
  styledColumn.PercentBarStyle?.Font ??
1473
1467
  styledColumn.BulletChartStyle?.Font ??
@@ -1479,8 +1473,7 @@ export class AgGridColumnAdapter {
1479
1473
  if (fontSlot) {
1480
1474
  style = { ...style, ...convertAdaptableStyleToCSS(fontSlot) };
1481
1475
  }
1482
- const iconStyleCellApplies = styledColumn.IconStyle &&
1483
- !isUnsupportedColumnDataTypeForIconStyle(abColumn.dataType);
1476
+ const iconStyleCellApplies = styledColumn.IconStyle && !isUnsupportedColumnDataTypeForIconStyle(abColumn.dataType);
1484
1477
  const cellSlot = styledColumn.RatingStyle?.Cell ??
1485
1478
  styledColumn.SparklineStyle?.Cell ??
1486
1479
  styledColumn.BadgeStyle?.Cell ??