@adaptabletools/adaptable 14.0.0-canary.0 → 14.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 (704) hide show
  1. package/README.md +3 -3
  2. package/agGrid.d.ts +23 -1
  3. package/agGrid.js +23 -1
  4. package/base.css +1408 -2113
  5. package/base.css.map +1 -0
  6. package/bundle.cjs.js +259 -230
  7. package/index.css +1586 -1473
  8. package/index.css.map +1 -0
  9. package/package.json +10 -10
  10. package/publishTimestamp.d.ts +1 -1
  11. package/publishTimestamp.js +1 -1
  12. package/src/AdaptableInterfaces/IAdaptable.d.ts +20 -5
  13. package/src/AdaptableOptions/ActionOptions.d.ts +66 -32
  14. package/src/AdaptableOptions/AdaptableOptions.d.ts +6 -2
  15. package/src/AdaptableOptions/AdaptableQLOptions.d.ts +10 -104
  16. package/src/AdaptableOptions/AlertOptions.d.ts +10 -1
  17. package/src/AdaptableOptions/ChartingOptions.d.ts +27 -0
  18. package/src/{Api/ConditionalStyleApi.js → AdaptableOptions/ChartingOptions.js} +0 -0
  19. package/src/AdaptableOptions/DataChangeHistoryOptions.d.ts +1 -1
  20. package/src/AdaptableOptions/EntitlementOptions.d.ts +14 -1
  21. package/src/AdaptableOptions/ExportOptions.d.ts +3 -3
  22. package/src/AdaptableOptions/ExpressionOptions.d.ts +204 -0
  23. package/src/{Api/InternalApi.js → AdaptableOptions/ExpressionOptions.js} +0 -0
  24. package/src/AdaptableOptions/FilterOptions.d.ts +8 -1
  25. package/src/AdaptableOptions/FinancePluginOptions.d.ts +21 -6
  26. package/src/AdaptableOptions/FinsemblePluginOptions.d.ts +32 -0
  27. package/src/{Strategy/Interface/IConditionalStyleModule.js → AdaptableOptions/FinsemblePluginOptions.js} +0 -0
  28. package/src/AdaptableOptions/GeneralOptions.d.ts +46 -5
  29. package/src/AdaptableOptions/LayoutOptions.d.ts +20 -2
  30. package/src/AdaptableOptions/MasterDetailPluginOptions.d.ts +6 -4
  31. package/src/AdaptableOptions/NotificationsOptions.d.ts +2 -1
  32. package/src/AdaptableOptions/PredicateOptions.d.ts +32 -0
  33. package/src/AdaptableOptions/PredicateOptions.js +2 -0
  34. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +4 -4
  35. package/src/Api/ActionApi.d.ts +14 -3
  36. package/src/Api/AdaptableApi.d.ts +12 -11
  37. package/src/Api/AlertApi.d.ts +139 -83
  38. package/src/Api/BulkUpdateApi.d.ts +9 -2
  39. package/src/Api/CalculatedColumnApi.d.ts +26 -21
  40. package/src/Api/CalendarApi.d.ts +29 -0
  41. package/src/Api/CalendarApi.js +2 -0
  42. package/src/Api/CellSummaryApi.d.ts +15 -8
  43. package/src/Api/ChartingApi.d.ts +45 -1
  44. package/src/Api/ColumnApi.d.ts +166 -110
  45. package/src/Api/ConfigApi.d.ts +18 -24
  46. package/src/Api/CustomSortApi.d.ts +36 -7
  47. package/src/Api/DashboardApi.d.ts +13 -6
  48. package/src/Api/DataChangeHistoryApi.d.ts +8 -1
  49. package/src/Api/DataSetApi.d.ts +13 -3
  50. package/src/Api/EntitlementApi.d.ts +31 -0
  51. package/src/Api/EntitlementApi.js +2 -0
  52. package/src/Api/EventApi.d.ts +15 -24
  53. package/src/Api/ExportApi.d.ts +35 -18
  54. package/src/Api/FilterApi.d.ts +75 -67
  55. package/src/Api/FinanceApi.d.ts +22 -9
  56. package/src/Api/FinsembleApi.d.ts +10 -0
  57. package/src/Api/FinsembleApi.js +2 -0
  58. package/src/Api/FlashingCellApi.d.ts +28 -12
  59. package/src/Api/FormatColumnApi.d.ts +96 -102
  60. package/src/Api/FreeTextColumnApi.d.ts +53 -21
  61. package/src/Api/GridApi.d.ts +59 -23
  62. package/src/Api/IPushPullApi.d.ts +1 -1
  63. package/src/Api/Implementation/ActionApiImpl.d.ts +9 -3
  64. package/src/Api/Implementation/ActionApiImpl.js +23 -11
  65. package/src/Api/Implementation/AdaptableApiImpl.d.ts +8 -4
  66. package/src/Api/Implementation/AdaptableApiImpl.js +9 -5
  67. package/src/Api/Implementation/AlertApiImpl.d.ts +59 -26
  68. package/src/Api/Implementation/AlertApiImpl.js +187 -171
  69. package/src/Api/Implementation/ApiBase.d.ts +45 -3
  70. package/src/Api/Implementation/ApiBase.js +129 -5
  71. package/src/Api/Implementation/ApplicationApiImpl.d.ts +1 -1
  72. package/src/Api/Implementation/BulkUpdateApiImpl.d.ts +1 -0
  73. package/src/Api/Implementation/BulkUpdateApiImpl.js +4 -1
  74. package/src/Api/Implementation/CalculatedColumnApiImpl.d.ts +7 -2
  75. package/src/Api/Implementation/CalculatedColumnApiImpl.js +28 -37
  76. package/src/Api/Implementation/CalendarApiImpl.d.ts +9 -0
  77. package/src/Api/Implementation/CalendarApiImpl.js +59 -0
  78. package/src/Api/Implementation/CellSummaryApiImpl.d.ts +1 -0
  79. package/src/Api/Implementation/CellSummaryApiImpl.js +6 -1
  80. package/src/Api/Implementation/ChartingApiImpl.d.ts +11 -3
  81. package/src/Api/Implementation/ChartingApiImpl.js +41 -6
  82. package/src/Api/Implementation/ColumnApiImpl.d.ts +28 -8
  83. package/src/Api/Implementation/ColumnApiImpl.js +204 -194
  84. package/src/Api/Implementation/ConfigApiImpl.d.ts +1 -3
  85. package/src/Api/Implementation/ConfigApiImpl.js +1 -12
  86. package/src/Api/Implementation/CustomSortApiImpl.d.ts +16 -1
  87. package/src/Api/Implementation/CustomSortApiImpl.js +33 -7
  88. package/src/Api/Implementation/DashboardApiImpl.d.ts +6 -1
  89. package/src/Api/Implementation/DashboardApiImpl.js +13 -15
  90. package/src/Api/Implementation/DataChangeHistoryApiImpl.d.ts +1 -0
  91. package/src/Api/Implementation/DataChangeHistoryApiImpl.js +5 -0
  92. package/src/Api/Implementation/DataSetApiImpl.d.ts +6 -0
  93. package/src/Api/Implementation/DataSetApiImpl.js +17 -8
  94. package/src/Api/Implementation/EntitlementApiImpl.d.ts +11 -0
  95. package/src/Api/Implementation/EntitlementApiImpl.js +25 -0
  96. package/src/Api/Implementation/ExportApiImpl.d.ts +12 -4
  97. package/src/Api/Implementation/ExportApiImpl.js +43 -77
  98. package/src/Api/Implementation/FilterApiImpl.d.ts +11 -4
  99. package/src/Api/Implementation/FilterApiImpl.js +62 -166
  100. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +9 -1
  101. package/src/Api/Implementation/FlashingCellApiImpl.js +29 -26
  102. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +49 -26
  103. package/src/Api/Implementation/FormatColumnApiImpl.js +84 -259
  104. package/src/Api/Implementation/FreeTextColumnApiImpl.d.ts +13 -5
  105. package/src/Api/Implementation/FreeTextColumnApiImpl.js +42 -27
  106. package/src/Api/Implementation/GridApiImpl.d.ts +17 -2
  107. package/src/Api/Implementation/GridApiImpl.js +122 -62
  108. package/src/Api/Implementation/LayoutApiImpl.d.ts +15 -7
  109. package/src/Api/Implementation/LayoutApiImpl.js +44 -112
  110. package/src/Api/Implementation/PluginsApiImpl.d.ts +3 -1
  111. package/src/Api/Implementation/PluginsApiImpl.js +6 -0
  112. package/src/Api/Implementation/PlusMinusApiImpl.d.ts +2 -1
  113. package/src/Api/Implementation/PlusMinusApiImpl.js +5 -0
  114. package/src/Api/Implementation/PredicateApiImpl.d.ts +13 -2
  115. package/src/Api/Implementation/PredicateApiImpl.js +41 -23
  116. package/src/Api/Implementation/QueryApiImpl.d.ts +7 -2
  117. package/src/Api/Implementation/QueryApiImpl.js +25 -52
  118. package/src/Api/Implementation/QueryLanguageApiImpl.d.ts +6 -3
  119. package/src/Api/Implementation/QueryLanguageApiImpl.js +14 -18
  120. package/src/Api/Implementation/QuickSearchApiImpl.d.ts +1 -0
  121. package/src/Api/Implementation/QuickSearchApiImpl.js +5 -0
  122. package/src/Api/Implementation/ScheduleApiImpl.d.ts +27 -0
  123. package/src/Api/Implementation/ScheduleApiImpl.js +86 -17
  124. package/src/Api/Implementation/ScopeApiImpl.d.ts +1 -1
  125. package/src/Api/Implementation/ScopeApiImpl.js +9 -7
  126. package/src/Api/Implementation/SettingsPanelApiImpl.d.ts +2 -0
  127. package/src/Api/Implementation/SettingsPanelApiImpl.js +9 -0
  128. package/src/Api/Implementation/ShortcutApiImpl.d.ts +8 -1
  129. package/src/Api/Implementation/ShortcutApiImpl.js +25 -4
  130. package/src/Api/Implementation/SmartEditApiImpl.d.ts +1 -0
  131. package/src/Api/Implementation/SmartEditApiImpl.js +5 -0
  132. package/src/Api/Implementation/StyledColumnApiImpl.d.ts +30 -0
  133. package/src/Api/Implementation/StyledColumnApiImpl.js +96 -0
  134. package/src/Api/Implementation/SystemStatusApiImpl.d.ts +6 -1
  135. package/src/Api/Implementation/SystemStatusApiImpl.js +20 -14
  136. package/src/Api/Implementation/TeamSharingApiImpl.d.ts +6 -5
  137. package/src/Api/Implementation/TeamSharingApiImpl.js +15 -25
  138. package/src/Api/Implementation/ThemeApiImpl.d.ts +5 -1
  139. package/src/Api/Implementation/ThemeApiImpl.js +23 -4
  140. package/src/Api/Implementation/ToolPanelApiImpl.d.ts +3 -1
  141. package/src/Api/Implementation/ToolPanelApiImpl.js +8 -0
  142. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +2 -0
  143. package/src/Api/Implementation/UserInterfaceApiImpl.js +13 -4
  144. package/src/Api/Internal/ActionInternalApi.d.ts +23 -0
  145. package/src/Api/Internal/ActionInternalApi.js +198 -0
  146. package/src/Api/{Implementation/InternalApiImpl.d.ts → Internal/AdaptableInternalApi.d.ts} +15 -57
  147. package/src/Api/Internal/AdaptableInternalApi.js +455 -0
  148. package/src/Api/Internal/AlertInternalApi.d.ts +148 -0
  149. package/src/Api/Internal/AlertInternalApi.js +484 -0
  150. package/src/Api/Internal/CalculatedColumnInternalApi.d.ts +24 -0
  151. package/src/Api/Internal/CalculatedColumnInternalApi.js +57 -0
  152. package/src/Api/Internal/ColumnInternalApi.d.ts +33 -0
  153. package/src/Api/Internal/ColumnInternalApi.js +67 -0
  154. package/src/Api/Internal/CustomSortInternalApi.d.ts +6 -0
  155. package/src/Api/Internal/CustomSortInternalApi.js +11 -0
  156. package/src/Api/Internal/DashboardInternalApi.d.ts +8 -0
  157. package/src/Api/Internal/DashboardInternalApi.js +26 -0
  158. package/src/Api/Internal/DataSetInternalApi.d.ts +9 -0
  159. package/src/Api/Internal/DataSetInternalApi.js +20 -0
  160. package/src/Api/Internal/ExportInternalApi.d.ts +11 -0
  161. package/src/Api/Internal/ExportInternalApi.js +73 -0
  162. package/src/Api/Internal/FilterInternalApi.d.ts +58 -0
  163. package/src/Api/Internal/FilterInternalApi.js +194 -0
  164. package/src/Api/Internal/FlashingCellInternalApi.d.ts +12 -0
  165. package/src/Api/Internal/FlashingCellInternalApi.js +56 -0
  166. package/src/Api/Internal/FormatColumnInternalApi.d.ts +109 -0
  167. package/src/Api/Internal/FormatColumnInternalApi.js +225 -0
  168. package/src/Api/Internal/FreeTextColumnInternalApi.d.ts +15 -0
  169. package/src/Api/Internal/FreeTextColumnInternalApi.js +44 -0
  170. package/src/Api/Internal/GridInternalApi.d.ts +82 -0
  171. package/src/Api/Internal/GridInternalApi.js +252 -0
  172. package/src/Api/Internal/LayoutInternalApi.d.ts +48 -0
  173. package/src/Api/Internal/LayoutInternalApi.js +163 -0
  174. package/src/Api/Internal/PredicateInternalApi.d.ts +37 -0
  175. package/src/Api/Internal/PredicateInternalApi.js +140 -0
  176. package/src/Api/Internal/QueryInternalApi.d.ts +17 -0
  177. package/src/Api/Internal/QueryInternalApi.js +57 -0
  178. package/src/Api/Internal/QueryLanguageInternalApi.d.ts +11 -0
  179. package/src/Api/Internal/QueryLanguageInternalApi.js +34 -0
  180. package/src/Api/Internal/StyledColumnInternalApi.d.ts +59 -0
  181. package/src/Api/Internal/StyledColumnInternalApi.js +249 -0
  182. package/src/Api/Internal/SystemStatusInternalApi.d.ts +11 -0
  183. package/src/Api/Internal/SystemStatusInternalApi.js +27 -0
  184. package/src/Api/Internal/TeamSharingInternalApi.d.ts +20 -0
  185. package/src/Api/Internal/TeamSharingInternalApi.js +66 -0
  186. package/src/Api/LayoutApi.d.ts +36 -41
  187. package/src/Api/PluginsApi.d.ts +5 -0
  188. package/src/Api/PlusMinusApi.d.ts +9 -2
  189. package/src/Api/PredicateApi.d.ts +41 -10
  190. package/src/Api/QueryApi.d.ts +23 -18
  191. package/src/Api/QueryLanguageApi.d.ts +3 -7
  192. package/src/Api/QuickSearchApi.d.ts +5 -1
  193. package/src/Api/ScheduleApi.d.ts +97 -16
  194. package/src/Api/ScopeApi.d.ts +1 -1
  195. package/src/Api/SettingsPanelApi.d.ts +12 -1
  196. package/src/Api/ShortcutApi.d.ts +28 -7
  197. package/src/Api/SmartEditApi.d.ts +8 -1
  198. package/src/Api/StyledColumnApi.d.ts +100 -0
  199. package/src/Api/StyledColumnApi.js +2 -0
  200. package/src/Api/SystemStatusApi.d.ts +12 -6
  201. package/src/Api/TeamSharingApi.d.ts +4 -17
  202. package/src/Api/ThemeApi.d.ts +25 -6
  203. package/src/Api/ToolPanelApi.d.ts +10 -1
  204. package/src/Api/UserInterfaceApi.d.ts +13 -2
  205. package/src/PredefinedConfig/AdaptableState.d.ts +2 -0
  206. package/src/PredefinedConfig/AlertState.d.ts +20 -5
  207. package/src/PredefinedConfig/ChartingState.d.ts +13 -4
  208. package/src/PredefinedConfig/Common/AdaptableColumn.d.ts +1 -1
  209. package/src/PredefinedConfig/Common/AdaptableColumn.js +4 -0
  210. package/src/PredefinedConfig/Common/AdaptableForm.d.ts +0 -5
  211. package/src/PredefinedConfig/Common/AdaptableFormat.d.ts +10 -0
  212. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
  213. package/src/PredefinedConfig/Common/AdaptableObject.d.ts +22 -1
  214. package/src/PredefinedConfig/Common/AdaptablePredicate.d.ts +8 -2
  215. package/src/PredefinedConfig/Common/AdaptablePredicate.js +64 -45
  216. package/src/PredefinedConfig/Common/AdaptableStyle.d.ts +6 -6
  217. package/src/PredefinedConfig/Common/ColumnFilter.d.ts +2 -2
  218. package/src/PredefinedConfig/Common/FDC3Context.d.ts +3 -7
  219. package/src/PredefinedConfig/Common/Types.d.ts +7 -7
  220. package/src/PredefinedConfig/Common/Types.js +4 -0
  221. package/src/PredefinedConfig/ConditionalStyleState.d.ts +10 -19
  222. package/src/PredefinedConfig/FlashingCellState.d.ts +9 -2
  223. package/src/PredefinedConfig/FormatColumnState.d.ts +28 -92
  224. package/src/PredefinedConfig/GridState.d.ts +1 -1
  225. package/src/PredefinedConfig/LayoutState.d.ts +1 -1
  226. package/src/PredefinedConfig/PredefinedConfig.d.ts +7 -2
  227. package/src/PredefinedConfig/StyledColumnState.d.ts +139 -0
  228. package/src/PredefinedConfig/StyledColumnState.js +2 -0
  229. package/src/PredefinedConfig/SystemState.d.ts +21 -0
  230. package/src/Redux/ActionsReducers/ChartingRedux.d.ts +28 -5
  231. package/src/Redux/ActionsReducers/ChartingRedux.js +45 -5
  232. package/src/Redux/ActionsReducers/FormatColumnRedux.d.ts +14 -0
  233. package/src/Redux/ActionsReducers/FormatColumnRedux.js +43 -1
  234. package/src/Redux/ActionsReducers/FreeTextColumnRedux.d.ts +1 -1
  235. package/src/Redux/ActionsReducers/FreeTextColumnRedux.js +3 -3
  236. package/src/Redux/ActionsReducers/GridRedux.d.ts +18 -0
  237. package/src/Redux/ActionsReducers/GridRedux.js +65 -2
  238. package/src/Redux/ActionsReducers/PluginsRedux.d.ts +4 -4
  239. package/src/Redux/ActionsReducers/PluginsRedux.js +5 -5
  240. package/src/Redux/ActionsReducers/PopupRedux.js +10 -2
  241. package/src/Redux/ActionsReducers/QuickSearchRedux.d.ts +1 -1
  242. package/src/Redux/ActionsReducers/QuickSearchRedux.js +1 -1
  243. package/src/Redux/ActionsReducers/StyledColumnRedux.d.ts +49 -0
  244. package/src/Redux/ActionsReducers/StyledColumnRedux.js +92 -0
  245. package/src/Redux/ActionsReducers/SystemRedux.d.ts +20 -0
  246. package/src/Redux/ActionsReducers/SystemRedux.js +67 -5
  247. package/src/Redux/DeadRedux.d.ts +6 -0
  248. package/src/Redux/DeadRedux.js +19 -1
  249. package/src/Redux/Store/AdaptableStore.js +45 -34
  250. package/src/Strategy/AdaptableModuleBase.js +6 -6
  251. package/src/Strategy/AlertModule.d.ts +1 -6
  252. package/src/Strategy/AlertModule.js +38 -93
  253. package/src/Strategy/BulkUpdateModule.js +3 -3
  254. package/src/Strategy/CalculatedColumnModule.js +6 -6
  255. package/src/Strategy/ChartingModule.d.ts +7 -1
  256. package/src/Strategy/ChartingModule.js +97 -0
  257. package/src/Strategy/CustomSortModule.js +4 -4
  258. package/src/Strategy/DashboardModule.js +2 -2
  259. package/src/Strategy/DataChangeHistoryModule.d.ts +1 -0
  260. package/src/Strategy/DataChangeHistoryModule.js +12 -0
  261. package/src/Strategy/DataSetModule.js +1 -1
  262. package/src/Strategy/ExportModule.js +4 -4
  263. package/src/Strategy/FilterModule.js +10 -13
  264. package/src/Strategy/FlashingCellModule.d.ts +2 -0
  265. package/src/Strategy/FlashingCellModule.js +27 -7
  266. package/src/Strategy/FormatColumnModule.d.ts +4 -10
  267. package/src/Strategy/FormatColumnModule.js +70 -185
  268. package/src/Strategy/FreeTextColumnModule.js +3 -3
  269. package/src/Strategy/Interface/IModule.d.ts +12 -10
  270. package/src/Strategy/LayoutModule.d.ts +3 -0
  271. package/src/Strategy/LayoutModule.js +138 -25
  272. package/src/Strategy/PlusMinusModule.js +2 -2
  273. package/src/Strategy/QueryModule.js +3 -3
  274. package/src/Strategy/ScheduleModule.js +10 -12
  275. package/src/Strategy/ShortcutModule.js +5 -5
  276. package/src/Strategy/SmartEditModule.js +3 -3
  277. package/src/Strategy/StyledColumnModule.d.ts +24 -0
  278. package/src/Strategy/StyledColumnModule.js +179 -0
  279. package/src/Strategy/TeamSharingModule.js +3 -3
  280. package/src/Strategy/ThemeModule.js +1 -1
  281. package/src/Strategy/Utilities/Alert/getAlertBehaviourViewItems.d.ts +2 -2
  282. package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.js +1 -1
  283. package/src/Strategy/Utilities/Export/getExportColumnsViewItems.d.ts +1 -1
  284. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.d.ts +1 -1
  285. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +3 -4
  286. package/src/Strategy/Utilities/FormatColumn/getFormatColumnStyleViewItems.js +1 -16
  287. package/src/Strategy/Utilities/Layout/getLayoutFilterViewItems.js +1 -1
  288. package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.js +1 -1
  289. package/src/Strategy/Utilities/getRuleViewItems.d.ts +1 -1
  290. package/src/Strategy/Utilities/getRuleViewItems.js +4 -3
  291. package/src/Strategy/Utilities/getScopeViewItems.js +2 -2
  292. package/src/Strategy/Utilities/updateSingleToMultiplePredicates.d.ts +5 -0
  293. package/src/Strategy/Utilities/updateSingleToMultiplePredicates.js +12 -0
  294. package/src/Utilities/Constants/ModuleConstants.d.ts +3 -0
  295. package/src/Utilities/Constants/ModuleConstants.js +4 -1
  296. package/src/Utilities/Defaults/DefaultAdaptableOptions.js +32 -25
  297. package/src/Utilities/Defaults/DefaultSettingsPanel.js +19 -15
  298. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.d.ts +3 -2
  299. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.js +11 -1
  300. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +1 -4
  301. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +22 -11
  302. package/src/Utilities/ExpressionFunctions/booleanExpressionFunctions.d.ts +1 -0
  303. package/src/Utilities/ExpressionFunctions/booleanExpressionFunctions.js +76 -79
  304. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.d.ts +3 -1
  305. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +9 -5
  306. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.d.ts +2 -4
  307. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +15 -4
  308. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +2 -1
  309. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +136 -29
  310. package/src/Utilities/Extensions/ObjectExtensions.d.ts +10 -0
  311. package/src/Utilities/Extensions/ObjectExtensions.js +20 -0
  312. package/src/Utilities/Extensions/StringExtensions.d.ts +2 -0
  313. package/src/Utilities/Extensions/StringExtensions.js +21 -1
  314. package/src/Utilities/Extensions/TypeExtensions.d.ts +2 -0
  315. package/src/Utilities/Extensions/TypeExtensions.js +5 -0
  316. package/src/Utilities/Helpers/AdaptableHelper.js +6 -2
  317. package/src/Utilities/Helpers/FormatHelper.d.ts +1 -1
  318. package/src/Utilities/Helpers/FormatHelper.js +20 -11
  319. package/src/Utilities/ObjectFactory.d.ts +10 -6
  320. package/src/Utilities/ObjectFactory.js +30 -26
  321. package/src/Utilities/Services/CalculatedColumnExpressionService.js +2 -2
  322. package/src/Utilities/Services/ChartingService.d.ts +10 -0
  323. package/src/Utilities/Services/ChartingService.js +100 -0
  324. package/src/Utilities/Services/DataService.js +1 -1
  325. package/src/Utilities/Services/EntitlementService.js +4 -1
  326. package/src/Utilities/Services/Interface/IChartingService.d.ts +5 -0
  327. package/src/Utilities/Services/Interface/IChartingService.js +2 -0
  328. package/src/Utilities/Services/Interface/IEntitlementService.d.ts +2 -1
  329. package/src/Utilities/Services/Interface/IMetamodelService.d.ts +1 -0
  330. package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +14 -4
  331. package/src/Utilities/Services/Interface/IRowEditService.d.ts +0 -5
  332. package/src/Utilities/Services/{LicenseService.d.ts → LicenseService/index.d.ts} +3 -3
  333. package/src/Utilities/Services/LicenseService/index.js +1 -0
  334. package/src/Utilities/Services/LicenseService/shouldLogThankYouMessage.d.ts +1 -0
  335. package/src/Utilities/Services/LicenseService/shouldLogThankYouMessage.js +15 -0
  336. package/src/Utilities/Services/MetamodelService.js +6 -4
  337. package/src/Utilities/Services/ModuleService.js +4 -2
  338. package/src/Utilities/Services/QueryLanguageService.d.ts +3 -3
  339. package/src/Utilities/Services/QueryLanguageService.js +91 -42
  340. package/src/Utilities/Services/ReportService.js +9 -9
  341. package/src/Utilities/Services/RowEditService.d.ts +0 -19
  342. package/src/Utilities/Services/RowEditService.js +5 -162
  343. package/src/Utilities/Services/TeamSharingService.js +3 -3
  344. package/src/Utilities/Services/ValidationService.js +9 -7
  345. package/src/Utilities/license/LicenseDetails.d.ts +1 -1
  346. package/src/Utilities/license/decode.d.ts +1 -0
  347. package/src/Utilities/license/decode.js +1 -1
  348. package/src/Utilities/logDeprecation.d.ts +3 -0
  349. package/src/Utilities/logDeprecation.js +30 -0
  350. package/src/View/AdaptablePopover/index.d.ts +4 -2
  351. package/src/View/AdaptablePopover/index.js +6 -2
  352. package/src/View/AdaptableView.d.ts +3 -3
  353. package/src/View/AdaptableViewFactory.js +2 -0
  354. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.d.ts +3 -5
  355. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +103 -92
  356. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.d.ts +2 -1
  357. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +2 -2
  358. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.d.ts +1 -1
  359. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +4 -3
  360. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizardColumnsStep.js +8 -3
  361. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.js +7 -34
  362. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/FinanceForm.d.ts +1 -1
  363. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/FinanceForm.js +7 -7
  364. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.js +2 -1
  365. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsActionColumnsForm.js +4 -2
  366. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.js +2 -1
  367. package/src/View/AdaptableWizardView/index.d.ts +1 -1
  368. package/src/View/Alert/AlertEntityRow.js +1 -1
  369. package/src/View/Alert/AlertStatusSubPanel.js +1 -1
  370. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +17 -16
  371. package/src/View/Alert/Wizard/AlertButtonsEditor.js +25 -2
  372. package/src/View/Alert/Wizard/AlertDisplayWizardSection.js +23 -14
  373. package/src/View/Alert/Wizard/AlertWizard.js +3 -3
  374. package/src/View/Alert/Wizard/BaseAlertRulesWizardSection.js +7 -5
  375. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +5 -5
  376. package/src/View/Alert/Wizard/isValidAlertRules.js +5 -4
  377. package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
  378. package/src/View/CalculatedColumn/CalculatedColumnSummary.d.ts +1 -1
  379. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +3 -3
  380. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  381. package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +4 -3
  382. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.d.ts +1 -0
  383. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +34 -12
  384. package/src/View/Components/AdaptableObjectRow/index.js +1 -6
  385. package/src/View/Components/Buttons/ButtonDelete.d.ts +1 -1
  386. package/src/View/Components/Buttons/ButtonEdit.d.ts +1 -1
  387. package/src/View/Components/Buttons/ButtonInfo.d.ts +1 -3
  388. package/src/View/Components/Buttons/ButtonInfo.js +3 -5
  389. package/src/View/Components/Charting/ChartingStatusBarPopover.d.ts +2 -0
  390. package/src/View/Components/Charting/ChartingStatusBarPopover.js +23 -0
  391. package/src/View/Components/Charting/ChartingViewPanel.d.ts +3 -0
  392. package/src/View/Components/Charting/ChartingViewPanel.js +95 -0
  393. package/src/View/Components/Charting/ChartingWizard/ChartingWizard.d.ts +6 -0
  394. package/src/View/Components/Charting/ChartingWizard/ChartingWizard.js +37 -0
  395. package/src/View/Components/Charting/ChartingWizard/PreviewChartSection.d.ts +6 -0
  396. package/src/View/Components/Charting/ChartingWizard/PreviewChartSection.js +34 -0
  397. package/src/View/Components/Charting/ChartingWizard/SettingsSection.d.ts +8 -0
  398. package/src/View/Components/Charting/ChartingWizard/SettingsSection.js +53 -0
  399. package/src/View/Components/Charting/DeleteChartButton.d.ts +7 -0
  400. package/src/View/Components/Charting/DeleteChartButton.js +12 -0
  401. package/src/View/Components/Charting/EditChartButton.d.ts +8 -0
  402. package/src/View/Components/Charting/EditChartButton.js +21 -0
  403. package/src/View/Components/Charting/ShowChartButton.d.ts +5 -0
  404. package/src/View/Components/Charting/ShowChartButton.js +38 -0
  405. package/src/View/Components/Charting/useChartState.d.ts +9 -0
  406. package/src/View/Components/Charting/useChartState.js +71 -0
  407. package/src/View/Components/EntityRulesEditor/PredicatesEditor.d.ts +16 -0
  408. package/src/View/Components/EntityRulesEditor/PredicatesEditor.js +86 -0
  409. package/src/View/Components/EntityRulesEditor/Utilities.d.ts +6 -0
  410. package/src/View/Components/EntityRulesEditor/Utilities.js +21 -0
  411. package/src/View/Components/EntityRulesEditor/index.d.ts +5 -9
  412. package/src/View/Components/EntityRulesEditor/index.js +44 -124
  413. package/src/View/Components/ExpressionWizard.js +2 -2
  414. package/src/View/Components/ExternalRenderer.js +3 -1
  415. package/src/View/Components/FilterForm/FilterForm.js +13 -18
  416. package/src/View/Components/FilterForm/ListBoxFilterForm.d.ts +2 -2
  417. package/src/View/Components/FilterForm/ListBoxFilterForm.js +2 -1
  418. package/src/View/Components/FilterForm/QuickFilterForm.js +15 -21
  419. package/src/View/Components/NewScopeComponent.js +3 -3
  420. package/src/View/Components/Panels/PanelWithButton.js +1 -5
  421. package/src/View/Components/Panels/PanelWithImage.js +1 -5
  422. package/src/View/Components/PermittedValuesSelector/PermitedValuesSelector.d.ts +1 -2
  423. package/src/View/Components/PermittedValuesSelector/PermitedValuesSelector.js +6 -7
  424. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +2 -2
  425. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupBody.d.ts +1 -1
  426. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupBody.js +1 -1
  427. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.d.ts +3 -2
  428. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +3 -16
  429. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.d.ts +1 -1
  430. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +12 -14
  431. package/src/View/Components/Popups/AdaptablePopup/Navigation.d.ts +1 -1
  432. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.d.ts +1 -1
  433. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +1 -1
  434. package/src/View/Components/Popups/AdaptablePopup/TopBar.d.ts +1 -1
  435. package/src/View/Components/Popups/AdaptablePopupAlert.js +1 -1
  436. package/src/View/Components/Popups/AdaptablePopupConfirmation.d.ts +2 -12
  437. package/src/View/Components/Popups/AdaptablePopupConfirmation.js +46 -39
  438. package/src/View/Components/Popups/AdaptablePopupPrompt.d.ts +1 -1
  439. package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +5 -5
  440. package/src/View/Components/Popups/AdaptableToaster.js +2 -0
  441. package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +1 -0
  442. package/src/View/Components/Popups/WindowPopups/windowFactory.js +4 -1
  443. package/src/View/Components/PredicateEditor/PredicateEditor.d.ts +10 -0
  444. package/src/View/Components/PredicateEditor/PredicateEditor.js +44 -0
  445. package/src/View/Components/RangesComponent.d.ts +11 -3
  446. package/src/View/Components/RangesComponent.js +121 -64
  447. package/src/View/Components/ScopeComponent.js +9 -9
  448. package/src/View/Components/Selectors/ColumnSelector.d.ts +1 -0
  449. package/src/View/Components/Selectors/ColumnSelector.js +2 -1
  450. package/src/View/Components/Selectors/ColumnValueSelector.js +3 -3
  451. package/src/View/Components/StyleComponent.d.ts +1 -0
  452. package/src/View/Components/StyleComponent.js +60 -37
  453. package/src/View/Components/ToolPanel/AdaptableToolPanel.d.ts +3 -9
  454. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +26 -11
  455. package/src/View/Components/ToolPanel/CustomToolPanelContent.js +1 -1
  456. package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +1 -1
  457. package/src/View/Components/ToolPanel/ToolPanelPopup.js +0 -1
  458. package/src/View/CustomSort/CustomSortSummary.js +1 -1
  459. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +2 -2
  460. package/src/View/CustomSort/Wizard/CustomSortSummaryWizard.js +1 -1
  461. package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +1 -1
  462. package/src/View/Dashboard/Dashboard.js +4 -3
  463. package/src/View/Dashboard/DashboardPopup.js +1 -1
  464. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +1 -1
  465. package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +10 -1
  466. package/src/View/DataSet/DataSetSelector.js +2 -2
  467. package/src/View/DataSet/DataSetStatusPanelPopover.js +1 -1
  468. package/src/View/DataSet/DataSetViewPanel.d.ts +1 -1
  469. package/src/View/DataSet/DataSetViewPanel.js +1 -1
  470. package/src/View/Export/ExportSelector.js +2 -2
  471. package/src/View/Export/ExportViewPanel.d.ts +1 -1
  472. package/src/View/Export/ExportViewPanel.js +5 -5
  473. package/src/View/Export/ReportExportDropdown.js +2 -2
  474. package/src/View/Export/Wizard/ReportNameWizardSection.js +11 -12
  475. package/src/View/Export/Wizard/ReportRowsWizardSection.js +1 -1
  476. package/src/View/Filter/FilterSummary.d.ts +1 -1
  477. package/src/View/Filter/FilterSummary.js +1 -1
  478. package/src/View/Filter/FilterViewPanel.d.ts +1 -1
  479. package/src/View/Filter/FilterViewPanel.js +1 -1
  480. package/src/View/FlashingCell/FlashingCellStyle.js +3 -3
  481. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +3 -3
  482. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +2 -2
  483. package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +6 -6
  484. package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +8 -6
  485. package/src/View/FlashingCell/Wizard/isValidFlashingCellRules.js +4 -3
  486. package/src/View/FormatColumn/FormatColumnSummary.js +1 -1
  487. package/src/View/FormatColumn/MoveFormatColumn.d.ts +7 -0
  488. package/src/View/FormatColumn/MoveFormatColumn.js +27 -0
  489. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +35 -29
  490. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.d.ts +8 -0
  491. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +28 -0
  492. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +23 -3
  493. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +2 -28
  494. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.d.ts +3 -3
  495. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +7 -302
  496. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +18 -26
  497. package/src/View/FormatColumn/Wizard/constants.d.ts +1 -0
  498. package/src/View/FormatColumn/Wizard/constants.js +4 -0
  499. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +7 -7
  500. package/src/View/GridInfo/ColumnInfoComponent.js +27 -19
  501. package/src/View/GridInfo/GridInfoPopup.js +16 -15
  502. package/src/View/Layout/LayoutRadioSelector.js +2 -2
  503. package/src/View/Layout/LayoutStatusBarSubPanelPopover.js +1 -1
  504. package/src/View/Layout/LayoutViewPanel.d.ts +1 -1
  505. package/src/View/Layout/LayoutViewPanel.js +1 -1
  506. package/src/View/Layout/PivotDetailsPopoup.d.ts +3 -0
  507. package/src/View/Layout/PivotDetailsPopoup.js +65 -0
  508. package/src/View/Layout/SaveLayoutButton.js +1 -1
  509. package/src/View/Layout/Wizard/Components/ColumnLabels.js +1 -1
  510. package/src/View/Layout/Wizard/LayoutWizard.js +9 -4
  511. package/src/View/Layout/Wizard/sections/AggregationsSection.js +5 -5
  512. package/src/View/Layout/Wizard/sections/ColumnsSection.js +12 -11
  513. package/src/View/Layout/Wizard/sections/FilterSection.d.ts +1 -0
  514. package/src/View/Layout/Wizard/sections/FilterSection.js +52 -3
  515. package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +2 -2
  516. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +2 -2
  517. package/src/View/Layout/Wizard/sections/SettingsSection.d.ts +2 -2
  518. package/src/View/Layout/Wizard/sections/SettingsSection.js +2 -2
  519. package/src/View/Layout/Wizard/sections/SortSection.js +2 -5
  520. package/src/View/License/LicenseWatermark.d.ts +1 -1
  521. package/src/View/PlusMinus/Wizard/PlusMinusRuleWizardSection.js +1 -1
  522. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.d.ts +1 -1
  523. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +5 -5
  524. package/src/View/Query/ExpandedQueryPopup.js +1 -1
  525. package/src/View/Query/QueryViewPanel.d.ts +1 -1
  526. package/src/View/Query/Wizard/NamedQueryExpressionWizardSection.js +1 -1
  527. package/src/View/Query/Wizard/NamedQuerySettingsWizardSection.js +1 -1
  528. package/src/View/QuickSearch/QuickSearchPopup.js +2 -2
  529. package/src/View/QuickSearch/QuickSearchViewPanel.d.ts +1 -1
  530. package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +5 -5
  531. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsGlue42.js +1 -1
  532. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.js +5 -5
  533. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.js +1 -1
  534. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +5 -5
  535. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.js +2 -2
  536. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsWizard.js +2 -2
  537. package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +3 -3
  538. package/src/View/Shortcut/Wizard/ShortcutWizard.js +1 -1
  539. package/src/View/SmartEdit/SmartEditPopup.js +3 -3
  540. package/src/View/SmartEdit/SmartEditViewPanel.js +1 -1
  541. package/src/View/SpecialColumnSettingsWizardStep.js +10 -10
  542. package/src/View/StateManagement/StateManagementPopup.js +4 -4
  543. package/src/View/StateManagement/components/ClearButton.d.ts +1 -1
  544. package/src/View/StateManagement/components/LoadButton.d.ts +1 -1
  545. package/src/View/StatusBar/StatusBarPanel.d.ts +4 -4
  546. package/src/View/StatusBar/StatusBarPanel.js +1 -1
  547. package/src/View/StatusBar/StatusBarPopup.js +1 -1
  548. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.d.ts +6 -0
  549. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +285 -0
  550. package/src/View/StyledColumn/Wizard/StyledColumnWizard.d.ts +7 -0
  551. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +106 -0
  552. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.d.ts +9 -0
  553. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +75 -0
  554. package/src/View/StyledColumn/Wizard/StyledColumnWizardSettingsSection.d.ts +8 -0
  555. package/src/View/StyledColumn/Wizard/StyledColumnWizardSettingsSection.js +38 -0
  556. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarColumnComparisonPreview.d.ts +5 -0
  557. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarColumnComparisonPreview.js +26 -0
  558. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarRangesPreview.d.ts +5 -0
  559. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarRangesPreview.js +23 -0
  560. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.d.ts +8 -0
  561. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.js +25 -0
  562. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.d.ts +9 -0
  563. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +263 -0
  564. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/index.d.ts +1 -0
  565. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/index.js +4 -0
  566. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.d.ts +7 -0
  567. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +68 -0
  568. package/src/View/SystemStatus/SystemStatusEntityRow.js +4 -6
  569. package/src/View/SystemStatus/SystemStatusViewPanel.d.ts +1 -1
  570. package/src/View/TeamSharing/SharedEntityDependencies.js +1 -1
  571. package/src/View/TeamSharing/SharedEntityObjectView.js +1 -1
  572. package/src/View/TeamSharing/TeamSharingApplyButton.js +1 -1
  573. package/src/View/Theme/ThemePopup.js +1 -1
  574. package/src/View/Theme/ThemeStatusPanelPopover.js +1 -1
  575. package/src/View/Wizard/OnePageAdaptableWizard.d.ts +4 -4
  576. package/src/View/Wizard/OnePageAdaptableWizard.js +3 -4
  577. package/src/View/Wizard/OnePageWizards.d.ts +3 -3
  578. package/src/View/Wizard/OnePageWizards.js +2 -2
  579. package/src/agGrid/ActionColumnRenderer.d.ts +3 -0
  580. package/src/agGrid/ActionColumnRenderer.js +98 -64
  581. package/src/agGrid/Adaptable.d.ts +43 -14
  582. package/src/agGrid/Adaptable.js +555 -409
  583. package/src/agGrid/CheckboxRenderer.js +1 -1
  584. package/src/agGrid/FilterWrapper.js +62 -19
  585. package/src/agGrid/FloatingFilterWrapper.d.ts +2 -2
  586. package/src/agGrid/FloatingFilterWrapper.js +70 -32
  587. package/src/agGrid/PercentBarRenderer.d.ts +2 -2
  588. package/src/agGrid/PercentBarRenderer.js +16 -15
  589. package/src/agGrid/agGridHelper.d.ts +2 -2
  590. package/src/agGrid/agGridHelper.js +31 -20
  591. package/src/agGrid/agGridMenuHelper.js +3 -3
  592. package/src/agGrid/createAgStatusPanelComponent.d.ts +2 -1
  593. package/src/agGrid/createAgStatusPanelComponent.js +20 -3
  594. package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +5 -1
  595. package/src/agGrid/editors/AdaptableDateEditor/index.js +87 -20
  596. package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +1 -1
  597. package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +3 -3
  598. package/src/agGrid/editors/AdaptableNumberEditor/index.js +81 -30
  599. package/src/agGrid/weightedAverage.js +19 -11
  600. package/src/bundle-dependencies/bundles/react-toastify/index.js +1 -1
  601. package/src/components/CheckBox/index.d.ts +1 -1
  602. package/src/components/CheckBox/index.js +7 -2
  603. package/src/components/ColorPicker/ColorPicker.d.ts +11 -0
  604. package/src/{View → components/ColorPicker}/ColorPicker.js +19 -6
  605. package/src/components/ColorPicker/index.d.ts +1 -0
  606. package/src/components/ColorPicker/index.js +4 -0
  607. package/src/components/Datepicker/index.d.ts +1 -1
  608. package/src/components/Datepicker/index.js +1 -1
  609. package/src/components/Dialog/index.d.ts +4 -2
  610. package/src/components/Dialog/index.js +2 -2
  611. package/src/components/DragAndDropContext/TabList.js +1 -1
  612. package/src/components/DragAndDropContext/UnusedPanel.js +3 -2
  613. package/src/components/DropdownButton/index.d.ts +21 -4
  614. package/src/components/DropdownButton/index.js +7 -8
  615. package/src/components/EllipsisContainer/index.js +1 -1
  616. package/src/components/ExpressionEditor/BaseEditorInput.d.ts +1 -1
  617. package/src/components/ExpressionEditor/BaseEditorInput.js +102 -36
  618. package/src/components/ExpressionEditor/EditorInput.js +1 -1
  619. package/src/components/ExpressionEditor/EditorInputWithWhereClause.js +1 -1
  620. package/src/components/ExpressionEditor/ExpressionFunctionDocumentation.js +5 -1
  621. package/src/components/ExpressionEditor/index.js +12 -58
  622. package/src/components/FormLayout/index.js +1 -1
  623. package/src/components/Input/index.d.ts +1 -1
  624. package/src/components/List/ListGroupItem/index.d.ts +4 -2
  625. package/src/components/Loader/Loader.d.ts +2 -2
  626. package/src/components/Logo/index.d.ts +1 -1
  627. package/src/components/Modal/index.d.ts +1 -1
  628. package/src/components/Modal/index.js +0 -2
  629. package/src/components/OverlayTrigger/Overlay.d.ts +1 -4
  630. package/src/components/OverlayTrigger/Overlay.js +3 -40
  631. package/src/components/OverlayTrigger/index.d.ts +4 -4
  632. package/src/components/OverlayTrigger/index.js +75 -50
  633. package/src/components/OverlayTrigger/utils.d.ts +1 -1
  634. package/src/components/OverlayTrigger/utils.js +4 -4
  635. package/src/components/PopupWithFooter.d.ts +2 -2
  636. package/src/components/ProgressIndicator/ProgressIndicator.d.ts +1 -1
  637. package/src/components/SelectList.d.ts +1 -1
  638. package/src/components/SimpleButton/index.d.ts +4 -7
  639. package/src/components/SimpleButton/index.js +5 -4
  640. package/src/components/SizedContainer/index.d.ts +1 -1
  641. package/src/components/StylePreview.d.ts +1 -1
  642. package/src/components/StylePreview.js +2 -1
  643. package/src/components/Tag/Tag.d.ts +1 -1
  644. package/src/components/Textarea/index.d.ts +6 -4
  645. package/src/components/ToggleButton/index.d.ts +1 -1
  646. package/src/components/Tooltip/index.d.ts +1 -3
  647. package/src/components/Tooltip/index.js +2 -2
  648. package/src/components/WindowModal/WindowModal.d.ts +1 -1
  649. package/src/components/icons/{conditional-style.d.ts → brush.d.ts} +0 -0
  650. package/src/components/icons/brush.js +7 -0
  651. package/src/components/icons/index.d.ts +3 -2
  652. package/src/components/icons/index.js +4 -2
  653. package/src/components/icons/layout.d.ts +2 -1
  654. package/src/components/icons/open-in-new.d.ts +3 -0
  655. package/src/components/icons/{conditional-style.js → open-in-new.js} +1 -1
  656. package/src/components/utils/useContainerScrollObserver/index.d.ts +1 -1
  657. package/src/env.js +1 -3
  658. package/src/metamodel/adaptable.metamodel.d.ts +561 -160
  659. package/src/metamodel/adaptable.metamodel.js +1 -1
  660. package/src/parser/src/parser.js +644 -382
  661. package/src/parser/src/types.d.ts +15 -3
  662. package/src/renderReactRoot.d.ts +5 -0
  663. package/src/renderReactRoot.js +56 -0
  664. package/src/types.d.ts +25 -17
  665. package/themes/dark.css +8 -4
  666. package/themes/dark.css.map +1 -0
  667. package/themes/light.css +4 -1
  668. package/themes/light.css.map +1 -0
  669. package/version.d.ts +1 -1
  670. package/version.js +1 -1
  671. package/src/AdaptableComponents.d.ts +0 -1
  672. package/src/AdaptableComponents.js +0 -5
  673. package/src/Api/ConditionalStyleApi.d.ts +0 -108
  674. package/src/Api/Implementation/ConditionalStyleApiImpl.d.ts +0 -29
  675. package/src/Api/Implementation/ConditionalStyleApiImpl.js +0 -98
  676. package/src/Api/Implementation/InternalApiImpl.js +0 -654
  677. package/src/Api/InternalApi.d.ts +0 -147
  678. package/src/Redux/ActionsReducers/ConditionalStyleRedux.d.ts +0 -49
  679. package/src/Redux/ActionsReducers/ConditionalStyleRedux.js +0 -95
  680. package/src/Strategy/ConditionalStyleModule.d.ts +0 -29
  681. package/src/Strategy/ConditionalStyleModule.js +0 -225
  682. package/src/Strategy/Interface/IConditionalStyleModule.d.ts +0 -6
  683. package/src/Strategy/Utilities/getStyleViewItems.d.ts +0 -2
  684. package/src/Strategy/Utilities/getStyleViewItems.js +0 -16
  685. package/src/Utilities/Helpers/CalendarHelper.d.ts +0 -25
  686. package/src/Utilities/Helpers/CalendarHelper.js +0 -342
  687. package/src/Utilities/Services/LicenseService.js +0 -1
  688. package/src/View/ColorPicker.d.ts +0 -14
  689. package/src/View/ConditionalStyle/ConditionalStyleSummary.d.ts +0 -25
  690. package/src/View/ConditionalStyle/ConditionalStyleSummary.js +0 -108
  691. package/src/View/ConditionalStyle/Wizard/ConditionalStyleRuleWizardSection.d.ts +0 -9
  692. package/src/View/ConditionalStyle/Wizard/ConditionalStyleRuleWizardSection.js +0 -42
  693. package/src/View/ConditionalStyle/Wizard/ConditionalStyleScopeWizardSection.d.ts +0 -8
  694. package/src/View/ConditionalStyle/Wizard/ConditionalStyleScopeWizardSection.js +0 -43
  695. package/src/View/ConditionalStyle/Wizard/ConditionalStyleSettingsWizardSettings.d.ts +0 -8
  696. package/src/View/ConditionalStyle/Wizard/ConditionalStyleSettingsWizardSettings.js +0 -29
  697. package/src/View/ConditionalStyle/Wizard/ConditionalStyleStyleWizardSection.d.ts +0 -8
  698. package/src/View/ConditionalStyle/Wizard/ConditionalStyleStyleWizardSection.js +0 -23
  699. package/src/View/ConditionalStyle/Wizard/ConditionalStyleWizard.d.ts +0 -6
  700. package/src/View/ConditionalStyle/Wizard/ConditionalStyleWizard.js +0 -114
  701. package/src/View/ConditionalStyle/Wizard/DEFAULT_PREDICATE_ID_FOR_CONDITIONAL_STYLE.d.ts +0 -1
  702. package/src/View/ConditionalStyle/Wizard/DEFAULT_PREDICATE_ID_FOR_CONDITIONAL_STYLE.js +0 -4
  703. package/src/components/OverlayTrigger/getOverlayStyle.d.ts +0 -13
  704. package/src/components/OverlayTrigger/getOverlayStyle.js +0 -56
@@ -15,4 +15,4 @@ export declare type DatepickerProps = Omit<BoxProps, 'value' | 'onChange' | 'def
15
15
  showWeekNumber?: boolean;
16
16
  showOutsideDays?: boolean;
17
17
  };
18
- export declare const Datepicker: React.ForwardRefExoticComponent<Pick<DatepickerProps, "max" | "required" | "type" | "data" | "default" | "high" | "low" | "key" | "id" | "media" | "height" | "width" | "start" | "open" | "name" | "alignSelf" | "backgroundColor" | "color" | "content" | "flex" | "fontSize" | "margin" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "opacity" | "order" | "padding" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "translate" | "value" | "hidden" | "cite" | "dir" | "form" | "label" | "p" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "acceptCharset" | "action" | "method" | "noValidate" | "target" | "accessKey" | "draggable" | "lang" | "className" | "prefix" | "children" | "contentEditable" | "inputMode" | "nonce" | "tabIndex" | "async" | "disabled" | "multiple" | "size" | "manifest" | "m" | "wrap" | "accept" | "allowFullScreen" | "allowTransparency" | "alt" | "as" | "autoComplete" | "autoFocus" | "autoPlay" | "capture" | "cellPadding" | "cellSpacing" | "charSet" | "challenge" | "checked" | "classID" | "cols" | "colSpan" | "controls" | "coords" | "crossOrigin" | "dateTime" | "defer" | "download" | "encType" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "frameBorder" | "headers" | "href" | "hrefLang" | "htmlFor" | "httpEquiv" | "integrity" | "keyParams" | "keyType" | "kind" | "list" | "loop" | "marginHeight" | "marginWidth" | "maxLength" | "mediaGroup" | "min" | "minLength" | "muted" | "optimum" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "contextMenu" | "placeholder" | "spellCheck" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "playsInline" | "poster" | "preload" | "readOnly" | "rel" | "reversed" | "rows" | "rowSpan" | "sandbox" | "scope" | "scoped" | "scrolling" | "seamless" | "selected" | "shape" | "sizes" | "src" | "srcDoc" | "srcLang" | "srcSet" | "step" | "useMap" | "wmode" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "mt" | "mb" | "ml" | "mr" | "my" | "marginY" | "mx" | "marginX" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "bg" | "css" | "showClearButton" | "onHide" | "showOutsideDays" | "showWeekNumber" | "datepickerButtons" | "dateProps"> & React.RefAttributes<HTMLInputElement>>;
18
+ export declare const Datepicker: React.ForwardRefExoticComponent<Pick<DatepickerProps, "max" | "required" | "type" | "data" | "default" | "high" | "low" | "key" | "id" | "media" | "height" | "width" | "start" | "open" | "name" | "alignContent" | "alignItems" | "alignSelf" | "backgroundColor" | "color" | "content" | "display" | "flex" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "justifyContent" | "justifyItems" | "justifySelf" | "letterSpacing" | "lineHeight" | "margin" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "order" | "overflow" | "overflowX" | "overflowY" | "padding" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "textAlign" | "translate" | "verticalAlign" | "value" | "hidden" | "cite" | "dir" | "form" | "label" | "p" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "acceptCharset" | "action" | "method" | "noValidate" | "target" | "accessKey" | "draggable" | "lang" | "className" | "prefix" | "children" | "contentEditable" | "inputMode" | "nonce" | "tabIndex" | "async" | "disabled" | "multiple" | "size" | "manifest" | "m" | "wrap" | "accept" | "allowFullScreen" | "allowTransparency" | "alt" | "as" | "autoComplete" | "autoFocus" | "autoPlay" | "capture" | "cellPadding" | "cellSpacing" | "charSet" | "challenge" | "checked" | "classID" | "cols" | "colSpan" | "controls" | "coords" | "crossOrigin" | "dateTime" | "defer" | "download" | "encType" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "frameBorder" | "headers" | "href" | "hrefLang" | "htmlFor" | "httpEquiv" | "integrity" | "keyParams" | "keyType" | "kind" | "list" | "loop" | "marginHeight" | "marginWidth" | "maxLength" | "mediaGroup" | "min" | "minLength" | "muted" | "optimum" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "contextMenu" | "placeholder" | "spellCheck" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "playsInline" | "poster" | "preload" | "readOnly" | "rel" | "reversed" | "rows" | "rowSpan" | "sandbox" | "scope" | "scoped" | "scrolling" | "seamless" | "selected" | "shape" | "sizes" | "src" | "srcDoc" | "srcLang" | "srcSet" | "step" | "useMap" | "wmode" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "bg" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "css" | "variant" | "tx" | "sx" | "onHide" | "showOutsideDays" | "showWeekNumber" | "showClearButton" | "datepickerButtons" | "dateProps"> & React.RefAttributes<HTMLInputElement>>;
@@ -87,7 +87,7 @@ exports.Datepicker = React.forwardRef((props, ref) => {
87
87
  }, accessLevel: 'Full' })) : null;
88
88
  const calendarButton = (React.createElement(SimpleButton_1.default, { disabled: disabled, variant: "text", icon: "calendar", tooltip: "Date", iconSize: 20, px: 0, py: 0, onClick: () => setVisible(true) }));
89
89
  return (React.createElement(rebass_1.Flex, null,
90
- React.createElement(OverlayTrigger_1.default, { visible: visible, alignHorizontal: 'left', render: () => (React.createElement(DatepickerOverlay, { onHide: () => setVisible(false), onKeyDown: (e) => {
90
+ React.createElement(OverlayTrigger_1.default, { visible: visible, render: () => (React.createElement(DatepickerOverlay, { onHide: () => setVisible(false), onKeyDown: (e) => {
91
91
  if (e.key === 'Escape' || e.key === 'Enter') {
92
92
  setVisible(false, e.key);
93
93
  }
@@ -16,10 +16,12 @@ declare type TypeProps = {
16
16
  onDismiss?: () => void;
17
17
  dismissOnClickOutside?: boolean;
18
18
  };
19
- export interface DialogProps extends BoxProps, TypeProps {
19
+ export interface DialogProps extends Omit<BoxProps, 'ref'>, TypeProps {
20
20
  }
21
21
  export declare type DialogRefType = {
22
22
  bringToFront: VoidFunction;
23
23
  };
24
- export declare const Dialog: React.FunctionComponent<DialogProps>;
24
+ export declare const Dialog: React.ForwardRefExoticComponent<DialogProps & {
25
+ children?: React.ReactNode;
26
+ } & React.RefAttributes<DialogRefType>>;
25
27
  export default Dialog;
@@ -14,7 +14,7 @@ const useAutoFocus_1 = tslib_1.__importDefault(require("../utils/useAutoFocus"))
14
14
  const icons_1 = require("../icons");
15
15
  const WindowModal_1 = require("../WindowModal");
16
16
  const baseClassName = 'ab-Dialog';
17
- exports.Dialog = React.forwardRef((props, ref) => {
17
+ exports.Dialog = React.forwardRef((props, dialogRef) => {
18
18
  let { modal, fixed, focusOnBrowserVisible = false, autoFocus = true, className, children, modalProps, dismissOnClickOutside = false, onDismiss, windowModal, windowModalProps } = props, boxProps = tslib_1.__rest(props, ["modal", "fixed", "focusOnBrowserVisible", "autoFocus", "className", "children", "modalProps", "dismissOnClickOutside", "onDismiss", "windowModal", "windowModalProps"]);
19
19
  modal = props.modal === undefined ? true : props.modal;
20
20
  fixed = props.fixed === undefined ? true : props.fixed;
@@ -76,7 +76,7 @@ exports.Dialog = React.forwardRef((props, ref) => {
76
76
  boxRef.current.focus();
77
77
  }
78
78
  }, [boxRef]);
79
- React.useImperativeHandle(ref, () => ({
79
+ React.useImperativeHandle(dialogRef, () => ({
80
80
  bringToFront,
81
81
  }));
82
82
  (0, react_1.useEffect)(() => {
@@ -42,7 +42,7 @@ function ToolbarItem({ toolbar, toolbarIndex, onRemove, disabled, }) {
42
42
  const { availableItems } = React.useContext(DragAndDropContext_1.DragAndDropContext);
43
43
  let currentItem = availableItems.find((t) => t.Id === toolbar);
44
44
  const title = currentItem ? currentItem.Title : toolbar;
45
- return (React.createElement(react_beautiful_dnd_1.Draggable, { isDragDisabled: disabled, draggableId: toolbar, index: toolbarIndex }, (provided, snapshot) => (React.createElement(rebass_1.Flex, Object.assign({ className: "ab-ModuleSelector__ToolbarItem", alignItems: "center", backgroundColor: snapshot.isDragging
45
+ return (React.createElement(react_beautiful_dnd_1.Draggable, { isDragDisabled: disabled, draggableId: toolbar, index: toolbarIndex }, (provided, snapshot) => (React.createElement(rebass_1.Flex, Object.assign({ className: "ab-ModuleSelector__ToolbarItem", alignItems: "center", mb: 1, pl: 1, backgroundColor: snapshot.isDragging
46
46
  ? 'var(--ab-dashboard-toolbar-drag__background)'
47
47
  : 'var(--ab-color-primarylight)', ref: provided.innerRef }, provided.draggableProps, provided.dragHandleProps, { style: provided.draggableProps.style }),
48
48
  React.createElement("div", { style: { flex: 1 } }, title),
@@ -4,10 +4,11 @@ exports.UnusedPanel = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const React = tslib_1.__importStar(require("react"));
6
6
  const react_beautiful_dnd_1 = require("react-beautiful-dnd");
7
+ const rebass_1 = require("rebass");
7
8
  const DragAndDropContext_1 = require("./DragAndDropContext");
8
9
  function UnusedPanel({ items, disabled, title, dragItemText, }) {
9
- return (React.createElement("div", { className: "ab-ModuleSelector__UnusedPanel", "data-name": "unusedpanel-items" },
10
- React.createElement("div", { style: { padding: 'var(--ab-space-2)' } },
10
+ return (React.createElement(rebass_1.Box, { pb: 1, mb: 2, className: "ab-ModuleSelector__UnusedPanel", "data-name": "unusedpanel-items" },
11
+ React.createElement(rebass_1.Box, { p: 2 },
11
12
  React.createElement("b", null, title),
12
13
  " (",
13
14
  dragItemText,
@@ -5,7 +5,7 @@ import { ExpandedProps } from './useExpanded';
5
5
  import DropdownButtonItem from './DropdownButtonItem';
6
6
  import { OverlayTriggerProps } from '../OverlayTrigger';
7
7
  export declare const DROPDOWN_ICON: JSX.Element;
8
- export declare type DropdownButtonProps = BoxProps & React.HTMLProps<HTMLElement> & SimpleButtonProps & ExpandedProps & {
8
+ export declare type DropdownButtonProps = React.PropsWithChildren<Omit<BoxProps, 'ref'>> & Omit<React.HTMLProps<HTMLElement>, 'ref'> & SimpleButtonProps & ExpandedProps & {
9
9
  collapseOnItemClick?: boolean;
10
10
  columns?: string[];
11
11
  overlayProps?: OverlayTriggerProps;
@@ -23,7 +23,24 @@ export declare type DropdownButtonProps = BoxProps & React.HTMLProps<HTMLElement
23
23
  isItemDisabled?: (item: DropdownButtonItem) => boolean | undefined;
24
24
  showToggleIcon?: boolean;
25
25
  };
26
- declare const DropdownButton: React.FunctionComponent<DropdownButtonProps> & {
27
- ref?: React.Ref<HTMLButtonElement>;
28
- };
26
+ declare const DropdownButton: React.ForwardRefExoticComponent<Omit<BoxProps, "ref"> & {
27
+ children?: React.ReactNode;
28
+ } & Omit<React.HTMLProps<HTMLElement>, "ref"> & SimpleButtonProps & ExpandedProps & {
29
+ collapseOnItemClick?: boolean;
30
+ columns?: string[];
31
+ overlayProps?: OverlayTriggerProps;
32
+ listOffset?: number;
33
+ items?: DropdownButtonItem[];
34
+ idProperty?: string;
35
+ showClearButton?: boolean;
36
+ focusOnClear?: boolean;
37
+ onClear?: () => void;
38
+ clearButtonProps?: SimpleButtonProps;
39
+ listItemClassName?: string;
40
+ listStyle?: React.CSSProperties;
41
+ listMinWidth?: number;
42
+ listItemStyle?: React.CSSProperties | ((item: DropdownButtonItem, index: number) => React.CSSProperties);
43
+ isItemDisabled?: (item: DropdownButtonItem) => boolean | undefined;
44
+ showToggleIcon?: boolean;
45
+ } & React.RefAttributes<HTMLButtonElement>>;
29
46
  export default DropdownButton;
@@ -16,7 +16,7 @@ const baseClassName = 'ab-DropdownButton';
16
16
  const defaultListItemStyle = {
17
17
  padding: 'var(--ab-cmp-dropdownbutton-list-item__padding)',
18
18
  };
19
- const DropdownButton = React.forwardRef((props, ref) => {
19
+ const DropdownButton = React.forwardRef((props, theRef) => {
20
20
  let { columns, overlayProps, listOffset = 10, collapseOnItemClick = true, focusOnClear = true, idProperty = 'id', isItemDisabled, items, children, listMinWidth = 100, listStyle, listItemStyle, listItemClassName, constrainTo, showClearButton = false, onClear, clearButtonProps, onExpand, onCollapse, showToggleIcon = true } = props, domProps = tslib_1.__rest(props, ["columns", "overlayProps", "listOffset", "collapseOnItemClick", "focusOnClear", "idProperty", "isItemDisabled", "items", "children", "listMinWidth", "listStyle", "listItemStyle", "listItemClassName", "constrainTo", "showClearButton", "onClear", "clearButtonProps", "onExpand", "onCollapse", "showToggleIcon"]);
21
21
  isItemDisabled = isItemDisabled || ((item) => item.disabled);
22
22
  if (!columns) {
@@ -79,7 +79,6 @@ const DropdownButton = React.forwardRef((props, ref) => {
79
79
  }
80
80
  const dropdownButtonClassName = props.className;
81
81
  const className = (0, join_1.default)(props.className, baseClassName);
82
- //const
83
82
  const positionerRef = (0, react_1.useRef)(null);
84
83
  const { expanded, toggle, setExpanded, positionInfo } = (0, useExpanded_1.default)(props, positionerRef);
85
84
  const { maxHeight: maxListHeight, maxWidth: maxListWidth } = positionInfo;
@@ -103,19 +102,19 @@ const DropdownButton = React.forwardRef((props, ref) => {
103
102
  hasClearButton ? clearButton : null,
104
103
  icon));
105
104
  const buttonRef = (0, react_1.useRef)(null);
106
- return (React.createElement(OverlayTrigger_1.default, Object.assign({ visible: expanded, constrainTo: constrainTo, anchor: "vertical", targetOffset: listOffset, render: () => {
105
+ return (React.createElement(OverlayTrigger_1.default, Object.assign({ visible: expanded, targetOffset: listOffset, render: () => {
107
106
  return (React.createElement("div", { "data-name": `${dropdownButtonClassName}`, style: listStyle, className: `${baseClassName}__list` }, content));
108
- } }, overlayProps, { target: domProps.tooltip ? (node) => node.previousSibling : undefined }),
107
+ } }, overlayProps),
109
108
  React.createElement(SimpleButton_1.default, Object.assign({ iconPosition: "end" }, (showToggleIcon && { icon, paddingRight: 0 }), domProps, { ref: (btn) => {
110
109
  buttonRef.current = btn;
111
- if (!ref) {
110
+ if (!theRef) {
112
111
  return;
113
112
  }
114
- if (typeof ref === 'function') {
115
- ref(btn);
113
+ if (typeof theRef === 'function') {
114
+ theRef(btn);
116
115
  }
117
116
  else {
118
- ref.current = btn;
117
+ theRef.current = btn;
119
118
  }
120
119
  }, style: domProps.style, className: className, onClick: (e) => {
121
120
  if (domProps.onClick) {
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EllipsisContainer = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const React = tslib_1.__importStar(require("react"));
6
- const rebass_1 = require("rebass");
7
6
  const react_1 = require("react");
7
+ const rebass_1 = require("rebass");
8
8
  const useLatest_1 = require("../utils/useLatest");
9
9
  const usePrevious_1 = tslib_1.__importDefault(require("../utils/usePrevious"));
10
10
  const Container = ({ children, index, hidden, observerRef, }) => {
@@ -7,7 +7,7 @@ interface BaseEditorInputProps {
7
7
  onChange: (value: string) => void;
8
8
  disabled?: boolean;
9
9
  onSelectedFunctionChange: (expressionFunction: ExpressionFunction | null) => void;
10
- expressionFunctions: ExpressionFunctionMap;
10
+ expressionFunctions: ExpressionFunctionMap<string>;
11
11
  editorButtons: OperatorEditorButton[];
12
12
  testData: any;
13
13
  placeholder?: string;
@@ -19,6 +19,11 @@ const DocumentationLinkConstants_1 = require("../../Utilities/Constants/Document
19
19
  const LoggingHelper_1 = require("../../Utilities/Helpers/LoggingHelper");
20
20
  const icons_1 = require("../icons");
21
21
  const AdaptableContext_1 = require("../../View/AdaptableContext");
22
+ const join_1 = tslib_1.__importDefault(require("../utils/join"));
23
+ const ExpressionFunctionDocumentation_1 = require("./ExpressionFunctionDocumentation");
24
+ const Tag_1 = require("../Tag");
25
+ const StringExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/StringExtensions"));
26
+ const Radio_1 = tslib_1.__importDefault(require("../Radio"));
22
27
  const VarEditorButton = () => {
23
28
  var _a, _b;
24
29
  const adaptable = (0, AdaptableContext_1.useAdaptable)();
@@ -31,6 +36,93 @@ const VarEditorButton = () => {
31
36
  return (React.createElement(EditorButton_1.default, { data: varString, key: varOption }, varString));
32
37
  })));
33
38
  };
39
+ const FunctionsDropdown = ({ expressionFunctions, baseClassName }) => {
40
+ const [currentFunctionCategory, setCurrentFunctionCategory] = React.useState('all');
41
+ const dropdownRef = React.useRef(null);
42
+ const [overFunction, setOverFunction] = React.useState();
43
+ React.useEffect(() => {
44
+ setOverFunction(null);
45
+ }, [currentFunctionCategory]);
46
+ const groupedFunctions = React.useMemo(() => {
47
+ return Object.keys(expressionFunctions).reduce((acc, key) => {
48
+ const functionDef = expressionFunctions[key];
49
+ // filter
50
+ if (currentFunctionCategory !== 'all' && functionDef.category !== currentFunctionCategory) {
51
+ return acc;
52
+ }
53
+ if (functionDef.category) {
54
+ acc[functionDef.category] = Object.assign(Object.assign({}, acc[functionDef.category]), { [key]: functionDef });
55
+ }
56
+ else {
57
+ acc.noCategory[key] = functionDef;
58
+ }
59
+ return acc;
60
+ }, { noCategory: {} });
61
+ }, [currentFunctionCategory]);
62
+ const handleFunctionCategoryChange = React.useCallback((type) => (event) => {
63
+ setCurrentFunctionCategory(type);
64
+ }, [currentFunctionCategory]);
65
+ const categoryOptions = React.useMemo(() => {
66
+ const categoryOptions = Object.keys(expressionFunctions)
67
+ .reduce((acc, functionName) => {
68
+ const funcitonExpression = expressionFunctions[functionName];
69
+ if (!acc.includes(funcitonExpression.category)) {
70
+ acc.push(funcitonExpression.category);
71
+ }
72
+ return acc;
73
+ }, [])
74
+ .map((category) => ({
75
+ label: StringExtensions_1.default.Humanize(category),
76
+ value: category,
77
+ }));
78
+ return [{ label: 'All', value: 'all' }, ...categoryOptions];
79
+ }, [expressionFunctions]);
80
+ const hidePopup = () => {
81
+ dropdownRef.current.hide();
82
+ setOverFunction(null);
83
+ };
84
+ /**
85
+ * Hide when:
86
+ * - mouse leaves
87
+ * - a function is inserted
88
+ */
89
+ return (React.createElement(OverlayTrigger_1.default, { ref: dropdownRef, showEvent: "mouseenter", hideEvent: "mouseleave", targetOffset: 5, render: () => (React.createElement(rebass_1.Flex, { className: `${baseClassName}__dropdown-functions-list-wrapper`, flexDirection: "column", onMouseLeave: () => hidePopup() },
90
+ React.createElement(rebass_1.Flex, { pl: 2, style: { gap: 10 } }, categoryOptions.map((option) => {
91
+ return (React.createElement(Radio_1.default, { onFocus: (event) => {
92
+ event.preventDefault();
93
+ event.stopPropagation();
94
+ }, onClick: handleFunctionCategoryChange(option.value), checked: currentFunctionCategory === option.value }, option.label));
95
+ })),
96
+ React.createElement(rebass_1.Flex, null,
97
+ React.createElement(rebass_1.Flex, { className: `${baseClassName}__dropdown-functions-list`, "data-name": "expression-dropdown-fuctions-list", flexDirection: "column", p: 2, maxHeight: '50vh' }, Object.keys(groupedFunctions).map((groupName) => {
98
+ const functionsInGroup = Object.keys(groupedFunctions[groupName]);
99
+ if (functionsInGroup.length === 0) {
100
+ return React.createElement(React.Fragment, null);
101
+ }
102
+ const getEditorButtonData = (functionName) => {
103
+ // handle special cases
104
+ if (functionName === 'CASE') {
105
+ return `CASE <caseValue> WHEN <whenValue> THEN <thenValue> ELSE <defaultValue> END`;
106
+ }
107
+ return `${functionName}()`;
108
+ };
109
+ return (React.createElement(rebass_1.Box, { mb: 2, key: groupName },
110
+ React.createElement(Tag_1.Tag, { mb: 1 }, StringExtensions_1.default.Humanize(groupName)),
111
+ functionsInGroup.map((functionName) => (React.createElement(rebass_1.Box, { key: functionName, onMouseEnter: () => setOverFunction(functionName), onClick: () => hidePopup() }, functionName === 'VAR' ? (React.createElement(VarEditorButton, { key: functionName })) : (React.createElement(EditorButton_1.default, { data: getEditorButtonData(functionName), key: functionName, mr: 1 }, functionName)))))));
112
+ })),
113
+ React.createElement(rebass_1.Box, { className: `${baseClassName}__dropdown-functions-description`, p: 2, width: 600, maxWidth: "30vw" }, overFunction ? (React.createElement(React.Fragment, null,
114
+ React.createElement(Tag_1.Tag, null, overFunction),
115
+ React.createElement(ExpressionFunctionDocumentation_1.ExpressionFunctionDocumentation, { expressionFunction: expressionFunctions[overFunction] }))) : (React.createElement(Tag_1.Tag, { padding: 20 },
116
+ React.createElement("ul", null,
117
+ React.createElement("li", null,
118
+ "Hover over a Function to learn more",
119
+ React.createElement("br", null),
120
+ React.createElement("br", null)),
121
+ React.createElement("li", null, "Select a Function to add to the Expression in the Editor")))))))) },
122
+ React.createElement(SimpleButton_1.default, { "data-name": "expression-dropdown", icon: "arrow-down", iconPosition: 'end', mr: 1 },
123
+ React.createElement(rebass_1.Flex, { marginRight: 1, fontSize: 2 },
124
+ React.createElement(icons_1.Icon, { name: "equation" })))));
125
+ };
34
126
  function BaseEditorInput(props) {
35
127
  const { expressionFunctions, testData, style, type } = props;
36
128
  const { ref: textAreaRefCallback, selectionStart, selectionEnd } = (0, useSelectionRange_1.useSelectionRange)();
@@ -39,6 +131,7 @@ function BaseEditorInput(props) {
39
131
  let evaluationError;
40
132
  let expressionError;
41
133
  let selectedFunctionName;
134
+ const baseClassName = 'ab-ExpressionEditorInput';
42
135
  const buildParserExceptionMessage = (e) => {
43
136
  const parserExceptionSummary = 'Invalid expression is not parsable';
44
137
  if (!e.message) {
@@ -101,55 +194,28 @@ function BaseEditorInput(props) {
101
194
  props.onSelectedFunctionChange(selectedFunctionName ? expressionFunctions[selectedFunctionName] : null);
102
195
  }
103
196
  }, [selectedFunctionName]);
104
- const functionsDropdown = (React.createElement(OverlayTrigger_1.default, { render: () => (React.createElement(rebass_1.Flex, { "data-name": "expression-dropdown-list", flexDirection: "column", p: 2, style: {
105
- fontSize: 'var(--ab-font-size-2)',
106
- border: '1px solid var(--ab-color-primarydark)',
107
- borderRadius: 'var(--ab__border-radius)',
108
- background: 'var(--ab-color-primarylight)',
109
- zIndex: 1000,
110
- maxHeight: 300,
111
- overflow: 'auto',
112
- } }, Object.keys(expressionFunctions)
113
- .filter((functionName) => !expressionFunctions[functionName].isHiddenFromMenu)
114
- .map((functionName) => functionName === 'VAR' ? (React.createElement(VarEditorButton, { key: functionName })) : (React.createElement(EditorButton_1.default, { data: `${functionName}()`, key: functionName, mr: 1 }, functionName))))), showEvent: "focus", hideEvent: "blur" },
115
- React.createElement(SimpleButton_1.default, { "data-name": "expression-dropdown", icon: "arrow-down", iconPosition: 'end', mr: 1 },
116
- React.createElement(rebass_1.Flex, { marginRight: 1, style: { fontSize: 'var(--ab-font-size-2)' } },
117
- React.createElement(icons_1.Icon, { name: 'equation', style: { marginTop: 0 } })))));
118
197
  const operatorButtons = props.editorButtons
119
198
  .filter((editorButtonDef) => !!expressionFunctions[editorButtonDef.functionName])
120
199
  .map((editorButtonDef) => (React.createElement(EditorButton_1.default, { key: `${editorButtonDef.functionName}-operator`, data: editorButtonDef.data, icon: editorButtonDef.icon }, !editorButtonDef.icon && (editorButtonDef.text || editorButtonDef.functionName))));
121
200
  const showDocumentationLink = props.api.internalApi.isDocumentationLinksDisplayed();
122
201
  return (React.createElement(React.Fragment, null,
123
- React.createElement(rebass_1.Flex, { "data-name": "expression-toolbar", py: 2, mb: 2, flexWrap: "wrap", style: {
124
- background: 'var(--ab-color-primarylight)',
125
- borderRadius: 'var(--ab__border-radius)',
126
- '--ab-overlay-horizontal-align': 'left',
127
- width: '100%',
128
- marginTop: 5,
129
- } },
202
+ React.createElement(rebass_1.Flex, { className: baseClassName, "data-name": "expression-toolbar", py: 2, mb: 2, mt: 2, flexWrap: "wrap" },
130
203
  React.createElement(rebass_1.Flex, { style: { flex: 1, marginLeft: 5 }, flexWrap: "wrap" },
131
- functionsDropdown,
204
+ React.createElement(FunctionsDropdown, { expressionFunctions: expressionFunctions, baseClassName: baseClassName }),
132
205
  operatorButtons),
133
206
  showDocumentationLink && (React.createElement(rebass_1.Flex, { alignItems: "flex-start" },
134
- React.createElement(ButtonInfo_1.ButtonInfo, { style: {
135
- color: 'var(--ab-color-text-on-add)',
136
- fill: 'var(--ab-color-text-on-add)',
137
- background: 'var(--ab-color-action-add)',
138
- marginRight: 5,
139
- }, tooltip: 'Learn how to use the Expression Editor', onClick: () => window.open(DocumentationLinkConstants_1.ExpressionEditorDocsLink, '_blank') })))),
140
- React.createElement(Textarea_1.default, { "data-name": `expression-input-${type}`, ref: textAreaRefCallback, value: props.value || '', placeholder: props.placeholder || 'Create Query', disabled: props.disabled || false, className: "ab-ExpressionEditor__textarea", autoFocus: true, spellCheck: "false", onChange: (event) => {
207
+ React.createElement(ButtonInfo_1.ButtonInfo, { mr: 2, tooltip: 'Learn how to use the Expression Editor', onClick: () => window.open(DocumentationLinkConstants_1.ExpressionEditorDocsLink, '_blank') })))),
208
+ React.createElement(Textarea_1.default, { "data-name": `expression-input-${type}`, ref: textAreaRefCallback, value: props.value || '', placeholder: props.placeholder || 'Create Query', disabled: props.disabled || false, className: (0, join_1.default)('ab-ExpressionEditor__textarea', // left for backwards compatibility
209
+ `${baseClassName}__textarea`), autoFocus: true, spellCheck: "false", onChange: (event) => {
141
210
  props.onChange(event.target.value);
142
- }, style: Object.assign({ width: '100%', minHeight: 100, fontFamily: 'monospace', resize: 'vertical', fontSize: '1rem', padding: 'var(--ab-space-2)' }, style) }),
143
- props.isFullExpression !== true && (React.createElement(HelpBlock_1.default, { mt: 2, mb: 2, p: 2, style: { fontSize: 'var(--ab-font-size-3)' } },
211
+ }, style: style }),
212
+ props.isFullExpression !== true && (React.createElement(HelpBlock_1.default, { mt: 2, mb: 2, p: 2, fontSize: 3 },
144
213
  "This Query must resolve to a ",
145
214
  React.createElement("b", null, "boolean "),
146
215
  "(i.e. true / false) value")),
147
- expressionError && (React.createElement(ErrorBox_1.default, { style: { whiteSpace: 'pre-wrap' }, mt: 2 }, expressionError)),
216
+ expressionError && (React.createElement(ErrorBox_1.default, { width: "100%", style: { whiteSpace: 'pre-wrap' }, mt: 2 }, expressionError)),
148
217
  evaluationError && (React.createElement(ErrorBox_1.default, { style: { whiteSpace: 'pre-wrap' }, mt: 2 }, `${evaluationError.expressionFnName} ${evaluationError.message}`)),
149
- !props.hideResultPreview && result !== undefined && (React.createElement(rebass_1.Box, { "data-name": "expression-editor-feedback", mt: 2, p: 2, style: {
150
- background: 'var(--ab-color-primarylight)',
151
- borderRadius: 'var(--ab__border-radius)',
152
- } },
218
+ !props.hideResultPreview && result !== undefined && (React.createElement(rebass_1.Box, { className: `${baseClassName}__editor-feedback`, "data-name": "expression-editor-feedback", mt: 2, p: 2 },
153
219
  React.createElement("pre", { style: { whiteSpace: 'pre-wrap', margin: 0 } },
154
220
  "Result (using Test Data): ",
155
221
  React.createElement("b", null, JSON.stringify(result)))))));
@@ -13,7 +13,7 @@ const editorButtonsCumulativeAggregatedScalar_1 = require("./editorButtonsCumula
13
13
  function EditorInput(props) {
14
14
  const moduleExpressionFunctions = props.api.internalApi
15
15
  .getQueryLanguageService()
16
- .getModuleExpressionFunctions(props.module);
16
+ .getModuleExpressionFunctionsMap(props.module);
17
17
  const getFilteredAggregatedExpressionFunctions = (availableAggregatedExpressionFunctions, type) => {
18
18
  const sourceExpressionFunctions = type === 'aggregatedScalar'
19
19
  ? aggregatedScalarExpressionFunctions_1.aggregatedExpressionFunctions
@@ -15,7 +15,7 @@ const editorButtonsAggregatedBoolean_1 = require("./editorButtonsAggregatedBoole
15
15
  function EditorInputWithWhereClause(props) {
16
16
  const moduleExpressionFunctions = props.api.internalApi
17
17
  .getQueryLanguageService()
18
- .getModuleExpressionFunctions(props.module);
18
+ .getModuleExpressionFunctionsMap(props.module);
19
19
  const reactiveExpressionFns = props.type === 'observable'
20
20
  ? moduleExpressionFunctions.observableFunctions
21
21
  : moduleExpressionFunctions.aggregatedBooleanFunctions;
@@ -4,6 +4,7 @@ exports.ExpressionFunctionDocumentation = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const rebass_1 = require("rebass");
6
6
  const React = tslib_1.__importStar(require("react"));
7
+ const Tag_1 = require("../Tag");
7
8
  const ExpressionFunctionDocumentation = (props) => {
8
9
  return props.expressionFunction ? (React.createElement(rebass_1.Box, { "data-name": "expression-editor-documentation", my: 2, p: 2, style: {
9
10
  background: 'var(--ab-color-primary)',
@@ -17,6 +18,9 @@ const ExpressionFunctionDocumentation = (props) => {
17
18
  props.expressionFunction.examples && (React.createElement(rebass_1.Box, { "data-name": "expression-editor-documentation-examples" },
18
19
  React.createElement("b", null, "Examples"),
19
20
  React.createElement("ul", null, props.expressionFunction.examples.map((example, index) => (React.createElement("li", { key: index },
20
- React.createElement("pre", { style: { whiteSpace: 'pre-wrap', margin: 0 } }, example))))))))) : null;
21
+ React.createElement("pre", { style: { whiteSpace: 'pre-wrap', margin: 0 } }, example))))))),
22
+ props.expressionFunction.returnType && (React.createElement(rebass_1.Box, { "data-name": "expression-editor-documentation-examples" },
23
+ React.createElement("b", null, "Return Type"),
24
+ React.createElement(Tag_1.Tag, null, props.expressionFunction.returnType))))) : null;
21
25
  };
22
26
  exports.ExpressionFunctionDocumentation = ExpressionFunctionDocumentation;
@@ -31,6 +31,7 @@ function ExpressionEditor(props) {
31
31
  const [data, setData] = (0, react_1.useState)(props.initialData);
32
32
  const [showColumnIds, setShowColumnIds] = (0, react_1.useState)(false);
33
33
  const [showNamedQueries, setShowNamedQueries] = (0, react_1.useState)(false);
34
+ const baseClassName = `ab-ExpressionEditor`;
34
35
  const [selectedFunction, setSelectedFunction] = (0, react_1.useState)(null);
35
36
  const [expressionText, setExpressionText] = (0, react_1.useState)('');
36
37
  const { namedQuery, setNamedQuery } = (0, NamedQueryContext_1.useNamedQueryContext)();
@@ -49,50 +50,12 @@ function ExpressionEditor(props) {
49
50
  const queryableColumns = type === 'scalar' || type === 'boolean' || type === 'aggregatedScalar'
50
51
  ? props.columns
51
52
  : props.columns.filter((c) => !props.api.columnApi.isCalculatedColumn(c.columnId));
52
- // borrowed from https://github.com/ag-grid/ag-grid/blob/v27.2.1/community-modules/core/src/ts/utils/object.ts#L205
53
53
  const getColValue = (column) => {
54
- var _a, _b;
55
- const columnValueKey = (_a = column.field) !== null && _a !== void 0 ? _a : column.columnId;
56
- const isColumnValueContainsDots = (_b = column.field) === null || _b === void 0 ? void 0 : _b.includes('.');
57
- // if no '.', then it's not a deep value
58
- if (!isColumnValueContainsDots) {
59
- return data[columnValueKey];
60
- }
61
- // otherwise it is a deep value, so need to dig for it
62
- const fields = columnValueKey.split('.');
63
- let currentObject = data;
64
- for (let i = 0; i < fields.length; i++) {
65
- if (currentObject == null) {
66
- return undefined;
67
- }
68
- currentObject = currentObject[fields[i]];
69
- }
70
- return currentObject;
54
+ return props.api.internalApi.getValueUsingField(data, column);
71
55
  };
72
- // borrowed from https://github.com/ag-grid/ag-grid/blob/v27.2.1/community-modules/core/src/ts/valueService/valueService.ts#L217
73
56
  const updateColValue = (rowData, column, newValue) => {
74
- var _a, _b;
75
- const columnValueKey = (_a = column.field) !== null && _a !== void 0 ? _a : column.columnId;
76
- const isColumnValueContainsDots = (_b = column.field) === null || _b === void 0 ? void 0 : _b.includes('.');
77
- // if no '.', then it's not a deep value
78
- if (!isColumnValueContainsDots) {
79
- rowData[columnValueKey] = newValue;
80
- }
81
- else {
82
- // otherwise it is a deep value, so need to dig for it
83
- const fieldPieces = columnValueKey.split('.');
84
- let currentObject = rowData;
85
- while (fieldPieces.length > 0 && currentObject) {
86
- const fieldPiece = fieldPieces.shift();
87
- if (fieldPieces.length === 0) {
88
- currentObject[fieldPiece] = newValue;
89
- }
90
- else {
91
- currentObject = currentObject[fieldPiece];
92
- }
93
- }
94
- }
95
- return Object.assign({}, rowData);
57
+ const updatedRowData = props.api.internalApi.setValueUsingField(rowData, column, newValue);
58
+ return Object.assign({}, updatedRowData);
96
59
  };
97
60
  const getColDateValue = (column) => {
98
61
  const colValue = getColValue(column);
@@ -102,7 +65,7 @@ function ExpressionEditor(props) {
102
65
  };
103
66
  const [searchInputValue, setSearchInputValue] = React.useState('');
104
67
  const dataTableEditor = (React.createElement(React.Fragment, null,
105
- React.createElement(rebass_1.Flex, { flexDirection: "column", alignItems: "start", style: { marginTop: 2 } },
68
+ React.createElement(rebass_1.Flex, { className: `${baseClassName}__columns-list`, flexDirection: "column", alignItems: "start", style: { marginTop: 2 } },
106
69
  React.createElement(CheckBox_1.CheckBox, { checked: showColumnIds, onChange: (checked) => setShowColumnIds(checked), style: {
107
70
  float: 'right',
108
71
  margin: 0,
@@ -157,28 +120,24 @@ function ExpressionEditor(props) {
157
120
  setSelectedFunction,
158
121
  textAreaRef,
159
122
  } },
160
- React.createElement("div", { "data-name": "expression-editor", style: Object.assign({ flex: 1, overflow: 'auto', display: 'flex', paddingLeft: 'var(--ab-space-2)' }, props.style) },
123
+ React.createElement(rebass_1.Flex, { className: baseClassName, flex: 1, "data-name": "expression-editor-wrapper", pl: 2, style: props.style },
161
124
  React.createElement(rebass_1.Flex, { flex: 1, style: { minHeight: 0 }, flexDirection: "column", onFocus: (event) => {
162
125
  if (event.target.tagName === 'TEXTAREA') {
163
126
  textAreaRef.current = event.target;
164
127
  }
165
128
  } },
166
- React.createElement(rebass_1.Flex, { flex: 1, flexDirection: "row", "data-name": "expression-editor", style: { fontSize: 'var(--ab-font-size-2)', minHeight: 0, flex: 1 } },
129
+ React.createElement(rebass_1.Flex, { flex: 1, flexDirection: "row", "data-name": "expression-editor", fontSize: 2, style: { minHeight: 0 } },
167
130
  React.createElement(rebass_1.Flex, { flex: 1, paddingRight: 2, style: { overflow: 'auto' }, "data-name": "expression-builder", flexDirection: "column" },
168
131
  editorInput,
169
132
  StringExtensions_1.default.IsNotNullOrEmpty(expressionText === null || expressionText === void 0 ? void 0 : expressionText.trim()) && (React.createElement(ExpressionFunctionDocumentation_1.ExpressionFunctionDocumentation, { expressionFunction: selectedFunction })),
170
133
  /* displayed for advanced queries (observable&Aggregation) to give the users a starting point */
171
134
  StringExtensions_1.default.IsNullOrEmpty(expressionText === null || expressionText === void 0 ? void 0 : expressionText.trim()) && renderQueryHints(type),
172
- showDocumentationLinks && (React.createElement(HelpBlock_1.default, { "data-name": "query-documentation", mt: 2, mb: 2, style: { fontSize: 'var(--ab-font-size-3)' } },
173
- React.createElement(ButtonInfo_1.ButtonInfo, { mr: 2, style: {
174
- color: 'var(--ab-color-text-on-add)',
175
- fill: 'var(--ab-color-text-on-add)',
176
- background: 'var(--ab-color-action-add)',
177
- }, onClick: () => window.open(queryDocumentationLink, '_blank') }),
135
+ showDocumentationLinks && (React.createElement(HelpBlock_1.default, { "data-name": "query-documentation", mt: 2, mb: 2, fontSize: 3 },
136
+ React.createElement(ButtonInfo_1.ButtonInfo, { mr: 2, onClick: () => window.open(queryDocumentationLink, '_blank') }),
178
137
  "See ",
179
138
  StringExtensions_1.default.CapitaliseFirstLetter(type),
180
139
  " Query documentation for more details and examples")),
181
- React.createElement("div", { style: { flex: 1 } }),
140
+ React.createElement(rebass_1.Box, { flex: 1 }),
182
141
  allowSaveNamedQuery &&
183
142
  props.api.internalApi
184
143
  .getModuleService()
@@ -202,13 +161,8 @@ function ExpressionEditor(props) {
202
161
  BooleanExpression: expressionText,
203
162
  });
204
163
  } })) : null))),
205
- React.createElement(rebass_1.Box, { "data-name": "expression-column-picker", pb: 2, paddingLeft: 2, style: {
206
- overflow: 'auto',
207
- minWidth: 220,
208
- height: '100%',
209
- paddingRight: 'var(--ab-space-2)',
210
- } },
211
- ArrayExtensions_1.default.IsNotNullOrEmpty(props.namedQueries) && (React.createElement(rebass_1.Flex, { flexDirection: "row", alignItems: "start", style: { padding: 3, marginTop: 5 }, backgroundColor: "primarylight" },
164
+ React.createElement(rebass_1.Box, { className: `${baseClassName}__column-picker`, "data-name": "expression-column-picker", pb: 2, paddingLeft: 2, pr: 2 },
165
+ ArrayExtensions_1.default.IsNotNullOrEmpty(props.namedQueries) && (React.createElement(rebass_1.Flex, { flexDirection: "row", alignItems: "start", p: 1, mt: 2, backgroundColor: "primarylight" },
212
166
  React.createElement(Radio_1.default, { checked: !showNamedQueries, onChange: (checked) => setShowNamedQueries(!checked), style: { marginRight: 10 } }, "Columns"),
213
167
  React.createElement(Radio_1.default, { checked: showNamedQueries, onChange: (checked) => setShowNamedQueries(checked), style: { marginLeft: 10, whiteSpace: 'nowrap' } }, "Named Queries"))),
214
168
  showNamedQueries ? React.createElement("div", null, namedQueries) : React.createElement("div", null, dataTableEditor)))))));
@@ -73,7 +73,7 @@ const FormRow = (props) => {
73
73
  }
74
74
  if (props.as != null || column.component != null) {
75
75
  const Cmp = column.component;
76
- value = (React.createElement(Cmp, { style: Object.assign(Object.assign({}, column.style), { gridColumn: columnIndex + 1, gridRow: rowIndex + 1 }), className: column.className }, value));
76
+ value = (React.createElement(Cmp, { "data-name": props.dataName, style: Object.assign(Object.assign({}, column.style), { gridColumn: columnIndex + 1, gridRow: rowIndex + 1 }), className: column.className }, value));
77
77
  }
78
78
  return typeof value === 'string' ? value : React.cloneElement(value, { key: columnName });
79
79
  });