@lomray/vite-ssr-boost 8.4.3 → 8.4.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lomray/vite-ssr-boost",
3
- "version": "8.4.3",
3
+ "version": "8.4.4",
4
4
  "description": "SSR and streaming for existing Vite + React Router apps in Data mode, without Framework mode",
5
5
  "type": "module",
6
6
  "exports": {
package/services/build.js CHANGED
@@ -1,2 +1,2 @@
1
- import i from"node:child_process";import s from"node:fs";import e from"node:path";import t from"chalk";import{resolveConfig as o}from"vite";import r from"../cli/diagnostic-codes.js";import n from"../cli/helpers/vite-reset-cache.js";import l from"../helpers/create-focus-only.js";import{createDevMarker as c}from"../helpers/dev-marker.js";import d from"../helpers/plugin-config.js";import a from"../helpers/process-stop.js";import u from"./server-config.js";import h from"./ssr-manifest.js";class p{isProd;nodeEnv;buildDir;viteConfig;pluginConfig;params={mode:"",clientOptions:"",serverOptions:"",focusOnly:"app",isWatch:!1,isUnlockRobots:!1,isEject:!1,isServerless:!1,isNoWarnings:!1};abortController=null;runningBuild=[];hasPreviewModeExitListener=!1;diagnosticCodes=new Set;constructor(i){this.params={...this.params,...i}}async makeConfig(){const{mode:i}=this.params;this.viteConfig=await o({},"build",i,"production"),this.pluginConfig=d(this.viteConfig),this.buildDir=e.resolve(this.viteConfig.root,this.viteConfig.build.outDir),this.nodeEnv=process.env.NODE_ENV||"production",this.isProd="production"===this.nodeEnv}clearBuildFolder(){s.existsSync(this.buildDir)&&s.rmSync(this.buildDir,{recursive:!0})}getIsProd(){return this.isProd}getNodeEnv(){return this.nodeEnv}getRunningBuildNames(){return this.runningBuild.map(({name:i})=>i)}promisifyProcess(i,s=!1){const e=new Promise((e,t)=>{i.on("exit",i=>{e(i)}),i.on("close",i=>{e(i)}),i.on("error",i=>{t(i)}),s&&i.stderr?.on("data",i=>{const s=Buffer.from(i).toString();(s.includes("warning")||s.includes("WARNING"))&&e(1)})});i.stdout?.pipe(process.stdout),i.stderr?.pipe(process.stderr);for(const s of[i.stdout,i.stderr]){let i="";s?.on("data",s=>{const e=i+Buffer.from(s).toString();r.filter(i=>e.includes(i)).forEach(i=>this.diagnosticCodes.add(i)),i=e.slice(-80)})}return{promise:e,command:i}}buildManifest(){console.info(t.blue("Building routes manifest file"));const i=u.init({isProd:this.isProd,mode:this.params.mode},{root:this.viteConfig.root,clientFile:this.pluginConfig.clientFile});h.get(i,{buildDir:this.viteConfig.build.outDir,viteAliases:this.viteConfig.resolve.alias,basename:this.viteConfig.base,renderBuiltUrl:this.viteConfig?.experimental?.renderBuiltUrl}).buildRoutesManifest()}writeProductionConfig(){const{base:i,mode:t}=this.viteConfig,{indexFile:o="index.html",serverFile:r="server.ts"}=this.pluginConfig,n={version:1,root:"..",base:i??"/",mode:t??this.params.mode,publicDir:"client",indexFile:e.posix.join("client",o),serverFile:`server/${e.parse(r).name}.js`},l=e.join(this.buildDir,"server");s.mkdirSync(l,{recursive:!0}),s.writeFileSync(e.join(l,"ssr-boost.json"),`${JSON.stringify(n,null,2)}\n`)}unlockRobots(){const i=`${this.buildDir}/client/robots.txt`;if(!s.existsSync(i))return void console.warn(`Failed to unlock robots.txt, file not exist: ${i}`);const e=s.readFileSync(i,{encoding:"utf-8"}).replace(/Disallow: \/$/m,"Allow: /");s.writeFileSync(i,e,{encoding:"utf-8"}),console.info(t.blue("\nrobots.txt unlocked."))}eject(){const i=`${this.buildDir}/server/start.js`;s.writeFileSync(i,"import runProd from '../cli/run-prod.js';\n\nconst VERSION = process.env.VERSION || \"1.0.0\";\nconst PORT = process.env.PORT || 3000;\nconst IS_HOST = process.env.IS_HOST || \"0\";\nconst ONLY_CLIENT = process.env.ONLY_CLIENT || \"0\";\n\nawait runProd({\n version: VERSION,\n isHost: IS_HOST === '1',\n isPrintInfo: true,\n port: PORT,\n focusOnly: ONLY_CLIENT === '1' ? 'client' : 'app',\n });\n",{encoding:"utf-8"})}createServerless(){const i=`${this.buildDir}/server/serverless.js`;s.writeFileSync(i,"import runServerless from '../cli/run-serverless.js';\n\nexport default await runServerless({ version: process.env.VERSION || \"1.0.0\" });\n",{encoding:"utf-8"})}async spawnBuild(s,e,t={}){const{mode:o,isNoWarnings:r}=this.params,{focusOnly:n=this.params.focusOnly,shouldWait:c=!1,env:d={}}=t,a=o&&!e.includes("--mode")?`--mode ${o}`:"",u=this.promisifyProcess(i.spawn(`vite build ${e} ${a} --emptyOutDir`,{signal:this.abortController.signal,stdio:[process.stdin,"pipe","pipe"],shell:!0,env:{...process.env,...d,FORCE_COLOR:"2",SSR_BOOST_IS_SSR:l(n).isOnlyClient()?"0":"1",SSR_BOOST_ACTION:global.viteBoostAction}}),r);this.runningBuild.push({name:s,buildProcess:u}),c&&await this.waitLastBuild()}async waitLastBuild(){const i=this.runningBuild.at(-1);if(!i)return;const s=await i.buildProcess.promise;a(s,!0)}runPreviewMode(){this.hasPreviewModeExitListener||(process.on("exit",()=>{this.abortController.abort()}),this.hasPreviewModeExitListener=!0);const{onFinish:i}=this.params;let s=this.runningBuild.length;const e=t=>{Buffer.from(t).toString().includes("built in")&&(s-=1,s||(this.runningBuild.forEach(({buildProcess:i})=>{i.command.stdout?.removeListener("data",e)}),c(this.isProd,this.viteConfig),this.writeProductionConfig(),i?.()))};this.runningBuild.forEach(({buildProcess:i})=>{i.command.stdout?.on("data",e)})}async build(){await this.makeConfig(),await n(),this.clearBuildFolder(),this.diagnosticCodes.clear();const{clientOptions:i,serverOptions:t,onFinish:o,isWatch:r,focusOnly:d,isEject:a,isServerless:u,isUnlockRobots:h}=this.params,{outDir:p}=this.viteConfig.build,f=l(d);this.abortController=new AbortController,this.runningBuild=[],f.isClient()&&await this.spawnBuild("client",`${i} --outDir ${p}/client`,{shouldWait:!r}),f.isServer()&&(await this.spawnBuild("server",`${t} --outDir ${p}/server --ssr ${this.pluginConfig.serverFile}`,{shouldWait:!r}),r||(this.buildManifest(),a&&this.eject(),u&&this.createServerless()));const{entrypoint:m}=this.pluginConfig;if(m?.length&&f.isEntrypoint())for(const{name:i,type:s,serverFile:e,buildOptions:t=""}of m){const o=e&&"ssr"===s?`--ssr ${e}`:"";await this.spawnBuild(i,`${t} ${o} --outDir ${p}/${i}`,{shouldWait:!r,focusOnly:"ssr"===s?"server":"client",env:{SSR_BOOST_CUSTOM_ENTRYPOINT_BUILD_NAME:i}})}r?this.runPreviewMode():(h&&this.unlockRobots(),c(this.isProd,this.viteConfig),this.writeProductionConfig(),s.mkdirSync(this.buildDir,{recursive:!0}),s.writeFileSync(e.join(this.buildDir,"ssr-boost-diagnostics.json"),JSON.stringify({codes:[...this.diagnosticCodes].sort((i,s)=>i.localeCompare(s))},null,2)),o?.())}}export{p as default};
1
+ import i from"node:child_process";import s from"node:fs";import e from"node:path";import t from"chalk";import{resolveConfig as o}from"vite";import r from"../cli/diagnostic-codes.js";import n from"../cli/helpers/vite-reset-cache.js";import l from"../constants/plugin-name.js";import c from"../helpers/create-focus-only.js";import{createDevMarker as d}from"../helpers/dev-marker.js";import a from"../helpers/plugin-config.js";import u from"../helpers/process-stop.js";import h from"./server-config.js";import p from"./ssr-manifest.js";class f{isProd;nodeEnv;buildDir;viteConfig;pluginConfig;params={mode:"",clientOptions:"",serverOptions:"",focusOnly:"app",isWatch:!1,isUnlockRobots:!1,isEject:!1,isServerless:!1,isNoWarnings:!1};abortController=null;runningBuild=[];hasPreviewModeExitListener=!1;diagnosticCodes=new Set;constructor(i){this.params={...this.params,...i}}async makeConfig(){const{mode:i}=this.params;this.viteConfig=await o({},"build",i,"production"),this.pluginConfig=a(this.viteConfig),this.buildDir=e.resolve(this.viteConfig.root,this.viteConfig.build.outDir),this.nodeEnv=process.env.NODE_ENV||"production",this.isProd="production"===this.nodeEnv}clearBuildFolder(){s.existsSync(this.buildDir)&&s.rmSync(this.buildDir,{recursive:!0})}getIsProd(){return this.isProd}getNodeEnv(){return this.nodeEnv}getRunningBuildNames(){return this.runningBuild.map(({name:i})=>i)}promisifyProcess(i,s=!1){const e=new Promise((e,t)=>{i.on("exit",i=>{e(i)}),i.on("close",i=>{e(i)}),i.on("error",i=>{t(i)}),s&&i.stderr?.on("data",i=>{const s=Buffer.from(i).toString();(s.includes("warning")||s.includes("WARNING"))&&e(1)})});i.stdout?.pipe(process.stdout),i.stderr?.pipe(process.stderr);for(const s of[i.stdout,i.stderr]){let i="";s?.on("data",s=>{const e=i+Buffer.from(s).toString();r.filter(i=>e.includes(i)).forEach(i=>this.diagnosticCodes.add(i)),i=e.slice(-80)})}return{promise:e,command:i}}buildManifest(){console.info(t.blue("Building routes manifest file"));const i=h.init({isProd:this.isProd,mode:this.params.mode},{root:this.viteConfig.root,clientFile:this.pluginConfig.clientFile});p.get(i,{buildDir:this.viteConfig.build.outDir,viteAliases:this.viteConfig.resolve.alias,basename:this.viteConfig.base,renderBuiltUrl:this.viteConfig?.experimental?.renderBuiltUrl}).buildRoutesManifest()}writeProductionConfig(){const{base:i,mode:t}=this.viteConfig,{indexFile:o="index.html",serverFile:r="server.ts"}=this.pluginConfig,n={version:1,root:"..",base:i??"/",mode:t??this.params.mode,publicDir:"client",indexFile:e.posix.join("client",o),serverFile:`server/${e.parse(r).name}.js`},l=e.join(this.buildDir,"server");s.mkdirSync(l,{recursive:!0}),s.writeFileSync(e.join(l,"ssr-boost.json"),`${JSON.stringify(n,null,2)}\n`)}unlockRobots(){const i=`${this.buildDir}/client/robots.txt`;if(!s.existsSync(i))return void console.warn(`Failed to unlock robots.txt, file not exist: ${i}`);const e=s.readFileSync(i,{encoding:"utf-8"}).replace(/Disallow: \/$/m,"Allow: /");s.writeFileSync(i,e,{encoding:"utf-8"}),console.info(t.blue("\nrobots.txt unlocked."))}eject(){const i=`${this.buildDir}/server/start.js`,e=`import runProd from '${l}/cli/run-prod.js';\n\nconst VERSION = process.env.VERSION || "1.0.0";\nconst PORT = process.env.PORT || 3000;\nconst IS_HOST = process.env.IS_HOST || "0";\nconst ONLY_CLIENT = process.env.ONLY_CLIENT || "0";\n\nawait runProd({\n version: VERSION,\n isHost: IS_HOST === '1',\n isPrintInfo: true,\n port: PORT,\n focusOnly: ONLY_CLIENT === '1' ? 'client' : 'app',\n });\n`;s.writeFileSync(i,e,{encoding:"utf-8"})}createServerless(){const i=`${this.buildDir}/server/serverless.js`,e=`import runServerless from '${l}/cli/run-serverless.js';\n\nexport default await runServerless({ version: process.env.VERSION || "1.0.0" });\n`;s.writeFileSync(i,e,{encoding:"utf-8"})}async spawnBuild(s,e,t={}){const{mode:o,isNoWarnings:r}=this.params,{focusOnly:n=this.params.focusOnly,shouldWait:l=!1,env:d={}}=t,a=o&&!e.includes("--mode")?`--mode ${o}`:"",u=this.promisifyProcess(i.spawn(`vite build ${e} ${a} --emptyOutDir`,{signal:this.abortController.signal,stdio:[process.stdin,"pipe","pipe"],shell:!0,env:{...process.env,...d,FORCE_COLOR:"2",SSR_BOOST_IS_SSR:c(n).isOnlyClient()?"0":"1",SSR_BOOST_ACTION:global.viteBoostAction}}),r);this.runningBuild.push({name:s,buildProcess:u}),l&&await this.waitLastBuild()}async waitLastBuild(){const i=this.runningBuild.at(-1);if(!i)return;const s=await i.buildProcess.promise;u(s,!0)}runPreviewMode(){this.hasPreviewModeExitListener||(process.on("exit",()=>{this.abortController.abort()}),this.hasPreviewModeExitListener=!0);const{onFinish:i}=this.params;let s=this.runningBuild.length;const e=t=>{Buffer.from(t).toString().includes("built in")&&(s-=1,s||(this.runningBuild.forEach(({buildProcess:i})=>{i.command.stdout?.removeListener("data",e)}),d(this.isProd,this.viteConfig),this.writeProductionConfig(),i?.()))};this.runningBuild.forEach(({buildProcess:i})=>{i.command.stdout?.on("data",e)})}async build(){await this.makeConfig(),await n(),this.clearBuildFolder(),this.diagnosticCodes.clear();const{clientOptions:i,serverOptions:t,onFinish:o,isWatch:r,focusOnly:l,isEject:a,isServerless:u,isUnlockRobots:h}=this.params,{outDir:p}=this.viteConfig.build,f=c(l);this.abortController=new AbortController,this.runningBuild=[],f.isClient()&&await this.spawnBuild("client",`${i} --outDir ${p}/client`,{shouldWait:!r}),f.isServer()&&(await this.spawnBuild("server",`${t} --outDir ${p}/server --ssr ${this.pluginConfig.serverFile}`,{shouldWait:!r}),r||(this.buildManifest(),a&&this.eject(),u&&this.createServerless()));const{entrypoint:m}=this.pluginConfig;if(m?.length&&f.isEntrypoint())for(const{name:i,type:s,serverFile:e,buildOptions:t=""}of m){const o=e&&"ssr"===s?`--ssr ${e}`:"";await this.spawnBuild(i,`${t} ${o} --outDir ${p}/${i}`,{shouldWait:!r,focusOnly:"ssr"===s?"server":"client",env:{SSR_BOOST_CUSTOM_ENTRYPOINT_BUILD_NAME:i}})}r?this.runPreviewMode():(h&&this.unlockRobots(),d(this.isProd,this.viteConfig),this.writeProductionConfig(),s.mkdirSync(this.buildDir,{recursive:!0}),s.writeFileSync(e.join(this.buildDir,"ssr-boost-diagnostics.json"),JSON.stringify({codes:[...this.diagnosticCodes].sort((i,s)=>i.localeCompare(s))},null,2)),o?.())}}export{f as default};
2
2
  //# sourceMappingURL=build.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sources":["../../src/services/build.ts"],"sourcesContent":[null],"names":["Build","isProd","nodeEnv","buildDir","viteConfig","pluginConfig","params","mode","clientOptions","serverOptions","focusOnly","isWatch","isUnlockRobots","isEject","isServerless","isNoWarnings","abortController","runningBuild","hasPreviewModeExitListener","diagnosticCodes","Set","constructor","this","makeConfig","resolveConfig","getPluginConfig","path","resolve","root","build","outDir","process","env","NODE_ENV","clearBuildFolder","fs","existsSync","rmSync","recursive","getIsProd","getNodeEnv","getRunningBuildNames","map","name","promisifyProcess","command","isRejectWarnings","promise","Promise","reject","on","code","message","stderr","buff","msg","Buffer","from","toString","includes","stdout","pipe","stream","tail","chunk","text","DIAGNOSTIC_CODES","filter","forEach","add","slice","buildManifest","console","info","chalk","blue","serverConfig","ServerConfig","init","clientFile","SsrManifest","get","viteAliases","alias","basename","base","renderBuiltUrl","experimental","buildRoutesManifest","writeProductionConfig","indexFile","serverFile","config","version","publicDir","posix","join","parse","directory","mkdirSync","writeFileSync","JSON","stringify","unlockRobots","robotsFile","warn","data","readFileSync","encoding","replace","eject","entrypoint","createServerless","spawnBuild","buildOptions","shouldWait","modeOpt","buildProcess","childProcess","spawn","signal","stdio","stdin","shell","FORCE_COLOR","SSR_BOOST_IS_SSR","createFocusOnly","isOnlyClient","SSR_BOOST_ACTION","global","viteBoostAction","push","waitLastBuild","latestProcess","at","exitCode","processStop","runPreviewMode","abort","onFinish","buildCount","length","listener","removeListener","createDevMarker","viteResetCache","clear","focus","AbortController","isClient","isServer","isEntrypoint","type","cliOptions","SSR_BOOST_CUSTOM_ENTRYPOINT_BUILD_NAME","codes","sort","a","b","localeCompare"],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sources":["../../src/services/build.ts"],"sourcesContent":[null],"names":["Build","isProd","nodeEnv","buildDir","viteConfig","pluginConfig","params","mode","clientOptions","serverOptions","focusOnly","isWatch","isUnlockRobots","isEject","isServerless","isNoWarnings","abortController","runningBuild","hasPreviewModeExitListener","diagnosticCodes","Set","constructor","this","makeConfig","resolveConfig","getPluginConfig","path","resolve","root","build","outDir","process","env","NODE_ENV","clearBuildFolder","fs","existsSync","rmSync","recursive","getIsProd","getNodeEnv","getRunningBuildNames","map","name","promisifyProcess","command","isRejectWarnings","promise","Promise","reject","on","code","message","stderr","buff","msg","Buffer","from","toString","includes","stdout","pipe","stream","tail","chunk","text","DIAGNOSTIC_CODES","filter","forEach","add","slice","buildManifest","console","info","chalk","blue","serverConfig","ServerConfig","init","clientFile","SsrManifest","get","viteAliases","alias","basename","base","renderBuiltUrl","experimental","buildRoutesManifest","writeProductionConfig","indexFile","serverFile","config","version","publicDir","posix","join","parse","directory","mkdirSync","writeFileSync","JSON","stringify","unlockRobots","robotsFile","warn","data","readFileSync","encoding","replace","eject","entrypoint","script","PLUGIN_NAME","createServerless","spawnBuild","buildOptions","shouldWait","modeOpt","buildProcess","childProcess","spawn","signal","stdio","stdin","shell","FORCE_COLOR","SSR_BOOST_IS_SSR","createFocusOnly","isOnlyClient","SSR_BOOST_ACTION","global","viteBoostAction","push","waitLastBuild","latestProcess","at","exitCode","processStop","runPreviewMode","abort","onFinish","buildCount","length","listener","removeListener","createDevMarker","viteResetCache","clear","focus","AbortController","isClient","isServer","isEntrypoint","type","cliOptions","SSR_BOOST_CUSTOM_ENTRYPOINT_BUILD_NAME","codes","sort","a","b","localeCompare"],"mappings":"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"}