@module-federation/node 2.0.2-beta.0 → 2.0.2-beta.3

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 (43) hide show
  1. package/CHANGELOG.md +162 -119
  2. package/package.json +13 -8
  3. package/src/filesystem/stratagies.d.ts +3 -3
  4. package/src/filesystem/stratagies.js +22 -23
  5. package/src/filesystem/stratagies.js.map +1 -1
  6. package/src/index.d.ts +3 -0
  7. package/src/index.js +7 -1
  8. package/src/index.js.map +1 -1
  9. package/src/plugins/AutomaticPublicPathPlugin.d.ts +9 -0
  10. package/src/plugins/AutomaticPublicPathPlugin.js +38 -0
  11. package/src/plugins/AutomaticPublicPathPlugin.js.map +1 -0
  12. package/src/plugins/ChunkCorrelationPlugin.d.ts +3 -3
  13. package/src/plugins/ChunkCorrelationPlugin.js +23 -7
  14. package/src/plugins/ChunkCorrelationPlugin.js.map +1 -1
  15. package/src/plugins/CommonJsChunkLoadingPlugin.d.ts +4 -4
  16. package/src/plugins/CommonJsChunkLoadingPlugin.js +22 -19
  17. package/src/plugins/CommonJsChunkLoadingPlugin.js.map +1 -1
  18. package/src/plugins/DynamicFilesystemChunkLoadingRuntimeModule.js +16 -14
  19. package/src/plugins/DynamicFilesystemChunkLoadingRuntimeModule.js.map +1 -1
  20. package/src/plugins/NodeContainerPlugin.d.ts +57 -0
  21. package/src/plugins/NodeContainerPlugin.js +105 -0
  22. package/src/plugins/NodeContainerPlugin.js.map +1 -0
  23. package/src/plugins/NodeFederationPlugin.d.ts +4 -1
  24. package/src/plugins/NodeFederationPlugin.js +43 -18
  25. package/src/plugins/NodeFederationPlugin.js.map +1 -1
  26. package/src/plugins/RemotePublicPathRuntimeModule.d.ts +3 -3
  27. package/src/plugins/RemotePublicPathRuntimeModule.js +54 -30
  28. package/src/plugins/RemotePublicPathRuntimeModule.js.map +1 -1
  29. package/src/plugins/{parts.js → webpackChunkUtilities.js} +15 -6
  30. package/src/plugins/webpackChunkUtilities.js.map +1 -0
  31. package/src/utils/flush-chunks.js +1 -0
  32. package/src/utils/flush-chunks.js.map +1 -1
  33. package/src/utils/hot-reload.d.ts +7 -1
  34. package/src/utils/hot-reload.js +97 -91
  35. package/src/utils/hot-reload.js.map +1 -1
  36. package/src/filesystem/DynamicFilesystemRuntimeModule.d.ts +0 -6
  37. package/src/filesystem/DynamicFilesystemRuntimeModule.js +0 -30
  38. package/src/filesystem/DynamicFilesystemRuntimeModule.js.map +0 -1
  39. package/src/plugins/FederationModuleInfoRuntimeModule.d.ts +0 -9
  40. package/src/plugins/FederationModuleInfoRuntimeModule.js +0 -55
  41. package/src/plugins/FederationModuleInfoRuntimeModule.js.map +0 -1
  42. package/src/plugins/parts.js.map +0 -1
  43. /package/src/plugins/{parts.d.ts → webpackChunkUtilities.d.ts} +0 -0
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.revalidate = void 0;
6
+ exports.getFetchModule = exports.revalidate = exports.fetchRemote = exports.checkFakeRemote = exports.checkMedusaConfigChange = exports.checkUnreachableRemote = exports.performReload = void 0;
7
7
  const hashmap = {};
8
8
  const crypto_1 = __importDefault(require("crypto"));
9
9
  const requireCacheRegex = /(remote|runtime|server|hot-reload|react-loadable-manifest)/;
@@ -19,14 +19,7 @@ const performReload = (shouldReload) => {
19
19
  req = __non_webpack_require__;
20
20
  }
21
21
  //@ts-ignore
22
- globalThis.__remote_scope__ = {
23
- _config: {},
24
- _medusa: {},
25
- };
26
- //@ts-ignore
27
- globalThis.backupScope = {};
28
- //@ts-ignore
29
- globalThis.factoryTracker = {};
22
+ globalThis.__remote_scope__ = {};
30
23
  Object.keys(req.cache).forEach((key) => {
31
24
  if (requireCacheRegex.test(key)) {
32
25
  delete req.cache[key];
@@ -34,99 +27,111 @@ const performReload = (shouldReload) => {
34
27
  });
35
28
  return true;
36
29
  };
37
- /*
38
- This code is doing two things First it checks if there are any fake remotes in the
39
- global scope If so then we need to reload the server because a remote has changed
40
- and needs to be fetched again Second it checks for each remote that was loaded by
41
- webpack whether its hash has changed since last time or not
42
- */
43
- const revalidate = () => {
30
+ exports.performReload = performReload;
31
+ const checkUnreachableRemote = (remoteScope) => {
32
+ for (const property in remoteScope.remotes) {
33
+ if (!remoteScope[property]) {
34
+ console.log(remoteScope, property);
35
+ console.error('unreachable remote found', property, 'hot reloading to refetch');
36
+ return true;
37
+ }
38
+ }
39
+ return false;
40
+ };
41
+ exports.checkUnreachableRemote = checkUnreachableRemote;
42
+ const checkMedusaConfigChange = (remoteScope, fetchModule) => {
44
43
  //@ts-ignore
45
- if (globalThis.__remote_scope__) {
44
+ if (remoteScope._medusa) {
46
45
  //@ts-ignore
47
- const remoteScope = globalThis.__remote_scope__;
48
- return new Promise((res) => {
49
- const fetches = [];
50
- for (const property in remoteScope) {
51
- if (remoteScope[property].fake) {
52
- console.error('unreachable remote found', property, 'hot reloading to refetch');
53
- res(true);
54
- break;
46
+ for (const property in remoteScope._medusa) {
47
+ fetchModule(property)
48
+ .then((res) => res.json())
49
+ .then((medusaResponse) => {
50
+ if (medusaResponse.version !==
51
+ //@ts-ignore
52
+ remoteScope?._medusa[property].version) {
53
+ console.log('medusa config changed', property, 'hot reloading to refetch');
54
+ (0, exports.performReload)(true);
55
+ return true;
55
56
  }
57
+ });
58
+ }
59
+ }
60
+ return false;
61
+ };
62
+ exports.checkMedusaConfigChange = checkMedusaConfigChange;
63
+ const checkFakeRemote = (remoteScope) => {
64
+ for (const property in remoteScope._config) {
65
+ let remote = remoteScope._config[property];
66
+ const resolveRemote = async () => {
67
+ remote = await remote();
68
+ };
69
+ if (typeof remote === 'function') {
70
+ resolveRemote();
71
+ }
72
+ if (remote.fake) {
73
+ console.log('fake remote found', property, 'hot reloading to refetch');
74
+ return true;
75
+ }
76
+ }
77
+ return false;
78
+ };
79
+ exports.checkFakeRemote = checkFakeRemote;
80
+ const fetchRemote = (remoteScope, fetchModule) => {
81
+ const fetches = [];
82
+ for (const property in remoteScope._config) {
83
+ const name = property;
84
+ const url = remoteScope._config[property];
85
+ const fetcher = fetchModule(url)
86
+ .then((re) => {
87
+ if (!re.ok) {
88
+ throw new Error(`Error loading remote: status: ${re.status}, content-type: ${re.headers.get('content-type')}`);
56
89
  }
57
- const fetchModule = getFetchModule();
58
- if (remoteScope._medusa) {
59
- for (const property in remoteScope._medusa) {
60
- fetchModule(property)
61
- .then((res) => res.json())
62
- .then((medusaResponse) => {
63
- //@ts-ignore
64
- if (medusaResponse.version !==
65
- //@ts-ignore
66
- remoteScope?._medusa[property].version) {
67
- console.log('medusa config changed', property, 'hot reloading to refetch');
68
- performReload(true);
69
- return res(true);
70
- }
71
- });
90
+ return re.text();
91
+ })
92
+ .then((contents) => {
93
+ const hash = crypto_1.default
94
+ .createHash('md5')
95
+ .update(contents)
96
+ .digest('hex');
97
+ if (hashmap[name]) {
98
+ if (hashmap[name] !== hash) {
99
+ hashmap[name] = hash;
100
+ console.log(name, 'hash is different - must hot reload server');
101
+ return true;
72
102
  }
73
103
  }
74
- for (const property in remoteScope._config) {
75
- let remote = remoteScope._config[property];
76
- const resolveRemote = async () => {
77
- remote = await remote();
78
- };
79
- if (typeof remote === 'function') {
80
- resolveRemote();
81
- }
82
- if (remote.fake) {
83
- console.log('fake remote found', property, 'hot reloading to refetch');
84
- res(true);
85
- }
86
- const name = property;
87
- const url = remote;
88
- const fetcher = fetchModule(url)
89
- .then((re) => {
90
- if (!re.ok) {
91
- throw new Error(`Error loading remote: status: ${re.status}, content-type: ${re.headers.get('content-type')}`);
92
- }
93
- return re.text();
94
- })
95
- .then((contents) => {
96
- const hash = crypto_1.default
97
- .createHash('md5')
98
- .update(contents)
99
- .digest('hex');
100
- if (hashmap[name]) {
101
- if (hashmap[name] !== hash) {
102
- hashmap[name] = hash;
103
- console.log(name, 'hash is different - must hot reload server');
104
- res(true);
105
- }
106
- }
107
- else {
108
- hashmap[name] = hash;
109
- }
110
- })
111
- .catch((e) => {
112
- console.error('Remote', name, url, 'Failed to load or is not online', e);
113
- });
114
- fetches.push(fetcher);
104
+ else {
105
+ hashmap[name] = hash;
115
106
  }
116
- Promise.all(fetches).then(() => res(false));
117
- }).then((shouldReload) => {
118
- return performReload(shouldReload);
107
+ })
108
+ .catch((e) => {
109
+ console.error('Remote', name, url, 'Failed to load or is not online', e);
119
110
  });
111
+ fetches.push(fetcher);
120
112
  }
121
- return Promise.resolve(false);
113
+ return Promise.all(fetches);
114
+ };
115
+ exports.fetchRemote = fetchRemote;
116
+ //@ts-ignore
117
+ const revalidate = (remoteScope = globalThis.__remote_scope__ || {}, fetchModule = getFetchModule() || (() => { })) => {
118
+ return new Promise((res) => {
119
+ if ((0, exports.checkUnreachableRemote)(remoteScope)) {
120
+ res(true);
121
+ }
122
+ // @ts-ignore
123
+ if ((0, exports.checkMedusaConfigChange)(remoteScope, fetchModule)) {
124
+ res(true);
125
+ }
126
+ if ((0, exports.checkFakeRemote)(remoteScope)) {
127
+ res(true);
128
+ }
129
+ (0, exports.fetchRemote)(remoteScope, fetchModule).then(() => res(false));
130
+ }).then((shouldReload) => {
131
+ return (0, exports.performReload)(shouldReload);
132
+ });
122
133
  };
123
134
  exports.revalidate = revalidate;
124
- /*
125
- This code is importing the nodefetch module and assigning it to a variable named
126
- node Fetch The code then checks if there\'s an existing global object called webpack
127
- Chunk Load which is used by webpack If so we use that instead of nodefetch This
128
- allows us to use fetch in our tests without having to mock out nodefetch
129
- */
130
135
  function getFetchModule() {
131
136
  //@ts-ignore
132
137
  const loadedModule = globalThis.webpackChunkLoad || global.webpackChunkLoad || global.fetch;
@@ -137,4 +142,5 @@ function getFetchModule() {
137
142
  const nodeFetch = require('node-fetch');
138
143
  return nodeFetch.default || nodeFetch;
139
144
  }
145
+ exports.getFetchModule = getFetchModule;
140
146
  //# sourceMappingURL=hot-reload.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hot-reload.js","sourceRoot":"","sources":["../../../../../packages/node/src/utils/hot-reload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hot-reload.js","sourceRoot":"","sources":["../../../../../packages/node/src/utils/hot-reload.ts"],"names":[],"mappings":";;;;;;AAAA,MAAM,OAAO,GAAG,EAA4B,CAAC;AAC7C,oDAA4B;AAE5B,MAAM,iBAAiB,GACrB,4DAA4D,CAAC;AAExD,MAAM,aAAa,GAAG,CAAC,YAAiB,EAAE,EAAE;IACjD,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,KAAK,CAAC;KACd;IACD,IAAI,GAAgB,CAAC;IACrB,IAAI,OAAO,uBAAuB,KAAK,WAAW,EAAE;QAClD,GAAG,GAAG,OAAO,CAAC;KACf;SAAM;QACL,GAAG,GAAG,uBAAsC,CAAC;KAC9C;IAED,YAAY;IACZ,UAAU,CAAC,gBAAgB,GAAG,EAAE,CAAC;IAEjC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAC/B,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACvB;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AArBW,QAAA,aAAa,iBAqBxB;AAEK,MAAM,sBAAsB,GAAG,CAAC,WAAgB,EAAE,EAAE;IACzD,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,OAAO,EAAE;QAC1C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;YAC1B,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACnC,OAAO,CAAC,KAAK,CACX,0BAA0B,EAC1B,QAAQ,EACR,0BAA0B,CAC3B,CAAC;YACF,OAAO,IAAI,CAAC;SACb;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAbW,QAAA,sBAAsB,0BAajC;AAEK,MAAM,uBAAuB,GAAG,CAAC,WAAgB,EAAE,WAAgB,EAAE,EAAE;IAC5E,YAAY;IACZ,IAAI,WAAW,CAAC,OAAO,EAAE;QACvB,YAAY;QACZ,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,OAAO,EAAE;YAC1C,WAAW,CAAC,QAAQ,CAAC;iBAClB,IAAI,CAAC,CAAC,GAAa,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;iBACnC,IAAI,CAAC,CAAC,cAAmB,EAAmB,EAAE;gBAC7C,IACE,cAAc,CAAC,OAAO;oBACtB,YAAY;oBACZ,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,EACtC;oBACA,OAAO,CAAC,GAAG,CACT,uBAAuB,EACvB,QAAQ,EACR,0BAA0B,CAC3B,CAAC;oBACF,IAAA,qBAAa,EAAC,IAAI,CAAC,CAAC;oBACpB,OAAO,IAAI,CAAC;iBACb;YACH,CAAC,CAAC,CAAC;SACN;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAzBW,QAAA,uBAAuB,2BAyBlC;AAEK,MAAM,eAAe,GAAG,CAAC,WAAgB,EAAE,EAAE;IAClD,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,OAAO,EAAE;QAC1C,IAAI,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE3C,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;YAC/B,MAAM,GAAG,MAAM,MAAM,EAAE,CAAC;QAC1B,CAAC,CAAC;QAEF,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;YAChC,aAAa,EAAE,CAAC;SACjB;QAED,IAAI,MAAM,CAAC,IAAI,EAAE;YACf,OAAO,CAAC,GAAG,CACT,mBAAmB,EACnB,QAAQ,EACR,0BAA0B,CAC3B,CAAC;YACF,OAAO,IAAI,CAAC;SACb;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAtBW,QAAA,eAAe,mBAsB1B;AAEK,MAAM,WAAW,GAAG,CAAC,WAAgB,EAAE,WAAgB,EAAE,EAAE;IAChE,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,OAAO,EAAE;QAC1C,MAAM,IAAI,GAAG,QAAQ,CAAC;QACtB,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE1C,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC;aAC7B,IAAI,CAAC,CAAC,EAAY,EAAE,EAAE;YACrB,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBACV,MAAM,IAAI,KAAK,CACb,iCACE,EAAE,CAAC,MACL,mBAAmB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CACpD,CAAC;aACH;YACD,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,QAAgB,EAAkB,EAAE;YACzC,MAAM,IAAI,GAAG,gBAAM;iBAChB,UAAU,CAAC,KAAK,CAAC;iBACjB,MAAM,CAAC,QAAQ,CAAC;iBAChB,MAAM,CAAC,KAAK,CAAC,CAAC;YAEjB,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;gBACjB,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;oBAC1B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;oBACrB,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,4CAA4C,CAAC,CAAC;oBAChE,OAAO,IAAI,CAAC;iBACb;aACF;iBAAM;gBACL,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;aACtB;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;YAClB,OAAO,CAAC,KAAK,CACX,QAAQ,EACR,IAAI,EACJ,GAAG,EACH,iCAAiC,EACjC,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEL,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACvB;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC,CAAC;AA9CW,QAAA,WAAW,eA8CtB;AACF,YAAY;AACL,MAAM,UAAU,GAAG,CAAC,cAAmB,UAAU,CAAC,gBAAgB,IAAI,EAAE,EAAE,cAAmB,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,EAAE,EAAE;IACpI,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACzB,IAAI,IAAA,8BAAsB,EAAC,WAAW,CAAC,EAAE;YACvC,GAAG,CAAC,IAAI,CAAC,CAAC;SACX;QACL,aAAa;QACT,IAAI,IAAA,+BAAuB,EAAC,WAAW,EAAE,WAAW,CAAC,EAAE;YACrD,GAAG,CAAC,IAAI,CAAC,CAAC;SACX;QAED,IAAI,IAAA,uBAAe,EAAC,WAAW,CAAC,EAAE;YAChC,GAAG,CAAC,IAAI,CAAC,CAAC;SACX;QAED,IAAA,mBAAW,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;QACvB,OAAO,IAAA,qBAAa,EAAC,YAAY,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAlBW,QAAA,UAAU,cAkBrB;AAEF,SAAgB,cAAc;IAC5B,YAAY;IACZ,MAAM,YAAY,GAChB,UAAU,CAAC,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,KAAK,CAAC;IACzE,IAAI,YAAY,EAAE;QAChB,OAAO,YAAY,CAAC;KACrB;IACD,8DAA8D;IAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACxC,OAAO,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC;AACxC,CAAC;AAVD,wCAUC"}
@@ -1,6 +0,0 @@
1
- export default FileSystemRunInContextStrategyRuntimeModule;
2
- declare class FileSystemRunInContextStrategyRuntimeModule extends RuntimeModule {
3
- constructor();
4
- generate(): string;
5
- }
6
- import { RuntimeModule } from "webpack";
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const { RuntimeModule, Template } = require('webpack');
4
- const stratagies_1 = require("./stratagies");
5
- class FileSystemRunInContextStrategyRuntimeModule extends RuntimeModule {
6
- constructor() {
7
- super('dynamic-file-system', RuntimeModule.STAGE_BASIC);
8
- }
9
- generate() {
10
- return Template.asString([
11
- stratagies_1.fileSystemRunInContextStrategy.toString(),
12
- stratagies_1.httpEvalStrategy.toString(),
13
- stratagies_1.httpVmStrategy.toString(),
14
- 'const loadChunkStrategy = async (strategyType,chunkId,rootOutputDir, remotes, callback) => {',
15
- Template.indent([
16
- 'switch (strategyType) {',
17
- Template.indent([
18
- 'case "filesystem": return await fileSystemRunInContextStrategy(chunkId,rootOutputDir, remotes, callback);',
19
- 'case "http-eval": return await httpEvalStrategy(chunkId,rootOutputDir, remotes, callback);',
20
- 'case "http-vm": return await httpVmStrategy(chunkId,rootOutputDir, remotes, callback);',
21
- 'default: throw new Error("Invalid strategy type");',
22
- ]),
23
- '}',
24
- ]),
25
- '};',
26
- ]);
27
- }
28
- }
29
- exports.default = FileSystemRunInContextStrategyRuntimeModule;
30
- //# sourceMappingURL=DynamicFilesystemRuntimeModule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DynamicFilesystemRuntimeModule.js","sourceRoot":"","sources":["../../../../../packages/node/src/filesystem/DynamicFilesystemRuntimeModule.js"],"names":[],"mappings":";;AAAA,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACvD,6CAIsB;AAEtB,MAAM,2CAA4C,SAAQ,aAAa;IACrE;QACE,KAAK,CAAC,qBAAqB,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ;QACN,OAAO,QAAQ,CAAC,QAAQ,CAAC;YACvB,2CAA8B,CAAC,QAAQ,EAAE;YACzC,6BAAgB,CAAC,QAAQ,EAAE;YAC3B,2BAAc,CAAC,QAAQ,EAAE;YACzB,8FAA8F;YAC9F,QAAQ,CAAC,MAAM,CAAC;gBACd,yBAAyB;gBACzB,QAAQ,CAAC,MAAM,CAAC;oBACd,2GAA2G;oBAC3G,4FAA4F;oBAC5F,wFAAwF;oBACxF,oDAAoD;iBACrD,CAAC;gBACF,GAAG;aACJ,CAAC;YACF,IAAI;SACL,CAAC,CAAC;IACL,CAAC;CACF;AAED,kBAAe,2CAA2C,CAAC"}
@@ -1,9 +0,0 @@
1
- import { RuntimeModule } from 'webpack';
2
- declare class FederationModuleInfoRuntimeModule extends RuntimeModule {
3
- constructor();
4
- /**
5
- * @returns {string} runtime code
6
- */
7
- generate(): string;
8
- }
9
- export default FederationModuleInfoRuntimeModule;
@@ -1,55 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const webpack_1 = require("webpack");
4
- const webpack_2 = require("webpack");
5
- class FederationModuleInfoRuntimeModule extends webpack_1.RuntimeModule {
6
- constructor() {
7
- super('federation module info runtime', webpack_1.RuntimeModule.STAGE_BASIC);
8
- }
9
- /**
10
- * @returns {string} runtime code
11
- */
12
- generate() {
13
- return webpack_2.Template.asString([
14
- `${webpack_1.RuntimeGlobals.require}.federation = {`,
15
- webpack_2.Template.indent([
16
- `cache: {},`,
17
- `remotes: {},`,
18
- `moduleInfo: { },`,
19
- ]),
20
- `};`,
21
- // `if (!globalThis.__remote_scopes__) {`,
22
- webpack_2.Template.indent([
23
- '// backward compatible global proxy',
24
- `globalThis.__remote_scope__ = globalThis.__remote_scope__ || new Proxy(${webpack_1.RuntimeGlobals.require}.federation, {`,
25
- webpack_2.Template.indent([
26
- `get: function(target, prop, receiver) {`,
27
- 'var result;',
28
- webpack_2.Template.indent([
29
- `if (prop === '_config') {`,
30
- webpack_2.Template.indent([`result = ${webpack_1.RuntimeGlobals.require}.federation.remotes;`]),
31
- `} else {`,
32
- webpack_2.Template.indent([`result = ${webpack_1.RuntimeGlobals.require}.federation.cache[prop];`]),
33
- `}`,
34
- 'return result;'
35
- ]),
36
- `},`,
37
- `set: function(target, prop, value) {`,
38
- webpack_2.Template.indent([
39
- `if (prop === '_config') {`,
40
- webpack_2.Template.indent([`${webpack_1.RuntimeGlobals.require}.federation.remotes = value;`]),
41
- `} else {`,
42
- webpack_2.Template.indent([`${webpack_1.RuntimeGlobals.require}.federation.cache[prop] = value;`]),
43
- `}`,
44
- `return true;`,
45
- ]),
46
- `}`,
47
- ]),
48
- `});`,
49
- ]),
50
- // `}`,
51
- ]);
52
- }
53
- }
54
- exports.default = FederationModuleInfoRuntimeModule;
55
- //# sourceMappingURL=FederationModuleInfoRuntimeModule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FederationModuleInfoRuntimeModule.js","sourceRoot":"","sources":["../../../../../packages/node/src/plugins/FederationModuleInfoRuntimeModule.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,qCAAwD;AACxD,qCAAmC;AAEnC,MAAM,iCAAkC,SAAQ,uBAAa;IAC3D;QACE,KAAK,CAAC,gCAAgC,EAAE,uBAAa,CAAC,WAAW,CAAE,CAAC;IACtE,CAAC;IAED;;OAEG;IACM,QAAQ;QACf,OAAO,kBAAQ,CAAC,QAAQ,CAAC;YACvB,GAAG,wBAAc,CAAC,OAAO,iBAAiB;YAC1C,kBAAQ,CAAC,MAAM,CAAC;gBACd,YAAY;gBACZ,cAAc;gBACd,kBAAkB;aACnB,CAAC;YACF,IAAI;YACJ,0CAA0C;YAC1C,kBAAQ,CAAC,MAAM,CAAC;gBACd,qCAAqC;gBACrC,0EAA0E,wBAAc,CAAC,OAAO,gBAAgB;gBAChH,kBAAQ,CAAC,MAAM,CAAC;oBACd,yCAAyC;oBACzC,aAAa;oBACb,kBAAQ,CAAC,MAAM,CAAC;wBACd,2BAA2B;wBAC3B,kBAAQ,CAAC,MAAM,CAAC,CAAC,YAAY,wBAAc,CAAC,OAAO,sBAAsB,CAAC,CAAC;wBAC3E,UAAU;wBACV,kBAAQ,CAAC,MAAM,CAAC,CAAC,YAAY,wBAAc,CAAC,OAAO,0BAA0B,CAAC,CAAC;wBAC/E,GAAG;wBACH,gBAAgB;qBACjB,CAAC;oBACF,IAAI;oBACJ,sCAAsC;oBACtC,kBAAQ,CAAC,MAAM,CAAC;wBACd,2BAA2B;wBAC3B,kBAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,wBAAc,CAAC,OAAO,8BAA8B,CAAC,CAAC;wBAC1E,UAAU;wBACV,kBAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,wBAAc,CAAC,OAAO,kCAAkC,CAAC,CAAC;wBAC9E,GAAG;wBACH,cAAc;qBACf,CAAC;oBACF,GAAG;iBACJ,CAAC;gBACF,KAAK;aACN,CAAC;YACF,OAAO;SACR,CAAC,CAAC;IACL,CAAC;CACF;AAED,kBAAe,iCAAiC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"parts.js","sourceRoot":"","sources":["../../../../../packages/node/src/plugins/parts.ts"],"names":[],"mappings":"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"}