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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/agGrid.d.ts +4 -21
  2. package/agGrid.js +5 -21
  3. package/base.css +22 -8
  4. package/base.css.map +1 -1
  5. package/index.css +101 -75
  6. package/index.css.map +1 -1
  7. package/package.json +4 -5
  8. package/src/AdaptableInterfaces/IAdaptable.d.ts +58 -108
  9. package/src/AdaptableOptions/AdaptableOptions.d.ts +13 -7
  10. package/src/AdaptableOptions/ColumnFilterOptions.d.ts +11 -4
  11. package/src/AdaptableOptions/ColumnOptions.d.ts +9 -4
  12. package/src/AdaptableOptions/CommentOptions.d.ts +33 -0
  13. package/src/AdaptableOptions/GroupingOptions.d.ts +0 -7
  14. package/src/AdaptableOptions/MenuOptions.d.ts +6 -54
  15. package/src/AdaptableOptions/MenuOptions.js +72 -75
  16. package/src/AdaptableOptions/{NotesOptions.d.ts → NoteOptions.d.ts} +7 -4
  17. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +17 -0
  18. package/src/Api/AdaptableApi.d.ts +9 -4
  19. package/src/Api/BulkUpdateApi.d.ts +0 -5
  20. package/src/Api/ColumnApi.d.ts +4 -0
  21. package/src/Api/CommentApi.d.ts +11 -12
  22. package/src/Api/ConfigApi.d.ts +4 -5
  23. package/src/Api/EventApi.d.ts +7 -9
  24. package/src/Api/Events/AdaptableReady.d.ts +3 -3
  25. package/src/Api/Events/CommentChanged.d.ts +11 -0
  26. package/src/Api/Events/GridDataChanged.d.ts +4 -4
  27. package/src/Api/GridApi.d.ts +23 -13
  28. package/src/Api/Implementation/ActionColumnApiImpl.d.ts +2 -0
  29. package/src/Api/Implementation/ActionColumnApiImpl.js +30 -0
  30. package/src/Api/Implementation/AdaptableApiImpl.d.ts +3 -2
  31. package/src/Api/Implementation/AdaptableApiImpl.js +5 -2
  32. package/src/Api/Implementation/ApiBase.d.ts +5 -3
  33. package/src/Api/Implementation/ApiBase.js +8 -2
  34. package/src/Api/Implementation/BulkUpdateApiImpl.d.ts +0 -1
  35. package/src/Api/Implementation/BulkUpdateApiImpl.js +0 -4
  36. package/src/Api/Implementation/CellSummaryApiImpl.d.ts +0 -5
  37. package/src/Api/Implementation/CellSummaryApiImpl.js +2 -23
  38. package/src/Api/Implementation/ColumnApiImpl.d.ts +1 -0
  39. package/src/Api/Implementation/ColumnApiImpl.js +10 -0
  40. package/src/Api/Implementation/CommentsApiImpl.d.ts +5 -2
  41. package/src/Api/Implementation/CommentsApiImpl.js +7 -1
  42. package/src/Api/Implementation/ConfigApiImpl.d.ts +2 -2
  43. package/src/Api/Implementation/ConfigApiImpl.js +21 -13
  44. package/src/Api/Implementation/GridApiImpl.d.ts +6 -3
  45. package/src/Api/Implementation/GridApiImpl.js +49 -14
  46. package/src/Api/Implementation/LayoutApiImpl.d.ts +3 -0
  47. package/src/Api/Implementation/LayoutApiImpl.js +18 -0
  48. package/src/Api/Implementation/NoteApiImpl.d.ts +18 -0
  49. package/src/Api/Implementation/NoteApiImpl.js +45 -0
  50. package/src/Api/Implementation/OptionsApiImpl.d.ts +4 -4
  51. package/src/Api/Implementation/OptionsApiImpl.js +4 -4
  52. package/src/Api/Implementation/ScopeApiImpl.d.ts +2 -0
  53. package/src/Api/Implementation/ScopeApiImpl.js +20 -7
  54. package/src/Api/Implementation/StatusBarApiImpl.d.ts +0 -1
  55. package/src/Api/Implementation/StatusBarApiImpl.js +0 -3
  56. package/src/Api/Implementation/ToolPanelApiImpl.js +6 -6
  57. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +0 -3
  58. package/src/Api/Implementation/UserInterfaceApiImpl.js +0 -8
  59. package/src/Api/Internal/ActionRowInternalApi.d.ts +5 -1
  60. package/src/Api/Internal/ActionRowInternalApi.js +107 -0
  61. package/src/Api/Internal/AdaptableInternalApi.d.ts +6 -7
  62. package/src/Api/Internal/AdaptableInternalApi.js +21 -19
  63. package/src/Api/Internal/CalculatedColumnInternalApi.d.ts +2 -0
  64. package/src/Api/Internal/CalculatedColumnInternalApi.js +72 -0
  65. package/src/Api/Internal/ColumnFilterInternalApi.d.ts +2 -0
  66. package/src/Api/Internal/ColumnFilterInternalApi.js +23 -1
  67. package/src/Api/Internal/ColumnInternalApi.d.ts +4 -1
  68. package/src/Api/Internal/ColumnInternalApi.js +12 -0
  69. package/src/Api/Internal/CommentsInternalApi.d.ts +4 -0
  70. package/src/Api/Internal/CommentsInternalApi.js +18 -0
  71. package/src/Api/Internal/CustomSortInternalApi.d.ts +3 -2
  72. package/src/Api/Internal/CustomSortInternalApi.js +32 -1
  73. package/src/Api/Internal/DataSetInternalApi.js +1 -1
  74. package/src/Api/Internal/ExportInternalApi.d.ts +2 -1
  75. package/src/Api/Internal/ExportInternalApi.js +4 -1
  76. package/src/Api/Internal/Fdc3InternalApi.js +2 -2
  77. package/src/Api/Internal/FormatColumnInternalApi.js +3 -2
  78. package/src/Api/Internal/FreeTextColumnInternalApi.d.ts +2 -0
  79. package/src/Api/Internal/FreeTextColumnInternalApi.js +61 -0
  80. package/src/Api/Internal/GridFilterInternalApi.d.ts +5 -0
  81. package/src/Api/Internal/GridFilterInternalApi.js +7 -1
  82. package/src/Api/Internal/GridInternalApi.d.ts +23 -3
  83. package/src/Api/Internal/GridInternalApi.js +141 -7
  84. package/src/Api/Internal/LayoutInternalApi.d.ts +1 -0
  85. package/src/Api/Internal/LayoutInternalApi.js +16 -0
  86. package/src/Api/Internal/NoteInternalApi.d.ts +4 -0
  87. package/src/Api/Internal/NoteInternalApi.js +18 -0
  88. package/src/Api/Internal/TeamSharingInternalApi.js +1 -1
  89. package/src/Api/InteropioPluginApi.d.ts +2 -2
  90. package/src/Api/LayoutApi.d.ts +15 -0
  91. package/src/Api/NoteApi.d.ts +48 -0
  92. package/src/Api/OptionsApi.d.ts +8 -8
  93. package/src/Api/ScopeApi.d.ts +10 -0
  94. package/src/Api/UserInterfaceApi.d.ts +0 -11
  95. package/src/EnvVars.d.ts +3 -0
  96. package/src/EnvVars.js +8 -0
  97. package/src/PredefinedConfig/AdaptableState.d.ts +2 -2
  98. package/src/PredefinedConfig/CommentState.d.ts +27 -23
  99. package/src/PredefinedConfig/Common/AdaptableColumn.d.ts +4 -0
  100. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
  101. package/src/PredefinedConfig/Common/AdaptableScope.d.ts +4 -1
  102. package/src/PredefinedConfig/Common/AggregationColumns.d.ts +1 -0
  103. package/src/PredefinedConfig/Common/AggregationColumns.js +5 -1
  104. package/src/PredefinedConfig/Common/DataUpdateConfig.d.ts +4 -0
  105. package/src/PredefinedConfig/Common/Enums.d.ts +2 -1
  106. package/src/PredefinedConfig/Common/Enums.js +1 -0
  107. package/src/PredefinedConfig/Common/Menu.d.ts +15 -1
  108. package/src/PredefinedConfig/Common/Menu.js +98 -0
  109. package/src/PredefinedConfig/Common/RowSummary.d.ts +21 -0
  110. package/src/PredefinedConfig/Common/RowSummary.js +20 -0
  111. package/src/PredefinedConfig/Common/TransposeConfig.d.ts +25 -0
  112. package/src/PredefinedConfig/Common/Types.d.ts +4 -4
  113. package/src/PredefinedConfig/Common/Types.js +4 -1
  114. package/src/PredefinedConfig/LayoutState.d.ts +5 -0
  115. package/src/PredefinedConfig/{NotesState.d.ts → NoteState.d.ts} +12 -22
  116. package/src/PredefinedConfig/PredefinedConfig.d.ts +3 -3
  117. package/src/PredefinedConfig/Selection/GridCell.d.ts +13 -0
  118. package/src/PredefinedConfig/SystemState.d.ts +9 -3
  119. package/src/Redux/ActionsReducers/LayoutRedux.d.ts +9 -0
  120. package/src/Redux/ActionsReducers/LayoutRedux.js +34 -11
  121. package/src/Redux/ActionsReducers/NoteRedux.d.ts +38 -0
  122. package/src/Redux/ActionsReducers/NoteRedux.js +89 -0
  123. package/src/Redux/ActionsReducers/SystemRedux.d.ts +6 -1
  124. package/src/Redux/ActionsReducers/SystemRedux.js +19 -6
  125. package/src/Redux/Store/AdaptableStore.d.ts +4 -6
  126. package/src/Redux/Store/AdaptableStore.js +66 -76
  127. package/src/Redux/Store/Interface/IAdaptableStore.d.ts +8 -2
  128. package/src/Strategy/AdaptableModuleBase.d.ts +8 -8
  129. package/src/Strategy/AdaptableModuleBase.js +13 -15
  130. package/src/Strategy/AlertModule.d.ts +1 -2
  131. package/src/Strategy/AlertModule.js +3 -56
  132. package/src/Strategy/BulkUpdateModule.js +1 -1
  133. package/src/Strategy/CalculatedColumnModule.d.ts +2 -3
  134. package/src/Strategy/CalculatedColumnModule.js +6 -26
  135. package/src/Strategy/CellSummaryModule.d.ts +8 -6
  136. package/src/Strategy/CellSummaryModule.js +78 -23
  137. package/src/Strategy/ChartingModule.d.ts +0 -1
  138. package/src/Strategy/ChartingModule.js +2 -22
  139. package/src/Strategy/ColumnFilterModule.d.ts +2 -3
  140. package/src/Strategy/ColumnFilterModule.js +44 -103
  141. package/src/Strategy/ColumnInfoModule.js +2 -0
  142. package/src/Strategy/{CommentsModule.d.ts → CommentModule.d.ts} +2 -5
  143. package/src/Strategy/{CommentsModule.js → CommentModule.js} +19 -25
  144. package/src/Strategy/CustomSortModule.js +3 -2
  145. package/src/Strategy/DashboardModule.d.ts +1 -2
  146. package/src/Strategy/DashboardModule.js +9 -15
  147. package/src/Strategy/DataChangeHistoryModule.d.ts +1 -0
  148. package/src/Strategy/DataChangeHistoryModule.js +3 -1
  149. package/src/Strategy/DataImportModule.d.ts +1 -1
  150. package/src/Strategy/DataImportModule.js +5 -5
  151. package/src/Strategy/DataSetModule.d.ts +1 -1
  152. package/src/Strategy/DataSetModule.js +1 -1
  153. package/src/Strategy/ExportModule.d.ts +1 -0
  154. package/src/Strategy/ExportModule.js +17 -2
  155. package/src/Strategy/Fdc3Module.js +3 -0
  156. package/src/Strategy/FlashingCellModule.d.ts +1 -2
  157. package/src/Strategy/FlashingCellModule.js +6 -19
  158. package/src/Strategy/FormatColumnModule.d.ts +0 -2
  159. package/src/Strategy/FormatColumnModule.js +6 -51
  160. package/src/Strategy/FreeTextColumnModule.d.ts +0 -1
  161. package/src/Strategy/FreeTextColumnModule.js +1 -31
  162. package/src/Strategy/GridFilterModule.d.ts +0 -1
  163. package/src/Strategy/GridFilterModule.js +0 -37
  164. package/src/Strategy/GridInfoModule.js +2 -0
  165. package/src/Strategy/Interface/IModule.d.ts +0 -1
  166. package/src/Strategy/LayoutModule.d.ts +9 -3
  167. package/src/Strategy/LayoutModule.js +143 -63
  168. package/src/Strategy/NamedQueryModule.d.ts +0 -1
  169. package/src/Strategy/NamedQueryModule.js +0 -19
  170. package/src/Strategy/{NotesModule.d.ts → NoteModule.d.ts} +2 -1
  171. package/src/Strategy/NoteModule.js +62 -0
  172. package/src/Strategy/PlusMinusModule.d.ts +1 -1
  173. package/src/Strategy/PlusMinusModule.js +2 -2
  174. package/src/Strategy/ScheduleModule.d.ts +1 -1
  175. package/src/Strategy/ScheduleModule.js +1 -1
  176. package/src/Strategy/SettingsPanelModule.js +3 -3
  177. package/src/Strategy/ShortcutModule.d.ts +1 -1
  178. package/src/Strategy/ShortcutModule.js +1 -1
  179. package/src/Strategy/SmartEditModule.js +1 -1
  180. package/src/Strategy/StyledColumnModule.d.ts +1 -1
  181. package/src/Strategy/StyledColumnModule.js +26 -26
  182. package/src/Strategy/SystemStatusModule.js +2 -2
  183. package/src/Strategy/TeamSharingModule.d.ts +1 -0
  184. package/src/Strategy/TeamSharingModule.js +5 -5
  185. package/src/Strategy/ToolPanelModule.d.ts +0 -1
  186. package/src/Strategy/ToolPanelModule.js +0 -23
  187. package/src/Strategy/Utilities/getScopeViewItems.js +3 -0
  188. package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
  189. package/src/Utilities/Constants/GeneralConstants.d.ts +1 -0
  190. package/src/Utilities/Constants/GeneralConstants.js +3 -2
  191. package/src/Utilities/Constants/ModuleConstants.d.ts +6 -6
  192. package/src/Utilities/Constants/ModuleConstants.js +7 -7
  193. package/src/Utilities/Defaults/DefaultSettingsPanel.js +7 -6
  194. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +3 -2
  195. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +430 -1
  196. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +3 -3
  197. package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +1 -1
  198. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +1 -1
  199. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +15 -0
  200. package/src/Utilities/Extensions/ArrayExtensions.d.ts +2 -0
  201. package/src/Utilities/Extensions/ArrayExtensions.js +6 -1
  202. package/src/Utilities/Helpers/AdaptableHelper.d.ts +3 -4
  203. package/src/Utilities/Helpers/AdaptableHelper.js +20 -60
  204. package/src/Utilities/Helpers/Helper.d.ts +2 -0
  205. package/src/Utilities/Helpers/Helper.js +6 -1
  206. package/src/Utilities/MenuItem.d.ts +7 -4
  207. package/src/Utilities/MenuItem.js +6 -3
  208. package/src/Utilities/ObjectFactory.d.ts +3 -3
  209. package/src/Utilities/ObjectFactory.js +4 -24
  210. package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +4 -2
  211. package/src/Utilities/Services/AggregatedScalarLiveValue.js +26 -19
  212. package/src/Utilities/Services/CellPopupService.js +2 -3
  213. package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +1 -1
  214. package/src/Utilities/Services/Interface/IReportService.d.ts +1 -4
  215. package/src/Utilities/Services/LicenseService/index.d.ts +3 -0
  216. package/src/Utilities/Services/LicenseService/index.js +1 -186
  217. package/src/Utilities/Services/MetamodelService.d.ts +1 -1
  218. package/src/Utilities/Services/MetamodelService.js +6 -3
  219. package/src/Utilities/Services/ModuleService.js +4 -0
  220. package/src/Utilities/Services/QueryLanguageService.d.ts +1 -1
  221. package/src/Utilities/Services/QueryLanguageService.js +4 -3
  222. package/src/Utilities/Services/ReportService.d.ts +7 -5
  223. package/src/Utilities/Services/ReportService.js +238 -22
  224. package/src/Utilities/Services/RowEditService.d.ts +3 -2
  225. package/src/Utilities/Services/RowEditService.js +3 -1
  226. package/src/Utilities/adaptableQlUtils.d.ts +2 -0
  227. package/src/Utilities/adaptableQlUtils.js +18 -0
  228. package/src/Utilities/license/decode.js +1 -70
  229. package/src/Utilities/license/hashing.js +1 -47
  230. package/src/View/AdaptableView.js +1 -3
  231. package/src/View/AdaptableViewFactory.js +2 -2
  232. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +2 -2
  233. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +1 -1
  234. package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
  235. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +3 -3
  236. package/src/View/CalculatedColumn/utils.d.ts +1 -1
  237. package/src/View/CellSummary/CellSummaryPopup.js +1 -1
  238. package/src/View/Comments/CommentsEditor.js +24 -11
  239. package/src/View/Comments/CommentsPopup.js +20 -11
  240. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  241. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.d.ts +5 -0
  242. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.js +46 -0
  243. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +5 -2
  244. package/src/View/Components/CellPopup/index.d.ts +1 -0
  245. package/src/View/Components/CellPopup/index.js +5 -2
  246. package/src/View/Components/FilterForm/FilterForm.js +20 -12
  247. package/src/View/Components/FilterForm/QuickFilterForm.js +15 -8
  248. package/src/View/Components/NewScopeComponent.js +34 -1
  249. package/src/View/Components/Popups/AdaptableLoadingScreen.d.ts +6 -5
  250. package/src/View/Components/Popups/AdaptableLoadingScreen.js +19 -9
  251. package/src/View/Components/Popups/AdaptableToaster.js +1 -1
  252. package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +7 -7
  253. package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +1 -0
  254. package/src/View/Components/Popups/WindowPopups/windowFactory.js +4 -1
  255. package/src/View/Components/Selectors/PermittedValuesSelector.js +2 -2
  256. package/src/View/Components/ValueSelector/index.d.ts +1 -0
  257. package/src/View/Components/ValueSelector/index.js +2 -2
  258. package/src/View/CustomSort/CustomSortSummary.js +1 -1
  259. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +8 -9
  260. package/src/View/FreeTextColumn/FreeTextColumnSummary.js +1 -1
  261. package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +3 -1
  262. package/src/View/GridFilter/GridFilterViewPanel.js +9 -5
  263. package/src/View/GridFilter/useGridFilterExpressionEditor.js +1 -1
  264. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -3
  265. package/src/View/Layout/LayoutViewPanel.js +2 -1
  266. package/src/View/Layout/TransposedPopup.d.ts +3 -0
  267. package/src/View/Layout/TransposedPopup.js +200 -0
  268. package/src/View/Layout/Wizard/LayoutWizard.js +36 -3
  269. package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -1
  270. package/src/View/Layout/Wizard/sections/RowSummarySection.d.ts +9 -0
  271. package/src/View/Layout/Wizard/sections/RowSummarySection.js +181 -0
  272. package/src/View/License/LicenseWatermark.js +1 -66
  273. package/src/View/Note/NotePopup.d.ts +2 -0
  274. package/src/View/{Notes/NotesPopup.js → Note/NotePopup.js} +19 -19
  275. package/src/View/SpecialColumnSettingsWizardStep.js +4 -4
  276. package/src/View/Theme/ThemeSelector.js +2 -2
  277. package/src/agGrid/ActionColumnRenderer.js +7 -6
  278. package/src/agGrid/Adaptable.d.ts +3 -455
  279. package/src/agGrid/Adaptable.js +7 -5291
  280. package/src/agGrid/AdaptableAgGrid.d.ts +352 -0
  281. package/src/agGrid/AdaptableAgGrid.js +3968 -0
  282. package/src/agGrid/AdaptableLogger.js +78 -13
  283. package/src/agGrid/AgGridAdapter.d.ts +64 -0
  284. package/src/agGrid/AgGridAdapter.js +590 -0
  285. package/src/agGrid/AgGridColumnAdapter.d.ts +56 -0
  286. package/src/agGrid/AgGridColumnAdapter.js +836 -0
  287. package/src/agGrid/AgGridMenuAdapter.d.ts +28 -0
  288. package/src/agGrid/AgGridMenuAdapter.js +282 -0
  289. package/src/agGrid/AgGridOptionsService.d.ts +15 -0
  290. package/src/agGrid/AgGridOptionsService.js +80 -0
  291. package/src/agGrid/BadgeRenderer.js +1 -1
  292. package/src/agGrid/CheckboxRenderer.js +1 -1
  293. package/src/agGrid/FilterWrapper.d.ts +2 -2
  294. package/src/agGrid/FilterWrapper.js +1 -1
  295. package/src/agGrid/attachAddaptableColumnTypes.d.ts +12 -12
  296. package/src/agGrid/defaultAdaptableOptions.d.ts +3 -0
  297. package/src/{Utilities/Defaults/DefaultAdaptableOptions.js → agGrid/defaultAdaptableOptions.js} +74 -18
  298. package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +1 -1
  299. package/src/agGrid/editors/AdaptableDateEditor/index.js +3 -3
  300. package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +2 -2
  301. package/src/agGrid/editors/AdaptableNumberEditor/index.js +2 -2
  302. package/src/agGrid/weightedAverage.d.ts +0 -2
  303. package/src/agGrid/weightedAverage.js +1 -56
  304. package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
  305. package/src/components/Datepicker/index.d.ts +1 -1
  306. package/src/components/Datepicker/index.js +10 -2
  307. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -1
  308. package/src/components/ExpressionEditor/QueryBuilder/utils.d.ts +0 -1
  309. package/src/components/ExpressionEditor/QueryBuilder/utils.js +3 -17
  310. package/src/components/InfiniteTable/index.js +2 -2
  311. package/src/components/Input/index.d.ts +1 -2
  312. package/src/components/List/ListGroupItem/index.d.ts +1 -1
  313. package/src/components/Modal/index.d.ts +1 -0
  314. package/src/components/Modal/index.js +6 -4
  315. package/src/components/Select/Select.d.ts +3 -1
  316. package/src/components/Select/Select.js +4 -2
  317. package/src/components/Textarea/index.d.ts +2 -2
  318. package/src/components/icons/index.js +2 -0
  319. package/src/components/icons/note.js +2 -2
  320. package/src/components/icons/rows.d.ts +3 -0
  321. package/src/components/icons/rows.js +7 -0
  322. package/src/env.js +2 -2
  323. package/src/metamodel/adaptable.metamodel.d.ts +186 -32
  324. package/src/metamodel/adaptable.metamodel.js +1 -9316
  325. package/src/migration/AdaptableUpgradeHelper.d.ts +38 -0
  326. package/src/migration/AdaptableUpgradeHelper.js +52 -0
  327. package/src/migration/VersionUpgrade.d.ts +8 -0
  328. package/src/migration/VersionUpgrade.js +15 -0
  329. package/src/migration/VersionUpgrade17.d.ts +18 -0
  330. package/src/migration/VersionUpgrade17.js +347 -0
  331. package/src/migration/VersionUpgrade18.d.ts +5 -0
  332. package/src/migration/VersionUpgrade18.js +10 -0
  333. package/src/parser/src/parser.js +117 -1257
  334. package/src/parser/src/predicate/mapExpressionToQlPredicate.js +1 -1
  335. package/src/parser/src/predicate/mapQlPredicateToExpression.js +2 -1
  336. package/src/parser/src/types.d.ts +7 -2
  337. package/src/types.d.ts +26 -19
  338. package/tsconfig.cjs.tsbuildinfo +1 -1
  339. package/src/AdaptableOptions/CommentsOptions.d.ts +0 -28
  340. package/src/Api/Events/CommentsChangedInfo.d.ts +0 -5
  341. package/src/Api/Implementation/NotesApiImpl.d.ts +0 -16
  342. package/src/Api/Implementation/NotesApiImpl.js +0 -44
  343. package/src/Api/NotesApi.d.ts +0 -48
  344. package/src/PredefinedConfig/CellAddress.d.ts +0 -13
  345. package/src/PredefinedConfig/CellAddress.js +0 -5
  346. package/src/Redux/ActionsReducers/NotesRedux.d.ts +0 -39
  347. package/src/Redux/ActionsReducers/NotesRedux.js +0 -87
  348. package/src/Strategy/NotesModule.js +0 -62
  349. package/src/Utilities/Defaults/DefaultAdaptableOptions.d.ts +0 -2
  350. package/src/Utilities/Services/Interface/IRowEditService.d.ts +0 -3
  351. package/src/View/Components/ScopeComponent.d.ts +0 -24
  352. package/src/View/Components/ScopeComponent.js +0 -138
  353. package/src/View/Export/Wizard/ReportScopeWizard.d.ts +0 -17
  354. package/src/View/Export/Wizard/ReportScopeWizard.js +0 -52
  355. package/src/View/Notes/NotesPopup.d.ts +0 -2
  356. package/src/agGrid/agGridHelper.d.ts +0 -57
  357. package/src/agGrid/agGridHelper.js +0 -691
  358. package/src/agGrid/agGridMenuHelper.d.ts +0 -46
  359. package/src/agGrid/agGridMenuHelper.js +0 -673
  360. /package/src/AdaptableOptions/{CommentsOptions.js → CommentOptions.js} +0 -0
  361. /package/src/AdaptableOptions/{NotesOptions.js → NoteOptions.js} +0 -0
  362. /package/src/Api/Events/{CommentsChangedInfo.js → CommentChanged.js} +0 -0
  363. /package/src/Api/{NotesApi.js → NoteApi.js} +0 -0
  364. /package/src/PredefinedConfig/{NotesState.js → Common/TransposeConfig.js} +0 -0
  365. /package/src/{Utilities/Services/Interface/IRowEditService.js → PredefinedConfig/NoteState.js} +0 -0
  366. /package/src/View/{Notes → Note}/NoteEditor.d.ts +0 -0
  367. /package/src/View/{Notes → Note}/NoteEditor.js +0 -0
@@ -32,70 +32,7 @@ class ColumnFilterModule extends AdaptableModuleBase_1.AdaptableModuleBase {
32
32
  hasNamedQueryReferences() {
33
33
  return false;
34
34
  }
35
- updateOldConfig() {
36
- // Note: have updated Dashboard and Status bar but NOT Tool Panels
37
- // Update Module Buttons
38
- let updateModuleButtons = false;
39
- let moduleButtons = this.api.dashboardApi.getModuleButtons();
40
- if (!moduleButtons.includes('ColumnFilter')) {
41
- moduleButtons = moduleButtons.map((moduleButton) => {
42
- if (moduleButton == 'Filter') {
43
- updateModuleButtons = true;
44
- return 'ColumnFilter';
45
- }
46
- return moduleButton;
47
- });
48
- }
49
- if (updateModuleButtons) {
50
- this.api.dashboardApi.setModuleButtons(moduleButtons);
51
- }
52
- // Update Toolbars
53
- let updateTabs = false;
54
- const tabs = this.api.dashboardApi.getTabs().map((tab) => {
55
- if (tab.Toolbars.includes('Filter') && !tab.Toolbars.includes('ColumnFilter')) {
56
- updateTabs = true;
57
- return Object.assign(Object.assign({}, tab), {
58
- // replace with 'GridFilter'
59
- Toolbars: tab.Toolbars.map((t) => (t == 'Filter' ? 'ColumnFilter' : t)) });
60
- }
61
- return tab;
62
- });
63
- if (updateTabs) {
64
- this.api.dashboardApi.setTabs(tabs);
65
- }
66
- // - move pinned toolbars
67
- let updatePinnedToolbars = false;
68
- let pinnedToolbars = this.api.dashboardApi.getPinnedToolbars();
69
- if (pinnedToolbars && !(pinnedToolbars === null || pinnedToolbars === void 0 ? void 0 : pinnedToolbars.includes('ColumnFilter'))) {
70
- pinnedToolbars = pinnedToolbars.map((pinnedToolbar) => {
71
- if (pinnedToolbar == 'Filter') {
72
- updatePinnedToolbars = true;
73
- return 'ColumnFilter';
74
- }
75
- return pinnedToolbar;
76
- });
77
- }
78
- if (updatePinnedToolbars) {
79
- this.api.dashboardApi.setPinnedToolbars(pinnedToolbars);
80
- }
81
- // Update Status Bar
82
- let updateStatusBars = false;
83
- const statusBars = this.api.statusBarApi
84
- .getAdaptableStatusBars()
85
- .map((panel) => {
86
- return Object.assign(Object.assign({}, panel), { StatusBarPanels: panel.StatusBarPanels.map((panel) => {
87
- if (panel === 'Filter') {
88
- updateStatusBars = true;
89
- return 'ColumnFilter';
90
- }
91
- return panel;
92
- }) });
93
- });
94
- if (updateStatusBars) {
95
- this.api.statusBarApi.setStatusBarPanels(statusBars);
96
- }
97
- }
98
- handleAdaptableReady() {
35
+ onAdaptableReady() {
99
36
  if (this.api.optionsApi.getColumnFilterOptions().quickFilterOptions.showQuickFilter == false) {
100
37
  this.api.columnFilterApi.hideQuickFilterBar();
101
38
  }
@@ -106,6 +43,43 @@ class ColumnFilterModule extends AdaptableModuleBase_1.AdaptableModuleBase {
106
43
  }
107
44
  });
108
45
  }
46
+ addColumnMenuItems(column) {
47
+ let filterSubMenuItems = [];
48
+ if (column &&
49
+ column.filterable &&
50
+ this.api.optionsApi.getColumnFilterOptions().useAdaptableColumnFiltering) {
51
+ if (this.api.gridApi.isQuickFilterAvailable()) {
52
+ const isFilterVisible = this.api.columnFilterApi.isQuickFilterVisible();
53
+ if (this.isModuleEditable() &&
54
+ this.api.optionsApi.getColumnFilterOptions().useAdaptableColumnFiltering) {
55
+ filterSubMenuItems.push(this.createMenuItemReduxAction(isFilterVisible ? 'column-filter-bar-hide' : 'column-filter-bar-show', isFilterVisible ? 'Hide Filter Bar' : 'Show Filter Bar', isFilterVisible ? 'unchecked' : 'check', isFilterVisible
56
+ ? SystemRedux.SystemQuickFilterBarHide()
57
+ : SystemRedux.SystemQuickFilterBarShow()));
58
+ }
59
+ }
60
+ const existingColumnFilter = this.getExistingColumnFilter(column);
61
+ if (existingColumnFilter) {
62
+ filterSubMenuItems.push(this.createMenuItemReduxAction('column-filter-clear', 'Clear Filter', 'close', LayoutRedux.LayoutColumnFilterClear(existingColumnFilter)));
63
+ filterSubMenuItems.push(this.createMenuItemReduxAction(existingColumnFilter.IsSuspended ? 'column-filter-unsuspend' : 'column-filter-suspend', existingColumnFilter.IsSuspended ? 'Unsuspend Filter' : 'Suspend Filter', existingColumnFilter.IsSuspended ? 'resume' : 'pause', existingColumnFilter.IsSuspended
64
+ ? LayoutRedux.LayoutColumnFilterUnSuspend(existingColumnFilter)
65
+ : LayoutRedux.LayoutColumnFilterSuspend(existingColumnFilter)));
66
+ }
67
+ if (ArrayExtensions_1.default.IsNotNullOrEmpty(filterSubMenuItems)) {
68
+ return [
69
+ {
70
+ name: 'parent',
71
+ label: this.moduleInfo.FriendlyName,
72
+ isVisible: true,
73
+ module: this.moduleInfo.ModuleName,
74
+ icon: {
75
+ name: this.moduleInfo.Glyph,
76
+ },
77
+ subItems: filterSubMenuItems,
78
+ },
79
+ ];
80
+ }
81
+ }
82
+ }
109
83
  addContextMenuItems(menuContext) {
110
84
  if (!menuContext.isRowGroupColumn && this.isModuleAvailable()) {
111
85
  if (menuContext.adaptableColumn &&
@@ -124,13 +98,15 @@ class ColumnFilterModule extends AdaptableModuleBase_1.AdaptableModuleBase {
124
98
  this.api.columnFilterApi.internalApi.createEqualityColumnFilterForCell(menuContext.selectedCellInfo.gridCells[0]);
125
99
  };
126
100
  return [
127
- this.createColumnMenuItemClickFunction(isMultiple ? 'Filter on Cell Values' : 'Filter on Cell Value', this.moduleInfo.Glyph, clickFunction),
101
+ this.createMenuItemClickFunction('column-filter-on-cell-value', isMultiple ? 'Filter on Cell Values' : 'Filter on Cell Value', this.moduleInfo.Glyph, clickFunction),
128
102
  ];
129
103
  }
130
104
  else {
131
105
  let filterSubMenuItems = [];
132
- filterSubMenuItems.push(this.createColumnMenuItemReduxAction('Clear Filter', 'close', LayoutRedux.LayoutColumnFilterClear(existingColumnFilter)));
133
- filterSubMenuItems.push(this.createColumnMenuItemClickFunction(existingColumnFilter.IsSuspended ? 'Unsuspend Filter' : 'Suspend Filter', existingColumnFilter.IsSuspended ? 'resume' : 'pause', existingColumnFilter.IsSuspended
106
+ filterSubMenuItems.push(this.createMenuItemReduxAction('column-filter-clear', 'Clear Filter', 'close', LayoutRedux.LayoutColumnFilterClear(existingColumnFilter)));
107
+ filterSubMenuItems.push(this.createMenuItemClickFunction(existingColumnFilter.IsSuspended
108
+ ? 'column-filter-unsuspend'
109
+ : 'column-filter-suspend', existingColumnFilter.IsSuspended ? 'Unsuspend Filter' : 'Suspend Filter', existingColumnFilter.IsSuspended ? 'resume' : 'pause', existingColumnFilter.IsSuspended
134
110
  ? () => {
135
111
  this.api.columnFilterApi.unSuspendColumnFilter(existingColumnFilter);
136
112
  }
@@ -139,6 +115,7 @@ class ColumnFilterModule extends AdaptableModuleBase_1.AdaptableModuleBase {
139
115
  }));
140
116
  return [
141
117
  {
118
+ name: 'parent',
142
119
  label: this.moduleInfo.FriendlyName,
143
120
  isVisible: true,
144
121
  module: this.moduleInfo.ModuleName,
@@ -152,42 +129,6 @@ class ColumnFilterModule extends AdaptableModuleBase_1.AdaptableModuleBase {
152
129
  }
153
130
  }
154
131
  }
155
- addColumnMenuItems(column) {
156
- let filterSubMenuItems = [];
157
- if (column &&
158
- column.filterable &&
159
- this.api.optionsApi.getColumnFilterOptions().useAdaptableColumnFiltering) {
160
- if (this.api.gridApi.isQuickFilterAvailable()) {
161
- const isFilterVisible = this.api.columnFilterApi.isQuickFilterVisible();
162
- if (this.isModuleEditable() &&
163
- this.api.optionsApi.getColumnFilterOptions().useAdaptableColumnFiltering) {
164
- filterSubMenuItems.push(this.createColumnMenuItemReduxAction(isFilterVisible ? 'Hide Filter Bar' : 'Show Filter Bar', isFilterVisible ? 'unchecked' : 'check', isFilterVisible
165
- ? SystemRedux.SystemQuickFilterBarHide()
166
- : SystemRedux.SystemQuickFilterBarShow()));
167
- }
168
- }
169
- const existingColumnFilter = this.getExistingColumnFilter(column);
170
- if (existingColumnFilter) {
171
- filterSubMenuItems.push(this.createColumnMenuItemReduxAction('Clear Filter', 'close', LayoutRedux.LayoutColumnFilterClear(existingColumnFilter)));
172
- filterSubMenuItems.push(this.createColumnMenuItemReduxAction(existingColumnFilter.IsSuspended ? 'Unsuspend Filter' : 'Suspend Filter', existingColumnFilter.IsSuspended ? 'resume' : 'pause', existingColumnFilter.IsSuspended
173
- ? LayoutRedux.LayoutColumnFilterUnSuspend(existingColumnFilter)
174
- : LayoutRedux.LayoutColumnFilterSuspend(existingColumnFilter)));
175
- }
176
- if (ArrayExtensions_1.default.IsNotNullOrEmpty(filterSubMenuItems)) {
177
- return [
178
- {
179
- label: this.moduleInfo.FriendlyName,
180
- isVisible: true,
181
- module: this.moduleInfo.ModuleName,
182
- icon: {
183
- name: this.moduleInfo.Glyph,
184
- },
185
- subItems: filterSubMenuItems,
186
- },
187
- ];
188
- }
189
- }
190
- }
191
132
  getExistingColumnFilter(column) {
192
133
  return this.api.columnFilterApi.getColumnFilters().find((x) => x.ColumnId == column.columnId);
193
134
  }
@@ -19,6 +19,7 @@ class ColumnInfoModule extends AdaptableModuleBase_1.AdaptableModuleBase {
19
19
  };
20
20
  return [
21
21
  this.createMainMenuItemShowPopup({
22
+ Name: 'column-info-show',
22
23
  Label: 'Column Info',
23
24
  ComponentName: this.moduleInfo.Popup,
24
25
  Icon: this.moduleInfo.Glyph,
@@ -35,6 +36,7 @@ class ColumnInfoModule extends AdaptableModuleBase_1.AdaptableModuleBase {
35
36
  };
36
37
  return [
37
38
  this.createMainMenuItemShowPopup({
39
+ Name: 'column-info-show',
38
40
  Label: 'Column Info',
39
41
  ComponentName: this.moduleInfo.Popup,
40
42
  Icon: this.moduleInfo.Glyph,
@@ -2,13 +2,10 @@ import { AdaptableApi } from '../Api/AdaptableApi';
2
2
  import { AdaptableMenuItem, ContextMenuContext } from '../PredefinedConfig/Common/Menu';
3
3
  import { AdaptableModuleBase } from './AdaptableModuleBase';
4
4
  import { IModule } from './Interface/IModule';
5
- /**
6
- * In the first iteration a cell can have only one note, the
7
- * notes is a list to allow further development.
8
- */
9
- export declare class CommentsModule extends AdaptableModuleBase implements IModule {
5
+ export declare class CommentModule extends AdaptableModuleBase implements IModule {
10
6
  private adaptable;
11
7
  constructor(api: AdaptableApi);
8
+ onAdaptableReady(): void;
12
9
  isModuleAvailable(): boolean;
13
10
  private loadComments;
14
11
  addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
@@ -1,32 +1,31 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CommentsModule = void 0;
3
+ exports.CommentModule = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const ModuleConstants = tslib_1.__importStar(require("../Utilities/Constants/ModuleConstants"));
6
6
  const ObjectFactory_1 = require("../Utilities/ObjectFactory");
7
7
  const AdaptableModuleBase_1 = require("./AdaptableModuleBase");
8
- /**
9
- * In the first iteration a cell can have only one note, the
10
- * notes is a list to allow further development.
11
- */
12
- class CommentsModule extends AdaptableModuleBase_1.AdaptableModuleBase {
8
+ class CommentModule extends AdaptableModuleBase_1.AdaptableModuleBase {
13
9
  constructor(api) {
14
- super(ModuleConstants.CommentsModuleId, ModuleConstants.CommentsFriendlyName, 'comments', 'CommentsPopup', 'comments', api);
15
- this.adaptable = api.internalApi.getAdaptableInstance();
16
- this.adaptable.api.eventApi.on('AdaptableReady', () => this.handleAdaptableReady());
10
+ super(ModuleConstants.CommentModuleId, ModuleConstants.CommentFriendlyName, 'comments', 'CommentsPopup', 'comments', api);
11
+ }
12
+ onAdaptableReady() {
17
13
  this.loadComments();
18
14
  }
19
15
  isModuleAvailable() {
20
- const options = this.adaptable.api.optionsApi.getCommentsOptions();
16
+ const options = this.api.optionsApi.getCommentOptions();
21
17
  if (!options || !options.persistCommentThreads || !options.loadCommentThreads) {
22
18
  return false;
23
19
  }
20
+ if (this.api.optionsApi.getAutogeneratePrimaryKey()) {
21
+ return false;
22
+ }
24
23
  return super.isModuleAvailable();
25
24
  }
26
25
  async loadComments() {
27
26
  var _a, _b;
28
27
  const commentThreads = await ((_b = (_a = this.api.optionsApi
29
- .getCommentsOptions()) === null || _a === void 0 ? void 0 : _a.loadCommentThreads) === null || _b === void 0 ? void 0 : _b.call(_a, (0, ObjectFactory_1.createBaseContext)(this.adaptable.api)));
28
+ .getCommentOptions()) === null || _a === void 0 ? void 0 : _a.loadCommentThreads) === null || _b === void 0 ? void 0 : _b.call(_a, (0, ObjectFactory_1.createBaseContext)(this.api)));
30
29
  this.api.commentApi.loadCommentThreads(commentThreads);
31
30
  }
32
31
  addContextMenuItems(menuContext) {
@@ -35,17 +34,9 @@ class CommentsModule extends AdaptableModuleBase_1.AdaptableModuleBase {
35
34
  return undefined;
36
35
  }
37
36
  const items = [];
38
- const isCellCommentable = (_b = (_a = this.adaptable.api.optionsApi) === null || _a === void 0 ? void 0 : _a.getCommentsOptions()) === null || _b === void 0 ? void 0 : _b.isCellCommentable;
37
+ const isCellCommentable = (_b = (_a = this.api.optionsApi) === null || _a === void 0 ? void 0 : _a.getCommentOptions()) === null || _b === void 0 ? void 0 : _b.isCellCommentable;
39
38
  if (!isCellCommentable ||
40
- isCellCommentable({
41
- adaptableApi: this.adaptable.api,
42
- address: {
43
- PrimaryKeyValue: menuContext.primaryKeyValue,
44
- ColumnId: menuContext.adaptableColumn.columnId,
45
- },
46
- userName: this.adaptable.api.optionsApi.getUserName(),
47
- adaptableId: this.adaptable.adaptableOptions.adaptableId,
48
- })) {
39
+ isCellCommentable(Object.assign({ gridCell: menuContext.gridCell }, (0, ObjectFactory_1.createBaseContext)(this.api)))) {
49
40
  items.push(...this.getAddRemoveCommentsMenuItems(menuContext));
50
41
  }
51
42
  return items;
@@ -57,14 +48,17 @@ class CommentsModule extends AdaptableModuleBase_1.AdaptableModuleBase {
57
48
  PrimaryKeyValue: menuContext.primaryKeyValue,
58
49
  ColumnId: menuContext.adaptableColumn.columnId,
59
50
  };
60
- const comments = this.adaptable.api.commentApi.getComments(cellAddress);
51
+ const comments = this.api.commentApi.getComments(cellAddress);
52
+ if (!this.api.commentApi.internalApi.areCommentsAvailable()) {
53
+ return items;
54
+ }
61
55
  if (comments) {
62
- items.push(this.createColumnMenuItemClickFunction('Remove Comments', this.moduleInfo.Glyph, () => {
56
+ items.push(this.createMenuItemClickFunction('comment-remove', 'Remove Comment', this.moduleInfo.Glyph, () => {
63
57
  this.api.commentApi.deleteCommentThread(cellAddress);
64
58
  }));
65
59
  }
66
60
  else {
67
- items.push(this.createColumnMenuItemClickFunction('Add Comment', this.moduleInfo.Glyph, () => {
61
+ items.push(this.createMenuItemClickFunction('comment-add', 'Add Comment', this.moduleInfo.Glyph, () => {
68
62
  // add an empty one
69
63
  this.api.commentApi.addCommentThread(Object.assign(Object.assign({}, cellAddress), { Comments: [] }));
70
64
  requestAnimationFrame(() => {
@@ -79,4 +73,4 @@ class CommentsModule extends AdaptableModuleBase_1.AdaptableModuleBase {
79
73
  return items;
80
74
  }
81
75
  }
82
- exports.CommentsModule = CommentsModule;
76
+ exports.CommentModule = CommentModule;
@@ -29,7 +29,7 @@ class CustomSortModule extends AdaptableModuleBase_1.AdaptableModuleBase {
29
29
  .find((x) => x.ColumnId == column.columnId);
30
30
  let label = customSort ? 'Edit ' : 'Create ';
31
31
  // dont show a menu item if there is a custom sort that uses a comparer function
32
- const columnSortComparer = this.api.customSortApi.internalApi.getCustomSortComparer(column);
32
+ const columnSortComparer = this.api.customSortApi.internalApi.getCustomSortComparer(column.columnId);
33
33
  if (columnSortComparer) {
34
34
  return undefined;
35
35
  }
@@ -38,8 +38,9 @@ class CustomSortModule extends AdaptableModuleBase_1.AdaptableModuleBase {
38
38
  action: customSort ? 'Edit' : 'New',
39
39
  source: 'ColumnMenu',
40
40
  };
41
+ let name = customSort ? 'custom-sort-edit' : 'custom-sort-add';
41
42
  return [
42
- this.createColumnMenuItemShowPopup(label + 'Custom Sort', this.moduleInfo.Popup, this.moduleInfo.Glyph, popupParam),
43
+ this.createMenuItemShowPopup(name, label + 'Custom Sort', this.moduleInfo.Popup, this.moduleInfo.Glyph, popupParam),
43
44
  ];
44
45
  }
45
46
  }
@@ -4,8 +4,7 @@ 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
- updateOldConfig(): void;
8
- handleAdaptableReady(): void;
7
+ onAdaptableReady(): void;
9
8
  addColumnMenuItems(): AdaptableMenuItem[] | undefined;
10
9
  addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
11
10
  private buildMenuItems;
@@ -9,14 +9,7 @@ class DashboardModule extends AdaptableModuleBase_1.AdaptableModuleBase {
9
9
  constructor(api) {
10
10
  super(ModuleConstants.DashboardModuleId, ModuleConstants.DashboardFriendlyName, 'dashboard', 'DashboardPopup', 'The Dashboard - usually placed above the Grid - is designed to provide quick access to commonly required AdapTable functionalty', api);
11
11
  }
12
- updateOldConfig() {
13
- let dashboardState = this.api.dashboardApi.getDashboardState();
14
- if (dashboardState.VisibleButtons) {
15
- this.api.logWarn(`Updating Obsolete VisibleButtons Config for DashboardState: [${dashboardState.VisibleButtons}]`);
16
- this.api.dashboardApi.setModuleButtons(dashboardState.VisibleButtons);
17
- }
18
- }
19
- handleAdaptableReady() {
12
+ onAdaptableReady() {
20
13
  // we used to create a default tab here but we no longer do // this.api.internalApi.setDefaultDashboardTab();
21
14
  // this handler reacts to the 'AdaptableReady' event,
22
15
  // but so do all the other possible handlers of the 'DashboardChanged' event
@@ -38,28 +31,29 @@ class DashboardModule extends AdaptableModuleBase_1.AdaptableModuleBase {
38
31
  if (this.isModuleAvailable()) {
39
32
  let menuItems = [];
40
33
  if (this.isModuleEditable()) {
41
- menuItems.push(this.createColumnMenuItemClickFunction('Configure', 'settings', () => this.api.dashboardApi.openDashboardSettingsPanel()));
34
+ menuItems.push(this.createMenuItemClickFunction('dashboard-configure', 'Configure', 'settings', () => this.api.dashboardApi.openDashboardSettingsPanel()));
42
35
  }
43
36
  if (this.api.dashboardApi.getDashboardState().IsCollapsed) {
44
- menuItems.push(this.createColumnMenuItemReduxAction('Expand', 'expand', DashboardRedux.DashboardSetIsCollapsed(false)));
37
+ menuItems.push(this.createMenuItemReduxAction('dashboard-expand', 'Expand', 'expand', DashboardRedux.DashboardSetIsCollapsed(false)));
45
38
  }
46
39
  else {
47
- menuItems.push(this.createColumnMenuItemReduxAction('Collapse', 'collapse', DashboardRedux.DashboardSetIsCollapsed(true)));
40
+ menuItems.push(this.createMenuItemReduxAction('dashboard-collapse', 'Collapse', 'collapse', DashboardRedux.DashboardSetIsCollapsed(true)));
48
41
  }
49
42
  if (this.api.dashboardApi.getDashboardState().IsFloating) {
50
- menuItems.push(this.createColumnMenuItemReduxAction('Dock', 'dock', DashboardRedux.DashboardSetIsFloating(false)));
43
+ menuItems.push(this.createMenuItemReduxAction('dashboard-dock', 'Dock', 'dock', DashboardRedux.DashboardSetIsFloating(false)));
51
44
  }
52
45
  else if (this.api.optionsApi.getDashboardOptions().canFloat) {
53
- menuItems.push(this.createColumnMenuItemReduxAction('Float', 'dock', DashboardRedux.DashboardSetIsFloating(true)));
46
+ menuItems.push(this.createMenuItemReduxAction('dashboard-float', 'Float', 'dock', DashboardRedux.DashboardSetIsFloating(true)));
54
47
  }
55
48
  if (this.api.dashboardApi.getDashboardState().IsHidden) {
56
- menuItems.push(this.createColumnMenuItemReduxAction('Show', 'visibility-on-bold', DashboardRedux.DashboardSetIsHidden(false)));
49
+ menuItems.push(this.createMenuItemReduxAction('dashboard-show', 'Show', 'visibility-on-bold', DashboardRedux.DashboardSetIsHidden(false)));
57
50
  }
58
51
  else {
59
- menuItems.push(this.createColumnMenuItemReduxAction('Hide', 'visibility-off-bold', DashboardRedux.DashboardSetIsHidden(true)));
52
+ menuItems.push(this.createMenuItemReduxAction('dashboard-hide', 'Hide', 'visibility-off-bold', DashboardRedux.DashboardSetIsHidden(true)));
60
53
  }
61
54
  return [
62
55
  {
56
+ name: 'parent',
63
57
  label: this.moduleInfo.FriendlyName,
64
58
  isVisible: true,
65
59
  module: this.moduleInfo.ModuleName,
@@ -3,6 +3,7 @@ import { AdaptableModuleView, IModule } from './Interface/IModule';
3
3
  import { AdaptableApi } from '../Api/AdaptableApi';
4
4
  export declare class DataChangeHistoryModule extends AdaptableModuleBase implements IModule {
5
5
  constructor(api: AdaptableApi);
6
+ onAdaptableReady(): void;
6
7
  isModuleAvailable(): boolean;
7
8
  getPopupMaxWidth(): number;
8
9
  hasNamedQueryReferences(): boolean;
@@ -10,6 +10,8 @@ const core_1 = require("ag-grid-community");
10
10
  class DataChangeHistoryModule extends AdaptableModuleBase_1.AdaptableModuleBase {
11
11
  constructor(api) {
12
12
  super(ModuleConstants.DataChangeHistoryModuleId, ModuleConstants.DataChangeHistoryFriendlyName, 'target', 'DataChangeHistoryPopup', 'Provides an overview of all previous changes, giving the possibility to undo specific changes', api);
13
+ }
14
+ onAdaptableReady() {
13
15
  this.api.internalApi
14
16
  .getDataService()
15
17
  .on('CellDataChanged', (cellDataChangedInfo) => {
@@ -24,7 +26,7 @@ class DataChangeHistoryModule extends AdaptableModuleBase_1.AdaptableModuleBase
24
26
  const isAdaptableModuleAvailable = super.isModuleAvailable();
25
27
  const isAgGridModuleAvailable = this.api.internalApi
26
28
  .getAdaptableInstance()
27
- .isAgGridModulePresent(core_1.ModuleNames.ClientSideRowModelModule);
29
+ .agGridAdapter.isModulePresent(core_1.ModuleNames.ClientSideRowModelModule);
28
30
  if (isAdaptableModuleAvailable && !isAgGridModuleAvailable) {
29
31
  this.api.logWarn(`Data Change History is NOT available due to missing required AG Grid module: ${core_1.ModuleNames.ClientSideRowModelModule}`);
30
32
  }
@@ -7,5 +7,5 @@ export declare class DataImportModule extends AdaptableModuleBase implements IMo
7
7
  addModuleMenuItem(source: 'ModuleMenu' | 'ModuleButton'): AdaptableMenuItem | undefined;
8
8
  addContextMenuItems(): AdaptableMenuItem[] | undefined;
9
9
  addColumnMenuItems(): AdaptableMenuItem[] | undefined;
10
- private getOpenPopupMenuItem;
10
+ private createDataImportMenuItem;
11
11
  }
@@ -10,27 +10,27 @@ class DataImportModule extends AdaptableModuleBase_1.AdaptableModuleBase {
10
10
  }
11
11
  addModuleMenuItem(source) {
12
12
  if (this.isModuleAvailable()) {
13
- return this.getOpenPopupMenuItem(source);
13
+ return this.createDataImportMenuItem(source);
14
14
  }
15
15
  }
16
16
  addContextMenuItems() {
17
17
  if (this.isModuleAvailable()) {
18
- return [this.getOpenPopupMenuItem('ContextMenu')];
18
+ return [this.createDataImportMenuItem('ContextMenu')];
19
19
  }
20
20
  return undefined;
21
21
  }
22
22
  addColumnMenuItems() {
23
23
  if (this.isModuleAvailable()) {
24
- return [this.getOpenPopupMenuItem('ColumnMenu')];
24
+ return [this.createDataImportMenuItem('ColumnMenu')];
25
25
  }
26
26
  }
27
- getOpenPopupMenuItem(source) {
27
+ createDataImportMenuItem(source) {
28
28
  const moduleParams = {
29
29
  action: 'New',
30
30
  source: source,
31
31
  maxWidth: this.getPopupMaxWidth(),
32
32
  };
33
- return this.createColumnMenuItemShowPopup('Import Data', this.moduleInfo.Popup, this.moduleInfo.Glyph, moduleParams);
33
+ return this.createMenuItemShowPopup('data-import', 'Import Data', this.moduleInfo.Popup, this.moduleInfo.Glyph, moduleParams);
34
34
  }
35
35
  }
36
36
  exports.DataImportModule = DataImportModule;
@@ -5,7 +5,7 @@ import { AdaptableObject } from '../PredefinedConfig/Common/AdaptableObject';
5
5
  import { DataSet } from '../AdaptableOptions/DataSetOptions';
6
6
  export declare class DataSetModule extends AdaptableModuleBase implements IModule {
7
7
  constructor(api: AdaptableApi);
8
- handleAdaptableReady(): void;
8
+ onAdaptableReady(): void;
9
9
  getModuleAdaptableObjects(): AdaptableObject[];
10
10
  hasNamedQueryReferences(): boolean;
11
11
  toView(dataSet: DataSet): AdaptableObjectView;
@@ -12,7 +12,7 @@ class DataSetModule extends AdaptableModuleBase_1.AdaptableModuleBase {
12
12
  constructor(api) {
13
13
  super(ModuleConstants.DataSetModuleId, ModuleConstants.DataSetFriendlyName, 'data-set', 'DataSetPopup', 'Update the entire data source in AdapTable using pre-populated data sets', api);
14
14
  }
15
- handleAdaptableReady() {
15
+ onAdaptableReady() {
16
16
  this.api.dataSetApi.getDataSets().forEach((ds) => {
17
17
  if (!ds.Uuid) {
18
18
  ds.Uuid = (0, Uuid_1.createUuid)();
@@ -15,6 +15,7 @@ export declare class ExportModule extends AdaptableModuleBase implements IExport
15
15
  addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
16
16
  private buildReportMenuItems;
17
17
  private buildExportMenuItem;
18
+ private getMenuName;
18
19
  export(report: Report, exportDestination: ExportDestination | string): Promise<void>;
19
20
  private preProcessExport;
20
21
  private isCustomDestination;
@@ -90,15 +90,16 @@ class ExportModule extends AdaptableModuleBase_1.AdaptableModuleBase {
90
90
  buildReportMenuItems(report) {
91
91
  const menuItems = [];
92
92
  for (const destination of this.api.exportApi.getAvailableExportDestinations()) {
93
- menuItems.push(this.createColumnMenuItemClickFunction(destination, this.moduleInfo.Glyph, () => this.export(report, destination)));
93
+ menuItems.push(this.createMenuItemClickFunction(this.getMenuName(destination), destination, this.moduleInfo.Glyph, () => this.export(report, destination)));
94
94
  }
95
95
  for (const customDestination of this.api.exportApi.getCustomDestinations()) {
96
- menuItems.push(this.createColumnMenuItemClickFunction(customDestination.name, this.moduleInfo.Glyph, () => this.export(report, customDestination.name)));
96
+ menuItems.push(this.createMenuItemClickFunction('export-custom-destination', customDestination.name, this.moduleInfo.Glyph, () => this.export(report, customDestination.name)));
97
97
  }
98
98
  return menuItems;
99
99
  }
100
100
  buildExportMenuItem(label, subItems) {
101
101
  return {
102
+ name: 'parent',
102
103
  label: label,
103
104
  module: this.moduleInfo.ModuleName,
104
105
  isVisible: true,
@@ -106,6 +107,20 @@ class ExportModule extends AdaptableModuleBase_1.AdaptableModuleBase {
106
107
  subItems: subItems,
107
108
  };
108
109
  }
110
+ getMenuName(exportDestination) {
111
+ switch (exportDestination) {
112
+ case Enums_1.ExportDestination.CSV:
113
+ return 'export-csv';
114
+ case Enums_1.ExportDestination.Clipboard:
115
+ return 'export-clipboard';
116
+ case Enums_1.ExportDestination.Excel:
117
+ return 'export-excel';
118
+ case Enums_1.ExportDestination.JSON:
119
+ return 'export-json';
120
+ case Enums_1.ExportDestination.Table:
121
+ return 'export-table';
122
+ }
123
+ }
109
124
  async export(report, exportDestination) {
110
125
  var _a;
111
126
  const cleanupExportProcess = () => {
@@ -31,6 +31,7 @@ class Fdc3Module extends AdaptableModuleBase_1.AdaptableModuleBase {
31
31
  contextMenuItems.sort((a, b) => a.label.localeCompare(b.label));
32
32
  if (contextMenuItems.length > 1) {
33
33
  const groupMenuItem = {
34
+ name: 'parent',
34
35
  module: this.moduleInfo.ModuleName,
35
36
  label: 'FDC3',
36
37
  icon: {
@@ -48,6 +49,7 @@ class Fdc3Module extends AdaptableModuleBase_1.AdaptableModuleBase {
48
49
  var _a, _b, _c;
49
50
  const { intentType, contextType } = intentConfig;
50
51
  const menuItem = {
52
+ name: 'fdc3-raise-intent',
51
53
  label: `Raise ${intentType}`,
52
54
  onClick: () => {
53
55
  this.getFdc3Api().raiseIntentFromRow(rowNode, intentType, contextType);
@@ -67,6 +69,7 @@ class Fdc3Module extends AdaptableModuleBase_1.AdaptableModuleBase {
67
69
  var _a, _b, _c;
68
70
  const { contextType } = contextConfig;
69
71
  const menuItem = {
72
+ name: 'fdc3-broadcast',
70
73
  label: `Broadcast ${this.getFdc3Api().getContextLabel(contextType)}`,
71
74
  onClick: () => {
72
75
  this.getFdc3Api().broadcastFromRow(rowNode, contextType);
@@ -9,8 +9,7 @@ import { AdaptableObject } from '../PredefinedConfig/Common/AdaptableObject';
9
9
  import { FlashingCellDefinition } from '../PredefinedConfig/FlashingCellState';
10
10
  export declare class FlashingCellModule extends AdaptableModuleBase implements IModule {
11
11
  constructor(api: AdaptableApi);
12
- updateOldConfig(): void;
13
- private updateFlashingCellSingleToMultiplePredicates;
12
+ onAdaptableReady(): void;
14
13
  getModuleAdaptableObjects(config?: {
15
14
  includeLayoutNotAssociatedObjects?: boolean;
16
15
  }): AdaptableObject[];
@@ -15,11 +15,11 @@ const FlashingCellWizard_1 = require("../View/FlashingCell/Wizard/FlashingCellWi
15
15
  const getObjectTagsViewItems_1 = require("./Utilities/getObjectTagsViewItems");
16
16
  const getFlashingTargetViewItems_1 = require("./Utilities/FlashingCell/getFlashingTargetViewItems");
17
17
  const getFlashingCellStyleViewItems_1 = require("./Utilities/FlashingCell/getFlashingCellStyleViewItems");
18
- const Helper_1 = require("../Utilities/Helpers/Helper");
19
- const updateSingleToMultiplePredicates_1 = require("./Utilities/updateSingleToMultiplePredicates");
20
18
  class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
21
19
  constructor(api) {
22
20
  super(ModuleConstants.FlashingCellModuleId, ModuleConstants.FlashingCellFriendlyName, 'lightning', 'FlashingAlert', 'Flash cells when they change', api);
21
+ }
22
+ onAdaptableReady() {
23
23
  this.api.internalApi
24
24
  .getDataService()
25
25
  .on('CellDataChanged', (cellDataChangedInfo) => {
@@ -42,19 +42,6 @@ class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
42
42
  this.handleCellDataChanged(cellDataChangedInfo);
43
43
  });
44
44
  }
45
- updateOldConfig() {
46
- this.updateFlashingCellSingleToMultiplePredicates();
47
- }
48
- updateFlashingCellSingleToMultiplePredicates() {
49
- const flashingCells = this.api.flashingCellApi.getFlashingCellDefinitions();
50
- flashingCells.forEach((flashingCell) => {
51
- if (flashingCell.Rule && 'Predicate' in flashingCell.Rule) {
52
- const preparedFlashingCell = (0, Helper_1.cloneObject)(flashingCell);
53
- (0, updateSingleToMultiplePredicates_1.updateSingleToMultiplePredicates)(preparedFlashingCell.Rule);
54
- this.api.flashingCellApi.editFlashingCellDefinition(preparedFlashingCell);
55
- }
56
- });
57
- }
58
45
  getModuleAdaptableObjects(config) {
59
46
  return this.api.flashingCellApi.getFlashingCellDefinitions(config);
60
47
  }
@@ -86,11 +73,11 @@ class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
86
73
  });
87
74
  if (flashingCellForCurrentColumn) {
88
75
  return [
89
- this.createColumnMenuItemReduxAction('Remove Flashing Cell', this.moduleInfo.Glyph, FlashingCellRedux.FlashingCellDefinitionDelete(flashingCellForCurrentColumn)),
76
+ this.createMenuItemReduxAction('flashing-cell-delete', 'Delete Flashing Cell', this.moduleInfo.Glyph, FlashingCellRedux.FlashingCellDefinitionDelete(flashingCellForCurrentColumn)),
90
77
  ];
91
78
  }
92
79
  return [
93
- this.createColumnMenuItemReduxAction('Add Flashing Cell', this.moduleInfo.Glyph, FlashingCellRedux.FlashingCellDefinitionAdd({
80
+ this.createMenuItemReduxAction('flashing-cell-add', 'Add Flashing Cell', this.moduleInfo.Glyph, FlashingCellRedux.FlashingCellDefinitionAdd({
94
81
  Scope: {
95
82
  ColumnIds: [column.columnId],
96
83
  },
@@ -112,11 +99,11 @@ class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
112
99
  if (flashingCellForRow.flashTarget === 'row' ||
113
100
  (Array.isArray(flashingCellForRow === null || flashingCellForRow === void 0 ? void 0 : flashingCellForRow.flashTarget) &&
114
101
  flashingCellForRow.flashTarget.includes('row'))) {
115
- items.push(this.createColumnMenuItemReduxAction('Clear Flashing Row', this.moduleInfo.Glyph, SystemRedux.SystemFlashingCellDelete(flashingCellForRow)));
102
+ items.push(this.createMenuItemReduxAction('flashing-row-clear', 'Clear Flashing Row', this.moduleInfo.Glyph, SystemRedux.SystemFlashingCellDelete(flashingCellForRow)));
116
103
  }
117
104
  }
118
105
  else if (flashingCellForCell && flashingCellForCell.flashTarget === 'cell') {
119
- items.push(this.createColumnMenuItemReduxAction('Clear Flashing Cell', this.moduleInfo.Glyph, SystemRedux.SystemFlashingCellDelete(flashingCellForCell)));
106
+ items.push(this.createMenuItemReduxAction('flashing-cell-clear', 'Clear Flashing Cell', this.moduleInfo.Glyph, SystemRedux.SystemFlashingCellDelete(flashingCellForCell)));
120
107
  }
121
108
  }
122
109
  }
@@ -13,8 +13,6 @@ export declare class FormatColumnModule extends AdaptableModuleBase implements I
13
13
  }): AdaptableObject[];
14
14
  getExplicitlyReferencedColumnIds(formatColumn: FormatColumn): string[];
15
15
  getReferencedNamedQueryNames(formatColumn: FormatColumn): string[];
16
- updateOldConfig(): void;
17
- private updateFormatColumnSingleToMultiplePredicates;
18
16
  addColumnMenuItems(column: AdaptableColumn): AdaptableMenuItem[] | undefined;
19
17
  getTeamSharingAction(): TeamSharingImportInfo<FormatColumn>;
20
18
  toView(formatColumn: FormatColumn): AdaptableObjectView;