edgeone 1.3.8 → 1.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/edgeone-dist/cli.js +38 -16
- package/edgeone-dist/pages/dev/runner-worker.js +36 -14
- package/package.json +1 -1
package/edgeone-dist/cli.js
CHANGED
|
@@ -519,7 +519,7 @@ ${A.join(`
|
|
|
519
519
|
`;v.forEach(A=>{b+=A}),t.fail(b)}};let p={};s.conflicts=function(g,v){ei("<string|object> [array|string]",[g,v],arguments.length),typeof g=="object"?Object.keys(g).forEach(b=>{s.conflicts(b,g[b])}):(e.global(g),p[g]||(p[g]=[]),Array.isArray(v)?v.forEach(b=>s.conflicts(g,b)):p[g].push(v))},s.getConflicting=()=>p,s.conflicting=function(g){Object.keys(g).forEach(v=>{p[v]&&p[v].forEach(b=>{b&&g[v]!==void 0&&g[b]!==void 0&&t.fail(n("Arguments %s and %s are mutually exclusive",v,b))})}),e.getInternalMethods().getParserConfiguration()["strip-dashed"]&&Object.keys(p).forEach(v=>{p[v].forEach(b=>{b&&g[r.Parser.camelCase(v)]!==void 0&&g[r.Parser.camelCase(b)]!==void 0&&t.fail(n("Arguments %s and %s are mutually exclusive",v,b))})})},s.recommendCommands=function(g,v){v=v.sort((S,k)=>k.length-S.length);let A=null,C=1/0;for(let S=0,k;(k=v[S])!==void 0;S++){let O=jRe(g,k);O<=3&&O<C&&(C=O,A=k)}A&&t.fail(n("Did you mean %s?",A))},s.reset=function(g){return c=K2(c,v=>!g[v]),p=K2(p,v=>!g[v]),s};let d=[];return s.freeze=function(){d.push({implied:c,conflicting:p})},s.unfreeze=function(){let g=d.pop();Am(g,void 0,r),{implied:c,conflicting:p}=g},s}var ri=function(e,t,r,n,a){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?a.call(e,r):a?a.value=r:t.set(e,r),r},qe=function(e,t,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(e):n?n.value:t.get(e)},ap,eT,TL,vy,eA,hz,Z2,tT,mz,xy,gz,by,oE,tA,Ey,Az,UR,Ff,wi,yz,vz,rA,rT,zR,nT,e_,xz,ps,iT,sT,aT,_s,bz,cE,Nl;function oFe(e){return(t=[],r=e.process.cwd(),n)=>{let a=new ose(t,r,n,e);return Object.defineProperty(a,"argv",{get:()=>a.parse(),enumerable:!0}),a.help(),a.version(),a}}var URe=Symbol("copyDoubleDash"),zRe=Symbol("copyDoubleDash"),Kie=Symbol("deleteFromParserHintObject"),HRe=Symbol("emitWarning"),$Re=Symbol("freeze"),VRe=Symbol("getDollarZero"),oT=Symbol("getParserConfiguration"),WRe=Symbol("getUsageConfiguration"),Xie=Symbol("guessLocale"),GRe=Symbol("guessVersion"),YRe=Symbol("parsePositionalNumbers"),Zie=Symbol("pkgUp"),t_=Symbol("populateParserHintArray"),HR=Symbol("populateParserHintSingleValueDictionary"),ese=Symbol("populateParserHintArrayDictionary"),tse=Symbol("populateParserHintDictionary"),rse=Symbol("sanitizeKey"),nse=Symbol("setKey"),ise=Symbol("unfreeze"),JRe=Symbol("validateAsync"),KRe=Symbol("getCommandInstance"),XRe=Symbol("getContext"),ZRe=Symbol("getHasOutput"),eFe=Symbol("getLoggerInstance"),tFe=Symbol("getParseContext"),rFe=Symbol("getUsageInstance"),nFe=Symbol("getValidationInstance"),Ez=Symbol("hasParseCallback"),iFe=Symbol("isGlobalContext"),cT=Symbol("postProcess"),sFe=Symbol("rebase"),sse=Symbol("reset"),BL=Symbol("runYargsParserAndExecuteCommands"),ase=Symbol("runValidation"),aFe=Symbol("setHasOutput"),uT=Symbol("kTrackManuallySetKeys"),ose=class{constructor(t=[],r,n,a){this.customScriptName=!1,this.parsed=!1,ap.set(this,void 0),eT.set(this,void 0),TL.set(this,{commands:[],fullCommands:[]}),vy.set(this,null),eA.set(this,null),hz.set(this,"show-hidden"),Z2.set(this,null),tT.set(this,!0),mz.set(this,{}),xy.set(this,!0),gz.set(this,[]),by.set(this,void 0),oE.set(this,{}),tA.set(this,!1),Ey.set(this,null),Az.set(this,!0),UR.set(this,void 0),Ff.set(this,""),wi.set(this,void 0),yz.set(this,void 0),vz.set(this,{}),rA.set(this,null),rT.set(this,null),zR.set(this,{}),nT.set(this,{}),e_.set(this,void 0),xz.set(this,!1),ps.set(this,void 0),iT.set(this,!1),sT.set(this,!1),aT.set(this,!1),_s.set(this,void 0),bz.set(this,{}),cE.set(this,null),Nl.set(this,void 0),ri(this,ps,a,"f"),ri(this,e_,t,"f"),ri(this,eT,r,"f"),ri(this,yz,n,"f"),ri(this,by,new pz(this),"f"),this.$0=this[VRe](),this[sse](),ri(this,ap,qe(this,ap,"f"),"f"),ri(this,_s,qe(this,_s,"f"),"f"),ri(this,Nl,qe(this,Nl,"f"),"f"),ri(this,wi,qe(this,wi,"f"),"f"),qe(this,wi,"f").showHiddenOpt=qe(this,hz,"f"),ri(this,UR,this[zRe](),"f")}addHelpOpt(t,r){let n="help";return ei("[string|boolean] [string]",[t,r],arguments.length),qe(this,Ey,"f")&&(this[Kie](qe(this,Ey,"f")),ri(this,Ey,null,"f")),t===!1&&r===void 0?this:(ri(this,Ey,typeof t=="string"?t:n,"f"),this.boolean(qe(this,Ey,"f")),this.describe(qe(this,Ey,"f"),r||qe(this,_s,"f").deferY18nLookup("Show help")),this)}help(t,r){return this.addHelpOpt(t,r)}addShowHiddenOpt(t,r){if(ei("[string|boolean] [string]",[t,r],arguments.length),t===!1&&r===void 0)return this;let n=typeof t=="string"?t:qe(this,hz,"f");return this.boolean(n),this.describe(n,r||qe(this,_s,"f").deferY18nLookup("Show hidden options")),qe(this,wi,"f").showHiddenOpt=n,this}showHidden(t,r){return this.addShowHiddenOpt(t,r)}alias(t,r){return ei("<object|string|array> [string|array]",[t,r],arguments.length),this[ese](this.alias.bind(this),"alias",t,r),this}array(t){return ei("<array|string>",[t],arguments.length),this[t_]("array",t),this[uT](t),this}boolean(t){return ei("<array|string>",[t],arguments.length),this[t_]("boolean",t),this[uT](t),this}check(t,r){return ei("<function> [boolean]",[t,r],arguments.length),this.middleware((n,a)=>Zk(()=>t(n,a.getOptions()),s=>(s?(typeof s=="string"||s instanceof Error)&&qe(this,_s,"f").fail(s.toString(),s):qe(this,_s,"f").fail(qe(this,ps,"f").y18n.__("Argument check failed: %s",t.toString())),n),s=>(qe(this,_s,"f").fail(s.message?s.message:s.toString(),s),n)),!1,r),this}choices(t,r){return ei("<object|string|array> [string|array]",[t,r],arguments.length),this[ese](this.choices.bind(this),"choices",t,r),this}coerce(t,r){if(ei("<object|string|array> [function]",[t,r],arguments.length),Array.isArray(t)){if(!r)throw new mu("coerce callback must be provided");for(let n of t)this.coerce(n,r);return this}else if(typeof t=="object"){for(let n of Object.keys(t))this.coerce(n,t[n]);return this}if(!r)throw new mu("coerce callback must be provided");return qe(this,wi,"f").key[t]=!0,qe(this,by,"f").addCoerceMiddleware((n,a)=>{let s;return Object.prototype.hasOwnProperty.call(n,t)?Zk(()=>(s=a.getAliases(),r(n[t])),l=>{n[t]=l;let p=a.getInternalMethods().getParserConfiguration()["strip-aliased"];if(s[t]&&p!==!0)for(let d of s[t])n[d]=l;return n},l=>{throw new mu(l.message)}):n},t),this}conflicts(t,r){return ei("<string|object> [string|array]",[t,r],arguments.length),qe(this,Nl,"f").conflicts(t,r),this}config(t="config",r,n){return ei("[object|string] [string|function] [function]",[t,r,n],arguments.length),typeof t=="object"&&!Array.isArray(t)?(t=_L(t,qe(this,eT,"f"),this[oT]()["deep-merge-config"]||!1,qe(this,ps,"f")),qe(this,wi,"f").configObjects=(qe(this,wi,"f").configObjects||[]).concat(t),this):(typeof r=="function"&&(n=r,r=void 0),this.describe(t,r||qe(this,_s,"f").deferY18nLookup("Path to JSON config file")),(Array.isArray(t)?t:[t]).forEach(a=>{qe(this,wi,"f").config[a]=n||!0}),this)}completion(t,r,n){return ei("[string] [string|boolean|function] [function]",[t,r,n],arguments.length),typeof r=="function"&&(n=r,r=void 0),ri(this,eA,t||qe(this,eA,"f")||"completion","f"),!r&&r!==!1&&(r="generate completion script"),this.command(qe(this,eA,"f"),r),n&&qe(this,vy,"f").registerFunction(n),this}command(t,r,n,a,s,c){return ei("<string|array|object> [string|boolean] [function|object] [function] [array] [boolean|string]",[t,r,n,a,s,c],arguments.length),qe(this,ap,"f").addHandler(t,r,n,a,s,c),this}commands(t,r,n,a,s,c){return this.command(t,r,n,a,s,c)}commandDir(t,r){ei("<string> [object]",[t,r],arguments.length);let n=qe(this,yz,"f")||qe(this,ps,"f").require;return qe(this,ap,"f").addDirectory(t,n,qe(this,ps,"f").getCallerFile(),r),this}count(t){return ei("<array|string>",[t],arguments.length),this[t_]("count",t),this[uT](t),this}default(t,r,n){return ei("<object|string|array> [*] [string]",[t,r,n],arguments.length),n&&(Vie(t,qe(this,ps,"f")),qe(this,wi,"f").defaultDescription[t]=n),typeof r=="function"&&(Vie(t,qe(this,ps,"f")),qe(this,wi,"f").defaultDescription[t]||(qe(this,wi,"f").defaultDescription[t]=qe(this,_s,"f").functionDescription(r)),r=r.call()),this[HR](this.default.bind(this),"default",t,r),this}defaults(t,r,n){return this.default(t,r,n)}demandCommand(t=1,r,n,a){return ei("[number] [number|string] [string|null|undefined] [string|null|undefined]",[t,r,n,a],arguments.length),typeof r!="number"&&(n=r,r=1/0),this.global("_",!1),qe(this,wi,"f").demandedCommands._={min:t,max:r,minMsg:n,maxMsg:a},this}demand(t,r,n){return Array.isArray(r)?(r.forEach(a=>{Am(n,!0,qe(this,ps,"f")),this.demandOption(a,n)}),r=1/0):typeof r!="number"&&(n=r,r=1/0),typeof t=="number"?(Am(n,!0,qe(this,ps,"f")),this.demandCommand(t,r,n,n)):Array.isArray(t)?t.forEach(a=>{Am(n,!0,qe(this,ps,"f")),this.demandOption(a,n)}):typeof n=="string"?this.demandOption(t,n):(n===!0||typeof n>"u")&&this.demandOption(t),this}demandOption(t,r){return ei("<object|string|array> [string]",[t,r],arguments.length),this[HR](this.demandOption.bind(this),"demandedOptions",t,r),this}deprecateOption(t,r){return ei("<string> [string|boolean]",[t,r],arguments.length),qe(this,wi,"f").deprecatedOptions[t]=r,this}describe(t,r){return ei("<object|string|array> [string]",[t,r],arguments.length),this[nse](t,!0),qe(this,_s,"f").describe(t,r),this}detectLocale(t){return ei("<boolean>",[t],arguments.length),ri(this,tT,t,"f"),this}env(t){return ei("[string|boolean]",[t],arguments.length),t===!1?delete qe(this,wi,"f").envPrefix:qe(this,wi,"f").envPrefix=t||"",this}epilogue(t){return ei("<string>",[t],arguments.length),qe(this,_s,"f").epilog(t),this}epilog(t){return this.epilogue(t)}example(t,r){return ei("<string|array> [string]",[t,r],arguments.length),Array.isArray(t)?t.forEach(n=>this.example(...n)):qe(this,_s,"f").example(t,r),this}exit(t,r){ri(this,tA,!0,"f"),ri(this,Z2,r,"f"),qe(this,xy,"f")&&qe(this,ps,"f").process.exit(t)}exitProcess(t=!0){return ei("[boolean]",[t],arguments.length),ri(this,xy,t,"f"),this}fail(t){if(ei("<function|boolean>",[t],arguments.length),typeof t=="boolean"&&t!==!1)throw new mu("Invalid first argument. Expected function or boolean 'false'");return qe(this,_s,"f").failFn(t),this}getAliases(){return this.parsed?this.parsed.aliases:{}}async getCompletion(t,r){return ei("<array> [function]",[t,r],arguments.length),r?qe(this,vy,"f").getCompletion(t,r):new Promise((n,a)=>{qe(this,vy,"f").getCompletion(t,(s,c)=>{s?a(s):n(c)})})}getDemandedOptions(){return ei([],0),qe(this,wi,"f").demandedOptions}getDemandedCommands(){return ei([],0),qe(this,wi,"f").demandedCommands}getDeprecatedOptions(){return ei([],0),qe(this,wi,"f").deprecatedOptions}getDetectLocale(){return qe(this,tT,"f")}getExitProcess(){return qe(this,xy,"f")}getGroups(){return Object.assign({},qe(this,oE,"f"),qe(this,nT,"f"))}getHelp(){if(ri(this,tA,!0,"f"),!qe(this,_s,"f").hasCachedHelpMessage()){if(!this.parsed){let r=this[BL](qe(this,e_,"f"),void 0,void 0,0,!0);if(gu(r))return r.then(()=>qe(this,_s,"f").help())}let t=qe(this,ap,"f").runDefaultBuilderOn(this);if(gu(t))return t.then(()=>qe(this,_s,"f").help())}return Promise.resolve(qe(this,_s,"f").help())}getOptions(){return qe(this,wi,"f")}getStrict(){return qe(this,iT,"f")}getStrictCommands(){return qe(this,sT,"f")}getStrictOptions(){return qe(this,aT,"f")}global(t,r){return ei("<string|array> [boolean]",[t,r],arguments.length),t=[].concat(t),r!==!1?qe(this,wi,"f").local=qe(this,wi,"f").local.filter(n=>t.indexOf(n)===-1):t.forEach(n=>{qe(this,wi,"f").local.includes(n)||qe(this,wi,"f").local.push(n)}),this}group(t,r){ei("<string|array> <string>",[t,r],arguments.length);let n=qe(this,nT,"f")[r]||qe(this,oE,"f")[r];qe(this,nT,"f")[r]&&delete qe(this,nT,"f")[r];let a={};return qe(this,oE,"f")[r]=(n||[]).concat(t).filter(s=>a[s]?!1:a[s]=!0),this}hide(t){return ei("<string>",[t],arguments.length),qe(this,wi,"f").hiddenOptions.push(t),this}implies(t,r){return ei("<string|object> [number|string|array]",[t,r],arguments.length),qe(this,Nl,"f").implies(t,r),this}locale(t){return ei("[string]",[t],arguments.length),t===void 0?(this[Xie](),qe(this,ps,"f").y18n.getLocale()):(ri(this,tT,!1,"f"),qe(this,ps,"f").y18n.setLocale(t),this)}middleware(t,r,n){return qe(this,by,"f").addMiddleware(t,!!r,n)}nargs(t,r){return ei("<string|object|array> [number]",[t,r],arguments.length),this[HR](this.nargs.bind(this),"narg",t,r),this}normalize(t){return ei("<array|string>",[t],arguments.length),this[t_]("normalize",t),this}number(t){return ei("<array|string>",[t],arguments.length),this[t_]("number",t),this[uT](t),this}option(t,r){if(ei("<string|object> [object]",[t,r],arguments.length),typeof t=="object")Object.keys(t).forEach(n=>{this.options(n,t[n])});else{typeof r!="object"&&(r={}),this[uT](t),qe(this,cE,"f")&&(t==="version"||(r==null?void 0:r.alias)==="version")&&this[HRe](['"version" is a reserved word.',"Please do one of the following:",'- Disable version with `yargs.version(false)` if using "version" as an option',"- Use the built-in `yargs.version` method instead (if applicable)","- Use a different option key","https://yargs.js.org/docs/#api-reference-version"].join(`
|
|
520
520
|
`),void 0,"versionWarning"),qe(this,wi,"f").key[t]=!0,r.alias&&this.alias(t,r.alias);let n=r.deprecate||r.deprecated;n&&this.deprecateOption(t,n);let a=r.demand||r.required||r.require;a&&this.demand(t,a),r.demandOption&&this.demandOption(t,typeof r.demandOption=="string"?r.demandOption:void 0),r.conflicts&&this.conflicts(t,r.conflicts),"default"in r&&this.default(t,r.default),r.implies!==void 0&&this.implies(t,r.implies),r.nargs!==void 0&&this.nargs(t,r.nargs),r.config&&this.config(t,r.configParser),r.normalize&&this.normalize(t),r.choices&&this.choices(t,r.choices),r.coerce&&this.coerce(t,r.coerce),r.group&&this.group(t,r.group),(r.boolean||r.type==="boolean")&&(this.boolean(t),r.alias&&this.boolean(r.alias)),(r.array||r.type==="array")&&(this.array(t),r.alias&&this.array(r.alias)),(r.number||r.type==="number")&&(this.number(t),r.alias&&this.number(r.alias)),(r.string||r.type==="string")&&(this.string(t),r.alias&&this.string(r.alias)),(r.count||r.type==="count")&&this.count(t),typeof r.global=="boolean"&&this.global(t,r.global),r.defaultDescription&&(qe(this,wi,"f").defaultDescription[t]=r.defaultDescription),r.skipValidation&&this.skipValidation(t);let s=r.describe||r.description||r.desc,c=qe(this,_s,"f").getDescriptions();(!Object.prototype.hasOwnProperty.call(c,t)||typeof s=="string")&&this.describe(t,s),r.hidden&&this.hide(t),r.requiresArg&&this.requiresArg(t)}return this}options(t,r){return this.option(t,r)}parse(t,r,n){ei("[string|array] [function|boolean|object] [function]",[t,r,n],arguments.length),this[$Re](),typeof t>"u"&&(t=qe(this,e_,"f")),typeof r=="object"&&(ri(this,rT,r,"f"),r=n),typeof r=="function"&&(ri(this,rA,r,"f"),r=!1),r||ri(this,e_,t,"f"),qe(this,rA,"f")&&ri(this,xy,!1,"f");let a=this[BL](t,!!r),s=this.parsed;return qe(this,vy,"f").setParsed(this.parsed),gu(a)?a.then(c=>(qe(this,rA,"f")&&qe(this,rA,"f").call(this,qe(this,Z2,"f"),c,qe(this,Ff,"f")),c)).catch(c=>{throw qe(this,rA,"f")&&qe(this,rA,"f")(c,this.parsed.argv,qe(this,Ff,"f")),c}).finally(()=>{this[ise](),this.parsed=s}):(qe(this,rA,"f")&&qe(this,rA,"f").call(this,qe(this,Z2,"f"),a,qe(this,Ff,"f")),this[ise](),this.parsed=s,a)}parseAsync(t,r,n){let a=this.parse(t,r,n);return gu(a)?a:Promise.resolve(a)}parseSync(t,r,n){let a=this.parse(t,r,n);if(gu(a))throw new mu(".parseSync() must not be used with asynchronous builders, handlers, or middleware");return a}parserConfiguration(t){return ei("<object>",[t],arguments.length),ri(this,vz,t,"f"),this}pkgConf(t,r){ei("<string> [string]",[t,r],arguments.length);let n=null,a=this[Zie](r||qe(this,eT,"f"));return a[t]&&typeof a[t]=="object"&&(n=_L(a[t],r||qe(this,eT,"f"),this[oT]()["deep-merge-config"]||!1,qe(this,ps,"f")),qe(this,wi,"f").configObjects=(qe(this,wi,"f").configObjects||[]).concat(n)),this}positional(t,r){ei("<string> <object>",[t,r],arguments.length);let n=["default","defaultDescription","implies","normalize","choices","conflicts","coerce","type","describe","desc","description","alias"];r=K2(r,(c,l)=>c==="type"&&!["string","number","boolean"].includes(l)?!1:n.includes(c));let a=qe(this,TL,"f").fullCommands[qe(this,TL,"f").fullCommands.length-1],s=a?qe(this,ap,"f").cmdToParseOptions(a):{array:[],alias:{},default:{},demand:{}};return MR(s).forEach(c=>{let l=s[c];Array.isArray(l)?l.indexOf(t)!==-1&&(r[c]=!0):l[t]&&!(c in r)&&(r[c]=l[t])}),this.group(t,qe(this,_s,"f").getPositionalGroupName()),this.option(t,r)}recommendCommands(t=!0){return ei("[boolean]",[t],arguments.length),ri(this,xz,t,"f"),this}required(t,r,n){return this.demand(t,r,n)}require(t,r,n){return this.demand(t,r,n)}requiresArg(t){return ei("<array|string|object> [number]",[t],arguments.length),typeof t=="string"&&qe(this,wi,"f").narg[t]?this:(this[HR](this.requiresArg.bind(this),"narg",t,NaN),this)}showCompletionScript(t,r){return ei("[string] [string]",[t,r],arguments.length),t=t||this.$0,qe(this,UR,"f").log(qe(this,vy,"f").generateCompletionScript(t,r||qe(this,eA,"f")||"completion")),this}showHelp(t){if(ei("[string|function]",[t],arguments.length),ri(this,tA,!0,"f"),!qe(this,_s,"f").hasCachedHelpMessage()){if(!this.parsed){let n=this[BL](qe(this,e_,"f"),void 0,void 0,0,!0);if(gu(n))return n.then(()=>{qe(this,_s,"f").showHelp(t)}),this}let r=qe(this,ap,"f").runDefaultBuilderOn(this);if(gu(r))return r.then(()=>{qe(this,_s,"f").showHelp(t)}),this}return qe(this,_s,"f").showHelp(t),this}scriptName(t){return this.customScriptName=!0,this.$0=t,this}showHelpOnFail(t,r){return ei("[boolean|string] [string]",[t,r],arguments.length),qe(this,_s,"f").showHelpOnFail(t,r),this}showVersion(t){return ei("[string|function]",[t],arguments.length),qe(this,_s,"f").showVersion(t),this}skipValidation(t){return ei("<array|string>",[t],arguments.length),this[t_]("skipValidation",t),this}strict(t){return ei("[boolean]",[t],arguments.length),ri(this,iT,t!==!1,"f"),this}strictCommands(t){return ei("[boolean]",[t],arguments.length),ri(this,sT,t!==!1,"f"),this}strictOptions(t){return ei("[boolean]",[t],arguments.length),ri(this,aT,t!==!1,"f"),this}string(t){return ei("<array|string>",[t],arguments.length),this[t_]("string",t),this[uT](t),this}terminalWidth(){return ei([],0),qe(this,ps,"f").process.stdColumns}updateLocale(t){return this.updateStrings(t)}updateStrings(t){return ei("<object>",[t],arguments.length),ri(this,tT,!1,"f"),qe(this,ps,"f").y18n.updateLocale(t),this}usage(t,r,n,a){if(ei("<string|null|undefined> [string|boolean] [function|object] [function]",[t,r,n,a],arguments.length),r!==void 0){if(Am(t,null,qe(this,ps,"f")),(t||"").match(/^\$0( |$)/))return this.command(t,r,n,a);throw new mu(".usage() description must start with $0 if being used as alias for .command()")}else return qe(this,_s,"f").usage(t),this}usageConfiguration(t){return ei("<object>",[t],arguments.length),ri(this,bz,t,"f"),this}version(t,r,n){let a="version";if(ei("[boolean|string] [string] [string]",[t,r,n],arguments.length),qe(this,cE,"f")&&(this[Kie](qe(this,cE,"f")),qe(this,_s,"f").version(void 0),ri(this,cE,null,"f")),arguments.length===0)n=this[GRe](),t=a;else if(arguments.length===1){if(t===!1)return this;n=t,t=a}else arguments.length===2&&(n=r,r=void 0);return ri(this,cE,typeof t=="string"?t:a,"f"),r=r||qe(this,_s,"f").deferY18nLookup("Show version number"),qe(this,_s,"f").version(n||void 0),this.boolean(qe(this,cE,"f")),this.describe(qe(this,cE,"f"),r),this}wrap(t){return ei("<number|null|undefined>",[t],arguments.length),qe(this,_s,"f").wrap(t),this}[(ap=new WeakMap,eT=new WeakMap,TL=new WeakMap,vy=new WeakMap,eA=new WeakMap,hz=new WeakMap,Z2=new WeakMap,tT=new WeakMap,mz=new WeakMap,xy=new WeakMap,gz=new WeakMap,by=new WeakMap,oE=new WeakMap,tA=new WeakMap,Ey=new WeakMap,Az=new WeakMap,UR=new WeakMap,Ff=new WeakMap,wi=new WeakMap,yz=new WeakMap,vz=new WeakMap,rA=new WeakMap,rT=new WeakMap,zR=new WeakMap,nT=new WeakMap,e_=new WeakMap,xz=new WeakMap,ps=new WeakMap,iT=new WeakMap,sT=new WeakMap,aT=new WeakMap,_s=new WeakMap,bz=new WeakMap,cE=new WeakMap,Nl=new WeakMap,URe)](t){if(!t._||!t["--"])return t;t._.push.apply(t._,t["--"]);try{delete t["--"]}catch{}return t}[zRe](){return{log:(...t)=>{this[Ez]()||console.log(...t),ri(this,tA,!0,"f"),qe(this,Ff,"f").length&&ri(this,Ff,qe(this,Ff,"f")+`
|
|
521
521
|
`,"f"),ri(this,Ff,qe(this,Ff,"f")+t.join(" "),"f")},error:(...t)=>{this[Ez]()||console.error(...t),ri(this,tA,!0,"f"),qe(this,Ff,"f").length&&ri(this,Ff,qe(this,Ff,"f")+`
|
|
522
|
-
`,"f"),ri(this,Ff,qe(this,Ff,"f")+t.join(" "),"f")}}}[Kie](t){MR(qe(this,wi,"f")).forEach(r=>{if((a=>a==="configObjects")(r))return;let n=qe(this,wi,"f")[r];Array.isArray(n)?n.includes(t)&&n.splice(n.indexOf(t),1):typeof n=="object"&&delete n[t]}),delete qe(this,_s,"f").getDescriptions()[t]}[HRe](t,r,n){qe(this,mz,"f")[n]||(qe(this,ps,"f").process.emitWarning(t,r),qe(this,mz,"f")[n]=!0)}[$Re](){qe(this,gz,"f").push({options:qe(this,wi,"f"),configObjects:qe(this,wi,"f").configObjects.slice(0),exitProcess:qe(this,xy,"f"),groups:qe(this,oE,"f"),strict:qe(this,iT,"f"),strictCommands:qe(this,sT,"f"),strictOptions:qe(this,aT,"f"),completionCommand:qe(this,eA,"f"),output:qe(this,Ff,"f"),exitError:qe(this,Z2,"f"),hasOutput:qe(this,tA,"f"),parsed:this.parsed,parseFn:qe(this,rA,"f"),parseContext:qe(this,rT,"f")}),qe(this,_s,"f").freeze(),qe(this,Nl,"f").freeze(),qe(this,ap,"f").freeze(),qe(this,by,"f").freeze()}[VRe](){let t="",r;return/\b(node|iojs|electron)(\.exe)?$/.test(qe(this,ps,"f").process.argv()[0])?r=qe(this,ps,"f").process.argv().slice(1,2):r=qe(this,ps,"f").process.argv().slice(0,1),t=r.map(n=>{let a=this[sFe](qe(this,eT,"f"),n);return n.match(/^(\/|([a-zA-Z]:)?\\)/)&&a.length<n.length?a:n}).join(" ").trim(),qe(this,ps,"f").getEnv("_")&&qe(this,ps,"f").getProcessArgvBin()===qe(this,ps,"f").getEnv("_")&&(t=qe(this,ps,"f").getEnv("_").replace(`${qe(this,ps,"f").path.dirname(qe(this,ps,"f").process.execPath())}/`,"")),t}[oT](){return qe(this,vz,"f")}[WRe](){return qe(this,bz,"f")}[Xie](){if(!qe(this,tT,"f"))return;let t=qe(this,ps,"f").getEnv("LC_ALL")||qe(this,ps,"f").getEnv("LC_MESSAGES")||qe(this,ps,"f").getEnv("LANG")||qe(this,ps,"f").getEnv("LANGUAGE")||"en_US";this.locale(t.replace(/[.:].*/,""))}[GRe](){return this[Zie]().version||"unknown"}[YRe](t){let r=t["--"]?t["--"]:t._;for(let n=0,a;(a=r[n])!==void 0;n++)qe(this,ps,"f").Parser.looksLikeNumber(a)&&Number.isSafeInteger(Math.floor(parseFloat(`${a}`)))&&(r[n]=Number(a));return t}[Zie](t){let r=t||"*";if(qe(this,zR,"f")[r])return qe(this,zR,"f")[r];let n={};try{let a=t||qe(this,ps,"f").mainFilename;!t&&qe(this,ps,"f").path.extname(a)&&(a=qe(this,ps,"f").path.dirname(a));let s=qe(this,ps,"f").findUp(a,(c,l)=>{if(l.includes("package.json"))return"package.json"});Am(s,void 0,qe(this,ps,"f")),n=JSON.parse(qe(this,ps,"f").readFileSync(s,"utf8"))}catch{}return qe(this,zR,"f")[r]=n||{},qe(this,zR,"f")[r]}[t_](t,r){r=[].concat(r),r.forEach(n=>{n=this[rse](n),qe(this,wi,"f")[t].push(n)})}[HR](t,r,n,a){this[tse](t,r,n,a,(s,c,l)=>{qe(this,wi,"f")[s][c]=l})}[ese](t,r,n,a){this[tse](t,r,n,a,(s,c,l)=>{qe(this,wi,"f")[s][c]=(qe(this,wi,"f")[s][c]||[]).concat(l)})}[tse](t,r,n,a,s){if(Array.isArray(n))n.forEach(c=>{t(c,a)});else if((c=>typeof c=="object")(n))for(let c of MR(n))t(c,n[c]);else s(r,this[rse](n),a)}[rse](t){return t==="__proto__"?"___proto___":t}[nse](t,r){return this[HR](this[nse].bind(this),"key",t,r),this}[ise](){var t,r,n,a,s,c,l,p,d,h,g,v;let b=qe(this,gz,"f").pop();Am(b,void 0,qe(this,ps,"f"));let A;t=this,r=this,n=this,a=this,s=this,c=this,l=this,p=this,d=this,h=this,g=this,v=this,{options:{set value(C){ri(t,wi,C,"f")}}.value,configObjects:A,exitProcess:{set value(C){ri(r,xy,C,"f")}}.value,groups:{set value(C){ri(n,oE,C,"f")}}.value,output:{set value(C){ri(a,Ff,C,"f")}}.value,exitError:{set value(C){ri(s,Z2,C,"f")}}.value,hasOutput:{set value(C){ri(c,tA,C,"f")}}.value,parsed:this.parsed,strict:{set value(C){ri(l,iT,C,"f")}}.value,strictCommands:{set value(C){ri(p,sT,C,"f")}}.value,strictOptions:{set value(C){ri(d,aT,C,"f")}}.value,completionCommand:{set value(C){ri(h,eA,C,"f")}}.value,parseFn:{set value(C){ri(g,rA,C,"f")}}.value,parseContext:{set value(C){ri(v,rT,C,"f")}}.value}=b,qe(this,wi,"f").configObjects=A,qe(this,_s,"f").unfreeze(),qe(this,Nl,"f").unfreeze(),qe(this,ap,"f").unfreeze(),qe(this,by,"f").unfreeze()}[JRe](t,r){return Zk(r,n=>(t(n),n))}getInternalMethods(){return{getCommandInstance:this[KRe].bind(this),getContext:this[XRe].bind(this),getHasOutput:this[ZRe].bind(this),getLoggerInstance:this[eFe].bind(this),getParseContext:this[tFe].bind(this),getParserConfiguration:this[oT].bind(this),getUsageConfiguration:this[WRe].bind(this),getUsageInstance:this[rFe].bind(this),getValidationInstance:this[nFe].bind(this),hasParseCallback:this[Ez].bind(this),isGlobalContext:this[iFe].bind(this),postProcess:this[cT].bind(this),reset:this[sse].bind(this),runValidation:this[ase].bind(this),runYargsParserAndExecuteCommands:this[BL].bind(this),setHasOutput:this[aFe].bind(this)}}[KRe](){return qe(this,ap,"f")}[XRe](){return qe(this,TL,"f")}[ZRe](){return qe(this,tA,"f")}[eFe](){return qe(this,UR,"f")}[tFe](){return qe(this,rT,"f")||{}}[rFe](){return qe(this,_s,"f")}[nFe](){return qe(this,Nl,"f")}[Ez](){return!!qe(this,rA,"f")}[iFe](){return qe(this,Az,"f")}[cT](t,r,n,a){return n||gu(t)||(r||(t=this[URe](t)),(this[oT]()["parse-positional-numbers"]||this[oT]()["parse-positional-numbers"]===void 0)&&(t=this[YRe](t)),a&&(t=Xk(t,this,qe(this,by,"f").getMiddleware(),!1))),t}[sse](t={}){ri(this,wi,qe(this,wi,"f")||{},"f");let r={};r.local=qe(this,wi,"f").local||[],r.configObjects=qe(this,wi,"f").configObjects||[];let n={};r.local.forEach(c=>{n[c]=!0,(t[c]||[]).forEach(l=>{n[l]=!0})}),Object.assign(qe(this,nT,"f"),Object.keys(qe(this,oE,"f")).reduce((c,l)=>{let p=qe(this,oE,"f")[l].filter(d=>!(d in n));return p.length>0&&(c[l]=p),c},{})),ri(this,oE,{},"f");let a=["array","boolean","string","skipValidation","count","normalize","number","hiddenOptions"],s=["narg","key","alias","default","defaultDescription","config","choices","demandedOptions","demandedCommands","deprecatedOptions"];return a.forEach(c=>{r[c]=(qe(this,wi,"f")[c]||[]).filter(l=>!n[l])}),s.forEach(c=>{r[c]=K2(qe(this,wi,"f")[c],l=>!n[l])}),r.envPrefix=qe(this,wi,"f").envPrefix,ri(this,wi,r,"f"),ri(this,_s,qe(this,_s,"f")?qe(this,_s,"f").reset(n):NRe(this,qe(this,ps,"f")),"f"),ri(this,Nl,qe(this,Nl,"f")?qe(this,Nl,"f").reset(n):qRe(this,qe(this,_s,"f"),qe(this,ps,"f")),"f"),ri(this,ap,qe(this,ap,"f")?qe(this,ap,"f").reset():PRe(qe(this,_s,"f"),qe(this,Nl,"f"),qe(this,by,"f"),qe(this,ps,"f")),"f"),qe(this,vy,"f")||ri(this,vy,LRe(this,qe(this,_s,"f"),qe(this,ap,"f"),qe(this,ps,"f")),"f"),qe(this,by,"f").reset(),ri(this,eA,null,"f"),ri(this,Ff,"","f"),ri(this,Z2,null,"f"),ri(this,tA,!1,"f"),this.parsed=!1,this}[sFe](t,r){return qe(this,ps,"f").path.relative(t,r)}[BL](t,r,n,a=0,s=!1){let c=!!n||s;t=t||qe(this,e_,"f"),qe(this,wi,"f").__=qe(this,ps,"f").y18n.__,qe(this,wi,"f").configuration=this[oT]();let l=!!qe(this,wi,"f").configuration["populate--"],p=Object.assign({},qe(this,wi,"f").configuration,{"populate--":!0}),d=qe(this,ps,"f").Parser.detailed(t,Object.assign({},qe(this,wi,"f"),{configuration:{"parse-positional-numbers":!1,...p}})),h=Object.assign(d.argv,qe(this,rT,"f")),g,v=d.aliases,b=!1,A=!1;Object.keys(h).forEach(C=>{C===qe(this,Ey,"f")&&h[C]?b=!0:C===qe(this,cE,"f")&&h[C]&&(A=!0)}),h.$0=this.$0,this.parsed=d,a===0&&qe(this,_s,"f").clearCachedHelpMessage();try{if(this[Xie](),r)return this[cT](h,l,!!n,!1);qe(this,Ey,"f")&&[qe(this,Ey,"f")].concat(v[qe(this,Ey,"f")]||[]).filter(j=>j.length>1).includes(""+h._[h._.length-1])&&(h._.pop(),b=!0),ri(this,Az,!1,"f");let C=qe(this,ap,"f").getCommands(),S=qe(this,vy,"f").completionKey in h,k=b||S||s;if(h._.length){if(C.length){let O;for(let j=a||0,L;h._[j]!==void 0;j++)if(L=String(h._[j]),C.includes(L)&&L!==qe(this,eA,"f")){let $=qe(this,ap,"f").runCommand(L,this,d,j+1,s,b||A||s);return this[cT]($,l,!!n,!1)}else if(!O&&L!==qe(this,eA,"f")){O=L;break}!qe(this,ap,"f").hasDefaultCommand()&&qe(this,xz,"f")&&O&&!k&&qe(this,Nl,"f").recommendCommands(O,C)}qe(this,eA,"f")&&h._.includes(qe(this,eA,"f"))&&!S&&(qe(this,xy,"f")&&X2(!0),this.showCompletionScript(),this.exit(0))}if(qe(this,ap,"f").hasDefaultCommand()&&!k){let O=qe(this,ap,"f").runCommand(null,this,d,0,s,b||A||s);return this[cT](O,l,!!n,!1)}if(S){qe(this,xy,"f")&&X2(!0),t=[].concat(t);let O=t.slice(t.indexOf(`--${qe(this,vy,"f").completionKey}`)+1);return qe(this,vy,"f").getCompletion(O,(j,L)=>{if(j)throw new mu(j.message);(L||[]).forEach($=>{qe(this,UR,"f").log($)}),this.exit(0)}),this[cT](h,!l,!!n,!1)}if(qe(this,tA,"f")||(b?(qe(this,xy,"f")&&X2(!0),c=!0,this.showHelp("log"),this.exit(0)):A&&(qe(this,xy,"f")&&X2(!0),c=!0,qe(this,_s,"f").showVersion("log"),this.exit(0))),!c&&qe(this,wi,"f").skipValidation.length>0&&(c=Object.keys(h).some(O=>qe(this,wi,"f").skipValidation.indexOf(O)>=0&&h[O]===!0)),!c){if(d.error)throw new mu(d.error.message);if(!S){let O=this[ase](v,{},d.error);n||(g=Xk(h,this,qe(this,by,"f").getMiddleware(),!0)),g=this[JRe](O,g!=null?g:h),gu(g)&&!n&&(g=g.then(()=>Xk(h,this,qe(this,by,"f").getMiddleware(),!1)))}}}catch(C){if(C instanceof mu)qe(this,_s,"f").fail(C.message,C);else throw C}return this[cT](g!=null?g:h,l,!!n,!0)}[ase](t,r,n,a){let s={...this.getDemandedOptions()};return c=>{if(n)throw new mu(n.message);qe(this,Nl,"f").nonOptionCount(c),qe(this,Nl,"f").requiredArguments(c,s);let l=!1;qe(this,sT,"f")&&(l=qe(this,Nl,"f").unknownCommands(c)),qe(this,iT,"f")&&!l?qe(this,Nl,"f").unknownArguments(c,t,r,!!a):qe(this,aT,"f")&&qe(this,Nl,"f").unknownArguments(c,t,{},!1,!1),qe(this,Nl,"f").limitedChoices(c),qe(this,Nl,"f").implications(c),qe(this,Nl,"f").conflicting(c)}}[aFe](){ri(this,tA,!0,"f")}[uT](t){if(typeof t=="string")qe(this,wi,"f").key[t]=!0;else for(let r of t)qe(this,wi,"f").key[r]=!0}};function RRe(e){return!!e&&typeof e.getInternalMethods=="function"}var zzt=oFe($ie),cFe=zzt;var lT={name:"edgeone",version:"1.3.8",description:"Command-line interface for TencentCloud Pages Functions",bin:{edgeone:"./edgeone-bin/edgeone.js"},files:["./edgeone-bin/edgeone.js","./edgeone-dist/cli.js","./edgeone-dist/templates","./edgeone-dist/pages/dev/runner-worker.js"],author:"",keywords:["tencent","edgeone","edgefunctions","edgeone","cli","typescript"],scripts:{clean:"rimraf ./edgeone-dist ./edgeone-bin ./libs-node-ai ./libs-kv-client",bundle:"node -r esbuild-register ./scripts/bundle.ts",watch:"node -r esbuild-register ./scripts/bundle.ts watch",build:"npm run clean && npm run build:pages-ai && npm run build:kv-client && npm run bundle","build:pages-ai":"node ./scripts/build-pages-ai.js","build:kv-client":"node ./scripts/build-kv-client.js",format:'prettier --write "src/**/*.{ts,tsx,js,jsx,json,md}" "scripts/**/*.{ts,js}" "*.{json,md}"',prepack:"npm run build",prepublishOnly:"npm run build",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage"},dependencies:{"@edgeone/framework-detect":"^0.0.2","@edgeone/nuxt-pages":"1.1.0","@edgeone/opennextjs-pages":"0.2.2",archiver:"^7.0.1",chokidar:"^4.0.1","common-path-prefix":"^1.0.0","cos-nodejs-sdk-v5":"^2.14.7","cross-spawn":"^7.0.6",crypto:"^1.0.1","detect-port":"^2.1.0",esbuild:"^0.19.2","esbuild-plugin-polyfill-node":"^0.3.0","esbuild-plugin-vue":"^0.2.4","fast-glob":"^3.3.0","fs-extra":"^11.3.1","ink-table":"^3.1.0",inquirer:"^8.2.4",install:"^0.13.0",lodash:"^4.17.21","mime-types":"^3.0.1",minimatch:"^9.0.5","node-persist":"^4.0.3",npm:"^10.9.1",open:"^8.4.2","p-map":"^5.5.0","parse-gitignore":"^2.0.0",portfinder:"^1.0.32",undici:"^5.29.0",vitest:"^4.0.17"},devDependencies:{"@babel/generator":"^7.28.0","@babel/parser":"^7.28.0","@babel/traverse":"^7.28.0","@babel/types":"^7.28.0","@tencent/capi-nodejs-sdk":"^2.3.2","@types/http-proxy":"^1.17.12","@types/inquirer":"^9.0.8","@types/ip":"^1.1.0","@types/lodash":"^4.14.198","@types/prompts":"^2.4.4","@types/react":"^17.0.2","@types/uuid":"^9.0.3","@types/ws":"^8.5.7","@types/yargs":"^17.0.24","@vitest/coverage-v8":"^4.0.17",axios:"^1.7.9",chalk:"^5.3.0",cookie:"^1.0.2",dotenv:"^16.3.1","esbuild-register":"^3.6.0",execa:"^7.1.1","http-proxy":"^1.18.1",husky:"^8.0.3",ink:"^3.2.0",ip:"^2.0.1",json5:"^2.2.3","lint-staged":"^15.2.0",lodash:"^4.17.21",moment:"^2.30.1","node-fetch":"^3.3.2",prettier:"^3.1.1",prompts:"^2.4.2",react:"^17.0.2",rimraf:"^6.0.1",semiver:"^1.1.0",sirv:"^2.0.3","tencentcloud-cls-sdk-js-web":"^1.0.13","ts-node":"^10.9.2",typescript:"^5.9.3","update-check":"^1.5.4",uuid:"^9.0.0",ws:"^8.14.2",yargs:"^17.6.2",zod:"^3.23.8","zod-to-json-schema":"^3.23.5"},engines:{node:">=12"},"lint-staged":{"*.{ts,tsx,js,jsx,json,md}":["prettier --write"]}};var cse=class{log(t,r){try{let n=this.format(r),a=JSON.stringify({key:t,value:n});process.send(a)}catch{}}format(t){return typeof t=="object"?JSON.stringify(t):typeof t=="number"?String(t):t}},$zt=new cse,wz=$zt;var T5e=ar(Pc()),B5e=ar(oF()),D5e=ar(poe());var c3e=ar(moe()),dS=ar(require("fs"));var goe=ar(require("path"));function Sp(e,t){return goe.default.join(e,t)}function dr(e){return Sp(process.cwd(),e)}function JQe(e){return goe.default.dirname(e)}var mH=o3e(),Eoe=require("path");function woe(){try{mH.initSync({dir:vYt()})}catch(e){console.error("[File] initStorage error",e)}}async function lF(e,t,r){woe(),await mH.setItem(e,t).catch(n=>{console.error("[File] setLocalData error",n)}),r==null||r()}async function pF(e){return woe(),await mH.getItem(e).catch(r=>{console.error("[File] getLocalData error",r)})}async function gH(e){woe(),await mH.removeItem(e).catch(t=>{console.error("[File] removeLocalData error",t)})}function vYt(){try{let e=Eoe.parse(process.cwd()).root,t=process.cwd(),n=Eoe.relative(e,t).split(Eoe.sep).length-2;return`${new Array(Math.max(0,n)).fill("../").join("")}.edgeone`}catch{return".edgeone"}}function u3e(e){return dS.default.statSync(e)}function xYt(e){return dS.default.mkdirSync(e,{recursive:!0})}function bYt(e){return dS.default.existsSync(e)}function fF(e){return dS.default.existsSync(e)}function AH(e,t="utf-8"){return dS.default.readFileSync(e,t)}function U0(e){let t=AH(e);return JSON.parse(t)}function dF(e){let t=AH(e);return c3e.default.parse(t)}function xh(e,t,r="utf-8"){let n=JQe(e);return bYt(n)||xYt(n),dS.default.writeFileSync(e,t,r)}function Soe(e,t){return fF(e)?dS.default.appendFileSync(e,t):dS.default.writeFileSync(e,t)}var ea=ar(oF()),js=ar(Pc()),Bj=ar(l3e());function ym(){return!process.stdout.isTTY||process.env.FORCE_NON_TTY==="1"}function ET({prefix:e="cli"}){return js.default.createElement(ea.Text,{color:"grey"},"[",e,"]")}function jr(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m\x1B[31m[\u2718] \x1B[0m${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,null,js.default.createElement(ET,{prefix:t}),js.default.createElement(ea.Text,{color:"red"},"[\u2718] "),e));r()}function ya(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m\x1B[32m[\u2714] \x1B[0m${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,null,js.default.createElement(ET,{prefix:t}),js.default.createElement(ea.Text,{color:"green"},"[\u2714] "),e));r()}function vm(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m \x1B[33mWARNING:\x1B[0m ${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,null,js.default.createElement(ET,{prefix:t}),js.default.createElement(ea.Text,{color:"orange"},"\u2757\uFE0F "),e));r()}function vc(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m\x1B[36m ${e}\x1B[0m`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,{color:"cyan"},js.default.createElement(ET,{prefix:t}),e));r()}function yH(e){if(ym()){console.log(e);return}let{unmount:t}=(0,ea.render)(js.default.createElement(ea.Text,{color:"cyan"},e));t()}function rn(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m\x1B[37m ${e}\x1B[0m`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,{color:"white"},js.default.createElement(ET,{prefix:t}),e));r()}function f3e(e,t,r="cli"){let n=t;if(t.includes("http")&&(n=new URL(t).pathname),ym()){console.log(`${e} ${n}`);return}let{unmount:a}=(0,ea.render)(js.default.createElement(ea.Text,{color:"grey"},e," ",n));a()}function _oe({timestamp:e}){return js.default.createElement(ea.Box,{width:13},js.default.createElement(ea.Text,{color:"grey"},(0,Bj.default)(e).format("HH:mm:ss.SSS")))}function d3e(e,t){if(ym()){console.log(`${(0,Bj.default)(t).format("HH:mm:ss.SSS")} ${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Box,null,js.default.createElement(_oe,{timestamp:t}),js.default.createElement(ea.Text,{color:"white"},e)));r()}function h3e(e,t){if(ym()){console.log(`${(0,Bj.default)(t).format("HH:mm:ss.SSS")} [WARNING] ${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Box,null,js.default.createElement(_oe,{timestamp:t}),js.default.createElement(ea.Text,{color:"white",backgroundColor:"yellow"},"[WARNING]"),js.default.createElement(ea.Text,null," ",e)));r()}function Ioe(e,t){if(ym()){console.log(`${(0,Bj.default)(t).format("HH:mm:ss.SSS")} [ERROR] ${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Box,null,js.default.createElement(_oe,{timestamp:t}),js.default.createElement(ea.Text,{color:"white",backgroundColor:"red"},"[ERROR]"),js.default.createElement(ea.Text,{color:"white"}," ",e)));r()}function EYt({content:e="Loading",prefix:t="cli",intervalMs:r=500,maxDots:n=6}){let[a,s]=(0,js.useState)("");return(0,js.useEffect)(()=>{let c=setInterval(()=>{s(l=>l.length>=n?"":l+".")},r);return()=>clearInterval(c)},[r,n]),js.default.createElement(ea.Text,{color:"cyan"},js.default.createElement(ET,{prefix:t}),e,a)}function m3e(e="Loading",t="cli",r=500,n=6){if(ym())return console.log(`[${t}]${e}...`),{stop:()=>{}};let a=(0,ea.render)(js.default.createElement(EYt,{content:e,prefix:t,intervalMs:r,maxDots:n}));return{stop:()=>a.unmount()}}function p3e({percent:e,width:t=30,prefix:r="cli",label:n="Progress",color:a="cyan"}){let s=Math.max(0,Math.min(100,Math.round(e))),c=Math.round(s/100*t),l=t-c,p="\u2593".repeat(c),d="\u2591".repeat(Math.max(0,l)),h=String(s).padStart(3," ");return js.default.createElement(ea.Text,null,js.default.createElement(ET,{prefix:r}),js.default.createElement(ea.Text,{color:a},n,": "),"[",js.default.createElement(ea.Text,{color:a},p),d,"] ",h,"%")}function g3e(e="Progress",t="cli",r=30,n="cyan"){if(ym()){let c=-1;return{update:(l,p)=>{let d=Math.max(0,Math.min(100,Math.round(l)));(d>=c+20||d===100)&&(c=d,console.log(`[${t}]${p!=null?p:e}: ${d}%`))},stop:()=>{}}}let a=0,s=(0,ea.render)(js.default.createElement(p3e,{percent:a,width:r,prefix:t,label:e,color:n}));return{update:(c,l)=>{a=c;let p=l!=null?l:e;s.rerender(js.default.createElement(p3e,{percent:a,width:r,prefix:t,label:p,color:n}))},stop:()=>s.unmount()}}var L$n=require("fs"),j$n=require("path");async function px(){return process.env.EDGEONE_PAGES_API_REGION?process.env.EDGEONE_PAGES_API_REGION:await pF("login_region")}function Dj(e,t){return function(){return e.apply(t,arguments)}}var{toString:wYt}=Object.prototype,{getPrototypeOf:Toe}=Object,{iterator:xH,toStringTag:y3e}=Symbol,bH=(e=>t=>{let r=wYt.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),fx=e=>(e=e.toLowerCase(),t=>bH(t)===e),EH=e=>t=>typeof t===e,{isArray:mF}=Array,Pj=EH("undefined");function Rj(e){return e!==null&&!Pj(e)&&e.constructor!==null&&!Pj(e.constructor)&&z0(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var v3e=fx("ArrayBuffer");function SYt(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&v3e(e.buffer),t}var CYt=EH("string"),z0=EH("function"),x3e=EH("number"),Fj=e=>e!==null&&typeof e=="object",_Yt=e=>e===!0||e===!1,vH=e=>{if(bH(e)!=="object")return!1;let t=Toe(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(y3e in e)&&!(xH in e)},IYt=e=>{if(!Fj(e)||Rj(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},kYt=fx("Date"),TYt=fx("File"),BYt=fx("Blob"),DYt=fx("FileList"),PYt=e=>Fj(e)&&z0(e.pipe),RYt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||z0(e.append)&&((t=bH(e))==="formdata"||t==="object"&&z0(e.toString)&&e.toString()==="[object FormData]"))},FYt=fx("URLSearchParams"),[NYt,OYt,QYt,LYt]=["ReadableStream","Request","Response","Headers"].map(fx),jYt=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Nj(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,a;if(typeof e!="object"&&(e=[e]),mF(e))for(n=0,a=e.length;n<a;n++)t.call(null,e[n],n,e);else{if(Rj(e))return;let s=r?Object.getOwnPropertyNames(e):Object.keys(e),c=s.length,l;for(n=0;n<c;n++)l=s[n],t.call(null,e[l],l,e)}}function b3e(e,t){if(Rj(e))return null;t=t.toLowerCase();let r=Object.keys(e),n=r.length,a;for(;n-- >0;)if(a=r[n],t===a.toLowerCase())return a;return null}var wT=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,E3e=e=>!Pj(e)&&e!==wT;function koe(){let{caseless:e}=E3e(this)&&this||{},t={},r=(n,a)=>{let s=e&&b3e(t,a)||a;vH(t[s])&&vH(n)?t[s]=koe(t[s],n):vH(n)?t[s]=koe({},n):mF(n)?t[s]=n.slice():t[s]=n};for(let n=0,a=arguments.length;n<a;n++)arguments[n]&&Nj(arguments[n],r);return t}var MYt=(e,t,r,{allOwnKeys:n}={})=>(Nj(t,(a,s)=>{r&&z0(a)?e[s]=Dj(a,r):e[s]=a},{allOwnKeys:n}),e),qYt=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),UYt=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},zYt=(e,t,r,n)=>{let a,s,c,l={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),s=a.length;s-- >0;)c=a[s],(!n||n(c,e,t))&&!l[c]&&(t[c]=e[c],l[c]=!0);e=r!==!1&&Toe(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},HYt=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let n=e.indexOf(t,r);return n!==-1&&n===r},$Yt=e=>{if(!e)return null;if(mF(e))return e;let t=e.length;if(!x3e(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},VYt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Toe(Uint8Array)),WYt=(e,t)=>{let n=(e&&e[xH]).call(e),a;for(;(a=n.next())&&!a.done;){let s=a.value;t.call(e,s[0],s[1])}},GYt=(e,t)=>{let r,n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},YYt=fx("HTMLFormElement"),JYt=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,a){return n.toUpperCase()+a}),A3e=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),KYt=fx("RegExp"),w3e=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),n={};Nj(r,(a,s)=>{let c;(c=t(a,s,e))!==!1&&(n[s]=c||a)}),Object.defineProperties(e,n)},XYt=e=>{w3e(e,(t,r)=>{if(z0(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=e[r];if(z0(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},ZYt=(e,t)=>{let r={},n=a=>{a.forEach(s=>{r[s]=!0})};return mF(e)?n(e):n(String(e).split(t)),r},eJt=()=>{},tJt=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function rJt(e){return!!(e&&z0(e.append)&&e[y3e]==="FormData"&&e[xH])}var nJt=e=>{let t=new Array(10),r=(n,a)=>{if(Fj(n)){if(t.indexOf(n)>=0)return;if(Rj(n))return n;if(!("toJSON"in n)){t[a]=n;let s=mF(n)?[]:{};return Nj(n,(c,l)=>{let p=r(c,a+1);!Pj(p)&&(s[l]=p)}),t[a]=void 0,s}}return n};return r(e,0)},iJt=fx("AsyncFunction"),sJt=e=>e&&(Fj(e)||z0(e))&&z0(e.then)&&z0(e.catch),S3e=((e,t)=>e?setImmediate:t?((r,n)=>(wT.addEventListener("message",({source:a,data:s})=>{a===wT&&s===r&&n.length&&n.shift()()},!1),a=>{n.push(a),wT.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",z0(wT.postMessage)),aJt=typeof queueMicrotask<"u"?queueMicrotask.bind(wT):typeof process<"u"&&process.nextTick||S3e,oJt=e=>e!=null&&z0(e[xH]),Et={isArray:mF,isArrayBuffer:v3e,isBuffer:Rj,isFormData:RYt,isArrayBufferView:SYt,isString:CYt,isNumber:x3e,isBoolean:_Yt,isObject:Fj,isPlainObject:vH,isEmptyObject:IYt,isReadableStream:NYt,isRequest:OYt,isResponse:QYt,isHeaders:LYt,isUndefined:Pj,isDate:kYt,isFile:TYt,isBlob:BYt,isRegExp:KYt,isFunction:z0,isStream:PYt,isURLSearchParams:FYt,isTypedArray:VYt,isFileList:DYt,forEach:Nj,merge:koe,extend:MYt,trim:jYt,stripBOM:qYt,inherits:UYt,toFlatObject:zYt,kindOf:bH,kindOfTest:fx,endsWith:HYt,toArray:$Yt,forEachEntry:WYt,matchAll:GYt,isHTMLForm:YYt,hasOwnProperty:A3e,hasOwnProp:A3e,reduceDescriptors:w3e,freezeMethods:XYt,toObjectSet:ZYt,toCamelCase:JYt,noop:eJt,toFiniteNumber:tJt,findKey:b3e,global:wT,isContextDefined:E3e,isSpecCompliantForm:rJt,toJSONObject:nJt,isAsyncFn:iJt,isThenable:sJt,setImmediate:S3e,asap:aJt,isIterable:oJt};function gF(e,t,r,n,a){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),a&&(this.response=a,this.status=a.status?a.status:null)}Et.inherits(gF,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Et.toJSONObject(this.config),code:this.code,status:this.status}}});var C3e=gF.prototype,_3e={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{_3e[e]={value:e}});Object.defineProperties(gF,_3e);Object.defineProperty(C3e,"isAxiosError",{value:!0});gF.from=(e,t,r,n,a,s)=>{let c=Object.create(C3e);return Et.toFlatObject(e,c,function(p){return p!==Error.prototype},l=>l!=="isAxiosError"),gF.call(c,e.message,t,r,n,a),c.cause=e,c.name=e.name,s&&Object.assign(c,s),c};var Tn=gF;var kje=ar(Ije(),1),FH=kje.default;function Joe(e){return Et.isPlainObject(e)||Et.isArray(e)}function Bje(e){return Et.endsWith(e,"[]")?e.slice(0,-2):e}function Tje(e,t,r){return e?e.concat(t).map(function(a,s){return a=Bje(a),!r&&s?"["+a+"]":a}).join(r?".":""):t}function VKt(e){return Et.isArray(e)&&!e.some(Joe)}var WKt=Et.toFlatObject(Et,{},null,function(t){return/^is[A-Z]/.test(t)});function GKt(e,t,r){if(!Et.isObject(e))throw new TypeError("target must be an object");t=t||new(FH||FormData),r=Et.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(C,S){return!Et.isUndefined(S[C])});let n=r.metaTokens,a=r.visitor||h,s=r.dots,c=r.indexes,p=(r.Blob||typeof Blob<"u"&&Blob)&&Et.isSpecCompliantForm(t);if(!Et.isFunction(a))throw new TypeError("visitor must be a function");function d(A){if(A===null)return"";if(Et.isDate(A))return A.toISOString();if(Et.isBoolean(A))return A.toString();if(!p&&Et.isBlob(A))throw new Tn("Blob is not supported. Use a Buffer instead.");return Et.isArrayBuffer(A)||Et.isTypedArray(A)?p&&typeof Blob=="function"?new Blob([A]):Buffer.from(A):A}function h(A,C,S){let k=A;if(A&&!S&&typeof A=="object"){if(Et.endsWith(C,"{}"))C=n?C:C.slice(0,-2),A=JSON.stringify(A);else if(Et.isArray(A)&&VKt(A)||(Et.isFileList(A)||Et.endsWith(C,"[]"))&&(k=Et.toArray(A)))return C=Bje(C),k.forEach(function(j,L){!(Et.isUndefined(j)||j===null)&&t.append(c===!0?Tje([C],L,s):c===null?C:C+"[]",d(j))}),!1}return Joe(A)?!0:(t.append(Tje(S,C,s),d(A)),!1)}let g=[],v=Object.assign(WKt,{defaultVisitor:h,convertValue:d,isVisitable:Joe});function b(A,C){if(!Et.isUndefined(A)){if(g.indexOf(A)!==-1)throw Error("Circular reference detected in "+C.join("."));g.push(A),Et.forEach(A,function(k,O){(!(Et.isUndefined(k)||k===null)&&a.call(t,k,Et.isString(O)?O.trim():O,C,v))===!0&&b(k,C?C.concat(O):[O])}),g.pop()}}if(!Et.isObject(e))throw new TypeError("data must be an object");return b(e),t}var c_=GKt;function Dje(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function Pje(e,t){this._pairs=[],e&&c_(e,this,t)}var Rje=Pje.prototype;Rje.append=function(t,r){this._pairs.push([t,r])};Rje.toString=function(t){let r=t?function(n){return t.call(this,n,Dje)}:Dje;return this._pairs.map(function(a){return r(a[0])+"="+r(a[1])},"").join("&")};var Fje=Pje;function YKt(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function CT(e,t,r){if(!t)return e;let n=r&&r.encode||YKt;Et.isFunction(r)&&(r={serialize:r});let a=r&&r.serialize,s;if(a?s=a(t,r):s=Et.isURLSearchParams(t)?t.toString():new Fje(t,r).toString(n),s){let c=e.indexOf("#");c!==-1&&(e=e.slice(0,c)),e+=(e.indexOf("?")===-1?"?":"&")+s}return e}var Koe=class{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){Et.forEach(this.handlers,function(n){n!==null&&t(n)})}},Xoe=Koe;var bF={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var Lje=ar(require("crypto"),1);var Nje=ar(require("url"),1),Oje=Nje.default.URLSearchParams;var Zoe="abcdefghijklmnopqrstuvwxyz",Qje="0123456789",jje={DIGIT:Qje,ALPHA:Zoe,ALPHA_DIGIT:Zoe+Zoe.toUpperCase()+Qje},JKt=(e=16,t=jje.ALPHA_DIGIT)=>{let r="",{length:n}=t,a=new Uint32Array(e);Lje.default.randomFillSync(a);for(let s=0;s<e;s++)r+=t[a[s]%n];return r},Mje={isNode:!0,classes:{URLSearchParams:Oje,FormData:FH,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:jje,generateString:JKt,protocols:["http","https","file","data"]};var rce={};nRe(rce,{hasBrowserEnv:()=>tce,hasStandardBrowserEnv:()=>KKt,hasStandardBrowserWebWorkerEnv:()=>XKt,navigator:()=>ece,origin:()=>ZKt});var tce=typeof window<"u"&&typeof document<"u",ece=typeof navigator=="object"&&navigator||void 0,KKt=tce&&(!ece||["ReactNative","NativeScript","NS"].indexOf(ece.product)<0),XKt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",ZKt=tce&&window.location.href||"http://localhost";var Lo={...rce,...Mje};function nce(e,t){return c_(e,new Lo.classes.URLSearchParams,{visitor:function(r,n,a,s){return Lo.isNode&&Et.isBuffer(r)?(this.append(n,r.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...t})}function eXt(e){return Et.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function tXt(e){let t={},r=Object.keys(e),n,a=r.length,s;for(n=0;n<a;n++)s=r[n],t[s]=e[s];return t}function rXt(e){function t(r,n,a,s){let c=r[s++];if(c==="__proto__")return!0;let l=Number.isFinite(+c),p=s>=r.length;return c=!c&&Et.isArray(a)?a.length:c,p?(Et.hasOwnProp(a,c)?a[c]=[a[c],n]:a[c]=n,!l):((!a[c]||!Et.isObject(a[c]))&&(a[c]=[]),t(r,n,a[c],s)&&Et.isArray(a[c])&&(a[c]=tXt(a[c])),!l)}if(Et.isFormData(e)&&Et.isFunction(e.entries)){let r={};return Et.forEachEntry(e,(n,a)=>{t(eXt(n),a,r,0)}),r}return null}var NH=rXt;function nXt(e,t,r){if(Et.isString(e))try{return(t||JSON.parse)(e),Et.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var ice={transitional:bF,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){let n=r.getContentType()||"",a=n.indexOf("application/json")>-1,s=Et.isObject(t);if(s&&Et.isHTMLForm(t)&&(t=new FormData(t)),Et.isFormData(t))return a?JSON.stringify(NH(t)):t;if(Et.isArrayBuffer(t)||Et.isBuffer(t)||Et.isStream(t)||Et.isFile(t)||Et.isBlob(t)||Et.isReadableStream(t))return t;if(Et.isArrayBufferView(t))return t.buffer;if(Et.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(s){if(n.indexOf("application/x-www-form-urlencoded")>-1)return nce(t,this.formSerializer).toString();if((l=Et.isFileList(t))||n.indexOf("multipart/form-data")>-1){let p=this.env&&this.env.FormData;return c_(l?{"files[]":t}:t,p&&new p,this.formSerializer)}}return s||a?(r.setContentType("application/json",!1),nXt(t)):t}],transformResponse:[function(t){let r=this.transitional||ice.transitional,n=r&&r.forcedJSONParsing,a=this.responseType==="json";if(Et.isResponse(t)||Et.isReadableStream(t))return t;if(t&&Et.isString(t)&&(n&&!this.responseType||a)){let c=!(r&&r.silentJSONParsing)&&a;try{return JSON.parse(t)}catch(l){if(c)throw l.name==="SyntaxError"?Tn.from(l,Tn.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Lo.classes.FormData,Blob:Lo.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Et.forEach(["delete","get","head","post","put","patch"],e=>{ice.headers[e]={}});var EF=ice;var iXt=Et.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),qje=e=>{let t={},r,n,a;return e&&e.split(`
|
|
522
|
+
`,"f"),ri(this,Ff,qe(this,Ff,"f")+t.join(" "),"f")}}}[Kie](t){MR(qe(this,wi,"f")).forEach(r=>{if((a=>a==="configObjects")(r))return;let n=qe(this,wi,"f")[r];Array.isArray(n)?n.includes(t)&&n.splice(n.indexOf(t),1):typeof n=="object"&&delete n[t]}),delete qe(this,_s,"f").getDescriptions()[t]}[HRe](t,r,n){qe(this,mz,"f")[n]||(qe(this,ps,"f").process.emitWarning(t,r),qe(this,mz,"f")[n]=!0)}[$Re](){qe(this,gz,"f").push({options:qe(this,wi,"f"),configObjects:qe(this,wi,"f").configObjects.slice(0),exitProcess:qe(this,xy,"f"),groups:qe(this,oE,"f"),strict:qe(this,iT,"f"),strictCommands:qe(this,sT,"f"),strictOptions:qe(this,aT,"f"),completionCommand:qe(this,eA,"f"),output:qe(this,Ff,"f"),exitError:qe(this,Z2,"f"),hasOutput:qe(this,tA,"f"),parsed:this.parsed,parseFn:qe(this,rA,"f"),parseContext:qe(this,rT,"f")}),qe(this,_s,"f").freeze(),qe(this,Nl,"f").freeze(),qe(this,ap,"f").freeze(),qe(this,by,"f").freeze()}[VRe](){let t="",r;return/\b(node|iojs|electron)(\.exe)?$/.test(qe(this,ps,"f").process.argv()[0])?r=qe(this,ps,"f").process.argv().slice(1,2):r=qe(this,ps,"f").process.argv().slice(0,1),t=r.map(n=>{let a=this[sFe](qe(this,eT,"f"),n);return n.match(/^(\/|([a-zA-Z]:)?\\)/)&&a.length<n.length?a:n}).join(" ").trim(),qe(this,ps,"f").getEnv("_")&&qe(this,ps,"f").getProcessArgvBin()===qe(this,ps,"f").getEnv("_")&&(t=qe(this,ps,"f").getEnv("_").replace(`${qe(this,ps,"f").path.dirname(qe(this,ps,"f").process.execPath())}/`,"")),t}[oT](){return qe(this,vz,"f")}[WRe](){return qe(this,bz,"f")}[Xie](){if(!qe(this,tT,"f"))return;let t=qe(this,ps,"f").getEnv("LC_ALL")||qe(this,ps,"f").getEnv("LC_MESSAGES")||qe(this,ps,"f").getEnv("LANG")||qe(this,ps,"f").getEnv("LANGUAGE")||"en_US";this.locale(t.replace(/[.:].*/,""))}[GRe](){return this[Zie]().version||"unknown"}[YRe](t){let r=t["--"]?t["--"]:t._;for(let n=0,a;(a=r[n])!==void 0;n++)qe(this,ps,"f").Parser.looksLikeNumber(a)&&Number.isSafeInteger(Math.floor(parseFloat(`${a}`)))&&(r[n]=Number(a));return t}[Zie](t){let r=t||"*";if(qe(this,zR,"f")[r])return qe(this,zR,"f")[r];let n={};try{let a=t||qe(this,ps,"f").mainFilename;!t&&qe(this,ps,"f").path.extname(a)&&(a=qe(this,ps,"f").path.dirname(a));let s=qe(this,ps,"f").findUp(a,(c,l)=>{if(l.includes("package.json"))return"package.json"});Am(s,void 0,qe(this,ps,"f")),n=JSON.parse(qe(this,ps,"f").readFileSync(s,"utf8"))}catch{}return qe(this,zR,"f")[r]=n||{},qe(this,zR,"f")[r]}[t_](t,r){r=[].concat(r),r.forEach(n=>{n=this[rse](n),qe(this,wi,"f")[t].push(n)})}[HR](t,r,n,a){this[tse](t,r,n,a,(s,c,l)=>{qe(this,wi,"f")[s][c]=l})}[ese](t,r,n,a){this[tse](t,r,n,a,(s,c,l)=>{qe(this,wi,"f")[s][c]=(qe(this,wi,"f")[s][c]||[]).concat(l)})}[tse](t,r,n,a,s){if(Array.isArray(n))n.forEach(c=>{t(c,a)});else if((c=>typeof c=="object")(n))for(let c of MR(n))t(c,n[c]);else s(r,this[rse](n),a)}[rse](t){return t==="__proto__"?"___proto___":t}[nse](t,r){return this[HR](this[nse].bind(this),"key",t,r),this}[ise](){var t,r,n,a,s,c,l,p,d,h,g,v;let b=qe(this,gz,"f").pop();Am(b,void 0,qe(this,ps,"f"));let A;t=this,r=this,n=this,a=this,s=this,c=this,l=this,p=this,d=this,h=this,g=this,v=this,{options:{set value(C){ri(t,wi,C,"f")}}.value,configObjects:A,exitProcess:{set value(C){ri(r,xy,C,"f")}}.value,groups:{set value(C){ri(n,oE,C,"f")}}.value,output:{set value(C){ri(a,Ff,C,"f")}}.value,exitError:{set value(C){ri(s,Z2,C,"f")}}.value,hasOutput:{set value(C){ri(c,tA,C,"f")}}.value,parsed:this.parsed,strict:{set value(C){ri(l,iT,C,"f")}}.value,strictCommands:{set value(C){ri(p,sT,C,"f")}}.value,strictOptions:{set value(C){ri(d,aT,C,"f")}}.value,completionCommand:{set value(C){ri(h,eA,C,"f")}}.value,parseFn:{set value(C){ri(g,rA,C,"f")}}.value,parseContext:{set value(C){ri(v,rT,C,"f")}}.value}=b,qe(this,wi,"f").configObjects=A,qe(this,_s,"f").unfreeze(),qe(this,Nl,"f").unfreeze(),qe(this,ap,"f").unfreeze(),qe(this,by,"f").unfreeze()}[JRe](t,r){return Zk(r,n=>(t(n),n))}getInternalMethods(){return{getCommandInstance:this[KRe].bind(this),getContext:this[XRe].bind(this),getHasOutput:this[ZRe].bind(this),getLoggerInstance:this[eFe].bind(this),getParseContext:this[tFe].bind(this),getParserConfiguration:this[oT].bind(this),getUsageConfiguration:this[WRe].bind(this),getUsageInstance:this[rFe].bind(this),getValidationInstance:this[nFe].bind(this),hasParseCallback:this[Ez].bind(this),isGlobalContext:this[iFe].bind(this),postProcess:this[cT].bind(this),reset:this[sse].bind(this),runValidation:this[ase].bind(this),runYargsParserAndExecuteCommands:this[BL].bind(this),setHasOutput:this[aFe].bind(this)}}[KRe](){return qe(this,ap,"f")}[XRe](){return qe(this,TL,"f")}[ZRe](){return qe(this,tA,"f")}[eFe](){return qe(this,UR,"f")}[tFe](){return qe(this,rT,"f")||{}}[rFe](){return qe(this,_s,"f")}[nFe](){return qe(this,Nl,"f")}[Ez](){return!!qe(this,rA,"f")}[iFe](){return qe(this,Az,"f")}[cT](t,r,n,a){return n||gu(t)||(r||(t=this[URe](t)),(this[oT]()["parse-positional-numbers"]||this[oT]()["parse-positional-numbers"]===void 0)&&(t=this[YRe](t)),a&&(t=Xk(t,this,qe(this,by,"f").getMiddleware(),!1))),t}[sse](t={}){ri(this,wi,qe(this,wi,"f")||{},"f");let r={};r.local=qe(this,wi,"f").local||[],r.configObjects=qe(this,wi,"f").configObjects||[];let n={};r.local.forEach(c=>{n[c]=!0,(t[c]||[]).forEach(l=>{n[l]=!0})}),Object.assign(qe(this,nT,"f"),Object.keys(qe(this,oE,"f")).reduce((c,l)=>{let p=qe(this,oE,"f")[l].filter(d=>!(d in n));return p.length>0&&(c[l]=p),c},{})),ri(this,oE,{},"f");let a=["array","boolean","string","skipValidation","count","normalize","number","hiddenOptions"],s=["narg","key","alias","default","defaultDescription","config","choices","demandedOptions","demandedCommands","deprecatedOptions"];return a.forEach(c=>{r[c]=(qe(this,wi,"f")[c]||[]).filter(l=>!n[l])}),s.forEach(c=>{r[c]=K2(qe(this,wi,"f")[c],l=>!n[l])}),r.envPrefix=qe(this,wi,"f").envPrefix,ri(this,wi,r,"f"),ri(this,_s,qe(this,_s,"f")?qe(this,_s,"f").reset(n):NRe(this,qe(this,ps,"f")),"f"),ri(this,Nl,qe(this,Nl,"f")?qe(this,Nl,"f").reset(n):qRe(this,qe(this,_s,"f"),qe(this,ps,"f")),"f"),ri(this,ap,qe(this,ap,"f")?qe(this,ap,"f").reset():PRe(qe(this,_s,"f"),qe(this,Nl,"f"),qe(this,by,"f"),qe(this,ps,"f")),"f"),qe(this,vy,"f")||ri(this,vy,LRe(this,qe(this,_s,"f"),qe(this,ap,"f"),qe(this,ps,"f")),"f"),qe(this,by,"f").reset(),ri(this,eA,null,"f"),ri(this,Ff,"","f"),ri(this,Z2,null,"f"),ri(this,tA,!1,"f"),this.parsed=!1,this}[sFe](t,r){return qe(this,ps,"f").path.relative(t,r)}[BL](t,r,n,a=0,s=!1){let c=!!n||s;t=t||qe(this,e_,"f"),qe(this,wi,"f").__=qe(this,ps,"f").y18n.__,qe(this,wi,"f").configuration=this[oT]();let l=!!qe(this,wi,"f").configuration["populate--"],p=Object.assign({},qe(this,wi,"f").configuration,{"populate--":!0}),d=qe(this,ps,"f").Parser.detailed(t,Object.assign({},qe(this,wi,"f"),{configuration:{"parse-positional-numbers":!1,...p}})),h=Object.assign(d.argv,qe(this,rT,"f")),g,v=d.aliases,b=!1,A=!1;Object.keys(h).forEach(C=>{C===qe(this,Ey,"f")&&h[C]?b=!0:C===qe(this,cE,"f")&&h[C]&&(A=!0)}),h.$0=this.$0,this.parsed=d,a===0&&qe(this,_s,"f").clearCachedHelpMessage();try{if(this[Xie](),r)return this[cT](h,l,!!n,!1);qe(this,Ey,"f")&&[qe(this,Ey,"f")].concat(v[qe(this,Ey,"f")]||[]).filter(j=>j.length>1).includes(""+h._[h._.length-1])&&(h._.pop(),b=!0),ri(this,Az,!1,"f");let C=qe(this,ap,"f").getCommands(),S=qe(this,vy,"f").completionKey in h,k=b||S||s;if(h._.length){if(C.length){let O;for(let j=a||0,L;h._[j]!==void 0;j++)if(L=String(h._[j]),C.includes(L)&&L!==qe(this,eA,"f")){let $=qe(this,ap,"f").runCommand(L,this,d,j+1,s,b||A||s);return this[cT]($,l,!!n,!1)}else if(!O&&L!==qe(this,eA,"f")){O=L;break}!qe(this,ap,"f").hasDefaultCommand()&&qe(this,xz,"f")&&O&&!k&&qe(this,Nl,"f").recommendCommands(O,C)}qe(this,eA,"f")&&h._.includes(qe(this,eA,"f"))&&!S&&(qe(this,xy,"f")&&X2(!0),this.showCompletionScript(),this.exit(0))}if(qe(this,ap,"f").hasDefaultCommand()&&!k){let O=qe(this,ap,"f").runCommand(null,this,d,0,s,b||A||s);return this[cT](O,l,!!n,!1)}if(S){qe(this,xy,"f")&&X2(!0),t=[].concat(t);let O=t.slice(t.indexOf(`--${qe(this,vy,"f").completionKey}`)+1);return qe(this,vy,"f").getCompletion(O,(j,L)=>{if(j)throw new mu(j.message);(L||[]).forEach($=>{qe(this,UR,"f").log($)}),this.exit(0)}),this[cT](h,!l,!!n,!1)}if(qe(this,tA,"f")||(b?(qe(this,xy,"f")&&X2(!0),c=!0,this.showHelp("log"),this.exit(0)):A&&(qe(this,xy,"f")&&X2(!0),c=!0,qe(this,_s,"f").showVersion("log"),this.exit(0))),!c&&qe(this,wi,"f").skipValidation.length>0&&(c=Object.keys(h).some(O=>qe(this,wi,"f").skipValidation.indexOf(O)>=0&&h[O]===!0)),!c){if(d.error)throw new mu(d.error.message);if(!S){let O=this[ase](v,{},d.error);n||(g=Xk(h,this,qe(this,by,"f").getMiddleware(),!0)),g=this[JRe](O,g!=null?g:h),gu(g)&&!n&&(g=g.then(()=>Xk(h,this,qe(this,by,"f").getMiddleware(),!1)))}}}catch(C){if(C instanceof mu)qe(this,_s,"f").fail(C.message,C);else throw C}return this[cT](g!=null?g:h,l,!!n,!0)}[ase](t,r,n,a){let s={...this.getDemandedOptions()};return c=>{if(n)throw new mu(n.message);qe(this,Nl,"f").nonOptionCount(c),qe(this,Nl,"f").requiredArguments(c,s);let l=!1;qe(this,sT,"f")&&(l=qe(this,Nl,"f").unknownCommands(c)),qe(this,iT,"f")&&!l?qe(this,Nl,"f").unknownArguments(c,t,r,!!a):qe(this,aT,"f")&&qe(this,Nl,"f").unknownArguments(c,t,{},!1,!1),qe(this,Nl,"f").limitedChoices(c),qe(this,Nl,"f").implications(c),qe(this,Nl,"f").conflicting(c)}}[aFe](){ri(this,tA,!0,"f")}[uT](t){if(typeof t=="string")qe(this,wi,"f").key[t]=!0;else for(let r of t)qe(this,wi,"f").key[r]=!0}};function RRe(e){return!!e&&typeof e.getInternalMethods=="function"}var zzt=oFe($ie),cFe=zzt;var lT={name:"edgeone",version:"1.3.9",description:"Command-line interface for TencentCloud Pages Functions",bin:{edgeone:"./edgeone-bin/edgeone.js"},files:["./edgeone-bin/edgeone.js","./edgeone-dist/cli.js","./edgeone-dist/templates","./edgeone-dist/pages/dev/runner-worker.js"],author:"",keywords:["tencent","edgeone","edgefunctions","edgeone","cli","typescript"],scripts:{clean:"rimraf ./edgeone-dist ./edgeone-bin ./libs-node-ai ./libs-kv-client",bundle:"node -r esbuild-register ./scripts/bundle.ts",watch:"node -r esbuild-register ./scripts/bundle.ts watch",build:"npm run clean && npm run build:pages-ai && npm run build:kv-client && npm run bundle","build:pages-ai":"node ./scripts/build-pages-ai.js","build:kv-client":"node ./scripts/build-kv-client.js",format:'prettier --write "src/**/*.{ts,tsx,js,jsx,json,md}" "scripts/**/*.{ts,js}" "*.{json,md}"',prepack:"npm run build",prepublishOnly:"npm run build",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage"},dependencies:{"@edgeone/framework-detect":"^0.0.2","@edgeone/nuxt-pages":"1.1.0","@edgeone/opennextjs-pages":"0.2.2",archiver:"^7.0.1",chokidar:"^4.0.1","common-path-prefix":"^1.0.0","cos-nodejs-sdk-v5":"^2.14.7","cross-spawn":"^7.0.6",crypto:"^1.0.1","detect-port":"^2.1.0",esbuild:"^0.19.2","esbuild-plugin-polyfill-node":"^0.3.0","esbuild-plugin-vue":"^0.2.4","fast-glob":"^3.3.0","fs-extra":"^11.3.1","ink-table":"^3.1.0",inquirer:"^8.2.4",install:"^0.13.0",lodash:"^4.17.21","mime-types":"^3.0.1",minimatch:"^9.0.5","node-persist":"^4.0.3",npm:"^10.9.1",open:"^8.4.2","p-map":"^5.5.0","parse-gitignore":"^2.0.0",portfinder:"^1.0.32",undici:"^5.29.0",vitest:"^4.0.17"},devDependencies:{"@babel/generator":"^7.28.0","@babel/parser":"^7.28.0","@babel/traverse":"^7.28.0","@babel/types":"^7.28.0","@tencent/capi-nodejs-sdk":"^2.3.2","@types/http-proxy":"^1.17.12","@types/inquirer":"^9.0.8","@types/ip":"^1.1.0","@types/lodash":"^4.14.198","@types/prompts":"^2.4.4","@types/react":"^17.0.2","@types/uuid":"^9.0.3","@types/ws":"^8.5.7","@types/yargs":"^17.0.24","@vitest/coverage-v8":"^4.0.17",axios:"^1.7.9",chalk:"^5.3.0",cookie:"^1.0.2",dotenv:"^16.3.1","esbuild-register":"^3.6.0",execa:"^7.1.1","http-proxy":"^1.18.1",husky:"^8.0.3",ink:"^3.2.0",ip:"^2.0.1",json5:"^2.2.3","lint-staged":"^15.2.0",lodash:"^4.17.21",moment:"^2.30.1","node-fetch":"^3.3.2",prettier:"^3.1.1",prompts:"^2.4.2",react:"^17.0.2",rimraf:"^6.0.1",semiver:"^1.1.0",sirv:"^2.0.3","tencentcloud-cls-sdk-js-web":"^1.0.13","ts-node":"^10.9.2",typescript:"^5.9.3","update-check":"^1.5.4",uuid:"^9.0.0",ws:"^8.14.2",yargs:"^17.6.2",zod:"^3.23.8","zod-to-json-schema":"^3.23.5"},engines:{node:">=12"},"lint-staged":{"*.{ts,tsx,js,jsx,json,md}":["prettier --write"]}};var cse=class{log(t,r){try{let n=this.format(r),a=JSON.stringify({key:t,value:n});process.send(a)}catch{}}format(t){return typeof t=="object"?JSON.stringify(t):typeof t=="number"?String(t):t}},$zt=new cse,wz=$zt;var T5e=ar(Pc()),B5e=ar(oF()),D5e=ar(poe());var c3e=ar(moe()),dS=ar(require("fs"));var goe=ar(require("path"));function Sp(e,t){return goe.default.join(e,t)}function dr(e){return Sp(process.cwd(),e)}function JQe(e){return goe.default.dirname(e)}var mH=o3e(),Eoe=require("path");function woe(){try{mH.initSync({dir:vYt()})}catch(e){console.error("[File] initStorage error",e)}}async function lF(e,t,r){woe(),await mH.setItem(e,t).catch(n=>{console.error("[File] setLocalData error",n)}),r==null||r()}async function pF(e){return woe(),await mH.getItem(e).catch(r=>{console.error("[File] getLocalData error",r)})}async function gH(e){woe(),await mH.removeItem(e).catch(t=>{console.error("[File] removeLocalData error",t)})}function vYt(){try{let e=Eoe.parse(process.cwd()).root,t=process.cwd(),n=Eoe.relative(e,t).split(Eoe.sep).length-2;return`${new Array(Math.max(0,n)).fill("../").join("")}.edgeone`}catch{return".edgeone"}}function u3e(e){return dS.default.statSync(e)}function xYt(e){return dS.default.mkdirSync(e,{recursive:!0})}function bYt(e){return dS.default.existsSync(e)}function fF(e){return dS.default.existsSync(e)}function AH(e,t="utf-8"){return dS.default.readFileSync(e,t)}function U0(e){let t=AH(e);return JSON.parse(t)}function dF(e){let t=AH(e);return c3e.default.parse(t)}function xh(e,t,r="utf-8"){let n=JQe(e);return bYt(n)||xYt(n),dS.default.writeFileSync(e,t,r)}function Soe(e,t){return fF(e)?dS.default.appendFileSync(e,t):dS.default.writeFileSync(e,t)}var ea=ar(oF()),js=ar(Pc()),Bj=ar(l3e());function ym(){return!process.stdout.isTTY||process.env.FORCE_NON_TTY==="1"}function ET({prefix:e="cli"}){return js.default.createElement(ea.Text,{color:"grey"},"[",e,"]")}function jr(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m\x1B[31m[\u2718] \x1B[0m${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,null,js.default.createElement(ET,{prefix:t}),js.default.createElement(ea.Text,{color:"red"},"[\u2718] "),e));r()}function ya(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m\x1B[32m[\u2714] \x1B[0m${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,null,js.default.createElement(ET,{prefix:t}),js.default.createElement(ea.Text,{color:"green"},"[\u2714] "),e));r()}function vm(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m \x1B[33mWARNING:\x1B[0m ${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,null,js.default.createElement(ET,{prefix:t}),js.default.createElement(ea.Text,{color:"orange"},"\u2757\uFE0F "),e));r()}function vc(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m\x1B[36m ${e}\x1B[0m`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,{color:"cyan"},js.default.createElement(ET,{prefix:t}),e));r()}function yH(e){if(ym()){console.log(e);return}let{unmount:t}=(0,ea.render)(js.default.createElement(ea.Text,{color:"cyan"},e));t()}function rn(e,t="cli"){if(ym()){console.log(`\x1B[90m[${t}]\x1B[0m\x1B[37m ${e}\x1B[0m`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Text,{color:"white"},js.default.createElement(ET,{prefix:t}),e));r()}function f3e(e,t,r="cli"){let n=t;if(t.includes("http")&&(n=new URL(t).pathname),ym()){console.log(`${e} ${n}`);return}let{unmount:a}=(0,ea.render)(js.default.createElement(ea.Text,{color:"grey"},e," ",n));a()}function _oe({timestamp:e}){return js.default.createElement(ea.Box,{width:13},js.default.createElement(ea.Text,{color:"grey"},(0,Bj.default)(e).format("HH:mm:ss.SSS")))}function d3e(e,t){if(ym()){console.log(`${(0,Bj.default)(t).format("HH:mm:ss.SSS")} ${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Box,null,js.default.createElement(_oe,{timestamp:t}),js.default.createElement(ea.Text,{color:"white"},e)));r()}function h3e(e,t){if(ym()){console.log(`${(0,Bj.default)(t).format("HH:mm:ss.SSS")} [WARNING] ${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Box,null,js.default.createElement(_oe,{timestamp:t}),js.default.createElement(ea.Text,{color:"white",backgroundColor:"yellow"},"[WARNING]"),js.default.createElement(ea.Text,null," ",e)));r()}function Ioe(e,t){if(ym()){console.log(`${(0,Bj.default)(t).format("HH:mm:ss.SSS")} [ERROR] ${e}`);return}let{unmount:r}=(0,ea.render)(js.default.createElement(ea.Box,null,js.default.createElement(_oe,{timestamp:t}),js.default.createElement(ea.Text,{color:"white",backgroundColor:"red"},"[ERROR]"),js.default.createElement(ea.Text,{color:"white"}," ",e)));r()}function EYt({content:e="Loading",prefix:t="cli",intervalMs:r=500,maxDots:n=6}){let[a,s]=(0,js.useState)("");return(0,js.useEffect)(()=>{let c=setInterval(()=>{s(l=>l.length>=n?"":l+".")},r);return()=>clearInterval(c)},[r,n]),js.default.createElement(ea.Text,{color:"cyan"},js.default.createElement(ET,{prefix:t}),e,a)}function m3e(e="Loading",t="cli",r=500,n=6){if(ym())return console.log(`[${t}]${e}...`),{stop:()=>{}};let a=(0,ea.render)(js.default.createElement(EYt,{content:e,prefix:t,intervalMs:r,maxDots:n}));return{stop:()=>a.unmount()}}function p3e({percent:e,width:t=30,prefix:r="cli",label:n="Progress",color:a="cyan"}){let s=Math.max(0,Math.min(100,Math.round(e))),c=Math.round(s/100*t),l=t-c,p="\u2593".repeat(c),d="\u2591".repeat(Math.max(0,l)),h=String(s).padStart(3," ");return js.default.createElement(ea.Text,null,js.default.createElement(ET,{prefix:r}),js.default.createElement(ea.Text,{color:a},n,": "),"[",js.default.createElement(ea.Text,{color:a},p),d,"] ",h,"%")}function g3e(e="Progress",t="cli",r=30,n="cyan"){if(ym()){let c=-1;return{update:(l,p)=>{let d=Math.max(0,Math.min(100,Math.round(l)));(d>=c+20||d===100)&&(c=d,console.log(`[${t}]${p!=null?p:e}: ${d}%`))},stop:()=>{}}}let a=0,s=(0,ea.render)(js.default.createElement(p3e,{percent:a,width:r,prefix:t,label:e,color:n}));return{update:(c,l)=>{a=c;let p=l!=null?l:e;s.rerender(js.default.createElement(p3e,{percent:a,width:r,prefix:t,label:p,color:n}))},stop:()=>s.unmount()}}var L$n=require("fs"),j$n=require("path");async function px(){return process.env.EDGEONE_PAGES_API_REGION?process.env.EDGEONE_PAGES_API_REGION:await pF("login_region")}function Dj(e,t){return function(){return e.apply(t,arguments)}}var{toString:wYt}=Object.prototype,{getPrototypeOf:Toe}=Object,{iterator:xH,toStringTag:y3e}=Symbol,bH=(e=>t=>{let r=wYt.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),fx=e=>(e=e.toLowerCase(),t=>bH(t)===e),EH=e=>t=>typeof t===e,{isArray:mF}=Array,Pj=EH("undefined");function Rj(e){return e!==null&&!Pj(e)&&e.constructor!==null&&!Pj(e.constructor)&&z0(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var v3e=fx("ArrayBuffer");function SYt(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&v3e(e.buffer),t}var CYt=EH("string"),z0=EH("function"),x3e=EH("number"),Fj=e=>e!==null&&typeof e=="object",_Yt=e=>e===!0||e===!1,vH=e=>{if(bH(e)!=="object")return!1;let t=Toe(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(y3e in e)&&!(xH in e)},IYt=e=>{if(!Fj(e)||Rj(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},kYt=fx("Date"),TYt=fx("File"),BYt=fx("Blob"),DYt=fx("FileList"),PYt=e=>Fj(e)&&z0(e.pipe),RYt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||z0(e.append)&&((t=bH(e))==="formdata"||t==="object"&&z0(e.toString)&&e.toString()==="[object FormData]"))},FYt=fx("URLSearchParams"),[NYt,OYt,QYt,LYt]=["ReadableStream","Request","Response","Headers"].map(fx),jYt=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Nj(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,a;if(typeof e!="object"&&(e=[e]),mF(e))for(n=0,a=e.length;n<a;n++)t.call(null,e[n],n,e);else{if(Rj(e))return;let s=r?Object.getOwnPropertyNames(e):Object.keys(e),c=s.length,l;for(n=0;n<c;n++)l=s[n],t.call(null,e[l],l,e)}}function b3e(e,t){if(Rj(e))return null;t=t.toLowerCase();let r=Object.keys(e),n=r.length,a;for(;n-- >0;)if(a=r[n],t===a.toLowerCase())return a;return null}var wT=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,E3e=e=>!Pj(e)&&e!==wT;function koe(){let{caseless:e}=E3e(this)&&this||{},t={},r=(n,a)=>{let s=e&&b3e(t,a)||a;vH(t[s])&&vH(n)?t[s]=koe(t[s],n):vH(n)?t[s]=koe({},n):mF(n)?t[s]=n.slice():t[s]=n};for(let n=0,a=arguments.length;n<a;n++)arguments[n]&&Nj(arguments[n],r);return t}var MYt=(e,t,r,{allOwnKeys:n}={})=>(Nj(t,(a,s)=>{r&&z0(a)?e[s]=Dj(a,r):e[s]=a},{allOwnKeys:n}),e),qYt=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),UYt=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},zYt=(e,t,r,n)=>{let a,s,c,l={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),s=a.length;s-- >0;)c=a[s],(!n||n(c,e,t))&&!l[c]&&(t[c]=e[c],l[c]=!0);e=r!==!1&&Toe(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},HYt=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let n=e.indexOf(t,r);return n!==-1&&n===r},$Yt=e=>{if(!e)return null;if(mF(e))return e;let t=e.length;if(!x3e(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},VYt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Toe(Uint8Array)),WYt=(e,t)=>{let n=(e&&e[xH]).call(e),a;for(;(a=n.next())&&!a.done;){let s=a.value;t.call(e,s[0],s[1])}},GYt=(e,t)=>{let r,n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},YYt=fx("HTMLFormElement"),JYt=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,a){return n.toUpperCase()+a}),A3e=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),KYt=fx("RegExp"),w3e=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),n={};Nj(r,(a,s)=>{let c;(c=t(a,s,e))!==!1&&(n[s]=c||a)}),Object.defineProperties(e,n)},XYt=e=>{w3e(e,(t,r)=>{if(z0(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=e[r];if(z0(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},ZYt=(e,t)=>{let r={},n=a=>{a.forEach(s=>{r[s]=!0})};return mF(e)?n(e):n(String(e).split(t)),r},eJt=()=>{},tJt=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function rJt(e){return!!(e&&z0(e.append)&&e[y3e]==="FormData"&&e[xH])}var nJt=e=>{let t=new Array(10),r=(n,a)=>{if(Fj(n)){if(t.indexOf(n)>=0)return;if(Rj(n))return n;if(!("toJSON"in n)){t[a]=n;let s=mF(n)?[]:{};return Nj(n,(c,l)=>{let p=r(c,a+1);!Pj(p)&&(s[l]=p)}),t[a]=void 0,s}}return n};return r(e,0)},iJt=fx("AsyncFunction"),sJt=e=>e&&(Fj(e)||z0(e))&&z0(e.then)&&z0(e.catch),S3e=((e,t)=>e?setImmediate:t?((r,n)=>(wT.addEventListener("message",({source:a,data:s})=>{a===wT&&s===r&&n.length&&n.shift()()},!1),a=>{n.push(a),wT.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",z0(wT.postMessage)),aJt=typeof queueMicrotask<"u"?queueMicrotask.bind(wT):typeof process<"u"&&process.nextTick||S3e,oJt=e=>e!=null&&z0(e[xH]),Et={isArray:mF,isArrayBuffer:v3e,isBuffer:Rj,isFormData:RYt,isArrayBufferView:SYt,isString:CYt,isNumber:x3e,isBoolean:_Yt,isObject:Fj,isPlainObject:vH,isEmptyObject:IYt,isReadableStream:NYt,isRequest:OYt,isResponse:QYt,isHeaders:LYt,isUndefined:Pj,isDate:kYt,isFile:TYt,isBlob:BYt,isRegExp:KYt,isFunction:z0,isStream:PYt,isURLSearchParams:FYt,isTypedArray:VYt,isFileList:DYt,forEach:Nj,merge:koe,extend:MYt,trim:jYt,stripBOM:qYt,inherits:UYt,toFlatObject:zYt,kindOf:bH,kindOfTest:fx,endsWith:HYt,toArray:$Yt,forEachEntry:WYt,matchAll:GYt,isHTMLForm:YYt,hasOwnProperty:A3e,hasOwnProp:A3e,reduceDescriptors:w3e,freezeMethods:XYt,toObjectSet:ZYt,toCamelCase:JYt,noop:eJt,toFiniteNumber:tJt,findKey:b3e,global:wT,isContextDefined:E3e,isSpecCompliantForm:rJt,toJSONObject:nJt,isAsyncFn:iJt,isThenable:sJt,setImmediate:S3e,asap:aJt,isIterable:oJt};function gF(e,t,r,n,a){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),a&&(this.response=a,this.status=a.status?a.status:null)}Et.inherits(gF,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Et.toJSONObject(this.config),code:this.code,status:this.status}}});var C3e=gF.prototype,_3e={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{_3e[e]={value:e}});Object.defineProperties(gF,_3e);Object.defineProperty(C3e,"isAxiosError",{value:!0});gF.from=(e,t,r,n,a,s)=>{let c=Object.create(C3e);return Et.toFlatObject(e,c,function(p){return p!==Error.prototype},l=>l!=="isAxiosError"),gF.call(c,e.message,t,r,n,a),c.cause=e,c.name=e.name,s&&Object.assign(c,s),c};var Tn=gF;var kje=ar(Ije(),1),FH=kje.default;function Joe(e){return Et.isPlainObject(e)||Et.isArray(e)}function Bje(e){return Et.endsWith(e,"[]")?e.slice(0,-2):e}function Tje(e,t,r){return e?e.concat(t).map(function(a,s){return a=Bje(a),!r&&s?"["+a+"]":a}).join(r?".":""):t}function VKt(e){return Et.isArray(e)&&!e.some(Joe)}var WKt=Et.toFlatObject(Et,{},null,function(t){return/^is[A-Z]/.test(t)});function GKt(e,t,r){if(!Et.isObject(e))throw new TypeError("target must be an object");t=t||new(FH||FormData),r=Et.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(C,S){return!Et.isUndefined(S[C])});let n=r.metaTokens,a=r.visitor||h,s=r.dots,c=r.indexes,p=(r.Blob||typeof Blob<"u"&&Blob)&&Et.isSpecCompliantForm(t);if(!Et.isFunction(a))throw new TypeError("visitor must be a function");function d(A){if(A===null)return"";if(Et.isDate(A))return A.toISOString();if(Et.isBoolean(A))return A.toString();if(!p&&Et.isBlob(A))throw new Tn("Blob is not supported. Use a Buffer instead.");return Et.isArrayBuffer(A)||Et.isTypedArray(A)?p&&typeof Blob=="function"?new Blob([A]):Buffer.from(A):A}function h(A,C,S){let k=A;if(A&&!S&&typeof A=="object"){if(Et.endsWith(C,"{}"))C=n?C:C.slice(0,-2),A=JSON.stringify(A);else if(Et.isArray(A)&&VKt(A)||(Et.isFileList(A)||Et.endsWith(C,"[]"))&&(k=Et.toArray(A)))return C=Bje(C),k.forEach(function(j,L){!(Et.isUndefined(j)||j===null)&&t.append(c===!0?Tje([C],L,s):c===null?C:C+"[]",d(j))}),!1}return Joe(A)?!0:(t.append(Tje(S,C,s),d(A)),!1)}let g=[],v=Object.assign(WKt,{defaultVisitor:h,convertValue:d,isVisitable:Joe});function b(A,C){if(!Et.isUndefined(A)){if(g.indexOf(A)!==-1)throw Error("Circular reference detected in "+C.join("."));g.push(A),Et.forEach(A,function(k,O){(!(Et.isUndefined(k)||k===null)&&a.call(t,k,Et.isString(O)?O.trim():O,C,v))===!0&&b(k,C?C.concat(O):[O])}),g.pop()}}if(!Et.isObject(e))throw new TypeError("data must be an object");return b(e),t}var c_=GKt;function Dje(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function Pje(e,t){this._pairs=[],e&&c_(e,this,t)}var Rje=Pje.prototype;Rje.append=function(t,r){this._pairs.push([t,r])};Rje.toString=function(t){let r=t?function(n){return t.call(this,n,Dje)}:Dje;return this._pairs.map(function(a){return r(a[0])+"="+r(a[1])},"").join("&")};var Fje=Pje;function YKt(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function CT(e,t,r){if(!t)return e;let n=r&&r.encode||YKt;Et.isFunction(r)&&(r={serialize:r});let a=r&&r.serialize,s;if(a?s=a(t,r):s=Et.isURLSearchParams(t)?t.toString():new Fje(t,r).toString(n),s){let c=e.indexOf("#");c!==-1&&(e=e.slice(0,c)),e+=(e.indexOf("?")===-1?"?":"&")+s}return e}var Koe=class{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){Et.forEach(this.handlers,function(n){n!==null&&t(n)})}},Xoe=Koe;var bF={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var Lje=ar(require("crypto"),1);var Nje=ar(require("url"),1),Oje=Nje.default.URLSearchParams;var Zoe="abcdefghijklmnopqrstuvwxyz",Qje="0123456789",jje={DIGIT:Qje,ALPHA:Zoe,ALPHA_DIGIT:Zoe+Zoe.toUpperCase()+Qje},JKt=(e=16,t=jje.ALPHA_DIGIT)=>{let r="",{length:n}=t,a=new Uint32Array(e);Lje.default.randomFillSync(a);for(let s=0;s<e;s++)r+=t[a[s]%n];return r},Mje={isNode:!0,classes:{URLSearchParams:Oje,FormData:FH,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:jje,generateString:JKt,protocols:["http","https","file","data"]};var rce={};nRe(rce,{hasBrowserEnv:()=>tce,hasStandardBrowserEnv:()=>KKt,hasStandardBrowserWebWorkerEnv:()=>XKt,navigator:()=>ece,origin:()=>ZKt});var tce=typeof window<"u"&&typeof document<"u",ece=typeof navigator=="object"&&navigator||void 0,KKt=tce&&(!ece||["ReactNative","NativeScript","NS"].indexOf(ece.product)<0),XKt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",ZKt=tce&&window.location.href||"http://localhost";var Lo={...rce,...Mje};function nce(e,t){return c_(e,new Lo.classes.URLSearchParams,{visitor:function(r,n,a,s){return Lo.isNode&&Et.isBuffer(r)?(this.append(n,r.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...t})}function eXt(e){return Et.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function tXt(e){let t={},r=Object.keys(e),n,a=r.length,s;for(n=0;n<a;n++)s=r[n],t[s]=e[s];return t}function rXt(e){function t(r,n,a,s){let c=r[s++];if(c==="__proto__")return!0;let l=Number.isFinite(+c),p=s>=r.length;return c=!c&&Et.isArray(a)?a.length:c,p?(Et.hasOwnProp(a,c)?a[c]=[a[c],n]:a[c]=n,!l):((!a[c]||!Et.isObject(a[c]))&&(a[c]=[]),t(r,n,a[c],s)&&Et.isArray(a[c])&&(a[c]=tXt(a[c])),!l)}if(Et.isFormData(e)&&Et.isFunction(e.entries)){let r={};return Et.forEachEntry(e,(n,a)=>{t(eXt(n),a,r,0)}),r}return null}var NH=rXt;function nXt(e,t,r){if(Et.isString(e))try{return(t||JSON.parse)(e),Et.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var ice={transitional:bF,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){let n=r.getContentType()||"",a=n.indexOf("application/json")>-1,s=Et.isObject(t);if(s&&Et.isHTMLForm(t)&&(t=new FormData(t)),Et.isFormData(t))return a?JSON.stringify(NH(t)):t;if(Et.isArrayBuffer(t)||Et.isBuffer(t)||Et.isStream(t)||Et.isFile(t)||Et.isBlob(t)||Et.isReadableStream(t))return t;if(Et.isArrayBufferView(t))return t.buffer;if(Et.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(s){if(n.indexOf("application/x-www-form-urlencoded")>-1)return nce(t,this.formSerializer).toString();if((l=Et.isFileList(t))||n.indexOf("multipart/form-data")>-1){let p=this.env&&this.env.FormData;return c_(l?{"files[]":t}:t,p&&new p,this.formSerializer)}}return s||a?(r.setContentType("application/json",!1),nXt(t)):t}],transformResponse:[function(t){let r=this.transitional||ice.transitional,n=r&&r.forcedJSONParsing,a=this.responseType==="json";if(Et.isResponse(t)||Et.isReadableStream(t))return t;if(t&&Et.isString(t)&&(n&&!this.responseType||a)){let c=!(r&&r.silentJSONParsing)&&a;try{return JSON.parse(t)}catch(l){if(c)throw l.name==="SyntaxError"?Tn.from(l,Tn.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Lo.classes.FormData,Blob:Lo.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Et.forEach(["delete","get","head","post","put","patch"],e=>{ice.headers[e]={}});var EF=ice;var iXt=Et.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),qje=e=>{let t={},r,n,a;return e&&e.split(`
|
|
523
523
|
`).forEach(function(c){a=c.indexOf(":"),r=c.substring(0,a).trim().toLowerCase(),n=c.substring(a+1).trim(),!(!r||t[r]&&iXt[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t};var Uje=Symbol("internals");function Mj(e){return e&&String(e).trim().toLowerCase()}function OH(e){return e===!1||e==null?e:Et.isArray(e)?e.map(OH):String(e)}function sXt(e){let t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}var aXt=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function sce(e,t,r,n,a){if(Et.isFunction(n))return n.call(this,t,r);if(a&&(t=r),!!Et.isString(t)){if(Et.isString(n))return t.indexOf(n)!==-1;if(Et.isRegExp(n))return n.test(t)}}function oXt(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function cXt(e,t){let r=Et.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(a,s,c){return this[n].call(this,t,a,s,c)},configurable:!0})})}var wF=class{constructor(t){t&&this.set(t)}set(t,r,n){let a=this;function s(l,p,d){let h=Mj(p);if(!h)throw new Error("header name must be a non-empty string");let g=Et.findKey(a,h);(!g||a[g]===void 0||d===!0||d===void 0&&a[g]!==!1)&&(a[g||p]=OH(l))}let c=(l,p)=>Et.forEach(l,(d,h)=>s(d,h,p));if(Et.isPlainObject(t)||t instanceof this.constructor)c(t,r);else if(Et.isString(t)&&(t=t.trim())&&!aXt(t))c(qje(t),r);else if(Et.isObject(t)&&Et.isIterable(t)){let l={},p,d;for(let h of t){if(!Et.isArray(h))throw TypeError("Object iterator must return a key-value pair");l[d=h[0]]=(p=l[d])?Et.isArray(p)?[...p,h[1]]:[p,h[1]]:h[1]}c(l,r)}else t!=null&&s(r,t,n);return this}get(t,r){if(t=Mj(t),t){let n=Et.findKey(this,t);if(n){let a=this[n];if(!r)return a;if(r===!0)return sXt(a);if(Et.isFunction(r))return r.call(this,a,n);if(Et.isRegExp(r))return r.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=Mj(t),t){let n=Et.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||sce(this,this[n],n,r)))}return!1}delete(t,r){let n=this,a=!1;function s(c){if(c=Mj(c),c){let l=Et.findKey(n,c);l&&(!r||sce(n,n[l],l,r))&&(delete n[l],a=!0)}}return Et.isArray(t)?t.forEach(s):s(t),a}clear(t){let r=Object.keys(this),n=r.length,a=!1;for(;n--;){let s=r[n];(!t||sce(this,this[s],s,t,!0))&&(delete this[s],a=!0)}return a}normalize(t){let r=this,n={};return Et.forEach(this,(a,s)=>{let c=Et.findKey(n,s);if(c){r[c]=OH(a),delete r[s];return}let l=t?oXt(s):String(s).trim();l!==s&&delete r[s],r[l]=OH(a),n[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return Et.forEach(this,(n,a)=>{n!=null&&n!==!1&&(r[a]=t&&Et.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
|
|
524
524
|
`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){let n=new this(t);return r.forEach(a=>n.set(a)),n}static accessor(t){let n=(this[Uje]=this[Uje]={accessors:{}}).accessors,a=this.prototype;function s(c){let l=Mj(c);n[l]||(cXt(a,c),n[l]=!0)}return Et.isArray(t)?t.forEach(s):s(t),this}};wF.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Et.reduceDescriptors(wF.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}});Et.freezeMethods(wF);var al=wF;function qj(e,t){let r=this||EF,n=t||r,a=al.from(n.headers),s=n.data;return Et.forEach(e,function(l){s=l.call(r,s,a.normalize(),t?t.status:void 0)}),a.normalize(),s}function Uj(e){return!!(e&&e.__CANCEL__)}function zje(e,t,r){Tn.call(this,e==null?"canceled":e,Tn.ERR_CANCELED,t,r),this.name="CanceledError"}Et.inherits(zje,Tn,{__CANCEL__:!0});var sA=zje;function hE(e,t,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new Tn("Request failed with status code "+r.status,[Tn.ERR_BAD_REQUEST,Tn.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function ace(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function oce(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function _T(e,t,r){let n=!ace(t);return e&&(n||r==!1)?oce(e,t):t}var vMe=ar($je(),1),xMe=ar(require("http"),1),bMe=ar(require("https"),1),EMe=ar(require("util"),1),wMe=ar(Ece(),1),mS=ar(require("zlib"),1);var BT="1.11.0";function Wj(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}var $Xt=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function wce(e,t,r){let n=r&&r.Blob||Lo.classes.Blob,a=Wj(e);if(t===void 0&&n&&(t=!0),a==="data"){e=a.length?e.slice(a.length+1):e;let s=$Xt.exec(e);if(!s)throw new Tn("Invalid URL",Tn.ERR_INVALID_URL);let c=s[1],l=s[2],p=s[3],d=Buffer.from(decodeURIComponent(p),l?"base64":"utf8");if(t){if(!n)throw new Tn("Blob is not supported",Tn.ERR_NOT_SUPPORT);return new n([d],{type:c})}return d}throw new Tn("Unsupported protocol "+a,Tn.ERR_NOT_SUPPORT)}var PT=ar(require("stream"),1);var iMe=ar(require("stream"),1);var Sce=Symbol("internals"),Cce=class extends iMe.default.Transform{constructor(t){t=Et.toFlatObject(t,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(n,a)=>!Et.isUndefined(a[n])),super({readableHighWaterMark:t.chunkSize});let r=this[Sce]={timeWindow:t.timeWindow,chunkSize:t.chunkSize,maxRate:t.maxRate,minChunkSize:t.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null};this.on("newListener",n=>{n==="progress"&&(r.isCaptured||(r.isCaptured=!0))})}_read(t){let r=this[Sce];return r.onReadCallback&&r.onReadCallback(),super._read(t)}_transform(t,r,n){let a=this[Sce],s=a.maxRate,c=this.readableHighWaterMark,l=a.timeWindow,p=1e3/l,d=s/p,h=a.minChunkSize!==!1?Math.max(a.minChunkSize,d*.01):0,g=(b,A)=>{let C=Buffer.byteLength(b);a.bytesSeen+=C,a.bytes+=C,a.isCaptured&&this.emit("progress",a.bytesSeen),this.push(b)?process.nextTick(A):a.onReadCallback=()=>{a.onReadCallback=null,process.nextTick(A)}},v=(b,A)=>{let C=Buffer.byteLength(b),S=null,k=c,O,j=0;if(s){let L=Date.now();(!a.ts||(j=L-a.ts)>=l)&&(a.ts=L,O=d-a.bytes,a.bytes=O<0?-O:0,j=0),O=d-a.bytes}if(s){if(O<=0)return setTimeout(()=>{A(null,b)},l-j);O<k&&(k=O)}k&&C>k&&C-k>h&&(S=b.subarray(k),b=b.subarray(0,k)),g(b,S?()=>{process.nextTick(A,null,S)}:A)};v(t,function b(A,C){if(A)return n(A);C?v(C,b):n(null)})}},_ce=Cce;var SMe=require("events");var aMe=ar(require("util"),1),oMe=require("stream");var{asyncIterator:sMe}=Symbol,VXt=async function*(e){e.stream?yield*e.stream():e.arrayBuffer?yield await e.arrayBuffer():e[sMe]?yield*e[sMe]():yield e},UH=VXt;var WXt=Lo.ALPHABET.ALPHA_DIGIT+"-_",Gj=typeof TextEncoder=="function"?new TextEncoder:new aMe.default.TextEncoder,DT=`\r
|
|
525
525
|
`,GXt=Gj.encode(DT),YXt=2,Ice=class{constructor(t,r){let{escapeName:n}=this.constructor,a=Et.isString(r),s=`Content-Disposition: form-data; name="${n(t)}"${!a&&r.name?`; filename="${n(r.name)}"`:""}${DT}`;a?r=Gj.encode(String(r).replace(/\r?\n|\r\n?/g,DT)):s+=`Content-Type: ${r.type||"application/octet-stream"}${DT}`,this.headers=Gj.encode(s+DT),this.contentLength=a?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+YXt,this.name=t,this.value=r}async*encode(){yield this.headers;let{value:t}=this;Et.isTypedArray(t)?yield t:yield*UH(t),yield GXt}static escapeName(t){return String(t).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},JXt=(e,t,r)=>{let{tag:n="form-data-boundary",size:a=25,boundary:s=n+"-"+Lo.generateString(a,WXt)}=r||{};if(!Et.isFormData(e))throw TypeError("FormData instance required");if(s.length<1||s.length>70)throw Error("boundary must be 10-70 characters long");let c=Gj.encode("--"+s+DT),l=Gj.encode("--"+s+"--"+DT),p=l.byteLength,d=Array.from(e.entries()).map(([g,v])=>{let b=new Ice(g,v);return p+=b.size,b});p+=c.byteLength*d.length,p=Et.toFiniteNumber(p);let h={"Content-Type":`multipart/form-data; boundary=${s}`};return Number.isFinite(p)&&(h["Content-Length"]=p),t&&t(h),oMe.Readable.from(async function*(){for(let g of d)yield c,yield*g.encode();yield l}())},cMe=JXt;var uMe=ar(require("stream"),1),kce=class extends uMe.default.Transform{__transform(t,r,n){this.push(t),n()}_transform(t,r,n){if(t.length!==0&&(this._transform=this.__transform,t[0]!==120)){let a=Buffer.alloc(2);a[0]=120,a[1]=156,this.push(a,r)}this.__transform(t,r,n)}},lMe=kce;var KXt=(e,t)=>Et.isAsyncFn(e)?function(...r){let n=r.pop();e.apply(this,r).then(a=>{try{t?n(null,...t(a)):n(null,a)}catch(s){n(s)}},n)}:e,pMe=KXt;function XXt(e,t){e=e||10;let r=new Array(e),n=new Array(e),a=0,s=0,c;return t=t!==void 0?t:1e3,function(p){let d=Date.now(),h=n[s];c||(c=d),r[a]=p,n[a]=d;let g=s,v=0;for(;g!==a;)v+=r[g++],g=g%e;if(a=(a+1)%e,a===s&&(s=(s+1)%e),d-c<t)return;let b=h&&d-h;return b?Math.round(v*1e3/b):void 0}}var fMe=XXt;function ZXt(e,t){let r=0,n=1e3/t,a,s,c=(d,h=Date.now())=>{r=h,a=null,s&&(clearTimeout(s),s=null),e(...d)};return[(...d)=>{let h=Date.now(),g=h-r;g>=n?c(d,h):(a=d,s||(s=setTimeout(()=>{s=null,c(a)},n-g)))},()=>a&&c(a)]}var dMe=ZXt;var hS=(e,t,r=3)=>{let n=0,a=fMe(50,250);return dMe(s=>{let c=s.loaded,l=s.lengthComputable?s.total:void 0,p=c-n,d=a(p),h=c<=l;n=c;let g={loaded:c,total:l,progress:l?c/l:void 0,bytes:p,rate:d||void 0,estimated:d&&l&&h?(l-c)/d:void 0,event:s,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(g)},r)},kF=(e,t)=>{let r=e!=null;return[n=>t[0]({lengthComputable:r,total:e,loaded:n}),t[1]]},TF=e=>(...t)=>Et.asap(()=>e(...t));var hMe={flush:mS.default.constants.Z_SYNC_FLUSH,finishFlush:mS.default.constants.Z_SYNC_FLUSH},eZt={flush:mS.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:mS.default.constants.BROTLI_OPERATION_FLUSH},mMe=Et.isFunction(mS.default.createBrotliDecompress),{http:tZt,https:rZt}=wMe.default,nZt=/https:?/,gMe=Lo.protocols.map(e=>e+":"),AMe=(e,[t,r])=>(e.on("end",r).on("error",r),t);function iZt(e,t){e.beforeRedirects.proxy&&e.beforeRedirects.proxy(e),e.beforeRedirects.config&&e.beforeRedirects.config(e,t)}function CMe(e,t,r){let n=t;if(!n&&n!==!1){let a=vMe.default.getProxyForUrl(r);a&&(n=new URL(a))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let s=Buffer.from(n.auth,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+s}e.headers.host=e.hostname+(e.port?":"+e.port:"");let a=n.hostname||n.host;e.hostname=a,e.host=a,e.port=n.port,e.path=r,n.protocol&&(e.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}e.beforeRedirects.proxy=function(s){CMe(s,t,s.href)}}var sZt=typeof process<"u"&&Et.kindOf(process)==="process",aZt=e=>new Promise((t,r)=>{let n,a,s=(p,d)=>{a||(a=!0,n&&n(p,d))},c=p=>{s(p),t(p)},l=p=>{s(p,!0),r(p)};e(c,l,p=>n=p).catch(l)}),oZt=({address:e,family:t})=>{if(!Et.isString(e))throw TypeError("address must be a string");return{address:e,family:t||(e.indexOf(".")<0?6:4)}},yMe=(e,t)=>oZt(Et.isObject(e)?e:{address:e,family:t}),_Me=sZt&&function(t){return aZt(async function(n,a,s){let{data:c,lookup:l,family:p}=t,{responseType:d,responseEncoding:h}=t,g=t.method.toUpperCase(),v,b=!1,A;if(l){let ve=pMe(l,Ee=>Et.isArray(Ee)?Ee:[Ee]);l=(Ee,je,ze)=>{ve(Ee,je,(xt,qt,lt)=>{if(xt)return ze(xt);let nt=Et.isArray(qt)?qt.map(He=>yMe(He)):[yMe(qt,lt)];je.all?ze(xt,nt):ze(xt,nt[0].address,nt[0].family)})}}let C=new SMe.EventEmitter,S=()=>{t.cancelToken&&t.cancelToken.unsubscribe(k),t.signal&&t.signal.removeEventListener("abort",k),C.removeAllListeners()};s((ve,Ee)=>{v=!0,Ee&&(b=!0,S())});function k(ve){C.emit("abort",!ve||ve.type?new sA(null,t,A):ve)}C.once("abort",a),(t.cancelToken||t.signal)&&(t.cancelToken&&t.cancelToken.subscribe(k),t.signal&&(t.signal.aborted?k():t.signal.addEventListener("abort",k)));let O=_T(t.baseURL,t.url,t.allowAbsoluteUrls),j=new URL(O,Lo.hasBrowserEnv?Lo.origin:void 0),L=j.protocol||gMe[0];if(L==="data:"){let ve;if(g!=="GET")return hE(n,a,{status:405,statusText:"method not allowed",headers:{},config:t});try{ve=wce(t.url,d==="blob",{Blob:t.env&&t.env.Blob})}catch(Ee){throw Tn.from(Ee,Tn.ERR_BAD_REQUEST,t)}return d==="text"?(ve=ve.toString(h),(!h||h==="utf8")&&(ve=Et.stripBOM(ve))):d==="stream"&&(ve=PT.default.Readable.from(ve)),hE(n,a,{data:ve,status:200,statusText:"OK",headers:new al,config:t})}if(gMe.indexOf(L)===-1)return a(new Tn("Unsupported protocol "+L,Tn.ERR_BAD_REQUEST,t));let $=al.from(t.headers).normalize();$.set("User-Agent","axios/"+BT,!1);let{onUploadProgress:ie,onDownloadProgress:G}=t,ye=t.maxRate,re,pe;if(Et.isSpecCompliantForm(c)){let ve=$.getContentType(/boundary=([-_\w\d]{10,70})/i);c=cMe(c,Ee=>{$.set(Ee)},{tag:`axios-${BT}-boundary`,boundary:ve&&ve[1]||void 0})}else if(Et.isFormData(c)&&Et.isFunction(c.getHeaders)){if($.set(c.getHeaders()),!$.hasContentLength())try{let ve=await EMe.default.promisify(c.getLength).call(c);Number.isFinite(ve)&&ve>=0&&$.setContentLength(ve)}catch{}}else if(Et.isBlob(c)||Et.isFile(c))c.size&&$.setContentType(c.type||"application/octet-stream"),$.setContentLength(c.size||0),c=PT.default.Readable.from(UH(c));else if(c&&!Et.isStream(c)){if(!Buffer.isBuffer(c))if(Et.isArrayBuffer(c))c=Buffer.from(new Uint8Array(c));else if(Et.isString(c))c=Buffer.from(c,"utf-8");else return a(new Tn("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Tn.ERR_BAD_REQUEST,t));if($.setContentLength(c.length,!1),t.maxBodyLength>-1&&c.length>t.maxBodyLength)return a(new Tn("Request body larger than maxBodyLength limit",Tn.ERR_BAD_REQUEST,t))}let he=Et.toFiniteNumber($.getContentLength());Et.isArray(ye)?(re=ye[0],pe=ye[1]):re=pe=ye,c&&(ie||re)&&(Et.isStream(c)||(c=PT.default.Readable.from(c,{objectMode:!1})),c=PT.default.pipeline([c,new _ce({maxRate:Et.toFiniteNumber(re)})],Et.noop),ie&&c.on("progress",AMe(c,kF(he,hS(TF(ie),!1,3)))));let de;if(t.auth){let ve=t.auth.username||"",Ee=t.auth.password||"";de=ve+":"+Ee}if(!de&&j.username){let ve=j.username,Ee=j.password;de=ve+":"+Ee}de&&$.delete("authorization");let ce;try{ce=CT(j.pathname+j.search,t.params,t.paramsSerializer).replace(/^\?/,"")}catch(ve){let Ee=new Error(ve.message);return Ee.config=t,Ee.url=t.url,Ee.exists=!0,a(Ee)}$.set("Accept-Encoding","gzip, compress, deflate"+(mMe?", br":""),!1);let se={path:ce,method:g,headers:$.toJSON(),agents:{http:t.httpAgent,https:t.httpsAgent},auth:de,protocol:L,family:p,beforeRedirect:iZt,beforeRedirects:{}};!Et.isUndefined(l)&&(se.lookup=l),t.socketPath?se.socketPath=t.socketPath:(se.hostname=j.hostname.startsWith("[")?j.hostname.slice(1,-1):j.hostname,se.port=j.port,CMe(se,t.proxy,L+"//"+j.hostname+(j.port?":"+j.port:"")+se.path));let be,We=nZt.test(se.protocol);if(se.agent=We?t.httpsAgent:t.httpAgent,t.transport?be=t.transport:t.maxRedirects===0?be=We?bMe.default:xMe.default:(t.maxRedirects&&(se.maxRedirects=t.maxRedirects),t.beforeRedirect&&(se.beforeRedirects.config=t.beforeRedirect),be=We?rZt:tZt),t.maxBodyLength>-1?se.maxBodyLength=t.maxBodyLength:se.maxBodyLength=1/0,t.insecureHTTPParser&&(se.insecureHTTPParser=t.insecureHTTPParser),A=be.request(se,function(Ee){if(A.destroyed)return;let je=[Ee],ze=+Ee.headers["content-length"];if(G||pe){let He=new _ce({maxRate:Et.toFiniteNumber(pe)});G&&He.on("progress",AMe(He,kF(ze,hS(TF(G),!0,3)))),je.push(He)}let xt=Ee,qt=Ee.req||A;if(t.decompress!==!1&&Ee.headers["content-encoding"])switch((g==="HEAD"||Ee.statusCode===204)&&delete Ee.headers["content-encoding"],(Ee.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":je.push(mS.default.createUnzip(hMe)),delete Ee.headers["content-encoding"];break;case"deflate":je.push(new lMe),je.push(mS.default.createUnzip(hMe)),delete Ee.headers["content-encoding"];break;case"br":mMe&&(je.push(mS.default.createBrotliDecompress(eZt)),delete Ee.headers["content-encoding"])}xt=je.length>1?PT.default.pipeline(je,Et.noop):je[0];let lt=PT.default.finished(xt,()=>{lt(),S()}),nt={status:Ee.statusCode,statusText:Ee.statusMessage,headers:new al(Ee.headers),config:t,request:qt};if(d==="stream")nt.data=xt,hE(n,a,nt);else{let He=[],tt=0;xt.on("data",function($t){He.push($t),tt+=$t.length,t.maxContentLength>-1&&tt>t.maxContentLength&&(b=!0,xt.destroy(),a(new Tn("maxContentLength size of "+t.maxContentLength+" exceeded",Tn.ERR_BAD_RESPONSE,t,qt)))}),xt.on("aborted",function(){if(b)return;let $t=new Tn("stream has been aborted",Tn.ERR_BAD_RESPONSE,t,qt);xt.destroy($t),a($t)}),xt.on("error",function($t){A.destroyed||a(Tn.from($t,null,t,qt))}),xt.on("end",function(){try{let $t=He.length===1?He[0]:Buffer.concat(He);d!=="arraybuffer"&&($t=$t.toString(h),(!h||h==="utf8")&&($t=Et.stripBOM($t))),nt.data=$t}catch($t){return a(Tn.from($t,null,t,nt.request,nt))}hE(n,a,nt)})}C.once("abort",He=>{xt.destroyed||(xt.emit("error",He),xt.destroy())})}),C.once("abort",ve=>{a(ve),A.destroy(ve)}),A.on("error",function(Ee){a(Tn.from(Ee,null,t,A))}),A.on("socket",function(Ee){Ee.setKeepAlive(!0,1e3*60)}),t.timeout){let ve=parseInt(t.timeout,10);if(Number.isNaN(ve)){a(new Tn("error trying to parse `config.timeout` to int",Tn.ERR_BAD_OPTION_VALUE,t,A));return}A.setTimeout(ve,function(){if(v)return;let je=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",ze=t.transitional||bF;t.timeoutErrorMessage&&(je=t.timeoutErrorMessage),a(new Tn(je,ze.clarifyTimeoutError?Tn.ETIMEDOUT:Tn.ECONNABORTED,t,A)),k()})}if(Et.isStream(c)){let ve=!1,Ee=!1;c.on("end",()=>{ve=!0}),c.once("error",je=>{Ee=!0,A.destroy(je)}),c.on("close",()=>{!ve&&!Ee&&k(new sA("Request stream has been aborted",t,A))}),c.pipe(A)}else A.end(c)})};var IMe=Lo.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,Lo.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(Lo.origin),Lo.navigator&&/(msie|trident)/i.test(Lo.navigator.userAgent)):()=>!0;var kMe=Lo.hasStandardBrowserEnv?{write(e,t,r,n,a,s){let c=[e+"="+encodeURIComponent(t)];Et.isNumber(r)&&c.push("expires="+new Date(r).toGMTString()),Et.isString(n)&&c.push("path="+n),Et.isString(a)&&c.push("domain="+a),s===!0&&c.push("secure"),document.cookie=c.join("; ")},read(e){let t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var TMe=e=>e instanceof al?{...e}:e;function hx(e,t){t=t||{};let r={};function n(d,h,g,v){return Et.isPlainObject(d)&&Et.isPlainObject(h)?Et.merge.call({caseless:v},d,h):Et.isPlainObject(h)?Et.merge({},h):Et.isArray(h)?h.slice():h}function a(d,h,g,v){if(Et.isUndefined(h)){if(!Et.isUndefined(d))return n(void 0,d,g,v)}else return n(d,h,g,v)}function s(d,h){if(!Et.isUndefined(h))return n(void 0,h)}function c(d,h){if(Et.isUndefined(h)){if(!Et.isUndefined(d))return n(void 0,d)}else return n(void 0,h)}function l(d,h,g){if(g in t)return n(d,h);if(g in e)return n(void 0,d)}let p={url:s,method:s,data:s,baseURL:c,transformRequest:c,transformResponse:c,paramsSerializer:c,timeout:c,timeoutMessage:c,withCredentials:c,withXSRFToken:c,adapter:c,responseType:c,xsrfCookieName:c,xsrfHeaderName:c,onUploadProgress:c,onDownloadProgress:c,decompress:c,maxContentLength:c,maxBodyLength:c,beforeRedirect:c,transport:c,httpAgent:c,httpsAgent:c,cancelToken:c,socketPath:c,responseEncoding:c,validateStatus:l,headers:(d,h,g)=>a(TMe(d),TMe(h),g,!0)};return Et.forEach(Object.keys({...e,...t}),function(h){let g=p[h]||a,v=g(e[h],t[h],h);Et.isUndefined(v)&&g!==l||(r[h]=v)}),r}var zH=e=>{let t=hx({},e),{data:r,withXSRFToken:n,xsrfHeaderName:a,xsrfCookieName:s,headers:c,auth:l}=t;t.headers=c=al.from(c),t.url=CT(_T(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&c.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let p;if(Et.isFormData(r)){if(Lo.hasStandardBrowserEnv||Lo.hasStandardBrowserWebWorkerEnv)c.setContentType(void 0);else if((p=c.getContentType())!==!1){let[d,...h]=p?p.split(";").map(g=>g.trim()).filter(Boolean):[];c.setContentType([d||"multipart/form-data",...h].join("; "))}}if(Lo.hasStandardBrowserEnv&&(n&&Et.isFunction(n)&&(n=n(t)),n||n!==!1&&IMe(t.url))){let d=a&&s&&kMe.read(s);d&&c.set(a,d)}return t};var cZt=typeof XMLHttpRequest<"u",BMe=cZt&&function(e){return new Promise(function(r,n){let a=zH(e),s=a.data,c=al.from(a.headers).normalize(),{responseType:l,onUploadProgress:p,onDownloadProgress:d}=a,h,g,v,b,A;function C(){b&&b(),A&&A(),a.cancelToken&&a.cancelToken.unsubscribe(h),a.signal&&a.signal.removeEventListener("abort",h)}let S=new XMLHttpRequest;S.open(a.method.toUpperCase(),a.url,!0),S.timeout=a.timeout;function k(){if(!S)return;let j=al.from("getAllResponseHeaders"in S&&S.getAllResponseHeaders()),$={data:!l||l==="text"||l==="json"?S.responseText:S.response,status:S.status,statusText:S.statusText,headers:j,config:e,request:S};hE(function(G){r(G),C()},function(G){n(G),C()},$),S=null}"onloadend"in S?S.onloadend=k:S.onreadystatechange=function(){!S||S.readyState!==4||S.status===0&&!(S.responseURL&&S.responseURL.indexOf("file:")===0)||setTimeout(k)},S.onabort=function(){S&&(n(new Tn("Request aborted",Tn.ECONNABORTED,e,S)),S=null)},S.onerror=function(){n(new Tn("Network Error",Tn.ERR_NETWORK,e,S)),S=null},S.ontimeout=function(){let L=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded",$=a.transitional||bF;a.timeoutErrorMessage&&(L=a.timeoutErrorMessage),n(new Tn(L,$.clarifyTimeoutError?Tn.ETIMEDOUT:Tn.ECONNABORTED,e,S)),S=null},s===void 0&&c.setContentType(null),"setRequestHeader"in S&&Et.forEach(c.toJSON(),function(L,$){S.setRequestHeader($,L)}),Et.isUndefined(a.withCredentials)||(S.withCredentials=!!a.withCredentials),l&&l!=="json"&&(S.responseType=a.responseType),d&&([v,A]=hS(d,!0),S.addEventListener("progress",v)),p&&S.upload&&([g,b]=hS(p),S.upload.addEventListener("progress",g),S.upload.addEventListener("loadend",b)),(a.cancelToken||a.signal)&&(h=j=>{S&&(n(!j||j.type?new sA(null,e,S):j),S.abort(),S=null)},a.cancelToken&&a.cancelToken.subscribe(h),a.signal&&(a.signal.aborted?h():a.signal.addEventListener("abort",h)));let O=Wj(a.url);if(O&&Lo.protocols.indexOf(O)===-1){n(new Tn("Unsupported protocol "+O+":",Tn.ERR_BAD_REQUEST,e));return}S.send(s||null)})};var uZt=(e,t)=>{let{length:r}=e=e?e.filter(Boolean):[];if(t||r){let n=new AbortController,a,s=function(d){if(!a){a=!0,l();let h=d instanceof Error?d:this.reason;n.abort(h instanceof Tn?h:new sA(h instanceof Error?h.message:h))}},c=t&&setTimeout(()=>{c=null,s(new Tn(`timeout ${t} of ms exceeded`,Tn.ETIMEDOUT))},t),l=()=>{e&&(c&&clearTimeout(c),c=null,e.forEach(d=>{d.unsubscribe?d.unsubscribe(s):d.removeEventListener("abort",s)}),e=null)};e.forEach(d=>d.addEventListener("abort",s));let{signal:p}=n;return p.unsubscribe=()=>Et.asap(l),p}},DMe=uZt;var lZt=function*(e,t){let r=e.byteLength;if(!t||r<t){yield e;return}let n=0,a;for(;n<r;)a=n+t,yield e.slice(n,a),n=a},pZt=async function*(e,t){for await(let r of fZt(e))yield*lZt(r,t)},fZt=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}let t=e.getReader();try{for(;;){let{done:r,value:n}=await t.read();if(r)break;yield n}}finally{await t.cancel()}},Tce=(e,t,r,n)=>{let a=pZt(e,t),s=0,c,l=p=>{c||(c=!0,n&&n(p))};return new ReadableStream({async pull(p){try{let{done:d,value:h}=await a.next();if(d){l(),p.close();return}let g=h.byteLength;if(r){let v=s+=g;r(v)}p.enqueue(new Uint8Array(h))}catch(d){throw l(d),d}},cancel(p){return l(p),a.return()}},{highWaterMark:2})};var $H=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",RMe=$H&&typeof ReadableStream=="function",dZt=$H&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),FMe=(e,...t)=>{try{return!!e(...t)}catch{return!1}},hZt=RMe&&FMe(()=>{let e=!1,t=new Request(Lo.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),PMe=64*1024,Bce=RMe&&FMe(()=>Et.isReadableStream(new Response("").body)),HH={stream:Bce&&(e=>e.body)};$H&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!HH[t]&&(HH[t]=Et.isFunction(e[t])?r=>r[t]():(r,n)=>{throw new Tn(`Response type '${t}' is not supported`,Tn.ERR_NOT_SUPPORT,n)})})})(new Response);var mZt=async e=>{if(e==null)return 0;if(Et.isBlob(e))return e.size;if(Et.isSpecCompliantForm(e))return(await new Request(Lo.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(Et.isArrayBufferView(e)||Et.isArrayBuffer(e))return e.byteLength;if(Et.isURLSearchParams(e)&&(e=e+""),Et.isString(e))return(await dZt(e)).byteLength},gZt=async(e,t)=>{let r=Et.toFiniteNumber(e.getContentLength());return r==null?mZt(t):r},NMe=$H&&(async e=>{let{url:t,method:r,data:n,signal:a,cancelToken:s,timeout:c,onDownloadProgress:l,onUploadProgress:p,responseType:d,headers:h,withCredentials:g="same-origin",fetchOptions:v}=zH(e);d=d?(d+"").toLowerCase():"text";let b=DMe([a,s&&s.toAbortSignal()],c),A,C=b&&b.unsubscribe&&(()=>{b.unsubscribe()}),S;try{if(p&&hZt&&r!=="get"&&r!=="head"&&(S=await gZt(h,n))!==0){let $=new Request(t,{method:"POST",body:n,duplex:"half"}),ie;if(Et.isFormData(n)&&(ie=$.headers.get("content-type"))&&h.setContentType(ie),$.body){let[G,ye]=kF(S,hS(TF(p)));n=Tce($.body,PMe,G,ye)}}Et.isString(g)||(g=g?"include":"omit");let k="credentials"in Request.prototype;A=new Request(t,{...v,signal:b,method:r.toUpperCase(),headers:h.normalize().toJSON(),body:n,duplex:"half",credentials:k?g:void 0});let O=await fetch(A,v),j=Bce&&(d==="stream"||d==="response");if(Bce&&(l||j&&C)){let $={};["status","statusText","headers"].forEach(re=>{$[re]=O[re]});let ie=Et.toFiniteNumber(O.headers.get("content-length")),[G,ye]=l&&kF(ie,hS(TF(l),!0))||[];O=new Response(Tce(O.body,PMe,G,()=>{ye&&ye(),C&&C()}),$)}d=d||"text";let L=await HH[Et.findKey(HH,d)||"text"](O,e);return!j&&C&&C(),await new Promise(($,ie)=>{hE($,ie,{data:L,headers:al.from(O.headers),status:O.status,statusText:O.statusText,config:e,request:A})})}catch(k){throw C&&C(),k&&k.name==="TypeError"&&/Load failed|fetch/i.test(k.message)?Object.assign(new Tn("Network Error",Tn.ERR_NETWORK,e,A),{cause:k.cause||k}):Tn.from(k,k&&k.code,e,A)}});var Dce={http:_Me,xhr:BMe,fetch:NMe};Et.forEach(Dce,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var OMe=e=>`- ${e}`,AZt=e=>Et.isFunction(e)||e===null||e===!1,VH={getAdapter:e=>{e=Et.isArray(e)?e:[e];let{length:t}=e,r,n,a={};for(let s=0;s<t;s++){r=e[s];let c;if(n=r,!AZt(r)&&(n=Dce[(c=String(r)).toLowerCase()],n===void 0))throw new Tn(`Unknown adapter '${c}'`);if(n)break;a[c||"#"+s]=n}if(!n){let s=Object.entries(a).map(([l,p])=>`adapter ${l} `+(p===!1?"is not supported by the environment":"is not available in the build")),c=t?s.length>1?`since :
|
|
@@ -3734,9 +3734,12 @@ def _pages_log_request(method, path, headers=None):
|
|
|
3734
3734
|
"""\u8F93\u51FA Pages \u5E73\u53F0\u6807\u51C6\u8BF7\u6C42\u65E5\u5FD7\uFF0C\u90E8\u7F72\u73AF\u5883\u4E0B\u5305\u542B\u5B8C\u6574 URL\uFF08\u542B host\uFF09"""
|
|
3735
3735
|
full_path = path
|
|
3736
3736
|
if headers:
|
|
3737
|
-
|
|
3737
|
+
# \u5224\u65AD\u662F\u5426\u4E3A\u7C7B dict \u63A5\u53E3\uFF08dict / Flask EnvironHeaders / Werkzeug Headers \u7B49\uFF09
|
|
3738
|
+
# Flask \u7684 request.headers \u4E0D\u662F dict\uFF0C\u4F46\u6709 .get() \u65B9\u6CD5
|
|
3739
|
+
is_dict_like = hasattr(headers, 'get') and not isinstance(headers, list)
|
|
3740
|
+
host = headers.get('eo-pages-host', '') if is_dict_like else _get_asgi_header(headers, b'eo-pages-host')
|
|
3738
3741
|
if host:
|
|
3739
|
-
proto = headers.get('x-forwarded-proto', 'https') if
|
|
3742
|
+
proto = headers.get('x-forwarded-proto', 'https') if is_dict_like else (_get_asgi_header(headers, b'x-forwarded-proto') or 'https')
|
|
3740
3743
|
full_path = f"{proto}://{host}{path}"
|
|
3741
3744
|
print(f"Pages request path: {full_path}", file=sys.stderr)
|
|
3742
3745
|
|
|
@@ -4917,8 +4920,23 @@ def _handle_base_http_handler(handler_class, req):
|
|
|
4917
4920
|
mock_socket = MockSocket()
|
|
4918
4921
|
mock_server = MockServer()
|
|
4919
4922
|
|
|
4920
|
-
# \
|
|
4921
|
-
|
|
4923
|
+
# \u7981\u7528 BaseHTTPRequestHandler \u7684 access log\uFF08log_request / log_message\uFF09
|
|
4924
|
+
# \u56E0\u4E3A\u5DF2\u6709 Pages \u5E73\u53F0\u7684\u6807\u51C6\u65E5\u5FD7\uFF0C\u4E0D\u9700\u8981 handler \u81EA\u5E26\u7684\u65E5\u5FD7
|
|
4925
|
+
# \u5FC5\u987B\u5728\u5B9E\u4F8B\u5316\u4E4B\u524D patch\uFF0C\u56E0\u4E3A __init__ \u4F1A\u81EA\u52A8\u8C03\u7528 handle() \u2192 log_request()
|
|
4926
|
+
_orig_log_request = handler_class.log_request if hasattr(handler_class, 'log_request') else None
|
|
4927
|
+
_orig_log_message = handler_class.log_message if hasattr(handler_class, 'log_message') else None
|
|
4928
|
+
handler_class.log_request = lambda *a, **kw: None
|
|
4929
|
+
handler_class.log_message = lambda *a, **kw: None
|
|
4930
|
+
|
|
4931
|
+
try:
|
|
4932
|
+
# \u5B9E\u4F8B\u5316 handler\uFF08BaseHTTPRequestHandler \u4F1A\u81EA\u52A8\u8C03\u7528 handle()\uFF09
|
|
4933
|
+
handler_instance = handler_class(mock_socket, (req.remote_addr or '127.0.0.1', 0), mock_server)
|
|
4934
|
+
finally:
|
|
4935
|
+
# \u6062\u590D\u539F\u59CB\u65B9\u6CD5\uFF0C\u907F\u514D\u5F71\u54CD\u5176\u4ED6\u5730\u65B9\u5BF9\u540C\u4E00 handler class \u7684\u4F7F\u7528
|
|
4936
|
+
if _orig_log_request is not None:
|
|
4937
|
+
handler_class.log_request = _orig_log_request
|
|
4938
|
+
if _orig_log_message is not None:
|
|
4939
|
+
handler_class.log_message = _orig_log_message
|
|
4922
4940
|
|
|
4923
4941
|
# \u83B7\u53D6\u54CD\u5E94\u6570\u636E
|
|
4924
4942
|
wfile.seek(0)
|
|
@@ -5091,6 +5109,19 @@ if __name__ == '__main__':
|
|
|
5091
5109
|
# Dev \u6A21\u5F0F\u901A\u8FC7\u73AF\u5883\u53D8\u91CF\u4F20\u5165\u52A8\u6001\u7AEF\u53E3\uFF0CBuild \u6A21\u5F0F\u9ED8\u8BA4 9000
|
|
5092
5110
|
PORT = int(os.environ.get('PORT', 9000))
|
|
5093
5111
|
|
|
5112
|
+
# \u5168\u5C40\u7981\u7528 Werkzeug access log\uFF08\u5728\u5206\u652F\u5224\u65AD\u4E4B\u524D\uFF0C\u786E\u4FDD ASGI/WSGI \u4E24\u4E2A\u5206\u652F\u90FD\u751F\u6548\uFF09
|
|
5113
|
+
# \u56E0\u4E3A\u5DF2\u6709 Pages \u5E73\u53F0\u7684\u6807\u51C6\u65E5\u5FD7\uFF08Pages request path / Pages response status\uFF09\uFF0C
|
|
5114
|
+
# \u9700\u8981\u907F\u514D Werkzeug/Flask \u8F93\u51FA\u91CD\u590D\u7684 access log
|
|
5115
|
+
import logging as _logging
|
|
5116
|
+
_logging.getLogger('werkzeug').setLevel(_logging.ERROR)
|
|
5117
|
+
# monkey-patch WSGIRequestHandler\uFF0C\u9632\u6B62\u901A\u8FC7 sys.stderr.write \u76F4\u63A5\u8F93\u51FA\u7684 access log
|
|
5118
|
+
try:
|
|
5119
|
+
from werkzeug.serving import WSGIRequestHandler as _WSRH
|
|
5120
|
+
_WSRH.log_request = lambda *a, **kw: None
|
|
5121
|
+
_WSRH.log = lambda *a, **kw: None
|
|
5122
|
+
except ImportError:
|
|
5123
|
+
pass
|
|
5124
|
+
|
|
5094
5125
|
# \u542F\u52A8\u65F6\u626B\u63CF\u6240\u6709\u8DEF\u7531\uFF0C\u5224\u65AD\u662F\u5426\u9700\u8981 uvicorn \u6A21\u5F0F
|
|
5095
5126
|
has_asgi, has_sanic, route_types, asgi_apps = _scan_for_asgi_routes()
|
|
5096
5127
|
|
|
@@ -5132,20 +5163,11 @@ if __name__ == '__main__':
|
|
|
5132
5163
|
uvicorn.run(dispatcher, **uvicorn_config)
|
|
5133
5164
|
else:
|
|
5134
5165
|
# \u5168\u90E8\u662F WSGI/handler\uFF0C\u4FDD\u6301 Flask \u903B\u8F91
|
|
5135
|
-
# \u7981\u7528 Werkzeug \u7684\u542F\u52A8\u6A2A\u5E45\uFF08WARNING/Running on \u7B49\uFF09\u548C access log
|
|
5136
|
-
# \u56E0\u4E3A\u5DF2\u6709 Pages \u5E73\u53F0\u7684\u6807\u51C6\u65E5\u5FD7\uFF08Pages request path / Pages response status\uFF09
|
|
5137
|
-
import logging
|
|
5138
|
-
logging.getLogger('werkzeug').setLevel(logging.ERROR)
|
|
5139
|
-
# \u81EA\u5B9A\u4E49 request handler\uFF0C\u5F7B\u5E95\u7981\u7528 Werkzeug access log
|
|
5140
|
-
from werkzeug.serving import WSGIRequestHandler
|
|
5141
|
-
class _SilentHandler(WSGIRequestHandler):
|
|
5142
|
-
def log_request(self, code='-', size='-'): pass
|
|
5143
|
-
def log(self, type, message, *args): pass
|
|
5144
5166
|
# \u6291\u5236 Flask/Werkzeug \u542F\u52A8\u65F6\u7684 "Serving Flask app" / "Running on" \u8F93\u51FA
|
|
5145
5167
|
import click
|
|
5146
5168
|
click.echo = lambda *a, **kw: None
|
|
5147
5169
|
click.secho = lambda *a, **kw: None
|
|
5148
|
-
app.run(host='0.0.0.0', port=PORT, debug=False
|
|
5170
|
+
app.run(host='0.0.0.0', port=PORT, debug=False)
|
|
5149
5171
|
`,r=dr(nu.OUTPUT_APP);pi.default.writeFileSync(r,t)}generateSiteCustomize(){let t=`import warnings
|
|
5150
5172
|
warnings.filterwarnings("ignore", category=DeprecationWarning)
|
|
5151
5173
|
`,r=ia.default.join(dr(nu.OUTPUT_DIR),"sitecustomize.py");pi.default.writeFileSync(r,t)}generateScfBootstrap(){let t=`#!/bin/bash
|
|
@@ -5840,7 +5862,7 @@ ${l}`)}Bh.default.chmodSync(a,"755")}findGoFilesWithMain(t){let r=[];try{let n=B
|
|
|
5840
5862
|
|
|
5841
5863
|
</body>
|
|
5842
5864
|
</html>`;var pO=class{devConfig;buildInstance;config;server;constructor(t){this.devConfig=t,this.config={...t,watchPaths:J_(this)},this.buildInstance=new IN({mode:"dev",env:t.env})}async start(t={}){try{let r;if(t.skipBuild)r={routes:this.buildInstance.getRoutes()};else{let a=await iC(9e3);r=await this.buildInstance.build({port:a})}if(r.routes.length===0)return{destUrl:null,watch:this.config.watchPaths,type:"node-function",config:this.config,routes:[],status:"no-routes"};if(this.server&&await this.stop(),await O$(process.cwd())==="esm"){let a=lAe.default.join(process.cwd(),".edgeone/cloud-functions/api-node/index.mjs");await(async()=>{try{let s=(0,Ptt.spawn)("node",[a],{stdio:["pipe","inherit","inherit"],env:{...process.env,...this.devConfig.env,NODE_ENV:"development"},cwd:process.cwd()});await new Promise((c,l)=>{s.on("spawn",()=>{c(void 0)}),s.on("error",p=>{jr("Failed to start ESM dev server:",p.message),l(p)})}),this.server=s}catch(s){throw jr("Failed to start ESM dev server:",s.message),console.log("Failed to start ESM dev server:",s.stack),s}})()}else{let a=lAe.default.join(process.cwd(),".edgeone/cloud-functions/api-node/launcher.js");try{delete require.cache[require.resolve(a)];let s=require(a);this.server=await s.startServer()}catch(s){throw jr("[dev] Failed to start dev server:",s.message),console.log("[dev]Failed to start dev server:",s.stack),s}}return{destUrl:`http://localhost:${this.buildInstance.wrapPort}`,watch:this.config.watchPaths,type:"node-function",config:this.config,routes:r.routes,status:"started"}}catch(r){return{destUrl:null,watch:this.config.watchPaths,type:"node-function",config:this.config,routes:[],status:"startFailed",error:r.message}}}async stop(){this.server&&(this.server.kill?(this.server.kill("SIGTERM"),console.log("[dev] node function dev server stopped")):await new Promise((t,r)=>{this.server.close(n=>{n?(console.log("[dev] node function dev server stopped with error",n),r(n)):(console.log("[dev] node function dev server stopped"),t())})}),this.server=null)}async handleFileChange(t){try{let r=!1;this.buildInstance&&this.buildInstance.rebuildFunction&&t?(rn(`[dev] Incremental rebuilding for: ${t}`),await this.buildInstance.rebuildFunction(t),r=!0):rn("[dev] Falling back to full rebuild"),await this.stop();let n=await this.start({skipBuild:r});return n.status==="startFailed"?{destUrl:null,watch:this.config.watchPaths,type:"node-function",config:this.config,routes:n.routes,status:"rebuildFailed",error:n.error}:{destUrl:`http://localhost:${this.buildInstance.wrapPort}`,watch:this.config.watchPaths,type:"node-function",config:this.config,routes:n.routes,status:"rebuilt"}}catch(r){return{destUrl:null,watch:this.config.watchPaths,type:"node-function",config:this.config,routes:[],status:"rebuildFailed",error:r.message}}}};var fO=new Map;fO.set("edge-function",sO);fO.set("node-function",pO);fO.set("python-function",aO);fO.set("go-function",oO);var Rtt=require("worker_threads"),Ftt=require("path"),Ntt=require("events");var JG=class extends Ntt.EventEmitter{workers=new Map;constructor(){super(),process.on("exit",()=>this.stopAll())}async startRunner(t,r){await this.stopRunner(t);let n=new Rtt.Worker((0,Ftt.join)(__dirname,"pages","dev","runner-worker.js"),{workerData:{key:t,config:r},env:{...process.env,FORCE_COLOR:!0}});return this.workers.set(t,n),n.on("error",a=>{console.error(`[Worker ${t}] Error:`,a),_d(`Worker ${t} error`,a)}),n.on("exit",a=>{console.error(`[Worker ${t}] Exited with code ${a}`),this.workers.delete(t)}),new Promise((a,s)=>{let c=l=>{if(process.env.DEBUG&&console.log(`[Worker ${t}] messageHandler`,l),l.type==="started"){n.off("message",c);let p=l.devMatch;ya(`Dev server runner started for ${t}.`),p.process=n,n.on("message",d=>{d.type==="rebuilt"?(vc(`[Worker ${t}] Rebuilt completed, updating devMatch`),Object.assign(p,d.devMatch),this.emit("rebuilt",{key:t,devMatch:{...d.devMatch,process:n}})):(d.type==="startFailed"||d.type==="rebuildFailed")&&(this.emit(d.type,{key:t,error:d.error,devMatch:p}),this.stopRunner(t))}),a(p)}else l.type==="startFailed"?(n.off("message",c),s(new Error(`Runner startup failed for ${t}: ${l.error}`))):l.type==="error"&&l.phase==="startup"&&(n.off("message",c),s(new Error(l.error)))};n.on("message",c),n.postMessage({type:"start"})})}async stopRunner(t){let r=this.workers.get(t);if(!(!r||!r.threadId))return vc(`[WorkerManager] Stopping runner worker for ${t}`),new Promise(n=>{let a=setTimeout(()=>{console.warn(`[Worker ${t}] Force terminating after timeout`),r.terminate(),this.workers.delete(t),n()},5e3);r.once("exit",()=>{clearTimeout(a),this.workers.delete(t),n()});try{r.postMessage({type:"stop"})}catch(s){console.error(`[Worker ${t}] Error sending stop message:`,s),r.terminate(),this.workers.delete(t),n()}})}async stopAll(){let t=[];for(let r of this.workers.keys())t.push(this.stopRunner(r));await Promise.all(t)}getWorker(t){return this.workers.get(t)}async sendRebuildMessage(t,r){let n=this.workers.get(t);if(!n||!n.threadId)return console.log("Rebuild message failed, worker not found",t,n,this.workers),!1;vc(`[Worker ${t}] Sending rebuild message`,t);try{return n.postMessage({type:"rebuild",filePath:r}),!0}catch(a){return console.error(`[Worker ${t}] Error sending rebuild message:`,a),!1}}};var pAe=ar(require("fs"));var Ott=["middleware.js","middleware.ts"],Qtt=["./","./src/"],dO=class{middlewareExecutor=null;config=null;env;constructor(t={}){this.env=t}static hasMiddleware(){for(let t of Qtt)for(let r of Ott){let n=dr(`${t}${r}`);if(pAe.default.existsSync(n))return!0}return!1}findMiddlewareFile(){for(let t of Qtt)for(let r of Ott){let n=dr(`${t}${r}`);if(pAe.default.existsSync(n))return n}return null}async build(){var r,n,a;let t=this.findMiddlewareFile();if(!t){rn("\u26A0\uFE0F No middleware file found"),this.middlewareExecutor=null,this.config=null;return}try{let c=await new I8({mode:"dev",env:this.env,silent:!1}).buildMiddleware(t),l=(n=(r=c.config)==null?void 0:r.normalizedMatcher)!=null&&n.length?c.config.normalizedMatcher:kW((a=c.config)==null?void 0:a.matcher);this.config={...c.config,normalizedMatcher:l},this.middlewareExecutor=this.createRuntimeExecutor(c.code,this.config),rn("\u2705 Middleware loaded successfully")}catch(s){let c=s instanceof Error?s.message:String(s);throw jr(`\u274C Failed to build middleware: ${c}`),s}}createRuntimeExecutor(t,r){let a=new Function(`${IW(t,r)}
|
|
5843
|
-
return { executeMiddleware };`)();if(!a||typeof a.executeMiddleware!="function")throw new Error("Middleware runtime did not expose executeMiddleware");return a.executeMiddleware}async execute(t){if(!this.middlewareExecutor)return null;let r=t.request;if(!r)throw new Error("Invalid middleware context: request is undefined");try{let a={request:this.createFetchRequest(r),urlInfo:t.urlInfo,env:t.env,waitUntil:t.waitUntil};return await this.middlewareExecutor(a)}catch(n){let a=n instanceof Error?n.message:String(n);return jr(`Middleware execution error: ${a}`),null}}createFetchRequest(t){var l;let r=this.convertHeaders(t.headers||{}),n=t.url||"/",a=((l=t.headers)==null?void 0:l.host)||"localhost",s=n.startsWith("http://")||n.startsWith("https://")?n:`http://${a}${n.startsWith("/")?n:`/${n}`}`,c=t.method||"GET";return new Request(s,{method:c,headers:r})}convertHeaders(t){let r=new Headers;for(let[n,a]of Object.entries(t))a&&(Array.isArray(a)?a.forEach(s=>{typeof s=="string"&&r.append(n,s)}):typeof a=="string"&&r.set(n,a));return r}getConfig(){return this.config}};var dAe=Ytt(),mO=require("fs"),hO=require("path"),Fzr=require("chokidar");var KG=class{server;proxy;devConfig;buildMatches;inProgressBuilds;watcher;watchAggregationId;devMatches=new Map;workerManager=new JG;listeningPort;devPort;devOrigin;devProcess;devLog;rebuildDebounceTimers=new Map;middlewareRunner;constructor(t){this.devConfig=t,this.server=Jtt.default.createServer(this.devServerHandler.bind(this)),this.listeningPort=this.devConfig.port||8088,this.devPort=this.devConfig.fePort||6699,this.devConfig.devCommand=Ttt(),this.proxy=Ktt.default.createProxyServer({changeOrigin:!0,ws:!0,xfwd:!0}),this.setupProxy(),this.workerManager.on("rebuilt",({key:r,devMatch:n})=>{vc("Server updated."),this.devMatches.set(r,n)}),this.workerManager.on("startFailed",({key:r,error:n})=>{console.error(`[DevServer] Runner ${r} start failed:`,n),this.devMatches.delete(r)}),this.workerManager.on("rebuildFailed",({key:r,error:n})=>{console.error(`[DevServer] Runner ${r} rebuild failed:`,n),this.devMatches.delete(r)})}async start(){var l;let{timeout:t="",favicon:r=!1}=this.devConfig||{},n=Btt(fO),a=await iC(this.listeningPort,!0);this.listeningPort=a;let s=await CB(process.cwd());if(!s.hasNextJs&&dO.hasMiddleware())try{this.middlewareRunner=new dO(((l=this.devConfig)==null?void 0:l.env)||{}),await this.middlewareRunner.build()}catch(p){jr(`Failed to load middleware: ${p.message}`)}else s.hasNextJs&&dO.hasMiddleware()&&rn("\u2139\uFE0F Next.js middleware detected");for(let[p,d]of n)try{let h=new d(this.devConfig),g=await this.workerManager.startRunner(p,h.config);process.env.DEBUG&&console.log(`[DevServer] started sucesssfully devMatch for ${p}`),this.devMatches.set(p,g),process.env.DEBUG&&p==="node-function"&&g.destUrl&&PG(`Cloud-functions server running at: ${RG(`${g.destUrl}`)}`)}catch(h){let g=h instanceof Error?h.message:String(h);if(g.includes("is not supported")||g.includes("is not available")||g.includes("Failed to install Python")){let v=g.replace(/^Runner startup failed for [^:]+:\s*/,"");jr(v,p),process.exit(1)}console.error(`Failed to start runner for ${p}:`,h),_d(`Failed to start runner for ${p}`,h)}await this.runDevCommand(),this.devMatches.size===0&&!this.devOrigin&&(jr("No runners started successfully. Please fix the errors above and try again."),process.exit(1)),this.server.listen(this.listeningPort,()=>{PG(`Running at: ${RG(`http://localhost:${this.listeningPort}`)}`),this.devLog&&process.stdout.write(this.devLog),Nzr(this.devMatches,async(p,{path:d,type:h})=>{if(p){console.error("Watch error:",p);return}let g=this.rebuildDebounceTimers.get(h);g&&clearTimeout(g);let v=setTimeout(async()=>{console.log(`[DevServer] File changed: ${d}, type: ${h}`),vc("Change detected, rebuild and update server..."),await this.workerManager.sendRebuildMessage(h,d),this.rebuildDebounceTimers.delete(h)},500);this.rebuildDebounceTimers.set(h,v)},async p=>{rn(`[DevServer] New functions found for ${p}, starting runner`);let d=await this.workerManager.startRunner(p,this.devConfig);this.devMatches.set(p,d)},async p=>{rn(`[DevServer] All functions removed for ${p}, stopping runner`),this.workerManager.stopRunner(p),this.devMatches.delete(p)},this)}),this.server.on("upgrade",(p,d,h)=>{if(this.isHMRRequest(p)&&this.devOrigin)try{this.proxy.ws(p,d,h,{target:this.devOrigin,changeOrigin:!0,timeout:3e4})}catch(v){console.error("WebSocket proxy error:",v.message),d.destroy()}else d.destroy()})}stop(){}isHMRRequest(t){let r=t.url||"",n=["/_next/webpack-hmr","/__webpack_hmr","/_vite/ws","/__vite_hmr","/sockjs-node","/socket.io","/_nuxt/","/__nuxt_hmr"];return n.some(a=>r.startsWith(a))?!0:t.headers.upgrade==="websocket"?n.some(a=>r.startsWith(a))||r.includes("hmr"):!!(r.includes("hmr")&&!r.includes("_rsc="))}isRSCRequest(t){let r=t.url||"";return r.includes("?_rsc=")||r.includes("&_rsc=")}async devServerHandler(t,r){var l,p,d,h,g,v;let n=null;if(this.middlewareRunner)try{let b=`http://${t.headers.host||"localhost"}${t.url}`,A=new URL(b),C={request:t,urlInfo:A,env:this.devConfig.env||{},waitUntil:k=>{}},S=await this.middlewareRunner.execute(C);if(S){let k=((l=S.headers)==null?void 0:l.get("x-middleware-next"))==="1",O=(p=S.headers)==null?void 0:p.get("x-middleware-rewrite"),j=(d=S.headers)==null?void 0:d.get("x-middleware-request-headers"),L=(h=S.headers)==null?void 0:h.get("x-middleware-override-headers");if(O&&(process.env.DEBUG&&console.log(`[Middleware] Rewrite: ${t.url} -> ${O}`),t.url=O),L)try{let $=new Set(["accept-encoding"]),ie=L.split(",").map(G=>G.trim());for(let G of ie){if($.has(G.toLowerCase()))continue;let ye=(g=S.headers)==null?void 0:g.get("x-middleware-request-"+G);ye!==null&&(t.headers[G.toLowerCase()]=ye)}process.env.DEBUG&&console.log(`[Middleware] Override headers: ${L}`)}catch($){console.error("Middleware override headers error:",$)}else j&&this.applyRequestHeaderPatch(t,j);if(!k&&!O){process.env.DEBUG&&console.log(`[Middleware] Return response: ${S.status}`),r.writeHead(S.status,Object.fromEntries(S.headers.entries()));let $=await S.text();return r.end($)}if(k){n=new Headers;let $=new Set(["x-middleware-next","x-middleware-rewrite","x-middleware-request-headers","x-middleware-override-headers","x-middleware-set-cookie","date","connection","content-length","content-encoding","transfer-encoding","set-cookie"]);S.headers.forEach((G,ye)=>{let re=ye.toLowerCase();!$.has(re)&&!re.startsWith("x-middleware-request-")&&n.set(ye,G)}),(S.headers.getSetCookie?S.headers.getSetCookie():[]).forEach(G=>{n.append("Set-Cookie",G)}),t._middlewareResponseHeaders=n}process.env.DEBUG&&k&&console.log("[Middleware] Next: continue to functions")}}catch(b){jr(`Middleware execution error: ${b.message}`)}let a=(v=this.routeMatch(t))!=null?v:"",s=this.isHMRRequest(t),c=this.isRSCRequest(t);if(process.env.DEBUG&&(console.log(`[DevServer] ${t.method} ${t.url} - isHMR: ${s}, isRSC: ${c}, destUrl: ${a}`),console.log("--------------------------------check dev matches--------------------------------"),console.log(this.devMatches),console.log("--------------------------------check dev matches--------------------------------")),a&&!s&&!c)f3e(t.method.toUpperCase(),t.url),this.proxy.web(t,r,{target:a,changeOrigin:!0});else if(this.devOrigin)try{this.proxy.web(t,r,{target:this.devOrigin,changeOrigin:!0,ws:!0,timeout:5e3})}catch(b){console.error("Proxy web error:",b.message),r.writeHead(502,{"Content-Type":"application/json"}),r.end(JSON.stringify({error:"Bad Gateway",message:"Frontend dev server is temporarily unavailable"}))}else{let b=this.staticMatch(t);if(b){let A=dAe.lookup(b)||"application/octet-stream";return r.setHeader("Content-Type",A),mO.createReadStream(b).pipe(r)}else{r.statusCode=404;let A=this.staticMatch("/404.html"),C=this.staticMatch("/index.html");if(A)return r.setHeader("Content-Type",dAe.lookup(A)),mO.createReadStream(A).pipe(r);if(C)return r.setHeader("Content-Type",dAe.lookup(C)),mO.createReadStream(C).pipe(r);r.setHeader("Content-Type","text/html; charset=utf-8"),r.end(Dtt)}}}async runDevCommand(){let t=this.devConfig.devCommand;if(!t||t.indexOf("undefined")>-1)return;let r=await iC(this.devPort);this.devPort=r;let[n,...a]=t.split(" ");a.push("--port",this.devPort);let s=(0,Xtt.spawn)(n,a,{cwd:process.cwd(),env:{...process.env,FORCE_COLOR:"1"},stdio:["inherit","pipe","pipe"]});this.devProcess=s;let c=new RegExp(this.devPort.toString(),"g");if(!s.stdout||!s.stderr)throw new Error("Expected child process to have stdout and stderr");s.stderr.pipe(process.stderr),s.stdout.setEncoding("utf8"),await new Promise(l=>{let p=setTimeout(()=>l(!1),2e3);s.stdout.once("data",d=>{this.devLog=d,clearTimeout(p),l(!0)})}),process.env.DEBUG&&PG(`DevServer running at: ${RG(`http://localhost:${this.devPort}`)}`),s.stdout.on("data",l=>{process.stdout.write(l.replace(c,this.listeningPort.toString()))}),s.on("error",l=>{jr(`Error executing dev command: ${l.message}`)}),s.on("close",l=>{l!==0?vm(`Dev command exited with code ${l}`):rn("Dev command exited normally"),setTimeout(()=>{(!this.devProcess||this.devProcess.killed)&&(this.devOrigin=void 0,rn("Dev server origin cleared"))},2e3)}),this.devOrigin=`http://127.0.0.1:${this.devPort}`}staticMatch(t){var c;let r=typeof t=="string"?t:t!=null&&t.url?decodeURI(t.url):"",n=(c=r==null?void 0:r.split("?")[0])==null?void 0:c.replace(/^\//,""),a=z_("outputDirectory","OutputDir",()=>""),s=dr(hO.join(a,n||"index.html"));return mO.existsSync(s)?s:null}routeMatch(t){var p,d;let r=t.url||"",n=t.method||"GET";if(this.isHMRRequest(t))return null;let a=r.split("?")[0],s=Array.from(this.devMatches.entries()).filter(([h,g])=>g.routes.some(v=>{if(v.isFramework){if(v.src){if(v.src==="^/$"&&!this.staticMatch(a))return!0;let S=v.src.replace(/^\^|\$$/g,"").split("/")[1]||"";if(S&&a.startsWith(`/${S}`))return!0}if(v.routePath&&(v.routePath==="/"&&!this.staticMatch(a)||a.startsWith(v.routePath)&&(a.replace(v.routePath,"").startsWith("/")||a.replace(v.routePath,"")==="")))return!0}let b=v==null?void 0:v.method,A=Array.isArray(b)?b:typeof b=="string"&&b.length>0?[b]:null;if(A&&!A.includes(t.method))return!1;if(v!=null&&v.src)try{let C=new RegExp(v.src).test(a);return process.env.DEBUG&&console.log(" \u5339\u914D\u68C0\u67E5 (\u65B0\u683C\u5F0F)",v.src,C,A?A.includes(t.method):!0),C}catch(C){return console.warn(`Invalid regex pattern: ${v.src}`,C),!1}if(v!=null&&v.routePath){let C=`^${v.routePath.replace(/\//g,"\\/").replace(/\/:(\w+)\*$/,"/.*").replace(/:(\w+)/g,"([^/]*)")}$`,S=new RegExp(C).test(a);return process.env.DEBUG&&console.log(" \u5339\u914D\u68C0\u67E5 (\u65E7\u683C\u5F0F)",v.routePath,S,A?A.includes(t.method):!0),S}return!1})),c=["edge-function","node-function","python-function","go-function"];return(d=(p=s.sort((h,g)=>c.indexOf(h[0])-c.indexOf(g[0]))[0])==null?void 0:p[1])==null?void 0:d.destUrl}setupProxy(){this.proxy.on("error",(t,r,n)=>{if(console.error("proxy error",t),r&&this.isHMRRequest(r)){console.log("HMR proxy error for:",r.url);return}_d("Proxy server error",t),n&&!n.headersSent&&(n.writeHead(502,{"Content-Type":"application/json"}),n.end(JSON.stringify({error:"Bad Gateway",message:"The upstream server is temporarily unavailable"})))}),this.proxy.on("proxyRes",(t,r,n)=>{let a=r._middlewareResponseHeaders;a&&a.forEach((s,c)=>{if(c.toLowerCase()==="set-cookie"){let l=t.headers["set-cookie"];l?Array.isArray(l)?t.headers["set-cookie"]=[...l,s]:t.headers["set-cookie"]=[l,s]:t.headers["set-cookie"]=[s]}else t.headers[c.toLowerCase()]=s}),this.isRSCRequest(r)&&(t.headers["content-type"]||(t.headers["content-type"]="text/plain; charset=utf-8"),t.headers["cache-control"]="no-cache, no-store, must-revalidate",t.headers.pragma="no-cache",t.headers.expires="0"),this.isHMRRequest(r)&&(t.headers["access-control-allow-origin"]="*",t.headers["access-control-allow-methods"]="GET, POST, PUT, DELETE, OPTIONS",t.headers["access-control-allow-headers"]="Content-Type, Authorization, X-Requested-With",r.headers.upgrade==="websocket"&&(t.headers["access-control-allow-credentials"]="true"))}),this.proxy.on("proxyReqWs",(t,r,n,a,s)=>{n.on("error",c=>{console.error("WebSocket socket error:",c.message)})}),this.proxy.on("proxyResWs",(t,r,n,a)=>{n.on("error",s=>{console.error("WebSocket response error:",s.message)})}),this.proxy.on("econnreset",(t,r,n,a)=>{console.log("Connection reset, probably due to dev server restart")})}applyRequestHeaderPatch(t,r){try{let n=decodeURIComponent(r),a=JSON.parse(n);Object.entries(a).forEach(([s,c])=>{let l=s.toLowerCase();if(c===null||typeof c>"u"){delete t.headers[l];return}t.headers[l]=c})}catch(n){jr(`Failed to apply middleware request headers: ${n instanceof Error?n.message:String(n)}`)}}async reloadMiddleware(){if(this.middlewareRunner)try{await this.middlewareRunner.build(),ya("\u2705 Middleware reloaded successfully")}catch(t){jr(`Failed to reload middleware: ${t.message}`)}}async close(){for(let t of this.rebuildDebounceTimers.values())clearTimeout(t);if(this.rebuildDebounceTimers.clear(),await this.workerManager.stopAll(),this.devProcess)try{this.devProcess.pid&&process.kill(this.devProcess.pid,0)&&process.kill(this.devProcess.pid)}catch(t){t.code!=="ESRCH"&&console.error("Failed to kill dev process:",t)}finally{this.devProcess=null}return new Promise(t=>{if(!this.server.listening){t();return}this.server.close(()=>{console.log("HTTP server closed"),t()})})}};async function Nzr(e,t,r,n,a){function s(S,k){try{let O=G=>hO.normalize(G).replace(/^\.\//,"").replace(/\\/g,"/"),j=O(S),L=O(k),$=hO.resolve(process.cwd(),k);return hO.resolve(process.cwd(),S).startsWith($)||j.startsWith(L)}catch(O){console.error("match path error",O)}}let c=new Map;function l(S){return S.replace(/\\/g,"/").replace(/^\.\//,"")}function p(S){let k=l(S),O=iAe(k);return O.length>0?c.set(k,O):c.delete(k),O}function d(S){let k=l(S);return c.get(k)||iAe(k)}function h(S){return Array.from(c.values()).some(k=>k.includes(S))}function g(S){let k=l(S).replace(/\/$/,"");return Array.from(c.keys()).filter(O=>O.startsWith(`${k}/`))}function v(S){return g(S).length>0}function b(S){if(mO.existsSync(S))for(let k of mO.readdirSync(S,{withFileTypes:!0})){let O=hO.join(S,k.name);k.isDirectory()?b(O):p(hO.relative(process.cwd(),O))}}async function A(S){let k=l(S),O=d(k);c.delete(k);for(let j of O)h(j)?await t(null,{path:k,type:j}):await(n==null?void 0:n(j))}b(dr("cloud-functions")),b(dr("node-functions")),b(dr("edge-functions")),b(dr("functions")),Fzr.watch(".",{ignored:[/(^|[\/\\])\../,/node_modules/,/\.git/,/dist/,/build/,/\.edgeone/],persistent:!0,ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:500,pollInterval:300}}).on("add",async function(S){let k=p(S);if(k.length!==0){console.log("add",S,"; file type:",k.join(","));for(let O of k)if(Y_(O)&&!e.has(O))try{await(r==null?void 0:r(O)),vc(`[DevServer] Runner ${O} started`)}catch(L){console.error(`Failed to start runner ${O}:`,L)}else await t(null,{path:S,type:O})}}).on("unlink",async function(S){console.log("unlink",S),!(v(S)||d(S).length===0)&&await A(S)}).on("unlinkDir",async function(S){console.log("unlinkDir",S);let k=g(S);for(let O of k)await A(O)}).on("change",async function(S){if(console.log("change",S),(S==="middleware.js"||S==="middleware.ts"||S==="src/middleware.js"||S==="src/middleware.ts")&&(a!=null&&a.middlewareRunner)){vc("Middleware changed, reloading...");try{await(a==null?void 0:a.reloadMiddleware())}catch(L){jr(`Failed to reload middleware: ${L.message}`)}return}let O=p(S);if(O.length>0){for(let L of O){if(!e.has(L)&&Y_(L)){await(r==null?void 0:r(L));continue}await t(null,{path:S,type:L})}return}let j=Array.from(e.values()).find(L=>{var $;return($=L.watch)==null?void 0:$.some(ie=>s(S,ie))});j&&await t(null,{path:S,type:(j==null?void 0:j.type)||"unknown"})})}var ert=ar(require("path"));var Ztt=OF();async function Ozr(){let t=`env_vars_pull_prompt_${ert.default.basename(process.cwd())}`;try{let r=new Date().toISOString().split("T")[0],n=await pF(t);if(n&&n.date===r)return n.shouldPull;let{pullEnvVars:a}=await Ztt({type:"confirm",name:"pullEnvVars",message:"Sync environment variables from the EdgeOne Pages console?",default:!0});return yH("Your choice will be remembered for the rest of the day."),await lF(t,{date:r,shouldPull:a}),a}catch(r){console.warn("Failed to check env vars pull prompt cache:",r);let{pullEnvVars:n}=await Ztt({type:"confirm",name:"pullEnvVars",message:"Do you want to pull env vars from EdgeOne Pages Console?",default:!0});return n}}async function trt(e){let{token:t,skipEnvSync:r}=e;t&&(process.env.EDGEONE_PAGES_API_TOKEN=t,await gE()),e.debug&&(process.env.DEBUG="true",console.log("Running in debug mode")),await Iy();let n=process.cwd(),a;try{a=U0(`${process.cwd()}/.edgeone/project.json`)}catch{}let s={},c=a&&a.Name&&a.ProjectId;c&&(s={...s,...a});let l=r?!1:await Ozr();if(l&&c){l&&await V_(a.ProjectId).catch(A=>{_d("Dev pull env vars error,",A),jr("Pull env vars error:"+A.message)});let b={};try{let A=dr("./.env");b=VF(A),s.env=b}catch{b={}}}if(c)try{rn("Pulling KV bindings...");let b=await oYe(a.ProjectId);b.length>0?(s.env=s.env||{},s.env[CN]=JSON.stringify(b),rn(`Found ${b.length} KV binding(s).`)):rn("No KV bindings found.")}catch(b){process.env.DEBUG&&console.log("[KV] Pull KV bindings error:",b)}else rn("Dev server running in raw mode...");let p=new VN(n),d=await J0(),h=await _W(n,d);await p.loadPlugins(h),e.fePort&&(s.fePort=e.fePort),e.port&&(s.port=e.port);let g={...s.env||{}};delete g[CN],await p.onPreDev({cwd:n,env:g,config:d});let v=new KG(s);return process.on("SIGINT",async()=>{console.log("Received SIGINT signal, shutting down..."),v&&await v.close(),process.exit(0)}),process.on("SIGTERM",async()=>{console.log("Received SIGTERM signal, shutting down..."),v&&await v.close(),process.exit(0)}),await p.onDev({cwd:n,env:g,config:d!=null?d:void 0}),await v.start().then(()=>{setTimeout(()=>{console.log(" Shutting down local server..."),process.exit(1)},1e3*60*60*2)}).catch(b=>{_d("Dev server unhandled error:",b),jr("Run pages dev error:"+b)})}var QNt=ar(require("fs"));var kNt=ar(x0t()),Nu=ar(require("path")),uw=ar(require("fs/promises")),TNt=ar(moe());var BNt=require("fs");var Gre=ar(cEt()),m9n=_Nt(),INt=process.env.https_proxy||process.env.HTTPS_PROXY||process.env.http_proxy||process.env.HTTP_PROXY;if(INt){let e=new Gre.ProxyAgent(INt);(0,Gre.setGlobalDispatcher)(e)}TNt.default.config();var cw={FILE_PARALLEL_LIMIT:parseInt(process.env.COS_FILE_PARALLEL_LIMIT||"10"),CHUNK_PARALLEL_LIMIT:parseInt(process.env.COS_CHUNK_PARALLEL_LIMIT||"8"),CHUNK_SIZE_MB:parseInt(process.env.COS_CHUNK_SIZE_MB||"8"),CHUNK_RETRY_TIMES:parseInt(process.env.COS_CHUNK_RETRY_TIMES||"2")},DNt="https://pages-api.cloud.tencent.com/v1",g9n="https://pages-api.edgeone.ai/v1",A9n="https://eo-test.qcloud.com/v1";var PNt=process.env.TEST_API_ENV==="test"?A9n:DNt;var y9n=async()=>{let e=process.env.EDGEONE_PAGES_API_TOKEN;if(!e)throw new Error('Missing EDGEONE_PAGES_API_TOKEN. Please provide a api token with --token or login first with "edgeone login".');return e},v9n=async()=>`Bearer ${await y9n()}`,Db=()=>{let e=process.env.EDGEONE_PAGES_PROJECT_NAME||"";if(!e)throw new Error("Project name is required. Please provide using the -n or --name parameter.");return e},cR=async e=>{var c,l;let{action:t,data:r={},baseUrl:n=PNt,throwOnError:a=!0}=e,s={Action:t,...r};try{let p=await fetch(n,{method:"POST",headers:{"Content-Type":"application/json",Authorization:await v9n()},body:JSON.stringify(s)});if(!p.ok){let h=await p.text(),g=new Error(`API request failed (${p.status}): ${h}`);if(a)throw g;return{Code:-1,Data:{},Message:g.message,RequestId:""}}let d=await p.json();if(d.Code!==0&&a)throw(l=(c=d.Data)==null?void 0:c.Response)!=null&&l.Error?new Error(d.Data.Response.Error.Message):new Error(`API error: ${d.Message}`);return d}catch(p){if(a)throw jr(`[callApi] ${t} failed: ${p instanceof Error?p.message:String(p)}`),p;return{Code:-1,Data:{},Message:p instanceof Error?p.message:String(p),RequestId:""}}},Ek={token:null,cos:null},RNt=()=>{Ek.token=null,Ek.cos=null},Wre=e=>new Promise(t=>setTimeout(t,e)),x9n=async()=>{let e=async n=>{let a=await cR({action:"DescribePagesProjects",data:{PageNumber:1,PageSize:10},baseUrl:n,throwOnError:!1});return{success:a.Code===0,code:a.Code}},t=await px(),r=[];r=[DNt,g9n];for(let n of r)if((await e(n)).success){PNt=n;return}throw new Error('Invalid EDGEONE_PAGES_API_TOKEN. Please provide a valid API token with --token or login first with "edgeone login". For more information, please refer to https://edgeone.ai/document/177158578324279296')},FNt=(e,t)=>{if(e.Provider&&e.Provider!=="Upload")throw new Error(`[${t}] Project ${Db()} exists but has Provider '${e.Provider}'. This project type does not support direct folder or zip file deployment. Only projects with Provider 'Upload' are supported.`)},NNt=async(e="global")=>{var r,n,a,s,c,l;if(Ek.token)return Ek.token;let t;try{let p=await Yre({projectName:Db()});if(((a=(n=(r=p.Data)==null?void 0:r.Response)==null?void 0:n.Projects)==null?void 0:a.length)>0){let d=p.Data.Response.Projects[0];t=d.ProjectId,FNt(d,"getCosTempToken")}else{let d=await HBe(e);if(((l=(c=(s=d.Data)==null?void 0:s.Response)==null?void 0:c.Projects)==null?void 0:l.length)>0)t=d.Data.Response.Projects[0].ProjectId;else throw new Error(`Failed to create project ${Db()}`)}}catch(p){throw jr(`[getCosTempToken] Error: ${p instanceof Error?p.message:String(p)}`),new Error(`Failed to get or create project ${Db()}: ${p instanceof Error?p.message:String(p)}`)}try{let p=await cR({action:"DescribePagesCosTempToken",data:{ProjectId:t}});return Ek.token=p,p}catch(p){throw jr(`[getCosTempToken] Error getting COS token: ${p instanceof Error?p.message:String(p)}`),p}},b9n=async(e="global")=>{var r,n,a;if(!Db())throw new Error("Project name is required. Please provide using the -n or --name parameter.");let t;try{t=await Yre({projectName:Db()})}catch(s){if(s instanceof Error&&s.message.includes("Provider")&&s.message.includes("This project type does not support"))throw s;return vc(`[getOrCreateProject] Error checking project ${Db()}: ${s}. Attempting to create project.`),await HBe(e)}if(((a=(n=(r=t.Data)==null?void 0:r.Response)==null?void 0:n.Projects)==null?void 0:a.length)>0){let s=t.Data.Response.Projects[0];return FNt(s,"getOrCreateProject"),ya(`Project ${jB.highlight(Db())} already exists. Using existing project.`),t}return vm(`Project ${jB.highlight(Db())} doesn't exist. Creating new project.`),await HBe(e)},HBe=async(e="global")=>{var t,r,n,a,s;try{vc(`[CreatePagesProject] Creating new project with name: ${Db()} in ${e} area`);let c=await cR({action:"CreatePagesProject",data:{Name:Db(),Provider:"Upload",Channel:"Custom",Area:e,Source:process.env.PAGES_SOURCE||"cli"}});if(!((r=(t=c==null?void 0:c.Data)==null?void 0:t.Response)!=null&&r.ProjectId))throw new Error(((s=(a=(n=c==null?void 0:c.Data)==null?void 0:n.Response)==null?void 0:a.Error)==null?void 0:s.Message)||"Failed to get ProjectId from API response");return await Wre(2e3),await Yre({projectId:c.Data.Response.ProjectId})}catch(c){throw jr("Error creating pages project: "+c),c}},Yre=async e=>{let{projectId:t,projectName:r}=e;try{let n=[];t&&n.push({Name:"ProjectId",Values:[t]}),r&&n.push({Name:"Name",Values:[r]});let a=await cR({action:"DescribePagesProjects",data:{Filters:n,Offset:0,Limit:10,OrderBy:"CreatedOn"}});return a.Data?a.Data.Response?a.Data.Response.Projects||(a.Data.Response.Projects=[]):a.Data.Response={Projects:[]}:a.Data={Response:{Projects:[]}},a}catch(n){return jr(`[describePagesProjects] Error: ${n instanceof Error?n.message:String(n)}`),{Code:-1,Data:{Response:{Projects:[]}},Message:n instanceof Error?n.message:String(n),RequestId:""}}},E9n=async(e,t=!0)=>await cR({action:"DescribePagesDeployments",data:{ProjectId:e,Offset:0,Limit:50,OrderBy:"CreatedOn",Order:"Desc"},throwOnError:t}),w9n=async e=>await cR({action:"DescribePagesEncipherToken",data:{Text:e}}),VBe=e=>Nu.extname(e).toLowerCase()===".zip",S9n=async e=>{let{projectId:t,targetPath:r,isZip:n,env:a}=e;return await cR({action:"CreatePagesDeployment",data:{ProjectId:t,ViaMeta:"Upload",Provider:"Upload",Env:a,DistType:n?"Zip":"Folder",TempBucketPath:r,BuildFrom:"CLI"}})},$Be=async(e="global")=>{if(Ek.cos)return Ek.cos;let t=await NNt(e);if(t.Code!==0||!t.Data||!t.Data.Response||!t.Data.Response.Credentials)throw new Error("Failed to get COS temp token");let n=t.Data.Response.Credentials,a=new kNt.default({SecretId:n.TmpSecretId,SecretKey:n.TmpSecretKey,SecurityToken:n.Token,FileParallelLimit:cw.FILE_PARALLEL_LIMIT,ChunkParallelLimit:cw.CHUNK_PARALLEL_LIMIT,ChunkRetryTimes:cw.CHUNK_RETRY_TIMES,ChunkSize:1024*1024*cw.CHUNK_SIZE_MB,SliceSize:1024*1024*cw.CHUNK_SIZE_MB,ProgressInterval:1e3});return Ek.cos=a,a},C9n=async e=>{let t=[],r=async n=>{let a=await uw.readdir(n,{withFileTypes:!0});for(let s of a){let c=Nu.join(n,s.name),l=s.isDirectory(),p=await uw.stat(c);t.push({isDir:l,path:l?`${c}/`:c,size:l?0:p.size}),l&&await r(c)}};try{if(await r(e),t.length>1e6)throw new Error("too_much_files");return t}catch(n){throw jr("Error in fastListFolder: "+n),n}},_9n=async(e,t={})=>{let r=Nu.dirname(e),n=Nu.basename(e),a=Nu.basename(process.cwd()),s=Nu.join(r,`${a}.zip`),{level:c=9,excludePatterns:l=["node_modules",".git",".DS_Store","*.log"],includeHidden:p=!1}=t;return new Promise(async(d,h)=>{try{let g=(0,BNt.createWriteStream)(s),v=m9n("zip",{zlib:{level:c}});if(v.on("error",b=>{throw b}),g.on("close",()=>{d(s)}),v.pipe(g),n===".edgeone"){v.directory(e,`${a}/${n}`,{ignore:l,dot:p});let b=dr("edgeone.json");fF(b)&&v.file(b,{name:`${a}/edgeone.json`})}else v.directory(e,n,{ignore:l,dot:p});await v.finalize()}catch(g){throw jr(`[zipFile] Error compressing folder: ${g instanceof Error?g.message:String(g)}`),g}})},I9n=async(e,t,r,n,a=!1,s="global",c=!1)=>{let l=Nu.isAbsolute(e)?e:dr(e);if(a&&!VBe(l))try{let v=await _9n(l,{level:6,excludePatterns:["node_modules",".git",".DS_Store","*.log","*.tmp"],includeHidden:c}),b=Nu.basename(v),A=await $Be(s),C=new GU(A,t,r,n);try{let S=await C.uploadZipFile(v,b);return uw.unlink(v).catch(()=>{}),S}catch(S){throw jr(`[uploadToEdgeOneCOS] Error uploading compressed file: ${S instanceof Error?S.message:String(S)}`),S}}catch(v){jr(`[optionallyCompressAndUpload] Compression failed, falling back to direct upload: ${v instanceof Error?v.message:String(v)}`)}vc("[uploadToEdgeOneCOS] Scanning directory for files...");let p=await C9n(e);vc(`[uploadToEdgeOneCOS] Found ${p.length} files/directories in ${e}`);let d=T9n(p,e,t,r,n);vc(`[uploadToEdgeOneCOS] Uploading ${d.length} files to COS with targetPath: ${n}...`);let h=await $Be(s);return await new GU(h,t,r,n).uploadMultipleFiles(d),vc("[uploadToEdgeOneCOS] Upload successful."),{success:!0,targetPath:n,isZip:!1}},k9n=e=>{let t={next:{dirName:"next",versions:[14,15]},react:{dirName:"react",versions:[18]},"react-dom":{dirName:"react-dom",versions:[18]}},r=[];for(let n in t){let a=t[n],s=Nu.join(e,"server-handler","node_modules",a.dirName,"package.json");if(fF(s)){let c=U0(s);c!=null&&c.version&&a.versions.includes(parseInt(c==null?void 0:c.version.split(".")[0],10))&&r.push(`server-handler/node_modules/${a.dirName}/`)}}return r};var T9n=(e,t,r,n,a)=>{let s=Nu.basename(t),c=Nu.basename(Nu.dirname(t)),l=[];return s===".edgeone"&&dirExitsSync(Nu.join(t,"server-handler"))&&(l=k9n(t)),e.map(p=>{let d=Nu.relative(t,p.path).replace(/\\/g,"/"),h=s===".edgeone"?`${a}/${c}/${s}/${d||""}`:`${a}/${d||""}`;return{Bucket:r,Region:n,Key:h,FilePath:p.path}}).filter(p=>!(p.FilePath.endsWith("/")||p.Key==="/"||p.Key===""||l.length&&l.some(d=>p.FilePath.includes(d))||p.FilePath!==t&&p.FilePath.startsWith(".")&&p.FilePath!==Nu.basename(p.FilePath)||p.FilePath.startsWith(`node_modules${Nu.sep}`)))};var GU=class{cos;bucket;region;targetPath;constructor(t,r,n,a){this.cos=t,this.bucket=r,this.region=n,this.targetPath=a}async uploadSingleFile(t,r){return new Promise((n,a)=>{let s=g3e("[Uploader] Uploading file","cli",30,"cyan");this.cos.uploadFile({Bucket:this.bucket,Region:this.region,Key:r,FilePath:t,SliceSize:1024*1024*cw.CHUNK_SIZE_MB,ChunkSize:1024*1024*cw.CHUNK_SIZE_MB,ChunkParallel:cw.CHUNK_PARALLEL_LIMIT,ChunkRetryTimes:cw.CHUNK_RETRY_TIMES,onProgress:c=>{if(c.percent!=null){let l=Math.max(0,Math.min(100,Math.round(c.percent*100)));s.update(l,"[Uploader] Uploading file")}},onHashProgress:c=>{if(c.percent!=null){let l=Math.max(0,Math.min(100,Math.round(c.percent*100)));s.update(l,"Calculating hash")}}},(c,l)=>{s.stop(),c?(jr(`[Uploader] Error uploading file ${r}: ${c.message}`),a(c)):n(l)})})}async uploadMultipleFiles(t){vc(`[uploadFiles] Starting upload of ${t.length} files with optimized settings...`);let r=100;if(t.length>r){vc(`[uploadFiles] Large file count detected (${t.length}), processing in batches of ${r}...`);let n=[];for(let a=0;a<t.length;a+=r){let s=t.slice(a,a+r);vc(`[uploadFiles] Processing batch ${Math.floor(a/r)+1}/${Math.ceil(t.length/r)} (${s.length} files)...`);let c=await this.uploadFilesBatch(s);n.push(c)}return{files:n.flat()}}else return this.uploadFilesBatch(t)}async uploadFilesBatch(t){let r=ym(),n=-1;return new Promise((a,s)=>{this.cos.uploadFiles({files:t,SliceSize:1024*1024*cw.CHUNK_SIZE_MB,onProgress:c=>{if(c.percent){let l=Math.round(c.percent*100);r&&(l>=n+20||l===100)&&(n=l,console.log(`[cli] Upload progress: ${l}%`))}},onFileFinish:(c,l,p)=>{c?jr(`[uploadFilesBatch] File upload failed: ${p.Key} - ${c.message}`):process.env.DEBUG_UPLOAD&&vc(`[uploadFilesBatch] File uploaded successfully: ${p.Key}`)}},function(c,l){c?(jr(`[uploadFilesBatch] Batch upload failed: ${c.message}`),s(c)):(vc(`[uploadFilesBatch] Batch uploaded successfully (${t.length} files)`),a(l))})})}async uploadZipFile(t,r){let n=`${this.targetPath}/${r}`;try{return await this.uploadSingleFile(t,n),ya("File uploaded successfully"),{success:!0,isZip:!0,targetPath:n}}catch(a){throw jr(`[Uploader] Error uploading zip file: ${a instanceof Error?a.message:String(a)}`),a}}},B9n=async(e,t="global")=>{var r;try{let n=await NNt(t);if(n.Code!==0||!((r=n==null?void 0:n.Data)!=null&&r.Response))throw new Error(`Failed to get COS token: ${n.Message||"Invalid token response"}`);let a=n.Data.Response,s=a.Bucket,c=a.Region,l=a.TargetPath;if(!s||!c||!l)throw new Error("Missing required COS parameters (Bucket, Region, TargetPath) in token response.");if(VBe(e)){vc(`[uploadToEdgeOneCOS] Uploading zip file to COS with targetPath: ${l}...`);let d=Nu.basename(e),h=`${l}/${d}`,g=await $Be(t),v=new GU(g,s,c,l);try{return await v.uploadZipFile(e,d)}catch(b){throw jr(`[uploadToEdgeOneCOS] Error uploading zip file: ${b instanceof Error?b.message:String(b)}`),b}}else return await I9n(e,s,c,l,!0,t,e!=="./")}catch(n){throw RNt(),jr(`[uploadToEdgeOneCOS] Error: ${n instanceof Error?n.message:String(n)}`),new Error(`Error uploading to COS: ${n instanceof Error?n.message:String(n)}`)}},D9n=async(e,t)=>{let r=!0,n=null,a=m3e("[DeployStatus] Deploying","cli",300,6),s=0,c=ym();for(;r;)try{if(s++,c&&s%2===0){let p=(n==null?void 0:n.Status)||"Pending";console.log(`[cli] Deployment in progress... (status: ${p}, elapsed: ~${s*5}s)`)}let l=await E9n(e,!1);if(l.Code!==0){await Wre(5e3);continue}if(n=l.Data.Response.Deployments.find(p=>p.DeploymentId===t),!n)throw new Error(`Deployment with ID ${t} not found`);["Process","Pending"].includes(n.Status)?await Wre(5e3):r=!1}catch{await Wre(5e3);continue}return a.stop(),n},P9n=async e=>{try{await uw.access(e)}catch{throw new Error("localPath does not exist")}let t=await uw.stat(e),r=VBe(e);if(!t.isDirectory()&&!r)throw new Error("localPath must be a folder or zip file");return r},R9n=async(e,t,r="Production")=>{var s,c,l,p,d,h,g;let n=await Yre({projectId:t});if(!((l=(c=(s=n==null?void 0:n.Data)==null?void 0:s.Response)==null?void 0:c.Projects)!=null&&l[0]))throw new Error("Failed to retrieve project status information.");let a=n.Data.Response.Projects[0];if(e.Status==="Success"){if(r==="Production"&&a.CustomDomains&&a.CustomDomains.length>0){let k=a.CustomDomains[0];if(k.Status==="Pass")return{type:"custom",url:`https://${k.Domain}`,projectId:t}}let v;r==="Production"?v=a.PresetDomain:v=e.PreviewUrl?e.PreviewUrl.replace("https://",""):a.PresetDomain;let b=await w9n(v);if(b.Code!==0||!((d=(p=b==null?void 0:b.Data)==null?void 0:p.Response)!=null&&d.Token)||!((g=(h=b==null?void 0:b.Data)==null?void 0:h.Response)!=null&&g.Timestamp))throw new Error(`Deployment completed, but failed to get access token: ${b.Message||"Invalid token data"}`);let{Token:A,Timestamp:C}=b.Data.Response;return{type:"preset",url:`https://${v}?eo_token=${A}&eo_time=${C}`,projectId:t}}else throw new Error(`Deployment failed with status: ${e.Status}`)},ONt=async(e,t="Production",r="global")=>{var n,a,s,c,l,p,d,h;try{RNt();let g=await P9n(e);vc("Validating API endpoint..."),await x9n();let v=await b9n(r),b=(s=(a=(n=v==null?void 0:v.Data)==null?void 0:n.Response)==null?void 0:a.Projects)==null?void 0:s[0],A=b==null?void 0:b.ProjectId;if(!A)throw new Error("Failed to retrieve Project ID after get/create. Please check the project name and API key.");ya(`Using Project ID: ${jB.highlight(A)}`);let C=Nu.join(process.cwd(),".edgeone","project.json");xh(C,JSON.stringify({Name:b.Name,ProjectId:A})),vc(`Uploading ${g?"zip file":"folder"} to EdgeOne COS...`);let S=await B9n(e,r);if(!S.targetPath)throw new Error("COS upload succeeded but targetPath is missing.");let k=S.targetPath;ya(`Creating deployment in ${t} environment...`);let O=await S9n({projectId:A,targetPath:k,isZip:S.isZip||g,env:t});if((l=(c=O==null?void 0:O.Data)==null?void 0:c.Response)!=null&&l.Error)throw new Error(`Failed to create deployment: ${(h=(d=(p=O==null?void 0:O.Data)==null?void 0:p.Response)==null?void 0:d.Error)==null?void 0:h.Message}`);let j=O.Data.Response.DeploymentId;ya(`Created deployment with Deployment ID: ${jB.highlight(j)}`),vc("Waiting for deployment to complete...");let L=await D9n(A,j);L.Status==="Success"?ya(`Deploy ${L.Status}`):jr(`Deploy ${L.Status}`);let $=await R9n(L,A,t);return ya("Deployment to EdgeOne Pages completed successfully! To view your project's live URL."),console.log(`EDGEONE_DEPLOY_URL=${$.url}`),console.log(`EDGEONE_DEPLOY_TYPE=${$.type}`),console.log(`EDGEONE_PROJECT_ID=${$.projectId}`),{deploymentId:j,...$}}catch(g){throw g}};var Jre=async e=>{try{let t=e.directoryOrZip,r;if(!t){console.log("Execute auto build and deploy .edgeone directory");let g;try{g=U0(`${process.cwd()}/.edgeone/project.json`)}catch{}if(g&&(g!=null&&g.ProjectId)){let v=e.token||e.t;v&&(process.env.EDGEONE_PAGES_API_TOKEN=v,ya("Using provided API token for deployment..."),await gE(v));let b=await V_(g.ProjectId).catch(A=>{jr("Pull env vars error:"+A.message)});r=JSON.stringify(b)}await SG({ENV_STR:r}),t=dr("./.edgeone")}let n=e.name||e.n;if(n||QNt.existsSync(dr("./.edgeone/project.json"))&&(n=U0(dr("./.edgeone/project.json")).Name),!n){jr(`Missing project name. Please use -n or --name option, for example: edgeone pages deploy ./directory -n my-project-name Or you can run "${r6("edgeone pages link")}" first`),process.exit(1);return}let a=e.area||e.a||"global";process.env.EDGEONE_PAGES_PROJECT_NAME=n;let c=(e.env||"production").toLowerCase()==="preview"?"Preview":"Production",l=e.token||e.t;if(l)process.env.EDGEONE_PAGES_API_TOKEN=l,ya("Using provided API token for deployment...");else try{let g=await RT();if(!g){jr("No API token provided and not logged in."),jr("Please either:"),jr(" 1. Login first: edgeone login"),jr(" 2. Or provide a token: edgeone pages deploy ./dist -n project-name -t $EDGEONE_API_TOKEN"),process.exit(1);return}process.env.EDGEONE_PAGES_API_TOKEN=g,ya("Using local login token for deployment...")}catch{jr("No API token provided and not logged in."),jr("Please either:"),jr(" 1. Login first: edgeone login"),jr(" 2. Or provide a token: edgeone pages deploy ./dist -n project-name -t $EDGEONE_API_TOKEN"),process.exit(1);return}ya(`Deploying ${t} to project ${n} (${c} environment, ${a} area)...`);let p=await ONt(t,c,a),h=await px()==="china"?"https://console.cloud.tencent.com/edgeone/pages/project/":"https://console.tencentcloud.com/edgeone/pages/project/";return ya(`You can view your deployment in the EdgeOne Pages Console at: ${jB.highlight(`${h}${p.projectId}/deployment/${p.deploymentId}`)}`),p}catch(t){let r=t&&typeof t=="object"&&"message"in t?String(t.message):String(t);jr(`Deployment failed: ${r}`),process.exit(1)}};async function YU(e,t){let{token:r,file:n}=t;try{r&&(process.env.EDGEONE_PAGES_API_TOKEN=r,await gE())}catch(l){jr(`check and set region failed: ${l}`),process.exit(1)}await Iy();let a;try{a=U0(`${process.cwd()}/.edgeone/project.json`)}catch{jr("Can't read project infomation, you need to run 'edgeone pages link' first"),process.exit()}let s,c;switch(e){case"pull":V_(a.ProjectId,void 0,n);break;case"ls":LXe(a.ProjectId);break;case"set":s=t._[3],c=t._[4],jXe(a.ProjectId,s,c);break;case"rm":s=t._[3],Age(a.ProjectId,s);break;default:jr(`Invalid command: ${e}`),process.exit(1)}}var WBe=OF(),Iv=require("fs"),rm=require("path");function F9n(){let e=rm.join(process.cwd(),"functions");if(Iv.existsSync(e))console.log("Pages function folder already exists.");else{let t=rm.join(process.cwd(),"edge-functions","helloworld-edge","index.js"),r=`export function onRequest(context) {
|
|
5865
|
+
return { executeMiddleware };`)();if(!a||typeof a.executeMiddleware!="function")throw new Error("Middleware runtime did not expose executeMiddleware");return a.executeMiddleware}async execute(t){if(!this.middlewareExecutor)return null;let r=t.request;if(!r)throw new Error("Invalid middleware context: request is undefined");try{let a={request:this.createFetchRequest(r),urlInfo:t.urlInfo,env:t.env,waitUntil:t.waitUntil};return await this.middlewareExecutor(a)}catch(n){let a=n instanceof Error?n.message:String(n);return jr(`Middleware execution error: ${a}`),null}}createFetchRequest(t){var l;let r=this.convertHeaders(t.headers||{}),n=t.url||"/",a=((l=t.headers)==null?void 0:l.host)||"localhost",s=n.startsWith("http://")||n.startsWith("https://")?n:`http://${a}${n.startsWith("/")?n:`/${n}`}`,c=t.method||"GET";return new Request(s,{method:c,headers:r})}convertHeaders(t){let r=new Headers;for(let[n,a]of Object.entries(t))a&&(Array.isArray(a)?a.forEach(s=>{typeof s=="string"&&r.append(n,s)}):typeof a=="string"&&r.set(n,a));return r}getConfig(){return this.config}};var dAe=Ytt(),mO=require("fs"),hO=require("path"),Fzr=require("chokidar");var KG=class{server;proxy;devConfig;buildMatches;inProgressBuilds;watcher;watchAggregationId;devMatches=new Map;workerManager=new JG;listeningPort;devPort;devOrigin;devProcess;devLog;rebuildDebounceTimers=new Map;middlewareRunner;constructor(t){this.devConfig=t,this.server=Jtt.default.createServer(this.devServerHandler.bind(this)),this.listeningPort=this.devConfig.port||8088,this.devPort=this.devConfig.fePort||6699,this.devConfig.devCommand=Ttt(),this.proxy=Ktt.default.createProxyServer({changeOrigin:!0,ws:!0,xfwd:!0}),this.setupProxy(),this.workerManager.on("rebuilt",({key:r,devMatch:n})=>{vc("Server updated."),this.devMatches.set(r,n)}),this.workerManager.on("startFailed",({key:r,error:n})=>{console.error(`[DevServer] Runner ${r} start failed:`,n),this.devMatches.delete(r)}),this.workerManager.on("rebuildFailed",({key:r,error:n})=>{console.error(`[DevServer] Runner ${r} rebuild failed:`,n),this.devMatches.delete(r)})}async start(){var l;let{timeout:t="",favicon:r=!1}=this.devConfig||{},n=Btt(fO),a=await iC(this.listeningPort,!0);this.listeningPort=a;let s=await CB(process.cwd());if(!s.hasNextJs&&dO.hasMiddleware())try{this.middlewareRunner=new dO(((l=this.devConfig)==null?void 0:l.env)||{}),await this.middlewareRunner.build()}catch(p){jr(`Failed to load middleware: ${p.message}`)}else s.hasNextJs&&dO.hasMiddleware()&&rn("\u2139\uFE0F Next.js middleware detected");for(let[p,d]of n)try{let h=new d(this.devConfig),g=await this.workerManager.startRunner(p,h.config);process.env.DEBUG&&console.log(`[DevServer] started sucesssfully devMatch for ${p}`),this.devMatches.set(p,g),process.env.DEBUG&&p==="node-function"&&g.destUrl&&PG(`Cloud-functions server running at: ${RG(`${g.destUrl}`)}`)}catch(h){let g=h instanceof Error?h.message:String(h);if(g.includes("is not supported")||g.includes("is not available")||g.includes("Failed to install Python")){let v=g.replace(/^Runner startup failed for [^:]+:\s*/,"");jr(v,p),process.exit(1)}console.error(`Failed to start runner for ${p}:`,h),_d(`Failed to start runner for ${p}`,h)}await this.runDevCommand(),this.devMatches.size===0&&!this.devOrigin&&(jr("No runners started successfully. Please fix the errors above and try again."),process.exit(1)),this.server.listen(this.listeningPort,()=>{PG(`Running at: ${RG(`http://localhost:${this.listeningPort}`)}`),this.devLog&&process.stdout.write(this.devLog),Nzr(this.devMatches,async(p,{path:d,type:h})=>{if(p){console.error("Watch error:",p);return}let g=this.rebuildDebounceTimers.get(h);g&&clearTimeout(g);let v=setTimeout(async()=>{console.log(`[DevServer] File changed: ${d}, type: ${h}`),vc("Change detected, rebuild and update server..."),await this.workerManager.sendRebuildMessage(h,d),this.rebuildDebounceTimers.delete(h)},500);this.rebuildDebounceTimers.set(h,v)},async p=>{rn(`[DevServer] New functions found for ${p}, starting runner`);let d=await this.workerManager.startRunner(p,this.devConfig);this.devMatches.set(p,d)},async p=>{rn(`[DevServer] All functions removed for ${p}, stopping runner`),this.workerManager.stopRunner(p),this.devMatches.delete(p)},this)}),this.server.on("upgrade",(p,d,h)=>{if(this.isHMRRequest(p)&&this.devOrigin)try{this.proxy.ws(p,d,h,{target:this.devOrigin,changeOrigin:!0,timeout:3e4})}catch(v){console.error("WebSocket proxy error:",v.message),d.destroy()}else{let v=this.routeMatch(p);if(v)try{this.proxy.ws(p,d,h,{target:v,changeOrigin:!0,timeout:3e4})}catch(b){console.error("WebSocket proxy error:",b.message),d.destroy()}else d.destroy()}})}stop(){}isHMRRequest(t){let r=t.url||"",n=["/_next/webpack-hmr","/__webpack_hmr","/_vite/ws","/__vite_hmr","/sockjs-node","/socket.io","/_nuxt/","/__nuxt_hmr"];return n.some(a=>r.startsWith(a))?!0:t.headers.upgrade==="websocket"?n.some(a=>r.startsWith(a))||r.includes("hmr"):!!(r.includes("hmr")&&!r.includes("_rsc="))}isRSCRequest(t){let r=t.url||"";return r.includes("?_rsc=")||r.includes("&_rsc=")}async devServerHandler(t,r){var l,p,d,h,g,v;let n=null;if(this.middlewareRunner)try{let b=`http://${t.headers.host||"localhost"}${t.url}`,A=new URL(b),C={request:t,urlInfo:A,env:this.devConfig.env||{},waitUntil:k=>{}},S=await this.middlewareRunner.execute(C);if(S){let k=((l=S.headers)==null?void 0:l.get("x-middleware-next"))==="1",O=(p=S.headers)==null?void 0:p.get("x-middleware-rewrite"),j=(d=S.headers)==null?void 0:d.get("x-middleware-request-headers"),L=(h=S.headers)==null?void 0:h.get("x-middleware-override-headers");if(O&&(process.env.DEBUG&&console.log(`[Middleware] Rewrite: ${t.url} -> ${O}`),t.url=O),L)try{let $=new Set(["accept-encoding"]),ie=L.split(",").map(G=>G.trim());for(let G of ie){if($.has(G.toLowerCase()))continue;let ye=(g=S.headers)==null?void 0:g.get("x-middleware-request-"+G);ye!==null&&(t.headers[G.toLowerCase()]=ye)}process.env.DEBUG&&console.log(`[Middleware] Override headers: ${L}`)}catch($){console.error("Middleware override headers error:",$)}else j&&this.applyRequestHeaderPatch(t,j);if(!k&&!O){process.env.DEBUG&&console.log(`[Middleware] Return response: ${S.status}`),r.writeHead(S.status,Object.fromEntries(S.headers.entries()));let $=await S.text();return r.end($)}if(k){n=new Headers;let $=new Set(["x-middleware-next","x-middleware-rewrite","x-middleware-request-headers","x-middleware-override-headers","x-middleware-set-cookie","date","connection","content-length","content-encoding","transfer-encoding","set-cookie"]);S.headers.forEach((G,ye)=>{let re=ye.toLowerCase();!$.has(re)&&!re.startsWith("x-middleware-request-")&&n.set(ye,G)}),(S.headers.getSetCookie?S.headers.getSetCookie():[]).forEach(G=>{n.append("Set-Cookie",G)}),t._middlewareResponseHeaders=n}process.env.DEBUG&&k&&console.log("[Middleware] Next: continue to functions")}}catch(b){jr(`Middleware execution error: ${b.message}`)}let a=(v=this.routeMatch(t))!=null?v:"",s=this.isHMRRequest(t),c=this.isRSCRequest(t);if(process.env.DEBUG&&(console.log(`[DevServer] ${t.method} ${t.url} - isHMR: ${s}, isRSC: ${c}, destUrl: ${a}`),console.log("--------------------------------check dev matches--------------------------------"),console.log(this.devMatches),console.log("--------------------------------check dev matches--------------------------------")),a&&!s&&!c)f3e(t.method.toUpperCase(),t.url),this.proxy.web(t,r,{target:a,changeOrigin:!0});else if(this.devOrigin)try{this.proxy.web(t,r,{target:this.devOrigin,changeOrigin:!0,ws:!0,timeout:5e3})}catch(b){console.error("Proxy web error:",b.message),r.writeHead(502,{"Content-Type":"application/json"}),r.end(JSON.stringify({error:"Bad Gateway",message:"Frontend dev server is temporarily unavailable"}))}else{let b=this.staticMatch(t);if(b){let A=dAe.lookup(b)||"application/octet-stream";return r.setHeader("Content-Type",A),mO.createReadStream(b).pipe(r)}else{r.statusCode=404;let A=this.staticMatch("/404.html"),C=this.staticMatch("/index.html");if(A)return r.setHeader("Content-Type",dAe.lookup(A)),mO.createReadStream(A).pipe(r);if(C)return r.setHeader("Content-Type",dAe.lookup(C)),mO.createReadStream(C).pipe(r);r.setHeader("Content-Type","text/html; charset=utf-8"),r.end(Dtt)}}}async runDevCommand(){let t=this.devConfig.devCommand;if(!t||t.indexOf("undefined")>-1)return;let r=await iC(this.devPort);this.devPort=r;let[n,...a]=t.split(" ");a.push("--port",this.devPort);let s=(0,Xtt.spawn)(n,a,{cwd:process.cwd(),env:{...process.env,FORCE_COLOR:"1"},stdio:["inherit","pipe","pipe"]});this.devProcess=s;let c=new RegExp(this.devPort.toString(),"g");if(!s.stdout||!s.stderr)throw new Error("Expected child process to have stdout and stderr");s.stderr.pipe(process.stderr),s.stdout.setEncoding("utf8"),await new Promise(l=>{let p=setTimeout(()=>l(!1),2e3);s.stdout.once("data",d=>{this.devLog=d,clearTimeout(p),l(!0)})}),process.env.DEBUG&&PG(`DevServer running at: ${RG(`http://localhost:${this.devPort}`)}`),s.stdout.on("data",l=>{process.stdout.write(l.replace(c,this.listeningPort.toString()))}),s.on("error",l=>{jr(`Error executing dev command: ${l.message}`)}),s.on("close",l=>{l!==0?vm(`Dev command exited with code ${l}`):rn("Dev command exited normally"),setTimeout(()=>{(!this.devProcess||this.devProcess.killed)&&(this.devOrigin=void 0,rn("Dev server origin cleared"))},2e3)}),this.devOrigin=`http://127.0.0.1:${this.devPort}`}staticMatch(t){var c;let r=typeof t=="string"?t:t!=null&&t.url?decodeURI(t.url):"",n=(c=r==null?void 0:r.split("?")[0])==null?void 0:c.replace(/^\//,""),a=z_("outputDirectory","OutputDir",()=>""),s=dr(hO.join(a,n||"index.html"));return mO.existsSync(s)?s:null}routeMatch(t){var p,d;let r=t.url||"",n=t.method||"GET";if(this.isHMRRequest(t))return null;let a=r.split("?")[0],s=Array.from(this.devMatches.entries()).filter(([h,g])=>g.routes.some(v=>{if(v.isFramework){if(v.src){if(v.src==="^/$"&&!this.staticMatch(a))return!0;let S=v.src.replace(/^\^|\$$/g,"").split("/")[1]||"";if(S&&a.startsWith(`/${S}`))return!0}if(v.routePath&&(v.routePath==="/"&&!this.staticMatch(a)||a.startsWith(v.routePath)&&(a.replace(v.routePath,"").startsWith("/")||a.replace(v.routePath,"")==="")))return!0}let b=v==null?void 0:v.method,A=Array.isArray(b)?b:typeof b=="string"&&b.length>0?[b]:null;if(A&&!A.includes(t.method))return!1;if(v!=null&&v.src)try{let C=new RegExp(v.src).test(a);return process.env.DEBUG&&console.log(" \u5339\u914D\u68C0\u67E5 (\u65B0\u683C\u5F0F)",v.src,C,A?A.includes(t.method):!0),C}catch(C){return console.warn(`Invalid regex pattern: ${v.src}`,C),!1}if(v!=null&&v.routePath){let C=`^${v.routePath.replace(/\//g,"\\/").replace(/\/:(\w+)\*$/,"/.*").replace(/:(\w+)/g,"([^/]*)")}$`,S=new RegExp(C).test(a);return process.env.DEBUG&&console.log(" \u5339\u914D\u68C0\u67E5 (\u65E7\u683C\u5F0F)",v.routePath,S,A?A.includes(t.method):!0),S}return!1})),c=["edge-function","node-function","python-function","go-function"];return(d=(p=s.sort((h,g)=>c.indexOf(h[0])-c.indexOf(g[0]))[0])==null?void 0:p[1])==null?void 0:d.destUrl}setupProxy(){this.proxy.on("error",(t,r,n)=>{if(console.error("proxy error",t),r&&this.isHMRRequest(r)){console.log("HMR proxy error for:",r.url);return}_d("Proxy server error",t),n&&!n.headersSent&&(n.writeHead(502,{"Content-Type":"application/json"}),n.end(JSON.stringify({error:"Bad Gateway",message:"The upstream server is temporarily unavailable"})))}),this.proxy.on("proxyRes",(t,r,n)=>{let a=r._middlewareResponseHeaders;a&&a.forEach((s,c)=>{if(c.toLowerCase()==="set-cookie"){let l=t.headers["set-cookie"];l?Array.isArray(l)?t.headers["set-cookie"]=[...l,s]:t.headers["set-cookie"]=[l,s]:t.headers["set-cookie"]=[s]}else t.headers[c.toLowerCase()]=s}),this.isRSCRequest(r)&&(t.headers["content-type"]||(t.headers["content-type"]="text/plain; charset=utf-8"),t.headers["cache-control"]="no-cache, no-store, must-revalidate",t.headers.pragma="no-cache",t.headers.expires="0"),this.isHMRRequest(r)&&(t.headers["access-control-allow-origin"]="*",t.headers["access-control-allow-methods"]="GET, POST, PUT, DELETE, OPTIONS",t.headers["access-control-allow-headers"]="Content-Type, Authorization, X-Requested-With",r.headers.upgrade==="websocket"&&(t.headers["access-control-allow-credentials"]="true"))}),this.proxy.on("proxyReqWs",(t,r,n,a,s)=>{n.on("error",c=>{console.error("WebSocket socket error:",c.message)})}),this.proxy.on("proxyResWs",(t,r,n,a)=>{n.on("error",s=>{console.error("WebSocket response error:",s.message)})}),this.proxy.on("econnreset",(t,r,n,a)=>{console.log("Connection reset, probably due to dev server restart")})}applyRequestHeaderPatch(t,r){try{let n=decodeURIComponent(r),a=JSON.parse(n);Object.entries(a).forEach(([s,c])=>{let l=s.toLowerCase();if(c===null||typeof c>"u"){delete t.headers[l];return}t.headers[l]=c})}catch(n){jr(`Failed to apply middleware request headers: ${n instanceof Error?n.message:String(n)}`)}}async reloadMiddleware(){if(this.middlewareRunner)try{await this.middlewareRunner.build(),ya("\u2705 Middleware reloaded successfully")}catch(t){jr(`Failed to reload middleware: ${t.message}`)}}async close(){for(let t of this.rebuildDebounceTimers.values())clearTimeout(t);if(this.rebuildDebounceTimers.clear(),await this.workerManager.stopAll(),this.devProcess)try{this.devProcess.pid&&process.kill(this.devProcess.pid,0)&&process.kill(this.devProcess.pid)}catch(t){t.code!=="ESRCH"&&console.error("Failed to kill dev process:",t)}finally{this.devProcess=null}return new Promise(t=>{if(!this.server.listening){t();return}this.server.close(()=>{console.log("HTTP server closed"),t()})})}};async function Nzr(e,t,r,n,a){function s(S,k){try{let O=G=>hO.normalize(G).replace(/^\.\//,"").replace(/\\/g,"/"),j=O(S),L=O(k),$=hO.resolve(process.cwd(),k);return hO.resolve(process.cwd(),S).startsWith($)||j.startsWith(L)}catch(O){console.error("match path error",O)}}let c=new Map;function l(S){return S.replace(/\\/g,"/").replace(/^\.\//,"")}function p(S){let k=l(S),O=iAe(k);return O.length>0?c.set(k,O):c.delete(k),O}function d(S){let k=l(S);return c.get(k)||iAe(k)}function h(S){return Array.from(c.values()).some(k=>k.includes(S))}function g(S){let k=l(S).replace(/\/$/,"");return Array.from(c.keys()).filter(O=>O.startsWith(`${k}/`))}function v(S){return g(S).length>0}function b(S){if(mO.existsSync(S))for(let k of mO.readdirSync(S,{withFileTypes:!0})){let O=hO.join(S,k.name);k.isDirectory()?b(O):p(hO.relative(process.cwd(),O))}}async function A(S){let k=l(S),O=d(k);c.delete(k);for(let j of O)h(j)?await t(null,{path:k,type:j}):await(n==null?void 0:n(j))}b(dr("cloud-functions")),b(dr("node-functions")),b(dr("edge-functions")),b(dr("functions")),Fzr.watch(".",{ignored:[/(^|[\/\\])\../,/node_modules/,/\.git/,/dist/,/build/,/\.edgeone/],persistent:!0,ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:500,pollInterval:300}}).on("add",async function(S){let k=p(S);if(k.length!==0){console.log("add",S,"; file type:",k.join(","));for(let O of k)if(Y_(O)&&!e.has(O))try{await(r==null?void 0:r(O)),vc(`[DevServer] Runner ${O} started`)}catch(L){console.error(`Failed to start runner ${O}:`,L)}else await t(null,{path:S,type:O})}}).on("unlink",async function(S){console.log("unlink",S),!(v(S)||d(S).length===0)&&await A(S)}).on("unlinkDir",async function(S){console.log("unlinkDir",S);let k=g(S);for(let O of k)await A(O)}).on("change",async function(S){if(console.log("change",S),(S==="middleware.js"||S==="middleware.ts"||S==="src/middleware.js"||S==="src/middleware.ts")&&(a!=null&&a.middlewareRunner)){vc("Middleware changed, reloading...");try{await(a==null?void 0:a.reloadMiddleware())}catch(L){jr(`Failed to reload middleware: ${L.message}`)}return}let O=p(S);if(O.length>0){for(let L of O){if(!e.has(L)&&Y_(L)){await(r==null?void 0:r(L));continue}await t(null,{path:S,type:L})}return}let j=Array.from(e.values()).find(L=>{var $;return($=L.watch)==null?void 0:$.some(ie=>s(S,ie))});j&&await t(null,{path:S,type:(j==null?void 0:j.type)||"unknown"})})}var ert=ar(require("path"));var Ztt=OF();async function Ozr(){let t=`env_vars_pull_prompt_${ert.default.basename(process.cwd())}`;try{let r=new Date().toISOString().split("T")[0],n=await pF(t);if(n&&n.date===r)return n.shouldPull;let{pullEnvVars:a}=await Ztt({type:"confirm",name:"pullEnvVars",message:"Sync environment variables from the EdgeOne Pages console?",default:!0});return yH("Your choice will be remembered for the rest of the day."),await lF(t,{date:r,shouldPull:a}),a}catch(r){console.warn("Failed to check env vars pull prompt cache:",r);let{pullEnvVars:n}=await Ztt({type:"confirm",name:"pullEnvVars",message:"Do you want to pull env vars from EdgeOne Pages Console?",default:!0});return n}}async function trt(e){let{token:t,skipEnvSync:r}=e;t&&(process.env.EDGEONE_PAGES_API_TOKEN=t,await gE()),e.debug&&(process.env.DEBUG="true",console.log("Running in debug mode")),await Iy();let n=process.cwd(),a;try{a=U0(`${process.cwd()}/.edgeone/project.json`)}catch{}let s={},c=a&&a.Name&&a.ProjectId;c&&(s={...s,...a});let l=r?!1:await Ozr();if(l&&c){l&&await V_(a.ProjectId).catch(A=>{_d("Dev pull env vars error,",A),jr("Pull env vars error:"+A.message)});let b={};try{let A=dr("./.env");b=VF(A),s.env=b}catch{b={}}}if(c)try{rn("Pulling KV bindings...");let b=await oYe(a.ProjectId);b.length>0?(s.env=s.env||{},s.env[CN]=JSON.stringify(b),rn(`Found ${b.length} KV binding(s).`)):rn("No KV bindings found.")}catch(b){process.env.DEBUG&&console.log("[KV] Pull KV bindings error:",b)}else rn("Dev server running in raw mode...");let p=new VN(n),d=await J0(),h=await _W(n,d);await p.loadPlugins(h),e.fePort&&(s.fePort=e.fePort),e.port&&(s.port=e.port);let g={...s.env||{}};delete g[CN],await p.onPreDev({cwd:n,env:g,config:d});let v=new KG(s);return process.on("SIGINT",async()=>{console.log("Received SIGINT signal, shutting down..."),v&&await v.close(),process.exit(0)}),process.on("SIGTERM",async()=>{console.log("Received SIGTERM signal, shutting down..."),v&&await v.close(),process.exit(0)}),await p.onDev({cwd:n,env:g,config:d!=null?d:void 0}),await v.start().then(()=>{setTimeout(()=>{console.log(" Shutting down local server..."),process.exit(1)},1e3*60*60*2)}).catch(b=>{_d("Dev server unhandled error:",b),jr("Run pages dev error:"+b)})}var QNt=ar(require("fs"));var kNt=ar(x0t()),Nu=ar(require("path")),uw=ar(require("fs/promises")),TNt=ar(moe());var BNt=require("fs");var Gre=ar(cEt()),m9n=_Nt(),INt=process.env.https_proxy||process.env.HTTPS_PROXY||process.env.http_proxy||process.env.HTTP_PROXY;if(INt){let e=new Gre.ProxyAgent(INt);(0,Gre.setGlobalDispatcher)(e)}TNt.default.config();var cw={FILE_PARALLEL_LIMIT:parseInt(process.env.COS_FILE_PARALLEL_LIMIT||"10"),CHUNK_PARALLEL_LIMIT:parseInt(process.env.COS_CHUNK_PARALLEL_LIMIT||"8"),CHUNK_SIZE_MB:parseInt(process.env.COS_CHUNK_SIZE_MB||"8"),CHUNK_RETRY_TIMES:parseInt(process.env.COS_CHUNK_RETRY_TIMES||"2")},DNt="https://pages-api.cloud.tencent.com/v1",g9n="https://pages-api.edgeone.ai/v1",A9n="https://eo-test.qcloud.com/v1";var PNt=process.env.TEST_API_ENV==="test"?A9n:DNt;var y9n=async()=>{let e=process.env.EDGEONE_PAGES_API_TOKEN;if(!e)throw new Error('Missing EDGEONE_PAGES_API_TOKEN. Please provide a api token with --token or login first with "edgeone login".');return e},v9n=async()=>`Bearer ${await y9n()}`,Db=()=>{let e=process.env.EDGEONE_PAGES_PROJECT_NAME||"";if(!e)throw new Error("Project name is required. Please provide using the -n or --name parameter.");return e},cR=async e=>{var c,l;let{action:t,data:r={},baseUrl:n=PNt,throwOnError:a=!0}=e,s={Action:t,...r};try{let p=await fetch(n,{method:"POST",headers:{"Content-Type":"application/json",Authorization:await v9n()},body:JSON.stringify(s)});if(!p.ok){let h=await p.text(),g=new Error(`API request failed (${p.status}): ${h}`);if(a)throw g;return{Code:-1,Data:{},Message:g.message,RequestId:""}}let d=await p.json();if(d.Code!==0&&a)throw(l=(c=d.Data)==null?void 0:c.Response)!=null&&l.Error?new Error(d.Data.Response.Error.Message):new Error(`API error: ${d.Message}`);return d}catch(p){if(a)throw jr(`[callApi] ${t} failed: ${p instanceof Error?p.message:String(p)}`),p;return{Code:-1,Data:{},Message:p instanceof Error?p.message:String(p),RequestId:""}}},Ek={token:null,cos:null},RNt=()=>{Ek.token=null,Ek.cos=null},Wre=e=>new Promise(t=>setTimeout(t,e)),x9n=async()=>{let e=async n=>{let a=await cR({action:"DescribePagesProjects",data:{PageNumber:1,PageSize:10},baseUrl:n,throwOnError:!1});return{success:a.Code===0,code:a.Code}},t=await px(),r=[];r=[DNt,g9n];for(let n of r)if((await e(n)).success){PNt=n;return}throw new Error('Invalid EDGEONE_PAGES_API_TOKEN. Please provide a valid API token with --token or login first with "edgeone login". For more information, please refer to https://edgeone.ai/document/177158578324279296')},FNt=(e,t)=>{if(e.Provider&&e.Provider!=="Upload")throw new Error(`[${t}] Project ${Db()} exists but has Provider '${e.Provider}'. This project type does not support direct folder or zip file deployment. Only projects with Provider 'Upload' are supported.`)},NNt=async(e="global")=>{var r,n,a,s,c,l;if(Ek.token)return Ek.token;let t;try{let p=await Yre({projectName:Db()});if(((a=(n=(r=p.Data)==null?void 0:r.Response)==null?void 0:n.Projects)==null?void 0:a.length)>0){let d=p.Data.Response.Projects[0];t=d.ProjectId,FNt(d,"getCosTempToken")}else{let d=await HBe(e);if(((l=(c=(s=d.Data)==null?void 0:s.Response)==null?void 0:c.Projects)==null?void 0:l.length)>0)t=d.Data.Response.Projects[0].ProjectId;else throw new Error(`Failed to create project ${Db()}`)}}catch(p){throw jr(`[getCosTempToken] Error: ${p instanceof Error?p.message:String(p)}`),new Error(`Failed to get or create project ${Db()}: ${p instanceof Error?p.message:String(p)}`)}try{let p=await cR({action:"DescribePagesCosTempToken",data:{ProjectId:t}});return Ek.token=p,p}catch(p){throw jr(`[getCosTempToken] Error getting COS token: ${p instanceof Error?p.message:String(p)}`),p}},b9n=async(e="global")=>{var r,n,a;if(!Db())throw new Error("Project name is required. Please provide using the -n or --name parameter.");let t;try{t=await Yre({projectName:Db()})}catch(s){if(s instanceof Error&&s.message.includes("Provider")&&s.message.includes("This project type does not support"))throw s;return vc(`[getOrCreateProject] Error checking project ${Db()}: ${s}. Attempting to create project.`),await HBe(e)}if(((a=(n=(r=t.Data)==null?void 0:r.Response)==null?void 0:n.Projects)==null?void 0:a.length)>0){let s=t.Data.Response.Projects[0];return FNt(s,"getOrCreateProject"),ya(`Project ${jB.highlight(Db())} already exists. Using existing project.`),t}return vm(`Project ${jB.highlight(Db())} doesn't exist. Creating new project.`),await HBe(e)},HBe=async(e="global")=>{var t,r,n,a,s;try{vc(`[CreatePagesProject] Creating new project with name: ${Db()} in ${e} area`);let c=await cR({action:"CreatePagesProject",data:{Name:Db(),Provider:"Upload",Channel:"Custom",Area:e,Source:process.env.PAGES_SOURCE||"cli"}});if(!((r=(t=c==null?void 0:c.Data)==null?void 0:t.Response)!=null&&r.ProjectId))throw new Error(((s=(a=(n=c==null?void 0:c.Data)==null?void 0:n.Response)==null?void 0:a.Error)==null?void 0:s.Message)||"Failed to get ProjectId from API response");return await Wre(2e3),await Yre({projectId:c.Data.Response.ProjectId})}catch(c){throw jr("Error creating pages project: "+c),c}},Yre=async e=>{let{projectId:t,projectName:r}=e;try{let n=[];t&&n.push({Name:"ProjectId",Values:[t]}),r&&n.push({Name:"Name",Values:[r]});let a=await cR({action:"DescribePagesProjects",data:{Filters:n,Offset:0,Limit:10,OrderBy:"CreatedOn"}});return a.Data?a.Data.Response?a.Data.Response.Projects||(a.Data.Response.Projects=[]):a.Data.Response={Projects:[]}:a.Data={Response:{Projects:[]}},a}catch(n){return jr(`[describePagesProjects] Error: ${n instanceof Error?n.message:String(n)}`),{Code:-1,Data:{Response:{Projects:[]}},Message:n instanceof Error?n.message:String(n),RequestId:""}}},E9n=async(e,t=!0)=>await cR({action:"DescribePagesDeployments",data:{ProjectId:e,Offset:0,Limit:50,OrderBy:"CreatedOn",Order:"Desc"},throwOnError:t}),w9n=async e=>await cR({action:"DescribePagesEncipherToken",data:{Text:e}}),VBe=e=>Nu.extname(e).toLowerCase()===".zip",S9n=async e=>{let{projectId:t,targetPath:r,isZip:n,env:a}=e;return await cR({action:"CreatePagesDeployment",data:{ProjectId:t,ViaMeta:"Upload",Provider:"Upload",Env:a,DistType:n?"Zip":"Folder",TempBucketPath:r,BuildFrom:"CLI"}})},$Be=async(e="global")=>{if(Ek.cos)return Ek.cos;let t=await NNt(e);if(t.Code!==0||!t.Data||!t.Data.Response||!t.Data.Response.Credentials)throw new Error("Failed to get COS temp token");let n=t.Data.Response.Credentials,a=new kNt.default({SecretId:n.TmpSecretId,SecretKey:n.TmpSecretKey,SecurityToken:n.Token,FileParallelLimit:cw.FILE_PARALLEL_LIMIT,ChunkParallelLimit:cw.CHUNK_PARALLEL_LIMIT,ChunkRetryTimes:cw.CHUNK_RETRY_TIMES,ChunkSize:1024*1024*cw.CHUNK_SIZE_MB,SliceSize:1024*1024*cw.CHUNK_SIZE_MB,ProgressInterval:1e3});return Ek.cos=a,a},C9n=async e=>{let t=[],r=async n=>{let a=await uw.readdir(n,{withFileTypes:!0});for(let s of a){let c=Nu.join(n,s.name),l=s.isDirectory(),p=await uw.stat(c);t.push({isDir:l,path:l?`${c}/`:c,size:l?0:p.size}),l&&await r(c)}};try{if(await r(e),t.length>1e6)throw new Error("too_much_files");return t}catch(n){throw jr("Error in fastListFolder: "+n),n}},_9n=async(e,t={})=>{let r=Nu.dirname(e),n=Nu.basename(e),a=Nu.basename(process.cwd()),s=Nu.join(r,`${a}.zip`),{level:c=9,excludePatterns:l=["node_modules",".git",".DS_Store","*.log"],includeHidden:p=!1}=t;return new Promise(async(d,h)=>{try{let g=(0,BNt.createWriteStream)(s),v=m9n("zip",{zlib:{level:c}});if(v.on("error",b=>{throw b}),g.on("close",()=>{d(s)}),v.pipe(g),n===".edgeone"){v.directory(e,`${a}/${n}`,{ignore:l,dot:p});let b=dr("edgeone.json");fF(b)&&v.file(b,{name:`${a}/edgeone.json`})}else v.directory(e,n,{ignore:l,dot:p});await v.finalize()}catch(g){throw jr(`[zipFile] Error compressing folder: ${g instanceof Error?g.message:String(g)}`),g}})},I9n=async(e,t,r,n,a=!1,s="global",c=!1)=>{let l=Nu.isAbsolute(e)?e:dr(e);if(a&&!VBe(l))try{let v=await _9n(l,{level:6,excludePatterns:["node_modules",".git",".DS_Store","*.log","*.tmp"],includeHidden:c}),b=Nu.basename(v),A=await $Be(s),C=new GU(A,t,r,n);try{let S=await C.uploadZipFile(v,b);return uw.unlink(v).catch(()=>{}),S}catch(S){throw jr(`[uploadToEdgeOneCOS] Error uploading compressed file: ${S instanceof Error?S.message:String(S)}`),S}}catch(v){jr(`[optionallyCompressAndUpload] Compression failed, falling back to direct upload: ${v instanceof Error?v.message:String(v)}`)}vc("[uploadToEdgeOneCOS] Scanning directory for files...");let p=await C9n(e);vc(`[uploadToEdgeOneCOS] Found ${p.length} files/directories in ${e}`);let d=T9n(p,e,t,r,n);vc(`[uploadToEdgeOneCOS] Uploading ${d.length} files to COS with targetPath: ${n}...`);let h=await $Be(s);return await new GU(h,t,r,n).uploadMultipleFiles(d),vc("[uploadToEdgeOneCOS] Upload successful."),{success:!0,targetPath:n,isZip:!1}},k9n=e=>{let t={next:{dirName:"next",versions:[14,15]},react:{dirName:"react",versions:[18]},"react-dom":{dirName:"react-dom",versions:[18]}},r=[];for(let n in t){let a=t[n],s=Nu.join(e,"server-handler","node_modules",a.dirName,"package.json");if(fF(s)){let c=U0(s);c!=null&&c.version&&a.versions.includes(parseInt(c==null?void 0:c.version.split(".")[0],10))&&r.push(`server-handler/node_modules/${a.dirName}/`)}}return r};var T9n=(e,t,r,n,a)=>{let s=Nu.basename(t),c=Nu.basename(Nu.dirname(t)),l=[];return s===".edgeone"&&dirExitsSync(Nu.join(t,"server-handler"))&&(l=k9n(t)),e.map(p=>{let d=Nu.relative(t,p.path).replace(/\\/g,"/"),h=s===".edgeone"?`${a}/${c}/${s}/${d||""}`:`${a}/${d||""}`;return{Bucket:r,Region:n,Key:h,FilePath:p.path}}).filter(p=>!(p.FilePath.endsWith("/")||p.Key==="/"||p.Key===""||l.length&&l.some(d=>p.FilePath.includes(d))||p.FilePath!==t&&p.FilePath.startsWith(".")&&p.FilePath!==Nu.basename(p.FilePath)||p.FilePath.startsWith(`node_modules${Nu.sep}`)))};var GU=class{cos;bucket;region;targetPath;constructor(t,r,n,a){this.cos=t,this.bucket=r,this.region=n,this.targetPath=a}async uploadSingleFile(t,r){return new Promise((n,a)=>{let s=g3e("[Uploader] Uploading file","cli",30,"cyan");this.cos.uploadFile({Bucket:this.bucket,Region:this.region,Key:r,FilePath:t,SliceSize:1024*1024*cw.CHUNK_SIZE_MB,ChunkSize:1024*1024*cw.CHUNK_SIZE_MB,ChunkParallel:cw.CHUNK_PARALLEL_LIMIT,ChunkRetryTimes:cw.CHUNK_RETRY_TIMES,onProgress:c=>{if(c.percent!=null){let l=Math.max(0,Math.min(100,Math.round(c.percent*100)));s.update(l,"[Uploader] Uploading file")}},onHashProgress:c=>{if(c.percent!=null){let l=Math.max(0,Math.min(100,Math.round(c.percent*100)));s.update(l,"Calculating hash")}}},(c,l)=>{s.stop(),c?(jr(`[Uploader] Error uploading file ${r}: ${c.message}`),a(c)):n(l)})})}async uploadMultipleFiles(t){vc(`[uploadFiles] Starting upload of ${t.length} files with optimized settings...`);let r=100;if(t.length>r){vc(`[uploadFiles] Large file count detected (${t.length}), processing in batches of ${r}...`);let n=[];for(let a=0;a<t.length;a+=r){let s=t.slice(a,a+r);vc(`[uploadFiles] Processing batch ${Math.floor(a/r)+1}/${Math.ceil(t.length/r)} (${s.length} files)...`);let c=await this.uploadFilesBatch(s);n.push(c)}return{files:n.flat()}}else return this.uploadFilesBatch(t)}async uploadFilesBatch(t){let r=ym(),n=-1;return new Promise((a,s)=>{this.cos.uploadFiles({files:t,SliceSize:1024*1024*cw.CHUNK_SIZE_MB,onProgress:c=>{if(c.percent){let l=Math.round(c.percent*100);r&&(l>=n+20||l===100)&&(n=l,console.log(`[cli] Upload progress: ${l}%`))}},onFileFinish:(c,l,p)=>{c?jr(`[uploadFilesBatch] File upload failed: ${p.Key} - ${c.message}`):process.env.DEBUG_UPLOAD&&vc(`[uploadFilesBatch] File uploaded successfully: ${p.Key}`)}},function(c,l){c?(jr(`[uploadFilesBatch] Batch upload failed: ${c.message}`),s(c)):(vc(`[uploadFilesBatch] Batch uploaded successfully (${t.length} files)`),a(l))})})}async uploadZipFile(t,r){let n=`${this.targetPath}/${r}`;try{return await this.uploadSingleFile(t,n),ya("File uploaded successfully"),{success:!0,isZip:!0,targetPath:n}}catch(a){throw jr(`[Uploader] Error uploading zip file: ${a instanceof Error?a.message:String(a)}`),a}}},B9n=async(e,t="global")=>{var r;try{let n=await NNt(t);if(n.Code!==0||!((r=n==null?void 0:n.Data)!=null&&r.Response))throw new Error(`Failed to get COS token: ${n.Message||"Invalid token response"}`);let a=n.Data.Response,s=a.Bucket,c=a.Region,l=a.TargetPath;if(!s||!c||!l)throw new Error("Missing required COS parameters (Bucket, Region, TargetPath) in token response.");if(VBe(e)){vc(`[uploadToEdgeOneCOS] Uploading zip file to COS with targetPath: ${l}...`);let d=Nu.basename(e),h=`${l}/${d}`,g=await $Be(t),v=new GU(g,s,c,l);try{return await v.uploadZipFile(e,d)}catch(b){throw jr(`[uploadToEdgeOneCOS] Error uploading zip file: ${b instanceof Error?b.message:String(b)}`),b}}else return await I9n(e,s,c,l,!0,t,e!=="./")}catch(n){throw RNt(),jr(`[uploadToEdgeOneCOS] Error: ${n instanceof Error?n.message:String(n)}`),new Error(`Error uploading to COS: ${n instanceof Error?n.message:String(n)}`)}},D9n=async(e,t)=>{let r=!0,n=null,a=m3e("[DeployStatus] Deploying","cli",300,6),s=0,c=ym();for(;r;)try{if(s++,c&&s%2===0){let p=(n==null?void 0:n.Status)||"Pending";console.log(`[cli] Deployment in progress... (status: ${p}, elapsed: ~${s*5}s)`)}let l=await E9n(e,!1);if(l.Code!==0){await Wre(5e3);continue}if(n=l.Data.Response.Deployments.find(p=>p.DeploymentId===t),!n)throw new Error(`Deployment with ID ${t} not found`);["Process","Pending"].includes(n.Status)?await Wre(5e3):r=!1}catch{await Wre(5e3);continue}return a.stop(),n},P9n=async e=>{try{await uw.access(e)}catch{throw new Error("localPath does not exist")}let t=await uw.stat(e),r=VBe(e);if(!t.isDirectory()&&!r)throw new Error("localPath must be a folder or zip file");return r},R9n=async(e,t,r="Production")=>{var s,c,l,p,d,h,g;let n=await Yre({projectId:t});if(!((l=(c=(s=n==null?void 0:n.Data)==null?void 0:s.Response)==null?void 0:c.Projects)!=null&&l[0]))throw new Error("Failed to retrieve project status information.");let a=n.Data.Response.Projects[0];if(e.Status==="Success"){if(r==="Production"&&a.CustomDomains&&a.CustomDomains.length>0){let k=a.CustomDomains[0];if(k.Status==="Pass")return{type:"custom",url:`https://${k.Domain}`,projectId:t}}let v;r==="Production"?v=a.PresetDomain:v=e.PreviewUrl?e.PreviewUrl.replace("https://",""):a.PresetDomain;let b=await w9n(v);if(b.Code!==0||!((d=(p=b==null?void 0:b.Data)==null?void 0:p.Response)!=null&&d.Token)||!((g=(h=b==null?void 0:b.Data)==null?void 0:h.Response)!=null&&g.Timestamp))throw new Error(`Deployment completed, but failed to get access token: ${b.Message||"Invalid token data"}`);let{Token:A,Timestamp:C}=b.Data.Response;return{type:"preset",url:`https://${v}?eo_token=${A}&eo_time=${C}`,projectId:t}}else throw new Error(`Deployment failed with status: ${e.Status}`)},ONt=async(e,t="Production",r="global")=>{var n,a,s,c,l,p,d,h;try{RNt();let g=await P9n(e);vc("Validating API endpoint..."),await x9n();let v=await b9n(r),b=(s=(a=(n=v==null?void 0:v.Data)==null?void 0:n.Response)==null?void 0:a.Projects)==null?void 0:s[0],A=b==null?void 0:b.ProjectId;if(!A)throw new Error("Failed to retrieve Project ID after get/create. Please check the project name and API key.");ya(`Using Project ID: ${jB.highlight(A)}`);let C=Nu.join(process.cwd(),".edgeone","project.json");xh(C,JSON.stringify({Name:b.Name,ProjectId:A})),vc(`Uploading ${g?"zip file":"folder"} to EdgeOne COS...`);let S=await B9n(e,r);if(!S.targetPath)throw new Error("COS upload succeeded but targetPath is missing.");let k=S.targetPath;ya(`Creating deployment in ${t} environment...`);let O=await S9n({projectId:A,targetPath:k,isZip:S.isZip||g,env:t});if((l=(c=O==null?void 0:O.Data)==null?void 0:c.Response)!=null&&l.Error)throw new Error(`Failed to create deployment: ${(h=(d=(p=O==null?void 0:O.Data)==null?void 0:p.Response)==null?void 0:d.Error)==null?void 0:h.Message}`);let j=O.Data.Response.DeploymentId;ya(`Created deployment with Deployment ID: ${jB.highlight(j)}`),vc("Waiting for deployment to complete...");let L=await D9n(A,j);L.Status==="Success"?ya(`Deploy ${L.Status}`):jr(`Deploy ${L.Status}`);let $=await R9n(L,A,t);return ya("Deployment to EdgeOne Pages completed successfully! To view your project's live URL."),console.log(`EDGEONE_DEPLOY_URL=${$.url}`),console.log(`EDGEONE_DEPLOY_TYPE=${$.type}`),console.log(`EDGEONE_PROJECT_ID=${$.projectId}`),{deploymentId:j,...$}}catch(g){throw g}};var Jre=async e=>{try{let t=e.directoryOrZip,r;if(!t){console.log("Execute auto build and deploy .edgeone directory");let g;try{g=U0(`${process.cwd()}/.edgeone/project.json`)}catch{}if(g&&(g!=null&&g.ProjectId)){let v=e.token||e.t;v&&(process.env.EDGEONE_PAGES_API_TOKEN=v,ya("Using provided API token for deployment..."),await gE(v));let b=await V_(g.ProjectId).catch(A=>{jr("Pull env vars error:"+A.message)});r=JSON.stringify(b)}await SG({ENV_STR:r}),t=dr("./.edgeone")}let n=e.name||e.n;if(n||QNt.existsSync(dr("./.edgeone/project.json"))&&(n=U0(dr("./.edgeone/project.json")).Name),!n){jr(`Missing project name. Please use -n or --name option, for example: edgeone pages deploy ./directory -n my-project-name Or you can run "${r6("edgeone pages link")}" first`),process.exit(1);return}let a=e.area||e.a||"global";process.env.EDGEONE_PAGES_PROJECT_NAME=n;let c=(e.env||"production").toLowerCase()==="preview"?"Preview":"Production",l=e.token||e.t;if(l)process.env.EDGEONE_PAGES_API_TOKEN=l,ya("Using provided API token for deployment...");else try{let g=await RT();if(!g){jr("No API token provided and not logged in."),jr("Please either:"),jr(" 1. Login first: edgeone login"),jr(" 2. Or provide a token: edgeone pages deploy ./dist -n project-name -t $EDGEONE_API_TOKEN"),process.exit(1);return}process.env.EDGEONE_PAGES_API_TOKEN=g,ya("Using local login token for deployment...")}catch{jr("No API token provided and not logged in."),jr("Please either:"),jr(" 1. Login first: edgeone login"),jr(" 2. Or provide a token: edgeone pages deploy ./dist -n project-name -t $EDGEONE_API_TOKEN"),process.exit(1);return}ya(`Deploying ${t} to project ${n} (${c} environment, ${a} area)...`);let p=await ONt(t,c,a),h=await px()==="china"?"https://console.cloud.tencent.com/edgeone/pages/project/":"https://console.tencentcloud.com/edgeone/pages/project/";return ya(`You can view your deployment in the EdgeOne Pages Console at: ${jB.highlight(`${h}${p.projectId}/deployment/${p.deploymentId}`)}`),p}catch(t){let r=t&&typeof t=="object"&&"message"in t?String(t.message):String(t);jr(`Deployment failed: ${r}`),process.exit(1)}};async function YU(e,t){let{token:r,file:n}=t;try{r&&(process.env.EDGEONE_PAGES_API_TOKEN=r,await gE())}catch(l){jr(`check and set region failed: ${l}`),process.exit(1)}await Iy();let a;try{a=U0(`${process.cwd()}/.edgeone/project.json`)}catch{jr("Can't read project infomation, you need to run 'edgeone pages link' first"),process.exit()}let s,c;switch(e){case"pull":V_(a.ProjectId,void 0,n);break;case"ls":LXe(a.ProjectId);break;case"set":s=t._[3],c=t._[4],jXe(a.ProjectId,s,c);break;case"rm":s=t._[3],Age(a.ProjectId,s);break;default:jr(`Invalid command: ${e}`),process.exit(1)}}var WBe=OF(),Iv=require("fs"),rm=require("path");function F9n(){let e=rm.join(process.cwd(),"functions");if(Iv.existsSync(e))console.log("Pages function folder already exists.");else{let t=rm.join(process.cwd(),"edge-functions","helloworld-edge","index.js"),r=`export function onRequest(context) {
|
|
5844
5866
|
const json = JSON.stringify({
|
|
5845
5867
|
"code": 0,
|
|
5846
5868
|
"message": "Hello World"
|
|
@@ -3485,9 +3485,12 @@ def _pages_log_request(method, path, headers=None):
|
|
|
3485
3485
|
"""\u8F93\u51FA Pages \u5E73\u53F0\u6807\u51C6\u8BF7\u6C42\u65E5\u5FD7\uFF0C\u90E8\u7F72\u73AF\u5883\u4E0B\u5305\u542B\u5B8C\u6574 URL\uFF08\u542B host\uFF09"""
|
|
3486
3486
|
full_path = path
|
|
3487
3487
|
if headers:
|
|
3488
|
-
|
|
3488
|
+
# \u5224\u65AD\u662F\u5426\u4E3A\u7C7B dict \u63A5\u53E3\uFF08dict / Flask EnvironHeaders / Werkzeug Headers \u7B49\uFF09
|
|
3489
|
+
# Flask \u7684 request.headers \u4E0D\u662F dict\uFF0C\u4F46\u6709 .get() \u65B9\u6CD5
|
|
3490
|
+
is_dict_like = hasattr(headers, 'get') and not isinstance(headers, list)
|
|
3491
|
+
host = headers.get('eo-pages-host', '') if is_dict_like else _get_asgi_header(headers, b'eo-pages-host')
|
|
3489
3492
|
if host:
|
|
3490
|
-
proto = headers.get('x-forwarded-proto', 'https') if
|
|
3493
|
+
proto = headers.get('x-forwarded-proto', 'https') if is_dict_like else (_get_asgi_header(headers, b'x-forwarded-proto') or 'https')
|
|
3491
3494
|
full_path = f"{proto}://{host}{path}"
|
|
3492
3495
|
print(f"Pages request path: {full_path}", file=sys.stderr)
|
|
3493
3496
|
|
|
@@ -4668,8 +4671,23 @@ def _handle_base_http_handler(handler_class, req):
|
|
|
4668
4671
|
mock_socket = MockSocket()
|
|
4669
4672
|
mock_server = MockServer()
|
|
4670
4673
|
|
|
4671
|
-
# \
|
|
4672
|
-
|
|
4674
|
+
# \u7981\u7528 BaseHTTPRequestHandler \u7684 access log\uFF08log_request / log_message\uFF09
|
|
4675
|
+
# \u56E0\u4E3A\u5DF2\u6709 Pages \u5E73\u53F0\u7684\u6807\u51C6\u65E5\u5FD7\uFF0C\u4E0D\u9700\u8981 handler \u81EA\u5E26\u7684\u65E5\u5FD7
|
|
4676
|
+
# \u5FC5\u987B\u5728\u5B9E\u4F8B\u5316\u4E4B\u524D patch\uFF0C\u56E0\u4E3A __init__ \u4F1A\u81EA\u52A8\u8C03\u7528 handle() \u2192 log_request()
|
|
4677
|
+
_orig_log_request = handler_class.log_request if hasattr(handler_class, 'log_request') else None
|
|
4678
|
+
_orig_log_message = handler_class.log_message if hasattr(handler_class, 'log_message') else None
|
|
4679
|
+
handler_class.log_request = lambda *a, **kw: None
|
|
4680
|
+
handler_class.log_message = lambda *a, **kw: None
|
|
4681
|
+
|
|
4682
|
+
try:
|
|
4683
|
+
# \u5B9E\u4F8B\u5316 handler\uFF08BaseHTTPRequestHandler \u4F1A\u81EA\u52A8\u8C03\u7528 handle()\uFF09
|
|
4684
|
+
handler_instance = handler_class(mock_socket, (req.remote_addr or '127.0.0.1', 0), mock_server)
|
|
4685
|
+
finally:
|
|
4686
|
+
# \u6062\u590D\u539F\u59CB\u65B9\u6CD5\uFF0C\u907F\u514D\u5F71\u54CD\u5176\u4ED6\u5730\u65B9\u5BF9\u540C\u4E00 handler class \u7684\u4F7F\u7528
|
|
4687
|
+
if _orig_log_request is not None:
|
|
4688
|
+
handler_class.log_request = _orig_log_request
|
|
4689
|
+
if _orig_log_message is not None:
|
|
4690
|
+
handler_class.log_message = _orig_log_message
|
|
4673
4691
|
|
|
4674
4692
|
# \u83B7\u53D6\u54CD\u5E94\u6570\u636E
|
|
4675
4693
|
wfile.seek(0)
|
|
@@ -4842,6 +4860,19 @@ if __name__ == '__main__':
|
|
|
4842
4860
|
# Dev \u6A21\u5F0F\u901A\u8FC7\u73AF\u5883\u53D8\u91CF\u4F20\u5165\u52A8\u6001\u7AEF\u53E3\uFF0CBuild \u6A21\u5F0F\u9ED8\u8BA4 9000
|
|
4843
4861
|
PORT = int(os.environ.get('PORT', 9000))
|
|
4844
4862
|
|
|
4863
|
+
# \u5168\u5C40\u7981\u7528 Werkzeug access log\uFF08\u5728\u5206\u652F\u5224\u65AD\u4E4B\u524D\uFF0C\u786E\u4FDD ASGI/WSGI \u4E24\u4E2A\u5206\u652F\u90FD\u751F\u6548\uFF09
|
|
4864
|
+
# \u56E0\u4E3A\u5DF2\u6709 Pages \u5E73\u53F0\u7684\u6807\u51C6\u65E5\u5FD7\uFF08Pages request path / Pages response status\uFF09\uFF0C
|
|
4865
|
+
# \u9700\u8981\u907F\u514D Werkzeug/Flask \u8F93\u51FA\u91CD\u590D\u7684 access log
|
|
4866
|
+
import logging as _logging
|
|
4867
|
+
_logging.getLogger('werkzeug').setLevel(_logging.ERROR)
|
|
4868
|
+
# monkey-patch WSGIRequestHandler\uFF0C\u9632\u6B62\u901A\u8FC7 sys.stderr.write \u76F4\u63A5\u8F93\u51FA\u7684 access log
|
|
4869
|
+
try:
|
|
4870
|
+
from werkzeug.serving import WSGIRequestHandler as _WSRH
|
|
4871
|
+
_WSRH.log_request = lambda *a, **kw: None
|
|
4872
|
+
_WSRH.log = lambda *a, **kw: None
|
|
4873
|
+
except ImportError:
|
|
4874
|
+
pass
|
|
4875
|
+
|
|
4845
4876
|
# \u542F\u52A8\u65F6\u626B\u63CF\u6240\u6709\u8DEF\u7531\uFF0C\u5224\u65AD\u662F\u5426\u9700\u8981 uvicorn \u6A21\u5F0F
|
|
4846
4877
|
has_asgi, has_sanic, route_types, asgi_apps = _scan_for_asgi_routes()
|
|
4847
4878
|
|
|
@@ -4883,20 +4914,11 @@ if __name__ == '__main__':
|
|
|
4883
4914
|
uvicorn.run(dispatcher, **uvicorn_config)
|
|
4884
4915
|
else:
|
|
4885
4916
|
# \u5168\u90E8\u662F WSGI/handler\uFF0C\u4FDD\u6301 Flask \u903B\u8F91
|
|
4886
|
-
# \u7981\u7528 Werkzeug \u7684\u542F\u52A8\u6A2A\u5E45\uFF08WARNING/Running on \u7B49\uFF09\u548C access log
|
|
4887
|
-
# \u56E0\u4E3A\u5DF2\u6709 Pages \u5E73\u53F0\u7684\u6807\u51C6\u65E5\u5FD7\uFF08Pages request path / Pages response status\uFF09
|
|
4888
|
-
import logging
|
|
4889
|
-
logging.getLogger('werkzeug').setLevel(logging.ERROR)
|
|
4890
|
-
# \u81EA\u5B9A\u4E49 request handler\uFF0C\u5F7B\u5E95\u7981\u7528 Werkzeug access log
|
|
4891
|
-
from werkzeug.serving import WSGIRequestHandler
|
|
4892
|
-
class _SilentHandler(WSGIRequestHandler):
|
|
4893
|
-
def log_request(self, code='-', size='-'): pass
|
|
4894
|
-
def log(self, type, message, *args): pass
|
|
4895
4917
|
# \u6291\u5236 Flask/Werkzeug \u542F\u52A8\u65F6\u7684 "Serving Flask app" / "Running on" \u8F93\u51FA
|
|
4896
4918
|
import click
|
|
4897
4919
|
click.echo = lambda *a, **kw: None
|
|
4898
4920
|
click.secho = lambda *a, **kw: None
|
|
4899
|
-
app.run(host='0.0.0.0', port=PORT, debug=False
|
|
4921
|
+
app.run(host='0.0.0.0', port=PORT, debug=False)
|
|
4900
4922
|
`,n=Sn(ro.OUTPUT_APP);Ur.default.writeFileSync(n,e)}generateSiteCustomize(){let e=`import warnings
|
|
4901
4923
|
warnings.filterwarnings("ignore", category=DeprecationWarning)
|
|
4902
4924
|
`,n=ui.default.join(Sn(ro.OUTPUT_DIR),"sitecustomize.py");Ur.default.writeFileSync(n,e)}generateScfBootstrap(){let e=`#!/bin/bash
|