@adaptabletools/adaptable 20.3.0 → 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 (415) 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 +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 +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 +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 +101 -7
  217. package/src/Api/Implementation/LayoutHelpers.d.ts +1 -0
  218. package/src/Api/Implementation/LayoutHelpers.js +23 -4
  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 +5 -5
  248. package/src/Api/Internal/LayoutInternalApi.js +42 -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 +7 -7
  261. package/src/Redux/ActionsReducers/StyledColumnRedux.d.ts +7 -0
  262. package/src/Redux/ActionsReducers/StyledColumnRedux.js +13 -0
  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 +1 -0
  317. package/src/Utilities/Extensions/ArrayExtensions.d.ts +15 -2
  318. package/src/Utilities/Extensions/ArrayExtensions.js +62 -13
  319. package/src/Utilities/ObjectFactory.js +3 -3
  320. package/src/Utilities/Services/AnnotationsService.js +1 -1
  321. package/src/Utilities/Services/Interface/IModuleService.d.ts +2 -1
  322. package/src/Utilities/Services/ModuleService.d.ts +3 -3
  323. package/src/Utilities/Services/ModuleService.js +19 -7
  324. package/src/View/AdaptableView.js +3 -1
  325. package/src/View/ColumnInfo/ColumnInfo.js +9 -3
  326. package/src/View/Components/AdaptableIconSelector/index.js +2 -3
  327. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.d.ts +0 -1
  328. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.js +2 -3
  329. package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.d.ts +0 -2
  330. package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.js +4 -7
  331. package/src/View/Components/ColumnFilter/ColumnFilter.js +11 -4
  332. package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +1 -1
  333. package/src/View/Components/ColumnFilter/FloatingFilter.js +1 -2
  334. package/src/View/Components/ColumnFilter/LayoutColumnFilter.js +1 -1
  335. package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +2 -2
  336. package/src/View/Components/ColumnFilter/components/FloatingFilterValues.js +2 -2
  337. package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.d.ts +1 -1
  338. package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.js +2 -2
  339. package/src/View/Components/ColumnFilter/utils.d.ts +2 -2
  340. package/src/View/Components/ColumnFilter/utils.js +6 -1
  341. package/src/View/Components/EntityRulesEditor/index.js +1 -2
  342. package/src/View/Components/FilterForm/ListBoxFilterForm.js +1 -1
  343. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +6 -6
  344. package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -2
  345. package/src/View/Components/Selectors/BulkUpdateValueSelector.js +1 -1
  346. package/src/View/Components/Selectors/ColumnSelector.js +1 -1
  347. package/src/View/Components/Selectors/FieldSelector.js +1 -1
  348. package/src/View/Components/Selectors/PermittedValuesSelector.d.ts +1 -0
  349. package/src/View/Components/Selectors/PermittedValuesSelector.js +2 -2
  350. package/src/View/Dashboard/Dashboard.js +2 -2
  351. package/src/View/Dashboard/DashboardPopup.js +3 -1
  352. package/src/View/Dashboard/PinnedDashboard.js +1 -1
  353. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +9 -21
  354. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +58 -21
  355. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +11 -11
  356. package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +1 -1
  357. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +1 -1
  358. package/src/View/Layout/TransposedPopup.js +2 -2
  359. package/src/View/Layout/Wizard/sections/ColumnsSection.js +64 -9
  360. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +5 -5
  361. package/src/View/StatusBar/AdaptableStatusBar.js +1 -4
  362. package/src/View/StatusBar/StatusBarPopup.js +1 -1
  363. package/src/View/Theme/ThemeSelector.js +1 -1
  364. package/src/agGrid/AdaptableAgGrid.d.ts +11 -7
  365. package/src/agGrid/AdaptableAgGrid.js +251 -216
  366. package/src/agGrid/AdaptableFilterHandler.d.ts +18 -0
  367. package/src/agGrid/AdaptableFilterHandler.js +61 -0
  368. package/src/agGrid/AgGridAdapter.d.ts +3 -7
  369. package/src/agGrid/AgGridAdapter.js +13 -46
  370. package/src/agGrid/AgGridColumnAdapter.d.ts +2 -2
  371. package/src/agGrid/AgGridColumnAdapter.js +81 -36
  372. package/src/agGrid/AgGridFilterAdapter.d.ts +2 -0
  373. package/src/agGrid/AgGridFilterAdapter.js +48 -0
  374. package/src/agGrid/AgGridFloatingFilterAdapter.d.ts +2 -0
  375. package/src/agGrid/{FloatingFilterWrapper.js → AgGridFloatingFilterAdapter.js} +24 -35
  376. package/src/agGrid/AgGridModulesAdapter.d.ts +15 -0
  377. package/src/agGrid/AgGridModulesAdapter.js +66 -0
  378. package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +1 -1
  379. package/src/agGrid/editors/AdaptablePercentageEditor/InternalAdaptablePercentageEditor.js +1 -1
  380. package/src/components/Dialog/index.js +1 -1
  381. package/src/components/Dropdown/Arrows.js +2 -2
  382. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.d.ts +1 -1
  383. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +2 -2
  384. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -2
  385. package/src/components/FileDroppable/index.js +1 -1
  386. package/src/components/IconSelector/IconSelector.d.ts +2 -2
  387. package/src/components/OverlayTrigger/index.js +1 -1
  388. package/src/components/Select/Select.d.ts +1 -1
  389. package/src/components/Select/Select.js +116 -24
  390. package/src/components/icons/DefaultIcon.d.ts +0 -1
  391. package/src/components/icons/DefaultIcon.js +0 -6
  392. package/src/env.js +2 -2
  393. package/src/layout-manager/src/LayoutManagerModel.d.ts +6 -10
  394. package/src/layout-manager/src/index.d.ts +11 -3
  395. package/src/layout-manager/src/index.js +302 -87
  396. package/src/layout-manager/src/normalizeLayoutModel.js +7 -4
  397. package/src/layout-manager/src/simplifyLayoutModel.js +4 -4
  398. package/src/metamodel/adaptable.metamodel.d.ts +70 -19
  399. package/src/metamodel/adaptable.metamodel.js +1 -1
  400. package/src/migration/AdaptableUpgradeHelper.js +2 -0
  401. package/src/migration/VersionUpgrade17.js +1 -1
  402. package/src/migration/VersionUpgrade20.js +1 -0
  403. package/src/migration/VersionUpgrade21.d.ts +6 -0
  404. package/src/migration/VersionUpgrade21.js +24 -0
  405. package/src/types.d.ts +7 -8
  406. package/tsconfig.esm.tsbuildinfo +1 -1
  407. package/src/AdaptableState/Common/ExtendedLayoutInfo.d.ts +0 -27
  408. package/src/agGrid/FilterWrapper.d.ts +0 -2
  409. package/src/agGrid/FilterWrapper.js +0 -131
  410. package/src/agGrid/FloatingFilterWrapper.d.ts +0 -2
  411. package/src/agGrid/agGridModules.d.ts +0 -3
  412. package/src/agGrid/agGridModules.js +0 -15
  413. package/src/agGrid/getAgGridFilterNotifyModelFn.d.ts +0 -2
  414. package/src/agGrid/getAgGridFilterNotifyModelFn.js +0 -16
  415. /package/src/AdaptableState/Common/{ExtendedLayoutInfo.js → ExtendedLayout.js} +0 -0
@@ -41,36 +41,36 @@ export interface ColumnOptions {
41
41
  */
42
42
  export interface BaseColumnHeaderContext extends BaseContext {
43
43
  /**
44
- * The default header name for the column
44
+ * Default header name for Column
45
45
  */
46
46
  defaultHeaderName: string;
47
47
  /**
48
- * The mame of the current Layout
48
+ * Name of Current Layout
49
49
  */
50
50
  currentLayoutName: string;
51
51
  /**
52
- * The type (table/pivot) of the current Layout
52
+ * Type (table/pivot) of Current Layout
53
53
  */
54
54
  currentLayoutType: 'table' | 'pivot';
55
55
  /**
56
- * The current Layout
56
+ * Current Layout
57
57
  */
58
58
  currentLayout: Layout;
59
59
  }
60
60
  /**
61
- * Context for Columns created automatically by AG Grid when grouping
61
+ * Context for Columns created automatically by AG Grid when Row Grouping
62
62
  */
63
63
  export interface AutoGroupColumnHeaderContext extends BaseColumnHeaderContext {
64
64
  /**
65
- * Auto-generated Group Column when GroupDisplayType is `single` column
65
+ * Auto-generated Row Group Column (when RowGroupDisplayType is `single`)
66
66
  */
67
67
  columnType: 'autoGroupColumn';
68
68
  /**
69
- * Technical ID of the Column
69
+ * Id of the Column
70
70
  */
71
71
  columnId: string;
72
72
  /**
73
- * IDs of the Columns that are grouped
73
+ * Ids of all Row Grouped Columns
74
74
  */
75
75
  groupedColumnIds: string[];
76
76
  }
@@ -79,15 +79,15 @@ export interface AutoGroupColumnHeaderContext extends BaseColumnHeaderContext {
79
79
  */
80
80
  export interface RowGroupColumnHeaderContext extends BaseColumnHeaderContext {
81
81
  /**
82
- * A Row Grouped Column - see `TableLayout.RowGroupedColumns` or `PivotLayout.PivotGroupedColumns`
82
+ * A Row Grouped Column (created in both Table and Pivot Layout)
83
83
  */
84
84
  columnType: 'rowGroupColumn';
85
85
  /**
86
- * Technical ID of the Column
86
+ * Id of the Column
87
87
  */
88
88
  columnId: string;
89
89
  /**
90
- * ID of the grouped Column
90
+ * Id of Row Grouped Column
91
91
  */
92
92
  groupColumnId: string;
93
93
  }
@@ -96,15 +96,15 @@ export interface RowGroupColumnHeaderContext extends BaseColumnHeaderContext {
96
96
  */
97
97
  export interface TableColumnHeaderContext extends BaseColumnHeaderContext {
98
98
  /**
99
- * Table Column - see `TableLayout.TableColumns`
99
+ * Table Column (created in Table Layouts)
100
100
  */
101
101
  columnType: 'tableColumn';
102
102
  /**
103
- * Technical ID of the Column
103
+ * Id of the Column
104
104
  */
105
105
  columnId: string;
106
106
  /**
107
- * Optional Aggregation function of the Column - see `TableLayout.TableAggregationColumns`
107
+ * Aggregation function of Column (optional)
108
108
  */
109
109
  aggregation?: string;
110
110
  }
@@ -113,19 +113,19 @@ export interface TableColumnHeaderContext extends BaseColumnHeaderContext {
113
113
  */
114
114
  export interface TableColumnGroupHeaderContext extends BaseColumnHeaderContext {
115
115
  /**
116
- * Column Group (used when Column Grouping)
116
+ * Table Column Group (used when Column Grouping in Table Layouts)
117
117
  */
118
118
  columnType: 'tableColumnGroup';
119
119
  /**
120
- * Technical ID of the Column Group - see `ColGroupDef.groupId`
120
+ * Id of Column Group
121
121
  */
122
122
  groupId: string;
123
123
  /**
124
- * IDs of the Column Group children - see `ColGroupDef.children`
124
+ * Ids of Column Group's children
125
125
  */
126
126
  childrenColumnIds: string[];
127
127
  /**
128
- * State of the Column Group
128
+ * Expanded / Collapsed state of Column Group
129
129
  */
130
130
  state: 'expanded' | 'collapsed';
131
131
  }
@@ -134,19 +134,19 @@ export interface TableColumnGroupHeaderContext extends BaseColumnHeaderContext {
134
134
  */
135
135
  export interface PivotColumnGroupHeaderContext extends BaseColumnHeaderContext {
136
136
  /**
137
- * Pivot Column Column - created by `PivotLayout.PivotColumns`
137
+ * Pivot Column Group (created for each distinct value in a PivotColumn)
138
138
  */
139
139
  columnType: 'pivotColumnGroup';
140
140
  /**
141
- * Technical ID of the generated Column Group
141
+ * Id of generated Column Group
142
142
  */
143
143
  groupId: string;
144
144
  /**
145
- * Pivot Keys for the current Column Group
145
+ * Pivot Keys for Column Group
146
146
  */
147
147
  pivotKeys: string[];
148
148
  /**
149
- * State of the Column Group
149
+ * Expanded / Collapsed state of Column Group
150
150
  */
151
151
  state: 'expanded' | 'collapsed';
152
152
  }
@@ -155,11 +155,11 @@ export interface PivotColumnGroupHeaderContext extends BaseColumnHeaderContext {
155
155
  */
156
156
  export interface PivotResultColumnHeaderContext extends BaseColumnHeaderContext {
157
157
  /**
158
- * Pivot Result Column - intersecton of `PivotLayout.PivotAggregationColumns` and `PivotLayout.PivotColumns`
158
+ * Pivot Result Column (unique intersection of PivotAggregationColumn and PivotColumn)
159
159
  */
160
160
  columnType: 'pivotResultColumn';
161
161
  /**
162
- * Technical ID of the generated Column
162
+ * Id of generated Column
163
163
  */
164
164
  columnId: string;
165
165
  /**
@@ -167,11 +167,11 @@ export interface PivotResultColumnHeaderContext extends BaseColumnHeaderContext
167
167
  */
168
168
  pivotKeys: string[];
169
169
  /**
170
- * ID of the Aggregated Column - see `PivotLayout.PivotAggregationColumns`
170
+ * Id of Pivot Aggregated Column
171
171
  */
172
172
  aggregatedColumnId: string;
173
173
  /**
174
- * Aggregation function of the Column - see `PivotLayout.PivotAggregationColumns.AggregationColumnValue`
174
+ * Aggregation function of Column
175
175
  */
176
176
  aggregation: string;
177
177
  }
@@ -180,15 +180,15 @@ export interface PivotResultColumnHeaderContext extends BaseColumnHeaderContext
180
180
  */
181
181
  export interface PivotGrandTotalHeaderContext extends BaseColumnHeaderContext {
182
182
  /**
183
- * Pivot Grand Total - see `PivotLayout.PivotGrandTotal`
183
+ * Pivot Grand Total Column
184
184
  */
185
185
  columnType: 'pivotGrandTotal';
186
186
  /**
187
- * ID of the Aggregated Column - see `PivotLayout.PivotAggregationColumns`
187
+ * Id of Pivot Aggregated Column
188
188
  */
189
189
  aggregatedColumnId: string;
190
190
  /**
191
- * Aggregation function of the Column - see `PivotLayout.PivotAggregationColumns.AggregationColumnValue`
191
+ * Aggregation function of Column
192
192
  */
193
193
  aggregation: string;
194
194
  }
@@ -197,19 +197,19 @@ export interface PivotGrandTotalHeaderContext extends BaseColumnHeaderContext {
197
197
  */
198
198
  export interface PivotColumnTotalHeaderContext extends BaseColumnHeaderContext {
199
199
  /**
200
- * Pivot Column Total - see `PivotLayout.PivotColumnTotal`
200
+ * Pivot Column Total
201
201
  */
202
202
  columnType: 'pivotColumnTotal';
203
203
  /**
204
- * Current Pivot Keys
204
+ * Key (i.e. column value) of Pivot Column
205
205
  */
206
206
  pivotKey: string;
207
207
  /**
208
- * ID of the Pivot Column - see `PivotLayout.PivotColumns`
208
+ * Id of Pivot Column
209
209
  */
210
210
  pivotColumnId: string;
211
211
  /**
212
- * Aggregation function of the Column - see `PivotLayout.PivotAggregationColumns.AggregationColumnValue`
212
+ * Aggregation function of Column
213
213
  */
214
214
  aggregation: string;
215
215
  }
@@ -218,23 +218,23 @@ export interface PivotColumnTotalHeaderContext extends BaseColumnHeaderContext {
218
218
  */
219
219
  export interface PivotAggregationTotalHeaderContext extends BaseColumnHeaderContext {
220
220
  /**
221
- * Pivot Aggregation Total Column - see `PivotLayout.PivotAggregationColumns.TotalColumn`
221
+ * Pivot Aggregation Total Column
222
222
  */
223
223
  columnType: 'pivotAggregationTotal';
224
224
  /**
225
- * ID of the Aggregated Column - see `PivotLayout.PivotAggregationColumns`
225
+ * Id of Aggregated Column
226
226
  */
227
227
  aggregatedColumnId: string;
228
228
  /**
229
- * Aggregation function of the Column - see `PivotLayout.PivotAggregationColumns.AggregationColumnValue`
229
+ * Aggregation function of Column
230
230
  */
231
231
  aggregation: string;
232
232
  /**
233
- * ID of the Pivot Column - see `PivotLayout.PivotColumns`
233
+ * Id of Pivot Column
234
234
  */
235
235
  pivotColumnId: string;
236
236
  /**
237
- * Current Pivot Keys
237
+ * Key (i.e. column value) of Pivot Column
238
238
  */
239
239
  pivotKey: string;
240
240
  }
@@ -150,6 +150,7 @@ const DefaultAdaptableOptions = {
150
150
  columnFilterOptions: {
151
151
  indicateFilteredColumns: true,
152
152
  autoApplyColumnFilter: true,
153
+ cacheInFilterValues: true,
153
154
  defaultNumericColumnFilter: 'Equals',
154
155
  defaultTextColumnFilter: 'Contains',
155
156
  defaultDateColumnFilter: 'On',
@@ -187,7 +188,7 @@ const DefaultAdaptableOptions = {
187
188
  },
188
189
  layoutTagOptions: {
189
190
  autoGenerateTagsForLayouts: false,
190
- isObjectAvailableInLayout: undefined,
191
+ isObjectExtendedInLayout: undefined,
191
192
  autoCheckTagsForLayouts: false,
192
193
  },
193
194
  },
@@ -216,7 +217,7 @@ const DefaultAdaptableOptions = {
216
217
  systemFlashingCellPredicates: SystemFlashingCellPredicateIds,
217
218
  systemBadgeStylePredicates: SystemBadgeStylePredicateIds,
218
219
  caseSensitivePredicates: false,
219
- evaluateValuesPredicateUsingTime: true,
220
+ evaluateInPredicateUsingTime: true,
220
221
  },
221
222
  quickSearchOptions: {
222
223
  clearQuickSearchOnStartUp: false,
@@ -54,14 +54,11 @@ export interface CustomEditColumnValuesContext<TData = any> extends AdaptableCol
54
54
  /**
55
55
  * Information about items in the Edit Controls
56
56
  */
57
- export interface CustomEditColumnValueInfo {
58
- /**
59
- * Item's label
60
- */ label?: string;
61
- /**
62
- * Value of Item being shown
63
- */
57
+ export interface EditColumnValueInfo {
64
58
  value: any;
59
+ label?: string;
60
+ }
61
+ export interface CustomEditColumnValueInfo extends EditColumnValueInfo {
65
62
  }
66
63
  /**
67
64
  * Used for Server Validation ie. after an edit in AG Grid which must be checked on Server
@@ -1,5 +1,6 @@
1
1
  import { FilterActionOnDataChange } from '../AdaptableState/Common/FilterActionOnDataChange';
2
2
  import { BaseContext } from '../../types';
3
+ import { AdaptableColumn } from '../AdaptableState/Common/AdaptableColumn';
3
4
  import { SystemAlertPredicateId, SystemFilterPredicateId } from '../../types';
4
5
  import { StrictExtract } from '../Utilities/Extensions/TypeExtensions';
5
6
  import { AdaptableColumnContext } from '../AdaptableState/Common/AdaptableColumnContext';
@@ -78,41 +79,48 @@ export interface ColumnFilterOptions<TData = any> {
78
79
  */
79
80
  indicateFilteredColumns?: boolean;
80
81
  /**
81
- * Apply selected Column Filters as soon as they are clicked; if false an Apply Filter button is displayed
82
+ * Apply Column Filters immediately; if false an Apply Filter button is displayed and Quick Filter is disabled
82
83
  *
83
84
  * @defaultValue true
84
85
  * @gridInfoItem
85
86
  * @noCodeItem
86
87
  */
87
- autoApplyColumnFilter?: boolean;
88
+ autoApplyColumnFilter?: boolean | ((context: AdaptableColumnContext) => boolean);
89
+ /**
90
+ * Whether to cache the values in the IN Filter component
91
+ * @defaultValue true
92
+ * @gridInfoItem
93
+ * @noCodeItem
94
+ */
95
+ cacheInFilterValues?: boolean | ((context: AdaptableColumnContext) => boolean);
88
96
  /**
89
97
  * Default filter type for numeric Columns
90
98
  *
91
99
  * @defaultValue Equals
92
100
  * @gridInfoItem
93
101
  */
94
- defaultNumericColumnFilter?: StrictExtract<SystemFilterPredicateId, 'GreaterThan' | 'LessThan' | 'Equals' | 'NotEquals' | 'In'> | ((adaptableColumnContext: AdaptableColumnContext<TData>) => StrictExtract<SystemFilterPredicateId, 'GreaterThan' | 'LessThan' | 'Equals' | 'NotEquals' | 'In'>);
102
+ defaultNumericColumnFilter?: StrictExtract<SystemFilterPredicateId, 'GreaterThan' | 'LessThan' | 'Equals' | 'NotEquals' | 'In'> | ((adaptableColumnContext: DefaultPredicateFilterContext) => StrictExtract<SystemFilterPredicateId, 'GreaterThan' | 'LessThan' | 'Equals' | 'NotEquals' | 'In'>);
95
103
  /**
96
104
  * Default filter type for text Columns
97
105
  *
98
106
  * @defaultValue Contains
99
107
  * @gridInfoItem
100
108
  */
101
- defaultTextColumnFilter?: StrictExtract<SystemFilterPredicateId, 'Is' | 'IsNot' | 'Contains' | 'NotContains' | 'StartsWith' | 'EndsWith' | 'Regex' | 'In'> | ((adaptableColumnContext: AdaptableColumnContext<TData>) => StrictExtract<SystemFilterPredicateId, 'Is' | 'IsNot' | 'Contains' | 'NotContains' | 'StartsWith' | 'EndsWith' | 'Regex' | 'In'>);
109
+ defaultTextColumnFilter?: StrictExtract<SystemFilterPredicateId, 'Is' | 'IsNot' | 'Contains' | 'NotContains' | 'StartsWith' | 'EndsWith' | 'Regex' | 'In'> | ((adaptableColumnContext: DefaultPredicateFilterContext) => StrictExtract<SystemFilterPredicateId, 'Is' | 'IsNot' | 'Contains' | 'NotContains' | 'StartsWith' | 'EndsWith' | 'Regex' | 'In'>);
102
110
  /**
103
111
  * Default filter type for date Columns
104
112
  *
105
113
  * @defaultValue On
106
114
  * @gridInfoItem
107
115
  */
108
- defaultDateColumnFilter?: StrictExtract<SystemFilterPredicateId, 'After' | 'Before' | 'On' | 'NotOn' | 'In'> | ((adaptableColumnContext: AdaptableColumnContext<TData>) => StrictExtract<SystemFilterPredicateId, 'After' | 'Before' | 'On' | 'NotOn' | 'In'>);
116
+ defaultDateColumnFilter?: StrictExtract<SystemFilterPredicateId, 'After' | 'Before' | 'On' | 'NotOn' | 'In'> | ((adaptableColumnContext: DefaultPredicateFilterContext) => StrictExtract<SystemFilterPredicateId, 'After' | 'Before' | 'On' | 'NotOn' | 'In'>);
109
117
  /**
110
118
  * Default filter type for array Columns ('textArray', 'numberArray', etc.)
111
119
  *
112
120
  * @defaultValue In
113
121
  * @gridInfoItem
114
122
  */
115
- defaultArrayColumnFilter?: StrictExtract<SystemFilterPredicateId, 'In' | 'NotIn' | 'Blanks' | 'NonBlanks'> | ((adaptableColumnContext: AdaptableColumnContext<TData>) => StrictExtract<SystemFilterPredicateId, 'In' | 'NotIn' | 'Blanks' | 'NonBlanks'>);
123
+ defaultArrayColumnFilter?: StrictExtract<SystemFilterPredicateId, 'In' | 'NotIn' | 'Blanks' | 'NonBlanks'> | ((adaptableColumnContext: DefaultPredicateFilterContext) => StrictExtract<SystemFilterPredicateId, 'In' | 'NotIn' | 'Blanks' | 'NonBlanks'>);
116
124
  /**
117
125
  * Hides Dropdown in Quick Filter Bar for a given Column
118
126
  *
@@ -173,32 +181,55 @@ export interface IsRowFilterableContext<TData = any> extends BaseContext {
173
181
  */
174
182
  data: TData;
175
183
  }
184
+ export type AdaptableFilterComponentLocation = 'FilterBar' | 'FilterForm';
176
185
  /**
177
- * Information about items in the IN Column Filter
186
+ * Context used for setting default Predicates for Column Filters
178
187
  */
179
- export interface InFilterValueInfo {
188
+ export interface DefaultPredicateFilterContext<TData = any> extends BaseContext {
180
189
  /**
181
- * The value of the item being shown
190
+ * Filter Component being displayed: FilterBar or FilterForm
182
191
  */
183
- value: any;
192
+ filterComponent: AdaptableFilterComponentLocation;
193
+ /**
194
+ * Current Column
195
+ */
196
+ column: AdaptableColumn<TData>;
197
+ }
198
+ /**
199
+ * Item in the IN Column Filter
200
+ */
201
+ export interface InFilterValue<ValueType = any> {
184
202
  /**
185
203
  * Item's label
186
204
  */
187
- label?: string;
205
+ label: string;
188
206
  /**
189
- * Whether item is currently selected
207
+ * The value of Item being shown
208
+ */
209
+ value: ValueType;
210
+ /**
211
+ * Tooltip for Item (if true, the label is used as tooltip)
212
+ */
213
+ tooltip?: boolean | string;
214
+ }
215
+ /**
216
+ * Information about items in the IN Column Filter
217
+ */
218
+ export interface InFilterValueInfo extends InFilterValue {
219
+ /**
220
+ * Whether Item is currently selected
190
221
  */
191
222
  isSelected?: boolean;
192
223
  /**
193
- * How many times the item appears in the column
224
+ * How many times Item appears in the column
194
225
  */
195
226
  count?: number;
196
227
  /**
197
- * How many times the item appears in the column in filtered rows
228
+ * How many times Item appears in the column in filtered rows
198
229
  */
199
230
  visibleCount?: number;
200
231
  /**
201
- * Whether the item is currently visible in the Grid (i.e. in filtered rows)
232
+ * Whether Item is currently visible in Grid (i.e. in filtered rows)
202
233
  */
203
234
  visible?: boolean;
204
235
  }
@@ -214,6 +245,10 @@ export interface CustomInFilterValuesContext<TData = any> extends AdaptableColum
214
245
  * Default values but Sorted based on Column's sort
215
246
  */
216
247
  sortedValues: Required<InFilterValueInfo>[];
248
+ /**
249
+ * Default values but in the order in which they are currently listed in the grid - (after all the sorting has been applied, or, if no sorting, in their natural order)
250
+ */
251
+ orderedValues: Required<InFilterValueInfo>[];
217
252
  /**
218
253
  * Search text in the IN Filter component - used when filtering on server
219
254
  */
@@ -1,15 +1,6 @@
1
- import { AlertDefinition } from '../AdaptableState/AlertState';
2
- import { CustomSort } from '../AdaptableState/CustomSortState';
3
- import { FlashingCellDefinition } from '../AdaptableState/FlashingCellState';
4
- import { FormatColumn } from '../AdaptableState/FormatColumnState';
5
- import { PlusMinusNudge } from '../AdaptableState/PlusMinusState';
6
- import { Shortcut } from '../AdaptableState/ShortcutState';
7
- import { StyledColumn } from '../AdaptableState/StyledColumnState';
8
- import { BaseSchedule } from '../AdaptableState/Common/Schedule';
9
1
  import { Layout } from '../AdaptableState/LayoutState';
10
- import { AdaptableModule } from '../AdaptableState/Common/Types';
11
2
  import { AdaptableObjectTag } from '../AdaptableState/Common/AdaptableObject';
12
- import { BaseContext } from '../../types';
3
+ import { BaseContext, LayoutExtensionModule, LayoutExtensionObject } from '../../types';
13
4
  /**
14
5
  * Options for configuring Layouts; manage Column visibility, order, sorting, grouping, width etc.
15
6
  */
@@ -38,15 +29,15 @@ export interface LayoutTagOptions {
38
29
  */
39
30
  autoGenerateTagsForLayouts?: boolean | ((context: AutoGenerateTagsForLayoutsContext) => AdaptableObjectTag[]);
40
31
  /**
41
- * Automatically assumes that any `LayoutAssociatedObject` is available in the current Layout if it has a tag with the Layouts name (or no tags at all)
32
+ * Automatically assumes that any `LayoutExtensionObject` is available in the current Layout if it has a tag with the Layouts name (or no tags at all)
42
33
  *
43
34
  * @defaultValue false
44
35
  */
45
36
  autoCheckTagsForLayouts?: boolean;
46
37
  /**
47
- * Checks if provided Adaptable Object is available in given Layout
38
+ * Checks if provided Adaptable Object is extended in given Layout
48
39
  */
49
- isObjectAvailableInLayout?: (layoutAvailableContext: LayoutAvailableContext) => boolean;
40
+ isObjectExtendedInLayout?: (layoutExtendedContext: LayoutExtendedContext) => boolean;
50
41
  }
51
42
  /**
52
43
  * Customize how Layouts are displayed in Settings Panel
@@ -60,26 +51,22 @@ export interface LayoutViewOptions {
60
51
  maxColumnsToDisplay?: number;
61
52
  }
62
53
  /**
63
- * Context for `LayoutOptions.isObjectAvailableInLayout` function
54
+ * Context for `LayoutOptions.isObjectExtendedInLayout` function
64
55
  */
65
- export interface LayoutAvailableContext extends BaseContext {
56
+ export interface LayoutExtendedContext extends BaseContext {
66
57
  /**
67
58
  * Object being checked
68
59
  */
69
- adaptableObject: LayoutAssociatedObject;
60
+ adaptableObject: LayoutExtensionObject;
70
61
  /**
71
62
  * Current Adaptable Module
72
63
  */
73
- module: AdaptableModule;
64
+ module: LayoutExtensionModule;
74
65
  /**
75
66
  * Current Layout
76
67
  */
77
68
  layout: Layout;
78
69
  }
79
- /**
80
- * Types of Adaptable Objects that can be associated with a Layout
81
- */
82
- export type LayoutAssociatedObject = AlertDefinition | CustomSort | FlashingCellDefinition | FormatColumn | PlusMinusNudge | StyledColumn | Shortcut | BaseSchedule;
83
70
  /**
84
71
  * Context for `LayoutOptions.autoGenerateTagsForLayouts` method
85
72
  */
@@ -41,7 +41,7 @@ export interface PredicateOptions {
41
41
  * @defaultValue true
42
42
  * @noCodeItem
43
43
  */
44
- evaluateValuesPredicateUsingTime?: boolean;
44
+ evaluateInPredicateUsingTime?: boolean;
45
45
  }
46
46
  /**
47
47
  * Context used for setting which System Predicates are available
@@ -23,7 +23,7 @@ export interface UserInterfaceOptions<TData = any> {
23
23
  /**
24
24
  * Bespoke icons that can be used in AdapTable (e.g. Badge Styles and Buttons)
25
25
  */
26
- customIcons?: CustomIcon[];
26
+ customIcons?: CustomIcon[] | (() => CustomIcon[]);
27
27
  /**
28
28
  * Options for managing and customizing date inputs in AdapTable
29
29
  */
@@ -1,5 +1,7 @@
1
1
  import { AdaptableObject } from './AdaptableObject';
2
2
  import { BaseCellDataType, ColDef } from 'ag-grid-enterprise';
3
+ import { UniqueGridCell } from '../Selection/GridCell';
4
+ import { ColumnFilter } from './ColumnFilter';
3
5
  /**
4
6
  * Defines data type of a Column; can be an AG Grid BaseCellDataType or an AdapTable array-related one
5
7
  */
@@ -210,3 +212,8 @@ export interface AdaptableColumnProperties {
210
212
  pivotable: boolean;
211
213
  aggregatable: boolean;
212
214
  }
215
+ export interface AdaptableColumnSummary {
216
+ column: AdaptableColumn;
217
+ columnFilter: ColumnFilter;
218
+ uniqueGridCells: UniqueGridCell[];
219
+ }
@@ -51,7 +51,7 @@ export const SystemPredicateDefs = [
51
51
  }
52
52
  if (column.dataType === 'date') {
53
53
  return inputs.some((input) => {
54
- if (adaptableApi.optionsApi.getPredicateOptions().evaluateValuesPredicateUsingTime) {
54
+ if (adaptableApi.optionsApi.getPredicateOptions().evaluateInPredicateUsingTime) {
55
55
  return isEqual(input, value);
56
56
  }
57
57
  else {
@@ -125,7 +125,7 @@ export const SystemPredicateDefs = [
125
125
  return true;
126
126
  }
127
127
  if (column.dataType === 'date') {
128
- if (adaptableApi.optionsApi.getPredicateOptions().evaluateValuesPredicateUsingTime) {
128
+ if (adaptableApi.optionsApi.getPredicateOptions().evaluateInPredicateUsingTime) {
129
129
  return inputs.every((input) => {
130
130
  return !isEqual(input, value);
131
131
  });
@@ -17,7 +17,7 @@ export interface CustomWindowConfig {
17
17
  */
18
18
  icon?: AdaptableSystemIconName;
19
19
  /**
20
- * Render function to display content in Custom Window(if not using a framework component)
20
+ * Render function to display content in Custom Window (if not using a framework component)
21
21
  */
22
22
  render?: (customRenderContext: CustomRenderContext) => string | null;
23
23
  /**
@@ -25,7 +25,7 @@ export interface CustomWindowConfig {
25
25
  */
26
26
  frameworkComponent?: AdaptableFrameworkComponent;
27
27
  /**
28
- * Callback function to be called when the framework component is destroyed
28
+ * Callback function invoked when framework component is destroyed
29
29
  */
30
30
  onFrameworkComponentDestroyed?: () => void;
31
31
  /**
@@ -0,0 +1,50 @@
1
+ import { Layout } from '../LayoutState';
2
+ import { AlertDefinition } from '../AlertState';
3
+ import { CustomSort } from '../CustomSortState';
4
+ import { FlashingCellDefinition } from '../FlashingCellState';
5
+ import { FormatColumn } from '../FormatColumnState';
6
+ import { PlusMinusNudge } from '../PlusMinusState';
7
+ import { Shortcut } from '../ShortcutState';
8
+ import { StyledColumn } from '../StyledColumnState';
9
+ import { BaseSchedule } from './Schedule';
10
+ /**
11
+ * Defines an Extended Layout - provides a Layout and all objects that refer to it
12
+ */
13
+ export interface ExtendedLayout {
14
+ /**
15
+ * Layout being extended
16
+ */
17
+ Layout: Layout;
18
+ /**
19
+ * Object to be included in the Layout
20
+ */
21
+ Extensions: LayoutExtension[];
22
+ }
23
+ /**
24
+ * Defines an object being extended in a Layout
25
+ */
26
+ export interface LayoutExtension {
27
+ /**
28
+ * Module to which Extended Object belongs
29
+ */
30
+ Module: LayoutExtensionModule;
31
+ /**
32
+ * Object being Extended
33
+ */
34
+ Object: LayoutExtensionObject;
35
+ }
36
+ /**
37
+ * Types of Adaptable Objects that can added to Extended Layouts
38
+ */
39
+ export type LayoutExtensionObject = AlertDefinition | CustomSort | FlashingCellDefinition | FormatColumn | PlusMinusNudge | StyledColumn | Shortcut | BaseSchedule;
40
+ /**
41
+ * Modules which can provide objects in Extended Layouts
42
+ */
43
+ export type LayoutExtensionModule = 'Alert' | 'CustomSort' | 'FlashingCell' | 'FormatColumn' | 'FreeTextColumn' | 'PlusMinus' | 'Schedule' | 'Shortcut' | 'StyledColumn';
44
+ /**
45
+ * Configuration for API methods which load objects that can be Layout extensions
46
+ */
47
+ export interface LayoutExtendedConfig {
48
+ includeLayoutNotExtendedObjects?: boolean;
49
+ extendedLayoutName?: string;
50
+ }
@@ -6,7 +6,7 @@ import { RowScope } from './Common/RowScope';
6
6
  import { SuspendableObject } from './Common/SuspendableObject';
7
7
  import { XOR } from '../Utilities/Extensions/TypeExtensions';
8
8
  import { TypeHint } from './Common/Types';
9
- import { AdaptableBooleanQuery } from '../types';
9
+ import { AdaptableBooleanQuery, LayoutExtendedConfig } from '../types';
10
10
  import { AdaptableColumnPredicate } from './Common/AdaptablePredicate';
11
11
  /**
12
12
  * Adaptable State Section for Format Column Module
@@ -89,3 +89,10 @@ export type SystemFormatColumnPredicateIds = SystemFormatColumnPredicateId[];
89
89
  * List of System Predicates available for Format Columns
90
90
  */
91
91
  export type SystemFormatColumnPredicateId = 'Blanks' | 'NonBlanks' | 'Equals' | 'NotEquals' | 'GreaterThan' | 'LessThan' | 'Positive' | 'Negative' | 'Zero' | 'Between' | 'NotBetween' | 'Is' | 'IsNot' | 'Contains' | 'NotContains' | 'StartsWith' | 'EndsWith' | 'Regex' | 'Today' | 'Yesterday' | 'Tomorrow' | 'ThisWeek' | 'ThisMonth' | 'ThisQuarter' | 'ThisYear' | 'InPast' | 'InFuture' | 'Before' | 'After' | 'On' | 'NotOn' | 'NextWorkDay' | 'LastWorkDay' | 'WorkDay' | 'Holiday' | 'True' | 'False' | 'In' | 'NotIn';
92
+ /**
93
+ * Config for api methods that get Format Columns
94
+ */
95
+ export interface FormatColumnConfig extends LayoutExtendedConfig {
96
+ includeSuspended?: boolean;
97
+ target?: FormatColumnTarget;
98
+ }
@@ -93,7 +93,7 @@ export interface InternalState extends IPushPullState, OpenFinState {
93
93
  * Keeps session-relevant information for Layout
94
94
  */
95
95
  Layout: {
96
- ShowLayoutNotAssociatedObjects: boolean;
96
+ showLayoutNonExtendedObjects: boolean;
97
97
  };
98
98
  /**
99
99
  * Equivalent of `UserInterfaceOptions.disableDeleteConfirmation`