@aws/nx-plugin 0.2.0 → 0.3.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.
Files changed (90) hide show
  1. package/LICENSE-THIRD-PARTY +1470 -3006
  2. package/generators.json +11 -6
  3. package/package.json +16 -13
  4. package/src/cloudscape-website/app/__snapshots__/generator.spec.ts.snap +15 -19
  5. package/src/cloudscape-website/app/files/common/constructs/src/core/static-website.ts.template +5 -0
  6. package/src/cloudscape-website/app/generator.js +29 -23
  7. package/src/cloudscape-website/app/generator.js.map +1 -1
  8. package/src/cloudscape-website/app/schema.d.ts +0 -1
  9. package/src/cloudscape-website/cognito-auth/__snapshots__/generator.spec.ts.snap +13 -11
  10. package/src/cloudscape-website/cognito-auth/generator.js +2 -2
  11. package/src/cloudscape-website/cognito-auth/generator.js.map +1 -1
  12. package/src/cloudscape-website/runtime-config/__snapshots__/generator.spec.ts.snap +9 -2
  13. package/src/cloudscape-website/runtime-config/generator.js +1 -1
  14. package/src/cloudscape-website/runtime-config/generator.js.map +1 -1
  15. package/src/index.d.ts +1 -0
  16. package/src/index.js +4 -0
  17. package/src/index.js.map +1 -1
  18. package/src/infra/app/__snapshots__/generator.spec.ts.snap +78 -61
  19. package/src/infra/app/files/common/constructs/src/core/cfn-guard.ts.template +2 -2
  20. package/src/infra/app/generator.js +20 -5
  21. package/src/infra/app/generator.js.map +1 -1
  22. package/src/license/README.md +255 -0
  23. package/src/license/__snapshots__/config.spec.ts.snap +89 -0
  24. package/src/license/config-types.d.ts +107 -0
  25. package/src/license/config-types.js +3 -0
  26. package/src/license/config-types.js.map +1 -0
  27. package/src/license/config.d.ts +25 -0
  28. package/src/license/config.js +174 -0
  29. package/src/license/config.js.map +1 -0
  30. package/src/license/files/licenses/ASL/LICENSE.template +96 -0
  31. package/src/license/files/licenses/Apache-2.0/LICENSE.template +175 -0
  32. package/src/license/files/licenses/MIT/LICENSE.template +21 -0
  33. package/src/license/generator.d.ts +8 -0
  34. package/src/license/generator.js +32 -0
  35. package/src/license/generator.js.map +1 -0
  36. package/src/license/schema.d.ts +17 -0
  37. package/src/license/schema.json +23 -0
  38. package/src/license/sync/generator.d.ts +9 -0
  39. package/src/license/sync/generator.js +307 -0
  40. package/src/license/sync/generator.js.map +1 -0
  41. package/src/license/sync/schema.json +9 -0
  42. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +13 -10
  43. package/src/trpc/backend/generator.js +2 -2
  44. package/src/trpc/backend/generator.js.map +1 -1
  45. package/src/trpc/react/__snapshots__/generator.spec.ts.snap +1 -1
  46. package/src/trpc/react/generator.js +2 -2
  47. package/src/trpc/react/generator.js.map +1 -1
  48. package/src/ts/lib/__snapshots__/generator.spec.ts.snap +47 -93
  49. package/src/ts/lib/eslint.d.ts +1 -2
  50. package/src/ts/lib/eslint.js +26 -37
  51. package/src/ts/lib/eslint.js.map +1 -1
  52. package/src/ts/lib/generator.js +34 -2
  53. package/src/ts/lib/generator.js.map +1 -1
  54. package/src/ts/lib/schema.d.ts +0 -1
  55. package/src/ts/lib/schema.json +0 -6
  56. package/src/ts/lib/ts-project-utils.js +3 -18
  57. package/src/ts/lib/ts-project-utils.js.map +1 -1
  58. package/src/ts/lib/vitest.js +2 -4
  59. package/src/ts/lib/vitest.js.map +1 -1
  60. package/src/utils/ast.d.ts +5 -1
  61. package/src/utils/ast.js +35 -1
  62. package/src/utils/ast.js.map +1 -1
  63. package/src/utils/config/__snapshots__/utils.spec.ts.snap +16 -0
  64. package/src/utils/config/files/aws-nx-plugin.config.mts.template +5 -0
  65. package/src/utils/config/index.d.ts +15 -0
  66. package/src/utils/config/index.js +5 -0
  67. package/src/utils/config/index.js.map +1 -0
  68. package/src/utils/config/utils.d.ts +20 -0
  69. package/src/utils/config/utils.js +71 -0
  70. package/src/utils/config/utils.js.map +1 -0
  71. package/src/utils/files/common/types/src/runtime-config.ts.template +1 -0
  72. package/src/utils/format.d.ts +1 -1
  73. package/src/utils/format.js +2 -2
  74. package/src/utils/format.js.map +1 -1
  75. package/src/utils/git.d.ts +9 -0
  76. package/src/utils/git.js +27 -0
  77. package/src/utils/git.js.map +1 -0
  78. package/src/utils/js.d.ts +8 -0
  79. package/src/utils/js.js +34 -0
  80. package/src/utils/js.js.map +1 -0
  81. package/src/utils/shared-constructs.js +2 -2
  82. package/src/utils/shared-constructs.js.map +1 -1
  83. package/src/utils/test.d.ts +2 -0
  84. package/src/utils/test.js +19 -0
  85. package/src/utils/test.js.map +1 -0
  86. package/src/ts/cjs-to-esm/generator.d.ts +0 -12
  87. package/src/ts/cjs-to-esm/generator.js +0 -189
  88. package/src/ts/cjs-to-esm/generator.js.map +0 -1
  89. package/src/ts/cjs-to-esm/schema.d.ts +0 -9
  90. package/src/ts/cjs-to-esm/schema.json +0 -28
@@ -2,7 +2,7 @@
2
2
 
3
3
  exports[`ts lib generator > should generate library with custom directory > custom-dir-index.ts 1`] = `
4
4
  "export function hello() {
5
- return "Hello!";
5
+ return "Hello!";
6
6
  }
7
7
  "
8
8
  `;
@@ -17,23 +17,11 @@ exports[`ts lib generator > should generate library with custom directory > cust
17
17
  "targets": {
18
18
  "build": {
19
19
  "dependsOn": [
20
- "compile",
21
20
  "lint",
21
+ "compile",
22
22
  "test"
23
23
  ]
24
24
  },
25
- "lint": {
26
- "executor": "@nx/eslint:lint"
27
- },
28
- "test": {
29
- "executor": "@nx/vite:test",
30
- "outputs": [
31
- "{options.reportsDirectory}"
32
- ],
33
- "options": {
34
- "reportsDirectory": "../../coverage/libs/test-lib"
35
- }
36
- },
37
25
  "compile": {
38
26
  "executor": "@nx/js:tsc",
39
27
  "outputs": [
@@ -42,11 +30,23 @@ exports[`ts lib generator > should generate library with custom directory > cust
42
30
  "options": {
43
31
  "outputPath": "dist/libs/test-lib",
44
32
  "main": "libs/test-lib/src/index.ts",
45
- "tsConfig": "libs/test-lib/tsconfig.lib.json",
33
+ "tsConfig": "libs/test-lib/tsconfig.json",
46
34
  "assets": [
47
35
  "libs/test-lib/*.md"
48
36
  ]
49
37
  }
38
+ },
39
+ "lint": {
40
+ "executor": "@nx/eslint:lint"
41
+ },
42
+ "test": {
43
+ "executor": "@nx/vite:test",
44
+ "outputs": [
45
+ "{options.reportsDirectory}"
46
+ ],
47
+ "options": {
48
+ "reportsDirectory": "../../coverage/libs/test-lib"
49
+ }
50
50
  }
51
51
  }
52
52
  }
@@ -56,7 +56,6 @@ exports[`ts lib generator > should generate library with custom directory > cust
56
56
  exports[`ts lib generator > should generate library with custom directory > custom-dir-tsconfig.json 1`] = `
57
57
  "{
58
58
  "extends": "../../tsconfig.base.json",
59
- "compilerOptions": {},
60
59
  "files": [],
61
60
  "include": [],
62
61
  "references": [
@@ -66,14 +65,22 @@ exports[`ts lib generator > should generate library with custom directory > cust
66
65
  {
67
66
  "path": "./tsconfig.spec.json"
68
67
  }
69
- ]
68
+ ],
69
+ "compilerOptions": {}
70
70
  }
71
71
  "
72
72
  `;
73
73
 
74
- exports[`ts lib generator > should generate library with custom scope > scoped-project.json 1`] = `
74
+ exports[`ts lib generator > should generate library with default options > index.ts 1`] = `
75
+ "export function hello() {
76
+ return "Hello!";
77
+ }
78
+ "
79
+ `;
80
+
81
+ exports[`ts lib generator > should generate library with default options > project.json 1`] = `
75
82
  "{
76
- "name": "@custom/test-lib",
83
+ "name": "@proj/test-lib",
77
84
  "$schema": "../node_modules/nx/schemas/project-schema.json",
78
85
  "sourceRoot": "test-lib/src",
79
86
  "projectType": "library",
@@ -81,23 +88,11 @@ exports[`ts lib generator > should generate library with custom scope > scoped-p
81
88
  "targets": {
82
89
  "build": {
83
90
  "dependsOn": [
84
- "compile",
85
91
  "lint",
92
+ "compile",
86
93
  "test"
87
94
  ]
88
95
  },
89
- "lint": {
90
- "executor": "@nx/eslint:lint"
91
- },
92
- "test": {
93
- "executor": "@nx/vite:test",
94
- "outputs": [
95
- "{options.reportsDirectory}"
96
- ],
97
- "options": {
98
- "reportsDirectory": "../coverage/test-lib"
99
- }
100
- },
101
96
  "compile": {
102
97
  "executor": "@nx/js:tsc",
103
98
  "outputs": [
@@ -106,38 +101,11 @@ exports[`ts lib generator > should generate library with custom scope > scoped-p
106
101
  "options": {
107
102
  "outputPath": "dist/test-lib",
108
103
  "main": "test-lib/src/index.ts",
109
- "tsConfig": "test-lib/tsconfig.lib.json",
104
+ "tsConfig": "test-lib/tsconfig.json",
110
105
  "assets": [
111
106
  "test-lib/*.md"
112
107
  ]
113
108
  }
114
- }
115
- }
116
- }
117
- "
118
- `;
119
-
120
- exports[`ts lib generator > should generate library with default options > index.ts 1`] = `
121
- "export function hello() {
122
- return "Hello!";
123
- }
124
- "
125
- `;
126
-
127
- exports[`ts lib generator > should generate library with default options > project.json 1`] = `
128
- "{
129
- "name": "@proj/test-lib",
130
- "$schema": "../node_modules/nx/schemas/project-schema.json",
131
- "sourceRoot": "test-lib/src",
132
- "projectType": "library",
133
- "tags": [],
134
- "targets": {
135
- "build": {
136
- "dependsOn": [
137
- "compile",
138
- "lint",
139
- "test"
140
- ]
141
109
  },
142
110
  "lint": {
143
111
  "executor": "@nx/eslint:lint"
@@ -150,20 +118,6 @@ exports[`ts lib generator > should generate library with default options > proje
150
118
  "options": {
151
119
  "reportsDirectory": "../coverage/test-lib"
152
120
  }
153
- },
154
- "compile": {
155
- "executor": "@nx/js:tsc",
156
- "outputs": [
157
- "{options.outputPath}"
158
- ],
159
- "options": {
160
- "outputPath": "dist/test-lib",
161
- "main": "test-lib/src/index.ts",
162
- "tsConfig": "test-lib/tsconfig.lib.json",
163
- "assets": [
164
- "test-lib/*.md"
165
- ]
166
- }
167
121
  }
168
122
  }
169
123
  }
@@ -173,7 +127,6 @@ exports[`ts lib generator > should generate library with default options > proje
173
127
  exports[`ts lib generator > should generate library with default options > tsconfig.json 1`] = `
174
128
  "{
175
129
  "extends": "../tsconfig.base.json",
176
- "compilerOptions": {},
177
130
  "files": [],
178
131
  "include": [],
179
132
  "references": [
@@ -183,14 +136,15 @@ exports[`ts lib generator > should generate library with default options > tscon
183
136
  {
184
137
  "path": "./tsconfig.spec.json"
185
138
  }
186
- ]
139
+ ],
140
+ "compilerOptions": {}
187
141
  }
188
142
  "
189
143
  `;
190
144
 
191
145
  exports[`ts lib generator > should generate library with subdirectory > subdir-index.ts 1`] = `
192
146
  "export function hello() {
193
- return "Hello!";
147
+ return "Hello!";
194
148
  }
195
149
  "
196
150
  `;
@@ -205,23 +159,11 @@ exports[`ts lib generator > should generate library with subdirectory > subdir-p
205
159
  "targets": {
206
160
  "build": {
207
161
  "dependsOn": [
208
- "compile",
209
162
  "lint",
163
+ "compile",
210
164
  "test"
211
165
  ]
212
166
  },
213
- "lint": {
214
- "executor": "@nx/eslint:lint"
215
- },
216
- "test": {
217
- "executor": "@nx/vite:test",
218
- "outputs": [
219
- "{options.reportsDirectory}"
220
- ],
221
- "options": {
222
- "reportsDirectory": "../../coverage/feature/test-lib"
223
- }
224
- },
225
167
  "compile": {
226
168
  "executor": "@nx/js:tsc",
227
169
  "outputs": [
@@ -230,11 +172,23 @@ exports[`ts lib generator > should generate library with subdirectory > subdir-p
230
172
  "options": {
231
173
  "outputPath": "dist/feature/test-lib",
232
174
  "main": "feature/test-lib/src/index.ts",
233
- "tsConfig": "feature/test-lib/tsconfig.lib.json",
175
+ "tsConfig": "feature/test-lib/tsconfig.json",
234
176
  "assets": [
235
177
  "feature/test-lib/*.md"
236
178
  ]
237
179
  }
180
+ },
181
+ "lint": {
182
+ "executor": "@nx/eslint:lint"
183
+ },
184
+ "test": {
185
+ "executor": "@nx/vite:test",
186
+ "outputs": [
187
+ "{options.reportsDirectory}"
188
+ ],
189
+ "options": {
190
+ "reportsDirectory": "../../coverage/feature/test-lib"
191
+ }
238
192
  }
239
193
  }
240
194
  }
@@ -244,7 +198,6 @@ exports[`ts lib generator > should generate library with subdirectory > subdir-p
244
198
  exports[`ts lib generator > should generate library with subdirectory > subdir-tsconfig.json 1`] = `
245
199
  "{
246
200
  "extends": "../../tsconfig.base.json",
247
- "compilerOptions": {},
248
201
  "files": [],
249
202
  "include": [],
250
203
  "references": [
@@ -254,7 +207,8 @@ exports[`ts lib generator > should generate library with subdirectory > subdir-t
254
207
  {
255
208
  "path": "./tsconfig.spec.json"
256
209
  }
257
- ]
210
+ ],
211
+ "compilerOptions": {}
258
212
  }
259
213
  "
260
214
  `;
@@ -3,5 +3,4 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import { Tree } from '@nx/devkit';
6
- import { ConfigureProjectOptions } from './types';
7
- export declare const configureEslint: (tree: Tree, options: ConfigureProjectOptions) => Promise<void>;
6
+ export declare const configureEslint: (tree: Tree) => Promise<void>;
@@ -10,22 +10,25 @@ const devkit_1 = require("@nx/devkit");
10
10
  const versions_1 = require("../../utils/versions");
11
11
  const tsquery_1 = require("@phenomnomnominal/tsquery");
12
12
  const typescript_1 = require("typescript");
13
- const configureEslint = (tree, options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
14
- var _a;
13
+ const ast_1 = require("../../utils/ast");
14
+ const configureEslint = (tree) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
15
+ var _a, _b, _c, _d;
15
16
  // Configure the lint task
16
- const projectConfiguration = (0, devkit_1.readProjectConfiguration)(tree, options.fullyQualifiedName);
17
- if (!projectConfiguration.targets.lint) {
18
- projectConfiguration.targets.lint = {
19
- executor: '@nx/eslint:lint',
20
- options: {
21
- fix: true,
22
- },
23
- };
24
- (0, devkit_1.updateProjectConfiguration)(tree, options.fullyQualifiedName, projectConfiguration);
17
+ let nxJson = (0, devkit_1.readNxJson)(tree);
18
+ if (!((_a = nxJson.plugins) === null || _a === void 0 ? void 0 : _a.filter((e) => typeof e !== 'string').some((e) => e.plugin === '@nx/eslint/plugin'))) {
19
+ (0, devkit_1.updateNxJson)(tree, Object.assign(Object.assign({}, nxJson), { plugins: [
20
+ ...((_b = nxJson.plugins) !== null && _b !== void 0 ? _b : []),
21
+ {
22
+ plugin: '@nx/eslint/plugin',
23
+ options: {
24
+ targetName: 'lint',
25
+ },
26
+ },
27
+ ] }));
25
28
  }
26
29
  (0, devkit_1.addDependenciesToPackageJson)(tree, {}, (0, versions_1.withVersions)(['prettier', 'eslint-plugin-prettier']));
27
- // Update or create eslint.config.cjs
28
- const eslintConfigPath = 'eslint.config.cjs';
30
+ // Update or create eslint.config.mjs
31
+ const eslintConfigPath = 'eslint.config.mjs';
29
32
  if (tree.exists(eslintConfigPath)) {
30
33
  const eslintConfigContent = tree.read(eslintConfigPath).toString();
31
34
  const sourceFile = (0, tsquery_1.ast)(eslintConfigContent);
@@ -34,23 +37,13 @@ const configureEslint = (tree, options) => tslib_1.__awaiter(void 0, void 0, voi
34
37
  let updatedContent = sourceFile;
35
38
  // Add import if it doesn't exist
36
39
  if (existingImport.length === 0) {
37
- const importDeclaration = typescript_1.factory.createVariableStatement(undefined, typescript_1.factory.createVariableDeclarationList([
38
- typescript_1.factory.createVariableDeclaration(typescript_1.factory.createIdentifier('eslintPluginPrettierRecommended'), undefined, undefined, typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('require'), undefined, [
39
- typescript_1.factory.createStringLiteral('eslint-plugin-prettier/recommended'),
40
- ])),
41
- ], typescript_1.NodeFlags.Const));
42
- updatedContent = tsquery_1.tsquery.map(updatedContent, 'SourceFile', (node) => {
43
- return typescript_1.factory.updateSourceFile(node, [
44
- importDeclaration,
45
- ...node.statements,
46
- ]);
47
- });
40
+ updatedContent = (0, tsquery_1.ast)((0, ast_1.singleImport)(tree, eslintConfigPath, 'eslintPluginPrettierRecommended', 'eslint-plugin-prettier/recommended'));
48
41
  }
49
- // Check if eslintPluginPrettierRecommended exists in module.exports array
50
- const existingPlugin = tsquery_1.tsquery.query(updatedContent, 'BinaryExpression:has(Identifier[name="module"]):has(Identifier[name="exports"]) > ArrayLiteralExpression Identifier[name="eslintPluginPrettierRecommended"]');
42
+ // Check if eslintPluginPrettierRecommended exists in exports array
43
+ const existingPlugin = tsquery_1.tsquery.query(updatedContent, 'ExportAssignment > ArrayLiteralExpression Identifier[name="eslintPluginPrettierRecommended"]');
51
44
  // Add eslintPluginPrettierRecommended to array if it doesn't exist
52
45
  if (existingPlugin.length === 0) {
53
- updatedContent = tsquery_1.tsquery.map(updatedContent, 'BinaryExpression:has(Identifier[name="module"]):has(Identifier[name="exports"]) > ArrayLiteralExpression', (node) => {
46
+ updatedContent = tsquery_1.tsquery.map(updatedContent, 'ExportAssignment > ArrayLiteralExpression', (node) => {
54
47
  return typescript_1.factory.createArrayLiteralExpression([
55
48
  typescript_1.factory.createIdentifier('eslintPluginPrettierRecommended'),
56
49
  ...node.elements,
@@ -61,20 +54,16 @@ const configureEslint = (tree, options) => tslib_1.__awaiter(void 0, void 0, voi
61
54
  if (updatedContent !== sourceFile) {
62
55
  tree.write(eslintConfigPath, updatedContent.getFullText());
63
56
  }
64
- const nxJson = (0, devkit_1.readNxJson)(tree);
65
- (0, devkit_1.updateNxJson)(tree, Object.assign(Object.assign({}, nxJson), { targetDefaults: Object.assign(Object.assign({}, ((_a = nxJson.targetDefaults) !== null && _a !== void 0 ? _a : {})), { lint: {
66
- cache: true,
67
- configurations: {
57
+ nxJson = (0, devkit_1.readNxJson)(tree);
58
+ (0, devkit_1.updateNxJson)(tree, Object.assign(Object.assign({}, nxJson), { targetDefaults: Object.assign(Object.assign({}, ((_c = nxJson.targetDefaults) !== null && _c !== void 0 ? _c : {})), { lint: Object.assign(Object.assign({}, (_d = nxJson.targetDefaults) === null || _d === void 0 ? void 0 : _d.lint), { cache: true, configurations: {
68
59
  fix: {
69
60
  fix: true,
70
61
  },
71
- },
72
- inputs: [
62
+ }, inputs: [
73
63
  'default',
74
- '{workspaceRoot}/eslint.config.js',
75
- '{projectRoot}/eslint.config.js',
76
- ],
77
- } }) }));
64
+ '{workspaceRoot}/eslint.config.mjs',
65
+ '{projectRoot}/eslint.config.mjs',
66
+ ] }) }) }));
78
67
  }
79
68
  });
80
69
  exports.configureEslint = configureEslint;
@@ -1 +1 @@
1
- {"version":3,"file":"eslint.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/eslint.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAOoB;AAEpB,mDAAoD;AACpD,uDAAyD;AACzD,2CAKoB;AACb,MAAM,eAAe,GAAG,CAC7B,IAAU,EACV,OAAgC,EAChC,EAAE;;IACF,0BAA0B;IAC1B,MAAM,oBAAoB,GAAG,IAAA,iCAAwB,EACnD,IAAI,EACJ,OAAO,CAAC,kBAAkB,CAC3B,CAAC;IACF,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACvC,oBAAoB,CAAC,OAAO,CAAC,IAAI,GAAG;YAClC,QAAQ,EAAE,iBAAiB;YAC3B,OAAO,EAAE;gBACP,GAAG,EAAE,IAAI;aACV;SACF,CAAC;QACF,IAAA,mCAA0B,EACxB,IAAI,EACJ,OAAO,CAAC,kBAAkB,EAC1B,oBAAoB,CACrB,CAAC;IACJ,CAAC;IACD,IAAA,qCAA4B,EAC1B,IAAI,EACJ,EAAE,EACF,IAAA,uBAAY,EAAC,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAC,CACrD,CAAC;IACF,qCAAqC;IACrC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;IAC7C,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAClC,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC;QACnE,MAAM,UAAU,GAAG,IAAA,aAAG,EAAC,mBAAmB,CAAC,CAAC;QAC5C,yBAAyB;QACzB,MAAM,cAAc,GAAG,iBAAO,CAAC,KAAK,CAClC,UAAU,EACV,kEAAkE,CACnE,CAAC;QACF,IAAI,cAAc,GAAG,UAAU,CAAC;QAChC,iCAAiC;QACjC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,iBAAiB,GAAG,oBAAO,CAAC,uBAAuB,CACvD,SAAS,EACT,oBAAO,CAAC,6BAA6B,CACnC;gBACE,oBAAO,CAAC,yBAAyB,CAC/B,oBAAO,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,EAC3D,SAAS,EACT,SAAS,EACT,oBAAO,CAAC,oBAAoB,CAC1B,oBAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,EACnC,SAAS,EACT;oBACE,oBAAO,CAAC,mBAAmB,CACzB,oCAAoC,CACrC;iBACF,CACF,CACF;aACF,EACD,sBAAS,CAAC,KAAK,CAChB,CACF,CAAC;YACF,cAAc,GAAG,iBAAO,CAAC,GAAG,CAC1B,cAAc,EACd,YAAY,EACZ,CAAC,IAAgB,EAAE,EAAE;gBACnB,OAAO,oBAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE;oBACpC,iBAAiB;oBACjB,GAAG,IAAI,CAAC,UAAU;iBACnB,CAAC,CAAC;YACL,CAAC,CACF,CAAC;QACJ,CAAC;QACD,0EAA0E;QAC1E,MAAM,cAAc,GAAG,iBAAO,CAAC,KAAK,CAClC,cAAc,EACd,6JAA6J,CAC9J,CAAC;QACF,mEAAmE;QACnE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,cAAc,GAAG,iBAAO,CAAC,GAAG,CAC1B,cAAc,EACd,0GAA0G,EAC1G,CAAC,IAA4B,EAAE,EAAE;gBAC/B,OAAO,oBAAO,CAAC,4BAA4B,CACzC;oBACE,oBAAO,CAAC,gBAAgB,CAAC,iCAAiC,CAAC;oBAC3D,GAAG,IAAI,CAAC,QAAQ;iBACjB,EACD,IAAI,CACL,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC;QACD,kCAAkC;QAClC,IAAI,cAAc,KAAK,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,cAAc,CAAC,WAAW,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,IAAI,CAAC,CAAC;QAChC,IAAA,qBAAY,EAAC,IAAI,kCACZ,MAAM,KACT,cAAc,kCACT,CAAC,MAAA,MAAM,CAAC,cAAc,mCAAI,EAAE,CAAC,KAChC,IAAI,EAAE;oBACJ,KAAK,EAAE,IAAI;oBACX,cAAc,EAAE;wBACd,GAAG,EAAE;4BACH,GAAG,EAAE,IAAI;yBACV;qBACF;oBACD,MAAM,EAAE;wBACN,SAAS;wBACT,kCAAkC;wBAClC,gCAAgC;qBACjC;iBACF,OAEH,CAAC;IACL,CAAC;AACH,CAAC,CAAA,CAAC;AAxHW,QAAA,eAAe,mBAwH1B"}
1
+ {"version":3,"file":"eslint.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/eslint.ts"],"names":[],"mappings":"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"}
@@ -11,12 +11,14 @@ const js_1 = require("@nx/js");
11
11
  const npm_scope_1 = require("../../utils/npm-scope");
12
12
  const ts_project_utils_1 = require("./ts-project-utils");
13
13
  const names_1 = require("../../utils/names");
14
+ const path_1 = require("path");
15
+ const format_1 = require("../../utils/format");
14
16
  /**
15
17
  * Returns details about the TS library to be created
16
18
  */
17
19
  const getTsLibDetails = (tree, schema) => {
18
20
  var _a, _b;
19
- const scope = schema.scope ? `${schema.scope}/` : (0, npm_scope_1.getNpmScopePrefix)(tree);
21
+ const scope = (0, npm_scope_1.getNpmScopePrefix)(tree);
20
22
  const normalizedName = (0, names_1.toKebabCase)(schema.name);
21
23
  const fullyQualifiedName = `${scope}${normalizedName}`;
22
24
  const dir = (0, devkit_1.joinPathFragments)((_a = (0, names_1.toKebabCase)(schema.directory)) !== null && _a !== void 0 ? _a : '.', (_b = (0, names_1.toKebabCase)(schema.subDirectory)) !== null && _b !== void 0 ? _b : normalizedName);
@@ -28,7 +30,7 @@ exports.getTsLibDetails = getTsLibDetails;
28
30
  */
29
31
  const tsLibGenerator = (tree, schema) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
30
32
  const { fullyQualifiedName, dir } = (0, exports.getTsLibDetails)(tree, schema);
31
- yield (0, js_1.libraryGenerator)(tree, Object.assign(Object.assign({}, schema), { name: fullyQualifiedName, directory: dir, skipPackageJson: true, bundler: 'tsc', linter: 'eslint', unitTestRunner: 'vitest' }));
33
+ yield (0, js_1.libraryGenerator)(tree, Object.assign(Object.assign({}, schema), { name: (0, names_1.toKebabCase)(schema.name), directory: dir, skipPackageJson: true, bundler: 'tsc', linter: 'eslint', unitTestRunner: 'vitest' }));
32
34
  // Replace with simpler sample source code
33
35
  tree.delete((0, devkit_1.joinPathFragments)(dir, 'src'));
34
36
  (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files'), (0, devkit_1.joinPathFragments)(dir), {
@@ -41,6 +43,36 @@ const tsLibGenerator = (tree, schema) => tslib_1.__awaiter(void 0, void 0, void
41
43
  dir,
42
44
  fullyQualifiedName,
43
45
  });
46
+ const projectConfiguration = (0, devkit_1.readProjectConfiguration)(tree, fullyQualifiedName);
47
+ const targets = projectConfiguration.targets;
48
+ targets['compile'] = {
49
+ executor: '@nx/js:tsc',
50
+ outputs: ['{options.outputPath}'],
51
+ options: {
52
+ outputPath: (0, devkit_1.joinPathFragments)('dist', dir),
53
+ main: (0, devkit_1.joinPathFragments)(dir, 'src/index.ts'),
54
+ tsConfig: (0, devkit_1.joinPathFragments)(dir, 'tsconfig.json'),
55
+ assets: [(0, devkit_1.joinPathFragments)(dir, '*.md')],
56
+ },
57
+ };
58
+ targets['build'] = {
59
+ dependsOn: ['lint', 'compile', 'test'],
60
+ };
61
+ targets['test'] = {
62
+ executor: '@nx/vite:test',
63
+ outputs: ['{options.reportsDirectory}'],
64
+ options: {
65
+ reportsDirectory: (0, devkit_1.joinPathFragments)((0, path_1.relative)((0, devkit_1.joinPathFragments)(tree.root, dir), tree.root), 'coverage', dir),
66
+ },
67
+ };
68
+ projectConfiguration.targets = Object.keys(targets)
69
+ .sort()
70
+ .reduce((obj, key) => {
71
+ obj[key] = targets[key];
72
+ return obj;
73
+ }, {});
74
+ (0, devkit_1.updateProjectConfiguration)(tree, fullyQualifiedName, projectConfiguration);
75
+ (0, format_1.formatFilesInSubtree)(tree);
44
76
  return () => {
45
77
  if (!schema.skipInstall) {
46
78
  (0, devkit_1.installPackagesTask)(tree);
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/generator.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAQoB;AAEpB,+BAA0C;AAC1C,qDAA0D;AAC1D,yDAAwD;AACxD,6CAAgD;AAWhD;;GAEG;AACI,MAAM,eAAe,GAAG,CAC7B,IAAU,EACV,MAA4B,EACd,EAAE;;IAChB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC;IAC1E,MAAM,cAAc,GAAG,IAAA,mBAAW,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,kBAAkB,GAAG,GAAG,KAAK,GAAG,cAAc,EAAE,CAAC;IACvD,MAAM,GAAG,GAAG,IAAA,0BAAiB,EAC3B,MAAA,IAAA,mBAAW,EAAC,MAAM,CAAC,SAAS,CAAC,mCAAI,GAAG,EACpC,MAAA,IAAA,mBAAW,EAAC,MAAM,CAAC,YAAY,CAAC,mCAAI,cAAc,CACnD,CAAC;IACF,OAAO,EAAE,GAAG,EAAE,kBAAkB,EAAE,CAAC;AACrC,CAAC,CAAC;AAZW,QAAA,eAAe,mBAY1B;AACF;;GAEG;AACI,MAAM,cAAc,GAAG,CAC5B,IAAU,EACV,MAA4B,EACA,EAAE;IAC9B,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAClE,MAAM,IAAA,qBAAgB,EAAC,IAAI,kCACtB,MAAM,KACT,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE,GAAG,EACd,eAAe,EAAE,IAAI,EACrB,OAAO,EAAE,KAAK,EACd,MAAM,EAAE,QAAQ,EAChB,cAAc,EAAE,QAAQ,IACxB,CAAC;IACH,0CAA0C;IAC1C,IAAI,CAAC,MAAM,CAAC,IAAA,0BAAiB,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAC3C,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,SAAS,EAAE,OAAO,CAAC,EACrC,IAAA,0BAAiB,EAAC,GAAG,CAAC,EACtB;QACE,kBAAkB;QAClB,SAAS,EAAE,IAAA,iCAAwB,GAAE,CAAC,IAAI;KAC3C,EACD;QACE,iBAAiB,EAAE,0BAAiB,CAAC,YAAY;KAClD,CACF,CAAC;IACF,IAAA,qCAAkB,EAAC,IAAI,EAAE;QACvB,GAAG;QACH,kBAAkB;KACnB,CAAC,CAAC;IACH,OAAO,GAAG,EAAE;QACV,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACxB,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC;AACJ,CAAC,CAAA,CAAC;AArCW,QAAA,cAAc,kBAqCzB;AACF,kBAAe,sBAAc,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/generator.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,6 @@ export interface TsLibGeneratorSchema {
9
9
  // unitTestRunner?: LibraryGeneratorSchema['unitTestRunner'];
10
10
  // TODO: test and consider exposing alternate bundlers
11
11
  // bundler?: LibraryGeneratorSchema['bundler'];
12
- scope?: string;
13
12
  subDirectory?: string;
14
13
  skipInstall?: boolean;
15
14
  }
@@ -17,12 +17,6 @@
17
17
  "x-prompt": "Which directory do you want to create the library in?",
18
18
  "x-priority": "important"
19
19
  },
20
- "scope": {
21
- "type": "string",
22
- "description": "Scope for your package, e.g. @my-company. If omitted this will be inferred",
23
- "pattern": "^@[a-z0-9-]+(?:/[a-z0-9-]+)?$",
24
- "x-prompt": "What namespace would you like your library to have? i.e: @myapi"
25
- },
26
20
  "subDirectory": {
27
21
  "type": "string",
28
22
  "description": "The sub directory the lib is placed in. By default this is the library name.",
@@ -7,7 +7,6 @@ exports.configureTsProject = void 0;
7
7
  */
8
8
  const devkit_1 = require("@nx/devkit");
9
9
  const path_1 = require("path");
10
- const generator_1 = require("../cjs-to-esm/generator");
11
10
  const npm_scope_1 = require("../../utils/npm-scope");
12
11
  const vitest_1 = require("./vitest");
13
12
  const eslint_1 = require("./eslint");
@@ -23,10 +22,10 @@ const configureTsProject = (tree, options) => {
23
22
  : (_b = tsConfig.compilerOptions) === null || _b === void 0 ? void 0 : _b.module }) }));
24
23
  });
25
24
  const outDirToRootRelativePath = (0, path_1.relative)((0, path_1.join)(tree.root, options.dir), tree.root);
26
- const distDir = (0, path_1.join)(outDirToRootRelativePath, 'dist', options.dir);
25
+ const distDir = (0, path_1.join)(outDirToRootRelativePath, 'dist');
27
26
  // Remove baseUrl and rootDir from the tsconfig.lib.json
28
27
  if (tree.exists((0, path_1.join)(options.dir, 'tsconfig.lib.json'))) {
29
- (0, devkit_1.updateJson)(tree, (0, path_1.join)(options.dir, 'tsconfig.lib.json'), (tsConfig) => (Object.assign(Object.assign({}, tsConfig), { compilerOptions: Object.assign(Object.assign({}, tsConfig.compilerOptions), { baseUrl: undefined, rootDir: undefined, outDir: distDir, tsBuildInfoFile: (0, path_1.join)(distDir, 'tsconfig.lib.tsbuildinfo') }), include: undefined })));
28
+ (0, devkit_1.updateJson)(tree, (0, path_1.join)(options.dir, 'tsconfig.lib.json'), (tsConfig) => (Object.assign(Object.assign({}, tsConfig), { compilerOptions: Object.assign(Object.assign({}, tsConfig.compilerOptions), { baseUrl: undefined, rootDir: undefined, outDir: distDir, tsBuildInfoFile: (0, path_1.join)(distDir, options.dir, 'tsconfig.lib.tsbuildinfo') }) })));
30
29
  }
31
30
  // Update root project tsconfig
32
31
  (0, devkit_1.updateJson)(tree, 'tsconfig.base.json', (tsConfig) => {
@@ -56,21 +55,7 @@ const configureTsProject = (tree, options) => {
56
55
  if (tree.exists((0, path_1.join)(options.dir, 'package.json'))) {
57
56
  tree.delete((0, path_1.join)(options.dir, 'package.json'));
58
57
  }
59
- // Convert cjs files to esm for eslint configs and source code, including root monorepo config.
60
- (0, generator_1.cjsToEsm)(tree, '.', {
61
- include: ['eslint.config.js', '**/eslint.config.js', '**/src/**/*.ts'],
62
- });
63
- // Build task should both test and lint, so move build to compile and compose build as compile + test + lint
64
- const projectConfiguration = (0, devkit_1.readProjectConfiguration)(tree, options.fullyQualifiedName);
65
- if (projectConfiguration.targets.build &&
66
- projectConfiguration.targets.build.executor === '@nx/js:tsc') {
67
- projectConfiguration.targets.compile = projectConfiguration.targets.build;
68
- projectConfiguration.targets.build = {
69
- dependsOn: ['compile', 'lint', 'test'],
70
- };
71
- (0, devkit_1.updateProjectConfiguration)(tree, options.fullyQualifiedName, projectConfiguration);
72
- }
73
- (0, eslint_1.configureEslint)(tree, options);
58
+ (0, eslint_1.configureEslint)(tree);
74
59
  (0, vitest_1.configureVitest)(tree, options);
75
60
  };
76
61
  exports.configureTsProject = configureTsProject;
@@ -1 +1 @@
1
- {"version":3,"file":"ts-project-utils.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/ts-project-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ts-project-utils.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/ts-project-utils.ts"],"names":[],"mappings":"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"}
@@ -66,13 +66,11 @@ const configureVitest = (tree, options) => {
66
66
  });
67
67
  tree.write(configPath, printer.printNode(typescript_1.default.EmitHint.Unspecified, sourceFile, originalSourceFile));
68
68
  const nxJson = (0, devkit_1.readNxJson)(tree);
69
- (0, devkit_1.updateNxJson)(tree, Object.assign(Object.assign({}, nxJson), { targetDefaults: Object.assign(Object.assign({}, ((_a = nxJson.targetDefaults) !== null && _a !== void 0 ? _a : {})), { test: {
70
- configurations: {
69
+ (0, devkit_1.updateNxJson)(tree, Object.assign(Object.assign({}, nxJson), { targetDefaults: Object.assign(Object.assign({}, ((_a = nxJson.targetDefaults) !== null && _a !== void 0 ? _a : {})), { '@nx/vite:test': Object.assign({ cache: true, inputs: ['default', '^production'], configurations: {
71
70
  'update-snapshot': {
72
71
  args: '--update',
73
72
  },
74
- },
75
- } }) }));
73
+ } }, nxJson.targetDefaults['@nx/vite:test']) }) }));
76
74
  }
77
75
  };
78
76
  exports.configureVitest = configureVitest;
@@ -1 +1 @@
1
- {"version":3,"file":"vitest.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/vitest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vitest.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/vitest.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,14 @@
4
4
  */
5
5
  import { Tree } from '@nx/devkit';
6
6
  import { NodeTransformer } from '@phenomnomnominal/tsquery';
7
- import { JsxChild, JsxClosingElement, JsxOpeningElement } from 'typescript';
7
+ import { JsxChild, JsxClosingElement, JsxOpeningElement, Node } from 'typescript';
8
8
  export declare const destructuredImport: (tree: Tree, filePath: string, variableNames: string[], from: string) => string;
9
9
  export declare const singleImport: (tree: Tree, filePath: string, variableName: string, from: string) => string;
10
10
  export declare const addStarExport: (tree: Tree, filePath: string, from: string) => void;
11
11
  export declare const replace: (tree: Tree, filePath: string, selector: string, transformer: NodeTransformer, errorIfNoMatches?: boolean) => void;
12
12
  export declare const createJsxElementFromIdentifier: (identifier: string, children: readonly JsxChild[]) => import("typescript").JsxElement;
13
13
  export declare const createJsxElement: (openingElement: JsxOpeningElement, children: readonly JsxChild[], closingElement: JsxClosingElement) => import("typescript").JsxElement;
14
+ /**
15
+ * Convert a given json object to its AST representation
16
+ */
17
+ export declare const jsonToAst: (obj: unknown) => Node;
package/src/utils/ast.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createJsxElement = exports.createJsxElementFromIdentifier = exports.replace = exports.addStarExport = exports.singleImport = exports.destructuredImport = void 0;
3
+ exports.jsonToAst = exports.createJsxElement = exports.createJsxElementFromIdentifier = exports.replace = exports.addStarExport = exports.singleImport = exports.destructuredImport = void 0;
4
4
  const tsquery_1 = require("@phenomnomnominal/tsquery");
5
5
  const typescript_1 = require("typescript");
6
6
  const assertFilePath = (tree, filePath) => {
@@ -99,4 +99,38 @@ const createJsxElementFromIdentifier = (identifier, children) => typescript_1.fa
99
99
  exports.createJsxElementFromIdentifier = createJsxElementFromIdentifier;
100
100
  const createJsxElement = (openingElement, children, closingElement) => typescript_1.factory.createJsxElement(openingElement, children, closingElement);
101
101
  exports.createJsxElement = createJsxElement;
102
+ /**
103
+ * Convert a given json object to its AST representation
104
+ */
105
+ const jsonToAst = (obj) => {
106
+ if (obj === null) {
107
+ return typescript_1.factory.createNull();
108
+ }
109
+ if (obj === undefined) {
110
+ return typescript_1.factory.createIdentifier('undefined');
111
+ }
112
+ if (typeof obj === 'string') {
113
+ return typescript_1.factory.createStringLiteral(obj);
114
+ }
115
+ if (typeof obj === 'number') {
116
+ return typescript_1.factory.createNumericLiteral(obj);
117
+ }
118
+ if (typeof obj === 'boolean') {
119
+ return obj ? typescript_1.factory.createTrue() : typescript_1.factory.createFalse();
120
+ }
121
+ if (Array.isArray(obj)) {
122
+ return typescript_1.factory.createArrayLiteralExpression(obj.map((item) => (0, exports.jsonToAst)(item)));
123
+ }
124
+ if (typeof obj === 'object') {
125
+ return typescript_1.factory.createObjectLiteralExpression(Object.entries(obj).map(([key, value]) => {
126
+ // Check if the key is a valid identifier
127
+ const isValidIdentifier = /^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(key);
128
+ return typescript_1.factory.createPropertyAssignment(isValidIdentifier
129
+ ? typescript_1.factory.createIdentifier(key)
130
+ : typescript_1.factory.createStringLiteral(key), (0, exports.jsonToAst)(value));
131
+ }));
132
+ }
133
+ throw new Error(`Unsupported type: ${typeof obj}`);
134
+ };
135
+ exports.jsonToAst = jsonToAst;
102
136
  //# sourceMappingURL=ast.js.map