@wolsok/nx-aws-cdk-v2 4.0.29 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -111,6 +111,11 @@ otherwise the workspace root. The Nx project name is the path below `<appsDir>`
|
|
|
111
111
|
└── tsconfig.spec.json # only with --unitTestRunner=jest
|
|
112
112
|
```
|
|
113
113
|
|
|
114
|
+
The generated `tsconfig.json` extends `tsconfig.cdk.json` at the workspace root when that file
|
|
115
|
+
exists, otherwise `tsconfig.base.json`. Keep a `tsconfig.cdk.json` (extending `tsconfig.base.json`)
|
|
116
|
+
when your CDK apps need other compiler options than the rest of the workspace, such as a newer
|
|
117
|
+
`target` for the Node runtime while browser apps stay on an older one.
|
|
118
|
+
|
|
114
119
|
The generator also adds `aws-cdk-lib` and `constructs` to `dependencies`, and the `aws-cdk` CLI plus
|
|
115
120
|
the TypeScript loader `tsx` to `devDependencies` of your workspace.
|
|
116
121
|
|
package/package.json
CHANGED
|
@@ -7,6 +7,13 @@ const path = tslib_1.__importStar(require("path"));
|
|
|
7
7
|
const devkit_1 = require("@nx/devkit");
|
|
8
8
|
const jest_1 = require("@nx/jest");
|
|
9
9
|
const init_1 = require("../init/init");
|
|
10
|
+
/** Root tsconfig a workspace keeps for Node-only CDK apps (e.g. an ESNext target). */
|
|
11
|
+
const CDK_TSCONFIG = 'tsconfig.cdk.json';
|
|
12
|
+
const BASE_TSCONFIG = 'tsconfig.base.json';
|
|
13
|
+
/** The root tsconfig the app's tsconfig.json extends: the CDK one where the workspace has it. */
|
|
14
|
+
function baseTsconfig(host) {
|
|
15
|
+
return host.exists(CDK_TSCONFIG) ? CDK_TSCONFIG : BASE_TSCONFIG;
|
|
16
|
+
}
|
|
10
17
|
function normalizeOptions(host, options) {
|
|
11
18
|
const name = (0, devkit_1.names)(options.name).fileName;
|
|
12
19
|
const projectDirectory = options.directory
|
|
@@ -23,26 +30,20 @@ function normalizeOptions(host, options) {
|
|
|
23
30
|
projectRoot,
|
|
24
31
|
projectDirectory,
|
|
25
32
|
parsedTags,
|
|
33
|
+
baseTsconfig: baseTsconfig(host),
|
|
26
34
|
unitTestRunner: options.unitTestRunner ?? 'jest',
|
|
27
35
|
};
|
|
28
36
|
}
|
|
29
|
-
function
|
|
30
|
-
|
|
37
|
+
function templateOptions(options) {
|
|
38
|
+
return {
|
|
31
39
|
...options,
|
|
32
40
|
...(0, devkit_1.names)(options.projectName),
|
|
33
41
|
offsetFromRoot: (0, devkit_1.offsetFromRoot)(options.projectRoot),
|
|
34
42
|
template: '',
|
|
35
43
|
};
|
|
36
|
-
(0, devkit_1.generateFiles)(host, path.join(__dirname, 'files'), options.projectRoot, templateOptions);
|
|
37
44
|
}
|
|
38
|
-
function
|
|
39
|
-
|
|
40
|
-
...options,
|
|
41
|
-
...(0, devkit_1.names)(options.projectName),
|
|
42
|
-
offsetFromRoot: (0, devkit_1.offsetFromRoot)(options.projectRoot),
|
|
43
|
-
template: '',
|
|
44
|
-
};
|
|
45
|
-
(0, devkit_1.generateFiles)(host, path.join(__dirname, 'jest-files'), options.projectRoot, templateOptions);
|
|
45
|
+
function addFiles(host, options, folder) {
|
|
46
|
+
(0, devkit_1.generateFiles)(host, path.join(__dirname, folder), options.projectRoot, templateOptions(options));
|
|
46
47
|
}
|
|
47
48
|
async function applicationGenerator(host, options) {
|
|
48
49
|
const tasks = [];
|
|
@@ -79,7 +80,7 @@ async function applicationGenerator(host, options) {
|
|
|
79
80
|
(0, devkit_1.addProjectConfiguration)(host, normalizedOptions.projectName, project);
|
|
80
81
|
const workspace = (0, devkit_1.readProjectConfiguration)(host, normalizedOptions.projectName);
|
|
81
82
|
(0, devkit_1.updateProjectConfiguration)(host, normalizedOptions.projectName, workspace);
|
|
82
|
-
addFiles(host, normalizedOptions);
|
|
83
|
+
addFiles(host, normalizedOptions, 'files');
|
|
83
84
|
if (normalizedOptions.unitTestRunner === 'jest') {
|
|
84
85
|
// `configurationGenerator` forwards its whole options object to `@nx/js`'s init
|
|
85
86
|
// generator, where `skipFormat` only guards the formatFiles call - `ensurePackage`
|
|
@@ -101,7 +102,7 @@ async function applicationGenerator(host, options) {
|
|
|
101
102
|
};
|
|
102
103
|
const jestTask = await (0, jest_1.configurationGenerator)(host, jestConfigOptions);
|
|
103
104
|
tasks.push(jestTask);
|
|
104
|
-
|
|
105
|
+
addFiles(host, normalizedOptions, 'jest-files');
|
|
105
106
|
}
|
|
106
107
|
if (!options.skipFormat) {
|
|
107
108
|
await (0, devkit_1.formatFiles)(host);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../../../../../../libs/public/nx-aws-cdk-v2/src/generators/application/application.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../../../../../../libs/public/nx-aws-cdk-v2/src/generators/application/application.ts"],"names":[],"mappings":"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"}
|