@@ -7638,6 +7638,7 @@ var Ce = async (t, n2) => {
76387638
76397639// scripts/create-app.js
76407640import debug2 from "debug" ;
7641+ import { createRequire } from "module" ;
76417642
76427643// scripts/create-plugin.js
76437644import { join } from "path" ;
@@ -7897,14 +7898,7 @@ export default [
78977898 {
78987899 templates : ( ) => fe ( {
78997900 message : "Select .gitignore templates:" ,
7900- options : [
7901- "node" ,
7902- "visualstudiocode" ,
7903- "windows" ,
7904- "macos" ,
7905- "linux" ,
7906- "jetbrain"
7907- ] ,
7901+ options : [ "node" , "visualstudiocode" , "windows" , "macos" , "linux" , "jetbrain" ] ,
79087902 initialValue : [ "node" , "visualstudiocode" ]
79097903 } )
79107904 } ,
@@ -10872,16 +10866,41 @@ describe('Example Test', () => {
1087210866function updatePackageJsonScripts ( newScripts ) {
1087310867 const packageJsonPath = join3 ( process . cwd ( ) , "package.json" ) ;
1087410868 if ( fs . existsSync ( packageJsonPath ) ) {
10875- const packageJson = JSON . parse ( fs . readFileSync ( packageJsonPath , "utf-8" ) ) ;
10876- packageJson . scripts = { ...packageJson . scripts , ...newScripts } ;
10877- fs . writeFileSync ( packageJsonPath , JSON . stringify ( packageJson , null , 2 ) ) ;
10869+ const packageJson2 = JSON . parse ( fs . readFileSync ( packageJsonPath , "utf-8" ) ) ;
10870+ packageJson2 . scripts = { ...packageJson2 . scripts , ...newScripts } ;
10871+ fs . writeFileSync ( packageJsonPath , JSON . stringify ( packageJson2 , null , 2 ) ) ;
1087810872 } else {
1087910873 console . error ( "package.json not found. Please run npm init first." ) ;
1088010874 }
1088110875}
1088210876
1088310877// scripts/create-app.js
10878+ var require2 = createRequire ( import . meta. url ) ;
10879+ var packageJson = require2 ( "../package.json" ) ;
1088410880var args = process . argv . slice ( 2 ) ;
10881+ if ( args . includes ( "-h" ) || args . includes ( "--help" ) ) {
10882+ console . log ( `
10883+ Usage: create-wizard [projectName] [options]
10884+
10885+ Initializes a new project using an interactive wizard.
10886+
10887+ Arguments:
10888+ projectName The name of the project to create. If provided, the wizard will skip the project name prompt.
10889+
10890+ Options:
10891+ -v, --version Output the current version and exit.
10892+ -h, --help Display this help message and exit.
10893+ --plugin Configure and install a new plugin (e.g., Prettier, ESLint).
10894+ --create-test Set up a new test framework for the project.
10895+ --license Generate a new LICENSE file.
10896+ --debug=TRUE Enable debug logging.
10897+ ` ) ;
10898+ process . exit ( 0 ) ;
10899+ }
10900+ if ( args . includes ( "-v" ) || args . includes ( "--version" ) ) {
10901+ console . log ( packageJson . version ) ;
10902+ process . exit ( 0 ) ;
10903+ }
1088510904var debugFlag = args . find ( ( arg ) => arg . startsWith ( "--debug=" ) ) ;
1088610905var isDebugEnabled = debugFlag === "--debug=TRUE" || process . env . DEBUG === "TRUE" ;
1088710906if ( isDebugEnabled ) {
@@ -11122,21 +11141,21 @@ async function main4(deps) {
1112211141 }
1112311142 }
1112411143 const packageJsonPath = join4 ( projectDir , "package.json" ) ;
11125- let packageJson = JSON . parse ( fs2 . readFileSync ( packageJsonPath , "utf-8" ) ) ;
11144+ let packageJson2 = JSON . parse ( fs2 . readFileSync ( packageJsonPath , "utf-8" ) ) ;
1112611145 const userDependencies = answers . dependencies . reduce ( ( acc , dep ) => {
1112711146 acc [ dep . name ] = dep . version ;
1112811147 return acc ;
1112911148 } , { } ) ;
11130- packageJson . dependencies = {
11131- ...packageJson . dependencies ,
11149+ packageJson2 . dependencies = {
11150+ ...packageJson2 . dependencies ,
1113211151 ...userDependencies
1113311152 } ;
11134- packageJson . devDependencies = {
11135- ...packageJson . devDependencies
11153+ packageJson2 . devDependencies = {
11154+ ...packageJson2 . devDependencies
1113611155 } ;
1113711156 if ( answers . includeTypeScript ) {
11138- packageJson . devDependencies = {
11139- ...packageJson . devDependencies ,
11157+ packageJson2 . devDependencies = {
11158+ ...packageJson2 . devDependencies ,
1114011159 typescript : "^5.3.3"
1114111160 } ;
1114211161 fs2 . writeFileSync (
@@ -11158,13 +11177,13 @@ async function main4(deps) {
1115811177 ) ;
1115911178 }
1116011179 if ( answers . includeEslint ) {
11161- packageJson . devDependencies = {
11162- ...packageJson . devDependencies ,
11180+ packageJson2 . devDependencies = {
11181+ ...packageJson2 . devDependencies ,
1116311182 eslint : "^8.56.0" ,
1116411183 globals : "^15.2.0"
1116511184 } ;
1116611185 if ( answers . includePrettier ) {
11167- packageJson . devDependencies [ "eslint-config-prettier" ] = "^9.1.0" ;
11186+ packageJson2 . devDependencies [ "eslint-config-prettier" ] = "^9.1.0" ;
1116811187 }
1116911188 const isESM = [
1117011189 "vite" ,
@@ -11176,10 +11195,10 @@ async function main4(deps) {
1117611195 "docusaurus-site"
1117711196 ] . includes ( answers . template ) ;
1117811197 if ( isESM ) {
11179- packageJson . type = "module" ;
11198+ packageJson2 . type = "module" ;
1118011199 }
1118111200 let eslintConfigContent ;
11182- if ( packageJson . type === "module" ) {
11201+ if ( packageJson2 . type === "module" ) {
1118311202 eslintConfigContent = `import js from "@eslint/js";
1118411203import globals from "globals";
1118511204${ answers . includePrettier ? "import prettierConfig from 'eslint-config-prettier';\n" : "" }
@@ -11201,15 +11220,15 @@ module.exports = [
1120111220` ;
1120211221 }
1120311222 fs2 . writeFileSync ( join4 ( projectDir , "eslint.config.js" ) , eslintConfigContent ) ;
11204- packageJson . scripts = {
11205- ...packageJson . scripts ,
11223+ packageJson2 . scripts = {
11224+ ...packageJson2 . scripts ,
1120611225 lint : "eslint ." ,
1120711226 "lint:fix" : "eslint . --fix"
1120811227 } ;
1120911228 }
1121011229 if ( answers . includePrettier ) {
11211- packageJson . devDependencies = {
11212- ...packageJson . devDependencies ,
11230+ packageJson2 . devDependencies = {
11231+ ...packageJson2 . devDependencies ,
1121311232 prettier : "^3.2.5"
1121411233 } ;
1121511234 fs2 . writeFileSync (
@@ -11224,8 +11243,8 @@ module.exports = [
1122411243 2
1122511244 )
1122611245 ) ;
11227- packageJson . scripts = {
11228- ...packageJson . scripts ,
11246+ packageJson2 . scripts = {
11247+ ...packageJson2 . scripts ,
1122911248 "format:check" : "prettier --check ." ,
1123011249 format : "prettier --write ."
1123111250 } ;
@@ -11320,7 +11339,7 @@ test-job:
1132011339`
1132111340 ) ;
1132211341 }
11323- fs2 . writeFileSync ( packageJsonPath , JSON . stringify ( packageJson , null , 2 ) ) ;
11342+ fs2 . writeFileSync ( packageJsonPath , JSON . stringify ( packageJson2 , null , 2 ) ) ;
1132411343 if ( answers . includeDebugConfig ) {
1132511344 const vscodeDir = join4 ( projectDir , ".vscode" ) ;
1132611345 fs2 . mkdirSync ( vscodeDir , { recursive : true } ) ;
@@ -11344,10 +11363,10 @@ test-job:
1134411363 )
1134511364 ) ;
1134611365 }
11347- const allDependencies = Object . entries ( packageJson . dependencies || { } ) . map (
11366+ const allDependencies = Object . entries ( packageJson2 . dependencies || { } ) . map (
1134811367 ( [ name , version ] ) => `${ name } @${ version } `
1134911368 ) ;
11350- const allDevDependencies = Object . entries ( packageJson . devDependencies || { } ) . map (
11369+ const allDevDependencies = Object . entries ( packageJson2 . devDependencies || { } ) . map (
1135111370 ( [ name , version ] ) => `${ name } @${ version } `
1135211371 ) ;
1135311372 if ( allDependencies . length > 0 ) {
0 commit comments