Этот экземпляр Ajv содержит дополнительные ключевые слова для валидации:
rule
: Правила валидации, зависящие от переданного значения. Доступные значения:inn
,kpp
,bik
,account
,bodyNumber
,cyrillic
,latin
,snils
,vehicleNumber
. Можно использовать модификаторы:required
- аналогisNotEmpty
,tinkoff
- разрешает ввод поля "0" (только дляinn
иkpp
). Модификаторы добавляются через дефис. Пример:inn-tinkoff-required
.isNotEmpty
: Запрет на ввод пустой строки.maskedNumberLength
: Валидация длины поля при использовании маски (допускает оставление поля пустым).maskedNumberLengthStrict
: Валидация длины поля при использовании маски (не допускает оставление поля пустым).countWords
: Проверяет минимальное количество слов в строке.minDate
: Минимальная дата в формате YYYY-MM-DD.maxDate
: Максимальная дата в формате YYYY-MM-DD.
bodyNumber
: Проверяет валидность номера кузова автомобиля.vehicleNumber
: Проверяет валидность VIN-номера автомобиля.inn
: Проверяет валидность ИНН по контрольной сумме.snils
: Проверяет валидность СНИЛС по контрольной сумме.cyrillic
: Допускает ввод только кириллицы и символов ".", ",", ":", "!", "?", "(", ")", """, ";", "_", "/", "", "'", "-", " ".latin
: Допускает ввод только латиницы и символов ".", ",", ":", "!", "?", "(", ")", """, ";", "_", "/", "", "'", "-", " ".
npm i @ilb/ajvinstance
import { ajv } from '@ilb/ajvinstance';
const validator = ajv.compile(schema);