From efa8638c7b996aba3dbfe12a8aefb97f0e6ababd Mon Sep 17 00:00:00 2001 From: Nicola Molinari Date: Thu, 11 Nov 2021 14:21:55 +0100 Subject: [PATCH 1/4] fix: parsing of .npmrc file --- dist/index.js | 200 +++++++++++++++++++++++++++++++++++++------ package.json | 2 + src/index.ts | 31 +------ src/npmUtils.test.ts | 107 +++++++++++++++++++++++ src/npmUtils.ts | 50 +++++++++++ yarn.lock | 10 +++ 6 files changed, 344 insertions(+), 56 deletions(-) create mode 100644 src/npmUtils.test.ts create mode 100644 src/npmUtils.ts diff --git a/dist/index.js b/dist/index.js index 2dfc049b..3d2698a1 100644 --- a/dist/index.js +++ b/dist/index.js @@ -335,7 +335,7 @@ module.exports=["cent","copy","divide","gt","lt","not","para","times"]; },{}],"ifn1":[function(require,module,exports) { "use strict";var e=require("../util/enclose-uri"),t=require("../util/enclose-title");module.exports=c;var i=" ",l="[",r="]",s="(",n=")",u=/^[a-z][a-z+.-]+:\/?/i;function c(c){var o=this.encode(c.url||"",c),a=this.enterLink(),h=this.encode(this.escape(c.url||"",c)),d=this.all(c).join("");return a(),null==c.title&&u.test(o)&&h===d?e(this.encode(c.url),!0):(o=e(o),c.title&&(o+=i+t(this.encode(this.escape(c.title,c),c))),l+d+r+s+o+n)} },{"../util/enclose-uri":"z9fO","../util/enclose-title":"9n/H"}],"4eFL":[function(require,module,exports) { -"use strict";var t=require("./entity-prefix-length");module.exports=s;var r="&",e=/[-!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~_]/;function s(s,c){for(var h,i=s.length,o=c.length,a=[],n=0,f=0;f?@[\\\]^`{|}~_]/;function s(s,c){for(var h,i=s.length,o=c.length,a=[],n=0,f=0;f[...new Set([].concat(...e))]); },{}],"l7XK":[function(require,module,exports) { "use strict";const e=require("stream"),r=e.PassThrough,n=Array.prototype.slice;function t(){const e=[],t=n.call(arguments);let o=!1,a=t[t.length-1];a&&!Array.isArray(a)&&null==a.pipe?t.pop():a={};const l=!1!==a.end,p=!0===a.pipeError;null==a.objectMode&&(a.objectMode=!0),null==a.highWaterMark&&(a.highWaterMark=65536);const u=r(a);function s(){for(let r=0,n=arguments.length;r0||(o=!1,r())}function a(e){function r(){e.removeListener("merge2UnpipeEnd",r),e.removeListener("end",r),p&&e.removeListener("error",n),i()}function n(e){u.emit("error",e)}if(e._readableState.endEmitted)return i();e.on("merge2UnpipeEnd",r),e.on("end",r),p&&e.on("error",n),e.pipe(u,{end:!1}),e.resume()}for(let e=0;e{let t=[];if(Array.isArray(e))for(let i of e){let e=p.create(i,r);Array.isArray(e)?t.push(...e):t.push(e)}else t=[].concat(p.create(e,r));return r&&!0===r.expand&&!0===r.nodupes&&(t=[...new Set(t)]),t};p.parse=((e,r={})=>i(e,r)),p.stringify=((r,t={})=>e("string"==typeof r?p.parse(r,t):r,t)),p.compile=((e,t={})=>("string"==typeof e&&(e=p.parse(e,t)),r(e,t))),p.expand=((e,r={})=>{"string"==typeof e&&(e=p.parse(e,r));let i=t(e,r);return!0===r.noempty&&(i=i.filter(Boolean)),!0===r.nodupes&&(i=[...new Set(i)]),i}),p.create=((e,r={})=>""===e||e.length<3?[e]:!0!==r.expand?p.compile(e,r):p.expand(e,r)),module.exports=p; },{"./lib/stringify":"WLGn","./lib/compile":"cf7h","./lib/expand":"HtLI","./lib/parse":"1e5n"}],"wIyF":[function(require,module,exports) { -"use strict";function A(A,_){var R=Object.keys(A);if(Object.getOwnPropertySymbols){var E=Object.getOwnPropertySymbols(A);_&&(E=E.filter(function(_){return Object.getOwnPropertyDescriptor(A,_).enumerable})),R.push.apply(R,E)}return R}function _(_){for(var E=1;E?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};module.exports={MAX_LENGTH:65536,POSIX_REGEX_SOURCE:l,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:E.sep,extglobChars:A=>({"!":{type:"negate",open:"(?:(?!(?:",close:`))${A.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}),globChars:A=>!0===A?s:D}; +"use strict";function A(A,_){var R=Object.keys(A);if(Object.getOwnPropertySymbols){var E=Object.getOwnPropertySymbols(A);_&&(E=E.filter(function(_){return Object.getOwnPropertyDescriptor(A,_).enumerable})),R.push.apply(R,E)}return R}function _(_){for(var E=1;E?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};module.exports={MAX_LENGTH:65536,POSIX_REGEX_SOURCE:l,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:E.sep,extglobChars:A=>({"!":{type:"negate",open:"(?:(?!(?:",close:`))${A.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}),globChars:A=>!0===A?s:D}; },{}],"OYpc":[function(require,module,exports) { "use strict";const e=require("path"),s="win32"===process.platform,{REGEX_BACKSLASH:t,REGEX_REMOVE_BACKSLASH:r,REGEX_SPECIAL_CHARS:o,REGEX_SPECIAL_CHARS_GLOBAL:p}=require("./constants");exports.isObject=(e=>null!==e&&"object"==typeof e&&!Array.isArray(e)),exports.hasRegexChars=(e=>o.test(e)),exports.isRegexChar=(e=>1===e.length&&exports.hasRegexChars(e)),exports.escapeRegex=(e=>e.replace(p,"\\$1")),exports.toPosixSlashes=(e=>e.replace(t,"/")),exports.removeBackslashes=(e=>e.replace(r,e=>"\\"===e?"":e)),exports.supportsLookbehinds=(()=>{const e=process.version.slice(1).split(".").map(Number);return 3===e.length&&e[0]>=9||8===e[0]&&e[1]>=10}),exports.isWindows=(t=>t&&"boolean"==typeof t.windows?t.windows:!0===s||"\\"===e.sep),exports.escapeLast=((e,s,t)=>{const r=e.lastIndexOf(s,t);return-1===r?e:"\\"===e[r-1]?exports.escapeLast(e,s,r-1):`${e.slice(0,r)}\\${e.slice(r)}`}),exports.removePrefix=((e,s={})=>{let t=e;return t.startsWith("./")&&(t=t.slice(2),s.prefix="./"),t}),exports.wrapOutput=((e,s={},t={})=>{let r=`${t.contains?"":"^"}(?:${e})${t.contains?"":"$"}`;return!0===s.negated&&(r=`(?:^(?!${r}).*$)`),r}); },{"./constants":"wIyF"}],"Xsxu":[function(require,module,exports) { "use strict";const e=require("./utils"),{CHAR_ASTERISK:s,CHAR_AT:i,CHAR_BACKWARD_SLASH:t,CHAR_COMMA:a,CHAR_DOT:l,CHAR_EXCLAMATION_MARK:o,CHAR_FORWARD_SLASH:n,CHAR_LEFT_CURLY_BRACE:r,CHAR_LEFT_PARENTHESES:c,CHAR_LEFT_SQUARE_BRACKET:f,CHAR_PLUS:A,CHAR_QUESTION_MARK:b,CHAR_RIGHT_CURLY_BRACE:R,CHAR_RIGHT_PARENTHESES:h,CHAR_RIGHT_SQUARE_BRACKET:u}=require("./constants"),_=e=>e===n||e===t,C=e=>{!0!==e.isPrefix&&(e.depth=e.isGlobstar?1/0:1)},k=(k,H)=>{const p=H||{},E=k.length-1,G=!0===p.parts||!0===p.scanToEnd,T=[],S=[],g=[];let B,d,x=k,L=-1,v=0,m=0,D=!1,I=!1,K=!1,U=!1,M=!1,O=!1,P=!1,F=!1,N=!1,Q=0,q={value:"",depth:0,isGlob:!1};const W=()=>L>=E,Y=()=>x.charCodeAt(L+1),X=()=>(B=d,x.charCodeAt(++L));for(;L0&&(w=x.slice(0,v),x=x.slice(v),m-=v),j&&!0===K&&m>0?(j=x.slice(0,m),y=x.slice(m)):!0===K?(j="",y=x):j=x,j&&""!==j&&"/"!==j&&j!==x&&_(j.charCodeAt(j.length-1))&&(j=j.slice(0,-1)),!0===p.unescape&&(y&&(y=e.removeBackslashes(y)),j&&!0===P&&(j=e.removeBackslashes(j)));const z={prefix:w,input:k,start:v,base:j,glob:y,isBrace:D,isBracket:I,isGlob:K,isExtglob:U,isGlobstar:M,negated:F};if(!0===p.tokens&&(z.maxDepth=0,_(d)||S.push(q),z.tokens=S),!0===p.parts||!0===p.tokens){let e;for(let s=0;s{if("function"==typeof e.expandRange)return e.expandRange(...t,e);t.sort();const u=`[${t.join("-")}]`;try{new RegExp(u)}catch(o){return t.map(t=>n.escapeRegex(t)).join("..")}return u},l=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,f=(t,u)=>{if("string"!=typeof t)throw new TypeError("Expected a string");t=c[t]||t;const f=e({},u),y="number"==typeof f.maxLength?Math.min(p,f.maxLength):p;let b=t.length;if(b>y)throw new SyntaxError(`Input length: ${b}, exceeds maximum allowed length: ${y}`);const g={type:"bos",value:"",output:f.prepend||""},v=[g],h=f.capture?"":"?:",x=n.isWindows(u),$=o.globChars(x),d=o.extglobChars($),{DOT_LITERAL:k,PLUS_LITERAL:O,SLASH_LITERAL:S,ONE_CHAR:m,DOTS_SLASH:w,NO_DOT:E,NO_DOT_SLASH:_,NO_DOTS_SLASH:L,QMARK:R,QMARK_NO_DOT:A,STAR:T,START_ANCHOR:N}=$,P=t=>`(${h}(?:(?!${N}${t.dot?w:k}).)*?)`,C=f.dot?"":E,D=f.dot?R:A;let I=!0===f.bash?P(f):T;f.capture&&(I=`(${I})`),"boolean"==typeof f.noext&&(f.noextglob=f.noext);const H={input:t,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:v};t=n.removePrefix(t,H),b=t.length;const j=[],q=[],B=[];let M,X=g;const G=()=>H.index===b-1,K=H.peek=((e=1)=>t[H.index+e]),Q=H.advance=(()=>t[++H.index]),U=()=>t.slice(H.index+1),W=(t="",e=0)=>{H.consumed+=t,H.index+=e},F=t=>{H.output+=null!=t.output?t.output:t.value,W(t.value)},z=()=>{let t=1;for(;"!"===K()&&("("!==K(2)||"?"===K(3));)Q(),H.start++,t++;return t%2!=0&&(H.negated=!0,H.start++,!0)},J=t=>{H[t]++,B.push(t)},V=t=>{H[t]--,B.pop()},Y=t=>{if("globstar"===X.type){const e=H.braces>0&&("comma"===t.type||"brace"===t.type),u=!0===t.extglob||j.length&&("pipe"===t.type||"paren"===t.type);"slash"===t.type||"paren"===t.type||e||u||(H.output=H.output.slice(0,-X.output.length),X.type="star",X.value="*",X.output=I,H.output+=X.output)}if(j.length&&"paren"!==t.type&&!d[t.value]&&(j[j.length-1].inner+=t.value),(t.value||t.output)&&F(t),X&&"text"===X.type&&"text"===t.type)return X.value+=t.value,void(X.output=(X.output||"")+t.value);t.prev=X,v.push(t),X=t},Z=(t,u)=>{const o=e({},d[u],{conditions:1,inner:""});o.prev=X,o.parens=H.parens,o.output=H.output;const n=(f.capture?"(":"")+o.open;J("parens"),Y({type:t,value:u,output:H.output?"":m}),Y({type:"paren",extglob:!0,value:Q(),output:n}),j.push(o)},tt=t=>{let e=t.close+(f.capture?")":"");if("negate"===t.type){let u=I;t.inner&&t.inner.length>1&&t.inner.includes("/")&&(u=P(f)),(u!==I||G()||/^\)+$/.test(U()))&&(e=t.close=`)$))${u}`),"bos"===t.prev.type&&G()&&(H.negatedExtglob=!0)}Y({type:"paren",extglob:!0,value:M,output:e}),V("parens")};if(!1!==f.fastpaths&&!/(^[*!]|[/()[\]{}"])/.test(t)){let e=!1,o=t.replace(s,(t,u,o,n,p,a)=>"\\"===n?(e=!0,t):"?"===n?u?u+n+(p?R.repeat(p.length):""):0===a?D+(p?R.repeat(p.length):""):R.repeat(o.length):"."===n?k.repeat(o.length):"*"===n?u?u+n+(p?I:""):I:u?t:`\\${t}`);return!0===e&&(o=!0===f.unescape?o.replace(/\\/g,""):o.replace(/\\+/g,t=>t.length%2==0?"\\\\":t?"\\":"")),o===t&&!0===f.contains?(H.output=t,H):(H.output=n.wrapOutput(o,H,u),H)}for(;!G();){if("\0"===(M=Q()))continue;if("\\"===M){const t=K();if("/"===t&&!0!==f.bash)continue;if("."===t||";"===t)continue;if(!t){Y({type:"text",value:M+="\\"});continue}const e=/^\\+/.exec(U());let u=0;if(e&&e[0].length>2&&(u=e[0].length,H.index+=u,u%2!=0&&(M+="\\")),!0===f.unescape?M=Q()||"":M+=Q()||"",0===H.brackets){Y({type:"text",value:M});continue}}if(H.brackets>0&&("]"!==M||"["===X.value||"[^"===X.value)){if(!1!==f.posix&&":"===M){const t=X.value.slice(1);if(t.includes("[")&&(X.posix=!0,t.includes(":"))){const t=X.value.lastIndexOf("["),e=X.value.slice(0,t),u=X.value.slice(t+2),o=a[u];if(o){X.value=e+o,H.backtrack=!0,Q(),g.output||1!==v.indexOf(X)||(g.output=m);continue}}}("["===M&&":"!==K()||"-"===M&&"]"===K())&&(M=`\\${M}`),"]"!==M||"["!==X.value&&"[^"!==X.value||(M=`\\${M}`),!0===f.posix&&"!"===M&&"["===X.value&&(M="^"),X.value+=M,F({value:M});continue}if(1===H.quotes&&'"'!==M){M=n.escapeRegex(M),X.value+=M,F({value:M});continue}if('"'===M){H.quotes=1===H.quotes?0:1,!0===f.keepQuotes&&Y({type:"text",value:M});continue}if("("===M){J("parens"),Y({type:"paren",value:M});continue}if(")"===M){if(0===H.parens&&!0===f.strictBrackets)throw new SyntaxError(l("opening","("));const t=j[j.length-1];if(t&&H.parens===t.parens+1){tt(j.pop());continue}Y({type:"paren",value:M,output:H.parens?")":"\\)"}),V("parens");continue}if("["===M){if(!0!==f.nobracket&&U().includes("]"))J("brackets");else{if(!0!==f.nobracket&&!0===f.strictBrackets)throw new SyntaxError(l("closing","]"));M=`\\${M}`}Y({type:"bracket",value:M});continue}if("]"===M){if(!0===f.nobracket||X&&"bracket"===X.type&&1===X.value.length){Y({type:"text",value:M,output:`\\${M}`});continue}if(0===H.brackets){if(!0===f.strictBrackets)throw new SyntaxError(l("opening","["));Y({type:"text",value:M,output:`\\${M}`});continue}V("brackets");const t=X.value.slice(1);if(!0===X.posix||"^"!==t[0]||t.includes("/")||(M=`/${M}`),X.value+=M,F({value:M}),!1===f.literalBrackets||n.hasRegexChars(t))continue;const e=n.escapeRegex(X.value);if(H.output=H.output.slice(0,-X.value.length),!0===f.literalBrackets){H.output+=e,X.value=e;continue}X.value=`(${h}${e}|${X.value})`,H.output+=X.value;continue}if("{"===M&&!0!==f.nobrace){J("braces");const t={type:"brace",value:M,output:"(",outputIndex:H.output.length,tokensIndex:H.tokens.length};q.push(t),Y(t);continue}if("}"===M){const t=q[q.length-1];if(!0===f.nobrace||!t){Y({type:"text",value:M,output:M});continue}let e=")";if(!0===t.dots){const t=v.slice(),u=[];for(let e=t.length-1;e>=0&&(v.pop(),"brace"!==t[e].type);e--)"dots"!==t[e].type&&u.unshift(t[e].value);e=i(u,f),H.backtrack=!0}if(!0!==t.comma&&!0!==t.dots){const u=H.output.slice(0,t.outputIndex),o=H.tokens.slice(t.tokensIndex);t.value=t.output="\\{",M=e="\\}",H.output=u;for(const t of o)H.output+=t.output||t.value}Y({type:"brace",value:M,output:e}),V("braces"),q.pop();continue}if("|"===M){j.length>0&&j[j.length-1].conditions++,Y({type:"text",value:M});continue}if(","===M){let t=M;const e=q[q.length-1];e&&"braces"===B[B.length-1]&&(e.comma=!0,t="|"),Y({type:"comma",value:M,output:t});continue}if("/"===M){if("dot"===X.type&&H.index===H.start+1){H.start=H.index+1,H.consumed="",H.output="",v.pop(),X=g;continue}Y({type:"slash",value:M,output:S});continue}if("."===M){if(H.braces>0&&"dot"===X.type){"."===X.value&&(X.output=k);const t=q[q.length-1];X.type="dots",X.output+=M,X.value+=M,t.dots=!0;continue}if(H.braces+H.parens===0&&"bos"!==X.type&&"slash"!==X.type){Y({type:"text",value:M,output:k});continue}Y({type:"dot",value:M,output:k});continue}if("?"===M){if(!(X&&"("===X.value)&&!0!==f.noextglob&&"("===K()&&"?"!==K(2)){Z("qmark",M);continue}if(X&&"paren"===X.type){const t=K();let e=M;if("<"===t&&!n.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");("("===X.value&&!/[!=<:]/.test(t)||"<"===t&&!/<([!=]|\w+>)/.test(U()))&&(e=`\\${M}`),Y({type:"text",value:M,output:e});continue}if(!0!==f.dot&&("slash"===X.type||"bos"===X.type)){Y({type:"qmark",value:M,output:A});continue}Y({type:"qmark",value:M,output:R});continue}if("!"===M){if(!0!==f.noextglob&&"("===K()&&("?"!==K(2)||!/[!=<:]/.test(K(3)))){Z("negate",M);continue}if(!0!==f.nonegate&&0===H.index){z();continue}}if("+"===M){if(!0!==f.noextglob&&"("===K()&&"?"!==K(2)){Z("plus",M);continue}if(X&&"("===X.value||!1===f.regex){Y({type:"plus",value:M,output:O});continue}if(X&&("bracket"===X.type||"paren"===X.type||"brace"===X.type)||H.parens>0){Y({type:"plus",value:M});continue}Y({type:"plus",value:O});continue}if("@"===M){if(!0!==f.noextglob&&"("===K()&&"?"!==K(2)){Y({type:"at",extglob:!0,value:M,output:""});continue}Y({type:"text",value:M});continue}if("*"!==M){"$"!==M&&"^"!==M||(M=`\\${M}`);const t=r.exec(U());t&&(M+=t[0],H.index+=t[0].length),Y({type:"text",value:M});continue}if(X&&("globstar"===X.type||!0===X.star)){X.type="star",X.star=!0,X.value+=M,X.output=I,H.backtrack=!0,H.globstar=!0,W(M);continue}let e=U();if(!0!==f.noextglob&&/^\([^?]/.test(e)){Z("star",M);continue}if("star"===X.type){if(!0===f.noglobstar){W(M);continue}const u=X.prev,o=u.prev,n="slash"===u.type||"bos"===u.type,p=o&&("star"===o.type||"globstar"===o.type);if(!0===f.bash&&(!n||e[0]&&"/"!==e[0])){Y({type:"star",value:M,output:""});continue}const a=H.braces>0&&("comma"===u.type||"brace"===u.type),r=j.length&&("pipe"===u.type||"paren"===u.type);if(!n&&"paren"!==u.type&&!a&&!r){Y({type:"star",value:M,output:""});continue}for(;"/**"===e.slice(0,3);){const u=t[H.index+4];if(u&&"/"!==u)break;e=e.slice(3),W("/**",3)}if("bos"===u.type&&G()){X.type="globstar",X.value+=M,X.output=P(f),H.output=X.output,H.globstar=!0,W(M);continue}if("slash"===u.type&&"bos"!==u.prev.type&&!p&&G()){H.output=H.output.slice(0,-(u.output+X.output).length),u.output=`(?:${u.output}`,X.type="globstar",X.output=P(f)+(f.strictSlashes?")":"|$)"),X.value+=M,H.globstar=!0,H.output+=u.output+X.output,W(M);continue}if("slash"===u.type&&"bos"!==u.prev.type&&"/"===e[0]){const t=void 0!==e[1]?"|$":"";H.output=H.output.slice(0,-(u.output+X.output).length),u.output=`(?:${u.output}`,X.type="globstar",X.output=`${P(f)}${S}|${S}${t})`,X.value+=M,H.output+=u.output+X.output,H.globstar=!0,W(M+Q()),Y({type:"slash",value:"/",output:""});continue}if("bos"===u.type&&"/"===e[0]){X.type="globstar",X.value+=M,X.output=`(?:^|${S}|${P(f)}${S})`,H.output=X.output,H.globstar=!0,W(M+Q()),Y({type:"slash",value:"/",output:""});continue}H.output=H.output.slice(0,-X.output.length),X.type="globstar",X.output=P(f),X.value+=M,H.output+=X.output,H.globstar=!0,W(M);continue}const u={type:"star",value:M,output:I};!0!==f.bash?!X||"bracket"!==X.type&&"paren"!==X.type||!0!==f.regex?(H.index!==H.start&&"slash"!==X.type&&"dot"!==X.type||("dot"===X.type?(H.output+=_,X.output+=_):!0===f.dot?(H.output+=L,X.output+=L):(H.output+=C,X.output+=C),"*"!==K()&&(H.output+=m,X.output+=m)),Y(u)):(u.output=M,Y(u)):(u.output=".*?","bos"!==X.type&&"slash"!==X.type||(u.output=C+u.output),Y(u))}for(;H.brackets>0;){if(!0===f.strictBrackets)throw new SyntaxError(l("closing","]"));H.output=n.escapeLast(H.output,"["),V("brackets")}for(;H.parens>0;){if(!0===f.strictBrackets)throw new SyntaxError(l("closing",")"));H.output=n.escapeLast(H.output,"("),V("parens")}for(;H.braces>0;){if(!0===f.strictBrackets)throw new SyntaxError(l("closing","}"));H.output=n.escapeLast(H.output,"{"),V("braces")}if(!0===f.strictSlashes||"star"!==X.type&&"bracket"!==X.type||Y({type:"maybe_slash",value:"",output:`${S}?`}),!0===H.backtrack){H.output="";for(const t of H.tokens)H.output+=null!=t.output?t.output:t.value,t.suffix&&(H.output+=t.suffix)}return H};f.fastpaths=((t,u)=>{const a=e({},u),r="number"==typeof a.maxLength?Math.min(p,a.maxLength):p,s=t.length;if(s>r)throw new SyntaxError(`Input length: ${s}, exceeds maximum allowed length: ${r}`);t=c[t]||t;const i=n.isWindows(u),{DOT_LITERAL:l,SLASH_LITERAL:f,ONE_CHAR:y,DOTS_SLASH:b,NO_DOT:g,NO_DOTS:v,NO_DOTS_SLASH:h,STAR:x,START_ANCHOR:$}=o.globChars(i),d=a.dot?v:g,k=a.dot?h:g,O=a.capture?"":"?:";let S=!0===a.bash?".*?":x;a.capture&&(S=`(${S})`);const m=t=>!0===t.noglobstar?S:`(${O}(?:(?!${$}${t.dot?b:l}).)*?)`,w=t=>{switch(t){case"*":return`${d}${y}${S}`;case".*":return`${l}${y}${S}`;case"*.*":return`${d}${S}${l}${y}${S}`;case"*/*":return`${d}${S}${f}${y}${k}${S}`;case"**":return d+m(a);case"**/*":return`(?:${d}${m(a)}${f})?${k}${y}${S}`;case"**/*.*":return`(?:${d}${m(a)}${f})?${k}${S}${l}${y}${S}`;case"**/.*":return`(?:${d}${m(a)}${f})?${l}${y}${S}`;default:{const e=/^(.*?)\.(\w+)$/.exec(t);if(!e)return;const u=w(e[1]);if(!u)return;return u+l+e[2]}}},E=n.removePrefix(t,{negated:!1,prefix:""});let _=w(E);return _&&!0!==a.strictSlashes&&(_+=`${f}?`),_}),module.exports=f; +"use strict";function t(t,e){var u=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),u.push.apply(u,o)}return u}function e(e){for(var o=1;o{if("function"==typeof e.expandRange)return e.expandRange(...t,e);t.sort();const u=`[${t.join("-")}]`;try{new RegExp(u)}catch(o){return t.map(t=>n.escapeRegex(t)).join("..")}return u},l=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,f=(t,u)=>{if("string"!=typeof t)throw new TypeError("Expected a string");t=c[t]||t;const f=e({},u),y="number"==typeof f.maxLength?Math.min(p,f.maxLength):p;let b=t.length;if(b>y)throw new SyntaxError(`Input length: ${b}, exceeds maximum allowed length: ${y}`);const g={type:"bos",value:"",output:f.prepend||""},v=[g],h=f.capture?"":"?:",x=n.isWindows(u),$=o.globChars(x),d=o.extglobChars($),{DOT_LITERAL:k,PLUS_LITERAL:O,SLASH_LITERAL:S,ONE_CHAR:m,DOTS_SLASH:w,NO_DOT:E,NO_DOT_SLASH:_,NO_DOTS_SLASH:L,QMARK:R,QMARK_NO_DOT:A,STAR:T,START_ANCHOR:N}=$,P=t=>`(${h}(?:(?!${N}${t.dot?w:k}).)*?)`,C=f.dot?"":E,D=f.dot?R:A;let I=!0===f.bash?P(f):T;f.capture&&(I=`(${I})`),"boolean"==typeof f.noext&&(f.noextglob=f.noext);const H={input:t,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:v};t=n.removePrefix(t,H),b=t.length;const j=[],q=[],B=[];let M,X=g;const G=()=>H.index===b-1,K=H.peek=((e=1)=>t[H.index+e]),Q=H.advance=(()=>t[++H.index]),U=()=>t.slice(H.index+1),W=(t="",e=0)=>{H.consumed+=t,H.index+=e},F=t=>{H.output+=null!=t.output?t.output:t.value,W(t.value)},z=()=>{let t=1;for(;"!"===K()&&("("!==K(2)||"?"===K(3));)Q(),H.start++,t++;return t%2!=0&&(H.negated=!0,H.start++,!0)},J=t=>{H[t]++,B.push(t)},V=t=>{H[t]--,B.pop()},Y=t=>{if("globstar"===X.type){const e=H.braces>0&&("comma"===t.type||"brace"===t.type),u=!0===t.extglob||j.length&&("pipe"===t.type||"paren"===t.type);"slash"===t.type||"paren"===t.type||e||u||(H.output=H.output.slice(0,-X.output.length),X.type="star",X.value="*",X.output=I,H.output+=X.output)}if(j.length&&"paren"!==t.type&&!d[t.value]&&(j[j.length-1].inner+=t.value),(t.value||t.output)&&F(t),X&&"text"===X.type&&"text"===t.type)return X.value+=t.value,void(X.output=(X.output||"")+t.value);t.prev=X,v.push(t),X=t},Z=(t,u)=>{const o=e({},d[u],{conditions:1,inner:""});o.prev=X,o.parens=H.parens,o.output=H.output;const n=(f.capture?"(":"")+o.open;J("parens"),Y({type:t,value:u,output:H.output?"":m}),Y({type:"paren",extglob:!0,value:Q(),output:n}),j.push(o)},tt=t=>{let e=t.close+(f.capture?")":"");if("negate"===t.type){let u=I;t.inner&&t.inner.length>1&&t.inner.includes("/")&&(u=P(f)),(u!==I||G()||/^\)+$/.test(U()))&&(e=t.close=`)$))${u}`),"bos"===t.prev.type&&G()&&(H.negatedExtglob=!0)}Y({type:"paren",extglob:!0,value:M,output:e}),V("parens")};if(!1!==f.fastpaths&&!/(^[*!]|[\/()[\]{}"])/.test(t)){let e=!1,o=t.replace(s,(t,u,o,n,p,a)=>"\\"===n?(e=!0,t):"?"===n?u?u+n+(p?R.repeat(p.length):""):0===a?D+(p?R.repeat(p.length):""):R.repeat(o.length):"."===n?k.repeat(o.length):"*"===n?u?u+n+(p?I:""):I:u?t:`\\${t}`);return!0===e&&(o=!0===f.unescape?o.replace(/\\/g,""):o.replace(/\\+/g,t=>t.length%2==0?"\\\\":t?"\\":"")),o===t&&!0===f.contains?(H.output=t,H):(H.output=n.wrapOutput(o,H,u),H)}for(;!G();){if("\0"===(M=Q()))continue;if("\\"===M){const t=K();if("/"===t&&!0!==f.bash)continue;if("."===t||";"===t)continue;if(!t){Y({type:"text",value:M+="\\"});continue}const e=/^\\+/.exec(U());let u=0;if(e&&e[0].length>2&&(u=e[0].length,H.index+=u,u%2!=0&&(M+="\\")),!0===f.unescape?M=Q()||"":M+=Q()||"",0===H.brackets){Y({type:"text",value:M});continue}}if(H.brackets>0&&("]"!==M||"["===X.value||"[^"===X.value)){if(!1!==f.posix&&":"===M){const t=X.value.slice(1);if(t.includes("[")&&(X.posix=!0,t.includes(":"))){const t=X.value.lastIndexOf("["),e=X.value.slice(0,t),u=X.value.slice(t+2),o=a[u];if(o){X.value=e+o,H.backtrack=!0,Q(),g.output||1!==v.indexOf(X)||(g.output=m);continue}}}("["===M&&":"!==K()||"-"===M&&"]"===K())&&(M=`\\${M}`),"]"!==M||"["!==X.value&&"[^"!==X.value||(M=`\\${M}`),!0===f.posix&&"!"===M&&"["===X.value&&(M="^"),X.value+=M,F({value:M});continue}if(1===H.quotes&&'"'!==M){M=n.escapeRegex(M),X.value+=M,F({value:M});continue}if('"'===M){H.quotes=1===H.quotes?0:1,!0===f.keepQuotes&&Y({type:"text",value:M});continue}if("("===M){J("parens"),Y({type:"paren",value:M});continue}if(")"===M){if(0===H.parens&&!0===f.strictBrackets)throw new SyntaxError(l("opening","("));const t=j[j.length-1];if(t&&H.parens===t.parens+1){tt(j.pop());continue}Y({type:"paren",value:M,output:H.parens?")":"\\)"}),V("parens");continue}if("["===M){if(!0!==f.nobracket&&U().includes("]"))J("brackets");else{if(!0!==f.nobracket&&!0===f.strictBrackets)throw new SyntaxError(l("closing","]"));M=`\\${M}`}Y({type:"bracket",value:M});continue}if("]"===M){if(!0===f.nobracket||X&&"bracket"===X.type&&1===X.value.length){Y({type:"text",value:M,output:`\\${M}`});continue}if(0===H.brackets){if(!0===f.strictBrackets)throw new SyntaxError(l("opening","["));Y({type:"text",value:M,output:`\\${M}`});continue}V("brackets");const t=X.value.slice(1);if(!0===X.posix||"^"!==t[0]||t.includes("/")||(M=`/${M}`),X.value+=M,F({value:M}),!1===f.literalBrackets||n.hasRegexChars(t))continue;const e=n.escapeRegex(X.value);if(H.output=H.output.slice(0,-X.value.length),!0===f.literalBrackets){H.output+=e,X.value=e;continue}X.value=`(${h}${e}|${X.value})`,H.output+=X.value;continue}if("{"===M&&!0!==f.nobrace){J("braces");const t={type:"brace",value:M,output:"(",outputIndex:H.output.length,tokensIndex:H.tokens.length};q.push(t),Y(t);continue}if("}"===M){const t=q[q.length-1];if(!0===f.nobrace||!t){Y({type:"text",value:M,output:M});continue}let e=")";if(!0===t.dots){const t=v.slice(),u=[];for(let e=t.length-1;e>=0&&(v.pop(),"brace"!==t[e].type);e--)"dots"!==t[e].type&&u.unshift(t[e].value);e=i(u,f),H.backtrack=!0}if(!0!==t.comma&&!0!==t.dots){const u=H.output.slice(0,t.outputIndex),o=H.tokens.slice(t.tokensIndex);t.value=t.output="\\{",M=e="\\}",H.output=u;for(const t of o)H.output+=t.output||t.value}Y({type:"brace",value:M,output:e}),V("braces"),q.pop();continue}if("|"===M){j.length>0&&j[j.length-1].conditions++,Y({type:"text",value:M});continue}if(","===M){let t=M;const e=q[q.length-1];e&&"braces"===B[B.length-1]&&(e.comma=!0,t="|"),Y({type:"comma",value:M,output:t});continue}if("/"===M){if("dot"===X.type&&H.index===H.start+1){H.start=H.index+1,H.consumed="",H.output="",v.pop(),X=g;continue}Y({type:"slash",value:M,output:S});continue}if("."===M){if(H.braces>0&&"dot"===X.type){"."===X.value&&(X.output=k);const t=q[q.length-1];X.type="dots",X.output+=M,X.value+=M,t.dots=!0;continue}if(H.braces+H.parens===0&&"bos"!==X.type&&"slash"!==X.type){Y({type:"text",value:M,output:k});continue}Y({type:"dot",value:M,output:k});continue}if("?"===M){if(!(X&&"("===X.value)&&!0!==f.noextglob&&"("===K()&&"?"!==K(2)){Z("qmark",M);continue}if(X&&"paren"===X.type){const t=K();let e=M;if("<"===t&&!n.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");("("===X.value&&!/[!=<:]/.test(t)||"<"===t&&!/<([!=]|\w+>)/.test(U()))&&(e=`\\${M}`),Y({type:"text",value:M,output:e});continue}if(!0!==f.dot&&("slash"===X.type||"bos"===X.type)){Y({type:"qmark",value:M,output:A});continue}Y({type:"qmark",value:M,output:R});continue}if("!"===M){if(!0!==f.noextglob&&"("===K()&&("?"!==K(2)||!/[!=<:]/.test(K(3)))){Z("negate",M);continue}if(!0!==f.nonegate&&0===H.index){z();continue}}if("+"===M){if(!0!==f.noextglob&&"("===K()&&"?"!==K(2)){Z("plus",M);continue}if(X&&"("===X.value||!1===f.regex){Y({type:"plus",value:M,output:O});continue}if(X&&("bracket"===X.type||"paren"===X.type||"brace"===X.type)||H.parens>0){Y({type:"plus",value:M});continue}Y({type:"plus",value:O});continue}if("@"===M){if(!0!==f.noextglob&&"("===K()&&"?"!==K(2)){Y({type:"at",extglob:!0,value:M,output:""});continue}Y({type:"text",value:M});continue}if("*"!==M){"$"!==M&&"^"!==M||(M=`\\${M}`);const t=r.exec(U());t&&(M+=t[0],H.index+=t[0].length),Y({type:"text",value:M});continue}if(X&&("globstar"===X.type||!0===X.star)){X.type="star",X.star=!0,X.value+=M,X.output=I,H.backtrack=!0,H.globstar=!0,W(M);continue}let e=U();if(!0!==f.noextglob&&/^\([^?]/.test(e)){Z("star",M);continue}if("star"===X.type){if(!0===f.noglobstar){W(M);continue}const u=X.prev,o=u.prev,n="slash"===u.type||"bos"===u.type,p=o&&("star"===o.type||"globstar"===o.type);if(!0===f.bash&&(!n||e[0]&&"/"!==e[0])){Y({type:"star",value:M,output:""});continue}const a=H.braces>0&&("comma"===u.type||"brace"===u.type),r=j.length&&("pipe"===u.type||"paren"===u.type);if(!n&&"paren"!==u.type&&!a&&!r){Y({type:"star",value:M,output:""});continue}for(;"/**"===e.slice(0,3);){const u=t[H.index+4];if(u&&"/"!==u)break;e=e.slice(3),W("/**",3)}if("bos"===u.type&&G()){X.type="globstar",X.value+=M,X.output=P(f),H.output=X.output,H.globstar=!0,W(M);continue}if("slash"===u.type&&"bos"!==u.prev.type&&!p&&G()){H.output=H.output.slice(0,-(u.output+X.output).length),u.output=`(?:${u.output}`,X.type="globstar",X.output=P(f)+(f.strictSlashes?")":"|$)"),X.value+=M,H.globstar=!0,H.output+=u.output+X.output,W(M);continue}if("slash"===u.type&&"bos"!==u.prev.type&&"/"===e[0]){const t=void 0!==e[1]?"|$":"";H.output=H.output.slice(0,-(u.output+X.output).length),u.output=`(?:${u.output}`,X.type="globstar",X.output=`${P(f)}${S}|${S}${t})`,X.value+=M,H.output+=u.output+X.output,H.globstar=!0,W(M+Q()),Y({type:"slash",value:"/",output:""});continue}if("bos"===u.type&&"/"===e[0]){X.type="globstar",X.value+=M,X.output=`(?:^|${S}|${P(f)}${S})`,H.output=X.output,H.globstar=!0,W(M+Q()),Y({type:"slash",value:"/",output:""});continue}H.output=H.output.slice(0,-X.output.length),X.type="globstar",X.output=P(f),X.value+=M,H.output+=X.output,H.globstar=!0,W(M);continue}const u={type:"star",value:M,output:I};!0!==f.bash?!X||"bracket"!==X.type&&"paren"!==X.type||!0!==f.regex?(H.index!==H.start&&"slash"!==X.type&&"dot"!==X.type||("dot"===X.type?(H.output+=_,X.output+=_):!0===f.dot?(H.output+=L,X.output+=L):(H.output+=C,X.output+=C),"*"!==K()&&(H.output+=m,X.output+=m)),Y(u)):(u.output=M,Y(u)):(u.output=".*?","bos"!==X.type&&"slash"!==X.type||(u.output=C+u.output),Y(u))}for(;H.brackets>0;){if(!0===f.strictBrackets)throw new SyntaxError(l("closing","]"));H.output=n.escapeLast(H.output,"["),V("brackets")}for(;H.parens>0;){if(!0===f.strictBrackets)throw new SyntaxError(l("closing",")"));H.output=n.escapeLast(H.output,"("),V("parens")}for(;H.braces>0;){if(!0===f.strictBrackets)throw new SyntaxError(l("closing","}"));H.output=n.escapeLast(H.output,"{"),V("braces")}if(!0===f.strictSlashes||"star"!==X.type&&"bracket"!==X.type||Y({type:"maybe_slash",value:"",output:`${S}?`}),!0===H.backtrack){H.output="";for(const t of H.tokens)H.output+=null!=t.output?t.output:t.value,t.suffix&&(H.output+=t.suffix)}return H};f.fastpaths=((t,u)=>{const a=e({},u),r="number"==typeof a.maxLength?Math.min(p,a.maxLength):p,s=t.length;if(s>r)throw new SyntaxError(`Input length: ${s}, exceeds maximum allowed length: ${r}`);t=c[t]||t;const i=n.isWindows(u),{DOT_LITERAL:l,SLASH_LITERAL:f,ONE_CHAR:y,DOTS_SLASH:b,NO_DOT:g,NO_DOTS:v,NO_DOTS_SLASH:h,STAR:x,START_ANCHOR:$}=o.globChars(i),d=a.dot?v:g,k=a.dot?h:g,O=a.capture?"":"?:";let S=!0===a.bash?".*?":x;a.capture&&(S=`(${S})`);const m=t=>!0===t.noglobstar?S:`(${O}(?:(?!${$}${t.dot?b:l}).)*?)`,w=t=>{switch(t){case"*":return`${d}${y}${S}`;case".*":return`${l}${y}${S}`;case"*.*":return`${d}${S}${l}${y}${S}`;case"*/*":return`${d}${S}${f}${y}${k}${S}`;case"**":return d+m(a);case"**/*":return`(?:${d}${m(a)}${f})?${k}${y}${S}`;case"**/*.*":return`(?:${d}${m(a)}${f})?${k}${S}${l}${y}${S}`;case"**/.*":return`(?:${d}${m(a)}${f})?${l}${y}${S}`;default:{const e=/^(.*?)\.(\w+)$/.exec(t);if(!e)return;const u=w(e[1]);if(!u)return;return u+l+e[2]}}},E=n.removePrefix(t,{negated:!1,prefix:""});let _=w(E);return _&&!0!==a.strictSlashes&&(_+=`${f}?`),_}),module.exports=f; },{"./constants":"wIyF","./utils":"OYpc"}],"2l79":[function(require,module,exports) { "use strict";function t(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function e(e){for(var n=1;nt&&"object"==typeof t&&!Array.isArray(t),u=(t,r,n=!1)=>{if(Array.isArray(t)){const e=t.map(t=>u(t,r,n));return t=>{for(const r of e){const e=r(t);if(e)return e}return!1}}const o=c(t)&&t.tokens&&t.input;if(""===t||"string"!=typeof t&&!o)throw new TypeError("Expected pattern to be a non-empty string");const s=r||{},i=a.isWindows(r),p=o?u.compileRe(t,r):u.makeRe(t,r,!1,!0),f=p.state;delete p.state;let l=()=>!1;if(s.ignore){const t=e({},r,{ignore:null,onMatch:null,onResult:null});l=u(s.ignore,t,n)}const h=(e,n=!1)=>{const{isMatch:o,match:a,output:c}=u.test(e,p,r,{glob:t,posix:i}),h={glob:t,state:f,regex:p,posix:i,input:e,output:c,match:a,isMatch:o};return"function"==typeof s.onResult&&s.onResult(h),!1===o?(h.isMatch=!1,!!n&&h):l(e)?("function"==typeof s.onIgnore&&s.onIgnore(h),h.isMatch=!1,!!n&&h):("function"==typeof s.onMatch&&s.onMatch(h),!n||h)};return n&&(h.state=f),h};u.test=((t,e,r,{glob:n,posix:o}={})=>{if("string"!=typeof t)throw new TypeError("Expected input to be a string");if(""===t)return{isMatch:!1,output:""};const s=r||{},i=s.format||(o?a.toPosixSlashes:null);let c=t===n,p=c&&i?i(t):t;return!1===c&&(c=(p=i?i(t):t)===n),!1!==c&&!0!==s.capture||(c=!0===s.matchBase||!0===s.basename?u.matchBase(t,e,r,o):e.exec(p)),{isMatch:Boolean(c),match:c,output:p}}),u.matchBase=((t,e,r,o=a.isWindows(r))=>{return(e instanceof RegExp?e:u.makeRe(e,r)).test(n.basename(t))}),u.isMatch=((t,e,r)=>u(e,r)(t)),u.parse=((t,r)=>Array.isArray(t)?t.map(t=>u.parse(t,r)):s(t,e({},r,{fastpaths:!1}))),u.scan=((t,e)=>o(t,e)),u.compileRe=((t,e,r=!1,n=!1)=>{if(!0===r)return t.output;const o=e||{},s=o.contains?"":"^",a=o.contains?"":"$";let i=`${s}(?:${t.output})${a}`;t&&!0===t.negated&&(i=`^(?!${i}).*$`);const c=u.toRegex(i,e);return!0===n&&(c.state=t),c}),u.makeRe=((t,e,r=!1,n=!1)=>{if(!t||"string"!=typeof t)throw new TypeError("Expected a non-empty string");const o=e||{};let a,i={negated:!1,fastpaths:!0},c="";return t.startsWith("./")&&(t=t.slice(2),c=i.prefix="./"),!1===o.fastpaths||"."!==t[0]&&"*"!==t[0]||(a=s.fastpaths(t,e)),void 0===a?(i=s(t,e)).prefix=c+(i.prefix||""):i.output=a,u.compileRe(i,e,r,n)}),u.toRegex=((t,e)=>{try{const n=e||{};return new RegExp(t,n.flags||(n.nocase?"i":""))}catch(r){if(e&&!0===e.debug)throw r;return/$^/}}),u.constants=i,module.exports=u; },{"./scan":"Xsxu","./parse":"WmuT","./utils":"OYpc","./constants":"wIyF"}],"ntjw":[function(require,module,exports) { @@ -487,7 +487,7 @@ function n(n,c){var o,t,u,f=!0;function i(n){function t(){c&&c(n,o),c=null}f?pro },{}],"CQVL":[function(require,module,exports) { "use strict";var n=require("reusify");function e(e,t,r){"function"==typeof e&&(r=t,t=e,e=null);var a=n(l),c=null,i=null,o=0,s={push:function(n,l){var r=a.get();r.context=e,r.release=f,r.value=n,r.callback=l||u,o===s.concurrency||s.paused?i?(i.next=r,i=r):(c=r,i=r,s.saturated()):(o++,t.call(e,r.value,r.worked))},drain:u,saturated:u,pause:function(){s.paused=!0},paused:!1,concurrency:r,running:function(){return o},resume:function(){if(!s.paused)return;s.paused=!1;for(var n=0;ns.string.isString(e)&&!s.string.isEmpty(e)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}!function(t){t.sync=function(e,t){c(e);const n=u(e,r.default,t);return s.array.flatten(n)},t.stream=function(e,t){c(e);const r=u(e,n.default,t);return s.stream.merge(r)},t.generateTasks=function(t,n){c(t);const r=[].concat(t),s=new a.default(n);return e.generate(r,s)},t.isDynamicPattern=function(e,t){c(e);const n=new a.default(t);return s.pattern.isDynamicPattern(e,n)},t.escapePath=function(e){return c(e),s.path.escape(e)}}(i||(i={})),module.exports=i; -},{"./managers/tasks":"euOs","./providers/async":"ej8k","./providers/stream":"ZC2W","./providers/sync":"Xzor","./settings":"wcsf","./utils":"0FJh"}],"iKtE":[function(require,module,exports) { +},{"./managers/tasks":"euOs","./providers/async":"ej8k","./providers/stream":"ZC2W","./providers/sync":"Xzor","./settings":"wcsf","./utils":"0FJh"}],"SUSS":[function(require,module,exports) { "use strict";const{promisify:t}=require("util"),i=require("fs");async function r(r,n,e){if("string"!=typeof e)throw new TypeError(`Expected a string, got ${typeof e}`);try{return(await t(i[r])(e))[n]()}catch(s){if("ENOENT"===s.code)return!1;throw s}}function n(t,r,n){if("string"!=typeof n)throw new TypeError(`Expected a string, got ${typeof n}`);try{return i[t](n)[r]()}catch(e){if("ENOENT"===e.code)return!1;throw e}}exports.isFile=r.bind(null,"stat","isFile"),exports.isDirectory=r.bind(null,"stat","isDirectory"),exports.isSymlink=r.bind(null,"lstat","isSymbolicLink"),exports.isFileSync=n.bind(null,"statSync","isFile"),exports.isDirectorySync=n.bind(null,"statSync","isDirectory"),exports.isSymlinkSync=n.bind(null,"lstatSync","isSymbolicLink"); -},{}],"jeKN":[function(require,module,exports) { +},{}],"K7HE":[function(require,module,exports) { "use strict";const e=require("path"),t=require("path-type"),r=e=>e.length>1?`{${e.join(",")}}`:e[0],o=(t,r)=>{const o="!"===t[0]?t.slice(1):t;return e.isAbsolute(o)?o:e.join(r,o)},s=(t,o)=>e.extname(t)?`**/${t}`:`**/${t}.${r(o)}`,i=(t,o)=>{if(o.files&&!Array.isArray(o.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof o.files}\``);if(o.extensions&&!Array.isArray(o.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof o.extensions}\``);return o.files&&o.extensions?o.files.map(r=>e.posix.join(t,s(r,o.extensions))):o.files?o.files.map(r=>e.posix.join(t,`**/${r}`)):o.extensions?[e.posix.join(t,`**/*.${r(o.extensions)}`)]:[e.posix.join(t,"**")]};module.exports=(async(e,r)=>{if("string"!=typeof(r={cwd:process.cwd(),...r}).cwd)throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof r.cwd}\``);const s=await Promise.all([].concat(e).map(async e=>{return await t.isDirectory(o(e,r.cwd))?i(e,r):e}));return[].concat.apply([],s)}),module.exports.sync=((e,r)=>{if("string"!=typeof(r={cwd:process.cwd(),...r}).cwd)throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof r.cwd}\``);const s=[].concat(e).map(e=>t.isDirectorySync(o(e,r.cwd))?i(e,r):e);return[].concat.apply([],s)}); -},{"path-type":"iKtE"}],"ateY":[function(require,module,exports) { -function t(t){return Array.isArray(t)?t:[t]}const e="",r=" ",s="\\",n=/^\s+$/,i=/^\\!/,o=/^\\#/,c=/\r?\n/g,a=/^\.*\/|^\.+$/,h="/",u="undefined"!=typeof Symbol?Symbol.for("node-ignore"):"node-ignore",d=(t,e,r)=>Object.defineProperty(t,e,{value:r}),l=/([0-z])-([0-z])/g,g=t=>t.replace(l,(t,e,r)=>e.charCodeAt(0)<=r.charCodeAt(0)?t:""),_=t=>{const{length:e}=t;return t.slice(0,e-e%2)},p=[[/\\?\s+$/,t=>0===t.indexOf("\\")?" ":""],[/\\\s/g,()=>" "],[/[\\$.|*+(){^]/g,t=>`\\${t}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(t,e,r)=>e+6`${e}[^\\/]*`],[/\\\\\\(?=[$.|*+(){^])/g,()=>"\\"],[/\\\\/g,()=>"\\"],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(t,e,r,s,n)=>"\\"===e?`\\[${r}${_(s)}${n}`:"]"===n&&s.length%2==0?`[${g(r)}${s}]`:"[]"],[/(?:[^*])$/,t=>/\/$/.test(t)?`${t}$`:`${t}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(t,e)=>{return`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`}]],$=Object.create(null),f=(t,e,r)=>{const s=$[t];if(s)return s;const n=p.reduce((e,r)=>e.replace(r[0],r[1].bind(t)),t);return $[t]=r?new RegExp(n,"i"):new RegExp(n)},v=t=>"string"==typeof t,b=t=>t&&v(t)&&!n.test(t)&&0!==t.indexOf("#"),y=t=>t.split(c);class O{constructor(t,e,r,s){this.origin=t,this.pattern=e,this.negative=r,this.regex=s}}const C=(t,e)=>{const r=t;let s=!1;0===t.indexOf("!")&&(s=!0,t=t.substr(1)),t=t.replace(i,"!").replace(o,"#");const n=f(t,0,e);return new O(r,t,s,n)},E=(t,e)=>{throw new e(t)},x=(t,e,r)=>{if(!v(t))return r(`path must be a string, but got \`${e}\``,TypeError);if(!t)return r("path must not be empty",TypeError);if(x.isNotRelative(t)){return r(`path should be a ${"`path.relative()`d"} string, but got "${e}"`,RangeError)}return!0},m=t=>a.test(t);x.isNotRelative=m,x.convert=(t=>t);class w{constructor({ignorecase:t=!0}={}){this._rules=[],this._ignorecase=t,d(this,u,!0),this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[u])return this._rules=this._rules.concat(t._rules),void(this._added=!0);if(b(t)){const e=C(t,this._ignorecase);this._added=!0,this._rules.push(e)}}add(e){return this._added=!1,t(v(e)?y(e):e).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,e){let r=!1,s=!1;return this._rules.forEach(n=>{const{negative:i}=n;s===i&&r!==s||i&&!r&&!s&&!e||n.regex.test(t)&&(r=!i,s=i)}),{ignored:r,unignored:s}}_test(t,e,r,s){const n=t&&x.convert(t);return x(n,t,E),this._t(n,e,r,s)}_t(t,e,r,s){if(t in e)return e[t];if(s||(s=t.split(h)),s.pop(),!s.length)return e[t]=this._testOne(t,r);const n=this._t(s.join(h)+h,e,r,s);return e[t]=n.ignored?n:this._testOne(t,r)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(e){return t(e).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}}const R=t=>new w(t),j=()=>!1,N=t=>x(t&&x.convert(t),t,j);if(R.isPathValid=N,R.default=R,module.exports=R,"undefined"!=typeof process&&(process.env&&process.env.IGNORE_TEST_WIN32||"win32"===process.platform)){const t=t=>/^\\\\\?\\/.test(t)||/["<>|\u0000-\u001F]+/u.test(t)?t:t.replace(/\\/g,"/");x.convert=t;const e=/^[a-z]:\//i;x.isNotRelative=(t=>e.test(t)||m(t))} +},{"path-type":"SUSS"}],"H++o":[function(require,module,exports) { +function t(t){return Array.isArray(t)?t:[t]}const e="",r=" ",s="\\",n=/^\s+$/,i=/^\\!/,o=/^\\#/,c=/\r?\n/g,a=/^\.*\/|^\.+$/,h="/",u="undefined"!=typeof Symbol?Symbol.for("node-ignore"):"node-ignore",d=(t,e,r)=>Object.defineProperty(t,e,{value:r}),l=/([0-z])-([0-z])/g,g=t=>t.replace(l,(t,e,r)=>e.charCodeAt(0)<=r.charCodeAt(0)?t:""),_=t=>{const{length:e}=t;return t.slice(0,e-e%2)},p=[[/\\?\s+$/,t=>0===t.indexOf("\\")?" ":""],[/\\\s/g,()=>" "],[/[\\$.|*+(){^]/g,t=>`\\${t}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(t,e,r)=>e+6`${e}[^\\/]*`],[/\\\\\\(?=[$.|*+(){^])/g,()=>"\\"],[/\\\\/g,()=>"\\"],[/(\\)?\[([^\]\/]*?)(\\*)($|\])/g,(t,e,r,s,n)=>"\\"===e?`\\[${r}${_(s)}${n}`:"]"===n&&s.length%2==0?`[${g(r)}${s}]`:"[]"],[/(?:[^*])$/,t=>/\/$/.test(t)?`${t}$`:`${t}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(t,e)=>{return`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`}]],$=Object.create(null),f=(t,e,r)=>{const s=$[t];if(s)return s;const n=p.reduce((e,r)=>e.replace(r[0],r[1].bind(t)),t);return $[t]=r?new RegExp(n,"i"):new RegExp(n)},v=t=>"string"==typeof t,b=t=>t&&v(t)&&!n.test(t)&&0!==t.indexOf("#"),y=t=>t.split(c);class O{constructor(t,e,r,s){this.origin=t,this.pattern=e,this.negative=r,this.regex=s}}const C=(t,e)=>{const r=t;let s=!1;0===t.indexOf("!")&&(s=!0,t=t.substr(1)),t=t.replace(i,"!").replace(o,"#");const n=f(t,0,e);return new O(r,t,s,n)},E=(t,e)=>{throw new e(t)},x=(t,e,r)=>{if(!v(t))return r(`path must be a string, but got \`${e}\``,TypeError);if(!t)return r("path must not be empty",TypeError);if(x.isNotRelative(t)){return r(`path should be a ${"`path.relative()`d"} string, but got "${e}"`,RangeError)}return!0},m=t=>a.test(t);x.isNotRelative=m,x.convert=(t=>t);class w{constructor({ignorecase:t=!0}={}){this._rules=[],this._ignorecase=t,d(this,u,!0),this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[u])return this._rules=this._rules.concat(t._rules),void(this._added=!0);if(b(t)){const e=C(t,this._ignorecase);this._added=!0,this._rules.push(e)}}add(e){return this._added=!1,t(v(e)?y(e):e).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,e){let r=!1,s=!1;return this._rules.forEach(n=>{const{negative:i}=n;s===i&&r!==s||i&&!r&&!s&&!e||n.regex.test(t)&&(r=!i,s=i)}),{ignored:r,unignored:s}}_test(t,e,r,s){const n=t&&x.convert(t);return x(n,t,E),this._t(n,e,r,s)}_t(t,e,r,s){if(t in e)return e[t];if(s||(s=t.split(h)),s.pop(),!s.length)return e[t]=this._testOne(t,r);const n=this._t(s.join(h)+h,e,r,s);return e[t]=n.ignored?n:this._testOne(t,r)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(e){return t(e).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}}const R=t=>new w(t),j=()=>!1,N=t=>x(t&&x.convert(t),t,j);if(R.isPathValid=N,R.default=R,module.exports=R,"undefined"!=typeof process&&(process.env&&process.env.IGNORE_TEST_WIN32||"win32"===process.platform)){const t=t=>/^\\\\\?\\/.test(t)||/["<>|\u0000-\u001F]+/u.test(t)?t:t.replace(/\\/g,"/");x.convert=t;const e=/^[a-z]:\//i;x.isNotRelative=(t=>e.test(t)||m(t))} },{}],"Kocg":[function(require,module,exports) { "use strict";module.exports=(t=>{const e=/^\\\\\?\\/.test(t),s=/[^\u0000-\u0080]+/.test(t);return e||s?t:t.replace(/\\/g,"/")}); },{}],"XZNf":[function(require,module,exports) { "use strict";const{promisify:e}=require("util"),r=require("fs"),t=require("path"),i=require("fast-glob"),n=require("ignore"),o=require("slash"),c=["**/node_modules/**","**/flow-typed/**","**/coverage/**","**/.git"],s=e(r.readFile),a=e=>r=>r.startsWith("!")?"!"+t.posix.join(e,r.slice(1)):t.posix.join(e,r),d=(e,r)=>{const i=o(t.relative(r.cwd,t.dirname(r.fileName)));return e.split(/\r?\n/).filter(Boolean).filter(e=>!e.startsWith("#")).map(a(i))},l=e=>e.reduce((e,r)=>(e.add(d(r.content,{cwd:r.cwd,fileName:r.filePath})),e),n()),w=(e,r)=>{if(e=o(e),t.isAbsolute(r)){if(r.startsWith(e))return r;throw new Error(`Path ${r} is not in cwd ${e}`)}return t.join(e,r)},u=(e,r)=>i=>e.ignores(o(t.relative(r,w(r,i)))),f=async(e,r)=>{const i=t.join(r,e);return{cwd:r,filePath:i,content:await s(i,"utf8")}},g=(e,i)=>{const n=t.join(i,e);return{cwd:i,filePath:n,content:r.readFileSync(n,"utf8")}},p=({ignore:e=[],cwd:r=o(process.cwd())}={})=>({ignore:e,cwd:r});module.exports=(async e=>{e=p(e);const r=await i("**/.gitignore",{ignore:c.concat(e.ignore),cwd:e.cwd}),t=await Promise.all(r.map(r=>f(r,e.cwd))),n=l(t);return u(n,e.cwd)}),module.exports.sync=(e=>{e=p(e);const r=i.sync("**/.gitignore",{ignore:c.concat(e.ignore),cwd:e.cwd}).map(r=>g(r,e.cwd)),t=l(r);return u(t,e.cwd)}); -},{"fast-glob":"cxdw","ignore":"ateY","slash":"Kocg"}],"ZQTX":[function(require,module,exports) { +},{"fast-glob":"cxdw","ignore":"H++o","slash":"Kocg"}],"ZQTX":[function(require,module,exports) { "use strict";const{Transform:s}=require("stream");class t extends s{constructor(){super({objectMode:!0})}}class e extends t{constructor(s){super(),this._filter=s}_transform(s,t,e){this._filter(s)&&this.push(s),e()}}class r extends t{constructor(){super(),this._pushed=new Set}_transform(s,t,e){this._pushed.has(s)||(this.push(s),this._pushed.add(s)),e()}}module.exports={FilterStream:e,UniqueStream:r}; },{}],"/xfT":[function(require,module,exports) { "use strict";function e(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,n)}return t}function r(r){for(var n=1;n!1,y=e=>"!"===e[0],g=e=>{if(!e.every(e=>"string"==typeof e))throw new TypeError("Patterns must be a string or an array of strings")},d=(e={})=>{if(!e.cwd)return;let r;try{r=n.statSync(e.cwd)}catch(t){return}if(!r.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},f=e=>e.stats instanceof n.Stats?e.path:e,m=(e,t)=>{e=o([].concat(e)),g(e),d(t);const n=[];t=r({ignore:[],expandDirectories:!0},t);for(const[o,i]of e.entries()){if(y(i))continue;const s=e.slice(o).filter(y).map(e=>e.slice(1)),c=r({},t,{ignore:t.ignore.concat(s)});n.push({pattern:i,options:c})}return n},w=(e,t)=>{let n={};return e.options.cwd&&(n.cwd=e.options.cwd),Array.isArray(e.options.expandDirectories)?n=r({},n,{files:e.options.expandDirectories}):"object"==typeof e.options.expandDirectories&&(n=r({},n,{},e.options.expandDirectories)),t(e.pattern,n)},b=(e,r)=>e.options.expandDirectories?w(e,r):[e.pattern],O=e=>e&&e.gitignore?a.sync({cwd:e.cwd,ignore:e.ignore}):l,P=e=>r=>{const{options:t}=e;return t.ignore&&Array.isArray(t.ignore)&&t.expandDirectories&&(t.ignore=c.sync(t.ignore)),{pattern:r,options:t}};module.exports=(async(e,r)=>{const t=m(e,r),[n,i]=await Promise.all([(async()=>r&&r.gitignore?a({cwd:r.cwd,ignore:r.ignore}):l)(),(async()=>{const e=await Promise.all(t.map(async e=>{const r=await b(e,c);return Promise.all(r.map(P(e)))}));return o(...e)})()]),p=await Promise.all(i.map(e=>s(e.pattern,e.options)));return o(...p).filter(e=>!n(f(e)))}),module.exports.sync=((e,r)=>{const t=m(e,r).reduce((e,r)=>{const t=b(r,c.sync).map(P(r));return e.concat(t)},[]),n=O(r);return t.reduce((e,r)=>o(e,s.sync(r.pattern,r.options)),[]).filter(e=>!n(e))}),module.exports.stream=((e,r)=>{const t=m(e,r).reduce((e,r)=>{const t=b(r,c.sync).map(P(r));return e.concat(t)},[]),n=O(r),o=new p(e=>!n(e)),a=new u;return i(t.map(e=>s.stream(e.pattern,e.options))).pipe(o).pipe(a)}),module.exports.generateGlobTasks=m,module.exports.hasMagic=((e,r)=>[].concat(e).some(e=>s.isDynamicPattern(e,r))),module.exports.gitignore=a; -},{"array-union":"1BFF","merge2":"l7XK","fast-glob":"cxdw","dir-glob":"jeKN","./gitignore":"XZNf","./stream-utils":"ZQTX"}],"Lwpb":[function(require,module,exports) { +},{"array-union":"fUgk","merge2":"l7XK","fast-glob":"cxdw","dir-glob":"K7HE","./gitignore":"XZNf","./stream-utils":"ZQTX"}],"Lwpb":[function(require,module,exports) { var e,t,n=require("fs"),r=require("./polyfills.js"),o=require("./legacy-streams.js"),i=require("./clone.js"),u=require("util");function c(){}"function"==typeof Symbol&&"function"==typeof Symbol.for?(e=Symbol.for("graceful-fs.queue"),t=Symbol.for("graceful-fs.previous")):(e="___graceful-fs.queue",t="___graceful-fs.previous");var f=c;if(u.debuglog?f=u.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(f=function(){var e=u.format.apply(u,arguments);e="GFS4: "+e.split(/\n/).join("\nGFS4: "),console.error(e)}),!global[e]){var a=[];Object.defineProperty(global,e,{get:function(){return a}}),n.close=function(e){function r(t,r){return e.call(n,t,function(e){e||s(),"function"==typeof r&&r.apply(this,arguments)})}return Object.defineProperty(r,t,{value:e}),r}(n.close),n.closeSync=function(e){function r(t){e.apply(n,arguments),s()}return Object.defineProperty(r,t,{value:e}),r}(n.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){f(global[e]),require("assert").equal(global[e].length,0)})}function p(e){r(e),e.gracefulify=p,e.createReadStream=function(t,n){return new e.ReadStream(t,n)},e.createWriteStream=function(t,n){return new e.WriteStream(t,n)};var t=e.readFile;e.readFile=function(e,n,r){"function"==typeof n&&(r=n,n=null);return function e(n,r,o){return t(n,r,function(t){!t||"EMFILE"!==t.code&&"ENFILE"!==t.code?("function"==typeof o&&o.apply(this,arguments),s()):l([e,[n,r,o]])})}(e,n,r)};var n=e.writeFile;e.writeFile=function(e,t,r,o){"function"==typeof r&&(o=r,r=null);return function e(t,r,o,i){return n(t,r,o,function(n){!n||"EMFILE"!==n.code&&"ENFILE"!==n.code?("function"==typeof i&&i.apply(this,arguments),s()):l([e,[t,r,o,i]])})}(e,t,r,o)};var i=e.appendFile;i&&(e.appendFile=function(e,t,n,r){"function"==typeof n&&(r=n,n=null);return function e(t,n,r,o){return i(t,n,r,function(i){!i||"EMFILE"!==i.code&&"ENFILE"!==i.code?("function"==typeof o&&o.apply(this,arguments),s()):l([e,[t,n,r,o]])})}(e,t,n,r)});var u=e.readdir;function c(t){return u.apply(e,t)}if(e.readdir=function(e,t,n){var r=[e];"function"!=typeof t?r.push(t):n=t;return r.push(function(e,t){t&&t.sort&&t.sort(),!e||"EMFILE"!==e.code&&"ENFILE"!==e.code?("function"==typeof n&&n.apply(this,arguments),s()):l([c,[r]])}),c(r)},"v0.8"===process.version.substr(0,4)){var f=o(e);m=f.ReadStream,g=f.WriteStream}var a=e.ReadStream;a&&(m.prototype=Object.create(a.prototype),m.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,function(t,n){t?(e.autoClose&&e.destroy(),e.emit("error",t)):(e.fd=n,e.emit("open",n),e.read())})});var y=e.WriteStream;y&&(g.prototype=Object.create(y.prototype),g.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,function(t,n){t?(e.destroy(),e.emit("error",t)):(e.fd=n,e.emit("open",n))})}),Object.defineProperty(e,"ReadStream",{get:function(){return m},set:function(e){m=e},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return g},set:function(e){g=e},enumerable:!0,configurable:!0});var d=m;Object.defineProperty(e,"FileReadStream",{get:function(){return d},set:function(e){d=e},enumerable:!0,configurable:!0});var b=g;function m(e,t){return this instanceof m?(a.apply(this,arguments),this):m.apply(Object.create(m.prototype),arguments)}function g(e,t){return this instanceof g?(y.apply(this,arguments),this):g.apply(Object.create(g.prototype),arguments)}Object.defineProperty(e,"FileWriteStream",{get:function(){return b},set:function(e){b=e},enumerable:!0,configurable:!0});var E=e.open;function v(e,t,n,r){return"function"==typeof n&&(r=n,n=null),function e(t,n,r,o){return E(t,n,r,function(i,u){!i||"EMFILE"!==i.code&&"ENFILE"!==i.code?("function"==typeof o&&o.apply(this,arguments),s()):l([e,[t,n,r,o]])})}(e,t,n,r)}return e.open=v,e}function l(t){f("ENQUEUE",t[0].name,t[1]),global[e].push(t)}function s(){var t=global[e].shift();t&&(f("RETRY",t[0].name,t[1]),t[0].apply(null,t[1]))}module.exports=p(i(n)),process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!n.__patched&&(module.exports=p(n),n.__patched=!0); },{"./polyfills.js":"yYAD","./legacy-streams.js":"6Gqd","./clone.js":"qvN9"}],"cEaB":[function(require,module,exports) { "use strict";const t=(t,e)=>(function(...o){return new(0,e.promiseModule)((r,n)=>{e.multiArgs?o.push((...t)=>{e.errorFirst?t[0]?n(t):(t.shift(),r(t)):r(t)}):e.errorFirst?o.push((t,e)=>{t?n(t):r(e)}):o.push(r),t.apply(this,o)})});module.exports=((e,o)=>{o=Object.assign({exclude:[/.+(Sync|Stream)$/],errorFirst:!0,promiseModule:Promise},o);const r=typeof e;if(null===e||"object"!==r&&"function"!==r)throw new TypeError(`Expected \`input\` to be a \`Function\` or \`Object\`, got \`${null===e?"null":r}\``);const n=t=>{const e=e=>"string"==typeof e?t===e:e.test(t);return o.include?o.include.some(e):!o.exclude.some(e)};let s;s="function"===r?function(...r){return o.excludeMain?e(...r):t(e,o).apply(this,r)}:Object.create(Object.getPrototypeOf(e));for(const u in e){const r=e[u];s[u]="function"==typeof r&&n(u)?t(r,o):r}return s}); @@ -644,25 +644,29 @@ var e,t,n=require("fs"),r=require("./polyfills.js"),o=require("./legacy-streams. "use strict";const e=(e,...o)=>new Promise(s=>{s(e(...o))});module.exports=e,module.exports.default=e; },{}],"JFMr":[function(require,module,exports) { "use strict";const e=require("p-try"),t=t=>{if(t<1)throw new TypeError("Expected `concurrency` to be a number from 1 and up");const n=[];let r=0;const o=()=>{r--,n.length>0&&n.shift()()},u=(t,n,...u)=>{r++;const s=e(t,...u);n(s),s.then(o,o)},s=(e,...o)=>new Promise(s=>((e,o,...s)=>{rr},pendingCount:{get:()=>n.length}}),s};module.exports=t,module.exports.default=t; -},{"p-try":"9c4t"}],"aEoA":[function(require,module,exports) { +},{"p-try":"9c4t"}],"D9Cf":[function(require,module,exports) { "use strict";const r=require("p-limit");class e extends Error{constructor(r){super(),this.value=r}}const t=async(r,e)=>e(await r),s=async r=>{const t=await Promise.all(r);if(!0===t[1])throw new e(t[0]);return!1},c=async(c,a,n)=>{n={concurrency:1/0,preserveOrder:!0,...n};const o=r(n.concurrency),i=[...c].map(r=>[r,o(t,r,a)]),u=r(n.preserveOrder?1:1/0);try{await Promise.all(i.map(r=>u(s,r)))}catch(l){if(l instanceof e)return l.value;throw l}};module.exports=c,module.exports.default=c; -},{"p-limit":"JFMr"}],"w/J0":[function(require,module,exports) { +},{"p-limit":"JFMr"}],"cXpw":[function(require,module,exports) { "use strict";const t=require("path"),e=require("fs"),{promisify:r}=require("util"),s=require("p-locate"),c=r(e.stat),i=r(e.lstat),o={directory:"isDirectory",file:"isFile"};function l({type:t}){if(!(t in o))throw new Error(`Invalid type specified: ${t}`)}const n=(t,e)=>void 0===t||e[o[t]]();module.exports=(async(e,r)=>{l(r={cwd:process.cwd(),type:"file",allowSymlinks:!0,...r});const o=r.allowSymlinks?c:i;return s(e,async e=>{try{const c=await o(t.resolve(r.cwd,e));return n(r.type,c)}catch(s){return!1}},r)}),module.exports.sync=((r,s)=>{l(s={cwd:process.cwd(),allowSymlinks:!0,type:"file",...s});const c=s.allowSymlinks?e.statSync:e.lstatSync;for(const e of r)try{const r=c(t.resolve(s.cwd,e));if(n(s.type,r))return e}catch(i){}}); -},{"p-locate":"aEoA"}],"x315":[function(require,module,exports) { +},{"p-locate":"D9Cf"}],"x315":[function(require,module,exports) { "use strict";const r=require("fs"),{promisify:e}=require("util"),t=e(r.access);module.exports=(async r=>{try{return await t(r),!0}catch(e){return!1}}),module.exports.sync=(e=>{try{return r.accessSync(e),!0}catch(t){return!1}}); -},{}],"KVNU":[function(require,module,exports) { +},{}],"Pl36":[function(require,module,exports) { "use strict";const e=require("path"),t=require("locate-path"),r=require("path-exists"),o=Symbol("findUp.stop");module.exports=(async(r,s={})=>{let n=e.resolve(s.cwd||"");const{root:c}=e.parse(n),i=[].concat(r),u=async e=>{if("function"!=typeof r)return t(i,e);const o=await r(e.cwd);return"string"==typeof o?t([o],e):o};for(;;){const t=await u({...s,cwd:n});if(t===o)return;if(t)return e.resolve(n,t);if(n===c)return;n=e.dirname(n)}}),module.exports.sync=((r,s={})=>{let n=e.resolve(s.cwd||"");const{root:c}=e.parse(n),i=[].concat(r),u=e=>{if("function"!=typeof r)return t.sync(i,e);const o=r(e.cwd);return"string"==typeof o?t.sync([o],e):o};for(;;){const t=u({...s,cwd:n});if(t===o)return;if(t)return e.resolve(n,t);if(n===c)return;n=e.dirname(n)}}),module.exports.exists=r,module.exports.sync.exists=r.sync,module.exports.stop=o; -},{"locate-path":"w/J0","path-exists":"x315"}],"4TiQ":[function(require,module,exports) { -"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.findRoot=v,exports.findRootSync=k,exports.NoPkgJsonFound=void 0;var e=p(require("@babel/runtime/regenerator")),r=p(require("@babel/runtime/helpers/esm/asyncToGenerator")),t=p(require("@babel/runtime/helpers/esm/classCallCheck")),n=p(require("@babel/runtime/helpers/esm/possibleConstructorReturn")),u=p(require("@babel/runtime/helpers/esm/getPrototypeOf")),a=p(require("@babel/runtime/helpers/esm/inherits")),o=p(require("@babel/runtime/helpers/esm/wrapNativeSuper")),i=f(require("find-up")),c=p(require("path")),s=p(require("fs-extra"));function f(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)){var n=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(e,t):{};n.get||n.set?Object.defineProperty(r,t,n):r[t]=e[t]}return r.default=e,r}function p(e){return e&&e.__esModule?e:{default:e}}var l=function(e){function r(e){var a;return(0,t.default)(this,r),(a=(0,n.default)(this,(0,u.default)(r).call(this,"No package.json could be found upwards from the directory ".concat(e)))).directory=e,a}return(0,a.default)(r,e),r}((0,o.default)(Error));function d(e,r){return b.apply(this,arguments)}function b(){return(b=(0,r.default)(e.default.mark(function r(t,n){var u;return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,s.default.readJson(c.default.join(t,"package.json"));case 3:if(u=e.sent,void 0===n.current&&(n.current=t),!u.workspaces&&!u.bolt){e.next=7;break}return e.abrupt("return",t);case 7:e.next=13;break;case 9:if(e.prev=9,e.t0=e.catch(0),"ENOENT"===e.t0.code){e.next=13;break}throw e.t0;case 13:case"end":return e.stop()}},r,null,[[0,9]])}))).apply(this,arguments)}function h(e){return y.apply(this,arguments)}function y(){return(y=(0,r.default)(e.default.mark(function r(t){return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.default.exists(c.default.join(t,"pnpm-workspace.yaml"));case 2:if(!e.sent){e.next=5;break}return e.abrupt("return",t);case 5:case"end":return e.stop()}},r)}))).apply(this,arguments)}function v(e){return w.apply(this,arguments)}function w(){return(w=(0,r.default)(e.default.mark(function r(t){var n,u;return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n={current:void 0},e.next=3,(0,i.default)(function(e){return Promise.all([d(e,n),h(e)]).then(function(e){return e.find(function(e){return e})})},{cwd:t,type:"directory"});case 3:if(u=e.sent,void 0!==n.current){e.next=6;break}throw new l(t);case 6:if(void 0!==u){e.next=8;break}return e.abrupt("return",n.current);case 8:return e.abrupt("return",u);case 9:case"end":return e.stop()}},r)}))).apply(this,arguments)}function m(e,r){try{var t=s.default.readJsonSync(c.default.join(e,"package.json"));if(void 0===r.current&&(r.current=e),t.workspaces||t.bolt)return e}catch(n){if("ENOENT"!==n.code)throw n}}function x(e){if(s.default.existsSync(c.default.join(e,"pnpm-workspace.yaml")))return e}function k(e){var r={current:void 0},t=(0,i.sync)(function(e){return[m(e,r),x(e)].find(function(e){return e})},{cwd:e,type:"directory"});if(void 0===r.current)throw new l(e);return void 0===t?r.current:t}exports.NoPkgJsonFound=l; -},{"@babel/runtime/regenerator":"/fRJ","@babel/runtime/helpers/esm/asyncToGenerator":"Bx41","@babel/runtime/helpers/esm/classCallCheck":"dJvD","@babel/runtime/helpers/esm/possibleConstructorReturn":"PlB2","@babel/runtime/helpers/esm/getPrototypeOf":"d/yJ","@babel/runtime/helpers/esm/inherits":"bN+3","@babel/runtime/helpers/esm/wrapNativeSuper":"kGMm","find-up":"KVNU","fs-extra":"qdgD"}],"vf/d":[function(require,module,exports) { -"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=e(require("@babel/runtime/regenerator")),a=e(require("@babel/runtime/helpers/asyncToGenerator")),t=e(require("@babel/runtime/helpers/classCallCheck")),n=e(require("@babel/runtime/helpers/possibleConstructorReturn")),o=e(require("@babel/runtime/helpers/getPrototypeOf")),s=e(require("@babel/runtime/helpers/inherits")),c=e(require("@babel/runtime/helpers/wrapNativeSuper")),p=e(require("fs-extra")),i=e(require("path")),l=require("globby"),u=e(l),k=require("read-yaml-file"),g=e(k),b=require("@manypkg/find-root"),f=function(e){function r(e){var a;return t(this,r),(a=n(this,o(r).call(this,'The following package.jsons are missing the "name" field:\n'.concat(e.join("\n"))))).directories=e,a}return s(r,e),r}(c(Error));function y(e){return h.apply(this,arguments)}function h(){return(h=a(r.mark(function e(a){var t,n,o,s,c,l,k,y;return r.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,b.findRoot(a);case 2:return t=e.sent,e.next=5,p.readJson(i.join(t,"package.json"));case 5:if(!(n=e.sent).workspaces){e.next=10;break}Array.isArray(n.workspaces)?o={type:"yarn",packageGlobs:n.workspaces}:n.workspaces.packages&&(o={type:"yarn",packageGlobs:n.workspaces.packages}),e.next=25;break;case 10:if(!n.bolt||!n.bolt.workspaces){e.next=14;break}o={type:"bolt",packageGlobs:n.bolt.workspaces},e.next=25;break;case 14:return e.prev=14,e.next=17,g(i.join(t,"pnpm-workspace.yaml"));case 17:(s=e.sent)&&s.packages&&(o={type:"pnpm",packageGlobs:s.packages}),e.next=25;break;case 21:if(e.prev=21,e.t0=e.catch(14),"ENOENT"===e.t0.code){e.next=25;break}throw e.t0;case 25:if(o){e.next=30;break}if(c={dir:t,packageJson:n},n.name){e.next=29;break}throw new f(["package.json"]);case 29:return e.abrupt("return",{tool:"root",root:c,packages:[c]});case 30:return e.next=32,u(o.packageGlobs,{cwd:t,onlyDirectories:!0,absolute:!0,expandDirectories:!1,ignore:["**/node_modules"]});case 32:return l=e.sent,k=[],e.next=36,Promise.all(l.sort().map(function(e){return p.readJson(i.join(e,"package.json")).then(function(r){return r.name||k.push(i.relative(t,i.join(e,"package.json"))),{packageJson:r,dir:e}}).catch(function(e){if("ENOENT"===e.code)return null;throw e})}));case 36:if(e.t1=function(e){return e},y=e.sent.filter(e.t1),0===k.length){e.next=41;break}throw k.sort(),new f(k);case 41:return e.abrupt("return",{tool:o.type,root:{dir:t,packageJson:n},packages:y});case 42:case"end":return e.stop()}},e,null,[[14,21]])}))).apply(this,arguments)}function w(e){var r,a=b.findRootSync(e),t=p.readJsonSync(i.join(a,"package.json"));if(t.workspaces)Array.isArray(t.workspaces)?r={type:"yarn",packageGlobs:t.workspaces}:t.workspaces.packages&&(r={type:"yarn",packageGlobs:t.workspaces.packages});else if(t.bolt&&t.bolt.workspaces)r={type:"bolt",packageGlobs:t.bolt.workspaces};else try{var n=k.sync(i.join(a,"pnpm-workspace.yaml"));n&&n.packages&&(r={type:"pnpm",packageGlobs:n.packages})}catch(g){if("ENOENT"!==g.code)throw g}if(!r){var o={dir:a,packageJson:t};if(!t.name)throw new f(["package.json"]);return{tool:"root",root:o,packages:[o]}}var s=l.sync(r.packageGlobs,{cwd:a,onlyDirectories:!0,absolute:!0,expandDirectories:!1,ignore:["**/node_modules"]}),c=[],u=s.sort().map(function(e){try{var r=p.readJsonSync(i.join(e,"package.json"));return r.name||c.push(i.relative(a,i.join(e,"package.json"))),{packageJson:r,dir:e}}catch(g){if("ENOENT"===g.code)return null;throw g}}).filter(function(e){return e});if(0!==c.length)throw c.sort(),new f(c);return{tool:r.type,root:{dir:a,packageJson:t},packages:u}}exports.PackageJsonMissingNameError=f,exports.getPackages=y,exports.getPackagesSync=w; +},{"locate-path":"cXpw","path-exists":"x315"}],"4TiQ":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.findRoot=k,exports.findRootSync=N,exports.NoPkgJsonFound=void 0;var e=l(require("@babel/runtime/regenerator")),r=l(require("@babel/runtime/helpers/esm/asyncToGenerator")),t=l(require("@babel/runtime/helpers/esm/classCallCheck")),n=l(require("@babel/runtime/helpers/esm/possibleConstructorReturn")),u=l(require("@babel/runtime/helpers/esm/getPrototypeOf")),a=l(require("@babel/runtime/helpers/esm/inherits")),o=l(require("@babel/runtime/helpers/esm/wrapNativeSuper")),c=f(require("find-up")),i=l(require("path")),s=l(require("fs-extra"));function f(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)){var n=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(e,t):{};n.get||n.set?Object.defineProperty(r,t,n):r[t]=e[t]}return r.default=e,r}function l(e){return e&&e.__esModule?e:{default:e}}var p=function(e){function r(e){var a;return(0,t.default)(this,r),(a=(0,n.default)(this,(0,u.default)(r).call(this,"No package.json could be found upwards from the directory ".concat(e)))).directory=e,a}return(0,a.default)(r,e),r}((0,o.default)(Error));function d(e,r){return b.apply(this,arguments)}function b(){return(b=(0,r.default)(e.default.mark(function r(t,n){var u;return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,s.default.readJson(i.default.join(t,"package.json"));case 3:if(u=e.sent,void 0===n.current&&(n.current=t),!u.workspaces&&!u.bolt){e.next=7;break}return e.abrupt("return",t);case 7:e.next=13;break;case 9:if(e.prev=9,e.t0=e.catch(0),"ENOENT"===e.t0.code){e.next=13;break}throw e.t0;case 13:case"end":return e.stop()}},r,null,[[0,9]])}))).apply(this,arguments)}function h(e){return y.apply(this,arguments)}function y(){return(y=(0,r.default)(e.default.mark(function r(t){return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,s.default.readJson(i.default.join(t,"lerna.json"));case 3:if(!0===e.sent.useWorkspaces){e.next=6;break}return e.abrupt("return",t);case 6:e.next=12;break;case 8:if(e.prev=8,e.t0=e.catch(0),"ENOENT"===e.t0.code){e.next=12;break}throw e.t0;case 12:case"end":return e.stop()}},r,null,[[0,8]])}))).apply(this,arguments)}function v(e){return w.apply(this,arguments)}function w(){return(w=(0,r.default)(e.default.mark(function r(t){return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.default.exists(i.default.join(t,"pnpm-workspace.yaml"));case 2:if(!e.sent){e.next=5;break}return e.abrupt("return",t);case 5:case"end":return e.stop()}},r)}))).apply(this,arguments)}function k(e){return x.apply(this,arguments)}function x(){return(x=(0,r.default)(e.default.mark(function r(t){var n,u;return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n={current:void 0},e.next=3,(0,c.default)(function(e){return Promise.all([h(e),d(e,n),v(e)]).then(function(e){return e.find(function(e){return e})})},{cwd:t,type:"directory"});case 3:if(u=e.sent,void 0!==n.current){e.next=6;break}throw new p(t);case 6:if(void 0!==u){e.next=8;break}return e.abrupt("return",n.current);case 8:return e.abrupt("return",u);case 9:case"end":return e.stop()}},r)}))).apply(this,arguments)}function m(e,r){try{var t=s.default.readJsonSync(i.default.join(e,"package.json"));if(void 0===r.current&&(r.current=e),t.workspaces||t.bolt)return e}catch(n){if("ENOENT"!==n.code)throw n}}function j(e){try{if(!0!==s.default.readJsonSync(i.default.join(e,"lerna.json")).useWorkspaces)return e}catch(r){if("ENOENT"!==r.code)throw r}}function O(e){if(s.default.existsSync(i.default.join(e,"pnpm-workspace.yaml")))return e}function N(e){var r={current:void 0},t=(0,c.sync)(function(e){return[j(e),m(e,r),O(e)].find(function(e){return e})},{cwd:e,type:"directory"});if(void 0===r.current)throw new p(e);return void 0===t?r.current:t}exports.NoPkgJsonFound=p; +},{"@babel/runtime/regenerator":"/fRJ","@babel/runtime/helpers/esm/asyncToGenerator":"Bx41","@babel/runtime/helpers/esm/classCallCheck":"dJvD","@babel/runtime/helpers/esm/possibleConstructorReturn":"PlB2","@babel/runtime/helpers/esm/getPrototypeOf":"d/yJ","@babel/runtime/helpers/esm/inherits":"bN+3","@babel/runtime/helpers/esm/wrapNativeSuper":"kGMm","find-up":"Pl36","fs-extra":"qdgD"}],"vf/d":[function(require,module,exports) { +"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=e(require("@babel/runtime/regenerator")),a=e(require("@babel/runtime/helpers/asyncToGenerator")),t=e(require("@babel/runtime/helpers/classCallCheck")),n=e(require("@babel/runtime/helpers/possibleConstructorReturn")),o=e(require("@babel/runtime/helpers/getPrototypeOf")),s=e(require("@babel/runtime/helpers/inherits")),c=e(require("@babel/runtime/helpers/wrapNativeSuper")),p=e(require("fs-extra")),i=e(require("path")),l=require("globby"),u=e(l),k=require("read-yaml-file"),g=e(k),b=require("@manypkg/find-root"),f=function(e){function r(e){var a;return t(this,r),(a=n(this,o(r).call(this,'The following package.jsons are missing the "name" field:\n'.concat(e.join("\n"))))).directories=e,a}return s(r,e),r}(c(Error));function y(e){return h.apply(this,arguments)}function h(){return(h=a(r.mark(function e(a){var t,n,o,s,c,l,k,y,h;return r.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,b.findRoot(a);case 2:return t=e.sent,e.next=5,p.readJson(i.join(t,"package.json"));case 5:if(!(n=e.sent).workspaces){e.next=10;break}Array.isArray(n.workspaces)?o={type:"yarn",packageGlobs:n.workspaces}:n.workspaces.packages&&(o={type:"yarn",packageGlobs:n.workspaces.packages}),e.next=37;break;case 10:if(!n.bolt||!n.bolt.workspaces){e.next=14;break}o={type:"bolt",packageGlobs:n.bolt.workspaces},e.next=37;break;case 14:return e.prev=14,e.next=17,g(i.join(t,"pnpm-workspace.yaml"));case 17:(s=e.sent)&&s.packages&&(o={type:"pnpm",packageGlobs:s.packages}),e.next=25;break;case 21:if(e.prev=21,e.t0=e.catch(14),"ENOENT"===e.t0.code){e.next=25;break}throw e.t0;case 25:if(o){e.next=37;break}return e.prev=26,e.next=29,p.readJson(i.join(t,"lerna.json"));case 29:(c=e.sent)&&(o={type:"lerna",packageGlobs:c.packages||["packages/*"]}),e.next=37;break;case 33:if(e.prev=33,e.t1=e.catch(26),"ENOENT"===e.t1.code){e.next=37;break}throw e.t1;case 37:if(o){e.next=42;break}if(l={dir:t,packageJson:n},n.name){e.next=41;break}throw new f(["package.json"]);case 41:return e.abrupt("return",{tool:"root",root:l,packages:[l]});case 42:return e.next=44,u(o.packageGlobs,{cwd:t,onlyDirectories:!0,absolute:!0,expandDirectories:!1,ignore:["**/node_modules"]});case 44:return k=e.sent,y=[],e.next=48,Promise.all(k.sort().map(function(e){return p.readJson(i.join(e,"package.json")).then(function(r){return r.name||y.push(i.relative(t,i.join(e,"package.json"))),{packageJson:r,dir:e}}).catch(function(e){if("ENOENT"===e.code)return null;throw e})}));case 48:if(e.t2=function(e){return e},h=e.sent.filter(e.t2),0===y.length){e.next=53;break}throw y.sort(),new f(y);case 53:return e.abrupt("return",{tool:o.type,root:{dir:t,packageJson:n},packages:h});case 54:case"end":return e.stop()}},e,null,[[14,21],[26,33]])}))).apply(this,arguments)}function d(e){var r,a=b.findRootSync(e),t=p.readJsonSync(i.join(a,"package.json"));if(t.workspaces)Array.isArray(t.workspaces)?r={type:"yarn",packageGlobs:t.workspaces}:t.workspaces.packages&&(r={type:"yarn",packageGlobs:t.workspaces.packages});else if(t.bolt&&t.bolt.workspaces)r={type:"bolt",packageGlobs:t.bolt.workspaces};else{try{var n=k.sync(i.join(a,"pnpm-workspace.yaml"));n&&n.packages&&(r={type:"pnpm",packageGlobs:n.packages})}catch(y){if("ENOENT"!==y.code)throw y}if(!r)try{var o=p.readJsonSync(i.join(a,"lerna.json"));o&&(r={type:"lerna",packageGlobs:o.packages||["packages/*"]})}catch(y){if("ENOENT"!==y.code)throw y}}if(!r){var s={dir:a,packageJson:t};if(!t.name)throw new f(["package.json"]);return{tool:"root",root:s,packages:[s]}}var c=l.sync(r.packageGlobs,{cwd:a,onlyDirectories:!0,absolute:!0,expandDirectories:!1,ignore:["**/node_modules"]}),u=[],g=c.sort().map(function(e){try{var r=p.readJsonSync(i.join(e,"package.json"));return r.name||u.push(i.relative(a,i.join(e,"package.json"))),{packageJson:r,dir:e}}catch(y){if("ENOENT"===y.code)return null;throw y}}).filter(function(e){return e});if(0!==u.length)throw u.sort(),new f(u);return{tool:r.type,root:{dir:a,packageJson:t},packages:g}}exports.PackageJsonMissingNameError=f,exports.getPackages=y,exports.getPackagesSync=d; },{"@babel/runtime/regenerator":"/fRJ","@babel/runtime/helpers/asyncToGenerator":"KfJe","@babel/runtime/helpers/classCallCheck":"wsKa","@babel/runtime/helpers/possibleConstructorReturn":"YBFR","@babel/runtime/helpers/getPrototypeOf":"ktv5","@babel/runtime/helpers/inherits":"zss1","@babel/runtime/helpers/wrapNativeSuper":"Pwnu","fs-extra":"qdgD","globby":"/xfT","read-yaml-file":"R9us","@manypkg/find-root":"4TiQ"}],"9z3N":[function(require,module,exports) { "use strict";"production"===process.env.NODE_ENV?module.exports=require("./get-packages.cjs.prod.js"):module.exports=require("./get-packages.cjs.dev.js"); },{"./get-packages.cjs.prod.js":"vf/d","./get-packages.cjs.dev.js":"vf/d"}],"UnXq":[function(require,module,exports) { "use strict";function e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function t(t){for(var n=1;n[e.dir,e.packageJson.version]))}async function l(e,t){let{packages:r}=await u.getPackages(e),n=new Set;for(let i of r){t.get(i.dir)!==i.packageJson.version&&n.add(i)}return[...n]}function d(e,t){let r,n,c=i.default().use(o.default).parse(e),u=exports.BumpLevels.dep,p=c.children;for(let i=0;i{i+=e.toString()},stderr:e=>{o+=e.toString()}}},n)),stdout:i,stderr:o}}function g(e,t){return e.private===t.private?t.highestLevel-e.highestLevel:e.private?1:-1}exports.BumpLevels={dep:0,patch:1,minor:2,major:3},exports.getVersionsByDirectory=p,exports.getChangedPackages=l,exports.getChangelogEntry=d,exports.execWithOutput=f,exports.sortTheThings=g; },{"unified":"0GHJ","remark-parse":"VtFD","remark-stringify":"KZSx","mdast-util-to-string":"jPGb","@actions/exec":"AjbX","@manypkg/get-packages":"9z3N"}],"pH2w":[function(require,module,exports) { "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=require("@actions/exec"),t=require("./utils");exports.setupUser=(async()=>{await e.exec("git",["config","--global","user.name",'"github-actions[bot]"']),await e.exec("git",["config","--global","user.email",'"github-actions[bot]@users.noreply.github.com"'])}),exports.pullBranch=(async t=>{await e.exec("git",["pull","origin",t])}),exports.push=(async(t,{force:i}={})=>{await e.exec("git",["push","origin",`HEAD:${t}`,i&&"--force"].filter(Boolean))}),exports.pushTags=(async()=>{await e.exec("git",["push","origin","--tags"])}),exports.switchToMaybeExistingBranch=(async i=>{let{stderr:a}=await t.execWithOutput("git",["checkout",i],{ignoreReturnCode:!0});!a.toString().includes(`Switched to a new branch '${i}'`)&&await e.exec("git",["checkout","-b",i])}),exports.reset=(async(t,i="hard")=>{await e.exec("git",["reset",`--${i}`,t])}),exports.commitAll=(async t=>{await e.exec("git",["add","."]),await e.exec("git",["commit","-m",t])}),exports.checkIfClean=(async()=>{const{stdout:e}=await t.execWithOutput("git",["status","--porcelain"]);return!e.length}); -},{"@actions/exec":"AjbX","./utils":"UnXq"}],"Od13":[function(require,module,exports) { +},{"@actions/exec":"AjbX","./utils":"UnXq"}],"8h+k":[function(require,module,exports) { +const{hasOwnProperty:e}=Object.prototype,t="undefined"!=typeof process&&"win32"===process.platform?"\r\n":"\n",c=(e,n)=>{const r=[];let i="";"string"==typeof n?n={section:n,whitespace:!1}:(n=n||Object.create(null)).whitespace=!0===n.whitespace;const l=n.whitespace?" = ":"=";for(const c of Object.keys(e)){const o=e[c];if(o&&Array.isArray(o))for(const e of o)i+=s(c+"[]")+l+s(e)+"\n";else o&&"object"==typeof o?r.push(c):i+=s(c)+l+s(o)+t}n.section&&i.length&&(i="["+s(n.section)+"]"+t+i);for(const s of r){const r=o(s).join("\\."),l=(n.section?n.section+".":"")+r,{whitespace:a}=n,f=c(e[s],{section:l,whitespace:a});i.length&&f.length&&(i+=t),i+=f}return i},o=e=>e.replace(/\1/g,"LITERAL\\1LITERAL").replace(/\\\./g,"").split(/\./).map(e=>e.replace(/\1/g,"\\.").replace(/\2LITERAL\\1LITERAL\2/g,"")),n=t=>{const c=Object.create(null);let n=c,r=null;const s=/^\[([^\]]*)\]$|^([^=]+)(=(.*))?$/i,l=t.split(/[\r\n]+/g);for(const o of l){if(!o||o.match(/^\s*[;#]/))continue;const t=o.match(s);if(!t)continue;if(void 0!==t[1]){if("__proto__"===(r=i(t[1]))){n=Object.create(null);continue}n=c[r]=c[r]||Object.create(null);continue}const l=i(t[2]),a=l.length>2&&"[]"===l.slice(-2),f=a?l.slice(0,-2):l;if("__proto__"===f)continue;const p=!t[3]||i(t[4]),h="true"===p||"false"===p||"null"===p?JSON.parse(p):p;a&&(e.call(n,f)?Array.isArray(n[f])||(n[f]=[n[f]]):n[f]=[]),Array.isArray(n[f])?n[f].push(h):n[f]=h}const a=[];for(const i of Object.keys(c)){if(!e.call(c,i)||"object"!=typeof c[i]||Array.isArray(c[i]))continue;const t=o(i);let n=c;const r=t.pop(),s=r.replace(/\\\./g,".");for(const c of t)"__proto__"!==c&&(e.call(n,c)&&"object"==typeof n[c]||(n[c]=Object.create(null)),n=n[c]);n===c&&s===r||(n[s]=c[i],a.push(i))}for(const e of a)delete c[e];return c},r=e=>'"'===e.charAt(0)&&'"'===e.slice(-1)||"'"===e.charAt(0)&&"'"===e.slice(-1),s=e=>"string"!=typeof e||e.match(/[=\r\n]/)||e.match(/^\[/)||e.length>1&&r(e)||e!==e.trim()?JSON.stringify(e):e.replace(/;/g,"\\;").replace(/#/g,"\\#"),i=(e,t)=>{if(e=(e||"").trim(),!r(e)){let t=!1,c="";for(let o=0,n=e.length;o{const n=`${e.HOME}/.npmrc`;if(r.default.existsSync(n)){console.log(`Found existing user .npmrc file at ${n}`);const o=t.parse(r.default.readFileSync(n,"utf-8"));let i=!1;for(const[e,n]of Object.entries(o))/\/\/(.*)authToken$/.test(e)&&Boolean(n)&&(console.log("The .npmrc file has an authToken"),i=!0);if(!i){if(console.log("The .npmrc file does not have an authToken defined, creating one using the `NPM_TOKEN` environment variable"),!e.NPM_TOKEN)throw new Error("Missing NPM authToken. Please make sure you have the `NPM_TOKEN` environment variable defined.");o["//registry.npmjs.org/:_authToken"]=e.NPM_TOKEN,r.default.writeFileSync(n,t.stringify(o))}}else{if(console.log("No user .npmrc file found, creating one"),!e.NPM_TOKEN)throw new Error("Missing NPM authToken. Please make sure you have the `NPM_TOKEN` environment variable defined.");r.default.writeFileSync(n,t.stringify({"//registry.npmjs.org/:_authToken":e.NPM_TOKEN}))}}); +},{"ini":"8h+k"}],"Od13":[function(require,module,exports) { "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Context=void 0;const e=require("fs"),s=require("os");class r{constructor(){if(this.payload={},process.env.GITHUB_EVENT_PATH)if(e.existsSync(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse(e.readFileSync(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{const e=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${e} does not exist${s.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10)}get issue(){const e=this.payload;return Object.assign(Object.assign({},this.repo),{number:(e.issue||e.pull_request||e).number})}get repo(){if(process.env.GITHUB_REPOSITORY){const[e,s]=process.env.GITHUB_REPOSITORY.split("/");return{owner:e,repo:s}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}}exports.Context=r; },{}],"X6hf":[function(require,module,exports) { "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=require("url");function r(r){let o,p,s="https:"===r.protocol;return t(r)?o:((p=s?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY)&&(o=e.parse(p)),o)}function t(e){if(!e.hostname)return!1;let r,t=process.env.no_proxy||process.env.NO_PROXY||"";if(!t)return!1;e.port?r=Number(e.port):"http:"===e.protocol?r=80:"https:"===e.protocol&&(r=443);let o=[e.hostname.toUpperCase()];"number"==typeof r&&o.push(`${o[0]}:${r}`);for(let p of t.split(",").map(e=>e.trim().toUpperCase()).filter(e=>e))if(o.some(e=>e===p))return!0;return!1}exports.getProxyUrl=r,exports.checkBypass=t; @@ -766,13 +770,131 @@ var e;exports=module.exports=f,e="object"==typeof process&&process.env&&process. "use strict";const e=require("universalify").fromCallback,i=require("graceful-fs"),r=require("path"),t=require("../mkdirs"),n=require("../path-exists").pathExists;function u(e,u,s,c){"function"==typeof s&&(c=s,s="utf8");const o=r.dirname(e);n(o,(r,n)=>r?c(r):n?i.writeFile(e,u,s,c):void t.mkdirs(o,r=>{if(r)return c(r);i.writeFile(e,u,s,c)}))}function s(e,...n){const u=r.dirname(e);if(i.existsSync(u))return i.writeFileSync(e,...n);t.mkdirsSync(u),i.writeFileSync(e,...n)}module.exports={outputFile:e(u),outputFileSync:s}; },{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"yL1W","../path-exists":"JIsf"}],"pksk":[function(require,module,exports) { "use strict";module.exports=Object.assign({},require("./fs"),require("./copy-sync"),require("./copy"),require("./empty"),require("./ensure"),require("./json"),require("./mkdirs"),require("./move-sync"),require("./move"),require("./output"),require("./path-exists"),require("./remove"));const e=require("fs");Object.getOwnPropertyDescriptor(e,"promises")&&Object.defineProperty(module.exports,"promises",{get:()=>e.promises}); -},{"./fs":"aZze","./copy-sync":"ExQW","./copy":"bdeI","./empty":"yDfq","./ensure":"oKmd","./json":"bgjx","./mkdirs":"yL1W","./move-sync":"uw2S","./move":"ogUT","./output":"m/QK","./path-exists":"JIsf","./remove":"KTnY"}],"8mvI":[function(require,module,exports) { +},{"./fs":"aZze","./copy-sync":"ExQW","./copy":"bdeI","./empty":"yDfq","./ensure":"oKmd","./json":"bgjx","./mkdirs":"yL1W","./move-sync":"uw2S","./move":"ogUT","./output":"m/QK","./path-exists":"JIsf","./remove":"KTnY"}],"3IpR":[function(require,module,exports) { +var e=require("../helpers/typeof"),r=require("./assertThisInitialized");function t(t,i){return!i||"object"!==e(i)&&"function"!=typeof i?r(t):i}module.exports=t; +},{"../helpers/typeof":"JXeY","./assertThisInitialized":"QrBC"}],"OMyF":[function(require,module,exports) { +var e=require("./setPrototypeOf");function r(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");r.prototype=Object.create(t&&t.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),t&&e(r,t)}module.exports=r; +},{"./setPrototypeOf":"+4Fj"}],"5KU1":[function(require,module,exports) { +var e=require("./setPrototypeOf"),t=require("./isNativeReflectConstruct");function r(o,u,n){return t()?module.exports=r=Reflect.construct:module.exports=r=function(t,r,o){var u=[null];u.push.apply(u,r);var n=new(Function.bind.apply(t,u));return o&&e(n,o.prototype),n},r.apply(null,arguments)}module.exports=r; +},{"./setPrototypeOf":"+4Fj","./isNativeReflectConstruct":"xVKV"}],"o2EI":[function(require,module,exports) { +var e=require("./getPrototypeOf"),r=require("./setPrototypeOf"),t=require("./isNativeFunction"),o=require("./construct");function n(u){var i="function"==typeof Map?new Map:void 0;return module.exports=n=function(n){if(null===n||!t(n))return n;if("function"!=typeof n)throw new TypeError("Super expression must either be null or a function");if(void 0!==i){if(i.has(n))return i.get(n);i.set(n,u)}function u(){return o(n,arguments,e(this).constructor)}return u.prototype=Object.create(n.prototype,{constructor:{value:u,enumerable:!1,writable:!0,configurable:!0}}),r(u,n)},n(u)}module.exports=n; +},{"./getPrototypeOf":"ktv5","./setPrototypeOf":"+4Fj","./isNativeFunction":"QJRy","./construct":"5KU1"}],"CweU":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),t=require("./win32").invalidWin32Path,n=parseInt("0777",8);function i(o,s,c,a){if("function"==typeof s?(c=s,s={}):s&&"object"==typeof s||(s={mode:s}),"win32"===process.platform&&t(o)){const e=new Error(o+" contains invalid WIN32 path characters.");return e.code="EINVAL",c(e)}let u=s.mode;const l=s.fs||e;void 0===u&&(u=n&~process.umask()),a||(a=null),c=c||function(){},o=r.resolve(o),l.mkdir(o,u,e=>{if(!e)return c(null,a=a||o);switch(e.code){case"ENOENT":if(r.dirname(o)===o)return c(e);i(r.dirname(o),s,(e,r)=>{e?c(e,r):i(o,s,c,r)});break;default:l.stat(o,(r,t)=>{r||!t.isDirectory()?c(e,a):c(null,a)})}})}module.exports=i; +},{"graceful-fs":"Bwvh","./win32":"kidm"}],"USy4":[function(require,module,exports) { +"use strict";const r=require("graceful-fs"),e=require("path"),t=require("./win32").invalidWin32Path,o=parseInt("0777",8);function i(c,n,s){n&&"object"==typeof n||(n={mode:n});let a=n.mode;const d=n.fs||r;if("win32"===process.platform&&t(c)){const r=new Error(c+" contains invalid WIN32 path characters.");throw r.code="EINVAL",r}void 0===a&&(a=o&~process.umask()),s||(s=null),c=e.resolve(c);try{d.mkdirSync(c,a),s=s||c}catch(l){if("ENOENT"===l.code){if(e.dirname(c)===c)throw l;s=i(e.dirname(c),n,s),i(c,n,s)}else{let r;try{r=d.statSync(c)}catch(f){throw l}if(!r.isDirectory())throw l}}return s}module.exports=i; +},{"graceful-fs":"Bwvh","./win32":"kidm"}],"qr1A":[function(require,module,exports) { +"use strict";const r=require("universalify").fromCallback,e=r(require("./mkdirs")),i=require("./mkdirs-sync");module.exports={mkdirs:e,mkdirsSync:i,mkdirp:e,mkdirpSync:i,ensureDir:e,ensureDirSync:i}; +},{"universalify":"oklw","./mkdirs":"CweU","./mkdirs-sync":"USy4"}],"ezm7":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),n=require("../mkdirs").mkdirsSync,t=require("../util/utimes.js").utimesMillisSync,i=require("../util/stat");function c(e,r,n){"function"==typeof n&&(n={filter:n}),(n=n||{}).clobber=!("clobber"in n)||!!n.clobber,n.overwrite="overwrite"in n?!!n.overwrite:n.clobber,n.preserveTimestamps&&"ia32"===process.arch&&console.warn("fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269");const{srcStat:t,destStat:c}=i.checkPathsSync(e,r,"copy");return i.checkParentPathsSync(e,t,r,"copy"),o(c,e,r,n)}function o(t,i,c,o){if(o.filter&&!o.filter(i,c))return;const u=r.dirname(c);return e.existsSync(u)||n(u),s(t,i,c,o)}function s(e,r,n,t){if(!t.filter||t.filter(r,n))return u(e,r,n,t)}function u(r,n,t,i){const c=(i.dereference?e.statSync:e.lstatSync)(n);return c.isDirectory()?d(c,r,n,t,i):c.isFile()||c.isCharacterDevice()||c.isBlockDevice()?y(c,r,n,t,i):c.isSymbolicLink()?h(r,n,t,i):void 0}function y(e,r,n,t,i){return r?f(e,n,t,i):a(e,n,t,i)}function f(r,n,t,i){if(i.overwrite)return e.unlinkSync(t),a(r,n,t,i);if(i.errorOnExist)throw new Error(`'${t}' already exists`)}function a(r,n,i,c){return"function"==typeof e.copyFileSync?(e.copyFileSync(n,i),e.chmodSync(i,r.mode),c.preserveTimestamps?t(i,r.atime,r.mtime):void 0):l(r,n,i,c)}function l(r,n,t,i){const c=require("../util/buffer")(65536),o=e.openSync(n,"r"),s=e.openSync(t,"w",r.mode);let u=0;for(;up(e,r,n,t))}function p(e,n,t,c){const o=r.join(n,e),u=r.join(t,e),{destStat:y}=i.checkPathsSync(o,u,"copy");return s(y,o,u,c)}function h(n,t,c,o){let s=e.readlinkSync(t);if(o.dereference&&(s=r.resolve(process.cwd(),s)),n){let n;try{n=e.readlinkSync(c)}catch(u){if("EINVAL"===u.code||"UNKNOWN"===u.code)return e.symlinkSync(s,c);throw u}if(o.dereference&&(n=r.resolve(process.cwd(),n)),i.isSrcSubdir(s,n))throw new Error(`Cannot copy '${s}' to a subdirectory of itself, '${n}'.`);if(e.statSync(c).isDirectory()&&i.isSrcSubdir(n,s))throw new Error(`Cannot overwrite '${n}' with '${s}'.`);return w(s,c)}return e.symlinkSync(s,c)}function w(r,n){return e.unlinkSync(n),e.symlinkSync(r,n)}module.exports=c; +},{"graceful-fs":"Bwvh","../mkdirs":"qr1A","../util/utimes.js":"vpTv","../util/stat":"24w/","../util/buffer":"Plmg"}],"ygTg":[function(require,module,exports) { +"use strict";module.exports={copySync:require("./copy-sync")}; +},{"./copy-sync":"ezm7"}],"vEWP":[function(require,module,exports) { +"use strict";const s=require("universalify").fromPromise,e=require("../fs");function t(s){return e.access(s).then(()=>!0).catch(()=>!1)}module.exports={pathExists:s(t),pathExistsSync:e.existsSync}; +},{"universalify":"oklw","../fs":"4cPb"}],"x98n":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),t=require("../mkdirs").mkdirs,i=require("../path-exists").pathExists,n=require("../util/utimes").utimesMillis,o=require("../util/stat");function c(e,r,t,i){"function"!=typeof t||i?"function"==typeof t&&(t={filter:t}):(i=t,t={}),i=i||function(){},(t=t||{}).clobber=!("clobber"in t)||!!t.clobber,t.overwrite="overwrite"in t?!!t.overwrite:t.clobber,t.preserveTimestamps&&"ia32"===process.arch&&console.warn("fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269"),o.checkPaths(e,r,"copy",(n,c)=>{if(n)return i(n);const{srcStat:a,destStat:f}=c;o.checkParentPaths(e,a,r,"copy",n=>n?i(n):t.filter?u(s,f,e,r,t,i):s(f,e,r,t,i))})}function s(e,n,o,c,s){const u=r.dirname(o);i(u,(r,i)=>r?s(r):i?a(e,n,o,c,s):void t(u,r=>r?s(r):a(e,n,o,c,s)))}function u(e,r,t,i,n,o){Promise.resolve(n.filter(t,i)).then(c=>c?e(r,t,i,n,o):o(),e=>o(e))}function a(e,r,t,i,n){return i.filter?u(f,e,r,t,i,n):f(e,r,t,i,n)}function f(r,t,i,n,o){(n.dereference?e.stat:e.lstat)(t,(e,c)=>e?o(e):c.isDirectory()?y(c,r,t,i,n,o):c.isFile()||c.isCharacterDevice()||c.isBlockDevice()?d(c,r,t,i,n,o):c.isSymbolicLink()?S(r,t,i,n,o):void 0)}function d(e,r,t,i,n,o){return r?l(e,t,i,n,o):m(e,t,i,n,o)}function l(r,t,i,n,o){if(!n.overwrite)return n.errorOnExist?o(new Error(`'${i}' already exists`)):o();e.unlink(i,e=>e?o(e):m(r,t,i,n,o))}function m(r,t,i,n,o){return"function"==typeof e.copyFile?e.copyFile(t,i,e=>e?o(e):h(r,i,n,o)):p(r,t,i,n,o)}function p(r,t,i,n,o){const c=e.createReadStream(t);c.on("error",e=>o(e)).once("open",()=>{const t=e.createWriteStream(i,{mode:r.mode});t.on("error",e=>o(e)).on("open",()=>c.pipe(t)).once("close",()=>h(r,i,n,o))})}function h(r,t,i,o){e.chmod(t,r.mode,e=>e?o(e):i.preserveTimestamps?n(t,r.atime,r.mtime,o):o())}function y(e,r,t,i,n,o){return r?r&&!r.isDirectory()?o(new Error(`Cannot overwrite non-directory '${i}' with directory '${t}'.`)):k(t,i,n,o):v(e,t,i,n,o)}function v(r,t,i,n,o){e.mkdir(i,c=>{if(c)return o(c);k(t,i,n,t=>t?o(t):e.chmod(i,r.mode,o))})}function k(r,t,i,n){e.readdir(r,(e,o)=>e?n(e):w(o,r,t,i,n))}function w(e,r,t,i,n){const o=e.pop();return o?b(e,o,r,t,i,n):n()}function b(e,t,i,n,c,s){const u=r.join(i,t),f=r.join(n,t);o.checkPaths(u,f,"copy",(r,t)=>{if(r)return s(r);const{destStat:o}=t;a(o,u,f,c,r=>r?s(r):w(e,i,n,c,s))})}function S(t,i,n,c,s){e.readlink(i,(i,u)=>i?s(i):(c.dereference&&(u=r.resolve(process.cwd(),u)),t?void e.readlink(n,(i,a)=>i?"EINVAL"===i.code||"UNKNOWN"===i.code?e.symlink(u,n,s):s(i):(c.dereference&&(a=r.resolve(process.cwd(),a)),o.isSrcSubdir(u,a)?s(new Error(`Cannot copy '${u}' to a subdirectory of itself, '${a}'.`)):t.isDirectory()&&o.isSrcSubdir(a,u)?s(new Error(`Cannot overwrite '${a}' with '${u}'.`)):x(u,n,s))):e.symlink(u,n,s)))}function x(r,t,i){e.unlink(t,n=>n?i(n):e.symlink(r,t,i))}module.exports=c; +},{"graceful-fs":"Bwvh","../mkdirs":"qr1A","../path-exists":"vEWP","../util/utimes":"vpTv","../util/stat":"24w/"}],"ZAPP":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback;module.exports={copy:e(require("./copy"))}; +},{"universalify":"oklw","./copy":"x98n"}],"T+Wk":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback,r=require("./rimraf");module.exports={remove:e(r),removeSync:r.sync}; +},{"universalify":"oklw","./rimraf":"+/gv"}],"xHw6":[function(require,module,exports) { +"use strict";const r=require("universalify").fromCallback,e=require("graceful-fs"),i=require("path"),n=require("../mkdirs"),t=require("../remove"),c=r(function(r,c){c=c||function(){},e.readdir(r,(e,u)=>{if(e)return n.mkdirs(r,c);u=u.map(e=>i.join(r,e)),function r(){const e=u.pop();if(!e)return c();t.remove(e,e=>{if(e)return c(e);r()})}()})});function u(r){let c;try{c=e.readdirSync(r)}catch(u){return n.mkdirsSync(r)}c.forEach(e=>{e=i.join(r,e),t.removeSync(e)})}module.exports={emptyDirSync:u,emptydirSync:u,emptyDir:c,emptydir:c}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"qr1A","../remove":"T+Wk"}],"zyxP":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback,i=require("path"),r=require("graceful-fs"),t=require("../mkdirs"),n=require("../path-exists").pathExists;function s(e,s){function c(){r.writeFile(e,"",e=>{if(e)return s(e);s()})}r.stat(e,(r,u)=>{if(!r&&u.isFile())return s();const a=i.dirname(e);n(a,(e,i)=>e?s(e):i?c():void t.mkdirs(a,e=>{if(e)return s(e);c()}))})}function c(e){let n;try{n=r.statSync(e)}catch(c){}if(n&&n.isFile())return;const s=i.dirname(e);r.existsSync(s)||t.mkdirsSync(s),r.writeFileSync(e,"")}module.exports={createFile:e(s),createFileSync:c}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"qr1A","../path-exists":"vEWP"}],"5S7W":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback,r=require("path"),n=require("graceful-fs"),t=require("../mkdirs"),i=require("../path-exists").pathExists;function s(e,s,a){function c(e,r){n.link(e,r,e=>{if(e)return a(e);a(null)})}i(s,(u,l)=>u?a(u):l?a(null):void n.lstat(e,n=>{if(n)return n.message=n.message.replace("lstat","ensureLink"),a(n);const u=r.dirname(s);i(u,(r,n)=>r?a(r):n?c(e,s):void t.mkdirs(u,r=>{if(r)return a(r);c(e,s)}))}))}function a(e,i){if(n.existsSync(i))return;try{n.lstatSync(e)}catch(a){throw a.message=a.message.replace("lstat","ensureLink"),a}const s=r.dirname(i);return n.existsSync(s)?n.linkSync(e,i):(t.mkdirsSync(s),n.linkSync(e,i))}module.exports={createLink:e(s),createLinkSync:a}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"qr1A","../path-exists":"vEWP"}],"K0o4":[function(require,module,exports) { +"use strict";const t=require("path"),e=require("graceful-fs"),s=require("../path-exists").pathExists;function r(r,n,o){if(t.isAbsolute(r))return e.lstat(r,t=>t?(t.message=t.message.replace("lstat","ensureSymlink"),o(t)):o(null,{toCwd:r,toDst:r}));{const i=t.dirname(n),l=t.join(i,r);return s(l,(s,n)=>s?o(s):n?o(null,{toCwd:l,toDst:r}):e.lstat(r,e=>e?(e.message=e.message.replace("lstat","ensureSymlink"),o(e)):o(null,{toCwd:r,toDst:t.relative(i,r)})))}}function n(s,r){let n;if(t.isAbsolute(s)){if(!(n=e.existsSync(s)))throw new Error("absolute srcpath does not exist");return{toCwd:s,toDst:s}}{const o=t.dirname(r),i=t.join(o,s);if(n=e.existsSync(i))return{toCwd:i,toDst:s};if(!(n=e.existsSync(s)))throw new Error("relative srcpath does not exist");return{toCwd:s,toDst:t.relative(o,s)}}}module.exports={symlinkPaths:r,symlinkPathsSync:n}; +},{"graceful-fs":"Bwvh","../path-exists":"vEWP"}],"OrLB":[function(require,module,exports) { +"use strict";const i=require("universalify").fromCallback,n=require("path"),e=require("graceful-fs"),t=require("../mkdirs"),r=t.mkdirs,s=t.mkdirsSync,y=require("./symlink-paths"),c=y.symlinkPaths,u=y.symlinkPathsSync,l=require("./symlink-type"),m=l.symlinkType,o=l.symlinkTypeSync,k=require("../path-exists").pathExists;function a(i,t,s,y){y="function"==typeof s?s:y,s="function"!=typeof s&&s,k(t,(u,l)=>u?y(u):l?y(null):void c(i,t,(c,u)=>{if(c)return y(c);i=u.toDst,m(u.toCwd,s,(s,c)=>{if(s)return y(s);const u=n.dirname(t);k(u,(n,s)=>n?y(n):s?e.symlink(i,t,c,y):void r(u,n=>{if(n)return y(n);e.symlink(i,t,c,y)}))})}))}function f(i,t,r){if(e.existsSync(t))return;const y=u(i,t);i=y.toDst,r=o(y.toCwd,r);const c=n.dirname(t);return e.existsSync(c)?e.symlinkSync(i,t,r):(s(c),e.symlinkSync(i,t,r))}module.exports={createSymlink:i(a),createSymlinkSync:f}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"qr1A","./symlink-paths":"K0o4","./symlink-type":"3MA9","../path-exists":"vEWP"}],"5vvh":[function(require,module,exports) { +"use strict";const e=require("./file"),n=require("./link"),c=require("./symlink");module.exports={createFile:e.createFile,createFileSync:e.createFileSync,ensureFile:e.createFile,ensureFileSync:e.createFileSync,createLink:n.createLink,createLinkSync:n.createLinkSync,ensureLink:n.createLink,ensureLinkSync:n.createLinkSync,createSymlink:c.createSymlink,createSymlinkSync:c.createSymlinkSync,ensureSymlink:c.createSymlink,ensureSymlinkSync:c.createSymlinkSync}; +},{"./file":"zyxP","./link":"5S7W","./symlink":"OrLB"}],"IgPT":[function(require,module,exports) { +"use strict";const e=require("path"),i=require("../mkdirs"),r=require("../path-exists").pathExists,t=require("./jsonfile");function s(s,n,o,u){"function"==typeof o&&(u=o,o={});const c=e.dirname(s);r(c,(e,r)=>e?u(e):r?t.writeJson(s,n,o,u):void i.mkdirs(c,e=>{if(e)return u(e);t.writeJson(s,n,o,u)}))}module.exports=s; +},{"../mkdirs":"qr1A","../path-exists":"vEWP","./jsonfile":"4+2t"}],"yxnF":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),i=require("../mkdirs"),s=require("./jsonfile");function n(n,t,c){const u=r.dirname(n);e.existsSync(u)||i.mkdirsSync(u),s.writeJsonSync(n,t,c)}module.exports=n; +},{"graceful-fs":"Bwvh","../mkdirs":"qr1A","./jsonfile":"4+2t"}],"KV3c":[function(require,module,exports) { +"use strict";const t=require("universalify").fromCallback,o=require("./jsonfile");o.outputJson=t(require("./output-json")),o.outputJsonSync=require("./output-json-sync"),o.outputJSON=o.outputJson,o.outputJSONSync=o.outputJsonSync,o.writeJSON=o.writeJson,o.writeJSONSync=o.writeJsonSync,o.readJSON=o.readJson,o.readJSONSync=o.readJsonSync,module.exports=o; +},{"universalify":"oklw","./jsonfile":"4+2t","./output-json":"IgPT","./output-json-sync":"yxnF"}],"yWp2":[function(require,module,exports) { +"use strict";const r=require("graceful-fs"),e=require("path"),t=require("../copy-sync").copySync,n=require("../remove").removeSync,c=require("../mkdirs").mkdirpSync,i=require("../util/stat");function o(r,t,n){const o=(n=n||{}).overwrite||n.clobber||!1,{srcStat:s}=i.checkPathsSync(r,t,"move");return i.checkParentPathsSync(r,s,t,"move"),c(e.dirname(t)),u(r,t,o)}function u(e,t,c){if(c)return n(t),s(e,t,c);if(r.existsSync(t))throw new Error("dest already exists.");return s(e,t,c)}function s(e,t,n){try{r.renameSync(e,t)}catch(c){if("EXDEV"!==c.code)throw c;return a(e,t,n)}}function a(r,e,c){return t(r,e,{overwrite:c,errorOnExist:!0}),n(r)}module.exports=o; +},{"graceful-fs":"Bwvh","../copy-sync":"ygTg","../remove":"T+Wk","../mkdirs":"qr1A","../util/stat":"24w/"}],"6b8l":[function(require,module,exports) { +"use strict";module.exports={moveSync:require("./move-sync")}; +},{"./move-sync":"yWp2"}],"gSc6":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),t=require("../copy").copy,i=require("../remove").remove,o=require("../mkdirs").mkdirp,n=require("../path-exists").pathExists,s=require("../util/stat");function c(e,t,i,n){"function"==typeof i&&(n=i,i={});const c=i.overwrite||i.clobber||!1;s.checkPaths(e,t,"move",(i,a)=>{if(i)return n(i);const{srcStat:f}=a;s.checkParentPaths(e,f,t,"move",i=>{if(i)return n(i);o(r.dirname(t),r=>r?n(r):u(e,t,c,n))})})}function u(e,r,t,o){if(t)return i(r,i=>i?o(i):a(e,r,t,o));n(r,(i,n)=>i?o(i):n?o(new Error("dest already exists.")):a(e,r,t,o))}function a(r,t,i,o){e.rename(r,t,e=>e?"EXDEV"!==e.code?o(e):f(r,t,i,o):o())}function f(e,r,o,n){t(e,r,{overwrite:o,errorOnExist:!0},r=>r?n(r):i(e,n))}module.exports=c; +},{"graceful-fs":"Bwvh","../copy":"ZAPP","../remove":"T+Wk","../mkdirs":"qr1A","../path-exists":"vEWP","../util/stat":"24w/"}],"z4VI":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback;module.exports={move:e(require("./move"))}; +},{"universalify":"oklw","./move":"gSc6"}],"tlZS":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback,i=require("graceful-fs"),r=require("path"),t=require("../mkdirs"),n=require("../path-exists").pathExists;function u(e,u,s,c){"function"==typeof s&&(c=s,s="utf8");const o=r.dirname(e);n(o,(r,n)=>r?c(r):n?i.writeFile(e,u,s,c):void t.mkdirs(o,r=>{if(r)return c(r);i.writeFile(e,u,s,c)}))}function s(e,...n){const u=r.dirname(e);if(i.existsSync(u))return i.writeFileSync(e,...n);t.mkdirsSync(u),i.writeFileSync(e,...n)}module.exports={outputFile:e(u),outputFileSync:s}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"qr1A","../path-exists":"vEWP"}],"+Tly":[function(require,module,exports) { +"use strict";module.exports=Object.assign({},require("./fs"),require("./copy-sync"),require("./copy"),require("./empty"),require("./ensure"),require("./json"),require("./mkdirs"),require("./move-sync"),require("./move"),require("./output"),require("./path-exists"),require("./remove"));const e=require("fs");Object.getOwnPropertyDescriptor(e,"promises")&&Object.defineProperty(module.exports,"promises",{get:()=>e.promises}); +},{"./fs":"4cPb","./copy-sync":"ygTg","./copy":"ZAPP","./empty":"xHw6","./ensure":"5vvh","./json":"KV3c","./mkdirs":"qr1A","./move-sync":"6b8l","./move":"z4VI","./output":"tlZS","./path-exists":"vEWP","./remove":"T+Wk"}],"m+rn":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=u;var e=r(require("../../helpers/esm/typeof")),t=r(require("./assertThisInitialized"));function r(e){return e&&e.__esModule?e:{default:e}}function u(r,u){return!u||"object"!==(0,e.default)(u)&&"function"!=typeof u?(0,t.default)(r):u} +},{"../../helpers/esm/typeof":"ugyC","./assertThisInitialized":"mJ6v"}],"IWYV":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=r;var e=t(require("./setPrototypeOf"));function t(e){return e&&e.__esModule?e:{default:e}}function r(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(r&&r.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),r&&(0,e.default)(t,r)} +},{"./setPrototypeOf":"sp3I"}],"nMvH":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=u;var e=r(require("./setPrototypeOf")),t=r(require("./isNativeReflectConstruct"));function r(e){return e&&e.__esModule?e:{default:e}}function u(r,l,n){return(0,t.default)()?exports.default=u=Reflect.construct:exports.default=u=function(t,r,u){var l=[null];l.push.apply(l,r);var n=new(Function.bind.apply(t,l));return u&&(0,e.default)(n,u.prototype),n},u.apply(null,arguments)} +},{"./setPrototypeOf":"sp3I","./isNativeReflectConstruct":"t5vf"}],"4z2U":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=n;var e=o(require("./getPrototypeOf")),t=o(require("./setPrototypeOf")),r=o(require("./isNativeFunction")),u=o(require("./construct"));function o(e){return e&&e.__esModule?e:{default:e}}function n(o){var i="function"==typeof Map?new Map:void 0;return exports.default=n=function(o){if(null===o||!(0,r.default)(o))return o;if("function"!=typeof o)throw new TypeError("Super expression must either be null or a function");if(void 0!==i){if(i.has(o))return i.get(o);i.set(o,n)}function n(){return(0,u.default)(o,arguments,(0,e.default)(this).constructor)}return n.prototype=Object.create(o.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),(0,t.default)(n,o)},n(o)} +},{"./getPrototypeOf":"d/yJ","./setPrototypeOf":"sp3I","./isNativeFunction":"QOlZ","./construct":"nMvH"}],"ahby":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),t=require("./win32").invalidWin32Path,n=parseInt("0777",8);function i(o,s,c,a){if("function"==typeof s?(c=s,s={}):s&&"object"==typeof s||(s={mode:s}),"win32"===process.platform&&t(o)){const e=new Error(o+" contains invalid WIN32 path characters.");return e.code="EINVAL",c(e)}let u=s.mode;const l=s.fs||e;void 0===u&&(u=n&~process.umask()),a||(a=null),c=c||function(){},o=r.resolve(o),l.mkdir(o,u,e=>{if(!e)return c(null,a=a||o);switch(e.code){case"ENOENT":if(r.dirname(o)===o)return c(e);i(r.dirname(o),s,(e,r)=>{e?c(e,r):i(o,s,c,r)});break;default:l.stat(o,(r,t)=>{r||!t.isDirectory()?c(e,a):c(null,a)})}})}module.exports=i; +},{"graceful-fs":"Bwvh","./win32":"kidm"}],"NW38":[function(require,module,exports) { +"use strict";const r=require("graceful-fs"),e=require("path"),t=require("./win32").invalidWin32Path,o=parseInt("0777",8);function i(c,n,s){n&&"object"==typeof n||(n={mode:n});let a=n.mode;const d=n.fs||r;if("win32"===process.platform&&t(c)){const r=new Error(c+" contains invalid WIN32 path characters.");throw r.code="EINVAL",r}void 0===a&&(a=o&~process.umask()),s||(s=null),c=e.resolve(c);try{d.mkdirSync(c,a),s=s||c}catch(l){if("ENOENT"===l.code){if(e.dirname(c)===c)throw l;s=i(e.dirname(c),n,s),i(c,n,s)}else{let r;try{r=d.statSync(c)}catch(f){throw l}if(!r.isDirectory())throw l}}return s}module.exports=i; +},{"graceful-fs":"Bwvh","./win32":"kidm"}],"A2LC":[function(require,module,exports) { +"use strict";const r=require("universalify").fromCallback,e=r(require("./mkdirs")),i=require("./mkdirs-sync");module.exports={mkdirs:e,mkdirsSync:i,mkdirp:e,mkdirpSync:i,ensureDir:e,ensureDirSync:i}; +},{"universalify":"oklw","./mkdirs":"ahby","./mkdirs-sync":"NW38"}],"+l1A":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),n=require("../mkdirs").mkdirsSync,t=require("../util/utimes.js").utimesMillisSync,i=require("../util/stat");function c(e,r,n){"function"==typeof n&&(n={filter:n}),(n=n||{}).clobber=!("clobber"in n)||!!n.clobber,n.overwrite="overwrite"in n?!!n.overwrite:n.clobber,n.preserveTimestamps&&"ia32"===process.arch&&console.warn("fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269");const{srcStat:t,destStat:c}=i.checkPathsSync(e,r,"copy");return i.checkParentPathsSync(e,t,r,"copy"),o(c,e,r,n)}function o(t,i,c,o){if(o.filter&&!o.filter(i,c))return;const u=r.dirname(c);return e.existsSync(u)||n(u),s(t,i,c,o)}function s(e,r,n,t){if(!t.filter||t.filter(r,n))return u(e,r,n,t)}function u(r,n,t,i){const c=(i.dereference?e.statSync:e.lstatSync)(n);return c.isDirectory()?d(c,r,n,t,i):c.isFile()||c.isCharacterDevice()||c.isBlockDevice()?y(c,r,n,t,i):c.isSymbolicLink()?h(r,n,t,i):void 0}function y(e,r,n,t,i){return r?f(e,n,t,i):a(e,n,t,i)}function f(r,n,t,i){if(i.overwrite)return e.unlinkSync(t),a(r,n,t,i);if(i.errorOnExist)throw new Error(`'${t}' already exists`)}function a(r,n,i,c){return"function"==typeof e.copyFileSync?(e.copyFileSync(n,i),e.chmodSync(i,r.mode),c.preserveTimestamps?t(i,r.atime,r.mtime):void 0):l(r,n,i,c)}function l(r,n,t,i){const c=require("../util/buffer")(65536),o=e.openSync(n,"r"),s=e.openSync(t,"w",r.mode);let u=0;for(;up(e,r,n,t))}function p(e,n,t,c){const o=r.join(n,e),u=r.join(t,e),{destStat:y}=i.checkPathsSync(o,u,"copy");return s(y,o,u,c)}function h(n,t,c,o){let s=e.readlinkSync(t);if(o.dereference&&(s=r.resolve(process.cwd(),s)),n){let n;try{n=e.readlinkSync(c)}catch(u){if("EINVAL"===u.code||"UNKNOWN"===u.code)return e.symlinkSync(s,c);throw u}if(o.dereference&&(n=r.resolve(process.cwd(),n)),i.isSrcSubdir(s,n))throw new Error(`Cannot copy '${s}' to a subdirectory of itself, '${n}'.`);if(e.statSync(c).isDirectory()&&i.isSrcSubdir(n,s))throw new Error(`Cannot overwrite '${n}' with '${s}'.`);return w(s,c)}return e.symlinkSync(s,c)}function w(r,n){return e.unlinkSync(n),e.symlinkSync(r,n)}module.exports=c; +},{"graceful-fs":"Bwvh","../mkdirs":"A2LC","../util/utimes.js":"vpTv","../util/stat":"24w/","../util/buffer":"Plmg"}],"fnTW":[function(require,module,exports) { +"use strict";module.exports={copySync:require("./copy-sync")}; +},{"./copy-sync":"+l1A"}],"yqdE":[function(require,module,exports) { +"use strict";const s=require("universalify").fromPromise,e=require("../fs");function t(s){return e.access(s).then(()=>!0).catch(()=>!1)}module.exports={pathExists:s(t),pathExistsSync:e.existsSync}; +},{"universalify":"oklw","../fs":"4cPb"}],"4Ioc":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),t=require("../mkdirs").mkdirs,i=require("../path-exists").pathExists,n=require("../util/utimes").utimesMillis,o=require("../util/stat");function c(e,r,t,i){"function"!=typeof t||i?"function"==typeof t&&(t={filter:t}):(i=t,t={}),i=i||function(){},(t=t||{}).clobber=!("clobber"in t)||!!t.clobber,t.overwrite="overwrite"in t?!!t.overwrite:t.clobber,t.preserveTimestamps&&"ia32"===process.arch&&console.warn("fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269"),o.checkPaths(e,r,"copy",(n,c)=>{if(n)return i(n);const{srcStat:a,destStat:f}=c;o.checkParentPaths(e,a,r,"copy",n=>n?i(n):t.filter?u(s,f,e,r,t,i):s(f,e,r,t,i))})}function s(e,n,o,c,s){const u=r.dirname(o);i(u,(r,i)=>r?s(r):i?a(e,n,o,c,s):void t(u,r=>r?s(r):a(e,n,o,c,s)))}function u(e,r,t,i,n,o){Promise.resolve(n.filter(t,i)).then(c=>c?e(r,t,i,n,o):o(),e=>o(e))}function a(e,r,t,i,n){return i.filter?u(f,e,r,t,i,n):f(e,r,t,i,n)}function f(r,t,i,n,o){(n.dereference?e.stat:e.lstat)(t,(e,c)=>e?o(e):c.isDirectory()?y(c,r,t,i,n,o):c.isFile()||c.isCharacterDevice()||c.isBlockDevice()?d(c,r,t,i,n,o):c.isSymbolicLink()?S(r,t,i,n,o):void 0)}function d(e,r,t,i,n,o){return r?l(e,t,i,n,o):m(e,t,i,n,o)}function l(r,t,i,n,o){if(!n.overwrite)return n.errorOnExist?o(new Error(`'${i}' already exists`)):o();e.unlink(i,e=>e?o(e):m(r,t,i,n,o))}function m(r,t,i,n,o){return"function"==typeof e.copyFile?e.copyFile(t,i,e=>e?o(e):h(r,i,n,o)):p(r,t,i,n,o)}function p(r,t,i,n,o){const c=e.createReadStream(t);c.on("error",e=>o(e)).once("open",()=>{const t=e.createWriteStream(i,{mode:r.mode});t.on("error",e=>o(e)).on("open",()=>c.pipe(t)).once("close",()=>h(r,i,n,o))})}function h(r,t,i,o){e.chmod(t,r.mode,e=>e?o(e):i.preserveTimestamps?n(t,r.atime,r.mtime,o):o())}function y(e,r,t,i,n,o){return r?r&&!r.isDirectory()?o(new Error(`Cannot overwrite non-directory '${i}' with directory '${t}'.`)):k(t,i,n,o):v(e,t,i,n,o)}function v(r,t,i,n,o){e.mkdir(i,c=>{if(c)return o(c);k(t,i,n,t=>t?o(t):e.chmod(i,r.mode,o))})}function k(r,t,i,n){e.readdir(r,(e,o)=>e?n(e):w(o,r,t,i,n))}function w(e,r,t,i,n){const o=e.pop();return o?b(e,o,r,t,i,n):n()}function b(e,t,i,n,c,s){const u=r.join(i,t),f=r.join(n,t);o.checkPaths(u,f,"copy",(r,t)=>{if(r)return s(r);const{destStat:o}=t;a(o,u,f,c,r=>r?s(r):w(e,i,n,c,s))})}function S(t,i,n,c,s){e.readlink(i,(i,u)=>i?s(i):(c.dereference&&(u=r.resolve(process.cwd(),u)),t?void e.readlink(n,(i,a)=>i?"EINVAL"===i.code||"UNKNOWN"===i.code?e.symlink(u,n,s):s(i):(c.dereference&&(a=r.resolve(process.cwd(),a)),o.isSrcSubdir(u,a)?s(new Error(`Cannot copy '${u}' to a subdirectory of itself, '${a}'.`)):t.isDirectory()&&o.isSrcSubdir(a,u)?s(new Error(`Cannot overwrite '${a}' with '${u}'.`)):x(u,n,s))):e.symlink(u,n,s)))}function x(r,t,i){e.unlink(t,n=>n?i(n):e.symlink(r,t,i))}module.exports=c; +},{"graceful-fs":"Bwvh","../mkdirs":"A2LC","../path-exists":"yqdE","../util/utimes":"vpTv","../util/stat":"24w/"}],"4/yo":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback;module.exports={copy:e(require("./copy"))}; +},{"universalify":"oklw","./copy":"4Ioc"}],"bsNY":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback,r=require("./rimraf");module.exports={remove:e(r),removeSync:r.sync}; +},{"universalify":"oklw","./rimraf":"+/gv"}],"MexR":[function(require,module,exports) { +"use strict";const r=require("universalify").fromCallback,e=require("graceful-fs"),i=require("path"),n=require("../mkdirs"),t=require("../remove"),c=r(function(r,c){c=c||function(){},e.readdir(r,(e,u)=>{if(e)return n.mkdirs(r,c);u=u.map(e=>i.join(r,e)),function r(){const e=u.pop();if(!e)return c();t.remove(e,e=>{if(e)return c(e);r()})}()})});function u(r){let c;try{c=e.readdirSync(r)}catch(u){return n.mkdirsSync(r)}c.forEach(e=>{e=i.join(r,e),t.removeSync(e)})}module.exports={emptyDirSync:u,emptydirSync:u,emptyDir:c,emptydir:c}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"A2LC","../remove":"bsNY"}],"tyHO":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback,i=require("path"),r=require("graceful-fs"),t=require("../mkdirs"),n=require("../path-exists").pathExists;function s(e,s){function c(){r.writeFile(e,"",e=>{if(e)return s(e);s()})}r.stat(e,(r,u)=>{if(!r&&u.isFile())return s();const a=i.dirname(e);n(a,(e,i)=>e?s(e):i?c():void t.mkdirs(a,e=>{if(e)return s(e);c()}))})}function c(e){let n;try{n=r.statSync(e)}catch(c){}if(n&&n.isFile())return;const s=i.dirname(e);r.existsSync(s)||t.mkdirsSync(s),r.writeFileSync(e,"")}module.exports={createFile:e(s),createFileSync:c}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"A2LC","../path-exists":"yqdE"}],"RmUZ":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback,r=require("path"),n=require("graceful-fs"),t=require("../mkdirs"),i=require("../path-exists").pathExists;function s(e,s,a){function c(e,r){n.link(e,r,e=>{if(e)return a(e);a(null)})}i(s,(u,l)=>u?a(u):l?a(null):void n.lstat(e,n=>{if(n)return n.message=n.message.replace("lstat","ensureLink"),a(n);const u=r.dirname(s);i(u,(r,n)=>r?a(r):n?c(e,s):void t.mkdirs(u,r=>{if(r)return a(r);c(e,s)}))}))}function a(e,i){if(n.existsSync(i))return;try{n.lstatSync(e)}catch(a){throw a.message=a.message.replace("lstat","ensureLink"),a}const s=r.dirname(i);return n.existsSync(s)?n.linkSync(e,i):(t.mkdirsSync(s),n.linkSync(e,i))}module.exports={createLink:e(s),createLinkSync:a}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"A2LC","../path-exists":"yqdE"}],"w22q":[function(require,module,exports) { +"use strict";const t=require("path"),e=require("graceful-fs"),s=require("../path-exists").pathExists;function r(r,n,o){if(t.isAbsolute(r))return e.lstat(r,t=>t?(t.message=t.message.replace("lstat","ensureSymlink"),o(t)):o(null,{toCwd:r,toDst:r}));{const i=t.dirname(n),l=t.join(i,r);return s(l,(s,n)=>s?o(s):n?o(null,{toCwd:l,toDst:r}):e.lstat(r,e=>e?(e.message=e.message.replace("lstat","ensureSymlink"),o(e)):o(null,{toCwd:r,toDst:t.relative(i,r)})))}}function n(s,r){let n;if(t.isAbsolute(s)){if(!(n=e.existsSync(s)))throw new Error("absolute srcpath does not exist");return{toCwd:s,toDst:s}}{const o=t.dirname(r),i=t.join(o,s);if(n=e.existsSync(i))return{toCwd:i,toDst:s};if(!(n=e.existsSync(s)))throw new Error("relative srcpath does not exist");return{toCwd:s,toDst:t.relative(o,s)}}}module.exports={symlinkPaths:r,symlinkPathsSync:n}; +},{"graceful-fs":"Bwvh","../path-exists":"yqdE"}],"/uoJ":[function(require,module,exports) { +"use strict";const i=require("universalify").fromCallback,n=require("path"),e=require("graceful-fs"),t=require("../mkdirs"),r=t.mkdirs,s=t.mkdirsSync,y=require("./symlink-paths"),c=y.symlinkPaths,u=y.symlinkPathsSync,l=require("./symlink-type"),m=l.symlinkType,o=l.symlinkTypeSync,k=require("../path-exists").pathExists;function a(i,t,s,y){y="function"==typeof s?s:y,s="function"!=typeof s&&s,k(t,(u,l)=>u?y(u):l?y(null):void c(i,t,(c,u)=>{if(c)return y(c);i=u.toDst,m(u.toCwd,s,(s,c)=>{if(s)return y(s);const u=n.dirname(t);k(u,(n,s)=>n?y(n):s?e.symlink(i,t,c,y):void r(u,n=>{if(n)return y(n);e.symlink(i,t,c,y)}))})}))}function f(i,t,r){if(e.existsSync(t))return;const y=u(i,t);i=y.toDst,r=o(y.toCwd,r);const c=n.dirname(t);return e.existsSync(c)?e.symlinkSync(i,t,r):(s(c),e.symlinkSync(i,t,r))}module.exports={createSymlink:i(a),createSymlinkSync:f}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"A2LC","./symlink-paths":"w22q","./symlink-type":"3MA9","../path-exists":"yqdE"}],"MAVA":[function(require,module,exports) { +"use strict";const e=require("./file"),n=require("./link"),c=require("./symlink");module.exports={createFile:e.createFile,createFileSync:e.createFileSync,ensureFile:e.createFile,ensureFileSync:e.createFileSync,createLink:n.createLink,createLinkSync:n.createLinkSync,ensureLink:n.createLink,ensureLinkSync:n.createLinkSync,createSymlink:c.createSymlink,createSymlinkSync:c.createSymlinkSync,ensureSymlink:c.createSymlink,ensureSymlinkSync:c.createSymlinkSync}; +},{"./file":"tyHO","./link":"RmUZ","./symlink":"/uoJ"}],"bb48":[function(require,module,exports) { +"use strict";const e=require("path"),i=require("../mkdirs"),r=require("../path-exists").pathExists,t=require("./jsonfile");function s(s,n,o,u){"function"==typeof o&&(u=o,o={});const c=e.dirname(s);r(c,(e,r)=>e?u(e):r?t.writeJson(s,n,o,u):void i.mkdirs(c,e=>{if(e)return u(e);t.writeJson(s,n,o,u)}))}module.exports=s; +},{"../mkdirs":"A2LC","../path-exists":"yqdE","./jsonfile":"4+2t"}],"lAV6":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),i=require("../mkdirs"),s=require("./jsonfile");function n(n,t,c){const u=r.dirname(n);e.existsSync(u)||i.mkdirsSync(u),s.writeJsonSync(n,t,c)}module.exports=n; +},{"graceful-fs":"Bwvh","../mkdirs":"A2LC","./jsonfile":"4+2t"}],"bRWw":[function(require,module,exports) { +"use strict";const t=require("universalify").fromCallback,o=require("./jsonfile");o.outputJson=t(require("./output-json")),o.outputJsonSync=require("./output-json-sync"),o.outputJSON=o.outputJson,o.outputJSONSync=o.outputJsonSync,o.writeJSON=o.writeJson,o.writeJSONSync=o.writeJsonSync,o.readJSON=o.readJson,o.readJSONSync=o.readJsonSync,module.exports=o; +},{"universalify":"oklw","./jsonfile":"4+2t","./output-json":"bb48","./output-json-sync":"lAV6"}],"9MzY":[function(require,module,exports) { +"use strict";const r=require("graceful-fs"),e=require("path"),t=require("../copy-sync").copySync,n=require("../remove").removeSync,c=require("../mkdirs").mkdirpSync,i=require("../util/stat");function o(r,t,n){const o=(n=n||{}).overwrite||n.clobber||!1,{srcStat:s}=i.checkPathsSync(r,t,"move");return i.checkParentPathsSync(r,s,t,"move"),c(e.dirname(t)),u(r,t,o)}function u(e,t,c){if(c)return n(t),s(e,t,c);if(r.existsSync(t))throw new Error("dest already exists.");return s(e,t,c)}function s(e,t,n){try{r.renameSync(e,t)}catch(c){if("EXDEV"!==c.code)throw c;return a(e,t,n)}}function a(r,e,c){return t(r,e,{overwrite:c,errorOnExist:!0}),n(r)}module.exports=o; +},{"graceful-fs":"Bwvh","../copy-sync":"fnTW","../remove":"bsNY","../mkdirs":"A2LC","../util/stat":"24w/"}],"At0a":[function(require,module,exports) { +"use strict";module.exports={moveSync:require("./move-sync")}; +},{"./move-sync":"9MzY"}],"ObVe":[function(require,module,exports) { +"use strict";const e=require("graceful-fs"),r=require("path"),t=require("../copy").copy,i=require("../remove").remove,o=require("../mkdirs").mkdirp,n=require("../path-exists").pathExists,s=require("../util/stat");function c(e,t,i,n){"function"==typeof i&&(n=i,i={});const c=i.overwrite||i.clobber||!1;s.checkPaths(e,t,"move",(i,a)=>{if(i)return n(i);const{srcStat:f}=a;s.checkParentPaths(e,f,t,"move",i=>{if(i)return n(i);o(r.dirname(t),r=>r?n(r):u(e,t,c,n))})})}function u(e,r,t,o){if(t)return i(r,i=>i?o(i):a(e,r,t,o));n(r,(i,n)=>i?o(i):n?o(new Error("dest already exists.")):a(e,r,t,o))}function a(r,t,i,o){e.rename(r,t,e=>e?"EXDEV"!==e.code?o(e):f(r,t,i,o):o())}function f(e,r,o,n){t(e,r,{overwrite:o,errorOnExist:!0},r=>r?n(r):i(e,n))}module.exports=c; +},{"graceful-fs":"Bwvh","../copy":"4/yo","../remove":"bsNY","../mkdirs":"A2LC","../path-exists":"yqdE","../util/stat":"24w/"}],"v0JN":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback;module.exports={move:e(require("./move"))}; +},{"universalify":"oklw","./move":"ObVe"}],"G3wY":[function(require,module,exports) { +"use strict";const e=require("universalify").fromCallback,i=require("graceful-fs"),r=require("path"),t=require("../mkdirs"),n=require("../path-exists").pathExists;function u(e,u,s,c){"function"==typeof s&&(c=s,s="utf8");const o=r.dirname(e);n(o,(r,n)=>r?c(r):n?i.writeFile(e,u,s,c):void t.mkdirs(o,r=>{if(r)return c(r);i.writeFile(e,u,s,c)}))}function s(e,...n){const u=r.dirname(e);if(i.existsSync(u))return i.writeFileSync(e,...n);t.mkdirsSync(u),i.writeFileSync(e,...n)}module.exports={outputFile:e(u),outputFileSync:s}; +},{"universalify":"oklw","graceful-fs":"Bwvh","../mkdirs":"A2LC","../path-exists":"yqdE"}],"ZiGR":[function(require,module,exports) { +"use strict";module.exports=Object.assign({},require("./fs"),require("./copy-sync"),require("./copy"),require("./empty"),require("./ensure"),require("./json"),require("./mkdirs"),require("./move-sync"),require("./move"),require("./output"),require("./path-exists"),require("./remove"));const e=require("fs");Object.getOwnPropertyDescriptor(e,"promises")&&Object.defineProperty(module.exports,"promises",{get:()=>e.promises}); +},{"./fs":"4cPb","./copy-sync":"fnTW","./copy":"4/yo","./empty":"MexR","./ensure":"MAVA","./json":"bRWw","./mkdirs":"A2LC","./move-sync":"At0a","./move":"v0JN","./output":"G3wY","./path-exists":"yqdE","./remove":"bsNY"}],"bBB5":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.findRoot=v,exports.findRootSync=k,exports.NoPkgJsonFound=void 0;var e=p(require("@babel/runtime/regenerator")),r=p(require("@babel/runtime/helpers/esm/asyncToGenerator")),t=p(require("@babel/runtime/helpers/esm/classCallCheck")),n=p(require("@babel/runtime/helpers/esm/possibleConstructorReturn")),u=p(require("@babel/runtime/helpers/esm/getPrototypeOf")),a=p(require("@babel/runtime/helpers/esm/inherits")),o=p(require("@babel/runtime/helpers/esm/wrapNativeSuper")),i=f(require("find-up")),c=p(require("path")),s=p(require("fs-extra"));function f(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)){var n=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(e,t):{};n.get||n.set?Object.defineProperty(r,t,n):r[t]=e[t]}return r.default=e,r}function p(e){return e&&e.__esModule?e:{default:e}}var l=function(e){function r(e){var a;return(0,t.default)(this,r),(a=(0,n.default)(this,(0,u.default)(r).call(this,"No package.json could be found upwards from the directory ".concat(e)))).directory=e,a}return(0,a.default)(r,e),r}((0,o.default)(Error));function d(e,r){return b.apply(this,arguments)}function b(){return(b=(0,r.default)(e.default.mark(function r(t,n){var u;return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,s.default.readJson(c.default.join(t,"package.json"));case 3:if(u=e.sent,void 0===n.current&&(n.current=t),!u.workspaces&&!u.bolt){e.next=7;break}return e.abrupt("return",t);case 7:e.next=13;break;case 9:if(e.prev=9,e.t0=e.catch(0),"ENOENT"===e.t0.code){e.next=13;break}throw e.t0;case 13:case"end":return e.stop()}},r,null,[[0,9]])}))).apply(this,arguments)}function h(e){return y.apply(this,arguments)}function y(){return(y=(0,r.default)(e.default.mark(function r(t){return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.default.exists(c.default.join(t,"pnpm-workspace.yaml"));case 2:if(!e.sent){e.next=5;break}return e.abrupt("return",t);case 5:case"end":return e.stop()}},r)}))).apply(this,arguments)}function v(e){return w.apply(this,arguments)}function w(){return(w=(0,r.default)(e.default.mark(function r(t){var n,u;return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n={current:void 0},e.next=3,(0,i.default)(function(e){return Promise.all([d(e,n),h(e)]).then(function(e){return e.find(function(e){return e})})},{cwd:t,type:"directory"});case 3:if(u=e.sent,void 0!==n.current){e.next=6;break}throw new l(t);case 6:if(void 0!==u){e.next=8;break}return e.abrupt("return",n.current);case 8:return e.abrupt("return",u);case 9:case"end":return e.stop()}},r)}))).apply(this,arguments)}function m(e,r){try{var t=s.default.readJsonSync(c.default.join(e,"package.json"));if(void 0===r.current&&(r.current=e),t.workspaces||t.bolt)return e}catch(n){if("ENOENT"!==n.code)throw n}}function x(e){if(s.default.existsSync(c.default.join(e,"pnpm-workspace.yaml")))return e}function k(e){var r={current:void 0},t=(0,i.sync)(function(e){return[m(e,r),x(e)].find(function(e){return e})},{cwd:e,type:"directory"});if(void 0===r.current)throw new l(e);return void 0===t?r.current:t}exports.NoPkgJsonFound=l; +},{"@babel/runtime/regenerator":"/fRJ","@babel/runtime/helpers/esm/asyncToGenerator":"Bx41","@babel/runtime/helpers/esm/classCallCheck":"dJvD","@babel/runtime/helpers/esm/possibleConstructorReturn":"m+rn","@babel/runtime/helpers/esm/getPrototypeOf":"d/yJ","@babel/runtime/helpers/esm/inherits":"IWYV","@babel/runtime/helpers/esm/wrapNativeSuper":"4z2U","find-up":"Pl36","fs-extra":"ZiGR"}],"zmAz":[function(require,module,exports) { +"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=e(require("@babel/runtime/regenerator")),a=e(require("@babel/runtime/helpers/asyncToGenerator")),t=e(require("@babel/runtime/helpers/classCallCheck")),n=e(require("@babel/runtime/helpers/possibleConstructorReturn")),o=e(require("@babel/runtime/helpers/getPrototypeOf")),s=e(require("@babel/runtime/helpers/inherits")),c=e(require("@babel/runtime/helpers/wrapNativeSuper")),p=e(require("fs-extra")),i=e(require("path")),l=require("globby"),u=e(l),k=require("read-yaml-file"),g=e(k),b=require("@manypkg/find-root"),f=function(e){function r(e){var a;return t(this,r),(a=n(this,o(r).call(this,'The following package.jsons are missing the "name" field:\n'.concat(e.join("\n"))))).directories=e,a}return s(r,e),r}(c(Error));function y(e){return h.apply(this,arguments)}function h(){return(h=a(r.mark(function e(a){var t,n,o,s,c,l,k,y;return r.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,b.findRoot(a);case 2:return t=e.sent,e.next=5,p.readJson(i.join(t,"package.json"));case 5:if(!(n=e.sent).workspaces){e.next=10;break}Array.isArray(n.workspaces)?o={type:"yarn",packageGlobs:n.workspaces}:n.workspaces.packages&&(o={type:"yarn",packageGlobs:n.workspaces.packages}),e.next=25;break;case 10:if(!n.bolt||!n.bolt.workspaces){e.next=14;break}o={type:"bolt",packageGlobs:n.bolt.workspaces},e.next=25;break;case 14:return e.prev=14,e.next=17,g(i.join(t,"pnpm-workspace.yaml"));case 17:(s=e.sent)&&s.packages&&(o={type:"pnpm",packageGlobs:s.packages}),e.next=25;break;case 21:if(e.prev=21,e.t0=e.catch(14),"ENOENT"===e.t0.code){e.next=25;break}throw e.t0;case 25:if(o){e.next=30;break}if(c={dir:t,packageJson:n},n.name){e.next=29;break}throw new f(["package.json"]);case 29:return e.abrupt("return",{tool:"root",root:c,packages:[c]});case 30:return e.next=32,u(o.packageGlobs,{cwd:t,onlyDirectories:!0,absolute:!0,expandDirectories:!1,ignore:["**/node_modules"]});case 32:return l=e.sent,k=[],e.next=36,Promise.all(l.sort().map(function(e){return p.readJson(i.join(e,"package.json")).then(function(r){return r.name||k.push(i.relative(t,i.join(e,"package.json"))),{packageJson:r,dir:e}}).catch(function(e){if("ENOENT"===e.code)return null;throw e})}));case 36:if(e.t1=function(e){return e},y=e.sent.filter(e.t1),0===k.length){e.next=41;break}throw k.sort(),new f(k);case 41:return e.abrupt("return",{tool:o.type,root:{dir:t,packageJson:n},packages:y});case 42:case"end":return e.stop()}},e,null,[[14,21]])}))).apply(this,arguments)}function w(e){var r,a=b.findRootSync(e),t=p.readJsonSync(i.join(a,"package.json"));if(t.workspaces)Array.isArray(t.workspaces)?r={type:"yarn",packageGlobs:t.workspaces}:t.workspaces.packages&&(r={type:"yarn",packageGlobs:t.workspaces.packages});else if(t.bolt&&t.bolt.workspaces)r={type:"bolt",packageGlobs:t.bolt.workspaces};else try{var n=k.sync(i.join(a,"pnpm-workspace.yaml"));n&&n.packages&&(r={type:"pnpm",packageGlobs:n.packages})}catch(g){if("ENOENT"!==g.code)throw g}if(!r){var o={dir:a,packageJson:t};if(!t.name)throw new f(["package.json"]);return{tool:"root",root:o,packages:[o]}}var s=l.sync(r.packageGlobs,{cwd:a,onlyDirectories:!0,absolute:!0,expandDirectories:!1,ignore:["**/node_modules"]}),c=[],u=s.sort().map(function(e){try{var r=p.readJsonSync(i.join(e,"package.json"));return r.name||c.push(i.relative(a,i.join(e,"package.json"))),{packageJson:r,dir:e}}catch(g){if("ENOENT"===g.code)return null;throw g}}).filter(function(e){return e});if(0!==c.length)throw c.sort(),new f(c);return{tool:r.type,root:{dir:a,packageJson:t},packages:u}}exports.PackageJsonMissingNameError=f,exports.getPackages=y,exports.getPackagesSync=w; +},{"@babel/runtime/regenerator":"/fRJ","@babel/runtime/helpers/asyncToGenerator":"KfJe","@babel/runtime/helpers/classCallCheck":"wsKa","@babel/runtime/helpers/possibleConstructorReturn":"3IpR","@babel/runtime/helpers/getPrototypeOf":"ktv5","@babel/runtime/helpers/inherits":"OMyF","@babel/runtime/helpers/wrapNativeSuper":"o2EI","fs-extra":"+Tly","globby":"/xfT","read-yaml-file":"R9us","@manypkg/find-root":"bBB5"}],"gHp6":[function(require,module,exports) { +"use strict";"production"===process.env.NODE_ENV?module.exports=require("./get-packages.cjs.prod.js"):module.exports=require("./get-packages.cjs.dev.js"); +},{"./get-packages.cjs.prod.js":"zmAz","./get-packages.cjs.dev.js":"zmAz"}],"8mvI":[function(require,module,exports) { "use strict";var t=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])};return function(e,r){function o(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(o.prototype=r.prototype,new o)}}();Object.defineProperty(exports,"__esModule",{value:!0});var e=function(e){function r(t){var r=this.constructor;void 0===t&&(t="");var o=e.call(this,t)||this;return o.message=t,Object.setPrototypeOf(o,r.prototype),delete o.stack,o.name=r.name,o._error=new Error,o}return t(r,e),Object.defineProperty(r.prototype,"stack",{get:function(){if(this._stack)return this._stack;var t=Object.getPrototypeOf(this),e=1;t:for(;t;){switch(t){case r.prototype:break t;case Object.prototype:e=1;break t;default:e++}t=Object.getPrototypeOf(t)}var o=(this._error.stack||"").match(/.+/g)||[],s=this.name;return this.message&&(s+=": "+this.message),o.splice(0,e+1,s),this._stack=o.join("\n")},enumerable:!0,configurable:!0}),r}(Error);exports.ExtendableError=e,exports.default=e; },{}],"9zp6":[function(require,module,exports) { "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ValidationError=exports.PreExitButNotInPreModeError=exports.PreEnterButInPreModeError=exports.InternalError=exports.GitError=exports.ExitError=void 0;var e=r(require("extendable-error"));function r(e){return e&&e.__esModule?e:{default:e}}class t extends e.default{constructor(e,r){super(`${r}, exit code: ${e}`),this.code=e}}exports.GitError=t;class o extends e.default{}exports.ValidationError=o;class s extends e.default{constructor(e){super(`The process exited with code: ${e}`),this.code=e}}exports.ExitError=s;class n extends e.default{constructor(){super("pre mode cannot be exited when not in pre mode")}}exports.PreExitButNotInPreModeError=n;class d extends e.default{constructor(){super("pre mode cannot be entered when in pre mode")}}exports.PreEnterButInPreModeError=d;class u extends e.default{constructor(e){super(e)}}exports.InternalError=u; },{"extendable-error":"8mvI"}],"mAOc":[function(require,module,exports) { "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.enterPre=l,exports.exitPre=u,exports.readPreState=c;var e=require("fs-extra"),r=o(require("path")),t=require("@manypkg/get-packages"),n=require("@changesets/errors");function o(e){return e&&e.__esModule?e:{default:e}}function i(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,n)}return t}function a(e){for(var r=1;r{if(!e)return c(null,a=a||o);switch(e.code){case"ENOENT":if(r.dirname(o)===o)return c(e);i(r.dirname(o),s,(e,r)=>{e?c(e,r):i(o,s,c,r)});break;default:l.stat(o,(r,t)=>{r||!t.isDirectory()?c(e,a):c(null,a)})}})}module.exports=i; },{"graceful-fs":"Bwvh","./win32":"kidm"}],"ISSx":[function(require,module,exports) { "use strict";const r=require("graceful-fs"),e=require("path"),t=require("./win32").invalidWin32Path,o=parseInt("0777",8);function i(c,n,s){n&&"object"==typeof n||(n={mode:n});let a=n.mode;const d=n.fs||r;if("win32"===process.platform&&t(c)){const r=new Error(c+" contains invalid WIN32 path characters.");throw r.code="EINVAL",r}void 0===a&&(a=o&~process.umask()),s||(s=null),c=e.resolve(c);try{d.mkdirSync(c,a),s=s||c}catch(l){if("ENOENT"===l.code){if(e.dirname(c)===c)throw l;s=i(e.dirname(c),n,s),i(c,n,s)}else{let r;try{r=d.statSync(c)}catch(f){throw l}if(!r.isDirectory())throw l}}return s}module.exports=i; @@ -862,15 +984,37 @@ var e,t=require("assert"),r=require("./signals.js"),i=require("events");function "use strict";const e=require("events");class t extends Promise{constructor(e){let t,s;super((e,o)=>{t=e,s=o}),e(t,s,this)}}Object.assign(t.prototype,e.prototype),module.exports=t; },{}],"B4ZL":[function(require,module,exports) { "use strict";const e=require("cross-spawn"),r=require("signal-exit"),t=require("events"),o=require("./promise"),s=new Set;function d(r,t,d){return new o((o,u,n)=>{let i=e(r,t,d),f=Buffer.from(""),c=Buffer.from("");s.add(i),i.stdout&&i.stdout.on("data",e=>{f=Buffer.concat([f,e]),n.emit("stdout",e)}),i.stderr&&i.stderr.on("data",e=>{c=Buffer.concat([c,e]),n.emit("stderr",e)}),i.on("error",e=>{s.delete(i),u(e)}),i.on("close",e=>{s.delete(i),o({code:e,stdout:f,stderr:c})})})}r(()=>{for(let e of s)e.kill("SIGTERM")}),module.exports=d,module.exports.ChildProcessPromise=o; -},{"cross-spawn":"SHOS","signal-exit":"uoir","./promise":"YPOo"}],"X8gZ":[function(require,module,exports) { +},{"cross-spawn":"SHOS","signal-exit":"uoir","./promise":"YPOo"}],"/9l1":[function(require,module,exports) { +var e=require("../helpers/typeof"),r=require("./assertThisInitialized");function t(t,i){return!i||"object"!==e(i)&&"function"!=typeof i?r(t):i}module.exports=t; +},{"../helpers/typeof":"JXeY","./assertThisInitialized":"QrBC"}],"N5I9":[function(require,module,exports) { +var e=require("./setPrototypeOf");function r(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");r.prototype=Object.create(t&&t.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),t&&e(r,t)}module.exports=r; +},{"./setPrototypeOf":"+4Fj"}],"H4mR":[function(require,module,exports) { +var e=require("./setPrototypeOf"),t=require("./isNativeReflectConstruct");function r(o,u,n){return t()?module.exports=r=Reflect.construct:module.exports=r=function(t,r,o){var u=[null];u.push.apply(u,r);var n=new(Function.bind.apply(t,u));return o&&e(n,o.prototype),n},r.apply(null,arguments)}module.exports=r; +},{"./setPrototypeOf":"+4Fj","./isNativeReflectConstruct":"xVKV"}],"7W+l":[function(require,module,exports) { +var e=require("./getPrototypeOf"),r=require("./setPrototypeOf"),t=require("./isNativeFunction"),o=require("./construct");function n(u){var i="function"==typeof Map?new Map:void 0;return module.exports=n=function(n){if(null===n||!t(n))return n;if("function"!=typeof n)throw new TypeError("Super expression must either be null or a function");if(void 0!==i){if(i.has(n))return i.get(n);i.set(n,u)}function u(){return o(n,arguments,e(this).constructor)}return u.prototype=Object.create(n.prototype,{constructor:{value:u,enumerable:!1,writable:!0,configurable:!0}}),r(u,n)},n(u)}module.exports=n; +},{"./getPrototypeOf":"ktv5","./setPrototypeOf":"+4Fj","./isNativeFunction":"QJRy","./construct":"H4mR"}],"oVzF":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=u;var e=r(require("../../helpers/esm/typeof")),t=r(require("./assertThisInitialized"));function r(e){return e&&e.__esModule?e:{default:e}}function u(r,u){return!u||"object"!==(0,e.default)(u)&&"function"!=typeof u?(0,t.default)(r):u} +},{"../../helpers/esm/typeof":"ugyC","./assertThisInitialized":"mJ6v"}],"FG3L":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=r;var e=t(require("./setPrototypeOf"));function t(e){return e&&e.__esModule?e:{default:e}}function r(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(r&&r.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),r&&(0,e.default)(t,r)} +},{"./setPrototypeOf":"sp3I"}],"O+8+":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=u;var e=r(require("./setPrototypeOf")),t=r(require("./isNativeReflectConstruct"));function r(e){return e&&e.__esModule?e:{default:e}}function u(r,l,n){return(0,t.default)()?exports.default=u=Reflect.construct:exports.default=u=function(t,r,u){var l=[null];l.push.apply(l,r);var n=new(Function.bind.apply(t,l));return u&&(0,e.default)(n,u.prototype),n},u.apply(null,arguments)} +},{"./setPrototypeOf":"sp3I","./isNativeReflectConstruct":"t5vf"}],"1Kf8":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=n;var e=o(require("./getPrototypeOf")),t=o(require("./setPrototypeOf")),r=o(require("./isNativeFunction")),u=o(require("./construct"));function o(e){return e&&e.__esModule?e:{default:e}}function n(o){var i="function"==typeof Map?new Map:void 0;return exports.default=n=function(o){if(null===o||!(0,r.default)(o))return o;if("function"!=typeof o)throw new TypeError("Super expression must either be null or a function");if(void 0!==i){if(i.has(o))return i.get(o);i.set(o,n)}function n(){return(0,u.default)(o,arguments,(0,e.default)(this).constructor)}return n.prototype=Object.create(o.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),(0,t.default)(n,o)},n(o)} +},{"./getPrototypeOf":"d/yJ","./setPrototypeOf":"sp3I","./isNativeFunction":"QOlZ","./construct":"O+8+"}],"/X1X":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.findRoot=v,exports.findRootSync=k,exports.NoPkgJsonFound=void 0;var e=p(require("@babel/runtime/regenerator")),r=p(require("@babel/runtime/helpers/esm/asyncToGenerator")),t=p(require("@babel/runtime/helpers/esm/classCallCheck")),n=p(require("@babel/runtime/helpers/esm/possibleConstructorReturn")),u=p(require("@babel/runtime/helpers/esm/getPrototypeOf")),a=p(require("@babel/runtime/helpers/esm/inherits")),o=p(require("@babel/runtime/helpers/esm/wrapNativeSuper")),i=f(require("find-up")),c=p(require("path")),s=p(require("fs-extra"));function f(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)){var n=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(e,t):{};n.get||n.set?Object.defineProperty(r,t,n):r[t]=e[t]}return r.default=e,r}function p(e){return e&&e.__esModule?e:{default:e}}var l=function(e){function r(e){var a;return(0,t.default)(this,r),(a=(0,n.default)(this,(0,u.default)(r).call(this,"No package.json could be found upwards from the directory ".concat(e)))).directory=e,a}return(0,a.default)(r,e),r}((0,o.default)(Error));function d(e,r){return b.apply(this,arguments)}function b(){return(b=(0,r.default)(e.default.mark(function r(t,n){var u;return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,s.default.readJson(c.default.join(t,"package.json"));case 3:if(u=e.sent,void 0===n.current&&(n.current=t),!u.workspaces&&!u.bolt){e.next=7;break}return e.abrupt("return",t);case 7:e.next=13;break;case 9:if(e.prev=9,e.t0=e.catch(0),"ENOENT"===e.t0.code){e.next=13;break}throw e.t0;case 13:case"end":return e.stop()}},r,null,[[0,9]])}))).apply(this,arguments)}function h(e){return y.apply(this,arguments)}function y(){return(y=(0,r.default)(e.default.mark(function r(t){return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.default.exists(c.default.join(t,"pnpm-workspace.yaml"));case 2:if(!e.sent){e.next=5;break}return e.abrupt("return",t);case 5:case"end":return e.stop()}},r)}))).apply(this,arguments)}function v(e){return w.apply(this,arguments)}function w(){return(w=(0,r.default)(e.default.mark(function r(t){var n,u;return e.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n={current:void 0},e.next=3,(0,i.default)(function(e){return Promise.all([d(e,n),h(e)]).then(function(e){return e.find(function(e){return e})})},{cwd:t,type:"directory"});case 3:if(u=e.sent,void 0!==n.current){e.next=6;break}throw new l(t);case 6:if(void 0!==u){e.next=8;break}return e.abrupt("return",n.current);case 8:return e.abrupt("return",u);case 9:case"end":return e.stop()}},r)}))).apply(this,arguments)}function m(e,r){try{var t=s.default.readJsonSync(c.default.join(e,"package.json"));if(void 0===r.current&&(r.current=e),t.workspaces||t.bolt)return e}catch(n){if("ENOENT"!==n.code)throw n}}function x(e){if(s.default.existsSync(c.default.join(e,"pnpm-workspace.yaml")))return e}function k(e){var r={current:void 0},t=(0,i.sync)(function(e){return[m(e,r),x(e)].find(function(e){return e})},{cwd:e,type:"directory"});if(void 0===r.current)throw new l(e);return void 0===t?r.current:t}exports.NoPkgJsonFound=l; +},{"@babel/runtime/regenerator":"/fRJ","@babel/runtime/helpers/esm/asyncToGenerator":"Bx41","@babel/runtime/helpers/esm/classCallCheck":"dJvD","@babel/runtime/helpers/esm/possibleConstructorReturn":"oVzF","@babel/runtime/helpers/esm/getPrototypeOf":"d/yJ","@babel/runtime/helpers/esm/inherits":"FG3L","@babel/runtime/helpers/esm/wrapNativeSuper":"1Kf8","find-up":"Pl36","fs-extra":"qdgD"}],"bV9P":[function(require,module,exports) { +"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=e(require("@babel/runtime/regenerator")),a=e(require("@babel/runtime/helpers/asyncToGenerator")),t=e(require("@babel/runtime/helpers/classCallCheck")),n=e(require("@babel/runtime/helpers/possibleConstructorReturn")),o=e(require("@babel/runtime/helpers/getPrototypeOf")),s=e(require("@babel/runtime/helpers/inherits")),c=e(require("@babel/runtime/helpers/wrapNativeSuper")),p=e(require("fs-extra")),i=e(require("path")),l=require("globby"),u=e(l),k=require("read-yaml-file"),g=e(k),b=require("@manypkg/find-root"),f=function(e){function r(e){var a;return t(this,r),(a=n(this,o(r).call(this,'The following package.jsons are missing the "name" field:\n'.concat(e.join("\n"))))).directories=e,a}return s(r,e),r}(c(Error));function y(e){return h.apply(this,arguments)}function h(){return(h=a(r.mark(function e(a){var t,n,o,s,c,l,k,y;return r.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,b.findRoot(a);case 2:return t=e.sent,e.next=5,p.readJson(i.join(t,"package.json"));case 5:if(!(n=e.sent).workspaces){e.next=10;break}Array.isArray(n.workspaces)?o={type:"yarn",packageGlobs:n.workspaces}:n.workspaces.packages&&(o={type:"yarn",packageGlobs:n.workspaces.packages}),e.next=25;break;case 10:if(!n.bolt||!n.bolt.workspaces){e.next=14;break}o={type:"bolt",packageGlobs:n.bolt.workspaces},e.next=25;break;case 14:return e.prev=14,e.next=17,g(i.join(t,"pnpm-workspace.yaml"));case 17:(s=e.sent)&&s.packages&&(o={type:"pnpm",packageGlobs:s.packages}),e.next=25;break;case 21:if(e.prev=21,e.t0=e.catch(14),"ENOENT"===e.t0.code){e.next=25;break}throw e.t0;case 25:if(o){e.next=30;break}if(c={dir:t,packageJson:n},n.name){e.next=29;break}throw new f(["package.json"]);case 29:return e.abrupt("return",{tool:"root",root:c,packages:[c]});case 30:return e.next=32,u(o.packageGlobs,{cwd:t,onlyDirectories:!0,absolute:!0,expandDirectories:!1,ignore:["**/node_modules"]});case 32:return l=e.sent,k=[],e.next=36,Promise.all(l.sort().map(function(e){return p.readJson(i.join(e,"package.json")).then(function(r){return r.name||k.push(i.relative(t,i.join(e,"package.json"))),{packageJson:r,dir:e}}).catch(function(e){if("ENOENT"===e.code)return null;throw e})}));case 36:if(e.t1=function(e){return e},y=e.sent.filter(e.t1),0===k.length){e.next=41;break}throw k.sort(),new f(k);case 41:return e.abrupt("return",{tool:o.type,root:{dir:t,packageJson:n},packages:y});case 42:case"end":return e.stop()}},e,null,[[14,21]])}))).apply(this,arguments)}function w(e){var r,a=b.findRootSync(e),t=p.readJsonSync(i.join(a,"package.json"));if(t.workspaces)Array.isArray(t.workspaces)?r={type:"yarn",packageGlobs:t.workspaces}:t.workspaces.packages&&(r={type:"yarn",packageGlobs:t.workspaces.packages});else if(t.bolt&&t.bolt.workspaces)r={type:"bolt",packageGlobs:t.bolt.workspaces};else try{var n=k.sync(i.join(a,"pnpm-workspace.yaml"));n&&n.packages&&(r={type:"pnpm",packageGlobs:n.packages})}catch(g){if("ENOENT"!==g.code)throw g}if(!r){var o={dir:a,packageJson:t};if(!t.name)throw new f(["package.json"]);return{tool:"root",root:o,packages:[o]}}var s=l.sync(r.packageGlobs,{cwd:a,onlyDirectories:!0,absolute:!0,expandDirectories:!1,ignore:["**/node_modules"]}),c=[],u=s.sort().map(function(e){try{var r=p.readJsonSync(i.join(e,"package.json"));return r.name||c.push(i.relative(a,i.join(e,"package.json"))),{packageJson:r,dir:e}}catch(g){if("ENOENT"===g.code)return null;throw g}}).filter(function(e){return e});if(0!==c.length)throw c.sort(),new f(c);return{tool:r.type,root:{dir:a,packageJson:t},packages:u}}exports.PackageJsonMissingNameError=f,exports.getPackages=y,exports.getPackagesSync=w; +},{"@babel/runtime/regenerator":"/fRJ","@babel/runtime/helpers/asyncToGenerator":"KfJe","@babel/runtime/helpers/classCallCheck":"wsKa","@babel/runtime/helpers/possibleConstructorReturn":"/9l1","@babel/runtime/helpers/getPrototypeOf":"ktv5","@babel/runtime/helpers/inherits":"N5I9","@babel/runtime/helpers/wrapNativeSuper":"7W+l","fs-extra":"qdgD","globby":"/xfT","read-yaml-file":"R9us","@manypkg/find-root":"/X1X"}],"7MXJ":[function(require,module,exports) { +"use strict";"production"===process.env.NODE_ENV?module.exports=require("./get-packages.cjs.prod.js"):module.exports=require("./get-packages.cjs.dev.js"); +},{"./get-packages.cjs.prod.js":"bV9P","./get-packages.cjs.dev.js":"bV9P"}],"X8gZ":[function(require,module,exports) { !function(e){exports&&"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"undefined"!=typeof window?window.isWindows=e():"undefined"!=typeof global?global.isWindows=e():"undefined"!=typeof self?self.isWindows=e():this.isWindows=e()}(function(){"use strict";return function(){return process&&("win32"===process.platform||/^(msys|cygwin)$/.test(process.env.OSTYPE))}}); },{}],"5ff0":[function(require,module,exports) { "use strict";const e=require("path"),r=require("is-windows");function t(r){if(0===arguments.length)return e.resolve();if("string"!=typeof r)return e.resolve(r);if(":"===r[1]){const e=r[0].charCodeAt();(e<65||e>90)&&(r=`${r[0].toUpperCase()}${r.substr(1)}`)}return r.endsWith(":")?r:e.resolve(r)}module.exports=r()?t:e.resolve; },{"is-windows":"X8gZ"}],"u5nE":[function(require,module,exports) { "use strict";const e=require("better-path-resolve"),t=require("path");module.exports=function(r,s){const o=`${e(r)}${t.sep}`;return`${e(s)}${t.sep}`.startsWith(o)}; },{"better-path-resolve":"5ff0"}],"hWLG":[function(require,module,exports) { -"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.add=d,exports.commit=c,exports.getChangedChangesetFilesSinceRef=g,exports.getChangedFilesSince=l,exports.getChangedPackagesSinceRef=w,exports.getCommitThatAddsFile=u,exports.getDivergedCommit=f,exports.tag=s;var t=n(require("spawndamnit")),e=n(require("path")),r=require("@manypkg/get-packages"),a=require("@changesets/errors"),i=n(require("is-subdir"));function n(t){return t&&t.__esModule?t:{default:t}}const o=t=>e=>(0,i.default)(t,e);async function d(e,r){const a=await(0,t.default)("git",["add",e],{cwd:r});return 0!==a.code&&console.log(e,a.stderr.toString()),0===a.code}async function c(e,r){return 0===(await(0,t.default)("git",["commit","-m",e,"--allow-empty"],{cwd:r})).code}async function s(e,r){return 0===(await(0,t.default)("git",["tag",e,"-m",e],{cwd:r})).code}async function f(e,r){const a=await(0,t.default)("git",["merge-base",r,"HEAD"],{cwd:e});if(0!==a.code)throw new Error(`Failed to find where HEAD diverged from ${r}. Does ${r} exist?`);return a.stdout.toString().trim()}async function u(e,r){return(await(0,t.default)("git",["log","--diff-filter=A","--max-count=1","--pretty=format:%h",e],{cwd:r})).stdout.toString()}async function l({cwd:r,ref:a,fullPath:i=!1}){const n=await f(r,a),o=await(0,t.default)("git",["diff","--name-only",n],{cwd:r});if(0!==o.code)throw new Error(`Failed to diff against ${n}. Is ${n} a valid ref?`);const d=o.stdout.toString().trim().split("\n");return i?d.map(t=>e.default.resolve(r,t)):d}async function g({cwd:e,ref:r}){try{const n=await f(e,r),o=await(0,t.default)("git",["diff","--name-only","--diff-filter=d",n],{cwd:e});let d=/.changeset\/[^/]+\.md$/;return o.stdout.toString().trim().split("\n").filter(t=>d.test(t))}catch(i){if(i instanceof a.GitError)return[];throw i}}async function w({cwd:t,ref:e}){const a=await l({ref:e,cwd:t,fullPath:!0});let i=await(0,r.getPackages)(t);const n={};return i.packages.forEach(t=>a.filter(o(t.dir)).forEach(e=>{const r=n[e]||{dir:""};t.dir.length>r.dir.length&&(n[e]=t)})),Object.values(n).filter((t,e,r)=>r.indexOf(t)===e)} -},{"spawndamnit":"B4ZL","@manypkg/get-packages":"9z3N","@changesets/errors":"9zp6","is-subdir":"u5nE"}],"N0am":[function(require,module,exports) { +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.add=d,exports.commit=c,exports.getChangedChangesetFilesSinceRef=g,exports.getChangedFilesSince=l,exports.getChangedPackagesSinceRef=w,exports.getCommitThatAddsFile=u,exports.getDivergedCommit=f,exports.tag=s;var t=n(require("spawndamnit")),e=n(require("path")),r=require("@manypkg/get-packages"),a=require("@changesets/errors"),i=n(require("is-subdir"));function n(t){return t&&t.__esModule?t:{default:t}}const o=t=>e=>(0,i.default)(t,e);async function d(e,r){const a=await(0,t.default)("git",["add",e],{cwd:r});return 0!==a.code&&console.log(e,a.stderr.toString()),0===a.code}async function c(e,r){return 0===(await(0,t.default)("git",["commit","-m",e,"--allow-empty"],{cwd:r})).code}async function s(e,r){return 0===(await(0,t.default)("git",["tag",e,"-m",e],{cwd:r})).code}async function f(e,r){const a=await(0,t.default)("git",["merge-base",r,"HEAD"],{cwd:e});if(0!==a.code)throw new Error(`Failed to find where HEAD diverged from ${r}. Does ${r} exist?`);return a.stdout.toString().trim()}async function u(e,r){return(await(0,t.default)("git",["log","--diff-filter=A","--max-count=1","--pretty=format:%h",e],{cwd:r})).stdout.toString()}async function l({cwd:r,ref:a,fullPath:i=!1}){const n=await f(r,a),o=await(0,t.default)("git",["diff","--name-only",n],{cwd:r});if(0!==o.code)throw new Error(`Failed to diff against ${n}. Is ${n} a valid ref?`);const d=o.stdout.toString().trim().split("\n");return i?d.map(t=>e.default.resolve(r,t)):d}async function g({cwd:e,ref:r}){try{const n=await f(e,r),o=await(0,t.default)("git",["diff","--name-only","--diff-filter=d",n],{cwd:e});let d=/.changeset\/[^\/]+\.md$/;return o.stdout.toString().trim().split("\n").filter(t=>d.test(t))}catch(i){if(i instanceof a.GitError)return[];throw i}}async function w({cwd:t,ref:e}){const a=await l({ref:e,cwd:t,fullPath:!0});let i=await(0,r.getPackages)(t);const n={};return i.packages.forEach(t=>a.filter(o(t.dir)).forEach(e=>{const r=n[e]||{dir:""};t.dir.length>r.dir.length&&(n[e]=t)})),Object.values(n).filter((t,e,r)=>r.indexOf(t)===e)} +},{"spawndamnit":"B4ZL","@manypkg/get-packages":"7MXJ","@changesets/errors":"9zp6","is-subdir":"u5nE"}],"N0am":[function(require,module,exports) { "use strict";var r=/[|\\{}()[\]^$+*?.]/g;module.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(r,"\\$&")}; },{}],"Lr6W":[function(require,module,exports) { "use strict";module.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}; @@ -903,7 +1047,7 @@ var e=require("./conversions"),n=require("./route"),r={},o=Object.keys(e);functi },{"@changesets/pre":"mAOc","@changesets/read":"X/D8"}],"zg8f":[function(require,module,exports) { "use strict";const e=require("path"),t=require("module"),r=require("fs"),o=(o,i,n)=>{if("string"!=typeof o)throw new TypeError(`Expected \`fromDir\` to be of type \`string\`, got \`${typeof o}\``);if("string"!=typeof i)throw new TypeError(`Expected \`moduleId\` to be of type \`string\`, got \`${typeof i}\``);try{o=r.realpathSync(o)}catch(f){if("ENOENT"!==f.code){if(n)return;throw f}o=e.resolve(o)}const s=e.join(o,"noop.js"),p=()=>t._resolveFilename(i,{id:s,filename:s,paths:t._nodeModulePaths(o)});if(n)try{return p()}catch(f){return}return p()};module.exports=((e,t)=>o(e,t)),module.exports.silent=((e,t)=>o(e,t,!0)); },{}],"gwbb":[function(require,module,exports) { -"use strict";function e(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),a.push.apply(a,r)}return a}function t(t){for(var r=1;r{try{let o=l.default.join(a.dir,"CHANGELOG.md"),c=await i.default.readFile(o,"utf8"),u=p.getChangelogEntry(c,a.packageJson.version);if(!u)throw new Error(`Could not find changelog entry for ${a.packageJson.name}@${a.packageJson.version}`);await e.repos.createRelease(t({name:r,tag_name:r,body:u.content,prerelease:a.packageJson.version.includes("-")},s.context.repo))}catch(n){if("ENOENT"!==n.code)throw n}};async function w({script:e,githubToken:t,cwd:a=process.cwd()}){let r=s.getOctokit(t),[n,...o]=e.split(/\s+/),i=await p.execWithOutput(n,o,{cwd:a});await g.pushTags();let{packages:l,tool:u}=await c.getPackages(a),h=[];if("root"!==u){let e=/New tag:\s+(@[^/]+\/[^@]+|[^/]+)@([^\s]+)/,t=new Map(l.map(e=>[e.packageJson.name,e]));for(let a of i.stdout.split("\n")){let r=a.match(e);if(null===r)continue;let n=r[1],o=t.get(n);if(void 0===o)throw new Error(`Package "${n}" not found.`+"This is probably a bug in the action, please open an issue");h.push(o)}await Promise.all(h.map(e=>f(r,{pkg:e,tagName:`${e.packageJson.name}@${e.packageJson.version}`})))}else{if(0===l.length)throw new Error("No package found.This is probably a bug in the action, please open an issue");let e=l[0],t=/New tag:/;for(let a of i.stdout.split("\n")){if(a.match(t)){h.push(e),await f(r,{pkg:e,tagName:`v${e.packageJson.version}`});break}}}return h.length?{published:!0,publishedPackages:h.map(e=>({name:e.packageJson.name,version:e.packageJson.version}))}:{published:!1}}exports.runPublish=w;const b=e=>{try{return require(d.default(e,"@changesets/cli/package.json"))}catch(t){if(t&&"MODULE_NOT_FOUND"===t.code)throw new Error(`Have you forgotten to install \`@changesets/cli\` in "${e}"?`);throw t}};async function m({script:e,githubToken:a,cwd:r=process.cwd(),prTitle:n="Version Packages",commitMessage:c="Version Packages",hasPublishScript:f=!1}){let w=`${s.context.repo.owner}/${s.context.repo.repo}`,m=s.context.ref.replace("refs/heads/",""),y=`changeset-release/${m}`,k=s.getOctokit(a),{preState:O}=await h.default(r);await g.switchToMaybeExistingBranch(y),await g.reset(s.context.sha);let v=await p.getVersionsByDirectory(r);if(e){let[t,...a]=e.split(/\s+/);await o.exec(t,a,{cwd:r})}else{let e=b(r),t=u.lt(e.version,"2.0.0")?"bump":"version";await o.exec("node",[d.default(r,"@changesets/cli/bin.js"),t],{cwd:r})}let $=`repo:${w}+state:open+head:${y}+base:${m}`,P=k.search.issuesAndPullRequests({q:$}),j=await p.getChangedPackages(r,v),x=(async()=>`This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and ${f?"the packages will be published to npm automatically":"publish to npm yourself or [setup this action to publish automatically](https://github.com/changesets/action#with-publishing)"}. If you're not ready to do a release yet, that's fine, whenever you add more changesets to ${m}, this PR will be updated.\n${O?`\n⚠️⚠️⚠️⚠️⚠️⚠️\n\n\`${m}\` is currently in **pre mode** so this branch has prereleases rather than normal releases. If you want to exit prereleases, run \`changeset pre exit\` on \`${m}\`.\n\n⚠️⚠️⚠️⚠️⚠️⚠️\n`:""}\n# Releases\n`+(await Promise.all(j.map(async e=>{let t=await i.default.readFile(l.default.join(e.dir,"CHANGELOG.md"),"utf8"),a=p.getChangelogEntry(t,e.packageJson.version);return{highestLevel:a.highestLevel,private:!!e.packageJson.private,content:`## ${e.packageJson.name}@${e.packageJson.version}\n\n`+a.content}}))).filter(e=>e).sort(p.sortTheThings).map(e=>e.content).join("\n "))();const q=`${n}${O?` (${O.tag})`:""}`;if(!(await g.checkIfClean())){const e=`${c}${O?` (${O.tag})`:""}`;await g.commitAll(e)}await g.push(y,{force:!0});let J=await P;console.log(JSON.stringify(J.data,null,2)),0===J.data.items.length?(console.log("creating pull request"),await k.pulls.create(t({base:m,head:y,title:q,body:await x},s.context.repo))):(k.pulls.update(t({pull_number:J.data.items[0].number,title:q,body:await x},s.context.repo)),console.log("pull request found"))}exports.runVersion=m; +"use strict";function e(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),a.push.apply(a,r)}return a}function t(t){for(var r=1;r{try{let o=l.default.join(a.dir,"CHANGELOG.md"),c=await i.default.readFile(o,"utf8"),u=p.getChangelogEntry(c,a.packageJson.version);if(!u)throw new Error(`Could not find changelog entry for ${a.packageJson.name}@${a.packageJson.version}`);await e.repos.createRelease(t({name:r,tag_name:r,body:u.content,prerelease:a.packageJson.version.includes("-")},s.context.repo))}catch(n){if("ENOENT"!==n.code)throw n}};async function w({script:e,githubToken:t,cwd:a=process.cwd()}){let r=s.getOctokit(t),[n,...o]=e.split(/\s+/),i=await p.execWithOutput(n,o,{cwd:a});await g.pushTags();let{packages:l,tool:u}=await c.getPackages(a),h=[];if("root"!==u){let e=/New tag:\s+(@[^\/]+\/[^@]+|[^\/]+)@([^\s]+)/,t=new Map(l.map(e=>[e.packageJson.name,e]));for(let a of i.stdout.split("\n")){let r=a.match(e);if(null===r)continue;let n=r[1],o=t.get(n);if(void 0===o)throw new Error(`Package "${n}" not found.`+"This is probably a bug in the action, please open an issue");h.push(o)}await Promise.all(h.map(e=>f(r,{pkg:e,tagName:`${e.packageJson.name}@${e.packageJson.version}`})))}else{if(0===l.length)throw new Error("No package found.This is probably a bug in the action, please open an issue");let e=l[0],t=/New tag:/;for(let a of i.stdout.split("\n")){if(a.match(t)){h.push(e),await f(r,{pkg:e,tagName:`v${e.packageJson.version}`});break}}}return h.length?{published:!0,publishedPackages:h.map(e=>({name:e.packageJson.name,version:e.packageJson.version}))}:{published:!1}}exports.runPublish=w;const b=e=>{try{return require(d.default(e,"@changesets/cli/package.json"))}catch(t){if(t&&"MODULE_NOT_FOUND"===t.code)throw new Error(`Have you forgotten to install \`@changesets/cli\` in "${e}"?`);throw t}};async function m({script:e,githubToken:a,cwd:r=process.cwd(),prTitle:n="Version Packages",commitMessage:c="Version Packages",hasPublishScript:f=!1}){let w=`${s.context.repo.owner}/${s.context.repo.repo}`,m=s.context.ref.replace("refs/heads/",""),y=`changeset-release/${m}`,k=s.getOctokit(a),{preState:O}=await h.default(r);await g.switchToMaybeExistingBranch(y),await g.reset(s.context.sha);let v=await p.getVersionsByDirectory(r);if(e){let[t,...a]=e.split(/\s+/);await o.exec(t,a,{cwd:r})}else{let e=b(r),t=u.lt(e.version,"2.0.0")?"bump":"version";await o.exec("node",[d.default(r,"@changesets/cli/bin.js"),t],{cwd:r})}let $=`repo:${w}+state:open+head:${y}+base:${m}`,P=k.search.issuesAndPullRequests({q:$}),j=await p.getChangedPackages(r,v),x=(async()=>`This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and ${f?"the packages will be published to npm automatically":"publish to npm yourself or [setup this action to publish automatically](https://github.com/changesets/action#with-publishing)"}. If you're not ready to do a release yet, that's fine, whenever you add more changesets to ${m}, this PR will be updated.\n${O?`\n⚠️⚠️⚠️⚠️⚠️⚠️\n\n\`${m}\` is currently in **pre mode** so this branch has prereleases rather than normal releases. If you want to exit prereleases, run \`changeset pre exit\` on \`${m}\`.\n\n⚠️⚠️⚠️⚠️⚠️⚠️\n`:""}\n# Releases\n`+(await Promise.all(j.map(async e=>{let t=await i.default.readFile(l.default.join(e.dir,"CHANGELOG.md"),"utf8"),a=p.getChangelogEntry(t,e.packageJson.version);return{highestLevel:a.highestLevel,private:!!e.packageJson.private,content:`## ${e.packageJson.name}@${e.packageJson.version}\n\n`+a.content}}))).filter(e=>e).sort(p.sortTheThings).map(e=>e.content).join("\n "))();const q=`${n}${O?` (${O.tag})`:""}`;if(!(await g.checkIfClean())){const e=`${c}${O?` (${O.tag})`:""}`;await g.commitAll(e)}await g.push(y,{force:!0});let J=await P;console.log(JSON.stringify(J.data,null,2)),0===J.data.items.length?(console.log("creating pull request"),await k.pulls.create(t({base:m,head:y,title:q,body:await x},s.context.repo))):(k.pulls.update(t({pull_number:J.data.items[0].number,title:q,body:await x},s.context.repo)),console.log("pull request found"))}exports.runVersion=m; },{"@actions/exec":"AjbX","@actions/github":"Jpqw","fs-extra":"qdgD","@manypkg/get-packages":"9z3N","semver":"y4rL","./utils":"UnXq","./gitUtils":"pH2w","./readChangesetState":"yOXS","resolve-from":"zg8f"}],"7QCb":[function(require,module,exports) { -"use strict";var e=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&(t[s]=e[s]);return t.default=e,t},t=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const s=e(require("@actions/core")),i=t(require("fs-extra")),n=e(require("./gitUtils")),r=require("./run"),o=t(require("./readChangesetState")),u=e=>s.getInput(e)||void 0;(async()=>{let e=process.env.GITHUB_TOKEN;if(!e)return void s.setFailed("Please add the GITHUB_TOKEN to the changesets action");console.log("setting git user"),await n.setupUser(),console.log("setting GitHub credentials"),await i.default.writeFile(`${process.env.HOME}/.netrc`,`machine github.com\nlogin github-actions[bot]\npassword ${e}`);let{changesets:t}=await o.default(),a=s.getInput("publish"),l=0!==t.length,c=!!a;switch(s.setOutput("published","false"),s.setOutput("publishedPackages","[]"),s.setOutput("hasChangesets",String(l)),!0){case!l&&!c:return void console.log("No changesets found");case!l&&c:{console.log("No changesets found, attempting to publish any unpublished packages to npm");let t=`${process.env.HOME}/.npmrc`;if(i.default.existsSync(t)){console.log("Found existing user .npmrc file"),(await i.default.readFile(t,"utf8")).split("\n").find(e=>/^\s*\/\/registry\.npmjs\.org\/:[_-]authToken=/i.test(e))?console.log("Found existing auth token for the npm registry in the user .npmrc file"):(console.log("Didn't find existing auth token for the npm registry in the user .npmrc file, creating one"),i.default.appendFileSync(t,`\n//registry.npmjs.org/:_authToken=${process.env.NPM_TOKEN}\n`))}else console.log("No user .npmrc file found, creating one"),i.default.writeFileSync(t,`//registry.npmjs.org/:_authToken=${process.env.NPM_TOKEN}\n`);const n=await r.runPublish({script:a,githubToken:e});return void(n.published&&(s.setOutput("published","true"),s.setOutput("publishedPackages",JSON.stringify(n.publishedPackages))))}case l:return void(await r.runVersion({script:u("version"),githubToken:e,prTitle:u("title"),commitMessage:u("commit"),hasPublishScript:c}))}})().catch(e=>{console.error(e),s.setFailed(e.message)}); -},{"@actions/core":"RNev","fs-extra":"qdgD","./gitUtils":"pH2w","./run":"gwbb","./readChangesetState":"yOXS"}]},{},["7QCb"], null) \ No newline at end of file +"use strict";var e=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&(t[s]=e[s]);return t.default=e,t},t=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const s=e(require("@actions/core")),i=t(require("fs-extra")),r=e(require("./gitUtils")),u=e(require("./npmUtils")),a=require("./run"),n=t(require("./readChangesetState")),o=e=>s.getInput(e)||void 0;(async()=>{let e=process.env.GITHUB_TOKEN;if(!e)return void s.setFailed("Please add the GITHUB_TOKEN to the changesets action");console.log("setting git user"),await r.setupUser(),console.log("setting GitHub credentials"),await i.default.writeFile(`${process.env.HOME}/.netrc`,`machine github.com\nlogin github-actions[bot]\npassword ${e}`);let{changesets:t}=await n.default(),l=s.getInput("publish"),c=0!==t.length,p=!!l;switch(s.setOutput("published","false"),s.setOutput("publishedPackages","[]"),s.setOutput("hasChangesets",String(c)),!0){case!c&&!p:return void console.log("No changesets found");case!c&&p:{console.log("No changesets found, attempting to publish any unpublished packages to npm"),u.prepareNpmConfig();const t=await a.runPublish({script:l,githubToken:e});return void(t.published&&(s.setOutput("published","true"),s.setOutput("publishedPackages",JSON.stringify(t.publishedPackages))))}case c:return void(await a.runVersion({script:o("version"),githubToken:e,prTitle:o("title"),commitMessage:o("commit"),hasPublishScript:p}))}})().catch(e=>{console.error(e),s.setFailed(e.message)}); +},{"@actions/core":"RNev","fs-extra":"qdgD","./gitUtils":"pH2w","./npmUtils":"8k/q","./run":"gwbb","./readChangesetState":"yOXS"}]},{},["7QCb"], null) \ No newline at end of file diff --git a/package.json b/package.json index fb7a114a..111b8151 100644 --- a/package.json +++ b/package.json @@ -27,12 +27,14 @@ "@changesets/read": "^0.4.6", "@manypkg/get-packages": "^1.1.1", "@types/fs-extra": "^8.0.0", + "@types/ini": "1.3.31", "@types/jest": "^24.0.18", "@types/node": "^12.7.1", "@types/semver": "^6.0.2", "babel-jest": "^24.9.0", "fs-extra": "^8.1.0", "husky": "^3.0.3", + "ini": "^2.0.0", "jest": "^24.9.0", "mdast-util-to-string": "^1.0.6", "remark-parse": "^7.0.1", diff --git a/src/index.ts b/src/index.ts index 5f3b871a..f74d999b 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,6 +1,8 @@ import * as core from "@actions/core"; import fs from "fs-extra"; +import * as ini from "ini"; import * as gitUtils from "./gitUtils"; +import * as npmUtils from "./npmUtils"; import { runPublish, runVersion } from "./run"; import readChangesetState from "./readChangesetState"; @@ -42,34 +44,7 @@ const getOptionalInput = (name: string) => core.getInput(name) || undefined; "No changesets found, attempting to publish any unpublished packages to npm" ); - let userNpmrcPath = `${process.env.HOME}/.npmrc`; - if (fs.existsSync(userNpmrcPath)) { - console.log("Found existing user .npmrc file"); - const userNpmrcContent = await fs.readFile(userNpmrcPath, "utf8"); - const authLine = userNpmrcContent.split("\n").find((line) => { - // check based on https://github.com/npm/cli/blob/8f8f71e4dd5ee66b3b17888faad5a7bf6c657eed/test/lib/adduser.js#L103-L105 - return /^\s*\/\/registry\.npmjs\.org\/:[_-]authToken=/i.test(line); - }); - if (authLine) { - console.log( - "Found existing auth token for the npm registry in the user .npmrc file" - ); - } else { - console.log( - "Didn't find existing auth token for the npm registry in the user .npmrc file, creating one" - ); - fs.appendFileSync( - userNpmrcPath, - `\n//registry.npmjs.org/:_authToken=${process.env.NPM_TOKEN}\n` - ); - } - } else { - console.log("No user .npmrc file found, creating one"); - fs.writeFileSync( - userNpmrcPath, - `//registry.npmjs.org/:_authToken=${process.env.NPM_TOKEN}\n` - ); - } + npmUtils.prepareNpmConfig(); const result = await runPublish({ script: publishScript, diff --git a/src/npmUtils.test.ts b/src/npmUtils.test.ts new file mode 100644 index 00000000..69214852 --- /dev/null +++ b/src/npmUtils.test.ts @@ -0,0 +1,107 @@ +import fs from "fs"; +import path from "path"; +import * as ini from "ini"; +import fixtures from "fixturez"; +import { prepareNpmConfig } from "./npmUtils"; + +const f = fixtures(__dirname); +const authToken = "npm_abc"; + +describe("prepareNpmConfig", () => { + let tmpDir: string; + let npmrcPath: string; + + beforeEach(() => { + tmpDir = f.temp(); + npmrcPath = path.join(tmpDir, ".npmrc"); + }); + + describe("when .npmrc exists", () => { + describe("when authToken is defined", () => { + beforeEach(() => { + fs.writeFileSync( + npmrcPath, + ini.stringify({ + email: "npm@company.com", + "//registry.npmjs.org/:_authToken": authToken, + }) + ); + }); + test("should not change the .npmrc file", () => { + prepareNpmConfig({ HOME: tmpDir }); + + const npmConfig = ini.parse(fs.readFileSync(npmrcPath, "utf-8")); + expect(npmConfig).toMatchInlineSnapshot(` + Object { + "//registry.npmjs.org/:_authToken": "npm_abc", + "email": "npm@company.com", + } + `); + }); + }); + describe("when authToken is not defined", () => { + beforeEach(() => { + fs.writeFileSync( + npmrcPath, + ini.stringify({ + email: "npm@company.com", + }) + ); + }); + describe("when NPM_TOKEN environment variable is not defined", () => { + test("it should throw an error", () => { + expect(() => + prepareNpmConfig({ + HOME: tmpDir, + NPM_TOKEN: undefined, + }) + ).toThrowErrorMatchingInlineSnapshot( + `"Missing NPM authToken. Please make sure you have the \`NPM_TOKEN\` environment variable defined."` + ); + }); + }); + test("should inject NPM_TOKEN value in .npmrc file", () => { + prepareNpmConfig({ + HOME: tmpDir, + NPM_TOKEN: authToken, + }); + + const npmConfig = ini.parse(fs.readFileSync(npmrcPath, "utf-8")); + expect(npmConfig).toMatchInlineSnapshot(` + Object { + "//registry.npmjs.org/:_authToken": "npm_abc", + "email": "npm@company.com", + } + `); + }); + }); + }); + + describe("when .npmrc does not exist", () => { + describe("when NPM_TOKEN environment variable is not defined", () => { + test("it should throw an error", () => { + expect(() => + prepareNpmConfig({ + HOME: tmpDir, + NPM_TOKEN: undefined, + }) + ).toThrowErrorMatchingInlineSnapshot( + `"Missing NPM authToken. Please make sure you have the \`NPM_TOKEN\` environment variable defined."` + ); + }); + }); + test("should create a new .npmrc config", () => { + prepareNpmConfig({ + HOME: tmpDir, + NPM_TOKEN: authToken, + }); + + const npmConfig = ini.parse(fs.readFileSync(npmrcPath, "utf-8")); + expect(npmConfig).toMatchInlineSnapshot(` + Object { + "//registry.npmjs.org/:_authToken": "npm_abc", + } + `); + }); + }); +}); diff --git a/src/npmUtils.ts b/src/npmUtils.ts new file mode 100644 index 00000000..15b5b83b --- /dev/null +++ b/src/npmUtils.ts @@ -0,0 +1,50 @@ +import fs from "fs"; +import * as ini from "ini"; + +export const prepareNpmConfig = ( + // Allow to inject a custom object, useful in tests. + processEnv = process.env +) => { + const userNpmrcPath = `${processEnv.HOME}/.npmrc`; + + if (fs.existsSync(userNpmrcPath)) { + console.log(`Found existing user .npmrc file at ${userNpmrcPath}`); + + // Parse the `.npmrc` content using the `npm/ini` package. + const npmConfig = ini.parse(fs.readFileSync(userNpmrcPath, "utf-8")); + + let hasAuthToken = false; + for (const [key, value] of Object.entries(npmConfig)) { + if (/\/\/(.*)authToken$/.test(key) && Boolean(value)) { + console.log("The .npmrc file has an authToken"); + hasAuthToken = true; + } + } + + if (!hasAuthToken) { + console.log( + "The .npmrc file does not have an authToken defined, creating one using the `NPM_TOKEN` environment variable" + ); + if (!processEnv.NPM_TOKEN) { + throw new Error( + "Missing NPM authToken. Please make sure you have the `NPM_TOKEN` environment variable defined." + ); + } + npmConfig["//registry.npmjs.org/:_authToken"] = processEnv.NPM_TOKEN; + fs.writeFileSync(userNpmrcPath, ini.stringify(npmConfig)); + } + } else { + console.log("No user .npmrc file found, creating one"); + if (!processEnv.NPM_TOKEN) { + throw new Error( + "Missing NPM authToken. Please make sure you have the `NPM_TOKEN` environment variable defined." + ); + } + fs.writeFileSync( + userNpmrcPath, + ini.stringify({ + "//registry.npmjs.org/:_authToken": processEnv.NPM_TOKEN, + }) + ); + } +}; diff --git a/yarn.lock b/yarn.lock index f1ea267f..244b798c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2265,6 +2265,11 @@ dependencies: "@types/node" "*" +"@types/ini@1.3.31": + version "1.3.31" + resolved "https://registry.yarnpkg.com/@types/ini/-/ini-1.3.31.tgz#c78541a187bd88d5c73e990711c9d85214800d1b" + integrity sha512-8ecxxaG4AlVEM1k9+BsziMw8UsX0qy3jYI1ad/71RrDZ+rdL6aZB0wLfAuflQiDhkD5o4yJ0uPK3OSUic3fG0w== + "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": version "2.0.1" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff" @@ -4940,6 +4945,11 @@ ini@^1.3.4, ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== +ini@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" + integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== + invariant@^2.2.2, invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" From 7fb473be1e5407f12306a1402712eb3ff20d3639 Mon Sep 17 00:00:00 2001 From: Nicola Molinari Date: Tue, 23 Nov 2021 21:11:57 +0100 Subject: [PATCH 2/4] refactor: do not throw if NPM_TOKEN is missing --- dist/index.js | 4 ++-- src/index.ts | 2 +- src/npmUtils.test.ts | 14 +++++------ src/npmUtils.ts | 55 ++++++++++++++++++++++++++------------------ 4 files changed, 42 insertions(+), 33 deletions(-) diff --git a/dist/index.js b/dist/index.js index 3d2698a1..bd2784c3 100644 --- a/dist/index.js +++ b/dist/index.js @@ -665,7 +665,7 @@ var e,t,n=require("fs"),r=require("./polyfills.js"),o=require("./legacy-streams. },{"@actions/exec":"AjbX","./utils":"UnXq"}],"8h+k":[function(require,module,exports) { const{hasOwnProperty:e}=Object.prototype,t="undefined"!=typeof process&&"win32"===process.platform?"\r\n":"\n",c=(e,n)=>{const r=[];let i="";"string"==typeof n?n={section:n,whitespace:!1}:(n=n||Object.create(null)).whitespace=!0===n.whitespace;const l=n.whitespace?" = ":"=";for(const c of Object.keys(e)){const o=e[c];if(o&&Array.isArray(o))for(const e of o)i+=s(c+"[]")+l+s(e)+"\n";else o&&"object"==typeof o?r.push(c):i+=s(c)+l+s(o)+t}n.section&&i.length&&(i="["+s(n.section)+"]"+t+i);for(const s of r){const r=o(s).join("\\."),l=(n.section?n.section+".":"")+r,{whitespace:a}=n,f=c(e[s],{section:l,whitespace:a});i.length&&f.length&&(i+=t),i+=f}return i},o=e=>e.replace(/\1/g,"LITERAL\\1LITERAL").replace(/\\\./g,"").split(/\./).map(e=>e.replace(/\1/g,"\\.").replace(/\2LITERAL\\1LITERAL\2/g,"")),n=t=>{const c=Object.create(null);let n=c,r=null;const s=/^\[([^\]]*)\]$|^([^=]+)(=(.*))?$/i,l=t.split(/[\r\n]+/g);for(const o of l){if(!o||o.match(/^\s*[;#]/))continue;const t=o.match(s);if(!t)continue;if(void 0!==t[1]){if("__proto__"===(r=i(t[1]))){n=Object.create(null);continue}n=c[r]=c[r]||Object.create(null);continue}const l=i(t[2]),a=l.length>2&&"[]"===l.slice(-2),f=a?l.slice(0,-2):l;if("__proto__"===f)continue;const p=!t[3]||i(t[4]),h="true"===p||"false"===p||"null"===p?JSON.parse(p):p;a&&(e.call(n,f)?Array.isArray(n[f])||(n[f]=[n[f]]):n[f]=[]),Array.isArray(n[f])?n[f].push(h):n[f]=h}const a=[];for(const i of Object.keys(c)){if(!e.call(c,i)||"object"!=typeof c[i]||Array.isArray(c[i]))continue;const t=o(i);let n=c;const r=t.pop(),s=r.replace(/\\\./g,".");for(const c of t)"__proto__"!==c&&(e.call(n,c)&&"object"==typeof n[c]||(n[c]=Object.create(null)),n=n[c]);n===c&&s===r||(n[s]=c[i],a.push(i))}for(const e of a)delete c[e];return c},r=e=>'"'===e.charAt(0)&&'"'===e.slice(-1)||"'"===e.charAt(0)&&"'"===e.slice(-1),s=e=>"string"!=typeof e||e.match(/[=\r\n]/)||e.match(/^\[/)||e.length>1&&r(e)||e!==e.trim()?JSON.stringify(e):e.replace(/;/g,"\\;").replace(/#/g,"\\#"),i=(e,t)=>{if(e=(e||"").trim(),!r(e)){let t=!1,c="";for(let o=0,n=e.length;o{const n=`${e.HOME}/.npmrc`;if(r.default.existsSync(n)){console.log(`Found existing user .npmrc file at ${n}`);const o=t.parse(r.default.readFileSync(n,"utf-8"));let i=!1;for(const[e,n]of Object.entries(o))/\/\/(.*)authToken$/.test(e)&&Boolean(n)&&(console.log("The .npmrc file has an authToken"),i=!0);if(!i){if(console.log("The .npmrc file does not have an authToken defined, creating one using the `NPM_TOKEN` environment variable"),!e.NPM_TOKEN)throw new Error("Missing NPM authToken. Please make sure you have the `NPM_TOKEN` environment variable defined.");o["//registry.npmjs.org/:_authToken"]=e.NPM_TOKEN,r.default.writeFileSync(n,t.stringify(o))}}else{if(console.log("No user .npmrc file found, creating one"),!e.NPM_TOKEN)throw new Error("Missing NPM authToken. Please make sure you have the `NPM_TOKEN` environment variable defined.");r.default.writeFileSync(n,t.stringify({"//registry.npmjs.org/:_authToken":e.NPM_TOKEN}))}}); +"use strict";var e=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var n={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n.default=e,n};Object.defineProperty(exports,"__esModule",{value:!0});const r=e(require("fs")),i=n(require("ini")),t="//registry.npmjs.org/:_authToken";exports.checkNpmConfig=((e=process.env)=>{const n=`${e.HOME}/.npmrc`;if(r.default.existsSync(n)){console.log(`Found existing user .npmrc file at ${n}.`);const o=i.parse(r.default.readFileSync(n,"utf-8"));let s=!1;for(const[e,n]of Object.entries(o))t===e&&Boolean(n)&&(s=!0);s?console.log("The .npmrc file has an entry for the npm registry with an authToken defined."):(console.log("The .npmrc file does not have an authToken defined, appending one using the `NPM_TOKEN` environment variable..."),e.NPM_TOKEN?(o["//registry.npmjs.org/:_authToken"]=e.NPM_TOKEN,r.default.writeFileSync(n,i.stringify(o))):console.warn("Missing `NPM_TOKEN` environment variable, skipping update of .npmrc file."))}else console.log("No user .npmrc file found, creating one..."),e.NPM_TOKEN?r.default.writeFileSync(n,i.stringify({"//registry.npmjs.org/:_authToken":e.NPM_TOKEN})):console.warn("Missing `NPM_TOKEN` environment variable, skipping creation of .npmrc file.")}); },{"ini":"8h+k"}],"Od13":[function(require,module,exports) { "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Context=void 0;const e=require("fs"),s=require("os");class r{constructor(){if(this.payload={},process.env.GITHUB_EVENT_PATH)if(e.existsSync(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse(e.readFileSync(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{const e=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${e} does not exist${s.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10)}get issue(){const e=this.payload;return Object.assign(Object.assign({},this.repo),{number:(e.issue||e.pull_request||e).number})}get repo(){if(process.env.GITHUB_REPOSITORY){const[e,s]=process.env.GITHUB_REPOSITORY.split("/");return{owner:e,repo:s}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}}exports.Context=r; },{}],"X6hf":[function(require,module,exports) { @@ -1049,5 +1049,5 @@ var e=require("./conversions"),n=require("./route"),r={},o=Object.keys(e);functi },{}],"gwbb":[function(require,module,exports) { "use strict";function e(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),a.push.apply(a,r)}return a}function t(t){for(var r=1;r{try{let o=l.default.join(a.dir,"CHANGELOG.md"),c=await i.default.readFile(o,"utf8"),u=p.getChangelogEntry(c,a.packageJson.version);if(!u)throw new Error(`Could not find changelog entry for ${a.packageJson.name}@${a.packageJson.version}`);await e.repos.createRelease(t({name:r,tag_name:r,body:u.content,prerelease:a.packageJson.version.includes("-")},s.context.repo))}catch(n){if("ENOENT"!==n.code)throw n}};async function w({script:e,githubToken:t,cwd:a=process.cwd()}){let r=s.getOctokit(t),[n,...o]=e.split(/\s+/),i=await p.execWithOutput(n,o,{cwd:a});await g.pushTags();let{packages:l,tool:u}=await c.getPackages(a),h=[];if("root"!==u){let e=/New tag:\s+(@[^\/]+\/[^@]+|[^\/]+)@([^\s]+)/,t=new Map(l.map(e=>[e.packageJson.name,e]));for(let a of i.stdout.split("\n")){let r=a.match(e);if(null===r)continue;let n=r[1],o=t.get(n);if(void 0===o)throw new Error(`Package "${n}" not found.`+"This is probably a bug in the action, please open an issue");h.push(o)}await Promise.all(h.map(e=>f(r,{pkg:e,tagName:`${e.packageJson.name}@${e.packageJson.version}`})))}else{if(0===l.length)throw new Error("No package found.This is probably a bug in the action, please open an issue");let e=l[0],t=/New tag:/;for(let a of i.stdout.split("\n")){if(a.match(t)){h.push(e),await f(r,{pkg:e,tagName:`v${e.packageJson.version}`});break}}}return h.length?{published:!0,publishedPackages:h.map(e=>({name:e.packageJson.name,version:e.packageJson.version}))}:{published:!1}}exports.runPublish=w;const b=e=>{try{return require(d.default(e,"@changesets/cli/package.json"))}catch(t){if(t&&"MODULE_NOT_FOUND"===t.code)throw new Error(`Have you forgotten to install \`@changesets/cli\` in "${e}"?`);throw t}};async function m({script:e,githubToken:a,cwd:r=process.cwd(),prTitle:n="Version Packages",commitMessage:c="Version Packages",hasPublishScript:f=!1}){let w=`${s.context.repo.owner}/${s.context.repo.repo}`,m=s.context.ref.replace("refs/heads/",""),y=`changeset-release/${m}`,k=s.getOctokit(a),{preState:O}=await h.default(r);await g.switchToMaybeExistingBranch(y),await g.reset(s.context.sha);let v=await p.getVersionsByDirectory(r);if(e){let[t,...a]=e.split(/\s+/);await o.exec(t,a,{cwd:r})}else{let e=b(r),t=u.lt(e.version,"2.0.0")?"bump":"version";await o.exec("node",[d.default(r,"@changesets/cli/bin.js"),t],{cwd:r})}let $=`repo:${w}+state:open+head:${y}+base:${m}`,P=k.search.issuesAndPullRequests({q:$}),j=await p.getChangedPackages(r,v),x=(async()=>`This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and ${f?"the packages will be published to npm automatically":"publish to npm yourself or [setup this action to publish automatically](https://github.com/changesets/action#with-publishing)"}. If you're not ready to do a release yet, that's fine, whenever you add more changesets to ${m}, this PR will be updated.\n${O?`\n⚠️⚠️⚠️⚠️⚠️⚠️\n\n\`${m}\` is currently in **pre mode** so this branch has prereleases rather than normal releases. If you want to exit prereleases, run \`changeset pre exit\` on \`${m}\`.\n\n⚠️⚠️⚠️⚠️⚠️⚠️\n`:""}\n# Releases\n`+(await Promise.all(j.map(async e=>{let t=await i.default.readFile(l.default.join(e.dir,"CHANGELOG.md"),"utf8"),a=p.getChangelogEntry(t,e.packageJson.version);return{highestLevel:a.highestLevel,private:!!e.packageJson.private,content:`## ${e.packageJson.name}@${e.packageJson.version}\n\n`+a.content}}))).filter(e=>e).sort(p.sortTheThings).map(e=>e.content).join("\n "))();const q=`${n}${O?` (${O.tag})`:""}`;if(!(await g.checkIfClean())){const e=`${c}${O?` (${O.tag})`:""}`;await g.commitAll(e)}await g.push(y,{force:!0});let J=await P;console.log(JSON.stringify(J.data,null,2)),0===J.data.items.length?(console.log("creating pull request"),await k.pulls.create(t({base:m,head:y,title:q,body:await x},s.context.repo))):(k.pulls.update(t({pull_number:J.data.items[0].number,title:q,body:await x},s.context.repo)),console.log("pull request found"))}exports.runVersion=m; },{"@actions/exec":"AjbX","@actions/github":"Jpqw","fs-extra":"qdgD","@manypkg/get-packages":"9z3N","semver":"y4rL","./utils":"UnXq","./gitUtils":"pH2w","./readChangesetState":"yOXS","resolve-from":"zg8f"}],"7QCb":[function(require,module,exports) { -"use strict";var e=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&(t[s]=e[s]);return t.default=e,t},t=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const s=e(require("@actions/core")),i=t(require("fs-extra")),r=e(require("./gitUtils")),u=e(require("./npmUtils")),a=require("./run"),n=t(require("./readChangesetState")),o=e=>s.getInput(e)||void 0;(async()=>{let e=process.env.GITHUB_TOKEN;if(!e)return void s.setFailed("Please add the GITHUB_TOKEN to the changesets action");console.log("setting git user"),await r.setupUser(),console.log("setting GitHub credentials"),await i.default.writeFile(`${process.env.HOME}/.netrc`,`machine github.com\nlogin github-actions[bot]\npassword ${e}`);let{changesets:t}=await n.default(),l=s.getInput("publish"),c=0!==t.length,p=!!l;switch(s.setOutput("published","false"),s.setOutput("publishedPackages","[]"),s.setOutput("hasChangesets",String(c)),!0){case!c&&!p:return void console.log("No changesets found");case!c&&p:{console.log("No changesets found, attempting to publish any unpublished packages to npm"),u.prepareNpmConfig();const t=await a.runPublish({script:l,githubToken:e});return void(t.published&&(s.setOutput("published","true"),s.setOutput("publishedPackages",JSON.stringify(t.publishedPackages))))}case c:return void(await a.runVersion({script:o("version"),githubToken:e,prTitle:o("title"),commitMessage:o("commit"),hasPublishScript:p}))}})().catch(e=>{console.error(e),s.setFailed(e.message)}); +"use strict";var e=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&(t[s]=e[s]);return t.default=e,t},t=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const s=e(require("@actions/core")),i=t(require("fs-extra")),r=e(require("./gitUtils")),u=e(require("./npmUtils")),n=require("./run"),a=t(require("./readChangesetState")),o=e=>s.getInput(e)||void 0;(async()=>{let e=process.env.GITHUB_TOKEN;if(!e)return void s.setFailed("Please add the GITHUB_TOKEN to the changesets action");console.log("setting git user"),await r.setupUser(),console.log("setting GitHub credentials"),await i.default.writeFile(`${process.env.HOME}/.netrc`,`machine github.com\nlogin github-actions[bot]\npassword ${e}`);let{changesets:t}=await a.default(),l=s.getInput("publish"),c=0!==t.length,h=!!l;switch(s.setOutput("published","false"),s.setOutput("publishedPackages","[]"),s.setOutput("hasChangesets",String(c)),!0){case!c&&!h:return void console.log("No changesets found");case!c&&h:{console.log("No changesets found, attempting to publish any unpublished packages to npm"),u.checkNpmConfig();const t=await n.runPublish({script:l,githubToken:e});return void(t.published&&(s.setOutput("published","true"),s.setOutput("publishedPackages",JSON.stringify(t.publishedPackages))))}case c:return void(await n.runVersion({script:o("version"),githubToken:e,prTitle:o("title"),commitMessage:o("commit"),hasPublishScript:h}))}})().catch(e=>{console.error(e),s.setFailed(e.message)}); },{"@actions/core":"RNev","fs-extra":"qdgD","./gitUtils":"pH2w","./npmUtils":"8k/q","./run":"gwbb","./readChangesetState":"yOXS"}]},{},["7QCb"], null) \ No newline at end of file diff --git a/src/index.ts b/src/index.ts index f74d999b..08212e16 100644 --- a/src/index.ts +++ b/src/index.ts @@ -44,7 +44,7 @@ const getOptionalInput = (name: string) => core.getInput(name) || undefined; "No changesets found, attempting to publish any unpublished packages to npm" ); - npmUtils.prepareNpmConfig(); + npmUtils.checkNpmConfig(); const result = await runPublish({ script: publishScript, diff --git a/src/npmUtils.test.ts b/src/npmUtils.test.ts index 69214852..0a8d256d 100644 --- a/src/npmUtils.test.ts +++ b/src/npmUtils.test.ts @@ -2,12 +2,12 @@ import fs from "fs"; import path from "path"; import * as ini from "ini"; import fixtures from "fixturez"; -import { prepareNpmConfig } from "./npmUtils"; +import { checkNpmConfig } from "./npmUtils"; const f = fixtures(__dirname); const authToken = "npm_abc"; -describe("prepareNpmConfig", () => { +describe("checkNpmConfig", () => { let tmpDir: string; let npmrcPath: string; @@ -28,7 +28,7 @@ describe("prepareNpmConfig", () => { ); }); test("should not change the .npmrc file", () => { - prepareNpmConfig({ HOME: tmpDir }); + checkNpmConfig({ HOME: tmpDir }); const npmConfig = ini.parse(fs.readFileSync(npmrcPath, "utf-8")); expect(npmConfig).toMatchInlineSnapshot(` @@ -51,7 +51,7 @@ describe("prepareNpmConfig", () => { describe("when NPM_TOKEN environment variable is not defined", () => { test("it should throw an error", () => { expect(() => - prepareNpmConfig({ + checkNpmConfig({ HOME: tmpDir, NPM_TOKEN: undefined, }) @@ -61,7 +61,7 @@ describe("prepareNpmConfig", () => { }); }); test("should inject NPM_TOKEN value in .npmrc file", () => { - prepareNpmConfig({ + checkNpmConfig({ HOME: tmpDir, NPM_TOKEN: authToken, }); @@ -81,7 +81,7 @@ describe("prepareNpmConfig", () => { describe("when NPM_TOKEN environment variable is not defined", () => { test("it should throw an error", () => { expect(() => - prepareNpmConfig({ + checkNpmConfig({ HOME: tmpDir, NPM_TOKEN: undefined, }) @@ -91,7 +91,7 @@ describe("prepareNpmConfig", () => { }); }); test("should create a new .npmrc config", () => { - prepareNpmConfig({ + checkNpmConfig({ HOME: tmpDir, NPM_TOKEN: authToken, }); diff --git a/src/npmUtils.ts b/src/npmUtils.ts index 15b5b83b..b25479a1 100644 --- a/src/npmUtils.ts +++ b/src/npmUtils.ts @@ -1,50 +1,59 @@ import fs from "fs"; import * as ini from "ini"; -export const prepareNpmConfig = ( +// https://docs.npmjs.com/using-private-packages-in-a-ci-cd-workflow#create-and-check-in-a-project-specific-npmrc-file +const npmRegistryTokenKey = "//registry.npmjs.org/:_authToken"; + +export const checkNpmConfig = ( // Allow to inject a custom object, useful in tests. processEnv = process.env ) => { const userNpmrcPath = `${processEnv.HOME}/.npmrc`; if (fs.existsSync(userNpmrcPath)) { - console.log(`Found existing user .npmrc file at ${userNpmrcPath}`); + console.log(`Found existing user .npmrc file at ${userNpmrcPath}.`); // Parse the `.npmrc` content using the `npm/ini` package. const npmConfig = ini.parse(fs.readFileSync(userNpmrcPath, "utf-8")); - let hasAuthToken = false; + let hasAuthTokenForDefaultNpmRegistry = false; + // Check if there is at least a registry defined with an `_authToken`. for (const [key, value] of Object.entries(npmConfig)) { - if (/\/\/(.*)authToken$/.test(key) && Boolean(value)) { - console.log("The .npmrc file has an authToken"); - hasAuthToken = true; + if (npmRegistryTokenKey === key && Boolean(value)) { + hasAuthTokenForDefaultNpmRegistry = true; } } - if (!hasAuthToken) { + if (hasAuthTokenForDefaultNpmRegistry) { + console.log( + "The .npmrc file has an entry for the npm registry with an authToken defined." + ); + } else { console.log( - "The .npmrc file does not have an authToken defined, creating one using the `NPM_TOKEN` environment variable" + "The .npmrc file does not have an authToken defined, appending one using the `NPM_TOKEN` environment variable..." ); - if (!processEnv.NPM_TOKEN) { - throw new Error( - "Missing NPM authToken. Please make sure you have the `NPM_TOKEN` environment variable defined." + if (processEnv.NPM_TOKEN) { + npmConfig["//registry.npmjs.org/:_authToken"] = processEnv.NPM_TOKEN; + fs.writeFileSync(userNpmrcPath, ini.stringify(npmConfig)); + } else { + console.warn( + "Missing `NPM_TOKEN` environment variable, skipping update of .npmrc file." ); } - npmConfig["//registry.npmjs.org/:_authToken"] = processEnv.NPM_TOKEN; - fs.writeFileSync(userNpmrcPath, ini.stringify(npmConfig)); } } else { - console.log("No user .npmrc file found, creating one"); - if (!processEnv.NPM_TOKEN) { - throw new Error( - "Missing NPM authToken. Please make sure you have the `NPM_TOKEN` environment variable defined." + console.log("No user .npmrc file found, creating one..."); + if (processEnv.NPM_TOKEN) { + fs.writeFileSync( + userNpmrcPath, + ini.stringify({ + "//registry.npmjs.org/:_authToken": processEnv.NPM_TOKEN, + }) + ); + } else { + console.warn( + "Missing `NPM_TOKEN` environment variable, skipping creation of .npmrc file." ); } - fs.writeFileSync( - userNpmrcPath, - ini.stringify({ - "//registry.npmjs.org/:_authToken": processEnv.NPM_TOKEN, - }) - ); } }; From d1da8fa2ea91a9cedaac4ed2274d10c98cdff6e2 Mon Sep 17 00:00:00 2001 From: Nicola Molinari Date: Tue, 23 Nov 2021 21:12:34 +0100 Subject: [PATCH 3/4] feat: add option to skipNpmrcCheck --- README.md | 1 + action.yml | 4 ++++ dist/index.js | 2 +- src/index.ts | 5 ++++- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d66b31f9..f01993ed 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,7 @@ This action for [Changesets](https://github.com/atlassian/changesets) creates a - version - The command to update version, edit CHANGELOG, read and delete changesets. Default to `changeset version` if not provided - commit - The commit message to use. Default to `Version Packages` - title - The pull request title. Default to `Version Packages` +- skipNpmrcCheck - Check if there is a user-defined `.npmrc` file with a proper npm registry and an `authToken`. If not, a default `.npmrc` file is created. ### Outputs diff --git a/action.yml b/action.yml index 61200769..790ed111 100644 --- a/action.yml +++ b/action.yml @@ -17,6 +17,10 @@ inputs: title: description: The pull request title. Default to `Version Packages` required: false + skipNpmrcCheck: + description: > + Check if there is a user-defined `.npmrc` file with a proper npm registry and an `authToken`. If not, a default `.npmrc` file is created. + required: false outputs: published: description: A boolean value to indicate whether a publishing is happened or not diff --git a/dist/index.js b/dist/index.js index bd2784c3..c77ef96a 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1049,5 +1049,5 @@ var e=require("./conversions"),n=require("./route"),r={},o=Object.keys(e);functi },{}],"gwbb":[function(require,module,exports) { "use strict";function e(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),a.push.apply(a,r)}return a}function t(t){for(var r=1;r{try{let o=l.default.join(a.dir,"CHANGELOG.md"),c=await i.default.readFile(o,"utf8"),u=p.getChangelogEntry(c,a.packageJson.version);if(!u)throw new Error(`Could not find changelog entry for ${a.packageJson.name}@${a.packageJson.version}`);await e.repos.createRelease(t({name:r,tag_name:r,body:u.content,prerelease:a.packageJson.version.includes("-")},s.context.repo))}catch(n){if("ENOENT"!==n.code)throw n}};async function w({script:e,githubToken:t,cwd:a=process.cwd()}){let r=s.getOctokit(t),[n,...o]=e.split(/\s+/),i=await p.execWithOutput(n,o,{cwd:a});await g.pushTags();let{packages:l,tool:u}=await c.getPackages(a),h=[];if("root"!==u){let e=/New tag:\s+(@[^\/]+\/[^@]+|[^\/]+)@([^\s]+)/,t=new Map(l.map(e=>[e.packageJson.name,e]));for(let a of i.stdout.split("\n")){let r=a.match(e);if(null===r)continue;let n=r[1],o=t.get(n);if(void 0===o)throw new Error(`Package "${n}" not found.`+"This is probably a bug in the action, please open an issue");h.push(o)}await Promise.all(h.map(e=>f(r,{pkg:e,tagName:`${e.packageJson.name}@${e.packageJson.version}`})))}else{if(0===l.length)throw new Error("No package found.This is probably a bug in the action, please open an issue");let e=l[0],t=/New tag:/;for(let a of i.stdout.split("\n")){if(a.match(t)){h.push(e),await f(r,{pkg:e,tagName:`v${e.packageJson.version}`});break}}}return h.length?{published:!0,publishedPackages:h.map(e=>({name:e.packageJson.name,version:e.packageJson.version}))}:{published:!1}}exports.runPublish=w;const b=e=>{try{return require(d.default(e,"@changesets/cli/package.json"))}catch(t){if(t&&"MODULE_NOT_FOUND"===t.code)throw new Error(`Have you forgotten to install \`@changesets/cli\` in "${e}"?`);throw t}};async function m({script:e,githubToken:a,cwd:r=process.cwd(),prTitle:n="Version Packages",commitMessage:c="Version Packages",hasPublishScript:f=!1}){let w=`${s.context.repo.owner}/${s.context.repo.repo}`,m=s.context.ref.replace("refs/heads/",""),y=`changeset-release/${m}`,k=s.getOctokit(a),{preState:O}=await h.default(r);await g.switchToMaybeExistingBranch(y),await g.reset(s.context.sha);let v=await p.getVersionsByDirectory(r);if(e){let[t,...a]=e.split(/\s+/);await o.exec(t,a,{cwd:r})}else{let e=b(r),t=u.lt(e.version,"2.0.0")?"bump":"version";await o.exec("node",[d.default(r,"@changesets/cli/bin.js"),t],{cwd:r})}let $=`repo:${w}+state:open+head:${y}+base:${m}`,P=k.search.issuesAndPullRequests({q:$}),j=await p.getChangedPackages(r,v),x=(async()=>`This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and ${f?"the packages will be published to npm automatically":"publish to npm yourself or [setup this action to publish automatically](https://github.com/changesets/action#with-publishing)"}. If you're not ready to do a release yet, that's fine, whenever you add more changesets to ${m}, this PR will be updated.\n${O?`\n⚠️⚠️⚠️⚠️⚠️⚠️\n\n\`${m}\` is currently in **pre mode** so this branch has prereleases rather than normal releases. If you want to exit prereleases, run \`changeset pre exit\` on \`${m}\`.\n\n⚠️⚠️⚠️⚠️⚠️⚠️\n`:""}\n# Releases\n`+(await Promise.all(j.map(async e=>{let t=await i.default.readFile(l.default.join(e.dir,"CHANGELOG.md"),"utf8"),a=p.getChangelogEntry(t,e.packageJson.version);return{highestLevel:a.highestLevel,private:!!e.packageJson.private,content:`## ${e.packageJson.name}@${e.packageJson.version}\n\n`+a.content}}))).filter(e=>e).sort(p.sortTheThings).map(e=>e.content).join("\n "))();const q=`${n}${O?` (${O.tag})`:""}`;if(!(await g.checkIfClean())){const e=`${c}${O?` (${O.tag})`:""}`;await g.commitAll(e)}await g.push(y,{force:!0});let J=await P;console.log(JSON.stringify(J.data,null,2)),0===J.data.items.length?(console.log("creating pull request"),await k.pulls.create(t({base:m,head:y,title:q,body:await x},s.context.repo))):(k.pulls.update(t({pull_number:J.data.items[0].number,title:q,body:await x},s.context.repo)),console.log("pull request found"))}exports.runVersion=m; },{"@actions/exec":"AjbX","@actions/github":"Jpqw","fs-extra":"qdgD","@manypkg/get-packages":"9z3N","semver":"y4rL","./utils":"UnXq","./gitUtils":"pH2w","./readChangesetState":"yOXS","resolve-from":"zg8f"}],"7QCb":[function(require,module,exports) { -"use strict";var e=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&(t[s]=e[s]);return t.default=e,t},t=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const s=e(require("@actions/core")),i=t(require("fs-extra")),r=e(require("./gitUtils")),u=e(require("./npmUtils")),n=require("./run"),a=t(require("./readChangesetState")),o=e=>s.getInput(e)||void 0;(async()=>{let e=process.env.GITHUB_TOKEN;if(!e)return void s.setFailed("Please add the GITHUB_TOKEN to the changesets action");console.log("setting git user"),await r.setupUser(),console.log("setting GitHub credentials"),await i.default.writeFile(`${process.env.HOME}/.netrc`,`machine github.com\nlogin github-actions[bot]\npassword ${e}`);let{changesets:t}=await a.default(),l=s.getInput("publish"),c=0!==t.length,h=!!l;switch(s.setOutput("published","false"),s.setOutput("publishedPackages","[]"),s.setOutput("hasChangesets",String(c)),!0){case!c&&!h:return void console.log("No changesets found");case!c&&h:{console.log("No changesets found, attempting to publish any unpublished packages to npm"),u.checkNpmConfig();const t=await n.runPublish({script:l,githubToken:e});return void(t.published&&(s.setOutput("published","true"),s.setOutput("publishedPackages",JSON.stringify(t.publishedPackages))))}case c:return void(await n.runVersion({script:o("version"),githubToken:e,prTitle:o("title"),commitMessage:o("commit"),hasPublishScript:h}))}})().catch(e=>{console.error(e),s.setFailed(e.message)}); +"use strict";var e=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&(t[s]=e[s]);return t.default=e,t},t=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const s=e(require("@actions/core")),i=t(require("fs-extra")),r=e(require("./gitUtils")),u=e(require("./npmUtils")),n=require("./run"),a=t(require("./readChangesetState")),o=e=>s.getInput(e)||void 0;(async()=>{let e=process.env.GITHUB_TOKEN;if(!e)return void s.setFailed("Please add the GITHUB_TOKEN to the changesets action");console.log("setting git user"),await r.setupUser(),console.log("setting GitHub credentials"),await i.default.writeFile(`${process.env.HOME}/.netrc`,`machine github.com\nlogin github-actions[bot]\npassword ${e}`);let{changesets:t}=await a.default(),c=s.getInput("publish"),l=0!==t.length,h=!!c;switch(s.setOutput("published","false"),s.setOutput("publishedPackages","[]"),s.setOutput("hasChangesets",String(l)),!0){case!l&&!h:return void console.log("No changesets found");case!l&&h:{console.log("No changesets found, attempting to publish any unpublished packages to npm"),"true"!==o("skipNpmrcCheck")&&u.checkNpmConfig();const t=await n.runPublish({script:c,githubToken:e});return void(t.published&&(s.setOutput("published","true"),s.setOutput("publishedPackages",JSON.stringify(t.publishedPackages))))}case l:return void(await n.runVersion({script:o("version"),githubToken:e,prTitle:o("title"),commitMessage:o("commit"),hasPublishScript:h}))}})().catch(e=>{console.error(e),s.setFailed(e.message)}); },{"@actions/core":"RNev","fs-extra":"qdgD","./gitUtils":"pH2w","./npmUtils":"8k/q","./run":"gwbb","./readChangesetState":"yOXS"}]},{},["7QCb"], null) \ No newline at end of file diff --git a/src/index.ts b/src/index.ts index 08212e16..81993d24 100644 --- a/src/index.ts +++ b/src/index.ts @@ -44,7 +44,10 @@ const getOptionalInput = (name: string) => core.getInput(name) || undefined; "No changesets found, attempting to publish any unpublished packages to npm" ); - npmUtils.checkNpmConfig(); + const skipNpmrcCheck = getOptionalInput("skipNpmrcCheck"); + if (skipNpmrcCheck !== "true") { + npmUtils.checkNpmConfig(); + } const result = await runPublish({ script: publishScript, From 0e5a1aa7117f27cfe3d6f8208a55fbd0409cd3da Mon Sep 17 00:00:00 2001 From: Nicola Molinari Date: Tue, 23 Nov 2021 21:53:20 +0100 Subject: [PATCH 4/4] test: fix assertions --- src/npmUtils.test.ts | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/src/npmUtils.test.ts b/src/npmUtils.test.ts index 0a8d256d..7fd114d5 100644 --- a/src/npmUtils.test.ts +++ b/src/npmUtils.test.ts @@ -49,14 +49,14 @@ describe("checkNpmConfig", () => { ); }); describe("when NPM_TOKEN environment variable is not defined", () => { - test("it should throw an error", () => { - expect(() => - checkNpmConfig({ - HOME: tmpDir, - NPM_TOKEN: undefined, - }) - ).toThrowErrorMatchingInlineSnapshot( - `"Missing NPM authToken. Please make sure you have the \`NPM_TOKEN\` environment variable defined."` + test("it should log a warning", () => { + console.warn = jest.fn(); + checkNpmConfig({ + HOME: tmpDir, + NPM_TOKEN: undefined, + }); + expect(console.warn).toHaveBeenCalledWith( + "Missing `NPM_TOKEN` environment variable, skipping update of .npmrc file." ); }); }); @@ -79,14 +79,14 @@ describe("checkNpmConfig", () => { describe("when .npmrc does not exist", () => { describe("when NPM_TOKEN environment variable is not defined", () => { - test("it should throw an error", () => { - expect(() => - checkNpmConfig({ - HOME: tmpDir, - NPM_TOKEN: undefined, - }) - ).toThrowErrorMatchingInlineSnapshot( - `"Missing NPM authToken. Please make sure you have the \`NPM_TOKEN\` environment variable defined."` + test("it should log a warning", () => { + console.warn = jest.fn(); + checkNpmConfig({ + HOME: tmpDir, + NPM_TOKEN: undefined, + }); + expect(console.warn).toHaveBeenCalledWith( + "Missing `NPM_TOKEN` environment variable, skipping creation of .npmrc file." ); }); });