diff --git a/.vscode/launch.json b/.vscode/launch.json index 0a77516b..269c7660 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -10,11 +10,11 @@ // $ cd vscode-generator-code // $ npm link // + // Or use the run-generator.mjs script which registers and runs the generator locally "type": "node", "request": "launch", "name": "yeoman code", - "program": "${workspaceFolder}/node_modules/yeoman-environment/cli/index.js", - "args": [ "run", "code" ], + "program": "${workspaceFolder}/run-generator.mjs", "cwd": "${workspaceFolder}", "console": "integratedTerminal", "internalConsoleOptions": "neverOpen" diff --git a/generators/app/dependencyVersions/package.json b/generators/app/dependencyVersions/package.json index 8b4d8543..f5040aaa 100644 --- a/generators/app/dependencyVersions/package.json +++ b/generators/app/dependencyVersions/package.json @@ -5,33 +5,35 @@ "private": true, "dependencies": { "@types/mocha": "^10.0.10", - "@types/node": "22.x", + "@types/node": "24.x", "@types/assert": "^1.5.11", - "typescript-eslint": "^8.56.1", - "eslint": "^9.39.3", + "typescript-eslint": "^8.61.1", + "eslint": "^10.5.0", "glob": "^13.0.6", - "mocha": "^11.7.5", - "typescript": "^5.9.3", - "@vscode/test-cli": "^0.0.12", - "@vscode/test-electron": "^2.5.2", - "@vscode/test-web": "^0.0.80", + "mocha": "^11.7.6", + "typescript": "^6.0.3", + "@vscode/test-cli": "^0.0.15", + "@vscode/test-electron": "^3.0.0", + "@vscode/test-web": "^0.0.81", "@types/webpack-env": "^1.18.8", "@types/vscode-notebook-renderer": "^1.72.4", - "concurrently": "^9.2.1", + "concurrently": "^10.0.3", "css-loader": "^7.1.4", "fork-ts-checker-webpack-plugin": "^9.1.0", "style-loader": "^4.0.0", - "ts-loader": "^9.5.4", + "ts-loader": "^9.6.2", "vscode-dts": "^0.3.3", "vscode-notebook-error-overlay": "^1.1.0", - "webpack": "^5.105.3", + "webpack": "^5.107.2", "util": "^0.12.5", - "webpack-cli": "^6.0.1", - "webpack-dev-server": "^5.2.3", + "webpack-cli": "^7.0.3", + "webpack-dev-server": "^5.2.5", "assert": "^2.1.0", "process": "^0.11.10", "npm-run-all": "^4.1.5", - "esbuild": "^0.27.3", - "@esbuild-plugins/node-globals-polyfill": "^0.2.3" + "esbuild": "^0.28.1", + "@esbuild-plugins/node-globals-polyfill": "^0.2.3", + "diff": "^8.0.4", + "serialize-javascript": "^7.0.6" } } diff --git a/generators/app/generate-command-web.js b/generators/app/generate-command-web.js index 0330c180..055df50e 100644 --- a/generators/app/generate-command-web.js +++ b/generators/app/generate-command-web.js @@ -49,17 +49,17 @@ export default { generator.fs.copyTpl(generator.templatePath('README.md'), generator.destinationPath('README.md'), extensionConfig); generator.fs.copyTpl(generator.templatePath('CHANGELOG.md'), generator.destinationPath('CHANGELOG.md'), extensionConfig); generator.fs.copyTpl(generator.templatePath('vsc-extension-quickstart.md'), generator.destinationPath('vsc-extension-quickstart.md'), extensionConfig); - generator.fs.copyTpl(generator.templatePath('tsconfig.json'), generator.destinationPath('tsconfig.json'), extensionConfig); - generator.fs.copyTpl(generator.templatePath('src/web/extension.ts'), generator.destinationPath('src/web/extension.ts'), extensionConfig); generator.fs.copy(generator.templatePath('src/web/test/suite/extension.test.ts'), generator.destinationPath('src/web/test/suite/extension.test.ts')); if (bundler === 'esbuild') { + generator.fs.copyTpl(generator.templatePath('esbuild-tsconfig.json'), generator.destinationPath('tsconfig.json'), extensionConfig); generator.fs.copyTpl(generator.templatePath('esbuild.js'), generator.destinationPath('esbuild.js'), extensionConfig); generator.fs.copyTpl(generator.templatePath('esbuild-package.json'), generator.destinationPath('package.json'), extensionConfig); generator.fs.copy(generator.templatePath('src/web/test/suite/esbuild-mochaTestRunner.ts'), generator.destinationPath('src/web/test/suite/mochaTestRunner.ts')); } else { + generator.fs.copyTpl(generator.templatePath('webpack-tsconfig.json'), generator.destinationPath('tsconfig.json'), extensionConfig); generator.fs.copyTpl(generator.templatePath('webpack.config.js'), generator.destinationPath('webpack.config.js'), extensionConfig); generator.fs.copyTpl(generator.templatePath('webpack-package.json'), generator.destinationPath('package.json'), extensionConfig); generator.fs.copy(generator.templatePath('src/web/test/suite/webpack-mochaTestRunner.ts'), generator.destinationPath('src/web/test/suite/index.ts')); diff --git a/generators/app/templates/ext-command-js/jsconfig.json b/generators/app/templates/ext-command-js/jsconfig.json index c716805e..96475491 100644 --- a/generators/app/templates/ext-command-js/jsconfig.json +++ b/generators/app/templates/ext-command-js/jsconfig.json @@ -1,13 +1,17 @@ { - "compilerOptions": { - "module": "Node16", - "target": "ES2022", - "checkJs": <%- JSON.stringify(checkJavaScript) %>, /* Typecheck .js files. */ - "lib": [ - "ES2022" - ] - }, - "exclude": [ - "node_modules" - ] + "compilerOptions": { + "module": "Node16", + "target": "ES2022", + "checkJs": <%- JSON.stringify(checkJavaScript) %>, /* Typecheck .js files. */ + "lib": [ + "ES2022" + ], + "types": [ + "node", + "mocha", + ], + }, + "exclude": [ + "node_modules" + ] } diff --git a/generators/app/templates/ext-command-js/package.json b/generators/app/templates/ext-command-js/package.json index 05638af0..83903716 100644 --- a/generators/app/templates/ext-command-js/package.json +++ b/generators/app/templates/ext-command-js/package.json @@ -29,5 +29,9 @@ <%- dep("eslint") %>, <%- dep("@vscode/test-cli") %>, <%- dep("@vscode/test-electron") %> + }, + "overrides": { + <%- dep("diff") %>, + <%- dep("serialize-javascript") %> } } diff --git a/generators/app/templates/ext-command-ts/package.json b/generators/app/templates/ext-command-ts/package.json index 5db09dc2..eb55458a 100644 --- a/generators/app/templates/ext-command-ts/package.json +++ b/generators/app/templates/ext-command-ts/package.json @@ -39,5 +39,9 @@ <%- dep("@vscode/test-cli") %>, <%- dep("@vscode/test-electron") %><% if (insiders) { %>, <%- dep("vscode-dts") %><% } %> + }, + "overrides": { + <%- dep("diff") %>, + <%- dep("serialize-javascript") %> } } diff --git a/generators/app/templates/ext-command-ts/tsconfig.json b/generators/app/templates/ext-command-ts/tsconfig.json index 356580f8..21f5a232 100644 --- a/generators/app/templates/ext-command-ts/tsconfig.json +++ b/generators/app/templates/ext-command-ts/tsconfig.json @@ -1,17 +1,21 @@ { - "compilerOptions": { - "module": "Node16", - "target": "ES2022", - "outDir": "out", - "lib": [ - "ES2022" - ], - "sourceMap": true, - "rootDir": "src", - "strict": true, /* enable all strict type-checking options */ - /* Additional Checks */ - // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ - // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ - // "noUnusedParameters": true, /* Report errors on unused parameters. */ - } + "compilerOptions": { + "module": "Node16", + "target": "ES2022", + "outDir": "out", + "lib": [ + "ES2022" + ], + "types": [ + "node", + "mocha", + ], + "sourceMap": true, + "rootDir": "src", + "strict": true, /* enable all strict type-checking options */ + /* Additional Checks */ + // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ + // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ + // "noUnusedParameters": true, /* Report errors on unused parameters. */ + } } diff --git a/generators/app/templates/ext-command-ts/vscode-esbuild/package.json b/generators/app/templates/ext-command-ts/vscode-esbuild/package.json index d121fd9b..f17fcdd2 100644 --- a/generators/app/templates/ext-command-ts/vscode-esbuild/package.json +++ b/generators/app/templates/ext-command-ts/vscode-esbuild/package.json @@ -47,5 +47,9 @@ <%- dep("@vscode/test-cli") %>, <%- dep("@vscode/test-electron") %><% if (insiders) { %>, <%- dep("vscode-dts") %><% } %> + }, + "overrides": { + <%- dep("diff") %>, + <%- dep("serialize-javascript") %> } } diff --git a/generators/app/templates/ext-command-ts/vscode-esbuild/tsconfig.json b/generators/app/templates/ext-command-ts/vscode-esbuild/tsconfig.json index cb353759..7e8073bc 100644 --- a/generators/app/templates/ext-command-ts/vscode-esbuild/tsconfig.json +++ b/generators/app/templates/ext-command-ts/vscode-esbuild/tsconfig.json @@ -1,16 +1,20 @@ { - "compilerOptions": { - "module": "Node16", - "target": "ES2022", - "lib": [ - "ES2022" - ], - "sourceMap": true, - "rootDir": "src", - "strict": true, /* enable all strict type-checking options */ - /* Additional Checks */ - // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ - // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ - // "noUnusedParameters": true, /* Report errors on unused parameters. */ - } + "compilerOptions": { + "module": "Node16", + "target": "ES2022", + "lib": [ + "ES2022" + ], + "types": [ + "node", + "mocha" + ], + "sourceMap": true, + "rootDir": "src", + "strict": true, /* enable all strict type-checking options */ + /* Additional Checks */ + // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ + // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ + // "noUnusedParameters": true, /* Report errors on unused parameters. */ + } } diff --git a/generators/app/templates/ext-command-ts/vscode-webpack/package.json b/generators/app/templates/ext-command-ts/vscode-webpack/package.json index 2b75d56e..9dc0e058 100644 --- a/generators/app/templates/ext-command-ts/vscode-webpack/package.json +++ b/generators/app/templates/ext-command-ts/vscode-webpack/package.json @@ -45,5 +45,9 @@ <%- dep("@vscode/test-cli") %>, <%- dep("@vscode/test-electron") %><% if (insiders) { %>, <%- dep("vscode-dts") %><% } %> + }, + "overrides": { + <%- dep("diff") %>, + <%- dep("serialize-javascript") %> } } diff --git a/generators/app/templates/ext-command-ts/vscode-webpack/tsconfig.json b/generators/app/templates/ext-command-ts/vscode-webpack/tsconfig.json index cb353759..23cddf67 100644 --- a/generators/app/templates/ext-command-ts/vscode-webpack/tsconfig.json +++ b/generators/app/templates/ext-command-ts/vscode-webpack/tsconfig.json @@ -5,6 +5,10 @@ "lib": [ "ES2022" ], + "types": [ + "node", + "mocha" + ], "sourceMap": true, "rootDir": "src", "strict": true, /* enable all strict type-checking options */ diff --git a/generators/app/templates/ext-command-web/esbuild-package.json b/generators/app/templates/ext-command-web/esbuild-package.json index f2f6097d..47c3970a 100644 --- a/generators/app/templates/ext-command-web/esbuild-package.json +++ b/generators/app/templates/ext-command-web/esbuild-package.json @@ -46,5 +46,9 @@ <%- dep("npm-run-all") %>, <%- dep("@esbuild-plugins/node-globals-polyfill") %>, <%- dep("assert") %> + }, + "overrides": { + <%- dep("diff") %>, + <%- dep("serialize-javascript") %> } } diff --git a/generators/app/templates/ext-command-web/esbuild-tsconfig.json b/generators/app/templates/ext-command-web/esbuild-tsconfig.json new file mode 100644 index 00000000..41c4663d --- /dev/null +++ b/generators/app/templates/ext-command-web/esbuild-tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "module": "Node16", + "target": "ES2020", + "outDir": "dist", + "lib": [ + "ES2020", + "WebWorker" + ], + "types": [ + "mocha" + ], + "sourceMap": true, + "rootDir": "src", + "strict": true, /* enable all strict type-checking options */ + /* Additional Checks */ + // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ + // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ + // "noUnusedParameters": true, /* Report errors on unused parameters. */ + } +} diff --git a/generators/app/templates/ext-command-web/tsconfig.json b/generators/app/templates/ext-command-web/tsconfig.json deleted file mode 100644 index 94a5d0c2..00000000 --- a/generators/app/templates/ext-command-web/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "compilerOptions": { - "module": "Node16", - "target": "ES2020", - "outDir": "dist", - "lib": [ - "ES2020", "WebWorker" - ], - "sourceMap": true, - "rootDir": "src", - "strict": true, /* enable all strict type-checking options */ - /* Additional Checks */ - // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ - // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ - // "noUnusedParameters": true, /* Report errors on unused parameters. */ - } -} diff --git a/generators/app/templates/ext-command-web/webpack-package.json b/generators/app/templates/ext-command-web/webpack-package.json index bbf3a20f..0558f932 100644 --- a/generators/app/templates/ext-command-web/webpack-package.json +++ b/generators/app/templates/ext-command-web/webpack-package.json @@ -44,5 +44,9 @@ <%- dep("@types/webpack-env") %>, <%- dep("assert") %>, <%- dep("process") %> + }, + "overrides": { + <%- dep("diff") %>, + <%- dep("serialize-javascript") %> } } diff --git a/generators/app/templates/ext-command-web/webpack-tsconfig.json b/generators/app/templates/ext-command-web/webpack-tsconfig.json new file mode 100644 index 00000000..11ad7a53 --- /dev/null +++ b/generators/app/templates/ext-command-web/webpack-tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "Node16", + "target": "ES2020", + "outDir": "dist", + "lib": [ + "ES2020", + "WebWorker" + ], + "types": [ + "mocha", + "webpack-env" + ], + "sourceMap": true, + "rootDir": "src", + "strict": true, /* enable all strict type-checking options */ + /* Additional Checks */ + // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ + // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ + // "noUnusedParameters": true, /* Report errors on unused parameters. */ + } +} diff --git a/package-lock.json b/package-lock.json index 79617459..26a94cb7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,26 +1,26 @@ { "name": "generator-code", - "version": "1.11.18", + "version": "1.12.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "generator-code", - "version": "1.11.18", + "version": "1.12.0", "license": "MIT", "dependencies": { "fast-plist": "^0.1.3", "request-light": "^0.8.0", - "which": "^6.0.1", - "yeoman-generator": "^8.1.1", + "which": "^7.0.0", + "yeoman-generator": "^8.2.2", "yosay": "^3.0.0" }, "devDependencies": { "@types/node": "^20.x", - "@yeoman/adapter": "^3.1.1", + "@yeoman/adapter": "^4.0.2", "jsonc-parser": "^3.3.1", "yeoman-environment": "^6.1.0", - "yeoman-test": "^11.2.0" + "yeoman-test": "^11.6.0" }, "engines": { "node": ">=20.5.0" @@ -50,30 +50,29 @@ } }, "node_modules/@inquirer/ansi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@inquirer/ansi/-/ansi-1.0.2.tgz", - "integrity": "sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@inquirer/ansi/-/ansi-2.0.7.tgz", + "integrity": "sha512-3eTuUO1vH2cZm2ZKHeQxnOqlTi9EfZDGgIe3BL3I4u+rJHocr9Fz86M4fjYABPvFnQG/gGK551HqDiIcETwU6Q==", "devOptional": true, "license": "MIT", "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" } }, "node_modules/@inquirer/checkbox": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-4.3.2.tgz", - "integrity": "sha512-VXukHf0RR1doGe6Sm4F0Em7SWYLTHSsbGfJdS9Ja2bX5/D5uwVOEjr07cncLROdBvmnvCATYEWlHqYmXv2IlQA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-5.2.1.tgz", + "integrity": "sha512-b6xmA/VlTe0ZgDQHDui+Nav470u7u49nRd8/iuhOcQPO9Ch7lGuogydhi2VOmNlZ+zXcM8IcPuNSwQcdJaF/kw==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/ansi": "^2.0.7", + "@inquirer/core": "^11.2.1", + "@inquirer/figures": "^2.0.7", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -85,17 +84,17 @@ } }, "node_modules/@inquirer/confirm": { - "version": "5.1.21", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.1.21.tgz", - "integrity": "sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-6.1.1.tgz", + "integrity": "sha512-eb8DBZcz/2qHWQda4rk2JiQk5h9QV/cVHi1yjt0f69WFZMRFn0sJTye3EAP8icut8UDMjQPsaH5KbcOogefrFQ==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" + "@inquirer/core": "^11.2.1", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -107,23 +106,22 @@ } }, "node_modules/@inquirer/core": { - "version": "10.3.2", - "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.3.2.tgz", - "integrity": "sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A==", + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-11.2.1.tgz", + "integrity": "sha512-Qd6GJT1yVyrZZCfN8W2qKF5ApmqryXRhRKCuip8h01x2w/esJQ2XIYc6f9abMIHgKQdBfFTSOdbHRLAhuM09UA==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", + "@inquirer/ansi": "^2.0.7", + "@inquirer/figures": "^2.0.7", + "@inquirer/type": "^4.0.7", "cli-width": "^4.1.0", - "mute-stream": "^2.0.0", - "signal-exit": "^4.1.0", - "wrap-ansi": "^6.2.0", - "yoctocolors-cjs": "^2.1.3" + "fast-wrap-ansi": "^0.2.0", + "mute-stream": "^3.0.0", + "signal-exit": "^4.1.0" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -134,34 +132,19 @@ } } }, - "node_modules/@inquirer/core/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "devOptional": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@inquirer/editor": { - "version": "4.2.23", - "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-4.2.23.tgz", - "integrity": "sha512-aLSROkEwirotxZ1pBaP8tugXRFCxW94gwrQLxXfrZsKkfjOYC1aRvAZuhpJOb5cu4IBTJdsCigUlf2iCOu4ZDQ==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-5.2.2.tgz", + "integrity": "sha512-ZRVd/oD+sYsUd5zVm0NflqEzlqfYCyHNsqkHl2oWXEUHs12tCbcSFi+wVFEvD8+LGRaMUsVrE7qeo6lSG/S1Vg==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/external-editor": "^1.0.3", - "@inquirer/type": "^3.0.10" + "@inquirer/core": "^11.2.1", + "@inquirer/external-editor": "^3.0.3", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -173,18 +156,17 @@ } }, "node_modules/@inquirer/expand": { - "version": "4.0.23", - "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-4.0.23.tgz", - "integrity": "sha512-nRzdOyFYnpeYTTR2qFwEVmIWypzdAx/sIkCMeTNTcflFOovfqUk+HcFhQQVBftAh9gmGrpFj6QcGEqrDMDOiew==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-5.1.1.tgz", + "integrity": "sha512-YmQpenjbFSHAK3sOd44puHh3V1KXXr+JiNpUztoSQ4drLh2rTVzTap/YtlAVu/5xavifIlBfNEzJ/neZJ1a/1g==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/core": "^11.2.1", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -196,17 +178,17 @@ } }, "node_modules/@inquirer/external-editor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@inquirer/external-editor/-/external-editor-1.0.3.tgz", - "integrity": "sha512-RWbSrDiYmO4LbejWY7ttpxczuwQyZLBUyygsA9Nsv95hpzUWwnNTVQmAq3xuh7vNwCp07UTmE5i11XAEExx4RA==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@inquirer/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-6thf5I8q7lZwzGLAxPaaGEREEkZ3nyePPDQ1oyobblxmEE8mqTLguScP7pDjUTAibiyb4hfXl+qjUEJ+di/aNA==", "devOptional": true, "license": "MIT", "dependencies": { "chardet": "^2.1.1", - "iconv-lite": "^0.7.0" + "iconv-lite": "^0.7.2" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -235,27 +217,27 @@ } }, "node_modules/@inquirer/figures": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.15.tgz", - "integrity": "sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-2.0.7.tgz", + "integrity": "sha512-aJ8TBPOGB6f/2qziPfElISTCEd5XOYTFckA2SGjhNmiKzfK/u4ot3v0DUzGVdUnKjN10EqnnEPck36BkyfLnJw==", "devOptional": true, "license": "MIT", "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" } }, "node_modules/@inquirer/input": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-4.3.1.tgz", - "integrity": "sha512-kN0pAM4yPrLjJ1XJBjDxyfDduXOuQHrBB8aLDMueuwUGn+vNpF7Gq7TvyVxx8u4SHlFFj4trmj+a2cbpG4Jn1g==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-5.1.2.tgz", + "integrity": "sha512-9K/DDBSQpOyZSkt6sOVP9Vo0TR7atX2kuILsUu0x3wVcVbe97lJwIJKMLdMw25tDYuXl/qp6erT0Xs1rfmcfZg==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" + "@inquirer/core": "^11.2.1", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -267,17 +249,17 @@ } }, "node_modules/@inquirer/number": { - "version": "3.0.23", - "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-3.0.23.tgz", - "integrity": "sha512-5Smv0OK7K0KUzUfYUXDXQc9jrf8OHo4ktlEayFlelCjwMXz0299Y8OrI+lj7i4gCBY15UObk76q0QtxjzFcFcg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-4.1.1.tgz", + "integrity": "sha512-XF4IXAbPnGPgw0wsbC/i2tPcyfdZgDpUlhsqU0SfT4IRIGWha6Xm9VRgN5yYxJq+jnyXlfXI/nQ3ulfk0iEICA==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" + "@inquirer/core": "^11.2.1", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -289,18 +271,18 @@ } }, "node_modules/@inquirer/password": { - "version": "4.0.23", - "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-4.0.23.tgz", - "integrity": "sha512-zREJHjhT5vJBMZX/IUbyI9zVtVfOLiTO66MrF/3GFZYZ7T4YILW5MSkEYHceSii/KtRk+4i3RE7E1CUXA2jHcA==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-5.1.1.tgz", + "integrity": "sha512-3XBfF7DAsp5qeDsvN5Rd1HmbNokVvEQoUM0QLrRcybC9nX96w3Pbmu7qUsb3IT3J3jBvs2+mTXaKHOUsgHMLzg==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" + "@inquirer/ansi": "^2.0.7", + "@inquirer/core": "^11.2.1", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -312,25 +294,25 @@ } }, "node_modules/@inquirer/prompts": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-7.10.1.tgz", - "integrity": "sha512-Dx/y9bCQcXLI5ooQ5KyvA4FTgeo2jYj/7plWfV5Ak5wDPKQZgudKez2ixyfz7tKXzcJciTxqLeK7R9HItwiByg==", + "version": "8.5.2", + "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-8.5.2.tgz", + "integrity": "sha512-IYR/3C/paEVVQYQvdDlFZVjRCJVYHHON0XXMH91KO9GSxs0TdKYWlUdvfQl2EfAHDxUaN3IBffkE/BDTh5nJ6g==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/checkbox": "^4.3.2", - "@inquirer/confirm": "^5.1.21", - "@inquirer/editor": "^4.2.23", - "@inquirer/expand": "^4.0.23", - "@inquirer/input": "^4.3.1", - "@inquirer/number": "^3.0.23", - "@inquirer/password": "^4.0.23", - "@inquirer/rawlist": "^4.1.11", - "@inquirer/search": "^3.2.2", - "@inquirer/select": "^4.4.2" + "@inquirer/checkbox": "^5.2.1", + "@inquirer/confirm": "^6.1.1", + "@inquirer/editor": "^5.2.2", + "@inquirer/expand": "^5.1.1", + "@inquirer/input": "^5.1.2", + "@inquirer/number": "^4.1.1", + "@inquirer/password": "^5.1.1", + "@inquirer/rawlist": "^5.3.1", + "@inquirer/search": "^4.2.1", + "@inquirer/select": "^5.2.1" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -342,18 +324,17 @@ } }, "node_modules/@inquirer/rawlist": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-4.1.11.tgz", - "integrity": "sha512-+LLQB8XGr3I5LZN/GuAHo+GpDJegQwuPARLChlMICNdwW7OwV2izlCSCxN6cqpL0sMXmbKbFcItJgdQq5EBXTw==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-5.3.1.tgz", + "integrity": "sha512-QqdTqQddL3qPX/PPrjobpsO25NZ4dWXgTLenrR445L2ptLEYE6Z+PD5c5CNDJNx4ugRgELAIpSIJxZaO2jJ2Og==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/core": "^11.2.1", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -365,19 +346,18 @@ } }, "node_modules/@inquirer/search": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-3.2.2.tgz", - "integrity": "sha512-p2bvRfENXCZdWF/U2BXvnSI9h+tuA8iNqtUKb9UWbmLYCRQxd8WkvwWvYn+3NgYaNwdUkHytJMGG4MMLucI1kA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-4.2.1.tgz", + "integrity": "sha512-xJj8QWKRSrfKoBIITLZK61dD3zwo0Rz11fgDImku30/Oe81zMdIdGgrLY2h6RkJ+KZ/GhNYIRMKnH/62qBTA5g==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/core": "^11.2.1", + "@inquirer/figures": "^2.0.7", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -389,20 +369,19 @@ } }, "node_modules/@inquirer/select": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-4.4.2.tgz", - "integrity": "sha512-l4xMuJo55MAe+N7Qr4rX90vypFwCajSakx59qe/tMaC1aEHWLyw68wF4o0A4SLAY4E0nd+Vt+EyskeDIqu1M6w==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-5.2.1.tgz", + "integrity": "sha512-FlDndEUww8m7BfukO2nJa25vhD+H5jxxCv4oGioKqzyWz3nPHhhw4LKdYRSlXuAx7DsdWia7iyaBPKKS95Evfw==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/ansi": "^2.0.7", + "@inquirer/core": "^11.2.1", + "@inquirer/figures": "^2.0.7", + "@inquirer/type": "^4.0.7" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -414,13 +393,13 @@ } }, "node_modules/@inquirer/type": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-3.0.10.tgz", - "integrity": "sha512-BvziSRxfz5Ov8ch0z/n3oijRSEcEsHnhggm4xFZe93DHcUCTlutlq9Ox4SVENAfcRD22UQq7T/atg9Wr3k09eA==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-4.0.7.tgz", + "integrity": "sha512-t28inv14nMQ1PhKpsJPY+kEs/c00qzeCOS2gTNRyTjG5d6qsVA2fItxW4hkvGZ5lvanGLdtCzVIx5dwdRpN1+g==", "devOptional": true, "license": "MIT", "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^20.17.0" }, "peerDependencies": { "@types/node": ">=18" @@ -1279,9 +1258,9 @@ } }, "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.13.tgz", + "integrity": "sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==", "license": "MIT", "dependencies": { "@types/ms": "*" @@ -1351,18 +1330,19 @@ } }, "node_modules/@yeoman/adapter": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@yeoman/adapter/-/adapter-3.1.1.tgz", - "integrity": "sha512-yhBK+r5LHcUcZi1JvjL6BCg0HsbWkeh+nsTJa0zJxjFeRvMDLTSVb222hVXUMKP9qHjrK1Cu2Nga0EaRlLpm4A==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@yeoman/adapter/-/adapter-4.0.2.tgz", + "integrity": "sha512-4uttbNuZ/guMBRhf7R6TCfnLT6XY1HGpxsq6vpHRM3AVr5G6Qz7xXqxG2kdMzBGtIuH5CkXz0k/Byl27GsvIkg==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.0.0", - "chalk": "^5.2.0", - "inquirer": "^12.0.0", - "log-symbols": "^7.0.0", - "ora": "^9.0.0", - "p-queue": "^9.0.0", + "@inquirer/core": "^11.1.5", + "@inquirer/prompts": "^8.3.0", + "chalk": "^5.6.2", + "inquirer": "^13.3.0", + "log-symbols": "^7.0.1", + "ora": "^9.3.0", + "p-queue": "^9.1.0", "text-table": "^0.2.0" }, "engines": { @@ -1432,9 +1412,9 @@ } }, "node_modules/@yeoman/namespace": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@yeoman/namespace/-/namespace-1.0.1.tgz", - "integrity": "sha512-XGdYL0HCoPvrzW7T8bxD6RbCY/B8uvR2jpOzJc/yEwTueKHwoVhjSLjVXkokQAO0LNl8nQFLVZ1aKfr2eFWZeA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@yeoman/namespace/-/namespace-2.1.0.tgz", + "integrity": "sha512-/BxsZlALPRp34juAzzh9QUr2hR9w9o+dBSw8sF/iv7NfUU/A/QI0xOyVtQJz2uCPuvtY6nkGDxYxZoKI/lnFQg==", "license": "MIT", "engines": { "node": "^16.13.0 || >=18.12.0" @@ -1505,7 +1485,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "devOptional": true, + "dev": true, "engines": { "node": ">=8" } @@ -1514,7 +1494,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "devOptional": true, + "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -1732,9 +1712,9 @@ } }, "node_modules/chardet": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-2.1.1.tgz", - "integrity": "sha512-PsezH1rqdV9VvyNhxxOW32/d75r01NY7TQCmOqomRo15ZSOKbpTFVsfjghxo6JloQUCGnH4k1LGu0R4yCLlWQQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-2.2.0.tgz", + "integrity": "sha512-rddelWYNPRrXq6PtNEN2S3f6t9ILzvqaN5pVgi4kqt9jHQaXIial9PznB5iSPVlQSLNaaH22ItWz3EJtQ10+OA==", "devOptional": true, "license": "MIT" }, @@ -1832,7 +1812,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "devOptional": true, + "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -1844,7 +1824,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "devOptional": true + "dev": true }, "node_modules/colors": { "version": "1.0.3", @@ -2008,7 +1988,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "devOptional": true + "dev": true }, "node_modules/encoding": { "version": "0.1.13", @@ -2124,14 +2104,14 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/fast-string-truncated-width/-/fast-string-truncated-width-3.0.3.tgz", "integrity": "sha512-0jjjIEL6+0jag3l2XWWizO64/aZVtpiGE3t0Zgqxv0DPuxiMjvB3M24fCyhZUO4KomJQPj3LTSUnDP3GpdwC0g==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/fast-string-width": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/fast-string-width/-/fast-string-width-3.0.2.tgz", "integrity": "sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "fast-string-truncated-width": "^3.0.2" @@ -2141,7 +2121,7 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/fast-wrap-ansi/-/fast-wrap-ansi-0.2.2.tgz", "integrity": "sha512-7F2Fl+TjRSenLqlU3UjSH0iyqopqoZIu7eZVpEirP2g1GtWa2G/ecEmBdgz31+Mxr+ELclgg6sokpSFIQiZ02Q==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "fast-string-width": "^3.0.2" @@ -2497,22 +2477,22 @@ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, "node_modules/inquirer": { - "version": "12.11.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-12.11.1.tgz", - "integrity": "sha512-9VF7mrY+3OmsAfjH3yKz/pLbJ5z22E23hENKw3/LNSaA/sAt3v49bDRY+Ygct1xwuKT+U+cBfTzjCPySna69Qw==", + "version": "13.4.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-13.4.3.tgz", + "integrity": "sha512-EPd3IqieHSavSOXh+LZhrIkdQcOELWeRblLT6kslQr+cF9XTh/HxZdSt1YkHH1iq4dvqBnV42uwg2YlorgOy6g==", "devOptional": true, "license": "MIT", "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/prompts": "^7.10.1", - "@inquirer/type": "^3.0.10", - "mute-stream": "^2.0.0", + "@inquirer/ansi": "^2.0.5", + "@inquirer/core": "^11.1.10", + "@inquirer/prompts": "^8.4.3", + "@inquirer/type": "^4.0.5", + "mute-stream": "^3.0.0", "run-async": "^4.0.6", "rxjs": "^7.8.2" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -2547,7 +2527,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "devOptional": true, + "dev": true, "engines": { "node": ">=8" } @@ -3146,13 +3126,13 @@ } }, "node_modules/mute-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-2.0.0.tgz", - "integrity": "sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-3.0.0.tgz", + "integrity": "sha512-dkEJPVvun4FryqBmZ5KhDo0K9iDXAwn08tMLDinNdRBNPcYEDiWYysLcc6k3mjTMlbP9KyylvRpd4wFtwrT9rw==", "devOptional": true, "license": "ISC", "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": "^20.17.0 || >=22.9.0" } }, "node_modules/negotiator": { @@ -4304,7 +4284,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "devOptional": true, + "dev": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -4333,7 +4313,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "devOptional": true, + "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -4417,9 +4397,9 @@ } }, "node_modules/tar": { - "version": "7.5.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.11.tgz", - "integrity": "sha512-ChjMH33/KetonMTAtpYdgUFr0tbz69Fp2v7zWxQfYZX4g5ZN2nOBXm1R2xyA+lMIKrLKIoKAwFj93jE/avX9cQ==", + "version": "7.5.16", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.16.tgz", + "integrity": "sha512-56adEpPMouktRlBLXiaYFFzZ/3+JXa8P9n7WbR+ibIjtviN55mEaOkiysCnPnWm+7kkui1Dn8J9l+g6zV8731w==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -4743,9 +4723,9 @@ } }, "node_modules/which": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-6.0.1.tgz", - "integrity": "sha512-oGLe46MIrCRqX7ytPUf66EAYvdeMIZYn3WaocqqKZAxrBpkqHfL/qvTyJ/bTk5+AqHCjXmrv3CEWgy368zhRUg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-7.0.0.tgz", + "integrity": "sha512-RancgH2dmbLdHl6LRhEqvklWMgl/Hdnun0Y90KhBOLkMefg8Qa7/Zel8Sm+8HEcP6DEjzsWzpkuBQEZok58isA==", "license": "ISC", "dependencies": { "isexe": "^4.0.0" @@ -4754,7 +4734,7 @@ "node-which": "bin/which.js" }, "engines": { - "node": "^20.17.0 || >=22.9.0" + "node": "^22.22.2 || ^24.15.0 || >=26.0.0" } }, "node_modules/which-package-manager": { @@ -4955,350 +4935,6 @@ "mem-fs": "^4.1.4" } }, - "node_modules/yeoman-environment/node_modules/@inquirer/ansi": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@inquirer/ansi/-/ansi-2.0.6.tgz", - "integrity": "sha512-I/INw4sHGlVZ/afZOckpLiDP9SmbMl1g/GCqeHjLw1Afw/0PlRs2tRFgTGWmdI0hoNuWZn3y2iHNmG1vyECyQQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/checkbox": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-5.2.0.tgz", - "integrity": "sha512-1HJt+3fqxblp/GQjdntSyoSHYBc0e3CzXVgjFpKA6qFLd9FHBBqwN8Co0xYH6t2JVUZrtFwZ4bBiwptkiLxyOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^2.0.6", - "@inquirer/core": "^11.2.0", - "@inquirer/figures": "^2.0.6", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/confirm": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-6.1.0.tgz", - "integrity": "sha512-USpeB76eqK7yGricDlGAupxWlp4a59qpeZOoNWaxO/nJln7agpJveyNkQ1d5u8YXG6TOqxZtQpKPORQQDrdVsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^11.2.0", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/core": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-11.2.0.tgz", - "integrity": "sha512-joR1YS2sI0us+9d0I8ViqFbrRLONO8CFTuyvBX4ZVBSch+VsZiugUABdrhBXXJR1VyEzvpz5SQCix3keETQ58g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^2.0.6", - "@inquirer/figures": "^2.0.6", - "@inquirer/type": "^4.0.6", - "cli-width": "^4.1.0", - "fast-wrap-ansi": "^0.2.0", - "mute-stream": "^4.0.0", - "signal-exit": "^4.1.0" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/editor": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-5.2.0.tgz", - "integrity": "sha512-/m+sgRmzSdK6HDtVnl3PmI6MnZC4O+LLezedoJcrX7mINhTjjb0hlC7aEDGZXkFTB4b5uQ0q59AhYTah88KbNg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^11.2.0", - "@inquirer/external-editor": "^3.0.1", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/expand": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-5.1.0.tgz", - "integrity": "sha512-fR7g4BVnIcs+4NApF6C5byflNM/EULxSxsv/2Jvg+gmop0R6eBIPvZqE6RYnTy1tQTFnf9wyHkwNoQSZbofaGA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^11.2.0", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/external-editor": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/external-editor/-/external-editor-3.0.1.tgz", - "integrity": "sha512-tam+Gwjsxg2sx3iUVPkAnhKT/yrk2rd2NAa7XJU/J8OYpU0ifXsnp12xlvzp/DCpWBXVv+vLQsqnpAWwUcWD5Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "chardet": "^2.1.1", - "iconv-lite": "^0.7.2" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/figures": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-2.0.6.tgz", - "integrity": "sha512-dsZgQtH2t5Q6ah3aPbZbeEZAxsD9qQu0DXf01AltuEfRTm+NoLN6+rLVbr+4edeEbNCp/wBNM6mALRWtsQpfkw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/input": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-5.1.0.tgz", - "integrity": "sha512-sVZCz6P6e8tW5g2bSFel1oLpa6jK/u7BexFfrgTqR8syIdnHqy+iopnlSbYBZMsCK52chLjhGNBxt0eRqhsghw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^11.2.0", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/number": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-4.1.0.tgz", - "integrity": "sha512-VMXB/XejCbaSTf9Xucl7dqjzzsaGsrs6XwSYXPbGZ2QbSuq/Gz8XamhSi9ClRubNXZlGry9xVg1tKkJdTDgCtQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^11.2.0", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/password": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-5.1.0.tgz", - "integrity": "sha512-5tqRuKCDIUxdPxTI/CuLnh914kz+WMPmURHKnZgui9gk43ebudEsdu4EwSn1CPSi5R+17YpBG+ba/YqTnRAcJA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^2.0.6", - "@inquirer/core": "^11.2.0", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/prompts": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-8.5.0.tgz", - "integrity": "sha512-pLjXOnY4y3R1mgyHP3pXD/8eXejp+L/dde/0N2NLKgKfMstqhNZrpvs7Wkzbl9FYFQh10LRQ7QZwq+cz9rrhyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/checkbox": "^5.2.0", - "@inquirer/confirm": "^6.1.0", - "@inquirer/editor": "^5.2.0", - "@inquirer/expand": "^5.1.0", - "@inquirer/input": "^5.1.0", - "@inquirer/number": "^4.1.0", - "@inquirer/password": "^5.1.0", - "@inquirer/rawlist": "^5.3.0", - "@inquirer/search": "^4.2.0", - "@inquirer/select": "^5.2.0" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/rawlist": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-5.3.0.tgz", - "integrity": "sha512-p+vAeTAD+cGXjGleP1F5LXrX2ISxNDZm+lqeBpnJausNLSZskZZkcggwhomqP8Igx9oIjnoeOrw98xvdFvdm2w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^11.2.0", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/search": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-4.2.0.tgz", - "integrity": "sha512-ByURoSGIaSl5O5Q0AmYmVmUsXbMUcBGNoA3FRL7TOyiA22IeFHymJKRkuILbOIlJwqnBk7AnPpseodyFUBzg+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^11.2.0", - "@inquirer/figures": "^2.0.6", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/select": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-5.2.0.tgz", - "integrity": "sha512-6IzkcmEbEXfgVbxZ2d1UyJFbCBoc6dTofulFmrYuomIp88HXiVqRbqbg4/mbfZhvnNo6xYmnYo2AEmDof6fQkg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^2.0.6", - "@inquirer/core": "^11.2.0", - "@inquirer/figures": "^2.0.6", - "@inquirer/type": "^4.0.6" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/@inquirer/type": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-4.0.6.tgz", - "integrity": "sha512-J+9tdxOskuYuGjsvGaq00AamhDgjR7anhEW2dP4QdQpFCMPngCeC/bCYWQ5NsMWZRdsy53is7kAHb/+7cwDk2g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, "node_modules/yeoman-environment/node_modules/@sindresorhus/merge-streams": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz", @@ -5312,36 +4948,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/yeoman-environment/node_modules/@yeoman/adapter": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@yeoman/adapter/-/adapter-4.0.2.tgz", - "integrity": "sha512-4uttbNuZ/guMBRhf7R6TCfnLT6XY1HGpxsq6vpHRM3AVr5G6Qz7xXqxG2kdMzBGtIuH5CkXz0k/Byl27GsvIkg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^11.1.5", - "@inquirer/prompts": "^8.3.0", - "chalk": "^5.6.2", - "inquirer": "^13.3.0", - "log-symbols": "^7.0.1", - "ora": "^9.3.0", - "p-queue": "^9.1.0", - "text-table": "^0.2.0" - }, - "engines": { - "node": "20 || >=22" - } - }, - "node_modules/yeoman-environment/node_modules/@yeoman/namespace": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@yeoman/namespace/-/namespace-2.1.0.tgz", - "integrity": "sha512-/BxsZlALPRp34juAzzh9QUr2hR9w9o+dBSw8sF/iv7NfUU/A/QI0xOyVtQJz2uCPuvtY6nkGDxYxZoKI/lnFQg==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^16.13.0 || >=18.12.0" - } - }, "node_modules/yeoman-environment/node_modules/globby": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/globby/-/globby-16.2.0.tgz", @@ -5363,60 +4969,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/yeoman-environment/node_modules/iconv-lite": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.2.tgz", - "integrity": "sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw==", - "dev": true, - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" - } - }, - "node_modules/yeoman-environment/node_modules/inquirer": { - "version": "13.4.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-13.4.3.tgz", - "integrity": "sha512-EPd3IqieHSavSOXh+LZhrIkdQcOELWeRblLT6kslQr+cF9XTh/HxZdSt1YkHH1iq4dvqBnV42uwg2YlorgOy6g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^2.0.5", - "@inquirer/core": "^11.1.10", - "@inquirer/prompts": "^8.4.3", - "@inquirer/type": "^4.0.5", - "mute-stream": "^3.0.0", - "run-async": "^4.0.6", - "rxjs": "^7.8.2" - }, - "engines": { - "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/yeoman-environment/node_modules/inquirer/node_modules/mute-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-3.0.0.tgz", - "integrity": "sha512-dkEJPVvun4FryqBmZ5KhDo0K9iDXAwn08tMLDinNdRBNPcYEDiWYysLcc6k3mjTMlbP9KyylvRpd4wFtwrT9rw==", - "dev": true, - "license": "ISC", - "engines": { - "node": "^20.17.0 || >=22.9.0" - } - }, "node_modules/yeoman-environment/node_modules/locate-path": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-8.0.0.tgz", @@ -5433,16 +4985,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/yeoman-environment/node_modules/mute-stream": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-4.0.0.tgz", - "integrity": "sha512-gSrprq0fJ3EiOErzjdIZrjysVVmJ4uu1QWfCDss5LypA5OXvrMje5Ym5z6V6RLyJ2eF87lasX7t6a0AnFvZblg==", - "dev": true, - "license": "ISC", - "engines": { - "node": "^22.22.2 || ^24.15.0 || >=26.0.0" - } - }, "node_modules/yeoman-environment/node_modules/p-limit": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", @@ -5475,36 +5017,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/yeoman-environment/node_modules/p-queue": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-9.3.0.tgz", - "integrity": "sha512-7NED7xhQ74Ngp4JP/2e0VZHp7vSWfJfqeiR92jPgxsz6m0Se4P03YoTKa9dDXyZ3r6P616gUXttrB6nnHYKang==", - "dev": true, - "license": "MIT", - "dependencies": { - "eventemitter3": "^5.0.4", - "p-timeout": "^7.0.0" - }, - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/yeoman-environment/node_modules/p-timeout": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-7.0.1.tgz", - "integrity": "sha512-AxTM2wDGORHGEkPCt8yqxOTMgpfbEHqF51f/5fJCmwFC3C/zNcGT63SymH2ttOAaiIws2zVg4+izQCjrakcwHg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/yeoman-environment/node_modules/unicorn-magic": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.4.0.tgz", @@ -5532,27 +5044,27 @@ } }, "node_modules/yeoman-generator": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/yeoman-generator/-/yeoman-generator-8.1.1.tgz", - "integrity": "sha512-P5LK7YBCLJ3+5l0Dg01j0FriCc+XlTNFeRMKi+Qg4e8tzRRmI2/NtxIkQRYLuiv0G4FixM7yrDSqdbA1axr4Eg==", + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/yeoman-generator/-/yeoman-generator-8.2.2.tgz", + "integrity": "sha512-GIvRULf09VrTyJ1nMIxCRFTI8gzW9zsAxVXTHOmsWVKZ7QYPdByRQvFtnp0XOObM6dvDSoAwBhuYR6i5inp/ig==", "license": "BSD-2-Clause", "dependencies": { - "@types/debug": "^4.1.12", + "@types/debug": "^4.1.13", "@types/lodash-es": "^4.17.12", - "@yeoman/namespace": "^1.0.1", + "@yeoman/namespace": "^2.1.0", "chalk": "^5.6.2", "debug": "^4.4.3", "execa": "^9.6.1", "latest-version": "^9.0.0", - "lodash-es": "^4.17.23", - "mem-fs-editor": "^12.0.2", + "lodash-es": "^4.18.1", + "mem-fs-editor": "^12.0.4", "minimist": "^1.2.8", "read-package-up": "^12.0.0", "semver": "^7.7.4", - "simple-git": "^3.32.3", + "simple-git": "^3.36.0", "sort-keys": "^6.0.0", "text-table": "^0.2.0", - "type-fest": "^5.4.4" + "type-fest": "^5.6.0" }, "engines": { "node": "^20.17.0 || >=22.9.0" @@ -5569,9 +5081,9 @@ } }, "node_modules/yeoman-test": { - "version": "11.5.2", - "resolved": "https://registry.npmjs.org/yeoman-test/-/yeoman-test-11.5.2.tgz", - "integrity": "sha512-FzyFmIUW+fJvRUJhYwtGdCn8aYw39jXZHvsXsAlUdXJjDI1F/wWOSic7HC/m6FmlmX5OqbpkQwze3VhQCnxl3w==", + "version": "11.6.0", + "resolved": "https://registry.npmjs.org/yeoman-test/-/yeoman-test-11.6.0.tgz", + "integrity": "sha512-sT3p4qXwTtOobZsLjrzJs3CFs1Rl5vSOByMdkpJ1s/qu63fcYYd7LPr0qkgacRxSTqy+zap3BhblhVSJyylV6g==", "dev": true, "license": "MIT", "dependencies": { @@ -5616,19 +5128,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/yoctocolors-cjs": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/yoctocolors-cjs/-/yoctocolors-cjs-2.1.3.tgz", - "integrity": "sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==", - "devOptional": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/yosay": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/yosay/-/yosay-3.0.0.tgz", diff --git a/package.json b/package.json index 84a875e5..ecddbabb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-code", - "version": "1.11.18", + "version": "1.12.0", "description": "Yeoman generator for Visual Studio Code extensions.", "keywords": [ "yeoman-generator", @@ -37,15 +37,15 @@ "dependencies": { "fast-plist": "^0.1.3", "request-light": "^0.8.0", - "which": "^6.0.1", - "yeoman-generator": "^8.1.1", + "which": "^7.0.0", + "yeoman-generator": "^8.2.2", "yosay": "^3.0.0" }, "devDependencies": { "@types/node": "^20.x", - "@yeoman/adapter": "^3.1.1", + "@yeoman/adapter": "^4.0.2", "jsonc-parser": "^3.3.1", "yeoman-environment": "^6.1.0", - "yeoman-test": "^11.2.0" + "yeoman-test": "^11.6.0" } } diff --git a/run-generator.mjs b/run-generator.mjs new file mode 100644 index 00000000..76fcf855 --- /dev/null +++ b/run-generator.mjs @@ -0,0 +1,29 @@ +#!/usr/bin/env node +/** + * Launcher script to run the vscode-generator-code + * Usage: node run-generator.mjs [options] + */ + +import { createEnv } from 'yeoman-environment'; +import path from 'path'; +import { fileURLToPath } from 'url'; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +async function runGenerator() { + try { + const env = createEnv(); + const appPath = path.join(__dirname, 'generators', 'app'); + + // Register the local generator + env.register(appPath, 'code:app'); + + // Run the generator + await env.run('code:app'); + } catch (error) { + console.error('Error running generator:', error.message); + process.exit(1); + } +} + +runGenerator(); diff --git a/test/test-integration.mjs b/test/test-integration.mjs index 6d937fc4..55bcd1f7 100644 --- a/test/test-integration.mjs +++ b/test/test-integration.mjs @@ -5,7 +5,8 @@ import * as path from 'path'; import { createHelpers } from 'yeoman-test'; import * as cp from 'child_process'; -import { describe, it } from 'node:test'; +import { describe, it, before } from 'node:test'; +import { mkdtempSync, rmSync } from 'node:fs'; import * as assert from 'node:assert'; @@ -13,10 +14,21 @@ import { fileURLToPath } from 'url'; describe('integration tests', { timeout: 7 * 60 * 1000 }, () => { - const helpers = createHelpers(); const appLocation = path.join(fileURLToPath(import.meta.url), '../../generators/app'); const npmCommand = process.platform === 'win32' ? 'npm.cmd' : 'npm'; + let helpers; + + before(async function () { + helpers = createHelpers({}); + }); + + // Use a short temp dir to avoid exceeding the 103-char Unix socket path limit. + // macOS TMPDIR resolves to a deep /private/var/folders/... path which, combined + // with the .vscode-test/user-data/*.sock suffix, exceeds the limit. + function makeTmpDir() { + return mkdtempSync('/tmp/vsc-'); + } async function checkAudit(cwd) { @@ -32,7 +44,7 @@ describe('integration tests', { timeout: 7 * 60 * 1000 }, () => { it('command-ts integration test (install, compile and run extension tests)', async () => { - const runResult = await helpers.run(appLocation).withAnswers({ + const runResult = await helpers.run(appLocation).inDir(makeTmpDir()).withAnswers({ type: 'ext-command-ts', name: 'testCom', displayName: 'Test Com', @@ -63,7 +75,7 @@ describe('integration tests', { timeout: 7 * 60 * 1000 }, () => { it('command-ts-webpack integration test (install, pack and run extension tests)', async () => { - const runResult = await helpers.run(appLocation).withAnswers({ + const runResult = await helpers.run(appLocation).inDir(makeTmpDir()).withAnswers({ type: 'ext-command-ts', name: 'testCom', displayName: 'Test Com', @@ -93,7 +105,7 @@ describe('integration tests', { timeout: 7 * 60 * 1000 }, () => { it('command-ts-esbuild integration test (install, pack and run extension tests)', async () => { - const runResult = await helpers.run(appLocation).withAnswers({ + const runResult = await helpers.run(appLocation).inDir(makeTmpDir()).withAnswers({ type: 'ext-command-ts', name: 'testCom', displayName: 'Test Com', @@ -123,7 +135,7 @@ describe('integration tests', { timeout: 7 * 60 * 1000 }, () => { it('command-ts-web-webpack integration test (install, pack and run extension tests)', async () => { - const runResult = await helpers.run(appLocation).withAnswers({ + const runResult = await helpers.run(appLocation).inDir(makeTmpDir()).withAnswers({ type: 'ext-command-web', name: 'testCom', displayName: 'Test Com', @@ -153,7 +165,7 @@ describe('integration tests', { timeout: 7 * 60 * 1000 }, () => { it('command-ts-web-esbuild integration test (install, pack and run extension tests)', async () => { - const runResult = await helpers.run(appLocation).withAnswers({ + const runResult = await helpers.run(appLocation).inDir(makeTmpDir()).withAnswers({ type: 'ext-command-web', name: 'testCom', displayName: 'Test Com', diff --git a/test/test.mjs b/test/test.mjs index 3b8ee046..46596b90 100644 --- a/test/test.mjs +++ b/test/test.mjs @@ -11,14 +11,15 @@ import * as env from '../generators/app/env.js'; describe('test code generator', { timeout: 10000 }, () => { - const helpers = createHelpers(); const appLocation = path.join(fileURLToPath(import.meta.url), '../../generators/app'); const fixturesLocation = path.join(fileURLToPath(import.meta.url), '../fixtures'); let engineVersion; let dependencyVersions; + let helpers; before(async function () { + helpers = createHelpers({}); engineVersion = await env.getLatestVSCodeVersion(); console.info(' expecting engine version ' + engineVersion);