@adaptabletools/adaptable-cjs 18.0.0-canary.8 → 18.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (438) 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 +10 -4
  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 +15 -14
  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} +36 -26
  30. package/src/Api/CommentApi.d.ts +20 -22
  31. package/src/Api/ConfigApi.d.ts +4 -5
  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 +35 -3
  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} +67 -21
  57. package/src/Api/Implementation/CommentsApiImpl.d.ts +8 -5
  58. package/src/Api/Implementation/CommentsApiImpl.js +10 -5
  59. package/src/Api/Implementation/ConfigApiImpl.d.ts +2 -2
  60. package/src/Api/Implementation/ConfigApiImpl.js +27 -28
  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 -1
  72. package/src/Api/Implementation/GridApiImpl.js +63 -9
  73. package/src/Api/Implementation/LayoutApiImpl.d.ts +4 -11
  74. package/src/Api/Implementation/LayoutApiImpl.js +19 -27
  75. package/src/Api/Implementation/NoteApiImpl.d.ts +18 -0
  76. package/src/Api/Implementation/NoteApiImpl.js +45 -0
  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 +11 -17
  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 +4 -0
  98. package/src/Api/Internal/CommentsInternalApi.js +18 -0
  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 +38 -30
  109. package/src/Api/Internal/FreeTextColumnInternalApi.js +5 -4
  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/NoteInternalApi.js +18 -0
  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 +15 -15
  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/AdaptableColumn.d.ts +4 -0
  136. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
  137. package/src/PredefinedConfig/Common/AdaptableObject.d.ts +4 -4
  138. package/src/PredefinedConfig/Common/AdaptablePredicate.d.ts +2 -2
  139. package/src/PredefinedConfig/Common/CellSummary.d.ts +5 -14
  140. package/src/PredefinedConfig/Common/{AdaptableScope.d.ts → ColumnScope.d.ts} +4 -1
  141. package/src/PredefinedConfig/Common/ColumnScope.js +2 -0
  142. package/src/PredefinedConfig/Common/DataUpdateConfig.d.ts +1 -5
  143. package/src/PredefinedConfig/Common/Enums.d.ts +4 -1
  144. package/src/PredefinedConfig/Common/Enums.js +3 -0
  145. package/src/PredefinedConfig/Common/Fdc3Intent.d.ts +2 -2
  146. package/src/PredefinedConfig/Common/Menu.d.ts +39 -4
  147. package/src/PredefinedConfig/Common/Menu.js +126 -0
  148. package/src/PredefinedConfig/Common/RowScope.d.ts +17 -0
  149. package/src/PredefinedConfig/Common/RowScope.js +2 -0
  150. package/src/PredefinedConfig/Common/RowSummary.d.ts +21 -0
  151. package/src/PredefinedConfig/Common/RowSummary.js +20 -0
  152. package/src/PredefinedConfig/Common/TransposeConfig.d.ts +30 -0
  153. package/src/PredefinedConfig/Common/TransposeConfig.js +2 -0
  154. package/src/PredefinedConfig/Common/Types.d.ts +4 -4
  155. package/src/PredefinedConfig/Common/Types.js +4 -1
  156. package/src/PredefinedConfig/ExportState.d.ts +2 -2
  157. package/src/PredefinedConfig/FlashingCellState.d.ts +2 -2
  158. package/src/PredefinedConfig/FormatColumnState.d.ts +9 -5
  159. package/src/PredefinedConfig/LayoutState.d.ts +6 -1
  160. package/src/PredefinedConfig/{NotesState.d.ts → NoteState.d.ts} +4 -4
  161. package/src/PredefinedConfig/NoteState.js +2 -0
  162. package/src/PredefinedConfig/PlusMinusState.d.ts +2 -2
  163. package/src/PredefinedConfig/PopupState.d.ts +1 -2
  164. package/src/PredefinedConfig/PredefinedConfig.d.ts +2 -2
  165. package/src/PredefinedConfig/Selection/GridCell.d.ts +13 -0
  166. package/src/PredefinedConfig/ShortcutState.d.ts +2 -2
  167. package/src/PredefinedConfig/StyledColumnState.d.ts +5 -5
  168. package/src/PredefinedConfig/SystemState.d.ts +12 -4
  169. package/src/Redux/ActionsReducers/CommentsRedux.d.ts +0 -4
  170. package/src/Redux/ActionsReducers/CommentsRedux.js +1 -39
  171. package/src/Redux/ActionsReducers/LayoutRedux.d.ts +9 -0
  172. package/src/Redux/ActionsReducers/LayoutRedux.js +34 -11
  173. package/src/Redux/ActionsReducers/NoteRedux.d.ts +38 -0
  174. package/src/Redux/ActionsReducers/{NotesRedux.js → NoteRedux.js} +31 -31
  175. package/src/Redux/ActionsReducers/PopupRedux.d.ts +5 -13
  176. package/src/Redux/ActionsReducers/PopupRedux.js +1 -22
  177. package/src/Redux/ActionsReducers/SystemRedux.d.ts +15 -4
  178. package/src/Redux/ActionsReducers/SystemRedux.js +27 -11
  179. package/src/Redux/Store/AdaptableStore.js +47 -29
  180. package/src/Redux/Store/Interface/IAdaptableStore.d.ts +2 -2
  181. package/src/Strategy/AdaptableModuleBase.d.ts +10 -10
  182. package/src/Strategy/AdaptableModuleBase.js +13 -16
  183. package/src/Strategy/AlertModule.d.ts +3 -2
  184. package/src/Strategy/AlertModule.js +4 -4
  185. package/src/Strategy/BulkUpdateModule.d.ts +3 -2
  186. package/src/Strategy/BulkUpdateModule.js +2 -1
  187. package/src/Strategy/CalculatedColumnModule.d.ts +3 -4
  188. package/src/Strategy/CalculatedColumnModule.js +18 -14
  189. package/src/Strategy/CellSummaryModule.d.ts +10 -9
  190. package/src/Strategy/CellSummaryModule.js +101 -83
  191. package/src/Strategy/ColumnFilterModule.d.ts +3 -3
  192. package/src/Strategy/ColumnFilterModule.js +36 -57
  193. package/src/Strategy/ColumnInfoModule.d.ts +3 -3
  194. package/src/Strategy/ColumnInfoModule.js +6 -4
  195. package/src/Strategy/CommentModule.d.ts +12 -0
  196. package/src/Strategy/CommentModule.js +75 -0
  197. package/src/Strategy/CustomSortModule.d.ts +1 -2
  198. package/src/Strategy/CustomSortModule.js +3 -2
  199. package/src/Strategy/DashboardModule.d.ts +3 -3
  200. package/src/Strategy/DashboardModule.js +10 -20
  201. package/src/Strategy/DataImportModule.d.ts +4 -4
  202. package/src/Strategy/DataImportModule.js +8 -8
  203. package/src/Strategy/ExportModule.d.ts +1 -2
  204. package/src/Strategy/ExportModule.js +56 -42
  205. package/src/Strategy/Fdc3Module.d.ts +1 -1
  206. package/src/Strategy/Fdc3Module.js +3 -13
  207. package/src/Strategy/FlashingCellModule.d.ts +4 -3
  208. package/src/Strategy/FlashingCellModule.js +10 -10
  209. package/src/Strategy/FormatColumnModule.d.ts +1 -1
  210. package/src/Strategy/FormatColumnModule.js +29 -47
  211. package/src/Strategy/FreeTextColumnModule.d.ts +1 -2
  212. package/src/Strategy/FreeTextColumnModule.js +2 -2
  213. package/src/Strategy/GridInfoModule.d.ts +3 -3
  214. package/src/Strategy/GridInfoModule.js +5 -3
  215. package/src/Strategy/Interface/IModule.d.ts +4 -4
  216. package/src/Strategy/LayoutModule.d.ts +4 -3
  217. package/src/Strategy/LayoutModule.js +71 -72
  218. package/src/Strategy/NoteModule.d.ts +10 -0
  219. package/src/Strategy/NoteModule.js +60 -0
  220. package/src/Strategy/PlusMinusModule.d.ts +1 -2
  221. package/src/Strategy/PlusMinusModule.js +5 -5
  222. package/src/Strategy/SettingsPanelModule.d.ts +3 -3
  223. package/src/Strategy/SettingsPanelModule.js +6 -6
  224. package/src/Strategy/ShortcutModule.js +1 -1
  225. package/src/Strategy/SmartEditModule.d.ts +3 -2
  226. package/src/Strategy/SmartEditModule.js +2 -1
  227. package/src/Strategy/StyledColumnModule.d.ts +2 -1
  228. package/src/Strategy/StyledColumnModule.js +42 -22
  229. package/src/Strategy/SystemStatusModule.d.ts +3 -3
  230. package/src/Strategy/SystemStatusModule.js +6 -3
  231. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +4 -2
  232. package/src/Strategy/Utilities/getScopeViewItems.d.ts +2 -2
  233. package/src/Strategy/Utilities/getScopeViewItems.js +3 -0
  234. package/src/Utilities/Constants/GeneralConstants.d.ts +1 -0
  235. package/src/Utilities/Constants/GeneralConstants.js +3 -2
  236. package/src/Utilities/Constants/ModuleConstants.d.ts +6 -6
  237. package/src/Utilities/Constants/ModuleConstants.js +7 -7
  238. package/src/Utilities/Defaults/DefaultSettingsPanel.js +2 -2
  239. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +3 -2
  240. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +434 -3
  241. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +3 -3
  242. package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +1 -1
  243. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +1 -1
  244. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +15 -0
  245. package/src/Utilities/Extensions/ArrayExtensions.d.ts +2 -0
  246. package/src/Utilities/Extensions/ArrayExtensions.js +6 -1
  247. package/src/Utilities/Helpers/AdaptableHelper.d.ts +3 -1
  248. package/src/Utilities/Helpers/AdaptableHelper.js +21 -1
  249. package/src/Utilities/Interface/MessagePopups.d.ts +0 -3
  250. package/src/Utilities/MenuItem.d.ts +10 -7
  251. package/src/Utilities/MenuItem.js +6 -3
  252. package/src/Utilities/ObjectFactory.d.ts +3 -3
  253. package/src/Utilities/ObjectFactory.js +7 -25
  254. package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +4 -2
  255. package/src/Utilities/Services/AggregatedScalarLiveValue.js +23 -18
  256. package/src/Utilities/Services/CellPopupService.js +4 -4
  257. package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +1 -1
  258. package/src/Utilities/Services/Interface/IReportService.d.ts +1 -4
  259. package/src/Utilities/Services/LicenseService/index.js +1 -195
  260. package/src/Utilities/Services/ModuleService.js +6 -2
  261. package/src/Utilities/Services/QueryLanguageService.d.ts +1 -1
  262. package/src/Utilities/Services/QueryLanguageService.js +4 -3
  263. package/src/Utilities/Services/ReportService.d.ts +7 -5
  264. package/src/Utilities/Services/ReportService.js +245 -26
  265. package/src/Utilities/Services/RowSummaryService.d.ts +26 -0
  266. package/src/Utilities/Services/RowSummaryService.js +160 -0
  267. package/src/Utilities/Services/ValidationService.js +2 -2
  268. package/src/Utilities/adaptableQlUtils.d.ts +2 -0
  269. package/src/Utilities/adaptableQlUtils.js +18 -0
  270. package/src/Utilities/license/decode.js +1 -70
  271. package/src/Utilities/license/hashing.js +1 -47
  272. package/src/View/AdaptableViewFactory.js +2 -2
  273. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +1 -1
  274. package/src/View/Alert/AlertEntityRow.js +1 -1
  275. package/src/View/Alert/Utilities/getAvailablePredicates.d.ts +2 -2
  276. package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +1 -1
  277. package/src/View/Alert/Wizard/AlertScopeWizardSection.js +2 -2
  278. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +1 -1
  279. package/src/View/BulkUpdate/BulkUpdatePopup.js +2 -2
  280. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.d.ts +1 -1
  281. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +3 -3
  282. package/src/View/ColumnInfo/ColumnInfo.js +1 -1
  283. package/src/View/Comments/CommentsEditor.js +28 -17
  284. package/src/View/Comments/CommentsPopup.js +15 -7
  285. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  286. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.d.ts +5 -0
  287. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.js +46 -0
  288. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +5 -2
  289. package/src/View/Components/CellPopup/index.d.ts +1 -0
  290. package/src/View/Components/CellPopup/index.js +6 -3
  291. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.d.ts +3 -3
  292. package/src/View/Components/EntityRulesEditor/index.d.ts +3 -3
  293. package/src/View/Components/FilterForm/FilterForm.js +20 -12
  294. package/src/View/Components/FilterForm/QuickFilterForm.js +15 -8
  295. package/src/View/Components/FilterForm/QuickFilterValues.js +39 -23
  296. package/src/View/Components/NewScopeComponent.d.ts +5 -5
  297. package/src/View/Components/NewScopeComponent.js +36 -3
  298. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +4 -1
  299. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +10 -1
  300. package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +7 -10
  301. package/src/View/Components/RangesComponent.d.ts +2 -2
  302. package/src/View/Components/RangesComponent.js +1 -1
  303. package/src/View/Components/Selectors/PermittedValuesSelector.js +1 -1
  304. package/src/View/Components/SharedProps/WizardScopeState.d.ts +2 -2
  305. package/src/View/Components/ValueSelector/index.d.ts +1 -0
  306. package/src/View/Components/ValueSelector/index.js +2 -2
  307. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +1 -1
  308. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +4 -2
  309. package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -1
  310. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +2 -2
  311. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +20 -7
  312. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +1 -1
  313. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +1 -1
  314. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +27 -12
  315. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +1 -1
  316. package/src/View/FreeTextColumn/FreeTextColumnSummary.js +1 -1
  317. package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +3 -1
  318. package/src/View/GridFilter/GridFilterViewPanel.js +3 -3
  319. package/src/View/GridFilter/useGridFilterExpressionEditor.js +1 -1
  320. package/src/View/Layout/LayoutViewPanel.js +2 -1
  321. package/src/View/Layout/TransposedPopup.js +27 -25
  322. package/src/View/Layout/Wizard/LayoutWizard.js +38 -3
  323. package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -1
  324. package/src/View/Layout/Wizard/sections/FilterSection.js +1 -1
  325. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +18 -2
  326. package/src/View/Layout/Wizard/sections/RowSummarySection.d.ts +9 -0
  327. package/src/View/Layout/Wizard/sections/RowSummarySection.js +181 -0
  328. package/src/View/License/LicenseWatermark.js +1 -66
  329. package/src/View/Note/NotePopup.d.ts +2 -0
  330. package/src/View/{Notes/NotesPopup.js → Note/NotePopup.js} +16 -11
  331. package/src/View/PlusMinus/PlusMinusSummary.js +2 -2
  332. package/src/View/SmartEdit/SmartEditPopup.js +1 -1
  333. package/src/View/SpecialColumnSettingsWizardStep.js +4 -4
  334. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +5 -7
  335. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +1 -1
  336. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +1 -1
  337. package/src/View/StyledColumn/Wizard/StyledColumnWizardSettingsSection.js +38 -14
  338. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +1 -1
  339. package/src/agGrid/ActionColumnRenderer.js +40 -4
  340. package/src/agGrid/AdaptableAgGrid.d.ts +21 -12
  341. package/src/agGrid/AdaptableAgGrid.js +313 -225
  342. package/src/agGrid/AgGridAdapter.d.ts +5 -2
  343. package/src/agGrid/AgGridAdapter.js +20 -0
  344. package/src/agGrid/AgGridColumnAdapter.d.ts +1 -3
  345. package/src/agGrid/AgGridColumnAdapter.js +52 -70
  346. package/src/agGrid/AgGridMenuAdapter.d.ts +25 -8
  347. package/src/agGrid/AgGridMenuAdapter.js +405 -74
  348. package/src/agGrid/AgGridOptionsService.d.ts +4 -1
  349. package/src/agGrid/AgGridOptionsService.js +22 -0
  350. package/src/agGrid/BadgeRenderer.d.ts +2 -2
  351. package/src/agGrid/BadgeRenderer.js +24 -11
  352. package/src/agGrid/PercentBarRenderer.js +2 -1
  353. package/src/agGrid/buildSortedColumnStateForLayout.d.ts +7 -0
  354. package/src/agGrid/buildSortedColumnStateForLayout.js +124 -0
  355. package/src/agGrid/defaultAdaptableOptions.js +7 -12
  356. package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +1 -1
  357. package/src/agGrid/editors/AdaptableDateEditor/index.js +1 -1
  358. package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +2 -2
  359. package/src/agGrid/sortColumnStateForVisibleColumns.d.ts +12 -0
  360. package/src/agGrid/sortColumnStateForVisibleColumns.js +50 -0
  361. package/src/agGrid/weightedAverage.d.ts +0 -2
  362. package/src/agGrid/weightedAverage.js +1 -56
  363. package/src/components/Accordion.d.ts +7 -0
  364. package/src/components/Accordion.js +41 -0
  365. package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
  366. package/src/components/Datepicker/index.d.ts +1 -1
  367. package/src/components/Datepicker/index.js +10 -2
  368. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -1
  369. package/src/components/ExpressionEditor/QueryBuilder/utils.d.ts +0 -1
  370. package/src/components/ExpressionEditor/QueryBuilder/utils.js +3 -17
  371. package/src/components/Input/index.d.ts +1 -2
  372. package/src/components/List/ListGroupItem/index.d.ts +1 -1
  373. package/src/components/ProgressIndicator/ProgressIndicator.js +15 -6
  374. package/src/components/Select/Select.d.ts +1 -1
  375. package/src/components/Select/Select.js +3 -1
  376. package/src/components/Textarea/index.d.ts +2 -2
  377. package/src/components/icons/collapse-all.d.ts +3 -0
  378. package/src/components/icons/collapse-all.js +7 -0
  379. package/src/components/icons/copy.d.ts +3 -0
  380. package/src/components/icons/copy.js +7 -0
  381. package/src/components/icons/csv.d.ts +3 -0
  382. package/src/components/icons/csv.js +7 -0
  383. package/src/components/icons/data-object.d.ts +3 -0
  384. package/src/components/icons/data-object.js +7 -0
  385. package/src/components/icons/excel.d.ts +3 -0
  386. package/src/components/icons/excel.js +8 -0
  387. package/src/components/icons/expand-all.d.ts +3 -0
  388. package/src/components/icons/expand-all.js +7 -0
  389. package/src/components/icons/filter-off.d.ts +3 -0
  390. package/src/components/icons/filter-off.js +7 -0
  391. package/src/components/icons/grid-info.d.ts +3 -0
  392. package/src/components/icons/grid-info.js +7 -0
  393. package/src/components/icons/index.js +24 -0
  394. package/src/components/icons/note.js +2 -2
  395. package/src/components/icons/rows.d.ts +3 -0
  396. package/src/components/icons/rows.js +7 -0
  397. package/src/components/icons/select-all.d.ts +3 -0
  398. package/src/components/icons/select-all.js +7 -0
  399. package/src/components/icons/select-fwd.d.ts +3 -0
  400. package/src/components/icons/select-fwd.js +7 -0
  401. package/src/components/icons/select-off.d.ts +3 -0
  402. package/src/components/icons/select-off.js +7 -0
  403. package/src/env.js +2 -2
  404. package/src/metamodel/adaptable.metamodel.d.ts +230 -116
  405. package/src/metamodel/adaptable.metamodel.js +1 -9411
  406. package/src/parser/src/parser.js +576 -553
  407. package/src/parser/src/predicate/mapExpressionToQlPredicate.js +1 -1
  408. package/src/parser/src/predicate/mapQlPredicateToExpression.js +3 -4
  409. package/src/parser/src/types.d.ts +7 -2
  410. package/src/parser/src/types.js +1 -2
  411. package/src/types.d.ts +32 -25
  412. package/tsconfig.cjs.tsbuildinfo +1 -1
  413. package/src/AdaptableOptions/MenuOptions.d.ts +0 -234
  414. package/src/AdaptableOptions/MenuOptions.js +0 -99
  415. package/src/Api/Events/CommentsChangedInfo.d.ts +0 -5
  416. package/src/Api/Implementation/NotesApiImpl.d.ts +0 -14
  417. package/src/Api/Implementation/NotesApiImpl.js +0 -40
  418. package/src/Api/Implementation/ScopeApiImpl.d.ts +0 -31
  419. package/src/Api/NotesApi.d.ts +0 -48
  420. package/src/PredefinedConfig/CellAddress.d.ts +0 -13
  421. package/src/PredefinedConfig/CellAddress.js +0 -5
  422. package/src/Redux/ActionsReducers/NotesRedux.d.ts +0 -38
  423. package/src/Strategy/CommentsModule.d.ts +0 -17
  424. package/src/Strategy/CommentsModule.js +0 -83
  425. package/src/Strategy/NotesModule.d.ts +0 -10
  426. package/src/Strategy/NotesModule.js +0 -62
  427. package/src/View/Components/ScopeComponent.d.ts +0 -24
  428. package/src/View/Components/ScopeComponent.js +0 -138
  429. package/src/View/Export/Wizard/ReportScopeWizard.d.ts +0 -17
  430. package/src/View/Export/Wizard/ReportScopeWizard.js +0 -52
  431. package/src/View/Notes/NotesPopup.d.ts +0 -2
  432. /package/src/{Api/Events/CommentsChangedInfo.js → AdaptableOptions/ColumnMenuOptions.js} +0 -0
  433. /package/src/{Api/NotesApi.js → AdaptableOptions/ContextMenuOptions.js} +0 -0
  434. /package/src/Api/{ScopeApi.js → ColumnMenuApi.js} +0 -0
  435. /package/src/{PredefinedConfig/Common/AdaptableScope.js → Api/ColumnScopeApi.js} +0 -0
  436. /package/src/{PredefinedConfig/NotesState.js → Api/ContextMenuApi.js} +0 -0
  437. /package/src/View/{Notes → Note}/NoteEditor.d.ts +0 -0
  438. /package/src/View/{Notes → Note}/NoteEditor.js +0 -0
@@ -12,7 +12,7 @@ const AlertRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/Ale
12
12
  const BulkUpdateRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/BulkUpdateRedux"));
13
13
  const CalculatedColumnRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/CalculatedColumnRedux"));
14
14
  const ChartingRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/ChartingRedux"));
15
- const NotesRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/NotesRedux"));
15
+ const NoteRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/NoteRedux"));
16
16
  const CustomSortRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/CustomSortRedux"));
17
17
  const ExportRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/ExportRedux"));
18
18
  const FormatColumnRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/FormatColumnRedux"));
@@ -66,15 +66,9 @@ class ConfigApiImpl extends ApiBase_1.ApiBase {
66
66
  flushCurrentState: false,
67
67
  }).then(() => {
68
68
  const newState = this.getPersistedState();
69
- const stateReloadedInfo = {
70
- oldState,
71
- newState,
72
- adaptableStateKey: adaptableOptions.adaptableStateKey,
73
- adaptableId: adaptableOptions.adaptableId,
74
- adaptableApi: this.adaptable.api,
75
- userName: this.adaptable.api.optionsApi.getUserName(),
76
- };
77
- this.adaptable.api.eventApi.emit('AdaptableStateReloaded', stateReloadedInfo);
69
+ const stateReloadedInfo = Object.assign({ oldState,
70
+ newState, adaptableStateKey: adaptableOptions.adaptableStateKey }, this.getAdaptableApi().internalApi.buildBaseContext());
71
+ this.getAdaptableApi().eventApi.emit('AdaptableStateReloaded', stateReloadedInfo);
78
72
  });
79
73
  });
80
74
  });
@@ -97,21 +91,21 @@ class ConfigApiImpl extends ApiBase_1.ApiBase {
97
91
  });
98
92
  }
99
93
  getAdaptableSearchState() {
100
- const gridFilter = this.adaptable.api.gridFilterApi.getCurrentGridFilterExpression();
94
+ const gridFilter = this.getAdaptableApi().gridFilterApi.getCurrentGridFilterExpression();
101
95
  const adaptableSearchState = {
102
- dataSet: this.adaptable.api.dataSetApi.getCurrentDataSet(),
96
+ dataSet: this.getAdaptableApi().dataSetApi.getCurrentDataSet(),
103
97
  gridFilter: gridFilter,
104
98
  gridFilterAST: gridFilter
105
- ? this.adaptable.api.expressionApi.getASTForExpression(gridFilter)
99
+ ? this.getAdaptableApi().expressionApi.getASTForExpression(gridFilter)
106
100
  : null,
107
- columnFilters: this.adaptable.api.columnFilterApi.getColumnFilters(),
101
+ columnFilters: this.getAdaptableApi().columnFilterApi.getColumnFilters(),
108
102
  };
109
103
  return adaptableSearchState;
110
104
  }
111
105
  getAdaptableSortState() {
112
106
  const adaptableSortState = {
113
- columnSorts: this.adaptable.api.gridApi.getColumnSorts(),
114
- customSorts: this.adaptable.api.customSortApi.getCustomSorts(),
107
+ columnSorts: this.getAdaptableApi().gridApi.getColumnSorts(),
108
+ customSorts: this.getAdaptableApi().customSortApi.getCustomSorts(),
115
109
  };
116
110
  return adaptableSortState;
117
111
  }
@@ -120,7 +114,7 @@ class ConfigApiImpl extends ApiBase_1.ApiBase {
120
114
  }
121
115
  setAdaptableStateKey(adaptableStateKey, config) {
122
116
  return new Promise((resolve, reject) => {
123
- this.adaptable.api.internalApi.executeWithProgressIndicator(`Initialising...`, () => {
117
+ this.getAdaptableApi().internalApi.executeWithProgressIndicator(`Initialising...`, () => {
124
118
  const flushCurrentState = !config || config.flushCurrentState !== false;
125
119
  // make sure we persist any "pending" changes to state - since stateOptions.debounceStateDelay can cause
126
120
  // the state to be persisted with a delay, which we dont want in this case
@@ -137,19 +131,24 @@ class ConfigApiImpl extends ApiBase_1.ApiBase {
137
131
  adaptable: this.adaptable,
138
132
  adaptableStateKey,
139
133
  predefinedConfig,
134
+ postLoadHook: (state) => {
135
+ return this.adaptable.normalizeAdaptableState(state, this.adaptable.agGridAdapter.getLiveGridOptions());
136
+ },
140
137
  });
141
138
  promise
142
139
  .then(() => {
143
- this.adaptable.updateColumnModelAndRefreshGrid();
140
+ this.adaptable.updateColumnModelAndRefreshGrid({ skipColDefsRefresh: true });
144
141
  this.adaptable.setLayout();
145
- this.adaptable.api.userInterfaceApi.hideLoadingScreen();
146
142
  })
147
143
  .then(() => {
148
144
  // resolve main(result) promise
149
145
  resolve();
150
- }, () => {
146
+ }, (error) => {
151
147
  // reject main(result) promise
152
- reject();
148
+ reject(error);
149
+ })
150
+ .catch((e) => {
151
+ this.logError('Error setting Adaptable State Key', e);
153
152
  });
154
153
  });
155
154
  });
@@ -179,10 +178,10 @@ class ConfigApiImpl extends ApiBase_1.ApiBase {
179
178
  return returnJson
180
179
  ? JSON.stringify(this.getAdaptableState().Charting)
181
180
  : this.getAdaptableState().Charting;
182
- case 'Notes':
181
+ case 'Note':
183
182
  return returnJson
184
- ? JSON.stringify(this.getAdaptableState().Notes)
185
- : this.getAdaptableState().Notes;
183
+ ? JSON.stringify(this.getAdaptableState().Note)
184
+ : this.getAdaptableState().Note;
186
185
  case 'CustomSort':
187
186
  return returnJson
188
187
  ? JSON.stringify(this.getAdaptableState().CustomSort)
@@ -259,8 +258,8 @@ class ConfigApiImpl extends ApiBase_1.ApiBase {
259
258
  getChartingState(returnJson = false) {
260
259
  return this.getUserStateByStateKey('Charting', returnJson);
261
260
  }
262
- getNotesState(returnJson = false) {
263
- return this.getUserStateByStateKey('Notes', returnJson);
261
+ getNoteState(returnJson = false) {
262
+ return this.getUserStateByStateKey('Note', returnJson);
264
263
  }
265
264
  getCustomSortState(returnJson = false) {
266
265
  return this.getUserStateByStateKey('CustomSort', returnJson);
@@ -315,8 +314,8 @@ class ConfigApiImpl extends ApiBase_1.ApiBase {
315
314
  case 'Charting':
316
315
  this.dispatchAction(ChartingRedux.ChartingReady(this.getChartingState()));
317
316
  break;
318
- case 'Notes':
319
- this.dispatchAction(NotesRedux.NotesReady(this.getNotesState()));
317
+ case 'Note':
318
+ this.dispatchAction(NoteRedux.NoteReady(this.getNoteState()));
320
319
  break;
321
320
  case 'CustomSort':
322
321
  this.dispatchAction(CustomSortRedux.CustomSortReady(this.getCustomSortState()));
@@ -0,0 +1,7 @@
1
+ import { ApiBase } from './ApiBase';
2
+ import { ContextMenuApi } from '../ContextMenuApi';
3
+ import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
4
+ export declare class ContextMenuApiImpl extends ApiBase implements ContextMenuApi {
5
+ constructor(adaptable: IAdaptable);
6
+ hideContextMenu(): void;
7
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ContextMenuApiImpl = void 0;
4
+ const ApiBase_1 = require("./ApiBase");
5
+ class ContextMenuApiImpl extends ApiBase_1.ApiBase {
6
+ constructor(adaptable) {
7
+ super(adaptable);
8
+ }
9
+ hideContextMenu() {
10
+ this.adaptable.agGridAdapter.getAgGridApi().hidePopupMenu();
11
+ }
12
+ }
13
+ exports.ContextMenuApiImpl = ContextMenuApiImpl;
@@ -24,12 +24,7 @@ class DashboardApiImpl extends ApiBase_1.ApiBase {
24
24
  }
25
25
  getCustomDashboardButtonByLabel(buttonLabel) {
26
26
  const api = this.getAdaptableApi();
27
- const dashboardContext = {
28
- adaptableApi: api,
29
- userName: this.getOptions().userName,
30
- adaptableId: this.getOptions().adaptableId,
31
- dashboardState: api.dashboardApi.getDashboardState(),
32
- };
27
+ const dashboardContext = Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { dashboardState: api.dashboardApi.getDashboardState() });
33
28
  return this.getDashboardOptions().customDashboardButtons.find((cb) => {
34
29
  api.internalApi.getLabelForButton(cb, dashboardContext) == buttonLabel;
35
30
  });
@@ -48,13 +48,13 @@ class ExportApiImpl extends ApiBase_1.ApiBase {
48
48
  return currentDestination && this.getDestinationByName(currentDestination);
49
49
  }
50
50
  getAvailableSystemReports() {
51
- return this.getExportOptions().systemReportNames.filter((s) => this.adaptable.api.internalApi.getReportService().IsSystemReportActive(s));
51
+ return this.getExportOptions().systemReportNames.filter((s) => this.getAdaptableApi().internalApi.getReportService().IsSystemReportActive(s));
52
52
  }
53
53
  getAvailableExportDestinations() {
54
54
  let systemDestinations = [];
55
55
  this.getExportOptions().systemExportDestinations.forEach((exportDestination) => {
56
- if (this.adaptable.api.internalApi
57
- .getReportService()
56
+ if (this.getAdaptableApi()
57
+ .internalApi.getReportService()
58
58
  .IsSystemExportDestinationActive(exportDestination)) {
59
59
  systemDestinations.push(exportDestination);
60
60
  }
@@ -147,17 +147,12 @@ class ExportApiImpl extends ApiBase_1.ApiBase {
147
147
  this.logWarn(`Report '${reportName}' not found!`);
148
148
  return undefined;
149
149
  }
150
- return this.adaptable.api.internalApi.getReportService().getReportData(report);
150
+ return this.getAdaptableApi().internalApi.getReportService().getReportData(report);
151
151
  }
152
152
  isColumnExportable(adaptableColumn) {
153
153
  const isExportableFn = this.getExportOptions().isColumnExportable;
154
154
  if (typeof isExportableFn === 'function') {
155
- return isExportableFn({
156
- adaptableApi: this.adaptable.api,
157
- userName: this.getOptions().userName,
158
- adaptableId: this.getOptions().adaptableId,
159
- adaptableColumn,
160
- });
155
+ return isExportableFn(Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { adaptableColumn }));
161
156
  }
162
157
  return true;
163
158
  }
@@ -11,8 +11,8 @@ class ExpressionApiImpl extends ApiBase_1.ApiBase {
11
11
  this.internalApi = new ExpressionInternalApi_1.ExpressionInternalApi(adaptable);
12
12
  }
13
13
  isValidBooleanExpression(query, module, validationErrorMessage) {
14
- const { isValid, errorMessage } = this.adaptable.api.internalApi
15
- .getQueryLanguageService()
14
+ const { isValid, errorMessage } = this.getAdaptableApi()
15
+ .internalApi.getQueryLanguageService()
16
16
  .validateBoolean(query, module, { force: true });
17
17
  if (!isValid && validationErrorMessage) {
18
18
  this.logWarn(`${validationErrorMessage} :: ${errorMessage}`);
@@ -20,8 +20,8 @@ class ExpressionApiImpl extends ApiBase_1.ApiBase {
20
20
  return isValid;
21
21
  }
22
22
  isValidObservableExpression(expression, module, validationErrorMessage) {
23
- const { isValid, errorMessage } = this.adaptable.api.internalApi
24
- .getQueryLanguageService()
23
+ const { isValid, errorMessage } = this.getAdaptableApi()
24
+ .internalApi.getQueryLanguageService()
25
25
  .validateObservable(expression, module);
26
26
  if (!isValid && validationErrorMessage) {
27
27
  this.logWarn(`${validationErrorMessage} :: ${errorMessage}`);
@@ -29,8 +29,8 @@ class ExpressionApiImpl extends ApiBase_1.ApiBase {
29
29
  return isValid;
30
30
  }
31
31
  isValidAggregatedBooleanExpression(expression, module, validationErrorMessage) {
32
- const { isValid, errorMessage } = this.adaptable.api.internalApi
33
- .getQueryLanguageService()
32
+ const { isValid, errorMessage } = this.getAdaptableApi()
33
+ .internalApi.getQueryLanguageService()
34
34
  .validateAggregatedBoolean(expression, module);
35
35
  if (!isValid && validationErrorMessage) {
36
36
  this.logWarn(`${validationErrorMessage} :: ${errorMessage}`);
@@ -38,8 +38,8 @@ class ExpressionApiImpl extends ApiBase_1.ApiBase {
38
38
  return isValid;
39
39
  }
40
40
  isValidAggregatedScalarExpression(expression, module, validationErrorMessage) {
41
- const { isValid, errorMessage } = this.adaptable.api.internalApi
42
- .getQueryLanguageService()
41
+ const { isValid, errorMessage } = this.getAdaptableApi()
42
+ .internalApi.getQueryLanguageService()
43
43
  .validateAggregatedScalar(expression, module);
44
44
  if (!isValid && validationErrorMessage) {
45
45
  this.logWarn(`${validationErrorMessage} :: ${errorMessage}`);
@@ -51,11 +51,11 @@ class ExpressionApiImpl extends ApiBase_1.ApiBase {
51
51
  }
52
52
  getColumnsFromExpression(expression) {
53
53
  try {
54
- const columnIds = this.adaptable.api.internalApi
55
- .getQueryLanguageService()
54
+ const columnIds = this.getAdaptableApi()
55
+ .internalApi.getQueryLanguageService()
56
56
  .getColumnsFromExpression(expression);
57
57
  columnIds.forEach((columnId) => {
58
- const calculatedColumn = this.adaptable.api.calculatedColumnApi.getCalculatedColumnForColumnId(columnId);
58
+ const calculatedColumn = this.getAdaptableApi().calculatedColumnApi.getCalculatedColumnForColumnId(columnId);
59
59
  if (calculatedColumn) {
60
60
  const transitiveColumnIds = this.getColumnsFromExpression(this.getAdaptableQueryExpression(calculatedColumn.Query));
61
61
  columnIds.push(...transitiveColumnIds);
@@ -73,12 +73,7 @@ class ExpressionApiImpl extends ApiBase_1.ApiBase {
73
73
  isColumnQueryable(adaptableColumnBase) {
74
74
  let queryableColumnFn = this.getExpressionOptions().isColumnQueryable;
75
75
  if (queryableColumnFn) {
76
- const queryableColumnContext = {
77
- adaptableColumn: adaptableColumnBase,
78
- adaptableApi: this.getAdaptableApi(),
79
- userName: this.getOptions().userName,
80
- adaptableId: this.getOptions().adaptableId,
81
- };
76
+ const queryableColumnContext = Object.assign({ adaptableColumn: adaptableColumnBase }, this.getAdaptableApi().internalApi.buildBaseContext());
82
77
  return queryableColumnFn(queryableColumnContext);
83
78
  }
84
79
  return true;
@@ -88,8 +83,8 @@ class ExpressionApiImpl extends ApiBase_1.ApiBase {
88
83
  return ((_d = (_c = (_b = (_a = query.BooleanExpression) !== null && _a !== void 0 ? _a : query.ScalarExpression) !== null && _b !== void 0 ? _b : query.ObservableExpression) !== null && _c !== void 0 ? _c : query.AggregatedBooleanExpression) !== null && _d !== void 0 ? _d : query.AggregatedScalarExpression);
89
84
  }
90
85
  getAdaptableQueryExpressionWithColumnFriendlyNames(query) {
91
- return this.adaptable.api.internalApi
92
- .getQueryLanguageService()
86
+ return this.getAdaptableApi()
87
+ .internalApi.getQueryLanguageService()
93
88
  .getExpressionWithColumnFriendlyNames(this.getAdaptableQueryExpression(query));
94
89
  }
95
90
  useCaseSensitivity() {
@@ -79,7 +79,7 @@ class Fdc3ApiImpl extends ApiBase_1.ApiBase {
79
79
  return this.internalApi.isStandardIntentType(intentType);
80
80
  }
81
81
  getFdc3Service() {
82
- return this.adaptable.api.internalApi.getFdc3Service();
82
+ return this.getAdaptableApi().internalApi.getFdc3Service();
83
83
  }
84
84
  }
85
85
  exports.Fdc3ApiImpl = Fdc3ApiImpl;
@@ -3,7 +3,7 @@ import { AdaptableFlashingCell } from '../../PredefinedConfig/Common/AdaptableFl
3
3
  import { FlashingCellApi } from '../FlashingCellApi';
4
4
  import { FlashingCellDefinition, FlashingCellState } from '../../PredefinedConfig/FlashingCellState';
5
5
  import { AdaptablePredicateDef } from '../../PredefinedConfig/Common/AdaptablePredicate';
6
- import { AdaptableScope } from '../../PredefinedConfig/Common/AdaptableScope';
6
+ import { ColumnScope } from '../../PredefinedConfig/Common/ColumnScope';
7
7
  import { FlashingCellInternalApi } from '../Internal/FlashingCellInternalApi';
8
8
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
9
9
  import { AdaptableObjectLookupCriteria } from '../../types';
@@ -23,7 +23,7 @@ export declare class FlashingCellApiImpl extends ApiBase implements FlashingCell
23
23
  unSuspendFlashingCellDefinition(flashingCellDefinition: FlashingCellDefinition): FlashingCellDefinition;
24
24
  addFlashingCellDefinitions(flashingCellDefinitions: FlashingCellDefinition[]): FlashingCellDefinition[];
25
25
  editFlashingCellDefinitions(flashingCellDefinitions: FlashingCellDefinition[]): FlashingCellDefinition[];
26
- getFlashingCellPredicateDefsForScope(scope: AdaptableScope): AdaptablePredicateDef[];
26
+ getFlashingCellPredicateDefsForScope(scope: ColumnScope): AdaptablePredicateDef[];
27
27
  clearAllFlashingCells(): void;
28
28
  isAnyFlashingCellActive(): boolean;
29
29
  findFlashingCellDefinitions(criteria: AdaptableObjectLookupCriteria): FlashingCellDefinition[];
@@ -34,13 +34,8 @@ class FlashingCellApiImpl extends ApiBase_1.ApiBase {
34
34
  }
35
35
  showFlashingCell(flashingCellToShow) {
36
36
  this.addUidToAdaptableObject(flashingCellToShow);
37
- const flashingCellFiredInfo = {
38
- adaptableApi: this.adaptable.api,
39
- flashingCell: flashingCellToShow,
40
- userName: this.adaptable.api.optionsApi.getUserName(),
41
- adaptableId: this.adaptable.api.optionsApi.getAdaptableId(),
42
- };
43
- const results = this.adaptable.api.eventApi.emitSync('FlashingCellDisplayed', flashingCellFiredInfo);
37
+ const flashingCellFiredInfo = Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { flashingCell: flashingCellToShow });
38
+ const results = this.getAdaptableApi().eventApi.emitSync('FlashingCellDisplayed', flashingCellFiredInfo);
44
39
  const shouldShow = results.reduce((endResult, aResult) => {
45
40
  return endResult && aResult !== false;
46
41
  }, true);
@@ -88,7 +83,7 @@ class FlashingCellApiImpl extends ApiBase_1.ApiBase {
88
83
  getFlashingCellPredicateDefsForScope(scope) {
89
84
  return this.getAdaptableApi()
90
85
  .predicateApi.internalApi.getFlashingCellPredicateDefs(scope)
91
- .filter((predicateDef) => this.adaptable.api.scopeApi.isScopeInScope(scope, predicateDef.columnScope));
86
+ .filter((predicateDef) => this.getAdaptableApi().columnScopeApi.isScopeInScope(scope, predicateDef.columnScope));
92
87
  }
93
88
  clearAllFlashingCells() {
94
89
  this.dispatchAction(SystemRedux.SystemFlashingCellDeleteAll());
@@ -69,7 +69,7 @@ class FormatColumnApiImpl extends ApiBase_1.ApiBase {
69
69
  return this.internalApi.getFormatColumnWithColumnInScope(formatColumns, column);
70
70
  }
71
71
  getFormatColumnsForColumnId(columnId, config) {
72
- const abColumn = this.adaptable.api.columnApi.getColumnWithColumnId(columnId);
72
+ const abColumn = this.getAdaptableApi().columnApi.getColumnWithColumnId(columnId);
73
73
  if (!abColumn) {
74
74
  return [];
75
75
  }
@@ -79,13 +79,13 @@ class FormatColumnApiImpl extends ApiBase_1.ApiBase {
79
79
  this.showModulePopup(ModuleConstants.FormatColumnModuleId);
80
80
  }
81
81
  getFormatColumnsWithAllScope(formatColumns) {
82
- return formatColumns.filter((fc) => this.adaptable.api.scopeApi.scopeIsAll(fc.Scope));
82
+ return formatColumns.filter((fc) => this.getAdaptableApi().columnScopeApi.scopeIsAll(fc.Scope));
83
83
  }
84
84
  getFormatColumnsWithDataTypeScope(formatColumns) {
85
- return formatColumns.filter((fc) => this.adaptable.api.scopeApi.scopeHasDataType(fc.Scope));
85
+ return formatColumns.filter((fc) => this.getAdaptableApi().columnScopeApi.scopeHasDataType(fc.Scope));
86
86
  }
87
87
  getFormatColumnsWithColumnScope(formatColumns) {
88
- return formatColumns.filter((fc) => this.adaptable.api.scopeApi.scopeHasColumns(fc.Scope));
88
+ return formatColumns.filter((fc) => this.getAdaptableApi().columnScopeApi.scopeHasColumns(fc.Scope));
89
89
  }
90
90
  hasCustomDisplayFormatter(formatColumn) {
91
91
  var _a;
@@ -89,7 +89,7 @@ class FreeTextColumnApiImpl extends ApiBase_1.ApiBase {
89
89
  }
90
90
  getFreeTextColumnValueForRowNode(freeTextColumn, rowNode) {
91
91
  try {
92
- if (this.adaptable.api.gridApi.isGroupRowNode(rowNode)) {
92
+ if (this.getAdaptableApi().gridApi.isGroupRowNode(rowNode)) {
93
93
  return null;
94
94
  }
95
95
  if (ArrayExtensions_1.default.IsNotNullOrEmpty(freeTextColumn.FreeTextStoredValues)) {
@@ -8,12 +8,13 @@ import { ColumnSort } from '../../PredefinedConfig/Common/ColumnSort';
8
8
  import { DataUpdateConfig } from '../../PredefinedConfig/Common/DataUpdateConfig';
9
9
  import { CellHighlightInfo } from '../../PredefinedConfig/Common/CellHighlightInfo';
10
10
  import { RowHighlightInfo } from '../../PredefinedConfig/Common/RowHighlightInfo';
11
- import { IRowNode, RowModelType } from '@ag-grid-community/core';
11
+ import { Column, IRowNode, RowModelType } from '@ag-grid-community/core';
12
12
  import { GridCellRange } from '../../PredefinedConfig/Selection/GridCellRange';
13
13
  import { CellDataChangedInfo } from '../../PredefinedConfig/Common/CellDataChangedInfo';
14
14
  import { RowsHighlightInfo } from '../../PredefinedConfig/Common/RowsHighlightInfo';
15
15
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
16
16
  import { GridInternalApi } from '../Internal/GridInternalApi';
17
+ import { TransposeConfig } from '../../PredefinedConfig/Common/TransposeConfig';
17
18
  export declare class GridApiImpl extends ApiBase implements GridApi {
18
19
  internalApi: GridInternalApi;
19
20
  constructor(adaptable: IAdaptable);
@@ -23,6 +24,7 @@ export declare class GridApiImpl extends ApiBase implements GridApi {
23
24
  setInitialGridData(data: any): void;
24
25
  getGridData(): any[];
25
26
  getFilteredData(): any[];
27
+ getVisibleData(): any[];
26
28
  updateGridData(dataRows: any[], dataUpdateConfig?: DataUpdateConfig): Promise<IRowNode[]>;
27
29
  addOrUpdateGridData(dataRows: any[], dataUpdateConfig?: DataUpdateConfig): Promise<{
28
30
  addedRows: IRowNode[];
@@ -92,8 +94,12 @@ export declare class GridApiImpl extends ApiBase implements GridApi {
92
94
  isGridPivotable(): boolean;
93
95
  isGridGroupable(): boolean;
94
96
  isGridSelectable(): boolean;
97
+ isGridRowSelectable(): boolean;
98
+ isGridRangeSelectable(): boolean;
95
99
  isGridRowGrouped(): boolean;
100
+ isGridInPivotMode(): boolean;
96
101
  isGroupRowNode(rowNode: IRowNode): boolean;
102
+ isSummaryNode(rowNode: IRowNode): boolean;
97
103
  isQuickFilterAvailable(): boolean;
98
104
  redrawGrid(): void;
99
105
  getGridCellsForRawValue(columnId: string, rawValue: any): GridCell[] | undefined;
@@ -130,4 +136,6 @@ export declare class GridApiImpl extends ApiBase implements GridApi {
130
136
  openGridInfoSettingsPanel(): void;
131
137
  getAgGridRowModelType(): RowModelType;
132
138
  getVisibleRowCount(): number;
139
+ showTransposedView(transposeConfig?: TransposeConfig): void;
140
+ getAllAgGridColumns(): Column<any>[];
133
141
  }
@@ -9,6 +9,8 @@ const ModuleConstants = tslib_1.__importStar(require("../../Utilities/Constants/
9
9
  const GridInternalApi_1 = require("../Internal/GridInternalApi");
10
10
  const ArrayExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/ArrayExtensions"));
11
11
  const logDeprecation_1 = require("../../Utilities/logDeprecation");
12
+ const windowFactory_1 = require("../../View/Components/Popups/WindowPopups/windowFactory");
13
+ const RowSummary_1 = require("../../PredefinedConfig/Common/RowSummary");
12
14
  class GridApiImpl extends ApiBase_1.ApiBase {
13
15
  constructor(adaptable) {
14
16
  super(adaptable);
@@ -18,6 +20,11 @@ class GridApiImpl extends ApiBase_1.ApiBase {
18
20
  return this.getAdaptableState().Grid;
19
21
  }
20
22
  loadGridData(dataSource) {
23
+ // we intentionally set an initial empty array,
24
+ // to prevent `cellchanged` events from being triggered for rows that have
25
+ // the same primary key with existing rows
26
+ // see #testprevent_cellchanged_event_on_load_grid_data
27
+ this.adaptable.agGridAdapter.setGridOption('rowData', []);
21
28
  this.adaptable.setGridData(dataSource);
22
29
  const allRowNodes = this.getAllRowNodes();
23
30
  this.internalApi.fireGridDataChangedEvent(dataSource, allRowNodes, 'Load');
@@ -36,6 +43,15 @@ class GridApiImpl extends ApiBase_1.ApiBase {
36
43
  getFilteredData() {
37
44
  return this.adaptable.getFilteredData();
38
45
  }
46
+ getVisibleData() {
47
+ const data = [];
48
+ this.adaptable.forAllVisibleRowNodesDo((rowNode) => {
49
+ if (!this.isGroupRowNode(rowNode)) {
50
+ data.push(rowNode.data);
51
+ }
52
+ });
53
+ return data;
54
+ }
39
55
  async updateGridData(dataRows, dataUpdateConfig) {
40
56
  const rowNodes = await this.adaptable.updateRows(dataRows, dataUpdateConfig);
41
57
  this.internalApi.fireGridDataChangedEvent(dataRows, rowNodes, 'Edit');
@@ -61,7 +77,7 @@ class GridApiImpl extends ApiBase_1.ApiBase {
61
77
  }
62
78
  undoCellEdit(cellDataChangedInfo) {
63
79
  // for the reason of this hacky solution see the comments in DataService
64
- this.adaptable.api.internalApi.getDataService().logUndoChange(cellDataChangedInfo);
80
+ this.getAdaptableApi().internalApi.getDataService().logUndoChange(cellDataChangedInfo);
65
81
  const cellUpdateRequest = {
66
82
  columnId: cellDataChangedInfo.column.columnId,
67
83
  newValue: cellDataChangedInfo.oldValue,
@@ -81,7 +97,7 @@ class GridApiImpl extends ApiBase_1.ApiBase {
81
97
  }
82
98
  setCellValue(cellUpdateRequest) {
83
99
  var _a;
84
- const abColumn = this.adaptable.api.columnApi.getColumnWithColumnId(cellUpdateRequest.columnId);
100
+ const abColumn = this.getAdaptableApi().columnApi.getColumnWithColumnId(cellUpdateRequest.columnId);
85
101
  if (!abColumn) {
86
102
  this.logWarn(`setCellValue() - column not found for columnId: ${cellUpdateRequest.columnId}`);
87
103
  return;
@@ -122,7 +138,7 @@ class GridApiImpl extends ApiBase_1.ApiBase {
122
138
  }
123
139
  clearGridFiltering() {
124
140
  // slightly round the houses but we have to call ColumnFilterAPI as it does it properly
125
- this.adaptable.api.columnFilterApi.clearColumnFilters();
141
+ this.getAdaptableApi().columnFilterApi.clearColumnFilters();
126
142
  }
127
143
  getColumnSorts() {
128
144
  return this.getAdaptableState().Grid.ColumnSorts;
@@ -209,8 +225,8 @@ class GridApiImpl extends ApiBase_1.ApiBase {
209
225
  }
210
226
  selectCellRangeByQuery(query, gridCellRange, clearSelection) {
211
227
  const filteredRowNodes = [];
212
- const isRowNodeInQuery = (rowNode) => this.adaptable.api.internalApi
213
- .getQueryLanguageService()
228
+ const isRowNodeInQuery = (rowNode) => this.getAdaptableApi()
229
+ .internalApi.getQueryLanguageService()
214
230
  .evaluateBooleanExpression(query, 'GridInfo', rowNode);
215
231
  if (gridCellRange) {
216
232
  const [startNode, endNode] = this.getSelectionStartEndNodes(gridCellRange);
@@ -233,7 +249,7 @@ class GridApiImpl extends ApiBase_1.ApiBase {
233
249
  /**
234
250
  * Select all rows and all columns
235
251
  */
236
- const currentLayout = this.adaptable.api.layoutApi.getCurrentLayout();
252
+ const currentLayout = this.getAdaptableApi().layoutApi.getCurrentLayout();
237
253
  preapredGridCellRange = {
238
254
  columnIds: currentLayout.Columns,
239
255
  };
@@ -269,7 +285,7 @@ class GridApiImpl extends ApiBase_1.ApiBase {
269
285
  this.selectColumns([columnId]);
270
286
  }
271
287
  selectColumns(columnIds) {
272
- this.adaptable.api.columnApi.selectColumns(columnIds);
288
+ this.getAdaptableApi().columnApi.selectColumns(columnIds);
273
289
  }
274
290
  getFirstRowNode() {
275
291
  return this.adaptable.getFirstRowNode();
@@ -302,7 +318,7 @@ class GridApiImpl extends ApiBase_1.ApiBase {
302
318
  }
303
319
  getNormalisedValueFromRowNode(rowNode, columnId) {
304
320
  const rawValue = this.adaptable.getRawValueFromRowNode(rowNode, columnId);
305
- const abColumn = this.adaptable.api.columnApi.getColumnWithColumnId(columnId);
321
+ const abColumn = this.getAdaptableApi().columnApi.getColumnWithColumnId(columnId);
306
322
  return this.adaptable.getNormalisedValueFromRawValue(rawValue, abColumn);
307
323
  }
308
324
  getRowNodesForPrimaryKeys(primaryKeyValues) {
@@ -345,14 +361,28 @@ class GridApiImpl extends ApiBase_1.ApiBase {
345
361
  return !this.getAdaptableApi().internalApi.isGridInTreeMode();
346
362
  }
347
363
  isGridSelectable() {
348
- return this.adaptable.isGridSelectable();
364
+ (0, logDeprecation_1.logDeprecation)(this.adaptable.logger, 'GridApi', 'isGridSelectable', 'isGridRowSelectable');
365
+ return this.isGridRowSelectable();
366
+ }
367
+ isGridRowSelectable() {
368
+ return this.adaptable.isGridRowSelectable();
369
+ }
370
+ isGridRangeSelectable() {
371
+ return this.adaptable.isGridRangeSelectable();
349
372
  }
350
373
  isGridRowGrouped() {
351
374
  return this.adaptable.isGridGroupingActive();
352
375
  }
376
+ isGridInPivotMode() {
377
+ return this.getLayoutApi().isCurrentLayoutPivot();
378
+ }
353
379
  isGroupRowNode(rowNode) {
354
380
  return this.adaptable.isGroupRowNode(rowNode);
355
381
  }
382
+ isSummaryNode(rowNode) {
383
+ var _a;
384
+ return (_a = rowNode === null || rowNode === void 0 ? void 0 : rowNode.data) === null || _a === void 0 ? void 0 : _a[RowSummary_1.ROW_SUMMARY_ROW_ID];
385
+ }
356
386
  isQuickFilterAvailable() {
357
387
  return this.adaptable.isQuickFilterAvailable();
358
388
  }
@@ -519,5 +549,29 @@ class GridApiImpl extends ApiBase_1.ApiBase {
519
549
  (0, logDeprecation_1.logDeprecation)(this.adaptable.logger, 'GridApi', 'getVisibleRowCount', 'getRowCount');
520
550
  return this.getRowCount();
521
551
  }
552
+ showTransposedView(transposeConfig = {}) {
553
+ var _a, _b, _c, _d, _e;
554
+ const transposedColumnId = (_a = transposeConfig.transposedColumnId) !== null && _a !== void 0 ? _a : this.getAdaptableApi().optionsApi.getPrimaryKey();
555
+ const hideTransposedColumn = (_b = transposeConfig.hideTransposedColumn) !== null && _b !== void 0 ? _b : true;
556
+ const visibleColumns = (_c = transposeConfig.visibleColumns) !== null && _c !== void 0 ? _c : false;
557
+ const visibleRows = (_d = transposeConfig.visibleRows) !== null && _d !== void 0 ? _d : false;
558
+ const autosize = (_e = transposeConfig.autosize) !== null && _e !== void 0 ? _e : true;
559
+ this.getAdaptableApi().internalApi.showPopupWindow({
560
+ id: windowFactory_1.WINDOW_SHOW_TRANSPOSED_VIEW,
561
+ factoryId: windowFactory_1.WINDOW_SHOW_TRANSPOSED_VIEW,
562
+ title: 'Transposed View',
563
+ icon: 'grid',
564
+ popupProps: {
565
+ transposedColumnId,
566
+ hideTransposedColumn,
567
+ visibleColumns,
568
+ visibleRows,
569
+ autosize,
570
+ },
571
+ });
572
+ }
573
+ getAllAgGridColumns() {
574
+ return this.adaptable.getAllGridColumns();
575
+ }
522
576
  }
523
577
  exports.GridApiImpl = GridApiImpl;
@@ -9,12 +9,14 @@ import { LayoutInternalApi } from '../Internal/LayoutInternalApi';
9
9
  export declare class LayoutApiImpl extends ApiBase implements LayoutApi {
10
10
  internalApi: LayoutInternalApi;
11
11
  constructor(adaptable: IAdaptable);
12
+ isCurrentLayoutPivot(): boolean;
12
13
  getLayoutState(): LayoutState;
13
14
  shouldAutoSaveLayouts: () => boolean;
14
15
  getCurrentVisibleColumnIdsMap(): {
15
16
  [key: string]: boolean;
16
17
  };
17
18
  getCurrentVisibleColumnIds(): string[];
19
+ getCurrentRowGroupsColumnIds(): string[];
18
20
  setLayout(layoutName: string): void;
19
21
  getCurrentLayout(): Layout;
20
22
  getCurrentLayoutColumnSort(columnId: string): ColumnSort['SortOrder'] | null;
@@ -41,15 +43,6 @@ export declare class LayoutApiImpl extends ApiBase implements LayoutApi {
41
43
  removeColumnFromCurrentLayout(columnId: string): void;
42
44
  removeColumnFromAllLayouts(columnId: string): void;
43
45
  removeColumnFromLayout(columnId: string, layoutName: string): void;
44
- getLayoutSupportedFeatures(): {
45
- RowGroupedColumns: boolean;
46
- AggregationColumns: boolean;
47
- PivotColumns: boolean;
48
- ColumnFilters: boolean;
49
- ColumnSorts: boolean;
50
- };
51
- showTransposePopup(config: {
52
- transposedColumnId: string;
53
- hideTransposedColumn?: boolean;
54
- }): void;
46
+ addColumnToLayout(columnId: string, layoutName: string): void;
47
+ addColumnToCurrentLayout(columnId: string): void;
55
48
  }