@adaptabletools/adaptable 12.0.0-canary.3 → 12.0.0-canary.6

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 (441) hide show
  1. package/base.css +26 -0
  2. package/bundle.cjs.js +102 -99
  3. package/index.css +34 -0
  4. package/package.json +2 -2
  5. package/publishTimestamp.d.ts +1 -1
  6. package/publishTimestamp.js +1 -1
  7. package/src/AdaptableOptions/ActionOptions.d.ts +181 -1
  8. package/src/AdaptableOptions/AdaptableOptions.d.ts +5 -0
  9. package/src/AdaptableOptions/ColumnOptions.d.ts +4 -0
  10. package/src/AdaptableOptions/DataChangeHistoryOptions.d.ts +17 -2
  11. package/src/AdaptableOptions/EditOptions.d.ts +7 -80
  12. package/src/AdaptableOptions/FinancePluginOptions.d.ts +3 -3
  13. package/src/AdaptableOptions/LayoutOptions.d.ts +11 -6
  14. package/src/AdaptableOptions/SettingsPanelOptions.d.ts +2 -0
  15. package/src/AdaptableOptions/StateOptions.d.ts +10 -0
  16. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +2 -112
  17. package/src/Api/ActionApi.d.ts +24 -0
  18. package/src/Api/{Events/RowFormSubmitted.js → ActionApi.js} +0 -0
  19. package/src/Api/AdaptableApi.d.ts +5 -0
  20. package/src/Api/ConfigApi.d.ts +1 -1
  21. package/src/Api/EventApi.d.ts +9 -9
  22. package/src/Api/Events/ActionRowSubmitted.d.ts +58 -0
  23. package/src/Api/Events/ActionRowSubmitted.js +2 -0
  24. package/src/Api/GridApi.d.ts +0 -14
  25. package/src/Api/Implementation/ActionApiImpl.d.ts +8 -0
  26. package/src/Api/Implementation/ActionApiImpl.js +56 -0
  27. package/src/Api/Implementation/AdaptableApiImpl.d.ts +2 -0
  28. package/src/Api/Implementation/AdaptableApiImpl.js +2 -0
  29. package/src/Api/Implementation/AlertApiImpl.d.ts +2 -4
  30. package/src/Api/Implementation/AlertApiImpl.js +2 -3
  31. package/src/Api/Implementation/ApiBase.d.ts +13 -1
  32. package/src/Api/Implementation/ApiBase.js +10 -0
  33. package/src/Api/Implementation/ColumnApiImpl.js +2 -2
  34. package/src/Api/Implementation/ConditionalStyleApiImpl.d.ts +2 -4
  35. package/src/Api/Implementation/ConditionalStyleApiImpl.js +2 -3
  36. package/src/Api/Implementation/ConfigApiImpl.d.ts +1 -1
  37. package/src/Api/Implementation/CustomSortApiImpl.d.ts +2 -4
  38. package/src/Api/Implementation/CustomSortApiImpl.js +2 -3
  39. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +2 -4
  40. package/src/Api/Implementation/FlashingCellApiImpl.js +2 -3
  41. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +2 -4
  42. package/src/Api/Implementation/FormatColumnApiImpl.js +2 -3
  43. package/src/Api/Implementation/GridApiImpl.d.ts +0 -3
  44. package/src/Api/Implementation/GridApiImpl.js +0 -44
  45. package/src/Api/Implementation/InternalApiImpl.d.ts +1 -1
  46. package/src/Api/Implementation/InternalApiImpl.js +5 -4
  47. package/src/Api/Implementation/LayoutApiImpl.d.ts +0 -2
  48. package/src/Api/Implementation/LayoutApiImpl.js +0 -6
  49. package/src/Api/Implementation/PlusMinusApiImpl.d.ts +2 -4
  50. package/src/Api/Implementation/PlusMinusApiImpl.js +2 -3
  51. package/src/Api/Implementation/ScheduleApiImpl.d.ts +6 -16
  52. package/src/Api/Implementation/ScheduleApiImpl.js +10 -16
  53. package/src/Api/Implementation/ShortcutApiImpl.d.ts +2 -4
  54. package/src/Api/Implementation/ShortcutApiImpl.js +2 -3
  55. package/src/Api/Implementation/SmartEditApiImpl.d.ts +1 -1
  56. package/src/Api/Implementation/SmartEditApiImpl.js +2 -1
  57. package/src/Api/Implementation/StatusBarApiImpl.d.ts +4 -3
  58. package/src/Api/Implementation/StatusBarApiImpl.js +2 -2
  59. package/src/Api/Implementation/TeamSharingApiImpl.js +2 -1
  60. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +1 -2
  61. package/src/Api/Implementation/UserInterfaceApiImpl.js +0 -4
  62. package/src/Api/InternalApi.d.ts +1 -1
  63. package/src/Api/LayoutApi.d.ts +1 -6
  64. package/src/Api/SmartEditApi.d.ts +1 -1
  65. package/src/Api/StatusBarApi.d.ts +10 -3
  66. package/src/Api/UserInterfaceApi.d.ts +1 -5
  67. package/src/PredefinedConfig/Common/AdaptableAlert.js +4 -2
  68. package/src/PredefinedConfig/Common/AdaptableColumn.js +2 -1
  69. package/src/PredefinedConfig/Common/AdaptableForm.d.ts +1 -1
  70. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +24 -18
  71. package/src/PredefinedConfig/Common/AdaptablePredicate.d.ts +2 -4
  72. package/src/PredefinedConfig/Common/AdaptablePredicate.js +38 -36
  73. package/src/PredefinedConfig/Common/AdaptableQuery.js +2 -1
  74. package/src/PredefinedConfig/Common/Menu.d.ts +3 -3
  75. package/src/PredefinedConfig/Common/Types.d.ts +1 -1
  76. package/src/PredefinedConfig/StatusBarState.d.ts +5 -2
  77. package/src/PredefinedConfig/Uuid.js +2 -1
  78. package/src/Redux/ActionsReducers/AlertRedux.js +16 -8
  79. package/src/Redux/ActionsReducers/ApplicationRedux.js +8 -4
  80. package/src/Redux/ActionsReducers/BulkUpdateRedux.js +6 -3
  81. package/src/Redux/ActionsReducers/CalculatedColumnRedux.js +10 -5
  82. package/src/Redux/ActionsReducers/CellSummaryRedux.js +2 -1
  83. package/src/Redux/ActionsReducers/ConditionalStyleRedux.js +14 -7
  84. package/src/Redux/ActionsReducers/CustomSortRedux.js +14 -7
  85. package/src/Redux/ActionsReducers/DashboardRedux.js +24 -12
  86. package/src/Redux/ActionsReducers/ExportRedux.js +16 -8
  87. package/src/Redux/ActionsReducers/FlashingCellRedux.js +16 -8
  88. package/src/Redux/ActionsReducers/FormatColumnRedux.js +14 -7
  89. package/src/Redux/ActionsReducers/FreeTextColumnRedux.js +14 -7
  90. package/src/Redux/ActionsReducers/GridRedux.js +38 -19
  91. package/src/Redux/ActionsReducers/LayoutRedux.js +30 -15
  92. package/src/Redux/ActionsReducers/PluginsRedux.js +4 -2
  93. package/src/Redux/ActionsReducers/PlusMinusRedux.js +16 -8
  94. package/src/Redux/ActionsReducers/PopupRedux.js +37 -19
  95. package/src/Redux/ActionsReducers/QueryRedux.js +12 -6
  96. package/src/Redux/ActionsReducers/QuickSearchRedux.js +8 -4
  97. package/src/Redux/ActionsReducers/ScheduleRedux.js +58 -29
  98. package/src/Redux/ActionsReducers/ShortcutRedux.js +14 -7
  99. package/src/Redux/ActionsReducers/SmartEditRedux.js +6 -3
  100. package/src/Redux/ActionsReducers/StatusBarRedux.js +10 -5
  101. package/src/Redux/ActionsReducers/SystemRedux.js +103 -51
  102. package/src/Redux/ActionsReducers/SystemStatusRedux.js +4 -2
  103. package/src/Redux/ActionsReducers/TeamSharingRedux.js +22 -11
  104. package/src/Redux/ActionsReducers/ThemeRedux.js +10 -5
  105. package/src/Redux/ActionsReducers/ToolPanelRedux.js +16 -8
  106. package/src/Redux/DeadRedux.js +16 -8
  107. package/src/Redux/Store/AdaptableReduxMerger.js +2 -1
  108. package/src/Redux/Store/AdaptableStore.js +7 -2
  109. package/src/Strategy/AlertModule.d.ts +2 -18
  110. package/src/Strategy/AlertModule.js +2 -1
  111. package/src/Strategy/ConditionalStyleModule.d.ts +2 -10
  112. package/src/Strategy/DashboardModule.js +3 -1
  113. package/src/Strategy/DataChangeHistoryModule.d.ts +2 -8
  114. package/src/Strategy/DataSetModule.d.ts +2 -13
  115. package/src/Strategy/ExportModule.d.ts +2 -13
  116. package/src/Strategy/ExportModule.js +1 -1
  117. package/src/Strategy/FilterModule.d.ts +2 -14
  118. package/src/Strategy/FilterModule.js +1 -1
  119. package/src/Strategy/FlashingCellModule.d.ts +2 -9
  120. package/src/Strategy/GridInfoModule.js +6 -2
  121. package/src/Strategy/Interface/IModule.d.ts +2 -1
  122. package/src/Strategy/LayoutModule.d.ts +3 -17
  123. package/src/Strategy/LayoutModule.js +57 -4
  124. package/src/Strategy/PlusMinusModule.d.ts +2 -9
  125. package/src/Strategy/QuickSearchModule.d.ts +2 -7
  126. package/src/Strategy/ScheduleModule.d.ts +2 -13
  127. package/src/Strategy/ShortcutModule.d.ts +2 -9
  128. package/src/Strategy/StatusBarModule.js +2 -2
  129. package/src/Strategy/SystemStatusModule.d.ts +2 -7
  130. package/src/Strategy/ThemeModule.d.ts +2 -8
  131. package/src/Strategy/Utilities/getAlertBehaviourViewItems.js +2 -1
  132. package/src/Strategy/Utilities/getAlertPreviewViewItems.js +2 -1
  133. package/src/Strategy/Utilities/getCustomSortColumnViewItems.js +2 -1
  134. package/src/Strategy/Utilities/getCustomSortSortOrderViewItems.js +2 -1
  135. package/src/Strategy/Utilities/getExportColumnsViewItems.js +2 -1
  136. package/src/Strategy/Utilities/getExportRowsViewItems.js +2 -1
  137. package/src/Strategy/Utilities/getExpressionViewItems.js +2 -1
  138. package/src/Strategy/Utilities/getFlashingCellDurationViewItems.js +2 -1
  139. package/src/Strategy/Utilities/getFlashingCellStyleViewItems.d.ts +2 -6
  140. package/src/Strategy/Utilities/getFlashingCellStyleViewItems.js +2 -1
  141. package/src/Strategy/Utilities/getFlashingTargetViewItems.js +2 -1
  142. package/src/Strategy/Utilities/getFormatColumnSettingsViewItems.js +2 -1
  143. package/src/Strategy/Utilities/getFormatColumnStyleViewItems.js +2 -1
  144. package/src/Strategy/Utilities/getObjectTagsViewItems.js +2 -1
  145. package/src/Strategy/Utilities/getRuleViewItems.js +2 -1
  146. package/src/Strategy/Utilities/getScopeViewItems.js +2 -1
  147. package/src/Strategy/Utilities/getShortcutSettingsViewItems.js +2 -1
  148. package/src/Strategy/Utilities/getStyleViewItems.js +2 -1
  149. package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +1 -0
  150. package/src/Utilities/Constants/DocumentationLinkConstants.js +2 -1
  151. package/src/Utilities/Constants/GeneralConstants.js +2 -1
  152. package/src/Utilities/Defaults/DefaultAdaptableOptions.js +21 -13
  153. package/src/Utilities/ExpressionFunctions/dateUtils.js +2 -1
  154. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +20 -10
  155. package/src/Utilities/Extensions/TypeExtensions.d.ts +30 -0
  156. package/src/Utilities/Helpers/AdaptableHelper.d.ts +1 -3
  157. package/src/Utilities/Helpers/AdaptableHelper.js +6 -16
  158. package/src/Utilities/Helpers/DateHelper.d.ts +27 -0
  159. package/src/Utilities/Helpers/DateHelper.js +43 -6
  160. package/src/Utilities/Helpers/Helper.js +2 -1
  161. package/src/Utilities/Helpers/LoggingHelper.js +2 -1
  162. package/src/Utilities/Helpers/StyleHelper.js +8 -4
  163. package/src/Utilities/MenuItem.d.ts +4 -3
  164. package/src/Utilities/MenuItem.js +9 -3
  165. package/src/Utilities/ObjectFactory.js +1 -0
  166. package/src/Utilities/Services/Interface/IMetamodelService.d.ts +1 -0
  167. package/src/Utilities/Services/Interface/IRowEditService.d.ts +3 -3
  168. package/src/Utilities/Services/MetamodelService.d.ts +7 -1
  169. package/src/Utilities/Services/MetamodelService.js +82 -6
  170. package/src/Utilities/Services/ModuleService.js +3 -1
  171. package/src/Utilities/Services/RowEditService.d.ts +6 -6
  172. package/src/Utilities/Services/RowEditService.js +24 -25
  173. package/src/Utilities/isAdaptableObject.js +2 -1
  174. package/src/Utilities/isMacLike.js +2 -1
  175. package/src/Utilities/license/decode.js +1 -1
  176. package/src/Utilities/reorder.js +2 -1
  177. package/src/Utilities/runIfNotResolvedIn.js +2 -1
  178. package/src/Utilities/waitForCondition.d.ts +1 -1
  179. package/src/Utilities/waitForCondition.js +2 -1
  180. package/src/View/AdaptableContext.js +2 -1
  181. package/src/View/AdaptableView.js +2 -1
  182. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +12 -9
  183. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizardColumnsStep.js +2 -1
  184. package/src/View/AdaptableWizardView/Utils.js +2 -1
  185. package/src/View/AdaptableWizardView/Wizard.js +4 -2
  186. package/src/View/AdaptableWizardView/helper.js +6 -3
  187. package/src/View/Alert/ActiveAlertsPanel.js +2 -1
  188. package/src/View/Alert/AlertEmptyView.js +2 -1
  189. package/src/View/Alert/AlertStatusSubPanel.js +2 -1
  190. package/src/View/Alert/Utilities/getAlertButtonStyle.js +2 -1
  191. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +4 -2
  192. package/src/View/Alert/Wizard/AlertButtonsEditor.js +2 -1
  193. package/src/View/Alert/Wizard/AlertDisplayWizardSection.js +6 -3
  194. package/src/View/Alert/Wizard/AlertRulesWizardSection.js +4 -2
  195. package/src/View/Alert/Wizard/AlertScopeWizardSection.js +2 -1
  196. package/src/View/Alert/Wizard/AlertWizard.js +2 -1
  197. package/src/View/Alert/Wizard/BaseAlertRulesWizardSection.js +2 -1
  198. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +4 -2
  199. package/src/View/Alert/Wizard/isValidAlertRules.js +2 -1
  200. package/src/View/CalculatedColumn/CalculatedColumnSummary.d.ts +1 -1
  201. package/src/View/CalculatedColumn/Utilities/getCalculatedColumnSettingTags.js +2 -1
  202. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +6 -3
  203. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +6 -3
  204. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +2 -1
  205. package/src/View/CellSummary/CellSummaryPopover.js +2 -1
  206. package/src/View/CellSummary/CellSummaryStatusBarSubPanelPopover.js +2 -1
  207. package/src/View/CellSummary/CellSummaryStatusPanel.js +2 -1
  208. package/src/View/ColorPicker.d.ts +5 -1
  209. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  210. package/src/View/Components/AdaptableDateInput/index.js +11 -11
  211. package/src/View/Components/AdaptableInput/index.d.ts +2 -2
  212. package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +4 -2
  213. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +4 -2
  214. package/src/View/Components/Buttons/ButtonClone.js +2 -1
  215. package/src/View/Components/Buttons/ButtonDelete.d.ts +1 -1
  216. package/src/View/Components/Buttons/ButtonEdit.js +2 -1
  217. package/src/View/Components/Buttons/ButtonNew.js +2 -1
  218. package/src/View/Components/ColumnSelector/index.js +2 -1
  219. package/src/View/Components/EntityRulesEditor/index.js +6 -3
  220. package/src/View/Components/ExpressionWizard.js +2 -1
  221. package/src/View/Components/ExternalRenderer.js +2 -1
  222. package/src/View/Components/FilterForm/FilterForm.js +2 -1
  223. package/src/View/Components/FilterForm/ListBoxFilterForm.js +2 -1
  224. package/src/View/Components/FilterForm/ListBoxMenu.js +2 -2
  225. package/src/View/Components/FilterForm/QuickFilterForm.js +5 -3
  226. package/src/View/Components/FilterForm/getDefaultColumnFilterPredicate.d.ts +1 -1
  227. package/src/View/Components/FilterForm/getDefaultColumnFilterPredicate.js +2 -1
  228. package/src/View/Components/Forms/AdaptableFormControlTextClear.d.ts +1 -2
  229. package/src/View/Components/ListBox/DualListBoxEditor.js +2 -1
  230. package/src/View/Components/ModuleValueSelector/index.js +2 -1
  231. package/src/View/Components/NewScopeComponent.js +6 -3
  232. package/src/View/Components/Panels/PanelFooter.js +2 -1
  233. package/src/View/Components/Panels/PanelWithImage.d.ts +1 -429
  234. package/src/View/Components/Panels/PanelWithImage.js +2 -0
  235. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +2 -1
  236. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupBody.js +2 -1
  237. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +2 -1
  238. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +2 -1
  239. package/src/View/Components/Popups/AdaptablePopup/CustomSettingsPanelView.js +2 -1
  240. package/src/View/Components/Popups/AdaptablePopup/Navigation.js +5 -5
  241. package/src/View/Components/Popups/AdaptablePopup/PopupContext.js +2 -1
  242. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +2 -1
  243. package/src/View/Components/Popups/AdaptablePopup/TopBar.js +6 -5
  244. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +2 -1
  245. package/src/View/Components/Popups/AdaptablePopupAlert.js +4 -4
  246. package/src/View/Components/Popups/AdaptablePopupPrompt.js +2 -1
  247. package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +2 -1
  248. package/src/View/Components/Popups/AdaptableToaster.js +2 -1
  249. package/src/View/Components/Popups/FormPopups/FormPopups.js +4 -2
  250. package/src/View/Components/Popups/Utilities.js +8 -4
  251. package/src/View/Components/Popups/WindowPopups/WindowPopups.js +2 -1
  252. package/src/View/Components/Selectors/ColumnSelector.js +2 -1
  253. package/src/View/Components/TagValueSelector/index.js +4 -2
  254. package/src/View/Components/ToolPanel/AdaptableToolPanel.d.ts +1 -1
  255. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +5 -1
  256. package/src/View/Components/ToolPanel/CustomToolPanelContent.js +2 -1
  257. package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +1 -1
  258. package/src/View/Components/ToolPanel/ToolPanelPopup.js +1 -1
  259. package/src/View/Components/ToolPanel/ToolPanelWrapper.js +2 -1
  260. package/src/View/Components/WizardSummaryPage.js +2 -1
  261. package/src/View/ConditionalStyle/Wizard/ConditionalStyleScopeWizardSection.js +2 -1
  262. package/src/View/ConditionalStyle/Wizard/ConditionalStyleSettingsWizardSettings.js +4 -2
  263. package/src/View/ConditionalStyle/Wizard/ConditionalStyleStyleWizardSection.js +2 -1
  264. package/src/View/ConditionalStyle/Wizard/ConditionalStyleWizard.js +2 -1
  265. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +6 -3
  266. package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +6 -3
  267. package/src/View/CustomSort/Wizard/CustomSortWizard.js +2 -1
  268. package/src/View/Dashboard/CustomDashboardButton.js +2 -1
  269. package/src/View/Dashboard/CustomToolbarWrapper.js +2 -1
  270. package/src/View/Dashboard/Dashboard.d.ts +1 -1
  271. package/src/View/Dashboard/Dashboard.js +4 -3
  272. package/src/View/Dashboard/DashboardPopup.js +1 -1
  273. package/src/View/Dashboard/ModuleToolbarWrapper.js +2 -1
  274. package/src/View/DataChangeHistory/DataChangeHistoryGrid.d.ts +7 -0
  275. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +6 -6
  276. package/src/View/DataChangeHistory/DataChangeHistoryStatusBarContent.js +2 -1
  277. package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +2 -1
  278. package/src/View/DataChangeHistory/buildActionColumnButton.js +13 -9
  279. package/src/View/DataSet/DataSetSelector.js +2 -1
  280. package/src/View/DataSet/DataSetStatusPanelPopover.js +2 -1
  281. package/src/View/DataSet/DataSetViewPanel.d.ts +1 -1
  282. package/src/View/Export/ExportSelector.js +2 -1
  283. package/src/View/Export/ExportViewPanel.d.ts +1 -1
  284. package/src/View/Export/ReportExportDropdown.js +2 -1
  285. package/src/View/Export/Wizard/NewReportWizard.js +4 -2
  286. package/src/View/Export/Wizard/ReportColumnsWizardSection.js +6 -3
  287. package/src/View/Export/Wizard/ReportNameWizardSection.js +6 -3
  288. package/src/View/Export/Wizard/ReportRowsWizardSection.js +6 -3
  289. package/src/View/Filter/ActiveFiltersPanel.js +2 -1
  290. package/src/View/Filter/FilterStatusBarSubPanelPopover.js +2 -1
  291. package/src/View/Filter/FilterSummary.d.ts +1 -1
  292. package/src/View/Filter/FilterViewPanel.d.ts +1 -1
  293. package/src/View/FlashingCell/FlashingCellStyle.js +2 -1
  294. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +4 -2
  295. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +2 -1
  296. package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +10 -5
  297. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +6 -3
  298. package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +2 -1
  299. package/src/View/FlashingCell/Wizard/isValidFlashingCellRules.js +2 -1
  300. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +8 -4
  301. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +4 -2
  302. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +4 -2
  303. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +4 -2
  304. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +6 -3
  305. package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +2 -1
  306. package/src/View/GridInfo/AdaptableObjectsSummary.js +2 -1
  307. package/src/View/GridInfo/AdaptableOptionsComponent.js +2 -1
  308. package/src/View/GridInfo/GridInfoPopup.js +6 -4
  309. package/src/View/KeyHint.js +2 -1
  310. package/src/View/Layout/EditCurrentLayoutButton.js +2 -1
  311. package/src/View/Layout/LayoutCloneButton.js +2 -1
  312. package/src/View/Layout/LayoutEditorStandalonePopup.js +2 -1
  313. package/src/View/Layout/LayoutPopup.d.ts +1 -1
  314. package/src/View/Layout/LayoutRadioSelector.js +2 -1
  315. package/src/View/Layout/LayoutStatusBarSubPanelPopover.js +2 -1
  316. package/src/View/Layout/LayoutViewPanel.d.ts +1 -1
  317. package/src/View/Layout/Wizard/LayoutEditor/ColumnLabels.js +2 -1
  318. package/src/View/Layout/Wizard/LayoutEditor/ColumnList.js +2 -1
  319. package/src/View/Layout/Wizard/LayoutEditor/ColumnSortList.js +2 -1
  320. package/src/View/Layout/Wizard/LayoutEditor/PivotList.js +2 -1
  321. package/src/View/Layout/Wizard/LayoutEditor/RowGroupsList.js +2 -1
  322. package/src/View/Layout/Wizard/LayoutEditor/getItemStyle.js +2 -1
  323. package/src/View/Layout/Wizard/LayoutEditor/reducer.js +4 -2
  324. package/src/View/Layout/Wizard/LayoutEditor/utils.js +2 -1
  325. package/src/View/License/LicenseWatermark.js +1 -1
  326. package/src/View/PlusMinus/Wizard/PlusMinusScopeWizardSection.js +2 -1
  327. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +6 -3
  328. package/src/View/PlusMinus/Wizard/PlusMinusWizard.js +2 -1
  329. package/src/View/Query/EditCurrentQueryButton.js +2 -1
  330. package/src/View/Query/ExpandedQueryPopup.js +2 -1
  331. package/src/View/Query/QueryViewPanel.d.ts +1 -1
  332. package/src/View/Query/Wizard/NamedQueryExpressionWizardSection.js +6 -3
  333. package/src/View/Query/Wizard/NamedQuerySettingsWizardSection.js +6 -3
  334. package/src/View/QuickSearch/QuickSearchStatusBarContent.js +2 -1
  335. package/src/View/QuickSearch/QuickSearchViewPanel.d.ts +1 -1
  336. package/src/View/QuickSearch/useQuickSearchDebounced.js +2 -1
  337. package/src/View/Schedule/Wizard/ScheduleScheduleSummary.js +2 -1
  338. package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +4 -2
  339. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsGlue42.js +2 -1
  340. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.js +2 -1
  341. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.js +2 -1
  342. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +2 -1
  343. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.js +2 -1
  344. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsSummary.js +4 -2
  345. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsWizard.js +2 -1
  346. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/isSettingsValid.js +2 -1
  347. package/src/View/Schedule/Wizard/ScheduleWizard.js +2 -1
  348. package/src/View/Shortcut/Wizard/ShortcutScopeWizardSection.js +2 -1
  349. package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +6 -3
  350. package/src/View/Shortcut/Wizard/ShortcutWizard.js +2 -1
  351. package/src/View/SpecialColumnSettingsWizardStep.js +2 -1
  352. package/src/View/StateManagement/StateManagementPopup.js +2 -1
  353. package/src/View/StateManagement/StateManagementViewPanel.js +2 -1
  354. package/src/View/StateManagement/components/ClearButton.js +2 -1
  355. package/src/View/StateManagement/components/ExportDropdown.js +2 -1
  356. package/src/View/StateManagement/components/LoadButton.js +2 -1
  357. package/src/View/StateManagement/handleExportState.js +2 -1
  358. package/src/View/StatusBar/AdaptableStatusBar.js +2 -1
  359. package/src/View/StatusBar/StatusBarPanel.js +2 -1
  360. package/src/View/StatusBar/StatusBarPopup.js +5 -4
  361. package/src/View/SystemStatus/SystemStatusStatusBarContent.js +2 -1
  362. package/src/View/SystemStatus/SystemStatusViewPanel.d.ts +1 -1
  363. package/src/View/SystemStatus/Utilities/getStatusItemStyle.js +2 -1
  364. package/src/View/Theme/ThemeStatusPanelPopover.js +2 -1
  365. package/src/View/UIHelper.d.ts +2 -0
  366. package/src/View/UIHelper.js +12 -11
  367. package/src/View/Wizard/AdaptableWizard.js +2 -1
  368. package/src/View/Wizard/ObjectTagsWizardSection.js +4 -2
  369. package/src/View/Wizard/OnePageAdaptableWizard.js +10 -5
  370. package/src/View/Wizard/OnePageWizards.js +8 -4
  371. package/src/View/Wizard/useKeyboardNavigation.js +2 -1
  372. package/src/View/renderWithAdaptableContext.js +2 -1
  373. package/src/agGrid/ActionColumnRenderer.d.ts +1 -1
  374. package/src/agGrid/ActionColumnRenderer.js +1 -1
  375. package/src/agGrid/Adaptable.js +31 -28
  376. package/src/agGrid/CheckboxRenderer.js +2 -1
  377. package/src/agGrid/FilterWrapper.js +2 -1
  378. package/src/agGrid/FloatingFilterWrapper.js +2 -1
  379. package/src/agGrid/PercentBarRenderer.js +2 -1
  380. package/src/agGrid/agGridHelper.js +3 -1
  381. package/src/agGrid/agGridMenuHelper.js +13 -10
  382. package/src/agGrid/createAgStatusPanelComponent.js +2 -1
  383. package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +8 -5
  384. package/src/components/AdaptableIconComponent/index.d.ts +10 -0
  385. package/src/components/AdaptableIconComponent/index.js +40 -0
  386. package/src/components/CheckBox/index.js +2 -1
  387. package/src/components/CodeBlock/index.js +2 -1
  388. package/src/components/Dashboard/DashboardManager.js +1 -1
  389. package/src/components/Datepicker/DatepickerContext.js +2 -1
  390. package/src/components/Datepicker/index.d.ts +1 -1
  391. package/src/components/DragAndDropContext/ModuleManager.d.ts +1 -0
  392. package/src/components/DragAndDropContext/ModuleManager.js +5 -4
  393. package/src/components/DragAndDropContext/UnusedPanel.d.ts +3 -2
  394. package/src/components/DragAndDropContext/UnusedPanel.js +14 -12
  395. package/src/components/EllipsisContainer/index.js +4 -2
  396. package/src/components/ExpressionEditor/EditorContext.js +2 -1
  397. package/src/components/ExpressionEditor/ExpressionFunctionDocumentation.js +2 -1
  398. package/src/components/ExpressionEditor/NamedQueryContext.js +3 -1
  399. package/src/components/FileDroppable/index.js +2 -1
  400. package/src/components/FormLayout/index.js +2 -1
  401. package/src/components/Input/index.d.ts +1 -1
  402. package/src/components/List/ListGroupItem/index.d.ts +2 -4
  403. package/src/components/Loader/Loader.js +4 -2
  404. package/src/components/Logo/index.js +2 -1
  405. package/src/components/Modal/Backdrop.js +2 -1
  406. package/src/components/Modal/index.js +2 -1
  407. package/src/components/OverlayTrigger/Overlay.js +2 -1
  408. package/src/components/OverlayTrigger/index.js +2 -1
  409. package/src/components/OverlayTrigger/utils.js +6 -3
  410. package/src/components/PopupWithFooter.d.ts +1 -1
  411. package/src/components/ProgressIndicator/ProgressIndicator.js +2 -1
  412. package/src/components/Radio/index.js +4 -2
  413. package/src/components/ResizeObserver/getResizeObserverObject.js +2 -1
  414. package/src/components/ResizeObserver/index.js +6 -3
  415. package/src/components/SelectList.js +2 -1
  416. package/src/components/SelectableList/index.js +2 -1
  417. package/src/components/SimpleButton/index.d.ts +2 -1
  418. package/src/components/SimpleButton/index.js +19 -6
  419. package/src/components/StylePreview.js +2 -1
  420. package/src/components/Tabs/index.js +6 -3
  421. package/src/components/Textarea/index.d.ts +5 -1
  422. package/src/components/ToggleButton/index.js +2 -1
  423. package/src/components/WindowModal/WindowModal.js +2 -1
  424. package/src/components/WindowModal/useStacking.js +2 -1
  425. package/src/components/icons/DefaultIcon.js +2 -1
  426. package/src/components/icons/index.d.ts +3 -1
  427. package/src/components/icons/index.js +10 -2
  428. package/src/components/utils/useContainerScrollObserver/index.js +2 -1
  429. package/src/components/utils/useGlobalEvent.js +2 -1
  430. package/src/components/utils/useLatest.js +2 -1
  431. package/src/components/utils/useRerender.js +2 -1
  432. package/src/components/utils/uuid.js +2 -1
  433. package/src/metamodel/adaptable-metamodel-model.d.ts +1 -1
  434. package/src/metamodel/adaptable.metamodel.d.ts +219 -112
  435. package/src/metamodel/adaptable.metamodel.js +1 -12958
  436. package/src/types.d.ts +8 -5
  437. package/version.d.ts +1 -1
  438. package/version.js +1 -1
  439. package/src/Api/Events/RowFormSubmitted.d.ts +0 -34
  440. package/src/components/ApplicationIcon.d.ts +0 -6
  441. package/src/components/ApplicationIcon.js +0 -13
@@ -1,34 +1,38 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseDateValue = exports.parseToISO = exports.dateToISO = exports.isValueValidDate = exports.isValidDate = void 0;
3
+ exports.parseFilterValueDate = exports.parseFilterInputDate = exports.utcDateToSameDateInLocale = exports.parseDateValue = exports.parseToISO = exports.dateToISO = exports.isValueValidDate = exports.isValidDate = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const parseISO_1 = tslib_1.__importDefault(require("date-fns/parseISO"));
6
6
  const parse_1 = tslib_1.__importDefault(require("date-fns/parse"));
7
7
  const LoggingHelper_1 = require("./LoggingHelper");
8
8
  const FormatHelper_1 = require("./FormatHelper");
9
- exports.isValidDate = (date) => {
9
+ const isValidDate = (date) => {
10
10
  return date instanceof Date && !isNaN(date.getTime());
11
11
  };
12
+ exports.isValidDate = isValidDate;
12
13
  /**
13
14
  * Checks if the data contains a value that represents a valid date.
14
15
  *
15
16
  * @param data any kind of data
16
17
  */
17
- exports.isValueValidDate = (data) => {
18
+ const isValueValidDate = (data) => {
18
19
  if (!data || typeof data === 'boolean') {
19
20
  return false;
20
21
  }
21
22
  const date = new Date(data);
22
23
  return !isNaN(date.getTime());
23
24
  };
24
- exports.dateToISO = (date) => {
25
+ exports.isValueValidDate = isValueValidDate;
26
+ const dateToISO = (date) => {
25
27
  return FormatHelper_1.DateFormatter(date, { Pattern: 'yyyy-MM-dd' });
26
28
  };
27
- exports.parseToISO = (date, dateFormat) => {
29
+ exports.dateToISO = dateToISO;
30
+ const parseToISO = (date, dateFormat) => {
28
31
  const dateInstance = exports.parseDateValue(date, dateFormat);
29
32
  return exports.isValidDate(dateInstance) ? exports.dateToISO(dateInstance) : '';
30
33
  };
31
- exports.parseDateValue = (dateValue, dateFormat) => {
34
+ exports.parseToISO = parseToISO;
35
+ const parseDateValue = (dateValue, dateFormat) => {
32
36
  if (dateValue == undefined) {
33
37
  return undefined;
34
38
  }
@@ -58,3 +62,36 @@ exports.parseDateValue = (dateValue, dateFormat) => {
58
62
  }
59
63
  return dateInstance;
60
64
  };
65
+ exports.parseDateValue = parseDateValue;
66
+ /**
67
+ * Creates a date with the same day/month/year/hour with the current timezone.
68
+ * '2022-06-01T17:00:00.000Z' => '2022-06-01T17:00:00.000+03:00' // RO time
69
+ *
70
+ * new Date() always creates the date using the current timezone.
71
+ * To compare two dates, they need to be in the same timezone.
72
+ *
73
+ * @param date Date
74
+ */
75
+ const utcDateToSameDateInLocale = (date) => {
76
+ return new Date(date.getTime() + date.getTimezoneOffset() * 60 * 1000);
77
+ };
78
+ exports.utcDateToSameDateInLocale = utcDateToSameDateInLocale;
79
+ /**
80
+ * To make sure selected/input date is correct and in the current time-zone.
81
+
82
+ *
83
+ * '2022-06-14' is considered to be '2022-06-13 00:00:00.
84
+ * And when date object is created it uses the current timezone.
85
+ *
86
+ * '2022-06-14' => Mon Jun 13 2022 20:00:00 GMT-0400 (Eastern Daylight Time)
87
+ *
88
+ * @param stringDate date string
89
+ */
90
+ const parseFilterInputDate = (stringDate) => exports.utcDateToSameDateInLocale(new Date(stringDate));
91
+ exports.parseFilterInputDate = parseFilterInputDate;
92
+ /**
93
+ * Used to parse the date from rowDate inside date predicates.
94
+ * The date is parsed in moved to local timezone.
95
+ */
96
+ const parseFilterValueDate = (value) => exports.utcDateToSameDateInLocale(exports.parseDateValue(value));
97
+ exports.parseFilterValueDate = parseFilterValueDate;
@@ -22,7 +22,7 @@ function cloneObject(obj) {
22
22
  return JSON.parse(JSON.stringify(obj));
23
23
  }
24
24
  exports.cloneObject = cloneObject;
25
- exports.arrayToKeyMap = (arr) => {
25
+ const arrayToKeyMap = (arr) => {
26
26
  const defaultAccumulator = {};
27
27
  if (!arr || !Array.isArray(arr)) {
28
28
  return defaultAccumulator;
@@ -32,6 +32,7 @@ exports.arrayToKeyMap = (arr) => {
32
32
  return acc;
33
33
  }, defaultAccumulator);
34
34
  };
35
+ exports.arrayToKeyMap = arrayToKeyMap;
35
36
  // converts an array (or an array of arrays) to CSV
36
37
  function convertArrayToCsv(array, separator = " ' ") {
37
38
  let csvContent = '';
@@ -22,7 +22,7 @@ function ConsoleLogByMessageType(message, messageType, ...optionalParams) {
22
22
  }
23
23
  }
24
24
  exports.ConsoleLogByMessageType = ConsoleLogByMessageType;
25
- exports.getLoggingFunctions = (channel) => {
25
+ const getLoggingFunctions = (channel) => {
26
26
  const prefix = channel ? `${channel}:` : '';
27
27
  const info = exports.log.extend(`${prefix}info`);
28
28
  info.log = console.info.bind(console);
@@ -71,6 +71,7 @@ exports.getLoggingFunctions = (channel) => {
71
71
  LogAdaptableInfo,
72
72
  };
73
73
  };
74
+ exports.getLoggingFunctions = getLoggingFunctions;
74
75
  function ConsoleLogWarning(message, ...optionalParams) {
75
76
  if (ArrayExtensions_1.ArrayExtensions.IsNotNullOrEmpty(optionalParams)) {
76
77
  console.warn(message, optionalParams);
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getVariableColor = exports.toStyle = exports.convertCSSAbsoluteFontSizeToPt = exports.convertAdaptableStyleToCSS = void 0;
4
4
  const EnumExtensions_1 = require("../Extensions/EnumExtensions");
5
- exports.convertAdaptableStyleToCSS = (style) => {
5
+ const convertAdaptableStyleToCSS = (style) => {
6
6
  let result = {};
7
7
  if (style.BackColor !== undefined && style.BackColor !== null) {
8
8
  result.backgroundColor = style.BackColor;
@@ -25,8 +25,9 @@ exports.convertAdaptableStyleToCSS = (style) => {
25
25
  // assertion added to comply with the ag-Grid types
26
26
  return result;
27
27
  };
28
+ exports.convertAdaptableStyleToCSS = convertAdaptableStyleToCSS;
28
29
  // based on http://jerekdain.com/fontconversion.html
29
- exports.convertCSSAbsoluteFontSizeToPt = (fontSize) => {
30
+ const convertCSSAbsoluteFontSizeToPt = (fontSize) => {
30
31
  switch (fontSize) {
31
32
  case 'x-large':
32
33
  return 18;
@@ -42,10 +43,12 @@ exports.convertCSSAbsoluteFontSizeToPt = (fontSize) => {
42
43
  return 12;
43
44
  }
44
45
  };
45
- exports.toStyle = (style) => {
46
+ exports.convertCSSAbsoluteFontSizeToPt = convertCSSAbsoluteFontSizeToPt;
47
+ const toStyle = (style) => {
46
48
  return Object.assign(Object.assign({}, exports.convertAdaptableStyleToCSS(style !== null && style !== void 0 ? style : {})), { borderWidth: (style === null || style === void 0 ? void 0 : style.BorderColor) ? 2 : 0, borderStyle: 'solid' });
47
49
  };
48
- exports.getVariableColor = (variable) => {
50
+ exports.toStyle = toStyle;
51
+ const getVariableColor = (variable) => {
49
52
  var _a;
50
53
  const isVariable = (_a = variable === null || variable === void 0 ? void 0 : variable.startsWith) === null || _a === void 0 ? void 0 : _a.call(variable, 'var(');
51
54
  if (!isVariable) {
@@ -57,3 +60,4 @@ exports.getVariableColor = (variable) => {
57
60
  }
58
61
  return getComputedStyle(document.documentElement).getPropertyValue(match[1]).trim();
59
62
  };
63
+ exports.getVariableColor = getVariableColor;
@@ -2,13 +2,14 @@ import * as Redux from 'redux';
2
2
  import { ModuleParams } from '../View/Components/SharedProps/ModuleViewPopupProps';
3
3
  import { AdaptableMenuItem } from '../PredefinedConfig/Common/Menu';
4
4
  import { AdaptableModule } from '../PredefinedConfig/Common/Types';
5
+ import { AdaptableIcon } from '../PredefinedConfig/Common/AdaptableIcon';
5
6
  export declare class MenuItemDoReduxAction implements AdaptableMenuItem {
6
7
  constructor(label: string, module: AdaptableModule, reduxAction: Redux.Action, icon: string, isVisible: boolean);
7
8
  reduxAction: Redux.Action;
8
9
  label: string;
9
10
  module: AdaptableModule;
10
11
  isVisible: boolean;
11
- icon: string;
12
+ icon: AdaptableIcon;
12
13
  }
13
14
  export declare class MenuItemDoClickFunction implements AdaptableMenuItem {
14
15
  constructor(label: string, module: AdaptableModule, clickFunction: () => void, icon: string, isVisible: boolean);
@@ -16,7 +17,7 @@ export declare class MenuItemDoClickFunction implements AdaptableMenuItem {
16
17
  label: string;
17
18
  module: AdaptableModule;
18
19
  isVisible: boolean;
19
- icon: string;
20
+ icon: AdaptableIcon;
20
21
  }
21
22
  export declare class MenuItemShowPopup implements AdaptableMenuItem {
22
23
  constructor(label: string, module: AdaptableModule, componentName: string, icon: string, isVisible: boolean, popupParams?: ModuleParams);
@@ -24,5 +25,5 @@ export declare class MenuItemShowPopup implements AdaptableMenuItem {
24
25
  label: string;
25
26
  module: AdaptableModule;
26
27
  isVisible: boolean;
27
- icon: string;
28
+ icon: AdaptableIcon;
28
29
  }
@@ -9,7 +9,9 @@ class MenuItemDoReduxAction {
9
9
  this.label = label;
10
10
  this.module = module;
11
11
  this.isVisible = isVisible;
12
- this.icon = icon;
12
+ this.icon = {
13
+ name: icon,
14
+ };
13
15
  this.reduxAction = reduxAction;
14
16
  }
15
17
  }
@@ -19,7 +21,9 @@ class MenuItemDoClickFunction {
19
21
  this.label = label;
20
22
  this.module = module;
21
23
  this.isVisible = isVisible;
22
- this.icon = icon;
24
+ this.icon = {
25
+ name: icon,
26
+ };
23
27
  this.onClick = clickFunction;
24
28
  }
25
29
  }
@@ -30,7 +34,9 @@ class MenuItemShowPopup {
30
34
  this.label = label;
31
35
  this.module = module;
32
36
  this.isVisible = isVisible;
33
- this.icon = icon;
37
+ this.icon = {
38
+ name: icon,
39
+ };
34
40
  this.reduxAction = PopupRedux.PopupShowScreen(module, componentName, popupParams);
35
41
  }
36
42
  }
@@ -375,6 +375,7 @@ function CreateToastOptions(notificationsOptions, { onClose, containerId }) {
375
375
  transition: transition,
376
376
  draggablePercent: 75,
377
377
  onClose,
378
+ // progress: undefined,
378
379
  };
379
380
  return toastProps;
380
381
  }
@@ -11,4 +11,5 @@ export interface GridInfoOption {
11
11
  }
12
12
  export interface IMetamodelService extends IAdaptableService {
13
13
  getGridInfoOptions(): GridInfoOptions;
14
+ validateAdaptableOptionsValues(): void;
14
15
  }
@@ -1,8 +1,8 @@
1
1
  import { RowNode } from '@ag-grid-community/all-modules';
2
2
  import { IAdaptableService } from './IAdaptableService';
3
3
  import { AdaptableForm } from '../../../PredefinedConfig/Common/AdaptableForm';
4
- import { CreateRowFormContext, EditRowFormContext } from '../../../AdaptableOptions/EditOptions';
4
+ import { CreateActionRowContext, EditActionRowContext } from '../../../AdaptableOptions/ActionOptions';
5
5
  export interface IRowEditService extends IAdaptableService {
6
- buildRowEditForm(rowNode: RowNode): AdaptableForm<EditRowFormContext>;
7
- buildRowCreateForm(clonedRowNode?: RowNode): AdaptableForm<CreateRowFormContext>;
6
+ buildRowEditForm(rowNode: RowNode): AdaptableForm<EditActionRowContext>;
7
+ buildRowCreateForm(clonedRowNode?: RowNode): AdaptableForm<CreateActionRowContext>;
8
8
  }
@@ -5,7 +5,13 @@ export declare class MetamodelService implements IMetamodelService {
5
5
  private gridInfoOptions;
6
6
  constructor(adaptableApi: AdaptableApi);
7
7
  getGridInfoOptions(): GridInfoOptions;
8
+ validateAdaptableOptionsValues(): void;
9
+ private validateOptionsObject;
10
+ private getExpectedOptionsValueType;
8
11
  private buildGridInfoOptions;
9
12
  private mapGridInfoContainerItems;
10
- destroy(): void;
13
+ private getAdaptableOptionsDefaultValues;
14
+ private getAdaptableMetamodel;
15
+ private getAdaptableOptionsMetamodel;
16
+ private getAdaptableOptions;
11
17
  }
@@ -3,6 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MetamodelService = void 0;
4
4
  const adaptable_metamodel_1 = require("../../metamodel/adaptable.metamodel");
5
5
  const DefaultAdaptableOptions_1 = require("../Defaults/DefaultAdaptableOptions");
6
+ const LoggingHelper_1 = require("../Helpers/LoggingHelper");
7
+ const DocumentationLinkConstants_1 = require("../Constants/DocumentationLinkConstants");
8
+ const supportedMetamodelTypes = [
9
+ 'string',
10
+ 'number',
11
+ 'boolean',
12
+ 'array',
13
+ 'function',
14
+ 'REFERENCE',
15
+ ];
6
16
  class MetamodelService {
7
17
  constructor(adaptableApi) {
8
18
  this.adaptableApi = adaptableApi;
@@ -13,17 +23,72 @@ class MetamodelService {
13
23
  getGridInfoOptions() {
14
24
  return this.gridInfoOptions;
15
25
  }
26
+ validateAdaptableOptionsValues() {
27
+ var _a;
28
+ LoggingHelper_1.LogAdaptableInfo('Validating Adaptable Options...');
29
+ const adaptableOptionsValues = this.getAdaptableOptions();
30
+ const adaptableOptionsMetamodel = this.getAdaptableOptionsMetamodel();
31
+ const adaptableOptionsDefaultValues = this.getAdaptableOptionsDefaultValues();
32
+ if ((_a = adaptableOptionsValues.adaptableId) === null || _a === void 0 ? void 0 : _a.includes('.')) {
33
+ LoggingHelper_1.ConsoleLogWarning("The 'AdaptableOptions.adaptableId' property should NOT include a '.' character. We strongly recommend to remove it to avoid unexpected AdapTable behavior.");
34
+ }
35
+ const validationErrors = [];
36
+ this.validateOptionsObject(validationErrors, 'AdaptableOptions', adaptableOptionsValues, adaptableOptionsMetamodel, adaptableOptionsDefaultValues);
37
+ if (validationErrors.length) {
38
+ LoggingHelper_1.LogAdaptableWarning([
39
+ 'AdaptableOptions validation errors:',
40
+ '\n',
41
+ ...validationErrors,
42
+ '\n',
43
+ `See AdaptableOptions documentation at ${DocumentationLinkConstants_1.AdaptableOptionsDocsLink} for details`,
44
+ ].join('\n'));
45
+ }
46
+ }
47
+ validateOptionsObject(validationErrors, optionsObjectName, optionsObject, optionsObjectMetamodel, optionsObjectDefaultValues) {
48
+ Object.entries(optionsObject).forEach(([optionKey, optionValue]) => {
49
+ const optionMetamodel = optionsObjectMetamodel.properties.find((metamodelProperty) => metamodelProperty.name === optionKey);
50
+ if (!optionMetamodel) {
51
+ validationErrors.push(`${optionsObjectName}.${optionKey} (value=${optionValue}) :: unknown/unsupported property, will be ignored`);
52
+ return;
53
+ }
54
+ // let's try to validate the type of the provided value
55
+ const expectedOptionsValueType = this.getExpectedOptionsValueType(optionMetamodel);
56
+ const providedOptionsValueType = Array.isArray(optionValue) ? 'array' : typeof optionValue;
57
+ if (!expectedOptionsValueType) {
58
+ return;
59
+ }
60
+ // if it's a REFERENCE, we try to go (recursively) deeper
61
+ if (expectedOptionsValueType === 'REFERENCE') {
62
+ const referenceObjectName = optionMetamodel.reference;
63
+ const referenceObject = optionsObject[optionKey];
64
+ const referenceObjectMetamodel = this.getAdaptableMetamodel()[referenceObjectName];
65
+ if (referenceObject && (referenceObjectMetamodel === null || referenceObjectMetamodel === void 0 ? void 0 : referenceObjectMetamodel.kind) === 'Interface') {
66
+ this.validateOptionsObject(validationErrors, referenceObjectName, referenceObject, referenceObjectMetamodel, optionsObjectDefaultValues === null || optionsObjectDefaultValues === void 0 ? void 0 : optionsObjectDefaultValues[optionKey]);
67
+ }
68
+ }
69
+ else if (supportedMetamodelTypes.includes(providedOptionsValueType) &&
70
+ providedOptionsValueType !== expectedOptionsValueType) {
71
+ validationErrors.push(`${optionsObjectName}.${optionKey} (value=${optionValue}) :: wrong type (${providedOptionsValueType}), expected ${expectedOptionsValueType}`);
72
+ }
73
+ });
74
+ }
75
+ getExpectedOptionsValueType(metamodelProperty) {
76
+ const metamodelPropertyKind = metamodelProperty.kind;
77
+ if (supportedMetamodelTypes.includes(metamodelPropertyKind)) {
78
+ return metamodelPropertyKind;
79
+ }
80
+ }
16
81
  buildGridInfoOptions() {
17
82
  const gridInfoOptions = new Map();
18
- const adaptableMetamodel = adaptable_metamodel_1.ADAPTABLE_METAMODEL;
19
- const adaptableOptionsMetamodel = adaptableMetamodel['AdaptableOptions'];
20
- const adaptableOptionsValues = this.adaptableApi.internalApi.getAdaptableOptions();
21
- const adaptableOptionsDefaultValues = DefaultAdaptableOptions_1.DefaultAdaptableOptions;
83
+ const adaptableMetamodel = this.getAdaptableMetamodel();
84
+ const adaptableOptionsMetamodel = this.getAdaptableOptionsMetamodel();
85
+ const adaptableOptionsValues = this.getAdaptableOptions();
86
+ const adaptableOptionsDefaultValues = this.getAdaptableOptionsDefaultValues();
22
87
  if (!adaptableOptionsMetamodel) {
23
88
  // should never happen
24
89
  return gridInfoOptions;
25
90
  }
26
- // root-level properties are grouped in a syntethic 'Base Options' container
91
+ // root-level properties are grouped in a synthetic 'Base Options' container
27
92
  const baseOptionsItems = this.mapGridInfoContainerItems(adaptableOptionsMetamodel, adaptableOptionsValues, adaptableOptionsDefaultValues);
28
93
  gridInfoOptions.set('baseOptions', {
29
94
  containerLabel: 'Base Options',
@@ -65,6 +130,17 @@ class MetamodelService {
65
130
  };
66
131
  });
67
132
  }
68
- destroy() { }
133
+ getAdaptableOptionsDefaultValues() {
134
+ return DefaultAdaptableOptions_1.DefaultAdaptableOptions;
135
+ }
136
+ getAdaptableMetamodel() {
137
+ return adaptable_metamodel_1.ADAPTABLE_METAMODEL;
138
+ }
139
+ getAdaptableOptionsMetamodel() {
140
+ return this.getAdaptableMetamodel()['AdaptableOptions'];
141
+ }
142
+ getAdaptableOptions() {
143
+ return this.adaptableApi.internalApi.getAdaptableOptions();
144
+ }
69
145
  }
70
146
  exports.MetamodelService = MetamodelService;
@@ -94,7 +94,7 @@ class ModuleService {
94
94
  case 'Dashboard':
95
95
  return learnUrl + 'ui-dashboard';
96
96
  case 'DataSet':
97
- return learnUrl + 'handbook-data-sources';
97
+ return learnUrl + 'handbook-data-sets';
98
98
  case 'DataChangeHistory':
99
99
  return learnUrl + 'handbook-monitoring#data-change-history';
100
100
  case 'Export':
@@ -125,6 +125,8 @@ class ModuleService {
125
125
  return learnUrl + 'handbook-editing#smart-edit';
126
126
  case 'StateManagement':
127
127
  return learnUrl + 'dev-guide-adaptable-state';
128
+ case 'StatusBar':
129
+ return learnUrl + 'ui-status-bar';
128
130
  case 'SystemStatus':
129
131
  return learnUrl + 'handbook-notifying';
130
132
  case 'TeamSharing':
@@ -2,20 +2,20 @@ import { IRowEditService } from './Interface/IRowEditService';
2
2
  import { RowNode } from '@ag-grid-community/all-modules';
3
3
  import { AdaptableApi } from '../../Api/AdaptableApi';
4
4
  import { AdaptableForm } from '../../PredefinedConfig/Common/AdaptableForm';
5
- import { CreateRowFormContext, EditRowFormContext } from '../../AdaptableOptions/EditOptions';
5
+ import { CreateActionRowContext, EditActionRowContext } from '../../AdaptableOptions/ActionOptions';
6
6
  export declare class RowEditService implements IRowEditService {
7
7
  private adaptableApi;
8
8
  private adaptableInstance;
9
9
  private rowEditFormOptions;
10
10
  constructor(adaptableApi: AdaptableApi);
11
- buildRowEditForm(rowNode: RowNode): AdaptableForm<EditRowFormContext>;
12
- buildRowCreateForm(clonedRowNode?: RowNode): AdaptableForm<CreateRowFormContext>;
13
- private buildRowForm;
11
+ buildRowEditForm(rowNode: RowNode): AdaptableForm<EditActionRowContext>;
12
+ buildRowCreateForm(clonedRowNode?: RowNode): AdaptableForm<CreateActionRowContext>;
13
+ private buildActionRow;
14
14
  private getFormTitle;
15
15
  private getFormDescription;
16
16
  private buildFormParamContext;
17
- private buildRowFormFields;
18
- private buildRowFormButtons;
17
+ private buildActionRowFields;
18
+ private buidActionRowButtons;
19
19
  private isColumnEditable;
20
20
  private buildFormField;
21
21
  private getFormFieldLabel;
@@ -6,30 +6,29 @@ class RowEditService {
6
6
  this.adaptableApi = adaptableApi;
7
7
  this.adaptableInstance = this.adaptableApi.internalApi.getAdaptableInstance();
8
8
  this.rowEditFormOptions =
9
- this.adaptableApi.internalApi.getAdaptableInstance().adaptableOptions.editOptions.rowFormOptions;
10
- if (this.adaptableInstance.adaptableOptions.userInterfaceOptions.actionOptions
11
- .autoHandleActionRowButtons) {
12
- this.adaptableInstance.api.eventApi.on('RowFormSubmitted', (eventInfo) => this.autoHandleActionRowButtons(eventInfo));
9
+ this.adaptableApi.internalApi.getAdaptableInstance().adaptableOptions.actionOptions.actionRowFormOptions;
10
+ if (this.adaptableInstance.adaptableOptions.actionOptions.autoHandleActionRowButtons) {
11
+ this.adaptableInstance.api.eventApi.on('ActionRowSubmitted', (eventInfo) => this.autoHandleActionRowButtons(eventInfo));
13
12
  }
14
13
  }
15
14
  buildRowEditForm(rowNode) {
16
- return this.buildRowForm('rowEdited', rowNode);
15
+ return this.buildActionRow('rowEdited', rowNode);
17
16
  }
18
17
  buildRowCreateForm(clonedRowNode) {
19
- return this.buildRowForm('rowCreated', clonedRowNode);
18
+ return this.buildActionRow('rowCreated', clonedRowNode);
20
19
  }
21
- buildRowForm(type, rowNode) {
22
- const formFields = this.buildRowFormFields(type, rowNode);
23
- const formButtons = this.buildRowFormButtons(type, rowNode);
20
+ buildActionRow(type, rowNode) {
21
+ const formFields = this.buildActionRowFields(type, rowNode);
22
+ const formButtons = this.buidActionRowButtons(type, rowNode);
24
23
  const formTitle = this.getFormTitle(type, rowNode);
25
24
  const formDescription = this.getFormDescription(type, rowNode);
26
- const rowForm = {
25
+ const actionRowForm = {
27
26
  title: formTitle,
28
27
  description: formDescription,
29
28
  fields: formFields,
30
29
  buttons: formButtons,
31
30
  };
32
- return rowForm;
31
+ return actionRowForm;
33
32
  }
34
33
  getFormTitle(type, rowNode) {
35
34
  if (this.rowEditFormOptions.formTitle == undefined) {
@@ -51,7 +50,7 @@ class RowEditService {
51
50
  type: type,
52
51
  };
53
52
  }
54
- buildRowFormFields(type, rowNode) {
53
+ buildActionRowFields(type, rowNode) {
55
54
  const relevantColumns = this.adaptableApi.columnApi
56
55
  .getColumns()
57
56
  .filter((column) => {
@@ -61,7 +60,7 @@ class RowEditService {
61
60
  .filter((column) => !this.adaptableApi.columnApi.isActionRowButtonColumn(column.columnId));
62
61
  return relevantColumns.map((column) => this.buildFormField(type, column, rowNode));
63
62
  }
64
- buildRowFormButtons(type, rowNode) {
63
+ buidActionRowButtons(type, rowNode) {
65
64
  // 1. check if there are custom user provided buttons
66
65
  if (Array.isArray(this.rowEditFormOptions.formButtons)) {
67
66
  return this.rowEditFormOptions.formButtons;
@@ -95,8 +94,8 @@ class RowEditService {
95
94
  rowNode: rowNode,
96
95
  adaptableApi: context.adaptableApi,
97
96
  };
98
- this.adaptableApi.eventApi.emit('RowFormSubmitted', eventInfo);
99
- (_b = (_a = this.adaptableInstance.adaptableOptions.editOptions.rowFormOptions).onFormSubmit) === null || _b === void 0 ? void 0 : _b.call(_a, eventInfo);
97
+ this.adaptableApi.eventApi.emit('ActionRowSubmitted', eventInfo);
98
+ (_b = (_a = this.adaptableInstance.adaptableOptions.actionOptions.actionRowFormOptions).onFormSubmit) === null || _b === void 0 ? void 0 : _b.call(_a, eventInfo);
100
99
  },
101
100
  };
102
101
  return [cancelButton, saveButton];
@@ -168,22 +167,22 @@ class RowEditService {
168
167
  label: value,
169
168
  }));
170
169
  }
171
- autoHandleActionRowButtons(rowEditedFormInfo) {
172
- const { adaptableApi } = rowEditedFormInfo;
173
- if (rowEditedFormInfo.type === 'rowEdited') {
174
- const { rowNode, formData } = rowEditedFormInfo;
170
+ autoHandleActionRowButtons(actionRowSubmittedInfo) {
171
+ const { adaptableApi } = actionRowSubmittedInfo;
172
+ if (actionRowSubmittedInfo.type === 'rowEdited') {
173
+ const { rowNode, formData } = actionRowSubmittedInfo;
175
174
  const newRowData = Object.assign(Object.assign({}, rowNode.data), formData);
176
175
  adaptableApi.gridApi.updateGridData([newRowData]);
177
176
  }
178
- if (rowEditedFormInfo.type === 'rowDeleted') {
179
- const { rowNode } = rowEditedFormInfo;
177
+ if (actionRowSubmittedInfo.type === 'rowDeleted') {
178
+ const { rowNode } = actionRowSubmittedInfo;
180
179
  const deletedRowData = rowNode.data;
181
180
  adaptableApi.gridApi.deleteGridData([deletedRowData]);
182
181
  }
183
- if (rowEditedFormInfo.type === 'rowCreated') {
184
- const { formData } = rowEditedFormInfo;
185
- const setPrimaryKeyValueFunction = adaptableApi.internalApi.getAdaptableInstance().adaptableOptions.userInterfaceOptions
186
- .actionOptions.setPrimaryKeyValue;
182
+ if (actionRowSubmittedInfo.type === 'rowCreated') {
183
+ const { formData } = actionRowSubmittedInfo;
184
+ const setPrimaryKeyValueFunction = adaptableApi.internalApi.getAdaptableInstance().adaptableOptions.actionOptions
185
+ .setPrimaryKeyValue;
187
186
  const newRowData = typeof setPrimaryKeyValueFunction === 'function'
188
187
  ? setPrimaryKeyValueFunction({
189
188
  rowData: formData,
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isAdaptableObject = void 0;
4
4
  // pretty primitive type guard for AdaptableObject, but currently there is no better/safer way
5
- exports.isAdaptableObject = (object) => {
5
+ const isAdaptableObject = (object) => {
6
6
  return object != undefined && typeof object['Uuid'] === 'string';
7
7
  };
8
+ exports.isAdaptableObject = isAdaptableObject;
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isMacLike = void 0;
4
- exports.isMacLike = () => {
4
+ const isMacLike = () => {
5
5
  const globalObject = typeof globalThis !== 'undefined' ? globalThis : window;
6
6
  return /(Mac|iPhone|iPod|iPad)/i.test(globalObject.navigator.platform);
7
7
  };
8
+ exports.isMacLike = isMacLike;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.decode=exports.fieldsToLicenseDetails=void 0;const e=require("./hashing"),t=()=>new Error("Invalid License");exports.fieldsToLicenseDetails=e=>{var r;const o=e.reduce(((e,t)=>(e.set(t.name,t.value),e)),new Map),s={count:o.get("DeveloperCount")?Number(o.get("DeveloperCount")):0,start:new Date(o.get("StartDate")),end:new Date(o.get("EndDate")),owner:o.get("Owner"),timestamp:o.get("TS")?Number(o.get("TS")):0,trial:"true"===o.get("Trial"),ref:null!==(r=o.get("Ref"))&&void 0!==r?r:""};if(!(s.start&&s.end&&s.owner&&"boolean"==typeof s.trial&&s.ref))throw t();return s},exports.decode=r=>{let o="",s=r.split("|").map((e=>{let[t,r]=e.split("=");return"C"===t&&(o=r),{name:t,value:r}}));if(!o)throw t();const n=o.split(",").reverse(),a=n.pop();n.forEach(((r,o)=>{const n=s[o];if(e.compute_string(n.value)!==r)throw t()}));const i=[...s];i.pop();const l=i.map((e=>`${e.name}=${e.value}`)).join("|");if(e.compute_string(l)!==a)throw t();return s=s.map((e=>Object.assign(Object.assign({},e),{value:decodeURI(e.value)}))),exports.fieldsToLicenseDetails(s)};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.decode=exports.fieldsToLicenseDetails=void 0;const e=require("./hashing"),t=()=>new Error("Invalid License"),r=e=>{var r;const o=e.reduce(((e,t)=>(e.set(t.name,t.value),e)),new Map),s={count:o.get("DeveloperCount")?Number(o.get("DeveloperCount")):0,start:new Date(o.get("StartDate")),end:new Date(o.get("EndDate")),owner:o.get("Owner"),timestamp:o.get("TS")?Number(o.get("TS")):0,trial:"true"===o.get("Trial"),ref:null!==(r=o.get("Ref"))&&void 0!==r?r:""};if(!(s.start&&s.end&&s.owner&&"boolean"==typeof s.trial&&s.ref))throw t();return s};exports.fieldsToLicenseDetails=r;const o=r=>{let o="",s=r.split("|").map((e=>{let[t,r]=e.split("=");return"C"===t&&(o=r),{name:t,value:r}}));if(!o)throw t();const n=o.split(",").reverse(),a=n.pop();n.forEach(((r,o)=>{const n=s[o];if(e.compute_string(n.value)!==r)throw t()}));const i=[...s];i.pop();const l=i.map((e=>`${e.name}=${e.value}`)).join("|");if(e.compute_string(l)!==a)throw t();return s=s.map((e=>Object.assign(Object.assign({},e),{value:decodeURI(e.value)}))),exports.fieldsToLicenseDetails(s)};exports.decode=o;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.reorder = void 0;
4
- exports.reorder = (list, startIndex, endIndex) => {
4
+ const reorder = (list, startIndex, endIndex) => {
5
5
  const result = [...list];
6
6
  if (startIndex > list.length - 1) {
7
7
  // not much that we can do if the dragged item is out of bounds...
@@ -14,3 +14,4 @@ exports.reorder = (list, startIndex, endIndex) => {
14
14
  result.splice(endIndex, 0, removed);
15
15
  return result;
16
16
  };
17
+ exports.reorder = reorder;
@@ -8,7 +8,7 @@ exports.runIfNotResolvedIn = void 0;
8
8
  * @param callback Called if promise does not resolve in the time defined by 'delay'
9
9
  * @param delay Time after which if the promise was not resolved the callback (fn) is called.
10
10
  */
11
- exports.runIfNotResolvedIn = async (promise, callback, delay = 100) => {
11
+ const runIfNotResolvedIn = async (promise, callback, delay = 100) => {
12
12
  let isFulfilled = false;
13
13
  promise === null || promise === void 0 ? void 0 : promise.then(() => {
14
14
  isFulfilled = true;
@@ -21,3 +21,4 @@ exports.runIfNotResolvedIn = async (promise, callback, delay = 100) => {
21
21
  })();
22
22
  return promise;
23
23
  };
24
+ exports.runIfNotResolvedIn = runIfNotResolvedIn;
@@ -1 +1 @@
1
- export declare const waitForCondition: (isReady: () => boolean, timeout?: number) => Promise<any>;
1
+ export declare const waitForCondition: (isReady: () => boolean, timeout?: number) => Promise<void>;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.waitForCondition = void 0;
4
- exports.waitForCondition = (isReady, timeout = 5000) => {
4
+ const waitForCondition = (isReady, timeout = 5000) => {
5
5
  const startTime = Date.now();
6
6
  const ready = isReady();
7
7
  if (ready) {
@@ -26,3 +26,4 @@ exports.waitForCondition = (isReady, timeout = 5000) => {
26
26
  wait(resolve);
27
27
  });
28
28
  };
29
+ exports.waitForCondition = waitForCondition;
@@ -5,6 +5,7 @@ const tslib_1 = require("tslib");
5
5
  const React = tslib_1.__importStar(require("react"));
6
6
  const AdaptableContext = React.createContext(null);
7
7
  exports.default = AdaptableContext;
8
- exports.useAdaptable = () => {
8
+ const useAdaptable = () => {
9
9
  return React.useContext(AdaptableContext);
10
10
  };
11
+ exports.useAdaptable = useAdaptable;
@@ -60,4 +60,5 @@ function mapDispatchToProps(dispatch) {
60
60
  };
61
61
  }
62
62
  let AdaptableWrapper = react_redux_1.connect(mapStateToProps, mapDispatchToProps)(AdaptableView);
63
- exports.AdaptableApp = ({ Adaptable }) => renderWithAdaptableContext_1.renderWithAdaptableContext(React.createElement(AdaptableWrapper, { Adaptable: Adaptable }), Adaptable);
63
+ const AdaptableApp = ({ Adaptable }) => renderWithAdaptableContext_1.renderWithAdaptableContext(React.createElement(AdaptableWrapper, { Adaptable: Adaptable }), Adaptable);
64
+ exports.AdaptableApp = AdaptableApp;