cindel 1.1.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- var HMR=(()=>{var st=Object.create;var ce=Object.defineProperty;var rt=Object.getOwnPropertyDescriptor;var ot=Object.getOwnPropertyNames;var it=Object.getPrototypeOf,nt=Object.prototype.hasOwnProperty;var Y=(s,t)=>()=>(t||s((t={exports:{}}).exports,t),t.exports),at=(s,t)=>{for(var e in t)ce(s,e,{get:t[e],enumerable:!0})},Le=(s,t,e,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of ot(t))!nt.call(s,r)&&r!==e&&ce(s,r,{get:()=>t[r],enumerable:!(o=rt(t,r))||o.enumerable});return s};var ct=(s,t,e)=>(e=s!=null?st(it(s)):{},Le(t||!s||!s.__esModule?ce(e,"default",{value:s,enumerable:!0}):e,s)),lt=s=>Le(ce({},"__esModule",{value:!0}),s);var ee=Y((jt,ve)=>{"use strict";var xe="[^\\\\/]",ut="(?=.)",be="[^/]",de="(?:\\/|$)",Te="(?:^|\\/)",ge=`\\.{1,2}${de}`,ht="(?!\\.)",ft=`(?!${Te}${ge})`,pt=`(?!\\.{0,1}${de})`,dt=`(?!${ge})`,gt="[^.\\/]",_t=`${be}*?`,mt="/",Oe={DOT_LITERAL:"\\.",PLUS_LITERAL:"\\+",QMARK_LITERAL:"\\?",SLASH_LITERAL:"\\/",ONE_CHAR:ut,QMARK:be,END_ANCHOR:de,DOTS_SLASH:ge,NO_DOT:ht,NO_DOTS:ft,NO_DOT_SLASH:pt,NO_DOTS_SLASH:dt,QMARK_NO_DOT:gt,STAR:_t,START_ANCHOR:Te,SEP:mt},Rt={...Oe,SLASH_LITERAL:"[\\\\/]",QMARK:xe,STAR:`${xe}*?`,DOTS_SLASH:"\\.{1,2}(?:[\\\\/]|$)",NO_DOT:"(?!\\.)",NO_DOTS:"(?!(?:^|[\\\\/])\\.{1,2}(?:[\\\\/]|$))",NO_DOT_SLASH:"(?!\\.{0,1}(?:[\\\\/]|$))",NO_DOTS_SLASH:"(?!\\.{1,2}(?:[\\\\/]|$))",QMARK_NO_DOT:"[^.\\\\/]",START_ANCHOR:"(?:^|[\\\\/])",END_ANCHOR:"(?:[\\\\/]|$)",SEP:"\\"},At={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};ve.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:At,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{__proto__:null,"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(s){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${s.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(s){return s===!0?Rt:Oe}}});var te=Y(P=>{"use strict";var{REGEX_BACKSLASH:St,REGEX_REMOVE_BACKSLASH:Et,REGEX_SPECIAL_CHARS:yt,REGEX_SPECIAL_CHARS_GLOBAL:$t}=ee();P.isObject=s=>s!==null&&typeof s=="object"&&!Array.isArray(s);P.hasRegexChars=s=>yt.test(s);P.isRegexChar=s=>s.length===1&&P.hasRegexChars(s);P.escapeRegex=s=>s.replace($t,"\\$1");P.toPosixSlashes=s=>s.replace(St,"/");P.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let s=navigator.platform.toLowerCase();return s==="win32"||s==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":!1};P.removeBackslashes=s=>s.replace(Et,t=>t==="\\"?"":t);P.escapeLast=(s,t,e)=>{let o=s.lastIndexOf(t,e);return o===-1?s:s[o-1]==="\\"?P.escapeLast(s,t,o-1):`${s.slice(0,o)}\\${s.slice(o)}`};P.removePrefix=(s,t={})=>{let e=s;return e.startsWith("./")&&(e=e.slice(2),t.prefix="./"),e};P.wrapOutput=(s,t={},e={})=>{let o=e.contains?"":"^",r=e.contains?"":"$",a=`${o}(?:${s})${r}`;return t.negated===!0&&(a=`(?:^(?!${a}).*$)`),a};P.basename=(s,{windows:t}={})=>{let e=s.split(t?/[\\/]/:"/"),o=e[e.length-1];return o===""?e[e.length-2]:o}});var Pe=Y((Kt,Ue)=>{"use strict";var He=te(),{CHAR_ASTERISK:_e,CHAR_AT:wt,CHAR_BACKWARD_SLASH:se,CHAR_COMMA:Ct,CHAR_DOT:me,CHAR_EXCLAMATION_MARK:Re,CHAR_FORWARD_SLASH:Ne,CHAR_LEFT_CURLY_BRACE:Ae,CHAR_LEFT_PARENTHESES:Se,CHAR_LEFT_SQUARE_BRACKET:Lt,CHAR_PLUS:xt,CHAR_QUESTION_MARK:ke,CHAR_RIGHT_CURLY_BRACE:bt,CHAR_RIGHT_PARENTHESES:Me,CHAR_RIGHT_SQUARE_BRACKET:Tt}=ee(),Fe=s=>s===Ne||s===se,Ie=s=>{s.isPrefix!==!0&&(s.depth=s.isGlobstar?1/0:1)},Ot=(s,t)=>{let e=t||{},o=s.length-1,r=e.parts===!0||e.scanToEnd===!0,a=[],l=[],h=[],u=s,A=-1,d=0,T=0,x=!1,E=!1,S=!1,b=!1,q=!1,G=!1,y=!1,B=!1,V=!1,F=!1,M=0,D,g,m={value:"",depth:0,isGlob:!1},c=()=>A>=o,U=()=>u.charCodeAt(A+1),H=()=>(D=g,u.charCodeAt(++A));for(;A<o;){g=H();let $;if(g===se){y=m.backslashes=!0,g=H(),g===Ae&&(G=!0);continue}if(G===!0||g===Ae){for(M++;c()!==!0&&(g=H());){if(g===se){y=m.backslashes=!0,H();continue}if(g===Ae){M++;continue}if(G!==!0&&g===me&&(g=H())===me){if(x=m.isBrace=!0,S=m.isGlob=!0,F=!0,r===!0)continue;break}if(G!==!0&&g===Ct){if(x=m.isBrace=!0,S=m.isGlob=!0,F=!0,r===!0)continue;break}if(g===bt&&(M--,M===0)){G=!1,x=m.isBrace=!0,F=!0;break}}if(r===!0)continue;break}if(g===Ne){if(a.push(A),l.push(m),m={value:"",depth:0,isGlob:!1},F===!0)continue;if(D===me&&A===d+1){d+=2;continue}T=A+1;continue}if(e.noext!==!0&&(g===xt||g===wt||g===_e||g===ke||g===Re)===!0&&U()===Se){if(S=m.isGlob=!0,b=m.isExtglob=!0,F=!0,g===Re&&A===d&&(V=!0),r===!0){for(;c()!==!0&&(g=H());){if(g===se){y=m.backslashes=!0,g=H();continue}if(g===Me){S=m.isGlob=!0,F=!0;break}}continue}break}if(g===_e){if(D===_e&&(q=m.isGlobstar=!0),S=m.isGlob=!0,F=!0,r===!0)continue;break}if(g===ke){if(S=m.isGlob=!0,F=!0,r===!0)continue;break}if(g===Lt){for(;c()!==!0&&($=H());){if($===se){y=m.backslashes=!0,H();continue}if($===Tt){E=m.isBracket=!0,S=m.isGlob=!0,F=!0;break}}if(r===!0)continue;break}if(e.nonegate!==!0&&g===Re&&A===d){B=m.negated=!0,d++;continue}if(e.noparen!==!0&&g===Se){if(S=m.isGlob=!0,r===!0){for(;c()!==!0&&(g=H());){if(g===Se){y=m.backslashes=!0,g=H();continue}if(g===Me){F=!0;break}}continue}break}if(S===!0){if(F=!0,r===!0)continue;break}}e.noext===!0&&(b=!1,S=!1);let O=u,i="",n="";d>0&&(i=u.slice(0,d),u=u.slice(d),T-=d),O&&S===!0&&T>0?(O=u.slice(0,T),n=u.slice(T)):S===!0?(O="",n=u):O=u,O&&O!==""&&O!=="/"&&O!==u&&Fe(O.charCodeAt(O.length-1))&&(O=O.slice(0,-1)),e.unescape===!0&&(n&&(n=He.removeBackslashes(n)),O&&y===!0&&(O=He.removeBackslashes(O)));let W={prefix:i,input:s,start:d,base:O,glob:n,isBrace:x,isBracket:E,isGlob:S,isExtglob:b,isGlobstar:q,negated:B,negatedExtglob:V};if(e.tokens===!0&&(W.maxDepth=0,Fe(g)||l.push(m),W.tokens=l),e.parts===!0||e.tokens===!0){let $;for(let C=0;C<a.length;C++){let X=$?$+1:d,j=a[C],J=s.slice(X,j);e.tokens&&(C===0&&d!==0?(l[C].isPrefix=!0,l[C].value=i):l[C].value=J,Ie(l[C]),W.maxDepth+=l[C].depth),(C!==0||J!=="")&&h.push(J),$=j}if($&&$+1<s.length){let C=s.slice($+1);h.push(C),e.tokens&&(l[l.length-1].value=C,Ie(l[l.length-1]),W.maxDepth+=l[l.length-1].depth)}W.slashes=a,W.parts=h}return W};Ue.exports=Ot});var Be=Y((qt,Ge)=>{"use strict";var ue=ee(),K=te(),{MAX_LENGTH:he,POSIX_REGEX_SOURCE:vt,REGEX_NON_SPECIAL_CHARS:Ht,REGEX_SPECIAL_CHARS_BACKREF:kt,REPLACEMENTS:De}=ue,Mt=(s,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...s,t);s.sort();let e=`[${s.join("-")}]`;try{new RegExp(e)}catch{return s.map(r=>K.escapeRegex(r)).join("..")}return e},Z=(s,t)=>`Missing ${s}: "${t}" - use "\\\\${t}" to match literal characters`,Ee=(s,t)=>{if(typeof s!="string")throw new TypeError("Expected a string");s=De[s]||s;let e={...t},o=typeof e.maxLength=="number"?Math.min(he,e.maxLength):he,r=s.length;if(r>o)throw new SyntaxError(`Input length: ${r}, exceeds maximum allowed length: ${o}`);let a={type:"bos",value:"",output:e.prepend||""},l=[a],h=e.capture?"":"?:",u=ue.globChars(e.windows),A=ue.extglobChars(u),{DOT_LITERAL:d,PLUS_LITERAL:T,SLASH_LITERAL:x,ONE_CHAR:E,DOTS_SLASH:S,NO_DOT:b,NO_DOT_SLASH:q,NO_DOTS_SLASH:G,QMARK:y,QMARK_NO_DOT:B,STAR:V,START_ANCHOR:F}=u,M=p=>`(${h}(?:(?!${F}${p.dot?S:d}).)*?)`,D=e.dot?"":b,g=e.dot?y:B,m=e.bash===!0?M(e):V;e.capture&&(m=`(${m})`),typeof e.noext=="boolean"&&(e.noextglob=e.noext);let c={input:s,index:-1,start:0,dot:e.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};s=K.removePrefix(s,c),r=s.length;let U=[],H=[],O=[],i=a,n,W=()=>c.index===r-1,$=c.peek=(p=1)=>s[c.index+p],C=c.advance=()=>s[++c.index]||"",X=()=>s.slice(c.index+1),j=(p="",w=0)=>{c.consumed+=p,c.index+=w},J=p=>{c.output+=p.output!=null?p.output:p.value,j(p.value)},et=()=>{let p=1;for(;$()==="!"&&($(2)!=="("||$(3)==="?");)C(),c.start++,p++;return p%2===0?!1:(c.negated=!0,c.start++,!0)},ie=p=>{c[p]++,O.push(p)},z=p=>{c[p]--,O.pop()},R=p=>{if(i.type==="globstar"){let w=c.braces>0&&(p.type==="comma"||p.type==="brace"),f=p.extglob===!0||U.length&&(p.type==="pipe"||p.type==="paren");p.type!=="slash"&&p.type!=="paren"&&!w&&!f&&(c.output=c.output.slice(0,-i.output.length),i.type="star",i.value="*",i.output=m,c.output+=i.output)}if(U.length&&p.type!=="paren"&&(U[U.length-1].inner+=p.value),(p.value||p.output)&&J(p),i&&i.type==="text"&&p.type==="text"){i.output=(i.output||i.value)+p.value,i.value+=p.value;return}p.prev=i,l.push(p),i=p},ne=(p,w)=>{let f={...A[w],conditions:1,inner:""};f.prev=i,f.parens=c.parens,f.output=c.output;let _=(e.capture?"(":"")+f.open;ie("parens"),R({type:p,value:w,output:c.output?"":E}),R({type:"paren",extglob:!0,value:C(),output:_}),U.push(f)},tt=p=>{let w=p.close+(e.capture?")":""),f;if(p.type==="negate"){let _=m;if(p.inner&&p.inner.length>1&&p.inner.includes("/")&&(_=M(e)),(_!==m||W()||/^\)+$/.test(X()))&&(w=p.close=`)$))${_}`),p.inner.includes("*")&&(f=X())&&/^\.[^\\/.]+$/.test(f)){let L=Ee(f,{...t,fastpaths:!1}).output;w=p.close=`)${L})${_})`}p.prev.type==="bos"&&(c.negatedExtglob=!0)}R({type:"paren",extglob:!0,value:n,output:w}),z("parens")};if(e.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(s)){let p=!1,w=s.replace(kt,(f,_,L,I,k,pe)=>I==="\\"?(p=!0,f):I==="?"?_?_+I+(k?y.repeat(k.length):""):pe===0?g+(k?y.repeat(k.length):""):y.repeat(L.length):I==="."?d.repeat(L.length):I==="*"?_?_+I+(k?m:""):m:_?f:`\\${f}`);return p===!0&&(e.unescape===!0?w=w.replace(/\\/g,""):w=w.replace(/\\+/g,f=>f.length%2===0?"\\\\":f?"\\":"")),w===s&&e.contains===!0?(c.output=s,c):(c.output=K.wrapOutput(w,c,t),c)}for(;!W();){if(n=C(),n==="\0")continue;if(n==="\\"){let f=$();if(f==="/"&&e.bash!==!0||f==="."||f===";")continue;if(!f){n+="\\",R({type:"text",value:n});continue}let _=/^\\+/.exec(X()),L=0;if(_&&_[0].length>2&&(L=_[0].length,c.index+=L,L%2!==0&&(n+="\\")),e.unescape===!0?n=C():n+=C(),c.brackets===0){R({type:"text",value:n});continue}}if(c.brackets>0&&(n!=="]"||i.value==="["||i.value==="[^")){if(e.posix!==!1&&n===":"){let f=i.value.slice(1);if(f.includes("[")&&(i.posix=!0,f.includes(":"))){let _=i.value.lastIndexOf("["),L=i.value.slice(0,_),I=i.value.slice(_+2),k=vt[I];if(k){i.value=L+k,c.backtrack=!0,C(),!a.output&&l.indexOf(i)===1&&(a.output=E);continue}}}(n==="["&&$()!==":"||n==="-"&&$()==="]")&&(n=`\\${n}`),n==="]"&&(i.value==="["||i.value==="[^")&&(n=`\\${n}`),e.posix===!0&&n==="!"&&i.value==="["&&(n="^"),i.value+=n,J({value:n});continue}if(c.quotes===1&&n!=='"'){n=K.escapeRegex(n),i.value+=n,J({value:n});continue}if(n==='"'){c.quotes=c.quotes===1?0:1,e.keepQuotes===!0&&R({type:"text",value:n});continue}if(n==="("){ie("parens"),R({type:"paren",value:n});continue}if(n===")"){if(c.parens===0&&e.strictBrackets===!0)throw new SyntaxError(Z("opening","("));let f=U[U.length-1];if(f&&c.parens===f.parens+1){tt(U.pop());continue}R({type:"paren",value:n,output:c.parens?")":"\\)"}),z("parens");continue}if(n==="["){if(e.nobracket===!0||!X().includes("]")){if(e.nobracket!==!0&&e.strictBrackets===!0)throw new SyntaxError(Z("closing","]"));n=`\\${n}`}else ie("brackets");R({type:"bracket",value:n});continue}if(n==="]"){if(e.nobracket===!0||i&&i.type==="bracket"&&i.value.length===1){R({type:"text",value:n,output:`\\${n}`});continue}if(c.brackets===0){if(e.strictBrackets===!0)throw new SyntaxError(Z("opening","["));R({type:"text",value:n,output:`\\${n}`});continue}z("brackets");let f=i.value.slice(1);if(i.posix!==!0&&f[0]==="^"&&!f.includes("/")&&(n=`/${n}`),i.value+=n,J({value:n}),e.literalBrackets===!1||K.hasRegexChars(f))continue;let _=K.escapeRegex(i.value);if(c.output=c.output.slice(0,-i.value.length),e.literalBrackets===!0){c.output+=_,i.value=_;continue}i.value=`(${h}${_}|${i.value})`,c.output+=i.value;continue}if(n==="{"&&e.nobrace!==!0){ie("braces");let f={type:"brace",value:n,output:"(",outputIndex:c.output.length,tokensIndex:c.tokens.length};H.push(f),R(f);continue}if(n==="}"){let f=H[H.length-1];if(e.nobrace===!0||!f){R({type:"text",value:n,output:n});continue}let _=")";if(f.dots===!0){let L=l.slice(),I=[];for(let k=L.length-1;k>=0&&(l.pop(),L[k].type!=="brace");k--)L[k].type!=="dots"&&I.unshift(L[k].value);_=Mt(I,e),c.backtrack=!0}if(f.comma!==!0&&f.dots!==!0){let L=c.output.slice(0,f.outputIndex),I=c.tokens.slice(f.tokensIndex);f.value=f.output="\\{",n=_="\\}",c.output=L;for(let k of I)c.output+=k.output||k.value}R({type:"brace",value:n,output:_}),z("braces"),H.pop();continue}if(n==="|"){U.length>0&&U[U.length-1].conditions++,R({type:"text",value:n});continue}if(n===","){let f=n,_=H[H.length-1];_&&O[O.length-1]==="braces"&&(_.comma=!0,f="|"),R({type:"comma",value:n,output:f});continue}if(n==="/"){if(i.type==="dot"&&c.index===c.start+1){c.start=c.index+1,c.consumed="",c.output="",l.pop(),i=a;continue}R({type:"slash",value:n,output:x});continue}if(n==="."){if(c.braces>0&&i.type==="dot"){i.value==="."&&(i.output=d);let f=H[H.length-1];i.type="dots",i.output+=n,i.value+=n,f.dots=!0;continue}if(c.braces+c.parens===0&&i.type!=="bos"&&i.type!=="slash"){R({type:"text",value:n,output:d});continue}R({type:"dot",value:n,output:d});continue}if(n==="?"){if(!(i&&i.value==="(")&&e.noextglob!==!0&&$()==="("&&$(2)!=="?"){ne("qmark",n);continue}if(i&&i.type==="paren"){let _=$(),L=n;(i.value==="("&&!/[!=<:]/.test(_)||_==="<"&&!/<([!=]|\w+>)/.test(X()))&&(L=`\\${n}`),R({type:"text",value:n,output:L});continue}if(e.dot!==!0&&(i.type==="slash"||i.type==="bos")){R({type:"qmark",value:n,output:B});continue}R({type:"qmark",value:n,output:y});continue}if(n==="!"){if(e.noextglob!==!0&&$()==="("&&($(2)!=="?"||!/[!=<:]/.test($(3)))){ne("negate",n);continue}if(e.nonegate!==!0&&c.index===0){et();continue}}if(n==="+"){if(e.noextglob!==!0&&$()==="("&&$(2)!=="?"){ne("plus",n);continue}if(i&&i.value==="("||e.regex===!1){R({type:"plus",value:n,output:T});continue}if(i&&(i.type==="bracket"||i.type==="paren"||i.type==="brace")||c.parens>0){R({type:"plus",value:n});continue}R({type:"plus",value:T});continue}if(n==="@"){if(e.noextglob!==!0&&$()==="("&&$(2)!=="?"){R({type:"at",extglob:!0,value:n,output:""});continue}R({type:"text",value:n});continue}if(n!=="*"){(n==="$"||n==="^")&&(n=`\\${n}`);let f=Ht.exec(X());f&&(n+=f[0],c.index+=f[0].length),R({type:"text",value:n});continue}if(i&&(i.type==="globstar"||i.star===!0)){i.type="star",i.star=!0,i.value+=n,i.output=m,c.backtrack=!0,c.globstar=!0,j(n);continue}let p=X();if(e.noextglob!==!0&&/^\([^?]/.test(p)){ne("star",n);continue}if(i.type==="star"){if(e.noglobstar===!0){j(n);continue}let f=i.prev,_=f.prev,L=f.type==="slash"||f.type==="bos",I=_&&(_.type==="star"||_.type==="globstar");if(e.bash===!0&&(!L||p[0]&&p[0]!=="/")){R({type:"star",value:n,output:""});continue}let k=c.braces>0&&(f.type==="comma"||f.type==="brace"),pe=U.length&&(f.type==="pipe"||f.type==="paren");if(!L&&f.type!=="paren"&&!k&&!pe){R({type:"star",value:n,output:""});continue}for(;p.slice(0,3)==="/**";){let ae=s[c.index+4];if(ae&&ae!=="/")break;p=p.slice(3),j("/**",3)}if(f.type==="bos"&&W()){i.type="globstar",i.value+=n,i.output=M(e),c.output=i.output,c.globstar=!0,j(n);continue}if(f.type==="slash"&&f.prev.type!=="bos"&&!I&&W()){c.output=c.output.slice(0,-(f.output+i.output).length),f.output=`(?:${f.output}`,i.type="globstar",i.output=M(e)+(e.strictSlashes?")":"|$)"),i.value+=n,c.globstar=!0,c.output+=f.output+i.output,j(n);continue}if(f.type==="slash"&&f.prev.type!=="bos"&&p[0]==="/"){let ae=p[1]!==void 0?"|$":"";c.output=c.output.slice(0,-(f.output+i.output).length),f.output=`(?:${f.output}`,i.type="globstar",i.output=`${M(e)}${x}|${x}${ae})`,i.value+=n,c.output+=f.output+i.output,c.globstar=!0,j(n+C()),R({type:"slash",value:"/",output:""});continue}if(f.type==="bos"&&p[0]==="/"){i.type="globstar",i.value+=n,i.output=`(?:^|${x}|${M(e)}${x})`,c.output=i.output,c.globstar=!0,j(n+C()),R({type:"slash",value:"/",output:""});continue}c.output=c.output.slice(0,-i.output.length),i.type="globstar",i.output=M(e),i.value+=n,c.output+=i.output,c.globstar=!0,j(n);continue}let w={type:"star",value:n,output:m};if(e.bash===!0){w.output=".*?",(i.type==="bos"||i.type==="slash")&&(w.output=D+w.output),R(w);continue}if(i&&(i.type==="bracket"||i.type==="paren")&&e.regex===!0){w.output=n,R(w);continue}(c.index===c.start||i.type==="slash"||i.type==="dot")&&(i.type==="dot"?(c.output+=q,i.output+=q):e.dot===!0?(c.output+=G,i.output+=G):(c.output+=D,i.output+=D),$()!=="*"&&(c.output+=E,i.output+=E)),R(w)}for(;c.brackets>0;){if(e.strictBrackets===!0)throw new SyntaxError(Z("closing","]"));c.output=K.escapeLast(c.output,"["),z("brackets")}for(;c.parens>0;){if(e.strictBrackets===!0)throw new SyntaxError(Z("closing",")"));c.output=K.escapeLast(c.output,"("),z("parens")}for(;c.braces>0;){if(e.strictBrackets===!0)throw new SyntaxError(Z("closing","}"));c.output=K.escapeLast(c.output,"{"),z("braces")}if(e.strictSlashes!==!0&&(i.type==="star"||i.type==="bracket")&&R({type:"maybe_slash",value:"",output:`${x}?`}),c.backtrack===!0){c.output="";for(let p of c.tokens)c.output+=p.output!=null?p.output:p.value,p.suffix&&(c.output+=p.suffix)}return c};Ee.fastpaths=(s,t)=>{let e={...t},o=typeof e.maxLength=="number"?Math.min(he,e.maxLength):he,r=s.length;if(r>o)throw new SyntaxError(`Input length: ${r}, exceeds maximum allowed length: ${o}`);s=De[s]||s;let{DOT_LITERAL:a,SLASH_LITERAL:l,ONE_CHAR:h,DOTS_SLASH:u,NO_DOT:A,NO_DOTS:d,NO_DOTS_SLASH:T,STAR:x,START_ANCHOR:E}=ue.globChars(e.windows),S=e.dot?d:A,b=e.dot?T:A,q=e.capture?"":"?:",G={negated:!1,prefix:""},y=e.bash===!0?".*?":x;e.capture&&(y=`(${y})`);let B=D=>D.noglobstar===!0?y:`(${q}(?:(?!${E}${D.dot?u:a}).)*?)`,V=D=>{switch(D){case"*":return`${S}${h}${y}`;case".*":return`${a}${h}${y}`;case"*.*":return`${S}${y}${a}${h}${y}`;case"*/*":return`${S}${y}${l}${h}${b}${y}`;case"**":return S+B(e);case"**/*":return`(?:${S}${B(e)}${l})?${b}${h}${y}`;case"**/*.*":return`(?:${S}${B(e)}${l})?${b}${y}${a}${h}${y}`;case"**/.*":return`(?:${S}${B(e)}${l})?${a}${h}${y}`;default:{let g=/^(.*?)\.(\w+)$/.exec(D);if(!g)return;let m=V(g[1]);return m?m+a+g[2]:void 0}}},F=K.removePrefix(s,G),M=V(F);return M&&e.strictSlashes!==!0&&(M+=`${l}?`),M};Ge.exports=Ee});var Qe=Y((Xt,je)=>{"use strict";var Ft=Pe(),ye=Be(),We=te(),It=ee(),Nt=s=>s&&typeof s=="object"&&!Array.isArray(s),v=(s,t,e=!1)=>{if(Array.isArray(s)){let d=s.map(x=>v(x,t,e));return x=>{for(let E of d){let S=E(x);if(S)return S}return!1}}let o=Nt(s)&&s.tokens&&s.input;if(s===""||typeof s!="string"&&!o)throw new TypeError("Expected pattern to be a non-empty string");let r=t||{},a=r.windows,l=o?v.compileRe(s,t):v.makeRe(s,t,!1,!0),h=l.state;delete l.state;let u=()=>!1;if(r.ignore){let d={...t,ignore:null,onMatch:null,onResult:null};u=v(r.ignore,d,e)}let A=(d,T=!1)=>{let{isMatch:x,match:E,output:S}=v.test(d,l,t,{glob:s,posix:a}),b={glob:s,state:h,regex:l,posix:a,input:d,output:S,match:E,isMatch:x};return typeof r.onResult=="function"&&r.onResult(b),x===!1?(b.isMatch=!1,T?b:!1):u(d)?(typeof r.onIgnore=="function"&&r.onIgnore(b),b.isMatch=!1,T?b:!1):(typeof r.onMatch=="function"&&r.onMatch(b),T?b:!0)};return e&&(A.state=h),A};v.test=(s,t,e,{glob:o,posix:r}={})=>{if(typeof s!="string")throw new TypeError("Expected input to be a string");if(s==="")return{isMatch:!1,output:""};let a=e||{},l=a.format||(r?We.toPosixSlashes:null),h=s===o,u=h&&l?l(s):s;return h===!1&&(u=l?l(s):s,h=u===o),(h===!1||a.capture===!0)&&(a.matchBase===!0||a.basename===!0?h=v.matchBase(s,t,e,r):h=t.exec(u)),{isMatch:!!h,match:h,output:u}};v.matchBase=(s,t,e)=>(t instanceof RegExp?t:v.makeRe(t,e)).test(We.basename(s));v.isMatch=(s,t,e)=>v(t,e)(s);v.parse=(s,t)=>Array.isArray(s)?s.map(e=>v.parse(e,t)):ye(s,{...t,fastpaths:!1});v.scan=(s,t)=>Ft(s,t);v.compileRe=(s,t,e=!1,o=!1)=>{if(e===!0)return s.output;let r=t||{},a=r.contains?"":"^",l=r.contains?"":"$",h=`${a}(?:${s.output})${l}`;s&&s.negated===!0&&(h=`^(?!${h}).*$`);let u=v.toRegex(h,t);return o===!0&&(u.state=s),u};v.makeRe=(s,t={},e=!1,o=!1)=>{if(!s||typeof s!="string")throw new TypeError("Expected a non-empty string");let r={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(s[0]==="."||s[0]==="*")&&(r.output=ye.fastpaths(s,t)),r.output||(r=ye(s,t)),v.compileRe(r,t,e,o)};v.toRegex=(s,t)=>{try{let e=t||{};return new RegExp(s,e.flags||(e.nocase?"i":""))}catch(e){if(t&&t.debug===!0)throw e;return/$^/}};v.constants=It;je.exports=v});var Je=Y((Jt,Xe)=>{"use strict";var Ke=Qe(),Ut=te();function qe(s,t,e=!1){return t&&(t.windows===null||t.windows===void 0)&&(t={...t,windows:Ut.isWindows()}),Ke(s,t,e)}Object.assign(qe,Ke);Xe.exports=qe});var Dt={};at(Dt,{HMRClient:()=>oe,default:()=>oe,stub:()=>Ze});var le=class{constructor(t,{iframeTarget:e=null,iframeOrigin:o="*",css:r="iframe"}={}){this.httpUrl=t,this.iframeTarget=e,this.iframeOrigin=o,this.css=r,this.loadQueue=new Map,this.versions=new Map}async loadFile(t){let e=t.endsWith(".css"),o=t.endsWith(".mjs");return e?await this.loadCSS(t):o?await this.loadModule(t):await this.loadScript(t)}async loadCSS(t){let e=this.makeUrl(t),o=this.iframeTarget&&this.css!=="parent",r=!this.iframeTarget||this.css!=="iframe",a=[];o&&a.push(fetch(e).then(u=>{if(!u.ok)throw new Error(`Failed to fetch CSS: ${t} (${u.status})`);return u.text()}).then(u=>this._inject("css",u,t))),r&&a.push(this._loadCSSInParent(t,e));let h=(await Promise.allSettled(a)).find(u=>u.status==="rejected");if(h)throw h.reason;return!0}_loadCSSInParent(t,e){let o=document.querySelector(`link[data-file="${t}"]`),r=document.createElement("link");return r.rel="stylesheet",r.href=e,r.setAttribute("data-file",t),new Promise((a,l)=>{r.onload=()=>{o&&o.remove(),a(!0)},r.onerror=()=>{r.remove(),l(new Error(`Failed to load CSS: ${t}`))},document.head.appendChild(r)})}async loadModule(t){let e=this.makeUrl(t);if(this.iframeTarget){let o=await fetch(e).then(r=>{if(!r.ok)throw new Error(`Failed to fetch module: ${t} (${r.status})`);return r.text()});return await this._inject("module",o,t),!0}return await import(e),!0}async loadScript(t){let e=this.makeUrl(t),o=document.querySelector(`script[data-file="${t}"]`);if(o&&o.remove(),this.iframeTarget){let a=await fetch(e).then(l=>{if(!l.ok)throw new Error(`Failed to fetch script: ${t} (${l.status})`);return l.text()});return await this._inject("script",a,t),!0}let r=document.createElement("script");return r.src=e,r.setAttribute("data-file",t),new Promise((a,l)=>{r.onload=()=>{let h=document.querySelector(`script[data-file="${t}"]:not([src="${e}"])`);h&&h.remove(),a(!0)},r.onerror=()=>l(new Error(`Failed to load script: ${t}`)),document.head.appendChild(r)})}async reloadFile(t){return new Promise((e,o)=>{if(this.loadQueue.has(t)){let r=this.loadQueue.get(t);clearTimeout(r.timeout),r.resolvers.push({resolve:e,reject:o}),r.timeout=setTimeout(()=>this._flushReload(t),100)}else{let r={timeout:setTimeout(()=>this._flushReload(t),100),resolvers:[{resolve:e,reject:o}]};this.loadQueue.set(t,r)}})}async _flushReload(t){let e=this.loadQueue.get(t);this.loadQueue.delete(t);try{let o=await this.loadFile(t);for(let{resolve:r}of e.resolvers)r(o)}catch(o){for(let{reject:r}of e.resolvers)r(o)}}async removeFile(t){if(this.loadQueue.has(t)){let e=this.loadQueue.get(t);clearTimeout(e.timeout);for(let{reject:o}of e.resolvers)o(new Error(`File removed: ${t}`));this.loadQueue.delete(t)}if(this.iframeTarget)await this._postAndAwaitAck({type:"hmr:remove",file:t});else{let e=document.querySelector(`[data-file="${t}"]`);e&&(e.remove(),await Promise.resolve())}this.versions.delete(t)}makeUrl(t){let e=(this.versions.get(t)??0)+1;return this.versions.set(t,e),`${this.httpUrl}${t}?v=${e}`}_postAndAwaitAck(t){return new Promise(e=>{let o=r=>{if(r.source!==this.iframeTarget)return;let a;try{a=JSON.parse(r.data)}catch{return}a?.type==="hmr:ack"&&(window.removeEventListener("message",o),e())};window.addEventListener("message",o),this.iframeTarget.postMessage(JSON.stringify(t),this.iframeOrigin)})}_inject(t,e,o){return this._postAndAwaitAck({type:"hmr:inject",kind:t,code:e,file:o})}};var Q={RELOAD:"reload",ADD:"add",REMOVE:"remove",INIT:"init"};var ze=ct(Je(),1),$e=new Map;function Ce(s,t){return t.some(e=>($e.has(e)||$e.set(e,(0,ze.default)(e)),$e.get(e)(s)))}function fe(){return new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}function N(s){return s.split("/").pop()}function re(s){let t=s.split("/");return t.pop(),t.join("/")||"."}function we(s){return s.endsWith("/")?s:s+"/"}function Ve(s){let t=new URL(s);return`${t.protocol==="wss:"?"https":"http"}://${t.host}/`}function Pt(s,t){let e=new URL(s);return`${e.protocol==="https:"?"wss":"ws"}://${e.host}${t}`}function Ye(s,t="/hmr"){if(typeof s=="string")return{wsUrl:s,httpUrl:Ve(s)};if(typeof s=="number"&&(s={port:s}),typeof s!="object"||s===null)throw new Error("Options must be a string, number, or object");if(s.wsUrl&&s.httpUrl)return{wsUrl:s.wsUrl,httpUrl:we(s.httpUrl)};if(s.wsUrl)return{wsUrl:s.wsUrl,httpUrl:Ve(s.wsUrl)};if(s.httpUrl){let e=we(s.httpUrl);return{wsUrl:Pt(e,t),httpUrl:e}}if(s.port){let e=s.host||"localhost",o=s.secure||!1,r=o?"wss":"ws",a=o?"https":"http",l=`${r}://${e}:${s.port}${t}`,h=we(`${a}://${e}:${s.port}`);return{wsUrl:l,httpUrl:h}}throw new Error("Must provide wsUrl, httpUrl, port, or host+port")}var oe=class{constructor(t){let e=typeof t=="object"&&!Array.isArray(t)?t:{},o=e.wsPath||"/hmr",{wsUrl:r,httpUrl:a}=Ye(t,o);this.wsUrl=r,this.httpUrl=a,this.watchFiles=!0,this._autoReconnectDefault=e.autoReconnect!==!1,this.autoReconnect=this._autoReconnectDefault,this.reconnectDelay=e.reconnectDelay||2e3,this.maxReconnectDelay=e.maxReconnectDelay||3e4,this.skipOnReconnect=e.skipOnReconnect!==!1,this._coldPatterns=e.cold||null,this._filterCold=e.filterCold||null,this.shouldSkipFile=this.makeFilter(e.skip||null,e.filterSkip||null),this.isColdFile=this.makeFilter(this._coldPatterns,this._filterCold),this.allFiles=[],this.getOverrideTarget=e.getOverrideTarget||null,this.onFileLoaded=e.onFileLoaded||null,this.loadOrder=e.loadOrder||[],this.sortFiles=e.sortFiles||this.defaultSortFiles.bind(this),this.socket=null,this.reconnectAttempts=0,this.isConnected=!1,this.eventHandlers=new Map,this._reconnectTimer=null,this._messageQueue=[],this._processingMessages=!1;let l=e.iframe===!0?{}:e.iframe,h=l?.target?l.target?.contentWindow??null:null,u=l?.origin??"*";this._iframeTarget=h,this._iframeOrigin=u,this._stubManaged=!!l&&!h,this._onReattach=null,this.fileLoader=new le(this.httpUrl,{iframeTarget:h,iframeOrigin:u,css:l?.css??"iframe"}),this.overrideMap=new Map,this._reverseOverrideMap=new Map,this.logStyles={info:{symbol:"\u2139",color:"#76fffd"},success:{symbol:"\u25B6",color:"#68ff51"},warning:{symbol:"\u232C",color:"#ff8400"},error:{symbol:"\u2716",color:"#ff0000"},add:{symbol:"\u2295",color:"#22c55e"},remove:{symbol:"\u2296",color:"#f87171"},inject:{symbol:"\u2398",color:"#facc15"},disconnect:{symbol:"\u2726",color:"#ef4444"},override:{symbol:"\u29EB",color:"#ff8400"},skip:{symbol:"\u2298",color:"#888888"},cold:{symbol:"\u2744",color:"#60a5fa"}}}defaultSortFiles(t){let e=new Set(t.filter(a=>this.isColdFile(a))),o=[a=>a.endsWith(".css"),a=>e.has(a),(a,l)=>a.localeCompare(l)],r=[...this.loadOrder,...o];return[...t].sort((a,l)=>{for(let h of r){let u=h.length===2?h(a,l):h(l)-h(a);if(u!==0)return u}return 0})}makeFilter(t,e){return t&&e?(o,r)=>Ce(o,t)||e(o,r):t?o=>Ce(o,t):e||(()=>!1)}log(t,e){let{symbol:o,color:r}=this.logStyles[t]||this.logStyles.info,a=fe();console.log(`%c${o} [${a}] ${e}`,`color: ${r}; font-weight: bold;`)}logInitFileGroup(t,e,o){if(!t.length)return;let r=t.filter(E=>e.has(E)).length,a=t.filter(E=>o(E)).length,l=t.filter(E=>E.endsWith(".js")||E.endsWith(".cjs")||E.endsWith(".mjs")).length,h=t.filter(E=>E.endsWith(".css")).length,u=[];r&&u.push(`${r} overridden`),a&&u.push(`${a} cold`),h&&u.push(`${l} JS, ${h} CSS`);let A=u.length?` (${u.join(", ")})`:"",d=`Loading ${t.length} initial file${t.length!==1?"s":""}${A}`,{symbol:T,color:x}=this.logStyles.inject;console.groupCollapsed(`%c${T} [${fe()}] ${d}`,`color: ${x}; font-weight: bold;`),t.forEach(E=>{let S=N(E),b=re(E),q=e.has(E),G=o(E);if(q){let y=N(e.get(E)),B=re(e.get(E));console.log(`%c\u2514\u2500 ${S} -> ${y}%c (${b} -> ${B})`,`color: ${this.logStyles.override.color}; font-weight: bold;`,"color: #888888; font-style: italic;")}else G?console.log(`%c\u2514\u2500 ${S}%c (${b})`,`color: ${this.logStyles.cold.color}; font-weight: bold;`,"color: #888888; font-style: italic;"):console.log(`\u2514\u2500 %c${S}%c (${b})`,"color: #ffffff; font-weight: bold;","color: #888888; font-style: italic;")}),console.groupEnd()}buildOverrideMap(t){this.overrideMap.clear(),this._reverseOverrideMap.clear();let e=new Set,o=new Set;if(!this.getOverrideTarget)return t;for(let r of t){let a=this.getOverrideTarget(r,t);a&&(this.overrideMap.set(r,a),this._reverseOverrideMap.has(a)||this._reverseOverrideMap.set(a,new Set),this._reverseOverrideMap.get(a).add(r),e.add(r),o.add(a))}return t.filter(r=>!o.has(r))}async processInitFiles(t){let e=[],o=[];for(let h of t)(this.shouldSkipFile(h,t)?o:e).push(h);o.length>0&&(console.groupCollapsed(`%c${this.logStyles.skip.symbol} [${fe()}] Skipped ${o.length} file${o.length!==1?"s":""}`,`color: ${this.logStyles.skip.color}; font-weight: bold;`),o.forEach(h=>console.log(` \u2514\u2500 ${N(h)}`)),console.groupEnd());let r=e;if(this.skipOnReconnect){let h=[];r=[];for(let u of e)(this.fileLoader.versions.has(u)||document.querySelector(`[data-file="${u}"]`)?h:r).push(u);h.length>0&&this.log("info",`Server reconnected - skipping ${h.length} existing file${h.length!==1?"s":""}`)}let a=this.buildOverrideMap(r),l=this.sortFiles(a);this.logInitFileGroup(l,this.overrideMap,this.isColdFile.bind(this));for(let h of l)await this.fileLoader.loadFile(h),this.onFileLoaded&&this.onFileLoaded(h);this.log("success",`HMR client ready (${l.length} files loaded)`)}async handleFileChange(t,e,o=!1){if(this.shouldSkipFile(t,this.allFiles)){this.log("skip",`Skipping ${e}: ${N(t)}`);return}if(this._reverseOverrideMap.has(t)){this.log("skip",`Skipping ${e}: ${N(t)} (overridden)`);return}if(this.getOverrideTarget){let u=this.getOverrideTarget(t,this.allFiles),A=this.overrideMap.get(t);if(A&&A!==u){let d=this._reverseOverrideMap.get(A);d&&(d.delete(t),d.size===0&&this._reverseOverrideMap.delete(A)),this.overrideMap.delete(t)}u&&(this.log("override",`${N(t)} -> ${N(u)}`),await this.fileLoader.removeFile(u),this.overrideMap.set(t,u),this._reverseOverrideMap.has(u)||this._reverseOverrideMap.set(u,new Set),this._reverseOverrideMap.get(u).add(t))}if(o||this.isColdFile(t)){this.log("cold",`Cold file changed: ${N(t)}`),this.emit("cold",t);return}let a=N(t),l=re(t),h=e===Q.RELOAD?"warning":"add";this.log(h,`HMR ${e}: ${a}`),console.log(`%c \u2514\u2500 Path: ${l}`,"color: #888888; font-style: italic;"),e===Q.RELOAD?await this.fileLoader.reloadFile(t):await this.fileLoader.loadFile(t),this.onFileLoaded&&this.onFileLoaded(t),this.emit(e,t)}async handleFileRemove(t){if(this.shouldSkipFile(t,this.allFiles)){this.log("skip",`Skipping remove: ${N(t)}`);return}let e=N(t),o=re(t);this.log("remove",`HMR remove: ${e}`),console.log(`%c \u2514\u2500 Path: ${o}`,"color: #888888; font-style: italic;");let r=this.overrideMap.get(t);if(r){this.overrideMap.delete(t);let a=this._reverseOverrideMap.get(r);if(a&&(a.delete(t),a.size===0))if(this._reverseOverrideMap.delete(r),this.log("override",`Restoring: ${N(r)}`),this.allFiles.includes(r))try{await this.fileLoader.loadFile(r)}catch(h){this.log("error",`Failed to restore original: ${N(r)} - ${h.message}`),this.allFiles=this.allFiles.filter(u=>u!==r)}else this.log("warning",`Original file no longer tracked, skipping restore: ${N(r)}`)}await this.fileLoader.removeFile(t),this.emit(Q.REMOVE,t)}async handleMessage(t){if(t.type===Q.INIT){if(this.emit(Q.INIT,t),this.watchFiles=t.config?.watchFiles??!0,this.watchFiles||this.log("info","Static snapshot mode -> live watching disabled"),t.config?.cold?.length){let r=[...new Set([...this._coldPatterns||[],...t.config.cold])];this.isColdFile=this.makeFilter(r,this._filterCold)}if(t.files&&t.files.length>0)this.allFiles=[...t.files],await this.processInitFiles(t.files);else{let r=this.watchFiles?"HMR ready":"Static snapshot ready";this.log("success",`${r} (0 files loaded)`)}return}let{action:e,file:o}=t;!e||!o||(e===Q.ADD&&(this.allFiles=[...this.allFiles,o]),e===Q.REMOVE&&(this.allFiles=this.allFiles.filter(r=>r!==o)),(e===Q.RELOAD||e===Q.ADD)&&await this.handleFileChange(o,e,t.cold??!1),e===Q.REMOVE&&await this.handleFileRemove(o))}on(t,e){return this.eventHandlers.has(t)||this.eventHandlers.set(t,[]),this.eventHandlers.get(t).push(e),this}once(t,e){let o=(...r)=>{this.off(t,o),e(...r)};return o._original=e,this.on(t,o)}off(t,e){let o=this.eventHandlers.get(t);if(!o)return this;if(!e)return this.eventHandlers.delete(t),this;let r=o.filter(a=>a!==e&&a._original!==e);return r.length===o.length?this:(r.length===0?this.eventHandlers.delete(t):this.eventHandlers.set(t,r),this)}emit(t,...e){let o=this.eventHandlers.get(t);if(o)for(let r of[...o])r(...e)}_enqueueMessage(t){this._messageQueue.push(t),this._processingMessages||this._drainMessageQueue()}async _drainMessageQueue(){for(this._processingMessages=!0;this._messageQueue.length>0;){let t=this._messageQueue.shift();try{await this.handleMessage(t)}catch(e){this.log("error",`Message handling error: ${e.message}`)}}this._processingMessages=!1}_waitForStub(){return new Promise(t=>{let e=setTimeout(()=>{window.removeEventListener("message",o),this.log("warning","Timed out waiting for hmr:ready. Was HMR.stub() called in the iframe?"),t()},5e3),o=r=>{let a;try{a=JSON.parse(r.data)}catch{return}a?.type!=="hmr:ready"||!(this._iframeOrigin==="*"||r.origin===this._iframeOrigin)||(clearTimeout(e),window.removeEventListener("message",o),this._stubManaged&&(this._iframeTarget=r.source,this.fileLoader.iframeTarget=r.source),t())};window.addEventListener("message",o)})}_listenForReattach(){this._onReattach||(this._onReattach=async t=>{let e;try{e=JSON.parse(t.data)}catch{return}if(!(e?.type!=="hmr:ready"||!(this._iframeOrigin==="*"||t.origin===this._iframeOrigin))&&t.source!==this._iframeTarget){this._iframeTarget=t.source,this.fileLoader.iframeTarget=t.source,this.log("success","HMR reattached to new iframe");for(let r of this.sortFiles([...this.fileLoader.versions.keys()]))try{await this.fileLoader.loadFile(r)}catch(a){this.log("error",`Reattach failed to load ${r}: ${a.message}`)}}},window.addEventListener("message",this._onReattach))}connect(){return this.autoReconnect=this._autoReconnectDefault,this._reconnectTimer&&(clearTimeout(this._reconnectTimer),this._reconnectTimer=null),this.socket&&(this.socket.onopen=null,this.socket.onclose=null,this.socket.onerror=null,this.socket.onmessage=null,this.socket.close(),this.socket=null),new Promise((t,e)=>{let o=!1;try{this.socket=new WebSocket(this.wsUrl),this.socket.onopen=async()=>{o=!0,this.isConnected=!0,this.reconnectAttempts=0,this.log("success","HMR connected"),this.emit("connect"),this._messageQueue=[],this._processingMessages=!0,(this._iframeTarget||this._stubManaged)&&(await this._waitForStub(),this._stubManaged&&this._listenForReattach()),this._processingMessages=!1,this._messageQueue.length>0&&this._drainMessageQueue(),t()},this.socket.onclose=()=>{if(this.isConnected=!1,this.socket=null,this.emit("disconnect"),this.autoReconnect){let r=Math.min(this.reconnectDelay*Math.pow(1.5,this.reconnectAttempts++),this.maxReconnectDelay),a=o?`HMR disconnected, retrying in ${(r/1e3).toFixed(1)}s...`:`HMR connection failed, retrying in ${(r/1e3).toFixed(1)}s...`;this.log("disconnect",a),this._reconnectTimer=setTimeout(()=>{this.connect().catch(l=>{this.log("error",`Reconnect attempt failed: ${l.message}`),this.emit("error",l)})},r)}else o&&this.log("disconnect","HMR disconnected")},this.socket.onerror=r=>{let a=r.message||"Connection failed";this.log("error",`HMR error: ${a}`),this.emit("error",r),o||(o=!0,e(r))},this.socket.onmessage=r=>{try{let a=JSON.parse(r.data);this._enqueueMessage(a)}catch(a){this.log("error",`Failed to parse message: ${a.message}`)}}}catch(r){this.log("error",`Failed to create WebSocket: ${r.message}`),e(r)}})}disconnect(){this.autoReconnect=!1,this.reconnectAttempts=0,this.isConnected=!1,clearTimeout(this._reconnectTimer),this._reconnectTimer=null,this._onReattach&&(window.removeEventListener("message",this._onReattach),this._onReattach=null),this.socket&&(this.socket.close(),this.socket=null)}};function Ze(){let s=(r,a)=>document.querySelector(`${r}[data-file="${CSS.escape(a)}"]`),t=r=>{r&&r.remove()},e=async(r,a,l)=>{let h=URL.createObjectURL(new Blob([a+`
1
+ var HMR=(()=>{var st=Object.create;var ce=Object.defineProperty;var rt=Object.getOwnPropertyDescriptor;var ot=Object.getOwnPropertyNames;var it=Object.getPrototypeOf,nt=Object.prototype.hasOwnProperty;var Y=(s,t)=>()=>(t||s((t={exports:{}}).exports,t),t.exports),at=(s,t)=>{for(var e in t)ce(s,e,{get:t[e],enumerable:!0})},xe=(s,t,e,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of ot(t))!nt.call(s,r)&&r!==e&&ce(s,r,{get:()=>t[r],enumerable:!(o=rt(t,r))||o.enumerable});return s};var ct=(s,t,e)=>(e=s!=null?st(it(s)):{},xe(t||!s||!s.__esModule?ce(e,"default",{value:s,enumerable:!0}):e,s)),lt=s=>xe(ce({},"__esModule",{value:!0}),s);var ee=Y((jt,ve)=>{"use strict";var be="[^\\\\/]",ut="(?=.)",Le="[^/]",de="(?:\\/|$)",Te="(?:^|\\/)",ge=`\\.{1,2}${de}`,ht="(?!\\.)",ft=`(?!${Te}${ge})`,pt=`(?!\\.{0,1}${de})`,dt=`(?!${ge})`,gt="[^.\\/]",_t=`${Le}*?`,mt="/",Oe={DOT_LITERAL:"\\.",PLUS_LITERAL:"\\+",QMARK_LITERAL:"\\?",SLASH_LITERAL:"\\/",ONE_CHAR:ut,QMARK:Le,END_ANCHOR:de,DOTS_SLASH:ge,NO_DOT:ht,NO_DOTS:ft,NO_DOT_SLASH:pt,NO_DOTS_SLASH:dt,QMARK_NO_DOT:gt,STAR:_t,START_ANCHOR:Te,SEP:mt},Rt={...Oe,SLASH_LITERAL:"[\\\\/]",QMARK:be,STAR:`${be}*?`,DOTS_SLASH:"\\.{1,2}(?:[\\\\/]|$)",NO_DOT:"(?!\\.)",NO_DOTS:"(?!(?:^|[\\\\/])\\.{1,2}(?:[\\\\/]|$))",NO_DOT_SLASH:"(?!\\.{0,1}(?:[\\\\/]|$))",NO_DOTS_SLASH:"(?!\\.{1,2}(?:[\\\\/]|$))",QMARK_NO_DOT:"[^.\\\\/]",START_ANCHOR:"(?:^|[\\\\/])",END_ANCHOR:"(?:[\\\\/]|$)",SEP:"\\"},At={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};ve.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:At,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{__proto__:null,"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(s){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${s.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(s){return s===!0?Rt:Oe}}});var te=Y(P=>{"use strict";var{REGEX_BACKSLASH:St,REGEX_REMOVE_BACKSLASH:yt,REGEX_SPECIAL_CHARS:Et,REGEX_SPECIAL_CHARS_GLOBAL:$t}=ee();P.isObject=s=>s!==null&&typeof s=="object"&&!Array.isArray(s);P.hasRegexChars=s=>Et.test(s);P.isRegexChar=s=>s.length===1&&P.hasRegexChars(s);P.escapeRegex=s=>s.replace($t,"\\$1");P.toPosixSlashes=s=>s.replace(St,"/");P.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let s=navigator.platform.toLowerCase();return s==="win32"||s==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":!1};P.removeBackslashes=s=>s.replace(yt,t=>t==="\\"?"":t);P.escapeLast=(s,t,e)=>{let o=s.lastIndexOf(t,e);return o===-1?s:s[o-1]==="\\"?P.escapeLast(s,t,o-1):`${s.slice(0,o)}\\${s.slice(o)}`};P.removePrefix=(s,t={})=>{let e=s;return e.startsWith("./")&&(e=e.slice(2),t.prefix="./"),e};P.wrapOutput=(s,t={},e={})=>{let o=e.contains?"":"^",r=e.contains?"":"$",a=`${o}(?:${s})${r}`;return t.negated===!0&&(a=`(?:^(?!${a}).*$)`),a};P.basename=(s,{windows:t}={})=>{let e=s.split(t?/[\\/]/:"/"),o=e[e.length-1];return o===""?e[e.length-2]:o}});var Pe=Y((Kt,Ue)=>{"use strict";var He=te(),{CHAR_ASTERISK:_e,CHAR_AT:wt,CHAR_BACKWARD_SLASH:se,CHAR_COMMA:Ct,CHAR_DOT:me,CHAR_EXCLAMATION_MARK:Re,CHAR_FORWARD_SLASH:Ne,CHAR_LEFT_CURLY_BRACE:Ae,CHAR_LEFT_PARENTHESES:Se,CHAR_LEFT_SQUARE_BRACKET:xt,CHAR_PLUS:bt,CHAR_QUESTION_MARK:ke,CHAR_RIGHT_CURLY_BRACE:Lt,CHAR_RIGHT_PARENTHESES:Me,CHAR_RIGHT_SQUARE_BRACKET:Tt}=ee(),Fe=s=>s===Ne||s===se,Ie=s=>{s.isPrefix!==!0&&(s.depth=s.isGlobstar?1/0:1)},Ot=(s,t)=>{let e=t||{},o=s.length-1,r=e.parts===!0||e.scanToEnd===!0,a=[],l=[],h=[],u=s,A=-1,d=0,T=0,b=!1,y=!1,S=!1,L=!1,q=!1,G=!1,E=!1,B=!1,J=!1,F=!1,M=0,D,g,m={value:"",depth:0,isGlob:!1},c=()=>A>=o,U=()=>u.charCodeAt(A+1),H=()=>(D=g,u.charCodeAt(++A));for(;A<o;){g=H();let $;if(g===se){E=m.backslashes=!0,g=H(),g===Ae&&(G=!0);continue}if(G===!0||g===Ae){for(M++;c()!==!0&&(g=H());){if(g===se){E=m.backslashes=!0,H();continue}if(g===Ae){M++;continue}if(G!==!0&&g===me&&(g=H())===me){if(b=m.isBrace=!0,S=m.isGlob=!0,F=!0,r===!0)continue;break}if(G!==!0&&g===Ct){if(b=m.isBrace=!0,S=m.isGlob=!0,F=!0,r===!0)continue;break}if(g===Lt&&(M--,M===0)){G=!1,b=m.isBrace=!0,F=!0;break}}if(r===!0)continue;break}if(g===Ne){if(a.push(A),l.push(m),m={value:"",depth:0,isGlob:!1},F===!0)continue;if(D===me&&A===d+1){d+=2;continue}T=A+1;continue}if(e.noext!==!0&&(g===bt||g===wt||g===_e||g===ke||g===Re)===!0&&U()===Se){if(S=m.isGlob=!0,L=m.isExtglob=!0,F=!0,g===Re&&A===d&&(J=!0),r===!0){for(;c()!==!0&&(g=H());){if(g===se){E=m.backslashes=!0,g=H();continue}if(g===Me){S=m.isGlob=!0,F=!0;break}}continue}break}if(g===_e){if(D===_e&&(q=m.isGlobstar=!0),S=m.isGlob=!0,F=!0,r===!0)continue;break}if(g===ke){if(S=m.isGlob=!0,F=!0,r===!0)continue;break}if(g===xt){for(;c()!==!0&&($=H());){if($===se){E=m.backslashes=!0,H();continue}if($===Tt){y=m.isBracket=!0,S=m.isGlob=!0,F=!0;break}}if(r===!0)continue;break}if(e.nonegate!==!0&&g===Re&&A===d){B=m.negated=!0,d++;continue}if(e.noparen!==!0&&g===Se){if(S=m.isGlob=!0,r===!0){for(;c()!==!0&&(g=H());){if(g===Se){E=m.backslashes=!0,g=H();continue}if(g===Me){F=!0;break}}continue}break}if(S===!0){if(F=!0,r===!0)continue;break}}e.noext===!0&&(L=!1,S=!1);let O=u,i="",n="";d>0&&(i=u.slice(0,d),u=u.slice(d),T-=d),O&&S===!0&&T>0?(O=u.slice(0,T),n=u.slice(T)):S===!0?(O="",n=u):O=u,O&&O!==""&&O!=="/"&&O!==u&&Fe(O.charCodeAt(O.length-1))&&(O=O.slice(0,-1)),e.unescape===!0&&(n&&(n=He.removeBackslashes(n)),O&&E===!0&&(O=He.removeBackslashes(O)));let W={prefix:i,input:s,start:d,base:O,glob:n,isBrace:b,isBracket:y,isGlob:S,isExtglob:L,isGlobstar:q,negated:B,negatedExtglob:J};if(e.tokens===!0&&(W.maxDepth=0,Fe(g)||l.push(m),W.tokens=l),e.parts===!0||e.tokens===!0){let $;for(let C=0;C<a.length;C++){let X=$?$+1:d,j=a[C],z=s.slice(X,j);e.tokens&&(C===0&&d!==0?(l[C].isPrefix=!0,l[C].value=i):l[C].value=z,Ie(l[C]),W.maxDepth+=l[C].depth),(C!==0||z!=="")&&h.push(z),$=j}if($&&$+1<s.length){let C=s.slice($+1);h.push(C),e.tokens&&(l[l.length-1].value=C,Ie(l[l.length-1]),W.maxDepth+=l[l.length-1].depth)}W.slashes=a,W.parts=h}return W};Ue.exports=Ot});var Be=Y((qt,Ge)=>{"use strict";var ue=ee(),K=te(),{MAX_LENGTH:he,POSIX_REGEX_SOURCE:vt,REGEX_NON_SPECIAL_CHARS:Ht,REGEX_SPECIAL_CHARS_BACKREF:kt,REPLACEMENTS:De}=ue,Mt=(s,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...s,t);s.sort();let e=`[${s.join("-")}]`;try{new RegExp(e)}catch{return s.map(r=>K.escapeRegex(r)).join("..")}return e},Z=(s,t)=>`Missing ${s}: "${t}" - use "\\\\${t}" to match literal characters`,ye=(s,t)=>{if(typeof s!="string")throw new TypeError("Expected a string");s=De[s]||s;let e={...t},o=typeof e.maxLength=="number"?Math.min(he,e.maxLength):he,r=s.length;if(r>o)throw new SyntaxError(`Input length: ${r}, exceeds maximum allowed length: ${o}`);let a={type:"bos",value:"",output:e.prepend||""},l=[a],h=e.capture?"":"?:",u=ue.globChars(e.windows),A=ue.extglobChars(u),{DOT_LITERAL:d,PLUS_LITERAL:T,SLASH_LITERAL:b,ONE_CHAR:y,DOTS_SLASH:S,NO_DOT:L,NO_DOT_SLASH:q,NO_DOTS_SLASH:G,QMARK:E,QMARK_NO_DOT:B,STAR:J,START_ANCHOR:F}=u,M=p=>`(${h}(?:(?!${F}${p.dot?S:d}).)*?)`,D=e.dot?"":L,g=e.dot?E:B,m=e.bash===!0?M(e):J;e.capture&&(m=`(${m})`),typeof e.noext=="boolean"&&(e.noextglob=e.noext);let c={input:s,index:-1,start:0,dot:e.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};s=K.removePrefix(s,c),r=s.length;let U=[],H=[],O=[],i=a,n,W=()=>c.index===r-1,$=c.peek=(p=1)=>s[c.index+p],C=c.advance=()=>s[++c.index]||"",X=()=>s.slice(c.index+1),j=(p="",w=0)=>{c.consumed+=p,c.index+=w},z=p=>{c.output+=p.output!=null?p.output:p.value,j(p.value)},et=()=>{let p=1;for(;$()==="!"&&($(2)!=="("||$(3)==="?");)C(),c.start++,p++;return p%2===0?!1:(c.negated=!0,c.start++,!0)},ie=p=>{c[p]++,O.push(p)},V=p=>{c[p]--,O.pop()},R=p=>{if(i.type==="globstar"){let w=c.braces>0&&(p.type==="comma"||p.type==="brace"),f=p.extglob===!0||U.length&&(p.type==="pipe"||p.type==="paren");p.type!=="slash"&&p.type!=="paren"&&!w&&!f&&(c.output=c.output.slice(0,-i.output.length),i.type="star",i.value="*",i.output=m,c.output+=i.output)}if(U.length&&p.type!=="paren"&&(U[U.length-1].inner+=p.value),(p.value||p.output)&&z(p),i&&i.type==="text"&&p.type==="text"){i.output=(i.output||i.value)+p.value,i.value+=p.value;return}p.prev=i,l.push(p),i=p},ne=(p,w)=>{let f={...A[w],conditions:1,inner:""};f.prev=i,f.parens=c.parens,f.output=c.output;let _=(e.capture?"(":"")+f.open;ie("parens"),R({type:p,value:w,output:c.output?"":y}),R({type:"paren",extglob:!0,value:C(),output:_}),U.push(f)},tt=p=>{let w=p.close+(e.capture?")":""),f;if(p.type==="negate"){let _=m;if(p.inner&&p.inner.length>1&&p.inner.includes("/")&&(_=M(e)),(_!==m||W()||/^\)+$/.test(X()))&&(w=p.close=`)$))${_}`),p.inner.includes("*")&&(f=X())&&/^\.[^\\/.]+$/.test(f)){let x=ye(f,{...t,fastpaths:!1}).output;w=p.close=`)${x})${_})`}p.prev.type==="bos"&&(c.negatedExtglob=!0)}R({type:"paren",extglob:!0,value:n,output:w}),V("parens")};if(e.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(s)){let p=!1,w=s.replace(kt,(f,_,x,I,k,pe)=>I==="\\"?(p=!0,f):I==="?"?_?_+I+(k?E.repeat(k.length):""):pe===0?g+(k?E.repeat(k.length):""):E.repeat(x.length):I==="."?d.repeat(x.length):I==="*"?_?_+I+(k?m:""):m:_?f:`\\${f}`);return p===!0&&(e.unescape===!0?w=w.replace(/\\/g,""):w=w.replace(/\\+/g,f=>f.length%2===0?"\\\\":f?"\\":"")),w===s&&e.contains===!0?(c.output=s,c):(c.output=K.wrapOutput(w,c,t),c)}for(;!W();){if(n=C(),n==="\0")continue;if(n==="\\"){let f=$();if(f==="/"&&e.bash!==!0||f==="."||f===";")continue;if(!f){n+="\\",R({type:"text",value:n});continue}let _=/^\\+/.exec(X()),x=0;if(_&&_[0].length>2&&(x=_[0].length,c.index+=x,x%2!==0&&(n+="\\")),e.unescape===!0?n=C():n+=C(),c.brackets===0){R({type:"text",value:n});continue}}if(c.brackets>0&&(n!=="]"||i.value==="["||i.value==="[^")){if(e.posix!==!1&&n===":"){let f=i.value.slice(1);if(f.includes("[")&&(i.posix=!0,f.includes(":"))){let _=i.value.lastIndexOf("["),x=i.value.slice(0,_),I=i.value.slice(_+2),k=vt[I];if(k){i.value=x+k,c.backtrack=!0,C(),!a.output&&l.indexOf(i)===1&&(a.output=y);continue}}}(n==="["&&$()!==":"||n==="-"&&$()==="]")&&(n=`\\${n}`),n==="]"&&(i.value==="["||i.value==="[^")&&(n=`\\${n}`),e.posix===!0&&n==="!"&&i.value==="["&&(n="^"),i.value+=n,z({value:n});continue}if(c.quotes===1&&n!=='"'){n=K.escapeRegex(n),i.value+=n,z({value:n});continue}if(n==='"'){c.quotes=c.quotes===1?0:1,e.keepQuotes===!0&&R({type:"text",value:n});continue}if(n==="("){ie("parens"),R({type:"paren",value:n});continue}if(n===")"){if(c.parens===0&&e.strictBrackets===!0)throw new SyntaxError(Z("opening","("));let f=U[U.length-1];if(f&&c.parens===f.parens+1){tt(U.pop());continue}R({type:"paren",value:n,output:c.parens?")":"\\)"}),V("parens");continue}if(n==="["){if(e.nobracket===!0||!X().includes("]")){if(e.nobracket!==!0&&e.strictBrackets===!0)throw new SyntaxError(Z("closing","]"));n=`\\${n}`}else ie("brackets");R({type:"bracket",value:n});continue}if(n==="]"){if(e.nobracket===!0||i&&i.type==="bracket"&&i.value.length===1){R({type:"text",value:n,output:`\\${n}`});continue}if(c.brackets===0){if(e.strictBrackets===!0)throw new SyntaxError(Z("opening","["));R({type:"text",value:n,output:`\\${n}`});continue}V("brackets");let f=i.value.slice(1);if(i.posix!==!0&&f[0]==="^"&&!f.includes("/")&&(n=`/${n}`),i.value+=n,z({value:n}),e.literalBrackets===!1||K.hasRegexChars(f))continue;let _=K.escapeRegex(i.value);if(c.output=c.output.slice(0,-i.value.length),e.literalBrackets===!0){c.output+=_,i.value=_;continue}i.value=`(${h}${_}|${i.value})`,c.output+=i.value;continue}if(n==="{"&&e.nobrace!==!0){ie("braces");let f={type:"brace",value:n,output:"(",outputIndex:c.output.length,tokensIndex:c.tokens.length};H.push(f),R(f);continue}if(n==="}"){let f=H[H.length-1];if(e.nobrace===!0||!f){R({type:"text",value:n,output:n});continue}let _=")";if(f.dots===!0){let x=l.slice(),I=[];for(let k=x.length-1;k>=0&&(l.pop(),x[k].type!=="brace");k--)x[k].type!=="dots"&&I.unshift(x[k].value);_=Mt(I,e),c.backtrack=!0}if(f.comma!==!0&&f.dots!==!0){let x=c.output.slice(0,f.outputIndex),I=c.tokens.slice(f.tokensIndex);f.value=f.output="\\{",n=_="\\}",c.output=x;for(let k of I)c.output+=k.output||k.value}R({type:"brace",value:n,output:_}),V("braces"),H.pop();continue}if(n==="|"){U.length>0&&U[U.length-1].conditions++,R({type:"text",value:n});continue}if(n===","){let f=n,_=H[H.length-1];_&&O[O.length-1]==="braces"&&(_.comma=!0,f="|"),R({type:"comma",value:n,output:f});continue}if(n==="/"){if(i.type==="dot"&&c.index===c.start+1){c.start=c.index+1,c.consumed="",c.output="",l.pop(),i=a;continue}R({type:"slash",value:n,output:b});continue}if(n==="."){if(c.braces>0&&i.type==="dot"){i.value==="."&&(i.output=d);let f=H[H.length-1];i.type="dots",i.output+=n,i.value+=n,f.dots=!0;continue}if(c.braces+c.parens===0&&i.type!=="bos"&&i.type!=="slash"){R({type:"text",value:n,output:d});continue}R({type:"dot",value:n,output:d});continue}if(n==="?"){if(!(i&&i.value==="(")&&e.noextglob!==!0&&$()==="("&&$(2)!=="?"){ne("qmark",n);continue}if(i&&i.type==="paren"){let _=$(),x=n;(i.value==="("&&!/[!=<:]/.test(_)||_==="<"&&!/<([!=]|\w+>)/.test(X()))&&(x=`\\${n}`),R({type:"text",value:n,output:x});continue}if(e.dot!==!0&&(i.type==="slash"||i.type==="bos")){R({type:"qmark",value:n,output:B});continue}R({type:"qmark",value:n,output:E});continue}if(n==="!"){if(e.noextglob!==!0&&$()==="("&&($(2)!=="?"||!/[!=<:]/.test($(3)))){ne("negate",n);continue}if(e.nonegate!==!0&&c.index===0){et();continue}}if(n==="+"){if(e.noextglob!==!0&&$()==="("&&$(2)!=="?"){ne("plus",n);continue}if(i&&i.value==="("||e.regex===!1){R({type:"plus",value:n,output:T});continue}if(i&&(i.type==="bracket"||i.type==="paren"||i.type==="brace")||c.parens>0){R({type:"plus",value:n});continue}R({type:"plus",value:T});continue}if(n==="@"){if(e.noextglob!==!0&&$()==="("&&$(2)!=="?"){R({type:"at",extglob:!0,value:n,output:""});continue}R({type:"text",value:n});continue}if(n!=="*"){(n==="$"||n==="^")&&(n=`\\${n}`);let f=Ht.exec(X());f&&(n+=f[0],c.index+=f[0].length),R({type:"text",value:n});continue}if(i&&(i.type==="globstar"||i.star===!0)){i.type="star",i.star=!0,i.value+=n,i.output=m,c.backtrack=!0,c.globstar=!0,j(n);continue}let p=X();if(e.noextglob!==!0&&/^\([^?]/.test(p)){ne("star",n);continue}if(i.type==="star"){if(e.noglobstar===!0){j(n);continue}let f=i.prev,_=f.prev,x=f.type==="slash"||f.type==="bos",I=_&&(_.type==="star"||_.type==="globstar");if(e.bash===!0&&(!x||p[0]&&p[0]!=="/")){R({type:"star",value:n,output:""});continue}let k=c.braces>0&&(f.type==="comma"||f.type==="brace"),pe=U.length&&(f.type==="pipe"||f.type==="paren");if(!x&&f.type!=="paren"&&!k&&!pe){R({type:"star",value:n,output:""});continue}for(;p.slice(0,3)==="/**";){let ae=s[c.index+4];if(ae&&ae!=="/")break;p=p.slice(3),j("/**",3)}if(f.type==="bos"&&W()){i.type="globstar",i.value+=n,i.output=M(e),c.output=i.output,c.globstar=!0,j(n);continue}if(f.type==="slash"&&f.prev.type!=="bos"&&!I&&W()){c.output=c.output.slice(0,-(f.output+i.output).length),f.output=`(?:${f.output}`,i.type="globstar",i.output=M(e)+(e.strictSlashes?")":"|$)"),i.value+=n,c.globstar=!0,c.output+=f.output+i.output,j(n);continue}if(f.type==="slash"&&f.prev.type!=="bos"&&p[0]==="/"){let ae=p[1]!==void 0?"|$":"";c.output=c.output.slice(0,-(f.output+i.output).length),f.output=`(?:${f.output}`,i.type="globstar",i.output=`${M(e)}${b}|${b}${ae})`,i.value+=n,c.output+=f.output+i.output,c.globstar=!0,j(n+C()),R({type:"slash",value:"/",output:""});continue}if(f.type==="bos"&&p[0]==="/"){i.type="globstar",i.value+=n,i.output=`(?:^|${b}|${M(e)}${b})`,c.output=i.output,c.globstar=!0,j(n+C()),R({type:"slash",value:"/",output:""});continue}c.output=c.output.slice(0,-i.output.length),i.type="globstar",i.output=M(e),i.value+=n,c.output+=i.output,c.globstar=!0,j(n);continue}let w={type:"star",value:n,output:m};if(e.bash===!0){w.output=".*?",(i.type==="bos"||i.type==="slash")&&(w.output=D+w.output),R(w);continue}if(i&&(i.type==="bracket"||i.type==="paren")&&e.regex===!0){w.output=n,R(w);continue}(c.index===c.start||i.type==="slash"||i.type==="dot")&&(i.type==="dot"?(c.output+=q,i.output+=q):e.dot===!0?(c.output+=G,i.output+=G):(c.output+=D,i.output+=D),$()!=="*"&&(c.output+=y,i.output+=y)),R(w)}for(;c.brackets>0;){if(e.strictBrackets===!0)throw new SyntaxError(Z("closing","]"));c.output=K.escapeLast(c.output,"["),V("brackets")}for(;c.parens>0;){if(e.strictBrackets===!0)throw new SyntaxError(Z("closing",")"));c.output=K.escapeLast(c.output,"("),V("parens")}for(;c.braces>0;){if(e.strictBrackets===!0)throw new SyntaxError(Z("closing","}"));c.output=K.escapeLast(c.output,"{"),V("braces")}if(e.strictSlashes!==!0&&(i.type==="star"||i.type==="bracket")&&R({type:"maybe_slash",value:"",output:`${b}?`}),c.backtrack===!0){c.output="";for(let p of c.tokens)c.output+=p.output!=null?p.output:p.value,p.suffix&&(c.output+=p.suffix)}return c};ye.fastpaths=(s,t)=>{let e={...t},o=typeof e.maxLength=="number"?Math.min(he,e.maxLength):he,r=s.length;if(r>o)throw new SyntaxError(`Input length: ${r}, exceeds maximum allowed length: ${o}`);s=De[s]||s;let{DOT_LITERAL:a,SLASH_LITERAL:l,ONE_CHAR:h,DOTS_SLASH:u,NO_DOT:A,NO_DOTS:d,NO_DOTS_SLASH:T,STAR:b,START_ANCHOR:y}=ue.globChars(e.windows),S=e.dot?d:A,L=e.dot?T:A,q=e.capture?"":"?:",G={negated:!1,prefix:""},E=e.bash===!0?".*?":b;e.capture&&(E=`(${E})`);let B=D=>D.noglobstar===!0?E:`(${q}(?:(?!${y}${D.dot?u:a}).)*?)`,J=D=>{switch(D){case"*":return`${S}${h}${E}`;case".*":return`${a}${h}${E}`;case"*.*":return`${S}${E}${a}${h}${E}`;case"*/*":return`${S}${E}${l}${h}${L}${E}`;case"**":return S+B(e);case"**/*":return`(?:${S}${B(e)}${l})?${L}${h}${E}`;case"**/*.*":return`(?:${S}${B(e)}${l})?${L}${E}${a}${h}${E}`;case"**/.*":return`(?:${S}${B(e)}${l})?${a}${h}${E}`;default:{let g=/^(.*?)\.(\w+)$/.exec(D);if(!g)return;let m=J(g[1]);return m?m+a+g[2]:void 0}}},F=K.removePrefix(s,G),M=J(F);return M&&e.strictSlashes!==!0&&(M+=`${l}?`),M};Ge.exports=ye});var Qe=Y((Xt,je)=>{"use strict";var Ft=Pe(),Ee=Be(),We=te(),It=ee(),Nt=s=>s&&typeof s=="object"&&!Array.isArray(s),v=(s,t,e=!1)=>{if(Array.isArray(s)){let d=s.map(b=>v(b,t,e));return b=>{for(let y of d){let S=y(b);if(S)return S}return!1}}let o=Nt(s)&&s.tokens&&s.input;if(s===""||typeof s!="string"&&!o)throw new TypeError("Expected pattern to be a non-empty string");let r=t||{},a=r.windows,l=o?v.compileRe(s,t):v.makeRe(s,t,!1,!0),h=l.state;delete l.state;let u=()=>!1;if(r.ignore){let d={...t,ignore:null,onMatch:null,onResult:null};u=v(r.ignore,d,e)}let A=(d,T=!1)=>{let{isMatch:b,match:y,output:S}=v.test(d,l,t,{glob:s,posix:a}),L={glob:s,state:h,regex:l,posix:a,input:d,output:S,match:y,isMatch:b};return typeof r.onResult=="function"&&r.onResult(L),b===!1?(L.isMatch=!1,T?L:!1):u(d)?(typeof r.onIgnore=="function"&&r.onIgnore(L),L.isMatch=!1,T?L:!1):(typeof r.onMatch=="function"&&r.onMatch(L),T?L:!0)};return e&&(A.state=h),A};v.test=(s,t,e,{glob:o,posix:r}={})=>{if(typeof s!="string")throw new TypeError("Expected input to be a string");if(s==="")return{isMatch:!1,output:""};let a=e||{},l=a.format||(r?We.toPosixSlashes:null),h=s===o,u=h&&l?l(s):s;return h===!1&&(u=l?l(s):s,h=u===o),(h===!1||a.capture===!0)&&(a.matchBase===!0||a.basename===!0?h=v.matchBase(s,t,e,r):h=t.exec(u)),{isMatch:!!h,match:h,output:u}};v.matchBase=(s,t,e)=>(t instanceof RegExp?t:v.makeRe(t,e)).test(We.basename(s));v.isMatch=(s,t,e)=>v(t,e)(s);v.parse=(s,t)=>Array.isArray(s)?s.map(e=>v.parse(e,t)):Ee(s,{...t,fastpaths:!1});v.scan=(s,t)=>Ft(s,t);v.compileRe=(s,t,e=!1,o=!1)=>{if(e===!0)return s.output;let r=t||{},a=r.contains?"":"^",l=r.contains?"":"$",h=`${a}(?:${s.output})${l}`;s&&s.negated===!0&&(h=`^(?!${h}).*$`);let u=v.toRegex(h,t);return o===!0&&(u.state=s),u};v.makeRe=(s,t={},e=!1,o=!1)=>{if(!s||typeof s!="string")throw new TypeError("Expected a non-empty string");let r={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(s[0]==="."||s[0]==="*")&&(r.output=Ee.fastpaths(s,t)),r.output||(r=Ee(s,t)),v.compileRe(r,t,e,o)};v.toRegex=(s,t)=>{try{let e=t||{};return new RegExp(s,e.flags||(e.nocase?"i":""))}catch(e){if(t&&t.debug===!0)throw e;return/$^/}};v.constants=It;je.exports=v});var ze=Y((zt,Xe)=>{"use strict";var Ke=Qe(),Ut=te();function qe(s,t,e=!1){return t&&(t.windows===null||t.windows===void 0)&&(t={...t,windows:Ut.isWindows()}),Ke(s,t,e)}Object.assign(qe,Ke);Xe.exports=qe});var Dt={};at(Dt,{HMRClient:()=>oe,default:()=>oe,stub:()=>Ze});var le=class{constructor(t,{iframeTarget:e=null,iframeOrigin:o="*",css:r="iframe"}={}){this.httpUrl=t,this.iframeTarget=e,this.iframeOrigin=o,this.css=r,this.loadQueue=new Map,this.versions=new Map}async loadFile(t){let e=t.endsWith(".css"),o=t.endsWith(".mjs");return e?await this.loadCSS(t):o?await this.loadModule(t):await this.loadScript(t)}async loadCSS(t){let e=this.makeUrl(t),o=this.iframeTarget&&this.css!=="parent",r=!this.iframeTarget||this.css!=="iframe",a=[];o&&a.push(fetch(e).then(u=>{if(!u.ok)throw new Error(`Failed to fetch CSS: ${t} (${u.status})`);return u.text()}).then(u=>this._inject("css",u,t))),r&&a.push(this._loadCSSInParent(t,e));let h=(await Promise.allSettled(a)).find(u=>u.status==="rejected");if(h)throw h.reason;return!0}_loadCSSInParent(t,e){let o=document.querySelector(`link[data-file="${t}"]`),r=document.createElement("link");return r.rel="stylesheet",r.href=e,r.setAttribute("data-file",t),new Promise((a,l)=>{r.onload=()=>{o&&o.remove(),a(!0)},r.onerror=()=>{r.remove(),l(new Error(`Failed to load CSS: ${t}`))},document.head.appendChild(r)})}async loadModule(t){let e=this.makeUrl(t);if(this.iframeTarget){let o=await fetch(e).then(r=>{if(!r.ok)throw new Error(`Failed to fetch module: ${t} (${r.status})`);return r.text()});return await this._inject("module",o,t),!0}return await import(e),!0}async loadScript(t){let e=this.makeUrl(t),o=document.querySelector(`script[data-file="${t}"]`);if(o&&o.remove(),this.iframeTarget){let a=await fetch(e).then(l=>{if(!l.ok)throw new Error(`Failed to fetch script: ${t} (${l.status})`);return l.text()});return await this._inject("script",a,t),!0}let r=document.createElement("script");return r.src=e,r.setAttribute("data-file",t),new Promise((a,l)=>{r.onload=()=>{let h=document.querySelector(`script[data-file="${t}"]:not([src="${e}"])`);h&&h.remove(),a(!0)},r.onerror=()=>l(new Error(`Failed to load script: ${t}`)),document.head.appendChild(r)})}async reloadFile(t){return new Promise((e,o)=>{if(this.loadQueue.has(t)){let r=this.loadQueue.get(t);clearTimeout(r.timeout),r.resolvers.push({resolve:e,reject:o}),r.timeout=setTimeout(()=>this._flushReload(t),100)}else{let r={timeout:setTimeout(()=>this._flushReload(t),100),resolvers:[{resolve:e,reject:o}]};this.loadQueue.set(t,r)}})}async _flushReload(t){let e=this.loadQueue.get(t);this.loadQueue.delete(t);try{let o=await this.loadFile(t);for(let{resolve:r}of e.resolvers)r(o)}catch(o){for(let{reject:r}of e.resolvers)r(o)}}async removeFile(t){if(this.loadQueue.has(t)){let e=this.loadQueue.get(t);clearTimeout(e.timeout);for(let{reject:o}of e.resolvers)o(new Error(`File removed: ${t}`));this.loadQueue.delete(t)}if(this.iframeTarget)await this._postAndAwaitAck({type:"hmr:remove",file:t});else{let e=document.querySelector(`[data-file="${t}"]`);e&&(e.remove(),await Promise.resolve())}this.versions.delete(t)}makeUrl(t){let e=(this.versions.get(t)??0)+1;return this.versions.set(t,e),`${this.httpUrl}${t}?v=${e}`}_postAndAwaitAck(t){return new Promise(e=>{let o=r=>{if(r.source!==this.iframeTarget)return;let a;try{a=JSON.parse(r.data)}catch{return}a?.type==="hmr:ack"&&(window.removeEventListener("message",o),e())};window.addEventListener("message",o),this.iframeTarget.postMessage(JSON.stringify(t),this.iframeOrigin)})}_inject(t,e,o){return this._postAndAwaitAck({type:"hmr:inject",kind:t,code:e,file:o})}};var Q={RELOAD:"reload",ADD:"add",REMOVE:"remove",INIT:"init"};var Ve=ct(ze(),1),$e=new Map;function Ce(s,t){return t.some(e=>($e.has(e)||$e.set(e,(0,Ve.default)(e)),$e.get(e)(s)))}function fe(){return new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}function N(s){return s.split("/").pop()}function re(s){let t=s.split("/");return t.pop(),t.join("/")||"."}function we(s){return s.endsWith("/")?s:s+"/"}function Je(s){let t=new URL(s);return`${t.protocol==="wss:"?"https":"http"}://${t.host}/`}function Pt(s,t){let e=new URL(s);return`${e.protocol==="https:"?"wss":"ws"}://${e.host}${t}`}function Ye(s,t="/hmr"){if(typeof s=="string")return{wsUrl:s,httpUrl:Je(s)};if(typeof s=="number"&&(s={port:s}),typeof s!="object"||s===null)throw new Error("Options must be a string, number, or object");if(s.wsUrl&&s.httpUrl)return{wsUrl:s.wsUrl,httpUrl:we(s.httpUrl)};if(s.wsUrl)return{wsUrl:s.wsUrl,httpUrl:Je(s.wsUrl)};if(s.httpUrl){let e=we(s.httpUrl);return{wsUrl:Pt(e,t),httpUrl:e}}if(s.port){let e=s.host||"localhost",o=s.secure||!1,r=o?"wss":"ws",a=o?"https":"http",l=`${r}://${e}:${s.port}${t}`,h=we(`${a}://${e}:${s.port}`);return{wsUrl:l,httpUrl:h}}throw new Error("Must provide wsUrl, httpUrl, port, or host+port")}var oe=class{constructor(t){let e=typeof t=="object"&&!Array.isArray(t)?t:{},o=e.wsPath||"/hmr",{wsUrl:r,httpUrl:a}=Ye(t,o);this.wsUrl=r,this.httpUrl=a,this.watchFiles=!0,this._autoReconnectDefault=e.autoReconnect!==!1,this.autoReconnect=this._autoReconnectDefault,this.reconnectDelay=e.reconnectDelay||2e3,this.maxReconnectDelay=e.maxReconnectDelay||3e4,this.skipOnReconnect=e.skipOnReconnect!==!1,this._coldPatterns=e.cold||null,this._filterCold=e.filterCold||null,this.shouldSkipFile=this.makeFilter(e.skip||null,e.filterSkip||null),this.isColdFile=this.makeFilter(this._coldPatterns,this._filterCold),this.allFiles=[],this.getOverrideTarget=e.getOverrideTarget||null,this.onFileLoaded=e.onFileLoaded||null,this.loadOrder=e.loadOrder||[],this.sortFiles=e.sortFiles||this.defaultSortFiles.bind(this),this.socket=null,this.reconnectAttempts=0,this.isConnected=!1,this.eventHandlers=new Map,this._reconnectTimer=null,this._messageQueue=[],this._processingMessages=!1;let l=e.iframe===!0?{}:e.iframe,h=l?.target?l.target?.contentWindow??null:null,u=l?.origin??"*";this._iframeTarget=h,this._iframeOrigin=u,this._stubManaged=!!l&&!h,this._onReattach=null,this.fileLoader=new le(this.httpUrl,{iframeTarget:h,iframeOrigin:u,css:l?.css??"iframe"}),this.overrideMap=new Map,this._reverseOverrideMap=new Map,this.logStyles={info:{symbol:"\u2139",color:"#76fffd"},success:{symbol:"\u25B6",color:"#68ff51"},warning:{symbol:"\u232C",color:"#ff8400"},error:{symbol:"\u2716",color:"#ff0000"},add:{symbol:"\u2295",color:"#22c55e"},remove:{symbol:"\u2296",color:"#f87171"},inject:{symbol:"\u2398",color:"#facc15"},disconnect:{symbol:"\u2726",color:"#ef4444"},override:{symbol:"\u29EB",color:"#ff8400"},skip:{symbol:"\u2298",color:"#888888"},cold:{symbol:"\u2744",color:"#60a5fa"}}}defaultSortFiles(t){let e=new Set(t.filter(a=>this.isColdFile(a))),o=[a=>a.endsWith(".css"),a=>e.has(a),(a,l)=>a.localeCompare(l)],r=[...this.loadOrder,...o];return[...t].sort((a,l)=>{for(let h of r){let u=h.length===2?h(a,l):h(l)-h(a);if(u!==0)return u}return 0})}makeFilter(t,e){return t&&e?(o,r)=>Ce(o,t)||e(o,r):t?o=>Ce(o,t):e||(()=>!1)}log(t,e){let{symbol:o,color:r}=this.logStyles[t]||this.logStyles.info,a=fe();console.log(`%c${o} [${a}] ${e}`,`color: ${r}; font-weight: bold;`)}logInitFileGroup(t,e,o){if(!t.length)return;let r=t.filter(y=>e.has(y)).length,a=t.filter(y=>o(y)).length,l=t.filter(y=>y.endsWith(".js")||y.endsWith(".cjs")||y.endsWith(".mjs")).length,h=t.filter(y=>y.endsWith(".css")).length,u=[];r&&u.push(`${r} overridden`),a&&u.push(`${a} cold`),h&&u.push(`${l} JS, ${h} CSS`);let A=u.length?` (${u.join(", ")})`:"",d=`Loading ${t.length} initial file${t.length!==1?"s":""}${A}`,{symbol:T,color:b}=this.logStyles.inject;console.groupCollapsed(`%c${T} [${fe()}] ${d}`,`color: ${b}; font-weight: bold;`),t.forEach(y=>{let S=N(y),L=re(y),q=e.has(y),G=o(y);if(q){let E=N(e.get(y)),B=re(e.get(y));console.log(`%c\u2514\u2500 ${S} -> ${E}%c (${L} -> ${B})`,`color: ${this.logStyles.override.color}; font-weight: bold;`,"color: #888888; font-style: italic;")}else G?console.log(`%c\u2514\u2500 ${S}%c (${L})`,`color: ${this.logStyles.cold.color}; font-weight: bold;`,"color: #888888; font-style: italic;"):console.log(`\u2514\u2500 %c${S}%c (${L})`,"color: #ffffff; font-weight: bold;","color: #888888; font-style: italic;")}),console.groupEnd()}buildOverrideMap(t){this.overrideMap.clear(),this._reverseOverrideMap.clear();let e=new Set,o=new Set;if(!this.getOverrideTarget)return t;for(let r of t){let a=this.getOverrideTarget(r,t);a&&(this.overrideMap.set(r,a),this._reverseOverrideMap.has(a)||this._reverseOverrideMap.set(a,new Set),this._reverseOverrideMap.get(a).add(r),e.add(r),o.add(a))}return t.filter(r=>!o.has(r))}async processInitFiles(t){let e=[],o=[];for(let h of t)(this.shouldSkipFile(h,t)?o:e).push(h);o.length>0&&(console.groupCollapsed(`%c${this.logStyles.skip.symbol} [${fe()}] Skipped ${o.length} file${o.length!==1?"s":""}`,`color: ${this.logStyles.skip.color}; font-weight: bold;`),o.forEach(h=>console.log(` \u2514\u2500 ${N(h)}`)),console.groupEnd());let r=e;if(this.skipOnReconnect){let h=[];r=[];for(let u of e)(this.fileLoader.versions.has(u)||document.querySelector(`[data-file="${u}"]`)?h:r).push(u);h.length>0&&this.log("info",`Server reconnected - skipping ${h.length} existing file${h.length!==1?"s":""}`)}let a=this.buildOverrideMap(r),l=this.sortFiles(a);this.logInitFileGroup(l,this.overrideMap,this.isColdFile.bind(this));for(let h of l)await this.fileLoader.loadFile(h),this.onFileLoaded&&this.onFileLoaded(h);this.log("success",`HMR client ready (${l.length} files loaded)`)}async handleFileChange(t,e,o=!1){if(this.shouldSkipFile(t,this.allFiles)){this.log("skip",`Skipping ${e}: ${N(t)}`);return}if(this._reverseOverrideMap.has(t)){this.log("skip",`Skipping ${e}: ${N(t)} (overridden)`);return}if(this.getOverrideTarget){let u=this.getOverrideTarget(t,this.allFiles),A=this.overrideMap.get(t);if(A&&A!==u){let d=this._reverseOverrideMap.get(A);d&&(d.delete(t),d.size===0&&this._reverseOverrideMap.delete(A)),this.overrideMap.delete(t)}u&&(this.log("override",`${N(t)} -> ${N(u)}`),await this.fileLoader.removeFile(u),this.overrideMap.set(t,u),this._reverseOverrideMap.has(u)||this._reverseOverrideMap.set(u,new Set),this._reverseOverrideMap.get(u).add(t))}if(o||this.isColdFile(t)){this.log("cold",`Cold file changed: ${N(t)}`),this.emit("cold",t);return}let a=N(t),l=re(t),h=e===Q.RELOAD?"warning":"add";this.log(h,`HMR ${e}: ${a}`),console.log(`%c \u2514\u2500 Path: ${l}`,"color: #888888; font-style: italic;"),e===Q.RELOAD?await this.fileLoader.reloadFile(t):await this.fileLoader.loadFile(t),this.onFileLoaded&&this.onFileLoaded(t),this.emit(e,t)}async handleFileRemove(t){if(this.shouldSkipFile(t,this.allFiles)){this.log("skip",`Skipping remove: ${N(t)}`);return}let e=N(t),o=re(t);this.log("remove",`HMR remove: ${e}`),console.log(`%c \u2514\u2500 Path: ${o}`,"color: #888888; font-style: italic;");let r=this.overrideMap.get(t);if(r){this.overrideMap.delete(t);let a=this._reverseOverrideMap.get(r);if(a&&(a.delete(t),a.size===0))if(this._reverseOverrideMap.delete(r),this.log("override",`Restoring: ${N(r)}`),this.allFiles.includes(r))try{await this.fileLoader.loadFile(r)}catch(h){this.log("error",`Failed to restore original: ${N(r)} - ${h.message}`),this.allFiles=this.allFiles.filter(u=>u!==r)}else this.log("warning",`Original file no longer tracked, skipping restore: ${N(r)}`)}await this.fileLoader.removeFile(t),this.emit(Q.REMOVE,t)}async handleMessage(t){if(t.type===Q.INIT){if(this.emit(Q.INIT,t),this.watchFiles=t.config?.watchFiles??!0,this.watchFiles||this.log("info","Static snapshot mode -> live watching disabled"),t.config?.cold?.length){let r=[...new Set([...this._coldPatterns||[],...t.config.cold])];this.isColdFile=this.makeFilter(r,this._filterCold)}if(t.files&&t.files.length>0)this.allFiles=[...t.files],await this.processInitFiles(t.files);else{let r=this.watchFiles?"HMR ready":"Static snapshot ready";this.log("success",`${r} (0 files loaded)`)}return}let{action:e,file:o}=t;!e||!o||(e===Q.ADD&&(this.allFiles=[...this.allFiles,o]),e===Q.REMOVE&&(this.allFiles=this.allFiles.filter(r=>r!==o)),(e===Q.RELOAD||e===Q.ADD)&&await this.handleFileChange(o,e,t.cold??!1),e===Q.REMOVE&&await this.handleFileRemove(o))}on(t,e){return this.eventHandlers.has(t)||this.eventHandlers.set(t,[]),this.eventHandlers.get(t).push(e),this}once(t,e){let o=(...r)=>{this.off(t,o),e(...r)};return o._original=e,this.on(t,o)}off(t,e){let o=this.eventHandlers.get(t);if(!o)return this;if(!e)return this.eventHandlers.delete(t),this;let r=o.filter(a=>a!==e&&a._original!==e);return r.length===o.length?this:(r.length===0?this.eventHandlers.delete(t):this.eventHandlers.set(t,r),this)}emit(t,...e){let o=this.eventHandlers.get(t);if(o)for(let r of[...o])r(...e)}_enqueueMessage(t){this._messageQueue.push(t),this._processingMessages||this._drainMessageQueue()}async _drainMessageQueue(){for(this._processingMessages=!0;this._messageQueue.length>0;){let t=this._messageQueue.shift();try{await this.handleMessage(t)}catch(e){this.log("error",`Message handling error: ${e.message}`)}}this._processingMessages=!1}_waitForStub(){return new Promise(t=>{let e=setTimeout(()=>{window.removeEventListener("message",o),this.log("warning","Timed out waiting for hmr:ready. Was HMR.stub() called in the iframe?"),t()},5e3),o=r=>{let a;try{a=JSON.parse(r.data)}catch{return}a?.type!=="hmr:ready"||!(this._iframeOrigin==="*"||r.origin===this._iframeOrigin)||(clearTimeout(e),window.removeEventListener("message",o),this._stubManaged&&(this._iframeTarget=r.source,this.fileLoader.iframeTarget=r.source),t())};window.addEventListener("message",o)})}_listenForReattach(){this._onReattach||(this._onReattach=async t=>{let e;try{e=JSON.parse(t.data)}catch{return}if(!(e?.type!=="hmr:ready"||!(this._iframeOrigin==="*"||t.origin===this._iframeOrigin))&&t.source!==this._iframeTarget){this._iframeTarget=t.source,this.fileLoader.iframeTarget=t.source,this.log("success","HMR reattached to new iframe");for(let r of this.sortFiles([...this.fileLoader.versions.keys()]))try{await this.fileLoader.loadFile(r)}catch(a){this.log("error",`Reattach failed to load ${r}: ${a.message}`)}}},window.addEventListener("message",this._onReattach))}connect(){return this.autoReconnect=this._autoReconnectDefault,this._reconnectTimer&&(clearTimeout(this._reconnectTimer),this._reconnectTimer=null),this.socket&&(this.socket.onopen=null,this.socket.onclose=null,this.socket.onerror=null,this.socket.onmessage=null,this.socket.close(),this.socket=null),new Promise((t,e)=>{let o=!1;try{this.socket=new WebSocket(this.wsUrl),this.socket.onopen=async()=>{o=!0,this.isConnected=!0,this.reconnectAttempts=0,this.log("success","HMR connected"),this.emit("connect"),this._messageQueue=[],this._processingMessages=!0,(this._iframeTarget||this._stubManaged)&&(await this._waitForStub(),this._stubManaged&&this._listenForReattach()),this._processingMessages=!1,this._messageQueue.length>0&&this._drainMessageQueue(),t()},this.socket.onclose=()=>{if(this.isConnected=!1,this.socket=null,this.emit("disconnect"),this.autoReconnect){let r=Math.min(this.reconnectDelay*Math.pow(1.5,this.reconnectAttempts++),this.maxReconnectDelay),a=o?`HMR disconnected, retrying in ${(r/1e3).toFixed(1)}s...`:`HMR connection failed, retrying in ${(r/1e3).toFixed(1)}s...`;this.log("disconnect",a),this._reconnectTimer=setTimeout(()=>{this.connect().catch(l=>{this.log("error",`Reconnect attempt failed: ${l.message}`),this.emit("error",l)})},r)}else o&&this.log("disconnect","HMR disconnected")},this.socket.onerror=r=>{let a=r.message||"Connection failed";this.log("error",`HMR error: ${a}`),this.emit("error",r),o||(o=!0,e(r))},this.socket.onmessage=r=>{try{let a=JSON.parse(r.data);this._enqueueMessage(a)}catch(a){this.log("error",`Failed to parse message: ${a.message}`)}}}catch(r){this.log("error",`Failed to create WebSocket: ${r.message}`),e(r)}})}disconnect(){this.autoReconnect=!1,this.reconnectAttempts=0,this.isConnected=!1,clearTimeout(this._reconnectTimer),this._reconnectTimer=null,this._onReattach&&(window.removeEventListener("message",this._onReattach),this._onReattach=null),this.socket&&(this.socket.close(),this.socket=null)}};function Ze(){let s=(r,a)=>document.querySelector(`${r}[data-file="${CSS.escape(a)}"]`),t=r=>{r&&r.remove()},e=async(r,a,l)=>{let h=URL.createObjectURL(new Blob([a+`
2
2
  //# sourceURL=${l}`],{type:"text/javascript"}));try{if(r==="module")await import(h);else{let u=document.createElement("script");u.src=h,await new Promise((A,d)=>{u.onload=A,u.onerror=()=>d(new Error(`Failed to execute script: ${l}`)),document.documentElement.appendChild(u)})}}finally{URL.revokeObjectURL(h)}},o=async(r,a)=>{let l=s("link",a),h=URL.createObjectURL(new Blob([r+`
3
3
  /*# sourceURL=${a} */`],{type:"text/css"})),u=document.createElement("link");u.rel="stylesheet",u.href=h,u.dataset.file=a,await new Promise((A,d)=>{u.onload=()=>{URL.revokeObjectURL(h),A()},u.onerror=()=>{URL.revokeObjectURL(h),d(new Error(`Failed to load CSS: ${a}`))},document.head.appendChild(u)}),t(l)};window.addEventListener("message",async r=>{let a;try{a=JSON.parse(r.data)}catch{return}if(!a?.type)return;let l=r.origin&&r.origin!=="null"?r.origin:"*",h=()=>r.source?.postMessage(JSON.stringify({type:"hmr:ack"}),l);if(a.type==="hmr:remove"){t(document.querySelector(`[data-file="${CSS.escape(a.file)}"]`)),h();return}if(a.type!=="hmr:inject")return;let{kind:u,code:A,file:d}=a;try{u==="script"||u==="module"?await e(u,A,d):u==="css"&&await o(A,d)}catch(T){console.error(`Failed to inject ${d}:`,T.message??T,`
4
4
  `+T.stack)}h()}),window.parent.postMessage(JSON.stringify({type:"hmr:ready"}),"*")}return lt(Dt);})();