nx 19.8.1 → 19.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +9 -1
 - package/package.json +12 -13
 - package/src/command-line/graph/graph.js +9 -9
 - package/src/command-line/import/utils/prepare-source-repo.js +8 -3
 - package/src/command-line/init/implementation/add-nx-to-nest.js +5 -5
 - package/src/command-line/init/implementation/react/clean-up-files.js +7 -7
 - package/src/command-line/init/implementation/react/index.js +19 -12
 - package/src/command-line/init/implementation/react/rename-js-to-jsx.js +3 -3
 - package/src/command-line/release/changelog.js +1 -2
 - package/src/command-line/release/config/version-plans.js +6 -7
 - package/src/command-line/release/plan.js +6 -5
 - package/src/command-line/release/release.js +2 -2
 - package/src/command-line/reset/reset.js +20 -13
 - package/src/core/graph/main.js +1 -1
 - package/src/daemon/cache.d.ts +1 -2
 - package/src/daemon/cache.js +12 -21
 - package/src/daemon/client/client.js +9 -8
 - package/src/daemon/tmp-dir.js +6 -7
 - package/src/executors/run-commands/run-commands.impl.js +15 -22
 - package/src/generators/tree.d.ts +1 -1
 - package/src/generators/tree.js +11 -11
 - package/src/hasher/hash-task.d.ts +4 -2
 - package/src/hasher/hash-task.js +6 -9
 - package/src/native/nx.wasm32-wasi.wasm +0 -0
 - package/src/plugins/js/index.js +1 -2
 - package/src/project-graph/nx-deps-cache.js +5 -6
 - package/src/tasks-runner/cache.js +17 -16
 - package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.js +5 -0
 - package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.js +7 -0
 - package/src/tasks-runner/remove-old-cache-records.js +2 -3
 - package/src/tasks-runner/run-command.js +3 -1
 - package/src/tasks-runner/task-orchestrator.d.ts +1 -0
 - package/src/tasks-runner/task-orchestrator.js +6 -2
 - package/src/tasks-runner/tasks-schedule.d.ts +1 -0
 - package/src/tasks-runner/tasks-schedule.js +6 -2
 - package/src/utils/fileutils.d.ts +9 -1
 - package/src/utils/fileutils.js +29 -12
 - package/src/utils/ignore.js +2 -2
 - package/src/utils/package-manager.js +2 -2
 - package/src/utils/plugins/output.js +1 -1
 
    
        package/.eslintrc.json
    CHANGED
    
    | 
         @@ -5,7 +5,15 @@ 
     | 
|
| 
       5 
5 
     | 
    
         
             
              "overrides": [
         
     | 
| 
       6 
6 
     | 
    
         
             
                {
         
     | 
| 
       7 
7 
     | 
    
         
             
                  "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
         
     | 
| 
       8 
     | 
    
         
            -
                  "rules": { 
     | 
| 
      
 8 
     | 
    
         
            +
                  "rules": {
         
     | 
| 
      
 9 
     | 
    
         
            +
                    "no-restricted-imports": [
         
     | 
| 
      
 10 
     | 
    
         
            +
                      "error",
         
     | 
| 
      
 11 
     | 
    
         
            +
                      {
         
     | 
| 
      
 12 
     | 
    
         
            +
                        "name": "fs-extra",
         
     | 
| 
      
 13 
     | 
    
         
            +
                        "message": "Please use equivalent utilities from `node:fs` instead."
         
     | 
| 
      
 14 
     | 
    
         
            +
                      }
         
     | 
| 
      
 15 
     | 
    
         
            +
                    ]
         
     | 
| 
      
 16 
     | 
    
         
            +
                  }
         
     | 
| 
       9 
17 
     | 
    
         
             
                },
         
     | 
| 
       10 
18 
     | 
    
         
             
                {
         
     | 
| 
       11 
19 
     | 
    
         
             
                  "files": ["*.ts"],
         
     | 
    
        package/package.json
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            {
         
     | 
| 
       2 
2 
     | 
    
         
             
              "name": "nx",
         
     | 
| 
       3 
     | 
    
         
            -
              "version": "19.8. 
     | 
| 
      
 3 
     | 
    
         
            +
              "version": "19.8.3",
         
     | 
| 
       4 
4 
     | 
    
         
             
              "private": false,
         
     | 
| 
       5 
5 
     | 
    
         
             
              "description": "The core Nx plugin contains the core functionality of Nx like the project graph, nx commands and task orchestration.",
         
     | 
| 
       6 
6 
     | 
    
         
             
              "repository": {
         
     | 
| 
         @@ -49,7 +49,6 @@ 
     | 
|
| 
       49 
49 
     | 
    
         
             
                "figures": "3.2.0",
         
     | 
| 
       50 
50 
     | 
    
         
             
                "flat": "^5.0.2",
         
     | 
| 
       51 
51 
     | 
    
         
             
                "front-matter": "^4.0.2",
         
     | 
| 
       52 
     | 
    
         
            -
                "fs-extra": "^11.1.0",
         
     | 
| 
       53 
52 
     | 
    
         
             
                "ignore": "^5.0.4",
         
     | 
| 
       54 
53 
     | 
    
         
             
                "jest-diff": "^29.4.1",
         
     | 
| 
       55 
54 
     | 
    
         
             
                "jsonc-parser": "3.2.0",
         
     | 
| 
         @@ -68,7 +67,7 @@ 
     | 
|
| 
       68 
67 
     | 
    
         
             
                "yargs-parser": "21.1.1",
         
     | 
| 
       69 
68 
     | 
    
         
             
                "node-machine-id": "1.1.12",
         
     | 
| 
       70 
69 
     | 
    
         
             
                "ora": "5.3.0",
         
     | 
| 
       71 
     | 
    
         
            -
                "@nrwl/tao": "19.8. 
     | 
| 
      
 70 
     | 
    
         
            +
                "@nrwl/tao": "19.8.3"
         
     | 
| 
       72 
71 
     | 
    
         
             
              },
         
     | 
| 
       73 
72 
     | 
    
         
             
              "peerDependencies": {
         
     | 
| 
       74 
73 
     | 
    
         
             
                "@swc-node/register": "^1.8.0",
         
     | 
| 
         @@ -83,16 +82,16 @@ 
     | 
|
| 
       83 
82 
     | 
    
         
             
                }
         
     | 
| 
       84 
83 
     | 
    
         
             
              },
         
     | 
| 
       85 
84 
     | 
    
         
             
              "optionalDependencies": {
         
     | 
| 
       86 
     | 
    
         
            -
                "@nx/nx-darwin-x64": "19.8. 
     | 
| 
       87 
     | 
    
         
            -
                "@nx/nx-darwin-arm64": "19.8. 
     | 
| 
       88 
     | 
    
         
            -
                "@nx/nx-linux-x64-gnu": "19.8. 
     | 
| 
       89 
     | 
    
         
            -
                "@nx/nx-linux-x64-musl": "19.8. 
     | 
| 
       90 
     | 
    
         
            -
                "@nx/nx-win32-x64-msvc": "19.8. 
     | 
| 
       91 
     | 
    
         
            -
                "@nx/nx-linux-arm64-gnu": "19.8. 
     | 
| 
       92 
     | 
    
         
            -
                "@nx/nx-linux-arm64-musl": "19.8. 
     | 
| 
       93 
     | 
    
         
            -
                "@nx/nx-linux-arm-gnueabihf": "19.8. 
     | 
| 
       94 
     | 
    
         
            -
                "@nx/nx-win32-arm64-msvc": "19.8. 
     | 
| 
       95 
     | 
    
         
            -
                "@nx/nx-freebsd-x64": "19.8. 
     | 
| 
      
 85 
     | 
    
         
            +
                "@nx/nx-darwin-x64": "19.8.3",
         
     | 
| 
      
 86 
     | 
    
         
            +
                "@nx/nx-darwin-arm64": "19.8.3",
         
     | 
| 
      
 87 
     | 
    
         
            +
                "@nx/nx-linux-x64-gnu": "19.8.3",
         
     | 
| 
      
 88 
     | 
    
         
            +
                "@nx/nx-linux-x64-musl": "19.8.3",
         
     | 
| 
      
 89 
     | 
    
         
            +
                "@nx/nx-win32-x64-msvc": "19.8.3",
         
     | 
| 
      
 90 
     | 
    
         
            +
                "@nx/nx-linux-arm64-gnu": "19.8.3",
         
     | 
| 
      
 91 
     | 
    
         
            +
                "@nx/nx-linux-arm64-musl": "19.8.3",
         
     | 
| 
      
 92 
     | 
    
         
            +
                "@nx/nx-linux-arm-gnueabihf": "19.8.3",
         
     | 
| 
      
 93 
     | 
    
         
            +
                "@nx/nx-win32-arm64-msvc": "19.8.3",
         
     | 
| 
      
 94 
     | 
    
         
            +
                "@nx/nx-freebsd-x64": "19.8.3"
         
     | 
| 
       96 
95 
     | 
    
         
             
              },
         
     | 
| 
       97 
96 
     | 
    
         
             
              "nx-migrations": {
         
     | 
| 
       98 
97 
     | 
    
         
             
                "migrations": "./migrations.json",
         
     | 
| 
         @@ -3,8 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); 
     | 
|
| 
       3 
3 
     | 
    
         
             
            exports.generateGraph = generateGraph;
         
     | 
| 
       4 
4 
     | 
    
         
             
            const crypto_1 = require("crypto");
         
     | 
| 
       5 
5 
     | 
    
         
             
            const node_child_process_1 = require("node:child_process");
         
     | 
| 
       6 
     | 
    
         
            -
            const  
     | 
| 
       7 
     | 
    
         
            -
            const fs_extra_1 = require("fs-extra");
         
     | 
| 
      
 6 
     | 
    
         
            +
            const node_fs_1 = require("node:fs");
         
     | 
| 
       8 
7 
     | 
    
         
             
            const http = require("http");
         
     | 
| 
       9 
8 
     | 
    
         
             
            const minimatch_1 = require("minimatch");
         
     | 
| 
       10 
9 
     | 
    
         
             
            const node_url_1 = require("node:url");
         
     | 
| 
         @@ -225,7 +224,7 @@ async function generateGraph(args, affectedProjects) { 
     | 
|
| 
       225 
224 
     | 
    
         
             
                        process.exit(1);
         
     | 
| 
       226 
225 
     | 
    
         
             
                    }
         
     | 
| 
       227 
226 
     | 
    
         
             
                }
         
     | 
| 
       228 
     | 
    
         
            -
                let html = (0,  
     | 
| 
      
 227 
     | 
    
         
            +
                let html = (0, node_fs_1.readFileSync)((0, path_1.join)(__dirname, '../../core/graph/index.html'), 'utf-8');
         
     | 
| 
       229 
228 
     | 
    
         
             
                prunedGraph = filterGraph(prunedGraph, args.focus || null, args.exclude || []);
         
     | 
| 
       230 
229 
     | 
    
         
             
                if (args.file) {
         
     | 
| 
       231 
230 
     | 
    
         
             
                    // stdout is a magical constant that doesn't actually write a file
         
     | 
| 
         @@ -243,7 +242,7 @@ async function generateGraph(args, affectedProjects) { 
     | 
|
| 
       243 
242 
     | 
    
         
             
                    if (ext === '.html') {
         
     | 
| 
       244 
243 
     | 
    
         
             
                        const assetsFolder = (0, path_1.join)(fileFolderPath, 'static');
         
     | 
| 
       245 
244 
     | 
    
         
             
                        const assets = [];
         
     | 
| 
       246 
     | 
    
         
            -
                        (0,  
     | 
| 
      
 245 
     | 
    
         
            +
                        (0, node_fs_1.cpSync)((0, path_1.join)(__dirname, '../../core/graph'), assetsFolder, {
         
     | 
| 
       247 
246 
     | 
    
         
             
                            filter: (_src, dest) => {
         
     | 
| 
       248 
247 
     | 
    
         
             
                                const isntHtml = !/index\.html/.test(dest);
         
     | 
| 
       249 
248 
     | 
    
         
             
                                if (isntHtml && dest.includes('.')) {
         
     | 
| 
         @@ -251,6 +250,7 @@ async function generateGraph(args, affectedProjects) { 
     | 
|
| 
       251 
250 
     | 
    
         
             
                                }
         
     | 
| 
       252 
251 
     | 
    
         
             
                                return isntHtml;
         
     | 
| 
       253 
252 
     | 
    
         
             
                            },
         
     | 
| 
      
 253 
     | 
    
         
            +
                            recursive: true,
         
     | 
| 
       254 
254 
     | 
    
         
             
                        });
         
     | 
| 
       255 
255 
     | 
    
         
             
                        const { projectGraphClientResponse } = await createProjectGraphAndSourceMapClientResponse(affectedProjects);
         
     | 
| 
       256 
256 
     | 
    
         
             
                        const taskGraphClientResponse = await createTaskGraphClientResponse();
         
     | 
| 
         @@ -260,15 +260,15 @@ async function generateGraph(args, affectedProjects) { 
     | 
|
| 
       260 
260 
     | 
    
         
             
                        html = html.replace(/href="styles/g, 'href="static/styles');
         
     | 
| 
       261 
261 
     | 
    
         
             
                        html = html.replace(/<base href="\/".*>/g, '');
         
     | 
| 
       262 
262 
     | 
    
         
             
                        html = html.replace(/type="module"/g, '');
         
     | 
| 
       263 
     | 
    
         
            -
                        (0,  
     | 
| 
       264 
     | 
    
         
            -
                        (0,  
     | 
| 
      
 263 
     | 
    
         
            +
                        (0, node_fs_1.writeFileSync)(fullFilePath, html);
         
     | 
| 
      
 264 
     | 
    
         
            +
                        (0, node_fs_1.writeFileSync)((0, path_1.join)(assetsFolder, 'environment.js'), environmentJs);
         
     | 
| 
       265 
265 
     | 
    
         
             
                        output_1.output.success({
         
     | 
| 
       266 
266 
     | 
    
         
             
                            title: `HTML output created in ${fileFolderPath}`,
         
     | 
| 
       267 
267 
     | 
    
         
             
                            bodyLines: [fileFolderPath, ...assets],
         
     | 
| 
       268 
268 
     | 
    
         
             
                        });
         
     | 
| 
       269 
269 
     | 
    
         
             
                    }
         
     | 
| 
       270 
270 
     | 
    
         
             
                    else if (ext === '.json') {
         
     | 
| 
       271 
     | 
    
         
            -
                        (0,  
     | 
| 
      
 271 
     | 
    
         
            +
                        (0, node_fs_1.mkdirSync)((0, path_1.dirname)(fullFilePath), { recursive: true });
         
     | 
| 
       272 
272 
     | 
    
         
             
                        const json = await createJsonOutput(prunedGraph, rawGraph, args.projects, args.targets);
         
     | 
| 
       273 
273 
     | 
    
         
             
                        (0, fileutils_1.writeJsonFile)(fullFilePath, json);
         
     | 
| 
       274 
274 
     | 
    
         
             
                        output_1.output.success({
         
     | 
| 
         @@ -394,13 +394,13 @@ async function startServer(html, environmentJs, host, port = 4211, watchForChang 
     | 
|
| 
       394 
394 
     | 
    
         
             
                    }
         
     | 
| 
       395 
395 
     | 
    
         
             
                    let pathname = (0, path_1.join)(__dirname, '../../core/graph/', sanitizePath);
         
     | 
| 
       396 
396 
     | 
    
         
             
                    // if the file is not found or is a directory, return index.html
         
     | 
| 
       397 
     | 
    
         
            -
                    if (!(0,  
     | 
| 
      
 397 
     | 
    
         
            +
                    if (!(0, node_fs_1.existsSync)(pathname) || (0, node_fs_1.statSync)(pathname).isDirectory()) {
         
     | 
| 
       398 
398 
     | 
    
         
             
                        res.writeHead(200, { 'Content-Type': 'text/html' });
         
     | 
| 
       399 
399 
     | 
    
         
             
                        res.end(html);
         
     | 
| 
       400 
400 
     | 
    
         
             
                        return;
         
     | 
| 
       401 
401 
     | 
    
         
             
                    }
         
     | 
| 
       402 
402 
     | 
    
         
             
                    try {
         
     | 
| 
       403 
     | 
    
         
            -
                        const data = (0,  
     | 
| 
      
 403 
     | 
    
         
            +
                        const data = (0, node_fs_1.readFileSync)(pathname);
         
     | 
| 
       404 
404 
     | 
    
         
             
                        const ext = (0, path_1.parse)(pathname).ext;
         
     | 
| 
       405 
405 
     | 
    
         
             
                        res.setHeader('Content-type', mimeType[ext] || 'text/plain');
         
     | 
| 
       406 
406 
     | 
    
         
             
                        res.end(data);
         
     | 
| 
         @@ -6,15 +6,20 @@ const path_1 = require("path"); 
     | 
|
| 
       6 
6 
     | 
    
         
             
            async function prepareSourceRepo(gitClient, ref, source, relativeDestination, tempImportBranch, sourceRemoteUrl) {
         
     | 
| 
       7 
7 
     | 
    
         
             
                const spinner = createSpinner().start(`Fetching ${ref} from ${sourceRemoteUrl}`);
         
     | 
| 
       8 
8 
     | 
    
         
             
                const relativeSourceDir = (0, path_1.relative)(gitClient.root, (0, path_1.join)(gitClient.root, source));
         
     | 
| 
      
 9 
     | 
    
         
            +
                const message = relativeSourceDir.trim()
         
     | 
| 
      
 10 
     | 
    
         
            +
                    ? `Filtering git history to only include files in ${relativeSourceDir}`
         
     | 
| 
      
 11 
     | 
    
         
            +
                    : `Filtering git history`;
         
     | 
| 
       9 
12 
     | 
    
         
             
                if (await gitClient.hasFilterRepoInstalled()) {
         
     | 
| 
       10 
     | 
    
         
            -
                    spinner.start( 
     | 
| 
      
 13 
     | 
    
         
            +
                    spinner.start(message);
         
     | 
| 
       11 
14 
     | 
    
         
             
                    await gitClient.filterRepo(relativeSourceDir, relativeDestination);
         
     | 
| 
       12 
15 
     | 
    
         
             
                }
         
     | 
| 
       13 
16 
     | 
    
         
             
                else {
         
     | 
| 
       14 
     | 
    
         
            -
                    spinner.start( 
     | 
| 
      
 17 
     | 
    
         
            +
                    spinner.start(`${message} (this might take a few minutes -- install git-filter-repo for faster performance)`);
         
     | 
| 
       15 
18 
     | 
    
         
             
                    await gitClient.filterBranch(relativeSourceDir, relativeDestination, tempImportBranch);
         
     | 
| 
       16 
19 
     | 
    
         
             
                }
         
     | 
| 
       17 
     | 
    
         
            -
                spinner.succeed( 
     | 
| 
      
 20 
     | 
    
         
            +
                spinner.succeed(relativeSourceDir.trim()
         
     | 
| 
      
 21 
     | 
    
         
            +
                    ? `Filtered git history to only include files in ${relativeSourceDir}`
         
     | 
| 
      
 22 
     | 
    
         
            +
                    : `Filtered git history`);
         
     | 
| 
       18 
23 
     | 
    
         
             
                spinner.succeed(`${sourceRemoteUrl} has been prepared to be imported into this workspace on a temporary branch: ${tempImportBranch} in ${gitClient.root}`);
         
     | 
| 
       19 
24 
     | 
    
         
             
            }
         
     | 
| 
       20 
25 
     | 
    
         
             
            function wait(ms) {
         
     | 
| 
         @@ -2,7 +2,7 @@ 
     | 
|
| 
       2 
2 
     | 
    
         
             
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
3 
     | 
    
         
             
            exports.addNxToNest = addNxToNest;
         
     | 
| 
       4 
4 
     | 
    
         
             
            const enquirer = require("enquirer");
         
     | 
| 
       5 
     | 
    
         
            -
            const  
     | 
| 
      
 5 
     | 
    
         
            +
            const node_fs_1 = require("node:fs");
         
     | 
| 
       6 
6 
     | 
    
         
             
            const path_1 = require("path");
         
     | 
| 
       7 
7 
     | 
    
         
             
            const fileutils_1 = require("../../../utils/fileutils");
         
     | 
| 
       8 
8 
     | 
    
         
             
            const output_1 = require("../../../utils/output");
         
     | 
| 
         @@ -214,7 +214,7 @@ function getJestOptions(isE2E, repoRoot, packageName, existingOptions) { 
     | 
|
| 
       214 
214 
     | 
    
         
             
            function tryCreateJestPreset(repoRoot) {
         
     | 
| 
       215 
215 
     | 
    
         
             
                const jestPresetPath = (0, path_1.join)(repoRoot, 'jest.preset.js');
         
     | 
| 
       216 
216 
     | 
    
         
             
                if (!(0, fileutils_1.fileExists)(jestPresetPath)) {
         
     | 
| 
       217 
     | 
    
         
            -
                    (0,  
     | 
| 
      
 217 
     | 
    
         
            +
                    (0, node_fs_1.writeFileSync)(jestPresetPath, `
         
     | 
| 
       218 
218 
     | 
    
         
             
            const nxPreset = require('@nx/jest/preset').default;
         
     | 
| 
       219 
219 
     | 
    
         
             
            module.exports = {...nxPreset};
         
     | 
| 
       220 
220 
     | 
    
         
             
            `, 'utf8');
         
     | 
| 
         @@ -231,8 +231,8 @@ function addJestTargets(repoRoot, packageName, projectJson, packageJson) { 
     | 
|
| 
       231 
231 
     | 
    
         
             
                if (isPresetCreated) {
         
     | 
| 
       232 
232 
     | 
    
         
             
                    unitTestOptions['preset'] = e2eTestOptions['preset'] = './jest.preset.js';
         
     | 
| 
       233 
233 
     | 
    
         
             
                }
         
     | 
| 
       234 
     | 
    
         
            -
                (0,  
     | 
| 
       235 
     | 
    
         
            -
                (0,  
     | 
| 
      
 234 
     | 
    
         
            +
                (0, node_fs_1.writeFileSync)(unitTestConfigPath, `export default ${JSON.stringify(unitTestOptions, null, 2)}`, 'utf8');
         
     | 
| 
      
 235 
     | 
    
         
            +
                (0, node_fs_1.writeFileSync)(e2eTestConfigPath, `export default ${JSON.stringify(e2eTestOptions, null, 2)}`, 'utf8');
         
     | 
| 
       236 
236 
     | 
    
         
             
                projectJson.targets['test'] = {
         
     | 
| 
       237 
237 
     | 
    
         
             
                    executor: '@nx/jest:jest',
         
     | 
| 
       238 
238 
     | 
    
         
             
                    outputs: [`{workspaceRoot}/coverage/${packageName}`],
         
     | 
| 
         @@ -312,7 +312,7 @@ function updateTsConfig(repoRoot, sourceRoot) { 
     | 
|
| 
       312 
312 
     | 
    
         
             
            }
         
     | 
| 
       313 
313 
     | 
    
         
             
            function removeFile(repoRoot, file) {
         
     | 
| 
       314 
314 
     | 
    
         
             
                const path = (0, path_1.join)(repoRoot, file);
         
     | 
| 
       315 
     | 
    
         
            -
                (0,  
     | 
| 
      
 315 
     | 
    
         
            +
                (0, node_fs_1.unlinkSync)(path);
         
     | 
| 
       316 
316 
     | 
    
         
             
            }
         
     | 
| 
       317 
317 
     | 
    
         
             
            function mergeWithDefaultConfig(config) {
         
     | 
| 
       318 
318 
     | 
    
         
             
                const defaultNestCliConfigurations = {
         
     | 
| 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            "use strict";
         
     | 
| 
       2 
2 
     | 
    
         
             
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
3 
     | 
    
         
             
            exports.cleanUpFiles = cleanUpFiles;
         
     | 
| 
       4 
     | 
    
         
            -
            const  
     | 
| 
      
 4 
     | 
    
         
            +
            const node_fs_1 = require("node:fs");
         
     | 
| 
       5 
5 
     | 
    
         
             
            const fileutils_1 = require("../../../../utils/fileutils");
         
     | 
| 
       6 
6 
     | 
    
         
             
            function cleanUpFiles(appName, isStandalone) {
         
     | 
| 
       7 
7 
     | 
    
         
             
                // Delete targets from project since we delegate to npm scripts.
         
     | 
| 
         @@ -19,12 +19,12 @@ function cleanUpFiles(appName, isStandalone) { 
     | 
|
| 
       19 
19 
     | 
    
         
             
                    }
         
     | 
| 
       20 
20 
     | 
    
         
             
                }
         
     | 
| 
       21 
21 
     | 
    
         
             
                (0, fileutils_1.writeJsonFile)(projectJsonPath, json);
         
     | 
| 
       22 
     | 
    
         
            -
                (0,  
     | 
| 
      
 22 
     | 
    
         
            +
                (0, node_fs_1.rmSync)('temp-workspace', { recursive: true, force: true });
         
     | 
| 
       23 
23 
     | 
    
         
             
                if (isStandalone) {
         
     | 
| 
       24 
     | 
    
         
            -
                    (0,  
     | 
| 
       25 
     | 
    
         
            -
                    (0,  
     | 
| 
       26 
     | 
    
         
            -
                    (0,  
     | 
| 
       27 
     | 
    
         
            -
                    (0,  
     | 
| 
       28 
     | 
    
         
            -
                    (0,  
     | 
| 
      
 24 
     | 
    
         
            +
                    (0, node_fs_1.rmSync)('babel.config.json', { recursive: true, force: true });
         
     | 
| 
      
 25 
     | 
    
         
            +
                    (0, node_fs_1.rmSync)('jest.preset.js', { recursive: true, force: true });
         
     | 
| 
      
 26 
     | 
    
         
            +
                    (0, node_fs_1.rmSync)('jest.config.ts', { recursive: true, force: true });
         
     | 
| 
      
 27 
     | 
    
         
            +
                    (0, node_fs_1.rmSync)('libs', { recursive: true, force: true });
         
     | 
| 
      
 28 
     | 
    
         
            +
                    (0, node_fs_1.rmSync)('tools', { recursive: true, force: true });
         
     | 
| 
       29 
29 
     | 
    
         
             
                }
         
     | 
| 
       30 
30 
     | 
    
         
             
            }
         
     | 
| 
         @@ -2,7 +2,7 @@ 
     | 
|
| 
       2 
2 
     | 
    
         
             
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
3 
     | 
    
         
             
            exports.addNxToCraRepo = addNxToCraRepo;
         
     | 
| 
       4 
4 
     | 
    
         
             
            const child_process_1 = require("child_process");
         
     | 
| 
       5 
     | 
    
         
            -
            const  
     | 
| 
      
 5 
     | 
    
         
            +
            const node_fs_1 = require("node:fs");
         
     | 
| 
       6 
6 
     | 
    
         
             
            const path_1 = require("path");
         
     | 
| 
       7 
7 
     | 
    
         
             
            const fileutils_1 = require("../../../../utils/fileutils");
         
     | 
| 
       8 
8 
     | 
    
         
             
            const output_1 = require("../../../../utils/output");
         
     | 
| 
         @@ -116,13 +116,16 @@ async function reorgnizeWorkspaceStructure(options) { 
     | 
|
| 
       116 
116 
     | 
    
         
             
                }
         
     | 
| 
       117 
117 
     | 
    
         
             
            }
         
     | 
| 
       118 
118 
     | 
    
         
             
            function createTempWorkspace(options) {
         
     | 
| 
       119 
     | 
    
         
            -
                (0,  
     | 
| 
      
 119 
     | 
    
         
            +
                (0, node_fs_1.rmSync)('temp-workspace', { recursive: true, force: true });
         
     | 
| 
       120 
120 
     | 
    
         
             
                (0, child_process_1.execSync)(`npx ${options.npxYesFlagNeeded ? '-y' : ''} create-nx-workspace@latest temp-workspace --appName=${options.reactAppName} --preset=react-monorepo --style=css --bundler=${options.isVite ? 'vite' : 'webpack'} --packageManager=${options.packageManager} ${options.nxCloud ? '--nxCloud=yes' : '--nxCloud=skip'} ${options.addE2e ? '--e2eTestRunner=playwright' : '--e2eTestRunner=none'}`, { stdio: [0, 1, 2], windowsHide: true });
         
     | 
| 
       121 
121 
     | 
    
         
             
                output_1.output.log({ title: '👋 Welcome to Nx!' });
         
     | 
| 
       122 
122 
     | 
    
         
             
                output_1.output.log({ title: '🧹 Clearing unused files' });
         
     | 
| 
       123 
     | 
    
         
            -
                (0,  
     | 
| 
       124 
     | 
    
         
            -
                (0,  
     | 
| 
       125 
     | 
    
         
            -
             
     | 
| 
      
 123 
     | 
    
         
            +
                (0, node_fs_1.cpSync)((0, path_1.join)('temp-workspace', 'apps', options.reactAppName, 'project.json'), 'project.json', { recursive: true });
         
     | 
| 
      
 124 
     | 
    
         
            +
                (0, node_fs_1.rmSync)((0, path_1.join)('temp-workspace', 'apps', options.reactAppName), {
         
     | 
| 
      
 125 
     | 
    
         
            +
                    recursive: true,
         
     | 
| 
      
 126 
     | 
    
         
            +
                    force: true,
         
     | 
| 
      
 127 
     | 
    
         
            +
                });
         
     | 
| 
      
 128 
     | 
    
         
            +
                (0, node_fs_1.rmSync)('node_modules', { recursive: true, force: true });
         
     | 
| 
       126 
129 
     | 
    
         
             
            }
         
     | 
| 
       127 
130 
     | 
    
         
             
            function copyPackageJsonDepsFromTempWorkspace() {
         
     | 
| 
       128 
131 
     | 
    
         
             
                const repoRoot = process.cwd();
         
     | 
| 
         @@ -151,6 +154,12 @@ function overridePackageDeps(depConfigName, base, override) { 
     | 
|
| 
       151 
154 
     | 
    
         
             
                });
         
     | 
| 
       152 
155 
     | 
    
         
             
                return base;
         
     | 
| 
       153 
156 
     | 
    
         
             
            }
         
     | 
| 
      
 157 
     | 
    
         
            +
            function moveSync(src, dest) {
         
     | 
| 
      
 158 
     | 
    
         
            +
                const destParentDir = (0, path_1.dirname)(dest);
         
     | 
| 
      
 159 
     | 
    
         
            +
                (0, node_fs_1.mkdirSync)(destParentDir, { recursive: true });
         
     | 
| 
      
 160 
     | 
    
         
            +
                (0, node_fs_1.rmSync)(dest, { recursive: true, force: true });
         
     | 
| 
      
 161 
     | 
    
         
            +
                return (0, node_fs_1.renameSync)(src, dest);
         
     | 
| 
      
 162 
     | 
    
         
            +
            }
         
     | 
| 
       154 
163 
     | 
    
         
             
            function moveFilesToTempWorkspace(options) {
         
     | 
| 
       155 
164 
     | 
    
         
             
                output_1.output.log({ title: '🚚 Moving your React app in your new Nx workspace' });
         
     | 
| 
       156 
165 
     | 
    
         
             
                copyPackageJsonDepsFromTempWorkspace();
         
     | 
| 
         @@ -169,11 +178,9 @@ function moveFilesToTempWorkspace(options) { 
     | 
|
| 
       169 
178 
     | 
    
         
             
                const filesToMove = [...requiredCraFiles, ...optionalCraFiles].filter(Boolean);
         
     | 
| 
       170 
179 
     | 
    
         
             
                filesToMove.forEach((f) => {
         
     | 
| 
       171 
180 
     | 
    
         
             
                    try {
         
     | 
| 
       172 
     | 
    
         
            -
                         
     | 
| 
      
 181 
     | 
    
         
            +
                        moveSync(f, options.isStandalone
         
     | 
| 
       173 
182 
     | 
    
         
             
                            ? (0, path_1.join)('temp-workspace', f)
         
     | 
| 
       174 
     | 
    
         
            -
                            : (0, path_1.join)('temp-workspace', 'apps', options.reactAppName, f) 
     | 
| 
       175 
     | 
    
         
            -
                            overwrite: true,
         
     | 
| 
       176 
     | 
    
         
            -
                        });
         
     | 
| 
      
 183 
     | 
    
         
            +
                            : (0, path_1.join)('temp-workspace', 'apps', options.reactAppName, f));
         
     | 
| 
       177 
184 
     | 
    
         
             
                    }
         
     | 
| 
       178 
185 
     | 
    
         
             
                    catch (error) {
         
     | 
| 
       179 
186 
     | 
    
         
             
                        if (requiredCraFiles.includes(f)) {
         
     | 
| 
         @@ -208,8 +215,8 @@ async function addBundler(options) { 
     | 
|
| 
       208 
215 
     | 
    
         
             
            }
         
     | 
| 
       209 
216 
     | 
    
         
             
            function copyFromTempWorkspaceToRoot() {
         
     | 
| 
       210 
217 
     | 
    
         
             
                output_1.output.log({ title: '🚚 Folder restructuring.' });
         
     | 
| 
       211 
     | 
    
         
            -
                (0,  
     | 
| 
       212 
     | 
    
         
            -
                     
     | 
| 
      
 218 
     | 
    
         
            +
                (0, node_fs_1.readdirSync)('temp-workspace').forEach((f) => {
         
     | 
| 
      
 219 
     | 
    
         
            +
                    moveSync((0, path_1.join)('temp-workspace', f), f);
         
     | 
| 
       213 
220 
     | 
    
         
             
                });
         
     | 
| 
       214 
221 
     | 
    
         
             
            }
         
     | 
| 
       215 
222 
     | 
    
         
             
            function cleanUpUnusedFilesAndAddConfigFiles(options) {
         
     | 
| 
         @@ -218,6 +225,6 @@ function cleanUpUnusedFilesAndAddConfigFiles(options) { 
     | 
|
| 
       218 
225 
     | 
    
         
             
                output_1.output.log({ title: "📃 Extend the app's tsconfig.json from the base" });
         
     | 
| 
       219 
226 
     | 
    
         
             
                (0, tsconfig_setup_1.setupTsConfig)(options.reactAppName, options.isStandalone);
         
     | 
| 
       220 
227 
     | 
    
         
             
                if (options.isStandalone) {
         
     | 
| 
       221 
     | 
    
         
            -
                    (0,  
     | 
| 
      
 228 
     | 
    
         
            +
                    (0, node_fs_1.rmSync)('apps', { recursive: true, force: true });
         
     | 
| 
       222 
229 
     | 
    
         
             
                }
         
     | 
| 
       223 
230 
     | 
    
         
             
            }
         
     | 
| 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            "use strict";
         
     | 
| 
       2 
2 
     | 
    
         
             
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
3 
     | 
    
         
             
            exports.renameJsToJsx = renameJsToJsx;
         
     | 
| 
       4 
     | 
    
         
            -
            const  
     | 
| 
      
 4 
     | 
    
         
            +
            const node_fs_1 = require("node:fs");
         
     | 
| 
       5 
5 
     | 
    
         
             
            const workspace_context_1 = require("../../../../utils/workspace-context");
         
     | 
| 
       6 
6 
     | 
    
         
             
            const fileutils_1 = require("../../../../utils/fileutils");
         
     | 
| 
       7 
7 
     | 
    
         
             
            // Vite cannot process JSX like <div> or <Header> unless the file is named .jsx or .tsx
         
     | 
| 
         @@ -11,11 +11,11 @@ async function renameJsToJsx(appName, isStandalone) { 
     | 
|
| 
       11 
11 
     | 
    
         
             
                ]);
         
     | 
| 
       12 
12 
     | 
    
         
             
                files.forEach((file) => {
         
     | 
| 
       13 
13 
     | 
    
         
             
                    if ((0, fileutils_1.fileExists)(file)) {
         
     | 
| 
       14 
     | 
    
         
            -
                        const content = (0,  
     | 
| 
      
 14 
     | 
    
         
            +
                        const content = (0, node_fs_1.readFileSync)(file).toString();
         
     | 
| 
       15 
15 
     | 
    
         
             
                        // Try to detect JSX before renaming to .jsx
         
     | 
| 
       16 
16 
     | 
    
         
             
                        // Files like setupTests.js from CRA should not be renamed
         
     | 
| 
       17 
17 
     | 
    
         
             
                        if (/<[a-zA-Z0-9]+/.test(content)) {
         
     | 
| 
       18 
     | 
    
         
            -
                            (0,  
     | 
| 
      
 18 
     | 
    
         
            +
                            (0, node_fs_1.renameSync)(file, `${file}x`);
         
     | 
| 
       19 
19 
     | 
    
         
             
                        }
         
     | 
| 
       20 
20 
     | 
    
         
             
                    }
         
     | 
| 
       21 
21 
     | 
    
         
             
                });
         
     | 
| 
         @@ -5,7 +5,6 @@ exports.createAPI = createAPI; 
     | 
|
| 
       5 
5 
     | 
    
         
             
            exports.shouldCreateGitHubRelease = shouldCreateGitHubRelease;
         
     | 
| 
       6 
6 
     | 
    
         
             
            const chalk = require("chalk");
         
     | 
| 
       7 
7 
     | 
    
         
             
            const enquirer_1 = require("enquirer");
         
     | 
| 
       8 
     | 
    
         
            -
            const fs_extra_1 = require("fs-extra");
         
     | 
| 
       9 
8 
     | 
    
         
             
            const node_fs_1 = require("node:fs");
         
     | 
| 
       10 
9 
     | 
    
         
             
            const semver_1 = require("semver");
         
     | 
| 
       11 
10 
     | 
    
         
             
            const tmp_1 = require("tmp");
         
     | 
| 
         @@ -620,7 +619,7 @@ async function applyChangesAndExit(args, nxReleaseConfig, tree, toSHA, postGitTa 
     | 
|
| 
       620 
619 
     | 
    
         
             
                        if (group.resolvedVersionPlans) {
         
     | 
| 
       621 
620 
     | 
    
         
             
                            group.resolvedVersionPlans.forEach((plan) => {
         
     | 
| 
       622 
621 
     | 
    
         
             
                                if (!args.dryRun) {
         
     | 
| 
       623 
     | 
    
         
            -
                                    (0,  
     | 
| 
      
 622 
     | 
    
         
            +
                                    (0, node_fs_1.rmSync)(plan.absolutePath, { recursive: true, force: true });
         
     | 
| 
       624 
623 
     | 
    
         
             
                                    if (args.verbose) {
         
     | 
| 
       625 
624 
     | 
    
         
             
                                        console.log(`Removing ${plan.relativePath}`);
         
     | 
| 
       626 
625 
     | 
    
         
             
                                    }
         
     | 
| 
         @@ -3,9 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); 
     | 
|
| 
       3 
3 
     | 
    
         
             
            exports.readRawVersionPlans = readRawVersionPlans;
         
     | 
| 
       4 
4 
     | 
    
         
             
            exports.setResolvedVersionPlansOnGroups = setResolvedVersionPlansOnGroups;
         
     | 
| 
       5 
5 
     | 
    
         
             
            exports.getVersionPlansAbsolutePath = getVersionPlansAbsolutePath;
         
     | 
| 
       6 
     | 
    
         
            -
            const fs_1 = require("fs");
         
     | 
| 
       7 
     | 
    
         
            -
            const fs_extra_1 = require("fs-extra");
         
     | 
| 
       8 
6 
     | 
    
         
             
            const node_child_process_1 = require("node:child_process");
         
     | 
| 
      
 7 
     | 
    
         
            +
            const node_fs_1 = require("node:fs");
         
     | 
| 
      
 8 
     | 
    
         
            +
            const promises_1 = require("node:fs/promises");
         
     | 
| 
       9 
9 
     | 
    
         
             
            const path_1 = require("path");
         
     | 
| 
       10 
10 
     | 
    
         
             
            const semver_1 = require("semver");
         
     | 
| 
       11 
11 
     | 
    
         
             
            const workspace_root_1 = require("../../../utils/workspace-root");
         
     | 
| 
         @@ -14,16 +14,15 @@ const fm = require('front-matter'); 
     | 
|
| 
       14 
14 
     | 
    
         
             
            const versionPlansDirectory = (0, path_1.join)('.nx', 'version-plans');
         
     | 
| 
       15 
15 
     | 
    
         
             
            async function readRawVersionPlans() {
         
     | 
| 
       16 
16 
     | 
    
         
             
                const versionPlansPath = getVersionPlansAbsolutePath();
         
     | 
| 
       17 
     | 
    
         
            -
                 
     | 
| 
       18 
     | 
    
         
            -
                if (!versionPlansPathExists) {
         
     | 
| 
      
 17 
     | 
    
         
            +
                if (!(0, node_fs_1.existsSync)(versionPlansPath)) {
         
     | 
| 
       19 
18 
     | 
    
         
             
                    return [];
         
     | 
| 
       20 
19 
     | 
    
         
             
                }
         
     | 
| 
       21 
20 
     | 
    
         
             
                const versionPlans = [];
         
     | 
| 
       22 
     | 
    
         
            -
                const versionPlanFiles = (0,  
     | 
| 
      
 21 
     | 
    
         
            +
                const versionPlanFiles = (0, node_fs_1.readdirSync)(versionPlansPath);
         
     | 
| 
       23 
22 
     | 
    
         
             
                for (const versionPlanFile of versionPlanFiles) {
         
     | 
| 
       24 
23 
     | 
    
         
             
                    const filePath = (0, path_1.join)(versionPlansPath, versionPlanFile);
         
     | 
| 
       25 
     | 
    
         
            -
                    const versionPlanContent = (0,  
     | 
| 
       26 
     | 
    
         
            -
                    const versionPlanStats = await (0,  
     | 
| 
      
 24 
     | 
    
         
            +
                    const versionPlanContent = (0, node_fs_1.readFileSync)(filePath).toString();
         
     | 
| 
      
 25 
     | 
    
         
            +
                    const versionPlanStats = await (0, promises_1.stat)(filePath);
         
     | 
| 
       27 
26 
     | 
    
         
             
                    const parsedContent = fm(versionPlanContent);
         
     | 
| 
       28 
27 
     | 
    
         
             
                    versionPlans.push({
         
     | 
| 
       29 
28 
     | 
    
         
             
                        absolutePath: filePath,
         
     | 
| 
         @@ -3,7 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); 
     | 
|
| 
       3 
3 
     | 
    
         
             
            exports.releasePlanCLIHandler = void 0;
         
     | 
| 
       4 
4 
     | 
    
         
             
            exports.createAPI = createAPI;
         
     | 
| 
       5 
5 
     | 
    
         
             
            const enquirer_1 = require("enquirer");
         
     | 
| 
       6 
     | 
    
         
            -
            const  
     | 
| 
      
 6 
     | 
    
         
            +
            const node_fs_1 = require("node:fs");
         
     | 
| 
      
 7 
     | 
    
         
            +
            const promises_1 = require("node:fs/promises");
         
     | 
| 
       7 
8 
     | 
    
         
             
            const node_path_1 = require("node:path");
         
     | 
| 
       8 
9 
     | 
    
         
             
            const semver_1 = require("semver");
         
     | 
| 
       9 
10 
     | 
    
         
             
            const tmp_1 = require("tmp");
         
     | 
| 
         @@ -193,8 +194,8 @@ async function createVersionPlanFileForBumps(args, versionPlanBumps) { 
     | 
|
| 
       193 
194 
     | 
    
         
             
                    output_1.output.logSingleLine(`Creating version plan file "${versionPlanFileName}"`);
         
     | 
| 
       194 
195 
     | 
    
         
             
                    (0, print_changes_1.printDiff)('', versionPlanFileContent, 1);
         
     | 
| 
       195 
196 
     | 
    
         
             
                    const versionPlansAbsolutePath = (0, version_plans_1.getVersionPlansAbsolutePath)();
         
     | 
| 
       196 
     | 
    
         
            -
                    await (0,  
     | 
| 
       197 
     | 
    
         
            -
                    await (0,  
     | 
| 
      
 197 
     | 
    
         
            +
                    await (0, promises_1.mkdir)(versionPlansAbsolutePath, { recursive: true });
         
     | 
| 
      
 198 
     | 
    
         
            +
                    await (0, promises_1.writeFile)((0, node_path_1.join)(versionPlansAbsolutePath, versionPlanFileName), versionPlanFileContent);
         
     | 
| 
       198 
199 
     | 
    
         
             
                }
         
     | 
| 
       199 
200 
     | 
    
         
             
            }
         
     | 
| 
       200 
201 
     | 
    
         
             
            async function promptForVersion(message) {
         
     | 
| 
         @@ -236,9 +237,9 @@ async function _promptForMessage(versionPlanName) { 
     | 
|
| 
       236 
237 
     | 
    
         
             
                    if (!message.length) {
         
     | 
| 
       237 
238 
     | 
    
         
             
                        const tmpDir = (0, tmp_1.dirSync)().name;
         
     | 
| 
       238 
239 
     | 
    
         
             
                        const messageFilePath = (0, node_path_1.join)(tmpDir, `DRAFT_MESSAGE__${versionPlanName}.md`);
         
     | 
| 
       239 
     | 
    
         
            -
                        (0,  
     | 
| 
      
 240 
     | 
    
         
            +
                        (0, node_fs_1.writeFileSync)(messageFilePath, '');
         
     | 
| 
       240 
241 
     | 
    
         
             
                        await (0, launch_editor_1.launchEditor)(messageFilePath);
         
     | 
| 
       241 
     | 
    
         
            -
                        message = (0,  
     | 
| 
      
 242 
     | 
    
         
            +
                        message = (0, node_fs_1.readFileSync)(messageFilePath, 'utf-8');
         
     | 
| 
       242 
243 
     | 
    
         
             
                    }
         
     | 
| 
       243 
244 
     | 
    
         
             
                    message = message.trim();
         
     | 
| 
       244 
245 
     | 
    
         
             
                    if (!message) {
         
     | 
| 
         @@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); 
     | 
|
| 
       3 
3 
     | 
    
         
             
            exports.releaseCLIHandler = void 0;
         
     | 
| 
       4 
4 
     | 
    
         
             
            exports.createAPI = createAPI;
         
     | 
| 
       5 
5 
     | 
    
         
             
            const enquirer_1 = require("enquirer");
         
     | 
| 
       6 
     | 
    
         
            -
            const  
     | 
| 
      
 6 
     | 
    
         
            +
            const node_fs_1 = require("node:fs");
         
     | 
| 
       7 
7 
     | 
    
         
             
            const nx_json_1 = require("../../config/nx-json");
         
     | 
| 
       8 
8 
     | 
    
         
             
            const file_map_utils_1 = require("../../project-graph/file-map-utils");
         
     | 
| 
       9 
9 
     | 
    
         
             
            const project_graph_1 = require("../../project-graph/project-graph");
         
     | 
| 
         @@ -106,7 +106,7 @@ function createAPI(overrideReleaseConfig) { 
     | 
|
| 
       106 
106 
     | 
    
         
             
                            }
         
     | 
| 
       107 
107 
     | 
    
         
             
                            group.resolvedVersionPlans.forEach((plan) => {
         
     | 
| 
       108 
108 
     | 
    
         
             
                                if (!args.dryRun) {
         
     | 
| 
       109 
     | 
    
         
            -
                                    (0,  
     | 
| 
      
 109 
     | 
    
         
            +
                                    (0, node_fs_1.rmSync)(plan.absolutePath, { recursive: true, force: true });
         
     | 
| 
       110 
110 
     | 
    
         
             
                                    if (args.verbose) {
         
     | 
| 
       111 
111 
     | 
    
         
             
                                        console.log(`Removing ${plan.relativePath}`);
         
     | 
| 
       112 
112 
     | 
    
         
             
                                    }
         
     | 
| 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            "use strict";
         
     | 
| 
       2 
2 
     | 
    
         
             
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
3 
     | 
    
         
             
            exports.resetHandler = resetHandler;
         
     | 
| 
       4 
     | 
    
         
            -
            const  
     | 
| 
      
 4 
     | 
    
         
            +
            const node_fs_1 = require("node:fs");
         
     | 
| 
       5 
5 
     | 
    
         
             
            const client_1 = require("../../daemon/client/client");
         
     | 
| 
       6 
6 
     | 
    
         
             
            const cache_directory_1 = require("../../utils/cache-directory");
         
     | 
| 
       7 
7 
     | 
    
         
             
            const output_1 = require("../../utils/output");
         
     | 
| 
         @@ -37,16 +37,16 @@ async function resetHandler(args) { 
     | 
|
| 
       37 
37 
     | 
    
         
             
                    try {
         
     | 
| 
       38 
38 
     | 
    
         
             
                        await killDaemon();
         
     | 
| 
       39 
39 
     | 
    
         
             
                    }
         
     | 
| 
       40 
     | 
    
         
            -
                    catch {
         
     | 
| 
       41 
     | 
    
         
            -
                        errors.push('Failed to stop the Nx Daemon.');
         
     | 
| 
      
 40 
     | 
    
         
            +
                    catch (e) {
         
     | 
| 
      
 41 
     | 
    
         
            +
                        errors.push('Failed to stop the Nx Daemon.', e.toString());
         
     | 
| 
       42 
42 
     | 
    
         
             
                    }
         
     | 
| 
       43 
43 
     | 
    
         
             
                }
         
     | 
| 
       44 
44 
     | 
    
         
             
                if (all || args.onlyCache) {
         
     | 
| 
       45 
45 
     | 
    
         
             
                    try {
         
     | 
| 
       46 
46 
     | 
    
         
             
                        await cleanupCacheEntries();
         
     | 
| 
       47 
47 
     | 
    
         
             
                    }
         
     | 
| 
       48 
     | 
    
         
            -
                    catch {
         
     | 
| 
       49 
     | 
    
         
            -
                        errors.push('Failed to clean up the cache directory.');
         
     | 
| 
      
 48 
     | 
    
         
            +
                    catch (e) {
         
     | 
| 
      
 49 
     | 
    
         
            +
                        errors.push('Failed to clean up the cache directory.', e.toString());
         
     | 
| 
       50 
50 
     | 
    
         
             
                    }
         
     | 
| 
       51 
51 
     | 
    
         
             
                }
         
     | 
| 
       52 
52 
     | 
    
         
             
                if (all || args.onlyWorkspaceData) {
         
     | 
| 
         @@ -59,12 +59,17 @@ async function resetHandler(args) { 
     | 
|
| 
       59 
59 
     | 
    
         
             
                    try {
         
     | 
| 
       60 
60 
     | 
    
         
             
                        await cleanupWorkspaceData();
         
     | 
| 
       61 
61 
     | 
    
         
             
                    }
         
     | 
| 
       62 
     | 
    
         
            -
                    catch {
         
     | 
| 
       63 
     | 
    
         
            -
                        errors.push('Failed to clean up the workspace data directory.');
         
     | 
| 
      
 62 
     | 
    
         
            +
                    catch (e) {
         
     | 
| 
      
 63 
     | 
    
         
            +
                        errors.push('Failed to clean up the workspace data directory.', e.toString());
         
     | 
| 
       64 
64 
     | 
    
         
             
                    }
         
     | 
| 
       65 
65 
     | 
    
         
             
                }
         
     | 
| 
       66 
66 
     | 
    
         
             
                if (all || args.onlyCloud) {
         
     | 
| 
       67 
     | 
    
         
            -
                     
     | 
| 
      
 67 
     | 
    
         
            +
                    try {
         
     | 
| 
      
 68 
     | 
    
         
            +
                        await resetCloudClient();
         
     | 
| 
      
 69 
     | 
    
         
            +
                    }
         
     | 
| 
      
 70 
     | 
    
         
            +
                    catch (e) {
         
     | 
| 
      
 71 
     | 
    
         
            +
                        errors.push('Failed to reset the Nx Cloud client.', e.toString());
         
     | 
| 
      
 72 
     | 
    
         
            +
                    }
         
     | 
| 
       68 
73 
     | 
    
         
             
                }
         
     | 
| 
       69 
74 
     | 
    
         
             
                if (errors.length > 0) {
         
     | 
| 
       70 
75 
     | 
    
         
             
                    output_1.output.error({
         
     | 
| 
         @@ -79,8 +84,10 @@ async function resetHandler(args) { 
     | 
|
| 
       79 
84 
     | 
    
         
             
                    });
         
     | 
| 
       80 
85 
     | 
    
         
             
                }
         
     | 
| 
       81 
86 
     | 
    
         
             
            }
         
     | 
| 
       82 
     | 
    
         
            -
            function killDaemon() {
         
     | 
| 
       83 
     | 
    
         
            -
                 
     | 
| 
      
 87 
     | 
    
         
            +
            async function killDaemon() {
         
     | 
| 
      
 88 
     | 
    
         
            +
                if (client_1.daemonClient.enabled()) {
         
     | 
| 
      
 89 
     | 
    
         
            +
                    return client_1.daemonClient.stop();
         
     | 
| 
      
 90 
     | 
    
         
            +
                }
         
     | 
| 
       84 
91 
     | 
    
         
             
            }
         
     | 
| 
       85 
92 
     | 
    
         
             
            async function resetCloudClient() {
         
     | 
| 
       86 
93 
     | 
    
         
             
                // Remove nx cloud marker files. This helps if the use happens to run `nx-cloud start-ci-run` or
         
     | 
| 
         @@ -92,17 +99,17 @@ async function resetCloudClient() { 
     | 
|
| 
       92 
99 
     | 
    
         
             
            }
         
     | 
| 
       93 
100 
     | 
    
         
             
            function cleanupCacheEntries() {
         
     | 
| 
       94 
101 
     | 
    
         
             
                return incrementalBackoff(INCREMENTAL_BACKOFF_FIRST_DELAY, INCREMENTAL_BACKOFF_MAX_DURATION, () => {
         
     | 
| 
       95 
     | 
    
         
            -
                    (0,  
     | 
| 
      
 102 
     | 
    
         
            +
                    (0, node_fs_1.rmSync)(cache_directory_1.cacheDir, { recursive: true, force: true });
         
     | 
| 
       96 
103 
     | 
    
         
             
                });
         
     | 
| 
       97 
104 
     | 
    
         
             
            }
         
     | 
| 
       98 
105 
     | 
    
         
             
            function cleanupNativeFileCache() {
         
     | 
| 
       99 
106 
     | 
    
         
             
                return incrementalBackoff(INCREMENTAL_BACKOFF_FIRST_DELAY, INCREMENTAL_BACKOFF_MAX_DURATION, () => {
         
     | 
| 
       100 
     | 
    
         
            -
                    (0,  
     | 
| 
      
 107 
     | 
    
         
            +
                    (0, node_fs_1.rmSync)((0, native_file_cache_location_1.getNativeFileCacheLocation)(), { recursive: true, force: true });
         
     | 
| 
       101 
108 
     | 
    
         
             
                });
         
     | 
| 
       102 
109 
     | 
    
         
             
            }
         
     | 
| 
       103 
110 
     | 
    
         
             
            function cleanupWorkspaceData() {
         
     | 
| 
       104 
111 
     | 
    
         
             
                return incrementalBackoff(INCREMENTAL_BACKOFF_FIRST_DELAY, INCREMENTAL_BACKOFF_MAX_DURATION, () => {
         
     | 
| 
       105 
     | 
    
         
            -
                    (0,  
     | 
| 
      
 112 
     | 
    
         
            +
                    (0, node_fs_1.rmSync)(cache_directory_1.workspaceDataDirectory, { recursive: true, force: true });
         
     | 
| 
       106 
113 
     | 
    
         
             
                });
         
     | 
| 
       107 
114 
     | 
    
         
             
            }
         
     | 
| 
       108 
115 
     | 
    
         
             
            async function incrementalBackoff(ms, maxDuration, callback) {
         
     |