UNPKG

@metagptx/vite-plugin-testid-checker

Version:

A Vite plugin for testid checker

25 lines (24 loc) 42.4 kB
/*! * @metagptx/vite-plugin-testid-checker v0.0.1-alpha.2 * (c) 2025 caowenyue@fuzhi.ai */ "use strict";var e=require("path"),t=require("@babel/parser"),n=require("@babel/traverse"),r=require("@babel/generator"),o=require("@babel/types"),s=require("magic-string"),a=require("@vue/compiler-sfc"),u=require("@vue/compiler-dom"),i=require("node:crypto"),p=require("util");function c(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}}),t.default=e,Object.freeze(t)}var l=c(t),f=c(o);const A=["a","button","input","textarea","select","option"],g=["@click","@change","@input","@focus","@blur","@mouseover","@mouseout","@mouseenter","@mouseleave","@mousemove","@mouseup","@mousedown","@mousewheel","@keydown","@keyup","@keypress"];function R(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],s=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=s(n)):"call"!==o&&"optionalCall"!==o||(n=s((...e)=>n.call(t,...e)),t=void 0)}return n}const h=n.default||n,d=r.default||r;function _(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var E,y,C,m,b,v,S,x,H,$,T,L,O,N,w,I,k,M,B,P={};function D(){return E||(E=1,function(e){e.isInteger=e=>"number"==typeof e?Number.isInteger(e):"string"==typeof e&&""!==e.trim()&&Number.isInteger(Number(e)),e.find=(e,t)=>e.nodes.find(e=>e.type===t),e.exceedsLimit=(t,n,r=1,o)=>!1!==o&&(!(!e.isInteger(t)||!e.isInteger(n))&&(Number(n)-Number(t))/Number(r)>=o),e.escapeNode=(e,t=0,n)=>{const r=e.nodes[t];r&&(n&&r.type===n||"open"===r.type||"close"===r.type)&&!0!==r.escaped&&(r.value="\\"+r.value,r.escaped=!0)},e.encloseBrace=e=>"brace"===e.type&&(!(e.commas>>0+e.ranges|0)&&(e.invalid=!0,!0)),e.isInvalidBrace=e=>"brace"===e.type&&(!(!0!==e.invalid&&!e.dollar)||(e.commas>>0+e.ranges|0?(!0!==e.open||!0!==e.close)&&(e.invalid=!0,!0):(e.invalid=!0,!0))),e.isOpenOrClose=e=>"open"===e.type||"close"===e.type||(!0===e.open||!0===e.close),e.reduce=e=>e.reduce((e,t)=>("text"===t.type&&e.push(t.value),"range"===t.type&&(t.type="text"),e),[]),e.flatten=(...e)=>{const t=[],n=e=>{for(let r=0;r<e.length;r++){const o=e[r];Array.isArray(o)?n(o):void 0!==o&&t.push(o)}return t};return n(e),t}}(P)),P}function G(){if(C)return y;C=1;const e=D();return y=(t,n={})=>{const r=(t,o={})=>{const s=n.escapeInvalid&&e.isInvalidBrace(o),a=!0===t.invalid&&!0===n.escapeInvalid;let u="";if(t.value)return(s||a)&&e.isOpenOrClose(t)?"\\"+t.value:t.value;if(t.value)return t.value;if(t.nodes)for(const e of t.nodes)u+=r(e);return u};return r(t)}} /*! * is-number <https://github.com/jonschlinkert/is-number> * * Copyright (c) 2014-present, Jon Schlinkert. * Released under the MIT License. */function U(){return b?m:(b=1,m=function(e){return"number"==typeof e?e-e===0:"string"==typeof e&&""!==e.trim()&&(Number.isFinite?Number.isFinite(+e):isFinite(+e))})} /*! * to-regex-range <https://github.com/micromatch/to-regex-range> * * Copyright (c) 2015-present, Jon Schlinkert. * Released under the MIT License. */function K(){if(S)return v;S=1;const e=U(),t=(n,s,a)=>{if(!1===e(n))throw new TypeError("toRegexRange: expected the first argument to be a number");if(void 0===s||n===s)return String(n);if(!1===e(s))throw new TypeError("toRegexRange: expected the second argument to be a number.");let u={relaxZeros:!0,...a};"boolean"==typeof u.strictZeros&&(u.relaxZeros=!1===u.strictZeros);let i=n+":"+s+"="+String(u.relaxZeros)+String(u.shorthand)+String(u.capture)+String(u.wrap);if(t.cache.hasOwnProperty(i))return t.cache[i].result;let p=Math.min(n,s),c=Math.max(n,s);if(1===Math.abs(p-c)){let e=n+"|"+s;return u.capture?`(${e})`:!1===u.wrap?e:`(?:${e})`}let f=l(n)||l(s),A={min:n,max:s,a:p,b:c},g=[],R=[];if(f&&(A.isPadded=f,A.maxLen=String(A.max).length),p<0){R=r(c<0?Math.abs(c):1,Math.abs(p),A,u),p=A.a=0}return c>=0&&(g=r(p,c,A,u)),A.negatives=R,A.positives=g,A.result=function(e,t){let n=o(e,t,"-",!1)||[],r=o(t,e,"",!1)||[],s=o(e,t,"-?",!0)||[];return n.concat(s).concat(r).join("|")}(R,g),!0===u.capture?A.result=`(${A.result})`:!1!==u.wrap&&g.length+R.length>1&&(A.result=`(?:${A.result})`),t.cache[i]=A,A.result};function n(e,t,n){if(e===t)return{pattern:e,count:[],digits:0};let r=function(e,t){let n=[];for(let r=0;r<e.length;r++)n.push([e[r],t[r]]);return n}(e,t),o=r.length,s="",a=0;for(let e=0;e<o;e++){let[t,n]=r[e];t===n?s+=t:"0"!==t||"9"!==n?s+=c(t,n):a++}return a&&(s+=!0===n.shorthand?"\\d":"[0-9]"),{pattern:s,count:[a],digits:o}}function r(e,t,r,o){let a,c=function(e,t){let n=1,r=1,o=u(e,n),a=new Set([t]);for(;e<=o&&o<=t;)a.add(o),n+=1,o=u(e,n);for(o=i(t+1,r)-1;e<o&&o<=t;)a.add(o),r+=1,o=i(t+1,r)-1;return a=[...a],a.sort(s),a}(e,t),l=[],A=e;for(let e=0;e<c.length;e++){let t=c[e],s=n(String(A),String(t),o),u="";r.isPadded||!a||a.pattern!==s.pattern?(r.isPadded&&(u=f(t,r,o)),s.string=u+s.pattern+p(s.count),l.push(s),A=t+1,a=s):(a.count.length>1&&a.count.pop(),a.count.push(s.count[0]),a.string=a.pattern+p(a.count),A=t+1)}return l}function o(e,t,n,r,o){let s=[];for(let o of e){let{string:e}=o;r||a(t,"string",e)||s.push(n+e),r&&a(t,"string",e)&&s.push(n+e)}return s}function s(e,t){return e>t?1:t>e?-1:0}function a(e,t,n){return e.some(e=>e[t]===n)}function u(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function i(e,t){return e-e%Math.pow(10,t)}function p(e){let[t=0,n=""]=e;return n||t>1?`{${t+(n?","+n:"")}}`:""}function c(e,t,n){return`[${e}${t-e===1?"":"-"}${t}]`}function l(e){return/^-?(0+)\d/.test(e)}function f(e,t,n){if(!t.isPadded)return e;let r=Math.abs(t.maxLen-String(e).length),o=!1!==n.relaxZeros;switch(r){case 0:return"";case 1:return o?"0?":"0";case 2:return o?"0{0,2}":"00";default:return o?`0{0,${r}}`:`0{${r}}`}}return t.cache={},t.clearCache=()=>t.cache={},v=t} /*! * fill-range <https://github.com/jonschlinkert/fill-range> * * Copyright (c) 2014-present, Jon Schlinkert. * Licensed under the MIT License. */function F(){if(H)return x;H=1;const e=p,t=K(),n=e=>null!==e&&"object"==typeof e&&!Array.isArray(e),r=e=>"number"==typeof e||"string"==typeof e&&""!==e,o=e=>Number.isInteger(+e),s=e=>{let t=`${e}`,n=-1;if("-"===t[0]&&(t=t.slice(1)),"0"===t)return!1;for(;"0"===t[++n];);return n>0},a=(e,t,n)=>{if(t>0){let n="-"===e[0]?"-":"";n&&(e=e.slice(1)),e=n+e.padStart(n?t-1:t,"0")}return!1===n?String(e):e},u=(e,t)=>{let n="-"===e[0]?"-":"";for(n&&(e=e.slice(1),t--);e.length<t;)e="0"+e;return n?"-"+e:e},i=(e,n,r,o)=>{if(r)return t(e,n,{wrap:!1,...o});let s=String.fromCharCode(e);return e===n?s:`[${s}-${String.fromCharCode(n)}]`},c=(e,n,r)=>{if(Array.isArray(e)){let t=!0===r.wrap,n=r.capture?"":"?:";return t?`(${n}${e.join("|")})`:e.join("|")}return t(e,n,r)},l=(...t)=>new RangeError("Invalid range arguments: "+e.inspect(...t)),f=(e,t,n)=>{if(!0===n.strictRanges)throw l([e,t]);return[]},A=(e,t,n=1,r={})=>{let o=Number(e),p=Number(t);if(!Number.isInteger(o)||!Number.isInteger(p)){if(!0===r.strictRanges)throw l([e,t]);return[]}0===o&&(o=0),0===p&&(p=0);let f=o>p,A=String(e),g=String(t),R=String(n);n=Math.max(Math.abs(n),1);let h=s(A)||s(g)||s(R),d=h?Math.max(A.length,g.length,R.length):0,_=!1===h&&!1===((e,t,n)=>"string"==typeof e||"string"==typeof t||!0===n.stringify)(e,t,r),E=r.transform||(e=>t=>!0===e?Number(t):String(t))(_);if(r.toRegex&&1===n)return i(u(e,d),u(t,d),!0,r);let y={negatives:[],positives:[]},C=e=>y[e<0?"negatives":"positives"].push(Math.abs(e)),m=[],b=0;for(;f?o>=p:o<=p;)!0===r.toRegex&&n>1?C(o):m.push(a(E(o,b),d,_)),o=f?o-n:o+n,b++;return!0===r.toRegex?n>1?((e,t,n)=>{e.negatives.sort((e,t)=>e<t?-1:e>t?1:0),e.positives.sort((e,t)=>e<t?-1:e>t?1:0);let r,o=t.capture?"":"?:",s="",a="";return e.positives.length&&(s=e.positives.map(e=>u(String(e),n)).join("|")),e.negatives.length&&(a=`-(${o}${e.negatives.map(e=>u(String(e),n)).join("|")})`),r=s&&a?`${s}|${a}`:s||a,t.wrap?`(${o}${r})`:r})(y,r,d):c(m,null,{wrap:!1,...r}):m},g=(e,t,s,a={})=>{if(null==t&&r(e))return[e];if(!r(e)||!r(t))return f(e,t,a);if("function"==typeof s)return g(e,t,1,{transform:s});if(n(s))return g(e,t,0,s);let u={...a};return!0===u.capture&&(u.wrap=!0),s=s||u.step||1,o(s)?o(e)&&o(t)?A(e,t,s,u):((e,t,n=1,r={})=>{if(!o(e)&&e.length>1||!o(t)&&t.length>1)return f(e,t,r);let s=r.transform||(e=>String.fromCharCode(e)),a=`${e}`.charCodeAt(0),u=`${t}`.charCodeAt(0),p=a>u,l=Math.min(a,u),A=Math.max(a,u);if(r.toRegex&&1===n)return i(l,A,!1,r);let g=[],R=0;for(;p?a>=u:a<=u;)g.push(s(a,R)),a=p?a-n:a+n,R++;return!0===r.toRegex?c(g,null,{wrap:!1,options:r}):g})(e,t,Math.max(Math.abs(s),1),u):null==s||n(s)?g(e,t,1,s):((e,t)=>{if(!0===t.strictRanges)throw new TypeError(`Expected step "${e}" to be a number`);return[]})(s,u)};return x=g}function X(){if(k)return I;k=1;const e=G(),{MAX_LENGTH:t,CHAR_BACKSLASH:n,CHAR_BACKTICK:r,CHAR_COMMA:o,CHAR_DOT:s,CHAR_LEFT_PARENTHESES:a,CHAR_RIGHT_PARENTHESES:u,CHAR_LEFT_CURLY_BRACE:i,CHAR_RIGHT_CURLY_BRACE:p,CHAR_LEFT_SQUARE_BRACKET:c,CHAR_RIGHT_SQUARE_BRACKET:l,CHAR_DOUBLE_QUOTE:f,CHAR_SINGLE_QUOTE:A,CHAR_NO_BREAK_SPACE:g,CHAR_ZERO_WIDTH_NOBREAK_SPACE:R}=w?N:(w=1,N={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:"\n",CHAR_NO_BREAK_SPACE:" ",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:"\t",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\ufeff"});return I=(h,d={})=>{if("string"!=typeof h)throw new TypeError("Expected a string");const _=d||{},E="number"==typeof _.maxLength?Math.min(t,_.maxLength):t;if(h.length>E)throw new SyntaxError(`Input length (${h.length}), exceeds max characters (${E})`);const y={type:"root",input:h,nodes:[]},C=[y];let m=y,b=y,v=0;const S=h.length;let x,H=0,$=0;const T=()=>h[H++],L=e=>{if("text"===e.type&&"dot"===b.type&&(b.type="text"),!b||"text"!==b.type||"text"!==e.type)return m.nodes.push(e),e.parent=m,e.prev=b,b=e,e;b.value+=e.value};for(L({type:"bos"});H<S;)if(m=C[C.length-1],x=T(),x!==R&&x!==g)if(x!==n)if(x!==l){if(x===c){let e;for(v++;H<S&&(e=T());)if(x+=e,e!==c)if(e!==n){if(e===l&&(v--,0===v))break}else x+=T();else v++;L({type:"text",value:x});continue}if(x!==a)if(x!==u){if(x===f||x===A||x===r){const e=x;let t;for(!0!==d.keepQuotes&&(x="");H<S&&(t=T());)if(t!==n){if(t===e){!0===d.keepQuotes&&(x+=t);break}x+=t}else x+=t+T();L({type:"text",value:x});continue}if(x===i){$++;const e=b.value&&"$"===b.value.slice(-1)||!0===m.dollar;m=L({type:"brace",open:!0,close:!1,dollar:e,depth:$,commas:0,ranges:0,nodes:[]}),C.push(m),L({type:"open",value:x});continue}if(x===p){if("brace"!==m.type){L({type:"text",value:x});continue}const e="close";m=C.pop(),m.close=!0,L({type:e,value:x}),$--,m=C[C.length-1];continue}if(x===o&&$>0){if(m.ranges>0){m.ranges=0;const t=m.nodes.shift();m.nodes=[t,{type:"text",value:e(m)}]}L({type:"comma",value:x}),m.commas++}else{if(x===s&&$>0&&0===m.commas){const e=m.nodes;if(0===$||0===e.length){L({type:"text",value:x});continue}if("dot"===b.type){if(m.range=[],b.value+=x,b.type="range",3!==m.nodes.length&&5!==m.nodes.length){m.invalid=!0,m.ranges=0,b.type="text";continue}m.ranges++,m.args=[];continue}if("range"===b.type){e.pop();const t=e[e.length-1];t.value+=b.value+x,b=t,m.ranges--;continue}L({type:"dot",value:x});continue}L({type:"text",value:x})}}else{if("paren"!==m.type){L({type:"text",value:x});continue}m=C.pop(),L({type:"text",value:x}),m=C[C.length-1]}else m=L({type:"paren",nodes:[]}),C.push(m),L({type:"text",value:x})}else L({type:"text",value:"\\"+x});else L({type:"text",value:(d.keepEscaping?x:"")+T()});do{if(m=C.pop(),"root"!==m.type){m.nodes.forEach(e=>{e.nodes||("open"===e.type&&(e.isOpen=!0),"close"===e.type&&(e.isClose=!0),e.nodes||(e.type="text"),e.invalid=!0)});const e=C[C.length-1],t=e.nodes.indexOf(m);e.nodes.splice(t,1,...m.nodes)}}while(C.length>0);return L({type:"eos"}),y}}function j(){if(B)return M;B=1;const e=G(),t=function(){if(T)return $;T=1;const e=F(),t=D();return $=(n,r={})=>{const o=(n,s={})=>{const a=t.isInvalidBrace(s),u=!0===n.invalid&&!0===r.escapeInvalid,i=!0===a||!0===u,p=!0===r.escapeInvalid?"\\":"";let c="";if(!0===n.isOpen)return p+n.value;if(!0===n.isClose)return console.log("node.isClose",p,n.value),p+n.value;if("open"===n.type)return i?p+n.value:"(";if("close"===n.type)return i?p+n.value:")";if("comma"===n.type)return"comma"===n.prev.type?"":i?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){const o=t.reduce(n.nodes),s=e(...o,{...r,wrap:!1,toRegex:!0,strictZeros:!0});if(0!==s.length)return o.length>1&&s.length>1?`(${s})`:s}if(n.nodes)for(const e of n.nodes)c+=o(e,n);return c};return o(n)}}(),n=function(){if(O)return L;O=1;const e=F(),t=G(),n=D(),r=(e="",t="",o=!1)=>{const s=[];if(e=[].concat(e),!(t=[].concat(t)).length)return e;if(!e.length)return o?n.flatten(t).map(e=>`{${e}}`):t;for(const n of e)if(Array.isArray(n))for(const e of n)s.push(r(e,t,o));else for(let e of t)!0===o&&"string"==typeof e&&(e=`{${e}}`),s.push(Array.isArray(e)?r(n,e,o):n+e);return n.flatten(s)};return L=(o,s={})=>{const a=void 0===s.rangeLimit?1e3:s.rangeLimit,u=(o,i={})=>{o.queue=[];let p=i,c=i.queue;for(;"brace"!==p.type&&"root"!==p.type&&p.parent;)p=p.parent,c=p.queue;if(o.invalid||o.dollar)return void c.push(r(c.pop(),t(o,s)));if("brace"===o.type&&!0!==o.invalid&&2===o.nodes.length)return void c.push(r(c.pop(),["{}"]));if(o.nodes&&o.ranges>0){const u=n.reduce(o.nodes);if(n.exceedsLimit(...u,s.step,a))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let i=e(...u,s);return 0===i.length&&(i=t(o,s)),c.push(r(c.pop(),i)),void(o.nodes=[])}const l=n.encloseBrace(o);let f=o.queue,A=o;for(;"brace"!==A.type&&"root"!==A.type&&A.parent;)A=A.parent,f=A.queue;for(let e=0;e<o.nodes.length;e++){const t=o.nodes[e];"comma"!==t.type||"brace"!==o.type?"close"!==t.type?t.value&&"open"!==t.type?f.push(r(f.pop(),t.value)):t.nodes&&u(t,o):c.push(r(c.pop(),f,l)):(1===e&&f.push(""),f.push(""))}return f};return n.flatten(u(o))}}(),r=X(),o=(e,t={})=>{let n=[];if(Array.isArray(e))for(const r of e){const e=o.create(r,t);Array.isArray(e)?n.push(...e):n.push(e)}else n=[].concat(o.create(e,t));return t&&!0===t.expand&&!0===t.nodupes&&(n=[...new Set(n)]),n};return o.parse=(e,t={})=>r(e,t),o.stringify=(t,n={})=>e("string"==typeof t?o.parse(t,n):t,n),o.compile=(e,n={})=>("string"==typeof e&&(e=o.parse(e,n)),t(e,n)),o.expand=(e,t={})=>{"string"==typeof e&&(e=o.parse(e,t));let r=n(e,t);return!0===t.noempty&&(r=r.filter(Boolean)),!0===t.nodupes&&(r=[...new Set(r)]),r},o.create=(e,t={})=>""===e||e.length<3?[e]:!0!==t.expand?o.compile(e,t):o.expand(e,t),M=o}var Q,q,W,Z,J,Y,V,z,ee,te,ne,re,oe,se={};function ae(){if(q)return Q;q=1;const t=e,n="\\\\/",r=`[^${n}]`,o="\\.",s="\\/",a="[^/]",u=`(?:${s}|$)`,i=`(?:^|${s})`,p=`${o}{1,2}${u}`,c={DOT_LITERAL:o,PLUS_LITERAL:"\\+",QMARK_LITERAL:"\\?",SLASH_LITERAL:s,ONE_CHAR:"(?=.)",QMARK:a,END_ANCHOR:u,DOTS_SLASH:p,NO_DOT:`(?!${o})`,NO_DOTS:`(?!${i}${p})`,NO_DOT_SLASH:`(?!${o}{0,1}${u})`,NO_DOTS_SLASH:`(?!${p})`,QMARK_NO_DOT:`[^.${s}]`,STAR:`${a}*?`,START_ANCHOR:i},l={...c,SLASH_LITERAL:`[${n}]`,QMARK:r,STAR:`${r}*?`,DOTS_SLASH:`${o}{1,2}(?:[${n}]|$)`,NO_DOT:`(?!${o})`,NO_DOTS:`(?!(?:^|[${n}])${o}{1,2}(?:[${n}]|$))`,NO_DOT_SLASH:`(?!${o}{0,1}(?:[${n}]|$))`,NO_DOTS_SLASH:`(?!${o}{1,2}(?:[${n}]|$))`,QMARK_NO_DOT:`[^.${n}]`,START_ANCHOR:`(?:^|[${n}])`,END_ANCHOR:`(?:[${n}]|$)`};return Q={MAX_LENGTH:65536,POSIX_REGEX_SOURCE:{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"},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:{"***":"*","**/**":"**","**/**/**":"**"},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,SEP:t.sep,extglobChars:e=>({"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}),globChars:e=>!0===e?l:c}}function ue(){return W||(W=1,function(t){const n=e,r="win32"===process.platform,{REGEX_BACKSLASH:o,REGEX_REMOVE_BACKSLASH:s,REGEX_SPECIAL_CHARS:a,REGEX_SPECIAL_CHARS_GLOBAL:u}=ae();t.isObject=e=>null!==e&&"object"==typeof e&&!Array.isArray(e),t.hasRegexChars=e=>a.test(e),t.isRegexChar=e=>1===e.length&&t.hasRegexChars(e),t.escapeRegex=e=>e.replace(u,"\\$1"),t.toPosixSlashes=e=>e.replace(o,"/"),t.removeBackslashes=e=>e.replace(s,e=>"\\"===e?"":e),t.supportsLookbehinds=()=>{const e=process.version.slice(1).split(".").map(Number);return 3===e.length&&e[0]>=9||8===e[0]&&e[1]>=10},t.isWindows=e=>e&&"boolean"==typeof e.windows?e.windows:!0===r||"\\"===n.sep,t.escapeLast=(e,n,r)=>{const o=e.lastIndexOf(n,r);return-1===o?e:"\\"===e[o-1]?t.escapeLast(e,n,o-1):`${e.slice(0,o)}\\${e.slice(o)}`},t.removePrefix=(e,t={})=>{let n=e;return n.startsWith("./")&&(n=n.slice(2),t.prefix="./"),n},t.wrapOutput=(e,t={},n={})=>{let r=`${n.contains?"":"^"}(?:${e})${n.contains?"":"$"}`;return!0===t.negated&&(r=`(?:^(?!${r}).*$)`),r}}(se)),se}function ie(){if(ee)return z;ee=1;const t=e,n=function(){if(J)return Z;J=1;const e=ue(),{CHAR_ASTERISK:t,CHAR_AT:n,CHAR_BACKWARD_SLASH:r,CHAR_COMMA:o,CHAR_DOT:s,CHAR_EXCLAMATION_MARK:a,CHAR_FORWARD_SLASH:u,CHAR_LEFT_CURLY_BRACE:i,CHAR_LEFT_PARENTHESES:p,CHAR_LEFT_SQUARE_BRACKET:c,CHAR_PLUS:l,CHAR_QUESTION_MARK:f,CHAR_RIGHT_CURLY_BRACE:A,CHAR_RIGHT_PARENTHESES:g,CHAR_RIGHT_SQUARE_BRACKET:R}=ae(),h=e=>e===u||e===r,d=e=>{!0!==e.isPrefix&&(e.depth=e.isGlobstar?1/0:1)};return Z=(_,E)=>{const y=E||{},C=_.length-1,m=!0===y.parts||!0===y.scanToEnd,b=[],v=[],S=[];let x,H,$=_,T=-1,L=0,O=0,N=!1,w=!1,I=!1,k=!1,M=!1,B=!1,P=!1,D=!1,G=!1,U=!1,K=0,F={value:"",depth:0,isGlob:!1};const X=()=>T>=C,j=()=>$.charCodeAt(T+1),Q=()=>(x=H,$.charCodeAt(++T));for(;T<C;){let e;if(H=Q(),H!==r){if(!0===B||H===i){for(K++;!0!==X()&&(H=Q());)if(H!==r)if(H!==i){if(!0!==B&&H===s&&(H=Q())===s){if(N=F.isBrace=!0,I=F.isGlob=!0,U=!0,!0===m)continue;break}if(!0!==B&&H===o){if(N=F.isBrace=!0,I=F.isGlob=!0,U=!0,!0===m)continue;break}if(H===A&&(K--,0===K)){B=!1,N=F.isBrace=!0,U=!0;break}}else K++;else P=F.backslashes=!0,Q();if(!0===m)continue;break}if(H!==u){if(!0!==y.noext&&!0==(H===l||H===n||H===t||H===f||H===a)&&j()===p){if(I=F.isGlob=!0,k=F.isExtglob=!0,U=!0,H===a&&T===L&&(G=!0),!0===m){for(;!0!==X()&&(H=Q());)if(H!==r){if(H===g){I=F.isGlob=!0,U=!0;break}}else P=F.backslashes=!0,H=Q();continue}break}if(H===t){if(x===t&&(M=F.isGlobstar=!0),I=F.isGlob=!0,U=!0,!0===m)continue;break}if(H===f){if(I=F.isGlob=!0,U=!0,!0===m)continue;break}if(H===c){for(;!0!==X()&&(e=Q());)if(e!==r){if(e===R){w=F.isBracket=!0,I=F.isGlob=!0,U=!0;break}}else P=F.backslashes=!0,Q();if(!0===m)continue;break}if(!0===y.nonegate||H!==a||T!==L){if(!0!==y.noparen&&H===p){if(I=F.isGlob=!0,!0===m){for(;!0!==X()&&(H=Q());)if(H!==p){if(H===g){U=!0;break}}else P=F.backslashes=!0,H=Q();continue}break}if(!0===I){if(U=!0,!0===m)continue;break}}else D=F.negated=!0,L++}else{if(b.push(T),v.push(F),F={value:"",depth:0,isGlob:!1},!0===U)continue;if(x===s&&T===L+1){L+=2;continue}O=T+1}}else P=F.backslashes=!0,H=Q(),H===i&&(B=!0)}!0===y.noext&&(k=!1,I=!1);let q=$,W="",Z="";L>0&&(W=$.slice(0,L),$=$.slice(L),O-=L),q&&!0===I&&O>0?(q=$.slice(0,O),Z=$.slice(O)):!0===I?(q="",Z=$):q=$,q&&""!==q&&"/"!==q&&q!==$&&h(q.charCodeAt(q.length-1))&&(q=q.slice(0,-1)),!0===y.unescape&&(Z&&(Z=e.removeBackslashes(Z)),q&&!0===P&&(q=e.removeBackslashes(q)));const J={prefix:W,input:_,start:L,base:q,glob:Z,isBrace:N,isBracket:w,isGlob:I,isExtglob:k,isGlobstar:M,negated:D,negatedExtglob:G};if(!0===y.tokens&&(J.maxDepth=0,h(H)||v.push(F),J.tokens=v),!0===y.parts||!0===y.tokens){let e;for(let t=0;t<b.length;t++){const n=e?e+1:L,r=b[t],o=_.slice(n,r);y.tokens&&(0===t&&0!==L?(v[t].isPrefix=!0,v[t].value=W):v[t].value=o,d(v[t]),J.maxDepth+=v[t].depth),0===t&&""===o||S.push(o),e=r}if(e&&e+1<_.length){const t=_.slice(e+1);S.push(t),y.tokens&&(v[v.length-1].value=t,d(v[v.length-1]),J.maxDepth+=v[v.length-1].depth)}J.slashes=b,J.parts=S}return J}}(),r=function(){if(V)return Y;V=1;const e=ae(),t=ue(),{MAX_LENGTH:n,POSIX_REGEX_SOURCE:r,REGEX_NON_SPECIAL_CHARS:o,REGEX_SPECIAL_CHARS_BACKREF:s,REPLACEMENTS:a}=e,u=(e,n)=>{if("function"==typeof n.expandRange)return n.expandRange(...e,n);e.sort();const r=`[${e.join("-")}]`;try{new RegExp(r)}catch(n){return e.map(e=>t.escapeRegex(e)).join("..")}return r},i=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,p=(c,l)=>{if("string"!=typeof c)throw new TypeError("Expected a string");c=a[c]||c;const f={...l},A="number"==typeof f.maxLength?Math.min(n,f.maxLength):n;let g=c.length;if(g>A)throw new SyntaxError(`Input length: ${g}, exceeds maximum allowed length: ${A}`);const R={type:"bos",value:"",output:f.prepend||""},h=[R],d=f.capture?"":"?:",_=t.isWindows(l),E=e.globChars(_),y=e.extglobChars(E),{DOT_LITERAL:C,PLUS_LITERAL:m,SLASH_LITERAL:b,ONE_CHAR:v,DOTS_SLASH:S,NO_DOT:x,NO_DOT_SLASH:H,NO_DOTS_SLASH:$,QMARK:T,QMARK_NO_DOT:L,STAR:O,START_ANCHOR:N}=E,w=e=>`(${d}(?:(?!${N}${e.dot?S:C}).)*?)`,I=f.dot?"":x,k=f.dot?T:L;let M=!0===f.bash?w(f):O;f.capture&&(M=`(${M})`),"boolean"==typeof f.noext&&(f.noextglob=f.noext);const B={input:c,index:-1,start:0,dot:!0===f.dot,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:h};c=t.removePrefix(c,B),g=c.length;const P=[],D=[],G=[];let U,K=R;const F=()=>B.index===g-1,X=B.peek=(e=1)=>c[B.index+e],j=B.advance=()=>c[++B.index]||"",Q=()=>c.slice(B.index+1),q=(e="",t=0)=>{B.consumed+=e,B.index+=t},W=e=>{B.output+=null!=e.output?e.output:e.value,q(e.value)},Z=()=>{let e=1;for(;"!"===X()&&("("!==X(2)||"?"===X(3));)j(),B.start++,e++;return e%2!=0&&(B.negated=!0,B.start++,!0)},J=e=>{B[e]++,G.push(e)},Y=e=>{B[e]--,G.pop()},V=e=>{if("globstar"===K.type){const t=B.braces>0&&("comma"===e.type||"brace"===e.type),n=!0===e.extglob||P.length&&("pipe"===e.type||"paren"===e.type);"slash"===e.type||"paren"===e.type||t||n||(B.output=B.output.slice(0,-K.output.length),K.type="star",K.value="*",K.output=M,B.output+=K.output)}if(P.length&&"paren"!==e.type&&(P[P.length-1].inner+=e.value),(e.value||e.output)&&W(e),K&&"text"===K.type&&"text"===e.type)return K.value+=e.value,void(K.output=(K.output||"")+e.value);e.prev=K,h.push(e),K=e},z=(e,t)=>{const n={...y[t],conditions:1,inner:""};n.prev=K,n.parens=B.parens,n.output=B.output;const r=(f.capture?"(":"")+n.open;J("parens"),V({type:e,value:t,output:B.output?"":v}),V({type:"paren",extglob:!0,value:j(),output:r}),P.push(n)},ee=e=>{let t,n=e.close+(f.capture?")":"");if("negate"===e.type){let r=M;if(e.inner&&e.inner.length>1&&e.inner.includes("/")&&(r=w(f)),(r!==M||F()||/^\)+$/.test(Q()))&&(n=e.close=`)$))${r}`),e.inner.includes("*")&&(t=Q())&&/^\.[^\\/.]+$/.test(t)){const o=p(t,{...l,fastpaths:!1}).output;n=e.close=`)${o})${r})`}"bos"===e.prev.type&&(B.negatedExtglob=!0)}V({type:"paren",extglob:!0,value:U,output:n}),Y("parens")};if(!1!==f.fastpaths&&!/(^[*!]|[/()[\]{}"])/.test(c)){let e=!1,n=c.replace(s,(t,n,r,o,s,a)=>"\\"===o?(e=!0,t):"?"===o?n?n+o+(s?T.repeat(s.length):""):0===a?k+(s?T.repeat(s.length):""):T.repeat(r.length):"."===o?C.repeat(r.length):"*"===o?n?n+o+(s?M:""):M:n?t:`\\${t}`);return!0===e&&(n=!0===f.unescape?n.replace(/\\/g,""):n.replace(/\\+/g,e=>e.length%2==0?"\\\\":e?"\\":"")),n===c&&!0===f.contains?(B.output=c,B):(B.output=t.wrapOutput(n,B,l),B)}for(;!F();){if(U=j(),"\0"===U)continue;if("\\"===U){const e=X();if("/"===e&&!0!==f.bash)continue;if("."===e||";"===e)continue;if(!e){U+="\\",V({type:"text",value:U});continue}const t=/^\\+/.exec(Q());let n=0;if(t&&t[0].length>2&&(n=t[0].length,B.index+=n,n%2!=0&&(U+="\\")),!0===f.unescape?U=j():U+=j(),0===B.brackets){V({type:"text",value:U});continue}}if(B.brackets>0&&("]"!==U||"["===K.value||"[^"===K.value)){if(!1!==f.posix&&":"===U){const e=K.value.slice(1);if(e.includes("[")&&(K.posix=!0,e.includes(":"))){const e=K.value.lastIndexOf("["),t=K.value.slice(0,e),n=K.value.slice(e+2),o=r[n];if(o){K.value=t+o,B.backtrack=!0,j(),R.output||1!==h.indexOf(K)||(R.output=v);continue}}}("["===U&&":"!==X()||"-"===U&&"]"===X())&&(U=`\\${U}`),"]"!==U||"["!==K.value&&"[^"!==K.value||(U=`\\${U}`),!0===f.posix&&"!"===U&&"["===K.value&&(U="^"),K.value+=U,W({value:U});continue}if(1===B.quotes&&'"'!==U){U=t.escapeRegex(U),K.value+=U,W({value:U});continue}if('"'===U){B.quotes=1===B.quotes?0:1,!0===f.keepQuotes&&V({type:"text",value:U});continue}if("("===U){J("parens"),V({type:"paren",value:U});continue}if(")"===U){if(0===B.parens&&!0===f.strictBrackets)throw new SyntaxError(i("opening","("));const e=P[P.length-1];if(e&&B.parens===e.parens+1){ee(P.pop());continue}V({type:"paren",value:U,output:B.parens?")":"\\)"}),Y("parens");continue}if("["===U){if(!0!==f.nobracket&&Q().includes("]"))J("brackets");else{if(!0!==f.nobracket&&!0===f.strictBrackets)throw new SyntaxError(i("closing","]"));U=`\\${U}`}V({type:"bracket",value:U});continue}if("]"===U){if(!0===f.nobracket||K&&"bracket"===K.type&&1===K.value.length){V({type:"text",value:U,output:`\\${U}`});continue}if(0===B.brackets){if(!0===f.strictBrackets)throw new SyntaxError(i("opening","["));V({type:"text",value:U,output:`\\${U}`});continue}Y("brackets");const e=K.value.slice(1);if(!0===K.posix||"^"!==e[0]||e.includes("/")||(U=`/${U}`),K.value+=U,W({value:U}),!1===f.literalBrackets||t.hasRegexChars(e))continue;const n=t.escapeRegex(K.value);if(B.output=B.output.slice(0,-K.value.length),!0===f.literalBrackets){B.output+=n,K.value=n;continue}K.value=`(${d}${n}|${K.value})`,B.output+=K.value;continue}if("{"===U&&!0!==f.nobrace){J("braces");const e={type:"brace",value:U,output:"(",outputIndex:B.output.length,tokensIndex:B.tokens.length};D.push(e),V(e);continue}if("}"===U){const e=D[D.length-1];if(!0===f.nobrace||!e){V({type:"text",value:U,output:U});continue}let t=")";if(!0===e.dots){const e=h.slice(),n=[];for(let t=e.length-1;t>=0&&(h.pop(),"brace"!==e[t].type);t--)"dots"!==e[t].type&&n.unshift(e[t].value);t=u(n,f),B.backtrack=!0}if(!0!==e.comma&&!0!==e.dots){const n=B.output.slice(0,e.outputIndex),r=B.tokens.slice(e.tokensIndex);e.value=e.output="\\{",U=t="\\}",B.output=n;for(const e of r)B.output+=e.output||e.value}V({type:"brace",value:U,output:t}),Y("braces"),D.pop();continue}if("|"===U){P.length>0&&P[P.length-1].conditions++,V({type:"text",value:U});continue}if(","===U){let e=U;const t=D[D.length-1];t&&"braces"===G[G.length-1]&&(t.comma=!0,e="|"),V({type:"comma",value:U,output:e});continue}if("/"===U){if("dot"===K.type&&B.index===B.start+1){B.start=B.index+1,B.consumed="",B.output="",h.pop(),K=R;continue}V({type:"slash",value:U,output:b});continue}if("."===U){if(B.braces>0&&"dot"===K.type){"."===K.value&&(K.output=C);const e=D[D.length-1];K.type="dots",K.output+=U,K.value+=U,e.dots=!0;continue}if(B.braces+B.parens===0&&"bos"!==K.type&&"slash"!==K.type){V({type:"text",value:U,output:C});continue}V({type:"dot",value:U,output:C});continue}if("?"===U){if((!K||"("!==K.value)&&!0!==f.noextglob&&"("===X()&&"?"!==X(2)){z("qmark",U);continue}if(K&&"paren"===K.type){const e=X();let n=U;if("<"===e&&!t.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");("("===K.value&&!/[!=<:]/.test(e)||"<"===e&&!/<([!=]|\w+>)/.test(Q()))&&(n=`\\${U}`),V({type:"text",value:U,output:n});continue}if(!0!==f.dot&&("slash"===K.type||"bos"===K.type)){V({type:"qmark",value:U,output:L});continue}V({type:"qmark",value:U,output:T});continue}if("!"===U){if(!0!==f.noextglob&&"("===X()&&("?"!==X(2)||!/[!=<:]/.test(X(3)))){z("negate",U);continue}if(!0!==f.nonegate&&0===B.index){Z();continue}}if("+"===U){if(!0!==f.noextglob&&"("===X()&&"?"!==X(2)){z("plus",U);continue}if(K&&"("===K.value||!1===f.regex){V({type:"plus",value:U,output:m});continue}if(K&&("bracket"===K.type||"paren"===K.type||"brace"===K.type)||B.parens>0){V({type:"plus",value:U});continue}V({type:"plus",value:m});continue}if("@"===U){if(!0!==f.noextglob&&"("===X()&&"?"!==X(2)){V({type:"at",extglob:!0,value:U,output:""});continue}V({type:"text",value:U});continue}if("*"!==U){"$"!==U&&"^"!==U||(U=`\\${U}`);const e=o.exec(Q());e&&(U+=e[0],B.index+=e[0].length),V({type:"text",value:U});continue}if(K&&("globstar"===K.type||!0===K.star)){K.type="star",K.star=!0,K.value+=U,K.output=M,B.backtrack=!0,B.globstar=!0,q(U);continue}let e=Q();if(!0!==f.noextglob&&/^\([^?]/.test(e)){z("star",U);continue}if("star"===K.type){if(!0===f.noglobstar){q(U);continue}const t=K.prev,n=t.prev,r="slash"===t.type||"bos"===t.type,o=n&&("star"===n.type||"globstar"===n.type);if(!0===f.bash&&(!r||e[0]&&"/"!==e[0])){V({type:"star",value:U,output:""});continue}const s=B.braces>0&&("comma"===t.type||"brace"===t.type),a=P.length&&("pipe"===t.type||"paren"===t.type);if(!r&&"paren"!==t.type&&!s&&!a){V({type:"star",value:U,output:""});continue}for(;"/**"===e.slice(0,3);){const t=c[B.index+4];if(t&&"/"!==t)break;e=e.slice(3),q("/**",3)}if("bos"===t.type&&F()){K.type="globstar",K.value+=U,K.output=w(f),B.output=K.output,B.globstar=!0,q(U);continue}if("slash"===t.type&&"bos"!==t.prev.type&&!o&&F()){B.output=B.output.slice(0,-(t.output+K.output).length),t.output=`(?:${t.output}`,K.type="globstar",K.output=w(f)+(f.strictSlashes?")":"|$)"),K.value+=U,B.globstar=!0,B.output+=t.output+K.output,q(U);continue}if("slash"===t.type&&"bos"!==t.prev.type&&"/"===e[0]){const n=void 0!==e[1]?"|$":"";B.output=B.output.slice(0,-(t.output+K.output).length),t.output=`(?:${t.output}`,K.type="globstar",K.output=`${w(f)}${b}|${b}${n})`,K.value+=U,B.output+=t.output+K.output,B.globstar=!0,q(U+j()),V({type:"slash",value:"/",output:""});continue}if("bos"===t.type&&"/"===e[0]){K.type="globstar",K.value+=U,K.output=`(?:^|${b}|${w(f)}${b})`,B.output=K.output,B.globstar=!0,q(U+j()),V({type:"slash",value:"/",output:""});continue}B.output=B.output.slice(0,-K.output.length),K.type="globstar",K.output=w(f),K.value+=U,B.output+=K.output,B.globstar=!0,q(U);continue}const n={type:"star",value:U,output:M};!0!==f.bash?!K||"bracket"!==K.type&&"paren"!==K.type||!0!==f.regex?(B.index!==B.start&&"slash"!==K.type&&"dot"!==K.type||("dot"===K.type?(B.output+=H,K.output+=H):!0===f.dot?(B.output+=$,K.output+=$):(B.output+=I,K.output+=I),"*"!==X()&&(B.output+=v,K.output+=v)),V(n)):(n.output=U,V(n)):(n.output=".*?","bos"!==K.type&&"slash"!==K.type||(n.output=I+n.output),V(n))}for(;B.brackets>0;){if(!0===f.strictBrackets)throw new SyntaxError(i("closing","]"));B.output=t.escapeLast(B.output,"["),Y("brackets")}for(;B.parens>0;){if(!0===f.strictBrackets)throw new SyntaxError(i("closing",")"));B.output=t.escapeLast(B.output,"("),Y("parens")}for(;B.braces>0;){if(!0===f.strictBrackets)throw new SyntaxError(i("closing","}"));B.output=t.escapeLast(B.output,"{"),Y("braces")}if(!0===f.strictSlashes||"star"!==K.type&&"bracket"!==K.type||V({type:"maybe_slash",value:"",output:`${b}?`}),!0===B.backtrack){B.output="";for(const e of B.tokens)B.output+=null!=e.output?e.output:e.value,e.suffix&&(B.output+=e.suffix)}return B};return p.fastpaths=(r,o)=>{const s={...o},u="number"==typeof s.maxLength?Math.min(n,s.maxLength):n,i=r.length;if(i>u)throw new SyntaxError(`Input length: ${i}, exceeds maximum allowed length: ${u}`);r=a[r]||r;const p=t.isWindows(o),{DOT_LITERAL:c,SLASH_LITERAL:l,ONE_CHAR:f,DOTS_SLASH:A,NO_DOT:g,NO_DOTS:R,NO_DOTS_SLASH:h,STAR:d,START_ANCHOR:_}=e.globChars(p),E=s.dot?R:g,y=s.dot?h:g,C=s.capture?"":"?:";let m=!0===s.bash?".*?":d;s.capture&&(m=`(${m})`);const b=e=>!0===e.noglobstar?m:`(${C}(?:(?!${_}${e.dot?A:c}).)*?)`,v=e=>{switch(e){case"*":return`${E}${f}${m}`;case".*":return`${c}${f}${m}`;case"*.*":return`${E}${m}${c}${f}${m}`;case"*/*":return`${E}${m}${l}${f}${y}${m}`;case"**":return E+b(s);case"**/*":return`(?:${E}${b(s)}${l})?${y}${f}${m}`;case"**/*.*":return`(?:${E}${b(s)}${l})?${y}${m}${c}${f}${m}`;case"**/.*":return`(?:${E}${b(s)}${l})?${c}${f}${m}`;default:{const t=/^(.*?)\.(\w+)$/.exec(e);if(!t)return;const n=v(t[1]);if(!n)return;return n+c+t[2]}}},S=t.removePrefix(r,{negated:!1,prefix:""});let x=v(S);return x&&!0!==s.strictSlashes&&(x+=`${l}?`),x},Y=p}(),o=ue(),s=ae(),a=(e,t,n=!1)=>{if(Array.isArray(e)){const r=e.map(e=>a(e,t,n)),o=e=>{for(const t of r){const n=t(e);if(n)return n}return!1};return o}const r=(s=e)&&"object"==typeof s&&!Array.isArray(s)&&e.tokens&&e.input;var s;if(""===e||"string"!=typeof e&&!r)throw new TypeError("Expected pattern to be a non-empty string");const u=t||{},i=o.isWindows(t),p=r?a.compileRe(e,t):a.makeRe(e,t,!1,!0),c=p.state;delete p.state;let l=()=>!1;if(u.ignore){const e={...t,ignore:null,onMatch:null,onResult:null};l=a(u.ignore,e,n)}const f=(n,r=!1)=>{const{isMatch:o,match:s,output:f}=a.test(n,p,t,{glob:e,posix:i}),A={glob:e,state:c,regex:p,posix:i,input:n,output:f,match:s,isMatch:o};return"function"==typeof u.onResult&&u.onResult(A),!1===o?(A.isMatch=!1,!!r&&A):l(n)?("function"==typeof u.onIgnore&&u.onIgnore(A),A.isMatch=!1,!!r&&A):("function"==typeof u.onMatch&&u.onMatch(A),!r||A)};return n&&(f.state=c),f};return a.test=(e,t,n,{glob:r,posix:s}={})=>{if("string"!=typeof e)throw new TypeError("Expected input to be a string");if(""===e)return{isMatch:!1,output:""};const u=n||{},i=u.format||(s?o.toPosixSlashes:null);let p=e===r,c=p&&i?i(e):e;return!1===p&&(c=i?i(e):e,p=c===r),!1!==p&&!0!==u.capture||(p=!0===u.matchBase||!0===u.basename?a.matchBase(e,t,n,s):t.exec(c)),{isMatch:Boolean(p),match:p,output:c}},a.matchBase=(e,n,r,s=o.isWindows(r))=>(n instanceof RegExp?n:a.makeRe(n,r)).test(t.basename(e)),a.isMatch=(e,t,n)=>a(t,n)(e),a.parse=(e,t)=>Array.isArray(e)?e.map(e=>a.parse(e,t)):r(e,{...t,fastpaths:!1}),a.scan=(e,t)=>n(e,t),a.compileRe=(e,t,n=!1,r=!1)=>{if(!0===n)return e.output;const o=t||{},s=o.contains?"":"^",u=o.contains?"":"$";let i=`${s}(?:${e.output})${u}`;e&&!0===e.negated&&(i=`^(?!${i}).*$`);const p=a.toRegex(i,t);return!0===r&&(p.state=e),p},a.makeRe=(e,t={},n=!1,o=!1)=>{if(!e||"string"!=typeof e)throw new TypeError("Expected a non-empty string");let s={negated:!1,fastpaths:!0};return!1===t.fastpaths||"."!==e[0]&&"*"!==e[0]||(s.output=r.fastpaths(e,t)),s.output||(s=r(e,t)),a.compileRe(s,t,n,o)},a.toRegex=(e,t)=>{try{const n=t||{};return new RegExp(e,n.flags||(n.nocase?"i":""))}catch(e){if(t&&!0===t.debug)throw e;return/$^/}},a.constants=s,z=a}function pe(){return ne?te:(ne=1,te=ie())}var ce=function(){if(oe)return re;oe=1;const e=p,t=j(),n=pe(),r=ue(),o=e=>""===e||"./"===e,s=e=>{const t=e.indexOf("{");return t>-1&&e.indexOf("}",t)>-1},a=(e,t,r)=>{t=[].concat(t),e=[].concat(e);let o=new Set,s=new Set,a=new Set,u=0,i=e=>{a.add(e.output),r&&r.onResult&&r.onResult(e)};for(let a=0;a<t.length;a++){let p=n(String(t[a]),{...r,onResult:i},!0),c=p.state.negated||p.state.negatedExtglob;c&&u++;for(let t of e){let e=p(t,!0);(c?!e.isMatch:e.isMatch)&&(c?o.add(e.output):(o.delete(e.output),s.add(e.output)))}}let p=(u===t.length?[...a]:[...s]).filter(e=>!o.has(e));if(r&&0===p.length){if(!0===r.failglob)throw new Error(`No matches found for "${t.join(", ")}"`);if(!0===r.nonull||!0===r.nullglob)return r.unescape?t.map(e=>e.replace(/\\/g,"")):t}return p};return a.match=a,a.matcher=(e,t)=>n(e,t),a.any=a.isMatch=(e,t,r)=>n(t,r)(e),a.not=(e,t,n={})=>{t=[].concat(t).map(String);let r=new Set,o=[],s=new Set(a(e,t,{...n,onResult:e=>{n.onResult&&n.onResult(e),o.push(e.output)}}));for(let e of o)s.has(e)||r.add(e);return[...r]},a.contains=(t,n,r)=>{if("string"!=typeof t)throw new TypeError(`Expected a string: "${e.inspect(t)}"`);if(Array.isArray(n))return n.some(e=>a.contains(t,e,r));if("string"==typeof n){if(o(t)||o(n))return!1;if(t.includes(n)||t.startsWith("./")&&t.slice(2).includes(n))return!0}return a.isMatch(t,n,{...r,contains:!0})},a.matchKeys=(e,t,n)=>{if(!r.isObject(e))throw new TypeError("Expected the first argument to be an object");let o=a(Object.keys(e),t,n),s={};for(let t of o)s[t]=e[t];return s},a.some=(e,t,r)=>{let o=[].concat(e);for(let e of[].concat(t)){let t=n(String(e),r);if(o.some(e=>t(e)))return!0}return!1},a.every=(e,t,r)=>{let o=[].concat(e);for(let e of[].concat(t)){let t=n(String(e),r);if(!o.every(e=>t(e)))return!1}return!0},a.all=(t,r,o)=>{if("string"!=typeof t)throw new TypeError(`Expected a string: "${e.inspect(t)}"`);return[].concat(r).every(e=>n(e,o)(t))},a.capture=(e,t,o)=>{let s=r.isWindows(o),a=n.makeRe(String(e),{...o,capture:!0}).exec(s?r.toPosixSlashes(t):t);if(a)return a.slice(1).map(e=>void 0===e?"":e)},a.makeRe=(...e)=>n.makeRe(...e),a.scan=(...e)=>n.scan(...e),a.parse=(e,r)=>{let o=[];for(let s of[].concat(e||[]))for(let e of t(String(s),r))o.push(n.parse(e,r));return o},a.braces=(e,n)=>{if("string"!=typeof e)throw new TypeError("Expected a string");return n&&!0===n.nobrace||!s(e)?[e]:t(e,n)},a.braceExpand=(e,t)=>{if("string"!=typeof e)throw new TypeError("Expected a string");return a.braces(e,{...t,expand:!0})},a.hasBraces=s,re=a}(),le=_(ce);function fe(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],s=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=s(n)):"call"!==o&&"optionalCall"!==o||(n=s((...e)=>n.call(t,...e)),t=void 0)}return n}const Ae={vue:["vue"],jsx:["jsx","tsx","js","ts"]},ge={vue:(t,n,r)=>{if(!("test"===process.env.NODE_ENV||"test"===process.env.BUILD_MODE||"true"===process.env.VITE_TEST_BUILD))return{code:t,map:null};const o=e.resolve(process.cwd(),".."),i=e.relative(o,n),{descriptor:p}=a.parse(t,{filename:n,sourceMap:!0}),{template:c}=p;if(!c)return{code:t,map:null};const l=new s(t),f=u.parse(c.content,{comments:!1,isNativeTag:e=>!0}),R=new Map,h=(e,t=[])=>{if(e.type===u.NodeTypes.ELEMENT){if("template"===e.tag)return;const t=(e=>A.includes(e.tag)||e.props.some(e=>g.includes(e.rawName)))(e);if(t){const t=e.props.filter(e=>r.includes(e.name));if(t.length!==r.length){const n=r.filter(e=>!t.some(t=>t.name===e));R.set(i,`${n.join(",")} is required for ${e.tag} in ${i}:${e.loc.start.line}:${e.loc.start.column}`)}}}e.children&&e.children.forEach(n=>{n.type===u.NodeTypes.ELEMENT&&h(n,[...t,e])})};return h(f),{code:l.toString(),map:l.generateMap({hires:!0}),errors:Array.from(R.values())}},jsx:(t,n,r)=>{if(!("test"===process.env.NODE_ENV||"test"===process.env.BUILD_MODE||"true"===process.env.VITE_TEST_BUILD))return{code:t,map:null};const o=l.parse(t,{sourceType:"module",plugins:["jsx","typescript","classProperties","decorators-legacy"]}),s=e.resolve(process.cwd(),".."),a=e.relative(s,n),u=new Map;h(o,{JSXOpeningElement(e){const t=R([e,"access",e=>e.node,"access",e=>e.loc,"optionalAccess",e=>e.start,"access",e=>e.line]),n=R([e,"access",e=>e.node,"access",e=>e.loc,"optionalAccess",e=>e.start,"access",e=>e.column]);if(!t||void 0===n)return;if(f.isJSXIdentifier(e.node.name)&&"Fragment"===e.node.name.name||f.isJSXMemberExpression(e.node.name)&&f.isJSXIdentifier(e.node.name.object)&&"React"===e.node.name.object.name&&f.isJSXIdentifier(e.node.name.property)&&"Fragment"===e.node.name.property.name)return;const o=(e=>{const t="JSXIdentifier"===e.node.name.type?e.node.name.name:"";return!!A.includes(t.toLowerCase())||e.node.attributes.some(e=>{if(f.isJSXAttribute(e)&&f.isJSXIdentifier(e.name)){const t=e.name.name;return t.startsWith("on")&&t.length>2&&t[2]===t[2].toUpperCase()}return!1})})(e);if(o){const o=e.node.attributes.filter(e=>f.isJSXAttribute(e)&&f.isJSXIdentifier(e.name)).map(e=>e.name.name);if(r.filter(e=>o.includes(e)).length!==r.length){const s=r.filter(e=>!o.includes(e)),i="JSXIdentifier"===e.node.name.type?e.node.name.name:"";u.set(a,`${s.join(",")} is required for ${i} in ${a}:${t}:${n}`)}}}});const i=d(o,{},t);return{code:i.code,map:i.map,errors:Array.from(u.values())}}},Re=["src/**/*.{vue,jsx,tsx,js,ts}"],he=new Map;const de=new Map;exports.vitePluginTestIdChecker=function(t={}){const{include:n=Re,exclude:r=[],attributes:o=["data-testid"]}=t,s=Array.isArray(n)?n:[n],a=Array.isArray(r)?r:[r];return{name:"@metagptx/vite-plugin-testid-checker",enforce:"pre",apply:"build",version:"0.0.1-alpha.2",async transform(t,n){const r=e.relative(process.cwd(),n);if(!function(e){const t=s.some(t=>le.isMatch(e,t)),n=a.length>0&&a.some(t=>le.isMatch(e,t));return t&&!n}(r))return;const u=function(e){return i.createHash("md5").update(e).digest("hex")}(t),p=`${n}:${u}`;if(he.has(p)){return he.get(p)}const c=Object.keys(ge).find(e=>Ae[e].some(e=>n.endsWith(`.${e}`)));if(!c)return;const l=fe([ge,"access",e=>e[c],"optionalCall",e=>e(t,n,o)]);return he.set(p,l),fe([l,"access",e=>e.errors,"optionalAccess",e=>e.length])&&de.set(r,l.errors),{code:l.code,map:l.map}},buildEnd(){const e=Array.from(de.values()).flat();if(e.length)throw new Error(e.join("\n"))}}}; //# sourceMappingURL=index.js.map