@flatjs/evolve 2.1.0-next.6 → 2.1.0-next.8
Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
|
|
1
|
-
import{readFileSync}from"node:fs";import{join}from"node:path";import{urlJoin}from"@flatjs/common";import _ from"lodash";import{getPackageDir}from"../../helpers/get-pacakge-dir.js";import{normalizePageProxy}from"../../helpers/normalize-page-proxy.js";import{getSortedModules}from"./get-all-sorted-modules.js";export const getPageMainHtml=async(e,r,t)=>{const o=getPackageDir(),a=readFileSync(join(o,"./templates/main.html"),"utf-8"),
|
1
|
+
import{readFileSync}from"node:fs";import{join}from"node:path";import{urlJoin}from"@flatjs/common";import _ from"lodash";import{getPackageDir}from"../../helpers/get-pacakge-dir.js";import{normalizePageProxy}from"../../helpers/normalize-page-proxy.js";import{getSortedModules}from"./get-all-sorted-modules.js";export const getPageMainHtml=async(e,r,t)=>{const o=getPackageDir(),a=readFileSync(join(o,"./templates/main.html"),"utf-8"),n=getSortedModules(t,e,r),i=normalizePageProxy(t.devServer?.pageProxy||"/pages"),m=n.map((e=>{const{entryName:t,entryContent:o,isServedEntry:a,projectVirtualPath:n,normalizedEntryName:m}=e,s=urlJoin(r,[i,m],{env:"me"}),l=o.options?.servePageMainLinkFn||(e=>e);return{link:l(s,{hostUri:r,entryName:t,virtualPath:n}),name:t.replace(n,"").replace(/^\//,""),flagText:a?"serve":"static",isServed:a?1:0}}));m.push({flagText:"serve",isServed:1,link:urlJoin(r,[i,"/runtime/manifest.json"]),name:"Runtime Manifest"});const s={title:"@flatjs/evolve",modules:m.sort(((e,r)=>r.isServed-e.isServed))};return _.template(a)(s)};
|
@@ -1 +1 @@
|
|
1
|
-
export const shouldEnableReactFastRefresh=(e,o,t)=>{const r=o[1],s=!!r.options?.moduleFederation;return e&&"react"===t.loaderOptions.babelOptions?.usePreset&&!s&&!0!==t.devServer?.liveReload};
|
1
|
+
export const shouldEnableReactFastRefresh=(e,o,t)=>{const r=o[1],s=!!r.options?.moduleFederation,a=!!r.options?.output?.library;return e&&"react"===t.loaderOptions.babelOptions?.usePreset&&!s&&!a&&!0!==t.devServer?.liveReload};
|
@@ -1 +1 @@
|
|
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,
|
1
|
+
import{dirname,join}from"path";import{searchPackageDir}from"@armit/package";import{mergeOptions,requireResolve}from"@flatjs/common";import{devReactFastRefresh}from"../constants.js";import{normalizeEvolveEntryName}from"./normalize-entry-map.js";export function splitToMultiCompilerConfigs(e,r,t,o=!1){const a=[];for(const[r,o]of Object.entries(e)){const e=normalizeEvolveEntryName(r,t.projectVirtualPath);a.push({[e]:o.entry})}return a.map((e=>{const t=Object.keys(e)[0];if(o){const r=join(t,devReactFastRefresh.reactRefreshSetup),o=requireResolve(import.meta.url,"@pmmmwh/react-refresh-webpack-plugin"),a=searchPackageDir({cwd:dirname(o)});if(!a)throw new Error("react-refresh-webpack-plugin package directory not found");e[r]=[join(a,"/client/ReactRefreshEntry.js")]}return mergeOptions(r,{name:t,entry:e})}))}
|
@@ -59,8 +59,8 @@ export interface EvolveEntryItemOption extends MultiHtmlCDNEntryItem {
|
|
59
59
|
*/
|
60
60
|
mockFilters?: Array<string | RegExp>;
|
61
61
|
/**
|
62
|
-
* Extends the default `output` configuration for each entry item.
|
63
|
-
*
|
62
|
+
* Extends the default `output` configuration for each entry item, normally we use `output.library` to define the global variable name.
|
63
|
+
* Note we don't need to support react fast refresh for library target. because of the library module can not run in the browser individually.
|
64
64
|
* @example
|
65
65
|
* ```ts
|
66
66
|
*'plugin-chart': {
|