@nx/esbuild 16.0.0-beta.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/CHANGELOG.md +8 -0
- package/LICENSE +22 -0
- package/README.md +63 -0
- package/executors.json +16 -0
- package/generators.json +33 -0
- package/index.d.ts +3 -0
- package/index.js +7 -0
- package/index.js.map +1 -0
- package/migrations.json +27 -0
- package/package.json +55 -0
- package/src/executors/esbuild/compat.d.ts +2 -0
- package/src/executors/esbuild/compat.js +6 -0
- package/src/executors/esbuild/compat.js.map +1 -0
- package/src/executors/esbuild/esbuild.impl.d.ts +8 -0
- package/src/executors/esbuild/esbuild.impl.js +268 -0
- package/src/executors/esbuild/esbuild.impl.js.map +1 -0
- package/src/executors/esbuild/lib/build-esbuild-options.d.ts +7 -0
- package/src/executors/esbuild/lib/build-esbuild-options.js +232 -0
- package/src/executors/esbuild/lib/build-esbuild-options.js.map +1 -0
- package/src/executors/esbuild/lib/get-extra-dependencies.d.ts +3 -0
- package/src/executors/esbuild/lib/get-extra-dependencies.js +35 -0
- package/src/executors/esbuild/lib/get-extra-dependencies.js.map +1 -0
- package/src/executors/esbuild/lib/normalize.d.ts +3 -0
- package/src/executors/esbuild/lib/normalize.js +56 -0
- package/src/executors/esbuild/lib/normalize.js.map +1 -0
- package/src/executors/esbuild/schema.d.ts +38 -0
- package/src/executors/esbuild/schema.json +189 -0
- package/src/generators/esbuild-project/esbuild-project.d.ts +5 -0
- package/src/generators/esbuild-project/esbuild-project.js +100 -0
- package/src/generators/esbuild-project/esbuild-project.js.map +1 -0
- package/src/generators/esbuild-project/schema.d.ts +12 -0
- package/src/generators/esbuild-project/schema.json +62 -0
- package/src/generators/init/init.d.ts +5 -0
- package/src/generators/init/init.js +21 -0
- package/src/generators/init/init.js.map +1 -0
- package/src/generators/init/schema.d.ts +4 -0
- package/src/generators/init/schema.json +22 -0
- package/src/migrations/update-15-8-7/set-generate-package-json.d.ts +2 -0
- package/src/migrations/update-15-8-7/set-generate-package-json.js +27 -0
- package/src/migrations/update-15-8-7/set-generate-package-json.js.map +1 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +13 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js.map +1 -0
- package/src/utils/environment-variables.d.ts +1 -0
- package/src/utils/environment-variables.js +14 -0
- package/src/utils/environment-variables.js.map +1 -0
- package/src/utils/fs.d.ts +4 -0
- package/src/utils/fs.js +17 -0
- package/src/utils/fs.js.map +1 -0
- package/src/utils/get-entry-points.d.ts +8 -0
- package/src/utils/get-entry-points.js +62 -0
- package/src/utils/get-entry-points.js.map +1 -0
- package/src/utils/versions.d.ts +2 -0
- package/src/utils/versions.js +6 -0
- package/src/utils/versions.js.map +1 -0
package/CHANGELOG.md
ADDED
package/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
(The MIT License)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2017-2023 Narwhal Technologies Inc.
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
+
a copy of this software and associated documentation files (the
|
|
7
|
+
'Software'), to deal in the Software without restriction, including
|
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
+
the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be
|
|
14
|
+
included in all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
19
|
+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
20
|
+
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
21
|
+
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
22
|
+
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
<p style="text-align: center;"><img src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx.png" width="600" alt="Nx - Smart, Fast and Extensible Build System"></p>
|
|
2
|
+
|
|
3
|
+
<div style="text-align: center;">
|
|
4
|
+
|
|
5
|
+
[](https://circleci.com/gh/nrwl/nx)
|
|
6
|
+
[]()
|
|
7
|
+
[](https://www.npmjs.com/@nrwl/workspace)
|
|
8
|
+
[]()
|
|
9
|
+
[](http://commitizen.github.io/cz-cli/)
|
|
10
|
+
[](https://gitter.im/nrwl-nx/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
11
|
+
[](https://join.slack.com/t/nrwlcommunity/shared_invite/enQtNzU5MTE4OTQwOTk0LTgxY2E0ZWYzMWE0YzA5ZDA2MWM1NDVhNmI2ZWMyYmZhNWJiODk3MjkxZjY3MzU5ZjRmM2NmNWU1OTgyZmE4Mzc)
|
|
12
|
+
|
|
13
|
+
</div>
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
<hr>
|
|
17
|
+
|
|
18
|
+
# Nx: Smart, Fast and Extensible Build System
|
|
19
|
+
|
|
20
|
+
Nx is a next generation build system with first class monorepo support and powerful integrations.
|
|
21
|
+
|
|
22
|
+
This package is a [EsBuild plugin for Nx](https://nx.dev/packages/esbuild).
|
|
23
|
+
|
|
24
|
+
## Getting Started
|
|
25
|
+
|
|
26
|
+
### Creating an Nx Workspace
|
|
27
|
+
|
|
28
|
+
**Using `npx`**
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npx create-nx-workspace
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**Using `npm init`**
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
npm init nx-workspace
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**Using `yarn create`**
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
yarn create nx-workspace
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Adding Nx to an Existing Repository
|
|
47
|
+
|
|
48
|
+
Run:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
npx nx@latest init
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Documentation & Resources
|
|
55
|
+
|
|
56
|
+
- [Nx.Dev: Documentation, Guides, Tutorials](https://nx.dev)
|
|
57
|
+
- [Intro to Nx](https://nx.dev/getting-started/intro)
|
|
58
|
+
- [Official Nx YouTube Channel](https://www.youtube.com/@NxDevtools)
|
|
59
|
+
- [Blog Posts About Nx](https://blog.nrwl.io/nx/home)
|
|
60
|
+
|
|
61
|
+
<p style="text-align: center;"><a href="https://nx.dev/#learning-materials" target="_blank" rel="noreferrer"><img src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-courses-and-videos.svg"
|
|
62
|
+
width="100%" alt="Nx - Smart, Fast and Extensible Build System"></a></p>
|
|
63
|
+
|
package/executors.json
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"builders": {
|
|
3
|
+
"esbuild": {
|
|
4
|
+
"implementation": "./src/executors/esbuild/compat",
|
|
5
|
+
"schema": "./src/executors/esbuild/schema.json",
|
|
6
|
+
"description": "Bundle a package using EsBuild."
|
|
7
|
+
}
|
|
8
|
+
},
|
|
9
|
+
"executors": {
|
|
10
|
+
"esbuild": {
|
|
11
|
+
"implementation": "./src/executors/esbuild/esbuild.impl",
|
|
12
|
+
"schema": "./src/executors/esbuild/schema.json",
|
|
13
|
+
"description": "Bundle a package using EsBuild."
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
package/generators.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Nx esbuild",
|
|
3
|
+
"version": "0.1",
|
|
4
|
+
"schematics": {
|
|
5
|
+
"init": {
|
|
6
|
+
"factory": "./src/generators/init/init#esbuildInitSchematic",
|
|
7
|
+
"schema": "./src/generators/init/schema.json",
|
|
8
|
+
"description": "Initialize the `@nrwl/esbuild` plugin.",
|
|
9
|
+
"hidden": true
|
|
10
|
+
},
|
|
11
|
+
"esbuild-project": {
|
|
12
|
+
"factory": "./src/generators/esbuild-project/esbuild-project#esbuildProjectSchematic",
|
|
13
|
+
"schema": "./src/generators/esbuild-project/schema.json",
|
|
14
|
+
"description": "Add esbuild configuration to a project.",
|
|
15
|
+
"hidden": true
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"generators": {
|
|
19
|
+
"init": {
|
|
20
|
+
"factory": "./src/generators/init/init#esbuildInitGenerator",
|
|
21
|
+
"schema": "./src/generators/init/schema.json",
|
|
22
|
+
"description": "Initialize the `@nrwl/esbuild` plugin.",
|
|
23
|
+
"aliases": ["ng-add"],
|
|
24
|
+
"hidden": true
|
|
25
|
+
},
|
|
26
|
+
"esbuild-project": {
|
|
27
|
+
"factory": "./src/generators/esbuild-project/esbuild-project#esbuildProjectGenerator",
|
|
28
|
+
"schema": "./src/generators/esbuild-project/schema.json",
|
|
29
|
+
"description": "Add esbuild configuration to a project.",
|
|
30
|
+
"hidden": true
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
package/index.d.ts
ADDED
package/index.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./src/executors/esbuild/schema"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./src/executors/esbuild/esbuild.impl"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./src/utils/versions"), exports);
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
package/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/esbuild/index.ts"],"names":[],"mappings":";;;AAAA,yEAA+C;AAC/C,+EAAqD;AACrD,+DAAqC"}
|
package/migrations.json
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"generators": {
|
|
3
|
+
"set-generate-package-json": {
|
|
4
|
+
"cli": "nx",
|
|
5
|
+
"version": "15.8.7-beta.0",
|
|
6
|
+
"description": "Set generatePackageJson to true to maintain existing behavior of generating package.json in output path.",
|
|
7
|
+
"factory": "./src/migrations/update-15-8-7/set-generate-package-json"
|
|
8
|
+
},
|
|
9
|
+
"update-16-0-0-add-nx-packages": {
|
|
10
|
+
"cli": "nx",
|
|
11
|
+
"version": "16.0.0-beta.1",
|
|
12
|
+
"description": "Replace @nrwl/esbuild with @nx/esbuild",
|
|
13
|
+
"implementation": "./src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"packageJsonUpdates": {
|
|
17
|
+
"15.7.0": {
|
|
18
|
+
"version": "15.7.0-beta.0",
|
|
19
|
+
"packages": {
|
|
20
|
+
"esbuild": {
|
|
21
|
+
"version": "0.17.5",
|
|
22
|
+
"alwaysAddToPackageJson": false
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@nx/esbuild",
|
|
3
|
+
"version": "16.0.0-beta.1",
|
|
4
|
+
"private": false,
|
|
5
|
+
"description": "The Nx Plugin for esbuild contains executors and generators that support building applications using esbuild",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/nrwl/nx.git",
|
|
9
|
+
"directory": "packages/esbuild"
|
|
10
|
+
},
|
|
11
|
+
"keywords": [
|
|
12
|
+
"Monorepo",
|
|
13
|
+
"EsBuild",
|
|
14
|
+
"Web",
|
|
15
|
+
"CLI"
|
|
16
|
+
],
|
|
17
|
+
"main": "./index",
|
|
18
|
+
"typings": "./index.d.ts",
|
|
19
|
+
"author": "Victor Savkin",
|
|
20
|
+
"license": "MIT",
|
|
21
|
+
"bugs": {
|
|
22
|
+
"url": "https://github.com/nrwl/nx/issues"
|
|
23
|
+
},
|
|
24
|
+
"homepage": "https://nx.dev",
|
|
25
|
+
"schematics": "./generators.json",
|
|
26
|
+
"builders": "./executors.json",
|
|
27
|
+
"ng-update": {
|
|
28
|
+
"requirements": {},
|
|
29
|
+
"migrations": "./migrations.json"
|
|
30
|
+
},
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@nrwl/esbuild": "16.0.0-beta.1",
|
|
33
|
+
"@nx/devkit": "16.0.0-beta.1",
|
|
34
|
+
"@nx/js": "16.0.0-beta.1",
|
|
35
|
+
"chalk": "^4.1.0",
|
|
36
|
+
"dotenv": "~10.0.0",
|
|
37
|
+
"fast-glob": "3.2.7",
|
|
38
|
+
"fs-extra": "^11.1.0",
|
|
39
|
+
"tsconfig-paths": "^4.1.2",
|
|
40
|
+
"tslib": "^2.3.0"
|
|
41
|
+
},
|
|
42
|
+
"peerDependencies": {
|
|
43
|
+
"esbuild": "~0.17.5"
|
|
44
|
+
},
|
|
45
|
+
"peerDependenciesMeta": {
|
|
46
|
+
"esbuild": {
|
|
47
|
+
"optional": true
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"publishConfig": {
|
|
51
|
+
"access": "public"
|
|
52
|
+
},
|
|
53
|
+
"types": "./index.d.ts",
|
|
54
|
+
"gitHead": "abf534c265f5aa3aac146e55bb31de598ea281d7"
|
|
55
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const devkit_1 = require("@nx/devkit");
|
|
4
|
+
const esbuild_impl_1 = require("./esbuild.impl");
|
|
5
|
+
exports.default = (0, devkit_1.convertNxExecutor)(esbuild_impl_1.default);
|
|
6
|
+
//# sourceMappingURL=compat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat.js","sourceRoot":"","sources":["../../../../../../packages/esbuild/src/executors/esbuild/compat.ts"],"names":[],"mappings":";;AAAA,uCAA+C;AAE/C,iDAA6C;AAE7C,kBAAe,IAAA,0BAAiB,EAAC,sBAAe,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import 'dotenv/config';
|
|
2
|
+
import type { ExecutorContext } from '@nx/devkit';
|
|
3
|
+
import { EsBuildExecutorOptions } from './schema';
|
|
4
|
+
export declare function esbuildExecutor(_options: EsBuildExecutorOptions, context: ExecutorContext): AsyncGenerator<{
|
|
5
|
+
success: boolean;
|
|
6
|
+
outfile?: string;
|
|
7
|
+
}, any, undefined>;
|
|
8
|
+
export default esbuildExecutor;
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.esbuildExecutor = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
require("dotenv/config");
|
|
6
|
+
const chalk = require("chalk");
|
|
7
|
+
const devkit_1 = require("@nx/devkit");
|
|
8
|
+
const js_1 = require("@nx/js");
|
|
9
|
+
const esbuild = require("esbuild");
|
|
10
|
+
const normalize_1 = require("./lib/normalize");
|
|
11
|
+
const fs_extra_1 = require("fs-extra");
|
|
12
|
+
const async_iterable_1 = require("@nx/devkit/src/utils/async-iterable");
|
|
13
|
+
const build_esbuild_options_1 = require("./lib/build-esbuild-options");
|
|
14
|
+
const get_extra_dependencies_1 = require("./lib/get-extra-dependencies");
|
|
15
|
+
const path_1 = require("path");
|
|
16
|
+
const BUILD_WATCH_FAILED = `[ ${chalk.red('watch')} ] build finished with errors (see above), watching for changes...`;
|
|
17
|
+
const BUILD_WATCH_SUCCEEDED = `[ ${chalk.green('watch')} ] build succeeded, watching for changes...`;
|
|
18
|
+
function esbuildExecutor(_options, context) {
|
|
19
|
+
return tslib_1.__asyncGenerator(this, arguments, function* esbuildExecutor_1() {
|
|
20
|
+
const options = (0, normalize_1.normalizeOptions)(_options, context);
|
|
21
|
+
if (options.deleteOutputPath)
|
|
22
|
+
(0, fs_extra_1.removeSync)(options.outputPath);
|
|
23
|
+
const assetsResult = yield tslib_1.__await((0, js_1.copyAssets)(options, context));
|
|
24
|
+
const externalDependencies = options.external.reduce((acc, name) => {
|
|
25
|
+
const externalNode = context.projectGraph.externalNodes[`npm:${name}`];
|
|
26
|
+
if (externalNode) {
|
|
27
|
+
acc.push({
|
|
28
|
+
name,
|
|
29
|
+
outputs: [],
|
|
30
|
+
node: externalNode,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
return acc;
|
|
34
|
+
}, []);
|
|
35
|
+
if (!options.thirdParty) {
|
|
36
|
+
const thirdPartyDependencies = (0, get_extra_dependencies_1.getExtraDependencies)(context.projectName, context.projectGraph);
|
|
37
|
+
for (const tpd of thirdPartyDependencies) {
|
|
38
|
+
options.external.push(tpd.node.data.packageName);
|
|
39
|
+
externalDependencies.push(tpd);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
let packageJsonResult;
|
|
43
|
+
if (options.generatePackageJson) {
|
|
44
|
+
const cpjOptions = Object.assign(Object.assign({}, options), {
|
|
45
|
+
// TODO(jack): make types generate with esbuild
|
|
46
|
+
skipTypings: true, outputFileExtensionForCjs: (0, build_esbuild_options_1.getOutExtension)('cjs', options), excludeLibsInPackageJson: !options.thirdParty, updateBuildableProjectDepsInPackageJson: externalDependencies.length > 0 });
|
|
47
|
+
// If we're bundling third-party packages, then any extra deps from external should be the only deps in package.json
|
|
48
|
+
if (options.thirdParty && externalDependencies.length > 0) {
|
|
49
|
+
cpjOptions.overrideDependencies = externalDependencies;
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
cpjOptions.extraDependencies = externalDependencies;
|
|
53
|
+
}
|
|
54
|
+
packageJsonResult = yield tslib_1.__await((0, js_1.copyPackageJson)(cpjOptions, context));
|
|
55
|
+
}
|
|
56
|
+
if ('context' in esbuild) {
|
|
57
|
+
// 0.17.0+ adds esbuild.context and context.watch()
|
|
58
|
+
if (options.watch) {
|
|
59
|
+
return yield tslib_1.__await(yield tslib_1.__await(yield* tslib_1.__asyncDelegator(tslib_1.__asyncValues((0, async_iterable_1.createAsyncIterable)(({ next, done }) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
let hasTypeErrors = false;
|
|
61
|
+
const disposeFns = yield Promise.all(options.format.map((format, idx) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
const esbuildOptions = (0, build_esbuild_options_1.buildEsbuildOptions)(format, options, context);
|
|
63
|
+
const ctx = yield esbuild.context(Object.assign(Object.assign({}, esbuildOptions), { plugins: [
|
|
64
|
+
// Only emit info on one of the watch processes.
|
|
65
|
+
idx === 0
|
|
66
|
+
? {
|
|
67
|
+
name: 'nx-watch-plugin',
|
|
68
|
+
setup(build) {
|
|
69
|
+
build.onEnd((result) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
70
|
+
if (!options.skipTypeCheck) {
|
|
71
|
+
const { errors } = yield runTypeCheck(options, context);
|
|
72
|
+
hasTypeErrors = errors.length > 0;
|
|
73
|
+
}
|
|
74
|
+
const success = result.errors.length === 0 && !hasTypeErrors;
|
|
75
|
+
if (!success) {
|
|
76
|
+
devkit_1.logger.info(BUILD_WATCH_FAILED);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
devkit_1.logger.info(BUILD_WATCH_SUCCEEDED);
|
|
80
|
+
}
|
|
81
|
+
next({
|
|
82
|
+
success,
|
|
83
|
+
// Need to call getOutfile directly in the case of bundle=false and outfile is not set for esbuild.
|
|
84
|
+
outfile: (0, path_1.join)(context.root, (0, build_esbuild_options_1.getOutfile)(format, options, context)),
|
|
85
|
+
});
|
|
86
|
+
}));
|
|
87
|
+
},
|
|
88
|
+
}
|
|
89
|
+
: null,
|
|
90
|
+
].filter(Boolean) }));
|
|
91
|
+
yield ctx.watch();
|
|
92
|
+
return () => ctx.dispose();
|
|
93
|
+
})));
|
|
94
|
+
registerCleanupCallback(() => {
|
|
95
|
+
assetsResult === null || assetsResult === void 0 ? void 0 : assetsResult.stop();
|
|
96
|
+
packageJsonResult === null || packageJsonResult === void 0 ? void 0 : packageJsonResult.stop();
|
|
97
|
+
disposeFns.forEach((fn) => fn());
|
|
98
|
+
done(); // return from async iterable
|
|
99
|
+
});
|
|
100
|
+
}))))));
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
// Run type-checks first and bail if they don't pass.
|
|
104
|
+
if (!options.skipTypeCheck) {
|
|
105
|
+
const { errors } = yield tslib_1.__await(runTypeCheck(options, context));
|
|
106
|
+
if (errors.length > 0) {
|
|
107
|
+
yield yield tslib_1.__await({ success: false });
|
|
108
|
+
return yield tslib_1.__await(void 0);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
// Emit a build event for each file format.
|
|
112
|
+
for (let i = 0; i < options.format.length; i++) {
|
|
113
|
+
const format = options.format[i];
|
|
114
|
+
const esbuildOptions = (0, build_esbuild_options_1.buildEsbuildOptions)(format, options, context);
|
|
115
|
+
const buildResult = yield tslib_1.__await(esbuild.build(esbuildOptions));
|
|
116
|
+
if (options.metafile) {
|
|
117
|
+
const filename = options.format.length === 1
|
|
118
|
+
? 'meta.json'
|
|
119
|
+
: `meta.${options.format[i]}.json`;
|
|
120
|
+
(0, fs_extra_1.writeJsonSync)((0, devkit_1.joinPathFragments)(options.outputPath, filename), buildResult.metafile);
|
|
121
|
+
}
|
|
122
|
+
yield yield tslib_1.__await({
|
|
123
|
+
success: buildResult.errors.length === 0,
|
|
124
|
+
// Need to call getOutfile directly in the case of bundle=false and outfile is not set for esbuild.
|
|
125
|
+
// This field is needed for `@nrwl/js:node` executor to work.
|
|
126
|
+
outfile: (0, path_1.join)(context.root, (0, build_esbuild_options_1.getOutfile)(format, options, context)),
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
// TODO(jack): Remove in Nx 16
|
|
133
|
+
// < 0.17.0 takes watch as an argument to build()
|
|
134
|
+
if (options.watch) {
|
|
135
|
+
return yield tslib_1.__await(yield tslib_1.__await(yield* tslib_1.__asyncDelegator(tslib_1.__asyncValues((0, async_iterable_1.createAsyncIterable)(({ next, done }) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
136
|
+
let hasTypeErrors = false;
|
|
137
|
+
const results = yield Promise.all(options.format.map((format, idx) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
138
|
+
const esbuildOptions = (0, build_esbuild_options_1.buildEsbuildOptions)(format, options, context);
|
|
139
|
+
const watch =
|
|
140
|
+
// Only emit info on one of the watch processes.
|
|
141
|
+
idx === 0
|
|
142
|
+
? {
|
|
143
|
+
onRebuild: (error, result) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
144
|
+
if (!options.skipTypeCheck) {
|
|
145
|
+
const { errors } = yield runTypeCheck(options, context);
|
|
146
|
+
hasTypeErrors = errors.length > 0;
|
|
147
|
+
}
|
|
148
|
+
const success = !error && !hasTypeErrors;
|
|
149
|
+
if (!success) {
|
|
150
|
+
devkit_1.logger.info(BUILD_WATCH_FAILED);
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
devkit_1.logger.info(BUILD_WATCH_SUCCEEDED);
|
|
154
|
+
}
|
|
155
|
+
next({
|
|
156
|
+
success,
|
|
157
|
+
// Need to call getOutfile directly in the case of bundle=false and outfile is not set for esbuild.
|
|
158
|
+
// This field is needed for `@nrwl/js:node` executor to work.
|
|
159
|
+
outfile: (0, path_1.join)(context.root, (0, build_esbuild_options_1.getOutfile)(format, options, context)),
|
|
160
|
+
});
|
|
161
|
+
}),
|
|
162
|
+
}
|
|
163
|
+
: true;
|
|
164
|
+
try {
|
|
165
|
+
const result = yield esbuild.build(Object.assign(Object.assign({}, esbuildOptions), { watch }));
|
|
166
|
+
next({
|
|
167
|
+
success: true,
|
|
168
|
+
// Need to call getOutfile directly in the case of bundle=false and outfile is not set for esbuild.
|
|
169
|
+
outfile: (0, path_1.join)(context.root, (0, build_esbuild_options_1.getOutfile)(format, options, context)),
|
|
170
|
+
});
|
|
171
|
+
return result;
|
|
172
|
+
}
|
|
173
|
+
catch (_a) {
|
|
174
|
+
next({ success: false });
|
|
175
|
+
}
|
|
176
|
+
})));
|
|
177
|
+
registerCleanupCallback(() => {
|
|
178
|
+
assetsResult === null || assetsResult === void 0 ? void 0 : assetsResult.stop();
|
|
179
|
+
packageJsonResult === null || packageJsonResult === void 0 ? void 0 : packageJsonResult.stop();
|
|
180
|
+
results.forEach((r) => { var _a;
|
|
181
|
+
// result.stop() is no in esbuild 0.17.0+ but it exists in earlier versions
|
|
182
|
+
return (_a = r === null || r === void 0 ? void 0 : r['stop']) === null || _a === void 0 ? void 0 : _a.call(r); });
|
|
183
|
+
done();
|
|
184
|
+
});
|
|
185
|
+
if (!options.skipTypeCheck) {
|
|
186
|
+
const { errors } = yield runTypeCheck(options, context);
|
|
187
|
+
hasTypeErrors = errors.length > 0;
|
|
188
|
+
}
|
|
189
|
+
const success = results.every((r) => { var _a; return ((_a = r.errors) === null || _a === void 0 ? void 0 : _a.length) === 0; }) && !hasTypeErrors;
|
|
190
|
+
if (!success) {
|
|
191
|
+
devkit_1.logger.info(BUILD_WATCH_FAILED);
|
|
192
|
+
}
|
|
193
|
+
else {
|
|
194
|
+
devkit_1.logger.info(BUILD_WATCH_SUCCEEDED);
|
|
195
|
+
}
|
|
196
|
+
}))))));
|
|
197
|
+
}
|
|
198
|
+
else {
|
|
199
|
+
// Run type-checks first and bail if they don't pass.
|
|
200
|
+
if (!options.skipTypeCheck) {
|
|
201
|
+
const { errors } = yield tslib_1.__await(runTypeCheck(options, context));
|
|
202
|
+
if (errors.length > 0) {
|
|
203
|
+
yield yield tslib_1.__await({ success: false });
|
|
204
|
+
return yield tslib_1.__await(void 0);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
// Emit a build event for each file format.
|
|
208
|
+
for (let i = 0; i < options.format.length; i++) {
|
|
209
|
+
const format = options.format[i];
|
|
210
|
+
const esbuildOptions = (0, build_esbuild_options_1.buildEsbuildOptions)(format, options, context);
|
|
211
|
+
const buildResult = yield tslib_1.__await(esbuild.build(esbuildOptions));
|
|
212
|
+
if (options.metafile) {
|
|
213
|
+
const filename = options.format.length === 1
|
|
214
|
+
? 'meta.json'
|
|
215
|
+
: `meta.${options.format[i]}.json`;
|
|
216
|
+
(0, fs_extra_1.writeJsonSync)((0, devkit_1.joinPathFragments)(options.outputPath, filename), buildResult.metafile);
|
|
217
|
+
}
|
|
218
|
+
yield yield tslib_1.__await({
|
|
219
|
+
success: buildResult.errors.length === 0,
|
|
220
|
+
// Need to call getOutfile directly in the case of bundle=false and outfile is not set for esbuild.
|
|
221
|
+
outfile: (0, path_1.join)(context.root, (0, build_esbuild_options_1.getOutfile)(format, options, context)),
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
exports.esbuildExecutor = esbuildExecutor;
|
|
229
|
+
function getTypeCheckOptions(options, context) {
|
|
230
|
+
const { watch, tsConfig, outputPath } = options;
|
|
231
|
+
const typeCheckOptions = {
|
|
232
|
+
// TODO(jack): Add support for d.ts declaration files -- once the `@nrwl/js:tsc` changes are in we can use the same logic.
|
|
233
|
+
mode: 'noEmit',
|
|
234
|
+
tsConfigPath: tsConfig,
|
|
235
|
+
// outDir: outputPath,
|
|
236
|
+
workspaceRoot: context.root,
|
|
237
|
+
rootDir: context.root,
|
|
238
|
+
};
|
|
239
|
+
if (watch) {
|
|
240
|
+
typeCheckOptions.incremental = true;
|
|
241
|
+
typeCheckOptions.cacheDir = devkit_1.cacheDir;
|
|
242
|
+
}
|
|
243
|
+
return typeCheckOptions;
|
|
244
|
+
}
|
|
245
|
+
function runTypeCheck(options, context) {
|
|
246
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
247
|
+
const { errors, warnings } = yield (0, js_1.runTypeCheck)(getTypeCheckOptions(options, context));
|
|
248
|
+
const hasErrors = errors.length > 0;
|
|
249
|
+
const hasWarnings = warnings.length > 0;
|
|
250
|
+
if (hasErrors || hasWarnings) {
|
|
251
|
+
yield (0, js_1.printDiagnostics)(errors, warnings);
|
|
252
|
+
}
|
|
253
|
+
return { errors, warnings };
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
function registerCleanupCallback(callback) {
|
|
257
|
+
const wrapped = () => {
|
|
258
|
+
callback();
|
|
259
|
+
process.off('SIGINT', wrapped);
|
|
260
|
+
process.off('SIGTERM', wrapped);
|
|
261
|
+
process.off('exit', wrapped);
|
|
262
|
+
};
|
|
263
|
+
process.on('SIGINT', wrapped);
|
|
264
|
+
process.on('SIGTERM', wrapped);
|
|
265
|
+
process.on('exit', wrapped);
|
|
266
|
+
}
|
|
267
|
+
exports.default = esbuildExecutor;
|
|
268
|
+
//# sourceMappingURL=esbuild.impl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"esbuild.impl.js","sourceRoot":"","sources":["../../../../../../packages/esbuild/src/executors/esbuild/esbuild.impl.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as esbuild from 'esbuild';
|
|
2
|
+
import { ExecutorContext, ProjectGraphProjectNode } from '@nx/devkit';
|
|
3
|
+
import { NormalizedEsBuildExecutorOptions } from '../schema';
|
|
4
|
+
export declare function buildEsbuildOptions(format: 'cjs' | 'esm', options: NormalizedEsBuildExecutorOptions, context: ExecutorContext): esbuild.BuildOptions;
|
|
5
|
+
export declare function getOutExtension(format: 'cjs' | 'esm', options: NormalizedEsBuildExecutorOptions): '.cjs' | '.mjs' | '.js';
|
|
6
|
+
export declare function getOutfile(format: 'cjs' | 'esm', options: NormalizedEsBuildExecutorOptions, context: ExecutorContext): string;
|
|
7
|
+
export declare function getRegisterFileContent(project: ProjectGraphProjectNode, paths: Record<string, string[]>, mainFile: string, outExtension?: string): string;
|