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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (438) hide show
  1. package/base.css +18 -20
  2. package/base.css.map +1 -1
  3. package/index.css +22 -20
  4. package/index.css.map +1 -1
  5. package/package.json +1 -1
  6. package/src/AdaptableInterfaces/IAdaptable.d.ts +10 -4
  7. package/src/AdaptableOptions/ActionColumnOptions.d.ts +3 -2
  8. package/src/AdaptableOptions/AdaptableFrameworkComponent.d.ts +3 -0
  9. package/src/AdaptableOptions/AdaptableOptions.d.ts +15 -14
  10. package/src/AdaptableOptions/AdaptablePlugin.d.ts +2 -0
  11. package/src/AdaptableOptions/AdaptablePlugin.js +2 -0
  12. package/src/AdaptableOptions/ColumnFilterOptions.d.ts +7 -0
  13. package/src/AdaptableOptions/ColumnMenuOptions.d.ts +94 -0
  14. package/src/AdaptableOptions/ColumnOptions.d.ts +9 -4
  15. package/src/AdaptableOptions/CommentOptions.d.ts +20 -9
  16. package/src/AdaptableOptions/ContextMenuOptions.d.ts +94 -0
  17. package/src/AdaptableOptions/CustomSortOptions.d.ts +2 -2
  18. package/src/AdaptableOptions/DataImportOptions.d.ts +2 -2
  19. package/src/AdaptableOptions/FormatColumnOptions.d.ts +2 -2
  20. package/src/AdaptableOptions/GroupingOptions.d.ts +0 -26
  21. package/src/AdaptableOptions/NoteOptions.d.ts +12 -3
  22. package/src/AdaptableOptions/PredicateOptions.d.ts +2 -2
  23. package/src/AdaptableOptions/QuickSearchOptions.d.ts +1 -1
  24. package/src/AdaptableOptions/StateOptions.d.ts +6 -0
  25. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +2 -2
  26. package/src/Api/AdaptableApi.d.ts +16 -6
  27. package/src/Api/ColumnApi.d.ts +13 -0
  28. package/src/Api/ColumnMenuApi.d.ts +13 -0
  29. package/src/Api/{ScopeApi.d.ts → ColumnScopeApi.d.ts} +36 -26
  30. package/src/Api/CommentApi.d.ts +20 -22
  31. package/src/Api/ConfigApi.d.ts +4 -5
  32. package/src/Api/ContextMenuApi.d.ts +9 -0
  33. package/src/Api/EventApi.d.ts +7 -9
  34. package/src/Api/Events/CommentChanged.d.ts +11 -0
  35. package/src/Api/Events/CommentChanged.js +2 -0
  36. package/src/Api/Events/GridDataChanged.d.ts +1 -1
  37. package/src/Api/FlashingCellApi.d.ts +2 -2
  38. package/src/Api/GridApi.d.ts +35 -3
  39. package/src/Api/Implementation/ActionColumnApiImpl.js +3 -6
  40. package/src/Api/Implementation/ActionRowApiImpl.js +3 -7
  41. package/src/Api/Implementation/AdaptableApiImpl.d.ts +7 -5
  42. package/src/Api/Implementation/AdaptableApiImpl.js +9 -5
  43. package/src/Api/Implementation/AlertApiImpl.js +8 -13
  44. package/src/Api/Implementation/ApiBase.d.ts +6 -4
  45. package/src/Api/Implementation/ApiBase.js +11 -5
  46. package/src/Api/Implementation/CalendarApiImpl.js +1 -6
  47. package/src/Api/Implementation/CellSummaryApiImpl.d.ts +0 -5
  48. package/src/Api/Implementation/CellSummaryApiImpl.js +2 -23
  49. package/src/Api/Implementation/ChartingApiImpl.js +3 -3
  50. package/src/Api/Implementation/ColumnApiImpl.d.ts +5 -0
  51. package/src/Api/Implementation/ColumnApiImpl.js +48 -16
  52. package/src/Api/Implementation/ColumnFilterApiImpl.js +7 -7
  53. package/src/Api/Implementation/ColumnMenuApiImpl.d.ts +8 -0
  54. package/src/Api/Implementation/ColumnMenuApiImpl.js +16 -0
  55. package/src/Api/Implementation/ColumnScopeApiImpl.d.ts +33 -0
  56. package/src/Api/Implementation/{ScopeApiImpl.js → ColumnScopeApiImpl.js} +67 -21
  57. package/src/Api/Implementation/CommentsApiImpl.d.ts +8 -5
  58. package/src/Api/Implementation/CommentsApiImpl.js +10 -5
  59. package/src/Api/Implementation/ConfigApiImpl.d.ts +2 -2
  60. package/src/Api/Implementation/ConfigApiImpl.js +27 -28
  61. package/src/Api/Implementation/ContextMenuApiImpl.d.ts +7 -0
  62. package/src/Api/Implementation/ContextMenuApiImpl.js +13 -0
  63. package/src/Api/Implementation/DashboardApiImpl.js +1 -6
  64. package/src/Api/Implementation/ExportApiImpl.js +5 -10
  65. package/src/Api/Implementation/ExpressionApiImpl.js +14 -19
  66. package/src/Api/Implementation/Fdc3ApiImpl.js +1 -1
  67. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +2 -2
  68. package/src/Api/Implementation/FlashingCellApiImpl.js +3 -8
  69. package/src/Api/Implementation/FormatColumnApiImpl.js +4 -4
  70. package/src/Api/Implementation/FreeTextColumnApiImpl.js +1 -1
  71. package/src/Api/Implementation/GridApiImpl.d.ts +9 -1
  72. package/src/Api/Implementation/GridApiImpl.js +63 -9
  73. package/src/Api/Implementation/LayoutApiImpl.d.ts +4 -11
  74. package/src/Api/Implementation/LayoutApiImpl.js +19 -27
  75. package/src/Api/Implementation/NoteApiImpl.d.ts +18 -0
  76. package/src/Api/Implementation/NoteApiImpl.js +45 -0
  77. package/src/Api/Implementation/OptionsApiImpl.d.ts +6 -5
  78. package/src/Api/Implementation/OptionsApiImpl.js +7 -4
  79. package/src/Api/Implementation/PredicateApiImpl.js +2 -2
  80. package/src/Api/Implementation/ScheduleApiImpl.js +6 -6
  81. package/src/Api/Implementation/TeamSharingApiImpl.js +3 -15
  82. package/src/Api/Implementation/ThemeApiImpl.js +2 -7
  83. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +14 -8
  84. package/src/Api/Implementation/UserInterfaceApiImpl.js +32 -27
  85. package/src/Api/Internal/ActionRowInternalApi.d.ts +1 -0
  86. package/src/Api/Internal/ActionRowInternalApi.js +19 -46
  87. package/src/Api/Internal/AdaptableInternalApi.d.ts +3 -4
  88. package/src/Api/Internal/AdaptableInternalApi.js +16 -30
  89. package/src/Api/Internal/AlertInternalApi.d.ts +2 -2
  90. package/src/Api/Internal/AlertInternalApi.js +7 -20
  91. package/src/Api/Internal/CalculatedColumnInternalApi.js +11 -17
  92. package/src/Api/Internal/ChartingInternalApi.js +13 -13
  93. package/src/Api/Internal/ColumnFilterInternalApi.d.ts +1 -0
  94. package/src/Api/Internal/ColumnFilterInternalApi.js +24 -30
  95. package/src/Api/Internal/ColumnInternalApi.d.ts +2 -0
  96. package/src/Api/Internal/ColumnInternalApi.js +8 -1
  97. package/src/Api/Internal/CommentsInternalApi.d.ts +4 -0
  98. package/src/Api/Internal/CommentsInternalApi.js +18 -0
  99. package/src/Api/Internal/CustomSortInternalApi.js +1 -1
  100. package/src/Api/Internal/DashboardInternalApi.js +5 -11
  101. package/src/Api/Internal/DataImportInternalApi.js +3 -9
  102. package/src/Api/Internal/DataSetInternalApi.js +2 -7
  103. package/src/Api/Internal/ExportInternalApi.d.ts +2 -1
  104. package/src/Api/Internal/ExportInternalApi.js +8 -5
  105. package/src/Api/Internal/ExpressionInternalApi.js +3 -13
  106. package/src/Api/Internal/Fdc3InternalApi.js +3 -12
  107. package/src/Api/Internal/FormatColumnInternalApi.d.ts +3 -6
  108. package/src/Api/Internal/FormatColumnInternalApi.js +38 -30
  109. package/src/Api/Internal/FreeTextColumnInternalApi.js +5 -4
  110. package/src/Api/Internal/GridFilterInternalApi.d.ts +5 -0
  111. package/src/Api/Internal/GridFilterInternalApi.js +8 -8
  112. package/src/Api/Internal/GridInternalApi.d.ts +2 -0
  113. package/src/Api/Internal/GridInternalApi.js +28 -40
  114. package/src/Api/Internal/LayoutInternalApi.d.ts +2 -0
  115. package/src/Api/Internal/LayoutInternalApi.js +26 -19
  116. package/src/Api/Internal/NoteInternalApi.d.ts +4 -0
  117. package/src/Api/Internal/NoteInternalApi.js +18 -0
  118. package/src/Api/Internal/PredicateInternalApi.d.ts +6 -6
  119. package/src/Api/Internal/PredicateInternalApi.js +5 -40
  120. package/src/Api/Internal/ScheduleInternalApi.js +1 -6
  121. package/src/Api/Internal/StyledColumnInternalApi.d.ts +2 -2
  122. package/src/Api/Internal/StyledColumnInternalApi.js +8 -9
  123. package/src/Api/Internal/SystemStatusInternalApi.js +1 -7
  124. package/src/Api/Internal/TeamSharingInternalApi.js +2 -7
  125. package/src/Api/Internal/ThemeInternalApi.js +1 -1
  126. package/src/Api/Internal/UserInterfaceInternalApi.js +1 -1
  127. package/src/Api/LayoutApi.d.ts +15 -15
  128. package/src/Api/NoteApi.d.ts +48 -0
  129. package/src/Api/NoteApi.js +2 -0
  130. package/src/Api/OptionsApi.d.ts +14 -10
  131. package/src/Api/UserInterfaceApi.d.ts +15 -13
  132. package/src/PredefinedConfig/AdaptableState.d.ts +2 -2
  133. package/src/PredefinedConfig/AlertState.d.ts +2 -2
  134. package/src/PredefinedConfig/CommentState.d.ts +27 -23
  135. package/src/PredefinedConfig/Common/AdaptableColumn.d.ts +4 -0
  136. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
  137. package/src/PredefinedConfig/Common/AdaptableObject.d.ts +4 -4
  138. package/src/PredefinedConfig/Common/AdaptablePredicate.d.ts +2 -2
  139. package/src/PredefinedConfig/Common/CellSummary.d.ts +5 -14
  140. package/src/PredefinedConfig/Common/{AdaptableScope.d.ts → ColumnScope.d.ts} +4 -1
  141. package/src/PredefinedConfig/Common/ColumnScope.js +2 -0
  142. package/src/PredefinedConfig/Common/DataUpdateConfig.d.ts +1 -5
  143. package/src/PredefinedConfig/Common/Enums.d.ts +4 -1
  144. package/src/PredefinedConfig/Common/Enums.js +3 -0
  145. package/src/PredefinedConfig/Common/Fdc3Intent.d.ts +2 -2
  146. package/src/PredefinedConfig/Common/Menu.d.ts +39 -4
  147. package/src/PredefinedConfig/Common/Menu.js +126 -0
  148. package/src/PredefinedConfig/Common/RowScope.d.ts +17 -0
  149. package/src/PredefinedConfig/Common/RowScope.js +2 -0
  150. package/src/PredefinedConfig/Common/RowSummary.d.ts +21 -0
  151. package/src/PredefinedConfig/Common/RowSummary.js +20 -0
  152. package/src/PredefinedConfig/Common/TransposeConfig.d.ts +30 -0
  153. package/src/PredefinedConfig/Common/TransposeConfig.js +2 -0
  154. package/src/PredefinedConfig/Common/Types.d.ts +4 -4
  155. package/src/PredefinedConfig/Common/Types.js +4 -1
  156. package/src/PredefinedConfig/ExportState.d.ts +2 -2
  157. package/src/PredefinedConfig/FlashingCellState.d.ts +2 -2
  158. package/src/PredefinedConfig/FormatColumnState.d.ts +9 -5
  159. package/src/PredefinedConfig/LayoutState.d.ts +6 -1
  160. package/src/PredefinedConfig/{NotesState.d.ts → NoteState.d.ts} +4 -4
  161. package/src/PredefinedConfig/NoteState.js +2 -0
  162. package/src/PredefinedConfig/PlusMinusState.d.ts +2 -2
  163. package/src/PredefinedConfig/PopupState.d.ts +1 -2
  164. package/src/PredefinedConfig/PredefinedConfig.d.ts +2 -2
  165. package/src/PredefinedConfig/Selection/GridCell.d.ts +13 -0
  166. package/src/PredefinedConfig/ShortcutState.d.ts +2 -2
  167. package/src/PredefinedConfig/StyledColumnState.d.ts +5 -5
  168. package/src/PredefinedConfig/SystemState.d.ts +12 -4
  169. package/src/Redux/ActionsReducers/CommentsRedux.d.ts +0 -4
  170. package/src/Redux/ActionsReducers/CommentsRedux.js +1 -39
  171. package/src/Redux/ActionsReducers/LayoutRedux.d.ts +9 -0
  172. package/src/Redux/ActionsReducers/LayoutRedux.js +34 -11
  173. package/src/Redux/ActionsReducers/NoteRedux.d.ts +38 -0
  174. package/src/Redux/ActionsReducers/{NotesRedux.js → NoteRedux.js} +31 -31
  175. package/src/Redux/ActionsReducers/PopupRedux.d.ts +5 -13
  176. package/src/Redux/ActionsReducers/PopupRedux.js +1 -22
  177. package/src/Redux/ActionsReducers/SystemRedux.d.ts +15 -4
  178. package/src/Redux/ActionsReducers/SystemRedux.js +27 -11
  179. package/src/Redux/Store/AdaptableStore.js +47 -29
  180. package/src/Redux/Store/Interface/IAdaptableStore.d.ts +2 -2
  181. package/src/Strategy/AdaptableModuleBase.d.ts +10 -10
  182. package/src/Strategy/AdaptableModuleBase.js +13 -16
  183. package/src/Strategy/AlertModule.d.ts +3 -2
  184. package/src/Strategy/AlertModule.js +4 -4
  185. package/src/Strategy/BulkUpdateModule.d.ts +3 -2
  186. package/src/Strategy/BulkUpdateModule.js +2 -1
  187. package/src/Strategy/CalculatedColumnModule.d.ts +3 -4
  188. package/src/Strategy/CalculatedColumnModule.js +18 -14
  189. package/src/Strategy/CellSummaryModule.d.ts +10 -9
  190. package/src/Strategy/CellSummaryModule.js +101 -83
  191. package/src/Strategy/ColumnFilterModule.d.ts +3 -3
  192. package/src/Strategy/ColumnFilterModule.js +36 -57
  193. package/src/Strategy/ColumnInfoModule.d.ts +3 -3
  194. package/src/Strategy/ColumnInfoModule.js +6 -4
  195. package/src/Strategy/CommentModule.d.ts +12 -0
  196. package/src/Strategy/CommentModule.js +75 -0
  197. package/src/Strategy/CustomSortModule.d.ts +1 -2
  198. package/src/Strategy/CustomSortModule.js +3 -2
  199. package/src/Strategy/DashboardModule.d.ts +3 -3
  200. package/src/Strategy/DashboardModule.js +10 -20
  201. package/src/Strategy/DataImportModule.d.ts +4 -4
  202. package/src/Strategy/DataImportModule.js +8 -8
  203. package/src/Strategy/ExportModule.d.ts +1 -2
  204. package/src/Strategy/ExportModule.js +56 -42
  205. package/src/Strategy/Fdc3Module.d.ts +1 -1
  206. package/src/Strategy/Fdc3Module.js +3 -13
  207. package/src/Strategy/FlashingCellModule.d.ts +4 -3
  208. package/src/Strategy/FlashingCellModule.js +10 -10
  209. package/src/Strategy/FormatColumnModule.d.ts +1 -1
  210. package/src/Strategy/FormatColumnModule.js +29 -47
  211. package/src/Strategy/FreeTextColumnModule.d.ts +1 -2
  212. package/src/Strategy/FreeTextColumnModule.js +2 -2
  213. package/src/Strategy/GridInfoModule.d.ts +3 -3
  214. package/src/Strategy/GridInfoModule.js +5 -3
  215. package/src/Strategy/Interface/IModule.d.ts +4 -4
  216. package/src/Strategy/LayoutModule.d.ts +4 -3
  217. package/src/Strategy/LayoutModule.js +71 -72
  218. package/src/Strategy/NoteModule.d.ts +10 -0
  219. package/src/Strategy/NoteModule.js +60 -0
  220. package/src/Strategy/PlusMinusModule.d.ts +1 -2
  221. package/src/Strategy/PlusMinusModule.js +5 -5
  222. package/src/Strategy/SettingsPanelModule.d.ts +3 -3
  223. package/src/Strategy/SettingsPanelModule.js +6 -6
  224. package/src/Strategy/ShortcutModule.js +1 -1
  225. package/src/Strategy/SmartEditModule.d.ts +3 -2
  226. package/src/Strategy/SmartEditModule.js +2 -1
  227. package/src/Strategy/StyledColumnModule.d.ts +2 -1
  228. package/src/Strategy/StyledColumnModule.js +42 -22
  229. package/src/Strategy/SystemStatusModule.d.ts +3 -3
  230. package/src/Strategy/SystemStatusModule.js +6 -3
  231. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +4 -2
  232. package/src/Strategy/Utilities/getScopeViewItems.d.ts +2 -2
  233. package/src/Strategy/Utilities/getScopeViewItems.js +3 -0
  234. package/src/Utilities/Constants/GeneralConstants.d.ts +1 -0
  235. package/src/Utilities/Constants/GeneralConstants.js +3 -2
  236. package/src/Utilities/Constants/ModuleConstants.d.ts +6 -6
  237. package/src/Utilities/Constants/ModuleConstants.js +7 -7
  238. package/src/Utilities/Defaults/DefaultSettingsPanel.js +2 -2
  239. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +3 -2
  240. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +434 -3
  241. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +3 -3
  242. package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +1 -1
  243. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +1 -1
  244. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +15 -0
  245. package/src/Utilities/Extensions/ArrayExtensions.d.ts +2 -0
  246. package/src/Utilities/Extensions/ArrayExtensions.js +6 -1
  247. package/src/Utilities/Helpers/AdaptableHelper.d.ts +3 -1
  248. package/src/Utilities/Helpers/AdaptableHelper.js +21 -1
  249. package/src/Utilities/Interface/MessagePopups.d.ts +0 -3
  250. package/src/Utilities/MenuItem.d.ts +10 -7
  251. package/src/Utilities/MenuItem.js +6 -3
  252. package/src/Utilities/ObjectFactory.d.ts +3 -3
  253. package/src/Utilities/ObjectFactory.js +7 -25
  254. package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +4 -2
  255. package/src/Utilities/Services/AggregatedScalarLiveValue.js +23 -18
  256. package/src/Utilities/Services/CellPopupService.js +4 -4
  257. package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +1 -1
  258. package/src/Utilities/Services/Interface/IReportService.d.ts +1 -4
  259. package/src/Utilities/Services/LicenseService/index.js +1 -195
  260. package/src/Utilities/Services/ModuleService.js +6 -2
  261. package/src/Utilities/Services/QueryLanguageService.d.ts +1 -1
  262. package/src/Utilities/Services/QueryLanguageService.js +4 -3
  263. package/src/Utilities/Services/ReportService.d.ts +7 -5
  264. package/src/Utilities/Services/ReportService.js +245 -26
  265. package/src/Utilities/Services/RowSummaryService.d.ts +26 -0
  266. package/src/Utilities/Services/RowSummaryService.js +160 -0
  267. package/src/Utilities/Services/ValidationService.js +2 -2
  268. package/src/Utilities/adaptableQlUtils.d.ts +2 -0
  269. package/src/Utilities/adaptableQlUtils.js +18 -0
  270. package/src/Utilities/license/decode.js +1 -70
  271. package/src/Utilities/license/hashing.js +1 -47
  272. package/src/View/AdaptableViewFactory.js +2 -2
  273. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +1 -1
  274. package/src/View/Alert/AlertEntityRow.js +1 -1
  275. package/src/View/Alert/Utilities/getAvailablePredicates.d.ts +2 -2
  276. package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +1 -1
  277. package/src/View/Alert/Wizard/AlertScopeWizardSection.js +2 -2
  278. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +1 -1
  279. package/src/View/BulkUpdate/BulkUpdatePopup.js +2 -2
  280. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.d.ts +1 -1
  281. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +3 -3
  282. package/src/View/ColumnInfo/ColumnInfo.js +1 -1
  283. package/src/View/Comments/CommentsEditor.js +28 -17
  284. package/src/View/Comments/CommentsPopup.js +15 -7
  285. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  286. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.d.ts +5 -0
  287. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.js +46 -0
  288. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +5 -2
  289. package/src/View/Components/CellPopup/index.d.ts +1 -0
  290. package/src/View/Components/CellPopup/index.js +6 -3
  291. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.d.ts +3 -3
  292. package/src/View/Components/EntityRulesEditor/index.d.ts +3 -3
  293. package/src/View/Components/FilterForm/FilterForm.js +20 -12
  294. package/src/View/Components/FilterForm/QuickFilterForm.js +15 -8
  295. package/src/View/Components/FilterForm/QuickFilterValues.js +39 -23
  296. package/src/View/Components/NewScopeComponent.d.ts +5 -5
  297. package/src/View/Components/NewScopeComponent.js +36 -3
  298. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +4 -1
  299. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +10 -1
  300. package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +7 -10
  301. package/src/View/Components/RangesComponent.d.ts +2 -2
  302. package/src/View/Components/RangesComponent.js +1 -1
  303. package/src/View/Components/Selectors/PermittedValuesSelector.js +1 -1
  304. package/src/View/Components/SharedProps/WizardScopeState.d.ts +2 -2
  305. package/src/View/Components/ValueSelector/index.d.ts +1 -0
  306. package/src/View/Components/ValueSelector/index.js +2 -2
  307. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +1 -1
  308. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +4 -2
  309. package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -1
  310. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +2 -2
  311. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +20 -7
  312. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +1 -1
  313. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +1 -1
  314. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +27 -12
  315. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +1 -1
  316. package/src/View/FreeTextColumn/FreeTextColumnSummary.js +1 -1
  317. package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +3 -1
  318. package/src/View/GridFilter/GridFilterViewPanel.js +3 -3
  319. package/src/View/GridFilter/useGridFilterExpressionEditor.js +1 -1
  320. package/src/View/Layout/LayoutViewPanel.js +2 -1
  321. package/src/View/Layout/TransposedPopup.js +27 -25
  322. package/src/View/Layout/Wizard/LayoutWizard.js +38 -3
  323. package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -1
  324. package/src/View/Layout/Wizard/sections/FilterSection.js +1 -1
  325. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +18 -2
  326. package/src/View/Layout/Wizard/sections/RowSummarySection.d.ts +9 -0
  327. package/src/View/Layout/Wizard/sections/RowSummarySection.js +181 -0
  328. package/src/View/License/LicenseWatermark.js +1 -66
  329. package/src/View/Note/NotePopup.d.ts +2 -0
  330. package/src/View/{Notes/NotesPopup.js → Note/NotePopup.js} +16 -11
  331. package/src/View/PlusMinus/PlusMinusSummary.js +2 -2
  332. package/src/View/SmartEdit/SmartEditPopup.js +1 -1
  333. package/src/View/SpecialColumnSettingsWizardStep.js +4 -4
  334. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +5 -7
  335. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +1 -1
  336. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +1 -1
  337. package/src/View/StyledColumn/Wizard/StyledColumnWizardSettingsSection.js +38 -14
  338. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +1 -1
  339. package/src/agGrid/ActionColumnRenderer.js +40 -4
  340. package/src/agGrid/AdaptableAgGrid.d.ts +21 -12
  341. package/src/agGrid/AdaptableAgGrid.js +313 -225
  342. package/src/agGrid/AgGridAdapter.d.ts +5 -2
  343. package/src/agGrid/AgGridAdapter.js +20 -0
  344. package/src/agGrid/AgGridColumnAdapter.d.ts +1 -3
  345. package/src/agGrid/AgGridColumnAdapter.js +52 -70
  346. package/src/agGrid/AgGridMenuAdapter.d.ts +25 -8
  347. package/src/agGrid/AgGridMenuAdapter.js +405 -74
  348. package/src/agGrid/AgGridOptionsService.d.ts +4 -1
  349. package/src/agGrid/AgGridOptionsService.js +22 -0
  350. package/src/agGrid/BadgeRenderer.d.ts +2 -2
  351. package/src/agGrid/BadgeRenderer.js +24 -11
  352. package/src/agGrid/PercentBarRenderer.js +2 -1
  353. package/src/agGrid/buildSortedColumnStateForLayout.d.ts +7 -0
  354. package/src/agGrid/buildSortedColumnStateForLayout.js +124 -0
  355. package/src/agGrid/defaultAdaptableOptions.js +7 -12
  356. package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +1 -1
  357. package/src/agGrid/editors/AdaptableDateEditor/index.js +1 -1
  358. package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +2 -2
  359. package/src/agGrid/sortColumnStateForVisibleColumns.d.ts +12 -0
  360. package/src/agGrid/sortColumnStateForVisibleColumns.js +50 -0
  361. package/src/agGrid/weightedAverage.d.ts +0 -2
  362. package/src/agGrid/weightedAverage.js +1 -56
  363. package/src/components/Accordion.d.ts +7 -0
  364. package/src/components/Accordion.js +41 -0
  365. package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
  366. package/src/components/Datepicker/index.d.ts +1 -1
  367. package/src/components/Datepicker/index.js +10 -2
  368. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -1
  369. package/src/components/ExpressionEditor/QueryBuilder/utils.d.ts +0 -1
  370. package/src/components/ExpressionEditor/QueryBuilder/utils.js +3 -17
  371. package/src/components/Input/index.d.ts +1 -2
  372. package/src/components/List/ListGroupItem/index.d.ts +1 -1
  373. package/src/components/ProgressIndicator/ProgressIndicator.js +15 -6
  374. package/src/components/Select/Select.d.ts +1 -1
  375. package/src/components/Select/Select.js +3 -1
  376. package/src/components/Textarea/index.d.ts +2 -2
  377. package/src/components/icons/collapse-all.d.ts +3 -0
  378. package/src/components/icons/collapse-all.js +7 -0
  379. package/src/components/icons/copy.d.ts +3 -0
  380. package/src/components/icons/copy.js +7 -0
  381. package/src/components/icons/csv.d.ts +3 -0
  382. package/src/components/icons/csv.js +7 -0
  383. package/src/components/icons/data-object.d.ts +3 -0
  384. package/src/components/icons/data-object.js +7 -0
  385. package/src/components/icons/excel.d.ts +3 -0
  386. package/src/components/icons/excel.js +8 -0
  387. package/src/components/icons/expand-all.d.ts +3 -0
  388. package/src/components/icons/expand-all.js +7 -0
  389. package/src/components/icons/filter-off.d.ts +3 -0
  390. package/src/components/icons/filter-off.js +7 -0
  391. package/src/components/icons/grid-info.d.ts +3 -0
  392. package/src/components/icons/grid-info.js +7 -0
  393. package/src/components/icons/index.js +24 -0
  394. package/src/components/icons/note.js +2 -2
  395. package/src/components/icons/rows.d.ts +3 -0
  396. package/src/components/icons/rows.js +7 -0
  397. package/src/components/icons/select-all.d.ts +3 -0
  398. package/src/components/icons/select-all.js +7 -0
  399. package/src/components/icons/select-fwd.d.ts +3 -0
  400. package/src/components/icons/select-fwd.js +7 -0
  401. package/src/components/icons/select-off.d.ts +3 -0
  402. package/src/components/icons/select-off.js +7 -0
  403. package/src/env.js +2 -2
  404. package/src/metamodel/adaptable.metamodel.d.ts +230 -116
  405. package/src/metamodel/adaptable.metamodel.js +1 -9411
  406. package/src/parser/src/parser.js +576 -553
  407. package/src/parser/src/predicate/mapExpressionToQlPredicate.js +1 -1
  408. package/src/parser/src/predicate/mapQlPredicateToExpression.js +3 -4
  409. package/src/parser/src/types.d.ts +7 -2
  410. package/src/parser/src/types.js +1 -2
  411. package/src/types.d.ts +32 -25
  412. package/tsconfig.cjs.tsbuildinfo +1 -1
  413. package/src/AdaptableOptions/MenuOptions.d.ts +0 -234
  414. package/src/AdaptableOptions/MenuOptions.js +0 -99
  415. package/src/Api/Events/CommentsChangedInfo.d.ts +0 -5
  416. package/src/Api/Implementation/NotesApiImpl.d.ts +0 -14
  417. package/src/Api/Implementation/NotesApiImpl.js +0 -40
  418. package/src/Api/Implementation/ScopeApiImpl.d.ts +0 -31
  419. package/src/Api/NotesApi.d.ts +0 -48
  420. package/src/PredefinedConfig/CellAddress.d.ts +0 -13
  421. package/src/PredefinedConfig/CellAddress.js +0 -5
  422. package/src/Redux/ActionsReducers/NotesRedux.d.ts +0 -38
  423. package/src/Strategy/CommentsModule.d.ts +0 -17
  424. package/src/Strategy/CommentsModule.js +0 -83
  425. package/src/Strategy/NotesModule.d.ts +0 -10
  426. package/src/Strategy/NotesModule.js +0 -62
  427. package/src/View/Components/ScopeComponent.d.ts +0 -24
  428. package/src/View/Components/ScopeComponent.js +0 -138
  429. package/src/View/Export/Wizard/ReportScopeWizard.d.ts +0 -17
  430. package/src/View/Export/Wizard/ReportScopeWizard.js +0 -52
  431. package/src/View/Notes/NotesPopup.d.ts +0 -2
  432. /package/src/{Api/Events/CommentsChangedInfo.js → AdaptableOptions/ColumnMenuOptions.js} +0 -0
  433. /package/src/{Api/NotesApi.js → AdaptableOptions/ContextMenuOptions.js} +0 -0
  434. /package/src/Api/{ScopeApi.js → ColumnMenuApi.js} +0 -0
  435. /package/src/{PredefinedConfig/Common/AdaptableScope.js → Api/ColumnScopeApi.js} +0 -0
  436. /package/src/{PredefinedConfig/NotesState.js → Api/ContextMenuApi.js} +0 -0
  437. /package/src/View/{Notes → Note}/NoteEditor.d.ts +0 -0
  438. /package/src/View/{Notes → Note}/NoteEditor.js +0 -0
@@ -1,12 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ColumnApiImpl = void 0;
3
+ exports.ColumnApiImpl = exports.isAutoPivotColumn = exports.isAutoRowGroupColumn = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const ApiBase_1 = require("./ApiBase");
6
6
  const GeneralConstants = tslib_1.__importStar(require("../../Utilities/Constants/GeneralConstants"));
7
7
  const ModuleConstants = tslib_1.__importStar(require("../../Utilities/Constants/ModuleConstants"));
8
8
  const ArrayExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/ArrayExtensions"));
9
9
  const ColumnInternalApi_1 = require("../Internal/ColumnInternalApi");
10
+ const ObjectFactory_1 = require("../../Utilities/ObjectFactory");
11
+ function isAutoRowGroupColumn(columnId) {
12
+ // put this here as there might be other indicators we are not aware of
13
+ // perhaps with non auto groups ?
14
+ //https://www.ag-grid.com/javascript-grid-grouping/
15
+ return columnId === null || columnId === void 0 ? void 0 : columnId.startsWith(GeneralConstants.AG_GRID_GROUPED_COLUMN);
16
+ }
17
+ exports.isAutoRowGroupColumn = isAutoRowGroupColumn;
18
+ function isAutoPivotColumn(columnId) {
19
+ // put this here as there might be other indicators we are not aware of?
20
+ return columnId === null || columnId === void 0 ? void 0 : columnId.startsWith(GeneralConstants.AG_GRID_PIVOT_COLUMN);
21
+ }
22
+ exports.isAutoPivotColumn = isAutoPivotColumn;
10
23
  class ColumnApiImpl extends ApiBase_1.ApiBase {
11
24
  constructor(adaptable) {
12
25
  super(adaptable);
@@ -14,10 +27,10 @@ class ColumnApiImpl extends ApiBase_1.ApiBase {
14
27
  }
15
28
  getColumns() {
16
29
  var _a;
17
- return (_a = this.adaptable.api.gridApi.getGridState().Columns) !== null && _a !== void 0 ? _a : [];
30
+ return (_a = this.getAdaptableApi().gridApi.getGridState().Columns) !== null && _a !== void 0 ? _a : [];
18
31
  }
19
32
  getVisibleColumns() {
20
- const layout = this.adaptable.api.layoutApi.getCurrentLayout();
33
+ const layout = this.getAdaptableApi().layoutApi.getCurrentLayout();
21
34
  const visibleCols = layout.Columns.reduce((acc, colId) => {
22
35
  acc[colId] = true;
23
36
  return acc;
@@ -55,29 +68,25 @@ class ColumnApiImpl extends ApiBase_1.ApiBase {
55
68
  this.adaptable.showColumn(columnId);
56
69
  }
57
70
  isAutoRowGroupColumn(columnId) {
58
- // put this here as there might be other indicators we are not aware of
59
- // perhaps with non auto groups ?
60
- //https://www.ag-grid.com/javascript-grid-grouping/
61
- return columnId === null || columnId === void 0 ? void 0 : columnId.startsWith(GeneralConstants.AG_GRID_GROUPED_COLUMN);
71
+ return isAutoRowGroupColumn(columnId);
62
72
  }
63
73
  isAutoPivotColumn(columnId) {
64
- // put this here as there might be other indicators we are not aware of?
65
- return columnId === null || columnId === void 0 ? void 0 : columnId.startsWith(GeneralConstants.AG_GRID_PIVOT_COLUMN);
74
+ return isAutoPivotColumn(columnId);
66
75
  }
67
76
  isCalculatedColumn(columnId) {
68
- return (this.adaptable.api.calculatedColumnApi
69
- .getCalculatedColumns()
77
+ return (this.getAdaptableApi()
78
+ .calculatedColumnApi.getCalculatedColumns()
70
79
  .find((cc) => cc.ColumnId == columnId) != null);
71
80
  }
72
81
  isFreeTextColumn(columnId) {
73
- return (this.adaptable.api.freeTextColumnApi
74
- .getFreeTextColumns()
82
+ return (this.getAdaptableApi()
83
+ .freeTextColumnApi.getFreeTextColumns()
75
84
  .find((cc) => cc.ColumnId == columnId) != null);
76
85
  }
77
86
  isActionColumn(columnId) {
78
87
  var _a;
79
- return (((_a = this.adaptable.api.actionColumnApi
80
- .getActionColumns()) === null || _a === void 0 ? void 0 : _a.find((cc) => cc.columnId == columnId)) != null);
88
+ return (((_a = this.getAdaptableApi()
89
+ .actionColumnApi.getActionColumns()) === null || _a === void 0 ? void 0 : _a.find((cc) => cc.columnId == columnId)) != null);
81
90
  }
82
91
  getColumnWithColumnId(columnId, logWarning) {
83
92
  if (columnId == undefined) {
@@ -156,7 +165,7 @@ class ColumnApiImpl extends ApiBase_1.ApiBase {
156
165
  }
157
166
  let result = columnId + GeneralConstants.MISSING_COLUMN;
158
167
  if (this.isAutoRowGroupColumn(columnId)) {
159
- const currentLayout = this.adaptable.api.layoutApi.getCurrentLayout();
168
+ const currentLayout = this.getAdaptableApi().layoutApi.getCurrentLayout();
160
169
  if (currentLayout === null || currentLayout === void 0 ? void 0 : currentLayout.RowGroupedColumns) {
161
170
  result = `[Grouped column: ${currentLayout.RowGroupedColumns.join(', ')}]`;
162
171
  }
@@ -337,5 +346,28 @@ class ColumnApiImpl extends ApiBase_1.ApiBase {
337
346
  openColumnInfoSettingsPanel() {
338
347
  this.showModulePopup(ModuleConstants.ColumnInfoModuleId);
339
348
  }
349
+ getColumnTypes() {
350
+ const columnTypes = this.getOptions().columnOptions.columnTypes;
351
+ if (typeof columnTypes === 'function') {
352
+ return columnTypes((0, ObjectFactory_1.createBaseContext)(this.getAdaptableApi()));
353
+ }
354
+ else {
355
+ return columnTypes;
356
+ }
357
+ }
358
+ getColumnsByColumnType(columnType) {
359
+ const abColumns = this.getColumns();
360
+ return abColumns.filter((c) => {
361
+ var _a;
362
+ return ((_a = c.columnTypes) !== null && _a !== void 0 ? _a : []).includes(columnType);
363
+ });
364
+ }
365
+ getRowGroupedColumns() {
366
+ var _a;
367
+ return (_a = this.getLayoutApi()
368
+ .getCurrentRowGroupsColumnIds()) === null || _a === void 0 ? void 0 : _a.map((n) => {
369
+ return this.getColumnWithColumnId(n);
370
+ });
371
+ }
340
372
  }
341
373
  exports.ColumnApiImpl = ColumnApiImpl;
@@ -18,7 +18,7 @@ class ColumnFilterApiImpl extends ApiBase_1.ApiBase {
18
18
  };
19
19
  return this.getAdaptableApi()
20
20
  .predicateApi.internalApi.getFilterPredicateDefs(scope)
21
- .filter((predicate) => this.adaptable.api.scopeApi.isColumnInScope(column, predicate.columnScope));
21
+ .filter((predicate) => this.getAdaptableApi().columnScopeApi.isColumnInScope(column, predicate.columnScope));
22
22
  }
23
23
  getFilterPredicateDefsForColumnId(columnId) {
24
24
  const column = this.getAdaptableApi().columnApi.getColumnWithColumnId(columnId);
@@ -35,11 +35,11 @@ class ColumnFilterApiImpl extends ApiBase_1.ApiBase {
35
35
  }
36
36
  isQuickFilterVisible() {
37
37
  return (this.isQuickFilterAvailable() &&
38
- this.adaptable.api.internalApi.getSystemState().IsQuickFilterVisible);
38
+ this.getAdaptableApi().internalApi.getSystemState().IsQuickFilterVisible);
39
39
  }
40
40
  getColumnFilters() {
41
41
  var _a;
42
- const currentLayout = this.adaptable.api.layoutApi.getCurrentLayout();
42
+ const currentLayout = this.getAdaptableApi().layoutApi.getCurrentLayout();
43
43
  return (_a = currentLayout.ColumnFilters) !== null && _a !== void 0 ? _a : [];
44
44
  }
45
45
  getActiveColumnFilters() {
@@ -59,7 +59,7 @@ class ColumnFilterApiImpl extends ApiBase_1.ApiBase {
59
59
  }
60
60
  getColumnFiltersForLayout(layoutName) {
61
61
  var _a;
62
- const layout = this.adaptable.api.layoutApi.getLayoutByName(layoutName);
62
+ const layout = this.getAdaptableApi().layoutApi.getLayoutByName(layoutName);
63
63
  return (_a = layout.ColumnFilters) !== null && _a !== void 0 ? _a : [];
64
64
  }
65
65
  setColumnFilters(columnFilters) {
@@ -68,7 +68,7 @@ class ColumnFilterApiImpl extends ApiBase_1.ApiBase {
68
68
  this.logWarn('Column Filter has no Predicate', columnFilter);
69
69
  }
70
70
  else {
71
- const isValidPredicate = this.adaptable.api.predicateApi.isValidPredicate(columnFilter.Predicate);
71
+ const isValidPredicate = this.getAdaptableApi().predicateApi.isValidPredicate(columnFilter.Predicate);
72
72
  if (!isValidPredicate) {
73
73
  this.logWarn('Column Filter Predicate is not valid', columnFilter);
74
74
  }
@@ -122,10 +122,10 @@ class ColumnFilterApiImpl extends ApiBase_1.ApiBase {
122
122
  if (!filter || !filter.Predicate || !filter.Predicate.PredicateId) {
123
123
  return false;
124
124
  }
125
- const predicateDef = this.adaptable.api.predicateApi.getPredicateDefById(filter === null || filter === void 0 ? void 0 : filter.Predicate.PredicateId);
125
+ const predicateDef = this.getAdaptableApi().predicateApi.getPredicateDefById(filter === null || filter === void 0 ? void 0 : filter.Predicate.PredicateId);
126
126
  if (ArrayExtensions_1.default.IsNull(predicateDef.inputs) &&
127
127
  // values predicates have no inputs in the definition
128
- !this.adaptable.api.predicateApi.internalApi.hasPredicateValues(filter.Predicate)) {
128
+ !this.getAdaptableApi().predicateApi.internalApi.hasPredicateValues(filter.Predicate)) {
129
129
  return true;
130
130
  }
131
131
  const inputs = filter.Predicate.Inputs;
@@ -0,0 +1,8 @@
1
+ import { ColumnMenuApi } from '../ColumnMenuApi';
2
+ import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
3
+ import { ApiBase } from './ApiBase';
4
+ export declare class ColumnMenuApiImpl extends ApiBase implements ColumnMenuApi {
5
+ constructor(adaptable: IAdaptable);
6
+ showColumnMenu(columnKey: string): void;
7
+ hideColumnMenu(): void;
8
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ColumnMenuApiImpl = void 0;
4
+ const ApiBase_1 = require("./ApiBase");
5
+ class ColumnMenuApiImpl extends ApiBase_1.ApiBase {
6
+ constructor(adaptable) {
7
+ super(adaptable);
8
+ }
9
+ showColumnMenu(columnKey) {
10
+ this.adaptable.agGridAdapter.getAgGridApi().showColumnMenu(columnKey);
11
+ }
12
+ hideColumnMenu() {
13
+ this.adaptable.agGridAdapter.getAgGridApi().hidePopupMenu();
14
+ }
15
+ }
16
+ exports.ColumnMenuApiImpl = ColumnMenuApiImpl;
@@ -0,0 +1,33 @@
1
+ import { ApiBase } from './ApiBase';
2
+ import { AdaptableColumn } from '../../PredefinedConfig/Common/AdaptableColumn';
3
+ import { ColumnScope, ScopeDataType } from '../../PredefinedConfig/Common/ColumnScope';
4
+ import { ColumnScopeApi } from '../ColumnScopeApi';
5
+ import { CellColorRange } from '../../PredefinedConfig/StyledColumnState';
6
+ export declare class ColumnScopeApiImpl extends ApiBase implements ColumnScopeApi {
7
+ isColumnInScope(column: AdaptableColumn | undefined, scope: ColumnScope | undefined): boolean;
8
+ getColumnsForScope(scope: ColumnScope): AdaptableColumn[];
9
+ getScopeDescription(scope: ColumnScope): string;
10
+ scopeIsEmpty(scope: ColumnScope): boolean;
11
+ scopeIsAll(scope: ColumnScope): boolean;
12
+ scopeHasDataType(scope: ColumnScope): boolean;
13
+ scopeHasColumnType(scope: ColumnScope): boolean;
14
+ scopeHasOnlyBooleanDataType(scope: ColumnScope): boolean;
15
+ scopeHasColumns(scope: ColumnScope): boolean;
16
+ isSingleColumnScope(scope: ColumnScope): boolean;
17
+ getSingleColumnInScope(scope: ColumnScope): string | undefined;
18
+ isSingleNumericColumnScope(scope: ColumnScope): boolean;
19
+ isSingleBooleanColumnScope(scope: ColumnScope): boolean;
20
+ areAllBooleanColumnsInScope(scope: ColumnScope): boolean;
21
+ isColumnInScopeColumns(column: AdaptableColumn, scope: ColumnScope): boolean;
22
+ isPrimaryKeyColumnInScopeColumns(scope: ColumnScope): boolean;
23
+ getScopeToString(scope: ColumnScope): string;
24
+ getColumnIdsInScope(scope: ColumnScope): string[] | undefined;
25
+ getColumnTypesInScope(scope: ColumnScope): string[] | undefined;
26
+ getDataTypesInScope(scope: ColumnScope): ScopeDataType[] | undefined;
27
+ isColumnInNumericScope(column: AdaptableColumn, scope: ColumnScope): boolean;
28
+ isColumnInStringsScope(column: AdaptableColumn, scope: ColumnScope): boolean;
29
+ isColumnInDateScope(column: AdaptableColumn, scope: ColumnScope): boolean;
30
+ isScopeInScope(a: ColumnScope, b: ColumnScope): boolean;
31
+ createCellColorRangesForScope(scope: ColumnScope): CellColorRange[];
32
+ private distinctColumnValuesAreEmpty;
33
+ }
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ScopeApiImpl = void 0;
3
+ exports.ColumnScopeApiImpl = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const ApiBase_1 = require("./ApiBase");
6
6
  const ArrayExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/ArrayExtensions"));
7
7
  const UIHelper_1 = require("../../View/UIHelper");
8
- class ScopeApiImpl extends ApiBase_1.ApiBase {
8
+ class ColumnScopeApiImpl extends ApiBase_1.ApiBase {
9
9
  isColumnInScope(column, scope) {
10
10
  if (!column) {
11
11
  return false;
@@ -17,6 +17,10 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
17
17
  if ('DataTypes' in scope && scope.DataTypes.includes(column.dataType)) {
18
18
  return true;
19
19
  }
20
+ if ('ColumnTypes' in scope &&
21
+ scope.ColumnTypes.some((columnType) => { var _a; return (_a = column.columnTypes) === null || _a === void 0 ? void 0 : _a.includes(columnType); })) {
22
+ return true;
23
+ }
20
24
  if ('ColumnIds' in scope && scope.ColumnIds.includes(column.columnId)) {
21
25
  return true;
22
26
  }
@@ -26,18 +30,12 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
26
30
  if (scope == undefined) {
27
31
  return [];
28
32
  }
29
- const columns = this.adaptable.api.columnApi.getColumns();
33
+ const columns = this.getAdaptableApi().columnApi.getColumns();
30
34
  if ('All' in scope) {
31
35
  return columns;
32
36
  }
33
37
  return columns.filter((c) => {
34
- if ('DataTypes' in scope && scope.DataTypes.includes(c.dataType)) {
35
- return true;
36
- }
37
- if ('ColumnIds' in scope && scope.ColumnIds.includes(c.columnId)) {
38
- return true;
39
- }
40
- return false;
38
+ return this.isColumnInScope(c, scope);
41
39
  });
42
40
  }
43
41
  getScopeDescription(scope) {
@@ -48,14 +46,19 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
48
46
  // do we need a true check here?
49
47
  return 'Columns: All';
50
48
  }
49
+ if ('ColumnTypes' in scope) {
50
+ return ((scope.ColumnTypes.length > 0 ? 'ColumnTypes' : 'ColumnType') +
51
+ ': ' +
52
+ scope.ColumnTypes.join(', '));
53
+ }
51
54
  if ('DataTypes' in scope) {
52
55
  return ((scope.DataTypes.length > 0 ? 'DataTypes' : 'DataType') + ': ' + scope.DataTypes.join(', '));
53
56
  }
54
57
  if ('ColumnIds' in scope) {
55
58
  return ((scope.ColumnIds.length > 1 ? 'Columns' : 'Column') +
56
59
  ': ' +
57
- this.adaptable.api.columnApi
58
- .getFriendlyNamesForColumnIds(scope.ColumnIds)
60
+ this.getAdaptableApi()
61
+ .columnApi.getFriendlyNamesForColumnIds(scope.ColumnIds)
59
62
  .map((c) => {
60
63
  return '"' + c + '"';
61
64
  })
@@ -71,6 +74,9 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
71
74
  scopeHasDataType(scope) {
72
75
  return scope !== undefined && 'DataTypes' in scope;
73
76
  }
77
+ scopeHasColumnType(scope) {
78
+ return scope !== undefined && 'ColumnTypes' in scope;
79
+ }
74
80
  scopeHasOnlyBooleanDataType(scope) {
75
81
  var _a;
76
82
  return 'DataTypes' in scope && ((_a = scope.DataTypes) === null || _a === void 0 ? void 0 : _a.length) == 1 && scope.DataTypes[0] == 'Boolean';
@@ -94,7 +100,7 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
94
100
  !this.scopeIsAll(scope) &&
95
101
  'ColumnIds' in scope &&
96
102
  scope.ColumnIds.length == 1 &&
97
- this.adaptable.api.columnApi.hasNumberDataType(scope.ColumnIds[0]));
103
+ this.getAdaptableApi().columnApi.hasNumberDataType(scope.ColumnIds[0]));
98
104
  }
99
105
  isSingleBooleanColumnScope(scope) {
100
106
  return (this.scopeHasColumns(scope) &&
@@ -102,7 +108,7 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
102
108
  !this.scopeIsAll(scope) &&
103
109
  'ColumnIds' in scope &&
104
110
  scope.ColumnIds.length == 1 &&
105
- this.adaptable.api.columnApi.hasBooleanDataType(scope.ColumnIds[0]));
111
+ this.getAdaptableApi().columnApi.hasBooleanDataType(scope.ColumnIds[0]));
106
112
  }
107
113
  areAllBooleanColumnsInScope(scope) {
108
114
  return (this.scopeHasColumns(scope) &&
@@ -110,7 +116,7 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
110
116
  !this.scopeIsAll(scope) &&
111
117
  'ColumnIds' in scope &&
112
118
  scope.ColumnIds.length &&
113
- scope.ColumnIds.every((columnId) => this.adaptable.api.columnApi.hasBooleanDataType(columnId)));
119
+ scope.ColumnIds.every((columnId) => this.getAdaptableApi().columnApi.hasBooleanDataType(columnId)));
114
120
  }
115
121
  isColumnInScopeColumns(column, scope) {
116
122
  return this.scopeHasColumns(scope) && this.isColumnInScope(column, scope);
@@ -118,20 +124,23 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
118
124
  isPrimaryKeyColumnInScopeColumns(scope) {
119
125
  return ('ColumnIds' in scope &&
120
126
  scope.ColumnIds.length == 1 &&
121
- scope.ColumnIds.find((c) => c == this.adaptable.api.optionsApi.getPrimaryKey()) != null);
127
+ scope.ColumnIds.find((c) => c == this.getAdaptableApi().optionsApi.getPrimaryKey()) != null);
122
128
  }
123
129
  getScopeToString(scope) {
124
130
  if ('All' in scope) {
125
131
  return 'Columns: All';
126
132
  }
133
+ if ('ColumnTypes' in scope) {
134
+ return 'ColumnTypes: ' + scope.ColumnTypes.join(',');
135
+ }
127
136
  if ('DataTypes' in scope) {
128
137
  return 'DataTypes: ' + scope.DataTypes.join(',');
129
138
  }
130
139
  if ('ColumnIds' in scope) {
131
140
  let text = scope.ColumnIds.length == 1 ? 'Column: ' : 'Columns: ';
132
141
  return (text +
133
- this.adaptable.api.columnApi
134
- .getFriendlyNamesForColumnIds(scope.ColumnIds)
142
+ this.getAdaptableApi()
143
+ .columnApi.getFriendlyNamesForColumnIds(scope.ColumnIds)
135
144
  .map((c) => {
136
145
  return '"' + c + '"';
137
146
  })
@@ -144,6 +153,12 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
144
153
  }
145
154
  return undefined;
146
155
  }
156
+ getColumnTypesInScope(scope) {
157
+ if (scope !== undefined && 'ColumnTypes' in scope) {
158
+ return scope.ColumnTypes;
159
+ }
160
+ return undefined;
161
+ }
147
162
  getDataTypesInScope(scope) {
148
163
  if (scope !== undefined && 'DataTypes' in scope) {
149
164
  return scope.DataTypes;
@@ -151,6 +166,7 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
151
166
  return undefined;
152
167
  }
153
168
  isColumnInNumericScope(column, scope) {
169
+ var _a, _b;
154
170
  // if column is not even numeric then return false
155
171
  if (column == null || column == undefined || column.dataType !== 'Number') {
156
172
  return false;
@@ -167,9 +183,14 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
167
183
  if ('DataTypes' in scope && scope.DataTypes.includes('Number')) {
168
184
  return true;
169
185
  }
186
+ if ('ColumnTypes' in scope &&
187
+ ((_b = (_a = scope.ColumnTypes) === null || _a === void 0 ? void 0 : _a.some) === null || _b === void 0 ? void 0 : _b.call(_a, (scopeColumnType) => { var _a, _b; return (_b = (_a = column.columnTypes) === null || _a === void 0 ? void 0 : _a.includes) === null || _b === void 0 ? void 0 : _b.call(_a, scopeColumnType); }))) {
188
+ return true;
189
+ }
170
190
  return false;
171
191
  }
172
192
  isColumnInStringsScope(column, scope) {
193
+ var _a, _b;
173
194
  // if column is not even string then return false
174
195
  if (column == null || column == undefined || column.dataType !== 'String') {
175
196
  return false;
@@ -186,9 +207,14 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
186
207
  if ('DataTypes' in scope && scope.DataTypes.includes('String')) {
187
208
  return true;
188
209
  }
210
+ if ('ColumnTypes' in scope &&
211
+ ((_b = (_a = scope.ColumnTypes) === null || _a === void 0 ? void 0 : _a.some) === null || _b === void 0 ? void 0 : _b.call(_a, (scopeColumnType) => { var _a, _b; return (_b = (_a = column.columnTypes) === null || _a === void 0 ? void 0 : _a.includes) === null || _b === void 0 ? void 0 : _b.call(_a, scopeColumnType); }))) {
212
+ return true;
213
+ }
189
214
  return false;
190
215
  }
191
216
  isColumnInDateScope(column, scope) {
217
+ var _a, _b;
192
218
  // if column is not even numeric then return false
193
219
  if (column == null || column == undefined || column.dataType !== 'Date') {
194
220
  return false;
@@ -205,6 +231,10 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
205
231
  if ('DataTypes' in scope && scope.DataTypes.includes('Date')) {
206
232
  return true;
207
233
  }
234
+ if ('ColumnTypes' in scope &&
235
+ ((_b = (_a = scope.ColumnTypes) === null || _a === void 0 ? void 0 : _a.some) === null || _b === void 0 ? void 0 : _b.call(_a, (scopeColumnType) => { var _a, _b; return (_b = (_a = column.columnTypes) === null || _a === void 0 ? void 0 : _a.includes) === null || _b === void 0 ? void 0 : _b.call(_a, scopeColumnType); }))) {
236
+ return true;
237
+ }
208
238
  return false;
209
239
  }
210
240
  isScopeInScope(a, b) {
@@ -227,14 +257,30 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
227
257
  'DataTypes' in b &&
228
258
  a.ColumnIds.every((columnId) => {
229
259
  var _a;
230
- return b.DataTypes.includes((_a = this.adaptable.api.columnApi.getColumnWithColumnId(columnId)) === null || _a === void 0 ? void 0 : _a.dataType);
260
+ return b.DataTypes.includes((_a = this.getAdaptableApi().columnApi.getColumnWithColumnId(columnId)) === null || _a === void 0 ? void 0 : _a.dataType);
231
261
  })) {
232
262
  return true;
233
263
  }
264
+ if ('ColumnTypes' in a &&
265
+ 'ColumnTypes' in b &&
266
+ a.ColumnTypes.every((columnType) => b.ColumnTypes.includes(columnType))) {
267
+ return true;
268
+ }
269
+ // check if each colum in a has column types in b
270
+ if ('ColumnIds' in a && 'ColumnTypes' in b) {
271
+ const inScope = a.ColumnIds.every((columnId) => {
272
+ const column = this.getAdaptableApi().columnApi.getColumnWithColumnId(columnId);
273
+ // check if at least one column-type is in scope
274
+ return column.columnTypes.some((columnColumnType) => b.ColumnTypes.includes(columnColumnType));
275
+ });
276
+ if (inScope) {
277
+ return true;
278
+ }
279
+ }
234
280
  return false;
235
281
  }
236
282
  createCellColorRangesForScope(scope) {
237
- let distinctColumnsValues = this.adaptable.api.gridApi.internalApi.getDistinctRawValuesForColumn(this.adaptable.api.scopeApi.getSingleColumnInScope(scope));
283
+ let distinctColumnsValues = this.getAdaptableApi().gridApi.internalApi.getDistinctRawValuesForColumn(this.getAdaptableApi().columnScopeApi.getSingleColumnInScope(scope));
238
284
  let minValue = Math.min(...distinctColumnsValues);
239
285
  let maxValue = Math.max(...distinctColumnsValues);
240
286
  const ranges = [];
@@ -271,4 +317,4 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
271
317
  return false;
272
318
  }
273
319
  }
274
- exports.ScopeApiImpl = ScopeApiImpl;
320
+ exports.ColumnScopeApiImpl = ColumnScopeApiImpl;
@@ -1,15 +1,18 @@
1
1
  import { ApiBase } from './ApiBase';
2
- import { CellAddress } from '../../PredefinedConfig/CellAddress';
3
- import { CommentThread, AdaptableComment } from '../../types';
2
+ import { CommentThread, AdaptableComment, CellAddress } from '../../types';
4
3
  import { CommentApi } from '../CommentApi';
4
+ import { CommentsInternalApi } from '../Internal/CommentsInternalApi';
5
+ import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
5
6
  export declare class CommentsApiImpl extends ApiBase implements CommentApi {
6
- getComments(address: CellAddress): AdaptableComment[];
7
+ internalApi: CommentsInternalApi;
8
+ constructor(adaptable: IAdaptable);
7
9
  getCommentThread(address: CellAddress): CommentThread | undefined;
8
- getCommentThreads(): CommentThread[];
10
+ getGridComments(): CommentThread[];
9
11
  editComment(comment: AdaptableComment, address: CellAddress): void;
10
12
  deleteComment(comment: AdaptableComment, address: CellAddress): void;
11
13
  addComment(commentText: AdaptableComment['Value'], address: CellAddress): void;
12
14
  addCommentThread(commentThread: CommentThread): void;
13
15
  deleteCommentThread(cellAddress: CellAddress): void;
14
- loadCommentThreads(cellComments: CommentThread[]): void;
16
+ setGridComments(cellComments: CommentThread[]): void;
17
+ clearGridComments(): void;
15
18
  }
@@ -6,14 +6,16 @@ const CommentRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/C
6
6
  const ApiBase_1 = require("./ApiBase");
7
7
  const ObjectFactory_1 = tslib_1.__importDefault(require("../../Utilities/ObjectFactory"));
8
8
  const AdaptableHelper_1 = tslib_1.__importDefault(require("../../Utilities/Helpers/AdaptableHelper"));
9
+ const CommentsInternalApi_1 = require("../Internal/CommentsInternalApi");
9
10
  class CommentsApiImpl extends ApiBase_1.ApiBase {
10
- getComments(address) {
11
- return CommentRedux.GetCommentsSelector(this.getAdaptableState().Comment, address);
11
+ constructor(adaptable) {
12
+ super(adaptable);
13
+ this.internalApi = new CommentsInternalApi_1.CommentsInternalApi(adaptable);
12
14
  }
13
15
  getCommentThread(address) {
14
16
  return CommentRedux.GetCellCommentSelector(this.getAdaptableState().Comment, address);
15
17
  }
16
- getCommentThreads() {
18
+ getGridComments() {
17
19
  var _a;
18
20
  return (_a = this.getAdaptableState().Comment.CommentThreads) !== null && _a !== void 0 ? _a : [];
19
21
  }
@@ -26,7 +28,7 @@ class CommentsApiImpl extends ApiBase_1.ApiBase {
26
28
  addComment(commentText, address) {
27
29
  this.dispatchAction(CommentRedux.CommentsAdd({
28
30
  comment: commentText
29
- ? ObjectFactory_1.default.CreateAdaptableComment(commentText, this.adaptable.api)
31
+ ? ObjectFactory_1.default.CreateAdaptableComment(commentText, this.getAdaptableApi())
30
32
  : null,
31
33
  cellAddress: address,
32
34
  }));
@@ -40,8 +42,11 @@ class CommentsApiImpl extends ApiBase_1.ApiBase {
40
42
  deleteCommentThread(cellAddress) {
41
43
  this.dispatchAction(CommentRedux.CommentsCellDelete({ cellAddress }));
42
44
  }
43
- loadCommentThreads(cellComments) {
45
+ setGridComments(cellComments) {
44
46
  this.dispatchAction(CommentRedux.CommentsSet({ commentThread: cellComments }));
45
47
  }
48
+ clearGridComments() {
49
+ this.setGridComments([]);
50
+ }
46
51
  }
47
52
  exports.CommentsApiImpl = CommentsApiImpl;
@@ -20,7 +20,7 @@ import { AdaptableModule, AdaptableStateKey } from '../../PredefinedConfig/Commo
20
20
  import { AdaptableOptions, AdaptableSearchState, AdaptableSortState, NamedQueryState, ScheduleState } from '../../types';
21
21
  import { PredefinedConfig } from '../../PredefinedConfig/PredefinedConfig';
22
22
  import { ChartingState } from '../../PredefinedConfig/ChartingState';
23
- import { NotesState } from '../../PredefinedConfig/NotesState';
23
+ import { NoteState } from '../../PredefinedConfig/NoteState';
24
24
  export declare class ConfigApiImpl extends ApiBase implements ConfigApi {
25
25
  configInit(): void;
26
26
  copyAllStateToClipboard(): void;
@@ -48,7 +48,7 @@ export declare class ConfigApiImpl extends ApiBase implements ConfigApi {
48
48
  getApplicationState(returnJson?: boolean): ApplicationState;
49
49
  getCalculatedColumnState(returnJson?: boolean): CalculatedColumnState;
50
50
  getChartingState(returnJson?: boolean): ChartingState;
51
- getNotesState(returnJson?: boolean): NotesState;
51
+ getNoteState(returnJson?: boolean): NoteState;
52
52
  getCustomSortState(returnJson?: boolean): CustomSortState;
53
53
  getDashboardState(returnJson?: boolean): DashboardState;
54
54
  getExportState(returnJson?: boolean): ExportState;