url: return host instead of bool for success

This commit is contained in:
dumbmoron
2023-12-14 22:51:24 +00:00
parent 3056624b3d
commit 662360509c
2 changed files with 9 additions and 10 deletions

View File

@ -84,19 +84,17 @@ export function normalizeURL(url) {
);
}
export function hasValidHostname(url) {
export function getHostIfValid(url) {
const host = psl.parse(url.hostname);
if (host.error) return false;
if (host.error) return;
const service = services[host.sld];
if (!service) return false;
if ((service.tld ?? 'com') !== host.tld) return false;
if (!service) return;
if ((service.tld ?? 'com') !== host.tld) return;
const anySubdomainAllowed = service.subdomains === '*';
const validSubdomain = [null, 'www', ...(service.subdomains ?? [])].includes(host.subdomain);
if (!validSubdomain && !anySubdomainAllowed)
return false;
if (!validSubdomain && !anySubdomainAllowed) return;
return true;
return host.sld;
}