@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
@@ -1,6 +1,5 @@
1
1
  import { AdaptableModuleBase } from './AdaptableModuleBase';
2
2
  import * as ModuleConstants from '../Utilities/Constants/ModuleConstants';
3
- import ArrayExtensions from '../Utilities/Extensions/ArrayExtensions';
4
3
  import * as LayoutRedux from '../Redux/ActionsReducers/LayoutRedux';
5
4
  import * as SystemRedux from '../Redux/ActionsReducers/SystemRedux';
6
5
  import { FilterStatusBarSubPanelPopover } from '../View/Filter/FilterStatusBarSubPanelPopover';
@@ -39,7 +38,31 @@ export class ColumnFilterModule extends AdaptableModuleBase {
39
38
  }
40
39
  });
41
40
  }
42
- addContextMenuItems(menuContext) {
41
+ createColumnMenuItems(column) {
42
+ let columnFilterMenuItems = [];
43
+ if (column &&
44
+ column.filterable &&
45
+ this.api.optionsApi.getColumnFilterOptions().useAdaptableColumnFiltering) {
46
+ if (this.api.gridApi.isQuickFilterAvailable()) {
47
+ const isFilterVisible = this.api.columnFilterApi.isQuickFilterVisible();
48
+ if (this.isModuleEditable() &&
49
+ this.api.optionsApi.getColumnFilterOptions().useAdaptableColumnFiltering) {
50
+ columnFilterMenuItems.push(this.createMenuItemReduxAction(isFilterVisible ? 'column-filter-bar-hide' : 'column-filter-bar-show', isFilterVisible ? 'Hide Filter Bar' : 'Show Filter Bar', isFilterVisible ? 'filter-off' : 'filter', isFilterVisible
51
+ ? SystemRedux.SystemQuickFilterBarHide()
52
+ : SystemRedux.SystemQuickFilterBarShow()));
53
+ }
54
+ }
55
+ const existingColumnFilter = this.getExistingColumnFilter(column);
56
+ if (existingColumnFilter) {
57
+ columnFilterMenuItems.push(this.createMenuItemReduxAction('column-filter-clear', 'Clear Filter', 'close', LayoutRedux.LayoutColumnFilterClear(existingColumnFilter)));
58
+ columnFilterMenuItems.push(this.createMenuItemReduxAction(existingColumnFilter.IsSuspended ? 'column-filter-unsuspend' : 'column-filter-suspend', existingColumnFilter.IsSuspended ? 'Unsuspend Filter' : 'Suspend Filter', existingColumnFilter.IsSuspended ? 'resume' : 'pause', existingColumnFilter.IsSuspended
59
+ ? LayoutRedux.LayoutColumnFilterUnSuspend(existingColumnFilter)
60
+ : LayoutRedux.LayoutColumnFilterSuspend(existingColumnFilter)));
61
+ }
62
+ return columnFilterMenuItems;
63
+ }
64
+ }
65
+ createContextMenuItems(menuContext) {
43
66
  if (!menuContext.isRowGroupColumn && this.isModuleAvailable()) {
44
67
  if (menuContext.adaptableColumn &&
45
68
  menuContext.adaptableColumn.filterable &&
@@ -57,70 +80,26 @@ export class ColumnFilterModule extends AdaptableModuleBase {
57
80
  this.api.columnFilterApi.internalApi.createEqualityColumnFilterForCell(menuContext.selectedCellInfo.gridCells[0]);
58
81
  };
59
82
  return [
60
- this.createColumnMenuItemClickFunction(isMultiple ? 'Filter on Cell Values' : 'Filter on Cell Value', this.moduleInfo.Glyph, clickFunction),
83
+ this.createMenuItemClickFunction('column-filter-on-cell-value', isMultiple ? 'Filter on Cell Values' : 'Filter on Cell Value', this.moduleInfo.Glyph, clickFunction),
61
84
  ];
62
85
  }
63
86
  else {
64
- let filterSubMenuItems = [];
65
- filterSubMenuItems.push(this.createColumnMenuItemReduxAction('Clear Filter', 'close', LayoutRedux.LayoutColumnFilterClear(existingColumnFilter)));
66
- filterSubMenuItems.push(this.createColumnMenuItemClickFunction(existingColumnFilter.IsSuspended ? 'Unsuspend Filter' : 'Suspend Filter', existingColumnFilter.IsSuspended ? 'resume' : 'pause', existingColumnFilter.IsSuspended
67
- ? () => {
68
- this.api.columnFilterApi.unSuspendColumnFilter(existingColumnFilter);
69
- }
70
- : () => {
71
- this.api.columnFilterApi.suspendColumnFilter(existingColumnFilter);
72
- }));
73
87
  return [
74
- {
75
- label: this.moduleInfo.FriendlyName,
76
- isVisible: true,
77
- module: this.moduleInfo.ModuleName,
78
- icon: {
79
- name: this.moduleInfo.Glyph,
80
- },
81
- subItems: filterSubMenuItems,
82
- },
88
+ this.createMenuItemReduxAction('column-filter-clear', 'Clear Filter', 'close', LayoutRedux.LayoutColumnFilterClear(existingColumnFilter)),
89
+ this.createMenuItemClickFunction(existingColumnFilter.IsSuspended
90
+ ? 'column-filter-unsuspend'
91
+ : 'column-filter-suspend', existingColumnFilter.IsSuspended ? 'Unsuspend Filter' : 'Suspend Filter', existingColumnFilter.IsSuspended ? 'resume' : 'pause', existingColumnFilter.IsSuspended
92
+ ? () => {
93
+ this.api.columnFilterApi.unSuspendColumnFilter(existingColumnFilter);
94
+ }
95
+ : () => {
96
+ this.api.columnFilterApi.suspendColumnFilter(existingColumnFilter);
97
+ }),
83
98
  ];
84
99
  }
85
100
  }
86
101
  }
87
102
  }
88
- addColumnMenuItems(column) {
89
- let filterSubMenuItems = [];
90
- if (column &&
91
- column.filterable &&
92
- this.api.optionsApi.getColumnFilterOptions().useAdaptableColumnFiltering) {
93
- if (this.api.gridApi.isQuickFilterAvailable()) {
94
- const isFilterVisible = this.api.columnFilterApi.isQuickFilterVisible();
95
- if (this.isModuleEditable() &&
96
- this.api.optionsApi.getColumnFilterOptions().useAdaptableColumnFiltering) {
97
- filterSubMenuItems.push(this.createColumnMenuItemReduxAction(isFilterVisible ? 'Hide Filter Bar' : 'Show Filter Bar', isFilterVisible ? 'unchecked' : 'check', isFilterVisible
98
- ? SystemRedux.SystemQuickFilterBarHide()
99
- : SystemRedux.SystemQuickFilterBarShow()));
100
- }
101
- }
102
- const existingColumnFilter = this.getExistingColumnFilter(column);
103
- if (existingColumnFilter) {
104
- filterSubMenuItems.push(this.createColumnMenuItemReduxAction('Clear Filter', 'close', LayoutRedux.LayoutColumnFilterClear(existingColumnFilter)));
105
- filterSubMenuItems.push(this.createColumnMenuItemReduxAction(existingColumnFilter.IsSuspended ? 'Unsuspend Filter' : 'Suspend Filter', existingColumnFilter.IsSuspended ? 'resume' : 'pause', existingColumnFilter.IsSuspended
106
- ? LayoutRedux.LayoutColumnFilterUnSuspend(existingColumnFilter)
107
- : LayoutRedux.LayoutColumnFilterSuspend(existingColumnFilter)));
108
- }
109
- if (ArrayExtensions.IsNotNullOrEmpty(filterSubMenuItems)) {
110
- return [
111
- {
112
- label: this.moduleInfo.FriendlyName,
113
- isVisible: true,
114
- module: this.moduleInfo.ModuleName,
115
- icon: {
116
- name: this.moduleInfo.Glyph,
117
- },
118
- subItems: filterSubMenuItems,
119
- },
120
- ];
121
- }
122
- }
123
- }
124
103
  getExistingColumnFilter(column) {
125
104
  return this.api.columnFilterApi.getColumnFilters().find((x) => x.ColumnId == column.columnId);
126
105
  }
@@ -2,10 +2,10 @@ import { AdaptableModuleBase } from './AdaptableModuleBase';
2
2
  import { IModule } from './Interface/IModule';
3
3
  import { AdaptableApi } from '../Api/AdaptableApi';
4
4
  import { AccessLevel } from '../PredefinedConfig/Common/Entitlement';
5
- import { AdaptableColumn, AdaptableMenuItem, ContextMenuContext } from '../types';
5
+ import { AdaptableColumn, ContextMenuContext } from '../types';
6
6
  export declare class ColumnInfoModule extends AdaptableModuleBase implements IModule {
7
7
  constructor(api: AdaptableApi);
8
8
  getViewAccessLevel(): AccessLevel;
9
- addColumnMenuItems(column: AdaptableColumn): AdaptableMenuItem[] | undefined;
10
- addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
9
+ createColumnMenuItems(column: AdaptableColumn): import("../Utilities/MenuItem").MenuItemShowPopup<"calculated-column-edit" | "cell-summary-show" | "column-group" | "column-filter-group" | "column-filter-bar-hide" | "column-filter-bar-show" | "column-filter-clear" | "column-filter-suspend" | "column-filter-unsuspend" | "column-info-show" | "custom-sort-add" | "custom-sort-edit" | "dashboard-group" | "dashboard-collapse" | "dashboard-configure" | "dashboard-dock" | "dashboard-expand" | "dashboard-float" | "dashboard-hide" | "dashboard-show" | "data-import" | "flashing-cell-add" | "flashing-cell-delete" | "format-column-add" | "format-column-edit" | "free-text-column-edit" | "grid-group" | "grid-info-show" | "layout-column-caption-change" | "layout-column-hide" | "layout-edit" | "layout-column-select" | "layout-column-select-preserve" | "layout-column-select-reset" | "layout-grid-select" | "plus-minus-add" | "settings-panel-open" | "styling-group" | "styled-column-badge-add" | "styled-column-badge-edit" | "styled-column-gradient-add" | "styled-column-gradient-edit" | "styled-column-percent-bar-add" | "styled-column-percent-bar-edit" | "styled-column-sparkline-add" | "styled-column-sparkline-edit" | "system-status-show" | "_navbar">[];
10
+ createContextMenuItems(menuContext: ContextMenuContext): import("../Utilities/MenuItem").MenuItemShowPopup<"calculated-column-edit" | "cell-summary-show" | "column-group" | "column-filter-group" | "column-filter-clear" | "column-filter-suspend" | "column-filter-unsuspend" | "column-info-show" | "dashboard-group" | "dashboard-collapse" | "dashboard-configure" | "dashboard-dock" | "dashboard-expand" | "dashboard-float" | "dashboard-hide" | "dashboard-show" | "data-import" | "grid-group" | "grid-info-show" | "layout-edit" | "settings-panel-open" | "system-status-show" | "menu-group" | "alert-clear" | "bulk-update-apply" | "column-filter-on-cell-value" | "comment-add" | "comment-remove" | "edit-group" | "export-group" | "export-visual-data" | "export-visual-data-excel" | "export-all-data-excel" | "export-all-data" | "export-all-data-csv" | "export-all-data-clipboard" | "export-all-data-json" | "export-all-data-table" | "export-current-data" | "export-current-data-excel" | "export-current-data-csv" | "export-current-data-clipboard" | "export-current-data-json" | "export-current-data-table" | "export-selected-cells" | "export-selected-cells-excel" | "export-selected-cells-csv" | "export-selected-cells-clipboard" | "export-selected-cells-json" | "export-selected-cells-table" | "export-selected-rows" | "export-selected-rows-excel" | "export-selected-rows-csv" | "export-selected-rows-clipboard" | "export-selected-rows-json" | "export-selected-rows-table" | "fdc3-broadcast" | "fdc3-raise-intent" | "flashing-cell-clear" | "flashing-row-clear" | "layout-aggregated-view" | "layout-auto-size" | "layout-clear-selection" | "layout-select-all" | "note-add" | "note-remove" | "smart-edit-apply">[];
11
11
  }
@@ -7,7 +7,7 @@ export class ColumnInfoModule extends AdaptableModuleBase {
7
7
  getViewAccessLevel() {
8
8
  return 'Full';
9
9
  }
10
- addColumnMenuItems(column) {
10
+ createColumnMenuItems(column) {
11
11
  if (this.isModuleAvailable()) {
12
12
  const columnPopUpParams = {
13
13
  source: 'ColumnMenu',
@@ -15,15 +15,16 @@ export class ColumnInfoModule extends AdaptableModuleBase {
15
15
  };
16
16
  return [
17
17
  this.createMainMenuItemShowPopup({
18
+ Name: 'column-info-show',
18
19
  Label: 'Column Info',
19
20
  ComponentName: this.moduleInfo.Popup,
20
- Icon: this.moduleInfo.Glyph,
21
+ Icon: 'info',
21
22
  PopupParams: columnPopUpParams,
22
23
  }),
23
24
  ];
24
25
  }
25
26
  }
26
- addContextMenuItems(menuContext) {
27
+ createContextMenuItems(menuContext) {
27
28
  if (this.isModuleAvailable()) {
28
29
  const columnPopUpParams = {
29
30
  source: 'ColumnMenu',
@@ -31,9 +32,10 @@ export class ColumnInfoModule extends AdaptableModuleBase {
31
32
  };
32
33
  return [
33
34
  this.createMainMenuItemShowPopup({
35
+ Name: 'column-info-show',
34
36
  Label: 'Column Info',
35
37
  ComponentName: this.moduleInfo.Popup,
36
- Icon: this.moduleInfo.Glyph,
38
+ Icon: 'info',
37
39
  PopupParams: columnPopUpParams,
38
40
  }),
39
41
  ];
@@ -0,0 +1,12 @@
1
+ import { AdaptableApi } from '../Api/AdaptableApi';
2
+ import { ContextMenuContext } from '../PredefinedConfig/Common/Menu';
3
+ import { MenuItemDoClickFunction } from '../Utilities/MenuItem';
4
+ import { AdaptableModuleBase } from './AdaptableModuleBase';
5
+ import { IModule } from './Interface/IModule';
6
+ export declare class CommentModule extends AdaptableModuleBase implements IModule {
7
+ constructor(api: AdaptableApi);
8
+ onAdaptableReady(): void;
9
+ isModuleAvailable(): boolean;
10
+ private loadComments;
11
+ createContextMenuItems(menuContext: ContextMenuContext): MenuItemDoClickFunction<"calculated-column-edit" | "cell-summary-show" | "column-group" | "column-filter-group" | "column-filter-clear" | "column-filter-suspend" | "column-filter-unsuspend" | "column-info-show" | "dashboard-group" | "dashboard-collapse" | "dashboard-configure" | "dashboard-dock" | "dashboard-expand" | "dashboard-float" | "dashboard-hide" | "dashboard-show" | "data-import" | "grid-group" | "grid-info-show" | "layout-edit" | "settings-panel-open" | "system-status-show" | "menu-group" | "alert-clear" | "bulk-update-apply" | "column-filter-on-cell-value" | "comment-add" | "comment-remove" | "edit-group" | "export-group" | "export-visual-data" | "export-visual-data-excel" | "export-all-data-excel" | "export-all-data" | "export-all-data-csv" | "export-all-data-clipboard" | "export-all-data-json" | "export-all-data-table" | "export-current-data" | "export-current-data-excel" | "export-current-data-csv" | "export-current-data-clipboard" | "export-current-data-json" | "export-current-data-table" | "export-selected-cells" | "export-selected-cells-excel" | "export-selected-cells-csv" | "export-selected-cells-clipboard" | "export-selected-cells-json" | "export-selected-cells-table" | "export-selected-rows" | "export-selected-rows-excel" | "export-selected-rows-csv" | "export-selected-rows-clipboard" | "export-selected-rows-json" | "export-selected-rows-table" | "fdc3-broadcast" | "fdc3-raise-intent" | "flashing-cell-clear" | "flashing-row-clear" | "layout-aggregated-view" | "layout-auto-size" | "layout-clear-selection" | "layout-select-all" | "note-add" | "note-remove" | "smart-edit-apply">[];
12
+ }
@@ -0,0 +1,70 @@
1
+ import * as ModuleConstants from '../Utilities/Constants/ModuleConstants';
2
+ import { createBaseContext } from '../Utilities/ObjectFactory';
3
+ import { AdaptableModuleBase } from './AdaptableModuleBase';
4
+ export class CommentModule extends AdaptableModuleBase {
5
+ constructor(api) {
6
+ super(ModuleConstants.CommentModuleId, ModuleConstants.CommentFriendlyName, 'comments', 'CommentsPopup', 'comments', api);
7
+ }
8
+ onAdaptableReady() {
9
+ this.loadComments();
10
+ }
11
+ isModuleAvailable() {
12
+ const options = this.api.optionsApi.getCommentOptions();
13
+ if (!options || !options.persistCommentThreads || !options.loadCommentThreads) {
14
+ return false;
15
+ }
16
+ if (this.api.optionsApi.getAutogeneratePrimaryKey()) {
17
+ return false;
18
+ }
19
+ return super.isModuleAvailable();
20
+ }
21
+ async loadComments() {
22
+ var _a, _b;
23
+ const commentThreads = await ((_b = (_a = this.api.optionsApi
24
+ .getCommentOptions()) === null || _a === void 0 ? void 0 : _a.loadCommentThreads) === null || _b === void 0 ? void 0 : _b.call(_a, createBaseContext(this.api)));
25
+ this.api.commentApi.setGridComments(commentThreads);
26
+ }
27
+ createContextMenuItems(menuContext) {
28
+ var _a, _b, _c, _d, _e;
29
+ if (!this.isModuleAvailable()) {
30
+ return;
31
+ }
32
+ if (!this.api.commentApi.internalApi.areCommentsSupported()) {
33
+ return;
34
+ }
35
+ const items = [];
36
+ const isCellCommentable = typeof ((_b = (_a = this.api.optionsApi) === null || _a === void 0 ? void 0 : _a.getCommentOptions()) === null || _b === void 0 ? void 0 : _b.isCellCommentable) === 'function'
37
+ ? (_d = (_c = this.api.optionsApi) === null || _c === void 0 ? void 0 : _c.getCommentOptions()) === null || _d === void 0 ? void 0 : _d.isCellCommentable(Object.assign({ gridCell: menuContext.gridCell }, createBaseContext(this.api)))
38
+ : true;
39
+ if (!isCellCommentable) {
40
+ return;
41
+ }
42
+ const cellAddress = {
43
+ PrimaryKeyValue: menuContext.primaryKeyValue,
44
+ ColumnId: menuContext.adaptableColumn.columnId,
45
+ };
46
+ const cellComments = (_e = this.api.commentApi.getCommentThread(cellAddress)) === null || _e === void 0 ? void 0 : _e.Comments;
47
+ if (cellComments) {
48
+ return [
49
+ this.createMenuItemClickFunction('comment-remove', 'Remove Comment', this.moduleInfo.Glyph, () => {
50
+ this.api.commentApi.deleteCommentThread(cellAddress);
51
+ }),
52
+ ];
53
+ }
54
+ else {
55
+ return [
56
+ this.createMenuItemClickFunction('comment-add', 'Add Comment', this.moduleInfo.Glyph, () => {
57
+ // add an empty one
58
+ this.api.commentApi.addCommentThread(Object.assign(Object.assign({}, cellAddress), { Comments: [] }));
59
+ requestAnimationFrame(() => {
60
+ this.api.internalApi.getCellPopupService().showPopup({
61
+ PrimaryKeyValue: menuContext.primaryKeyValue,
62
+ ColumnId: menuContext.adaptableColumn.columnId,
63
+ }, true);
64
+ this.api.internalApi.getCellPopupService().editFocusedEntity('Comment');
65
+ });
66
+ }),
67
+ ];
68
+ }
69
+ }
70
+ }
@@ -4,7 +4,6 @@ import { AdaptableColumn } from '../PredefinedConfig/Common/AdaptableColumn';
4
4
  import { CustomSort } from '../PredefinedConfig/CustomSortState';
5
5
  import * as CustomSortRedux from '../Redux/ActionsReducers/CustomSortRedux';
6
6
  import { TeamSharingImportInfo } from '../PredefinedConfig/TeamSharingState';
7
- import { AdaptableMenuItem } from '../PredefinedConfig/Common/Menu';
8
7
  import { AdaptableObjectView, IModule } from './Interface/IModule';
9
8
  import { AdaptableApi } from '../Api/AdaptableApi';
10
9
  import { AdaptableObject } from '../PredefinedConfig/Common/AdaptableObject';
@@ -15,7 +14,7 @@ export declare class CustomSortModule extends AdaptableModuleBase implements IMo
15
14
  }): AdaptableObject[];
16
15
  getExplicitlyReferencedColumnIds(customSort: CustomSort): string[];
17
16
  hasNamedQueryReferences(): boolean;
18
- addColumnMenuItems(column: AdaptableColumn): AdaptableMenuItem[] | undefined;
17
+ createColumnMenuItems(column: AdaptableColumn): import("../Utilities/MenuItem").MenuItemShowPopup<"custom-sort-add" | "custom-sort-edit">[];
19
18
  getTeamSharingAction(): TeamSharingImportInfo<CustomSort>;
20
19
  toView(customSort: CustomSort): AdaptableObjectView;
21
20
  toViewAll(): AdaptableObjectView[];
@@ -18,7 +18,7 @@ export class CustomSortModule extends AdaptableModuleBase {
18
18
  hasNamedQueryReferences() {
19
19
  return false;
20
20
  }
21
- addColumnMenuItems(column) {
21
+ createColumnMenuItems(column) {
22
22
  if (column && this.isModuleEditable() && column.sortable) {
23
23
  let customSort = this.api.customSortApi
24
24
  .getCustomSorts()
@@ -34,8 +34,9 @@ export class CustomSortModule extends AdaptableModuleBase {
34
34
  action: customSort ? 'Edit' : 'New',
35
35
  source: 'ColumnMenu',
36
36
  };
37
+ let name = customSort ? 'custom-sort-edit' : 'custom-sort-add';
37
38
  return [
38
- this.createColumnMenuItemShowPopup(label + 'Custom Sort', this.moduleInfo.Popup, this.moduleInfo.Glyph, popupParam),
39
+ this.createMenuItemShowPopup(name, label + 'Custom Sort', this.moduleInfo.Popup, this.moduleInfo.Glyph, popupParam),
39
40
  ];
40
41
  }
41
42
  }
@@ -1,11 +1,11 @@
1
1
  import { AdaptableModuleBase } from './AdaptableModuleBase';
2
- import { AdaptableMenuItem, ContextMenuContext } from '../PredefinedConfig/Common/Menu';
2
+ import { AdaptableColumnMenuItemName, AdaptableContextMenuItemName, AdaptableMenuItem, ContextMenuContext } from '../PredefinedConfig/Common/Menu';
3
3
  import { IModule } from './Interface/IModule';
4
4
  import { AdaptableApi } from '../Api/AdaptableApi';
5
5
  export declare class DashboardModule extends AdaptableModuleBase implements IModule {
6
6
  constructor(api: AdaptableApi);
7
7
  onAdaptableReady(): void;
8
- addColumnMenuItems(): AdaptableMenuItem[] | undefined;
9
- addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
8
+ createColumnMenuItems(): AdaptableMenuItem<AdaptableColumnMenuItemName>[] | undefined;
9
+ createContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem<AdaptableContextMenuItemName>[] | undefined;
10
10
  private buildMenuItems;
11
11
  }
@@ -17,47 +17,37 @@ export class DashboardModule extends AdaptableModuleBase {
17
17
  this.api.dashboardApi.internalApi.fireDashboardChangedEvent('ADAPTABLE_READY', null, this.api.dashboardApi.getDashboardState());
18
18
  }, 20);
19
19
  }
20
- addColumnMenuItems() {
20
+ createColumnMenuItems() {
21
21
  return this.buildMenuItems();
22
22
  }
23
- addContextMenuItems(menuContext) {
23
+ createContextMenuItems(menuContext) {
24
24
  return this.buildMenuItems();
25
25
  }
26
26
  buildMenuItems() {
27
27
  if (this.isModuleAvailable()) {
28
28
  let menuItems = [];
29
29
  if (this.isModuleEditable()) {
30
- menuItems.push(this.createColumnMenuItemClickFunction('Configure', 'settings', () => this.api.dashboardApi.openDashboardSettingsPanel()));
30
+ menuItems.push(this.createMenuItemClickFunction('dashboard-configure', 'Configure', 'settings', () => this.api.dashboardApi.openDashboardSettingsPanel()));
31
31
  }
32
32
  if (this.api.dashboardApi.getDashboardState().IsCollapsed) {
33
- menuItems.push(this.createColumnMenuItemReduxAction('Expand', 'expand', DashboardRedux.DashboardSetIsCollapsed(false)));
33
+ menuItems.push(this.createMenuItemReduxAction('dashboard-expand', 'Expand', 'expand', DashboardRedux.DashboardSetIsCollapsed(false)));
34
34
  }
35
35
  else {
36
- menuItems.push(this.createColumnMenuItemReduxAction('Collapse', 'collapse', DashboardRedux.DashboardSetIsCollapsed(true)));
36
+ menuItems.push(this.createMenuItemReduxAction('dashboard-collapse', 'Collapse', 'collapse', DashboardRedux.DashboardSetIsCollapsed(true)));
37
37
  }
38
38
  if (this.api.dashboardApi.getDashboardState().IsFloating) {
39
- menuItems.push(this.createColumnMenuItemReduxAction('Dock', 'dock', DashboardRedux.DashboardSetIsFloating(false)));
39
+ menuItems.push(this.createMenuItemReduxAction('dashboard-dock', 'Dock', 'dock', DashboardRedux.DashboardSetIsFloating(false)));
40
40
  }
41
41
  else if (this.api.optionsApi.getDashboardOptions().canFloat) {
42
- menuItems.push(this.createColumnMenuItemReduxAction('Float', 'dock', DashboardRedux.DashboardSetIsFloating(true)));
42
+ menuItems.push(this.createMenuItemReduxAction('dashboard-float', 'Float', 'dock', DashboardRedux.DashboardSetIsFloating(true)));
43
43
  }
44
44
  if (this.api.dashboardApi.getDashboardState().IsHidden) {
45
- menuItems.push(this.createColumnMenuItemReduxAction('Show', 'visibility-on-bold', DashboardRedux.DashboardSetIsHidden(false)));
45
+ menuItems.push(this.createMenuItemReduxAction('dashboard-show', 'Show', 'visibility-on-bold', DashboardRedux.DashboardSetIsHidden(false)));
46
46
  }
47
47
  else {
48
- menuItems.push(this.createColumnMenuItemReduxAction('Hide', 'visibility-off-bold', DashboardRedux.DashboardSetIsHidden(true)));
49
- }
50
- return [
51
- {
52
- label: this.moduleInfo.FriendlyName,
53
- isVisible: true,
54
- module: this.moduleInfo.ModuleName,
55
- icon: {
56
- name: 'dashboard',
57
- },
58
- subItems: menuItems,
59
- },
60
- ];
48
+ menuItems.push(this.createMenuItemReduxAction('dashboard-hide', 'Hide', 'visibility-off-bold', DashboardRedux.DashboardSetIsHidden(true)));
49
+ }
50
+ return menuItems;
61
51
  }
62
52
  }
63
53
  }
@@ -4,8 +4,8 @@ import { AdaptableModuleBase } from './AdaptableModuleBase';
4
4
  import { IModule } from './Interface/IModule';
5
5
  export declare class DataImportModule extends AdaptableModuleBase implements IModule {
6
6
  constructor(api: AdaptableApi);
7
- addModuleMenuItem(source: 'ModuleMenu' | 'ModuleButton'): AdaptableMenuItem | undefined;
8
- addContextMenuItems(): AdaptableMenuItem[] | undefined;
9
- addColumnMenuItems(): AdaptableMenuItem[] | undefined;
10
- private getOpenPopupMenuItem;
7
+ createModuleMenuItem(source: 'ModuleMenu' | 'ModuleButton'): AdaptableMenuItem | undefined;
8
+ createContextMenuItems(): AdaptableMenuItem<any>[];
9
+ createColumnMenuItems(): AdaptableMenuItem<any>[];
10
+ private createDataImportMenuItem;
11
11
  }
@@ -4,28 +4,28 @@ export class DataImportModule extends AdaptableModuleBase {
4
4
  constructor(api) {
5
5
  super(ModuleConstants.DataImportModuleId, ModuleConstants.DataImportFriendyName, 'import', 'DataImportPopup', 'Import Data', api);
6
6
  }
7
- addModuleMenuItem(source) {
7
+ createModuleMenuItem(source) {
8
8
  if (this.isModuleAvailable()) {
9
- return this.getOpenPopupMenuItem(source);
9
+ return this.createDataImportMenuItem(source);
10
10
  }
11
11
  }
12
- addContextMenuItems() {
12
+ createContextMenuItems() {
13
13
  if (this.isModuleAvailable()) {
14
- return [this.getOpenPopupMenuItem('ContextMenu')];
14
+ return [this.createDataImportMenuItem('ContextMenu')];
15
15
  }
16
16
  return undefined;
17
17
  }
18
- addColumnMenuItems() {
18
+ createColumnMenuItems() {
19
19
  if (this.isModuleAvailable()) {
20
- return [this.getOpenPopupMenuItem('ColumnMenu')];
20
+ return [this.createDataImportMenuItem('ColumnMenu')];
21
21
  }
22
22
  }
23
- getOpenPopupMenuItem(source) {
23
+ createDataImportMenuItem(source) {
24
24
  const moduleParams = {
25
25
  action: 'New',
26
26
  source: source,
27
27
  maxWidth: this.getPopupMaxWidth(),
28
28
  };
29
- return this.createColumnMenuItemShowPopup('Import Data', this.moduleInfo.Popup, this.moduleInfo.Glyph, moduleParams);
29
+ return this.createMenuItemShowPopup('data-import', 'Import Data', this.moduleInfo.Popup, this.moduleInfo.Glyph, moduleParams);
30
30
  }
31
31
  }
@@ -12,9 +12,8 @@ export declare class ExportModule extends AdaptableModuleBase implements IExport
12
12
  getModuleAdaptableObjects(): AdaptableObject[];
13
13
  getExplicitlyReferencedColumnIds(report: Report): string[];
14
14
  getReferencedNamedQueryNames(report: Report): string[];
15
- addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
15
+ createContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem<"calculated-column-edit" | "cell-summary-show" | "column-group" | "column-filter-group" | "column-filter-clear" | "column-filter-suspend" | "column-filter-unsuspend" | "column-info-show" | "dashboard-group" | "dashboard-collapse" | "dashboard-configure" | "dashboard-dock" | "dashboard-expand" | "dashboard-float" | "dashboard-hide" | "dashboard-show" | "data-import" | "grid-group" | "grid-info-show" | "layout-edit" | "settings-panel-open" | "system-status-show" | "menu-group" | "alert-clear" | "bulk-update-apply" | "column-filter-on-cell-value" | "comment-add" | "comment-remove" | "edit-group" | "export-group" | "export-visual-data" | "export-visual-data-excel" | "export-all-data-excel" | "export-all-data" | "export-all-data-csv" | "export-all-data-clipboard" | "export-all-data-json" | "export-all-data-table" | "export-current-data" | "export-current-data-excel" | "export-current-data-csv" | "export-current-data-clipboard" | "export-current-data-json" | "export-current-data-table" | "export-selected-cells" | "export-selected-cells-excel" | "export-selected-cells-csv" | "export-selected-cells-clipboard" | "export-selected-cells-json" | "export-selected-cells-table" | "export-selected-rows" | "export-selected-rows-excel" | "export-selected-rows-csv" | "export-selected-rows-clipboard" | "export-selected-rows-json" | "export-selected-rows-table" | "fdc3-broadcast" | "fdc3-raise-intent" | "flashing-cell-clear" | "flashing-row-clear" | "layout-aggregated-view" | "layout-auto-size" | "layout-clear-selection" | "layout-select-all" | "note-add" | "note-remove" | "smart-edit-apply">[];
16
16
  private buildReportMenuItems;
17
- private buildExportMenuItem;
18
17
  export(report: Report, exportDestination: ExportDestination | string): Promise<void>;
19
18
  private preProcessExport;
20
19
  private isCustomDestination;
@@ -3,7 +3,7 @@ import * as ModuleConstants from '../Utilities/Constants/ModuleConstants';
3
3
  import { ExportDestination } from '../PredefinedConfig/Common/Enums';
4
4
  import { Helper } from '../Utilities/Helpers/Helper';
5
5
  import * as ExportRedux from '../Redux/ActionsReducers/ExportRedux';
6
- import { SELECTED_CELLS_REPORT, SELECTED_ROWS_REPORT, VISUAL_DATA_REPORT, } from '../Utilities/Constants/GeneralConstants';
6
+ import { ALL_DATA_REPORT, CURRENT_DATA_REPORT, SELECTED_CELLS_REPORT, SELECTED_ROWS_REPORT, VISUAL_DATA_REPORT, } from '../Utilities/Constants/GeneralConstants';
7
7
  import ArrayExtensions from '../Utilities/Extensions/ArrayExtensions';
8
8
  import StringExtensions from '../Utilities/Extensions/StringExtensions';
9
9
  import * as PopupRedux from '../Redux/ActionsReducers/PopupRedux';
@@ -14,7 +14,7 @@ import { getExportRowsViewItems } from './Utilities/Export/getExportRowsViewItem
14
14
  import { ReportExportDropdown } from '../View/Export/ReportExportDropdown';
15
15
  import { getObjectTagsViewItems } from './Utilities/getObjectTagsViewItems';
16
16
  import { ExportSelector } from '../View/Export/ExportSelector';
17
- import { SystemProgressIndicatorShow, SystemVisualExportBegin, SystemVisualExportEnd, } from '../Redux/ActionsReducers/SystemRedux';
17
+ import { SystemVisualExportBegin, SystemVisualExportEnd, } from '../Redux/ActionsReducers/SystemRedux';
18
18
  import { SHOW_EXPORT_TABLE } from '../View/Components/Popups/WindowPopups/windowFactory';
19
19
  import { createUuid } from '../PredefinedConfig/Uuid';
20
20
  import { waitForTimeout } from '../Utilities/waitForTimeout';
@@ -27,8 +27,8 @@ export class ExportModule extends AdaptableModuleBase {
27
27
  }
28
28
  getExplicitlyReferencedColumnIds(report) {
29
29
  if (report.ReportColumnScope === 'ScopeColumns' &&
30
- this.api.scopeApi.scopeHasColumns(report.Scope)) {
31
- return this.api.scopeApi
30
+ this.api.columnScopeApi.scopeHasColumns(report.Scope)) {
31
+ return this.api.columnScopeApi
32
32
  .getColumnsForScope(report.Scope)
33
33
  .map((adaptableColumn) => adaptableColumn.columnId);
34
34
  }
@@ -40,78 +40,92 @@ export class ExportModule extends AdaptableModuleBase {
40
40
  }
41
41
  return this.api.namedQueryApi.internalApi.getReferencedNamedQueryNames(report.Query.BooleanExpression);
42
42
  }
43
- addContextMenuItems(menuContext) {
43
+ createContextMenuItems(menuContext) {
44
44
  const canExport = !menuContext.isRowGroupColumn && this.isModuleAvailable();
45
45
  if (!canExport) {
46
46
  return;
47
47
  }
48
48
  let returnMenuItems = [];
49
- let selectedCellmenuItems = [];
50
- let selectedRowmenuItems = [];
51
- const canExportCells = menuContext.selectedCellInfo &&
49
+ const availableSystemReports = this.api.exportApi.getAvailableSystemReports();
50
+ if (availableSystemReports.includes(VISUAL_DATA_REPORT)) {
51
+ returnMenuItems.push(this.createMenuItemClickFunction('export-visual-data-excel', 'Excel', 'excel', () => this.export(this.api.exportApi.getReportByName(VISUAL_DATA_REPORT), ExportDestination.Excel)));
52
+ }
53
+ if (availableSystemReports.includes(ALL_DATA_REPORT)) {
54
+ const allDataReport = this.api.exportApi.getReportByName(ALL_DATA_REPORT);
55
+ returnMenuItems.push(...this.buildReportMenuItems(allDataReport));
56
+ }
57
+ if (availableSystemReports.includes(CURRENT_DATA_REPORT)) {
58
+ const currentDataReport = this.api.exportApi.getReportByName(CURRENT_DATA_REPORT);
59
+ returnMenuItems.push(...this.buildReportMenuItems(currentDataReport));
60
+ }
61
+ const canExportCells = availableSystemReports.includes(SELECTED_CELLS_REPORT) &&
62
+ menuContext.selectedCellInfo &&
52
63
  ArrayExtensions.IsNotNullOrEmpty(menuContext.selectedCellInfo.columns) &&
53
64
  ArrayExtensions.IsNotNullOrEmpty(menuContext.selectedCellInfo.gridCells);
54
- const canExportRows = menuContext.selectedRowInfo &&
65
+ if (canExportCells) {
66
+ const selectedCellReport = this.api.exportApi.getReportByName(SELECTED_CELLS_REPORT);
67
+ returnMenuItems.push(...this.buildReportMenuItems(selectedCellReport));
68
+ }
69
+ const canExportRows = availableSystemReports.includes(SELECTED_ROWS_REPORT) &&
70
+ menuContext.selectedRowInfo &&
55
71
  ArrayExtensions.IsNotNullOrEmpty(menuContext.selectedRowInfo.gridRows) &&
56
72
  menuContext.gridCell &&
57
73
  menuContext.gridCell.primaryKeyValue &&
58
74
  menuContext.isSelectedRow;
59
- if (canExportCells) {
60
- const selectedCellReport = this.api.exportApi.getReportByName(SELECTED_CELLS_REPORT);
61
- selectedCellmenuItems = this.buildReportMenuItems(selectedCellReport);
62
- }
63
75
  if (canExportRows) {
64
76
  const selectedRowReport = this.api.exportApi.getReportByName(SELECTED_ROWS_REPORT);
65
- selectedRowmenuItems = this.buildReportMenuItems(selectedRowReport);
66
- }
67
- // if only selected cells then just do one level
68
- if (canExportCells && !canExportRows) {
69
- returnMenuItems.push(this.buildExportMenuItem('Export Selected Cells', selectedCellmenuItems));
70
- // if only selected Rows then just do one level
71
- }
72
- else if (canExportRows && !canExportCells) {
73
- returnMenuItems.push(this.buildExportMenuItem('Export Selected Rows', selectedRowmenuItems));
74
- }
75
- // if both selected Cells and Rows then add a new level
76
- else if (canExportRows && canExportCells) {
77
- const exportSelectedCellsMenuItem = this.buildExportMenuItem('Cells', selectedCellmenuItems);
78
- const exportSelectedRowsMenuItem = this.buildExportMenuItem('Rows', selectedRowmenuItems);
79
- returnMenuItems.push(this.buildExportMenuItem('Export Selected', [
80
- exportSelectedCellsMenuItem,
81
- exportSelectedRowsMenuItem,
82
- ]));
77
+ returnMenuItems.push(...this.buildReportMenuItems(selectedRowReport));
83
78
  }
84
79
  return returnMenuItems;
85
80
  }
86
81
  buildReportMenuItems(report) {
82
+ // a bit convoluted, but ce la vie, that's what happens when you use enums instead of union types
83
+ // convert to lowercase and replace empty spaces with hyphens
84
+ const adjustName = (name = '') => {
85
+ const result = name.replace(/ /g, '-');
86
+ return result.toLowerCase();
87
+ };
88
+ const getMenuItemName = (reportName, destination) => {
89
+ return `export-${adjustName(reportName)}-${adjustName(destination)}`;
90
+ };
91
+ const getMenuItemIcon = (exportDestination) => {
92
+ // once we have icons for csv, clipboard etc then i would like to add them here one by one and use moduleinfo for custom
93
+ switch (exportDestination) {
94
+ case ExportDestination.Excel:
95
+ return 'excel';
96
+ case ExportDestination.Clipboard:
97
+ return 'clipboard';
98
+ case ExportDestination.CSV:
99
+ return 'csv';
100
+ case ExportDestination.JSON:
101
+ return 'json';
102
+ case ExportDestination.Table:
103
+ return 'grid';
104
+ }
105
+ return this.moduleInfo.Glyph;
106
+ };
87
107
  const menuItems = [];
88
108
  for (const destination of this.api.exportApi.getAvailableExportDestinations()) {
89
- menuItems.push(this.createColumnMenuItemClickFunction(destination, this.moduleInfo.Glyph, () => this.export(report, destination)));
109
+ menuItems.push(this.createMenuItemClickFunction(getMenuItemName(report.Name, destination), destination, getMenuItemIcon(destination), // 'filter', // this.moduleInfo.Glyph,
110
+ () => this.export(report, destination)));
90
111
  }
91
112
  for (const customDestination of this.api.exportApi.getCustomDestinations()) {
92
- menuItems.push(this.createColumnMenuItemClickFunction(customDestination.name, this.moduleInfo.Glyph, () => this.export(report, customDestination.name)));
113
+ menuItems.push(this.createMenuItemClickFunction(getMenuItemName(report.Name, customDestination.name), customDestination.name, this.moduleInfo.Glyph, () => this.export(report, customDestination.name)));
93
114
  }
94
115
  return menuItems;
95
116
  }
96
- buildExportMenuItem(label, subItems) {
97
- return {
98
- label: label,
99
- module: this.moduleInfo.ModuleName,
100
- isVisible: true,
101
- icon: { name: this.moduleInfo.Glyph },
102
- subItems: subItems,
103
- };
104
- }
105
117
  async export(report, exportDestination) {
106
118
  var _a;
107
119
  const cleanupExportProcess = () => {
108
120
  this.api.internalApi.dispatchReduxAction(SystemVisualExportEnd());
109
- this.api.internalApi.hideProgressIndicator();
121
+ this.api.userInterfaceApi.hideProgressIndicator();
110
122
  };
111
123
  if (report.Name === VISUAL_DATA_REPORT) {
112
124
  this.api.internalApi.dispatchReduxAction(SystemVisualExportBegin());
113
125
  }
114
- this.api.internalApi.dispatchReduxAction(SystemProgressIndicatorShow(`${report.Name} Export in progress...`));
126
+ this.api.userInterfaceApi.showProgressIndicator({
127
+ text: `${report.Name} Export in progress...`,
128
+ });
115
129
  try {
116
130
  // waitForTimeout required to give the ProgressIndicator rendering a head-start (see rAF in ProgressIndicator implementation)
117
131
  await waitForTimeout(16);
@@ -4,7 +4,7 @@ import { AdaptableApi } from '../Api/AdaptableApi';
4
4
  import { AdaptableMenuItem, ContextMenuContext } from '../PredefinedConfig/Common/Menu';
5
5
  export declare class Fdc3Module extends AdaptableModuleBase implements IModule {
6
6
  constructor(api: AdaptableApi);
7
- addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
7
+ createContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem<"calculated-column-edit" | "cell-summary-show" | "column-group" | "column-filter-group" | "column-filter-clear" | "column-filter-suspend" | "column-filter-unsuspend" | "column-info-show" | "dashboard-group" | "dashboard-collapse" | "dashboard-configure" | "dashboard-dock" | "dashboard-expand" | "dashboard-float" | "dashboard-hide" | "dashboard-show" | "data-import" | "grid-group" | "grid-info-show" | "layout-edit" | "settings-panel-open" | "system-status-show" | "menu-group" | "alert-clear" | "bulk-update-apply" | "column-filter-on-cell-value" | "comment-add" | "comment-remove" | "edit-group" | "export-group" | "export-visual-data" | "export-visual-data-excel" | "export-all-data-excel" | "export-all-data" | "export-all-data-csv" | "export-all-data-clipboard" | "export-all-data-json" | "export-all-data-table" | "export-current-data" | "export-current-data-excel" | "export-current-data-csv" | "export-current-data-clipboard" | "export-current-data-json" | "export-current-data-table" | "export-selected-cells" | "export-selected-cells-excel" | "export-selected-cells-csv" | "export-selected-cells-clipboard" | "export-selected-cells-json" | "export-selected-cells-table" | "export-selected-rows" | "export-selected-rows-excel" | "export-selected-rows-csv" | "export-selected-rows-clipboard" | "export-selected-rows-json" | "export-selected-rows-table" | "fdc3-broadcast" | "fdc3-raise-intent" | "flashing-cell-clear" | "flashing-row-clear" | "layout-aggregated-view" | "layout-auto-size" | "layout-clear-selection" | "layout-select-all" | "note-add" | "note-remove" | "smart-edit-apply">[];
8
8
  private buildRaiseIntentMenuItem;
9
9
  private buildBroadcastMenuItem;
10
10
  private getFdc3Api;