@zohodesk/library-platform 1.1.8 → 1.1.9
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,23 +1,89 @@
|
|
|
1
|
-
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
3
|
+
import getValidationRuleActionsData from "./validationRules";
|
|
4
|
+
import * as defaultCustomValidators from "./DefaultCustomValidators"; //need to move to gateway in adapter
|
|
2
5
|
|
|
3
6
|
export default class Validator {
|
|
4
|
-
constructor(
|
|
5
|
-
this
|
|
7
|
+
constructor() {
|
|
8
|
+
_defineProperty(this, "customValidators", defaultCustomValidators);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
init(state) {
|
|
12
|
+
this.customValidators = { ...defaultCustomValidators,
|
|
13
|
+
...state.properties.customValidators
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
customValidationRunner(_ref) {
|
|
18
|
+
let {
|
|
19
|
+
fieldCondition,
|
|
20
|
+
fieldName,
|
|
21
|
+
formValues,
|
|
22
|
+
fieldDetails,
|
|
23
|
+
fieldNameMap2Field
|
|
24
|
+
} = _ref;
|
|
25
|
+
const {
|
|
26
|
+
customValidators
|
|
27
|
+
} = this;
|
|
28
|
+
const {
|
|
29
|
+
validator
|
|
30
|
+
} = fieldCondition;
|
|
31
|
+
const {
|
|
32
|
+
scriptId
|
|
33
|
+
} = validator;
|
|
34
|
+
const field = fieldNameMap2Field[fieldName];
|
|
35
|
+
|
|
36
|
+
if (scriptId && customValidators[scriptId]) {
|
|
37
|
+
const script = customValidators[scriptId];
|
|
38
|
+
|
|
39
|
+
function handleResult(result) {
|
|
40
|
+
if (result && result.type === 'fail') {
|
|
41
|
+
var _result$action;
|
|
42
|
+
|
|
43
|
+
const errorMessage = typeof result.message === 'string' ? result.message : (_result$action = result.action) === null || _result$action === void 0 ? void 0 : _result$action.message;
|
|
44
|
+
return {
|
|
45
|
+
fieldName,
|
|
46
|
+
actions: {
|
|
47
|
+
alert: errorMessage
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const arg = {
|
|
56
|
+
value: formValues[fieldName],
|
|
57
|
+
fieldId: field.id,
|
|
58
|
+
fieldCondition,
|
|
59
|
+
fieldName,
|
|
60
|
+
field
|
|
61
|
+
};
|
|
62
|
+
return script(arg).then(handleResult).catch(handleResult);
|
|
63
|
+
} else {
|
|
64
|
+
console.warn(`Custom validator "${scriptId}" not found in customValidators`, customValidators);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return null;
|
|
6
68
|
}
|
|
7
69
|
|
|
8
|
-
validateAsync(
|
|
70
|
+
validateAsync(_ref2) {
|
|
9
71
|
let {
|
|
10
72
|
formData,
|
|
11
73
|
myForm,
|
|
12
74
|
validationRules
|
|
13
|
-
} =
|
|
14
|
-
|
|
15
|
-
|
|
75
|
+
} = _ref2;
|
|
76
|
+
const fieldDetails = {};
|
|
77
|
+
const fieldMapper = {};
|
|
78
|
+
const fieldNameMap2Field = {};
|
|
16
79
|
const formUIData = {};
|
|
80
|
+
const formValues = {};
|
|
17
81
|
myForm.sections.forEach(section => {
|
|
18
82
|
section.fields.forEach(field => {
|
|
19
83
|
fieldDetails[field.id] = field;
|
|
84
|
+
fieldNameMap2Field[field.apiName] = field;
|
|
20
85
|
fieldMapper[field.apiName] = field.id;
|
|
86
|
+
formValues[field.apiName] = formData[field.apiName].value;
|
|
21
87
|
formUIData[field.id] = { ...field,
|
|
22
88
|
value: formData[field.apiName].value || null,
|
|
23
89
|
isShowOnLayoutRuleApplied: true //hack
|
|
@@ -29,16 +95,32 @@ export default class Validator {
|
|
|
29
95
|
fieldDetails,
|
|
30
96
|
fieldMapper
|
|
31
97
|
};
|
|
32
|
-
let result = getValidationRuleActionsData(validationRules, formUIData, formFields, this.customValidators);
|
|
33
|
-
let output = {};
|
|
34
|
-
Object.keys(result.data).forEach(key => {
|
|
35
|
-
if (!output[fieldDetails[key].apiName]) {
|
|
36
|
-
output[fieldDetails[key].apiName] = {};
|
|
37
|
-
}
|
|
38
98
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
99
|
+
const customValidationRunnerWrapper = _ref3 => {
|
|
100
|
+
let {
|
|
101
|
+
fieldCondition,
|
|
102
|
+
fieldName
|
|
103
|
+
} = _ref3;
|
|
104
|
+
return this.customValidationRunner({
|
|
105
|
+
fieldCondition,
|
|
106
|
+
fieldName,
|
|
107
|
+
formValues,
|
|
108
|
+
fieldDetails,
|
|
109
|
+
fieldNameMap2Field
|
|
110
|
+
});
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
return getValidationRuleActionsData(validationRules, formUIData, formFields, customValidationRunnerWrapper).then(result => {
|
|
114
|
+
const output = {};
|
|
115
|
+
Object.keys(result.data).forEach(key => {
|
|
116
|
+
if (!output[fieldDetails[key].apiName]) {
|
|
117
|
+
output[fieldDetails[key].apiName] = {};
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
output[fieldDetails[key].apiName].errorMessage = result.data[key].validationRuleMessage;
|
|
121
|
+
});
|
|
122
|
+
return Promise.resolve(output);
|
|
123
|
+
}); // throw new Error("Method not implemented.");
|
|
42
124
|
}
|
|
43
125
|
|
|
44
126
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export function getLocalizedFunction() {
|
|
2
|
+
let initialArg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
3
|
+
return function () {
|
|
4
|
+
let args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
5
|
+
return getLocalizedValue({ ...args,
|
|
6
|
+
...initialArg
|
|
7
|
+
});
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export function getLocalizedValue() {
|
|
11
|
+
let {
|
|
12
|
+
fieldValue
|
|
13
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
14
|
+
return fieldValue;
|
|
15
|
+
}
|