@roots/bud-compiler 5.0.0 → 5.3.1
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/cjs/Compiler/compiler.service.js +180 -0
- package/lib/cjs/Compiler/process/index.js +26 -0
- package/lib/cjs/Compiler/process/logger.js +7 -0
- package/lib/cjs/Compiler/process/stats.js +110 -0
- package/lib/cjs/index.js +2 -3
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -25
- package/types/Compiler/{index.d.ts → compiler.service.d.ts} +7 -11
- package/types/Compiler/compiler.service.d.ts.map +1 -0
- package/types/Compiler/process/index.d.ts +4 -0
- package/types/Compiler/process/index.d.ts.map +1 -0
- package/types/Compiler/process/logger.d.ts +2 -0
- package/types/Compiler/process/logger.d.ts.map +1 -0
- package/types/Compiler/process/stats.d.ts +4 -0
- package/types/Compiler/process/stats.d.ts.map +1 -0
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
- package/lib/cjs/Compiler/index.js +0 -187
- package/lib/cjs/Compiler/index.js.map +0 -1
- package/lib/cjs/index.js.map +0 -1
- package/lib/esm/Compiler/index.js +0 -183
- package/lib/esm/Compiler/index.js.map +0 -1
- package/lib/esm/index.js +0 -13
- package/lib/esm/index.js.map +0 -1
- package/lib/tsconfig-esm.tsbuildinfo +0 -1
- package/types/Compiler/index.d.ts.map +0 -1
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/Compiler/process/logger.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,6DAEQ,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../src/Compiler/process/stats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAE9C,OAAO,EAAC,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAmBxC,wBAAgB,KAAK,CACnB,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,GAC1D,IAAI,CAmGN"}
|
package/types/index.d.ts
CHANGED
package/types/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AAEH,OAAO,EAAC,QAAQ,EAAC,MAAM,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AAEH,OAAO,EAAC,QAAQ,EAAC,MAAM,6BAA6B,CAAA"}
|
@@ -1,187 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.Compiler = void 0;
|
4
|
-
const tslib_1 = require("tslib");
|
5
|
-
const bud_framework_1 = require("@roots/bud-framework");
|
6
|
-
const bud_support_1 = require("@roots/bud-support");
|
7
|
-
const webpack_1 = require("webpack");
|
8
|
-
const { isFunction } = bud_support_1.lodash;
|
9
|
-
/**
|
10
|
-
* Initial state
|
11
|
-
*
|
12
|
-
* @public
|
13
|
-
*/
|
14
|
-
const INITIAL_STATS = {
|
15
|
-
assets: [],
|
16
|
-
errors: [],
|
17
|
-
warnings: [],
|
18
|
-
};
|
19
|
-
/**
|
20
|
-
* Wepback compilation controller class
|
21
|
-
*
|
22
|
-
* @public
|
23
|
-
*/
|
24
|
-
class Compiler extends bud_framework_1.Service {
|
25
|
-
constructor() {
|
26
|
-
super(...arguments);
|
27
|
-
/**
|
28
|
-
* Compilation stats
|
29
|
-
*
|
30
|
-
* @public
|
31
|
-
*/
|
32
|
-
this.stats = INITIAL_STATS;
|
33
|
-
/**
|
34
|
-
* Compiler errors
|
35
|
-
*/
|
36
|
-
this.errors = [];
|
37
|
-
/**
|
38
|
-
* True if compiler is already instantiated
|
39
|
-
*
|
40
|
-
* @public
|
41
|
-
*/
|
42
|
-
this.isCompiled = false;
|
43
|
-
/**
|
44
|
-
* @public
|
45
|
-
*/
|
46
|
-
this.config = [];
|
47
|
-
}
|
48
|
-
/**
|
49
|
-
* Initiates compilation
|
50
|
-
*
|
51
|
-
* @returns the compiler instance
|
52
|
-
*
|
53
|
-
* @public
|
54
|
-
* @decorator `@bind`
|
55
|
-
*/
|
56
|
-
compile() {
|
57
|
-
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
58
|
-
const config = yield this.before();
|
59
|
-
const compiler = yield this.invoke(config);
|
60
|
-
this.app.timeEnd('bud');
|
61
|
-
return compiler;
|
62
|
-
});
|
63
|
-
}
|
64
|
-
/**
|
65
|
-
* @public
|
66
|
-
* @decorator `@bind`
|
67
|
-
*/
|
68
|
-
invoke(config) {
|
69
|
-
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
70
|
-
config =
|
71
|
-
yield this.app.hooks.filterAsync('event.compiler.before', config);
|
72
|
-
config = this.app.hooks.filter('config.override', config);
|
73
|
-
this.instance = (0, webpack_1.webpack)(config);
|
74
|
-
this.instance.hooks.done.tap(config[0].name, (stats) => (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
75
|
-
this.app.hooks.filter('event.compiler.done', stats);
|
76
|
-
stats && Object.assign(this.stats, stats.toJson());
|
77
|
-
if (this.app.store.is('features.dashboard', false)) {
|
78
|
-
this.log('log', stats.toString(this.app.store.get('build.stats')));
|
79
|
-
}
|
80
|
-
if (this.app.isProduction) {
|
81
|
-
this.instance.close(err => {
|
82
|
-
if (err) {
|
83
|
-
err = this.app.hooks.filter('event.compiler.error', err);
|
84
|
-
this.stats.errors.push(err);
|
85
|
-
this.log('error', err);
|
86
|
-
}
|
87
|
-
!this.app.dashboard.instance && this.app.close();
|
88
|
-
});
|
89
|
-
}
|
90
|
-
}));
|
91
|
-
new webpack_1.ProgressPlugin((...args) => {
|
92
|
-
this.progress = args;
|
93
|
-
}).apply(this.instance);
|
94
|
-
this.app.hooks.filter('event.compiler.after', this.app);
|
95
|
-
return this.instance;
|
96
|
-
});
|
97
|
-
}
|
98
|
-
/**
|
99
|
-
* Returns final webpack configuration
|
100
|
-
*
|
101
|
-
* @public
|
102
|
-
* @decorator `@bind`
|
103
|
-
*/
|
104
|
-
before() {
|
105
|
-
var _a;
|
106
|
-
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
107
|
-
const config = [];
|
108
|
-
this.stats = INITIAL_STATS;
|
109
|
-
this.isCompiled = true;
|
110
|
-
!this.app.isRoot &&
|
111
|
-
this.log('error', `Attempting to compile a child directly. Only the parent instance should be compiled.`);
|
112
|
-
yield this.app.build.make();
|
113
|
-
/**
|
114
|
-
* Attempt to use the parent instance in the compilation if there are entries
|
115
|
-
* registered to it or if it has no child instances registered.
|
116
|
-
*/
|
117
|
-
if (!this.app.hasChildren) {
|
118
|
-
this.app.info(`using config from parent compiler`);
|
119
|
-
config.push(this.app.build.config);
|
120
|
-
return config;
|
121
|
-
}
|
122
|
-
else {
|
123
|
-
this.app.warn(`root compiler will not be tapped (child compilers in use)`);
|
124
|
-
}
|
125
|
-
/**
|
126
|
-
* If there are {@link Framework.children} instances, iterate through
|
127
|
-
* them and add to `config`
|
128
|
-
*/
|
129
|
-
yield Promise.all((_a = this.app.children) === null || _a === void 0 ? void 0 : _a.getValues().map((instance) => (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
130
|
-
if (!instance.name)
|
131
|
-
return;
|
132
|
-
this.log('success', `\`${instance.name}\` compiler will be tapped`);
|
133
|
-
yield instance.build.make();
|
134
|
-
config.push(instance.build.config);
|
135
|
-
})));
|
136
|
-
return config;
|
137
|
-
});
|
138
|
-
}
|
139
|
-
/**
|
140
|
-
* Compilation callback
|
141
|
-
*
|
142
|
-
* @public
|
143
|
-
* @decorator `@bind`
|
144
|
-
*/
|
145
|
-
callback(...args) {
|
146
|
-
var _a, _b;
|
147
|
-
/**
|
148
|
-
* production mode callback takes two parameters (webpack err and stats)
|
149
|
-
* however, the done hook used in development just takes one (stats)
|
150
|
-
*
|
151
|
-
* here we parse the callback args so that we dont have to
|
152
|
-
* duplicate the callback.
|
153
|
-
*/
|
154
|
-
let [err, stats] = args.length > 1 ? args : [null, args.pop()];
|
155
|
-
if ((stats === null || stats === void 0 ? void 0 : stats.toJson) && isFunction(stats.toJson)) {
|
156
|
-
this.stats = stats.toJson(this.app.store.get('build.stats'));
|
157
|
-
this.stats = this.app.hooks.filter('event.compiler.stats', this.stats);
|
158
|
-
}
|
159
|
-
if (err) {
|
160
|
-
if (this.app.isDevelopment) {
|
161
|
-
(_b = (_a = this.app.server.middleware) === null || _a === void 0 ? void 0 : _a.hot) === null || _b === void 0 ? void 0 : _b.publish({
|
162
|
-
errors: stats.toJson(this.app.store.get('build.stats'))
|
163
|
-
.errors,
|
164
|
-
});
|
165
|
-
}
|
166
|
-
this.errors.push(this.app.hooks.filter('event.compiler.error', err));
|
167
|
-
this.app.store.is('features.dashboard', false) &&
|
168
|
-
this.log('error', err);
|
169
|
-
}
|
170
|
-
}
|
171
|
-
}
|
172
|
-
(0, tslib_1.__decorate)([
|
173
|
-
bud_support_1.bind,
|
174
|
-
bud_support_1.once
|
175
|
-
], Compiler.prototype, "compile", null);
|
176
|
-
(0, tslib_1.__decorate)([
|
177
|
-
bud_support_1.bind
|
178
|
-
], Compiler.prototype, "invoke", null);
|
179
|
-
(0, tslib_1.__decorate)([
|
180
|
-
bud_support_1.bind,
|
181
|
-
bud_support_1.once
|
182
|
-
], Compiler.prototype, "before", null);
|
183
|
-
(0, tslib_1.__decorate)([
|
184
|
-
bud_support_1.bind
|
185
|
-
], Compiler.prototype, "callback", null);
|
186
|
-
exports.Compiler = Compiler;
|
187
|
-
//# sourceMappingURL=index.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Compiler/index.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/index.js.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,4DAA4D;AAC5D,kCAAkC;;;AAElC;;;;;;;;GAQG;AAEH,uCAAmC;AAA3B,oGAAA,QAAQ,OAAA"}
|
@@ -1,183 +0,0 @@
|
|
1
|
-
import { __awaiter, __decorate } from "tslib";
|
2
|
-
import { Service, } from '@roots/bud-framework';
|
3
|
-
import { bind, lodash, once } from '@roots/bud-support';
|
4
|
-
import { ProgressPlugin, webpack, } from 'webpack';
|
5
|
-
const { isFunction } = lodash;
|
6
|
-
/**
|
7
|
-
* Initial state
|
8
|
-
*
|
9
|
-
* @public
|
10
|
-
*/
|
11
|
-
const INITIAL_STATS = {
|
12
|
-
assets: [],
|
13
|
-
errors: [],
|
14
|
-
warnings: [],
|
15
|
-
};
|
16
|
-
/**
|
17
|
-
* Wepback compilation controller class
|
18
|
-
*
|
19
|
-
* @public
|
20
|
-
*/
|
21
|
-
export class Compiler extends Service {
|
22
|
-
constructor() {
|
23
|
-
super(...arguments);
|
24
|
-
/**
|
25
|
-
* Compilation stats
|
26
|
-
*
|
27
|
-
* @public
|
28
|
-
*/
|
29
|
-
this.stats = INITIAL_STATS;
|
30
|
-
/**
|
31
|
-
* Compiler errors
|
32
|
-
*/
|
33
|
-
this.errors = [];
|
34
|
-
/**
|
35
|
-
* True if compiler is already instantiated
|
36
|
-
*
|
37
|
-
* @public
|
38
|
-
*/
|
39
|
-
this.isCompiled = false;
|
40
|
-
/**
|
41
|
-
* @public
|
42
|
-
*/
|
43
|
-
this.config = [];
|
44
|
-
}
|
45
|
-
/**
|
46
|
-
* Initiates compilation
|
47
|
-
*
|
48
|
-
* @returns the compiler instance
|
49
|
-
*
|
50
|
-
* @public
|
51
|
-
* @decorator `@bind`
|
52
|
-
*/
|
53
|
-
compile() {
|
54
|
-
return __awaiter(this, void 0, void 0, function* () {
|
55
|
-
const config = yield this.before();
|
56
|
-
const compiler = yield this.invoke(config);
|
57
|
-
this.app.timeEnd('bud');
|
58
|
-
return compiler;
|
59
|
-
});
|
60
|
-
}
|
61
|
-
/**
|
62
|
-
* @public
|
63
|
-
* @decorator `@bind`
|
64
|
-
*/
|
65
|
-
invoke(config) {
|
66
|
-
return __awaiter(this, void 0, void 0, function* () {
|
67
|
-
config =
|
68
|
-
yield this.app.hooks.filterAsync('event.compiler.before', config);
|
69
|
-
config = this.app.hooks.filter('config.override', config);
|
70
|
-
this.instance = webpack(config);
|
71
|
-
this.instance.hooks.done.tap(config[0].name, (stats) => __awaiter(this, void 0, void 0, function* () {
|
72
|
-
this.app.hooks.filter('event.compiler.done', stats);
|
73
|
-
stats && Object.assign(this.stats, stats.toJson());
|
74
|
-
if (this.app.store.is('features.dashboard', false)) {
|
75
|
-
this.log('log', stats.toString(this.app.store.get('build.stats')));
|
76
|
-
}
|
77
|
-
if (this.app.isProduction) {
|
78
|
-
this.instance.close(err => {
|
79
|
-
if (err) {
|
80
|
-
err = this.app.hooks.filter('event.compiler.error', err);
|
81
|
-
this.stats.errors.push(err);
|
82
|
-
this.log('error', err);
|
83
|
-
}
|
84
|
-
!this.app.dashboard.instance && this.app.close();
|
85
|
-
});
|
86
|
-
}
|
87
|
-
}));
|
88
|
-
new ProgressPlugin((...args) => {
|
89
|
-
this.progress = args;
|
90
|
-
}).apply(this.instance);
|
91
|
-
this.app.hooks.filter('event.compiler.after', this.app);
|
92
|
-
return this.instance;
|
93
|
-
});
|
94
|
-
}
|
95
|
-
/**
|
96
|
-
* Returns final webpack configuration
|
97
|
-
*
|
98
|
-
* @public
|
99
|
-
* @decorator `@bind`
|
100
|
-
*/
|
101
|
-
before() {
|
102
|
-
var _a;
|
103
|
-
return __awaiter(this, void 0, void 0, function* () {
|
104
|
-
const config = [];
|
105
|
-
this.stats = INITIAL_STATS;
|
106
|
-
this.isCompiled = true;
|
107
|
-
!this.app.isRoot &&
|
108
|
-
this.log('error', `Attempting to compile a child directly. Only the parent instance should be compiled.`);
|
109
|
-
yield this.app.build.make();
|
110
|
-
/**
|
111
|
-
* Attempt to use the parent instance in the compilation if there are entries
|
112
|
-
* registered to it or if it has no child instances registered.
|
113
|
-
*/
|
114
|
-
if (!this.app.hasChildren) {
|
115
|
-
this.app.info(`using config from parent compiler`);
|
116
|
-
config.push(this.app.build.config);
|
117
|
-
return config;
|
118
|
-
}
|
119
|
-
else {
|
120
|
-
this.app.warn(`root compiler will not be tapped (child compilers in use)`);
|
121
|
-
}
|
122
|
-
/**
|
123
|
-
* If there are {@link Framework.children} instances, iterate through
|
124
|
-
* them and add to `config`
|
125
|
-
*/
|
126
|
-
yield Promise.all((_a = this.app.children) === null || _a === void 0 ? void 0 : _a.getValues().map((instance) => __awaiter(this, void 0, void 0, function* () {
|
127
|
-
if (!instance.name)
|
128
|
-
return;
|
129
|
-
this.log('success', `\`${instance.name}\` compiler will be tapped`);
|
130
|
-
yield instance.build.make();
|
131
|
-
config.push(instance.build.config);
|
132
|
-
})));
|
133
|
-
return config;
|
134
|
-
});
|
135
|
-
}
|
136
|
-
/**
|
137
|
-
* Compilation callback
|
138
|
-
*
|
139
|
-
* @public
|
140
|
-
* @decorator `@bind`
|
141
|
-
*/
|
142
|
-
callback(...args) {
|
143
|
-
var _a, _b;
|
144
|
-
/**
|
145
|
-
* production mode callback takes two parameters (webpack err and stats)
|
146
|
-
* however, the done hook used in development just takes one (stats)
|
147
|
-
*
|
148
|
-
* here we parse the callback args so that we dont have to
|
149
|
-
* duplicate the callback.
|
150
|
-
*/
|
151
|
-
let [err, stats] = args.length > 1 ? args : [null, args.pop()];
|
152
|
-
if ((stats === null || stats === void 0 ? void 0 : stats.toJson) && isFunction(stats.toJson)) {
|
153
|
-
this.stats = stats.toJson(this.app.store.get('build.stats'));
|
154
|
-
this.stats = this.app.hooks.filter('event.compiler.stats', this.stats);
|
155
|
-
}
|
156
|
-
if (err) {
|
157
|
-
if (this.app.isDevelopment) {
|
158
|
-
(_b = (_a = this.app.server.middleware) === null || _a === void 0 ? void 0 : _a.hot) === null || _b === void 0 ? void 0 : _b.publish({
|
159
|
-
errors: stats.toJson(this.app.store.get('build.stats'))
|
160
|
-
.errors,
|
161
|
-
});
|
162
|
-
}
|
163
|
-
this.errors.push(this.app.hooks.filter('event.compiler.error', err));
|
164
|
-
this.app.store.is('features.dashboard', false) &&
|
165
|
-
this.log('error', err);
|
166
|
-
}
|
167
|
-
}
|
168
|
-
}
|
169
|
-
__decorate([
|
170
|
-
bind,
|
171
|
-
once
|
172
|
-
], Compiler.prototype, "compile", null);
|
173
|
-
__decorate([
|
174
|
-
bind
|
175
|
-
], Compiler.prototype, "invoke", null);
|
176
|
-
__decorate([
|
177
|
-
bind,
|
178
|
-
once
|
179
|
-
], Compiler.prototype, "before", null);
|
180
|
-
__decorate([
|
181
|
-
bind
|
182
|
-
], Compiler.prototype, "callback", null);
|
183
|
-
//# sourceMappingURL=index.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Compiler/index.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/index.js
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
// Copyright (c) Roots Foundation, LLC. All rights reserved.
|
2
|
-
// Licensed under the MIT license.
|
3
|
-
/**
|
4
|
-
* The {@link @roots/bud-compiler# | @roots/bud-compiler} package implements the
|
5
|
-
* {@link @roots/bud-framework#Compiler | Compiler interface}
|
6
|
-
*
|
7
|
-
* @see https://roots.io/bud
|
8
|
-
* @see https://github.com/roots/bud
|
9
|
-
*
|
10
|
-
* @packageDocumentation
|
11
|
-
*/
|
12
|
-
export { Compiler } from './Compiler';
|
13
|
-
//# sourceMappingURL=index.js.map
|
package/lib/esm/index.js.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,kCAAkC;AAElC;;;;;;;;GAQG;AAEH,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAA"}
|