@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,142 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getUpdatedPackageJsonContent = exports.updatePackageJson = void 0;
4
+ const lock_file_1 = require("nx/src/plugins/js/lock-file/lock-file");
5
+ const create_package_json_1 = require("nx/src/plugins/js/package-json/create-package-json");
6
+ const devkit_1 = require("@nx/devkit");
7
+ const path_1 = require("path");
8
+ const fs_extra_1 = require("fs-extra");
9
+ const operators_1 = require("nx/src/project-graph/operators");
10
+ const fileutils_1 = require("nx/src/utils/fileutils");
11
+ const fs_1 = require("fs");
12
+ function getMainFileDirRelativeToProjectRoot(main, projectRoot) {
13
+ const mainFileDir = (0, path_1.dirname)(main);
14
+ const relativeDir = (0, devkit_1.normalizePath)((0, path_1.relative)(projectRoot, mainFileDir));
15
+ return relativeDir === '' ? `./` : `./${relativeDir}/`;
16
+ }
17
+ function updatePackageJson(options, context, target, dependencies) {
18
+ let packageJson;
19
+ if (options.updateBuildableProjectDepsInPackageJson) {
20
+ packageJson = (0, create_package_json_1.createPackageJson)(context.projectName, context.projectGraph, {
21
+ target: context.targetName,
22
+ root: context.root,
23
+ // By default we remove devDependencies since this is a production build.
24
+ isProduction: true,
25
+ });
26
+ if (options.excludeLibsInPackageJson) {
27
+ dependencies = dependencies.filter((dep) => dep.node.type !== 'lib');
28
+ }
29
+ addMissingDependencies(packageJson, context, dependencies, options.buildableProjectDepsInPackageJsonType);
30
+ }
31
+ else {
32
+ const pathToPackageJson = (0, path_1.join)(context.root, options.projectRoot, 'package.json');
33
+ packageJson = (0, fileutils_1.fileExists)(pathToPackageJson)
34
+ ? (0, devkit_1.readJsonFile)(pathToPackageJson)
35
+ : { name: context.projectName, version: '0.0.1' };
36
+ }
37
+ // update package specific settings
38
+ packageJson = getUpdatedPackageJsonContent(packageJson, options);
39
+ // save files
40
+ (0, devkit_1.writeJsonFile)(`${options.outputPath}/package.json`, packageJson);
41
+ if (options.generateLockfile) {
42
+ const lockFile = (0, lock_file_1.createLockFile)(packageJson);
43
+ (0, fs_extra_1.writeFileSync)(`${options.outputPath}/${(0, lock_file_1.getLockFileName)()}`, lockFile, {
44
+ encoding: 'utf-8',
45
+ });
46
+ }
47
+ }
48
+ exports.updatePackageJson = updatePackageJson;
49
+ function addMissingDependencies(packageJson, { projectName, targetName, configurationName, root }, dependencies, propType = 'dependencies') {
50
+ const workspacePackageJson = (0, devkit_1.readJsonFile)((0, devkit_1.joinPathFragments)(devkit_1.workspaceRoot, 'package.json'));
51
+ dependencies.forEach((entry) => {
52
+ var _a, _b, _c, _d, _e, _f, _g, _h;
53
+ if ((0, operators_1.isNpmProject)(entry.node)) {
54
+ const { packageName, version } = entry.node.data;
55
+ if (((_a = packageJson.dependencies) === null || _a === void 0 ? void 0 : _a[packageName]) ||
56
+ ((_b = packageJson.devDependencies) === null || _b === void 0 ? void 0 : _b[packageName]) ||
57
+ ((_c = packageJson.peerDependencies) === null || _c === void 0 ? void 0 : _c[packageName])) {
58
+ return;
59
+ }
60
+ if ((_d = workspacePackageJson.devDependencies) === null || _d === void 0 ? void 0 : _d[packageName]) {
61
+ return;
62
+ }
63
+ (_e = packageJson[propType]) !== null && _e !== void 0 ? _e : (packageJson[propType] = {});
64
+ packageJson[propType][packageName] = version;
65
+ }
66
+ else {
67
+ const packageName = entry.name;
68
+ if (!((_f = packageJson.dependencies) === null || _f === void 0 ? void 0 : _f[packageName]) &&
69
+ !((_g = packageJson.peerDependencies) === null || _g === void 0 ? void 0 : _g[packageName])) {
70
+ const outputs = (0, devkit_1.getOutputsForTargetAndConfiguration)({
71
+ overrides: {},
72
+ target: {
73
+ project: projectName,
74
+ target: targetName,
75
+ configuration: configurationName,
76
+ },
77
+ }, entry.node);
78
+ const depPackageJsonPath = (0, path_1.join)(root, outputs[0], 'package.json');
79
+ if ((0, fs_1.existsSync)(depPackageJsonPath)) {
80
+ const version = (0, devkit_1.readJsonFile)(depPackageJsonPath).version;
81
+ (_h = packageJson[propType]) !== null && _h !== void 0 ? _h : (packageJson[propType] = {});
82
+ packageJson[propType][packageName] = version;
83
+ }
84
+ }
85
+ }
86
+ });
87
+ }
88
+ function getUpdatedPackageJsonContent(packageJson, options) {
89
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
90
+ var _o, _p;
91
+ // Default is CJS unless esm is explicitly passed.
92
+ const hasCjsFormat = !options.format || ((_a = options.format) === null || _a === void 0 ? void 0 : _a.includes('cjs'));
93
+ const hasEsmFormat = (_b = options.format) === null || _b === void 0 ? void 0 : _b.includes('esm');
94
+ const mainFile = (0, path_1.basename)(options.main).replace(/\.[tj]s$/, '');
95
+ const relativeMainFileDir = getMainFileDirRelativeToProjectRoot(options.main, options.projectRoot);
96
+ const typingsFile = `${relativeMainFileDir}${mainFile}.d.ts`;
97
+ const exports = typeof packageJson.exports === 'string'
98
+ ? packageJson.exports
99
+ : Object.assign({ '.': {} }, packageJson.exports);
100
+ const mainJsFile = (_c = options.outputFileName) !== null && _c !== void 0 ? _c : `${relativeMainFileDir}${mainFile}.js`;
101
+ if (hasEsmFormat) {
102
+ // Unofficial field for backwards compat.
103
+ (_d = packageJson.module) !== null && _d !== void 0 ? _d : (packageJson.module = mainJsFile);
104
+ if (!hasCjsFormat) {
105
+ packageJson.type = 'module';
106
+ (_e = packageJson.main) !== null && _e !== void 0 ? _e : (packageJson.main = mainJsFile);
107
+ }
108
+ if (typeof exports !== 'string') {
109
+ if (typeof exports['.'] !== 'string') {
110
+ (_f = (_o = exports['.'])['import']) !== null && _f !== void 0 ? _f : (_o['import'] = mainJsFile);
111
+ }
112
+ else if (!hasCjsFormat) {
113
+ (_g = exports['.']) !== null && _g !== void 0 ? _g : (exports['.'] = mainJsFile);
114
+ }
115
+ }
116
+ }
117
+ // CJS output may have .cjs or .js file extensions.
118
+ // Bundlers like rollup and esbuild supports .cjs for CJS and .js for ESM.
119
+ // Bundlers/Compilers like webpack, tsc, swc do not have different file extensions.
120
+ if (hasCjsFormat) {
121
+ const { dir, name } = (0, path_1.parse)(mainJsFile);
122
+ const cjsMain = `${dir ? dir : '.'}/${name}${(_h = options.outputFileExtensionForCjs) !== null && _h !== void 0 ? _h : '.js'}`;
123
+ (_j = packageJson.main) !== null && _j !== void 0 ? _j : (packageJson.main = cjsMain);
124
+ if (typeof exports !== 'string') {
125
+ if (typeof exports['.'] !== 'string') {
126
+ (_k = (_p = exports['.'])['require']) !== null && _k !== void 0 ? _k : (_p['require'] = cjsMain);
127
+ }
128
+ else if (!hasEsmFormat) {
129
+ (_l = exports['.']) !== null && _l !== void 0 ? _l : (exports['.'] = cjsMain);
130
+ }
131
+ }
132
+ }
133
+ if (options.generateExportsField) {
134
+ packageJson.exports = exports;
135
+ }
136
+ if (!options.skipTypings) {
137
+ packageJson.types = (_m = packageJson.types) !== null && _m !== void 0 ? _m : typingsFile;
138
+ }
139
+ return packageJson;
140
+ }
141
+ exports.getUpdatedPackageJsonContent = getUpdatedPackageJsonContent;
142
+ //# sourceMappingURL=update-package-json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-package-json.js","sourceRoot":"","sources":["../../../../../../packages/js/src/utils/package-json/update-package-json.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { Options } from 'prettier';
2
+ export interface ExistingPrettierConfig {
3
+ sourceFilepath: string;
4
+ config: Options;
5
+ }
6
+ export declare function resolveUserExistingPrettierConfig(): Promise<ExistingPrettierConfig | null>;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveUserExistingPrettierConfig = void 0;
4
+ const tslib_1 = require("tslib");
5
+ let prettier;
6
+ try {
7
+ prettier = require('prettier');
8
+ }
9
+ catch (_a) { }
10
+ function resolveUserExistingPrettierConfig() {
11
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
12
+ if (!prettier) {
13
+ return null;
14
+ }
15
+ try {
16
+ const filepath = yield prettier.resolveConfigFile();
17
+ if (!filepath) {
18
+ return null;
19
+ }
20
+ const config = yield prettier.resolveConfig(process.cwd(), {
21
+ useCache: false,
22
+ config: filepath,
23
+ });
24
+ if (!config) {
25
+ return null;
26
+ }
27
+ return {
28
+ sourceFilepath: filepath,
29
+ config: config,
30
+ };
31
+ }
32
+ catch (_a) {
33
+ return null;
34
+ }
35
+ });
36
+ }
37
+ exports.resolveUserExistingPrettierConfig = resolveUserExistingPrettierConfig;
38
+ //# sourceMappingURL=prettier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prettier.js","sourceRoot":"","sources":["../../../../../packages/js/src/utils/prettier.ts"],"names":[],"mappings":";;;;AAEA,IAAI,QAAmC,CAAC;AACxC,IAAI;IACF,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAChC;AAAC,WAAM,GAAE;AAOV,SAAsB,iCAAiC;;QACrD,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,IAAI,CAAC;SACb;QACD,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,iBAAiB,EAAE,CAAC;YACpD,IAAI,CAAC,QAAQ,EAAE;gBACb,OAAO,IAAI,CAAC;aACb;YAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE;gBACzD,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,EAAE;gBACX,OAAO,IAAI,CAAC;aACb;YAED,OAAO;gBACL,cAAc,EAAE,QAAQ;gBACxB,MAAM,EAAE,MAAM;aACf,CAAC;SACH;QAAC,WAAM;YACN,OAAO,IAAI,CAAC;SACb;IACH,CAAC;CAAA;AAzBD,8EAyBC"}
@@ -0,0 +1,81 @@
1
+ // nx-ignore-next-line
2
+ const { Linter } = require('@nx/linter'); // use require to import to avoid circular dependency
3
+ import type { AssetGlob, FileInputOutput } from './assets/assets';
4
+ import { TransformerEntry } from './typescript/types';
5
+
6
+ export type Compiler = 'tsc' | 'swc';
7
+ export type Bundler = 'swc' | 'tsc' | 'rollup' | 'vite' | 'esbuild' | 'none';
8
+
9
+ export interface LibraryGeneratorSchema {
10
+ name: string;
11
+ directory?: string;
12
+ skipFormat?: boolean;
13
+ tags?: string;
14
+ simpleModuleName?: boolean;
15
+ skipTsConfig?: boolean;
16
+ includeBabelRc?: boolean;
17
+ unitTestRunner?: 'jest' | 'vitest' | 'none';
18
+ linter?: Linter;
19
+ testEnvironment?: 'jsdom' | 'node';
20
+ importPath?: string;
21
+ js?: boolean;
22
+ pascalCaseFiles?: boolean;
23
+ strict?: boolean;
24
+ publishable?: boolean;
25
+ buildable?: boolean;
26
+ setParserOptionsProject?: boolean;
27
+ config?: 'workspace' | 'project' | 'npm-scripts';
28
+ compiler?: Compiler;
29
+ bundler?: Bundler;
30
+ skipTypeCheck?: boolean;
31
+ minimal?: boolean;
32
+ rootProject?: boolean;
33
+ }
34
+
35
+ export interface ExecutorOptions {
36
+ assets: Array<AssetGlob | string>;
37
+ main: string;
38
+ rootDir?: string;
39
+ outputPath: string;
40
+ tsConfig: string;
41
+ swcrc?: string;
42
+ watch: boolean;
43
+ clean?: boolean;
44
+ transformers: TransformerEntry[];
45
+ updateBuildableProjectDepsInPackageJson?: boolean;
46
+ buildableProjectDepsInPackageJsonType?: 'dependencies' | 'peerDependencies';
47
+ external?: 'all' | 'none' | string[];
48
+ externalBuildTargets?: string[];
49
+ generateLockfile?: boolean;
50
+ }
51
+
52
+ export interface NormalizedExecutorOptions extends ExecutorOptions {
53
+ root?: string;
54
+ sourceRoot?: string;
55
+ projectRoot: string;
56
+ mainOutputPath: string;
57
+ files: Array<FileInputOutput>;
58
+ }
59
+
60
+ export interface SwcExecutorOptions extends ExecutorOptions {
61
+ skipTypeCheck?: boolean;
62
+ /**
63
+ * @deprecated
64
+ */
65
+ swcExclude?: string[];
66
+ }
67
+
68
+ export interface SwcCliOptions {
69
+ srcPath: string;
70
+ destPath: string;
71
+ swcrcPath: string;
72
+ swcCwd: string;
73
+ }
74
+
75
+ export interface NormalizedSwcExecutorOptions
76
+ extends NormalizedExecutorOptions {
77
+ originalProjectRoot: string;
78
+ swcExclude: string[];
79
+ skipTypeCheck: boolean;
80
+ swcCliOptions: SwcCliOptions;
81
+ }
@@ -0,0 +1,3 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export declare const defaultExclude: string[];
3
+ export declare function addSwcConfig(tree: Tree, projectDir: string, type?: 'commonjs' | 'es6'): void;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addSwcConfig = exports.defaultExclude = void 0;
4
+ const path_1 = require("path");
5
+ exports.defaultExclude = [
6
+ 'jest.config.ts',
7
+ '.*\\.spec.tsx?$',
8
+ '.*\\.test.tsx?$',
9
+ './src/jest-setup.ts$',
10
+ './**/jest-setup.ts$',
11
+ '.*.js$',
12
+ ];
13
+ const swcOptionsString = (type = 'commonjs') => `{
14
+ "jsc": {
15
+ "target": "es2017",
16
+ "parser": {
17
+ "syntax": "typescript",
18
+ "decorators": true,
19
+ "dynamicImport": true
20
+ },
21
+ "transform": {
22
+ "decoratorMetadata": true,
23
+ "legacyDecorator": true
24
+ },
25
+ "keepClassNames": true,
26
+ "externalHelpers": true,
27
+ "loose": true
28
+ },
29
+ "module": {
30
+ "type": "${type}",
31
+ "strict": true,
32
+ "noInterop": true
33
+ },
34
+ "sourceMaps": true,
35
+ "exclude": ${JSON.stringify(exports.defaultExclude)}
36
+ }`;
37
+ function addSwcConfig(tree, projectDir, type = 'commonjs') {
38
+ const swcrcPath = (0, path_1.join)(projectDir, '.swcrc');
39
+ if (tree.exists(swcrcPath))
40
+ return;
41
+ tree.write(swcrcPath, swcOptionsString(type));
42
+ }
43
+ exports.addSwcConfig = addSwcConfig;
44
+ //# sourceMappingURL=add-swc-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-swc-config.js","sourceRoot":"","sources":["../../../../../../packages/js/src/utils/swc/add-swc-config.ts"],"names":[],"mappings":";;;AAGA,+BAA4B;AAEf,QAAA,cAAc,GAAG;IAC5B,gBAAgB;IAChB,iBAAiB;IACjB,iBAAiB;IACjB,sBAAsB;IACtB,qBAAqB;IACrB,QAAQ;CACT,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,OAA2B,UAAU,EAAE,EAAE,CAAC;;;;;;;;;;;;;;;;;eAiBrD,IAAI;;;;;eAKJ,IAAI,CAAC,SAAS,CAAC,sBAAc,CAAC;EAC3C,CAAC;AAEH,SAAgB,YAAY,CAC1B,IAAU,EACV,UAAkB,EAClB,OAA2B,UAAU;IAErC,MAAM,SAAS,GAAG,IAAA,WAAI,EAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC7C,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QAAE,OAAO;IACnC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;AAChD,CAAC;AARD,oCAQC"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export declare function addSwcDependencies(tree: Tree): import("@nx/devkit").GeneratorCallback;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addSwcDependencies = void 0;
4
+ const devkit_1 = require("@nx/devkit");
5
+ const versions_1 = require("../versions");
6
+ function addSwcDependencies(tree) {
7
+ return (0, devkit_1.addDependenciesToPackageJson)(tree, {
8
+ '@swc/helpers': versions_1.swcHelpersVersion,
9
+ }, {
10
+ '@swc/core': versions_1.swcCoreVersion,
11
+ '@swc/cli': versions_1.swcCliVersion,
12
+ });
13
+ }
14
+ exports.addSwcDependencies = addSwcDependencies;
15
+ //# sourceMappingURL=add-swc-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-swc-dependencies.js","sourceRoot":"","sources":["../../../../../../packages/js/src/utils/swc/add-swc-dependencies.ts"],"names":[],"mappings":";;;AAAA,uCAAgE;AAChE,0CAA+E;AAE/E,SAAgB,kBAAkB,CAAC,IAAU;IAC3C,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ;QACE,cAAc,EAAE,4BAAiB;KAClC,EACD;QACE,WAAW,EAAE,yBAAc;QAC3B,UAAU,EAAE,wBAAa;KAC1B,CACF,CAAC;AACJ,CAAC;AAXD,gDAWC"}
@@ -0,0 +1,13 @@
1
+ import { ExecutorContext } from '@nx/devkit';
2
+ import { NormalizedSwcExecutorOptions } from '../schema';
3
+ export declare function compileSwc(context: ExecutorContext, normalizedOptions: NormalizedSwcExecutorOptions, postCompilationCallback: () => Promise<void>): Promise<{
4
+ success: boolean;
5
+ outfile?: undefined;
6
+ } | {
7
+ success: boolean;
8
+ outfile: string;
9
+ }>;
10
+ export declare function compileSwcWatch(context: ExecutorContext, normalizedOptions: NormalizedSwcExecutorOptions, postCompilationCallback: () => Promise<void>): AsyncGenerator<{
11
+ success: boolean;
12
+ outfile: string;
13
+ }, any, undefined>;
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.compileSwcWatch = exports.compileSwc = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const devkit_1 = require("@nx/devkit");
6
+ const child_process_1 = require("child_process");
7
+ const fs_extra_1 = require("fs-extra");
8
+ const async_iterable_1 = require("@nx/devkit/src/utils/async-iterable");
9
+ const print_diagnostics_1 = require("../typescript/print-diagnostics");
10
+ const run_type_check_1 = require("../typescript/run-type-check");
11
+ function getSwcCmd({ swcrcPath, srcPath, destPath }, watch = false) {
12
+ let swcCmd = `npx swc ${srcPath} -d ${destPath} --no-swcrc --config-file=${swcrcPath}`;
13
+ return watch ? swcCmd.concat(' --watch') : swcCmd;
14
+ }
15
+ function getTypeCheckOptions(normalizedOptions) {
16
+ const { projectRoot, watch, tsConfig, root, outputPath } = normalizedOptions;
17
+ const typeCheckOptions = {
18
+ mode: 'emitDeclarationOnly',
19
+ tsConfigPath: tsConfig,
20
+ outDir: outputPath,
21
+ workspaceRoot: root,
22
+ rootDir: projectRoot,
23
+ };
24
+ if (watch) {
25
+ typeCheckOptions.incremental = true;
26
+ typeCheckOptions.cacheDir = devkit_1.cacheDir;
27
+ }
28
+ return typeCheckOptions;
29
+ }
30
+ function compileSwc(context, normalizedOptions, postCompilationCallback) {
31
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
32
+ devkit_1.logger.log(`Compiling with SWC for ${context.projectName}...`);
33
+ if (normalizedOptions.clean) {
34
+ (0, fs_extra_1.removeSync)(normalizedOptions.outputPath);
35
+ }
36
+ const swcCmdLog = (0, child_process_1.execSync)(getSwcCmd(normalizedOptions.swcCliOptions), {
37
+ cwd: normalizedOptions.swcCliOptions.swcCwd,
38
+ }).toString();
39
+ devkit_1.logger.log(swcCmdLog.replace(/\n/, ''));
40
+ const isCompileSuccess = swcCmdLog.includes('Successfully compiled');
41
+ if (normalizedOptions.skipTypeCheck) {
42
+ yield postCompilationCallback();
43
+ return { success: isCompileSuccess };
44
+ }
45
+ const { errors, warnings } = yield (0, run_type_check_1.runTypeCheck)(getTypeCheckOptions(normalizedOptions));
46
+ const hasErrors = errors.length > 0;
47
+ const hasWarnings = warnings.length > 0;
48
+ if (hasErrors || hasWarnings) {
49
+ yield (0, print_diagnostics_1.printDiagnostics)(errors, warnings);
50
+ }
51
+ yield postCompilationCallback();
52
+ return {
53
+ success: !hasErrors && isCompileSuccess,
54
+ outfile: normalizedOptions.mainOutputPath,
55
+ };
56
+ });
57
+ }
58
+ exports.compileSwc = compileSwc;
59
+ function compileSwcWatch(context, normalizedOptions, postCompilationCallback) {
60
+ return tslib_1.__asyncGenerator(this, arguments, function* compileSwcWatch_1() {
61
+ const getResult = (success) => ({
62
+ success,
63
+ outfile: normalizedOptions.mainOutputPath,
64
+ });
65
+ let typeCheckOptions;
66
+ let initialPostCompile = true;
67
+ if (normalizedOptions.clean) {
68
+ (0, fs_extra_1.removeSync)(normalizedOptions.outputPath);
69
+ }
70
+ 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* () {
71
+ let processOnExit;
72
+ let stdoutOnData;
73
+ let stderrOnData;
74
+ let watcherOnExit;
75
+ const swcWatcher = (0, child_process_1.exec)(getSwcCmd(normalizedOptions.swcCliOptions, true), { cwd: normalizedOptions.swcCliOptions.swcCwd });
76
+ processOnExit = () => {
77
+ swcWatcher.kill();
78
+ done();
79
+ process.off('SIGINT', processOnExit);
80
+ process.off('SIGTERM', processOnExit);
81
+ process.off('exit', processOnExit);
82
+ };
83
+ stdoutOnData = (data) => tslib_1.__awaiter(this, void 0, void 0, function* () {
84
+ process.stdout.write(data);
85
+ if (!data.startsWith('Watching')) {
86
+ const swcStatus = data.includes('Successfully');
87
+ if (initialPostCompile) {
88
+ yield postCompilationCallback();
89
+ initialPostCompile = false;
90
+ }
91
+ if (normalizedOptions.skipTypeCheck) {
92
+ next(getResult(swcStatus));
93
+ return;
94
+ }
95
+ if (!typeCheckOptions) {
96
+ typeCheckOptions = getTypeCheckOptions(normalizedOptions);
97
+ }
98
+ const delayed = delay(5000);
99
+ next(getResult(yield Promise.race([
100
+ delayed
101
+ .start()
102
+ .then(() => ({ tscStatus: false, type: 'timeout' })),
103
+ (0, run_type_check_1.runTypeCheck)(typeCheckOptions).then(({ errors, warnings }) => {
104
+ const hasErrors = errors.length > 0;
105
+ if (hasErrors) {
106
+ (0, print_diagnostics_1.printDiagnostics)(errors, warnings);
107
+ }
108
+ return {
109
+ tscStatus: !hasErrors,
110
+ type: 'tsc',
111
+ };
112
+ }),
113
+ ]).then(({ type, tscStatus }) => {
114
+ if (type === 'tsc') {
115
+ delayed.cancel();
116
+ return tscStatus && swcStatus;
117
+ }
118
+ return swcStatus;
119
+ })));
120
+ }
121
+ });
122
+ stderrOnData = (err) => {
123
+ process.stderr.write(err);
124
+ if (err.includes('Debugger attached.')) {
125
+ return;
126
+ }
127
+ next(getResult(false));
128
+ };
129
+ watcherOnExit = () => {
130
+ done();
131
+ swcWatcher.off('exit', watcherOnExit);
132
+ };
133
+ swcWatcher.stdout.on('data', stdoutOnData);
134
+ swcWatcher.stderr.on('data', stderrOnData);
135
+ process.on('SIGINT', processOnExit);
136
+ process.on('SIGTERM', processOnExit);
137
+ process.on('exit', processOnExit);
138
+ swcWatcher.on('exit', watcherOnExit);
139
+ }))))));
140
+ });
141
+ }
142
+ exports.compileSwcWatch = compileSwcWatch;
143
+ function delay(ms) {
144
+ let timerId = undefined;
145
+ return {
146
+ start() {
147
+ return new Promise((resolve) => {
148
+ timerId = setTimeout(() => {
149
+ resolve();
150
+ }, ms);
151
+ });
152
+ },
153
+ cancel() {
154
+ if (timerId) {
155
+ clearTimeout(timerId);
156
+ timerId = undefined;
157
+ }
158
+ },
159
+ };
160
+ }
161
+ //# sourceMappingURL=compile-swc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile-swc.js","sourceRoot":"","sources":["../../../../../../packages/js/src/utils/swc/compile-swc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { SwcExecutorOptions } from '../schema';
2
+ export declare function getSwcrcPath(options: SwcExecutorOptions, contextRoot: string, projectRoot: string, temp?: boolean): string;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSwcrcPath = void 0;
4
+ const path_1 = require("path");
5
+ function getSwcrcPath(options, contextRoot, projectRoot, temp = false) {
6
+ var _a;
7
+ let swcrcPath = (_a = options.swcrc) !== null && _a !== void 0 ? _a : (0, path_1.join)(projectRoot, '.swcrc');
8
+ if (temp) {
9
+ swcrcPath = (0, path_1.join)('tmp', swcrcPath.replace('.swcrc', '.generated.swcrc'));
10
+ }
11
+ return (0, path_1.join)(contextRoot, swcrcPath);
12
+ }
13
+ exports.getSwcrcPath = getSwcrcPath;
14
+ //# sourceMappingURL=get-swcrc-path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-swcrc-path.js","sourceRoot":"","sources":["../../../../../../packages/js/src/utils/swc/get-swcrc-path.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAG5B,SAAgB,YAAY,CAC1B,OAA2B,EAC3B,WAAmB,EACnB,WAAmB,EACnB,IAAI,GAAG,KAAK;;IAEZ,IAAI,SAAS,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,IAAA,WAAI,EAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAE7D,IAAI,IAAI,EAAE;QACR,SAAS,GAAG,IAAA,WAAI,EAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;KAC1E;IAED,OAAO,IAAA,WAAI,EAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AACtC,CAAC;AAbD,oCAaC"}
@@ -0,0 +1,2 @@
1
+ import type { InlineProjectGraph } from '../inline';
2
+ export declare function generateTmpSwcrc(inlineProjectGraph: InlineProjectGraph, swcrcPath: string): string;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateTmpSwcrc = void 0;
4
+ const devkit_1 = require("@nx/devkit");
5
+ function generateTmpSwcrc(inlineProjectGraph, swcrcPath) {
6
+ const swcrc = (0, devkit_1.readJsonFile)(swcrcPath);
7
+ swcrc['exclude'] = swcrc['exclude'].concat(Object.values(inlineProjectGraph.externals).map((external) => `${external.root}/**/.*.ts$`), 'node_modules/**/*.ts$');
8
+ const tmpSwcrcPath = `tmp${swcrcPath}`;
9
+ (0, devkit_1.writeJsonFile)(tmpSwcrcPath, swcrc);
10
+ return tmpSwcrcPath;
11
+ }
12
+ exports.generateTmpSwcrc = generateTmpSwcrc;
13
+ //# sourceMappingURL=inline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline.js","sourceRoot":"","sources":["../../../../../../packages/js/src/utils/swc/inline.ts"],"names":[],"mappings":";;;AAAA,uCAAyD;AAGzD,SAAgB,gBAAgB,CAC9B,kBAAsC,EACtC,SAAiB;IAEjB,MAAM,KAAK,GAAG,IAAA,qBAAY,EAAC,SAAS,CAAC,CAAC;IAEtC,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CACxC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,GAAG,CAC7C,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,IAAI,YAAY,CAC3C,EACD,uBAAuB,CACxB,CAAC;IAEF,MAAM,YAAY,GAAG,MAAM,SAAS,EAAE,CAAC;IACvC,IAAA,sBAAa,EAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAEnC,OAAO,YAAY,CAAC;AACtB,CAAC;AAjBD,4CAiBC"}
@@ -0,0 +1 @@
1
+ export declare const before: () => void;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.before = void 0;
4
+ const before = () => { };
5
+ exports.before = before;
6
+ //# sourceMappingURL=plugin-a.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-a.js","sourceRoot":"","sources":["../../../../../../../packages/js/src/utils/typescript/__mocks__/plugin-a.ts"],"names":[],"mappings":";;;AAAO,MAAM,MAAM,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;AAAlB,QAAA,MAAM,UAAY"}
@@ -0,0 +1 @@
1
+ export declare const after: () => void;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.after = void 0;
4
+ const after = () => { };
5
+ exports.after = after;
6
+ //# sourceMappingURL=plugin-b.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-b.js","sourceRoot":"","sources":["../../../../../../../packages/js/src/utils/typescript/__mocks__/plugin-b.ts"],"names":[],"mappings":";;;AAAO,MAAM,KAAK,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;AAAjB,QAAA,KAAK,SAAY"}