diff --git a/src/utils/validationRules.ts b/src/utils/validationRules.ts new file mode 100644 index 0000000..b439398 --- /dev/null +++ b/src/utils/validationRules.ts @@ -0,0 +1,35 @@ +import { Rule } from 'rc-field-form/lib/interface' + +export const loginRules: Rule[] = [{ + min: 3, + max: 255, + message: 'Допустимая длина 3-255 символов' +}, { + pattern: /^[A-Za-zА-Яа-я][А-Яа-я\w.-]+$/, + whitespace: true, + message: 'Логин должен начинаться с русской или латинской буквы, содержать только (А-яA-z0-9_-.)!' +}] + +export const nameRules: Rule[] = [{ + min: 1, + max: 255, + message: 'Допустимая длина 1-255 символов!' +}, { + pattern: /^[A-zА-я][A-zА-я-]*$/, + message: 'Допустимые символы: А-яA-z-' +}] + +export const phoneRules: Rule[] = [{ + pattern: /^(?:\+7|8)\s?(?:\(\d{3}\)|\d{3})\s?\d{3}-?\d{2}-?\d{2}$/, + message: 'Номер телефона должен иметь вид: +7 (xxx) xxx-xx-xx' +}] + +export const emailRules: Rule[] = [{ + type: 'email', + message: 'E-mail должен иметь вид: "user@site.domain"' +}] + +export const passwordRules: Rule[] = [{ + required: true, + message: 'Поле не может быть пустым!' +}]