@module-federation/vite 1.2.7 → 1.4.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/lib/index.cjs +5 -3
- package/lib/index.esm.js +5 -3
- package/lib/index.modern.js +5 -3
- package/lib/index.umd.js +5 -3
- package/lib/utils/normalizeModuleFederationOptions.d.ts +2 -0
- package/package.json +19 -17
package/lib/index.cjs
CHANGED
|
@@ -448,7 +448,8 @@ function normalizeModuleFederationOptions(options) {
|
|
|
448
448
|
dev: options.dev,
|
|
449
449
|
dts: options.dts,
|
|
450
450
|
getPublicPath: options.getPublicPath,
|
|
451
|
-
shareStrategy: options.shareStrategy || 'version-first'
|
|
451
|
+
shareStrategy: options.shareStrategy || 'version-first',
|
|
452
|
+
ignoreOrigin: options.ignoreOrigin || false
|
|
452
453
|
};
|
|
453
454
|
}
|
|
454
455
|
|
|
@@ -771,11 +772,12 @@ var Manifest = function Manifest() {
|
|
|
771
772
|
},
|
|
772
773
|
configureServer: function configureServer(server) {
|
|
773
774
|
server.middlewares.use(function (req, res, next) {
|
|
775
|
+
var _req$url;
|
|
774
776
|
if (!mfManifestName) {
|
|
775
777
|
next();
|
|
776
778
|
return;
|
|
777
779
|
}
|
|
778
|
-
if (req.url === (viteConfig.base + mfManifestName).replace(/^\/?/, '/')) {
|
|
780
|
+
if (((_req$url = req.url) == null ? void 0 : _req$url.replace(/\?.*/, '')) === (viteConfig.base + mfManifestName).replace(/^\/?/, '/')) {
|
|
779
781
|
res.setHeader('Content-Type', 'application/json');
|
|
780
782
|
res.setHeader('Access-Control-Allow-Origin', '*');
|
|
781
783
|
res.end(JSON.stringify(_extends({}, generateMFManifest({}), {
|
|
@@ -1153,7 +1155,7 @@ function pluginProxyRemoteEntry () {
|
|
|
1153
1155
|
if (_command === 'serve') {
|
|
1154
1156
|
var _viteConfig$server, _viteConfig$server2;
|
|
1155
1157
|
var host = typeof ((_viteConfig$server = viteConfig.server) == null ? void 0 : _viteConfig$server.host) === 'string' && viteConfig.server.host !== '0.0.0.0' ? viteConfig.server.host : 'localhost';
|
|
1156
|
-
return Promise.resolve("\n const origin = window ? window.origin : \"//" + host + ":" + ((_viteConfig$server2 = viteConfig.server) == null ? void 0 : _viteConfig$server2.port) + "\"\n const remoteEntryPromise = await import(origin + \"" + (viteConfig.base + options.filename) + "\")\n // __tla only serves as a hack for vite-plugin-top-level-await. \n Promise.resolve(remoteEntryPromise)\n .then(remoteEntry => {\n return Promise.resolve(remoteEntry.__tla)\n .then(remoteEntry.init).catch(remoteEntry.init)\n })\n ");
|
|
1158
|
+
return Promise.resolve("\n const origin = (window && " + !options.ignoreOrigin + ") ? window.origin : \"//" + host + ":" + ((_viteConfig$server2 = viteConfig.server) == null ? void 0 : _viteConfig$server2.port) + "\"\n const remoteEntryPromise = await import(origin + \"" + (viteConfig.base + options.filename) + "\")\n // __tla only serves as a hack for vite-plugin-top-level-await. \n Promise.resolve(remoteEntryPromise)\n .then(remoteEntry => {\n return Promise.resolve(remoteEntry.__tla)\n .then(remoteEntry.init).catch(remoteEntry.init)\n })\n ");
|
|
1157
1159
|
}
|
|
1158
1160
|
return Promise.resolve(code);
|
|
1159
1161
|
}
|
package/lib/index.esm.js
CHANGED
|
@@ -424,7 +424,8 @@ function normalizeModuleFederationOptions(options) {
|
|
|
424
424
|
dev: options.dev,
|
|
425
425
|
dts: options.dts,
|
|
426
426
|
getPublicPath: options.getPublicPath,
|
|
427
|
-
shareStrategy: options.shareStrategy || 'version-first'
|
|
427
|
+
shareStrategy: options.shareStrategy || 'version-first',
|
|
428
|
+
ignoreOrigin: options.ignoreOrigin || false
|
|
428
429
|
};
|
|
429
430
|
}
|
|
430
431
|
|
|
@@ -747,11 +748,12 @@ var Manifest = function Manifest() {
|
|
|
747
748
|
},
|
|
748
749
|
configureServer: function configureServer(server) {
|
|
749
750
|
server.middlewares.use(function (req, res, next) {
|
|
751
|
+
var _req$url;
|
|
750
752
|
if (!mfManifestName) {
|
|
751
753
|
next();
|
|
752
754
|
return;
|
|
753
755
|
}
|
|
754
|
-
if (req.url === (viteConfig.base + mfManifestName).replace(/^\/?/, '/')) {
|
|
756
|
+
if (((_req$url = req.url) == null ? void 0 : _req$url.replace(/\?.*/, '')) === (viteConfig.base + mfManifestName).replace(/^\/?/, '/')) {
|
|
755
757
|
res.setHeader('Content-Type', 'application/json');
|
|
756
758
|
res.setHeader('Access-Control-Allow-Origin', '*');
|
|
757
759
|
res.end(JSON.stringify(_extends({}, generateMFManifest({}), {
|
|
@@ -1129,7 +1131,7 @@ function pluginProxyRemoteEntry () {
|
|
|
1129
1131
|
if (_command === 'serve') {
|
|
1130
1132
|
var _viteConfig$server, _viteConfig$server2;
|
|
1131
1133
|
var host = typeof ((_viteConfig$server = viteConfig.server) == null ? void 0 : _viteConfig$server.host) === 'string' && viteConfig.server.host !== '0.0.0.0' ? viteConfig.server.host : 'localhost';
|
|
1132
|
-
return Promise.resolve("\n const origin = window ? window.origin : \"//" + host + ":" + ((_viteConfig$server2 = viteConfig.server) == null ? void 0 : _viteConfig$server2.port) + "\"\n const remoteEntryPromise = await import(origin + \"" + (viteConfig.base + options.filename) + "\")\n // __tla only serves as a hack for vite-plugin-top-level-await. \n Promise.resolve(remoteEntryPromise)\n .then(remoteEntry => {\n return Promise.resolve(remoteEntry.__tla)\n .then(remoteEntry.init).catch(remoteEntry.init)\n })\n ");
|
|
1134
|
+
return Promise.resolve("\n const origin = (window && " + !options.ignoreOrigin + ") ? window.origin : \"//" + host + ":" + ((_viteConfig$server2 = viteConfig.server) == null ? void 0 : _viteConfig$server2.port) + "\"\n const remoteEntryPromise = await import(origin + \"" + (viteConfig.base + options.filename) + "\")\n // __tla only serves as a hack for vite-plugin-top-level-await. \n Promise.resolve(remoteEntryPromise)\n .then(remoteEntry => {\n return Promise.resolve(remoteEntry.__tla)\n .then(remoteEntry.init).catch(remoteEntry.init)\n })\n ");
|
|
1133
1135
|
}
|
|
1134
1136
|
return Promise.resolve(code);
|
|
1135
1137
|
}
|
package/lib/index.modern.js
CHANGED
|
@@ -394,7 +394,8 @@ function normalizeModuleFederationOptions(options) {
|
|
|
394
394
|
dev: options.dev,
|
|
395
395
|
dts: options.dts,
|
|
396
396
|
getPublicPath: options.getPublicPath,
|
|
397
|
-
shareStrategy: options.shareStrategy || 'version-first'
|
|
397
|
+
shareStrategy: options.shareStrategy || 'version-first',
|
|
398
|
+
ignoreOrigin: options.ignoreOrigin || false
|
|
398
399
|
};
|
|
399
400
|
}
|
|
400
401
|
|
|
@@ -849,11 +850,12 @@ const Manifest = () => {
|
|
|
849
850
|
},
|
|
850
851
|
configureServer(server) {
|
|
851
852
|
server.middlewares.use((req, res, next) => {
|
|
853
|
+
var _req$url;
|
|
852
854
|
if (!mfManifestName) {
|
|
853
855
|
next();
|
|
854
856
|
return;
|
|
855
857
|
}
|
|
856
|
-
if (req.url === (viteConfig.base + mfManifestName).replace(/^\/?/, '/')) {
|
|
858
|
+
if (((_req$url = req.url) == null ? void 0 : _req$url.replace(/\?.*/, '')) === (viteConfig.base + mfManifestName).replace(/^\/?/, '/')) {
|
|
857
859
|
res.setHeader('Content-Type', 'application/json');
|
|
858
860
|
res.setHeader('Access-Control-Allow-Origin', '*');
|
|
859
861
|
res.end(JSON.stringify(_extends({}, generateMFManifest({}), {
|
|
@@ -1201,7 +1203,7 @@ function pluginProxyRemoteEntry () {
|
|
|
1201
1203
|
var _viteConfig$server, _viteConfig$server2;
|
|
1202
1204
|
const host = typeof ((_viteConfig$server = viteConfig.server) == null ? void 0 : _viteConfig$server.host) === 'string' && viteConfig.server.host !== '0.0.0.0' ? viteConfig.server.host : 'localhost';
|
|
1203
1205
|
return `
|
|
1204
|
-
const origin = window ? window.origin : "//${host}:${(_viteConfig$server2 = viteConfig.server) == null ? void 0 : _viteConfig$server2.port}"
|
|
1206
|
+
const origin = (window && ${!options.ignoreOrigin}) ? window.origin : "//${host}:${(_viteConfig$server2 = viteConfig.server) == null ? void 0 : _viteConfig$server2.port}"
|
|
1205
1207
|
const remoteEntryPromise = await import(origin + "${viteConfig.base + options.filename}")
|
|
1206
1208
|
// __tla only serves as a hack for vite-plugin-top-level-await.
|
|
1207
1209
|
Promise.resolve(remoteEntryPromise)
|
package/lib/index.umd.js
CHANGED
|
@@ -446,7 +446,8 @@
|
|
|
446
446
|
dev: options.dev,
|
|
447
447
|
dts: options.dts,
|
|
448
448
|
getPublicPath: options.getPublicPath,
|
|
449
|
-
shareStrategy: options.shareStrategy || 'version-first'
|
|
449
|
+
shareStrategy: options.shareStrategy || 'version-first',
|
|
450
|
+
ignoreOrigin: options.ignoreOrigin || false
|
|
450
451
|
};
|
|
451
452
|
}
|
|
452
453
|
|
|
@@ -769,11 +770,12 @@
|
|
|
769
770
|
},
|
|
770
771
|
configureServer: function configureServer(server) {
|
|
771
772
|
server.middlewares.use(function (req, res, next) {
|
|
773
|
+
var _req$url;
|
|
772
774
|
if (!mfManifestName) {
|
|
773
775
|
next();
|
|
774
776
|
return;
|
|
775
777
|
}
|
|
776
|
-
if (req.url === (viteConfig.base + mfManifestName).replace(/^\/?/, '/')) {
|
|
778
|
+
if (((_req$url = req.url) == null ? void 0 : _req$url.replace(/\?.*/, '')) === (viteConfig.base + mfManifestName).replace(/^\/?/, '/')) {
|
|
777
779
|
res.setHeader('Content-Type', 'application/json');
|
|
778
780
|
res.setHeader('Access-Control-Allow-Origin', '*');
|
|
779
781
|
res.end(JSON.stringify(_extends({}, generateMFManifest({}), {
|
|
@@ -1151,7 +1153,7 @@
|
|
|
1151
1153
|
if (_command === 'serve') {
|
|
1152
1154
|
var _viteConfig$server, _viteConfig$server2;
|
|
1153
1155
|
var host = typeof ((_viteConfig$server = viteConfig.server) == null ? void 0 : _viteConfig$server.host) === 'string' && viteConfig.server.host !== '0.0.0.0' ? viteConfig.server.host : 'localhost';
|
|
1154
|
-
return Promise.resolve("\n const origin = window ? window.origin : \"//" + host + ":" + ((_viteConfig$server2 = viteConfig.server) == null ? void 0 : _viteConfig$server2.port) + "\"\n const remoteEntryPromise = await import(origin + \"" + (viteConfig.base + options.filename) + "\")\n // __tla only serves as a hack for vite-plugin-top-level-await. \n Promise.resolve(remoteEntryPromise)\n .then(remoteEntry => {\n return Promise.resolve(remoteEntry.__tla)\n .then(remoteEntry.init).catch(remoteEntry.init)\n })\n ");
|
|
1156
|
+
return Promise.resolve("\n const origin = (window && " + !options.ignoreOrigin + ") ? window.origin : \"//" + host + ":" + ((_viteConfig$server2 = viteConfig.server) == null ? void 0 : _viteConfig$server2.port) + "\"\n const remoteEntryPromise = await import(origin + \"" + (viteConfig.base + options.filename) + "\")\n // __tla only serves as a hack for vite-plugin-top-level-await. \n Promise.resolve(remoteEntryPromise)\n .then(remoteEntry => {\n return Promise.resolve(remoteEntry.__tla)\n .then(remoteEntry.init).catch(remoteEntry.init)\n })\n ");
|
|
1155
1157
|
}
|
|
1156
1158
|
return Promise.resolve(code);
|
|
1157
1159
|
}
|
|
@@ -51,6 +51,7 @@ export type ModuleFederationOptions = {
|
|
|
51
51
|
dev?: boolean | PluginDevOptions;
|
|
52
52
|
dts?: boolean | PluginDtsOptions;
|
|
53
53
|
shareStrategy?: ShareStrategy;
|
|
54
|
+
ignoreOrigin?: boolean;
|
|
54
55
|
};
|
|
55
56
|
export interface NormalizedModuleFederationOptions {
|
|
56
57
|
exposes: Record<string, ExposesItem>;
|
|
@@ -68,6 +69,7 @@ export interface NormalizedModuleFederationOptions {
|
|
|
68
69
|
dts?: boolean | PluginDtsOptions;
|
|
69
70
|
shareStrategy: ShareStrategy;
|
|
70
71
|
getPublicPath?: string;
|
|
72
|
+
ignoreOrigin?: boolean;
|
|
71
73
|
}
|
|
72
74
|
interface PluginDevOptions {
|
|
73
75
|
disableLiveReload?: boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@module-federation/vite",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "Vite plugin for Module Federation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"source": "src/index.ts",
|
|
@@ -9,6 +9,22 @@
|
|
|
9
9
|
"files": [
|
|
10
10
|
"lib/**/*"
|
|
11
11
|
],
|
|
12
|
+
"scripts": {
|
|
13
|
+
"prepare": "husky install",
|
|
14
|
+
"fmt": "prettier --write src",
|
|
15
|
+
"fmt.check": "prettier --check src",
|
|
16
|
+
"format": "pretty-quick",
|
|
17
|
+
"dev": "microbundle watch --no-sourcemap --compress=false",
|
|
18
|
+
"build": "rimraf lib && microbundle --no-sourcemap --compress=false",
|
|
19
|
+
"dev-rv": "pnpm -filter 'examples-rust-vite*' run dev",
|
|
20
|
+
"preview-rv": "pnpm -filter 'examples-rust-vite*' run preview",
|
|
21
|
+
"dev-vv": "pnpm -filter 'examples-vite-vite*' run dev",
|
|
22
|
+
"dev-nv": "pnpm -filter 'examples-nuxt-vite-host' -filter 'examples-vite-vite-remote' run dev",
|
|
23
|
+
"preview-vv": "pnpm -filter 'examples-vite-vite*' run preview",
|
|
24
|
+
"multi-example": "pnpm --filter \"multi-example-*\" --parallel run start",
|
|
25
|
+
"test": "vitest",
|
|
26
|
+
"e2e": "playwright test"
|
|
27
|
+
},
|
|
12
28
|
"repository": {
|
|
13
29
|
"type": "git",
|
|
14
30
|
"url": "git+https://github.com/module-federation/vite.git"
|
|
@@ -28,6 +44,7 @@
|
|
|
28
44
|
"url": "https://github.com/module-federation/vite/issues"
|
|
29
45
|
},
|
|
30
46
|
"homepage": "https://github.com/module-federation/vite#readme",
|
|
47
|
+
"packageManager": "pnpm@9.1.3",
|
|
31
48
|
"dependencies": {
|
|
32
49
|
"@module-federation/runtime": "^0.8.0",
|
|
33
50
|
"@rollup/pluginutils": "^5.1.0",
|
|
@@ -48,20 +65,5 @@
|
|
|
48
65
|
"vite": "^5.4.3",
|
|
49
66
|
"vitest": "^2.1.1",
|
|
50
67
|
"wait-on": "^8.0.1"
|
|
51
|
-
},
|
|
52
|
-
"scripts": {
|
|
53
|
-
"fmt": "prettier --write src",
|
|
54
|
-
"fmt.check": "prettier --check src",
|
|
55
|
-
"format": "pretty-quick",
|
|
56
|
-
"dev": "microbundle watch --no-sourcemap --compress=false",
|
|
57
|
-
"build": "rimraf lib && microbundle --no-sourcemap --compress=false",
|
|
58
|
-
"dev-rv": "pnpm -filter 'examples-rust-vite*' run dev",
|
|
59
|
-
"preview-rv": "pnpm -filter 'examples-rust-vite*' run preview",
|
|
60
|
-
"dev-vv": "pnpm -filter 'examples-vite-vite*' run dev",
|
|
61
|
-
"dev-nv": "pnpm -filter 'examples-nuxt-vite-host' -filter 'examples-vite-vite-remote' run dev",
|
|
62
|
-
"preview-vv": "pnpm -filter 'examples-vite-vite*' run preview",
|
|
63
|
-
"multi-example": "pnpm --filter \"multi-example-*\" --parallel run start",
|
|
64
|
-
"test": "vitest",
|
|
65
|
-
"e2e": "playwright test"
|
|
66
68
|
}
|
|
67
|
-
}
|
|
69
|
+
}
|