Skip to content

url ​

Строка — ссылка с разрешённым протоколом. По умолчанию только http и https.

Сигнатура ​

ts
function url(msg?: Message, protocols?: string[]): Action<string>

Параметры ​

ПараметрТипОписание
msgMessageСвоё сообщение об ошибке
protocolsstring[]Разрешённые протоколы. По умолчанию ['http', 'https']

Коды ошибок ​

КодКогдаСообщение по умолчанию
urlНе ссылка или другой протоколInvalid URL

Тексты можно поменять: см. Сообщения и локализация.

Особенности ​

Ссылки вида javascript: и data: не пройдут — значение безопасно выводить в href. Домен без протокола (example.com) — тоже ошибка: добавьте протокол preprocess или startsWith.

Пример ​

ts
const Profile = object({
  website: optional(pipe(string(), trim(), url())),
  ftp: optional(pipe(string(), url(undefined, ['ftp', 'sftp']))),
});

См. также ​