@flatjs/evolve 1.8.1-next.108 → 1.8.1-next.109
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +7 -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/create-dev-server-compiler-tasks.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/start-one-entry-build.js +1 -1
- package/dist/types/types-multi-html.d.ts +2 -0
- package/package.json +1 -1
- 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
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"}}};
|
@@ -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
|
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 a=[];for(const[i,n]of Object.entries(r)){const l=n.entryConfig,s=l.options?.moduleFederation,p=shouldEnableReactFastRefresh(!0,[i,l],t);(s?.remotes||[]).forEach((e=>{e.endpoint=e=>{const o=r[e];if(!o)throw new Error(`No servedDevServerEntry found via "${e}"`);return urlJoin(o?.devServerHostUri,["/public"])}}));const{devServerPort:c,devServerHostUri:m}=r[i],f={[i]:l},d=urlJoin(m,["public"]),h=await loadWebpackConfig("development",f,mergeOptions(t,{webpack:{publicPath:d}})),v=shouldEnableReactFastRefresh(!0,[i,l],t),u=webpack(splitToMultiCompilerConfigs(f,h,t,v)[0]);a.push(addCompilerToDevServer(u,p,c,t));const g=u.name||"";u.hooks.invalid.tap("fileChange",(o=>{const r=relative(e,o||"");logger.info(`file change ➩ ${chalk(["cyan"])(r)}`,g)})),u.hooks.done.tap("compileDone",(()=>{logger.info(`debug page ➩ ${chalk(["cyan"])(o)}`,g)}))}return a};
|
@@ -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 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
@@ -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>
|