@roots/bud-compiler 5.0.0-next.2 → 5.0.0-next.20

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 CHANGED
@@ -1,41 +1,25 @@
1
1
  <p align="center">
2
- <img alt="Bud" src="https://cdn.roots.io/app/uploads/logo-bud.svg" height="100" />
2
+ <img src="https://cdn.roots.io/app/uploads/logo-bud.svg" height="100" alt="Bud" />
3
3
  </p>
4
4
 
5
5
  <p align="center">
6
- <img
7
- alt="MIT License"
8
- src="https://img.shields.io/github/license/roots/bud?color=%23525ddc&style=flat-square"
9
- />
10
- <a href="https://app.fossa.com/projects/git%2Bgithub.com%2Froots%2Fbud?ref=badge_small" alt="FOSSA Status">
11
- <img src="https://app.fossa.com/api/projects/git%2Bgithub.com%2Froots%2Fbud.svg?type=small"/>
12
- </a>
13
- <a href="https://www.npmjs.com/package/@roots/bud">
14
- <img src="https://img.shields.io/npm/v/@roots/bud.svg?color=%23525ddc&style=flat-square" />
15
- </a>
16
- <a href="https://codecov.io/gh/roots/bud">
17
- <img src="https://codecov.io/gh/roots/bud/branch/next/graph/badge.svg?token=DRJ28OD8XD"/>
18
- </a>
19
- <a href="https://twitter.com/rootswp">
20
- <img
21
- alt="Follow Roots"
22
- src="https://img.shields.io/twitter/follow/rootswp.svg?color=%23525ddc&style=flat-square"
23
- />
24
- </a>
6
+ <img alt="MIT License" src="https://img.shields.io/github/license/roots/bud?color=%23525ddc&style=flat-square" /> <img alt="npm" src="https://img.shields.io/npm/v/@roots/bud.svg?color=%23525ddc&style=flat-square" /> <img alt="Follow Roots" src="https://img.shields.io/twitter/follow/rootswp.svg?color=%23525ddc&style=flat-square" />
25
7
  </p>
26
8
 
27
-
28
9
  <h1 align="center">
29
10
  <strong>@roots/bud-compiler</strong>
30
11
  </h1>
31
12
 
32
- > Compilation handler
13
+ <p align="center">
14
+ Compilation handler
15
+ </p>
16
+
33
17
  ## Installation
34
18
 
35
19
  Install **@roots/bud-compiler** to your project.
36
20
 
37
21
  ```shell
38
- yarn add @roots/bud-compiler
22
+ yarn add @roots/bud-compiler --dev
39
23
  ```
40
24
 
41
25
  ## Documentation
@@ -67,8 +51,4 @@ Help support our open-source development efforts by [becoming a patron](https://
67
51
  <a href="https://carrot.com/"><img src="https://cdn.roots.io/app/uploads/carrot.svg" alt="Carrot" width="200" height="150"/></a>
68
52
  <a href="https://www.c21redwood.com/"><img src="https://cdn.roots.io/app/uploads/c21redwood.svg" alt="C21 Redwood Realty" width="200" height="150"/></a>
69
53
  <a href="https://wordpress.com/"><img src="https://cdn.roots.io/app/uploads/wordpress.svg" alt="WordPress.com" width="200" height="150"/></a>
70
- <a href="https://icons8.com/"><img src="https://cdn.roots.io/app/uploads/icons8.svg" alt="Icons8" width="200" height="150"/></a>
71
- <a href="https://www.harnessup.com/"><img src="https://cdn.roots.io/app/uploads/harness-software.svg" alt="Harness Software" width="200" height="150"/></a>
72
- <a href="https://www.codersclan.com/"><img src="https://cdn.roots.io/app/uploads/coders-clan.svg" alt="Coders Clan" width="200" height="150"/></a>
73
- <a href="https://generodigital.com/"><img src="https://cdn.roots.io/app/uploads/genero.svg" alt="Genero" width="200" height="150"/></a>
74
- <a href="https://motto.ca/roots"><img src="https://cdn.roots.io/app/uploads/motto.svg" alt="Motto" width="200" height="150"/></a>
54
+ <a href="https://pantheon.io/"><img src="https://cdn.roots.io/app/uploads/pantheon.svg" alt="Pantheon" width="200" height="150"/></a>
@@ -5,6 +5,7 @@ const tslib_1 = require("tslib");
5
5
  const bud_framework_1 = require("@roots/bud-framework");
6
6
  const bud_support_1 = require("@roots/bud-support");
7
7
  const webpack_1 = require("webpack");
8
+ const { isFunction } = bud_support_1.lodash;
8
9
  /**
9
10
  * Initial state
10
11
  *
@@ -29,22 +30,20 @@ class Compiler extends bud_framework_1.Service {
29
30
  * @public
30
31
  */
31
32
  this.stats = INITIAL_STATS;
33
+ /**
34
+ * Compiler errors
35
+ */
36
+ this.errors = [];
32
37
  /**
33
38
  * True if compiler is already instantiated
34
39
  *
35
40
  * @public
36
41
  */
37
42
  this.isCompiled = false;
38
- }
39
- /**
40
- * {@inheritDoc @roots/bud-framework#Service.register}
41
- *
42
- * @public
43
- * @decorator `@bind`
44
- */
45
- register() {
46
- this.app.hooks.on('before', () => []);
47
- this.app.hooks.on('after', () => []);
43
+ /**
44
+ * @public
45
+ */
46
+ this.config = [];
48
47
  }
49
48
  /**
50
49
  * Initiates compilation
@@ -55,35 +54,46 @@ class Compiler extends bud_framework_1.Service {
55
54
  * @decorator `@bind`
56
55
  */
57
56
  compile() {
58
- let instance;
59
- if (this.isCompiled)
60
- this.instance.close(() => {
61
- instance = this.setup(this.before());
62
- });
63
- else
64
- instance = this.setup(this.before());
65
- return instance;
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
+ });
66
63
  }
67
64
  /**
68
65
  * @public
69
66
  * @decorator `@bind`
70
67
  */
71
- setup(config) {
72
- this.instance = this.app.isDevelopment
73
- ? (0, webpack_1.webpack)(config, this.callback)
74
- : (0, webpack_1.webpack)(config);
75
- if (this.app.isProduction) {
76
- this.instance.hooks.done.tap(this.app.name, stats => {
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);
77
76
  stats && Object.assign(this.stats, stats.toJson());
78
- this.instance.close(err => {
79
- err && this.stats.errors.push(err);
80
- });
81
- });
82
- }
83
- new webpack_1.ProgressPlugin((...args) => {
84
- this.progress = args;
85
- }).apply(this.instance);
86
- return this.instance;
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
+ });
87
97
  }
88
98
  /**
89
99
  * Returns final webpack configuration
@@ -92,33 +102,39 @@ class Compiler extends bud_framework_1.Service {
92
102
  * @decorator `@bind`
93
103
  */
94
104
  before() {
95
- const config = [];
96
- this.stats = INITIAL_STATS;
97
- this.isCompiled = true;
98
- this.app.hooks.filter('before').map(cb => cb(this.app));
99
- this.app.parent &&
100
- this.app.error(`Trying to compile a child directly.`);
101
- /**
102
- * Attempt to use the parent instance in the compilation if there are entries
103
- * registered to it or if it has no child instances registered.
104
- */
105
- if (this.app.build.config.entry || !this.app.hasChildren) {
106
- this.app.info('using parent compiler');
107
- config.push(this.app.build.config);
108
- }
109
- /**
110
- * If there are {@link Framework.children} instances, iterate through
111
- * them and add to `config`
112
- */
113
- this.app.hasChildren &&
114
- this.app.children.getValues().map(({ build, name }) => {
115
- name &&
116
- (() => {
117
- this.app.info(`using ${name} compiler`);
118
- config.push(build.config);
119
- })();
120
- });
121
- return config;
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
+ });
122
138
  }
123
139
  /**
124
140
  * Compilation callback
@@ -127,6 +143,7 @@ class Compiler extends bud_framework_1.Service {
127
143
  * @decorator `@bind`
128
144
  */
129
145
  callback(...args) {
146
+ var _a, _b;
130
147
  /**
131
148
  * production mode callback takes two parameters (webpack err and stats)
132
149
  * however, the done hook used in development just takes one (stats)
@@ -134,33 +151,34 @@ class Compiler extends bud_framework_1.Service {
134
151
  * here we parse the callback args so that we dont have to
135
152
  * duplicate the callback.
136
153
  */
137
- const [err, stats] = args.length > 1 ? args : [null, args.pop()];
138
- if (stats) {
139
- this.stats = stats.toJson(this.app.build.config.stats);
140
- this.app.store.is('ci', true) &&
141
- // eslint-disable-next-line no-console
142
- console.log(stats.toString());
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);
143
158
  }
144
159
  if (err) {
145
- this.stats.errors.push(err);
146
- // eslint-disable-next-line no-console
147
- this.app.store.is('ci', true) && console.error(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);
148
169
  }
149
- const doneCallbacks = this.app.hooks.filter('done');
150
- doneCallbacks === null || doneCallbacks === void 0 ? void 0 : doneCallbacks.map((cb) => cb(this.app));
151
170
  }
152
171
  }
153
172
  (0, tslib_1.__decorate)([
154
- bud_support_1.bind
155
- ], Compiler.prototype, "register", null);
156
- (0, tslib_1.__decorate)([
157
- bud_support_1.bind
173
+ bud_support_1.bind,
174
+ bud_support_1.once
158
175
  ], Compiler.prototype, "compile", null);
159
176
  (0, tslib_1.__decorate)([
160
177
  bud_support_1.bind
161
- ], Compiler.prototype, "setup", null);
178
+ ], Compiler.prototype, "invoke", null);
162
179
  (0, tslib_1.__decorate)([
163
- bud_support_1.bind
180
+ bud_support_1.bind,
181
+ bud_support_1.once
164
182
  ], Compiler.prototype, "before", null);
165
183
  (0, tslib_1.__decorate)([
166
184
  bud_support_1.bind
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Compiler/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Compiler/index.ts"],"names":[],"mappings":"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"}
package/lib/cjs/index.js CHANGED
@@ -10,7 +10,7 @@ exports.Compiler = void 0;
10
10
  * @see https://roots.io/bud
11
11
  * @see https://github.com/roots/bud
12
12
  *
13
- * @core @packageDocumentation @betaDocumentation
13
+ * @core @packageDocumentation
14
14
  */
15
15
  var Compiler_1 = require("./Compiler");
16
16
  Object.defineProperty(exports, "Compiler", { enumerable: true, get: function () { return Compiler_1.Compiler; } });
@@ -1,7 +1,8 @@
1
- import { __decorate } from "tslib";
1
+ import { __awaiter, __decorate } from "tslib";
2
2
  import { Service, } from '@roots/bud-framework';
3
- import { bind } from '@roots/bud-support';
4
- import { ProgressPlugin, webpack } from 'webpack';
3
+ import { bind, lodash, once } from '@roots/bud-support';
4
+ import { ProgressPlugin, webpack, } from 'webpack';
5
+ const { isFunction } = lodash;
5
6
  /**
6
7
  * Initial state
7
8
  *
@@ -26,22 +27,20 @@ export class Compiler extends Service {
26
27
  * @public
27
28
  */
28
29
  this.stats = INITIAL_STATS;
30
+ /**
31
+ * Compiler errors
32
+ */
33
+ this.errors = [];
29
34
  /**
30
35
  * True if compiler is already instantiated
31
36
  *
32
37
  * @public
33
38
  */
34
39
  this.isCompiled = false;
35
- }
36
- /**
37
- * {@inheritDoc @roots/bud-framework#Service.register}
38
- *
39
- * @public
40
- * @decorator `@bind`
41
- */
42
- register() {
43
- this.app.hooks.on('before', () => []);
44
- this.app.hooks.on('after', () => []);
40
+ /**
41
+ * @public
42
+ */
43
+ this.config = [];
45
44
  }
46
45
  /**
47
46
  * Initiates compilation
@@ -52,35 +51,46 @@ export class Compiler extends Service {
52
51
  * @decorator `@bind`
53
52
  */
54
53
  compile() {
55
- let instance;
56
- if (this.isCompiled)
57
- this.instance.close(() => {
58
- instance = this.setup(this.before());
59
- });
60
- else
61
- instance = this.setup(this.before());
62
- return instance;
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
+ });
63
60
  }
64
61
  /**
65
62
  * @public
66
63
  * @decorator `@bind`
67
64
  */
68
- setup(config) {
69
- this.instance = this.app.isDevelopment
70
- ? webpack(config, this.callback)
71
- : webpack(config);
72
- if (this.app.isProduction) {
73
- this.instance.hooks.done.tap(this.app.name, stats => {
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);
74
73
  stats && Object.assign(this.stats, stats.toJson());
75
- this.instance.close(err => {
76
- err && this.stats.errors.push(err);
77
- });
78
- });
79
- }
80
- new ProgressPlugin((...args) => {
81
- this.progress = args;
82
- }).apply(this.instance);
83
- return this.instance;
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
+ });
84
94
  }
85
95
  /**
86
96
  * Returns final webpack configuration
@@ -89,33 +99,39 @@ export class Compiler extends Service {
89
99
  * @decorator `@bind`
90
100
  */
91
101
  before() {
92
- const config = [];
93
- this.stats = INITIAL_STATS;
94
- this.isCompiled = true;
95
- this.app.hooks.filter('before').map(cb => cb(this.app));
96
- this.app.parent &&
97
- this.app.error(`Trying to compile a child directly.`);
98
- /**
99
- * Attempt to use the parent instance in the compilation if there are entries
100
- * registered to it or if it has no child instances registered.
101
- */
102
- if (this.app.build.config.entry || !this.app.hasChildren) {
103
- this.app.info('using parent compiler');
104
- config.push(this.app.build.config);
105
- }
106
- /**
107
- * If there are {@link Framework.children} instances, iterate through
108
- * them and add to `config`
109
- */
110
- this.app.hasChildren &&
111
- this.app.children.getValues().map(({ build, name }) => {
112
- name &&
113
- (() => {
114
- this.app.info(`using ${name} compiler`);
115
- config.push(build.config);
116
- })();
117
- });
118
- return config;
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
+ });
119
135
  }
120
136
  /**
121
137
  * Compilation callback
@@ -124,6 +140,7 @@ export class Compiler extends Service {
124
140
  * @decorator `@bind`
125
141
  */
126
142
  callback(...args) {
143
+ var _a, _b;
127
144
  /**
128
145
  * production mode callback takes two parameters (webpack err and stats)
129
146
  * however, the done hook used in development just takes one (stats)
@@ -131,33 +148,34 @@ export class Compiler extends Service {
131
148
  * here we parse the callback args so that we dont have to
132
149
  * duplicate the callback.
133
150
  */
134
- const [err, stats] = args.length > 1 ? args : [null, args.pop()];
135
- if (stats) {
136
- this.stats = stats.toJson(this.app.build.config.stats);
137
- this.app.store.is('ci', true) &&
138
- // eslint-disable-next-line no-console
139
- console.log(stats.toString());
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);
140
155
  }
141
156
  if (err) {
142
- this.stats.errors.push(err);
143
- // eslint-disable-next-line no-console
144
- this.app.store.is('ci', true) && console.error(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);
145
166
  }
146
- const doneCallbacks = this.app.hooks.filter('done');
147
- doneCallbacks === null || doneCallbacks === void 0 ? void 0 : doneCallbacks.map((cb) => cb(this.app));
148
167
  }
149
168
  }
150
169
  __decorate([
151
- bind
152
- ], Compiler.prototype, "register", null);
153
- __decorate([
154
- bind
170
+ bind,
171
+ once
155
172
  ], Compiler.prototype, "compile", null);
156
173
  __decorate([
157
174
  bind
158
- ], Compiler.prototype, "setup", null);
175
+ ], Compiler.prototype, "invoke", null);
159
176
  __decorate([
160
- bind
177
+ bind,
178
+ once
161
179
  ], Compiler.prototype, "before", null);
162
180
  __decorate([
163
181
  bind
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Compiler/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Compiler/index.ts"],"names":[],"mappings":"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"}
package/lib/esm/index.js CHANGED
@@ -7,7 +7,7 @@
7
7
  * @see https://roots.io/bud
8
8
  * @see https://github.com/roots/bud
9
9
  *
10
- * @core @packageDocumentation @betaDocumentation
10
+ * @core @packageDocumentation
11
11
  */
12
12
  export { Compiler } from './Compiler';
13
13
  //# sourceMappingURL=index.js.map