'use strict';const require$$0=require('tldts'),looseTldtsOpt=require('./loose-tldts-opt.DLUpGXpj.cjs'),require$$2=require('foxts/is-probably-ip');var normalizeDomain = {};var hasRequiredNormalizeDomain; function requireNormalizeDomain () { if (hasRequiredNormalizeDomain) return normalizeDomain; hasRequiredNormalizeDomain = 1; (function (exports) { Object.defineProperty(exports, "__esModule", { value: true }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: all[name] }); } _export(exports, { fastNormalizeDomain: function() { return fastNormalizeDomain; }, fastNormalizeDomainWithoutWww: function() { return fastNormalizeDomainWithoutWww; }, normalizeDomain: function() { return normalizeDomain; } }); const _tldts = /*#__PURE__*/ _interop_require_default(require$$0); const _loosetldtsopt = /*@__PURE__*/ looseTldtsOpt.r(); const _isprobablyip = require$$2; function _interop_require_default(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function fastNormalizeDomainWithoutWww(domain, parsed = null) { // We don't want tldts to call its own "extractHostname" on ip, bail out ip first. // Now ip has been bailed out, we can safely set normalizeTldtsOpt.detectIp to false. if ((0, _isprobablyip.isProbablyIpv4)(domain) || (0, _isprobablyip.isProbablyIpv6)(domain)) { return null; } parsed ??= _tldts.default.parse(domain, _loosetldtsopt.normalizeTldtsOpt); // Private invalid domain (things like .tor, .dn42, etc) if (!parsed.isIcann && !parsed.isPrivate) return null; if (parsed.subdomain) { if (parsed.subdomain === 'www') { return parsed.domain; } if (parsed.subdomain.startsWith('www.')) { return parsed.subdomain.slice(4) + '.' + parsed.domain; } } return parsed.hostname; } function fastNormalizeDomain(domain, parsed = null) { // We don't want tldts to call its own "extractHostname" on ip, bail out ip first. // Now ip has been bailed out, we can safely set normalizeTldtsOpt.detectIp to false. if ((0, _isprobablyip.isProbablyIpv4)(domain) || (0, _isprobablyip.isProbablyIpv6)(domain)) { return null; } parsed ??= _tldts.default.parse(domain, _loosetldtsopt.normalizeTldtsOpt); // Private invalid domain (things like .tor, .dn42, etc) if (!parsed.isIcann && !parsed.isPrivate) return null; return parsed.hostname; } function normalizeDomain(domain, parsed = null) { if (domain.length === 0) return null; if ((0, _isprobablyip.isProbablyIpv4)(domain) || (0, _isprobablyip.isProbablyIpv6)(domain)) { return null; } parsed ??= _tldts.default.parse(domain, _loosetldtsopt.normalizeTldtsOpt); // Private invalid domain (things like .tor, .dn42, etc) if (!parsed.isIcann && !parsed.isPrivate) return null; // const h = parsed.hostname; // if (h === null) return null; return parsed.hostname; } } (normalizeDomain)); return normalizeDomain; }exports.r=requireNormalizeDomain;