Skip to content

Commit c171400

Browse files
authored
fix: the exposes.requires type in manifest.json should be array instead of object (#4094)
1 parent dcc290e commit c171400

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

.changeset/six-lies-hang.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@module-federation/manifest': patch
3+
---
4+
5+
fix: the requires type in manifest.exposes shoule be array instead of object

packages/manifest/src/ModuleHandler.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ export function getExposeItem({
3434
id: composeKeyWithSeparator(name, exposeModuleName),
3535
name: exposeModuleName,
3636
// @ts-ignore to deduplicate
37-
requires: new Set(),
37+
requires: [],
3838
file: path.relative(process.cwd(), file.import[0]),
3939
assets: {
4040
js: {
@@ -122,7 +122,7 @@ class ModuleHandler {
122122
if (exposesMap[getFileNameWithOutExt(issuerName)]) {
123123
const expose = exposesMap[getFileNameWithOutExt(issuerName)];
124124
// @ts-ignore use Set to deduplicate
125-
expose.requires.add(pkgName);
125+
expose.requires.push(pkgName);
126126
// @ts-ignore use Set to deduplicate
127127
sharedMap[pkgName].usedIn.add(expose.path);
128128
}
@@ -135,7 +135,7 @@ class ModuleHandler {
135135
if (exposesMap[getFileNameWithOutExt(exposeModName)]) {
136136
const expose = exposesMap[getFileNameWithOutExt(exposeModName)];
137137
// @ts-ignore to deduplicate
138-
expose.requires.add(pkgName);
138+
expose.requires.push(pkgName);
139139
// @ts-ignore to deduplicate
140140
sharedMap[pkgName].usedIn.add(expose.path);
141141
}

packages/manifest/src/StatsManager.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -379,7 +379,7 @@ class StatsManager {
379379
exposesMap[exposeKey].assets = assets;
380380
}
381381
exposesMap[exposeKey].requires = Array.from(
382-
exposesMap[exposeKey].requires,
382+
new Set(exposesMap[exposeKey].requires),
383383
);
384384
});
385385
resolve();

0 commit comments

Comments
 (0)