@zohodesk/library-platform 1.1.7 → 1.1.8-exp.1

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 (281) hide show
  1. package/es/bc/sdk/ResourceNamesEnum.js +1 -0
  2. package/es/bc/zfield/FieldApiTypes.js +20 -0
  3. package/es/bc/zform/Properties.js +9 -0
  4. package/es/bc/zform/Symbol.js +6 -0
  5. package/es/bc/zlist/Constants.js +3 -1
  6. package/es/bc/zlist/Properties.js +3 -0
  7. package/es/bc/zrecord/Constants.js +3 -0
  8. package/es/cc/date/Properties.js +9 -0
  9. package/es/cc/fields/field/Properties.js +63 -0
  10. package/es/cc/fields/multi-select/Properties.js +9 -0
  11. package/es/cc/fields/pick-list/Properties.js +9 -0
  12. package/es/cc/form/Properties.js +71 -0
  13. package/es/cc/form-connected/Constants.js +8 -0
  14. package/es/cc/form-connected/Properties.js +87 -0
  15. package/es/cc/form-connected/SdkContract.js +61 -0
  16. package/es/cc/form-connected/index.js +2 -0
  17. package/es/cc/highlighted-value/Properties.js +10 -0
  18. package/es/cc/index.js +1 -1
  19. package/es/cc/multi-select/Properties.js +9 -0
  20. package/es/cc/select/Properties.js +12 -0
  21. package/es/cc/table-connected/Properties.js +8 -0
  22. package/es/cc/table-connected/constants/Events.js +1 -0
  23. package/es/cc/textbox/Properties.js +11 -0
  24. package/es/index.js +2 -1
  25. package/es/library/behaviours/field-focus/frameworks/ui/EventHandlersFactory.js +26 -0
  26. package/es/library/behaviours/field-focus/frameworks/ui/FocusFieldBehaviourFactory.js +20 -0
  27. package/es/library/dot/components/action-location/frameworks/ui/ActionComponentMapping.js +3 -1
  28. package/es/library/dot/components/action-location/usecases/interactors/PropertiesChangeUseCase.js +1 -1
  29. package/es/library/dot/components/form/adapters/presenter/TransformState.js +14 -54
  30. package/es/library/dot/components/form/frameworks/ui/DefaultComponentRegister.js +0 -4
  31. package/es/library/dot/components/form/frameworks/ui/FormView.js +21 -39
  32. package/es/library/dot/components/form/frameworks/ui/css/Form.module.css +29 -1
  33. package/es/library/dot/components/form/frameworks/ui/sub-components/Footer.js +27 -0
  34. package/es/library/dot/components/form/frameworks/ui/sub-components/Header.js +24 -0
  35. package/es/library/dot/components/form/frameworks/ui/sub-components/MiddleSection.js +24 -0
  36. package/es/library/dot/components/form/frameworks/ui/sub-components/Sections.js +7 -2
  37. package/es/library/dot/components/form/frameworks/ui/sub-components/SectionsLayout.js +20 -0
  38. package/es/library/dot/components/form/frameworks/ui/sub-components/SectionsWithRightPanelLayout.js +42 -0
  39. package/es/library/dot/components/form-fields/checkbox/frameworks/ui/Checkbox.js +4 -3
  40. package/es/library/dot/components/form-fields/checkbox/frameworks/ui/CheckboxView.js +18 -14
  41. package/es/library/dot/components/form-fields/currency/frameworks/ui/Currency.js +3 -3
  42. package/es/library/dot/components/form-fields/currency/frameworks/ui/CurrencyView.js +20 -17
  43. package/es/library/dot/components/form-fields/date/frameworks/ui/Date.js +2 -3
  44. package/es/library/dot/components/form-fields/date/frameworks/ui/DateView.js +22 -19
  45. package/es/library/dot/components/form-fields/datetime/frameworks/ui/DateTime.js +2 -3
  46. package/es/library/dot/components/form-fields/datetime/frameworks/ui/DateTimeView.js +21 -18
  47. package/es/library/dot/components/form-fields/decimal/frameworks/ui/Decimal.js +2 -3
  48. package/es/library/dot/components/form-fields/decimal/frameworks/ui/DecimalView.js +22 -19
  49. package/es/library/dot/components/form-fields/email/frameworks/ui/Email.js +2 -3
  50. package/es/library/dot/components/form-fields/email/frameworks/ui/EmailView.js +22 -19
  51. package/es/library/dot/components/form-fields/field/FieldItem.js +36 -0
  52. package/es/library/dot/components/form-fields/field/css/FieldItem.module.css +13 -0
  53. package/es/library/dot/components/form-fields/multi-select/frameworks/ui/MultiSelect.js +2 -3
  54. package/es/library/dot/components/form-fields/multi-select/frameworks/ui/MultiSelectView.js +21 -18
  55. package/es/library/dot/components/form-fields/number/frameworks/ui/Number.js +2 -3
  56. package/es/library/dot/components/form-fields/number/frameworks/ui/NumberView.js +22 -19
  57. package/es/library/dot/components/form-fields/percentage/frameworks/ui/Percentage.js +2 -3
  58. package/es/library/dot/components/form-fields/percentage/frameworks/ui/PercentageView.js +22 -19
  59. package/es/library/dot/components/form-fields/phone/frameworks/ui/Phone.js +2 -3
  60. package/es/library/dot/components/form-fields/phone/frameworks/ui/PhoneView.js +22 -19
  61. package/es/library/dot/components/form-fields/pick-list/frameworks/ui/PickList.js +2 -3
  62. package/es/library/dot/components/form-fields/pick-list/frameworks/ui/PickListView.js +21 -18
  63. package/es/library/dot/components/form-fields/textarea/frameworks/ui/TextArea.js +4 -3
  64. package/es/library/dot/components/form-fields/textarea/frameworks/ui/TextAreaView.js +18 -17
  65. package/es/library/dot/components/form-fields/textbox/frameworks/ui/TextBox.js +2 -3
  66. package/es/library/dot/components/form-fields/textbox/frameworks/ui/TextBoxView.js +21 -18
  67. package/es/library/dot/components/form-fields/url/frameworks/ui/Url.js +2 -3
  68. package/es/library/dot/components/form-fields/url/frameworks/ui/UrlView.js +22 -19
  69. package/es/library/dot/components/section/frameworks/ui/SectionView.js +1 -1
  70. package/es/library/dot/components/table-list/frameworks/ui/sub-components/ErrorState.js +3 -3
  71. package/es/library/dot/legacy-to-new-arch/action-icon/frameworks/ui/ActionIconView.js +1 -1
  72. package/es/library/dot/legacy-to-new-arch/date/frameworks/ui/DateView.js +13 -1
  73. package/es/library/dot/legacy-to-new-arch/highlighted-value/frameworks/ui/HighlightedValueView.js +6 -1
  74. package/es/library/dot/{components/form-fields/ephi-tag/frameworks/ui/css/EPHITag.module.css → legacy-to-new-arch/highlighted-value/frameworks/ui/css/HighlightedValue.module.css} +1 -1
  75. package/es/library/dot/legacy-to-new-arch/label/frameworks/ui/LabelView.js +13 -7
  76. package/es/library/dot/legacy-to-new-arch/multi-select/frameworks/ui/MultiSelectView.js +12 -2
  77. package/es/library/dot/legacy-to-new-arch/select/frameworks/ui/SelectView.js +16 -4
  78. package/es/library/dot/legacy-to-new-arch/text-area/frameworks/ui/TextAreaView.js +1 -1
  79. package/es/library/dot/legacy-to-new-arch/textbox/frameworks/ui/TextBoxView.js +13 -3
  80. package/es/platform/client-actions/bc/zclient-actions/SdkContract.js +35 -0
  81. package/es/platform/client-actions/behaviour/zclient-actions/adapters/resources/ClientActionResource.js +105 -0
  82. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/GetClientActionLocationUseCase.js +20 -0
  83. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/GetClientActionUIComponentPropertiesUseCase.js +20 -0
  84. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/GetClientActionsUseCase.js +18 -0
  85. package/es/platform/client-actions/behaviour/zclient-actions/applications/usecases/UpdateClientActionUIComponentPropertiesUseCase.js +32 -0
  86. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/ClientAction.js +12 -0
  87. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/ClientActionManager.js +45 -0
  88. package/es/platform/client-actions/behaviour/zclient-actions/domain/entities/UIComponentMapping.js +10 -0
  89. package/es/platform/client-actions/behaviour/zclient-actions/frameworks/sdk/ClientActionsSDKFactory.js +29 -0
  90. package/es/platform/client-actions/cc/action-event-mediator/Properties.js +9 -0
  91. package/es/platform/client-actions/cc/dynamic-action-component/Properties.js +1 -1
  92. package/es/platform/client-actions/components/action-event-mediator/applications/usecases/PropertiesChangeUseCase.js +1 -1
  93. package/es/platform/client-actions/components/action-event-mediator/domain/entities/ActionEventMediatorEntity.js +7 -3
  94. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/ActionEventMediatorView.js +3 -1
  95. package/es/platform/client-actions/components/dynamic-component/frameworks/ui/DynamicActionComponentView.js +4 -2
  96. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActionsRendererView.js +4 -1
  97. package/es/platform/components/form-connected/adapters/resources/SmartFormResources.js +88 -6
  98. package/es/platform/components/form-connected/frameworks/EventHandlersFactory.js +29 -56
  99. package/es/platform/components/form-connected/frameworks/FormConnectedFactory.js +6 -9
  100. package/es/platform/components/form-connected/frameworks/FormConnectedView.js +16 -2
  101. package/es/platform/components/table-connected/frameworks/EventHandlersFactory.js +15 -1
  102. package/es/platform/components/table-connected/frameworks/TableConnectedFactory.js +6 -1
  103. package/es/platform/data-source/http-template/deleteRecords.js +1 -1
  104. package/es/platform/data-source/http-template/fetchValidationRules.js +2 -1
  105. package/es/platform/data-source/http-template/getClientActions.js +2 -2
  106. package/es/platform/data-source/http-template/moveToTrash.js +28 -0
  107. package/es/platform/data-source/index.js +2 -0
  108. package/es/platform/data-source/utils/validation-rules/FieldConditions.js +167 -0
  109. package/es/platform/data-source/utils/validation-rules/TransFormValidationRules.js +93 -0
  110. package/es/platform/sdk/frameworks/Sdk.js +7 -0
  111. package/es/platform/zdata-source/applications/usecases/SuccessUseCase.js +1 -1
  112. package/es/platform/zform/adapters/controllers/FieldBlurController.js +26 -0
  113. package/es/platform/zform/adapters/controllers/MyFromSuccessController.js +8 -2
  114. package/es/platform/zform/adapters/controllers/SubmitValidationCompletedController.js +21 -0
  115. package/es/platform/zform/adapters/controllers/ValidateFieldRequestController.js +10 -5
  116. package/es/platform/zform/adapters/controllers/ValidationRulesExecutionResultController.js +23 -0
  117. package/es/platform/zform/adapters/controllers/ValidationRulesRequestController.js +2 -4
  118. package/es/platform/zform/adapters/controllers/ValidationRulesSuccessController.js +2 -4
  119. package/es/platform/zform/adapters/gateway/Service.js +15 -7
  120. package/es/platform/zform/adapters/presenter/FormTranslator.js +87 -5
  121. package/es/platform/zform/adapters/presenter/translators/SectionTranslator.js +61 -4
  122. package/es/platform/zform/adapters/presenter/translators/fields/BooleanFieldTranslator.js +7 -3
  123. package/es/platform/zform/adapters/presenter/translators/fields/CurrencyFieldTranslator.js +5 -9
  124. package/es/platform/zform/adapters/presenter/translators/fields/DateFieldTranslator.js +7 -3
  125. package/es/platform/zform/adapters/presenter/translators/fields/DateTimeFieldTranslator.js +7 -3
  126. package/es/platform/zform/adapters/presenter/translators/fields/DecimalFieldTranslator.js +6 -9
  127. package/es/platform/zform/adapters/presenter/translators/fields/EmailFieldTranslator.js +6 -9
  128. package/es/platform/zform/adapters/presenter/translators/fields/LookUpFieldTranslator.js +5 -9
  129. package/es/platform/zform/adapters/presenter/translators/fields/MultiselectFieldTranslator.js +6 -3
  130. package/es/platform/zform/adapters/presenter/translators/fields/NumberFieldTranslator.js +6 -9
  131. package/es/platform/zform/adapters/presenter/translators/fields/PercentageFieldTranslator.js +6 -9
  132. package/es/platform/zform/adapters/presenter/translators/fields/PhoneFieldTranslator.js +6 -9
  133. package/es/platform/zform/adapters/presenter/translators/fields/PicklistFieldTranslator.js +6 -3
  134. package/es/platform/zform/adapters/presenter/translators/fields/TextAreaFieldTranslator.js +5 -9
  135. package/es/platform/zform/adapters/presenter/translators/fields/TextFieldTranslator.js +8 -8
  136. package/es/platform/zform/adapters/presenter/translators/fields/URLFieldTranslator.js +6 -9
  137. package/es/platform/zform/adapters/presenter/utils/DefaultClientActions.js +129 -0
  138. package/es/platform/zform/applications/usecases/AbstractUseCase.js +3 -1
  139. package/es/platform/zform/applications/usecases/FieldBlurUseCase.js +39 -0
  140. package/es/platform/zform/applications/usecases/FieldValueChangeRequestUseCase.js +9 -13
  141. package/es/platform/zform/applications/usecases/FocusFieldUseCase.js +19 -0
  142. package/es/platform/zform/applications/usecases/FormSubmitUseCase.js +19 -38
  143. package/es/platform/zform/applications/usecases/GetFieldErrorMessageUseCase.js +16 -0
  144. package/es/platform/zform/applications/usecases/InitializeUseCase.js +16 -0
  145. package/es/platform/zform/applications/usecases/InsertValidationRuleSuccessUseCase.js +22 -0
  146. package/es/platform/zform/applications/usecases/MyFormSuccessUseCase.js +63 -13
  147. package/es/platform/zform/applications/usecases/MyLayoutSuccessUseCase.js +4 -33
  148. package/es/platform/zform/applications/usecases/SetFieldErrorMessageUseCase.js +4 -4
  149. package/es/platform/zform/applications/usecases/SetFieldValueUseCase.js +4 -21
  150. package/es/platform/zform/applications/usecases/SetFieldsValuesUseCase.js +4 -26
  151. package/es/platform/zform/applications/usecases/SubmitValidationCompletedUseCase.js +62 -0
  152. package/es/platform/zform/applications/usecases/ValidateFieldUseCase.js +33 -0
  153. package/es/platform/zform/applications/usecases/ValidationRulesExecutionResultUseCase.js +23 -0
  154. package/es/platform/zform/domain/ZField.js +20 -1
  155. package/es/platform/zform/domain/ZForm.js +114 -45
  156. package/es/platform/zform/domain/interfaces/IZForm.js +5 -1
  157. package/es/platform/zform/domain/interfaces/ValidationConditions.js +142 -0
  158. package/es/platform/zform/frameworks/layout-rules/calculateLayoutRulesResult.js +1 -1
  159. package/es/platform/zform/frameworks/layout-rules/runSingleFieldCondition.js +1 -1
  160. package/es/platform/zform/frameworks/layout-rules/validator.js +0 -1
  161. package/es/platform/zform/frameworks/ui/EventHandlerFactory.js +38 -137
  162. package/es/platform/zform/frameworks/ui/ZFormBehaviourFactory.js +4 -9
  163. package/es/platform/zform/frameworks/validation-rules/DefaultCustomValidators.js +340 -0
  164. package/es/platform/zform/frameworks/validation-rules/Validator.js +98 -16
  165. package/es/platform/zform/frameworks/validation-rules/formUtils.js +7 -0
  166. package/es/platform/zform/frameworks/validation-rules/localization_utils.js +15 -0
  167. package/es/platform/zform/frameworks/validation-rules/utils.js +402 -351
  168. package/es/platform/zform/frameworks/validation-rules/validationRules.js +80 -79
  169. package/es/platform/zlist/adapters/presenters/TableTranslator.js +3 -2
  170. package/es/platform/zlist/applications/usecases/RecordSuccessCallbackUsecase.js +4 -1
  171. package/es/platform/zlist/domain/entities/List.js +11 -4
  172. package/es/platform/zrecord/adapters/controllers/SetRecordsController.js +7 -3
  173. package/es/platform/zrecord/applications/usecases/SetRecordsUseCase.js +11 -1
  174. package/package.json +5 -4
  175. package/es/bc/field-validation/Constants.js +0 -4
  176. package/es/bc/field-validation/EventHandlers.js +0 -1
  177. package/es/bc/field-validation/Events.js +0 -106
  178. package/es/bc/field-validation/FieldTypes.js +0 -20
  179. package/es/bc/field-validation/Properties.js +0 -11
  180. package/es/bc/field-validation/index.js +0 -5
  181. package/es/cc/ephi-tag/Properties.js +0 -1
  182. package/es/cc/ephi-tag/index.js +0 -1
  183. package/es/cc/info-icon/Properties.js +0 -10
  184. package/es/cc/info-icon/index.js +0 -1
  185. package/es/library/behaviours/field-validation/adapters/controllers/AbstractController.js +0 -9
  186. package/es/library/behaviours/field-validation/adapters/controllers/ValidateFieldController.js +0 -32
  187. package/es/library/behaviours/field-validation/adapters/controllers/ValidateFieldsController.js +0 -31
  188. package/es/library/behaviours/field-validation/adapters/gateway/Repository.js +0 -23
  189. package/es/library/behaviours/field-validation/adapters/gateway/Service.js +0 -18
  190. package/es/library/behaviours/field-validation/applications/interfaces/input/FieldData.js +0 -17
  191. package/es/library/behaviours/field-validation/applications/usecases/AbstractUseCase.js +0 -15
  192. package/es/library/behaviours/field-validation/applications/usecases/ValidateField.js +0 -29
  193. package/es/library/behaviours/field-validation/applications/usecases/ValidateFields.js +0 -28
  194. package/es/library/behaviours/field-validation/domain/FieldValidation.js +0 -94
  195. package/es/library/behaviours/field-validation/domain/field-vise-validations/BooleanValidation.js +0 -28
  196. package/es/library/behaviours/field-validation/domain/field-vise-validations/CurrencyValidation.js +0 -49
  197. package/es/library/behaviours/field-validation/domain/field-vise-validations/DateTimeValidation.js +0 -24
  198. package/es/library/behaviours/field-validation/domain/field-vise-validations/DateValidation.js +0 -24
  199. package/es/library/behaviours/field-validation/domain/field-vise-validations/DecimalValidation.js +0 -49
  200. package/es/library/behaviours/field-validation/domain/field-vise-validations/EmailValidation.js +0 -28
  201. package/es/library/behaviours/field-validation/domain/field-vise-validations/IntegerValidation.js +0 -39
  202. package/es/library/behaviours/field-validation/domain/field-vise-validations/LookUpValidation.js +0 -24
  203. package/es/library/behaviours/field-validation/domain/field-vise-validations/MultiSelectValidation.js +0 -26
  204. package/es/library/behaviours/field-validation/domain/field-vise-validations/PercentValidation.js +0 -28
  205. package/es/library/behaviours/field-validation/domain/field-vise-validations/PhoneValidation.js +0 -39
  206. package/es/library/behaviours/field-validation/domain/field-vise-validations/PicklistValidation.js +0 -24
  207. package/es/library/behaviours/field-validation/domain/field-vise-validations/TextAreaValidation.js +0 -39
  208. package/es/library/behaviours/field-validation/domain/field-vise-validations/TextBoxValidation.js +0 -39
  209. package/es/library/behaviours/field-validation/domain/field-vise-validations/URLValidation.js +0 -28
  210. package/es/library/behaviours/field-validation/domain/interfaces/FieldTypes.js +0 -20
  211. package/es/library/behaviours/field-validation/domain/interfaces/ValidationsEnum.js +0 -22
  212. package/es/library/behaviours/field-validation/domain/interfaces/fields/IBooleanField.js +0 -0
  213. package/es/library/behaviours/field-validation/domain/interfaces/fields/ICurrencyField.js +0 -0
  214. package/es/library/behaviours/field-validation/domain/interfaces/fields/IDateField.js +0 -0
  215. package/es/library/behaviours/field-validation/domain/interfaces/fields/IDateTimeField.js +0 -0
  216. package/es/library/behaviours/field-validation/domain/interfaces/fields/IDecimalField.js +0 -0
  217. package/es/library/behaviours/field-validation/domain/interfaces/fields/IEmailField.js +0 -0
  218. package/es/library/behaviours/field-validation/domain/interfaces/fields/IIntegerField.js +0 -0
  219. package/es/library/behaviours/field-validation/domain/interfaces/fields/ILookUpField.js +0 -0
  220. package/es/library/behaviours/field-validation/domain/interfaces/fields/IMultiSelectField.js +0 -0
  221. package/es/library/behaviours/field-validation/domain/interfaces/fields/IPercentField.js +0 -0
  222. package/es/library/behaviours/field-validation/domain/interfaces/fields/IPhoneField.js +0 -0
  223. package/es/library/behaviours/field-validation/domain/interfaces/fields/IPicklistField.js +0 -0
  224. package/es/library/behaviours/field-validation/domain/interfaces/fields/ITextAreaField.js +0 -0
  225. package/es/library/behaviours/field-validation/domain/interfaces/fields/ITextBoxField.js +0 -0
  226. package/es/library/behaviours/field-validation/domain/interfaces/fields/IURLField.js +0 -0
  227. package/es/library/behaviours/field-validation/frameworks/ui/EventHandlerFactory.js +0 -23
  228. package/es/library/behaviours/field-validation/frameworks/ui/FieldValidationBehaviourFactory.js +0 -27
  229. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/BooleanFieldValidation.test.js +0 -137
  230. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/CurrencyFieldValidation.test.js +0 -228
  231. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/DateFieldValidation.test.js +0 -108
  232. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/DateTimeFieldValidation.test.js +0 -108
  233. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/DecimalFieldValidation.test.js +0 -257
  234. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/EmailFieldValidation.test.js +0 -139
  235. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/FieldValidationBehaviour.test.js +0 -171
  236. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/IntegerFieldValidation.test.js +0 -168
  237. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/LookUpFieldValidation.test.js +0 -108
  238. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/MultiSelectFieldValidation.test.js +0 -79
  239. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/PercentFieldValidation.test.js +0 -108
  240. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/PhoneFieldValidation.test.js +0 -168
  241. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/PicklistFieldValidation.test.js +0 -79
  242. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/TextAreaFieldValidation.test.js +0 -170
  243. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/TextBoxFieldValidation.test.js +0 -170
  244. package/es/library/behaviours/field-validation/frameworks/ui/__tests__/URLFieldValidation.test.js +0 -108
  245. package/es/library/behaviours/field-validation/frameworks/utils/FormBasicValidationAdaptor.js +0 -228
  246. package/es/library/behaviours/field-validation/frameworks/utils/__tests__/formValidate.test.js +0 -284
  247. package/es/library/behaviours/field-validation/frameworks/utils/formValidate.js +0 -334
  248. package/es/library/dot/components/form-fields/checkbox/adapters/presenter/TransformState.js +0 -22
  249. package/es/library/dot/components/form-fields/currency/adapters/presenter/TransformState.js +0 -81
  250. package/es/library/dot/components/form-fields/date/adapters/presenter/TransformState.js +0 -22
  251. package/es/library/dot/components/form-fields/datetime/adapters/presenter/TransformState.js +0 -22
  252. package/es/library/dot/components/form-fields/decimal/adapters/presenter/TransformState.js +0 -31
  253. package/es/library/dot/components/form-fields/email/adapters/presenter/TransformState.js +0 -23
  254. package/es/library/dot/components/form-fields/ephi-tag/frameworks/ui/EPHITag.js +0 -10
  255. package/es/library/dot/components/form-fields/ephi-tag/frameworks/ui/EPHITagView.js +0 -21
  256. package/es/library/dot/components/form-fields/info-icon/frameworks/ui/InfoIcon.js +0 -10
  257. package/es/library/dot/components/form-fields/info-icon/frameworks/ui/InfoIconView.js +0 -21
  258. package/es/library/dot/components/form-fields/info-icon/frameworks/ui/css/InfoIcon.module.css +0 -3
  259. package/es/library/dot/components/form-fields/multi-select/adapters/presenter/TransformState.js +0 -31
  260. package/es/library/dot/components/form-fields/number/adapters/presenter/TransformState.js +0 -31
  261. package/es/library/dot/components/form-fields/percentage/adapters/presenter/TransformState.js +0 -31
  262. package/es/library/dot/components/form-fields/phone/adapters/presenter/TransformState.js +0 -31
  263. package/es/library/dot/components/form-fields/pick-list/adapters/presenter/TransformState.js +0 -23
  264. package/es/library/dot/components/form-fields/textarea/adapters/presenter/TransformState.js +0 -23
  265. package/es/library/dot/components/form-fields/textbox/adapters/presenter/TransformState.js +0 -32
  266. package/es/library/dot/components/form-fields/url/adapters/presenter/TransformState.js +0 -31
  267. package/es/platform/zform/adapters/controllers/ValidateErrorMessageController.js +0 -22
  268. package/es/platform/zform/applications/interfaces/input/ValidateErrorMessageInputModel.js +0 -1
  269. package/es/platform/zform/applications/usecases/ValidateErrorMessageUseCase.js +0 -33
  270. package/es/platform/zform/applications/usecases/ValidateFieldRequestUseCase.js +0 -56
  271. /package/es/{library/behaviours/field-validation/applications/interfaces/UseCaseDependencies.js → platform/client-actions/behaviour/zclient-actions/applications/interfaces/IClientActionResource.js} +0 -0
  272. /package/es/{library/behaviours/field-validation/applications/interfaces/gateways/IRepository.js → platform/client-actions/behaviour/zclient-actions/applications/interfaces/input/GetClientActionLocationInputModel.js} +0 -0
  273. /package/es/{library/behaviours/field-validation/applications/interfaces/gateways/IService.js → platform/client-actions/behaviour/zclient-actions/applications/interfaces/input/GetClientActionUIComponentPropertiesInputModel.js} +0 -0
  274. /package/es/{library/behaviours/field-validation/applications/interfaces/input/FieldValidationInputModel.js → platform/client-actions/behaviour/zclient-actions/applications/interfaces/input/GetClientActionsInputModel.js} +0 -0
  275. /package/es/{library/behaviours/field-validation/applications/interfaces/input/ValidateFieldsInputModel.js → platform/client-actions/behaviour/zclient-actions/applications/interfaces/input/UpdateClientActionUIComponentPropertiesInputModel.js} +0 -0
  276. /package/es/{library/behaviours/field-validation/domain/interfaces/IFieldValidation.js → platform/zform/applications/interfaces/input/FieldBlurUsecaseInputModel.js} +0 -0
  277. /package/es/{library/behaviours/field-validation/domain/interfaces/IFieldViseValidation.js → platform/zform/applications/interfaces/input/FocusFieldUseCaseInputModel.js} +0 -0
  278. /package/es/{library/behaviours/field-validation/domain/interfaces/ValidationResult.js → platform/zform/applications/interfaces/input/GetFieldErrorMessageInputModel.js} +0 -0
  279. /package/es/{library/behaviours/field-validation/domain/interfaces/ValidationsArray.js → platform/zform/applications/interfaces/input/InsertValidationRuleInputModel.js} +0 -0
  280. /package/es/{library/behaviours/field-validation/domain/interfaces/IField.js → platform/zform/applications/interfaces/input/SubmitValidationCompletedUsecaseInputModel.js} +0 -0
  281. /package/es/{library/behaviours/field-validation/domain/interfaces/ValidationsMap.js → platform/zform/applications/interfaces/input/ValidateFieldUseCaseInputModel.js} +0 -0
@@ -1,12 +1,14 @@
1
1
  import SmartFormConstants from "../../../../cc/form-connected/Constants";
2
2
  import FormSdkFactory from "./FormSdkFactory";
3
3
  import FormConstants from "../../../../cc/form/Constants";
4
- import { ZFORM_FIELD_VALUE_CHANGED } from "../../../../bc/zform/Symbol";
4
+ import { ZFORM_FIELD_BLURRED, ZFORM_FIELD_VALUE_CHANGED, ZFORM_SUBMIT_SUCCESS, ZFORM_SUBMIT_VALIDATION_FAILURE } from "../../../../bc/zform/Symbol";
5
5
  import { platformSDK } from "../../../sdk/frameworks/Sdk";
6
6
  const {
7
7
  SMART_FORM_FIELD_FOCUSED,
8
8
  SMART_FORM_FIELD_BLURRED,
9
- SMART_FORM_FIELD_VALUE_CHANGED
9
+ SMART_FORM_FIELD_VALUE_CHANGED,
10
+ SMART_FORM_SUBMIT_SUCCESS,
11
+ SMART_FORM_SUBMIT_FAILURE
10
12
  } = SmartFormConstants; // function createHandlerWithSdk(handler) {
11
13
  // return input => {
12
14
  // const { state, dispatch } = input;
@@ -36,62 +38,33 @@ export default class EventHandlersFactory {
36
38
  }));
37
39
  }
38
40
 
41
+ static createEventMappedHandler(eventName) {
42
+ return _ref => {
43
+ let {
44
+ action,
45
+ dispatch
46
+ } = _ref;
47
+ dispatch({
48
+ type: eventName,
49
+ payload: action.payload
50
+ });
51
+ };
52
+ }
53
+
54
+ static getEventMappedHandlers() {
55
+ return {
56
+ [FormConstants.FORM_FIELD_FOCUSED]: EventHandlersFactory.createEventMappedHandler(SMART_FORM_FIELD_FOCUSED),
57
+ [ZFORM_FIELD_BLURRED]: EventHandlersFactory.createEventMappedHandler(SMART_FORM_FIELD_BLURRED),
58
+ [ZFORM_SUBMIT_SUCCESS]: EventHandlersFactory.createEventMappedHandler(SMART_FORM_SUBMIT_SUCCESS),
59
+ [ZFORM_SUBMIT_VALIDATION_FAILURE]: EventHandlersFactory.createEventMappedHandler(SMART_FORM_SUBMIT_FAILURE),
60
+ [ZFORM_FIELD_VALUE_CHANGED]: EventHandlersFactory.createEventMappedHandler(SMART_FORM_FIELD_VALUE_CHANGED)
61
+ };
62
+ }
63
+
39
64
  static create(eventHandlers) {
40
65
  const wrapped = EventHandlersFactory.createWrapped(eventHandlers);
41
- return { ...wrapped,
42
- [FormConstants.FORM_FIELD_FOCUSED]: _ref => {
43
- let {
44
- action,
45
- dispatch
46
- } = _ref;
47
- const {
48
- sectionId,
49
- fieldName
50
- } = action.payload;
51
- dispatch({
52
- type: SMART_FORM_FIELD_FOCUSED,
53
- payload: {
54
- sectionId,
55
- fieldName
56
- }
57
- });
58
- },
59
- [FormConstants.FORM_FIELD_BLURRED]: _ref2 => {
60
- let {
61
- action,
62
- dispatch
63
- } = _ref2;
64
- const {
65
- sectionId,
66
- fieldName
67
- } = action.payload;
68
- dispatch({
69
- type: SMART_FORM_FIELD_BLURRED,
70
- payload: {
71
- sectionId,
72
- fieldName
73
- }
74
- });
75
- },
76
- [ZFORM_FIELD_VALUE_CHANGED]: _ref3 => {
77
- let {
78
- action,
79
- dispatch
80
- } = _ref3;
81
- const {
82
- sectionId,
83
- fieldName,
84
- value
85
- } = action.payload;
86
- dispatch({
87
- type: SMART_FORM_FIELD_VALUE_CHANGED,
88
- payload: {
89
- sectionId,
90
- fieldName,
91
- value
92
- }
93
- });
94
- }
66
+ return { ...EventHandlersFactory.getEventMappedHandlers(),
67
+ ...wrapped
95
68
  };
96
69
  }
97
70
 
@@ -2,18 +2,17 @@ import Properties from "../../../../cc/form-connected/Properties";
2
2
  import { createCustomComponent } from "../../../../library/custom-component";
3
3
  import ZHttpBehaviourFactory from "../../../zhttp/frameworks/ZHttpBehaviourFactory";
4
4
  import RecordBehaviourFactory from "../../../zrecord/frameworks/RecordBehaviourFactory";
5
- import FormConnectedView from "./FormConnectedView"; // import defaultDataBroker from '@platform/data-source';
6
-
5
+ import FormConnectedView from "./FormConnectedView";
7
6
  import defaultDataSource from "../../../data-source";
8
7
  import DataBrokerBehaviourFactory from "../../../zdata-source/frameworks/DataBrokerBehaviourFactory";
9
8
  import FormTranslator from "../../../zform/adapters/presenter/FormTranslator";
10
9
  import ZFormBehaviourFactory from "../../../zform/frameworks/ui/ZFormBehaviourFactory";
11
- import FieldValidationBehaviourFactory from "../../../../library/behaviours/field-validation/frameworks/ui/FieldValidationBehaviourFactory";
12
10
  import EventHandlersfactory from "./EventHandlersFactory";
13
11
  import SdkBehaviourFactory from "../../../sdk-behaviour/frameworks/SdkBehaviourFactory";
14
12
  import ResourceNamesEnum from "../../../../bc/sdk/ResourceNamesEnum";
15
13
  import { sdkRegistry } from "../../../sdk/frameworks/SdkRegistry";
16
14
  import { SmartFormResources } from "../adapters/resources/SmartFormResources";
15
+ import ClientActionsBehaviourFactory from "../../../client-actions/behaviour/zclient-actions/frameworks/ClientActionsBehaviourFactory";
17
16
  sdkRegistry.registerResource({
18
17
  resourceName: ResourceNamesEnum.SMART_FORM,
19
18
  resource: SmartFormResources
@@ -32,14 +31,12 @@ export default class FormConnectedFactory {
32
31
  static create(_ref) {
33
32
  let {
34
33
  name,
35
- customValidators,
36
- dataBroker = defaultDataSource,
37
34
  dataSource,
38
35
  eventHandlers = {},
39
36
  View = FormConnectedView
40
37
  } = _ref;
41
38
 
42
- const _dataSource = combineDataSourceWithDefault(dataBroker ? dataBroker : dataSource);
39
+ const _dataSource = combineDataSourceWithDefault(dataSource);
43
40
 
44
41
  return createCustomComponent({
45
42
  name: name,
@@ -47,9 +44,9 @@ export default class FormConnectedFactory {
47
44
  properties: Properties,
48
45
  eventHandlers: EventHandlersfactory.create(eventHandlers),
49
46
  transformState: FormTranslator.transformState,
50
- behaviours: [SdkBehaviourFactory.create([ResourceNamesEnum.SMART_FORM]), ZHttpBehaviourFactory.create(), DataBrokerBehaviourFactory.create(), RecordBehaviourFactory.create(_dataSource.httpTemplates), FieldValidationBehaviourFactory.create(), ZFormBehaviourFactory.create({
51
- customValidators
52
- })]
47
+ behaviours: [SdkBehaviourFactory.create([ResourceNamesEnum.SMART_FORM]), ClientActionsBehaviourFactory.create({
48
+ getClientActions: _dataSource.httpTemplates.getClientActions
49
+ }), ZHttpBehaviourFactory.create(), DataBrokerBehaviourFactory.create(), RecordBehaviourFactory.create(_dataSource.httpTemplates), ZFormBehaviourFactory.create()]
53
50
  });
54
51
  }
55
52
 
@@ -8,12 +8,26 @@ function View(_ref, ref) {
8
8
  } = _ref;
9
9
  const {
10
10
  isLoading,
11
- sections = []
11
+ sections = [],
12
+ rightPanel,
13
+ isHeaderEnabled,
14
+ isFooterEnabled,
15
+ headerLeftActions,
16
+ headerRightActions,
17
+ footerLeftActions,
18
+ footerRightActions
12
19
  } = state.viewModel;
13
20
  return /*#__PURE__*/React.createElement(Form, {
14
21
  getRef: ref,
15
22
  isLoading: isLoading,
16
- sections: sections
23
+ sections: sections,
24
+ isHeaderEnabled: isHeaderEnabled,
25
+ isFooterEnabled: isFooterEnabled,
26
+ headerLeftActions: headerLeftActions,
27
+ headerRightActions: headerRightActions,
28
+ footerLeftActions: footerLeftActions,
29
+ footerRightActions: footerRightActions,
30
+ rightPanel: rightPanel
17
31
  });
18
32
  }
19
33
 
@@ -15,6 +15,7 @@ import ScrollController from "../adapters/controllers/ScrollController";
15
15
  import ColumnChooserUpdateController from "../adapters/controllers/ColumnChooserUpdateController";
16
16
  import ColumnChooserOpenedController from "../adapters/controllers/ColumnChooserOpenedController";
17
17
  import { platformSDK } from "../../../sdk/frameworks/Sdk";
18
+ import { SET_RECORDS_SUCCESS } from "../../../../bc/zrecord/Constants";
18
19
  import ErrorEventHandlersFactory from "./ErrorEventHandlersFactory";
19
20
  const {
20
21
  TABLE_LIST_RESIZE_START_REQUESTED,
@@ -97,7 +98,20 @@ export default class EventHandlersFactory {
97
98
  payload: action.payload
98
99
  });
99
100
  },
100
- [TABLE_LIST_ROW_DRAG_END]: new ReOrderFinishController().handle
101
+ [TABLE_LIST_ROW_DRAG_END]: new ReOrderFinishController().handle,
102
+ [SET_RECORDS_SUCCESS]: _ref5 => {
103
+ let {
104
+ action,
105
+ dispatch
106
+ } = _ref5;
107
+
108
+ if (action.metaData && action.metaData.isReOrder) {
109
+ dispatch({
110
+ type: SmartTableConstants.Events.REORDER_SUCCESS,
111
+ payload: action.payload
112
+ });
113
+ }
114
+ }
101
115
  };
102
116
  return mergeEventHandlers([defaultEventHandlers, ErrorEventHandlersFactory.create(), wrapped]);
103
117
  }
@@ -18,10 +18,15 @@ import SdkBehaviourFactory from "../../../sdk-behaviour/frameworks/SdkBehaviourF
18
18
  import ResourceNamesEnum from "../../../../bc/sdk/ResourceNamesEnum";
19
19
  import { sdkRegistry } from "../../../sdk/frameworks/SdkRegistry";
20
20
  import { SmartTableResource } from "../adapters/resources/SmartTableResource";
21
+ import { ClientActionResource } from "../../../client-actions/behaviour/zclient-actions/adapters/resources/ClientActionResource";
21
22
  sdkRegistry.registerResource({
22
23
  resourceName: ResourceNamesEnum.SMART_TABLE,
23
24
  resource: SmartTableResource
24
25
  });
26
+ sdkRegistry.registerResource({
27
+ resourceName: ResourceNamesEnum.CLIENT_ACTION,
28
+ resource: ClientActionResource
29
+ });
25
30
  import KeyboardControlBehaviourFactory from "../../../../library/behaviours/keyboard-controls/frameworks/KeyboardControlBehaviourFactory";
26
31
 
27
32
  function combineDataSourceWithDefault(dataSource) {
@@ -62,7 +67,7 @@ export default class TableConnectedFactory {
62
67
  }
63
68
 
64
69
  static getBehaviours(_dataSource) {
65
- return [SdkBehaviourFactory.create([ResourceNamesEnum.SMART_TABLE]), TableColumnResizerBehaviorFactory.create(), KeyboardControlBehaviourFactory.create(), LocalStorageBehaviourFactory.create(), ZHttpBehaviourFactory.create(), DataSourceBehaviourFactory.create(), ...TableConnectedFactory.getPlatformBehaviours(_dataSource), ColumnChooserBehaviourFactory.create(), ListItemSelectionBehaviourFactory.create()];
70
+ return [SdkBehaviourFactory.create([ResourceNamesEnum.SMART_TABLE, ResourceNamesEnum.CLIENT_ACTION]), TableColumnResizerBehaviorFactory.create(), KeyboardControlBehaviourFactory.create(), LocalStorageBehaviourFactory.create(), ZHttpBehaviourFactory.create(), DataSourceBehaviourFactory.create(), ...TableConnectedFactory.getPlatformBehaviours(_dataSource), ColumnChooserBehaviourFactory.create(), ListItemSelectionBehaviourFactory.create()];
66
71
  }
67
72
 
68
73
  static getPlatformBehaviours(_dataSource) {
@@ -1,6 +1,6 @@
1
1
  const deleteRecords = {
2
2
  name: 'records',
3
- api: '/{{servicePrefix}}/{{orgName}}/api/v1/{{moduleName}}/moveToTrash',
3
+ api: '/{{servicePrefix}}/{{orgName}}/api/v1/records/deleteMany',
4
4
  parameters: `{}`,
5
5
  type: 'POST',
6
6
  transformer: data => data,
@@ -1,10 +1,11 @@
1
1
  // Assuming GetTemplate interface is similar to PatchTemplate
2
+ import { transFormValidationRules } from "../utils/validation-rules/TransFormValidationRules";
2
3
  const fetchValidationRules = {
3
4
  name: 'fetchValidationRules',
4
5
  api: '/{{servicePrefix}}/{{orgName}}/api/v1/layouts/{{layoutId}}/validationRules',
5
6
  parameters: `{"activeRulesOnly":{{activeRulesOnly}}}`,
6
7
  type: 'GET',
7
- transformer: data => data,
8
+ transformer: transFormValidationRules,
8
9
  properties: {
9
10
  layoutId: {
10
11
  required: true,
@@ -4,8 +4,8 @@ let getClientActions = {
4
4
  parameters: `{
5
5
  "from":{{from}},
6
6
  "limit":{{limit}},
7
- "component": "{{component}}",
8
- "module": "{{moduleName}}"
7
+ "components": "{{components}}",
8
+ "modules": "{{modules}}"
9
9
  }`,
10
10
  type: 'GET',
11
11
  transformer: data => data,
@@ -0,0 +1,28 @@
1
+ const moveToTrash = {
2
+ name: 'records',
3
+ api: '/{{servicePrefix}}/{{orgName}}/api/v1/{{moduleName}}/moveToTrash',
4
+ parameters: `{}`,
5
+ type: 'POST',
6
+ transformer: data => data,
7
+ requestBody: '{ "recordIds": {{recordIds}} }',
8
+ // REVIEW: Is `entityIds` applicable to all modules? To be confirmed with backend team
9
+ properties: {
10
+ moduleName: {
11
+ required: true,
12
+ typeMetadata: {
13
+ schema: {
14
+ type: 'string'
15
+ }
16
+ }
17
+ },
18
+ recordIds: {
19
+ required: true,
20
+ typeMetadata: {
21
+ schema: {
22
+ type: 'array'
23
+ }
24
+ }
25
+ }
26
+ }
27
+ };
28
+ export default moveToTrash;
@@ -8,6 +8,7 @@ import getClientActions from "./http-template/getClientActions";
8
8
  import reOrderRecord from "./http-template/reOrderRecord";
9
9
  import { RecordApiActionName } from "../../bc/zrecord/Constants";
10
10
  import deleteRecord from "./http-template/deleteRecord";
11
+ import moveToTrash from "./http-template/moveToTrash";
11
12
  import fetchMyLayouts from "./http-template/fetchMyFormLayout";
12
13
  import fetchMyForm from "./http-template/fetchMyForm";
13
14
  import fetchLayoutRules from "./http-template/fetchLayoutRules";
@@ -19,6 +20,7 @@ let dataSource = {
19
20
  httpTemplates: {
20
21
  [RecordApiActionName.GET_RECORDS]: getRecords,
21
22
  [RecordApiActionName.UPDATE_RECORD]: updateRecord,
23
+ [RecordApiActionName.MOVE_TO_TRASH]: moveToTrash,
22
24
  [RecordApiActionName.DELETE_RECORDS]: deleteRecords,
23
25
  [RecordApiActionName.DELETE_RECORD]: deleteRecord,
24
26
  [RecordApiActionName.CREATE_RECORD]: createRecord,
@@ -0,0 +1,167 @@
1
+ import { BooleanValidationConditions, TextValidationConditions } from "../../../zform/domain/interfaces/ValidationConditions";
2
+ import { i18NProviderUtils } from '@zohodesk/i18n';
3
+ import { ValidationEvents } from "../../../zform/domain/interfaces/IZForm";
4
+ export function MandatoryCondition(field) {
5
+ const {
6
+ apiName,
7
+ i18NLabel,
8
+ isMandatory
9
+ } = field;
10
+ const mandatoryCondition = {
11
+ name: 'Field - Cannot be empty',
12
+ executeOn: [ValidationEvents.blur],
13
+ pattern: '1',
14
+ conditions: [{
15
+ condition: TextValidationConditions.IsEmpty,
16
+ // ["${NOTEMPTY}"]
17
+ fieldName: apiName,
18
+ value: ['${EMPTY}']
19
+ }],
20
+ actions: {
21
+ alert: i18NProviderUtils.getI18NValue('crm.field.empty.check', [i18NLabel])
22
+ }
23
+ };
24
+ return isMandatory ? mandatoryCondition : null;
25
+ }
26
+ export function BooleanMandatoryCondition(field) {
27
+ const {
28
+ apiName,
29
+ i18NLabel,
30
+ isMandatory
31
+ } = field;
32
+ const mandatoryCondition = {
33
+ name: 'Boolean Field - Cannot be empty',
34
+ executeOn: [ValidationEvents.blur],
35
+ pattern: '1',
36
+ conditions: [{
37
+ condition: BooleanValidationConditions.Is,
38
+ fieldName: apiName,
39
+ value: ['false']
40
+ }],
41
+ actions: {
42
+ alert: i18NProviderUtils.getI18NValue('crm.field.empty.check', [i18NLabel])
43
+ }
44
+ };
45
+ return isMandatory ? mandatoryCondition : null;
46
+ }
47
+ export function MaxLengthCondition(field) {
48
+ const {
49
+ apiName,
50
+ i18NLabel,
51
+ maxLength
52
+ } = field;
53
+ const maxLengthCondition = {
54
+ name: 'Field - Max Length Exceeded',
55
+ executeOn: [ValidationEvents.blur],
56
+ pattern: '1',
57
+ conditions: [{
58
+ condition: TextValidationConditions.IsNot,
59
+ fieldName: apiName,
60
+ value: [`maxLength:/(${btoa(`.{0,${maxLength}}`)})/`]
61
+ }],
62
+ actions: {
63
+ alert: i18NProviderUtils.getI18NValue('support.form.more.than.max.length', [i18NLabel, maxLength])
64
+ }
65
+ };
66
+ return maxLength ? maxLengthCondition : null;
67
+ }
68
+ export function CustomMaxLengthCondition(field) {
69
+ const {
70
+ maxLength
71
+ } = field;
72
+ const maxLengthCondition = {
73
+ executeOn: [ValidationEvents.blur],
74
+ validator: {
75
+ scriptId: 'maxLengthValidation'
76
+ }
77
+ };
78
+ return maxLength ? maxLengthCondition : null;
79
+ }
80
+ export function EmailCondition() {
81
+ return {
82
+ executeOn: [ValidationEvents.blur],
83
+ validator: {
84
+ scriptId: 'emailValidation'
85
+ }
86
+ };
87
+ }
88
+ export function PhoneCondition() {
89
+ return {
90
+ executeOn: [ValidationEvents.blur],
91
+ validator: {
92
+ scriptId: 'phoneValidation'
93
+ }
94
+ };
95
+ }
96
+ export function NumberCondition() {
97
+ return {
98
+ executeOn: [ValidationEvents.blur],
99
+ validator: {
100
+ scriptId: 'numberValidation'
101
+ }
102
+ };
103
+ }
104
+ export function DecimalCondition() {
105
+ return {
106
+ executeOn: [ValidationEvents.blur],
107
+ validator: {
108
+ scriptId: 'decimalValidation'
109
+ }
110
+ };
111
+ }
112
+ export function DecimalPlacesCondition(field) {
113
+ const {
114
+ decimalPlaces
115
+ } = field;
116
+ const decimalPlacesCondition = {
117
+ executeOn: [ValidationEvents.blur],
118
+ validator: {
119
+ scriptId: 'decimalPlacesValidation'
120
+ }
121
+ };
122
+ return decimalPlaces ? decimalPlacesCondition : null;
123
+ }
124
+ export function DateCondition() {
125
+ return {
126
+ executeOn: [ValidationEvents.blur],
127
+ validator: {
128
+ scriptId: 'dateValidation'
129
+ }
130
+ };
131
+ }
132
+ export function CustomMandatoryCondition(field) {
133
+ const {
134
+ isMandatory
135
+ } = field;
136
+ const mandatoryCondition = {
137
+ executeOn: [ValidationEvents.blur],
138
+ validator: {
139
+ scriptId: 'customMandatoryValidation'
140
+ }
141
+ };
142
+ return isMandatory ? mandatoryCondition : null;
143
+ }
144
+ export function PicklistMandatoryCondition(field) {
145
+ const {
146
+ isMandatory
147
+ } = field;
148
+ const mandatoryCondition = {
149
+ executeOn: [ValidationEvents.blur],
150
+ validator: {
151
+ scriptId: 'picklistMandatoryValidation'
152
+ }
153
+ };
154
+ return isMandatory ? mandatoryCondition : null;
155
+ }
156
+ export function MultiSelectMandatoryCondition(field) {
157
+ const {
158
+ isMandatory
159
+ } = field;
160
+ const mandatoryCondition = {
161
+ executeOn: [ValidationEvents.blur],
162
+ validator: {
163
+ scriptId: 'multiSelectMandatoryValidation'
164
+ }
165
+ };
166
+ return isMandatory ? mandatoryCondition : null;
167
+ }
@@ -0,0 +1,93 @@
1
+ import { BooleanMandatoryCondition, CustomMandatoryCondition, CustomMaxLengthCondition, DateCondition, DecimalCondition, DecimalPlacesCondition, EmailCondition, MandatoryCondition, MaxLengthCondition, MultiSelectMandatoryCondition, NumberCondition, PhoneCondition, PicklistMandatoryCondition } from "./FieldConditions";
2
+ export function transFormValidationRules(validationRulesRes, _ref) {
3
+ let {
4
+ fields
5
+ } = _ref;
6
+ const validationRules = validationRulesRes.data;
7
+ const fieldValidationRules = fields.map(getBasicValidationRulesForField);
8
+ return {
9
+ data: [...fieldValidationRules, ...validationRules]
10
+ };
11
+ }
12
+ const map = {
13
+ Text: TextFieldConditions,
14
+ Textarea: TextFieldConditions,
15
+ Email: EmailFieldConditions,
16
+ URL: URLFieldConditions,
17
+ Phone: PhoneFieldConditions,
18
+ Boolean: BooleanFieldConditions,
19
+ Number: NumberFieldConditions,
20
+ Percent: PercentFieldConditions,
21
+ Currency: CurrencyFieldConditions,
22
+ Decimal: DecimalFieldConditions,
23
+ Date: DateFieldConditions,
24
+ DateTime: DateTimeFieldConditions,
25
+ Picklist: PicklistFieldConditions,
26
+ Multiselect: MultiSelectFieldConditions
27
+ };
28
+ export function getBasicValidationRulesForField(field) {
29
+ const {
30
+ apiName,
31
+ type
32
+ } = field;
33
+ const getFieldConditions = map[type];
34
+ return {
35
+ fieldName: apiName,
36
+ id: `vr_${apiName}_1`,
37
+ layoutId: '',
38
+ status: 'ACTIVE',
39
+ fieldConditions: getFieldConditions(field).filter(Boolean)
40
+ };
41
+ }
42
+
43
+ function TextFieldConditions(field) {
44
+ return [MandatoryCondition(field), MaxLengthCondition(field)];
45
+ }
46
+
47
+ function EmailFieldConditions(field) {
48
+ return [MandatoryCondition(field), MaxLengthCondition(field), EmailCondition()];
49
+ }
50
+
51
+ function URLFieldConditions(field) {
52
+ return [MandatoryCondition(field), MaxLengthCondition(field)];
53
+ }
54
+
55
+ function PhoneFieldConditions(field) {
56
+ return [MandatoryCondition(field), MaxLengthCondition(field), PhoneCondition()];
57
+ }
58
+
59
+ function BooleanFieldConditions(field) {
60
+ return [BooleanMandatoryCondition(field)];
61
+ }
62
+
63
+ function NumberFieldConditions(field) {
64
+ return [CustomMandatoryCondition(field), CustomMaxLengthCondition(field), NumberCondition()];
65
+ }
66
+
67
+ function DecimalFieldConditions(field) {
68
+ return [CustomMandatoryCondition(field), CustomMaxLengthCondition(field), DecimalCondition(), DecimalPlacesCondition(field)];
69
+ }
70
+
71
+ function CurrencyFieldConditions(field) {
72
+ return [CustomMandatoryCondition(field), CustomMaxLengthCondition(field), DecimalCondition(), DecimalPlacesCondition(field)];
73
+ }
74
+
75
+ function PercentFieldConditions(field) {
76
+ return [CustomMandatoryCondition(field), CustomMaxLengthCondition(field), DecimalCondition(), DecimalPlacesCondition(field)];
77
+ }
78
+
79
+ function DateFieldConditions(field) {
80
+ return [CustomMandatoryCondition(field), DateCondition()];
81
+ }
82
+
83
+ function DateTimeFieldConditions(field) {
84
+ return [CustomMandatoryCondition(field), DateCondition()];
85
+ }
86
+
87
+ function PicklistFieldConditions(field) {
88
+ return [PicklistMandatoryCondition(field)];
89
+ }
90
+
91
+ function MultiSelectFieldConditions(field) {
92
+ return [MultiSelectMandatoryCondition(field)];
93
+ }
@@ -13,6 +13,13 @@ export const platformSDK = {
13
13
  resourceName: ResourceNamesEnum.SMART_FORM,
14
14
  instanceName: instanceName
15
15
  });
16
+ },
17
+
18
+ [ResourceNamesEnum.CLIENT_ACTION](instanceName) {
19
+ return sdkRegistry.getResourceInstance({
20
+ resourceName: ResourceNamesEnum.CLIENT_ACTION,
21
+ instanceName
22
+ });
16
23
  }
17
24
 
18
25
  };
@@ -18,7 +18,7 @@ class SuccessUseCase extends AbstractUseCase {
18
18
 
19
19
  if (dataSource.isMetaHasDataSourceSignature(metaData)) {
20
20
  const transformer = dataSource.getTransformer(actionName);
21
- const transformedResponse = transformer(response);
21
+ const transformedResponse = transformer(response, metaData.transformerArg);
22
22
  const events = dataSource.createSuccessEvents(transformedResponse, metaData);
23
23
  events.forEach(action => {
24
24
  dispatch(action);
@@ -0,0 +1,26 @@
1
+ import AbstractController from "./AbstractController";
2
+
3
+ class FieldBlurController extends AbstractController {
4
+ handle(event) {
5
+ const {
6
+ fieldBlurUseCase
7
+ } = this.service;
8
+ const {
9
+ state,
10
+ updateState,
11
+ action,
12
+ dispatch
13
+ } = event;
14
+ const {
15
+ fieldName
16
+ } = action.payload;
17
+ fieldBlurUseCase.updateDependency(state, updateState);
18
+ fieldBlurUseCase.execute({
19
+ fieldName,
20
+ dispatch
21
+ });
22
+ }
23
+
24
+ }
25
+
26
+ export default FieldBlurController;
@@ -5,16 +5,22 @@ class MyFormSuccessController extends AbstractController {
5
5
  const {
6
6
  myFormSuccessUseCase
7
7
  } = this.service;
8
- let {
8
+ const {
9
9
  state,
10
10
  updateState,
11
11
  action,
12
12
  dispatch
13
13
  } = event;
14
+ const {
15
+ disableValidationRule,
16
+ disableLayoutRule
17
+ } = state.properties;
14
18
  myFormSuccessUseCase.updateDependency(state, updateState);
15
19
  myFormSuccessUseCase.execute({
16
20
  dispatch,
17
- myForm: action.payload.response
21
+ myForm: action.payload.response,
22
+ disableValidationRule,
23
+ disableLayoutRule
18
24
  });
19
25
  }
20
26
 
@@ -0,0 +1,21 @@
1
+ import AbstractController from "./AbstractController";
2
+
3
+ class SubmitValidationCompletedController extends AbstractController {
4
+ handle(event) {
5
+ const {
6
+ submitValidationCompletedUseCase
7
+ } = this.service;
8
+ const {
9
+ state,
10
+ updateState,
11
+ dispatch
12
+ } = event;
13
+ submitValidationCompletedUseCase.updateDependency(state, updateState);
14
+ submitValidationCompletedUseCase.execute({
15
+ dispatch
16
+ });
17
+ }
18
+
19
+ }
20
+
21
+ export default SubmitValidationCompletedController;