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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (427) hide show
  1. package/agGrid.d.ts +2 -1
  2. package/agGrid.js +2 -1
  3. package/base.css +36 -15
  4. package/base.css.map +1 -1
  5. package/icons/add-circle.svg +1 -0
  6. package/icons/add.svg +1 -0
  7. package/icons/alert.svg +1 -0
  8. package/icons/align-center.svg +1 -0
  9. package/icons/align-justify.svg +1 -0
  10. package/icons/align-left.svg +1 -0
  11. package/icons/align-right.svg +1 -0
  12. package/icons/arrow-down-long.svg +1 -0
  13. package/icons/arrow-down.svg +1 -0
  14. package/icons/arrow-expand.svg +1 -0
  15. package/icons/arrow-left.svg +1 -0
  16. package/icons/arrow-right.svg +1 -0
  17. package/icons/arrow-up-long.svg +1 -0
  18. package/icons/arrow-up.svg +1 -0
  19. package/icons/assignment.svg +1 -0
  20. package/icons/badge.svg +1 -0
  21. package/icons/bold.svg +1 -0
  22. package/icons/boolean-list.svg +1 -0
  23. package/icons/brain.svg +1 -0
  24. package/icons/broadcast.svg +1 -0
  25. package/icons/brush.svg +1 -0
  26. package/icons/building.svg +1 -0
  27. package/icons/calculated-column.svg +1 -0
  28. package/icons/calendar.svg +1 -0
  29. package/icons/call.svg +1 -0
  30. package/icons/case-lower.svg +1 -0
  31. package/icons/case-sentence.svg +1 -0
  32. package/icons/case-upper.svg +1 -0
  33. package/icons/cells.svg +1 -0
  34. package/icons/chart.svg +1 -0
  35. package/icons/chat.svg +1 -0
  36. package/icons/check-circle.svg +1 -0
  37. package/icons/check.svg +1 -0
  38. package/icons/checked.svg +1 -0
  39. package/icons/clipboard.svg +1 -0
  40. package/icons/clone.svg +1 -0
  41. package/icons/close.svg +1 -0
  42. package/icons/cloud-upload.svg +1 -0
  43. package/icons/collapse-all.svg +1 -0
  44. package/icons/collapse.svg +1 -0
  45. package/icons/color-palette.svg +1 -0
  46. package/icons/column-add.svg +1 -0
  47. package/icons/column-outline.svg +1 -0
  48. package/icons/columns.svg +1 -0
  49. package/icons/comment.svg +1 -0
  50. package/icons/comments.svg +1 -0
  51. package/icons/contact.svg +1 -0
  52. package/icons/contains.svg +1 -0
  53. package/icons/copy.svg +1 -0
  54. package/icons/csv.svg +1 -0
  55. package/icons/dashboard.svg +1 -0
  56. package/icons/data-set.svg +1 -0
  57. package/icons/date-range.svg +1 -0
  58. package/icons/delete.svg +1 -0
  59. package/icons/division.svg +1 -0
  60. package/icons/dock.svg +1 -0
  61. package/icons/dollar.svg +1 -0
  62. package/icons/download.svg +1 -0
  63. package/icons/downloaded.svg +1 -0
  64. package/icons/drag.svg +1 -0
  65. package/icons/edit-table.svg +1 -0
  66. package/icons/edit.svg +1 -0
  67. package/icons/ends-with.svg +1 -0
  68. package/icons/equals.svg +1 -0
  69. package/icons/equation.svg +1 -0
  70. package/icons/error.svg +1 -0
  71. package/icons/excel.svg +1 -0
  72. package/icons/expand-all.svg +1 -0
  73. package/icons/expand.svg +1 -0
  74. package/icons/exponent.svg +1 -0
  75. package/icons/export-data.svg +1 -0
  76. package/icons/export.svg +1 -0
  77. package/icons/fast-backward.svg +1 -0
  78. package/icons/fast-forward.svg +1 -0
  79. package/icons/fdc3.svg +1 -0
  80. package/icons/filled-circle.svg +1 -0
  81. package/icons/filter-list.svg +1 -0
  82. package/icons/filter-off.svg +1 -0
  83. package/icons/filter.svg +1 -0
  84. package/icons/flag.svg +1 -0
  85. package/icons/folder-open.svg +1 -0
  86. package/icons/folder-shared.svg +1 -0
  87. package/icons/folder.svg +1 -0
  88. package/icons/function.svg +1 -0
  89. package/icons/gradient.svg +1 -0
  90. package/icons/greater-than-or-equal.svg +1 -0
  91. package/icons/greater-than.svg +1 -0
  92. package/icons/grid-filter.svg +1 -0
  93. package/icons/grid-info.svg +1 -0
  94. package/icons/grid.svg +1 -0
  95. package/icons/history.svg +1 -0
  96. package/icons/home.svg +1 -0
  97. package/icons/horizontal-lines.svg +1 -0
  98. package/icons/import-export.svg +1 -0
  99. package/icons/import.svg +1 -0
  100. package/icons/info.svg +1 -0
  101. package/icons/interactions.svg +1 -0
  102. package/icons/italic.svg +1 -0
  103. package/icons/json.svg +1 -0
  104. package/icons/laptop.svg +1 -0
  105. package/icons/less-than-or-equal.svg +1 -0
  106. package/icons/less-than.svg +1 -0
  107. package/icons/lightning.svg +1 -0
  108. package/icons/link.svg +1 -0
  109. package/icons/list.svg +1 -0
  110. package/icons/logout.svg +1 -0
  111. package/icons/mail.svg +1 -0
  112. package/icons/menu.svg +1 -0
  113. package/icons/minus.svg +1 -0
  114. package/icons/money.svg +1 -0
  115. package/icons/multiplication.svg +1 -0
  116. package/icons/newpage.svg +1 -0
  117. package/icons/news.svg +1 -0
  118. package/icons/not-contains.svg +1 -0
  119. package/icons/not-equal.svg +1 -0
  120. package/icons/note.svg +1 -0
  121. package/icons/open-in-new.svg +1 -0
  122. package/icons/order.svg +1 -0
  123. package/icons/organisation.svg +1 -0
  124. package/icons/overline.svg +1 -0
  125. package/icons/paperclip.svg +1 -0
  126. package/icons/pause.svg +1 -0
  127. package/icons/percent-tag.svg +1 -0
  128. package/icons/percent.svg +1 -0
  129. package/icons/person.svg +1 -0
  130. package/icons/pie-chart.svg +1 -0
  131. package/icons/play.svg +1 -0
  132. package/icons/plus.svg +1 -0
  133. package/icons/quote.svg +1 -0
  134. package/icons/refresh.svg +1 -0
  135. package/icons/regex.svg +1 -0
  136. package/icons/reminder.svg +1 -0
  137. package/icons/resume.svg +1 -0
  138. package/icons/rows.svg +1 -0
  139. package/icons/save.svg +1 -0
  140. package/icons/schedule.svg +1 -0
  141. package/icons/science.svg +1 -0
  142. package/icons/search-table.svg +1 -0
  143. package/icons/search.svg +1 -0
  144. package/icons/select-all.svg +1 -0
  145. package/icons/select-fwd.svg +1 -0
  146. package/icons/select-off.svg +1 -0
  147. package/icons/settings.svg +1 -0
  148. package/icons/sort-asc.svg +1 -0
  149. package/icons/sort-desc.svg +1 -0
  150. package/icons/spanner.svg +1 -0
  151. package/icons/spark-line.svg +1 -0
  152. package/icons/starts-with.svg +1 -0
  153. package/icons/statusbar.svg +1 -0
  154. package/icons/stop.svg +1 -0
  155. package/icons/strikethrough.svg +1 -0
  156. package/icons/styled-grid.svg +1 -0
  157. package/icons/sync.svg +1 -0
  158. package/icons/tab-unselected.svg +1 -0
  159. package/icons/target.svg +1 -0
  160. package/icons/theme.svg +1 -0
  161. package/icons/traffic-lights.svg +1 -0
  162. package/icons/triangle-down.svg +1 -0
  163. package/icons/triangle-up.svg +1 -0
  164. package/icons/unchecked.svg +1 -0
  165. package/icons/underline.svg +1 -0
  166. package/icons/undo.svg +1 -0
  167. package/icons/unfilled-circle.svg +1 -0
  168. package/icons/upload.svg +1 -0
  169. package/icons/visibility-off-bold.svg +1 -0
  170. package/icons/visibility-off.svg +1 -0
  171. package/icons/visibility-on-bold.svg +1 -0
  172. package/icons/visibility-on.svg +1 -0
  173. package/icons/warning.svg +1 -0
  174. package/index.css +32 -15
  175. package/index.css.map +1 -1
  176. package/package.json +2 -2
  177. package/src/AdaptableInterfaces/IAdaptable.d.ts +10 -5
  178. package/src/AdaptableOptions/ColumnOptions.d.ts +71 -187
  179. package/src/AdaptableOptions/DefaultAdaptableOptions.js +3 -2
  180. package/src/AdaptableOptions/EditOptions.d.ts +4 -7
  181. package/src/AdaptableOptions/FilterOptions.d.ts +50 -15
  182. package/src/AdaptableOptions/LayoutOptions.d.ts +8 -21
  183. package/src/AdaptableOptions/PredicateOptions.d.ts +1 -1
  184. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +1 -1
  185. package/src/AdaptableState/Common/AdaptableColumn.d.ts +7 -0
  186. package/src/AdaptableState/Common/AdaptablePredicate.js +2 -2
  187. package/src/AdaptableState/Common/CustomWindowConfig.d.ts +11 -11
  188. package/src/AdaptableState/Common/ExtendedLayout.d.ts +50 -0
  189. package/src/AdaptableState/Common/ProgressIndicatorConfig.d.ts +1 -4
  190. package/src/AdaptableState/Common/RowScope.d.ts +1 -1
  191. package/src/AdaptableState/FormatColumnState.d.ts +16 -9
  192. package/src/AdaptableState/InternalState.d.ts +1 -1
  193. package/src/AdaptableState/LayoutState.d.ts +26 -6
  194. package/src/AdaptableState/Selection/GridCell.d.ts +32 -0
  195. package/src/AdaptableState/StyledColumnState.d.ts +2 -2
  196. package/src/Api/AlertApi.d.ts +5 -11
  197. package/src/Api/ColumnApi.d.ts +17 -1
  198. package/src/Api/ColumnFilterApi.d.ts +32 -2
  199. package/src/Api/CustomSortApi.d.ts +5 -10
  200. package/src/Api/FlashingCellApi.d.ts +10 -6
  201. package/src/Api/FormatColumnApi.d.ts +8 -18
  202. package/src/Api/Implementation/AlertApiImpl.d.ts +6 -9
  203. package/src/Api/Implementation/AlertApiImpl.js +7 -6
  204. package/src/Api/Implementation/ApiBase.d.ts +2 -12
  205. package/src/Api/Implementation/ApiBase.js +5 -5
  206. package/src/Api/Implementation/ColumnApiImpl.d.ts +5 -2
  207. package/src/Api/Implementation/ColumnApiImpl.js +59 -23
  208. package/src/Api/Implementation/ColumnFilterApiImpl.d.ts +7 -1
  209. package/src/Api/Implementation/ColumnFilterApiImpl.js +76 -3
  210. package/src/Api/Implementation/ColumnScopeApiImpl.js +10 -2
  211. package/src/Api/Implementation/CustomSortApiImpl.d.ts +5 -10
  212. package/src/Api/Implementation/CustomSortApiImpl.js +6 -4
  213. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +7 -6
  214. package/src/Api/Implementation/FlashingCellApiImpl.js +11 -8
  215. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +8 -18
  216. package/src/Api/Implementation/FormatColumnApiImpl.js +10 -9
  217. package/src/Api/Implementation/LayoutApiImpl.d.ts +3 -2
  218. package/src/Api/Implementation/LayoutApiImpl.js +101 -7
  219. package/src/Api/Implementation/LayoutHelpers.d.ts +1 -0
  220. package/src/Api/Implementation/LayoutHelpers.js +23 -4
  221. package/src/Api/Implementation/PlusMinusApiImpl.d.ts +7 -5
  222. package/src/Api/Implementation/PlusMinusApiImpl.js +10 -7
  223. package/src/Api/Implementation/ScheduleApiImpl.d.ts +9 -16
  224. package/src/Api/Implementation/ScheduleApiImpl.js +15 -17
  225. package/src/Api/Implementation/ShortcutApiImpl.d.ts +5 -6
  226. package/src/Api/Implementation/ShortcutApiImpl.js +7 -8
  227. package/src/Api/Implementation/StyledColumnApiImpl.d.ts +7 -8
  228. package/src/Api/Implementation/StyledColumnApiImpl.js +12 -9
  229. package/src/Api/Implementation/TeamSharingApiImpl.js +1 -4
  230. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +2 -1
  231. package/src/Api/Implementation/UserInterfaceApiImpl.js +10 -9
  232. package/src/Api/Internal/AdaptableInternalApi.d.ts +2 -0
  233. package/src/Api/Internal/AdaptableInternalApi.js +3 -0
  234. package/src/Api/Internal/AlertInternalApi.d.ts +6 -6
  235. package/src/Api/Internal/AlertInternalApi.js +10 -10
  236. package/src/Api/Internal/ColumnFilterInternalApi.d.ts +13 -0
  237. package/src/Api/Internal/ColumnFilterInternalApi.js +93 -1
  238. package/src/Api/Internal/ColumnInternalApi.d.ts +2 -1
  239. package/src/Api/Internal/ColumnInternalApi.js +6 -2
  240. package/src/Api/Internal/DashboardInternalApi.js +1 -1
  241. package/src/Api/Internal/EntitlementInternalApi.d.ts +1 -0
  242. package/src/Api/Internal/EntitlementInternalApi.js +8 -0
  243. package/src/Api/Internal/ExportInternalApi.js +1 -1
  244. package/src/Api/Internal/FlashingCellInternalApi.js +1 -1
  245. package/src/Api/Internal/FormatColumnInternalApi.d.ts +12 -13
  246. package/src/Api/Internal/FormatColumnInternalApi.js +45 -16
  247. package/src/Api/Internal/GridInternalApi.d.ts +7 -10
  248. package/src/Api/Internal/GridInternalApi.js +76 -27
  249. package/src/Api/Internal/LayoutInternalApi.d.ts +5 -5
  250. package/src/Api/Internal/LayoutInternalApi.js +42 -5
  251. package/src/Api/Internal/PredicateInternalApi.d.ts +2 -6
  252. package/src/Api/Internal/PredicateInternalApi.js +4 -6
  253. package/src/Api/Internal/UserInterfaceInternalApi.d.ts +1 -0
  254. package/src/Api/Internal/UserInterfaceInternalApi.js +10 -3
  255. package/src/Api/LayoutApi.d.ts +7 -2
  256. package/src/Api/PlusMinusApi.d.ts +11 -7
  257. package/src/Api/ScheduleApi.d.ts +9 -16
  258. package/src/Api/ShortcutApi.d.ts +5 -6
  259. package/src/Api/StyledColumnApi.d.ts +10 -7
  260. package/src/Api/UserInterfaceApi.d.ts +5 -6
  261. package/src/Redux/ActionsReducers/InternalRedux.d.ts +4 -4
  262. package/src/Redux/ActionsReducers/InternalRedux.js +7 -7
  263. package/src/Redux/ActionsReducers/StyledColumnRedux.d.ts +7 -0
  264. package/src/Redux/ActionsReducers/StyledColumnRedux.js +13 -0
  265. package/src/Redux/Store/AdaptableStore.js +10 -10
  266. package/src/Strategy/AdaptableModuleBase.d.ts +14 -4
  267. package/src/Strategy/AdaptableModuleBase.js +46 -9
  268. package/src/Strategy/AlertModule.d.ts +3 -4
  269. package/src/Strategy/AlertModule.js +7 -4
  270. package/src/Strategy/CalculatedColumnModule.js +2 -2
  271. package/src/Strategy/CellSummaryModule.js +2 -2
  272. package/src/Strategy/ChartingModule.d.ts +3 -1
  273. package/src/Strategy/ChartingModule.js +9 -3
  274. package/src/Strategy/ColumnFilterModule.d.ts +1 -1
  275. package/src/Strategy/ColumnFilterModule.js +31 -15
  276. package/src/Strategy/ColumnInfoModule.js +2 -2
  277. package/src/Strategy/CommentModule.d.ts +1 -1
  278. package/src/Strategy/CommentModule.js +3 -3
  279. package/src/Strategy/CustomSortModule.d.ts +3 -4
  280. package/src/Strategy/CustomSortModule.js +2 -2
  281. package/src/Strategy/DashboardModule.js +1 -1
  282. package/src/Strategy/DataChangeHistoryModule.d.ts +2 -1
  283. package/src/Strategy/DataChangeHistoryModule.js +3 -10
  284. package/src/Strategy/DataImportModule.js +3 -3
  285. package/src/Strategy/ExportModule.js +1 -1
  286. package/src/Strategy/Fdc3Module.js +1 -1
  287. package/src/Strategy/FlashingCellModule.d.ts +3 -5
  288. package/src/Strategy/FlashingCellModule.js +3 -3
  289. package/src/Strategy/FormatColumnModule.d.ts +3 -4
  290. package/src/Strategy/FormatColumnModule.js +4 -2
  291. package/src/Strategy/FreeTextColumnModule.d.ts +1 -1
  292. package/src/Strategy/FreeTextColumnModule.js +2 -2
  293. package/src/Strategy/GridInfoModule.js +2 -2
  294. package/src/Strategy/Interface/IModule.d.ts +7 -3
  295. package/src/Strategy/LayoutModule.js +11 -11
  296. package/src/Strategy/NoteModule.d.ts +1 -1
  297. package/src/Strategy/NoteModule.js +3 -3
  298. package/src/Strategy/PlusMinusModule.d.ts +3 -4
  299. package/src/Strategy/PlusMinusModule.js +2 -2
  300. package/src/Strategy/QuickSearchModule.d.ts +2 -0
  301. package/src/Strategy/QuickSearchModule.js +9 -0
  302. package/src/Strategy/ScheduleModule.d.ts +3 -4
  303. package/src/Strategy/ScheduleModule.js +2 -2
  304. package/src/Strategy/SettingsPanelModule.js +1 -1
  305. package/src/Strategy/ShortcutModule.d.ts +3 -4
  306. package/src/Strategy/ShortcutModule.js +2 -2
  307. package/src/Strategy/StatusBarModule.d.ts +3 -2
  308. package/src/Strategy/StatusBarModule.js +6 -3
  309. package/src/Strategy/StyledColumnModule.d.ts +3 -4
  310. package/src/Strategy/StyledColumnModule.js +2 -2
  311. package/src/Strategy/SystemStatusModule.js +2 -2
  312. package/src/Strategy/TeamSharingModule.d.ts +1 -1
  313. package/src/Strategy/TeamSharingModule.js +5 -2
  314. package/src/Strategy/ToolPanelModule.d.ts +1 -1
  315. package/src/Strategy/ToolPanelModule.js +1 -4
  316. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsTargetItems.d.ts +5 -0
  317. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsTargetItems.js +12 -0
  318. package/src/Strategy/Utilities/Layout/getLayoutFilterViewItems.js +1 -1
  319. package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +1 -0
  320. package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -0
  321. package/src/Utilities/Extensions/ArrayExtensions.d.ts +15 -2
  322. package/src/Utilities/Extensions/ArrayExtensions.js +62 -13
  323. package/src/Utilities/ObjectFactory.js +3 -2
  324. package/src/Utilities/Services/AnnotationsService.js +1 -1
  325. package/src/Utilities/Services/Interface/IModuleService.d.ts +2 -1
  326. package/src/Utilities/Services/ModuleService.d.ts +3 -3
  327. package/src/Utilities/Services/ModuleService.js +19 -7
  328. package/src/Utilities/getScopeViewItems.js +5 -2
  329. package/src/View/AdaptableView.js +3 -1
  330. package/src/View/ColumnInfo/ColumnInfo.js +9 -3
  331. package/src/View/Components/AdaptableIconSelector/index.js +2 -3
  332. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.d.ts +0 -1
  333. package/src/View/Components/ColumnFilter/AdaptableColumnFilter.js +2 -3
  334. package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.d.ts +0 -2
  335. package/src/View/Components/ColumnFilter/AdaptableFloatingFilter.js +4 -7
  336. package/src/View/Components/ColumnFilter/ColumnFilter.js +11 -4
  337. package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +1 -1
  338. package/src/View/Components/ColumnFilter/FloatingFilter.js +1 -2
  339. package/src/View/Components/ColumnFilter/LayoutColumnFilter.js +1 -1
  340. package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +2 -2
  341. package/src/View/Components/ColumnFilter/components/FloatingFilterValues.js +2 -2
  342. package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.d.ts +1 -1
  343. package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.js +2 -2
  344. package/src/View/Components/ColumnFilter/utils.d.ts +2 -2
  345. package/src/View/Components/ColumnFilter/utils.js +6 -1
  346. package/src/View/Components/EntityRulesEditor/index.js +1 -2
  347. package/src/View/Components/FilterForm/ListBoxFilterForm.js +1 -1
  348. package/src/View/Components/NewScopeComponent.js +5 -1
  349. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +6 -6
  350. package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -2
  351. package/src/View/Components/Selectors/BulkUpdateValueSelector.js +1 -1
  352. package/src/View/Components/Selectors/ColumnSelector.js +1 -1
  353. package/src/View/Components/Selectors/FieldSelector.js +1 -1
  354. package/src/View/Components/Selectors/PermittedValuesSelector.d.ts +1 -0
  355. package/src/View/Components/Selectors/PermittedValuesSelector.js +2 -2
  356. package/src/View/Dashboard/Dashboard.js +2 -2
  357. package/src/View/Dashboard/DashboardPopup.js +3 -1
  358. package/src/View/Dashboard/PinnedDashboard.js +1 -1
  359. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +9 -21
  360. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +59 -22
  361. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +4 -0
  362. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +1 -40
  363. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +13 -12
  364. package/src/View/FormatColumn/Wizard/FormatColumnTargetWizardSection.d.ts +8 -0
  365. package/src/View/FormatColumn/Wizard/FormatColumnTargetWizardSection.js +31 -0
  366. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +18 -4
  367. package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +1 -1
  368. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +1 -1
  369. package/src/View/Layout/TransposedPopup.js +2 -2
  370. package/src/View/Layout/Wizard/sections/ColumnsSection.js +64 -9
  371. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +5 -5
  372. package/src/View/StatusBar/AdaptableStatusBar.js +1 -4
  373. package/src/View/StatusBar/StatusBarPopup.js +1 -1
  374. package/src/View/Theme/ThemeSelector.js +1 -1
  375. package/src/agGrid/AdaptableAgGrid.d.ts +11 -7
  376. package/src/agGrid/AdaptableAgGrid.js +256 -218
  377. package/src/agGrid/AdaptableFilterHandler.d.ts +18 -0
  378. package/src/agGrid/AdaptableFilterHandler.js +61 -0
  379. package/src/agGrid/AgGridAdapter.d.ts +3 -7
  380. package/src/agGrid/AgGridAdapter.js +13 -46
  381. package/src/agGrid/AgGridColumnAdapter.d.ts +3 -3
  382. package/src/agGrid/AgGridColumnAdapter.js +86 -40
  383. package/src/agGrid/AgGridExportAdapter.js +1 -1
  384. package/src/agGrid/AgGridFilterAdapter.d.ts +2 -0
  385. package/src/agGrid/AgGridFilterAdapter.js +48 -0
  386. package/src/agGrid/AgGridFloatingFilterAdapter.d.ts +2 -0
  387. package/src/agGrid/{FloatingFilterWrapper.js → AgGridFloatingFilterAdapter.js} +24 -35
  388. package/src/agGrid/AgGridModulesAdapter.d.ts +15 -0
  389. package/src/agGrid/AgGridModulesAdapter.js +66 -0
  390. package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +1 -1
  391. package/src/agGrid/editors/AdaptablePercentageEditor/InternalAdaptablePercentageEditor.js +1 -1
  392. package/src/components/Dialog/index.js +1 -1
  393. package/src/components/Dropdown/Arrows.js +2 -2
  394. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.d.ts +1 -1
  395. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +2 -2
  396. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -2
  397. package/src/components/FileDroppable/index.js +1 -1
  398. package/src/components/IconSelector/IconSelector.d.ts +2 -2
  399. package/src/components/OverlayTrigger/index.js +1 -1
  400. package/src/components/Select/Select.d.ts +1 -1
  401. package/src/components/Select/Select.js +116 -24
  402. package/src/components/icons/DefaultIcon.d.ts +0 -1
  403. package/src/components/icons/DefaultIcon.js +0 -6
  404. package/src/env.js +2 -2
  405. package/src/layout-manager/src/LayoutManagerModel.d.ts +6 -10
  406. package/src/layout-manager/src/index.d.ts +11 -3
  407. package/src/layout-manager/src/index.js +302 -87
  408. package/src/layout-manager/src/normalizeLayoutModel.js +7 -4
  409. package/src/layout-manager/src/simplifyLayoutModel.js +4 -4
  410. package/src/metamodel/adaptable.metamodel.d.ts +172 -20
  411. package/src/metamodel/adaptable.metamodel.js +1 -1
  412. package/src/migration/AdaptableUpgradeHelper.js +2 -0
  413. package/src/migration/VersionUpgrade17.js +1 -1
  414. package/src/migration/VersionUpgrade20.js +1 -0
  415. package/src/migration/VersionUpgrade21.d.ts +6 -0
  416. package/src/migration/VersionUpgrade21.js +24 -0
  417. package/src/types.d.ts +8 -9
  418. package/tsconfig.esm.tsbuildinfo +1 -1
  419. package/src/AdaptableState/Common/ExtendedLayoutInfo.d.ts +0 -27
  420. package/src/agGrid/FilterWrapper.d.ts +0 -2
  421. package/src/agGrid/FilterWrapper.js +0 -131
  422. package/src/agGrid/FloatingFilterWrapper.d.ts +0 -2
  423. package/src/agGrid/agGridModules.d.ts +0 -3
  424. package/src/agGrid/agGridModules.js +0 -15
  425. package/src/agGrid/getAgGridFilterNotifyModelFn.d.ts +0 -2
  426. package/src/agGrid/getAgGridFilterNotifyModelFn.js +0 -16
  427. /package/src/AdaptableState/Common/{ExtendedLayoutInfo.js → ExtendedLayout.js} +0 -0
@@ -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
  });
@@ -1,51 +1,51 @@
1
1
  import { AdaptableSystemIconName } from '../../types';
2
2
  import { CustomRenderContext, AdaptableFrameworkComponent } from '../../agGrid/AdaptableFrameworkComponent';
3
3
  /**
4
- * Config used to open a custom window
4
+ * Config used to open a Custom Window
5
5
  */
6
6
  export interface CustomWindowConfig {
7
7
  /**
8
- * Unique identifier for the custom window.
8
+ * Unique identifier for Custom Window
9
9
  */
10
10
  id: string;
11
11
  /**
12
- * Title of the custom window.
12
+ * Title of Custom Window
13
13
  */
14
14
  title?: string;
15
15
  /**
16
- * Icon to display in the custom window heading.
16
+ * Icon to display in Custom Window header
17
17
  */
18
18
  icon?: AdaptableSystemIconName;
19
19
  /**
20
- * Render function to display custom content in the 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
  /**
24
- * A React, Angular or Vue Framework component to use for the custom window content.
24
+ * React, Angular or Vue Framework component to use for Custom Window content
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
  /**
32
- * Window position in pixels.
32
+ * Size of window in pixels (provided as width, height)
33
33
  */
34
34
  size?: WindowSize;
35
35
  /**
36
- * Position of the window in pixels.
36
+ * Position of window in pixels (provided as x, y)
37
37
  */
38
38
  position?: WindowPosition;
39
39
  }
40
40
  /**
41
- * Defines size of a custom window
41
+ * Defines size of a Custom Window
42
42
  */
43
43
  export interface WindowSize {
44
44
  width: number;
45
45
  height: number;
46
46
  }
47
47
  /**
48
- * Defines position of a custom window
48
+ * Defines position of a Custom Window
49
49
  */
50
50
  export interface WindowPosition {
51
51
  x: number;
@@ -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
+ }
@@ -17,10 +17,7 @@ export interface ProgressIndicatorConfig {
17
17
  */
18
18
  frameworkComponent?: AdaptableFrameworkComponent;
19
19
  /**
20
- * Determines how the custom component is rendered:
21
- * - "content" (default): Inside the default Dialog with spinner
22
- * - "dialog": As a complete replacement for the Dialog
23
- * Applies to both frameworkComponent and render parameters.
20
+ * Determines whether custom component is rendered as "content" (inside window) or "dialog" (replacing window)
24
21
  */
25
22
  renderMode?: 'content' | 'dialog';
26
23
  /**
@@ -15,7 +15,7 @@ export interface RowScope {
15
15
  */
16
16
  ExcludeSummaryRows?: boolean;
17
17
  /**
18
- * Exclude Grand Total Rows
18
+ * Exclude Grand Total Rows (used in Aggregations)
19
19
  */
20
20
  ExcludeTotalRows?: boolean;
21
21
  }
@@ -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
@@ -26,17 +26,17 @@ export interface FormatColumn extends SuspendableObject {
26
26
  */
27
27
  Scope: ColumnScope;
28
28
  /**
29
- * Which part of the Column to apply Format to: `cell`, `column header`
29
+ * Where in Column to apply Format (`cell` or `columnHeader`)
30
30
  *
31
- * @defaultValue ['cell']
31
+ * @defaultValue 'cell'
32
32
  */
33
- Target?: FormatColumnTarget[];
33
+ Target?: FormatColumnTarget;
34
34
  /**
35
35
  * Rule to decide whether to apply Format; if undefined Format is always applied
36
36
  */
37
37
  Rule?: FormatColumnRule;
38
38
  /**
39
- * Style to apply
39
+ * AdapTable Style to apply
40
40
  */
41
41
  Style?: AdaptableStyle;
42
42
  /**
@@ -44,21 +44,21 @@ export interface FormatColumn extends SuspendableObject {
44
44
  */
45
45
  DisplayFormat?: AdaptableFormat;
46
46
  /**
47
- * Aligns cells 'Left' or 'Right' or 'Center'
47
+ * Align cells 'Left' or 'Right' or 'Center'
48
48
  */
49
49
  CellAlignment?: CellAlignment;
50
50
  /**
51
- * Which types of Rows should be formatted (data, grouped, summary)
51
+ * Which types of Rows to apply format (data, grouped, summary, total)
52
52
  */
53
53
  RowScope?: RowScope;
54
54
  /**
55
- * When to format Columns in Column Groups ('Expanded', 'Collapsed' or 'Both')
55
+ * When to format Columns in Column Groups ('Expanded', 'Collapsed', 'Both')
56
56
  *
57
57
  */
58
58
  ColumnGroupScope?: ColumnGroupScope;
59
59
  }
60
60
  /**
61
- * Target for Format Column: Specifies which visual elements of the column receive formatting
61
+ * Specifies whether Column's cells or header is formatted
62
62
  */
63
63
  export type FormatColumnTarget = 'cell' | 'columnHeader';
64
64
  /**
@@ -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`
@@ -36,9 +36,9 @@ export interface LayoutBase extends AdaptableObject {
36
36
  */
37
37
  Name: string;
38
38
  /**
39
- * Set of widths for some (or all) Columns
39
+ * Controls size (width or flex & min/max) for Columns
40
40
  */
41
- ColumnWidths?: ColumnNumberMap;
41
+ ColumnSizing?: ColumnSizingMap;
42
42
  /**
43
43
  * Defines which Row Groups are expanded / collapsed
44
44
  */
@@ -79,6 +79,10 @@ export interface LayoutBase extends AdaptableObject {
79
79
  * Position of the Grand Total Row in the Layout
80
80
  */
81
81
  GrandTotalRow?: 'top' | 'bottom' | 'pinnedTop' | 'pinnedBottom' | boolean;
82
+ /**
83
+ * Display Row Grouped Columns as 'single' or 'multi' column
84
+ */
85
+ RowGroupDisplayType?: 'single' | 'multi';
82
86
  }
83
87
  /**
84
88
  * Defines a Table-based Layout
@@ -104,10 +108,6 @@ export interface TableLayout extends LayoutBase {
104
108
  * Columns which are row-grouped when the Layout is applied
105
109
  */
106
110
  RowGroupedColumns?: string[];
107
- /**
108
- * Display Row Grouped Columns as 'single' or 'multi' column
109
- */
110
- RowGroupDisplayType?: 'single' | 'multi';
111
111
  /**
112
112
  * Pivot Columns - must NOT be provided
113
113
  */
@@ -227,6 +227,12 @@ export type ColumnGroupValuesWithExceptionKeys = {
227
227
  */
228
228
  ExceptionGroupKeys?: any[];
229
229
  };
230
+ /**
231
+ * Defines a map of Columns with Sizing information
232
+ */
233
+ export type ColumnSizingMap = {
234
+ [columnId: string]: ColumnSizingDefinition;
235
+ };
230
236
  /**
231
237
  * Defines a map of Columns with a String value
232
238
  */
@@ -251,6 +257,20 @@ export type ColumnBooleanFalseMap = {
251
257
  export type ColumnDirectionMap = {
252
258
  [columnId: string]: 'left' | 'right';
253
259
  };
260
+ /**
261
+ * State & behaviour for sizing a column (must set `width` or `flex` property, but not both); all other props optional
262
+ */
263
+ export type ColumnSizingDefinition = ({
264
+ Width?: number;
265
+ Flex?: never;
266
+ } | {
267
+ Flex?: number;
268
+ Width?: never;
269
+ }) & {
270
+ Resizable?: boolean;
271
+ MinWidth?: number;
272
+ MaxWidth?: number;
273
+ };
254
274
  /**
255
275
  * The OLD Layout - kept temporarily so we can check what we previously had
256
276
  */
@@ -55,7 +55,39 @@ export interface GridCell<TData = any> {
55
55
  isRowGroupCell: boolean;
56
56
  }
57
57
  export interface GridCellWithCount extends GridCell {
58
+ /**
59
+ * How many times Cell appears in Data Source
60
+ */
58
61
  count: number;
62
+ /**
63
+ * How many times Cell appears in Visible Rows
64
+ */
65
+ visibleCount?: number;
66
+ }
67
+ export interface UniqueGridCell<TData = any> {
68
+ /**
69
+ * Raw value of Cell
70
+ */
71
+ rawValue: any;
72
+ /**
73
+ * Normalised value of Cell
74
+ */
75
+ normalisedValue: any;
76
+ /**
77
+ * Display value of Cell (e.g. if formatted)
78
+ */
79
+ displayValue: any;
80
+ /**
81
+ * Is Cell in a currently filtered Row
82
+ */
83
+ visible: boolean;
84
+ /**
85
+ * How many times Cell appears in Data Source
86
+ */
87
+ count: number;
88
+ /**
89
+ * How many times Cell appears in filtered Rows
90
+ */
59
91
  visibleCount: number;
60
92
  }
61
93
  /**
@@ -1,6 +1,6 @@
1
1
  import { BaseState } from './BaseState';
2
2
  import { SuspendableObject } from './Common/SuspendableObject';
3
- import { AdaptableCustomIcon, AdaptableSystemIcon, AdaptablePredicate, AdaptableStyle, AdaptableBooleanQuery } from '../types';
3
+ import { AdaptablePredicate, AdaptableStyle, AdaptableBooleanQuery, AdaptableIcon } from '../types';
4
4
  import { TypeHint } from './Common/Types';
5
5
  import { RowScope } from './Common/RowScope';
6
6
  import { AgSparklineOptions } from 'ag-charts-types';
@@ -173,7 +173,7 @@ export interface BadgeStyleDefinition {
173
173
  /**
174
174
  * Icon to display in Badge
175
175
  */
176
- Icon?: AdaptableSystemIcon | AdaptableCustomIcon;
176
+ Icon?: AdaptableIcon;
177
177
  /**
178
178
  * Position of Icon in the Badge - 'Start' or 'End'
179
179
  */
@@ -1,6 +1,6 @@
1
1
  import { AlertDefinition, AlertState } from '../AdaptableState/AlertState';
2
2
  import { AdaptableAlert } from '../AdaptableState/Common/AdaptableAlert';
3
- import { AdaptableMessageType, AlertProperties } from '../types';
3
+ import { AdaptableMessageType, AlertProperties, LayoutExtendedConfig } from '../types';
4
4
  import { AdaptableObjectLookupCriteria } from '../AdaptableState/Common/AdaptableObject';
5
5
  /**
6
6
  * Provides run-time access to Alert function and associated State
@@ -19,27 +19,21 @@ export interface AlertApi {
19
19
  * Retrieves all Alert Definitions in Alert State
20
20
  * @returns alert definitions
21
21
  */
22
- getAlertDefinitions(config?: {
23
- includeLayoutNotAssociatedObjects?: boolean;
24
- }): AlertDefinition[];
22
+ getAlertDefinitions(config?: LayoutExtendedConfig): AlertDefinition[];
25
23
  /**
26
24
  * Retrieves all Alert Definitions which are currently suspended
27
25
  */
28
- getSuspendedAlertDefinitions(config?: {
29
- includeLayoutNotAssociatedObjects?: boolean;
30
- }): AlertDefinition[];
26
+ getSuspendedAlertDefinitions(config?: LayoutExtendedConfig): AlertDefinition[];
31
27
  /**
32
28
  * Retrieves all Alert Definitions which are currently active
33
29
  */
34
- getActiveAlertDefinitions(config?: {
35
- includeLayoutNotAssociatedObjects?: boolean;
36
- }): AlertDefinition[];
30
+ getActiveAlertDefinitions(config?: LayoutExtendedConfig): AlertDefinition[];
37
31
  /**
38
32
  * Retrieves alert definition by the technical ID (from `AlertState`)
39
33
  * @param id alert definition id
40
34
  * @returns alert definition
41
35
  */
42
- getAlertDefinitionById(id: AlertDefinition['Uuid']): AlertDefinition;
36
+ getAlertDefinitionById(id: AlertDefinition['Uuid'], config?: LayoutExtendedConfig): AlertDefinition;
43
37
  /**
44
38
  * Adds given Alert Definition to Adaptable State
45
39
  * @param alertDefinition AlertDefinition to add
@@ -1,4 +1,5 @@
1
1
  import { AdaptableColumn, AdaptableColumnDataType, Layout } from '../../types';
2
+ import { AdaptableColumnSummary } from '../AdaptableState/Common/AdaptableColumn';
2
3
  import { ColDef, ColGroupDef, Column } from 'ag-grid-enterprise';
3
4
  /**
4
5
  * Provides run-time access to AdapTable Column related features
@@ -13,7 +14,7 @@ export interface ColumnApi {
13
14
  */
14
15
  getUIAvailableColumns(): AdaptableColumn[];
15
16
  /**
16
- * Returns all columns excluding Action, FreeText and Calculated Columns
17
+ * Returns all UI available columns excluding Action, FreeText and Calculated Columns
17
18
  */
18
19
  getNonSpecialColumns(): AdaptableColumn[];
19
20
  /**
@@ -174,6 +175,11 @@ export interface ColumnApi {
174
175
  * @param columnId ColumnId to check
175
176
  */
176
177
  isPivotResultColumn(columnId: string): boolean;
178
+ /**
179
+ * Checks if Column with given ColumnId is a Special (i.e. calculated, freetext or action) Column
180
+ * @param columnId ColumnId to check
181
+ */
182
+ isSpecialColumn(columnId: string): boolean;
177
183
  /**
178
184
  * Checks if Column with given ColumnId is a Calculated Column
179
185
  * @param columnId ColumnId to check
@@ -329,4 +335,14 @@ export interface ColumnApi {
329
335
  * @param columnType - Column Type to check for
330
336
  */
331
337
  hasColumnType(columnIdentifier: string | ColDef, columnType: string): boolean;
338
+ /**
339
+ * Gets summary info for a column including filters and unique values
340
+ * @param columnId Column to summarise
341
+ */
342
+ getColumnSummaryForColumnId(columnId: string): AdaptableColumnSummary;
343
+ /**
344
+ * Whether column is auto generated by AG Grid (for selection, grouping, pivoting etc)
345
+ * @param columnId column to check
346
+ */
347
+ isAgGridGeneratedColumn(columnId: string): boolean;
332
348
  }
@@ -1,4 +1,4 @@
1
- import { AdaptableColumn, ColumnFilter, ColumnFilterPredicate } from '../types';
1
+ import { AdaptableColumn, ColumnFilter, ColumnFilterPredicate, InFilterValue, InFilterValueInfo } from '../types';
2
2
  import { AdaptablePredicateDef, ColumnFilterDef } from '../AdaptableState/Common/AdaptablePredicate';
3
3
  /**
4
4
  * Provides run-time access to Filter section of Adaptable State.
@@ -122,9 +122,39 @@ export interface ColumnFilterApi {
122
122
  */
123
123
  columnFiltersToString(columnFilters: ColumnFilter[]): string;
124
124
  /**
125
- * Sets the Column Filter for a given Column
125
+ * Sets the Column Filter for a given Column (clears any existing)
126
126
  * @param columnId - Column ID to set Column Filter for
127
127
  * @param predicate - Column Filter to set
128
128
  */
129
129
  setColumnFilterForColumn(columnId: string, predicate: ColumnFilterPredicate): void;
130
+ /**
131
+ * Adds the Blanks Predicate if any value is null, undefined or an empty string
132
+ * @param columnDistinctValues list to check for empty values
133
+ */
134
+ addBlanksToInFilterValues(columnDistinctValues: InFilterValueInfo[]): InFilterValueInfo[];
135
+ /**
136
+ * Refresh(reload) the filter values for a given Column (for `IN` Filter).
137
+ *
138
+ * @param columnId - the ID of the Column for which to refresh filter values.
139
+ * @return a Promise that resolves to the list of filter values, each represented as an object with `value` and `label` properties.
140
+ */
141
+ refreshFilterValues(columnId: string): Promise<InFilterValue[]>;
142
+ /**
143
+ * Refreshes (reloads) the filter values for ALL Columns (for `IN` Filter).
144
+ *
145
+ * @returns A Promise that resolves to a map where:
146
+ * - keys are column IDs (string)
147
+ * - values are arrays of filter values for the corresponding column
148
+ * Each filter value contains a `value` and display `label` property
149
+ */
150
+ refreshAllFilterValues(): Promise<Record<string, InFilterValue[]>>;
151
+ /**
152
+ * Reset(clear cache) the filter values for a given Column (for `IN` Filter).
153
+ * @param columnId - the ID of the Column for which to reset filter values.
154
+ */
155
+ resetFilterValues(columnId: string): void;
156
+ /**
157
+ * Reset(clear cache) the filter values for ALL Columns (for `IN` Filter).
158
+ */
159
+ resetAllFilterValues(): void;
130
160
  }
@@ -1,5 +1,6 @@
1
1
  import { ColumnValuesComparer } from '../AdaptableOptions/CustomSortOptions';
2
2
  import { CustomSortState, CustomSort } from '../AdaptableState/CustomSortState';
3
+ import { LayoutExtendedConfig } from '../types';
3
4
  /**
4
5
  * Provides run-time access to the Custom Sort function
5
6
  */
@@ -11,15 +12,13 @@ export interface CustomSortApi {
11
12
  /**
12
13
  * Retrieves all Custom Sorts in Adaptable State
13
14
  */
14
- getCustomSorts(config?: {
15
- includeLayoutNotAssociatedObjects?: boolean;
16
- }): CustomSort[];
15
+ getCustomSorts(config?: LayoutExtendedConfig): CustomSort[];
17
16
  /**
18
17
  * Retrieves Custom Sort by the technical ID (from `CustomSortState`)
19
18
  * @param id Custom Sort technical id
20
19
  * @returns Custom Sort
21
20
  */
22
- getCustomSortById(id: CustomSort['Uuid']): CustomSort;
21
+ getCustomSortById(id: CustomSort['Uuid'], config?: LayoutExtendedConfig): CustomSort;
23
22
  /**
24
23
  * Retrieves all Custom Sorts in Adaptable State that are currently applied
25
24
  * @returns Custom Sorts
@@ -33,16 +32,12 @@ export interface CustomSortApi {
33
32
  * Retrieves all Custom Sorts that are active (not-suspended) in Adaptable State
34
33
  * @returns Custom Sorts
35
34
  */
36
- getActiveCustomSorts(config?: {
37
- includeLayoutNotAssociatedObjects?: boolean;
38
- }): CustomSort[];
35
+ getActiveCustomSorts(config?: LayoutExtendedConfig): CustomSort[];
39
36
  /**
40
37
  * Retrieves all Custom Sorts that are suspended in Adaptable State
41
38
  * @returns Custom Sorts
42
39
  */
43
- getSuspendedCustomSorts(config?: {
44
- includeLayoutNotAssociatedObjects?: boolean;
45
- }): CustomSort[];
40
+ getSuspendedCustomSorts(config?: LayoutExtendedConfig): CustomSort[];
46
41
  /**
47
42
  * Retrieves Custom Sort from Adaptable State for Column with given ColumnId
48
43
  * @param columnId Id of Column to retrieve Custom Sort for
@@ -3,6 +3,7 @@ import { AdaptablePredicateDef } from '../AdaptableState/Common/AdaptablePredica
3
3
  import { ColumnScope } from '../AdaptableState/Common/ColumnScope';
4
4
  import { FlashingCellDefinition, FlashingCellState } from '../AdaptableState/FlashingCellState';
5
5
  import { AdaptableObjectLookupCriteria } from '../AdaptableState/Common/AdaptableObject';
6
+ import { LayoutExtendedConfig } from '../types';
6
7
  /**
7
8
  * Provides run-time access to Flashing Cell functionality and associated State
8
9
  */
@@ -15,25 +16,23 @@ export interface FlashingCellApi {
15
16
  /**
16
17
  * Retrieves all Flashing Cell Definitions in Flashing Cell State
17
18
  */
18
- getFlashingCellDefinitions(config?: {
19
- includeLayoutNotAssociatedObjects?: boolean;
20
- }): FlashingCellDefinition[];
19
+ getFlashingCellDefinitions(config?: LayoutExtendedConfig): FlashingCellDefinition[];
21
20
  /**
22
21
  * Retrieves Flashing Cell Definition by the technical ID (from `FlashingCellState`)
23
22
  * @param id Flashing Cell Definition Id
24
23
  * @returns Flashing Cell Definition
25
24
  */
26
- getFlashingCellDefinitionById(id: FlashingCellDefinition['Uuid']): FlashingCellDefinition;
25
+ getFlashingCellDefinitionById(id: FlashingCellDefinition['Uuid'], config?: LayoutExtendedConfig): FlashingCellDefinition;
27
26
  /**
28
27
  * Retrieves all active (non-suspended) cell Definitions in Flashing Cell State
29
28
  * @returns flashing cell definitions
30
29
  */
31
- getActiveFlashingCellDefinitions(): FlashingCellDefinition[];
30
+ getActiveFlashingCellDefinitions(config?: LayoutExtendedConfig): FlashingCellDefinition[];
32
31
  /**
33
32
  * Retrieves all suspended Cell Definitions in Flashing Cell State
34
33
  * @returns flashing cell definitions
35
34
  */
36
- getSuspendedFlashingCellDefinitions(): FlashingCellDefinition[];
35
+ getSuspendedFlashingCellDefinitions(config?: LayoutExtendedConfig): FlashingCellDefinition[];
37
36
  /**
38
37
  * Returns `FlashTarget` of the given Flashing Cell Definition
39
38
  * @param flashingCellDefinition Flashing Cell Definition to check
@@ -61,6 +60,11 @@ export interface FlashingCellApi {
61
60
  * @param flashingCellDefinition Flashing Cell Definition to Add
62
61
  */
63
62
  addFlashingCellDefinition(flashingCellDefinition: FlashingCellDefinition): FlashingCellDefinition;
63
+ /**
64
+ * Deletes a Flashing Cell
65
+ * @param flashingCellDefinition flashing cell to delete
66
+ */
67
+ deleteFlashingCellDefinition(flashingCellDefinition: FlashingCellDefinition): void;
64
68
  /**
65
69
  * Sets a collection of Flashing Cell Definitions into State
66
70
  * @param flashingCellDefinitions Flashing Cell Definitions to Add to State