jd-minigame-ci 1.0.2 → 1.0.3

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.
Files changed (2) hide show
  1. package/dist/jgc.js +1 -1
  2. package/package.json +1 -1
package/dist/jgc.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- !function(e,n){if("object"==typeof exports&&"object"==typeof module)module.exports=n();else if("function"==typeof define&&define.amd)define([],n);else{var t=n();for(var r in t)("object"==typeof exports?exports:e)[r]=t[r]}}(global,()=>(()=>{var e={220:e=>{function n(e){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n.keys=()=>[],n.resolve=n,n.id=220,e.exports=n},241:e=>{"use strict";e.exports=require("qrcode-terminal")},593:e=>{function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function t(e,n){for(var t=0;t<n.length;t++){var o=n[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,r(o.key),o)}}function r(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==n(t)?t:t+""}var o=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.configPrompts=[{name:"versionName",type:"input",message:"版本号:",default:"1.0.0"},{name:"versionFeature",type:"input",message:"版本特性(长度为10~30个字符):",default:""},{name:"useGuide",type:"input",message:"使用指南(仅限文字和代码,长度为20~1000个字符):",default:"插件使用指南不建议在这里填写,建议到小游戏插件MP控制台提审时修改,这里是占位文本"}]},(n=[{key:"getPrompts",value:function(){return this.configPrompts}}])&&t(e.prototype,n),r&&t(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r}();e.exports=o},649:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a=t(7372),s=a.sendProgress,c=a.sendLog,u=a.sendComplete,l=a.sendError,f=new(function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.currentAction=null,this.currentStep=0,this.totalSteps=0},n=[{key:"start",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.currentAction=e,this.currentStep=0,this.totalSteps=n,s(e,0,"开始".concat(this.getActionLabel(e),"...")),c("info","开始".concat(this.getActionLabel(e)))}},{key:"update",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;null!==n?this.currentStep=n:this.currentStep++;var t=Math.min(Math.round(this.currentStep/this.totalSteps*100),99);s(this.currentAction,t,e),c("info",e)}},{key:"complete",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;s(this.currentAction,100,"".concat(this.getActionLabel(this.currentAction),"完成")),u(this.currentAction,e),c("info","".concat(this.getActionLabel(this.currentAction),"完成")),this.reset()}},{key:"fail",value:function(e){l(this.currentAction,e),c("error",e),this.reset()}},{key:"log",value:function(e,n){c(e,n)}},{key:"reset",value:function(){this.currentAction=null,this.currentStep=0,this.totalSteps=0}},{key:"getActionLabel",value:function(e){return{"wasm-init":"初始化","wasm-update":"增量更新","wasm-split-dev":"Dev 版本分包","wasm-split-prod":"生产版本分包","wasm-split-report":"函数上报",preview:"预览码生成",rollback:"回滚"}[e]||e}}],n&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t}());e.exports=f},857:e=>{"use strict";e.exports=require("os")},1060:(e,n)=>{function t(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,i,a,s=[],c=!0,u=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(e,n)||function(e,n){if(e){if("string"==typeof e)return r(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?r(e,n):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function r(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function o(e){return"string"==typeof e&&!!e.trim()}n.checkConfigOptions=function(e,n){var r=e||{},i=r.type,a=r.appId,s=r.requestToken,c=r.entry,u=r.versionName,l=r.description;if("game"!==i)return{code:-1,err_msg:"请选择项目构建类型为小游戏"};for(var f=1===n?{appId:a,requestToken:s,entry:c}:{appId:a,requestToken:s,entry:c,versionName:u,description:l},p=0,d=Object.entries(f);p<d.length;p++){var m=t(d[p],2),y=m[0];if(!o(m[1]))return{code:-1,err_msg:"".concat(y," 不能为空")}}return{code:0,err_msg:"ok"}},n.checkPluginConfig=function(e){var n=e||{},r=n.type,i=n.appId,a=n.requestToken,s=n.entry,c=n.versionName;if("plugin"!==r)return{code:-1,err_msg:"请选择项目构建类型为插件"};for(var u={appId:i,requestToken:a,entry:s,versionName:c},l=0,f=Object.entries(u);l<f.length;l++){var p=t(f[l],2),d=p[0];if(!o(p[1]))return{code:-1,err_msg:"".concat(d," 不能为空")}}return{code:0,err_msg:"ok"}}},1426:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}var a=t(7252).Router(),s=t(6928),c=t(857),u=(t(9896),t(6626),t(649)),l=t(9538),f=t(3121),p=t(2425),d=t(8085).SUCCEED_CODE;a.post("/preview",function(){var e,n=(e=r().m(function e(n,o){var i,a,m,y,v,h,b,g,w,S,k,P,j,E,O,_,F,T,x,I,C,G;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:i=n.isPreEnv,a=!i,e.p=1,u.start("preview",5),u.update("正在加载项目配置..."),m=s.posix.resolve("","./jgc.config.js"),y="function"==typeof require?require:t(3709),e.p=2,delete y.cache[y.resolve(m)],v=y(m),e.n=4;break;case 3:return e.p=3,e.v,u.fail("未找到项目配置,请先执行 jgc config"),e.a(2,o.json({code:-1,message:"未找到项目配置,请先执行 jgc config"}));case 4:return b=(h=v).appId,g=h.requestToken,w=h.entry,u.update("正在压缩文件..."),S=c.tmpdir()+s.sep+"package.jd.zip",l.deleteFile(S),e.p=5,e.n=6,new Promise(function(e,n){f(w,S,function(t,r){t?n(t):e(r)})});case 6:e.n=8;break;case 7:return e.p=7,T=e.v,u.fail("压缩失败: ".concat(T.message)),e.a(2,o.json({code:-1,message:"压缩失败: ".concat(T.message)}));case 8:return u.update("正在上传代码包..."),k=new p(a?"prod":"dev"),e.p=9,e.n=10,k.uploadProject({sourceFile:S,appId:b,requestToken:g,isProd:a,showType:"preview"});case 10:if((P=e.v).code===d){e.n=11;break}return u.fail(P.err_msg),e.a(2,o.json({code:-1,message:P.err_msg}));case 11:e.n=13;break;case 12:return e.p=12,x=e.v,u.fail(x.message),e.a(2,o.json({code:-1,message:x.message}));case 13:return u.update("正在构建代码包..."),e.p=14,e.n=15,k.loopQueryBuildStatus({appId:b,requestToken:g,isProd:a,showType:"preview"},P.uuid);case 15:if((j=e.v).code===d){e.n=16;break}return u.fail(j.err_msg),e.a(2,o.json({code:-1,message:j.err_msg}));case 16:e.n=18;break;case 17:return e.p=17,I=e.v,u.fail(I.message),e.a(2,o.json({code:-1,message:I.message}));case 18:return u.update("正在生成预览码..."),E=j.packId,e.p=19,e.n=20,k.generateQrCode({packId:E,appId:b,requestToken:g,showType:"preview"});case 20:if((O=e.v).code===d){e.n=21;break}return u.fail(O.err_msg),e.a(2,o.json({code:-1,message:O.err_msg}));case 21:_=O.imgUrl,F=O.expiredTime,u.complete({imgUrl:_,expiredTime:F}),o.json({code:0,message:"预览码生成成功",data:{imgUrl:_,expiredTime:F}}),e.n=23;break;case 22:e.p=22,C=e.v,u.fail(C.message),o.json({code:-1,message:C.message});case 23:e.n=25;break;case 24:e.p=24,G=e.v,u.fail(G.message),o.json({code:-1,message:G.message});case 25:return e.a(2)}},e,null,[[19,22],[14,17],[9,12],[5,7],[2,3],[1,24]])}),function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})});return function(e,t){return n.apply(this,arguments)}}()),e.exports=a},2078:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,o,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return i(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,o,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(i(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,i(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,i(d,"constructor",f),i(f,"constructor",l),l.displayName="GeneratorFunction",i(f,a,"GeneratorFunction"),i(d),i(d,a,"Generator"),i(d,r,function(){return this}),i(d,"toString",function(){return"[object Generator]"}),(o=function(){return{w:s,m}})()}function i(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}i=function(e,n,t,r){function a(n,t){i(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},i(e,n,t,r)}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function s(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach(function(n){c(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function c(e,n,t){return(n=function(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function u(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function l(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){u(i,r,o,a,s,"next",e)}function s(e){u(i,r,o,a,s,"throw",e)}a(void 0)})}}var f=t(7252).Router(),p=t(8461),d=t(6928),m=t(9896),y=t(857),v=t(8320),h=t(649),b=t(4246),g=t(6626),w=t(9538),S=t(2425),k=p({dest:d.join(y.tmpdir(),"wasm-split-uploads"),limits:{fileSize:52428800}});f.post("/wasm-split-dev",function(){var e=l(o().m(function e(n,t){var r,i,a,c;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=n.isPreEnv,e.p=1,h.start("wasm-split-dev",4),h.update("正在构建 dev 版本分包..."),e.n=2,v.splitBase({srcPath:"",isPreEnv:r,isRelease:!1});case 2:if(0!==(i=e.v).code){e.n=4;break}return b.invalidateCache&&b.invalidateCache(),h.update("正在获取分包信息..."),e.n=3,v.getSplitInfo({srcPath:"",isPreEnv:r});case 3:a=e.v,h.complete(s(s({},i),{},{info:a})),t.json({code:0,message:"dev 版本分包完成",data:s(s({},i),{},{info:a})}),e.n=5;break;case 4:h.fail(i.msg||"分包失败"),t.json({code:-1,message:i.msg||"分包失败"});case 5:e.n=7;break;case 6:e.p=6,c=e.v,h.fail(c.message),t.json({code:-1,message:c.message});case 7:return e.a(2)}},e,null,[[1,6]])}));return function(n,t){return e.apply(this,arguments)}}()),f.post("/wasm-split-prod",function(){var e=l(o().m(function e(n,t){var r,i,a,c;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=n.isPreEnv,e.p=1,h.start("wasm-split-prod",4),h.update("正在构建生产版本分包..."),e.n=2,v.splitBase({srcPath:"",isPreEnv:r,isRelease:!0});case 2:if(0!==(i=e.v).code){e.n=4;break}return b.invalidateCache&&b.invalidateCache(),h.update("正在获取分包信息..."),e.n=3,v.getSplitInfo({srcPath:"",isPreEnv:r});case 3:a=e.v,h.complete(s(s({},i),{},{info:a})),t.json({code:0,message:"prod 版本分包完成",data:s(s({},i),{},{info:a})}),e.n=5;break;case 4:h.fail(i.msg||"分包失败"),t.json({code:-1,message:i.msg||"分包失败"});case 5:e.n=7;break;case 6:e.p=6,c=e.v,h.fail(c.message),t.json({code:-1,message:c.message});case 7:return e.a(2)}},e,null,[[1,6]])}));return function(n,t){return e.apply(this,arguments)}}()),f.get("/wasm-split-info",function(){var e=l(o().m(function e(n,t){var r,i,a;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=n.isPreEnv,e.p=1,e.n=2,v.getSplitInfo({srcPath:"",isPreEnv:r});case 2:0===(i=e.v).code?t.json({code:0,data:i}):t.json({code:-1,message:i.msg||"查询失败"}),e.n=4;break;case 3:e.p=3,a=e.v,t.json({code:-1,message:a.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),f.post("/wasm-split-report",k.single("funcFile"),function(){var e=l(o().m(function e(n,t){var r,i,a,s,c,u,l,f;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:if(r=n.isPreEnv,e.p=1,n.file){e.n=2;break}return e.a(2,t.json({code:-1,message:"请上传函数文件"}));case 2:return h.start("wasm-split-report",3),h.update("正在解析函数文件..."),i=n.file.path,a=m.readFileSync(i,"utf-8"),s=a.split("\n").map(function(e){return e.trim()}).filter(function(e){return e.length>0}),h.update("解析到 ".concat(s.length," 个函数,正在上报...")),e.n=3,v.reportCalledFuncs({srcPath:"",isPreEnv:r,funcList:s,suppressExit:!0});case 3:c=e.v,m.unlinkSync(i),c&&0===c.code?(l=null!==(u=c.reportedCount)&&void 0!==u?u:s.length,h.complete({reportedCount:l}),t.json({code:0,message:"函数上报完成",data:{reportedCount:l}})):(h.fail((null==c?void 0:c.msg)||"上报失败"),t.json({code:-1,message:(null==c?void 0:c.msg)||"上报失败"})),e.n=5;break;case 4:e.p=4,f=e.v,h.fail(f.message),t.json({code:-1,message:f.message});case 5:return e.a(2)}},e,null,[[1,4]])}));return function(n,t){return e.apply(this,arguments)}}()),f.get("/wasm-function-count",function(){var e=l(o().m(function e(n,t){var r,i,a;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:if(r=n.isPreEnv,e.p=1,v.isHasInit()){e.n=2;break}return e.n=2,v.init({srcPath:"",isPreEnv:r,isUpdate:!1});case 2:return e.n=3,v.queryCountReportWasmFunction();case 3:i=e.v,t.json({code:0,data:{newFuncCount:i||0}}),e.n=5;break;case 4:e.p=4,a=e.v,console.error("查询函数个数失败:",a.message),t.json({code:0,data:{newFuncCount:0}});case 5:return e.a(2)}},e,null,[[1,4]])}));return function(n,t){return e.apply(this,arguments)}}()),f.post("/wasm-rollback",function(){var e=l(o().m(function e(n,t){var r,i,a;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=n.isPreEnv,e.p=1,h.start("rollback",2),h.update("正在回滚分包..."),e.n=2,v.rollbackEntryChanges({srcPath:"",isPreEnv:r});case 2:0===(i=e.v).code?(b.invalidateCache&&b.invalidateCache(),h.complete(i),t.json({code:0,message:"回滚完成",data:i})):(h.fail(i.msg||"回滚失败"),t.json({code:-1,message:i.msg||"回滚失败"})),e.n=4;break;case 3:e.p=3,a=e.v,h.fail(a.message),t.json({code:-1,message:a.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),f.post("/upload",function(){var e=l(o().m(function e(n,t){var r,i,a,s,c,u,l,f,p,v,b,k,P,j,E,O,_,F,T,x,I,C,G,M,A,N;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:if(r=n.isPreEnv,i=n.body,a=i.versionName,s=i.description,e.p=1,a){e.n=2;break}return e.a(2,t.json({code:-1,message:"请输入版本号"}));case 2:if(!(!s||s.length<1||s.length>100)){e.n=3;break}return e.a(2,t.json({code:-1,message:"版本描述长度需在 1-100 个字符之间"}));case 3:h.start("upload",6),h.update("正在加载项目配置..."),e.p=4,c=g.loadProjectConfig(""),e.n=6;break;case 5:return e.p=5,e.v,h.fail("未找到项目配置"),e.a(2,t.json({code:-1,message:"未找到项目配置,请先执行 jgc config"}));case 6:l=(u=c).appId,f=u.requestToken,p=u.entry,v=u.fullEntryPath,b=v||p,k=d.resolve(process.cwd(),"jgc.config.js"),h.update("正在更新配置文件...");try{P=m.readFileSync(k,"utf-8"),P=(j=function(e,n,t){var r=new RegExp("([\"']?".concat(n,"[\"']?\\s*:\\s*)[\"'][^\"']*[\"']"),"i");return r.test(e)?e.replace(r,'$1"'.concat(t,'"')):e})(P,"versionName",a),P=j(P,"description",s),m.writeFileSync(k,P,"utf-8")}catch(e){console.error("更新配置文件失败:",e)}return h.update("正在压缩文件..."),E=y.tmpdir()+d.sep+"jd_game_temp.zip",m.existsSync(E)&&m.unlinkSync(E),e.n=7,w.compressDirectory(b,E);case 7:return O=e.v,h.update("压缩完成,共 ".concat((O/1e3).toFixed(1)," KB")),h.update("正在上传代码包..."),F=new S((_=!r)?"prod":"dev"),e.n=8,F.uploadProject({sourceFile:E,appId:l,requestToken:f,isProd:_,showType:"upload"});case 8:if(0===(T=e.v).code){e.n=9;break}return h.fail(T.err_msg||"上传失败"),e.a(2,t.json({code:-1,message:T.err_msg||"上传代码包失败"}));case 9:return h.update("正在构建代码包..."),e.n=10,F.loopQueryBuildStatus({appId:l,requestToken:f,isProd:_,showType:"upload"},T.uuid);case 10:if(0===(x=e.v).code){e.n=11;break}return h.fail(x.err_msg||"构建失败"),e.a(2,t.json({code:-1,message:x.err_msg||"代码包构建失败"}));case 11:return I=x.packId,h.update("正在设置开发版..."),e.n=12,F.commitDevVersion({appId:l,requestToken:f,versionName:a,description:s},I);case 12:if(0===(C=e.v).code){e.n=13;break}return h.fail(C.err_msg||"设置开发版失败"),e.a(2,t.json({code:-1,message:C.err_msg||"设置开发版失败"}));case 13:return G=C.devId,h.update("正在设置体验版..."),e.n=14,F.setDevExperience({appId:l,requestToken:f},G);case 14:if(0===(M=e.v).code){e.n=15;break}return h.fail(M.err_msg||"设置体验版失败"),e.a(2,t.json({code:-1,message:M.err_msg||"设置体验版失败"}));case 15:return h.update("正在生成体验码..."),e.n=16,F.queryExperienceQrcodeByPackId({appId:l,requestToken:f});case 16:if(0===(A=e.v).code){e.n=17;break}return h.fail(A.err_msg||"获取二维码失败"),e.a(2,t.json({code:-1,message:A.err_msg||"获取体验码失败"}));case 17:m.existsSync(E)&&m.unlinkSync(E),h.complete({imgUrl:A.imgUrl}),t.json({code:0,message:"上传成功",data:{imgUrl:A.imgUrl,versionName:a,description:s}}),e.n=19;break;case 18:e.p=18,N=e.v,h.fail(N.message),console.error("上传失败:",N),t.json({code:-1,message:N.message||"上传失败"});case 19:return e.a(2)}},e,null,[[4,5],[1,18]])}));return function(n,t){return e.apply(this,arguments)}}()),e.exports=f},2080:e=>{"use strict";e.exports=require("open")},2225:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,i,a,s=[],c=!0,u=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(e,n)||function(e,n){if(e){if("string"==typeof e)return a(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?a(e,n):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function s(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}var c=t(9896),u=t(9023).promisify,l=t(5759),f=u(c.readFile),p=u(c.writeFile);function d(){var e;return e=r().m(function e(n,t){var o,i,a,s,c,u=arguments;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return o=!(u.length>2&&void 0!==u[2])||u[2],e.p=1,e.n=2,f(n,"utf8");case 2:if(i=e.v,a=JSON.parse(i),s=m(a),!o){e.n=4;break}return e.n=3,p(t,JSON.stringify(s,null,2));case 3:case 6:return e.a(2);case 4:return e.a(2,s);case 5:throw e.p=5,c=e.v,l.logErr("处理文件时发生错误: ".concat(c.message)),c}},e,null,[[1,5]])}),d=function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){s(i,r,o,a,c,"next",e)}function c(e){s(i,r,o,a,c,"throw",e)}a(void 0)})},d.apply(this,arguments)}function m(e){var n={"\\28":"(","\\29":")","\\5b":"[","\\5d":"]","\\2c":",","\\20":" "},t={};return Object.entries(e).forEach(function(e){var r=i(e,2),o=r[0],a=r[1];Object.entries(n).forEach(function(e){var n=i(e,2),t=n[0],r=n[1];a=a.replace(new RegExp(t,"g"),r)}),t[o]=a}),t}e.exports=function(e,n){return d.apply(this,arguments)}},2268:e=>{"use strict";e.exports=require("jsqr")},2305:e=>{"use strict";e.exports=require("form-data")},2410:e=>{"use strict";e.exports=require("glob")},2425:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function i(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?o(Object(t),!0).forEach(function(n){a(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):o(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function a(e,n,t){return(n=p(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",o=t.toStringTag||"@@toStringTag";function i(t,r,o,i){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return c(l,"_invoke",function(t,r,o){var i,s,c,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,s=0,c=e,p.n=t,a}};function d(t,r){for(s=t,c=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(c=i[(s=i[4])?5:(s=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(s=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,s=0))}if(o||t>1)return a;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),s=l,c=m;(n=s<2?e:c)||!f;){i||(s?s<3?(s>1&&(p.n=-1),d(s,c)):p.n=c:p.v=c);try{if(u=2,i){if(s||(o="next"),n=i[o]){if(!(n=n.call(i,c)))throw TypeError("iterator result is not an object");if(!n.done)return n;c=n.value,s<2&&(s=0)}else 1===s&&(n=i.return)&&n.call(i),s<2&&(c=TypeError("The iterator does not provide a '"+o+"' method"),s=1);i=e}else if((n=(f=p.n<0)?c:t.call(r,p))!==a)break}catch(n){i=e,s=1,c=n}finally{u=1}}return{value:n,done:f}}}(t,o,i),!0),l}var a={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(c(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,c(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,c(d,"constructor",f),c(f,"constructor",l),l.displayName="GeneratorFunction",c(f,o,"GeneratorFunction"),c(d),c(d,o,"Generator"),c(d,r,function(){return this}),c(d,"toString",function(){return"[object Generator]"}),(s=function(){return{w:i,m}})()}function c(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}c=function(e,n,t,r){function i(n,t){c(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(i("next",0),i("throw",1),i("return",2))},c(e,n,t,r)}function u(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function l(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){u(i,r,o,a,s,"next",e)}function s(e){u(i,r,o,a,s,"throw",e)}a(void 0)})}}function f(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,p(r.key),r)}}function p(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var d=t(8938),m=t(2305),y=t(4652),v=t(8085),h=v.FAIL_CODE,b=v.SUCCEED_CODE,g=(t(1060).checkConfigOptions,{dev:"http://beta-vapp-ide.jd.com",prod:"https://vapp-ide-pack.jd.com",test:"http://test-vapp-ide.jdtest.net"}),w=function(){return e=function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"prod";!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.URL=g[n]},n=[{key:"uploadProject",value:(E=l(s().m(function e(n){var t,r,o;return s().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,this.pack(n);case 1:if((t=e.v).code===b){e.n=2;break}return e.a(2,t);case 2:return r=t.data.result,e.a(2,{code:b,uuid:r});case 3:return e.p=3,o=e.v,e.a(2,{code:h,err_msg:o instanceof Error?o.message:"上传失败"})}},e,this,[[0,3]])})),function(e){return E.apply(this,arguments)})},{key:"loopQueryBuildStatus",value:(j=l(s().m(function e(n,t){var r;return s().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.loopQuery(n,t);case 1:if((r=e.v).code===b){e.n=2;break}return e.a(2,r);case 2:return e.a(2,{code:b,packId:r.data})}},e,this)})),function(e,n){return j.apply(this,arguments)})},{key:"sendPostRequest",value:(P=l(s().m(function e(n,t){var r,o,a,c,u,l=arguments;return s().w(function(e){for(;;)switch(e.p=e.n){case 0:for(a in r=l.length>2&&void 0!==l[2]?l[2]:"请求失败",o=new m,t)o.append(a,t[a]);return e.p=1,e.n=2,d.post(n,o,{headers:i({},o.getHeaders())});case 2:if((c=e.v).data.code!==b){e.n=3;break}return e.a(2,{code:b,data:c.data});case 3:return e.a(2,{code:h,err_msg:"".concat(r,": ").concat(c.data.errorMessage)});case 4:return e.p=4,u=e.v,e.a(2,{code:h,err_msg:"".concat(r,": ").concat(u)})}},e,null,[[1,4]])})),function(e,n){return P.apply(this,arguments)})},{key:"pluginPublishRequest",value:(k=l(s().m(function e(n,t,r,o){var i,a,c,u,l,f=arguments;return s().w(function(e){for(;;)switch(e.p=e.n){case 0:return i=f.length>4&&void 0!==f[4]?f[4]:"请求失败",a=JSON.stringify(t),c={method:"post",maxBodyLength:1/0,url:"".concat(n,"?appId=").concat(r,"&requestToken=").concat(o),headers:{"Content-Type":"application/json"},data:a},e.p=1,e.n=2,d.request(c);case 2:if((u=e.v).data.code!==b){e.n=3;break}return e.a(2,{code:b,data:u.data});case 3:return e.a(2,{code:h,err_msg:"".concat(i,": ").concat(u.data.errorMessage)});case 4:return e.p=4,l=e.v,e.a(2,{code:h,err_msg:"".concat(i,": ").concat(l)})}},e,null,[[1,4]])})),function(e,n,t,r){return k.apply(this,arguments)})},{key:"pack",value:(S=l(s().m(function e(n){var t,r,o,i,a,c;return s().w(function(e){for(;;)if(0===e.n)return t=n.sourceFile,r=n.appId,o=n.requestToken,i=n.showType,a="".concat(this.URL,"upload"===i?"/v1/devops/pack":"/v1/ci/preview"),c={appId:r,requestToken:o,sourceFile:y.createReadStream(t)},e.a(2,this.sendPostRequest(a,c,"文件上传报错"))},e,this)})),function(e){return S.apply(this,arguments)})},{key:"loopQuery",value:(w=l(s().m(function e(n,t){var r,o,i,a;return s().w(function(e){for(;;)switch(e.n){case 0:r=Date.now(),o=2e6,i=3e3;case 1:if(!(Date.now()-r<o)){e.n=6;break}return e.n=2,new Promise(function(e){return setTimeout(e,i)});case 2:return e.n=3,this.queryPkgId(n,t);case 3:if((a=e.v).code===b){e.n=4;break}return e.a(2,{code:h,err_msg:a.err_msg});case 4:if(!a.data.result){e.n=5;break}return e.a(2,{code:b,data:a.data.result});case 5:e.n=1;break;case 6:return e.a(2,{code:h,err_msg:"查询超时"})}},e,this)})),function(e,n){return w.apply(this,arguments)})},{key:"queryPkgId",value:(v=l(s().m(function e(n,t){var r,o,i,a,c;return s().w(function(e){for(;;)if(0===e.n)return r=n.appId,o=n.requestToken,i=n.showType,a={appId:r,requestToken:o,uuid:t},c="".concat(this.URL,"/v1/ci/queryPackIdByUuid"),"preview"===i&&(c="".concat(this.URL,"/v1/ci/query-async-build-result")),e.a(2,this.sendPostRequest(c,a,"获取构建包id失效"))},e,this)})),function(e,n){return v.apply(this,arguments)})},{key:"generateQrCode",value:(p=l(s().m(function e(n){var t,r,o,i,a,c,u,l;return s().w(function(e){for(;;)switch(e.n){case 0:return t=n.appId,r=n.requestToken,o=n.packId,i=n.showType,a={appId:t,requestToken:r},c="".concat(this.URL,"/v1/ci/queryQrcodeByPackId"),"preview"===i?(c="".concat(this.URL,"/v1/ci/previewQrcode"),a.clientKey=o):a.packId=o,e.n=1,this.sendPostRequest(c,a,"获取二维码失效");case 1:if((u=e.v).code===b){e.n=2;break}return e.a(2,{code:h,err_msg:u.err_msg});case 2:if(!u.data.result){e.n=3;break}return(l=new Date).setMinutes(l.getMinutes()+25),e.a(2,{code:b,imgUrl:u.data.result,expiredTime:"".concat(this.addZeroForShort(l.getHours()),":").concat(this.addZeroForShort(l.getMinutes()))});case 3:return e.a(2,{code:h,err_msg:"二维码生成完成请求返回为空"});case 4:return e.a(2)}},e,this)})),function(e){return p.apply(this,arguments)})},{key:"addZeroForShort",value:function(e){return String(e).length<2?"0".concat(String(e)):String(e)}},{key:"commitDevVersion",value:(u=l(s().m(function e(n,t){var r,o,i,a,c,u;return s().w(function(e){for(;;)switch(e.n){case 0:return r=n.appId,o=n.requestToken,i=n.versionName,a=n.description,c={packId:t,appId:r,requestToken:o,versionName:i,description:a},e.n=1,this.sendPostRequest("".concat(this.URL,"/v1/ci/commitDevVersion"),c,"设置为开发版失效");case 1:if((u=e.v).code===b){e.n=2;break}return e.a(2,u);case 2:return e.a(2,{code:b,devId:u.data.result})}},e,this)})),function(e,n){return u.apply(this,arguments)})},{key:"setDevExperience",value:(c=l(s().m(function e(n,t){var r,o,i,a;return s().w(function(e){for(;;)switch(e.n){case 0:return r=n.appId,o=n.requestToken,i={appId:r,requestToken:o,devId:t},e.n=1,this.sendPostRequest("".concat(this.URL,"/v1/ci/devExperience"),i,"设置为体验版失效");case 1:if((a=e.v).code===b){e.n=2;break}return e.a(2,a);case 2:return e.a(2,{code:b})}},e,this)})),function(e,n){return c.apply(this,arguments)})},{key:"queryExperienceQrcodeByPackId",value:(a=l(s().m(function e(n){var t,r,o,i,a,c;return s().w(function(e){for(;;)switch(e.n){case 0:return t=n.appId,r=n.requestToken,o={appId:t,requestToken:r},e.n=1,this.sendPostRequest("".concat(this.URL,"/v1/ci/queryExperienceQrcode"),o,"获取体验二维码失效");case 1:if((i=e.v).code===b){e.n=2;break}return e.a(2,{code:h,err_msg:i.err_msg});case 2:return a=i.data.result,(c=new Date).setMinutes(c.getMinutes()+25),e.a(2,{code:b,imgUrl:a,expiredTime:"".concat(this.addZeroForShort(c.getHours()),":").concat(this.addZeroForShort(c.getMinutes()))})}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"uploadPlugin",value:(o=l(s().m(function e(n){var t,r,o,i,a,c,u;return s().w(function(e){for(;;)switch(e.n){case 0:return t=n.sourceFile,r=n.appId,o=n.requestToken,i=n.versionName,a="".concat(this.URL,"/v1/ci/pluginPack"),c={appId:r,requestToken:o,versionName:i,sourceFile:y.createReadStream(t)},e.n=1,this.sendPostRequest(a,c,"插件构建报错");case 1:if((u=e.v).code===b){e.n=2;break}return e.a(2,{code:h,err_msg:u.err_msg});case 2:return e.a(2,{code:b,result:u.data.result})}},e,this)})),function(e){return o.apply(this,arguments)})},{key:"publishPlugin",value:(r=l(s().m(function e(n){var t,r,o,i,a,c,u,l,f;return s().w(function(e){for(;;)switch(e.n){case 0:return t=n.versionName,r=n.versionFeature,o=n.useGuide,i=n.packId,a=n.appId,c=n.requestToken,u="".concat(this.URL,"/v1/ci/plugin-dev"),l={versionName:t,versionFeature:r,useGuide:o,packId:i},e.n=1,this.pluginPublishRequest(u,l,a,c,"插件上传报错");case 1:if((f=e.v).code===b){e.n=2;break}return e.a(2,{code:h,err_msg:f.err_msg});case 2:return e.a(2,{code:b})}},e,this)})),function(e){return r.apply(this,arguments)})}],n&&f(e.prototype,n),t&&f(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t,r,o,a,c,u,p,v,w,S,k,P,j,E}();e.exports=w},3121:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a=t(2410),s=t(9896),c=t(6928),u=t(7172),l=function(){return e=function e(n){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.projectPath=n.src,this.distFile=n.dist,this._allFilePath=[],this._allFileContents=[]},(n=[{key:"genWholeTrunk",value:function(){this._getAllFileBaseInfo();var e=this.genFileIndex(),n=this._getAllFileCountBuf();e.unshift(n);var t=Buffer.concat(e),r=Buffer.concat(this._allFileContents),o=this.encodeHeader(t.length,r.length),i=Buffer.concat(o),a=Buffer.concat([i,t,r]);s.writeFileSync(this.distFile,a,"binary")}},{key:"_getAllFiles",value:function(){return a.sync(this.projectPath+"/**",{nodir:!0,ignore:["**/.*","**/.*/.**","**/*.js.map"]})}},{key:"encodeHeader",value:function(e,n){var t=[Buffer.alloc(1),Buffer.alloc(4),Buffer.alloc(4),Buffer.alloc(4),Buffer.alloc(1)];return t[0].writeUInt8(250),t[1].writeInt32BE(7),t[4].writeUInt8(238),t[2].writeInt32BE(e),t[3].writeInt32BE(n),t}},{key:"_getAllFileBaseInfo",value:function(){var e=this._getAllFiles(),n=this;e.forEach(function(e){var t=s.readFileSync(e),r=c.relative(n.projectPath,e),o=Buffer.from("/"+r.replace(/\\/g,"/"));n._allFilePath.push(o),n._allFileContents.push(t)})}},{key:"genFileIndex",value:function(){var e=this._genFirstContentOffset(),n=this;return this._allFilePath.map(function(t,r){var o=Buffer.alloc(4);o.writeInt32BE(t.length);var i=Buffer.alloc(4),a=e;i.writeInt32BE(a);var s=Buffer.alloc(4),c=n._allFileContents[r].length;return s.writeInt32BE(c),e+=c,Buffer.concat([o,t,i,s])})}},{key:"_genFirstContentOffset",value:function(){return 18+12*this._allFilePath.length+Buffer.concat(this._allFilePath).length}},{key:"_getAllFileCountBuf",value:function(){var e=Buffer.alloc(4);return e.writeInt32BE(this._allFilePath.length),e}}])&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t}();function f(e,n,t){var r=e+".jd";new l({src:e,dist:r}).genWholeTrunk(),function(e,n){return new Promise(function(t,r){var o=s.createWriteStream(n),i=u("zip",{zlib:{level:9}});o.on("close",function(){t(n)}),i.on("warning",function(e){"ENOENT"!==e.code&&r(e)}),i.on("error",r),i.pipe(o),i.file(e,{name:"package.jd"}),i.finalize()})}(r,n).then(function(){s.existsSync(r)&&s.unlinkSync(r),t(null,n)}).catch(function(e){console.log("压缩 .jd 文件失败:",e),t(e)})}e.exports=function(e,n,t){f(e,n,t)}},3427:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})}}var s,c=t(9896),u=c.promises,l=t(6928),f=t(8938),p=function(e,n){return{filePath:e?n:void 0,tempFilePath:n,statusCode:200}},d=function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,u.access(n);case 1:e.n=3;break;case 2:return e.p=2,e.v,e.n=3,u.mkdir(n,{recursive:!0});case 3:return e.a(2)}},e,null,[[0,2]])}));return function(n){return e.apply(this,arguments)}}(),m=function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,u.stat(n);case 1:if(!e.v.isDirectory()){e.n=2;break}return e.n=2,u.rm(n,{recursive:!0});case 2:e.n=4;break;case 3:e.p=3,e.v;case 4:return e.a(2)}},e,null,[[0,3]])}));return function(n){return e.apply(this,arguments)}}();e.exports={downloadFile:(s=a(r().m(function e(n){var t,o,i,s,y,v,h,b,g,w;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return t=n.url,o=n.filePath,i=n.success,s=n.fail,y=n.complete,v={success:i,fail:s,complete:y},e.p=1,e.n=2,d(l.dirname(o));case 2:return e.n=3,m(o);case 3:return e.n=4,f({method:"get",url:t,responseType:"stream"});case 4:return h=e.v,b=c.createWriteStream(o),h.data.pipe(b),e.a(2,new Promise(function(e,n){var t=0,i=parseInt(h.headers["content-length"]),s=h.headers["transfer-encoding"];b.on("finish",a(r().m(function a(){var c,l,f,d;return r().w(function(r){for(;;)switch(r.p=r.n){case 0:if(r.p=0,"chunked"===s||!i||t===i){r.n=2;break}return r.n=1,u.unlink(o);case 1:throw new Error("Download incomplete: Received ".concat(t," of ").concat(i," bytes"));case 2:null===(c=v.success)||void 0===c||c.call(v,p(!0,o)),e(p(!0,o)),r.n=4;break;case 3:r.p=3,d=r.v,null===(l=v.fail)||void 0===l||l.call(v,{errMsg:d.message}),n(d);case 4:return r.p=4,null===(f=v.complete)||void 0===f||f.call(v),r.f(4);case 5:return r.a(2)}},a,null,[[0,3,4,5]])}))),b.on("error",function(){var e=a(r().m(function e(t){var i;return r().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,u.unlink(o).catch(function(){});case 1:null===(i=v.fail)||void 0===i||i.call(v,{errMsg:"Write failed: ".concat(t.message)}),n(t);case 2:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),h.data.on("data",function(e){t+=e.length})}));case 5:return e.p=5,w=e.v,e.n=6,u.unlink(o).catch(function(){});case 6:throw null===(g=v.fail)||void 0===g||g.call(v,{errMsg:"Download failed: ".concat(w.message)}),w;case 7:return e.a(2)}},e,null,[[1,5]])})),function(e){return s.apply(this,arguments)})}},3709:e=>{function n(e){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n.keys=()=>[],n.resolve=n,n.id=3709,e.exports=n},3840:e=>{"use strict";e.exports=require("marked")},3904:e=>{function n(e){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n.keys=()=>[],n.resolve=n,n.id=3904,e.exports=n},4218:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})}}var s=t(7252).Router(),c=t(8320),u=t(649),l=t(6928),f=t(5322);function p(e,n){return d.apply(this,arguments)}function d(){return(d=a(r().m(function e(n,t){var o,i,a,s,u,p,d;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(e.p=0,(o=c.validateProject("increment-history","",n.isPreEnv)).valid){e.n=1;break}return e.a(2,t.json({code:-1,message:o.errMsg||"项目校验失败"}));case 1:c.ensureSpinner().start("开始获取历史版本……"),i=l.resolve(c.config.entry,".codesplitcache"),a=l.resolve(i,"original"),c.setupCacheDirectories(i,a),e.p=2,f.syncPluginCacheFiles(c.config.entry,a),c.spinner.succeed("文件备份完成"),e.n=4;break;case 3:throw e.p=3,u=e.v,c.spinner.fail("文件备份失败:".concat(u.message)),u;case 4:return e.n=5,c.processSymbolFiles(i,a);case 5:return c.spinner.start(),c.spinner.text="开始上传文件……",e.p=6,e.n=7,c.uploadFiles(a,i);case 7:e.n=9;break;case 8:e.p=8,p=e.v,c.spinner.fail("上传文件失败:".concat(p.message)),process.exit(1);case 9:return c.spinner.succeed("上传文件成功"),c.spinner.start(),c.spinner.text="添加游戏版本……",e.n=10,c.addGameVersion();case 10:return c.spinner.succeed("添加游戏版本成功"),e.n=11,c.getIncrementHistory();case 11:s=e.v,t.json({code:0,data:s}),e.n=13;break;case 12:e.p=12,d=e.v,c.spinner.fail(d.message),t.json({code:-1,message:d.message});case 13:return e.a(2)}},e,null,[[6,8],[2,3],[0,12]])}))).apply(this,arguments)}s.post("/wasm-init",function(){var e=a(r().m(function e(n,t){var o,i,a,s,l;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return o=n.body.isUpdate,i=void 0!==o&&o,a=n.isPreEnv,e.p=1,u.start("wasm-init",5),u.update("正在验证项目配置..."),e.n=2,c.init({srcPath:"",isPreEnv:a,isUpdate:i});case 2:s=e.v,u.complete(s),t.json({code:0,message:i?"增量更新完成":"初始化完成",data:s}),e.n=4;break;case 3:e.p=3,l=e.v,u.fail(l.message),t.json({code:-1,message:l.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),s.post("/wasm-update",function(){var e=a(r().m(function e(n,t){var o,i,a;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return o=n.isPreEnv,e.p=1,u.start("wasm-update",6),u.update("正在获取历史版本..."),e.n=2,c.init({srcPath:"",isPreEnv:o,isUpdate:!0});case 2:i=e.v,u.complete(i),t.json({code:0,message:"增量更新完成",data:i}),e.n=4;break;case 3:e.p=3,a=e.v,u.fail(a.message),t.json({code:-1,message:a.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),s.get("/wasm-history-versions",p),s.get("/increment/history",p),s.post("/increment/init",function(){var e=a(r().m(function e(n,t){var o,i,a,s,l;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(o=n.isPreEnv,i=n.body||{},a=i.incrementMd5){e.n=1;break}return e.a(2,t.json({code:-1,message:"请选择历史版本"}));case 1:return e.p=1,u.start("increment-init",6),u.update("正在进行增量初始化..."),e.n=2,c.runIncrementInit({srcPath:"",isPreEnv:o,incrementMd5:a});case 2:s=e.v,u.complete(s),t.json({code:0,message:"增量初始化完成",data:s}),e.n=4;break;case 3:e.p=3,l=e.v,u.fail(l.message),t.json({code:-1,message:l.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),e.exports=s},4246:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,o,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return i(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,o,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(i(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,i(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,i(d,"constructor",f),i(f,"constructor",l),l.displayName="GeneratorFunction",i(f,a,"GeneratorFunction"),i(d),i(d,a,"Generator"),i(d,r,function(){return this}),i(d,"toString",function(){return"[object Generator]"}),(o=function(){return{w:s,m}})()}function i(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}i=function(e,n,t,r){function a(n,t){i(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},i(e,n,t,r)}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function s(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach(function(n){c(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function c(e,n,t){return(n=function(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function u(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}var l=t(7252).Router(),f=t(6928),p=t(9896),d=t(6626),m=t(9664),y=t(6949),v=(t(8320),t(649),t(8330)),h={splitDetails:null,codeMd5:null,lastSplitTime:null,cacheTime:null};function b(e){return!!h.splitDetails&&(h.codeMd5===e&&!(h.lastSplitTime&&h.cacheTime&&h.lastSplitTime>h.cacheTime))}function g(e){var n=f.join(e,".codesplitcache/codesplit-config.json"),t=f.join(e,"wasmcode"),r=f.join(e,"wasmcode1");return p.existsSync(n)&&p.existsSync(t)&&p.existsSync(r)?"split":"not_split"}function w(e){var n=f.join(e,"wasmcode");if(!p.existsSync(n))return{filePath:null,fileName:null,codeMd5:null};var t=p.readdirSync(n).find(function(e){return e.endsWith(".wasm")||e.endsWith(".wasm.br")||e.endsWith(".unityweb.wasm.br")||e.endsWith(".wasm.unityweb")});return t?{filePath:f.join(n,t),fileName:t,codeMd5:function(e){if(!e)return null;var n=e.split(".")[0];return n&&/^[a-f0-9]{16}$/i.test(n)?n:null}(t)}:{filePath:null,fileName:null,codeMd5:null}}function S(e){var n=null,t=0,r=f.join(e,"webgl.wasm.symbols.unityweb");if(p.existsSync(r)){n=r;try{t=p.readFileSync(r,"utf-8").split("\n").filter(function(e){return e.trim().length>0}).length}catch(e){}}else{var o=f.join(e,"Build.json"),i=f.join(e,"unityweb.json");if(p.existsSync(o)){n=o;try{var a=p.readFileSync(o,"utf-8"),s=JSON.parse(a);s.symbols&&Array.isArray(s.symbols)&&(t=s.symbols.length)}catch(e){}}else if(p.existsSync(i)){n=i;try{var c=p.readFileSync(i,"utf-8"),u=JSON.parse(c);u.symbols&&Array.isArray(u.symbols)&&(t=u.symbols.length)}catch(e){}}}return{symbolFilePath:n,totalFunctions:t}}l.invalidateCache=function(){h.lastSplitTime=Date.now(),h.splitDetails=null,console.log("[config] 服务端缓存已失效")},l.get("/wasm-split-init",function(){var e,n=(e=o().m(function e(n,t){var r,i,a,c,u,l,k,P,j,E,O,_,F,T,x,I,C,G,M,A,N,D,q,W,R;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:e.p=0,e.p=1,r=d.loadProjectConfig(""),e.n=3;break;case 2:return e.p=2,e.v,e.a(2,t.json({code:-1,message:"未找到项目配置,请先执行 jgc config"}));case 3:if(r){e.n=4;break}return e.a(2,t.json({code:-1,message:"未找到项目配置,请先执行 jgc config"}));case 4:if(a=(i=r).appId,c=i.entry,i.requestToken,u=i.fullEntryPath,l=u||c,m.setEnv(n.isPreEnv),k=g(l),P=w(l),j=P.filePath,P.fileName,E=P.codeMd5,O=S(l),_=O.symbolFilePath,F=O.totalFunctions,T=null,x=f.join(l,".codesplitcache/codesplit-config.json"),p.existsSync(x))try{T=JSON.parse(p.readFileSync(x,"utf-8"))}catch(e){}if(I=null,"split"!==k){e.n=10;break}if(e.p=5,!b(E)){e.n=6;break}console.log("[config] 使用服务端缓存的分包详情"),I=s(s({},h.splitDetails),{},{md5:E}),e.n=8;break;case 6:return console.log("[config] 开始分析 WASM, entryPath:",l,"totalFunctions:",F),e.n=7,y.getSplitDetails(l,F);case 7:C=e.v,console.log("[config] 分析结果:",JSON.stringify(C)),C?(I={splitForm:C.splitForm,mainFuncCount:C.mainFuncCount,subFuncCount:C.subFuncCount,mainFuncRatio:C.mainFuncRatio,splitTip:C.splitTip,splitTipLevel:C.splitTipLevel,isDevSplit:C.isDevSplit,md5:E},h.splitDetails={splitForm:C.splitForm,mainFuncCount:C.mainFuncCount,subFuncCount:C.subFuncCount,mainFuncRatio:C.mainFuncRatio,splitTip:C.splitTip,splitTipLevel:C.splitTipLevel,isDevSplit:C.isDevSplit},h.codeMd5=E,h.cacheTime=Date.now(),console.log("[config] 服务端缓存已更新")):(console.log("[config] splitDetails 为空,使用回退配置"),I={splitForm:"Unknown",mainFuncCount:(null===(G=T)||void 0===G?void 0:G.mainFuncCount)||0,subFuncCount:(null===(M=T)||void 0===M?void 0:M.subFuncCount)||0,mainFuncRatio:0,splitTip:"-",splitTipLevel:"warning",md5:(null===(A=T)||void 0===A?void 0:A.md5)||E});case 8:e.n=10;break;case 9:e.p=9,W=e.v,console.error("[config] WASM 分析失败:",W.message),I={splitForm:"Unknown",mainFuncCount:(null===(N=T)||void 0===N?void 0:N.mainFuncCount)||0,subFuncCount:(null===(D=T)||void 0===D?void 0:D.subFuncCount)||0,mainFuncRatio:0,splitTip:"-",splitTipLevel:"warning",md5:(null===(q=T)||void 0===q?void 0:q.md5)||E};case 10:t.json({code:0,data:{appId:a,entry:l,codeMd5:E,totalFunctions:F,splitStatus:k,wasmFilePath:j,symbolFilePath:_,cacheConfig:T,splitInfo:I,isPreEnv:n.isPreEnv,appVersion:(null==v?void 0:v.version)||"0.0.0"}}),e.n=12;break;case 11:e.p=11,R=e.v,t.json({code:-1,message:R.message});case 12:return e.a(2)}},e,null,[[5,9],[1,2],[0,11]])}),function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){u(i,r,o,a,s,"next",e)}function s(e){u(i,r,o,a,s,"throw",e)}a(void 0)})});return function(e,t){return n.apply(this,arguments)}}()),l.get("/project-config",function(e,n){try{var t=d.loadProjectConfig("");n.json({code:0,data:t})}catch(e){n.json({code:-1,message:e.message})}}),e.exports=l},4377:e=>{e.exports=[{reg:/Module\[('|")HEAP8('|")\]\s*=\s*HEAP8\s*=\s*new\s*Int8Array/gi,replaceMethod:function(){return'Module["HEAP8"] = window.EMSCRIPTEN_HEAP8 = HEAP8 = new Int8Array'}},{reg:/Module\[('|")HEAP16('|")\]\s*=\s*HEAP16\s*=\s*new\s*Int16Array/gi,replaceMethod:function(){return'Module["HEAP16"] = window.EMSCRIPTEN_HEAP16 = HEAP16 = new Int16Array'}},{reg:/Module\[('|")HEAP32('|")\]\s*=\s*HEAP32\s*=\s*new\s*Int32Array/gi,replaceMethod:function(){return'Module["HEAP32"] = window.EMSCRIPTEN_HEAP32 = HEAP32 = new Int32Array'}},{reg:/Module\[('|")HEAPU8('|")\]\s*=\s*HEAPU8\s*=\s*new\s*Uint8Array/gi,replaceMethod:function(){return'Module["HEAPU8"] = window.EMSCRIPTEN_HEAPU8 = HEAPU8 = new Uint8Array'}},{reg:/Module\[('|")HEAPU16('|")\]\s*=\s*HEAPU16\s*=\s*new\s*Uint16Array/gi,replaceMethod:function(){return'Module["HEAPU16"] = window.EMSCRIPTEN_HEAPU16 = HEAPU16 = new Uint16Array'}},{reg:/Module\[('|")HEAPU32('|")\]\s*=\s*HEAPU32\s*=\s*new\s*Uint32Array/gi,replaceMethod:function(){return'Module["HEAPU32"] = window.EMSCRIPTEN_HEAPU32 = HEAPU32 = new Uint32Array'}},{reg:/Module\[('|")HEAPF32('|")\]\s*=\s*HEAPF32\s*=\s*new\s*Float32Array/gi,replaceMethod:function(){return'Module["HEAPF32"] = window.EMSCRIPTEN_HEAPF32 = HEAPF32 = new Float32Array'}},{reg:/Module\[('|")HEAPF64('|")\]\s*=\s*HEAPF64\s*=\s*new\s*Float64Array/gi,replaceMethod:function(){return'Module["HEAPF64"] = window.EMSCRIPTEN_HEAPF64 = HEAPF64 = new Float64Array'}},{reg:"calledMain = true;",replaceMethod:function(){return"if (GameGlobal.unityNamespace.pluginCalledMainCb) {\n GameGlobal.unityNamespace.pluginCalledMainCb()\n }\n calledMain = true;"}}]},4420:e=>{"use strict";e.exports=require("jimp")},4652:e=>{"use strict";e.exports=require("fs-extra")},4901:e=>{function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function t(e,n){for(var t=0;t<n.length;t++){var o=n[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,r(o.key),o)}}function r(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==n(t)?t:t+""}var o=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.configPrompts=[{name:"entry",type:"input",message:"请输入函数名文件所在路径:",default:"./"}]},(n=[{key:"getPrompts",value:function(){return this.configPrompts}}])&&t(e.prototype,n),r&&t(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r}();e.exports=o},5086:e=>{"use strict";e.exports=require("ws")},5205:e=>{"use strict";e.exports=require("picocolors")},5317:e=>{"use strict";e.exports=require("child_process")},5322:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,o,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return i(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,o,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(i(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,i(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,i(d,"constructor",f),i(f,"constructor",l),l.displayName="GeneratorFunction",i(f,a,"GeneratorFunction"),i(d),i(d,a,"Generator"),i(d,r,function(){return this}),i(d,"toString",function(){return"[object Generator]"}),(o=function(){return{w:s,m}})()}function i(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}i=function(e,n,t,r){function a(n,t){i(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},i(e,n,t,r)}function a(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function s(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,c(r.key),r)}}function c(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var u=t(9896),l=t(6928),f=t(2410),p=t(6046),d=p.createWasmSplitCodeBySimd,m=p.createImportFuncIndexCodeBySimd,y=t(4377),v=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e)},n=null,t=[{key:"syncPluginCacheFiles",value:function(e,n){this.ensureDirectoryExists(n),this.copyBrFiles(e,n),this.copyFixedFiles(e,n)}},{key:"ensureDirectoryExists",value:function(e){u.existsSync(e)||u.mkdirSync(e,{recursive:!0})}},{key:"copyBrFiles",value:function(e,n){var t=this,r=l.join(e,"wasmcode1");if(u.existsSync(r))throw new Error("文件备份错误,检查wasm文件是否是已分包版本");var o=l.join(n,"wasmcode");u.existsSync(o)&&u.rmSync(o,{recursive:!0,force:!0}),u.mkdirSync(o,{recursive:!0});var i=l.posix.join(e,"wasmcode","*.br");f.sync(i).forEach(function(r){var o=l.relative(e,r),i=l.join(n,o),a=l.dirname(i);t.ensureDirectoryExists(a),u.copyFileSync(r,i)})}},{key:"copyFixedFiles",value:function(e,n){["game.js","game.json","webgl.wasm.framework.unityweb.js","weapp-adapter.js"].forEach(function(t){var r=l.join(e,t),o=l.join(n,t);if(!u.existsSync(o)){if(!u.existsSync(r))throw new Error("Source file missing: ".concat(r));u.copyFileSync(r,o)}})}},{key:"processJavaScriptFiles",value:(r=o().m(function e(n,t,r){var i,a,s;return o().w(function(e){for(;;)switch(e.n){case 0:return this.config=r,u.copyFileSync(l.resolve(r.originalCacheDir,"game.json"),l.resolve(t,"game.json")),i=m(n.tableSize,n.subVersion,r.isPre,r.requestToken,r.isRelease),u.writeFileSync(l.resolve(t,"import-func-index.js"),i),e.n=1,d();case 1:a=e.v,u.writeFileSync(l.resolve(t,"wasm-split.js"),a),s=l.resolve(t,"wasmcode1"),u.writeFileSync(l.resolve(s,"game.js"),"");case 2:return e.a(2)}},e,this)}),i=function(){var e=this,n=arguments;return new Promise(function(t,o){var i=r.apply(e,n);function s(e){a(i,t,o,s,c,"next",e)}function c(e){a(i,t,o,s,c,"throw",e)}s(void 0)})},function(e,n,t){return i.apply(this,arguments)})},{key:"updateConfigFiles",value:function(e,n,t){this.config=t,this.updateGameJson(e,n),this.updateFrameworkJs(e,n),this.updateGameJs(e,n),this.updateAdapterJs(e,n)}},{key:"updateGameJson",value:function(e,n){var t=JSON.parse(u.readFileSync(l.resolve(this.config.originalCacheDir,"game.json")));t.subpackages.push({name:"wasmcode1",root:"wasmcode1/"}),t.plugins.UnityPlugin.version="1.2.58",u.writeFileSync(l.resolve(n,"game.json"),JSON.stringify(t,null,2))}},{key:"updateFrameworkJs",value:function(e,n){var t=l.resolve(this.config.originalCacheDir,"webgl.wasm.framework.unityweb.js"),r=l.resolve(n,"webgl.wasm.framework.unityweb.js"),o=u.readFileSync(t,"utf-8");y.forEach(function(e){o=o.replace(e.reg,e.replaceMethod)}),o+=";\nGameGlobal.unityNamespace.useWasmCodeSplit=true;GameGlobal.unityNamespace.WASM_SPLIT_SUB_VERSION=".concat(e.subVersion,";\n"),u.writeFileSync(r,o)}},{key:"updateGameJs",value:function(e,n){var t=this,r=l.resolve(this.config.originalCacheDir,"game.js"),o=l.resolve(n,"game.js"),i=u.readFileSync(r,"utf-8");[{reg:/const\s*_unityNamespace\s*=\s*_interopRequireDefault\(require\('\.\/unity-namespace'\)\)/gi,replaceMethod:function(){return"const _unityNamespace = _interopRequireDefault(require('./unity-namespace')); \n require('./wasm-split.js')"}},{reg:"GameGlobal.managerConfig = managerConfig;",replaceMethod:function(){return"GameGlobal.managerConfig = managerConfig; \nif(__jdConfig.NAConfig.useiOSfuncWasmBack){ \nGameGlobal.canUseH5Renderer = false; \n} else { \nGameGlobal.canUseH5Renderer = ".concat(!!t.config.isRelease,"; \n} ")}},{reg:"import unityNamespace from './unity-namespace';",replaceMethod:function(){return"import unityNamespace from './unity-namespace';\n import wasm_split from './wasm-split'"}},{reg:/APPID:\s*['"][^'"]*['"]/gi,replaceMethod:function(){return"APPID:'".concat(t.config.appId,"'")}}].forEach(function(e){i=i.replace(e.reg,e.replaceMethod)}),u.writeFileSync(o,i)}},{key:"updateAdapterJs",value:function(e,n){var t=l.resolve(this.config.originalCacheDir,"weapp-adapter.js"),r=l.resolve(n,"weapp-adapter.js"),o=u.readFileSync(t,"utf-8");o='"function" == typeof XMLHttpRequest&&(GameGlobal.nativeXHR = XMLHttpRequest);\n"object" == typeof WebAssembly&&(GameGlobal.nativeWASM = WebAssembly);'+o,u.writeFileSync(r,o)}}],n&&s(e.prototype,n),t&&s(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t,r,i}();e.exports=v},5759:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a,s=t(6895),c=t(8720);e.exports=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e)},t=[{key:"logStep",value:function(e){for(var n,t=arguments.length,r=new Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];(n=console).log.apply(n,[s.green("> ".concat(e))].concat(r))}},{key:"log",value:function(e){for(var n=arguments.length,t=new Array(n>1?n-1:0),r=1;r<n;r++)t[r-1]=arguments[r];setTimeout(function(){var n;(n=console).log.apply(n,[s.green(e)].concat(t))},0)}},{key:"logInfo",value:function(e){for(var n,t=arguments.length,r=new Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];(n=console).log.apply(n,[e].concat(r))}},{key:"logErr",value:function(e){for(var n,t=arguments.length,r=new Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];(n=console).log.apply(n,[s.red(e)].concat(r))}},{key:"startLogProcess",value:function(e){var n=c(e).start(),t={stop:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e+" 失败";"fail"==(arguments.length>1?arguments[1]:void 0)?n.fail(e):n.succeed(e)}};return a=t,t}},{key:"endLogProcess",value:function(e,n){e||(e=a),e&&"function"==typeof e.stop&&e.stop(n,"fail")}}],(n=null)&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t}()},6046:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}t(6928);var a,s,c=t(9239).minify;e.exports={createWasmSplitCodeBySimd:(a=r().m(function e(){var n,t,o;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,n='import { tableSize, setImportGlobal } from "./import-func-index";\n import { isIOS } from "./check-version";\n \n let b = (wx.getAccountInfoSync() || {}).miniProgram;\n const isTrial = b && "release" != b.envVersion;\n let callbackArray = [],\n isLoaded = false;\n \n function loadSubWasmPackage(doneCallback, needBlock) {\n if (isLoaded) {\n doneCallback(needBlock);\n return;\n }\n let loadStart = Date.now();\n GameGlobal.unityNamespace.eventLog("start loadSubPackage wasmcode1");\n callbackArray.push({\n callback: doneCallback,\n needBlock: needBlock,\n });\n let a = Date.now() - loadStart;\n GameGlobal.unityNamespace.eventLog(\n "下载代码分包1完毕: ",\n (a / 1e3).toFixed(2),\n "s"\n );\n GameGlobal.manager.subWasmDownloaded(a);\n isLoaded = true;\n callbackArray.forEach((a) => a.callback(a.needBlock));\n callbackArray = [];\n }\n let loadedSub = false,\n isInstanced = false;\n function reTry(a) {\n let e = function () {\n isInstanced ? a() : setTimeout(e, 1);\n };\n setTimeout(e, 1);\n }\n \n function initializeSubWasmModule(needBlock) {\n GameGlobal.unityNamespace.eventLog(\n "start compileSubWasm: needBlock ",\n needBlock\n );\n GameGlobal.manager.beforeLoadSubWasm();\n let instanceStart = Date.now();\n const subWasmPath =\n "wasmcode1/" +\n GameGlobal.unityNamespace.CODE_FILE_MD5 +\n "." +\n GameGlobal.unityNamespace.GAME_NAME +\n ".wasm.code.unityweb.wasm.br";\n let callback = (a) => {\n let cost = Date.now() - instanceStart;\n GameGlobal.manager.subWasmCompiled(cost);\n GameGlobal.unityNamespace.eventLog(\n "[PLUGIN SUBWASM LOG]subwasm loaded: ",\n cost\n );\n isInstanced = true;\n };\n WXWebAssembly.instantiate(subWasmPath, wasm_split_info)\n .then(callback)\n .catch((a) => {\n console.error("wasmcode1 catch ", a);\n });\n }\n \n function invokeWait(needBlock) {\n if (!isInstanced) {\n if (!loadedSub) {\n loadedSub = true;\n GameGlobal.unityNamespace.eventLog(\n "start instantiateSubWasm: needBlock ",\n needBlock\n );\n loadSubWasmPackage(initializeSubWasmModule, needBlock);\n }\n }\n }\n \n function innerInvokeWasmBuffer(funcName, e) {\n GameGlobal.manager.wasmsplit.innerInvokeWasmBuffer({\n funcName: funcName,\n importObj: window.wasm_split_info,\n fail(t) {\n if (e > 0) {\n GameGlobal.unityNamespace.eventLog(\n "fetch table_id: ",\n funcName,\n "; remainRetryTimes: ",\n e\n );\n return innerInvokeWasmBuffer(funcName, e - 1);\n }\n GameGlobal.unityNamespace.eventLog(\n "fetch table_id:",\n funcName,\n "; md5: ",\n GameGlobal.unityNamespace.CODE_FILE_MD5,\n "; subversion: ",\n GameGlobal.unityNamespace.WASM_SPLIT_SUB_VERSION,\n "; err: ",\n t\n );\n if ("system error" === t.errmsg || "content is null" === t.errmsg) {\n GameGlobal.onCrash();\n } else {\n wx.showModal({\n title: "网络状态异常",\n content: "请检查网络后重启 小游戏",\n showCancel: !1,\n confirmText: wx.restartMiniProgram ? "立即重启" : "确定",\n success() {\n wx.restartMiniProgram && wx.restartMiniProgram({})\n }\n })\n // invokeWait(true);\n }\n },\n });\n }\n let subCalledSet = new Set(),\n globalCalledSet = new Set();\n \n function _reportCalledFunc() {\n if (subCalledSet.size > 0) {\n GameGlobal.manager.reportCalledFuncs({\n called_func_list: Array.from(subCalledSet),\n sub_version: GameGlobal.unityNamespace.WASM_SPLIT_SUB_VERSION,\n func_type: 1,\n });\n subCalledSet.clear();\n }\n \n setTimeout(_reportCalledFunc, 5000);\n }\n \n GameGlobal.unityNamespace.reportCalledFunc = _reportCalledFunc;\n \n if (!GameGlobal.unityNamespace.pluginCalledMainCbs) {\n GameGlobal.unityNamespace.pluginCalledMainCbs = [];\n }\n \n if (!GameGlobal.unityNamespace.pluginCalledMainCb) {\n GameGlobal.unityNamespace.pluginCalledMainCb = function () {\n this.pluginCalledMainCbs.forEach((a) => a());\n };\n }\n \n isTrial &&\n !GameGlobal.canUseH5Renderer &&\n GameGlobal.unityNamespace.pluginCalledMainCbs.push(_reportCalledFunc);\n \n GameGlobal.unityNamespace.instantiateWasm = function (\n instantiateWasmInfo,\n receiveInstance\n ) {\n console.log("in wasm-split instantiateWasm");\n const module = GameGlobal.manager.gameInstance.Module,\n asm2wasm = (instantiateWasmInfo.asm2wasm =\n instantiateWasmInfo.asm2wasm || {});\n asm2wasm["f64-to-int"] =\n asm2wasm["f64-to-int"] ||\n function (a) {\n return 0 | a;\n };\n asm2wasm["f64-rem"] =\n asm2wasm["f64-rem"] ||\n function (a, e) {\n return a % e;\n };\n \n instantiateWasmInfo.env = instantiateWasmInfo.env || {};\n \n instantiateWasmInfo.primary = {\n table:\n instantiateWasmInfo.env.table ||\n new WebAssembly.Table({\n initial: tableSize,\n maximum: tableSize,\n element: "anyfunc",\n }),\n memory: instantiateWasmInfo.env.memory,\n };\n \n setImportGlobal(instantiateWasmInfo);\n \n instantiateWasmInfo.wasm_split = instantiateWasmInfo.wasm_split || {};\n instantiateWasmInfo.wasm_split.wait = function () {\n let waitTableId = GameGlobal.unityNamespace.waitTableId.value;\n GameGlobal.unityNamespace.eventLog("wait for func: ", waitTableId);\n if (isIOS && GameGlobal.canUseH5Renderer) {\n return innerInvokeWasmBuffer(waitTableId.toString(), 3);\n }\n invokeWait(true);\n };\n \n console.log("@@@canUseH5Renderer", GameGlobal.canUseH5Renderer);\n if (GameGlobal.canUseH5Renderer) {\n instantiateWasmInfo.wasm_split.logCall = function (a, e) {};\n } else {\n instantiateWasmInfo.wasm_split.logCall = function (a, e) {\n if (e) {\n if (!globalCalledSet.has(a)) {\n globalCalledSet.add(a);\n subCalledSet.add(a);\n }\n }\n };\n }\n instantiateWasmInfo.wasm_split.__wasm_split_waitTableId =\n GameGlobal.unityNamespace.waitTableId = new WebAssembly.Global({\n value: "i32",\n mutable: true,\n });\n \n window.wasm_split_info = instantiateWasmInfo;\n let wasmPath = module.wasmPath;\n WebAssembly.instantiate(wasmPath, instantiateWasmInfo).then(\n (resultObject) => {\n Object.entries(resultObject.instance.exports).forEach((instanceFunc) => {\n if (\n "object" == typeof instanceFunc[1] &&\n instanceFunc[1] instanceof WebAssembly.Memory\n ) {\n instantiateWasmInfo.primary.memory = instanceFunc[1];\n asm2wasm.__wasm_memory_size = window.__wasm_memory_size = () =>\n (instanceFunc[1].buffer.byteLength / 65536) | 0;\n }\n if (instanceFunc[0].startsWith("wasm_split.")) {\n instantiateWasmInfo.primary[instanceFunc[0]] = instanceFunc[1];\n }\n });\n instantiateWasmInfo.primary["wasm_split.initGlobal"] =\n resultObject.instance.exports.initGlobal;\n resultObject.instance.exports.initGlobal();\n module.asm = resultObject.instance.exports;\n if (isIOS && GameGlobal.canUseH5Renderer) {\n receiveInstance(resultObject.instance, resultObject.module);\n } else {\n invokeWait(true);\n reTry(() =>\n receiveInstance(resultObject.instance, resultObject.module)\n );\n }\n }\n );\n return {};\n };\n GameGlobal.unityNamespace.compileSubWasm = function () {\n return new Promise((resolve) => {\n return resolve(true);\n });\n };\n ',e.n=1,c(n,{compress:{drop_console:!1,drop_debugger:!0,pure_funcs:[]},mangle:{reserved:["GameGlobal","wx","WXWebAssembly","WebAssembly"]},format:{comments:!1}});case 1:if(!(t=e.v).error){e.n=2;break}return console.error("Terser 压缩失败:",t.error),e.a(2,n);case 2:return e.a(2,t.code);case 3:e.p=3,o=e.v,console.error("wasmSplitContent处理失败:",o);case 4:return e.a(2)}},e,null,[[0,3]])}),s=function(){var e=this,n=arguments;return new Promise(function(t,r){var o=a.apply(e,n);function s(e){i(o,t,r,s,c,"next",e)}function c(e){i(o,t,r,s,c,"throw",e)}s(void 0)})},function(){return s.apply(this,arguments)}),createImportFuncIndexCodeBySimd:function(e,n,t,r,o){return"export const importSubFuncIndexList = [];\nexport const tableSize = ".concat(e,";\nGameGlobal.unityNamespace.wasmSubVersion =").concat(n,';\nGameGlobal.unityNamespace.baseUrl ="').concat(t?"http://beta-vapp-ide.jd.com":"https://vapp-ide-pack.jd.com",'";\nGameGlobal.unityNamespace.requestToken = "').concat(r,'";\n').concat(t?" wx.requestWebCookie && wx.requestWebCookie({needpin: 1,success(e){ GameGlobal.unityNamespace.webcookieInfo = {pt_pin: e.pt_pin, pt_ket: e.ticket}}});":"",'\nexport function setImportGlobal(info) {info["primary"] = info["primary"] || {};info["primary"]["__stack_pointer"] = new WebAssembly.Global({\n value: "i32",\n mutable: true\n });info["primary"]["__stack_end"] = new WebAssembly.Global({\n value: "i32",\n mutable: true\n });info["primary"]["__stack_base"] = new WebAssembly.Global({\n value: "i32",\n mutable: true\n });};\n \n export function setStackPointer(info) {\n\n }\n \n export function setImportFunc(info, jCall) {\n \n }\n \n ')}}},6471:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a,s,c,u=t(9896),l=t(6928),f=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e)},t=[{key:"validateProjectStructure",value:function(e){if(!this.isReadable(e.fullEntryPath))return this.ERROR_MESSAGES.ENTRY_NOT_FOUND;var n=l.resolve(e.fullEntryPath,"game.json");try{var t;if(null===(t=JSON.parse(u.readFileSync(n,"utf-8")).plugins)||void 0===t||!t.UnityPlugin)return this.ERROR_MESSAGES.NOT_UNITY_GAME}catch(e){return this.ERROR_MESSAGES.GAME_JSON_NOT_FOUND}return{valid:!0}}},{key:"isReadable",value:function(e){try{return u.accessSync(e,u.constants.R_OK),!0}catch(e){return!1}}}],(n=null)&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t}();a=f,c={ENTRY_NOT_FOUND:{code:-1,msg:"操作失败",errMsg:"请检查entry是否存在"},NOT_UNITY_GAME:{code:-1,msg:"操作失败",errMsg:"该游戏不是unity游戏"},GAME_JSON_NOT_FOUND:{code:-1,msg:"操作失败",errMsg:"请检查game.json是否存在"}},(s=i(s="ERROR_MESSAGES"))in a?Object.defineProperty(a,s,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[s]=c,e.exports=f},6589:e=>{function n(e){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n.keys=()=>[],n.resolve=n,n.id=6589,e.exports=n},6626:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a=t(6928),s=t(9896),c=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.environments={wasmdev:"http://beta-vapp-ide.jd.com",wasmprod:"https://vapp-ide-pack.jd.com"},this.currentEnv="wasmdev"},n=[{key:"getBaseUrl",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.currentEnv;return this.environments[e]}},{key:"getApiUrls",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.currentEnv,n=this.getBaseUrl(e);return{UPLOAD_FILE:"".concat(n,"/wasm/upload"),ADD_GAME_VERSION:"".concat(n,"/wasm/packageBind"),INIT:"".concat(n,"/wasm/initialize"),QUERY_MD5_HISTORY_HAVE_RELEASE:"".concat(n,"/wasm/queryMd5HistoryHaveRelease"),QUERY_WASM_FUNCTION_ONLINE_FIND_LIST:"".concat(n,"/wasm/queryWasmFunctionOnlineFindList"),SPLIT:"".concat(n,"/wasm/build"),GET_GAME_SPLIT_INFO:"".concat(n,"/wasm/queryBuildResultBySubVersion"),DOWNLOAD_FILE:"".concat(n,"/wasm/download"),GET_SYMBOL_SIZE:"".concat(n,"/wasm/getSymbolSize"),GET_INIT_RES:"".concat(n,"/wasm/queryInitResult"),REPORT_FUNS:"".concat(n,"/wasm/reportWasmFunction"),QUERY_COUNT_REPORT_FUNS:"".concat(n,"/wasm/queryCountReportWasmFunction")}}},{key:"loadProjectConfig",value:function(e){var n=a.resolve(process.cwd(),"jgc.config.js"),r="function"==typeof require?require:t(220);delete r.cache[r.resolve(n)];var o=r(n),i=o.type,c=void 0===i?"game":i,u=o.entry,l=o.appId,f=o.requestToken,p=a.resolve(e||process.cwd(),u),d=a.resolve(p,".codesplitcache"),m=a.resolve(d,"original"),y=a.resolve(m,"wasmcode");return s.existsSync(d)||s.mkdirSync(d,{recursive:!0}),s.existsSync(m)||s.mkdirSync(m,{recursive:!0}),s.existsSync(y)||s.mkdirSync(y,{recursive:!0}),{type:c,entry:u,appId:l,requestToken:f,mainWasmCachePath:s.readdirSync(y).filter(function(e){return".br"===a.extname(e)})[0],originalCacheDir:m,fullEntryPath:p}}}],n&&o(e.prototype,n),r&&o(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r}();e.exports=new c},6858:e=>{"use strict";e.exports=require("commander")},6895:e=>{"use strict";e.exports=require("chalk")},6928:e=>{"use strict";e.exports=require("path")},6949:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})}}var s=t(9896),c=t(6928),u="function"==typeof require?require:t(3904),l=null,f=null;function p(){if(!l)try{l=u("brotli")}catch(e){console.error("加载 brotli 失败:",e.message)}return l}function d(){if(!f)try{f=u("wabt")}catch(e){console.error("加载 wabt 失败:",e.message)}return f}function m(e){if(e.length>=4&&0===e[0]&&97===e[1]&&115===e[2]&&109===e[3])return"wasm";try{var n=p();if(!n)return"unknown";var t=n.decompress(e);if(t&&t.length>=4&&0===t[0]&&97===t[1]&&115===t[2]&&109===t[3])return"wasm.br"}catch(e){}return"unknown"}function y(e){try{var n=p();if(!n)throw new Error("brotli 模块加载失败");var t=n.decompress(e);return Buffer.from(t)}catch(e){throw new Error("Brotli 解压失败: ".concat(e.message))}}function v(e){for(var n=e.split("\n"),t=0,r=0,o=0;o<n.length;o++){var i=n[o].trim();if(i.includes("(import")&&i.includes("(func")&&t++,i.startsWith("(func")&&!i.includes("(import")){var a=i.match(/\(func\s+(\$[^\s\)]+)?/),s=a&&a[1]||"";if(s.startsWith("$redir_")||"$initGlobal"===s||s.startsWith("$initGlobal"))continue;r++}}return{importedCount:t,localCount:r,totalCount:t+r,isDevSplit:e.includes("call $wasm_split.logCall")}}function h(e){return b.apply(this,arguments)}function b(){return(b=a(r().m(function e(n){var t,o,i,a,s,c;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(e.p=0,t=d()){e.n=1;break}throw new Error("wabt 模块加载失败");case 1:return e.n=2,t();case 2:return o=e.v,(i=o.readWasm(new Uint8Array(n),{readDebugNames:!0})).applyNames(),a=i.toText({foldExprs:!1,inlineExport:!1}),i.destroy(),s=v(a),e.a(2,s);case 3:throw e.p=3,c=e.v,new Error("WASM 解析失败: ".concat(c.message));case 4:return e.a(2)}},e,null,[[0,3]])}))).apply(this,arguments)}function g(e){return w.apply(this,arguments)}function w(){return(w=a(r().m(function e(n){var t,o,i,a,c,u;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(e.p=0,console.log("[wasmAnalyzer] analyzeWasmFile 开始:",n),s.existsSync(n)){e.n=1;break}return console.log("[wasmAnalyzer] 文件不存在:",n),e.a(2,null);case 1:t=s.readFileSync(n),console.log("[wasmAnalyzer] 文件大小:",t.length),o=m(t),console.log("[wasmAnalyzer] 文件类型:",o),c=o,e.n="wasm"===c?2:"wasm.br"===c?3:4;break;case 2:return i=t,e.a(3,5);case 3:return console.log("[wasmAnalyzer] 开始解压 Brotli..."),i=y(t),console.log("[wasmAnalyzer] 解压后大小:",i.length),e.a(3,5);case 4:return console.log("[wasmAnalyzer] 未知文件类型"),e.a(2,null);case 5:return console.log("[wasmAnalyzer] 开始解析 WASM..."),e.n=6,h(i);case 6:return a=e.v,console.log("[wasmAnalyzer] 解析完成:",a),e.a(2,a);case 7:return e.p=7,u=e.v,console.error("[wasmAnalyzer] WASM 分析错误: ".concat(u.message)),console.error("[wasmAnalyzer] 错误堆栈: ".concat(u.stack)),e.a(2,null)}},e,null,[[0,7]])}))).apply(this,arguments)}function S(e){if(!s.existsSync(e))return null;var n=s.readdirSync(e).find(function(e){return e.endsWith(".wasm")||e.endsWith(".wasm.br")||e.endsWith(".unityweb.wasm.br")||e.endsWith(".wasm.unityweb")});return n?c.join(e,n):null}function k(){return(k=a(r().m(function e(n,t){var o,i,a,s,u,l,f,p,d,m,y,v;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(console.log("[wasmAnalyzer] getSplitDetails 开始, entryPath:",n),o=c.join(n,"wasmcode"),i=c.join(n,"wasmcode1"),a=S(o),console.log("[wasmAnalyzer] 主包 WASM 路径:",a),a){e.n=1;break}return console.log("[wasmAnalyzer] 未找到主包 WASM 文件"),e.a(2,null);case 1:return s=S(i),console.log("[wasmAnalyzer] 子包 WASM 路径:",s),e.p=2,console.log("[wasmAnalyzer] 开始分析主包..."),e.n=3,g(a);case 3:if(u=e.v,console.log("[wasmAnalyzer] 主包分析结果:",u),u){e.n=4;break}return console.log("[wasmAnalyzer] 主包分析失败,返回 null"),e.a(2,null);case 4:return l=u.importedCount+u.localCount,f=0,"number"==typeof t&&t>0?f=Math.max(0,t-l):console.log("[wasmAnalyzer] totalFunctions 无效,无法通过差值计算子包函数数,默认返回 0"),p=t>0?parseFloat((l/t*100).toFixed(1)):0,d=u.isDevSplit?"Dev":"Prod",m="",y="warning",p<30?(m="不及格,继续加油收集!",y="warning"):p<40?(m="及格,继续加油!",y="success"):(m="优秀,点赞!👍",y="excellent"),e.a(2,{splitForm:d,mainFuncCount:l,subFuncCount:f,mainFuncRatio:p,splitTip:m,splitTipLevel:y,isDevSplit:u.isDevSplit});case 5:return e.p=5,v=e.v,console.error("获取分包详情失败: ".concat(v.message)),e.a(2,null)}},e,null,[[2,5]])}))).apply(this,arguments)}e.exports={analyzeWasmFile:g,getSplitDetails:function(e,n){return k.apply(this,arguments)},detectFileType:m,decompressBrotli:y,getWasmFunctionStats:h,parseWatForFunctions:v}},7172:e=>{"use strict";e.exports=require("archiver")},7175:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,s(r.key),r)}}function i(e,n,t){return n&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function a(e,n,t){return(n=s(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var c=t(8320),u=new(i(function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),a(this,"wasmInit",function(e){return c.init(e)}),a(this,"wasmUpdate",function(e){return c.init(Object.assign(e,{isUpdate:!0}))}),a(this,"wasmSplitDev",function(e){return c.splitBase(Object.assign(e,{isRelease:!1}))}),a(this,"wasmSplitProd",function(e){return c.splitBase(Object.assign(e,{isRelease:!0}))}),a(this,"wasmSplitInfo",function(e){return c.getSplitInfo(e)}),a(this,"wasmSplitReport",function(e){return c.reportCalledFuncs(e)}),a(this,"wasmSplitReportIndex",function(e){return c.reportCalledFuncsIndex(e)}),a(this,"wasmRollBack",function(e){return c.rollbackEntryChanges(e)}),a(this,"initConfig",function(){return c.initConfig()})})),l=u.wasmInit,f=u.wasmUpdate,p=u.wasmSplitDev,d=u.wasmSplitProd,m=u.wasmSplitInfo,y=u.wasmSplitReport,v=u.wasmSplitReportIndex,h=u.wasmRollBack,b=u.initConfig;e.exports={wasmInit:l,wasmUpdate:f,wasmSplitDev:p,wasmSplitProd:d,wasmSplitInfo:m,wasmSplitReport:y,wasmSplitReportIndex:v,wasmRollBack:h,initConfig:b}},7252:e=>{"use strict";e.exports=require("express")},7372:e=>{var n=new Set;function t(e){var t=JSON.stringify(e);n.forEach(function(e){1===e.readyState&&e.send(t)})}e.exports={setupWebSocket:function(e){e.on("connection",function(e){n.add(e),console.log("WebSocket 客户端已连接"),e.on("close",function(){n.delete(e),console.log("WebSocket 客户端已断开")}),e.on("error",function(t){console.error("WebSocket 错误:",t.message),n.delete(e)}),e.send(JSON.stringify({type:"connected",message:"WebSocket 连接成功"}))})},broadcast:t,sendProgress:function(e,n,r){t({type:"progress",step:e,progress:n,message:r,timestamp:Date.now()})},sendComplete:function(e,n){t({type:"complete",action:e,result:n,timestamp:Date.now()})},sendError:function(e,n){t({type:"error",action:e,error:n,timestamp:Date.now()})},sendLog:function(e,n){t({type:"log",level:e,message:n,timestamp:Date.now()})}}},8085:e=>{e.exports={FAIL_CODE:-1,SUCCEED_CODE:0}},8320:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=a(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,s=!0,c=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return s=e.done,e},e:function(e){c=!0,i=e},f:function(){try{s||null==t.return||t.return()}finally{if(c)throw i}}}}function i(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,i,a,s=[],c=!0,u=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(e,n)||a(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,n){if(e){if("string"==typeof e)return s(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?s(e,n):void 0}}function s(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function c(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",o=t.toStringTag||"@@toStringTag";function i(t,r,o,i){var c=r&&r.prototype instanceof s?r:s,l=Object.create(c.prototype);return u(l,"_invoke",function(t,r,o){var i,s,c,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,s=0,c=e,p.n=t,a}};function d(t,r){for(s=t,c=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(c=i[(s=i[4])?5:(s=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(s=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,s=0))}if(o||t>1)return a;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),s=l,c=m;(n=s<2?e:c)||!f;){i||(s?s<3?(s>1&&(p.n=-1),d(s,c)):p.n=c:p.v=c);try{if(u=2,i){if(s||(o="next"),n=i[o]){if(!(n=n.call(i,c)))throw TypeError("iterator result is not an object");if(!n.done)return n;c=n.value,s<2&&(s=0)}else 1===s&&(n=i.return)&&n.call(i),s<2&&(c=TypeError("The iterator does not provide a '"+o+"' method"),s=1);i=e}else if((n=(f=p.n<0)?c:t.call(r,p))!==a)break}catch(n){i=e,s=1,c=n}finally{u=1}}return{value:n,done:f}}}(t,o,i),!0),l}var a={};function s(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(u(n={},r,function(){return this}),n),d=f.prototype=s.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,u(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,u(d,"constructor",f),u(f,"constructor",l),l.displayName="GeneratorFunction",u(f,o,"GeneratorFunction"),u(d),u(d,o,"Generator"),u(d,r,function(){return this}),u(d,"toString",function(){return"[object Generator]"}),(c=function(){return{w:i,m}})()}function u(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}u=function(e,n,t,r){function i(n,t){u(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(i("next",0),i("throw",1),i("return",2))},u(e,n,t,r)}function l(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function f(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){l(i,r,o,a,s,"next",e)}function s(e){l(i,r,o,a,s,"throw",e)}a(void 0)})}}function p(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,d(r.key),r)}}function d(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var m=t(6928),y=t(9896),v=t(8720),h=t(6626),b=t(6471),g=t(9664),w=t(5322),S=t(5759),k=t(2225),P=(t(3427).downloadFile,t(4901)),j=t(9937),E=function(){return e=function e(){var n,t,r;!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),n=this,t="downloadSplitedFiles",r=function(){var e=f(c().m(function e(n){var t,r,o,i,a,s,u,l;return c().w(function(e){for(;;)if(0===e.n)return t=n.appId,r=n.requestToken,o=n.md5,i=n.subVersion,a=n.mainWasmFileUrl,s=n.mainWasmFilePath,u=n.subWasmFileUrl,l=n.subWasmFilePath,e.a(2,Promise.all([g.downloadFile({appId:t,requestToken:r,md5:o,subVersion:i,category:3,filePath:s,url:a}),g.downloadFile({appId:t,requestToken:r,md5:o,subVersion:i,category:4,filePath:l,url:u})]))},e)}));return function(n){return e.apply(this,arguments)}}(),(t=d(t))in n?Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[t]=r,this.config=null,this.codeMd5=null,this.uploadedWasmCodeBlobId=null,this.uploadedSymbolBlobId=null,this.importLength=null,this.tableSize=null,this.spinner=null},n=[{key:"initConfig",value:function(){return this.config=h.loadProjectConfig(),this.config}},{key:"ensureSpinner",value:function(){return this.spinner||(this.spinner=v()),this.spinner}},{key:"stopSpinner",value:function(){this.spinner&&this.spinner.isSpinning&&this.spinner.stop()}},{key:"validateProject",value:function(e,n,t,r){g.setEnv(t);try{return this.config=h.loadProjectConfig(n),this.config.isPre=t,r&&(this.config.isRelease=!0),b.validateProjectStructure(this.config)}catch(e){return{code:-1,msg:null,errMsg:"配置加载失败: ".concat(e.message)}}}},{key:"uploadSplitBaseFiles",value:(H=f(c().m(function e(n){var t,r,o,i;return c().w(function(e){for(;;)if(0===e.n)return t=n.appId,r=n.requestToken,o=n.wasmFilePath,i=n.symbolFilePath,e.a(2,Promise.all([g.uploadFile({appId:t,requestToken:r,filePath:o,category:0}),g.uploadFile({appId:t,requestToken:r,filePath:i,category:1})]))},e)})),function(e){return H.apply(this,arguments)})},{key:"queryCountReportWasmFunction",value:(L=f(c().m(function e(){var n,t;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.readSplitConfig();case 1:if(n=e.v){e.n=2;break}return e.a(2,{code:-1,msg:"获取分包配置失败,无法获取在线函数列表",errMsg:"获取分包配置失败,无法获取在线函数列表"});case 2:return e.n=3,g.queryCountReportWasmFunction({appId:this.config.appId,requestToken:this.config.requestToken,md5:n.codeMd5,subVersion:n.subVersion});case 3:if(0===(t=e.v).code){e.n=4;break}throw new Error("获取在线函数列表失败,将不合并在线函数列表,错误日志: ".concat(t.errorMessage));case 4:return e.a(2,t.result)}},e,this)})),function(){return L.apply(this,arguments)})},{key:"addGameVersion",value:(B=f(c().m(function e(){var n;return c().w(function(e){for(;;)switch(e.n){case 0:return n={appId:this.config.appId,md5:this.codeMd5,versionDesc:"test",unityVersion:"1.0.0",unityPluginVersion:"1.0.0",wasmSplitPluginVersion:"1.0.0",wasmFileId:this.uploadedWasmCodeBlobId,symbolFileId:this.uploadedSymbolBlobId,requestToken:this.config.requestToken},e.n=1,g.addGameVersion(n);case 1:if(0===e.v.code){e.n=2;break}throw new Error("游戏版本已经存在");case 2:return e.a(2)}},e,this)})),function(){return B.apply(this,arguments)})},{key:"initialize",value:(U=f(c().m(function e(n){var t,r,o,i,a,s,u,l=this;return c().w(function(e){for(;;)switch(e.n){case 0:if(t=n.isUpdate,r=n.incrementMd5,o=r||null,!t){e.n=3;break}if(o){e.n=2;break}return e.n=1,this.queryMd5HistoryHaveRelease();case 1:o=e.v;case 2:this.spinner.succeed("增量更新版本:".concat(o));case 3:return i={appId:this.config.appId,md5:this.codeMd5,requestToken:this.config.requestToken,incrementUpdate:!!t},o&&(i.incrementMd5=o),this.spinner.start("".concat(t?"增量更新":"初始化","开始,请稍等……")),e.n=4,g.initialize(i);case 4:return a=e.v,s=a.result,u={appId:this.config.appId,md5:this.codeMd5,requestToken:this.config.requestToken,uuid:s},e.a(2,this.pollForResult(function(){return g.getInitResult(u)},function(){var e=f(c().m(function e(n){var o,i,a,s,u;return c().w(function(e){for(;;)switch(e.n){case 0:if(!n.result){e.n=4;break}if(o=n.result,i=o.importSize,a=o.tableSize,l.importLength=i,l.tableSize=a,l.spinner.succeed("wasmcode信息采样完成,tableSize: ".concat(a)),!t){e.n=3;break}return l.spinner.start("开始获取在线函数列表,请稍等……"),e.n=1,l.queryWasmFunctionOnlineFindList(l.codeMd5);case 1:if(s=e.v,l.spinner.succeed("在线函数列表个数: ".concat(s.length)),!(s.length>0)){e.n=3;break}return e.n=2,g.reportCalledFuncs({appId:l.config.appId,requestToken:l.config.requestToken,calledFuncList:s,subVersion:"-1",md5:l.codeMd5});case 2:0!==(u=e.v).code&&(l.spinner.fail("上报在线函数列表失败,错误信息:".concat(u.errorMessage)),process.exit(1)),l.spinner.succeed("".concat(r,"版本:合并在线玩家采集到的函数列表成功"));case 3:return e.a(2,!0);case 4:return e.a(2,!1)}},e)}));return function(n){return e.apply(this,arguments)}}()))}},e,this)})),function(e){return U.apply(this,arguments)})},{key:"formatHistoryDate",value:function(e){if(!e)return"-";try{var n=new Date(e),t=function(e){return e.toString().padStart(2,"0")};return"".concat(n.getFullYear(),"-").concat(t(n.getMonth()+1),"-").concat(t(n.getDate())," ").concat(t(n.getHours()),":").concat(t(n.getMinutes()),":").concat(t(n.getSeconds()))}catch(n){return e}}},{key:"ensureCodeMd5",value:(R=f(c().m(function e(){var n;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if(!this.codeMd5){e.n=1;break}return e.a(2,this.codeMd5);case 1:return e.p=1,e.n=2,this.readSplitConfig();case 2:if(!(n=e.v).codeMd5){e.n=3;break}return this.codeMd5=n.codeMd5,e.a(2,this.codeMd5);case 3:e.n=5;break;case 4:e.p=4,e.v;case 5:throw new Error("未找到分包配置,无法读取增量历史版本");case 6:return e.a(2)}},e,this,[[1,4]])})),function(){return R.apply(this,arguments)})},{key:"fetchIncrementHistoryList",value:(W=f(c().m(function e(){var n,t;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.ensureCodeMd5();case 1:return n=e.v,e.n=2,g.queryMd5HistoryHaveRelease({appId:this.config.appId,md5:n,requestToken:this.config.requestToken});case 2:if(0===(t=e.v).code){e.n=3;break}throw new Error("获取历史版本失败: ".concat(t.errorMessage||t.msg||"未知错误"));case 3:return e.a(2,t.result||[])}},e,this)})),function(){return W.apply(this,arguments)})},{key:"buildHistoryLabel",value:function(e){return"版本MD5: ".concat(e.md5," | 首包个数: ").concat(null!=e.mainSymbolSize?e.mainSymbolSize:"-"," | 创建时间: ").concat(e.createdAt?this.formatHistoryDate(e.createdAt):"-")}},{key:"getIncrementHistory",value:(q=f(c().m(function e(){var n,t=this;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.fetchIncrementHistoryList();case 1:return n=e.v,e.a(2,n.slice(0,10).map(function(e){return{md5:e.md5,mainFuncCount:null!=e.mainSymbolSize?e.mainSymbolSize:null,createdAt:e.createdAt||null,createdAtText:t.formatHistoryDate(e.createdAt),label:t.buildHistoryLabel(e)}}))}},e,this)})),function(){return q.apply(this,arguments)})},{key:"queryMd5HistoryHaveRelease",value:(D=f(c().m(function e(){var n,t,r,o,i=this;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.fetchIncrementHistoryList();case 1:if(0!==(n=e.v).length){e.n=2;break}throw new Error("没有历史版本");case 2:return t=n.slice(0,10).map(function(e){return{name:i.buildHistoryLabel(e),value:e.md5}}),e.n=3,j.prompt([{type:"list",name:"selectedMd5",message:"请选择历史版本进行增量分包(最近10个版本):",choices:t,pageSize:10}]);case 3:return r=e.v,o=r.selectedMd5,e.a(2,o)}},e,this)})),function(){return D.apply(this,arguments)})},{key:"queryWasmFunctionOnlineFindList",value:(N=f(c().m(function e(n){var t;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,g.queryWasmFunctionOnlineFindList({md5:n,appId:this.config.appId,requestToken:this.config.requestToken});case 1:if(0===(t=e.v).code){e.n=2;break}return this.spinner.fail("获取在线函数列表失败,将不合并在线函数列表,错误日志: ".concat(t.errorMessage)),e.a(2,[]);case 2:return e.a(2,t.result||[])}},e,this)})),function(e){return N.apply(this,arguments)})},{key:"pollForResult",value:(A=f(c().m(function e(n,t){var r,o=arguments;return c().w(function(e){for(;;)if(0===e.n)return r=o.length>2&&void 0!==o[2]?o[2]:5e3,e.a(2,new Promise(function(e,o){var i=function(){var a=f(c().m(function a(){var s,u;return c().w(function(a){for(;;)switch(a.p=a.n){case 0:return a.p=0,a.n=1,n();case 1:return s=a.v,a.n=2,t(s);case 2:if(!a.v){a.n=3;break}e(s),a.n=4;break;case 3:setTimeout(i,r);case 4:a.n=6;break;case 5:a.p=5,u=a.v,o(u);case 6:return a.a(2)}},a,null,[[0,5]])}));return function(){return a.apply(this,arguments)}}();i()}))},e)})),function(e,n){return A.apply(this,arguments)})},{key:"isHasInit",value:function(){var e=m.resolve(this.config.entry,".codesplitcache"),n=m.resolve(e,"codesplit-config.json");return y.existsSync(n)}},{key:"init",value:(M=f(c().m(function e(n){var t,r,o,i,a,s,u;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if(this.ensureSpinner().start("文件备份开始,请不要再编辑项目文件……"),(t=this.validateProject("init",n.srcPath,n.isPreEnv)).valid||(this.spinner.fail("项目校验失败: ".concat(t.errMsg)),process.exit(1)),e.p=1,r=m.resolve(this.config.entry,".codesplitcache"),o=m.resolve(r,"original"),i=m.resolve(r,"codesplit-config.json"),n.isUpdate||!y.existsSync(o)||!y.existsSync(i)){e.n=2;break}return this.spinner.succeed("项目已经初始化过,无需重复初始化"),this.spinner.info("如需重新初始化,请先删除 .codesplitcache 目录,或使用增量分包模式"),e.a(2);case 2:this.setupCacheDirectories(r,o),e.p=3,w.syncPluginCacheFiles(this.config.entry,o),this.spinner.succeed("文件备份完成"),e.n=5;break;case 4:throw e.p=4,a=e.v,this.spinner.fail("文件备份失败:".concat(a.message)),a;case 5:return e.n=6,this.processSymbolFiles(r,o);case 6:return this.spinner.start(),this.spinner.text="开始上传文件……",e.p=7,e.n=8,this.uploadFiles(o,r);case 8:e.n=10;break;case 9:e.p=9,s=e.v,this.spinner.fail("上传文件失败:".concat(s.message)),process.exit(1);case 10:return this.spinner.succeed("上传文件成功"),this.spinner.start(),this.spinner.text="添加游戏版本……",e.n=11,this.addGameVersion();case 11:return this.spinner.succeed("添加游戏版本成功"),this.spinner.info("开始初始化,请稍等……"),e.n=12,this.initialize({isUpdate:n.isUpdate,incrementMd5:n.incrementMd5});case 12:this.spinner.succeed("".concat(n.isUpdate?"增量更新":"初始化","完成")),this.saveSplitConfig(r),this.spinner.stop("WASM分包初始化完成"),n.isUpdate&&this.spinner.info("接下来请按以下步骤操作:\n 1. 执行 jgc wasm-split-dev 进行dev版本分包,jgc preview进行真机动态收集函数,反复执行直到没有新增函数;\n 2. 如无新增函数,执行 jgc wasm-split-prod 拆分成线上版本;\n 3. 执行 jgc upload 将分包结果上传到MP控制台;\n3. 执行 jgc upload 将分包结果上传到MP控制台;"),e.n=14;break;case 13:throw e.p=13,u=e.v,this.spinner.fail(u.message),u;case 14:return e.a(2)}},e,this,[[7,9],[3,4],[1,13]])})),function(e){return M.apply(this,arguments)})},{key:"setupCacheDirectories",value:function(e,n){var t=m.resolve(n,"wasmcode"),r=m.resolve(n,this.config.entry,"wasmcode1");[n,t].forEach(function(e){y.existsSync(e)||y.mkdirSync(e,{recursive:!0})}),y.existsSync(r)&&y.rmSync(r,{recursive:!0})}},{key:"processSymbolFiles",value:(G=f(c().m(function e(n,t){var r,o,i,a,s;return c().w(function(e){for(;;)switch(e.n){case 0:return r=m.resolve(n,"unpack"),o=m.resolve(this.config.entry,"webgl.wasm.symbols.unityweb"),i=m.resolve(r,"symbol.json"),y.existsSync(r)||y.mkdirSync(r,{recursive:!0}),e.n=1,k(o,i);case 1:return a=m.resolve(t,"wasmcode"),s=y.readdirSync(a).find(function(e){return".br"===m.extname(e)}),this.codeMd5=s.split(".")[0],e.a(2,{unpackSymbolsPath:i,mainWasmCachePath:s,mainWasmCacheDir:a})}},e,this)})),function(e,n){return G.apply(this,arguments)})},{key:"runIncrementInit",value:(C=f(c().m(function e(n){var t,r,o;return c().w(function(e){for(;;)switch(e.n){case 0:if(t=n.srcPath,r=n.isPreEnv,o=n.incrementMd5){e.n=1;break}throw new Error("缺少增量版本 MD5");case 1:return e.a(2,this.init({srcPath:t,isPreEnv:r,isUpdate:!0,incrementMd5:o}))}},e,this)})),function(e){return C.apply(this,arguments)})},{key:"uploadFiles",value:(I=f(c().m(function e(n,t){var r,o,a,s,u,l,f;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.processSymbolFiles(t,n,!1);case 1:return r=e.v,o=r.unpackSymbolsPath,a=r.mainWasmCachePath,r.mainWasmCacheDir,e.n=2,this.uploadSplitBaseFiles({appId:this.config.appId,requestToken:this.config.requestToken,wasmFilePath:m.join(n,"wasmcode",a),symbolFilePath:o});case 2:if(s=e.v,u=i(s,2),l=u[0],f=u[1],l&&f){e.n=3;break}throw new Error("上传文件失败");case 3:this.uploadedWasmCodeBlobId=l,this.uploadedSymbolBlobId=f;case 4:return e.a(2)}},e,this)})),function(e,n){return I.apply(this,arguments)})},{key:"saveSplitConfig",value:function(e){var n=m.resolve(e,"codesplit-config.json"),t={appId:this.config.appId,codeMd5:this.codeMd5,tableSize:this.tableSize,uploadedWasmCodeBlobId:this.uploadedWasmCodeBlobId,uploadedSymbolBlobId:this.uploadedSymbolBlobId,importLength:this.importLength};y.writeFileSync(n,JSON.stringify(t,null,2))}},{key:"getSplitInfo",value:(x=f(c().m(function e(n){var t,r,o,i;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if((t=this.validateProject("getSplitInfo",n.srcPath,n.isPreEnv)).valid){e.n=1;break}return e.a(2,t);case 1:return e.p=1,e.n=2,this.readSplitConfig();case 2:if(r=e.v,(o={appId:this.config.appId,md5:r.codeMd5,requestToken:this.config.requestToken,subVersion:r.subVersion}).subVersion){e.n=3;break}throw new Error("暂无分包信息");case 3:return e.n=4,this.querySplitInfo(o);case 4:return e.a(2,e.v);case 5:return e.p=5,i=e.v,S.endLogProcess(null,i.message),e.a(2,{code:-1,msg:"获取分包信息失败",errMsg:i.message})}},e,this,[[1,5]])})),function(e){return x.apply(this,arguments)})},{key:"readSplitConfig",value:(T=f(c().m(function e(){var n,t,r,o;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=m.resolve(this.config.entry,".codesplitcache"),t=m.resolve(n,"codesplit-config.json"),e.p=1,e.n=2,y.promises.readFile(t,"utf-8");case 2:return r=e.v,e.a(2,JSON.parse(r));case 3:throw e.p=3,o=e.v,new Error("读取分包配置文件失败: ".concat(o.message));case 4:return e.a(2)}},e,this,[[1,3]])})),function(){return T.apply(this,arguments)})},{key:"querySplitInfo",value:(F=f(c().m(function e(n){var t,r,o,i,a,s,u;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:return t=n.appId,r=n.requestToken,o=n.md5,i=n.subVersion,e.p=1,a={appId:t,md5:o,requestToken:r,subVersion:i},e.n=2,g.getSymbolSize(a);case 2:if(s=e.v,null!=(u=s.result).mainSymbolSize&&null!=u.patchSymbolSize){e.n=3;break}throw new Error("未查询到分包函数信息");case 3:return e.a(2,{code:0,msg:"查询分包信息成功 \n主包函数数量:".concat(u.mainSymbolSize," \n子包函数数量:").concat(u.patchSymbolSize),errMsg:"查询分包信息成功"});case 4:throw e.p=4,e.v;case 5:return e.a(2)}},e,null,[[1,4]])})),function(e){return F.apply(this,arguments)})},{key:"getGameSplitRes",value:(_=f(c().m(function e(n){var t=this;return c().w(function(e){for(;;)if(0===e.n)return e.a(2,new Promise(function(e,r){var o=function(){var i=f(c().m(function i(a){var s,u,l,f;return c().w(function(i){for(;;)switch(i.p=i.n){case 0:return s=null,i.p=1,u={appId:t.config.appId,md5:t.codeMd5,subVersion:n.subVersion,requestToken:t.config.requestToken},i.n=2,g.getGameSplitInfo(u);case 2:if(0===(l=i.v).code){i.n=3;break}return s&&clearTimeout(s),r(new Error(l.errorMessage)),i.a(2);case 3:null!==l.result?(s&&clearTimeout(s),e(l.result)):(s&&clearTimeout(s),s=setTimeout(function(){return o()},5e3)),i.n=5;break;case 4:i.p=4,f=i.v,s&&clearTimeout(s),r(f);case 5:return i.a(2)}},i,null,[[1,4]])}));return function(e){return i.apply(this,arguments)}}();o()}))},e)})),function(e){return _.apply(this,arguments)})},{key:"splitBase",value:(O=f(c().m(function e(n){var t,r,o,i,a,s,u,l;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if(t=(new Date).getTime(),(r=this.validateProject("split",n.srcPath,n.isPreEnv,n.isRelease)).valid){e.n=1;break}return e.a(2,r);case 1:return e.p=1,o=this.initializeSplitConfig(),i=o.codeSplitConfigPath,a=o.splitConfig,this.codeMd5=a.codeMd5,this.ensureSpinner().start("发送分包请求……"),e.n=2,this.buildSubPackage(n,a,i);case 2:if(s=e.v,this.spinner.succeed("当前分包版本:"+s),s){e.n=3;break}return this.spinner.fail("分包构建失败,服务正忙"),e.a(2,{code:-1,msg:"分包构建失败,服务正忙",errMsg:"服务正忙"});case 3:return this.spinner.start("获取分包结果,请稍等……"),e.n=4,this.getGameSplitRes({subVersion:s});case 4:return u=e.v,this.spinner.succeed("获取分包结果完成"),this.spinner.start("下载分包代码中……"),e.n=5,this.processSplitFiles(u,a);case 5:return this.spinner.succeed("下载分包代码完成"),e.n=6,this.querySplitInfo({appId:this.config.appId,md5:a.codeMd5,requestToken:this.config.requestToken,subVersion:a.subVersion});case 6:return e.v,e.a(2,{code:0,subVersion:a.subVersion,msg:"WASM分包成功 \n分包总耗时:".concat((new Date).getTime()-t,"ms"),errMsg:null});case 7:return e.p=7,l=e.v,this.spinner.fail("分包构建失败,错误信息:"+l.message),this.spinner.info("如出现类似“it != indexes.functionIndexes.end()”的报错,基本是 Unity转出成小游戏,未在转换面板勾选 Profiling funcs"),e.a(2,{code:-1,msg:"分包构建失败,如出现类似“it != indexes.functionIndexes.end()”的报错,基本是 Unity转出成小游戏,未在转换面板勾选 Profiling funcs",errMsg:l.message})}},e,this,[[1,7]])})),function(e){return O.apply(this,arguments)})},{key:"initializeSplitConfig",value:function(){var e=m.resolve(this.config.entry,".codesplitcache"),n=m.resolve(e,"codesplit-config.json");return{cacheDir:e,codeSplitConfigPath:n,splitConfig:JSON.parse(y.readFileSync(n,"utf-8"))}}},{key:"buildSubPackage",value:(E=f(c().m(function e(n,t,r){var o,i,a;return c().w(function(e){for(;;)switch(e.n){case 0:return o={appId:this.config.appId,md5:this.codeMd5,requestToken:this.config.requestToken,isRelease:!!n.isRelease},e.n=1,g.split(o);case 1:if(0===(i=e.v).code){e.n=5;break}if(!this.isRetryableError(i.errorMessage)){e.n=3;break}if(a=t.subVersion,S.logInfo("尝试查找历史版本,subVersion:",a),a){e.n=2;break}return e.a(2,!1);case 2:e.n=4;break;case 3:throw new Error(i.errorMessage);case 4:e.n=6;break;case 5:a=i.result,t.subVersion=a,y.writeFileSync(r,JSON.stringify(t,null,2));case 6:return e.a(2,a)}},e,this)})),function(e,n,t){return E.apply(this,arguments)})},{key:"isRetryableError",value:function(e){return["当前md5有正在执行的构建任务,请稍后重试","资源超负荷运行啦,请稍后再试"].includes(e)}},{key:"processSplitFiles",value:(l=f(c().m(function e(n,t){var r,o,i,a,s;return c().w(function(e){for(;;)switch(e.n){case 0:return r=n.mainWasmFilePath,o=n.subWasmFilePath,i=this.config.fullEntryPath,a=this.config.mainWasmCachePath,s=this.createWasmPaths(i,a),e.n=1,this.downloadWasmFiles(r,o,s);case 1:w.processJavaScriptFiles(t,i,this.config),w.updateConfigFiles(t,i,this.config);case 2:return e.a(2)}},e,this)})),function(e,n){return l.apply(this,arguments)})},{key:"createWasmPaths",value:function(e,n){var t=m.resolve(e,"wasmcode",n),r=m.resolve(e,"wasmcode1",n);return y.existsSync(r)||y.mkdirSync(r,{recursive:!0}),{mainWasmPath:t,subWasmPath:r}}},{key:"downloadWasmFiles",value:(u=f(c().m(function e(n,t,r){return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.downloadSplitedFiles({mainWasmFileUrl:n,mainWasmFilePath:r.mainWasmPath,subWasmFileUrl:t,subWasmFilePath:r.subWasmPath});case 1:return e.a(2)}},e,this)})),function(e,n,t){return u.apply(this,arguments)})},{key:"reportCalledFuncs",value:(s=f(c().m(function e(){var n,t,r,a,s,u,l,f,p,d,v,h,b,w,S,k,E,O,_,F,T,x,I,C,G,M,A,N,D,q,W,R,U,B,L,H,z,V,J,Q,Y=this,$=arguments;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if(V=function(e){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,t=[],r=0;r<e.length;r+=n)t.push(e.slice(r,r+n));return t},t=(n=$.length>0&&void 0!==$[0]?$[0]:{}).srcPath,r=void 0===t?"":t,a=n.isPreEnv,s=void 0!==a&&a,u=n.funcList,l=void 0===u?null:u,f=n.suppressExit,p=void 0!==f&&f,d=function(e){if(p)throw new Error(e);Y.ensureSpinner().fail(e),process.exit(1)},(v=this.validateProject("getSplitInfo",r,s)).valid||d(v.errMsg||"校验失败:请先执行 jgc config 命令,并确保各项配置正确"),e.p=1,this.ensureSpinner().start("开始效验……"),h=Array.isArray(l)&&l.length>0,b=null,!h){e.n=2;break}b=l.map(function(e){return(e||"").trim()}).filter(function(e){return e.length>0}),e.n=5;break;case 2:return w=(new P).getPrompts(),e.n=3,j.prompt(w);case 3:return S=e.v,k=m.resolve(S.entry),y.existsSync(k)||(k=m.resolve(this.config.fullEntryPath,S.entry),y.existsSync(k)||(k=m.resolve(S.entry))),y.existsSync(k)||d("函数名文件所在路径不存在:".concat(k)),e.n=4,y.readFileSync(k,"utf8");case 4:E=e.v,(b=E.split(/\r?\n/).map(function(e){return e.trim()}).filter(function(e){return e.length>0})).shift();case 5:if(h&&b.length>0&&/func|函数/i.test(b[0])&&b.shift(),b&&0!==b.length||d("函数名文件为空,请检查文件内容"),O=m.resolve(this.config.fullEntryPath,".codesplitcache"),_=m.resolve(O,"codesplit-config.json"),y.existsSync(_)){e.n=6;break}return this.spinner.info("该项目还未执行wasm-init 命令,将自动执行 wasm-init 命令"),e.n=6,this.init({srcPath:r,isPreEnv:s,isUpdate:!1,skipUpload:!1});case 6:for(this.spinner.succeed("校验通过"),this.spinner.start(),this.spinner.text="函数名文件解析中……",F=[],T=m.resolve(O,"unpack"),x=m.resolve(T,"symbol.json"),I=y.readFileSync(x,"utf8"),C=JSON.parse(I),G=0,M=Object.entries(C);G<M.length;G++)A=i(M[G],2),N=A[0],D=A[1],b.includes(D)&&F.push(N);return e.n=7,this.readSplitConfig();case 7:q=e.v,this.spinner.succeed("函数名文件解析成功"),this.spinner.start(),this.spinner.text="函数名上报中……",W=0,R=o(V(F)),e.p=8,R.s();case 9:if((U=R.n()).done){e.n=13;break}return B=U.value,e.n=10,g.reportCalledFuncs({appId:this.config.appId,requestToken:this.config.requestToken,calledFuncList:B,subVersion:"-1",md5:q.codeMd5});case 10:if(0===(L=e.v).code){e.n=11;break}throw new Error("上报函数名失败: ".concat(L.errorMessage));case 11:W+=L.result;case 12:e.n=9;break;case 13:e.n=15;break;case 14:e.p=14,J=e.v,R.e(J);case 15:return e.p=15,R.f(),e.f(15);case 16:if(this.spinner.succeed("上报函数名完成:本次函数数量为".concat(F.length,"个,去重后上报数量为").concat(W,"个")),!p){e.n=17;break}return e.a(2,{code:0,msg:"上报函数名完成,数量".concat(F.length,"个"),reportedCount:F.length});case 17:return this.spinner.start(),this.spinner.text="dev模式拆包中,该环节耗时较长,请耐心等待……\n",e.n=18,this.splitBase({srcPath:"",isPreEnv:n.isPreEnv,isRelease:!1});case 18:return 0!==(H=e.v).code&&(this.spinner.fail("dev模式拆包失败,错误日志:".concat(H.errMsg)),this.spinner.info("处理方案:".concat(H.msg)),process.exit(1)),this.spinner.succeed("dev模式拆包完成"),this.spinner.start(),this.spinner.text="开始获取 dev分包结果,请稍等",e.n=19,this.getSplitInfo(n);case 19:0!==(z=e.v).code&&(this.spinner.fail("获取 dev 分包结果失败,报错信息:".concat(z.errMsg)),process.exit(1)),this.spinner.succeed("获取 dev分包结果完成"),this.spinner.info("接下来请按以下步骤操作:\n1. 执行 jgc preview 继续动态收集函数;\n2. 如无新增函数,执行 jgc wasm-split-prod 拆分成线上版本;\n3. 执行 jgc upload 将分包结果上传到MP控制台;\n"),process.exit(1),e.n=22;break;case 20:if(e.p=20,Q=e.v,!p){e.n=21;break}throw new Error(Q.message);case 21:this.spinner.fail("上传函数名失败,错误信息:".concat(Q.message)),process.exit(1);case 22:return e.a(2)}},e,this,[[8,14,15,16],[1,20]])})),function(){return s.apply(this,arguments)})},{key:"reportCalledFuncsIndex",value:(a=f(c().m(function e(n){var t,r,i,a,s,u,l,f,p,d,v,h,b,w,k;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if((t=this.validateProject("getSplitInfo",n.srcPath,n.isPreEnv)).valid){e.n=1;break}return e.a(2,t);case 1:return e.p=1,r=function(e){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,t=[],r=0;r<e.length;r+=n)t.push(e.slice(r,r+n));return t},i=(new P).getPrompts(),e.n=2,j.prompt(i);case 2:if(a=e.v,s=m.resolve(a.entry),y.existsSync(s)||(s=m.resolve(this.config.fullEntryPath,a.entry),y.existsSync(s)||(s=m.resolve(a.entry))),y.existsSync(s)){e.n=3;break}throw new Error("文件路径错误");case 3:return u=S.startLogProcess("函数名文件解析中"),e.n=4,y.readFileSync(s,"utf8");case 4:return l=e.v,(f=l.split(/\r?\n/)).shift(),e.n=5,this.readSplitConfig();case 5:p=e.v,u.stop("函数名文件解析成功"),u=S.startLogProcess("开始进行函数名索引上报中,请稍等"),d=o(r(f)),e.p=6,d.s();case 7:if((v=d.n()).done){e.n=10;break}return h=v.value,e.n=8,g.reportCalledFuncs({appId:this.config.appId,requestToken:this.config.requestToken,calledFuncList:h,subVersion:p.subVersion,md5:p.codeMd5});case 8:if(0===(b=e.v).code){e.n=9;break}throw new Error("上报函数名失败: ".concat(b.errorMessage));case 9:e.n=7;break;case 10:e.n=12;break;case 11:e.p=11,w=e.v,d.e(w);case 12:return e.p=12,d.f(),e.f(12);case 13:return u.stop("上报函数名成功"),e.a(2,{code:0,msg:"上报函数名完成,数量".concat(f.length,"个"),errMsg:null});case 14:return e.p=14,k=e.v,S.endLogProcess(null,k.message),e.a(2,{code:-1,msg:"上传函数名失败",errMsg:k.message})}},e,this,[[6,11,12,13],[1,14]])})),function(e){return a.apply(this,arguments)})},{key:"rollbackEntryChanges",value:(r=f(c().m(function e(n){var t,r,i,a,s,u,l,f,p,d,v,h,b,g,w,S,k,P,j,E;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if((t=this.validateProject("rollBack",n.srcPath,n.isPreEnv)).valid){e.n=1;break}return e.a(2,t);case 1:if(e.p=1,this.config&&this.config.fullEntryPath){e.n=2;break}return e.a(2,{code:-1,msg:"回退失败",errMsg:"配置未初始化或entryPath未设置"});case 2:if(r=this.config.fullEntryPath,y.existsSync(r)){e.n=3;break}return e.a(2,{code:-1,msg:"回退失败",errMsg:"entryPath不存在: ".concat(r)});case 3:for(this.ensureSpinner().start("开始关闭分包功能,请稍等……"),i=0,a=["game.json","game.js","webgl.wasm.framework.unityweb.js","weapp-adapter.js"],s=0,u=["wasm-split.js","game.json","game.js","webgl.wasm.framework.unityweb.js","weapp-adapter.js","wasmcode1"];s<u.length;s++)l=u[s],f=m.resolve(r,l),y.existsSync(f)&&(y.statSync(f).isDirectory()?y.rmSync(f,{recursive:!0,force:!0}):y.unlinkSync(f),i++);if(p=m.resolve(r,"wasmcode"),y.existsSync(p)&&y.rmSync(p,{recursive:!0,force:!0}),y.mkdirSync(p,{recursive:!0}),d=m.resolve(this.config.originalCacheDir,"wasmcode"),v=m.resolve(d,this.config.mainWasmCachePath),y.existsSync(v)&&(h=m.resolve(p,this.config.mainWasmCachePath),y.copyFileSync(v,h),b=m.resolve(p,"game.js"),y.writeFileSync(b,""),this.spinner.succeed("恢复原始的 wasm.br 文件完成:".concat(v))),this.config.originalCacheDir&&y.existsSync(this.config.originalCacheDir)){g=o(a);try{for(g.s();!(w=g.n()).done;)S=w.value,k=m.resolve(this.config.originalCacheDir,S),P=m.resolve(r,S),y.existsSync(k)&&(y.copyFileSync(k,P),i++)}catch(e){g.e(e)}finally{g.f()}}return j=m.resolve(r,".codesplitcache"),y.existsSync(j)&&y.rmSync(j,{recursive:!0,force:!0}),this.spinner.succeed("回退完成,共处理 ".concat(i," 个文件/目录")),e.a(2,{code:0,msg:"关闭分包功能成功",errMsg:null,rollbackCount:i});case 4:return e.p=4,E=e.v,this.spinner.fail("回退失败: ".concat(E.message)),e.a(2,{code:-1,msg:"回退失败",errMsg:E.message})}},e,this,[[1,4]])})),function(e){return r.apply(this,arguments)})}],n&&p(e.prototype,n),t&&p(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t,r,a,s,u,l,E,O,_,F,T,x,I,C,G,M,A,N,D,q,W,R,U,B,L,H}();e.exports=new E},8330:e=>{"use strict";e.exports=JSON.parse('{"name":"jd-minigame-ci","version":"1.0.2","description":"The jd-minigame-ci is a toolkit provided for developers of JD Mini Games. Developers can complete code upload and preview operations for JD Mini Games without the need to open the developer tools, simply by using this toolkit.","author":"chenlong328","license":"ISC","main":"dist/index.js","bin":{"jgc":"./dist/jgc.js"},"scripts":{"config":"NODE_ENV=development node ./dist/jgc.js config","preview":"NODE_ENV=development node ./dist/jgc.js preview","dev:config":"NODE_ENV=development node ./src/jgc.js config","dev:preview":"NODE_ENV=development node ./src/jgc.js preview","dev:upload":"NODE_ENV=development node ./src/jgc.js upload","dev:publish":"NODE_ENV=development node ./src/jgc.js publish","dev:wasm-split":"NODE_ENV=development node ./src/jgc.js wasm-split","dev:wasm-split:pre":"NODE_ENV=development node ./src/jgc.js wasm-split -D","build":"webpack --mode production --progress --config webpack.config.js && chmod 777 ./dist/index.js && chmod 777 ./dist/jgc.js"},"dependencies":{"@babel/cli":"^7.23.9","@babel/core":"^7.23.9","@babel/preset-env":"^7.23.9","archiver":"^6.0.1","axios":"^1.7.3","brotli":"^1.3.3","commander":"^11.1.0","cors":"^2.8.5","express":"^4.21.0","fs-extra":"^11.2.0","glob":"^10.3.10","inquirer":"8.2.6","jimp":"^0.22.12","jsqr":"1.4.0","marked":"^12.0.2","minimist":"^1.2.8","multer":"^1.4.5-lts.1","open":"^8.4.2","ora":"5.4.1","picocolors":"^1.0.0","qrcode":"^1.5.3","qrcode-terminal":"^0.12.0","string-width":"4.2.3","strip-ansi":"6.0.1","terser":"^5.44.0","wabt":"^1.0.36","ws":"^8.18.0"},"devDependencies":{"babel-loader":"^9.1.3","babel-minify-webpack-plugin":"^0.3.1","clean-webpack-plugin":"^4.0.0","copy-webpack-plugin":"^12.0.2","terser-webpack-plugin":"^5.3.10","webpack":"^5.90.3","webpack-cli":"^5.1.4","webpack-node-externals":"^3.0.0"},"files":["dist","package.json","README.md","unity-wasm-split.md"]}')},8461:e=>{"use strict";e.exports=require("multer")},8522:e=>{function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function t(e,n){for(var t=0;t<n.length;t++){var o=n[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,r(o.key),o)}}function r(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==n(t)?t:t+""}var o=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.configPrompts=[{name:"type",type:"list",message:"请选择项目类型:",choices:[{name:"游戏",value:"game"},{name:"插件",value:"plugin"}],default:"game"},{name:"appId",type:"input",message:"请输入appId:",validate:function(e){return!!e||"appId不能为空"}},{name:"requestToken",type:"input",message:"请输入代码上传秘钥:",validate:function(e){return!!e||"代码上传秘钥不能为空"}},{name:"entry",type:"input",message:"请输入需要被打包的游戏(或者插件)的路径:",default:"./"},{name:"versionName",type:"input",message:"请输入需要被打包的游戏(或者插件)的版本号:",default:"1.0.0"},{name:"description",type:"input",message:"请输入需要被打包的游戏的备注:",when:function(e){return"game"===e.type},default:""}]},(n=[{key:"getPrompts",value:function(){return this.configPrompts}}])&&t(e.prototype,n),r&&t(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r}();e.exports=o},8577:e=>{"use strict";e.exports=require("cors")},8611:e=>{"use strict";e.exports=require("http")},8720:e=>{"use strict";e.exports=require("ora")},8879:(e,n,t)=>{var r=t(7252),o=t(9896),i=t(6928),a=t(3840).marked,s=r.Router(),c=[i.resolve(__dirname,"../public/unity-wasm-split.md"),i.resolve(__dirname,"../../public/unity-wasm-split.md"),i.resolve(__dirname,"../../../wasm-server-public/unity-wasm-split.md"),i.resolve(__dirname,"../../../../wasm-server-public/unity-wasm-split.md"),i.resolve(__dirname,"../../../..","unity-wasm-split.md"),i.resolve(process.cwd(),"unity-wasm-split.md")];s.get("/docs/unity-wasm-split",function(e,n){try{var t=function(){for(var e=0,n=c;e<n.length;e++){var t=n[e];if(o.existsSync(t))return t}return null}();if(!t)return n.status(404).send("未找到帮助文档,请确认 unity-wasm-split.md 已包含在 CLI 包或当前目录中。");var r=o.readFileSync(t,"utf-8"),i=a.parse(r);n.send(function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"WASM 分包工具使用文档";return'<!DOCTYPE html>\n<html lang="zh-CN">\n<head>\n <meta charset="utf-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1" />\n <title>'.concat(n,'</title>\n <style>\n body {\n font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif;\n margin: 0;\n padding: 0;\n background-color: #f7f8fa;\n color: #1a1a1a;\n line-height: 1.6;\n }\n .doc-header {\n background: #1a73e8;\n color: #fff;\n padding: 24px 32px;\n box-shadow: 0 2px 8px rgba(26,115,232,0.2);\n }\n .doc-header h1 {\n margin: 0;\n font-size: 24px;\n }\n .doc-container {\n max-width: 960px;\n margin: 24px auto 40px;\n padding: 32px;\n background: #fff;\n border-radius: 12px;\n box-shadow: 0 10px 25px rgba(0,0,0,0.06);\n }\n .doc-container h1,\n .doc-container h2,\n .doc-container h3 {\n color: #0b57d0;\n }\n .doc-container pre {\n background: #0f172a;\n color: #e2e8f0;\n padding: 16px;\n border-radius: 8px;\n overflow-x: auto;\n }\n .doc-container code {\n background: rgba(15,23,42,0.08);\n padding: 2px 6px;\n border-radius: 4px;\n font-size: 0.95em;\n }\n .doc-container a {\n color: #0b57d0;\n }\n .doc-container img {\n max-width: 100%;\n border-radius: 8px;\n box-shadow: 0 4px 12px rgba(0,0,0,0.08);\n }\n @media (max-width: 768px) {\n .doc-container {\n padding: 20px;\n margin: 16px;\n }\n }\n </style>\n</head>\n<body>\n <header class="doc-header">\n <h1>').concat(n,'</h1>\n </header>\n <main class="doc-container">\n ').concat(e,"\n </main>\n</body>\n</html>")}(i))}catch(e){console.error("[docs] 渲染帮助文档失败:",e),n.status(500).send("帮助文档加载失败,请查看终端日志或稍后再试。")}}),e.exports=s},8938:e=>{"use strict";e.exports=require("axios")},9023:e=>{"use strict";e.exports=require("util")},9239:e=>{"use strict";e.exports=require("terser")},9278:e=>{"use strict";e.exports=require("net")},9538:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}var a=t(4652),s=t(6928),c=t(7172),u=t(2410).globSync;function l(e){try{if(a.pathExistsSync(e))return!0;if(l(s.dirname(e)))return a.mkdirsSync(e),!0}catch(e){console.log("make dir error,",e)}}n.writeFile=function(){var e,n=(e=r().m(function e(n,t){var o,i=arguments;return r().w(function(e){for(;;)switch(e.n){case 0:o=i.length>2&&void 0!==i[2]?i[2]:"utf8",l(s.posix.parse(n).dir)&&a.writeFileSync(n,t,o);case 1:return e.a(2)}},e)}),function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})});return function(e,t){return n.apply(this,arguments)}}(),n.verifyGameRequiredFilesExist=function(e,n){return a.pathExistsSync(e)?"game"===n?f(e):"plugin"===n?p(e):{code:0,err_msg:"ok"}:{code:-1,err_msg:"当前入口文件目录不存在!"}};var f=function(e){var n=u("game.json",{cwd:e,ignore:"node_modules/**"}),t=u("game.js",{cwd:e,ignore:"node_modules/**"});return 0===n.length?{code:-1,err_msg:"被打包的游戏的目录下不存在game.json!"}:0===t.length?{code:-1,err_msg:"被打包的游戏的目录下不存在game.js!"}:{code:0,err_msg:"ok"}},p=function(e){return 0===u("plugin.json",{cwd:e,ignore:"node_modules/**"}).length?{code:-1,err_msg:"被打包的插件的目录下不存在plugin.json!"}:{code:0,err_msg:"ok"}};n.hasJgcConfigFile=function(e){try{return a.accessSync(e,a.constants.F_OK),!0}catch(e){return console.log("文件不存在"),!1}},n.compressDirectory=function(e,n){return new Promise(function(t,r){var o=a.createWriteStream(n),i=c("zip",{zlib:{level:9}});o.on("close",function(){return t(i.pointer())}),i.on("warning",function(e){return"ENOENT"!==e.code&&r(e)}),i.on("error",r),i.pipe(o),i.glob("**/*",{cwd:e,ignore:["**/.*","**/*.js.map"]}),i.finalize()})},n.deleteFile=function(e){a.existsSync(e)&&a.unlink(e,function(e){e&&console.log("删除zip文件失败: ",e)})}},9664:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,i,a,s=[],c=!0,u=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(e,n)||function(e,n){if(e){if("string"==typeof e)return i(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?i(e,n):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function s(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach(function(n){c(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function c(e,n,t){return(n=m(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function u(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",o=t.toStringTag||"@@toStringTag";function i(t,r,o,i){var c=r&&r.prototype instanceof s?r:s,u=Object.create(c.prototype);return l(u,"_invoke",function(t,r,o){var i,s,c,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,s=0,c=e,p.n=t,a}};function d(t,r){for(s=t,c=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(c=i[(s=i[4])?5:(s=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(s=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,s=0))}if(o||t>1)return a;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),s=l,c=m;(n=s<2?e:c)||!f;){i||(s?s<3?(s>1&&(p.n=-1),d(s,c)):p.n=c:p.v=c);try{if(u=2,i){if(s||(o="next"),n=i[o]){if(!(n=n.call(i,c)))throw TypeError("iterator result is not an object");if(!n.done)return n;c=n.value,s<2&&(s=0)}else 1===s&&(n=i.return)&&n.call(i),s<2&&(c=TypeError("The iterator does not provide a '"+o+"' method"),s=1);i=e}else if((n=(f=p.n<0)?c:t.call(r,p))!==a)break}catch(n){i=e,s=1,c=n}finally{u=1}}return{value:n,done:f}}}(t,o,i),!0),u}var a={};function s(){}function c(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(l(n={},r,function(){return this}),n),d=f.prototype=s.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,l(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e}return c.prototype=f,l(d,"constructor",f),l(f,"constructor",c),c.displayName="GeneratorFunction",l(f,o,"GeneratorFunction"),l(d),l(d,o,"Generator"),l(d,r,function(){return this}),l(d,"toString",function(){return"[object Generator]"}),(u=function(){return{w:i,m}})()}function l(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}l=function(e,n,t,r){function i(n,t){l(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(i("next",0),i("throw",1),i("return",2))},l(e,n,t,r)}function f(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){f(i,r,o,a,s,"next",e)}function s(e){f(i,r,o,a,s,"throw",e)}a(void 0)})}}function d(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,m(r.key),r)}}function m(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var y=t(8938),v=t(2305),h=t(9896),b=t(6626),g=t(3427).downloadFile,w=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.apiUrls=b.getApiUrls(),this.defaultTimeout=6e4},n=[{key:"setEnv",value:function(e){e?(b.currentEnv="wasmdev",this.apiUrls=b.getApiUrls("wasmdev")):(b.currentEnv="wasmprod",this.apiUrls=b.getApiUrls("wasmprod"))}},{key:"downloadFile",value:(j=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)if(0===e.n)return t=n.filePath,r=n.url,e.a(2,new Promise(function(e,n){g({filePath:t,url:r,success:e,fail:n})}))},e)})),function(e){return j.apply(this,arguments)})},{key:"uploadFile",value:(P=p(u().m(function e(n){var t,r,o,i,a,c,l,f,p,d,m;return u().w(function(e){for(;;)switch(e.p=e.n){case 0:return t=n.appId,r=n.requestToken,o=n.filePath,i=n.category,(a=new v).append("category",i),a.append("appId",t),a.append("requestToken",r),a.append("sourceFile",h.createReadStream(o)),c={method:"post",url:this.apiUrls.UPLOAD_FILE,headers:s(s({},a.getHeaders()),{},{appId:t,requestToken:r}),data:a,maxBodyLength:1/0,maxContentLength:1/0,timeout:6e5},e.p=1,e.n=2,y(c);case 2:if(l=e.v,f=l.data,p=f.code,d=f.result,0!==p){e.n=3;break}return e.a(2,d);case 3:throw new Error(l.data.errorMessage);case 4:e.n=6;break;case 5:throw e.p=5,m=e.v,new Error("上传文件失败 File upload failed: ".concat(m.message));case 6:return e.a(2)}},e,this,[[1,5]])})),function(e){return P.apply(this,arguments)})},{key:"addGameVersion",value:(k=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)switch(e.n){case 0:return t=new FormData,Object.entries(n).forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.append(r,i)}),e.n=1,y({method:"post",url:this.apiUrls.ADD_GAME_VERSION,data:t});case 1:if(0===(r=e.v).data.code){e.n=2;break}throw new Error(r.data.errorMessage);case 2:return e.a(2,r.data)}},e,this)})),function(e){return k.apply(this,arguments)})},{key:"initialize",value:(S=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)switch(e.n){case 0:return t=new FormData,Object.entries(n).forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.append(r,i)}),e.n=1,y({method:"post",url:this.apiUrls.INIT,timeout:this.defaultTimeout,data:t});case 1:if(0===(r=e.v).data.code){e.n=2;break}throw new Error(r.data.errorMessage);case 2:return e.a(2,r.data)}},e,this)})),function(e){return S.apply(this,arguments)})},{key:"queryMd5HistoryHaveRelease",value:(w=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.QUERY_MD5_HISTORY_HAVE_RELEASE,timeout:this.defaultTimeout,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error("获取历史md5列表,请求报错日志: ".concat(t.data.errorMessage));case 2:return e.a(2,t.data)}},e,this)})),function(e){return w.apply(this,arguments)})},{key:"queryWasmFunctionOnlineFindList",value:(m=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.QUERY_WASM_FUNCTION_ONLINE_FIND_LIST,timeout:this.defaultTimeout,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error("获取在线函数列表,请求报错日志: ".concat(t.data.errorMessage));case 2:return e.a(2,t.data)}},e,this)})),function(e){return m.apply(this,arguments)})},{key:"getInitResult",value:(f=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.GET_INIT_RES,timeout:this.defaultTimeout,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error(t.data.errorMessage);case 2:return e.a(2,t.data)}},e,this)})),function(e){return f.apply(this,arguments)})},{key:"split",value:(l=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)switch(e.n){case 0:return t=new FormData,Object.entries(n).forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.append(r,i)}),e.n=1,y({url:this.apiUrls.SPLIT,method:"post",data:t});case 1:if(0===(r=e.v).data.code){e.n=2;break}throw new Error(r.data.errorMessage);case 2:return e.a(2,r.data)}},e,this)})),function(e){return l.apply(this,arguments)})},{key:"getGameSplitInfo",value:(c=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({url:this.apiUrls.GET_GAME_SPLIT_INFO,method:"get",params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}return e.a(2,{code:-1,errorMessage:t.data.errorMessage,result:null});case 2:return e.a(2,t.data)}},e,this)})),function(e){return c.apply(this,arguments)})},{key:"getSymbolSize",value:(a=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.GET_SYMBOL_SIZE,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error(t.data.errorMessage);case 2:return e.a(2,t.data)}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"reportCalledFuncs",value:(i=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)switch(e.n){case 0:return t=new FormData,Object.entries(n).forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.append(r,i)}),e.n=1,y({url:this.apiUrls.REPORT_FUNS,method:"post",data:t});case 1:if(0===(r=e.v).data.code){e.n=2;break}throw new Error(r.data.errorMessage);case 2:return e.a(2,r.data)}},e,this)})),function(e){return i.apply(this,arguments)})},{key:"queryCountReportWasmFunction",value:(r=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.QUERY_COUNT_REPORT_FUNS,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error(t.data.errorMessage);case 2:return e.a(2,t.data)}},e,this)})),function(e){return r.apply(this,arguments)})}],n&&d(e.prototype,n),t&&d(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t,r,i,a,c,l,f,m,w,S,k,P,j}();e.exports=new w},9739:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=function(e,n){if(e){if("string"==typeof e)return i(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?i(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,c=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return s=e.done,e},e:function(e){c=!0,a=e},f:function(){try{s||null==t.return||t.return()}finally{if(c)throw a}}}}function i(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function a(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",o=t.toStringTag||"@@toStringTag";function i(t,r,o,i){var a=r&&r.prototype instanceof u?r:u,l=Object.create(a.prototype);return s(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,o,i),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(s(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,s(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,s(d,"constructor",f),s(f,"constructor",l),l.displayName="GeneratorFunction",s(f,o,"GeneratorFunction"),s(d),s(d,o,"Generator"),s(d,r,function(){return this}),s(d,"toString",function(){return"[object Generator]"}),(a=function(){return{w:i,m}})()}function s(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}s=function(e,n,t,r){function i(n,t){s(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(i("next",0),i("throw",1),i("return",2))},s(e,n,t,r)}function c(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function u(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){c(i,r,o,a,s,"next",e)}function s(e){c(i,r,o,a,s,"throw",e)}a(void 0)})}}function l(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,f(r.key),r)}}function f(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var p=t(7252),d=t(8577),m=t(6928),y=t(9896),v=t(8611),h=t(5086),b=t(2080),g=t(5317).execSync,w=t(9278),S=t(4246),k=t(4218),P=t(2078),j=t(1426),E=t(8879),O=t(7372).setupWebSocket,_=function(){return e=function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.port=n.port||3456,this.isPreEnv=n.isPreEnv||!1,this.app=p(),this.server=null,this.wss=null,this.pidFilePath=n.pidFilePath||m.resolve(__dirname,"../../.wasm-split-server.pid"),this.cleanupHandlerRegistered=!1},n=[{key:"setupMiddleware",value:function(){this.app.use(d()),this.app.use(p.json()),this.app.use(p.urlencoded({extended:!0}));for(var e,n=t(9896),r=0,o=[m.join(__dirname,"public"),m.join(__dirname,"wasm-server-public"),m.resolve(__dirname,"../wasm-server-public")];r<o.length;r++){var i=o[r];if(n.existsSync(i)&&n.existsSync(m.join(i,"index.html"))){e=i;break}}e||(console.warn("警告: 未找到静态资源目录,将使用默认路径"),e=m.join(__dirname,"public")),this.app.use(p.static(e)),this.publicPath=e}},{key:"setupRoutes",value:function(){var e=this;this.app.use(function(n,t,r){n.isPreEnv=e.isPreEnv,n.wss=e.wss,r()}),this.app.use("/api",S),this.app.use("/api",k),this.app.use("/api",P),this.app.use("/api",j),this.app.use("/",E),this.app.use("/api/*",function(e,n){n.status(404).json({code:-1,message:"未找到接口: ".concat(e.originalUrl)})}),this.app.get("*",function(n,t){t.sendFile(m.join(e.publicPath||m.join(__dirname,"public"),"index.html"))})}},{key:"setupWebSocketServer",value:function(){this.wss=new h.Server({server:this.server}),O(this.wss)}},{key:"killExistingServer",value:(f=u(a().m(function e(){var n,t,r,o;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if(y.existsSync(this.pidFilePath)){e.n=1;break}return e.a(2);case 1:if(n=y.readFileSync(this.pidFilePath,"utf-8").trim(),(t=parseInt(n,10))&&t!==process.pid){e.n=2;break}try{y.unlinkSync(this.pidFilePath)}catch(e){}return e.a(2);case 2:return e.p=2,process.kill(t,"SIGTERM"),e.n=3,this.wait(500);case 3:return e.p=3,process.kill(t,0),process.kill(t,"SIGKILL"),e.n=4,this.wait(200);case 4:e.n=6;break;case 5:e.p=5,"ESRCH"!==(r=e.v).code&&console.warn("⚠️ 无法终止已存在的 WASM 分包进程 (PID: ".concat(t,"): ").concat(r.message));case 6:e.n=8;break;case 7:e.p=7,"ESRCH"!==(o=e.v).code&&console.warn("⚠️ 终止已有的 WASM 分包进程失败 (PID: ".concat(t,"): ").concat(o.message));case 8:e.p=8;try{y.unlinkSync(this.pidFilePath)}catch(e){}return e.f(8);case 9:return e.a(2)}},e,this,[[3,5],[2,7,8,9]])})),function(){return f.apply(this,arguments)})},{key:"writePidFile",value:function(){try{y.writeFileSync(this.pidFilePath,String(process.pid))}catch(e){console.warn("⚠️ 写入 PID 文件失败: ".concat(e.message))}}},{key:"registerCleanup",value:function(){var e=this;if(!this.cleanupHandlerRegistered){var n=function(){try{if(y.existsSync(e.pidFilePath)){var n=y.readFileSync(e.pidFilePath,"utf-8").trim();parseInt(n,10)===process.pid&&y.unlinkSync(e.pidFilePath)}}catch(e){}};process.once("exit",n),process.once("SIGINT",function(){n(),process.exit(0)}),process.once("SIGTERM",function(){n(),process.exit(0)}),this.cleanupHandlerRegistered=!0}}},{key:"start",value:(c=u(a().m(function e(){var n,t,r=this,o=arguments;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=!(o.length>0&&void 0!==o[0])||o[0],this.setupMiddleware(),this.setupRoutes(),e.n=1,this.killExistingServer();case 1:return e.p=1,e.n=2,this.waitForPortRelease(500);case 2:e.n=8;break;case 3:return e.p=3,e.v,e.p=4,e.n=5,this.killByPort();case 5:e.n=7;break;case 6:e.p=6,t=e.v,console.warn(t.message);case 7:return e.n=8,this.waitForPortRelease();case 8:return this.server=v.createServer(this.app),this.setupWebSocketServer(),e.a(2,new Promise(function(e,t){var o=!1,i=function(){r.server.listen(r.port,u(a().m(function t(){var o;return a().w(function(t){for(;;)switch(t.p=t.n){case 0:if(o="http://localhost:".concat(r.port),console.log("\n✨ WASM 分包可视化界面已启动: ".concat(o,"\n")),r.writePidFile(),r.registerCleanup(),!n){t.n=4;break}return t.p=1,t.n=2,b(o);case 2:t.n=4;break;case 3:t.p=3,t.v,console.log("请手动打开浏览器访问: ".concat(o));case 4:e(r.server);case 5:return t.a(2)}},t,null,[[1,3]])})))},s=function(){var e=u(a().m(function e(n){var s;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if("EADDRINUSE"!==n.code||o){e.n=4;break}return o=!0,console.warn("检测到端口 ".concat(r.port," 已被占用,尝试自动释放...")),e.p=1,e.n=2,r.killByPort();case 2:return setTimeout(function(){i()},500),e.a(2);case 3:return e.p=3,s=e.v,t(s),e.a(2);case 4:t(n);case 5:return e.a(2)}},e,null,[[1,3]])}));return function(n){return e.apply(this,arguments)}}();r.server.on("error",s),i()}))}},e,this,[[4,6],[1,3]])})),function(){return c.apply(this,arguments)})},{key:"stop",value:function(){this.wss&&this.wss.close(),this.server&&this.server.close();try{if(y.existsSync(this.pidFilePath)){var e=y.readFileSync(this.pidFilePath,"utf-8").trim();parseInt(e,10)===process.pid&&y.unlinkSync(this.pidFilePath)}}catch(e){}}},{key:"wait",value:function(e){return new Promise(function(n){return setTimeout(n,e)})}},{key:"waitForPortRelease",value:(s=u(a().m(function e(){var n,t,r=this,o=arguments;return a().w(function(e){for(;;)if(0===e.n)return n=o.length>0&&void 0!==o[0]?o[0]:5e3,t=Date.now(),e.a(2,new Promise(function(e,o){var i=function(){var a=w.createServer();a.unref(),a.on("error",function(e){a.close(),"EADDRINUSE"===e.code?Date.now()-t>n?o(new Error("端口 ".concat(r.port," 长时间被占用,请手动结束占用进程后重试"))):setTimeout(i,200):o(e)}),a.listen(r.port,function(){a.close(e)})};i()}))},e)})),function(){return s.apply(this,arguments)})},{key:"killByPort",value:(i=u(a().m(function e(){var n,t,r,i,s,c,u,l,f,p,d;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if("darwin"===process.platform||"linux"===process.platform){e.n=1;break}throw new Error("端口 ".concat(this.port," 已被占用,请手动结束相关进程后重试"));case 1:if(e.p=1,n=g("lsof -ti tcp:".concat(this.port),{encoding:"utf-8"}).split("\n").map(function(e){return e.trim()}).filter(Boolean),0!==n.length){e.n=2;break}throw new Error("端口 ".concat(this.port," 已被占用,但无法定位进程,请手动处理"));case 2:t=o(n),e.p=3,t.s();case 4:if((r=t.n()).done){e.n=7;break}if(i=r.value,(s=parseInt(i,10))&&s!==process.pid){e.n=5;break}return e.a(3,6);case 5:try{process.kill(s,"SIGTERM")}catch(e){}case 6:e.n=4;break;case 7:e.n=9;break;case 8:e.p=8,p=e.v,t.e(p);case 9:return e.p=9,t.f(),e.f(9);case 10:return e.n=11,this.wait(500);case 11:c=o(n),e.p=12,c.s();case 13:if((u=c.n()).done){e.n=16;break}if(l=u.value,(f=parseInt(l,10))&&f!==process.pid){e.n=14;break}return e.a(3,15);case 14:try{process.kill(f,0),process.kill(f,"SIGKILL")}catch(e){}case 15:e.n=13;break;case 16:e.n=18;break;case 17:e.p=17,d=e.v,c.e(d);case 18:return e.p=18,c.f(),e.f(18);case 19:return e.n=20,this.wait(300);case 20:e.n=22;break;case 21:throw e.p=21,e.v,new Error("端口 ".concat(this.port," 被占用,且无法自动释放,请手动结束占用进程后重试"));case 22:return e.a(2)}},e,this,[[12,17,18,19],[3,8,9,10],[1,21]])})),function(){return i.apply(this,arguments)})}],n&&l(e.prototype,n),r&&l(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r,i,s,c,f}();e.exports=_},9890:(e,n,t)=>{var r=t(4420),o=t(241),i=t(2268);n.showQrCode=function(e){return new Promise(function(n,t){r.read(e).then(function(e){var t=e.bitmap,r=t.width,a=t.height,s=t.data,c=new Uint8ClampedArray(s),u=i(c,r,a);o.generate(u.data,{small:!1}),n(!0)}).catch(function(e){t(!1)})})},n.getBase64=function(e){return r.read(e).then(function(e){return e.getBase64Async("image/png")}).catch(function(){throw new Error("获取二维码base64失败")})}},9896:e=>{"use strict";e.exports=require("fs")},9937:e=>{"use strict";e.exports=require("inquirer")}},n={};function t(r){var o=n[r];if(void 0!==o)return o.exports;var i=n[r]={exports:{}};return e[r](i,i.exports,t),i.exports}t.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n);function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})}}var s=t(6928),c=t(857),u=t(8720),l=t(5205),f=new(0,t(6858).Command),p=t(9937),d=t(8938),m=t(8522),y=t(593),v=t(9538),h=t(1060),b=t(2425),g=t(9890),w=t(8085).SUCCEED_CODE,S=t(8330),k=t(3121),P=t(7175);function j(e){return E.apply(this,arguments)}function E(){return E=a(r().m(function e(n){var o,i,a,f,p,d,m,y,S,P,j,E,O,_,F,T,x,I,C,G,M,A,N,D,q,W,R,U,B,L,H,z,V,J,Q,Y,$,K,Z,X,ee,ne,te,re=arguments;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(o=!(re.length>1&&void 0!==re[1])||re[1],i=Date.now(),a=1===n?"preview":"upload",f=s.posix.resolve("","./jgc.config.js"),v.hasJgcConfigFile(f)){e.n=1;break}return e.a(2,console.log("".concat(l.red("请先创建配置文件!"))));case 1:if(p="function"==typeof require?require:t(6589),d=p(f),(m=h.checkConfigOptions(d,n)).code===w){e.n=2;break}return e.a(2,console.log(m.err_msg));case 2:if(y=d.appId,S=d.requestToken,P=d.versionName,j=d.entry,E=d.description,(O=v.verifyGameRequiredFilesExist(j)).code===w){e.n=3;break}return e.a(2,console.log(O.err_msg));case 3:if(_="upload"===a?c.tmpdir()+s.sep+"jd_game_temp.zip":c.tmpdir()+s.sep+"package.jd.zip",v.deleteFile(_),F=u("文件压缩").start(),e.p=4,"preview"!==a){e.n=6;break}return e.n=5,new Promise(function(e,n){k(j,_,function(t,r){t?n(t):e(r)})});case 5:x=t(9896).statSync(_),T=x.size,e.n=8;break;case 6:return e.n=7,v.compressDirectory(j,_);case 7:T=e.v;case 8:F.succeed("压缩完成,共"+T/1e3+"KB"),e.n=10;break;case 9:e.p=9,X=e.v,F.fail("压缩失败:".concat(X)),process.exit(1);case 10:return I=new b(o?"prod":"dev"),F.start(),F.text="上传中……",C=Date.now(),G=null,e.p=11,e.n=12,I.uploadProject({sourceFile:_,appId:y,requestToken:S,isProd:o,showType:a});case 12:(G=e.v).code!==w&&(F.fail("上传代码包报错 --\x3e".concat(G.err_msg)),process.exit(1)),M=Date.now(),A=(M-C)/1e3,F.succeed("上传代码包完成,耗时:"+A+"s"),e.n=14;break;case 13:e.p=13,ee=e.v,F.fail("上传代码包报错 --\x3e".concat(ee)),process.exit(1);case 14:return F.start(),F.text="代码包构建中……",N=Date.now(),D=null,e.p=15,e.n=16,I.loopQueryBuildStatus({appId:y,requestToken:S,isProd:o,showType:a},G.uuid);case 16:(D=e.v).code!==w&&(F.fail(D.err_msg),process.exit(1)),q=Date.now(),W=(q-N)/1e3,F.succeed("代码包构建完成,耗时:".concat(W,"s")),e.n=18;break;case 17:e.p=17,ne=e.v,F.fail("代码包构建报错 --\x3e".concat(ne)),process.exit(1);case 18:if(R=D.packId,e.p=19,"preview"!==a){e.n=22;break}return e.n=20,I.generateQrCode({packId:R,appId:y,requestToken:S,showType:a});case 20:return(U=e.v).code!==w&&(F.fail(U.err_msg),process.exit(1)),B=U.imgUrl,L=U.expiredTime,e.n=21,g.showQrCode(B);case 21:F.succeed("二维码生成完成,将于".concat(L,"过期")),F.info("二维码imgUrl(如二维码不清晰,浏览器打开): ".concat(B)),F.info("二维码仅支持协作成员访问"),H=Date.now(),z=(H-i)/1e3,F.info("本次耗费时长:".concat(z,"s")),e.n=27;break;case 22:if("upload"!==a){e.n=27;break}return F.start(),e.n=23,I.commitDevVersion({appId:y,requestToken:S,versionName:P,description:E},R);case 23:return(V=e.v).code!==w&&(F.fail(V.err_msg),process.exit(1)),J=V.devId,F.succeed("开发版设置完成, devId:"+J),e.n=24,I.setDevExperience({appId:y,requestToken:S},J);case 24:return(Q=e.v).code!==w&&(F.fail(Q.err_msg),process.exit(1)),F.succeed("体验版设置完成"),e.n=25,I.queryExperienceQrcodeByPackId({appId:y,requestToken:S});case 25:return(Y=e.v).code!==w&&(F.fail(Y.err_msg),process.exit(1)),$=Y.imgUrl,e.n=26,g.showQrCode($);case 26:F.info("二维码仅支持协作成员访问"),K=Date.now(),Z=(K-i)/1e3,F.info("本次耗费时长:".concat(Z,"s"));case 27:e.n=29;break;case 28:e.p=28,te=e.v,F.fail("CLI执行报错 --\x3e".concat(te)),process.exit(1);case 29:return e.a(2)}},e,null,[[19,28],[15,17],[11,13],[4,9]])})),E.apply(this,arguments)}function O(e){return _.apply(this,arguments)}function _(){return(_=a(r().m(function e(n){var o,i,a,f,d,m,g,S,k,P,j,E,O,_,F,T,x,I,C,G,M;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return o=(new y).getPrompts(),e.n=1,p.prompt(o);case 1:if(i=e.v,a=Date.now(),f=s.posix.resolve("","./jgc.config.js"),v.hasJgcConfigFile(f)){e.n=2;break}return e.a(2,console.log("".concat(l.red("请先创建配置文件!"))));case 2:if(d="function"==typeof require?require:t(6589),m=d(f),(g=h.checkPluginConfig(m)).code===w){e.n=3;break}return e.a(2,console.log(g.err_msg));case 3:return S=m.appId,k=m.requestToken,P=m.entry,j=m.versionName,E=c.tmpdir()+s.sep+"jd_game_temp.zip",v.deleteFile(E),O=u("文件压缩").start(),e.p=4,e.n=5,v.compressDirectory(P,E);case 5:(_=e.v)>4194304&&(O.fail("压缩包超过4MB,请检查文件大小"),process.exit(1)),O.succeed("压缩完成,共"+_/1e3+"KB"),e.n=7;break;case 6:e.p=6,G=e.v,O.fail("压缩失败:",G),process.exit(1);case 7:return F=new b(n),e.p=8,e.n=9,F.uploadPlugin({sourceFile:E,appId:S,requestToken:k,versionName:j});case 9:if((T=e.v).code===w){e.n=10;break}O.fail(T.err_msg),process.exit(1),e.n=12;break;case 10:return O.succeed("插件构建成功"),e.n=11,F.publishPlugin({versionName:i.versionName,versionFeature:i.versionFeature,useGuide:i.useGuide,packId:T.result.packId,appId:S,requestToken:k});case 11:(x=e.v).code!==w&&(O.fail(x.err_msg),process.exit(1)),O.succeed("插件发布成功"),I=Date.now(),C=(I-a)/1e3,O.info("本次耗费时长:".concat(C,"s"));case 12:e.n=14;break;case 13:e.p=13,M=e.v,O.fail("CLI执行报错 --\x3e".concat(M)),process.exit(1);case 14:return e.a(2)}},e,null,[[8,13],[4,6]])}))).apply(this,arguments)}function F(e){return T.apply(this,arguments)}function T(){return(T=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitInfo(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var n=e.code,t=e.msg;0===n?console.log(t):console.error("查询函数符号表失败:",e)}).catch(function(e){console.error("查询函数符号表异常:",e)});case 1:return e.a(2)}},e)}))).apply(this,arguments)}return f.command("config").description("小游戏配置").action(a(r().m(function e(){var n,t,o,i;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=(new m).getPrompts(),e.n=1,p.prompt(n);case 1:if(t=e.v,(o=v.verifyGameRequiredFilesExist(t.entry,t.type)).code===w){e.n=2;break}return e.a(2,console.log("".concat(l.red(o.err_msg))));case 2:return e.p=2,v.writeFile("./".concat("jgc.config.js"),"module.exports = ".concat(JSON.stringify(t,null,2)),"utf-8"),e.a(2,console.log("✨ ".concat(l.green("创建小游戏配置文件成功"))));case 3:e.p=3,i=e.v,console.log("创建小游戏配置文件失败:",i);case 4:return e.a(2)}},e,null,[[2,3]])}))),f.command("preview").description("小游戏真机预览").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:if(!n.D){e.n=1;break}return console.log("小游戏真机预览-预发环境"),e.a(2,j(1,!1));case 1:return e.a(2,j(1,!0))}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("upload").description("小游戏发布").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:if(!n.D){e.n=1;break}return console.log("小游戏发布-预发环境"),e.a(2,j(2,!1));case 1:return e.a(2,j(2,!0))}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("publish").description("插件发布").option("-D","预发环境").option("-T","测试环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:if(!n.D){e.n=1;break}return console.log("插件发布-预发环境"),e.a(2,O("dev"));case 1:if(!n.T){e.n=2;break}return console.log("插件发布-测试环境"),e.a(2,O("test"));case 2:return console.log("插件发布-生产环境"),e.a(2,O("prod"));case 3:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.version(S.version,"-v, -V").description("获取本地京东小游戏CLI工具版本"),f.command("latest").description("获取并对比京东小游戏CLI工具最新版本").action(a(r().m(function e(){var n,t,o,i,a;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,n=u("npm最新版本获取中……").start(),e.n=1,d.get("https://registry.npmjs.org/jd-minigame-ci/latest");case 1:t=e.v,o=t.data.version,i=S.version,n.succeed("最新版本: ".concat(o)),o===i?n.info("当前版本 (".concat(i,") 已是最新版本。")):(n.info("本地版本: ".concat(i)),n.info("请更新到最新版本以获取最新功能和修复。")),e.n=3;break;case 2:e.p=2,a=e.v,spinner.fail("获取最新版本信息失败: ".concat(a));case 3:return e.a(2)}},e,null,[[0,2]])}))),f.command("wasm-split").description("启动 WASM 分包可视化界面").option("-D","预发环境").option("-p, --port <port>","服务端口","3456").action(function(){var e=a(r().m(function e(n){var o,i,a,c,u,f,p,d,m;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:o=s.posix.resolve("","./jgc.config.js"),v.hasJgcConfigFile(o)||(console.log("".concat(l.red("项目校验失败,请确认是否正确执行了 jgc config 命令,是否存在配置文件:jgc.config.js"))),process.exit(1)),i="function"==typeof require?require:t(6589);try{delete i.cache[i.resolve(o)],a=i(o)}catch(e){console.log("".concat(l.red("配置文件加载失败:")," ").concat(e.message)),process.exit(1)}return(c=h.checkConfigOptions(a,1)).code!==w&&(console.log("".concat(l.red("项目校验失败:"))),console.log(c.err_msg),process.exit(1)),u=a.entry,(f=v.verifyGameRequiredFilesExist(u)).code!==w&&(console.log("".concat(l.red("项目校验失败:"))),console.log(f.err_msg),process.exit(1)),P.initConfig()||(console.log("".concat(l.red("配置文件加载失败:"))),process.exit(1)),p=t(9739),d=new p({port:parseInt(n.port)||3456,isPreEnv:n.D||!1}),e.p=1,e.n=2,d.start(!0);case 2:console.log("".concat(l.green("WASM 分包服务已启动"))),console.log("".concat(l.cyan("按 Ctrl+C 关闭服务"))),e.n=4;break;case 3:e.p=3,m=e.v,console.error("".concat(l.red("启动失败:")," ").concat(m.message)),process.exit(1);case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-init").description("WASM分包初始化").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)if(0===e.n)return e.a(2,P.wasmInit(Object.assign(n,{srcPath:"",isPreEnv:n.D})))},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-update").description("WASM分包增量更新").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)if(0===e.n)return e.a(2,P.wasmUpdate(Object.assign(n,{srcPath:"",isPreEnv:n.D})))},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-dev").description("WASM分包dev").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitDev(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var t=e.code;e.msg;if(0!==t)return console.error("WASM分包失败:",e),{code:-1,msg:"WASM分包失败",errMsg:e.errorMessage};F(n)}).catch(function(e){console.error("WASM分包异常:",e)});case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-prod").description("WASM分包prod").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitProd(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var t=e.code,r=e.msg;0===t?(console.log(r),F(n)):console.error("WASM分包失败:",e)}).catch(function(e){console.error("WASM分包异常:",e)});case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-info").description("查询函数符号表").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:F(n);case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-report").description("上报函数名").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitReport(Object.assign(n,{srcPath:"",isPreEnv:n.D}));case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-rollback").description("关闭分包功能").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmRollBack(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var n=e.code,t=e.msg;0===n?console.log(t):console.error("关闭分包功能失败:",e)}).catch(function(e){console.error("关闭分包功能异常:",e)});case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-report-index").description("上报函数名索引").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitReportIndex(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var n=e.code,t=e.msg;0===n?console.log(t):console.error("上报函数名索引失败:",e)}).catch(function(e){console.error("上报函数名索引异常:",e)});case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.parse(process.argv),{}})());
2
+ !function(e,n){if("object"==typeof exports&&"object"==typeof module)module.exports=n();else if("function"==typeof define&&define.amd)define([],n);else{var t=n();for(var r in t)("object"==typeof exports?exports:e)[r]=t[r]}}(global,()=>(()=>{var e={220:e=>{function n(e){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n.keys=()=>[],n.resolve=n,n.id=220,e.exports=n},241:e=>{"use strict";e.exports=require("qrcode-terminal")},593:e=>{function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function t(e,n){for(var t=0;t<n.length;t++){var o=n[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,r(o.key),o)}}function r(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==n(t)?t:t+""}var o=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.configPrompts=[{name:"versionName",type:"input",message:"版本号:",default:"1.0.0"},{name:"versionFeature",type:"input",message:"版本特性(长度为10~30个字符):",default:""},{name:"useGuide",type:"input",message:"使用指南(仅限文字和代码,长度为20~1000个字符):",default:"插件使用指南不建议在这里填写,建议到小游戏插件MP控制台提审时修改,这里是占位文本"}]},(n=[{key:"getPrompts",value:function(){return this.configPrompts}}])&&t(e.prototype,n),r&&t(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r}();e.exports=o},649:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a=t(7372),s=a.sendProgress,c=a.sendLog,u=a.sendComplete,l=a.sendError,f=new(function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.currentAction=null,this.currentStep=0,this.totalSteps=0},n=[{key:"start",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.currentAction=e,this.currentStep=0,this.totalSteps=n,s(e,0,"开始".concat(this.getActionLabel(e),"...")),c("info","开始".concat(this.getActionLabel(e)))}},{key:"update",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;null!==n?this.currentStep=n:this.currentStep++;var t=Math.min(Math.round(this.currentStep/this.totalSteps*100),99);s(this.currentAction,t,e),c("info",e)}},{key:"complete",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;s(this.currentAction,100,"".concat(this.getActionLabel(this.currentAction),"完成")),u(this.currentAction,e),c("info","".concat(this.getActionLabel(this.currentAction),"完成")),this.reset()}},{key:"fail",value:function(e){l(this.currentAction,e),c("error",e),this.reset()}},{key:"log",value:function(e,n){c(e,n)}},{key:"reset",value:function(){this.currentAction=null,this.currentStep=0,this.totalSteps=0}},{key:"getActionLabel",value:function(e){return{"wasm-init":"初始化","wasm-update":"增量更新","wasm-split-dev":"Dev 版本分包","wasm-split-prod":"生产版本分包","wasm-split-report":"函数上报",preview:"预览码生成",rollback:"回滚"}[e]||e}}],n&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t}());e.exports=f},857:e=>{"use strict";e.exports=require("os")},1060:(e,n)=>{function t(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,i,a,s=[],c=!0,u=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(e,n)||function(e,n){if(e){if("string"==typeof e)return r(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?r(e,n):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function r(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function o(e){return"string"==typeof e&&!!e.trim()}n.checkConfigOptions=function(e,n){var r=e||{},i=r.type,a=r.appId,s=r.requestToken,c=r.entry,u=r.versionName,l=r.description;if("game"!==i)return{code:-1,err_msg:"请选择项目构建类型为小游戏"};for(var f=1===n?{appId:a,requestToken:s,entry:c}:{appId:a,requestToken:s,entry:c,versionName:u,description:l},p=0,d=Object.entries(f);p<d.length;p++){var m=t(d[p],2),y=m[0];if(!o(m[1]))return{code:-1,err_msg:"".concat(y," 不能为空")}}return{code:0,err_msg:"ok"}},n.checkPluginConfig=function(e){var n=e||{},r=n.type,i=n.appId,a=n.requestToken,s=n.entry,c=n.versionName;if("plugin"!==r)return{code:-1,err_msg:"请选择项目构建类型为插件"};for(var u={appId:i,requestToken:a,entry:s,versionName:c},l=0,f=Object.entries(u);l<f.length;l++){var p=t(f[l],2),d=p[0];if(!o(p[1]))return{code:-1,err_msg:"".concat(d," 不能为空")}}return{code:0,err_msg:"ok"}}},1426:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}var a=t(7252).Router(),s=t(6928),c=t(857),u=(t(9896),t(6626),t(649)),l=t(9538),f=t(3121),p=t(2425),d=t(8085).SUCCEED_CODE;a.post("/preview",function(){var e,n=(e=r().m(function e(n,o){var i,a,m,y,v,h,b,g,w,S,k,P,j,E,O,_,F,T,x,I,C,G;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:i=n.isPreEnv,a=!i,e.p=1,u.start("preview",5),u.update("正在加载项目配置..."),m=s.posix.resolve("","./jgc.config.js"),y="function"==typeof require?require:t(3709),e.p=2,delete y.cache[y.resolve(m)],v=y(m),e.n=4;break;case 3:return e.p=3,e.v,u.fail("未找到项目配置,请先执行 jgc config"),e.a(2,o.json({code:-1,message:"未找到项目配置,请先执行 jgc config"}));case 4:return b=(h=v).appId,g=h.requestToken,w=h.entry,u.update("正在压缩文件..."),S=c.tmpdir()+s.sep+"package.jd.zip",l.deleteFile(S),e.p=5,e.n=6,new Promise(function(e,n){f(w,S,function(t,r){t?n(t):e(r)})});case 6:e.n=8;break;case 7:return e.p=7,T=e.v,u.fail("压缩失败: ".concat(T.message)),e.a(2,o.json({code:-1,message:"压缩失败: ".concat(T.message)}));case 8:return u.update("正在上传代码包..."),k=new p(a?"prod":"dev"),e.p=9,e.n=10,k.uploadProject({sourceFile:S,appId:b,requestToken:g,isProd:a,showType:"preview"});case 10:if((P=e.v).code===d){e.n=11;break}return u.fail(P.err_msg),e.a(2,o.json({code:-1,message:P.err_msg}));case 11:e.n=13;break;case 12:return e.p=12,x=e.v,u.fail(x.message),e.a(2,o.json({code:-1,message:x.message}));case 13:return u.update("正在构建代码包..."),e.p=14,e.n=15,k.loopQueryBuildStatus({appId:b,requestToken:g,isProd:a,showType:"preview"},P.uuid);case 15:if((j=e.v).code===d){e.n=16;break}return u.fail(j.err_msg),e.a(2,o.json({code:-1,message:j.err_msg}));case 16:e.n=18;break;case 17:return e.p=17,I=e.v,u.fail(I.message),e.a(2,o.json({code:-1,message:I.message}));case 18:return u.update("正在生成预览码..."),E=j.packId,e.p=19,e.n=20,k.generateQrCode({packId:E,appId:b,requestToken:g,showType:"preview"});case 20:if((O=e.v).code===d){e.n=21;break}return u.fail(O.err_msg),e.a(2,o.json({code:-1,message:O.err_msg}));case 21:_=O.imgUrl,F=O.expiredTime,u.complete({imgUrl:_,expiredTime:F}),o.json({code:0,message:"预览码生成成功",data:{imgUrl:_,expiredTime:F}}),e.n=23;break;case 22:e.p=22,C=e.v,u.fail(C.message),o.json({code:-1,message:C.message});case 23:e.n=25;break;case 24:e.p=24,G=e.v,u.fail(G.message),o.json({code:-1,message:G.message});case 25:return e.a(2)}},e,null,[[19,22],[14,17],[9,12],[5,7],[2,3],[1,24]])}),function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})});return function(e,t){return n.apply(this,arguments)}}()),e.exports=a},2078:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,o,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return i(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,o,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(i(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,i(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,i(d,"constructor",f),i(f,"constructor",l),l.displayName="GeneratorFunction",i(f,a,"GeneratorFunction"),i(d),i(d,a,"Generator"),i(d,r,function(){return this}),i(d,"toString",function(){return"[object Generator]"}),(o=function(){return{w:s,m}})()}function i(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}i=function(e,n,t,r){function a(n,t){i(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},i(e,n,t,r)}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function s(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach(function(n){c(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function c(e,n,t){return(n=function(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function u(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function l(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){u(i,r,o,a,s,"next",e)}function s(e){u(i,r,o,a,s,"throw",e)}a(void 0)})}}var f=t(7252).Router(),p=t(8461),d=t(6928),m=t(9896),y=t(857),v=t(8320),h=t(649),b=t(4246),g=t(6626),w=t(9538),S=t(2425),k=p({dest:d.join(y.tmpdir(),"wasm-split-uploads"),limits:{fileSize:52428800}});f.post("/wasm-split-dev",function(){var e=l(o().m(function e(n,t){var r,i,a,c;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=n.isPreEnv,e.p=1,h.start("wasm-split-dev",4),h.update("正在构建 dev 版本分包..."),e.n=2,v.splitBase({srcPath:"",isPreEnv:r,isRelease:!1});case 2:if(0!==(i=e.v).code){e.n=4;break}return b.invalidateCache&&b.invalidateCache(),h.update("正在获取分包信息..."),e.n=3,v.getSplitInfo({srcPath:"",isPreEnv:r});case 3:a=e.v,h.complete(s(s({},i),{},{info:a})),t.json({code:0,message:"dev 版本分包完成",data:s(s({},i),{},{info:a})}),e.n=5;break;case 4:h.fail(i.msg||"分包失败"),t.json({code:-1,message:i.msg||"分包失败"});case 5:e.n=7;break;case 6:e.p=6,c=e.v,h.fail(c.message),t.json({code:-1,message:c.message});case 7:return e.a(2)}},e,null,[[1,6]])}));return function(n,t){return e.apply(this,arguments)}}()),f.post("/wasm-split-prod",function(){var e=l(o().m(function e(n,t){var r,i,a,c;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=n.isPreEnv,e.p=1,h.start("wasm-split-prod",4),h.update("正在构建生产版本分包..."),e.n=2,v.splitBase({srcPath:"",isPreEnv:r,isRelease:!0});case 2:if(0!==(i=e.v).code){e.n=4;break}return b.invalidateCache&&b.invalidateCache(),h.update("正在获取分包信息..."),e.n=3,v.getSplitInfo({srcPath:"",isPreEnv:r});case 3:a=e.v,h.complete(s(s({},i),{},{info:a})),t.json({code:0,message:"prod 版本分包完成",data:s(s({},i),{},{info:a})}),e.n=5;break;case 4:h.fail(i.msg||"分包失败"),t.json({code:-1,message:i.msg||"分包失败"});case 5:e.n=7;break;case 6:e.p=6,c=e.v,h.fail(c.message),t.json({code:-1,message:c.message});case 7:return e.a(2)}},e,null,[[1,6]])}));return function(n,t){return e.apply(this,arguments)}}()),f.get("/wasm-split-info",function(){var e=l(o().m(function e(n,t){var r,i,a;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=n.isPreEnv,e.p=1,e.n=2,v.getSplitInfo({srcPath:"",isPreEnv:r});case 2:0===(i=e.v).code?t.json({code:0,data:i}):t.json({code:-1,message:i.msg||"查询失败"}),e.n=4;break;case 3:e.p=3,a=e.v,t.json({code:-1,message:a.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),f.post("/wasm-split-report",k.single("funcFile"),function(){var e=l(o().m(function e(n,t){var r,i,a,s,c,u,l,f;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:if(r=n.isPreEnv,e.p=1,n.file){e.n=2;break}return e.a(2,t.json({code:-1,message:"请上传函数文件"}));case 2:return h.start("wasm-split-report",3),h.update("正在解析函数文件..."),i=n.file.path,a=m.readFileSync(i,"utf-8"),s=a.split("\n").map(function(e){return e.trim()}).filter(function(e){return e.length>0}),h.update("解析到 ".concat(s.length," 个函数,正在上报...")),e.n=3,v.reportCalledFuncs({srcPath:"",isPreEnv:r,funcList:s,suppressExit:!0});case 3:c=e.v,m.unlinkSync(i),c&&0===c.code?(l=null!==(u=c.reportedCount)&&void 0!==u?u:s.length,h.complete({reportedCount:l}),t.json({code:0,message:"函数上报完成",data:{reportedCount:l}})):(h.fail((null==c?void 0:c.msg)||"上报失败"),t.json({code:-1,message:(null==c?void 0:c.msg)||"上报失败"})),e.n=5;break;case 4:e.p=4,f=e.v,h.fail(f.message),t.json({code:-1,message:f.message});case 5:return e.a(2)}},e,null,[[1,4]])}));return function(n,t){return e.apply(this,arguments)}}()),f.get("/wasm-function-count",function(){var e=l(o().m(function e(n,t){var r,i,a;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:if(r=n.isPreEnv,e.p=1,v.isHasInit()){e.n=2;break}return e.n=2,v.init({srcPath:"",isPreEnv:r,isUpdate:!1});case 2:return e.n=3,v.queryCountReportWasmFunction();case 3:i=e.v,t.json({code:0,data:{newFuncCount:i||0}}),e.n=5;break;case 4:e.p=4,a=e.v,console.error("查询函数个数失败:",a.message),t.json({code:0,data:{newFuncCount:0}});case 5:return e.a(2)}},e,null,[[1,4]])}));return function(n,t){return e.apply(this,arguments)}}()),f.post("/wasm-rollback",function(){var e=l(o().m(function e(n,t){var r,i,a;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=n.isPreEnv,e.p=1,h.start("rollback",2),h.update("正在回滚分包..."),e.n=2,v.rollbackEntryChanges({srcPath:"",isPreEnv:r});case 2:0===(i=e.v).code?(b.invalidateCache&&b.invalidateCache(),h.complete(i),t.json({code:0,message:"回滚完成",data:i})):(h.fail(i.msg||"回滚失败"),t.json({code:-1,message:i.msg||"回滚失败"})),e.n=4;break;case 3:e.p=3,a=e.v,h.fail(a.message),t.json({code:-1,message:a.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),f.post("/upload",function(){var e=l(o().m(function e(n,t){var r,i,a,s,c,u,l,f,p,v,b,k,P,j,E,O,_,F,T,x,I,C,G,M,A,N;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:if(r=n.isPreEnv,i=n.body,a=i.versionName,s=i.description,e.p=1,a){e.n=2;break}return e.a(2,t.json({code:-1,message:"请输入版本号"}));case 2:if(!(!s||s.length<1||s.length>100)){e.n=3;break}return e.a(2,t.json({code:-1,message:"版本描述长度需在 1-100 个字符之间"}));case 3:h.start("upload",6),h.update("正在加载项目配置..."),e.p=4,c=g.loadProjectConfig(""),e.n=6;break;case 5:return e.p=5,e.v,h.fail("未找到项目配置"),e.a(2,t.json({code:-1,message:"未找到项目配置,请先执行 jgc config"}));case 6:l=(u=c).appId,f=u.requestToken,p=u.entry,v=u.fullEntryPath,b=v||p,k=d.resolve(process.cwd(),"jgc.config.js"),h.update("正在更新配置文件...");try{P=m.readFileSync(k,"utf-8"),P=(j=function(e,n,t){var r=new RegExp("([\"']?".concat(n,"[\"']?\\s*:\\s*)[\"'][^\"']*[\"']"),"i");return r.test(e)?e.replace(r,'$1"'.concat(t,'"')):e})(P,"versionName",a),P=j(P,"description",s),m.writeFileSync(k,P,"utf-8")}catch(e){console.error("更新配置文件失败:",e)}return h.update("正在压缩文件..."),E=y.tmpdir()+d.sep+"jd_game_temp.zip",m.existsSync(E)&&m.unlinkSync(E),e.n=7,w.compressDirectory(b,E);case 7:return O=e.v,h.update("压缩完成,共 ".concat((O/1e3).toFixed(1)," KB")),h.update("正在上传代码包..."),F=new S((_=!r)?"prod":"dev"),e.n=8,F.uploadProject({sourceFile:E,appId:l,requestToken:f,isProd:_,showType:"upload"});case 8:if(0===(T=e.v).code){e.n=9;break}return h.fail(T.err_msg||"上传失败"),e.a(2,t.json({code:-1,message:T.err_msg||"上传代码包失败"}));case 9:return h.update("正在构建代码包..."),e.n=10,F.loopQueryBuildStatus({appId:l,requestToken:f,isProd:_,showType:"upload"},T.uuid);case 10:if(0===(x=e.v).code){e.n=11;break}return h.fail(x.err_msg||"构建失败"),e.a(2,t.json({code:-1,message:x.err_msg||"代码包构建失败"}));case 11:return I=x.packId,h.update("正在设置开发版..."),e.n=12,F.commitDevVersion({appId:l,requestToken:f,versionName:a,description:s},I);case 12:if(0===(C=e.v).code){e.n=13;break}return h.fail(C.err_msg||"设置开发版失败"),e.a(2,t.json({code:-1,message:C.err_msg||"设置开发版失败"}));case 13:return G=C.devId,h.update("正在设置体验版..."),e.n=14,F.setDevExperience({appId:l,requestToken:f},G);case 14:if(0===(M=e.v).code){e.n=15;break}return h.fail(M.err_msg||"设置体验版失败"),e.a(2,t.json({code:-1,message:M.err_msg||"设置体验版失败"}));case 15:return h.update("正在生成体验码..."),e.n=16,F.queryExperienceQrcodeByPackId({appId:l,requestToken:f});case 16:if(0===(A=e.v).code){e.n=17;break}return h.fail(A.err_msg||"获取二维码失败"),e.a(2,t.json({code:-1,message:A.err_msg||"获取体验码失败"}));case 17:m.existsSync(E)&&m.unlinkSync(E),h.complete({imgUrl:A.imgUrl}),t.json({code:0,message:"上传成功",data:{imgUrl:A.imgUrl,versionName:a,description:s}}),e.n=19;break;case 18:e.p=18,N=e.v,h.fail(N.message),console.error("上传失败:",N),t.json({code:-1,message:N.message||"上传失败"});case 19:return e.a(2)}},e,null,[[4,5],[1,18]])}));return function(n,t){return e.apply(this,arguments)}}()),e.exports=f},2080:e=>{"use strict";e.exports=require("open")},2225:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,i,a,s=[],c=!0,u=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(e,n)||function(e,n){if(e){if("string"==typeof e)return a(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?a(e,n):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function s(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}var c=t(9896),u=t(9023).promisify,l=t(5759),f=u(c.readFile),p=u(c.writeFile);function d(){var e;return e=r().m(function e(n,t){var o,i,a,s,c,u=arguments;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return o=!(u.length>2&&void 0!==u[2])||u[2],e.p=1,e.n=2,f(n,"utf8");case 2:if(i=e.v,a=JSON.parse(i),s=m(a),!o){e.n=4;break}return e.n=3,p(t,JSON.stringify(s,null,2));case 3:case 6:return e.a(2);case 4:return e.a(2,s);case 5:throw e.p=5,c=e.v,l.logErr("处理文件时发生错误: ".concat(c.message)),c}},e,null,[[1,5]])}),d=function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){s(i,r,o,a,c,"next",e)}function c(e){s(i,r,o,a,c,"throw",e)}a(void 0)})},d.apply(this,arguments)}function m(e){var n={"\\28":"(","\\29":")","\\5b":"[","\\5d":"]","\\2c":",","\\20":" "},t={};return Object.entries(e).forEach(function(e){var r=i(e,2),o=r[0],a=r[1];Object.entries(n).forEach(function(e){var n=i(e,2),t=n[0],r=n[1];a=a.replace(new RegExp(t,"g"),r)}),t[o]=a}),t}e.exports=function(e,n){return d.apply(this,arguments)}},2268:e=>{"use strict";e.exports=require("jsqr")},2305:e=>{"use strict";e.exports=require("form-data")},2410:e=>{"use strict";e.exports=require("glob")},2425:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function i(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?o(Object(t),!0).forEach(function(n){a(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):o(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function a(e,n,t){return(n=p(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",o=t.toStringTag||"@@toStringTag";function i(t,r,o,i){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return c(l,"_invoke",function(t,r,o){var i,s,c,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,s=0,c=e,p.n=t,a}};function d(t,r){for(s=t,c=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(c=i[(s=i[4])?5:(s=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(s=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,s=0))}if(o||t>1)return a;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),s=l,c=m;(n=s<2?e:c)||!f;){i||(s?s<3?(s>1&&(p.n=-1),d(s,c)):p.n=c:p.v=c);try{if(u=2,i){if(s||(o="next"),n=i[o]){if(!(n=n.call(i,c)))throw TypeError("iterator result is not an object");if(!n.done)return n;c=n.value,s<2&&(s=0)}else 1===s&&(n=i.return)&&n.call(i),s<2&&(c=TypeError("The iterator does not provide a '"+o+"' method"),s=1);i=e}else if((n=(f=p.n<0)?c:t.call(r,p))!==a)break}catch(n){i=e,s=1,c=n}finally{u=1}}return{value:n,done:f}}}(t,o,i),!0),l}var a={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(c(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,c(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,c(d,"constructor",f),c(f,"constructor",l),l.displayName="GeneratorFunction",c(f,o,"GeneratorFunction"),c(d),c(d,o,"Generator"),c(d,r,function(){return this}),c(d,"toString",function(){return"[object Generator]"}),(s=function(){return{w:i,m}})()}function c(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}c=function(e,n,t,r){function i(n,t){c(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(i("next",0),i("throw",1),i("return",2))},c(e,n,t,r)}function u(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function l(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){u(i,r,o,a,s,"next",e)}function s(e){u(i,r,o,a,s,"throw",e)}a(void 0)})}}function f(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,p(r.key),r)}}function p(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var d=t(8938),m=t(2305),y=t(4652),v=t(8085),h=v.FAIL_CODE,b=v.SUCCEED_CODE,g=(t(1060).checkConfigOptions,{dev:"http://beta-vapp-ide.jd.com",prod:"https://vapp-ide-pack.jd.com",test:"http://test-vapp-ide.jdtest.net"}),w=function(){return e=function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"prod";!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.URL=g[n]},n=[{key:"uploadProject",value:(E=l(s().m(function e(n){var t,r,o;return s().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,this.pack(n);case 1:if((t=e.v).code===b){e.n=2;break}return e.a(2,t);case 2:return r=t.data.result,e.a(2,{code:b,uuid:r});case 3:return e.p=3,o=e.v,e.a(2,{code:h,err_msg:o instanceof Error?o.message:"上传失败"})}},e,this,[[0,3]])})),function(e){return E.apply(this,arguments)})},{key:"loopQueryBuildStatus",value:(j=l(s().m(function e(n,t){var r;return s().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.loopQuery(n,t);case 1:if((r=e.v).code===b){e.n=2;break}return e.a(2,r);case 2:return e.a(2,{code:b,packId:r.data})}},e,this)})),function(e,n){return j.apply(this,arguments)})},{key:"sendPostRequest",value:(P=l(s().m(function e(n,t){var r,o,a,c,u,l=arguments;return s().w(function(e){for(;;)switch(e.p=e.n){case 0:for(a in r=l.length>2&&void 0!==l[2]?l[2]:"请求失败",o=new m,t)o.append(a,t[a]);return e.p=1,e.n=2,d.post(n,o,{headers:i({},o.getHeaders())});case 2:if((c=e.v).data.code!==b){e.n=3;break}return e.a(2,{code:b,data:c.data});case 3:return e.a(2,{code:h,err_msg:"".concat(r,": ").concat(c.data.errorMessage)});case 4:return e.p=4,u=e.v,e.a(2,{code:h,err_msg:"".concat(r,": ").concat(u)})}},e,null,[[1,4]])})),function(e,n){return P.apply(this,arguments)})},{key:"pluginPublishRequest",value:(k=l(s().m(function e(n,t,r,o){var i,a,c,u,l,f=arguments;return s().w(function(e){for(;;)switch(e.p=e.n){case 0:return i=f.length>4&&void 0!==f[4]?f[4]:"请求失败",a=JSON.stringify(t),c={method:"post",maxBodyLength:1/0,url:"".concat(n,"?appId=").concat(r,"&requestToken=").concat(o),headers:{"Content-Type":"application/json"},data:a},e.p=1,e.n=2,d.request(c);case 2:if((u=e.v).data.code!==b){e.n=3;break}return e.a(2,{code:b,data:u.data});case 3:return e.a(2,{code:h,err_msg:"".concat(i,": ").concat(u.data.errorMessage)});case 4:return e.p=4,l=e.v,e.a(2,{code:h,err_msg:"".concat(i,": ").concat(l)})}},e,null,[[1,4]])})),function(e,n,t,r){return k.apply(this,arguments)})},{key:"pack",value:(S=l(s().m(function e(n){var t,r,o,i,a,c;return s().w(function(e){for(;;)if(0===e.n)return t=n.sourceFile,r=n.appId,o=n.requestToken,i=n.showType,a="".concat(this.URL,"upload"===i?"/v1/devops/pack":"/v1/ci/preview"),c={appId:r,requestToken:o,sourceFile:y.createReadStream(t)},e.a(2,this.sendPostRequest(a,c,"文件上传报错"))},e,this)})),function(e){return S.apply(this,arguments)})},{key:"loopQuery",value:(w=l(s().m(function e(n,t){var r,o,i,a;return s().w(function(e){for(;;)switch(e.n){case 0:r=Date.now(),o=2e6,i=3e3;case 1:if(!(Date.now()-r<o)){e.n=6;break}return e.n=2,new Promise(function(e){return setTimeout(e,i)});case 2:return e.n=3,this.queryPkgId(n,t);case 3:if((a=e.v).code===b){e.n=4;break}return e.a(2,{code:h,err_msg:a.err_msg});case 4:if(!a.data.result){e.n=5;break}return e.a(2,{code:b,data:a.data.result});case 5:e.n=1;break;case 6:return e.a(2,{code:h,err_msg:"查询超时"})}},e,this)})),function(e,n){return w.apply(this,arguments)})},{key:"queryPkgId",value:(v=l(s().m(function e(n,t){var r,o,i,a,c;return s().w(function(e){for(;;)if(0===e.n)return r=n.appId,o=n.requestToken,i=n.showType,a={appId:r,requestToken:o,uuid:t},c="".concat(this.URL,"/v1/ci/queryPackIdByUuid"),"preview"===i&&(c="".concat(this.URL,"/v1/ci/query-async-build-result")),e.a(2,this.sendPostRequest(c,a,"获取构建包id失效"))},e,this)})),function(e,n){return v.apply(this,arguments)})},{key:"generateQrCode",value:(p=l(s().m(function e(n){var t,r,o,i,a,c,u,l;return s().w(function(e){for(;;)switch(e.n){case 0:return t=n.appId,r=n.requestToken,o=n.packId,i=n.showType,a={appId:t,requestToken:r},c="".concat(this.URL,"/v1/ci/queryQrcodeByPackId"),"preview"===i?(c="".concat(this.URL,"/v1/ci/previewQrcode"),a.clientKey=o):a.packId=o,e.n=1,this.sendPostRequest(c,a,"获取二维码失效");case 1:if((u=e.v).code===b){e.n=2;break}return e.a(2,{code:h,err_msg:u.err_msg});case 2:if(!u.data.result){e.n=3;break}return(l=new Date).setMinutes(l.getMinutes()+25),e.a(2,{code:b,imgUrl:u.data.result,expiredTime:"".concat(this.addZeroForShort(l.getHours()),":").concat(this.addZeroForShort(l.getMinutes()))});case 3:return e.a(2,{code:h,err_msg:"二维码生成完成请求返回为空"});case 4:return e.a(2)}},e,this)})),function(e){return p.apply(this,arguments)})},{key:"addZeroForShort",value:function(e){return String(e).length<2?"0".concat(String(e)):String(e)}},{key:"commitDevVersion",value:(u=l(s().m(function e(n,t){var r,o,i,a,c,u;return s().w(function(e){for(;;)switch(e.n){case 0:return r=n.appId,o=n.requestToken,i=n.versionName,a=n.description,c={packId:t,appId:r,requestToken:o,versionName:i,description:a},e.n=1,this.sendPostRequest("".concat(this.URL,"/v1/ci/commitDevVersion"),c,"设置为开发版失效");case 1:if((u=e.v).code===b){e.n=2;break}return e.a(2,u);case 2:return e.a(2,{code:b,devId:u.data.result})}},e,this)})),function(e,n){return u.apply(this,arguments)})},{key:"setDevExperience",value:(c=l(s().m(function e(n,t){var r,o,i,a;return s().w(function(e){for(;;)switch(e.n){case 0:return r=n.appId,o=n.requestToken,i={appId:r,requestToken:o,devId:t},e.n=1,this.sendPostRequest("".concat(this.URL,"/v1/ci/devExperience"),i,"设置为体验版失效");case 1:if((a=e.v).code===b){e.n=2;break}return e.a(2,a);case 2:return e.a(2,{code:b})}},e,this)})),function(e,n){return c.apply(this,arguments)})},{key:"queryExperienceQrcodeByPackId",value:(a=l(s().m(function e(n){var t,r,o,i,a,c;return s().w(function(e){for(;;)switch(e.n){case 0:return t=n.appId,r=n.requestToken,o={appId:t,requestToken:r},e.n=1,this.sendPostRequest("".concat(this.URL,"/v1/ci/queryExperienceQrcode"),o,"获取体验二维码失效");case 1:if((i=e.v).code===b){e.n=2;break}return e.a(2,{code:h,err_msg:i.err_msg});case 2:return a=i.data.result,(c=new Date).setMinutes(c.getMinutes()+25),e.a(2,{code:b,imgUrl:a,expiredTime:"".concat(this.addZeroForShort(c.getHours()),":").concat(this.addZeroForShort(c.getMinutes()))})}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"uploadPlugin",value:(o=l(s().m(function e(n){var t,r,o,i,a,c,u;return s().w(function(e){for(;;)switch(e.n){case 0:return t=n.sourceFile,r=n.appId,o=n.requestToken,i=n.versionName,a="".concat(this.URL,"/v1/ci/pluginPack"),c={appId:r,requestToken:o,versionName:i,sourceFile:y.createReadStream(t)},e.n=1,this.sendPostRequest(a,c,"插件构建报错");case 1:if((u=e.v).code===b){e.n=2;break}return e.a(2,{code:h,err_msg:u.err_msg});case 2:return e.a(2,{code:b,result:u.data.result})}},e,this)})),function(e){return o.apply(this,arguments)})},{key:"publishPlugin",value:(r=l(s().m(function e(n){var t,r,o,i,a,c,u,l,f;return s().w(function(e){for(;;)switch(e.n){case 0:return t=n.versionName,r=n.versionFeature,o=n.useGuide,i=n.packId,a=n.appId,c=n.requestToken,u="".concat(this.URL,"/v1/ci/plugin-dev"),l={versionName:t,versionFeature:r,useGuide:o,packId:i},e.n=1,this.pluginPublishRequest(u,l,a,c,"插件上传报错");case 1:if((f=e.v).code===b){e.n=2;break}return e.a(2,{code:h,err_msg:f.err_msg});case 2:return e.a(2,{code:b})}},e,this)})),function(e){return r.apply(this,arguments)})}],n&&f(e.prototype,n),t&&f(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t,r,o,a,c,u,p,v,w,S,k,P,j,E}();e.exports=w},3121:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a=t(2410),s=t(9896),c=t(6928),u=t(7172),l=function(){return e=function e(n){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.projectPath=n.src,this.distFile=n.dist,this._allFilePath=[],this._allFileContents=[]},(n=[{key:"genWholeTrunk",value:function(){this._getAllFileBaseInfo();var e=this.genFileIndex(),n=this._getAllFileCountBuf();e.unshift(n);var t=Buffer.concat(e),r=Buffer.concat(this._allFileContents),o=this.encodeHeader(t.length,r.length),i=Buffer.concat(o),a=Buffer.concat([i,t,r]);s.writeFileSync(this.distFile,a,"binary")}},{key:"_getAllFiles",value:function(){return a.sync(this.projectPath+"/**",{nodir:!0,ignore:["**/.*","**/.*/.**","**/*.js.map"]})}},{key:"encodeHeader",value:function(e,n){var t=[Buffer.alloc(1),Buffer.alloc(4),Buffer.alloc(4),Buffer.alloc(4),Buffer.alloc(1)];return t[0].writeUInt8(250),t[1].writeInt32BE(7),t[4].writeUInt8(238),t[2].writeInt32BE(e),t[3].writeInt32BE(n),t}},{key:"_getAllFileBaseInfo",value:function(){var e=this._getAllFiles(),n=this;e.forEach(function(e){var t=s.readFileSync(e),r=c.relative(n.projectPath,e),o=Buffer.from("/"+r.replace(/\\/g,"/"));n._allFilePath.push(o),n._allFileContents.push(t)})}},{key:"genFileIndex",value:function(){var e=this._genFirstContentOffset(),n=this;return this._allFilePath.map(function(t,r){var o=Buffer.alloc(4);o.writeInt32BE(t.length);var i=Buffer.alloc(4),a=e;i.writeInt32BE(a);var s=Buffer.alloc(4),c=n._allFileContents[r].length;return s.writeInt32BE(c),e+=c,Buffer.concat([o,t,i,s])})}},{key:"_genFirstContentOffset",value:function(){return 18+12*this._allFilePath.length+Buffer.concat(this._allFilePath).length}},{key:"_getAllFileCountBuf",value:function(){var e=Buffer.alloc(4);return e.writeInt32BE(this._allFilePath.length),e}}])&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t}();function f(e,n,t){var r=e+".jd";new l({src:e,dist:r}).genWholeTrunk(),function(e,n){return new Promise(function(t,r){var o=s.createWriteStream(n),i=u("zip",{zlib:{level:9}});o.on("close",function(){t(n)}),i.on("warning",function(e){"ENOENT"!==e.code&&r(e)}),i.on("error",r),i.pipe(o),i.file(e,{name:"package.jd"}),i.finalize()})}(r,n).then(function(){s.existsSync(r)&&s.unlinkSync(r),t(null,n)}).catch(function(e){console.log("压缩 .jd 文件失败:",e),t(e)})}e.exports=function(e,n,t){f(e,n,t)}},3427:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})}}var s,c=t(9896),u=c.promises,l=t(6928),f=t(8938),p=function(e,n){return{filePath:e?n:void 0,tempFilePath:n,statusCode:200}},d=function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,u.access(n);case 1:e.n=3;break;case 2:return e.p=2,e.v,e.n=3,u.mkdir(n,{recursive:!0});case 3:return e.a(2)}},e,null,[[0,2]])}));return function(n){return e.apply(this,arguments)}}(),m=function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,u.stat(n);case 1:if(!e.v.isDirectory()){e.n=2;break}return e.n=2,u.rm(n,{recursive:!0});case 2:e.n=4;break;case 3:e.p=3,e.v;case 4:return e.a(2)}},e,null,[[0,3]])}));return function(n){return e.apply(this,arguments)}}();e.exports={downloadFile:(s=a(r().m(function e(n){var t,o,i,s,y,v,h,b,g,w;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return t=n.url,o=n.filePath,i=n.success,s=n.fail,y=n.complete,v={success:i,fail:s,complete:y},e.p=1,e.n=2,d(l.dirname(o));case 2:return e.n=3,m(o);case 3:return e.n=4,f({method:"get",url:t,responseType:"stream"});case 4:return h=e.v,b=c.createWriteStream(o),h.data.pipe(b),e.a(2,new Promise(function(e,n){var t=0,i=parseInt(h.headers["content-length"]),s=h.headers["transfer-encoding"];b.on("finish",a(r().m(function a(){var c,l,f,d;return r().w(function(r){for(;;)switch(r.p=r.n){case 0:if(r.p=0,"chunked"===s||!i||t===i){r.n=2;break}return r.n=1,u.unlink(o);case 1:throw new Error("Download incomplete: Received ".concat(t," of ").concat(i," bytes"));case 2:null===(c=v.success)||void 0===c||c.call(v,p(!0,o)),e(p(!0,o)),r.n=4;break;case 3:r.p=3,d=r.v,null===(l=v.fail)||void 0===l||l.call(v,{errMsg:d.message}),n(d);case 4:return r.p=4,null===(f=v.complete)||void 0===f||f.call(v),r.f(4);case 5:return r.a(2)}},a,null,[[0,3,4,5]])}))),b.on("error",function(){var e=a(r().m(function e(t){var i;return r().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,u.unlink(o).catch(function(){});case 1:null===(i=v.fail)||void 0===i||i.call(v,{errMsg:"Write failed: ".concat(t.message)}),n(t);case 2:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),h.data.on("data",function(e){t+=e.length})}));case 5:return e.p=5,w=e.v,e.n=6,u.unlink(o).catch(function(){});case 6:throw null===(g=v.fail)||void 0===g||g.call(v,{errMsg:"Download failed: ".concat(w.message)}),w;case 7:return e.a(2)}},e,null,[[1,5]])})),function(e){return s.apply(this,arguments)})}},3709:e=>{function n(e){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n.keys=()=>[],n.resolve=n,n.id=3709,e.exports=n},3840:e=>{"use strict";e.exports=require("marked")},3904:e=>{function n(e){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n.keys=()=>[],n.resolve=n,n.id=3904,e.exports=n},4218:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})}}var s=t(7252).Router(),c=t(8320),u=t(649),l=t(6928),f=t(5322);function p(e,n){return d.apply(this,arguments)}function d(){return(d=a(r().m(function e(n,t){var o,i,a,s,u,p,d;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(e.p=0,(o=c.validateProject("increment-history","",n.isPreEnv)).valid){e.n=1;break}return e.a(2,t.json({code:-1,message:o.errMsg||"项目校验失败"}));case 1:c.ensureSpinner().start("开始获取历史版本……"),i=l.resolve(c.config.entry,".codesplitcache"),a=l.resolve(i,"original"),c.setupCacheDirectories(i,a),e.p=2,f.syncPluginCacheFiles(c.config.entry,a),c.spinner.succeed("文件备份完成"),e.n=4;break;case 3:throw e.p=3,u=e.v,c.spinner.fail("文件备份失败:".concat(u.message)),u;case 4:return e.n=5,c.processSymbolFiles(i,a);case 5:return c.spinner.start(),c.spinner.text="开始上传文件……",e.p=6,e.n=7,c.uploadFiles(a,i);case 7:e.n=9;break;case 8:e.p=8,p=e.v,c.spinner.fail("上传文件失败:".concat(p.message)),process.exit(1);case 9:return c.spinner.succeed("上传文件成功"),c.spinner.start(),c.spinner.text="添加游戏版本……",e.n=10,c.addGameVersion();case 10:return c.spinner.succeed("添加游戏版本成功"),e.n=11,c.getIncrementHistory();case 11:s=e.v,t.json({code:0,data:s}),e.n=13;break;case 12:e.p=12,d=e.v,c.spinner.fail(d.message),t.json({code:-1,message:d.message});case 13:return e.a(2)}},e,null,[[6,8],[2,3],[0,12]])}))).apply(this,arguments)}s.post("/wasm-init",function(){var e=a(r().m(function e(n,t){var o,i,a,s,l;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return o=n.body.isUpdate,i=void 0!==o&&o,a=n.isPreEnv,e.p=1,u.start("wasm-init",5),u.update("正在验证项目配置..."),e.n=2,c.init({srcPath:"",isPreEnv:a,isUpdate:i});case 2:s=e.v,u.complete(s),t.json({code:0,message:i?"增量更新完成":"初始化完成",data:s}),e.n=4;break;case 3:e.p=3,l=e.v,u.fail(l.message),t.json({code:-1,message:l.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),s.post("/wasm-update",function(){var e=a(r().m(function e(n,t){var o,i,a;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return o=n.isPreEnv,e.p=1,u.start("wasm-update",6),u.update("正在获取历史版本..."),e.n=2,c.init({srcPath:"",isPreEnv:o,isUpdate:!0});case 2:i=e.v,u.complete(i),t.json({code:0,message:"增量更新完成",data:i}),e.n=4;break;case 3:e.p=3,a=e.v,u.fail(a.message),t.json({code:-1,message:a.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),s.get("/wasm-history-versions",p),s.get("/increment/history",p),s.post("/increment/init",function(){var e=a(r().m(function e(n,t){var o,i,a,s,l;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(o=n.isPreEnv,i=n.body||{},a=i.incrementMd5){e.n=1;break}return e.a(2,t.json({code:-1,message:"请选择历史版本"}));case 1:return e.p=1,u.start("increment-init",6),u.update("正在进行增量初始化..."),e.n=2,c.runIncrementInit({srcPath:"",isPreEnv:o,incrementMd5:a});case 2:s=e.v,u.complete(s),t.json({code:0,message:"增量初始化完成",data:s}),e.n=4;break;case 3:e.p=3,l=e.v,u.fail(l.message),t.json({code:-1,message:l.message});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n,t){return e.apply(this,arguments)}}()),e.exports=s},4246:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,o,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return i(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,o,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(i(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,i(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,i(d,"constructor",f),i(f,"constructor",l),l.displayName="GeneratorFunction",i(f,a,"GeneratorFunction"),i(d),i(d,a,"Generator"),i(d,r,function(){return this}),i(d,"toString",function(){return"[object Generator]"}),(o=function(){return{w:s,m}})()}function i(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}i=function(e,n,t,r){function a(n,t){i(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},i(e,n,t,r)}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function s(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach(function(n){c(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function c(e,n,t){return(n=function(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function u(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}var l=t(7252).Router(),f=t(6928),p=t(9896),d=t(6626),m=t(9664),y=t(6949),v=(t(8320),t(649),t(8330)),h={splitDetails:null,codeMd5:null,lastSplitTime:null,cacheTime:null};function b(e){return!!h.splitDetails&&(h.codeMd5===e&&!(h.lastSplitTime&&h.cacheTime&&h.lastSplitTime>h.cacheTime))}function g(e){var n=f.join(e,".codesplitcache/codesplit-config.json"),t=f.join(e,"wasmcode"),r=f.join(e,"wasmcode1");return p.existsSync(n)&&p.existsSync(t)&&p.existsSync(r)?"split":"not_split"}function w(e){var n=f.join(e,"wasmcode");if(!p.existsSync(n))return{filePath:null,fileName:null,codeMd5:null};var t=p.readdirSync(n).find(function(e){return e.endsWith(".wasm")||e.endsWith(".wasm.br")||e.endsWith(".unityweb.wasm.br")||e.endsWith(".wasm.unityweb")});return t?{filePath:f.join(n,t),fileName:t,codeMd5:function(e){if(!e)return null;var n=e.split(".")[0];return n&&/^[a-f0-9]{16}$/i.test(n)?n:null}(t)}:{filePath:null,fileName:null,codeMd5:null}}function S(e){var n=null,t=0,r=f.join(e,"webgl.wasm.symbols.unityweb");if(p.existsSync(r)){n=r;try{t=p.readFileSync(r,"utf-8").split("\n").filter(function(e){return e.trim().length>0}).length}catch(e){}}else{var o=f.join(e,"Build.json"),i=f.join(e,"unityweb.json");if(p.existsSync(o)){n=o;try{var a=p.readFileSync(o,"utf-8"),s=JSON.parse(a);s.symbols&&Array.isArray(s.symbols)&&(t=s.symbols.length)}catch(e){}}else if(p.existsSync(i)){n=i;try{var c=p.readFileSync(i,"utf-8"),u=JSON.parse(c);u.symbols&&Array.isArray(u.symbols)&&(t=u.symbols.length)}catch(e){}}}return{symbolFilePath:n,totalFunctions:t}}l.invalidateCache=function(){h.lastSplitTime=Date.now(),h.splitDetails=null,console.log("[config] 服务端缓存已失效")},l.get("/wasm-split-init",function(){var e,n=(e=o().m(function e(n,t){var r,i,a,c,u,l,k,P,j,E,O,_,F,T,x,I,C,G,M,A,N,D,q,W,R;return o().w(function(e){for(;;)switch(e.p=e.n){case 0:e.p=0,e.p=1,r=d.loadProjectConfig(""),e.n=3;break;case 2:return e.p=2,e.v,e.a(2,t.json({code:-1,message:"未找到项目配置,请先执行 jgc config"}));case 3:if(r){e.n=4;break}return e.a(2,t.json({code:-1,message:"未找到项目配置,请先执行 jgc config"}));case 4:if(a=(i=r).appId,c=i.entry,i.requestToken,u=i.fullEntryPath,l=u||c,m.setEnv(n.isPreEnv),k=g(l),P=w(l),j=P.filePath,P.fileName,E=P.codeMd5,O=S(l),_=O.symbolFilePath,F=O.totalFunctions,T=null,x=f.join(l,".codesplitcache/codesplit-config.json"),p.existsSync(x))try{T=JSON.parse(p.readFileSync(x,"utf-8"))}catch(e){}if(I=null,"split"!==k){e.n=10;break}if(e.p=5,!b(E)){e.n=6;break}console.log("[config] 使用服务端缓存的分包详情"),I=s(s({},h.splitDetails),{},{md5:E}),e.n=8;break;case 6:return console.log("[config] 开始分析 WASM, entryPath:",l,"totalFunctions:",F),e.n=7,y.getSplitDetails(l,F);case 7:C=e.v,console.log("[config] 分析结果:",JSON.stringify(C)),C?(I={splitForm:C.splitForm,mainFuncCount:C.mainFuncCount,subFuncCount:C.subFuncCount,mainFuncRatio:C.mainFuncRatio,splitTip:C.splitTip,splitTipLevel:C.splitTipLevel,isDevSplit:C.isDevSplit,md5:E},h.splitDetails={splitForm:C.splitForm,mainFuncCount:C.mainFuncCount,subFuncCount:C.subFuncCount,mainFuncRatio:C.mainFuncRatio,splitTip:C.splitTip,splitTipLevel:C.splitTipLevel,isDevSplit:C.isDevSplit},h.codeMd5=E,h.cacheTime=Date.now(),console.log("[config] 服务端缓存已更新")):(console.log("[config] splitDetails 为空,使用回退配置"),I={splitForm:"Unknown",mainFuncCount:(null===(G=T)||void 0===G?void 0:G.mainFuncCount)||0,subFuncCount:(null===(M=T)||void 0===M?void 0:M.subFuncCount)||0,mainFuncRatio:0,splitTip:"-",splitTipLevel:"warning",md5:(null===(A=T)||void 0===A?void 0:A.md5)||E});case 8:e.n=10;break;case 9:e.p=9,W=e.v,console.error("[config] WASM 分析失败:",W.message),I={splitForm:"Unknown",mainFuncCount:(null===(N=T)||void 0===N?void 0:N.mainFuncCount)||0,subFuncCount:(null===(D=T)||void 0===D?void 0:D.subFuncCount)||0,mainFuncRatio:0,splitTip:"-",splitTipLevel:"warning",md5:(null===(q=T)||void 0===q?void 0:q.md5)||E};case 10:t.json({code:0,data:{appId:a,entry:l,codeMd5:E,totalFunctions:F,splitStatus:k,wasmFilePath:j,symbolFilePath:_,cacheConfig:T,splitInfo:I,isPreEnv:n.isPreEnv,appVersion:(null==v?void 0:v.version)||"0.0.0"}}),e.n=12;break;case 11:e.p=11,R=e.v,t.json({code:-1,message:R.message});case 12:return e.a(2)}},e,null,[[5,9],[1,2],[0,11]])}),function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){u(i,r,o,a,s,"next",e)}function s(e){u(i,r,o,a,s,"throw",e)}a(void 0)})});return function(e,t){return n.apply(this,arguments)}}()),l.get("/project-config",function(e,n){try{var t=d.loadProjectConfig("");n.json({code:0,data:t})}catch(e){n.json({code:-1,message:e.message})}}),e.exports=l},4377:e=>{e.exports=[{reg:/Module\[('|")HEAP8('|")\]\s*=\s*HEAP8\s*=\s*new\s*Int8Array/gi,replaceMethod:function(){return'Module["HEAP8"] = window.EMSCRIPTEN_HEAP8 = HEAP8 = new Int8Array'}},{reg:/Module\[('|")HEAP16('|")\]\s*=\s*HEAP16\s*=\s*new\s*Int16Array/gi,replaceMethod:function(){return'Module["HEAP16"] = window.EMSCRIPTEN_HEAP16 = HEAP16 = new Int16Array'}},{reg:/Module\[('|")HEAP32('|")\]\s*=\s*HEAP32\s*=\s*new\s*Int32Array/gi,replaceMethod:function(){return'Module["HEAP32"] = window.EMSCRIPTEN_HEAP32 = HEAP32 = new Int32Array'}},{reg:/Module\[('|")HEAPU8('|")\]\s*=\s*HEAPU8\s*=\s*new\s*Uint8Array/gi,replaceMethod:function(){return'Module["HEAPU8"] = window.EMSCRIPTEN_HEAPU8 = HEAPU8 = new Uint8Array'}},{reg:/Module\[('|")HEAPU16('|")\]\s*=\s*HEAPU16\s*=\s*new\s*Uint16Array/gi,replaceMethod:function(){return'Module["HEAPU16"] = window.EMSCRIPTEN_HEAPU16 = HEAPU16 = new Uint16Array'}},{reg:/Module\[('|")HEAPU32('|")\]\s*=\s*HEAPU32\s*=\s*new\s*Uint32Array/gi,replaceMethod:function(){return'Module["HEAPU32"] = window.EMSCRIPTEN_HEAPU32 = HEAPU32 = new Uint32Array'}},{reg:/Module\[('|")HEAPF32('|")\]\s*=\s*HEAPF32\s*=\s*new\s*Float32Array/gi,replaceMethod:function(){return'Module["HEAPF32"] = window.EMSCRIPTEN_HEAPF32 = HEAPF32 = new Float32Array'}},{reg:/Module\[('|")HEAPF64('|")\]\s*=\s*HEAPF64\s*=\s*new\s*Float64Array/gi,replaceMethod:function(){return'Module["HEAPF64"] = window.EMSCRIPTEN_HEAPF64 = HEAPF64 = new Float64Array'}},{reg:"calledMain = true;",replaceMethod:function(){return"if (GameGlobal.unityNamespace.pluginCalledMainCb) {\n GameGlobal.unityNamespace.pluginCalledMainCb()\n }\n calledMain = true;"}}]},4420:e=>{"use strict";e.exports=require("jimp")},4652:e=>{"use strict";e.exports=require("fs-extra")},4901:e=>{function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function t(e,n){for(var t=0;t<n.length;t++){var o=n[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,r(o.key),o)}}function r(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==n(t)?t:t+""}var o=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.configPrompts=[{name:"entry",type:"input",message:"请输入函数名文件所在路径:",default:"./"}]},(n=[{key:"getPrompts",value:function(){return this.configPrompts}}])&&t(e.prototype,n),r&&t(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r}();e.exports=o},5086:e=>{"use strict";e.exports=require("ws")},5205:e=>{"use strict";e.exports=require("picocolors")},5317:e=>{"use strict";e.exports=require("child_process")},5322:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,o,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return i(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,o,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(i(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,i(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,i(d,"constructor",f),i(f,"constructor",l),l.displayName="GeneratorFunction",i(f,a,"GeneratorFunction"),i(d),i(d,a,"Generator"),i(d,r,function(){return this}),i(d,"toString",function(){return"[object Generator]"}),(o=function(){return{w:s,m}})()}function i(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}i=function(e,n,t,r){function a(n,t){i(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},i(e,n,t,r)}function a(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function s(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,c(r.key),r)}}function c(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var u=t(9896),l=t(6928),f=t(2410),p=t(6046),d=p.createWasmSplitCodeBySimd,m=p.createImportFuncIndexCodeBySimd,y=t(4377),v=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e)},n=null,t=[{key:"syncPluginCacheFiles",value:function(e,n){this.ensureDirectoryExists(n),this.copyBrFiles(e,n),this.copyFixedFiles(e,n)}},{key:"ensureDirectoryExists",value:function(e){u.existsSync(e)||u.mkdirSync(e,{recursive:!0})}},{key:"copyBrFiles",value:function(e,n){var t=this,r=l.join(e,"wasmcode1");if(u.existsSync(r))throw new Error("文件备份错误,检查wasm文件是否是已分包版本");var o=l.join(n,"wasmcode");u.existsSync(o)&&u.rmSync(o,{recursive:!0,force:!0}),u.mkdirSync(o,{recursive:!0});var i=l.posix.join(e,"wasmcode","*.br");f.sync(i).forEach(function(r){var o=l.relative(e,r),i=l.join(n,o),a=l.dirname(i);t.ensureDirectoryExists(a),u.copyFileSync(r,i)})}},{key:"copyFixedFiles",value:function(e,n){["game.js","game.json","webgl.wasm.framework.unityweb.js","weapp-adapter.js"].forEach(function(t){var r=l.join(e,t),o=l.join(n,t);if(!u.existsSync(o)){if(!u.existsSync(r))throw new Error("Source file missing: ".concat(r));u.copyFileSync(r,o)}})}},{key:"processJavaScriptFiles",value:(r=o().m(function e(n,t,r){var i,a,s;return o().w(function(e){for(;;)switch(e.n){case 0:return this.config=r,u.copyFileSync(l.resolve(r.originalCacheDir,"game.json"),l.resolve(t,"game.json")),i=m(n.tableSize,n.subVersion,r.isPre,r.requestToken,r.isRelease),u.writeFileSync(l.resolve(t,"import-func-index.js"),i),e.n=1,d();case 1:a=e.v,u.writeFileSync(l.resolve(t,"wasm-split.js"),a),s=l.resolve(t,"wasmcode1"),u.writeFileSync(l.resolve(s,"game.js"),"");case 2:return e.a(2)}},e,this)}),i=function(){var e=this,n=arguments;return new Promise(function(t,o){var i=r.apply(e,n);function s(e){a(i,t,o,s,c,"next",e)}function c(e){a(i,t,o,s,c,"throw",e)}s(void 0)})},function(e,n,t){return i.apply(this,arguments)})},{key:"updateConfigFiles",value:function(e,n,t){this.config=t,this.updateGameJson(e,n),this.updateFrameworkJs(e,n),this.updateGameJs(e,n),this.updateAdapterJs(e,n)}},{key:"updateGameJson",value:function(e,n){var t=JSON.parse(u.readFileSync(l.resolve(this.config.originalCacheDir,"game.json")));t.subpackages.push({name:"wasmcode1",root:"wasmcode1/"}),t.plugins.UnityPlugin.version="1.2.58",u.writeFileSync(l.resolve(n,"game.json"),JSON.stringify(t,null,2))}},{key:"updateFrameworkJs",value:function(e,n){var t=l.resolve(this.config.originalCacheDir,"webgl.wasm.framework.unityweb.js"),r=l.resolve(n,"webgl.wasm.framework.unityweb.js"),o=u.readFileSync(t,"utf-8");y.forEach(function(e){o=o.replace(e.reg,e.replaceMethod)}),o+=";\nGameGlobal.unityNamespace.useWasmCodeSplit=true;GameGlobal.unityNamespace.WASM_SPLIT_SUB_VERSION=".concat(e.subVersion,";\n"),u.writeFileSync(r,o)}},{key:"updateGameJs",value:function(e,n){var t=this,r=l.resolve(this.config.originalCacheDir,"game.js"),o=l.resolve(n,"game.js"),i=u.readFileSync(r,"utf-8");[{reg:/const\s*_unityNamespace\s*=\s*_interopRequireDefault\(require\('\.\/unity-namespace'\)\)/gi,replaceMethod:function(){return"const _unityNamespace = _interopRequireDefault(require('./unity-namespace')); \n require('./wasm-split.js')"}},{reg:"GameGlobal.managerConfig = managerConfig;",replaceMethod:function(){return"GameGlobal.managerConfig = managerConfig; \nif(__jdConfig.NAConfig.useiOSfuncWasmBack){ \nGameGlobal.canUseH5Renderer = false; \n} else { \nGameGlobal.canUseH5Renderer = ".concat(!!t.config.isRelease,"; \n} ")}},{reg:"import unityNamespace from './unity-namespace';",replaceMethod:function(){return"import unityNamespace from './unity-namespace';\n import wasm_split from './wasm-split'"}},{reg:/APPID:\s*['"][^'"]*['"]/gi,replaceMethod:function(){return"APPID:'".concat(t.config.appId,"'")}}].forEach(function(e){i=i.replace(e.reg,e.replaceMethod)}),u.writeFileSync(o,i)}},{key:"updateAdapterJs",value:function(e,n){var t=l.resolve(this.config.originalCacheDir,"weapp-adapter.js"),r=l.resolve(n,"weapp-adapter.js"),o=u.readFileSync(t,"utf-8");o='"function" == typeof XMLHttpRequest&&(GameGlobal.nativeXHR = XMLHttpRequest);\n"object" == typeof WebAssembly&&(GameGlobal.nativeWASM = WebAssembly);'+o,u.writeFileSync(r,o)}}],n&&s(e.prototype,n),t&&s(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t,r,i}();e.exports=v},5759:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a,s=t(6895),c=t(8720);e.exports=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e)},t=[{key:"logStep",value:function(e){for(var n,t=arguments.length,r=new Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];(n=console).log.apply(n,[s.green("> ".concat(e))].concat(r))}},{key:"log",value:function(e){for(var n=arguments.length,t=new Array(n>1?n-1:0),r=1;r<n;r++)t[r-1]=arguments[r];setTimeout(function(){var n;(n=console).log.apply(n,[s.green(e)].concat(t))},0)}},{key:"logInfo",value:function(e){for(var n,t=arguments.length,r=new Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];(n=console).log.apply(n,[e].concat(r))}},{key:"logErr",value:function(e){for(var n,t=arguments.length,r=new Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];(n=console).log.apply(n,[s.red(e)].concat(r))}},{key:"startLogProcess",value:function(e){var n=c(e).start(),t={stop:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e+" 失败";"fail"==(arguments.length>1?arguments[1]:void 0)?n.fail(e):n.succeed(e)}};return a=t,t}},{key:"endLogProcess",value:function(e,n){e||(e=a),e&&"function"==typeof e.stop&&e.stop(n,"fail")}}],(n=null)&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t}()},6046:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}t(6928);var a,s,c=t(9239).minify;e.exports={createWasmSplitCodeBySimd:(a=r().m(function e(){var n,t,o;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,n='import { tableSize, setImportGlobal } from "./import-func-index";\n import { isIOS } from "./check-version";\n \n let b = (wx.getAccountInfoSync() || {}).miniProgram;\n const isTrial = b && "release" != b.envVersion;\n let callbackArray = [],\n isLoaded = false;\n \n function loadSubWasmPackage(doneCallback, needBlock) {\n if (isLoaded) {\n doneCallback(needBlock);\n return;\n }\n let loadStart = Date.now();\n GameGlobal.unityNamespace.eventLog("start loadSubPackage wasmcode1");\n callbackArray.push({\n callback: doneCallback,\n needBlock: needBlock,\n });\n let a = Date.now() - loadStart;\n GameGlobal.unityNamespace.eventLog(\n "下载代码分包1完毕: ",\n (a / 1e3).toFixed(2),\n "s"\n );\n GameGlobal.manager.subWasmDownloaded(a);\n isLoaded = true;\n callbackArray.forEach((a) => a.callback(a.needBlock));\n callbackArray = [];\n }\n let loadedSub = false,\n isInstanced = false;\n function reTry(a) {\n let e = function () {\n isInstanced ? a() : setTimeout(e, 1);\n };\n setTimeout(e, 1);\n }\n \n function initializeSubWasmModule(needBlock) {\n GameGlobal.unityNamespace.eventLog(\n "start compileSubWasm: needBlock ",\n needBlock\n );\n GameGlobal.manager.beforeLoadSubWasm();\n let instanceStart = Date.now();\n const subWasmPath =\n "wasmcode1/" +\n GameGlobal.unityNamespace.CODE_FILE_MD5 +\n "." +\n GameGlobal.unityNamespace.GAME_NAME +\n ".wasm.code.unityweb.wasm.br";\n let callback = (a) => {\n let cost = Date.now() - instanceStart;\n GameGlobal.manager.subWasmCompiled(cost);\n GameGlobal.unityNamespace.eventLog(\n "[PLUGIN SUBWASM LOG]subwasm loaded: ",\n cost\n );\n isInstanced = true;\n };\n WXWebAssembly.instantiate(subWasmPath, wasm_split_info)\n .then(callback)\n .catch((a) => {\n console.error("wasmcode1 catch ", a);\n });\n }\n \n function invokeWait(needBlock) {\n if (!isInstanced) {\n if (!loadedSub) {\n loadedSub = true;\n GameGlobal.unityNamespace.eventLog(\n "start instantiateSubWasm: needBlock ",\n needBlock\n );\n loadSubWasmPackage(initializeSubWasmModule, needBlock);\n }\n }\n }\n \n function innerInvokeWasmBuffer(funcName, e) {\n GameGlobal.manager.wasmsplit.innerInvokeWasmBuffer({\n funcName: funcName,\n importObj: window.wasm_split_info,\n fail(t) {\n if (e > 0) {\n GameGlobal.unityNamespace.eventLog(\n "fetch table_id: ",\n funcName,\n "; remainRetryTimes: ",\n e\n );\n return innerInvokeWasmBuffer(funcName, e - 1);\n }\n GameGlobal.unityNamespace.eventLog(\n "fetch table_id:",\n funcName,\n "; md5: ",\n GameGlobal.unityNamespace.CODE_FILE_MD5,\n "; subversion: ",\n GameGlobal.unityNamespace.WASM_SPLIT_SUB_VERSION,\n "; err: ",\n t\n );\n if ("system error" === t.errmsg || "content is null" === t.errmsg) {\n GameGlobal.onCrash();\n } else {\n wx.showModal({\n title: "网络状态异常",\n content: "请检查网络后重启 小游戏",\n showCancel: !1,\n confirmText: wx.restartMiniProgram ? "立即重启" : "确定",\n success() {\n wx.restartMiniProgram && wx.restartMiniProgram({})\n }\n })\n // invokeWait(true);\n }\n },\n });\n }\n let subCalledSet = new Set(),\n globalCalledSet = new Set();\n \n function _reportCalledFunc() {\n if (subCalledSet.size > 0) {\n GameGlobal.manager.reportCalledFuncs({\n called_func_list: Array.from(subCalledSet),\n sub_version: GameGlobal.unityNamespace.WASM_SPLIT_SUB_VERSION,\n func_type: 1,\n });\n subCalledSet.clear();\n }\n \n setTimeout(_reportCalledFunc, 5000);\n }\n \n GameGlobal.unityNamespace.reportCalledFunc = _reportCalledFunc;\n \n if (!GameGlobal.unityNamespace.pluginCalledMainCbs) {\n GameGlobal.unityNamespace.pluginCalledMainCbs = [];\n }\n \n if (!GameGlobal.unityNamespace.pluginCalledMainCb) {\n GameGlobal.unityNamespace.pluginCalledMainCb = function () {\n this.pluginCalledMainCbs.forEach((a) => a());\n };\n }\n \n isTrial &&\n !GameGlobal.canUseH5Renderer &&\n GameGlobal.unityNamespace.pluginCalledMainCbs.push(_reportCalledFunc);\n \n GameGlobal.unityNamespace.instantiateWasm = function (\n instantiateWasmInfo,\n receiveInstance\n ) {\n console.log("in wasm-split instantiateWasm");\n const module = GameGlobal.manager.gameInstance.Module,\n asm2wasm = (instantiateWasmInfo.asm2wasm =\n instantiateWasmInfo.asm2wasm || {});\n asm2wasm["f64-to-int"] =\n asm2wasm["f64-to-int"] ||\n function (a) {\n return 0 | a;\n };\n asm2wasm["f64-rem"] =\n asm2wasm["f64-rem"] ||\n function (a, e) {\n return a % e;\n };\n \n instantiateWasmInfo.env = instantiateWasmInfo.env || {};\n \n instantiateWasmInfo.primary = {\n table:\n instantiateWasmInfo.env.table ||\n new WebAssembly.Table({\n initial: tableSize,\n maximum: tableSize,\n element: "anyfunc",\n }),\n memory: instantiateWasmInfo.env.memory,\n };\n \n setImportGlobal(instantiateWasmInfo);\n \n instantiateWasmInfo.wasm_split = instantiateWasmInfo.wasm_split || {};\n instantiateWasmInfo.wasm_split.wait = function () {\n let waitTableId = GameGlobal.unityNamespace.waitTableId.value;\n GameGlobal.unityNamespace.eventLog("wait for func: ", waitTableId);\n if (isIOS && GameGlobal.canUseH5Renderer) {\n return innerInvokeWasmBuffer(waitTableId.toString(), 3);\n }\n invokeWait(true);\n };\n \n console.log("@@@canUseH5Renderer", GameGlobal.canUseH5Renderer);\n if (GameGlobal.canUseH5Renderer) {\n instantiateWasmInfo.wasm_split.logCall = function (a, e) {};\n } else {\n instantiateWasmInfo.wasm_split.logCall = function (a, e) {\n if (e) {\n if (!globalCalledSet.has(a)) {\n globalCalledSet.add(a);\n subCalledSet.add(a);\n }\n }\n };\n }\n instantiateWasmInfo.wasm_split.__wasm_split_waitTableId =\n GameGlobal.unityNamespace.waitTableId = new WebAssembly.Global({\n value: "i32",\n mutable: true,\n });\n \n window.wasm_split_info = instantiateWasmInfo;\n let wasmPath = module.wasmPath;\n WebAssembly.instantiate(wasmPath, instantiateWasmInfo).then(\n (resultObject) => {\n Object.entries(resultObject.instance.exports).forEach((instanceFunc) => {\n if (\n "object" == typeof instanceFunc[1] &&\n instanceFunc[1] instanceof WebAssembly.Memory\n ) {\n instantiateWasmInfo.primary.memory = instanceFunc[1];\n asm2wasm.__wasm_memory_size = window.__wasm_memory_size = () =>\n (instanceFunc[1].buffer.byteLength / 65536) | 0;\n }\n if (instanceFunc[0].startsWith("wasm_split.")) {\n instantiateWasmInfo.primary[instanceFunc[0]] = instanceFunc[1];\n }\n });\n instantiateWasmInfo.primary["wasm_split.initGlobal"] =\n resultObject.instance.exports.initGlobal;\n resultObject.instance.exports.initGlobal();\n module.asm = resultObject.instance.exports;\n if (isIOS && GameGlobal.canUseH5Renderer) {\n receiveInstance(resultObject.instance, resultObject.module);\n } else {\n invokeWait(true);\n reTry(() =>\n receiveInstance(resultObject.instance, resultObject.module)\n );\n }\n }\n );\n return {};\n };\n GameGlobal.unityNamespace.compileSubWasm = function () {\n return new Promise((resolve) => {\n return resolve(true);\n });\n };\n ',e.n=1,c(n,{compress:{drop_console:!1,drop_debugger:!0,pure_funcs:[]},mangle:{reserved:["GameGlobal","wx","WXWebAssembly","WebAssembly"]},format:{comments:!1}});case 1:if(!(t=e.v).error){e.n=2;break}return console.error("Terser 压缩失败:",t.error),e.a(2,n);case 2:return e.a(2,t.code);case 3:e.p=3,o=e.v,console.error("wasmSplitContent处理失败:",o);case 4:return e.a(2)}},e,null,[[0,3]])}),s=function(){var e=this,n=arguments;return new Promise(function(t,r){var o=a.apply(e,n);function s(e){i(o,t,r,s,c,"next",e)}function c(e){i(o,t,r,s,c,"throw",e)}s(void 0)})},function(){return s.apply(this,arguments)}),createImportFuncIndexCodeBySimd:function(e,n,t,r,o){return"export const importSubFuncIndexList = [];\nexport const tableSize = ".concat(e,";\nGameGlobal.unityNamespace.wasmSubVersion =").concat(n,';\nGameGlobal.unityNamespace.baseUrl ="').concat(t?"http://beta-vapp-ide.jd.com":"https://vapp-ide-pack.jd.com",'";\nGameGlobal.unityNamespace.requestToken = "').concat(r,'";\n').concat(t?" wx.requestWebCookie && wx.requestWebCookie({needpin: 1,success(e){ GameGlobal.unityNamespace.webcookieInfo = {pt_pin: e.pt_pin, pt_ket: e.ticket}}});":"",'\nexport function setImportGlobal(info) {info["primary"] = info["primary"] || {};info["primary"]["__stack_pointer"] = new WebAssembly.Global({\n value: "i32",\n mutable: true\n });info["primary"]["__stack_end"] = new WebAssembly.Global({\n value: "i32",\n mutable: true\n });info["primary"]["__stack_base"] = new WebAssembly.Global({\n value: "i32",\n mutable: true\n });};\n \n export function setStackPointer(info) {\n\n }\n \n export function setImportFunc(info, jCall) {\n \n }\n \n ')}}},6471:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a,s,c,u=t(9896),l=t(6928),f=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e)},t=[{key:"validateProjectStructure",value:function(e){if(!this.isReadable(e.fullEntryPath))return this.ERROR_MESSAGES.ENTRY_NOT_FOUND;var n=l.resolve(e.fullEntryPath,"game.json");try{var t;if(null===(t=JSON.parse(u.readFileSync(n,"utf-8")).plugins)||void 0===t||!t.UnityPlugin)return this.ERROR_MESSAGES.NOT_UNITY_GAME}catch(e){return this.ERROR_MESSAGES.GAME_JSON_NOT_FOUND}return{valid:!0}}},{key:"isReadable",value:function(e){try{return u.accessSync(e,u.constants.R_OK),!0}catch(e){return!1}}}],(n=null)&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t}();a=f,c={ENTRY_NOT_FOUND:{code:-1,msg:"操作失败",errMsg:"请检查entry是否存在"},NOT_UNITY_GAME:{code:-1,msg:"操作失败",errMsg:"该游戏不是unity游戏"},GAME_JSON_NOT_FOUND:{code:-1,msg:"操作失败",errMsg:"请检查game.json是否存在"}},(s=i(s="ERROR_MESSAGES"))in a?Object.defineProperty(a,s,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[s]=c,e.exports=f},6589:e=>{function n(e){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n.keys=()=>[],n.resolve=n,n.id=6589,e.exports=n},6626:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function i(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var a=t(6928),s=t(9896),c=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.environments={wasmdev:"http://beta-vapp-ide.jd.com",wasmprod:"https://vapp-ide-pack.jd.com"},this.currentEnv="wasmdev"},n=[{key:"getBaseUrl",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.currentEnv;return this.environments[e]}},{key:"getApiUrls",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.currentEnv,n=this.getBaseUrl(e);return{UPLOAD_FILE:"".concat(n,"/wasm/upload"),ADD_GAME_VERSION:"".concat(n,"/wasm/packageBind"),INIT:"".concat(n,"/wasm/initialize"),QUERY_MD5_HISTORY_HAVE_RELEASE:"".concat(n,"/wasm/queryMd5HistoryHaveRelease"),QUERY_WASM_FUNCTION_ONLINE_FIND_LIST:"".concat(n,"/wasm/queryWasmFunctionOnlineFindList"),SPLIT:"".concat(n,"/wasm/build"),GET_GAME_SPLIT_INFO:"".concat(n,"/wasm/queryBuildResultBySubVersion"),DOWNLOAD_FILE:"".concat(n,"/wasm/download"),GET_SYMBOL_SIZE:"".concat(n,"/wasm/getSymbolSize"),GET_INIT_RES:"".concat(n,"/wasm/queryInitResult"),REPORT_FUNS:"".concat(n,"/wasm/reportWasmFunction"),QUERY_COUNT_REPORT_FUNS:"".concat(n,"/wasm/queryCountReportWasmFunction")}}},{key:"loadProjectConfig",value:function(e){var n=a.resolve(process.cwd(),"jgc.config.js"),r="function"==typeof require?require:t(220);delete r.cache[r.resolve(n)];var o=r(n),i=o.type,c=void 0===i?"game":i,u=o.entry,l=o.appId,f=o.requestToken,p=a.resolve(e||process.cwd(),u),d=a.resolve(p,".codesplitcache"),m=a.resolve(d,"original"),y=a.resolve(m,"wasmcode");return s.existsSync(d)||s.mkdirSync(d,{recursive:!0}),s.existsSync(m)||s.mkdirSync(m,{recursive:!0}),s.existsSync(y)||s.mkdirSync(y,{recursive:!0}),{type:c,entry:u,appId:l,requestToken:f,mainWasmCachePath:s.readdirSync(y).filter(function(e){return".br"===a.extname(e)})[0],originalCacheDir:m,fullEntryPath:p}}}],n&&o(e.prototype,n),r&&o(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r}();e.exports=new c},6858:e=>{"use strict";e.exports=require("commander")},6895:e=>{"use strict";e.exports=require("chalk")},6928:e=>{"use strict";e.exports=require("path")},6949:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})}}var s=t(9896),c=t(6928),u="function"==typeof require?require:t(3904),l=null,f=null;function p(){if(!l)try{l=u("brotli")}catch(e){console.error("加载 brotli 失败:",e.message)}return l}function d(){if(!f)try{f=u("wabt")}catch(e){console.error("加载 wabt 失败:",e.message)}return f}function m(e){if(e.length>=4&&0===e[0]&&97===e[1]&&115===e[2]&&109===e[3])return"wasm";try{var n=p();if(!n)return"unknown";var t=n.decompress(e);if(t&&t.length>=4&&0===t[0]&&97===t[1]&&115===t[2]&&109===t[3])return"wasm.br"}catch(e){}return"unknown"}function y(e){try{var n=p();if(!n)throw new Error("brotli 模块加载失败");var t=n.decompress(e);return Buffer.from(t)}catch(e){throw new Error("Brotli 解压失败: ".concat(e.message))}}function v(e){for(var n=e.split("\n"),t=0,r=0,o=0;o<n.length;o++){var i=n[o].trim();if(i.includes("(import")&&i.includes("(func")&&t++,i.startsWith("(func")&&!i.includes("(import")){var a=i.match(/\(func\s+(\$[^\s\)]+)?/),s=a&&a[1]||"";if(s.startsWith("$redir_")||"$initGlobal"===s||s.startsWith("$initGlobal"))continue;r++}}return{importedCount:t,localCount:r,totalCount:t+r,isDevSplit:e.includes("call $wasm_split.logCall")}}function h(e){return b.apply(this,arguments)}function b(){return(b=a(r().m(function e(n){var t,o,i,a,s,c;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(e.p=0,t=d()){e.n=1;break}throw new Error("wabt 模块加载失败");case 1:return e.n=2,t();case 2:return o=e.v,(i=o.readWasm(new Uint8Array(n),{readDebugNames:!0})).applyNames(),a=i.toText({foldExprs:!1,inlineExport:!1}),i.destroy(),s=v(a),e.a(2,s);case 3:throw e.p=3,c=e.v,new Error("WASM 解析失败: ".concat(c.message));case 4:return e.a(2)}},e,null,[[0,3]])}))).apply(this,arguments)}function g(e){return w.apply(this,arguments)}function w(){return(w=a(r().m(function e(n){var t,o,i,a,c,u;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(e.p=0,console.log("[wasmAnalyzer] analyzeWasmFile 开始:",n),s.existsSync(n)){e.n=1;break}return console.log("[wasmAnalyzer] 文件不存在:",n),e.a(2,null);case 1:t=s.readFileSync(n),console.log("[wasmAnalyzer] 文件大小:",t.length),o=m(t),console.log("[wasmAnalyzer] 文件类型:",o),c=o,e.n="wasm"===c?2:"wasm.br"===c?3:4;break;case 2:return i=t,e.a(3,5);case 3:return console.log("[wasmAnalyzer] 开始解压 Brotli..."),i=y(t),console.log("[wasmAnalyzer] 解压后大小:",i.length),e.a(3,5);case 4:return console.log("[wasmAnalyzer] 未知文件类型"),e.a(2,null);case 5:return console.log("[wasmAnalyzer] 开始解析 WASM..."),e.n=6,h(i);case 6:return a=e.v,console.log("[wasmAnalyzer] 解析完成:",a),e.a(2,a);case 7:return e.p=7,u=e.v,console.error("[wasmAnalyzer] WASM 分析错误: ".concat(u.message)),console.error("[wasmAnalyzer] 错误堆栈: ".concat(u.stack)),e.a(2,null)}},e,null,[[0,7]])}))).apply(this,arguments)}function S(e){if(!s.existsSync(e))return null;var n=s.readdirSync(e).find(function(e){return e.endsWith(".wasm")||e.endsWith(".wasm.br")||e.endsWith(".unityweb.wasm.br")||e.endsWith(".wasm.unityweb")});return n?c.join(e,n):null}function k(){return(k=a(r().m(function e(n,t){var o,i,a,s,u,l,f,p,d,m,y,v;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(console.log("[wasmAnalyzer] getSplitDetails 开始, entryPath:",n),o=c.join(n,"wasmcode"),i=c.join(n,"wasmcode1"),a=S(o),console.log("[wasmAnalyzer] 主包 WASM 路径:",a),a){e.n=1;break}return console.log("[wasmAnalyzer] 未找到主包 WASM 文件"),e.a(2,null);case 1:return s=S(i),console.log("[wasmAnalyzer] 子包 WASM 路径:",s),e.p=2,console.log("[wasmAnalyzer] 开始分析主包..."),e.n=3,g(a);case 3:if(u=e.v,console.log("[wasmAnalyzer] 主包分析结果:",u),u){e.n=4;break}return console.log("[wasmAnalyzer] 主包分析失败,返回 null"),e.a(2,null);case 4:return l=u.importedCount+u.localCount,f=0,"number"==typeof t&&t>0?f=Math.max(0,t-l):console.log("[wasmAnalyzer] totalFunctions 无效,无法通过差值计算子包函数数,默认返回 0"),p=t>0?parseFloat((l/t*100).toFixed(1)):0,d=u.isDevSplit?"Dev":"Prod",m="",y="warning",p<30?(m="不及格,继续加油收集!",y="warning"):p<40?(m="及格,继续加油!",y="success"):(m="优秀,点赞!👍",y="excellent"),e.a(2,{splitForm:d,mainFuncCount:l,subFuncCount:f,mainFuncRatio:p,splitTip:m,splitTipLevel:y,isDevSplit:u.isDevSplit});case 5:return e.p=5,v=e.v,console.error("获取分包详情失败: ".concat(v.message)),e.a(2,null)}},e,null,[[2,5]])}))).apply(this,arguments)}e.exports={analyzeWasmFile:g,getSplitDetails:function(e,n){return k.apply(this,arguments)},detectFileType:m,decompressBrotli:y,getWasmFunctionStats:h,parseWatForFunctions:v}},7172:e=>{"use strict";e.exports=require("archiver")},7175:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,s(r.key),r)}}function i(e,n,t){return n&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function a(e,n,t){return(n=s(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var c=t(8320),u=new(i(function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),a(this,"wasmInit",function(e){return c.init(e)}),a(this,"wasmUpdate",function(e){return c.init(Object.assign(e,{isUpdate:!0}))}),a(this,"wasmSplitDev",function(e){return c.splitBase(Object.assign(e,{isRelease:!1}))}),a(this,"wasmSplitProd",function(e){return c.splitBase(Object.assign(e,{isRelease:!0}))}),a(this,"wasmSplitInfo",function(e){return c.getSplitInfo(e)}),a(this,"wasmSplitReport",function(e){return c.reportCalledFuncs(e)}),a(this,"wasmSplitReportIndex",function(e){return c.reportCalledFuncsIndex(e)}),a(this,"wasmRollBack",function(e){return c.rollbackEntryChanges(e)}),a(this,"initConfig",function(){return c.initConfig()})})),l=u.wasmInit,f=u.wasmUpdate,p=u.wasmSplitDev,d=u.wasmSplitProd,m=u.wasmSplitInfo,y=u.wasmSplitReport,v=u.wasmSplitReportIndex,h=u.wasmRollBack,b=u.initConfig;e.exports={wasmInit:l,wasmUpdate:f,wasmSplitDev:p,wasmSplitProd:d,wasmSplitInfo:m,wasmSplitReport:y,wasmSplitReportIndex:v,wasmRollBack:h,initConfig:b}},7252:e=>{"use strict";e.exports=require("express")},7372:e=>{var n=new Set;function t(e){var t=JSON.stringify(e);n.forEach(function(e){1===e.readyState&&e.send(t)})}e.exports={setupWebSocket:function(e){e.on("connection",function(e){n.add(e),console.log("WebSocket 客户端已连接"),e.on("close",function(){n.delete(e),console.log("WebSocket 客户端已断开")}),e.on("error",function(t){console.error("WebSocket 错误:",t.message),n.delete(e)}),e.send(JSON.stringify({type:"connected",message:"WebSocket 连接成功"}))})},broadcast:t,sendProgress:function(e,n,r){t({type:"progress",step:e,progress:n,message:r,timestamp:Date.now()})},sendComplete:function(e,n){t({type:"complete",action:e,result:n,timestamp:Date.now()})},sendError:function(e,n){t({type:"error",action:e,error:n,timestamp:Date.now()})},sendLog:function(e,n){t({type:"log",level:e,message:n,timestamp:Date.now()})}}},8085:e=>{e.exports={FAIL_CODE:-1,SUCCEED_CODE:0}},8320:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=a(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,s=!0,c=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return s=e.done,e},e:function(e){c=!0,i=e},f:function(){try{s||null==t.return||t.return()}finally{if(c)throw i}}}}function i(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,i,a,s=[],c=!0,u=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(e,n)||a(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,n){if(e){if("string"==typeof e)return s(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?s(e,n):void 0}}function s(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function c(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",o=t.toStringTag||"@@toStringTag";function i(t,r,o,i){var c=r&&r.prototype instanceof s?r:s,l=Object.create(c.prototype);return u(l,"_invoke",function(t,r,o){var i,s,c,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,s=0,c=e,p.n=t,a}};function d(t,r){for(s=t,c=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(c=i[(s=i[4])?5:(s=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(s=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,s=0))}if(o||t>1)return a;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),s=l,c=m;(n=s<2?e:c)||!f;){i||(s?s<3?(s>1&&(p.n=-1),d(s,c)):p.n=c:p.v=c);try{if(u=2,i){if(s||(o="next"),n=i[o]){if(!(n=n.call(i,c)))throw TypeError("iterator result is not an object");if(!n.done)return n;c=n.value,s<2&&(s=0)}else 1===s&&(n=i.return)&&n.call(i),s<2&&(c=TypeError("The iterator does not provide a '"+o+"' method"),s=1);i=e}else if((n=(f=p.n<0)?c:t.call(r,p))!==a)break}catch(n){i=e,s=1,c=n}finally{u=1}}return{value:n,done:f}}}(t,o,i),!0),l}var a={};function s(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(u(n={},r,function(){return this}),n),d=f.prototype=s.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,u(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,u(d,"constructor",f),u(f,"constructor",l),l.displayName="GeneratorFunction",u(f,o,"GeneratorFunction"),u(d),u(d,o,"Generator"),u(d,r,function(){return this}),u(d,"toString",function(){return"[object Generator]"}),(c=function(){return{w:i,m}})()}function u(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}u=function(e,n,t,r){function i(n,t){u(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(i("next",0),i("throw",1),i("return",2))},u(e,n,t,r)}function l(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function f(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){l(i,r,o,a,s,"next",e)}function s(e){l(i,r,o,a,s,"throw",e)}a(void 0)})}}function p(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,d(r.key),r)}}function d(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var m=t(6928),y=t(9896),v=t(8720),h=t(6626),b=t(6471),g=t(9664),w=t(5322),S=t(5759),k=t(2225),P=(t(3427).downloadFile,t(4901)),j=t(9937),E=function(){return e=function e(){var n,t,r;!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),n=this,t="downloadSplitedFiles",r=function(){var e=f(c().m(function e(n){var t,r,o,i,a,s,u,l;return c().w(function(e){for(;;)if(0===e.n)return t=n.appId,r=n.requestToken,o=n.md5,i=n.subVersion,a=n.mainWasmFileUrl,s=n.mainWasmFilePath,u=n.subWasmFileUrl,l=n.subWasmFilePath,e.a(2,Promise.all([g.downloadFile({appId:t,requestToken:r,md5:o,subVersion:i,category:3,filePath:s,url:a}),g.downloadFile({appId:t,requestToken:r,md5:o,subVersion:i,category:4,filePath:l,url:u})]))},e)}));return function(n){return e.apply(this,arguments)}}(),(t=d(t))in n?Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[t]=r,this.config=null,this.codeMd5=null,this.uploadedWasmCodeBlobId=null,this.uploadedSymbolBlobId=null,this.importLength=null,this.tableSize=null,this.spinner=null},n=[{key:"initConfig",value:function(){return this.config=h.loadProjectConfig(),this.config}},{key:"ensureSpinner",value:function(){return this.spinner||(this.spinner=v()),this.spinner}},{key:"stopSpinner",value:function(){this.spinner&&this.spinner.isSpinning&&this.spinner.stop()}},{key:"validateProject",value:function(e,n,t,r){g.setEnv(t);try{return this.config=h.loadProjectConfig(n),this.config.isPre=t,r&&(this.config.isRelease=!0),b.validateProjectStructure(this.config)}catch(e){return{code:-1,msg:null,errMsg:"配置加载失败: ".concat(e.message)}}}},{key:"uploadSplitBaseFiles",value:(H=f(c().m(function e(n){var t,r,o,i;return c().w(function(e){for(;;)if(0===e.n)return t=n.appId,r=n.requestToken,o=n.wasmFilePath,i=n.symbolFilePath,e.a(2,Promise.all([g.uploadFile({appId:t,requestToken:r,filePath:o,category:0}),g.uploadFile({appId:t,requestToken:r,filePath:i,category:1})]))},e)})),function(e){return H.apply(this,arguments)})},{key:"queryCountReportWasmFunction",value:(L=f(c().m(function e(){var n,t;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.readSplitConfig();case 1:if(n=e.v){e.n=2;break}return e.a(2,{code:-1,msg:"获取分包配置失败,无法获取在线函数列表",errMsg:"获取分包配置失败,无法获取在线函数列表"});case 2:return e.n=3,g.queryCountReportWasmFunction({appId:this.config.appId,requestToken:this.config.requestToken,md5:n.codeMd5,subVersion:n.subVersion});case 3:if(0===(t=e.v).code){e.n=4;break}throw new Error("获取在线函数列表失败,将不合并在线函数列表,错误日志: ".concat(t.errorMessage));case 4:return e.a(2,t.result)}},e,this)})),function(){return L.apply(this,arguments)})},{key:"addGameVersion",value:(B=f(c().m(function e(){var n;return c().w(function(e){for(;;)switch(e.n){case 0:return n={appId:this.config.appId,md5:this.codeMd5,versionDesc:"test",unityVersion:"1.0.0",unityPluginVersion:"1.0.0",wasmSplitPluginVersion:"1.0.0",wasmFileId:this.uploadedWasmCodeBlobId,symbolFileId:this.uploadedSymbolBlobId,requestToken:this.config.requestToken},e.n=1,g.addGameVersion(n);case 1:if(0===e.v.code){e.n=2;break}throw new Error("游戏版本已经存在");case 2:return e.a(2)}},e,this)})),function(){return B.apply(this,arguments)})},{key:"initialize",value:(U=f(c().m(function e(n){var t,r,o,i,a,s,u,l=this;return c().w(function(e){for(;;)switch(e.n){case 0:if(t=n.isUpdate,r=n.incrementMd5,o=r||null,!t){e.n=3;break}if(o){e.n=2;break}return e.n=1,this.queryMd5HistoryHaveRelease();case 1:o=e.v;case 2:this.spinner.succeed("增量更新版本:".concat(o));case 3:return i={appId:this.config.appId,md5:this.codeMd5,requestToken:this.config.requestToken,incrementUpdate:!!t},o&&(i.incrementMd5=o),this.spinner.start("".concat(t?"增量更新":"初始化","开始,请稍等……")),e.n=4,g.initialize(i);case 4:return a=e.v,s=a.result,u={appId:this.config.appId,md5:this.codeMd5,requestToken:this.config.requestToken,uuid:s},e.a(2,this.pollForResult(function(){return g.getInitResult(u)},function(){var e=f(c().m(function e(n){var o,i,a,s,u;return c().w(function(e){for(;;)switch(e.n){case 0:if(!n.result){e.n=4;break}if(o=n.result,i=o.importSize,a=o.tableSize,l.importLength=i,l.tableSize=a,l.spinner.succeed("wasmcode信息采样完成,tableSize: ".concat(a)),!t){e.n=3;break}return l.spinner.start("开始获取在线函数列表,请稍等……"),e.n=1,l.queryWasmFunctionOnlineFindList(l.codeMd5);case 1:if(s=e.v,l.spinner.succeed("在线函数列表个数: ".concat(s.length)),!(s.length>0)){e.n=3;break}return e.n=2,g.reportCalledFuncs({appId:l.config.appId,requestToken:l.config.requestToken,calledFuncList:s,subVersion:"-1",md5:l.codeMd5});case 2:0!==(u=e.v).code&&(l.spinner.fail("上报在线函数列表失败,错误信息:".concat(u.errorMessage)),process.exit(1)),l.spinner.succeed("".concat(r,"版本:合并在线玩家采集到的函数列表成功"));case 3:return e.a(2,!0);case 4:return e.a(2,!1)}},e)}));return function(n){return e.apply(this,arguments)}}()))}},e,this)})),function(e){return U.apply(this,arguments)})},{key:"formatHistoryDate",value:function(e){if(!e)return"-";try{var n=new Date(e),t=function(e){return e.toString().padStart(2,"0")};return"".concat(n.getFullYear(),"-").concat(t(n.getMonth()+1),"-").concat(t(n.getDate())," ").concat(t(n.getHours()),":").concat(t(n.getMinutes()),":").concat(t(n.getSeconds()))}catch(n){return e}}},{key:"ensureCodeMd5",value:(R=f(c().m(function e(){var n;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if(!this.codeMd5){e.n=1;break}return e.a(2,this.codeMd5);case 1:return e.p=1,e.n=2,this.readSplitConfig();case 2:if(!(n=e.v).codeMd5){e.n=3;break}return this.codeMd5=n.codeMd5,e.a(2,this.codeMd5);case 3:e.n=5;break;case 4:e.p=4,e.v;case 5:throw new Error("未找到分包配置,无法读取增量历史版本");case 6:return e.a(2)}},e,this,[[1,4]])})),function(){return R.apply(this,arguments)})},{key:"fetchIncrementHistoryList",value:(W=f(c().m(function e(){var n,t;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.ensureCodeMd5();case 1:return n=e.v,e.n=2,g.queryMd5HistoryHaveRelease({appId:this.config.appId,md5:n,requestToken:this.config.requestToken});case 2:if(0===(t=e.v).code){e.n=3;break}throw new Error("获取历史版本失败: ".concat(t.errorMessage||t.msg||"未知错误"));case 3:return e.a(2,t.result||[])}},e,this)})),function(){return W.apply(this,arguments)})},{key:"buildHistoryLabel",value:function(e){return"版本MD5: ".concat(e.md5," | 首包个数: ").concat(null!=e.mainSymbolSize?e.mainSymbolSize:"-"," | 创建时间: ").concat(e.createdAt?this.formatHistoryDate(e.createdAt):"-")}},{key:"getIncrementHistory",value:(q=f(c().m(function e(){var n,t=this;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.fetchIncrementHistoryList();case 1:return n=e.v,e.a(2,n.slice(0,10).map(function(e){return{md5:e.md5,mainFuncCount:null!=e.mainSymbolSize?e.mainSymbolSize:null,createdAt:e.createdAt||null,createdAtText:t.formatHistoryDate(e.createdAt),label:t.buildHistoryLabel(e)}}))}},e,this)})),function(){return q.apply(this,arguments)})},{key:"queryMd5HistoryHaveRelease",value:(D=f(c().m(function e(){var n,t,r,o,i=this;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.fetchIncrementHistoryList();case 1:if(0!==(n=e.v).length){e.n=2;break}throw new Error("没有历史版本");case 2:return t=n.slice(0,10).map(function(e){return{name:i.buildHistoryLabel(e),value:e.md5}}),e.n=3,j.prompt([{type:"list",name:"selectedMd5",message:"请选择历史版本进行增量分包(最近10个版本):",choices:t,pageSize:10}]);case 3:return r=e.v,o=r.selectedMd5,e.a(2,o)}},e,this)})),function(){return D.apply(this,arguments)})},{key:"queryWasmFunctionOnlineFindList",value:(N=f(c().m(function e(n){var t;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,g.queryWasmFunctionOnlineFindList({md5:n,appId:this.config.appId,requestToken:this.config.requestToken});case 1:if(0===(t=e.v).code){e.n=2;break}return this.spinner.fail("获取在线函数列表失败,将不合并在线函数列表,错误日志: ".concat(t.errorMessage)),e.a(2,[]);case 2:return e.a(2,t.result||[])}},e,this)})),function(e){return N.apply(this,arguments)})},{key:"pollForResult",value:(A=f(c().m(function e(n,t){var r,o=arguments;return c().w(function(e){for(;;)if(0===e.n)return r=o.length>2&&void 0!==o[2]?o[2]:5e3,e.a(2,new Promise(function(e,o){var i=function(){var a=f(c().m(function a(){var s,u;return c().w(function(a){for(;;)switch(a.p=a.n){case 0:return a.p=0,a.n=1,n();case 1:return s=a.v,a.n=2,t(s);case 2:if(!a.v){a.n=3;break}e(s),a.n=4;break;case 3:setTimeout(i,r);case 4:a.n=6;break;case 5:a.p=5,u=a.v,o(u);case 6:return a.a(2)}},a,null,[[0,5]])}));return function(){return a.apply(this,arguments)}}();i()}))},e)})),function(e,n){return A.apply(this,arguments)})},{key:"isHasInit",value:function(){var e=m.resolve(this.config.entry,".codesplitcache"),n=m.resolve(e,"codesplit-config.json");return y.existsSync(n)}},{key:"init",value:(M=f(c().m(function e(n){var t,r,o,i,a,s,u;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if(this.ensureSpinner().start("文件备份开始,请不要再编辑项目文件……"),(t=this.validateProject("init",n.srcPath,n.isPreEnv)).valid||(this.spinner.fail("项目校验失败: ".concat(t.errMsg)),process.exit(1)),e.p=1,r=m.resolve(this.config.entry,".codesplitcache"),o=m.resolve(r,"original"),i=m.resolve(r,"codesplit-config.json"),n.isUpdate||!y.existsSync(o)||!y.existsSync(i)){e.n=2;break}return this.spinner.succeed("项目已经初始化过,无需重复初始化"),this.spinner.info("如需重新初始化,请先删除 .codesplitcache 目录,或使用增量分包模式"),e.a(2);case 2:this.setupCacheDirectories(r,o),e.p=3,w.syncPluginCacheFiles(this.config.entry,o),this.spinner.succeed("文件备份完成"),e.n=5;break;case 4:throw e.p=4,a=e.v,this.spinner.fail("文件备份失败:".concat(a.message)),a;case 5:return e.n=6,this.processSymbolFiles(r,o);case 6:return this.spinner.start(),this.spinner.text="开始上传文件……",e.p=7,e.n=8,this.uploadFiles(o,r);case 8:e.n=10;break;case 9:e.p=9,s=e.v,this.spinner.fail("上传文件失败:".concat(s.message)),process.exit(1);case 10:return this.spinner.succeed("上传文件成功"),this.spinner.start(),this.spinner.text="添加游戏版本……",e.n=11,this.addGameVersion();case 11:return this.spinner.succeed("添加游戏版本成功"),this.spinner.info("开始初始化,请稍等……"),e.n=12,this.initialize({isUpdate:n.isUpdate,incrementMd5:n.incrementMd5});case 12:this.spinner.succeed("".concat(n.isUpdate?"增量更新":"初始化","完成")),this.saveSplitConfig(r),this.spinner.stop("WASM分包初始化完成"),n.isUpdate&&this.spinner.info("接下来请按以下步骤操作:\n 1. 执行 jgc wasm-split-dev 进行dev版本分包,jgc preview进行真机动态收集函数,反复执行直到没有新增函数;\n 2. 如无新增函数,执行 jgc wasm-split-prod 拆分成线上版本;\n 3. 执行 jgc upload 将分包结果上传到MP控制台;\n3. 执行 jgc upload 将分包结果上传到MP控制台;"),e.n=14;break;case 13:throw e.p=13,u=e.v,this.spinner.fail(u.message),u;case 14:return e.a(2)}},e,this,[[7,9],[3,4],[1,13]])})),function(e){return M.apply(this,arguments)})},{key:"setupCacheDirectories",value:function(e,n){var t=m.resolve(n,"wasmcode"),r=m.resolve(n,this.config.entry,"wasmcode1");[n,t].forEach(function(e){y.existsSync(e)||y.mkdirSync(e,{recursive:!0})}),y.existsSync(r)&&y.rmSync(r,{recursive:!0})}},{key:"processSymbolFiles",value:(G=f(c().m(function e(n,t){var r,o,i,a,s;return c().w(function(e){for(;;)switch(e.n){case 0:return r=m.resolve(n,"unpack"),o=m.resolve(this.config.entry,"webgl.wasm.symbols.unityweb"),i=m.resolve(r,"symbol.json"),y.existsSync(r)||y.mkdirSync(r,{recursive:!0}),e.n=1,k(o,i);case 1:return a=m.resolve(t,"wasmcode"),s=y.readdirSync(a).find(function(e){return".br"===m.extname(e)}),this.codeMd5=s.split(".")[0],e.a(2,{unpackSymbolsPath:i,mainWasmCachePath:s,mainWasmCacheDir:a})}},e,this)})),function(e,n){return G.apply(this,arguments)})},{key:"runIncrementInit",value:(C=f(c().m(function e(n){var t,r,o;return c().w(function(e){for(;;)switch(e.n){case 0:if(t=n.srcPath,r=n.isPreEnv,o=n.incrementMd5){e.n=1;break}throw new Error("缺少增量版本 MD5");case 1:return e.a(2,this.init({srcPath:t,isPreEnv:r,isUpdate:!0,incrementMd5:o}))}},e,this)})),function(e){return C.apply(this,arguments)})},{key:"uploadFiles",value:(I=f(c().m(function e(n,t){var r,o,a,s,u,l,f;return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.processSymbolFiles(t,n,!1);case 1:return r=e.v,o=r.unpackSymbolsPath,a=r.mainWasmCachePath,r.mainWasmCacheDir,e.n=2,this.uploadSplitBaseFiles({appId:this.config.appId,requestToken:this.config.requestToken,wasmFilePath:m.join(n,"wasmcode",a),symbolFilePath:o});case 2:if(s=e.v,u=i(s,2),l=u[0],f=u[1],l&&f){e.n=3;break}throw new Error("上传文件失败");case 3:this.uploadedWasmCodeBlobId=l,this.uploadedSymbolBlobId=f;case 4:return e.a(2)}},e,this)})),function(e,n){return I.apply(this,arguments)})},{key:"saveSplitConfig",value:function(e){var n=m.resolve(e,"codesplit-config.json"),t={appId:this.config.appId,codeMd5:this.codeMd5,tableSize:this.tableSize,uploadedWasmCodeBlobId:this.uploadedWasmCodeBlobId,uploadedSymbolBlobId:this.uploadedSymbolBlobId,importLength:this.importLength};y.writeFileSync(n,JSON.stringify(t,null,2))}},{key:"getSplitInfo",value:(x=f(c().m(function e(n){var t,r,o,i;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if((t=this.validateProject("getSplitInfo",n.srcPath,n.isPreEnv)).valid){e.n=1;break}return e.a(2,t);case 1:return e.p=1,e.n=2,this.readSplitConfig();case 2:if(r=e.v,(o={appId:this.config.appId,md5:r.codeMd5,requestToken:this.config.requestToken,subVersion:r.subVersion}).subVersion){e.n=3;break}throw new Error("暂无分包信息");case 3:return e.n=4,this.querySplitInfo(o);case 4:return e.a(2,e.v);case 5:return e.p=5,i=e.v,S.endLogProcess(null,i.message),e.a(2,{code:-1,msg:"获取分包信息失败",errMsg:i.message})}},e,this,[[1,5]])})),function(e){return x.apply(this,arguments)})},{key:"readSplitConfig",value:(T=f(c().m(function e(){var n,t,r,o;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=m.resolve(this.config.entry,".codesplitcache"),t=m.resolve(n,"codesplit-config.json"),e.p=1,e.n=2,y.promises.readFile(t,"utf-8");case 2:return r=e.v,e.a(2,JSON.parse(r));case 3:throw e.p=3,o=e.v,new Error("读取分包配置文件失败: ".concat(o.message));case 4:return e.a(2)}},e,this,[[1,3]])})),function(){return T.apply(this,arguments)})},{key:"querySplitInfo",value:(F=f(c().m(function e(n){var t,r,o,i,a,s,u;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:return t=n.appId,r=n.requestToken,o=n.md5,i=n.subVersion,e.p=1,a={appId:t,md5:o,requestToken:r,subVersion:i},e.n=2,g.getSymbolSize(a);case 2:if(s=e.v,null!=(u=s.result).mainSymbolSize&&null!=u.patchSymbolSize){e.n=3;break}throw new Error("未查询到分包函数信息");case 3:return e.a(2,{code:0,msg:"查询分包信息成功 \n主包函数数量:".concat(u.mainSymbolSize," \n子包函数数量:").concat(u.patchSymbolSize),errMsg:"查询分包信息成功"});case 4:throw e.p=4,e.v;case 5:return e.a(2)}},e,null,[[1,4]])})),function(e){return F.apply(this,arguments)})},{key:"getGameSplitRes",value:(_=f(c().m(function e(n){var t=this;return c().w(function(e){for(;;)if(0===e.n)return e.a(2,new Promise(function(e,r){var o=function(){var i=f(c().m(function i(a){var s,u,l,f;return c().w(function(i){for(;;)switch(i.p=i.n){case 0:return s=null,i.p=1,u={appId:t.config.appId,md5:t.codeMd5,subVersion:n.subVersion,requestToken:t.config.requestToken},i.n=2,g.getGameSplitInfo(u);case 2:if(0===(l=i.v).code){i.n=3;break}return s&&clearTimeout(s),r(new Error(l.errorMessage)),i.a(2);case 3:null!==l.result?(s&&clearTimeout(s),e(l.result)):(s&&clearTimeout(s),s=setTimeout(function(){return o()},5e3)),i.n=5;break;case 4:i.p=4,f=i.v,s&&clearTimeout(s),r(f);case 5:return i.a(2)}},i,null,[[1,4]])}));return function(e){return i.apply(this,arguments)}}();o()}))},e)})),function(e){return _.apply(this,arguments)})},{key:"splitBase",value:(O=f(c().m(function e(n){var t,r,o,i,a,s,u,l;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if(t=(new Date).getTime(),(r=this.validateProject("split",n.srcPath,n.isPreEnv,n.isRelease)).valid){e.n=1;break}return e.a(2,r);case 1:return e.p=1,o=this.initializeSplitConfig(),i=o.codeSplitConfigPath,a=o.splitConfig,this.codeMd5=a.codeMd5,this.ensureSpinner().start("发送分包请求……"),e.n=2,this.buildSubPackage(n,a,i);case 2:if(s=e.v,this.spinner.succeed("当前分包版本:"+s),s){e.n=3;break}return this.spinner.fail("分包构建失败,服务正忙"),e.a(2,{code:-1,msg:"分包构建失败,服务正忙",errMsg:"服务正忙"});case 3:return this.spinner.start("获取分包结果,请稍等……"),e.n=4,this.getGameSplitRes({subVersion:s});case 4:return u=e.v,this.spinner.succeed("获取分包结果完成"),this.spinner.start("下载分包代码中……"),e.n=5,this.processSplitFiles(u,a);case 5:return this.spinner.succeed("下载分包代码完成"),e.n=6,this.querySplitInfo({appId:this.config.appId,md5:a.codeMd5,requestToken:this.config.requestToken,subVersion:a.subVersion});case 6:return e.v,e.a(2,{code:0,subVersion:a.subVersion,msg:"WASM分包成功 \n分包总耗时:".concat((new Date).getTime()-t,"ms"),errMsg:null});case 7:return e.p=7,l=e.v,this.spinner.fail("分包构建失败,错误信息:"+l.message),this.spinner.info("如出现类似“it != indexes.functionIndexes.end()”的报错,基本是 Unity转出成小游戏,未在转换面板勾选 Profiling funcs"),e.a(2,{code:-1,msg:"分包构建失败,如出现类似“it != indexes.functionIndexes.end()”的报错,基本是 Unity转出成小游戏,未在转换面板勾选 Profiling funcs",errMsg:l.message})}},e,this,[[1,7]])})),function(e){return O.apply(this,arguments)})},{key:"initializeSplitConfig",value:function(){var e=m.resolve(this.config.entry,".codesplitcache"),n=m.resolve(e,"codesplit-config.json");return{cacheDir:e,codeSplitConfigPath:n,splitConfig:JSON.parse(y.readFileSync(n,"utf-8"))}}},{key:"buildSubPackage",value:(E=f(c().m(function e(n,t,r){var o,i,a;return c().w(function(e){for(;;)switch(e.n){case 0:return o={appId:this.config.appId,md5:this.codeMd5,requestToken:this.config.requestToken,isRelease:!!n.isRelease},e.n=1,g.split(o);case 1:if(0===(i=e.v).code){e.n=5;break}if(!this.isRetryableError(i.errorMessage)){e.n=3;break}if(a=t.subVersion,S.logInfo("尝试查找历史版本,subVersion:",a),a){e.n=2;break}return e.a(2,!1);case 2:e.n=4;break;case 3:throw new Error(i.errorMessage);case 4:e.n=6;break;case 5:a=i.result,t.subVersion=a,y.writeFileSync(r,JSON.stringify(t,null,2));case 6:return e.a(2,a)}},e,this)})),function(e,n,t){return E.apply(this,arguments)})},{key:"isRetryableError",value:function(e){return["当前md5有正在执行的构建任务,请稍后重试","资源超负荷运行啦,请稍后再试"].includes(e)}},{key:"processSplitFiles",value:(l=f(c().m(function e(n,t){var r,o,i,a,s;return c().w(function(e){for(;;)switch(e.n){case 0:return r=n.mainWasmFilePath,o=n.subWasmFilePath,i=this.config.fullEntryPath,a=this.config.mainWasmCachePath,s=this.createWasmPaths(i,a),e.n=1,this.downloadWasmFiles(r,o,s);case 1:w.processJavaScriptFiles(t,i,this.config),w.updateConfigFiles(t,i,this.config);case 2:return e.a(2)}},e,this)})),function(e,n){return l.apply(this,arguments)})},{key:"createWasmPaths",value:function(e,n){var t=m.resolve(e,"wasmcode",n),r=m.resolve(e,"wasmcode1",n);return y.existsSync(r)||y.mkdirSync(r,{recursive:!0}),{mainWasmPath:t,subWasmPath:r}}},{key:"downloadWasmFiles",value:(u=f(c().m(function e(n,t,r){return c().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.downloadSplitedFiles({mainWasmFileUrl:n,mainWasmFilePath:r.mainWasmPath,subWasmFileUrl:t,subWasmFilePath:r.subWasmPath});case 1:return e.a(2)}},e,this)})),function(e,n,t){return u.apply(this,arguments)})},{key:"reportCalledFuncs",value:(s=f(c().m(function e(){var n,t,r,a,s,u,l,f,p,d,v,h,b,w,S,k,E,O,_,F,T,x,I,C,G,M,A,N,D,q,W,R,U,B,L,H,z,V,J,Q,Y=this,$=arguments;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if(V=function(e){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,t=[],r=0;r<e.length;r+=n)t.push(e.slice(r,r+n));return t},t=(n=$.length>0&&void 0!==$[0]?$[0]:{}).srcPath,r=void 0===t?"":t,a=n.isPreEnv,s=void 0!==a&&a,u=n.funcList,l=void 0===u?null:u,f=n.suppressExit,p=void 0!==f&&f,d=function(e){if(p)throw new Error(e);Y.ensureSpinner().fail(e),process.exit(1)},(v=this.validateProject("getSplitInfo",r,s)).valid||d(v.errMsg||"校验失败:请先执行 jgc config 命令,并确保各项配置正确"),e.p=1,this.ensureSpinner().start("开始效验……"),h=Array.isArray(l)&&l.length>0,b=null,!h){e.n=2;break}b=l.map(function(e){return(e||"").trim()}).filter(function(e){return e.length>0}),e.n=5;break;case 2:return w=(new P).getPrompts(),e.n=3,j.prompt(w);case 3:return S=e.v,k=m.resolve(S.entry),y.existsSync(k)||(k=m.resolve(this.config.fullEntryPath,S.entry),y.existsSync(k)||(k=m.resolve(S.entry))),y.existsSync(k)||d("函数名文件所在路径不存在:".concat(k)),e.n=4,y.readFileSync(k,"utf8");case 4:E=e.v,(b=E.split(/\r?\n/).map(function(e){return e.trim()}).filter(function(e){return e.length>0})).shift();case 5:if(h&&b.length>0&&/func|函数/i.test(b[0])&&b.shift(),b&&0!==b.length||d("函数名文件为空,请检查文件内容"),O=m.resolve(this.config.fullEntryPath,".codesplitcache"),_=m.resolve(O,"codesplit-config.json"),y.existsSync(_)){e.n=6;break}return this.spinner.info("该项目还未执行wasm-init 命令,将自动执行 wasm-init 命令"),e.n=6,this.init({srcPath:r,isPreEnv:s,isUpdate:!1,skipUpload:!1});case 6:for(this.spinner.succeed("校验通过"),this.spinner.start(),this.spinner.text="函数名文件解析中……",F=[],T=m.resolve(O,"unpack"),x=m.resolve(T,"symbol.json"),I=y.readFileSync(x,"utf8"),C=JSON.parse(I),G=0,M=Object.entries(C);G<M.length;G++)A=i(M[G],2),N=A[0],D=A[1],b.includes(D)&&F.push(N);return e.n=7,this.readSplitConfig();case 7:q=e.v,this.spinner.succeed("函数名文件解析成功"),this.spinner.start(),this.spinner.text="函数名上报中……",W=0,R=o(V(F)),e.p=8,R.s();case 9:if((U=R.n()).done){e.n=13;break}return B=U.value,e.n=10,g.reportCalledFuncs({appId:this.config.appId,requestToken:this.config.requestToken,calledFuncList:B,subVersion:"-1",md5:q.codeMd5});case 10:if(0===(L=e.v).code){e.n=11;break}throw new Error("上报函数名失败: ".concat(L.errorMessage));case 11:W+=L.result;case 12:e.n=9;break;case 13:e.n=15;break;case 14:e.p=14,J=e.v,R.e(J);case 15:return e.p=15,R.f(),e.f(15);case 16:if(this.spinner.succeed("上报函数名完成:本次函数数量为".concat(F.length,"个,去重后上报数量为").concat(W,"个")),!p){e.n=17;break}return e.a(2,{code:0,msg:"上报函数名完成,数量".concat(F.length,"个"),reportedCount:F.length});case 17:return this.spinner.start(),this.spinner.text="dev模式拆包中,该环节耗时较长,请耐心等待……\n",e.n=18,this.splitBase({srcPath:"",isPreEnv:n.isPreEnv,isRelease:!1});case 18:return 0!==(H=e.v).code&&(this.spinner.fail("dev模式拆包失败,错误日志:".concat(H.errMsg)),this.spinner.info("处理方案:".concat(H.msg)),process.exit(1)),this.spinner.succeed("dev模式拆包完成"),this.spinner.start(),this.spinner.text="开始获取 dev分包结果,请稍等",e.n=19,this.getSplitInfo(n);case 19:0!==(z=e.v).code&&(this.spinner.fail("获取 dev 分包结果失败,报错信息:".concat(z.errMsg)),process.exit(1)),this.spinner.succeed("获取 dev分包结果完成"),this.spinner.info("接下来请按以下步骤操作:\n1. 执行 jgc preview 继续动态收集函数;\n2. 如无新增函数,执行 jgc wasm-split-prod 拆分成线上版本;\n3. 执行 jgc upload 将分包结果上传到MP控制台;\n"),process.exit(1),e.n=22;break;case 20:if(e.p=20,Q=e.v,!p){e.n=21;break}throw new Error(Q.message);case 21:this.spinner.fail("上传函数名失败,错误信息:".concat(Q.message)),process.exit(1);case 22:return e.a(2)}},e,this,[[8,14,15,16],[1,20]])})),function(){return s.apply(this,arguments)})},{key:"reportCalledFuncsIndex",value:(a=f(c().m(function e(n){var t,r,i,a,s,u,l,f,p,d,v,h,b,w,k;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if((t=this.validateProject("getSplitInfo",n.srcPath,n.isPreEnv)).valid){e.n=1;break}return e.a(2,t);case 1:return e.p=1,r=function(e){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,t=[],r=0;r<e.length;r+=n)t.push(e.slice(r,r+n));return t},i=(new P).getPrompts(),e.n=2,j.prompt(i);case 2:if(a=e.v,s=m.resolve(a.entry),y.existsSync(s)||(s=m.resolve(this.config.fullEntryPath,a.entry),y.existsSync(s)||(s=m.resolve(a.entry))),y.existsSync(s)){e.n=3;break}throw new Error("文件路径错误");case 3:return u=S.startLogProcess("函数名文件解析中"),e.n=4,y.readFileSync(s,"utf8");case 4:return l=e.v,(f=l.split(/\r?\n/)).shift(),e.n=5,this.readSplitConfig();case 5:p=e.v,u.stop("函数名文件解析成功"),u=S.startLogProcess("开始进行函数名索引上报中,请稍等"),d=o(r(f)),e.p=6,d.s();case 7:if((v=d.n()).done){e.n=10;break}return h=v.value,e.n=8,g.reportCalledFuncs({appId:this.config.appId,requestToken:this.config.requestToken,calledFuncList:h,subVersion:p.subVersion,md5:p.codeMd5});case 8:if(0===(b=e.v).code){e.n=9;break}throw new Error("上报函数名失败: ".concat(b.errorMessage));case 9:e.n=7;break;case 10:e.n=12;break;case 11:e.p=11,w=e.v,d.e(w);case 12:return e.p=12,d.f(),e.f(12);case 13:return u.stop("上报函数名成功"),e.a(2,{code:0,msg:"上报函数名完成,数量".concat(f.length,"个"),errMsg:null});case 14:return e.p=14,k=e.v,S.endLogProcess(null,k.message),e.a(2,{code:-1,msg:"上传函数名失败",errMsg:k.message})}},e,this,[[6,11,12,13],[1,14]])})),function(e){return a.apply(this,arguments)})},{key:"rollbackEntryChanges",value:(r=f(c().m(function e(n){var t,r,i,a,s,u,l,f,p,d,v,h,b,g,w,S,k,P,j,E;return c().w(function(e){for(;;)switch(e.p=e.n){case 0:if((t=this.validateProject("rollBack",n.srcPath,n.isPreEnv)).valid){e.n=1;break}return e.a(2,t);case 1:if(e.p=1,this.config&&this.config.fullEntryPath){e.n=2;break}return e.a(2,{code:-1,msg:"回退失败",errMsg:"配置未初始化或entryPath未设置"});case 2:if(r=this.config.fullEntryPath,y.existsSync(r)){e.n=3;break}return e.a(2,{code:-1,msg:"回退失败",errMsg:"entryPath不存在: ".concat(r)});case 3:for(this.ensureSpinner().start("开始关闭分包功能,请稍等……"),i=0,a=["game.json","game.js","webgl.wasm.framework.unityweb.js","weapp-adapter.js"],s=0,u=["wasm-split.js","game.json","game.js","webgl.wasm.framework.unityweb.js","weapp-adapter.js","wasmcode1"];s<u.length;s++)l=u[s],f=m.resolve(r,l),y.existsSync(f)&&(y.statSync(f).isDirectory()?y.rmSync(f,{recursive:!0,force:!0}):y.unlinkSync(f),i++);if(p=m.resolve(r,"wasmcode"),y.existsSync(p)&&y.rmSync(p,{recursive:!0,force:!0}),y.mkdirSync(p,{recursive:!0}),d=m.resolve(this.config.originalCacheDir,"wasmcode"),v=m.resolve(d,this.config.mainWasmCachePath),y.existsSync(v)&&(h=m.resolve(p,this.config.mainWasmCachePath),y.copyFileSync(v,h),b=m.resolve(p,"game.js"),y.writeFileSync(b,""),this.spinner.succeed("恢复原始的 wasm.br 文件完成:".concat(v))),this.config.originalCacheDir&&y.existsSync(this.config.originalCacheDir)){g=o(a);try{for(g.s();!(w=g.n()).done;)S=w.value,k=m.resolve(this.config.originalCacheDir,S),P=m.resolve(r,S),y.existsSync(k)&&(y.copyFileSync(k,P),i++)}catch(e){g.e(e)}finally{g.f()}}return j=m.resolve(r,".codesplitcache"),y.existsSync(j)&&y.rmSync(j,{recursive:!0,force:!0}),this.spinner.succeed("回退完成,共处理 ".concat(i," 个文件/目录")),e.a(2,{code:0,msg:"关闭分包功能成功",errMsg:null,rollbackCount:i});case 4:return e.p=4,E=e.v,this.spinner.fail("回退失败: ".concat(E.message)),e.a(2,{code:-1,msg:"回退失败",errMsg:E.message})}},e,this,[[1,4]])})),function(e){return r.apply(this,arguments)})}],n&&p(e.prototype,n),t&&p(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t,r,a,s,u,l,E,O,_,F,T,x,I,C,G,M,A,N,D,q,W,R,U,B,L,H}();e.exports=new E},8330:e=>{"use strict";e.exports=JSON.parse('{"name":"jd-minigame-ci","version":"1.0.3","description":"The jd-minigame-ci is a toolkit provided for developers of JD Mini Games. Developers can complete code upload and preview operations for JD Mini Games without the need to open the developer tools, simply by using this toolkit.","author":"chenlong328","license":"ISC","main":"dist/index.js","bin":{"jgc":"./dist/jgc.js"},"scripts":{"config":"NODE_ENV=development node ./dist/jgc.js config","preview":"NODE_ENV=development node ./dist/jgc.js preview","dev:config":"NODE_ENV=development node ./src/jgc.js config","dev:preview":"NODE_ENV=development node ./src/jgc.js preview","dev:upload":"NODE_ENV=development node ./src/jgc.js upload","dev:publish":"NODE_ENV=development node ./src/jgc.js publish","dev:wasm-split":"NODE_ENV=development node ./src/jgc.js wasm-split","dev:wasm-split:pre":"NODE_ENV=development node ./src/jgc.js wasm-split -D","build":"webpack --mode production --progress --config webpack.config.js && chmod 777 ./dist/index.js && chmod 777 ./dist/jgc.js"},"dependencies":{"@babel/cli":"^7.23.9","@babel/core":"^7.23.9","@babel/preset-env":"^7.23.9","archiver":"^6.0.1","axios":"^1.7.3","brotli":"^1.3.3","commander":"^11.1.0","cors":"^2.8.5","express":"^4.21.0","fs-extra":"^11.2.0","glob":"^10.3.10","inquirer":"8.2.6","jimp":"^0.22.12","jsqr":"1.4.0","marked":"^12.0.2","minimist":"^1.2.8","multer":"^1.4.5-lts.1","open":"^8.4.2","ora":"5.4.1","picocolors":"^1.0.0","qrcode":"^1.5.3","qrcode-terminal":"^0.12.0","string-width":"4.2.3","strip-ansi":"6.0.1","terser":"^5.44.0","wabt":"^1.0.36","ws":"^8.18.0"},"devDependencies":{"babel-loader":"^9.1.3","babel-minify-webpack-plugin":"^0.3.1","clean-webpack-plugin":"^4.0.0","copy-webpack-plugin":"^12.0.2","terser-webpack-plugin":"^5.3.10","webpack":"^5.90.3","webpack-cli":"^5.1.4","webpack-node-externals":"^3.0.0"},"files":["dist","package.json","README.md","unity-wasm-split.md"]}')},8461:e=>{"use strict";e.exports=require("multer")},8522:e=>{function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function t(e,n){for(var t=0;t<n.length;t++){var o=n[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,r(o.key),o)}}function r(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==n(t)?t:t+""}var o=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.configPrompts=[{name:"type",type:"list",message:"请选择项目类型:",choices:[{name:"游戏",value:"game"},{name:"插件",value:"plugin"}],default:"game"},{name:"appId",type:"input",message:"请输入appId:",validate:function(e){return!!e||"appId不能为空"}},{name:"requestToken",type:"input",message:"请输入代码上传秘钥:",validate:function(e){return!!e||"代码上传秘钥不能为空"}},{name:"entry",type:"input",message:"请输入需要被打包的游戏(或者插件)的路径:",default:"./"},{name:"versionName",type:"input",message:"请输入需要被打包的游戏(或者插件)的版本号:",default:"1.0.0"},{name:"description",type:"input",message:"请输入需要被打包的游戏的备注:",when:function(e){return"game"===e.type},default:""}]},(n=[{key:"getPrompts",value:function(){return this.configPrompts}}])&&t(e.prototype,n),r&&t(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r}();e.exports=o},8577:e=>{"use strict";e.exports=require("cors")},8611:e=>{"use strict";e.exports=require("http")},8720:e=>{"use strict";e.exports=require("ora")},8879:(e,n,t)=>{var r=t(7252),o=t(9896),i=t(6928),a=t(3840).marked,s=r.Router(),c=[i.resolve(__dirname,"../public/unity-wasm-split.md"),i.resolve(__dirname,"../../public/unity-wasm-split.md"),i.resolve(__dirname,"../../../wasm-server-public/unity-wasm-split.md"),i.resolve(__dirname,"../../../../wasm-server-public/unity-wasm-split.md"),i.resolve(__dirname,"../../../..","unity-wasm-split.md"),i.resolve(process.cwd(),"unity-wasm-split.md")];s.get("/docs/unity-wasm-split",function(e,n){try{var t=function(){for(var e=0,n=c;e<n.length;e++){var t=n[e];if(o.existsSync(t))return t}return null}();if(!t)return n.status(404).send("未找到帮助文档,请确认 unity-wasm-split.md 已包含在 CLI 包或当前目录中。");var r=o.readFileSync(t,"utf-8"),i=a.parse(r);n.send(function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"WASM 分包工具使用文档";return'<!DOCTYPE html>\n<html lang="zh-CN">\n<head>\n <meta charset="utf-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1" />\n <title>'.concat(n,'</title>\n <style>\n body {\n font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif;\n margin: 0;\n padding: 0;\n background-color: #f7f8fa;\n color: #1a1a1a;\n line-height: 1.6;\n }\n .doc-header {\n background: #1a73e8;\n color: #fff;\n padding: 24px 32px;\n box-shadow: 0 2px 8px rgba(26,115,232,0.2);\n }\n .doc-header h1 {\n margin: 0;\n font-size: 24px;\n }\n .doc-container {\n max-width: 960px;\n margin: 24px auto 40px;\n padding: 32px;\n background: #fff;\n border-radius: 12px;\n box-shadow: 0 10px 25px rgba(0,0,0,0.06);\n }\n .doc-container h1,\n .doc-container h2,\n .doc-container h3 {\n color: #0b57d0;\n }\n .doc-container pre {\n background: #0f172a;\n color: #e2e8f0;\n padding: 16px;\n border-radius: 8px;\n overflow-x: auto;\n }\n .doc-container code {\n background: rgba(15,23,42,0.08);\n padding: 2px 6px;\n border-radius: 4px;\n font-size: 0.95em;\n }\n .doc-container a {\n color: #0b57d0;\n }\n .doc-container img {\n max-width: 100%;\n border-radius: 8px;\n box-shadow: 0 4px 12px rgba(0,0,0,0.08);\n }\n @media (max-width: 768px) {\n .doc-container {\n padding: 20px;\n margin: 16px;\n }\n }\n </style>\n</head>\n<body>\n <header class="doc-header">\n <h1>').concat(n,'</h1>\n </header>\n <main class="doc-container">\n ').concat(e,"\n </main>\n</body>\n</html>")}(i))}catch(e){console.error("[docs] 渲染帮助文档失败:",e),n.status(500).send("帮助文档加载失败,请查看终端日志或稍后再试。")}}),e.exports=s},8938:e=>{"use strict";e.exports=require("axios")},9023:e=>{"use strict";e.exports=require("util")},9239:e=>{"use strict";e.exports=require("terser")},9278:e=>{"use strict";e.exports=require("net")},9538:(e,n,t)=>{function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}var a=t(4652),s=t(6928),c=t(7172),u=t(2410).globSync;function l(e){try{if(a.pathExistsSync(e))return!0;if(l(s.dirname(e)))return a.mkdirsSync(e),!0}catch(e){console.log("make dir error,",e)}}n.writeFile=function(){var e,n=(e=r().m(function e(n,t){var o,i=arguments;return r().w(function(e){for(;;)switch(e.n){case 0:o=i.length>2&&void 0!==i[2]?i[2]:"utf8",l(s.posix.parse(n).dir)&&a.writeFileSync(n,t,o);case 1:return e.a(2)}},e)}),function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})});return function(e,t){return n.apply(this,arguments)}}(),n.verifyGameRequiredFilesExist=function(e,n){return a.pathExistsSync(e)?"game"===n?f(e):"plugin"===n?p(e):{code:0,err_msg:"ok"}:{code:-1,err_msg:"当前入口文件目录不存在!"}};var f=function(e){var n=u("game.json",{cwd:e,ignore:"node_modules/**"}),t=u("game.js",{cwd:e,ignore:"node_modules/**"});return 0===n.length?{code:-1,err_msg:"被打包的游戏的目录下不存在game.json!"}:0===t.length?{code:-1,err_msg:"被打包的游戏的目录下不存在game.js!"}:{code:0,err_msg:"ok"}},p=function(e){return 0===u("plugin.json",{cwd:e,ignore:"node_modules/**"}).length?{code:-1,err_msg:"被打包的插件的目录下不存在plugin.json!"}:{code:0,err_msg:"ok"}};n.hasJgcConfigFile=function(e){try{return a.accessSync(e,a.constants.F_OK),!0}catch(e){return console.log("文件不存在"),!1}},n.compressDirectory=function(e,n){return new Promise(function(t,r){var o=a.createWriteStream(n),i=c("zip",{zlib:{level:9}});o.on("close",function(){return t(i.pointer())}),i.on("warning",function(e){return"ENOENT"!==e.code&&r(e)}),i.on("error",r),i.pipe(o),i.glob("**/*",{cwd:e,ignore:["**/.*","**/*.js.map"]}),i.finalize()})},n.deleteFile=function(e){a.existsSync(e)&&a.unlink(e,function(e){e&&console.log("删除zip文件失败: ",e)})}},9664:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,i,a,s=[],c=!0,u=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(e,n)||function(e,n){if(e){if("string"==typeof e)return i(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?i(e,n):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function s(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach(function(n){c(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function c(e,n,t){return(n=m(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function u(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",o=t.toStringTag||"@@toStringTag";function i(t,r,o,i){var c=r&&r.prototype instanceof s?r:s,u=Object.create(c.prototype);return l(u,"_invoke",function(t,r,o){var i,s,c,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,s=0,c=e,p.n=t,a}};function d(t,r){for(s=t,c=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(c=i[(s=i[4])?5:(s=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(s=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,s=0))}if(o||t>1)return a;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),s=l,c=m;(n=s<2?e:c)||!f;){i||(s?s<3?(s>1&&(p.n=-1),d(s,c)):p.n=c:p.v=c);try{if(u=2,i){if(s||(o="next"),n=i[o]){if(!(n=n.call(i,c)))throw TypeError("iterator result is not an object");if(!n.done)return n;c=n.value,s<2&&(s=0)}else 1===s&&(n=i.return)&&n.call(i),s<2&&(c=TypeError("The iterator does not provide a '"+o+"' method"),s=1);i=e}else if((n=(f=p.n<0)?c:t.call(r,p))!==a)break}catch(n){i=e,s=1,c=n}finally{u=1}}return{value:n,done:f}}}(t,o,i),!0),u}var a={};function s(){}function c(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(l(n={},r,function(){return this}),n),d=f.prototype=s.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,l(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e}return c.prototype=f,l(d,"constructor",f),l(f,"constructor",c),c.displayName="GeneratorFunction",l(f,o,"GeneratorFunction"),l(d),l(d,o,"Generator"),l(d,r,function(){return this}),l(d,"toString",function(){return"[object Generator]"}),(u=function(){return{w:i,m}})()}function l(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}l=function(e,n,t,r){function i(n,t){l(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(i("next",0),i("throw",1),i("return",2))},l(e,n,t,r)}function f(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){f(i,r,o,a,s,"next",e)}function s(e){f(i,r,o,a,s,"throw",e)}a(void 0)})}}function d(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,m(r.key),r)}}function m(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var y=t(8938),v=t(2305),h=t(9896),b=t(6626),g=t(3427).downloadFile,w=function(){return e=function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.apiUrls=b.getApiUrls(),this.defaultTimeout=6e4},n=[{key:"setEnv",value:function(e){e?(b.currentEnv="wasmdev",this.apiUrls=b.getApiUrls("wasmdev")):(b.currentEnv="wasmprod",this.apiUrls=b.getApiUrls("wasmprod"))}},{key:"downloadFile",value:(j=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)if(0===e.n)return t=n.filePath,r=n.url,e.a(2,new Promise(function(e,n){g({filePath:t,url:r,success:e,fail:n})}))},e)})),function(e){return j.apply(this,arguments)})},{key:"uploadFile",value:(P=p(u().m(function e(n){var t,r,o,i,a,c,l,f,p,d,m;return u().w(function(e){for(;;)switch(e.p=e.n){case 0:return t=n.appId,r=n.requestToken,o=n.filePath,i=n.category,(a=new v).append("category",i),a.append("appId",t),a.append("requestToken",r),a.append("sourceFile",h.createReadStream(o)),c={method:"post",url:this.apiUrls.UPLOAD_FILE,headers:s(s({},a.getHeaders()),{},{appId:t,requestToken:r}),data:a,maxBodyLength:1/0,maxContentLength:1/0,timeout:6e5},e.p=1,e.n=2,y(c);case 2:if(l=e.v,f=l.data,p=f.code,d=f.result,0!==p){e.n=3;break}return e.a(2,d);case 3:throw new Error(l.data.errorMessage);case 4:e.n=6;break;case 5:throw e.p=5,m=e.v,new Error("上传文件失败 File upload failed: ".concat(m.message));case 6:return e.a(2)}},e,this,[[1,5]])})),function(e){return P.apply(this,arguments)})},{key:"addGameVersion",value:(k=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)switch(e.n){case 0:return t=new FormData,Object.entries(n).forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.append(r,i)}),e.n=1,y({method:"post",url:this.apiUrls.ADD_GAME_VERSION,data:t});case 1:if(0===(r=e.v).data.code){e.n=2;break}throw new Error(r.data.errorMessage);case 2:return e.a(2,r.data)}},e,this)})),function(e){return k.apply(this,arguments)})},{key:"initialize",value:(S=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)switch(e.n){case 0:return t=new FormData,Object.entries(n).forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.append(r,i)}),e.n=1,y({method:"post",url:this.apiUrls.INIT,timeout:this.defaultTimeout,data:t});case 1:if(0===(r=e.v).data.code){e.n=2;break}throw new Error(r.data.errorMessage);case 2:return e.a(2,r.data)}},e,this)})),function(e){return S.apply(this,arguments)})},{key:"queryMd5HistoryHaveRelease",value:(w=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.QUERY_MD5_HISTORY_HAVE_RELEASE,timeout:this.defaultTimeout,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error("获取历史md5列表,请求报错日志: ".concat(t.data.errorMessage));case 2:return e.a(2,t.data)}},e,this)})),function(e){return w.apply(this,arguments)})},{key:"queryWasmFunctionOnlineFindList",value:(m=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.QUERY_WASM_FUNCTION_ONLINE_FIND_LIST,timeout:this.defaultTimeout,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error("获取在线函数列表,请求报错日志: ".concat(t.data.errorMessage));case 2:return e.a(2,t.data)}},e,this)})),function(e){return m.apply(this,arguments)})},{key:"getInitResult",value:(f=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.GET_INIT_RES,timeout:this.defaultTimeout,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error(t.data.errorMessage);case 2:return e.a(2,t.data)}},e,this)})),function(e){return f.apply(this,arguments)})},{key:"split",value:(l=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)switch(e.n){case 0:return t=new FormData,Object.entries(n).forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.append(r,i)}),e.n=1,y({url:this.apiUrls.SPLIT,method:"post",data:t});case 1:if(0===(r=e.v).data.code){e.n=2;break}throw new Error(r.data.errorMessage);case 2:return e.a(2,r.data)}},e,this)})),function(e){return l.apply(this,arguments)})},{key:"getGameSplitInfo",value:(c=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({url:this.apiUrls.GET_GAME_SPLIT_INFO,method:"get",params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}return e.a(2,{code:-1,errorMessage:t.data.errorMessage,result:null});case 2:return e.a(2,t.data)}},e,this)})),function(e){return c.apply(this,arguments)})},{key:"getSymbolSize",value:(a=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.GET_SYMBOL_SIZE,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error(t.data.errorMessage);case 2:return e.a(2,t.data)}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"reportCalledFuncs",value:(i=p(u().m(function e(n){var t,r;return u().w(function(e){for(;;)switch(e.n){case 0:return t=new FormData,Object.entries(n).forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.append(r,i)}),e.n=1,y({url:this.apiUrls.REPORT_FUNS,method:"post",data:t});case 1:if(0===(r=e.v).data.code){e.n=2;break}throw new Error(r.data.errorMessage);case 2:return e.a(2,r.data)}},e,this)})),function(e){return i.apply(this,arguments)})},{key:"queryCountReportWasmFunction",value:(r=p(u().m(function e(n){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y({method:"get",url:this.apiUrls.QUERY_COUNT_REPORT_FUNS,params:n});case 1:if(0===(t=e.v).data.code){e.n=2;break}throw new Error(t.data.errorMessage);case 2:return e.a(2,t.data)}},e,this)})),function(e){return r.apply(this,arguments)})}],n&&d(e.prototype,n),t&&d(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,t,r,i,a,c,l,f,m,w,S,k,P,j}();e.exports=new w},9739:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=function(e,n){if(e){if("string"==typeof e)return i(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?i(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,c=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return s=e.done,e},e:function(e){c=!0,a=e},f:function(){try{s||null==t.return||t.return()}finally{if(c)throw a}}}}function i(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function a(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},r=t.iterator||"@@iterator",o=t.toStringTag||"@@toStringTag";function i(t,r,o,i){var a=r&&r.prototype instanceof u?r:u,l=Object.create(a.prototype);return s(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,o,i),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][r]?n(n([][r]())):(s(n={},r,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,s(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,s(d,"constructor",f),s(f,"constructor",l),l.displayName="GeneratorFunction",s(f,o,"GeneratorFunction"),s(d),s(d,o,"Generator"),s(d,r,function(){return this}),s(d,"toString",function(){return"[object Generator]"}),(a=function(){return{w:i,m}})()}function s(e,n,t,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}s=function(e,n,t,r){function i(n,t){s(e,n,function(e){return this._invoke(n,t,e)})}n?o?o(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(i("next",0),i("throw",1),i("return",2))},s(e,n,t,r)}function c(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function u(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function a(e){c(i,r,o,a,s,"next",e)}function s(e){c(i,r,o,a,s,"throw",e)}a(void 0)})}}function l(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,f(r.key),r)}}function f(e){var n=function(e,n){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,n||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==r(n)?n:n+""}var p=t(7252),d=t(8577),m=t(6928),y=t(9896),v=t(8611),h=t(5086),b=t(2080),g=t(5317).execSync,w=t(9278),S=t(4246),k=t(4218),P=t(2078),j=t(1426),E=t(8879),O=t(7372).setupWebSocket,_=function(){return e=function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.port=n.port||3456,this.isPreEnv=n.isPreEnv||!1,this.app=p(),this.server=null,this.wss=null,this.pidFilePath=n.pidFilePath||m.resolve(__dirname,"../../.wasm-split-server.pid"),this.cleanupHandlerRegistered=!1},n=[{key:"setupMiddleware",value:function(){this.app.use(d()),this.app.use(p.json()),this.app.use(p.urlencoded({extended:!0}));for(var e,n=t(9896),r=0,o=[m.join(__dirname,"public"),m.join(__dirname,"wasm-server-public"),m.resolve(__dirname,"../wasm-server-public")];r<o.length;r++){var i=o[r];if(n.existsSync(i)&&n.existsSync(m.join(i,"index.html"))){e=i;break}}e||(console.warn("警告: 未找到静态资源目录,将使用默认路径"),e=m.join(__dirname,"public")),this.app.use(p.static(e)),this.publicPath=e}},{key:"setupRoutes",value:function(){var e=this;this.app.use(function(n,t,r){n.isPreEnv=e.isPreEnv,n.wss=e.wss,r()}),this.app.use("/api",S),this.app.use("/api",k),this.app.use("/api",P),this.app.use("/api",j),this.app.use("/",E),this.app.use("/api/*",function(e,n){n.status(404).json({code:-1,message:"未找到接口: ".concat(e.originalUrl)})}),this.app.get("*",function(n,t){t.sendFile(m.join(e.publicPath||m.join(__dirname,"public"),"index.html"))})}},{key:"setupWebSocketServer",value:function(){this.wss=new h.Server({server:this.server}),O(this.wss)}},{key:"killExistingServer",value:(f=u(a().m(function e(){var n,t,r,o;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if(y.existsSync(this.pidFilePath)){e.n=1;break}return e.a(2);case 1:if(n=y.readFileSync(this.pidFilePath,"utf-8").trim(),(t=parseInt(n,10))&&t!==process.pid){e.n=2;break}try{y.unlinkSync(this.pidFilePath)}catch(e){}return e.a(2);case 2:return e.p=2,process.kill(t,"SIGTERM"),e.n=3,this.wait(500);case 3:return e.p=3,process.kill(t,0),process.kill(t,"SIGKILL"),e.n=4,this.wait(200);case 4:e.n=6;break;case 5:e.p=5,"ESRCH"!==(r=e.v).code&&console.warn("⚠️ 无法终止已存在的 WASM 分包进程 (PID: ".concat(t,"): ").concat(r.message));case 6:e.n=8;break;case 7:e.p=7,"ESRCH"!==(o=e.v).code&&console.warn("⚠️ 终止已有的 WASM 分包进程失败 (PID: ".concat(t,"): ").concat(o.message));case 8:e.p=8;try{y.unlinkSync(this.pidFilePath)}catch(e){}return e.f(8);case 9:return e.a(2)}},e,this,[[3,5],[2,7,8,9]])})),function(){return f.apply(this,arguments)})},{key:"writePidFile",value:function(){try{y.writeFileSync(this.pidFilePath,String(process.pid))}catch(e){console.warn("⚠️ 写入 PID 文件失败: ".concat(e.message))}}},{key:"registerCleanup",value:function(){var e=this;if(!this.cleanupHandlerRegistered){var n=function(){try{if(y.existsSync(e.pidFilePath)){var n=y.readFileSync(e.pidFilePath,"utf-8").trim();parseInt(n,10)===process.pid&&y.unlinkSync(e.pidFilePath)}}catch(e){}};process.once("exit",n),process.once("SIGINT",function(){n(),process.exit(0)}),process.once("SIGTERM",function(){n(),process.exit(0)}),this.cleanupHandlerRegistered=!0}}},{key:"start",value:(c=u(a().m(function e(){var n,t,r=this,o=arguments;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=!(o.length>0&&void 0!==o[0])||o[0],this.setupMiddleware(),this.setupRoutes(),e.n=1,this.killExistingServer();case 1:return e.p=1,e.n=2,this.waitForPortRelease(500);case 2:e.n=8;break;case 3:return e.p=3,e.v,e.p=4,e.n=5,this.killByPort();case 5:e.n=7;break;case 6:e.p=6,t=e.v,console.warn(t.message);case 7:return e.n=8,this.waitForPortRelease();case 8:return this.server=v.createServer(this.app),this.setupWebSocketServer(),e.a(2,new Promise(function(e,t){var o=!1,i=function(){r.server.listen(r.port,u(a().m(function t(){var o;return a().w(function(t){for(;;)switch(t.p=t.n){case 0:if(o="http://localhost:".concat(r.port),console.log("\n✨ WASM 分包可视化界面已启动: ".concat(o,"\n")),r.writePidFile(),r.registerCleanup(),!n){t.n=4;break}return t.p=1,t.n=2,b(o);case 2:t.n=4;break;case 3:t.p=3,t.v,console.log("请手动打开浏览器访问: ".concat(o));case 4:e(r.server);case 5:return t.a(2)}},t,null,[[1,3]])})))},s=function(){var e=u(a().m(function e(n){var s;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if("EADDRINUSE"!==n.code||o){e.n=4;break}return o=!0,console.warn("检测到端口 ".concat(r.port," 已被占用,尝试自动释放...")),e.p=1,e.n=2,r.killByPort();case 2:return setTimeout(function(){i()},500),e.a(2);case 3:return e.p=3,s=e.v,t(s),e.a(2);case 4:t(n);case 5:return e.a(2)}},e,null,[[1,3]])}));return function(n){return e.apply(this,arguments)}}();r.server.on("error",s),i()}))}},e,this,[[4,6],[1,3]])})),function(){return c.apply(this,arguments)})},{key:"stop",value:function(){this.wss&&this.wss.close(),this.server&&this.server.close();try{if(y.existsSync(this.pidFilePath)){var e=y.readFileSync(this.pidFilePath,"utf-8").trim();parseInt(e,10)===process.pid&&y.unlinkSync(this.pidFilePath)}}catch(e){}}},{key:"wait",value:function(e){return new Promise(function(n){return setTimeout(n,e)})}},{key:"waitForPortRelease",value:(s=u(a().m(function e(){var n,t,r=this,o=arguments;return a().w(function(e){for(;;)if(0===e.n)return n=o.length>0&&void 0!==o[0]?o[0]:5e3,t=Date.now(),e.a(2,new Promise(function(e,o){var i=function(){var a=w.createServer();a.unref(),a.on("error",function(e){a.close(),"EADDRINUSE"===e.code?Date.now()-t>n?o(new Error("端口 ".concat(r.port," 长时间被占用,请手动结束占用进程后重试"))):setTimeout(i,200):o(e)}),a.listen(r.port,function(){a.close(e)})};i()}))},e)})),function(){return s.apply(this,arguments)})},{key:"killByPort",value:(i=u(a().m(function e(){var n,t,r,i,s,c,u,l,f,p,d;return a().w(function(e){for(;;)switch(e.p=e.n){case 0:if("darwin"===process.platform||"linux"===process.platform){e.n=1;break}throw new Error("端口 ".concat(this.port," 已被占用,请手动结束相关进程后重试"));case 1:if(e.p=1,n=g("lsof -ti tcp:".concat(this.port),{encoding:"utf-8"}).split("\n").map(function(e){return e.trim()}).filter(Boolean),0!==n.length){e.n=2;break}throw new Error("端口 ".concat(this.port," 已被占用,但无法定位进程,请手动处理"));case 2:t=o(n),e.p=3,t.s();case 4:if((r=t.n()).done){e.n=7;break}if(i=r.value,(s=parseInt(i,10))&&s!==process.pid){e.n=5;break}return e.a(3,6);case 5:try{process.kill(s,"SIGTERM")}catch(e){}case 6:e.n=4;break;case 7:e.n=9;break;case 8:e.p=8,p=e.v,t.e(p);case 9:return e.p=9,t.f(),e.f(9);case 10:return e.n=11,this.wait(500);case 11:c=o(n),e.p=12,c.s();case 13:if((u=c.n()).done){e.n=16;break}if(l=u.value,(f=parseInt(l,10))&&f!==process.pid){e.n=14;break}return e.a(3,15);case 14:try{process.kill(f,0),process.kill(f,"SIGKILL")}catch(e){}case 15:e.n=13;break;case 16:e.n=18;break;case 17:e.p=17,d=e.v,c.e(d);case 18:return e.p=18,c.f(),e.f(18);case 19:return e.n=20,this.wait(300);case 20:e.n=22;break;case 21:throw e.p=21,e.v,new Error("端口 ".concat(this.port," 被占用,且无法自动释放,请手动结束占用进程后重试"));case 22:return e.a(2)}},e,this,[[12,17,18,19],[3,8,9,10],[1,21]])})),function(){return i.apply(this,arguments)})}],n&&l(e.prototype,n),r&&l(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r,i,s,c,f}();e.exports=_},9890:(e,n,t)=>{var r=t(4420),o=t(241),i=t(2268);n.showQrCode=function(e){return new Promise(function(n,t){r.read(e).then(function(e){var t=e.bitmap,r=t.width,a=t.height,s=t.data,c=new Uint8ClampedArray(s),u=i(c,r,a);o.generate(u.data,{small:!1}),n(!0)}).catch(function(e){t(!1)})})},n.getBase64=function(e){return r.read(e).then(function(e){return e.getBase64Async("image/png")}).catch(function(){throw new Error("获取二维码base64失败")})}},9896:e=>{"use strict";e.exports=require("fs")},9937:e=>{"use strict";e.exports=require("inquirer")}},n={};function t(r){var o=n[r];if(void 0!==o)return o.exports;var i=n[r]={exports:{}};return e[r](i,i.exports,t),i.exports}t.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n);function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,n,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",a=t.toStringTag||"@@toStringTag";function s(t,r,i,a){var s=r&&r.prototype instanceof u?r:u,l=Object.create(s.prototype);return o(l,"_invoke",function(t,r,o){var i,a,s,u=0,l=o||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(n,t){return i=n,a=0,s=e,p.n=t,c}};function d(t,r){for(a=t,s=r,n=0;!f&&u&&!o&&n<l.length;n++){var o,i=l[n],d=p.p,m=i[2];t>3?(o=m===r)&&(s=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=t<2&&d<i[1])?(a=0,p.v=r,p.n=i[1]):d<m&&(o=t<3||i[0]>r||r>m)&&(i[4]=t,i[5]=r,p.n=m,a=0))}if(o||t>1)return c;throw f=!0,r}return function(o,l,m){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,m),a=l,s=m;(n=a<2?e:s)||!f;){i||(a?a<3?(a>1&&(p.n=-1),d(a,s)):p.n=s:p.v=s);try{if(u=2,i){if(a||(o="next"),n=i[o]){if(!(n=n.call(i,s)))throw TypeError("iterator result is not an object");if(!n.done)return n;s=n.value,a<2&&(a=0)}else 1===a&&(n=i.return)&&n.call(i),a<2&&(s=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((n=(f=p.n<0)?s:t.call(r,p))!==c)break}catch(n){i=e,a=1,s=n}finally{u=1}}return{value:n,done:f}}}(t,i,a),!0),l}var c={};function u(){}function l(){}function f(){}n=Object.getPrototypeOf;var p=[][i]?n(n([][i]())):(o(n={},i,function(){return this}),n),d=f.prototype=u.prototype=Object.create(p);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=f,o(d,"constructor",f),o(f,"constructor",l),l.displayName="GeneratorFunction",o(f,a,"GeneratorFunction"),o(d),o(d,a,"Generator"),o(d,i,function(){return this}),o(d,"toString",function(){return"[object Generator]"}),(r=function(){return{w:s,m}})()}function o(e,n,t,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}o=function(e,n,t,r){function a(n,t){o(e,n,function(e){return this._invoke(n,t,e)})}n?i?i(e,n,{value:t,enumerable:!r,configurable:!r,writable:!r}):e[n]=t:(a("next",0),a("throw",1),a("return",2))},o(e,n,t,r)}function i(e,n,t,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);function s(e){i(a,r,o,s,c,"next",e)}function c(e){i(a,r,o,s,c,"throw",e)}s(void 0)})}}var s=t(6928),c=t(857),u=t(8720),l=t(5205),f=new(0,t(6858).Command),p=t(9937),d=t(8938),m=t(8522),y=t(593),v=t(9538),h=t(1060),b=t(2425),g=t(9890),w=t(8085).SUCCEED_CODE,S=t(8330),k=t(3121),P=t(7175);function j(e){return E.apply(this,arguments)}function E(){return E=a(r().m(function e(n){var o,i,a,f,p,d,m,y,S,P,j,E,O,_,F,T,x,I,C,G,M,A,N,D,q,W,R,U,B,L,H,z,V,J,Q,Y,$,K,Z,X,ee,ne,te,re=arguments;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:if(o=!(re.length>1&&void 0!==re[1])||re[1],i=Date.now(),a=1===n?"preview":"upload",f=s.posix.resolve("","./jgc.config.js"),v.hasJgcConfigFile(f)){e.n=1;break}return e.a(2,console.log("".concat(l.red("请先创建配置文件!"))));case 1:if(p="function"==typeof require?require:t(6589),d=p(f),(m=h.checkConfigOptions(d,n)).code===w){e.n=2;break}return e.a(2,console.log(m.err_msg));case 2:if(y=d.appId,S=d.requestToken,P=d.versionName,j=d.entry,E=d.description,(O=v.verifyGameRequiredFilesExist(j)).code===w){e.n=3;break}return e.a(2,console.log(O.err_msg));case 3:if(_="upload"===a?c.tmpdir()+s.sep+"jd_game_temp.zip":c.tmpdir()+s.sep+"package.jd.zip",v.deleteFile(_),F=u("文件压缩").start(),e.p=4,"preview"!==a){e.n=6;break}return e.n=5,new Promise(function(e,n){k(j,_,function(t,r){t?n(t):e(r)})});case 5:x=t(9896).statSync(_),T=x.size,e.n=8;break;case 6:return e.n=7,v.compressDirectory(j,_);case 7:T=e.v;case 8:F.succeed("压缩完成,共"+T/1e3+"KB"),e.n=10;break;case 9:e.p=9,X=e.v,F.fail("压缩失败:".concat(X)),process.exit(1);case 10:return I=new b(o?"prod":"dev"),F.start(),F.text="上传中……",C=Date.now(),G=null,e.p=11,e.n=12,I.uploadProject({sourceFile:_,appId:y,requestToken:S,isProd:o,showType:a});case 12:(G=e.v).code!==w&&(F.fail("上传代码包报错 --\x3e".concat(G.err_msg)),process.exit(1)),M=Date.now(),A=(M-C)/1e3,F.succeed("上传代码包完成,耗时:"+A+"s"),e.n=14;break;case 13:e.p=13,ee=e.v,F.fail("上传代码包报错 --\x3e".concat(ee)),process.exit(1);case 14:return F.start(),F.text="代码包构建中……",N=Date.now(),D=null,e.p=15,e.n=16,I.loopQueryBuildStatus({appId:y,requestToken:S,isProd:o,showType:a},G.uuid);case 16:(D=e.v).code!==w&&(F.fail(D.err_msg),process.exit(1)),q=Date.now(),W=(q-N)/1e3,F.succeed("代码包构建完成,耗时:".concat(W,"s")),e.n=18;break;case 17:e.p=17,ne=e.v,F.fail("代码包构建报错 --\x3e".concat(ne)),process.exit(1);case 18:if(R=D.packId,e.p=19,"preview"!==a){e.n=22;break}return e.n=20,I.generateQrCode({packId:R,appId:y,requestToken:S,showType:a});case 20:return(U=e.v).code!==w&&(F.fail(U.err_msg),process.exit(1)),B=U.imgUrl,L=U.expiredTime,e.n=21,g.showQrCode(B);case 21:F.succeed("二维码生成完成,将于".concat(L,"过期")),F.info("二维码imgUrl(如二维码不清晰,浏览器打开): ".concat(B)),F.info("二维码仅支持协作成员访问"),H=Date.now(),z=(H-i)/1e3,F.info("本次耗费时长:".concat(z,"s")),e.n=27;break;case 22:if("upload"!==a){e.n=27;break}return F.start(),e.n=23,I.commitDevVersion({appId:y,requestToken:S,versionName:P,description:E},R);case 23:return(V=e.v).code!==w&&(F.fail(V.err_msg),process.exit(1)),J=V.devId,F.succeed("开发版设置完成, devId:"+J),e.n=24,I.setDevExperience({appId:y,requestToken:S},J);case 24:return(Q=e.v).code!==w&&(F.fail(Q.err_msg),process.exit(1)),F.succeed("体验版设置完成"),e.n=25,I.queryExperienceQrcodeByPackId({appId:y,requestToken:S});case 25:return(Y=e.v).code!==w&&(F.fail(Y.err_msg),process.exit(1)),$=Y.imgUrl,e.n=26,g.showQrCode($);case 26:F.info("二维码仅支持协作成员访问"),K=Date.now(),Z=(K-i)/1e3,F.info("本次耗费时长:".concat(Z,"s"));case 27:e.n=29;break;case 28:e.p=28,te=e.v,F.fail("CLI执行报错 --\x3e".concat(te)),process.exit(1);case 29:return e.a(2)}},e,null,[[19,28],[15,17],[11,13],[4,9]])})),E.apply(this,arguments)}function O(e){return _.apply(this,arguments)}function _(){return(_=a(r().m(function e(n){var o,i,a,f,d,m,g,S,k,P,j,E,O,_,F,T,x,I,C,G,M;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return o=(new y).getPrompts(),e.n=1,p.prompt(o);case 1:if(i=e.v,a=Date.now(),f=s.posix.resolve("","./jgc.config.js"),v.hasJgcConfigFile(f)){e.n=2;break}return e.a(2,console.log("".concat(l.red("请先创建配置文件!"))));case 2:if(d="function"==typeof require?require:t(6589),m=d(f),(g=h.checkPluginConfig(m)).code===w){e.n=3;break}return e.a(2,console.log(g.err_msg));case 3:return S=m.appId,k=m.requestToken,P=m.entry,j=m.versionName,E=c.tmpdir()+s.sep+"jd_game_temp.zip",v.deleteFile(E),O=u("文件压缩").start(),e.p=4,e.n=5,v.compressDirectory(P,E);case 5:(_=e.v)>4194304&&(O.fail("压缩包超过4MB,请检查文件大小"),process.exit(1)),O.succeed("压缩完成,共"+_/1e3+"KB"),e.n=7;break;case 6:e.p=6,G=e.v,O.fail("压缩失败:",G),process.exit(1);case 7:return F=new b(n),e.p=8,e.n=9,F.uploadPlugin({sourceFile:E,appId:S,requestToken:k,versionName:j});case 9:if((T=e.v).code===w){e.n=10;break}O.fail(T.err_msg),process.exit(1),e.n=12;break;case 10:return O.succeed("插件构建成功"),e.n=11,F.publishPlugin({versionName:i.versionName,versionFeature:i.versionFeature,useGuide:i.useGuide,packId:T.result.packId,appId:S,requestToken:k});case 11:(x=e.v).code!==w&&(O.fail(x.err_msg),process.exit(1)),O.succeed("插件发布成功"),I=Date.now(),C=(I-a)/1e3,O.info("本次耗费时长:".concat(C,"s"));case 12:e.n=14;break;case 13:e.p=13,M=e.v,O.fail("CLI执行报错 --\x3e".concat(M)),process.exit(1);case 14:return e.a(2)}},e,null,[[8,13],[4,6]])}))).apply(this,arguments)}function F(e){return T.apply(this,arguments)}function T(){return(T=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitInfo(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var n=e.code,t=e.msg;0===n?console.log(t):console.error("查询函数符号表失败:",e)}).catch(function(e){console.error("查询函数符号表异常:",e)});case 1:return e.a(2)}},e)}))).apply(this,arguments)}return f.command("config").description("小游戏配置").action(a(r().m(function e(){var n,t,o,i;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=(new m).getPrompts(),e.n=1,p.prompt(n);case 1:if(t=e.v,(o=v.verifyGameRequiredFilesExist(t.entry,t.type)).code===w){e.n=2;break}return e.a(2,console.log("".concat(l.red(o.err_msg))));case 2:return e.p=2,v.writeFile("./".concat("jgc.config.js"),"module.exports = ".concat(JSON.stringify(t,null,2)),"utf-8"),e.a(2,console.log("✨ ".concat(l.green("创建小游戏配置文件成功"))));case 3:e.p=3,i=e.v,console.log("创建小游戏配置文件失败:",i);case 4:return e.a(2)}},e,null,[[2,3]])}))),f.command("preview").description("小游戏真机预览").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:if(!n.D){e.n=1;break}return console.log("小游戏真机预览-预发环境"),e.a(2,j(1,!1));case 1:return e.a(2,j(1,!0))}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("upload").description("小游戏发布").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:if(!n.D){e.n=1;break}return console.log("小游戏发布-预发环境"),e.a(2,j(2,!1));case 1:return e.a(2,j(2,!0))}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("publish").description("插件发布").option("-D","预发环境").option("-T","测试环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:if(!n.D){e.n=1;break}return console.log("插件发布-预发环境"),e.a(2,O("dev"));case 1:if(!n.T){e.n=2;break}return console.log("插件发布-测试环境"),e.a(2,O("test"));case 2:return console.log("插件发布-生产环境"),e.a(2,O("prod"));case 3:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.version(S.version,"-v, -V").description("获取本地京东小游戏CLI工具版本"),f.command("latest").description("获取并对比京东小游戏CLI工具最新版本").action(a(r().m(function e(){var n,t,o,i,a;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,n=u("npm最新版本获取中……").start(),e.n=1,d.get("https://registry.npmjs.org/jd-minigame-ci/latest");case 1:t=e.v,o=t.data.version,i=S.version,n.succeed("最新版本: ".concat(o)),o===i?n.info("当前版本 (".concat(i,") 已是最新版本。")):(n.info("本地版本: ".concat(i)),n.info("请更新到最新版本以获取最新功能和修复。")),e.n=3;break;case 2:e.p=2,a=e.v,spinner.fail("获取最新版本信息失败: ".concat(a));case 3:return e.a(2)}},e,null,[[0,2]])}))),f.command("wasm-split").description("启动 WASM 分包可视化界面").option("-D","预发环境").option("-p, --port <port>","服务端口","3456").action(function(){var e=a(r().m(function e(n){var o,i,a,c,u,f,p,d,m;return r().w(function(e){for(;;)switch(e.p=e.n){case 0:o=s.posix.resolve("","./jgc.config.js"),v.hasJgcConfigFile(o)||(console.log("".concat(l.red("项目校验失败,请确认是否正确执行了 jgc config 命令,是否存在配置文件:jgc.config.js"))),process.exit(1)),i="function"==typeof require?require:t(6589);try{delete i.cache[i.resolve(o)],a=i(o)}catch(e){console.log("".concat(l.red("配置文件加载失败:")," ").concat(e.message)),process.exit(1)}return(c=h.checkConfigOptions(a,1)).code!==w&&(console.log("".concat(l.red("项目校验失败:"))),console.log(c.err_msg),process.exit(1)),u=a.entry,(f=v.verifyGameRequiredFilesExist(u)).code!==w&&(console.log("".concat(l.red("项目校验失败:"))),console.log(f.err_msg),process.exit(1)),P.initConfig()||(console.log("".concat(l.red("配置文件加载失败:"))),process.exit(1)),p=t(9739),d=new p({port:parseInt(n.port)||3456,isPreEnv:n.D||!1}),e.p=1,e.n=2,d.start(!0);case 2:console.log("".concat(l.green("WASM 分包服务已启动"))),console.log("".concat(l.cyan("按 Ctrl+C 关闭服务"))),e.n=4;break;case 3:e.p=3,m=e.v,console.error("".concat(l.red("启动失败:")," ").concat(m.message)),process.exit(1);case 4:return e.a(2)}},e,null,[[1,3]])}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-init").description("WASM分包初始化").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)if(0===e.n)return e.a(2,P.wasmInit(Object.assign(n,{srcPath:"",isPreEnv:n.D})))},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-update").description("WASM分包增量更新").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)if(0===e.n)return e.a(2,P.wasmUpdate(Object.assign(n,{srcPath:"",isPreEnv:n.D})))},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-dev").description("WASM分包dev").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitDev(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var t=e.code;e.msg;if(0!==t)return console.error("WASM分包失败:",e),{code:-1,msg:"WASM分包失败",errMsg:e.errorMessage};F(n)}).catch(function(e){console.error("WASM分包异常:",e)});case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-prod").description("WASM分包prod").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitProd(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var t=e.code,r=e.msg;0===t?(console.log(r),F(n)):console.error("WASM分包失败:",e)}).catch(function(e){console.error("WASM分包异常:",e)});case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-info").description("查询函数符号表").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:F(n);case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-report").description("上报函数名").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitReport(Object.assign(n,{srcPath:"",isPreEnv:n.D}));case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-rollback").description("关闭分包功能").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmRollBack(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var n=e.code,t=e.msg;0===n?console.log(t):console.error("关闭分包功能失败:",e)}).catch(function(e){console.error("关闭分包功能异常:",e)});case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.command("wasm-split-report-index").description("上报函数名索引").option("-D","预发环境").action(function(){var e=a(r().m(function e(n){return r().w(function(e){for(;;)switch(e.n){case 0:P.wasmSplitReportIndex(Object.assign(n,{srcPath:"",isPreEnv:n.D})).then(function(e){var n=e.code,t=e.msg;0===n?console.log(t):console.error("上报函数名索引失败:",e)}).catch(function(e){console.error("上报函数名索引异常:",e)});case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}()),f.parse(process.argv),{}})());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jd-minigame-ci",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "The jd-minigame-ci is a toolkit provided for developers of JD Mini Games. Developers can complete code upload and preview operations for JD Mini Games without the need to open the developer tools, simply by using this toolkit.",
5
5
  "author": "chenlong328",
6
6
  "license": "ISC",