@adaptabletools/adaptable 18.0.0-canary.9 → 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 (423) 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 +3 -4
  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 +1 -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 +45 -15
  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 +12 -0
  55. package/src/Api/Implementation/ColumnScopeApiImpl.d.ts +33 -0
  56. package/src/Api/Implementation/{ScopeApiImpl.js → ColumnScopeApiImpl.js} +46 -13
  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 +2 -2
  60. package/src/Api/Implementation/ConfigApiImpl.js +21 -25
  61. package/src/Api/Implementation/ContextMenuApiImpl.d.ts +7 -0
  62. package/src/Api/Implementation/ContextMenuApiImpl.js +9 -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} +12 -12
  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 +7 -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} +4 -3
  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 +1 -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 +1 -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 +125 -1
  147. package/src/PredefinedConfig/Common/RowScope.d.ts +17 -0
  148. package/src/PredefinedConfig/Common/RowScope.js +1 -0
  149. package/src/PredefinedConfig/Common/RowSummary.d.ts +15 -1
  150. package/src/PredefinedConfig/Common/RowSummary.js +16 -0
  151. package/src/PredefinedConfig/Common/TransposeConfig.d.ts +30 -0
  152. package/src/PredefinedConfig/Common/TransposeConfig.js +1 -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 +1 -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 +0 -34
  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} +24 -24
  173. package/src/Redux/ActionsReducers/PopupRedux.d.ts +5 -13
  174. package/src/Redux/ActionsReducers/PopupRedux.js +0 -19
  175. package/src/Redux/ActionsReducers/SystemRedux.d.ts +11 -5
  176. package/src/Redux/ActionsReducers/SystemRedux.js +12 -9
  177. package/src/Redux/Store/AdaptableStore.js +40 -33
  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 +70 -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 +11 -21
  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 +58 -44
  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 +55 -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 +1 -0
  233. package/src/Utilities/Constants/ModuleConstants.d.ts +6 -6
  234. package/src/Utilities/Constants/ModuleConstants.js +6 -6
  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 +143 -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 +19 -0
  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 -193
  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 +155 -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 +14 -0
  262. package/src/Utilities/license/decode.js +1 -65
  263. package/src/Utilities/license/hashing.js +1 -43
  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 +42 -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 +174 -0
  320. package/src/View/License/LicenseWatermark.js +1 -61
  321. package/src/View/Note/NotePopup.d.ts +2 -0
  322. package/src/View/{Notes/NotesPopup.js → Note/NotePopup.js} +14 -9
  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 +120 -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 +46 -0
  353. package/src/agGrid/weightedAverage.d.ts +0 -2
  354. package/src/agGrid/weightedAverage.js +0 -54
  355. package/src/components/Accordion.d.ts +7 -0
  356. package/src/components/Accordion.js +36 -0
  357. package/src/components/CheckBox/index.js +1 -1
  358. package/src/components/Datepicker/index.js +10 -2
  359. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -1
  360. package/src/components/ExpressionEditor/QueryBuilder/utils.d.ts +0 -1
  361. package/src/components/ExpressionEditor/QueryBuilder/utils.js +1 -14
  362. package/src/components/Input/index.d.ts +1 -2
  363. package/src/components/ProgressIndicator/ProgressIndicator.js +15 -6
  364. package/src/components/Select/Select.d.ts +1 -1
  365. package/src/components/Select/Select.js +3 -1
  366. package/src/components/Textarea/index.d.ts +2 -2
  367. package/src/components/icons/collapse-all.d.ts +3 -0
  368. package/src/components/icons/collapse-all.js +4 -0
  369. package/src/components/icons/copy.d.ts +3 -0
  370. package/src/components/icons/copy.js +4 -0
  371. package/src/components/icons/csv.d.ts +3 -0
  372. package/src/components/icons/csv.js +4 -0
  373. package/src/components/icons/data-object.d.ts +3 -0
  374. package/src/components/icons/data-object.js +4 -0
  375. package/src/components/icons/excel.d.ts +3 -0
  376. package/src/components/icons/excel.js +5 -0
  377. package/src/components/icons/expand-all.d.ts +3 -0
  378. package/src/components/icons/expand-all.js +4 -0
  379. package/src/components/icons/filter-off.d.ts +3 -0
  380. package/src/components/icons/filter-off.js +4 -0
  381. package/src/components/icons/grid-info.d.ts +3 -0
  382. package/src/components/icons/grid-info.js +4 -0
  383. package/src/components/icons/index.js +22 -0
  384. package/src/components/icons/note.js +2 -2
  385. package/src/components/icons/select-all.d.ts +3 -0
  386. package/src/components/icons/select-all.js +4 -0
  387. package/src/components/icons/select-fwd.d.ts +3 -0
  388. package/src/components/icons/select-fwd.js +4 -0
  389. package/src/components/icons/select-off.d.ts +3 -0
  390. package/src/components/icons/select-off.js +4 -0
  391. package/src/env.js +2 -2
  392. package/src/metamodel/adaptable.metamodel.d.ts +222 -116
  393. package/src/metamodel/adaptable.metamodel.js +1 -9426
  394. package/src/parser/src/parser.js +576 -553
  395. package/src/parser/src/predicate/mapExpressionToQlPredicate.js +1 -1
  396. package/src/parser/src/predicate/mapQlPredicateToExpression.js +3 -4
  397. package/src/parser/src/types.d.ts +2 -2
  398. package/src/parser/src/types.js +1 -2
  399. package/src/types.d.ts +32 -25
  400. package/tsconfig.esm.tsbuildinfo +1 -1
  401. package/src/AdaptableOptions/MenuOptions.d.ts +0 -234
  402. package/src/AdaptableOptions/MenuOptions.js +0 -95
  403. package/src/Api/Events/CommentsChangedInfo.d.ts +0 -5
  404. package/src/Api/Implementation/ScopeApiImpl.d.ts +0 -33
  405. package/src/Api/Internal/NotesInternalApi.d.ts +0 -4
  406. package/src/Api/NotesApi.d.ts +0 -48
  407. package/src/PredefinedConfig/CellAddress.d.ts +0 -13
  408. package/src/PredefinedConfig/CellAddress.js +0 -4
  409. package/src/Redux/ActionsReducers/NotesRedux.d.ts +0 -38
  410. package/src/Strategy/CommentsModule.d.ts +0 -17
  411. package/src/Strategy/CommentsModule.js +0 -81
  412. package/src/Strategy/NotesModule.d.ts +0 -10
  413. package/src/Strategy/NotesModule.js +0 -56
  414. package/src/Utilities/Services/SummaryService.d.ts +0 -19
  415. package/src/Utilities/Services/SummaryService.js +0 -29
  416. package/src/View/Notes/NotesPopup.d.ts +0 -2
  417. /package/src/{Api/Events/CommentsChangedInfo.js → AdaptableOptions/ColumnMenuOptions.js} +0 -0
  418. /package/src/{Api/NotesApi.js → AdaptableOptions/ContextMenuOptions.js} +0 -0
  419. /package/src/Api/{ScopeApi.js → ColumnMenuApi.js} +0 -0
  420. /package/src/{PredefinedConfig/Common/AdaptableScope.js → Api/ColumnScopeApi.js} +0 -0
  421. /package/src/{PredefinedConfig/NotesState.js → Api/ContextMenuApi.js} +0 -0
  422. /package/src/View/{Notes → Note}/NoteEditor.d.ts +0 -0
  423. /package/src/View/{Notes → Note}/NoteEditor.js +0 -0
@@ -7,8 +7,8 @@ export class ExpressionApiImpl extends ApiBase {
7
7
  this.internalApi = new ExpressionInternalApi(adaptable);
8
8
  }
9
9
  isValidBooleanExpression(query, module, validationErrorMessage) {
10
- const { isValid, errorMessage } = this.adaptable.api.internalApi
11
- .getQueryLanguageService()
10
+ const { isValid, errorMessage } = this.getAdaptableApi()
11
+ .internalApi.getQueryLanguageService()
12
12
  .validateBoolean(query, module, { force: true });
13
13
  if (!isValid && validationErrorMessage) {
14
14
  this.logWarn(`${validationErrorMessage} :: ${errorMessage}`);
@@ -16,8 +16,8 @@ export class ExpressionApiImpl extends ApiBase {
16
16
  return isValid;
17
17
  }
18
18
  isValidObservableExpression(expression, module, validationErrorMessage) {
19
- const { isValid, errorMessage } = this.adaptable.api.internalApi
20
- .getQueryLanguageService()
19
+ const { isValid, errorMessage } = this.getAdaptableApi()
20
+ .internalApi.getQueryLanguageService()
21
21
  .validateObservable(expression, module);
22
22
  if (!isValid && validationErrorMessage) {
23
23
  this.logWarn(`${validationErrorMessage} :: ${errorMessage}`);
@@ -25,8 +25,8 @@ export class ExpressionApiImpl extends ApiBase {
25
25
  return isValid;
26
26
  }
27
27
  isValidAggregatedBooleanExpression(expression, module, validationErrorMessage) {
28
- const { isValid, errorMessage } = this.adaptable.api.internalApi
29
- .getQueryLanguageService()
28
+ const { isValid, errorMessage } = this.getAdaptableApi()
29
+ .internalApi.getQueryLanguageService()
30
30
  .validateAggregatedBoolean(expression, module);
31
31
  if (!isValid && validationErrorMessage) {
32
32
  this.logWarn(`${validationErrorMessage} :: ${errorMessage}`);
@@ -34,8 +34,8 @@ export class ExpressionApiImpl extends ApiBase {
34
34
  return isValid;
35
35
  }
36
36
  isValidAggregatedScalarExpression(expression, module, validationErrorMessage) {
37
- const { isValid, errorMessage } = this.adaptable.api.internalApi
38
- .getQueryLanguageService()
37
+ const { isValid, errorMessage } = this.getAdaptableApi()
38
+ .internalApi.getQueryLanguageService()
39
39
  .validateAggregatedScalar(expression, module);
40
40
  if (!isValid && validationErrorMessage) {
41
41
  this.logWarn(`${validationErrorMessage} :: ${errorMessage}`);
@@ -47,11 +47,11 @@ export class ExpressionApiImpl extends ApiBase {
47
47
  }
48
48
  getColumnsFromExpression(expression) {
49
49
  try {
50
- const columnIds = this.adaptable.api.internalApi
51
- .getQueryLanguageService()
50
+ const columnIds = this.getAdaptableApi()
51
+ .internalApi.getQueryLanguageService()
52
52
  .getColumnsFromExpression(expression);
53
53
  columnIds.forEach((columnId) => {
54
- const calculatedColumn = this.adaptable.api.calculatedColumnApi.getCalculatedColumnForColumnId(columnId);
54
+ const calculatedColumn = this.getAdaptableApi().calculatedColumnApi.getCalculatedColumnForColumnId(columnId);
55
55
  if (calculatedColumn) {
56
56
  const transitiveColumnIds = this.getColumnsFromExpression(this.getAdaptableQueryExpression(calculatedColumn.Query));
57
57
  columnIds.push(...transitiveColumnIds);
@@ -69,12 +69,7 @@ export class ExpressionApiImpl extends ApiBase {
69
69
  isColumnQueryable(adaptableColumnBase) {
70
70
  let queryableColumnFn = this.getExpressionOptions().isColumnQueryable;
71
71
  if (queryableColumnFn) {
72
- const queryableColumnContext = {
73
- adaptableColumn: adaptableColumnBase,
74
- adaptableApi: this.getAdaptableApi(),
75
- userName: this.getOptions().userName,
76
- adaptableId: this.getOptions().adaptableId,
77
- };
72
+ const queryableColumnContext = Object.assign({ adaptableColumn: adaptableColumnBase }, this.getAdaptableApi().internalApi.buildBaseContext());
78
73
  return queryableColumnFn(queryableColumnContext);
79
74
  }
80
75
  return true;
@@ -84,8 +79,8 @@ export class ExpressionApiImpl extends ApiBase {
84
79
  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);
85
80
  }
86
81
  getAdaptableQueryExpressionWithColumnFriendlyNames(query) {
87
- return this.adaptable.api.internalApi
88
- .getQueryLanguageService()
82
+ return this.getAdaptableApi()
83
+ .internalApi.getQueryLanguageService()
89
84
  .getExpressionWithColumnFriendlyNames(this.getAdaptableQueryExpression(query));
90
85
  }
91
86
  useCaseSensitivity() {
@@ -76,6 +76,6 @@ export class Fdc3ApiImpl extends ApiBase {
76
76
  return this.internalApi.isStandardIntentType(intentType);
77
77
  }
78
78
  getFdc3Service() {
79
- return this.adaptable.api.internalApi.getFdc3Service();
79
+ return this.getAdaptableApi().internalApi.getFdc3Service();
80
80
  }
81
81
  }
@@ -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[];
@@ -30,13 +30,8 @@ export class FlashingCellApiImpl extends ApiBase {
30
30
  }
31
31
  showFlashingCell(flashingCellToShow) {
32
32
  this.addUidToAdaptableObject(flashingCellToShow);
33
- const flashingCellFiredInfo = {
34
- adaptableApi: this.adaptable.api,
35
- flashingCell: flashingCellToShow,
36
- userName: this.adaptable.api.optionsApi.getUserName(),
37
- adaptableId: this.adaptable.api.optionsApi.getAdaptableId(),
38
- };
39
- const results = this.adaptable.api.eventApi.emitSync('FlashingCellDisplayed', flashingCellFiredInfo);
33
+ const flashingCellFiredInfo = Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { flashingCell: flashingCellToShow });
34
+ const results = this.getAdaptableApi().eventApi.emitSync('FlashingCellDisplayed', flashingCellFiredInfo);
40
35
  const shouldShow = results.reduce((endResult, aResult) => {
41
36
  return endResult && aResult !== false;
42
37
  }, true);
@@ -84,7 +79,7 @@ export class FlashingCellApiImpl extends ApiBase {
84
79
  getFlashingCellPredicateDefsForScope(scope) {
85
80
  return this.getAdaptableApi()
86
81
  .predicateApi.internalApi.getFlashingCellPredicateDefs(scope)
87
- .filter((predicateDef) => this.adaptable.api.scopeApi.isScopeInScope(scope, predicateDef.columnScope));
82
+ .filter((predicateDef) => this.getAdaptableApi().columnScopeApi.isScopeInScope(scope, predicateDef.columnScope));
88
83
  }
89
84
  clearAllFlashingCells() {
90
85
  this.dispatchAction(SystemRedux.SystemFlashingCellDeleteAll());
@@ -65,7 +65,7 @@ export class FormatColumnApiImpl extends ApiBase {
65
65
  return this.internalApi.getFormatColumnWithColumnInScope(formatColumns, column);
66
66
  }
67
67
  getFormatColumnsForColumnId(columnId, config) {
68
- const abColumn = this.adaptable.api.columnApi.getColumnWithColumnId(columnId);
68
+ const abColumn = this.getAdaptableApi().columnApi.getColumnWithColumnId(columnId);
69
69
  if (!abColumn) {
70
70
  return [];
71
71
  }
@@ -75,13 +75,13 @@ export class FormatColumnApiImpl extends ApiBase {
75
75
  this.showModulePopup(ModuleConstants.FormatColumnModuleId);
76
76
  }
77
77
  getFormatColumnsWithAllScope(formatColumns) {
78
- return formatColumns.filter((fc) => this.adaptable.api.scopeApi.scopeIsAll(fc.Scope));
78
+ return formatColumns.filter((fc) => this.getAdaptableApi().columnScopeApi.scopeIsAll(fc.Scope));
79
79
  }
80
80
  getFormatColumnsWithDataTypeScope(formatColumns) {
81
- return formatColumns.filter((fc) => this.adaptable.api.scopeApi.scopeHasDataType(fc.Scope));
81
+ return formatColumns.filter((fc) => this.getAdaptableApi().columnScopeApi.scopeHasDataType(fc.Scope));
82
82
  }
83
83
  getFormatColumnsWithColumnScope(formatColumns) {
84
- return formatColumns.filter((fc) => this.adaptable.api.scopeApi.scopeHasColumns(fc.Scope));
84
+ return formatColumns.filter((fc) => this.getAdaptableApi().columnScopeApi.scopeHasColumns(fc.Scope));
85
85
  }
86
86
  hasCustomDisplayFormatter(formatColumn) {
87
87
  var _a;
@@ -85,7 +85,7 @@ export class FreeTextColumnApiImpl extends ApiBase {
85
85
  }
86
86
  getFreeTextColumnValueForRowNode(freeTextColumn, rowNode) {
87
87
  try {
88
- if (this.adaptable.api.gridApi.isGroupRowNode(rowNode)) {
88
+ if (this.getAdaptableApi().gridApi.isGroupRowNode(rowNode)) {
89
89
  return null;
90
90
  }
91
91
  if (ArrayExtensions.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,5 +136,6 @@ export declare class GridApiImpl extends ApiBase implements GridApi {
130
136
  openGridInfoSettingsPanel(): void;
131
137
  getAgGridRowModelType(): RowModelType;
132
138
  getVisibleRowCount(): number;
133
- showTransposedView(transposedColumnId: string, hideTransposedColumn?: boolean): void;
139
+ showTransposedView(transposeConfig?: TransposeConfig): void;
140
+ getAllAgGridColumns(): Column<any>[];
134
141
  }
@@ -6,6 +6,7 @@ import { GridInternalApi } from '../Internal/GridInternalApi';
6
6
  import ArrayExtensions from '../../Utilities/Extensions/ArrayExtensions';
7
7
  import { logDeprecation } from '../../Utilities/logDeprecation';
8
8
  import { WINDOW_SHOW_TRANSPOSED_VIEW } from '../../View/Components/Popups/WindowPopups/windowFactory';
9
+ import { ROW_SUMMARY_ROW_ID } from '../../PredefinedConfig/Common/RowSummary';
9
10
  export class GridApiImpl extends ApiBase {
10
11
  constructor(adaptable) {
11
12
  super(adaptable);
@@ -15,6 +16,11 @@ export class GridApiImpl extends ApiBase {
15
16
  return this.getAdaptableState().Grid;
16
17
  }
17
18
  loadGridData(dataSource) {
19
+ // we intentionally set an initial empty array,
20
+ // to prevent `cellchanged` events from being triggered for rows that have
21
+ // the same primary key with existing rows
22
+ // see #testprevent_cellchanged_event_on_load_grid_data
23
+ this.adaptable.agGridAdapter.setGridOption('rowData', []);
18
24
  this.adaptable.setGridData(dataSource);
19
25
  const allRowNodes = this.getAllRowNodes();
20
26
  this.internalApi.fireGridDataChangedEvent(dataSource, allRowNodes, 'Load');
@@ -33,6 +39,15 @@ export class GridApiImpl extends ApiBase {
33
39
  getFilteredData() {
34
40
  return this.adaptable.getFilteredData();
35
41
  }
42
+ getVisibleData() {
43
+ const data = [];
44
+ this.adaptable.forAllVisibleRowNodesDo((rowNode) => {
45
+ if (!this.isGroupRowNode(rowNode)) {
46
+ data.push(rowNode.data);
47
+ }
48
+ });
49
+ return data;
50
+ }
36
51
  async updateGridData(dataRows, dataUpdateConfig) {
37
52
  const rowNodes = await this.adaptable.updateRows(dataRows, dataUpdateConfig);
38
53
  this.internalApi.fireGridDataChangedEvent(dataRows, rowNodes, 'Edit');
@@ -58,7 +73,7 @@ export class GridApiImpl extends ApiBase {
58
73
  }
59
74
  undoCellEdit(cellDataChangedInfo) {
60
75
  // for the reason of this hacky solution see the comments in DataService
61
- this.adaptable.api.internalApi.getDataService().logUndoChange(cellDataChangedInfo);
76
+ this.getAdaptableApi().internalApi.getDataService().logUndoChange(cellDataChangedInfo);
62
77
  const cellUpdateRequest = {
63
78
  columnId: cellDataChangedInfo.column.columnId,
64
79
  newValue: cellDataChangedInfo.oldValue,
@@ -78,7 +93,7 @@ export class GridApiImpl extends ApiBase {
78
93
  }
79
94
  setCellValue(cellUpdateRequest) {
80
95
  var _a;
81
- const abColumn = this.adaptable.api.columnApi.getColumnWithColumnId(cellUpdateRequest.columnId);
96
+ const abColumn = this.getAdaptableApi().columnApi.getColumnWithColumnId(cellUpdateRequest.columnId);
82
97
  if (!abColumn) {
83
98
  this.logWarn(`setCellValue() - column not found for columnId: ${cellUpdateRequest.columnId}`);
84
99
  return;
@@ -119,7 +134,7 @@ export class GridApiImpl extends ApiBase {
119
134
  }
120
135
  clearGridFiltering() {
121
136
  // slightly round the houses but we have to call ColumnFilterAPI as it does it properly
122
- this.adaptable.api.columnFilterApi.clearColumnFilters();
137
+ this.getAdaptableApi().columnFilterApi.clearColumnFilters();
123
138
  }
124
139
  getColumnSorts() {
125
140
  return this.getAdaptableState().Grid.ColumnSorts;
@@ -206,8 +221,8 @@ export class GridApiImpl extends ApiBase {
206
221
  }
207
222
  selectCellRangeByQuery(query, gridCellRange, clearSelection) {
208
223
  const filteredRowNodes = [];
209
- const isRowNodeInQuery = (rowNode) => this.adaptable.api.internalApi
210
- .getQueryLanguageService()
224
+ const isRowNodeInQuery = (rowNode) => this.getAdaptableApi()
225
+ .internalApi.getQueryLanguageService()
211
226
  .evaluateBooleanExpression(query, 'GridInfo', rowNode);
212
227
  if (gridCellRange) {
213
228
  const [startNode, endNode] = this.getSelectionStartEndNodes(gridCellRange);
@@ -230,7 +245,7 @@ export class GridApiImpl extends ApiBase {
230
245
  /**
231
246
  * Select all rows and all columns
232
247
  */
233
- const currentLayout = this.adaptable.api.layoutApi.getCurrentLayout();
248
+ const currentLayout = this.getAdaptableApi().layoutApi.getCurrentLayout();
234
249
  preapredGridCellRange = {
235
250
  columnIds: currentLayout.Columns,
236
251
  };
@@ -266,7 +281,7 @@ export class GridApiImpl extends ApiBase {
266
281
  this.selectColumns([columnId]);
267
282
  }
268
283
  selectColumns(columnIds) {
269
- this.adaptable.api.columnApi.selectColumns(columnIds);
284
+ this.getAdaptableApi().columnApi.selectColumns(columnIds);
270
285
  }
271
286
  getFirstRowNode() {
272
287
  return this.adaptable.getFirstRowNode();
@@ -299,7 +314,7 @@ export class GridApiImpl extends ApiBase {
299
314
  }
300
315
  getNormalisedValueFromRowNode(rowNode, columnId) {
301
316
  const rawValue = this.adaptable.getRawValueFromRowNode(rowNode, columnId);
302
- const abColumn = this.adaptable.api.columnApi.getColumnWithColumnId(columnId);
317
+ const abColumn = this.getAdaptableApi().columnApi.getColumnWithColumnId(columnId);
303
318
  return this.adaptable.getNormalisedValueFromRawValue(rawValue, abColumn);
304
319
  }
305
320
  getRowNodesForPrimaryKeys(primaryKeyValues) {
@@ -342,14 +357,28 @@ export class GridApiImpl extends ApiBase {
342
357
  return !this.getAdaptableApi().internalApi.isGridInTreeMode();
343
358
  }
344
359
  isGridSelectable() {
345
- return this.adaptable.isGridSelectable();
360
+ logDeprecation(this.adaptable.logger, 'GridApi', 'isGridSelectable', 'isGridRowSelectable');
361
+ return this.isGridRowSelectable();
362
+ }
363
+ isGridRowSelectable() {
364
+ return this.adaptable.isGridRowSelectable();
365
+ }
366
+ isGridRangeSelectable() {
367
+ return this.adaptable.isGridRangeSelectable();
346
368
  }
347
369
  isGridRowGrouped() {
348
370
  return this.adaptable.isGridGroupingActive();
349
371
  }
372
+ isGridInPivotMode() {
373
+ return this.getLayoutApi().isCurrentLayoutPivot();
374
+ }
350
375
  isGroupRowNode(rowNode) {
351
376
  return this.adaptable.isGroupRowNode(rowNode);
352
377
  }
378
+ isSummaryNode(rowNode) {
379
+ var _a;
380
+ return (_a = rowNode === null || rowNode === void 0 ? void 0 : rowNode.data) === null || _a === void 0 ? void 0 : _a[ROW_SUMMARY_ROW_ID];
381
+ }
353
382
  isQuickFilterAvailable() {
354
383
  return this.adaptable.isQuickFilterAvailable();
355
384
  }
@@ -516,8 +545,14 @@ export class GridApiImpl extends ApiBase {
516
545
  logDeprecation(this.adaptable.logger, 'GridApi', 'getVisibleRowCount', 'getRowCount');
517
546
  return this.getRowCount();
518
547
  }
519
- showTransposedView(transposedColumnId, hideTransposedColumn) {
520
- this.adaptable.api.internalApi.showPopupWindow({
548
+ showTransposedView(transposeConfig = {}) {
549
+ var _a, _b, _c, _d, _e;
550
+ const transposedColumnId = (_a = transposeConfig.transposedColumnId) !== null && _a !== void 0 ? _a : this.getAdaptableApi().optionsApi.getPrimaryKey();
551
+ const hideTransposedColumn = (_b = transposeConfig.hideTransposedColumn) !== null && _b !== void 0 ? _b : true;
552
+ const visibleColumns = (_c = transposeConfig.visibleColumns) !== null && _c !== void 0 ? _c : false;
553
+ const visibleRows = (_d = transposeConfig.visibleRows) !== null && _d !== void 0 ? _d : false;
554
+ const autosize = (_e = transposeConfig.autosize) !== null && _e !== void 0 ? _e : true;
555
+ this.getAdaptableApi().internalApi.showPopupWindow({
521
556
  id: WINDOW_SHOW_TRANSPOSED_VIEW,
522
557
  factoryId: WINDOW_SHOW_TRANSPOSED_VIEW,
523
558
  title: 'Transposed View',
@@ -525,7 +560,13 @@ export class GridApiImpl extends ApiBase {
525
560
  popupProps: {
526
561
  transposedColumnId,
527
562
  hideTransposedColumn,
563
+ visibleColumns,
564
+ visibleRows,
565
+ autosize,
528
566
  },
529
567
  });
530
568
  }
569
+ getAllAgGridColumns() {
570
+ return this.adaptable.getAllGridColumns();
571
+ }
531
572
  }
@@ -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;
@@ -43,11 +45,4 @@ export declare class LayoutApiImpl extends ApiBase implements LayoutApi {
43
45
  removeColumnFromLayout(columnId: string, layoutName: string): void;
44
46
  addColumnToLayout(columnId: string, layoutName: string): void;
45
47
  addColumnToCurrentLayout(columnId: string): void;
46
- getLayoutSupportedFeatures(): {
47
- RowGroupedColumns: boolean;
48
- AggregationColumns: boolean;
49
- PivotColumns: boolean;
50
- ColumnFilters: boolean;
51
- ColumnSorts: boolean;
52
- };
53
48
  }
@@ -18,6 +18,9 @@ export class LayoutApiImpl extends ApiBase {
18
18
  };
19
19
  this.internalApi = new LayoutInternalApi(adaptable);
20
20
  }
21
+ isCurrentLayoutPivot() {
22
+ return this.getCurrentLayout().EnablePivot;
23
+ }
21
24
  getLayoutState() {
22
25
  return this.getAdaptableState().Layout;
23
26
  }
@@ -31,6 +34,9 @@ export class LayoutApiImpl extends ApiBase {
31
34
  getCurrentVisibleColumnIds() {
32
35
  return this.getCurrentLayout().Columns;
33
36
  }
37
+ getCurrentRowGroupsColumnIds() {
38
+ return this.getCurrentLayout().RowGroupedColumns;
39
+ }
34
40
  setLayout(layoutName) {
35
41
  if (StringExtensions.IsNotNullOrEmpty(layoutName) &&
36
42
  layoutName !== this.getCurrentLayoutName()) {
@@ -236,19 +242,4 @@ export class LayoutApiImpl extends ApiBase {
236
242
  addColumnToCurrentLayout(columnId) {
237
243
  this.addColumnToLayout(columnId, this.getCurrentLayoutName());
238
244
  }
239
- getLayoutSupportedFeatures() {
240
- const layoutSupportedFeatures = {
241
- RowGroupedColumns: true,
242
- AggregationColumns: true,
243
- PivotColumns: true,
244
- ColumnFilters: true,
245
- ColumnSorts: true,
246
- };
247
- if (this.getGridApi().getAgGridRowModelType() === 'viewport') {
248
- layoutSupportedFeatures.RowGroupedColumns = false;
249
- layoutSupportedFeatures.AggregationColumns = false;
250
- layoutSupportedFeatures.PivotColumns = false;
251
- }
252
- return layoutSupportedFeatures;
253
- }
254
245
  }
@@ -1,18 +1,18 @@
1
1
  import { ApiBase } from './ApiBase';
2
- import { NotesApi } from '../NotesApi';
3
- import { AdaptableNote, AdaptableNotes, NotesState } from '../../PredefinedConfig/NotesState';
4
- import { CellAddress } from '../../PredefinedConfig/CellAddress';
2
+ import { NoteApi } from '../NoteApi';
3
+ import { AdaptableNote, AdaptableNotes, NoteState } from '../../PredefinedConfig/NoteState';
5
4
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
6
- import { NotesInternalApi } from '../Internal/NotesInternalApi';
7
- export declare class NotesApiImpl extends ApiBase implements NotesApi {
8
- internalApi: NotesInternalApi;
5
+ import { NoteInternalApi } from '../Internal/NoteInternalApi';
6
+ import { CellAddress } from '../../types';
7
+ export declare class NoteApiImpl extends ApiBase implements NoteApi {
8
+ internalApi: NoteInternalApi;
9
9
  constructor(adaptable: IAdaptable);
10
10
  addNote(noteStr: string, primaryKeyValue: any, columnId: string): void;
11
11
  editNote(note: AdaptableNote): void;
12
12
  updateNoteText(noteStr: string, note: AdaptableNote): void;
13
13
  deleteNote(note: AdaptableNote): void;
14
- getNotesState(): NotesState;
14
+ getNoteState(): NoteState;
15
15
  getAllNotes(): AdaptableNotes;
16
- getCellNotes(address: CellAddress): AdaptableNote[];
16
+ getNoteForCell(address: CellAddress): AdaptableNote;
17
17
  getNoteByUuid(uuid: string): AdaptableNote | undefined;
18
18
  }
@@ -1,10 +1,10 @@
1
1
  import { ApiBase } from './ApiBase';
2
- import * as NotesRedux from '../../Redux/ActionsReducers/NotesRedux';
3
- import { NotesInternalApi } from '../Internal/NotesInternalApi';
4
- export class NotesApiImpl extends ApiBase {
2
+ import * as NoteRedux from '../../Redux/ActionsReducers/NoteRedux';
3
+ import { NoteInternalApi } from '../Internal/NoteInternalApi';
4
+ export class NoteApiImpl extends ApiBase {
5
5
  constructor(adaptable) {
6
6
  super(adaptable);
7
- this.internalApi = new NotesInternalApi(adaptable);
7
+ this.internalApi = new NoteInternalApi(adaptable);
8
8
  }
9
9
  addNote(noteStr, primaryKeyValue, columnId) {
10
10
  const note = {
@@ -13,26 +13,26 @@ export class NotesApiImpl extends ApiBase {
13
13
  ColumnId: columnId,
14
14
  Timestamp: Date.now(),
15
15
  };
16
- this.dispatchAction(NotesRedux.NotesAdd(note));
16
+ this.dispatchAction(NoteRedux.NoteAdd(note));
17
17
  }
18
18
  editNote(note) {
19
19
  note.Timestamp = Date.now();
20
- this.dispatchAction(NotesRedux.NotesEdit(note));
20
+ this.dispatchAction(NoteRedux.NoteEdit(note));
21
21
  }
22
22
  updateNoteText(noteStr, note) {
23
23
  this.editNote(Object.assign(Object.assign({}, note), { Text: noteStr }));
24
24
  }
25
25
  deleteNote(note) {
26
- this.dispatchAction(NotesRedux.NotesDelete(note));
26
+ this.dispatchAction(NoteRedux.NoteDelete(note));
27
27
  }
28
- getNotesState() {
29
- return this.getAdaptableState().Notes;
28
+ getNoteState() {
29
+ return this.getAdaptableState().Note;
30
30
  }
31
31
  getAllNotes() {
32
- return this.getNotesState().Notes;
32
+ return this.getNoteState().Notes;
33
33
  }
34
- getCellNotes(address) {
35
- return NotesRedux.GetNotesSelector(this.getAdaptableState().Notes, address);
34
+ getNoteForCell(address) {
35
+ return NoteRedux.GetNoteSelector(this.getAdaptableState().Note, address);
36
36
  }
37
37
  getNoteByUuid(uuid) {
38
38
  return this.getAllNotes().find((note) => note.Uuid === uuid);
@@ -1,11 +1,11 @@
1
1
  import { ApiBase } from './ApiBase';
2
- import { ActionColumnOptions, ActionRowOptions, AdaptableOptions, AlertOptions, CalendarOptions, CellSummaryOptions, ChartingOptions, ColumnOptions, NotesOptions, ContainerOptions, DashboardOptions, DataChangeHistoryOptions, DataSetOptions, EditOptions, EntitlementOptions, ExportOptions, FlashingCellOptions, FormatColumnOptions, LayoutOptions, MenuOptions, NotificationsOptions, OptionsApi, QuickSearchOptions, SettingsPanelOptions, StateOptions, TeamSharingOptions, ToolPanelOptions, UserInterfaceOptions, GridFilterOptions } from '../../types';
2
+ import { ActionColumnOptions, ActionRowOptions, AdaptableOptions, AlertOptions, CalendarOptions, CellSummaryOptions, ChartingOptions, ColumnOptions, NoteOptions, ContainerOptions, DashboardOptions, DataChangeHistoryOptions, DataSetOptions, EditOptions, EntitlementOptions, ExportOptions, FlashingCellOptions, FormatColumnOptions, LayoutOptions, NotificationsOptions, OptionsApi, QuickSearchOptions, SettingsPanelOptions, StateOptions, TeamSharingOptions, ToolPanelOptions, UserInterfaceOptions, GridFilterOptions, ColumnMenuOptions, ContextMenuOptions } from '../../types';
3
3
  import { GroupingOptions } from '../../AdaptableOptions/GroupingOptions';
4
4
  import { CustomSortOptions } from '../../AdaptableOptions/CustomSortOptions';
5
5
  import { Fdc3Options } from '../../AdaptableOptions/Fdc3Options';
6
6
  import { ExpressionOptions } from '../../AdaptableOptions/ExpressionOptions';
7
7
  import { ColumnFilterOptions } from '../../AdaptableOptions/ColumnFilterOptions';
8
- import { CommentsOptions } from '../../AdaptableOptions/CommentOptions';
8
+ import { CommentOptions } from '../../AdaptableOptions/CommentOptions';
9
9
  export declare class OptionsApiImpl extends ApiBase implements OptionsApi {
10
10
  getAdaptableId(): string;
11
11
  getAdaptableStateKey(): string;
@@ -19,8 +19,8 @@ export declare class OptionsApiImpl extends ApiBase implements OptionsApi {
19
19
  getCellSummaryOptions(): CellSummaryOptions;
20
20
  getCalendarOptions(): CalendarOptions;
21
21
  getColumnOptions(): ColumnOptions;
22
- getNotesOptions(): NotesOptions;
23
- getCommentsOptions(): Readonly<CommentsOptions<any>>;
22
+ getNoteOptions(): NoteOptions;
23
+ getCommentOptions(): Readonly<CommentOptions<any>>;
24
24
  getCustomSortOptions(): CustomSortOptions;
25
25
  getContainerOptions(): ContainerOptions;
26
26
  getDataSetOptions(): DataSetOptions;
@@ -31,7 +31,8 @@ export declare class OptionsApiImpl extends ApiBase implements OptionsApi {
31
31
  getExportOptions(): ExportOptions;
32
32
  getGroupingOptions(): GroupingOptions;
33
33
  getLayoutOptions(): LayoutOptions;
34
- getMenuOptions(): MenuOptions;
34
+ getColumnMenuOptions(): ColumnMenuOptions;
35
+ getContextMenuOptions(): ContextMenuOptions;
35
36
  getColumnFilterOptions(): ColumnFilterOptions;
36
37
  getGridFilterOptions(): Readonly<GridFilterOptions<any>>;
37
38
  getExpressionOptions(): ExpressionOptions;
@@ -36,10 +36,10 @@ export class OptionsApiImpl extends ApiBase {
36
36
  getColumnOptions() {
37
37
  return this.getOptions().columnOptions;
38
38
  }
39
- getNotesOptions() {
39
+ getNoteOptions() {
40
40
  return this.getOptions().noteOptions;
41
41
  }
42
- getCommentsOptions() {
42
+ getCommentOptions() {
43
43
  return this.getOptions().commentOptions;
44
44
  }
45
45
  getCustomSortOptions() {
@@ -72,8 +72,11 @@ export class OptionsApiImpl extends ApiBase {
72
72
  getLayoutOptions() {
73
73
  return this.getOptions().layoutOptions;
74
74
  }
75
- getMenuOptions() {
76
- return this.getOptions().menuOptions;
75
+ getColumnMenuOptions() {
76
+ return this.getOptions().columnMenuOptions;
77
+ }
78
+ getContextMenuOptions() {
79
+ return this.getOptions().contextMenuOptions;
77
80
  }
78
81
  getColumnFilterOptions() {
79
82
  return this.getOptions().columnFilterOptions;
@@ -71,9 +71,9 @@ export class PredicateApiImpl extends ApiBase {
71
71
  if (!predicate.ColumnId) {
72
72
  return this.handlePredicate(predicate, context, defaultReturn);
73
73
  }
74
- const paramsForColumn = Object.assign(Object.assign({}, context), { column: this.adaptable.api.columnApi.getColumnWithColumnId(predicate.ColumnId),
74
+ const paramsForColumn = Object.assign(Object.assign({}, context), { column: this.getAdaptableApi().columnApi.getColumnWithColumnId(predicate.ColumnId),
75
75
  // value: params?.node?.data?.[predicate.ColumnId],
76
- value: this.adaptable.api.gridApi.getRawValueFromRowNode(context.node, predicate.ColumnId) });
76
+ value: this.getAdaptableApi().gridApi.getRawValueFromRowNode(context.node, predicate.ColumnId) });
77
77
  if ('oldValue' in paramsForColumn) {
78
78
  delete paramsForColumn.oldValue;
79
79
  }
@@ -52,7 +52,7 @@ export class ScheduleApiImpl extends ApiBase {
52
52
  }
53
53
  getReportSchedules(config) {
54
54
  var _a;
55
- return ((_a = this.handleLayoutAssociatedObjects(this.adaptable.api.exportApi.getReportSchedules(), 'Schedule', config)) !== null && _a !== void 0 ? _a : []);
55
+ return ((_a = this.handleLayoutAssociatedObjects(this.getAdaptableApi().exportApi.getReportSchedules(), 'Schedule', config)) !== null && _a !== void 0 ? _a : []);
56
56
  }
57
57
  getActiveReportSchedules() {
58
58
  return this.getReportSchedules().filter((schedule) => !schedule.IsSuspended);
@@ -81,7 +81,7 @@ export class ScheduleApiImpl extends ApiBase {
81
81
  }
82
82
  getIPushPullSchedules(config) {
83
83
  var _a;
84
- const ippApi = this.adaptable.api.pluginsApi.getipushpullPluginApi();
84
+ const ippApi = this.getAdaptableApi().pluginsApi.getipushpullPluginApi();
85
85
  return ((_a = this.handleLayoutAssociatedObjects(ippApi === null || ippApi === void 0 ? void 0 : ippApi.getIPushPullSchedules(), 'Schedule', config)) !== null && _a !== void 0 ? _a : []);
86
86
  }
87
87
  getActiveIPushPullSchedules() {
@@ -111,7 +111,7 @@ export class ScheduleApiImpl extends ApiBase {
111
111
  }
112
112
  getOpenFinSchedules(config) {
113
113
  var _a;
114
- const openFinApi = this.adaptable.api.pluginsApi.getOpenFinPluginApi();
114
+ const openFinApi = this.getAdaptableApi().pluginsApi.getOpenFinPluginApi();
115
115
  return ((_a = this.handleLayoutAssociatedObjects(openFinApi === null || openFinApi === void 0 ? void 0 : openFinApi.getOpenFinSchedules(), 'Schedule', config)) !== null && _a !== void 0 ? _a : []);
116
116
  }
117
117
  getActiveOpenFinSchedules() {
@@ -163,10 +163,10 @@ export class ScheduleApiImpl extends ApiBase {
163
163
  }
164
164
  else if (scheduleType == 'Report') {
165
165
  const reportSchedule = schedule;
166
- this.adaptable.api.exportApi.runReport(reportSchedule.ReportName, reportSchedule.ExportDestination);
166
+ this.getAdaptableApi().exportApi.runReport(reportSchedule.ReportName, reportSchedule.ExportDestination);
167
167
  }
168
168
  else if (scheduleType == 'ipushpull') {
169
- const ippApi = this.adaptable.api.pluginsApi.getipushpullPluginApi();
169
+ const ippApi = this.getAdaptableApi().pluginsApi.getipushpullPluginApi();
170
170
  const iPushPullSchedule = schedule;
171
171
  if (iPushPullSchedule.Transmission == 'Snapshot') {
172
172
  ippApi.sendSnapshot(iPushPullSchedule.IPushPullReport);
@@ -176,7 +176,7 @@ export class ScheduleApiImpl extends ApiBase {
176
176
  }
177
177
  }
178
178
  else if (scheduleType == 'OpenFin') {
179
- const openFinApi = this.adaptable.api.pluginsApi.getOpenFinPluginApi();
179
+ const openFinApi = this.getAdaptableApi().pluginsApi.getOpenFinPluginApi();
180
180
  const openFinSchedule = schedule;
181
181
  openFinApi.startLiveData(openFinSchedule.OpenFinReport);
182
182
  }