@angular-architects/native-federation 16.3.3 → 17.0.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/README.md +5 -6
- package/collection.json +22 -22
- package/package.json +8 -10
- package/src/builders/build/builder.js +4 -3
- package/src/builders/build/builder.js.map +1 -1
- package/src/builders/build/schema.d.ts +11 -11
- package/src/builders/build/schema.json +43 -43
- package/src/schematics/init/schematic.js +25 -19
- package/src/schematics/init/schematic.js.map +1 -1
- package/src/schematics/remove/schema.d.ts +3 -3
- package/src/schematics/remove/schema.json +17 -17
- package/src/utils/dev-server.js +4 -4
- package/src/utils/rollup.ts.bak.bak +60 -0
- package/src/utils/rollup.d.ts +0 -1
- package/src/utils/rollup.js +0 -58
- package/src/utils/rollup.js.map +0 -1
package/README.md
CHANGED
|
@@ -22,19 +22,18 @@ We will at least provide a new version of this package per Angular major. If nec
|
|
|
22
22
|
|
|
23
23
|
- Use version 16.1.x for Angular 16.1.x
|
|
24
24
|
- Use version 16.2.x for Angular 16.2.x
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
- Use version 17.x for Angular 17.x
|
|
26
|
+
|
|
28
27
|
## Credits
|
|
29
28
|
|
|
30
29
|
Big thanks to:
|
|
31
30
|
|
|
32
|
-
- [Zack
|
|
31
|
+
- [Zack Jackson](https://twitter.com/ScriptedAlchemy) for initially coming up with the great idea of Module Federation and its successful mental model
|
|
33
32
|
- [Tobias Koppers](https://twitter.com/wSokra) for helping to make Module Federation a first class citizen of webpack
|
|
34
|
-
- [Florian
|
|
33
|
+
- [Florian Rappl](https://twitter.com/FlorianRappl) for a good discussion about these topics during a speakers dinner in Nuremberg
|
|
35
34
|
- [The Nx Team](https://twitter.com/NxDevTools), esp. [Colum Ferry](https://twitter.com/FerryColum), who seamlessly integrated webpack Module Federation into Nx and hence helped to spread the word about it (Nx + Module Federation === ❤️)
|
|
36
35
|
- [Michael Egger-Zikes](https://twitter.com/MikeZks) for contributing to our Module Federation efforts and brining in valuable feedback
|
|
37
|
-
- The Angular CLI-Team, esp. [Alan Agius](https://twitter.com/AlanAgius4) and
|
|
36
|
+
- The Angular CLI-Team, esp. [Alan Agius](https://twitter.com/AlanAgius4) and Charles Lyding, for their fantastic work on the esbuild builder for Angular
|
|
38
37
|
|
|
39
38
|
## Example 🛠️
|
|
40
39
|
|
package/collection.json
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "../../node_modules/@angular-devkit/schematics/collection-schema.json",
|
|
3
|
-
"name": "native-federation",
|
|
4
|
-
"version": "0.0.1",
|
|
5
|
-
"schematics": {
|
|
6
|
-
"ng-add": {
|
|
7
|
-
"factory": "./src/schematics/init/schematic",
|
|
8
|
-
"schema": "./src/schematics/init/schema.json",
|
|
9
|
-
"description": "Initialize an angular project for native federation"
|
|
10
|
-
},
|
|
11
|
-
"init": {
|
|
12
|
-
"factory": "./src/schematics/init/schematic",
|
|
13
|
-
"schema": "./src/schematics/init/schema.json",
|
|
14
|
-
"description": "Initialize an angular project for native federation"
|
|
15
|
-
},
|
|
16
|
-
"remove": {
|
|
17
|
-
"factory": "./src/schematics/remove/schematic",
|
|
18
|
-
"schema": "./src/schematics/remove/schema.json",
|
|
19
|
-
"description": "Removes native federation"
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$schema": "../../node_modules/@angular-devkit/schematics/collection-schema.json",
|
|
3
|
+
"name": "native-federation",
|
|
4
|
+
"version": "0.0.1",
|
|
5
|
+
"schematics": {
|
|
6
|
+
"ng-add": {
|
|
7
|
+
"factory": "./src/schematics/init/schematic",
|
|
8
|
+
"schema": "./src/schematics/init/schema.json",
|
|
9
|
+
"description": "Initialize an angular project for native federation"
|
|
10
|
+
},
|
|
11
|
+
"init": {
|
|
12
|
+
"factory": "./src/schematics/init/schematic",
|
|
13
|
+
"schema": "./src/schematics/init/schema.json",
|
|
14
|
+
"description": "Initialize an angular project for native federation"
|
|
15
|
+
},
|
|
16
|
+
"remove": {
|
|
17
|
+
"factory": "./src/schematics/remove/schematic",
|
|
18
|
+
"schema": "./src/schematics/remove/schema.json",
|
|
19
|
+
"description": "Removes native federation"
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@angular-architects/native-federation",
|
|
3
|
-
"version": "
|
|
4
|
-
"main": "src/index.js",
|
|
3
|
+
"version": "17.0.0",
|
|
4
|
+
"main": "./src/index.js",
|
|
5
5
|
"generators": "./collection.json",
|
|
6
6
|
"builders": "./builders.json",
|
|
7
7
|
"schematics": "./collection.json",
|
|
@@ -16,17 +16,15 @@
|
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
18
|
"@babel/core": "^7.19.0",
|
|
19
|
-
"@softarc/native-federation": "2.0.
|
|
20
|
-
"@softarc/native-federation-runtime": "2.0.
|
|
19
|
+
"@softarc/native-federation": "2.0.4",
|
|
20
|
+
"@softarc/native-federation-runtime": "2.0.4",
|
|
21
21
|
"@types/browser-sync": "^2.26.3",
|
|
22
22
|
"browser-sync": "^2.29.3",
|
|
23
|
-
"esbuild": "^0.
|
|
23
|
+
"esbuild": "^0.19.5",
|
|
24
24
|
"mrmime": "^1.0.1",
|
|
25
25
|
"npmlog": "^6.0.2",
|
|
26
|
-
"process": "0.11.10"
|
|
27
|
-
"vite": "4.4.7"
|
|
26
|
+
"process": "0.11.10"
|
|
28
27
|
},
|
|
29
|
-
"peerDependencies": {
|
|
30
|
-
|
|
31
|
-
"types": "./src/index.d.ts"
|
|
28
|
+
"peerDependencies": {},
|
|
29
|
+
"type": "commonjs"
|
|
32
30
|
}
|
|
@@ -39,7 +39,7 @@ function runBuilder(nfOptions, context) {
|
|
|
39
39
|
federationConfig: infereConfigPath(options.tsConfig),
|
|
40
40
|
tsConfig: options.tsConfig,
|
|
41
41
|
verbose: options.verbose,
|
|
42
|
-
watch:
|
|
42
|
+
watch: false,
|
|
43
43
|
dev: !!nfOptions.dev,
|
|
44
44
|
};
|
|
45
45
|
const config = yield tslib_1.__await((0, build_4.loadFederationConfig)(fedOptions));
|
|
@@ -109,8 +109,9 @@ function runBuilder(nfOptions, context) {
|
|
|
109
109
|
}
|
|
110
110
|
if (!first && watch) {
|
|
111
111
|
setTimeout(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
112
|
-
|
|
113
|
-
|
|
112
|
+
// logger.info('Rebuilding federation artefacts ...');
|
|
113
|
+
// await Promise.all([rebuildEvents.rebuild.emit()]);
|
|
114
|
+
yield (0, build_5.buildForFederation)(config, fedOptions, externals);
|
|
114
115
|
build_1.logger.info('Done!');
|
|
115
116
|
if (runServer) {
|
|
116
117
|
setTimeout(() => (0, dev_server_1.reloadShell)(nfOptions.shell), 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../../../libs/native-federation/src/builders/build/builder.ts"],"names":[],"mappings":";;;;AAAA,kDAAkD;AAClD,yDAImC;AAInC,gGAAiG;AAEjG,mDAA6B;AAC7B,4DAAuE;AAGvE,4DAAmE;AACnE,iFAG6C;AAC7C,4DAAgE;AAChE,4DAAwE;AACxE,4DAAsE;AACtE,yDAAmE;AAGnE,uDAKgC;AAChC,+DAAyD;AACzD,iEAA8D;AAC9D,2BAA2C;AAC3C,uDAIgC;AAGhC,SAAuB,UAAU,CAC/B,SAA0B,EAC1B,OAAuB;;;QAEvB,MAAM,MAAM,GAAG,IAAA,kCAAsB,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,CAAC,sBAAM,OAAO,CAAC,gBAAgB,CAC9C,MAAM,CACP,CAAA,CAAmC,CAAC;QAErC,MAAM,OAAO,GAAG,sBAAM,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAA,CAAC;QAC9D,MAAM,OAAO,GAAG,CAAC,sBAAM,OAAO,CAAC,eAAe,CAC5C,QAAQ,EACR,OAAO,CACR,CAAA,CAAwB,CAAC;QAE1B,MAAM,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;QACnC,MAAM,KAAK,GAAG,CAAC,SAAS,CAAC;QACzB,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC;QAE7C,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QACtB,MAAM,aAAa,GAAG,IAAI,4BAAW,EAAE,CAAC;QAExC,MAAM,OAAO,GAAG,IAAA,mDAAyB,EAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;QAC3E,IAAA,uBAAe,EAAC,OAAO,CAAC,CAAC;QAEzB,IAAA,mBAAW,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAElD,MAAM,UAAU,GAAsB;YACpC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,gBAAgB,EAAE,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC;YACpD,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../../../libs/native-federation/src/builders/build/builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { JsonObject } from '@angular-devkit/core';
|
|
2
|
-
|
|
3
|
-
export interface NfBuilderSchema extends JsonObject {
|
|
4
|
-
target: string;
|
|
5
|
-
dev: boolean;
|
|
6
|
-
port: number;
|
|
7
|
-
open: boolean;
|
|
8
|
-
rebuildDelay: number;
|
|
9
|
-
shell: string;
|
|
10
|
-
watch: boolean;
|
|
11
|
-
} // eslint-disable-line
|
|
1
|
+
import { JsonObject } from '@angular-devkit/core';
|
|
2
|
+
|
|
3
|
+
export interface NfBuilderSchema extends JsonObject {
|
|
4
|
+
target: string;
|
|
5
|
+
dev: boolean;
|
|
6
|
+
port: number;
|
|
7
|
+
open: boolean;
|
|
8
|
+
rebuildDelay: number;
|
|
9
|
+
shell: string;
|
|
10
|
+
watch: boolean;
|
|
11
|
+
} // eslint-disable-line
|
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 2,
|
|
3
|
-
"outputCapture": "direct-nodejs",
|
|
4
|
-
"$schema": "http://json-schema.org/draft-07/schema",
|
|
5
|
-
"title": "native federation browser builder",
|
|
6
|
-
"description": "builder for native federation browser apps",
|
|
7
|
-
"type": "object",
|
|
8
|
-
"properties": {
|
|
9
|
-
"target": {
|
|
10
|
-
"type": "string",
|
|
11
|
-
"description": "target configured for the esbuild builder"
|
|
12
|
-
},
|
|
13
|
-
"dev": {
|
|
14
|
-
"type": "boolean",
|
|
15
|
-
"description": "Set this to true to start the builder in dev mode",
|
|
16
|
-
"default": false
|
|
17
|
-
},
|
|
18
|
-
"watch": {
|
|
19
|
-
"type": "boolean",
|
|
20
|
-
"default": false
|
|
21
|
-
},
|
|
22
|
-
"port": {
|
|
23
|
-
"type": "number",
|
|
24
|
-
"default": 0
|
|
25
|
-
},
|
|
26
|
-
"open": {
|
|
27
|
-
"type": "boolean",
|
|
28
|
-
"default": true,
|
|
29
|
-
"description": "Open browser?",
|
|
30
|
-
"alias": "o"
|
|
31
|
-
},
|
|
32
|
-
"rebuildDelay": {
|
|
33
|
-
"type": "number",
|
|
34
|
-
"default": 2000,
|
|
35
|
-
"description": "The delay for rebuilding federation artefacts. This allows to have more resources for refreshing your micro frontend in the browser."
|
|
36
|
-
},
|
|
37
|
-
"shell": {
|
|
38
|
-
"type": "string",
|
|
39
|
-
"description": "Experimental",
|
|
40
|
-
"default": ""
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"version": 2,
|
|
3
|
+
"outputCapture": "direct-nodejs",
|
|
4
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
5
|
+
"title": "native federation browser builder",
|
|
6
|
+
"description": "builder for native federation browser apps",
|
|
7
|
+
"type": "object",
|
|
8
|
+
"properties": {
|
|
9
|
+
"target": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"description": "target configured for the esbuild builder"
|
|
12
|
+
},
|
|
13
|
+
"dev": {
|
|
14
|
+
"type": "boolean",
|
|
15
|
+
"description": "Set this to true to start the builder in dev mode",
|
|
16
|
+
"default": false
|
|
17
|
+
},
|
|
18
|
+
"watch": {
|
|
19
|
+
"type": "boolean",
|
|
20
|
+
"default": false
|
|
21
|
+
},
|
|
22
|
+
"port": {
|
|
23
|
+
"type": "number",
|
|
24
|
+
"default": 0
|
|
25
|
+
},
|
|
26
|
+
"open": {
|
|
27
|
+
"type": "boolean",
|
|
28
|
+
"default": true,
|
|
29
|
+
"description": "Open browser?",
|
|
30
|
+
"alias": "o"
|
|
31
|
+
},
|
|
32
|
+
"rebuildDelay": {
|
|
33
|
+
"type": "number",
|
|
34
|
+
"default": 2000,
|
|
35
|
+
"description": "The delay for rebuilding federation artefacts. This allows to have more resources for refreshing your micro frontend in the browser."
|
|
36
|
+
},
|
|
37
|
+
"shell": {
|
|
38
|
+
"type": "string",
|
|
39
|
+
"description": "Experimental",
|
|
40
|
+
"default": ""
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -48,6 +48,11 @@ function updateWorkspaceConfig(tree, options, workspace, workspaceFileName) {
|
|
|
48
48
|
console.log('Switching project to esbuild ...');
|
|
49
49
|
originalBuild.builder = '@angular-devkit/build-angular:browser-esbuild';
|
|
50
50
|
}
|
|
51
|
+
if (originalBuild.options.browser) {
|
|
52
|
+
const browser = originalBuild.options.browser;
|
|
53
|
+
delete originalBuild.options.browser;
|
|
54
|
+
originalBuild.options.main = browser;
|
|
55
|
+
}
|
|
51
56
|
projectConfig.architect.esbuild = originalBuild;
|
|
52
57
|
projectConfig.architect.build = {
|
|
53
58
|
builder: '@angular-architects/native-federation:build',
|
|
@@ -107,7 +112,8 @@ function normalizeOptions(options, workspace) {
|
|
|
107
112
|
const manifestPath = path
|
|
108
113
|
.join(projectRoot, 'src/assets/federation.manifest.json')
|
|
109
114
|
.replace(/\\/g, '/');
|
|
110
|
-
const main = projectConfig.architect.build.options.main
|
|
115
|
+
const main = projectConfig.architect.build.options.main ||
|
|
116
|
+
projectConfig.architect.build.options.browser;
|
|
111
117
|
if (!projectConfig.architect.build.options.polyfills) {
|
|
112
118
|
projectConfig.architect.build.options.polyfills = [];
|
|
113
119
|
}
|
|
@@ -176,31 +182,31 @@ function makeMainAsync(main, options, remoteMap) {
|
|
|
176
182
|
tree.create(bootstrapName, mainContent);
|
|
177
183
|
let newMainContent = '';
|
|
178
184
|
if (options.type === 'dynamic-host') {
|
|
179
|
-
newMainContent = `import { initFederation } from '@angular-architects/native-federation';
|
|
180
|
-
|
|
181
|
-
initFederation('/assets/federation.manifest.json')
|
|
182
|
-
.catch(err => console.error(err))
|
|
183
|
-
.then(_ => import('./bootstrap'))
|
|
184
|
-
.catch(err => console.error(err));
|
|
185
|
+
newMainContent = `import { initFederation } from '@angular-architects/native-federation';
|
|
186
|
+
|
|
187
|
+
initFederation('/assets/federation.manifest.json')
|
|
188
|
+
.catch(err => console.error(err))
|
|
189
|
+
.then(_ => import('./bootstrap'))
|
|
190
|
+
.catch(err => console.error(err));
|
|
185
191
|
`;
|
|
186
192
|
}
|
|
187
193
|
else if (options.type === 'host') {
|
|
188
194
|
const manifest = JSON.stringify(remoteMap, null, 2).replace(/"/g, "'");
|
|
189
|
-
newMainContent = `import { initFederation } from '@angular-architects/native-federation';
|
|
190
|
-
|
|
191
|
-
initFederation(${manifest})
|
|
192
|
-
.catch(err => console.error(err))
|
|
193
|
-
.then(_ => import('./bootstrap'))
|
|
194
|
-
.catch(err => console.error(err));
|
|
195
|
+
newMainContent = `import { initFederation } from '@angular-architects/native-federation';
|
|
196
|
+
|
|
197
|
+
initFederation(${manifest})
|
|
198
|
+
.catch(err => console.error(err))
|
|
199
|
+
.then(_ => import('./bootstrap'))
|
|
200
|
+
.catch(err => console.error(err));
|
|
195
201
|
`;
|
|
196
202
|
}
|
|
197
203
|
else {
|
|
198
|
-
newMainContent = `import { initFederation } from '@angular-architects/native-federation';
|
|
199
|
-
|
|
200
|
-
initFederation()
|
|
201
|
-
.catch(err => console.error(err))
|
|
202
|
-
.then(_ => import('./bootstrap'))
|
|
203
|
-
.catch(err => console.error(err));
|
|
204
|
+
newMainContent = `import { initFederation } from '@angular-architects/native-federation';
|
|
205
|
+
|
|
206
|
+
initFederation()
|
|
207
|
+
.catch(err => console.error(err))
|
|
208
|
+
.then(_ => import('./bootstrap'))
|
|
209
|
+
.catch(err => console.error(err));
|
|
204
210
|
`;
|
|
205
211
|
}
|
|
206
212
|
tree.overwrite(main, newMainContent);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schematic.js","sourceRoot":"","sources":["../../../../../../libs/native-federation/src/schematics/init/schematic.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"schematic.js","sourceRoot":"","sources":["../../../../../../libs/native-federation/src/schematics/init/schematic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export interface MfSchematicSchema {
|
|
2
|
-
project: string;
|
|
3
|
-
}
|
|
1
|
+
export interface MfSchematicSchema {
|
|
2
|
+
project: string;
|
|
3
|
+
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "http://json-schema.org/schema",
|
|
3
|
-
"$id": "mf",
|
|
4
|
-
"title": "",
|
|
5
|
-
"type": "object",
|
|
6
|
-
"properties": {
|
|
7
|
-
"project": {
|
|
8
|
-
"type": "string",
|
|
9
|
-
"description": "The project to add module federation",
|
|
10
|
-
"$default": {
|
|
11
|
-
"$source": "argv",
|
|
12
|
-
"index": 0
|
|
13
|
-
},
|
|
14
|
-
"x-prompt": "Project name (press enter for default project)"
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "mf",
|
|
4
|
+
"title": "",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"project": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "The project to add module federation",
|
|
10
|
+
"$default": {
|
|
11
|
+
"$source": "argv",
|
|
12
|
+
"index": 0
|
|
13
|
+
},
|
|
14
|
+
"x-prompt": "Project name (press enter for default project)"
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
package/src/utils/dev-server.js
CHANGED
|
@@ -69,10 +69,10 @@ function reloadShell(shellProjectName) {
|
|
|
69
69
|
exports.reloadShell = reloadShell;
|
|
70
70
|
function modifyIndexHtml(content, fileNames) {
|
|
71
71
|
if (buildError) {
|
|
72
|
-
const errorHtml = `
|
|
73
|
-
<div style="position: absolute; filter: opacity(80%); top:0; bottom:0; left:0; right:0; padding:20px; background-color:black; color:white; ">
|
|
74
|
-
<h2>${buildError}</h2>
|
|
75
|
-
</div>
|
|
72
|
+
const errorHtml = `
|
|
73
|
+
<div style="position: absolute; filter: opacity(80%); top:0; bottom:0; left:0; right:0; padding:20px; background-color:black; color:white; ">
|
|
74
|
+
<h2>${buildError}</h2>
|
|
75
|
+
</div>
|
|
76
76
|
`;
|
|
77
77
|
content = errorHtml + content;
|
|
78
78
|
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//
|
|
2
|
+
// We stick with rollup for bundling shared npm packages, as esbuild
|
|
3
|
+
// does currently not allow to convert commonjs to esm
|
|
4
|
+
//
|
|
5
|
+
|
|
6
|
+
import { rollup } from 'rollup';
|
|
7
|
+
import resolve from '@rollup/plugin-node-resolve';
|
|
8
|
+
import { externals } from 'rollup-plugin-node-externals';
|
|
9
|
+
import { logger } from '@softarc/native-federation/build';
|
|
10
|
+
import { terser } from 'rollup-plugin-terser';
|
|
11
|
+
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
const commonjs = require('@rollup/plugin-commonjs');
|
|
14
|
+
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
16
|
+
const replace = require('@rollup/plugin-replace');
|
|
17
|
+
|
|
18
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
19
|
+
const json = require('@rollup/plugin-json');
|
|
20
|
+
|
|
21
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
22
|
+
|
|
23
|
+
export async function runRollup(
|
|
24
|
+
entryPoint: string,
|
|
25
|
+
external: string[],
|
|
26
|
+
outfile: string
|
|
27
|
+
) {
|
|
28
|
+
try {
|
|
29
|
+
const result = await rollup({
|
|
30
|
+
input: entryPoint,
|
|
31
|
+
onwarn: (warning) => {
|
|
32
|
+
logger.verbose(warning);
|
|
33
|
+
},
|
|
34
|
+
plugins: [
|
|
35
|
+
json(),
|
|
36
|
+
commonjs(),
|
|
37
|
+
externals({ include: external }),
|
|
38
|
+
resolve(),
|
|
39
|
+
replace({
|
|
40
|
+
preventAssignment: true,
|
|
41
|
+
values: {
|
|
42
|
+
'process.env.NODE_ENV': '"development"',
|
|
43
|
+
},
|
|
44
|
+
}),
|
|
45
|
+
terser({ mangle: false, format: { comments: false } }),
|
|
46
|
+
],
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
await result.write({
|
|
50
|
+
format: 'esm',
|
|
51
|
+
compact: true,
|
|
52
|
+
file: outfile,
|
|
53
|
+
sourcemap: true,
|
|
54
|
+
exports: 'named',
|
|
55
|
+
});
|
|
56
|
+
} catch (e) {
|
|
57
|
+
logger.error('Rollup error');
|
|
58
|
+
throw e;
|
|
59
|
+
}
|
|
60
|
+
}
|
package/src/utils/rollup.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function runRollup(entryPoint: string, external: string[], outfile: string): Promise<void>;
|
package/src/utils/rollup.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
//
|
|
3
|
-
// We stick with rollup for bundling shared npm packages, as esbuild
|
|
4
|
-
// does currently not allow to convert commonjs to esm
|
|
5
|
-
//
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.runRollup = void 0;
|
|
8
|
-
const tslib_1 = require("tslib");
|
|
9
|
-
const rollup_1 = require("rollup");
|
|
10
|
-
const plugin_node_resolve_1 = tslib_1.__importDefault(require("@rollup/plugin-node-resolve"));
|
|
11
|
-
const rollup_plugin_node_externals_1 = require("rollup-plugin-node-externals");
|
|
12
|
-
const build_1 = require("@softarc/native-federation/build");
|
|
13
|
-
const rollup_plugin_terser_1 = require("rollup-plugin-terser");
|
|
14
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
15
|
-
const commonjs = require('@rollup/plugin-commonjs');
|
|
16
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
17
|
-
const replace = require('@rollup/plugin-replace');
|
|
18
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
19
|
-
const json = require('@rollup/plugin-json');
|
|
20
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
21
|
-
function runRollup(entryPoint, external, outfile) {
|
|
22
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
try {
|
|
24
|
-
const result = yield (0, rollup_1.rollup)({
|
|
25
|
-
input: entryPoint,
|
|
26
|
-
onwarn: (warning) => {
|
|
27
|
-
build_1.logger.verbose(warning);
|
|
28
|
-
},
|
|
29
|
-
plugins: [
|
|
30
|
-
json(),
|
|
31
|
-
commonjs(),
|
|
32
|
-
(0, rollup_plugin_node_externals_1.externals)({ include: external }),
|
|
33
|
-
(0, plugin_node_resolve_1.default)(),
|
|
34
|
-
replace({
|
|
35
|
-
preventAssignment: true,
|
|
36
|
-
values: {
|
|
37
|
-
'process.env.NODE_ENV': '"development"',
|
|
38
|
-
},
|
|
39
|
-
}),
|
|
40
|
-
(0, rollup_plugin_terser_1.terser)({ mangle: false, format: { comments: false } }),
|
|
41
|
-
],
|
|
42
|
-
});
|
|
43
|
-
yield result.write({
|
|
44
|
-
format: 'esm',
|
|
45
|
-
compact: true,
|
|
46
|
-
file: outfile,
|
|
47
|
-
sourcemap: true,
|
|
48
|
-
exports: 'named',
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
catch (e) {
|
|
52
|
-
build_1.logger.error('Rollup error');
|
|
53
|
-
throw e;
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
exports.runRollup = runRollup;
|
|
58
|
-
//# sourceMappingURL=rollup.js.map
|
package/src/utils/rollup.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rollup.js","sourceRoot":"","sources":["../../../../../libs/native-federation/src/utils/rollup.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,oEAAoE;AACpE,sDAAsD;AACtD,EAAE;;;;AAEF,mCAAgC;AAChC,8FAAkD;AAClD,+EAAyD;AACzD,4DAA0D;AAC1D,+DAA8C;AAE9C,8DAA8D;AAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;AAEpD,8DAA8D;AAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;AAElD,8DAA8D;AAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAE5C,8DAA8D;AAE9D,SAAsB,SAAS,CAC7B,UAAkB,EAClB,QAAkB,EAClB,OAAe;;QAEf,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAA,eAAM,EAAC;gBAC1B,KAAK,EAAE,UAAU;gBACjB,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;oBAClB,cAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC1B,CAAC;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE;oBACN,QAAQ,EAAE;oBACV,IAAA,wCAAS,EAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;oBAChC,IAAA,6BAAO,GAAE;oBACT,OAAO,CAAC;wBACN,iBAAiB,EAAE,IAAI;wBACvB,MAAM,EAAE;4BACN,sBAAsB,EAAE,eAAe;yBACxC;qBACF,CAAC;oBACF,IAAA,6BAAM,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;iBACvD;aACF,CAAC,CAAC;YAEH,MAAM,MAAM,CAAC,KAAK,CAAC;gBACjB,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,OAAO;aACjB,CAAC,CAAC;SACJ;QAAC,OAAO,CAAC,EAAE;YACV,cAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC7B,MAAM,CAAC,CAAC;SACT;IACH,CAAC;CAAA;AArCD,8BAqCC"}
|