@teambit/webpack 0.0.881 → 0.0.882
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/config/html.js +2 -2
- package/dist/config/html.js.map +1 -1
- package/dist/config/webpack-fallbacks-aliases.js.map +1 -1
- package/dist/config/webpack-fallbacks-provide-plugin-config.js.map +1 -1
- package/dist/config/webpack-fallbacks.js +7 -28
- package/dist/config/webpack-fallbacks.js.map +1 -1
- package/dist/config/webpack.config.js +1 -45
- package/dist/config/webpack.config.js.map +1 -1
- package/dist/config/webpack.dev.config.js +14 -58
- package/dist/config/webpack.dev.config.js.map +1 -1
- package/dist/events/index.js +0 -4
- package/dist/events/index.js.map +1 -1
- package/dist/events/webpack-compilation-done-event.js +1 -12
- package/dist/events/webpack-compilation-done-event.js.map +1 -1
- package/dist/events/webpack-compilation-started-event.js +1 -10
- package/dist/events/webpack-compilation-started-event.js.map +1 -1
- package/dist/index.js +0 -35
- package/dist/index.js.map +1 -1
- package/dist/plugins/webpack-bit-reporter-plugin.js +4 -16
- package/dist/plugins/webpack-bit-reporter-plugin.js.map +1 -1
- package/dist/transformers/get-exposed-rules.js +0 -18
- package/dist/transformers/get-exposed-rules.js.map +1 -1
- package/dist/transformers/get-externals.js +0 -10
- package/dist/transformers/get-externals.js.map +1 -1
- package/dist/transformers/index.js +0 -9
- package/dist/transformers/index.js.map +1 -1
- package/dist/transformers/inject-body.js +0 -5
- package/dist/transformers/inject-body.js.map +1 -1
- package/dist/transformers/inject-head.js +0 -4
- package/dist/transformers/inject-head.js.map +1 -1
- package/dist/transformers/resolve-peer.js +2 -22
- package/dist/transformers/resolve-peer.js.map +1 -1
- package/dist/transformers/transformers.js +5 -20
- package/dist/transformers/transformers.js.map +1 -1
- package/dist/webpack.aspect.js +0 -5
- package/dist/webpack.aspect.js.map +1 -1
- package/dist/webpack.bundler.js +2 -33
- package/dist/webpack.bundler.js.map +1 -1
- package/dist/webpack.composition.js +0 -6
- package/dist/webpack.composition.js.map +1 -1
- package/dist/webpack.dev-server.js +8 -25
- package/dist/webpack.dev-server.js.map +1 -1
- package/dist/webpack.main.runtime.js +9 -74
- package/dist/webpack.main.runtime.js.map +1 -1
- package/package-tar/teambit-webpack-0.0.882.tgz +0 -0
- package/package.json +5 -5
- package/{preview-1666409808293.js → preview-1666496165706.js} +2 -2
- package/package-tar/teambit-webpack-0.0.881.tgz +0 -0
|
@@ -1,44 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
require("core-js/modules/es.promise.js");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.WebpackDevServer = void 0;
|
|
11
|
-
|
|
12
9
|
function _defineProperty2() {
|
|
13
10
|
const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
|
-
|
|
15
11
|
_defineProperty2 = function () {
|
|
16
12
|
return data;
|
|
17
13
|
};
|
|
18
|
-
|
|
19
14
|
return data;
|
|
20
15
|
}
|
|
21
|
-
|
|
22
16
|
function _util() {
|
|
23
17
|
const data = require("util");
|
|
24
|
-
|
|
25
18
|
_util = function () {
|
|
26
19
|
return data;
|
|
27
20
|
};
|
|
28
|
-
|
|
29
21
|
return data;
|
|
30
22
|
}
|
|
31
|
-
|
|
32
23
|
function _webpack() {
|
|
33
24
|
const data = require("./webpack.aspect");
|
|
34
|
-
|
|
35
25
|
_webpack = function () {
|
|
36
26
|
return data;
|
|
37
27
|
};
|
|
38
|
-
|
|
39
28
|
return data;
|
|
40
29
|
}
|
|
41
|
-
|
|
42
30
|
class WebpackDevServer {
|
|
43
31
|
constructor(config, webpack, WsDevServer) {
|
|
44
32
|
this.config = config;
|
|
@@ -47,39 +35,36 @@ class WebpackDevServer {
|
|
|
47
35
|
(0, _defineProperty2().default)(this, "id", _webpack().WebpackAspect.id);
|
|
48
36
|
(0, _defineProperty2().default)(this, "displayName", 'Webpack dev server');
|
|
49
37
|
}
|
|
50
|
-
|
|
51
38
|
getCompiler() {
|
|
52
39
|
return this.webpack(this.config);
|
|
53
40
|
}
|
|
54
|
-
|
|
55
41
|
displayConfig() {
|
|
56
42
|
return (0, _util().inspect)(this.config, {
|
|
57
43
|
depth: 10
|
|
58
44
|
});
|
|
59
45
|
}
|
|
60
|
-
|
|
61
46
|
async listen(port) {
|
|
62
47
|
if (!this.config.devServer) {
|
|
63
48
|
throw new Error('Missing devServer configuration for webpack');
|
|
64
|
-
}
|
|
65
|
-
|
|
49
|
+
}
|
|
50
|
+
// Prevent different port between the config port and the listen arg port
|
|
51
|
+
this.config.devServer.port = port;
|
|
66
52
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
this.addSignalListener(); // Compatibility check for Webpack dev server v3 (e.g. for Angular v8)
|
|
53
|
+
// Adding signal listeners to make sure we immediately close the process on sigint / sigterm (otherwise webpack dev server closing will take time)
|
|
54
|
+
this.addSignalListener();
|
|
70
55
|
|
|
56
|
+
// Compatibility check for Webpack dev server v3 (e.g. for Angular v8)
|
|
71
57
|
if (typeof this.WsDevServer.addDevServerEntrypoints !== 'undefined') {
|
|
72
58
|
// @ts-ignore in the capsules it throws an error about compatibilities issues between webpack.compiler and webpackDevServer/webpack/compiler
|
|
73
59
|
const webpackDs = new this.WsDevServer(this.getCompiler(), this.config.devServer);
|
|
74
60
|
return webpackDs.listen(port);
|
|
75
|
-
}
|
|
76
|
-
|
|
61
|
+
}
|
|
77
62
|
|
|
63
|
+
// @ts-ignore in the capsules it throws an error about compatibilities issues between webpack.compiler and webpackDevServer/webpack/compiler
|
|
78
64
|
const webpackDs = new this.WsDevServer(this.config.devServer, this.getCompiler());
|
|
79
65
|
await webpackDs.start();
|
|
80
66
|
return webpackDs.server;
|
|
81
67
|
}
|
|
82
|
-
|
|
83
68
|
addSignalListener() {
|
|
84
69
|
process.on('SIGTERM', () => {
|
|
85
70
|
process.exit();
|
|
@@ -88,9 +73,7 @@ class WebpackDevServer {
|
|
|
88
73
|
process.exit();
|
|
89
74
|
});
|
|
90
75
|
}
|
|
91
|
-
|
|
92
76
|
}
|
|
93
|
-
|
|
94
77
|
exports.WebpackDevServer = WebpackDevServer;
|
|
95
78
|
|
|
96
79
|
//# sourceMappingURL=webpack.dev-server.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["WebpackDevServer","constructor","config","webpack","WsDevServer","WebpackAspect","id","getCompiler","displayConfig","inspect","depth","listen","port","devServer","Error","addSignalListener","addDevServerEntrypoints","webpackDs","start","server","process","on","exit"],"sources":["webpack.dev-server.ts"],"sourcesContent":["import type { DevServer } from '@teambit/bundler';\nimport type { Server } from 'http';\nimport type { webpack as webpackCompiler, Configuration } from 'webpack';\nimport type * as WDS from 'webpack-dev-server';\nimport { inspect } from 'util';\nimport { WebpackAspect } from './webpack.aspect';\n\nexport interface WebpackConfigWithDevServer extends Configuration {\n devServer: WDS.Configuration;\n favicon?: string;\n}\nexport class WebpackDevServer implements DevServer {\n constructor(\n private config: WebpackConfigWithDevServer,\n private webpack: typeof webpackCompiler,\n private WsDevServer: WDS\n ) {}\n\n private getCompiler(): any {\n return this.webpack(this.config);\n }\n\n id = WebpackAspect.id;\n\n displayName = 'Webpack dev server';\n\n displayConfig(): string {\n return inspect(this.config, { depth: 10 });\n }\n\n async listen(port: number): Promise<Server> {\n if (!this.config.devServer) {\n throw new Error('Missing devServer configuration for webpack');\n }\n // Prevent different port between the config port and the listen arg port\n this.config.devServer.port = port;\n\n // Adding signal listeners to make sure we immediately close the process on sigint / sigterm (otherwise webpack dev server closing will take time)\n this.addSignalListener();\n\n // Compatibility check for Webpack dev server v3 (e.g. for Angular v8)\n if (typeof (this.WsDevServer as any).addDevServerEntrypoints !== 'undefined') {\n // @ts-ignore in the capsules it throws an error about compatibilities issues between webpack.compiler and webpackDevServer/webpack/compiler\n const webpackDs = new (this.WsDevServer as any)(this.getCompiler(), this.config.devServer);\n return webpackDs.listen(port);\n }\n\n // @ts-ignore in the capsules it throws an error about compatibilities issues between webpack.compiler and webpackDevServer/webpack/compiler\n const webpackDs: WDS = new this.WsDevServer(this.config.devServer, this.getCompiler());\n await webpackDs.start();\n\n return webpackDs.server;\n }\n\n private addSignalListener() {\n process.on('SIGTERM', () => {\n process.exit();\n });\n\n process.on('SIGINT', () => {\n process.exit();\n });\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["WebpackDevServer","constructor","config","webpack","WsDevServer","WebpackAspect","id","getCompiler","displayConfig","inspect","depth","listen","port","devServer","Error","addSignalListener","addDevServerEntrypoints","webpackDs","start","server","process","on","exit"],"sources":["webpack.dev-server.ts"],"sourcesContent":["import type { DevServer } from '@teambit/bundler';\nimport type { Server } from 'http';\nimport type { webpack as webpackCompiler, Configuration } from 'webpack';\nimport type * as WDS from 'webpack-dev-server';\nimport { inspect } from 'util';\nimport { WebpackAspect } from './webpack.aspect';\n\nexport interface WebpackConfigWithDevServer extends Configuration {\n devServer: WDS.Configuration;\n favicon?: string;\n}\nexport class WebpackDevServer implements DevServer {\n constructor(\n private config: WebpackConfigWithDevServer,\n private webpack: typeof webpackCompiler,\n private WsDevServer: WDS\n ) {}\n\n private getCompiler(): any {\n return this.webpack(this.config);\n }\n\n id = WebpackAspect.id;\n\n displayName = 'Webpack dev server';\n\n displayConfig(): string {\n return inspect(this.config, { depth: 10 });\n }\n\n async listen(port: number): Promise<Server> {\n if (!this.config.devServer) {\n throw new Error('Missing devServer configuration for webpack');\n }\n // Prevent different port between the config port and the listen arg port\n this.config.devServer.port = port;\n\n // Adding signal listeners to make sure we immediately close the process on sigint / sigterm (otherwise webpack dev server closing will take time)\n this.addSignalListener();\n\n // Compatibility check for Webpack dev server v3 (e.g. for Angular v8)\n if (typeof (this.WsDevServer as any).addDevServerEntrypoints !== 'undefined') {\n // @ts-ignore in the capsules it throws an error about compatibilities issues between webpack.compiler and webpackDevServer/webpack/compiler\n const webpackDs = new (this.WsDevServer as any)(this.getCompiler(), this.config.devServer);\n return webpackDs.listen(port);\n }\n\n // @ts-ignore in the capsules it throws an error about compatibilities issues between webpack.compiler and webpackDevServer/webpack/compiler\n const webpackDs: WDS = new this.WsDevServer(this.config.devServer, this.getCompiler());\n await webpackDs.start();\n\n return webpackDs.server;\n }\n\n private addSignalListener() {\n process.on('SIGTERM', () => {\n process.exit();\n });\n\n process.on('SIGINT', () => {\n process.exit();\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAIA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAMO,MAAMA,gBAAgB,CAAsB;EACjDC,WAAW,CACDC,MAAkC,EAClCC,OAA+B,EAC/BC,WAAgB,EACxB;IAAA,KAHQF,MAAkC,GAAlCA,MAAkC;IAAA,KAClCC,OAA+B,GAA/BA,OAA+B;IAAA,KAC/BC,WAAgB,GAAhBA,WAAgB;IAAA,4CAOrBC,wBAAa,CAACC,EAAE;IAAA,qDAEP,oBAAoB;EAR/B;EAEKC,WAAW,GAAQ;IACzB,OAAO,IAAI,CAACJ,OAAO,CAAC,IAAI,CAACD,MAAM,CAAC;EAClC;EAMAM,aAAa,GAAW;IACtB,OAAO,IAAAC,eAAO,EAAC,IAAI,CAACP,MAAM,EAAE;MAAEQ,KAAK,EAAE;IAAG,CAAC,CAAC;EAC5C;EAEA,MAAMC,MAAM,CAACC,IAAY,EAAmB;IAC1C,IAAI,CAAC,IAAI,CAACV,MAAM,CAACW,SAAS,EAAE;MAC1B,MAAM,IAAIC,KAAK,CAAC,6CAA6C,CAAC;IAChE;IACA;IACA,IAAI,CAACZ,MAAM,CAACW,SAAS,CAACD,IAAI,GAAGA,IAAI;;IAEjC;IACA,IAAI,CAACG,iBAAiB,EAAE;;IAExB;IACA,IAAI,OAAQ,IAAI,CAACX,WAAW,CAASY,uBAAuB,KAAK,WAAW,EAAE;MAC5E;MACA,MAAMC,SAAS,GAAG,IAAK,IAAI,CAACb,WAAW,CAAS,IAAI,CAACG,WAAW,EAAE,EAAE,IAAI,CAACL,MAAM,CAACW,SAAS,CAAC;MAC1F,OAAOI,SAAS,CAACN,MAAM,CAACC,IAAI,CAAC;IAC/B;;IAEA;IACA,MAAMK,SAAc,GAAG,IAAI,IAAI,CAACb,WAAW,CAAC,IAAI,CAACF,MAAM,CAACW,SAAS,EAAE,IAAI,CAACN,WAAW,EAAE,CAAC;IACtF,MAAMU,SAAS,CAACC,KAAK,EAAE;IAEvB,OAAOD,SAAS,CAACE,MAAM;EACzB;EAEQJ,iBAAiB,GAAG;IAC1BK,OAAO,CAACC,EAAE,CAAC,SAAS,EAAE,MAAM;MAC1BD,OAAO,CAACE,IAAI,EAAE;IAChB,CAAC,CAAC;IAEFF,OAAO,CAACC,EAAE,CAAC,QAAQ,EAAE,MAAM;MACzBD,OAAO,CAACE,IAAI,EAAE;IAChB,CAAC,CAAC;EACJ;AACF;AAAC"}
|
|
@@ -1,177 +1,125 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
require("core-js/modules/es.array.iterator.js");
|
|
6
|
-
|
|
7
5
|
require("core-js/modules/es.promise.js");
|
|
8
|
-
|
|
9
6
|
Object.defineProperty(exports, "__esModule", {
|
|
10
7
|
value: true
|
|
11
8
|
});
|
|
12
9
|
exports.WebpackMain = void 0;
|
|
13
10
|
exports.runTransformersWithContext = runTransformersWithContext;
|
|
14
|
-
|
|
15
11
|
function _defineProperty2() {
|
|
16
12
|
const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
|
-
|
|
18
13
|
_defineProperty2 = function () {
|
|
19
14
|
return data;
|
|
20
15
|
};
|
|
21
|
-
|
|
22
16
|
return data;
|
|
23
17
|
}
|
|
24
|
-
|
|
25
18
|
function _webpack() {
|
|
26
19
|
const data = _interopRequireDefault(require("webpack"));
|
|
27
|
-
|
|
28
20
|
_webpack = function () {
|
|
29
21
|
return data;
|
|
30
22
|
};
|
|
31
|
-
|
|
32
23
|
return data;
|
|
33
24
|
}
|
|
34
|
-
|
|
35
25
|
function _pubsub() {
|
|
36
26
|
const data = _interopRequireDefault(require("@teambit/pubsub"));
|
|
37
|
-
|
|
38
27
|
_pubsub = function () {
|
|
39
28
|
return data;
|
|
40
29
|
};
|
|
41
|
-
|
|
42
30
|
return data;
|
|
43
31
|
}
|
|
44
|
-
|
|
45
32
|
function _bundler() {
|
|
46
33
|
const data = require("@teambit/bundler");
|
|
47
|
-
|
|
48
34
|
_bundler = function () {
|
|
49
35
|
return data;
|
|
50
36
|
};
|
|
51
|
-
|
|
52
37
|
return data;
|
|
53
38
|
}
|
|
54
|
-
|
|
55
39
|
function _cli() {
|
|
56
40
|
const data = require("@teambit/cli");
|
|
57
|
-
|
|
58
41
|
_cli = function () {
|
|
59
42
|
return data;
|
|
60
43
|
};
|
|
61
|
-
|
|
62
44
|
return data;
|
|
63
45
|
}
|
|
64
|
-
|
|
65
46
|
function _logger() {
|
|
66
47
|
const data = require("@teambit/logger");
|
|
67
|
-
|
|
68
48
|
_logger = function () {
|
|
69
49
|
return data;
|
|
70
50
|
};
|
|
71
|
-
|
|
72
51
|
return data;
|
|
73
52
|
}
|
|
74
|
-
|
|
75
53
|
function _workspace() {
|
|
76
54
|
const data = require("@teambit/workspace");
|
|
77
|
-
|
|
78
55
|
_workspace = function () {
|
|
79
56
|
return data;
|
|
80
57
|
};
|
|
81
|
-
|
|
82
58
|
return data;
|
|
83
59
|
}
|
|
84
|
-
|
|
85
60
|
function _webpackMerge() {
|
|
86
61
|
const data = require("webpack-merge");
|
|
87
|
-
|
|
88
62
|
_webpackMerge = function () {
|
|
89
63
|
return data;
|
|
90
64
|
};
|
|
91
|
-
|
|
92
65
|
return data;
|
|
93
66
|
}
|
|
94
|
-
|
|
95
67
|
function _webpackDevServer() {
|
|
96
68
|
const data = _interopRequireDefault(require("webpack-dev-server"));
|
|
97
|
-
|
|
98
69
|
_webpackDevServer = function () {
|
|
99
70
|
return data;
|
|
100
71
|
};
|
|
101
|
-
|
|
102
72
|
return data;
|
|
103
73
|
}
|
|
104
|
-
|
|
105
74
|
function _webpackModules() {
|
|
106
75
|
const data = require("@teambit/webpack.modules.config-mutator");
|
|
107
|
-
|
|
108
76
|
_webpackModules = function () {
|
|
109
77
|
return data;
|
|
110
78
|
};
|
|
111
|
-
|
|
112
79
|
return data;
|
|
113
80
|
}
|
|
114
|
-
|
|
115
81
|
function _transformers() {
|
|
116
82
|
const data = require("./transformers");
|
|
117
|
-
|
|
118
83
|
_transformers = function () {
|
|
119
84
|
return data;
|
|
120
85
|
};
|
|
121
|
-
|
|
122
86
|
return data;
|
|
123
87
|
}
|
|
124
|
-
|
|
125
88
|
function _webpackDev() {
|
|
126
89
|
const data = require("./config/webpack.dev.config");
|
|
127
|
-
|
|
128
90
|
_webpackDev = function () {
|
|
129
91
|
return data;
|
|
130
92
|
};
|
|
131
|
-
|
|
132
93
|
return data;
|
|
133
94
|
}
|
|
134
|
-
|
|
135
95
|
function _webpack2() {
|
|
136
96
|
const data = require("./config/webpack.config");
|
|
137
|
-
|
|
138
97
|
_webpack2 = function () {
|
|
139
98
|
return data;
|
|
140
99
|
};
|
|
141
|
-
|
|
142
100
|
return data;
|
|
143
101
|
}
|
|
144
|
-
|
|
145
102
|
function _webpack3() {
|
|
146
103
|
const data = require("./webpack.aspect");
|
|
147
|
-
|
|
148
104
|
_webpack3 = function () {
|
|
149
105
|
return data;
|
|
150
106
|
};
|
|
151
|
-
|
|
152
107
|
return data;
|
|
153
108
|
}
|
|
154
|
-
|
|
155
109
|
function _webpack4() {
|
|
156
110
|
const data = require("./webpack.bundler");
|
|
157
|
-
|
|
158
111
|
_webpack4 = function () {
|
|
159
112
|
return data;
|
|
160
113
|
};
|
|
161
|
-
|
|
162
114
|
return data;
|
|
163
115
|
}
|
|
164
|
-
|
|
165
116
|
function _webpack5() {
|
|
166
117
|
const data = require("./webpack.dev-server");
|
|
167
|
-
|
|
168
118
|
_webpack5 = function () {
|
|
169
119
|
return data;
|
|
170
120
|
};
|
|
171
|
-
|
|
172
121
|
return data;
|
|
173
122
|
}
|
|
174
|
-
|
|
175
123
|
class WebpackMain {
|
|
176
124
|
constructor(
|
|
177
125
|
/**
|
|
@@ -195,11 +143,10 @@ class WebpackMain {
|
|
|
195
143
|
this.bundler = bundler;
|
|
196
144
|
this.logger = logger;
|
|
197
145
|
}
|
|
146
|
+
|
|
198
147
|
/**
|
|
199
148
|
* create an instance of bit-compliant webpack dev server for a set of components
|
|
200
149
|
*/
|
|
201
|
-
|
|
202
|
-
|
|
203
150
|
createDevServer(context, transformers = []) {
|
|
204
151
|
const config = this.createDevServerConfig(context.entry, this.workspace.path, context.id, context.rootPath, context.publicPath, context.title);
|
|
205
152
|
const configMutator = new (_webpackModules().WebpackConfigMutator)(config);
|
|
@@ -207,24 +154,21 @@ class WebpackMain {
|
|
|
207
154
|
mode: 'dev'
|
|
208
155
|
});
|
|
209
156
|
const internalTransformers = this.generateTransformers(undefined, transformerContext);
|
|
210
|
-
const afterMutation = runTransformersWithContext(configMutator.clone(), [...internalTransformers, ...transformers], transformerContext);
|
|
211
|
-
|
|
157
|
+
const afterMutation = runTransformersWithContext(configMutator.clone(), [...internalTransformers, ...transformers], transformerContext);
|
|
158
|
+
// @ts-ignore - fix this
|
|
212
159
|
return new (_webpack5().WebpackDevServer)(afterMutation.raw, _webpack().default, _webpackDevServer().default);
|
|
213
160
|
}
|
|
214
|
-
|
|
215
161
|
mergeConfig(target, source) {
|
|
216
162
|
return (0, _webpackMerge().merge)(target, source);
|
|
217
163
|
}
|
|
218
|
-
|
|
219
164
|
createBundler(context, transformers = [], initialConfigs, webpackInstance) {
|
|
220
165
|
const transformerContext = {
|
|
221
166
|
mode: 'prod'
|
|
222
|
-
};
|
|
223
|
-
|
|
167
|
+
};
|
|
168
|
+
// eslint-disable-next-line max-len
|
|
224
169
|
const configs = initialConfigs || this.createConfigs(context.targets, _webpack2().configFactory, transformers, transformerContext, context);
|
|
225
170
|
return new (_webpack4().WebpackBundler)(context.targets, configs, this.logger, webpackInstance || _webpack().default, context.metaData);
|
|
226
171
|
}
|
|
227
|
-
|
|
228
172
|
createConfigs(targets, factory, transformers = [], transformerContext, bundlerContext) {
|
|
229
173
|
return targets.map(target => {
|
|
230
174
|
const baseConfig = factory(target, bundlerContext);
|
|
@@ -237,46 +181,37 @@ class WebpackMain {
|
|
|
237
181
|
return afterMutation.raw;
|
|
238
182
|
});
|
|
239
183
|
}
|
|
240
|
-
|
|
241
184
|
generateTransformers(_bundlerContext, devServerContext, target) {
|
|
242
|
-
const transformers = [];
|
|
243
|
-
|
|
185
|
+
const transformers = [];
|
|
186
|
+
// TODO: handle dev server
|
|
244
187
|
const hostDeps = (target === null || target === void 0 ? void 0 : target.hostDependencies) || (devServerContext === null || devServerContext === void 0 ? void 0 : devServerContext.hostDependencies);
|
|
245
|
-
|
|
246
188
|
if (hostDeps) {
|
|
247
189
|
if (target !== null && target !== void 0 && target.aliasHostDependencies || devServerContext !== null && devServerContext !== void 0 && devServerContext.aliasHostDependencies) {
|
|
248
190
|
const peerAliasesTransformer = (0, _transformers().generateAddAliasesFromPeersTransformer)(hostDeps, this.logger);
|
|
249
191
|
transformers.push(peerAliasesTransformer);
|
|
250
192
|
}
|
|
251
|
-
|
|
252
193
|
if (target !== null && target !== void 0 && target.externalizeHostDependencies || devServerContext !== null && devServerContext !== void 0 && devServerContext.externalizeHostDependencies) {
|
|
253
194
|
const externalsTransformer = (0, _transformers().generateExternalsTransformer)(hostDeps);
|
|
254
195
|
transformers.push(externalsTransformer);
|
|
255
196
|
}
|
|
256
197
|
}
|
|
257
|
-
|
|
258
198
|
return transformers;
|
|
259
199
|
}
|
|
260
|
-
|
|
261
200
|
createDevServerConfig(entry, rootPath, devServerID, publicRoot, publicPath, title) {
|
|
262
201
|
return (0, _webpackDev().configFactory)(devServerID, rootPath, entry, publicRoot, publicPath, this.pubsub, title);
|
|
263
202
|
}
|
|
264
|
-
|
|
265
203
|
static async provider([pubsub, workspace, bundler, logger]) {
|
|
266
204
|
const logPublisher = logger.createLogger(_webpack3().WebpackAspect.id);
|
|
267
205
|
return new WebpackMain(pubsub, workspace, bundler, logPublisher);
|
|
268
206
|
}
|
|
269
|
-
|
|
270
207
|
}
|
|
271
|
-
|
|
272
208
|
exports.WebpackMain = WebpackMain;
|
|
273
209
|
(0, _defineProperty2().default)(WebpackMain, "slots", []);
|
|
274
210
|
(0, _defineProperty2().default)(WebpackMain, "runtime", _cli().MainRuntime);
|
|
275
211
|
(0, _defineProperty2().default)(WebpackMain, "dependencies", [_pubsub().default, _workspace().WorkspaceAspect, _bundler().BundlerAspect, _logger().LoggerAspect]);
|
|
276
|
-
|
|
277
212
|
_webpack3().WebpackAspect.addRuntime(WebpackMain);
|
|
278
|
-
|
|
279
|
-
|
|
213
|
+
function runTransformersWithContext(config, transformers = [],
|
|
214
|
+
// context: WebpackConfigTransformContext | WebpackConfigDevServerTransformContext
|
|
280
215
|
context) {
|
|
281
216
|
if (!Array.isArray(transformers)) return config;
|
|
282
217
|
const newConfig = transformers.reduce((acc, transformer) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["WebpackMain","constructor","pubsub","workspace","bundler","logger","createDevServer","context","transformers","config","createDevServerConfig","entry","path","id","rootPath","publicPath","title","configMutator","WebpackConfigMutator","transformerContext","Object","assign","mode","internalTransformers","generateTransformers","undefined","afterMutation","runTransformersWithContext","clone","WebpackDevServer","raw","webpack","WsDevServer","mergeConfig","target","source","merge","createBundler","initialConfigs","webpackInstance","configs","createConfigs","targets","baseConfigFactory","WebpackBundler","metaData","factory","bundlerContext","map","baseConfig","_bundlerContext","devServerContext","hostDeps","hostDependencies","aliasHostDependencies","peerAliasesTransformer","generateAddAliasesFromPeersTransformer","push","externalizeHostDependencies","externalsTransformer","generateExternalsTransformer","devServerID","publicRoot","devServerConfigFactory","provider","logPublisher","createLogger","WebpackAspect","MainRuntime","PubsubAspect","WorkspaceAspect","BundlerAspect","LoggerAspect","addRuntime","Array","isArray","newConfig","reduce","acc","transformer"],"sources":["webpack.main.runtime.ts"],"sourcesContent":["import webpack, { Configuration } from 'webpack';\nimport PubsubAspect, { PubsubMain } from '@teambit/pubsub';\nimport {\n BundlerAspect,\n BundlerContext,\n BundlerMain,\n DevServer,\n DevServerContext,\n BundlerMode,\n Target,\n} from '@teambit/bundler';\nimport { MainRuntime } from '@teambit/cli';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { Workspace, WorkspaceAspect } from '@teambit/workspace';\nimport { merge } from 'webpack-merge';\nimport WsDevServer from 'webpack-dev-server';\nimport { WebpackConfigMutator } from '@teambit/webpack.modules.config-mutator';\n\nimport { generateAddAliasesFromPeersTransformer, generateExternalsTransformer } from './transformers';\nimport { configFactory as devServerConfigFactory } from './config/webpack.dev.config';\nimport { configFactory as baseConfigFactory } from './config/webpack.config';\n\nimport { WebpackAspect } from './webpack.aspect';\nimport { WebpackBundler } from './webpack.bundler';\nimport { WebpackDevServer } from './webpack.dev-server';\n\nexport type WebpackConfigTransformContext = GlobalWebpackConfigTransformContext & {\n target: Target;\n};\n\nexport type WebpackConfigDevServerTransformContext = GlobalWebpackConfigTransformContext & DevServerContext;\n\nexport type GlobalWebpackConfigTransformContext = {\n mode: BundlerMode;\n /**\n * A path for the host root dir\n * Host root dir is usually the env root dir\n * This can be used in different bundle options which run require.resolve\n * for example when configuring webpack aliases or webpack expose loader on the peers deps\n */\n hostRootDir?: string;\n};\n\nexport type WebpackConfigTransformer = (\n config: WebpackConfigMutator,\n context: WebpackConfigTransformContext\n) => WebpackConfigMutator;\n\nexport type WebpackConfigDevServerTransformer = (\n config: WebpackConfigMutator,\n context: WebpackConfigDevServerTransformContext\n) => WebpackConfigMutator;\n\nexport class WebpackMain {\n constructor(\n /**\n * Pubsub extension.\n */\n public pubsub: PubsubMain,\n\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * bundler extension.\n */\n private bundler: BundlerMain,\n\n /**\n * Logger extension\n */\n public logger: Logger\n ) {}\n\n /**\n * create an instance of bit-compliant webpack dev server for a set of components\n */\n createDevServer(context: DevServerContext, transformers: WebpackConfigTransformer[] = []): DevServer {\n const config = this.createDevServerConfig(\n context.entry,\n this.workspace.path,\n context.id,\n context.rootPath,\n context.publicPath,\n context.title\n ) as any;\n const configMutator = new WebpackConfigMutator(config);\n const transformerContext: WebpackConfigDevServerTransformContext = Object.assign(context, { mode: 'dev' as const });\n const internalTransformers = this.generateTransformers(undefined, transformerContext);\n\n const afterMutation = runTransformersWithContext(\n configMutator.clone(),\n [...internalTransformers, ...transformers],\n transformerContext\n );\n // @ts-ignore - fix this\n return new WebpackDevServer(afterMutation.raw, webpack, WsDevServer);\n }\n\n mergeConfig(target: any, source: any): any {\n return merge(target, source);\n }\n\n createBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n initialConfigs?: webpack.Configuration[],\n webpackInstance?: any\n ) {\n const transformerContext: GlobalWebpackConfigTransformContext = { mode: 'prod' };\n // eslint-disable-next-line max-len\n const configs =\n initialConfigs ||\n this.createConfigs(context.targets, baseConfigFactory, transformers, transformerContext, context);\n return new WebpackBundler(context.targets, configs, this.logger, webpackInstance || webpack, context.metaData);\n }\n\n private createConfigs(\n targets: Target[],\n factory: (target: Target, context: BundlerContext) => Configuration,\n transformers: WebpackConfigTransformer[] = [],\n transformerContext: GlobalWebpackConfigTransformContext,\n bundlerContext: BundlerContext\n ) {\n return targets.map((target) => {\n const baseConfig = factory(target, bundlerContext);\n const configMutator = new WebpackConfigMutator(baseConfig);\n const context = Object.assign({}, transformerContext, { target });\n const internalTransformers = this.generateTransformers(context, undefined, target);\n const afterMutation = runTransformersWithContext(\n configMutator.clone(),\n [...internalTransformers, ...transformers],\n context\n );\n return afterMutation.raw;\n });\n }\n\n private generateTransformers(\n _bundlerContext?: WebpackConfigTransformContext,\n devServerContext?: WebpackConfigDevServerTransformContext,\n target?: Target\n ): Array<WebpackConfigTransformer> {\n const transformers: WebpackConfigTransformer[] = [];\n // TODO: handle dev server\n const hostDeps = target?.hostDependencies || devServerContext?.hostDependencies;\n if (hostDeps) {\n if (target?.aliasHostDependencies || devServerContext?.aliasHostDependencies) {\n const peerAliasesTransformer = generateAddAliasesFromPeersTransformer(hostDeps, this.logger);\n transformers.push(peerAliasesTransformer);\n }\n if (target?.externalizeHostDependencies || devServerContext?.externalizeHostDependencies) {\n const externalsTransformer = generateExternalsTransformer(hostDeps);\n transformers.push(externalsTransformer);\n }\n }\n return transformers;\n }\n\n private createDevServerConfig(\n entry: string[],\n rootPath: string,\n devServerID: string,\n publicRoot: string,\n publicPath: string,\n title?: string\n ) {\n return devServerConfigFactory(devServerID, rootPath, entry, publicRoot, publicPath, this.pubsub, title);\n }\n\n static slots = [];\n\n static runtime = MainRuntime;\n static dependencies = [PubsubAspect, WorkspaceAspect, BundlerAspect, LoggerAspect];\n\n static async provider([pubsub, workspace, bundler, logger]: [PubsubMain, Workspace, BundlerMain, LoggerMain]) {\n const logPublisher = logger.createLogger(WebpackAspect.id);\n return new WebpackMain(pubsub, workspace, bundler, logPublisher);\n }\n}\n\nWebpackAspect.addRuntime(WebpackMain);\n\nexport function runTransformersWithContext(\n config: WebpackConfigMutator,\n transformers: Array<WebpackConfigTransformer | WebpackConfigDevServerTransformer> = [],\n // context: WebpackConfigTransformContext | WebpackConfigDevServerTransformContext\n context: any\n): WebpackConfigMutator {\n if (!Array.isArray(transformers)) return config;\n const newConfig = transformers.reduce((acc, transformer) => {\n // @ts-ignore\n return transformer(acc, context);\n }, config);\n return newConfig;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["WebpackMain","constructor","pubsub","workspace","bundler","logger","createDevServer","context","transformers","config","createDevServerConfig","entry","path","id","rootPath","publicPath","title","configMutator","WebpackConfigMutator","transformerContext","Object","assign","mode","internalTransformers","generateTransformers","undefined","afterMutation","runTransformersWithContext","clone","WebpackDevServer","raw","webpack","WsDevServer","mergeConfig","target","source","merge","createBundler","initialConfigs","webpackInstance","configs","createConfigs","targets","baseConfigFactory","WebpackBundler","metaData","factory","bundlerContext","map","baseConfig","_bundlerContext","devServerContext","hostDeps","hostDependencies","aliasHostDependencies","peerAliasesTransformer","generateAddAliasesFromPeersTransformer","push","externalizeHostDependencies","externalsTransformer","generateExternalsTransformer","devServerID","publicRoot","devServerConfigFactory","provider","logPublisher","createLogger","WebpackAspect","MainRuntime","PubsubAspect","WorkspaceAspect","BundlerAspect","LoggerAspect","addRuntime","Array","isArray","newConfig","reduce","acc","transformer"],"sources":["webpack.main.runtime.ts"],"sourcesContent":["import webpack, { Configuration } from 'webpack';\nimport PubsubAspect, { PubsubMain } from '@teambit/pubsub';\nimport {\n BundlerAspect,\n BundlerContext,\n BundlerMain,\n DevServer,\n DevServerContext,\n BundlerMode,\n Target,\n} from '@teambit/bundler';\nimport { MainRuntime } from '@teambit/cli';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { Workspace, WorkspaceAspect } from '@teambit/workspace';\nimport { merge } from 'webpack-merge';\nimport WsDevServer from 'webpack-dev-server';\nimport { WebpackConfigMutator } from '@teambit/webpack.modules.config-mutator';\n\nimport { generateAddAliasesFromPeersTransformer, generateExternalsTransformer } from './transformers';\nimport { configFactory as devServerConfigFactory } from './config/webpack.dev.config';\nimport { configFactory as baseConfigFactory } from './config/webpack.config';\n\nimport { WebpackAspect } from './webpack.aspect';\nimport { WebpackBundler } from './webpack.bundler';\nimport { WebpackDevServer } from './webpack.dev-server';\n\nexport type WebpackConfigTransformContext = GlobalWebpackConfigTransformContext & {\n target: Target;\n};\n\nexport type WebpackConfigDevServerTransformContext = GlobalWebpackConfigTransformContext & DevServerContext;\n\nexport type GlobalWebpackConfigTransformContext = {\n mode: BundlerMode;\n /**\n * A path for the host root dir\n * Host root dir is usually the env root dir\n * This can be used in different bundle options which run require.resolve\n * for example when configuring webpack aliases or webpack expose loader on the peers deps\n */\n hostRootDir?: string;\n};\n\nexport type WebpackConfigTransformer = (\n config: WebpackConfigMutator,\n context: WebpackConfigTransformContext\n) => WebpackConfigMutator;\n\nexport type WebpackConfigDevServerTransformer = (\n config: WebpackConfigMutator,\n context: WebpackConfigDevServerTransformContext\n) => WebpackConfigMutator;\n\nexport class WebpackMain {\n constructor(\n /**\n * Pubsub extension.\n */\n public pubsub: PubsubMain,\n\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * bundler extension.\n */\n private bundler: BundlerMain,\n\n /**\n * Logger extension\n */\n public logger: Logger\n ) {}\n\n /**\n * create an instance of bit-compliant webpack dev server for a set of components\n */\n createDevServer(context: DevServerContext, transformers: WebpackConfigTransformer[] = []): DevServer {\n const config = this.createDevServerConfig(\n context.entry,\n this.workspace.path,\n context.id,\n context.rootPath,\n context.publicPath,\n context.title\n ) as any;\n const configMutator = new WebpackConfigMutator(config);\n const transformerContext: WebpackConfigDevServerTransformContext = Object.assign(context, { mode: 'dev' as const });\n const internalTransformers = this.generateTransformers(undefined, transformerContext);\n\n const afterMutation = runTransformersWithContext(\n configMutator.clone(),\n [...internalTransformers, ...transformers],\n transformerContext\n );\n // @ts-ignore - fix this\n return new WebpackDevServer(afterMutation.raw, webpack, WsDevServer);\n }\n\n mergeConfig(target: any, source: any): any {\n return merge(target, source);\n }\n\n createBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n initialConfigs?: webpack.Configuration[],\n webpackInstance?: any\n ) {\n const transformerContext: GlobalWebpackConfigTransformContext = { mode: 'prod' };\n // eslint-disable-next-line max-len\n const configs =\n initialConfigs ||\n this.createConfigs(context.targets, baseConfigFactory, transformers, transformerContext, context);\n return new WebpackBundler(context.targets, configs, this.logger, webpackInstance || webpack, context.metaData);\n }\n\n private createConfigs(\n targets: Target[],\n factory: (target: Target, context: BundlerContext) => Configuration,\n transformers: WebpackConfigTransformer[] = [],\n transformerContext: GlobalWebpackConfigTransformContext,\n bundlerContext: BundlerContext\n ) {\n return targets.map((target) => {\n const baseConfig = factory(target, bundlerContext);\n const configMutator = new WebpackConfigMutator(baseConfig);\n const context = Object.assign({}, transformerContext, { target });\n const internalTransformers = this.generateTransformers(context, undefined, target);\n const afterMutation = runTransformersWithContext(\n configMutator.clone(),\n [...internalTransformers, ...transformers],\n context\n );\n return afterMutation.raw;\n });\n }\n\n private generateTransformers(\n _bundlerContext?: WebpackConfigTransformContext,\n devServerContext?: WebpackConfigDevServerTransformContext,\n target?: Target\n ): Array<WebpackConfigTransformer> {\n const transformers: WebpackConfigTransformer[] = [];\n // TODO: handle dev server\n const hostDeps = target?.hostDependencies || devServerContext?.hostDependencies;\n if (hostDeps) {\n if (target?.aliasHostDependencies || devServerContext?.aliasHostDependencies) {\n const peerAliasesTransformer = generateAddAliasesFromPeersTransformer(hostDeps, this.logger);\n transformers.push(peerAliasesTransformer);\n }\n if (target?.externalizeHostDependencies || devServerContext?.externalizeHostDependencies) {\n const externalsTransformer = generateExternalsTransformer(hostDeps);\n transformers.push(externalsTransformer);\n }\n }\n return transformers;\n }\n\n private createDevServerConfig(\n entry: string[],\n rootPath: string,\n devServerID: string,\n publicRoot: string,\n publicPath: string,\n title?: string\n ) {\n return devServerConfigFactory(devServerID, rootPath, entry, publicRoot, publicPath, this.pubsub, title);\n }\n\n static slots = [];\n\n static runtime = MainRuntime;\n static dependencies = [PubsubAspect, WorkspaceAspect, BundlerAspect, LoggerAspect];\n\n static async provider([pubsub, workspace, bundler, logger]: [PubsubMain, Workspace, BundlerMain, LoggerMain]) {\n const logPublisher = logger.createLogger(WebpackAspect.id);\n return new WebpackMain(pubsub, workspace, bundler, logPublisher);\n }\n}\n\nWebpackAspect.addRuntime(WebpackMain);\n\nexport function runTransformersWithContext(\n config: WebpackConfigMutator,\n transformers: Array<WebpackConfigTransformer | WebpackConfigDevServerTransformer> = [],\n // context: WebpackConfigTransformContext | WebpackConfigDevServerTransformContext\n context: any\n): WebpackConfigMutator {\n if (!Array.isArray(transformers)) return config;\n const newConfig = transformers.reduce((acc, transformer) => {\n // @ts-ignore\n return transformer(acc, context);\n }, config);\n return newConfig;\n}\n"],"mappings":"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"}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/webpack",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.882",
|
|
4
4
|
"homepage": "https://bit.dev/teambit/webpack/webpack",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.webpack",
|
|
8
8
|
"name": "webpack",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.882"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"webpack": "5.51.1",
|
|
@@ -48,11 +48,11 @@
|
|
|
48
48
|
"@teambit/harmony": "0.3.3",
|
|
49
49
|
"@teambit/webpack.modules.config-mutator": "0.0.147",
|
|
50
50
|
"@teambit/bit-error": "0.0.400",
|
|
51
|
-
"@teambit/bundler": "0.0.
|
|
51
|
+
"@teambit/bundler": "0.0.882",
|
|
52
52
|
"@teambit/logger": "0.0.684",
|
|
53
53
|
"@teambit/cli": "0.0.591",
|
|
54
|
-
"@teambit/pubsub": "0.0.
|
|
55
|
-
"@teambit/workspace": "0.0.
|
|
54
|
+
"@teambit/pubsub": "0.0.882",
|
|
55
|
+
"@teambit/workspace": "0.0.882",
|
|
56
56
|
"@teambit/webpack.modules.generate-expose-loaders": "0.0.9",
|
|
57
57
|
"@teambit/webpack.modules.generate-externals": "0.0.10",
|
|
58
58
|
"@teambit/webpack.plugins.inject-head-webpack-plugin": "0.0.2"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.webpack_webpack@0.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.webpack_webpack@0.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.webpack_webpack@0.0.882/dist/webpack.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.webpack_webpack@0.0.882/dist/webpack.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
|
Binary file
|