@moneko/core 3.55.18-beta.0 → 3.55.18
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/lib/common.mjs +1 -1
- package/lib/index.d.mts +2 -0
- package/lib/index.mjs +1 -1
- package/lib/plugin/exposes-declararion.mjs +1 -1
- package/lib/plugin/html-plugin.d.mts +2 -1
- package/lib/plugin/html-plugin.mjs +1 -1
- package/lib/plugin/module-federation.mjs +1 -1
- package/lib/vm/modules.mjs +1 -1
- package/lib/vm/public-path.d.mts +6 -2
- package/lib/vm/public-path.mjs +1 -1
- package/package.json +1 -1
package/lib/common.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{extname as e,join as t,resolve as o}from"node:path";import a,{config_files as s,CUSTOMCONFIG as n,TMP_DIR as i}from"./commom/paths.mjs";import
|
|
1
|
+
import{extname as e,join as t,resolve as o}from"node:path";import a,{config_files as s,CUSTOMCONFIG as n,TMP_DIR as i}from"./commom/paths.mjs";import{OverrideResolverPlugin as r}from"./plugin/override-resolve.mjs";import{isObject as l,node_modules as m,resolveProgram as p}from"./utils/index.mjs";import{exampleModuleName as c}from"./vm/example.mjs";import u from"./vm/info.mjs";import{CONFIG as d}from"./config.mjs";import h from"./plugins.config.mjs";import{isCI as f,isDev as g,isLibrary as b,NODE_ENV as y,packageJson as j}from"./process-env.mjs";export const outputConfig={path:p(b?"docs":"dist"),filename:"js/[name].[contenthash].bundle.js",chunkFilename:"js/[contenthash].chunk.js",assetModuleFilename:t=>{let o=e(t.filename||"").substring(1);return`assets/${o}/[hash][ext]`},library:{name:`${u.projectName}`,type:"umd",umdNamedDefine:!0},globalObject:"self",chunkLoadingGlobal:`webpackJsonp_${j.name}`,pathinfo:g,clean:!g,publicPath:d.publicPath,asyncChunks:!0,charset:!0,iife:!0,crossOriginLoading:"use-credentials",enabledWasmLoadingTypes:["fetch"],uniqueName:`${u.projectName}`};let v={main:[m("@app/entry")]},C=[m("@app/public-path")];if(d.polyfill&&C.push(t(a.corePath,"./polyfills/replace-children.mjs")),d.entry&&("string"==typeof d.entry?v={...v,main:[d.entry]}:Object.keys(d.entry)&&(v=Object.assign(v,d.entry))),"string"==typeof v.main?v.main=[...C,v.main]:Array.isArray(v.main)&&(v.main=[...C,...v.main]),d.output){if("string"==typeof d.output)outputConfig.path=d.output;else if(Object.keys(d.output)){let e=d.output,t={...outputConfig.library};Object.assign(outputConfig,e),"object"==typeof d.output&&e.library&&(outputConfig.library=Object.assign(t,e.library))}}let P={type:"filesystem",allowCollectingMemory:!0,cacheDirectory:a.webpackCachePath,memoryCacheUnaffected:!0,name:`.${[n,y].filter(Boolean).join("-")}`,version:`${j.version}`,buildDependencies:{config:s},maxMemoryGenerations:1};!1===d.cache?P=!1:l(d.cache)&&(P=Object.assign(P,d.cache)),f&&(void 0===d.cache||d.cache&&!d.cache.cacheDirectory)&&(P.cacheDirectory=o(i,j.name));export const commonConfig={name:"client",target:"web",devtool:d.devtool,entry:v,mode:g?"development":"production",stats:"errors-only",cache:P,snapshot:{immutablePaths:[a.pnpmNodeModules,a.denoNodeModules,/node_modules\/(?!(@app)\/)/],managedPaths:[a.pnpmNodeModules,a.denoNodeModules,/node_modules\/(?!(@app)\/)/],resolveBuildDependencies:{timestamp:!0,hash:!0},resolve:{timestamp:!0,hash:!0},module:{timestamp:!0,hash:!0},buildDependencies:{timestamp:!0,hash:!0}},infrastructureLogging:{level:"error"},externalsPresets:d.externalsPresets,plugins:h,node:{global:!1,__filename:!1,__dirname:!1},experiments:{topLevelAwait:!0,asyncWebAssembly:!0,cacheUnaffected:!0,layers:!0,lazyCompilation:d.lazyCompilation&&g&&{imports:!0,entries:!0,test:e=>{let t=e.nameForCondition();return!!(t&&(t.startsWith(m(c))||t.startsWith(m("@app/comment"))||t.startsWith(a.pagesPath)||t.startsWith(a.componentsPath)))}},buildHttp:l(d.buildHttp)?{allowedUris:[],lockfileLocation:o(a.httpCachePath,"http.lock"),cacheLocation:o(a.httpCachePath,"data"),upgrade:!0,...d.buildHttp}:d.buildHttp,backCompat:!0,futureDefaults:!0,css:!1,outputModule:!1},resolve:{extensions:[".mts",".mjs",".ts",".tsx",".js",".jsx",".json",".wasm"],alias:d.alias,modules:[a.nodeModules,a.pnpmNodeModules,a.denoNodeModules],mainFields:["browser","module","main"],mainFiles:["index"],plugins:d.resolvePlugins,preferAbsolute:!0,cache:!0,fallback:{}},externals:d.externals,output:outputConfig,recordsPath:d.recordsPath?t(a.programPath,d.recordsPath):t(a.webpackCachePath,"records.json")};d.overrideResolve&&commonConfig.resolve.plugins.push(new r(Object.assign({original:d.alias["@"],override:n&&p(n)},d.overrideResolve)));
|
package/lib/index.d.mts
CHANGED
|
@@ -22,3 +22,5 @@ export { APPTYPE, coreName, FRAMEWORK, isCI, isDev, isLibrary, isMicro, mainDire
|
|
|
22
22
|
export { resolveProgram, toCamelCase } from './utils/index.mjs';
|
|
23
23
|
export * from '@moneko/mdx';
|
|
24
24
|
export * from '@moneko/utils';
|
|
25
|
+
import webpack from 'webpack';
|
|
26
|
+
export { webpack };
|
package/lib/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{default as hasPkg}from"./commom/has-pkg.mjs";export{getIPv4,getPort}from"./commom/net.mjs";export{default as open}from"./commom/open.mjs";export{default as parseArgs}from"./commom/parse-args.mjs";export{CUSTOMCONFIG,default as paths,routeDir,yarnArgv}from"./commom/paths.mjs";export{default as printLog}from"./commom/print-log.mjs";export{default as require}from"./commom/require.mjs";export{default as Rule}from"./commom/rule.mjs";export{default as timer}from"./commom/timer.mjs";export{yApiMock,yApiSchemaMock}from"./dev/mock.mjs";export{default as jsxDomExpressions}from"./options/jsx-dom-expressions.mjs";export{default as splitChunk}from"./options/split-chunk.mjs";export{APPTYPE,coreName,FRAMEWORK,isCI,isDev,isLibrary,isMicro,mainDirectory,packageJson,PACKAGENAME}from"./process-env.mjs";export{resolveProgram,toCamelCase}from"./utils/index.mjs";export*from"@moneko/mdx";export*from"@moneko/utils";
|
|
1
|
+
export{default as hasPkg}from"./commom/has-pkg.mjs";export{getIPv4,getPort}from"./commom/net.mjs";export{default as open}from"./commom/open.mjs";export{default as parseArgs}from"./commom/parse-args.mjs";export{CUSTOMCONFIG,default as paths,routeDir,yarnArgv}from"./commom/paths.mjs";export{default as printLog}from"./commom/print-log.mjs";export{default as require}from"./commom/require.mjs";export{default as Rule}from"./commom/rule.mjs";export{default as timer}from"./commom/timer.mjs";export{yApiMock,yApiSchemaMock}from"./dev/mock.mjs";export{default as jsxDomExpressions}from"./options/jsx-dom-expressions.mjs";export{default as splitChunk}from"./options/split-chunk.mjs";export{APPTYPE,coreName,FRAMEWORK,isCI,isDev,isLibrary,isMicro,mainDirectory,packageJson,PACKAGENAME}from"./process-env.mjs";export{resolveProgram,toCamelCase}from"./utils/index.mjs";export*from"@moneko/mdx";export*from"@moneko/utils";import o from"webpack";export{o as webpack};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{join as e,parse as t,resolve as
|
|
1
|
+
import{join as e,parse as t,resolve as o}from"node:path";import{fileURLToPath as s}from"node:url";import{Worker as i}from"node:worker_threads";import{loadFile as r}from"@moneko/utils";import a from"webpack";import n from"../utils/create-types.mjs";import m from"../vm/public-path.mjs";export class ModuleFederationExposesDeclarationPlugin{constructor(e){this.name="ModuleFederationExposesDeclarationPlugin",this.assetName="module-federation.d.ts",this.dts="",this.option=e,this.worker=new i(s(new URL("../worker/dts.mjs",import.meta.url))),this.worker.setMaxListeners(0),this.worker.postMessage({options:{compilerOptions:{isolatedModules:!1,outFile:this.assetName,verbatimModuleSyntax:!1},include:[...Object.values(e.exposes),"typings/**/*.d.ts"]}}),this.worker.once("message",e=>{this.dts=e,this.worker.terminate()})}apply(s){let{exposes:i}=this.option,p=Object.keys(i).map(e=>{let t=e.replace(/\.tsx?$/i,"");return{key:e,name:t,path:o(`types/${this.option.name}/${t}.d.ts`),originPath:i[e]}});s.hooks.thisCompilation.tap({name:this.name,stage:s.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},o=>{o.hooks.processAssets.tapPromise(this.name,async()=>{let s=p.map(async o=>{if(o.originPath===m.moduleName)return`${n(e(this.option.name,o.name),m.dts)}`;if(null!==await r(o.originPath)){let s=t(o.originPath);return`${n(e(this.option.name,o.name),`export * from '${t(s.dir).name}/${s.name}'`)}`}return""}),i=await Promise.all(s);i.unshift(this.dts),o.emitAsset("module-federation.d.ts",new a.sources.RawSource(i.join("\n")),{javascriptModule:!1})})})}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Compiler } from 'webpack';
|
|
1
|
+
import { type Compilation, type Compiler } from 'webpack';
|
|
2
2
|
export interface HtmlMeta {
|
|
3
3
|
[key: string]: string | undefined | HtmlMeta;
|
|
4
4
|
}
|
|
@@ -51,6 +51,7 @@ export declare class HtmlPlugin {
|
|
|
51
51
|
private cachedMetaTags;
|
|
52
52
|
private cachedCustomTags;
|
|
53
53
|
constructor(options?: HtmlPluginOption);
|
|
54
|
+
getPublicPath(compilation: Compilation, filename: string): string;
|
|
54
55
|
apply(compiler: Compiler): void;
|
|
55
56
|
private generateDefaultTemplate;
|
|
56
57
|
private generateMetaTags;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{existsSync as t,readFileSync as e}from"node:fs";import{basename as s,resolve as
|
|
1
|
+
import{existsSync as t,readFileSync as e}from"node:fs";import{basename as s,dirname as i,relative as o,resolve as n,sep as a}from"node:path";import h from"webpack";export class HtmlPlugin{constructor(t={}){this.AddEntry=/(?:.*\/)?main\.[a-zA-Z0-9]+\.bundle\.js$/,this.faviconPath="",this.name="HtmlPlugin",this.cachedMetaTags=null,this.cachedCustomTags=null,this.options={title:"WebApp",filename:"index.html",inject:"head",...t}}getPublicPath(t,e){let s=t.getAssetPath(t.outputOptions.publicPath,{hash:t.hash}),h="auto"!==s?s:o(n(t.options.output.path,i(e)),t.options.output.path).split(a).join("/");return h.length&&!h.endsWith("/")&&(h+="/"),h}apply(i){i.hooks.compilation.tap(this.name,o=>{o.hooks.processAssets.tap({name:this.name,stage:h.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL},()=>{let a;if(this.options.favicon){let a=n(i.context,this.options.favicon);if(t(a)){let t=s(this.options.favicon),i=e(a);o.emitAsset(t,new h.sources.RawSource(i),{javascriptModule:!1});let n=this.getPublicPath(o,t);this.faviconPath=n+t}else o.warnings.push(new h.WebpackError(`Favicon file ${a} does not exist`))}if(a=this.options.templateContent?this.options.templateContent(this.options):this.options.template?e(n(i.context,this.options.template),{encoding:"utf-8"}):this.generateDefaultTemplate(),this.options.inject){let t=this.getAssets(o);a=this.injectAssets(a,t,this.options.inject)}let l="function"==typeof this.options.filename?this.options.filename("index"):this.options.filename||"index.html";o.emitAsset(l,new h.sources.RawSource(a),{javascriptModule:!1})})})}generateDefaultTemplate(){let t=this.generateMetaTags();return`<!DOCTYPE html><html><head><meta charset="utf-8">${t}<title>${this.options.title}</title><link rel="icon" type="image/x-icon" href="${this.faviconPath}"></head><body><div id="root"></div></body></html>`}generateMetaTags(){if(null!==this.cachedMetaTags)return this.cachedMetaTags;if(!this.options.meta)return this.cachedMetaTags="","";let t=Object.entries(this.options.meta).map(([t,e])=>{if("string"==typeof e)return`<meta name="${t}" content="${e}">`;if(void 0===e)return"";let s=Object.entries(e).map(([t,e])=>`${t}="${e}"`).join(" ");return`<meta ${s}>`}).join("");return this.cachedMetaTags=t,t}generateCustomTags(){if(null!==this.cachedCustomTags)return this.cachedCustomTags;let t={head:"",body:""};if(!this.options.tags)return this.cachedCustomTags=t,t;let e=[],s=[];return this.options.tags.forEach(t=>{let{tag:i="script",textContent:o="",inject:n=this.options.inject,...a}=t,h=Object.entries(a).filter(([,t])=>null!=t).map(([t,e])=>!0===e?t:`${t}="${e}"`).join(" "),l=`<${i} ${h}>${o}</${i}>`;"head"===n?e.push(l):s.push(l)}),t.head=e.join(""),t.body=s.join(""),this.cachedCustomTags=t,t}getAssets(t){let e={js:[],css:[]};for(let s of t.entrypoints.values())for(let i of s.chunks)for(let s of i.files){let i=this.getPublicPath(t,n(t.options.output.path,s));s.endsWith(".js")?e.js.push(i+s):s.endsWith(".css")&&e.css.push(i+s)}return e}injectAssets(t,e,s){let i=e.css.length?e.css.map(t=>`<link href="${t}" rel="stylesheet" />`).join(""):"",o=e.js.length?e.js.map(t=>`<script defer ${this.AddEntry.test(t)?'entry="true" ':""}src="${t}"></script>`).join(""):"",n=this.generateCustomTags(),a=t.split("</head>");if(2===a.length){let[t,e]=a,h=e.split("</body>");return"head"===s?`${t}${i}${o}${n.head}</head>${h[0]}${n.body}</body>${h[1]||""}`:`${t}${n.head}</head>${h[0]}${i}${o}${n.body}</body>${h[1]||""}`}return t}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"webpack";import t from"../commom/module-resolve.mjs";import{CONFIG as r}from"../config.mjs";import o from"../utils/fetch-module-federation-dts.mjs";import{
|
|
1
|
+
import e from"webpack";import t from"../commom/module-resolve.mjs";import{CONFIG as r}from"../config.mjs";import o from"../utils/fetch-module-federation-dts.mjs";import{resolveProgram as s}from"../utils/index.mjs";import{ModuleFederationExposesDeclarationPlugin as m}from"./exposes-declararion.mjs";import{ExternalRemotesPlugin as a}from"./external-remotes.mjs";let l=e.NormalModuleReplacementPlugin,i=e.container.ModuleFederationPlugin,n={},p=[],f=r.moduleFederation?.map(e=>{let r={},a={},l={};if(Array.isArray(e.remotes))for(let t=0,r=e.remotes.length;t<r;t++){let r=e.remotes[t],s=r.alias||r.name,m=r.filename||"remote_entry.js";if(a[s]=`${r.name}@${r.host}/${m}`,Array.isArray(r.library))for(let e=0,t=r.library.length;e<t;e++)n[r.library[e]]=`${s}/${r.library[e]}`;o(r.host,r.name)}if(Array.isArray(e.exposes)){e.exposes.push({name:"public-path",path:"@app/public-path"});for(let o=0,m=e.exposes.length;o<m;o++){let m=e.exposes[o];if("string"==typeof m){let e=m.startsWith(".");r[`./${m}`]=t(e?s(m):m),e&&(l[m]=r[`./${m}`])}else if("[object Object]"===Object.prototype.toString.call(m)){let e=m.path.startsWith(".");r[`./${m.name}`]=t(e?s(m.path):m.path),e&&(l[`./${m.name}`]=r[`./${m.name}`])}}e.exposes?.length&&p.push(new m({exposes:l,name:e.name}))}return new i({filename:"remote_entry.js",...e,remotes:a,exposes:r})});f.length>0&&(f.push(new a),f.push(new l(/(.*)/,e=>{n[e.request]&&(e.request=n[e.request])})),p.forEach(e=>f.push(e))),r.env.injectRemoteReactRefresh=Object.keys(n).includes("react-dom");export default f;
|
package/lib/vm/modules.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{join as
|
|
1
|
+
import{join as m}from"node:path";import{getAppEntry as p,getAppFallback as o,getAppMdxScope as e,getAppMergeRouter as t,getAppNormalizeCss as r,getAppPrefixRouter as s,getAppRem as a,getAppSuspense as i}from"@moneko/mdx";import{updateFileSync as n}from"@moneko/utils";import l from"../commom/has-pkg.mjs";import f from"../commom/paths.mjs";import c from"../commom/rule.mjs";import{CONFIG as d}from"../config.mjs";import j from"../plugin/module-federation.mjs";import{APPTYPE as u,FRAMEWORK as x}from"../process-env.mjs";import g from"../utils/create-types.mjs";import{generateDeclaration as v}from"../utils/dts.mjs";import{node_modules as h,transformModule as k}from"../utils/index.mjs";import y from"./coverage.mjs";import{docs as b,docsModuleName as z}from"./docs.mjs";import D from"./info.mjs";import{locales as C,localesModuleName as P}from"./locales.mjs";import M from"./public-path.mjs";import N from"./render-app.mjs";import{route as O,routesModuleName as S}from"./routes.mjs";let q=l(m(d.alias["@"],"./mdx-scope.tsx"))||l(m(d.alias["@"],"./mdx-scope.ts")),w={[M.moduleName]:M.source,"@app/env.ts":d.env,"@app/info.ts":D,"@app/render.tsx":"react"===x?N:"","@app/entry.ts":p(m(d.alias["@"],"./index.ts"),!!j.length,!!d.rem,!!d.normalizeCss,u,x),"@app/rem":a(d.rem?.designSize||1680),"@app/fallback":o(d.fallbackCompPath),"@app/coverage":y(f.coveragePath),"@app/merge-router":t(),"@app/prefix-router":s(),"@app/normalize/index.css":r(),"@app/suspense/index.tsx":i(u,x),"@app/mdx-scope.tsx":q?e(q):"export default {}","@app/routes":O.getData(S),"@app/locales":C.getData(P),"@app/docs":b.getData(z)};n(h("@types/@app/index.d.ts"),["@app/env.ts","@app/info.ts","@app/entry.ts","@app/mdx-scope.tsx"].map(m=>g(m.replace(c.js,""),v(k(w[m]),m))).concat(M.dts).join("\n"));let A=h("@types/@vm/index.d.ts"),B=d.virtualModule||{};n(A,Object.keys(B).map(m=>g(m,v(k(B[m]),m))).join("\n"));export default w;
|
package/lib/vm/public-path.d.mts
CHANGED
package/lib/vm/public-path.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export default"export function set(value: string) {__webpack_public_path__ = value;}";
|
|
1
|
+
let t="@app/public-path",e=`module '${t}' {export function set(value: string): void;export function get(): string;}`;export default{source:"// __webpack_public_path__ = '../';export function set(value: string) {__webpack_public_path__ = value;};export function get() {return __webpack_public_path__;}",moduleName:t,dts:e};
|