diff options
Diffstat (limited to 'packages/browser/src/helpers/isValidDomain.ts')
-rw-r--r-- | packages/browser/src/helpers/isValidDomain.ts | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/packages/browser/src/helpers/isValidDomain.ts b/packages/browser/src/helpers/isValidDomain.ts new file mode 100644 index 0000000..ee68818 --- /dev/null +++ b/packages/browser/src/helpers/isValidDomain.ts @@ -0,0 +1,11 @@ +/** + * A simple test to determine if a hostname is a properly-formatted domain name + * + * A "valid domain" is defined here: https://url.spec.whatwg.org/#valid-domain + * + * Regex sourced from here: + * https://www.oreilly.com/library/view/regular-expressions-cookbook/9781449327453/ch08s15.html + */ +export function isValidDomain(hostname: string): boolean { + return /^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$/i.test(hostname); +} |