From 48442f77697d6fd12cc1556ee522503da6709bc0 Mon Sep 17 00:00:00 2001 From: Yury Shkoda Date: Wed, 21 Apr 2021 08:11:13 +0300 Subject: [PATCH] fix(utility): improved 'isUrl' utility --- src/utils/isUrl.ts | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/utils/isUrl.ts b/src/utils/isUrl.ts index 31d321b..4e54757 100644 --- a/src/utils/isUrl.ts +++ b/src/utils/isUrl.ts @@ -3,14 +3,11 @@ * @param url - string to check. */ export const isUrl = (url: string): boolean => { - const pattern = new RegExp( - '^(http://|https://)[a-z0-9]+([-.]{1}[a-z0-9]+)*.[a-z]{2,5}(:[0-9]{1,5})?(/.*)?$', - 'gi' - ) + try { + const validUrl = new URL(url) + } catch (_) { + return false + } - if (pattern.test(url)) return true - else - throw new Error( - `'${url}' is not a valid url. An example of a valid url is 'http://valid-url.com'.` - ) + return true }