@adaptabletools/adaptable-cjs 18.0.0-canary.9 → 18.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (422) hide show
  1. package/base.css +18 -20
  2. package/base.css.map +1 -1
  3. package/index.css +22 -20
  4. package/index.css.map +1 -1
  5. package/package.json +1 -1
  6. package/src/AdaptableInterfaces/IAdaptable.d.ts +5 -6
  7. package/src/AdaptableOptions/ActionColumnOptions.d.ts +3 -2
  8. package/src/AdaptableOptions/AdaptableFrameworkComponent.d.ts +3 -0
  9. package/src/AdaptableOptions/AdaptableOptions.d.ts +14 -13
  10. package/src/AdaptableOptions/AdaptablePlugin.d.ts +2 -0
  11. package/src/AdaptableOptions/AdaptablePlugin.js +2 -0
  12. package/src/AdaptableOptions/ColumnFilterOptions.d.ts +7 -0
  13. package/src/AdaptableOptions/ColumnMenuOptions.d.ts +94 -0
  14. package/src/AdaptableOptions/ColumnOptions.d.ts +9 -4
  15. package/src/AdaptableOptions/CommentOptions.d.ts +20 -9
  16. package/src/AdaptableOptions/ContextMenuOptions.d.ts +94 -0
  17. package/src/AdaptableOptions/CustomSortOptions.d.ts +2 -2
  18. package/src/AdaptableOptions/DataImportOptions.d.ts +2 -2
  19. package/src/AdaptableOptions/FormatColumnOptions.d.ts +2 -2
  20. package/src/AdaptableOptions/GroupingOptions.d.ts +0 -26
  21. package/src/AdaptableOptions/NoteOptions.d.ts +12 -3
  22. package/src/AdaptableOptions/PredicateOptions.d.ts +2 -2
  23. package/src/AdaptableOptions/QuickSearchOptions.d.ts +1 -1
  24. package/src/AdaptableOptions/StateOptions.d.ts +6 -0
  25. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +2 -2
  26. package/src/Api/AdaptableApi.d.ts +16 -6
  27. package/src/Api/ColumnApi.d.ts +13 -0
  28. package/src/Api/ColumnMenuApi.d.ts +13 -0
  29. package/src/Api/{ScopeApi.d.ts → ColumnScopeApi.d.ts} +28 -28
  30. package/src/Api/CommentApi.d.ts +20 -22
  31. package/src/Api/ConfigApi.d.ts +12 -7
  32. package/src/Api/ContextMenuApi.d.ts +9 -0
  33. package/src/Api/EventApi.d.ts +7 -9
  34. package/src/Api/Events/CommentChanged.d.ts +11 -0
  35. package/src/Api/Events/CommentChanged.js +2 -0
  36. package/src/Api/Events/GridDataChanged.d.ts +1 -1
  37. package/src/Api/FlashingCellApi.d.ts +2 -2
  38. package/src/Api/GridApi.d.ts +32 -4
  39. package/src/Api/Implementation/ActionColumnApiImpl.js +3 -6
  40. package/src/Api/Implementation/ActionRowApiImpl.js +3 -7
  41. package/src/Api/Implementation/AdaptableApiImpl.d.ts +7 -5
  42. package/src/Api/Implementation/AdaptableApiImpl.js +9 -5
  43. package/src/Api/Implementation/AlertApiImpl.js +8 -13
  44. package/src/Api/Implementation/ApiBase.d.ts +6 -4
  45. package/src/Api/Implementation/ApiBase.js +11 -5
  46. package/src/Api/Implementation/CalendarApiImpl.js +1 -6
  47. package/src/Api/Implementation/CellSummaryApiImpl.d.ts +0 -5
  48. package/src/Api/Implementation/CellSummaryApiImpl.js +2 -23
  49. package/src/Api/Implementation/ChartingApiImpl.js +3 -3
  50. package/src/Api/Implementation/ColumnApiImpl.d.ts +5 -0
  51. package/src/Api/Implementation/ColumnApiImpl.js +48 -16
  52. package/src/Api/Implementation/ColumnFilterApiImpl.js +7 -7
  53. package/src/Api/Implementation/ColumnMenuApiImpl.d.ts +8 -0
  54. package/src/Api/Implementation/ColumnMenuApiImpl.js +16 -0
  55. package/src/Api/Implementation/ColumnScopeApiImpl.d.ts +33 -0
  56. package/src/Api/Implementation/{ScopeApiImpl.js → ColumnScopeApiImpl.js} +48 -15
  57. package/src/Api/Implementation/CommentsApiImpl.d.ts +4 -5
  58. package/src/Api/Implementation/CommentsApiImpl.js +6 -6
  59. package/src/Api/Implementation/ConfigApiImpl.d.ts +4 -3
  60. package/src/Api/Implementation/ConfigApiImpl.js +25 -25
  61. package/src/Api/Implementation/ContextMenuApiImpl.d.ts +7 -0
  62. package/src/Api/Implementation/ContextMenuApiImpl.js +13 -0
  63. package/src/Api/Implementation/DashboardApiImpl.js +1 -6
  64. package/src/Api/Implementation/ExportApiImpl.js +5 -10
  65. package/src/Api/Implementation/ExpressionApiImpl.js +14 -19
  66. package/src/Api/Implementation/Fdc3ApiImpl.js +1 -1
  67. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +2 -2
  68. package/src/Api/Implementation/FlashingCellApiImpl.js +3 -8
  69. package/src/Api/Implementation/FormatColumnApiImpl.js +4 -4
  70. package/src/Api/Implementation/FreeTextColumnApiImpl.js +1 -1
  71. package/src/Api/Implementation/GridApiImpl.d.ts +9 -2
  72. package/src/Api/Implementation/GridApiImpl.js +52 -11
  73. package/src/Api/Implementation/LayoutApiImpl.d.ts +2 -7
  74. package/src/Api/Implementation/LayoutApiImpl.js +6 -15
  75. package/src/Api/Implementation/{NotesApiImpl.d.ts → NoteApiImpl.d.ts} +8 -8
  76. package/src/Api/Implementation/{NotesApiImpl.js → NoteApiImpl.js} +14 -14
  77. package/src/Api/Implementation/OptionsApiImpl.d.ts +6 -5
  78. package/src/Api/Implementation/OptionsApiImpl.js +7 -4
  79. package/src/Api/Implementation/PredicateApiImpl.js +2 -2
  80. package/src/Api/Implementation/ScheduleApiImpl.js +6 -6
  81. package/src/Api/Implementation/TeamSharingApiImpl.js +3 -15
  82. package/src/Api/Implementation/ThemeApiImpl.js +2 -7
  83. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +14 -8
  84. package/src/Api/Implementation/UserInterfaceApiImpl.js +32 -27
  85. package/src/Api/Internal/ActionRowInternalApi.d.ts +1 -0
  86. package/src/Api/Internal/ActionRowInternalApi.js +19 -46
  87. package/src/Api/Internal/AdaptableInternalApi.d.ts +3 -4
  88. package/src/Api/Internal/AdaptableInternalApi.js +16 -30
  89. package/src/Api/Internal/AlertInternalApi.d.ts +2 -2
  90. package/src/Api/Internal/AlertInternalApi.js +7 -20
  91. package/src/Api/Internal/CalculatedColumnInternalApi.js +10 -16
  92. package/src/Api/Internal/ChartingInternalApi.js +13 -13
  93. package/src/Api/Internal/ColumnFilterInternalApi.d.ts +1 -0
  94. package/src/Api/Internal/ColumnFilterInternalApi.js +24 -30
  95. package/src/Api/Internal/ColumnInternalApi.d.ts +2 -0
  96. package/src/Api/Internal/ColumnInternalApi.js +8 -1
  97. package/src/Api/Internal/CommentsInternalApi.d.ts +1 -1
  98. package/src/Api/Internal/CommentsInternalApi.js +3 -2
  99. package/src/Api/Internal/CustomSortInternalApi.js +1 -1
  100. package/src/Api/Internal/DashboardInternalApi.js +5 -11
  101. package/src/Api/Internal/DataImportInternalApi.js +3 -9
  102. package/src/Api/Internal/DataSetInternalApi.js +2 -7
  103. package/src/Api/Internal/ExportInternalApi.d.ts +2 -1
  104. package/src/Api/Internal/ExportInternalApi.js +8 -5
  105. package/src/Api/Internal/ExpressionInternalApi.js +3 -13
  106. package/src/Api/Internal/Fdc3InternalApi.js +3 -12
  107. package/src/Api/Internal/FormatColumnInternalApi.d.ts +3 -6
  108. package/src/Api/Internal/FormatColumnInternalApi.js +37 -30
  109. package/src/Api/Internal/FreeTextColumnInternalApi.js +4 -3
  110. package/src/Api/Internal/GridFilterInternalApi.d.ts +5 -0
  111. package/src/Api/Internal/GridFilterInternalApi.js +8 -8
  112. package/src/Api/Internal/GridInternalApi.d.ts +2 -0
  113. package/src/Api/Internal/GridInternalApi.js +28 -40
  114. package/src/Api/Internal/LayoutInternalApi.d.ts +2 -0
  115. package/src/Api/Internal/LayoutInternalApi.js +26 -19
  116. package/src/Api/Internal/NoteInternalApi.d.ts +4 -0
  117. package/src/Api/Internal/{NotesInternalApi.js → NoteInternalApi.js} +6 -5
  118. package/src/Api/Internal/PredicateInternalApi.d.ts +6 -6
  119. package/src/Api/Internal/PredicateInternalApi.js +5 -40
  120. package/src/Api/Internal/ScheduleInternalApi.js +1 -6
  121. package/src/Api/Internal/StyledColumnInternalApi.d.ts +2 -2
  122. package/src/Api/Internal/StyledColumnInternalApi.js +8 -9
  123. package/src/Api/Internal/SystemStatusInternalApi.js +1 -7
  124. package/src/Api/Internal/TeamSharingInternalApi.js +2 -7
  125. package/src/Api/Internal/ThemeInternalApi.js +1 -1
  126. package/src/Api/Internal/UserInterfaceInternalApi.js +1 -1
  127. package/src/Api/LayoutApi.d.ts +9 -12
  128. package/src/Api/NoteApi.d.ts +48 -0
  129. package/src/Api/NoteApi.js +2 -0
  130. package/src/Api/OptionsApi.d.ts +14 -10
  131. package/src/Api/UserInterfaceApi.d.ts +15 -13
  132. package/src/PredefinedConfig/AdaptableState.d.ts +2 -2
  133. package/src/PredefinedConfig/AlertState.d.ts +2 -2
  134. package/src/PredefinedConfig/CommentState.d.ts +27 -23
  135. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
  136. package/src/PredefinedConfig/Common/AdaptableObject.d.ts +4 -4
  137. package/src/PredefinedConfig/Common/AdaptablePredicate.d.ts +2 -2
  138. package/src/PredefinedConfig/Common/CellSummary.d.ts +5 -14
  139. package/src/PredefinedConfig/Common/{AdaptableScope.d.ts → ColumnScope.d.ts} +1 -1
  140. package/src/PredefinedConfig/Common/ColumnScope.js +2 -0
  141. package/src/PredefinedConfig/Common/DataUpdateConfig.d.ts +1 -5
  142. package/src/PredefinedConfig/Common/Enums.d.ts +4 -1
  143. package/src/PredefinedConfig/Common/Enums.js +3 -0
  144. package/src/PredefinedConfig/Common/Fdc3Intent.d.ts +2 -2
  145. package/src/PredefinedConfig/Common/Menu.d.ts +39 -4
  146. package/src/PredefinedConfig/Common/Menu.js +126 -0
  147. package/src/PredefinedConfig/Common/RowScope.d.ts +17 -0
  148. package/src/PredefinedConfig/Common/RowScope.js +2 -0
  149. package/src/PredefinedConfig/Common/RowSummary.d.ts +15 -1
  150. package/src/PredefinedConfig/Common/RowSummary.js +17 -1
  151. package/src/PredefinedConfig/Common/TransposeConfig.d.ts +30 -0
  152. package/src/PredefinedConfig/Common/TransposeConfig.js +2 -0
  153. package/src/PredefinedConfig/Common/Types.d.ts +4 -4
  154. package/src/PredefinedConfig/Common/Types.js +4 -1
  155. package/src/PredefinedConfig/ExportState.d.ts +2 -2
  156. package/src/PredefinedConfig/FlashingCellState.d.ts +2 -2
  157. package/src/PredefinedConfig/FormatColumnState.d.ts +9 -5
  158. package/src/PredefinedConfig/LayoutState.d.ts +2 -2
  159. package/src/PredefinedConfig/{NotesState.d.ts → NoteState.d.ts} +4 -4
  160. package/src/PredefinedConfig/NoteState.js +2 -0
  161. package/src/PredefinedConfig/PlusMinusState.d.ts +2 -2
  162. package/src/PredefinedConfig/PopupState.d.ts +1 -2
  163. package/src/PredefinedConfig/PredefinedConfig.d.ts +2 -2
  164. package/src/PredefinedConfig/Selection/GridCell.d.ts +13 -0
  165. package/src/PredefinedConfig/ShortcutState.d.ts +2 -2
  166. package/src/PredefinedConfig/StyledColumnState.d.ts +5 -5
  167. package/src/PredefinedConfig/SystemState.d.ts +5 -4
  168. package/src/Redux/ActionsReducers/CommentsRedux.d.ts +0 -4
  169. package/src/Redux/ActionsReducers/CommentsRedux.js +1 -39
  170. package/src/Redux/ActionsReducers/LayoutRedux.js +12 -10
  171. package/src/Redux/ActionsReducers/NoteRedux.d.ts +38 -0
  172. package/src/Redux/ActionsReducers/{NotesRedux.js → NoteRedux.js} +31 -31
  173. package/src/Redux/ActionsReducers/PopupRedux.d.ts +5 -13
  174. package/src/Redux/ActionsReducers/PopupRedux.js +1 -22
  175. package/src/Redux/ActionsReducers/SystemRedux.d.ts +11 -5
  176. package/src/Redux/ActionsReducers/SystemRedux.js +14 -11
  177. package/src/Redux/Store/AdaptableStore.js +39 -32
  178. package/src/Strategy/AdaptableModuleBase.d.ts +10 -10
  179. package/src/Strategy/AdaptableModuleBase.js +13 -16
  180. package/src/Strategy/AlertModule.d.ts +3 -2
  181. package/src/Strategy/AlertModule.js +4 -4
  182. package/src/Strategy/BulkUpdateModule.d.ts +3 -2
  183. package/src/Strategy/BulkUpdateModule.js +2 -1
  184. package/src/Strategy/CalculatedColumnModule.d.ts +3 -4
  185. package/src/Strategy/CalculatedColumnModule.js +18 -14
  186. package/src/Strategy/CellSummaryModule.d.ts +9 -9
  187. package/src/Strategy/CellSummaryModule.js +96 -107
  188. package/src/Strategy/ColumnFilterModule.d.ts +3 -3
  189. package/src/Strategy/ColumnFilterModule.js +36 -57
  190. package/src/Strategy/ColumnInfoModule.d.ts +3 -3
  191. package/src/Strategy/ColumnInfoModule.js +6 -4
  192. package/src/Strategy/CommentModule.d.ts +12 -0
  193. package/src/Strategy/CommentModule.js +75 -0
  194. package/src/Strategy/CustomSortModule.d.ts +1 -2
  195. package/src/Strategy/CustomSortModule.js +3 -2
  196. package/src/Strategy/DashboardModule.d.ts +3 -3
  197. package/src/Strategy/DashboardModule.js +10 -20
  198. package/src/Strategy/DataImportModule.d.ts +4 -4
  199. package/src/Strategy/DataImportModule.js +8 -8
  200. package/src/Strategy/ExportModule.d.ts +1 -2
  201. package/src/Strategy/ExportModule.js +56 -42
  202. package/src/Strategy/Fdc3Module.d.ts +1 -1
  203. package/src/Strategy/Fdc3Module.js +3 -13
  204. package/src/Strategy/FlashingCellModule.d.ts +4 -3
  205. package/src/Strategy/FlashingCellModule.js +10 -10
  206. package/src/Strategy/FormatColumnModule.d.ts +1 -1
  207. package/src/Strategy/FormatColumnModule.js +29 -47
  208. package/src/Strategy/FreeTextColumnModule.d.ts +1 -2
  209. package/src/Strategy/FreeTextColumnModule.js +2 -2
  210. package/src/Strategy/GridInfoModule.d.ts +3 -3
  211. package/src/Strategy/GridInfoModule.js +5 -3
  212. package/src/Strategy/Interface/IModule.d.ts +4 -4
  213. package/src/Strategy/LayoutModule.d.ts +4 -10
  214. package/src/Strategy/LayoutModule.js +50 -150
  215. package/src/Strategy/NoteModule.d.ts +10 -0
  216. package/src/Strategy/NoteModule.js +60 -0
  217. package/src/Strategy/PlusMinusModule.d.ts +1 -2
  218. package/src/Strategy/PlusMinusModule.js +5 -5
  219. package/src/Strategy/SettingsPanelModule.d.ts +3 -3
  220. package/src/Strategy/SettingsPanelModule.js +6 -6
  221. package/src/Strategy/ShortcutModule.js +1 -1
  222. package/src/Strategy/SmartEditModule.d.ts +3 -2
  223. package/src/Strategy/SmartEditModule.js +2 -1
  224. package/src/Strategy/StyledColumnModule.d.ts +2 -1
  225. package/src/Strategy/StyledColumnModule.js +42 -22
  226. package/src/Strategy/SystemStatusModule.d.ts +3 -3
  227. package/src/Strategy/SystemStatusModule.js +6 -3
  228. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +4 -2
  229. package/src/Strategy/Utilities/getScopeViewItems.d.ts +2 -2
  230. package/src/Strategy/Utilities/getScopeViewItems.js +3 -0
  231. package/src/Utilities/Constants/GeneralConstants.d.ts +1 -0
  232. package/src/Utilities/Constants/GeneralConstants.js +3 -2
  233. package/src/Utilities/Constants/ModuleConstants.d.ts +6 -6
  234. package/src/Utilities/Constants/ModuleConstants.js +7 -7
  235. package/src/Utilities/Defaults/DefaultSettingsPanel.js +2 -2
  236. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +2 -2
  237. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +144 -7
  238. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +3 -3
  239. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +1 -1
  240. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +15 -0
  241. package/src/Utilities/Helpers/AdaptableHelper.d.ts +3 -1
  242. package/src/Utilities/Helpers/AdaptableHelper.js +21 -1
  243. package/src/Utilities/Interface/MessagePopups.d.ts +0 -3
  244. package/src/Utilities/MenuItem.d.ts +10 -7
  245. package/src/Utilities/MenuItem.js +6 -3
  246. package/src/Utilities/ObjectFactory.d.ts +3 -3
  247. package/src/Utilities/ObjectFactory.js +7 -25
  248. package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +1 -0
  249. package/src/Utilities/Services/AggregatedScalarLiveValue.js +12 -10
  250. package/src/Utilities/Services/CellPopupService.js +4 -4
  251. package/src/Utilities/Services/Interface/IReportService.d.ts +1 -4
  252. package/src/Utilities/Services/LicenseService/index.js +1 -198
  253. package/src/Utilities/Services/ModuleService.js +6 -2
  254. package/src/Utilities/Services/QueryLanguageService.js +2 -2
  255. package/src/Utilities/Services/ReportService.d.ts +7 -5
  256. package/src/Utilities/Services/ReportService.js +245 -26
  257. package/src/Utilities/Services/RowSummaryService.d.ts +26 -0
  258. package/src/Utilities/Services/RowSummaryService.js +160 -0
  259. package/src/Utilities/Services/ValidationService.js +2 -2
  260. package/src/Utilities/adaptableQlUtils.d.ts +2 -0
  261. package/src/Utilities/adaptableQlUtils.js +18 -0
  262. package/src/Utilities/license/decode.js +1 -70
  263. package/src/Utilities/license/hashing.js +1 -47
  264. package/src/View/AdaptableViewFactory.js +2 -2
  265. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +1 -1
  266. package/src/View/Alert/AlertEntityRow.js +1 -1
  267. package/src/View/Alert/Utilities/getAvailablePredicates.d.ts +2 -2
  268. package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +1 -1
  269. package/src/View/Alert/Wizard/AlertScopeWizardSection.js +2 -2
  270. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +1 -1
  271. package/src/View/BulkUpdate/BulkUpdatePopup.js +2 -2
  272. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.d.ts +1 -1
  273. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +3 -3
  274. package/src/View/ColumnInfo/ColumnInfo.js +1 -1
  275. package/src/View/Comments/CommentsEditor.js +28 -17
  276. package/src/View/Comments/CommentsPopup.js +15 -7
  277. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  278. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.d.ts +5 -0
  279. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.js +46 -0
  280. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +5 -2
  281. package/src/View/Components/CellPopup/index.d.ts +1 -0
  282. package/src/View/Components/CellPopup/index.js +6 -3
  283. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.d.ts +3 -3
  284. package/src/View/Components/EntityRulesEditor/index.d.ts +3 -3
  285. package/src/View/Components/FilterForm/FilterForm.js +20 -12
  286. package/src/View/Components/FilterForm/QuickFilterForm.js +15 -8
  287. package/src/View/Components/FilterForm/QuickFilterValues.js +39 -23
  288. package/src/View/Components/NewScopeComponent.d.ts +5 -5
  289. package/src/View/Components/NewScopeComponent.js +6 -4
  290. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +4 -1
  291. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +10 -1
  292. package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +7 -10
  293. package/src/View/Components/RangesComponent.d.ts +2 -2
  294. package/src/View/Components/RangesComponent.js +1 -1
  295. package/src/View/Components/Selectors/PermittedValuesSelector.js +1 -1
  296. package/src/View/Components/SharedProps/WizardScopeState.d.ts +2 -2
  297. package/src/View/Components/ValueSelector/index.d.ts +1 -0
  298. package/src/View/Components/ValueSelector/index.js +2 -2
  299. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +1 -1
  300. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +4 -2
  301. package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -1
  302. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +2 -2
  303. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +20 -7
  304. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +1 -1
  305. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +1 -1
  306. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +27 -12
  307. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +1 -1
  308. package/src/View/FreeTextColumn/FreeTextColumnSummary.js +1 -1
  309. package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +3 -1
  310. package/src/View/GridFilter/GridFilterViewPanel.js +3 -3
  311. package/src/View/GridFilter/useGridFilterExpressionEditor.js +1 -1
  312. package/src/View/Layout/LayoutViewPanel.js +2 -1
  313. package/src/View/Layout/TransposedPopup.js +20 -19
  314. package/src/View/Layout/Wizard/LayoutWizard.js +38 -3
  315. package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -1
  316. package/src/View/Layout/Wizard/sections/FilterSection.js +1 -1
  317. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +18 -2
  318. package/src/View/Layout/Wizard/sections/RowSummarySection.d.ts +9 -0
  319. package/src/View/Layout/Wizard/sections/RowSummarySection.js +181 -0
  320. package/src/View/License/LicenseWatermark.js +1 -66
  321. package/src/View/Note/NotePopup.d.ts +2 -0
  322. package/src/View/{Notes/NotesPopup.js → Note/NotePopup.js} +16 -11
  323. package/src/View/PlusMinus/PlusMinusSummary.js +2 -2
  324. package/src/View/SmartEdit/SmartEditPopup.js +1 -1
  325. package/src/View/SpecialColumnSettingsWizardStep.js +4 -4
  326. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +5 -7
  327. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +1 -1
  328. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +1 -1
  329. package/src/View/StyledColumn/Wizard/StyledColumnWizardSettingsSection.js +38 -14
  330. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +1 -1
  331. package/src/agGrid/ActionColumnRenderer.js +40 -4
  332. package/src/agGrid/AdaptableAgGrid.d.ts +11 -16
  333. package/src/agGrid/AdaptableAgGrid.js +230 -250
  334. package/src/agGrid/AgGridAdapter.d.ts +4 -2
  335. package/src/agGrid/AgGridAdapter.js +12 -0
  336. package/src/agGrid/AgGridColumnAdapter.d.ts +1 -3
  337. package/src/agGrid/AgGridColumnAdapter.js +42 -71
  338. package/src/agGrid/AgGridMenuAdapter.d.ts +25 -8
  339. package/src/agGrid/AgGridMenuAdapter.js +405 -74
  340. package/src/agGrid/AgGridOptionsService.d.ts +4 -1
  341. package/src/agGrid/AgGridOptionsService.js +22 -0
  342. package/src/agGrid/BadgeRenderer.d.ts +2 -2
  343. package/src/agGrid/BadgeRenderer.js +24 -11
  344. package/src/agGrid/PercentBarRenderer.js +2 -1
  345. package/src/agGrid/buildSortedColumnStateForLayout.d.ts +7 -0
  346. package/src/agGrid/buildSortedColumnStateForLayout.js +124 -0
  347. package/src/agGrid/defaultAdaptableOptions.js +7 -12
  348. package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +1 -1
  349. package/src/agGrid/editors/AdaptableDateEditor/index.js +1 -1
  350. package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +2 -2
  351. package/src/agGrid/sortColumnStateForVisibleColumns.d.ts +12 -0
  352. package/src/agGrid/sortColumnStateForVisibleColumns.js +50 -0
  353. package/src/agGrid/weightedAverage.d.ts +0 -2
  354. package/src/agGrid/weightedAverage.js +1 -56
  355. package/src/components/Accordion.d.ts +7 -0
  356. package/src/components/Accordion.js +41 -0
  357. package/src/components/Datepicker/index.js +10 -2
  358. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -1
  359. package/src/components/ExpressionEditor/QueryBuilder/utils.d.ts +0 -1
  360. package/src/components/ExpressionEditor/QueryBuilder/utils.js +3 -17
  361. package/src/components/Input/index.d.ts +1 -2
  362. package/src/components/ProgressIndicator/ProgressIndicator.js +15 -6
  363. package/src/components/Select/Select.d.ts +1 -1
  364. package/src/components/Select/Select.js +3 -1
  365. package/src/components/Textarea/index.d.ts +2 -2
  366. package/src/components/icons/collapse-all.d.ts +3 -0
  367. package/src/components/icons/collapse-all.js +7 -0
  368. package/src/components/icons/copy.d.ts +3 -0
  369. package/src/components/icons/copy.js +7 -0
  370. package/src/components/icons/csv.d.ts +3 -0
  371. package/src/components/icons/csv.js +7 -0
  372. package/src/components/icons/data-object.d.ts +3 -0
  373. package/src/components/icons/data-object.js +7 -0
  374. package/src/components/icons/excel.d.ts +3 -0
  375. package/src/components/icons/excel.js +8 -0
  376. package/src/components/icons/expand-all.d.ts +3 -0
  377. package/src/components/icons/expand-all.js +7 -0
  378. package/src/components/icons/filter-off.d.ts +3 -0
  379. package/src/components/icons/filter-off.js +7 -0
  380. package/src/components/icons/grid-info.d.ts +3 -0
  381. package/src/components/icons/grid-info.js +7 -0
  382. package/src/components/icons/index.js +22 -0
  383. package/src/components/icons/note.js +2 -2
  384. package/src/components/icons/select-all.d.ts +3 -0
  385. package/src/components/icons/select-all.js +7 -0
  386. package/src/components/icons/select-fwd.d.ts +3 -0
  387. package/src/components/icons/select-fwd.js +7 -0
  388. package/src/components/icons/select-off.d.ts +3 -0
  389. package/src/components/icons/select-off.js +7 -0
  390. package/src/env.js +2 -2
  391. package/src/metamodel/adaptable.metamodel.d.ts +222 -116
  392. package/src/metamodel/adaptable.metamodel.js +1 -9429
  393. package/src/parser/src/parser.js +576 -553
  394. package/src/parser/src/predicate/mapExpressionToQlPredicate.js +1 -1
  395. package/src/parser/src/predicate/mapQlPredicateToExpression.js +3 -4
  396. package/src/parser/src/types.d.ts +2 -2
  397. package/src/parser/src/types.js +1 -2
  398. package/src/types.d.ts +32 -25
  399. package/tsconfig.cjs.tsbuildinfo +1 -1
  400. package/src/AdaptableOptions/MenuOptions.d.ts +0 -234
  401. package/src/AdaptableOptions/MenuOptions.js +0 -99
  402. package/src/Api/Events/CommentsChangedInfo.d.ts +0 -5
  403. package/src/Api/Implementation/ScopeApiImpl.d.ts +0 -33
  404. package/src/Api/Internal/NotesInternalApi.d.ts +0 -4
  405. package/src/Api/NotesApi.d.ts +0 -48
  406. package/src/PredefinedConfig/CellAddress.d.ts +0 -13
  407. package/src/PredefinedConfig/CellAddress.js +0 -5
  408. package/src/Redux/ActionsReducers/NotesRedux.d.ts +0 -38
  409. package/src/Strategy/CommentsModule.d.ts +0 -17
  410. package/src/Strategy/CommentsModule.js +0 -86
  411. package/src/Strategy/NotesModule.d.ts +0 -10
  412. package/src/Strategy/NotesModule.js +0 -61
  413. package/src/Utilities/Services/SummaryService.d.ts +0 -19
  414. package/src/Utilities/Services/SummaryService.js +0 -33
  415. package/src/View/Notes/NotesPopup.d.ts +0 -2
  416. /package/src/{Api/Events/CommentsChangedInfo.js → AdaptableOptions/ColumnMenuOptions.js} +0 -0
  417. /package/src/{Api/NotesApi.js → AdaptableOptions/ContextMenuOptions.js} +0 -0
  418. /package/src/Api/{ScopeApi.js → ColumnMenuApi.js} +0 -0
  419. /package/src/{PredefinedConfig/Common/AdaptableScope.js → Api/ColumnScopeApi.js} +0 -0
  420. /package/src/{PredefinedConfig/NotesState.js → Api/ContextMenuApi.js} +0 -0
  421. /package/src/View/{Notes → Note}/NoteEditor.d.ts +0 -0
  422. /package/src/View/{Notes → Note}/NoteEditor.js +0 -0
@@ -1,4 +1,4 @@
1
- import { AdaptableColumn, AdaptableFormat, AdaptablePredicateDef, AdaptableScope, FormatColumn, StringFormatterOptions } from '../../types';
1
+ import { AdaptableColumn, AdaptableFormat, AdaptablePredicateDef, ColumnScope, FormatColumn, StringFormatterOptions } from '../../types';
2
2
  import { ApiBase } from '../Implementation/ApiBase';
3
3
  import { IRowNode } from '@ag-grid-community/core';
4
4
  export declare class FormatColumnInternalApi extends ApiBase {
@@ -76,7 +76,7 @@ export declare class FormatColumnInternalApi extends ApiBase {
76
76
  * Returns all Predicates appropriate for the given Scope
77
77
  * @param scope Scope to check
78
78
  */
79
- getFormatColumnDefsForScope(scope: AdaptableScope): AdaptablePredicateDef[];
79
+ getFormatColumnDefsForScope(scope: ColumnScope): AdaptablePredicateDef[];
80
80
  /**
81
81
  * Checks if format column is relevant for a given cell (intersection of given AdaptableColumn and RowNode)
82
82
  *
@@ -84,10 +84,7 @@ export declare class FormatColumnInternalApi extends ApiBase {
84
84
  * @param column
85
85
  * @param params
86
86
  */
87
- isFormatColumnRelevantForColumn(formatColumn: FormatColumn, column: AdaptableColumn, params: {
88
- node: IRowNode;
89
- value: any;
90
- }): boolean;
87
+ formatColumnShouldRender(formatColumn: FormatColumn, column: AdaptableColumn, rowNode: IRowNode, cellValue: any): boolean;
91
88
  private evaluatePredicate;
92
89
  private evaluateExpression;
93
90
  /**
@@ -63,7 +63,7 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
63
63
  return this.getFormatColumnsWithStyleForColumn(column, config).filter((formatColumn) => { var _a; return StringExtensions_1.default.IsNotNullOrEmpty((_a = formatColumn === null || formatColumn === void 0 ? void 0 : formatColumn.Style) === null || _a === void 0 ? void 0 : _a.ClassName); });
64
64
  }
65
65
  getFormatColumnWithColumnInScope(formatColumns, column) {
66
- return this.getFormatColumnInColumnScope(formatColumns).filter((scopedFormatColumn) => this.adaptable.api.scopeApi.isColumnInScope(column, scopedFormatColumn.Scope));
66
+ return this.getFormatColumnInColumnScope(formatColumns).filter((scopedFormatColumn) => this.getAdaptableApi().columnScopeApi.isColumnInScope(column, scopedFormatColumn.Scope));
67
67
  }
68
68
  // TODO is this really needed, I don't think it achieves anything
69
69
  getFormatColumnInColumnScope(formatColumns) {
@@ -71,11 +71,11 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
71
71
  return formatColumns.filter((fc) => {
72
72
  return (
73
73
  // this.getFormatColumnsWithColumnScope(formatColumns)
74
- (this.adaptable.api.scopeApi.scopeHasColumns(fc.Scope) ||
74
+ (this.getAdaptableApi().columnScopeApi.scopeHasColumns(fc.Scope) ||
75
75
  // this.getFormatColumnsWithDataTypeScope(formatColumns)
76
- this.adaptable.api.scopeApi.scopeHasDataType(fc.Scope) ||
76
+ this.getAdaptableApi().columnScopeApi.scopeHasDataType(fc.Scope) ||
77
77
  // this.getFormatColumnsWithAllScope(formatColumns)
78
- this.adaptable.api.scopeApi.scopeIsAll(fc.Scope) || this.adaptable.api.scopeApi.scopeHasColumnType(fc.Scope))
78
+ this.getAdaptableApi().columnScopeApi.scopeIsAll(fc.Scope) || this.getAdaptableApi().columnScopeApi.scopeHasColumnType(fc.Scope))
79
79
  );
80
80
  });
81
81
  }
@@ -148,7 +148,7 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
148
148
  getFormatColumnDefsForScope(scope) {
149
149
  return this.getAdaptableApi()
150
150
  .predicateApi.internalApi.getFormatColumnPredicateDefs(scope)
151
- .filter((predicateDef) => this.adaptable.api.scopeApi.isScopeInScope(scope, predicateDef.columnScope));
151
+ .filter((predicateDef) => this.getAdaptableApi().columnScopeApi.isScopeInScope(scope, predicateDef.columnScope));
152
152
  }
153
153
  /**
154
154
  * Checks if format column is relevant for a given cell (intersection of given AdaptableColumn and RowNode)
@@ -157,48 +157,53 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
157
157
  * @param column
158
158
  * @param params
159
159
  */
160
- isFormatColumnRelevantForColumn(formatColumn, column, params) {
161
- var _a, _b;
160
+ formatColumnShouldRender(formatColumn, column, rowNode, cellValue) {
161
+ var _a, _b, _c, _d, _e;
162
162
  // suspended is important to be first
163
163
  if (formatColumn.IsSuspended) {
164
164
  return false;
165
165
  }
166
- if (!formatColumn.IncludeGroupedRows &&
167
- this.adaptable.api.gridApi.isGroupRowNode(params.node)) {
168
- return false;
166
+ const isSummaryNode = this.getAdaptableApi().gridApi.isSummaryNode(rowNode);
167
+ const isGroupedRowNode = this.getAdaptableApi().gridApi.isGroupRowNode(rowNode);
168
+ // For Summary Rows cannot be excluded
169
+ if (isSummaryNode) {
170
+ if ((_a = formatColumn.RowScope) === null || _a === void 0 ? void 0 : _a.ExcludeSummaryRows) {
171
+ return false;
172
+ }
173
+ }
174
+ else if (isGroupedRowNode) {
175
+ if ((_b = formatColumn.RowScope) === null || _b === void 0 ? void 0 : _b.ExcludeGroupRows) {
176
+ return false;
177
+ }
178
+ }
179
+ else {
180
+ if ((_c = formatColumn.RowScope) === null || _c === void 0 ? void 0 : _c.ExcludeDataRows) {
181
+ return false;
182
+ }
169
183
  }
170
184
  if (!formatColumn.Rule) {
171
185
  return true;
172
186
  }
173
187
  // first run the predicate
174
- if (formatColumn.Rule.Predicates && ((_b = (_a = formatColumn.Rule) === null || _a === void 0 ? void 0 : _a.Predicates) === null || _b === void 0 ? void 0 : _b.length)) {
175
- const predicateDefHandlerContext = {
176
- value: params.value,
177
- oldValue: null,
178
- displayValue: params.value,
179
- node: params.node,
180
- column: column,
181
- adaptableApi: this.getAdaptableApi(),
182
- userName: this.getAdaptableApi().optionsApi.getUserName(),
183
- adaptableId: this.getAdaptableApi().optionsApi.getAdaptableId(),
184
- };
188
+ if (formatColumn.Rule.Predicates && ((_e = (_d = formatColumn.Rule) === null || _d === void 0 ? void 0 : _d.Predicates) === null || _e === void 0 ? void 0 : _e.length)) {
189
+ const predicateDefHandlerContext = Object.assign({ value: cellValue, oldValue: null, displayValue: cellValue, node: rowNode, column: column }, this.getAdaptableApi().internalApi.buildBaseContext());
185
190
  return this.evaluatePredicate(formatColumn, predicateDefHandlerContext);
186
- }
191
+ } // then run the Expression
187
192
  else if (formatColumn.Rule.BooleanExpression) {
188
- return this.evaluateExpression(formatColumn, params.node);
193
+ return this.evaluateExpression(formatColumn, rowNode);
189
194
  }
190
195
  // nothing has passed then return false
191
196
  return false;
192
197
  }
193
198
  evaluatePredicate(formatColumn, predicateDefHandlerContext) {
194
199
  var _a;
195
- return this.adaptable.api.predicateApi.handleColumnPredicates((_a = formatColumn.Rule) === null || _a === void 0 ? void 0 : _a.Predicates, predicateDefHandlerContext, false);
200
+ return this.getAdaptableApi().predicateApi.handleColumnPredicates((_a = formatColumn.Rule) === null || _a === void 0 ? void 0 : _a.Predicates, predicateDefHandlerContext, false);
196
201
  }
197
202
  evaluateExpression(formatColumn, node) {
198
- const isValidExpression = this.adaptable.api.expressionApi.isValidBooleanExpression(formatColumn.Rule.BooleanExpression, ModuleConstants.FormatColumnModuleId, `Invalid format column rule '${formatColumn.Rule.BooleanExpression}'`);
203
+ const isValidExpression = this.getAdaptableApi().expressionApi.isValidBooleanExpression(formatColumn.Rule.BooleanExpression, ModuleConstants.FormatColumnModuleId, `Invalid format column rule '${formatColumn.Rule.BooleanExpression}'`);
199
204
  return (isValidExpression &&
200
- this.adaptable.api.internalApi
201
- .getQueryLanguageService()
205
+ this.getAdaptableApi()
206
+ .internalApi.getQueryLanguageService()
202
207
  .evaluateBooleanExpression(formatColumn.Rule.BooleanExpression, ModuleConstants.FormatColumnModuleId, node));
203
208
  }
204
209
  /**
@@ -209,7 +214,7 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
209
214
  * @param params
210
215
  */
211
216
  getFormatColumnsRelevantForColumn(formatColumns, column, params) {
212
- return formatColumns.filter((formatColumn) => this.isFormatColumnRelevantForColumn(formatColumn, column, params));
217
+ return formatColumns.filter((formatColumn) => this.formatColumnShouldRender(formatColumn, column, params.node, params.value));
213
218
  }
214
219
  /**
215
220
  * Extract from the given FormatColumns the one which is the most relevant for a given cell (intersection of given AdaptableColumn and RowNode)
@@ -219,7 +224,7 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
219
224
  * @param params
220
225
  */
221
226
  getMostRelevantFormatColumnForColumn(formatColumns, column, params) {
222
- return formatColumns.find((formatColumn) => this.isFormatColumnRelevantForColumn(formatColumn, column, params));
227
+ return formatColumns.find((formatColumn) => this.formatColumnShouldRender(formatColumn, column, params.node, params.value));
223
228
  }
224
229
  /**
225
230
  * Retrieves all Format Columns which have an Expression
@@ -248,7 +253,9 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
248
253
  });
249
254
  const columnsThatNeedRefresh = new Set();
250
255
  this.getFormatColumnsDependentOnColumns(impactedColumnIds).forEach((formatColumn) => {
251
- this.adaptable.api.scopeApi.getColumnsForScope(formatColumn.Scope).forEach((col) => {
256
+ this.getAdaptableApi()
257
+ .columnScopeApi.getColumnsForScope(formatColumn.Scope)
258
+ .forEach((col) => {
252
259
  columnsThatNeedRefresh.add(col.columnId);
253
260
  });
254
261
  });
@@ -24,7 +24,7 @@ class FreeTextColumnInternalApi extends ApiBase_1.ApiBase {
24
24
  };
25
25
  this.getFreeTextColumnApi().setStoredValue(freeTextColumn.ColumnId, freeTextStoredValue);
26
26
  var colsToRefresh = [cellDataChangedInfo.column.columnId];
27
- const refencedCalcColumns = this.adaptable.api.calculatedColumnApi.internalApi.getCalculatedColumnsReferencingColumnId(cellDataChangedInfo.column.columnId);
27
+ const refencedCalcColumns = this.getAdaptableApi().calculatedColumnApi.internalApi.getCalculatedColumnsReferencingColumnId(cellDataChangedInfo.column.columnId);
28
28
  refencedCalcColumns.forEach((calculatedColumn) => {
29
29
  colsToRefresh.push(calculatedColumn.ColumnId);
30
30
  });
@@ -47,7 +47,8 @@ class FreeTextColumnInternalApi extends ApiBase_1.ApiBase {
47
47
  return references;
48
48
  }
49
49
  getColDefsForFreeTextColumns() {
50
- const defaultFreeTextColumnSettings = (0, ObjectFactory_1.CreateEmptyFreeTextColumn)().FreeTextColumnSettings;
50
+ const defaultSpecialColumnSettings = this.getGridApi().internalApi.deriveSpecialColumnSettingsFromAgGridDefaultColDef();
51
+ const defaultFreeTextColumnSettings = (0, ObjectFactory_1.CreateEmptyFreeTextColumn)(defaultSpecialColumnSettings).FreeTextColumnSettings;
51
52
  return this.getFreeTextColumnApi()
52
53
  .getFreeTextColumns()
53
54
  .map((freeTextColumn) => {
@@ -78,7 +79,7 @@ class FreeTextColumnInternalApi extends ApiBase_1.ApiBase {
78
79
  enableRowGroup: freeTextColumnSettings.Groupable,
79
80
  sortable: freeTextColumnSettings.Sortable,
80
81
  enablePivot: freeTextColumnSettings.Pivotable,
81
- suppressMenu: freeTextColumnSettings.SuppressMenu,
82
+ suppressHeaderMenuButton: freeTextColumnSettings.SuppressMenu,
82
83
  suppressMovable: freeTextColumnSettings.SuppressMovable,
83
84
  cellEditor: dataTypeEditor !== null && dataTypeEditor !== void 0 ? dataTypeEditor : (freeTextColumn.TextEditor && freeTextColumn.TextEditor == 'Large'
84
85
  ? 'agLargeTextCellEditor'
@@ -1,4 +1,9 @@
1
1
  import { ApiBase } from '../Implementation/ApiBase';
2
+ import { GridFilter } from '../../types';
2
3
  export declare class GridFilterInternalApi extends ApiBase {
3
4
  fireGridFilterAppliedEvent(): void;
5
+ /**
6
+ * Compares to Grid Filters to see if they are identical
7
+ */
8
+ isGridFilterDifferent(oldFilter: GridFilter, newFilter: GridFilter): boolean;
4
9
  }
@@ -7,17 +7,17 @@ class GridFilterInternalApi extends ApiBase_1.ApiBase {
7
7
  if (this.adaptable.isReady) {
8
8
  const currentGridFilter = this.getGridFilterApi().getCurrentGridFilter();
9
9
  const adaptableApi = this.getAdaptableApi();
10
- const gridFilterAppliedInfo = {
11
- gridFilter: currentGridFilter,
12
- gridFilterExpressionAST: currentGridFilter
10
+ const gridFilterAppliedInfo = Object.assign({ gridFilter: currentGridFilter, gridFilterExpressionAST: currentGridFilter
13
11
  ? adaptableApi.expressionApi.getASTForExpression(currentGridFilter === null || currentGridFilter === void 0 ? void 0 : currentGridFilter.Expression)
14
- : null,
15
- adaptableApi: adaptableApi,
16
- userName: adaptableApi.optionsApi.getUserName(),
17
- adaptableId: adaptableApi.optionsApi.getAdaptableId(),
18
- };
12
+ : null }, this.getAdaptableApi().internalApi.buildBaseContext());
19
13
  adaptableApi.eventApi.emit('GridFilterApplied', gridFilterAppliedInfo);
20
14
  }
21
15
  }
16
+ /**
17
+ * Compares to Grid Filters to see if they are identical
18
+ */
19
+ isGridFilterDifferent(oldFilter, newFilter) {
20
+ return (oldFilter === null || oldFilter === void 0 ? void 0 : oldFilter.Expression) === (newFilter === null || newFilter === void 0 ? void 0 : newFilter.Expression);
21
+ }
22
22
  }
23
23
  exports.GridFilterInternalApi = GridFilterInternalApi;
@@ -10,6 +10,7 @@ import { AdaptableMenuItem } from '../../PredefinedConfig/Common/Menu';
10
10
  import { EditLookUpPermittedValues } from '../../AdaptableOptions/UserInterfaceOptions';
11
11
  import { DistinctValuesParams } from '../../AdaptableInterfaces/IAdaptable';
12
12
  import { AdaptableColumnType } from '../../PredefinedConfig/Common/Types';
13
+ import { SpecialColumnSettings } from '../../PredefinedConfig/Common/SpecialColumnSettings';
13
14
  export declare class GridInternalApi extends ApiBase {
14
15
  /**
15
16
  * Fires Grid Sorted Event
@@ -96,4 +97,5 @@ export declare class GridInternalApi extends ApiBase {
96
97
  };
97
98
  getAlertRowClass(params: RowClassParams): string | null;
98
99
  getRowHighlightClass(params: RowClassParams): string | null;
100
+ deriveSpecialColumnSettingsFromAgGridDefaultColDef(): Partial<SpecialColumnSettings>;
99
101
  }
@@ -16,14 +16,9 @@ class GridInternalApi extends ApiBase_1.ApiBase {
16
16
  */
17
17
  fireGridSortedEvent() {
18
18
  if (this.adaptable.isReady) {
19
- const adaptableSortState = this.adaptable.api.configApi.getAdaptableSortState();
19
+ const adaptableSortState = this.getAdaptableApi().configApi.getAdaptableSortState();
20
20
  const adaptableApi = this.getAdaptableApi();
21
- const gridSortedInfo = {
22
- adaptableSortState: adaptableSortState,
23
- adaptableApi: adaptableApi,
24
- userName: adaptableApi.optionsApi.getUserName(),
25
- adaptableId: adaptableApi.optionsApi.getAdaptableId(),
26
- };
21
+ const gridSortedInfo = Object.assign({ adaptableSortState: adaptableSortState }, this.getAdaptableApi().internalApi.buildBaseContext());
27
22
  adaptableApi.eventApi.emit('GridSorted', gridSortedInfo);
28
23
  }
29
24
  }
@@ -32,13 +27,8 @@ class GridInternalApi extends ApiBase_1.ApiBase {
32
27
  */
33
28
  fireCellChangedEvent(cellDataChangedInfo) {
34
29
  if (this.adaptable.isReady) {
35
- const cellChangedInfo = {
36
- adaptableApi: this.adaptable.api,
37
- cellChange: cellDataChangedInfo,
38
- userName: this.adaptable.api.optionsApi.getUserName(),
39
- adaptableId: this.adaptable.api.optionsApi.getAdaptableId(),
40
- };
41
- this.adaptable.api.eventApi.emit('CellChanged', cellChangedInfo);
30
+ const cellChangedInfo = Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { cellChange: cellDataChangedInfo });
31
+ this.getAdaptableApi().eventApi.emit('CellChanged', cellChangedInfo);
42
32
  }
43
33
  }
44
34
  /**
@@ -46,16 +36,10 @@ class GridInternalApi extends ApiBase_1.ApiBase {
46
36
  */
47
37
  fireGridDataChangedEvent(dataRows, rowNodes, rowTrigger) {
48
38
  if (this.adaptable.isReady) {
49
- const gridDataChangedInfo = {
50
- changedAt: Date.now(),
51
- adaptableApi: this.adaptable.api,
52
- rowTrigger,
39
+ const gridDataChangedInfo = Object.assign({ changedAt: Date.now(), rowTrigger,
53
40
  dataRows,
54
- rowNodes,
55
- userName: this.adaptable.api.optionsApi.getUserName(),
56
- adaptableId: this.adaptable.api.optionsApi.getAdaptableId(),
57
- };
58
- this.adaptable.api.eventApi.emit('GridDataChanged', gridDataChangedInfo);
41
+ rowNodes }, this.getAdaptableApi().internalApi.buildBaseContext());
42
+ this.getAdaptableApi().eventApi.emit('GridDataChanged', gridDataChangedInfo);
59
43
  this.adaptable.DataService.CreateGridChangedEvent(gridDataChangedInfo);
60
44
  }
61
45
  }
@@ -100,12 +84,7 @@ class GridInternalApi extends ApiBase_1.ApiBase {
100
84
  let shouldShowValuesCount = false;
101
85
  const showValuesCountFunction = this.getColumnFilterOptions().valuesFilterOptions.showValuesCount;
102
86
  if (showValuesCountFunction) {
103
- const columnFilterContext = {
104
- column: abColumn,
105
- adaptableApi: this.adaptable.api,
106
- userName: this.adaptable.api.optionsApi.getUserName(),
107
- adaptableId: this.adaptable.api.optionsApi.getAdaptableId(),
108
- };
87
+ const columnFilterContext = Object.assign({ column: abColumn }, this.getAdaptableApi().internalApi.buildBaseContext());
109
88
  shouldShowValuesCount = showValuesCountFunction(columnFilterContext);
110
89
  }
111
90
  if (shouldShowValuesCount) {
@@ -143,7 +122,7 @@ class GridInternalApi extends ApiBase_1.ApiBase {
143
122
  };
144
123
  let preparedPermittedValues = undefined;
145
124
  try {
146
- const filterPermittedValuesParams = Object.assign(Object.assign({}, (0, ObjectFactory_1.createBaseContext)(this.adaptable.api)), { column: column, searchFilter: filter });
125
+ const filterPermittedValuesParams = Object.assign(Object.assign({}, (0, ObjectFactory_1.createBaseContext)(this.getAdaptableApi())), { column: column, searchFilter: filter });
147
126
  preparedPermittedValues = await (filterPermittedValues === null || filterPermittedValues === void 0 ? void 0 : filterPermittedValues.values(filterPermittedValuesParams));
148
127
  }
149
128
  catch (error) {
@@ -176,7 +155,7 @@ class GridInternalApi extends ApiBase_1.ApiBase {
176
155
  const customSortPermittedValues = await this.getUserInterfaceApi().getCustomSortPermittedValuesForColumn(column);
177
156
  let preparedPermittedValues = undefined;
178
157
  try {
179
- const permittedValuesParams = Object.assign(Object.assign({}, (0, ObjectFactory_1.createBaseContext)(this.adaptable.api)), { column: column });
158
+ const permittedValuesParams = Object.assign(Object.assign({}, (0, ObjectFactory_1.createBaseContext)(this.getAdaptableApi())), { column: column });
180
159
  preparedPermittedValues = await (customSortPermittedValues === null || customSortPermittedValues === void 0 ? void 0 : customSortPermittedValues.values(permittedValuesParams));
181
160
  }
182
161
  catch (error) {
@@ -207,7 +186,7 @@ class GridInternalApi extends ApiBase_1.ApiBase {
207
186
  const bulkUpdatePermittedValues = await this.getUserInterfaceApi().getBulkUpdatePermittedValuesForColumn(column);
208
187
  let preparedPermittedValues = undefined;
209
188
  try {
210
- const bulkUpdatePermittedValuesParams = Object.assign(Object.assign({}, (0, ObjectFactory_1.createBaseContext)(this.adaptable.api)), { column: column, gridCells: selectedGridCells });
189
+ const bulkUpdatePermittedValuesParams = Object.assign(Object.assign({}, (0, ObjectFactory_1.createBaseContext)(this.getAdaptableApi())), { column: column, gridCells: selectedGridCells });
211
190
  preparedPermittedValues = await (bulkUpdatePermittedValues === null || bulkUpdatePermittedValues === void 0 ? void 0 : bulkUpdatePermittedValues.values(bulkUpdatePermittedValuesParams));
212
191
  }
213
192
  catch (error) {
@@ -284,7 +263,7 @@ class GridInternalApi extends ApiBase_1.ApiBase {
284
263
  // this does NOT into account Custom Sort - far too hard for now...
285
264
  let sortOrder = Enums_1.SortOrder.Asc;
286
265
  if (this.getColumnFilterOptions().valuesFilterOptions.sortValuesFilter) {
287
- let columnSort = this.adaptable.api.gridApi.getColumnSortForColumn(column.columnId);
266
+ let columnSort = this.getAdaptableApi().gridApi.getColumnSortForColumn(column.columnId);
288
267
  if (columnSort && columnSort.SortOrder == 'Desc') {
289
268
  sortOrder = Enums_1.SortOrder.Desc;
290
269
  }
@@ -319,13 +298,7 @@ class GridInternalApi extends ApiBase_1.ApiBase {
319
298
  let editLookUpValues = editLookUpItem.values;
320
299
  // first do the function then get hardcoded items
321
300
  if (editLookUpValues != null && typeof editLookUpValues === 'function') {
322
- const editLookUpContext = {
323
- adaptableApi: this.adaptable.api,
324
- userName: this.getOptions().userName,
325
- adaptableId: this.getOptions().adaptableId,
326
- column: column,
327
- gridCell,
328
- };
301
+ const editLookUpContext = Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { column: column, gridCell });
329
302
  return editLookUpValues(editLookUpContext);
330
303
  }
331
304
  else {
@@ -408,5 +381,20 @@ class GridInternalApi extends ApiBase_1.ApiBase {
408
381
  ? highlightRow.highlightStyle.ClassName
409
382
  : null;
410
383
  }
384
+ deriveSpecialColumnSettingsFromAgGridDefaultColDef() {
385
+ const defaultColumnDefinition = this.adaptable.agGridAdapter.getDefaultColumnDefinition();
386
+ return {
387
+ Filterable: defaultColumnDefinition.filter,
388
+ Resizable: defaultColumnDefinition.resizable,
389
+ Groupable: defaultColumnDefinition.enableRowGroup,
390
+ Sortable: defaultColumnDefinition.sortable,
391
+ Pivotable: defaultColumnDefinition.enablePivot,
392
+ Aggregatable: defaultColumnDefinition.enableValue,
393
+ SuppressMenu: defaultColumnDefinition.suppressHeaderMenuButton,
394
+ SuppressMovable: defaultColumnDefinition.suppressMovable,
395
+ HeaderToolTip: defaultColumnDefinition.headerTooltip,
396
+ Width: defaultColumnDefinition.width,
397
+ };
398
+ }
411
399
  }
412
400
  exports.GridInternalApi = GridInternalApi;
@@ -41,10 +41,12 @@ export declare class LayoutInternalApi extends ApiBase {
41
41
  ColumnFilters: boolean;
42
42
  GridFilter: boolean;
43
43
  ColumnSorts: boolean;
44
+ RowSummaries: boolean;
44
45
  };
45
46
  updateCurrentDraftLayout(layout: Layout): void;
46
47
  hasLayoutSpecificObjects(): boolean;
47
48
  isObjectAvailableInLayout(object: LayoutAssociatedObject, module: AdaptableModule, layout: Layout): boolean;
48
49
  showLayoutNotAssociatedObjects(): boolean;
49
50
  isLayoutGrouped(layout?: Layout): boolean;
51
+ setupRowSummaries(): void;
50
52
  }
@@ -17,19 +17,11 @@ class LayoutInternalApi extends ApiBase_1.ApiBase {
17
17
  * @param newState Layout State after change
18
18
  */
19
19
  fireLayoutChangedEvent(trigger, oldSate, newState, skipEqualityCheck) {
20
- const adaptableApi = this.getAdaptableApi();
21
- const layoutChangedInfo = {
22
- adaptableApi: adaptableApi,
23
- actionName: trigger,
24
- oldLayoutState: oldSate,
25
- newLayoutState: newState,
26
- userName: adaptableApi.optionsApi.getUserName(),
27
- adaptableId: adaptableApi.optionsApi.getAdaptableId(),
28
- };
20
+ const layoutChangedInfo = Object.assign({ actionName: trigger, oldLayoutState: oldSate, newLayoutState: newState }, this.getAdaptableApi().internalApi.buildBaseContext());
29
21
  if (!skipEqualityCheck && (0, isEqual_1.default)(oldSate, newState)) {
30
22
  return;
31
23
  }
32
- this.adaptable.api.eventApi.emit('LayoutChanged', layoutChangedInfo);
24
+ this.getAdaptableApi().eventApi.emit('LayoutChanged', layoutChangedInfo);
33
25
  }
34
26
  /**
35
27
  * Compares 2 Layouts for equality
@@ -70,7 +62,7 @@ class LayoutInternalApi extends ApiBase_1.ApiBase {
70
62
  if (!layoutState.Layouts || !isLayoutDefined(GeneralConstants_1.DEFAULT_LAYOUT)) {
71
63
  // augogroup columns are not in columns list
72
64
  // the code that adds column ok grid state explicitly ignores autoColumns
73
- const allGridColumns = this.adaptable.getAgGridAllGridColumns();
65
+ const allGridColumns = this.getAdaptableApi().gridApi.getAllAgGridColumns();
74
66
  let defaultLayout = ObjectFactory_1.default.CreateEmptyLayout({
75
67
  Name: GeneralConstants_1.DEFAULT_LAYOUT,
76
68
  Columns: defaultLayoutColumns.map((c) => c.columnId),
@@ -114,6 +106,7 @@ class LayoutInternalApi extends ApiBase_1.ApiBase {
114
106
  * This takes into account the data-source.
115
107
  */
116
108
  getLayoutSupportedFeatures() {
109
+ var _a, _b;
117
110
  const layoutSupportedFeatures = {
118
111
  RowGroupedColumns: true,
119
112
  AggregationColumns: true,
@@ -121,6 +114,7 @@ class LayoutInternalApi extends ApiBase_1.ApiBase {
121
114
  ColumnFilters: true,
122
115
  ColumnSorts: true,
123
116
  GridFilter: true,
117
+ RowSummaries: true,
124
118
  };
125
119
  if (this.getGridApi().getAgGridRowModelType() === 'viewport') {
126
120
  layoutSupportedFeatures.RowGroupedColumns = false;
@@ -134,6 +128,9 @@ class LayoutInternalApi extends ApiBase_1.ApiBase {
134
128
  if (this.getEntitlementApi().getEntitlementAccessLevelForModule(ModuleConstants_1.GridFilterModuleId) == 'Hidden') {
135
129
  layoutSupportedFeatures.GridFilter = false;
136
130
  }
131
+ if (((_b = (_a = this.adaptable) === null || _a === void 0 ? void 0 : _a.getAgGridRowModelType) === null || _b === void 0 ? void 0 : _b.call(_a)) !== 'clientSide') {
132
+ layoutSupportedFeatures.RowSummaries = false;
133
+ }
137
134
  return layoutSupportedFeatures;
138
135
  }
139
136
  updateCurrentDraftLayout(layout) {
@@ -159,14 +156,8 @@ class LayoutInternalApi extends ApiBase_1.ApiBase {
159
156
  if ((layoutTagOptions === null || layoutTagOptions === void 0 ? void 0 : layoutTagOptions.autoCheckTagsForLayouts) == true) {
160
157
  return ArrayExtensions_1.default.IsNullOrEmpty(object.Tags) ? true : (_a = object.Tags) === null || _a === void 0 ? void 0 : _a.includes(layout.Name);
161
158
  }
162
- const context = {
163
- adaptableObject: object,
164
- module,
165
- layout,
166
- adaptableApi: this.getAdaptableApi(),
167
- userName: this.getOptions().userName,
168
- adaptableId: this.getOptions().adaptableId,
169
- };
159
+ const context = Object.assign({ adaptableObject: object, module,
160
+ layout }, this.getAdaptableApi().internalApi.buildBaseContext());
170
161
  return layoutTagOptions === null || layoutTagOptions === void 0 ? void 0 : layoutTagOptions.isObjectAvailableInLayout(context);
171
162
  }
172
163
  showLayoutNotAssociatedObjects() {
@@ -179,5 +170,21 @@ class LayoutInternalApi extends ApiBase_1.ApiBase {
179
170
  }
180
171
  return ((_a = layout === null || layout === void 0 ? void 0 : layout.RowGroupedColumns) === null || _a === void 0 ? void 0 : _a.length) > 0;
181
172
  }
173
+ setupRowSummaries() {
174
+ var _a, _b, _c;
175
+ const rowSummaries = (_c = (_b = (_a = this.getAdaptableState().System) === null || _a === void 0 ? void 0 : _a.RowSummary) === null || _b === void 0 ? void 0 : _b.rowSummaries) !== null && _c !== void 0 ? _c : [];
176
+ const { top, bottom } = rowSummaries.reduce((acc, summaryRow) => {
177
+ const row = summaryRow.RowData;
178
+ if (summaryRow.Position === 'Bottom' || !summaryRow.Position) {
179
+ acc.bottom.push(row);
180
+ }
181
+ else {
182
+ acc.top.push(row);
183
+ }
184
+ return acc;
185
+ }, { top: [], bottom: [] });
186
+ this.adaptable.agGridAdapter.setGridOption('pinnedTopRowData', top);
187
+ this.adaptable.agGridAdapter.setGridOption('pinnedBottomRowData', bottom);
188
+ }
182
189
  }
183
190
  exports.LayoutInternalApi = LayoutInternalApi;
@@ -0,0 +1,4 @@
1
+ import { ApiBase } from '../Implementation/ApiBase';
2
+ export declare class NoteInternalApi extends ApiBase {
3
+ areNotesSupported(): boolean;
4
+ }
@@ -1,17 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NotesInternalApi = void 0;
3
+ exports.NoteInternalApi = void 0;
4
4
  const ApiBase_1 = require("../Implementation/ApiBase");
5
- class NotesInternalApi extends ApiBase_1.ApiBase {
6
- areNotesAvailable() {
5
+ class NoteInternalApi extends ApiBase_1.ApiBase {
6
+ areNotesSupported() {
7
+ var _a;
7
8
  const currentLayout = this.getLayoutApi().getCurrentLayout();
8
9
  if (currentLayout.EnablePivot) {
9
10
  return false;
10
11
  }
11
- if (currentLayout.RowGroupedColumns) {
12
+ if ((_a = currentLayout === null || currentLayout === void 0 ? void 0 : currentLayout.RowGroupedColumns) === null || _a === void 0 ? void 0 : _a.length) {
12
13
  return false;
13
14
  }
14
15
  return true;
15
16
  }
16
17
  }
17
- exports.NotesInternalApi = NotesInternalApi;
18
+ exports.NoteInternalApi = NoteInternalApi;
@@ -2,7 +2,7 @@ import { ApiBase } from '../Implementation/ApiBase';
2
2
  import { AdaptablePredicate, AdaptablePredicateDef } from '../../PredefinedConfig/Common/AdaptablePredicate';
3
3
  import { SystemFilterPredicateId } from '../../PredefinedConfig/Common/ColumnFilter';
4
4
  import { AdaptableColumnDataType } from '../../PredefinedConfig/Common/AdaptableColumn';
5
- import { AdaptableScope } from '../../types';
5
+ import { ColumnScope } from '../../types';
6
6
  export declare class PredicateInternalApi extends ApiBase {
7
7
  /**
8
8
  * Returns true if the predicate has a dropdown.
@@ -13,23 +13,23 @@ export declare class PredicateInternalApi extends ApiBase {
13
13
  /**
14
14
  * Get all Filter Predicate Definitions - System and Custom
15
15
  */
16
- getFilterPredicateDefs(scope: AdaptableScope): AdaptablePredicateDef[];
16
+ getFilterPredicateDefs(scope: ColumnScope): AdaptablePredicateDef[];
17
17
  private getSystemFilterPredicateIds;
18
18
  /**
19
19
  * Get all Alert Predicate Definitions - System and Custom
20
20
  */
21
- getAlertPredicateDefs(scope: AdaptableScope): AdaptablePredicateDef[];
21
+ getAlertPredicateDefs(scope: ColumnScope): AdaptablePredicateDef[];
22
22
  private getSystemAlertPredicateIds;
23
23
  private getSystemBadgeStylePredicateIds;
24
24
  /**
25
25
  * Get all Format Column Predicate Definitions - System and Custom
26
26
  */
27
- getFormatColumnPredicateDefs(scope: AdaptableScope): AdaptablePredicateDef[];
27
+ getFormatColumnPredicateDefs(scope: ColumnScope): AdaptablePredicateDef[];
28
28
  private getSystemFormatColumnPredicateIds;
29
29
  /**
30
30
  * Get all Flashing Cell Predicate Definitions - System and Custom
31
31
  */
32
- getFlashingCellPredicateDefs(scope: AdaptableScope): AdaptablePredicateDef[];
32
+ getFlashingCellPredicateDefs(scope: ColumnScope): AdaptablePredicateDef[];
33
33
  private getSystemFlashingCellPredicateIds;
34
34
  /**
35
35
  * Gets the correct Equality-type System Predicate for a particular DataType
@@ -39,7 +39,7 @@ export declare class PredicateInternalApi extends ApiBase {
39
39
  /**
40
40
  * Get all Badge Style Predicate Definitions - System and Custom
41
41
  */
42
- getBadgeStylePredicateDefs(scope: AdaptableScope): AdaptablePredicateDef[];
42
+ getBadgeStylePredicateDefs(scope: ColumnScope): AdaptablePredicateDef[];
43
43
  /**
44
44
  * Merges System and Custom Predicate Definitions but ensures that Custom ones take precedence
45
45
  * (i.e. if there is a Custom Predicate with the same Id as a System one, the Custom one is used)