1const t=new Set(["http","https","ftp","mailto","tel"]),e=/^([a-zA-Z][a-zA-Z0-9+.-]*):/,n=/[\u0000-\u001F\u007F]/,r=/\s/g;function s(s){if(!s)return!1;if(n.test(s))return!1;const u=e.exec(s.replace(r,""));return!u||t.has(u[1].toLowerCase())}function u(t){if("string"!=typeof t)return null;const e=t.trim();return s(e)?e:null}export{s as i,u as s};
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.