@adaptabletools/adaptable-cjs 18.0.0-canary.2 → 18.0.0-canary.20

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 (367) hide show
  1. package/agGrid.d.ts +4 -21
  2. package/agGrid.js +5 -21
  3. package/base.css +22 -8
  4. package/base.css.map +1 -1
  5. package/index.css +101 -75
  6. package/index.css.map +1 -1
  7. package/package.json +4 -5
  8. package/src/AdaptableInterfaces/IAdaptable.d.ts +58 -108
  9. package/src/AdaptableOptions/AdaptableOptions.d.ts +13 -7
  10. package/src/AdaptableOptions/ColumnFilterOptions.d.ts +11 -4
  11. package/src/AdaptableOptions/ColumnOptions.d.ts +9 -4
  12. package/src/AdaptableOptions/CommentOptions.d.ts +33 -0
  13. package/src/AdaptableOptions/GroupingOptions.d.ts +0 -7
  14. package/src/AdaptableOptions/MenuOptions.d.ts +6 -54
  15. package/src/AdaptableOptions/MenuOptions.js +72 -75
  16. package/src/AdaptableOptions/{NotesOptions.d.ts → NoteOptions.d.ts} +7 -4
  17. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +17 -0
  18. package/src/Api/AdaptableApi.d.ts +9 -4
  19. package/src/Api/BulkUpdateApi.d.ts +0 -5
  20. package/src/Api/ColumnApi.d.ts +4 -0
  21. package/src/Api/CommentApi.d.ts +11 -12
  22. package/src/Api/ConfigApi.d.ts +4 -5
  23. package/src/Api/EventApi.d.ts +7 -9
  24. package/src/Api/Events/AdaptableReady.d.ts +3 -3
  25. package/src/Api/Events/CommentChanged.d.ts +11 -0
  26. package/src/Api/Events/GridDataChanged.d.ts +4 -4
  27. package/src/Api/GridApi.d.ts +23 -13
  28. package/src/Api/Implementation/ActionColumnApiImpl.d.ts +2 -0
  29. package/src/Api/Implementation/ActionColumnApiImpl.js +30 -0
  30. package/src/Api/Implementation/AdaptableApiImpl.d.ts +3 -2
  31. package/src/Api/Implementation/AdaptableApiImpl.js +5 -2
  32. package/src/Api/Implementation/ApiBase.d.ts +5 -3
  33. package/src/Api/Implementation/ApiBase.js +8 -2
  34. package/src/Api/Implementation/BulkUpdateApiImpl.d.ts +0 -1
  35. package/src/Api/Implementation/BulkUpdateApiImpl.js +0 -4
  36. package/src/Api/Implementation/CellSummaryApiImpl.d.ts +0 -5
  37. package/src/Api/Implementation/CellSummaryApiImpl.js +2 -23
  38. package/src/Api/Implementation/ColumnApiImpl.d.ts +1 -0
  39. package/src/Api/Implementation/ColumnApiImpl.js +10 -0
  40. package/src/Api/Implementation/CommentsApiImpl.d.ts +5 -2
  41. package/src/Api/Implementation/CommentsApiImpl.js +7 -1
  42. package/src/Api/Implementation/ConfigApiImpl.d.ts +2 -2
  43. package/src/Api/Implementation/ConfigApiImpl.js +21 -13
  44. package/src/Api/Implementation/GridApiImpl.d.ts +6 -3
  45. package/src/Api/Implementation/GridApiImpl.js +49 -14
  46. package/src/Api/Implementation/LayoutApiImpl.d.ts +3 -0
  47. package/src/Api/Implementation/LayoutApiImpl.js +18 -0
  48. package/src/Api/Implementation/NoteApiImpl.d.ts +18 -0
  49. package/src/Api/Implementation/NoteApiImpl.js +45 -0
  50. package/src/Api/Implementation/OptionsApiImpl.d.ts +4 -4
  51. package/src/Api/Implementation/OptionsApiImpl.js +4 -4
  52. package/src/Api/Implementation/ScopeApiImpl.d.ts +2 -0
  53. package/src/Api/Implementation/ScopeApiImpl.js +20 -7
  54. package/src/Api/Implementation/StatusBarApiImpl.d.ts +0 -1
  55. package/src/Api/Implementation/StatusBarApiImpl.js +0 -3
  56. package/src/Api/Implementation/ToolPanelApiImpl.js +6 -6
  57. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +0 -3
  58. package/src/Api/Implementation/UserInterfaceApiImpl.js +0 -8
  59. package/src/Api/Internal/ActionRowInternalApi.d.ts +5 -1
  60. package/src/Api/Internal/ActionRowInternalApi.js +107 -0
  61. package/src/Api/Internal/AdaptableInternalApi.d.ts +6 -7
  62. package/src/Api/Internal/AdaptableInternalApi.js +21 -19
  63. package/src/Api/Internal/CalculatedColumnInternalApi.d.ts +2 -0
  64. package/src/Api/Internal/CalculatedColumnInternalApi.js +72 -0
  65. package/src/Api/Internal/ColumnFilterInternalApi.d.ts +2 -0
  66. package/src/Api/Internal/ColumnFilterInternalApi.js +23 -1
  67. package/src/Api/Internal/ColumnInternalApi.d.ts +4 -1
  68. package/src/Api/Internal/ColumnInternalApi.js +12 -0
  69. package/src/Api/Internal/CommentsInternalApi.d.ts +4 -0
  70. package/src/Api/Internal/CommentsInternalApi.js +18 -0
  71. package/src/Api/Internal/CustomSortInternalApi.d.ts +3 -2
  72. package/src/Api/Internal/CustomSortInternalApi.js +32 -1
  73. package/src/Api/Internal/DataSetInternalApi.js +1 -1
  74. package/src/Api/Internal/ExportInternalApi.d.ts +2 -1
  75. package/src/Api/Internal/ExportInternalApi.js +4 -1
  76. package/src/Api/Internal/Fdc3InternalApi.js +2 -2
  77. package/src/Api/Internal/FormatColumnInternalApi.js +3 -2
  78. package/src/Api/Internal/FreeTextColumnInternalApi.d.ts +2 -0
  79. package/src/Api/Internal/FreeTextColumnInternalApi.js +61 -0
  80. package/src/Api/Internal/GridFilterInternalApi.d.ts +5 -0
  81. package/src/Api/Internal/GridFilterInternalApi.js +7 -1
  82. package/src/Api/Internal/GridInternalApi.d.ts +23 -3
  83. package/src/Api/Internal/GridInternalApi.js +141 -7
  84. package/src/Api/Internal/LayoutInternalApi.d.ts +1 -0
  85. package/src/Api/Internal/LayoutInternalApi.js +16 -0
  86. package/src/Api/Internal/NoteInternalApi.d.ts +4 -0
  87. package/src/Api/Internal/NoteInternalApi.js +18 -0
  88. package/src/Api/Internal/TeamSharingInternalApi.js +1 -1
  89. package/src/Api/InteropioPluginApi.d.ts +2 -2
  90. package/src/Api/LayoutApi.d.ts +15 -0
  91. package/src/Api/NoteApi.d.ts +48 -0
  92. package/src/Api/OptionsApi.d.ts +8 -8
  93. package/src/Api/ScopeApi.d.ts +10 -0
  94. package/src/Api/UserInterfaceApi.d.ts +0 -11
  95. package/src/EnvVars.d.ts +3 -0
  96. package/src/EnvVars.js +8 -0
  97. package/src/PredefinedConfig/AdaptableState.d.ts +2 -2
  98. package/src/PredefinedConfig/CommentState.d.ts +27 -23
  99. package/src/PredefinedConfig/Common/AdaptableColumn.d.ts +4 -0
  100. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
  101. package/src/PredefinedConfig/Common/AdaptableScope.d.ts +4 -1
  102. package/src/PredefinedConfig/Common/AggregationColumns.d.ts +1 -0
  103. package/src/PredefinedConfig/Common/AggregationColumns.js +5 -1
  104. package/src/PredefinedConfig/Common/DataUpdateConfig.d.ts +4 -0
  105. package/src/PredefinedConfig/Common/Enums.d.ts +2 -1
  106. package/src/PredefinedConfig/Common/Enums.js +1 -0
  107. package/src/PredefinedConfig/Common/Menu.d.ts +15 -1
  108. package/src/PredefinedConfig/Common/Menu.js +98 -0
  109. package/src/PredefinedConfig/Common/RowSummary.d.ts +21 -0
  110. package/src/PredefinedConfig/Common/RowSummary.js +20 -0
  111. package/src/PredefinedConfig/Common/TransposeConfig.d.ts +25 -0
  112. package/src/PredefinedConfig/Common/Types.d.ts +4 -4
  113. package/src/PredefinedConfig/Common/Types.js +4 -1
  114. package/src/PredefinedConfig/LayoutState.d.ts +5 -0
  115. package/src/PredefinedConfig/{NotesState.d.ts → NoteState.d.ts} +12 -22
  116. package/src/PredefinedConfig/PredefinedConfig.d.ts +3 -3
  117. package/src/PredefinedConfig/Selection/GridCell.d.ts +13 -0
  118. package/src/PredefinedConfig/SystemState.d.ts +9 -3
  119. package/src/Redux/ActionsReducers/LayoutRedux.d.ts +9 -0
  120. package/src/Redux/ActionsReducers/LayoutRedux.js +34 -11
  121. package/src/Redux/ActionsReducers/NoteRedux.d.ts +38 -0
  122. package/src/Redux/ActionsReducers/NoteRedux.js +89 -0
  123. package/src/Redux/ActionsReducers/SystemRedux.d.ts +6 -1
  124. package/src/Redux/ActionsReducers/SystemRedux.js +19 -6
  125. package/src/Redux/Store/AdaptableStore.d.ts +4 -6
  126. package/src/Redux/Store/AdaptableStore.js +66 -76
  127. package/src/Redux/Store/Interface/IAdaptableStore.d.ts +8 -2
  128. package/src/Strategy/AdaptableModuleBase.d.ts +8 -8
  129. package/src/Strategy/AdaptableModuleBase.js +13 -15
  130. package/src/Strategy/AlertModule.d.ts +1 -2
  131. package/src/Strategy/AlertModule.js +3 -56
  132. package/src/Strategy/BulkUpdateModule.js +1 -1
  133. package/src/Strategy/CalculatedColumnModule.d.ts +2 -3
  134. package/src/Strategy/CalculatedColumnModule.js +6 -26
  135. package/src/Strategy/CellSummaryModule.d.ts +8 -6
  136. package/src/Strategy/CellSummaryModule.js +78 -23
  137. package/src/Strategy/ChartingModule.d.ts +0 -1
  138. package/src/Strategy/ChartingModule.js +2 -22
  139. package/src/Strategy/ColumnFilterModule.d.ts +2 -3
  140. package/src/Strategy/ColumnFilterModule.js +44 -103
  141. package/src/Strategy/ColumnInfoModule.js +2 -0
  142. package/src/Strategy/{CommentsModule.d.ts → CommentModule.d.ts} +2 -5
  143. package/src/Strategy/{CommentsModule.js → CommentModule.js} +19 -25
  144. package/src/Strategy/CustomSortModule.js +3 -2
  145. package/src/Strategy/DashboardModule.d.ts +1 -2
  146. package/src/Strategy/DashboardModule.js +9 -15
  147. package/src/Strategy/DataChangeHistoryModule.d.ts +1 -0
  148. package/src/Strategy/DataChangeHistoryModule.js +3 -1
  149. package/src/Strategy/DataImportModule.d.ts +1 -1
  150. package/src/Strategy/DataImportModule.js +5 -5
  151. package/src/Strategy/DataSetModule.d.ts +1 -1
  152. package/src/Strategy/DataSetModule.js +1 -1
  153. package/src/Strategy/ExportModule.d.ts +1 -0
  154. package/src/Strategy/ExportModule.js +17 -2
  155. package/src/Strategy/Fdc3Module.js +3 -0
  156. package/src/Strategy/FlashingCellModule.d.ts +1 -2
  157. package/src/Strategy/FlashingCellModule.js +6 -19
  158. package/src/Strategy/FormatColumnModule.d.ts +0 -2
  159. package/src/Strategy/FormatColumnModule.js +6 -51
  160. package/src/Strategy/FreeTextColumnModule.d.ts +0 -1
  161. package/src/Strategy/FreeTextColumnModule.js +1 -31
  162. package/src/Strategy/GridFilterModule.d.ts +0 -1
  163. package/src/Strategy/GridFilterModule.js +0 -37
  164. package/src/Strategy/GridInfoModule.js +2 -0
  165. package/src/Strategy/Interface/IModule.d.ts +0 -1
  166. package/src/Strategy/LayoutModule.d.ts +9 -3
  167. package/src/Strategy/LayoutModule.js +143 -63
  168. package/src/Strategy/NamedQueryModule.d.ts +0 -1
  169. package/src/Strategy/NamedQueryModule.js +0 -19
  170. package/src/Strategy/{NotesModule.d.ts → NoteModule.d.ts} +2 -1
  171. package/src/Strategy/NoteModule.js +62 -0
  172. package/src/Strategy/PlusMinusModule.d.ts +1 -1
  173. package/src/Strategy/PlusMinusModule.js +2 -2
  174. package/src/Strategy/ScheduleModule.d.ts +1 -1
  175. package/src/Strategy/ScheduleModule.js +1 -1
  176. package/src/Strategy/SettingsPanelModule.js +3 -3
  177. package/src/Strategy/ShortcutModule.d.ts +1 -1
  178. package/src/Strategy/ShortcutModule.js +1 -1
  179. package/src/Strategy/SmartEditModule.js +1 -1
  180. package/src/Strategy/StyledColumnModule.d.ts +1 -1
  181. package/src/Strategy/StyledColumnModule.js +26 -26
  182. package/src/Strategy/SystemStatusModule.js +2 -2
  183. package/src/Strategy/TeamSharingModule.d.ts +1 -0
  184. package/src/Strategy/TeamSharingModule.js +5 -5
  185. package/src/Strategy/ToolPanelModule.d.ts +0 -1
  186. package/src/Strategy/ToolPanelModule.js +0 -23
  187. package/src/Strategy/Utilities/getScopeViewItems.js +3 -0
  188. package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
  189. package/src/Utilities/Constants/GeneralConstants.d.ts +1 -0
  190. package/src/Utilities/Constants/GeneralConstants.js +3 -2
  191. package/src/Utilities/Constants/ModuleConstants.d.ts +6 -6
  192. package/src/Utilities/Constants/ModuleConstants.js +7 -7
  193. package/src/Utilities/Defaults/DefaultSettingsPanel.js +7 -6
  194. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +3 -2
  195. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +430 -1
  196. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +3 -3
  197. package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +1 -1
  198. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +1 -1
  199. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +15 -0
  200. package/src/Utilities/Extensions/ArrayExtensions.d.ts +2 -0
  201. package/src/Utilities/Extensions/ArrayExtensions.js +6 -1
  202. package/src/Utilities/Helpers/AdaptableHelper.d.ts +3 -4
  203. package/src/Utilities/Helpers/AdaptableHelper.js +20 -60
  204. package/src/Utilities/Helpers/Helper.d.ts +2 -0
  205. package/src/Utilities/Helpers/Helper.js +6 -1
  206. package/src/Utilities/MenuItem.d.ts +7 -4
  207. package/src/Utilities/MenuItem.js +6 -3
  208. package/src/Utilities/ObjectFactory.d.ts +3 -3
  209. package/src/Utilities/ObjectFactory.js +4 -24
  210. package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +4 -2
  211. package/src/Utilities/Services/AggregatedScalarLiveValue.js +26 -19
  212. package/src/Utilities/Services/CellPopupService.js +2 -3
  213. package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +1 -1
  214. package/src/Utilities/Services/Interface/IReportService.d.ts +1 -4
  215. package/src/Utilities/Services/LicenseService/index.d.ts +3 -0
  216. package/src/Utilities/Services/LicenseService/index.js +1 -186
  217. package/src/Utilities/Services/MetamodelService.d.ts +1 -1
  218. package/src/Utilities/Services/MetamodelService.js +6 -3
  219. package/src/Utilities/Services/ModuleService.js +4 -0
  220. package/src/Utilities/Services/QueryLanguageService.d.ts +1 -1
  221. package/src/Utilities/Services/QueryLanguageService.js +4 -3
  222. package/src/Utilities/Services/ReportService.d.ts +7 -5
  223. package/src/Utilities/Services/ReportService.js +238 -22
  224. package/src/Utilities/Services/RowEditService.d.ts +3 -2
  225. package/src/Utilities/Services/RowEditService.js +3 -1
  226. package/src/Utilities/adaptableQlUtils.d.ts +2 -0
  227. package/src/Utilities/adaptableQlUtils.js +18 -0
  228. package/src/Utilities/license/decode.js +1 -70
  229. package/src/Utilities/license/hashing.js +1 -47
  230. package/src/View/AdaptableView.js +1 -3
  231. package/src/View/AdaptableViewFactory.js +2 -2
  232. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +2 -2
  233. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +1 -1
  234. package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
  235. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +3 -3
  236. package/src/View/CalculatedColumn/utils.d.ts +1 -1
  237. package/src/View/CellSummary/CellSummaryPopup.js +1 -1
  238. package/src/View/Comments/CommentsEditor.js +24 -11
  239. package/src/View/Comments/CommentsPopup.js +20 -11
  240. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  241. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.d.ts +5 -0
  242. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.js +46 -0
  243. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +5 -2
  244. package/src/View/Components/CellPopup/index.d.ts +1 -0
  245. package/src/View/Components/CellPopup/index.js +5 -2
  246. package/src/View/Components/FilterForm/FilterForm.js +20 -12
  247. package/src/View/Components/FilterForm/QuickFilterForm.js +15 -8
  248. package/src/View/Components/NewScopeComponent.js +34 -1
  249. package/src/View/Components/Popups/AdaptableLoadingScreen.d.ts +6 -5
  250. package/src/View/Components/Popups/AdaptableLoadingScreen.js +19 -9
  251. package/src/View/Components/Popups/AdaptableToaster.js +1 -1
  252. package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +7 -7
  253. package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +1 -0
  254. package/src/View/Components/Popups/WindowPopups/windowFactory.js +4 -1
  255. package/src/View/Components/Selectors/PermittedValuesSelector.js +2 -2
  256. package/src/View/Components/ValueSelector/index.d.ts +1 -0
  257. package/src/View/Components/ValueSelector/index.js +2 -2
  258. package/src/View/CustomSort/CustomSortSummary.js +1 -1
  259. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +8 -9
  260. package/src/View/FreeTextColumn/FreeTextColumnSummary.js +1 -1
  261. package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +3 -1
  262. package/src/View/GridFilter/GridFilterViewPanel.js +9 -5
  263. package/src/View/GridFilter/useGridFilterExpressionEditor.js +1 -1
  264. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -3
  265. package/src/View/Layout/LayoutViewPanel.js +2 -1
  266. package/src/View/Layout/TransposedPopup.d.ts +3 -0
  267. package/src/View/Layout/TransposedPopup.js +200 -0
  268. package/src/View/Layout/Wizard/LayoutWizard.js +36 -3
  269. package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -1
  270. package/src/View/Layout/Wizard/sections/RowSummarySection.d.ts +9 -0
  271. package/src/View/Layout/Wizard/sections/RowSummarySection.js +181 -0
  272. package/src/View/License/LicenseWatermark.js +1 -66
  273. package/src/View/Note/NotePopup.d.ts +2 -0
  274. package/src/View/{Notes/NotesPopup.js → Note/NotePopup.js} +19 -19
  275. package/src/View/SpecialColumnSettingsWizardStep.js +4 -4
  276. package/src/View/Theme/ThemeSelector.js +2 -2
  277. package/src/agGrid/ActionColumnRenderer.js +7 -6
  278. package/src/agGrid/Adaptable.d.ts +3 -455
  279. package/src/agGrid/Adaptable.js +7 -5291
  280. package/src/agGrid/AdaptableAgGrid.d.ts +352 -0
  281. package/src/agGrid/AdaptableAgGrid.js +3968 -0
  282. package/src/agGrid/AdaptableLogger.js +78 -13
  283. package/src/agGrid/AgGridAdapter.d.ts +64 -0
  284. package/src/agGrid/AgGridAdapter.js +590 -0
  285. package/src/agGrid/AgGridColumnAdapter.d.ts +56 -0
  286. package/src/agGrid/AgGridColumnAdapter.js +836 -0
  287. package/src/agGrid/AgGridMenuAdapter.d.ts +28 -0
  288. package/src/agGrid/AgGridMenuAdapter.js +282 -0
  289. package/src/agGrid/AgGridOptionsService.d.ts +15 -0
  290. package/src/agGrid/AgGridOptionsService.js +80 -0
  291. package/src/agGrid/BadgeRenderer.js +1 -1
  292. package/src/agGrid/CheckboxRenderer.js +1 -1
  293. package/src/agGrid/FilterWrapper.d.ts +2 -2
  294. package/src/agGrid/FilterWrapper.js +1 -1
  295. package/src/agGrid/attachAddaptableColumnTypes.d.ts +12 -12
  296. package/src/agGrid/defaultAdaptableOptions.d.ts +3 -0
  297. package/src/{Utilities/Defaults/DefaultAdaptableOptions.js → agGrid/defaultAdaptableOptions.js} +74 -18
  298. package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +1 -1
  299. package/src/agGrid/editors/AdaptableDateEditor/index.js +3 -3
  300. package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +2 -2
  301. package/src/agGrid/editors/AdaptableNumberEditor/index.js +2 -2
  302. package/src/agGrid/weightedAverage.d.ts +0 -2
  303. package/src/agGrid/weightedAverage.js +1 -56
  304. package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
  305. package/src/components/Datepicker/index.d.ts +1 -1
  306. package/src/components/Datepicker/index.js +10 -2
  307. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -1
  308. package/src/components/ExpressionEditor/QueryBuilder/utils.d.ts +0 -1
  309. package/src/components/ExpressionEditor/QueryBuilder/utils.js +3 -17
  310. package/src/components/InfiniteTable/index.js +2 -2
  311. package/src/components/Input/index.d.ts +1 -2
  312. package/src/components/List/ListGroupItem/index.d.ts +1 -1
  313. package/src/components/Modal/index.d.ts +1 -0
  314. package/src/components/Modal/index.js +6 -4
  315. package/src/components/Select/Select.d.ts +3 -1
  316. package/src/components/Select/Select.js +4 -2
  317. package/src/components/Textarea/index.d.ts +2 -2
  318. package/src/components/icons/index.js +2 -0
  319. package/src/components/icons/note.js +2 -2
  320. package/src/components/icons/rows.d.ts +3 -0
  321. package/src/components/icons/rows.js +7 -0
  322. package/src/env.js +2 -2
  323. package/src/metamodel/adaptable.metamodel.d.ts +186 -32
  324. package/src/metamodel/adaptable.metamodel.js +1 -9316
  325. package/src/migration/AdaptableUpgradeHelper.d.ts +38 -0
  326. package/src/migration/AdaptableUpgradeHelper.js +52 -0
  327. package/src/migration/VersionUpgrade.d.ts +8 -0
  328. package/src/migration/VersionUpgrade.js +15 -0
  329. package/src/migration/VersionUpgrade17.d.ts +18 -0
  330. package/src/migration/VersionUpgrade17.js +347 -0
  331. package/src/migration/VersionUpgrade18.d.ts +5 -0
  332. package/src/migration/VersionUpgrade18.js +10 -0
  333. package/src/parser/src/parser.js +117 -1257
  334. package/src/parser/src/predicate/mapExpressionToQlPredicate.js +1 -1
  335. package/src/parser/src/predicate/mapQlPredicateToExpression.js +2 -1
  336. package/src/parser/src/types.d.ts +7 -2
  337. package/src/types.d.ts +26 -19
  338. package/tsconfig.cjs.tsbuildinfo +1 -1
  339. package/src/AdaptableOptions/CommentsOptions.d.ts +0 -28
  340. package/src/Api/Events/CommentsChangedInfo.d.ts +0 -5
  341. package/src/Api/Implementation/NotesApiImpl.d.ts +0 -16
  342. package/src/Api/Implementation/NotesApiImpl.js +0 -44
  343. package/src/Api/NotesApi.d.ts +0 -48
  344. package/src/PredefinedConfig/CellAddress.d.ts +0 -13
  345. package/src/PredefinedConfig/CellAddress.js +0 -5
  346. package/src/Redux/ActionsReducers/NotesRedux.d.ts +0 -39
  347. package/src/Redux/ActionsReducers/NotesRedux.js +0 -87
  348. package/src/Strategy/NotesModule.js +0 -62
  349. package/src/Utilities/Defaults/DefaultAdaptableOptions.d.ts +0 -2
  350. package/src/Utilities/Services/Interface/IRowEditService.d.ts +0 -3
  351. package/src/View/Components/ScopeComponent.d.ts +0 -24
  352. package/src/View/Components/ScopeComponent.js +0 -138
  353. package/src/View/Export/Wizard/ReportScopeWizard.d.ts +0 -17
  354. package/src/View/Export/Wizard/ReportScopeWizard.js +0 -52
  355. package/src/View/Notes/NotesPopup.d.ts +0 -2
  356. package/src/agGrid/agGridHelper.d.ts +0 -57
  357. package/src/agGrid/agGridHelper.js +0 -691
  358. package/src/agGrid/agGridMenuHelper.d.ts +0 -46
  359. package/src/agGrid/agGridMenuHelper.js +0 -673
  360. /package/src/AdaptableOptions/{CommentsOptions.js → CommentOptions.js} +0 -0
  361. /package/src/AdaptableOptions/{NotesOptions.js → NoteOptions.js} +0 -0
  362. /package/src/Api/Events/{CommentsChangedInfo.js → CommentChanged.js} +0 -0
  363. /package/src/Api/{NotesApi.js → NoteApi.js} +0 -0
  364. /package/src/PredefinedConfig/{NotesState.js → Common/TransposeConfig.js} +0 -0
  365. /package/src/{Utilities/Services/Interface/IRowEditService.js → PredefinedConfig/NoteState.js} +0 -0
  366. /package/src/View/{Notes → Note}/NoteEditor.d.ts +0 -0
  367. /package/src/View/{Notes → Note}/NoteEditor.js +0 -0
@@ -54,4 +54,4 @@ export interface AdaptableBaseIcon {
54
54
  /**
55
55
  * All AdapTable System Icon names
56
56
  */
57
- export type AdaptableSystemIconName = 'add' | 'alert' | 'building' | 'laptop' | 'arrow-down' | 'arrow-left' | 'arrow-right' | 'arrow-up' | 'arrow-up-long' | 'arrow-down-long' | 'arrow-expand' | 'paperclip' | 'unfilled-circle' | 'boolean-list' | 'broadcast' | 'brush' | 'spanner' | 'edit-table' | 'chart-and-grid' | 'calendar' | 'call' | 'cells' | 'fdc3' | 'flag' | 'chart' | 'chat' | 'check' | 'check-circle' | 'checked' | 'clone' | 'close' | 'cloud-upload' | 'collapse' | 'column-add' | 'columns' | 'filter-list' | 'comment' | 'comments' | 'contains' | 'dashboard' | 'data-set' | 'date-range' | 'delete' | 'division' | 'dock' | 'dollar' | 'drag' | 'edit' | 'ends-with' | 'equals' | 'equation' | 'error' | 'expand' | 'exponent' | 'export' | 'export-data' | 'fast-backward' | 'fast-forward' | 'filter' | 'lightning' | 'folder' | 'folder-open' | 'folder-shared' | 'color-palette' | 'horizontal-lines' | 'function' | 'greater-than' | 'greater-than-or-equal' | 'history' | 'home' | 'import-export' | 'info' | 'brain' | 'download' | 'grid' | 'interactions' | 'less-than' | 'less-than-or-equal' | 'list' | 'logout' | 'mail' | 'menu' | 'minus' | 'multiplication' | 'money' | 'newpage' | 'news' | 'filled-circle' | 'not-contains' | 'not-equal' | 'open-in-new' | 'order' | 'organisation' | 'pause' | 'percent' | 'percent-tag' | 'person' | 'contact' | 'pie-chart' | 'play' | 'plus' | 'add-circle' | 'search' | 'search-table' | 'quote' | 'refresh' | 'regex' | 'reminder' | 'save' | 'schedule' | 'science' | 'settings' | 'link' | 'sort-asc' | 'sort-desc' | 'spark-line' | 'resume' | 'starts-with' | 'assignment' | 'statusbar' | 'stop' | 'traffic-lights' | 'tab-unselected' | 'theme' | 'clipboard' | 'target' | 'triangle-down' | 'triangle-up' | 'unchecked' | 'undo' | 'downloaded' | 'upload' | 'warning' | 'gradient' | 'badge' | 'italic' | 'bold' | 'align-left' | 'align-right' | 'align-center' | 'align-justify' | 'underline' | 'strikethrough' | 'overline' | 'case-upper' | 'case-lower' | 'case-sentence' | 'visibility-on' | 'visibility-off' | 'visibility-off-bold' | 'visibility-on-bold' | 'note' | 'import' | 'grid-filter';
57
+ export type AdaptableSystemIconName = 'add' | 'alert' | 'building' | 'laptop' | 'arrow-down' | 'arrow-left' | 'arrow-right' | 'arrow-up' | 'arrow-up-long' | 'arrow-down-long' | 'arrow-expand' | 'paperclip' | 'unfilled-circle' | 'boolean-list' | 'broadcast' | 'brush' | 'spanner' | 'edit-table' | 'chart-and-grid' | 'calendar' | 'call' | 'cells' | 'fdc3' | 'flag' | 'chart' | 'chat' | 'check' | 'check-circle' | 'checked' | 'clone' | 'close' | 'cloud-upload' | 'collapse' | 'column-add' | 'columns' | 'filter-list' | 'comment' | 'comments' | 'contains' | 'dashboard' | 'data-set' | 'date-range' | 'delete' | 'division' | 'dock' | 'dollar' | 'drag' | 'edit' | 'ends-with' | 'equals' | 'equation' | 'error' | 'expand' | 'exponent' | 'export' | 'export-data' | 'fast-backward' | 'fast-forward' | 'filter' | 'lightning' | 'folder' | 'folder-open' | 'folder-shared' | 'color-palette' | 'horizontal-lines' | 'function' | 'greater-than' | 'greater-than-or-equal' | 'history' | 'home' | 'import-export' | 'info' | 'brain' | 'download' | 'grid' | 'interactions' | 'less-than' | 'less-than-or-equal' | 'list' | 'logout' | 'mail' | 'menu' | 'minus' | 'multiplication' | 'money' | 'newpage' | 'news' | 'filled-circle' | 'not-contains' | 'not-equal' | 'open-in-new' | 'order' | 'organisation' | 'pause' | 'percent' | 'percent-tag' | 'person' | 'contact' | 'pie-chart' | 'play' | 'plus' | 'add-circle' | 'search' | 'search-table' | 'quote' | 'refresh' | 'regex' | 'reminder' | 'save' | 'schedule' | 'science' | 'settings' | 'link' | 'sort-asc' | 'sort-desc' | 'spark-line' | 'resume' | 'starts-with' | 'assignment' | 'statusbar' | 'stop' | 'traffic-lights' | 'tab-unselected' | 'theme' | 'clipboard' | 'target' | 'triangle-down' | 'triangle-up' | 'unchecked' | 'undo' | 'downloaded' | 'upload' | 'warning' | 'gradient' | 'badge' | 'italic' | 'bold' | 'align-left' | 'align-right' | 'align-center' | 'align-justify' | 'underline' | 'strikethrough' | 'overline' | 'case-upper' | 'case-lower' | 'case-sentence' | 'visibility-on' | 'visibility-off' | 'visibility-off-bold' | 'visibility-on-bold' | 'note' | 'import' | 'grid-filter' | 'rows';
@@ -8,7 +8,10 @@ export type ScopeDataTypes<Type = ScopeDataType> = {
8
8
  export type ScopeColumnIds = {
9
9
  ColumnIds: string[];
10
10
  };
11
+ export type ScopeColumnTypes = {
12
+ ColumnTypes: string[];
13
+ };
11
14
  /**
12
15
  * Defines where a given Object / Module is active
13
16
  */
14
- export type AdaptableScope<Type = ScopeDataType> = ScopeAll | ScopeDataTypes<Type> | ScopeColumnIds;
17
+ export type AdaptableScope<Type = ScopeDataType> = ScopeAll | ScopeDataTypes<Type> | ScopeColumnIds | ScopeColumnTypes;
@@ -16,3 +16,4 @@ export interface WeightedAverageAggregation {
16
16
  * Defines which Columns in a Layout display Aggregated values when Row-Grouped
17
17
  */
18
18
  export type AggregationColumns = Record<string, string | true | WeightedAverageAggregation>;
19
+ export declare const isWeightedAverageAggregation: (aggFunc: AggregationColumns[keyof AggregationColumns]) => aggFunc is WeightedAverageAggregation;
@@ -1,4 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WEIGHTED_AVERAGE_AGG_FN_NAME = void 0;
3
+ exports.isWeightedAverageAggregation = exports.WEIGHTED_AVERAGE_AGG_FN_NAME = void 0;
4
4
  exports.WEIGHTED_AVERAGE_AGG_FN_NAME = 'weightedAvg';
5
+ const isWeightedAverageAggregation = (aggFunc) => {
6
+ return (aggFunc === null || aggFunc === void 0 ? void 0 : aggFunc.type) === 'weightedAverage';
7
+ };
8
+ exports.isWeightedAverageAggregation = isWeightedAverageAggregation;
@@ -6,6 +6,10 @@ export interface DataUpdateConfig {
6
6
  * Whether data should be updated asynchronously
7
7
  */
8
8
  runAsync?: boolean;
9
+ /**
10
+ * Whether to flush async updates
11
+ */
12
+ flushAsync?: boolean;
9
13
  /**
10
14
  * Callback function invoked when a batch successfully updates
11
15
  */
@@ -60,7 +60,8 @@ export declare enum SummaryOperation {
60
60
  Min = "Min",
61
61
  Count = "Count",
62
62
  Std_Deviation = "Std Deviation",
63
- Only = "Only"
63
+ Only = "Only",
64
+ Weighted_Average = "Weighted Avg"
64
65
  }
65
66
  export declare enum FilterOnDataChangeOptions {
66
67
  Always = "Always",
@@ -78,6 +78,7 @@ var SummaryOperation;
78
78
  SummaryOperation["Count"] = "Count";
79
79
  SummaryOperation["Std_Deviation"] = "Std Deviation";
80
80
  SummaryOperation["Only"] = "Only";
81
+ SummaryOperation["Weighted_Average"] = "Weighted Avg";
81
82
  })(SummaryOperation = exports.SummaryOperation || (exports.SummaryOperation = {}));
82
83
  var FilterOnDataChangeOptions;
83
84
  (function (FilterOnDataChangeOptions) {
@@ -5,12 +5,26 @@ import { SelectedCellInfo } from '../Selection/SelectedCellInfo';
5
5
  import { SelectedRowInfo } from '../Selection/SelectedRowInfo';
6
6
  import { Column, IRowNode } from '@ag-grid-community/core';
7
7
  import { AdaptableIcon, BaseContext } from '../../types';
8
+ export type AdaptableColumnMenuItemName = (typeof ADAPTABLE_COLUMN_MENU_ITEMS)[number];
9
+ export type AdaptableContextMenuItemName = (typeof ADAPTABLE_CONTEXT_MENU_ITEMS)[number];
10
+ /**
11
+ * List of Shipped Adaptable Column Menu Items
12
+ */
13
+ export declare const ADAPTABLE_COLUMN_MENU_ITEMS: readonly ["calculated-column-edit", "cell-summary-show", "column-filter-bar-hide", "column-filter-bar-show", "column-filter-clear", "column-filter-on-cell-value", "column-filter-suspend", "column-filter-unsuspend", "column-info-show", "custom-sort-add", "custom-sort-edit", "dashboard-collapse", "dashboard-configure", "dashboard-dock", "dashboard-expand", "dashboard-float", "dashboard-hide", "dashboard-show", "data-import", "flashing-cell-add", "flashing-cell-delete", "format-column-add", "format-column-edit", "free-text-column-edit", "grid-info-show", "layout-column-caption-change", "layout-column-hide", "layout-column-select", "layout-column-select-preserve", "layout-column-select-reset", "layout-edit", "layout-grid-parent", "layout-select-parent", "layout-select-all", "plus-minus-add", "settings-panel-open", "styled-column-badge-add", "styled-column-badge-edit", "styled-column-gradient-add", "styled-column-gradient-edit", "styled-column-percent-bar-add", "styled-column-percent-bar-edit", "styled-column-sparkline-add", "styled-column-sparkline-edit", "system-status-show", "internal", "parent"];
14
+ /**
15
+ * List of Shipped Adaptable Context Menu Items
16
+ */
17
+ export declare const ADAPTABLE_CONTEXT_MENU_ITEMS: readonly ["alert-clear", "bulk-update-apply", "calculated-column-edit", "cell-summary-show", "column-filter-on-cell-value", "column-filter-clear", "column-filter-suspend", "column-filter-unsuspend", "column-info-show", "comment-add", "comment-remove", "dashboard-collapse", "dashboard-configure", "dashboard-dock", "dashboard-expand", "dashboard-float", "dashboard-hide", "dashboard-show", "data-import", "export-clipboard", "export-csv", "export-excel", "export-json", "export-table", "export-custom-destination", "fdc3-broadcast", "fdc3-raise-intent", "flashing-cell-clear", "flashing-row-clear", "grid-info-show", "layout-aggregated-view", "layout-auto-size", "layout-clear-selection", "layout-edit", "layout-select-all", "note-add", "note-remove", "settings-panel-open", "smart-edit-apply", "system-status-show"];
8
18
  /**
9
19
  * Menu item used by Adaptable in both Column and Context Menus
10
20
  */
11
21
  export interface AdaptableMenuItem {
12
22
  /**
13
- * Name that appears in the menu
23
+ * Unique name for the Menu Item
24
+ */
25
+ name: AdaptableColumnMenuItemName | AdaptableContextMenuItemName;
26
+ /**
27
+ * Text that appears in the menu
14
28
  */
15
29
  label: string;
16
30
  /**
@@ -1,2 +1,100 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ADAPTABLE_CONTEXT_MENU_ITEMS = exports.ADAPTABLE_COLUMN_MENU_ITEMS = void 0;
4
+ /**
5
+ * List of Shipped Adaptable Column Menu Items
6
+ */
7
+ exports.ADAPTABLE_COLUMN_MENU_ITEMS = [
8
+ 'calculated-column-edit',
9
+ 'cell-summary-show',
10
+ 'column-filter-bar-hide',
11
+ 'column-filter-bar-show',
12
+ 'column-filter-clear',
13
+ 'column-filter-on-cell-value',
14
+ 'column-filter-suspend',
15
+ 'column-filter-unsuspend',
16
+ 'column-info-show',
17
+ 'custom-sort-add',
18
+ 'custom-sort-edit',
19
+ 'dashboard-collapse',
20
+ 'dashboard-configure',
21
+ 'dashboard-dock',
22
+ 'dashboard-expand',
23
+ 'dashboard-float',
24
+ 'dashboard-hide',
25
+ 'dashboard-show',
26
+ 'data-import',
27
+ 'flashing-cell-add',
28
+ 'flashing-cell-delete',
29
+ 'format-column-add',
30
+ 'format-column-edit',
31
+ 'free-text-column-edit',
32
+ 'grid-info-show',
33
+ 'layout-column-caption-change',
34
+ 'layout-column-hide',
35
+ 'layout-column-select',
36
+ 'layout-column-select-preserve',
37
+ 'layout-column-select-reset',
38
+ 'layout-edit',
39
+ 'layout-grid-parent',
40
+ 'layout-select-parent',
41
+ 'layout-select-all',
42
+ 'plus-minus-add',
43
+ 'settings-panel-open',
44
+ 'styled-column-badge-add',
45
+ 'styled-column-badge-edit',
46
+ 'styled-column-gradient-add',
47
+ 'styled-column-gradient-edit',
48
+ 'styled-column-percent-bar-add',
49
+ 'styled-column-percent-bar-edit',
50
+ 'styled-column-sparkline-add',
51
+ 'styled-column-sparkline-edit',
52
+ 'system-status-show',
53
+ 'internal',
54
+ 'parent',
55
+ ];
56
+ /**
57
+ * List of Shipped Adaptable Context Menu Items
58
+ */
59
+ exports.ADAPTABLE_CONTEXT_MENU_ITEMS = [
60
+ 'alert-clear',
61
+ 'bulk-update-apply',
62
+ 'calculated-column-edit',
63
+ 'cell-summary-show',
64
+ 'column-filter-on-cell-value',
65
+ 'column-filter-clear',
66
+ 'column-filter-suspend',
67
+ 'column-filter-unsuspend',
68
+ 'column-info-show',
69
+ 'comment-add',
70
+ 'comment-remove',
71
+ 'dashboard-collapse',
72
+ 'dashboard-configure',
73
+ 'dashboard-dock',
74
+ 'dashboard-expand',
75
+ 'dashboard-float',
76
+ 'dashboard-hide',
77
+ 'dashboard-show',
78
+ 'data-import',
79
+ 'export-clipboard',
80
+ 'export-csv',
81
+ 'export-excel',
82
+ 'export-json',
83
+ 'export-table',
84
+ 'export-custom-destination',
85
+ 'fdc3-broadcast',
86
+ 'fdc3-raise-intent',
87
+ 'flashing-cell-clear',
88
+ 'flashing-row-clear',
89
+ 'grid-info-show',
90
+ 'layout-aggregated-view',
91
+ 'layout-auto-size',
92
+ 'layout-clear-selection',
93
+ 'layout-edit',
94
+ 'layout-select-all',
95
+ 'note-add',
96
+ 'note-remove',
97
+ 'settings-panel-open',
98
+ 'smart-edit-apply',
99
+ 'system-status-show',
100
+ ];
@@ -0,0 +1,21 @@
1
+ export declare const ROW_SUMMARY_ROW_ID = "__ROW_SUMMARY_ROW_ID";
2
+ export declare const WEIGHTED_AVERAGE_AGGREATED_FUNCTION = "WEIGHTED_AVERAGE";
3
+ export declare const summarySupportedExpressions: readonly ["SUM", "AVG", "MIN", "MAX", "COUNT", "MEDIAN", "MODE", "DISTINCT", "ONLY", "STD_DEVIATION", "OLDEST", "YOUNGEST", "WEIGHTED_AVERAGE"];
4
+ export type SummarySupportedExpression = (typeof summarySupportedExpressions)[number];
5
+ /**
6
+ * Position of Row Summary - 'Top' or 'Bottom'
7
+ */
8
+ export type RowSummaryPosition = 'Top' | 'Bottom';
9
+ /**
10
+ * Defines a Row Summary used in a Layout
11
+ */
12
+ export interface RowSummary {
13
+ /**
14
+ * Where Row Summary appears - 'Top' or 'Bottom'
15
+ */
16
+ Position?: RowSummaryPosition;
17
+ /**
18
+ * Map of Columns with Summary Expressions
19
+ */
20
+ ColumnsMap: Record<string, SummarySupportedExpression>;
21
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.summarySupportedExpressions = exports.WEIGHTED_AVERAGE_AGGREATED_FUNCTION = exports.ROW_SUMMARY_ROW_ID = void 0;
4
+ exports.ROW_SUMMARY_ROW_ID = '__ROW_SUMMARY_ROW_ID';
5
+ exports.WEIGHTED_AVERAGE_AGGREATED_FUNCTION = 'WEIGHTED_AVERAGE';
6
+ exports.summarySupportedExpressions = [
7
+ 'SUM',
8
+ 'AVG',
9
+ 'MIN',
10
+ 'MAX',
11
+ 'COUNT',
12
+ 'MEDIAN',
13
+ 'MODE',
14
+ 'DISTINCT',
15
+ 'ONLY',
16
+ 'STD_DEVIATION',
17
+ 'OLDEST',
18
+ 'YOUNGEST',
19
+ exports.WEIGHTED_AVERAGE_AGGREATED_FUNCTION,
20
+ ];
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Config used when transposing a Grid
3
+ */
4
+ export interface TransposeConfig {
5
+ /**
6
+ * Column to use to do transposition
7
+ * @defaultValue Primary Key Column
8
+ */
9
+ transposedColumnId?: string;
10
+ /**
11
+ * Hide the Transposed Column
12
+ * @defaultValue true
13
+ */
14
+ hideTransposedColumn?: boolean;
15
+ /**
16
+ * Only show curerntly visible Columns
17
+ * @defaultValue false
18
+ */
19
+ visibleColumns?: boolean;
20
+ /**
21
+ * Only show curerntly visible Rows
22
+ * @defaultValue false
23
+ */
24
+ visibleRows?: boolean;
25
+ }
@@ -11,7 +11,7 @@ export declare const ALL_TOOLBARS: AdaptableDashboardToolbar[];
11
11
  /**
12
12
  * Modules which can appear in the AdapTable Status Bar
13
13
  */
14
- export type AdaptableStatusBarPanel = 'Alert' | 'CalculatedColumn' | 'BulkUpdate' | 'CellSummary' | 'Charting' | 'CustomSort' | 'Dashboard' | 'DataChangeHistory' | 'DataImport' | 'DataSet' | 'Export' | 'ColumnFilter' | 'GridFilter' | 'FlashingCell' | 'FormatColumn' | 'FreeTextColumn' | 'GridInfo' | 'Layout' | 'PlusMinus' | 'QuickSearch' | 'Schedule' | 'SettingsPanel' | 'SmartEdit' | 'Shortcut' | 'StateManagement' | 'StatusBar' | 'SystemStatus' | 'TeamSharing' | 'Theme' | 'ToolPanel';
14
+ export type AdaptableStatusBarPanel = 'Alert' | 'CalculatedColumn' | 'BulkUpdate' | 'CellSummary' | 'Charting' | 'Comment' | 'CustomSort' | 'Dashboard' | 'DataChangeHistory' | 'DataImport' | 'DataSet' | 'Export' | 'ColumnFilter' | 'GridFilter' | 'FlashingCell' | 'FormatColumn' | 'FreeTextColumn' | 'GridInfo' | 'Layout' | 'Note' | 'PlusMinus' | 'QuickSearch' | 'Schedule' | 'SettingsPanel' | 'SmartEdit' | 'Shortcut' | 'StateManagement' | 'StatusBar' | 'SystemStatus' | 'TeamSharing' | 'Theme' | 'ToolPanel';
15
15
  export declare const ALL_STATUS_SUB_PANELS: AdaptableStatusBarPanel[];
16
16
  export type AdaptableToolPanels = AdaptableToolPanel[];
17
17
  /**
@@ -28,18 +28,18 @@ export type AdaptableModuleButtons = AdaptableModuleButton[];
28
28
  /**
29
29
  * List of all the Module buttons Adaptable provides - each Module has a popup for which this is a shortcut button
30
30
  */
31
- export type AdaptableModuleButton = 'Alert' | 'BulkUpdate' | 'CalculatedColumn' | 'CellSummary' | 'CustomSort' | 'Dashboard' | 'DataChangeHistory' | 'DataImport' | 'DataSet' | 'Export' | 'ColumnFilter' | 'GridFilter' | 'NamedQuery' | 'FlashingCell' | 'FormatColumn' | 'FreeTextColumn' | 'GridInfo' | 'Layout' | 'OpenFin' | 'PlusMinus' | 'QuickSearch' | 'Schedule' | 'SettingsPanel' | 'Shortcut' | 'SmartEdit' | 'StyledColumn' | 'StateManagement' | 'StatusBar' | 'SystemStatus' | 'TeamSharing' | 'Theme';
31
+ export type AdaptableModuleButton = 'Alert' | 'BulkUpdate' | 'CalculatedColumn' | 'CellSummary' | 'Comment' | 'CustomSort' | 'Dashboard' | 'DataChangeHistory' | 'DataImport' | 'DataSet' | 'Export' | 'ColumnFilter' | 'GridFilter' | 'NamedQuery' | 'FlashingCell' | 'FormatColumn' | 'FreeTextColumn' | 'GridInfo' | 'Layout' | 'Note' | 'OpenFin' | 'PlusMinus' | 'QuickSearch' | 'Schedule' | 'SettingsPanel' | 'Shortcut' | 'SmartEdit' | 'StyledColumn' | 'StateManagement' | 'StatusBar' | 'SystemStatus' | 'TeamSharing' | 'Theme';
32
32
  export type AdaptableStateKeys = AdaptableStateKey[];
33
33
  export type AdaptableStateKey = keyof AdaptablePersistentState | 'OpenFin' | 'IPushPull';
34
34
  /**
35
35
  * Modules provided by AdapTable, subject to Entitlements and usually have Predefined Config
36
36
  */
37
- export type AdaptableModule = 'Alert' | 'BulkUpdate' | 'CalculatedColumn' | 'CellSummary' | 'Charting' | 'CustomSort' | 'Dashboard' | 'DataChangeHistory' | 'DataSet' | 'Export' | 'Fdc3' | 'ColumnFilter' | 'FlashingCell' | 'FormatColumn' | 'FreeTextColumn' | 'GridInfo' | 'ColumnInfo' | 'IPushPull' | 'Layout' | 'OpenFin' | 'PlusMinus' | 'QuickSearch' | 'Schedule' | 'SettingsPanel' | 'Shortcut' | 'SmartEdit' | 'StyledColumn' | 'StateManagement' | 'StatusBar' | 'SystemStatus' | 'TeamSharing' | 'Theme' | 'ToolPanel' | 'Notes' | 'DataImport' | 'GridFilter' | 'NamedQuery' | 'Comments';
37
+ export type AdaptableModule = 'Alert' | 'BulkUpdate' | 'CalculatedColumn' | 'CellSummary' | 'Charting' | 'Comment' | 'CustomSort' | 'Dashboard' | 'DataChangeHistory' | 'DataSet' | 'Export' | 'Fdc3' | 'ColumnFilter' | 'FlashingCell' | 'FormatColumn' | 'FreeTextColumn' | 'GridInfo' | 'ColumnInfo' | 'IPushPull' | 'Layout' | 'OpenFin' | 'PlusMinus' | 'QuickSearch' | 'Schedule' | 'SettingsPanel' | 'Shortcut' | 'SmartEdit' | 'StyledColumn' | 'StateManagement' | 'StatusBar' | 'SystemStatus' | 'TeamSharing' | 'Theme' | 'ToolPanel' | 'Note' | 'DataImport' | 'GridFilter' | 'NamedQuery';
38
38
  export declare const ALL_MODULES: AdaptableModule[];
39
39
  /**
40
40
  * Modules which can appear in the Settings Panel
41
41
  */
42
- export type AdaptableSettingsPanel = 'Alert' | 'CalculatedColumn' | 'Charting' | 'CustomSort' | 'Dashboard' | 'DataChangeHistory' | 'DataSet' | 'Export' | 'ColumnFilter' | 'FlashingCell' | 'FormatColumn' | 'FreeTextColumn' | 'GridInfo' | 'ColumnInfo' | 'Layout' | 'PlusMinus' | 'QuickSearch' | 'Schedule' | 'Shortcut' | 'StateManagement' | 'StatusBar' | 'StyledColumn' | 'SystemStatus' | 'TeamSharing' | 'Theme' | 'ToolPanel' | 'Notes' | 'DataImport' | 'GridFilter' | 'NamedQuery' | 'Comments';
42
+ export type AdaptableSettingsPanel = 'Alert' | 'CalculatedColumn' | 'Charting' | 'CustomSort' | 'Dashboard' | 'DataChangeHistory' | 'DataSet' | 'Export' | 'ColumnFilter' | 'FlashingCell' | 'FormatColumn' | 'FreeTextColumn' | 'GridInfo' | 'ColumnInfo' | 'Layout' | 'PlusMinus' | 'QuickSearch' | 'Schedule' | 'Shortcut' | 'StateManagement' | 'StatusBar' | 'StyledColumn' | 'SystemStatus' | 'TeamSharing' | 'Theme' | 'ToolPanel' | 'Note' | 'DataImport' | 'GridFilter' | 'NamedQuery' | 'Comment';
43
43
  export type TypeHint<Base, Literals> = (Base & {
44
44
  __subType?: true;
45
45
  }) | Literals;
@@ -30,6 +30,7 @@ exports.ALL_STATUS_SUB_PANELS = [
30
30
  'BulkUpdate',
31
31
  'CalculatedColumn',
32
32
  'CellSummary',
33
+ 'Comment',
33
34
  'CustomSort',
34
35
  'Charting',
35
36
  'Dashboard',
@@ -44,6 +45,7 @@ exports.ALL_STATUS_SUB_PANELS = [
44
45
  'FreeTextColumn',
45
46
  'GridInfo',
46
47
  'Layout',
48
+ 'Note',
47
49
  'PlusMinus',
48
50
  'QuickSearch',
49
51
  'Schedule',
@@ -81,7 +83,8 @@ exports.ALL_MODULES = [
81
83
  ModuleConstants.BulkUpdateModuleId,
82
84
  ModuleConstants.CalculatedColumnModuleId,
83
85
  ModuleConstants.CellSummaryModuleId,
84
- ModuleConstants.NotesModuleId,
86
+ ModuleConstants.NoteModuleId,
87
+ ModuleConstants.CommentModuleId,
85
88
  ModuleConstants.ChartingModuleId,
86
89
  ModuleConstants.CustomSortModuleId,
87
90
  ModuleConstants.DashboardModuleId,
@@ -3,6 +3,7 @@ import { AdaptableObject } from './Common/AdaptableObject';
3
3
  import { ColumnSort } from './Common/ColumnSort';
4
4
  import { ColumnFilter, GridFilter } from '../types';
5
5
  import { AggregationColumns } from './Common/AggregationColumns';
6
+ import { RowSummary } from './Common/RowSummary';
6
7
  /**
7
8
  * Predefined Configuration for the Layout Module
8
9
  */
@@ -82,4 +83,8 @@ export interface Layout extends AdaptableObject {
82
83
  * Whether to include the aggFunc name in the column header: e.g. 'sum(Bank Balance)' will just be 'Bank Balance'
83
84
  */
84
85
  SuppressAggFuncInHeader?: boolean;
86
+ /**
87
+ * Row Summaries - Pinned Rows that display Aggregation Info for a whole column
88
+ */
89
+ RowSummaries?: RowSummary[];
85
90
  }
@@ -1,5 +1,14 @@
1
1
  import { AdaptableObject } from '../types';
2
2
  import { ConfigState } from './ConfigState';
3
+ /**
4
+ * Predefined Configuration for Note Module
5
+ */
6
+ export interface NoteState extends ConfigState {
7
+ /**
8
+ * Collection of AdapTable Notes
9
+ */
10
+ Notes?: AdaptableNotes;
11
+ }
3
12
  /**
4
13
  * Note that can be applied to a Cell in AdapTable
5
14
  */
@@ -7,17 +16,11 @@ export interface AdaptableNote extends AdaptableObject {
7
16
  /**
8
17
  * When Note was made
9
18
  */
10
- Timestamp: number;
11
- /**
12
- * Value of the Note
13
- */
14
- Value: string;
19
+ Timestamp?: number;
15
20
  /**
16
- * Author of the Note
21
+ * Content of the Note
17
22
  */
18
- Author: {
19
- UserName: string;
20
- };
23
+ Text: string;
21
24
  /**
22
25
  * Value in Grid's Primary Key Column
23
26
  */
@@ -26,21 +29,8 @@ export interface AdaptableNote extends AdaptableObject {
26
29
  * Id of Column containing the Note
27
30
  */
28
31
  ColumnId: string;
29
- /**
30
- * Id of this AdapTable instance
31
- */
32
- AdaptableId: string;
33
32
  }
34
33
  /**
35
34
  * Collection of Cell Notes
36
35
  */
37
36
  export type AdaptableNotes = AdaptableNote[];
38
- /**
39
- * Predefined Configuration for Notes Module
40
- */
41
- export interface NotesState extends ConfigState {
42
- /**
43
- * Collection of AdapTable Notes
44
- */
45
- Notes?: AdaptableNotes;
46
- }
@@ -17,7 +17,7 @@ import { ToolPanelState } from './ToolPanelState';
17
17
  import { StatusBarState } from './StatusBarState';
18
18
  import { ChartingState } from './ChartingState';
19
19
  import { StyledColumnState } from './StyledColumnState';
20
- import { NotesState } from './NotesState';
20
+ import { NoteState } from './NoteState';
21
21
  import { NamedQueryState } from '../types';
22
22
  /**
23
23
  * This is the main Predefined Config interface which developers will populate at design-time
@@ -44,9 +44,9 @@ export interface PredefinedConfig {
44
44
  */
45
45
  CustomSort?: CustomSortState;
46
46
  /**
47
- * Collection of notes that can be edited on cell level
47
+ * Collection of personal Notes that are edited at Cell level
48
48
  */
49
- Notes?: NotesState;
49
+ Note?: NoteState;
50
50
  /**
51
51
  * Large series of properties to give users full control over the look and feel of the *Dashboard* - the section above the grid with toolbars and buttons
52
52
  */
@@ -1,5 +1,18 @@
1
1
  import { IRowNode } from '@ag-grid-community/core';
2
2
  import { AdaptableColumn } from '../Common/AdaptableColumn';
3
+ /**
4
+ * Very lightweight object to define an AdapTable Cell
5
+ */
6
+ export type CellAddress = {
7
+ /**
8
+ * Value in Primary Key Column
9
+ */
10
+ PrimaryKeyValue: string | number;
11
+ /**
12
+ * Id of Column containing the Note
13
+ */
14
+ ColumnId: string;
15
+ };
3
16
  /**
4
17
  * Defines a Cell in Adaptable - every cell is an intersection of a Column Id and a Primary Key Value
5
18
  */
@@ -1,7 +1,7 @@
1
1
  import { PreviewInfo } from '../Utilities/Interface/Preview';
2
2
  import { InternalState } from './InternalState';
3
3
  import { BulkUpdateValidationResult } from '../Strategy/Interface/IBulkUpdateModule';
4
- import { CellDataChangedInfo, GridCell, SmartEditOperation } from '../types';
4
+ import { CellAddress, CellDataChangedInfo, GridCell, SmartEditOperation } from '../types';
5
5
  import type { IPushPullState, IPushPullReport, IPushPullDomain } from './IPushPullState';
6
6
  import { OpenFinState, OpenFinReport } from './OpenFinState';
7
7
  import { AdaptableAlert } from './Common/AdaptableAlert';
@@ -12,7 +12,6 @@ import { AdaptableFlashingCell } from './Common/AdaptableFlashingCell';
12
12
  import { TypeUuid } from './Uuid';
13
13
  import { SummaryOperation } from './Common/Enums';
14
14
  import { ChartModel } from '@ag-grid-community/core';
15
- import { CellAddress } from './CellAddress';
16
15
  import { ExternalChartDefinition } from './ChartingState';
17
16
  import { CachedQuery } from './NamedQueryState';
18
17
  export type { IPushPullReport, IPushPullDomain };
@@ -20,6 +19,10 @@ export type { OpenFinReport };
20
19
  type ROW_PRIMARY_KEY = string;
21
20
  type COLUMN_ID_OR_WHOLE_ROW_LABEL = string;
22
21
  export type DataChangeHistoryMode = 'ACTIVE' | 'INACTIVE' | 'SUSPENDED';
22
+ export type SystemRowSummary = {
23
+ Position: 'Top' | 'Bottom';
24
+ RowData: Record<string, any>;
25
+ };
23
26
  /**
24
27
  * Internal state, used by Adaptable during a session; none of it is provided through Predefined Config, nor is it persisted
25
28
  */
@@ -93,7 +96,7 @@ export interface SystemState extends InternalState, IPushPullState, OpenFinState
93
96
  */
94
97
  DisableDeleteConfirmation: boolean;
95
98
  Export: {
96
- inProgressVisualData: boolean;
99
+ visualDataExportInProgress: boolean;
97
100
  };
98
101
  QuickSearch?: {
99
102
  floatingVisible?: boolean;
@@ -103,6 +106,9 @@ export interface SystemState extends InternalState, IPushPullState, OpenFinState
103
106
  focusedEntity?: 'Note' | 'Comment';
104
107
  popupPosition?: CellAddress | null;
105
108
  };
109
+ RowSummary?: {
110
+ rowSummaries?: SystemRowSummary[];
111
+ };
106
112
  }
107
113
  export interface ProgressIndicator {
108
114
  active: boolean;
@@ -30,6 +30,10 @@ export declare const LAYOUT_SELECT = "LAYOUT_SELECT";
30
30
  * @ReduxAction A Layout has been (auto)saved
31
31
  */
32
32
  export declare const LAYOUT_SAVE = "LAYOUT_SAVE";
33
+ /**
34
+ * @ReduxAction A Column has been added
35
+ */
36
+ export declare const LAYOUT_ADD_COLUMN = "LAYOUT_ADD_COLUMN";
33
37
  /**
34
38
  * @ReduxAction A Column has been removed
35
39
  */
@@ -145,6 +149,10 @@ export interface LayoutSetColumnCaptionAction extends Redux.Action {
145
149
  columnId: string;
146
150
  caption: string;
147
151
  }
152
+ export interface LayoutAddColumnAction extends Redux.Action {
153
+ layoutName: string;
154
+ columnId: string;
155
+ }
148
156
  export interface LayoutRemoveColumnAction extends Redux.Action {
149
157
  layoutName: string;
150
158
  columnId: string;
@@ -163,6 +171,7 @@ export declare const LayoutAdd: (layout: Layout) => LayoutAddAction;
163
171
  export declare const LayoutDelete: (layout: Layout) => LayoutDeleteAction;
164
172
  export declare const LayoutSave: (layout: Layout) => LayoutSaveAction;
165
173
  export declare const LayoutSetColumnCaption: (layoutName: string, columnId: string, caption: string) => LayoutSetColumnCaptionAction;
174
+ export declare const LayoutAddColumn: (layoutName: string, columnId: string) => LayoutAddColumnAction;
166
175
  export declare const LayoutRemoveColumn: (layoutName: string, columnId: string) => LayoutRemoveColumnAction;
167
176
  export declare const LayoutSelect: (layoutName: string) => LayoutSelectAction;
168
177
  export declare const LayoutReady: (layoutState: LayoutState) => LayoutReadyAction;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LayoutReducer = exports.getColumnFilterSelector = exports.LayoutReady = exports.LayoutSelect = exports.LayoutRemoveColumn = exports.LayoutSetColumnCaption = exports.LayoutSave = exports.LayoutDelete = exports.LayoutAdd = exports.LayoutGridFilterClear = exports.LayoutGridFilterUnSuspend = exports.LayoutGridFilterSuspend = exports.LayoutGridFilterSet = exports.LayoutColumnFilterUnSuspendAll = exports.LayoutColumnFilterSuspendAll = exports.LayoutColumnFilterUnSuspend = exports.LayoutColumnFilterSuspend = exports.LayoutColumnFilterClear = exports.LayoutColumnFilterClearAll = exports.LayoutColumnFilterSet = exports.LayoutColumnFilterEdit = exports.LayoutColumnFilterAdd = exports.LAYOUT_GRID_FILTER_CLEAR = exports.LAYOUT_GRID_FILTER_SET = exports.LAYOUT_GRID_FILTER_UNSUSPEND = exports.LAYOUT_GRID_FILTER_SUSPEND = exports.LAYOUT_COLUMN_FILTER_UNSUSPEND_ALL = exports.LAYOUT_COLUMN_FILTER_SUSPEND_ALL = exports.LAYOUT_COLUMN_FILTER_UNSUSPEND = exports.LAYOUT_COLUMN_FILTER_SUSPEND = exports.LAYOUT_COLUMN_FILTER_CLEAR = exports.LAYOUT_COLUMN_FILTER_CLEAR_ALL = exports.LAYOUT_COLUMN_FILTER_SET = exports.LAYOUT_COLUMN_FILTER_EDIT = exports.LAYOUT_COLUMN_FILTER_ADD = exports.LAYOUT_REMOVE_COLUMN = exports.LAYOUT_SAVE = exports.LAYOUT_SELECT = exports.LAYOUT_DELETE = exports.LAYOUT_EDIT = exports.LAYOUT_ADD = exports.LAYOUT_READY = exports.LAYOUT_SET_COLUMN_CAPTION = void 0;
3
+ exports.LayoutReducer = exports.getColumnFilterSelector = exports.LayoutReady = exports.LayoutSelect = exports.LayoutRemoveColumn = exports.LayoutAddColumn = exports.LayoutSetColumnCaption = exports.LayoutSave = exports.LayoutDelete = exports.LayoutAdd = exports.LayoutGridFilterClear = exports.LayoutGridFilterUnSuspend = exports.LayoutGridFilterSuspend = exports.LayoutGridFilterSet = exports.LayoutColumnFilterUnSuspendAll = exports.LayoutColumnFilterSuspendAll = exports.LayoutColumnFilterUnSuspend = exports.LayoutColumnFilterSuspend = exports.LayoutColumnFilterClear = exports.LayoutColumnFilterClearAll = exports.LayoutColumnFilterSet = exports.LayoutColumnFilterEdit = exports.LayoutColumnFilterAdd = exports.LAYOUT_GRID_FILTER_CLEAR = exports.LAYOUT_GRID_FILTER_SET = exports.LAYOUT_GRID_FILTER_UNSUSPEND = exports.LAYOUT_GRID_FILTER_SUSPEND = exports.LAYOUT_COLUMN_FILTER_UNSUSPEND_ALL = exports.LAYOUT_COLUMN_FILTER_SUSPEND_ALL = exports.LAYOUT_COLUMN_FILTER_UNSUSPEND = exports.LAYOUT_COLUMN_FILTER_SUSPEND = exports.LAYOUT_COLUMN_FILTER_CLEAR = exports.LAYOUT_COLUMN_FILTER_CLEAR_ALL = exports.LAYOUT_COLUMN_FILTER_SET = exports.LAYOUT_COLUMN_FILTER_EDIT = exports.LAYOUT_COLUMN_FILTER_ADD = exports.LAYOUT_REMOVE_COLUMN = exports.LAYOUT_ADD_COLUMN = exports.LAYOUT_SAVE = exports.LAYOUT_SELECT = exports.LAYOUT_DELETE = exports.LAYOUT_EDIT = exports.LAYOUT_ADD = exports.LAYOUT_READY = exports.LAYOUT_SET_COLUMN_CAPTION = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const GeneralConstants_1 = require("../../Utilities/Constants/GeneralConstants");
6
6
  const AdaptableHelper_1 = tslib_1.__importDefault(require("../../Utilities/Helpers/AdaptableHelper"));
@@ -32,6 +32,10 @@ exports.LAYOUT_SELECT = 'LAYOUT_SELECT';
32
32
  * @ReduxAction A Layout has been (auto)saved
33
33
  */
34
34
  exports.LAYOUT_SAVE = 'LAYOUT_SAVE';
35
+ /**
36
+ * @ReduxAction A Column has been added
37
+ */
38
+ exports.LAYOUT_ADD_COLUMN = 'LAYOUT_ADD_COLUMN';
35
39
  /**
36
40
  * @ReduxAction A Column has been removed
37
41
  */
@@ -170,6 +174,12 @@ const LayoutSetColumnCaption = (layoutName, columnId, caption) => ({
170
174
  caption,
171
175
  });
172
176
  exports.LayoutSetColumnCaption = LayoutSetColumnCaption;
177
+ const LayoutAddColumn = (layoutName, columnId) => ({
178
+ type: exports.LAYOUT_ADD_COLUMN,
179
+ layoutName,
180
+ columnId,
181
+ });
182
+ exports.LayoutAddColumn = LayoutAddColumn;
173
183
  const LayoutRemoveColumn = (layoutName, columnId) => ({
174
184
  type: exports.LAYOUT_REMOVE_COLUMN,
175
185
  layoutName,
@@ -243,6 +253,17 @@ const LayoutReducer = (state = initialState, action) => {
243
253
  }
244
254
  return state;
245
255
  }
256
+ case exports.LAYOUT_ADD_COLUMN: {
257
+ const addColumnAction = action;
258
+ const layoutname = addColumnAction.layoutName;
259
+ const colToAdd = addColumnAction.columnId;
260
+ let layoutToUpdate = state.Layouts.find((l) => l.Name === layoutname);
261
+ if (layoutToUpdate) {
262
+ layoutToUpdate.Columns.push(colToAdd);
263
+ return Object.assign(Object.assign({}, state), { Layouts: state.Layouts.map((abObject) => abObject.Uuid === layoutToUpdate.Uuid ? layoutToUpdate : abObject) });
264
+ }
265
+ return state;
266
+ }
246
267
  case exports.LAYOUT_REMOVE_COLUMN: {
247
268
  const removeColumnAction = action;
248
269
  const layoutname = removeColumnAction.layoutName;
@@ -274,8 +295,10 @@ const LayoutReducer = (state = initialState, action) => {
274
295
  return Object.assign(Object.assign({}, state), { Layouts });
275
296
  }
276
297
  case exports.LAYOUT_COLUMN_FILTER_ADD: {
277
- let columnFilters = [...((_b = currentLayout.ColumnFilters) !== null && _b !== void 0 ? _b : [])];
278
298
  const columnFilterAction = action.columnFilter;
299
+ let columnFilters = ((_b = currentLayout.ColumnFilters) !== null && _b !== void 0 ? _b : []).filter(
300
+ // make sure we are not adding a filter that already exists
301
+ (cf) => cf.ColumnId !== columnFilterAction.ColumnId);
279
302
  AdaptableHelper_1.default.addUuidAndSource(columnFilterAction);
280
303
  columnFilters.push(columnFilterAction);
281
304
  const Layouts = state.Layouts.map((layout) => {
@@ -288,10 +311,13 @@ const LayoutReducer = (state = initialState, action) => {
288
311
  }
289
312
  case exports.LAYOUT_COLUMN_FILTER_EDIT: {
290
313
  const columnFilterAction = action.columnFilter;
291
- let columnFilters = ((_c = currentLayout.ColumnFilters) !== null && _c !== void 0 ? _c : []).map((abObject) => abObject.Uuid === columnFilterAction.Uuid ? columnFilterAction : abObject);
314
+ // it is safer to change the col id, we cannot have multiple filter on the same id
315
+ // first we filter out other filters with the same colId, to ensure we have only one
316
+ const cleanColumnFilters = ((_c = currentLayout.ColumnFilters) !== null && _c !== void 0 ? _c : []).filter((cf) => cf.ColumnId !== columnFilterAction.ColumnId);
317
+ cleanColumnFilters.push(columnFilterAction);
292
318
  const Layouts = state.Layouts.map((layout) => {
293
319
  if (layout.Name === currentLayout.Name) {
294
- return Object.assign(Object.assign({}, layout), { ColumnFilters: columnFilters });
320
+ return Object.assign(Object.assign({}, layout), { ColumnFilters: cleanColumnFilters });
295
321
  }
296
322
  return layout;
297
323
  });
@@ -307,14 +333,11 @@ const LayoutReducer = (state = initialState, action) => {
307
333
  return Object.assign(Object.assign({}, state), { Layouts });
308
334
  }
309
335
  case exports.LAYOUT_COLUMN_FILTER_CLEAR: {
310
- let columnFilters = [...((_d = currentLayout.ColumnFilters) !== null && _d !== void 0 ? _d : [])];
311
336
  const actionTypedDelete = action;
312
- const index = actionTypedDelete.columnFilter
313
- ? columnFilters.findIndex((i) => i.Uuid == actionTypedDelete.columnFilter.Uuid)
314
- : -1;
315
- if (index != -1) {
316
- columnFilters.splice(index, 1);
317
- }
337
+ const columnFilters = ((_d = currentLayout.ColumnFilters) !== null && _d !== void 0 ? _d : []).filter((cf) => {
338
+ // make sure we are deleting all filters on the same column
339
+ return cf.ColumnId !== actionTypedDelete.columnFilter.ColumnId;
340
+ });
318
341
  const Layouts = state.Layouts.map((layout) => {
319
342
  if (layout.Name === currentLayout.Name) {
320
343
  return Object.assign(Object.assign({}, layout), { ColumnFilters: columnFilters });