add INN registration field
This commit is contained in:
@@ -163,6 +163,35 @@ export function createValidationSchema(config: ValidationConfig, accountType?: '
|
||||
schema.password = passwordSchema;
|
||||
}
|
||||
|
||||
// inn
|
||||
if (config.inn && accountType !== 'b2c') {
|
||||
let innSchema = z.string();
|
||||
|
||||
// Минимальная длина
|
||||
if (config.inn.minSize) {
|
||||
innSchema = innSchema.min(config.inn.minSize.value, {
|
||||
error: config.inn.minSize.message
|
||||
});
|
||||
}
|
||||
|
||||
// Максимальная длина
|
||||
if (config.inn.maxSize) {
|
||||
innSchema = innSchema.max(config.inn.maxSize.value, {
|
||||
error: config.inn.maxSize.message
|
||||
});
|
||||
}
|
||||
|
||||
// Допустимые символы
|
||||
if (config.inn.allowedSymbols) {
|
||||
innSchema = innSchema.regex(
|
||||
new RegExp(config.inn.allowedSymbols.value),
|
||||
{ message: config.inn.allowedSymbols.message }
|
||||
);
|
||||
}
|
||||
|
||||
schema.inn = innSchema;
|
||||
}
|
||||
|
||||
// Дополнительные поля для формы регистрации
|
||||
schema.confirm_password = z.string();
|
||||
schema.agree = z.string().min(2, { error: 'register-error-agree' });
|
||||
|
||||
@@ -87,5 +87,19 @@
|
||||
"value": "^[0-9\\+]+$",
|
||||
"message": "register-error-phone-not-allowed-symbols"
|
||||
}
|
||||
},
|
||||
"inn": {
|
||||
"maxSize": {
|
||||
"value": 10,
|
||||
"message": "register-error-inn-max"
|
||||
},
|
||||
"minSize": {
|
||||
"value": 10,
|
||||
"message": "register-error-inn-min"
|
||||
},
|
||||
"allowedSymbols": {
|
||||
"value": "^[0-9]+$",
|
||||
"message": "register-error-inn-not-allowed-symbols"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user