@empjs/cli 3.9.1-beta.3 → 3.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -13,5 +13,5 @@
13
13
  ${j}
14
14
  `),n.info(`${x("\u2713")} Ready in ${V(Number(e.time))}
15
15
  `)}function te(s=0){n.info(`${x("\u2713")} Ready in ${V(Number(s))}`)}var Mt,P,Ft,Ns,Ls,As,Ms,Fs,zs,ee,Is,se=c(()=>{"use strict";o();Mt=l(require("fs"),1),P=l(require("path"),1),Ft=require("gzip-size");A();S();$();w();Ns=/\.html$/,Ls=/\.(?:js|mjs|cjs|jsx)$/,As=/\.css$/,Ms=s=>!/\.map$/.test(s)&&!/\.LICENSE\.txt$/.test(s),Fs=s=>s>300*1e3?ne:s>100*1e3?H:pe,zs=s=>{let e=s.name.split("?")[0],t=ee(s.size),i=P.default.basename(e),r=P.default.join(P.default.basename(p.empConfig.build.outDir),P.default.dirname(e)),a=Mt.default.readFileSync(P.default.join(p.empConfig.build.outDir,e)),u=a.length,h=(0,Ft.gzipSizeSync)(a),y=Fs(h)(ee(h));return{size:u,folder:r,name:i,gzippedSize:h,sizeLabel:t,gzipSizeLabel:y}};ee=s=>{let e=s/1e3;return`${e.toFixed(e<1?2:1)} kB`},Is=s=>Ls.test(s)?H(s):As.test(s)?x(s):Ns.test(s)?N(s):ae(s)});var T,ie=c(()=>{"use strict";o();$();w();S();T=class{async setup(e,t){n.time(`[${e}]Setup`),await p.setup(e,t),p.debug.clearLog&&he(),n.title(`${e}`),n.time(`[${e}]Run`),await this.run(),this.processExit(),n.timeEnd(`[${e}]Run`),n.timeEnd(`[${e}]Setup`)}async run(){}processExit(){process.on("SIGINT",function(){process.exit()})}}});var Gt,It,I,Ut=c(()=>{"use strict";o();Gt=require("@rspack/dev-server"),It=l(require("connect"),1),I=class{async setup(e,t,i,r=()=>{}){if(!t.devServer)return console.warn("rspackConfig.devServer need!");let a=new Gt.RspackDevServer(t.devServer,e);return await a.start(),a.middleware?.waitUntilValid(r),a}async beforeCompiler(e){return e.devServer.app=()=>(0,It.default)(),e.devServer.server&&e.devServer.server.type==="https"&&(e.devServer.server.type="http2"),e}}});var Ne,Bt,Ht,Jt,_t,Vt,Le,Wt,qt,M,U,Xt=c(()=>{"use strict";o();Ne=l(require("fs"),1),Bt=l(require("fs/promises"),1),Ht=l(require("compression"),1),Jt=l(require("connect"),1),_t=l(require("cors"),1),Vt=l(require("http2"),1),Le=l(require("path"),1),Wt=l(require("serve-static"),1),qt=require("url"),M=(0,Jt.default)();M.use((0,Ht.default)());M.use((0,_t.default)());U=class{async setup(e,t=()=>{}){let i="index",r=Object.keys(e.rsConfig.entry);if(r.length===0)return e.logger.sysError("emp serve must include entry!");if(r.includes(i)||(i=r[0]),!Ne.default.existsSync(e.outDir))return e.logger.sysError(`emp serve must be executed after emp build,${e.outDir} not exist!`);let a=e.resolve(e.rsConfig.output?.path);M.use((0,Wt.default)(a));let u=await Bt.default.readFile(Le.default.join(a,`${i}.html`),"utf8");if(M.use((h,y,j)=>{let k=(0,qt.parse)(h.url||"",!0).pathname;if(k&&k!=="/"&&Ne.default.existsSync(Le.default.join(a,k)))return j();y.setHeader("Content-Type","text/html"),y.end(u)}),e.server.isHttps){let{key:h,cert:y}=await e.server.getcert();Vt.default.createSecureServer(typeof e.server.isHttps!="boolean"?e.server.isHttps:{key:h,cert:y,allowHTTP1:!0},M).listen(e.server.port,t)}else require("http").createServer(M).listen(e.server.port,t)}}});var Ae=c(()=>{"use strict";o();Ut();Xt()});var Yt={};R(Yt,{default:()=>Us});var Qt,Kt,Me,Us,Zt=c(()=>{"use strict";o();Qt=require("@rspack/core");se();w();ie();Ae();S();Kt=new I,Me=class extends T{get stats(){return{all:p.empConfig.debug.devShowAllLog,colors:!0,assets:!1,chunks:!1,entrypoints:!1,timings:!1,version:!1,errors:!0,warnings:!0}}async getRspackDevConfig(){let e=v(p.rsConfig,{stats:this.stats,devServer:{open:!1,setupExitSignals:!0,port:p.server.port}}),{devServer:t}=e;if(p.server.isHttps&&(!t.server||t.server.type==="https"&&!t.server.options)){let{key:i,cert:r}=await p.server.getcert();t.server={type:"https",options:{key:i,cert:r}}}return Object.hasOwn(t,"https")&&delete t.https,e}async run(){let{server:e}=p,t=await this.getRspackDevConfig();t=await Kt.beforeCompiler(t);let i=(0,Qt.rspack)(t);await p.empConfig.lifeCycle.beforeDevServe(),e.startOpen(),await Kt.setup(i,t,p,async r=>{this.showTimeDone(r),await p.empConfig.lifeCycle.afterDevServe()}),p.debug.showPerformance&&i.hooks.afterDone.tap("done",this.showTimeDone)}showTimeDone=e=>{let t=e?.toJson({all:!1,colors:!1,assets:!1,chunks:!1,timings:!0});te(t.time)}},Us=new Me});var Fe={};R(Fe,{ServeScript:()=>re,default:()=>Hs});var Bs,es,re,Hs,ze=c(()=>{"use strict";o();se();ie();Ae();S();Bs=new U,es=0,re=class extends T{async run(){es=Date.now(),await p.empConfig.lifeCycle.beforeServe(),await Bs.setup(p,this.onReady)}onReady=async()=>{p.server.startOpen(),te(Date.now()-es),await p.empConfig.lifeCycle.afterServe()}},Hs=new re});var ss={};R(ss,{default:()=>Js});var ts,Ge,Js,is=c(()=>{"use strict";o();ts=require("@rspack/core");se();$();ie();S();Ge=class extends T{isWatchMode=!1;rspackConfig;isuseServe=!1;isStartServe=!1;watchMode(){this.isWatchMode&&this.rspackConfig.optimization&&(this.rspackConfig.optimization.moduleIds="named",this.rspackConfig.optimization.chunkIds="named",this.rspackConfig.watch=!0)}async startServe(){if(!this.isuseServe||this.isStartServe)return;this.isStartServe=!0;let{default:e}=await Promise.resolve().then(()=>(ze(),Fe));await e.setup("serve",p.cliOptions)}async run(){await p.empConfig.lifeCycle.beforeBuild(),this.isWatchMode=!!p.cliOptions.watch,this.isuseServe=!!p.cliOptions.serve,this.rspackConfig=p.rsConfig,this.isWatchMode&&this.watchMode(),(0,ts.rspack)(this.rspackConfig,async(e,t)=>{if(console.log(`
16
- `),p.debug.showScriptDebug&&console.log(t?.toString()),e!==null){n.error(e.stack||e),e.message&&n.error(e.message);return}if(!t){n.red("Stats is Undefined.");return}t.hasErrors()&&(n.error(t.toString({all:!1,colors:!0,errors:!0})),n.red("Failed to compile."),process.exit(1)),t.hasWarnings()&&(n.yellow("Compiled with warnings."),n.warn(t.toString({all:!1,chunks:!1,assets:!1,colors:!0,errors:!0,warnings:!0}))),await zt(t),this.startServe(),await p.empConfig.lifeCycle.afterBulid()})}},Js=new Ge});var Vs={};R(Vs,{defineConfig:()=>_s,empHelper:()=>ve,rspack:()=>os.rspack,runScript:()=>Ie,store:()=>p});module.exports=fs(Vs);o();var os=require("@rspack/core");o();var rs=l(require("process"),1),E=require("commander");var _e={name:"@empjs/cli",version:"3.9.1-beta.3",description:"emp",license:"MIT",type:"module",files:["dist","bin","resource","template","client.d.ts","emp-tsconfig.json"],maintainers:["xuhongbin","ckken","doerme"],repository:{type:"git",url:"git+https://github.com/empjs/emp.git",directory:"packages/cli"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},keywords:["rspack","rust","typescript"],bin:{emp:"./bin/emp.js"},main:"dist/index.js",types:"dist/index.d.ts",exports:{".":{import:{types:"./dist/index.d.ts",default:"./dist/index.js"},require:{types:"./dist/index.d.cts",default:"./dist/index.cjs"}},"./emp-tsconfig.json":"./emp-tsconfig.json"},scripts:{dev:"tsup --watch --env.ENV dev",build:"tsup --env.ENV prod",ph:"pnpm publish --no-git-checks"},engines:{node:">=16.0.0"},author:"Ken",devDependencies:{"@types/compression":"^1.7.2","@types/connect":"^3.4.38","@types/cors":"^2.8.12","@types/default-gateway":"^7.2.1","@types/fs-extra":"^11.0.4","@types/node":"^20.8.7","@types/react":"^18.3.2","@types/serve-static":"^1.15.8","@types/watchpack":"^2.4.3","@types/webpack":"^5.28.4","@types/webpack-bundle-analyzer":"^4.6.2","@types/webpack-sources":"^3.2.2",tsup:"^8.4.0"},dependencies:{"@empjs/typescript-plugin-css-modules":"1.0.0","@rsdoctor/rspack-plugin":"1.1.8","@rspack/core":"1.4.10","@rspack/dev-server":"1.1.3","@swc/helpers":"^0.5.17",address:"^2.0.2",chalk:"^5.3.0",commander:"^11.1.0",compression:"^1.7.4",connect:"^3.7.0","core-js":"^3.41.0",cors:"^2.8.5","default-gateway":"^7.2.2","fs-extra":"^11.2.0",glob:"^11.0.1","gzip-size":"^7.0.0","html-webpack-plugin":"5.6.3",jiti:"2.0.0","less-loader":"^12.2.0",open:"^10.1.0","sass-embedded":"1.89.2","sass-loader":"^16.0.5","serve-static":"^2.2.0","ts-checker-rspack-plugin":"^1.1.4","webpack-bundle-analyzer":"^4.10.2","@empjs/chain":"workspace:*"}};async function Ie(){return E.program.version(_e.version,"-v, --version").usage("<command> [options]"),E.program.command("dev").description("Dev \u6A21\u5F0F").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").option("-rd, --doctor","\u5F00\u542Frsdoctor,\u53EF\u901A\u8FC7debug.rsdoctor\u64CD\u4F5C").option("-h, --hot","\u662F\u5426\u4F7F\u7528\u70ED\u66F4\u65B0 \u9ED8\u8BA4\u542F\u52A8").option("-o, --open","\u662F\u5426\u6253\u5F00\u8C03\u8BD5\u9875\u9762 \u9ED8\u8BA4\u4E0D\u6253\u5F00").option("-t, --ts","\u751F\u6210\u7C7B\u578B\u6587\u4EF6 \u9ED8\u8BA4\u4E3A false").option("-pr, --profile","\u7EDF\u8BA1\u6A21\u5757\u6D88\u8017").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").option("-ev, --env-vars <key=value>","\u5B9A\u4E49\u4E00\u4E2A\u73AF\u5883\u53D8\u91CF -ev key=value \u591A\u4E2A\u73AF\u5883\u53D8\u91CF\u91CD\u590D\u8C03\u7528 -ev key=value -ev key=value",(s,e)=>{let[t,i]=s.split("=");return e[t]=i,e},{}).action(async s=>{let{default:e}=await Promise.resolve().then(()=>(Zt(),Yt));await e.setup("dev",s)}),E.program.command("build").description("Build \u6A21\u5F0F").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").option("-rd, --doctor","\u5F00\u542Frsdoctor,\u53EF\u901A\u8FC7debug.rsdoctor\u64CD\u4F5C").option("-a, --analyze","\u751F\u6210\u5206\u6790\u62A5\u544A \u9ED8\u8BA4\u4E3A false").option("-t, --ts","\u751F\u6210\u7C7B\u578B\u6587\u4EF6 \u9ED8\u8BA4\u4E3A false").option("-pr, --profile","\u7EDF\u8BA1\u6A21\u5757\u6D88\u8017").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").option("-w, --watch","watch \u6A21\u5F0F").option("-sv, --serve","watch \u6A21\u5F0F\u4E0B\u542F\u52A8serve").option("-ev, --env-vars <key=value>","\u5B9A\u4E49\u4E00\u4E2A\u73AF\u5883\u53D8\u91CF -ev key=value \u591A\u4E2A\u73AF\u5883\u53D8\u91CF\u91CD\u590D\u8C03\u7528 -ev key=value -ev key=value",(s,e)=>{let[t,i]=s.split("=");return e[t]=i,e},{}).action(async s=>{let{default:e}=await Promise.resolve().then(()=>(is(),ss));await e.setup("build",s)}),E.program.command("serve").description("Server \u6A21\u5F0F").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").action(async s=>{let{default:e}=await Promise.resolve().then(()=>(ze(),Fe));await e.setup("serve",s)}),E.program.command("dts").description("\u62C9\u53D6 remote \u9879\u76EE\u7684 d.ts").option("-p, --typingsPath <typingsPath>","\u4E0B\u8F7D\u76EE\u5F55").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").action(s=>{}),E.program.command("init").description("\u521D\u59CB\u5316 emp \u9879\u76EE").option("-d, --data [data]","JSON\u6570\u636E http\u5730\u5740 \u6216\u8005 \u6587\u4EF6\u8DEF\u5F84\u76F8\u5BF9\u3001\u7EDD\u5BF9\u8DEF\u5F84").action(s=>{}),E.program.parse(rs.default.argv),E.program}S();z();function _s(s){return s}0&&(module.exports={defineConfig,empHelper,rspack,runScript,store});
16
+ `),p.debug.showScriptDebug&&console.log(t?.toString()),e!==null){n.error(e.stack||e),e.message&&n.error(e.message);return}if(!t){n.red("Stats is Undefined.");return}t.hasErrors()&&(n.error(t.toString({all:!1,colors:!0,errors:!0})),n.red("Failed to compile."),process.exit(1)),t.hasWarnings()&&(n.yellow("Compiled with warnings."),n.warn(t.toString({all:!1,chunks:!1,assets:!1,colors:!0,errors:!0,warnings:!0}))),await zt(t),this.startServe(),await p.empConfig.lifeCycle.afterBulid()})}},Js=new Ge});var Vs={};R(Vs,{defineConfig:()=>_s,empHelper:()=>ve,rspack:()=>os.rspack,runScript:()=>Ie,store:()=>p});module.exports=fs(Vs);o();var os=require("@rspack/core");o();var rs=l(require("process"),1),E=require("commander");var _e={name:"@empjs/cli",version:"3.9.1",description:"emp",license:"MIT",type:"module",files:["dist","bin","resource","template","client.d.ts","emp-tsconfig.json"],maintainers:["xuhongbin","ckken","doerme"],repository:{type:"git",url:"git+https://github.com/empjs/emp.git",directory:"packages/cli"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},keywords:["rspack","rust","typescript"],bin:{emp:"./bin/emp.js"},main:"dist/index.js",types:"dist/index.d.ts",exports:{".":{import:{types:"./dist/index.d.ts",default:"./dist/index.js"},require:{types:"./dist/index.d.cts",default:"./dist/index.cjs"}},"./emp-tsconfig.json":"./emp-tsconfig.json"},scripts:{dev:"tsup --watch --env.ENV dev",build:"tsup --env.ENV prod",ph:"pnpm publish --no-git-checks"},engines:{node:">=16.0.0"},author:"Ken",devDependencies:{"@types/compression":"^1.7.2","@types/connect":"^3.4.38","@types/cors":"^2.8.12","@types/default-gateway":"^7.2.1","@types/fs-extra":"^11.0.4","@types/node":"^20.8.7","@types/react":"^18.3.2","@types/serve-static":"^1.15.8","@types/watchpack":"^2.4.3","@types/webpack":"^5.28.4","@types/webpack-bundle-analyzer":"^4.6.2","@types/webpack-sources":"^3.2.2",tsup:"^8.4.0"},dependencies:{"@empjs/typescript-plugin-css-modules":"1.0.0","@rsdoctor/rspack-plugin":"1.1.8","@rspack/core":"1.4.10","@rspack/dev-server":"1.1.3","@swc/helpers":"^0.5.17",address:"^2.0.2",chalk:"^5.3.0",commander:"^11.1.0",compression:"^1.7.4",connect:"^3.7.0","core-js":"^3.41.0",cors:"^2.8.5","default-gateway":"^7.2.2","fs-extra":"^11.2.0",glob:"^11.0.1","gzip-size":"^7.0.0","html-webpack-plugin":"5.6.3",jiti:"2.0.0","less-loader":"^12.2.0",open:"^10.1.0","sass-embedded":"1.89.2","sass-loader":"^16.0.5","serve-static":"^2.2.0","ts-checker-rspack-plugin":"^1.1.4","webpack-bundle-analyzer":"^4.10.2","@empjs/chain":"workspace:*"}};async function Ie(){return E.program.version(_e.version,"-v, --version").usage("<command> [options]"),E.program.command("dev").description("Dev \u6A21\u5F0F").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").option("-rd, --doctor","\u5F00\u542Frsdoctor,\u53EF\u901A\u8FC7debug.rsdoctor\u64CD\u4F5C").option("-h, --hot","\u662F\u5426\u4F7F\u7528\u70ED\u66F4\u65B0 \u9ED8\u8BA4\u542F\u52A8").option("-o, --open","\u662F\u5426\u6253\u5F00\u8C03\u8BD5\u9875\u9762 \u9ED8\u8BA4\u4E0D\u6253\u5F00").option("-t, --ts","\u751F\u6210\u7C7B\u578B\u6587\u4EF6 \u9ED8\u8BA4\u4E3A false").option("-pr, --profile","\u7EDF\u8BA1\u6A21\u5757\u6D88\u8017").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").option("-ev, --env-vars <key=value>","\u5B9A\u4E49\u4E00\u4E2A\u73AF\u5883\u53D8\u91CF -ev key=value \u591A\u4E2A\u73AF\u5883\u53D8\u91CF\u91CD\u590D\u8C03\u7528 -ev key=value -ev key=value",(s,e)=>{let[t,i]=s.split("=");return e[t]=i,e},{}).action(async s=>{let{default:e}=await Promise.resolve().then(()=>(Zt(),Yt));await e.setup("dev",s)}),E.program.command("build").description("Build \u6A21\u5F0F").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").option("-rd, --doctor","\u5F00\u542Frsdoctor,\u53EF\u901A\u8FC7debug.rsdoctor\u64CD\u4F5C").option("-a, --analyze","\u751F\u6210\u5206\u6790\u62A5\u544A \u9ED8\u8BA4\u4E3A false").option("-t, --ts","\u751F\u6210\u7C7B\u578B\u6587\u4EF6 \u9ED8\u8BA4\u4E3A false").option("-pr, --profile","\u7EDF\u8BA1\u6A21\u5757\u6D88\u8017").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").option("-w, --watch","watch \u6A21\u5F0F").option("-sv, --serve","watch \u6A21\u5F0F\u4E0B\u542F\u52A8serve").option("-ev, --env-vars <key=value>","\u5B9A\u4E49\u4E00\u4E2A\u73AF\u5883\u53D8\u91CF -ev key=value \u591A\u4E2A\u73AF\u5883\u53D8\u91CF\u91CD\u590D\u8C03\u7528 -ev key=value -ev key=value",(s,e)=>{let[t,i]=s.split("=");return e[t]=i,e},{}).action(async s=>{let{default:e}=await Promise.resolve().then(()=>(is(),ss));await e.setup("build",s)}),E.program.command("serve").description("Server \u6A21\u5F0F").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").action(async s=>{let{default:e}=await Promise.resolve().then(()=>(ze(),Fe));await e.setup("serve",s)}),E.program.command("dts").description("\u62C9\u53D6 remote \u9879\u76EE\u7684 d.ts").option("-p, --typingsPath <typingsPath>","\u4E0B\u8F7D\u76EE\u5F55").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").action(s=>{}),E.program.command("init").description("\u521D\u59CB\u5316 emp \u9879\u76EE").option("-d, --data [data]","JSON\u6570\u636E http\u5730\u5740 \u6216\u8005 \u6587\u4EF6\u8DEF\u5F84\u76F8\u5BF9\u3001\u7EDD\u5BF9\u8DEF\u5F84").action(s=>{}),E.program.parse(rs.default.argv),E.program}S();z();function _s(s){return s}0&&(module.exports={defineConfig,empHelper,rspack,runScript,store});
17
17
  if (module.exports.default) module.exports = module.exports.default;
package/dist/index.js CHANGED
@@ -14,4 +14,4 @@ var Rt=Object.defineProperty;var v=(s=>typeof require<"u"?require:typeof Proxy<"
14
14
  ${P}
15
15
  `),n.info(`${S("\u2713")} Ready in ${_(Number(e.time))}
16
16
  `)}function ee(s=0){n.info(`${S("\u2713")} Ready in ${_(Number(s))}`)}var vs,bs,Cs,ws,xs,Ss,Z,Os,te=m(()=>{"use strict";o();A();k();E();C();vs=/\.html$/,bs=/\.(?:js|mjs|cjs|jsx)$/,Cs=/\.css$/,ws=s=>!/\.map$/.test(s)&&!/\.LICENSE\.txt$/.test(s),xs=s=>s>300*1e3?oe:s>100*1e3?B:ne,Ss=s=>{let e=s.name.split("?")[0],t=Z(s.size),i=$.basename(e),r=$.join($.basename(a.empConfig.build.outDir),$.dirname(e)),p=ds.readFileSync($.join(a.empConfig.build.outDir,e)),u=p.length,h=ys(p),d=xs(h)(Z(h));return{size:u,folder:r,name:i,gzippedSize:h,sizeLabel:t,gzipSizeLabel:d}};Z=s=>{let e=s/1e3;return`${e.toFixed(e<1?2:1)} kB`},Os=s=>bs.test(s)?B(s):Cs.test(s)?S(s):vs.test(s)?N(s):pe(s)});var T,se=m(()=>{"use strict";o();E();C();k();T=class{async setup(e,t){n.time(`[${e}]Setup`),await a.setup(e,t),a.debug.clearLog&&ce(),n.title(`${e}`),n.time(`[${e}]Run`),await this.run(),this.processExit(),n.timeEnd(`[${e}]Run`),n.timeEnd(`[${e}]Setup`)}async run(){}processExit(){process.on("SIGINT",function(){process.exit()})}}});import{RspackDevServer as Ps}from"@rspack/dev-server";import Es from"connect";var I,vt=m(()=>{"use strict";o();I=class{async setup(e,t,i,r=()=>{}){if(!t.devServer)return console.warn("rspackConfig.devServer need!");let p=new Ps(t.devServer,e);return await p.start(),p.middleware?.waitUntilValid(r),p}async beforeCompiler(e){return e.devServer.app=()=>Es(),e.devServer.server&&e.devServer.server.type==="https"&&(e.devServer.server.type="http2"),e}}});import bt from"fs";import js from"fs/promises";import $s from"compression";import Ts from"connect";import Ds from"cors";import Rs from"http2";import Ct from"path";import Ns from"serve-static";import{parse as Ls}from"url";var M,U,wt=m(()=>{"use strict";o();M=Ts();M.use($s());M.use(Ds());U=class{async setup(e,t=()=>{}){let i="index",r=Object.keys(e.rsConfig.entry);if(r.length===0)return e.logger.sysError("emp serve must include entry!");if(r.includes(i)||(i=r[0]),!bt.existsSync(e.outDir))return e.logger.sysError(`emp serve must be executed after emp build,${e.outDir} not exist!`);let p=e.resolve(e.rsConfig.output?.path);M.use(Ns(p));let u=await js.readFile(Ct.join(p,`${i}.html`),"utf8");if(M.use((h,d,P)=>{let O=Ls(h.url||"",!0).pathname;if(O&&O!=="/"&&bt.existsSync(Ct.join(p,O)))return P();d.setHeader("Content-Type","text/html"),d.end(u)}),e.server.isHttps){let{key:h,cert:d}=await e.server.getcert();Rs.createSecureServer(typeof e.server.isHttps!="boolean"?e.server.isHttps:{key:h,cert:d,allowHTTP1:!0},M).listen(e.server.port,t)}else v("http").createServer(M).listen(e.server.port,t)}}});var Oe=m(()=>{"use strict";o();vt();wt()});var St={};F(St,{default:()=>Ms});import{rspack as As}from"@rspack/core";var xt,Pe,Ms,kt=m(()=>{"use strict";o();te();C();se();Oe();k();xt=new I,Pe=class extends T{get stats(){return{all:a.empConfig.debug.devShowAllLog,colors:!0,assets:!1,chunks:!1,entrypoints:!1,timings:!1,version:!1,errors:!0,warnings:!0}}async getRspackDevConfig(){let e=b(a.rsConfig,{stats:this.stats,devServer:{open:!1,setupExitSignals:!0,port:a.server.port}}),{devServer:t}=e;if(a.server.isHttps&&(!t.server||t.server.type==="https"&&!t.server.options)){let{key:i,cert:r}=await a.server.getcert();t.server={type:"https",options:{key:i,cert:r}}}return Object.hasOwn(t,"https")&&delete t.https,e}async run(){let{server:e}=a,t=await this.getRspackDevConfig();t=await xt.beforeCompiler(t);let i=As(t);await a.empConfig.lifeCycle.beforeDevServe(),e.startOpen(),await xt.setup(i,t,a,async r=>{this.showTimeDone(r),await a.empConfig.lifeCycle.afterDevServe()}),a.debug.showPerformance&&i.hooks.afterDone.tap("done",this.showTimeDone)}showTimeDone=e=>{let t=e?.toJson({all:!1,colors:!1,assets:!1,chunks:!1,timings:!0});ee(t.time)}},Ms=new Pe});var Ee={};F(Ee,{ServeScript:()=>ie,default:()=>zs});var Fs,Ot,ie,zs,je=m(()=>{"use strict";o();te();se();Oe();k();Fs=new U,Ot=0,ie=class extends T{async run(){Ot=Date.now(),await a.empConfig.lifeCycle.beforeServe(),await Fs.setup(a,this.onReady)}onReady=async()=>{a.server.startOpen(),ee(Date.now()-Ot),await a.empConfig.lifeCycle.afterServe()}},zs=new ie});var Pt={};F(Pt,{default:()=>Is});import{rspack as Gs}from"@rspack/core";var $e,Is,Et=m(()=>{"use strict";o();te();E();se();k();$e=class extends T{isWatchMode=!1;rspackConfig;isuseServe=!1;isStartServe=!1;watchMode(){this.isWatchMode&&this.rspackConfig.optimization&&(this.rspackConfig.optimization.moduleIds="named",this.rspackConfig.optimization.chunkIds="named",this.rspackConfig.watch=!0)}async startServe(){if(!this.isuseServe||this.isStartServe)return;this.isStartServe=!0;let{default:e}=await Promise.resolve().then(()=>(je(),Ee));await e.setup("serve",a.cliOptions)}async run(){await a.empConfig.lifeCycle.beforeBuild(),this.isWatchMode=!!a.cliOptions.watch,this.isuseServe=!!a.cliOptions.serve,this.rspackConfig=a.rsConfig,this.isWatchMode&&this.watchMode(),Gs(this.rspackConfig,async(e,t)=>{if(console.log(`
17
- `),a.debug.showScriptDebug&&console.log(t?.toString()),e!==null){n.error(e.stack||e),e.message&&n.error(e.message);return}if(!t){n.red("Stats is Undefined.");return}t.hasErrors()&&(n.error(t.toString({all:!1,colors:!0,errors:!0})),n.red("Failed to compile."),process.exit(1)),t.hasWarnings()&&(n.yellow("Compiled with warnings."),n.warn(t.toString({all:!1,chunks:!1,assets:!1,colors:!0,errors:!0,warnings:!0}))),await yt(t),this.startServe(),await a.empConfig.lifeCycle.afterBulid()})}},Is=new $e});o();import{rspack as Zo}from"@rspack/core";o();import Us from"process";import{program as D}from"commander";var Le={name:"@empjs/cli",version:"3.9.1-beta.3",description:"emp",license:"MIT",type:"module",files:["dist","bin","resource","template","client.d.ts","emp-tsconfig.json"],maintainers:["xuhongbin","ckken","doerme"],repository:{type:"git",url:"git+https://github.com/empjs/emp.git",directory:"packages/cli"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},keywords:["rspack","rust","typescript"],bin:{emp:"./bin/emp.js"},main:"dist/index.js",types:"dist/index.d.ts",exports:{".":{import:{types:"./dist/index.d.ts",default:"./dist/index.js"},require:{types:"./dist/index.d.cts",default:"./dist/index.cjs"}},"./emp-tsconfig.json":"./emp-tsconfig.json"},scripts:{dev:"tsup --watch --env.ENV dev",build:"tsup --env.ENV prod",ph:"pnpm publish --no-git-checks"},engines:{node:">=16.0.0"},author:"Ken",devDependencies:{"@types/compression":"^1.7.2","@types/connect":"^3.4.38","@types/cors":"^2.8.12","@types/default-gateway":"^7.2.1","@types/fs-extra":"^11.0.4","@types/node":"^20.8.7","@types/react":"^18.3.2","@types/serve-static":"^1.15.8","@types/watchpack":"^2.4.3","@types/webpack":"^5.28.4","@types/webpack-bundle-analyzer":"^4.6.2","@types/webpack-sources":"^3.2.2",tsup:"^8.4.0"},dependencies:{"@empjs/typescript-plugin-css-modules":"1.0.0","@rsdoctor/rspack-plugin":"1.1.8","@rspack/core":"1.4.10","@rspack/dev-server":"1.1.3","@swc/helpers":"^0.5.17",address:"^2.0.2",chalk:"^5.3.0",commander:"^11.1.0",compression:"^1.7.4",connect:"^3.7.0","core-js":"^3.41.0",cors:"^2.8.5","default-gateway":"^7.2.2","fs-extra":"^11.2.0",glob:"^11.0.1","gzip-size":"^7.0.0","html-webpack-plugin":"5.6.3",jiti:"2.0.0","less-loader":"^12.2.0",open:"^10.1.0","sass-embedded":"1.89.2","sass-loader":"^16.0.5","serve-static":"^2.2.0","ts-checker-rspack-plugin":"^1.1.4","webpack-bundle-analyzer":"^4.10.2","@empjs/chain":"workspace:*"}};async function jt(){return D.version(Le.version,"-v, --version").usage("<command> [options]"),D.command("dev").description("Dev \u6A21\u5F0F").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").option("-rd, --doctor","\u5F00\u542Frsdoctor,\u53EF\u901A\u8FC7debug.rsdoctor\u64CD\u4F5C").option("-h, --hot","\u662F\u5426\u4F7F\u7528\u70ED\u66F4\u65B0 \u9ED8\u8BA4\u542F\u52A8").option("-o, --open","\u662F\u5426\u6253\u5F00\u8C03\u8BD5\u9875\u9762 \u9ED8\u8BA4\u4E0D\u6253\u5F00").option("-t, --ts","\u751F\u6210\u7C7B\u578B\u6587\u4EF6 \u9ED8\u8BA4\u4E3A false").option("-pr, --profile","\u7EDF\u8BA1\u6A21\u5757\u6D88\u8017").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").option("-ev, --env-vars <key=value>","\u5B9A\u4E49\u4E00\u4E2A\u73AF\u5883\u53D8\u91CF -ev key=value \u591A\u4E2A\u73AF\u5883\u53D8\u91CF\u91CD\u590D\u8C03\u7528 -ev key=value -ev key=value",(s,e)=>{let[t,i]=s.split("=");return e[t]=i,e},{}).action(async s=>{let{default:e}=await Promise.resolve().then(()=>(kt(),St));await e.setup("dev",s)}),D.command("build").description("Build \u6A21\u5F0F").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").option("-rd, --doctor","\u5F00\u542Frsdoctor,\u53EF\u901A\u8FC7debug.rsdoctor\u64CD\u4F5C").option("-a, --analyze","\u751F\u6210\u5206\u6790\u62A5\u544A \u9ED8\u8BA4\u4E3A false").option("-t, --ts","\u751F\u6210\u7C7B\u578B\u6587\u4EF6 \u9ED8\u8BA4\u4E3A false").option("-pr, --profile","\u7EDF\u8BA1\u6A21\u5757\u6D88\u8017").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").option("-w, --watch","watch \u6A21\u5F0F").option("-sv, --serve","watch \u6A21\u5F0F\u4E0B\u542F\u52A8serve").option("-ev, --env-vars <key=value>","\u5B9A\u4E49\u4E00\u4E2A\u73AF\u5883\u53D8\u91CF -ev key=value \u591A\u4E2A\u73AF\u5883\u53D8\u91CF\u91CD\u590D\u8C03\u7528 -ev key=value -ev key=value",(s,e)=>{let[t,i]=s.split("=");return e[t]=i,e},{}).action(async s=>{let{default:e}=await Promise.resolve().then(()=>(Et(),Pt));await e.setup("build",s)}),D.command("serve").description("Server \u6A21\u5F0F").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").action(async s=>{let{default:e}=await Promise.resolve().then(()=>(je(),Ee));await e.setup("serve",s)}),D.command("dts").description("\u62C9\u53D6 remote \u9879\u76EE\u7684 d.ts").option("-p, --typingsPath <typingsPath>","\u4E0B\u8F7D\u76EE\u5F55").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").action(s=>{}),D.command("init").description("\u521D\u59CB\u5316 emp \u9879\u76EE").option("-d, --data [data]","JSON\u6570\u636E http\u5730\u5740 \u6216\u8005 \u6587\u4EF6\u8DEF\u5F84\u76F8\u5BF9\u3001\u7EDD\u5BF9\u8DEF\u5F84").action(s=>{}),D.parse(Us.argv),D}k();z();function sn(s){return s}export{sn as defineConfig,He as empHelper,Zo as rspack,jt as runScript,a as store};
17
+ `),a.debug.showScriptDebug&&console.log(t?.toString()),e!==null){n.error(e.stack||e),e.message&&n.error(e.message);return}if(!t){n.red("Stats is Undefined.");return}t.hasErrors()&&(n.error(t.toString({all:!1,colors:!0,errors:!0})),n.red("Failed to compile."),process.exit(1)),t.hasWarnings()&&(n.yellow("Compiled with warnings."),n.warn(t.toString({all:!1,chunks:!1,assets:!1,colors:!0,errors:!0,warnings:!0}))),await yt(t),this.startServe(),await a.empConfig.lifeCycle.afterBulid()})}},Is=new $e});o();import{rspack as Zo}from"@rspack/core";o();import Us from"process";import{program as D}from"commander";var Le={name:"@empjs/cli",version:"3.9.1",description:"emp",license:"MIT",type:"module",files:["dist","bin","resource","template","client.d.ts","emp-tsconfig.json"],maintainers:["xuhongbin","ckken","doerme"],repository:{type:"git",url:"git+https://github.com/empjs/emp.git",directory:"packages/cli"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},keywords:["rspack","rust","typescript"],bin:{emp:"./bin/emp.js"},main:"dist/index.js",types:"dist/index.d.ts",exports:{".":{import:{types:"./dist/index.d.ts",default:"./dist/index.js"},require:{types:"./dist/index.d.cts",default:"./dist/index.cjs"}},"./emp-tsconfig.json":"./emp-tsconfig.json"},scripts:{dev:"tsup --watch --env.ENV dev",build:"tsup --env.ENV prod",ph:"pnpm publish --no-git-checks"},engines:{node:">=16.0.0"},author:"Ken",devDependencies:{"@types/compression":"^1.7.2","@types/connect":"^3.4.38","@types/cors":"^2.8.12","@types/default-gateway":"^7.2.1","@types/fs-extra":"^11.0.4","@types/node":"^20.8.7","@types/react":"^18.3.2","@types/serve-static":"^1.15.8","@types/watchpack":"^2.4.3","@types/webpack":"^5.28.4","@types/webpack-bundle-analyzer":"^4.6.2","@types/webpack-sources":"^3.2.2",tsup:"^8.4.0"},dependencies:{"@empjs/typescript-plugin-css-modules":"1.0.0","@rsdoctor/rspack-plugin":"1.1.8","@rspack/core":"1.4.10","@rspack/dev-server":"1.1.3","@swc/helpers":"^0.5.17",address:"^2.0.2",chalk:"^5.3.0",commander:"^11.1.0",compression:"^1.7.4",connect:"^3.7.0","core-js":"^3.41.0",cors:"^2.8.5","default-gateway":"^7.2.2","fs-extra":"^11.2.0",glob:"^11.0.1","gzip-size":"^7.0.0","html-webpack-plugin":"5.6.3",jiti:"2.0.0","less-loader":"^12.2.0",open:"^10.1.0","sass-embedded":"1.89.2","sass-loader":"^16.0.5","serve-static":"^2.2.0","ts-checker-rspack-plugin":"^1.1.4","webpack-bundle-analyzer":"^4.10.2","@empjs/chain":"workspace:*"}};async function jt(){return D.version(Le.version,"-v, --version").usage("<command> [options]"),D.command("dev").description("Dev \u6A21\u5F0F").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").option("-rd, --doctor","\u5F00\u542Frsdoctor,\u53EF\u901A\u8FC7debug.rsdoctor\u64CD\u4F5C").option("-h, --hot","\u662F\u5426\u4F7F\u7528\u70ED\u66F4\u65B0 \u9ED8\u8BA4\u542F\u52A8").option("-o, --open","\u662F\u5426\u6253\u5F00\u8C03\u8BD5\u9875\u9762 \u9ED8\u8BA4\u4E0D\u6253\u5F00").option("-t, --ts","\u751F\u6210\u7C7B\u578B\u6587\u4EF6 \u9ED8\u8BA4\u4E3A false").option("-pr, --profile","\u7EDF\u8BA1\u6A21\u5757\u6D88\u8017").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").option("-ev, --env-vars <key=value>","\u5B9A\u4E49\u4E00\u4E2A\u73AF\u5883\u53D8\u91CF -ev key=value \u591A\u4E2A\u73AF\u5883\u53D8\u91CF\u91CD\u590D\u8C03\u7528 -ev key=value -ev key=value",(s,e)=>{let[t,i]=s.split("=");return e[t]=i,e},{}).action(async s=>{let{default:e}=await Promise.resolve().then(()=>(kt(),St));await e.setup("dev",s)}),D.command("build").description("Build \u6A21\u5F0F").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").option("-rd, --doctor","\u5F00\u542Frsdoctor,\u53EF\u901A\u8FC7debug.rsdoctor\u64CD\u4F5C").option("-a, --analyze","\u751F\u6210\u5206\u6790\u62A5\u544A \u9ED8\u8BA4\u4E3A false").option("-t, --ts","\u751F\u6210\u7C7B\u578B\u6587\u4EF6 \u9ED8\u8BA4\u4E3A false").option("-pr, --profile","\u7EDF\u8BA1\u6A21\u5757\u6D88\u8017").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").option("-w, --watch","watch \u6A21\u5F0F").option("-sv, --serve","watch \u6A21\u5F0F\u4E0B\u542F\u52A8serve").option("-ev, --env-vars <key=value>","\u5B9A\u4E49\u4E00\u4E2A\u73AF\u5883\u53D8\u91CF -ev key=value \u591A\u4E2A\u73AF\u5883\u53D8\u91CF\u91CD\u590D\u8C03\u7528 -ev key=value -ev key=value",(s,e)=>{let[t,i]=s.split("=");return e[t]=i,e},{}).action(async s=>{let{default:e}=await Promise.resolve().then(()=>(Et(),Pt));await e.setup("build",s)}),D.command("serve").description("Server \u6A21\u5F0F").option("-cl, --clearLog <clearLog>","\u6E05\u7A7A\u65E5\u5FD7 \u9ED8\u8BA4\u4E3A true").action(async s=>{let{default:e}=await Promise.resolve().then(()=>(je(),Ee));await e.setup("serve",s)}),D.command("dts").description("\u62C9\u53D6 remote \u9879\u76EE\u7684 d.ts").option("-p, --typingsPath <typingsPath>","\u4E0B\u8F7D\u76EE\u5F55").option("-e, --env <env>","\u90E8\u7F72\u73AF\u5883 dev\u3001test\u3001prod").action(s=>{}),D.command("init").description("\u521D\u59CB\u5316 emp \u9879\u76EE").option("-d, --data [data]","JSON\u6570\u636E http\u5730\u5740 \u6216\u8005 \u6587\u4EF6\u8DEF\u5F84\u76F8\u5BF9\u3001\u7EDD\u5BF9\u8DEF\u5F84").action(s=>{}),D.parse(Us.argv),D}k();z();function sn(s){return s}export{sn as defineConfig,He as empHelper,Zo as rspack,jt as runScript,a as store};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@empjs/cli",
3
- "version": "3.9.1-beta.3",
3
+ "version": "3.9.1",
4
4
  "description": "emp",
5
5
  "license": "MIT",
6
6
  "type": "module",