@serverless-devs/s3 3.1.11-0c75499d → 3.1.11-0f6acfa8
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/lib/daemon/lib.js +1 -1
- package/lib/index.js +3 -3
- package/package.json +3 -3
package/lib/index.js
CHANGED
|
@@ -208,7 +208,7 @@ Please select an access:`,choices:n.map(i=>({name:i,value:i}))}]);r=u}(0,IJ.tran
|
|
|
208
208
|
`),i=i.replace(/\\r/g,"\r")),t[u]=i}return t}function idn(e){let t=Ngt(e),r=oa.configDotenv({path:t});if(!r.parsed)throw new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);let n=Lgt(e).split(","),u=n.length,i;for(let o=0;o<u;o++)try{let s=n[o].trim(),a=adn(r,s);i=oa.decrypt(a.ciphertext,a.key);break}catch(s){if(o+1>=u)throw s}return oa.parse(i)}function odn(e){console.log(`[dotenv@${qDe}][INFO] ${e}`)}function sdn(e){console.log(`[dotenv@${qDe}][WARN] ${e}`)}function LDe(e){console.log(`[dotenv@${qDe}][DEBUG] ${e}`)}function Lgt(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function adn(e,t){let r;try{r=new URL(t)}catch(s){throw s.code==="ERR_INVALID_URL"?new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenv.org/vault/.env.vault?environment=development"):s}let n=r.password;if(!n)throw new Error("INVALID_DOTENV_KEY: Missing key part");let u=r.searchParams.get("environment");if(!u)throw new Error("INVALID_DOTENV_KEY: Missing environment part");let i=`DOTENV_VAULT_${u.toUpperCase()}`,o=e.parsed[i];if(!o)throw new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${i} in your .env.vault file.`);return{ciphertext:o,key:n}}function Ngt(e){let t=NDe.resolve(process.cwd(),".env");return e&&e.path&&e.path.length>0&&(t=e.path),t.endsWith(".vault")?t:`${t}.vault`}function cdn(e){return e[0]==="~"?NDe.join(edn.homedir(),e.slice(1)):e}function ldn(e){odn("Loading env from encrypted .env.vault");let t=oa._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),oa.populate(r,t,e),{parsed:t}}function fdn(e){let t=NDe.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug);e&&(e.path!=null&&(t=cdn(e.path)),e.encoding!=null&&(r=e.encoding));try{let u=oa.parse(jgt.readFileSync(t,{encoding:r})),i=process.env;return e&&e.processEnv!=null&&(i=e.processEnv),oa.populate(i,u,e),{parsed:u}}catch(u){return n&&LDe(`Failed to load ${t} ${u.message}`),{error:u}}}function pdn(e){let t=Ngt(e);return Lgt(e).length===0?oa.configDotenv(e):jgt.existsSync(t)?oa._configVault(e):(sdn(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),oa.configDotenv(e))}function hdn(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),u=n.slice(0,12),i=n.slice(-16);n=n.slice(12,-16);try{let o=tdn.createDecipheriv("aes-256-gcm",r,u);return o.setAuthTag(i),`${o.update(n)}${o.final()}`}catch(o){let s=o instanceof RangeError,a=o.message==="Invalid key length",c=o.message==="Unsupported state or unable to authenticate data";if(s||a){let l="INVALID_DOTENV_KEY: It must be 64 characters long (or more)";throw new Error(l)}else if(c){let l="DECRYPTION_FAILED: Please check your DOTENV_KEY";throw new Error(l)}else throw console.error("Error: ",o.code),console.error("Error: ",o.message),o}}function ddn(e,t,r={}){let n=!!(r&&r.debug),u=!!(r&&r.override);if(typeof t!="object")throw new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");for(let i of Object.keys(t))Object.prototype.hasOwnProperty.call(e,i)?(u===!0&&(e[i]=t[i]),n&&LDe(u===!0?`"${i}" is already defined and WAS overwritten`:`"${i}" is already defined and was NOT overwritten`)):e[i]=t[i]}var oa={configDotenv:fdn,_configVault:ldn,_parseVault:idn,config:pdn,decrypt:hdn,parse:udn,populate:ddn};z5.exports.configDotenv=oa.configDotenv;z5.exports._configVault=oa._configVault;z5.exports._parseVault=oa._parseVault;z5.exports.config=oa.config;z5.exports.decrypt=oa.decrypt;z5.exports.parse=oa.parse;z5.exports.populate=oa.populate;z5.exports=oa});var LJ=I((PLu,Mgt)=>{"use strict";function mdn(e,t){let r=Array.from(e.matchAll(t));return r.length>0?r.slice(-1)[0].index:-1}function qgt(e,t,r){let n=mdn(e,/(?!(?<=\\))\$/g);if(n===-1)return e;let u=e.slice(n),i=/((?!(?<=\\))\${?([\w]+)(?::-([^}\\]*))?}?)/,o=u.match(i);if(o!=null){let[,s,a,c]=o;return qgt(e.replace(s,t[a]||c||r.parsed[a]||""),t,r)}return e}function gdn(e){return e.replace(/\\\$/g,"$")}function vdn(e){let t=e.ignoreProcessEnv?{}:process.env;for(let r in e.parsed){let n=Object.prototype.hasOwnProperty.call(t,r)?t[r]:e.parsed[r];e.parsed[r]=gdn(qgt(n,t,e))}for(let r in e.parsed)t[r]=e.parsed[r];return e}Mgt.exports.expand=vdn});var MDe=I((kLu,Ugt)=>{function ydn(e){r.debug=r,r.default=r,r.coerce=a,r.disable=i,r.enable=u,r.enabled=o,r.humanize=CW(),r.destroy=c,Object.keys(e).forEach(l=>{r[l]=e[l]}),r.names=[],r.skips=[],r.formatters={};function t(l){let f=0;for(let p=0;p<l.length;p++)f=(f<<5)-f+l.charCodeAt(p),f|=0;return r.colors[Math.abs(f)%r.colors.length]}r.selectColor=t;function r(l){let f,p=null,h,d;function m(...v){if(!m.enabled)return;let D=m,g=Number(new Date),y=g-(f||g);D.diff=y,D.prev=f,D.curr=g,f=g,v[0]=r.coerce(v[0]),typeof v[0]!="string"&&v.unshift("%O");let E=0;v[0]=v[0].replace(/%([a-zA-Z%])/g,(C,x)=>{if(C==="%%")return"%";E++;let A=r.formatters[x];if(typeof A=="function"){let F=v[E];C=A.call(D,F),v.splice(E,1),E--}return C}),r.formatArgs.call(D,v),(D.log||r.log).apply(D,v)}return m.namespace=l,m.useColors=r.useColors(),m.color=r.selectColor(l),m.extend=n,m.destroy=r.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(h!==r.namespaces&&(h=r.namespaces,d=r.enabled(l)),d),set:v=>{p=v}}),typeof r.init=="function"&&r.init(m),m}function n(l,f){let p=r(this.namespace+(typeof f>"u"?":":f)+l);return p.log=this.log,p}function u(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let f,p=(typeof l=="string"?l:"").split(/[\s,]+/),h=p.length;for(f=0;f<h;f++)p[f]&&(l=p[f].replace(/\*/g,".*?"),l[0]==="-"?r.skips.push(new RegExp("^"+l.slice(1)+"$")):r.names.push(new RegExp("^"+l+"$")))}function i(){let l=[...r.names.map(s),...r.skips.map(s).map(f=>"-"+f)].join(",");return r.enable(""),l}function o(l){if(l[l.length-1]==="*")return!0;let f,p;for(f=0,p=r.skips.length;f<p;f++)if(r.skips[f].test(l))return!1;for(f=0,p=r.names.length;f<p;f++)if(r.names[f].test(l))return!0;return!1}function s(l){return l.toString().substring(2,l.toString().length-2).replace(/\.\*\?$/,"*")}function a(l){return l instanceof Error?l.stack||l.message:l}function c(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Ugt.exports=ydn});var $gt=I((z0,NJ)=>{z0.formatArgs=Edn;z0.save=bdn;z0.load=Cdn;z0.useColors=Ddn;z0.storage=xdn();z0.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();z0.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Ddn(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Edn(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+NJ.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,u=>{u!=="%%"&&(r++,u==="%c"&&(n=r))}),e.splice(n,0,t)}z0.log=console.debug||console.log||(()=>{});function bdn(e){try{e?z0.storage.setItem("debug",e):z0.storage.removeItem("debug")}catch{}}function Cdn(){let e;try{e=z0.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function xdn(){try{return localStorage}catch{}}NJ.exports=MDe()(z0);var{formatters:Adn}=NJ.exports;Adn.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Ggt=I((Qa,MJ)=>{var Fdn=require("tty"),qJ=require("util");Qa.init=Pdn;Qa.log=Sdn;Qa.formatArgs=Bdn;Qa.save=Odn;Qa.load=Tdn;Qa.useColors=_dn;Qa.destroy=qJ.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Qa.colors=[6,2,3,4,5,1];try{let e=j0();e&&(e.stderr||e).level>=2&&(Qa.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Qa.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(u,i)=>i.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function _dn(){return"colors"in Qa.inspectOpts?!!Qa.inspectOpts.colors:Fdn.isatty(process.stderr.fd)}function Bdn(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,u="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${u};1m${t} \x1B[0m`;e[0]=i+e[0].split(`
|
|
209
209
|
`).join(`
|
|
210
210
|
`+i),e.push(u+"m+"+MJ.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=wdn()+t+" "+e[0]}function wdn(){return Qa.inspectOpts.hideDate?"":new Date().toISOString()+" "}function Sdn(...e){return console.log(qJ.format(...e))}function Odn(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function Tdn(){return process.env.DEBUG}function Pdn(e){e.inspectOpts={};let t=Object.keys(Qa.inspectOpts);for(let r=0;r<t.length;r++)e.inspectOpts[t[r]]=Qa.inspectOpts[t[r]]}MJ.exports=MDe()(Qa);var{formatters:zgt}=MJ.exports;zgt.o=function(e){return this.inspectOpts.colors=this.useColors,qJ.inspect(e,this.inspectOpts).split(`
|
|
211
|
-
`).map(t=>t.trim()).join(" ")};zgt.O=function(e){return this.inspectOpts.colors=this.useColors,qJ.inspect(e,this.inspectOpts)}});var Id=I((RLu,UDe)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?UDe.exports=$gt():UDe.exports=Ggt()});var WDe=I(GDe=>{"use strict";Object.defineProperty(GDe,"__esModule",{value:!0});var Hc=ur(),Wgt=pT(),$De=Id()("serverless-devs:parse-spec"),zDe=class{constructor(t){this.steps=t,this.useOrder=!1,this.orderMap={},this.dependencies={}}start(){return this.dependencies=this.getDependencies(),this.analysis(),this}sort(t){if(!this.useOrder)return{steps:t,dependencies:this.dependencies};let r=(0,Hc.map)(t,u=>Object.assign(Object.assign({},u),{order:this.orderMap[u.projectName]}));return{steps:(0,Hc.sortBy)(r,u=>u.order),dependencies:this.dependencies,useOrder:this.useOrder}}analysis(){let t=(0,Hc.cloneDeep)(this.dependencies),r=0,n=()=>{for(let u in t){let i=t[u];if((0,Hc.isEmpty)(i)){(0,Hc.set)(this.orderMap,u,r++),(0,Hc.unset)(t,u);for(let o in t)(0,Hc.unset)(t,[o,u]);n()}}};n(),$De(`order map: ${JSON.stringify(this.orderMap)}`)}getDependencies(){$De(`order steps: ${JSON.stringify(this.steps)}`);let t=(0,Hc.map)(this.steps,i=>i.projectName),r={},n="",u=i=>{let o=i.constructor===Array?[]:{};if(typeof i=="object")for(var s in i){let a=i[s];if(typeof a=="string"){let c=a.match(Wgt.REGXG);if(c)for(let l of c){let f=l.replace(Wgt.REGXG,"$1"),p=(0,Hc.split)(f,".")[0],h=(0,Hc.split)(f,".")[1],d=(0,Hc.split)(f,".")[2];p==="resources"&&(0,Hc.includes)(t,h)&&d==="output"&&(this.useOrder=!0,(0,Hc.set)(r,n,Object.assign(Object.assign({},r[n]),{[h]:1})))}}o[s]=(0,Hc.isObject)(a)?u(a):a}else o=i;return o};for(let i of this.steps)n=i.projectName,(0,Hc.set)(r,n,{}),u((0,Hc.get)(i,"props",{}));return $De(`order dependencies: ${JSON.stringify(r)}`),r}};GDe.default=zDe});var UJ=I((jLu,Hgt)=>{"use strict";var VDe=Object.prototype.hasOwnProperty,kdn=Object.prototype.toString,Vgt=function(t){if(!t||kdn.call(t)!=="[object Object]")return!1;var r=VDe.call(t,"constructor"),n=t.constructor&&t.constructor.prototype&&VDe.call(t.constructor.prototype,"isPrototypeOf");if(t.constructor&&!r&&!n)return!1;var u;for(u in t);return typeof u>"u"||VDe.call(t,u)};Hgt.exports=function e(){var t,r,n,u,i,o,s=arguments[0],a=1,c=arguments.length,l=!1;for(typeof s=="boolean"?(l=s,s=arguments[1]||{},a=2):(typeof s!="object"&&typeof s!="function"||s==null)&&(s={});a<c;++a)if(t=arguments[a],t!=null)for(r in t)r!=="__proto__"&&(n=s[r],u=t[r],s!==u&&(l&&u&&Vgt(u)?(o=n&&Vgt(n)?n:{},s[r]=e(l,o,u)):typeof u<"u"&&(s[r]=u)));return s}});var KDe=I(G5=>{"use strict";var Kgt=G5&&G5.__awaiter||function(e,t,r,n){function u(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function s(l){try{c(n.next(l))}catch(f){o(f)}}function a(l){try{c(n.throw(l))}catch(f){o(f)}}function c(l){l.done?i(l.value):u(l.value).then(s,a)}c((n=n.apply(e,t||[])).next())})},Rdn=G5&&G5.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var u=0,n=Object.getOwnPropertySymbols(e);u<n.length;u++)t.indexOf(n[u])<0&&Object.prototype.propertyIsEnumerable.call(e,n[u])&&(r[n[u]]=e[n[u]]);return r},Jgt=G5&&G5.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(G5,"__esModule",{value:!0});var Idn=Jgt(require("path")),ek=Jgt(bme()),jdn=$J(),ju=ur(),Ygt=UJ(),Xgt=Id()("serverless-devs:parse-spec"),HDe=class{constructor(t={},r={}){this.content=t,this.options=r,this.credential={}}start(){return Kgt(this,void 0,void 0,function*(){return yield this.getSteps()})}getEnvMagic(t={}){return Object.assign(Object.assign({},t),{__runtime:"parse",project:(0,ju.get)(this.options.environment,"__project"),that:(0,ju.set)((0,ju.omit)(this.options.environment,["infrastructure","overlays"]),"project",(0,ju.get)(this.options.environment,"__project")),credential:this.credential})}getCommonMagic(){return{cwd:Idn.default.dirname(this.options.basePath),vars:this.content.vars,__runtime:"parse",credential:this.credential}}getMagicProps(t){let r=(0,ju.get)(this.content,"resources",{}),n=(0,ju.get)(this.content,"components",{}),u={},i={};(0,ju.each)(r,(a,c)=>{(0,ju.set)(u,`${c}`,a||{})}),(0,ju.each)(n,(a,c)=>{(0,ju.set)(i,`${c}.props`,a.props||{})});let o=t.projectName,s=Object.assign(Object.assign({},this.getCommonMagic()),{resources:u,components:i,that:Object.assign({name:o,access:t.access,component:t.component},u[o])});return(0,ju.set)(s,"that.props",(0,ek.default)(u[o].props,s,this.options)),Xgt(`getMagicProps: ${JSON.stringify(s)}`),s}getSteps(){return Kgt(this,void 0,void 0,function*(){let t=this.getAccess();this.credential=yield(0,jdn.getCredential)(t,this.options.logger);let r=this.content,{resources:n}=r,u=Rdn(r,["resources"]);this.content=Object.assign(Object.assign({},this.content),(0,ek.default)(u,this.getCommonMagic(),this.options));let i=[],o=[];for(let c in n){let l=n[c],p=dE()((0,ju.get)(l,"component"),this.getCommonMagic()),h=(0,ju.get)(this.content.template,(0,ju.get)(l,"extend.name"),{});h=(0,ek.default)((0,ju.omit)(h,(0,ju.get)(l,"extend.ignore",[])),this.getCommonMagic(),this.options);let d=Ygt(!0,{},h,l.props),m=(0,ju.cloneDeep)(this.options.environment);m&&!(0,ju.isEmpty)((0,ju.get)(m,"overlays.components"))&&(m.overlays.components=(0,ju.pickBy)(m.overlays.components,(y,E)=>E===p)),m&&!(0,ju.isEmpty)((0,ju.get)(m,"overlays.resources"))&&(m.overlays.resources=(0,ju.pickBy)(m.overlays.resources,(y,E)=>E===c));let v=(0,ek.default)(m,this.getEnvMagic({source:d}),this.options),D=(0,ju.get)(v,"infraStack.region")?{region:(0,ju.get)(v,"infraStack.region")}:{};Xgt(`real environment: ${JSON.stringify(v)}`),(0,ju.set)(l,"props",Ygt(!0,{},d,(0,ju.get)(v,`overlays.components.${p}`,{}),(0,ju.get)(v,`overlays.resources.${c}`,{}),D));let g=(0,ek.default)(l,this.getMagicProps({projectName:c,access:t,component:p}),this.options);this.content=Object.assign(Object.assign({},this.content),{access:t,resources:Object.assign(Object.assign({},this.content.resources),{[c]:g})}),i.push(Object.assign(Object.assign({},g),{projectName:c,component:p,access:t,credential:this.credential})),o.push(Object.assign(Object.assign({},l),{projectName:c,component:p,access:t,credential:this.credential}))}let s=this.options.projectName?[(0,ju.find)(i,c=>c.projectName===this.options.projectName)]:i,a=this.options.projectName?[(0,ju.find)(o,c=>c.projectName===this.options.projectName)]:o;return{steps:s,content:this.content,originSteps:a,allSteps:i}})}getAccess(){if(this.options.access)return this.options.access;let t=(0,ju.get)(this.options,"environment.access");if(t)return t;if(this.content.access)return this.content.access}};G5.default=HDe});var $J=I(ho=>{"use strict";var Ldn=ho&&ho.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var u=Object.getOwnPropertyDescriptor(t,r);(!u||("get"in u?!t.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,u)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Ndn=ho&&ho.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),qdn=ho&&ho.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Ldn(t,e,r);return Ndn(t,e),t},GJ=ho&&ho.__awaiter||function(e,t,r,n){function u(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function s(l){try{c(n.next(l))}catch(f){o(f)}}function a(l){try{c(n.throw(l))}catch(f){o(f)}}function c(l){l.done?i(l.value):u(l.value).then(s,a)}c((n=n.apply(e,t||[])).next())})},tk=ho&&ho.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var u=0,n=Object.getOwnPropertySymbols(e);u<n.length;u++)t.indexOf(n[u])<0&&Object.prototype.propertyIsEnumerable.call(e,n[u])&&(r[n[u]]=e[n[u]]);return r},H8=ho&&ho.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ho,"__esModule",{value:!0});ho.ParseSpecForContent=ho.getCredential=ho.isExtendMode=ho.getDefaultYamlPath=void 0;var jd=H8(require("path")),Nf=qdn(dr()),Mdn=H8(Rl()),Eu=ur(),rk=dr(),Udn=H8(Zs());function $dn(){let e=Nf.getYamlPath("s");if(e)return jd.default.resolve(e);throw new Nf.DevsError("the s.yaml/s.yml file was not found.",{tips:"Please check if the s.yaml/s.yml file exists, you can also specify it with -t.",trackerType:rk.ETrackerType.parseException})}ho.getDefaultYamlPath=$dn;var zdn=(e,t)=>typeof e!="string"?!1:(Nf.getYamlContent(Nf.getAbsolutePath(e,t)),!0);ho.isExtendMode=zdn;function Gdn(e,t){return GJ(this,void 0,void 0,function*(){try{let n=yield new Mdn.default({logger:t}).get(e);return(0,Eu.get)(n,"credential",{})}catch{return{}}})}ho.getCredential=Gdn;var Qgt=H8(ui()),YDe=H8(jJ()),XDe=LJ(),Wdn=H8(WDe()),JDe=H8(KDe()),_i=ur(),JE=EW(),V8=pT(),Zgt=H8(require("assert")),zJ=dr(),e6t=UJ(),QDe=class{constructor(t="",r={}){this.options=r,this.yaml={},this.record={},this.options.argv=this.options.argv||process.argv.slice(2),this.options.logger=this.options.logger||console,this.yaml.path="",this.yaml.content=Udn.default.load(t)||{},this.options.isPreview=this.options.isPreview||!1}doYamlinit(){return GJ(this,void 0,void 0,function*(){yield this.doExtend(),this.doEnvironment(),this.yaml.access=(0,Eu.get)(this.yaml.content,"access");let t=this.yaml.use3x?"resources":"services",r=(0,Eu.get)(this.yaml.content,t,{});this.yaml.projectNames=(0,_i.keys)((0,Eu.get)(this.yaml.content,t,{})),this.yaml.vars=(0,Eu.get)(this.yaml.content,"vars",{}),this.yaml.flow=(0,Eu.get)(this.yaml.content,"flow",{}),this.yaml.useFlow=!1,this.yaml.appName=(0,Eu.get)(this.yaml.content,"name");for(let n of this.yaml.projectNames){let u=(0,Eu.get)(r,`${n}.props.code`);if(u&&(0,_i.isString)(u)){let i=Nf.getAbsolutePath((0,Eu.get)(r,`${n}.props.code`,""));(0,XDe.expand)(YDe.default.config({path:jd.default.join(i,".env")}))}}(0,XDe.expand)(YDe.default.config({path:jd.default.join(jd.default.dirname(this.yaml.path),".env")}))})}doExtend(){return GJ(this,void 0,void 0,function*(){if(this.yaml.extend=(0,Eu.get)(this.yaml.content,"extend"),this.yaml.useExtend=(0,ho.isExtendMode)(this.yaml.extend,jd.default.dirname(this.yaml.path)),this.yaml.useExtend){let t=Nf.getAbsolutePath(this.yaml.extend,jd.default.dirname(this.yaml.path));(0,XDe.expand)(YDe.default.config({path:jd.default.join(t,".env")}));let r=Nf.getYamlContent(t);if(this.yaml.use3x=String((0,Eu.get)(this.yaml.content,"edition",(0,Eu.get)(r,"edition")))==="3.0.0",!this.yaml.use3x)return;let{resources:n}=r,u=tk(r,["resources"]),i=this.yaml.content,{resources:o}=i,s=tk(i,["resources"]),a=e6t(!0,{},u,s),c=yield new JDe.default(Object.assign(Object.assign({},r),a),this.getParsedContentOptions(t)).start(),l=yield new JDe.default(Object.assign(Object.assign({},this.yaml.content),a),this.getParsedContentOptions(this.yaml.path)).start();this.yaml.content=e6t(!0,{},(0,Eu.get)(c,"content"),(0,Eu.get)(l,"content"));return}this.yaml.use3x=String((0,Eu.get)(this.yaml.content,"edition"))==="3.0.0"})}doEnvironment(){if(!this.yaml.use3x)return;let t=this.record.env?this.doEnvWithSpecify():this.doEnvWithNotSpecify();if((0,_i.isEmpty)(t))return;let{project:r,environment:n}=t;(0,_i.set)(n,"overlays.resources.region",(0,Eu.get)(n,"region")),(0,_i.set)(n,"__project",r),this.yaml.environment=n}doEnvWithNotSpecify(){if(this.yaml.useExtend&&(0,_i.has)(this.yaml.content,V8.ENVIRONMENT_KEY))throw new zJ.DevsError("Environment and extend is conflict",{trackerType:rk.ETrackerType.parseException});if(!Qgt.default.existsSync(V8.ENVIRONMENT_FILE_PATH))return{};let t=process.env.ALIYUN_DEVS_REMOTE_PROJECT_NAME,r=t||(0,Eu.get)(this.yaml.content,"name"),n=require(V8.ENVIRONMENT_FILE_PATH),u=(0,Eu.get)((0,_i.find)(n,{project:r}),"default");if((0,_i.isEmpty)(u))return{};let i=Nf.getAbsolutePath((0,Eu.get)(this.yaml.content,V8.ENVIRONMENT_KEY)||"env.yaml",jd.default.dirname(this.yaml.path)),o=Nf.getYamlContent(i);if((0,_i.isEmpty)(o))return this.options.logger.warnOnce(`Environment file [${i}] is not found, run without environment.`),{};let{environments:s}=o,a=(0,_i.find)(s,c=>c.name===u);return(0,_i.isEmpty)(a)?(this.options.logger.warnOnce(`Default env [${u}] is not found, run without environment.`),{}):{project:r,environment:a}}doEnvWithSpecify(){if(this.yaml.useExtend)throw new zJ.DevsError("Environment and extend is conflict",{trackerType:rk.ETrackerType.parseException});let t=Nf.getAbsolutePath((0,Eu.get)(this.yaml.content,V8.ENVIRONMENT_KEY,V8.ENVIRONMENT_FILE_NAME),jd.default.dirname(this.yaml.path)),r=Nf.getYamlContent(t);if((0,_i.isEmpty)(r))return this.options.logger.warnOnce(`Environment file [${t}] is not found, run without environment.`),{};let{environments:n}=r,u=process.env.ALIYUN_DEVS_REMOTE_PROJECT_NAME,i=u||(0,Eu.get)(this.yaml.content,"name"),o=(0,_i.find)(n,s=>s.name===this.record.env);return(0,_i.isEmpty)(o)?(this.options.logger.warnOnce(`Env [${this.record.env}] was not found, run without environment.`),{}):{project:i,environment:o}}getParsedContentOptions(t){return{logger:this.options.logger,basePath:t,projectName:this.record.projectName,access:this.record.access,environment:this.yaml.environment,isPreview:this.options.isPreview}}start(){return GJ(this,void 0,void 0,function*(){if(this.parseArgv(),yield this.doYamlinit(),this.parseArgv(),!this.yaml.use3x)return this.v1();let{steps:t,content:r,originSteps:n,allSteps:u}=yield new JDe.default(this.yaml.content,this.getParsedContentOptions(this.yaml.path)).start(),i=(0,Eu.get)(this.yaml.content,"services",{});if((0,_i.isEmpty)(t)&&!(0,_i.isEmpty)(i))throw this.options.logger.tips("Check https://docs.serverless-devs.com/user-guide/spec/ for more details. Use the 's cli fc3 s2tos3' command for automatic YAML transformation."),new zJ.DevsError("Keyword 'services' has been replaced by 'resources' in 3.0.0 YAML.",{trackerType:rk.ETrackerType.parseException});this.yaml.content=r,this.yaml.vars=(0,Eu.get)(this.yaml.content,"vars",{});let o=(0,Eu.get)(this.yaml.content,"actions",{});return this.yaml.actions=this.parseActions(o),Object.assign({steps:this.record.projectName?t:this.doFlow(t,n),yaml:this.yaml,allSteps:u},this.record)})}v1(){let t=[],r=(0,Eu.get)(this.yaml.content,"services",{});for(let n in r){let u=r[n];t.push(Object.assign(Object.assign({},u),{projectName:n}))}return Object.assign({steps:this.record.projectName?(0,_i.filter)(t,n=>n.projectName===this.record.projectName):t,yaml:this.yaml},this.record)}parseArgv(){let t=Nf.parseArgv(this.options.argv),{_:r}=t;if(this.record.access=(0,Eu.get)(t,"access"),this.record.version=(0,Eu.get)(t,"version"),this.record.help=(0,Eu.get)(t,"help"),this.record.output=(0,Eu.get)(t,"output"),this.record.skipActions=(0,Eu.get)(t,"skip-actions"),this.record.debug=(0,Eu.get)(t,"debug"),this.record.env=(0,Eu.get)(t,"env"),(0,_i.includes)(this.yaml.projectNames,r[0])){this.record.projectName=r[0],this.record.command=r[1];return}this.record.command=r[0]}doFlow(t,r){let n=[],u=(0,_i.find)(this.yaml.flow,(f,p)=>this.matchFlow(p)),i=new Wdn.default(r).start(),{steps:o,dependencies:s,useOrder:a}=i.sort(t);if(!u)return o;let c={},l=(f=[],p)=>{(0,Zgt.default)((0,_i.isArray)(f),`flow ${this.record.command} data format is invalid.`);for(let h of f){let d=(0,_i.find)(t,m=>m.projectName===h);(0,Zgt.default)(d,`Resource ${h} is not found. Please check the content of flow.`),n.push(Object.assign(Object.assign({},d),{flowId:p})),c[d.projectName]=p}};if((0,_i.each)(u,l),this.yaml.useFlow=!0,a)for(let f in s){let p=s[f];for(let h in p)if(c[h]>=c[f])throw new Error(`flow is invalid, ${h} must be executed before ${f}`)}return n}matchFlow(t){return V8.REGX.test(t)?dE()(t,{command:this.record.command}):t===this.record.command}parseActions(t={},r=JE.IActionLevel.GLOBAL){let n=[];for(let u in t){let i=t[u];if(!(0,_i.isArray)(i))throw new zJ.DevsError(`${r} action ${u} is invalid, it must be array`,{trackerType:rk.ETrackerType.parseException});let o=this.matchAction(u);o.validate&&n.push(...(0,_i.map)(i,s=>{if(s[JE.IActionType.RUN]){let{run:a}=s,c=tk(s,["run"]);return Object.assign(Object.assign({},c),{value:a,path:Nf.getAbsolutePath((0,Eu.get)(s,"path","./"),jd.default.dirname(this.yaml.path)),actionType:JE.IActionType.RUN,hookType:o.type,level:r,projectName:this.record.projectName})}if(s[JE.IActionType.PLUGIN]){let{plugin:a}=s,c=tk(s,["plugin"]),l=Nf.getAbsolutePath(a,jd.default.dirname(this.yaml.path));return Object.assign(Object.assign({},c),{value:Qgt.default.existsSync(l)?l:a,actionType:JE.IActionType.PLUGIN,hookType:o.type,level:r,projectName:this.record.projectName})}if(s[JE.IActionType.COMPONENT]){let{component:a}=s,c=tk(s,["component"]);return Object.assign(Object.assign({},c),{value:a,actionType:JE.IActionType.COMPONENT,hookType:o.type,level:r,projectName:this.record.projectName})}}))}return n}matchAction(t){if(V8.REGX.test(t)){let o=dE()(t,{command:this.record.command}),[s,a]=(0,_i.split)(o,"-");return{validate:a==="true",type:s}}let[n,u]=(0,_i.split)(t,"-");return{validate:u===this.record.command,type:n}}};ho.ParseSpecForContent=QDe});var lh=I(mo=>{"use strict";var u6t=mo&&mo.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var u=Object.getOwnPropertyDescriptor(t,r);(!u||("get"in u?!t.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,u)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Vdn=mo&&mo.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i6t=mo&&mo.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&u6t(t,e,r)},Hdn=mo&&mo.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&u6t(t,e,r);return Vdn(t,e),t},ZDe=mo&&mo.__awaiter||function(e,t,r,n){function u(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function s(l){try{c(n.next(l))}catch(f){o(f)}}function a(l){try{c(n.throw(l))}catch(f){o(f)}}function c(l){l.done?i(l.value):u(l.value).then(s,a)}c((n=n.apply(e,t||[])).next())})},nk=mo&&mo.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var u=0,n=Object.getOwnPropertySymbols(e);u<n.length;u++)t.indexOf(n[u])<0&&Object.prototype.propertyIsEnumerable.call(e,n[u])&&(r[n[u]]=e[n[u]]);return r},ZE=mo&&mo.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mo,"__esModule",{value:!0});mo.ParseSpecForContent=mo.getInputs=void 0;var Kdn=bme();Object.defineProperty(mo,"getInputs",{enumerable:!0,get:function(){return ZE(Kdn).default}});i6t(EW(),mo);i6t(pT(),mo);var Ydn=$J();Object.defineProperty(mo,"ParseSpecForContent",{enumerable:!0,get:function(){return Ydn.ParseSpecForContent}});var ch=Hdn(dr()),eEe=ZE(ui()),O2=ZE(require("path")),tEe=ZE(jJ()),rEe=LJ(),t6t=$J(),Xdn=ZE(WDe()),nEe=ZE(KDe()),jr=ur(),QE=EW(),K8=pT(),r6t=ZE(require("assert")),Y8=dr(),n6t=UJ(),qf=Id()("serverless-devs:parse-spec"),uEe=class{constructor(t="",r={}){this.options=r,this.yaml={},this.record={},this.options.argv=this.options.argv||process.argv.slice(2),this.options.logger=this.options.logger||console,this.options.isPreview=this.options.isPreview||!1,this.init(t),qf(`yaml path: ${this.yaml.path}`),qf(`argv: ${JSON.stringify(this.options.argv)}`)}init(t){if((0,jr.isEmpty)(t))return this.yaml.path=(0,t6t.getDefaultYamlPath)();if(eEe.default.existsSync(t))return this.yaml.path=ch.getAbsolutePath(t);throw new Error(`The specified template file does not exist: ${t}`)}doYamlinit(){return ZDe(this,void 0,void 0,function*(){yield this.doExtend(),this.doEnvironment(),this.yaml.access=(0,jr.get)(this.yaml.content,"access");let t=this.yaml.use3x?"resources":"services",r=(0,jr.get)(this.yaml.content,t,{});this.yaml.projectNames=(0,jr.keys)((0,jr.get)(this.yaml.content,t,{})),this.yaml.vars=(0,jr.get)(this.yaml.content,"vars",{}),this.yaml.flow=(0,jr.get)(this.yaml.content,"flow",{}),this.yaml.useFlow=!1,this.yaml.appName=(0,jr.get)(this.yaml.content,"name");for(let n of this.yaml.projectNames){let u=(0,jr.get)(r,`${n}.props.code`);if(u&&(0,jr.isString)(u)){let i=ch.getAbsolutePath((0,jr.get)(r,`${n}.props.code`,""));(0,rEe.expand)(tEe.default.config({path:O2.default.join(i,".env")}))}}(0,rEe.expand)(tEe.default.config({path:O2.default.join(O2.default.dirname(this.yaml.path),".env")}))})}doExtend(){return ZDe(this,void 0,void 0,function*(){if(this.yaml.content=ch.getYamlContent(this.yaml.path),this.yaml.extend=(0,jr.get)(this.yaml.content,"extend"),this.yaml.useExtend=(0,t6t.isExtendMode)(this.yaml.extend,O2.default.dirname(this.yaml.path)),this.yaml.useExtend){let t=ch.getAbsolutePath(this.yaml.extend,O2.default.dirname(this.yaml.path));(0,rEe.expand)(tEe.default.config({path:O2.default.join(t,".env")}));let r=ch.getYamlContent(t);if(this.yaml.use3x=String((0,jr.get)(this.yaml.content,"edition",(0,jr.get)(r,"edition")))==="3.0.0",!this.yaml.use3x)return;let{resources:n}=r,u=nk(r,["resources"]),i=this.yaml.content,{resources:o}=i,s=nk(i,["resources"]),a=n6t(!0,{},u,s),c=yield new nEe.default(Object.assign(Object.assign({},r),a),this.getParsedContentOptions(t)).start(),l=yield new nEe.default(Object.assign(Object.assign({},this.yaml.content),a),this.getParsedContentOptions(this.yaml.path)).start();this.yaml.content=n6t(!0,{},(0,jr.get)(c,"content"),(0,jr.get)(l,"content"));return}this.yaml.use3x=String((0,jr.get)(this.yaml.content,"edition"))==="3.0.0"})}doEnvironment(){if(!this.yaml.use3x)return;let t=this.record.env?this.doEnvWithSpecify():this.doEnvWithNotSpecify();if((0,jr.isEmpty)(t))return;let{project:r,environment:n}=t;qf(`use environment: ${JSON.stringify(n)}`),(0,jr.set)(n,"overlays.resources.region",(0,jr.get)(n,"region")),(0,jr.set)(n,"__project",r),this.yaml.environment=n}doEnvWithNotSpecify(){if(this.yaml.useExtend&&(0,jr.has)(this.yaml.content,K8.ENVIRONMENT_KEY))throw new Y8.DevsError("Environment and extend is conflict",{trackerType:Y8.ETrackerType.parseException});if(!eEe.default.existsSync(K8.ENVIRONMENT_FILE_PATH))return{};let t=process.env.ALIYUN_DEVS_REMOTE_PROJECT_NAME,r=t||(0,jr.get)(this.yaml.content,"name"),n=require(K8.ENVIRONMENT_FILE_PATH),u=(0,jr.get)((0,jr.find)(n,{project:r}),"default");if((0,jr.isEmpty)(u))return{};let i=ch.getAbsolutePath((0,jr.get)(this.yaml.content,K8.ENVIRONMENT_KEY)||"env.yaml",O2.default.dirname(this.yaml.path)),o=ch.getYamlContent(i);if((0,jr.isEmpty)(o))return this.options.logger.warnOnce(`Environment file [${i}] is not found, run without environment.`),{};let{environments:s}=o,a=(0,jr.find)(s,c=>c.name===u);return(0,jr.isEmpty)(a)?(this.options.logger.warnOnce(`Default env [${u}] is not found, run without environment.`),{}):{project:r,environment:a}}doEnvWithSpecify(){if(this.yaml.useExtend)throw new Y8.DevsError("Environment and extend is conflict",{trackerType:Y8.ETrackerType.parseException});let t=ch.getAbsolutePath((0,jr.get)(this.yaml.content,K8.ENVIRONMENT_KEY,K8.ENVIRONMENT_FILE_NAME),O2.default.dirname(this.yaml.path)),r=ch.getYamlContent(t);if((0,jr.isEmpty)(r))return this.options.logger.warnOnce(`Environment file [${t}] is not found, run without environment.`),{};qf(`environment content: ${JSON.stringify(r)}`);let{environments:n}=r,u=process.env.ALIYUN_DEVS_REMOTE_PROJECT_NAME,i=u||(0,jr.get)(this.yaml.content,"name"),o=(0,jr.find)(n,s=>s.name===this.record.env);return(0,jr.isEmpty)(o)?(this.options.logger.warnOnce(`Env [${this.record.env}] was not found, run without environment.`),{}):{project:i,environment:o}}getParsedContentOptions(t){return{logger:this.options.logger,basePath:t,projectName:this.record.projectName,access:this.record.access,environment:this.yaml.environment,isPreview:this.options.isPreview}}start(){return ZDe(this,void 0,void 0,function*(){if(qf("parse start"),this.parseArgv(),yield this.doYamlinit(),this.parseArgv(),!this.yaml.use3x)return this.v1();let{steps:t,content:r,originSteps:n,allSteps:u}=yield new nEe.default(this.yaml.content,this.getParsedContentOptions(this.yaml.path)).start(),i=(0,jr.get)(this.yaml.content,"services",{});if((0,jr.isEmpty)(t)&&!(0,jr.isEmpty)(i))throw this.options.logger.tips("Check https://docs.serverless-devs.com/user-guide/spec/ for more details. Use the 's cli fc3 s2tos3' command for automatic YAML transformation."),new Y8.DevsError("Keyword 'services' has been replaced by 'resources' in 3.0.0 YAML.",{trackerType:Y8.ETrackerType.parseException});this.yaml.content=r,this.yaml.vars=(0,jr.get)(this.yaml.content,"vars",{});let o=(0,jr.get)(this.yaml.content,"actions",{});this.yaml.actions=this.parseActions(o);let s=Object.assign({steps:this.record.projectName?t:this.doFlow(t,n),yaml:this.yaml,allSteps:u},this.record);return qf(`parse result: ${JSON.stringify(s)}`),qf("parse end"),s})}v1(){let t=[],r=(0,jr.get)(this.yaml.content,"services",{});for(let n in r){let u=r[n];t.push(Object.assign(Object.assign({},u),{projectName:n}))}return Object.assign({steps:this.record.projectName?(0,jr.filter)(t,n=>n.projectName===this.record.projectName):t,yaml:this.yaml},this.record)}parseArgv(){let t=ch.parseArgv(this.options.argv);qf(`parse argv: ${JSON.stringify(t)}`);let{_:r}=t;if(this.record.access=(0,jr.get)(t,"access"),this.record.version=(0,jr.get)(t,"version"),this.record.help=(0,jr.get)(t,"help"),this.record.output=(0,jr.get)(t,"output"),this.record.skipActions=(0,jr.get)(t,"skip-actions"),this.record.debug=(0,jr.get)(t,"debug"),this.record.env=(0,jr.get)(t,"env"),this.record.baselineTemplate=(0,jr.get)(t,"baseline-template"),(0,jr.includes)(this.yaml.projectNames,r[0])){this.record.projectName=r[0],this.record.command=r[1];return}this.record.command=r[0]}doFlow(t,r){let n=[],u=(0,jr.find)(this.yaml.flow,(f,p)=>this.matchFlow(p)),i=new Xdn.default(r).start(),{steps:o,dependencies:s,useOrder:a}=i.sort(t);if(!u)return o;qf(`find flow: ${JSON.stringify(u)}`);let c={},l=(f=[],p)=>{(0,r6t.default)((0,jr.isArray)(f),`flow ${this.record.command} data format is invalid.`);for(let h of f){let d=(0,jr.find)(t,m=>m.projectName===h);(0,r6t.default)(d,`Resource ${h} is not found. Please check the content of flow.`),n.push(Object.assign(Object.assign({},d),{flowId:p})),c[d.projectName]=p}};if((0,jr.each)(u,l),qf(`flow steps: ${JSON.stringify(n)}`),this.yaml.useFlow=!0,qf(`flow projectOrder: ${JSON.stringify(c)}`),a){qf(`project dependencies: ${JSON.stringify(s)}`);for(let f in s){let p=s[f];for(let h in p)if(c[h]>=c[f])throw new Error(`flow is invalid, ${h} must be executed before ${f}`)}}return n}matchFlow(t){return K8.REGX.test(t)?dE()(t,{command:this.record.command}):t===this.record.command}parseActions(t={},r=QE.IActionLevel.GLOBAL){let n=[];for(let u in t){let i=t[u];if(!(0,jr.isArray)(i))throw new Y8.DevsError(`${r} action ${u} is invalid, it must be array`,{trackerType:Y8.ETrackerType.parseException});let o=this.matchAction(u);qf(`action: ${u}, useAction: ${JSON.stringify(o)}`),o.validate&&n.push(...(0,jr.map)(i,s=>{if(s[QE.IActionType.RUN]){let{run:a}=s,c=nk(s,["run"]);return Object.assign(Object.assign({},c),{value:a,path:ch.getAbsolutePath((0,jr.get)(s,"path","./"),O2.default.dirname(this.yaml.path)),actionType:QE.IActionType.RUN,hookType:o.type,level:r,projectName:this.record.projectName})}if(s[QE.IActionType.PLUGIN]){let{plugin:a}=s,c=nk(s,["plugin"]),l=ch.getAbsolutePath(a,O2.default.dirname(this.yaml.path));return Object.assign(Object.assign({},c),{value:eEe.default.existsSync(l)?l:a,actionType:QE.IActionType.PLUGIN,hookType:o.type,level:r,projectName:this.record.projectName})}if(s[QE.IActionType.COMPONENT]){let{component:a}=s,c=nk(s,["component"]);return Object.assign(Object.assign({},c),{value:a,actionType:QE.IActionType.COMPONENT,hookType:o.type,level:r,projectName:this.record.projectName})}}))}return qf(`parse actions: ${JSON.stringify(n)}`),n}matchAction(t){if(K8.REGX.test(t)){let o=dE()(t,{command:this.record.command}),[s,a]=(0,jr.split)(o,"-");return{validate:a==="true",type:s}}let[n,u]=(0,jr.split)(t,"-");return{validate:u===this.record.command,type:n}}};mo.default=uEe});var uk=I((MLu,c6t)=>{var Jdn=require("path").relative;c6t.exports=r1n;var Qdn=process.cwd();function s6t(e,t){for(var r=e.split(/[ ,]+/),n=String(t).toLowerCase(),u=0;u<r.length;u++){var i=r[u];if(i&&(i==="*"||i.toLowerCase()===n))return!0}return!1}function Zdn(e,t,r){var n=Object.getOwnPropertyDescriptor(e,t),u=n.value;return n.get=function(){return u},n.writable&&(n.set=function(o){return u=o}),delete n.value,delete n.writable,Object.defineProperty(e,t,n),n}function e1n(e){for(var t="",r=0;r<e;r++)t+=", arg"+r;return t.substr(2)}function t1n(e){var t=this.name+": "+this.namespace;this.message&&(t+=" deprecated "+this.message);for(var r=0;r<e.length;r++)t+=`
|
|
211
|
+
`).map(t=>t.trim()).join(" ")};zgt.O=function(e){return this.inspectOpts.colors=this.useColors,qJ.inspect(e,this.inspectOpts)}});var Id=I((RLu,UDe)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?UDe.exports=$gt():UDe.exports=Ggt()});var WDe=I(GDe=>{"use strict";Object.defineProperty(GDe,"__esModule",{value:!0});var Hc=ur(),Wgt=pT(),$De=Id()("serverless-devs:parse-spec"),zDe=class{constructor(t){this.steps=t,this.useOrder=!1,this.orderMap={},this.dependencies={}}start(){return this.dependencies=this.getDependencies(),this.analysis(),this}sort(t){if(!this.useOrder)return{steps:t,dependencies:this.dependencies};let r=(0,Hc.map)(t,u=>Object.assign(Object.assign({},u),{order:this.orderMap[u.projectName]}));return{steps:(0,Hc.sortBy)(r,u=>u.order),dependencies:this.dependencies,useOrder:this.useOrder}}analysis(){let t=(0,Hc.cloneDeep)(this.dependencies),r=0,n=()=>{for(let u in t){let i=t[u];if((0,Hc.isEmpty)(i)){(0,Hc.set)(this.orderMap,u,r++),(0,Hc.unset)(t,u);for(let o in t)(0,Hc.unset)(t,[o,u]);n()}}};n(),$De(`order map: ${JSON.stringify(this.orderMap)}`)}getDependencies(){$De(`order steps: ${JSON.stringify(this.steps)}`);let t=(0,Hc.map)(this.steps,i=>i.projectName),r={},n="",u=i=>{let o=i.constructor===Array?[]:{};if(typeof i=="object")for(var s in i){let a=i[s];if(typeof a=="string"){let c=a.match(Wgt.REGXG);if(c)for(let l of c){let f=l.replace(Wgt.REGXG,"$1"),p=(0,Hc.split)(f,".")[0],h=(0,Hc.split)(f,".")[1],d=(0,Hc.split)(f,".")[2];p==="resources"&&(0,Hc.includes)(t,h)&&d==="output"&&(this.useOrder=!0,(0,Hc.set)(r,n,Object.assign(Object.assign({},r[n]),{[h]:1})))}}o[s]=(0,Hc.isObject)(a)?u(a):a}else o=i;return o};for(let i of this.steps)n=i.projectName,(0,Hc.set)(r,n,{}),u((0,Hc.get)(i,"props",{}));return $De(`order dependencies: ${JSON.stringify(r)}`),r}};GDe.default=zDe});var UJ=I((jLu,Hgt)=>{"use strict";var VDe=Object.prototype.hasOwnProperty,kdn=Object.prototype.toString,Vgt=function(t){if(!t||kdn.call(t)!=="[object Object]")return!1;var r=VDe.call(t,"constructor"),n=t.constructor&&t.constructor.prototype&&VDe.call(t.constructor.prototype,"isPrototypeOf");if(t.constructor&&!r&&!n)return!1;var u;for(u in t);return typeof u>"u"||VDe.call(t,u)};Hgt.exports=function e(){var t,r,n,u,i,o,s=arguments[0],a=1,c=arguments.length,l=!1;for(typeof s=="boolean"?(l=s,s=arguments[1]||{},a=2):(typeof s!="object"&&typeof s!="function"||s==null)&&(s={});a<c;++a)if(t=arguments[a],t!=null)for(r in t)r!=="__proto__"&&(n=s[r],u=t[r],s!==u&&(l&&u&&Vgt(u)?(o=n&&Vgt(n)?n:{},s[r]=e(l,o,u)):typeof u<"u"&&(s[r]=u)));return s}});var KDe=I(G5=>{"use strict";var Kgt=G5&&G5.__awaiter||function(e,t,r,n){function u(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function s(l){try{c(n.next(l))}catch(f){o(f)}}function a(l){try{c(n.throw(l))}catch(f){o(f)}}function c(l){l.done?i(l.value):u(l.value).then(s,a)}c((n=n.apply(e,t||[])).next())})},Rdn=G5&&G5.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var u=0,n=Object.getOwnPropertySymbols(e);u<n.length;u++)t.indexOf(n[u])<0&&Object.prototype.propertyIsEnumerable.call(e,n[u])&&(r[n[u]]=e[n[u]]);return r},Jgt=G5&&G5.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(G5,"__esModule",{value:!0});var Idn=Jgt(require("path")),ek=Jgt(bme()),jdn=$J(),ju=ur(),Ygt=UJ(),Xgt=Id()("serverless-devs:parse-spec"),HDe=class{constructor(t={},r={}){this.content=t,this.options=r,this.credential={}}start(){return Kgt(this,void 0,void 0,function*(){return yield this.getSteps()})}getEnvMagic(t={}){return Object.assign(Object.assign({},t),{__runtime:"parse",project:(0,ju.get)(this.options.environment,"__project"),that:(0,ju.set)((0,ju.omit)(this.options.environment,["infrastructure","overlays"]),"project",(0,ju.get)(this.options.environment,"__project")),credential:this.credential})}getCommonMagic(){return{cwd:Idn.default.dirname(this.options.basePath),vars:this.content.vars,__runtime:"parse",credential:this.credential}}getMagicProps(t){let r=(0,ju.get)(this.content,"resources",{}),n=(0,ju.get)(this.content,"components",{}),u={},i={};(0,ju.each)(r,(a,c)=>{(0,ju.set)(u,`${c}`,a||{})}),(0,ju.each)(n,(a,c)=>{(0,ju.set)(i,`${c}.props`,a.props||{})});let o=t.projectName,s=Object.assign(Object.assign({},this.getCommonMagic()),{resources:u,components:i,that:Object.assign({name:o,access:t.access,component:t.component},u[o])});return(0,ju.set)(s,"that.props",(0,ek.default)(u[o].props,s,this.options)),Xgt(`getMagicProps: ${JSON.stringify(s)}`),s}getSteps(){return Kgt(this,void 0,void 0,function*(){let t=this.getAccess();this.credential=yield(0,jdn.getCredential)(t,this.options.logger);let r=this.content,{resources:n}=r,u=Rdn(r,["resources"]);this.content=Object.assign(Object.assign({},this.content),(0,ek.default)(u,this.getCommonMagic(),this.options));let i=[],o=[];for(let c in n){let l=n[c],p=dE()((0,ju.get)(l,"component"),this.getCommonMagic()),h=(0,ju.get)(this.content.template,(0,ju.get)(l,"extend.name"),{});h=(0,ek.default)((0,ju.omit)(h,(0,ju.get)(l,"extend.ignore",[])),this.getCommonMagic(),this.options);let d=Ygt(!0,{},h,l.props),m=(0,ju.cloneDeep)(this.options.environment);m&&!(0,ju.isEmpty)((0,ju.get)(m,"overlays.components"))&&(m.overlays.components=(0,ju.pickBy)(m.overlays.components,(y,E)=>E===p)),m&&!(0,ju.isEmpty)((0,ju.get)(m,"overlays.resources"))&&(m.overlays.resources=(0,ju.pickBy)(m.overlays.resources,(y,E)=>E===c));let v=(0,ek.default)(m,this.getEnvMagic({source:d}),this.options),D=(0,ju.get)(v,"infraStack.region")?{region:(0,ju.get)(v,"infraStack.region")}:{};Xgt(`real environment: ${JSON.stringify(v)}`),(0,ju.set)(l,"props",Ygt(!0,{},d,(0,ju.get)(v,`overlays.components.${p}`,{}),(0,ju.get)(v,`overlays.resources.${c}`,{}),D));let g=(0,ek.default)(l,this.getMagicProps({projectName:c,access:t,component:p}),this.options);this.content=Object.assign(Object.assign({},this.content),{access:t,resources:Object.assign(Object.assign({},this.content.resources),{[c]:g})}),i.push(Object.assign(Object.assign({},g),{projectName:c,component:p,access:t,credential:this.credential})),o.push(Object.assign(Object.assign({},l),{projectName:c,component:p,access:t,credential:this.credential}))}let s=this.options.projectName?[(0,ju.find)(i,c=>c.projectName===this.options.projectName)]:i,a=this.options.projectName?[(0,ju.find)(o,c=>c.projectName===this.options.projectName)]:o;return{steps:s,content:this.content,originSteps:a,allSteps:i}})}getAccess(){if(this.options.access)return this.options.access;let t=(0,ju.get)(this.options,"environment.access");if(t)return t;if(this.content.access)return this.content.access}};G5.default=HDe});var $J=I(ho=>{"use strict";var Ldn=ho&&ho.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var u=Object.getOwnPropertyDescriptor(t,r);(!u||("get"in u?!t.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,u)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Ndn=ho&&ho.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),qdn=ho&&ho.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Ldn(t,e,r);return Ndn(t,e),t},GJ=ho&&ho.__awaiter||function(e,t,r,n){function u(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function s(l){try{c(n.next(l))}catch(f){o(f)}}function a(l){try{c(n.throw(l))}catch(f){o(f)}}function c(l){l.done?i(l.value):u(l.value).then(s,a)}c((n=n.apply(e,t||[])).next())})},tk=ho&&ho.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var u=0,n=Object.getOwnPropertySymbols(e);u<n.length;u++)t.indexOf(n[u])<0&&Object.prototype.propertyIsEnumerable.call(e,n[u])&&(r[n[u]]=e[n[u]]);return r},H8=ho&&ho.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ho,"__esModule",{value:!0});ho.ParseSpecForContent=ho.getCredential=ho.isExtendMode=ho.getDefaultYamlPath=void 0;var jd=H8(require("path")),Nf=qdn(dr()),Mdn=H8(Rl()),Eu=ur(),rk=dr(),Udn=H8(Zs());function $dn(){let e=Nf.getYamlPath("s");if(e)return jd.default.resolve(e);throw new Nf.DevsError("the s.yaml/s.yml file was not found.",{tips:"Please check if the s.yaml/s.yml file exists, you can also specify it with -t.",trackerType:rk.ETrackerType.parseException})}ho.getDefaultYamlPath=$dn;var zdn=(e,t)=>typeof e!="string"?!1:(Nf.getYamlContent(Nf.getAbsolutePath(e,t)),!0);ho.isExtendMode=zdn;function Gdn(e,t){return GJ(this,void 0,void 0,function*(){try{let n=yield new Mdn.default({logger:t}).get(e);return(0,Eu.get)(n,"credential",{})}catch{return{}}})}ho.getCredential=Gdn;var Qgt=H8(ui()),YDe=H8(jJ()),XDe=LJ(),Wdn=H8(WDe()),JDe=H8(KDe()),_i=ur(),JE=EW(),V8=pT(),Zgt=H8(require("assert")),zJ=dr(),e6t=UJ(),QDe=class{constructor(t="",r={}){this.options=r,this.yaml={},this.record={},this.options.argv=this.options.argv||process.argv.slice(2),this.options.logger=this.options.logger||console,this.yaml.path="",this.yaml.content=Udn.default.load(t)||{},this.options.isPreview=this.options.isPreview||!1}doYamlinit(){return GJ(this,void 0,void 0,function*(){yield this.doExtend(),this.doEnvironment(),this.yaml.access=(0,Eu.get)(this.yaml.content,"access");let t=this.yaml.use3x?"resources":"services",r=(0,Eu.get)(this.yaml.content,t,{});this.yaml.projectNames=(0,_i.keys)((0,Eu.get)(this.yaml.content,t,{})),this.yaml.vars=(0,Eu.get)(this.yaml.content,"vars",{}),this.yaml.flow=(0,Eu.get)(this.yaml.content,"flow",{}),this.yaml.useFlow=!1,this.yaml.appName=(0,Eu.get)(this.yaml.content,"name");for(let n of this.yaml.projectNames){let u=(0,Eu.get)(r,`${n}.props.code`);if(u&&(0,_i.isString)(u)){let i=Nf.getAbsolutePath((0,Eu.get)(r,`${n}.props.code`,""));(0,XDe.expand)(YDe.default.config({path:jd.default.join(i,".env")}))}}(0,XDe.expand)(YDe.default.config({path:jd.default.join(jd.default.dirname(this.yaml.path),".env")}))})}doExtend(){return GJ(this,void 0,void 0,function*(){if(this.yaml.extend=(0,Eu.get)(this.yaml.content,"extend"),this.yaml.useExtend=(0,ho.isExtendMode)(this.yaml.extend,jd.default.dirname(this.yaml.path)),this.yaml.useExtend){let t=Nf.getAbsolutePath(this.yaml.extend,jd.default.dirname(this.yaml.path));(0,XDe.expand)(YDe.default.config({path:jd.default.join(t,".env")}));let r=Nf.getYamlContent(t);if(this.yaml.use3x=String((0,Eu.get)(this.yaml.content,"edition",(0,Eu.get)(r,"edition")))==="3.0.0",!this.yaml.use3x)return;let{resources:n}=r,u=tk(r,["resources"]),i=this.yaml.content,{resources:o}=i,s=tk(i,["resources"]),a=e6t(!0,{},u,s),c=yield new JDe.default(Object.assign(Object.assign({},r),a),this.getParsedContentOptions(t)).start(),l=yield new JDe.default(Object.assign(Object.assign({},this.yaml.content),a),this.getParsedContentOptions(this.yaml.path)).start();this.yaml.content=e6t(!0,{},(0,Eu.get)(c,"content"),(0,Eu.get)(l,"content"));return}this.yaml.use3x=String((0,Eu.get)(this.yaml.content,"edition"))==="3.0.0"})}doEnvironment(){if(!this.yaml.use3x)return;let t=this.record.env?this.doEnvWithSpecify():this.doEnvWithNotSpecify();if((0,_i.isEmpty)(t))return;let{project:r,environment:n}=t;(0,_i.set)(n,"overlays.resources.region",(0,Eu.get)(n,"region")),(0,_i.set)(n,"__project",r),this.yaml.environment=n}doEnvWithNotSpecify(){if(this.yaml.useExtend&&(0,_i.has)(this.yaml.content,V8.ENVIRONMENT_KEY))throw new zJ.DevsError("Environment and extend is conflict",{trackerType:rk.ETrackerType.parseException});if(!Qgt.default.existsSync(V8.ENVIRONMENT_FILE_PATH))return{};let t=process.env.ALIYUN_DEVS_REMOTE_PROJECT_NAME,r=t||(0,Eu.get)(this.yaml.content,"name"),n=require(V8.ENVIRONMENT_FILE_PATH),u=(0,Eu.get)((0,_i.find)(n,{project:r}),"default");if((0,_i.isEmpty)(u))return{};let i=Nf.getAbsolutePath((0,Eu.get)(this.yaml.content,V8.ENVIRONMENT_KEY)||"env.yaml",jd.default.dirname(this.yaml.path)),o=Nf.getYamlContent(i);if((0,_i.isEmpty)(o))return this.options.logger.warnOnce(`Environment file [${i}] is not found, run without environment.`),{};let{environments:s}=o,a=(0,_i.find)(s,c=>c.name===u);return(0,_i.isEmpty)(a)?(this.options.logger.warnOnce(`Default env [${u}] is not found, run without environment.`),{}):{project:r,environment:a}}doEnvWithSpecify(){if(this.yaml.useExtend)throw new zJ.DevsError("Environment and extend is conflict",{trackerType:rk.ETrackerType.parseException});let t=Nf.getAbsolutePath((0,Eu.get)(this.yaml.content,V8.ENVIRONMENT_KEY,V8.ENVIRONMENT_FILE_NAME),jd.default.dirname(this.yaml.path)),r=Nf.getYamlContent(t);if((0,_i.isEmpty)(r))return this.options.logger.warnOnce(`Environment file [${t}] is not found, run without environment.`),{};let{environments:n}=r,u=process.env.ALIYUN_DEVS_REMOTE_PROJECT_NAME,i=u||(0,Eu.get)(this.yaml.content,"name"),o=(0,_i.find)(n,s=>s.name===this.record.env);return(0,_i.isEmpty)(o)?(this.options.logger.warnOnce(`Env [${this.record.env}] was not found, run without environment.`),{}):{project:i,environment:o}}getParsedContentOptions(t){return{logger:this.options.logger,basePath:t,projectName:this.record.projectName,access:this.record.access,environment:this.yaml.environment,isPreview:this.options.isPreview}}start(){return GJ(this,void 0,void 0,function*(){if(this.parseArgv(),yield this.doYamlinit(),this.parseArgv(),!this.yaml.use3x)return this.v1();let{steps:t,content:r,originSteps:n,allSteps:u}=yield new JDe.default(this.yaml.content,this.getParsedContentOptions(this.yaml.path)).start(),i=(0,Eu.get)(this.yaml.content,"services",{});if((0,_i.isEmpty)(t)&&!(0,_i.isEmpty)(i))throw this.options.logger.tips("Check https://docs.serverless-devs.com/user-guide/spec/ for more details. Use the 's cli fc3 s2tos3' command for automatic YAML transformation."),new zJ.DevsError("Keyword 'services' has been replaced by 'resources' in 3.0.0 YAML.",{trackerType:rk.ETrackerType.parseException});this.yaml.content=r,this.yaml.vars=(0,Eu.get)(this.yaml.content,"vars",{});let o=(0,Eu.get)(this.yaml.content,"actions",{});return this.yaml.actions=this.parseActions(o),Object.assign({steps:this.record.projectName?t:this.doFlow(t,n),yaml:this.yaml,allSteps:u},this.record)})}v1(){let t=[],r=(0,Eu.get)(this.yaml.content,"services",{});for(let n in r){let u=r[n];t.push(Object.assign(Object.assign({},u),{projectName:n}))}return Object.assign({steps:this.record.projectName?(0,_i.filter)(t,n=>n.projectName===this.record.projectName):t,yaml:this.yaml},this.record)}parseArgv(){let t=Nf.parseArgv(this.options.argv),{_:r}=t;if(this.record.access=(0,Eu.get)(t,"access"),this.record.version=(0,Eu.get)(t,"version"),this.record.help=(0,Eu.get)(t,"help"),this.record.output=(0,Eu.get)(t,"output"),this.record.skipActions=(0,Eu.get)(t,"skip-actions"),this.record.debug=(0,Eu.get)(t,"debug"),this.record.env=(0,Eu.get)(t,"env"),(0,_i.includes)(this.yaml.projectNames,r[0])){this.record.projectName=r[0],this.record.command=r[1];return}this.record.command=r[0]}doFlow(t,r){let n=[],u=(0,_i.find)(this.yaml.flow,(f,p)=>this.matchFlow(p)),i=new Wdn.default(r).start(),{steps:o,dependencies:s,useOrder:a}=i.sort(t);if(!u)return o;let c={},l=(f=[],p)=>{(0,Zgt.default)((0,_i.isArray)(f),`flow ${this.record.command} data format is invalid.`);for(let h of f){let d=(0,_i.find)(t,m=>m.projectName===h);(0,Zgt.default)(d,`Resource ${h} is not found. Please check the content of flow.`),n.push(Object.assign(Object.assign({},d),{flowId:p})),c[d.projectName]=p}};if((0,_i.each)(u,l),this.yaml.useFlow=!0,a)for(let f in s){let p=s[f];for(let h in p)if(c[h]>=c[f])throw new Error(`flow is invalid, ${h} must be executed before ${f}`)}return n}matchFlow(t){return V8.REGX.test(t)?dE()(t,{command:this.record.command}):t===this.record.command}parseActions(t={},r=JE.IActionLevel.GLOBAL){let n=[];for(let u in t){let i=t[u];if(!(0,_i.isArray)(i))throw new zJ.DevsError(`${r} action ${u} is invalid, it must be array`,{trackerType:rk.ETrackerType.parseException});let o=this.matchAction(u);o.validate&&n.push(...(0,_i.map)(i,s=>{if(s[JE.IActionType.RUN]){let{run:a}=s,c=tk(s,["run"]);return Object.assign(Object.assign({},c),{value:a,path:Nf.getAbsolutePath((0,Eu.get)(s,"path","./"),jd.default.dirname(this.yaml.path)),actionType:JE.IActionType.RUN,hookType:o.type,level:r,projectName:this.record.projectName})}if(s[JE.IActionType.PLUGIN]){let{plugin:a}=s,c=tk(s,["plugin"]),l=Nf.getAbsolutePath(a,jd.default.dirname(this.yaml.path));return Object.assign(Object.assign({},c),{value:Qgt.default.existsSync(l)?l:a,actionType:JE.IActionType.PLUGIN,hookType:o.type,level:r,projectName:this.record.projectName})}if(s[JE.IActionType.COMPONENT]){let{component:a}=s,c=tk(s,["component"]);return Object.assign(Object.assign({},c),{value:a,actionType:JE.IActionType.COMPONENT,hookType:o.type,level:r,projectName:this.record.projectName})}}))}return n}matchAction(t){if(V8.REGX.test(t)){let o=dE()(t,{command:this.record.command}),[s,a]=(0,_i.split)(o,"-");return{validate:a==="true",type:s}}let[n,u]=(0,_i.split)(t,"-");return{validate:u===this.record.command,type:n}}};ho.ParseSpecForContent=QDe});var lh=I(mo=>{"use strict";var u6t=mo&&mo.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var u=Object.getOwnPropertyDescriptor(t,r);(!u||("get"in u?!t.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,u)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Vdn=mo&&mo.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i6t=mo&&mo.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&u6t(t,e,r)},Hdn=mo&&mo.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&u6t(t,e,r);return Vdn(t,e),t},ZDe=mo&&mo.__awaiter||function(e,t,r,n){function u(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function s(l){try{c(n.next(l))}catch(f){o(f)}}function a(l){try{c(n.throw(l))}catch(f){o(f)}}function c(l){l.done?i(l.value):u(l.value).then(s,a)}c((n=n.apply(e,t||[])).next())})},nk=mo&&mo.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var u=0,n=Object.getOwnPropertySymbols(e);u<n.length;u++)t.indexOf(n[u])<0&&Object.prototype.propertyIsEnumerable.call(e,n[u])&&(r[n[u]]=e[n[u]]);return r},ZE=mo&&mo.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mo,"__esModule",{value:!0});mo.ParseSpecForContent=mo.getInputs=void 0;var Kdn=bme();Object.defineProperty(mo,"getInputs",{enumerable:!0,get:function(){return ZE(Kdn).default}});i6t(EW(),mo);i6t(pT(),mo);var Ydn=$J();Object.defineProperty(mo,"ParseSpecForContent",{enumerable:!0,get:function(){return Ydn.ParseSpecForContent}});var ch=Hdn(dr()),eEe=ZE(ui()),O2=ZE(require("path")),tEe=ZE(jJ()),rEe=LJ(),t6t=$J(),Xdn=ZE(WDe()),nEe=ZE(KDe()),jr=ur(),QE=EW(),K8=pT(),r6t=ZE(require("assert")),Y8=dr(),n6t=UJ(),qf=Id()("serverless-devs:parse-spec"),uEe=class{constructor(t="",r={}){this.options=r,this.yaml={},this.record={},this.options.argv=this.options.argv||process.argv.slice(2),this.options.logger=this.options.logger||console,this.options.isPreview=this.options.isPreview||!1,this.init(t),qf(`yaml path: ${this.yaml.path}`),qf(`argv: ${JSON.stringify(this.options.argv)}`)}init(t){if((0,jr.isEmpty)(t))return this.yaml.path=(0,t6t.getDefaultYamlPath)();if(eEe.default.existsSync(t))return this.yaml.path=ch.getAbsolutePath(t);throw new Error(`The specified template file does not exist: ${t}`)}doYamlinit(){return ZDe(this,void 0,void 0,function*(){yield this.doExtend(),this.doEnvironment(),this.yaml.access=(0,jr.get)(this.yaml.content,"access");let t=this.yaml.use3x?"resources":"services",r=(0,jr.get)(this.yaml.content,t,{});this.yaml.projectNames=(0,jr.keys)((0,jr.get)(this.yaml.content,t,{})),this.yaml.vars=(0,jr.get)(this.yaml.content,"vars",{}),this.yaml.flow=(0,jr.get)(this.yaml.content,"flow",{}),this.yaml.useFlow=!1,this.yaml.appName=(0,jr.get)(this.yaml.content,"name");for(let n of this.yaml.projectNames){let u=(0,jr.get)(r,`${n}.props.code`);if(u&&(0,jr.isString)(u)){let i=ch.getAbsolutePath((0,jr.get)(r,`${n}.props.code`,""));(0,rEe.expand)(tEe.default.config({path:O2.default.join(i,".env"),override:!0}))}}(0,rEe.expand)(tEe.default.config({path:O2.default.join(O2.default.dirname(this.yaml.path),".env"),override:!0}))})}doExtend(){return ZDe(this,void 0,void 0,function*(){if(this.yaml.content=ch.getYamlContent(this.yaml.path),this.yaml.extend=(0,jr.get)(this.yaml.content,"extend"),this.yaml.useExtend=(0,t6t.isExtendMode)(this.yaml.extend,O2.default.dirname(this.yaml.path)),this.yaml.useExtend){let t=ch.getAbsolutePath(this.yaml.extend,O2.default.dirname(this.yaml.path));(0,rEe.expand)(tEe.default.config({path:O2.default.join(t,".env")}));let r=ch.getYamlContent(t);if(this.yaml.use3x=String((0,jr.get)(this.yaml.content,"edition",(0,jr.get)(r,"edition")))==="3.0.0",!this.yaml.use3x)return;let{resources:n}=r,u=nk(r,["resources"]),i=this.yaml.content,{resources:o}=i,s=nk(i,["resources"]),a=n6t(!0,{},u,s),c=yield new nEe.default(Object.assign(Object.assign({},r),a),this.getParsedContentOptions(t)).start(),l=yield new nEe.default(Object.assign(Object.assign({},this.yaml.content),a),this.getParsedContentOptions(this.yaml.path)).start();this.yaml.content=n6t(!0,{},(0,jr.get)(c,"content"),(0,jr.get)(l,"content"));return}this.yaml.use3x=String((0,jr.get)(this.yaml.content,"edition"))==="3.0.0"})}doEnvironment(){if(!this.yaml.use3x)return;let t=this.record.env?this.doEnvWithSpecify():this.doEnvWithNotSpecify();if((0,jr.isEmpty)(t))return;let{project:r,environment:n}=t;qf(`use environment: ${JSON.stringify(n)}`),(0,jr.set)(n,"overlays.resources.region",(0,jr.get)(n,"region")),(0,jr.set)(n,"__project",r),this.yaml.environment=n}doEnvWithNotSpecify(){if(this.yaml.useExtend&&(0,jr.has)(this.yaml.content,K8.ENVIRONMENT_KEY))throw new Y8.DevsError("Environment and extend is conflict",{trackerType:Y8.ETrackerType.parseException});if(!eEe.default.existsSync(K8.ENVIRONMENT_FILE_PATH))return{};let t=process.env.ALIYUN_DEVS_REMOTE_PROJECT_NAME,r=t||(0,jr.get)(this.yaml.content,"name"),n=require(K8.ENVIRONMENT_FILE_PATH),u=(0,jr.get)((0,jr.find)(n,{project:r}),"default");if((0,jr.isEmpty)(u))return{};let i=ch.getAbsolutePath((0,jr.get)(this.yaml.content,K8.ENVIRONMENT_KEY)||"env.yaml",O2.default.dirname(this.yaml.path)),o=ch.getYamlContent(i);if((0,jr.isEmpty)(o))return this.options.logger.warnOnce(`Environment file [${i}] is not found, run without environment.`),{};let{environments:s}=o,a=(0,jr.find)(s,c=>c.name===u);return(0,jr.isEmpty)(a)?(this.options.logger.warnOnce(`Default env [${u}] is not found, run without environment.`),{}):{project:r,environment:a}}doEnvWithSpecify(){if(this.yaml.useExtend)throw new Y8.DevsError("Environment and extend is conflict",{trackerType:Y8.ETrackerType.parseException});let t=ch.getAbsolutePath((0,jr.get)(this.yaml.content,K8.ENVIRONMENT_KEY,K8.ENVIRONMENT_FILE_NAME),O2.default.dirname(this.yaml.path)),r=ch.getYamlContent(t);if((0,jr.isEmpty)(r))return this.options.logger.warnOnce(`Environment file [${t}] is not found, run without environment.`),{};qf(`environment content: ${JSON.stringify(r)}`);let{environments:n}=r,u=process.env.ALIYUN_DEVS_REMOTE_PROJECT_NAME,i=u||(0,jr.get)(this.yaml.content,"name"),o=(0,jr.find)(n,s=>s.name===this.record.env);return(0,jr.isEmpty)(o)?(this.options.logger.warnOnce(`Env [${this.record.env}] was not found, run without environment.`),{}):{project:i,environment:o}}getParsedContentOptions(t){return{logger:this.options.logger,basePath:t,projectName:this.record.projectName,access:this.record.access,environment:this.yaml.environment,isPreview:this.options.isPreview}}start(){return ZDe(this,void 0,void 0,function*(){if(qf("parse start"),this.parseArgv(),yield this.doYamlinit(),this.parseArgv(),!this.yaml.use3x)return this.v1();let{steps:t,content:r,originSteps:n,allSteps:u}=yield new nEe.default(this.yaml.content,this.getParsedContentOptions(this.yaml.path)).start(),i=(0,jr.get)(this.yaml.content,"services",{});if((0,jr.isEmpty)(t)&&!(0,jr.isEmpty)(i))throw this.options.logger.tips("Check https://docs.serverless-devs.com/user-guide/spec/ for more details. Use the 's cli fc3 s2tos3' command for automatic YAML transformation."),new Y8.DevsError("Keyword 'services' has been replaced by 'resources' in 3.0.0 YAML.",{trackerType:Y8.ETrackerType.parseException});this.yaml.content=r,this.yaml.vars=(0,jr.get)(this.yaml.content,"vars",{});let o=(0,jr.get)(this.yaml.content,"actions",{});this.yaml.actions=this.parseActions(o);let s=Object.assign({steps:this.record.projectName?t:this.doFlow(t,n),yaml:this.yaml,allSteps:u},this.record);return qf(`parse result: ${JSON.stringify(s)}`),qf("parse end"),s})}v1(){let t=[],r=(0,jr.get)(this.yaml.content,"services",{});for(let n in r){let u=r[n];t.push(Object.assign(Object.assign({},u),{projectName:n}))}return Object.assign({steps:this.record.projectName?(0,jr.filter)(t,n=>n.projectName===this.record.projectName):t,yaml:this.yaml},this.record)}parseArgv(){let t=ch.parseArgv(this.options.argv);qf(`parse argv: ${JSON.stringify(t)}`);let{_:r}=t;if(this.record.access=(0,jr.get)(t,"access"),this.record.version=(0,jr.get)(t,"version"),this.record.help=(0,jr.get)(t,"help"),this.record.output=(0,jr.get)(t,"output"),this.record.skipActions=(0,jr.get)(t,"skip-actions"),this.record.debug=(0,jr.get)(t,"debug"),this.record.env=(0,jr.get)(t,"env"),this.record.baselineTemplate=(0,jr.get)(t,"baseline-template"),(0,jr.includes)(this.yaml.projectNames,r[0])){this.record.projectName=r[0],this.record.command=r[1];return}this.record.command=r[0]}doFlow(t,r){let n=[],u=(0,jr.find)(this.yaml.flow,(f,p)=>this.matchFlow(p)),i=new Xdn.default(r).start(),{steps:o,dependencies:s,useOrder:a}=i.sort(t);if(!u)return o;qf(`find flow: ${JSON.stringify(u)}`);let c={},l=(f=[],p)=>{(0,r6t.default)((0,jr.isArray)(f),`flow ${this.record.command} data format is invalid.`);for(let h of f){let d=(0,jr.find)(t,m=>m.projectName===h);(0,r6t.default)(d,`Resource ${h} is not found. Please check the content of flow.`),n.push(Object.assign(Object.assign({},d),{flowId:p})),c[d.projectName]=p}};if((0,jr.each)(u,l),qf(`flow steps: ${JSON.stringify(n)}`),this.yaml.useFlow=!0,qf(`flow projectOrder: ${JSON.stringify(c)}`),a){qf(`project dependencies: ${JSON.stringify(s)}`);for(let f in s){let p=s[f];for(let h in p)if(c[h]>=c[f])throw new Error(`flow is invalid, ${h} must be executed before ${f}`)}}return n}matchFlow(t){return K8.REGX.test(t)?dE()(t,{command:this.record.command}):t===this.record.command}parseActions(t={},r=QE.IActionLevel.GLOBAL){let n=[];for(let u in t){let i=t[u];if(!(0,jr.isArray)(i))throw new Y8.DevsError(`${r} action ${u} is invalid, it must be array`,{trackerType:Y8.ETrackerType.parseException});let o=this.matchAction(u);qf(`action: ${u}, useAction: ${JSON.stringify(o)}`),o.validate&&n.push(...(0,jr.map)(i,s=>{if(s[QE.IActionType.RUN]){let{run:a}=s,c=nk(s,["run"]);return Object.assign(Object.assign({},c),{value:a,path:ch.getAbsolutePath((0,jr.get)(s,"path","./"),O2.default.dirname(this.yaml.path)),actionType:QE.IActionType.RUN,hookType:o.type,level:r,projectName:this.record.projectName})}if(s[QE.IActionType.PLUGIN]){let{plugin:a}=s,c=nk(s,["plugin"]),l=ch.getAbsolutePath(a,O2.default.dirname(this.yaml.path));return Object.assign(Object.assign({},c),{value:eEe.default.existsSync(l)?l:a,actionType:QE.IActionType.PLUGIN,hookType:o.type,level:r,projectName:this.record.projectName})}if(s[QE.IActionType.COMPONENT]){let{component:a}=s,c=nk(s,["component"]);return Object.assign(Object.assign({},c),{value:a,actionType:QE.IActionType.COMPONENT,hookType:o.type,level:r,projectName:this.record.projectName})}}))}return qf(`parse actions: ${JSON.stringify(n)}`),n}matchAction(t){if(K8.REGX.test(t)){let o=dE()(t,{command:this.record.command}),[s,a]=(0,jr.split)(o,"-");return{validate:a==="true",type:s}}let[n,u]=(0,jr.split)(t,"-");return{validate:u===this.record.command,type:n}}};mo.default=uEe});var uk=I((MLu,c6t)=>{var Jdn=require("path").relative;c6t.exports=r1n;var Qdn=process.cwd();function s6t(e,t){for(var r=e.split(/[ ,]+/),n=String(t).toLowerCase(),u=0;u<r.length;u++){var i=r[u];if(i&&(i==="*"||i.toLowerCase()===n))return!0}return!1}function Zdn(e,t,r){var n=Object.getOwnPropertyDescriptor(e,t),u=n.value;return n.get=function(){return u},n.writable&&(n.set=function(o){return u=o}),delete n.value,delete n.writable,Object.defineProperty(e,t,n),n}function e1n(e){for(var t="",r=0;r<e;r++)t+=", arg"+r;return t.substr(2)}function t1n(e){var t=this.name+": "+this.namespace;this.message&&(t+=" deprecated "+this.message);for(var r=0;r<e.length;r++)t+=`
|
|
212
212
|
at `+e[r].toString();return t}function r1n(e){if(!e)throw new TypeError("argument namespace is required");var t=VJ(),r=Dx(t[1]),n=r[0];function u(i){WJ.call(u,i)}return u._file=n,u._ignored=u1n(e),u._namespace=e,u._traced=i1n(e),u._warned=Object.create(null),u.function=c1n,u.property=l1n,u}function n1n(e,t){var r=typeof e.listenerCount!="function"?e.listeners(t).length:e.listenerCount(t);return r>0}function u1n(e){if(process.noDeprecation)return!0;var t=process.env.NO_DEPRECATION||"";return s6t(t,e)}function i1n(e){if(process.traceDeprecation)return!0;var t=process.env.TRACE_DEPRECATION||"";return s6t(t,e)}function WJ(e,t){var r=n1n(process,"deprecation");if(!(!r&&this._ignored)){var n,u,i,o,s=0,a=!1,c=VJ(),l=this._file;for(t?(o=t,i=Dx(c[1]),i.name=o.name,l=i[0]):(s=2,o=Dx(c[s]),i=o);s<c.length;s++)if(n=Dx(c[s]),u=n[0],u===l)a=!0;else if(u===this._file)l=this._file;else if(a)break;var f=n?o.join(":")+"__"+n.join(":"):void 0;if(!(f!==void 0&&f in this._warned)){this._warned[f]=!0;var p=e;if(p||(p=i===o||!i.name?o6t(o):o6t(i)),r){var h=a6t(this._namespace,p,c.slice(s));process.emit("deprecation",h);return}var d=process.stderr.isTTY?s1n:o1n,m=d.call(this,p,n,c.slice(s));process.stderr.write(m+`
|
|
213
213
|
`,"utf8")}}}function Dx(e){var t=e.getFileName()||"<anonymous>",r=e.getLineNumber(),n=e.getColumnNumber();e.isEval()&&(t=e.getEvalOrigin()+", "+t);var u=[t,r,n];return u.callSite=e,u.name=e.getFunctionName(),u}function o6t(e){var t=e.callSite,r=e.name;r||(r="<anonymous@"+iEe(e)+">");var n=t.getThis(),u=n&&t.getTypeName();return u==="Object"&&(u=void 0),u==="Function"&&(u=n.name||u),u&&t.getMethodName()?u+"."+r:r}function o1n(e,t,r){var n=new Date().toUTCString(),u=n+" "+this._namespace+" deprecated "+e;if(this._traced){for(var i=0;i<r.length;i++)u+=`
|
|
214
214
|
at `+r[i].toString();return u}return t&&(u+=" at "+iEe(t)),u}function s1n(e,t,r){var n="\x1B[36;1m"+this._namespace+"\x1B[22;39m \x1B[33;1mdeprecated\x1B[22;39m \x1B[0m"+e+"\x1B[39m";if(this._traced){for(var u=0;u<r.length;u++)n+=`
|
|
@@ -336,7 +336,7 @@ ${" ".repeat(t)}`):"").join(`
|
|
|
336
336
|
${Ywt("ERROR:")}`),Et.write(`
|
|
337
337
|
${t}
|
|
338
338
|
`),r&&Et.write(`${ht.gray(r)}
|
|
339
|
-
`)}},VR=Bxe});var HR=I((gWu,hBn)=>{hBn.exports={name:"@serverless-devs/s3",version:"3.1.11-
|
|
339
|
+
`)}},VR=Bxe});var HR=I((gWu,hBn)=>{hBn.exports={name:"@serverless-devs/s3",version:"3.1.11-0f6acfa8",description:"Serverless devs tool, serverless developer tool, supports Alibaba cloud, AWS, azure, baidu cloud, Huawei cloud, Google cloud and Tencent cloud.",homepage:"https://www.serverless-devs.com",keywords:["serverless","alibaba","tencent","azure","baidu","huawei","google","function","faas","serverless-devs"],publishConfig:{access:"public",registry:"https://registry.npmjs.org"},license:"Apache 2.0",repository:{type:"git",url:"https://github.com/Serverless-Devs/Serverless-Devs"},bugs:{url:"https://github.com/Serverless-Devs/Serverless-Devs/issues"},scripts:{start:"npm run watch",test:"jest --testTimeout 10000","test:watch":"jest --testTimeout 10000 --watchAll",format:"prettier --write src/ __tests__/**/*.test.ts",watch:"npm run build -- --watch",prebuild:"cross-os prebuild",build:"node ./scripts/build.js","build:ci":"node ./scripts/build.js",pkg:"pkg . --out-path releases",prepublishOnly:"npm run build",beta:"npm publish --tag=beta",canary:"npm publish --tag=canary",pub:"npm publish",eslint:"eslint . --ext .ts,.tsx","eslint:fix":"eslint . --ext .ts,.tsx --fix"},"cross-os":{prebuild:{darwin:"rm -rf node_modules && npm install --production false",linux:"rm -rf node_modules && npm install --production false",win32:"rmdir /s /q node_modules && npm install --production false"}},pkg:{scripts:["./lib/daemon/**/*.js"]},main:"./lib/index.js",bin:{s:"bin/s"},engines:{node:">=14.14.0"},devDependencies:{"@serverless-devs/core":"^0.1.67-beta.1","@serverless-devs/credential":"^0.0.10","@serverless-devs/engine":"^0.1.6-beta.8","@serverless-devs/load-application":"^0.0.16-beta.1","@serverless-devs/load-component":"^0.0.9","@serverless-devs/logger":"^0.0.6","@serverless-devs/parse-spec":"^0.0.30-beta.2","@serverless-devs/registry":"^0.0.12-beta.6","@serverless-devs/secret":"^0.0.3","@serverless-devs/utils":"^0.0.18","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","@types/jest":"^29.5.8","@types/js-yaml":"^4.0.9","@types/lodash":"^4.14.201","@types/node":"^20.9.1","@types/semver":"^7.5.5","@typescript-eslint/eslint-plugin":"^7.3.1","@typescript-eslint/parser":"^7.3.1",ajv:"^8.17.1",axios:"^1.6.2",boxen:"^7.1.1",chalk:"^5.3.0",commander:"^11.1.0","cross-os":"^1.5.0",dotenv:"^16.3.1","dotenv-expand":"^10.0.0",esbuild:"^0.19.12",eslint:"^8.57.0","eslint-plugin-prettier":"^5.1.3","fs-extra":"^11.1.1","global-agent":"^3.0.0",inquirer:"^9.2.12","inquirer-autocomplete-prompt":"^3.0.1",jest:"^29.7.0","js-yaml":"^4.1.0","latest-version":"^7.0.0",leven:"^4.0.0",lodash:"^4.17.21","@yao-pkg/pkg":"^6.3.2",prettier:"^3.1.0",prettyjson:"^1.2.5",rimraf:"^5.0.5",semver:"^7.5.4","semver-diff":"^4.0.0","strip-ansi":"^7.1.0","table-layout":"^3.0.2","ts-jest":"^29.1.1","ts-node":"^10.9.1",typescript:"^5.2.2"},"lint-staged":{"**/*.{js,jsx,ts}":"f2elint exec eslint"}}});var X0,KR,YR,nSt,w3,Tee,eSt,dBn,tSt,mBn,rSt,Kd,bv=bt(()=>{X0=nt(dr());Pn();hr();KR=nt(require("path")),YR=nt(ui());sn();nSt=nt(dr()),w3=nt(ur());Dv();Zwt();Tee=nt(dr()),eSt=HR(),dBn=async(e,t={})=>{Et.unsilent();let{silent:r}=(0,nSt.parseArgv)(process.argv.slice(2)),n=KR.default.join((0,X0.getRootHome)(),"logs",process.env.serverless_devs_traceid,"error.json");YR.default.ensureFileSync(n),YR.default.writeJSONSync(n,[],{spaces:2});let u=1;if((0,w3.isArray)(e))for(let i of e){tSt(i,t);let o=(0,w3.get)(i,"exitCode");o&&(u=o)}else{tSt(e,t);let i=(0,w3.get)(e,"exitCode");i&&(u=i)}Tee.getGlobalConfig("log")!=="disable"&&(Et.write(" "),Et.write(ht.gray(`A complete log of this run can be found in: ${ht.underline(KR.default.join(Tee.getRootHome(),"logs",process.env.serverless_devs_traceid))}`))),Et.write(" "),Et.write(ht.gray(wxe([{key:"Env:",value:`${eSt.name}: ${eSt.version}, ${process.platform}-${process.arch} node-${process.version}`},{key:"Logs:",value:ht.underline(KR.default.join((0,X0.getRootHome)(),"logs",process.env.serverless_devs_traceid))},{key:"Feedback:",value:ht.cyan.underline("https://github.com/Serverless-Devs/Serverless-Devs/issues")}]))),r&&Et.silent(),process.exitCode=u},tSt=(e,t={})=>{el("report.js",{argv:process.argv.slice(2),userAgent:(0,X0.getUserAgent)(),...t,type:(0,w3.get)(e,"trackerType"),message:e.message}),mBn(e),Et.write(" ");let r=e;if(r.CODE===X0.DevsError.CODE){let i=r.prefix?[`${ht.red("\u2716")} ${r.prefix}`,"===================="]:[];i.push(ht.red("Error Message:"),ht.red((0,X0.isDebugMode)()?r.stack:r.message)),r.tips&&i.push(`
|
|
340
340
|
\u{1F37C} Tips`,"====================",ht.yellow(`${r.tips}`)),Et.write(i.join(`
|
|
341
341
|
`)),rSt(r.stack);return}let n=e,u=[ht.red("Error Message:"),ht.red((0,X0.isDebugMode)()?n.stack:n.message)];Et.write(u.join(`
|
|
342
342
|
`)),rSt(n.stack)},mBn=e=>{let t=u=>{let i=(0,w3.get)(u,"data");if(i)return i;let o=u;return o.CODE===X0.DevsError.CODE?{prefix:o.prefix,message:o.message,exitCode:o.exitCode,tips:o.tips}:{message:o.message}},r=KR.default.join((0,X0.getRootHome)(),"logs",process.env.serverless_devs_traceid,"error.json"),n=YR.default.readJSONSync(r);n.push(t(e)),YR.default.writeJSONSync(r,n,{spaces:2})},rSt=e=>{(0,X0.isDebugMode)()||Et.debug(e)},Kd=dBn});function vBn(){let{version:e}=Sxe.default.minVersion(gBn.engines.node);Sxe.default.gte(process.versions.node,e)||(new VR(`Node.js version must be greater than or equal to ${e}`,`Your current Node.js version is ${process.versions.node}, please upgrade your Node.js version at ${ht.underline("https://nodejs.org/en")}.`),process.exit(1))}var Sxe,gBn,Pee,uSt=bt(()=>{bv();hr();Sxe=nt(_3()),gBn=HR();Pee=vBn});var iSt=I(kee=>{"use strict";Object.defineProperty(kee,"__esModule",{value:!0});kee.boolean=void 0;var yBn=function(e){switch(Object.prototype.toString.call(e)){case"[object String]":return["true","t","yes","y","on","1"].includes(e.trim().toLowerCase());case"[object Number]":return e.valueOf()===1;case"[object Boolean]":return e.valueOf();default:return!1}};kee.boolean=yBn});var oSt=I(Ree=>{"use strict";Object.defineProperty(Ree,"__esModule",{value:!0});Ree.isBooleanable=void 0;var DBn=function(e){switch(Object.prototype.toString.call(e)){case"[object String]":return["true","t","yes","y","on","1","false","f","no","n","off","0"].includes(e.trim().toLowerCase());case"[object Number]":return[0,1].includes(e.valueOf());case"[object Boolean]":return!0;default:return!1}};Ree.isBooleanable=DBn});var Iee=I(wA=>{"use strict";Object.defineProperty(wA,"__esModule",{value:!0});wA.isBooleanable=wA.boolean=void 0;var EBn=iSt();Object.defineProperty(wA,"boolean",{enumerable:!0,get:function(){return EBn.boolean}});var bBn=oSt();Object.defineProperty(wA,"isBooleanable",{enumerable:!0,get:function(){return bBn.isBooleanable}})});var jee=I((SWu,sSt)=>{sSt.exports=Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"});var Oxe=I((OWu,cSt)=>{"use strict";var aSt=Object.prototype.toString;cSt.exports=function(t){var r=aSt.call(t),n=r==="[object Arguments]";return n||(n=r!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&aSt.call(t.callee)==="[object Function]"),n}});var ySt=I((TWu,vSt)=>{"use strict";var gSt;Object.keys||(XR=Object.prototype.hasOwnProperty,Txe=Object.prototype.toString,lSt=Oxe(),Pxe=Object.prototype.propertyIsEnumerable,fSt=!Pxe.call({toString:null},"toString"),pSt=Pxe.call(function(){},"prototype"),JR=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],Lee=function(e){var t=e.constructor;return t&&t.prototype===e},hSt={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},dSt=function(){if(typeof window>"u")return!1;for(var e in window)try{if(!hSt["$"+e]&&XR.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{Lee(window[e])}catch{return!0}}catch{return!0}return!1}(),mSt=function(e){if(typeof window>"u"||!dSt)return Lee(e);try{return Lee(e)}catch{return!1}},gSt=function(t){var r=t!==null&&typeof t=="object",n=Txe.call(t)==="[object Function]",u=lSt(t),i=r&&Txe.call(t)==="[object String]",o=[];if(!r&&!n&&!u)throw new TypeError("Object.keys called on a non-object");var s=pSt&&n;if(i&&t.length>0&&!XR.call(t,0))for(var a=0;a<t.length;++a)o.push(String(a));if(u&&t.length>0)for(var c=0;c<t.length;++c)o.push(String(c));else for(var l in t)!(s&&l==="prototype")&&XR.call(t,l)&&o.push(String(l));if(fSt)for(var f=mSt(t),p=0;p<JR.length;++p)!(f&&JR[p]==="constructor")&&XR.call(t,JR[p])&&o.push(JR[p]);return o});var XR,Txe,lSt,Pxe,fSt,pSt,JR,Lee,hSt,dSt,mSt;vSt.exports=gSt});var CSt=I((PWu,bSt)=>{"use strict";var CBn=Array.prototype.slice,xBn=Oxe(),DSt=Object.keys,Nee=DSt?function(t){return DSt(t)}:ySt(),ESt=Object.keys;Nee.shim=function(){if(Object.keys){var t=function(){var r=Object.keys(arguments);return r&&r.length===arguments.length}(1,2);t||(Object.keys=function(n){return xBn(n)?ESt(CBn.call(n)):ESt(n)})}else Object.keys=Nee;return Object.keys||Nee};bSt.exports=Nee});var ASt=I((kWu,xSt)=>{"use strict";xSt.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var u=42;t[r]=u;for(r in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var i=Object.getOwnPropertySymbols(t);if(i.length!==1||i[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(t,r);if(o.value!==u||o.enumerable!==!0)return!1}return!0}});var BSt=I((RWu,_St)=>{"use strict";var FSt=typeof Symbol<"u"&&Symbol,ABn=ASt();_St.exports=function(){return typeof FSt!="function"||typeof Symbol!="function"||typeof FSt("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:ABn()}});var OSt=I((IWu,SSt)=>{"use strict";var wSt={foo:{}},FBn=Object;SSt.exports=function(){return{__proto__:wSt}.foo===wSt.foo&&!({__proto__:null}instanceof FBn)}});var kSt=I((jWu,PSt)=>{"use strict";var _Bn="Function.prototype.bind called on incompatible ",BBn=Object.prototype.toString,wBn=Math.max,SBn="[object Function]",TSt=function(t,r){for(var n=[],u=0;u<t.length;u+=1)n[u]=t[u];for(var i=0;i<r.length;i+=1)n[i+t.length]=r[i];return n},OBn=function(t,r){for(var n=[],u=r||0,i=0;u<t.length;u+=1,i+=1)n[i]=t[u];return n},TBn=function(e,t){for(var r="",n=0;n<e.length;n+=1)r+=e[n],n+1<e.length&&(r+=t);return r};PSt.exports=function(t){var r=this;if(typeof r!="function"||BBn.apply(r)!==SBn)throw new TypeError(_Bn+r);for(var n=OBn(arguments,1),u,i=function(){if(this instanceof u){var l=r.apply(this,TSt(n,arguments));return Object(l)===l?l:this}return r.apply(t,TSt(n,arguments))},o=wBn(0,r.length-n.length),s=[],a=0;a<o;a++)s[a]="$"+a;if(u=Function("binder","return function ("+TBn(s,",")+"){ return binder.apply(this,arguments); }")(i),r.prototype){var c=function(){};c.prototype=r.prototype,u.prototype=new c,c.prototype=null}return u}});var qee=I((LWu,RSt)=>{"use strict";var PBn=kSt();RSt.exports=Function.prototype.bind||PBn});var jSt=I((NWu,ISt)=>{"use strict";var kBn=Function.prototype.call,RBn=Object.prototype.hasOwnProperty,IBn=qee();ISt.exports=IBn.call(kBn,RBn)});var kA=I((qWu,USt)=>{"use strict";var iu,PA=SyntaxError,MSt=Function,TA=TypeError,kxe=function(e){try{return MSt('"use strict"; return ('+e+").constructor;")()}catch{}},S3=Object.getOwnPropertyDescriptor;if(S3)try{S3({},"")}catch{S3=null}var Rxe=function(){throw new TA},jBn=S3?function(){try{return arguments.callee,Rxe}catch{try{return S3(arguments,"callee").get}catch{return Rxe}}}():Rxe,SA=BSt()(),LBn=OSt()(),fa=Object.getPrototypeOf||(LBn?function(e){return e.__proto__}:null),OA={},NBn=typeof Uint8Array>"u"||!fa?iu:fa(Uint8Array),O3={"%AggregateError%":typeof AggregateError>"u"?iu:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?iu:ArrayBuffer,"%ArrayIteratorPrototype%":SA&&fa?fa([][Symbol.iterator]()):iu,"%AsyncFromSyncIteratorPrototype%":iu,"%AsyncFunction%":OA,"%AsyncGenerator%":OA,"%AsyncGeneratorFunction%":OA,"%AsyncIteratorPrototype%":OA,"%Atomics%":typeof Atomics>"u"?iu:Atomics,"%BigInt%":typeof BigInt>"u"?iu:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?iu:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?iu:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?iu:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":typeof Float32Array>"u"?iu:Float32Array,"%Float64Array%":typeof Float64Array>"u"?iu:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?iu:FinalizationRegistry,"%Function%":MSt,"%GeneratorFunction%":OA,"%Int8Array%":typeof Int8Array>"u"?iu:Int8Array,"%Int16Array%":typeof Int16Array>"u"?iu:Int16Array,"%Int32Array%":typeof Int32Array>"u"?iu:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":SA&&fa?fa(fa([][Symbol.iterator]())):iu,"%JSON%":typeof JSON=="object"?JSON:iu,"%Map%":typeof Map>"u"?iu:Map,"%MapIteratorPrototype%":typeof Map>"u"||!SA||!fa?iu:fa(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?iu:Promise,"%Proxy%":typeof Proxy>"u"?iu:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":typeof Reflect>"u"?iu:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?iu:Set,"%SetIteratorPrototype%":typeof Set>"u"||!SA||!fa?iu:fa(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?iu:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":SA&&fa?fa(""[Symbol.iterator]()):iu,"%Symbol%":SA?Symbol:iu,"%SyntaxError%":PA,"%ThrowTypeError%":jBn,"%TypedArray%":NBn,"%TypeError%":TA,"%Uint8Array%":typeof Uint8Array>"u"?iu:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?iu:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?iu:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?iu:Uint32Array,"%URIError%":URIError,"%WeakMap%":typeof WeakMap>"u"?iu:WeakMap,"%WeakRef%":typeof WeakRef>"u"?iu:WeakRef,"%WeakSet%":typeof WeakSet>"u"?iu:WeakSet};if(fa)try{null.error}catch(e){LSt=fa(fa(e)),O3["%Error.prototype%"]=LSt}var LSt,qBn=function e(t){var r;if(t==="%AsyncFunction%")r=kxe("async function () {}");else if(t==="%GeneratorFunction%")r=kxe("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=kxe("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var u=e("%AsyncGenerator%");u&&fa&&(r=fa(u.prototype))}return O3[t]=r,r},NSt={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},QR=qee(),Mee=jSt(),MBn=QR.call(Function.call,Array.prototype.concat),UBn=QR.call(Function.apply,Array.prototype.splice),qSt=QR.call(Function.call,String.prototype.replace),Uee=QR.call(Function.call,String.prototype.slice),$Bn=QR.call(Function.call,RegExp.prototype.exec),zBn=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,GBn=/\\(\\)?/g,WBn=function(t){var r=Uee(t,0,1),n=Uee(t,-1);if(r==="%"&&n!=="%")throw new PA("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new PA("invalid intrinsic syntax, expected opening `%`");var u=[];return qSt(t,zBn,function(i,o,s,a){u[u.length]=s?qSt(a,GBn,"$1"):o||i}),u},VBn=function(t,r){var n=t,u;if(Mee(NSt,n)&&(u=NSt[n],n="%"+u[0]+"%"),Mee(O3,n)){var i=O3[n];if(i===OA&&(i=qBn(n)),typeof i>"u"&&!r)throw new TA("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:u,name:n,value:i}}throw new PA("intrinsic "+t+" does not exist!")};USt.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new TA("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new TA('"allowMissing" argument must be a boolean');if($Bn(/^%?[^%]*%?$/,t)===null)throw new PA("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=WBn(t),u=n.length>0?n[0]:"",i=VBn("%"+u+"%",r),o=i.name,s=i.value,a=!1,c=i.alias;c&&(u=c[0],UBn(n,MBn([0,1],c)));for(var l=1,f=!0;l<n.length;l+=1){var p=n[l],h=Uee(p,0,1),d=Uee(p,-1);if((h==='"'||h==="'"||h==="`"||d==='"'||d==="'"||d==="`")&&h!==d)throw new PA("property names with quotes must have matching quotes");if((p==="constructor"||!f)&&(a=!0),u+="."+p,o="%"+u+"%",Mee(O3,o))s=O3[o];else if(s!=null){if(!(p in s)){if(!r)throw new TA("base intrinsic for "+t+" exists, but the property is not available.");return}if(S3&&l+1>=n.length){var m=S3(s,p);f=!!m,f&&"get"in m&&!("originalValue"in m.get)?s=m.get:s=s[p]}else f=Mee(s,p),s=s[p];f&&!a&&(O3[o]=s)}}return s}});var $ee=I((MWu,$St)=>{"use strict";var HBn=kA(),Ixe=HBn("%Object.defineProperty%",!0),jxe=function(){if(Ixe)try{return Ixe({},"a",{value:1}),!0}catch{return!1}return!1};jxe.hasArrayLengthDefineBug=function(){if(!jxe())return null;try{return Ixe([],"length",{value:1}).length!==1}catch{return!0}};$St.exports=jxe});var Lxe=I((UWu,zSt)=>{"use strict";var KBn=kA(),zee=KBn("%Object.getOwnPropertyDescriptor%",!0);if(zee)try{zee([],"length")}catch{zee=null}zSt.exports=zee});var qxe=I(($Wu,WSt)=>{"use strict";var YBn=$ee()(),Nxe=kA(),ZR=YBn&&Nxe("%Object.defineProperty%",!0);if(ZR)try{ZR({},"a",{value:1})}catch{ZR=!1}var XBn=Nxe("%SyntaxError%"),RA=Nxe("%TypeError%"),GSt=Lxe();WSt.exports=function(t,r,n){if(!t||typeof t!="object"&&typeof t!="function")throw new RA("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new RA("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new RA("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new RA("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new RA("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new RA("`loose`, if provided, must be a boolean");var u=arguments.length>3?arguments[3]:null,i=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,a=!!GSt&&GSt(t,r);if(ZR)ZR(t,r,{configurable:o===null&&a?a.configurable:!o,enumerable:u===null&&a?a.enumerable:!u,value:n,writable:i===null&&a?a.writable:!i});else if(s||!u&&!i&&!o)t[r]=n;else throw new XBn("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var Mxe=I((zWu,YSt)=>{"use strict";var JBn=CSt(),QBn=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",ZBn=Object.prototype.toString,ewn=Array.prototype.concat,VSt=qxe(),twn=function(e){return typeof e=="function"&&ZBn.call(e)==="[object Function]"},HSt=$ee()(),rwn=function(e,t,r,n){if(t in e){if(n===!0){if(e[t]===r)return}else if(!twn(n)||!n())return}HSt?VSt(e,t,r,!0):VSt(e,t,r)},KSt=function(e,t){var r=arguments.length>2?arguments[2]:{},n=JBn(t);QBn&&(n=ewn.call(n,Object.getOwnPropertySymbols(t)));for(var u=0;u<n.length;u+=1)rwn(e,n[u],t[n[u]],r[n[u]])};KSt.supportsDescriptors=!!HSt;YSt.exports=KSt});var Uxe=I((GWu,XSt)=>{"use strict";XSt.exports=global});var $xe=I((WWu,JSt)=>{"use strict";var nwn=Uxe();JSt.exports=function(){return typeof global!="object"||!global||global.Math!==Math||global.Array!==Array?nwn:global}});var ZSt=I((VWu,QSt)=>{"use strict";var uwn=Mxe(),iwn=$xe();QSt.exports=function(){var t=iwn();if(uwn.supportsDescriptors){var r=Object.getOwnPropertyDescriptor(t,"globalThis");(!r||r.configurable&&(r.enumerable||!r.writable||globalThis!==t))&&Object.defineProperty(t,"globalThis",{configurable:!0,enumerable:!1,value:t,writable:!0})}else(typeof globalThis!="object"||globalThis!==t)&&(t.globalThis=t);return t}});var zxe=I((HWu,rOt)=>{"use strict";var own=Mxe(),swn=Uxe(),eOt=$xe(),awn=ZSt(),cwn=eOt(),tOt=function(){return cwn};own(tOt,{getPolyfill:eOt,implementation:swn,shim:awn});rOt.exports=tOt});var iOt=I((Gxe,uOt)=>{Gxe=uOt.exports=lwn;Gxe.getSerialize=nOt;function lwn(e,t,r,n){return JSON.stringify(e,nOt(t,n),r)}function nOt(e,t){var r=[],n=[];return t==null&&(t=function(u,i){return r[0]===i?"[Circular ~]":"[Circular ~."+n.slice(0,r.indexOf(i)).join(".")+"]"}),function(u,i){if(r.length>0){var o=r.indexOf(this);~o?r.splice(o+1):r.push(this),~o?n.splice(o,1/0,u):n.push(u),~r.indexOf(i)&&(i=t.call(this,u,i))}else r.push(i);return e==null?i:e.call(this,u,i)}}});var oOt=I(Gee=>{(function(){"use strict";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function t(o){return n(i(o),arguments)}function r(o,s){return t.apply(null,[o].concat(s||[]))}function n(o,s){var a=1,c=o.length,l,f="",p,h,d,m,v,D,g,y;for(p=0;p<c;p++)if(typeof o[p]=="string")f+=o[p];else if(typeof o[p]=="object"){if(d=o[p],d.keys)for(l=s[a],h=0;h<d.keys.length;h++){if(l==null)throw new Error(t('[sprintf] Cannot access property "%s" of undefined value "%s"',d.keys[h],d.keys[h-1]));l=l[d.keys[h]]}else d.param_no?l=s[d.param_no]:l=s[a++];if(e.not_type.test(d.type)&&e.not_primitive.test(d.type)&&l instanceof Function&&(l=l()),e.numeric_arg.test(d.type)&&typeof l!="number"&&isNaN(l))throw new TypeError(t("[sprintf] expecting number but found %T",l));switch(e.number.test(d.type)&&(g=l>=0),d.type){case"b":l=parseInt(l,10).toString(2);break;case"c":l=String.fromCharCode(parseInt(l,10));break;case"d":case"i":l=parseInt(l,10);break;case"j":l=JSON.stringify(l,null,d.width?parseInt(d.width):0);break;case"e":l=d.precision?parseFloat(l).toExponential(d.precision):parseFloat(l).toExponential();break;case"f":l=d.precision?parseFloat(l).toFixed(d.precision):parseFloat(l);break;case"g":l=d.precision?String(Number(l.toPrecision(d.precision))):parseFloat(l);break;case"o":l=(parseInt(l,10)>>>0).toString(8);break;case"s":l=String(l),l=d.precision?l.substring(0,d.precision):l;break;case"t":l=String(!!l),l=d.precision?l.substring(0,d.precision):l;break;case"T":l=Object.prototype.toString.call(l).slice(8,-1).toLowerCase(),l=d.precision?l.substring(0,d.precision):l;break;case"u":l=parseInt(l,10)>>>0;break;case"v":l=l.valueOf(),l=d.precision?l.substring(0,d.precision):l;break;case"x":l=(parseInt(l,10)>>>0).toString(16);break;case"X":l=(parseInt(l,10)>>>0).toString(16).toUpperCase();break}e.json.test(d.type)?f+=l:(e.number.test(d.type)&&(!g||d.sign)?(y=g?"+":"-",l=l.toString().replace(e.sign,"")):y="",v=d.pad_char?d.pad_char==="0"?"0":d.pad_char.charAt(1):" ",D=d.width-(y+l).length,m=d.width&&D>0?v.repeat(D):"",f+=d.align?y+l+m:v==="0"?y+m+l:m+y+l)}return f}var u=Object.create(null);function i(o){if(u[o])return u[o];for(var s=o,a,c=[],l=0;s;){if((a=e.text.exec(s))!==null)c.push(a[0]);else if((a=e.modulo.exec(s))!==null)c.push("%");else if((a=e.placeholder.exec(s))!==null){if(a[2]){l|=1;var f=[],p=a[2],h=[];if((h=e.key.exec(p))!==null)for(f.push(h[1]);(p=p.substring(h[0].length))!=="";)if((h=e.key_access.exec(p))!==null)f.push(h[1]);else if((h=e.index_access.exec(p))!==null)f.push(h[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");a[2]=f}else l|=2;if(l===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");c.push({placeholder:a[0],param_no:a[1],keys:a[2],sign:a[3],pad_char:a[4],align:a[5],width:a[6],precision:a[7],type:a[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");s=s.substring(a[0].length)}return u[o]=c}typeof Gee<"u"&&(Gee.sprintf=t,Gee.vsprintf=r),typeof window<"u"&&(window.sprintf=t,window.vsprintf=r,typeof define=="function"&&define.amd&&define(function(){return{sprintf:t,vsprintf:r}}))})()});var Wxe=I(Wee=>{"use strict";Object.defineProperty(Wee,"__esModule",{value:!0});Wee.logLevels=void 0;var fwn={debug:20,error:50,fatal:60,info:30,trace:10,warn:40};Wee.logLevels=fwn});var cOt=I(Hee=>{"use strict";Object.defineProperty(Hee,"__esModule",{value:!0});Hee.default=void 0;var pwn=Yxe(jee()),hwn=Yxe(zxe()),dwn=Yxe(iOt()),Vxe=oOt(),sOt=Wxe();function Yxe(e){return e&&e.__esModule?e:{default:e}}function Hxe(){return Hxe=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Hxe.apply(this,arguments)}function aOt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(u){return Object.getOwnPropertyDescriptor(e,u).enumerable})),r.push.apply(r,n)}return r}function Wf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?aOt(Object(r),!0).forEach(function(n){mwn(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):aOt(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function mwn(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var gwn=(0,hwn.default)(),eI;pwn.default&&(eI=require("domain"));var vwn=()=>{if(!eI)return{};let e=[],t=process.domain;if(!t||!t.parentDomain)return{};for(;t&&t.parentDomain;)t=t.parentDomain,t.roarr&&t.roarr.context&&e.push(t.roarr.context);let r={};for(let n of e)r=Wf(Wf({},r),n);return r},Vee=()=>{if(!eI)return{};let e=process.domain;if(e&&e.roarr&&e.roarr.context)return e.roarr.context;if(!e||!e.parentDomain)return{};for(;e&&e.parentDomain;)if(e=e.parentDomain,e.roarr&&e.roarr.context)return e.roarr.context;return{}},Kxe=(e,t)=>{let r=(n,u,i,o,s,a,c,l,f,p)=>{let h=Date.now(),d=gwn.ROARR.sequence++,m,v;if(typeof n=="string"){m=Wf(Wf({},Vee()),t||{});let D=Hxe({},{a:n,b:u,c:i,d:o,e:s,f:a,g:c,h:l,i:f,k:p});v=Object.keys(D).map(E=>D[E]).reduce((E,b)=>E+=typeof b>"u"?0:1,0)===1?(0,Vxe.sprintf)("%s",n):(0,Vxe.sprintf)(n,u,i,o,s,a,c,l,f,p)}else{if(typeof u!="string")throw new TypeError("Message must be a string.");m=JSON.parse((0,dwn.default)(Wf(Wf(Wf({},Vee()),t||{}),n))),v=(0,Vxe.sprintf)(u,i,o,s,a,c,l,f,p)}e({context:m,message:v,sequence:d,time:h,version:"1.0.0"})};r.child=n=>typeof n=="function"?Kxe(u=>{if(typeof n!="function")throw new TypeError("Unexpected state.");e(n(u))},t):Kxe(e,Wf(Wf(Wf({},Vee()),t),n)),r.getContext=()=>Wf(Wf({},Vee()),t||{}),r.adopt=async(n,u)=>{if(!eI)return n();let i=eI.create();return i.run(()=>(i.roarr={context:Wf(Wf({},vwn()),u)},n()))};for(let n of Object.keys(sOt.logLevels))r[n]=(u,i,o,s,a,c,l,f,p,h)=>r.child({logLevel:sOt.logLevels[n]})(u,i,o,s,a,c,l,f,p,h);return r},ywn=Kxe;Hee.default=ywn});var pOt=I(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.default=void 0;var lOt=Wxe(),fOt=(e,t)=>{let r=(n,u,i,o,s,a,c,l,f,p)=>{};r.adopt=async n=>n(),r.child=n=>fOt(e,t),r.getContext=()=>({});for(let n of Object.keys(lOt.logLevels))r[n]=(u,i,o,s,a,c,l,f,p,h)=>r.child({logLevel:lOt.logLevels[n]})(u,i,o,s,a,c,l,f,p,h);return r},Dwn=fOt;Kee.default=Dwn});var dOt=I((QWu,hOt)=>{hOt.exports=function(t,r){for(var n=t.split("."),u=r.split("."),i=0;i<3;i++){var o=Number(n[i]),s=Number(u[i]);if(o>s)return 1;if(s>o)return-1;if(!isNaN(o)&&isNaN(s))return 1;if(isNaN(o)&&!isNaN(s))return-1}return 0}});var mOt=I((ZWu,Ewn)=>{Ewn.exports={author:{email:"gajus@gajus.com",name:"Gajus Kuizinas",url:"http://gajus.com"},ava:{babel:{compileAsTests:["test/helpers/**/*"]},files:["test/roarr/**/*"],require:["@babel/register"]},dependencies:{boolean:"^3.0.1","detect-node":"^2.0.4",globalthis:"^1.0.1","json-stringify-safe":"^5.0.1","semver-compare":"^1.0.0","sprintf-js":"^1.1.2"},description:"JSON logger for Node.js and browser.",devDependencies:{"@ava/babel":"^1.0.1","@babel/cli":"^7.11.6","@babel/core":"^7.11.6","@babel/node":"^7.10.5","@babel/plugin-transform-flow-strip-types":"^7.10.4","@babel/preset-env":"^7.11.5","@babel/register":"^7.11.5",ava:"^3.12.1","babel-plugin-istanbul":"^6.0.0","babel-plugin-transform-export-default-name":"^2.0.4",coveralls:"^3.1.0","domain-parent":"^1.0.0",eslint:"^7.9.0","eslint-config-canonical":"^24.1.1","flow-bin":"^0.133.0","flow-copy-source":"^2.0.9",gitdown:"^3.1.3",husky:"^4.3.0",nyc:"^15.1.0","semantic-release":"^17.1.1"},engines:{node:">=8.0"},husky:{hooks:{"pre-commit":"npm run lint && npm run test && npm run build","pre-push":"gitdown ./.README/README.md --output-file ./README.md --check"}},keywords:["log","logger","json"],main:"./dist/log.js",name:"roarr",nyc:{include:["src/**/*.js"],instrument:!1,reporter:["text-lcov"],require:["@babel/register"],sourceMap:!1},license:"BSD-3-Clause",repository:{type:"git",url:"git@github.com:gajus/roarr.git"},scripts:{build:"rm -fr ./dist && NODE_ENV=production babel ./src --out-dir ./dist --copy-files --source-maps && flow-copy-source src dist","create-readme":"gitdown ./.README/README.md --output-file ./README.md",dev:"NODE_ENV=production babel ./src --out-dir ./dist --copy-files --source-maps --watch",lint:"eslint ./src ./test && flow",test:"NODE_ENV=test ava --serial --verbose"},version:"2.15.4"}});var gOt=I(Yee=>{"use strict";Object.defineProperty(Yee,"__esModule",{value:!0});Yee.default=void 0;var bwn=e=>({write:t=>{e.write(t+`
|
|
@@ -1023,7 +1023,7 @@ ${ylu.default.green("?")}`:void 0,p=h=>(0,Ou.isEmpty)(h)?(0,Ou.includes)(u,l)?"v
|
|
|
1023
1023
|
`);return i!==-1&&(t=afu(t,u,n,i)),n+t+u},bke,iXt=(e,...t)=>{let[r]=t;if(!yoe(r)||!yoe(r.raw))return t.join(" ");let n=t.slice(1),u=[r.raw[0]];for(let i=1;i<r.length;i++)u.push(String(n[i-1]).replace(/[{}\\]/g,"\\$&"),String(r.raw[i]));return bke===void 0&&(bke=eXt()),bke(e,u.join(""))};Object.defineProperties(Doe.prototype,R_);var boe=Doe();boe.supportsColor=Cke;boe.stderr=Doe({level:xke?xke.level:0});boe.stderr.supportsColor=xke;oXt.exports=boe});var aXt=I(XN=>{"use strict";XN.__esModule=!0;XN.parseArgsStringToArgv=void 0;function sXt(e,t,r){var n=/([^\s'"]([^\s'"]*(['"])([^\3]*?)\3)+[^\s'"]*)|[^\s'"]+|(['"])([^\5]*?)\5/gi,u=e,i=[];t&&i.push(t),r&&i.push(r);var o;do o=n.exec(u),o!==null&&i.push(ffu(o[1],o[6],o[0]));while(o!==null);return i}XN.default=sXt;XN.parseArgsStringToArgv=sXt;function ffu(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0;r<e.length;r++){var n=e[r];if(typeof n=="string")return n}}});var Bke=I(Em=>{"use strict";Object.defineProperty(Em,"__esModule",{value:!0});Em.OUTPUT_EXP_PATTERN=Em.COMPONENT_EXP_PATTERN=Em.INFO_EXP_PATTERN=Em.EXIT_CODE=void 0;Em.EXIT_CODE={DEVS:100,COMPONENT:101,PLUGIN:101,RUN:101};Em.INFO_EXP_PATTERN=/\$\{resources\.([^.{}]+)\.info(\.[^.{}]+)+}/g;Em.COMPONENT_EXP_PATTERN=/\$\{components\.([^.{}]+)\.output(\.[^.{}]+)+}/g;Em.OUTPUT_EXP_PATTERN=/\$\{resources\.([^.{}]+)\.output(\.[^.{}]+)+}/g});var fXt=I(fp=>{"use strict";var pfu=fp&&fp.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var u=Object.getOwnPropertyDescriptor(t,r);(!u||("get"in u?!t.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,u)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),hfu=fp&&fp.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),dfu=fp&&fp.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pfu(t,e,r);return hfu(t,e),t},JN=fp&&fp.__awaiter||function(e,t,r,n){function u(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function s(l){try{c(n.next(l))}catch(f){o(f)}}function a(l){try{c(n.throw(l))}catch(f){o(f)}}function c(l){l.done?i(l.value):u(l.value).then(s,a)}c((n=n.apply(e,t||[])).next())})},Coe=fp&&fp.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(fp,"__esModule",{value:!0});var pl=lh(),_1=ur(),wke=dfu(dr()),bm=dr(),cXt=Coe(ui()),mfu=require("child_process"),lXt=Coe(fg()),gfu=Coe(aXt()),Ey=moe(),QN=Coe(_ke()),Cm=Bke(),Ske=Id()("serverless-devs:engine"),Oke=class{constructor(t=[],r={}){this.actions=t,this.option=r,this.record={},this.inputs={},this.logger=r.logger}setValue(t,r){this.option.skipActions||(0,_1.set)(this.record,t,r)}start(t,r={}){return JN(this,void 0,void 0,function*(){try{return yield this.afterStart(t,r)}catch(n){let u=n;throw this.option.hookLevel===pl.IActionLevel.GLOBAL&&this.logger.write(`${QN.default.red("\u2716")} ${QN.default.gray(`${pl.IActionLevel.GLOBAL} ${t}-action failed to [${this.record.command}] (${(0,Ey.getProcessTime)(this.record.startTime)}s)`)}`),n}})}afterStart(t,r={}){return JN(this,void 0,void 0,function*(){if(this.option.skipActions)return{};this.inputs=r,t===pl.IHookType.COMPLETE&&this.actions.find(i=>i.hookType===pl.IHookType.POST)&&(this.actions=this.actions.map(i=>i.hookType===pl.IHookType.POST?Object.assign(Object.assign({},i),{hookType:pl.IHookType.COMPLETE}):i),this.logger.warn(`The action hook 'post-<command>' has been renamed to 'complete-<command>'.
|
|
1024
1024
|
You can still use them now, but we suggest to modify them.`));let n=(0,_1.filter)(this.actions,i=>i.hookType===t);if((0,_1.isEmpty)(n))return{};this.record.startTime=Date.now(),this.record.label=this.option.hookLevel===pl.IActionLevel.PROJECT?`[${this.option.projectName}]`:pl.IActionLevel.GLOBAL,this.logger.debug(`Start executing the ${t}-action in ${this.record.label}`);let u=(0,pl.getInputs)(n,this.record.magic);t!==pl.IHookType.PRE&&(this.record.pluginOutput={});for(let i of u)Ske(`${i.level} action item: ${(0,Ey.stringify)(i)}`),this.record.allowFailure=this.record.step&&"allow_failure"in this.record.step?(0,_1.get)(this.record,"step.allow_failure"):i.allow_failure,i.actionType===pl.IActionType.RUN&&(yield this.run(i)),i.actionType===pl.IActionType.PLUGIN&&(yield this.plugin(i)),i.actionType===pl.IActionType.COMPONENT&&i.level===pl.IActionLevel.PROJECT&&(yield this.component(i));return this.logger.debug(`The ${t}-action successfully to execute in ${this.record.label}`),this.option.hookLevel===pl.IActionLevel.GLOBAL&&this.logger.write(`${QN.default.green("\u2714")} ${QN.default.gray(`${pl.IActionLevel.GLOBAL} ${t}-action completed (${(0,Ey.getProcessTime)(this.record.startTime)})`)}`),this.record})}onFinish(t){return new Promise((r,n)=>{let u=[],i=[];t.stdout.on("data",o=>{this.logger.append(o.toString()),u.push(o)}),t.stderr.on("data",o=>{this.logger.append(o.toString()),wke.getCurrentEnvironment()!=="app_center"&&i.push(o)}),t.on("exit",o=>{o===0?r({}):n(new Error(Buffer.concat(i).toString()))})})}run(t){return JN(this,void 0,void 0,function*(){if(cXt.default.existsSync(t.path)&&cXt.default.lstatSync(t.path).isDirectory()){try{let n=(0,mfu.spawn)(t.value,{cwd:t.path,shell:!0});yield this.onFinish(n)}catch(n){let u=n;if(wke.isWindow()&&(Ske("Command run execution environment\uFF1ACMD"),Ske("Please check whether the actions section of yaml can be executed in the current environment.")),(0,Ey.getAllowFailure)(this.record.allowFailure,{exitCode:Cm.EXIT_CODE.RUN,command:this.record.command}))return;throw new bm.DevsError(u.message,{data:(0,_1.get)(n,"data"),stack:u.stack,exitCode:Cm.EXIT_CODE.RUN,prefix:`${this.record.label} ${t.hookType}-action failed to [${this.record.command}]:`,trackerType:bm.ETrackerType.runtimeException})}return}if(!(0,Ey.getAllowFailure)(this.record.allowFailure,{exitCode:Cm.EXIT_CODE.DEVS,command:this.record.command}))throw new bm.DevsError(`The ${t.path} directory does not exist.`,{exitCode:Cm.EXIT_CODE.DEVS,prefix:`${this.record.label} ${t.hookType}-action failed to [${this.record.command}]:`,trackerType:bm.ETrackerType.parseException})})}plugin(t){return JN(this,void 0,void 0,function*(){try{let r=yield(0,lXt.default)(t.value,{logger:this.logger}),n=(0,_1.isEmpty)(this.record.pluginOutput)?this.inputs:this.record.pluginOutput;this.record.pluginOutput=yield r(n,t.args,this.logger),t.replace_output&&(this.record.step.output=(0,_1.cloneDeep)(this.record.pluginOutput))}catch(r){let n=r;if((0,Ey.getAllowFailure)(this.record.allowFailure,{exitCode:Cm.EXIT_CODE.PLUGIN,command:this.record.command}))return;throw new bm.DevsError(n.message,{data:(0,_1.get)(r,"data"),stack:n.stack,exitCode:Cm.EXIT_CODE.PLUGIN,prefix:`${this.record.label} ${t.hookType}-action failed to [${this.record.command}]:`,trackerType:bm.ETrackerType.runtimeException})}})}component(t){return JN(this,void 0,void 0,function*(){let r=(0,gfu.default)(t.value),{_:n}=wke.parseArgv(r),[u,i]=n,o=yield(0,lXt.default)(u,{logger:this.logger,cleanCache:!0});if(o[i]){let a=Object.assign(Object.assign({},this.record.componentProps),{args:(0,_1.filter)(r.slice(2),c=>!(0,_1.includes)([u,i],c))});try{return yield o[i](a)}catch(c){let l=c;if((0,Ey.getAllowFailure)(this.record.allowFailure,{exitCode:Cm.EXIT_CODE.COMPONENT,command:this.record.command}))return;throw new bm.DevsError(l.message,{data:(0,_1.get)(c,"data"),stack:l.stack,exitCode:Cm.EXIT_CODE.COMPONENT,prefix:`${this.record.label} ${t.hookType}-action failed to [${this.record.command}]:`,trackerType:bm.ETrackerType.runtimeException})}}if(!(0,Ey.getAllowFailure)(this.record.allowFailure,{exitCode:Cm.EXIT_CODE.DEVS,command:this.record.command}))throw new bm.DevsError(`The [${i}] command was not found.`,{exitCode:Cm.EXIT_CODE.DEVS,prefix:`${this.record.label} ${t.hookType}-action failed to [${this.record.command}]:`,tips:`Please check the component ${u} has the ${i} command. Serverless Devs documents\uFF1A${QN.default.underline("https://docs.serverless-devs.com/")}`,trackerType:bm.ETrackerType.parseException})})}};fp.default=Oke});var yXt=I(ko=>{"use strict";var vXt=ko&&ko.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var u=Object.getOwnPropertyDescriptor(t,r);(!u||("get"in u?!t.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,u)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),vfu=ko&&ko.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),yfu=ko&&ko.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&vXt(t,e,r);return vfu(t,e),t},Dfu=ko&&ko.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&vXt(t,e,r)},pc=ko&&ko.__awaiter||function(e,t,r,n){function u(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function s(l){try{c(n.next(l))}catch(f){o(f)}}function a(l){try{c(n.throw(l))}catch(f){o(f)}}function c(l){l.done?i(l.value):u(l.value).then(s,a)}c((n=n.apply(e,t||[])).next())})},Jg=ko&&ko.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ko,"__esModule",{value:!0});ko.init=ko.preview=ko.verify=void 0;var pXt=xMt(),ir=ur(),qu=Ewe(),B1=moe(),Xo=yfu(lh()),hXt=Jg(require("path")),Xg=Jg(_ke()),Tke=Jg(fXt()),Efu=Jg(Rl()),dXt=Jg(fg()),mXt=Jg(Fbe()),bfu=Jg(Zie()),nf=dr(),xm=Bke(),gXt=Jg(require("assert")),Cfu=Jg(qL());Dfu(Ewe(),ko);var kke=moe();Object.defineProperty(ko,"verify",{enumerable:!0,get:function(){return kke.verify}});Object.defineProperty(ko,"preview",{enumerable:!0,get:function(){return kke.preview}});Object.defineProperty(ko,"init",{enumerable:!0,get:function(){return kke.init}});var Am=Id()("serverless-devs:engine"),Pke=class{constructor(t){this.options=t,this.context={status:qu.STEP_STATUS.PENDING,completed:!1,error:[]},this.record={status:qu.STEP_STATUS.PENDING,editStatusAble:!0},this.spec={},this.baselineSpec={},this.info={},this.diffs=[],Am("engine start"),this.options.args=(0,ir.get)(this.options,"args",process.argv.slice(2)),this.options.cwd=(0,ir.get)(this.options,"cwd",process.cwd()),this.options.template=(0,nf.getAbsolutePath)((0,ir.get)(this.options,"template"),this.options.cwd),Am(`engine options: ${(0,B1.stringify)(t)}`)}beforeStart(){return pc(this,void 0,void 0,function*(){this.glog=this.getLogger(),this.logger=this.glog.__generate("engine"),this.secretManager=bfu.default.getInstance();let t=this.secretManager.getAllSecrets();for(let u of(0,ir.keys)(t))this.glog.__setSecret([u,t[u]]),this.glog.__setSecret([u,this.secretManager.getSecret(u)]);this.parseSpecInstance=new Xo.default((0,ir.get)(this.options,"template"),{argv:this.options.args,logger:this.logger}),this.spec=yield this.parseSpecInstance.start(),this.spec.baselineTemplate&&(this.logger.debug(`baselineTemplate: ${this.spec.baselineTemplate}`),this.parseSpecInstanceBaseline=new Xo.default((0,ir.get)(this.spec,"baselineTemplate"),{argv:this.options.args,logger:this.logger}),this.baselineSpec=yield this.parseSpecInstanceBaseline.start(),this.diffs=(0,B1.getDiffs)((0,ir.get)(this.spec,"yaml.content"),(0,ir.get)(this.baselineSpec,"yaml.content"))||[]),(0,ir.each)(this.options.env,(u,i)=>{process.env[i]=u});let{steps:r,allSteps:n}=this.spec;yield this.validate(),this.context.steps=yield this.download(r),this.context.allSteps=n?yield this.download(n):[]})}start(){return pc(this,void 0,void 0,function*(){this.context.status=qu.STEP_STATUS.RUNNING,this.record.status=qu.STEP_STATUS.RUNNING;try{yield this.beforeStart()}catch(s){return this.context.status=qu.STEP_STATUS.FAILURE,this.context.completed=!0,this.context.error.push(s),this.context}let{steps:t,yaml:r,command:n,access:u=r.access}=this.spec;this.logger.write(Xg.default.gray(`${(0,nf.emoji)("\u231B")} Steps for [${n}] of [${(0,ir.get)(this.spec,"yaml.appName")}]
|
|
1025
1025
|
${Xg.default.gray("====================")}`)),this.globalActionInstance=new Tke.default(r.actions,{hookLevel:Xo.IActionLevel.GLOBAL,logger:this.logger,skipActions:this.spec.skipActions});let i=yield(0,B1.getCredential)(u,this.logger);this.context.credential=i;try{this.globalActionInstance.setValue("magic",yield this.getFilterContext()),this.globalActionInstance.setValue("command",n),yield this.globalActionInstance.start(Xo.IHookType.PRE,{access:u,credential:i})}catch(s){return this.context.error.push(s),this.context.status=qu.STEP_STATUS.FAILURE,yield this.doCompleted(),this.context}this.context.steps=(0,ir.map)(this.context.steps,s=>Object.assign(Object.assign({},s),{stepCount:(0,ir.uniqueId)(),status:qu.STEP_STATUS.PENDING,done:!1})),this.context.allSteps=(0,ir.map)(this.context.allSteps,s=>Object.assign(Object.assign({},s),{stepCount:(0,ir.uniqueId)(),status:qu.STEP_STATUS.PENDING,done:!1}));let o=yield new Promise(s=>pc(this,void 0,void 0,function*(){let a={init:{on:{INIT:this.context.steps.length===0?"final":(0,ir.get)(this.context.steps,"[0].stepCount")}},final:{type:"final",invoke:{src:()=>pc(this,void 0,void 0,function*(){let f=this.record.status===qu.STEP_STATUS.ERROR_WITH_CONTINUE?qu.STEP_STATUS.SUCCESS:this.record.status;this.context.status=f,yield this.doCompleted(),this.context.steps=(0,ir.map)(this.context.steps,p=>(0,ir.omit)(p,["instance"])),this.context.output=this.getOutput(),Am(`context: ${(0,B1.stringify)(this.context)}`),Am("engine end"),s(this.context)})}}};(0,ir.each)(this.context.steps,(f,p)=>{let h=this.context.steps[p+1]?(0,ir.get)(this.context.steps,`[${p+1}].stepCount`):"final",d=r.useFlow?(0,ir.filter)(this.context.steps,m=>m.flowId===f.flowId):[f];a[f.stepCount]={invoke:{id:f.stepCount,src:()=>pc(this,void 0,void 0,function*(){if(!f.done)return this.record.startTime=Date.now(),this.recordContext(f,{status:qu.STEP_STATUS.RUNNING}),this.record.status===qu.STEP_STATUS.FAILURE?yield Promise.all((0,ir.map)(d,m=>this.doSkip(m))):yield Promise.all((0,ir.map)(d,m=>this.handleSrc(m)))}),onDone:{target:h},onError:h}}});let c=(0,pXt.createMachine)({predictableActionArguments:!0,id:"step",initial:"init",states:a});(0,pXt.interpret)(c).onTransition(f=>f.value).start().send("INIT")}));return this.glog.__clear(),o})}getOutput(){let t={};return(0,ir.each)(this.context.steps,r=>{(0,ir.isNil)(r.output)||(0,ir.set)(t,r.projectName,r.output)}),t}validate(){return pc(this,void 0,void 0,function*(){let{steps:t,command:r,projectName:n}=this.spec,u=[],i=new Cfu.default({allErrors:!0});(0,gXt.default)(!(0,ir.isEmpty)(t),"Step is required");for(let o of t){let s=yield(0,dXt.default)(o.component,{logger:this.logger,engineLogger:this.logger});if(n&&(0,ir.keys)((0,ir.get)(s,"commands")).includes(n))throw new nf.DevsError(`The name of the project [${n}] overlaps with a command, please change it's name.`,{exitCode:xm.EXIT_CODE.DEVS,trackerType:nf.ETrackerType.parseException,prefix:`[${n}] failed to [${r}]:`});if((0,ir.get)(this.spec,"yaml.use3x")&&(0,ir.get)(this.spec,"yaml.content.validation")){let a=yield this.getSchemaByInstance(s);if((0,ir.isEmpty)(a))continue;let c=i.compile(JSON.parse(a));if(!c(o.props)){let l=c.errors;if(!l)continue;for(let f of l)f.instancePath=o.projectName+"/props"+f.instancePath,f.keyword==="enum"&&(f.message=f.message+": "+f.params.allowedValues.join(", "));u=u.concat(l)}}}if((0,gXt.default)(r,"Command is required"),!(0,ir.isEmpty)(u))throw new nf.DevsError(`${i.errorsText(u,{dataVar:"",separator:`
|
|
1026
|
-
`})}`,{exitCode:xm.EXIT_CODE.DEVS,trackerType:nf.ETrackerType.parseException,prefix:"Function props validation error:"})})}getSchemaByInstance(t){return!t||!t.getSchema?null:t.getSchema()}download(t){return pc(this,void 0,void 0,function*(){let{command:r}=this.spec,n=[];for(let u of t){let i=this.glog.__generate(u.projectName),o=yield(0,dXt.default)(u.component,{logger:i,engineLogger:this.logger}),s=(0,ir.get)(o,`commands.${r}.verify`);n.push(Object.assign(Object.assign({},u),{instance:o,logger:i,verify:(0,ir.isUndefined)(s)?!0:s}))}return n})}getLogger(){let t=(0,ir.get)(this.options,"logConfig.customLogger");if(t){if(Am("use custom logger"),(t==null?void 0:t.CODE)===mXt.default.CODE)return t;throw new Error("customLogger must be instance of Logger")}return new mXt.default(Object.assign(Object.assign({traceId:(0,nf.traceid)(),logDir:hXt.default.join((0,nf.getRootHome)(),"logs")},this.options.logConfig),{level:(0,ir.get)(this.options,"logConfig.level",this.spec.debug?"DEBUG":void 0)}))}recordContext(t,r={}){let{status:n,error:u,output:i,process_time:o,props:s,done:a}=r;this.context.stepCount=t.stepCount,this.context.steps=(0,ir.map)(this.context.steps,c=>(c.stepCount===t.stepCount&&(n&&(c.status=n),u&&(c.error=u,this.context.error.push(u)),s&&(c.props=s),i&&(c.output=i),a&&(c.done=a),(0,ir.has)(r,"process_time")&&(c.process_time=o)),c))}getInfo(t){return pc(this,void 0,void 0,function*(){if(!t)return;let{props:r}=t,n=JSON.stringify(r),u=n.matchAll(xm.INFO_EXP_PATTERN),i=new Set;for(let a of u)a[1]&&i.add(a[1]);let o=n.matchAll(xm.COMPONENT_EXP_PATTERN);for(let a of o)a[1]&&i.add(a[1]);if((0,ir.isEmpty)(i))return;let s=(0,ir.map)(Array.from(i),a=>this.context.allSteps.find(c=>c.projectName===a));yield Promise.all((0,ir.map)(s,a=>pc(this,void 0,void 0,function*(){var c;if(!a)return;let l=(0,ir.get)(this.info,a.projectName);if(!l||(0,ir.isEmpty)(l)||(0,ir.isNil)(l)){this.logger.write(`${Xg.default.gray(`execute info command of [${a.projectName}]...`)}`);let f=(0,ir.cloneDeep)(this.options.args);f&&(f[0]="info");let p=new Xo.default((0,ir.get)(this.spec,"baselineTemplate"),{argv:f,logger:this.logger});p.start();let h=p.parseActions(a.actions,Xo.IActionLevel.PROJECT),d=new Tke.default(h,{hookLevel:Xo.IActionLevel.PROJECT,projectName:a.projectName,logger:a.logger,skipActions:this.spec.skipActions});d.setValue("magic",yield this.getFilterContext(a)),d.setValue("step",a),d.setValue("command","info");let m=yield this.getProps(a);d.setValue("componentProps",m);let v=(yield(c=this.actionInstance)===null||c===void 0?void 0:c.start(Xo.IHookType.PRE,m))||{},D=(0,ir.cloneDeep)(this.spec);D.command="info";let g={};try{g=yield this.doSrc(a,v,D),(0,ir.set)(m,"output",g);let E=yield d==null?void 0:d.start(Xo.IHookType.SUCCESS,m);(0,ir.isEmpty)(E)||(g=(0,ir.get)(E,"step.output"))}catch(E){this.logger.warn((0,ir.get)(E,"data")),g=(0,ir.get)(yield d==null?void 0:d.start(Xo.IHookType.FAIL,m),"step.output")||{}}let y=yield d==null?void 0:d.start(Xo.IHookType.COMPLETE,m);(0,ir.isEmpty)(y)||(g=(0,ir.get)(y,"step.output")),(0,ir.set)(this.info,a.projectName,g),this.logger.write(`${Xg.default.gray(`[${a.projectName}] info command executed.`)}`)}})))})}getFilterContext(t){return pc(this,void 0,void 0,function*(){yield this.getInfo(t);let r={cwd:hXt.default.dirname(this.spec.yaml.path),vars:this.spec.yaml.vars,resources:{},components:{},__runtime:this.options.verify?"engine":"parse",__steps:this.context.steps};for(let n of this.context.allSteps){let u=(0,ir.find)(this.context.steps,i=>i.projectName===n.projectName);r.resources[n.projectName]={output:n.output||(0,ir.get)(u,"output")||{},props:n.props||(0,ir.get)(u,"props")||{},info:this.info[n.projectName]||{},vars:n.vars||(0,ir.get)(u,"vars")||{}},r.components[n.projectName]={output:this.info[n.projectName]||{}}}return t&&(r.credential=t.credential,r.that={name:t.projectName,access:t.access,component:t.component,props:r.resources[t.projectName].props,output:r.resources[t.projectName].output,vars:r.resources[t.projectName].vars}),r})}doCompleted(){return pc(this,void 0,void 0,function*(){if(this.context.completed=!0,this.context.status===qu.STEP_STATUS.FAILURE)try{yield this.globalActionInstance.start(Xo.IHookType.FAIL,this.context)}catch(t){this.context.status=qu.STEP_STATUS.FAILURE,this.context.error.push(t)}if(this.context.status===qu.STEP_STATUS.SUCCESS)try{yield this.globalActionInstance.start(Xo.IHookType.SUCCESS,this.context)}catch(t){this.context.status=qu.STEP_STATUS.FAILURE,this.context.error.push(t)}try{yield this.globalActionInstance.start(Xo.IHookType.COMPLETE,this.context)}catch(t){this.context.status=qu.STEP_STATUS.FAILURE,this.context.error.push(t)}})}handleSrc(t){var r,n,u;return pc(this,void 0,void 0,function*(){let{command:i}=this.spec;try{yield this.handleAfterSrc(t)}catch{try{let a=yield(r=this.actionInstance)===null||r===void 0?void 0:r.start(Xo.IHookType.FAIL,this.record.componentProps);this.recordContext(t,(0,ir.get)(a,"pluginOutput",{}))}catch(a){this.record.status=qu.STEP_STATUS.FAILURE,this.recordContext(t,{error:a})}}if(this.record.status===qu.STEP_STATUS.SUCCESS)try{this.actionInstance.setValue("magic",yield this.getFilterContext(t));let s=yield(n=this.actionInstance)===null||n===void 0?void 0:n.start(Xo.IHookType.SUCCESS,Object.assign(Object.assign({},this.record.componentProps),{output:(0,ir.get)(t,"output",{})}));this.recordContext(t,(0,ir.get)(s,"pluginOutput",{}))}catch(s){this.record.status=qu.STEP_STATUS.FAILURE,this.recordContext(t,{error:s})}try{let s=yield(u=this.actionInstance)===null||u===void 0?void 0:u.start(Xo.IHookType.COMPLETE,Object.assign(Object.assign({},this.record.componentProps),{output:(0,ir.get)(t,"output",{})}));this.recordContext(t,(0,ir.get)(s,"pluginOutput",{}))}catch(s){this.record.status=qu.STEP_STATUS.FAILURE,this.recordContext(t,{error:s})}let o=(0,B1.getProcessTime)(this.record.startTime);this.recordContext(t,{done:!0,process_time:o}),this.record.status===qu.STEP_STATUS.SUCCESS&&this.logger.write(`${Xg.default.green("\u2714")} ${Xg.default.gray(`[${t.projectName}] completed (${o}s)`)}`),this.record.status===qu.STEP_STATUS.FAILURE&&this.logger.write(`${Xg.default.red("\u2716")} ${Xg.default.gray(`[${t.projectName}] failed to [${i}] (${o}s)`)}`),this.glog.__unset(t.projectName)})}handleAfterSrc(t){var r;return pc(this,void 0,void 0,function*(){try{Am(`project item: ${(0,B1.stringify)(t)}`);let{command:n}=this.spec;t.credential=yield(0,B1.getCredential)(t.access,this.logger);let{AccessKeyID:u,AccessKeySecret:i}=t.credential;this.glog.__setSecret([u,i]);let o=this.parseSpecInstance.parseActions(t.actions,Xo.IActionLevel.PROJECT);Am(`project actions: ${JSON.stringify(o)}`),this.actionInstance=new Tke.default(o,{hookLevel:Xo.IActionLevel.PROJECT,projectName:t.projectName,logger:t.logger,skipActions:this.spec.skipActions}),this.actionInstance.setValue("magic",yield this.getFilterContext(t)),this.actionInstance.setValue("step",t),this.actionInstance.setValue("command",n);let s=yield this.getProps(t);this.actionInstance.setValue("componentProps",s);let a=yield(r=this.actionInstance)===null||r===void 0?void 0:r.start(Xo.IHookType.PRE,s),c=yield this.doSrc(t,a);this.record.editStatusAble&&(this.record.status=qu.STEP_STATUS.SUCCESS),t.id&&(this.record.steps=Object.assign(Object.assign({},this.record.steps),{[t.id]:{status:qu.STEP_STATUS.SUCCESS,output:c}})),this.recordContext(t,{status:qu.STEP_STATUS.SUCCESS,output:c})}catch(n){let u=n,i=t["continue-on-error"]===!0?qu.STEP_STATUS.ERROR_WITH_CONTINUE:qu.STEP_STATUS.FAILURE;if(this.record.editStatusAble&&(this.record.status=i),i===qu.STEP_STATUS.FAILURE&&(this.record.editStatusAble=!1),t.id&&(this.record.steps=Object.assign(Object.assign({},this.record.steps),{[t.id]:{status:i}})),t["continue-on-error"])this.recordContext(t,{status:i});else throw this.recordContext(t,{status:i,error:u}),u}})}getProps(t){return pc(this,void 0,void 0,function*(){let r=yield this.getFilterContext(t);Am(`magic context: ${JSON.stringify(r)}`);let n=(0,Xo.getInputs)(t.props,r),{projectName:u,command:i}=this.spec,o=(0,ir.get)(this.baselineSpec,`yaml.content.resources.${t.projectName}`)?(0,ir.filter)(this.diffs,a=>{var c;return(c=a.path)===null||c===void 0?void 0:c.startsWith(`resources.${t.projectName}`)}):[],s={cwd:this.options.cwd,userAgent:(0,nf.getUserAgent)({component:t.instance.__info}),name:(0,ir.get)(this.spec,"yaml.appName"),props:n,command:i,args:(0,ir.filter)(this.options.args,a=>!(0,ir.includes)([u,i],a)),yaml:{path:(0,ir.get)(this.spec,"yaml.path")},resource:{name:t.projectName,component:t.component,access:t.access},outputs:this.getOutput(),getCredential:()=>pc(this,void 0,void 0,function*(){let a=yield new Efu.default({logger:this.logger}).get(t.access);return(0,ir.get)(a,"credential",{})}),diffs:o};return this.recordContext(t,{props:n}),Am(`get props: ${JSON.stringify(s)}`),s})}doSrc(t,r={},n=this.spec){return pc(this,void 0,void 0,function*(){let{command:u="",projectName:i,yaml:o}=n,s=yield this.getProps(t),a=o.useFlow?(0,ir.filter)(this.context.steps,c=>c.flowId===t.flowId):[t];if((0,ir.size)(a)>1&&s.args.push("-y"),this.record.componentProps=(0,ir.isEmpty)(r.pluginOutput)?s:r.pluginOutput,Am(`component props: ${(0,B1.stringify)(this.record.componentProps)}`),this.actionInstance.setValue("componentProps",this.record.componentProps),i){if((0,ir.isFunction)(t.instance[u]))try{return yield t.instance[u](this.record.componentProps)}catch(l){if((0,B1.getAllowFailure)(t.allow_failure,{exitCode:xm.EXIT_CODE.COMPONENT,command:u}))return;let p=l;throw new nf.DevsError(p.message,{data:(0,ir.get)(l,"data"),stack:p.stack,exitCode:xm.EXIT_CODE.COMPONENT,prefix:`[${t.projectName}] failed to [${u}]:`,trackerType:nf.ETrackerType.runtimeException})}if((0,B1.getAllowFailure)(t.allow_failure,{exitCode:xm.EXIT_CODE.DEVS,command:u}))return;throw new nf.DevsError(`The [${u}] command was not found.`,{exitCode:xm.EXIT_CODE.DEVS,tips:`Please check the component ${t.component} has the ${u} command. Serverless Devs documents\uFF1A${Xg.default.underline("https://docs.serverless-devs.com/")}`,prefix:`[${t.projectName}] failed to [${u}]:`,trackerType:nf.ETrackerType.parseException})}if((0,ir.isFunction)(t.instance[u]))try{return yield t.instance[u](this.record.componentProps)}catch(c){if((0,B1.getAllowFailure)(t.allow_failure,{exitCode:xm.EXIT_CODE.COMPONENT,command:u}))return;let f=c;throw new nf.DevsError(f.message,{data:(0,ir.get)(c,"data"),stack:f.stack,exitCode:xm.EXIT_CODE.COMPONENT,prefix:`[${t.projectName}] failed to [${u}]:`,trackerType:nf.ETrackerType.runtimeException})}this.logger.tips(`The [${u}] command was not found.`,`Please check the component ${t.component} has the ${u} command. Serverless Devs documents\uFF1Ahttps://docs.serverless-devs.com/`)})}doSkip(t){return pc(this,void 0,void 0,function*(){return t.id&&(this.record.steps=Object.assign(Object.assign({},this.record.steps),{[t.id]:{status:qu.STEP_STATUS.SKIP}})),this.recordContext(t,{status:qu.STEP_STATUS.SKIP,process_time:0}),Promise.resolve()})}};ko.default=Pke});var jke={};zr(jke,{default:()=>Afu});var Fm,xoe,_m,Ro,Rke,DXt,Ike,EXt,xfu,Afu,Lke=bt(()=>{Fm=nt(jne()),xoe=nt(require("path")),_m=nt(dr()),Ro=nt(ur());hr();sn();Rke=nt(dr()),DXt=nt(jne());mF();Dv();bv();Ike=class{constructor(t,r={}){this.program=t;this.spec=r}async init(){let t=process.argv.slice(2),{_:r,help:n}=(0,Rke.parseArgv)(t);if(r.length===0&&n)return await this.showSimpleHelp();if(r.length===1&&(this.customProgram=this.program.command(r[0]).allowUnknownOption(),n))return await this.showHelp();if(r.length>1&&(this.customProgram=this.program.command(r[0]).allowUnknownOption(),n))return await this.showComflexHelp();this.customProgram.action(async()=>{await this.doExecCommand()})}async doExecCommand(){let t=process.argv.slice(2),{template:r,help:n,access:u,debug:i,output:o,...s}=(0,Rke.parseArgv)(t),a=await this.getReportComponent(),c={uid:await s7(u),argv:t,command:this.spec.command,component:a,userAgent:(0,_m.getUserAgent)({component:a})};try{let l=await DXt.execCommand({syaml:r,serverName:this.spec.projectName,method:this.spec.command,args:process.argv.slice(2),globalArgs:{access:u,skipActions:s["skip-actions"],debug:i,help:n,output:o||s["output-format"]},env:{serverless_devs_temp_argv:JSON.stringify(process.argv.slice(2))}});Vf(l),el("report.js",{...c,type:"command"})}catch(l){Kd(new _m.DevsError(l.message,{stack:l.stack,trackerType:_m.ETrackerType.runtimeException}),c)}}async getReportComponent(){let t=[],r=(0,Ro.get)(this.spec,"components");for(let n of r){if((0,Ro.isEmpty)(n))continue;let u=await(0,Fm.loadComponent)(n),i=(0,_m.getYamlContent)(xoe.default.join(u.__path,"publish.yaml")),o=(0,Ro.get)(i,"Version");t.push(o?`${(0,Ro.get)(i,"Name")}@${o}`:n)}return(0,Ro.join)(t,",")}async showSimpleHelp(){let{steps:t,components:r}=this.spec;if((0,Ro.isEmpty)(t))return;let n=["Custom Commands"," Can be used in projects with Serverless Devs Yaml. Usage\uFF1A"," - s <component_command>\uFF1AOperate on the project, E.x: s deploy"," - s <project_name> <component_command>\uFF1AOperate on the resource, E.x: s website deploy"," More information: https://docs.serverless-devs.com/user-guide/builtin/custom/"];if(r.length===1)return(await EXt((0,Ro.first)(r))).join(`
|
|
1026
|
+
`})}`,{exitCode:xm.EXIT_CODE.DEVS,trackerType:nf.ETrackerType.parseException,prefix:"Function props validation error:"})})}getSchemaByInstance(t){return!t||!t.getSchema?null:t.getSchema()}download(t){return pc(this,void 0,void 0,function*(){let{command:r}=this.spec,n=[];for(let u of t){let i=this.glog.__generate(u.projectName),o=yield(0,dXt.default)(u.component,{logger:i,engineLogger:this.logger}),s=(0,ir.get)(o,`commands.${r}.verify`);n.push(Object.assign(Object.assign({},u),{instance:o,logger:i,verify:(0,ir.isUndefined)(s)?!0:s}))}return n})}getLogger(){let t=(0,ir.get)(this.options,"logConfig.customLogger");if(t){if(Am("use custom logger"),(t==null?void 0:t.CODE)===mXt.default.CODE)return t;throw new Error("customLogger must be instance of Logger")}return new mXt.default(Object.assign(Object.assign({traceId:(0,nf.traceid)(),logDir:hXt.default.join((0,nf.getRootHome)(),"logs")},this.options.logConfig),{level:(0,ir.get)(this.options,"logConfig.level",this.spec.debug?"DEBUG":void 0)}))}recordContext(t,r={}){let{status:n,error:u,output:i,process_time:o,props:s,done:a}=r;this.context.stepCount=t.stepCount,this.context.steps=(0,ir.map)(this.context.steps,c=>(c.stepCount===t.stepCount&&(n&&(c.status=n),u&&(c.error=u,this.context.error.push(u)),s&&(c.props=s),i&&(c.output=i),a&&(c.done=a),(0,ir.has)(r,"process_time")&&(c.process_time=o)),c))}getInfo(t){return pc(this,void 0,void 0,function*(){if(!t)return;let{props:r}=t,n=JSON.stringify(r),u=n.matchAll(xm.INFO_EXP_PATTERN),i=new Set;for(let a of u)a[1]&&i.add(a[1]);let o=n.matchAll(xm.COMPONENT_EXP_PATTERN);for(let a of o)a[1]&&i.add(a[1]);if((0,ir.isEmpty)(i))return;let s=(0,ir.map)(Array.from(i),a=>this.context.allSteps.find(c=>c.projectName===a));yield Promise.all((0,ir.map)(s,a=>pc(this,void 0,void 0,function*(){var c;if(!a)return;let l=(0,ir.get)(this.info,a.projectName);if(!l||(0,ir.isEmpty)(l)||(0,ir.isNil)(l)){this.logger.write(`${Xg.default.gray(`execute info command of [${a.projectName}]...`)}`);let f=(0,ir.cloneDeep)(this.options.args);f&&(f[0]="info");let p=new Xo.default((0,ir.get)(this.spec,"yaml.path"),{argv:f,logger:this.logger});p.start();let h=p.parseActions(a.actions,Xo.IActionLevel.PROJECT),d=new Tke.default(h,{hookLevel:Xo.IActionLevel.PROJECT,projectName:a.projectName,logger:a.logger,skipActions:this.spec.skipActions});d.setValue("magic",yield this.getFilterContext(a)),d.setValue("step",a),d.setValue("command","info");let m=yield this.getProps(a);d.setValue("componentProps",m);let v=(yield(c=this.actionInstance)===null||c===void 0?void 0:c.start(Xo.IHookType.PRE,m))||{},D=(0,ir.cloneDeep)(this.spec);D.command="info";let g={};try{g=yield this.doSrc(a,v,D),(0,ir.set)(m,"output",g);let E=yield d==null?void 0:d.start(Xo.IHookType.SUCCESS,m);(0,ir.isEmpty)(E)||(g=(0,ir.get)(E,"step.output"))}catch(E){this.logger.warn((0,ir.get)(E,"data")),g=(0,ir.get)(yield d==null?void 0:d.start(Xo.IHookType.FAIL,m),"step.output")||{}}let y=yield d==null?void 0:d.start(Xo.IHookType.COMPLETE,m);(0,ir.isEmpty)(y)||(g=(0,ir.get)(y,"step.output")),(0,ir.set)(this.info,a.projectName,g),this.logger.write(`${Xg.default.gray(`[${a.projectName}] info command executed.`)}`)}})))})}getFilterContext(t){return pc(this,void 0,void 0,function*(){yield this.getInfo(t);let r={cwd:hXt.default.dirname(this.spec.yaml.path),vars:this.spec.yaml.vars,resources:{},components:{},__runtime:this.options.verify?"engine":"parse",__steps:this.context.steps};for(let n of this.context.allSteps){let u=(0,ir.find)(this.context.steps,i=>i.projectName===n.projectName);r.resources[n.projectName]={output:n.output||(0,ir.get)(u,"output")||{},props:n.props||(0,ir.get)(u,"props")||{},info:this.info[n.projectName]||{},vars:n.vars||(0,ir.get)(u,"vars")||{}},r.components[n.projectName]={output:this.info[n.projectName]||{}}}return t&&(r.credential=t.credential,r.that={name:t.projectName,access:t.access,component:t.component,props:r.resources[t.projectName].props,output:r.resources[t.projectName].output,vars:r.resources[t.projectName].vars}),r})}doCompleted(){return pc(this,void 0,void 0,function*(){if(this.context.completed=!0,this.context.status===qu.STEP_STATUS.FAILURE)try{yield this.globalActionInstance.start(Xo.IHookType.FAIL,this.context)}catch(t){this.context.status=qu.STEP_STATUS.FAILURE,this.context.error.push(t)}if(this.context.status===qu.STEP_STATUS.SUCCESS)try{yield this.globalActionInstance.start(Xo.IHookType.SUCCESS,this.context)}catch(t){this.context.status=qu.STEP_STATUS.FAILURE,this.context.error.push(t)}try{yield this.globalActionInstance.start(Xo.IHookType.COMPLETE,this.context)}catch(t){this.context.status=qu.STEP_STATUS.FAILURE,this.context.error.push(t)}})}handleSrc(t){var r,n,u;return pc(this,void 0,void 0,function*(){let{command:i}=this.spec;try{yield this.handleAfterSrc(t)}catch{try{let a=yield(r=this.actionInstance)===null||r===void 0?void 0:r.start(Xo.IHookType.FAIL,this.record.componentProps);this.recordContext(t,(0,ir.get)(a,"pluginOutput",{}))}catch(a){this.record.status=qu.STEP_STATUS.FAILURE,this.recordContext(t,{error:a})}}if(this.record.status===qu.STEP_STATUS.SUCCESS)try{this.actionInstance.setValue("magic",yield this.getFilterContext(t));let s=yield(n=this.actionInstance)===null||n===void 0?void 0:n.start(Xo.IHookType.SUCCESS,Object.assign(Object.assign({},this.record.componentProps),{output:(0,ir.get)(t,"output",{})}));this.recordContext(t,(0,ir.get)(s,"pluginOutput",{}))}catch(s){this.record.status=qu.STEP_STATUS.FAILURE,this.recordContext(t,{error:s})}try{let s=yield(u=this.actionInstance)===null||u===void 0?void 0:u.start(Xo.IHookType.COMPLETE,Object.assign(Object.assign({},this.record.componentProps),{output:(0,ir.get)(t,"output",{})}));this.recordContext(t,(0,ir.get)(s,"pluginOutput",{}))}catch(s){this.record.status=qu.STEP_STATUS.FAILURE,this.recordContext(t,{error:s})}let o=(0,B1.getProcessTime)(this.record.startTime);this.recordContext(t,{done:!0,process_time:o}),this.record.status===qu.STEP_STATUS.SUCCESS&&this.logger.write(`${Xg.default.green("\u2714")} ${Xg.default.gray(`[${t.projectName}] completed (${o}s)`)}`),this.record.status===qu.STEP_STATUS.FAILURE&&this.logger.write(`${Xg.default.red("\u2716")} ${Xg.default.gray(`[${t.projectName}] failed to [${i}] (${o}s)`)}`),this.glog.__unset(t.projectName)})}handleAfterSrc(t){var r;return pc(this,void 0,void 0,function*(){try{Am(`project item: ${(0,B1.stringify)(t)}`);let{command:n}=this.spec;t.credential=yield(0,B1.getCredential)(t.access,this.logger);let{AccessKeyID:u,AccessKeySecret:i}=t.credential;this.glog.__setSecret([u,i]);let o=this.parseSpecInstance.parseActions(t.actions,Xo.IActionLevel.PROJECT);Am(`project actions: ${JSON.stringify(o)}`),this.actionInstance=new Tke.default(o,{hookLevel:Xo.IActionLevel.PROJECT,projectName:t.projectName,logger:t.logger,skipActions:this.spec.skipActions}),this.actionInstance.setValue("magic",yield this.getFilterContext(t)),this.actionInstance.setValue("step",t),this.actionInstance.setValue("command",n);let s=yield this.getProps(t);this.actionInstance.setValue("componentProps",s);let a=yield(r=this.actionInstance)===null||r===void 0?void 0:r.start(Xo.IHookType.PRE,s),c=yield this.doSrc(t,a);this.record.editStatusAble&&(this.record.status=qu.STEP_STATUS.SUCCESS),t.id&&(this.record.steps=Object.assign(Object.assign({},this.record.steps),{[t.id]:{status:qu.STEP_STATUS.SUCCESS,output:c}})),this.recordContext(t,{status:qu.STEP_STATUS.SUCCESS,output:c})}catch(n){let u=n,i=t["continue-on-error"]===!0?qu.STEP_STATUS.ERROR_WITH_CONTINUE:qu.STEP_STATUS.FAILURE;if(this.record.editStatusAble&&(this.record.status=i),i===qu.STEP_STATUS.FAILURE&&(this.record.editStatusAble=!1),t.id&&(this.record.steps=Object.assign(Object.assign({},this.record.steps),{[t.id]:{status:i}})),t["continue-on-error"])this.recordContext(t,{status:i});else throw this.recordContext(t,{status:i,error:u}),u}})}getProps(t){return pc(this,void 0,void 0,function*(){let r=yield this.getFilterContext(t);Am(`magic context: ${JSON.stringify(r)}`);let n=(0,Xo.getInputs)(t.props,r),{projectName:u,command:i}=this.spec,o=(0,ir.get)(this.baselineSpec,`yaml.content.resources.${t.projectName}`)?(0,ir.filter)(this.diffs,a=>{var c;return(c=a.path)===null||c===void 0?void 0:c.startsWith(`resources.${t.projectName}`)}):[],s={cwd:this.options.cwd,userAgent:(0,nf.getUserAgent)({component:t.instance.__info}),name:(0,ir.get)(this.spec,"yaml.appName"),props:n,command:i,args:(0,ir.filter)(this.options.args,a=>!(0,ir.includes)([u,i],a)),yaml:{path:(0,ir.get)(this.spec,"yaml.path")},resource:{name:t.projectName,component:t.component,access:t.access},outputs:this.getOutput(),getCredential:()=>pc(this,void 0,void 0,function*(){let a=yield new Efu.default({logger:this.logger}).get(t.access);return(0,ir.get)(a,"credential",{})}),diffs:o};return this.recordContext(t,{props:n}),Am(`get props: ${JSON.stringify(s)}`),s})}doSrc(t,r={},n=this.spec){return pc(this,void 0,void 0,function*(){let{command:u="",projectName:i,yaml:o}=n,s=yield this.getProps(t),a=o.useFlow?(0,ir.filter)(this.context.steps,c=>c.flowId===t.flowId):[t];if((0,ir.size)(a)>1&&s.args.push("-y"),this.record.componentProps=(0,ir.isEmpty)(r.pluginOutput)?s:r.pluginOutput,Am(`component props: ${(0,B1.stringify)(this.record.componentProps)}`),this.actionInstance.setValue("componentProps",this.record.componentProps),i){if((0,ir.isFunction)(t.instance[u]))try{return yield t.instance[u](this.record.componentProps)}catch(l){if((0,B1.getAllowFailure)(t.allow_failure,{exitCode:xm.EXIT_CODE.COMPONENT,command:u}))return;let p=l;throw new nf.DevsError(p.message,{data:(0,ir.get)(l,"data"),stack:p.stack,exitCode:xm.EXIT_CODE.COMPONENT,prefix:`[${t.projectName}] failed to [${u}]:`,trackerType:nf.ETrackerType.runtimeException})}if((0,B1.getAllowFailure)(t.allow_failure,{exitCode:xm.EXIT_CODE.DEVS,command:u}))return;throw new nf.DevsError(`The [${u}] command was not found.`,{exitCode:xm.EXIT_CODE.DEVS,tips:`Please check the component ${t.component} has the ${u} command. Serverless Devs documents\uFF1A${Xg.default.underline("https://docs.serverless-devs.com/")}`,prefix:`[${t.projectName}] failed to [${u}]:`,trackerType:nf.ETrackerType.parseException})}if((0,ir.isFunction)(t.instance[u]))try{return yield t.instance[u](this.record.componentProps)}catch(c){if((0,B1.getAllowFailure)(t.allow_failure,{exitCode:xm.EXIT_CODE.COMPONENT,command:u}))return;let f=c;throw new nf.DevsError(f.message,{data:(0,ir.get)(c,"data"),stack:f.stack,exitCode:xm.EXIT_CODE.COMPONENT,prefix:`[${t.projectName}] failed to [${u}]:`,trackerType:nf.ETrackerType.runtimeException})}this.logger.tips(`The [${u}] command was not found.`,`Please check the component ${t.component} has the ${u} command. Serverless Devs documents\uFF1Ahttps://docs.serverless-devs.com/`)})}doSkip(t){return pc(this,void 0,void 0,function*(){return t.id&&(this.record.steps=Object.assign(Object.assign({},this.record.steps),{[t.id]:{status:qu.STEP_STATUS.SKIP}})),this.recordContext(t,{status:qu.STEP_STATUS.SKIP,process_time:0}),Promise.resolve()})}};ko.default=Pke});var jke={};zr(jke,{default:()=>Afu});var Fm,xoe,_m,Ro,Rke,DXt,Ike,EXt,xfu,Afu,Lke=bt(()=>{Fm=nt(jne()),xoe=nt(require("path")),_m=nt(dr()),Ro=nt(ur());hr();sn();Rke=nt(dr()),DXt=nt(jne());mF();Dv();bv();Ike=class{constructor(t,r={}){this.program=t;this.spec=r}async init(){let t=process.argv.slice(2),{_:r,help:n}=(0,Rke.parseArgv)(t);if(r.length===0&&n)return await this.showSimpleHelp();if(r.length===1&&(this.customProgram=this.program.command(r[0]).allowUnknownOption(),n))return await this.showHelp();if(r.length>1&&(this.customProgram=this.program.command(r[0]).allowUnknownOption(),n))return await this.showComflexHelp();this.customProgram.action(async()=>{await this.doExecCommand()})}async doExecCommand(){let t=process.argv.slice(2),{template:r,help:n,access:u,debug:i,output:o,...s}=(0,Rke.parseArgv)(t),a=await this.getReportComponent(),c={uid:await s7(u),argv:t,command:this.spec.command,component:a,userAgent:(0,_m.getUserAgent)({component:a})};try{let l=await DXt.execCommand({syaml:r,serverName:this.spec.projectName,method:this.spec.command,args:process.argv.slice(2),globalArgs:{access:u,skipActions:s["skip-actions"],debug:i,help:n,output:o||s["output-format"]},env:{serverless_devs_temp_argv:JSON.stringify(process.argv.slice(2))}});Vf(l),el("report.js",{...c,type:"command"})}catch(l){Kd(new _m.DevsError(l.message,{stack:l.stack,trackerType:_m.ETrackerType.runtimeException}),c)}}async getReportComponent(){let t=[],r=(0,Ro.get)(this.spec,"components");for(let n of r){if((0,Ro.isEmpty)(n))continue;let u=await(0,Fm.loadComponent)(n),i=(0,_m.getYamlContent)(xoe.default.join(u.__path,"publish.yaml")),o=(0,Ro.get)(i,"Version");t.push(o?`${(0,Ro.get)(i,"Name")}@${o}`:n)}return(0,Ro.join)(t,",")}async showSimpleHelp(){let{steps:t,components:r}=this.spec;if((0,Ro.isEmpty)(t))return;let n=["Custom Commands"," Can be used in projects with Serverless Devs Yaml. Usage\uFF1A"," - s <component_command>\uFF1AOperate on the project, E.x: s deploy"," - s <project_name> <component_command>\uFF1AOperate on the resource, E.x: s website deploy"," More information: https://docs.serverless-devs.com/user-guide/builtin/custom/"];if(r.length===1)return(await EXt((0,Ro.first)(r))).join(`
|
|
1027
1027
|
`);let u={};return(0,Ro.each)(t,i=>{u[`${i.projectName} [options]`]=`Please use [s ${i.projectName} -h] obtain the documentation.`}),n.push(Fm.publishHelp.helpInfo(u,"",27)),n.join(`
|
|
1028
1028
|
`)}async showHelp(){var n;let{projectName:t,steps:r}=this.spec;if(this.customProgram.helpInformation=()=>"",t){let u=(n=(0,Ro.find)(r,o=>o.projectName===t))==null?void 0:n.component,i=await xfu(u);return this.customProgram.helpInformation=()=>i}return await this.doExecCommand()}async showComflexHelp(){return this.customProgram.helpInformation=()=>"",await this.doExecCommand()}},EXt=async e=>{let t=[],r=await(0,Fm.loadComponent)(e),n=xoe.default.join(r.__path,"publish.yaml"),i=(0,_m.getYamlContent)(n).Commands;if(i)for(let a in i)t.push({[a]:i[a]});let o=(0,Ro.isPlainObject)((0,Ro.first)((0,Ro.values)((0,Ro.get)(t,"[0]")))),s=[];if(o){s.push(ht.underline(ht.bold(`Custom Commands
|
|
1029
1029
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serverless-devs/s3",
|
|
3
|
-
"version": "3.1.11-
|
|
3
|
+
"version": "3.1.11-0f6acfa8",
|
|
4
4
|
"description": "Serverless devs tool, serverless developer tool, supports Alibaba cloud, AWS, azure, baidu cloud, Huawei cloud, Google cloud and Tencent cloud.",
|
|
5
5
|
"homepage": "https://www.serverless-devs.com",
|
|
6
6
|
"keywords": [
|
|
@@ -66,11 +66,11 @@
|
|
|
66
66
|
"devDependencies": {
|
|
67
67
|
"@serverless-devs/core": "^0.1.67-beta.1",
|
|
68
68
|
"@serverless-devs/credential": "^0.0.10",
|
|
69
|
-
"@serverless-devs/engine": "^0.1.6-beta.
|
|
69
|
+
"@serverless-devs/engine": "^0.1.6-beta.8",
|
|
70
70
|
"@serverless-devs/load-application": "^0.0.16-beta.1",
|
|
71
71
|
"@serverless-devs/load-component": "^0.0.9",
|
|
72
72
|
"@serverless-devs/logger": "^0.0.6",
|
|
73
|
-
"@serverless-devs/parse-spec": "^0.0.30-beta.
|
|
73
|
+
"@serverless-devs/parse-spec": "^0.0.30-beta.2",
|
|
74
74
|
"@serverless-devs/registry": "^0.0.12-beta.6",
|
|
75
75
|
"@serverless-devs/secret": "^0.0.3",
|
|
76
76
|
"@serverless-devs/utils": "^0.0.18",
|