@scbt-ecom/ui 0.31.0 → 0.31.2
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/dist/shared/validation/base/base.validators.d.ts +20 -0
- package/dist/shared/validation/base/date.validators.d.ts +1 -2
- package/dist/shared/validation/base/email.validators.d.ts +1 -2
- package/dist/shared/validation/base/index.d.ts +1 -1
- package/dist/shared/validation/base/number.validators.d.ts +1 -2
- package/dist/shared/validation/base/phone.validators.d.ts +1 -2
- package/dist/shared/validation/base/select.validators.d.ts +1 -1
- package/dist/shared/validation/base/string.validators.d.ts +1 -2
- package/dist/shared/validation/base/union.validators.d.ts +1 -2
- package/dist/shared/validation/index.d.ts +26 -0
- package/dist/validation.js.map +1 -1
- package/dist/widget.js +2 -2
- package/dist/widget.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const baseValidationSchemas: {
|
|
2
|
+
getStringRequired: (props?: import('./string.validators').StringValidationOptions) => import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodString, string, string>>;
|
|
3
|
+
getStringOptional: (props?: import('./string.validators').StringValidationOptions) => import('zod').ZodEffects<import('zod').ZodOptional<import('zod').ZodString>, string | undefined, string | undefined>;
|
|
4
|
+
getEmailRequired: (props?: import('./email.validators').EmailValidationOptions) => import('zod').ZodDefault<import('zod').ZodString>;
|
|
5
|
+
getEmailOptional: (props?: import('./email.validators').EmailValidationOptions) => import('zod').ZodEffects<import('zod').ZodOptional<import('zod').ZodEffects<import('zod').ZodString, string, string>>, string | undefined, string | undefined>;
|
|
6
|
+
getSelectRequired: <Multi extends boolean>(props?: Multi extends true ? import('./select.validators').SelectSingleValidationOptions<Multi> & {
|
|
7
|
+
minLength?: number;
|
|
8
|
+
} : import('./select.validators').SelectSingleValidationOptions<Multi>) => import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodNullable<import('zod').ZodString>, string | null, string | null>> | import('zod').ZodDefault<import('zod').ZodArray<import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodNullable<import('zod').ZodString>, string | null, string | null>>, "many">>;
|
|
9
|
+
getSelectOptional: <Multi extends boolean>(props?: Omit<Multi extends true ? import('./select.validators').SelectSingleValidationOptions<Multi> & {
|
|
10
|
+
minLength?: number;
|
|
11
|
+
} : import('./select.validators').SelectSingleValidationOptions<Multi>, "message">) => import('zod').ZodOptional<import('zod').ZodNullable<import('zod').ZodString>> | import('zod').ZodOptional<import('zod').ZodArray<import('zod').ZodOptional<import('zod').ZodNullable<import('zod').ZodString>>, "many">>;
|
|
12
|
+
getNumberRequired: (props?: import('./number.validators').NumberValidationOptions) => import('zod').ZodDefault<import('zod').ZodNumber>;
|
|
13
|
+
getNumberOptional: (props?: import('./number.validators').NumberValidationOptions) => import('zod').ZodEffects<import('zod').ZodOptional<import('zod').ZodDefault<import('zod').ZodNumber>>, number | undefined, number | undefined>;
|
|
14
|
+
getPhoneRequired: (props?: import('./phone.validators').PhoneValidationOptions) => import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodString, string, string>>;
|
|
15
|
+
getPhoneOptional: (props?: import('./phone.validators').PhoneValidationOptions) => import('zod').ZodEffects<import('zod').ZodEffects<import('zod').ZodString, string, string>, string | undefined, string>;
|
|
16
|
+
getDateRequired: (props?: import('./date.validators').DateValidationOptions) => import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodString, string, string>>;
|
|
17
|
+
getDateOptional: (props?: import('./date.validators').DateValidationOptions) => import('zod').ZodOptional<import('zod').ZodEffects<import('zod').ZodEffects<import('zod').ZodString, string | undefined, string>, string | undefined, string>>;
|
|
18
|
+
getUnionRequired: <T extends import('zod').Primitive>(values: [T, T, ...T[]], props?: import('./union.validators').UnionValidationOptions<T>) => import('zod').ZodUnion<[import('zod').ZodLiteral<T>, import('zod').ZodLiteral<T>, ...import('zod').ZodLiteral<T>[]]>;
|
|
19
|
+
getUnionOptional: <T extends import('zod').Primitive>(values: [T, T, ...T[]], props?: import('./union.validators').UnionValidationOptions<T>) => import('zod').ZodOptional<import('zod').ZodUnion<[import('zod').ZodLiteral<T>, import('zod').ZodLiteral<T>, ...import('zod').ZodLiteral<T>[]]>>;
|
|
20
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as z } from 'zod';
|
|
2
|
-
type DateValidationOptions = {
|
|
2
|
+
export type DateValidationOptions = {
|
|
3
3
|
/**
|
|
4
4
|
* парсить строку с учетом ISO формата
|
|
5
5
|
* @default false
|
|
@@ -45,4 +45,3 @@ export declare const getDateRequired: (props?: DateValidationOptions) => z.ZodDe
|
|
|
45
45
|
* // will returns z.string()
|
|
46
46
|
*/
|
|
47
47
|
export declare const getDateOptional: (props?: DateValidationOptions) => z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string | undefined, string>, string | undefined, string>>;
|
|
48
|
-
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as z } from 'zod';
|
|
2
|
-
type EmailValidationOptions = {
|
|
2
|
+
export type EmailValidationOptions = {
|
|
3
3
|
message?: {
|
|
4
4
|
min?: string;
|
|
5
5
|
invalid?: string;
|
|
@@ -31,4 +31,3 @@ export declare const getEmailRequired: (props?: EmailValidationOptions) => z.Zod
|
|
|
31
31
|
* // will returns z.string().min(1).email().optional()
|
|
32
32
|
*/
|
|
33
33
|
export declare const getEmailOptional: (props?: EmailValidationOptions) => z.ZodEffects<z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>, string | undefined, string | undefined>;
|
|
34
|
-
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export * from './base.validators';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as z } from 'zod';
|
|
2
|
-
type NumberValidationOptions = {
|
|
2
|
+
export type NumberValidationOptions = {
|
|
3
3
|
min?: number;
|
|
4
4
|
max?: number;
|
|
5
5
|
message?: Record<keyof Omit<NumberValidationOptions, 'message'>, string>;
|
|
@@ -34,4 +34,3 @@ export declare const getNumberRequired: (props?: NumberValidationOptions) => z.Z
|
|
|
34
34
|
* // will returns z.coerce.number().min(10).max(20).optional()
|
|
35
35
|
*/
|
|
36
36
|
export declare const getNumberOptional: (props?: NumberValidationOptions) => z.ZodEffects<z.ZodOptional<z.ZodDefault<z.ZodNumber>>, number | undefined, number | undefined>;
|
|
37
|
-
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as z } from 'zod';
|
|
2
|
-
type PhoneValidationOptions = {
|
|
2
|
+
export type PhoneValidationOptions = {
|
|
3
3
|
/**
|
|
4
4
|
* исключает маску в возвращаемом значении
|
|
5
5
|
* @default false
|
|
@@ -45,4 +45,3 @@ export declare const getPhoneRequired: (props?: PhoneValidationOptions) => z.Zod
|
|
|
45
45
|
* // will returns z.string()
|
|
46
46
|
*/
|
|
47
47
|
export declare const getPhoneOptional: (props?: PhoneValidationOptions) => z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string | undefined, string>;
|
|
48
|
-
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as z } from 'zod';
|
|
2
|
-
type StringValidationOptions = {
|
|
2
|
+
export type StringValidationOptions = {
|
|
3
3
|
/**
|
|
4
4
|
* минимальное количество символов
|
|
5
5
|
* @default 1
|
|
@@ -42,4 +42,3 @@ export declare const getStringRequired: (props?: StringValidationOptions) => z.Z
|
|
|
42
42
|
* // will returns z.string().min(10).max(20).optional()
|
|
43
43
|
*/
|
|
44
44
|
export declare const getStringOptional: (props?: StringValidationOptions) => z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, string | undefined>;
|
|
45
|
-
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as z } from 'zod';
|
|
2
|
-
type UnionValidationOptions<T extends z.Primitive> = {
|
|
2
|
+
export type UnionValidationOptions<T extends z.Primitive> = {
|
|
3
3
|
message?: ((values: readonly T[]) => string) | string;
|
|
4
4
|
errorMap?: z.ZodErrorMap;
|
|
5
5
|
invalid_type_error?: string;
|
|
@@ -32,4 +32,3 @@ export declare const getUnionRequired: <T extends z.Primitive>(values: [T, T, ..
|
|
|
32
32
|
* // will returns z.union([z.literal('A'), z.literal('B')]).optional()
|
|
33
33
|
*/
|
|
34
34
|
export declare const getUnionOptional: <T extends z.Primitive>(values: [T, T, ...T[]], props?: UnionValidationOptions<T>) => z.ZodOptional<z.ZodUnion<[z.ZodLiteral<T>, z.ZodLiteral<T>, ...z.ZodLiteral<T>[]]>>;
|
|
35
|
-
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export * from './regExp';
|
|
2
|
+
export * from './messages';
|
|
3
|
+
export * from './zodValidation';
|
|
4
|
+
export type * from './base';
|
|
5
|
+
export declare const zodValidators: {
|
|
6
|
+
base: {
|
|
7
|
+
getStringRequired: (props?: import('./base/string.validators').StringValidationOptions) => import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodString, string, string>>;
|
|
8
|
+
getStringOptional: (props?: import('./base/string.validators').StringValidationOptions) => import('zod').ZodEffects<import('zod').ZodOptional<import('zod').ZodString>, string | undefined, string | undefined>;
|
|
9
|
+
getEmailRequired: (props?: import('./base/email.validators').EmailValidationOptions) => import('zod').ZodDefault<import('zod').ZodString>;
|
|
10
|
+
getEmailOptional: (props?: import('./base/email.validators').EmailValidationOptions) => import('zod').ZodEffects<import('zod').ZodOptional<import('zod').ZodEffects<import('zod').ZodString, string, string>>, string | undefined, string | undefined>;
|
|
11
|
+
getSelectRequired: <Multi extends boolean>(props?: Multi extends true ? import('./base/select.validators').SelectSingleValidationOptions<Multi> & {
|
|
12
|
+
minLength?: number;
|
|
13
|
+
} : import('./base/select.validators').SelectSingleValidationOptions<Multi>) => import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodNullable<import('zod').ZodString>, string | null, string | null>> | import('zod').ZodDefault<import('zod').ZodArray<import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodNullable<import('zod').ZodString>, string | null, string | null>>, "many">>;
|
|
14
|
+
getSelectOptional: <Multi extends boolean>(props?: Omit<Multi extends true ? import('./base/select.validators').SelectSingleValidationOptions<Multi> & {
|
|
15
|
+
minLength?: number;
|
|
16
|
+
} : import('./base/select.validators').SelectSingleValidationOptions<Multi>, "message">) => import('zod').ZodOptional<import('zod').ZodNullable<import('zod').ZodString>> | import('zod').ZodOptional<import('zod').ZodArray<import('zod').ZodOptional<import('zod').ZodNullable<import('zod').ZodString>>, "many">>;
|
|
17
|
+
getNumberRequired: (props?: import('./base/number.validators').NumberValidationOptions) => import('zod').ZodDefault<import('zod').ZodNumber>;
|
|
18
|
+
getNumberOptional: (props?: import('./base/number.validators').NumberValidationOptions) => import('zod').ZodEffects<import('zod').ZodOptional<import('zod').ZodDefault<import('zod').ZodNumber>>, number | undefined, number | undefined>;
|
|
19
|
+
getPhoneRequired: (props?: import('./base/phone.validators').PhoneValidationOptions) => import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodString, string, string>>;
|
|
20
|
+
getPhoneOptional: (props?: import('./base/phone.validators').PhoneValidationOptions) => import('zod').ZodEffects<import('zod').ZodEffects<import('zod').ZodString, string, string>, string | undefined, string>;
|
|
21
|
+
getDateRequired: (props?: import('./base/date.validators').DateValidationOptions) => import('zod').ZodDefault<import('zod').ZodEffects<import('zod').ZodString, string, string>>;
|
|
22
|
+
getDateOptional: (props?: import('./base/date.validators').DateValidationOptions) => import('zod').ZodOptional<import('zod').ZodEffects<import('zod').ZodEffects<import('zod').ZodString, string | undefined, string>, string | undefined, string>>;
|
|
23
|
+
getUnionRequired: <T extends import('zod').Primitive>(values: [T, T, ...T[]], props?: import('./base/union.validators').UnionValidationOptions<T>) => import('zod').ZodUnion<[import('zod').ZodLiteral<T>, import('zod').ZodLiteral<T>, ...import('zod').ZodLiteral<T>[]]>;
|
|
24
|
+
getUnionOptional: <T extends import('zod').Primitive>(values: [T, T, ...T[]], props?: import('./base/union.validators').UnionValidationOptions<T>) => import('zod').ZodOptional<import('zod').ZodUnion<[import('zod').ZodLiteral<T>, import('zod').ZodLiteral<T>, ...import('zod').ZodLiteral<T>[]]>>;
|
|
25
|
+
};
|
|
26
|
+
};
|
package/dist/validation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sources":["../lib/shared/validation/regExp.ts","../lib/shared/validation/zodValidation/dadataFio.ts","../lib/shared/validation/zodValidation/calendar.ts","../lib/shared/validation/zodValidation/phone.ts","../lib/shared/validation/zodValidation/otpCode.ts","../lib/shared/validation/base/base.constants.ts","../lib/shared/validation/base/date.validators.ts","../lib/shared/validation/base/email.validators.ts","../lib/shared/validation/base/number.validators.ts","../lib/shared/validation/base/phone.validators.ts","../lib/shared/validation/base/select.validators.ts","../lib/shared/validation/base/string.validators.ts","../lib/shared/validation/base/union.validators.ts","../lib/shared/validation/base/base.validators.ts","../lib/shared/validation/index.ts"],"sourcesContent":["export const RgxUnicode = /^[\\u0400-\\u04FF\\u00CB\\u00EB -]+$/ // Диапазон символов Unicode, включающий кириллические символы.*\nexport const RgxCheckForHyphen = /^(?:[^-]+(?:-[^-]+){0,4}|[^-]+)$/ // Проверяет количество дефисов a-b-c-d-e Валидный (до 4 дефисов), не валидный*\nexport const RgxPatronymic =\n /^[a-zA-Zа-яА-ЯёЁ]+(?:\\s*-\\s*[a-zA-Zа-яА-ЯёЁ]+){0,4}(?:\\s+[a-zA-Zа-яА-ЯёЁ]+(?:\\s*-\\s*[a-zA-Zа-яА-ЯёЁ]+){0,4})?$/i //Отчество для дадаты Отчество углы-ули Отчество-Отчество\n","import { z } from 'zod'\nimport { RgxCheckForHyphen, RgxPatronymic, RgxUnicode } from '../regExp'\n\nexport const formattedDadataFio = (value: string) => {\n const parts = value.trim().replace(/\\s+/g, ' ').split(' ')\n const [surname, name, ...patronymicArr] = parts\n const patronymic = patronymicArr?.join(' ')\n\n return {\n surname,\n name,\n patronymic\n }\n}\n\nexport const zodDadataFioSchema = z\n .string({ invalid_type_error: 'Обязательно к заполнению', required_error: 'Обязательно к заполнению' })\n .superRefine((value, ctx) => {\n if (value === '') {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите имя и фамилию'\n })\n }\n\n if (!RgxUnicode.test(value)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Должна быть только кириллица'\n })\n }\n\n const { surname, name, patronymic } = formattedDadataFio(value)\n\n if (!surname || !name) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите имя и фамилию'\n })\n }\n\n if (!RgxCheckForHyphen.test(name)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введено имя'\n })\n }\n\n if (!RgxCheckForHyphen.test(surname)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введена фамилия'\n })\n }\n\n if (patronymic) {\n if (!RgxPatronymic.test(patronymic)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введено отчество'\n })\n }\n }\n })\n","import { isValid, parse } from 'date-fns'\nimport { z } from 'zod'\nimport { VALIDATION_MESSAGES } from '../messages'\n\nexport const zodCalendarValidate = z\n .string()\n .length(10, { message: VALIDATION_MESSAGES.INVALID_DATE })\n .superRefine((val, ctx) => {\n const [day, month, year] = val?.split('.') ?? ''\n const parsed = parse(`${day}/${month}/${year}`, 'dd/MM/yyyy', new Date())\n\n if (+year <= 1950) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.INVALID_DATE\n })\n }\n\n if (!isValid(parsed)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.INVALID_DATE\n })\n }\n\n if (new Date().getTime() < new Date(parsed).getTime()) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.FUTURE_DATE_NOT_ALLOWED\n })\n }\n })\n","import { z } from 'zod'\n\nexport const zodPhoneSchema = z\n .string()\n .superRefine((value, ctx) => {\n const operatorCode = value.charAt(0)\n\n if (!['3', '4', '5', '6', '9'].includes(operatorCode)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9'\n })\n }\n\n if (value.length !== 10) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите номер телефона полностью'\n })\n }\n })\n .transform((value) => `7${value}`)\n","import { z } from 'zod'\nimport { VALIDATION_MESSAGES } from '../messages'\n\nexport const zodOtpCodeSchema = z.coerce\n .number()\n .min(1000, `${VALIDATION_MESSAGES.FIX_LENGTH} 4`)\n .max(9999, `${VALIDATION_MESSAGES.FIX_LENGTH} 4`)\n .nullable()\n .superRefine((value, context) => {\n if (value === null) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_type,\n expected: 'number',\n received: 'null',\n message: `${VALIDATION_MESSAGES.FIX_LENGTH} 4`\n })\n }\n })\n .default(null)\n","import { type Primitive } from 'zod'\n\nexport const baseDefaultMessages = {\n NON_EMPTY: () => 'Поле не может быть пустым',\n MIN_LENGTH: (min: number) => `Поле должно содержать минимум символов: ${min}`,\n MAX_LENGTH: (max: number) => `Поле должно содержать максимум символов: ${max}`,\n MIN_VALUE: (min: number) => `Значение не может быть меньше чем ${min}`,\n MAX_VALUE: (max: number) => `Значение не может быть больше чем ${max}`,\n PHONE_NON_EMPTY: () => 'Номер телефона должен состоять из 11 цифр',\n PHONE_INVALID_OPERATOR: () => 'Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9',\n EMAIL_INVALID: () => 'Email введен некорректно. Пример: example@domain.ru',\n EMAIL_NON_EMPTY: () => 'Введите адрес электронной почты',\n SELECT_NON_EMPTY: () => 'Выберите один из вариантов',\n SELECT_MULTIPLE_NON_EMPTY: (length: number) => `Выберите не менее ${length} вариантов`,\n DATE_INVALID_FORMAT: () => 'Дата указана некорректно',\n DATE_NON_EMPTY: () => 'Укажите дату',\n VALUE_OUT_OF_RANGE: <T extends Primitive>(range: T[]) => `Выберите один из вариантов ${range.join(', ')}`\n}\n","import { isValid, parse } from 'date-fns'\nimport z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { DATE_VISIBLE_PATTERN } from '$/shared/ui'\nimport { TypeGuards } from '$/shared/utils'\n\ntype DateValidationOptions = {\n /**\n * парсить строку с учетом ISO формата\n * @default false\n */\n iso?: boolean\n /**\n * шаблон для валидации строки (будет проигнорирован, если `iso = true`)\n * @default 'dd.MM.yyyy'\n */\n pattern?: string\n message?: {\n min?: string\n invalidDate?: string\n }\n}\n\n/**\n * Схема валидации опционального поля номера телефона\n * @param {DateValidationOptions} props настройки схемы\n * @typeParam `iso` - `boolean | undefined` `default: false`\n * @typeParam `pattern` - `string | undefined` `default: 'dd.MM.yyyy'`\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getDateRequired()\n * })\n * // will returns z.string()\n */\nexport const getDateRequired = (props?: DateValidationOptions) => {\n const { iso = false, pattern = DATE_VISIBLE_PATTERN, message } = props || {}\n\n return z\n .string()\n .min(8, message?.min || baseDefaultMessages.DATE_NON_EMPTY())\n .superRefine((value, context) => {\n const validSymbolsLength = pattern.replace(/\\W/g, '').length\n const cleanedValue = value.replace(/[._-]/g, '')\n\n if (cleanedValue.length < validSymbolsLength) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: validSymbolsLength,\n type: 'date',\n inclusive: true,\n message: message?.min || baseDefaultMessages.DATE_NON_EMPTY()\n })\n }\n\n if (iso) {\n try {\n new Date(value).toISOString()\n } catch {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n } else {\n const date = parse(value, pattern, new Date())\n\n if (!isValid(date)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n }\n })\n .default('')\n}\n\n/**\n * Схема валидации опционального поля номера телефона\n * @param {DateValidationOptions} props настройки схемы\n * @typeParam `iso` - `boolean | undefined` `default: false` парсить строку с учетом ISO формата\n * @typeParam `pattern` - `string | undefined` `default: 'dd.MM.yyyy'` шаблон для валидации строки (будет проигнорирован, если `iso = true`)\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getDateOptional()\n * })\n * // will returns z.string()\n */\nexport const getDateOptional = (props?: DateValidationOptions) => {\n const { iso = false, pattern = DATE_VISIBLE_PATTERN, message } = props || {}\n\n return z\n .string()\n .transform((value) => (!value ? undefined : value))\n .superRefine((value, context) => {\n if (TypeGuards.isString(value) && Boolean(value.length)) {\n const validSymbolsLength = pattern.replace(/\\W/g, '').length\n const cleanedValue = value.replace(/[._-]/g, '')\n\n if (cleanedValue.length < validSymbolsLength) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: validSymbolsLength,\n type: 'date',\n inclusive: true,\n message: message?.min || baseDefaultMessages.DATE_NON_EMPTY()\n })\n }\n\n if (iso) {\n try {\n new Date(value).toISOString()\n } catch {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n } else {\n const date = parse(value, pattern, new Date())\n\n if (!isValid(date)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n }\n }\n })\n .optional()\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { TypeGuards } from '$/shared/utils'\n\ntype EmailValidationOptions = {\n message?: {\n min?: string\n invalid?: string\n }\n}\n\nconst EMAIL_REGEX = /^[\\w-.]+@([\\w-]+\\.)+[\\w-]{2,4}$/g\n\n/**\n * Схема валидации обязательного поля типа email\n * @param {EmailValidationOptions} props настройки схемы\n * @typeParam `message` - `{ [min | invalid]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getEmailRequired({ message: { min: '' } })\n * })\n * // will returns z.string().min(1).email()\n */\nexport const getEmailRequired = (props?: EmailValidationOptions) => {\n const { message } = props || {}\n\n return z\n .string()\n .min(1, message?.min || baseDefaultMessages.EMAIL_NON_EMPTY())\n .regex(EMAIL_REGEX, message?.invalid || baseDefaultMessages.EMAIL_INVALID())\n .default('')\n}\n\n/**\n * Схема валидации опционального поля типа email\n * @param {EmailValidationOptions} props настройки схемы\n * @typeParam `message` - `{ [min | invalid]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getEmailOptional({ message: { min: '' } })\n * })\n * // will returns z.string().min(1).email().optional()\n */\nexport const getEmailOptional = (props?: EmailValidationOptions) => {\n const { message } = props || {}\n\n return z\n .string()\n .refine(\n (value) => {\n if (TypeGuards.isStringEmpty(value)) return true\n return EMAIL_REGEX.test(value)\n },\n {\n message: message?.invalid || baseDefaultMessages.EMAIL_INVALID()\n }\n )\n .optional()\n .transform((value) => (value?.length === 0 ? undefined : value))\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\ntype NumberValidationOptions = {\n min?: number\n max?: number\n message?: Record<keyof Omit<NumberValidationOptions, 'message'>, string>\n}\n\n/**\n * Схема валидации обязательного поля числового типа\n * @param {NumberValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getNumberRequired({ min: 10, max: 20 })\n * })\n * // will returns z.coerce.number().min(10).max(20)\n */\nexport const getNumberRequired = (props?: NumberValidationOptions) => {\n const { min = 0, max, message } = props || {}\n\n let schema = z.coerce.number().min(min, message?.min || baseDefaultMessages.MIN_VALUE(min))\n\n if (max) {\n schema = schema.max(max, message?.min || baseDefaultMessages.MAX_VALUE(max))\n }\n\n return schema.default(0)\n}\n\n/**\n * Схема валидации опционального поля числового типа\n * @param {NumberValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getNumberOptional({ min: 10, max: 20 })\n * })\n * // will returns z.coerce.number().min(10).max(20).optional()\n */\nexport const getNumberOptional = (props?: NumberValidationOptions) => {\n return getNumberRequired(props)\n .optional()\n .transform((value) => (!value ? undefined : value))\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\ntype PhoneValidationOptions = {\n /**\n * исключает маску в возвращаемом значении\n * @default false\n */\n ignoreMask?: boolean\n /**\n * игнорирует символы для проверки поля исключая данные символы\n * @default /[()+_ -]/g\n */\n maskSymbols?: RegExp\n message?: {\n min?: string\n invalidOperator?: string\n }\n}\n\n/**\n * Схема валидации обязательного поля номера телефона\n * @param {PhoneValidationOptions} props настройки схемы\n * @typeParam `ignoreMask` - `boolean | undefined` `default: false`\n * @typeParam `maskSymbols` - `RegExp | undefined` `default: /[()+_ -]/g`\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getPhoneRequired()\n * })\n * // will returns z.string()\n */\nexport const getPhoneRequired = (props?: PhoneValidationOptions) => {\n const { ignoreMask = true, maskSymbols = /[()+_ -]/g, message } = props || {}\n\n let schema = z.string().superRefine((value, context) => {\n const cleanValue = value.replace(maskSymbols, '')\n\n const operatorCode = cleanValue.charAt(1)\n\n if (!['3', '4', '5', '6', '7', '9'].includes(operatorCode)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_string,\n validation: 'regex',\n message: message?.invalidOperator || baseDefaultMessages.PHONE_INVALID_OPERATOR()\n })\n }\n\n if (cleanValue.length < 11) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: 11,\n inclusive: true,\n type: 'string',\n message: message?.min || baseDefaultMessages.PHONE_NON_EMPTY()\n })\n }\n })\n\n if (ignoreMask) {\n schema = schema.transform((value) => value.replace(maskSymbols, '')) as unknown as typeof schema\n }\n\n return schema.default('')\n}\n\n/**\n * Схема валидации опционального поля номера телефона\n * @param {PhoneValidationOptions} props настройки схемы\n * @typeParam `ignoreSeparators` - `boolean | undefined` `default: false` возвращает строку вырезая символы маски\n * @typeParam `maskSymbols` - `RegExp | undefined` `default: /[()+_ -]/g` игнорирует символы для проверки поля исключая данные символы\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getPhoneOptional()\n * })\n * // will returns z.string()\n */\nexport const getPhoneOptional = (props?: PhoneValidationOptions) => {\n const { ignoreMask = true, maskSymbols = /[()+_ -]/g, message } = props || {}\n\n let schema = z.string().superRefine((value, context) => {\n const cleanValue = value.replace(maskSymbols, '')\n\n const operatorCode = cleanValue.charAt(1)\n\n if (!['3', '4', '5', '6', '7', '9'].includes(operatorCode)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_string,\n validation: 'regex',\n message: message?.invalidOperator || baseDefaultMessages.PHONE_INVALID_OPERATOR()\n })\n }\n\n if (cleanValue.length < 11) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: 11,\n inclusive: true,\n type: 'string',\n message: message?.min || baseDefaultMessages.PHONE_NON_EMPTY()\n })\n }\n })\n\n if (ignoreMask) {\n schema = schema.transform((value) => value.replace(maskSymbols, '')) as unknown as typeof schema\n }\n\n return schema.transform((value) => (!value ? undefined : value))\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\ntype SelectSingleValidationOptions<Multi extends boolean = false> = {\n /**\n * включает валидацию мульти селекта\n * @default false\n */\n multiple?: Multi\n message?: {\n single?: string\n multiple?: string\n }\n}\n\ntype SelectMultipleValidationOptions<Multi extends boolean = true> = SelectSingleValidationOptions<Multi> & {\n /**\n * минимальное количество элементов\n * @default 0\n */\n minLength?: number\n}\n\ntype SelectValidationOptions<Multi extends boolean> = Multi extends true\n ? SelectMultipleValidationOptions<Multi>\n : SelectSingleValidationOptions<Multi>\n\n/**\n * Схема валидации обязательного поля типа select\n * @param {SelectValidationOptions} props настройки схемы\n * @typeParam `multiple` - `boolean`\n * @typeParam `minLength` - `number` `required if multiple = true`\n * @typeParam `message` - `{ [single | multiple]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getSelectRequired({ multiple: false })\n * })\n * // will returns z.string().min(1).nullable().refine(Boolean)\n *\n * z.object({\n * field: zodValidators.base.getSelectRequired({ multiple: true, minLength: 3 })\n * })\n * // will returns z.array(z.string().min(1).nullable().refine(Boolean))\n */\nexport const getSelectRequired = <Multi extends boolean>(props?: SelectValidationOptions<Multi>) => {\n const { message } = props || {}\n\n const selectSchema = z\n .string()\n .min(1, message?.single || baseDefaultMessages.SELECT_NON_EMPTY())\n .nullable()\n .refine((value) => Boolean(value), message?.single || baseDefaultMessages.SELECT_NON_EMPTY())\n .default(null)\n\n if (props?.multiple) {\n return z\n .array(selectSchema)\n .min(props?.minLength || 0, message?.multiple || baseDefaultMessages.SELECT_MULTIPLE_NON_EMPTY(props?.minLength || 0))\n .default([])\n }\n\n return selectSchema\n}\n\n/**\n * Схема валидации опционального поля типа select\n * @param {SelectValidationOptions} props настройки схемы\n * @typeParam `multiple` - `boolean`\n * @typeParam `minLength` - `number` `required if multiple = true`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getSelectOptional({ multiple: false })\n * })\n * // will returns z.string().nullable()\n *\n * z.object({\n * field: zodValidators.base.getSelectOptional({ multiple: true })\n * })\n * // will returns z.array(z.string().nullable())\n */\nexport const getSelectOptional = <Multi extends boolean>(props?: Omit<SelectValidationOptions<Multi>, 'message'>) => {\n const selectSchema = z.string().nullable().optional()\n\n if (props?.multiple) {\n return z.array(selectSchema).optional()\n }\n\n return selectSchema\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\ntype StringValidationOptions = {\n /**\n * минимальное количество символов\n * @default 1\n */\n min?: number\n /**\n * максимальное количество символов\n * @default undefined\n */\n max?: number\n message?: Record<keyof Omit<StringValidationOptions, 'message'>, string>\n}\n\n/**\n * Схема валидации обязательного поля строкового типа\n * @param {StringValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getStringRequired({ min: 10, max: 20 })\n * })\n * // will returns z.string().min(10).max(20)\n */\nexport const getStringRequired = (props?: StringValidationOptions) => {\n const { min = 1, max, message } = props || {}\n\n let schema = z.string().min(min, { message: message?.min || baseDefaultMessages.MIN_LENGTH(min) })\n\n if (max) {\n schema = schema.max(max, { message: message?.max || baseDefaultMessages.MAX_LENGTH(max) })\n }\n\n return schema.refine((value) => Boolean(value.length), { message: message?.min || baseDefaultMessages.NON_EMPTY() }).default('')\n}\n\n/**\n * Схема валидации обязательного поля строкового типа\n * @param {StringValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getStringOptional({ min: 10, max: 20 })\n * })\n * // will returns z.string().min(10).max(20).optional()\n */\nexport const getStringOptional = (props?: StringValidationOptions) => {\n const { min, max, message } = props || {}\n\n let schema = z.string()\n\n if (min) {\n schema = schema.min(min, { message: message?.min || baseDefaultMessages.MIN_LENGTH(min) })\n }\n\n if (max) {\n schema = schema.max(max, { message: message?.max || baseDefaultMessages.MAX_LENGTH(max) })\n }\n\n return schema.optional().transform((value) => (!value?.length ? undefined : value))\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\ntype UnionValidationOptions<T extends z.Primitive> = {\n message?: ((values: readonly T[]) => string) | string\n errorMap?: z.ZodErrorMap\n invalid_type_error?: string\n required_error?: string\n description?: string\n}\n\n/**\n * Схема валидации обязательного поля из выборки\n * @param {z.Primitive[]} values литералы\n * @param {z.RawCreateParams & { message: (values: z.Primitive[]) => string }} props настройки схемы\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getUnionRequired(['A', 'B'] as const)\n * }) ^ it need to infer literal type\n * // will returns z.union([z.literal('A'), z.literal('B')])\n */\nexport const getUnionRequired = <T extends z.Primitive>(values: [T, T, ...T[]], props?: UnionValidationOptions<T>) => {\n const { message, ...restProps } = props || {}\n\n const [first, second, ...other] = values.map((value) => z.literal(value))\n\n const errorMessage = (() => {\n if (message) {\n return typeof message === 'function' ? message(values) : message\n }\n\n return baseDefaultMessages.VALUE_OUT_OF_RANGE(values)\n })()\n\n return z.union([first, second, ...other], {\n message: errorMessage,\n ...restProps\n })\n}\n\n/**\n * Схема валидации обязательного поля из выборки\n * @param {z.Primitive} values литералы\n * @param {z.RawCreateParams & { message: (values: z.Primitive[]) => string }} props настройки схемы\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getUnionRequired(['A', 'B'] as const)\n * }) ^ it need to infer literal type\n * // will returns z.union([z.literal('A'), z.literal('B')]).optional()\n */\nexport const getUnionOptional = <T extends z.Primitive>(values: [T, T, ...T[]], props?: UnionValidationOptions<T>) => {\n return getUnionRequired(values, props).optional()\n}\n","import { getDateOptional, getDateRequired } from './date.validators'\nimport { getEmailOptional, getEmailRequired } from './email.validators'\nimport { getNumberOptional, getNumberRequired } from './number.validators'\nimport { getPhoneOptional, getPhoneRequired } from './phone.validators'\nimport { getSelectOptional, getSelectRequired } from './select.validators'\nimport { getStringOptional, getStringRequired } from './string.validators'\nimport { getUnionOptional, getUnionRequired } from './union.validators'\n\nexport const baseValidationSchemas = {\n getStringRequired,\n getStringOptional,\n getEmailRequired,\n getEmailOptional,\n getSelectRequired,\n getSelectOptional,\n getNumberRequired,\n getNumberOptional,\n getPhoneRequired,\n getPhoneOptional,\n getDateRequired,\n getDateOptional,\n getUnionRequired,\n getUnionOptional\n}\n","export * from './regExp'\nexport * from './messages'\nexport * from './zodValidation'\nimport { baseValidationSchemas } from './base'\n\nexport const zodValidators = {\n base: baseValidationSchemas\n}\n"],"names":["RgxUnicode","RgxCheckForHyphen","RgxPatronymic","formattedDadataFio","value","parts","surname","name","patronymicArr","patronymic","zodDadataFioSchema","z","ctx","zodCalendarValidate","VALIDATION_MESSAGES","val","day","month","year","parsed","parse","isValid","zodPhoneSchema","operatorCode","zodOtpCodeSchema","context","baseDefaultMessages","min","max","length","range","getDateRequired","props","iso","pattern","DATE_VISIBLE_PATTERN","message","validSymbolsLength","date","getDateOptional","TypeGuards","EMAIL_REGEX","getEmailRequired","getEmailOptional","getNumberRequired","schema","getNumberOptional","getPhoneRequired","ignoreMask","maskSymbols","cleanValue","getPhoneOptional","getSelectRequired","selectSchema","getSelectOptional","getStringRequired","getStringOptional","getUnionRequired","values","restProps","first","second","other","errorMessage","getUnionOptional","baseValidationSchemas","zodValidators"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validation.js","sources":["../lib/shared/validation/regExp.ts","../lib/shared/validation/zodValidation/dadataFio.ts","../lib/shared/validation/zodValidation/calendar.ts","../lib/shared/validation/zodValidation/phone.ts","../lib/shared/validation/zodValidation/otpCode.ts","../lib/shared/validation/base/base.constants.ts","../lib/shared/validation/base/date.validators.ts","../lib/shared/validation/base/email.validators.ts","../lib/shared/validation/base/number.validators.ts","../lib/shared/validation/base/phone.validators.ts","../lib/shared/validation/base/select.validators.ts","../lib/shared/validation/base/string.validators.ts","../lib/shared/validation/base/union.validators.ts","../lib/shared/validation/base/base.validators.ts","../lib/shared/validation/index.ts"],"sourcesContent":["export const RgxUnicode = /^[\\u0400-\\u04FF\\u00CB\\u00EB -]+$/ // Диапазон символов Unicode, включающий кириллические символы.*\nexport const RgxCheckForHyphen = /^(?:[^-]+(?:-[^-]+){0,4}|[^-]+)$/ // Проверяет количество дефисов a-b-c-d-e Валидный (до 4 дефисов), не валидный*\nexport const RgxPatronymic =\n /^[a-zA-Zа-яА-ЯёЁ]+(?:\\s*-\\s*[a-zA-Zа-яА-ЯёЁ]+){0,4}(?:\\s+[a-zA-Zа-яА-ЯёЁ]+(?:\\s*-\\s*[a-zA-Zа-яА-ЯёЁ]+){0,4})?$/i //Отчество для дадаты Отчество углы-ули Отчество-Отчество\n","import { z } from 'zod'\nimport { RgxCheckForHyphen, RgxPatronymic, RgxUnicode } from '../regExp'\n\nexport const formattedDadataFio = (value: string) => {\n const parts = value.trim().replace(/\\s+/g, ' ').split(' ')\n const [surname, name, ...patronymicArr] = parts\n const patronymic = patronymicArr?.join(' ')\n\n return {\n surname,\n name,\n patronymic\n }\n}\n\nexport const zodDadataFioSchema = z\n .string({ invalid_type_error: 'Обязательно к заполнению', required_error: 'Обязательно к заполнению' })\n .superRefine((value, ctx) => {\n if (value === '') {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите имя и фамилию'\n })\n }\n\n if (!RgxUnicode.test(value)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Должна быть только кириллица'\n })\n }\n\n const { surname, name, patronymic } = formattedDadataFio(value)\n\n if (!surname || !name) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите имя и фамилию'\n })\n }\n\n if (!RgxCheckForHyphen.test(name)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введено имя'\n })\n }\n\n if (!RgxCheckForHyphen.test(surname)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введена фамилия'\n })\n }\n\n if (patronymic) {\n if (!RgxPatronymic.test(patronymic)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введено отчество'\n })\n }\n }\n })\n","import { isValid, parse } from 'date-fns'\nimport { z } from 'zod'\nimport { VALIDATION_MESSAGES } from '../messages'\n\nexport const zodCalendarValidate = z\n .string()\n .length(10, { message: VALIDATION_MESSAGES.INVALID_DATE })\n .superRefine((val, ctx) => {\n const [day, month, year] = val?.split('.') ?? ''\n const parsed = parse(`${day}/${month}/${year}`, 'dd/MM/yyyy', new Date())\n\n if (+year <= 1950) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.INVALID_DATE\n })\n }\n\n if (!isValid(parsed)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.INVALID_DATE\n })\n }\n\n if (new Date().getTime() < new Date(parsed).getTime()) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.FUTURE_DATE_NOT_ALLOWED\n })\n }\n })\n","import { z } from 'zod'\n\nexport const zodPhoneSchema = z\n .string()\n .superRefine((value, ctx) => {\n const operatorCode = value.charAt(0)\n\n if (!['3', '4', '5', '6', '9'].includes(operatorCode)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9'\n })\n }\n\n if (value.length !== 10) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите номер телефона полностью'\n })\n }\n })\n .transform((value) => `7${value}`)\n","import { z } from 'zod'\nimport { VALIDATION_MESSAGES } from '../messages'\n\nexport const zodOtpCodeSchema = z.coerce\n .number()\n .min(1000, `${VALIDATION_MESSAGES.FIX_LENGTH} 4`)\n .max(9999, `${VALIDATION_MESSAGES.FIX_LENGTH} 4`)\n .nullable()\n .superRefine((value, context) => {\n if (value === null) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_type,\n expected: 'number',\n received: 'null',\n message: `${VALIDATION_MESSAGES.FIX_LENGTH} 4`\n })\n }\n })\n .default(null)\n","import { type Primitive } from 'zod'\n\nexport const baseDefaultMessages = {\n NON_EMPTY: () => 'Поле не может быть пустым',\n MIN_LENGTH: (min: number) => `Поле должно содержать минимум символов: ${min}`,\n MAX_LENGTH: (max: number) => `Поле должно содержать максимум символов: ${max}`,\n MIN_VALUE: (min: number) => `Значение не может быть меньше чем ${min}`,\n MAX_VALUE: (max: number) => `Значение не может быть больше чем ${max}`,\n PHONE_NON_EMPTY: () => 'Номер телефона должен состоять из 11 цифр',\n PHONE_INVALID_OPERATOR: () => 'Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9',\n EMAIL_INVALID: () => 'Email введен некорректно. Пример: example@domain.ru',\n EMAIL_NON_EMPTY: () => 'Введите адрес электронной почты',\n SELECT_NON_EMPTY: () => 'Выберите один из вариантов',\n SELECT_MULTIPLE_NON_EMPTY: (length: number) => `Выберите не менее ${length} вариантов`,\n DATE_INVALID_FORMAT: () => 'Дата указана некорректно',\n DATE_NON_EMPTY: () => 'Укажите дату',\n VALUE_OUT_OF_RANGE: <T extends Primitive>(range: T[]) => `Выберите один из вариантов ${range.join(', ')}`\n}\n","import { isValid, parse } from 'date-fns'\nimport z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { DATE_VISIBLE_PATTERN } from '$/shared/ui'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type DateValidationOptions = {\n /**\n * парсить строку с учетом ISO формата\n * @default false\n */\n iso?: boolean\n /**\n * шаблон для валидации строки (будет проигнорирован, если `iso = true`)\n * @default 'dd.MM.yyyy'\n */\n pattern?: string\n message?: {\n min?: string\n invalidDate?: string\n }\n}\n\n/**\n * Схема валидации опционального поля номера телефона\n * @param {DateValidationOptions} props настройки схемы\n * @typeParam `iso` - `boolean | undefined` `default: false`\n * @typeParam `pattern` - `string | undefined` `default: 'dd.MM.yyyy'`\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getDateRequired()\n * })\n * // will returns z.string()\n */\nexport const getDateRequired = (props?: DateValidationOptions) => {\n const { iso = false, pattern = DATE_VISIBLE_PATTERN, message } = props || {}\n\n return z\n .string()\n .min(8, message?.min || baseDefaultMessages.DATE_NON_EMPTY())\n .superRefine((value, context) => {\n const validSymbolsLength = pattern.replace(/\\W/g, '').length\n const cleanedValue = value.replace(/[._-]/g, '')\n\n if (cleanedValue.length < validSymbolsLength) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: validSymbolsLength,\n type: 'date',\n inclusive: true,\n message: message?.min || baseDefaultMessages.DATE_NON_EMPTY()\n })\n }\n\n if (iso) {\n try {\n new Date(value).toISOString()\n } catch {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n } else {\n const date = parse(value, pattern, new Date())\n\n if (!isValid(date)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n }\n })\n .default('')\n}\n\n/**\n * Схема валидации опционального поля номера телефона\n * @param {DateValidationOptions} props настройки схемы\n * @typeParam `iso` - `boolean | undefined` `default: false` парсить строку с учетом ISO формата\n * @typeParam `pattern` - `string | undefined` `default: 'dd.MM.yyyy'` шаблон для валидации строки (будет проигнорирован, если `iso = true`)\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getDateOptional()\n * })\n * // will returns z.string()\n */\nexport const getDateOptional = (props?: DateValidationOptions) => {\n const { iso = false, pattern = DATE_VISIBLE_PATTERN, message } = props || {}\n\n return z\n .string()\n .transform((value) => (!value ? undefined : value))\n .superRefine((value, context) => {\n if (TypeGuards.isString(value) && Boolean(value.length)) {\n const validSymbolsLength = pattern.replace(/\\W/g, '').length\n const cleanedValue = value.replace(/[._-]/g, '')\n\n if (cleanedValue.length < validSymbolsLength) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: validSymbolsLength,\n type: 'date',\n inclusive: true,\n message: message?.min || baseDefaultMessages.DATE_NON_EMPTY()\n })\n }\n\n if (iso) {\n try {\n new Date(value).toISOString()\n } catch {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n } else {\n const date = parse(value, pattern, new Date())\n\n if (!isValid(date)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n }\n }\n })\n .optional()\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type EmailValidationOptions = {\n message?: {\n min?: string\n invalid?: string\n }\n}\n\nconst EMAIL_REGEX = /^[\\w-.]+@([\\w-]+\\.)+[\\w-]{2,4}$/g\n\n/**\n * Схема валидации обязательного поля типа email\n * @param {EmailValidationOptions} props настройки схемы\n * @typeParam `message` - `{ [min | invalid]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getEmailRequired({ message: { min: '' } })\n * })\n * // will returns z.string().min(1).email()\n */\nexport const getEmailRequired = (props?: EmailValidationOptions) => {\n const { message } = props || {}\n\n return z\n .string()\n .min(1, message?.min || baseDefaultMessages.EMAIL_NON_EMPTY())\n .regex(EMAIL_REGEX, message?.invalid || baseDefaultMessages.EMAIL_INVALID())\n .default('')\n}\n\n/**\n * Схема валидации опционального поля типа email\n * @param {EmailValidationOptions} props настройки схемы\n * @typeParam `message` - `{ [min | invalid]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getEmailOptional({ message: { min: '' } })\n * })\n * // will returns z.string().min(1).email().optional()\n */\nexport const getEmailOptional = (props?: EmailValidationOptions) => {\n const { message } = props || {}\n\n return z\n .string()\n .refine(\n (value) => {\n if (TypeGuards.isStringEmpty(value)) return true\n return EMAIL_REGEX.test(value)\n },\n {\n message: message?.invalid || baseDefaultMessages.EMAIL_INVALID()\n }\n )\n .optional()\n .transform((value) => (value?.length === 0 ? undefined : value))\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\nexport type NumberValidationOptions = {\n min?: number\n max?: number\n message?: Record<keyof Omit<NumberValidationOptions, 'message'>, string>\n}\n\n/**\n * Схема валидации обязательного поля числового типа\n * @param {NumberValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getNumberRequired({ min: 10, max: 20 })\n * })\n * // will returns z.coerce.number().min(10).max(20)\n */\nexport const getNumberRequired = (props?: NumberValidationOptions) => {\n const { min = 0, max, message } = props || {}\n\n let schema = z.coerce.number().min(min, message?.min || baseDefaultMessages.MIN_VALUE(min))\n\n if (max) {\n schema = schema.max(max, message?.min || baseDefaultMessages.MAX_VALUE(max))\n }\n\n return schema.default(0)\n}\n\n/**\n * Схема валидации опционального поля числового типа\n * @param {NumberValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getNumberOptional({ min: 10, max: 20 })\n * })\n * // will returns z.coerce.number().min(10).max(20).optional()\n */\nexport const getNumberOptional = (props?: NumberValidationOptions) => {\n return getNumberRequired(props)\n .optional()\n .transform((value) => (!value ? undefined : value))\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\nexport type PhoneValidationOptions = {\n /**\n * исключает маску в возвращаемом значении\n * @default false\n */\n ignoreMask?: boolean\n /**\n * игнорирует символы для проверки поля исключая данные символы\n * @default /[()+_ -]/g\n */\n maskSymbols?: RegExp\n message?: {\n min?: string\n invalidOperator?: string\n }\n}\n\n/**\n * Схема валидации обязательного поля номера телефона\n * @param {PhoneValidationOptions} props настройки схемы\n * @typeParam `ignoreMask` - `boolean | undefined` `default: false`\n * @typeParam `maskSymbols` - `RegExp | undefined` `default: /[()+_ -]/g`\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getPhoneRequired()\n * })\n * // will returns z.string()\n */\nexport const getPhoneRequired = (props?: PhoneValidationOptions) => {\n const { ignoreMask = true, maskSymbols = /[()+_ -]/g, message } = props || {}\n\n let schema = z.string().superRefine((value, context) => {\n const cleanValue = value.replace(maskSymbols, '')\n\n const operatorCode = cleanValue.charAt(1)\n\n if (!['3', '4', '5', '6', '7', '9'].includes(operatorCode)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_string,\n validation: 'regex',\n message: message?.invalidOperator || baseDefaultMessages.PHONE_INVALID_OPERATOR()\n })\n }\n\n if (cleanValue.length < 11) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: 11,\n inclusive: true,\n type: 'string',\n message: message?.min || baseDefaultMessages.PHONE_NON_EMPTY()\n })\n }\n })\n\n if (ignoreMask) {\n schema = schema.transform((value) => value.replace(maskSymbols, '')) as unknown as typeof schema\n }\n\n return schema.default('')\n}\n\n/**\n * Схема валидации опционального поля номера телефона\n * @param {PhoneValidationOptions} props настройки схемы\n * @typeParam `ignoreSeparators` - `boolean | undefined` `default: false` возвращает строку вырезая символы маски\n * @typeParam `maskSymbols` - `RegExp | undefined` `default: /[()+_ -]/g` игнорирует символы для проверки поля исключая данные символы\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getPhoneOptional()\n * })\n * // will returns z.string()\n */\nexport const getPhoneOptional = (props?: PhoneValidationOptions) => {\n const { ignoreMask = true, maskSymbols = /[()+_ -]/g, message } = props || {}\n\n let schema = z.string().superRefine((value, context) => {\n const cleanValue = value.replace(maskSymbols, '')\n\n const operatorCode = cleanValue.charAt(1)\n\n if (!['3', '4', '5', '6', '7', '9'].includes(operatorCode)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_string,\n validation: 'regex',\n message: message?.invalidOperator || baseDefaultMessages.PHONE_INVALID_OPERATOR()\n })\n }\n\n if (cleanValue.length < 11) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: 11,\n inclusive: true,\n type: 'string',\n message: message?.min || baseDefaultMessages.PHONE_NON_EMPTY()\n })\n }\n })\n\n if (ignoreMask) {\n schema = schema.transform((value) => value.replace(maskSymbols, '')) as unknown as typeof schema\n }\n\n return schema.transform((value) => (!value ? undefined : value))\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\nexport type SelectSingleValidationOptions<Multi extends boolean = false> = {\n /**\n * включает валидацию мульти селекта\n * @default false\n */\n multiple?: Multi\n message?: {\n single?: string\n multiple?: string\n }\n}\n\ntype SelectMultipleValidationOptions<Multi extends boolean = true> = SelectSingleValidationOptions<Multi> & {\n /**\n * минимальное количество элементов\n * @default 0\n */\n minLength?: number\n}\n\ntype SelectValidationOptions<Multi extends boolean> = Multi extends true\n ? SelectMultipleValidationOptions<Multi>\n : SelectSingleValidationOptions<Multi>\n\n/**\n * Схема валидации обязательного поля типа select\n * @param {SelectValidationOptions} props настройки схемы\n * @typeParam `multiple` - `boolean`\n * @typeParam `minLength` - `number` `required if multiple = true`\n * @typeParam `message` - `{ [single | multiple]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getSelectRequired({ multiple: false })\n * })\n * // will returns z.string().min(1).nullable().refine(Boolean)\n *\n * z.object({\n * field: zodValidators.base.getSelectRequired({ multiple: true, minLength: 3 })\n * })\n * // will returns z.array(z.string().min(1).nullable().refine(Boolean))\n */\nexport const getSelectRequired = <Multi extends boolean>(props?: SelectValidationOptions<Multi>) => {\n const { message } = props || {}\n\n const selectSchema = z\n .string()\n .min(1, message?.single || baseDefaultMessages.SELECT_NON_EMPTY())\n .nullable()\n .refine((value) => Boolean(value), message?.single || baseDefaultMessages.SELECT_NON_EMPTY())\n .default(null)\n\n if (props?.multiple) {\n return z\n .array(selectSchema)\n .min(props?.minLength || 0, message?.multiple || baseDefaultMessages.SELECT_MULTIPLE_NON_EMPTY(props?.minLength || 0))\n .default([])\n }\n\n return selectSchema\n}\n\n/**\n * Схема валидации опционального поля типа select\n * @param {SelectValidationOptions} props настройки схемы\n * @typeParam `multiple` - `boolean`\n * @typeParam `minLength` - `number` `required if multiple = true`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getSelectOptional({ multiple: false })\n * })\n * // will returns z.string().nullable()\n *\n * z.object({\n * field: zodValidators.base.getSelectOptional({ multiple: true })\n * })\n * // will returns z.array(z.string().nullable())\n */\nexport const getSelectOptional = <Multi extends boolean>(props?: Omit<SelectValidationOptions<Multi>, 'message'>) => {\n const selectSchema = z.string().nullable().optional()\n\n if (props?.multiple) {\n return z.array(selectSchema).optional()\n }\n\n return selectSchema\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\nexport type StringValidationOptions = {\n /**\n * минимальное количество символов\n * @default 1\n */\n min?: number\n /**\n * максимальное количество символов\n * @default undefined\n */\n max?: number\n message?: Record<keyof Omit<StringValidationOptions, 'message'>, string>\n}\n\n/**\n * Схема валидации обязательного поля строкового типа\n * @param {StringValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getStringRequired({ min: 10, max: 20 })\n * })\n * // will returns z.string().min(10).max(20)\n */\nexport const getStringRequired = (props?: StringValidationOptions) => {\n const { min = 1, max, message } = props || {}\n\n let schema = z.string().min(min, { message: message?.min || baseDefaultMessages.MIN_LENGTH(min) })\n\n if (max) {\n schema = schema.max(max, { message: message?.max || baseDefaultMessages.MAX_LENGTH(max) })\n }\n\n return schema.refine((value) => Boolean(value.length), { message: message?.min || baseDefaultMessages.NON_EMPTY() }).default('')\n}\n\n/**\n * Схема валидации обязательного поля строкового типа\n * @param {StringValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getStringOptional({ min: 10, max: 20 })\n * })\n * // will returns z.string().min(10).max(20).optional()\n */\nexport const getStringOptional = (props?: StringValidationOptions) => {\n const { min, max, message } = props || {}\n\n let schema = z.string()\n\n if (min) {\n schema = schema.min(min, { message: message?.min || baseDefaultMessages.MIN_LENGTH(min) })\n }\n\n if (max) {\n schema = schema.max(max, { message: message?.max || baseDefaultMessages.MAX_LENGTH(max) })\n }\n\n return schema.optional().transform((value) => (!value?.length ? undefined : value))\n}\n","import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\n\nexport type UnionValidationOptions<T extends z.Primitive> = {\n message?: ((values: readonly T[]) => string) | string\n errorMap?: z.ZodErrorMap\n invalid_type_error?: string\n required_error?: string\n description?: string\n}\n\n/**\n * Схема валидации обязательного поля из выборки\n * @param {z.Primitive[]} values литералы\n * @param {z.RawCreateParams & { message: (values: z.Primitive[]) => string }} props настройки схемы\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getUnionRequired(['A', 'B'] as const)\n * }) ^ it need to infer literal type\n * // will returns z.union([z.literal('A'), z.literal('B')])\n */\nexport const getUnionRequired = <T extends z.Primitive>(values: [T, T, ...T[]], props?: UnionValidationOptions<T>) => {\n const { message, ...restProps } = props || {}\n\n const [first, second, ...other] = values.map((value) => z.literal(value))\n\n const errorMessage = (() => {\n if (message) {\n return typeof message === 'function' ? message(values) : message\n }\n\n return baseDefaultMessages.VALUE_OUT_OF_RANGE(values)\n })()\n\n return z.union([first, second, ...other], {\n message: errorMessage,\n ...restProps\n })\n}\n\n/**\n * Схема валидации обязательного поля из выборки\n * @param {z.Primitive} values литералы\n * @param {z.RawCreateParams & { message: (values: z.Primitive[]) => string }} props настройки схемы\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example\n * z.object({\n * field: zodValidators.base.getUnionRequired(['A', 'B'] as const)\n * }) ^ it need to infer literal type\n * // will returns z.union([z.literal('A'), z.literal('B')]).optional()\n */\nexport const getUnionOptional = <T extends z.Primitive>(values: [T, T, ...T[]], props?: UnionValidationOptions<T>) => {\n return getUnionRequired(values, props).optional()\n}\n","import { getDateOptional, getDateRequired } from './date.validators'\nimport { getEmailOptional, getEmailRequired } from './email.validators'\nimport { getNumberOptional, getNumberRequired } from './number.validators'\nimport { getPhoneOptional, getPhoneRequired } from './phone.validators'\nimport { getSelectOptional, getSelectRequired } from './select.validators'\nimport { getStringOptional, getStringRequired } from './string.validators'\nimport { getUnionOptional, getUnionRequired } from './union.validators'\n\nexport const baseValidationSchemas = {\n getStringRequired,\n getStringOptional,\n getEmailRequired,\n getEmailOptional,\n getSelectRequired,\n getSelectOptional,\n getNumberRequired,\n getNumberOptional,\n getPhoneRequired,\n getPhoneOptional,\n getDateRequired,\n getDateOptional,\n getUnionRequired,\n getUnionOptional\n}\n","export * from './regExp'\nexport * from './messages'\nexport * from './zodValidation'\nexport type * from './base'\nimport { baseValidationSchemas } from './base'\n\nexport const zodValidators = {\n base: baseValidationSchemas\n}\n"],"names":["RgxUnicode","RgxCheckForHyphen","RgxPatronymic","formattedDadataFio","value","parts","surname","name","patronymicArr","patronymic","zodDadataFioSchema","z","ctx","zodCalendarValidate","VALIDATION_MESSAGES","val","day","month","year","parsed","parse","isValid","zodPhoneSchema","operatorCode","zodOtpCodeSchema","context","baseDefaultMessages","min","max","length","range","getDateRequired","props","iso","pattern","DATE_VISIBLE_PATTERN","message","validSymbolsLength","date","getDateOptional","TypeGuards","EMAIL_REGEX","getEmailRequired","getEmailOptional","getNumberRequired","schema","getNumberOptional","getPhoneRequired","ignoreMask","maskSymbols","cleanValue","getPhoneOptional","getSelectRequired","selectSchema","getSelectOptional","getStringRequired","getStringOptional","getUnionRequired","values","restProps","first","second","other","errorMessage","getUnionOptional","baseValidationSchemas","zodValidators"],"mappings":"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"}
|
package/dist/widget.js
CHANGED
|
@@ -2341,7 +2341,7 @@ const Se = /* @__PURE__ */ gt(ze), Hr = Se.default || Se, Br = ({ classes: e, in
|
|
|
2341
2341
|
variants: {
|
|
2342
2342
|
intent: {
|
|
2343
2343
|
twoItems: "mob-headline-bold-s mb-6 desktop:desk-headline-bold-m desktop:mb-12",
|
|
2344
|
-
fourItems: "mob-title-bold-l desktop:desk-title-bold-l
|
|
2344
|
+
fourItems: "mob-title-bold-l desktop:desk-title-bold-l mb-8"
|
|
2345
2345
|
},
|
|
2346
2346
|
desktopHidden: {
|
|
2347
2347
|
true: "desktop:hidden"
|
|
@@ -2353,7 +2353,7 @@ const Se = /* @__PURE__ */ gt(ze), Hr = Se.default || Se, Br = ({ classes: e, in
|
|
|
2353
2353
|
defaultVariants: {
|
|
2354
2354
|
intent: "twoItems"
|
|
2355
2355
|
}
|
|
2356
|
-
}), zr = I("
|
|
2356
|
+
}), zr = I("", {
|
|
2357
2357
|
variants: {
|
|
2358
2358
|
intent: {
|
|
2359
2359
|
twoItems: "",
|