@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
@@ -10,19 +10,19 @@ export class FlashingCellApiImpl extends ApiBase {
10
10
  return this.getAdaptableState().FlashingCell;
11
11
  }
12
12
  getFlashingCellDefinitions(config) {
13
- const flashingCellDefinitions = this.handleLayoutAssociatedObjects(this.getFlashingCellState().FlashingCellDefinitions, 'FlashingCell', config) ?? [];
13
+ const flashingCellDefinitions = this.handleLayoutExtensionObjects(this.getFlashingCellState().FlashingCellDefinitions, 'FlashingCell', config) ?? [];
14
14
  return flashingCellDefinitions.map((flashingCellDefinition) => {
15
15
  return this.internalApi.mergeFlashingCellDefinitionWithDefaults(flashingCellDefinition);
16
16
  });
17
17
  }
18
- getFlashingCellDefinitionById(id) {
19
- return this.getFlashingCellDefinitions()?.find((fc) => fc?.Uuid === id);
18
+ getFlashingCellDefinitionById(id, config) {
19
+ return this.getFlashingCellDefinitions(config)?.find((fc) => fc?.Uuid === id);
20
20
  }
21
- getActiveFlashingCellDefinitions() {
22
- return this.getFlashingCellDefinitions().filter((fc) => !fc.IsSuspended);
21
+ getActiveFlashingCellDefinitions(config) {
22
+ return this.getFlashingCellDefinitions(config).filter((fc) => !fc.IsSuspended);
23
23
  }
24
- getSuspendedFlashingCellDefinitions() {
25
- return this.getFlashingCellDefinitions().filter((fc) => fc.IsSuspended);
24
+ getSuspendedFlashingCellDefinitions(config) {
25
+ return this.getFlashingCellDefinitions(config).filter((fc) => fc.IsSuspended);
26
26
  }
27
27
  getFlashingCellFlashTarget(flashingCellDefinition) {
28
28
  return flashingCellDefinition.FlashTarget ?? 'cell';
@@ -79,6 +79,9 @@ export class FlashingCellApiImpl extends ApiBase {
79
79
  });
80
80
  return flashingCellDefinitions?.map((flashingCell) => this.getFlashingCellDefinitionById(flashingCell?.Uuid));
81
81
  }
82
+ deleteFlashingCellDefinition(flashingCellDefinition) {
83
+ this.dispatchAction(FlashingCellRedux.FlashingCellDefinitionDelete(flashingCellDefinition));
84
+ }
82
85
  getFlashingCellPredicateDefsForScope(scope) {
83
86
  return this.getAdaptableApi()
84
87
  .predicateApi.internalApi.getFlashingCellPredicateDefs(scope)
@@ -92,7 +95,7 @@ export class FlashingCellApiImpl extends ApiBase {
92
95
  }
93
96
  findFlashingCellDefinitions(criteria) {
94
97
  return this.getAdaptableInternalApi().findAdaptableObjectsByLookupCriteria(criteria, this.getFlashingCellDefinitions({
95
- includeLayoutNotAssociatedObjects: true,
98
+ includeLayoutNotExtendedObjects: true,
96
99
  }));
97
100
  }
98
101
  }
@@ -4,24 +4,18 @@ import { FormatColumnApi } from '../FormatColumnApi';
4
4
  import { FormatColumn, FormatColumnState } from '../../AdaptableState/FormatColumnState';
5
5
  import { AdaptableColumn } from '../../AdaptableState/Common/AdaptableColumn';
6
6
  import { AdaptableFormat } from '../../types';
7
- import { AdaptableObjectLookupCriteria } from '../../../types';
7
+ import { AdaptableObjectLookupCriteria, FormatColumnConfig } from '../../../types';
8
8
  import { FormatColumnInternalApi } from '../Internal/FormatColumnInternalApi';
9
9
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
10
10
  export declare class FormatColumnApiImpl extends ApiBase implements FormatColumnApi {
11
11
  internalApi: FormatColumnInternalApi;
12
12
  constructor(_adaptable: IAdaptable);
13
13
  getFormatColumnState(): FormatColumnState;
14
- getFormatColumns(config?: {
15
- includeLayoutNotAssociatedObjects?: boolean;
16
- }): FormatColumn[];
17
- getFormatColumnByUuId(id: FormatColumn['Uuid']): FormatColumn;
18
- getActiveFormatColumns(config?: {
19
- includeLayoutNotAssociatedObjects?: boolean;
20
- }): FormatColumn[];
21
- getDisplayFormatForColumn(column: AdaptableColumn): AdaptableFormat | undefined;
22
- getSuspendedFormatColumns(config?: {
23
- includeLayoutNotAssociatedObjects?: boolean;
24
- }): FormatColumn[];
14
+ getFormatColumns(config?: FormatColumnConfig): FormatColumn[];
15
+ getFormatColumnByUuId(id: FormatColumn['Uuid'], config?: FormatColumnConfig): FormatColumn;
16
+ getActiveFormatColumns(config?: FormatColumnConfig): FormatColumn[];
17
+ getDisplayFormatForColumn(column: AdaptableColumn, config?: FormatColumnConfig): AdaptableFormat | undefined;
18
+ getSuspendedFormatColumns(config?: FormatColumnConfig): FormatColumn[];
25
19
  addFormatColumn(formatColumn: FormatColumn): FormatColumn;
26
20
  addFormatColumns(formatColumns: FormatColumn[]): FormatColumn[];
27
21
  editFormatColumn(formatColumn: FormatColumn): FormatColumn;
@@ -33,12 +27,8 @@ export declare class FormatColumnApiImpl extends ApiBase implements FormatColumn
33
27
  unSuspendFormatColumn(formatColumn: FormatColumn): FormatColumn;
34
28
  suspendAllFormatColumn(): void;
35
29
  unSuspendAllFormatColumn(): void;
36
- getFormatColumnsForColumn(column: AdaptableColumn, config?: {
37
- includeSuspended?: boolean;
38
- }): FormatColumn[];
39
- getFormatColumnsForColumnId(columnId: string, config?: {
40
- includeSuspended?: boolean;
41
- }): FormatColumn[];
30
+ getFormatColumnsForColumn(column: AdaptableColumn, config?: FormatColumnConfig): FormatColumn[];
31
+ getFormatColumnsForColumnId(columnId: string, config?: FormatColumnConfig): FormatColumn[];
42
32
  openFormatColumnSettingsPanel(): void;
43
33
  getFormatColumnsWithAllScope(formatColumns: FormatColumn[]): FormatColumn[] | undefined;
44
34
  getFormatColumnsWithDataTypeScope(formatColumns: FormatColumn[]): FormatColumn[] | undefined;
@@ -12,16 +12,16 @@ export class FormatColumnApiImpl extends ApiBase {
12
12
  return this.getAdaptableState().FormatColumn;
13
13
  }
14
14
  getFormatColumns(config) {
15
- return (this.handleLayoutAssociatedObjects(this.getFormatColumnState().FormatColumns, 'FormatColumn', config) ?? []);
15
+ return (this.handleLayoutExtensionObjects(this.getFormatColumnState().FormatColumns, 'FormatColumn', config) ?? []);
16
16
  }
17
- getFormatColumnByUuId(id) {
18
- return this.getFormatColumns({ includeLayoutNotAssociatedObjects: true }).find((formatColumn) => formatColumn.Uuid === id);
17
+ getFormatColumnByUuId(id, config) {
18
+ return this.getFormatColumns(config).find((formatColumn) => formatColumn.Uuid === id);
19
19
  }
20
20
  getActiveFormatColumns(config) {
21
21
  return this.getFormatColumns(config).filter((formatColumn) => !formatColumn.IsSuspended);
22
22
  }
23
- getDisplayFormatForColumn(column) {
24
- const formatColumns = this.getFormatColumnsForColumn(column);
23
+ getDisplayFormatForColumn(column, config) {
24
+ const formatColumns = this.getFormatColumnsForColumn(column, config);
25
25
  if (ArrayExtensions.IsNullOrEmpty(formatColumns)) {
26
26
  return undefined;
27
27
  }
@@ -75,7 +75,7 @@ export class FormatColumnApiImpl extends ApiBase {
75
75
  this.dispatchAction(FormatColumnRedux.FormatColumnUnSuspendAll());
76
76
  }
77
77
  getFormatColumnsForColumn(column, config) {
78
- const formatColumns = this.getFormatColumns().filter((formatColumn) => config?.includeSuspended || !formatColumn.IsSuspended);
78
+ const formatColumns = this.getFormatColumns(config).filter((formatColumn) => config?.includeSuspended || !formatColumn.IsSuspended);
79
79
  return this.internalApi.getFormatColumnWithColumnInScope(formatColumns, column);
80
80
  }
81
81
  getFormatColumnsForColumnId(columnId, config) {
@@ -115,8 +115,9 @@ export class FormatColumnApiImpl extends ApiBase {
115
115
  this.dispatchAction(FormatColumnRedux.FormatColumnMoveDown(formatColumn));
116
116
  }
117
117
  findFormatColumns(criteria) {
118
- return this.getAdaptableInternalApi().findAdaptableObjectsByLookupCriteria(criteria, this.getFormatColumns({
119
- includeLayoutNotAssociatedObjects: true,
120
- }));
118
+ const config = {
119
+ includeLayoutNotExtendedObjects: true,
120
+ };
121
+ return this.getAdaptableInternalApi().findAdaptableObjectsByLookupCriteria(criteria, this.getFormatColumns(config));
121
122
  }
122
123
  }
@@ -6,7 +6,7 @@ import { ColumnSort } from '../../AdaptableState/Common/ColumnSort';
6
6
  import { ModuleParams } from '../../View/Components/SharedProps/ModuleViewPopupProps';
7
7
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
8
8
  import { LayoutInternalApi } from '../Internal/LayoutInternalApi';
9
- import { ExtendedLayoutInfo } from '../../AdaptableState/Common/ExtendedLayoutInfo';
9
+ import { ExtendedLayout } from '../../AdaptableState/Common/ExtendedLayout';
10
10
  export declare class LayoutApiImpl extends ApiBase implements LayoutApi {
11
11
  internalApi: LayoutInternalApi;
12
12
  constructor(_adaptable: IAdaptable);
@@ -24,7 +24,8 @@ export declare class LayoutApiImpl extends ApiBase implements LayoutApi {
24
24
  getCurrentLayoutColumnSort(columnId: string): ColumnSort['SortOrder'] | null;
25
25
  getCurrentLayoutName(): string;
26
26
  getLayoutByName(layoutName: string): Layout | null;
27
- getExtendedLayoutByName(layoutName: string): ExtendedLayoutInfo | undefined;
27
+ createOrUpdateExtendedLayout(extendedLayoutInfo: ExtendedLayout): void;
28
+ getExtendedLayoutByName(layoutName: string): ExtendedLayout | undefined;
28
29
  getLayouts(): Layout[];
29
30
  getLayoutById(id: Layout['Uuid']): Layout;
30
31
  saveCurrentLayout(): void;
@@ -89,14 +89,113 @@ export class LayoutApiImpl extends ApiBase {
89
89
  }
90
90
  }
91
91
  }
92
+ createOrUpdateExtendedLayout(extendedLayoutInfo) {
93
+ const config = {
94
+ includeLayoutNotExtendedObjects: true,
95
+ };
96
+ // Alerts
97
+ const alertExtensions = extendedLayoutInfo.Extensions.filter((e) => {
98
+ return e.Module == 'Alert';
99
+ });
100
+ alertExtensions.forEach((le) => {
101
+ const alertDefinition = le.Object;
102
+ const existingAlertDefinition = this.getAlertApi().getAlertDefinitionById(alertDefinition.Uuid, config);
103
+ if (!existingAlertDefinition) {
104
+ this.getAlertApi().addAlertDefinition(alertDefinition);
105
+ }
106
+ });
107
+ // Custom Sorts
108
+ const customSortExtensions = extendedLayoutInfo.Extensions.filter((e) => {
109
+ return e.Module == 'CustomSort';
110
+ });
111
+ customSortExtensions.forEach((le) => {
112
+ const customSort = le.Object;
113
+ const existingCustomSort = this.getCustomSortApi().getCustomSortById(customSort.Uuid, config);
114
+ if (!existingCustomSort) {
115
+ this.getCustomSortApi().addCustomSort(customSort);
116
+ }
117
+ });
118
+ // Flashing Cells
119
+ const flashingCellExtensions = extendedLayoutInfo.Extensions.filter((e) => {
120
+ return e.Module == 'FlashingCell';
121
+ });
122
+ flashingCellExtensions.forEach((le) => {
123
+ const flashingCellDefinition = le.Object;
124
+ const existingflashingCellDefinition = this.getFlashingCellApi().getFlashingCellDefinitionById(flashingCellDefinition.Uuid, config);
125
+ if (!existingflashingCellDefinition) {
126
+ this.getFlashingCellApi().addFlashingCellDefinition(flashingCellDefinition);
127
+ }
128
+ });
129
+ // FormatColumns
130
+ const formatColumnExtensions = extendedLayoutInfo.Extensions.filter((e) => {
131
+ return e.Module == 'FormatColumn';
132
+ });
133
+ formatColumnExtensions.forEach((le) => {
134
+ const formatColumn = le.Object;
135
+ const existingFormatColumn = this.getFormatColumnApi().getFormatColumnByUuId(formatColumn.Uuid, config);
136
+ if (!existingFormatColumn) {
137
+ this.getFormatColumnApi().addFormatColumn(formatColumn);
138
+ }
139
+ });
140
+ // Plus Minus
141
+ const plusMinusExtensions = extendedLayoutInfo.Extensions.filter((e) => {
142
+ return e.Module == 'PlusMinus';
143
+ });
144
+ plusMinusExtensions.forEach((le) => {
145
+ const plusMinusNudge = le.Object;
146
+ const existingPlusMinusNudge = this.getPlusMinusApi().getPlusMinusById(plusMinusNudge.Uuid, config);
147
+ if (!existingPlusMinusNudge) {
148
+ this.getPlusMinusApi().addPlusMinusNudge(plusMinusNudge);
149
+ }
150
+ });
151
+ // Schedule
152
+ const scheduleExtensions = extendedLayoutInfo.Extensions.filter((e) => {
153
+ return e.Module == 'Schedule';
154
+ });
155
+ scheduleExtensions.forEach((le) => {
156
+ const schedule = le.Object;
157
+ const existingSchedule = this.getScheduleApi().getScheduleById(schedule.Uuid, config);
158
+ if (!existingSchedule) {
159
+ if (existingSchedule.ScheduleType == 'Reminder') {
160
+ this.getScheduleApi().addReminderSchedule(schedule);
161
+ }
162
+ if (existingSchedule.ScheduleType == 'Report') {
163
+ this.getScheduleApi().addReportSchedule(schedule);
164
+ }
165
+ }
166
+ });
167
+ // Shortcut
168
+ const shortCutExtensions = extendedLayoutInfo.Extensions.filter((e) => {
169
+ return e.Module == 'Shortcut';
170
+ });
171
+ shortCutExtensions.forEach((le) => {
172
+ const shortcut = le.Object;
173
+ const existingShortcut = this.getShortcutApi().getShortcutById(shortcut.Uuid, config);
174
+ if (!existingShortcut) {
175
+ this.getShortcutApi().addShortcut(shortcut);
176
+ }
177
+ });
178
+ // StyledColumn
179
+ const styledColumnExtensions = extendedLayoutInfo.Extensions.filter((e) => {
180
+ return e.Module == 'StyledColumn';
181
+ });
182
+ styledColumnExtensions.forEach((le) => {
183
+ const styledColumn = le.Object;
184
+ const existingStyledColumn = this.getStyledColumnApi().getStyledColumnById(styledColumn.Uuid, config);
185
+ if (!existingStyledColumn) {
186
+ this.getStyledColumnApi().addStyledColumn(styledColumn);
187
+ }
188
+ });
189
+ this.createOrUpdateLayout(extendedLayoutInfo.Layout);
190
+ }
92
191
  getExtendedLayoutByName(layoutName) {
93
192
  const layout = this.getLayoutByName(layoutName);
94
193
  if (!layout) {
95
194
  return undefined;
96
195
  }
97
196
  const config = {
98
- includeLayoutNotAssociatedObjects: true,
99
- associatedWithLayout: layoutName,
197
+ includeLayoutNotExtendedObjects: false,
198
+ extendedLayoutName: layoutName,
100
199
  };
101
200
  // cannot see a better way than to go through this module by module...
102
201
  let extensions = [];
@@ -130,11 +229,6 @@ export class LayoutApiImpl extends ApiBase {
130
229
  .forEach((obj) => {
131
230
  extensions.push({ Module: 'Schedule', Object: obj });
132
231
  });
133
- this.getScheduleApi()
134
- .getReportSchedules(config)
135
- .forEach((obj) => {
136
- extensions.push({ Module: 'Schedule', Object: obj });
137
- });
138
232
  this.getShortcutApi()
139
233
  .getShortcuts(config)
140
234
  .forEach((obj) => {
@@ -1,5 +1,6 @@
1
1
  import { TableLayout, PivotLayout, Layout } from '../../types';
2
2
  import { LayoutModel, TableLayoutModel, PivotLayoutModel } from '../../layout-manager/src/LayoutManagerModel';
3
+ export declare function columnWidthsToColumnSizing(columnWidths: Record<string, number>): TableLayout['ColumnSizing'];
3
4
  export declare const layoutStateToLayoutModel: (layout: TableLayout | PivotLayout) => LayoutModel;
4
5
  export declare const layoutModelToLayoutState: (layoutModel: LayoutModel) => TableLayout | PivotLayout;
5
6
  /**
@@ -4,6 +4,15 @@ import { normalizeTableLayoutModel, normalizePivotLayoutModel, } from '../../lay
4
4
  import { simplifyTableLayoutModel, simplifyPivotLayoutModel, } from '../../layout-manager/src/simplifyLayoutModel';
5
5
  import { isWeightedAverageAggregation, WEIGHTED_AVERAGE_AGG_FN_NAME, isWeightedAverageAggFuncName, } from '../../AdaptableState/Common/AggregationColumns';
6
6
  import { removeAdaptableObjectPrimitivesInlineDeep } from '../../Utilities/Helpers/AdaptableHelper';
7
+ export function columnWidthsToColumnSizing(columnWidths) {
8
+ if (!columnWidths) {
9
+ return undefined;
10
+ }
11
+ return Object.keys(columnWidths).reduce((acc, colId) => {
12
+ acc[colId] = { Width: columnWidths[colId] };
13
+ return acc;
14
+ }, {});
15
+ }
7
16
  export const layoutStateToLayoutModel = (layout) => {
8
17
  if (isPivotLayout(layout)) {
9
18
  return pivotLayoutToPivotLayoutModel(layout);
@@ -153,6 +162,8 @@ export const checkForDuplicateColumns = (layout) => {
153
162
  };
154
163
  export const tableLayoutToTableLayoutModel = (tableLayout) => {
155
164
  tableLayout = structuredClone(tableLayout);
165
+ tableLayout.ColumnSizing =
166
+ tableLayout.ColumnSizing ?? columnWidthsToColumnSizing(tableLayout.ColumnWidths);
156
167
  cleanupAdaptableObjectPrimitives(tableLayout);
157
168
  const TableAggregationColumns = (tableLayout.TableAggregationColumns || []).map(({ ColumnId, AggFunc }) => {
158
169
  return {
@@ -164,7 +175,7 @@ export const tableLayoutToTableLayoutModel = (tableLayout) => {
164
175
  Name: tableLayout.Name,
165
176
  SuppressAggFuncInHeader: tableLayout.SuppressAggFuncInHeader,
166
177
  TableColumns: tableLayout.TableColumns,
167
- ColumnWidths: tableLayout.ColumnWidths,
178
+ ColumnSizing: tableLayout.ColumnSizing,
168
179
  ColumnVisibility: tableLayout.ColumnVisibility,
169
180
  ColumnSorts: tableLayout.ColumnSorts,
170
181
  RowGroupedColumns: tableLayout.RowGroupedColumns,
@@ -224,11 +235,13 @@ export const tableLayoutToTableLayoutModel = (tableLayout) => {
224
235
  };
225
236
  export const pivotLayoutToPivotLayoutModel = (pivotLayout) => {
226
237
  pivotLayout = structuredClone(pivotLayout);
238
+ pivotLayout.ColumnSizing =
239
+ pivotLayout.ColumnSizing ?? columnWidthsToColumnSizing(pivotLayout.ColumnWidths);
227
240
  cleanupAdaptableObjectPrimitives(pivotLayout);
228
241
  const result = simplifyPivotLayoutModel({
229
242
  Name: pivotLayout.Name,
230
243
  SuppressAggFuncInHeader: pivotLayout.SuppressAggFuncInHeader,
231
- ColumnWidths: pivotLayout.ColumnWidths,
244
+ ColumnSizing: pivotLayout.ColumnSizing,
232
245
  ColumnSorts: pivotLayout.ColumnSorts,
233
246
  PivotGroupedColumns: pivotLayout.PivotGroupedColumns,
234
247
  ColumnPinning: pivotLayout.ColumnPinning,
@@ -257,6 +270,9 @@ export const pivotLayoutToPivotLayoutModel = (pivotLayout) => {
257
270
  }
258
271
  : undefined,
259
272
  });
273
+ if (pivotLayout.RowGroupDisplayType) {
274
+ result.RowGroupDisplayType = pivotLayout.RowGroupDisplayType;
275
+ }
260
276
  if (pivotLayout.ColumnFilters) {
261
277
  result.Ignore_ColumnFilters = pivotLayout.ColumnFilters;
262
278
  }
@@ -299,7 +315,7 @@ export const tableLayoutModelToTableLayout = (layoutModel) => {
299
315
  const tableLayout = {
300
316
  Name: layoutModel.Name,
301
317
  TableColumns: layoutModel.TableColumns,
302
- ColumnWidths: layoutModel.ColumnWidths,
318
+ ColumnSizing: layoutModel.ColumnSizing,
303
319
  ColumnVisibility: layoutModel.ColumnVisibility,
304
320
  ColumnSorts: layoutModel.ColumnSorts,
305
321
  };
@@ -406,7 +422,7 @@ export const pivotLayoutModelToPivotLayout = (layoutModel) => {
406
422
  Name: layoutModel.Name,
407
423
  PivotColumns: layoutModel.PivotColumns,
408
424
  TableColumns: layoutModel.TableColumns,
409
- ColumnWidths: layoutModel.ColumnWidths,
425
+ ColumnSizing: layoutModel.ColumnSizing,
410
426
  ColumnSorts: layoutModel.ColumnSorts,
411
427
  ColumnPinning: layoutModel.ColumnPinning,
412
428
  PivotExpandLevel: layoutModel.PivotExpandLevel,
@@ -495,6 +511,9 @@ export const pivotLayoutModelToPivotLayout = (layoutModel) => {
495
511
  pivotLayout.ColumnGroupValues.ExceptionGroupKeys = layoutModel.ColumnGroupValues.Values;
496
512
  }
497
513
  }
514
+ if (layoutModel.RowGroupDisplayType) {
515
+ pivotLayout.RowGroupDisplayType = layoutModel.RowGroupDisplayType;
516
+ }
498
517
  return pivotLayout;
499
518
  };
500
519
  export const isPivotLayout = (layout) => Array.isArray(layout.PivotColumns);
@@ -1,17 +1,19 @@
1
- import { ApiBase, LayoutAssociatedObjectLoadConfig } from './ApiBase';
1
+ import { ApiBase } from './ApiBase';
2
2
  import { PlusMinusNudge, PlusMinusState } from '../../AdaptableState/PlusMinusState';
3
3
  import { PlusMinusApi } from '../PlusMinusApi';
4
4
  import { CellUpdateRequest, GridCell } from '../../AdaptableState/Selection/GridCell';
5
+ import { LayoutExtendedConfig } from '../../AdaptableState/Common/ExtendedLayout';
5
6
  export declare class PlusMinusApiImpl extends ApiBase implements PlusMinusApi {
6
7
  getPlusMinusState(): PlusMinusState;
7
- getAllPlusMinus(config?: LayoutAssociatedObjectLoadConfig): PlusMinusNudge[];
8
- getPlusMinusById(id: PlusMinusNudge['Uuid']): PlusMinusNudge;
9
- getAllActivePlusMinus(): PlusMinusNudge[];
10
- getAllSuspendedPlusMinus(): PlusMinusNudge[];
8
+ getAllPlusMinus(config?: LayoutExtendedConfig): PlusMinusNudge[];
9
+ getPlusMinusById(id: PlusMinusNudge['Uuid'], config?: LayoutExtendedConfig): PlusMinusNudge;
10
+ getAllActivePlusMinus(config?: LayoutExtendedConfig): PlusMinusNudge[];
11
+ getAllSuspendedPlusMinus(config?: LayoutExtendedConfig): PlusMinusNudge[];
11
12
  runPlusMinusNudge(plusMinusNudge: PlusMinusNudge, cellsToUpdate: GridCell[], direction: 'up' | 'down'): void;
12
13
  applyPlusMinus(cellUpdateRequests: CellUpdateRequest[]): void;
13
14
  openPlusMinusSettingsPanel(): void;
14
15
  editPlusMinusNudge(plusMinusNudge: PlusMinusNudge): PlusMinusNudge;
16
+ deletePlusMinusNudge(plusMinusNudge: PlusMinusNudge): void;
15
17
  suspendPlusMinusNudge(plusMinusNudge: PlusMinusNudge): PlusMinusNudge;
16
18
  unSuspendPlusMinusNudge(plusMinusNudge: PlusMinusNudge): PlusMinusNudge;
17
19
  addPlusMinusNudge(plusMinusNudge: PlusMinusNudge): PlusMinusNudge;
@@ -6,17 +6,17 @@ export class PlusMinusApiImpl extends ApiBase {
6
6
  return this.getAdaptableState().PlusMinus;
7
7
  }
8
8
  getAllPlusMinus(config) {
9
- const layoutSpecificPlusMinusNudges = this.handleLayoutAssociatedObjects(this.getPlusMinusState().PlusMinusNudges, 'PlusMinus', config) ?? [];
9
+ const layoutSpecificPlusMinusNudges = this.handleLayoutExtensionObjects(this.getPlusMinusState().PlusMinusNudges, 'PlusMinus', config) ?? [];
10
10
  return layoutSpecificPlusMinusNudges.filter((plusMinusNudge) => plusMinusNudge.Rule == undefined || plusMinusNudge.Rule.BooleanExpression != undefined);
11
11
  }
12
- getPlusMinusById(id) {
13
- return this.getAllPlusMinus().find((plusMinus) => plusMinus?.Uuid === id);
12
+ getPlusMinusById(id, config) {
13
+ return this.getAllPlusMinus(config).find((plusMinus) => plusMinus?.Uuid === id);
14
14
  }
15
- getAllActivePlusMinus() {
16
- return this.getAllPlusMinus().filter((plusMinusNudge) => !plusMinusNudge.IsSuspended);
15
+ getAllActivePlusMinus(config) {
16
+ return this.getAllPlusMinus(config).filter((plusMinusNudge) => !plusMinusNudge.IsSuspended);
17
17
  }
18
- getAllSuspendedPlusMinus() {
19
- return this.getAllPlusMinus().filter((plusMinusNudge) => plusMinusNudge.IsSuspended);
18
+ getAllSuspendedPlusMinus(config) {
19
+ return this.getAllPlusMinus(config).filter((plusMinusNudge) => plusMinusNudge.IsSuspended);
20
20
  }
21
21
  runPlusMinusNudge(plusMinusNudge, cellsToUpdate, direction) {
22
22
  let plusMinusModule = (this.getAdaptableInternalApi().getModules().get(ModuleConstants.PlusMinusModuleId));
@@ -32,6 +32,9 @@ export class PlusMinusApiImpl extends ApiBase {
32
32
  this.dispatchAction(PlusMinusRedux.PlusMinusNudgeEdit(plusMinusNudge));
33
33
  return this.getPlusMinusById(plusMinusNudge.Uuid);
34
34
  }
35
+ deletePlusMinusNudge(plusMinusNudge) {
36
+ this.dispatchAction(PlusMinusRedux.PlusMinusNudgeDelete(plusMinusNudge));
37
+ }
35
38
  suspendPlusMinusNudge(plusMinusNudge) {
36
39
  this.dispatchAction(PlusMinusRedux.PlusMinusNudgeSuspend(plusMinusNudge));
37
40
  return this.getPlusMinusById(plusMinusNudge.Uuid);
@@ -6,24 +6,21 @@ import { IPushPullSchedule } from '../../AdaptableState/IPushPullState';
6
6
  import { OpenFinSchedule } from '../../AdaptableState/OpenFinState';
7
7
  import { ReminderSchedule, ScheduleState } from '../../AdaptableState/ScheduleState';
8
8
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
9
+ import { LayoutExtendedConfig } from '../../types';
9
10
  export declare class ScheduleApiImpl extends ApiBase implements ScheduleApi {
10
11
  constructor(_adaptable: IAdaptable);
11
12
  getScheduleState(): ScheduleState;
12
- getSchedules(): BaseSchedule[];
13
- getReminderSchedules(config?: {
14
- includeLayoutNotAssociatedObjects?: boolean;
15
- }): ReminderSchedule[];
16
- getScheduleById(id: BaseSchedule['Uuid']): BaseSchedule;
17
- getActiveReminderSchedules(): ReminderSchedule[];
18
- getSuspendedReminderSchedules(): ReminderSchedule[];
13
+ getSchedules(config?: LayoutExtendedConfig): BaseSchedule[];
14
+ getReminderSchedules(config?: LayoutExtendedConfig): ReminderSchedule[];
15
+ getScheduleById(id: BaseSchedule['Uuid'], config?: LayoutExtendedConfig): BaseSchedule;
16
+ getActiveReminderSchedules(config?: LayoutExtendedConfig): ReminderSchedule[];
17
+ getSuspendedReminderSchedules(config?: LayoutExtendedConfig): ReminderSchedule[];
19
18
  addReminderSchedule(schedule: ReminderSchedule): ReminderSchedule;
20
19
  deleteReminderSchedule(schedule: ReminderSchedule): void;
21
20
  editReminderSchedule(schedule: ReminderSchedule): ReminderSchedule;
22
21
  suspendReminderSchedule(schedule: ReminderSchedule): ReminderSchedule;
23
22
  unSuspendReminderSchedule(schedule: ReminderSchedule): ReminderSchedule;
24
- getReportSchedules(config?: {
25
- includeLayoutNotAssociatedObjects?: boolean;
26
- }): ReportSchedule[];
23
+ getReportSchedules(config?: LayoutExtendedConfig): ReportSchedule[];
27
24
  getActiveReportSchedules(): ReportSchedule[];
28
25
  getSuspendedReportSchedules(): ReportSchedule[];
29
26
  addReportSchedule(schedule: ReportSchedule): ReportSchedule;
@@ -31,9 +28,7 @@ export declare class ScheduleApiImpl extends ApiBase implements ScheduleApi {
31
28
  deleteReportSchedule(schedule: ReportSchedule): void;
32
29
  suspendReportSchedule(schedule: ReportSchedule): ReportSchedule;
33
30
  unSuspendReportSchedule(schedule: ReportSchedule): ReportSchedule;
34
- getIPushPullSchedules(config?: {
35
- includeLayoutNotAssociatedObjects?: boolean;
36
- }): IPushPullSchedule[];
31
+ getIPushPullSchedules(config?: LayoutExtendedConfig): IPushPullSchedule[];
37
32
  getActiveIPushPullSchedules(): IPushPullSchedule[];
38
33
  getSuspendedIPushPullSchedules(): IPushPullSchedule[];
39
34
  addIPushPullSchedule(schedule: IPushPullSchedule): IPushPullSchedule;
@@ -41,9 +36,7 @@ export declare class ScheduleApiImpl extends ApiBase implements ScheduleApi {
41
36
  deleteIPushPullSchedule(schedule: IPushPullSchedule): void;
42
37
  suspendIPushPullSchedule(schedule: IPushPullSchedule): IPushPullSchedule;
43
38
  unSuspendIPushPullSchedule(schedule: IPushPullSchedule): IPushPullSchedule;
44
- getOpenFinSchedules(config?: {
45
- includeLayoutNotAssociatedObjects?: boolean;
46
- }): OpenFinSchedule[];
39
+ getOpenFinSchedules(config?: LayoutExtendedConfig): OpenFinSchedule[];
47
40
  getActiveOpenFinSchedules(): OpenFinSchedule[];
48
41
  getSuspendedOpenFinSchedules(): OpenFinSchedule[];
49
42
  addOpenFinSchedule(schedule: OpenFinSchedule): OpenFinSchedule;
@@ -8,26 +8,25 @@ export class ScheduleApiImpl extends ApiBase {
8
8
  getScheduleState() {
9
9
  return this.getAdaptableState().Schedule;
10
10
  }
11
- getSchedules() {
11
+ getSchedules(config) {
12
12
  let allSchedules = [];
13
- allSchedules.push(...this.getReminderSchedules());
14
- allSchedules.push(...this.getReportSchedules());
15
- allSchedules.push(...this.getIPushPullSchedules());
16
- allSchedules.push(...this.getOpenFinSchedules());
13
+ allSchedules.push(...this.getReminderSchedules(config));
14
+ allSchedules.push(...this.getReportSchedules(config));
15
+ allSchedules.push(...this.getIPushPullSchedules(config));
16
+ allSchedules.push(...this.getOpenFinSchedules(config));
17
17
  return allSchedules;
18
18
  }
19
19
  getReminderSchedules(config) {
20
- return (this.handleLayoutAssociatedObjects(this.getScheduleState().Reminders, 'Schedule', config) ??
21
- []);
20
+ return (this.handleLayoutExtensionObjects(this.getScheduleState().Reminders, 'Schedule', config) ?? []);
22
21
  }
23
- getScheduleById(id) {
24
- return this.getSchedules().find((schedule) => schedule?.Uuid === id);
22
+ getScheduleById(id, config) {
23
+ return this.getSchedules(config).find((schedule) => schedule?.Uuid === id);
25
24
  }
26
- getActiveReminderSchedules() {
27
- return this.getReminderSchedules().filter((schedule) => !schedule.IsSuspended);
25
+ getActiveReminderSchedules(config) {
26
+ return this.getReminderSchedules(config).filter((schedule) => !schedule.IsSuspended);
28
27
  }
29
- getSuspendedReminderSchedules() {
30
- return this.getReminderSchedules().filter((schedule) => schedule.IsSuspended);
28
+ getSuspendedReminderSchedules(config) {
29
+ return this.getReminderSchedules(config).filter((schedule) => schedule.IsSuspended);
31
30
  }
32
31
  addReminderSchedule(schedule) {
33
32
  this.dispatchAction(ScheduleRedux.ReminderScheduleAdd(schedule));
@@ -49,7 +48,7 @@ export class ScheduleApiImpl extends ApiBase {
49
48
  return this.getScheduleById(schedule.Uuid);
50
49
  }
51
50
  getReportSchedules(config) {
52
- return (this.handleLayoutAssociatedObjects(this.getAdaptableState().Schedule.ReportSchedules, 'Schedule', config) ?? []);
51
+ return (this.handleLayoutExtensionObjects(this.getAdaptableState().Schedule.ReportSchedules, 'Schedule', config) ?? []);
53
52
  }
54
53
  getActiveReportSchedules() {
55
54
  return this.getReportSchedules().filter((schedule) => !schedule.IsSuspended);
@@ -78,7 +77,7 @@ export class ScheduleApiImpl extends ApiBase {
78
77
  }
79
78
  getIPushPullSchedules(config) {
80
79
  const ippApi = this.getAdaptableApi().pluginsApi.getipushpullPluginApi();
81
- return (this.handleLayoutAssociatedObjects(ippApi?.getIPushPullSchedules(), 'Schedule', config) ?? []);
80
+ return (this.handleLayoutExtensionObjects(ippApi?.getIPushPullSchedules(), 'Schedule', config) ?? []);
82
81
  }
83
82
  getActiveIPushPullSchedules() {
84
83
  return this.getIPushPullSchedules().filter((schedule) => !schedule.IsSuspended);
@@ -107,8 +106,7 @@ export class ScheduleApiImpl extends ApiBase {
107
106
  }
108
107
  getOpenFinSchedules(config) {
109
108
  const openFinApi = this.getAdaptableApi().pluginsApi.getOpenFinPluginApi();
110
- return (this.handleLayoutAssociatedObjects(openFinApi?.getOpenFinSchedules(), 'Schedule', config) ??
111
- []);
109
+ return (this.handleLayoutExtensionObjects(openFinApi?.getOpenFinSchedules(), 'Schedule', config) ?? []);
112
110
  }
113
111
  getActiveOpenFinSchedules() {
114
112
  return this.getOpenFinSchedules().filter((schedule) => !schedule.IsSuspended);
@@ -1,14 +1,13 @@
1
1
  import { ApiBase } from './ApiBase';
2
2
  import { ShortcutApi } from '../ShortcutApi';
3
3
  import { Shortcut, ShortcutState } from '../../AdaptableState/ShortcutState';
4
+ import { LayoutExtendedConfig } from '../../types';
4
5
  export declare class ShortcutApiImpl extends ApiBase implements ShortcutApi {
5
6
  getShortcutState(): ShortcutState;
6
- getShortcuts(config?: {
7
- includeLayoutNotAssociatedObjects?: boolean;
8
- }): Shortcut[];
9
- getShortcutById(id: Shortcut['Uuid']): Shortcut;
10
- getActiveShortcuts(): Shortcut[];
11
- getSuspendedShortcuts(): Shortcut[];
7
+ getShortcuts(config?: LayoutExtendedConfig): Shortcut[];
8
+ getShortcutById(id: Shortcut['Uuid'], config?: LayoutExtendedConfig): Shortcut;
9
+ getActiveShortcuts(config?: LayoutExtendedConfig): Shortcut[];
10
+ getSuspendedShortcuts(config?: LayoutExtendedConfig): Shortcut[];
12
11
  addShortcut(shortcut: Shortcut): Shortcut;
13
12
  deleteShortcut(shortcut: Shortcut): void;
14
13
  deleteAllShortcuts(): void;
@@ -6,17 +6,16 @@ export class ShortcutApiImpl extends ApiBase {
6
6
  return this.getAdaptableState().Shortcut;
7
7
  }
8
8
  getShortcuts(config) {
9
- return (this.handleLayoutAssociatedObjects(this.getShortcutState().Shortcuts, 'Shortcut', config) ??
10
- []);
9
+ return (this.handleLayoutExtensionObjects(this.getShortcutState().Shortcuts, 'Shortcut', config) ?? []);
11
10
  }
12
- getShortcutById(id) {
13
- return this.getShortcuts().find((shortcut) => shortcut?.Uuid === id);
11
+ getShortcutById(id, config) {
12
+ return this.getShortcuts(config).find((shortcut) => shortcut?.Uuid === id);
14
13
  }
15
- getActiveShortcuts() {
16
- return this.getShortcuts().filter((shortcut) => !shortcut.IsSuspended);
14
+ getActiveShortcuts(config) {
15
+ return this.getShortcuts(config).filter((shortcut) => !shortcut.IsSuspended);
17
16
  }
18
- getSuspendedShortcuts() {
19
- return this.getShortcuts().filter((shortcut) => shortcut.IsSuspended);
17
+ getSuspendedShortcuts(config) {
18
+ return this.getShortcuts(config).filter((shortcut) => shortcut.IsSuspended);
20
19
  }
21
20
  addShortcut(shortcut) {
22
21
  this.addUidToAdaptableObject(shortcut);
@@ -1,21 +1,20 @@
1
1
  import { ApiBase } from './ApiBase';
2
2
  import { StyledColumnApi } from '../StyledColumnApi';
3
3
  import { StyledColumn, StyledColumnState } from '../../AdaptableState/StyledColumnState';
4
- import { AdaptableColumn } from '../../types';
4
+ import { AdaptableColumn, LayoutExtendedConfig } from '../../types';
5
5
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
6
6
  import { StyledColumnInternalApi } from '../Internal/StyledColumnInternalApi';
7
7
  export declare class StyledColumnApiImpl extends ApiBase implements StyledColumnApi {
8
8
  internalApi: StyledColumnInternalApi;
9
9
  constructor(_adaptable: IAdaptable);
10
10
  getStyledColumnState(): StyledColumnState;
11
- getStyledColumns(config?: {
12
- includeLayoutNotAssociatedObjects?: boolean;
13
- }): StyledColumn[];
14
- getStyledColumnById(id: StyledColumn['Uuid']): StyledColumn;
15
- getStyledColumnForColumnId(columnId: StyledColumn['ColumnId']): StyledColumn;
16
- getActiveStyledColumns(): StyledColumn[];
17
- getSuspendedStyledColumns(): StyledColumn[];
11
+ getStyledColumns(config?: LayoutExtendedConfig): StyledColumn[];
12
+ getStyledColumnById(id: StyledColumn['Uuid'], config?: LayoutExtendedConfig): StyledColumn;
13
+ getStyledColumnForColumnId(columnId: StyledColumn['ColumnId'], config?: LayoutExtendedConfig): StyledColumn;
14
+ getActiveStyledColumns(config?: LayoutExtendedConfig): StyledColumn[];
15
+ getSuspendedStyledColumns(config?: LayoutExtendedConfig): StyledColumn[];
18
16
  deleteStyledColumn(styledColumn: StyledColumn): void;
17
+ deleteAllStyledColumns(): void;
19
18
  addStyledColumn(styledColumn: StyledColumn): void;
20
19
  isSparklineStyleStyledColumn(column: AdaptableColumn): boolean;
21
20
  getActiveStyledColumnForColumn(column: AdaptableColumn): StyledColumn | undefined;