@module-federation/esbuild 0.0.0-next-20240523235135 → 0.0.0-next-20240524034417
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/build.cjs.js +2 -1
- package/dist/build.esm.js +2 -1
- package/dist/esbuild.cjs.js +117 -62
- package/dist/esbuild.esm.js +117 -43
- package/dist/package.json +2 -0
- package/dist/src/adapters/lib/collect-exports.d.ts +0 -9
- package/package.json +4 -2
package/dist/build.cjs.js
CHANGED
|
@@ -58,7 +58,8 @@ const DEFAULT_SKIP_LIST = [
|
|
|
58
58
|
/\/schematics(\/|$)/,
|
|
59
59
|
/^@nx\/angular/,
|
|
60
60
|
(pkg)=>pkg.startsWith('@angular/') && !!pkg.match(/\/testing(\/|$)/),
|
|
61
|
-
(pkg)=>pkg.startsWith('@types/')
|
|
61
|
+
(pkg)=>pkg.startsWith('@types/'),
|
|
62
|
+
(pkg)=>pkg.startsWith('@module-federation/')
|
|
62
63
|
];
|
|
63
64
|
const PREPARED_DEFAULT_SKIP_LIST = prepareSkipList(DEFAULT_SKIP_LIST);
|
|
64
65
|
function prepareSkipList(skipList) {
|
package/dist/build.esm.js
CHANGED
|
@@ -29,7 +29,8 @@ const DEFAULT_SKIP_LIST = [
|
|
|
29
29
|
/\/schematics(\/|$)/,
|
|
30
30
|
/^@nx\/angular/,
|
|
31
31
|
(pkg)=>pkg.startsWith('@angular/') && !!pkg.match(/\/testing(\/|$)/),
|
|
32
|
-
(pkg)=>pkg.startsWith('@types/')
|
|
32
|
+
(pkg)=>pkg.startsWith('@types/'),
|
|
33
|
+
(pkg)=>pkg.startsWith('@module-federation/')
|
|
33
34
|
];
|
|
34
35
|
const PREPARED_DEFAULT_SKIP_LIST = prepareSkipList(DEFAULT_SKIP_LIST);
|
|
35
36
|
function prepareSkipList(skipList) {
|
package/dist/esbuild.cjs.js
CHANGED
|
@@ -8,33 +8,15 @@ var fs = require('fs');
|
|
|
8
8
|
var path = require('path');
|
|
9
9
|
var commonjs = require('@rollup/plugin-commonjs');
|
|
10
10
|
var replace = require('@rollup/plugin-replace');
|
|
11
|
-
require('
|
|
11
|
+
var esModuleLexer = require('es-module-lexer');
|
|
12
|
+
var cjsModuleLexer = require('cjs-module-lexer');
|
|
12
13
|
var util = require('util');
|
|
13
14
|
var enhancedResolve = require('enhanced-resolve');
|
|
14
|
-
var moduleLexer = require('cjs-module-lexer');
|
|
15
15
|
var federationBuilder = require('./federation-builder.cjs.js');
|
|
16
16
|
require('npmlog');
|
|
17
17
|
|
|
18
18
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
19
19
|
|
|
20
|
-
function _interopNamespace(e) {
|
|
21
|
-
if (e && e.__esModule) return e;
|
|
22
|
-
var n = Object.create(null);
|
|
23
|
-
if (e) {
|
|
24
|
-
Object.keys(e).forEach(function (k) {
|
|
25
|
-
if (k !== 'default') {
|
|
26
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
27
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
28
|
-
enumerable: true,
|
|
29
|
-
get: function () { return e[k]; }
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
n["default"] = e;
|
|
35
|
-
return Object.freeze(n);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
20
|
var esbuild__default = /*#__PURE__*/_interopDefaultLegacy(esbuild$1);
|
|
39
21
|
var pluginNodeResolve__default = /*#__PURE__*/_interopDefaultLegacy(pluginNodeResolve);
|
|
40
22
|
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
|
@@ -42,7 +24,6 @@ var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
|
|
|
42
24
|
var commonjs__default = /*#__PURE__*/_interopDefaultLegacy(commonjs);
|
|
43
25
|
var replace__default = /*#__PURE__*/_interopDefaultLegacy(replace);
|
|
44
26
|
var enhancedResolve__default = /*#__PURE__*/_interopDefaultLegacy(enhancedResolve);
|
|
45
|
-
var moduleLexer__namespace = /*#__PURE__*/_interopNamespace(moduleLexer);
|
|
46
27
|
|
|
47
28
|
function getAugmentedNamespace(n) {
|
|
48
29
|
if (n.__esModule) return n;
|
|
@@ -68,12 +49,9 @@ const resolve = util.promisify(enhancedResolve__default["default"].create({
|
|
|
68
49
|
'main'
|
|
69
50
|
]
|
|
70
51
|
}));
|
|
71
|
-
let lexerInitialized = false;
|
|
72
52
|
async function getExports(modulePath) {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
lexerInitialized = true;
|
|
76
|
-
}
|
|
53
|
+
await esModuleLexer.init;
|
|
54
|
+
await cjsModuleLexer.init;
|
|
77
55
|
try {
|
|
78
56
|
const exports = [];
|
|
79
57
|
const paths = [];
|
|
@@ -84,19 +62,18 @@ async function getExports(modulePath) {
|
|
|
84
62
|
while(paths.length > 0){
|
|
85
63
|
const currentPath = paths.pop();
|
|
86
64
|
if (currentPath) {
|
|
87
|
-
const
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
65
|
+
const content = await fs__default["default"].promises.readFile(currentPath, 'utf8');
|
|
66
|
+
try {
|
|
67
|
+
const { exports: cjsExports } = cjsModuleLexer.parse(content);
|
|
68
|
+
exports.push(...cjsExports);
|
|
69
|
+
} catch (e) {
|
|
70
|
+
const [, esExports] = esModuleLexer.parse(content);
|
|
71
|
+
exports.push(...esExports.map((exp)=>exp.n));
|
|
94
72
|
}
|
|
73
|
+
// TODO: Handle re-exports
|
|
95
74
|
}
|
|
96
75
|
}
|
|
97
|
-
|
|
98
|
-
* 追加default
|
|
99
|
-
*/ if (!exports.includes('default')) {
|
|
76
|
+
if (!exports.includes('default')) {
|
|
100
77
|
exports.push('default');
|
|
101
78
|
}
|
|
102
79
|
return exports;
|
|
@@ -567,7 +544,7 @@ const createContainerPlugin = (config)=>({
|
|
|
567
544
|
const filter = new RegExp([
|
|
568
545
|
filename
|
|
569
546
|
].map((name)=>`${name}$`).join('|'));
|
|
570
|
-
const sharedExternals = new RegExp(
|
|
547
|
+
const sharedExternals = new RegExp(Object.keys(federationBuilder.federationBuilder.config.shared || {}).map((name)=>`${name}$`).join('|'));
|
|
571
548
|
build.onResolve({
|
|
572
549
|
filter
|
|
573
550
|
}, async (args)=>({
|
|
@@ -604,7 +581,7 @@ const createContainerPlugin = (config)=>({
|
|
|
604
581
|
build.onResolve({
|
|
605
582
|
filter: /.*/,
|
|
606
583
|
namespace: 'esm-shares'
|
|
607
|
-
}, (args)=>{
|
|
584
|
+
}, async (args)=>{
|
|
608
585
|
if (sharedExternals.test(args.path)) {
|
|
609
586
|
return {
|
|
610
587
|
path: args.path,
|
|
@@ -615,14 +592,10 @@ const createContainerPlugin = (config)=>({
|
|
|
615
592
|
}
|
|
616
593
|
};
|
|
617
594
|
}
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
kind: args.kind,
|
|
623
|
-
resolveDir: args.resolveDir
|
|
624
|
-
}
|
|
625
|
-
};
|
|
595
|
+
await build.resolve(args.path, {
|
|
596
|
+
resolveDir: args.resolveDir
|
|
597
|
+
});
|
|
598
|
+
return undefined;
|
|
626
599
|
});
|
|
627
600
|
build.onLoad({
|
|
628
601
|
filter,
|
|
@@ -743,15 +716,37 @@ const initializeHostPlugin = {
|
|
|
743
716
|
contents: buildFederationHost(),
|
|
744
717
|
resolveDir: args.pluginData.resolveDir
|
|
745
718
|
}));
|
|
719
|
+
// Add custom loaders
|
|
720
|
+
const loaders = build.initialOptions.loader || {};
|
|
721
|
+
// Apply custom loaders
|
|
722
|
+
for (const [ext, loader] of Object.entries(loaders)){
|
|
723
|
+
build.onLoad({
|
|
724
|
+
filter: new RegExp(`\\${ext}$`),
|
|
725
|
+
namespace: 'file'
|
|
726
|
+
}, async (args)=>{
|
|
727
|
+
const contents = await fs__default["default"].promises.readFile(args.path, 'utf8');
|
|
728
|
+
return {
|
|
729
|
+
contents: buildFederationHost() + contents,
|
|
730
|
+
loader
|
|
731
|
+
};
|
|
732
|
+
});
|
|
733
|
+
}
|
|
734
|
+
// Fallback loader for files not matched by custom loaders
|
|
735
|
+
const fallbackFilter = new RegExp(Object.keys(loaders).map((ext)=>`\\${ext}$`).join('|'));
|
|
746
736
|
build.onLoad({
|
|
747
737
|
filter: /.*\.(ts|js|mjs)$/,
|
|
748
738
|
namespace: 'file'
|
|
749
|
-
},
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
739
|
+
}, //@ts-ignore
|
|
740
|
+
async (args)=>{
|
|
741
|
+
if (!fallbackFilter.test(args.path)) {
|
|
742
|
+
if (!build.initialOptions.entryPoints.some((e)=>args.path.includes(e))) {
|
|
743
|
+
return;
|
|
744
|
+
}
|
|
745
|
+
const contents = await fs__default["default"].promises.readFile(args.path, 'utf8');
|
|
746
|
+
return {
|
|
747
|
+
contents: buildFederationHost() + contents
|
|
748
|
+
};
|
|
749
|
+
}
|
|
755
750
|
});
|
|
756
751
|
}
|
|
757
752
|
};
|
|
@@ -837,15 +832,26 @@ const cjsToEsmPlugin = {
|
|
|
837
832
|
throw new Error(`Unable to resolve path: ${args.path}`);
|
|
838
833
|
}
|
|
839
834
|
const fileContent = fs__default["default"].readFileSync(resolver, 'utf-8');
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
835
|
+
try {
|
|
836
|
+
const { code } = await transform(fileContent);
|
|
837
|
+
return {
|
|
838
|
+
contents: code,
|
|
839
|
+
loader: 'js',
|
|
840
|
+
resolveDir: path__default["default"].dirname(resolver),
|
|
841
|
+
pluginData: _extends$1({}, args.pluginData, {
|
|
842
|
+
path: resolver
|
|
843
|
+
})
|
|
844
|
+
};
|
|
845
|
+
} catch (e) {
|
|
846
|
+
return {
|
|
847
|
+
contents: fileContent,
|
|
848
|
+
loader: 'js',
|
|
849
|
+
resolveDir: path__default["default"].dirname(resolver),
|
|
850
|
+
pluginData: _extends$1({}, args.pluginData, {
|
|
851
|
+
path: resolver
|
|
852
|
+
})
|
|
853
|
+
};
|
|
854
|
+
}
|
|
849
855
|
});
|
|
850
856
|
}
|
|
851
857
|
};
|
|
@@ -853,7 +859,56 @@ const cjsToEsmPlugin = {
|
|
|
853
859
|
const linkSharedPlugin = {
|
|
854
860
|
name: 'linkShared',
|
|
855
861
|
setup (build) {
|
|
856
|
-
const filter = new RegExp(federationBuilder.federationBuilder.
|
|
862
|
+
const filter = new RegExp(Object.keys(federationBuilder.federationBuilder.config.shared || {}).map((name)=>`${name}$`).join('|'));
|
|
863
|
+
build.onResolve({
|
|
864
|
+
filter
|
|
865
|
+
}, (args)=>{
|
|
866
|
+
if (args.namespace === 'esm-shares') return null;
|
|
867
|
+
return {
|
|
868
|
+
path: args.path,
|
|
869
|
+
namespace: 'virtual-share-module',
|
|
870
|
+
pluginData: {
|
|
871
|
+
kind: args.kind,
|
|
872
|
+
resolveDir: args.resolveDir
|
|
873
|
+
}
|
|
874
|
+
};
|
|
875
|
+
});
|
|
876
|
+
build.onResolve({
|
|
877
|
+
filter: /.*/,
|
|
878
|
+
namespace: 'esm-shares'
|
|
879
|
+
}, (args)=>{
|
|
880
|
+
if (filter.test(args.path)) {
|
|
881
|
+
return {
|
|
882
|
+
path: args.path,
|
|
883
|
+
namespace: 'virtual-share-module',
|
|
884
|
+
pluginData: {
|
|
885
|
+
kind: args.kind,
|
|
886
|
+
resolveDir: args.resolveDir
|
|
887
|
+
}
|
|
888
|
+
};
|
|
889
|
+
}
|
|
890
|
+
if (filter.test(args.importer)) {
|
|
891
|
+
return {
|
|
892
|
+
path: args.path,
|
|
893
|
+
namespace: 'esm-shares',
|
|
894
|
+
pluginData: {
|
|
895
|
+
kind: args.kind,
|
|
896
|
+
resolveDir: args.resolveDir
|
|
897
|
+
}
|
|
898
|
+
};
|
|
899
|
+
}
|
|
900
|
+
return undefined;
|
|
901
|
+
});
|
|
902
|
+
build.onResolve({
|
|
903
|
+
filter: /^federationShare/
|
|
904
|
+
}, async (args)=>({
|
|
905
|
+
path: args.path.replace('federationShare/', ''),
|
|
906
|
+
namespace: 'esm-shares',
|
|
907
|
+
pluginData: {
|
|
908
|
+
kind: args.kind,
|
|
909
|
+
resolveDir: args.resolveDir
|
|
910
|
+
}
|
|
911
|
+
}));
|
|
857
912
|
build.onLoad({
|
|
858
913
|
filter,
|
|
859
914
|
namespace: 'virtual-share-module'
|
package/dist/esbuild.esm.js
CHANGED
|
@@ -6,10 +6,10 @@ import fs__default from 'fs';
|
|
|
6
6
|
import path__default from 'path';
|
|
7
7
|
import commonjs from '@rollup/plugin-commonjs';
|
|
8
8
|
import replace from '@rollup/plugin-replace';
|
|
9
|
-
import '
|
|
9
|
+
import { init, parse as parse$1 } from 'es-module-lexer';
|
|
10
|
+
import { init as init$1, parse } from 'cjs-module-lexer';
|
|
10
11
|
import { promisify } from 'util';
|
|
11
12
|
import enhancedResolve from 'enhanced-resolve';
|
|
12
|
-
import * as moduleLexer from 'cjs-module-lexer';
|
|
13
13
|
import { f as federationBuilder } from './federation-builder.esm.js';
|
|
14
14
|
import 'npmlog';
|
|
15
15
|
|
|
@@ -37,12 +37,9 @@ const resolve = promisify(enhancedResolve.create({
|
|
|
37
37
|
'main'
|
|
38
38
|
]
|
|
39
39
|
}));
|
|
40
|
-
let lexerInitialized = false;
|
|
41
40
|
async function getExports(modulePath) {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
lexerInitialized = true;
|
|
45
|
-
}
|
|
41
|
+
await init;
|
|
42
|
+
await init$1;
|
|
46
43
|
try {
|
|
47
44
|
const exports = [];
|
|
48
45
|
const paths = [];
|
|
@@ -53,19 +50,18 @@ async function getExports(modulePath) {
|
|
|
53
50
|
while(paths.length > 0){
|
|
54
51
|
const currentPath = paths.pop();
|
|
55
52
|
if (currentPath) {
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
53
|
+
const content = await fs__default.promises.readFile(currentPath, 'utf8');
|
|
54
|
+
try {
|
|
55
|
+
const { exports: cjsExports } = parse(content);
|
|
56
|
+
exports.push(...cjsExports);
|
|
57
|
+
} catch (e) {
|
|
58
|
+
const [, esExports] = parse$1(content);
|
|
59
|
+
exports.push(...esExports.map((exp)=>exp.n));
|
|
63
60
|
}
|
|
61
|
+
// TODO: Handle re-exports
|
|
64
62
|
}
|
|
65
63
|
}
|
|
66
|
-
|
|
67
|
-
* 追加default
|
|
68
|
-
*/ if (!exports.includes('default')) {
|
|
64
|
+
if (!exports.includes('default')) {
|
|
69
65
|
exports.push('default');
|
|
70
66
|
}
|
|
71
67
|
return exports;
|
|
@@ -536,7 +532,7 @@ const createContainerPlugin = (config)=>({
|
|
|
536
532
|
const filter = new RegExp([
|
|
537
533
|
filename
|
|
538
534
|
].map((name)=>`${name}$`).join('|'));
|
|
539
|
-
const sharedExternals = new RegExp(
|
|
535
|
+
const sharedExternals = new RegExp(Object.keys(federationBuilder.config.shared || {}).map((name)=>`${name}$`).join('|'));
|
|
540
536
|
build.onResolve({
|
|
541
537
|
filter
|
|
542
538
|
}, async (args)=>({
|
|
@@ -573,7 +569,7 @@ const createContainerPlugin = (config)=>({
|
|
|
573
569
|
build.onResolve({
|
|
574
570
|
filter: /.*/,
|
|
575
571
|
namespace: 'esm-shares'
|
|
576
|
-
}, (args)=>{
|
|
572
|
+
}, async (args)=>{
|
|
577
573
|
if (sharedExternals.test(args.path)) {
|
|
578
574
|
return {
|
|
579
575
|
path: args.path,
|
|
@@ -584,14 +580,10 @@ const createContainerPlugin = (config)=>({
|
|
|
584
580
|
}
|
|
585
581
|
};
|
|
586
582
|
}
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
kind: args.kind,
|
|
592
|
-
resolveDir: args.resolveDir
|
|
593
|
-
}
|
|
594
|
-
};
|
|
583
|
+
await build.resolve(args.path, {
|
|
584
|
+
resolveDir: args.resolveDir
|
|
585
|
+
});
|
|
586
|
+
return undefined;
|
|
595
587
|
});
|
|
596
588
|
build.onLoad({
|
|
597
589
|
filter,
|
|
@@ -712,15 +704,37 @@ const initializeHostPlugin = {
|
|
|
712
704
|
contents: buildFederationHost(),
|
|
713
705
|
resolveDir: args.pluginData.resolveDir
|
|
714
706
|
}));
|
|
707
|
+
// Add custom loaders
|
|
708
|
+
const loaders = build.initialOptions.loader || {};
|
|
709
|
+
// Apply custom loaders
|
|
710
|
+
for (const [ext, loader] of Object.entries(loaders)){
|
|
711
|
+
build.onLoad({
|
|
712
|
+
filter: new RegExp(`\\${ext}$`),
|
|
713
|
+
namespace: 'file'
|
|
714
|
+
}, async (args)=>{
|
|
715
|
+
const contents = await fs__default.promises.readFile(args.path, 'utf8');
|
|
716
|
+
return {
|
|
717
|
+
contents: buildFederationHost() + contents,
|
|
718
|
+
loader
|
|
719
|
+
};
|
|
720
|
+
});
|
|
721
|
+
}
|
|
722
|
+
// Fallback loader for files not matched by custom loaders
|
|
723
|
+
const fallbackFilter = new RegExp(Object.keys(loaders).map((ext)=>`\\${ext}$`).join('|'));
|
|
715
724
|
build.onLoad({
|
|
716
725
|
filter: /.*\.(ts|js|mjs)$/,
|
|
717
726
|
namespace: 'file'
|
|
718
|
-
},
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
727
|
+
}, //@ts-ignore
|
|
728
|
+
async (args)=>{
|
|
729
|
+
if (!fallbackFilter.test(args.path)) {
|
|
730
|
+
if (!build.initialOptions.entryPoints.some((e)=>args.path.includes(e))) {
|
|
731
|
+
return;
|
|
732
|
+
}
|
|
733
|
+
const contents = await fs__default.promises.readFile(args.path, 'utf8');
|
|
734
|
+
return {
|
|
735
|
+
contents: buildFederationHost() + contents
|
|
736
|
+
};
|
|
737
|
+
}
|
|
724
738
|
});
|
|
725
739
|
}
|
|
726
740
|
};
|
|
@@ -806,15 +820,26 @@ const cjsToEsmPlugin = {
|
|
|
806
820
|
throw new Error(`Unable to resolve path: ${args.path}`);
|
|
807
821
|
}
|
|
808
822
|
const fileContent = fs__default.readFileSync(resolver, 'utf-8');
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
823
|
+
try {
|
|
824
|
+
const { code } = await transform(fileContent);
|
|
825
|
+
return {
|
|
826
|
+
contents: code,
|
|
827
|
+
loader: 'js',
|
|
828
|
+
resolveDir: path__default.dirname(resolver),
|
|
829
|
+
pluginData: _extends$1({}, args.pluginData, {
|
|
830
|
+
path: resolver
|
|
831
|
+
})
|
|
832
|
+
};
|
|
833
|
+
} catch (e) {
|
|
834
|
+
return {
|
|
835
|
+
contents: fileContent,
|
|
836
|
+
loader: 'js',
|
|
837
|
+
resolveDir: path__default.dirname(resolver),
|
|
838
|
+
pluginData: _extends$1({}, args.pluginData, {
|
|
839
|
+
path: resolver
|
|
840
|
+
})
|
|
841
|
+
};
|
|
842
|
+
}
|
|
818
843
|
});
|
|
819
844
|
}
|
|
820
845
|
};
|
|
@@ -822,7 +847,56 @@ const cjsToEsmPlugin = {
|
|
|
822
847
|
const linkSharedPlugin = {
|
|
823
848
|
name: 'linkShared',
|
|
824
849
|
setup (build) {
|
|
825
|
-
const filter = new RegExp(federationBuilder.
|
|
850
|
+
const filter = new RegExp(Object.keys(federationBuilder.config.shared || {}).map((name)=>`${name}$`).join('|'));
|
|
851
|
+
build.onResolve({
|
|
852
|
+
filter
|
|
853
|
+
}, (args)=>{
|
|
854
|
+
if (args.namespace === 'esm-shares') return null;
|
|
855
|
+
return {
|
|
856
|
+
path: args.path,
|
|
857
|
+
namespace: 'virtual-share-module',
|
|
858
|
+
pluginData: {
|
|
859
|
+
kind: args.kind,
|
|
860
|
+
resolveDir: args.resolveDir
|
|
861
|
+
}
|
|
862
|
+
};
|
|
863
|
+
});
|
|
864
|
+
build.onResolve({
|
|
865
|
+
filter: /.*/,
|
|
866
|
+
namespace: 'esm-shares'
|
|
867
|
+
}, (args)=>{
|
|
868
|
+
if (filter.test(args.path)) {
|
|
869
|
+
return {
|
|
870
|
+
path: args.path,
|
|
871
|
+
namespace: 'virtual-share-module',
|
|
872
|
+
pluginData: {
|
|
873
|
+
kind: args.kind,
|
|
874
|
+
resolveDir: args.resolveDir
|
|
875
|
+
}
|
|
876
|
+
};
|
|
877
|
+
}
|
|
878
|
+
if (filter.test(args.importer)) {
|
|
879
|
+
return {
|
|
880
|
+
path: args.path,
|
|
881
|
+
namespace: 'esm-shares',
|
|
882
|
+
pluginData: {
|
|
883
|
+
kind: args.kind,
|
|
884
|
+
resolveDir: args.resolveDir
|
|
885
|
+
}
|
|
886
|
+
};
|
|
887
|
+
}
|
|
888
|
+
return undefined;
|
|
889
|
+
});
|
|
890
|
+
build.onResolve({
|
|
891
|
+
filter: /^federationShare/
|
|
892
|
+
}, async (args)=>({
|
|
893
|
+
path: args.path.replace('federationShare/', ''),
|
|
894
|
+
namespace: 'esm-shares',
|
|
895
|
+
pluginData: {
|
|
896
|
+
kind: args.kind,
|
|
897
|
+
resolveDir: args.resolveDir
|
|
898
|
+
}
|
|
899
|
+
}));
|
|
826
900
|
build.onLoad({
|
|
827
901
|
filter,
|
|
828
902
|
namespace: 'virtual-share-module'
|
package/dist/package.json
CHANGED
|
@@ -54,6 +54,8 @@
|
|
|
54
54
|
"esm-cjs-lexer": "^0.10.0",
|
|
55
55
|
"cjs-module-lexer": "^1.3.1",
|
|
56
56
|
"@chialab/cjs-to-esm": "^0.18.0",
|
|
57
|
+
"es-module-lexer": "^1.5.3",
|
|
58
|
+
"@chialab/estransform": "^0.18.1",
|
|
57
59
|
"@module-federation/sdk": "workspace:*",
|
|
58
60
|
"json5": "^2.2.3",
|
|
59
61
|
"@rollup/plugin-commonjs": "^22.0.2",
|
|
@@ -1,11 +1,2 @@
|
|
|
1
1
|
export declare const resolve: (arg1: string, arg2: string) => Promise<string | false | undefined>;
|
|
2
2
|
export declare function getExports(modulePath: string): Promise<string[]>;
|
|
3
|
-
declare function collectExports(filePath: string): {
|
|
4
|
-
hasDefaultExport: boolean;
|
|
5
|
-
hasFurtherExports: boolean;
|
|
6
|
-
defaultExportName: string;
|
|
7
|
-
exports: string[];
|
|
8
|
-
};
|
|
9
|
-
declare function traverse(node: any, visit: (node: any) => void): void;
|
|
10
|
-
declare function isDefaultExport(exportSpecifier: any): boolean;
|
|
11
|
-
export { collectExports, traverse, isDefaultExport };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@module-federation/esbuild",
|
|
3
|
-
"version": "0.0.0-next-
|
|
3
|
+
"version": "0.0.0-next-20240524034417",
|
|
4
4
|
"author": "Zack Jackson (@ScriptedAlchemy)",
|
|
5
5
|
"main": "./dist/index.cjs.js",
|
|
6
6
|
"module": "./dist/index.esm.js",
|
|
@@ -54,6 +54,8 @@
|
|
|
54
54
|
"esm-cjs-lexer": "^0.10.0",
|
|
55
55
|
"cjs-module-lexer": "^1.3.1",
|
|
56
56
|
"@chialab/cjs-to-esm": "^0.18.0",
|
|
57
|
+
"es-module-lexer": "^1.5.3",
|
|
58
|
+
"@chialab/estransform": "^0.18.1",
|
|
57
59
|
"json5": "^2.2.3",
|
|
58
60
|
"@rollup/plugin-commonjs": "^22.0.2",
|
|
59
61
|
"@rollup/plugin-node-resolve": "^13.3.0",
|
|
@@ -63,6 +65,6 @@
|
|
|
63
65
|
"esbuild": "^0.18.12",
|
|
64
66
|
"npmlog": "^6.0.2",
|
|
65
67
|
"acorn": "^8.8.1",
|
|
66
|
-
"@module-federation/sdk": "0.0.0-next-
|
|
68
|
+
"@module-federation/sdk": "0.0.0-next-20240524034417"
|
|
67
69
|
}
|
|
68
70
|
}
|