@module-federation/dts-plugin 2.0.0 → 2.1.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.
Files changed (56) hide show
  1. package/dist/Action-CzhPMw2i.js +153 -0
  2. package/dist/Broker-DRlzScTT.js +800 -0
  3. package/dist/CHANGELOG.md +26 -0
  4. package/dist/DtsWorker-Dtem3-FM.d.ts +166 -0
  5. package/dist/constant-BwEkyidO.d.ts +42 -0
  6. package/dist/consumeTypes-AD2ig87l.js +237 -0
  7. package/dist/core.d.ts +3 -68
  8. package/dist/core.js +26 -2380
  9. package/dist/dynamic-remote-type-hints-plugin.d.ts +622 -3
  10. package/dist/dynamic-remote-type-hints-plugin.js +65 -187
  11. package/dist/esm/Action-DNNg2YDh.mjs +47 -0
  12. package/dist/esm/Broker-BU4gToNr.mjs +736 -0
  13. package/dist/esm/consumeTypes-D51rVbSt.mjs +204 -0
  14. package/dist/esm/core.mjs +5 -0
  15. package/dist/esm/dynamic-remote-type-hints-plugin.mjs +73 -0
  16. package/dist/esm/expose-rpc-DMhY1i8A.mjs +1301 -0
  17. package/dist/esm/fork-dev-worker.mjs +103 -0
  18. package/dist/esm/fork-generate-dts.mjs +14 -0
  19. package/dist/esm/index.mjs +465 -0
  20. package/dist/esm/start-broker.mjs +22 -0
  21. package/dist/esm/utils-CkPvDGOy.mjs +13 -0
  22. package/dist/expose-rpc-BLAH20uj.js +1415 -0
  23. package/dist/fork-dev-worker.d.ts +10 -9
  24. package/dist/fork-dev-worker.js +100 -2869
  25. package/dist/fork-generate-dts.d.ts +4 -8
  26. package/dist/fork-generate-dts.js +11 -2040
  27. package/dist/iife/launch-web-client.iife.js +117 -0
  28. package/dist/index.d.ts +57 -46
  29. package/dist/index.js +449 -2980
  30. package/dist/package.json +27 -12
  31. package/dist/start-broker.d.ts +41 -39
  32. package/dist/start-broker.js +17 -952
  33. package/dist/utils-7KqCZHbb.js +19 -0
  34. package/package.json +32 -17
  35. package/dist/DTSManager-b15Gfat3.d.ts +0 -53
  36. package/dist/DTSManagerOptions-QVchWb0x.d.ts +0 -32
  37. package/dist/DtsWorker-BrHsGz8C.d.ts +0 -56
  38. package/dist/core.d.mts +0 -68
  39. package/dist/dynamic-remote-type-hints-plugin.d.mts +0 -5
  40. package/dist/esm/chunk-647HGGGS.js +0 -241
  41. package/dist/esm/chunk-G65LOFTY.js +0 -24
  42. package/dist/esm/chunk-N7GTIQUA.js +0 -282
  43. package/dist/esm/chunk-RWXNVNFM.js +0 -1579
  44. package/dist/esm/chunk-WWV5RWOP.js +0 -902
  45. package/dist/esm/core.js +0 -44
  46. package/dist/esm/dynamic-remote-type-hints-plugin.js +0 -73
  47. package/dist/esm/fork-dev-worker.js +0 -145
  48. package/dist/esm/fork-generate-dts.js +0 -27
  49. package/dist/esm/index.js +0 -646
  50. package/dist/esm/start-broker.js +0 -36
  51. package/dist/fork-dev-worker.d.mts +0 -15
  52. package/dist/fork-generate-dts.d.mts +0 -10
  53. package/dist/iife/launch-web-client.js +0 -152
  54. package/dist/index.d.mts +0 -56
  55. package/dist/start-broker.d.mts +0 -42
  56. package/dist/utils-C4sQemLR.d.ts +0 -15
package/dist/esm/core.js DELETED
@@ -1,44 +0,0 @@
1
- import {
2
- DtsWorker,
3
- consumeTypes,
4
- generateTypesInChildProcess,
5
- rpc_exports
6
- } from "./chunk-N7GTIQUA.js";
7
- import {
8
- DTSManager,
9
- HOST_API_TYPES_FILE_NAME,
10
- REMOTE_ALIAS_IDENTIFIER,
11
- REMOTE_API_TYPES_FILE_NAME,
12
- generateTypes,
13
- getDTSManagerConstructor,
14
- isTSProject,
15
- retrieveHostConfig,
16
- retrieveMfTypesPath,
17
- retrieveOriginalOutDir,
18
- retrieveRemoteConfig,
19
- retrieveTypesAssetsInfo,
20
- retrieveTypesZipPath,
21
- validateOptions
22
- } from "./chunk-RWXNVNFM.js";
23
- import "./chunk-WWV5RWOP.js";
24
- import "./chunk-647HGGGS.js";
25
- export {
26
- DTSManager,
27
- DtsWorker,
28
- HOST_API_TYPES_FILE_NAME,
29
- REMOTE_ALIAS_IDENTIFIER,
30
- REMOTE_API_TYPES_FILE_NAME,
31
- consumeTypes,
32
- generateTypes,
33
- generateTypesInChildProcess,
34
- getDTSManagerConstructor,
35
- isTSProject,
36
- retrieveHostConfig,
37
- retrieveMfTypesPath,
38
- retrieveOriginalOutDir,
39
- retrieveRemoteConfig,
40
- retrieveTypesAssetsInfo,
41
- retrieveTypesZipPath,
42
- rpc_exports as rpc,
43
- validateOptions
44
- };
@@ -1,73 +0,0 @@
1
- import {
2
- getIpFromEntry
3
- } from "./chunk-G65LOFTY.js";
4
- import {
5
- AddDynamicRemoteAction,
6
- DEFAULT_WEB_SOCKET_PORT,
7
- FetchTypesAction,
8
- WEB_SOCKET_CONNECT_MAGIC_ID,
9
- __name
10
- } from "./chunk-647HGGGS.js";
11
-
12
- // src/server/createWebsocket.ts
13
- import WebSocket from "isomorphic-ws";
14
- function createWebsocket() {
15
- return new WebSocket(`ws://127.0.0.1:${DEFAULT_WEB_SOCKET_PORT}?WEB_SOCKET_CONNECT_MAGIC_ID=${WEB_SOCKET_CONNECT_MAGIC_ID}`);
16
- }
17
- __name(createWebsocket, "createWebsocket");
18
-
19
- // src/runtime-plugins/dynamic-remote-type-hints-plugin.ts
20
- var PLUGIN_NAME = "dynamic-remote-type-hints-plugin";
21
- function dynamicRemoteTypeHintsPlugin() {
22
- let ws = createWebsocket();
23
- let isConnected = false;
24
- ws.onopen = () => {
25
- isConnected = true;
26
- };
27
- ws.onerror = (err) => {
28
- console.error(`[ ${PLUGIN_NAME} ] err: ${err}`);
29
- };
30
- return {
31
- name: "dynamic-remote-type-hints-plugin",
32
- registerRemote(args) {
33
- const { remote, origin } = args;
34
- try {
35
- if (!isConnected) {
36
- return args;
37
- }
38
- if (!("entry" in remote)) {
39
- return args;
40
- }
41
- const defaultIpV4 = typeof FEDERATION_IPV4 === "string" ? FEDERATION_IPV4 : "127.0.0.1";
42
- const remoteIp = getIpFromEntry(remote.entry, defaultIpV4);
43
- const remoteInfo = {
44
- name: remote.name,
45
- url: remote.entry,
46
- alias: remote.alias || remote.name
47
- };
48
- if (remoteIp) {
49
- ws.send(JSON.stringify(new AddDynamicRemoteAction({
50
- remoteIp,
51
- remoteInfo,
52
- name: origin.name,
53
- ip: defaultIpV4
54
- })));
55
- }
56
- ws.send(JSON.stringify(new FetchTypesAction({
57
- name: origin.name,
58
- ip: defaultIpV4,
59
- remoteInfo
60
- })));
61
- return args;
62
- } catch (err) {
63
- console.error(new Error(err));
64
- return args;
65
- }
66
- }
67
- };
68
- }
69
- __name(dynamicRemoteTypeHintsPlugin, "dynamicRemoteTypeHintsPlugin");
70
- var dynamic_remote_type_hints_plugin_default = dynamicRemoteTypeHintsPlugin;
71
- export {
72
- dynamic_remote_type_hints_plugin_default as default
73
- };
@@ -1,145 +0,0 @@
1
- import {
2
- rpc_exports
3
- } from "./chunk-N7GTIQUA.js";
4
- import {
5
- ModuleFederationDevServer,
6
- createKoaServer,
7
- getDTSManagerConstructor,
8
- retrieveHostConfig,
9
- retrieveMfTypesPath,
10
- retrieveRemoteConfig,
11
- retrieveTypesZipPath
12
- } from "./chunk-RWXNVNFM.js";
13
- import {
14
- fileLog,
15
- getIPV4
16
- } from "./chunk-WWV5RWOP.js";
17
- import {
18
- getIpFromEntry
19
- } from "./chunk-G65LOFTY.js";
20
- import {
21
- DEFAULT_TAR_NAME,
22
- UpdateKind,
23
- UpdateMode,
24
- __async,
25
- __name
26
- } from "./chunk-647HGGGS.js";
27
-
28
- // src/dev-worker/forkDevWorker.ts
29
- import { decodeName } from "@module-federation/sdk";
30
- var typesManager;
31
- var serverAddress;
32
- var moduleServer;
33
- var cacheOptions;
34
- function getLocalRemoteNames(options, encodeNameIdentifier) {
35
- if (!options) {
36
- return [];
37
- }
38
- const { mapRemotesToDownload } = retrieveHostConfig(options);
39
- return Object.keys(mapRemotesToDownload).reduce((sum, remoteModuleName) => {
40
- const remoteInfo = mapRemotesToDownload[remoteModuleName];
41
- const name = encodeNameIdentifier ? decodeName(remoteInfo.name, encodeNameIdentifier) : remoteInfo.name;
42
- const ip = getIpFromEntry(remoteInfo.url, getIPV4());
43
- if (!ip) {
44
- return sum;
45
- }
46
- sum.push({
47
- name,
48
- entry: remoteInfo.url,
49
- ip
50
- });
51
- return sum;
52
- }, []);
53
- }
54
- __name(getLocalRemoteNames, "getLocalRemoteNames");
55
- function updateCallback(_0) {
56
- return __async(this, arguments, function* ({ updateMode, name, remoteTypeTarPath, remoteInfo, once }) {
57
- const { disableHotTypesReload, disableLiveReload } = cacheOptions || {};
58
- fileLog(`sync remote module ${name}, types to ${cacheOptions == null ? void 0 : cacheOptions.name},typesManager.updateTypes run`, "forkDevWorker", "info");
59
- if (!disableLiveReload && moduleServer) {
60
- moduleServer.update({
61
- updateKind: UpdateKind.RELOAD_PAGE,
62
- updateMode: UpdateMode.PASSIVE
63
- });
64
- }
65
- if (!disableHotTypesReload && typesManager) {
66
- yield typesManager.updateTypes({
67
- updateMode,
68
- remoteName: name,
69
- remoteTarPath: remoteTypeTarPath,
70
- remoteInfo,
71
- once
72
- });
73
- }
74
- });
75
- }
76
- __name(updateCallback, "updateCallback");
77
- function forkDevWorker(options, action) {
78
- return __async(this, null, function* () {
79
- if (!typesManager) {
80
- const { name, remote, host, extraOptions } = options;
81
- const DTSManagerConstructor = getDTSManagerConstructor(remote == null ? void 0 : remote.implementation);
82
- typesManager = new DTSManagerConstructor({
83
- remote,
84
- host,
85
- extraOptions
86
- });
87
- if (!options.disableHotTypesReload && remote) {
88
- const { remoteOptions, tsConfig } = retrieveRemoteConfig(remote);
89
- const mfTypesPath = retrieveMfTypesPath(tsConfig, remoteOptions);
90
- const mfTypesZipPath = retrieveTypesZipPath(mfTypesPath, remoteOptions);
91
- yield Promise.all([
92
- createKoaServer({
93
- typeTarPath: mfTypesZipPath
94
- }).then((res) => {
95
- serverAddress = res.serverAddress;
96
- }),
97
- typesManager.generateTypes()
98
- ]).catch((err) => {
99
- fileLog(`${name} module generateTypes done, localServerAddress: ${JSON.stringify(err)}`, "forkDevWorker", "error");
100
- });
101
- fileLog(`${name} module generateTypes done, localServerAddress: ${serverAddress}`, "forkDevWorker", "info");
102
- }
103
- moduleServer = new ModuleFederationDevServer({
104
- name,
105
- remotes: getLocalRemoteNames(host, extraOptions == null ? void 0 : extraOptions["encodeNameIdentifier"]),
106
- updateCallback,
107
- remoteTypeTarPath: `${serverAddress}/${DEFAULT_TAR_NAME}`
108
- });
109
- cacheOptions = options;
110
- }
111
- if (action === "update" && cacheOptions) {
112
- fileLog(`remoteModule ${cacheOptions.name} receive devWorker update, start typesManager.updateTypes `, "forkDevWorker", "info");
113
- if (!cacheOptions.disableLiveReload) {
114
- moduleServer == null ? void 0 : moduleServer.update({
115
- updateKind: UpdateKind.RELOAD_PAGE,
116
- updateMode: UpdateMode.POSITIVE
117
- });
118
- }
119
- if (!cacheOptions.disableHotTypesReload) {
120
- typesManager == null ? void 0 : typesManager.updateTypes({
121
- updateMode: UpdateMode.POSITIVE,
122
- remoteName: cacheOptions.name
123
- }).then(() => {
124
- moduleServer == null ? void 0 : moduleServer.update({
125
- updateKind: UpdateKind.UPDATE_TYPE,
126
- updateMode: UpdateMode.POSITIVE
127
- });
128
- });
129
- }
130
- }
131
- });
132
- }
133
- __name(forkDevWorker, "forkDevWorker");
134
- process.on("message", (message) => {
135
- fileLog(`ChildProcess(${process.pid}), message: ${JSON.stringify(message)} `, "forkDevWorker", "info");
136
- if (message.type === rpc_exports.RpcGMCallTypes.EXIT) {
137
- fileLog(`ChildProcess(${process.pid}) SIGTERM, Federation DevServer will exit...`, "forkDevWorker", "error");
138
- moduleServer.exit();
139
- process.exit(0);
140
- }
141
- });
142
- rpc_exports.exposeRpc(forkDevWorker);
143
- export {
144
- forkDevWorker
145
- };
@@ -1,27 +0,0 @@
1
- import {
2
- RpcGMCallTypes,
3
- exposeRpc,
4
- generateTypes
5
- } from "./chunk-RWXNVNFM.js";
6
- import "./chunk-WWV5RWOP.js";
7
- import {
8
- __async,
9
- __name
10
- } from "./chunk-647HGGGS.js";
11
-
12
- // src/core/lib/forkGenerateDts.ts
13
- function forkGenerateDts(options) {
14
- return __async(this, null, function* () {
15
- return generateTypes(options);
16
- });
17
- }
18
- __name(forkGenerateDts, "forkGenerateDts");
19
- process.on("message", (message) => {
20
- if (message.type === RpcGMCallTypes.EXIT) {
21
- process.exit(0);
22
- }
23
- });
24
- exposeRpc(forkGenerateDts);
25
- export {
26
- forkGenerateDts
27
- };