@redneckz/wildless-cms-uni-blocks 0.14.723 → 0.14.725
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/bundle/blocks.schema.json +1 -1
- package/bundle/bundle.umd.js +113 -130
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/ApplicationLeadForm/LeadFormState.d.ts +0 -1
- package/bundle/services/retail/adaptors/getFamilyStatusAndIncomeData.d.ts +1 -0
- package/bundle/ui-kit/DraftDialog/utils.d.ts +1 -1
- package/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -1
- package/bundle/ui-kit/FormField/validators.d.ts +2 -1
- package/dist/components/ApplicationForm/ApplicationForm.js +1 -3
- package/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
- package/dist/components/ApplicationLeadForm/LeadFormState.d.ts +0 -1
- package/dist/services/retail/adaptors/getFamilyStatusAndIncomeData.d.ts +1 -0
- package/dist/services/retail/adaptors/getFamilyStatusAndIncomeData.js +5 -3
- package/dist/services/retail/adaptors/getFamilyStatusAndIncomeData.js.map +1 -1
- package/dist/ui-kit/DraftDialog/utils.d.ts +1 -1
- package/dist/ui-kit/DraftDialog/utils.js +2 -1
- package/dist/ui-kit/DraftDialog/utils.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/RetirementIncomeField.js +1 -10
- package/dist/ui-kit/FormField/Fields/RetirementIncomeField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/WagesField.js +1 -10
- package/dist/ui-kit/FormField/Fields/WagesField.js.map +1 -1
- package/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -1
- package/dist/ui-kit/FormField/getObjectValidator.js +1 -1
- package/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/dist/ui-kit/FormField/validators.d.ts +2 -1
- package/dist/ui-kit/FormField/validators.js +5 -3
- package/dist/ui-kit/FormField/validators.js.map +1 -1
- package/lib/components/ApplicationForm/ApplicationForm.js +1 -3
- package/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
- package/lib/components/ApplicationLeadForm/LeadFormState.d.ts +0 -1
- package/lib/services/retail/adaptors/getFamilyStatusAndIncomeData.d.ts +1 -0
- package/lib/services/retail/adaptors/getFamilyStatusAndIncomeData.js +3 -2
- package/lib/services/retail/adaptors/getFamilyStatusAndIncomeData.js.map +1 -1
- package/lib/ui-kit/DraftDialog/utils.d.ts +1 -1
- package/lib/ui-kit/DraftDialog/utils.js +2 -1
- package/lib/ui-kit/DraftDialog/utils.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/RetirementIncomeField.js +1 -10
- package/lib/ui-kit/FormField/Fields/RetirementIncomeField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/WagesField.js +1 -10
- package/lib/ui-kit/FormField/Fields/WagesField.js.map +1 -1
- package/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -1
- package/lib/ui-kit/FormField/getObjectValidator.js +2 -2
- package/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/lib/ui-kit/FormField/validators.d.ts +2 -1
- package/lib/ui-kit/FormField/validators.js +3 -2
- package/lib/ui-kit/FormField/validators.js.map +1 -1
- package/mobile/bundle/bundle.umd.js +113 -130
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/ApplicationLeadForm/LeadFormState.d.ts +0 -1
- package/mobile/bundle/services/retail/adaptors/getFamilyStatusAndIncomeData.d.ts +1 -0
- package/mobile/bundle/ui-kit/DraftDialog/utils.d.ts +1 -1
- package/mobile/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -1
- package/mobile/bundle/ui-kit/FormField/validators.d.ts +2 -1
- package/mobile/dist/components/ApplicationForm/ApplicationForm.js +1 -3
- package/mobile/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/LeadFormState.d.ts +0 -1
- package/mobile/dist/services/retail/adaptors/getFamilyStatusAndIncomeData.d.ts +1 -0
- package/mobile/dist/services/retail/adaptors/getFamilyStatusAndIncomeData.js +5 -3
- package/mobile/dist/services/retail/adaptors/getFamilyStatusAndIncomeData.js.map +1 -1
- package/mobile/dist/ui-kit/DraftDialog/utils.d.ts +1 -1
- package/mobile/dist/ui-kit/DraftDialog/utils.js +2 -1
- package/mobile/dist/ui-kit/DraftDialog/utils.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/RetirementIncomeField.js +1 -10
- package/mobile/dist/ui-kit/FormField/Fields/RetirementIncomeField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/WagesField.js +1 -10
- package/mobile/dist/ui-kit/FormField/Fields/WagesField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -1
- package/mobile/dist/ui-kit/FormField/getObjectValidator.js +1 -1
- package/mobile/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/validators.d.ts +2 -1
- package/mobile/dist/ui-kit/FormField/validators.js +5 -3
- package/mobile/dist/ui-kit/FormField/validators.js.map +1 -1
- package/mobile/lib/components/ApplicationForm/ApplicationForm.js +1 -3
- package/mobile/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/LeadFormState.d.ts +0 -1
- package/mobile/lib/services/retail/adaptors/getFamilyStatusAndIncomeData.d.ts +1 -0
- package/mobile/lib/services/retail/adaptors/getFamilyStatusAndIncomeData.js +3 -2
- package/mobile/lib/services/retail/adaptors/getFamilyStatusAndIncomeData.js.map +1 -1
- package/mobile/lib/ui-kit/DraftDialog/utils.d.ts +1 -1
- package/mobile/lib/ui-kit/DraftDialog/utils.js +2 -1
- package/mobile/lib/ui-kit/DraftDialog/utils.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/RetirementIncomeField.js +1 -10
- package/mobile/lib/ui-kit/FormField/Fields/RetirementIncomeField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/WagesField.js +1 -10
- package/mobile/lib/ui-kit/FormField/Fields/WagesField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -1
- package/mobile/lib/ui-kit/FormField/getObjectValidator.js +2 -2
- package/mobile/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/validators.d.ts +2 -1
- package/mobile/lib/ui-kit/FormField/validators.js +3 -2
- package/mobile/lib/ui-kit/FormField/validators.js.map +1 -1
- package/mobile/src/components/ApplicationForm/ApplicationForm.tsx +8 -10
- package/mobile/src/components/ApplicationLeadForm/LeadFormState.ts +0 -1
- package/mobile/src/services/retail/adaptors/getFamilyStatusAndIncomeData.ts +4 -2
- package/mobile/src/ui-kit/DraftDialog/utils.ts +2 -3
- package/mobile/src/ui-kit/FormField/Fields/RetirementIncomeField.tsx +9 -25
- package/mobile/src/ui-kit/FormField/Fields/WagesField.tsx +9 -25
- package/mobile/src/ui-kit/FormField/NameFieldDef.ts +0 -1
- package/mobile/src/ui-kit/FormField/getObjectValidator.tsx +2 -1
- package/mobile/src/ui-kit/FormField/validators.ts +7 -3
- package/package.json +1 -1
- package/src/components/ApplicationForm/ApplicationForm.tsx +8 -10
- package/src/components/ApplicationLeadForm/LeadFormState.ts +0 -1
- package/src/services/retail/adaptors/getFamilyStatusAndIncomeData.ts +4 -2
- package/src/ui-kit/DraftDialog/utils.ts +2 -3
- package/src/ui-kit/FormField/Fields/RetirementIncomeField.tsx +9 -25
- package/src/ui-kit/FormField/Fields/WagesField.tsx +9 -25
- package/src/ui-kit/FormField/NameFieldDef.ts +0 -1
- package/src/ui-kit/FormField/getObjectValidator.tsx +2 -1
- package/src/ui-kit/FormField/validators.ts +7 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getObjectValidator.js","sourceRoot":"","sources":["../../../src/ui-kit/FormField/getObjectValidator.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,qBAAqB,EACrB,wBAAwB,EACxB,aAAa,EACb,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,GACf,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,QAAQ,EAAE,gBAAgB,EAAE;IAC5B,OAAO,EAAE,aAAa,CAAC,sBAAsB,CAAC;IAC9C,IAAI,EAAE,aAAa,CAAC,kBAAkB,CAAC;IACvC,UAAU,EAAE,aAAa,CAAC,uBAAuB,CAAC;IAClD,MAAM,EAAE,sBAAsB,EAAE;IAChC,aAAa,EAAE,sBAAsB,EAAE;IACvC,KAAK,EAAE,cAAc,CAAC,wBAAwB,CAAC;IAC/C,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"getObjectValidator.js","sourceRoot":"","sources":["../../../src/ui-kit/FormField/getObjectValidator.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,8 @@ export declare const lengthStringValidator: (inputLength: number, errorMsg?: str
|
|
|
7
7
|
export declare const serieValidator: (errorMsg: string) => import("../../validation/validator").Validator<any>;
|
|
8
8
|
export declare const numberValidator: (errorMsg: string) => import("../../validation/validator").Validator<any>;
|
|
9
9
|
export declare const innValidator: (errorMsg: string) => import("../../validation/validator").Validator<any>;
|
|
10
|
-
export declare const phoneValidator: (errorMsg: string) => import("../../validation/validator").Validator<
|
|
10
|
+
export declare const phoneValidator: (errorMsg: string) => import("../../validation/validator").Validator<string>;
|
|
11
|
+
export declare const phoneOptionalValidator: (errorMsg: string) => import("../../validation/validator").Validator<string>;
|
|
11
12
|
export declare const agreementValidator: import("../../validation/validator").Validator<any>;
|
|
12
13
|
export declare const snilsValidator: (errorMsg: string) => import("../../validation/validator").Validator<string>;
|
|
13
14
|
export declare const emailValidator: (errorMsg: string) => import("../../validation/validator").Validator<string>;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { pattern } from '../../validation/pattern.js';
|
|
2
1
|
import { required } from '../../validation/required.js';
|
|
3
2
|
import { validator } from '../../validation/validator.js';
|
|
4
3
|
const ERROR_MESSAGE = 'Некорректно заполненное поле';
|
|
@@ -14,7 +13,9 @@ export const lengthStringValidator = (inputLength, errorMsg) => validator((_) =>
|
|
|
14
13
|
export const serieValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length === 4)(errorMsg);
|
|
15
14
|
export const numberValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length === 6)(errorMsg);
|
|
16
15
|
export const innValidator = (errorMsg) => validator((_) => typeof _ === 'string' && (_.length === 10 || _.length === 12))(errorMsg);
|
|
17
|
-
|
|
16
|
+
const phoneValidate = (email) => /^(\+7)?[\s-]?\(?[0-9]{3}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(email);
|
|
17
|
+
export const phoneValidator = (errorMsg) => validator(phoneValidate)(errorMsg);
|
|
18
|
+
export const phoneOptionalValidator = (errorMsg) => validator((_) => !_ || phoneValidate(_))(errorMsg);
|
|
18
19
|
export const agreementValidator = validator((_) => typeof _ === 'boolean' && _)('Согласие обязательно');
|
|
19
20
|
const snilsValidate = (snils) => {
|
|
20
21
|
const snl = String(snils).replace(/[^0-9]+/g, '');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/ui-kit/FormField/validators.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/ui-kit/FormField/validators.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,aAAa,GAAG,8BAA8B,CAAC;AAErD,MAAM,qBAAqB,GAAG,oDAAoD,CAAC;AAEnF,MAAM,OAAO,GAAG,EAAE,CAAC;AACnB,MAAM,OAAO,GAAG,EAAE,CAAC;AACnB,MAAM,iBAAiB,GAAG,+CAA+C,CAAC;AAE1E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAiB,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,IAAI,aAAa,CAAC,CAAC;AAE3F,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAiB,EAAE,EAAE,CAC1D,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,QAAQ,IAAI,aAAa,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,QAAiB,EAAE,EAAE,CACtD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CACtE,QAAQ,IAAI,aAAa,CAC1B,CAAC;AAEJ,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAiB,EAAE,EAAE,CACjD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CACtE,QAAQ,IAAI,aAAa,CAC1B,CAAC;AAEJ,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,WAAmB,EAAE,QAAiB,EAAE,EAAE,CAC9E,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,WAAW,CAAC,CACjF,QAAQ,IAAI,aAAa,CAC1B,CAAC;AAEJ,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,EAAE,CACjD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEtE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,EAAE,CAClD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEtE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAE,EAAE,CAC/C,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE5F,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE,CACtC,wEAAwE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAEvF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEvF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAgB,EAAE,EAAE,CACzD,SAAS,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE7D,MAAM,CAAC,MAAM,kBAAkB,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,CAC7E,sBAAsB,CACvB,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE;IACtC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAClD,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE;QACrB,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC/C;QACD,IAAI,QAAQ,GAAG,GAAG,EAAE;YAClB,QAAQ,GAAG,QAAQ,GAAG,GAAG,CAAC;SAC3B;QACD,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,EAAE;YACxC,QAAQ,GAAG,CAAC,CAAC;SACd;QAED,OAAO,QAAQ,KAAK,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;KAC7C;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEvF,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,kCAAkC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAExF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,EAAE,CACjD,SAAS,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEvD,MAAM,qBAAqB,GAAG,CAAC,OAAgB,EAAE,EAAE,CACjD,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC;AAEpG,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,EAAE,CAC/C,SAAS,CAAC,CAAC,OAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CACzF,qBAAqB,CACtB,CAAC;AAEJ,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAiB,EAAE,EAAE,CACrD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CACzF,QAAQ,IAAI,aAAa,CAC1B,CAAC;AAEJ,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAElD,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEvD,MAAM,uBAAuB,GAAG,CAAC,IAAW,EAAE,EAAE;IAC9C,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;IAEzB,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3F,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAE3F,IAAI,CAAC,IAAI,IAAI,IAAI,GAAG,OAAO,IAAI,IAAI,GAAG,OAAO,EAAE;QAC7C,OAAO,KAAK,CAAC;KACd;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,iBAAiB,CAAC,CAAC"}
|
|
@@ -111,14 +111,12 @@ export const ApplicationForm = JSX<ApplicationFormProps>(
|
|
|
111
111
|
);
|
|
112
112
|
|
|
113
113
|
const getFilteredInputs = (inputs: FieldDef[], data: FormState) =>
|
|
114
|
-
inputs
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
(
|
|
118
|
-
|
|
119
|
-
input?.condition.values.find((_) => {
|
|
120
|
-
const dataValue = data?.[input?.condition?.name ?? ''];
|
|
114
|
+
inputs.filter(
|
|
115
|
+
(input) =>
|
|
116
|
+
!input?.condition ||
|
|
117
|
+
input?.condition.values.find((_) => {
|
|
118
|
+
const dataValue = data?.[input?.condition?.name ?? ''];
|
|
121
119
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
120
|
+
return _ === (dataValue?.key ?? dataValue);
|
|
121
|
+
}),
|
|
122
|
+
);
|
|
@@ -117,7 +117,6 @@ export interface LeadFormState extends FormConsents, FormStateDeliveryType {
|
|
|
117
117
|
participantDateRegistration?: Date | string;
|
|
118
118
|
retirementIncome?: number;
|
|
119
119
|
otherIncome?: number;
|
|
120
|
-
incomeAverage?: number;
|
|
121
120
|
mandatoryPayments?: number;
|
|
122
121
|
additionalIncome?: number;
|
|
123
122
|
otherPayments?: number;
|
|
@@ -11,7 +11,6 @@ export const getFamilyStatusAndIncomeData = (formData: LeadFormState): Partial<P
|
|
|
11
11
|
confirmationIncome,
|
|
12
12
|
wages,
|
|
13
13
|
mandatoryPayments,
|
|
14
|
-
incomeAverage,
|
|
15
14
|
additionalIncome,
|
|
16
15
|
otherIncome,
|
|
17
16
|
otherPayments,
|
|
@@ -32,7 +31,7 @@ export const getFamilyStatusAndIncomeData = (formData: LeadFormState): Partial<P
|
|
|
32
31
|
participantIncomes: getParticipantIncomes({
|
|
33
32
|
wages,
|
|
34
33
|
mandatoryPayments,
|
|
35
|
-
incomeAverage,
|
|
34
|
+
incomeAverage: countIncomeAverage(wages, retirementIncome),
|
|
36
35
|
additionalIncome,
|
|
37
36
|
otherIncome,
|
|
38
37
|
otherPayments,
|
|
@@ -43,3 +42,6 @@ export const getFamilyStatusAndIncomeData = (formData: LeadFormState): Partial<P
|
|
|
43
42
|
armyIdFlg,
|
|
44
43
|
};
|
|
45
44
|
};
|
|
45
|
+
|
|
46
|
+
export const countIncomeAverage = (wages?: number, retirementIncome?: number) =>
|
|
47
|
+
Number(wages) + Number(retirementIncome);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/* eslint-disable camelcase */
|
|
2
2
|
import { type LeadProps } from '../../api/RetailAPI/model/LeadFormData';
|
|
3
3
|
import { type Participant } from '../../api/RetailAPI/updateUserTask';
|
|
4
|
+
import { countIncomeAverage } from '../../services/retail/adaptors/getFamilyStatusAndIncomeData';
|
|
4
5
|
import { type Option } from '../Select/Option';
|
|
5
6
|
|
|
6
7
|
export const enum EContactType {
|
|
@@ -61,9 +62,6 @@ export const getParticipantIncomes = (participantIncomes: Participant['participa
|
|
|
61
62
|
const mandatoryPayments = participantIncomes?.find(
|
|
62
63
|
(contact) => contact.incomeTypeCd.key === EIncomesType.MANDATORY_PAYMENTS,
|
|
63
64
|
)?.value;
|
|
64
|
-
const incomeAverage = participantIncomes?.find(
|
|
65
|
-
(contact) => contact.incomeTypeCd.key === EIncomesType.INCOME_AVERAGE,
|
|
66
|
-
)?.value;
|
|
67
65
|
const additionalIncome = participantIncomes?.find(
|
|
68
66
|
(contact) => contact.incomeTypeCd.key === EIncomesType.ADDITIONAL_INCOME,
|
|
69
67
|
)?.value;
|
|
@@ -79,6 +77,7 @@ export const getParticipantIncomes = (participantIncomes: Participant['participa
|
|
|
79
77
|
const retirementIncome = participantIncomes?.find(
|
|
80
78
|
(contact) => contact.incomeTypeCd.key === EIncomesType.RETIREMENT_INCOME,
|
|
81
79
|
)?.value;
|
|
80
|
+
const incomeAverage = countIncomeAverage(wages, retirementIncome);
|
|
82
81
|
|
|
83
82
|
return {
|
|
84
83
|
wages,
|
|
@@ -1,31 +1,15 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
-
import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
|
|
3
2
|
import { InputControl } from '../../Input/InputControl';
|
|
4
3
|
import type { CustomFieldProps } from '../CustomFieldProps';
|
|
5
4
|
import { validatorObj } from '../getObjectValidator';
|
|
6
5
|
import { getValidation } from '../getValidation';
|
|
7
6
|
|
|
8
|
-
export const RetirementIncomeField = JSX<CustomFieldProps>(({ field, input }) =>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
},
|
|
18
|
-
[currentWages],
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
return (
|
|
22
|
-
<InputControl
|
|
23
|
-
label="Пенсионные доходы"
|
|
24
|
-
placeholder="Введите значение"
|
|
25
|
-
isInteger={true}
|
|
26
|
-
{...getValidation(field('retirementIncome'), validatorObj.retirementIncome, input?.required)}
|
|
27
|
-
{...input}
|
|
28
|
-
onChange={onChange}
|
|
29
|
-
/>
|
|
30
|
-
);
|
|
31
|
-
});
|
|
7
|
+
export const RetirementIncomeField = JSX<CustomFieldProps>(({ field, input }) => (
|
|
8
|
+
<InputControl
|
|
9
|
+
label="Пенсионные доходы"
|
|
10
|
+
placeholder="Введите значение"
|
|
11
|
+
isInteger={true}
|
|
12
|
+
{...getValidation(field('retirementIncome'), validatorObj.retirementIncome, input?.required)}
|
|
13
|
+
{...input}
|
|
14
|
+
/>
|
|
15
|
+
));
|
|
@@ -1,31 +1,15 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
-
import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
|
|
3
2
|
import { InputControl } from '../../Input/InputControl';
|
|
4
3
|
import type { CustomFieldProps } from '../CustomFieldProps';
|
|
5
4
|
import { validatorObj } from '../getObjectValidator';
|
|
6
5
|
import { getValidation } from '../getValidation';
|
|
7
6
|
|
|
8
|
-
export const WagesField = JSX<CustomFieldProps>(({ field, input }) =>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
},
|
|
18
|
-
[currentRetirementIncome],
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
return (
|
|
22
|
-
<InputControl
|
|
23
|
-
label="Совокупный доход в месяц после вычета налогов (зарплата, премии)"
|
|
24
|
-
placeholder="Введите значение"
|
|
25
|
-
isInteger={true}
|
|
26
|
-
{...getValidation(field('wages'), validatorObj.wages, input?.required)}
|
|
27
|
-
{...input}
|
|
28
|
-
onChange={onChange}
|
|
29
|
-
/>
|
|
30
|
-
);
|
|
31
|
-
});
|
|
7
|
+
export const WagesField = JSX<CustomFieldProps>(({ field, input }) => (
|
|
8
|
+
<InputControl
|
|
9
|
+
label="Совокупный доход в месяц после вычета налогов (зарплата, премии)"
|
|
10
|
+
placeholder="Введите значение"
|
|
11
|
+
isInteger={true}
|
|
12
|
+
{...getValidation(field('wages'), validatorObj.wages, input?.required)}
|
|
13
|
+
{...input}
|
|
14
|
+
/>
|
|
15
|
+
));
|
|
@@ -15,6 +15,7 @@ import {
|
|
|
15
15
|
limitedBirthdayValidator,
|
|
16
16
|
nameValidator,
|
|
17
17
|
numberValidator,
|
|
18
|
+
phoneOptionalValidator,
|
|
18
19
|
phoneValidator,
|
|
19
20
|
serieValidator,
|
|
20
21
|
snilsValidator,
|
|
@@ -28,7 +29,7 @@ export const validatorObj: Record<string, Validator> = {
|
|
|
28
29
|
region: defaultSelectValidator(),
|
|
29
30
|
addressBranch: defaultSelectValidator(),
|
|
30
31
|
phone: phoneValidator('Укажите номер телефона'),
|
|
31
|
-
secondaryPhone:
|
|
32
|
+
secondaryPhone: phoneOptionalValidator('Укажите номер телефона'),
|
|
32
33
|
organizationPhone: phoneValidator('Укажите номер телефона'),
|
|
33
34
|
birthday: defaultValidator('Укажите дату рождения'),
|
|
34
35
|
limitedBirthday: limitedBirthdayValidator(),
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { type Address } from '../../components/ApplicationLeadForm/LeadFormState';
|
|
2
|
-
import { pattern } from '../../validation/pattern';
|
|
3
2
|
import { required } from '../../validation/required';
|
|
4
3
|
import { validator } from '../../validation/validator';
|
|
5
4
|
|
|
@@ -40,8 +39,13 @@ export const numberValidator = (errorMsg: string) =>
|
|
|
40
39
|
export const innValidator = (errorMsg: string) =>
|
|
41
40
|
validator((_) => typeof _ === 'string' && (_.length === 10 || _.length === 12))(errorMsg);
|
|
42
41
|
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
const phoneValidate = (email: string) =>
|
|
43
|
+
/^(\+7)?[\s-]?\(?[0-9]{3}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(email);
|
|
44
|
+
|
|
45
|
+
export const phoneValidator = (errorMsg: string) => validator(phoneValidate)(errorMsg);
|
|
46
|
+
|
|
47
|
+
export const phoneOptionalValidator = (errorMsg: string) =>
|
|
48
|
+
validator((_: string) => !_ || phoneValidate(_))(errorMsg);
|
|
45
49
|
|
|
46
50
|
export const agreementValidator = validator((_) => typeof _ === 'boolean' && _)(
|
|
47
51
|
'Согласие обязательно',
|
package/package.json
CHANGED
|
@@ -111,14 +111,12 @@ export const ApplicationForm = JSX<ApplicationFormProps>(
|
|
|
111
111
|
);
|
|
112
112
|
|
|
113
113
|
const getFilteredInputs = (inputs: FieldDef[], data: FormState) =>
|
|
114
|
-
inputs
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
(
|
|
118
|
-
|
|
119
|
-
input?.condition.values.find((_) => {
|
|
120
|
-
const dataValue = data?.[input?.condition?.name ?? ''];
|
|
114
|
+
inputs.filter(
|
|
115
|
+
(input) =>
|
|
116
|
+
!input?.condition ||
|
|
117
|
+
input?.condition.values.find((_) => {
|
|
118
|
+
const dataValue = data?.[input?.condition?.name ?? ''];
|
|
121
119
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
120
|
+
return _ === (dataValue?.key ?? dataValue);
|
|
121
|
+
}),
|
|
122
|
+
);
|
|
@@ -117,7 +117,6 @@ export interface LeadFormState extends FormConsents, FormStateDeliveryType {
|
|
|
117
117
|
participantDateRegistration?: Date | string;
|
|
118
118
|
retirementIncome?: number;
|
|
119
119
|
otherIncome?: number;
|
|
120
|
-
incomeAverage?: number;
|
|
121
120
|
mandatoryPayments?: number;
|
|
122
121
|
additionalIncome?: number;
|
|
123
122
|
otherPayments?: number;
|
|
@@ -11,7 +11,6 @@ export const getFamilyStatusAndIncomeData = (formData: LeadFormState): Partial<P
|
|
|
11
11
|
confirmationIncome,
|
|
12
12
|
wages,
|
|
13
13
|
mandatoryPayments,
|
|
14
|
-
incomeAverage,
|
|
15
14
|
additionalIncome,
|
|
16
15
|
otherIncome,
|
|
17
16
|
otherPayments,
|
|
@@ -32,7 +31,7 @@ export const getFamilyStatusAndIncomeData = (formData: LeadFormState): Partial<P
|
|
|
32
31
|
participantIncomes: getParticipantIncomes({
|
|
33
32
|
wages,
|
|
34
33
|
mandatoryPayments,
|
|
35
|
-
incomeAverage,
|
|
34
|
+
incomeAverage: countIncomeAverage(wages, retirementIncome),
|
|
36
35
|
additionalIncome,
|
|
37
36
|
otherIncome,
|
|
38
37
|
otherPayments,
|
|
@@ -43,3 +42,6 @@ export const getFamilyStatusAndIncomeData = (formData: LeadFormState): Partial<P
|
|
|
43
42
|
armyIdFlg,
|
|
44
43
|
};
|
|
45
44
|
};
|
|
45
|
+
|
|
46
|
+
export const countIncomeAverage = (wages?: number, retirementIncome?: number) =>
|
|
47
|
+
Number(wages) + Number(retirementIncome);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/* eslint-disable camelcase */
|
|
2
2
|
import { type LeadProps } from '../../api/RetailAPI/model/LeadFormData';
|
|
3
3
|
import { type Participant } from '../../api/RetailAPI/updateUserTask';
|
|
4
|
+
import { countIncomeAverage } from '../../services/retail/adaptors/getFamilyStatusAndIncomeData';
|
|
4
5
|
import { type Option } from '../Select/Option';
|
|
5
6
|
|
|
6
7
|
export const enum EContactType {
|
|
@@ -61,9 +62,6 @@ export const getParticipantIncomes = (participantIncomes: Participant['participa
|
|
|
61
62
|
const mandatoryPayments = participantIncomes?.find(
|
|
62
63
|
(contact) => contact.incomeTypeCd.key === EIncomesType.MANDATORY_PAYMENTS,
|
|
63
64
|
)?.value;
|
|
64
|
-
const incomeAverage = participantIncomes?.find(
|
|
65
|
-
(contact) => contact.incomeTypeCd.key === EIncomesType.INCOME_AVERAGE,
|
|
66
|
-
)?.value;
|
|
67
65
|
const additionalIncome = participantIncomes?.find(
|
|
68
66
|
(contact) => contact.incomeTypeCd.key === EIncomesType.ADDITIONAL_INCOME,
|
|
69
67
|
)?.value;
|
|
@@ -79,6 +77,7 @@ export const getParticipantIncomes = (participantIncomes: Participant['participa
|
|
|
79
77
|
const retirementIncome = participantIncomes?.find(
|
|
80
78
|
(contact) => contact.incomeTypeCd.key === EIncomesType.RETIREMENT_INCOME,
|
|
81
79
|
)?.value;
|
|
80
|
+
const incomeAverage = countIncomeAverage(wages, retirementIncome);
|
|
82
81
|
|
|
83
82
|
return {
|
|
84
83
|
wages,
|
|
@@ -1,31 +1,15 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
-
import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
|
|
3
2
|
import { InputControl } from '../../Input/InputControl';
|
|
4
3
|
import type { CustomFieldProps } from '../CustomFieldProps';
|
|
5
4
|
import { validatorObj } from '../getObjectValidator';
|
|
6
5
|
import { getValidation } from '../getValidation';
|
|
7
6
|
|
|
8
|
-
export const RetirementIncomeField = JSX<CustomFieldProps>(({ field, input }) =>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
},
|
|
18
|
-
[currentWages],
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
return (
|
|
22
|
-
<InputControl
|
|
23
|
-
label="Пенсионные доходы"
|
|
24
|
-
placeholder="Введите значение"
|
|
25
|
-
isInteger={true}
|
|
26
|
-
{...getValidation(field('retirementIncome'), validatorObj.retirementIncome, input?.required)}
|
|
27
|
-
{...input}
|
|
28
|
-
onChange={onChange}
|
|
29
|
-
/>
|
|
30
|
-
);
|
|
31
|
-
});
|
|
7
|
+
export const RetirementIncomeField = JSX<CustomFieldProps>(({ field, input }) => (
|
|
8
|
+
<InputControl
|
|
9
|
+
label="Пенсионные доходы"
|
|
10
|
+
placeholder="Введите значение"
|
|
11
|
+
isInteger={true}
|
|
12
|
+
{...getValidation(field('retirementIncome'), validatorObj.retirementIncome, input?.required)}
|
|
13
|
+
{...input}
|
|
14
|
+
/>
|
|
15
|
+
));
|
|
@@ -1,31 +1,15 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
-
import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
|
|
3
2
|
import { InputControl } from '../../Input/InputControl';
|
|
4
3
|
import type { CustomFieldProps } from '../CustomFieldProps';
|
|
5
4
|
import { validatorObj } from '../getObjectValidator';
|
|
6
5
|
import { getValidation } from '../getValidation';
|
|
7
6
|
|
|
8
|
-
export const WagesField = JSX<CustomFieldProps>(({ field, input }) =>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
},
|
|
18
|
-
[currentRetirementIncome],
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
return (
|
|
22
|
-
<InputControl
|
|
23
|
-
label="Совокупный доход в месяц после вычета налогов (зарплата, премии)"
|
|
24
|
-
placeholder="Введите значение"
|
|
25
|
-
isInteger={true}
|
|
26
|
-
{...getValidation(field('wages'), validatorObj.wages, input?.required)}
|
|
27
|
-
{...input}
|
|
28
|
-
onChange={onChange}
|
|
29
|
-
/>
|
|
30
|
-
);
|
|
31
|
-
});
|
|
7
|
+
export const WagesField = JSX<CustomFieldProps>(({ field, input }) => (
|
|
8
|
+
<InputControl
|
|
9
|
+
label="Совокупный доход в месяц после вычета налогов (зарплата, премии)"
|
|
10
|
+
placeholder="Введите значение"
|
|
11
|
+
isInteger={true}
|
|
12
|
+
{...getValidation(field('wages'), validatorObj.wages, input?.required)}
|
|
13
|
+
{...input}
|
|
14
|
+
/>
|
|
15
|
+
));
|
|
@@ -15,6 +15,7 @@ import {
|
|
|
15
15
|
limitedBirthdayValidator,
|
|
16
16
|
nameValidator,
|
|
17
17
|
numberValidator,
|
|
18
|
+
phoneOptionalValidator,
|
|
18
19
|
phoneValidator,
|
|
19
20
|
serieValidator,
|
|
20
21
|
snilsValidator,
|
|
@@ -28,7 +29,7 @@ export const validatorObj: Record<string, Validator> = {
|
|
|
28
29
|
region: defaultSelectValidator(),
|
|
29
30
|
addressBranch: defaultSelectValidator(),
|
|
30
31
|
phone: phoneValidator('Укажите номер телефона'),
|
|
31
|
-
secondaryPhone:
|
|
32
|
+
secondaryPhone: phoneOptionalValidator('Укажите номер телефона'),
|
|
32
33
|
organizationPhone: phoneValidator('Укажите номер телефона'),
|
|
33
34
|
birthday: defaultValidator('Укажите дату рождения'),
|
|
34
35
|
limitedBirthday: limitedBirthdayValidator(),
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { type Address } from '../../components/ApplicationLeadForm/LeadFormState';
|
|
2
|
-
import { pattern } from '../../validation/pattern';
|
|
3
2
|
import { required } from '../../validation/required';
|
|
4
3
|
import { validator } from '../../validation/validator';
|
|
5
4
|
|
|
@@ -40,8 +39,13 @@ export const numberValidator = (errorMsg: string) =>
|
|
|
40
39
|
export const innValidator = (errorMsg: string) =>
|
|
41
40
|
validator((_) => typeof _ === 'string' && (_.length === 10 || _.length === 12))(errorMsg);
|
|
42
41
|
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
const phoneValidate = (email: string) =>
|
|
43
|
+
/^(\+7)?[\s-]?\(?[0-9]{3}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(email);
|
|
44
|
+
|
|
45
|
+
export const phoneValidator = (errorMsg: string) => validator(phoneValidate)(errorMsg);
|
|
46
|
+
|
|
47
|
+
export const phoneOptionalValidator = (errorMsg: string) =>
|
|
48
|
+
validator((_: string) => !_ || phoneValidate(_))(errorMsg);
|
|
45
49
|
|
|
46
50
|
export const agreementValidator = validator((_) => typeof _ === 'boolean' && _)(
|
|
47
51
|
'Согласие обязательно',
|