@zohodesk/library-platform 1.1.10-exp.1 → 1.1.10-exp.3

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 (209) hide show
  1. package/es/.DS_Store +0 -0
  2. package/es/bc/app-context/Properties.js +12 -2
  3. package/es/bc/sdk/ResourceNamesEnum.js +1 -0
  4. package/es/bc/zform/Constants.js +11 -1
  5. package/es/bc/zform/Properties.js +29 -33
  6. package/es/bc/zform/Symbol.js +1 -3
  7. package/es/bc/zlist/Properties.js +0 -51
  8. package/es/bc/zrecord/Constants.js +1 -0
  9. package/es/cc/fields/currency/Properties.js +2 -1
  10. package/es/cc/fields/field/Properties.js +14 -8
  11. package/es/cc/fields/lookup/Properties.js +34 -1
  12. package/es/cc/fields/text/Properties.js +0 -9
  13. package/es/cc/form/Properties.js +8 -0
  14. package/es/cc/form-connected/ExternalConstants.js +3 -0
  15. package/es/cc/form-connected/Properties.js +19 -11
  16. package/es/cc/table-connected/SdkContract.js +14 -0
  17. package/es/cc/table-connected/constants/Events.js +2 -1
  18. package/es/cc/table-list/row/Properties.js +8 -0
  19. package/es/index.js +13 -3
  20. package/es/library/analytics/Analytics.js +36 -0
  21. package/es/library/analytics/AnalyticsContract.js +13 -0
  22. package/es/library/analytics/index.js +2 -0
  23. package/es/library/custom-component/adapters/controllers/Controller.js +9 -0
  24. package/es/library/custom-component/adapters/gateways/event-manager/EventManager.js +4 -0
  25. package/es/library/custom-component/adapters/gateways/service/Service.js +2 -0
  26. package/es/library/custom-component/applications/entities-factory/ComponentFactory.js +12 -9
  27. package/es/library/custom-component/applications/usecases/DispatchUseCase.js +28 -5
  28. package/es/library/custom-component/applications/usecases/InitializeUseCase.js +5 -4
  29. package/es/library/custom-component/applications/usecases/MountUseCase.js +10 -6
  30. package/es/library/custom-component/applications/usecases/UnmountUseCase.js +6 -5
  31. package/es/library/custom-component/applications/usecases/UpdatePropertyUseCase.js +23 -18
  32. package/es/library/custom-component/applications/usecases/UpdateStateUseCase.js +4 -3
  33. package/es/library/custom-component/domain/entities/Behaviour.js +4 -0
  34. package/es/library/custom-component/domain/entities/Component.js +89 -83
  35. package/es/library/custom-component/domain/entities/Properties.js +10 -137
  36. package/es/library/custom-component/domain/entities/Property.js +29 -0
  37. package/es/library/custom-component/frameworks/json-schema-validator/Validator.js +65 -28
  38. package/es/library/custom-component/frameworks/ui/CreateCustomComponent.js +26 -13
  39. package/es/library/custom-component/frameworks/ui/DependencyFactory.js +1 -2
  40. package/es/library/dot/components/action-location/frameworks/ui/ActionComponentMapping.js +2 -1
  41. package/es/library/dot/components/form/adapters/presenter/TransformState.js +3 -1
  42. package/es/library/dot/components/form/frameworks/ui/DefaultComponentRegister.js +10 -2
  43. package/es/library/dot/components/form/frameworks/ui/Form.js +2 -0
  44. package/es/library/dot/components/form/frameworks/ui/FormView.js +8 -4
  45. package/es/library/dot/components/form/frameworks/ui/sub-components/Footer.js +7 -4
  46. package/es/library/dot/components/form/frameworks/ui/sub-components/Header.js +7 -4
  47. package/es/library/dot/components/form-fields/currency/frameworks/ui/Currency.js +3 -3
  48. package/es/library/dot/components/form-fields/lookup/frameworks/ui/Lookup.js +1 -1
  49. package/es/library/dot/components/section/frameworks/ui/SectionView.js +12 -4
  50. package/es/library/dot/components/section/frameworks/ui/css/Section.module.css +3 -0
  51. package/es/library/dot/components/table-list/frameworks/ui/TableListView.js +14 -7
  52. package/es/library/dot/components/table-list/frameworks/ui/sub-components/ErrorState.js +4 -7
  53. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Header.js +9 -6
  54. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Rows.js +6 -4
  55. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/HeaderData.js +6 -4
  56. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/Headers.js +4 -2
  57. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/MassAction.js +6 -4
  58. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Columns.js +4 -2
  59. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Row.js +14 -7
  60. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowActions.js +5 -4
  61. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowData.js +5 -3
  62. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowSelection.js +32 -7
  63. package/es/library/dot/legacy-to-new-arch/breadcrumb/frameworks/ui/sub-components/BreadcrumbItem.js +1 -1
  64. package/es/library/dot/legacy-to-new-arch/button/frameworks/ui/ButtonView.js +2 -2
  65. package/es/library/dot/legacy-to-new-arch/date/frameworks/ui/DateView.js +4 -4
  66. package/es/library/dot/legacy-to-new-arch/label/frameworks/ui/LabelView.js +2 -2
  67. package/es/library/dot/legacy-to-new-arch/multi-select/frameworks/ui/MultiSelectView.js +2 -2
  68. package/es/library/dot/legacy-to-new-arch/select/frameworks/ui/SelectView.js +2 -2
  69. package/es/library/dot/legacy-to-new-arch/table-field-components/index.js +1 -0
  70. package/es/library/dot/legacy-to-new-arch/text/frameworks/ui/TextView.js +1 -1
  71. package/es/library/dot/legacy-to-new-arch/text-area/frameworks/ui/TextAreaView.js +2 -2
  72. package/es/library/dot/legacy-to-new-arch/textbox/frameworks/ui/TextBoxView.js +2 -2
  73. package/es/platform/.DS_Store +0 -0
  74. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/SetClientActionsUseCase.js +6 -1
  75. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/ClientActionManager.js +58 -19
  76. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/ClientActions.js +8 -8
  77. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/interfaces/IClientActionFetchResponse.js +0 -0
  78. package/es/platform/client-actions/cc/action-event-mediator/Properties.js +75 -3
  79. package/es/platform/client-actions/components/action-event-mediator/adapters/controllers/MountController.js +1 -1
  80. package/es/platform/client-actions/components/action-event-mediator/adapters/controllers/PropertiesChangeController.js +2 -2
  81. package/es/platform/client-actions/components/action-event-mediator/adapters/gateway/Repository.js +2 -2
  82. package/es/platform/client-actions/components/action-event-mediator/applications/usecases/InitializeUseCase.js +15 -1
  83. package/es/platform/client-actions/components/action-event-mediator/applications/usecases/PropertiesChangeUseCase.js +3 -3
  84. package/es/platform/client-actions/components/action-event-mediator/domain/entities/ActionEventMediatorEntity.js +41 -24
  85. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/ActionEventMediator.js +3 -1
  86. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/ActionEventMediatorView.js +31 -14
  87. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/ClientActionsAdapter.js +2 -48
  88. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/EventHandlersFactory.js +3 -11
  89. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/AdaptiveRowActions/AdaptiveRowActionsRenderer.js +12 -0
  90. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/AdaptiveRowActions/AdaptiveRowActionsRendererView.js +42 -0
  91. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/MoreActions/MoreActionsRenderer.js +10 -0
  92. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/MoreActions/MoreActionsRendererView.js +79 -0
  93. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActions/RowActionsRenderer.js +12 -0
  94. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActions/RowActionsRenderer.module.css +19 -0
  95. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActions/RowActionsRendererView.js +37 -0
  96. package/es/platform/client-actions/translators/client-actions-translator/index.js +14 -2
  97. package/es/platform/client-actions/translators/condition-resolver/index.js +6 -1
  98. package/es/platform/client-scripts/bc/zclient-scripts-execution/Constants.js +11 -0
  99. package/es/platform/client-scripts/bc/zclient-scripts-execution/EventHandlers.js +1 -0
  100. package/es/platform/client-scripts/bc/zclient-scripts-fetch/Constants.js +11 -0
  101. package/es/platform/client-scripts/bc/zclient-scripts-fetch/EventHandlers.js +1 -0
  102. package/es/platform/{app-context-behaviour → client-scripts/behaviour/zclient-scripts-execution}/adapters/controllers/AbstractController.js +2 -1
  103. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/controllers/ClientScriptExecutionController.js +10 -0
  104. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/controllers/SetClientScriptsMappingController.js +10 -0
  105. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/gateways/Repository.js +24 -0
  106. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/gateways/Service.js +9 -0
  107. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/adapters/presenters/Presenter.js +21 -0
  108. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/interfaces/gateways/IService.js +0 -0
  109. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/usecases/AbstractUseCase.js +15 -0
  110. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/usecases/ExecuteClientScriptsUseCase.js +23 -0
  111. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/applications/usecases/SetClientScriptsMappingUseCase.js +16 -0
  112. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/domain/entities/ClientScriptExecutor.js +142 -0
  113. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/domain/entities/types/ClientScriptExectionTypeDefintions.js +7 -0
  114. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/frameworks/ClientScriptsExecutionBehaviourFactory.js +12 -0
  115. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/frameworks/ClientScriptsExecutionHandlersFactory.js +30 -0
  116. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/frameworks/ClientScriptsUtils.js +25 -0
  117. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/AbstractController.js +8 -0
  118. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsController.js +27 -0
  119. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsFailureController.js +28 -0
  120. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsNoContentController.js +23 -0
  121. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsStopController.js +21 -0
  122. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/FetchClientScriptsSuccessController.js +28 -0
  123. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/MountController.js +22 -0
  124. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/controllers/SetClientScriptsController.js +24 -0
  125. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/gateways/Repository.js +22 -0
  126. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/gateways/Service.js +19 -0
  127. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/adapters/presenters/Presenter.js +16 -0
  128. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/entities-factory/ClientScriptsFactory.js +11 -0
  129. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/entities-factory/ClientScriptsManagerFactory.js +10 -0
  130. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/interfaces/gateways/IService.js +0 -0
  131. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/AbstractUseCase.js +17 -0
  132. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptUseCase.js +33 -0
  133. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptsFailureUseCase.js +22 -0
  134. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptsNoContentUseCase.js +27 -0
  135. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptsStopUseCase.js +25 -0
  136. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/FetchClientScriptsSuccessUseCase.js +22 -0
  137. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/InitializeUseCase.js +17 -0
  138. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/applications/usecases/SetClientScriptsUseCase.js +21 -0
  139. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/ClientScript.js +24 -0
  140. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/ClientScripts.js +41 -0
  141. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/GetClientScriptsStrategy.js +44 -0
  142. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/State.js +1 -0
  143. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/ClientScriptEventMappingState.js +1 -0
  144. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/ClientScriptModel.js +1 -0
  145. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/ClientScriptsModel.js +1 -0
  146. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/IClientScript.js +0 -0
  147. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/IClientScripts.js +0 -0
  148. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/IEvent.js +1 -0
  149. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/frameworks/ClientScriptsBehaviourFactory.js +12 -0
  150. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/frameworks/ClientScriptsHandlersFactory.js +47 -0
  151. package/es/platform/client-scripts/cc/zclient-scripts-execution/clientScriptsSchema.js +15 -0
  152. package/es/platform/components/app/adapters/resources/AppResource.js +13 -3
  153. package/es/platform/components/form-connected/frameworks/FormConnectedFactory.js +7 -1
  154. package/es/platform/components/form-connected/frameworks/FormConnectedView.js +4 -2
  155. package/es/platform/components/table-connected/adapters/controllers/ColumnChooserUpdateController.js +7 -1
  156. package/es/platform/components/table-connected/adapters/resources/SmartTableResource.js +50 -0
  157. package/es/platform/components/table-connected/frameworks/EventHandlersFactory.js +216 -2
  158. package/es/platform/components/table-connected/frameworks/ListSdkFactory.js +4 -2
  159. package/es/platform/components/table-connected/frameworks/TableConnectedFactory.js +6 -2
  160. package/es/platform/data-source/http-template/getClientScripts.js +23 -0
  161. package/es/platform/data-source/http-template/updateSelectedFields.js +1 -1
  162. package/es/platform/data-source/index.js +14 -11
  163. package/es/platform/data-source/utils/validation-rules/TransFormValidationRules.js +1 -0
  164. package/es/platform/sdk/frameworks/Sdk.js +1 -1
  165. package/es/platform/zdata-source/domain/entities/APITemplate.js +2 -1
  166. package/es/platform/zfield/domain/entities/fields-manager/FieldsManager.js +6 -1
  167. package/es/platform/zform/adapters/controllers/IntializeController.js +4 -2
  168. package/es/platform/zform/adapters/controllers/MyLayoutSuccessController.js +4 -2
  169. package/es/platform/zform/adapters/controllers/SubmitValidationCompletedController.js +5 -1
  170. package/es/platform/zform/adapters/gateway/FormRepository.js +4 -2
  171. package/es/platform/zform/adapters/gateway/Service.js +2 -0
  172. package/es/platform/zform/adapters/presenter/FormTranslator.js +21 -15
  173. package/es/platform/zform/adapters/presenter/translators/SectionTranslator.js +5 -3
  174. package/es/platform/zform/applications/usecases/InitializeUseCase.js +54 -26
  175. package/es/platform/zform/applications/usecases/MyFormSuccessUseCase.js +7 -7
  176. package/es/platform/zform/applications/usecases/MyLayoutSuccessUseCase.js +60 -36
  177. package/es/platform/zform/applications/usecases/SubmitValidationCompletedUseCase.js +12 -8
  178. package/es/platform/zform/domain/ZForm.js +65 -0
  179. package/es/platform/zform/frameworks/ui/EventHandlerFactory.js +11 -2
  180. package/es/platform/zhttp/adapters/controllers/FetchController.js +5 -1
  181. package/es/platform/zlist/adapters/gateways/Repository.js +4 -2
  182. package/es/platform/zlist/adapters/presenters/SelectionTranslator.js +6 -3
  183. package/es/platform/zlist/adapters/presenters/TableTranslator.js +15 -6
  184. package/es/platform/zlist/adapters/presenters/translators/ColumnTranslator.js +30 -19
  185. package/es/platform/zlist/adapters/presenters/translators/Header.js +5 -6
  186. package/es/platform/zlist/adapters/presenters/translators/HeadersTranslator.js +4 -2
  187. package/es/platform/zlist/adapters/presenters/translators/Row.js +5 -3
  188. package/es/platform/zlist/adapters/presenters/translators/RowsTranslator.js +6 -2
  189. package/es/platform/zlist/adapters/presenters/utils/DefaultClientActions.js +1 -1
  190. package/es/platform/zlist/domain/entities/List.js +17 -2
  191. package/package.json +3 -3
  192. package/es/library/custom-component/applications/usecases/MountUseCase copy.js +0 -28
  193. package/es/platform/app-context-behaviour/adapters/controllers/InitializeController.js +0 -19
  194. package/es/platform/app-context-behaviour/adapters/gateways/Service.js +0 -7
  195. package/es/platform/app-context-behaviour/adapters/presenters/Presenter.js +0 -18
  196. package/es/platform/app-context-behaviour/adapters/resources/AppResource.js +0 -25
  197. package/es/platform/app-context-behaviour/applications/AbstractUseCase.js +0 -6
  198. package/es/platform/app-context-behaviour/applications/usecases/InitializeUseCase.js +0 -15
  199. package/es/platform/app-context-behaviour/frameworks/EventHandlerFactory.js +0 -25
  200. package/es/platform/components/form-connected/frameworks/FallbackView.js +0 -23
  201. package/es/platform/components/form-connected/frameworks/FormFallbackView.js +0 -23
  202. /package/es/platform/{app-context-behaviour/applications/interfaces/UsecaseDependencies.js → client-actions/behaviour/zclient-actions/domain/entities/interfaces/ClientActionResponse.js} +0 -0
  203. /package/es/platform/{app-context-behaviour/applications/interfaces/gateways/IService.js → client-scripts/behaviour/zclient-scripts-execution/applications/interfaces/InputDependencies.js} +0 -0
  204. /package/es/platform/{app-context-behaviour/applications/interfaces/input/InitializeUseCaseInputModel.js → client-scripts/behaviour/zclient-scripts-execution/applications/interfaces/gateways/IRepository.js} +0 -0
  205. /package/es/platform/{app-context-behaviour → client-scripts/behaviour/zclient-scripts-execution}/applications/interfaces/output/IPresenter.js +0 -0
  206. /package/es/platform/{app-context-behaviour/applications/interfaces/output/BehaviourState.js → client-scripts/behaviour/zclient-scripts-execution/domain/entities/State.js} +0 -0
  207. /package/es/platform/{app-context-behaviour/applications/interfaces/resources/ApiHeaderContract.js → client-scripts/behaviour/zclient-scripts-fetch/applications/interfaces/InputDependencies.js} +0 -0
  208. /package/es/platform/{app-context-behaviour/applications/interfaces/resources/ContextContract.js → client-scripts/behaviour/zclient-scripts-fetch/applications/interfaces/gateways/IRepository.js} +0 -0
  209. /package/es/platform/{app-context-behaviour/applications/interfaces/resources/IAppResource.js → client-scripts/behaviour/zclient-scripts-fetch/applications/interfaces/output/IPresenter.js} +0 -0
@@ -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;
@@ -0,0 +1,17 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+ import { DATA_SOURCE_REGISTER } from "../../../../../../bc/zdata-source/Constants";
3
+ export default class InitializeUseCase extends AbstractUseCase {
4
+ execute(input) {
5
+ const {
6
+ apiTemplates,
7
+ dispatch
8
+ } = input;
9
+ dispatch({
10
+ type: DATA_SOURCE_REGISTER,
11
+ payload: {
12
+ apiTemplates
13
+ }
14
+ });
15
+ }
16
+
17
+ }
@@ -0,0 +1,21 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+ import ClientActionFactory from "../entities-factory/ClientScriptsFactory";
3
+
4
+ class SetClientScriptsUseCase extends AbstractUseCase {
5
+ execute(input) {
6
+ const {
7
+ presenter,
8
+ repository
9
+ } = this.dependencies;
10
+ const {
11
+ clientScripts
12
+ } = input;
13
+ const recordManager = repository.getClientScriptsManagerEntity();
14
+ const scriptsEntity = ClientActionFactory.deSerializeClientScripts(clientScripts);
15
+ recordManager.setData(scriptsEntity);
16
+ presenter.updateClientScript(recordManager.toObject());
17
+ }
18
+
19
+ }
20
+
21
+ export default SetClientScriptsUseCase;
@@ -0,0 +1,24 @@
1
+ export default class ClientScript {
2
+ constructor(clientScriptModel) {
3
+ this.targetEventName = clientScriptModel.targetEvent;
4
+ this.eventHandler = clientScriptModel.clientScript;
5
+ }
6
+
7
+ getEventName() {
8
+ return this.targetEventName;
9
+ }
10
+
11
+ getEventHandler() {
12
+ return this.eventHandler;
13
+ }
14
+
15
+ toObject() {
16
+ const targetEventName = this.getEventName();
17
+ const eventHandler = this.getEventHandler();
18
+ return {
19
+ targetEvent: targetEventName,
20
+ clientScript: eventHandler
21
+ };
22
+ }
23
+
24
+ }
@@ -0,0 +1,41 @@
1
+ import ClientScript from "./ClientScript";
2
+ export default class ClientScripts {
3
+ constructor(_ref) {
4
+ let {
5
+ data,
6
+ isFetching
7
+ } = _ref;
8
+ let fetchLimit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 100;
9
+ this.clientScripts = data.map(obj => new ClientScript(obj));
10
+ this.fetchLimit = fetchLimit;
11
+ this.isDataBeingFetched = isFetching;
12
+ }
13
+
14
+ setIsFetching(isFetching) {
15
+ this.isDataBeingFetched = isFetching;
16
+ }
17
+
18
+ setData(clientScripts) {
19
+ this.clientScripts = clientScripts;
20
+ }
21
+
22
+ isFetching() {
23
+ return this.isDataBeingFetched;
24
+ }
25
+
26
+ getLength() {
27
+ return this.clientScripts.length;
28
+ }
29
+
30
+ getClientScript(eventName) {
31
+ return this.clientScripts.find(clientScript => clientScript.getEventName() === eventName) || null;
32
+ }
33
+
34
+ toObject() {
35
+ return {
36
+ clientScripts: this.clientScripts.map(clientScript => clientScript.toObject()),
37
+ isFetching: this.isFetching()
38
+ };
39
+ }
40
+
41
+ }
@@ -0,0 +1,44 @@
1
+ import { SET_CLIENTSCRIPTS, CLIENTSCRIPT_FETCH_SUCCESS_NO_CONTENT, CLIENTSCRIPT_FETCH_FAILURE, CLIENTSCRIPT_FETCH_SUCCESS } from "../../../../bc/zclient-scripts-fetch/Constants";
2
+ export default class GetClientScriptsStrategy {
3
+ createSuccessEvents(response, metaData) {
4
+ const events = [];
5
+ const clientScripts = response;
6
+ events.push({
7
+ type: SET_CLIENTSCRIPTS,
8
+ payload: {
9
+ clientScripts
10
+ }
11
+ });
12
+ events.push({
13
+ type: CLIENTSCRIPT_FETCH_SUCCESS,
14
+ payload: {
15
+ clientScripts
16
+ },
17
+ metaData
18
+ });
19
+ return events;
20
+ }
21
+
22
+ createNoContentEvents(metaData) {
23
+ const events = [];
24
+ events.push({
25
+ type: CLIENTSCRIPT_FETCH_SUCCESS_NO_CONTENT,
26
+ payload: {},
27
+ metaData
28
+ });
29
+ return events;
30
+ }
31
+
32
+ createFailureEvents(error, metaData) {
33
+ const events = [];
34
+ events.push({
35
+ type: CLIENTSCRIPT_FETCH_FAILURE,
36
+ payload: {
37
+ error
38
+ },
39
+ metaData
40
+ });
41
+ return events;
42
+ }
43
+
44
+ }
@@ -0,0 +1,12 @@
1
+ import ClientScriptsHandlersFactory from "./ClientScriptsHandlersFactory";
2
+ export default class ClientScriptsBehaviourFactory {
3
+ static create(apiDetails) {
4
+ return {
5
+ name: 'zclientScriptsEventMapping',
6
+ eventHandlers: ClientScriptsHandlersFactory.create(apiDetails),
7
+ properties: {},
8
+ setInitialState: () => ({})
9
+ };
10
+ }
11
+
12
+ }
@@ -0,0 +1,47 @@
1
+ import MountController from "../adapters/controllers/MountController";
2
+ import Presenter from "../adapters/presenters/Presenter";
3
+ import Repository from "../adapters/gateways/Repository";
4
+ import Service from "../adapters/gateways/Service";
5
+ import { CLIENTSCRIPT_FETCH, CLIENTSCRIPT_FETCH_FAILURE_CALLBACK, CLIENTSCRIPT_FETCH_SUCCESS_CALLBACK, CLIENTSCRIPT_FETCH_SUCCESS, CLIENTSCRIPT_FETCH_SUCCESS_NO_CONTENT, CLIENTSCRIPT_FETCH_SUCCESS_NO_CONTENT_CALLBACK, SET_CLIENTSCRIPTS, CLIENTSCRIPT_FETCH_FAILURE } from "../../../bc/zclient-scripts-fetch/Constants";
6
+ import FetchClientScriptsController from "../adapters/controllers/FetchClientScriptsController";
7
+ import FetchClientScriptsStopController from "../adapters/controllers/FetchClientScriptsStopController";
8
+ import FetchClientScriptsSuccessController from "../adapters/controllers/FetchClientScriptsSuccessController";
9
+ import FetchClientScriptsFailureController from "../adapters/controllers/FetchClientScriptsFailureController";
10
+ import FetchClientScriptsNoContentController from "../adapters/controllers/FetchClientScriptsNoContentController";
11
+ import SetClientScriptsController from "../adapters/controllers/SetClientScriptsController";
12
+ export default class ClientScriptsHandlersFactory {
13
+ static getClientScriptsControllerHandles(service) {
14
+ return {
15
+ fetchClientScripts: new FetchClientScriptsController(service).handle,
16
+ fetchClientScriptsSuccess: new FetchClientScriptsSuccessController(service).handle,
17
+ fetchClientScriptsStop: new FetchClientScriptsStopController(service).handle,
18
+ fetchClientScriptsFailure: new FetchClientScriptsFailureController(service).handle,
19
+ fetchClientScriptsNoContent: new FetchClientScriptsNoContentController(service).handle,
20
+ setClientScripts: new SetClientScriptsController(service).handle
21
+ };
22
+ }
23
+
24
+ static create(apiDetails) {
25
+ const presenter = new Presenter();
26
+ const repository = new Repository();
27
+ const dependencies = {
28
+ presenter,
29
+ repository
30
+ };
31
+ const service = new Service(dependencies);
32
+ const mountController = new MountController(apiDetails, service);
33
+ const clientScriptControllerHandle = ClientScriptsHandlersFactory.getClientScriptsControllerHandles(service);
34
+ return {
35
+ MOUNT: mountController.handle,
36
+ [CLIENTSCRIPT_FETCH]: clientScriptControllerHandle.fetchClientScripts,
37
+ [CLIENTSCRIPT_FETCH_FAILURE_CALLBACK]: clientScriptControllerHandle.fetchClientScriptsFailure,
38
+ [CLIENTSCRIPT_FETCH_SUCCESS_CALLBACK]: clientScriptControllerHandle.fetchClientScriptsSuccess,
39
+ [CLIENTSCRIPT_FETCH_SUCCESS]: clientScriptControllerHandle.fetchClientScriptsStop,
40
+ [CLIENTSCRIPT_FETCH_FAILURE]: clientScriptControllerHandle.fetchClientScriptsStop,
41
+ [CLIENTSCRIPT_FETCH_SUCCESS_NO_CONTENT]: clientScriptControllerHandle.fetchClientScriptsStop,
42
+ [SET_CLIENTSCRIPTS]: clientScriptControllerHandle.setClientScripts,
43
+ [CLIENTSCRIPT_FETCH_SUCCESS_NO_CONTENT_CALLBACK]: clientScriptControllerHandle.fetchClientScriptsNoContent
44
+ };
45
+ }
46
+
47
+ }
@@ -0,0 +1,15 @@
1
+ export const clientScriptsSchema = {
2
+ type: 'array',
3
+ minItems: 0,
4
+ items: {
5
+ type: 'object',
6
+ properties: {
7
+ targetEventName: {
8
+ type: 'string'
9
+ },
10
+ clientScript: {
11
+ type: 'string'
12
+ }
13
+ }
14
+ }
15
+ };
@@ -6,10 +6,20 @@ export class AppResource extends AbstractResource {
6
6
 
7
7
  destroy() {}
8
8
 
9
+ initializeContext(context) {
10
+ this.context = context;
11
+ }
12
+
13
+ initializeApiHeader(headers) {
14
+ this.headers = headers;
15
+ }
16
+
9
17
  getContext() {
10
- return {
11
- context: ['organization', 'department', 'user']
12
- };
18
+ return this.context;
19
+ }
20
+
21
+ getApiHeader() {
22
+ return this.headers;
13
23
  }
14
24
 
15
25
  }
@@ -13,6 +13,9 @@ import ResourceNamesEnum from "../../../../bc/sdk/ResourceNamesEnum";
13
13
  import { sdkRegistry } from "../../../sdk/frameworks/SdkRegistry";
14
14
  import { SmartFormResources } from "../adapters/resources/SmartFormResources";
15
15
  import ClientActionsBehaviourFactory from "../../../client-actions/behaviour/zclient-actions/frameworks/ClientActionsBehaviourFactory";
16
+ import ClientScriptsBehaviourFactory from "../../../client-scripts/behaviour/zclient-scripts-fetch/frameworks/ClientScriptsBehaviourFactory";
17
+ import FormFallbackView from "../../../../library/dot/components/form/frameworks/ui/FormFallbackView";
18
+ import AppContextBehaviourFactory from "../../../app-context-behaviour/frameworks/AppContextBehaviourFactory";
16
19
  sdkRegistry.registerResource({
17
20
  resourceName: ResourceNamesEnum.SMART_FORM,
18
21
  resource: SmartFormResources
@@ -41,11 +44,14 @@ export default class FormConnectedFactory {
41
44
  return createCustomComponent({
42
45
  name: name,
43
46
  View: View,
47
+ FallbackView: FormFallbackView,
44
48
  properties: Properties,
45
49
  eventHandlers: EventHandlersfactory.create(eventHandlers),
46
50
  transformState: FormTranslator.transformState,
47
- behaviours: [SdkBehaviourFactory.create([ResourceNamesEnum.SMART_FORM]), ClientActionsBehaviourFactory.create({
51
+ behaviours: [SdkBehaviourFactory.create([ResourceNamesEnum.SMART_FORM]), AppContextBehaviourFactory.create(), ClientActionsBehaviourFactory.create({
48
52
  getClientActions: _dataSource.httpTemplates.getClientActions
53
+ }), ClientScriptsBehaviourFactory.create({
54
+ getClientScripts: _dataSource.httpTemplates.getClientScripts
49
55
  }), ZHttpBehaviourFactory.create(), DataBrokerBehaviourFactory.create(), RecordBehaviourFactory.create(_dataSource.httpTemplates), ZFormBehaviourFactory.create()]
50
56
  });
51
57
  }
@@ -15,7 +15,8 @@ function View(_ref, ref) {
15
15
  headerLeftActions,
16
16
  headerRightActions,
17
17
  footerLeftActions,
18
- footerRightActions
18
+ footerRightActions,
19
+ clientScripts
19
20
  } = state.viewModel;
20
21
  return /*#__PURE__*/React.createElement(Form, {
21
22
  getRef: ref,
@@ -27,7 +28,8 @@ function View(_ref, ref) {
27
28
  headerRightActions: headerRightActions,
28
29
  footerLeftActions: footerLeftActions,
29
30
  footerRightActions: footerRightActions,
30
- rightPanel: rightPanel
31
+ rightPanel: rightPanel,
32
+ clientScripts: clientScripts
31
33
  });
32
34
  }
33
35
 
@@ -8,6 +8,10 @@ export default class ColumnChooserUpdateController extends AbstractController {
8
8
  } = event;
9
9
  const {
10
10
  context
11
+ } = state.behaviours.appContext;
12
+ const {
13
+ viewId,
14
+ departmentId
11
15
  } = state.properties;
12
16
  const fields = event.action.payload.selectedArray;
13
17
  dispatch({
@@ -15,7 +19,9 @@ export default class ColumnChooserUpdateController extends AbstractController {
15
19
  payload: {
16
20
  actionName: 'updateSelectedFields',
17
21
  props: { ...context,
18
- fields
22
+ fields,
23
+ viewId,
24
+ departmentId
19
25
  },
20
26
  apiName: 'updateSelectedFields'
21
27
  }