@module-federation/modern-js 0.0.0-next-20240909092952 → 0.0.0-next-20240909101028

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.
Files changed (91) hide show
  1. package/dist/cjs/cli/{dataLoader/ast/index.js → constant.js} +6 -6
  2. package/dist/cjs/cli/index.js +1 -5
  3. package/dist/cjs/cli/mfRuntimePlugins/inject-node-fetch.js +10 -7
  4. package/dist/cjs/cli/mfRuntimePlugins/resolve-entry-ipv4.js +38 -40
  5. package/dist/cjs/cli/ssrPlugin.js +1 -1
  6. package/dist/cjs/cli/utils.js +4 -8
  7. package/dist/cjs/cli/utils.spec.js +1 -1
  8. package/dist/cjs/constant.js +2 -32
  9. package/dist/cjs/runtime/index.js +1 -4
  10. package/dist/cjs/ssr-runtime/plugin.js +7 -7
  11. package/dist/esm/cli/constant.js +4 -0
  12. package/dist/esm/cli/index.js +1 -4
  13. package/dist/esm/cli/mfRuntimePlugins/inject-node-fetch.js +10 -7
  14. package/dist/esm/cli/ssrPlugin.js +1 -1
  15. package/dist/esm/cli/utils.js +3 -6
  16. package/dist/esm/cli/utils.spec.js +1 -1
  17. package/dist/esm/constant.js +1 -21
  18. package/dist/esm/runtime/index.js +1 -3
  19. package/dist/esm/ssr-runtime/plugin.js +10 -7
  20. package/dist/esm-node/cli/constant.js +4 -0
  21. package/dist/esm-node/cli/index.js +1 -5
  22. package/dist/esm-node/cli/mfRuntimePlugins/inject-node-fetch.js +10 -7
  23. package/dist/esm-node/cli/mfRuntimePlugins/resolve-entry-ipv4.js +38 -40
  24. package/dist/esm-node/cli/ssrPlugin.js +1 -1
  25. package/dist/esm-node/cli/utils.js +3 -6
  26. package/dist/esm-node/cli/utils.spec.js +1 -1
  27. package/dist/esm-node/constant.js +1 -21
  28. package/dist/esm-node/runtime/index.js +1 -3
  29. package/dist/esm-node/ssr-runtime/plugin.js +7 -7
  30. package/dist/types/cli/constant.d.ts +1 -0
  31. package/dist/types/cli/mfRuntimePlugins/inject-node-fetch.d.ts +2 -2
  32. package/dist/types/cli/utils.d.ts +0 -2
  33. package/dist/types/constant.d.ts +0 -10
  34. package/dist/types/runtime/index.d.ts +0 -1
  35. package/dist/types/types/index.d.ts +0 -9
  36. package/package.json +11 -40
  37. package/dist/cjs/cli/dataLoader/ast/constant.js +0 -49
  38. package/dist/cjs/cli/dataLoader/ast/generateRoutes.js +0 -141
  39. package/dist/cjs/cli/dataLoader/generateRouteFile.js +0 -143
  40. package/dist/cjs/cli/dataLoader/patchMFConfig.js +0 -132
  41. package/dist/cjs/cli/dataLoader/plugin.js +0 -194
  42. package/dist/cjs/cli/mfRuntimePlugins/node.js +0 -44
  43. package/dist/cjs/cli/server/dataLoaderPlugin.js +0 -82
  44. package/dist/cjs/cli/server/fetchRemoteFullRoutesMap.js +0 -69
  45. package/dist/cjs/interfaces/route.js +0 -16
  46. package/dist/cjs/runtime/dataLoader/plugin.js +0 -73
  47. package/dist/cjs/runtime/dataLoader/utils.js +0 -89
  48. package/dist/cjs/runtime/utils.js +0 -38
  49. package/dist/cjs/runtime/withMFRouteId.js +0 -31
  50. package/dist/esm/cli/dataLoader/ast/constant.js +0 -18
  51. package/dist/esm/cli/dataLoader/ast/generateRoutes.js +0 -108
  52. package/dist/esm/cli/dataLoader/ast/index.js +0 -4
  53. package/dist/esm/cli/dataLoader/generateRouteFile.js +0 -293
  54. package/dist/esm/cli/dataLoader/patchMFConfig.js +0 -98
  55. package/dist/esm/cli/dataLoader/plugin.js +0 -209
  56. package/dist/esm/cli/mfRuntimePlugins/node.js +0 -16
  57. package/dist/esm/cli/server/dataLoaderPlugin.js +0 -105
  58. package/dist/esm/cli/server/fetchRemoteFullRoutesMap.js +0 -88
  59. package/dist/esm/interfaces/route.js +0 -0
  60. package/dist/esm/runtime/dataLoader/plugin.js +0 -92
  61. package/dist/esm/runtime/dataLoader/utils.js +0 -63
  62. package/dist/esm/runtime/utils.js +0 -13
  63. package/dist/esm/runtime/withMFRouteId.js +0 -7
  64. package/dist/esm-node/cli/dataLoader/ast/constant.js +0 -18
  65. package/dist/esm-node/cli/dataLoader/ast/generateRoutes.js +0 -107
  66. package/dist/esm-node/cli/dataLoader/ast/index.js +0 -4
  67. package/dist/esm-node/cli/dataLoader/generateRouteFile.js +0 -108
  68. package/dist/esm-node/cli/dataLoader/patchMFConfig.js +0 -98
  69. package/dist/esm-node/cli/dataLoader/plugin.js +0 -159
  70. package/dist/esm-node/cli/mfRuntimePlugins/node.js +0 -14
  71. package/dist/esm-node/cli/server/dataLoaderPlugin.js +0 -62
  72. package/dist/esm-node/cli/server/fetchRemoteFullRoutesMap.js +0 -44
  73. package/dist/esm-node/interfaces/route.js +0 -0
  74. package/dist/esm-node/runtime/dataLoader/plugin.js +0 -49
  75. package/dist/esm-node/runtime/dataLoader/utils.js +0 -63
  76. package/dist/esm-node/runtime/utils.js +0 -13
  77. package/dist/esm-node/runtime/withMFRouteId.js +0 -7
  78. package/dist/types/cli/dataLoader/ast/constant.d.ts +0 -8
  79. package/dist/types/cli/dataLoader/ast/generateRoutes.d.ts +0 -5
  80. package/dist/types/cli/dataLoader/ast/index.d.ts +0 -1
  81. package/dist/types/cli/dataLoader/generateRouteFile.d.ts +0 -7
  82. package/dist/types/cli/dataLoader/patchMFConfig.d.ts +0 -10
  83. package/dist/types/cli/dataLoader/plugin.d.ts +0 -6
  84. package/dist/types/cli/mfRuntimePlugins/node.d.ts +0 -3
  85. package/dist/types/cli/server/dataLoaderPlugin.d.ts +0 -10
  86. package/dist/types/cli/server/fetchRemoteFullRoutesMap.d.ts +0 -10
  87. package/dist/types/interfaces/route.d.ts +0 -12
  88. package/dist/types/runtime/dataLoader/plugin.d.ts +0 -2
  89. package/dist/types/runtime/dataLoader/utils.d.ts +0 -19
  90. package/dist/types/runtime/utils.d.ts +0 -2
  91. package/dist/types/runtime/withMFRouteId.d.ts +0 -1
@@ -1,63 +0,0 @@
1
- import { DEFAULT_LAYOUT } from "../../constant";
2
- import { transformName2Prefix, transformPrefix2Name } from "../utils";
3
- function getRemoteRoutesInfos(route, remoteRoutesMap) {
4
- if (!route.id) {
5
- return;
6
- }
7
- const remoteName = transformPrefix2Name(route.id);
8
- const remoteRouteObj = remoteRoutesMap[remoteName];
9
- if (!remoteRouteObj) {
10
- return;
11
- }
12
- const remoteRoutes = remoteRouteObj.routes[0];
13
- return {
14
- routes: remoteRoutes,
15
- name: remoteName,
16
- pathName: route.path
17
- };
18
- }
19
- function getRemoteLayoutId(remoteName) {
20
- const prefix = transformName2Prefix(remoteName);
21
- return `${prefix}${DEFAULT_LAYOUT}`;
22
- }
23
- function injectRemoteRoutes(initialRoutes, remoteRoutesMap) {
24
- const traverse = (route) => {
25
- var _route_children;
26
- const remoteRoutesInfos = getRemoteRoutesInfos(route, remoteRoutesMap);
27
- if (remoteRoutesInfos) {
28
- const { routes, pathName } = remoteRoutesInfos;
29
- route.id = routes.id;
30
- route.path = pathName;
31
- if (routes.loader) {
32
- route.loader = routes.loader;
33
- }
34
- if (routes.children) {
35
- route.children = routes.children;
36
- }
37
- route.element = routes.element;
38
- route.Component = routes.Component;
39
- return;
40
- }
41
- (_route_children = route.children) === null || _route_children === void 0 ? void 0 : _route_children.forEach((r) => {
42
- traverse(r);
43
- });
44
- };
45
- Object.keys(initialRoutes).forEach((entryName) => {
46
- const routes = initialRoutes[entryName];
47
- if (Array.isArray(routes)) {
48
- routes.forEach((route) => {
49
- traverse(route);
50
- });
51
- } else {
52
- var _routes_routes;
53
- routes === null || routes === void 0 ? void 0 : (_routes_routes = routes.routes) === null || _routes_routes === void 0 ? void 0 : _routes_routes.forEach((r) => {
54
- traverse(r);
55
- });
56
- }
57
- });
58
- }
59
- export {
60
- getRemoteLayoutId,
61
- getRemoteRoutesInfos,
62
- injectRemoteRoutes
63
- };
@@ -1,13 +0,0 @@
1
- import { encodeName, decodeName } from "@module-federation/sdk";
2
- const SPLIT_SYMBOL = "@";
3
- function transformName2Prefix(name) {
4
- return `${encodeName(name, "", false)}${SPLIT_SYMBOL}`;
5
- }
6
- function transformPrefix2Name(prefix) {
7
- const realPrefix = prefix.split(SPLIT_SYMBOL)[0];
8
- return decodeName(realPrefix, "", false);
9
- }
10
- export {
11
- transformName2Prefix,
12
- transformPrefix2Name
13
- };
@@ -1,7 +0,0 @@
1
- function withMFRouteId(id) {
2
- const prefix = typeof MODERN_ROUTER_ID_PREFIX === "string" ? MODERN_ROUTER_ID_PREFIX : "";
3
- return prefix + id;
4
- }
5
- export {
6
- withMFRouteId
7
- };
@@ -1,8 +0,0 @@
1
- export declare const IS_ROOT = "isRoot";
2
- export declare const ID = "id";
3
- export declare const COMPONENT = "component";
4
- export declare const LAZY_COMPONENT = "lazyImport";
5
- export declare const SHOULD_REVALIDATE = "shouldRevalidate";
6
- export declare const PRIVATE_COMPONENT = "_component";
7
- export declare const ELEMENT = "element";
8
- export declare const LOADER = "loader";
@@ -1,5 +0,0 @@
1
- declare function generateRoutes({ sourceCode, filePath, }: {
2
- sourceCode: string;
3
- filePath: string;
4
- }): void;
5
- export { generateRoutes };
@@ -1 +0,0 @@
1
- export { generateRoutes } from './generateRoutes';
@@ -1,7 +0,0 @@
1
- export declare function calcPathName(filePath: string, rootDir: string, entry: string): string;
2
- export declare function generateRouteFile(options: {
3
- appDirectory: string;
4
- }): Promise<{
5
- entries: string[];
6
- remotePathMap: Record<string, string>;
7
- }>;
@@ -1,10 +0,0 @@
1
- import { type moduleFederationPlugin } from '@module-federation/sdk';
2
- type PatchMFConfigOptions = {
3
- mfConfig: moduleFederationPlugin.ModuleFederationPluginOptions;
4
- metaName: string;
5
- isServer: boolean;
6
- internalDirectory: string;
7
- entries: Set<string>;
8
- };
9
- export declare function patchMFConfig(options: PatchMFConfigOptions): void;
10
- export {};
@@ -1,6 +0,0 @@
1
- import type { CliPlugin, AppTools } from '@modern-js/app-tools';
2
- import type { DataLoaderOptions, InternalModernPluginOptions } from '../../types';
3
- import { generateRoutes } from './ast';
4
- export declare const moduleFederationDataLoaderPlugin: (enable: boolean, internalOptions: InternalModernPluginOptions, userConfig: DataLoaderOptions) => CliPlugin<AppTools>;
5
- export default moduleFederationDataLoaderPlugin;
6
- export { generateRoutes };
@@ -1,3 +0,0 @@
1
- import type { FederationRuntimePlugin } from '@module-federation/enhanced/runtime';
2
- declare const injectNodeFetchPlugin: () => FederationRuntimePlugin;
3
- export default injectNodeFetchPlugin;
@@ -1,10 +0,0 @@
1
- import type { ServerPlugin } from '@modern-js/server-core';
2
- import { init } from '@module-federation/enhanced/runtime';
3
- type MFRuntimeOptions = Parameters<typeof init>[0];
4
- export type DataLoaderServerPluginOptions = {
5
- runtimeOptions: MFRuntimeOptions;
6
- partialSSRRemotes: string[];
7
- ssrByRouteIdsMap: Record<string, string>;
8
- };
9
- declare const _default: ({ runtimeOptions, partialSSRRemotes, ssrByRouteIdsMap, }: DataLoaderServerPluginOptions) => ServerPlugin;
10
- export default _default;
@@ -1,10 +0,0 @@
1
- import type { FederationHost } from '@module-federation/enhanced/runtime';
2
- import type { RouteObject } from '@modern-js/runtime/router';
3
- export type RemoteRoutesMap = Record<string, {
4
- routes: RouteObject[];
5
- }>;
6
- export declare function fetchRemoteFullRoutesMap(options: {
7
- remotePath: string;
8
- instance: FederationHost;
9
- }): Promise<RemoteRoutesMap>;
10
- export declare function getSSRByRouteIds(partialSSRRemotes: string[], remoteRoutesMap: RemoteRoutesMap): undefined | string[];
@@ -1,12 +0,0 @@
1
- export type Route = {
2
- id: string;
3
- type: string;
4
- loader?: boolean;
5
- index?: boolean;
6
- isRoot?: boolean;
7
- children?: Route[];
8
- };
9
- export type MFModernRouteJson = {
10
- routes: Record<string, Route[]>;
11
- prefix: string;
12
- };
@@ -1,2 +0,0 @@
1
- import type { Plugin } from '@modern-js/runtime';
2
- export declare const ssrDataLoaderPlugin: () => Plugin;
@@ -1,19 +0,0 @@
1
- import type { RouteObject } from '@modern-js/runtime/router';
2
- export type RemoteRoutesMap = Record<string, {
3
- routes: RouteObject[];
4
- }>;
5
- export type LoaderBundlesRoutes = {
6
- [entryName: string]: {
7
- routes: RouteObject[];
8
- };
9
- };
10
- export type NestedRoutes = {
11
- [entryName: string]: RouteObject[];
12
- };
13
- export declare function getRemoteRoutesInfos(route: RouteObject, remoteRoutesMap: RemoteRoutesMap): {
14
- routes: RouteObject;
15
- name: string;
16
- pathName: string | undefined;
17
- } | undefined;
18
- export declare function getRemoteLayoutId(remoteName: string): string;
19
- export declare function injectRemoteRoutes(initialRoutes: LoaderBundlesRoutes | NestedRoutes, remoteRoutesMap: RemoteRoutesMap): void;
@@ -1,2 +0,0 @@
1
- export declare function transformName2Prefix(name: string): string;
2
- export declare function transformPrefix2Name(prefix: string): string;
@@ -1 +0,0 @@
1
- export declare function withMFRouteId(id: string): string;