@zohodesk/library-platform 1.1.9 → 1.1.10-exp.2

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 (444) hide show
  1. package/es/bc/app-context/Constants.js +0 -0
  2. package/es/bc/app-context/Event.js +1 -0
  3. package/es/bc/app-context/EventHandlers.js +0 -0
  4. package/es/bc/app-context/Properties.js +68 -0
  5. package/es/bc/sdk/ResourceNamesEnum.js +1 -0
  6. package/es/bc/zdata-source/Constants.js +6 -11
  7. package/es/bc/zform/Constants.js +11 -1
  8. package/es/bc/zform/Properties.js +29 -27
  9. package/es/bc/zform/Symbol.js +2 -3
  10. package/es/bc/zlist/Properties.js +0 -45
  11. package/es/bc/zrecord/Constants.js +11 -19
  12. package/es/cc/action-icon/Constants.js +3 -5
  13. package/es/cc/action-location/Constants.js +5 -9
  14. package/es/cc/avatar/Constants.js +3 -5
  15. package/es/cc/breadcrumb/Constants.js +3 -5
  16. package/es/cc/button/Constants.js +3 -5
  17. package/es/cc/checkbox/Constants.js +5 -9
  18. package/es/cc/component/ErrorStructure.js +9 -0
  19. package/es/cc/date/Constants.js +5 -9
  20. package/es/cc/email/Constants.js +3 -5
  21. package/es/cc/error-state/ErrorTypes.js +11 -0
  22. package/es/cc/error-state/Properties.js +31 -0
  23. package/es/cc/error-state/index.js +2 -0
  24. package/es/cc/fields/currency/Model.js +2 -0
  25. package/es/cc/fields/currency/Properties.js +2 -1
  26. package/es/cc/fields/field/Constants.js +9 -13
  27. package/es/cc/fields/field/FormDefaultUIType.js +1 -1
  28. package/es/cc/fields/field/Properties.js +14 -8
  29. package/es/cc/fields/lookup/Properties.js +34 -1
  30. package/es/cc/form/Constants.js +6 -11
  31. package/es/cc/form/Properties.js +8 -0
  32. package/es/cc/form-connected/ExternalConstants.js +14 -0
  33. package/es/cc/form-connected/Properties.js +21 -13
  34. package/es/cc/form-connected/index.js +1 -1
  35. package/es/cc/highlighted-value/Constants.js +3 -5
  36. package/es/cc/icon-button/Constants.js +3 -5
  37. package/es/cc/link/Constants.js +3 -5
  38. package/es/cc/list-item/Constants.js +3 -5
  39. package/es/cc/more-dropdown/Constants.js +3 -5
  40. package/es/cc/multi-select/Constants.js +5 -9
  41. package/es/cc/section/Constants.js +5 -9
  42. package/es/cc/select/Constants.js +6 -11
  43. package/es/cc/switch/Constants.js +3 -5
  44. package/es/cc/switch/Properties.js +2 -2
  45. package/es/cc/table-column-filter/Constants.js +5 -9
  46. package/es/cc/table-connected/Events.js +1 -1
  47. package/es/cc/table-connected/Properties.js +6 -0
  48. package/es/cc/table-connected/SdkContract.js +14 -0
  49. package/es/cc/table-connected/constants/Events.js +3 -9
  50. package/es/cc/table-connected/constants/ExternalConstants.js +9 -0
  51. package/es/cc/table-connected/constants/index.js +2 -1
  52. package/es/cc/table-list/Constants.js +14 -27
  53. package/es/cc/table-list/model/index.js +5 -9
  54. package/es/cc/table-list/row/Constants.js +5 -9
  55. package/es/cc/table-list/row/Properties.js +8 -0
  56. package/es/cc/tags/Constants.js +3 -5
  57. package/es/cc/tags/model/index.js +4 -7
  58. package/es/cc/text/Constants.js +3 -5
  59. package/es/cc/textarea/Constants.js +5 -9
  60. package/es/cc/textarea/Properties.js +11 -0
  61. package/es/cc/textbox/Constants.js +6 -11
  62. package/es/index.js +26 -5
  63. package/es/library/analytics/Analytics.js +36 -0
  64. package/es/library/analytics/AnalyticsContract.js +13 -0
  65. package/es/library/analytics/index.js +2 -0
  66. package/es/library/behaviours/field-focus/frameworks/ui/EventHandlersFactory.js +1 -3
  67. package/es/library/behaviours/keyboard-controls/adapters/gateways/KeyboardHandler.js +0 -4
  68. package/es/library/behaviours/keyboard-controls/adapters/gateways/Repository.js +2 -10
  69. package/es/library/behaviours/keyboard-controls/adapters/gateways/Service.js +0 -14
  70. package/es/library/behaviours/keyboard-controls/adapters/presenters/Presenter.js +2 -11
  71. package/es/library/behaviours/list-selection/adapters/gateways/Repository.js +2 -8
  72. package/es/library/behaviours/list-selection/adapters/gateways/Service.js +0 -16
  73. package/es/library/behaviours/list-selection/adapters/presenters/Presenter.js +0 -8
  74. package/es/library/behaviours/local-storage/adapters/gateways/LocalStorageRepository.js +0 -6
  75. package/es/library/behaviours/local-storage/adapters/gateways/Service.js +0 -4
  76. package/es/library/behaviours/local-storage/adapters/presenters/Presenter.js +0 -8
  77. package/es/library/behaviours/local-storage/domain/entities/Storage.js +0 -4
  78. package/es/library/behaviours/sort-by/adapters/gateway/Repository.js +0 -6
  79. package/es/library/behaviours/sort-by/adapters/gateway/Service.js +0 -4
  80. package/es/library/behaviours/sort-by/adapters/presenter/Presenter.js +0 -8
  81. package/es/library/behaviours/table-column-resizer/adapters/gateways/Repository.js +0 -6
  82. package/es/library/behaviours/table-column-resizer/adapters/gateways/Service.js +0 -10
  83. package/es/library/behaviours/table-column-resizer/adapters/gateways/TableElementService.js +0 -8
  84. package/es/library/behaviours/table-column-resizer/adapters/presenters/AutoScroll.js +0 -12
  85. package/es/library/behaviours/table-column-resizer/adapters/presenters/Presenter.js +0 -8
  86. package/es/library/behaviours/table-column-resizer/domain/entities/ColumnResizer.js +0 -12
  87. package/es/library/behaviours/table-column-resizer/domain/entities/Mouse.js +0 -6
  88. package/es/library/behaviours/table-column-resizer/domain/entities/ResizeColumnCalculator.js +0 -12
  89. package/es/library/behaviours/table-column-resizer/domain/entities/ResizerAutoScrollCalculator.js +0 -6
  90. package/es/library/behaviours/table-column-resizer/domain/entities/ResizingColumn.js +0 -13
  91. package/es/library/behaviours/table-column-resizer/domain/entities/Table.js +0 -11
  92. package/es/library/behaviours/text-to-field-click/adapters/gateway/Repository.js +0 -6
  93. package/es/library/custom-component/adapters/controllers/Controller.js +9 -0
  94. package/es/library/custom-component/adapters/gateways/event-manager/EventManager.js +6 -7
  95. package/es/library/custom-component/adapters/gateways/repository/Repository.js +1 -5
  96. package/es/library/custom-component/adapters/gateways/service/Service.js +2 -14
  97. package/es/library/custom-component/adapters/presenters/Presenter.js +0 -5
  98. package/es/library/custom-component/applications/entities-factory/ComponentFactory.js +12 -9
  99. package/es/library/custom-component/applications/usecases/DispatchUseCase.js +28 -5
  100. package/es/library/custom-component/applications/usecases/InitializeUseCase.js +5 -4
  101. package/es/library/custom-component/applications/usecases/MountUseCase.js +10 -6
  102. package/es/library/custom-component/applications/usecases/SetRefUseCase.js +31 -0
  103. package/es/library/custom-component/applications/usecases/UnmountUseCase.js +6 -5
  104. package/es/library/custom-component/applications/usecases/UpdatePropertyUseCase.js +23 -18
  105. package/es/library/custom-component/applications/usecases/UpdateStateUseCase.js +4 -3
  106. package/es/library/custom-component/domain/entities/Behaviour.js +4 -11
  107. package/es/library/custom-component/domain/entities/Component.js +81 -99
  108. package/es/library/custom-component/domain/entities/ComponentProperties.js +120 -0
  109. package/es/library/custom-component/domain/entities/Event.js +0 -7
  110. package/es/library/custom-component/domain/entities/EventHandler.js +0 -6
  111. package/es/library/custom-component/domain/entities/LifeCycleAction.js +0 -10
  112. package/es/library/custom-component/domain/entities/Logger.js +93 -0
  113. package/es/library/custom-component/domain/entities/Payload.js +0 -6
  114. package/es/library/custom-component/domain/entities/Properties.js +10 -142
  115. package/es/library/custom-component/domain/entities/Property.js +29 -13
  116. package/es/library/custom-component/domain/entities/Schema.js +1 -5
  117. package/es/library/custom-component/domain/entities/State.js +0 -4
  118. package/es/library/custom-component/domain/entities/Style.js +0 -14
  119. package/es/library/custom-component/domain/entities/interfaces/IComponentProperties.js +0 -0
  120. package/es/library/custom-component/frameworks/json-schema-validator/Validator.js +129 -31
  121. package/es/library/custom-component/frameworks/ui/ComponentRegistry.js +3 -7
  122. package/es/library/custom-component/frameworks/ui/CreateCustomComponent.js +30 -34
  123. package/es/library/custom-component/frameworks/ui/CreateSlotComponent.js +4 -2
  124. package/es/library/custom-component/frameworks/ui/CustomComponentFactory.js +1 -1
  125. package/es/library/custom-component/frameworks/ui/DependencyFactory.js +1 -2
  126. package/es/library/dot/components/action-location/adapters/gateway/Repository.js +0 -8
  127. package/es/library/dot/components/action-location/adapters/presenters/Presenter.js +0 -8
  128. package/es/library/dot/components/action-location/entities/ActionLocationEntity.js +2 -6
  129. package/es/library/dot/components/action-location/frameworks/ui/ActionComponentMapping.js +2 -1
  130. package/es/library/dot/components/actions-renderer/frameworks/ui/ActionsRendererView.js +6 -4
  131. package/es/library/dot/components/form/adapters/presenter/TransformState.js +3 -1
  132. package/es/library/dot/components/form/frameworks/ui/DefaultComponentRegister.js +12 -3
  133. package/es/library/dot/components/form/frameworks/ui/Form.js +2 -0
  134. package/es/library/dot/components/form/frameworks/ui/FormFallbackView.js +23 -0
  135. package/es/library/dot/components/form/frameworks/ui/FormView.js +9 -3
  136. package/es/library/dot/components/form/frameworks/ui/__test__/Form.test.js +14 -20
  137. package/es/library/dot/components/form/frameworks/ui/css/Form.module.css +13 -16
  138. package/es/library/dot/components/form/frameworks/ui/sub-components/Footer.js +7 -4
  139. package/es/library/dot/components/form/frameworks/ui/sub-components/Header.js +7 -4
  140. package/es/library/dot/components/form/frameworks/ui/sub-components/SectionsWithRightPanelLayout.js +1 -2
  141. package/es/library/dot/components/form-fields/checkbox/frameworks/ui/CheckboxView.js +1 -3
  142. package/es/library/dot/components/form-fields/currency/frameworks/ui/Currency.js +3 -3
  143. package/es/library/dot/components/form-fields/currency/frameworks/ui/CurrencyView.js +15 -3
  144. package/es/library/dot/components/form-fields/currency/frameworks/ui/EventHandlerFactory.js +8 -0
  145. package/es/library/dot/components/form-fields/field/__test__/common.js +18 -16
  146. package/es/library/dot/components/form-fields/field/css/FieldItem.module.css +2 -2
  147. package/es/library/dot/components/form-fields/index.js +2 -1
  148. package/es/library/dot/components/form-fields/lookup/frameworks/ui/EventHandlerFactory.js +70 -0
  149. package/es/library/dot/components/form-fields/lookup/frameworks/ui/Lookup.js +13 -0
  150. package/es/library/dot/components/form-fields/lookup/frameworks/ui/LookupView.js +51 -0
  151. package/es/library/dot/components/form-fields/textarea/frameworks/ui/TextAreaView.js +4 -2
  152. package/es/library/dot/components/section/frameworks/ui/RenderField.js +5 -4
  153. package/es/library/dot/components/section/frameworks/ui/SectionView.js +12 -3
  154. package/es/library/dot/components/section/frameworks/ui/css/Section.module.css +3 -0
  155. package/es/library/dot/components/table-list/adapters/controllers/KeyboardRowClickController.js +2 -2
  156. package/es/library/dot/components/table-list/adapters/controllers/KeyboardRowSelectController.js +1 -1
  157. package/es/library/dot/components/table-list/adapters/presenters/TableTranslator.js +1 -1
  158. package/es/library/dot/components/table-list/frameworks/ui/TableListView.js +14 -7
  159. package/es/library/dot/components/table-list/frameworks/ui/css/TableList.module.css +16 -15
  160. package/es/library/dot/components/table-list/frameworks/ui/sub-components/ErrorState.js +4 -7
  161. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Header.js +9 -6
  162. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Rows.js +11 -9
  163. package/es/library/dot/components/table-list/frameworks/ui/sub-components/field/FieldComponent.js +1 -2
  164. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/HeaderData.js +7 -5
  165. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/Headers.js +4 -2
  166. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/MassAction.js +6 -4
  167. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Columns.js +4 -2
  168. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Row.js +14 -7
  169. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowActions.js +5 -4
  170. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowData.js +6 -4
  171. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowSelection.js +32 -7
  172. package/es/library/dot/legacy-to-new-arch/breadcrumb/frameworks/ui/css/Breadcrumb.module.css +4 -4
  173. package/es/library/dot/legacy-to-new-arch/breadcrumb/frameworks/ui/sub-components/BreadcrumbItem.js +1 -1
  174. package/es/library/dot/legacy-to-new-arch/button/frameworks/ui/ButtonView.js +3 -3
  175. package/es/library/dot/legacy-to-new-arch/date/frameworks/ui/DateView.js +10 -5
  176. package/es/library/dot/legacy-to-new-arch/date/frameworks/ui/css/DateView.module.css +3 -0
  177. package/es/library/dot/legacy-to-new-arch/error-state/frameworks/ui/ErrorState.js +10 -0
  178. package/es/library/dot/legacy-to-new-arch/error-state/frameworks/ui/ErrorStateView.js +68 -0
  179. package/es/library/dot/legacy-to-new-arch/label/frameworks/ui/LabelView.js +6 -8
  180. package/es/library/dot/legacy-to-new-arch/label/frameworks/ui/css/Label.module.css +5 -7
  181. package/es/library/dot/legacy-to-new-arch/multi-select/frameworks/ui/MultiSelectView.js +14 -4
  182. package/es/library/dot/legacy-to-new-arch/multi-select/frameworks/ui/css/MultiSelectView.module.css +37 -0
  183. package/es/library/dot/legacy-to-new-arch/select/frameworks/ui/SelectView.js +2 -2
  184. package/es/library/dot/legacy-to-new-arch/switch/frameworks/ui/SwitchView.js +5 -5
  185. package/es/library/dot/legacy-to-new-arch/table-column-filter/frameworks/ui/TableColumnFilterView.js +5 -3
  186. package/es/library/dot/legacy-to-new-arch/table-field-components/currency-field/frameworks/ui/CurrencyFieldView.js +10 -2
  187. package/es/library/dot/legacy-to-new-arch/table-field-components/index.js +1 -0
  188. package/es/library/dot/legacy-to-new-arch/table-field-components/switch-field/frameworks/ui/SwitchFieldView.js +0 -1
  189. package/es/library/dot/legacy-to-new-arch/text/frameworks/ui/TextView.js +1 -1
  190. package/es/library/dot/legacy-to-new-arch/text-area/frameworks/ui/TextAreaView.js +22 -4
  191. package/es/library/dot/legacy-to-new-arch/text-area/frameworks/ui/css/TextAreaView.module.css +40 -0
  192. package/es/library/dot/legacy-to-new-arch/textbox/frameworks/ui/TextBoxView.js +2 -2
  193. package/es/library/slot/frameworks/ui/ConvertSlotToComponent.js +5 -4
  194. package/es/library/translator-common/adapters/presenter/formatCurrency.js +42 -0
  195. package/es/library/translator-common/index.js +2 -1
  196. package/es/platform/app-context-behaviour/frameworks/AppContextBehaviourFactory.js +31 -0
  197. package/es/platform/client-actions/behaviour/zclient-actions/adapters/controllers/MountController.js +15 -18
  198. package/es/platform/client-actions/behaviour/zclient-actions/adapters/gateways/Repository.js +0 -6
  199. package/es/platform/client-actions/behaviour/zclient-actions/adapters/gateways/Service.js +0 -16
  200. package/es/platform/client-actions/behaviour/zclient-actions/adapters/presenters/Presenter.js +0 -8
  201. package/es/platform/client-actions/behaviour/zclient-actions/adapters/resources/ClientActionResource.js +2 -4
  202. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/GetClientActionLocationUseCase.js +1 -1
  203. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/GetClientActionUIComponentPropertiesUseCase.js +1 -1
  204. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/GetClientActionsUseCase.js +1 -1
  205. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/SetClientActionsUseCase.js +6 -1
  206. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/UpdateClientActionUIComponentPropertiesUseCase.js +1 -1
  207. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/ClientAction.js +0 -26
  208. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/ClientActionManager.js +58 -19
  209. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/ClientActions.js +8 -17
  210. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/EventMapping.js +0 -12
  211. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/EventMappings.js +0 -4
  212. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/UIComponentMapping.js +0 -14
  213. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/interfaces/ClientActionResponse.js +1 -0
  214. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/interfaces/IClientActionFetchResponse.js +0 -0
  215. package/es/platform/client-actions/behaviour/zclient-actions/frameworks/sdk/ClientActionsSDKFactory.js +2 -2
  216. package/es/platform/client-actions/cc/action-event-mediator/Properties.js +75 -3
  217. package/es/platform/client-actions/components/action-event-mediator/adapters/controllers/MountController.js +1 -1
  218. package/es/platform/client-actions/components/action-event-mediator/adapters/controllers/PropertiesChangeController.js +2 -2
  219. package/es/platform/client-actions/components/action-event-mediator/adapters/gateway/Repository.js +2 -10
  220. package/es/platform/client-actions/components/action-event-mediator/adapters/presenters/Presenter.js +0 -8
  221. package/es/platform/client-actions/components/action-event-mediator/applications/usecases/InitializeUseCase.js +15 -1
  222. package/es/platform/client-actions/components/action-event-mediator/applications/usecases/PropertiesChangeUseCase.js +3 -3
  223. package/es/platform/client-actions/components/action-event-mediator/domain/entities/ActionEventMediatorEntity.js +43 -34
  224. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/ActionEventMediator.js +3 -1
  225. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/ActionEventMediatorView.js +31 -14
  226. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/ClientActionsAdapter.js +2 -48
  227. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/EventHandlersFactory.js +3 -11
  228. package/es/platform/client-actions/components/interfaces/ActionViewModel.js +1 -0
  229. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/AdaptiveRowActions/AdaptiveRowActionsRenderer.js +12 -0
  230. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/AdaptiveRowActions/AdaptiveRowActionsRendererView.js +42 -0
  231. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/MoreActions/MoreActionsRenderer.js +10 -0
  232. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/MoreActions/MoreActionsRendererView.js +79 -0
  233. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/{RowActionsRenderer.js → RowActions/RowActionsRenderer.js} +3 -3
  234. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActions/RowActionsRenderer.module.css +19 -0
  235. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActions/RowActionsRendererView.js +37 -0
  236. package/es/platform/client-actions/translators/client-actions-translator/index.js +14 -2
  237. package/es/platform/client-actions/translators/condition-resolver/index.js +6 -1
  238. package/es/platform/client-scripts/bc/zclient-scripts-execution/Constants.js +11 -0
  239. package/es/platform/client-scripts/bc/zclient-scripts-execution/EventHandlers.js +1 -0
  240. package/es/platform/client-scripts/bc/zclient-scripts-fetch/Constants.js +11 -0
  241. package/es/platform/client-scripts/bc/zclient-scripts-fetch/EventHandlers.js +1 -0
  242. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/controllers/AbstractController.js +8 -0
  243. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/controllers/ClientScriptExecutionController.js +10 -0
  244. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/controllers/SetClientScriptsMappingController.js +10 -0
  245. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/gateways/Repository.js +24 -0
  246. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/gateways/Service.js +9 -0
  247. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/presenters/Presenter.js +21 -0
  248. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/interfaces/InputDependencies.js +1 -0
  249. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/interfaces/gateways/IRepository.js +1 -0
  250. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/interfaces/gateways/IService.js +0 -0
  251. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/interfaces/output/IPresenter.js +1 -0
  252. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/usecases/AbstractUseCase.js +15 -0
  253. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/usecases/ExecuteClientScriptsUseCase.js +23 -0
  254. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/usecases/SetClientScriptsMappingUseCase.js +16 -0
  255. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/domain/entities/ClientScriptExecutor.js +142 -0
  256. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/domain/entities/State.js +1 -0
  257. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/domain/entities/types/ClientScriptExectionTypeDefintions.js +7 -0
  258. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/frameworks/ClientScriptsExecutionBehaviourFactory.js +12 -0
  259. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/frameworks/ClientScriptsExecutionHandlersFactory.js +30 -0
  260. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/frameworks/ClientScriptsUtils.js +25 -0
  261. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/AbstractController.js +8 -0
  262. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsController.js +27 -0
  263. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsFailureController.js +28 -0
  264. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsNoContentController.js +23 -0
  265. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsStopController.js +21 -0
  266. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsSuccessController.js +28 -0
  267. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/MountController.js +22 -0
  268. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/SetClientScriptsController.js +24 -0
  269. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/gateways/Repository.js +22 -0
  270. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/gateways/Service.js +19 -0
  271. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/presenters/Presenter.js +16 -0
  272. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/entities-factory/ClientScriptsFactory.js +11 -0
  273. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/entities-factory/ClientScriptsManagerFactory.js +10 -0
  274. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/interfaces/InputDependencies.js +1 -0
  275. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/interfaces/gateways/IRepository.js +1 -0
  276. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/interfaces/gateways/IService.js +0 -0
  277. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/interfaces/output/IPresenter.js +1 -0
  278. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/AbstractUseCase.js +17 -0
  279. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptUseCase.js +33 -0
  280. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptsFailureUseCase.js +22 -0
  281. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptsNoContentUseCase.js +27 -0
  282. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptsStopUseCase.js +25 -0
  283. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptsSuccessUseCase.js +22 -0
  284. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/InitializeUseCase.js +17 -0
  285. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/SetClientScriptsUseCase.js +21 -0
  286. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/ClientScript.js +24 -0
  287. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/ClientScripts.js +41 -0
  288. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/GetClientScriptsStrategy.js +44 -0
  289. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/State.js +1 -0
  290. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/ClientScriptEventMappingState.js +1 -0
  291. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/ClientScriptModel.js +1 -0
  292. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/ClientScriptsModel.js +1 -0
  293. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/IClientScript.js +0 -0
  294. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/IClientScripts.js +0 -0
  295. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/IEvent.js +1 -0
  296. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/frameworks/ClientScriptsBehaviourFactory.js +12 -0
  297. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/frameworks/ClientScriptsHandlersFactory.js +47 -0
  298. package/es/platform/client-scripts/cc/zclient-scripts-execution/clientScriptsSchema.js +15 -0
  299. package/es/platform/column-chooser/adapters/gateways/Repository.js +0 -6
  300. package/es/platform/column-chooser/adapters/gateways/Service.js +0 -14
  301. package/es/platform/column-chooser/adapters/presenters/Presenter.js +0 -8
  302. package/es/platform/column-chooser/domain/entities/SelectEntityImp.js +0 -5
  303. package/es/platform/components/app/adapters/resources/AppResource.js +25 -0
  304. package/es/platform/components/form-connected/adapters/resources/SmartFormResources.js +20 -4
  305. package/es/platform/components/form-connected/frameworks/EventHandlersFactory.js +5 -4
  306. package/es/platform/components/form-connected/frameworks/FormConnectedFactory.js +8 -2
  307. package/es/platform/components/form-connected/frameworks/FormConnectedView.js +4 -2
  308. package/es/platform/components/form-connected/frameworks/FormSdkFactory.js +6 -4
  309. package/es/platform/components/table-connected/adapters/controllers/ColumnChooserUpdateController.js +7 -1
  310. package/es/platform/components/table-connected/adapters/controllers/ResizeFinishController.js +3 -5
  311. package/es/platform/components/table-connected/adapters/resources/SmartTableResource.js +52 -4
  312. package/es/platform/components/table-connected/frameworks/EventHandlersFactory.js +222 -8
  313. package/es/platform/components/table-connected/frameworks/ListSdkFactory.js +6 -4
  314. package/es/platform/components/table-connected/frameworks/TableConnectedFactory.js +7 -3
  315. package/es/platform/data-source/http-template/fetchLookupFields.js +24 -0
  316. package/es/platform/data-source/http-template/getClientScripts.js +23 -0
  317. package/es/platform/data-source/http-template/{fetchDependencyMappings.js → getDependencyMappings.js} +3 -3
  318. package/es/platform/data-source/http-template/{fetchLayoutRules.js → getLayoutRules.js} +3 -3
  319. package/es/platform/data-source/http-template/{fetchMyForm.js → getMyForm.js} +3 -3
  320. package/es/platform/data-source/http-template/{fetchMyFormLayout.js → getMyLayout.js} +3 -3
  321. package/es/platform/data-source/http-template/{fetchValidationRules.js → getValidationRules.js} +3 -3
  322. package/es/platform/data-source/http-template/updateSelectedFields.js +1 -1
  323. package/es/platform/data-source/index.js +15 -10
  324. package/es/platform/data-source/utils/validation-rules/TransFormValidationRules.js +7 -1
  325. package/es/platform/sdk/adapters/gateways/Repository.js +5 -9
  326. package/es/platform/sdk/adapters/gateways/Service.js +2 -12
  327. package/es/platform/sdk/adapters/presenters/Presenter.js +0 -6
  328. package/es/platform/sdk/application/interfaces/gateways/AbstractResource.js +0 -6
  329. package/es/platform/sdk/application/usecases/GetResourcesUseCase.js +12 -0
  330. package/es/platform/sdk/domain/entities/ResourceManager.js +24 -20
  331. package/es/platform/sdk/frameworks/Sdk.js +23 -2
  332. package/es/platform/sdk/frameworks/SdkRegistry.js +11 -8
  333. package/es/platform/sdk-behaviour/adapters/controllers/AbstractController.js +0 -4
  334. package/es/platform/sdk-behaviour/adapters/gateways/Repository.js +0 -8
  335. package/es/platform/sdk-behaviour/adapters/gateways/ResourceManagerGateWay.js +0 -6
  336. package/es/platform/sdk-behaviour/adapters/gateways/Service.js +0 -8
  337. package/es/platform/zdata-source/adapters/controllers/FailureController.js +26 -29
  338. package/es/platform/zdata-source/adapters/controllers/NoContentController.js +21 -24
  339. package/es/platform/zdata-source/adapters/controllers/RegisterController.js +17 -20
  340. package/es/platform/zdata-source/adapters/controllers/SuccessController.js +26 -29
  341. package/es/platform/zdata-source/adapters/gateways/Repository.js +0 -6
  342. package/es/platform/zdata-source/adapters/gateways/Service.js +0 -12
  343. package/es/platform/zdata-source/adapters/presenters/Presenter.js +1 -9
  344. package/es/platform/zdata-source/domain/entities/APITemplate.js +3 -17
  345. package/es/platform/zfield/adapters/gateways/Repository.js +0 -6
  346. package/es/platform/zfield/adapters/gateways/Service.js +0 -14
  347. package/es/platform/zfield/adapters/presenters/Presenter.js +0 -8
  348. package/es/platform/zfield/applications/entities-factory/FieldBuilder.js +0 -30
  349. package/es/platform/zfield/applications/entities-factory/FieldsManagerBuilder.js +0 -12
  350. package/es/platform/zfield/domain/entities/fields-manager/FieldsManager.js +6 -1
  351. package/es/platform/zform/adapters/controllers/ApiFailureController.js +31 -0
  352. package/es/platform/zform/adapters/controllers/CreateRecordFailedController.js +21 -0
  353. package/es/platform/zform/adapters/controllers/CreateRecordSuccessController.js +21 -0
  354. package/es/platform/zform/adapters/controllers/IntializeController.js +4 -2
  355. package/es/platform/zform/adapters/controllers/LookupFieldController.js +23 -0
  356. package/es/platform/zform/adapters/controllers/MyLayoutSuccessController.js +4 -2
  357. package/es/platform/zform/adapters/controllers/SubmitValidationCompletedController.js +5 -1
  358. package/es/platform/zform/adapters/gateway/FormRepository.js +6 -8
  359. package/es/platform/zform/adapters/gateway/Service.js +8 -36
  360. package/es/platform/zform/adapters/presenter/FormPresenter.js +0 -8
  361. package/es/platform/zform/adapters/presenter/FormTranslator.js +33 -22
  362. package/es/platform/zform/adapters/presenter/translators/SectionTranslator.js +53 -37
  363. package/es/platform/zform/adapters/presenter/translators/fields/CurrencyFieldTranslator.js +9 -1
  364. package/es/platform/zform/adapters/presenter/translators/fields/LookUpFieldTranslator.js +2 -1
  365. package/es/platform/zform/adapters/presenter/utils/DefaultClientActions.js +83 -73
  366. package/es/platform/zform/adapters/presenter/utils/sanitizeHtmlString.js +11 -0
  367. package/es/platform/zform/applications/interfaces/input/ApiFailureInputModel.js +1 -0
  368. package/es/platform/zform/applications/interfaces/input/CreateRecordFailedUseCaseInputModel.js +1 -0
  369. package/es/platform/zform/applications/interfaces/input/CreateRecordSuccessUseCaseInputModel.js +1 -0
  370. package/es/platform/zform/applications/interfaces/input/GetIsFieldValueChangedUseCaseInput.js +1 -0
  371. package/es/platform/zform/applications/interfaces/input/LookUpFieldSuccessUseCaseInputModel.js +1 -0
  372. package/es/platform/zform/applications/usecases/ApiFailureUseCase.js +30 -0
  373. package/es/platform/zform/applications/usecases/CreateRecordFailedUseCase.js +25 -0
  374. package/es/platform/zform/applications/usecases/CreateRecordSuccessUseCase.js +25 -0
  375. package/es/platform/zform/applications/usecases/FormSubmitUseCase.js +4 -1
  376. package/es/platform/zform/applications/usecases/GetFieldValueUseCase.js +1 -1
  377. package/es/platform/zform/applications/usecases/GetIsFieldValueChanged.js +35 -0
  378. package/es/platform/zform/applications/usecases/InitializeUseCase.js +54 -26
  379. package/es/platform/zform/applications/usecases/LookupFieldSuccessUseCase.js +33 -0
  380. package/es/platform/zform/applications/usecases/MyFormSuccessUseCase.js +41 -7
  381. package/es/platform/zform/applications/usecases/MyLayoutSuccessUseCase.js +61 -37
  382. package/es/platform/zform/applications/usecases/SubmitValidationCompletedUseCase.js +14 -8
  383. package/es/platform/zform/domain/ZDependencyMapping.js +0 -17
  384. package/es/platform/zform/domain/ZField.js +16 -59
  385. package/es/platform/zform/domain/ZForm.js +74 -42
  386. package/es/platform/zform/domain/ZLayout.js +0 -14
  387. package/es/platform/zform/domain/ZLayoutRule.js +0 -31
  388. package/es/platform/zform/domain/ZSection.js +0 -19
  389. package/es/platform/zform/domain/ZValidationRule.js +0 -28
  390. package/es/platform/zform/frameworks/ui/EventHandlerFactory.js +26 -28
  391. package/es/platform/zform/frameworks/ui/ZFormBehaviourFactory.js +1 -0
  392. package/es/platform/zform/frameworks/validation-rules/Validator.js +4 -8
  393. package/es/platform/zhttp/adapters/controllers/FetchController.js +5 -1
  394. package/es/platform/zlist/adapters/gateways/Repository.js +4 -8
  395. package/es/platform/zlist/adapters/gateways/Service.js +0 -33
  396. package/es/platform/zlist/adapters/presenters/Presenters.js +0 -8
  397. package/es/platform/zlist/adapters/presenters/SelectionTranslator.js +7 -6
  398. package/es/platform/zlist/adapters/presenters/TableTranslator.js +19 -12
  399. package/es/platform/zlist/adapters/presenters/translators/ColumnTranslator.js +33 -26
  400. package/es/platform/zlist/adapters/presenters/translators/Header.js +5 -6
  401. package/es/platform/zlist/adapters/presenters/translators/HeadersTranslator.js +4 -2
  402. package/es/platform/zlist/adapters/presenters/translators/Row.js +6 -3
  403. package/es/platform/zlist/adapters/presenters/translators/RowsTranslator.js +8 -2
  404. package/es/platform/zlist/adapters/presenters/translators/actions/ActionsTranslator.js +4 -15
  405. package/es/platform/zlist/adapters/presenters/translators/fields/CurrencyFieldTranslator.js +7 -2
  406. package/es/platform/zlist/adapters/presenters/translators/fields/FormulaFieldTranslator.js +7 -2
  407. package/es/platform/zlist/adapters/presenters/utils/DefaultClientActions.js +1 -1
  408. package/es/platform/zlist/adapters/presenters/utils/calculateFieldWidths.js +1 -3
  409. package/es/platform/zlist/applications/usecases/DeleteMultipleRecordUseCase.js +1 -3
  410. package/es/platform/zlist/applications/usecases/DeleteSingleRecordUseCase.js +1 -3
  411. package/es/platform/zlist/applications/usecases/GetContextUseCase.js +1 -1
  412. package/es/platform/zlist/applications/usecases/RecordSuccessCallbackUsecase.js +1 -3
  413. package/es/platform/zlist/applications/usecases/RecordUpdateUseCase.js +1 -3
  414. package/es/platform/zlist/applications/usecases/UpdateMultipleRecordUseCase.js +1 -3
  415. package/es/platform/zlist/domain/entities/List.js +20 -5
  416. package/es/platform/zrecord/adapters/controllers/AppendRecordsController.js +20 -23
  417. package/es/platform/zrecord/adapters/controllers/DeleteMultipleRecordLocalController.js +20 -23
  418. package/es/platform/zrecord/adapters/controllers/FailureController.js +26 -29
  419. package/es/platform/zrecord/adapters/controllers/FetchStateStopController.js +17 -20
  420. package/es/platform/zrecord/adapters/controllers/MountController.js +15 -18
  421. package/es/platform/zrecord/adapters/controllers/NoContentController.js +21 -24
  422. package/es/platform/zrecord/adapters/controllers/RefetchController.js +26 -29
  423. package/es/platform/zrecord/adapters/controllers/SetRecordsController.js +24 -27
  424. package/es/platform/zrecord/adapters/controllers/SuccessController.js +26 -29
  425. package/es/platform/zrecord/adapters/gateways/Repository.js +0 -6
  426. package/es/platform/zrecord/adapters/gateways/Service.js +0 -30
  427. package/es/platform/zrecord/adapters/presenters/Presenter.js +0 -8
  428. package/es/platform/zrecord/applications/usecases/GetMultipleRecordUseCase.js +1 -1
  429. package/es/platform/zrecord/applications/usecases/GetSingleRecordUseCase.js +1 -1
  430. package/es/platform/zrecord/domain/entities/CustomFieldValues.js +0 -4
  431. package/es/platform/zrecord/domain/entities/Record.js +0 -22
  432. package/es/platform/zrecord/domain/entities/Records.js +0 -11
  433. package/package.json +28 -29
  434. package/es/cc/form-connected/Constants.js +0 -21
  435. package/es/library/dot/legacy-to-new-arch/label/frameworks/ui/sub-components/ui/LabelAction.js +0 -9
  436. package/es/library/dot/legacy-to-new-arch/label/frameworks/ui/sub-components/ui/LabelActionView.js +0 -38
  437. package/es/library/dot/legacy-to-new-arch/label/frameworks/ui/sub-components/ui/css/LabelAction.module.css +0 -4
  438. package/es/platform/client-actions/cc/dynamic-action-component/Properties.js +0 -51
  439. package/es/platform/client-actions/components/dynamic-component/frameworks/ui/DynamicActionComponent.js +0 -9
  440. package/es/platform/client-actions/components/dynamic-component/frameworks/ui/DynamicActionComponentView.js +0 -36
  441. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActionsRenderer.module.css +0 -15
  442. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActionsRendererView.js +0 -33
  443. package/es/platform/zlist/adapters/presenters/translators/ColumnAlignmentTranslator.js +0 -11
  444. /package/es/{platform/client-actions/components/dynamic-component/domain/entities/interfaces/IState.js → library/custom-component/applications/interfaces/input/SetRefInputModel.js} +0 -0
@@ -0,0 +1,142 @@
1
+ import { CLIENT_SCRIPT_ARGUMENT, CLIENT_SCRIPT_ERROR_MESSAGE, CLIENT_SCRIPT_EXECUTION_TIMED_OUT_ERROR_MESSAGE, CLIENT_SCRIPT_INVALID_SCRIPT_ERROR_MESSAGE, CLIENT_SCRIPT_NO_MAPPING_FOUND_ERROR_MESSAGE, CLIENT_SCRIPT_RUNTIME_ERROR_MESSAGE, CLIENT_SCRIPT_TIMOUT_LIMIT } from "../../../../bc/zclient-scripts-execution/Constants";
2
+ import { platformSDK } from "../../../../../sdk/frameworks/Sdk";
3
+ import { ClientScriptExecutionStatus } from "./types/ClientScriptExectionTypeDefintions";
4
+ export default class ClientScriptExecutor {
5
+ constructor(clientScriptsMapping, context) {
6
+ this.clientScriptsMapping = clientScriptsMapping;
7
+ this.context = context;
8
+ }
9
+
10
+ findClientScriptMapping(targetEvent) {
11
+ return this.clientScriptsMapping.find(clientScript => clientScript.targetEvent === targetEvent);
12
+ }
13
+
14
+ findClientActionPayload(targetEvent) {
15
+ const {
16
+ clientScriptsEventContext
17
+ } = this.context.action.payload;
18
+ const targetActionEventContext = clientScriptsEventContext.find(eventContext => eventContext.targetEvent === targetEvent);
19
+ return targetActionEventContext ? targetActionEventContext.resolvedPayload : {};
20
+ }
21
+
22
+ getClientScriptArguments(targetEvent) {
23
+ const payload = this.findClientActionPayload(targetEvent);
24
+ const action = {
25
+ metaData: { ...this.context.action.metaData,
26
+ targetEvent
27
+ },
28
+ payload
29
+ };
30
+ return { ...this.context,
31
+ platformSDK: platformSDK,
32
+ action
33
+ };
34
+ }
35
+
36
+ handleClientScriptExecutionResult(result) {
37
+ const {
38
+ status
39
+ } = result;
40
+
41
+ switch (status) {
42
+ case ClientScriptExecutionStatus.FAILURE:
43
+ const {
44
+ error: {
45
+ message
46
+ }
47
+ } = result;
48
+ console.error(CLIENT_SCRIPT_ERROR_MESSAGE, message);
49
+ break;
50
+
51
+ case ClientScriptExecutionStatus.TIMEDOUT:
52
+ console.error(CLIENT_SCRIPT_EXECUTION_TIMED_OUT_ERROR_MESSAGE);
53
+ break;
54
+ }
55
+ }
56
+
57
+ getClientScriptExecutionPromise(clientScript, clientScriptArguments) {
58
+ return new Promise((resolve, reject) => {
59
+ try {
60
+ clientScript(clientScriptArguments);
61
+ resolve({
62
+ status: ClientScriptExecutionStatus.SUCCESS
63
+ });
64
+ } catch (e) {
65
+ resolve({
66
+ status: ClientScriptExecutionStatus.FAILURE,
67
+ error: e
68
+ });
69
+ }
70
+ });
71
+ }
72
+
73
+ getClientScriptTimeoutPromise(timeout) {
74
+ return new Promise((resolve, reject) => {
75
+ setTimeout(() => {
76
+ resolve({
77
+ status: ClientScriptExecutionStatus.TIMEDOUT
78
+ });
79
+ }, timeout);
80
+ });
81
+ }
82
+
83
+ async executeClientScript(clientScript, clientScriptArguments, timeout) {
84
+ const clientScriptExecutionPromise = this.getClientScriptExecutionPromise(clientScript, clientScriptArguments);
85
+ const clientScriptTimeoutPromise = this.getClientScriptTimeoutPromise(timeout);
86
+ return Promise.race([clientScriptTimeoutPromise, clientScriptExecutionPromise]);
87
+ }
88
+
89
+ constructClientScriptFunction(clientScriptFnBody) {
90
+ try {
91
+ const clientScriptFn = new Function(CLIENT_SCRIPT_ARGUMENT, `${clientScriptFnBody}`);
92
+ return clientScriptFn;
93
+ } catch (e) {
94
+ console.error(CLIENT_SCRIPT_INVALID_SCRIPT_ERROR_MESSAGE, e.message);
95
+ }
96
+ }
97
+
98
+ handleClientScriptExecution(targetEvent, clientScript) {
99
+ if (!clientScript) return;
100
+ const dynamicFunction = this.constructClientScriptFunction(clientScript);
101
+ const clientScriptArguments = this.getClientScriptArguments(targetEvent);
102
+ this.executeClientScript(dynamicFunction, clientScriptArguments, CLIENT_SCRIPT_TIMOUT_LIMIT).then(result => {
103
+ this.handleClientScriptExecutionResult(result);
104
+ }).catch(error => {
105
+ console.error(CLIENT_SCRIPT_RUNTIME_ERROR_MESSAGE, error);
106
+ });
107
+ }
108
+
109
+ executeTargetAction() {
110
+ const {
111
+ clientScriptsEventContext
112
+ } = this.context.action.payload;
113
+ clientScriptsEventContext.forEach(clientScriptEventContext => {
114
+ const {
115
+ targetEvent
116
+ } = clientScriptEventContext;
117
+ const clientScriptMapping = this.findClientScriptMapping(targetEvent);
118
+
119
+ if (clientScriptMapping) {
120
+ const {
121
+ clientScript
122
+ } = clientScriptMapping;
123
+ this.handleClientScriptExecution(targetEvent, clientScript);
124
+ } else {
125
+ console.warn(CLIENT_SCRIPT_NO_MAPPING_FOUND_ERROR_MESSAGE, `'${targetEvent}'`);
126
+ const {
127
+ dispatch
128
+ } = this.context;
129
+ const {
130
+ payload,
131
+ metaData
132
+ } = this.getClientScriptArguments(targetEvent)?.action;
133
+ dispatch({
134
+ type: targetEvent,
135
+ payload,
136
+ metaData
137
+ });
138
+ }
139
+ });
140
+ }
141
+
142
+ }
@@ -0,0 +1,7 @@
1
+ export let ClientScriptExecutionStatus = /*#__PURE__*/function (ClientScriptExecutionStatus) {
2
+ ClientScriptExecutionStatus["SUCCESS"] = "CLIENTSCRIPT#EXECUTION_SUCCESS";
3
+ ClientScriptExecutionStatus["FAILURE"] = "CLIENTSCRIPT#EXECUTION_FAILURE";
4
+ ClientScriptExecutionStatus["TIMEDOUT"] = "CLIENTSCRIPT#EXECUTION_TIMEDOUT";
5
+ return ClientScriptExecutionStatus;
6
+ }({});
7
+ ;
@@ -0,0 +1,12 @@
1
+ import ClientScriptsExecutionHandlersFactory from "./ClientScriptsExecutionHandlersFactory";
2
+ export default class ClientScriptsExecutionBehaviourFactory {
3
+ static create() {
4
+ return {
5
+ name: 'zclientScriptsEventMapping',
6
+ eventHandlers: ClientScriptsExecutionHandlersFactory.create(),
7
+ properties: {},
8
+ setInitialState: () => ({})
9
+ };
10
+ }
11
+
12
+ }
@@ -0,0 +1,30 @@
1
+ import { EXECUTE_CLIENT_SCRIPTS, SET_CLIENT_SCRIPTS } from "../../../bc/zclient-scripts-execution/Constants";
2
+ import Service from "../adapters/gateways/Service";
3
+ import Presenter from "../adapters/presenters/Presenter";
4
+ import Repository from "../adapters/gateways/Repository";
5
+ import ClientScriptExecutionController from "../adapters/controllers/ClientScriptExecutionController";
6
+ import SetClientScriptsMappingController from "../adapters/controllers/SetClientScriptsMappingController";
7
+ export default class ClientScriptsExecutionHandlersFactory {
8
+ static getClientScriptsControllerHandles(service) {
9
+ return {
10
+ executeClientScript: new ClientScriptExecutionController(service).handle,
11
+ setClientScriptsMapping: new SetClientScriptsMappingController(service).handle
12
+ };
13
+ }
14
+
15
+ static create() {
16
+ const presenter = new Presenter();
17
+ const repository = new Repository();
18
+ const dependencies = {
19
+ presenter,
20
+ repository
21
+ };
22
+ const service = new Service(dependencies);
23
+ const clientScriptControllerHandle = ClientScriptsExecutionHandlersFactory.getClientScriptsControllerHandles(service);
24
+ return {
25
+ [EXECUTE_CLIENT_SCRIPTS]: clientScriptControllerHandle.executeClientScript,
26
+ [SET_CLIENT_SCRIPTS]: clientScriptControllerHandle.setClientScriptsMapping
27
+ };
28
+ }
29
+
30
+ }
@@ -0,0 +1,25 @@
1
+ export function findMappedClientScripts(action, clientScripts) {
2
+ if (!clientScripts || clientScripts.length === 0) return [];
3
+ const {
4
+ eventMappings
5
+ } = action;
6
+ const targetEvents = eventMappings.map(event => {
7
+ const {
8
+ targetEvent
9
+ } = event;
10
+ return targetEvent;
11
+ });
12
+ return clientScripts.filter(clientScript => clientScript.targetEvent && targetEvents.includes(clientScript.targetEvent));
13
+ }
14
+ export function getClientScriptMockInterceptorProperties() {
15
+ return {
16
+ name: 'uiActions',
17
+ api: `/supportapi/zd/{{orgName}}/api/v1/clientScripts`,
18
+ parameters: `{
19
+ "modules": "{{moduleName}}"
20
+ }`,
21
+ type: 'GET',
22
+ transformer: data => data,
23
+ properties: {}
24
+ };
25
+ }
@@ -0,0 +1,8 @@
1
+ export default class AbstractController {
2
+ constructor(service) {
3
+ this.service = service;
4
+ this.service = service;
5
+ this.handle = this.handle.bind(this);
6
+ }
7
+
8
+ }
@@ -0,0 +1,27 @@
1
+ import AbstractController from "./AbstractController";
2
+ export default class FetchClientScriptsController extends AbstractController {
3
+ handle(event) {
4
+ const {
5
+ state,
6
+ updateState,
7
+ action,
8
+ dispatch
9
+ } = event;
10
+ const {
11
+ actionName,
12
+ props,
13
+ apiName
14
+ } = action.payload;
15
+ const {
16
+ fetchClientScriptsUseCase
17
+ } = this.service;
18
+ fetchClientScriptsUseCase.updateDependency(state, updateState);
19
+ fetchClientScriptsUseCase.execute({
20
+ dispatch,
21
+ apiName,
22
+ actionName,
23
+ props
24
+ });
25
+ }
26
+
27
+ }
@@ -0,0 +1,28 @@
1
+ import AbstractController from "./AbstractController";
2
+ export default class FetchClientScriptsFailureController extends AbstractController {
3
+ handle(event) {
4
+ const {
5
+ state,
6
+ updateState,
7
+ action,
8
+ dispatch
9
+ } = event;
10
+ const {
11
+ metaData,
12
+ payload
13
+ } = action;
14
+ const {
15
+ error
16
+ } = payload;
17
+ const {
18
+ fetchClientScriptsFailureUseCase
19
+ } = this.service;
20
+ fetchClientScriptsFailureUseCase.updateDependency(state, updateState);
21
+ fetchClientScriptsFailureUseCase.execute({
22
+ dispatch,
23
+ error,
24
+ metaData
25
+ });
26
+ }
27
+
28
+ }
@@ -0,0 +1,23 @@
1
+ import AbstractController from "./AbstractController";
2
+ export default class FetchClientScriptsNoContentController extends AbstractController {
3
+ handle(event) {
4
+ const {
5
+ state,
6
+ updateState,
7
+ action,
8
+ dispatch
9
+ } = event;
10
+ const {
11
+ metaData
12
+ } = action;
13
+ const {
14
+ fetchClientScriptsNoContentUseCase
15
+ } = this.service;
16
+ fetchClientScriptsNoContentUseCase.updateDependency(state, updateState);
17
+ fetchClientScriptsNoContentUseCase.execute({
18
+ dispatch,
19
+ metaData
20
+ });
21
+ }
22
+
23
+ }
@@ -0,0 +1,21 @@
1
+ import AbstractController from "./AbstractController";
2
+ export default class FetchClientScriptsStopController extends AbstractController {
3
+ handle(event) {
4
+ const {
5
+ state,
6
+ updateState,
7
+ action
8
+ } = event;
9
+ const {
10
+ metaData
11
+ } = action;
12
+ const {
13
+ fetchClientScriptsStopUseCase
14
+ } = this.service;
15
+ fetchClientScriptsStopUseCase.updateDependency(state, updateState);
16
+ fetchClientScriptsStopUseCase.execute({
17
+ metaData
18
+ });
19
+ }
20
+
21
+ }
@@ -0,0 +1,28 @@
1
+ import AbstractController from "./AbstractController";
2
+ export default class FetchClientScriptsSuccessController extends AbstractController {
3
+ handle(event) {
4
+ const {
5
+ state,
6
+ updateState,
7
+ action,
8
+ dispatch
9
+ } = event;
10
+ const {
11
+ metaData,
12
+ payload
13
+ } = action;
14
+ const {
15
+ response
16
+ } = payload;
17
+ const {
18
+ fetchClientScriptsSuccessUseCase
19
+ } = this.service;
20
+ fetchClientScriptsSuccessUseCase.updateDependency(state, updateState);
21
+ fetchClientScriptsSuccessUseCase.execute({
22
+ dispatch,
23
+ response,
24
+ metaData
25
+ });
26
+ }
27
+
28
+ }
@@ -0,0 +1,22 @@
1
+ export default class MountController {
2
+ constructor(recordApis, service) {
3
+ this.recordApis = recordApis;
4
+ this.service = service;
5
+ }
6
+
7
+ handle = event => {
8
+ const {
9
+ state,
10
+ updateState,
11
+ dispatch
12
+ } = event;
13
+ const {
14
+ initializeUseCase
15
+ } = this.service;
16
+ initializeUseCase.updateDependency(state, updateState);
17
+ initializeUseCase.execute({
18
+ dispatch,
19
+ apiTemplates: this.recordApis
20
+ });
21
+ };
22
+ }
@@ -0,0 +1,24 @@
1
+ import AbstractController from "./AbstractController";
2
+ export default class SetClientScriptsController extends AbstractController {
3
+ handle(event) {
4
+ const {
5
+ state,
6
+ updateState,
7
+ action
8
+ } = event;
9
+ const {
10
+ payload
11
+ } = action;
12
+ const {
13
+ clientScripts
14
+ } = payload;
15
+ const {
16
+ setClientScriptsUseCase
17
+ } = this.service;
18
+ setClientScriptsUseCase.updateDependency(state, updateState);
19
+ setClientScriptsUseCase.execute({
20
+ clientScripts
21
+ });
22
+ }
23
+
24
+ }
@@ -0,0 +1,22 @@
1
+ import ClientScriptManagerFactory from "../../applications/entities-factory/ClientScriptsManagerFactory";
2
+ export default class Repository {
3
+ init(state) {
4
+ this.state = state;
5
+ }
6
+
7
+ getClientScriptsManagerEntity() {
8
+ const {
9
+ zclientScriptsEventMapping
10
+ } = this.state.behaviours;
11
+ const {
12
+ clientScripts = [],
13
+ isFetching
14
+ } = zclientScriptsEventMapping;
15
+ const clientScriptManager = ClientScriptManagerFactory.create({
16
+ data: clientScripts,
17
+ isFetching
18
+ });
19
+ return clientScriptManager;
20
+ }
21
+
22
+ }
@@ -0,0 +1,19 @@
1
+ import InitializeUseCase from "../../applications/usecases/InitializeUseCase";
2
+ import FetchClientScriptUseCase from "../../applications/usecases/FetchClientScriptUseCase";
3
+ import FetchClientScriptsSuccessUseCase from "../../applications/usecases/FetchClientScriptsSuccessUseCase";
4
+ import FetchClientScriptsStopUseCase from "../../applications/usecases/FetchClientScriptsStopUseCase";
5
+ import FetchClientScriptsFailureUseCase from "../../applications/usecases/FetchClientScriptsFailureUseCase";
6
+ import FetchClientScriptsNoContentUseCase from "../../applications/usecases/FetchClientScriptsNoContentUseCase";
7
+ import SetClientScriptsUseCase from "../../applications/usecases/SetClientScriptsUseCase";
8
+ export default class Service {
9
+ constructor(dependencies) {
10
+ this.initializeUseCase = new InitializeUseCase(dependencies);
11
+ this.fetchClientScriptsUseCase = new FetchClientScriptUseCase(dependencies);
12
+ this.fetchClientScriptsSuccessUseCase = new FetchClientScriptsSuccessUseCase(dependencies);
13
+ this.fetchClientScriptsStopUseCase = new FetchClientScriptsStopUseCase(dependencies);
14
+ this.fetchClientScriptsFailureUseCase = new FetchClientScriptsFailureUseCase(dependencies);
15
+ this.fetchClientScriptsNoContentUseCase = new FetchClientScriptsNoContentUseCase(dependencies);
16
+ this.setClientScriptsUseCase = new SetClientScriptsUseCase(dependencies);
17
+ }
18
+
19
+ }
@@ -0,0 +1,16 @@
1
+ export default class Presenter {
2
+ updateDependencies(state, updateState) {
3
+ this.updateState = updateState;
4
+ this.state = state;
5
+ }
6
+
7
+ updateClientScript(zclientScriptsEventMapping) {
8
+ this.state = { ...this.state,
9
+ behaviours: { ...this.state.behaviours,
10
+ zclientScriptsEventMapping
11
+ }
12
+ };
13
+ this.updateState(this.state);
14
+ }
15
+
16
+ }
@@ -0,0 +1,11 @@
1
+ import ClientScript from "../../domain/entities/ClientScript";
2
+ export default class ClientScriptsFactory {
3
+ static deSerializeClientScript(clientScriptModel) {
4
+ return new ClientScript(clientScriptModel);
5
+ }
6
+
7
+ static deSerializeClientScripts(clientScriptModels) {
8
+ return clientScriptModels.map(clientScriptModel => this.deSerializeClientScript(clientScriptModel));
9
+ }
10
+
11
+ }
@@ -0,0 +1,10 @@
1
+ import ClientScripts from "../../domain/entities/ClientScripts";
2
+ import ClientActionManager from "../../../../../client-actions/behaviour/zclient-actions/domain/entities/ClientActionManager";
3
+ export default class ClientScriptsManagerFactory {
4
+ static create(clientScriptsModel) {
5
+ const clientScripts = new ClientScripts(clientScriptsModel);
6
+ const clientScriptManager = new ClientActionManager(clientScripts);
7
+ return clientScriptManager;
8
+ }
9
+
10
+ }
@@ -0,0 +1,17 @@
1
+ class AbstractUseCase {
2
+ constructor(dependencies) {
3
+ this.dependencies = dependencies;
4
+ }
5
+
6
+ updateDependency(state, updateState) {
7
+ const {
8
+ repository,
9
+ presenter
10
+ } = this.dependencies;
11
+ repository.init(state);
12
+ presenter.updateDependencies(state, updateState);
13
+ }
14
+
15
+ }
16
+
17
+ export default AbstractUseCase;
@@ -0,0 +1,33 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class FetchClientScriptUseCase extends AbstractUseCase {
4
+ execute(input) {
5
+ const {
6
+ repository,
7
+ presenter
8
+ } = this.dependencies;
9
+ const {
10
+ props,
11
+ dispatch,
12
+ apiName,
13
+ actionName
14
+ } = input;
15
+ const recordManager = repository.getClientScriptsManagerEntity();
16
+
17
+ if (!recordManager.isClientScriptApiName(apiName)) {
18
+ return;
19
+ }
20
+
21
+ const metaData = recordManager.createFetchClientScriptMeta(actionName, apiName, props);
22
+
23
+ if (recordManager.isGetClientScriptsApi(actionName)) {
24
+ recordManager.fetchingStarted();
25
+ presenter.updateClientScript(recordManager.toObject());
26
+ }
27
+
28
+ dispatch(recordManager.createDataSourceExecuteEvent(props, actionName, metaData));
29
+ }
30
+
31
+ }
32
+
33
+ export default FetchClientScriptUseCase;
@@ -0,0 +1,22 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class FetchClientScriptsFailureUseCase extends AbstractUseCase {
4
+ execute(input) {
5
+ const {
6
+ repository
7
+ } = this.dependencies;
8
+ const {
9
+ dispatch,
10
+ metaData,
11
+ error
12
+ } = input;
13
+ const recordManager = repository.getClientScriptsManagerEntity();
14
+ const events = recordManager.createFailureEvents(error, metaData);
15
+ events.forEach(event => {
16
+ dispatch(event);
17
+ });
18
+ }
19
+
20
+ }
21
+
22
+ export default FetchClientScriptsFailureUseCase;
@@ -0,0 +1,27 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class NoContentUseCase extends AbstractUseCase {
4
+ execute(input) {
5
+ const {
6
+ presenter,
7
+ repository
8
+ } = this.dependencies;
9
+ const {
10
+ dispatch,
11
+ metaData
12
+ } = input;
13
+ const recordManager = repository.getClientScriptsManagerEntity();
14
+
15
+ if (recordManager.isGetClientScriptsApi(metaData.actionName)) {
16
+ presenter.updateClientScript(recordManager.toObject());
17
+ }
18
+
19
+ const events = recordManager.createNoContentEvents(metaData);
20
+ events.forEach(event => {
21
+ dispatch(event);
22
+ });
23
+ }
24
+
25
+ }
26
+
27
+ export default NoContentUseCase;
@@ -0,0 +1,25 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class FetchStateStopUseCase extends AbstractUseCase {
4
+ execute(input) {
5
+ const {
6
+ repository,
7
+ presenter
8
+ } = this.dependencies;
9
+ const {
10
+ metaData
11
+ } = input;
12
+ const {
13
+ actionName
14
+ } = metaData;
15
+ const recordManager = repository.getClientScriptsManagerEntity();
16
+
17
+ if (recordManager.isGetClientScriptsApi(actionName)) {
18
+ recordManager.fetchingFinished();
19
+ presenter.updateClientScript(recordManager.toObject());
20
+ }
21
+ }
22
+
23
+ }
24
+
25
+ export default FetchStateStopUseCase;
@@ -0,0 +1,22 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class FetchClientScriptsSuccessUseCase extends AbstractUseCase {
4
+ execute(input) {
5
+ const {
6
+ repository
7
+ } = this.dependencies;
8
+ const {
9
+ response,
10
+ metaData,
11
+ dispatch
12
+ } = input;
13
+ const recordManager = repository.getClientScriptsManagerEntity();
14
+ const events = recordManager.createSuccessEvents(response, metaData);
15
+ events.forEach(event => {
16
+ dispatch(event);
17
+ });
18
+ }
19
+
20
+ }
21
+
22
+ export default FetchClientScriptsSuccessUseCase;