@adaptabletools/adaptable 20.3.0-canary.2 → 21.0.0-canary.0

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 (427) hide show
  1. package/agGrid.d.ts +2 -1
  2. package/agGrid.js +2 -1
  3. package/base.css +36 -15
  4. package/base.css.map +1 -1
  5. package/icons/add-circle.svg +1 -0
  6. package/icons/add.svg +1 -0
  7. package/icons/alert.svg +1 -0
  8. package/icons/align-center.svg +1 -0
  9. package/icons/align-justify.svg +1 -0
  10. package/icons/align-left.svg +1 -0
  11. package/icons/align-right.svg +1 -0
  12. package/icons/arrow-down-long.svg +1 -0
  13. package/icons/arrow-down.svg +1 -0
  14. package/icons/arrow-expand.svg +1 -0
  15. package/icons/arrow-left.svg +1 -0
  16. package/icons/arrow-right.svg +1 -0
  17. package/icons/arrow-up-long.svg +1 -0
  18. package/icons/arrow-up.svg +1 -0
  19. package/icons/assignment.svg +1 -0
  20. package/icons/badge.svg +1 -0
  21. package/icons/bold.svg +1 -0
  22. package/icons/boolean-list.svg +1 -0
  23. package/icons/brain.svg +1 -0
  24. package/icons/broadcast.svg +1 -0
  25. package/icons/brush.svg +1 -0
  26. package/icons/building.svg +1 -0
  27. package/icons/calculated-column.svg +1 -0
  28. package/icons/calendar.svg +1 -0
  29. package/icons/call.svg +1 -0
  30. package/icons/case-lower.svg +1 -0
  31. package/icons/case-sentence.svg +1 -0
  32. package/icons/case-upper.svg +1 -0
  33. package/icons/cells.svg +1 -0
  34. package/icons/chart.svg +1 -0
  35. package/icons/chat.svg +1 -0
  36. package/icons/check-circle.svg +1 -0
  37. package/icons/check.svg +1 -0
  38. package/icons/checked.svg +1 -0
  39. package/icons/clipboard.svg +1 -0
  40. package/icons/clone.svg +1 -0
  41. package/icons/close.svg +1 -0
  42. package/icons/cloud-upload.svg +1 -0
  43. package/icons/collapse-all.svg +1 -0
  44. package/icons/collapse.svg +1 -0
  45. package/icons/color-palette.svg +1 -0
  46. package/icons/column-add.svg +1 -0
  47. package/icons/column-outline.svg +1 -0
  48. package/icons/columns.svg +1 -0
  49. package/icons/comment.svg +1 -0
  50. package/icons/comments.svg +1 -0
  51. package/icons/contact.svg +1 -0
  52. package/icons/contains.svg +1 -0
  53. package/icons/copy.svg +1 -0
  54. package/icons/csv.svg +1 -0
  55. package/icons/dashboard.svg +1 -0
  56. package/icons/data-set.svg +1 -0
  57. package/icons/date-range.svg +1 -0
  58. package/icons/delete.svg +1 -0
  59. package/icons/division.svg +1 -0
  60. package/icons/dock.svg +1 -0
  61. package/icons/dollar.svg +1 -0
  62. package/icons/download.svg +1 -0
  63. package/icons/downloaded.svg +1 -0
  64. package/icons/drag.svg +1 -0
  65. package/icons/edit-table.svg +1 -0
  66. package/icons/edit.svg +1 -0
  67. package/icons/ends-with.svg +1 -0
  68. package/icons/equals.svg +1 -0
  69. package/icons/equation.svg +1 -0
  70. package/icons/error.svg +1 -0
  71. package/icons/excel.svg +1 -0
  72. package/icons/expand-all.svg +1 -0
  73. package/icons/expand.svg +1 -0
  74. package/icons/exponent.svg +1 -0
  75. package/icons/export-data.svg +1 -0
  76. package/icons/export.svg +1 -0
  77. package/icons/fast-backward.svg +1 -0
  78. package/icons/fast-forward.svg +1 -0
  79. package/icons/fdc3.svg +1 -0
  80. package/icons/filled-circle.svg +1 -0
  81. package/icons/filter-list.svg +1 -0
  82. package/icons/filter-off.svg +1 -0
  83. package/icons/filter.svg +1 -0
  84. package/icons/flag.svg +1 -0
  85. package/icons/folder-open.svg +1 -0
  86. package/icons/folder-shared.svg +1 -0
  87. package/icons/folder.svg +1 -0
  88. package/icons/function.svg +1 -0
  89. package/icons/gradient.svg +1 -0
  90. package/icons/greater-than-or-equal.svg +1 -0
  91. package/icons/greater-than.svg +1 -0
  92. package/icons/grid-filter.svg +1 -0
  93. package/icons/grid-info.svg +1 -0
  94. package/icons/grid.svg +1 -0
  95. package/icons/history.svg +1 -0
  96. package/icons/home.svg +1 -0
  97. package/icons/horizontal-lines.svg +1 -0
  98. package/icons/import-export.svg +1 -0
  99. package/icons/import.svg +1 -0
  100. package/icons/info.svg +1 -0
  101. package/icons/interactions.svg +1 -0
  102. package/icons/italic.svg +1 -0
  103. package/icons/json.svg +1 -0
  104. package/icons/laptop.svg +1 -0
  105. package/icons/less-than-or-equal.svg +1 -0
  106. package/icons/less-than.svg +1 -0
  107. package/icons/lightning.svg +1 -0
  108. package/icons/link.svg +1 -0
  109. package/icons/list.svg +1 -0
  110. package/icons/logout.svg +1 -0
  111. package/icons/mail.svg +1 -0
  112. package/icons/menu.svg +1 -0
  113. package/icons/minus.svg +1 -0
  114. package/icons/money.svg +1 -0
  115. package/icons/multiplication.svg +1 -0
  116. package/icons/newpage.svg +1 -0
  117. package/icons/news.svg +1 -0
  118. package/icons/not-contains.svg +1 -0
  119. package/icons/not-equal.svg +1 -0
  120. package/icons/note.svg +1 -0
  121. package/icons/open-in-new.svg +1 -0
  122. package/icons/order.svg +1 -0
  123. package/icons/organisation.svg +1 -0
  124. package/icons/overline.svg +1 -0
  125. package/icons/paperclip.svg +1 -0
  126. package/icons/pause.svg +1 -0
  127. package/icons/percent-tag.svg +1 -0
  128. package/icons/percent.svg +1 -0
  129. package/icons/person.svg +1 -0
  130. package/icons/pie-chart.svg +1 -0
  131. package/icons/play.svg +1 -0
  132. package/icons/plus.svg +1 -0
  133. package/icons/quote.svg +1 -0
  134. package/icons/refresh.svg +1 -0
  135. package/icons/regex.svg +1 -0
  136. package/icons/reminder.svg +1 -0
  137. package/icons/resume.svg +1 -0
  138. package/icons/rows.svg +1 -0
  139. package/icons/save.svg +1 -0
  140. package/icons/schedule.svg +1 -0
  141. package/icons/science.svg +1 -0
  142. package/icons/search-table.svg +1 -0
  143. package/icons/search.svg +1 -0
  144. package/icons/select-all.svg +1 -0
  145. package/icons/select-fwd.svg +1 -0
  146. package/icons/select-off.svg +1 -0
  147. package/icons/settings.svg +1 -0
  148. package/icons/sort-asc.svg +1 -0
  149. package/icons/sort-desc.svg +1 -0
  150. package/icons/spanner.svg +1 -0
  151. package/icons/spark-line.svg +1 -0
  152. package/icons/starts-with.svg +1 -0
  153. package/icons/statusbar.svg +1 -0
  154. package/icons/stop.svg +1 -0
  155. package/icons/strikethrough.svg +1 -0
  156. package/icons/styled-grid.svg +1 -0
  157. package/icons/sync.svg +1 -0
  158. package/icons/tab-unselected.svg +1 -0
  159. package/icons/target.svg +1 -0
  160. package/icons/theme.svg +1 -0
  161. package/icons/traffic-lights.svg +1 -0
  162. package/icons/triangle-down.svg +1 -0
  163. package/icons/triangle-up.svg +1 -0
  164. package/icons/unchecked.svg +1 -0
  165. package/icons/underline.svg +1 -0
  166. package/icons/undo.svg +1 -0
  167. package/icons/unfilled-circle.svg +1 -0
  168. package/icons/upload.svg +1 -0
  169. package/icons/visibility-off-bold.svg +1 -0
  170. package/icons/visibility-off.svg +1 -0
  171. package/icons/visibility-on-bold.svg +1 -0
  172. package/icons/visibility-on.svg +1 -0
  173. package/icons/warning.svg +1 -0
  174. package/index.css +32 -15
  175. package/index.css.map +1 -1
  176. package/package.json +2 -2
  177. package/src/AdaptableInterfaces/IAdaptable.d.ts +10 -5
  178. package/src/AdaptableOptions/ColumnOptions.d.ts +71 -187
  179. package/src/AdaptableOptions/DefaultAdaptableOptions.js +3 -2
  180. package/src/AdaptableOptions/EditOptions.d.ts +4 -7
  181. package/src/AdaptableOptions/FilterOptions.d.ts +50 -15
  182. package/src/AdaptableOptions/LayoutOptions.d.ts +8 -21
  183. package/src/AdaptableOptions/PredicateOptions.d.ts +1 -1
  184. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +1 -1
  185. package/src/AdaptableState/Common/AdaptableColumn.d.ts +7 -0
  186. package/src/AdaptableState/Common/AdaptablePredicate.js +2 -2
  187. package/src/AdaptableState/Common/CustomWindowConfig.d.ts +11 -11
  188. package/src/AdaptableState/Common/ExtendedLayout.d.ts +50 -0
  189. package/src/AdaptableState/Common/ProgressIndicatorConfig.d.ts +1 -4
  190. package/src/AdaptableState/Common/RowScope.d.ts +1 -1
  191. package/src/AdaptableState/FormatColumnState.d.ts +16 -9
  192. package/src/AdaptableState/InternalState.d.ts +1 -1
  193. package/src/AdaptableState/LayoutState.d.ts +26 -6
  194. package/src/AdaptableState/Selection/GridCell.d.ts +32 -0
  195. package/src/AdaptableState/StyledColumnState.d.ts +2 -2
  196. package/src/Api/AlertApi.d.ts +5 -11
  197. package/src/Api/ColumnApi.d.ts +17 -1
  198. package/src/Api/ColumnFilterApi.d.ts +32 -2
  199. package/src/Api/CustomSortApi.d.ts +5 -10
  200. package/src/Api/FlashingCellApi.d.ts +10 -6
  201. package/src/Api/FormatColumnApi.d.ts +8 -18
  202. package/src/Api/Implementation/AlertApiImpl.d.ts +6 -9
  203. package/src/Api/Implementation/AlertApiImpl.js +7 -6
  204. package/src/Api/Implementation/ApiBase.d.ts +2 -12
  205. package/src/Api/Implementation/ApiBase.js +5 -5
  206. package/src/Api/Implementation/ColumnApiImpl.d.ts +5 -2
  207. package/src/Api/Implementation/ColumnApiImpl.js +59 -23
  208. package/src/Api/Implementation/ColumnFilterApiImpl.d.ts +7 -1
  209. package/src/Api/Implementation/ColumnFilterApiImpl.js +76 -3
  210. package/src/Api/Implementation/ColumnScopeApiImpl.js +10 -2
  211. package/src/Api/Implementation/CustomSortApiImpl.d.ts +5 -10
  212. package/src/Api/Implementation/CustomSortApiImpl.js +6 -4
  213. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +7 -6
  214. package/src/Api/Implementation/FlashingCellApiImpl.js +11 -8
  215. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +8 -18
  216. package/src/Api/Implementation/FormatColumnApiImpl.js +10 -9
  217. package/src/Api/Implementation/LayoutApiImpl.d.ts +3 -2
  218. package/src/Api/Implementation/LayoutApiImpl.js +101 -7
  219. package/src/Api/Implementation/LayoutHelpers.d.ts +1 -0
  220. package/src/Api/Implementation/LayoutHelpers.js +23 -4
  221. package/src/Api/Implementation/PlusMinusApiImpl.d.ts +7 -5
  222. package/src/Api/Implementation/PlusMinusApiImpl.js +10 -7
  223. package/src/Api/Implementation/ScheduleApiImpl.d.ts +9 -16
  224. package/src/Api/Implementation/ScheduleApiImpl.js +15 -17
  225. package/src/Api/Implementation/ShortcutApiImpl.d.ts +5 -6
  226. package/src/Api/Implementation/ShortcutApiImpl.js +7 -8
  227. package/src/Api/Implementation/StyledColumnApiImpl.d.ts +7 -8
  228. package/src/Api/Implementation/StyledColumnApiImpl.js +12 -9
  229. package/src/Api/Implementation/TeamSharingApiImpl.js +1 -4
  230. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +2 -1
  231. package/src/Api/Implementation/UserInterfaceApiImpl.js +10 -9
  232. package/src/Api/Internal/AdaptableInternalApi.d.ts +2 -0
  233. package/src/Api/Internal/AdaptableInternalApi.js +3 -0
  234. package/src/Api/Internal/AlertInternalApi.d.ts +6 -6
  235. package/src/Api/Internal/AlertInternalApi.js +10 -10
  236. package/src/Api/Internal/ColumnFilterInternalApi.d.ts +13 -0
  237. package/src/Api/Internal/ColumnFilterInternalApi.js +93 -1
  238. package/src/Api/Internal/ColumnInternalApi.d.ts +2 -1
  239. package/src/Api/Internal/ColumnInternalApi.js +6 -2
  240. package/src/Api/Internal/DashboardInternalApi.js +1 -1
  241. package/src/Api/Internal/EntitlementInternalApi.d.ts +1 -0
  242. package/src/Api/Internal/EntitlementInternalApi.js +8 -0
  243. package/src/Api/Internal/ExportInternalApi.js +1 -1
  244. package/src/Api/Internal/FlashingCellInternalApi.js +1 -1
  245. package/src/Api/Internal/FormatColumnInternalApi.d.ts +12 -13
  246. package/src/Api/Internal/FormatColumnInternalApi.js +45 -16
  247. package/src/Api/Internal/GridInternalApi.d.ts +7 -10
  248. package/src/Api/Internal/GridInternalApi.js +76 -27
  249. package/src/Api/Internal/LayoutInternalApi.d.ts +5 -5
  250. package/src/Api/Internal/LayoutInternalApi.js +42 -5
  251. package/src/Api/Internal/PredicateInternalApi.d.ts +2 -6
  252. package/src/Api/Internal/PredicateInternalApi.js +4 -6
  253. package/src/Api/Internal/UserInterfaceInternalApi.d.ts +1 -0
  254. package/src/Api/Internal/UserInterfaceInternalApi.js +10 -3
  255. package/src/Api/LayoutApi.d.ts +7 -2
  256. package/src/Api/PlusMinusApi.d.ts +11 -7
  257. package/src/Api/ScheduleApi.d.ts +9 -16
  258. package/src/Api/ShortcutApi.d.ts +5 -6
  259. package/src/Api/StyledColumnApi.d.ts +10 -7
  260. package/src/Api/UserInterfaceApi.d.ts +5 -6
  261. package/src/Redux/ActionsReducers/InternalRedux.d.ts +4 -4
  262. package/src/Redux/ActionsReducers/InternalRedux.js +7 -7
  263. package/src/Redux/ActionsReducers/StyledColumnRedux.d.ts +7 -0
  264. package/src/Redux/ActionsReducers/StyledColumnRedux.js +13 -0
  265. package/src/Redux/Store/AdaptableStore.js +10 -10
  266. package/src/Strategy/AdaptableModuleBase.d.ts +14 -4
  267. package/src/Strategy/AdaptableModuleBase.js +46 -9
  268. package/src/Strategy/AlertModule.d.ts +3 -4
  269. package/src/Strategy/AlertModule.js +7 -4
  270. package/src/Strategy/CalculatedColumnModule.js +2 -2
  271. package/src/Strategy/CellSummaryModule.js +2 -2
  272. package/src/Strategy/ChartingModule.d.ts +3 -1
  273. package/src/Strategy/ChartingModule.js +9 -3
  274. package/src/Strategy/ColumnFilterModule.d.ts +1 -1
  275. package/src/Strategy/ColumnFilterModule.js +31 -15
  276. package/src/Strategy/ColumnInfoModule.js +2 -2
  277. package/src/Strategy/CommentModule.d.ts +1 -1
  278. package/src/Strategy/CommentModule.js +3 -3
  279. package/src/Strategy/CustomSortModule.d.ts +3 -4
  280. package/src/Strategy/CustomSortModule.js +2 -2
  281. package/src/Strategy/DashboardModule.js +1 -1
  282. package/src/Strategy/DataChangeHistoryModule.d.ts +2 -1
  283. package/src/Strategy/DataChangeHistoryModule.js +3 -10
  284. package/src/Strategy/DataImportModule.js +3 -3
  285. package/src/Strategy/ExportModule.js +1 -1
  286. package/src/Strategy/Fdc3Module.js +1 -1
  287. package/src/Strategy/FlashingCellModule.d.ts +3 -5
  288. package/src/Strategy/FlashingCellModule.js +3 -3
  289. package/src/Strategy/FormatColumnModule.d.ts +3 -4
  290. package/src/Strategy/FormatColumnModule.js +4 -2
  291. package/src/Strategy/FreeTextColumnModule.d.ts +1 -1
  292. package/src/Strategy/FreeTextColumnModule.js +2 -2
  293. package/src/Strategy/GridInfoModule.js +2 -2
  294. package/src/Strategy/Interface/IModule.d.ts +7 -3
  295. package/src/Strategy/LayoutModule.js +11 -11
  296. package/src/Strategy/NoteModule.d.ts +1 -1
  297. package/src/Strategy/NoteModule.js +3 -3
  298. package/src/Strategy/PlusMinusModule.d.ts +3 -4
  299. package/src/Strategy/PlusMinusModule.js +2 -2
  300. package/src/Strategy/QuickSearchModule.d.ts +2 -0
  301. package/src/Strategy/QuickSearchModule.js +9 -0
  302. package/src/Strategy/ScheduleModule.d.ts +3 -4
  303. package/src/Strategy/ScheduleModule.js +2 -2
  304. package/src/Strategy/SettingsPanelModule.js +1 -1
  305. package/src/Strategy/ShortcutModule.d.ts +3 -4
  306. package/src/Strategy/ShortcutModule.js +2 -2
  307. package/src/Strategy/StatusBarModule.d.ts +3 -2
  308. package/src/Strategy/StatusBarModule.js +6 -3
  309. package/src/Strategy/StyledColumnModule.d.ts +3 -4
  310. package/src/Strategy/StyledColumnModule.js +2 -2
  311. package/src/Strategy/SystemStatusModule.js +2 -2
  312. package/src/Strategy/TeamSharingModule.d.ts +1 -1
  313. package/src/Strategy/TeamSharingModule.js +5 -2
  314. package/src/Strategy/ToolPanelModule.d.ts +1 -1
  315. package/src/Strategy/ToolPanelModule.js +1 -4
  316. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsTargetItems.d.ts +5 -0
  317. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsTargetItems.js +12 -0
  318. package/src/Strategy/Utilities/Layout/getLayoutFilterViewItems.js +1 -1
  319. package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +1 -0
  320. package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -0
  321. package/src/Utilities/Extensions/ArrayExtensions.d.ts +15 -2
  322. package/src/Utilities/Extensions/ArrayExtensions.js +62 -13
  323. package/src/Utilities/ObjectFactory.js +3 -2
  324. package/src/Utilities/Services/AnnotationsService.js +1 -1
  325. package/src/Utilities/Services/Interface/IModuleService.d.ts +2 -1
  326. package/src/Utilities/Services/ModuleService.d.ts +3 -3
  327. package/src/Utilities/Services/ModuleService.js +19 -7
  328. package/src/Utilities/getScopeViewItems.js +5 -2
  329. package/src/View/AdaptableView.js +3 -1
  330. package/src/View/ColumnInfo/ColumnInfo.js +9 -3
  331. package/src/View/Components/AdaptableIconSelector/index.js +2 -3
  332. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.d.ts +0 -1
  333. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.js +2 -3
  334. package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.d.ts +0 -2
  335. package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.js +4 -7
  336. package/src/View/Components/ColumnFilter/ColumnFilter.js +11 -4
  337. package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +1 -1
  338. package/src/View/Components/ColumnFilter/FloatingFilter.js +1 -2
  339. package/src/View/Components/ColumnFilter/LayoutColumnFilter.js +1 -1
  340. package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +2 -2
  341. package/src/View/Components/ColumnFilter/components/FloatingFilterValues.js +2 -2
  342. package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.d.ts +1 -1
  343. package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.js +2 -2
  344. package/src/View/Components/ColumnFilter/utils.d.ts +2 -2
  345. package/src/View/Components/ColumnFilter/utils.js +6 -1
  346. package/src/View/Components/EntityRulesEditor/index.js +1 -2
  347. package/src/View/Components/FilterForm/ListBoxFilterForm.js +1 -1
  348. package/src/View/Components/NewScopeComponent.js +5 -1
  349. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +6 -6
  350. package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -2
  351. package/src/View/Components/Selectors/BulkUpdateValueSelector.js +1 -1
  352. package/src/View/Components/Selectors/ColumnSelector.js +1 -1
  353. package/src/View/Components/Selectors/FieldSelector.js +1 -1
  354. package/src/View/Components/Selectors/PermittedValuesSelector.d.ts +1 -0
  355. package/src/View/Components/Selectors/PermittedValuesSelector.js +2 -2
  356. package/src/View/Dashboard/Dashboard.js +2 -2
  357. package/src/View/Dashboard/DashboardPopup.js +3 -1
  358. package/src/View/Dashboard/PinnedDashboard.js +1 -1
  359. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +9 -21
  360. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +59 -22
  361. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +4 -0
  362. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +1 -40
  363. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +13 -12
  364. package/src/View/FormatColumn/Wizard/FormatColumnTargetWizardSection.d.ts +8 -0
  365. package/src/View/FormatColumn/Wizard/FormatColumnTargetWizardSection.js +31 -0
  366. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +18 -4
  367. package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +1 -1
  368. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +1 -1
  369. package/src/View/Layout/TransposedPopup.js +2 -2
  370. package/src/View/Layout/Wizard/sections/ColumnsSection.js +64 -9
  371. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +5 -5
  372. package/src/View/StatusBar/AdaptableStatusBar.js +1 -4
  373. package/src/View/StatusBar/StatusBarPopup.js +1 -1
  374. package/src/View/Theme/ThemeSelector.js +1 -1
  375. package/src/agGrid/AdaptableAgGrid.d.ts +11 -7
  376. package/src/agGrid/AdaptableAgGrid.js +256 -218
  377. package/src/agGrid/AdaptableFilterHandler.d.ts +18 -0
  378. package/src/agGrid/AdaptableFilterHandler.js +61 -0
  379. package/src/agGrid/AgGridAdapter.d.ts +3 -7
  380. package/src/agGrid/AgGridAdapter.js +13 -46
  381. package/src/agGrid/AgGridColumnAdapter.d.ts +3 -3
  382. package/src/agGrid/AgGridColumnAdapter.js +86 -40
  383. package/src/agGrid/AgGridExportAdapter.js +1 -1
  384. package/src/agGrid/AgGridFilterAdapter.d.ts +2 -0
  385. package/src/agGrid/AgGridFilterAdapter.js +48 -0
  386. package/src/agGrid/AgGridFloatingFilterAdapter.d.ts +2 -0
  387. package/src/agGrid/{FloatingFilterWrapper.js → AgGridFloatingFilterAdapter.js} +24 -35
  388. package/src/agGrid/AgGridModulesAdapter.d.ts +15 -0
  389. package/src/agGrid/AgGridModulesAdapter.js +66 -0
  390. package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +1 -1
  391. package/src/agGrid/editors/AdaptablePercentageEditor/InternalAdaptablePercentageEditor.js +1 -1
  392. package/src/components/Dialog/index.js +1 -1
  393. package/src/components/Dropdown/Arrows.js +2 -2
  394. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.d.ts +1 -1
  395. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +2 -2
  396. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -2
  397. package/src/components/FileDroppable/index.js +1 -1
  398. package/src/components/IconSelector/IconSelector.d.ts +2 -2
  399. package/src/components/OverlayTrigger/index.js +1 -1
  400. package/src/components/Select/Select.d.ts +1 -1
  401. package/src/components/Select/Select.js +116 -24
  402. package/src/components/icons/DefaultIcon.d.ts +0 -1
  403. package/src/components/icons/DefaultIcon.js +0 -6
  404. package/src/env.js +2 -2
  405. package/src/layout-manager/src/LayoutManagerModel.d.ts +6 -10
  406. package/src/layout-manager/src/index.d.ts +11 -3
  407. package/src/layout-manager/src/index.js +302 -87
  408. package/src/layout-manager/src/normalizeLayoutModel.js +7 -4
  409. package/src/layout-manager/src/simplifyLayoutModel.js +4 -4
  410. package/src/metamodel/adaptable.metamodel.d.ts +172 -20
  411. package/src/metamodel/adaptable.metamodel.js +1 -1
  412. package/src/migration/AdaptableUpgradeHelper.js +2 -0
  413. package/src/migration/VersionUpgrade17.js +1 -1
  414. package/src/migration/VersionUpgrade20.js +1 -0
  415. package/src/migration/VersionUpgrade21.d.ts +6 -0
  416. package/src/migration/VersionUpgrade21.js +24 -0
  417. package/src/types.d.ts +8 -9
  418. package/tsconfig.esm.tsbuildinfo +1 -1
  419. package/src/AdaptableState/Common/ExtendedLayoutInfo.d.ts +0 -27
  420. package/src/agGrid/FilterWrapper.d.ts +0 -2
  421. package/src/agGrid/FilterWrapper.js +0 -131
  422. package/src/agGrid/FloatingFilterWrapper.d.ts +0 -2
  423. package/src/agGrid/agGridModules.d.ts +0 -3
  424. package/src/agGrid/agGridModules.js +0 -15
  425. package/src/agGrid/getAgGridFilterNotifyModelFn.d.ts +0 -2
  426. package/src/agGrid/getAgGridFilterNotifyModelFn.js +0 -16
  427. /package/src/AdaptableState/Common/{ExtendedLayoutInfo.js → ExtendedLayout.js} +0 -0
@@ -11,23 +11,26 @@ export class StyledColumnApiImpl extends ApiBase {
11
11
  return this.getAdaptableState().StyledColumn;
12
12
  }
13
13
  getStyledColumns(config) {
14
- return (this.handleLayoutAssociatedObjects(this.getStyledColumnState().StyledColumns, 'StyledColumn', config) ?? []);
14
+ return (this.handleLayoutExtensionObjects(this.getStyledColumnState().StyledColumns, 'StyledColumn', config) ?? []);
15
15
  }
16
- getStyledColumnById(id) {
17
- return this.getStyledColumns().find((styledcolumn) => styledcolumn.Uuid === id);
16
+ getStyledColumnById(id, config) {
17
+ return this.getStyledColumns(config).find((styledcolumn) => styledcolumn.Uuid === id);
18
18
  }
19
- getStyledColumnForColumnId(columnId) {
20
- return this.getStyledColumns().find((styledcolumn) => styledcolumn.ColumnId === columnId);
19
+ getStyledColumnForColumnId(columnId, config) {
20
+ return this.getStyledColumns(config).find((styledcolumn) => styledcolumn.ColumnId === columnId);
21
21
  }
22
- getActiveStyledColumns() {
23
- return this.getStyledColumns().filter((styledcolumn) => !styledcolumn.IsSuspended);
22
+ getActiveStyledColumns(config) {
23
+ return this.getStyledColumns(config).filter((styledcolumn) => !styledcolumn.IsSuspended);
24
24
  }
25
- getSuspendedStyledColumns() {
26
- return this.getStyledColumns().filter((styledcolumn) => styledcolumn.IsSuspended);
25
+ getSuspendedStyledColumns(config) {
26
+ return this.getStyledColumns(config).filter((styledcolumn) => styledcolumn.IsSuspended);
27
27
  }
28
28
  deleteStyledColumn(styledColumn) {
29
29
  this.dispatchAction(StyledColumnRedux.StyledColumnDelete(styledColumn));
30
30
  }
31
+ deleteAllStyledColumns() {
32
+ this.dispatchAction(StyledColumnRedux.StyledColumnDeleteAll());
33
+ }
31
34
  addStyledColumn(styledColumn) {
32
35
  this.dispatchAction(StyledColumnRedux.StyledColumnAdd(styledColumn));
33
36
  }
@@ -42,10 +42,7 @@ export class TeamSharingApiImpl extends ApiBase {
42
42
  return true;
43
43
  }
44
44
  isTeamSharingAvailable() {
45
- return (!this.getEntitlementApi().isModuleHiddenEntitlement(ModuleConstants.TeamSharingModuleId) &&
46
- this.getTeamSharingOptions()?.enableTeamSharing &&
47
- !!this.getTeamSharingOptions()?.loadSharedEntities &&
48
- !!this.getTeamSharingOptions()?.persistSharedEntities);
45
+ return this._adaptable.ModuleService.isAdapTableModulePresent('TeamSharing');
49
46
  }
50
47
  hasTeamSharingFullRights() {
51
48
  return this.getEntitlementApi().isModuleFullEntitlement(ModuleConstants.TeamSharingModuleId);
@@ -1,4 +1,5 @@
1
1
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
2
+ import { CustomIcon } from '../../AdaptableOptions/UserInterfaceOptions';
2
3
  import { AdaptableStyle } from '../../AdaptableState/Common/AdaptableStyle';
3
4
  import { AdaptableModule, AdaptableObject, AdaptableObjectTag, CustomWindowConfig } from '../../types';
4
5
  import { UserInterfaceInternalApi } from '../Internal/UserInterfaceInternalApi';
@@ -10,13 +11,13 @@ export declare class UserInterfaceApiImpl extends ApiBase implements UserInterfa
10
11
  private showProgressIndicatorTimeout;
11
12
  constructor(_adaptable: IAdaptable);
12
13
  getColorPalette(): string[];
14
+ getCustomIcons(): CustomIcon[];
13
15
  getStyleClassNames(): string[] | undefined;
14
16
  getEditableCellStyle(): AdaptableStyle | undefined;
15
17
  getEditedCellStyle(): AdaptableStyle | undefined;
16
18
  getReadOnlyCellStyle(): AdaptableStyle | undefined;
17
19
  getAdaptableObjectTags(): AdaptableObjectTag[] | undefined;
18
20
  getAdaptableObjectsWithTag(tag: AdaptableObjectTag, adaptableModule?: AdaptableModule): AdaptableObject[] | undefined;
19
- getCustomIconDefinition(iconName: string): import("../../types").AdaptableIcon | import("../../types").CustomIcon;
20
21
  showProgressIndicator(config: ProgressIndicatorConfig): {
21
22
  close: () => void;
22
23
  };
@@ -26,6 +26,16 @@ export class UserInterfaceApiImpl extends ApiBase {
26
26
  }
27
27
  return [];
28
28
  }
29
+ getCustomIcons() {
30
+ let customIconsProp = this.getUserInterfaceOptions().customIcons;
31
+ if (customIconsProp != null) {
32
+ // first do the function then get hardcoded items
33
+ return typeof customIconsProp === 'function'
34
+ ? customIconsProp()
35
+ : customIconsProp;
36
+ }
37
+ return [];
38
+ }
29
39
  getStyleClassNames() {
30
40
  return this.getUserInterfaceOptions().styleClassNames;
31
41
  }
@@ -73,15 +83,6 @@ export class UserInterfaceApiImpl extends ApiBase {
73
83
  return returnObjects;
74
84
  }
75
85
  }
76
- getCustomIconDefinition(iconName) {
77
- let customIcon = undefined;
78
- const customIcons = this.getUserInterfaceOptions().customIcons ?? [];
79
- customIcon = customIcons.find((icon) => icon.name === iconName);
80
- if (customIcon) {
81
- return customIcon.icon;
82
- }
83
- return customIcon;
84
- }
85
86
  showProgressIndicator(config) {
86
87
  const close = () => {
87
88
  this.hideProgressIndicator();
@@ -30,6 +30,7 @@ import { RowFormService } from '../../Utilities/Services/RowFormService';
30
30
  import { WindowModalPosition, WindowModalSize } from '../../components/WindowModal';
31
31
  import { FlashingCellService } from '../../Utilities/Services/FlashingCellService';
32
32
  import { AgGridAdapter } from '../../agGrid/AgGridAdapter';
33
+ import { AgGridModulesAdapter } from '../../agGrid/AgGridModulesAdapter';
33
34
  export declare class AdaptableInternalApi extends ApiBase {
34
35
  getInternalState(): InternalState;
35
36
  getAdaptableJSXElement(): React.JSX.Element;
@@ -62,6 +63,7 @@ export declare class AdaptableInternalApi extends ApiBase {
62
63
  buildRowDataChangedInfo(dataRows: any[], rowNodes: IRowNode[], rowTrigger: RowDataChangeTrigger): RowDataChangedInfo;
63
64
  getAdaptableInstance(): IAdaptable;
64
65
  getAgGridAdapter(): AgGridAdapter;
66
+ getAgGridModulesAdapter(): AgGridModulesAdapter;
65
67
  getInitialState(): InitialState;
66
68
  getState(): AdaptableState;
67
69
  getValidationService(): IValidationService;
@@ -72,6 +72,9 @@ export class AdaptableInternalApi extends ApiBase {
72
72
  getAgGridAdapter() {
73
73
  return this._adaptable.agGridAdapter;
74
74
  }
75
+ getAgGridModulesAdapter() {
76
+ return this._adaptable.agGridModulesAdapter;
77
+ }
75
78
  getInitialState() {
76
79
  return this.getOptions().initialState;
77
80
  }
@@ -8,7 +8,7 @@ import { ColumnScope } from '../../AdaptableState/Common/ColumnScope';
8
8
  import { AdaptablePredicateDef } from '../../AdaptableState/Common/AdaptablePredicate';
9
9
  import { AdaptableMessageType } from '../../AdaptableState/Common/AdaptableMessageType';
10
10
  import { IRowNode } from 'ag-grid-enterprise';
11
- import { RowDataChangedInfo } from '../../types';
11
+ import { LayoutExtendedConfig, RowDataChangedInfo } from '../../types';
12
12
  export declare class AlertInternalApi extends ApiBase {
13
13
  getExpressionForAlertRule(alertRule: AlertRule): string | undefined;
14
14
  /**
@@ -20,18 +20,18 @@ export declare class AlertInternalApi extends ApiBase {
20
20
  * Retrieves all Alert Definitions in Alert State which are NOT Reactive (BooleanQuery)
21
21
  * @returns alert definitions
22
22
  */
23
- getNonReactiveAlertDefinitions(): AlertDefinition[];
23
+ getNonReactiveAlertDefinitions(config?: LayoutExtendedConfig): AlertDefinition[];
24
24
  /**
25
25
  * Retrieves all active (non-suspended) Alert Definitions in Alert State which are NOT Reactive (BooleanQuery)
26
26
  * @returns alert definitions
27
27
  */
28
- getActiveNonReactiveAlertDefinitions(): AlertDefinition[];
28
+ getActiveNonReactiveAlertDefinitions(config?: LayoutExtendedConfig): AlertDefinition[];
29
29
  /**
30
30
  *
31
31
  * Retrieves all Alert Definitions in Alert State which are reactive (ObservableQuery & AggregationQuery)
32
32
  * @returns alert definitions
33
33
  */
34
- getReactiveAlertDefinitions(): AlertDefinition[];
34
+ getReactiveAlertDefinitions(config?: LayoutExtendedConfig): AlertDefinition[];
35
35
  /**
36
36
  *
37
37
  * Retrieves all active (non-suspended) Alert Definitions in Alert State which are reactive (ObservableQuery & AggregationQuery)
@@ -42,12 +42,12 @@ export declare class AlertInternalApi extends ApiBase {
42
42
  * Retrieves all Alert Definitions which prevent a Cell Edit
43
43
  * @returns alert definitions
44
44
  */
45
- getAlertDefinitionsWithPreventEdit(): AlertDefinition[];
45
+ getAlertDefinitionsWithPreventEdit(config?: LayoutExtendedConfig): AlertDefinition[];
46
46
  /**
47
47
  * Retrieves all Alert Definitions which allow a Cell Edit
48
48
  * @returns alert definitions
49
49
  */
50
- getAlertDefinitionsWithAllowEdit(): AlertDefinition[];
50
+ getAlertDefinitionsWithAllowEdit(config?: LayoutExtendedConfig): AlertDefinition[];
51
51
  /**
52
52
  * Runs after a button in an Alert Form is clicked
53
53
  */
@@ -34,26 +34,26 @@ export class AlertInternalApi extends ApiBase {
34
34
  * Retrieves all Alert Definitions in Alert State which are NOT Reactive (BooleanQuery)
35
35
  * @returns alert definitions
36
36
  */
37
- getNonReactiveAlertDefinitions() {
37
+ getNonReactiveAlertDefinitions(config) {
38
38
  return this.getAlertApi()
39
- .getAlertDefinitions()
39
+ .getAlertDefinitions(config)
40
40
  .filter((alertDef) => !isReactiveQuery(alertDef.Rule));
41
41
  }
42
42
  /**
43
43
  * Retrieves all active (non-suspended) Alert Definitions in Alert State which are NOT Reactive (BooleanQuery)
44
44
  * @returns alert definitions
45
45
  */
46
- getActiveNonReactiveAlertDefinitions() {
47
- return this.getNonReactiveAlertDefinitions().filter((alertDef) => !alertDef.IsSuspended);
46
+ getActiveNonReactiveAlertDefinitions(config) {
47
+ return this.getNonReactiveAlertDefinitions(config).filter((alertDef) => !alertDef.IsSuspended);
48
48
  }
49
49
  /**
50
50
  *
51
51
  * Retrieves all Alert Definitions in Alert State which are reactive (ObservableQuery & AggregationQuery)
52
52
  * @returns alert definitions
53
53
  */
54
- getReactiveAlertDefinitions() {
54
+ getReactiveAlertDefinitions(config) {
55
55
  return this.getAlertApi()
56
- .getAlertDefinitions()
56
+ .getAlertDefinitions(config)
57
57
  .filter((alertDef) => isReactiveQuery(alertDef.Rule));
58
58
  }
59
59
  /**
@@ -68,15 +68,15 @@ export class AlertInternalApi extends ApiBase {
68
68
  * Retrieves all Alert Definitions which prevent a Cell Edit
69
69
  * @returns alert definitions
70
70
  */
71
- getAlertDefinitionsWithPreventEdit() {
72
- return this.getActiveNonReactiveAlertDefinitions().filter((a) => a.AlertProperties != null && a.AlertProperties.PreventEdit === true);
71
+ getAlertDefinitionsWithPreventEdit(config) {
72
+ return this.getActiveNonReactiveAlertDefinitions(config).filter((a) => a.AlertProperties != null && a.AlertProperties.PreventEdit === true);
73
73
  }
74
74
  /**
75
75
  * Retrieves all Alert Definitions which allow a Cell Edit
76
76
  * @returns alert definitions
77
77
  */
78
- getAlertDefinitionsWithAllowEdit() {
79
- return this.getActiveNonReactiveAlertDefinitions().filter((a) => a.AlertProperties == null || a.AlertProperties.PreventEdit !== true);
78
+ getAlertDefinitionsWithAllowEdit(config) {
79
+ return this.getActiveNonReactiveAlertDefinitions(config).filter((a) => a.AlertProperties == null || a.AlertProperties.PreventEdit !== true);
80
80
  }
81
81
  /**
82
82
  * Runs after a button in an Alert Form is clicked
@@ -5,7 +5,9 @@ import { AdaptablePredicateDef } from '../../AdaptableState/Common/AdaptablePred
5
5
  import { ColumnFilter } from '../../AdaptableState/Common/ColumnFilter';
6
6
  import { GridCell } from '../../AdaptableState/Selection/GridCell';
7
7
  import { LayoutColumnFilterAction } from '../../Redux/ActionsReducers/LayoutRedux';
8
+ import { InFilterValue } from '../../types';
8
9
  import { ApiBase } from '../Implementation/ApiBase';
10
+ import { AdaptableFilterHandler } from '../../agGrid/AdaptableFilterHandler';
9
11
  export declare class ColumnFilterInternalApi extends ApiBase {
10
12
  /**
11
13
  * Returns Predicate Definition for given Column and Quick Filter shortcut
@@ -44,4 +46,15 @@ export declare class ColumnFilterInternalApi extends ApiBase {
44
46
  getPredicateDefShortcuts(predicateDef: AdaptablePredicateDef): string[];
45
47
  showQuickFilterDropdown(columnId: string): boolean;
46
48
  openColumnFilterPopup(columnId: string, popupProps?: any): void;
49
+ /**
50
+ * First we try to get the cached values from the FilterHandler
51
+ * Only if the FilterHandler is not available we fallback to the GridApi method
52
+ */
53
+ getColumnFilterValues(options: {
54
+ columnId: string;
55
+ currentSearchValue: string;
56
+ }): Promise<InFilterValue[]>;
57
+ shouldAutoApplyColumnFilter(columnId: string): boolean;
58
+ shouldCacheColumnFilterValues(columnId: string): boolean;
59
+ getAllAdaptableFilterHandlers(): AdaptableFilterHandler[];
47
60
  }
@@ -4,6 +4,7 @@ import ArrayExtensions, { areArraysEqual } from '../../Utilities/Extensions/Arra
4
4
  import StringExtensions from '../../Utilities/Extensions/StringExtensions';
5
5
  import { COLUMN_FILTER_WINDOW } from '../../View/Components/Popups/WindowPopups/windowFactory';
6
6
  import { ApiBase } from '../Implementation/ApiBase';
7
+ import { AdaptableFilterHandler } from '../../agGrid/AdaptableFilterHandler';
7
8
  export class ColumnFilterInternalApi extends ApiBase {
8
9
  /**
9
10
  * Returns Predicate Definition for given Column and Quick Filter shortcut
@@ -164,7 +165,38 @@ export class ColumnFilterInternalApi extends ApiBase {
164
165
  if (ArrayExtensions.IsNullOrEmpty(oldFilters) && ArrayExtensions.IsNullOrEmpty(newFilters)) {
165
166
  return false;
166
167
  }
167
- return ArrayExtensions.areArraysNotEqual(oldFilters, newFilters);
168
+ return !ArrayExtensions.areArraysEqualWithCustomComparator(oldFilters, newFilters, (filter1, filter2) => {
169
+ // Compare basic properties
170
+ if (filter1.ColumnId !== filter2.ColumnId) {
171
+ return false;
172
+ }
173
+ if ((filter1.PredicatesOperator || 'AND') !== (filter2.PredicatesOperator || 'AND')) {
174
+ return false;
175
+ }
176
+ if ((filter1.IsSuspended || false) !== (filter2.IsSuspended || false)) {
177
+ return false;
178
+ }
179
+ // Compare predicates (regardless of order)
180
+ return ArrayExtensions.areArraysEqualWithCustomComparator(filter1.Predicates, filter2.Predicates, (pred1, pred2) => {
181
+ if (pred1.PredicateId !== pred2.PredicateId) {
182
+ return false;
183
+ }
184
+ // Compare inputs array (might be primitives or objects)
185
+ return ArrayExtensions.areArraysEqualWithCustomComparator(pred1.Inputs, pred2.Inputs, (input1, input2) => {
186
+ if (input1 === input2) {
187
+ return true;
188
+ }
189
+ if (typeof input1 !== typeof input2) {
190
+ return false;
191
+ }
192
+ // For object inputs, use JSON comparison
193
+ if (typeof input1 === 'object' && input1 !== null && input2 !== null) {
194
+ return JSON.stringify(input1) === JSON.stringify(input2);
195
+ }
196
+ return input1 === input2;
197
+ });
198
+ });
199
+ });
168
200
  }
169
201
  getPredicateDefShortcuts(predicateDef) {
170
202
  const shortcuts = this.getFilterOptions().columnFilterOptions.quickFilterWildcards;
@@ -203,4 +235,64 @@ export class ColumnFilterInternalApi extends ApiBase {
203
235
  },
204
236
  });
205
237
  }
238
+ /**
239
+ * First we try to get the cached values from the FilterHandler
240
+ * Only if the FilterHandler is not available we fallback to the GridApi method
241
+ */
242
+ async getColumnFilterValues(options) {
243
+ const shouldUseCachedValues = this.shouldCacheColumnFilterValues(options.columnId);
244
+ if (!shouldUseCachedValues) {
245
+ return this.getGridApi().internalApi.getDistinctFilterDisplayValuesForColumn(options);
246
+ }
247
+ const columnFilterHandler = this.getAgGridApi().getColumnFilterHandler(options.columnId);
248
+ if (!columnFilterHandler) {
249
+ this.logWarn(`No ColumnFilterHandler found for columnId: ${options.columnId}!`);
250
+ return this.getGridApi().internalApi.getDistinctFilterDisplayValuesForColumn(options);
251
+ }
252
+ if (typeof columnFilterHandler.getFilterDisplayValues !== 'function') {
253
+ this.logWarn(`ColumnFilterHandler for columnId: ${options.columnId} does not have getFilterDisplayValues method!`);
254
+ return this.getGridApi().internalApi.getDistinctFilterDisplayValuesForColumn(options);
255
+ }
256
+ return columnFilterHandler.getFilterDisplayValues(options.currentSearchValue);
257
+ }
258
+ shouldAutoApplyColumnFilter(columnId) {
259
+ const autoApplyColumnFilterOpt = this.getOptionsApi().getFilterOptions().columnFilterOptions?.autoApplyColumnFilter;
260
+ if (typeof autoApplyColumnFilterOpt === 'boolean') {
261
+ return autoApplyColumnFilterOpt;
262
+ }
263
+ if (typeof autoApplyColumnFilterOpt === 'function') {
264
+ const column = this.getColumnApi().getColumnWithColumnId(columnId);
265
+ const context = {
266
+ column,
267
+ ...this.getAdaptableApi().internalApi.buildBaseContext(),
268
+ };
269
+ return autoApplyColumnFilterOpt(context);
270
+ }
271
+ // fallback, should never happen
272
+ return true;
273
+ }
274
+ shouldCacheColumnFilterValues(columnId) {
275
+ const cacheColumnFilterValuesOpt = this.getOptionsApi().getFilterOptions().columnFilterOptions?.cacheInFilterValues;
276
+ if (typeof cacheColumnFilterValuesOpt === 'boolean') {
277
+ return cacheColumnFilterValuesOpt;
278
+ }
279
+ if (typeof cacheColumnFilterValuesOpt === 'function') {
280
+ const column = this.getColumnApi().getColumnWithColumnId(columnId);
281
+ const context = {
282
+ column,
283
+ ...this.getAdaptableApi().internalApi.buildBaseContext(),
284
+ };
285
+ return cacheColumnFilterValuesOpt(context);
286
+ }
287
+ // fallback, should never happen
288
+ return true;
289
+ }
290
+ getAllAdaptableFilterHandlers() {
291
+ const allFilterableColumns = this.getColumnApi().getFilterableColumns();
292
+ const filterHandlers = allFilterableColumns
293
+ .map((column) => this.getAgGridApi().getColumnFilterHandler(column.columnId))
294
+ .filter(Boolean)
295
+ .filter((handler) => handler instanceof AdaptableFilterHandler);
296
+ return filterHandlers;
297
+ }
206
298
  }
@@ -2,7 +2,7 @@ import { ApiBase } from '../Implementation/ApiBase';
2
2
  import { ColDef, Column, HeaderValueGetterParams, IRowNode } from 'ag-grid-enterprise';
3
3
  import { CustomSort } from '../../AdaptableState/CustomSortState';
4
4
  import { ColumnValuesComparer } from '../../AdaptableOptions/CustomSortOptions';
5
- import { AdaptableColumn } from '../../types';
5
+ import { AdaptableColumn, AdaptableColumnDataType } from '../../types';
6
6
  export declare function getAutoRowGroupColumnIdFor(columnId: string): string;
7
7
  export declare class ColumnInternalApi extends ApiBase {
8
8
  /**
@@ -36,4 +36,5 @@ export declare class ColumnInternalApi extends ApiBase {
36
36
  hasArrayDataType(column: AdaptableColumn): boolean;
37
37
  getQueryableColumnsForUIEditor(): AdaptableColumn[];
38
38
  isAlwaysHiddenColumn(columnIdentifier: string | ColDef): boolean;
39
+ getColumnDateTypes(): AdaptableColumnDataType[];
39
40
  }
@@ -141,7 +141,7 @@ export class ColumnInternalApi extends ApiBase {
141
141
  };
142
142
  }
143
143
  if (params.column?.getColId().startsWith(`${AG_GRID_GROUPED_COLUMN}-`)) {
144
- const columnType = 'groupColumn';
144
+ const columnType = 'rowGroupColumn';
145
145
  const columnId = params.column.getColId();
146
146
  // remove `${AG_GRID_GROUPED_COLUMN}-` from beginning of columnId
147
147
  const groupColumnId = columnId.substring(`${AG_GRID_GROUPED_COLUMN}-`.length);
@@ -261,7 +261,7 @@ export class ColumnInternalApi extends ApiBase {
261
261
  };
262
262
  }
263
263
  if (isPivotResultColumn(columnId)) {
264
- const columnType = 'pivotAggregationColumn';
264
+ const columnType = 'pivotResultColumn';
265
265
  const pivotValueCol = params.colDef.pivotValueColumn;
266
266
  const aggregatedColumnId = pivotValueCol?.getColId();
267
267
  const currentLayoutAggCols = currentPivotLayout.PivotAggregationColumns?.map((col) => col.ColumnId);
@@ -294,4 +294,8 @@ export class ColumnInternalApi extends ApiBase {
294
294
  isAlwaysHiddenColumn(columnIdentifier) {
295
295
  return this.getColumnApi().hasColumnType(columnIdentifier, HIDDEN_COLUMN_TYPE);
296
296
  }
297
+ getColumnDateTypes() {
298
+ // this is required because Adaptable uses 'date' type for all AG Grid date types: 'date', 'dateString'
299
+ return ['date', 'dateString'];
300
+ }
297
301
  }
@@ -33,7 +33,7 @@ export class DashboardInternalApi extends ApiBase {
33
33
  getModuleToolbars() {
34
34
  const moduleService = this.getAdaptableInternalApi().getModuleService();
35
35
  return ALL_TOOLBARS.filter((moduleName) => {
36
- return moduleService.isModuleAvailable(moduleName);
36
+ return moduleService.isAdapTableModulePresent(moduleName);
37
37
  }).map((moduleName) => {
38
38
  return {
39
39
  id: moduleName,
@@ -1,4 +1,5 @@
1
1
  import { ApiBase } from '../Implementation/ApiBase';
2
2
  export declare class EntitlementInternalApi extends ApiBase {
3
3
  setModulesEntitlements(): void;
4
+ setModulesAgGridDepsInfos(): void;
4
5
  }
@@ -8,4 +8,12 @@ export class EntitlementInternalApi extends ApiBase {
8
8
  module.setModuleEntitlement();
9
9
  });
10
10
  }
11
+ setModulesAgGridDepsInfos() {
12
+ this.getAdaptableInternalApi()
13
+ .getModuleService()
14
+ .getModuleCollection()
15
+ .forEach((module) => {
16
+ module.setAgGridDepsInfo();
17
+ });
18
+ }
11
19
  }
@@ -380,7 +380,7 @@ export class ExportInternalApi extends ApiBase {
380
380
  };
381
381
  const gridParams = {
382
382
  modules: this.getAdaptableApi()
383
- .internalApi.getAdaptableInstance()
383
+ .internalApi.getAgGridModulesAdapter()
384
384
  .getAgGridRegisteredModules(),
385
385
  };
386
386
  htmlDivElement.style.display = 'none';
@@ -41,7 +41,7 @@ export class FlashingCellInternalApi extends ApiBase {
41
41
  ? toFlashingAlert(forPrimaryKey[columnId])
42
42
  : toFlashingAlert(forPrimaryKey[FLASHING_CELL_ROW_KEY]);
43
43
  if (adaptableFlashingCell?.flashingCellDefinition &&
44
- !this.getLayoutApi().internalApi.isObjectAvailableInLayout(adaptableFlashingCell.flashingCellDefinition, 'FlashingCell', this.getLayoutApi().getCurrentLayout())) {
44
+ !this.getLayoutApi().internalApi.isObjectExtendedInLayout(adaptableFlashingCell.flashingCellDefinition, 'FlashingCell', this.getLayoutApi().getCurrentLayout())) {
45
45
  return;
46
46
  }
47
47
  return adaptableFlashingCell;
@@ -1,37 +1,34 @@
1
- import { IRowNode } from 'ag-grid-enterprise';
2
- import { AdaptableColumn, AdaptableFormat, AdaptablePredicateDef, ColumnScope, FormatColumn, FormatColumnTarget, StringFormatterOptions } from '../../types';
1
+ import { HeaderValueGetterParams, IRowNode } from 'ag-grid-enterprise';
2
+ import { AdaptableColumn, AdaptableFormat, AdaptablePredicateDef, ColumnScope, FormatColumn, FormatColumnConfig, FormatColumnTarget, StringFormatterOptions } from '../../types';
3
3
  import { ApiBase } from '../Implementation/ApiBase';
4
4
  export declare class FormatColumnInternalApi extends ApiBase {
5
5
  /**
6
6
  * Retrieves all Format Columns in Adaptable State with the `Style` property set
7
7
  * @returns format columns
8
8
  */
9
- getAllFormatColumnWithStyle(): FormatColumn[];
9
+ getAllFormatColumnWithStyle(config?: FormatColumnConfig): FormatColumn[];
10
10
  /**
11
11
  * Retrieves all Format Columns in Adaptable State with the `Style` or the `CellAlignment` property set
12
12
  * @returns format columns
13
13
  */
14
- getAllFormatColumnWithStyleAndCellAlignment(): FormatColumn[];
14
+ getAllFormatColumnWithStyleAndCellAlignment(config?: FormatColumnConfig): FormatColumn[];
15
15
  /**
16
16
  * Retrieves all Format Columns in Adaptable State with `DisplayFormat` property set
17
17
  * @returns format columns
18
18
  */
19
- getAllFormatColumnWithDisplayFormat(): FormatColumn[];
19
+ getAllFormatColumnWithDisplayFormat(config?: FormatColumnConfig): FormatColumn[];
20
20
  /**
21
21
  * Retrieves all Format Columns in Adaptable State with `CellAlignment` property set
22
22
  * @returns format columns
23
23
  */
24
- getAllFormatColumnWithCellAlignment(): FormatColumn[];
24
+ getAllFormatColumnWithCellAlignment(config?: FormatColumnConfig): FormatColumn[];
25
25
  /**
26
26
  * Get all FormatColumns which are defined for this column and have a custom AdaptableStyle
27
27
  * @param column
28
28
  * @param config
29
29
  * @returns list of FormatColumn
30
30
  */
31
- getFormatColumnsWithStyleForColumn(column: AdaptableColumn, config: {
32
- target: FormatColumnTarget;
33
- includeSuspended?: boolean;
34
- }): FormatColumn[];
31
+ getFormatColumnsWithStyleForColumn(column: AdaptableColumn, config: FormatColumnConfig): FormatColumn[];
35
32
  /**
36
33
  * Gets Format Column if any for given Column which includes Style element with ClassName
37
34
  * @param column The Column for which to retrieve the Format Column
@@ -49,7 +46,8 @@ export declare class FormatColumnInternalApi extends ApiBase {
49
46
  * @param config
50
47
  * @returns list of FormatColumn
51
48
  */
52
- getFormatColumnsWithDisplayFormatForColumn(column: AdaptableColumn, config?: {
49
+ getFormatColumnsWithDisplayFormatForColumn(column: AdaptableColumn, config: {
50
+ target: FormatColumnTarget;
53
51
  includeSuspended?: boolean;
54
52
  }): FormatColumn[];
55
53
  /**
@@ -123,10 +121,11 @@ export declare class FormatColumnInternalApi extends ApiBase {
123
121
  * Retrieves all Format Columns which have an Expression
124
122
  * @returns Format Columns with Expression
125
123
  */
126
- getFormatColumnsWithExpression(): FormatColumn[];
127
- getFormatColumnsDependentOnColumns(columnSet: Set<string>): FormatColumn[];
124
+ getFormatColumnsWithExpression(config?: FormatColumnConfig): FormatColumn[];
125
+ getFormatColumnsDependentOnColumns(columnSet: Set<string>, config?: FormatColumnConfig): FormatColumn[];
128
126
  /**
129
127
  * Retrieves the columns that need rerendering based on format column predicates.
130
128
  */
131
129
  getFormatColumnColumnsDependentOnColumnChange(column: AdaptableColumn): string[];
130
+ formatColumnHeaderName(headerName: string, params: HeaderValueGetterParams): string;
132
131
  }