1import{i as a}from"./chunkReloadRecoveryrjuMb-b8.js";import{c as u,t as c}from"./url.utils3SlYVg-c.js";function l(n){return/^(?:\d{1,3}\.){3}\d{1,3}$/.test(n)}function s(n){if(!n||typeof n!="string")return null;const t=n.trim();return t?u(c(t))||t:null}function w(n){const t=s(n);return t?a(t).toLowerCase():null}function m(n){const t=s(n);if(!t)return[];try{const o=new URL(t),r=o.hostname.toLowerCase(),e=new Set([o.toString()]);if(r!=="localhost"&&!l(r)){if(r.startsWith("www.")){const i=new URL(o.toString());i.hostname=r.replace(/^www\./i,""),e.add(i.toString())}else if(r.includes(".")){const i=new URL(o.toString());i.hostname=`www.${r}`,e.add(i.toString())}}return Array.from(e)}catch{return[t]}}function p(n){var r;const t=new Set,o=[];for(const e of n||[]){const i=w(((r=e==null?void 0:e.details)==null?void 0:r.url)||"")||`item:${(e==null?void 0:e.itemId)||o.length}`;t.has(i)||(t.add(i),o.push(e))}return o}export{m as a,p as d,w as g};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.