@module-federation/manifest 0.11.4 → 0.13.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
@@ -69,7 +69,7 @@ function _non_iterable_rest$2() {
69
69
  function _non_iterable_spread$1() {
70
70
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
71
71
  }
72
- function _object_spread$3(target) {
72
+ function _object_spread$2(target) {
73
73
  for(var i = 1; i < arguments.length; i++){
74
74
  var source = arguments[i] != null ? arguments[i] : {};
75
75
  var ownKeys = Object.keys(source);
@@ -387,7 +387,7 @@ function getTypesMetaInfo(pluginOptions, context, compilation) {
387
387
  if (normalizedRemote === false) {
388
388
  return defaultTypesMetaInfo;
389
389
  }
390
- var _retrieveTypesAssetsInfo = core.retrieveTypesAssetsInfo(_object_spread_props$2(_object_spread$3({}, normalizedRemote), {
390
+ var _retrieveTypesAssetsInfo = core.retrieveTypesAssetsInfo(_object_spread_props$2(_object_spread$2({}, normalizedRemote), {
391
391
  context: context,
392
392
  moduleFederationConfig: pluginOptions
393
393
  })), apiFileName = _retrieveTypesAssetsInfo.apiFileName, zipName = _retrieveTypesAssetsInfo.zipName, zipPrefix = _retrieveTypesAssetsInfo.zipPrefix;
@@ -465,21 +465,6 @@ function _define_property$3(obj, key, value) {
465
465
  }
466
466
  return obj;
467
467
  }
468
- function _object_spread$2(target) {
469
- for(var i = 1; i < arguments.length; i++){
470
- var source = arguments[i] != null ? arguments[i] : {};
471
- var ownKeys = Object.keys(source);
472
- if (typeof Object.getOwnPropertySymbols === "function") {
473
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
474
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
475
- }));
476
- }
477
- ownKeys.forEach(function(key) {
478
- _define_property$3(target, key, source[key]);
479
- });
480
- }
481
- return target;
482
- }
483
468
  function _ts_generator$2(thisArg, body) {
484
469
  var f, y, t, g, _ = {
485
470
  label: 0,
@@ -606,13 +591,22 @@ var ManifestManager = /*#__PURE__*/ function() {
606
591
  var extraOptions = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
607
592
  var _this = this;
608
593
  return _async_to_generator$2(function() {
609
- var compilation, publicPath, stats, compiler, bundler, additionalData, disableEmit, manifest, manifestFileName, ret;
594
+ var compilation, publicPath, stats, compiler, bundler, additionalData, disableEmit, id, name, metaData, manifest, manifestFileName, ret;
610
595
  return _ts_generator$2(this, function(_state) {
611
596
  switch(_state.label){
612
597
  case 0:
613
598
  compilation = options.compilation, publicPath = options.publicPath, stats = options.stats, compiler = options.compiler, bundler = options.bundler, additionalData = options.additionalData;
614
599
  disableEmit = extraOptions.disableEmit;
615
- manifest = _object_spread$2({}, stats);
600
+ // Initialize manifest with required properties from stats
601
+ id = stats.id, name = stats.name, metaData = stats.metaData;
602
+ manifest = {
603
+ id: id,
604
+ name: name,
605
+ metaData: metaData,
606
+ shared: [],
607
+ remotes: [],
608
+ exposes: []
609
+ };
616
610
  manifest.exposes = stats.exposes.reduce(function(sum, cur) {
617
611
  var expose = {
618
612
  id: cur.id,
@@ -1472,15 +1466,10 @@ var StatsManager = /*#__PURE__*/ function() {
1472
1466
  },
1473
1467
  {
1474
1468
  key: "_getModuleAssets",
1475
- value: function _getModuleAssets(compilation) {
1469
+ value: function _getModuleAssets(compilation, entryPointNames) {
1476
1470
  var chunks = compilation.chunks;
1477
1471
  var exposeFileNameImportMap = this._containerManager.exposeFileNameImportMap;
1478
1472
  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
1473
  chunks.forEach(function(chunk) {
1485
1474
  if (typeof chunk.name === 'string' && exposeFileNameImportMap[chunk.name]) {
1486
1475
  // TODO: support multiple import
@@ -1493,7 +1482,7 @@ var StatsManager = /*#__PURE__*/ function() {
1493
1482
  },
1494
1483
  {
1495
1484
  key: "_getProvideSharedAssets",
1496
- value: function _getProvideSharedAssets(compilation, stats) {
1485
+ value: function _getProvideSharedAssets(compilation, stats, entryPointNames) {
1497
1486
  var sharedModules = stats.modules.filter(function(module) {
1498
1487
  if (!module || !module.name) {
1499
1488
  return false;
@@ -1518,11 +1507,13 @@ var StatsManager = /*#__PURE__*/ function() {
1518
1507
  sharedModule.chunks.forEach(function(chunkID) {
1519
1508
  var chunk = findChunk(chunkID, compilation.chunks);
1520
1509
  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);
1510
+ if (!chunk) {
1511
+ return;
1512
+ }
1513
+ _to_consumable_array(chunk.groupsIterable).forEach(function(group) {
1514
+ if (group.name && !entryPointNames.includes(group.name)) {
1515
+ manifestOverrideChunkIDMap[sharedModuleName].sync.add(group.id);
1516
+ }
1526
1517
  });
1527
1518
  });
1528
1519
  });
@@ -1558,15 +1549,15 @@ var StatsManager = /*#__PURE__*/ function() {
1558
1549
  value: function _generateStats(compiler, compilation, extraOptions) {
1559
1550
  var _this = this;
1560
1551
  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;
1552
+ 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
1553
  return _ts_generator$1(this, function(_state) {
1563
1554
  switch(_state.label){
1564
1555
  case 0:
1565
1556
  _state.trys.push([
1566
1557
  0,
1567
- 3,
1558
+ 4,
1568
1559
  ,
1569
- 4
1560
+ 5
1570
1561
  ]);
1571
1562
  _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
1563
  metaData = _this._getMetaData(compiler, compilation, extraOptions);
@@ -1618,11 +1609,16 @@ var StatsManager = /*#__PURE__*/ function() {
1618
1609
  bundler: _this._bundler
1619
1610
  });
1620
1611
  _moduleHandler_collect = moduleHandler.collect(), remotes1 = _moduleHandler_collect.remotes, exposesMap = _moduleHandler_collect.exposesMap, sharedMap = _moduleHandler_collect.sharedMap;
1612
+ entryPointNames = _to_consumable_array(compilation.entrypoints.values()).map(function(e) {
1613
+ return e.name;
1614
+ }).filter(function(v) {
1615
+ return !!v;
1616
+ });
1621
1617
  return [
1622
1618
  4,
1623
1619
  Promise.all([
1624
1620
  new Promise(function(resolve) {
1625
- var sharedAssets = _this._getProvideSharedAssets(compilation, webpackStats);
1621
+ var sharedAssets = _this._getProvideSharedAssets(compilation, webpackStats, entryPointNames);
1626
1622
  Object.keys(sharedMap).forEach(function(sharedKey) {
1627
1623
  var assets = sharedAssets[sharedKey];
1628
1624
  if (assets) {
@@ -1632,7 +1628,7 @@ var StatsManager = /*#__PURE__*/ function() {
1632
1628
  resolve();
1633
1629
  }),
1634
1630
  new Promise(function(resolve) {
1635
- var moduleAssets = _this._getModuleAssets(compilation);
1631
+ var moduleAssets = _this._getModuleAssets(compilation, entryPointNames);
1636
1632
  Object.keys(exposesMap).forEach(function(exposeKey) {
1637
1633
  var assets = moduleAssets[exposeKey];
1638
1634
  if (assets) {
@@ -1672,25 +1668,59 @@ var StatsManager = /*#__PURE__*/ function() {
1672
1668
  });
1673
1669
  });
1674
1670
  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
1671
  })
1682
1672
  ])
1683
1673
  ];
1684
1674
  case 2:
1675
+ _state.sent();
1676
+ return [
1677
+ 4,
1678
+ new Promise(function(resolve) {
1679
+ var sharedAssets = stats.shared.reduce(function(sum, shared) {
1680
+ var _shared_assets = shared.assets, js = _shared_assets.js, css = _shared_assets.css;
1681
+ _to_consumable_array(js.sync).concat(_to_consumable_array(js.async), _to_consumable_array(css.async), [
1682
+ css.sync
1683
+ ]).forEach(function(asset) {
1684
+ sum.add(asset);
1685
+ });
1686
+ return sum;
1687
+ }, new Set());
1688
+ stats.exposes = Object.values(exposesMap).map(function(expose) {
1689
+ var _expose_assets = expose.assets, js = _expose_assets.js, css = _expose_assets.css;
1690
+ return _object_spread_props(_object_spread({}, expose), {
1691
+ assets: {
1692
+ js: {
1693
+ sync: js.sync.filter(function(asset) {
1694
+ return !sharedAssets.has(asset);
1695
+ }),
1696
+ async: js.async.filter(function(asset) {
1697
+ return !sharedAssets.has(asset);
1698
+ })
1699
+ },
1700
+ css: {
1701
+ sync: css.sync.filter(function(asset) {
1702
+ return !sharedAssets.has(asset);
1703
+ }),
1704
+ async: css.async.filter(function(asset) {
1705
+ return !sharedAssets.has(asset);
1706
+ })
1707
+ }
1708
+ }
1709
+ });
1710
+ });
1711
+ resolve();
1712
+ })
1713
+ ];
1714
+ case 3:
1685
1715
  _state.sent();
1686
1716
  return [
1687
1717
  2,
1688
1718
  stats
1689
1719
  ];
1690
- case 3:
1720
+ case 4:
1691
1721
  err = _state.sent();
1692
1722
  throw err;
1693
- case 4:
1723
+ case 5:
1694
1724
  return [
1695
1725
  2
1696
1726
  ];
package/dist/index.esm.js CHANGED
@@ -67,7 +67,7 @@ function _non_iterable_rest$2() {
67
67
  function _non_iterable_spread$1() {
68
68
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
69
69
  }
70
- function _object_spread$3(target) {
70
+ function _object_spread$2(target) {
71
71
  for(var i = 1; i < arguments.length; i++){
72
72
  var source = arguments[i] != null ? arguments[i] : {};
73
73
  var ownKeys = Object.keys(source);
@@ -385,7 +385,7 @@ function getTypesMetaInfo(pluginOptions, context, compilation) {
385
385
  if (normalizedRemote === false) {
386
386
  return defaultTypesMetaInfo;
387
387
  }
388
- var _retrieveTypesAssetsInfo = retrieveTypesAssetsInfo(_object_spread_props$2(_object_spread$3({}, normalizedRemote), {
388
+ var _retrieveTypesAssetsInfo = retrieveTypesAssetsInfo(_object_spread_props$2(_object_spread$2({}, normalizedRemote), {
389
389
  context: context,
390
390
  moduleFederationConfig: pluginOptions
391
391
  })), apiFileName = _retrieveTypesAssetsInfo.apiFileName, zipName = _retrieveTypesAssetsInfo.zipName, zipPrefix = _retrieveTypesAssetsInfo.zipPrefix;
@@ -463,21 +463,6 @@ function _define_property$3(obj, key, value) {
463
463
  }
464
464
  return obj;
465
465
  }
466
- function _object_spread$2(target) {
467
- for(var i = 1; i < arguments.length; i++){
468
- var source = arguments[i] != null ? arguments[i] : {};
469
- var ownKeys = Object.keys(source);
470
- if (typeof Object.getOwnPropertySymbols === "function") {
471
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
472
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
473
- }));
474
- }
475
- ownKeys.forEach(function(key) {
476
- _define_property$3(target, key, source[key]);
477
- });
478
- }
479
- return target;
480
- }
481
466
  function _ts_generator$2(thisArg, body) {
482
467
  var f, y, t, g, _ = {
483
468
  label: 0,
@@ -604,13 +589,22 @@ var ManifestManager = /*#__PURE__*/ function() {
604
589
  var extraOptions = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
605
590
  var _this = this;
606
591
  return _async_to_generator$2(function() {
607
- var compilation, publicPath, stats, compiler, bundler, additionalData, disableEmit, manifest, manifestFileName, ret;
592
+ var compilation, publicPath, stats, compiler, bundler, additionalData, disableEmit, id, name, metaData, manifest, manifestFileName, ret;
608
593
  return _ts_generator$2(this, function(_state) {
609
594
  switch(_state.label){
610
595
  case 0:
611
596
  compilation = options.compilation, publicPath = options.publicPath, stats = options.stats, compiler = options.compiler, bundler = options.bundler, additionalData = options.additionalData;
612
597
  disableEmit = extraOptions.disableEmit;
613
- manifest = _object_spread$2({}, stats);
598
+ // Initialize manifest with required properties from stats
599
+ id = stats.id, name = stats.name, metaData = stats.metaData;
600
+ manifest = {
601
+ id: id,
602
+ name: name,
603
+ metaData: metaData,
604
+ shared: [],
605
+ remotes: [],
606
+ exposes: []
607
+ };
614
608
  manifest.exposes = stats.exposes.reduce(function(sum, cur) {
615
609
  var expose = {
616
610
  id: cur.id,
@@ -1470,15 +1464,10 @@ var StatsManager = /*#__PURE__*/ function() {
1470
1464
  },
1471
1465
  {
1472
1466
  key: "_getModuleAssets",
1473
- value: function _getModuleAssets(compilation) {
1467
+ value: function _getModuleAssets(compilation, entryPointNames) {
1474
1468
  var chunks = compilation.chunks;
1475
1469
  var exposeFileNameImportMap = this._containerManager.exposeFileNameImportMap;
1476
1470
  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
1471
  chunks.forEach(function(chunk) {
1483
1472
  if (typeof chunk.name === 'string' && exposeFileNameImportMap[chunk.name]) {
1484
1473
  // TODO: support multiple import
@@ -1491,7 +1480,7 @@ var StatsManager = /*#__PURE__*/ function() {
1491
1480
  },
1492
1481
  {
1493
1482
  key: "_getProvideSharedAssets",
1494
- value: function _getProvideSharedAssets(compilation, stats) {
1483
+ value: function _getProvideSharedAssets(compilation, stats, entryPointNames) {
1495
1484
  var sharedModules = stats.modules.filter(function(module) {
1496
1485
  if (!module || !module.name) {
1497
1486
  return false;
@@ -1516,11 +1505,13 @@ var StatsManager = /*#__PURE__*/ function() {
1516
1505
  sharedModule.chunks.forEach(function(chunkID) {
1517
1506
  var chunk = findChunk(chunkID, compilation.chunks);
1518
1507
  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);
1508
+ if (!chunk) {
1509
+ return;
1510
+ }
1511
+ _to_consumable_array(chunk.groupsIterable).forEach(function(group) {
1512
+ if (group.name && !entryPointNames.includes(group.name)) {
1513
+ manifestOverrideChunkIDMap[sharedModuleName].sync.add(group.id);
1514
+ }
1524
1515
  });
1525
1516
  });
1526
1517
  });
@@ -1556,15 +1547,15 @@ var StatsManager = /*#__PURE__*/ function() {
1556
1547
  value: function _generateStats(compiler, compilation, extraOptions) {
1557
1548
  var _this = this;
1558
1549
  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;
1550
+ 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
1551
  return _ts_generator$1(this, function(_state) {
1561
1552
  switch(_state.label){
1562
1553
  case 0:
1563
1554
  _state.trys.push([
1564
1555
  0,
1565
- 3,
1556
+ 4,
1566
1557
  ,
1567
- 4
1558
+ 5
1568
1559
  ]);
1569
1560
  _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
1561
  metaData = _this._getMetaData(compiler, compilation, extraOptions);
@@ -1616,11 +1607,16 @@ var StatsManager = /*#__PURE__*/ function() {
1616
1607
  bundler: _this._bundler
1617
1608
  });
1618
1609
  _moduleHandler_collect = moduleHandler.collect(), remotes1 = _moduleHandler_collect.remotes, exposesMap = _moduleHandler_collect.exposesMap, sharedMap = _moduleHandler_collect.sharedMap;
1610
+ entryPointNames = _to_consumable_array(compilation.entrypoints.values()).map(function(e) {
1611
+ return e.name;
1612
+ }).filter(function(v) {
1613
+ return !!v;
1614
+ });
1619
1615
  return [
1620
1616
  4,
1621
1617
  Promise.all([
1622
1618
  new Promise(function(resolve) {
1623
- var sharedAssets = _this._getProvideSharedAssets(compilation, webpackStats);
1619
+ var sharedAssets = _this._getProvideSharedAssets(compilation, webpackStats, entryPointNames);
1624
1620
  Object.keys(sharedMap).forEach(function(sharedKey) {
1625
1621
  var assets = sharedAssets[sharedKey];
1626
1622
  if (assets) {
@@ -1630,7 +1626,7 @@ var StatsManager = /*#__PURE__*/ function() {
1630
1626
  resolve();
1631
1627
  }),
1632
1628
  new Promise(function(resolve) {
1633
- var moduleAssets = _this._getModuleAssets(compilation);
1629
+ var moduleAssets = _this._getModuleAssets(compilation, entryPointNames);
1634
1630
  Object.keys(exposesMap).forEach(function(exposeKey) {
1635
1631
  var assets = moduleAssets[exposeKey];
1636
1632
  if (assets) {
@@ -1670,25 +1666,59 @@ var StatsManager = /*#__PURE__*/ function() {
1670
1666
  });
1671
1667
  });
1672
1668
  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
1669
  })
1680
1670
  ])
1681
1671
  ];
1682
1672
  case 2:
1673
+ _state.sent();
1674
+ return [
1675
+ 4,
1676
+ new Promise(function(resolve) {
1677
+ var sharedAssets = stats.shared.reduce(function(sum, shared) {
1678
+ var _shared_assets = shared.assets, js = _shared_assets.js, css = _shared_assets.css;
1679
+ _to_consumable_array(js.sync).concat(_to_consumable_array(js.async), _to_consumable_array(css.async), [
1680
+ css.sync
1681
+ ]).forEach(function(asset) {
1682
+ sum.add(asset);
1683
+ });
1684
+ return sum;
1685
+ }, new Set());
1686
+ stats.exposes = Object.values(exposesMap).map(function(expose) {
1687
+ var _expose_assets = expose.assets, js = _expose_assets.js, css = _expose_assets.css;
1688
+ return _object_spread_props(_object_spread({}, expose), {
1689
+ assets: {
1690
+ js: {
1691
+ sync: js.sync.filter(function(asset) {
1692
+ return !sharedAssets.has(asset);
1693
+ }),
1694
+ async: js.async.filter(function(asset) {
1695
+ return !sharedAssets.has(asset);
1696
+ })
1697
+ },
1698
+ css: {
1699
+ sync: css.sync.filter(function(asset) {
1700
+ return !sharedAssets.has(asset);
1701
+ }),
1702
+ async: css.async.filter(function(asset) {
1703
+ return !sharedAssets.has(asset);
1704
+ })
1705
+ }
1706
+ }
1707
+ });
1708
+ });
1709
+ resolve();
1710
+ })
1711
+ ];
1712
+ case 3:
1683
1713
  _state.sent();
1684
1714
  return [
1685
1715
  2,
1686
1716
  stats
1687
1717
  ];
1688
- case 3:
1718
+ case 4:
1689
1719
  err = _state.sent();
1690
1720
  throw err;
1691
- case 4:
1721
+ case 5:
1692
1722
  return [
1693
1723
  2
1694
1724
  ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@module-federation/manifest",
3
- "version": "0.11.4",
3
+ "version": "0.13.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.4",
33
- "@module-federation/dts-plugin": "0.11.4",
34
- "@module-federation/managers": "0.11.4"
32
+ "@module-federation/sdk": "0.13.0",
33
+ "@module-federation/dts-plugin": "0.13.0",
34
+ "@module-federation/managers": "0.13.0"
35
35
  },
36
36
  "exports": {
37
37
  ".": {