@adaptabletools/adaptable-cjs 20.3.0 → 21.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 (419) hide show
  1. package/agGrid.d.ts +2 -1
  2. package/agGrid.js +3 -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 +38 -38
  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 +40 -22
  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 +2 -2
  188. package/src/AdaptableState/Common/ExtendedLayout.d.ts +50 -0
  189. package/src/AdaptableState/FormatColumnState.d.ts +8 -1
  190. package/src/AdaptableState/InternalState.d.ts +1 -1
  191. package/src/AdaptableState/LayoutState.d.ts +26 -6
  192. package/src/AdaptableState/Selection/GridCell.d.ts +32 -0
  193. package/src/AdaptableState/StyledColumnState.d.ts +2 -2
  194. package/src/Api/AlertApi.d.ts +5 -11
  195. package/src/Api/ColumnApi.d.ts +17 -1
  196. package/src/Api/ColumnFilterApi.d.ts +32 -2
  197. package/src/Api/CustomSortApi.d.ts +5 -10
  198. package/src/Api/FlashingCellApi.d.ts +10 -6
  199. package/src/Api/FormatColumnApi.d.ts +8 -18
  200. package/src/Api/Implementation/AlertApiImpl.d.ts +6 -9
  201. package/src/Api/Implementation/AlertApiImpl.js +7 -6
  202. package/src/Api/Implementation/ApiBase.d.ts +2 -12
  203. package/src/Api/Implementation/ApiBase.js +5 -5
  204. package/src/Api/Implementation/ColumnApiImpl.d.ts +5 -2
  205. package/src/Api/Implementation/ColumnApiImpl.js +59 -23
  206. package/src/Api/Implementation/ColumnFilterApiImpl.d.ts +7 -1
  207. package/src/Api/Implementation/ColumnFilterApiImpl.js +76 -3
  208. package/src/Api/Implementation/ColumnScopeApiImpl.js +10 -2
  209. package/src/Api/Implementation/CustomSortApiImpl.d.ts +5 -10
  210. package/src/Api/Implementation/CustomSortApiImpl.js +6 -4
  211. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +7 -6
  212. package/src/Api/Implementation/FlashingCellApiImpl.js +11 -8
  213. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +8 -18
  214. package/src/Api/Implementation/FormatColumnApiImpl.js +10 -9
  215. package/src/Api/Implementation/LayoutApiImpl.d.ts +3 -2
  216. package/src/Api/Implementation/LayoutApiImpl.js +107 -13
  217. package/src/Api/Implementation/LayoutHelpers.d.ts +1 -0
  218. package/src/Api/Implementation/LayoutHelpers.js +25 -5
  219. package/src/Api/Implementation/PlusMinusApiImpl.d.ts +7 -5
  220. package/src/Api/Implementation/PlusMinusApiImpl.js +10 -7
  221. package/src/Api/Implementation/ScheduleApiImpl.d.ts +9 -16
  222. package/src/Api/Implementation/ScheduleApiImpl.js +15 -17
  223. package/src/Api/Implementation/ShortcutApiImpl.d.ts +5 -6
  224. package/src/Api/Implementation/ShortcutApiImpl.js +7 -8
  225. package/src/Api/Implementation/StyledColumnApiImpl.d.ts +7 -8
  226. package/src/Api/Implementation/StyledColumnApiImpl.js +12 -9
  227. package/src/Api/Implementation/TeamSharingApiImpl.js +1 -4
  228. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +2 -1
  229. package/src/Api/Implementation/UserInterfaceApiImpl.js +10 -9
  230. package/src/Api/Internal/AdaptableInternalApi.d.ts +2 -0
  231. package/src/Api/Internal/AdaptableInternalApi.js +3 -0
  232. package/src/Api/Internal/AlertInternalApi.d.ts +6 -6
  233. package/src/Api/Internal/AlertInternalApi.js +10 -10
  234. package/src/Api/Internal/ColumnFilterInternalApi.d.ts +13 -0
  235. package/src/Api/Internal/ColumnFilterInternalApi.js +93 -1
  236. package/src/Api/Internal/ColumnInternalApi.d.ts +2 -1
  237. package/src/Api/Internal/ColumnInternalApi.js +4 -0
  238. package/src/Api/Internal/DashboardInternalApi.js +1 -1
  239. package/src/Api/Internal/EntitlementInternalApi.d.ts +1 -0
  240. package/src/Api/Internal/EntitlementInternalApi.js +8 -0
  241. package/src/Api/Internal/ExportInternalApi.js +1 -1
  242. package/src/Api/Internal/FlashingCellInternalApi.js +1 -1
  243. package/src/Api/Internal/FormatColumnInternalApi.d.ts +8 -11
  244. package/src/Api/Internal/FormatColumnInternalApi.js +13 -13
  245. package/src/Api/Internal/GridInternalApi.d.ts +7 -10
  246. package/src/Api/Internal/GridInternalApi.js +76 -27
  247. package/src/Api/Internal/LayoutInternalApi.d.ts +10 -5
  248. package/src/Api/Internal/LayoutInternalApi.js +85 -5
  249. package/src/Api/Internal/PredicateInternalApi.d.ts +2 -6
  250. package/src/Api/Internal/PredicateInternalApi.js +4 -6
  251. package/src/Api/Internal/UserInterfaceInternalApi.d.ts +1 -0
  252. package/src/Api/Internal/UserInterfaceInternalApi.js +10 -3
  253. package/src/Api/LayoutApi.d.ts +7 -2
  254. package/src/Api/PlusMinusApi.d.ts +11 -7
  255. package/src/Api/ScheduleApi.d.ts +9 -16
  256. package/src/Api/ShortcutApi.d.ts +5 -6
  257. package/src/Api/StyledColumnApi.d.ts +10 -7
  258. package/src/Api/UserInterfaceApi.d.ts +5 -6
  259. package/src/Redux/ActionsReducers/InternalRedux.d.ts +4 -4
  260. package/src/Redux/ActionsReducers/InternalRedux.js +10 -10
  261. package/src/Redux/ActionsReducers/StyledColumnRedux.d.ts +7 -0
  262. package/src/Redux/ActionsReducers/StyledColumnRedux.js +15 -1
  263. package/src/Redux/Store/AdaptableStore.js +10 -10
  264. package/src/Strategy/AdaptableModuleBase.d.ts +14 -4
  265. package/src/Strategy/AdaptableModuleBase.js +46 -9
  266. package/src/Strategy/AlertModule.d.ts +3 -4
  267. package/src/Strategy/AlertModule.js +7 -4
  268. package/src/Strategy/CalculatedColumnModule.js +2 -2
  269. package/src/Strategy/CellSummaryModule.js +2 -2
  270. package/src/Strategy/ChartingModule.d.ts +3 -1
  271. package/src/Strategy/ChartingModule.js +9 -3
  272. package/src/Strategy/ColumnFilterModule.d.ts +1 -1
  273. package/src/Strategy/ColumnFilterModule.js +31 -15
  274. package/src/Strategy/ColumnInfoModule.js +2 -2
  275. package/src/Strategy/CommentModule.d.ts +1 -1
  276. package/src/Strategy/CommentModule.js +3 -3
  277. package/src/Strategy/CustomSortModule.d.ts +3 -4
  278. package/src/Strategy/CustomSortModule.js +2 -2
  279. package/src/Strategy/DashboardModule.js +1 -1
  280. package/src/Strategy/DataChangeHistoryModule.d.ts +2 -1
  281. package/src/Strategy/DataChangeHistoryModule.js +3 -10
  282. package/src/Strategy/DataImportModule.js +3 -3
  283. package/src/Strategy/ExportModule.js +1 -1
  284. package/src/Strategy/Fdc3Module.js +1 -1
  285. package/src/Strategy/FlashingCellModule.d.ts +3 -5
  286. package/src/Strategy/FlashingCellModule.js +3 -3
  287. package/src/Strategy/FormatColumnModule.d.ts +3 -4
  288. package/src/Strategy/FormatColumnModule.js +2 -2
  289. package/src/Strategy/FreeTextColumnModule.d.ts +1 -1
  290. package/src/Strategy/FreeTextColumnModule.js +2 -2
  291. package/src/Strategy/GridInfoModule.js +2 -2
  292. package/src/Strategy/Interface/IModule.d.ts +7 -3
  293. package/src/Strategy/LayoutModule.js +11 -11
  294. package/src/Strategy/NoteModule.d.ts +1 -1
  295. package/src/Strategy/NoteModule.js +3 -3
  296. package/src/Strategy/PlusMinusModule.d.ts +3 -4
  297. package/src/Strategy/PlusMinusModule.js +2 -2
  298. package/src/Strategy/QuickSearchModule.d.ts +2 -0
  299. package/src/Strategy/QuickSearchModule.js +9 -0
  300. package/src/Strategy/ScheduleModule.d.ts +3 -4
  301. package/src/Strategy/ScheduleModule.js +2 -2
  302. package/src/Strategy/SettingsPanelModule.js +1 -1
  303. package/src/Strategy/ShortcutModule.d.ts +3 -4
  304. package/src/Strategy/ShortcutModule.js +2 -2
  305. package/src/Strategy/StatusBarModule.d.ts +3 -2
  306. package/src/Strategy/StatusBarModule.js +6 -3
  307. package/src/Strategy/StyledColumnModule.d.ts +3 -4
  308. package/src/Strategy/StyledColumnModule.js +2 -2
  309. package/src/Strategy/SystemStatusModule.js +2 -2
  310. package/src/Strategy/TeamSharingModule.d.ts +1 -1
  311. package/src/Strategy/TeamSharingModule.js +5 -2
  312. package/src/Strategy/ToolPanelModule.d.ts +1 -1
  313. package/src/Strategy/ToolPanelModule.js +1 -4
  314. package/src/Strategy/Utilities/Layout/getLayoutFilterViewItems.js +1 -1
  315. package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +1 -0
  316. package/src/Utilities/Constants/DocumentationLinkConstants.js +2 -1
  317. package/src/Utilities/Extensions/ArrayExtensions.d.ts +15 -2
  318. package/src/Utilities/Extensions/ArrayExtensions.js +68 -15
  319. package/src/Utilities/Helpers/AdaptableHelper.d.ts +1 -0
  320. package/src/Utilities/Helpers/AdaptableHelper.js +1 -0
  321. package/src/Utilities/ObjectFactory.d.ts +7 -3
  322. package/src/Utilities/ObjectFactory.js +28 -19
  323. package/src/Utilities/Services/AnnotationsService.js +1 -1
  324. package/src/Utilities/Services/Interface/IModuleService.d.ts +2 -1
  325. package/src/Utilities/Services/ModuleService.d.ts +3 -3
  326. package/src/Utilities/Services/ModuleService.js +18 -6
  327. package/src/View/AdaptableView.js +3 -1
  328. package/src/View/ColumnInfo/ColumnInfo.js +9 -3
  329. package/src/View/Components/AdaptableIconSelector/index.js +2 -3
  330. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.d.ts +0 -1
  331. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.js +2 -3
  332. package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.d.ts +0 -2
  333. package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.js +4 -7
  334. package/src/View/Components/ColumnFilter/ColumnFilter.js +11 -4
  335. package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +1 -1
  336. package/src/View/Components/ColumnFilter/FloatingFilter.js +1 -2
  337. package/src/View/Components/ColumnFilter/LayoutColumnFilter.js +1 -1
  338. package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +2 -2
  339. package/src/View/Components/ColumnFilter/components/FloatingFilterValues.js +2 -2
  340. package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.d.ts +1 -1
  341. package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.js +2 -2
  342. package/src/View/Components/ColumnFilter/utils.d.ts +2 -2
  343. package/src/View/Components/ColumnFilter/utils.js +6 -1
  344. package/src/View/Components/EntityRulesEditor/index.js +1 -2
  345. package/src/View/Components/FilterForm/ListBoxFilterForm.js +1 -1
  346. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +5 -5
  347. package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -2
  348. package/src/View/Components/Selectors/BulkUpdateValueSelector.js +1 -1
  349. package/src/View/Components/Selectors/ColumnSelector.js +1 -1
  350. package/src/View/Components/Selectors/FieldSelector.js +1 -1
  351. package/src/View/Components/Selectors/PermittedValuesSelector.d.ts +1 -0
  352. package/src/View/Components/Selectors/PermittedValuesSelector.js +2 -2
  353. package/src/View/Dashboard/Dashboard.js +2 -2
  354. package/src/View/Dashboard/DashboardPopup.js +3 -1
  355. package/src/View/Dashboard/PinnedDashboard.js +1 -1
  356. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +9 -21
  357. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +58 -21
  358. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +11 -11
  359. package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +1 -1
  360. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -2
  361. package/src/View/Layout/TransposedPopup.js +2 -2
  362. package/src/View/Layout/Wizard/LayoutWizard.js +5 -7
  363. package/src/View/Layout/Wizard/sections/ColumnsSection.js +64 -9
  364. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +5 -5
  365. package/src/View/StatusBar/AdaptableStatusBar.js +1 -4
  366. package/src/View/StatusBar/StatusBarPopup.js +1 -1
  367. package/src/View/Theme/ThemeSelector.js +1 -1
  368. package/src/agGrid/AdaptableAgGrid.d.ts +11 -7
  369. package/src/agGrid/AdaptableAgGrid.js +251 -216
  370. package/src/agGrid/AdaptableFilterHandler.d.ts +18 -0
  371. package/src/agGrid/AdaptableFilterHandler.js +65 -0
  372. package/src/agGrid/AgGridAdapter.d.ts +3 -7
  373. package/src/agGrid/AgGridAdapter.js +13 -46
  374. package/src/agGrid/AgGridColumnAdapter.d.ts +2 -2
  375. package/src/agGrid/AgGridColumnAdapter.js +81 -36
  376. package/src/agGrid/AgGridFilterAdapter.d.ts +2 -0
  377. package/src/agGrid/AgGridFilterAdapter.js +53 -0
  378. package/src/agGrid/AgGridFloatingFilterAdapter.d.ts +2 -0
  379. package/src/agGrid/{FloatingFilterWrapper.js → AgGridFloatingFilterAdapter.js} +26 -37
  380. package/src/agGrid/AgGridModulesAdapter.d.ts +15 -0
  381. package/src/agGrid/AgGridModulesAdapter.js +70 -0
  382. package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +1 -1
  383. package/src/agGrid/editors/AdaptablePercentageEditor/InternalAdaptablePercentageEditor.js +1 -1
  384. package/src/components/Dialog/index.js +1 -1
  385. package/src/components/Dropdown/Arrows.js +2 -2
  386. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.d.ts +1 -1
  387. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +4 -4
  388. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +1 -1
  389. package/src/components/FileDroppable/index.js +1 -1
  390. package/src/components/IconSelector/IconSelector.d.ts +2 -2
  391. package/src/components/OverlayTrigger/index.js +1 -1
  392. package/src/components/Select/Select.d.ts +1 -1
  393. package/src/components/Select/Select.js +114 -22
  394. package/src/components/icons/DefaultIcon.d.ts +0 -1
  395. package/src/components/icons/DefaultIcon.js +0 -8
  396. package/src/env.js +2 -2
  397. package/src/layout-manager/src/LayoutManagerModel.d.ts +6 -10
  398. package/src/layout-manager/src/index.d.ts +11 -3
  399. package/src/layout-manager/src/index.js +302 -87
  400. package/src/layout-manager/src/normalizeLayoutModel.js +7 -4
  401. package/src/layout-manager/src/simplifyLayoutModel.js +4 -4
  402. package/src/metamodel/adaptable.metamodel.d.ts +103 -40
  403. package/src/metamodel/adaptable.metamodel.js +1 -1
  404. package/src/migration/AdaptableUpgradeHelper.js +2 -0
  405. package/src/migration/VersionUpgrade17.js +1 -1
  406. package/src/migration/VersionUpgrade20.js +1 -0
  407. package/src/migration/VersionUpgrade21.d.ts +6 -0
  408. package/src/migration/VersionUpgrade21.js +28 -0
  409. package/src/types.d.ts +7 -8
  410. package/tsconfig.cjs.tsbuildinfo +1 -1
  411. package/src/AdaptableState/Common/ExtendedLayoutInfo.d.ts +0 -27
  412. package/src/agGrid/FilterWrapper.d.ts +0 -2
  413. package/src/agGrid/FilterWrapper.js +0 -136
  414. package/src/agGrid/FloatingFilterWrapper.d.ts +0 -2
  415. package/src/agGrid/agGridModules.d.ts +0 -3
  416. package/src/agGrid/agGridModules.js +0 -18
  417. package/src/agGrid/getAgGridFilterNotifyModelFn.d.ts +0 -2
  418. package/src/agGrid/getAgGridFilterNotifyModelFn.js +0 -21
  419. /package/src/AdaptableState/Common/{ExtendedLayoutInfo.js → ExtendedLayout.js} +0 -0
@@ -5,11 +5,10 @@ import { TeamSharingImportInfo } from '../AdaptableState/TeamSharingState';
5
5
  import { AdaptableModuleView, AdaptableObjectView, IModule } from './Interface/IModule';
6
6
  import { AdaptableApi } from '../Api/AdaptableApi';
7
7
  import { AdaptableObject } from '../AdaptableState/Common/AdaptableObject';
8
+ import { LayoutExtendedConfig } from '../types';
8
9
  export declare class CustomSortModule extends AdaptableModuleBase implements IModule {
9
10
  constructor(api: AdaptableApi);
10
- getModuleAdaptableObjects(config?: {
11
- includeLayoutNotAssociatedObjects?: boolean;
12
- }): AdaptableObject[];
11
+ getModuleAdaptableObjects(config?: LayoutExtendedConfig): AdaptableObject[];
13
12
  getExplicitlyReferencedColumnIds(customSort: CustomSort): string[];
14
13
  hasNamedQueryReferences(): boolean;
15
14
  createColumnMenuItems(column: AdaptableColumn): import("../Utilities/MenuItem").MenuItemShowPopup<"custom-sort-add" | "custom-sort-edit">[];
@@ -17,5 +16,5 @@ export declare class CustomSortModule extends AdaptableModuleBase implements IMo
17
16
  toView(customSort: CustomSort): AdaptableObjectView;
18
17
  toViewAll(): AdaptableObjectView[];
19
18
  getViewProperties(): AdaptableModuleView;
20
- canBeAssociatedWithLayouts(): boolean;
19
+ containsLayoutExtensions(): boolean;
21
20
  }
@@ -60,7 +60,7 @@ class CustomSortModule extends AdaptableModuleBase_1.AdaptableModuleBase {
60
60
  }
61
61
  toViewAll() {
62
62
  return this.getModuleAdaptableObjects({
63
- includeLayoutNotAssociatedObjects: this.showLayoutNotAssociatedObjects(),
63
+ includeLayoutNotExtendedObjects: this.showLayoutNonExtendedObjects(),
64
64
  }).map((customSort) => this.toView(customSort));
65
65
  }
66
66
  getViewProperties() {
@@ -77,7 +77,7 @@ class CustomSortModule extends AdaptableModuleBase_1.AdaptableModuleBase {
77
77
  },
78
78
  };
79
79
  }
80
- canBeAssociatedWithLayouts() {
80
+ containsLayoutExtensions() {
81
81
  return true;
82
82
  }
83
83
  }
@@ -29,7 +29,7 @@ class DashboardModule extends AdaptableModuleBase_1.AdaptableModuleBase {
29
29
  return this.buildMenuItems();
30
30
  }
31
31
  buildMenuItems() {
32
- if (this.isModuleAvailable()) {
32
+ if (this.isModuleVisible()) {
33
33
  let menuItems = [];
34
34
  const dashboardState = this.api.dashboardApi.getDashboardState();
35
35
  if (this.isModuleEditable()) {
@@ -2,14 +2,15 @@ import { AdaptableModuleBase } from './AdaptableModuleBase';
2
2
  import { AdaptableModuleView } from './Interface/IModule';
3
3
  import { AdaptableApi } from '../Api/AdaptableApi';
4
4
  import { ICellDataChangeListenerModule } from './Interface/ICellDataChangeListenerModule';
5
+ import { AgModuleName } from 'ag-grid-enterprise';
5
6
  export declare class DataChangeHistoryModule extends AdaptableModuleBase implements ICellDataChangeListenerModule {
6
7
  isListeningToCellDataChanges: boolean;
7
8
  constructor(api: AdaptableApi);
8
9
  onAdaptableReady(): void;
10
+ protected getAgGridModuleDependencies(): AgModuleName[];
9
11
  shouldListenToDataChanges(): boolean;
10
12
  checkListenToCellDataChanged(): void;
11
13
  setupCellDataChangeListener(): void;
12
- isModuleAvailable(): boolean;
13
14
  getPopupMaxWidth(): number;
14
15
  hasNamedQueryReferences(): boolean;
15
16
  private isDataChangeLoggable;
@@ -14,6 +14,9 @@ class DataChangeHistoryModule extends AdaptableModuleBase_1.AdaptableModuleBase
14
14
  this.api.internalApi.initializeDataChangeHistory();
15
15
  this.checkListenToCellDataChanged();
16
16
  }
17
+ getAgGridModuleDependencies() {
18
+ return ['ClientSideRowModelModule'];
19
+ }
17
20
  shouldListenToDataChanges() {
18
21
  return this.api.dataChangeHistoryApi.getDataChangeHistoryMode() === 'ACTIVE';
19
22
  }
@@ -34,16 +37,6 @@ class DataChangeHistoryModule extends AdaptableModuleBase_1.AdaptableModuleBase
34
37
  }
35
38
  });
36
39
  }
37
- isModuleAvailable() {
38
- const isAdaptableModuleAvailable = super.isModuleAvailable();
39
- const isAgGridModuleAvailable = this.api.internalApi
40
- .getAdaptableInstance()
41
- .agGridAdapter.isAgGridModuleRegistered('ClientSideRowModel');
42
- if (isAdaptableModuleAvailable && !isAgGridModuleAvailable) {
43
- this.api.logWarn(`Data Change History is NOT available due to missing required AG Grid module: ClientSideRowModel`);
44
- }
45
- return isAdaptableModuleAvailable && isAgGridModuleAvailable;
46
- }
47
40
  getPopupMaxWidth() {
48
41
  return 1000;
49
42
  }
@@ -9,18 +9,18 @@ class DataImportModule extends AdaptableModuleBase_1.AdaptableModuleBase {
9
9
  super(ModuleConstants.DataImportModuleId, ModuleConstants.DataImportFriendyName, 'import', 'DataImportPopup', 'Import Data', api);
10
10
  }
11
11
  createModuleMenuItem(source) {
12
- if (this.isModuleAvailable()) {
12
+ if (this.isModuleVisible()) {
13
13
  return this.createDataImportMenuItem(source);
14
14
  }
15
15
  }
16
16
  createContextMenuItems() {
17
- if (this.isModuleAvailable()) {
17
+ if (this.isModuleVisible()) {
18
18
  return [this.createDataImportMenuItem('ContextMenu')];
19
19
  }
20
20
  return undefined;
21
21
  }
22
22
  createColumnMenuItems() {
23
- if (this.isModuleAvailable()) {
23
+ if (this.isModuleVisible()) {
24
24
  return [this.createDataImportMenuItem('ColumnMenu')];
25
25
  }
26
26
  }
@@ -34,7 +34,7 @@ class ExportModule extends AdaptableModuleBase_1.AdaptableModuleBase {
34
34
  return this.api.namedQueryApi.internalApi.getReferencedNamedQueryNames(report.Query.BooleanExpression);
35
35
  }
36
36
  createContextMenuItems(menuContext) {
37
- const canExport = !menuContext.isRowGroupColumn && this.isModuleAvailable();
37
+ const canExport = !menuContext.isRowGroupColumn && this.isModuleVisible();
38
38
  if (!canExport) {
39
39
  return;
40
40
  }
@@ -9,7 +9,7 @@ class Fdc3Module extends AdaptableModuleBase_1.AdaptableModuleBase {
9
9
  super(ModuleConstants.Fdc3ModuleId, ModuleConstants.Fdc3FriendlyName, 'fdc3', null, 'The FDC3 Module - handles the FDC3 integration', api);
10
10
  }
11
11
  createContextMenuItems(menuContext) {
12
- if (!this.isModuleAvailable()) {
12
+ if (!this.isModuleVisible()) {
13
13
  return;
14
14
  }
15
15
  if (menuContext.adaptableColumn && menuContext.rowNode) {
@@ -5,7 +5,7 @@ import { TeamSharingImportInfo } from '../AdaptableState/TeamSharingState';
5
5
  import { AdaptableModuleBase } from './AdaptableModuleBase';
6
6
  import { AdaptableModuleView, AdaptableObjectView } from './Interface/IModule';
7
7
  import { AdaptableObject } from '../AdaptableState/Common/AdaptableObject';
8
- import { FlashingCellDefinition } from '../types';
8
+ import { FlashingCellDefinition, LayoutExtendedConfig } from '../types';
9
9
  import { ICellDataChangeListenerModule } from './Interface/ICellDataChangeListenerModule';
10
10
  export declare class FlashingCellModule extends AdaptableModuleBase implements ICellDataChangeListenerModule {
11
11
  private isListeningToCellDataChanges;
@@ -16,9 +16,7 @@ export declare class FlashingCellModule extends AdaptableModuleBase implements I
16
16
  setupCellDataChangeListener(): void;
17
17
  private getFlashingCellDefinitionsForDataChange;
18
18
  private showFlashingCellsForDefinitions;
19
- getModuleAdaptableObjects(config?: {
20
- includeLayoutNotAssociatedObjects?: boolean;
21
- }): AdaptableObject[];
19
+ getModuleAdaptableObjects(config?: LayoutExtendedConfig): AdaptableObject[];
22
20
  getExplicitlyReferencedColumnIds(alertDefinition: FlashingCellDefinition): string[];
23
21
  getReferencedNamedQueryNames(alertDefinition: FlashingCellDefinition): string[];
24
22
  createColumnMenuItems(column: AdaptableColumn): import("../Utilities/MenuItem").MenuItemDoReduxAction<"separator" | "calculated-column-edit" | "cell-summary-show" | "chart-show" | "column-group" | "column-filter-group" | "column-filter-bar-hide" | "column-filter-bar-show" | "column-filter-clear" | "column-filter-suspend" | "column-filter-unsuspend" | "column-info-show" | "custom-sort-add" | "custom-sort-edit" | "dashboard-group" | "dashboard-collapse" | "dashboard-configure" | "dashboard-dock" | "dashboard-expand" | "dashboard-float" | "dashboard-hide" | "dashboard-show" | "data-import" | "flashing-cell-add" | "flashing-cell-delete" | "format-column-add" | "format-column-edit" | "free-text-column-edit" | "grid-group" | "grid-info-show" | "layout-column-caption-change" | "layout-column-hide" | "layout-edit" | "layout-column-select" | "layout-column-select-preserve" | "layout-column-select-reset" | "layout-grid-select" | "plus-minus-add" | "settings-panel-open" | "styling-group" | "styled-column-badge-add" | "styled-column-badge-edit" | "styled-column-gradient-add" | "styled-column-gradient-edit" | "styled-column-percent-bar-add" | "styled-column-percent-bar-edit" | "styled-column-sparkline-add" | "styled-column-sparkline-edit" | "system-status-show" | "_navbar">[];
@@ -29,5 +27,5 @@ export declare class FlashingCellModule extends AdaptableModuleBase implements I
29
27
  toView(flashingCell: FlashingCellDefinition): AdaptableObjectView;
30
28
  toViewAll(): AdaptableObjectView[];
31
29
  getViewProperties(): AdaptableModuleView;
32
- canBeAssociatedWithLayouts(): boolean;
30
+ containsLayoutExtensions(): boolean;
33
31
  }
@@ -196,7 +196,7 @@ class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
196
196
  }
197
197
  createContextMenuItems(menuContext) {
198
198
  const items = [];
199
- if (!menuContext.isRowGroupColumn && this.isModuleAvailable()) {
199
+ if (!menuContext.isRowGroupColumn && this.isModuleVisible()) {
200
200
  if (menuContext.adaptableColumn && menuContext.rowNode) {
201
201
  const flashingCellForRow = this.api.flashingCellApi.internalApi.getAdaptableFlashingCellFor(menuContext.primaryKeyValue);
202
202
  const flashingCellForCell = this.api.flashingCellApi.internalApi.getAdaptableFlashingCellFor(menuContext.primaryKeyValue, menuContext.adaptableColumn.columnId);
@@ -264,7 +264,7 @@ class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
264
264
  }
265
265
  toViewAll() {
266
266
  return this.getModuleAdaptableObjects({
267
- includeLayoutNotAssociatedObjects: this.showLayoutNotAssociatedObjects(),
267
+ includeLayoutNotExtendedObjects: this.showLayoutNonExtendedObjects(),
268
268
  }).map((flashingCell) => this.toView(flashingCell));
269
269
  }
270
270
  getViewProperties() {
@@ -278,7 +278,7 @@ class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
278
278
  getEditWizard: () => FlashingCellWizard_1.FlashingCellWizard,
279
279
  };
280
280
  }
281
- canBeAssociatedWithLayouts() {
281
+ containsLayoutExtensions() {
282
282
  return true;
283
283
  }
284
284
  }
@@ -6,11 +6,10 @@ import { FormatColumn } from '../AdaptableState/FormatColumnState';
6
6
  import { AdaptableModuleView, AdaptableObjectView, IModule } from './Interface/IModule';
7
7
  import { AdaptableApi } from '../Api/AdaptableApi';
8
8
  import { AdaptableObject } from '../AdaptableState/Common/AdaptableObject';
9
+ import { LayoutExtendedConfig } from '../types';
9
10
  export declare class FormatColumnModule extends AdaptableModuleBase implements IModule {
10
11
  constructor(api: AdaptableApi);
11
- getModuleAdaptableObjects(config?: {
12
- includeLayoutNotAssociatedObjects?: boolean;
13
- }): AdaptableObject[];
12
+ getModuleAdaptableObjects(config?: LayoutExtendedConfig): AdaptableObject[];
14
13
  getExplicitlyReferencedColumnIds(formatColumn: FormatColumn): string[];
15
14
  getReferencedNamedQueryNames(formatColumn: FormatColumn): string[];
16
15
  createColumnMenuItems(column: AdaptableColumn): AdaptableMenuItem<"separator" | "calculated-column-edit" | "cell-summary-show" | "chart-show" | "column-group" | "column-filter-group" | "column-filter-bar-hide" | "column-filter-bar-show" | "column-filter-clear" | "column-filter-suspend" | "column-filter-unsuspend" | "column-info-show" | "custom-sort-add" | "custom-sort-edit" | "dashboard-group" | "dashboard-collapse" | "dashboard-configure" | "dashboard-dock" | "dashboard-expand" | "dashboard-float" | "dashboard-hide" | "dashboard-show" | "data-import" | "flashing-cell-add" | "flashing-cell-delete" | "format-column-add" | "format-column-edit" | "free-text-column-edit" | "grid-group" | "grid-info-show" | "layout-column-caption-change" | "layout-column-hide" | "layout-edit" | "layout-column-select" | "layout-column-select-preserve" | "layout-column-select-reset" | "layout-grid-select" | "plus-minus-add" | "settings-panel-open" | "styling-group" | "styled-column-badge-add" | "styled-column-badge-edit" | "styled-column-gradient-add" | "styled-column-gradient-edit" | "styled-column-percent-bar-add" | "styled-column-percent-bar-edit" | "styled-column-sparkline-add" | "styled-column-sparkline-edit" | "system-status-show" | "_navbar">[];
@@ -18,5 +17,5 @@ export declare class FormatColumnModule extends AdaptableModuleBase implements I
18
17
  toView(formatColumn: FormatColumn): AdaptableObjectView;
19
18
  toViewAll(): AdaptableObjectView[];
20
19
  getViewProperties(): AdaptableModuleView;
21
- canBeAssociatedWithLayouts(): boolean;
20
+ containsLayoutExtensions(): boolean;
22
21
  }
@@ -104,7 +104,7 @@ class FormatColumnModule extends AdaptableModuleBase_1.AdaptableModuleBase {
104
104
  }
105
105
  toViewAll() {
106
106
  return this.getModuleAdaptableObjects({
107
- includeLayoutNotAssociatedObjects: this.showLayoutNotAssociatedObjects(),
107
+ includeLayoutNotExtendedObjects: this.showLayoutNonExtendedObjects(),
108
108
  }).map((formatColumn) => this.toView(formatColumn));
109
109
  }
110
110
  getViewProperties() {
@@ -121,7 +121,7 @@ class FormatColumnModule extends AdaptableModuleBase_1.AdaptableModuleBase {
121
121
  },
122
122
  };
123
123
  }
124
- canBeAssociatedWithLayouts() {
124
+ containsLayoutExtensions() {
125
125
  return true;
126
126
  }
127
127
  }
@@ -12,7 +12,7 @@ export declare class FreeTextColumnModule extends AdaptableModuleBase implements
12
12
  shouldListenToDataChanges(): boolean;
13
13
  checkListenToCellDataChanged(): void;
14
14
  setupCellDataChangeListener(): void;
15
- isModuleAvailable(): boolean;
15
+ isModuleEnabled(): boolean;
16
16
  getModuleAdaptableObjects(): FreeTextColumn[];
17
17
  hasNamedQueryReferences(): boolean;
18
18
  createColumnMenuItems(column: AdaptableColumn): import("../Utilities/MenuItem").MenuItemShowPopup<"separator" | "calculated-column-edit" | "cell-summary-show" | "chart-show" | "column-group" | "column-filter-group" | "column-filter-bar-hide" | "column-filter-bar-show" | "column-filter-clear" | "column-filter-suspend" | "column-filter-unsuspend" | "column-info-show" | "custom-sort-add" | "custom-sort-edit" | "dashboard-group" | "dashboard-collapse" | "dashboard-configure" | "dashboard-dock" | "dashboard-expand" | "dashboard-float" | "dashboard-hide" | "dashboard-show" | "data-import" | "flashing-cell-add" | "flashing-cell-delete" | "format-column-add" | "format-column-edit" | "free-text-column-edit" | "grid-group" | "grid-info-show" | "layout-column-caption-change" | "layout-column-hide" | "layout-edit" | "layout-column-select" | "layout-column-select-preserve" | "layout-column-select-reset" | "layout-grid-select" | "plus-minus-add" | "settings-panel-open" | "styling-group" | "styled-column-badge-add" | "styled-column-badge-edit" | "styled-column-gradient-add" | "styled-column-gradient-edit" | "styled-column-percent-bar-add" | "styled-column-percent-bar-edit" | "styled-column-sparkline-add" | "styled-column-sparkline-edit" | "system-status-show" | "_navbar">[];
@@ -38,9 +38,9 @@ class FreeTextColumnModule extends AdaptableModuleBase_1.AdaptableModuleBase {
38
38
  }
39
39
  });
40
40
  }
41
- isModuleAvailable() {
41
+ isModuleEnabled() {
42
42
  // FreeTextColumn module doesn't support autogenerated primary keys
43
- return super.isModuleAvailable() && !this.api.optionsApi.isAutogeneratePrimaryKey();
43
+ return !this.api.optionsApi.isAutogeneratePrimaryKey();
44
44
  }
45
45
  getModuleAdaptableObjects() {
46
46
  return this.api.freeTextColumnApi.getFreeTextColumns();
@@ -12,7 +12,7 @@ class GridInfoModule extends AdaptableModuleBase_1.AdaptableModuleBase {
12
12
  return 'Full';
13
13
  }
14
14
  createColumnMenuItems(column) {
15
- if (this.isModuleAvailable()) {
15
+ if (this.isModuleVisible()) {
16
16
  return [
17
17
  this.createMainMenuItemShowPopup({
18
18
  Name: 'grid-info-show',
@@ -24,7 +24,7 @@ class GridInfoModule extends AdaptableModuleBase_1.AdaptableModuleBase {
24
24
  }
25
25
  }
26
26
  createContextMenuItems(menuContext) {
27
- if (this.isModuleAvailable()) {
27
+ if (this.isModuleVisible()) {
28
28
  return [
29
29
  this.createMainMenuItemShowPopup({
30
30
  Name: 'grid-info-show',
@@ -145,12 +145,16 @@ export interface AdaptableModuleView {
145
145
  export interface IModule {
146
146
  moduleInfo: ModuleInfo;
147
147
  AccessLevel: AccessLevel;
148
+ logMissingAgGridDepsInfos(): void;
149
+ setAgGridDepsInfo(): void;
150
+ isModuleEnabled(): boolean;
151
+ isModuleAvailable(): boolean;
152
+ isModuleVisible(): boolean;
153
+ isModuleEditable(): boolean;
148
154
  createModuleMenuItem(source: 'ModuleMenu' | 'ModuleButton'): AdaptableMenuItem | undefined;
149
155
  createColumnMenuItems(column: AdaptableColumn): AdaptableMenuItem<AdaptableColumnMenuItemName>[] | undefined;
150
156
  createContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem<AdaptableContextMenuItemName>[] | undefined;
151
157
  setModuleEntitlement(): void;
152
- isModuleAvailable(): boolean;
153
- isModuleEditable(): boolean;
154
158
  isModuleObjectsShareable(): boolean;
155
159
  getTeamSharingAction(): TeamSharingImportInfo<AdaptableObject> | undefined;
156
160
  getModuleAdaptableObjects(): AdaptableObject[];
@@ -159,7 +163,7 @@ export interface IModule {
159
163
  getModuleCalculatedColumnReferences(): CalculatedColumn[];
160
164
  getModuleFreeTextColumnReferences(): FreeTextColumn[];
161
165
  getPopupMaxWidth(): number | undefined;
162
- canBeAssociatedWithLayouts(): boolean;
166
+ containsLayoutExtensions(): boolean;
163
167
  /**
164
168
  * The following view options are used to render adaptable objects and
165
169
  * module general views.
@@ -75,36 +75,36 @@ class LayoutModule extends AdaptableModuleBase_1.AdaptableModuleBase {
75
75
  const teamSharingReferences = super.getTeamSharingReferences(adaptableObject);
76
76
  const layoutName = adaptableObject.Name;
77
77
  if (this.api.layoutApi.internalApi.hasLayoutSpecificObjects() && !!layoutName) {
78
- const layoutAssociatedObjectReferences = [];
78
+ const LayoutExtensionObjectReferences = [];
79
79
  const loadConfig = {
80
- associatedWithLayout: layoutName,
80
+ extendedLayoutName: layoutName,
81
81
  };
82
82
  // we ensured that there are layout specific objects, so all the "getAll*()" api methods will return only the objects available in the current layout
83
- this.api.alertApi.getAlertDefinitions(loadConfig).forEach((alertDefinition) => layoutAssociatedObjectReferences.push({
83
+ this.api.alertApi.getAlertDefinitions(loadConfig).forEach((alertDefinition) => LayoutExtensionObjectReferences.push({
84
84
  Reference: alertDefinition,
85
85
  Module: 'Alert',
86
86
  }));
87
- this.api.customSortApi.getCustomSorts(loadConfig).forEach((customSort) => layoutAssociatedObjectReferences.push({
87
+ this.api.customSortApi.getCustomSorts(loadConfig).forEach((customSort) => LayoutExtensionObjectReferences.push({
88
88
  Reference: customSort,
89
89
  Module: 'CustomSort',
90
90
  }));
91
- this.api.flashingCellApi.getFlashingCellDefinitions(loadConfig).forEach((flashingCell) => layoutAssociatedObjectReferences.push({
91
+ this.api.flashingCellApi.getFlashingCellDefinitions(loadConfig).forEach((flashingCell) => LayoutExtensionObjectReferences.push({
92
92
  Reference: flashingCell,
93
93
  Module: 'FlashingCell',
94
94
  }));
95
- this.api.formatColumnApi.getFormatColumns(loadConfig).forEach((formatColumn) => layoutAssociatedObjectReferences.push({
95
+ this.api.formatColumnApi.getFormatColumns(loadConfig).forEach((formatColumn) => LayoutExtensionObjectReferences.push({
96
96
  Reference: formatColumn,
97
97
  Module: 'FormatColumn',
98
98
  }));
99
- this.api.styledColumnApi.getStyledColumns(loadConfig).forEach((styledcolumn) => layoutAssociatedObjectReferences.push({
99
+ this.api.styledColumnApi.getStyledColumns(loadConfig).forEach((styledcolumn) => LayoutExtensionObjectReferences.push({
100
100
  Reference: styledcolumn,
101
101
  Module: 'StyledColumn',
102
102
  }));
103
- this.api.plusMinusApi.getAllPlusMinus(loadConfig).forEach((plusMinusNudge) => layoutAssociatedObjectReferences.push({
103
+ this.api.plusMinusApi.getAllPlusMinus(loadConfig).forEach((plusMinusNudge) => LayoutExtensionObjectReferences.push({
104
104
  Reference: plusMinusNudge,
105
105
  Module: 'PlusMinus',
106
106
  }));
107
- this.api.shortcutApi.getShortcuts(loadConfig).forEach((shortcut) => layoutAssociatedObjectReferences.push({
107
+ this.api.shortcutApi.getShortcuts(loadConfig).forEach((shortcut) => LayoutExtensionObjectReferences.push({
108
108
  Reference: shortcut,
109
109
  Module: 'Shortcut',
110
110
  }));
@@ -113,11 +113,11 @@ class LayoutModule extends AdaptableModuleBase_1.AdaptableModuleBase {
113
113
  ...this.api.scheduleApi.getReminderSchedules(loadConfig),
114
114
  ...this.api.scheduleApi.getIPushPullSchedules(loadConfig),
115
115
  ...this.api.scheduleApi.getOpenFinSchedules(loadConfig),
116
- ].forEach((schedule) => layoutAssociatedObjectReferences.push({
116
+ ].forEach((schedule) => LayoutExtensionObjectReferences.push({
117
117
  Reference: schedule,
118
118
  Module: 'Schedule',
119
119
  }));
120
- teamSharingReferences.push(...layoutAssociatedObjectReferences);
120
+ teamSharingReferences.push(...LayoutExtensionObjectReferences);
121
121
  }
122
122
  return teamSharingReferences;
123
123
  }
@@ -5,7 +5,7 @@ import { AdaptableModuleBase } from './AdaptableModuleBase';
5
5
  import { IModule } from './Interface/IModule';
6
6
  export declare class NoteModule extends AdaptableModuleBase implements IModule {
7
7
  constructor(api: AdaptableApi);
8
- isModuleAvailable(): boolean;
8
+ isModuleEnabled(): boolean;
9
9
  getModuleAdaptableObjects(): AdaptableObject[];
10
10
  createContextMenuItems(menuContext: ContextMenuContext): import("../Utilities/MenuItem").MenuItemDoClickFunction<"calculated-column-edit" | "cell-summary-show" | "column-group" | "column-filter-group" | "column-filter-clear" | "column-filter-suspend" | "column-filter-unsuspend" | "column-info-show" | "dashboard-group" | "dashboard-collapse" | "dashboard-configure" | "dashboard-dock" | "dashboard-expand" | "dashboard-float" | "dashboard-hide" | "dashboard-show" | "data-import" | "grid-group" | "grid-info-show" | "layout-edit" | "settings-panel-open" | "system-status-show" | "menu-group" | "alert-clear" | "bulk-update-apply" | "column-filter-on-cell-value" | "comment-add" | "comment-remove" | "edit-group" | "export-group" | "export-all-data" | "export-all-data-excel-download" | "export-all-data-visualexcel-download" | "export-all-data-csv" | "export-all-data-csv-download" | "export-all-data-csv-clipboard" | "export-all-data-json" | "export-all-data-json-download" | "export-all-data-json-clipboard" | "export-current-layout" | "export-current-layout-excel-download" | "export-current-layout-visualexcel-download" | "export-current-layout-csv" | "export-current-layout-csv-download" | "export-current-layout-csv-clipboard" | "export-current-layout-json" | "export-current-layout-json-download" | "export-current-layout-json-clipboard" | "export-selected-data" | "export-selected-data-excel-download" | "export-selected-data-visualexcel-download" | "export-selected-data-csv" | "export-selected-data-csv-download" | "export-selected-data-csv-clipboard" | "export-selected-data-json" | "export-selected-data-json-download" | "export-selected-data-json-clipboard" | "fdc3-broadcast" | "fdc3-raise-intent" | "flashing-cell-clear" | "flashing-row-clear" | "layout-aggregated-view" | "layout-auto-size" | "layout-clear-selection" | "layout-select-all" | "note-add" | "note-remove" | "smart-edit-apply">[];
11
11
  }
@@ -8,15 +8,15 @@ class NoteModule extends AdaptableModuleBase_1.AdaptableModuleBase {
8
8
  constructor(api) {
9
9
  super(ModuleConstants.NoteModuleId, ModuleConstants.NoteFriendlyName, 'note', 'NotePopup', 'Notes', api);
10
10
  }
11
- isModuleAvailable() {
11
+ isModuleEnabled() {
12
12
  // Note module doesn't support autogenerated primary keys
13
- return super.isModuleAvailable() && !this.api.optionsApi.isAutogeneratePrimaryKey();
13
+ return !this.api.optionsApi.isAutogeneratePrimaryKey();
14
14
  }
15
15
  getModuleAdaptableObjects() {
16
16
  return this.api.noteApi.getAllNotes();
17
17
  }
18
18
  createContextMenuItems(menuContext) {
19
- if (!this.isModuleAvailable()) {
19
+ if (!this.isModuleVisible()) {
20
20
  return;
21
21
  }
22
22
  if (!this.api.noteApi.internalApi.areNotesSupported()) {
@@ -7,13 +7,12 @@ import { AdaptableModuleBase } from './AdaptableModuleBase';
7
7
  import { IPlusMinusModule } from './Interface/IPlusMinusModule';
8
8
  import { AdaptableObject } from '../AdaptableState/Common/AdaptableObject';
9
9
  import { AdaptableObjectView, AdaptableModuleView } from './Interface/IModule';
10
+ import { LayoutExtendedConfig } from '../types';
10
11
  export declare class PlusMinusModule extends AdaptableModuleBase implements IPlusMinusModule {
11
12
  private shouldHandleKeyDown;
12
13
  private adaptable;
13
14
  constructor(api: AdaptableApi);
14
- getModuleAdaptableObjects(config?: {
15
- includeLayoutNotAssociatedObjects?: boolean;
16
- }): AdaptableObject[];
15
+ getModuleAdaptableObjects(config?: LayoutExtendedConfig): AdaptableObject[];
17
16
  getExplicitlyReferencedColumnIds(plusMinusNudge: PlusMinusNudge): string[];
18
17
  getReferencedNamedQueryNames(plusMinusNudge: PlusMinusNudge): string[];
19
18
  onAdaptableReady(): void;
@@ -29,5 +28,5 @@ export declare class PlusMinusModule extends AdaptableModuleBase implements IPlu
29
28
  toView(plusMinus: PlusMinusNudge): AdaptableObjectView;
30
29
  toViewAll(): AdaptableObjectView[];
31
30
  getViewProperties(): AdaptableModuleView;
32
- canBeAssociatedWithLayouts(): boolean;
31
+ containsLayoutExtensions(): boolean;
33
32
  }
@@ -222,7 +222,7 @@ class PlusMinusModule extends AdaptableModuleBase_1.AdaptableModuleBase {
222
222
  }
223
223
  toViewAll() {
224
224
  return this.getModuleAdaptableObjects({
225
- includeLayoutNotAssociatedObjects: this.showLayoutNotAssociatedObjects(),
225
+ includeLayoutNotExtendedObjects: this.showLayoutNonExtendedObjects(),
226
226
  }).map((plusMinus) => this.toView(plusMinus));
227
227
  }
228
228
  getViewProperties() {
@@ -239,7 +239,7 @@ class PlusMinusModule extends AdaptableModuleBase_1.AdaptableModuleBase {
239
239
  },
240
240
  };
241
241
  }
242
- canBeAssociatedWithLayouts() {
242
+ containsLayoutExtensions() {
243
243
  return true;
244
244
  }
245
245
  }
@@ -1,8 +1,10 @@
1
1
  import { AdaptableModuleBase } from './AdaptableModuleBase';
2
2
  import { AdaptableModuleView, IModule } from './Interface/IModule';
3
3
  import { AdaptableApi } from '../Api/AdaptableApi';
4
+ import { AgModuleName } from 'ag-grid-enterprise';
4
5
  export declare class QuickSearchModule extends AdaptableModuleBase implements IModule {
5
6
  constructor(api: AdaptableApi);
7
+ protected getAgGridModuleDependencies(): AgModuleName[];
6
8
  getViewProperties(): AdaptableModuleView;
7
9
  onAdaptableReady(): void;
8
10
  }
@@ -10,6 +10,9 @@ class QuickSearchModule extends AdaptableModuleBase_1.AdaptableModuleBase {
10
10
  constructor(api) {
11
11
  super(ModuleConstants.QuickSearchModuleId, ModuleConstants.QuickSearchFriendlyName, 'search-table', 'QuickSearchPopup', 'Quickly highlight all cells in the grid that contain matching query text', api);
12
12
  }
13
+ getAgGridModuleDependencies() {
14
+ return ['FindModule'];
15
+ }
13
16
  getViewProperties() {
14
17
  return {
15
18
  getStatusBarPanelProps() {
@@ -22,6 +25,12 @@ class QuickSearchModule extends AdaptableModuleBase_1.AdaptableModuleBase {
22
25
  onAdaptableReady() {
23
26
  const { api } = this;
24
27
  const { internalApi, agGridApi } = api;
28
+ // Check for AG Grid QuickFilterModule if running Filter After Quick Search
29
+ if (api.optionsApi.getQuickSearchOptions().filterGridAfterQuickSearch) {
30
+ if (!api.internalApi.getAgGridModulesAdapter().isAgGridModuleRegistered('QuickFilterModule')) {
31
+ api.consoleError('The AG Grid "GridFilter" Module is required if running Quick Search as Filter; Quick Search will run but no Filters will be applied');
32
+ }
33
+ }
25
34
  const isServerSideRowModel = agGridApi.getGridOption('rowModelType') === 'serverSide';
26
35
  if (isServerSideRowModel &&
27
36
  internalApi.getAdaptableState().QuickSearch.CellMatchStyle === undefined) {
@@ -1,6 +1,7 @@
1
1
  import { AdaptableModuleBase } from './AdaptableModuleBase';
2
2
  import { AdaptableModuleView, AdaptableObjectView } from './Interface/IModule';
3
3
  import { AdaptableApi } from '../Api/AdaptableApi';
4
+ import { LayoutExtendedConfig } from '../types';
4
5
  import { BaseSchedule } from '../AdaptableState/Common/Schedule';
5
6
  import { IScheduleModule } from './Interface/IScheduleModule';
6
7
  export declare class ScheduleModule extends AdaptableModuleBase implements IScheduleModule {
@@ -12,11 +13,9 @@ export declare class ScheduleModule extends AdaptableModuleBase implements ISche
12
13
  private addMidnightRefreshSchedule;
13
14
  private getDateFromSchedule;
14
15
  private clearAllJobs;
15
- getModuleAdaptableObjects(config?: {
16
- includeLayoutNotAssociatedObjects?: boolean;
17
- }): BaseSchedule[];
16
+ getModuleAdaptableObjects(config?: LayoutExtendedConfig): BaseSchedule[];
18
17
  toView(schedule: BaseSchedule): AdaptableObjectView;
19
18
  toViewAll(): AdaptableObjectView[];
20
19
  getViewProperties(): AdaptableModuleView;
21
- canBeAssociatedWithLayouts(): boolean;
20
+ containsLayoutExtensions(): boolean;
22
21
  }
@@ -149,7 +149,7 @@ class ScheduleModule extends AdaptableModuleBase_1.AdaptableModuleBase {
149
149
  }
150
150
  toViewAll() {
151
151
  return this.getModuleAdaptableObjects({
152
- includeLayoutNotAssociatedObjects: this.showLayoutNotAssociatedObjects(),
152
+ includeLayoutNotExtendedObjects: this.showLayoutNonExtendedObjects(),
153
153
  }).map((schedule) => this.toView(schedule));
154
154
  }
155
155
  getViewProperties() {
@@ -261,7 +261,7 @@ class ScheduleModule extends AdaptableModuleBase_1.AdaptableModuleBase {
261
261
  },
262
262
  };
263
263
  }
264
- canBeAssociatedWithLayouts() {
264
+ containsLayoutExtensions() {
265
265
  return true;
266
266
  }
267
267
  }
@@ -22,7 +22,7 @@ class SettingsPanelModule extends AdaptableModuleBase_1.AdaptableModuleBase {
22
22
  ];
23
23
  }
24
24
  createModuleMenuItem(source) {
25
- if (this.isModuleAvailable()) {
25
+ if (this.isModuleVisible()) {
26
26
  return this.createMenuItemReduxAction('settings-panel-open', 'Open ' + this.moduleInfo.FriendlyName, this.moduleInfo.Glyph, PopupRedux.PopupShowScreen());
27
27
  }
28
28
  }
@@ -5,13 +5,12 @@ import { AdaptableApi } from '../Api/AdaptableApi';
5
5
  import { AdaptableObject } from '../AdaptableState/Common/AdaptableObject';
6
6
  import { AdaptableModuleView, AdaptableObjectView } from './Interface/IModule';
7
7
  import { IKeyDownListenerModule } from './Interface/IKeyDownListenerModule';
8
+ import { LayoutExtendedConfig } from '../types';
8
9
  export declare class ShortcutModule extends AdaptableModuleBase implements IKeyDownListenerModule {
9
10
  private shouldHandleKeyDown;
10
11
  private adaptable;
11
12
  constructor(api: AdaptableApi);
12
- getModuleAdaptableObjects(config?: {
13
- includeLayoutNotAssociatedObjects?: boolean;
14
- }): AdaptableObject[];
13
+ getModuleAdaptableObjects(config?: LayoutExtendedConfig): AdaptableObject[];
15
14
  hasNamedQueryReferences(): boolean;
16
15
  getTeamSharingAction(): TeamSharingImportInfo<Shortcut>;
17
16
  onAdaptableReady(): void;
@@ -22,5 +21,5 @@ export declare class ShortcutModule extends AdaptableModuleBase implements IKeyD
22
21
  toView(shortcut: Shortcut): AdaptableObjectView;
23
22
  toViewAll(): AdaptableObjectView[];
24
23
  getViewProperties(): AdaptableModuleView;
25
- canBeAssociatedWithLayouts(): boolean;
24
+ containsLayoutExtensions(): boolean;
26
25
  }
@@ -92,7 +92,7 @@ class ShortcutModule extends AdaptableModuleBase_1.AdaptableModuleBase {
92
92
  }
93
93
  toViewAll() {
94
94
  return this.getModuleAdaptableObjects({
95
- includeLayoutNotAssociatedObjects: this.showLayoutNotAssociatedObjects(),
95
+ includeLayoutNotExtendedObjects: this.showLayoutNonExtendedObjects(),
96
96
  }).map((shortcut) => this.toView(shortcut));
97
97
  }
98
98
  getViewProperties() {
@@ -108,7 +108,7 @@ class ShortcutModule extends AdaptableModuleBase_1.AdaptableModuleBase {
108
108
  },
109
109
  };
110
110
  }
111
- canBeAssociatedWithLayouts() {
111
+ containsLayoutExtensions() {
112
112
  return true;
113
113
  }
114
114
  }
@@ -1,9 +1,10 @@
1
1
  import { AdaptableModuleBase } from './AdaptableModuleBase';
2
2
  import { IModule } from './Interface/IModule';
3
3
  import { AdaptableApi } from '../Api/AdaptableApi';
4
- import { GridOptions } from 'ag-grid-enterprise';
4
+ import { AgModuleName, GridOptions } from 'ag-grid-enterprise';
5
5
  export declare class StatusBarModule extends AdaptableModuleBase implements IModule {
6
6
  constructor(api: AdaptableApi);
7
+ protected getAgGridModuleDependencies(): AgModuleName[];
8
+ isModuleEnabled(): boolean;
7
9
  syncStateWithOptions(agGridAdaptablePanels: GridOptions['statusBar']['statusPanels']): void;
8
- isModuleAvailable(): boolean;
9
10
  }
@@ -8,6 +8,12 @@ class StatusBarModule extends AdaptableModuleBase_1.AdaptableModuleBase {
8
8
  constructor(api) {
9
9
  super(ModuleConstants.StatusBarModuleId, ModuleConstants.StatusBarFriendlyName, 'statusbar', 'StatusBarPopup', 'Configure AdapTable Status Bar', api);
10
10
  }
11
+ getAgGridModuleDependencies() {
12
+ return ['StatusBarModule'];
13
+ }
14
+ isModuleEnabled() {
15
+ return this.api.statusBarApi.getAgGridStatusPanels().length > 0;
16
+ }
11
17
  syncStateWithOptions(agGridAdaptablePanels) {
12
18
  const statusPanelsState = this.api.statusBarApi.getAdaptableStatusBars();
13
19
  /**
@@ -29,8 +35,5 @@ class StatusBarModule extends AdaptableModuleBase_1.AdaptableModuleBase {
29
35
  });
30
36
  this.api.statusBarApi.setStatusBarPanels(newStatusPanelsState);
31
37
  }
32
- isModuleAvailable() {
33
- return super.isModuleAvailable() && this.api.statusBarApi.getAgGridStatusPanels().length > 0;
34
- }
35
38
  }
36
39
  exports.StatusBarModule = StatusBarModule;