@module-federation/manifest 0.11.3 → 0.12.0

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/dist/index.cjs.js CHANGED
@@ -1472,15 +1472,10 @@ var StatsManager = /*#__PURE__*/ function() {
1472
1472
  },
1473
1473
  {
1474
1474
  key: "_getModuleAssets",
1475
- value: function _getModuleAssets(compilation) {
1475
+ value: function _getModuleAssets(compilation, entryPointNames) {
1476
1476
  var chunks = compilation.chunks;
1477
1477
  var exposeFileNameImportMap = this._containerManager.exposeFileNameImportMap;
1478
1478
  var assets = {};
1479
- var entryPointNames = _to_consumable_array(compilation.entrypoints.values()).map(function(e) {
1480
- return e.name;
1481
- }).filter(function(v) {
1482
- return !!v;
1483
- });
1484
1479
  chunks.forEach(function(chunk) {
1485
1480
  if (typeof chunk.name === 'string' && exposeFileNameImportMap[chunk.name]) {
1486
1481
  // TODO: support multiple import
@@ -1493,7 +1488,7 @@ var StatsManager = /*#__PURE__*/ function() {
1493
1488
  },
1494
1489
  {
1495
1490
  key: "_getProvideSharedAssets",
1496
- value: function _getProvideSharedAssets(compilation, stats) {
1491
+ value: function _getProvideSharedAssets(compilation, stats, entryPointNames) {
1497
1492
  var sharedModules = stats.modules.filter(function(module) {
1498
1493
  if (!module || !module.name) {
1499
1494
  return false;
@@ -1518,11 +1513,13 @@ var StatsManager = /*#__PURE__*/ function() {
1518
1513
  sharedModule.chunks.forEach(function(chunkID) {
1519
1514
  var chunk = findChunk(chunkID, compilation.chunks);
1520
1515
  manifestOverrideChunkIDMap[sharedModuleName].sync.add(chunkID);
1521
- Array.from(chunk.getAllInitialChunks()).forEach(function(syncChunk) {
1522
- syncChunk.id && manifestOverrideChunkIDMap[sharedModuleName].sync.add(syncChunk.id);
1523
- });
1524
- Array.from(chunk.getAllAsyncChunks()).forEach(function(asyncChunk) {
1525
- asyncChunk.id && manifestOverrideChunkIDMap[sharedModuleName].async.add(asyncChunk.id);
1516
+ if (!chunk) {
1517
+ return;
1518
+ }
1519
+ _to_consumable_array(chunk.groupsIterable).forEach(function(group) {
1520
+ if (group.name && !entryPointNames.includes(group.name)) {
1521
+ manifestOverrideChunkIDMap[sharedModuleName].sync.add(group.id);
1522
+ }
1526
1523
  });
1527
1524
  });
1528
1525
  });
@@ -1558,15 +1555,15 @@ var StatsManager = /*#__PURE__*/ function() {
1558
1555
  value: function _generateStats(compiler, compilation, extraOptions) {
1559
1556
  var _this = this;
1560
1557
  return _async_to_generator$1(function() {
1561
- var _this__options, name, tmp, manifestOptions, _this__options_exposes, exposes, metaData, stats, remotes, liveStats, statsOptions, webpackStats, filteredModules, moduleHandler, _moduleHandler_collect, remotes1, exposesMap, sharedMap, err;
1558
+ var _this__options, name, tmp, manifestOptions, _this__options_exposes, exposes, metaData, stats, remotes, liveStats, statsOptions, webpackStats, filteredModules, moduleHandler, _moduleHandler_collect, remotes1, exposesMap, sharedMap, entryPointNames, err;
1562
1559
  return _ts_generator$1(this, function(_state) {
1563
1560
  switch(_state.label){
1564
1561
  case 0:
1565
1562
  _state.trys.push([
1566
1563
  0,
1567
- 3,
1564
+ 4,
1568
1565
  ,
1569
- 4
1566
+ 5
1570
1567
  ]);
1571
1568
  _this__options = _this._options, name = _this__options.name, tmp = _this__options.manifest, manifestOptions = tmp === void 0 ? {} : tmp, _this__options_exposes = _this__options.exposes, exposes = _this__options_exposes === void 0 ? {} : _this__options_exposes;
1572
1569
  metaData = _this._getMetaData(compiler, compilation, extraOptions);
@@ -1618,11 +1615,16 @@ var StatsManager = /*#__PURE__*/ function() {
1618
1615
  bundler: _this._bundler
1619
1616
  });
1620
1617
  _moduleHandler_collect = moduleHandler.collect(), remotes1 = _moduleHandler_collect.remotes, exposesMap = _moduleHandler_collect.exposesMap, sharedMap = _moduleHandler_collect.sharedMap;
1618
+ entryPointNames = _to_consumable_array(compilation.entrypoints.values()).map(function(e) {
1619
+ return e.name;
1620
+ }).filter(function(v) {
1621
+ return !!v;
1622
+ });
1621
1623
  return [
1622
1624
  4,
1623
1625
  Promise.all([
1624
1626
  new Promise(function(resolve) {
1625
- var sharedAssets = _this._getProvideSharedAssets(compilation, webpackStats);
1627
+ var sharedAssets = _this._getProvideSharedAssets(compilation, webpackStats, entryPointNames);
1626
1628
  Object.keys(sharedMap).forEach(function(sharedKey) {
1627
1629
  var assets = sharedAssets[sharedKey];
1628
1630
  if (assets) {
@@ -1632,7 +1634,7 @@ var StatsManager = /*#__PURE__*/ function() {
1632
1634
  resolve();
1633
1635
  }),
1634
1636
  new Promise(function(resolve) {
1635
- var moduleAssets = _this._getModuleAssets(compilation);
1637
+ var moduleAssets = _this._getModuleAssets(compilation, entryPointNames);
1636
1638
  Object.keys(exposesMap).forEach(function(exposeKey) {
1637
1639
  var assets = moduleAssets[exposeKey];
1638
1640
  if (assets) {
@@ -1672,25 +1674,59 @@ var StatsManager = /*#__PURE__*/ function() {
1672
1674
  });
1673
1675
  });
1674
1676
  resolve();
1675
- }),
1676
- new Promise(function(resolve) {
1677
- stats.exposes = Object.values(exposesMap).map(function(expose) {
1678
- return _object_spread({}, expose);
1679
- });
1680
- resolve();
1681
1677
  })
1682
1678
  ])
1683
1679
  ];
1684
1680
  case 2:
1681
+ _state.sent();
1682
+ return [
1683
+ 4,
1684
+ new Promise(function(resolve) {
1685
+ var sharedAssets = stats.shared.reduce(function(sum, shared) {
1686
+ var _shared_assets = shared.assets, js = _shared_assets.js, css = _shared_assets.css;
1687
+ _to_consumable_array(js.sync).concat(_to_consumable_array(js.async), _to_consumable_array(css.async), [
1688
+ css.sync
1689
+ ]).forEach(function(asset) {
1690
+ sum.add(asset);
1691
+ });
1692
+ return sum;
1693
+ }, new Set());
1694
+ stats.exposes = Object.values(exposesMap).map(function(expose) {
1695
+ var _expose_assets = expose.assets, js = _expose_assets.js, css = _expose_assets.css;
1696
+ return _object_spread_props(_object_spread({}, expose), {
1697
+ assets: {
1698
+ js: {
1699
+ sync: js.sync.filter(function(asset) {
1700
+ return !sharedAssets.has(asset);
1701
+ }),
1702
+ async: js.async.filter(function(asset) {
1703
+ return !sharedAssets.has(asset);
1704
+ })
1705
+ },
1706
+ css: {
1707
+ sync: css.sync.filter(function(asset) {
1708
+ return !sharedAssets.has(asset);
1709
+ }),
1710
+ async: css.async.filter(function(asset) {
1711
+ return !sharedAssets.has(asset);
1712
+ })
1713
+ }
1714
+ }
1715
+ });
1716
+ });
1717
+ resolve();
1718
+ })
1719
+ ];
1720
+ case 3:
1685
1721
  _state.sent();
1686
1722
  return [
1687
1723
  2,
1688
1724
  stats
1689
1725
  ];
1690
- case 3:
1726
+ case 4:
1691
1727
  err = _state.sent();
1692
1728
  throw err;
1693
- case 4:
1729
+ case 5:
1694
1730
  return [
1695
1731
  2
1696
1732
  ];
package/dist/index.esm.js CHANGED
@@ -1470,15 +1470,10 @@ var StatsManager = /*#__PURE__*/ function() {
1470
1470
  },
1471
1471
  {
1472
1472
  key: "_getModuleAssets",
1473
- value: function _getModuleAssets(compilation) {
1473
+ value: function _getModuleAssets(compilation, entryPointNames) {
1474
1474
  var chunks = compilation.chunks;
1475
1475
  var exposeFileNameImportMap = this._containerManager.exposeFileNameImportMap;
1476
1476
  var assets = {};
1477
- var entryPointNames = _to_consumable_array(compilation.entrypoints.values()).map(function(e) {
1478
- return e.name;
1479
- }).filter(function(v) {
1480
- return !!v;
1481
- });
1482
1477
  chunks.forEach(function(chunk) {
1483
1478
  if (typeof chunk.name === 'string' && exposeFileNameImportMap[chunk.name]) {
1484
1479
  // TODO: support multiple import
@@ -1491,7 +1486,7 @@ var StatsManager = /*#__PURE__*/ function() {
1491
1486
  },
1492
1487
  {
1493
1488
  key: "_getProvideSharedAssets",
1494
- value: function _getProvideSharedAssets(compilation, stats) {
1489
+ value: function _getProvideSharedAssets(compilation, stats, entryPointNames) {
1495
1490
  var sharedModules = stats.modules.filter(function(module) {
1496
1491
  if (!module || !module.name) {
1497
1492
  return false;
@@ -1516,11 +1511,13 @@ var StatsManager = /*#__PURE__*/ function() {
1516
1511
  sharedModule.chunks.forEach(function(chunkID) {
1517
1512
  var chunk = findChunk(chunkID, compilation.chunks);
1518
1513
  manifestOverrideChunkIDMap[sharedModuleName].sync.add(chunkID);
1519
- Array.from(chunk.getAllInitialChunks()).forEach(function(syncChunk) {
1520
- syncChunk.id && manifestOverrideChunkIDMap[sharedModuleName].sync.add(syncChunk.id);
1521
- });
1522
- Array.from(chunk.getAllAsyncChunks()).forEach(function(asyncChunk) {
1523
- asyncChunk.id && manifestOverrideChunkIDMap[sharedModuleName].async.add(asyncChunk.id);
1514
+ if (!chunk) {
1515
+ return;
1516
+ }
1517
+ _to_consumable_array(chunk.groupsIterable).forEach(function(group) {
1518
+ if (group.name && !entryPointNames.includes(group.name)) {
1519
+ manifestOverrideChunkIDMap[sharedModuleName].sync.add(group.id);
1520
+ }
1524
1521
  });
1525
1522
  });
1526
1523
  });
@@ -1556,15 +1553,15 @@ var StatsManager = /*#__PURE__*/ function() {
1556
1553
  value: function _generateStats(compiler, compilation, extraOptions) {
1557
1554
  var _this = this;
1558
1555
  return _async_to_generator$1(function() {
1559
- var _this__options, name, tmp, manifestOptions, _this__options_exposes, exposes, metaData, stats, remotes, liveStats, statsOptions, webpackStats, filteredModules, moduleHandler, _moduleHandler_collect, remotes1, exposesMap, sharedMap, err;
1556
+ var _this__options, name, tmp, manifestOptions, _this__options_exposes, exposes, metaData, stats, remotes, liveStats, statsOptions, webpackStats, filteredModules, moduleHandler, _moduleHandler_collect, remotes1, exposesMap, sharedMap, entryPointNames, err;
1560
1557
  return _ts_generator$1(this, function(_state) {
1561
1558
  switch(_state.label){
1562
1559
  case 0:
1563
1560
  _state.trys.push([
1564
1561
  0,
1565
- 3,
1562
+ 4,
1566
1563
  ,
1567
- 4
1564
+ 5
1568
1565
  ]);
1569
1566
  _this__options = _this._options, name = _this__options.name, tmp = _this__options.manifest, manifestOptions = tmp === void 0 ? {} : tmp, _this__options_exposes = _this__options.exposes, exposes = _this__options_exposes === void 0 ? {} : _this__options_exposes;
1570
1567
  metaData = _this._getMetaData(compiler, compilation, extraOptions);
@@ -1616,11 +1613,16 @@ var StatsManager = /*#__PURE__*/ function() {
1616
1613
  bundler: _this._bundler
1617
1614
  });
1618
1615
  _moduleHandler_collect = moduleHandler.collect(), remotes1 = _moduleHandler_collect.remotes, exposesMap = _moduleHandler_collect.exposesMap, sharedMap = _moduleHandler_collect.sharedMap;
1616
+ entryPointNames = _to_consumable_array(compilation.entrypoints.values()).map(function(e) {
1617
+ return e.name;
1618
+ }).filter(function(v) {
1619
+ return !!v;
1620
+ });
1619
1621
  return [
1620
1622
  4,
1621
1623
  Promise.all([
1622
1624
  new Promise(function(resolve) {
1623
- var sharedAssets = _this._getProvideSharedAssets(compilation, webpackStats);
1625
+ var sharedAssets = _this._getProvideSharedAssets(compilation, webpackStats, entryPointNames);
1624
1626
  Object.keys(sharedMap).forEach(function(sharedKey) {
1625
1627
  var assets = sharedAssets[sharedKey];
1626
1628
  if (assets) {
@@ -1630,7 +1632,7 @@ var StatsManager = /*#__PURE__*/ function() {
1630
1632
  resolve();
1631
1633
  }),
1632
1634
  new Promise(function(resolve) {
1633
- var moduleAssets = _this._getModuleAssets(compilation);
1635
+ var moduleAssets = _this._getModuleAssets(compilation, entryPointNames);
1634
1636
  Object.keys(exposesMap).forEach(function(exposeKey) {
1635
1637
  var assets = moduleAssets[exposeKey];
1636
1638
  if (assets) {
@@ -1670,25 +1672,59 @@ var StatsManager = /*#__PURE__*/ function() {
1670
1672
  });
1671
1673
  });
1672
1674
  resolve();
1673
- }),
1674
- new Promise(function(resolve) {
1675
- stats.exposes = Object.values(exposesMap).map(function(expose) {
1676
- return _object_spread({}, expose);
1677
- });
1678
- resolve();
1679
1675
  })
1680
1676
  ])
1681
1677
  ];
1682
1678
  case 2:
1679
+ _state.sent();
1680
+ return [
1681
+ 4,
1682
+ new Promise(function(resolve) {
1683
+ var sharedAssets = stats.shared.reduce(function(sum, shared) {
1684
+ var _shared_assets = shared.assets, js = _shared_assets.js, css = _shared_assets.css;
1685
+ _to_consumable_array(js.sync).concat(_to_consumable_array(js.async), _to_consumable_array(css.async), [
1686
+ css.sync
1687
+ ]).forEach(function(asset) {
1688
+ sum.add(asset);
1689
+ });
1690
+ return sum;
1691
+ }, new Set());
1692
+ stats.exposes = Object.values(exposesMap).map(function(expose) {
1693
+ var _expose_assets = expose.assets, js = _expose_assets.js, css = _expose_assets.css;
1694
+ return _object_spread_props(_object_spread({}, expose), {
1695
+ assets: {
1696
+ js: {
1697
+ sync: js.sync.filter(function(asset) {
1698
+ return !sharedAssets.has(asset);
1699
+ }),
1700
+ async: js.async.filter(function(asset) {
1701
+ return !sharedAssets.has(asset);
1702
+ })
1703
+ },
1704
+ css: {
1705
+ sync: css.sync.filter(function(asset) {
1706
+ return !sharedAssets.has(asset);
1707
+ }),
1708
+ async: css.async.filter(function(asset) {
1709
+ return !sharedAssets.has(asset);
1710
+ })
1711
+ }
1712
+ }
1713
+ });
1714
+ });
1715
+ resolve();
1716
+ })
1717
+ ];
1718
+ case 3:
1683
1719
  _state.sent();
1684
1720
  return [
1685
1721
  2,
1686
1722
  stats
1687
1723
  ];
1688
- case 3:
1724
+ case 4:
1689
1725
  err = _state.sent();
1690
1726
  throw err;
1691
- case 4:
1727
+ case 5:
1692
1728
  return [
1693
1729
  2
1694
1730
  ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@module-federation/manifest",
3
- "version": "0.11.3",
3
+ "version": "0.12.0",
4
4
  "license": "MIT",
5
5
  "description": "Provide manifest/stats for webpack/rspack MF project .",
6
6
  "keywords": [
@@ -29,9 +29,9 @@
29
29
  "dependencies": {
30
30
  "find-pkg": "2.0.0",
31
31
  "chalk": "3.0.0",
32
- "@module-federation/sdk": "0.11.3",
33
- "@module-federation/dts-plugin": "0.11.3",
34
- "@module-federation/managers": "0.11.3"
32
+ "@module-federation/sdk": "0.12.0",
33
+ "@module-federation/dts-plugin": "0.12.0",
34
+ "@module-federation/managers": "0.12.0"
35
35
  },
36
36
  "exports": {
37
37
  ".": {