@nx/js 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.
Files changed (184) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/LICENSE +22 -0
  3. package/README.md +63 -0
  4. package/babel.d.ts +10 -0
  5. package/babel.js +89 -0
  6. package/babel.js.map +1 -0
  7. package/executors.json +37 -0
  8. package/generators.json +52 -0
  9. package/migrations.json +60 -0
  10. package/package.json +64 -0
  11. package/src/executors/node/compat.d.ts +2 -0
  12. package/src/executors/node/compat.js +6 -0
  13. package/src/executors/node/compat.js.map +1 -0
  14. package/src/executors/node/node-with-require-overrides.d.ts +5 -0
  15. package/src/executors/node/node-with-require-overrides.js +20 -0
  16. package/src/executors/node/node-with-require-overrides.js.map +1 -0
  17. package/src/executors/node/node.impl.d.ts +8 -0
  18. package/src/executors/node/node.impl.js +184 -0
  19. package/src/executors/node/node.impl.js.map +1 -0
  20. package/src/executors/node/schema.d.ts +16 -0
  21. package/src/executors/node/schema.json +74 -0
  22. package/src/executors/swc/compat.d.ts +2 -0
  23. package/src/executors/swc/compat.js +6 -0
  24. package/src/executors/swc/compat.js.map +1 -0
  25. package/src/executors/swc/schema.json +147 -0
  26. package/src/executors/swc/swc.impl.d.ts +11 -0
  27. package/src/executors/swc/swc.impl.js +126 -0
  28. package/src/executors/swc/swc.impl.js.map +1 -0
  29. package/src/executors/tsc/compat.d.ts +2 -0
  30. package/src/executors/tsc/compat.js +6 -0
  31. package/src/executors/tsc/compat.js.map +1 -0
  32. package/src/executors/tsc/schema.json +156 -0
  33. package/src/executors/tsc/tsc.impl.d.ts +7 -0
  34. package/src/executors/tsc/tsc.impl.js +106 -0
  35. package/src/executors/tsc/tsc.impl.js.map +1 -0
  36. package/src/generators/convert-to-swc/convert-to-swc.d.ts +5 -0
  37. package/src/generators/convert-to-swc/convert-to-swc.js +62 -0
  38. package/src/generators/convert-to-swc/convert-to-swc.js.map +1 -0
  39. package/src/generators/convert-to-swc/schema.d.ts +4 -0
  40. package/src/generators/convert-to-swc/schema.json +36 -0
  41. package/src/generators/init/files/__fileName__ +20 -0
  42. package/src/generators/init/init.d.ts +5 -0
  43. package/src/generators/init/init.js +67 -0
  44. package/src/generators/init/init.js.map +1 -0
  45. package/src/generators/init/schema.d.ts +6 -0
  46. package/src/generators/init/schema.json +30 -0
  47. package/src/generators/library/files/jest-config/jest.config.__ext__ +24 -0
  48. package/src/generators/library/files/lib/README.md +19 -0
  49. package/src/generators/library/files/lib/src/index.ts__tmpl__ +1 -0
  50. package/src/generators/library/files/lib/src/lib/__fileName__.spec.ts__tmpl__ +7 -0
  51. package/src/generators/library/files/lib/src/lib/__fileName__.ts__tmpl__ +3 -0
  52. package/src/generators/library/files/lib/tsconfig.json__tmpl__ +14 -0
  53. package/src/generators/library/files/lib/tsconfig.lib.json__tmpl__ +10 -0
  54. package/src/generators/library/library.d.ts +15 -0
  55. package/src/generators/library/library.js +388 -0
  56. package/src/generators/library/library.js.map +1 -0
  57. package/src/generators/library/schema.json +134 -0
  58. package/src/index.d.ts +15 -0
  59. package/src/index.js +24 -0
  60. package/src/index.js.map +1 -0
  61. package/src/migrations/update-13-10-1/update-lib-swcrc-exclude.d.ts +2 -0
  62. package/src/migrations/update-13-10-1/update-lib-swcrc-exclude.js +32 -0
  63. package/src/migrations/update-13-10-1/update-lib-swcrc-exclude.js.map +1 -0
  64. package/src/migrations/update-13-8-5/update-node-executor.d.ts +2 -0
  65. package/src/migrations/update-13-8-5/update-node-executor.js +28 -0
  66. package/src/migrations/update-13-8-5/update-node-executor.js.map +1 -0
  67. package/src/migrations/update-13-8-5/update-swcrc.d.ts +2 -0
  68. package/src/migrations/update-13-8-5/update-swcrc.js +35 -0
  69. package/src/migrations/update-13-8-5/update-swcrc.js.map +1 -0
  70. package/src/migrations/update-14-0-0/exclude-jest-config-swcrc.d.ts +3 -0
  71. package/src/migrations/update-14-0-0/exclude-jest-config-swcrc.js +27 -0
  72. package/src/migrations/update-14-0-0/exclude-jest-config-swcrc.js.map +1 -0
  73. package/src/migrations/update-14-1-5/update-swcrc-path.d.ts +3 -0
  74. package/src/migrations/update-14-1-5/update-swcrc-path.js +30 -0
  75. package/src/migrations/update-14-1-5/update-swcrc-path.js.map +1 -0
  76. package/src/migrations/update-15-8-0/rename-swcrc-config.d.ts +2 -0
  77. package/src/migrations/update-15-8-0/rename-swcrc-config.js +81 -0
  78. package/src/migrations/update-15-8-0/rename-swcrc-config.js.map +1 -0
  79. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
  80. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +13 -0
  81. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js.map +1 -0
  82. package/src/utils/add-babel-inputs.d.ts +2 -0
  83. package/src/utils/add-babel-inputs.js +23 -0
  84. package/src/utils/add-babel-inputs.js.map +1 -0
  85. package/src/utils/assets/assets.d.ts +10 -0
  86. package/src/utils/assets/assets.js +38 -0
  87. package/src/utils/assets/assets.js.map +1 -0
  88. package/src/utils/assets/copy-assets-handler.d.ts +28 -0
  89. package/src/utils/assets/copy-assets-handler.js +155 -0
  90. package/src/utils/assets/copy-assets-handler.js.map +1 -0
  91. package/src/utils/assets/index.d.ts +16 -0
  92. package/src/utils/assets/index.js +31 -0
  93. package/src/utils/assets/index.js.map +1 -0
  94. package/src/utils/buildable-libs-utils.d.ts +32 -0
  95. package/src/utils/buildable-libs-utils.js +309 -0
  96. package/src/utils/buildable-libs-utils.js.map +1 -0
  97. package/src/utils/check-dependencies.d.ts +8 -0
  98. package/src/utils/check-dependencies.js +24 -0
  99. package/src/utils/check-dependencies.js.map +1 -0
  100. package/src/utils/code-frames/highlight.d.ts +1 -0
  101. package/src/utils/code-frames/highlight.js +87 -0
  102. package/src/utils/code-frames/highlight.js.map +1 -0
  103. package/src/utils/code-frames/identifiers.d.ts +5 -0
  104. package/src/utils/code-frames/identifiers.js +53 -0
  105. package/src/utils/code-frames/identifiers.js.map +1 -0
  106. package/src/utils/compiler-helper-dependency.d.ts +17 -0
  107. package/src/utils/compiler-helper-dependency.js +111 -0
  108. package/src/utils/compiler-helper-dependency.js.map +1 -0
  109. package/src/utils/generate-globs.d.ts +6 -0
  110. package/src/utils/generate-globs.js +81 -0
  111. package/src/utils/generate-globs.js.map +1 -0
  112. package/src/utils/inline.d.ts +19 -0
  113. package/src/utils/inline.js +211 -0
  114. package/src/utils/inline.js.map +1 -0
  115. package/src/utils/minimal-publish-script.d.ts +2 -0
  116. package/src/utils/minimal-publish-script.js +76 -0
  117. package/src/utils/minimal-publish-script.js.map +1 -0
  118. package/src/utils/package-json/index.d.ts +13 -0
  119. package/src/utils/package-json/index.js +34 -0
  120. package/src/utils/package-json/index.js.map +1 -0
  121. package/src/utils/package-json/update-package-json.d.ts +20 -0
  122. package/src/utils/package-json/update-package-json.js +142 -0
  123. package/src/utils/package-json/update-package-json.js.map +1 -0
  124. package/src/utils/prettier.d.ts +6 -0
  125. package/src/utils/prettier.js +38 -0
  126. package/src/utils/prettier.js.map +1 -0
  127. package/src/utils/schema.d.ts +81 -0
  128. package/src/utils/swc/add-swc-config.d.ts +3 -0
  129. package/src/utils/swc/add-swc-config.js +44 -0
  130. package/src/utils/swc/add-swc-config.js.map +1 -0
  131. package/src/utils/swc/add-swc-dependencies.d.ts +2 -0
  132. package/src/utils/swc/add-swc-dependencies.js +15 -0
  133. package/src/utils/swc/add-swc-dependencies.js.map +1 -0
  134. package/src/utils/swc/compile-swc.d.ts +13 -0
  135. package/src/utils/swc/compile-swc.js +161 -0
  136. package/src/utils/swc/compile-swc.js.map +1 -0
  137. package/src/utils/swc/get-swcrc-path.d.ts +2 -0
  138. package/src/utils/swc/get-swcrc-path.js +14 -0
  139. package/src/utils/swc/get-swcrc-path.js.map +1 -0
  140. package/src/utils/swc/inline.d.ts +2 -0
  141. package/src/utils/swc/inline.js +13 -0
  142. package/src/utils/swc/inline.js.map +1 -0
  143. package/src/utils/typescript/__mocks__/plugin-a.d.ts +1 -0
  144. package/src/utils/typescript/__mocks__/plugin-a.js +6 -0
  145. package/src/utils/typescript/__mocks__/plugin-a.js.map +1 -0
  146. package/src/utils/typescript/__mocks__/plugin-b.d.ts +1 -0
  147. package/src/utils/typescript/__mocks__/plugin-b.js +6 -0
  148. package/src/utils/typescript/__mocks__/plugin-b.js.map +1 -0
  149. package/src/utils/typescript/ast-utils.d.ts +22 -0
  150. package/src/utils/typescript/ast-utils.js +199 -0
  151. package/src/utils/typescript/ast-utils.js.map +1 -0
  152. package/src/utils/typescript/compile-typescript-files.d.ts +10 -0
  153. package/src/utils/typescript/compile-typescript-files.js +45 -0
  154. package/src/utils/typescript/compile-typescript-files.js.map +1 -0
  155. package/src/utils/typescript/create-ts-config.d.ts +17 -0
  156. package/src/utils/typescript/create-ts-config.js +48 -0
  157. package/src/utils/typescript/create-ts-config.js.map +1 -0
  158. package/src/utils/typescript/ensure-typescript.d.ts +1 -0
  159. package/src/utils/typescript/ensure-typescript.js +10 -0
  160. package/src/utils/typescript/ensure-typescript.js.map +1 -0
  161. package/src/utils/typescript/get-source-nodes.d.ts +2 -0
  162. package/src/utils/typescript/get-source-nodes.js +19 -0
  163. package/src/utils/typescript/get-source-nodes.js.map +1 -0
  164. package/src/utils/typescript/load-ts-transformers.d.ts +5 -0
  165. package/src/utils/typescript/load-ts-transformers.js +63 -0
  166. package/src/utils/typescript/load-ts-transformers.js.map +1 -0
  167. package/src/utils/typescript/print-diagnostics.d.ts +1 -0
  168. package/src/utils/typescript/print-diagnostics.js +22 -0
  169. package/src/utils/typescript/print-diagnostics.js.map +1 -0
  170. package/src/utils/typescript/run-type-check.d.ts +32 -0
  171. package/src/utils/typescript/run-type-check.js +125 -0
  172. package/src/utils/typescript/run-type-check.js.map +1 -0
  173. package/src/utils/typescript/ts-config.d.ts +6 -0
  174. package/src/utils/typescript/ts-config.js +50 -0
  175. package/src/utils/typescript/ts-config.js.map +1 -0
  176. package/src/utils/typescript/types.d.ts +18 -0
  177. package/src/utils/typescript/types.js +3 -0
  178. package/src/utils/typescript/types.js.map +1 -0
  179. package/src/utils/versions.d.ts +8 -0
  180. package/src/utils/versions.js +13 -0
  181. package/src/utils/versions.js.map +1 -0
  182. package/src/utils/watch-for-single-file-changes.d.ts +1 -0
  183. package/src/utils/watch-for-single-file-changes.js +27 -0
  184. package/src/utils/watch-for-single-file-changes.js.map +1 -0
@@ -0,0 +1,32 @@
1
+ import type { ProjectGraph, ProjectGraphProjectNode } from '@nx/devkit';
2
+ import { ProjectGraphExternalNode } from '@nx/devkit';
3
+ import type * as ts from 'typescript';
4
+ export type DependentBuildableProjectNode = {
5
+ name: string;
6
+ outputs: string[];
7
+ node: ProjectGraphProjectNode | ProjectGraphExternalNode;
8
+ };
9
+ export declare function calculateProjectDependencies(projGraph: ProjectGraph, root: string, projectName: string, targetName: string, configurationName: string, shallow?: boolean): {
10
+ target: ProjectGraphProjectNode;
11
+ dependencies: DependentBuildableProjectNode[];
12
+ nonBuildableDependencies: string[];
13
+ topLevelDependencies: DependentBuildableProjectNode[];
14
+ };
15
+ /**
16
+ * Util function to create tsconfig compilerOptions object with support for workspace libs paths.
17
+ *
18
+ *
19
+ *
20
+ * @param tsConfig String of config path or object parsed via ts.parseJsonConfigFileContent.
21
+ * @param dependencies Dependencies calculated by Nx.
22
+ */
23
+ export declare function computeCompilerOptionsPaths(tsConfig: string | ts.ParsedCommandLine, dependencies: DependentBuildableProjectNode[]): ts.MapLike<string[]>;
24
+ export declare function createTmpTsConfig(tsconfigPath: string, workspaceRoot: string, projectRoot: string, dependencies: DependentBuildableProjectNode[]): string;
25
+ export declare function checkDependentProjectsHaveBeenBuilt(root: string, projectName: string, targetName: string, projectDependencies: DependentBuildableProjectNode[]): boolean;
26
+ export declare function findMissingBuildDependencies(root: string, projectName: string, targetName: string, projectDependencies: DependentBuildableProjectNode[]): DependentBuildableProjectNode[];
27
+ export declare function updatePaths(dependencies: DependentBuildableProjectNode[], paths: Record<string, string[]>): void;
28
+ /**
29
+ * Updates the peerDependencies section in the `dist/lib/xyz/package.json` with
30
+ * the proper dependency and version
31
+ */
32
+ export declare function updateBuildableProjectPackageJsonDependencies(root: string, projectName: string, targetName: string, configurationName: string, node: ProjectGraphProjectNode, dependencies: DependentBuildableProjectNode[], typeOfDependency?: 'dependencies' | 'peerDependencies'): void;
@@ -0,0 +1,309 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateBuildableProjectPackageJsonDependencies = exports.updatePaths = exports.findMissingBuildDependencies = exports.checkDependentProjectsHaveBeenBuilt = exports.createTmpTsConfig = exports.computeCompilerOptionsPaths = exports.calculateProjectDependencies = void 0;
4
+ const path_1 = require("path");
5
+ const fileutils_1 = require("nx/src/utils/fileutils");
6
+ const devkit_1 = require("@nx/devkit");
7
+ const fs_1 = require("fs");
8
+ const output_1 = require("nx/src/utils/output");
9
+ const operators_1 = require("nx/src/project-graph/operators");
10
+ const ensure_typescript_1 = require("./typescript/ensure-typescript");
11
+ let tsModule;
12
+ function isBuildable(target, node) {
13
+ return (node.data.targets &&
14
+ node.data.targets[target] &&
15
+ node.data.targets[target].executor !== '');
16
+ }
17
+ function calculateProjectDependencies(projGraph, root, projectName, targetName, configurationName, shallow) {
18
+ const target = projGraph.nodes[projectName];
19
+ // gather the library dependencies
20
+ const nonBuildableDependencies = [];
21
+ const topLevelDependencies = [];
22
+ const collectedDeps = collectDependencies(projectName, projGraph, [], shallow);
23
+ const missing = collectedDeps.reduce((missing, { name: dep }) => {
24
+ const depNode = projGraph.nodes[dep] || projGraph.externalNodes[dep];
25
+ if (!depNode) {
26
+ missing = missing || [];
27
+ missing.push(dep);
28
+ }
29
+ return missing;
30
+ }, null);
31
+ if (missing) {
32
+ throw new Error(`Unable to find ${missing.join(', ')} in project graph.`);
33
+ }
34
+ const dependencies = collectedDeps
35
+ .map(({ name: dep, isTopLevel }) => {
36
+ let project = null;
37
+ const depNode = projGraph.nodes[dep] || projGraph.externalNodes[dep];
38
+ if (depNode.type === 'lib') {
39
+ if (isBuildable(targetName, depNode)) {
40
+ const libPackageJsonPath = (0, path_1.join)(root, depNode.data.root, 'package.json');
41
+ project = {
42
+ name: (0, fileutils_1.fileExists)(libPackageJsonPath)
43
+ ? (0, devkit_1.readJsonFile)(libPackageJsonPath).name // i.e. @workspace/mylib
44
+ : dep,
45
+ outputs: (0, devkit_1.getOutputsForTargetAndConfiguration)({
46
+ overrides: {},
47
+ target: {
48
+ project: projectName,
49
+ target: targetName,
50
+ configuration: configurationName,
51
+ },
52
+ }, depNode),
53
+ node: depNode,
54
+ };
55
+ }
56
+ else {
57
+ nonBuildableDependencies.push(dep);
58
+ }
59
+ }
60
+ else if (depNode.type === 'npm') {
61
+ project = {
62
+ name: depNode.data.packageName,
63
+ outputs: [],
64
+ node: depNode,
65
+ };
66
+ }
67
+ if (project && isTopLevel) {
68
+ topLevelDependencies.push(project);
69
+ }
70
+ return project;
71
+ })
72
+ .filter((x) => !!x);
73
+ dependencies.sort((a, b) => (a.name > b.name ? 1 : b.name > a.name ? -1 : 0));
74
+ return {
75
+ target,
76
+ dependencies,
77
+ nonBuildableDependencies,
78
+ topLevelDependencies,
79
+ };
80
+ }
81
+ exports.calculateProjectDependencies = calculateProjectDependencies;
82
+ function collectDependencies(project, projGraph, acc, shallow, areTopLevelDeps = true) {
83
+ (projGraph.dependencies[project] || []).forEach((dependency) => {
84
+ if (!acc.some((dep) => dep.name === dependency.target)) {
85
+ // Temporary skip this. Currently the set of external nodes is built from package.json, not lock file.
86
+ // As a result, some nodes might be missing. This should not cause any issues, we can just skip them.
87
+ if (dependency.target.startsWith('npm:') &&
88
+ !projGraph.externalNodes[dependency.target])
89
+ return;
90
+ acc.push({ name: dependency.target, isTopLevel: areTopLevelDeps });
91
+ const isInternalTarget = projGraph.nodes[dependency.target];
92
+ if (!shallow && isInternalTarget) {
93
+ collectDependencies(dependency.target, projGraph, acc, shallow, false);
94
+ }
95
+ }
96
+ });
97
+ return acc;
98
+ }
99
+ function readTsConfigWithRemappedPaths(tsConfig, generatedTsConfigPath, dependencies) {
100
+ const generatedTsConfig = { compilerOptions: {} };
101
+ generatedTsConfig.extends = (0, path_1.relative)((0, path_1.dirname)(generatedTsConfigPath), tsConfig);
102
+ generatedTsConfig.compilerOptions.paths = computeCompilerOptionsPaths(tsConfig, dependencies);
103
+ if (process.env.NX_VERBOSE_LOGGING_PATH_MAPPINGS === 'true') {
104
+ output_1.output.log({
105
+ title: 'TypeScript path mappings have been rewritten.',
106
+ });
107
+ console.log(JSON.stringify(generatedTsConfig.compilerOptions.paths, null, 2));
108
+ }
109
+ return generatedTsConfig;
110
+ }
111
+ /**
112
+ * Util function to create tsconfig compilerOptions object with support for workspace libs paths.
113
+ *
114
+ *
115
+ *
116
+ * @param tsConfig String of config path or object parsed via ts.parseJsonConfigFileContent.
117
+ * @param dependencies Dependencies calculated by Nx.
118
+ */
119
+ function computeCompilerOptionsPaths(tsConfig, dependencies) {
120
+ const paths = readPaths(tsConfig) || {};
121
+ updatePaths(dependencies, paths);
122
+ return paths;
123
+ }
124
+ exports.computeCompilerOptionsPaths = computeCompilerOptionsPaths;
125
+ function readPaths(tsConfig) {
126
+ var _a;
127
+ if (!tsModule) {
128
+ tsModule = (0, ensure_typescript_1.ensureTypescript)();
129
+ }
130
+ try {
131
+ let config;
132
+ if (typeof tsConfig === 'string') {
133
+ const configFile = tsModule.readConfigFile(tsConfig, tsModule.sys.readFile);
134
+ config = tsModule.parseJsonConfigFileContent(configFile.config, tsModule.sys, (0, path_1.dirname)(tsConfig));
135
+ }
136
+ else {
137
+ config = tsConfig;
138
+ }
139
+ if ((_a = config.options) === null || _a === void 0 ? void 0 : _a.paths) {
140
+ return config.options.paths;
141
+ }
142
+ else {
143
+ return null;
144
+ }
145
+ }
146
+ catch (e) {
147
+ return null;
148
+ }
149
+ }
150
+ function createTmpTsConfig(tsconfigPath, workspaceRoot, projectRoot, dependencies) {
151
+ const tmpTsConfigPath = (0, path_1.join)(workspaceRoot, 'tmp', projectRoot, 'tsconfig.generated.json');
152
+ const parsedTSConfig = readTsConfigWithRemappedPaths(tsconfigPath, tmpTsConfigPath, dependencies);
153
+ process.on('exit', () => cleanupTmpTsConfigFile(tmpTsConfigPath));
154
+ (0, devkit_1.writeJsonFile)(tmpTsConfigPath, parsedTSConfig);
155
+ return (0, path_1.join)(tmpTsConfigPath);
156
+ }
157
+ exports.createTmpTsConfig = createTmpTsConfig;
158
+ function cleanupTmpTsConfigFile(tmpTsConfigPath) {
159
+ try {
160
+ if (tmpTsConfigPath) {
161
+ (0, fs_1.unlinkSync)(tmpTsConfigPath);
162
+ }
163
+ }
164
+ catch (e) { }
165
+ }
166
+ function checkDependentProjectsHaveBeenBuilt(root, projectName, targetName, projectDependencies) {
167
+ const missing = findMissingBuildDependencies(root, projectName, targetName, projectDependencies);
168
+ if (missing.length > 0) {
169
+ console.error((0, devkit_1.stripIndents) `
170
+ It looks like all of ${projectName}'s dependencies have not been built yet:
171
+ ${missing.map((x) => ` - ${x.node.name}`).join('\n')}
172
+
173
+ You might be missing a "targetDefaults" configuration in your root nx.json (https://nx.dev/reference/project-configuration#target-defaults),
174
+ or "dependsOn" configured in ${projectName}'s project.json (https://nx.dev/reference/project-configuration#dependson)
175
+ `);
176
+ return false;
177
+ }
178
+ else {
179
+ return true;
180
+ }
181
+ }
182
+ exports.checkDependentProjectsHaveBeenBuilt = checkDependentProjectsHaveBeenBuilt;
183
+ function findMissingBuildDependencies(root, projectName, targetName, projectDependencies) {
184
+ const depLibsToBuildFirst = [];
185
+ // verify whether all dependent libraries have been built
186
+ projectDependencies.forEach((dep) => {
187
+ if (dep.node.type !== 'lib') {
188
+ return;
189
+ }
190
+ const paths = dep.outputs.map((p) => (0, path_1.join)(root, p));
191
+ if (!paths.some(fileutils_1.directoryExists)) {
192
+ depLibsToBuildFirst.push(dep);
193
+ }
194
+ });
195
+ return depLibsToBuildFirst;
196
+ }
197
+ exports.findMissingBuildDependencies = findMissingBuildDependencies;
198
+ function updatePaths(dependencies, paths) {
199
+ const pathsKeys = Object.keys(paths);
200
+ // For each registered dependency
201
+ dependencies.forEach((dep) => {
202
+ var _a;
203
+ // If there are outputs
204
+ if (dep.outputs && dep.outputs.length > 0) {
205
+ // Directly map the dependency name to the output paths (dist/packages/..., etc.)
206
+ paths[dep.name] = dep.outputs;
207
+ // check for secondary entrypoints
208
+ // For each registered path
209
+ for (const path of pathsKeys) {
210
+ const nestedName = `${dep.name}/`;
211
+ // If the path points to the current dependency and is nested (/)
212
+ if (path.startsWith(nestedName)) {
213
+ const nestedPart = path.slice(nestedName.length);
214
+ // Bind secondary endpoints for ng-packagr projects
215
+ let mappedPaths = dep.outputs.map((output) => `${output}/${nestedPart}`);
216
+ // Get the dependency's package name
217
+ const { root } = (((_a = dep.node) === null || _a === void 0 ? void 0 : _a.data) || {});
218
+ if (root) {
219
+ // Update nested mappings to point to the dependency's output paths
220
+ mappedPaths = mappedPaths.concat(paths[path].flatMap((path) => dep.outputs.map((output) => path.replace(root, output))));
221
+ }
222
+ paths[path] = mappedPaths;
223
+ }
224
+ }
225
+ }
226
+ });
227
+ }
228
+ exports.updatePaths = updatePaths;
229
+ /**
230
+ * Updates the peerDependencies section in the `dist/lib/xyz/package.json` with
231
+ * the proper dependency and version
232
+ */
233
+ function updateBuildableProjectPackageJsonDependencies(root, projectName, targetName, configurationName, node, dependencies, typeOfDependency = 'dependencies') {
234
+ const outputs = (0, devkit_1.getOutputsForTargetAndConfiguration)({
235
+ overrides: {},
236
+ target: {
237
+ project: projectName,
238
+ target: targetName,
239
+ configuration: configurationName,
240
+ },
241
+ }, node);
242
+ const packageJsonPath = `${outputs[0]}/package.json`;
243
+ let packageJson;
244
+ let workspacePackageJson;
245
+ try {
246
+ packageJson = (0, devkit_1.readJsonFile)(packageJsonPath);
247
+ workspacePackageJson = (0, devkit_1.readJsonFile)(`${root}/package.json`);
248
+ }
249
+ catch (e) {
250
+ // cannot find or invalid package.json
251
+ return;
252
+ }
253
+ packageJson.dependencies = packageJson.dependencies || {};
254
+ packageJson.peerDependencies = packageJson.peerDependencies || {};
255
+ let updatePackageJson = false;
256
+ dependencies.forEach((entry) => {
257
+ var _a;
258
+ const packageName = (0, operators_1.isNpmProject)(entry.node)
259
+ ? entry.node.data.packageName
260
+ : entry.name;
261
+ if (!hasDependency(packageJson, 'dependencies', packageName) &&
262
+ !hasDependency(packageJson, 'devDependencies', packageName) &&
263
+ !hasDependency(packageJson, 'peerDependencies', packageName)) {
264
+ try {
265
+ let depVersion;
266
+ if (entry.node.type === 'lib') {
267
+ const outputs = (0, devkit_1.getOutputsForTargetAndConfiguration)({
268
+ overrides: {},
269
+ target: {
270
+ project: projectName,
271
+ target: targetName,
272
+ configuration: configurationName,
273
+ },
274
+ }, entry.node);
275
+ const depPackageJsonPath = (0, path_1.join)(root, outputs[0], 'package.json');
276
+ depVersion = (0, devkit_1.readJsonFile)(depPackageJsonPath).version;
277
+ packageJson[typeOfDependency][packageName] = depVersion;
278
+ }
279
+ else if ((0, operators_1.isNpmProject)(entry.node)) {
280
+ // If an npm dep is part of the workspace devDependencies, do not include it the library
281
+ if (!!((_a = workspacePackageJson.devDependencies) === null || _a === void 0 ? void 0 : _a[entry.node.data.packageName])) {
282
+ return;
283
+ }
284
+ depVersion = entry.node.data.version;
285
+ packageJson[typeOfDependency][entry.node.data.packageName] =
286
+ depVersion;
287
+ }
288
+ updatePackageJson = true;
289
+ }
290
+ catch (e) {
291
+ // skip if cannot find package.json
292
+ }
293
+ }
294
+ });
295
+ if (updatePackageJson) {
296
+ (0, devkit_1.writeJsonFile)(packageJsonPath, packageJson);
297
+ }
298
+ }
299
+ exports.updateBuildableProjectPackageJsonDependencies = updateBuildableProjectPackageJsonDependencies;
300
+ // verify whether the package.json already specifies the dep
301
+ function hasDependency(outputJson, depConfigName, packageName) {
302
+ if (outputJson[depConfigName]) {
303
+ return outputJson[depConfigName][packageName];
304
+ }
305
+ else {
306
+ return false;
307
+ }
308
+ }
309
+ //# sourceMappingURL=buildable-libs-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildable-libs-utils.js","sourceRoot":"","sources":["../../../../../packages/js/src/utils/buildable-libs-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { ExecutorContext, ProjectGraphProjectNode } from '@nx/devkit';
2
+ import { DependentBuildableProjectNode } from './buildable-libs-utils';
3
+ export declare function checkDependencies(context: ExecutorContext, tsConfigPath: string): {
4
+ tmpTsConfig: string | null;
5
+ projectRoot: string;
6
+ target: ProjectGraphProjectNode;
7
+ dependencies: DependentBuildableProjectNode[];
8
+ };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkDependencies = void 0;
4
+ const buildable_libs_utils_1 = require("./buildable-libs-utils");
5
+ function checkDependencies(context, tsConfigPath) {
6
+ const { target, dependencies } = (0, buildable_libs_utils_1.calculateProjectDependencies)(context.projectGraph, context.root, context.projectName, context.targetName, context.configurationName);
7
+ const projectRoot = target.data.root;
8
+ if (dependencies.length > 0) {
9
+ return {
10
+ tmpTsConfig: (0, buildable_libs_utils_1.createTmpTsConfig)(tsConfigPath, context.root, projectRoot, dependencies),
11
+ projectRoot,
12
+ target,
13
+ dependencies,
14
+ };
15
+ }
16
+ return {
17
+ tmpTsConfig: null,
18
+ projectRoot,
19
+ target,
20
+ dependencies,
21
+ };
22
+ }
23
+ exports.checkDependencies = checkDependencies;
24
+ //# sourceMappingURL=check-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-dependencies.js","sourceRoot":"","sources":["../../../../../packages/js/src/utils/check-dependencies.ts"],"names":[],"mappings":";;;AACA,iEAIgC;AAEhC,SAAgB,iBAAiB,CAC/B,OAAwB,EACxB,YAAoB;IAOpB,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAA,mDAA4B,EAC3D,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,iBAAiB,CAC1B,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;IAErC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,OAAO;YACL,WAAW,EAAE,IAAA,wCAAiB,EAC5B,YAAY,EACZ,OAAO,CAAC,IAAI,EACZ,WAAW,EACX,YAAY,CACb;YACD,WAAW;YACX,MAAM;YACN,YAAY;SACb,CAAC;KACH;IAED,OAAO;QACL,WAAW,EAAE,IAAI;QACjB,WAAW;QACX,MAAM;QACN,YAAY;KACb,CAAC;AACJ,CAAC;AAtCD,8CAsCC"}
@@ -0,0 +1 @@
1
+ export declare function highlight(code: string): string;
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.highlight = void 0;
4
+ // Adapted from https://raw.githubusercontent.com/babel/babel/4108524/packages/babel-highlight/src/index.js
5
+ const jsTokens = require("js-tokens");
6
+ const chalk = require("chalk");
7
+ const identifiers_1 = require("./identifiers");
8
+ /**
9
+ * Chalk styles for token types.
10
+ */
11
+ function getDefs(chalk) {
12
+ return {
13
+ keyword: chalk.cyan,
14
+ capitalized: chalk.yellow,
15
+ jsx_tag: chalk.yellow,
16
+ punctuator: chalk.yellow,
17
+ // bracket: intentionally omitted.
18
+ number: chalk.magenta,
19
+ string: chalk.green,
20
+ regex: chalk.magenta,
21
+ comment: chalk.grey,
22
+ invalid: chalk.white.bgRed.bold,
23
+ };
24
+ }
25
+ /**
26
+ * RegExp to test for newlines in terminal.
27
+ */
28
+ const NEWLINE = /\r\n|[\n\r\u2028\u2029]/;
29
+ /**
30
+ * RegExp to test for what seems to be a JSX tag name.
31
+ */
32
+ const JSX_TAG = /^[a-z][\w-]*$/i;
33
+ /**
34
+ * RegExp to test for the three types of brackets.
35
+ */
36
+ const BRACKET = /^[()[\]{}]$/;
37
+ /**
38
+ * Get the type of token, specifying punctuator type.
39
+ */
40
+ function getTokenType(match) {
41
+ const [offset, text] = match.slice(-2);
42
+ const token = jsTokens.matchToToken(match);
43
+ if (token.type === 'name') {
44
+ if ((0, identifiers_1.isKeyword)(token.value) || (0, identifiers_1.isReservedWord)(token.value)) {
45
+ return 'keyword';
46
+ }
47
+ if (JSX_TAG.test(token.value) &&
48
+ (text[offset - 1] === '<' || text.slice(offset - 2, 2) == '</')) {
49
+ return 'jsx_tag';
50
+ }
51
+ if (token.value[0] !== token.value[0].toLowerCase()) {
52
+ return 'capitalized';
53
+ }
54
+ }
55
+ if (token.type === 'punctuator' && BRACKET.test(token.value)) {
56
+ return 'bracket';
57
+ }
58
+ if (token.type === 'invalid' &&
59
+ (token.value === '@' || token.value === '#')) {
60
+ return 'punctuator';
61
+ }
62
+ return token.type;
63
+ }
64
+ /**
65
+ * Highlight `text` using the token definitions in `defs`.
66
+ */
67
+ function highlightTokens(defs, text) {
68
+ return text.replace(jsTokens.default, function (...args) {
69
+ const type = getTokenType(args);
70
+ const colorize = defs[type];
71
+ if (colorize) {
72
+ return args[0]
73
+ .split(NEWLINE)
74
+ .map((str) => colorize(str))
75
+ .join('\n');
76
+ }
77
+ else {
78
+ return args[0];
79
+ }
80
+ });
81
+ }
82
+ function highlight(code) {
83
+ const defs = getDefs(chalk);
84
+ return highlightTokens(defs, code);
85
+ }
86
+ exports.highlight = highlight;
87
+ //# sourceMappingURL=highlight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"highlight.js","sourceRoot":"","sources":["../../../../../../packages/js/src/utils/code-frames/highlight.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Checks if word is a reserved word in non-strict mode
3
+ */
4
+ export declare function isReservedWord(word: string, inModule?: boolean): boolean;
5
+ export declare function isKeyword(word: string): boolean;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isKeyword = exports.isReservedWord = void 0;
4
+ // Adapted from https://raw.githubusercontent.com/babel/babel/e39b508030a9f696584d21b0eb9677498e3ca231/packages/babel-helper-validator-identifier/src/keyword.js
5
+ const keywords = new Set([
6
+ 'break',
7
+ 'case',
8
+ 'catch',
9
+ 'continue',
10
+ 'debugger',
11
+ 'default',
12
+ 'do',
13
+ 'else',
14
+ 'finally',
15
+ 'for',
16
+ 'function',
17
+ 'if',
18
+ 'return',
19
+ 'switch',
20
+ 'throw',
21
+ 'try',
22
+ 'var',
23
+ 'const',
24
+ 'while',
25
+ 'with',
26
+ 'new',
27
+ 'this',
28
+ 'super',
29
+ 'class',
30
+ 'extends',
31
+ 'export',
32
+ 'import',
33
+ 'null',
34
+ 'true',
35
+ 'false',
36
+ 'in',
37
+ 'instanceof',
38
+ 'typeof',
39
+ 'void',
40
+ 'delete',
41
+ ]);
42
+ /**
43
+ * Checks if word is a reserved word in non-strict mode
44
+ */
45
+ function isReservedWord(word, inModule) {
46
+ return (inModule && word === 'await') || word === 'enum';
47
+ }
48
+ exports.isReservedWord = isReservedWord;
49
+ function isKeyword(word) {
50
+ return keywords.has(word);
51
+ }
52
+ exports.isKeyword = isKeyword;
53
+ //# sourceMappingURL=identifiers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identifiers.js","sourceRoot":"","sources":["../../../../../../packages/js/src/utils/code-frames/identifiers.ts"],"names":[],"mappings":";;;AAAA,gKAAgK;AAChK,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC;IACvB,OAAO;IACP,MAAM;IACN,OAAO;IACP,UAAU;IACV,UAAU;IACV,SAAS;IACT,IAAI;IACJ,MAAM;IACN,SAAS;IACT,KAAK;IACL,UAAU;IACV,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,KAAK;IACL,KAAK;IACL,OAAO;IACP,OAAO;IACP,MAAM;IACN,KAAK;IACL,MAAM;IACN,OAAO;IACP,OAAO;IACP,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,OAAO;IACP,IAAI;IACJ,YAAY;IACZ,QAAQ;IACR,MAAM;IACN,QAAQ;CACT,CAAC,CAAC;AAEH;;GAEG;AACH,SAAgB,cAAc,CAAC,IAAY,EAAE,QAAkB;IAC7D,OAAO,CAAC,QAAQ,IAAI,IAAI,KAAK,OAAO,CAAC,IAAI,IAAI,KAAK,MAAM,CAAC;AAC3D,CAAC;AAFD,wCAEC;AAED,SAAgB,SAAS,CAAC,IAAY;IACpC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAFD,8BAEC"}
@@ -0,0 +1,17 @@
1
+ import { ProjectGraph, ProjectGraphDependency } from '@nx/devkit';
2
+ import { DependentBuildableProjectNode } from './buildable-libs-utils';
3
+ export declare enum HelperDependency {
4
+ tsc = "npm:tslib",
5
+ swc = "npm:@swc/helpers"
6
+ }
7
+ /**
8
+ * Check and return a DependencyNode for the compiler's external helpers npm package. Return "null"
9
+ * if it doesn't need it or it cannot be found in the Project Graph
10
+ *
11
+ * @param {HelperDependency} helperDependency
12
+ * @param {string} configPath
13
+ * @param {DependentBuildableProjectNode[]} dependencies
14
+ * @param {boolean=false} returnDependencyIfFound
15
+ */
16
+ export declare function getHelperDependency(helperDependency: HelperDependency, configPath: string, dependencies: DependentBuildableProjectNode[], projectGraph: ProjectGraph, returnDependencyIfFound?: boolean): DependentBuildableProjectNode | null;
17
+ export declare function getHelperDependenciesFromProjectGraph(contextRoot: string, sourceProject: string, projectGraph: ProjectGraph): ProjectGraphDependency[];