Author SHA1 Message Date
Renovate d644b19b47 fix(deps): update dependency screeps-api to v2
renovate/stability-days Updates have met minimum release age requirement
Test / Run Tests (push) Failing after 0s
Recompile dist/ on Renovate PR / recompile (pull_request) Failing after 0s
Test / Run Tests (pull_request) Failing after 0s
Philipp/Global-Workflows: Pre-commit Lint (Scoped) / pre-commit (pull_request) Failing after 0s
2026-09-04 21:24:57 +00:00
3 changed files with 77 additions and 155 deletions

No files matched your search

+8 -8
View File
@@ -1,18 +1,18 @@
import{createRequire as t}from"module";var A={7038:(t,A,u)=>{var d;d={value:true};A.v=void 0;const E=u(918);function create(){return E.DefaultArtifactClient.create()}A.v=create},918:function(t,A,u){var d=this&&this.__createBinding||(Object.create?function(t,A,u,d){if(d===undefined)d=u;var E=Object.getOwnPropertyDescriptor(A,u);if(!E||("get"in E?!A.__esModule:E.writable||E.configurable)){E={enumerable:true,get:function(){return A[u]}}}Object.defineProperty(t,d,E)}:function(t,A,u,d){if(d===undefined)d=u;t[d]=A[u]});var E=this&&this.__setModuleDefault||(Object.create?function(t,A){Object.defineProperty(t,"default",{enumerable:true,value:A})}:function(t,A){t["default"]=A});var C=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var A={};if(t!=null)for(var u in t)if(u!=="default"&&Object.prototype.hasOwnProperty.call(t,u))d(A,t,u);E(A,t);return A};var Q=this&&this.__awaiter||function(t,A,u,d){function adopt(t){return t instanceof u?t:new u(function(A){A(t)})}return new(u||(u=Promise))(function(u,E){function fulfilled(t){try{step(d.next(t))}catch(t){E(t)}}function rejected(t){try{step(d["throw"](t))}catch(t){E(t)}}function step(t){t.done?u(t.value):adopt(t.value).then(fulfilled,rejected)}step((d=d.apply(t,A||[])).next())})};Object.defineProperty(A,"__esModule",{value:true});A.DefaultArtifactClient=void 0;const B=C(u(9910));const I=u(9367);const m=u(8950);const y=u(2669);const b=u(9400);const D=u(3439);const R=u(3886);const k=u(1124);const S=u(6928);class DefaultArtifactClient{static create(){return new DefaultArtifactClient}uploadArtifact(t,A,u,d){return Q(this,void 0,void 0,function*(){B.info(`Starting artifact upload\nFor more detailed logs during the artifact upload process, enable step-debugging: https://docs.github.com/actions/monitoring-and-troubleshooting-workflows/enabling-debug-logging#enabling-step-debug-logging`);(0,b.checkArtifactName)(t);const E=(0,I.getUploadSpecification)(t,u,A);const C={artifactName:t,artifactItems:[],size:0,failedItems:[]};const Q=new m.UploadHttpClient;if(E.length===0){B.warning(`No files found that can be uploaded`)}else{const A=yield Q.createArtifactInFileContainer(t,d);if(!A.fileContainerResourceUrl){B.debug(A.toString());throw new Error("No URL provided by the Artifact Service to upload an artifact to")}B.debug(`Upload Resource URL: ${A.fileContainerResourceUrl}`);B.info(`Container for artifact "${t}" successfully created. Starting upload of file(s)`);const u=yield Q.uploadArtifactToFileContainer(A.fileContainerResourceUrl,E,d);B.info(`File upload process has finished. Finalizing the artifact upload`);yield Q.patchArtifactSize(u.totalSize,t);if(u.failedItems.length>0){B.info(`Upload finished. There were ${u.failedItems.length} items that failed to upload`)}else{B.info(`Artifact has been finalized. All files have been successfully uploaded!`)}B.info(`\nThe raw size of all the files that were specified for upload is ${u.totalSize} bytes\nThe size of all the files that were uploaded is ${u.uploadSize} bytes. This takes into account any gzip compression used to reduce the upload size, time and storage\n\nNote: The size of downloaded zips can differ significantly from the reported size. For more information see: https://github.com/actions/upload-artifact#zipped-artifact-downloads \r\n`);C.artifactItems=E.map(t=>t.absoluteFilePath);C.size=u.uploadSize;C.failedItems=u.failedItems}return C})}downloadArtifact(t,A,u){return Q(this,void 0,void 0,function*(){const d=new D.DownloadHttpClient;const E=yield d.listArtifacts();if(E.count===0){throw new Error(`Unable to find any artifacts for the associated workflow`)}const C=E.value.find(A=>A.name===t);if(!C){throw new Error(`Unable to find an artifact with the name: ${t}`)}const Q=yield d.getContainerItems(C.name,C.fileContainerResourceUrl);if(!A){A=(0,k.getWorkSpaceDirectory)()}A=(0,S.normalize)(A);A=(0,S.resolve)(A);const I=(0,R.getDownloadSpecification)(t,Q.value,A,(u===null||u===void 0?void 0:u.createArtifactFolder)||false);if(I.filesToDownload.length===0){B.info(`No downloadable files were found for the artifact: ${C.name}`)}else{yield(0,y.createDirectoriesForArtifact)(I.directoryStructure);B.info("Directory structure has been set up for the artifact");yield(0,y.createEmptyFilesForArtifact)(I.emptyFilesToCreate);yield d.downloadSingleArtifact(I.filesToDownload)}return{artifactName:t,downloadPath:I.rootDownloadLocation}})}downloadAllArtifacts(t){return Q(this,void 0,void 0,function*(){const A=new D.DownloadHttpClient;const u=[];const d=yield A.listArtifacts();if(d.count===0){B.info("Unable to find any artifacts for the associated workflow");return u}if(!t){t=(0,k.getWorkSpaceDirectory)()}t=(0,S.normalize)(t);t=(0,S.resolve)(t);let E=0;while(E<d.count){const C=d.value[E];E+=1;B.info(`starting download of artifact ${C.name} : ${E}/${d.count}`);const Q=yield A.getContainerItems(C.name,C.fileContainerResourceUrl);const I=(0,R.getDownloadSpecification)(C.name,Q.value,t,true);if(I.filesToDownload.length===0){B.info(`No downloa Line truncated import{createRequire as A}from"module";var i={7038:(A,i,g)=>{var E;E={value:true};i.v=void 0;const p=g(918);function create(){return p.DefaultArtifactClient.create()}i.v=create},918:function(A,i,g){var E=this&&this.__createBinding||(Object.create?function(A,i,g,E){if(E===undefined)E=g;var p=Object.getOwnPropertyDescriptor(i,g);if(!p||("get"in p?!i.__esModule:p.writable||p.configurable)){p={enumerable:true,get:function(){return i[g]}}}Object.defineProperty(A,E,p)}:function(A,i,g,E){if(E===undefined)E=g;A[E]=i[g]});var p=this&&this.__setModuleDefault||(Object.create?function(A,i){Object.defineProperty(A,"default",{enumerable:true,value:i})}:function(A,i){A["default"]=i});var C=this&&this.__importStar||function(A){if(A&&A.__esModule)return A;var i={};if(A!=null)for(var g in A)if(g!=="default"&&Object.prototype.hasOwnProperty.call(A,g))E(i,A,g);p(i,A);return i};var f=this&&this.__awaiter||function(A,i,g,E){function adopt(A){return A instanceof g?A:new g(function(i){i(A)})}return new(g||(g=Promise))(function(g,p){function fulfilled(A){try{step(E.next(A))}catch(A){p(A)}}function rejected(A){try{step(E["throw"](A))}catch(A){p(A)}}function step(A){A.done?g(A.value):adopt(A.value).then(fulfilled,rejected)}step((E=E.apply(A,i||[])).next())})};Object.defineProperty(i,"__esModule",{value:true});i.DefaultArtifactClient=void 0;const Q=C(g(9910));const B=g(9367);const I=g(8950);const y=g(2669);const b=g(9400);const D=g(3439);const R=g(3886);const k=g(1124);const S=g(6928);class DefaultArtifactClient{static create(){return new DefaultArtifactClient}uploadArtifact(A,i,g,E){return f(this,void 0,void 0,function*(){Q.info(`Starting artifact upload\nFor more detailed logs during the artifact upload process, enable step-debugging: https://docs.github.com/actions/monitoring-and-troubleshooting-workflows/enabling-debug-logging#enabling-step-debug-logging`);(0,b.checkArtifactName)(A);const p=(0,B.getUploadSpecification)(A,g,i);const C={artifactName:A,artifactItems:[],size:0,failedItems:[]};const f=new I.UploadHttpClient;if(p.length===0){Q.warning(`No files found that can be uploaded`)}else{const i=yield f.createArtifactInFileContainer(A,E);if(!i.fileContainerResourceUrl){Q.debug(i.toString());throw new Error("No URL provided by the Artifact Service to upload an artifact to")}Q.debug(`Upload Resource URL: ${i.fileContainerResourceUrl}`);Q.info(`Container for artifact "${A}" successfully created. Starting upload of file(s)`);const g=yield f.uploadArtifactToFileContainer(i.fileContainerResourceUrl,p,E);Q.info(`File upload process has finished. Finalizing the artifact upload`);yield f.patchArtifactSize(g.totalSize,A);if(g.failedItems.length>0){Q.info(`Upload finished. There were ${g.failedItems.length} items that failed to upload`)}else{Q.info(`Artifact has been finalized. All files have been successfully uploaded!`)}Q.info(`\nThe raw size of all the files that were specified for upload is ${g.totalSize} bytes\nThe size of all the files that were uploaded is ${g.uploadSize} bytes. This takes into account any gzip compression used to reduce the upload size, time and storage\n\nNote: The size of downloaded zips can differ significantly from the reported size. For more information see: https://github.com/actions/upload-artifact#zipped-artifact-downloads \r\n`);C.artifactItems=p.map(A=>A.absoluteFilePath);C.size=g.uploadSize;C.failedItems=g.failedItems}return C})}downloadArtifact(A,i,g){return f(this,void 0,void 0,function*(){const E=new D.DownloadHttpClient;const p=yield E.listArtifacts();if(p.count===0){throw new Error(`Unable to find any artifacts for the associated workflow`)}const C=p.value.find(i=>i.name===A);if(!C){throw new Error(`Unable to find an artifact with the name: ${A}`)}const f=yield E.getContainerItems(C.name,C.fileContainerResourceUrl);if(!i){i=(0,k.getWorkSpaceDirectory)()}i=(0,S.normalize)(i);i=(0,S.resolve)(i);const B=(0,R.getDownloadSpecification)(A,f.value,i,(g===null||g===void 0?void 0:g.createArtifactFolder)||false);if(B.filesToDownload.length===0){Q.info(`No downloadable files were found for the artifact: ${C.name}`)}else{yield(0,y.createDirectoriesForArtifact)(B.directoryStructure);Q.info("Directory structure has been set up for the artifact");yield(0,y.createEmptyFilesForArtifact)(B.emptyFilesToCreate);yield E.downloadSingleArtifact(B.filesToDownload)}return{artifactName:A,downloadPath:B.rootDownloadLocation}})}downloadAllArtifacts(A){return f(this,void 0,void 0,function*(){const i=new D.DownloadHttpClient;const g=[];const E=yield i.listArtifacts();if(E.count===0){Q.info("Unable to find any artifacts for the associated workflow");return g}if(!A){A=(0,k.getWorkSpaceDirectory)()}A=(0,S.normalize)(A);A=(0,S.resolve)(A);let p=0;while(p<E.count){const C=E.value[p];p+=1;Q.info(`starting download of artifact ${C.name} : ${p}/${E.count}`);const f=yield i.getContainerItems(C.name,C.fileContainerResourceUrl);const B=(0,R.getDownloadSpecification)(C.name,f.value,A,true);if(B.filesToDownload.length===0){Q.info(`No downloa Line truncated
/*! /*!
* mime-db * mime-db
* Copyright(c) 2014 Jonathan Ong * Copyright(c) 2014 Jonathan Ong
* Copyright(c) 2015-2022 Douglas Christopher Wilson * Copyright(c) 2015-2022 Douglas Christopher Wilson
* MIT Licensed * MIT Licensed
*/ */
t.exports=u(7080)},3674:(t,A,u)=>{ A.exports=g(7080)},3674:(A,i,g)=>{
/*! /*!
* mime-types * mime-types
* Copyright(c) 2014 Jonathan Ong * Copyright(c) 2014 Jonathan Ong
* Copyright(c) 2015 Douglas Christopher Wilson * Copyright(c) 2015 Douglas Christopher Wilson
* MIT Licensed * MIT Licensed
*/ */
var d=u(8975);var E=u(6928).extname;var C=/^\s*([^;\s]*)(?:;|\s|$)/;var Q=/^text\//i;A.charset=charset;A.charsets={lookup:charset};A.contentType=contentType;A.extension=extension;A.extensions=Object.create(null);A.lookup=lookup;A.types=Object.create(null);populateMaps(A.extensions,A.types);function charset(t){if(!t||typeof t!=="string"){return false}var A=C.exec(t);var u=A&&d[A[1].toLowerCase()];if(u&&u.charset){return u.charset}if(A&&Q.test(A[1])){return"UTF-8"}return false}function contentType(t){if(!t||typeof t!=="string"){return false}var u=t.indexOf("/")===-1?A.lookup(t):t;if(!u){return false}if(u.indexOf("charset")===-1){var d=A.charset(u);if(d)u+="; charset="+d.toLowerCase()}return u}function extension(t){if(!t||typeof t!=="string"){return false}var u=C.exec(t);var d=u&&A.extensions[u[1].toLowerCase()];if(!d||!d.length){return false}return d[0]}function lookup(t){if(!t||typeof t!=="string"){return false}var u=E("x."+t).toLowerCase().substr(1);if(!u){return false}return A.types[u]||false}function populateMaps(t,A){var u=["nginx","apache",undefined,"iana"];Object.keys(d).forEach(function forEachMimeType(E){var C=d[E];var Q=C.extensions;if(!Q||!Q.length){return}t[E]=Q;for(var B=0;B<Q.length;B++){var I=Q[B];if(A[I]){var m=u.indexOf(d[A[I]].source);var y=u.indexOf(C.source);if(A[I]!=="application/octet-stream"&&(m>y||m===y&&A[I].substr(0,12)==="application/")){continue}}A[I]=E}})}},4023:t=>{var A=1e3;var u=A*60;var d=u*60;var E=d*24;var C=E*7;var Q=E*365.25;t.exports=function(t,A){A=A||{};var u=typeof t;if(u==="string"&&t.length>0){return parse(t)}else if(u==="number"&&isFinite(t)){return A.long?fmtLong(t):fmtShort(t)}throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function parse(t){t=String(t);if(t.length>100){return}var B=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(!B){return}var I=parseFloat(B[1]);var m=(B[2]||"ms").toLowerCase();switch(m){case"years":case"year":case"yrs":case"yr":case"y":return I*Q;case"weeks":case"week":case"w":return I*C;case"days":case"day":case"d":return I*E;case"hours":case"hour":case"hrs":case"hr":case"h":return I*d;case"minutes":case"minute":case"mins":case"min":case"m":return I*u;case"seconds":case"second":case"secs":case"sec":case"s":return I*A;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return I;default:return undefined}}function fmtShort(t){var C=Math.abs(t);if(C>=E){return Math.round(t/E)+"d"}if(C>=d){return Math.round(t/d)+"h"}if(C>=u){return Math.round(t/u)+"m"}if(C>=A){return Math.round(t/A)+"s"}return t+"ms"}function fmtLong(t){var C=Math.abs(t);if(C>=E){return plural(t,C,E,"day")}if(C>=d){return plural(t,C,d,"hour")}if(C>=u){return plural(t,C,u,"minute")}if(C>=A){return plural(t,C,A,"second")}return t+" ms"}function plural(t,A,u,d){var E=A>=u*1.5;return Math.round(t/u)+" "+d+(E?"s":"")}},4147:(t,A,u)=>{var d=u(7016).parse;var E={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443};var C=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function getProxyForUrl(t){var A=typeof t==="string"?d(t):t||{};var u=A.protocol;var C=A.host;var Q=A.port;if(typeof C!=="string"||!C||typeof u!=="string"){return""}u=u.split(":",1)[0];C=C.replace(/:\d*$/,"");Q=parseInt(Q)||E[u]||0;if(!shouldProxy(C,Q)){return""}var B=getEnv("npm_config_"+u+"_proxy")||getEnv(u+"_proxy")||getEnv("npm_config_proxy")||getEnv("all_proxy");if(B&&B.indexOf("://")===-1){B=u+"://"+B}return B}function shouldProxy(t,A){var u=(getEnv("npm_config_no_proxy")||getEnv("no_proxy")).toLowerCase();if(!u){return true}if(u==="*"){return false}return u.split(/[,\s]/).every(function(u){if(!u){return true}var d=u.match(/^(.+):(\d+)$/);var E=d?d[1]:u;var Q=d?parseInt(d[2]):0;if(Q&&Q!==A){return true}if(!/^[.*]/.test(E)){return t!==E}if(E.charAt(0)==="*"){E=E.slice(1)}return!C.call(t,E)})}function getEnv(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}A.T=getProxyForUrl},4398:(t,A,u)=>{var d;d={value:true};const E=u(9105);const C=u(7016);const Q=u(4434);const B=u(1141);const I=u(3106);const m=u(6550);const y=u(9023);const b=u(9896);const D=u(7967);const R=u(6928);function _interopDefaultLegacy(t){return t&&typeof t==="object"&&"default"in t?t:{default:t}}const k=_interopDefaultLegacy(E);const S=_interopDefaultLegacy(C);const v=_interopDefaultLegacy(B);const x=_interopDefaultLegacy(I);const N=_interopDefaultLegacy(m);const L=_interopDefaultLegacy(y);const M=_interopDefaultLegacy(b);const T=_interopDefaultLegacy(D);const H=_interopDefaultLegacy(R);const G=v["default"]("screepsapi:socket");const Y={reconnect:true,resubscribe:true,keepAlive:true,maxRetries:10,maxRetryDelay:60*1e3};class Socket extends Q.EventEmitter{constructor(t){super();this.api=t;this.opts=Object.assign({},Y);this.on("error",()=>{});this.reset();this.on("auth",t=>{if(t.data.status==="ok"){while(this.__queue.length)Line truncated var E=g(8975);var p=g(6928).extname;var C=/^\s*([^;\s]*)(?:;|\s|$)/;var f=/^text\//i;i.charset=charset;i.charsets={lookup:charset};i.contentType=contentType;i.extension=extension;i.extensions=Object.create(null);i.lookup=lookup;i.types=Object.create(null);populateMaps(i.extensions,i.types);function charset(A){if(!A||typeof A!=="string"){return false}var i=C.exec(A);var g=i&&E[i[1].toLowerCase()];if(g&&g.charset){return g.charset}if(i&&f.test(i[1])){return"UTF-8"}return false}function contentType(A){if(!A||typeof A!=="string"){return false}var g=A.indexOf("/")===-1?i.lookup(A):A;if(!g){return false}if(g.indexOf("charset")===-1){var E=i.charset(g);if(E)g+="; charset="+E.toLowerCase()}return g}function extension(A){if(!A||typeof A!=="string"){return false}var g=C.exec(A);var E=g&&i.extensions[g[1].toLowerCase()];if(!E||!E.length){return false}return E[0]}function lookup(A){if(!A||typeof A!=="string"){return false}var g=p("x."+A).toLowerCase().substr(1);if(!g){return false}return i.types[g]||false}function populateMaps(A,i){var g=["nginx","apache",undefined,"iana"];Object.keys(E).forEach(function forEachMimeType(p){var C=E[p];var f=C.extensions;if(!f||!f.length){return}A[p]=f;for(var Q=0;Q<f.length;Q++){var B=f[Q];if(i[B]){var I=g.indexOf(E[i[B]].source);var y=g.indexOf(C.source);if(i[B]!=="application/octet-stream"&&(I>y||I===y&&i[B].substr(0,12)==="application/")){continue}}i[B]=p}})}},4023:A=>{var i=1e3;var g=i*60;var E=g*60;var p=E*24;var C=p*7;var f=p*365.25;A.exports=function(A,i){i=i||{};var g=typeof A;if(g==="string"&&A.length>0){return parse(A)}else if(g==="number"&&isFinite(A)){return i.long?fmtLong(A):fmtShort(A)}throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(A))};function parse(A){A=String(A);if(A.length>100){return}var Q=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(A);if(!Q){return}var B=parseFloat(Q[1]);var I=(Q[2]||"ms").toLowerCase();switch(I){case"years":case"year":case"yrs":case"yr":case"y":return B*f;case"weeks":case"week":case"w":return B*C;case"days":case"day":case"d":return B*p;case"hours":case"hour":case"hrs":case"hr":case"h":return B*E;case"minutes":case"minute":case"mins":case"min":case"m":return B*g;case"seconds":case"second":case"secs":case"sec":case"s":return B*i;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return B;default:return undefined}}function fmtShort(A){var C=Math.abs(A);if(C>=p){return Math.round(A/p)+"d"}if(C>=E){return Math.round(A/E)+"h"}if(C>=g){return Math.round(A/g)+"m"}if(C>=i){return Math.round(A/i)+"s"}return A+"ms"}function fmtLong(A){var C=Math.abs(A);if(C>=p){return plural(A,C,p,"day")}if(C>=E){return plural(A,C,E,"hour")}if(C>=g){return plural(A,C,g,"minute")}if(C>=i){return plural(A,C,i,"second")}return A+" ms"}function plural(A,i,g,E){var p=i>=g*1.5;return Math.round(A/g)+" "+E+(p?"s":"")}},4147:(A,i,g)=>{var E=g(7016).parse;var p={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443};var C=String.prototype.endsWith||function(A){return A.length<=this.length&&this.indexOf(A,this.length-A.length)!==-1};function getProxyForUrl(A){var i=typeof A==="string"?E(A):A||{};var g=i.protocol;var C=i.host;var f=i.port;if(typeof C!=="string"||!C||typeof g!=="string"){return""}g=g.split(":",1)[0];C=C.replace(/:\d*$/,"");f=parseInt(f)||p[g]||0;if(!shouldProxy(C,f)){return""}var Q=getEnv("npm_config_"+g+"_proxy")||getEnv(g+"_proxy")||getEnv("npm_config_proxy")||getEnv("all_proxy");if(Q&&Q.indexOf("://")===-1){Q=g+"://"+Q}return Q}function shouldProxy(A,i){var g=(getEnv("npm_config_no_proxy")||getEnv("no_proxy")).toLowerCase();if(!g){return true}if(g==="*"){return false}return g.split(/[,\s]/).every(function(g){if(!g){return true}var E=g.match(/^(.+):(\d+)$/);var p=E?E[1]:g;var f=E?parseInt(E[2]):0;if(f&&f!==i){return true}if(!/^[.*]/.test(p)){return A!==p}if(p.charAt(0)==="*"){p=p.slice(1)}return!C.call(A,p)})}function getEnv(A){return process.env[A.toLowerCase()]||process.env[A.toUpperCase()]||""}i.T=getProxyForUrl},4398:(A,i,g)=>{var E;E={value:true};const p=g(9105);const C=g(7016);const f=g(4434);const Q=g(1141);const B=g(3106);const I=g(6550);const y=g(9023);const b=g(9896);const D=g(7967);const R=g(6928);function _interopDefaultLegacy(A){return A&&typeof A==="object"&&"default"in A?A:{default:A}}const k=_interopDefaultLegacy(p);const S=_interopDefaultLegacy(C);const v=_interopDefaultLegacy(Q);const F=_interopDefaultLegacy(B);const x=_interopDefaultLegacy(I);const U=_interopDefaultLegacy(y);const L=_interopDefaultLegacy(b);const M=_interopDefaultLegacy(D);const T=_interopDefaultLegacy(R);const H=v["default"]("screepsapi:socket");const G={reconnect:true,resubscribe:true,keepAlive:true,maxRetries:10,maxRetryDelay:60*1e3};class Socket extends f.EventEmitter{constructor(A){super();this.api=A;this.opts=Object.assign({},G);this.on("error",()=>{});this.reset();this.on("auth",A=>{if(A.data.status==="ok"){while(this.__queue.length)Line truncated
/*! /*!
* Tmp * Tmp
* *
@@ -20,8 +20,8 @@ var d=u(8975);var E=u(6928).extname;var C=/^\s*([^;\s]*)(?:;|\s|$)/;var Q=/^text
* *
* MIT Licensed * MIT Licensed
*/ */
const d=u(9896);const E=u(857);const C=u(6928);const Q=u(6982);const B={fs:d.constants,os:E.constants};const I="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",m=/XXXXXX/,y=3,b=(B.O_CREAT||B.fs.O_CREAT)|(B.O_EXCL||B.fs.O_EXCL)|(B.O_RDWR||B.fs.O_RDWR),D=E.platform()==="win32",R=B.EBADF||B.os.errno.EBADF,k=B.ENOENT||B.os.errno.ENOENT,S=448,v=384,x="exit",N=[],L=d.rmdirSync.bind(d);let M=false;function rimraf(t,A){return d.rm(t,{recursive:true},A)}function FN_RIMRAF_SYNC(t){return d.rmSync(t,{recursive:true})}function tmpName(t,A){const u=_parseArguments(t,A),E=u[0],C=u[1];_assertAndSanitizeOptions(E,function(t,A){if(t)return C(t);let u=A.tries;(function _getUniqueName(){try{const t=_generateTmpName(A);d.stat(t,function(A){if(!A){if(u-- >0)return _getUniqueName();return C(new Error("Could not get a unique tmp filename, max tries reached "+t))}C(null,t)})}catch(t){C(t)}})()})}function tmpNameSync(t){const A=_parseArguments(t),u=A[0];const E=_assertAndSanitizeOptionsSync(u);let C=E.tries;do{const t=_generateTmpName(E);try{d.statSync(t)}catch(A){return t}}while(C-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function file(t,A){const u=_parseArguments(t,A),E=u[0],C=u[1];tmpName(E,function _tmpNameCreated(t,A){if(t)return C(t);d.open(A,b,E.mode||v,function _fileCreated(t,u){if(t)return C(t);if(E.discardDescriptor){return d.close(u,function _discardCallback(t){return C(t,A,undefined,_prepareTmpFileRemoveCallback(A,-1,E,false))})}else{const t=E.discardDescriptor||E.detachDescriptor;C(null,A,u,_prepareTmpFileRemoveCallback(A,t?-1:u,E,false))}})})}function fileSync(t){const A=_parseArguments(t),u=A[0];const E=u.discardDescriptor||u.detachDescriptor;const C=tmpNameSync(u);let Q=d.openSync(C,b,u.mode||v);if(u.discardDescriptor){d.closeSync(Q);Q=undefined}return{name:C,fd:Q,removeCallback:_prepareTmpFileRemoveCallback(C,E?-1:Q,u,true)}}function dir(t,A){const u=_parseArguments(t,A),E=u[0],C=u[1];tmpName(E,function _tmpNameCreated(t,A){if(t)return C(t);d.mkdir(A,E.mode||S,function _dirCreated(t){if(t)return C(t);C(null,A,_prepareTmpDirRemoveCallback(A,E,false))})})}function dirSync(t){const A=_parseArguments(t),u=A[0];const E=tmpNameSync(u);d.mkdirSync(E,u.mode||S);return{name:E,removeCallback:_prepareTmpDirRemoveCallback(E,u,true)}}function _removeFileAsync(t,A){const _handler=function(t){if(t&&!_isENOENT(t)){return A(t)}A()};if(0<=t[0])d.close(t[0],function(){d.unlink(t[1],_handler)});else d.unlink(t[1],_handler)}function _removeFileSync(t){let A=null;try{if(0<=t[0])d.closeSync(t[0])}catch(t){if(!_isEBADF(t)&&!_isENOENT(t))throw t}finally{try{d.unlinkSync(t[1])}catch(t){if(!_isENOENT(t))A=t}}if(A!==null){throw A}}function _prepareTmpFileRemoveCallback(t,A,u,d){const E=_prepareRemoveCallback(_removeFileSync,[A,t],d);const C=_prepareRemoveCallback(_removeFileAsync,[A,t],d,E);if(!u.keep)N.unshift(E);return d?E:C}function _prepareTmpDirRemoveCallback(t,A,u){const E=A.unsafeCleanup?rimraf:d.rmdir.bind(d);const C=A.unsafeCleanup?FN_RIMRAF_SYNC:L;const Q=_prepareRemoveCallback(C,t,u);const B=_prepareRemoveCallback(E,t,u,Q);if(!A.keep)N.unshift(Q);return u?Q:B}function _prepareRemoveCallback(t,A,u,d){let E=false;return function _cleanupCallback(C){if(!E){const Q=d||_cleanupCallback;const B=N.indexOf(Q);if(B>=0)N.splice(B,1);E=true;if(u||t===L||t===FN_RIMRAF_SYNC){return t(A)}else{return t(A,C||function(){})}}}}function _garbageCollector(){if(!M)return;while(N.length){try{N[0]()}catch(t){}}}function _randomChars(t){let A=[],u=null;try{u=Q.randomBytes(t)}catch(A){u=Q.pseudoRandomBytes(t)}for(let d=0;d<t;d++){A.push(I[u[d]%I.length])}return A.join("")}function _isUndefined(t){return typeof t==="undefined"}function _parseArguments(t,A){if(typeof t==="function"){return[{},t]}if(_isUndefined(t)){return[{},A]}const u={};for(const A of Object.getOwnPropertyNames(t)){u[A]=t[A]}return[u,A]}function _resolvePath(t,A,u){const E=C.isAbsolute(t)?t:C.join(A,t);d.stat(E,function(t){if(t){d.realpath(C.dirname(E),function(t,A){if(t)return u(t);u(null,C.join(A,C.basename(E)))})}else{d.realpath(E,u)}})}function _resolvePathSync(t,A){const u=C.isAbsolute(t)?t:C.join(A,t);try{d.statSync(u);return d.realpathSync(u)}catch(t){const A=d.realpathSync(C.dirname(u));return C.join(A,C.basename(u))}}function _generateTmpName(t){const A=t.tmpdir;if(!_isUndefined(t.name)){return C.join(A,t.dir,t.name)}if(!_isUndefined(t.template)){return C.join(A,t.dir,t.template).replace(m,_randomChars(6))}const u=[t.prefix?t.prefix:"tmp","-",process.pid,"-",_randomChars(12),t.postfix?"-"+t.postfix:""].join("");return C.join(A,t.dir,u)}function _assertPath(t,A){if(typeof A!=="string"){throw new Error(`${t} option must be a string, got "${typeof A}".`)}if(A.includes("..")){throw new Error("Relative value not allowed")}return A}function _assertOptionsBase(t){if(!_isUndefined(t.name)){const A=t.name;if(C.isAbsolute(A))throw new Error(`name option must not contain an absolute path, found "${A}".`);const u=C.basename(A);if(u===".."Line truncated const E=g(9896);const p=g(857);const C=g(6928);const f=g(6982);const Q={fs:E.constants,os:p.constants};const B="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",I=/XXXXXX/,y=3,b=(Q.O_CREAT||Q.fs.O_CREAT)|(Q.O_EXCL||Q.fs.O_EXCL)|(Q.O_RDWR||Q.fs.O_RDWR),D=p.platform()==="win32",R=Q.EBADF||Q.os.errno.EBADF,k=Q.ENOENT||Q.os.errno.ENOENT,S=448,v=384,F="exit",x=[],U=E.rmdirSync.bind(E);let L=false;function rimraf(A,i){return E.rm(A,{recursive:true},i)}function FN_RIMRAF_SYNC(A){return E.rmSync(A,{recursive:true})}function tmpName(A,i){const g=_parseArguments(A,i),p=g[0],C=g[1];_assertAndSanitizeOptions(p,function(A,i){if(A)return C(A);let g=i.tries;(function _getUniqueName(){try{const A=_generateTmpName(i);E.stat(A,function(i){if(!i){if(g-- >0)return _getUniqueName();return C(new Error("Could not get a unique tmp filename, max tries reached "+A))}C(null,A)})}catch(A){C(A)}})()})}function tmpNameSync(A){const i=_parseArguments(A),g=i[0];const p=_assertAndSanitizeOptionsSync(g);let C=p.tries;do{const A=_generateTmpName(p);try{E.statSync(A)}catch(i){return A}}while(C-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function file(A,i){const g=_parseArguments(A,i),p=g[0],C=g[1];tmpName(p,function _tmpNameCreated(A,i){if(A)return C(A);E.open(i,b,p.mode||v,function _fileCreated(A,g){if(A)return C(A);if(p.discardDescriptor){return E.close(g,function _discardCallback(A){return C(A,i,undefined,_prepareTmpFileRemoveCallback(i,-1,p,false))})}else{const A=p.discardDescriptor||p.detachDescriptor;C(null,i,g,_prepareTmpFileRemoveCallback(i,A?-1:g,p,false))}})})}function fileSync(A){const i=_parseArguments(A),g=i[0];const p=g.discardDescriptor||g.detachDescriptor;const C=tmpNameSync(g);let f=E.openSync(C,b,g.mode||v);if(g.discardDescriptor){E.closeSync(f);f=undefined}return{name:C,fd:f,removeCallback:_prepareTmpFileRemoveCallback(C,p?-1:f,g,true)}}function dir(A,i){const g=_parseArguments(A,i),p=g[0],C=g[1];tmpName(p,function _tmpNameCreated(A,i){if(A)return C(A);E.mkdir(i,p.mode||S,function _dirCreated(A){if(A)return C(A);C(null,i,_prepareTmpDirRemoveCallback(i,p,false))})})}function dirSync(A){const i=_parseArguments(A),g=i[0];const p=tmpNameSync(g);E.mkdirSync(p,g.mode||S);return{name:p,removeCallback:_prepareTmpDirRemoveCallback(p,g,true)}}function _removeFileAsync(A,i){const _handler=function(A){if(A&&!_isENOENT(A)){return i(A)}i()};if(0<=A[0])E.close(A[0],function(){E.unlink(A[1],_handler)});else E.unlink(A[1],_handler)}function _removeFileSync(A){let i=null;try{if(0<=A[0])E.closeSync(A[0])}catch(A){if(!_isEBADF(A)&&!_isENOENT(A))throw A}finally{try{E.unlinkSync(A[1])}catch(A){if(!_isENOENT(A))i=A}}if(i!==null){throw i}}function _prepareTmpFileRemoveCallback(A,i,g,E){const p=_prepareRemoveCallback(_removeFileSync,[i,A],E);const C=_prepareRemoveCallback(_removeFileAsync,[i,A],E,p);if(!g.keep)x.unshift(p);return E?p:C}function _prepareTmpDirRemoveCallback(A,i,g){const p=i.unsafeCleanup?rimraf:E.rmdir.bind(E);const C=i.unsafeCleanup?FN_RIMRAF_SYNC:U;const f=_prepareRemoveCallback(C,A,g);const Q=_prepareRemoveCallback(p,A,g,f);if(!i.keep)x.unshift(f);return g?f:Q}function _prepareRemoveCallback(A,i,g,E){let p=false;return function _cleanupCallback(C){if(!p){const f=E||_cleanupCallback;const Q=x.indexOf(f);if(Q>=0)x.splice(Q,1);p=true;if(g||A===U||A===FN_RIMRAF_SYNC){return A(i)}else{return A(i,C||function(){})}}}}function _garbageCollector(){if(!L)return;while(x.length){try{x[0]()}catch(A){}}}function _randomChars(A){let i=[],g=null;try{g=f.randomBytes(A)}catch(i){g=f.pseudoRandomBytes(A)}for(let E=0;E<A;E++){i.push(B[g[E]%B.length])}return i.join("")}function _isUndefined(A){return typeof A==="undefined"}function _parseArguments(A,i){if(typeof A==="function"){return[{},A]}if(_isUndefined(A)){return[{},i]}const g={};for(const i of Object.getOwnPropertyNames(A)){g[i]=A[i]}return[g,i]}function _resolvePath(A,i,g){const p=C.isAbsolute(A)?A:C.join(i,A);E.stat(p,function(A){if(A){E.realpath(C.dirname(p),function(A,i){if(A)return g(A);g(null,C.join(i,C.basename(p)))})}else{E.realpath(p,g)}})}function _resolvePathSync(A,i){const g=C.isAbsolute(A)?A:C.join(i,A);try{E.statSync(g);return E.realpathSync(g)}catch(A){const i=E.realpathSync(C.dirname(g));return C.join(i,C.basename(g))}}function _generateTmpName(A){const i=A.tmpdir;if(!_isUndefined(A.name)){return C.join(i,A.dir,A.name)}if(!_isUndefined(A.template)){return C.join(i,A.dir,A.template).replace(I,_randomChars(6))}const g=[A.prefix?A.prefix:"tmp","-",process.pid,"-",_randomChars(12),A.postfix?"-"+A.postfix:""].join("");return C.join(i,A.dir,g)}function _assertPath(A,i){if(typeof i!=="string"){throw new Error(`${A} option must be a string, got "${typeof i}".`)}if(i.includes("..")){throw new Error("Relative value not allowed")}return i}function _assertOptionsBase(A){if(!_isUndefined(A.name)){const i=A.name;if(C.isAbsolute(i))throw new Error(`name option must not contain an absolute path, found "${i}".`);const g=C.basename(i);if(g===".."Line truncated
/*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */;const escape=t=>t.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22");const normalizeLinefeeds=t=>t.replace(/\r?\n|\r/g,"\r\n");const d=[];const E=new Uint8Array([13,10]);b=0;let C=false;for(const[A,Q]of t){if(typeof Q==="string"){const t=q.encode(u+`; name="${escape(normalizeLinefeeds(A))}"`+`\r\n\r\n${normalizeLinefeeds(Q)}\r\n`);d.push(t);b+=t.byteLength}else{const t=q.encode(`${u}; name="${escape(normalizeLinefeeds(A))}"`+(Q.name?`; filename="${escape(Q.name)}"`:"")+"\r\n"+`Content-Type: ${Q.type||"application/octet-stream"}\r\n\r\n`);d.push(t,Q,E);if(typeof Q.size==="number"){b+=t.byteLength+Q.size+E.byteLength}else{C=true}}}const Q=q.encode(`--${A}--`);d.push(Q);b+=Q.byteLength;if(C){b=null}y=t;m=async function*(){for(const t of d){if(t.stream){yield*t.stream()}else{yield t}}};D="multipart/form-data; boundary="+A}else if(Q(t)){y=t;b=t.size;if(t.type){D=t.type}}else if(typeof t[Symbol.asyncIterator]==="function"){if(A){throw new TypeError("keepalive")}if(E.isDisturbed(t)||t.locked){throw new TypeError("Response body object should not be disturbed or locked")}d=t instanceof P?t:C(t)}if(typeof y==="string"||E.isBuffer(y)){b=Buffer.byteLength(y)}if(m!=null){let A;d=new P({async start(){A=m(t)[Symbol.asyncIterator]()},async pull(t){const{value:u,done:E}=await A.next();if(E){queueMicrotask(()=>{t.close()})}else{if(!M(d)){t.enqueue(new Uint8Array(u))}}return t.desiredSize>0},async cancel(t){await A.return()},type:undefined})}const R={stream:d,source:y,length:b};return[R,D]}function safelyExtractBody(t,A=false){if(!P){P=u(3774).ReadableStream}if(t instanceof P){L(!E.isDisturbed(t),"The body has already been consumed.");L(!t.locked,"The stream is locked.")}return extractBody(t,A)}function cloneBody(t){const[A,u]=t.stream.tee();const d=S(u,{transfer:[u]});const[,E]=d.tee();t.stream=A;return{stream:E,length:t.length,source:t.source}}async function*consumeBody(t){if(t){if(T(t)){yield t}else{const A=t.stream;if(E.isDisturbed(A)){throw new TypeError("The body has already been consumed.")}if(A.locked){throw new TypeError("The stream is locked.")}A[N]=true;yield*A}}}function throwIfAborted(t){if(t.aborted){throw new k("The operation was aborted.","AbortError")}}function bodyMixinMethods(t){const A={blob(){return specConsumeBody(this,t=>{let A=bodyMimeType(this);if(A==="failure"){A=""}else if(A){A=O(A)}return new v([t],{type:A})},t)},arrayBuffer(){return specConsumeBody(this,t=>new Uint8Array(t).buffer,t)},text(){return specConsumeBody(this,utf8DecodeBytes,t)},json(){return specConsumeBody(this,parseJSONFromBytes,t)},async formData(){R.brandCheck(this,t);throwIfAborted(this[D]);const A=this.headers.get("Content-Type");if(/multipart\/form-data/.test(A)){const t={};for(const[A,u]of this.headers)t[A.toLowerCase()]=u;const A=new b;let u;try{u=new d({headers:t,preservePath:true})}catch(t){throw new k(`${t}`,"AbortError")}u.on("field",(t,u)=>{A.append(t,u)});u.on("file",(t,u,d,E,C)=>{const Q=[];if(E==="base64"||E.toLowerCase()==="base64"){let E="";u.on("data",t=>{E+=t.toString().replace(/[\r\n]/gm,"");const A=E.length-E.length%4;Q.push(Buffer.from(E.slice(0,A),"base64"));E=E.slice(A)});u.on("end",()=>{Q.push(Buffer.from(E,"base64"));A.append(t,new W(Q,d,{type:C}))})}else{u.on("data",t=>{Q.push(t)});u.on("end",()=>{A.append(t,new W(Q,d,{type:C}))})}});const E=new Promise((t,A)=>{u.on("finish",t);u.on("error",t=>A(new TypeError(t)))});if(this.body!==null)for await(const t of consumeBody(this[D].body))u.write(t);u.end();await E;return A}else if(/application\/x-www-form-urlencoded/.test(A)){let t;try{let A="";const u=new TextDecoder("utf-8",{ignoreBOM:true});for await(const t of consumeBody(this[D].body)){if(!T(t)){throw new TypeError("Expected Uint8Array chunk")}A+=u.decode(t,{stream:true})}A+=u.decode();t=new URLSearchParams(A)}catch(t){throw Object.assign(new TypeError,{cause:t})}const A=new b;for(const[u,d]of t){A.append(u,d)}return A}else{await Promise.resolve();throwIfAborted(this[D]);throw R.errors.exception({header:`${t.name}.formData`,message:"Could not parse content as FormData."})}}};return A}function mixinBody(t){Object.assign(t.prototype,bodyMixinMethods(t))}async function specConsumeBody(t,A,u){R.brandCheck(t,u);throwIfAborted(t[D]);if(bodyUnusable(t[D].body)){throw new TypeError("Body is unusable")}const d=m();const errorSteps=t=>d.reject(t);const successSteps=t=>{try{d.resolve(A(t))}catch(t){errorSteps(t)}};if(t[D].body==null){successSteps(new Uint8Array);return d.promise}await y(t[D].body,successSteps,errorSteps);return d.promise}function bodyUnusable(t){return t!=null&&(t.stream.locked||E.isDisturbed(t.stream))}function utf8DecodeBytes(t){if(t.length===0){return""}if(t[0]===239&&t[1]===187&&t[2]===191){t=t.subarray(3)}const A=j.decode(t);return A}function parseJSONFromBytes(t){return JSON.parse(utf8DecodeBytes(t))}function bodyMimeType(t){const{headersList:A}=t[D];const u=A.get("content-type");if(u===null){reLine truncated /*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */;const escape=A=>A.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22");const normalizeLinefeeds=A=>A.replace(/\r?\n|\r/g,"\r\n");const E=[];const p=new Uint8Array([13,10]);b=0;let C=false;for(const[i,f]of A){if(typeof f==="string"){const A=P.encode(g+`; name="${escape(normalizeLinefeeds(i))}"`+`\r\n\r\n${normalizeLinefeeds(f)}\r\n`);E.push(A);b+=A.byteLength}else{const A=P.encode(`${g}; name="${escape(normalizeLinefeeds(i))}"`+(f.name?`; filename="${escape(f.name)}"`:"")+"\r\n"+`Content-Type: ${f.type||"application/octet-stream"}\r\n\r\n`);E.push(A,f,p);if(typeof f.size==="number"){b+=A.byteLength+f.size+p.byteLength}else{C=true}}}const f=P.encode(`--${i}--`);E.push(f);b+=f.byteLength;if(C){b=null}y=A;I=async function*(){for(const A of E){if(A.stream){yield*A.stream()}else{yield A}}};D="multipart/form-data; boundary="+i}else if(f(A)){y=A;b=A.size;if(A.type){D=A.type}}else if(typeof A[Symbol.asyncIterator]==="function"){if(i){throw new TypeError("keepalive")}if(p.isDisturbed(A)||A.locked){throw new TypeError("Response body object should not be disturbed or locked")}E=A instanceof _?A:C(A)}if(typeof y==="string"||p.isBuffer(y)){b=Buffer.byteLength(y)}if(I!=null){let i;E=new _({async start(){i=I(A)[Symbol.asyncIterator]()},async pull(A){const{value:g,done:p}=await i.next();if(p){queueMicrotask(()=>{A.close()})}else{if(!L(E)){A.enqueue(new Uint8Array(g))}}return A.desiredSize>0},async cancel(A){await i.return()},type:undefined})}const R={stream:E,source:y,length:b};return[R,D]}function safelyExtractBody(A,i=false){if(!_){_=g(3774).ReadableStream}if(A instanceof _){U(!p.isDisturbed(A),"The body has already been consumed.");U(!A.locked,"The stream is locked.")}return extractBody(A,i)}function cloneBody(A){const[i,g]=A.stream.tee();const E=S(g,{transfer:[g]});const[,p]=E.tee();A.stream=i;return{stream:p,length:A.length,source:A.source}}async function*consumeBody(A){if(A){if(M(A)){yield A}else{const i=A.stream;if(p.isDisturbed(i)){throw new TypeError("The body has already been consumed.")}if(i.locked){throw new TypeError("The stream is locked.")}i[x]=true;yield*i}}}function throwIfAborted(A){if(A.aborted){throw new k("The operation was aborted.","AbortError")}}function bodyMixinMethods(A){const i={blob(){return specConsumeBody(this,A=>{let i=bodyMimeType(this);if(i==="failure"){i=""}else if(i){i=Y(i)}return new v([A],{type:i})},A)},arrayBuffer(){return specConsumeBody(this,A=>new Uint8Array(A).buffer,A)},text(){return specConsumeBody(this,utf8DecodeBytes,A)},json(){return specConsumeBody(this,parseJSONFromBytes,A)},async formData(){R.brandCheck(this,A);throwIfAborted(this[D]);const i=this.headers.get("Content-Type");if(/multipart\/form-data/.test(i)){const A={};for(const[i,g]of this.headers)A[i.toLowerCase()]=g;const i=new b;let g;try{g=new E({headers:A,preservePath:true})}catch(A){throw new k(`${A}`,"AbortError")}g.on("field",(A,g)=>{i.append(A,g)});g.on("file",(A,g,E,p,C)=>{const f=[];if(p==="base64"||p.toLowerCase()==="base64"){let p="";g.on("data",A=>{p+=A.toString().replace(/[\r\n]/gm,"");const i=p.length-p.length%4;f.push(Buffer.from(p.slice(0,i),"base64"));p=p.slice(i)});g.on("end",()=>{f.push(Buffer.from(p,"base64"));i.append(A,new V(f,E,{type:C}))})}else{g.on("data",A=>{f.push(A)});g.on("end",()=>{i.append(A,new V(f,E,{type:C}))})}});const p=new Promise((A,i)=>{g.on("finish",A);g.on("error",A=>i(new TypeError(A)))});if(this.body!==null)for await(const A of consumeBody(this[D].body))g.write(A);g.end();await p;return i}else if(/application\/x-www-form-urlencoded/.test(i)){let A;try{let i="";const g=new TextDecoder("utf-8",{ignoreBOM:true});for await(const A of consumeBody(this[D].body)){if(!M(A)){throw new TypeError("Expected Uint8Array chunk")}i+=g.decode(A,{stream:true})}i+=g.decode();A=new URLSearchParams(i)}catch(A){throw Object.assign(new TypeError,{cause:A})}const i=new b;for(const[g,E]of A){i.append(g,E)}return i}else{await Promise.resolve();throwIfAborted(this[D]);throw R.errors.exception({header:`${A.name}.formData`,message:"Could not parse content as FormData."})}}};return i}function mixinBody(A){Object.assign(A.prototype,bodyMixinMethods(A))}async function specConsumeBody(A,i,g){R.brandCheck(A,g);throwIfAborted(A[D]);if(bodyUnusable(A[D].body)){throw new TypeError("Body is unusable")}const E=I();const errorSteps=A=>E.reject(A);const successSteps=A=>{try{E.resolve(i(A))}catch(A){errorSteps(A)}};if(A[D].body==null){successSteps(new Uint8Array);return E.promise}await y(A[D].body,successSteps,errorSteps);return E.promise}function bodyUnusable(A){return A!=null&&(A.stream.locked||p.isDisturbed(A.stream))}function utf8DecodeBytes(A){if(A.length===0){return""}if(A[0]===239&&A[1]===187&&A[2]===191){A=A.subarray(3)}const i=j.decode(A);return i}function parseJSONFromBytes(A){return JSON.parse(utf8DecodeBytes(A))}function bodyMimeType(A){const{headersList:i}=A[D];const g=i.get("content-type");if(g===null){reLine truncated
/*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> */C[E-4]=this.maskKey[0];C[E-3]=this.maskKey[1];C[E-2]=this.maskKey[2];C[E-1]=this.maskKey[3];C[1]=u;if(u===126){C.writeUInt16BE(A,2)}else if(u===127){C[2]=C[3]=0;C.writeUIntBE(A,4,6)}C[1]|=128;for(let t=0;t<A;t++){C[E+t]=this.frameData[t]^this.maskKey[t%4]}return C}}t.exports={WebsocketFrameSend:WebsocketFrameSend}},5080:(t,A,u)=>{const{Writable:d}=u(2203);const E=u(1637);const{parserStates:C,opcodes:Q,states:B,emptyBuffer:I}=u(932);const{kReadyState:m,kSentClose:y,kResponse:b,kReceivedClose:D}=u(327);const{isValidStatusCode:R,failWebsocketConnection:k,websocketMessageReceived:S}=u(1501);const{WebsocketFrameSend:v}=u(9140);const x={};x.ping=E.channel("undici:websocket:ping");x.pong=E.channel("undici:websocket:pong");class ByteParser extends d{#n=[];#o=0;#a=C.INFO;#c={};#l=[];constructor(t){super();this.ws=t}_write(t,A,u){this.#n.push(t);this.#o+=t.length;this.run(u)}run(t){while(true){if(this.#a===C.INFO){if(this.#o<2){return t()}const A=this.consume(2);this.#c.fin=(A[0]&128)!==0;this.#c.opcode=A[0]&15;this.#c.originalOpcode??=this.#c.opcode;this.#c.fragmented=!this.#c.fin&&this.#c.opcode!==Q.CONTINUATION;if(this.#c.fragmented&&this.#c.opcode!==Q.BINARY&&this.#c.opcode!==Q.TEXT){k(this.ws,"Invalid frame type was fragmented.");return}const u=A[1]&127;if(u<=125){this.#c.payloadLength=u;this.#a=C.READ_DATA}else if(u===126){this.#a=C.PAYLOADLENGTH_16}else if(u===127){this.#a=C.PAYLOADLENGTH_64}if(this.#c.fragmented&&u>125){k(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#c.opcode===Q.PING||this.#c.opcode===Q.PONG||this.#c.opcode===Q.CLOSE)&&u>125){k(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#c.opcode===Q.CLOSE){if(u===1){k(this.ws,"Received close frame with a 1-byte body.");return}const t=this.consume(u);this.#c.closeInfo=this.parseCloseBody(false,t);if(!this.ws[y]){const t=Buffer.allocUnsafe(2);t.writeUInt16BE(this.#c.closeInfo.code,0);const A=new v(t);this.ws[b].socket.write(A.createFrame(Q.CLOSE),t=>{if(!t){this.ws[y]=true}})}this.ws[m]=B.CLOSING;this.ws[D]=true;this.end();return}else if(this.#c.opcode===Q.PING){const A=this.consume(u);if(!this.ws[D]){const t=new v(A);this.ws[b].socket.write(t.createFrame(Q.PONG));if(x.ping.hasSubscribers){x.ping.publish({payload:A})}}this.#a=C.INFO;if(this.#o>0){continue}else{t();return}}else if(this.#c.opcode===Q.PONG){const A=this.consume(u);if(x.pong.hasSubscribers){x.pong.publish({payload:A})}if(this.#o>0){continue}else{t();return}}}else if(this.#a===C.PAYLOADLENGTH_16){if(this.#o<2){return t()}const A=this.consume(2);this.#c.payloadLength=A.readUInt16BE(0);this.#a=C.READ_DATA}else if(this.#a===C.PAYLOADLENGTH_64){if(this.#o<8){return t()}const A=this.consume(8);const u=A.readUInt32BE(0);if(u>2**31-1){k(this.ws,"Received payload length > 2^31 bytes.");return}const d=A.readUInt32BE(4);this.#c.payloadLength=(u<<8)+d;this.#a=C.READ_DATA}else if(this.#a===C.READ_DATA){if(this.#o<this.#c.payloadLength){return t()}else if(this.#o>=this.#c.payloadLength){const t=this.consume(this.#c.payloadLength);this.#l.push(t);if(!this.#c.fragmented||this.#c.fin&&this.#c.opcode===Q.CONTINUATION){const t=Buffer.concat(this.#l);S(this.ws,this.#c.originalOpcode,t);this.#c={};this.#l.length=0}this.#a=C.INFO}}if(this.#o>0){continue}else{t();break}}}consume(t){if(t>this.#o){return null}else if(t===0){return I}if(this.#n[0].length===t){this.#o-=this.#n[0].length;return this.#n.shift()}const A=Buffer.allocUnsafe(t);let u=0;while(u!==t){const d=this.#n[0];const{length:E}=d;if(E+u===t){A.set(this.#n.shift(),u);break}else if(E+u>t){A.set(d.subarray(0,t-u),u);this.#n[0]=d.subarray(t-u);break}else{A.set(this.#n.shift(),u);u+=d.length}}this.#o-=t;return A}parseCloseBody(t,A){let u;if(A.length>=2){u=A.readUInt16BE(0)}if(t){if(!R(u)){return null}return{code:u}}let d=A.subarray(2);if(d[0]===239&&d[1]===187&&d[2]===191){d=d.subarray(3)}if(u!==undefined&&!R(u)){return null}try{d=new TextDecoder("utf-8",{fatal:true}).decode(d)}catch{return null}return{code:u,reason:d}}get closingInfo(){return this.#c.closeInfo}}t.exports={ByteParser:ByteParser}},327:t=>{t.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}},1501:(t,A,u)=>{const{kReadyState:d,kController:E,kResponse:C,kBinaryType:Q,kWebSocketURL:B}=u(327);const{states:I,opcodes:m}=u(932);const{MessageEvent:y,ErrorEvent:b}=u(7952);function isEstablished(t){return t[d]===I.OPEN}function isClosing(t){return t[d]===I.CLOSING}function isClosed(t){return t[d]===I.CLOSED}function fireEvent(t,A,u=Event,d){const E=new u(t,d);A.dispatchEvent(E)}function websocketMessageReceived(t,A,u){if(t[d]!==I.OPEN){return}let E;if(A===m.TEXT){try{E=new TextDecoder("utf-8",{fatal:true}).decode(u)}catch{failWebsocketConnection(t,"Received invLine truncated /*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> */C[p-4]=this.maskKey[0];C[p-3]=this.maskKey[1];C[p-2]=this.maskKey[2];C[p-1]=this.maskKey[3];C[1]=g;if(g===126){C.writeUInt16BE(i,2)}else if(g===127){C[2]=C[3]=0;C.writeUIntBE(i,4,6)}C[1]|=128;for(let A=0;A<i;A++){C[p+A]=this.frameData[A]^this.maskKey[A%4]}return C}}A.exports={WebsocketFrameSend:WebsocketFrameSend}},5080:(A,i,g)=>{const{Writable:E}=g(2203);const p=g(1637);const{parserStates:C,opcodes:f,states:Q,emptyBuffer:B}=g(932);const{kReadyState:I,kSentClose:y,kResponse:b,kReceivedClose:D}=g(327);const{isValidStatusCode:R,failWebsocketConnection:k,websocketMessageReceived:S}=g(1501);const{WebsocketFrameSend:v}=g(9140);const F={};F.ping=p.channel("undici:websocket:ping");F.pong=p.channel("undici:websocket:pong");class ByteParser extends E{#n=[];#o=0;#a=C.INFO;#c={};#l=[];constructor(A){super();this.ws=A}_write(A,i,g){this.#n.push(A);this.#o+=A.length;this.run(g)}run(A){while(true){if(this.#a===C.INFO){if(this.#o<2){return A()}const i=this.consume(2);this.#c.fin=(i[0]&128)!==0;this.#c.opcode=i[0]&15;this.#c.originalOpcode??=this.#c.opcode;this.#c.fragmented=!this.#c.fin&&this.#c.opcode!==f.CONTINUATION;if(this.#c.fragmented&&this.#c.opcode!==f.BINARY&&this.#c.opcode!==f.TEXT){k(this.ws,"Invalid frame type was fragmented.");return}const g=i[1]&127;if(g<=125){this.#c.payloadLength=g;this.#a=C.READ_DATA}else if(g===126){this.#a=C.PAYLOADLENGTH_16}else if(g===127){this.#a=C.PAYLOADLENGTH_64}if(this.#c.fragmented&&g>125){k(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#c.opcode===f.PING||this.#c.opcode===f.PONG||this.#c.opcode===f.CLOSE)&&g>125){k(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#c.opcode===f.CLOSE){if(g===1){k(this.ws,"Received close frame with a 1-byte body.");return}const A=this.consume(g);this.#c.closeInfo=this.parseCloseBody(false,A);if(!this.ws[y]){const A=Buffer.allocUnsafe(2);A.writeUInt16BE(this.#c.closeInfo.code,0);const i=new v(A);this.ws[b].socket.write(i.createFrame(f.CLOSE),A=>{if(!A){this.ws[y]=true}})}this.ws[I]=Q.CLOSING;this.ws[D]=true;this.end();return}else if(this.#c.opcode===f.PING){const i=this.consume(g);if(!this.ws[D]){const A=new v(i);this.ws[b].socket.write(A.createFrame(f.PONG));if(F.ping.hasSubscribers){F.ping.publish({payload:i})}}this.#a=C.INFO;if(this.#o>0){continue}else{A();return}}else if(this.#c.opcode===f.PONG){const i=this.consume(g);if(F.pong.hasSubscribers){F.pong.publish({payload:i})}if(this.#o>0){continue}else{A();return}}}else if(this.#a===C.PAYLOADLENGTH_16){if(this.#o<2){return A()}const i=this.consume(2);this.#c.payloadLength=i.readUInt16BE(0);this.#a=C.READ_DATA}else if(this.#a===C.PAYLOADLENGTH_64){if(this.#o<8){return A()}const i=this.consume(8);const g=i.readUInt32BE(0);if(g>2**31-1){k(this.ws,"Received payload length > 2^31 bytes.");return}const E=i.readUInt32BE(4);this.#c.payloadLength=(g<<8)+E;this.#a=C.READ_DATA}else if(this.#a===C.READ_DATA){if(this.#o<this.#c.payloadLength){return A()}else if(this.#o>=this.#c.payloadLength){const A=this.consume(this.#c.payloadLength);this.#l.push(A);if(!this.#c.fragmented||this.#c.fin&&this.#c.opcode===f.CONTINUATION){const A=Buffer.concat(this.#l);S(this.ws,this.#c.originalOpcode,A);this.#c={};this.#l.length=0}this.#a=C.INFO}}if(this.#o>0){continue}else{A();break}}}consume(A){if(A>this.#o){return null}else if(A===0){return B}if(this.#n[0].length===A){this.#o-=this.#n[0].length;return this.#n.shift()}const i=Buffer.allocUnsafe(A);let g=0;while(g!==A){const E=this.#n[0];const{length:p}=E;if(p+g===A){i.set(this.#n.shift(),g);break}else if(p+g>A){i.set(E.subarray(0,A-g),g);this.#n[0]=E.subarray(A-g);break}else{i.set(this.#n.shift(),g);g+=E.length}}this.#o-=A;return i}parseCloseBody(A,i){let g;if(i.length>=2){g=i.readUInt16BE(0)}if(A){if(!R(g)){return null}return{code:g}}let E=i.subarray(2);if(E[0]===239&&E[1]===187&&E[2]===191){E=E.subarray(3)}if(g!==undefined&&!R(g)){return null}try{E=new TextDecoder("utf-8",{fatal:true}).decode(E)}catch{return null}return{code:g,reason:E}}get closingInfo(){return this.#c.closeInfo}}A.exports={ByteParser:ByteParser}},327:A=>{A.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}},1501:(A,i,g)=>{const{kReadyState:E,kController:p,kResponse:C,kBinaryType:f,kWebSocketURL:Q}=g(327);const{states:B,opcodes:I}=g(932);const{MessageEvent:y,ErrorEvent:b}=g(7952);function isEstablished(A){return A[E]===B.OPEN}function isClosing(A){return A[E]===B.CLOSING}function isClosed(A){return A[E]===B.CLOSED}function fireEvent(A,i,g=Event,E){const p=new g(A,E);i.dispatchEvent(p)}function websocketMessageReceived(A,i,g){if(A[E]!==B.OPEN){return}let p;if(i===I.TEXT){try{p=new TextDecoder("utf-8",{fatal:true}).decode(g)}catch{failWebsocketConnection(A,"Received invLine truncated
/*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */;const escape=t=>t.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22");const normalizeLinefeeds=t=>t.replace(/\r?\n|\r/g,"\r\n");const d=[];const E=new Uint8Array([13,10]);y=0;let C=false;for(const[A,Q]of t){if(typeof Q==="string"){const t=G.encode(u+`; name="${escape(normalizeLinefeeds(A))}"`+`\r\n\r\n${normalizeLinefeeds(Q)}\r\n`);d.push(t);y+=t.byteLength}else{const t=G.encode(`${u}; name="${escape(normalizeLinefeeds(A))}"`+(Q.name?`; filename="${escape(Q.name)}"`:"")+"\r\n"+`Content-Type: ${Q.type||"application/octet-stream"}\r\n\r\n`);d.push(t,Q,E);if(typeof Q.size==="number"){y+=t.byteLength+Q.size+E.byteLength}else{C=true}}}const Q=G.encode(`--${A}--\r\n`);d.push(Q);y+=Q.byteLength;if(C){y=null}m=t;I=async function*(){for(const t of d){if(t.stream){yield*t.stream()}else{yield t}}};b=`multipart/form-data; boundary=${A}`}else if(C(t)){m=t;y=t.size;if(t.type){b=t.type}}else if(typeof t[Symbol.asyncIterator]==="function"){if(A){throw new TypeError("keepalive")}if(d.isDisturbed(t)||t.locked){throw new TypeError("Response body object should not be disturbed or locked")}u=t instanceof ReadableStream?t:E(t)}if(typeof m==="string"||d.isBuffer(m)){y=Buffer.byteLength(m)}if(I!=null){let A;u=new ReadableStream({async start(){A=I(t)[Symbol.asyncIterator]()},async pull(t){const{value:d,done:E}=await A.next();if(E){queueMicrotask(()=>{t.close();t.byobRequest?.respond(0)})}else{if(!x(u)){const A=new Uint8Array(d);if(A.byteLength){t.enqueue(A)}}}return t.desiredSize>0},async cancel(t){await A.return()},type:"bytes"})}const D={stream:u,source:m,length:y};return[D,b]}function safelyExtractBody(t,A=false){if(t instanceof ReadableStream){v(!d.isDisturbed(t),"The body has already been consumed.");v(!t.locked,"The stream is locked.")}return extractBody(t,A)}function cloneBody(t,A){const[u,d]=A.stream.tee();A.stream=u;return{stream:d,length:A.length,source:A.source}}function throwIfAborted(t){if(t.aborted){throw new DOMException("The operation was aborted.","AbortError")}}function bodyMixinMethods(t){const A={blob(){return consumeBody(this,t=>{let A=bodyMimeType(this);if(A===null){A=""}else if(A){A=M(A)}return new S([t],{type:A})},t)},arrayBuffer(){return consumeBody(this,t=>new Uint8Array(t).buffer,t)},text(){return consumeBody(this,b,t)},json(){return consumeBody(this,parseJSONFromBytes,t)},formData(){return consumeBody(this,t=>{const A=bodyMimeType(this);if(A!==null){switch(A.essence){case"multipart/form-data":{const u=T(t,A);if(u==="failure"){throw new TypeError("Failed to parse body as FormData.")}const d=new D;d[R]=u;return d}case"application/x-www-form-urlencoded":{const A=new URLSearchParams(t.toString());const u=new D;for(const[t,d]of A){u.append(t,d)}return u}}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},t)},bytes(){return consumeBody(this,t=>new Uint8Array(t),t)}};return A}function mixinBody(t){Object.assign(t.prototype,bodyMixinMethods(t))}async function consumeBody(t,A,u){k.brandCheck(t,u);if(bodyUnusable(t)){throw new TypeError("Body is unusable: Body has already been read")}throwIfAborted(t[R]);const d=I();const errorSteps=t=>d.reject(t);const successSteps=t=>{try{d.resolve(A(t))}catch(t){errorSteps(t)}};if(t[R].body==null){successSteps(Buffer.allocUnsafe(0));return d.promise}await m(t[R].body,successSteps,errorSteps);return d.promise}function bodyUnusable(t){const A=t[R].body;return A!=null&&(A.stream.locked||d.isDisturbed(A.stream))}function parseJSONFromBytes(t){return JSON.parse(b(t))}function bodyMimeType(t){const A=t[R].headersList;const u=y(A);if(u==="failure"){return null}return u}t.exports={extractBody:extractBody,safelyExtractBody:safelyExtractBody,cloneBody:cloneBody,mixinBody:mixinBody,streamRegistry:O,hasFinalizationRegistry:Y,bodyUnusable:bodyUnusable}},4578:t=>{const A=["GET","HEAD","POST"];const u=new Set(A);const d=[101,204,205,304];const E=[301,302,303,307,308];const C=new Set(E);const Q=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"];const B=new Set(Q);const I=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"];const m=new Set(I);const y=["follow","manual","error"];const b=["GET","HEAD","OPTIONS","TRACE"];const D=new Set(b);const R=["navigate","same-origin","no-cors","cors"];const k=["omit","same-origin","include"];const S=["default","no-store","reload","no-cache","force-cache","onlLine truncated /*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */;const escape=A=>A.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22");const normalizeLinefeeds=A=>A.replace(/\r?\n|\r/g,"\r\n");const E=[];const p=new Uint8Array([13,10]);y=0;let C=false;for(const[i,f]of A){if(typeof f==="string"){const A=H.encode(g+`; name="${escape(normalizeLinefeeds(i))}"`+`\r\n\r\n${normalizeLinefeeds(f)}\r\n`);E.push(A);y+=A.byteLength}else{const A=H.encode(`${g}; name="${escape(normalizeLinefeeds(i))}"`+(f.name?`; filename="${escape(f.name)}"`:"")+"\r\n"+`Content-Type: ${f.type||"application/octet-stream"}\r\n\r\n`);E.push(A,f,p);if(typeof f.size==="number"){y+=A.byteLength+f.size+p.byteLength}else{C=true}}}const f=H.encode(`--${i}--\r\n`);E.push(f);y+=f.byteLength;if(C){y=null}I=A;B=async function*(){for(const A of E){if(A.stream){yield*A.stream()}else{yield A}}};b=`multipart/form-data; boundary=${i}`}else if(C(A)){I=A;y=A.size;if(A.type){b=A.type}}else if(typeof A[Symbol.asyncIterator]==="function"){if(i){throw new TypeError("keepalive")}if(E.isDisturbed(A)||A.locked){throw new TypeError("Response body object should not be disturbed or locked")}g=A instanceof ReadableStream?A:p(A)}if(typeof I==="string"||E.isBuffer(I)){y=Buffer.byteLength(I)}if(B!=null){let i;g=new ReadableStream({async start(){i=B(A)[Symbol.asyncIterator]()},async pull(A){const{value:E,done:p}=await i.next();if(p){queueMicrotask(()=>{A.close();A.byobRequest?.respond(0)})}else{if(!F(g)){const i=new Uint8Array(E);if(i.byteLength){A.enqueue(i)}}}return A.desiredSize>0},async cancel(A){await i.return()},type:"bytes"})}const D={stream:g,source:I,length:y};return[D,b]}function safelyExtractBody(A,i=false){if(A instanceof ReadableStream){v(!E.isDisturbed(A),"The body has already been consumed.");v(!A.locked,"The stream is locked.")}return extractBody(A,i)}function cloneBody(A,i){const[g,E]=i.stream.tee();i.stream=g;return{stream:E,length:i.length,source:i.source}}function throwIfAborted(A){if(A.aborted){throw new DOMException("The operation was aborted.","AbortError")}}function bodyMixinMethods(A){const i={blob(){return consumeBody(this,A=>{let i=bodyMimeType(this);if(i===null){i=""}else if(i){i=L(i)}return new S([A],{type:i})},A)},arrayBuffer(){return consumeBody(this,A=>new Uint8Array(A).buffer,A)},text(){return consumeBody(this,b,A)},json(){return consumeBody(this,parseJSONFromBytes,A)},formData(){return consumeBody(this,A=>{const i=bodyMimeType(this);if(i!==null){switch(i.essence){case"multipart/form-data":{const g=M(A,i);if(g==="failure"){throw new TypeError("Failed to parse body as FormData.")}const E=new D;E[R]=g;return E}case"application/x-www-form-urlencoded":{const i=new URLSearchParams(A.toString());const g=new D;for(const[A,E]of i){g.append(A,E)}return g}}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},A)},bytes(){return consumeBody(this,A=>new Uint8Array(A),A)}};return i}function mixinBody(A){Object.assign(A.prototype,bodyMixinMethods(A))}async function consumeBody(A,i,g){k.brandCheck(A,g);if(bodyUnusable(A)){throw new TypeError("Body is unusable: Body has already been read")}throwIfAborted(A[R]);const E=B();const errorSteps=A=>E.reject(A);const successSteps=A=>{try{E.resolve(i(A))}catch(A){errorSteps(A)}};if(A[R].body==null){successSteps(Buffer.allocUnsafe(0));return E.promise}await I(A[R].body,successSteps,errorSteps);return E.promise}function bodyUnusable(A){const i=A[R].body;return i!=null&&(i.stream.locked||E.isDisturbed(i.stream))}function parseJSONFromBytes(A){return JSON.parse(b(A))}function bodyMimeType(A){const i=A[R].headersList;const g=y(i);if(g==="failure"){return null}return g}A.exports={extractBody:extractBody,safelyExtractBody:safelyExtractBody,cloneBody:cloneBody,mixinBody:mixinBody,streamRegistry:Y,hasFinalizationRegistry:G,bodyUnusable:bodyUnusable}},4578:A=>{const i=["GET","HEAD","POST"];const g=new Set(i);const E=[101,204,205,304];const p=[301,302,303,307,308];const C=new Set(p);const f=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"];const Q=new Set(f);const B=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"];const I=new Set(B);const y=["follow","manual","error"];const b=["GET","HEAD","OPTIONS","TRACE"];const D=new Set(b);const R=["navigate","same-origin","no-cors","cors"];const k=["omit","same-origin","include"];const S=["default","no-store","reload","no-cache","force-cache","onlLine truncated
/*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> */B[Q-4]=u[0];B[Q-3]=u[1];B[Q-2]=u[2];B[Q-1]=u[3];B[1]=C;if(C===126){B.writeUInt16BE(E,2)}else if(C===127){B[2]=B[3]=0;B.writeUIntBE(E,4,6)}B[1]|=128;for(let t=0;t<E;++t){B[Q+t]=A[t]^u[t&3]}return B}}t.exports={WebsocketFrameSend:WebsocketFrameSend}},6286:(t,A,u)=>{const{createInflateRaw:d,Z_DEFAULT_WINDOWBITS:E}=u(8522);const{isValidClientWindowBits:C}=u(8098);const{MessageSizeExceededError:Q}=u(6246);const B=Buffer.from([0,0,255,255]);const I=Symbol("kBuffer");const m=Symbol("kLength");class PerMessageDeflate{#re;#S={};#ie=0;constructor(t,A){this.#S.serverNoContextTakeover=t.has("server_no_context_takeover");this.#S.serverMaxWindowBits=t.get("server_max_window_bits");this.#ie=A.maxPayloadSize}decompress(t,A,u){if(!this.#re){let t=E;if(this.#S.serverMaxWindowBits){if(!C(this.#S.serverMaxWindowBits)){u(new Error("Invalid server_max_window_bits"));return}t=Number.parseInt(this.#S.serverMaxWindowBits)}try{this.#re=d({windowBits:t})}catch(t){u(t);return}this.#re[I]=[];this.#re[m]=0;this.#re.on("data",t=>{this.#re[m]+=t.length;if(this.#ie>0&&this.#re[m]>this.#ie){u(new Q);this.#re.removeAllListeners();this.#re=null;return}this.#re[I].push(t)});this.#re.on("error",t=>{this.#re=null;u(t)})}this.#re.write(t);if(A){this.#re.write(B)}this.#re.flush(()=>{if(!this.#re){return}const t=Buffer.concat(this.#re[I],this.#re[m]);this.#re[I].length=0;this.#re[m]=0;u(null,t)})}}t.exports={PerMessageDeflate:PerMessageDeflate}},5975:(t,A,u)=>{const{Writable:d}=u(7075);const E=u(4589);const{parserStates:C,opcodes:Q,states:B,emptyBuffer:I,sentCloseFrameState:m}=u(8397);const{kReadyState:y,kSentClose:b,kResponse:D,kReceivedClose:R}=u(7609);const{channels:k}=u(9978);const{isValidStatusCode:S,isValidOpcode:v,failWebsocketConnection:x,websocketMessageReceived:N,utf8Decode:L,isControlFrame:M,isTextBinaryFrame:T,isContinuationFrame:H}=u(8098);const{WebsocketFrameSend:G}=u(9321);const{closeWebSocketConnection:Y}=u(1874);const{PerMessageDeflate:O}=u(6286);const{MessageSizeExceededError:_}=u(6246);function failWebsocketConnectionWithCode(t,A,u){Y(t,A,u,Buffer.byteLength(u));x(t,u)}class ByteParser extends d{#n=[];#ne=0;#o=0;#oe=false;#a=C.INFO;#c={};#l=[];#d;#ae;#ie;constructor(t,A,u={}){super();this.ws=t;this.#d=A==null?new Map:A;this.#ae=u.maxFragments??0;this.#ie=u.maxPayloadSize??0;if(this.#d.has("permessage-deflate")){this.#d.set("permessage-deflate",new O(A,u))}}_write(t,A,u){this.#n.push(t);this.#o+=t.length;this.#oe=true;this.run(u)}#ce(){if(this.#ie>0&&!M(this.#c.opcode)&&this.#c.payloadLength+this.#ne>this.#ie){failWebsocketConnectionWithCode(this.ws,1009,"Payload size exceeds maximum allowed size");return false}return true}run(t){while(this.#oe){if(this.#a===C.INFO){if(this.#o<2){return t()}const A=this.consume(2);const u=(A[0]&128)!==0;const d=A[0]&15;const E=(A[1]&128)===128;const B=!u&&d!==Q.CONTINUATION;const I=A[1]&127;const m=A[0]&64;const y=A[0]&32;const b=A[0]&16;if(!v(d)){x(this.ws,"Invalid opcode received");return t()}if(E){x(this.ws,"Frame cannot be masked");return t()}if(m!==0&&!this.#d.has("permessage-deflate")){x(this.ws,"Expected RSV1 to be clear.");return}if(y!==0||b!==0){x(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(B&&!T(d)){x(this.ws,"Invalid frame type was fragmented.");return}if(T(d)&&this.#l.length>0){x(this.ws,"Expected continuation frame");return}if(this.#c.fragmented&&B){x(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((I>125||B)&&M(d)){x(this.ws,"Control frame either too large or fragmented");return}if(H(d)&&this.#l.length===0&&!this.#c.compressed){x(this.ws,"Unexpected continuation frame");return}if(I<=125){this.#c.payloadLength=I;this.#a=C.READ_DATA;if(!this.#ce()){return}}else if(I===126){this.#a=C.PAYLOADLENGTH_16}else if(I===127){this.#a=C.PAYLOADLENGTH_64}if(T(d)){this.#c.binaryType=d;this.#c.compressed=m!==0}this.#c.opcode=d;this.#c.masked=E;this.#c.fin=u;this.#c.fragmented=B}else if(this.#a===C.PAYLOADLENGTH_16){if(this.#o<2){return t()}const A=this.consume(2);this.#c.payloadLength=A.readUInt16BE(0);this.#a=C.READ_DATA;if(!this.#ce()){return}}else if(this.#a===C.PAYLOADLENGTH_64){if(this.#o<8){return t()}const A=this.consume(8);const u=A.readUInt32BE(0);const d=A.readUInt32BE(4);if(u!==0||d>2**31-1){x(this.ws,"Received payload length > 2^31 bytes.");return}this.#c.payloadLength=d;this.#a=C.READ_DATA;if(!this.#ce()){return}}else if(this.#a===C.READ_DATA){if(this.#o<this.#c.payloadLength){return t()}const A=this.consume(this.#c.payloadLength);if(M(this.#c.opcode)){this.#oe=this.parseControlFrame(A);this.#a=C.INFO}else{if(!this.#c.compressed){if(!this.writeFragments(A)){return}if(this.#ie>0&&this.#ne>this.#ie){failWebsocketConnectionWithCode(this.ws,1009,(new _).message);return}if(!this.#c.fragmented&&this.#c.fin){N(this.ws,this.#c.binaryType,this.consumeFragments())}this.#a=C.INFO}else{this.#d.get("permessage-deflate").decompress(A,this.#c.fin,(A,u)=>{if(A){const t=A instanceof _?1009:1007;failWebsocketConnectionWithCLine truncated /*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> */Q[f-4]=g[0];Q[f-3]=g[1];Q[f-2]=g[2];Q[f-1]=g[3];Q[1]=C;if(C===126){Q.writeUInt16BE(p,2)}else if(C===127){Q[2]=Q[3]=0;Q.writeUIntBE(p,4,6)}Q[1]|=128;for(let A=0;A<p;++A){Q[f+A]=i[A]^g[A&3]}return Q}}A.exports={WebsocketFrameSend:WebsocketFrameSend}},6286:(A,i,g)=>{const{createInflateRaw:E,Z_DEFAULT_WINDOWBITS:p}=g(8522);const{isValidClientWindowBits:C}=g(8098);const{MessageSizeExceededError:f}=g(6246);const Q=Buffer.from([0,0,255,255]);const B=Symbol("kBuffer");const I=Symbol("kLength");class PerMessageDeflate{#re;#S={};#ie=0;constructor(A,i){this.#S.serverNoContextTakeover=A.has("server_no_context_takeover");this.#S.serverMaxWindowBits=A.get("server_max_window_bits");this.#ie=i.maxPayloadSize}decompress(A,i,g){if(!this.#re){let A=p;if(this.#S.serverMaxWindowBits){if(!C(this.#S.serverMaxWindowBits)){g(new Error("Invalid server_max_window_bits"));return}A=Number.parseInt(this.#S.serverMaxWindowBits)}try{this.#re=E({windowBits:A})}catch(A){g(A);return}this.#re[B]=[];this.#re[I]=0;this.#re.on("data",A=>{this.#re[I]+=A.length;if(this.#ie>0&&this.#re[I]>this.#ie){g(new f);this.#re.removeAllListeners();this.#re=null;return}this.#re[B].push(A)});this.#re.on("error",A=>{this.#re=null;g(A)})}this.#re.write(A);if(i){this.#re.write(Q)}this.#re.flush(()=>{if(!this.#re){return}const A=Buffer.concat(this.#re[B],this.#re[I]);this.#re[B].length=0;this.#re[I]=0;g(null,A)})}}A.exports={PerMessageDeflate:PerMessageDeflate}},5975:(A,i,g)=>{const{Writable:E}=g(7075);const p=g(4589);const{parserStates:C,opcodes:f,states:Q,emptyBuffer:B,sentCloseFrameState:I}=g(8397);const{kReadyState:y,kSentClose:b,kResponse:D,kReceivedClose:R}=g(7609);const{channels:k}=g(9978);const{isValidStatusCode:S,isValidOpcode:v,failWebsocketConnection:F,websocketMessageReceived:x,utf8Decode:U,isControlFrame:L,isTextBinaryFrame:M,isContinuationFrame:T}=g(8098);const{WebsocketFrameSend:H}=g(9321);const{closeWebSocketConnection:G}=g(1874);const{PerMessageDeflate:Y}=g(6286);const{MessageSizeExceededError:J}=g(6246);function failWebsocketConnectionWithCode(A,i,g){G(A,i,g,Buffer.byteLength(g));F(A,g)}class ByteParser extends E{#n=[];#ne=0;#o=0;#oe=false;#a=C.INFO;#c={};#l=[];#d;#ae;#ie;constructor(A,i,g={}){super();this.ws=A;this.#d=i==null?new Map:i;this.#ae=g.maxFragments??0;this.#ie=g.maxPayloadSize??0;if(this.#d.has("permessage-deflate")){this.#d.set("permessage-deflate",new Y(i,g))}}_write(A,i,g){this.#n.push(A);this.#o+=A.length;this.#oe=true;this.run(g)}#ce(){if(this.#ie>0&&!L(this.#c.opcode)&&this.#c.payloadLength+this.#ne>this.#ie){failWebsocketConnectionWithCode(this.ws,1009,"Payload size exceeds maximum allowed size");return false}return true}run(A){while(this.#oe){if(this.#a===C.INFO){if(this.#o<2){return A()}const i=this.consume(2);const g=(i[0]&128)!==0;const E=i[0]&15;const p=(i[1]&128)===128;const Q=!g&&E!==f.CONTINUATION;const B=i[1]&127;const I=i[0]&64;const y=i[0]&32;const b=i[0]&16;if(!v(E)){F(this.ws,"Invalid opcode received");return A()}if(p){F(this.ws,"Frame cannot be masked");return A()}if(I!==0&&!this.#d.has("permessage-deflate")){F(this.ws,"Expected RSV1 to be clear.");return}if(y!==0||b!==0){F(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(Q&&!M(E)){F(this.ws,"Invalid frame type was fragmented.");return}if(M(E)&&this.#l.length>0){F(this.ws,"Expected continuation frame");return}if(this.#c.fragmented&&Q){F(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((B>125||Q)&&L(E)){F(this.ws,"Control frame either too large or fragmented");return}if(T(E)&&this.#l.length===0&&!this.#c.compressed){F(this.ws,"Unexpected continuation frame");return}if(B<=125){this.#c.payloadLength=B;this.#a=C.READ_DATA;if(!this.#ce()){return}}else if(B===126){this.#a=C.PAYLOADLENGTH_16}else if(B===127){this.#a=C.PAYLOADLENGTH_64}if(M(E)){this.#c.binaryType=E;this.#c.compressed=I!==0}this.#c.opcode=E;this.#c.masked=p;this.#c.fin=g;this.#c.fragmented=Q}else if(this.#a===C.PAYLOADLENGTH_16){if(this.#o<2){return A()}const i=this.consume(2);this.#c.payloadLength=i.readUInt16BE(0);this.#a=C.READ_DATA;if(!this.#ce()){return}}else if(this.#a===C.PAYLOADLENGTH_64){if(this.#o<8){return A()}const i=this.consume(8);const g=i.readUInt32BE(0);const E=i.readUInt32BE(4);if(g!==0||E>2**31-1){F(this.ws,"Received payload length > 2^31 bytes.");return}this.#c.payloadLength=E;this.#a=C.READ_DATA;if(!this.#ce()){return}}else if(this.#a===C.READ_DATA){if(this.#o<this.#c.payloadLength){return A()}const i=this.consume(this.#c.payloadLength);if(L(this.#c.opcode)){this.#oe=this.parseControlFrame(i);this.#a=C.INFO}else{if(!this.#c.compressed){if(!this.writeFragments(i)){return}if(this.#ie>0&&this.#ne>this.#ie){failWebsocketConnectionWithCode(this.ws,1009,(new J).message);return}if(!this.#c.fragmented&&this.#c.fin){x(this.ws,this.#c.binaryType,this.consumeFragments())}this.#a=C.INFO}else{this.#d.get("permessage-deflate").decompress(i,this.#c.fin,(i,g)=>{if(i){const A=i instanceof J?1009:1007;failWebsocketConnectionWithCLine truncated
+2 -2
View File
@@ -13,8 +13,8 @@
"dependencies": { "dependencies": {
"@actions/artifact": "^1.1.2", "@actions/artifact": "^1.1.2",
"@actions/core": "^3.0.0", "@actions/core": "^3.0.0",
"glob": "^14.0.0", "glob": "^13.0.0",
"screeps-api": "^1.7.2" "screeps-api": "^2.0.0"
}, },
"devDependencies": { "devDependencies": {
"@vercel/ncc": "^0.44.1", "@vercel/ncc": "^0.44.1",
+67 -145
View File
@@ -15,11 +15,11 @@ importers:
specifier: ^3.0.0 specifier: ^3.0.0
version: 3.0.1 version: 3.0.1
glob: glob:
specifier: ^14.0.0 specifier: ^13.0.0
version: 14.0.3 version: 13.0.6
screeps-api: screeps-api:
specifier: ^1.7.2 specifier: ^2.0.0
version: 1.16.1(supports-color@7.2.0) version: 2.1.0(supports-color@7.2.0)
devDependencies: devDependencies:
'@vercel/ncc': '@vercel/ncc':
specifier: ^0.44.1 specifier: ^0.44.1
@@ -85,9 +85,6 @@ packages:
resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==}
engines: {node: '>=14'} engines: {node: '>=14'}
'@isaacs/nonrecursive-glob-match@1.0.3':
resolution: {integrity: sha512-SI7kyKHq4XXDRozw+r9GlRZkia1ZkFrpLW98r2IC2Bpr8YkFGE3fvjzmxCG0x78A++69HmDNrDvSMYBZmHGpKA==}
'@jridgewell/resolve-uri@3.1.2': '@jridgewell/resolve-uri@3.1.2':
resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
engines: {node: '>=6.0.0'} engines: {node: '>=6.0.0'}
@@ -248,8 +245,9 @@ packages:
'@vitest/utils@4.1.11': '@vitest/utils@4.1.11':
resolution: {integrity: sha512-zTCVGpyFsGWBhllOyKlTw/vnr6D9qxsfSDyfbyZmTyjHw5N/VuvzHpHoQjm2ZJzn4RJgx5w4r7V0er69CmLgPQ==} resolution: {integrity: sha512-zTCVGpyFsGWBhllOyKlTw/vnr6D9qxsfSDyfbyZmTyjHw5N/VuvzHpHoQjm2ZJzn4RJgx5w4r7V0er69CmLgPQ==}
argparse@1.0.10: agent-base@6.0.2:
resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
engines: {node: '>= 6.0.0'}
assertion-error@2.0.1: assertion-error@2.0.1:
resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
@@ -261,21 +259,15 @@ packages:
asynckit@0.4.0: asynckit@0.4.0:
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
axios@0.28.1: axios@1.20.0:
resolution: {integrity: sha512-iUcGA5a7p0mVb4Gm/sy+FSECNkPFT4y7wt6OM/CDpO/OnNCvSs3PoMG8ibrC9jRoGYU0gUK5pXVC4NPXq6lHRQ==} resolution: {integrity: sha512-r8aOh8j9cGKpgQAqpzrUHnSIc6a59Y3Xf/cv8sy1DrHCkZHzQGEuoq1tARk6qSyDdtQGSDgpb9kFlruzPvrgwg==}
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
balanced-match@4.0.4: balanced-match@4.0.4:
resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==}
engines: {node: 18 || 20 || >=22} engines: {node: 18 || 20 || >=22}
brace-expansion@1.1.18: brace-expansion@5.0.9:
resolution: {integrity: sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==} resolution: {integrity: sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==}
brace-expansion@5.0.12:
resolution: {integrity: sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==}
engines: {node: 20 || >=22} engines: {node: 20 || >=22}
bufferutil@4.1.0: bufferutil@4.1.0:
@@ -294,12 +286,9 @@ packages:
resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
engines: {node: '>= 0.8'} engines: {node: '>= 0.8'}
commander@7.2.0: commander@14.0.3:
resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} resolution: {integrity: sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==}
engines: {node: '>= 10'} engines: {node: '>=20'}
concat-map@0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
convert-source-map@2.0.0: convert-source-map@2.0.0:
resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
@@ -373,9 +362,6 @@ packages:
resolution: {integrity: sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ==} resolution: {integrity: sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ==}
engines: {node: '>= 6'} engines: {node: '>= 6'}
fs.realpath@1.0.0:
resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
fsevents@2.3.3: fsevents@2.3.3:
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
@@ -392,14 +378,10 @@ packages:
resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}
engines: {node: '>= 0.4'} engines: {node: '>= 0.4'}
glob@14.0.3: glob@13.0.6:
resolution: {integrity: sha512-A1vjIwC3qpdCso45Iw127gnp7sPhqgY8lUQhDrArIs+GbmfaaVPFuoyy7WyLT9EPZCRZ7j7aLdwUhQmHWesEow==} resolution: {integrity: sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==}
engines: {node: 18 || 20 || >=22} engines: {node: 18 || 20 || >=22}
glob@7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
gopd@1.2.0: gopd@1.2.0:
resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
engines: {node: '>= 0.4'} engines: {node: '>= 0.4'}
@@ -423,12 +405,9 @@ packages:
html-escaper@2.0.2: html-escaper@2.0.2:
resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
inflight@1.0.6: https-proxy-agent@5.0.1:
resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. engines: {node: '>= 6'}
inherits@2.0.4:
resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
istanbul-lib-coverage@3.2.2: istanbul-lib-coverage@3.2.2:
resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==}
@@ -545,13 +524,10 @@ packages:
resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
engines: {node: '>= 0.6'} engines: {node: '>= 0.6'}
minimatch@11.0.3: minimatch@10.2.6:
resolution: {integrity: sha512-iny/40PEGkNJQ5/Pv6z3nm6FbRAby32GeZRjCUJk2WnNDbgPSTcdI+DDvLqsgBdD4cD5sMtMheqPPnehCCa8Nw==} resolution: {integrity: sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==}
engines: {node: 18 || 20 || >=22} engines: {node: 18 || 20 || >=22}
minimatch@3.1.5:
resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==}
minipass@7.1.3: minipass@7.1.3:
resolution: {integrity: sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==} resolution: {integrity: sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==}
engines: {node: '>=16 || 14 >=14.17'} engines: {node: '>=16 || 14 >=14.17'}
@@ -572,15 +548,8 @@ packages:
resolution: {integrity: sha512-4a+OsYv9UktOJKE+l1A4OufDgdRF9PifWj+tJnHURo/P+WOxpG4GzUFL9qCalmWauao6ogiG+QvnCovwPoyAWA==} resolution: {integrity: sha512-4a+OsYv9UktOJKE+l1A4OufDgdRF9PifWj+tJnHURo/P+WOxpG4GzUFL9qCalmWauao6ogiG+QvnCovwPoyAWA==}
engines: {node: '>=12.20.0'} engines: {node: '>=12.20.0'}
once@1.4.0: path-scurry@2.0.2:
resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} resolution: {integrity: sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==}
path-is-absolute@1.0.1:
resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
engines: {node: '>=0.10.0'}
path-scurry@3.0.0:
resolution: {integrity: sha512-1pTbQqH1wIwMi/eleQ5leFTTCkzFsPcgXNjwOA8YGGW/W4/kHT3dssE7Z6NH+zuqNLOzOB0uaD61yl7cAcVhgg==}
engines: {node: 18 || 20 || >=22} engines: {node: 18 || 20 || >=22}
pathe@2.0.3: pathe@2.0.3:
@@ -597,16 +566,18 @@ packages:
resolution: {integrity: sha512-u82N74LFzG8ca+dD8puPnplTXoGH4fTPpVGuIbt36G3qvNlkvfD0lEAZSxaly3KX8TS/L1A1gsCEmvKmBcVbkQ==} resolution: {integrity: sha512-u82N74LFzG8ca+dD8puPnplTXoGH4fTPpVGuIbt36G3qvNlkvfD0lEAZSxaly3KX8TS/L1A1gsCEmvKmBcVbkQ==}
engines: {node: ^10 || ^12 || >=14} engines: {node: ^10 || ^12 || >=14}
proxy-from-env@1.1.0: proxy-from-env@2.1.0:
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} resolution: {integrity: sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==}
engines: {node: '>=10'}
rolldown@1.2.3: rolldown@1.2.3:
resolution: {integrity: sha512-rn9wpmxplLf7NLNyCk9FyWh3FM43DbY8jOzCdEPzH7uflhTftRbCEpqi6Ly2osgoU8OwObtmavMbWLaWy4LX7A==} resolution: {integrity: sha512-rn9wpmxplLf7NLNyCk9FyWh3FM43DbY8jOzCdEPzH7uflhTftRbCEpqi6Ly2osgoU8OwObtmavMbWLaWy4LX7A==}
engines: {node: ^20.19.0 || >=22.12.0} engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true hasBin: true
screeps-api@1.16.1: screeps-api@2.1.0:
resolution: {integrity: sha512-VwgibYPCFXaRlNdFrC188s6juKdAbMIeLy6oRa030IRSUuIZFpe7m4NHzMxLC30qq3cZejdlOedXXthOnNkggA==} resolution: {integrity: sha512-6mweXGgmIhmXpqSGtRYI/sk+Sh3Ug1lElHQndA6bXV/ZmjUgBM5QSZoD0u83lazh2bNxbtLaigQ62yguxZ1Xdg==}
engines: {node: 22.x || 24.x}
hasBin: true hasBin: true
semver@7.8.5: semver@7.8.5:
@@ -621,9 +592,6 @@ packages:
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
engines: {node: '>=0.10.0'} engines: {node: '>=0.10.0'}
sprintf-js@1.0.3:
resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
stackback@0.0.2: stackback@0.0.2:
resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
@@ -668,8 +636,8 @@ packages:
resolution: {integrity: sha512-LIY910g9TI13YS95lrMFrs8Rm/u/irgHeTWoKCoteeJ04CUJ92eEfj0rVn+7VKMPBpUPiUoBKfhNyLI23EE/KA==} resolution: {integrity: sha512-LIY910g9TI13YS95lrMFrs8Rm/u/irgHeTWoKCoteeJ04CUJ92eEfj0rVn+7VKMPBpUPiUoBKfhNyLI23EE/KA==}
engines: {node: '>=18.17'} engines: {node: '>=18.17'}
utf-8-validate@5.0.10: utf-8-validate@6.0.6:
resolution: {integrity: sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==} resolution: {integrity: sha512-q3l3P9UtEEiAHcsgsqTgf9PPjctrDWoIXW3NpOHFdRDbLvu4DLIcxHangJ4RLrWkBcKjmcs/6NkerI8T/rE4LA==}
engines: {node: '>=6.14.2'} engines: {node: '>=6.14.2'}
vite@8.2.1: vite@8.2.1:
@@ -761,15 +729,12 @@ packages:
engines: {node: '>=8'} engines: {node: '>=8'}
hasBin: true hasBin: true
wrappy@1.0.2: ws@8.21.3:
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} resolution: {integrity: sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==}
engines: {node: '>=10.0.0'}
ws@7.5.13:
resolution: {integrity: sha512-rsKI6xDBFVf4r/x8XyChGK04QR/XHroxs/jUcoWvtEZM8TPU/X/uIY9B1CsSzYws9ZJb/6bbBu7dPhFW00CAoA==}
engines: {node: '>=8.3.0'}
peerDependencies: peerDependencies:
bufferutil: ^4.0.1 bufferutil: ^4.0.1
utf-8-validate: ^5.0.2 utf-8-validate: '>=5.0.2'
peerDependenciesMeta: peerDependenciesMeta:
bufferutil: bufferutil:
optional: true optional: true
@@ -781,10 +746,6 @@ packages:
engines: {node: '>= 14.6'} engines: {node: '>= 14.6'}
hasBin: true hasBin: true
yamljs@0.3.0:
resolution: {integrity: sha512-C/FsVVhht4iPQYXOInoxUM/1ELSf9EsgKH34FofQOp6hwCPrW4vG4w5++TED3xRUo8gD7l0P1J1dLlDYzODsTQ==}
hasBin: true
snapshots: snapshots:
'@actions/artifact@1.1.3': '@actions/artifact@1.1.3':
@@ -843,8 +804,6 @@ snapshots:
'@fastify/busboy@2.1.1': {} '@fastify/busboy@2.1.1': {}
'@isaacs/nonrecursive-glob-match@1.0.3': {}
'@jridgewell/resolve-uri@3.1.2': {} '@jridgewell/resolve-uri@3.1.2': {}
'@jridgewell/sourcemap-codec@1.5.5': {} '@jridgewell/sourcemap-codec@1.5.5': {}
@@ -968,9 +927,11 @@ snapshots:
convert-source-map: 2.0.0 convert-source-map: 2.0.0
tinyrainbow: 3.1.1 tinyrainbow: 3.1.1
argparse@1.0.10: agent-base@6.0.2(supports-color@7.2.0):
dependencies: dependencies:
sprintf-js: 1.0.3 debug: 4.4.3(supports-color@7.2.0)
transitivePeerDependencies:
- supports-color
assertion-error@2.0.1: {} assertion-error@2.0.1: {}
@@ -982,24 +943,19 @@ snapshots:
asynckit@0.4.0: {} asynckit@0.4.0: {}
axios@0.28.1(debug@4.4.3(supports-color@7.2.0)): axios@1.20.0(debug@4.4.3(supports-color@7.2.0))(supports-color@7.2.0):
dependencies: dependencies:
follow-redirects: 1.16.0(debug@4.4.3(supports-color@7.2.0)) follow-redirects: 1.16.0(debug@4.4.3(supports-color@7.2.0))
form-data: 4.0.6 form-data: 4.0.6
proxy-from-env: 1.1.0 https-proxy-agent: 5.0.1(supports-color@7.2.0)
proxy-from-env: 2.1.0
transitivePeerDependencies: transitivePeerDependencies:
- debug - debug
- supports-color
balanced-match@1.0.2: {}
balanced-match@4.0.4: {} balanced-match@4.0.4: {}
brace-expansion@1.1.18: brace-expansion@5.0.9:
dependencies:
balanced-match: 1.0.2
concat-map: 0.0.1
brace-expansion@5.0.12:
dependencies: dependencies:
balanced-match: 4.0.4 balanced-match: 4.0.4
@@ -1019,9 +975,7 @@ snapshots:
dependencies: dependencies:
delayed-stream: 1.0.0 delayed-stream: 1.0.0
commander@7.2.0: {} commander@14.0.3: {}
concat-map@0.0.1: {}
convert-source-map@2.0.0: {} convert-source-map@2.0.0: {}
@@ -1080,8 +1034,6 @@ snapshots:
hasown: 2.0.4 hasown: 2.0.4
mime-types: 2.1.35 mime-types: 2.1.35
fs.realpath@1.0.0: {}
fsevents@2.3.3: fsevents@2.3.3:
optional: true optional: true
@@ -1105,20 +1057,11 @@ snapshots:
dunder-proto: 1.0.1 dunder-proto: 1.0.1
es-object-atoms: 1.1.2 es-object-atoms: 1.1.2
glob@14.0.3: glob@13.0.6:
dependencies: dependencies:
minimatch: 11.0.3 minimatch: 10.2.6
minipass: 7.1.3 minipass: 7.1.3
path-scurry: 3.0.0 path-scurry: 2.0.2
glob@7.2.3:
dependencies:
fs.realpath: 1.0.0
inflight: 1.0.6
inherits: 2.0.4
minimatch: 3.1.5
once: 1.4.0
path-is-absolute: 1.0.1
gopd@1.2.0: {} gopd@1.2.0: {}
@@ -1136,12 +1079,12 @@ snapshots:
html-escaper@2.0.2: {} html-escaper@2.0.2: {}
inflight@1.0.6: https-proxy-agent@5.0.1(supports-color@7.2.0):
dependencies: dependencies:
once: 1.4.0 agent-base: 6.0.2(supports-color@7.2.0)
wrappy: 1.0.2 debug: 4.4.3(supports-color@7.2.0)
transitivePeerDependencies:
inherits@2.0.4: {} - supports-color
istanbul-lib-coverage@3.2.2: {} istanbul-lib-coverage@3.2.2: {}
@@ -1231,14 +1174,9 @@ snapshots:
dependencies: dependencies:
mime-db: 1.52.0 mime-db: 1.52.0
minimatch@11.0.3: minimatch@10.2.6:
dependencies: dependencies:
'@isaacs/nonrecursive-glob-match': 1.0.3 brace-expansion: 5.0.9
brace-expansion: 5.0.12
minimatch@3.1.5:
dependencies:
brace-expansion: 1.1.18
minipass@7.1.3: {} minipass@7.1.3: {}
@@ -1251,13 +1189,7 @@ snapshots:
obug@2.1.4: {} obug@2.1.4: {}
once@1.4.0: path-scurry@2.0.2:
dependencies:
wrappy: 1.0.2
path-is-absolute@1.0.1: {}
path-scurry@3.0.0:
dependencies: dependencies:
lru-cache: 11.5.2 lru-cache: 11.5.2
minipass: 7.1.3 minipass: 7.1.3
@@ -1274,7 +1206,7 @@ snapshots:
picocolors: 1.1.1 picocolors: 1.1.1
source-map-js: 1.2.1 source-map-js: 1.2.1
proxy-from-env@1.1.0: {} proxy-from-env@2.1.0: {}
rolldown@1.2.3: rolldown@1.2.3:
dependencies: dependencies:
@@ -1296,16 +1228,16 @@ snapshots:
'@rolldown/binding-win32-arm64-msvc': 1.2.3 '@rolldown/binding-win32-arm64-msvc': 1.2.3
'@rolldown/binding-win32-x64-msvc': 1.2.3 '@rolldown/binding-win32-x64-msvc': 1.2.3
screeps-api@1.16.1(supports-color@7.2.0): screeps-api@2.1.0(supports-color@7.2.0):
dependencies: dependencies:
axios: 0.28.1(debug@4.4.3(supports-color@7.2.0)) axios: 1.20.0(debug@4.4.3(supports-color@7.2.0))(supports-color@7.2.0)
commander: 7.2.0 commander: 14.0.3
debug: 4.4.3(supports-color@7.2.0) debug: 4.4.3(supports-color@7.2.0)
ws: 7.5.13(bufferutil@4.1.0)(utf-8-validate@5.0.10) ws: 8.21.3(bufferutil@4.1.0)(utf-8-validate@6.0.6)
yamljs: 0.3.0 yaml: 2.9.0
optionalDependencies: optionalDependencies:
bufferutil: 4.1.0 bufferutil: 4.1.0
utf-8-validate: 5.0.10 utf-8-validate: 6.0.6
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
@@ -1315,8 +1247,6 @@ snapshots:
source-map-js@1.2.1: {} source-map-js@1.2.1: {}
sprintf-js@1.0.3: {}
stackback@0.0.2: {} stackback@0.0.2: {}
std-env@4.2.0: {} std-env@4.2.0: {}
@@ -1350,7 +1280,7 @@ snapshots:
undici@6.28.0: {} undici@6.28.0: {}
utf-8-validate@5.0.10: utf-8-validate@6.0.6:
dependencies: dependencies:
node-gyp-build: 4.8.4 node-gyp-build: 4.8.4
optional: true optional: true
@@ -1398,17 +1328,9 @@ snapshots:
siginfo: 2.0.0 siginfo: 2.0.0
stackback: 0.0.2 stackback: 0.0.2
wrappy@1.0.2: {} ws@8.21.3(bufferutil@4.1.0)(utf-8-validate@6.0.6):
ws@7.5.13(bufferutil@4.1.0)(utf-8-validate@5.0.10):
optionalDependencies: optionalDependencies:
bufferutil: 4.1.0 bufferutil: 4.1.0
utf-8-validate: 5.0.10 utf-8-validate: 6.0.6
yaml@2.9.0: yaml@2.9.0: {}
optional: true
yamljs@0.3.0:
dependencies:
argparse: 1.0.10
glob: 7.2.3