1function D(r){for(var n=[],e=0;e<r.length;){var t=r[e];if(t==="*"||t==="+"||t==="?"){n.push({type:"MODIFIER",index:e,value:r[e++]});continue}if(t==="\\"){n.push({type:"ESCAPED_CHAR",index:e++,value:r[e++]});continue}if(t==="{"){n.push({type:"OPEN",index:e,value:r[e++]});continue}if(t==="}"){n.push({type:"CLOSE",index:e,value:r[e++]});continue}if(t===":"){for(var v="",a=e+1;a<r.length;){var c=r.charCodeAt(a);if(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122||c===95){v+=r[a++];continue}break}if(!v)throw new TypeError("Missing parameter name at ".concat(e));n.push({type:"NAME",index:e,value:v}),e=a;continue}if(t==="("){var g=1,o="",a=e+1;if(r[a]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<r.length;){if(r[a]==="\\"){o+=r[a++]+r[a++];continue}if(r[a]===")"){if(g--,g===0){a++;break}}else if(r[a]==="("&&(g++,r[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));o+=r[a++]}if(g)throw new TypeError("Unbalanced pattern at ".concat(e));if(!o)throw new TypeError("Missing pattern at ".concat(e));n.push({type:"PATTERN",index:e,value:o}),e=a;continue}n.push({type:"CHAR",index:e,value:r[e++]})}return n.push({type:"END",index:e,value:""}),n}function P(r,n){n===void 0&&(n={});for(var e=D(r),t=n.prefixes,v=t===void 0?"./":t,a="[^".concat(T(n.delimiter||"/#?"),"]+?"),c=[],g=0,o=0,d="",f=function(h){if(o<e.length&&e[o].type===h)return e[o++].value},i=function(h){var s=f(h);if(s!==void 0)return s;var R=e[o],b=R.type,N=R.index;throw new TypeError("Unexpected ".concat(b," at ").concat(N,", expected ").concat(h))},l=function(){for(var h="",s;s=f("CHAR")||f("ESCAPED_CHAR");)h+=s;return h};o<e.length;){var x=f("CHAR"),y=f("NAME"),E=f("PATTERN");if(y||E){var p=x||"";v.indexOf(p)===-1&&(d+=p,p=""),d&&(c.push(d),d=""),c.push({name:y||g++,prefix:p,suffix:"",pattern:E||a,modifier:f("MODIFIER")||""});continue}var m=x||f("ESCAPED_CHAR");if(m){d+=m;continue}d&&(c.push(d),d="");var A=f("OPEN");if(A){var p=l(),C=f("NAME")||"",u=f("PATTERN")||"",w=l();i("CLOSE"),c.push({name:C||(u?g++:""),pattern:C&&!u?a:u,prefix:p,suffix:w,modifier:f("MODIFIER")||""});continue}i("END")}return c}function W(r,n){return M(P(r,n),n)}function M(r,n){n===void 0&&(n={});var e=O(n),t=n.encode,v=t===void 0?function(o){return o}:t,a=n.validate,c=a===void 0?!0:a,g=r.map(function(o){if(typeof o=="object")return new RegExp("^(?:".concat(o.pattern,")$"),e)});return function(o){for(var d="",f=0;f<r.length;f++){var i=r[f];if(typeof i=="string"){d+=i;continue}var l=o?o[i.name]:void 0,x=i.modifier==="?"||i.modifier==="*",y=i.modifier==="*"||i.modifier==="+";if(Array.isArray(l)){if(!y)throw new TypeError('Expected "'.concat(i.name,'" to not repeat, but got an array'));if(l.length===0){if(x)continue;throw new TypeError('Expected "'.concat(i.name,'" to not be empty'))}for(var E=0;E<l.length;E++){var p=v(l[E],i);if(c&&!g[f].test(p))throw new TypeError('Expected all "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(p,'"'));d+=i.prefix+p+i.suffix}continue}if(typeof l=="string"||typeof l=="number"){var p=v(String(l),i);if(c&&!g[f].test(p))throw new TypeError('Expected "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(p,'"'));d+=i.prefix+p+i.suffix;continue}if(!x){var m=y?"an array":"a string";throw new TypeError('Expected "'.concat(i.name,'" to be ').concat(m))}}return d}}function L(r,n){var e=[],t=_(r,e,n);return S(t,e,n)}function S(r,n,e){e===void 0&&(e={});var t=e.decode,v=t===void 0?function(a){return a}:t;return function(a){var c=r.exec(a);if(!c)return!1;for(var g=c[0],o=c.index,d=Object.create(null),f=function(l){if(c[l]===void 0)return"continue";var x=n[l-1];x.modifier==="*"||x.modifier==="+"?d[x.name]=c[l].split(x.prefix+x.suffix).map(function(y){return v(y,x)}):d[x.name]=v(c[l],x)},i=1;i<c.length;i++)f(i);return{path:g,index:o,params:d}}}function T(r){return r.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function O(r){return r&&r.sensitive?"":"i"}function F(r,n){if(!n)return r;for(var e=/\((?:\?<(.*?)>)?(?!\?)/g,t=0,v=e.exec(r.source);v;)n.push({name:v[1]||t++,prefix:"",suffix:"",modifier:"",pattern:""}),v=e.exec(r.source);return r}function H(r,n,e){var t=r.map(function(v){return _(v,n,e).source});return new RegExp("(?:".concat(t.join("|"),")"),O(e))}function I(r,n,e){return $(P(r,e),n,e)}function $(r,n,e){e===void 0&&(e={});for(var t=e.strict,v=t===void 0?!1:t,a=e.start,c=a===void 0?!0:a,g=e.end,o=g===void 0?!0:g,d=e.encode,f=d===void 0?function(N){return N}:d,i=e.delimiter,l=i===void 0?"/#?":i,x=e.endsWith,y=x===void 0?"":x,E="[".concat(T(y),"]|$"),p="[".concat(T(l),"]"),m=c?"^":"",A=0,C=r;A<C.length;A++){var u=C[A];if(typeof u=="string")m+=T(f(u));else{var w=T(f(u.prefix)),h=T(f(u.suffix));if(u.pattern)if(n&&n.push(u),w||h)if(u.modifier==="+"||u.modifier==="*"){var s=u.modifier==="*"?"?":"";m+="(?:".concat(w,"((?:").concat(u.pattern,")(?:").concat(h).concat(w,"(?:").concat(u.pattern,"))*)").concat(h,")").concat(s)}else m+="(?:".concat(w,"(").concat(u.pattern,")").concat(h,")").concat(u.modifier);else u.modifier==="+"||u.modifier==="*"?m+="((?:".concat(u.pattern,")").concat(u.modifier,")"):m+="(".concat(u.pattern,")").concat(u.modifier);
1else m+="(?:".concat(w).concat(h,")").concat(u.modifier)}}if(o)v||(m+="".concat(p,"?")),m+=e.endsWith?"(?=".concat(E,")"):"$";else{var R=r[r.length-1],b=typeof R=="string"?p.indexOf(R[R.length-1])>-1:R===void 0;v||(m+="(?:".concat(p,"(?=").concat(E,"))?")),b||(m+="(?=".concat(p,"|").concat(E,")"))}return new RegExp(m,O(e))}function _(r,n,e){return r instanceof RegExp?F(r,n):Array.isArray(r)?H(r,n,e):I(r,n,e)}export{W as c,L as m};
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.