@zohodesk/library-platform 1.1.7-exp.2 → 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.
- package/es/bc/zfield/FieldApiTypes.js +20 -0
- package/es/bc/zform/Properties.js +9 -0
- package/es/bc/zform/Symbol.js +5 -0
- package/es/bc/zlist/Properties.js +3 -0
- package/es/bc/zrecord/Constants.js +2 -0
- package/es/cc/date/Properties.js +9 -0
- package/es/cc/fields/field/Properties.js +63 -0
- package/es/cc/fields/multi-select/Properties.js +9 -0
- package/es/cc/fields/pick-list/Properties.js +9 -0
- package/es/cc/form/Properties.js +17 -0
- package/es/cc/form-connected/Properties.js +35 -0
- package/es/cc/form-connected/SdkContract.js +61 -0
- package/es/cc/form-connected/index.js +2 -0
- package/es/cc/highlighted-value/Properties.js +10 -0
- package/es/cc/index.js +1 -1
- package/es/cc/multi-select/Properties.js +9 -0
- package/es/cc/select/Properties.js +12 -0
- package/es/cc/textbox/Properties.js +11 -0
- package/es/index.js +2 -1
- package/es/library/behaviours/field-focus/frameworks/ui/EventHandlersFactory.js +26 -0
- package/es/library/behaviours/field-focus/frameworks/ui/FocusFieldBehaviourFactory.js +20 -0
- package/es/library/dot/components/action-location/frameworks/ui/ActionComponentMapping.js +3 -1
- package/es/library/dot/components/form/adapters/presenter/TransformState.js +5 -58
- package/es/library/dot/components/form/frameworks/ui/DefaultComponentRegister.js +0 -4
- package/es/library/dot/components/form/frameworks/ui/FormView.js +18 -42
- package/es/library/dot/components/form/frameworks/ui/css/Form.module.css +29 -1
- package/es/library/dot/components/form/frameworks/ui/sub-components/Footer.js +27 -0
- package/es/library/dot/components/form/frameworks/ui/sub-components/Header.js +24 -0
- package/es/library/dot/components/form/frameworks/ui/sub-components/MiddleSection.js +24 -0
- package/es/library/dot/components/form/frameworks/ui/sub-components/Sections.js +7 -2
- package/es/library/dot/components/form/frameworks/ui/sub-components/SectionsLayout.js +20 -0
- package/es/library/dot/components/form/frameworks/ui/sub-components/SectionsWithRightPanelLayout.js +42 -0
- package/es/library/dot/components/form-fields/checkbox/frameworks/ui/Checkbox.js +4 -3
- package/es/library/dot/components/form-fields/checkbox/frameworks/ui/CheckboxView.js +18 -14
- package/es/library/dot/components/form-fields/currency/frameworks/ui/Currency.js +3 -3
- package/es/library/dot/components/form-fields/currency/frameworks/ui/CurrencyView.js +20 -17
- package/es/library/dot/components/form-fields/date/frameworks/ui/Date.js +2 -3
- package/es/library/dot/components/form-fields/date/frameworks/ui/DateView.js +22 -19
- package/es/library/dot/components/form-fields/datetime/frameworks/ui/DateTime.js +2 -3
- package/es/library/dot/components/form-fields/datetime/frameworks/ui/DateTimeView.js +21 -18
- package/es/library/dot/components/form-fields/decimal/frameworks/ui/Decimal.js +2 -3
- package/es/library/dot/components/form-fields/decimal/frameworks/ui/DecimalView.js +22 -19
- package/es/library/dot/components/form-fields/email/frameworks/ui/Email.js +2 -3
- package/es/library/dot/components/form-fields/email/frameworks/ui/EmailView.js +22 -19
- package/es/library/dot/components/form-fields/field/FieldItem.js +36 -0
- package/es/library/dot/components/form-fields/field/css/FieldItem.module.css +13 -0
- package/es/library/dot/components/form-fields/multi-select/frameworks/ui/MultiSelect.js +2 -3
- package/es/library/dot/components/form-fields/multi-select/frameworks/ui/MultiSelectView.js +21 -18
- package/es/library/dot/components/form-fields/number/frameworks/ui/Number.js +2 -3
- package/es/library/dot/components/form-fields/number/frameworks/ui/NumberView.js +22 -19
- package/es/library/dot/components/form-fields/percentage/frameworks/ui/Percentage.js +2 -3
- package/es/library/dot/components/form-fields/percentage/frameworks/ui/PercentageView.js +22 -19
- package/es/library/dot/components/form-fields/phone/frameworks/ui/Phone.js +2 -3
- package/es/library/dot/components/form-fields/phone/frameworks/ui/PhoneView.js +22 -19
- package/es/library/dot/components/form-fields/pick-list/frameworks/ui/PickList.js +2 -3
- package/es/library/dot/components/form-fields/pick-list/frameworks/ui/PickListView.js +21 -18
- package/es/library/dot/components/form-fields/textarea/frameworks/ui/TextArea.js +4 -3
- package/es/library/dot/components/form-fields/textarea/frameworks/ui/TextAreaView.js +18 -17
- package/es/library/dot/components/form-fields/textbox/frameworks/ui/TextBox.js +2 -3
- package/es/library/dot/components/form-fields/textbox/frameworks/ui/TextBoxView.js +21 -18
- package/es/library/dot/components/form-fields/url/frameworks/ui/Url.js +2 -3
- package/es/library/dot/components/form-fields/url/frameworks/ui/UrlView.js +22 -19
- package/es/library/dot/components/table-list/frameworks/ui/sub-components/ErrorState.js +3 -3
- package/es/library/dot/legacy-to-new-arch/action-icon/frameworks/ui/ActionIconView.js +1 -1
- package/es/library/dot/legacy-to-new-arch/date/frameworks/ui/DateView.js +13 -1
- package/es/library/dot/legacy-to-new-arch/highlighted-value/frameworks/ui/HighlightedValueView.js +6 -1
- 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
- package/es/library/dot/legacy-to-new-arch/label/frameworks/ui/LabelView.js +13 -7
- package/es/library/dot/legacy-to-new-arch/multi-select/frameworks/ui/MultiSelectView.js +12 -2
- package/es/library/dot/legacy-to-new-arch/select/frameworks/ui/SelectView.js +16 -4
- package/es/library/dot/legacy-to-new-arch/text-area/frameworks/ui/TextAreaView.js +1 -1
- package/es/library/dot/legacy-to-new-arch/textbox/frameworks/ui/TextBoxView.js +13 -3
- package/es/platform/client-actions/cc/dynamic-action-component/Properties.js +1 -1
- package/es/platform/components/form-connected/adapters/resources/SmartFormResources.js +88 -6
- package/es/platform/components/form-connected/frameworks/EventHandlersFactory.js +28 -56
- package/es/platform/components/form-connected/frameworks/FormConnectedFactory.js +1 -5
- package/es/platform/components/form-connected/frameworks/FormConnectedView.js +3 -1
- package/es/platform/data-source/http-template/deleteRecords.js +1 -1
- package/es/platform/data-source/http-template/fetchValidationRules.js +2 -1
- package/es/platform/data-source/http-template/moveToTrash.js +28 -0
- package/es/platform/data-source/index.js +2 -0
- package/es/platform/data-source/utils/validation-rules/FieldConditions.js +167 -0
- package/es/platform/data-source/utils/validation-rules/TransFormValidationRules.js +93 -0
- package/es/platform/zdata-source/applications/usecases/SuccessUseCase.js +1 -1
- package/es/platform/zform/adapters/controllers/FieldBlurController.js +26 -0
- package/es/platform/zform/adapters/controllers/MyFromSuccessController.js +8 -2
- package/es/platform/zform/adapters/controllers/SubmitValidationCompletedController.js +21 -0
- package/es/platform/zform/adapters/controllers/ValidateFieldRequestController.js +10 -5
- package/es/platform/zform/adapters/controllers/ValidationRulesExecutionResultController.js +23 -0
- package/es/platform/zform/adapters/controllers/ValidationRulesRequestController.js +2 -4
- package/es/platform/zform/adapters/controllers/ValidationRulesSuccessController.js +2 -4
- package/es/platform/zform/adapters/gateway/Service.js +15 -7
- package/es/platform/zform/adapters/presenter/FormTranslator.js +28 -3
- package/es/platform/zform/adapters/presenter/translators/SectionTranslator.js +54 -3
- package/es/platform/zform/adapters/presenter/translators/fields/BooleanFieldTranslator.js +7 -3
- package/es/platform/zform/adapters/presenter/translators/fields/CurrencyFieldTranslator.js +5 -9
- package/es/platform/zform/adapters/presenter/translators/fields/DateFieldTranslator.js +7 -3
- package/es/platform/zform/adapters/presenter/translators/fields/DateTimeFieldTranslator.js +7 -3
- package/es/platform/zform/adapters/presenter/translators/fields/DecimalFieldTranslator.js +6 -9
- package/es/platform/zform/adapters/presenter/translators/fields/EmailFieldTranslator.js +6 -9
- package/es/platform/zform/adapters/presenter/translators/fields/LookUpFieldTranslator.js +5 -9
- package/es/platform/zform/adapters/presenter/translators/fields/MultiselectFieldTranslator.js +6 -3
- package/es/platform/zform/adapters/presenter/translators/fields/NumberFieldTranslator.js +6 -9
- package/es/platform/zform/adapters/presenter/translators/fields/PercentageFieldTranslator.js +6 -9
- package/es/platform/zform/adapters/presenter/translators/fields/PhoneFieldTranslator.js +6 -9
- package/es/platform/zform/adapters/presenter/translators/fields/PicklistFieldTranslator.js +6 -3
- package/es/platform/zform/adapters/presenter/translators/fields/TextAreaFieldTranslator.js +5 -9
- package/es/platform/zform/adapters/presenter/translators/fields/TextFieldTranslator.js +8 -8
- package/es/platform/zform/adapters/presenter/translators/fields/URLFieldTranslator.js +6 -9
- package/es/platform/zform/adapters/presenter/utils/DefaultClientActions.js +92 -22
- package/es/platform/zform/applications/usecases/AbstractUseCase.js +3 -1
- package/es/platform/zform/applications/usecases/FieldBlurUseCase.js +39 -0
- package/es/platform/zform/applications/usecases/FieldValueChangeRequestUseCase.js +9 -13
- package/es/platform/zform/applications/usecases/FocusFieldUseCase.js +19 -0
- package/es/platform/zform/applications/usecases/FormSubmitUseCase.js +19 -38
- package/es/platform/zform/applications/usecases/GetFieldErrorMessageUseCase.js +16 -0
- package/es/platform/zform/applications/usecases/InsertValidationRuleSuccessUseCase.js +22 -0
- package/es/platform/zform/applications/usecases/MyFormSuccessUseCase.js +63 -13
- package/es/platform/zform/applications/usecases/MyLayoutSuccessUseCase.js +4 -33
- package/es/platform/zform/applications/usecases/SetFieldErrorMessageUseCase.js +4 -4
- package/es/platform/zform/applications/usecases/SetFieldValueUseCase.js +4 -21
- package/es/platform/zform/applications/usecases/SetFieldsValuesUseCase.js +4 -26
- package/es/platform/zform/applications/usecases/SubmitValidationCompletedUseCase.js +62 -0
- package/es/platform/zform/applications/usecases/ValidateFieldUseCase.js +33 -0
- package/es/platform/zform/applications/usecases/ValidationRulesExecutionResultUseCase.js +23 -0
- package/es/platform/zform/domain/ZField.js +20 -1
- package/es/platform/zform/domain/ZForm.js +114 -45
- package/es/platform/zform/domain/interfaces/IZForm.js +5 -1
- package/es/platform/zform/domain/interfaces/ValidationConditions.js +142 -0
- package/es/platform/zform/frameworks/ui/EventHandlerFactory.js +22 -143
- package/es/platform/zform/frameworks/ui/ZFormBehaviourFactory.js +4 -9
- package/es/platform/zform/frameworks/validation-rules/DefaultCustomValidators.js +340 -0
- package/es/platform/zform/frameworks/validation-rules/Validator.js +98 -16
- package/es/platform/zform/frameworks/validation-rules/formUtils.js +7 -0
- package/es/platform/zform/frameworks/validation-rules/localization_utils.js +15 -0
- package/es/platform/zform/frameworks/validation-rules/utils.js +402 -351
- package/es/platform/zform/frameworks/validation-rules/validationRules.js +80 -79
- package/es/platform/zlist/domain/entities/List.js +2 -1
- package/package.json +4 -4
- package/es/bc/field-validation/Constants.js +0 -4
- package/es/bc/field-validation/EventHandlers.js +0 -1
- package/es/bc/field-validation/Events.js +0 -106
- package/es/bc/field-validation/FieldTypes.js +0 -20
- package/es/bc/field-validation/Properties.js +0 -11
- package/es/bc/field-validation/index.js +0 -5
- package/es/cc/ephi-tag/Properties.js +0 -1
- package/es/cc/ephi-tag/index.js +0 -1
- package/es/cc/info-icon/Properties.js +0 -10
- package/es/cc/info-icon/index.js +0 -1
- package/es/library/behaviours/field-validation/adapters/controllers/AbstractController.js +0 -9
- package/es/library/behaviours/field-validation/adapters/controllers/ValidateFieldController.js +0 -32
- package/es/library/behaviours/field-validation/adapters/controllers/ValidateFieldsController.js +0 -31
- package/es/library/behaviours/field-validation/adapters/gateway/Repository.js +0 -23
- package/es/library/behaviours/field-validation/adapters/gateway/Service.js +0 -18
- package/es/library/behaviours/field-validation/applications/interfaces/input/FieldData.js +0 -17
- package/es/library/behaviours/field-validation/applications/usecases/AbstractUseCase.js +0 -15
- package/es/library/behaviours/field-validation/applications/usecases/ValidateField.js +0 -29
- package/es/library/behaviours/field-validation/applications/usecases/ValidateFields.js +0 -28
- package/es/library/behaviours/field-validation/domain/FieldValidation.js +0 -94
- package/es/library/behaviours/field-validation/domain/field-vise-validations/BooleanValidation.js +0 -28
- package/es/library/behaviours/field-validation/domain/field-vise-validations/CurrencyValidation.js +0 -49
- package/es/library/behaviours/field-validation/domain/field-vise-validations/DateTimeValidation.js +0 -24
- package/es/library/behaviours/field-validation/domain/field-vise-validations/DateValidation.js +0 -24
- package/es/library/behaviours/field-validation/domain/field-vise-validations/DecimalValidation.js +0 -49
- package/es/library/behaviours/field-validation/domain/field-vise-validations/EmailValidation.js +0 -28
- package/es/library/behaviours/field-validation/domain/field-vise-validations/IntegerValidation.js +0 -39
- package/es/library/behaviours/field-validation/domain/field-vise-validations/LookUpValidation.js +0 -24
- package/es/library/behaviours/field-validation/domain/field-vise-validations/MultiSelectValidation.js +0 -26
- package/es/library/behaviours/field-validation/domain/field-vise-validations/PercentValidation.js +0 -28
- package/es/library/behaviours/field-validation/domain/field-vise-validations/PhoneValidation.js +0 -39
- package/es/library/behaviours/field-validation/domain/field-vise-validations/PicklistValidation.js +0 -24
- package/es/library/behaviours/field-validation/domain/field-vise-validations/TextAreaValidation.js +0 -39
- package/es/library/behaviours/field-validation/domain/field-vise-validations/TextBoxValidation.js +0 -39
- package/es/library/behaviours/field-validation/domain/field-vise-validations/URLValidation.js +0 -28
- package/es/library/behaviours/field-validation/domain/interfaces/FieldTypes.js +0 -20
- package/es/library/behaviours/field-validation/domain/interfaces/IFieldValidation.js +0 -1
- package/es/library/behaviours/field-validation/domain/interfaces/IFieldViseValidation.js +0 -1
- package/es/library/behaviours/field-validation/domain/interfaces/ValidationResult.js +0 -1
- package/es/library/behaviours/field-validation/domain/interfaces/ValidationsArray.js +0 -1
- package/es/library/behaviours/field-validation/domain/interfaces/ValidationsEnum.js +0 -22
- package/es/library/behaviours/field-validation/domain/interfaces/ValidationsMap.js +0 -1
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IBooleanField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/ICurrencyField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IDateField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IDateTimeField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IDecimalField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IEmailField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IIntegerField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/ILookUpField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IMultiSelectField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IPercentField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IPhoneField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IPicklistField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/ITextAreaField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/ITextBoxField.js +0 -0
- package/es/library/behaviours/field-validation/domain/interfaces/fields/IURLField.js +0 -0
- package/es/library/behaviours/field-validation/frameworks/ui/EventHandlerFactory.js +0 -23
- package/es/library/behaviours/field-validation/frameworks/ui/FieldValidationBehaviourFactory.js +0 -27
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/BooleanFieldValidation.test.js +0 -137
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/CurrencyFieldValidation.test.js +0 -228
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/DateFieldValidation.test.js +0 -108
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/DateTimeFieldValidation.test.js +0 -108
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/DecimalFieldValidation.test.js +0 -257
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/EmailFieldValidation.test.js +0 -139
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/FieldValidationBehaviour.test.js +0 -171
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/IntegerFieldValidation.test.js +0 -168
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/LookUpFieldValidation.test.js +0 -108
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/MultiSelectFieldValidation.test.js +0 -79
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/PercentFieldValidation.test.js +0 -108
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/PhoneFieldValidation.test.js +0 -168
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/PicklistFieldValidation.test.js +0 -79
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/TextAreaFieldValidation.test.js +0 -170
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/TextBoxFieldValidation.test.js +0 -170
- package/es/library/behaviours/field-validation/frameworks/ui/__tests__/URLFieldValidation.test.js +0 -108
- package/es/library/behaviours/field-validation/frameworks/utils/FormBasicValidationAdaptor.js +0 -228
- package/es/library/behaviours/field-validation/frameworks/utils/__tests__/formValidate.test.js +0 -284
- package/es/library/behaviours/field-validation/frameworks/utils/formValidate.js +0 -334
- package/es/library/dot/components/form-fields/checkbox/adapters/presenter/TransformState.js +0 -22
- package/es/library/dot/components/form-fields/currency/adapters/presenter/TransformState.js +0 -81
- package/es/library/dot/components/form-fields/date/adapters/presenter/TransformState.js +0 -22
- package/es/library/dot/components/form-fields/datetime/adapters/presenter/TransformState.js +0 -22
- package/es/library/dot/components/form-fields/decimal/adapters/presenter/TransformState.js +0 -31
- package/es/library/dot/components/form-fields/email/adapters/presenter/TransformState.js +0 -23
- package/es/library/dot/components/form-fields/ephi-tag/frameworks/ui/EPHITag.js +0 -10
- package/es/library/dot/components/form-fields/ephi-tag/frameworks/ui/EPHITagView.js +0 -21
- package/es/library/dot/components/form-fields/info-icon/frameworks/ui/InfoIcon.js +0 -10
- package/es/library/dot/components/form-fields/info-icon/frameworks/ui/InfoIconView.js +0 -21
- package/es/library/dot/components/form-fields/info-icon/frameworks/ui/css/InfoIcon.module.css +0 -3
- package/es/library/dot/components/form-fields/multi-select/adapters/presenter/TransformState.js +0 -31
- package/es/library/dot/components/form-fields/number/adapters/presenter/TransformState.js +0 -31
- package/es/library/dot/components/form-fields/percentage/adapters/presenter/TransformState.js +0 -31
- package/es/library/dot/components/form-fields/phone/adapters/presenter/TransformState.js +0 -31
- package/es/library/dot/components/form-fields/pick-list/adapters/presenter/TransformState.js +0 -23
- package/es/library/dot/components/form-fields/textarea/adapters/presenter/TransformState.js +0 -23
- package/es/library/dot/components/form-fields/textbox/adapters/presenter/TransformState.js +0 -32
- package/es/library/dot/components/form-fields/url/adapters/presenter/TransformState.js +0 -31
- package/es/platform/zform/adapters/controllers/ValidateErrorMessageController.js +0 -22
- package/es/platform/zform/applications/interfaces/input/ValidateErrorMessageInputModel.js +0 -1
- package/es/platform/zform/applications/usecases/ValidateErrorMessageUseCase.js +0 -33
- package/es/platform/zform/applications/usecases/ValidateFieldRequestUseCase.js +0 -56
- /package/es/{library/behaviours/field-validation/applications/interfaces/UseCaseDependencies.js → platform/zform/applications/interfaces/input/FieldBlurUsecaseInputModel.js} +0 -0
- /package/es/{library/behaviours/field-validation/applications/interfaces/gateways/IRepository.js → platform/zform/applications/interfaces/input/FocusFieldUseCaseInputModel.js} +0 -0
- /package/es/{library/behaviours/field-validation/applications/interfaces/gateways/IService.js → platform/zform/applications/interfaces/input/GetFieldErrorMessageInputModel.js} +0 -0
- /package/es/{library/behaviours/field-validation/applications/interfaces/input/FieldValidationInputModel.js → platform/zform/applications/interfaces/input/InsertValidationRuleInputModel.js} +0 -0
- /package/es/{library/behaviours/field-validation/domain/interfaces/IField.js → platform/zform/applications/interfaces/input/SubmitValidationCompletedUsecaseInputModel.js} +0 -0
- /package/es/{library/behaviours/field-validation/applications/interfaces/input/ValidateFieldsInputModel.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,32 @@ 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 {
|
|
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(),
|
|
95
67
|
...wrapped
|
|
96
68
|
};
|
|
97
69
|
}
|
|
@@ -7,7 +7,6 @@ import defaultDataSource from "../../../data-source";
|
|
|
7
7
|
import DataBrokerBehaviourFactory from "../../../zdata-source/frameworks/DataBrokerBehaviourFactory";
|
|
8
8
|
import FormTranslator from "../../../zform/adapters/presenter/FormTranslator";
|
|
9
9
|
import ZFormBehaviourFactory from "../../../zform/frameworks/ui/ZFormBehaviourFactory";
|
|
10
|
-
import FieldValidationBehaviourFactory from "../../../../library/behaviours/field-validation/frameworks/ui/FieldValidationBehaviourFactory";
|
|
11
10
|
import EventHandlersfactory from "./EventHandlersFactory";
|
|
12
11
|
import SdkBehaviourFactory from "../../../sdk-behaviour/frameworks/SdkBehaviourFactory";
|
|
13
12
|
import ResourceNamesEnum from "../../../../bc/sdk/ResourceNamesEnum";
|
|
@@ -32,7 +31,6 @@ export default class FormConnectedFactory {
|
|
|
32
31
|
static create(_ref) {
|
|
33
32
|
let {
|
|
34
33
|
name,
|
|
35
|
-
customValidators,
|
|
36
34
|
dataSource,
|
|
37
35
|
eventHandlers = {},
|
|
38
36
|
View = FormConnectedView
|
|
@@ -48,9 +46,7 @@ export default class FormConnectedFactory {
|
|
|
48
46
|
transformState: FormTranslator.transformState,
|
|
49
47
|
behaviours: [SdkBehaviourFactory.create([ResourceNamesEnum.SMART_FORM]), ClientActionsBehaviourFactory.create({
|
|
50
48
|
getClientActions: _dataSource.httpTemplates.getClientActions
|
|
51
|
-
}), ZHttpBehaviourFactory.create(), DataBrokerBehaviourFactory.create(), RecordBehaviourFactory.create(_dataSource.httpTemplates),
|
|
52
|
-
customValidators
|
|
53
|
-
})]
|
|
49
|
+
}), ZHttpBehaviourFactory.create(), DataBrokerBehaviourFactory.create(), RecordBehaviourFactory.create(_dataSource.httpTemplates), ZFormBehaviourFactory.create()]
|
|
54
50
|
});
|
|
55
51
|
}
|
|
56
52
|
|
|
@@ -9,6 +9,7 @@ function View(_ref, ref) {
|
|
|
9
9
|
const {
|
|
10
10
|
isLoading,
|
|
11
11
|
sections = [],
|
|
12
|
+
rightPanel,
|
|
12
13
|
isHeaderEnabled,
|
|
13
14
|
isFooterEnabled,
|
|
14
15
|
headerLeftActions,
|
|
@@ -25,7 +26,8 @@ function View(_ref, ref) {
|
|
|
25
26
|
headerLeftActions: headerLeftActions,
|
|
26
27
|
headerRightActions: headerRightActions,
|
|
27
28
|
footerLeftActions: footerLeftActions,
|
|
28
|
-
footerRightActions: footerRightActions
|
|
29
|
+
footerRightActions: footerRightActions,
|
|
30
|
+
rightPanel: rightPanel
|
|
29
31
|
});
|
|
30
32
|
}
|
|
31
33
|
|
|
@@ -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:
|
|
8
|
+
transformer: transFormValidationRules,
|
|
8
9
|
properties: {
|
|
9
10
|
layoutId: {
|
|
10
11
|
required: true,
|
|
@@ -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
|
+
}
|
|
@@ -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
|
-
|
|
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;
|
|
@@ -3,17 +3,22 @@ import AbstractController from "./AbstractController";
|
|
|
3
3
|
class ValidateFieldRequestController extends AbstractController {
|
|
4
4
|
handle(event) {
|
|
5
5
|
const {
|
|
6
|
-
|
|
6
|
+
validateFieldUseCase
|
|
7
7
|
} = this.service;
|
|
8
|
-
|
|
8
|
+
const {
|
|
9
9
|
state,
|
|
10
10
|
updateState,
|
|
11
11
|
action,
|
|
12
12
|
dispatch
|
|
13
13
|
} = event;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
const {
|
|
15
|
+
fieldName,
|
|
16
|
+
eventName
|
|
17
|
+
} = action.payload;
|
|
18
|
+
validateFieldUseCase.updateDependency(state, updateState);
|
|
19
|
+
validateFieldUseCase.execute({
|
|
20
|
+
fieldName,
|
|
21
|
+
eventName,
|
|
17
22
|
dispatch
|
|
18
23
|
});
|
|
19
24
|
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import AbstractController from "./AbstractController";
|
|
2
|
+
|
|
3
|
+
class ValidationRulesExecutionResultController extends AbstractController {
|
|
4
|
+
handle(event) {
|
|
5
|
+
const {
|
|
6
|
+
validationRulesExecutionResultUseCase
|
|
7
|
+
} = this.service;
|
|
8
|
+
const {
|
|
9
|
+
state,
|
|
10
|
+
updateState,
|
|
11
|
+
action,
|
|
12
|
+
dispatch
|
|
13
|
+
} = event;
|
|
14
|
+
validationRulesExecutionResultUseCase.updateDependency(state, updateState);
|
|
15
|
+
validationRulesExecutionResultUseCase.execute({
|
|
16
|
+
result: action.payload,
|
|
17
|
+
dispatch
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export default ValidationRulesExecutionResultController;
|
|
@@ -5,11 +5,9 @@ class ValidationRulesRequestController extends AbstractController {
|
|
|
5
5
|
const {
|
|
6
6
|
validationRulesRequestUseCase
|
|
7
7
|
} = this.service;
|
|
8
|
-
|
|
8
|
+
const {
|
|
9
9
|
state,
|
|
10
|
-
updateState
|
|
11
|
-
action,
|
|
12
|
-
dispatch
|
|
10
|
+
updateState
|
|
13
11
|
} = event;
|
|
14
12
|
validationRulesRequestUseCase.updateDependency(state, updateState);
|
|
15
13
|
validationRulesRequestUseCase.execute();
|
|
@@ -5,15 +5,13 @@ class ValidationRulesSuccessController extends AbstractController {
|
|
|
5
5
|
const {
|
|
6
6
|
validationRulesSuccessUseCase
|
|
7
7
|
} = this.service;
|
|
8
|
-
|
|
8
|
+
const {
|
|
9
9
|
state,
|
|
10
10
|
updateState,
|
|
11
|
-
action
|
|
12
|
-
dispatch
|
|
11
|
+
action
|
|
13
12
|
} = event;
|
|
14
13
|
validationRulesSuccessUseCase.updateDependency(state, updateState);
|
|
15
14
|
validationRulesSuccessUseCase.execute({
|
|
16
|
-
dispatch,
|
|
17
15
|
validationRules: action.payload.response.data
|
|
18
16
|
});
|
|
19
17
|
}
|