@adaptabletools/adaptable 22.1.1 → 23.0.0-canary.1

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 (1033) hide show
  1. package/devtools.d.ts +70 -0
  2. package/icons/bullet-chart.svg +1 -0
  3. package/icons/horizontal-lines.svg +1 -1
  4. package/icons/icon-style.svg +1 -0
  5. package/icons/percent-tag.svg +1 -1
  6. package/icons/range-bar.svg +1 -0
  7. package/icons/star.svg +1 -0
  8. package/index.css +2267 -333
  9. package/package.json +10 -5
  10. package/src/AdaptableInterfaces/IAdaptable.d.ts +5 -2
  11. package/src/AdaptableOptions/ActionColumnOptions.d.ts +27 -1
  12. package/src/AdaptableOptions/ChartingOptions.d.ts +7 -0
  13. package/src/AdaptableOptions/ColumnMenuOptions.d.ts +30 -0
  14. package/src/AdaptableOptions/ContextMenuOptions.d.ts +30 -0
  15. package/src/AdaptableOptions/DashboardOptions.d.ts +56 -2
  16. package/src/AdaptableOptions/DefaultAdaptableOptions.js +13 -6
  17. package/src/AdaptableOptions/EditOptions.d.ts +34 -4
  18. package/src/AdaptableOptions/NotificationsOptions.d.ts +1 -1
  19. package/src/AdaptableOptions/RowFormOptions.d.ts +46 -2
  20. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +3 -3
  21. package/src/AdaptableState/AdaptableState.d.ts +0 -2
  22. package/src/AdaptableState/AlertState.d.ts +65 -24
  23. package/src/AdaptableState/CalculatedColumnState.d.ts +1 -1
  24. package/src/AdaptableState/ChartingState.d.ts +2 -2
  25. package/src/AdaptableState/Common/AdaptableButton.d.ts +5 -0
  26. package/src/AdaptableState/Common/AdaptableColumn.d.ts +5 -0
  27. package/src/AdaptableState/Common/AdaptableForm.d.ts +304 -16
  28. package/src/AdaptableState/Common/AdaptableForm.js +211 -2
  29. package/src/AdaptableState/Common/AdaptableIcon.d.ts +1 -1
  30. package/src/AdaptableState/Common/AdaptablePredicate.js +22 -2
  31. package/src/AdaptableState/Common/AdaptableStyle.d.ts +48 -18
  32. package/src/AdaptableState/Common/AggregationColumns.d.ts +6 -1
  33. package/src/AdaptableState/Common/AggregationColumns.js +2 -4
  34. package/src/AdaptableState/Common/Enums.d.ts +1 -4
  35. package/src/AdaptableState/Common/Enums.js +0 -3
  36. package/src/AdaptableState/Common/ExtendedLayout.d.ts +3 -3
  37. package/src/AdaptableState/Common/Menu.d.ts +1 -1
  38. package/src/AdaptableState/Common/Menu.js +11 -0
  39. package/src/AdaptableState/Common/Schedule.d.ts +7 -29
  40. package/src/AdaptableState/Common/Types.d.ts +4 -4
  41. package/src/AdaptableState/Common/Types.js +0 -2
  42. package/src/AdaptableState/DashboardState.d.ts +0 -5
  43. package/src/AdaptableState/ExportState.d.ts +19 -6
  44. package/src/AdaptableState/IPushPullState.d.ts +0 -14
  45. package/src/AdaptableState/InitialState.d.ts +2 -6
  46. package/src/AdaptableState/LayoutState.d.ts +17 -0
  47. package/src/AdaptableState/OpenFinState.d.ts +0 -14
  48. package/src/AdaptableState/PlusMinusState.d.ts +8 -0
  49. package/src/AdaptableState/StyledColumnState.d.ts +742 -18
  50. package/src/Aggregation/ParameterizedAggregationRegistry.d.ts +35 -0
  51. package/src/Aggregation/ParameterizedAggregationRegistry.js +63 -0
  52. package/src/Aggregation/definitions/weightedAverageAggregationDefinition.d.ts +3 -0
  53. package/src/Aggregation/definitions/weightedAverageAggregationDefinition.js +55 -0
  54. package/src/Aggregation/parameterizedAggregationColumnMenu.d.ts +8 -0
  55. package/src/Aggregation/parameterizedAggregationColumnMenu.js +137 -0
  56. package/src/Aggregation/parameterizedAggregationHeader.d.ts +13 -0
  57. package/src/Aggregation/parameterizedAggregationHeader.js +60 -0
  58. package/src/Aggregation/parameterizedAggregationHelpers.d.ts +23 -0
  59. package/src/Aggregation/parameterizedAggregationHelpers.js +111 -0
  60. package/src/Aggregation/parameterizedAggregationWizardHelpers.d.ts +9 -0
  61. package/src/Aggregation/parameterizedAggregationWizardHelpers.js +66 -0
  62. package/src/Aggregation/validateParameterizedAggregations.d.ts +4 -0
  63. package/src/Aggregation/validateParameterizedAggregations.js +20 -0
  64. package/src/Api/AdaptableApi.d.ts +0 -5
  65. package/src/Api/AlertApi.d.ts +7 -3
  66. package/src/Api/ChartingApi.d.ts +1 -1
  67. package/src/Api/ColumnFilterApi.d.ts +4 -0
  68. package/src/Api/ColumnMenuApi.d.ts +1 -1
  69. package/src/Api/ColumnScopeApi.d.ts +6 -2
  70. package/src/Api/DashboardApi.d.ts +13 -0
  71. package/src/Api/EventApi.d.ts +7 -8
  72. package/src/Api/Events/ReportScheduleRan.d.ts +11 -0
  73. package/src/Api/ExportApi.d.ts +42 -1
  74. package/src/Api/GridApi.d.ts +2 -2
  75. package/src/Api/GridFilterApi.d.ts +10 -3
  76. package/src/Api/IPushPullApi.d.ts +1 -5
  77. package/src/Api/Implementation/AdaptableApiImpl.d.ts +0 -2
  78. package/src/Api/Implementation/AdaptableApiImpl.js +0 -4
  79. package/src/Api/Implementation/AlertApiImpl.d.ts +7 -6
  80. package/src/Api/Implementation/AlertApiImpl.js +26 -6
  81. package/src/Api/Implementation/ApiBase.d.ts +1 -2
  82. package/src/Api/Implementation/ApiBase.js +0 -3
  83. package/src/Api/Implementation/ChartingApiImpl.d.ts +1 -1
  84. package/src/Api/Implementation/ChartingApiImpl.js +24 -2
  85. package/src/Api/Implementation/ColumnFilterApiImpl.d.ts +1 -0
  86. package/src/Api/Implementation/ColumnFilterApiImpl.js +3 -0
  87. package/src/Api/Implementation/ColumnScopeApiImpl.js +20 -26
  88. package/src/Api/Implementation/DashboardApiImpl.d.ts +1 -0
  89. package/src/Api/Implementation/DashboardApiImpl.js +5 -2
  90. package/src/Api/Implementation/ExportApiImpl.d.ts +12 -1
  91. package/src/Api/Implementation/ExportApiImpl.js +37 -0
  92. package/src/Api/Implementation/GridFilterApiImpl.d.ts +1 -1
  93. package/src/Api/Implementation/GridFilterApiImpl.js +6 -0
  94. package/src/Api/Implementation/LayoutApiImpl.d.ts +2 -0
  95. package/src/Api/Implementation/LayoutApiImpl.js +31 -36
  96. package/src/Api/Implementation/LayoutHelpers.js +7 -13
  97. package/src/Api/Implementation/QuickSearchApiImpl.d.ts +5 -3
  98. package/src/Api/Implementation/QuickSearchApiImpl.js +10 -3
  99. package/src/Api/Implementation/SmartEditApiImpl.js +1 -1
  100. package/src/Api/Implementation/StateApiImpl.d.ts +5 -3
  101. package/src/Api/Implementation/StateApiImpl.js +21 -18
  102. package/src/Api/Implementation/StyledColumnApiImpl.d.ts +3 -0
  103. package/src/Api/Implementation/StyledColumnApiImpl.js +15 -0
  104. package/src/Api/Implementation/UserInterfaceApiImpl.js +11 -12
  105. package/src/Api/Internal/ActionColumnInternalApi.js +7 -1
  106. package/src/Api/Internal/AdaptableInternalApi.d.ts +1 -0
  107. package/src/Api/Internal/AdaptableInternalApi.js +3 -0
  108. package/src/Api/Internal/AlertInternalApi.d.ts +4 -4
  109. package/src/Api/Internal/AlertInternalApi.js +28 -10
  110. package/src/Api/Internal/ChartingInternalApi.js +8 -3
  111. package/src/Api/Internal/DashboardInternalApi.d.ts +27 -0
  112. package/src/Api/Internal/DashboardInternalApi.js +41 -0
  113. package/src/Api/Internal/EventInternalApi.d.ts +2 -3
  114. package/src/Api/Internal/EventInternalApi.js +4 -4
  115. package/src/Api/Internal/FormatColumnInternalApi.d.ts +6 -0
  116. package/src/Api/Internal/FormatColumnInternalApi.js +6 -0
  117. package/src/Api/Internal/GridInternalApi.js +3 -2
  118. package/src/Api/Internal/LayoutInternalApi.js +4 -1
  119. package/src/Api/Internal/RowFormInternalApi.js +23 -1
  120. package/src/Api/Internal/StateInternalApi.d.ts +10 -0
  121. package/src/Api/Internal/StateInternalApi.js +84 -0
  122. package/src/Api/Internal/StyledColumnInternalApi.d.ts +2 -0
  123. package/src/Api/Internal/StyledColumnInternalApi.js +104 -30
  124. package/src/Api/LayoutApi.d.ts +8 -1
  125. package/src/Api/OpenFinApi.d.ts +1 -5
  126. package/src/Api/PlusMinusApi.d.ts +3 -1
  127. package/src/Api/QuickSearchApi.d.ts +18 -7
  128. package/src/Api/StateApi.d.ts +4 -15
  129. package/src/Api/StyledColumnApi.d.ts +16 -0
  130. package/src/Redux/ActionsReducers/DashboardRedux.d.ts +0 -8
  131. package/src/Redux/ActionsReducers/DashboardRedux.js +0 -13
  132. package/src/Redux/ActionsReducers/ExportRedux.d.ts +40 -1
  133. package/src/Redux/ActionsReducers/ExportRedux.js +99 -2
  134. package/src/Redux/ActionsReducers/InternalRedux.d.ts +0 -5
  135. package/src/Redux/ActionsReducers/InternalRedux.js +9 -7
  136. package/src/Redux/ActionsReducers/QuickSearchRedux.d.ts +27 -2
  137. package/src/Redux/ActionsReducers/QuickSearchRedux.js +38 -4
  138. package/src/Redux/Store/AdaptableStore.js +58 -59
  139. package/src/Strategy/AlertModule.d.ts +4 -1
  140. package/src/Strategy/AlertModule.js +43 -6
  141. package/src/Strategy/CalculatedColumnModule.d.ts +1 -1
  142. package/src/Strategy/CellSummaryModule.d.ts +1 -1
  143. package/src/Strategy/ChartingModule.d.ts +2 -1
  144. package/src/Strategy/ChartingModule.js +24 -1
  145. package/src/Strategy/ColumnFilterModule.d.ts +1 -1
  146. package/src/Strategy/ColumnInfoModule.d.ts +1 -1
  147. package/src/Strategy/ExportModule.d.ts +5 -1
  148. package/src/Strategy/ExportModule.js +62 -7
  149. package/src/Strategy/FlashingCellModule.d.ts +1 -1
  150. package/src/Strategy/FormatColumnModule.d.ts +1 -1
  151. package/src/Strategy/FreeTextColumnModule.d.ts +1 -1
  152. package/src/Strategy/GridInfoModule.d.ts +1 -1
  153. package/src/Strategy/Interface/IAlertModule.d.ts +5 -0
  154. package/src/Strategy/Interface/IExportModule.d.ts +4 -0
  155. package/src/Strategy/Interface/IModule.d.ts +16 -1
  156. package/src/Strategy/LayoutModule.d.ts +1 -1
  157. package/src/Strategy/LayoutModule.js +11 -26
  158. package/src/Strategy/PlusMinusModule.d.ts +6 -1
  159. package/src/Strategy/PlusMinusModule.js +78 -26
  160. package/src/Strategy/QuickSearchModule.js +0 -12
  161. package/src/Strategy/SettingsPanelModule.d.ts +1 -1
  162. package/src/Strategy/ShortcutModule.js +1 -1
  163. package/src/Strategy/StyledColumnModule.d.ts +1 -1
  164. package/src/Strategy/StyledColumnModule.js +199 -24
  165. package/src/Strategy/SystemStatusModule.d.ts +1 -1
  166. package/src/Strategy/Utilities/Alert/getAlertPreviewViewItems.js +3 -3
  167. package/src/Strategy/Utilities/Export/formatScheduledReportSummary.d.ts +2 -0
  168. package/src/Strategy/Utilities/Export/formatScheduledReportSummary.js +6 -0
  169. package/src/Strategy/Utilities/Export/getExportRowsViewItems.js +3 -3
  170. package/src/Strategy/Utilities/Export/getReportSchedulesViewItems.d.ts +2 -0
  171. package/src/Strategy/Utilities/Export/getReportSchedulesViewItems.js +5 -0
  172. package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +1 -1
  173. package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
  174. package/src/Utilities/Constants/ModuleConstants.d.ts +0 -3
  175. package/src/Utilities/Constants/ModuleConstants.js +0 -3
  176. package/src/Utilities/Constants/ReduxConstants.d.ts +3 -1
  177. package/src/Utilities/Constants/ReduxConstants.js +6 -4
  178. package/src/Utilities/Defaults/DefaultSettingsPanel.js +0 -1
  179. package/src/Utilities/Extensions/NumberExtensions.js +1 -1
  180. package/src/Utilities/Helpers/ActionColumnWidthHelper.d.ts +6 -0
  181. package/src/Utilities/Helpers/ActionColumnWidthHelper.js +56 -0
  182. package/src/Utilities/Helpers/IconStylePresets.d.ts +6 -0
  183. package/src/Utilities/Helpers/IconStylePresets.js +132 -0
  184. package/src/Utilities/Helpers/QuickSearchStyleHelper.d.ts +12 -0
  185. package/src/Utilities/Helpers/QuickSearchStyleHelper.js +76 -0
  186. package/src/Utilities/Helpers/ScheduleHelper.d.ts +22 -0
  187. package/src/Utilities/Helpers/ScheduleHelper.js +234 -0
  188. package/src/Utilities/Helpers/ScheduleJobManager.d.ts +11 -0
  189. package/src/Utilities/Helpers/ScheduleJobManager.js +25 -0
  190. package/src/Utilities/Helpers/ScheduleJobRunner.d.ts +8 -0
  191. package/src/Utilities/Helpers/ScheduleJobRunner.js +27 -0
  192. package/src/Utilities/Helpers/ScheduledAlertHelper.d.ts +8 -0
  193. package/src/Utilities/Helpers/ScheduledAlertHelper.js +50 -0
  194. package/src/Utilities/Helpers/ScheduledJobsMiddlewareHelper.d.ts +3 -0
  195. package/src/Utilities/Helpers/ScheduledJobsMiddlewareHelper.js +9 -0
  196. package/src/Utilities/Helpers/ScheduledReportHelper.d.ts +16 -0
  197. package/src/Utilities/Helpers/ScheduledReportHelper.js +49 -0
  198. package/src/Utilities/Helpers/StyleHelper.d.ts +35 -0
  199. package/src/Utilities/Helpers/StyleHelper.js +83 -0
  200. package/src/Utilities/Helpers/StyledColumnGradientHelper.d.ts +30 -0
  201. package/src/Utilities/Helpers/StyledColumnGradientHelper.js +41 -0
  202. package/src/Utilities/Helpers/alertFormHelper.d.ts +2 -0
  203. package/src/Utilities/Helpers/alertFormHelper.js +11 -0
  204. package/src/Utilities/Helpers/chartingHelper.d.ts +14 -0
  205. package/src/Utilities/Helpers/chartingHelper.js +112 -0
  206. package/src/Utilities/Helpers/iconStyledColumnColumnSupport.d.ts +5 -0
  207. package/src/Utilities/Helpers/iconStyledColumnColumnSupport.js +15 -0
  208. package/src/Utilities/Helpers/plusMinusTriggerKeys.d.ts +41 -0
  209. package/src/Utilities/Helpers/plusMinusTriggerKeys.js +90 -0
  210. package/src/Utilities/Helpers/styledColumnRowKindSupport.d.ts +25 -0
  211. package/src/Utilities/Helpers/styledColumnRowKindSupport.js +63 -0
  212. package/src/Utilities/ObjectFactory.d.ts +7 -28
  213. package/src/Utilities/ObjectFactory.js +19 -103
  214. package/src/Utilities/Services/AlertService.js +3 -0
  215. package/src/Utilities/Services/ModuleService.js +0 -2
  216. package/src/Utilities/Services/QueryLanguageService.js +1 -1
  217. package/src/Utilities/Services/ValidationService.js +9 -3
  218. package/src/Utilities/createAgStatusPanelComponent.js +3 -2
  219. package/src/Utilities/getExpressionViewItems.js +2 -3
  220. package/src/Utilities/getObjectTagsViewItems.js +2 -1
  221. package/src/View/AdaptableComputedCSSVarsContext.js +4 -5
  222. package/src/View/AdaptablePopover/index.js +10 -19
  223. package/src/View/AdaptableView.js +8 -18
  224. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +15 -25
  225. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +32 -43
  226. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.js +2 -2
  227. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +7 -6
  228. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizardColumnsStep.js +2 -2
  229. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.js +11 -18
  230. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.js +22 -32
  231. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +6 -12
  232. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +7 -19
  233. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.js +2 -10
  234. package/src/View/AdaptableWizardView/Wizard.js +3 -6
  235. package/src/View/AdaptableWizardView/index.js +2 -2
  236. package/src/View/Alert/ActiveAlertsPanel.js +2 -2
  237. package/src/View/Alert/ActiveAlertsPanelItemLabel.js +3 -5
  238. package/src/View/Alert/AlertEmptyView.js +2 -2
  239. package/src/View/Alert/AlertStatusSubPanel.js +3 -2
  240. package/src/View/Alert/AlertViewPanel.js +4 -8
  241. package/src/View/Alert/Utilities/getAlertType.d.ts +2 -1
  242. package/src/View/Alert/Utilities/getAlertType.js +10 -2
  243. package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +17 -3
  244. package/src/View/Alert/Utilities/getDefaultAlertDefinition.js +8 -0
  245. package/src/View/Alert/Utilities/mapAlertDefinition.d.ts +1 -1
  246. package/src/View/Alert/Utilities/mapAlertDefinition.js +4 -0
  247. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +67 -97
  248. package/src/View/Alert/Wizard/AlertButtonsEditor.js +112 -159
  249. package/src/View/Alert/Wizard/AlertMessageWizardSection.d.ts +1 -1
  250. package/src/View/Alert/Wizard/AlertMessageWizardSection.js +24 -37
  251. package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +95 -62
  252. package/src/View/Alert/Wizard/AlertRulesWizardSection.js +24 -38
  253. package/src/View/Alert/Wizard/AlertScheduledWizardSection.d.ts +9 -0
  254. package/src/View/Alert/Wizard/AlertScheduledWizardSection.js +31 -0
  255. package/src/View/Alert/Wizard/AlertScopeWizardSection.js +9 -5
  256. package/src/View/Alert/Wizard/AlertTypeWizardSection.js +3 -24
  257. package/src/View/Alert/Wizard/AlertWizard.js +36 -31
  258. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.d.ts +1 -3
  259. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +13 -17
  260. package/src/View/Alert/Wizard/isValidAlertMessage.d.ts +3 -0
  261. package/src/View/Alert/Wizard/isValidAlertMessage.js +14 -0
  262. package/src/View/Alert/Wizard/isValidAlertRules.js +4 -0
  263. package/src/View/BulkUpdate/BulkUpdatePopup.js +11 -25
  264. package/src/View/BulkUpdate/BulkUpdateViewPanel.js +9 -14
  265. package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +9 -30
  266. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +14 -19
  267. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +8 -18
  268. package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.js +2 -9
  269. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +9 -17
  270. package/src/View/CellSummary/CellSummaryDetails.js +2 -3
  271. package/src/View/CellSummary/CellSummaryPopover.js +2 -2
  272. package/src/View/CellSummary/CellSummaryPopup.js +2 -2
  273. package/src/View/CellSummary/CellSummaryStatusBarSubPanelPopover.js +4 -5
  274. package/src/View/CellSummary/CellSummaryStatusPanel.js +2 -1
  275. package/src/View/CellSummary/CellSummaryViewPanel.js +8 -12
  276. package/src/View/Charting/ChartingStatusBarPopover.js +2 -8
  277. package/src/View/Charting/ChartingViewPanel.js +3 -17
  278. package/src/View/Charting/ChartingWizard/AgChargingWizard/AgChargingWizard.js +5 -7
  279. package/src/View/Charting/ChartingWizard/AgChargingWizard/PreviewChartSection.js +2 -1
  280. package/src/View/Charting/ChartingWizard/AgChargingWizard/SettingsSection.js +4 -18
  281. package/src/View/Charting/ChartingWizard/ChartingWizard.js +3 -3
  282. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/ExternalChartingWizard.js +5 -6
  283. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/SettingsSection.js +5 -14
  284. package/src/View/Charting/DeleteChartButton.js +2 -2
  285. package/src/View/Charting/EditChartButton.js +2 -2
  286. package/src/View/Charting/ShowChartButton.js +9 -10
  287. package/src/View/Charting/useChartingElements.js +8 -7
  288. package/src/View/ColumnInfo/ColumnInfo.js +11 -26
  289. package/src/View/ColumnInfo/ColumnInfoPopup.js +2 -4
  290. package/src/View/Comments/CommentsEditor.js +44 -61
  291. package/src/View/Comments/CommentsPopup.js +12 -30
  292. package/src/View/Components/AdaptableButton/AdaptableButtonComponent.d.ts +4 -0
  293. package/src/View/Components/AdaptableButton/AdaptableButtonComponent.js +13 -0
  294. package/src/View/Components/AdaptableButton/AdaptableButtonView.d.ts +58 -0
  295. package/src/View/Components/AdaptableButton/AdaptableButtonView.js +48 -0
  296. package/src/View/Components/AdaptableButton/index.d.ts +3 -3
  297. package/src/View/Components/AdaptableButton/index.js +2 -13
  298. package/src/View/Components/AdaptableDateInput/index.js +2 -1
  299. package/src/View/Components/AdaptableIconComponent/index.js +2 -2
  300. package/src/View/Components/AdaptableIconSelector/index.js +2 -2
  301. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.js +6 -2
  302. package/src/View/Components/AdaptableInput/index.js +3 -2
  303. package/src/View/Components/AdaptableObjectCollection/index.js +5 -8
  304. package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +9 -21
  305. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.d.ts +1 -0
  306. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +26 -44
  307. package/src/View/Components/AdaptableObjectRow/index.js +3 -2
  308. package/src/View/Components/Badge/index.d.ts +17 -3
  309. package/src/View/Components/Badge/index.js +67 -9
  310. package/src/View/Components/Buttons/ButtonApply.js +2 -1
  311. package/src/View/Components/Buttons/ButtonBase/index.js +10 -20
  312. package/src/View/Components/Buttons/ButtonClear.js +2 -1
  313. package/src/View/Components/Buttons/ButtonClone.js +2 -2
  314. package/src/View/Components/Buttons/ButtonClose.js +2 -1
  315. package/src/View/Components/Buttons/ButtonConfigure.js +2 -1
  316. package/src/View/Components/Buttons/ButtonDelete.js +2 -2
  317. package/src/View/Components/Buttons/ButtonEdit.js +2 -2
  318. package/src/View/Components/Buttons/ButtonExpand.js +3 -1
  319. package/src/View/Components/Buttons/ButtonExport.js +2 -1
  320. package/src/View/Components/Buttons/ButtonInfo.js +2 -2
  321. package/src/View/Components/Buttons/ButtonInvalid.js +2 -1
  322. package/src/View/Components/Buttons/ButtonLogin.js +2 -1
  323. package/src/View/Components/Buttons/ButtonLogout.js +2 -1
  324. package/src/View/Components/Buttons/ButtonMaximise.js +2 -1
  325. package/src/View/Components/Buttons/ButtonMinimise.js +2 -1
  326. package/src/View/Components/Buttons/ButtonNew.js +2 -2
  327. package/src/View/Components/Buttons/ButtonNewPage.js +2 -1
  328. package/src/View/Components/Buttons/ButtonOpen.js +2 -1
  329. package/src/View/Components/Buttons/ButtonPause.js +2 -2
  330. package/src/View/Components/Buttons/ButtonPlay.js +2 -2
  331. package/src/View/Components/Buttons/ButtonSave.js +2 -1
  332. package/src/View/Components/Buttons/ButtonSchedule.js +2 -2
  333. package/src/View/Components/Buttons/ButtonShare.js +5 -6
  334. package/src/View/Components/Buttons/ButtonStop.js +2 -1
  335. package/src/View/Components/Buttons/ButtonUnsuspend.js +2 -1
  336. package/src/View/Components/Buttons/EntityListActionButtons.js +2 -6
  337. package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +2 -1
  338. package/src/View/Components/CellPopup/index.js +2 -1
  339. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.d.ts +6 -1
  340. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.js +15 -3
  341. package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.js +2 -1
  342. package/src/View/Components/ColumnFilter/ColumnFilter.d.ts +2 -1
  343. package/src/View/Components/ColumnFilter/ColumnFilter.js +58 -66
  344. package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +16 -17
  345. package/src/View/Components/ColumnFilter/FloatingFilter.js +28 -31
  346. package/src/View/Components/ColumnFilter/LayoutColumnFilter.js +2 -2
  347. package/src/View/Components/ColumnFilter/columnFilterLocation.d.ts +2 -0
  348. package/src/View/Components/ColumnFilter/columnFilterLocation.js +1 -0
  349. package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +9 -10
  350. package/src/View/Components/ColumnFilter/components/ColumnFilterInputList.js +22 -24
  351. package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +9 -11
  352. package/src/View/Components/ColumnFilter/components/FloatingFilterInputList.js +32 -24
  353. package/src/View/Components/ColumnFilter/components/FloatingFilterValues.js +7 -47
  354. package/src/View/Components/ColumnGroupTag/index.js +2 -4
  355. package/src/View/Components/ColumnSelector/index.js +3 -5
  356. package/src/View/Components/EntityRowItem.js +2 -3
  357. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicateEditor.js +5 -12
  358. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +9 -25
  359. package/src/View/Components/EntityRulesEditor/index.js +17 -38
  360. package/src/View/Components/ExternalRenderer.js +2 -2
  361. package/src/View/Components/FilterForm/ListBoxFilterForm.d.ts +3 -2
  362. package/src/View/Components/FilterForm/ListBoxFilterForm.js +82 -27
  363. package/src/View/Components/Forms/AdaptableFormControlTextClear.js +23 -25
  364. package/src/View/Components/ModuleProfile.js +4 -7
  365. package/src/View/Components/ModuleSummary/ModuleDetail.js +6 -5
  366. package/src/View/Components/ModuleSummary/ModuleHeader.js +4 -4
  367. package/src/View/Components/ModuleSummary/SummaryRowItem.js +2 -2
  368. package/src/View/Components/ModuleValueSelector/index.js +2 -2
  369. package/src/View/Components/NewScopeComponent.js +15 -46
  370. package/src/View/Components/Panels/PanelDashboard/index.js +2 -1
  371. package/src/View/Components/Panels/PanelToolPanel/index.js +3 -6
  372. package/src/View/Components/Panels/PanelWithButton.js +3 -11
  373. package/src/View/Components/Panels/PanelWithImage.js +5 -13
  374. package/src/View/Components/Panels/PanelWithRow.js +5 -5
  375. package/src/View/Components/Popups/AdaptableLoadingScreen.js +2 -4
  376. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +7 -12
  377. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupBody.js +2 -2
  378. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +7 -7
  379. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +20 -19
  380. package/src/View/Components/Popups/AdaptablePopup/CustomSettingsPanelView.js +2 -2
  381. package/src/View/Components/Popups/AdaptablePopup/Navigation.js +15 -19
  382. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +3 -12
  383. package/src/View/Components/Popups/AdaptablePopup/TopBar.js +6 -8
  384. package/src/View/Components/Popups/AdaptablePopupAlert.js +20 -26
  385. package/src/View/Components/Popups/AdaptablePopupConfirmation.js +7 -19
  386. package/src/View/Components/Popups/AdaptablePopupPrompt.js +4 -15
  387. package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +2 -27
  388. package/src/View/Components/Popups/AdaptableToaster.js +2 -2
  389. package/src/View/Components/Popups/FormPopups/FormPopups.js +6 -7
  390. package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +15 -17
  391. package/src/View/Components/Popups/WindowPopups/WindowPopups.js +42 -42
  392. package/src/View/Components/Popups/WindowPopups/windowFactory.js +0 -2
  393. package/src/View/Components/PredicateEditor/PredicateEditor.js +15 -24
  394. package/src/View/Components/PreviewResultsPanel.js +4 -9
  395. package/src/View/Components/RangesComponent.d.ts +31 -5
  396. package/src/View/Components/RangesComponent.js +137 -83
  397. package/src/View/Components/ReorderDraggable/index.js +10 -18
  398. package/src/View/Components/Selectors/BulkUpdateValueSelector.js +13 -17
  399. package/src/View/Components/Selectors/ColumnSelector.d.ts +1 -2
  400. package/src/View/Components/Selectors/ColumnSelector.js +21 -7
  401. package/src/View/Components/Selectors/FieldSelector.d.ts +0 -2
  402. package/src/View/Components/Selectors/FieldSelector.js +5 -5
  403. package/src/View/Components/Selectors/PermittedValuesSelector.d.ts +0 -2
  404. package/src/View/Components/Selectors/PermittedValuesSelector.js +31 -2
  405. package/src/View/Components/SharedProps/EditableConfigEntityState.js +0 -1
  406. package/src/View/Components/SharedProps/ModuleViewPopupProps.d.ts +1 -1
  407. package/src/View/Components/StyleComponent.d.ts +0 -2
  408. package/src/View/Components/StyleComponent.js +27 -131
  409. package/src/View/Components/StyleVisualItem.js +4 -4
  410. package/src/View/Components/TagValueSelector/index.js +3 -3
  411. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +18 -40
  412. package/src/View/Components/ToolPanel/CustomToolPanelContent.js +11 -27
  413. package/src/View/Components/ToolPanel/ToolPanelPopup.js +2 -12
  414. package/src/View/Components/ToolPanel/ToolPanelWrapper.js +16 -17
  415. package/src/View/Components/ValueSelector/index.js +87 -100
  416. package/src/View/Components/WizardSummaryPage.js +2 -4
  417. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +9 -29
  418. package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +8 -11
  419. package/src/View/CustomSort/Wizard/CustomSortWizard.js +6 -10
  420. package/src/View/Dashboard/CustomDashboardButton.d.ts +1 -2
  421. package/src/View/Dashboard/CustomDashboardButton.js +4 -22
  422. package/src/View/Dashboard/CustomToolbar.js +85 -33
  423. package/src/View/Dashboard/Dashboard.d.ts +0 -1
  424. package/src/View/Dashboard/Dashboard.js +11 -23
  425. package/src/View/Dashboard/DashboardPopup.js +2 -23
  426. package/src/View/Dashboard/DashboardToolbarFactory.js +6 -5
  427. package/src/View/Dashboard/DashboardViewPanel.js +2 -7
  428. package/src/View/Dashboard/ModuleToolbarWrapper.js +3 -3
  429. package/src/View/Dashboard/PinnedDashboard.js +5 -7
  430. package/src/View/Dashboard/PinnedToolbarsSelector.js +2 -1
  431. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +2 -2
  432. package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +7 -32
  433. package/src/View/DataChangeHistory/DataChangeHistoryStatusBarContent.js +2 -2
  434. package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +4 -18
  435. package/src/View/DataImport/DataImportPopup.js +8 -12
  436. package/src/View/DataImport/DataImportWizard/DataImportWizard.js +6 -10
  437. package/src/View/DataImport/DataImportWizard/sections/ColumnsSection.js +18 -26
  438. package/src/View/DataImport/DataImportWizard/sections/DataPreview.js +8 -11
  439. package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadFileSection.js +2 -2
  440. package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadSection.js +2 -11
  441. package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadTextSection.js +2 -4
  442. package/src/View/DataImport/DataImportWizard/sections/ValidationSection.js +4 -14
  443. package/src/View/DataSet/DataSetSelector.js +2 -1
  444. package/src/View/DataSet/DataSetStatusPanelPopover.js +2 -1
  445. package/src/View/DataSet/DataSetViewPanel.js +3 -3
  446. package/src/View/Export/ExportDestinationPicker.js +4 -5
  447. package/src/View/Export/ExportSchedulesTab.d.ts +2 -0
  448. package/src/View/Export/ExportSchedulesTab.js +54 -0
  449. package/src/View/Export/ExportStatusBar.js +2 -6
  450. package/src/View/Export/ExportViewPanel.js +27 -29
  451. package/src/View/Export/ReportFormatSelector.d.ts +0 -1
  452. package/src/View/Export/ReportFormatSelector.js +4 -5
  453. package/src/View/Export/ReportListItem.js +2 -4
  454. package/src/View/Export/ReportNameSelector.js +3 -4
  455. package/src/View/Export/Wizard/ExportPopupWizardRouter.d.ts +4 -0
  456. package/src/View/Export/Wizard/ExportPopupWizardRouter.js +19 -0
  457. package/src/View/Export/Wizard/NewReportWizard.js +7 -10
  458. package/src/View/Export/Wizard/ReportColumnsWizardSection.js +27 -51
  459. package/src/View/Export/Wizard/ReportNameWizardSection.js +8 -18
  460. package/src/View/Export/Wizard/ReportRowsWizardSection.js +11 -38
  461. package/src/View/Export/Wizard/ScheduledReportSettings.d.ts +13 -0
  462. package/src/View/Export/Wizard/ScheduledReportSettings.js +36 -0
  463. package/src/View/Export/Wizard/ScheduledReportSettingsSummary.d.ts +7 -0
  464. package/src/View/Export/Wizard/ScheduledReportSettingsSummary.js +27 -0
  465. package/src/View/Export/Wizard/ScheduledReportWizard.d.ts +10 -0
  466. package/src/View/Export/Wizard/ScheduledReportWizard.js +80 -0
  467. package/src/View/Export/Wizard/isReportScheduledSettingsValid.d.ts +3 -0
  468. package/src/View/Export/Wizard/isReportScheduledSettingsValid.js +18 -0
  469. package/src/View/Filter/ActiveFiltersPanel.js +2 -2
  470. package/src/View/Filter/FilterStatusBarSubPanelPopover.js +2 -2
  471. package/src/View/Filter/FilterViewPanel.js +5 -9
  472. package/src/View/FlashingCell/FlashingCellStyle.js +2 -11
  473. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +8 -28
  474. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +3 -3
  475. package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +9 -41
  476. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +5 -30
  477. package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +9 -13
  478. package/src/View/FormatColumn/MoveFormatColumn.js +3 -4
  479. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +61 -203
  480. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +6 -15
  481. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +92 -0
  482. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +39 -49
  483. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +3 -3
  484. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +12 -26
  485. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +21 -54
  486. package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +5 -8
  487. package/src/View/GridFilter/GridFilterExpressionEditor.js +14 -21
  488. package/src/View/GridFilter/GridFilterPopup.js +2 -2
  489. package/src/View/GridFilter/GridFilterPopupUI/index.js +2 -18
  490. package/src/View/GridFilter/GridFilterStatusbar.js +2 -2
  491. package/src/View/GridFilter/GridFilterViewPanel.js +16 -26
  492. package/src/View/GridFilter/GridFilterWindowPopup.js +2 -2
  493. package/src/View/GridFilter/NamedQuerySelector.js +13 -21
  494. package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +11 -13
  495. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +7 -23
  496. package/src/View/KeyHint.js +3 -3
  497. package/src/View/Layout/EditCurrentLayoutButton.js +2 -1
  498. package/src/View/Layout/LayoutCloneButton.js +2 -1
  499. package/src/View/Layout/LayoutRadioSelector.js +2 -1
  500. package/src/View/Layout/LayoutStatusBarSubPanelPopover.js +5 -6
  501. package/src/View/Layout/LayoutViewPanel.js +41 -32
  502. package/src/View/Layout/PivotDetailsPopoup.js +2 -2
  503. package/src/View/Layout/TransposedPopup.js +2 -8
  504. package/src/View/Layout/Wizard/LayoutWizard.js +47 -60
  505. package/src/View/Layout/Wizard/getGridFilterPreview.js +2 -3
  506. package/src/View/Layout/Wizard/sections/AggregationsSection.d.ts +3 -2
  507. package/src/View/Layout/Wizard/sections/AggregationsSection.js +29 -150
  508. package/src/View/Layout/Wizard/sections/ColumnsSection.js +131 -187
  509. package/src/View/Layout/Wizard/sections/FilterSection.js +32 -37
  510. package/src/View/Layout/Wizard/sections/GridFilterSection.js +4 -3
  511. package/src/View/Layout/Wizard/sections/ParameterizedAggFuncPicker.d.ts +12 -0
  512. package/src/View/Layout/Wizard/sections/ParameterizedAggFuncPicker.js +43 -0
  513. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.d.ts +2 -1
  514. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +77 -197
  515. package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +8 -12
  516. package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +5 -13
  517. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +21 -44
  518. package/src/View/Layout/Wizard/sections/RowSelectionSection.js +5 -72
  519. package/src/View/Layout/Wizard/sections/RowSummarySection.js +106 -140
  520. package/src/View/Layout/Wizard/sections/SettingsSection.js +3 -26
  521. package/src/View/Layout/Wizard/sections/SortSection.js +4 -9
  522. package/src/View/License/LicenseWatermark.js +1 -1
  523. package/src/View/NamedQuery/EditCurrentQueryButton.js +2 -1
  524. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +3 -5
  525. package/src/View/NamedQuery/Wizard/NamedQuerySettingsWizardSection.js +3 -11
  526. package/src/View/NamedQuery/Wizard/NamedQueryWizard.js +6 -8
  527. package/src/View/Note/NoteEditor.js +9 -10
  528. package/src/View/Note/NotePopup.js +4 -5
  529. package/src/View/PlusMinus/MovePlusMinus.js +3 -4
  530. package/src/View/PlusMinus/Wizard/PlusMinusRuleWizardSection.js +6 -15
  531. package/src/View/PlusMinus/Wizard/PlusMinusScopeWizardSection.js +2 -1
  532. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +78 -31
  533. package/src/View/PlusMinus/Wizard/PlusMinusWizard.js +7 -9
  534. package/src/View/QuickSearch/FloatingQuickSearch/FloatingQuickSearch.js +3 -5
  535. package/src/View/QuickSearch/QuickSearchInput.js +2 -3
  536. package/src/View/QuickSearch/QuickSearchPopup.d.ts +6 -2
  537. package/src/View/QuickSearch/QuickSearchPopup.js +18 -28
  538. package/src/View/QuickSearch/QuickSearchStatusBarContent.js +2 -2
  539. package/src/View/QuickSearch/QuickSearchViewPanel.js +2 -2
  540. package/src/View/Schedule/Wizard/ScheduleScheduleSummary.js +2 -4
  541. package/src/View/Schedule/Wizard/ScheduleScheduleWizard.d.ts +8 -7
  542. package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +136 -103
  543. package/src/View/Shortcut/Wizard/ShortcutScopeWizardSection.js +2 -1
  544. package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +4 -38
  545. package/src/View/Shortcut/Wizard/ShortcutWizard.js +8 -18
  546. package/src/View/SmartEdit/SmartEditPopup.js +11 -17
  547. package/src/View/SmartEdit/SmartEditViewPanel.js +12 -17
  548. package/src/View/SpecialColumnSettingsWizardStep.js +6 -29
  549. package/src/View/StateManagement/StateManagementPopup.js +2 -18
  550. package/src/View/StateManagement/StateManagementViewPanel.js +3 -8
  551. package/src/View/StateManagement/components/ClearButton.js +2 -2
  552. package/src/View/StateManagement/components/ExportDropdown.js +2 -2
  553. package/src/View/StateManagement/components/LoadButton.js +13 -16
  554. package/src/View/StatusBar/AdaptableStatusBar.js +22 -20
  555. package/src/View/StatusBar/StatusBarPanel.js +3 -5
  556. package/src/View/StatusBar/StatusBarPopup.js +7 -6
  557. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.d.ts +26 -0
  558. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.js +64 -0
  559. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.d.ts +5 -0
  560. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +150 -93
  561. package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.d.ts +49 -0
  562. package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.js +138 -0
  563. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.d.ts +12 -0
  564. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +107 -172
  565. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +194 -60
  566. package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.d.ts +14 -0
  567. package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +301 -0
  568. package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.d.ts +10 -0
  569. package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.js +90 -0
  570. package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.d.ts +20 -0
  571. package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +282 -0
  572. package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.d.ts +26 -0
  573. package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +310 -0
  574. package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.d.ts +8 -0
  575. package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.js +211 -0
  576. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.d.ts +12 -0
  577. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.js +238 -0
  578. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.d.ts +22 -0
  579. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.js +71 -0
  580. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarColumnComparisonPreview.js +6 -14
  581. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarRangesPreview.js +2 -9
  582. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.js +2 -5
  583. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.d.ts +5 -0
  584. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +26 -13
  585. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgeSettings.js +20 -19
  586. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.d.ts +16 -0
  587. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.js +61 -0
  588. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardRangesSection.d.ts +12 -0
  589. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardRangesSection.js +153 -0
  590. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.d.ts +10 -1
  591. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +140 -283
  592. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.d.ts +13 -0
  593. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +101 -27
  594. package/src/View/SystemStatus/SystemStatusEntityRow.js +4 -8
  595. package/src/View/SystemStatus/SystemStatusPopup.js +4 -4
  596. package/src/View/SystemStatus/SystemStatusStatusBarContent.js +2 -2
  597. package/src/View/SystemStatus/SystemStatusViewPanel.js +2 -2
  598. package/src/View/TeamSharing/SharedEntityDependencies.js +7 -11
  599. package/src/View/TeamSharing/SharedEntityObjectView.js +9 -21
  600. package/src/View/TeamSharing/TeamSharingApplyButton.js +2 -1
  601. package/src/View/Theme/ThemePopup.js +2 -27
  602. package/src/View/Theme/ThemeSelector.d.ts +1 -2
  603. package/src/View/Theme/ThemeSelector.js +3 -3
  604. package/src/View/Theme/ThemeStatusbar.d.ts +1 -1
  605. package/src/View/Theme/ThemeStatusbar.js +3 -4
  606. package/src/View/Theme/ThemeViewPanel.js +3 -4
  607. package/src/View/Theme/VariantSelector.js +2 -4
  608. package/src/View/UIHelper.d.ts +15 -25
  609. package/src/View/UIHelper.js +40 -116
  610. package/src/View/Wizard/ObjectTagsWizardSection.js +3 -6
  611. package/src/View/Wizard/OnePageAdaptableWizard.d.ts +13 -0
  612. package/src/View/Wizard/OnePageAdaptableWizard.js +21 -28
  613. package/src/View/Wizard/OnePageWizards.js +54 -70
  614. package/src/View/Wizard/TypeRadio.d.ts +2 -0
  615. package/src/View/Wizard/TypeRadio.js +6 -5
  616. package/src/View/renderWithAdaptableContext.js +3 -4
  617. package/src/agGrid/AdaptableAgGrid.d.ts +5 -2
  618. package/src/agGrid/AdaptableAgGrid.js +80 -40
  619. package/src/agGrid/AdaptableFrameworkComponent.d.ts +25 -3
  620. package/src/agGrid/AdaptableLogger.d.ts +1 -0
  621. package/src/agGrid/AdaptableLogger.js +8 -0
  622. package/src/agGrid/AgGridAdapter.d.ts +1 -0
  623. package/src/agGrid/AgGridAdapter.js +16 -4
  624. package/src/agGrid/AgGridColumnAdapter.d.ts +26 -0
  625. package/src/agGrid/AgGridColumnAdapter.js +333 -100
  626. package/src/agGrid/AgGridFilterAdapter.js +3 -1
  627. package/src/agGrid/AgGridMenuAdapter.d.ts +2 -0
  628. package/src/agGrid/AgGridMenuAdapter.js +120 -6
  629. package/src/agGrid/cellRenderers/ActionColumnRenderer.d.ts +1 -0
  630. package/src/agGrid/cellRenderers/ActionColumnRenderer.js +87 -88
  631. package/src/agGrid/cellRenderers/BadgeRenderer.d.ts +2 -2
  632. package/src/agGrid/cellRenderers/BadgeRenderer.js +44 -28
  633. package/src/agGrid/cellRenderers/BulletChartRenderer.d.ts +4 -0
  634. package/src/agGrid/cellRenderers/BulletChartRenderer.js +391 -0
  635. package/src/agGrid/cellRenderers/IconRenderer.d.ts +23 -0
  636. package/src/agGrid/cellRenderers/IconRenderer.js +274 -0
  637. package/src/agGrid/cellRenderers/PercentBarRenderer.js +234 -65
  638. package/src/agGrid/cellRenderers/RangeBarRenderer.d.ts +4 -0
  639. package/src/agGrid/cellRenderers/RangeBarRenderer.js +352 -0
  640. package/src/agGrid/cellRenderers/RatingRenderer.d.ts +4 -0
  641. package/src/agGrid/cellRenderers/RatingRenderer.js +157 -0
  642. package/src/agGrid/cellRenderers/shouldRenderStyledColumnOnRow.d.ts +30 -0
  643. package/src/agGrid/cellRenderers/shouldRenderStyledColumnOnRow.js +54 -0
  644. package/src/agGrid/editors/AdaptableDateEditor/InternalAdaptableDateEditor.js +3 -4
  645. package/src/agGrid/editors/AdaptableDateEditor/index.js +4 -4
  646. package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +17 -19
  647. package/src/agGrid/editors/AdaptableNumberEditor/index.js +4 -4
  648. package/src/agGrid/editors/AdaptablePercentageEditor/InternalAdaptablePercentageEditor.js +21 -24
  649. package/src/agGrid/editors/AdaptablePercentageEditor/index.js +4 -4
  650. package/src/components/Accordion.js +7 -8
  651. package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +364 -86
  652. package/src/components/Card/index.js +8 -8
  653. package/src/components/CheckBox/index.d.ts +3 -1
  654. package/src/components/CheckBox/index.js +12 -15
  655. package/src/components/CodeBlock/index.js +2 -2
  656. package/src/components/ColorPicker/ColorPicker.js +14 -19
  657. package/src/components/Combobox/VirtualizedList.d.ts +12 -0
  658. package/src/components/Combobox/VirtualizedList.js +62 -0
  659. package/src/components/Combobox/comboboxUtils.d.ts +82 -0
  660. package/src/components/Combobox/comboboxUtils.js +25 -0
  661. package/src/components/Combobox/index.d.ts +38 -0
  662. package/src/components/Combobox/index.js +527 -0
  663. package/src/components/Dashboard/Dashboard.d.ts +0 -3
  664. package/src/components/Dashboard/Dashboard.js +15 -42
  665. package/src/components/Dashboard/DashboardManager.js +2 -1
  666. package/src/components/Dashboard/DashboardToolbar.js +2 -7
  667. package/src/components/Datepicker/index.js +243 -106
  668. package/src/components/Dialog/index.js +7 -9
  669. package/src/components/DragAndDropContext/ModuleManager.js +2 -8
  670. package/src/components/DragAndDropContext/TabList.js +27 -41
  671. package/src/components/DragAndDropContext/UnusedPanel.js +8 -13
  672. package/src/components/Drawer/index.js +2 -1
  673. package/src/components/Dropdown/Arrows.js +3 -5
  674. package/src/components/Dropdown/index.js +15 -20
  675. package/src/components/DropdownButton/index.js +21 -29
  676. package/src/components/DropdownButton/renderItem.js +5 -6
  677. package/src/components/EmptyContent/index.js +3 -4
  678. package/src/components/ErrorBox/index.js +2 -2
  679. package/src/components/ExpressionEditor/BaseEditorInput.js +49 -90
  680. package/src/components/ExpressionEditor/DataTableEditor.js +19 -23
  681. package/src/components/ExpressionEditor/EditorButton.js +2 -2
  682. package/src/components/ExpressionEditor/EditorInput.js +2 -2
  683. package/src/components/ExpressionEditor/EditorInputWithWhereClause.js +8 -15
  684. package/src/components/ExpressionEditor/ExpressionFunctionDocumentation.js +2 -14
  685. package/src/components/ExpressionEditor/ExpressionPreview.js +6 -5
  686. package/src/components/ExpressionEditor/NamedQueryEditor.js +4 -10
  687. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilder.js +9 -22
  688. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +35 -53
  689. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +112 -133
  690. package/src/components/ExpressionEditor/index.js +49 -95
  691. package/src/components/FieldWrap/index.js +3 -2
  692. package/src/components/FileDroppable/index.js +17 -28
  693. package/src/components/Flex.js +3 -2
  694. package/src/components/FlexWithFooter.js +2 -5
  695. package/src/components/FormLayout/index.js +7 -7
  696. package/src/components/HelpBlock/index.js +2 -2
  697. package/src/components/Icon/index.js +4 -4
  698. package/src/components/IconSelector/IconSelector.js +12 -23
  699. package/src/components/InfiniteTable/index.js +2 -2
  700. package/src/components/Input/NumberInput.js +2 -1
  701. package/src/components/Input/index.d.ts +1 -0
  702. package/src/components/Input/index.js +6 -4
  703. package/src/components/InputGroup/InputGroup.js +2 -2
  704. package/src/components/Loader/Loader.js +3 -5
  705. package/src/components/Logo/index.js +2 -9
  706. package/src/components/Modal/Backdrop.js +2 -1
  707. package/src/components/Modal/index.js +2 -5
  708. package/src/components/NewDropdownButton/index.d.ts +26 -0
  709. package/src/components/NewDropdownButton/index.js +24 -0
  710. package/src/components/NewSelect/index.d.ts +64 -0
  711. package/src/components/NewSelect/index.js +70 -0
  712. package/src/components/NewTooltip/index.d.ts +8 -0
  713. package/src/components/NewTooltip/index.js +8 -0
  714. package/src/components/NotifyResize/index.js +2 -1
  715. package/src/components/OverlayTrigger/Overlay.js +2 -1
  716. package/src/components/OverlayTrigger/index.js +11 -13
  717. package/src/components/Panel/index.js +10 -11
  718. package/src/components/PopupWithFooter.js +3 -3
  719. package/src/components/ProgressIndicator/ProgressIndicator.js +14 -19
  720. package/src/components/Radio/index.js +5 -10
  721. package/src/components/ResizeObserver/index.js +2 -2
  722. package/src/components/Select/CSSNumericVariableWatch.js +3 -3
  723. package/src/components/SelectList.js +2 -2
  724. package/src/components/SelectableList/index.js +3 -2
  725. package/src/components/SimpleButton/index.d.ts +1 -1
  726. package/src/components/SimpleButton/index.js +14 -18
  727. package/src/components/SizedContainer/index.js +6 -8
  728. package/src/components/StylePreview.js +2 -2
  729. package/src/components/Table/index.js +2 -2
  730. package/src/components/Tabs/index.js +5 -10
  731. package/src/components/Tag/Tag.js +4 -3
  732. package/src/components/Textarea/index.js +2 -1
  733. package/src/components/Toggle/Toggle.js +3 -4
  734. package/src/components/Toggle/ToggleGroup.js +3 -3
  735. package/src/components/ToggleButton/index.js +14 -17
  736. package/src/components/Tooltip/index.js +2 -2
  737. package/src/components/Tree/TreeDropdown/index.d.ts +44 -26
  738. package/src/components/Tree/TreeDropdown/index.js +503 -265
  739. package/src/components/Tree/treeUtils.d.ts +10 -0
  740. package/src/components/Tree/treeUtils.js +25 -0
  741. package/src/components/WarningBox/index.js +2 -2
  742. package/src/components/WindowModal/WindowModal.js +4 -4
  743. package/src/components/WizardPanel/index.js +2 -2
  744. package/src/components/icons/DefaultIcon.js +2 -2
  745. package/src/components/icons/add-row.js +2 -3
  746. package/src/components/icons/alert.js +2 -3
  747. package/src/components/icons/align-center.js +2 -3
  748. package/src/components/icons/align-justify.js +2 -3
  749. package/src/components/icons/align-left.js +2 -3
  750. package/src/components/icons/align-right.js +2 -3
  751. package/src/components/icons/analysis.js +2 -4
  752. package/src/components/icons/application.js +2 -3
  753. package/src/components/icons/arrow-down-long.js +2 -3
  754. package/src/components/icons/arrow-down.js +2 -3
  755. package/src/components/icons/arrow-expand.js +2 -3
  756. package/src/components/icons/arrow-left.js +2 -4
  757. package/src/components/icons/arrow-right.js +2 -3
  758. package/src/components/icons/arrow-up-long.js +2 -3
  759. package/src/components/icons/arrow-up.js +2 -3
  760. package/src/components/icons/attach-file.js +2 -4
  761. package/src/components/icons/badge.js +2 -3
  762. package/src/components/icons/blanks.js +2 -3
  763. package/src/components/icons/bold.js +2 -3
  764. package/src/components/icons/boolean-list.js +2 -3
  765. package/src/components/icons/brush.js +2 -3
  766. package/src/components/icons/build.js +2 -4
  767. package/src/components/icons/bulk-update.js +2 -3
  768. package/src/components/icons/bullet-chart.d.ts +3 -0
  769. package/src/components/icons/bullet-chart.js +7 -0
  770. package/src/components/icons/calculated-column.js +2 -4
  771. package/src/components/icons/calendar.js +2 -3
  772. package/src/components/icons/call.js +2 -3
  773. package/src/components/icons/campaign.js +2 -3
  774. package/src/components/icons/case-lower.js +2 -3
  775. package/src/components/icons/case-sentence.js +2 -4
  776. package/src/components/icons/case-upper.js +2 -3
  777. package/src/components/icons/cell-summary.js +2 -3
  778. package/src/components/icons/cell-validation.js +2 -3
  779. package/src/components/icons/chart.js +2 -3
  780. package/src/components/icons/chat.js +2 -4
  781. package/src/components/icons/check-box-outline.js +2 -3
  782. package/src/components/icons/check-box.js +2 -3
  783. package/src/components/icons/check-circle.js +2 -3
  784. package/src/components/icons/check.js +2 -3
  785. package/src/components/icons/clone.js +2 -3
  786. package/src/components/icons/close.js +2 -3
  787. package/src/components/icons/cloud-upload.js +2 -3
  788. package/src/components/icons/collapse-all.js +2 -3
  789. package/src/components/icons/collapse.js +2 -3
  790. package/src/components/icons/column-add.js +2 -6
  791. package/src/components/icons/column-chooser.js +2 -3
  792. package/src/components/icons/column-filter.js +2 -3
  793. package/src/components/icons/column-info.js +2 -3
  794. package/src/components/icons/column-outline.js +2 -3
  795. package/src/components/icons/comment.js +2 -3
  796. package/src/components/icons/comments.js +2 -3
  797. package/src/components/icons/contact.js +2 -4
  798. package/src/components/icons/contains.js +2 -3
  799. package/src/components/icons/copy.js +2 -3
  800. package/src/components/icons/csv.js +2 -3
  801. package/src/components/icons/custom-sort.js +2 -3
  802. package/src/components/icons/dashboard.js +2 -3
  803. package/src/components/icons/data-object.js +2 -3
  804. package/src/components/icons/data-set.js +2 -3
  805. package/src/components/icons/date-range.js +2 -4
  806. package/src/components/icons/delete.js +2 -3
  807. package/src/components/icons/division.js +2 -3
  808. package/src/components/icons/dock.js +2 -3
  809. package/src/components/icons/dollar.js +2 -3
  810. package/src/components/icons/drag.js +2 -3
  811. package/src/components/icons/edit.js +2 -3
  812. package/src/components/icons/ends-with.js +2 -3
  813. package/src/components/icons/equal.js +2 -3
  814. package/src/components/icons/equation.js +2 -3
  815. package/src/components/icons/error.js +2 -3
  816. package/src/components/icons/excel.js +2 -4
  817. package/src/components/icons/expand-all.js +2 -3
  818. package/src/components/icons/expand.js +2 -3
  819. package/src/components/icons/exponent.js +2 -3
  820. package/src/components/icons/export.js +2 -3
  821. package/src/components/icons/fast-backward.js +2 -3
  822. package/src/components/icons/fast-forward.js +2 -3
  823. package/src/components/icons/fdc3.js +2 -5
  824. package/src/components/icons/filter-off.js +2 -3
  825. package/src/components/icons/filter.js +2 -3
  826. package/src/components/icons/flashing-cell.js +2 -3
  827. package/src/components/icons/folder-open.js +2 -3
  828. package/src/components/icons/folder-shared.js +2 -3
  829. package/src/components/icons/folder.js +2 -3
  830. package/src/components/icons/format-column.js +2 -3
  831. package/src/components/icons/freetext-column.js +2 -7
  832. package/src/components/icons/function.js +2 -3
  833. package/src/components/icons/gradient-column.js +2 -3
  834. package/src/components/icons/gradient.js +2 -3
  835. package/src/components/icons/greater-than-or-equal.js +2 -3
  836. package/src/components/icons/greater-than.js +2 -3
  837. package/src/components/icons/grid-filter.js +2 -3
  838. package/src/components/icons/grid-info.js +2 -3
  839. package/src/components/icons/hide-column.js +2 -4
  840. package/src/components/icons/history.js +2 -3
  841. package/src/components/icons/home.js +2 -3
  842. package/src/components/icons/icon-style.d.ts +3 -0
  843. package/src/components/icons/icon-style.js +7 -0
  844. package/src/components/icons/import-export.js +2 -3
  845. package/src/components/icons/import.js +2 -3
  846. package/src/components/icons/index.d.ts +1 -1
  847. package/src/components/icons/index.js +202 -7
  848. package/src/components/icons/info.js +2 -3
  849. package/src/components/icons/inspector.js +2 -4
  850. package/src/components/icons/instrument.js +2 -4
  851. package/src/components/icons/interactions.js +2 -4
  852. package/src/components/icons/invalid.js +2 -4
  853. package/src/components/icons/ipushpull.js +2 -4
  854. package/src/components/icons/italic.js +2 -3
  855. package/src/components/icons/justify.js +2 -3
  856. package/src/components/icons/layout.js +2 -3
  857. package/src/components/icons/less-than-or-equal.js +2 -3
  858. package/src/components/icons/less-than.js +2 -3
  859. package/src/components/icons/list.js +2 -3
  860. package/src/components/icons/login.js +2 -3
  861. package/src/components/icons/logout copy.js +2 -4
  862. package/src/components/icons/logout.js +2 -4
  863. package/src/components/icons/mail.js +2 -3
  864. package/src/components/icons/menu.js +2 -3
  865. package/src/components/icons/minus.js +2 -3
  866. package/src/components/icons/money.js +2 -4
  867. package/src/components/icons/multiplication.js +2 -3
  868. package/src/components/icons/newpage.js +2 -4
  869. package/src/components/icons/news.js +2 -4
  870. package/src/components/icons/non-blanks.js +2 -3
  871. package/src/components/icons/not-contains.js +2 -3
  872. package/src/components/icons/not-equal.js +2 -3
  873. package/src/components/icons/note.js +2 -3
  874. package/src/components/icons/open-in-new.js +2 -3
  875. package/src/components/icons/order.js +2 -3
  876. package/src/components/icons/organisation.js +2 -4
  877. package/src/components/icons/overline.js +2 -3
  878. package/src/components/icons/pause.js +2 -3
  879. package/src/components/icons/percent-bar.js +2 -8
  880. package/src/components/icons/percent.js +2 -3
  881. package/src/components/icons/person.js +2 -3
  882. package/src/components/icons/pie-chart.js +2 -3
  883. package/src/components/icons/play.js +2 -4
  884. package/src/components/icons/plus-minus.js +2 -3
  885. package/src/components/icons/plus.js +2 -3
  886. package/src/components/icons/query.js +2 -3
  887. package/src/components/icons/quick-search.js +2 -3
  888. package/src/components/icons/quote.js +2 -4
  889. package/src/components/icons/range-bar.d.ts +3 -0
  890. package/src/components/icons/range-bar.js +8 -0
  891. package/src/components/icons/refresh.js +2 -3
  892. package/src/components/icons/regex.js +2 -3
  893. package/src/components/icons/reminder.js +2 -3
  894. package/src/components/icons/resume.js +2 -3
  895. package/src/components/icons/rows.js +2 -3
  896. package/src/components/icons/save.js +2 -3
  897. package/src/components/icons/schedule.js +2 -6
  898. package/src/components/icons/science.js +2 -3
  899. package/src/components/icons/select-all.js +2 -3
  900. package/src/components/icons/select-fwd.js +2 -3
  901. package/src/components/icons/select-off.js +2 -3
  902. package/src/components/icons/settings.js +2 -3
  903. package/src/components/icons/shortcut.js +2 -3
  904. package/src/components/icons/show-column.js +2 -4
  905. package/src/components/icons/smart-edit.js +2 -3
  906. package/src/components/icons/sort-asc.js +2 -6
  907. package/src/components/icons/sort-desc.js +2 -6
  908. package/src/components/icons/spark-line.js +2 -3
  909. package/src/components/icons/star.d.ts +3 -0
  910. package/src/components/icons/star.js +4 -0
  911. package/src/components/icons/starts-with.js +2 -3
  912. package/src/components/icons/state-management.js +2 -3
  913. package/src/components/icons/statusbar.js +2 -4
  914. package/src/components/icons/stop.js +2 -3
  915. package/src/components/icons/strikethrough.js +2 -3
  916. package/src/components/icons/styled-grid.js +2 -4
  917. package/src/components/icons/sync.js +2 -3
  918. package/src/components/icons/system-status.js +2 -3
  919. package/src/components/icons/tab-unselected.js +2 -3
  920. package/src/components/icons/table-arrow-right.js +2 -3
  921. package/src/components/icons/team-share.js +2 -3
  922. package/src/components/icons/theme.js +2 -4
  923. package/src/components/icons/tool-panel.js +2 -3
  924. package/src/components/icons/track-changes.js +2 -4
  925. package/src/components/icons/triangle-down.js +2 -3
  926. package/src/components/icons/triangle-up.js +2 -3
  927. package/src/components/icons/unchecked.js +2 -3
  928. package/src/components/icons/underline.js +2 -3
  929. package/src/components/icons/undo.js +2 -3
  930. package/src/components/icons/updated-row.js +2 -3
  931. package/src/components/icons/upload.js +2 -4
  932. package/src/components/icons/user-filter.js +2 -3
  933. package/src/components/icons/visibility-off.js +2 -3
  934. package/src/components/icons/visibility.js +2 -4
  935. package/src/components/icons/warning.js +2 -3
  936. package/src/components/twUtils.d.ts +3 -0
  937. package/src/components/twUtils.js +9 -3
  938. package/src/components/ui/button.d.ts +8 -0
  939. package/src/components/ui/button.js +34 -0
  940. package/src/components/ui/calendar.d.ts +7 -0
  941. package/src/components/ui/calendar.js +104 -0
  942. package/src/components/ui/combobox.d.ts +48 -0
  943. package/src/components/ui/combobox.js +100 -0
  944. package/src/components/ui/dropdown-menu.d.ts +29 -0
  945. package/src/components/ui/dropdown-menu.js +50 -0
  946. package/src/components/ui/input-group.d.ts +18 -0
  947. package/src/components/ui/input-group.js +57 -0
  948. package/src/components/ui/input.d.ts +3 -0
  949. package/src/components/ui/input.js +7 -0
  950. package/src/components/ui/popover.d.ts +9 -0
  951. package/src/components/ui/popover.js +22 -0
  952. package/src/components/ui/select.d.ts +26 -0
  953. package/src/components/ui/select.js +38 -0
  954. package/src/components/ui/textarea.d.ts +3 -0
  955. package/src/components/ui/textarea.js +6 -0
  956. package/src/components/ui/tooltip.d.ts +6 -0
  957. package/src/components/ui/tooltip.js +16 -0
  958. package/src/env.js +2 -2
  959. package/src/layout-manager/src/index.d.ts +2 -2
  960. package/src/layout-manager/src/index.js +11 -4
  961. package/src/lib/utils.d.ts +3 -0
  962. package/src/lib/utils.js +6 -0
  963. package/src/metamodel/adaptable.metamodel.d.ts +393 -59
  964. package/src/metamodel/adaptable.metamodel.js +1 -1
  965. package/src/migration/AdaptableUpgradeHelper.js +3 -1
  966. package/src/migration/VersionUpgrade22.js +11 -21
  967. package/src/migration/VersionUpgrade23.d.ts +85 -0
  968. package/src/migration/VersionUpgrade23.js +237 -0
  969. package/src/setupDevTools.d.ts +3 -0
  970. package/src/setupDevTools.js +410 -0
  971. package/src/types.d.ts +14 -13
  972. package/src/types.js +1 -0
  973. package/themes/dark.css +34 -6
  974. package/tsconfig.esm.tsbuildinfo +1 -1
  975. package/fonts/glyphicons-halflings-regular.eot +0 -0
  976. package/fonts/glyphicons-halflings-regular.svg +0 -288
  977. package/fonts/glyphicons-halflings-regular.ttf +0 -0
  978. package/fonts/glyphicons-halflings-regular.woff +0 -0
  979. package/fonts/glyphicons-halflings-regular.woff2 +0 -0
  980. package/src/AdaptableState/ScheduleState.d.ts +0 -52
  981. package/src/Api/Events/ScheduleTriggered.d.ts +0 -11
  982. package/src/Api/Implementation/ScheduleApiImpl.d.ts +0 -51
  983. package/src/Api/Implementation/ScheduleApiImpl.js +0 -199
  984. package/src/Api/ScheduleApi.d.ts +0 -224
  985. package/src/Api/ScheduleApi.js +0 -1
  986. package/src/Redux/ActionsReducers/ScheduleRedux.d.ts +0 -191
  987. package/src/Redux/ActionsReducers/ScheduleRedux.js +0 -390
  988. package/src/Strategy/Interface/IScheduleModule.d.ts +0 -4
  989. package/src/Strategy/Interface/IScheduleModule.js +0 -1
  990. package/src/Strategy/ScheduleModule.d.ts +0 -21
  991. package/src/Strategy/ScheduleModule.js +0 -269
  992. package/src/View/FormatColumn/Wizard/FormatColumnColumnScopeWizardSection.js +0 -46
  993. package/src/View/FormatColumn/Wizard/FormatColumnRowScopeWizardSection.d.ts +0 -8
  994. package/src/View/FormatColumn/Wizard/FormatColumnRowScopeWizardSection.js +0 -80
  995. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.d.ts +0 -11
  996. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.js +0 -73
  997. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.d.ts +0 -9
  998. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.js +0 -36
  999. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.d.ts +0 -8
  1000. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +0 -75
  1001. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.d.ts +0 -12
  1002. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.js +0 -65
  1003. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsSummary.d.ts +0 -7
  1004. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsSummary.js +0 -86
  1005. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsWizard.d.ts +0 -7
  1006. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsWizard.js +0 -30
  1007. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/index.d.ts +0 -3
  1008. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/index.js +0 -3
  1009. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/isSettingsValid.d.ts +0 -3
  1010. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/isSettingsValid.js +0 -53
  1011. package/src/View/Schedule/Wizard/ScheduleWizard.d.ts +0 -6
  1012. package/src/View/Schedule/Wizard/ScheduleWizard.js +0 -109
  1013. package/src/View/StyledColumn/Wizard/StyledColumnBadgeRowsSection.d.ts +0 -8
  1014. package/src/View/StyledColumn/Wizard/StyledColumnBadgeRowsSection.js +0 -101
  1015. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.d.ts +0 -9
  1016. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +0 -89
  1017. package/src/View/Theme/ThemeEditor.d.ts +0 -8
  1018. package/src/View/Theme/ThemeEditor.js +0 -160
  1019. package/src/View/Theme/ThemeEditorWindow.d.ts +0 -2
  1020. package/src/View/Theme/ThemeEditorWindow.js +0 -10
  1021. package/src/View/Theme/ThemeField.d.ts +0 -11
  1022. package/src/View/Theme/ThemeField.js +0 -34
  1023. package/src/components/Select/Select.d.ts +0 -53
  1024. package/src/components/Select/Select.js +0 -765
  1025. package/src/components/Select/index.d.ts +0 -1
  1026. package/src/components/Select/index.js +0 -1
  1027. package/src/components/Tree/TreeList/index.d.ts +0 -25
  1028. package/src/components/Tree/TreeList/index.js +0 -31
  1029. /package/{src/AdaptableState/ScheduleState.js → devtools.js} +0 -0
  1030. /package/src/Api/Events/{ScheduleTriggered.js → ReportScheduleRan.js} +0 -0
  1031. /package/src/{Api/Internal/ScheduleInternalApi.d.ts → Strategy/Interface/IAlertModule.js} +0 -0
  1032. /package/src/{Api/Internal/ScheduleInternalApi.js → Strategy/Interface/IExportModule.js} +0 -0
  1033. /package/src/View/FormatColumn/Wizard/{FormatColumnColumnScopeWizardSection.d.ts → FormatColumnScopeWizardSection.d.ts} +0 -0
@@ -0,0 +1,274 @@
1
+ import * as React from 'react';
2
+ import { IconComponent, isAdaptableSystemIcon, isAdaptableCustomIcon, isAdaptableElementIcon, } from '../../components/Icon';
3
+ import { renderWithAdaptableContext } from '../../View/renderWithAdaptableContext';
4
+ import Helper from '../../Utilities/Helpers/Helper';
5
+ import { getIconStylePresetMappings } from '../../Utilities/Helpers/IconStylePresets';
6
+ import { shouldRenderStyledColumnOnRow } from './shouldRenderStyledColumnOnRow';
7
+ import { isUnsupportedColumnDataTypeForIconStyle } from '../../Utilities/Helpers/iconStyledColumnColumnSupport';
8
+ import { errorOnce } from '../AdaptableLogger';
9
+ const DEFAULT_SIZE = 18;
10
+ const DEFAULT_GAP = 4;
11
+ /**
12
+ * Resolve the **effective** mapping list for an `IconStyle`:
13
+ *
14
+ * `[ ...presetMappings filtered by overrides, ...userMappings ]`
15
+ *
16
+ * Authoring contract:
17
+ * - `Preset` alone is enough — the renderer pulls the shipped mappings.
18
+ * - `Mappings` are *additions and overrides on top of the preset*. Any
19
+ * user mapping whose `Key` matches a preset entry replaces the preset
20
+ * entry; remaining preset entries pass through as-is.
21
+ * - `Mappings` alone (no Preset) behaves exactly as before.
22
+ *
23
+ * Equality respects `IconStyle.MatchMode` so a user override with
24
+ * `Key: 'gbp'` correctly shadows the preset's `'GBP'` when the column
25
+ * is configured for case-insensitive matching.
26
+ */
27
+ export const resolveEffectiveIconStyleMappings = (iconStyle) => {
28
+ if (!iconStyle)
29
+ return [];
30
+ const presetMappings = iconStyle.Preset
31
+ ? getIconStylePresetMappings(iconStyle.Preset)
32
+ : [];
33
+ const userMappings = iconStyle.Mappings ?? [];
34
+ if (presetMappings.length === 0)
35
+ return userMappings;
36
+ if (userMappings.length === 0)
37
+ return presetMappings;
38
+ const matchMode = iconStyle.MatchMode ?? 'Exact';
39
+ const normaliseKey = (k) => {
40
+ if (typeof k === 'string' && matchMode === 'CaseInsensitive') {
41
+ return k.toLowerCase();
42
+ }
43
+ return k;
44
+ };
45
+ const overrideKeys = new Set(userMappings.map((m) => normaliseKey(m.Key)));
46
+ const filteredPreset = presetMappings.filter((p) => !overrideKeys.has(normaliseKey(p.Key)));
47
+ return [...filteredPreset, ...userMappings];
48
+ };
49
+ /**
50
+ * Look up `cellValue` in the mapping list using the configured match mode.
51
+ *
52
+ * Strict equality covers the typed case (numeric / boolean keys) — string
53
+ * comparison falls back to a case-insensitive match when configured so the
54
+ * same preset works for `'GBP'` and `'gbp'` etc.
55
+ */
56
+ const findMapping = (mappings, cellValue, matchMode) => {
57
+ if (!mappings || mappings.length === 0)
58
+ return undefined;
59
+ if (matchMode === 'CaseInsensitive' && typeof cellValue === 'string') {
60
+ const needle = cellValue.toLowerCase();
61
+ return mappings.find((m) => {
62
+ if (typeof m.Key === 'string')
63
+ return m.Key.toLowerCase() === needle;
64
+ // For non-string keys (number / boolean) compare textually so e.g.
65
+ // `Key: 1` matches the string `'1'`.
66
+ return String(m.Key) === cellValue;
67
+ });
68
+ }
69
+ return mappings.find((m) => m.Key === cellValue);
70
+ };
71
+ /**
72
+ * Returns true when the spec is a plain string (emoji / glyph) — anything
73
+ * else is an `AdaptableIcon` and goes through `IconComponent`.
74
+ */
75
+ const isInlineGlyph = (spec) => {
76
+ return typeof spec === 'string';
77
+ };
78
+ const isAdaptableIconSpec = (spec) => {
79
+ return (!!spec &&
80
+ (isAdaptableSystemIcon(spec) ||
81
+ isAdaptableCustomIcon(spec) ||
82
+ isAdaptableElementIcon(spec)));
83
+ };
84
+ /**
85
+ * Renders the icon side of the cell. Strings are rendered as inline
86
+ * glyphs (emoji-friendly); `AdaptableIcon` specs go through the existing
87
+ * `IconComponent` so URL / system / element icons all "just work".
88
+ */
89
+ const renderIconSpec = (spec, size, className) => {
90
+ if (isInlineGlyph(spec)) {
91
+ return React.createElement('span', {
92
+ className,
93
+ style: {
94
+ fontSize: size,
95
+ lineHeight: 1,
96
+ display: 'inline-flex',
97
+ alignItems: 'center',
98
+ justifyContent: 'center',
99
+ },
100
+ }, spec);
101
+ }
102
+ if (isAdaptableIconSpec(spec)) {
103
+ return React.createElement(IconComponent, {
104
+ icon: { ...spec, size: spec.size ?? size },
105
+ iconClassName: className,
106
+ });
107
+ }
108
+ return null;
109
+ };
110
+ const renderIconCellTree = (params) => {
111
+ const { iconSpec, text, textPosition, size, gap } = params;
112
+ const iconNode = iconSpec
113
+ ? renderIconSpec(iconSpec, size, 'ab-IconStyle__glyph')
114
+ : null;
115
+ const textNode = text
116
+ ? React.createElement('span', {
117
+ className: 'ab-IconStyle__text',
118
+ style: { lineHeight: 1.2 },
119
+ }, text)
120
+ : null;
121
+ if (!iconNode && !textNode) {
122
+ return null;
123
+ }
124
+ if (!textNode) {
125
+ return iconNode;
126
+ }
127
+ if (!iconNode) {
128
+ return textNode;
129
+ }
130
+ const isStacked = textPosition === 'Above' || textPosition === 'Below';
131
+ const wrapperStyle = {
132
+ display: 'inline-flex',
133
+ flexDirection: isStacked ? 'column' : 'row',
134
+ alignItems: 'center',
135
+ gap,
136
+ width: '100%',
137
+ height: '100%',
138
+ justifyContent: 'center',
139
+ };
140
+ let children;
141
+ switch (textPosition) {
142
+ case 'Before':
143
+ case 'Above':
144
+ children = [textNode, iconNode];
145
+ break;
146
+ case 'After':
147
+ case 'Below':
148
+ default:
149
+ children = [iconNode, textNode];
150
+ break;
151
+ }
152
+ return React.createElement('span', {
153
+ className: 'ab-IconStyle__wrapper',
154
+ style: wrapperStyle,
155
+ }, ...children.map((child, idx) => React.cloneElement(child, { key: idx })));
156
+ };
157
+ export const getIconRendererForColumn = (styledColumn, abColumn, api) => {
158
+ if (!styledColumn.IconStyle) {
159
+ return;
160
+ }
161
+ if (isUnsupportedColumnDataTypeForIconStyle(abColumn.dataType)) {
162
+ errorOnce(`[AdapTable] Icon Styled Column (“${styledColumn.Name || styledColumn.ColumnId || 'unnamed'}” on column ${styledColumn.ColumnId}) is not supported when the column data type is ${abColumn.dataType}. Use Badge Style for array columns, or remove IconStyle from this column.`);
163
+ return undefined;
164
+ }
165
+ const iconStyle = styledColumn.IconStyle;
166
+ const size = iconStyle.Size ?? DEFAULT_SIZE;
167
+ const gap = iconStyle.Gap ?? DEFAULT_GAP;
168
+ const textPosition = iconStyle.CellTextPosition ?? 'After';
169
+ const matchMode = iconStyle.MatchMode ?? 'Exact';
170
+ // Resolve once at column-setup time. Cheap; recomputed when the column
171
+ // is reconfigured (which is when this factory is re-invoked anyway).
172
+ const effectiveMappings = resolveEffectiveIconStyleMappings(iconStyle);
173
+ return class IconCellRenderer {
174
+ eGui;
175
+ unmountReactRoot;
176
+ getAdaptableInstance(params) {
177
+ return params.context.__adaptable;
178
+ }
179
+ init(params) {
180
+ const adaptable = this.getAdaptableInstance(params);
181
+ const adaptableApi = adaptable.api;
182
+ this.eGui = document.createElement('div');
183
+ this.eGui.className = 'ab-IconStyle';
184
+ this.eGui.style.display = 'inline-flex';
185
+ this.eGui.style.alignItems = 'center';
186
+ this.eGui.style.height = '100%';
187
+ this.eGui.style.width = '100%';
188
+ // Defer to the shared row-scope helper so behaviour is uniform
189
+ // across every Styled Column type and `StyledColumn.RowScope` can
190
+ // override the default ("leaf rows only" for Icon).
191
+ if (!shouldRenderStyledColumnOnRow(styledColumn, params.node, adaptableApi)) {
192
+ if (params.value != undefined) {
193
+ this.eGui.append(String(params.value));
194
+ }
195
+ return;
196
+ }
197
+ const cellValue = params.value;
198
+ const cellValueIsEmpty = Helper.objectNotExists(cellValue);
199
+ const matched = cellValueIsEmpty
200
+ ? undefined
201
+ : findMapping(effectiveMappings, cellValue, matchMode);
202
+ const formatted = params.formatValue?.(cellValue) ??
203
+ (cellValue != undefined ? String(cellValue) : '');
204
+ // `CellText` describes the *companion text alongside a matched icon*.
205
+ // `Fallback` describes *what to do when no mapping matches*. They are
206
+ // independent: when there is no match, `Fallback` decides on its own
207
+ // — `CellText` does not get to override `Fallback: 'Hide'`.
208
+ let iconSpec;
209
+ let text;
210
+ let descriptionForTooltip;
211
+ if (matched) {
212
+ iconSpec = matched.Icon;
213
+ descriptionForTooltip = matched.Description;
214
+ const cellTextTokens = iconStyle.CellText ?? [];
215
+ const textParts = [];
216
+ if (cellTextTokens.includes('CellValue') && formatted) {
217
+ textParts.push(formatted);
218
+ }
219
+ if (cellTextTokens.includes('IconDescription') && matched.Description) {
220
+ textParts.push(matched.Description);
221
+ }
222
+ text = textParts.length > 0 ? textParts.join(' · ') : undefined;
223
+ }
224
+ else if (!cellValueIsEmpty) {
225
+ // Unmatched, non-empty cell: defer entirely to `Fallback`.
226
+ const fallback = iconStyle.Fallback ?? 'Hide';
227
+ if (fallback === 'ShowText') {
228
+ text = formatted || undefined;
229
+ }
230
+ else if (fallback === 'Icon' && iconStyle.FallbackIcon) {
231
+ iconSpec = iconStyle.FallbackIcon;
232
+ }
233
+ // 'Hide' (and the unsupported permutations) render nothing.
234
+ }
235
+ // else: empty cell → render nothing, regardless of `Fallback`.
236
+ // If we have nothing to draw, leave the cell empty (and skip mounting
237
+ // a React root for this row).
238
+ if (!iconSpec && !text) {
239
+ return;
240
+ }
241
+ const tree = renderIconCellTree({
242
+ iconSpec,
243
+ text,
244
+ textPosition,
245
+ size,
246
+ gap,
247
+ tooltipExtra: descriptionForTooltip,
248
+ });
249
+ if (!tree) {
250
+ return;
251
+ }
252
+ this.unmountReactRoot = adaptableApi.internalApi
253
+ .getAdaptableInstance()
254
+ .renderReactRoot(renderWithAdaptableContext(React.createElement(React.Fragment, { children: tree }), adaptable), this.eGui);
255
+ }
256
+ getGui() {
257
+ return this.eGui;
258
+ }
259
+ destroy() {
260
+ this.unmountReactRoot?.();
261
+ }
262
+ refresh(_params) {
263
+ // Force a re-init on every value change so the matched icon is fresh.
264
+ return false;
265
+ }
266
+ };
267
+ };
268
+ /** Helper exposed for the tooltip getter in `AgGridColumnAdapter`. */
269
+ export const findIconStyleMappingForValue = (iconStyle, cellValue) => {
270
+ if (!iconStyle)
271
+ return undefined;
272
+ const effective = resolveEffectiveIconStyleMappings(iconStyle);
273
+ return findMapping(effective, cellValue, iconStyle.MatchMode ?? 'Exact');
274
+ };
@@ -1,5 +1,98 @@
1
1
  import Helper from '../../Utilities/Helpers/Helper';
2
2
  import clamp from '../../Utilities/utils/clamp';
3
+ import { shouldRenderStyledColumnOnRow } from './shouldRenderStyledColumnOnRow';
4
+ /**
5
+ * Resolve the origin value (in the same numeric space as `min`/`max`) the bar
6
+ * should grow from.
7
+ *
8
+ * - `'Min'` - left edge (legacy behaviour: bar always anchored at min)
9
+ * - `'Zero'` - always 0 (centred axis)
10
+ * - `'Auto'` - 0 if any negatives are involved, otherwise min
11
+ * - `number` - explicit origin
12
+ */
13
+ const resolveOrigin = (percentBarStyle, cellValue, min, max) => {
14
+ const origin = percentBarStyle.Origin ?? 'Auto';
15
+ if (typeof origin === 'number') {
16
+ return origin;
17
+ }
18
+ if (origin === 'Zero') {
19
+ return 0;
20
+ }
21
+ if (origin === 'Min') {
22
+ return min;
23
+ }
24
+ // Auto - centred axis only when negatives are in play.
25
+ if (min < 0 || max < 0 || cellValue < 0) {
26
+ return 0;
27
+ }
28
+ return min;
29
+ };
30
+ const toFraction = (value, min, max) => {
31
+ if (max === min) {
32
+ return 0;
33
+ }
34
+ return clamp((value - min) / (max - min), 0, 1);
35
+ };
36
+ /** Column-comparison mode: centred 50% axis when Origin is Auto or Zero. */
37
+ const columnComparisonUsesCentredAxis = (origin) => {
38
+ const o = origin ?? 'Auto';
39
+ if (typeof o === 'number') {
40
+ return false;
41
+ }
42
+ return o === 'Zero' || o === 'Auto';
43
+ };
44
+ /**
45
+ * Linear (non-comparison) mode: bar grows from an interior point of the scale
46
+ * (so positives / negatives can diverge left and right).
47
+ */
48
+ const linearScaleUsesCentredAxis = (percentBarStyle, cellValue, min, max) => {
49
+ const origin = percentBarStyle.Origin ?? 'Auto';
50
+ if (origin === 'Zero') {
51
+ return true;
52
+ }
53
+ if (origin === 'Min') {
54
+ return false;
55
+ }
56
+ if (typeof origin === 'number') {
57
+ if (max === min) {
58
+ return false;
59
+ }
60
+ const f = toFraction(origin, min, max);
61
+ return f > 0 && f < 1;
62
+ }
63
+ // Auto — same condition as resolveOrigin using 0 as the pivot.
64
+ return min < 0 || max < 0 || cellValue < 0;
65
+ };
66
+ const resolveCellTextAlignCss = (percentBarStyle, args) => {
67
+ const mode = percentBarStyle.CellTextAlignment;
68
+ if (mode == undefined) {
69
+ return undefined;
70
+ }
71
+ if (mode === 'Left') {
72
+ return 'left';
73
+ }
74
+ if (mode === 'Right') {
75
+ return 'right';
76
+ }
77
+ if (mode === 'Center') {
78
+ return 'center';
79
+ }
80
+ // Auto
81
+ const centred = args.hasColumnComparison
82
+ ? columnComparisonUsesCentredAxis(percentBarStyle.Origin)
83
+ : linearScaleUsesCentredAxis(percentBarStyle, args.numericValue, args.min, args.max);
84
+ if (!centred) {
85
+ return undefined;
86
+ }
87
+ const v = args.hasColumnComparison ? args.percentageValue : args.numericValue;
88
+ if (v > 0) {
89
+ return 'right';
90
+ }
91
+ if (v < 0) {
92
+ return 'left';
93
+ }
94
+ return 'center';
95
+ };
3
96
  export const getPercentBarRendererForColumn = (styledColumn, abColumn, api) => {
4
97
  if (!styledColumn.PercentBarStyle) {
5
98
  return;
@@ -7,106 +100,182 @@ export const getPercentBarRendererForColumn = (styledColumn, abColumn, api) => {
7
100
  return class PercentBarRenderer {
8
101
  eGui;
9
102
  init(params) {
10
- const min = api.styledColumnApi.internalApi.getNumericStyleMinValue(styledColumn, abColumn, params.node, params.value);
11
- const max = api.styledColumnApi.internalApi.getNumericStyleMaxValue(styledColumn, abColumn, params.node, params.value);
12
- let value = params.value;
13
- if (Helper.objectNotExists(value)) {
14
- value = 0;
15
- }
16
- // We no longer support showing Percent Bar in Group Rows as it only made sense for Min / Max
17
- if (api.gridApi.isGroupRowNode(params.node)) {
18
- if (params.value) {
103
+ // Defer to the shared row-scope helper. Default behaviour
104
+ // ("group rows fall back to plain text") is preserved when
105
+ // `RowScope` is unset.
106
+ if (!shouldRenderStyledColumnOnRow(styledColumn, params.node, api)) {
107
+ if (params.value != undefined) {
19
108
  this.eGui = document.createElement('div');
20
- this.eGui.append(params.value);
109
+ this.eGui.append(String(params.value));
21
110
  }
22
111
  return;
23
112
  }
113
+ const rawCellValue = params.value;
114
+ // Empty / null cells render as nothing - drawing a 0%-wide bar would
115
+ // misleadingly suggest the cell value is at the origin.
116
+ if (Helper.objectNotExists(rawCellValue)) {
117
+ this.eGui = document.createElement('div');
118
+ return;
119
+ }
120
+ const numericValue = typeof rawCellValue === 'number' ? rawCellValue : Number(rawCellValue);
121
+ // Non-numeric strings ('—', 'N/A', etc.) get the same plain-text
122
+ // treatment as group rows.
123
+ if (isNaN(numericValue)) {
124
+ this.eGui = document.createElement('div');
125
+ this.eGui.append(params.formatValue?.(rawCellValue) ?? String(rawCellValue));
126
+ return;
127
+ }
128
+ const min = api.styledColumnApi.internalApi.getNumericStyleMinValue(styledColumn, abColumn, params.node, rawCellValue);
129
+ const max = api.styledColumnApi.internalApi.getNumericStyleMaxValue(styledColumn, abColumn, params.node, rawCellValue);
24
130
  const percentBarStyle = styledColumn.PercentBarStyle;
131
+ // ----- Compute the bar geometry --------------------------------------
132
+ // We always lay out the bar with `left%` and `width%` (instead of just
133
+ // `width%`) so that the bar can be anchored to any origin between min
134
+ // and max - including a centred 0 axis for columns with negatives.
25
135
  let percentageValue;
136
+ let barLeftPercent;
26
137
  let barWidthPercent;
27
138
  if (percentBarStyle.ColumnComparison) {
28
- // Finance convention: (difference / |base|) * 100 signed %, use |price| when base is negative
139
+ // Finance convention: (difference / |base|) * 100 - signed %.
29
140
  const absMax = Math.abs(max);
30
- percentageValue = absMax === 0 ? 0 : (Number(value) / absMax) * 100;
31
- // Bar width uses |percentage| so 50% and -50% have the same visual width
32
- barWidthPercent = Math.min(100, Math.abs(percentageValue));
141
+ percentageValue = absMax === 0 ? 0 : (numericValue / absMax) * 100;
142
+ const magnitude = Math.min(100, Math.abs(percentageValue));
143
+ const origin = percentBarStyle.Origin ?? 'Auto';
144
+ const isCentred = columnComparisonUsesCentredAxis(origin);
145
+ if (isCentred) {
146
+ // Centred at 50%: positive bars grow right from the centre, negative
147
+ // bars grow left. Width is half the magnitude (50 = full half-width).
148
+ const halfWidth = magnitude / 2;
149
+ if (percentageValue >= 0) {
150
+ barLeftPercent = 50;
151
+ barWidthPercent = halfWidth;
152
+ }
153
+ else {
154
+ barLeftPercent = 50 - halfWidth;
155
+ barWidthPercent = halfWidth;
156
+ }
157
+ }
158
+ else {
159
+ // Legacy behaviour: anchored at left, bar width = |percentage|.
160
+ barLeftPercent = 0;
161
+ barWidthPercent = magnitude;
162
+ }
163
+ }
164
+ else if (max === min) {
165
+ // No usable scale - bar is invisible but we still want to fall through
166
+ // and render the cell text below.
167
+ percentageValue = 0;
168
+ barLeftPercent = 0;
169
+ barWidthPercent = 0;
33
170
  }
34
171
  else {
35
- const clampedValue = clamp(value, min, max);
36
- percentageValue = ((clampedValue - min) / (max - min)) * 100;
37
- barWidthPercent = percentageValue;
172
+ // Linear value-on-scale.
173
+ percentageValue = ((clamp(numericValue, min, max) - min) / (max - min)) * 100;
174
+ const origin = resolveOrigin(percentBarStyle, numericValue, min, max);
175
+ const valueFrac = toFraction(numericValue, min, max);
176
+ const originFrac = toFraction(origin, min, max);
177
+ const start = Math.min(valueFrac, originFrac);
178
+ const end = Math.max(valueFrac, originFrac);
179
+ barLeftPercent = start * 100;
180
+ barWidthPercent = (end - start) * 100;
38
181
  }
182
+ // ----- Resolve bar colour -------------------------------------------
39
183
  let cellBackColor;
40
184
  if (percentBarStyle.ColumnComparison) {
41
185
  cellBackColor = percentBarStyle.ColumnComparison.Color;
42
186
  }
43
187
  else {
44
- const matchingRange = api.styledColumnApi.internalApi.findRangeForColumn(percentBarStyle.CellRanges, abColumn, percentBarStyle.RangeValueType, params.value);
188
+ const matchingRange = api.styledColumnApi.internalApi.findRangeForColumn(percentBarStyle.CellRanges, abColumn, percentBarStyle.RangeValueType, numericValue);
45
189
  if (matchingRange) {
46
190
  cellBackColor = matchingRange.Color;
47
191
  }
48
192
  }
193
+ // ----- Build the DOM -------------------------------------------------
49
194
  const hasCellText = percentBarStyle.CellText && percentBarStyle.CellText.length > 0;
50
195
  const isTextPositionMerged = percentBarStyle.CellTextPosition === 'Merged';
51
- if (cellBackColor) {
52
- this.eGui = document.createElement('div');
53
- this.eGui.className = 'ab-PercentBar__wrapper';
54
- this.eGui.style.height = hasCellText && !isTextPositionMerged ? '80%' : '100%';
55
- this.eGui.style.display = 'flex';
56
- this.eGui.style.flexDirection = 'column';
57
- this.eGui.style.justifyContent = 'center';
58
- const barEl = document.createElement('div');
59
- barEl.className = 'ab-PercentBar__bar';
60
- barEl.style.position = 'relative';
196
+ this.eGui = document.createElement('div');
197
+ this.eGui.className = 'ab-PercentBar__wrapper';
198
+ this.eGui.style.height = hasCellText && !isTextPositionMerged ? '80%' : '100%';
199
+ this.eGui.style.display = 'flex';
200
+ this.eGui.style.flexDirection = 'column';
201
+ this.eGui.style.justifyContent = 'center';
202
+ // Even when no range matches we still draw the bar track (with its
203
+ // back colour) so the cell isn't blank - this used to be a silent
204
+ // failure mode where the entire cell rendered nothing.
205
+ const barEl = document.createElement('div');
206
+ barEl.className = 'ab-PercentBar__bar';
207
+ barEl.style.position = 'relative';
208
+ if (percentBarStyle.BackColor) {
61
209
  barEl.style.background = percentBarStyle.BackColor;
62
- barEl.style.flex = '1';
210
+ }
211
+ barEl.style.flex = '1';
212
+ // Render the inside bar whenever a colour has been resolved, even at
213
+ // 0% width. A zero-width div is visually identical to skipping the
214
+ // element but keeps the DOM consistent so tests / tooling can still
215
+ // read the bar's reported width when a cell sits exactly at the origin
216
+ // (e.g. a value equal to Col-Min, or a 0 against a `MaxValue` column).
217
+ if (cellBackColor) {
63
218
  const barInsideEl = document.createElement('div');
64
219
  barInsideEl.className = 'ab-PercentBar__barInside';
65
220
  barInsideEl.style.background = cellBackColor;
66
221
  barInsideEl.style.height = '100%';
67
- barInsideEl.style.width = `${barWidthPercent.toFixed(0)}%`;
222
+ barInsideEl.style.position = 'absolute';
223
+ // Sub-pixel precision avoids rounding 0.4% values down to 0
224
+ // (invisible) or making ticking data jump in 1% steps.
225
+ barInsideEl.style.left = `${barLeftPercent.toFixed(2)}%`;
226
+ barInsideEl.style.width = `${barWidthPercent.toFixed(2)}%`;
227
+ barInsideEl.style.top = '0';
68
228
  barEl.append(barInsideEl);
69
- this.eGui.append(barEl);
70
- if (hasCellText) {
71
- const textEl = document.createElement('div');
72
- textEl.className = 'ab-PercentBar__text';
73
- textEl.style.lineHeight = '1.2';
74
- if (percentBarStyle.CellText.includes('CellValue')) {
75
- textEl.innerText = params.formatValue?.(params.value) ?? params.value;
76
- }
77
- if (percentBarStyle.CellText.includes('PercentageValue')) {
78
- textEl.innerText += ' ' + `${percentageValue.toFixed(0)}%`;
79
- }
80
- switch (percentBarStyle.CellTextPosition) {
81
- case 'Above':
82
- this.eGui.prepend(textEl);
83
- break;
84
- case 'Below':
85
- this.eGui.append(textEl);
86
- break;
87
- case 'Merged':
88
- textEl.style.position = 'absolute';
89
- // This allows to center verticly without knowing the height of the row
90
- textEl.style.top = '50%';
91
- textEl.style.transform = 'translateY(-50%)';
92
- // adds a bit of padding to the start/end of the bar
93
- textEl.style.left = '0';
94
- textEl.style.right = '0';
95
- textEl.style.paddingLeft = '5px';
96
- textEl.style.paddingRight = '5px';
97
- barEl.append(textEl);
98
- break;
99
- default:
100
- this.eGui.append(textEl);
101
- break;
102
- }
229
+ }
230
+ this.eGui.append(barEl);
231
+ if (hasCellText) {
232
+ const textEl = document.createElement('div');
233
+ textEl.className = 'ab-PercentBar__text';
234
+ textEl.style.lineHeight = '1.2';
235
+ const parts = [];
236
+ if (percentBarStyle.CellText.includes('CellValue')) {
237
+ parts.push(params.formatValue?.(rawCellValue) ?? String(rawCellValue));
238
+ }
239
+ if (percentBarStyle.CellText.includes('PercentageValue')) {
240
+ parts.push(`${percentageValue.toFixed(0)}%`);
241
+ }
242
+ textEl.innerText = parts.join(' ');
243
+ const textAlignCss = resolveCellTextAlignCss(percentBarStyle, {
244
+ numericValue,
245
+ percentageValue,
246
+ min,
247
+ max,
248
+ hasColumnComparison: !!percentBarStyle.ColumnComparison,
249
+ });
250
+ if (textAlignCss) {
251
+ textEl.style.textAlign = textAlignCss;
252
+ }
253
+ switch (percentBarStyle.CellTextPosition) {
254
+ case 'Above':
255
+ this.eGui.prepend(textEl);
256
+ break;
257
+ case 'Merged':
258
+ textEl.style.position = 'absolute';
259
+ // Centre vertically without knowing the row height
260
+ textEl.style.top = '50%';
261
+ textEl.style.transform = 'translateY(-50%)';
262
+ textEl.style.left = '0';
263
+ textEl.style.right = '0';
264
+ textEl.style.paddingLeft = '5px';
265
+ textEl.style.paddingRight = '5px';
266
+ barEl.append(textEl);
267
+ break;
268
+ case 'Below':
269
+ default:
270
+ this.eGui.append(textEl);
271
+ break;
103
272
  }
104
273
  }
105
274
  }
106
275
  getGui() {
107
276
  return this.eGui;
108
277
  }
109
- refresh(params) {
278
+ refresh(_params) {
110
279
  // by returning FALSE we force a re-render every time the cell value changes
111
280
  return false;
112
281
  }
@@ -0,0 +1,4 @@
1
+ import { StyledColumn } from '../../AdaptableState/StyledColumnState';
2
+ import { AdaptableApi } from '../../Api/AdaptableApi';
3
+ import { AdaptableColumn } from '../../AdaptableState/Common/AdaptableColumn';
4
+ export declare const getRangeBarRendererForColumn: (styledColumn: StyledColumn, abColumn: AdaptableColumn, api: AdaptableApi) => any;