@flatjs/evolve 1.8.1-next.108 → 1.8.1-next.110
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/CHANGELOG.md +15 -0
- package/dist/constants.d.ts +9 -0
- package/dist/constants.js +1 -1
- package/dist/create-webpack/create-optimization.d.ts +2 -1
- package/dist/create-webpack/create-optimization.js +1 -1
- package/dist/create-webpack/load-webpack-config.js +1 -1
- package/dist/dev-server/add-compiler-to-dev-server.d.ts +2 -1
- package/dist/dev-server/add-compiler-to-dev-server.js +1 -1
- package/dist/dev-server/create-dev-server-compiler-tasks.d.ts +1 -1
- package/dist/dev-server/create-dev-server-compiler-tasks.js +1 -1
- package/dist/dev-server/create-dev-server.d.ts +1 -0
- package/dist/dev-server/create-dev-server.js +1 -1
- package/dist/dev-server/middlewares/create-page-middleware.js +1 -1
- package/dist/helpers/split-to-multi-compiler.d.ts +1 -1
- package/dist/helpers/split-to-multi-compiler.js +1 -1
- package/dist/main/prepare-serve.js +1 -1
- package/dist/main/start-one-entry-build.js +1 -1
- package/dist/types/types-multi-html.d.ts +2 -0
- package/package.json +2 -2
- package/templates/html-plugin/index-dev.html +28 -24
- package/templates/html-plugin/index-inte.html +28 -24
- package/templates/html-plugin/index-inte2.html +28 -24
- package/templates/html-plugin/index-inte3.html +28 -24
- package/templates/html-plugin/index-inte4.html +28 -24
- package/templates/html-plugin/index-me.html +28 -24
- package/templates/html-plugin/index-prod.html +28 -24
- package/templates/html-plugin/index-rc.html +28 -24
- package/templates/html-plugin/index-uat.html +28 -24
- package/templates/module.html +47 -37
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @flatjs/evolve
|
|
2
2
|
|
|
3
|
+
## 1.8.1-next.110
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 0508747: Force client websocketURL hostname to local publicIp for `webpack-dev-server`
|
|
8
|
+
- Updated dependencies [0508747]
|
|
9
|
+
- @flatjs/mock@1.8.1-next.83
|
|
10
|
+
|
|
11
|
+
## 1.8.1-next.109
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- a5e6989: formating templates
|
|
16
|
+
- 9760f0a: Make `react-fast-refresh` works correct on iframe and no `devtool` environment
|
|
17
|
+
|
|
3
18
|
## 1.8.1-next.108
|
|
4
19
|
|
|
5
20
|
### Patch Changes
|
package/dist/constants.d.ts
CHANGED
|
@@ -13,3 +13,12 @@ export declare const viewportScripts = "(function(d){var j;var b=1;var i=1;var h
|
|
|
13
13
|
* https://polyfill.io
|
|
14
14
|
*/
|
|
15
15
|
export declare const polyfill: string[];
|
|
16
|
+
/**
|
|
17
|
+
* Applies the react-refresh Babel plugin on non-production modes only
|
|
18
|
+
* Ensure `react-refresh/runtime` is hoisted and shared
|
|
19
|
+
* https://github.com/pmmmwh/react-refresh-webpack-plugin/blob/main/docs/TROUBLESHOOTING.md#externalising-react
|
|
20
|
+
*/
|
|
21
|
+
export declare const devReactFastRefresh: {
|
|
22
|
+
runtime: string;
|
|
23
|
+
reactRefreshSetup: string;
|
|
24
|
+
};
|
package/dist/constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const moduleName="@flatjs/evolve";export const configFileName="flatjs-evolve";export const viewportScripts='(function(d){var j;var b=1;var i=1;var h=750;var c=100;function e(s,o){var q=d.document;var l=q.documentElement;var k=navigator.userAgent;var m=k.toLowerCase().indexOf("android")>-1;i=d.devicePixelRatio||1;if(i>3){i=3}if(m){i=1}console.log("current devicePixelRatio:",i);l.setAttribute("data-dpr",i.toString());var p=q.querySelector(\'meta[name="viewport"]\');if(!p){b=1/i;p=q.createElement("meta");p.setAttribute("name","viewport");q.head.appendChild(p);p.setAttribute(["content","width=device-width,user-scalable=no,initial-scale=",b,",maximum-scale=",b,",minimum-scale=",b].join(""))}function n(){var t=document.documentElement.clientWidth;j=t/o*(s/i)*i;q.documentElement.style.fontSize=String(j)+"px"}var r;d.addEventListener("resize",function(){clearTimeout(r);r=setTimeout(n,300)},false);d.addEventListener("onload",n,false);n()}e(c,h);window.fabricViewport={currRem:j,currDpr:i,currScale:b,dpiPX2px:function f(k){return parseFloat(k.toString())/j*100+"px"},px2DPIpx:function a(k){return parseFloat(k.toString())/100*j+"px"},px2rem:function g(k){return parseFloat(k.toString())/100+"rem"}}})(window);';export const polyfill=["https://polyfill.io/v3/polyfill.min.js?features=Array.from%2CArray.isArray%2CArray.of%2CArray.prototype.entries%2CArray.prototype.every%2CArray.prototype.fill%2CArray.prototype.filter%2CArray.prototype.find%2CArray.prototype.findIndex%2CArray.prototype.flat%2CArray.prototype.forEach%2CArray.prototype.flatMap%2CArray.prototype.keys%2CArray.prototype.indexOf%2CArray.prototype.includes%2CArray.prototype.lastIndexOf%2CArray.prototype.map%2CArray.prototype.reduce%2CArray.prototype.reduceRight%2CArray.prototype.some%2CArray.prototype.sort%2CArray.prototype.values%2CArrayBuffer%2CBlob%2CDataView%2CDate.now%2CObject.assign%2CObject.create%2CObject.defineProperties%2CObject.defineProperty%2CObject.entries%2CObject.freeze%2CObject.fromEntries%2CObject.getOwnPropertySymbols%2CObject.getOwnPropertyNames%2CObject.getOwnPropertyDescriptors%2CObject.getOwnPropertyDescriptor%2CObject.getPrototypeOf%2CObject.is%2CObject.isExtensible%2CObject.isFrozen%2CObject.isSealed%2CObject.keys%2CObject.values%2CObject.setPrototypeOf%2CPromise%2CPromise.prototype.finally%2CReflect%2CReflect.apply%2CReflect.construct%2CReflect.defineProperty%2CReflect.deleteProperty%2CReflect.getPrototypeOf%2CReflect.getOwnPropertyDescriptor%2CReflect.get%2CReflect.ownKeys%2CReflect.isExtensible%2CReflect.has%2CReflect.preventExtensions%2CReflect.set%2CReflect.setPrototypeOf%2CSet%2CString.prototype.trimStart%2CString.prototype.trimEnd%2CString.prototype.trim%2CString.prototype.startsWith%2CString.prototype.repeat%2CString.prototype.replaceAll%2CString.prototype.padStart%2CString.prototype.padEnd%2CMap%2CObject.seal%2Cconsole.groupEnd%2Cconsole.group"];
|
|
1
|
+
export const moduleName="@flatjs/evolve";export const configFileName="flatjs-evolve";export const viewportScripts='(function(d){var j;var b=1;var i=1;var h=750;var c=100;function e(s,o){var q=d.document;var l=q.documentElement;var k=navigator.userAgent;var m=k.toLowerCase().indexOf("android")>-1;i=d.devicePixelRatio||1;if(i>3){i=3}if(m){i=1}console.log("current devicePixelRatio:",i);l.setAttribute("data-dpr",i.toString());var p=q.querySelector(\'meta[name="viewport"]\');if(!p){b=1/i;p=q.createElement("meta");p.setAttribute("name","viewport");q.head.appendChild(p);p.setAttribute(["content","width=device-width,user-scalable=no,initial-scale=",b,",maximum-scale=",b,",minimum-scale=",b].join(""))}function n(){var t=document.documentElement.clientWidth;j=t/o*(s/i)*i;q.documentElement.style.fontSize=String(j)+"px"}var r;d.addEventListener("resize",function(){clearTimeout(r);r=setTimeout(n,300)},false);d.addEventListener("onload",n,false);n()}e(c,h);window.fabricViewport={currRem:j,currDpr:i,currScale:b,dpiPX2px:function f(k){return parseFloat(k.toString())/j*100+"px"},px2DPIpx:function a(k){return parseFloat(k.toString())/100*j+"px"},px2rem:function g(k){return parseFloat(k.toString())/100+"rem"}}})(window);';export const polyfill=["https://polyfill.io/v3/polyfill.min.js?features=Array.from%2CArray.isArray%2CArray.of%2CArray.prototype.entries%2CArray.prototype.every%2CArray.prototype.fill%2CArray.prototype.filter%2CArray.prototype.find%2CArray.prototype.findIndex%2CArray.prototype.flat%2CArray.prototype.forEach%2CArray.prototype.flatMap%2CArray.prototype.keys%2CArray.prototype.indexOf%2CArray.prototype.includes%2CArray.prototype.lastIndexOf%2CArray.prototype.map%2CArray.prototype.reduce%2CArray.prototype.reduceRight%2CArray.prototype.some%2CArray.prototype.sort%2CArray.prototype.values%2CArrayBuffer%2CBlob%2CDataView%2CDate.now%2CObject.assign%2CObject.create%2CObject.defineProperties%2CObject.defineProperty%2CObject.entries%2CObject.freeze%2CObject.fromEntries%2CObject.getOwnPropertySymbols%2CObject.getOwnPropertyNames%2CObject.getOwnPropertyDescriptors%2CObject.getOwnPropertyDescriptor%2CObject.getPrototypeOf%2CObject.is%2CObject.isExtensible%2CObject.isFrozen%2CObject.isSealed%2CObject.keys%2CObject.values%2CObject.setPrototypeOf%2CPromise%2CPromise.prototype.finally%2CReflect%2CReflect.apply%2CReflect.construct%2CReflect.defineProperty%2CReflect.deleteProperty%2CReflect.getPrototypeOf%2CReflect.getOwnPropertyDescriptor%2CReflect.get%2CReflect.ownKeys%2CReflect.isExtensible%2CReflect.has%2CReflect.preventExtensions%2CReflect.set%2CReflect.setPrototypeOf%2CSet%2CString.prototype.trimStart%2CString.prototype.trimEnd%2CString.prototype.trim%2CString.prototype.startsWith%2CString.prototype.repeat%2CString.prototype.replaceAll%2CString.prototype.padStart%2CString.prototype.padEnd%2CMap%2CObject.seal%2Cconsole.groupEnd%2Cconsole.group"];export const devReactFastRefresh={runtime:"runtime",reactRefreshSetup:"reactRefreshSetup"};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { type Configuration } from 'webpack';
|
|
2
|
+
import { type EntryMapItem } from '../types/types-entry-map.js';
|
|
2
3
|
import { type FlatEvolveWebpackOptions } from '../types/types-webpack.js';
|
|
3
|
-
export declare const createOptimization: (serveMode: boolean, webpackOptions
|
|
4
|
+
export declare const createOptimization: (serveMode: boolean, webpackOptions: FlatEvolveWebpackOptions | undefined, entryItem: EntryMapItem) => Configuration['optimization'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createMinimizers}from"../minimizer/index.js";export const createOptimization=(e,i)=>({nodeEnv:e?"development":"production",chunkIds:"named",moduleIds:"named",minimize:!1!==i?.minimizer&&!e,minimizer:createMinimizers(e,i),splitChunks:{name:!1,chunks:"all",minSize:25e5,cacheGroups:{default:!1,defaultVendors:!1}}});
|
|
1
|
+
import{join}from"node:path";import{devReactFastRefresh}from"../constants.js";import{createMinimizers}from"../minimizer/index.js";export const createOptimization=(e,i={},n)=>({nodeEnv:e?"development":"production",chunkIds:"named",moduleIds:"named",runtimeChunk:!!e&&{name:()=>join(n[0],devReactFastRefresh.runtime)},minimize:!1!==i?.minimizer&&!e,minimizer:createMinimizers(e,i),splitChunks:{name:!1,chunks:"all",minSize:25e5,cacheGroups:{default:!1,defaultVendors:!1}}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{assertOnlySingleEntryItem}from"../helpers/assert-only-single-entry-item.js";import{createExternals}from"./create-externals.js";import{createOptimization}from"./create-optimization.js";import{createOutput}from"./create-output.js";import{createPerformance}from"./create-performance.js";import{createPlugins}from"./create-plugins.js";import{createResolve}from"./create-resolve.js";import{createRuleSets}from"./create-rule-sets.js";export const loadWebpackConfig=async(e,t,r)=>{const a="development"===e,{projectCwd:o,webpack:s,devServer:n}=r,c=n?.watchOptions,i=assertOnlySingleEntryItem(t,r),m=createRuleSets(a,i,r);return{mode:e,plugins:await createPlugins(a,i,r),watchOptions:c,output:await createOutput(a,r),context:o,target:s?.target??["web","es5"],resolve:createResolve(o,s),module:{rules:m},devtool:a?"eval-source-map":s?.sourceMap||!1,externals:createExternals(s?.externals,i),performance:createPerformance(a,s?.performance),optimization:createOptimization(a,s),infrastructureLogging:s?.infrastructureLogging??{level:"warn"},stats:s?.stats??{preset:"minimal"},cache:{type:"memory"}}};
|
|
1
|
+
import{assertOnlySingleEntryItem}from"../helpers/assert-only-single-entry-item.js";import{createExternals}from"./create-externals.js";import{createOptimization}from"./create-optimization.js";import{createOutput}from"./create-output.js";import{createPerformance}from"./create-performance.js";import{createPlugins}from"./create-plugins.js";import{createResolve}from"./create-resolve.js";import{createRuleSets}from"./create-rule-sets.js";export const loadWebpackConfig=async(e,t,r)=>{const a="development"===e,{projectCwd:o,webpack:s,devServer:n}=r,c=n?.watchOptions,i=assertOnlySingleEntryItem(t,r),m=createRuleSets(a,i,r);return{mode:e,plugins:await createPlugins(a,i,r),watchOptions:c,output:await createOutput(a,r),context:o,target:s?.target??["web","es5"],resolve:createResolve(o,s),module:{rules:m},devtool:a?"eval-source-map":s?.sourceMap||!1,externals:createExternals(s?.externals,i),performance:createPerformance(a,s?.performance),optimization:createOptimization(a,s,i),infrastructureLogging:s?.infrastructureLogging??{level:"warn"},stats:s?.stats??{preset:"minimal"},cache:{type:"memory"}}};
|
|
@@ -5,6 +5,7 @@ import { type FlatEvolveOptions } from '../types/types-options.js';
|
|
|
5
5
|
* @param compiler Webpack compiler(s)
|
|
6
6
|
* @param enableHmr Value indicates if we need to liveReload or `HMR`
|
|
7
7
|
* @param devPort The port number of `@flatjs/mock`
|
|
8
|
+
* @param publicIp The public ip address of local server
|
|
8
9
|
* @param evolveOptions The configuration of `@flatjs/evolve` (FlatEvolveOptions)
|
|
9
10
|
*/
|
|
10
|
-
export declare const addCompilerToDevServer: (compiler: Compiler, enableHmr: boolean, devPort: number, evolveOptions: FlatEvolveOptions) => Promise<boolean>;
|
|
11
|
+
export declare const addCompilerToDevServer: (compiler: Compiler, enableHmr: boolean, devPort: number, publicIp: string, evolveOptions: FlatEvolveOptions) => Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{join}from"node:path";import WebpackDevServer from"webpack-dev-server";export const addCompilerToDevServer=(e,r,t,
|
|
1
|
+
import{join}from"node:path";import WebpackDevServer from"webpack-dev-server";export const addCompilerToDevServer=(e,r,o,t,s)=>{const{projectCwd:p,devServer:i}=s,l=new WebpackDevServer({server:{type:i?.https?"https":"http",options:{...i?.https}},open:!1,compress:!0,port:o,hot:r,liveReload:!r,allowedHosts:"all",static:{directory:`${join(p,"/public")}`},headers:{"Access-Control-Allow-Origin":"*"},client:{progress:!0,overlay:i?.clientOverlay,webSocketURL:{hostname:t||void 0}}},e);return new Promise(((e,r)=>{l.startCallback((o=>{if(o)return r(o);e(!0)}))}))};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { type FlatEvolveOptions } from '../types/types-options.js';
|
|
2
2
|
import { type EvolveDevServerEntryMap } from './middlewares/create-page-middleware.js';
|
|
3
|
-
export declare const createDevServerCompilerTasks: (projectCwd: string, mainPage: string, servedDevServerEntries: EvolveDevServerEntryMap, evolveOptions: FlatEvolveOptions) => Promise<Promise<boolean>[]>;
|
|
3
|
+
export declare const createDevServerCompilerTasks: (projectCwd: string, mainPage: string, publicIp: string, servedDevServerEntries: EvolveDevServerEntryMap, evolveOptions: FlatEvolveOptions) => Promise<Promise<boolean>[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{relative}from"node:path";import{chalk,logger,mergeOptions,urlJoin}from"@flatjs/common";import webpack from"webpack";import{loadWebpackConfig}from"../create-webpack/load-webpack-config.js";import{shouldEnableReactFastRefresh}from"../helpers/should-enable-react-fast-refresh.js";import{splitToMultiCompilerConfigs}from"../helpers/split-to-multi-compiler.js";import{addCompilerToDevServer}from"./add-compiler-to-dev-server.js";export const createDevServerCompilerTasks=async(e,o,r,t)=>{const i=[];for(const[
|
|
1
|
+
import{relative}from"node:path";import{chalk,logger,mergeOptions,urlJoin}from"@flatjs/common";import webpack from"webpack";import{loadWebpackConfig}from"../create-webpack/load-webpack-config.js";import{shouldEnableReactFastRefresh}from"../helpers/should-enable-react-fast-refresh.js";import{splitToMultiCompilerConfigs}from"../helpers/split-to-multi-compiler.js";import{addCompilerToDevServer}from"./add-compiler-to-dev-server.js";export const createDevServerCompilerTasks=async(e,o,r,t,a)=>{const i=[];for(const[n,l]of Object.entries(t)){const s=l.entryConfig,p=s.options?.moduleFederation,c=shouldEnableReactFastRefresh(!0,[n,s],a);(p?.remotes||[]).forEach((e=>{e.endpoint=e=>{const o=t[e];if(!o)throw new Error(`No servedDevServerEntry found via "${e}"`);return urlJoin(o?.devServerHostUri,["/public"])}}));const{devServerPort:m,devServerHostUri:f}=t[n],d={[n]:s},h=urlJoin(f,["public"]),v=await loadWebpackConfig("development",d,mergeOptions(a,{webpack:{publicPath:h}})),u=shouldEnableReactFastRefresh(!0,[n,s],a),g=webpack(splitToMultiCompilerConfigs(d,v,a,u)[0]);i.push(addCompilerToDevServer(g,c,m,r,a));const b=g.name||"";g.hooks.invalid.tap("fileChange",(o=>{const r=relative(e,o||"");logger.info(`file change ➩ ${chalk(["cyan"])(r)}`,b)})),g.hooks.done.tap("compileDone",(()=>{logger.info(`debug page ➩ ${chalk(["cyan"])(o)}`,b)}))}return i};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import https from"node:https";import{prepareMockDomain}from"@flatjs/mock";import express from"express";export const createDevServer=async e=>{const r=express(),t=e.devServer?.mockOptions,{mockPort:o,hostUri:s}=await prepareMockDomain(t||{});return new Promise((t=>{const
|
|
1
|
+
import https from"node:https";import{prepareMockDomain}from"@flatjs/mock";import express from"express";export const createDevServer=async e=>{const r=express(),t=e.devServer?.mockOptions,{mockPort:o,hostUri:p,publicIp:s}=await prepareMockDomain(t||{});return new Promise((t=>{const i=e.devServer?.https?https.createServer(e.devServer?.https,r):r;r.set("hostUri",p),i.listen(o,(()=>{t({app:r,publicIp:s,devHostUri:p,devPort:o})}))}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{existsSync,readFileSync}from"node:fs";import{isAbsolute,join}from"node:path";import{ensureSlash,urlJoin}from"@flatjs/common";import _ from"lodash";import{allowPx2remForModule}from"../../helpers/allow-px2rem-for-module.js";import{getHtmlPluginConfig}from"../../helpers/get-html-plugin-config.js";import{getPackageDir}from"../../helpers/get-pacakge-dir.js";import{normalizeEvolveEntryName}from"../../helpers/normalize-entry-map.js";import{injectFederationScripts}from"../../helpers/script-injects.js";const getPageMainHtml=async(e,t,
|
|
1
|
+
import{existsSync,readFileSync}from"node:fs";import{isAbsolute,join}from"node:path";import{ensureSlash,urlJoin}from"@flatjs/common";import _ from"lodash";import{devReactFastRefresh}from"../../constants.js";import{allowPx2remForModule}from"../../helpers/allow-px2rem-for-module.js";import{getHtmlPluginConfig}from"../../helpers/get-html-plugin-config.js";import{getPackageDir}from"../../helpers/get-pacakge-dir.js";import{normalizeEvolveEntryName}from"../../helpers/normalize-entry-map.js";import{injectFederationScripts}from"../../helpers/script-injects.js";import{shouldEnableReactFastRefresh}from"../../helpers/should-enable-react-fast-refresh.js";const getPageMainHtml=async(e,t,r)=>{const l=getPackageDir(),a=readFileSync(join(l,"./templates/main.html"),"utf-8"),o=[],i=r.projectVirtualPath.replace(/^\//,"");for(const[l,a]of Object.entries(r.entryMap)){const r=a.options?.servePageMainLinkFn||(e=>e),s=Object.keys(e).includes(l),n=normalizeEvolveEntryName(l,i),m=urlJoin(t,["pages",n],{env:"me"});o.push({name:l.replace(i,"").replace(/^\//,""),link:r(m,{hostUri:t,entryName:l,virtualPath:i}),flagText:s?"serve":"static",isServed:s?1:0})}const s={title:"@flatjs/evolve",modules:o.sort(((e,t)=>t.isServed-e.isServed))};return _.template(a)(s)},getPageModuleHtml=async(e,t,r,l,a)=>{const{entryMap:o,projectVirtualPath:i}=a,s=Object.keys(o).sort(((e,t)=>t.length-e.length)),n=getPackageDir(),m=s.find((e=>{const r=normalizeEvolveEntryName(e,i);return ensureSlash(t.path.replace(/^\//,""),!0).startsWith(ensureSlash(r,!0))}));if(!m){const e=readFileSync(join(n,"./templates/module-404.html"),"utf-8");return _.template(e)({title:"404 Not Found",errorMeta:[{name:"@flatjs/evolve workspace",value:n},{name:"served entry names",value:JSON.stringify(s)},{name:"module path",value:`${t.path}`}]})}const c=normalizeEvolveEntryName(m,i),p=o[m],d=p.options,u=e[m],f=u?.devServerHostUri||r,g=d?.serveModuleTemplate||"./templates/module.html",h=join(a.projectCwd,"./templates/module.html"),v=readFileSync(isAbsolute(g)?g:existsSync(h)?h:join(n,"./templates/module.html"),"utf-8"),S=a.devServer,j=S?.defaultServeGlobalData?await S.defaultServeGlobalData(p,r):{},y={mode:"development",envCdn:urlJoin(r,["public"])},P={title:getHtmlPluginConfig("title",y,d?.title),favicon:getHtmlPluginConfig("favicon",y,d?.favicon),viewport:allowPx2remForModule([m,p],a)?getHtmlPluginConfig("viewport",y,d?.viewport):"",headBeforeHtmlTags:getHtmlPluginConfig("headBeforeHtmlTags",y,d?.headBeforeHtmlTags),inlineScripts:getHtmlPluginConfig("inlineScripts",y,d?.inlineScripts),headBeforeStyles:getHtmlPluginConfig("headBeforeStyles",y,d?.headBeforeStyles),headBeforeScripts:getHtmlPluginConfig("headBeforeScripts",y,d?.headBeforeScripts),bodyAfterScripts:getHtmlPluginConfig("bodyAfterScripts",y,d?.bodyAfterScripts),moduleFederationScripts:injectFederationScripts({me:[urlJoin(r,["public"])]},a.multiHtmlCdnEnvResolver),global:{hostUrl:r,apiBase:urlJoin(r,[l]),virtualPath:join("/pages",i),moduleName:m.replace(i,"").replace(/^\//,""),...j,...d?.serveGlobalData||{}},styles:[urlJoin(f,[join("public",c,"bundle.css")])],scripts:[urlJoin(f,[join("public",c,"bundle.js")])]};if(e[m]&&shouldEnableReactFastRefresh(!0,[c,p],a)){const e=[devReactFastRefresh.runtime,devReactFastRefresh.reactRefreshSetup];P.headBeforeHtmlTags?P.headBeforeHtmlTags=P.headBeforeHtmlTags.slice(0):P.headBeforeHtmlTags=[],e.forEach((e=>{const t=urlJoin(f,[join("public",join(c,e),"bundle.js")]);P.headBeforeHtmlTags?.push(`<script src="${t}"><\/script>`)}))}return _.template(v)(P)};export const createPageMiddleware=(e,t,r,l)=>(l.devServer?.middlewares||[]).concat((async(a,o)=>{let i;i="/"===a.path?await getPageMainHtml(r,e,l):await getPageModuleHtml(r,a,e,t,l),o.send(i)}));
|
|
@@ -5,4 +5,4 @@ import { type FlatEvolveOptions } from '../types/types-options.js';
|
|
|
5
5
|
* Split the `webpack` to make sure that we have separated compiler process for each module
|
|
6
6
|
* @param webpackConfig `Omit<Configuration, 'entry'>` webpack final configuration
|
|
7
7
|
*/
|
|
8
|
-
export declare function splitToMultiCompilerConfigs(servedEntries: EvolveEntryMap, webpackConfig: Omit<Configuration, 'entry'>, evolveOptions: FlatEvolveOptions): Configuration[];
|
|
8
|
+
export declare function splitToMultiCompilerConfigs(servedEntries: EvolveEntryMap, webpackConfig: Omit<Configuration, 'entry'>, evolveOptions: FlatEvolveOptions, enableHmr?: boolean): Configuration[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{mergeOptions}from"@flatjs/common";import{normalizeEvolveEntryName}from"./normalize-entry-map.js";export function splitToMultiCompilerConfigs(e,o
|
|
1
|
+
import{join}from"path";import{mergeOptions}from"@flatjs/common";import{devReactFastRefresh}from"../constants.js";import{normalizeEvolveEntryName}from"./normalize-entry-map.js";export function splitToMultiCompilerConfigs(e,t,r,o=!1){const n=[];for(const[t,o]of Object.entries(e)){const e=normalizeEvolveEntryName(t,r.projectVirtualPath);n.push({[e]:o.entry})}return n.map((e=>{const r=Object.keys(e)[0];if(o){e[join(r,devReactFastRefresh.reactRefreshSetup)]=["@pmmmwh/react-refresh-webpack-plugin/client/ReactRefreshEntry.js"]}return mergeOptions(t,{name:r,entry:e})}))}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{arrayUnique,urlJoin}from"@flatjs/common";import{attachMockMiddlewares}from"@flatjs/mock";import{createAppPageRoute,createDevServer,createDevServerCompilerTasks,createDevServerEntries}from"../dev-server/index.js";import{openPage}from"../helpers/index.js";import{envVerify}from"./env-verify.js";export const prepareServe=async(e,r,t)=>{await envVerify(e,t);const{app:o,devPort:a,devHostUri:i}=await createDevServer(t),
|
|
1
|
+
import{arrayUnique,urlJoin}from"@flatjs/common";import{attachMockMiddlewares}from"@flatjs/mock";import{createAppPageRoute,createDevServer,createDevServerCompilerTasks,createDevServerEntries}from"../dev-server/index.js";import{openPage}from"../helpers/index.js";import{envVerify}from"./env-verify.js";export const prepareServe=async(e,r,t)=>{await envVerify(e,t);const{app:o,devPort:a,devHostUri:i,publicIp:s}=await createDevServer(t),c=t.devServer?.mockOptions?.mockFilters||[];for(const[,e]of Object.entries(r))c.push(...e.options?.mockFilters||[]);await attachMockMiddlewares(o,{...t.devServer?.mockOptions,mockFilters:arrayUnique(c),projectCwd:e});const n=await createDevServerEntries(a,r,t);createAppPageRoute(e,o,i,n,t);const p=urlJoin(i,["/pages"]);t.devServer?.autoOpen&&openPage(p);const v=await createDevServerCompilerTasks(e,p,s,n,t);return Promise.all(v).then((()=>o))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import webpack from"webpack";import{loadWebpackConfig}from"../create-webpack/load-webpack-config.js";import{splitToMultiCompilerConfigs}from"../helpers/split-to-multi-compiler.js";export const startOneEntryBuild=async(r,o)=>{const t=await loadWebpackConfig("production",r,o),n=splitToMultiCompilerConfigs(r,t,o);if(n.length>1)throw new Error("startOneEntryBuild() only support `compiler` at a time");const e=n[0];return new Promise(((r,t)=>{webpack(e,((n,i)=>{if(n)return t(n);const a=i?.toJson();return a?.errors?.length?t(a.errors):o.rejectWarnings&&a?.warnings?.length?t(a.warnings):void r({name:e.name,warningStats:a?.warnings})}))}))};
|
|
1
|
+
import webpack from"webpack";import{loadWebpackConfig}from"../create-webpack/load-webpack-config.js";import{splitToMultiCompilerConfigs}from"../helpers/split-to-multi-compiler.js";export const startOneEntryBuild=async(r,o)=>{const t=await loadWebpackConfig("production",r,o),n=splitToMultiCompilerConfigs(r,t,o,!1);if(n.length>1)throw new Error("startOneEntryBuild() only support `compiler` at a time");const e=n[0];return new Promise(((r,t)=>{webpack(e,((n,i)=>{if(n)return t(n);const a=i?.toJson();return a?.errors?.length?t(a.errors):o.rejectWarnings&&a?.warnings?.length?t(a.warnings):void r({name:e.name,warningStats:a?.warnings})}))}))};
|
|
@@ -53,6 +53,8 @@ export declare type MultiHtmlCDNEntryItem = {
|
|
|
53
53
|
headBeforeStyles?: HtmlPluginConfigTokenType<string[]>;
|
|
54
54
|
/**
|
|
55
55
|
* The ordered scripts will be injected before html head.
|
|
56
|
+
* Note in `serve` mode we will auto remove `react`,`react-dom`('react.development.js', 'react-dom.development.js') from CDN, and use internal inject to enable `HMR`
|
|
57
|
+
* Or you must use `react devTool` chrome extension.
|
|
56
58
|
* @default [
|
|
57
59
|
* `https://polyfill.io/v3/polyfill.min.js?features=Array.from%2CArray.isArray%2CArray.of%2CArray.prototype.entries%2CArray.prototype.every%2CArray.prototype.fill%2CArray.prototype.filter%2CArray.prototype.find%2CArray.prototype.findIndex%2CArray.prototype.flat%2CArray.prototype.forEach%2CArray.prototype.flatMap%2CArray.prototype.keys%2CArray.prototype.indexOf%2CArray.prototype.includes%2CArray.prototype.lastIndexOf%2CArray.prototype.map%2CArray.prototype.reduce%2CArray.prototype.reduceRight%2CArray.prototype.some%2CArray.prototype.sort%2CArray.prototype.values%2CArrayBuffer%2CBlob%2CDataView%2CDate.now%2CObject.assign%2CObject.create%2CObject.defineProperties%2CObject.defineProperty%2CObject.entries%2CObject.freeze%2CObject.fromEntries%2CObject.getOwnPropertySymbols%2CObject.getOwnPropertyNames%2CObject.getOwnPropertyDescriptors%2CObject.getOwnPropertyDescriptor%2CObject.getPrototypeOf%2CObject.is%2CObject.isExtensible%2CObject.isFrozen%2CObject.isSealed%2CObject.keys%2CObject.values%2CObject.setPrototypeOf%2CPromise%2CPromise.prototype.finally%2CReflect%2CReflect.apply%2CReflect.construct%2CReflect.defineProperty%2CReflect.deleteProperty%2CReflect.getPrototypeOf%2CReflect.getOwnPropertyDescriptor%2CReflect.get%2CReflect.ownKeys%2CReflect.isExtensible%2CReflect.has%2CReflect.preventExtensions%2CReflect.set%2CReflect.setPrototypeOf%2CSet%2CString.prototype.trimStart%2CString.prototype.trimEnd%2CString.prototype.trim%2CString.prototype.startsWith%2CString.prototype.repeat%2CString.prototype.replaceAll%2CString.prototype.padStart%2CString.prototype.padEnd%2CMap%2CObject.seal%2Cconsole.groupEnd%2Cconsole.group`,
|
|
58
60
|
* `https://unpkg.com/react@17.0.2/umd/react.production.min.js`,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flatjs/evolve",
|
|
3
|
-
"version": "1.8.1-next.
|
|
3
|
+
"version": "1.8.1-next.110",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"@flatjs/evolve-preset-babel": "1.8.1-next.24",
|
|
48
48
|
"@flatjs/forge-postcss-plugin-pixel": "1.8.1-next.39",
|
|
49
49
|
"@flatjs/graph": "1.8.1-next.58",
|
|
50
|
-
"@flatjs/mock": "1.8.1-next.
|
|
50
|
+
"@flatjs/mock": "1.8.1-next.83",
|
|
51
51
|
"@pmmmwh/react-refresh-webpack-plugin": "0.5.11",
|
|
52
52
|
"@types/babel__core": "7.20.1",
|
|
53
53
|
"babel-loader": "9.1.3",
|
|
@@ -17,41 +17,45 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %>
|
|
23
|
+
<% } %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
23
26
|
<script>
|
|
24
27
|
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
25
28
|
<%= inlineScripts[index] %>
|
|
26
29
|
<% } %>
|
|
27
30
|
</script>
|
|
28
|
-
<% } %>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
29
33
|
<script>
|
|
30
34
|
<%= viewport %>
|
|
31
35
|
</script>
|
|
32
|
-
<% } %>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (headBeforeScripts) { %>
|
|
47
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
48
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
49
|
+
<% } %>
|
|
50
|
+
<% } %>
|
|
45
51
|
</head>
|
|
46
52
|
|
|
47
53
|
<body>
|
|
48
54
|
<div id="app"></div>
|
|
49
|
-
<% if (bodyAfterScripts) { %>
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
></script>
|
|
55
|
-
<% } %> <% } %>
|
|
55
|
+
<% if (bodyAfterScripts) { %>
|
|
56
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
57
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
58
|
+
<% } %>
|
|
59
|
+
<% } %>
|
|
56
60
|
</body>
|
|
57
61
|
</html>
|
|
@@ -17,41 +17,45 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %>
|
|
23
|
+
<% } %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
23
26
|
<script>
|
|
24
27
|
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
25
28
|
<%= inlineScripts[index] %>
|
|
26
29
|
<% } %>
|
|
27
30
|
</script>
|
|
28
|
-
<% } %>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
29
33
|
<script>
|
|
30
34
|
<%= viewport %>
|
|
31
35
|
</script>
|
|
32
|
-
<% } %>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (headBeforeScripts) { %>
|
|
47
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
48
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
49
|
+
<% } %>
|
|
50
|
+
<% } %>
|
|
45
51
|
</head>
|
|
46
52
|
|
|
47
53
|
<body>
|
|
48
54
|
<div id="app"></div>
|
|
49
|
-
<% if (bodyAfterScripts) { %>
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
></script>
|
|
55
|
-
<% } %> <% } %>
|
|
55
|
+
<% if (bodyAfterScripts) { %>
|
|
56
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
57
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
58
|
+
<% } %>
|
|
59
|
+
<% } %>
|
|
56
60
|
</body>
|
|
57
61
|
</html>
|
|
@@ -17,41 +17,45 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %>
|
|
23
|
+
<% } %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
23
26
|
<script>
|
|
24
27
|
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
25
28
|
<%= inlineScripts[index] %>
|
|
26
29
|
<% } %>
|
|
27
30
|
</script>
|
|
28
|
-
<% } %>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
29
33
|
<script>
|
|
30
34
|
<%= viewport %>
|
|
31
35
|
</script>
|
|
32
|
-
<% } %>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (headBeforeScripts) { %>
|
|
47
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
48
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
49
|
+
<% } %>
|
|
50
|
+
<% } %>
|
|
45
51
|
</head>
|
|
46
52
|
|
|
47
53
|
<body>
|
|
48
54
|
<div id="app"></div>
|
|
49
|
-
<% if (bodyAfterScripts) { %>
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
></script>
|
|
55
|
-
<% } %> <% } %>
|
|
55
|
+
<% if (bodyAfterScripts) { %>
|
|
56
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
57
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
58
|
+
<% } %>
|
|
59
|
+
<% } %>
|
|
56
60
|
</body>
|
|
57
61
|
</html>
|
|
@@ -17,41 +17,45 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %>
|
|
23
|
+
<% } %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
23
26
|
<script>
|
|
24
27
|
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
25
28
|
<%= inlineScripts[index] %>
|
|
26
29
|
<% } %>
|
|
27
30
|
</script>
|
|
28
|
-
<% } %>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
29
33
|
<script>
|
|
30
34
|
<%= viewport %>
|
|
31
35
|
</script>
|
|
32
|
-
<% } %>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (headBeforeScripts) { %>
|
|
47
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
48
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
49
|
+
<% } %>
|
|
50
|
+
<% } %>
|
|
45
51
|
</head>
|
|
46
52
|
|
|
47
53
|
<body>
|
|
48
54
|
<div id="app"></div>
|
|
49
|
-
<% if (bodyAfterScripts) { %>
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
></script>
|
|
55
|
-
<% } %> <% } %>
|
|
55
|
+
<% if (bodyAfterScripts) { %>
|
|
56
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
57
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
58
|
+
<% } %>
|
|
59
|
+
<% } %>
|
|
56
60
|
</body>
|
|
57
61
|
</html>
|
|
@@ -17,41 +17,45 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %>
|
|
23
|
+
<% } %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
23
26
|
<script>
|
|
24
27
|
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
25
28
|
<%= inlineScripts[index] %>
|
|
26
29
|
<% } %>
|
|
27
30
|
</script>
|
|
28
|
-
<% } %>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
29
33
|
<script>
|
|
30
34
|
<%= viewport %>
|
|
31
35
|
</script>
|
|
32
|
-
<% } %>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (headBeforeScripts) { %>
|
|
47
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
48
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
49
|
+
<% } %>
|
|
50
|
+
<% } %>
|
|
45
51
|
</head>
|
|
46
52
|
|
|
47
53
|
<body>
|
|
48
54
|
<div id="app"></div>
|
|
49
|
-
<% if (bodyAfterScripts) { %>
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
></script>
|
|
55
|
-
<% } %> <% } %>
|
|
55
|
+
<% if (bodyAfterScripts) { %>
|
|
56
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
57
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
58
|
+
<% } %>
|
|
59
|
+
<% } %>
|
|
56
60
|
</body>
|
|
57
61
|
</html>
|
|
@@ -17,41 +17,45 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %>
|
|
23
|
+
<% } %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
23
26
|
<script>
|
|
24
27
|
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
25
28
|
<%= inlineScripts[index] %>
|
|
26
29
|
<% } %>
|
|
27
30
|
</script>
|
|
28
|
-
<% } %>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
29
33
|
<script>
|
|
30
34
|
<%= viewport %>
|
|
31
35
|
</script>
|
|
32
|
-
<% } %>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (headBeforeScripts) { %>
|
|
47
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
48
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
49
|
+
<% } %>
|
|
50
|
+
<% } %>
|
|
45
51
|
</head>
|
|
46
52
|
|
|
47
53
|
<body>
|
|
48
54
|
<div id="app"></div>
|
|
49
|
-
<% if (bodyAfterScripts) { %>
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
></script>
|
|
55
|
-
<% } %> <% } %>
|
|
55
|
+
<% if (bodyAfterScripts) { %>
|
|
56
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
57
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
58
|
+
<% } %>
|
|
59
|
+
<% } %>
|
|
56
60
|
</body>
|
|
57
61
|
</html>
|
|
@@ -17,41 +17,45 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %>
|
|
23
|
+
<% } %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
23
26
|
<script>
|
|
24
27
|
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
25
28
|
<%= inlineScripts[index] %>
|
|
26
29
|
<% } %>
|
|
27
30
|
</script>
|
|
28
|
-
<% } %>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
29
33
|
<script>
|
|
30
34
|
<%= viewport %>
|
|
31
35
|
</script>
|
|
32
|
-
<% } %>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (headBeforeScripts) { %>
|
|
47
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
48
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
49
|
+
<% } %>
|
|
50
|
+
<% } %>
|
|
45
51
|
</head>
|
|
46
52
|
|
|
47
53
|
<body>
|
|
48
54
|
<div id="app"></div>
|
|
49
|
-
<% if (bodyAfterScripts) { %>
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
></script>
|
|
55
|
-
<% } %> <% } %>
|
|
55
|
+
<% if (bodyAfterScripts) { %>
|
|
56
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
57
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
58
|
+
<% } %>
|
|
59
|
+
<% } %>
|
|
56
60
|
</body>
|
|
57
61
|
</html>
|
|
@@ -17,41 +17,45 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %>
|
|
23
|
+
<% } %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
23
26
|
<script>
|
|
24
27
|
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
25
28
|
<%= inlineScripts[index] %>
|
|
26
29
|
<% } %>
|
|
27
30
|
</script>
|
|
28
|
-
<% } %>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
29
33
|
<script>
|
|
30
34
|
<%= viewport %>
|
|
31
35
|
</script>
|
|
32
|
-
<% } %>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (headBeforeScripts) { %>
|
|
47
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
48
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
49
|
+
<% } %>
|
|
50
|
+
<% } %>
|
|
45
51
|
</head>
|
|
46
52
|
|
|
47
53
|
<body>
|
|
48
54
|
<div id="app"></div>
|
|
49
|
-
<% if (bodyAfterScripts) { %>
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
></script>
|
|
55
|
-
<% } %> <% } %>
|
|
55
|
+
<% if (bodyAfterScripts) { %>
|
|
56
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
57
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
58
|
+
<% } %>
|
|
59
|
+
<% } %>
|
|
56
60
|
</body>
|
|
57
61
|
</html>
|
|
@@ -17,41 +17,45 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %>
|
|
23
|
+
<% } %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
23
26
|
<script>
|
|
24
27
|
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
25
28
|
<%= inlineScripts[index] %>
|
|
26
29
|
<% } %>
|
|
27
30
|
</script>
|
|
28
|
-
<% } %>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
29
33
|
<script>
|
|
30
34
|
<%= viewport %>
|
|
31
35
|
</script>
|
|
32
|
-
<% } %>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (headBeforeScripts) { %>
|
|
47
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
48
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
49
|
+
<% } %>
|
|
50
|
+
<% } %>
|
|
45
51
|
</head>
|
|
46
52
|
|
|
47
53
|
<body>
|
|
48
54
|
<div id="app"></div>
|
|
49
|
-
<% if (bodyAfterScripts) { %>
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
></script>
|
|
55
|
-
<% } %> <% } %>
|
|
55
|
+
<% if (bodyAfterScripts) { %>
|
|
56
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
57
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
58
|
+
<% } %>
|
|
59
|
+
<% } %>
|
|
56
60
|
</body>
|
|
57
61
|
</html>
|
package/templates/module.html
CHANGED
|
@@ -17,39 +17,47 @@
|
|
|
17
17
|
/>
|
|
18
18
|
<title><%= title %></title>
|
|
19
19
|
|
|
20
|
-
<% if (headBeforeHtmlTags) { %>
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<%
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
<% }
|
|
20
|
+
<% if (headBeforeHtmlTags) { %>
|
|
21
|
+
<% for (let index = 0; index < headBeforeHtmlTags.length; index++) { %>
|
|
22
|
+
<%= headBeforeHtmlTags[index] %> <%
|
|
23
|
+
} %>
|
|
24
|
+
<% } %>
|
|
25
|
+
<% if (inlineScripts) { %>
|
|
26
|
+
<script>
|
|
27
|
+
<% for (let index = 0; index < inlineScripts.length; index++) { %>
|
|
28
|
+
<%= inlineScripts[index] %>
|
|
29
|
+
<% } %>
|
|
30
|
+
</script>
|
|
31
|
+
<% } %>
|
|
32
|
+
<% if (viewport) { %>
|
|
33
|
+
<script>
|
|
34
|
+
<%= viewport %>
|
|
35
|
+
</script>
|
|
36
|
+
<% } %>
|
|
37
|
+
<% if (favicon) { %>
|
|
38
|
+
<link rel="shortcut icon" href="<%= favicon %>" type="image/x-icon" />
|
|
39
|
+
<link rel="icon" href="<%= favicon %>" type="image/x-icon" />
|
|
40
|
+
<% } %>
|
|
41
|
+
<% if (headBeforeStyles) { %>
|
|
42
|
+
<% for (let index = 0; index < headBeforeStyles.length; index++) { %>
|
|
43
|
+
<link href="<%= headBeforeStyles[index] %>" rel="stylesheet" />
|
|
44
|
+
<% } %>
|
|
45
|
+
<% } %>
|
|
46
|
+
<% if (styles.length) { %>
|
|
47
|
+
<% _.forEach(styles, (css)=> { %>
|
|
48
|
+
<link href="<%= css %>" rel="stylesheet" />
|
|
49
|
+
<% }) %>
|
|
50
|
+
<% } %>
|
|
41
51
|
|
|
42
52
|
<script>
|
|
43
53
|
window.GLOBAL = <%= JSON.stringify(Object.assign(global, {})) %>;
|
|
44
54
|
</script>
|
|
45
55
|
|
|
46
|
-
<% if (headBeforeScripts) { %>
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
></script>
|
|
52
|
-
<% } %> <% } %>
|
|
56
|
+
<% if (headBeforeScripts) { %>
|
|
57
|
+
<% for (let index = 0; index < headBeforeScripts.length; index++) { %>
|
|
58
|
+
<script crossorigin="anonymous" src="<%= headBeforeScripts[index]%>"></script>
|
|
59
|
+
<% } %>
|
|
60
|
+
<% } %>
|
|
53
61
|
</head>
|
|
54
62
|
|
|
55
63
|
<body>
|
|
@@ -58,14 +66,16 @@
|
|
|
58
66
|
<script>
|
|
59
67
|
<%= moduleFederationScripts %>
|
|
60
68
|
</script>
|
|
61
|
-
<% } %>
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
<% } %>
|
|
70
|
+
<% if (scripts.length) { %>
|
|
71
|
+
<% _.forEach(scripts, (js)=> { %>
|
|
72
|
+
<script src="<%= js %>"></script>
|
|
73
|
+
<% }) %>
|
|
74
|
+
<% } %>
|
|
75
|
+
<% if (bodyAfterScripts) { %>
|
|
76
|
+
<% for (let index = 0; index < bodyAfterScripts.length; index++) { %>
|
|
77
|
+
<script crossorigin="anonymous" src="<%= bodyAfterScripts[index]%>"></script>
|
|
78
|
+
<% } %>
|
|
79
|
+
<% } %>
|
|
70
80
|
</body>
|
|
71
81
|
</html>
|