@module-federation/dts-plugin 0.17.1 → 0.18.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,36 @@
1
1
  # @module-federation/dts-plugin
2
2
 
3
+ ## 0.18.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [0bf3a3a]
8
+ - @module-federation/sdk@0.18.1
9
+ - @module-federation/managers@0.18.1
10
+ - @module-federation/third-party-dts-extractor@0.18.1
11
+ - @module-federation/error-codes@0.18.1
12
+
13
+ ## 0.18.0
14
+
15
+ ### Minor Changes
16
+
17
+ - f6381e6: Added `family` option to DTS plugin
18
+
19
+ ### Patch Changes
20
+
21
+ - 08f089a: fix(dts-plugin): update koa to 2.16.2 to fix CVE-2025-8129
22
+
23
+ Security fix for open redirect vulnerability (GHSA-jgmv-j7ww-jx2x) in koa dependency.
24
+ Updates koa from 2.16.1 to 2.16.2 to prevent attackers from manipulating the Referrer
25
+ header in koa's back redirect functionality. Version 2.16.2 restricts redirects to
26
+ same-origin only, preventing malicious external redirects.
27
+
28
+ - Updated dependencies [f6381e6]
29
+ - @module-federation/sdk@0.18.0
30
+ - @module-federation/managers@0.18.0
31
+ - @module-federation/third-party-dts-extractor@0.18.0
32
+ - @module-federation/error-codes@0.18.0
33
+
3
34
  ## 0.17.1
4
35
 
5
36
  ### Patch Changes
package/dist/core.js CHANGED
@@ -1168,7 +1168,8 @@ var downloadTypesArchive = /* @__PURE__ */ __name((hostOptions) => {
1168
1168
  const url = new URL(fileToDownload).href;
1169
1169
  const response = yield axiosGet(url, {
1170
1170
  responseType: "arraybuffer",
1171
- timeout: hostOptions.timeout
1171
+ timeout: hostOptions.timeout,
1172
+ family: hostOptions.family
1172
1173
  }).catch(downloadErrorLogger(destinationFolder, url));
1173
1174
  if (typeof ((_a3 = response.headers) == null ? void 0 : _a3["content-type"]) === "string" && response.headers["content-type"].includes("text/html")) {
1174
1175
  throw new Error(`${url} receives invalid content-type: ${response.headers["content-type"]}`);
@@ -1219,7 +1220,8 @@ var defaultOptions = {
1219
1220
  runtimePkgs: [],
1220
1221
  remoteTypeUrls: {},
1221
1222
  timeout: 6e4,
1222
- typesOnBuild: false
1223
+ typesOnBuild: false,
1224
+ family: 4
1223
1225
  };
1224
1226
  var buildZipUrl = /* @__PURE__ */ __name((hostOptions, url) => {
1225
1227
  const remoteUrl = new URL(url, "file:");
@@ -1473,7 +1475,8 @@ var DTSManager = (_a = class {
1473
1475
  }
1474
1476
  const url = remoteInfo.url;
1475
1477
  const res = yield axiosGet(url, {
1476
- timeout: hostOptions.timeout
1478
+ timeout: hostOptions.timeout,
1479
+ family: hostOptions.family
1477
1480
  });
1478
1481
  const manifestJson = res.data;
1479
1482
  if (!manifestJson.metaData.types.zip) {
@@ -1534,7 +1537,8 @@ var DTSManager = (_a = class {
1534
1537
  try {
1535
1538
  const url = apiTypeUrl;
1536
1539
  const res = yield axiosGet(url, {
1537
- timeout: hostOptions.timeout
1540
+ timeout: hostOptions.timeout,
1541
+ family: hostOptions.family
1538
1542
  });
1539
1543
  let apiTypeFile = res.data;
1540
1544
  apiTypeFile = apiTypeFile.replaceAll(REMOTE_ALIAS_IDENTIFIER, remoteInfo.alias);
@@ -1846,11 +1850,12 @@ var getEnvHeaders = /* @__PURE__ */ __name(() => {
1846
1850
  }, "getEnvHeaders");
1847
1851
  function axiosGet(url, config) {
1848
1852
  return __async(this, null, function* () {
1853
+ var _a3, _b;
1849
1854
  const httpAgent = new import_http2.default.Agent({
1850
- family: 4
1855
+ family: (_a3 = config == null ? void 0 : config.family) != null ? _a3 : 4
1851
1856
  });
1852
1857
  const httpsAgent = new import_https.default.Agent({
1853
- family: 4
1858
+ family: (_b = config == null ? void 0 : config.family) != null ? _b : 4
1854
1859
  });
1855
1860
  return import_axios.default.get(url, __spreadProps(__spreadValues(__spreadValues({
1856
1861
  httpAgent,
@@ -4,7 +4,7 @@ import {
4
4
  exposeRpc,
5
5
  getDTSManagerConstructor,
6
6
  isDebugMode
7
- } from "./chunk-YD3XN4HU.js";
7
+ } from "./chunk-QAYDHZEF.js";
8
8
  import {
9
9
  __async,
10
10
  __export,
@@ -751,7 +751,8 @@ var defaultOptions2 = {
751
751
  runtimePkgs: [],
752
752
  remoteTypeUrls: {},
753
753
  timeout: 6e4,
754
- typesOnBuild: false
754
+ typesOnBuild: false,
755
+ family: 4
755
756
  };
756
757
  var buildZipUrl = /* @__PURE__ */ __name((hostOptions, url) => {
757
758
  const remoteUrl = new URL(url, "file:");
@@ -1005,7 +1006,8 @@ var DTSManager = (_a = class {
1005
1006
  }
1006
1007
  const url = remoteInfo.url;
1007
1008
  const res = yield axiosGet(url, {
1008
- timeout: hostOptions.timeout
1009
+ timeout: hostOptions.timeout,
1010
+ family: hostOptions.family
1009
1011
  });
1010
1012
  const manifestJson = res.data;
1011
1013
  if (!manifestJson.metaData.types.zip) {
@@ -1066,7 +1068,8 @@ var DTSManager = (_a = class {
1066
1068
  try {
1067
1069
  const url = apiTypeUrl;
1068
1070
  const res = yield axiosGet(url, {
1069
- timeout: hostOptions.timeout
1071
+ timeout: hostOptions.timeout,
1072
+ family: hostOptions.family
1070
1073
  });
1071
1074
  let apiTypeFile = res.data;
1072
1075
  apiTypeFile = apiTypeFile.replaceAll(REMOTE_ALIAS_IDENTIFIER, remoteInfo.alias);
@@ -1378,11 +1381,12 @@ var getEnvHeaders = /* @__PURE__ */ __name(() => {
1378
1381
  }, "getEnvHeaders");
1379
1382
  function axiosGet(url, config) {
1380
1383
  return __async(this, null, function* () {
1384
+ var _a2, _b;
1381
1385
  const httpAgent = new http.Agent({
1382
- family: 4
1386
+ family: (_a2 = config == null ? void 0 : config.family) != null ? _a2 : 4
1383
1387
  });
1384
1388
  const httpsAgent = new https.Agent({
1385
- family: 4
1389
+ family: (_b = config == null ? void 0 : config.family) != null ? _b : 4
1386
1390
  });
1387
1391
  return axios.get(url, __spreadProps(__spreadValues(__spreadValues({
1388
1392
  httpAgent,
@@ -1422,7 +1426,8 @@ var downloadTypesArchive = /* @__PURE__ */ __name((hostOptions) => {
1422
1426
  const url = new URL(fileToDownload).href;
1423
1427
  const response = yield axiosGet(url, {
1424
1428
  responseType: "arraybuffer",
1425
- timeout: hostOptions.timeout
1429
+ timeout: hostOptions.timeout,
1430
+ family: hostOptions.family
1426
1431
  }).catch(downloadErrorLogger(destinationFolder, url));
1427
1432
  if (typeof ((_a2 = response.headers) == null ? void 0 : _a2["content-type"]) === "string" && response.headers["content-type"].includes("text/html")) {
1428
1433
  throw new Error(`${url} receives invalid content-type: ${response.headers["content-type"]}`);
package/dist/esm/core.js CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  consumeTypes,
4
4
  generateTypesInChildProcess,
5
5
  rpc_exports
6
- } from "./chunk-7TWMRWVP.js";
6
+ } from "./chunk-ES2OUXYD.js";
7
7
  import {
8
8
  DTSManager,
9
9
  HOST_API_TYPES_FILE_NAME,
@@ -19,7 +19,7 @@ import {
19
19
  retrieveTypesAssetsInfo,
20
20
  retrieveTypesZipPath,
21
21
  validateOptions
22
- } from "./chunk-YD3XN4HU.js";
22
+ } from "./chunk-QAYDHZEF.js";
23
23
  import "./chunk-WWV5RWOP.js";
24
24
  import "./chunk-647HGGGS.js";
25
25
  export {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  rpc_exports
3
- } from "./chunk-7TWMRWVP.js";
3
+ } from "./chunk-ES2OUXYD.js";
4
4
  import {
5
5
  ModuleFederationDevServer,
6
6
  createKoaServer,
@@ -9,7 +9,7 @@ import {
9
9
  retrieveMfTypesPath,
10
10
  retrieveRemoteConfig,
11
11
  retrieveTypesZipPath
12
- } from "./chunk-YD3XN4HU.js";
12
+ } from "./chunk-QAYDHZEF.js";
13
13
  import {
14
14
  fileLog,
15
15
  getIPV4
@@ -2,7 +2,7 @@ import {
2
2
  RpcGMCallTypes,
3
3
  exposeRpc,
4
4
  generateTypes
5
- } from "./chunk-YD3XN4HU.js";
5
+ } from "./chunk-QAYDHZEF.js";
6
6
  import "./chunk-WWV5RWOP.js";
7
7
  import {
8
8
  __async,
package/dist/esm/index.js CHANGED
@@ -2,14 +2,14 @@ import {
2
2
  consumeTypes,
3
3
  generateTypesInChildProcess,
4
4
  rpc_exports
5
- } from "./chunk-7TWMRWVP.js";
5
+ } from "./chunk-ES2OUXYD.js";
6
6
  import {
7
7
  cloneDeepOptions,
8
8
  generateTypes,
9
9
  isTSProject,
10
10
  retrieveTypesAssetsInfo,
11
11
  validateOptions
12
- } from "./chunk-YD3XN4HU.js";
12
+ } from "./chunk-QAYDHZEF.js";
13
13
  import {
14
14
  getIPV4,
15
15
  logger
@@ -1688,7 +1688,8 @@ var downloadTypesArchive = /* @__PURE__ */ __name((hostOptions) => {
1688
1688
  const url = new URL(fileToDownload).href;
1689
1689
  const response = yield axiosGet(url, {
1690
1690
  responseType: "arraybuffer",
1691
- timeout: hostOptions.timeout
1691
+ timeout: hostOptions.timeout,
1692
+ family: hostOptions.family
1692
1693
  }).catch(downloadErrorLogger(destinationFolder, url));
1693
1694
  if (typeof ((_a3 = response.headers) == null ? void 0 : _a3["content-type"]) === "string" && response.headers["content-type"].includes("text/html")) {
1694
1695
  throw new Error(`${url} receives invalid content-type: ${response.headers["content-type"]}`);
@@ -1739,7 +1740,8 @@ var defaultOptions = {
1739
1740
  runtimePkgs: [],
1740
1741
  remoteTypeUrls: {},
1741
1742
  timeout: 6e4,
1742
- typesOnBuild: false
1743
+ typesOnBuild: false,
1744
+ family: 4
1743
1745
  };
1744
1746
  var buildZipUrl = /* @__PURE__ */ __name((hostOptions, url) => {
1745
1747
  const remoteUrl = new URL(url, "file:");
@@ -1993,7 +1995,8 @@ var DTSManager = (_a = class {
1993
1995
  }
1994
1996
  const url = remoteInfo.url;
1995
1997
  const res = yield axiosGet(url, {
1996
- timeout: hostOptions.timeout
1998
+ timeout: hostOptions.timeout,
1999
+ family: hostOptions.family
1997
2000
  });
1998
2001
  const manifestJson = res.data;
1999
2002
  if (!manifestJson.metaData.types.zip) {
@@ -2054,7 +2057,8 @@ var DTSManager = (_a = class {
2054
2057
  try {
2055
2058
  const url = apiTypeUrl;
2056
2059
  const res = yield axiosGet(url, {
2057
- timeout: hostOptions.timeout
2060
+ timeout: hostOptions.timeout,
2061
+ family: hostOptions.family
2058
2062
  });
2059
2063
  let apiTypeFile = res.data;
2060
2064
  apiTypeFile = apiTypeFile.replaceAll(REMOTE_ALIAS_IDENTIFIER, remoteInfo.alias);
@@ -2300,11 +2304,12 @@ var getEnvHeaders = /* @__PURE__ */ __name(() => {
2300
2304
  }, "getEnvHeaders");
2301
2305
  function axiosGet(url, config) {
2302
2306
  return __async(this, null, function* () {
2307
+ var _a3, _b;
2303
2308
  const httpAgent = new import_http2.default.Agent({
2304
- family: 4
2309
+ family: (_a3 = config == null ? void 0 : config.family) != null ? _a3 : 4
2305
2310
  });
2306
2311
  const httpsAgent = new import_https.default.Agent({
2307
- family: 4
2312
+ family: (_b = config == null ? void 0 : config.family) != null ? _b : 4
2308
2313
  });
2309
2314
  return import_axios.default.get(url, __spreadProps(__spreadValues(__spreadValues({
2310
2315
  httpAgent,
@@ -1350,7 +1350,8 @@ var downloadTypesArchive = /* @__PURE__ */ __name((hostOptions) => {
1350
1350
  const url = new URL(fileToDownload).href;
1351
1351
  const response = yield axiosGet(url, {
1352
1352
  responseType: "arraybuffer",
1353
- timeout: hostOptions.timeout
1353
+ timeout: hostOptions.timeout,
1354
+ family: hostOptions.family
1354
1355
  }).catch(downloadErrorLogger(destinationFolder, url));
1355
1356
  if (typeof ((_a2 = response.headers) == null ? void 0 : _a2["content-type"]) === "string" && response.headers["content-type"].includes("text/html")) {
1356
1357
  throw new Error(`${url} receives invalid content-type: ${response.headers["content-type"]}`);
@@ -1401,7 +1402,8 @@ var defaultOptions2 = {
1401
1402
  runtimePkgs: [],
1402
1403
  remoteTypeUrls: {},
1403
1404
  timeout: 6e4,
1404
- typesOnBuild: false
1405
+ typesOnBuild: false,
1406
+ family: 4
1405
1407
  };
1406
1408
  var buildZipUrl = /* @__PURE__ */ __name((hostOptions, url) => {
1407
1409
  const remoteUrl = new URL(url, "file:");
@@ -1655,7 +1657,8 @@ var DTSManager = (_a = class {
1655
1657
  }
1656
1658
  const url = remoteInfo.url;
1657
1659
  const res = yield axiosGet(url, {
1658
- timeout: hostOptions.timeout
1660
+ timeout: hostOptions.timeout,
1661
+ family: hostOptions.family
1659
1662
  });
1660
1663
  const manifestJson = res.data;
1661
1664
  if (!manifestJson.metaData.types.zip) {
@@ -1716,7 +1719,8 @@ var DTSManager = (_a = class {
1716
1719
  try {
1717
1720
  const url = apiTypeUrl;
1718
1721
  const res = yield axiosGet(url, {
1719
- timeout: hostOptions.timeout
1722
+ timeout: hostOptions.timeout,
1723
+ family: hostOptions.family
1720
1724
  });
1721
1725
  let apiTypeFile = res.data;
1722
1726
  apiTypeFile = apiTypeFile.replaceAll(REMOTE_ALIAS_IDENTIFIER, remoteInfo.alias);
@@ -1962,11 +1966,12 @@ var getEnvHeaders = /* @__PURE__ */ __name(() => {
1962
1966
  }, "getEnvHeaders");
1963
1967
  function axiosGet(url, config) {
1964
1968
  return __async(this, null, function* () {
1969
+ var _a2, _b;
1965
1970
  const httpAgent = new import_http2.default.Agent({
1966
- family: 4
1971
+ family: (_a2 = config == null ? void 0 : config.family) != null ? _a2 : 4
1967
1972
  });
1968
1973
  const httpsAgent = new import_https.default.Agent({
1969
- family: 4
1974
+ family: (_b = config == null ? void 0 : config.family) != null ? _b : 4
1970
1975
  });
1971
1976
  return import_axios.default.get(url, __spreadProps(__spreadValues(__spreadValues({
1972
1977
  httpAgent,
package/dist/index.d.mts CHANGED
@@ -32,6 +32,7 @@ declare const normalizeConsumeTypesOptions: ({ context, dtsOptions, pluginOption
32
32
  runtimePkgs?: string[];
33
33
  remoteTypeUrls?: (() => Promise<moduleFederationPlugin.RemoteTypeUrls>) | moduleFederationPlugin.RemoteTypeUrls;
34
34
  timeout?: number;
35
+ family?: 4 | 6;
35
36
  typesOnBuild?: boolean;
36
37
  implementation: string;
37
38
  context: string;
package/dist/index.d.ts CHANGED
@@ -32,6 +32,7 @@ declare const normalizeConsumeTypesOptions: ({ context, dtsOptions, pluginOption
32
32
  runtimePkgs?: string[];
33
33
  remoteTypeUrls?: (() => Promise<moduleFederationPlugin.RemoteTypeUrls>) | moduleFederationPlugin.RemoteTypeUrls;
34
34
  timeout?: number;
35
+ family?: 4 | 6;
35
36
  typesOnBuild?: boolean;
36
37
  implementation: string;
37
38
  context: string;
package/dist/index.js CHANGED
@@ -1197,7 +1197,8 @@ var downloadTypesArchive = /* @__PURE__ */ __name((hostOptions) => {
1197
1197
  const url = new URL(fileToDownload).href;
1198
1198
  const response = yield axiosGet(url, {
1199
1199
  responseType: "arraybuffer",
1200
- timeout: hostOptions.timeout
1200
+ timeout: hostOptions.timeout,
1201
+ family: hostOptions.family
1201
1202
  }).catch(downloadErrorLogger(destinationFolder, url));
1202
1203
  if (typeof ((_a3 = response.headers) == null ? void 0 : _a3["content-type"]) === "string" && response.headers["content-type"].includes("text/html")) {
1203
1204
  throw new Error(`${url} receives invalid content-type: ${response.headers["content-type"]}`);
@@ -1248,7 +1249,8 @@ var defaultOptions = {
1248
1249
  runtimePkgs: [],
1249
1250
  remoteTypeUrls: {},
1250
1251
  timeout: 6e4,
1251
- typesOnBuild: false
1252
+ typesOnBuild: false,
1253
+ family: 4
1252
1254
  };
1253
1255
  var buildZipUrl = /* @__PURE__ */ __name((hostOptions, url) => {
1254
1256
  const remoteUrl = new URL(url, "file:");
@@ -1502,7 +1504,8 @@ var DTSManager = (_a = class {
1502
1504
  }
1503
1505
  const url = remoteInfo.url;
1504
1506
  const res = yield axiosGet(url, {
1505
- timeout: hostOptions.timeout
1507
+ timeout: hostOptions.timeout,
1508
+ family: hostOptions.family
1506
1509
  });
1507
1510
  const manifestJson = res.data;
1508
1511
  if (!manifestJson.metaData.types.zip) {
@@ -1563,7 +1566,8 @@ var DTSManager = (_a = class {
1563
1566
  try {
1564
1567
  const url = apiTypeUrl;
1565
1568
  const res = yield axiosGet(url, {
1566
- timeout: hostOptions.timeout
1569
+ timeout: hostOptions.timeout,
1570
+ family: hostOptions.family
1567
1571
  });
1568
1572
  let apiTypeFile = res.data;
1569
1573
  apiTypeFile = apiTypeFile.replaceAll(REMOTE_ALIAS_IDENTIFIER, remoteInfo.alias);
@@ -1875,11 +1879,12 @@ var getEnvHeaders = /* @__PURE__ */ __name(() => {
1875
1879
  }, "getEnvHeaders");
1876
1880
  function axiosGet(url, config) {
1877
1881
  return __async(this, null, function* () {
1882
+ var _a3, _b;
1878
1883
  const httpAgent = new import_http2.default.Agent({
1879
- family: 4
1884
+ family: (_a3 = config == null ? void 0 : config.family) != null ? _a3 : 4
1880
1885
  });
1881
1886
  const httpsAgent = new import_https.default.Agent({
1882
- family: 4
1887
+ family: (_b = config == null ? void 0 : config.family) != null ? _b : 4
1883
1888
  });
1884
1889
  return import_axios.default.get(url, __spreadProps(__spreadValues(__spreadValues({
1885
1890
  httpAgent,
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@module-federation/dts-plugin",
3
- "version": "0.17.1",
3
+ "version": "0.18.1",
4
4
  "author": "hanric <hanric.zhang@gmail.com>",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -60,7 +60,7 @@
60
60
  "chalk": "3.0.0",
61
61
  "fs-extra": "9.1.0",
62
62
  "isomorphic-ws": "5.0.0",
63
- "koa": "2.16.1",
63
+ "koa": "3.0.1",
64
64
  "log4js": "6.9.1",
65
65
  "node-schedule": "2.1.1",
66
66
  "ws": "8.18.0"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@module-federation/dts-plugin",
3
- "version": "0.17.1",
3
+ "version": "0.18.1",
4
4
  "author": "hanric <hanric.zhang@gmail.com>",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -56,14 +56,14 @@
56
56
  "chalk": "3.0.0",
57
57
  "fs-extra": "9.1.0",
58
58
  "isomorphic-ws": "5.0.0",
59
- "koa": "2.16.1",
59
+ "koa": "3.0.1",
60
60
  "log4js": "6.9.1",
61
61
  "node-schedule": "2.1.1",
62
62
  "ws": "8.18.0",
63
- "@module-federation/sdk": "0.17.1",
64
- "@module-federation/managers": "0.17.1",
65
- "@module-federation/third-party-dts-extractor": "0.17.1",
66
- "@module-federation/error-codes": "0.17.1"
63
+ "@module-federation/sdk": "0.18.1",
64
+ "@module-federation/managers": "0.18.1",
65
+ "@module-federation/third-party-dts-extractor": "0.18.1",
66
+ "@module-federation/error-codes": "0.18.1"
67
67
  },
68
68
  "devDependencies": {
69
69
  "@types/ws": "8.5.12",
@@ -73,7 +73,7 @@
73
73
  "@vue/tsconfig": "^0.7.0",
74
74
  "vue-tsc": "^2.2.10",
75
75
  "rimraf": "~6.0.1",
76
- "@module-federation/runtime": "0.17.1"
76
+ "@module-federation/runtime": "0.18.1"
77
77
  },
78
78
  "peerDependencies": {
79
79
  "typescript": "^4.9.0 || ^5.0.0",