@tsed/cli-core 3.21.0-rc.2 → 3.21.0-rc.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/lib/cjs/CliCore.js +2 -0
  2. package/lib/cjs/CliCore.js.map +1 -1
  3. package/lib/cjs/domains/CliError.js +3 -1
  4. package/lib/cjs/domains/CliError.js.map +1 -1
  5. package/lib/cjs/services/CliDockerComposeYaml.js +1 -0
  6. package/lib/cjs/services/CliDockerComposeYaml.js.map +1 -1
  7. package/lib/cjs/services/CliExeca.js +1 -3
  8. package/lib/cjs/services/CliExeca.js.map +1 -1
  9. package/lib/cjs/services/CliFs.js +1 -3
  10. package/lib/cjs/services/CliFs.js.map +1 -1
  11. package/lib/cjs/services/CliHooks.js +1 -0
  12. package/lib/cjs/services/CliHooks.js.map +1 -1
  13. package/lib/cjs/services/CliHttpClient.js +4 -2
  14. package/lib/cjs/services/CliHttpClient.js.map +1 -1
  15. package/lib/cjs/services/CliHttpLogClient.js +2 -0
  16. package/lib/cjs/services/CliHttpLogClient.js.map +1 -1
  17. package/lib/cjs/services/CliPlugins.js +5 -0
  18. package/lib/cjs/services/CliPlugins.js.map +1 -1
  19. package/lib/cjs/services/CliProxyAgent.js +2 -0
  20. package/lib/cjs/services/CliProxyAgent.js.map +1 -1
  21. package/lib/cjs/services/CliRunScript.js +3 -2
  22. package/lib/cjs/services/CliRunScript.js.map +1 -1
  23. package/lib/cjs/services/CliService.js +7 -5
  24. package/lib/cjs/services/CliService.js.map +1 -1
  25. package/lib/cjs/services/CliYaml.js +2 -0
  26. package/lib/cjs/services/CliYaml.js.map +1 -1
  27. package/lib/cjs/services/NpmRegistryClient.js +2 -1
  28. package/lib/cjs/services/NpmRegistryClient.js.map +1 -1
  29. package/lib/cjs/services/ProjectPackageJson.js +8 -4
  30. package/lib/cjs/services/ProjectPackageJson.js.map +1 -1
  31. package/lib/cjs/services/Renderer.js +12 -10
  32. package/lib/cjs/services/Renderer.js.map +1 -1
  33. package/lib/cjs/utils/createInjector.js +1 -2
  34. package/lib/cjs/utils/createInjector.js.map +1 -1
  35. package/lib/cjs/utils/createTasksRunner.js +8 -16
  36. package/lib/cjs/utils/createTasksRunner.js.map +1 -1
  37. package/lib/cjs/utils/getCommandMetadata.js +1 -2
  38. package/lib/cjs/utils/getCommandMetadata.js.map +1 -1
  39. package/lib/cjs/utils/getPackageJson.js +2 -4
  40. package/lib/cjs/utils/getPackageJson.js.map +1 -1
  41. package/lib/cjs/utils/loadPlugins.js +3 -5
  42. package/lib/cjs/utils/loadPlugins.js.map +1 -1
  43. package/lib/esm/CliCore.js +2 -0
  44. package/lib/esm/CliCore.js.map +1 -1
  45. package/lib/esm/domains/CliError.js +3 -1
  46. package/lib/esm/domains/CliError.js.map +1 -1
  47. package/lib/esm/services/CliDockerComposeYaml.js +1 -0
  48. package/lib/esm/services/CliDockerComposeYaml.js.map +1 -1
  49. package/lib/esm/services/CliExeca.js +1 -3
  50. package/lib/esm/services/CliExeca.js.map +1 -1
  51. package/lib/esm/services/CliFs.js +1 -3
  52. package/lib/esm/services/CliFs.js.map +1 -1
  53. package/lib/esm/services/CliHooks.js +1 -0
  54. package/lib/esm/services/CliHooks.js.map +1 -1
  55. package/lib/esm/services/CliHttpClient.js +4 -2
  56. package/lib/esm/services/CliHttpClient.js.map +1 -1
  57. package/lib/esm/services/CliHttpLogClient.js +2 -0
  58. package/lib/esm/services/CliHttpLogClient.js.map +1 -1
  59. package/lib/esm/services/CliPlugins.js +5 -0
  60. package/lib/esm/services/CliPlugins.js.map +1 -1
  61. package/lib/esm/services/CliProxyAgent.js +2 -0
  62. package/lib/esm/services/CliProxyAgent.js.map +1 -1
  63. package/lib/esm/services/CliRunScript.js +3 -2
  64. package/lib/esm/services/CliRunScript.js.map +1 -1
  65. package/lib/esm/services/CliService.js +7 -5
  66. package/lib/esm/services/CliService.js.map +1 -1
  67. package/lib/esm/services/CliYaml.js +2 -0
  68. package/lib/esm/services/CliYaml.js.map +1 -1
  69. package/lib/esm/services/NpmRegistryClient.js +2 -1
  70. package/lib/esm/services/NpmRegistryClient.js.map +1 -1
  71. package/lib/esm/services/ProjectPackageJson.js +8 -4
  72. package/lib/esm/services/ProjectPackageJson.js.map +1 -1
  73. package/lib/esm/services/Renderer.js +12 -10
  74. package/lib/esm/services/Renderer.js.map +1 -1
  75. package/lib/esm/utils/createInjector.js +1 -2
  76. package/lib/esm/utils/createInjector.js.map +1 -1
  77. package/lib/esm/utils/createTasksRunner.js +8 -16
  78. package/lib/esm/utils/createTasksRunner.js.map +1 -1
  79. package/lib/esm/utils/getCommandMetadata.js +1 -2
  80. package/lib/esm/utils/getCommandMetadata.js.map +1 -1
  81. package/lib/esm/utils/getPackageJson.js +2 -4
  82. package/lib/esm/utils/getPackageJson.js.map +1 -1
  83. package/lib/esm/utils/loadPlugins.js +3 -5
  84. package/lib/esm/utils/loadPlugins.js.map +1 -1
  85. package/lib/types/services/CliExeca.d.ts +20 -19
  86. package/lib/types/services/CliHttpClient.d.ts +1 -1
  87. package/package.json +17 -17
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectPackageJson.js","sourceRoot":"","sources":["../../../src/services/ProjectPackageJson.ts"],"names":[],"mappings":"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","sourcesContent":["import {getValue, setValue} from \"@tsed/core\";\nimport {Configuration, Inject, Injectable} from \"@tsed/di\";\nimport {join} from \"path\";\nimport {EMPTY, throwError} from \"rxjs\";\nimport {catchError} from \"rxjs/operators\";\nimport semver from \"semver\";\nimport {PackageJson} from \"../interfaces/PackageJson\";\nimport {PackageManager, ProjectPreferences} from \"../interfaces/ProjectPreferences\";\nimport {CliExeca} from \"./CliExeca\";\nimport {CliFs} from \"./CliFs\";\nimport {isValidVersion} from \"../utils/isValidVersion\";\nimport {getPackageJson} from \"../utils/getPackageJson\";\n\nexport interface InstallOptions {\n packageManager?: PackageManager;\n\n [key: string]: any;\n}\n\nfunction mapPackagesWithInvalidVersion(deps: any) {\n const toString = (info: [string, string]) => {\n return info[1] === \"latest\" ? info[0] : info.join(\"@\");\n };\n\n return Object.entries(deps)\n .filter(([, version]) => !semver.valid(version as string))\n .map(toString);\n}\n\nfunction sortKeys(obj: any) {\n return Object.entries(obj)\n .sort((k1, k2) => {\n return k1[0] < k2[0] ? -1 : 1;\n })\n .reduce((obj, [key, value]) => {\n return {\n ...obj,\n [key]: value\n };\n }, {});\n}\n\nfunction mapPackagesWithValidVersion(deps: any) {\n return Object.entries(deps).reduce((deps, [key, version]: [string, string]) => {\n if (isValidVersion(version)) {\n return {\n ...deps,\n [key]: version\n };\n }\n\n return deps;\n }, {});\n}\n\nfunction defaultPreferences(pkg?: any): Record<string, any> {\n let packageManager = PackageManager.YARN;\n\n if (getValue(pkg, \"scripts.build\", \"\").includes(\"pnpm \")) {\n packageManager = PackageManager.PNPM;\n } else if (getValue(pkg, \"scripts.build\", \"\").includes(\"npm \")) {\n packageManager = PackageManager.NPM;\n }\n\n return {\n packageManager\n };\n}\n\n@Injectable()\nexport class ProjectPackageJson {\n public rewrite = false;\n public reinstall = false;\n\n @Inject(CliExeca)\n protected cliExeca: CliExeca;\n\n @Inject(CliFs)\n protected fs: CliFs;\n\n private GH_TOKEN: string;\n private raw: PackageJson;\n\n constructor(@Configuration() private configuration: Configuration) {\n this.setRaw({\n name: \"\",\n version: \"1.0.0\",\n description: \"\",\n scripts: {},\n dependencies: {},\n devDependencies: {}\n });\n this.read();\n }\n\n get path() {\n return join(this.dir, \"package.json\");\n }\n\n get dir() {\n return String(this.configuration.project?.rootDir);\n }\n\n set dir(dir: string) {\n this.configuration.project.rootDir = dir;\n\n this.read();\n }\n\n get name() {\n return this.raw.name;\n }\n\n set name(name: string) {\n this.raw.name = name;\n this.rewrite = true;\n }\n\n get version() {\n return this.raw.version;\n }\n\n get description() {\n return this.raw.description;\n }\n\n get scripts() {\n return this.raw.scripts;\n }\n\n get dependencies() {\n return this.raw.dependencies;\n }\n\n get devDependencies() {\n return this.raw.devDependencies;\n }\n\n get allDependencies(): {[key: string]: string} {\n return {\n ...(this.dependencies || {}),\n ...(this.devDependencies || {})\n };\n }\n\n get preferences(): ProjectPreferences {\n return this.raw[this.configuration.name];\n }\n\n toJSON() {\n return this.raw;\n }\n\n read() {\n const pkg = this.getPackageJson();\n\n this.setRaw(pkg);\n return this;\n }\n\n setRaw(pkg: any) {\n const projectPreferences = this.configuration.defaultProjectPreferences;\n const preferences = getValue(pkg, this.configuration.name);\n\n this.raw = {\n ...pkg,\n [this.configuration.name]: {\n ...defaultPreferences(pkg),\n ...(projectPreferences && projectPreferences(pkg)),\n ...preferences\n }\n };\n }\n\n getRunCmd() {\n switch (this.preferences.packageManager) {\n case \"npm\":\n return \"npm run\";\n case \"pnpm\":\n return \"pnpm run\";\n default:\n return \"yarn run\";\n }\n }\n\n addDevDependency(pkg: string, version?: string) {\n this.devDependencies[pkg] = version!;\n this.reinstall = true;\n this.rewrite = true;\n\n return this;\n }\n\n addDevDependencies(modules: {[key: string]: string | undefined}, scope: any = {}) {\n const replacer = (match: any, key: string) => getValue(key, scope);\n Object.entries(modules).forEach(([pkg, version]) => {\n this.addDevDependency(pkg, (version || \"\").replace(/{{([\\w.]+)}}/gi, replacer));\n });\n\n return this;\n }\n\n addDependency(pkg: string, version?: string) {\n this.dependencies[pkg] = version!;\n this.reinstall = true;\n this.rewrite = true;\n\n return this;\n }\n\n addDependencies(modules: {[key: string]: string | undefined}, ctx: any = {}) {\n const replacer = (match: any, key: string) => getValue(key, ctx);\n\n Object.entries(modules).forEach(([pkg, version]) => {\n this.addDependency(pkg, (version || \"\").replace(\"{{tsedVersion}}\", ctx.tsedVersion).replace(/{{([\\w.]+)}}/gi, replacer));\n });\n\n return this;\n }\n\n addScript(task: string, cmd: string) {\n this.scripts[task] = cmd;\n this.rewrite = true;\n\n return this;\n }\n\n addScripts(scripts: {[key: string]: string}) {\n Object.entries(scripts).forEach(([task, cmd]) => {\n this.addScript(task, cmd);\n });\n\n return this;\n }\n\n add(key: string, data: any) {\n this.raw[key] = data;\n this.rewrite = true;\n\n return this;\n }\n\n setPreference(key: keyof ProjectPreferences, value: any) {\n setValue(this.raw, `${this.configuration.name}.${key}`, value);\n this.rewrite = true;\n return;\n }\n\n set(key: string, value: any) {\n this.raw[key] = value;\n\n this.rewrite = true;\n\n if ([\"dependencies\", \"devDependencies\", \"peerDependencies\"].includes(key)) {\n this.reinstall = true;\n }\n }\n\n get(key: string) {\n return this.raw[key];\n }\n\n write() {\n const originalPkg = this.getPackageJson();\n\n this.rewrite = false;\n\n this.raw = {\n ...originalPkg,\n ...this.raw,\n scripts: {\n ...(originalPkg.scripts || {}),\n ...(this.raw.scripts || {})\n },\n dependencies: sortKeys({\n ...originalPkg.dependencies,\n ...mapPackagesWithValidVersion(this.raw.dependencies)\n }),\n devDependencies: sortKeys({\n ...originalPkg.devDependencies,\n ...mapPackagesWithValidVersion(this.raw.devDependencies)\n }),\n readme: undefined,\n _id: undefined\n };\n\n this.fs.writeFileSync(this.path, JSON.stringify(this.raw, null, 2), {encoding: \"utf8\"});\n\n return this;\n }\n\n hasYarn() {\n try {\n this.cliExeca.runSync(PackageManager.YARN, [\"--version\"]);\n\n return true;\n } catch (er) {\n return false;\n }\n }\n\n install(options: InstallOptions = {}) {\n const packageManager = this.getPackageManager(options.packageManager);\n let tasks: {title: string; skip: () => boolean; task: () => any}[];\n switch (packageManager) {\n case \"pnpm\":\n tasks = this.installWithPnpm(options);\n break;\n case \"npm\":\n tasks = this.installWithNpm(options);\n break;\n default:\n tasks = this.installWithYarn(options);\n }\n\n return [\n {\n title: \"Write package.json\",\n enabled: () => this.rewrite,\n task: () => {\n this.write();\n }\n },\n ...tasks,\n {\n title: \"Clean\",\n task: () => {\n this.reinstall = false;\n this.rewrite = false;\n this.read();\n }\n }\n ];\n }\n\n /**\n * Import a module from the project workspace\n * @param mod\n */\n async importModule(mod: string) {\n return this.fs.importModule(mod, this.dir);\n }\n\n public runScript(npmTask: string, ignoreError = false) {\n const options = {\n cwd: this.dir\n };\n const errorPipe = () =>\n catchError((error: any) => {\n if (ignoreError) {\n return EMPTY;\n }\n\n return throwError(error);\n });\n\n return this.cliExeca.run(this.getPackageManager(), [\"run\", npmTask], options).pipe(errorPipe());\n }\n\n getPackageManager(packageManager?: PackageManager): PackageManager {\n if (this.preferences.packageManager) {\n packageManager = this.preferences.packageManager;\n }\n\n packageManager = packageManager || PackageManager.YARN;\n\n if (packageManager === PackageManager.YARN && !this.hasYarn()) {\n packageManager = PackageManager.NPM;\n }\n\n return packageManager;\n }\n\n setGhToken(GH_TOKEN: string) {\n this.GH_TOKEN = GH_TOKEN;\n }\n\n protected installWithYarn({verbose}: any) {\n const devDeps = mapPackagesWithInvalidVersion(this.devDependencies);\n const deps = mapPackagesWithInvalidVersion(this.dependencies);\n const options = {\n cwd: this.dir,\n env: {\n ...process.env,\n GH_TOKEN: this.GH_TOKEN\n }\n };\n\n const errorPipe = () =>\n catchError((error: any) => {\n if (error.stderr.startsWith(\"error Your lockfile needs to be updated\")) {\n return throwError(new Error(\"yarn.lock file is outdated. Run yarn, commit the updated lockfile and try again.\"));\n }\n\n return throwError(error);\n });\n\n return [\n {\n title: \"Installing dependencies using Yarn\",\n skip: () => !this.reinstall,\n task: () =>\n this.cliExeca\n .run(\n PackageManager.YARN,\n [\"install\", \"--production=false\", verbose && \"--verbose\", \"--ignore-engines\"].filter(Boolean),\n options\n )\n .pipe(errorPipe())\n },\n {\n title: \"Add dependencies using Yarn\",\n skip: () => !deps.length,\n task: () =>\n this.cliExeca\n .run(PackageManager.YARN, [\"add\", verbose && \"--verbose\", \"--ignore-engines\", ...deps].filter(Boolean), options)\n .pipe(errorPipe())\n },\n {\n title: \"Add devDependencies using Yarn\",\n skip: () => !devDeps.length,\n task: () =>\n this.cliExeca\n .run(PackageManager.YARN, [\"add\", \"-D\", verbose && \"--verbose\", \"--ignore-engines\", ...devDeps].filter(Boolean), options)\n .pipe(errorPipe())\n }\n ];\n }\n\n protected installWithNpm({verbose}: any) {\n const devDeps = mapPackagesWithInvalidVersion(this.devDependencies);\n const deps = mapPackagesWithInvalidVersion(this.dependencies);\n const options = {\n cwd: this.dir,\n env: {\n ...process.env,\n GH_TOKEN: this.GH_TOKEN\n }\n };\n\n return [\n {\n title: \"Installing dependencies using npm\",\n skip: () => {\n return !this.reinstall;\n },\n task: () => {\n return this.cliExeca.run(\n PackageManager.NPM,\n [\"install\", \"--no-production\", \"--legacy-peer-deps\", verbose && \"--verbose\"].filter(Boolean),\n options\n );\n }\n },\n {\n title: \"Add dependencies using npm\",\n skip: () => !deps.length,\n task: () =>\n this.cliExeca.run(\n PackageManager.NPM,\n [\"install\", \"--save\", \"--legacy-peer-deps\", verbose && \"--verbose\", ...deps].filter(Boolean),\n options\n )\n },\n {\n title: \"Add devDependencies using npm\",\n skip: () => !devDeps.length,\n task: () =>\n this.cliExeca.run(\n PackageManager.NPM,\n [\"install\", \"--save-dev\", \"--legacy-peer-deps\", verbose && \"--verbose\", ...devDeps].filter(Boolean),\n options\n )\n }\n ];\n }\n\n protected installWithPnpm({verbose}: any) {\n const devDeps = mapPackagesWithInvalidVersion(this.devDependencies);\n const deps = mapPackagesWithInvalidVersion(this.dependencies);\n const options = {\n cwd: this.dir,\n env: {\n ...process.env,\n GH_TOKEN: this.GH_TOKEN\n }\n };\n\n return [\n {\n title: \"Installing dependencies using pnpm\",\n skip: () => {\n return !this.reinstall;\n },\n task: () => this.cliExeca.run(PackageManager.PNPM, [\"install\", \"--dev\", verbose && \"--verbose\"].filter(Boolean), options)\n },\n {\n title: \"Add dependencies using pnpm\",\n skip: () => !deps.length,\n task: () => this.cliExeca.run(PackageManager.PNPM, [\"add\", \"--save-prod\", verbose && \"--verbose\", ...deps].filter(Boolean), options)\n },\n {\n title: \"Add devDependencies using pnpm\",\n skip: () => !devDeps.length,\n task: () =>\n this.cliExeca.run(PackageManager.PNPM, [\"add\", \"--save-dev\", verbose && \"--verbose\", ...devDeps].filter(Boolean), options)\n }\n ];\n }\n\n protected getPackageJson() {\n return getPackageJson(this.configuration);\n }\n}\n"]}
1
+ {"version":3,"file":"ProjectPackageJson.js","sourceRoot":"","sources":["../../../src/services/ProjectPackageJson.ts"],"names":[],"mappings":"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","sourcesContent":["import {getValue, setValue} from \"@tsed/core\";\nimport {Configuration, Inject, Injectable} from \"@tsed/di\";\nimport {join} from \"path\";\nimport {EMPTY, throwError} from \"rxjs\";\nimport {catchError} from \"rxjs/operators\";\nimport semver from \"semver\";\nimport {PackageJson} from \"../interfaces/PackageJson\";\nimport {PackageManager, ProjectPreferences} from \"../interfaces/ProjectPreferences\";\nimport {CliExeca} from \"./CliExeca\";\nimport {CliFs} from \"./CliFs\";\nimport {isValidVersion} from \"../utils/isValidVersion\";\nimport {getPackageJson} from \"../utils/getPackageJson\";\n\nexport interface InstallOptions {\n packageManager?: PackageManager;\n\n [key: string]: any;\n}\n\nfunction mapPackagesWithInvalidVersion(deps: any) {\n const toString = (info: [string, string]) => {\n return info[1] === \"latest\" ? info[0] : info.join(\"@\");\n };\n\n return Object.entries(deps)\n .filter(([, version]) => !semver.valid(version as string))\n .map(toString);\n}\n\nfunction sortKeys(obj: any) {\n return Object.entries(obj)\n .sort((k1, k2) => {\n return k1[0] < k2[0] ? -1 : 1;\n })\n .reduce((obj, [key, value]) => {\n return {\n ...obj,\n [key]: value\n };\n }, {});\n}\n\nfunction mapPackagesWithValidVersion(deps: any) {\n return Object.entries(deps).reduce((deps, [key, version]: [string, string]) => {\n if (isValidVersion(version)) {\n return {\n ...deps,\n [key]: version\n };\n }\n\n return deps;\n }, {});\n}\n\nfunction defaultPreferences(pkg?: any): Record<string, any> {\n let packageManager = PackageManager.YARN;\n\n if (getValue(pkg, \"scripts.build\", \"\").includes(\"pnpm \")) {\n packageManager = PackageManager.PNPM;\n } else if (getValue(pkg, \"scripts.build\", \"\").includes(\"npm \")) {\n packageManager = PackageManager.NPM;\n }\n\n return {\n packageManager\n };\n}\n\n@Injectable()\nexport class ProjectPackageJson {\n public rewrite = false;\n public reinstall = false;\n\n @Inject(CliExeca)\n protected cliExeca: CliExeca;\n\n @Inject(CliFs)\n protected fs: CliFs;\n\n private GH_TOKEN: string;\n private raw: PackageJson;\n\n constructor(@Configuration() private configuration: Configuration) {\n this.setRaw({\n name: \"\",\n version: \"1.0.0\",\n description: \"\",\n scripts: {},\n dependencies: {},\n devDependencies: {}\n });\n this.read();\n }\n\n get path() {\n return join(this.dir, \"package.json\");\n }\n\n get dir() {\n return String(this.configuration.project?.rootDir);\n }\n\n set dir(dir: string) {\n this.configuration.project.rootDir = dir;\n\n this.read();\n }\n\n get name() {\n return this.raw.name;\n }\n\n set name(name: string) {\n this.raw.name = name;\n this.rewrite = true;\n }\n\n get version() {\n return this.raw.version;\n }\n\n get description() {\n return this.raw.description;\n }\n\n get scripts() {\n return this.raw.scripts;\n }\n\n get dependencies() {\n return this.raw.dependencies;\n }\n\n get devDependencies() {\n return this.raw.devDependencies;\n }\n\n get allDependencies(): {[key: string]: string} {\n return {\n ...(this.dependencies || {}),\n ...(this.devDependencies || {})\n };\n }\n\n get preferences(): ProjectPreferences {\n return this.raw[this.configuration.name];\n }\n\n toJSON() {\n return this.raw;\n }\n\n read() {\n const pkg = this.getPackageJson();\n\n this.setRaw(pkg);\n return this;\n }\n\n setRaw(pkg: any) {\n const projectPreferences = this.configuration.defaultProjectPreferences;\n const preferences = getValue(pkg, this.configuration.name);\n\n this.raw = {\n ...pkg,\n [this.configuration.name]: {\n ...defaultPreferences(pkg),\n ...(projectPreferences && projectPreferences(pkg)),\n ...preferences\n }\n };\n }\n\n getRunCmd() {\n switch (this.preferences.packageManager) {\n case \"npm\":\n return \"npm run\";\n case \"pnpm\":\n return \"pnpm run\";\n default:\n return \"yarn run\";\n }\n }\n\n addDevDependency(pkg: string, version?: string) {\n this.devDependencies[pkg] = version!;\n this.reinstall = true;\n this.rewrite = true;\n\n return this;\n }\n\n addDevDependencies(modules: {[key: string]: string | undefined}, scope: any = {}) {\n const replacer = (match: any, key: string) => getValue(key, scope);\n Object.entries(modules).forEach(([pkg, version]) => {\n this.addDevDependency(pkg, (version || \"\").replace(/{{([\\w.]+)}}/gi, replacer));\n });\n\n return this;\n }\n\n addDependency(pkg: string, version?: string) {\n this.dependencies[pkg] = version!;\n this.reinstall = true;\n this.rewrite = true;\n\n return this;\n }\n\n addDependencies(modules: {[key: string]: string | undefined}, ctx: any = {}) {\n const replacer = (match: any, key: string) => getValue(key, ctx);\n\n Object.entries(modules).forEach(([pkg, version]) => {\n this.addDependency(pkg, (version || \"\").replace(\"{{tsedVersion}}\", ctx.tsedVersion).replace(/{{([\\w.]+)}}/gi, replacer));\n });\n\n return this;\n }\n\n addScript(task: string, cmd: string) {\n this.scripts[task] = cmd;\n this.rewrite = true;\n\n return this;\n }\n\n addScripts(scripts: {[key: string]: string}) {\n Object.entries(scripts).forEach(([task, cmd]) => {\n this.addScript(task, cmd);\n });\n\n return this;\n }\n\n add(key: string, data: any) {\n this.raw[key] = data;\n this.rewrite = true;\n\n return this;\n }\n\n setPreference(key: keyof ProjectPreferences, value: any) {\n setValue(this.raw, `${this.configuration.name}.${key}`, value);\n this.rewrite = true;\n return;\n }\n\n set(key: string, value: any) {\n this.raw[key] = value;\n\n this.rewrite = true;\n\n if ([\"dependencies\", \"devDependencies\", \"peerDependencies\"].includes(key)) {\n this.reinstall = true;\n }\n }\n\n get(key: string) {\n return this.raw[key];\n }\n\n write() {\n const originalPkg = this.getPackageJson();\n\n this.rewrite = false;\n\n this.raw = {\n ...originalPkg,\n ...this.raw,\n scripts: {\n ...(originalPkg.scripts || {}),\n ...(this.raw.scripts || {})\n },\n dependencies: sortKeys({\n ...originalPkg.dependencies,\n ...mapPackagesWithValidVersion(this.raw.dependencies)\n }),\n devDependencies: sortKeys({\n ...originalPkg.devDependencies,\n ...mapPackagesWithValidVersion(this.raw.devDependencies)\n }),\n readme: undefined,\n _id: undefined\n };\n\n this.fs.writeFileSync(this.path, JSON.stringify(this.raw, null, 2), {encoding: \"utf8\"});\n\n return this;\n }\n\n hasYarn() {\n try {\n this.cliExeca.runSync(PackageManager.YARN, [\"--version\"]);\n\n return true;\n } catch (er) {\n return false;\n }\n }\n\n install(options: InstallOptions = {}) {\n const packageManager = this.getPackageManager(options.packageManager);\n let tasks: {title: string; skip: () => boolean; task: () => any}[];\n switch (packageManager) {\n case \"pnpm\":\n tasks = this.installWithPnpm(options);\n break;\n case \"npm\":\n tasks = this.installWithNpm(options);\n break;\n default:\n tasks = this.installWithYarn(options);\n }\n\n return [\n {\n title: \"Write package.json\",\n enabled: () => this.rewrite,\n task: () => {\n this.write();\n }\n },\n ...tasks,\n {\n title: \"Clean\",\n task: () => {\n this.reinstall = false;\n this.rewrite = false;\n this.read();\n }\n }\n ];\n }\n\n /**\n * Import a module from the project workspace\n * @param mod\n */\n async importModule(mod: string) {\n return this.fs.importModule(mod, this.dir);\n }\n\n public runScript(npmTask: string, ignoreError = false) {\n const options = {\n cwd: this.dir\n };\n const errorPipe = () =>\n catchError((error: any) => {\n if (ignoreError) {\n return EMPTY;\n }\n\n return throwError(error);\n });\n\n return this.cliExeca.run(this.getPackageManager(), [\"run\", npmTask], options).pipe(errorPipe());\n }\n\n getPackageManager(packageManager?: PackageManager): PackageManager {\n if (this.preferences.packageManager) {\n packageManager = this.preferences.packageManager;\n }\n\n packageManager = packageManager || PackageManager.YARN;\n\n if (packageManager === PackageManager.YARN && !this.hasYarn()) {\n packageManager = PackageManager.NPM;\n }\n\n return packageManager;\n }\n\n setGhToken(GH_TOKEN: string) {\n this.GH_TOKEN = GH_TOKEN;\n }\n\n protected installWithYarn({verbose}: any) {\n const devDeps = mapPackagesWithInvalidVersion(this.devDependencies);\n const deps = mapPackagesWithInvalidVersion(this.dependencies);\n const options = {\n cwd: this.dir,\n env: {\n ...process.env,\n GH_TOKEN: this.GH_TOKEN\n }\n };\n\n const errorPipe = () =>\n catchError((error: any) => {\n if (error.stderr.startsWith(\"error Your lockfile needs to be updated\")) {\n return throwError(new Error(\"yarn.lock file is outdated. Run yarn, commit the updated lockfile and try again.\"));\n }\n\n return throwError(error);\n });\n\n return [\n {\n title: \"Installing dependencies using Yarn\",\n skip: () => !this.reinstall,\n task: () =>\n this.cliExeca\n .run(\n PackageManager.YARN,\n [\"install\", \"--production=false\", verbose && \"--verbose\", \"--ignore-engines\"].filter(Boolean),\n options\n )\n .pipe(errorPipe())\n },\n {\n title: \"Add dependencies using Yarn\",\n skip: () => !deps.length,\n task: () =>\n this.cliExeca\n .run(PackageManager.YARN, [\"add\", verbose && \"--verbose\", \"--ignore-engines\", ...deps].filter(Boolean), options)\n .pipe(errorPipe())\n },\n {\n title: \"Add devDependencies using Yarn\",\n skip: () => !devDeps.length,\n task: () =>\n this.cliExeca\n .run(PackageManager.YARN, [\"add\", \"-D\", verbose && \"--verbose\", \"--ignore-engines\", ...devDeps].filter(Boolean), options)\n .pipe(errorPipe())\n }\n ];\n }\n\n protected installWithNpm({verbose}: any) {\n const devDeps = mapPackagesWithInvalidVersion(this.devDependencies);\n const deps = mapPackagesWithInvalidVersion(this.dependencies);\n const options = {\n cwd: this.dir,\n env: {\n ...process.env,\n GH_TOKEN: this.GH_TOKEN\n }\n };\n\n return [\n {\n title: \"Installing dependencies using npm\",\n skip: () => {\n return !this.reinstall;\n },\n task: () => {\n return this.cliExeca.run(\n PackageManager.NPM,\n [\"install\", \"--no-production\", \"--legacy-peer-deps\", verbose && \"--verbose\"].filter(Boolean),\n options\n );\n }\n },\n {\n title: \"Add dependencies using npm\",\n skip: () => !deps.length,\n task: () =>\n this.cliExeca.run(\n PackageManager.NPM,\n [\"install\", \"--save\", \"--legacy-peer-deps\", verbose && \"--verbose\", ...deps].filter(Boolean),\n options\n )\n },\n {\n title: \"Add devDependencies using npm\",\n skip: () => !devDeps.length,\n task: () =>\n this.cliExeca.run(\n PackageManager.NPM,\n [\"install\", \"--save-dev\", \"--legacy-peer-deps\", verbose && \"--verbose\", ...devDeps].filter(Boolean),\n options\n )\n }\n ];\n }\n\n protected installWithPnpm({verbose}: any) {\n const devDeps = mapPackagesWithInvalidVersion(this.devDependencies);\n const deps = mapPackagesWithInvalidVersion(this.dependencies);\n const options = {\n cwd: this.dir,\n env: {\n ...process.env,\n GH_TOKEN: this.GH_TOKEN\n }\n };\n\n return [\n {\n title: \"Installing dependencies using pnpm\",\n skip: () => {\n return !this.reinstall;\n },\n task: () => this.cliExeca.run(PackageManager.PNPM, [\"install\", \"--dev\", verbose && \"--verbose\"].filter(Boolean), options)\n },\n {\n title: \"Add dependencies using pnpm\",\n skip: () => !deps.length,\n task: () => this.cliExeca.run(PackageManager.PNPM, [\"add\", \"--save-prod\", verbose && \"--verbose\", ...deps].filter(Boolean), options)\n },\n {\n title: \"Add devDependencies using pnpm\",\n skip: () => !devDeps.length,\n task: () =>\n this.cliExeca.run(PackageManager.PNPM, [\"add\", \"--save-dev\", verbose && \"--verbose\", ...devDeps].filter(Boolean), options)\n }\n ];\n }\n\n protected getPackageJson() {\n return getPackageJson(this.configuration);\n }\n}\n"]}
@@ -1,17 +1,20 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
+ import { isString } from "@tsed/core";
2
3
  import { Configuration, Constant, Inject, Injectable } from "@tsed/di";
3
4
  import Consolidate from "consolidate";
4
- import normalizePath from "normalize-path";
5
5
  import { existsSync } from "fs-extra";
6
+ import normalizePath from "normalize-path";
6
7
  import globby from "globby";
7
8
  import { dirname, join, relative } from "path";
8
9
  import { Observable } from "rxjs";
9
10
  import { CliFs } from "./CliFs.js";
10
11
  import "../utils/hbs.js";
11
- import { isString } from "@tsed/core";
12
12
  import { insertImport } from "../utils/renderer/insertImport.js";
13
13
  import { insertAfter } from "../utils/renderer/insertAfter.js";
14
14
  export class Renderer {
15
+ configuration;
16
+ templateDir;
17
+ fs;
15
18
  async render(path, data, options = {}) {
16
19
  const { output, templateDir, rootDir } = this.mapOptions(path, options);
17
20
  let content = "";
@@ -65,11 +68,13 @@ export class Renderer {
65
68
  const { templateDir } = this.mapOptions(path, options);
66
69
  return existsSync(join(templateDir, path));
67
70
  }
68
- scan(pattern, options = {}) {
69
- return globby(pattern.map((s) => normalizePath(s)), {
71
+ async scan(pattern, options = {}) {
72
+ const result = await globby(pattern.map((s) => normalizePath(s)), {
70
73
  ...options,
74
+ objectMode: true,
71
75
  cwd: this.rootDir
72
76
  });
77
+ return result.map((entry) => entry.path);
73
78
  }
74
79
  relativeFrom(path) {
75
80
  return relative(dirname(join(this.rootDir, path)), this.rootDir);
@@ -119,8 +124,7 @@ __decorate([
119
124
  ], Renderer.prototype, "fs", void 0);
120
125
  let RootRendererService = class RootRendererService extends Renderer {
121
126
  get rootDir() {
122
- var _a;
123
- return (_a = this.configuration.project) === null || _a === void 0 ? void 0 : _a.rootDir;
127
+ return this.configuration.project?.rootDir;
124
128
  }
125
129
  };
126
130
  RootRendererService = __decorate([
@@ -129,8 +133,7 @@ RootRendererService = __decorate([
129
133
  export { RootRendererService };
130
134
  let SrcRendererService = class SrcRendererService extends Renderer {
131
135
  get rootDir() {
132
- var _a, _b;
133
- return join(...[(_a = this.configuration.project) === null || _a === void 0 ? void 0 : _a.rootDir, (_b = this.configuration.project) === null || _b === void 0 ? void 0 : _b.srcDir].filter(Boolean));
136
+ return join(...[this.configuration.project?.rootDir, this.configuration.project?.srcDir].filter(Boolean));
134
137
  }
135
138
  };
136
139
  SrcRendererService = __decorate([
@@ -139,8 +142,7 @@ SrcRendererService = __decorate([
139
142
  export { SrcRendererService };
140
143
  let ScriptsRendererService = class ScriptsRendererService extends Renderer {
141
144
  get rootDir() {
142
- var _a, _b;
143
- return join(...[(_a = this.configuration.project) === null || _a === void 0 ? void 0 : _a.rootDir, (_b = this.configuration.project) === null || _b === void 0 ? void 0 : _b.scriptsDir].filter(Boolean));
145
+ return join(...[this.configuration.project?.rootDir, this.configuration.project?.scriptsDir].filter(Boolean));
144
146
  }
145
147
  };
146
148
  ScriptsRendererService = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../../src/services/Renderer.ts"],"names":[],"mappings":"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","sourcesContent":["import {Configuration, Constant, Inject, Injectable} from \"@tsed/di\";\nimport Consolidate from \"consolidate\";\nimport normalizePath from \"normalize-path\";\nimport {existsSync} from \"fs-extra\";\nimport globby from \"globby\";\nimport {dirname, join, relative} from \"path\";\nimport {Observable} from \"rxjs\";\nimport {CliFs} from \"./CliFs\";\nimport \"../utils/hbs\";\nimport {isString} from \"@tsed/core\";\nimport {insertImport} from \"../utils/renderer/insertImport\";\nimport {insertAfter} from \"../utils/renderer/insertAfter\";\n\nexport interface RenderOptions {\n path: string;\n templateDir: string;\n rootDir: string;\n output: string;\n baseDir: string;\n basename: string;\n}\n\nexport abstract class Renderer {\n @Configuration()\n protected configuration: Configuration;\n\n @Constant(\"templateDir\")\n templateDir: string;\n\n @Inject()\n fs: CliFs;\n\n abstract get rootDir(): string;\n\n async render(path: string, data: any, options: Partial<RenderOptions> = {}) {\n const {output, templateDir, rootDir} = this.mapOptions(path, options);\n let content = \"\";\n\n const file = normalizePath(join(templateDir, path));\n\n if (path.endsWith(\".hbs\")) {\n content = await Consolidate.handlebars(file, data);\n } else {\n content = await this.fs.readFile(file, {encoding: \"utf8\"});\n }\n\n return this.write(content, {output, rootDir});\n }\n\n async renderAll(paths: (string | RenderOptions)[], data: any, options: Partial<RenderOptions> = {}) {\n let count = 0;\n\n const mapOptions = (opts: string | RenderOptions): Partial<RenderOptions> & {path: string} => {\n if (isString(opts)) {\n return {...options, path: opts};\n }\n\n return {\n ...options,\n ...opts\n };\n };\n\n return new Observable((observer) => {\n observer.next(`[${count}/${paths.length}] Rendering files...`);\n\n const promises = paths\n .filter(Boolean)\n .map(mapOptions)\n .map(async ({path, ...opts}) => {\n await this.render(path, data, opts);\n\n count++;\n observer.next(`[${count}/${paths.length}] Rendering files...`);\n });\n\n Promise.all(promises)\n .then(() => {\n observer.next(`[${count}/${paths.length}] Rendering files...`);\n observer.complete();\n })\n .catch((err) => {\n observer.error(err);\n });\n });\n }\n\n async write(content: string, options: any) {\n const {output, rootDir = this.rootDir} = options;\n const outputFile = join(...[rootDir, output].filter(Boolean));\n\n await this.fs.ensureDir(dirname(outputFile));\n\n return this.fs.writeFile(outputFile, content, {encoding: \"utf8\"});\n }\n\n templateExists(path: string, options: Partial<RenderOptions> = {}) {\n const {templateDir} = this.mapOptions(path, options);\n\n return existsSync(join(templateDir, path));\n }\n\n scan(pattern: string[], options: any = {}) {\n return globby(\n pattern.map((s: string) => normalizePath(s)),\n {\n ...options,\n cwd: this.rootDir\n }\n );\n }\n\n relativeFrom(path: string) {\n return relative(dirname(join(this.rootDir, path)), this.rootDir);\n }\n\n async update(path: string, actions: {type?: string; content: string; pattern?: RegExp}[]) {\n path = join(this.rootDir, path);\n if (!this.fs.exists(path)) {\n return;\n }\n\n const content: string = actions.reduce((fileContent, action) => {\n switch (action.type) {\n case \"import\":\n return insertImport(fileContent, action.content);\n case \"insert-after\":\n return insertAfter(fileContent, action.content, action.pattern!);\n default:\n break;\n }\n\n return fileContent;\n }, await this.fs.readFile(path, {encoding: \"utf8\"}));\n\n return this.fs.writeFile(path, content, {encoding: \"utf8\"});\n }\n\n protected mapOptions(path: string, options: Partial<RenderOptions>) {\n const {templateDir = this.templateDir, rootDir = this.rootDir} = options;\n let {output = path} = options;\n\n if (options.baseDir) {\n output = normalizePath(join(\"/\", relative(options.baseDir, path)));\n }\n\n if (options.basename) {\n output = normalizePath(join(dirname(output), options.basename));\n }\n\n output = output.replace(/\\.hbs$/, \"\");\n\n return {output, templateDir, rootDir};\n }\n}\n\n@Injectable()\nexport class RootRendererService extends Renderer {\n get rootDir() {\n return this.configuration.project?.rootDir as string;\n }\n}\n\n@Injectable()\nexport class SrcRendererService extends Renderer {\n get rootDir() {\n return join(...([this.configuration.project?.rootDir, this.configuration.project?.srcDir].filter(Boolean) as string[]));\n }\n}\n\n@Injectable()\nexport class ScriptsRendererService extends Renderer {\n get rootDir() {\n return join(...([this.configuration.project?.rootDir, this.configuration.project?.scriptsDir].filter(Boolean) as string[]));\n }\n}\n"]}
1
+ {"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../../src/services/Renderer.ts"],"names":[],"mappings":"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","sourcesContent":["import {isString} from \"@tsed/core\";\nimport {Configuration, Constant, Inject, Injectable} from \"@tsed/di\";\nimport Consolidate from \"consolidate\";\nimport {existsSync} from \"fs-extra\";\nimport normalizePath from \"normalize-path\";\nimport globby from \"globby\";\nimport {dirname, join, relative} from \"path\";\nimport {Observable} from \"rxjs\";\nimport {CliFs} from \"./CliFs\";\nimport \"../utils/hbs\";\nimport {insertImport} from \"../utils/renderer/insertImport\";\nimport {insertAfter} from \"../utils/renderer/insertAfter\";\n\nexport interface RenderOptions {\n path: string;\n templateDir: string;\n rootDir: string;\n output: string;\n baseDir: string;\n basename: string;\n}\n\nexport abstract class Renderer {\n @Configuration()\n protected configuration: Configuration;\n\n @Constant(\"templateDir\")\n templateDir: string;\n\n @Inject()\n fs: CliFs;\n\n abstract get rootDir(): string;\n\n async render(path: string, data: any, options: Partial<RenderOptions> = {}) {\n const {output, templateDir, rootDir} = this.mapOptions(path, options);\n let content = \"\";\n\n const file = normalizePath(join(templateDir, path));\n\n if (path.endsWith(\".hbs\")) {\n content = await Consolidate.handlebars(file, data);\n } else {\n content = await this.fs.readFile(file, {encoding: \"utf8\"});\n }\n\n return this.write(content, {output, rootDir});\n }\n\n async renderAll(paths: (string | RenderOptions)[], data: any, options: Partial<RenderOptions> = {}) {\n let count = 0;\n\n const mapOptions = (opts: string | RenderOptions): Partial<RenderOptions> & {path: string} => {\n if (isString(opts)) {\n return {...options, path: opts};\n }\n\n return {\n ...options,\n ...opts\n };\n };\n\n return new Observable((observer) => {\n observer.next(`[${count}/${paths.length}] Rendering files...`);\n\n const promises = paths\n .filter(Boolean)\n .map(mapOptions)\n .map(async ({path, ...opts}) => {\n await this.render(path, data, opts);\n\n count++;\n observer.next(`[${count}/${paths.length}] Rendering files...`);\n });\n\n Promise.all(promises)\n .then(() => {\n observer.next(`[${count}/${paths.length}] Rendering files...`);\n observer.complete();\n })\n .catch((err) => {\n observer.error(err);\n });\n });\n }\n\n async write(content: string, options: any) {\n const {output, rootDir = this.rootDir} = options;\n const outputFile = join(...[rootDir, output].filter(Boolean));\n\n await this.fs.ensureDir(dirname(outputFile));\n\n return this.fs.writeFile(outputFile, content, {encoding: \"utf8\"});\n }\n\n templateExists(path: string, options: Partial<RenderOptions> = {}) {\n const {templateDir} = this.mapOptions(path, options);\n\n return existsSync(join(templateDir, path));\n }\n\n async scan(pattern: string[], options: any = {}): Promise<string[]> {\n const result = await globby(\n pattern.map((s: string) => normalizePath(s)),\n {\n ...options,\n objectMode: true,\n cwd: this.rootDir\n }\n );\n\n return result.map((entry) => entry.path);\n }\n\n relativeFrom(path: string) {\n return relative(dirname(join(this.rootDir, path)), this.rootDir);\n }\n\n async update(path: string, actions: {type?: string; content: string; pattern?: RegExp}[]) {\n path = join(this.rootDir, path);\n if (!this.fs.exists(path)) {\n return;\n }\n\n const content: string = actions.reduce((fileContent, action) => {\n switch (action.type) {\n case \"import\":\n return insertImport(fileContent, action.content);\n case \"insert-after\":\n return insertAfter(fileContent, action.content, action.pattern!);\n default:\n break;\n }\n\n return fileContent;\n }, await this.fs.readFile(path, {encoding: \"utf8\"}));\n\n return this.fs.writeFile(path, content, {encoding: \"utf8\"});\n }\n\n protected mapOptions(path: string, options: Partial<RenderOptions>) {\n const {templateDir = this.templateDir, rootDir = this.rootDir} = options;\n let {output = path} = options;\n\n if (options.baseDir) {\n output = normalizePath(join(\"/\", relative(options.baseDir, path)));\n }\n\n if (options.basename) {\n output = normalizePath(join(dirname(output), options.basename));\n }\n\n output = output.replace(/\\.hbs$/, \"\");\n\n return {output, templateDir, rootDir};\n }\n}\n\n@Injectable()\nexport class RootRendererService extends Renderer {\n get rootDir() {\n return this.configuration.project?.rootDir as string;\n }\n}\n\n@Injectable()\nexport class SrcRendererService extends Renderer {\n get rootDir() {\n return join(...([this.configuration.project?.rootDir, this.configuration.project?.srcDir].filter(Boolean) as string[]));\n }\n}\n\n@Injectable()\nexport class ScriptsRendererService extends Renderer {\n get rootDir() {\n return join(...([this.configuration.project?.rootDir, this.configuration.project?.scriptsDir].filter(Boolean) as string[]));\n }\n}\n"]}
@@ -11,7 +11,6 @@ function createConfiguration(injector) {
11
11
  return injector.invoke(CliConfiguration);
12
12
  }
13
13
  export function createInjector(settings = {}) {
14
- var _a;
15
14
  const injector = new InjectorService();
16
15
  injector.settings = createConfiguration(injector);
17
16
  logger = injector.logger = new Logger(settings.name || "CLI");
@@ -23,7 +22,7 @@ export function createInjector(settings = {}) {
23
22
  }
24
23
  else {
25
24
  /* istanbul ignore next */
26
- injector.logger.level = ((_a = injector.settings.logger) === null || _a === void 0 ? void 0 : _a.level) || "error";
25
+ injector.logger.level = injector.settings.logger?.level || "error";
27
26
  }
28
27
  return injector;
29
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createInjector.js","sourceRoot":"","sources":["../../../src/utils/createInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,eAAe,EAAC,MAAM,UAAU,CAAC;AACjE,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAElE,IAAI,MAAc,CAAC;AAEnB,MAAM,UAAU,SAAS;IACvB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAyB;IACpD,QAAQ,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAEvC,OAAO,QAAQ,CAAC,MAAM,CAAwC,gBAAgB,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,WAA4C,EAAE;;IAC3E,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;IAE9D,QAAQ,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;IAEzC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEhC,0BAA0B;IAC1B,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,KAAK,MAAM,EAAE;QACpC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;KACxB;SAAM;QACL,0BAA0B;QAC1B,QAAQ,CAAC,MAAM,CAAC,KAAK,GAAG,CAAA,MAAA,QAAQ,CAAC,QAAQ,CAAC,MAAM,0CAAE,KAAK,KAAI,OAAO,CAAC;KACpE;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC","sourcesContent":["import {DIConfigurationOptions, InjectorService} from \"@tsed/di\";\nimport {Logger} from \"@tsed/logger\";\nimport {CliConfiguration} from \"../services/CliConfiguration\";\nimport {ProjectPackageJson} from \"../services/ProjectPackageJson\";\n\nlet logger: Logger;\n\nexport function getLogger() {\n return logger;\n}\n\nfunction createConfiguration(injector: InjectorService): CliConfiguration & TsED.Configuration {\n injector.addProvider(CliConfiguration);\n\n return injector.invoke<CliConfiguration & TsED.Configuration>(CliConfiguration);\n}\n\nexport function createInjector(settings: Partial<DIConfigurationOptions> = {}) {\n const injector = new InjectorService();\n injector.settings = createConfiguration(injector);\n logger = injector.logger = new Logger(settings.name || \"CLI\");\n\n injector.addProvider(ProjectPackageJson);\n\n injector.settings.set(settings);\n\n /* istanbul ignore next */\n if (injector.settings.env === \"test\") {\n injector.logger.stop();\n } else {\n /* istanbul ignore next */\n injector.logger.level = injector.settings.logger?.level || \"error\";\n }\n\n return injector;\n}\n"]}
1
+ {"version":3,"file":"createInjector.js","sourceRoot":"","sources":["../../../src/utils/createInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,eAAe,EAAC,MAAM,UAAU,CAAC;AACjE,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAElE,IAAI,MAAc,CAAC;AAEnB,MAAM,UAAU,SAAS;IACvB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAyB;IACpD,QAAQ,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAEvC,OAAO,QAAQ,CAAC,MAAM,CAAwC,gBAAgB,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,WAA4C,EAAE;IAC3E,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;IAE9D,QAAQ,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;IAEzC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEhC,0BAA0B;IAC1B,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,KAAK,MAAM,EAAE;QACpC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;KACxB;SAAM;QACL,0BAA0B;QAC1B,QAAQ,CAAC,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,IAAI,OAAO,CAAC;KACpE;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC","sourcesContent":["import {DIConfigurationOptions, InjectorService} from \"@tsed/di\";\nimport {Logger} from \"@tsed/logger\";\nimport {CliConfiguration} from \"../services/CliConfiguration\";\nimport {ProjectPackageJson} from \"../services/ProjectPackageJson\";\n\nlet logger: Logger;\n\nexport function getLogger() {\n return logger;\n}\n\nfunction createConfiguration(injector: InjectorService): CliConfiguration & TsED.Configuration {\n injector.addProvider(CliConfiguration);\n\n return injector.invoke<CliConfiguration & TsED.Configuration>(CliConfiguration);\n}\n\nexport function createInjector(settings: Partial<DIConfigurationOptions> = {}) {\n const injector = new InjectorService();\n injector.settings = createConfiguration(injector);\n logger = injector.logger = new Logger(settings.name || \"CLI\");\n\n injector.addProvider(ProjectPackageJson);\n\n injector.settings.set(settings);\n\n /* istanbul ignore next */\n if (injector.settings.env === \"test\") {\n injector.logger.stop();\n } else {\n /* istanbul ignore next */\n injector.logger.level = injector.settings.logger?.level || \"error\";\n }\n\n return injector;\n}\n"]}
@@ -3,36 +3,28 @@ import { isFunction } from "@tsed/core";
3
3
  import { getLogger } from "./createInjector.js";
4
4
  class CustomLogger extends Logger {
5
5
  fail(message) {
6
- var _a;
7
- (_a = getLogger()) === null || _a === void 0 ? void 0 : _a.error("[FAIL]", message);
6
+ getLogger()?.error("[FAIL]", message);
8
7
  }
9
8
  skip(message) {
10
- var _a;
11
- (_a = getLogger()) === null || _a === void 0 ? void 0 : _a.info("[SKIP]", message);
9
+ getLogger()?.info("[SKIP]", message);
12
10
  }
13
11
  success(message) {
14
- var _a;
15
- (_a = getLogger()) === null || _a === void 0 ? void 0 : _a.info("[SUCCESS]", message);
12
+ getLogger()?.info("[SUCCESS]", message);
16
13
  }
17
14
  data(message) {
18
- var _a;
19
- (_a = getLogger()) === null || _a === void 0 ? void 0 : _a.info("[DATA]", message);
15
+ getLogger()?.info("[DATA]", message);
20
16
  }
21
17
  start(message) {
22
- var _a;
23
- (_a = getLogger()) === null || _a === void 0 ? void 0 : _a.info("[START]", message);
18
+ getLogger()?.info("[START]", message);
24
19
  }
25
20
  title(message) {
26
- var _a;
27
- (_a = getLogger()) === null || _a === void 0 ? void 0 : _a.info("[TITLE]", message);
21
+ getLogger()?.info("[TITLE]", message);
28
22
  }
29
23
  retry(message) {
30
- var _a;
31
- (_a = getLogger()) === null || _a === void 0 ? void 0 : _a.info("[RETRY]", message);
24
+ getLogger()?.info("[RETRY]", message);
32
25
  }
33
26
  rollback(message) {
34
- var _a;
35
- (_a = getLogger()) === null || _a === void 0 ? void 0 : _a.info("[ROLLBACK]", message);
27
+ getLogger()?.info("[ROLLBACK]", message);
36
28
  }
37
29
  }
38
30
  function getOptions(ctx) {
@@ -1 +1 @@
1
- {"version":3,"file":"createTasksRunner.js","sourceRoot":"","sources":["../../../src/utils/createTasksRunner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAoB,MAAM,EAAC,MAAM,QAAQ,CAAC;AAEvD,OAAO,EAAC,UAAU,EAAC,MAAM,YAAY,CAAC;AACtC,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAE3C,MAAM,YAAa,SAAQ,MAAM;IAC/B,IAAI,CAAC,OAAe;;QAClB,MAAA,SAAS,EAAE,0CAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,CAAC,OAAe;;QAClB,MAAA,SAAS,EAAE,0CAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,CAAC,OAAe;;QACrB,MAAA,SAAS,EAAE,0CAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,CAAC,OAAe;;QAClB,MAAA,SAAS,EAAE,0CAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,OAAe;;QACnB,MAAA,SAAS,EAAE,0CAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,OAAe;;QACnB,MAAA,SAAS,EAAE,0CAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,OAAe;;QACnB,MAAA,SAAS,EAAE,0CAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,QAAQ,CAAC,OAAe;;QACtB,MAAA,SAAS,EAAE,0CAAE,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;CACF;AAED,SAAS,UAAU,CAAC,GAAgB;IAClC,MAAM,cAAc,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,cAAc;QACpC,CAAC,CAAC;YACE,MAAM,EAAE,YAAY;SACrB;QACH,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,GAAG,GAAG;QACN,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM;QAC/C,gBAAgB,EAAE,cAAc;QAChC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAChD,qBAAqB,EAAE,eAAe;QACtC,eAAe;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAY,EAAE,GAAgB;IACxD,OAAO,IAAI,KAAK,CAAC,KAAY,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAgE,EAAE,IAAiB;IAChH,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAExB,OAAO,KAAK,EAAE,GAAQ,EAAE,IAAgC,EAAE,EAAE;QAC1D,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;YACrB,KAAK,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SAChC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAY,EAAE,GAAgB;IAC9D,OAAO,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAU,CAAC,CAAC;AACjD,CAAC","sourcesContent":["import {Listr, ListrTaskWrapper, Logger} from \"listr2\";\nimport type {TaskOptions, Tasks} from \"../interfaces/Tasks\";\nimport {isFunction} from \"@tsed/core\";\nimport {getLogger} from \"./createInjector\";\n\nclass CustomLogger extends Logger {\n fail(message: string) {\n getLogger()?.error(\"[FAIL]\", message);\n }\n\n skip(message: string) {\n getLogger()?.info(\"[SKIP]\", message);\n }\n\n success(message: string) {\n getLogger()?.info(\"[SUCCESS]\", message);\n }\n\n data(message: string) {\n getLogger()?.info(\"[DATA]\", message);\n }\n\n start(message: string) {\n getLogger()?.info(\"[START]\", message);\n }\n\n title(message: string) {\n getLogger()?.info(\"[TITLE]\", message);\n }\n\n retry(message: string) {\n getLogger()?.info(\"[RETRY]\", message);\n }\n\n rollback(message: string) {\n getLogger()?.info(\"[ROLLBACK]\", message);\n }\n}\n\nfunction getOptions(ctx: TaskOptions): any {\n const useRawRenderer = !(!ctx.verbose && !process.env.CI);\n const rendererOptions = useRawRenderer\n ? {\n logger: CustomLogger\n }\n : {};\n return {\n ...ctx,\n rendererSilent: process.env.NODE_ENV === \"test\",\n rendererFallback: useRawRenderer,\n renderer: useRawRenderer ? \"verbose\" : \"default\",\n nonTTYRendererOptions: rendererOptions,\n rendererOptions\n };\n}\n\nexport function createTasks(tasks: Tasks, ctx: TaskOptions) {\n return new Listr(tasks as any, getOptions(ctx));\n}\n\nexport function createSubTasks(tasks: Tasks | ((ctx: any, task: any) => Tasks | Promise<Tasks>), opts: TaskOptions) {\n opts = getOptions(opts);\n\n return async (ctx: any, task: ListrTaskWrapper<any, any>) => {\n if (isFunction(tasks)) {\n tasks = await tasks(ctx, task);\n }\n\n return task.newListr(tasks, opts);\n };\n}\n\nexport function createTasksRunner(tasks: Tasks, ctx: TaskOptions) {\n return createTasks(tasks, ctx).run(ctx as any);\n}\n"]}
1
+ {"version":3,"file":"createTasksRunner.js","sourceRoot":"","sources":["../../../src/utils/createTasksRunner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAoB,MAAM,EAAC,MAAM,QAAQ,CAAC;AAEvD,OAAO,EAAC,UAAU,EAAC,MAAM,YAAY,CAAC;AACtC,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAE3C,MAAM,YAAa,SAAQ,MAAM;IAC/B,IAAI,CAAC,OAAe;QAClB,SAAS,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,CAAC,OAAe;QAClB,SAAS,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,CAAC,OAAe;QACrB,SAAS,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,CAAC,OAAe;QAClB,SAAS,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,OAAe;QACnB,SAAS,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,OAAe;QACnB,SAAS,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,OAAe;QACnB,SAAS,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,QAAQ,CAAC,OAAe;QACtB,SAAS,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;CACF;AAED,SAAS,UAAU,CAAC,GAAgB;IAClC,MAAM,cAAc,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,cAAc;QACpC,CAAC,CAAC;YACE,MAAM,EAAE,YAAY;SACrB;QACH,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,GAAG,GAAG;QACN,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM;QAC/C,gBAAgB,EAAE,cAAc;QAChC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAChD,qBAAqB,EAAE,eAAe;QACtC,eAAe;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAY,EAAE,GAAgB;IACxD,OAAO,IAAI,KAAK,CAAC,KAAY,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAgE,EAAE,IAAiB;IAChH,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAExB,OAAO,KAAK,EAAE,GAAQ,EAAE,IAAgC,EAAE,EAAE;QAC1D,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;YACrB,KAAK,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SAChC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAY,EAAE,GAAgB;IAC9D,OAAO,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAU,CAAC,CAAC;AACjD,CAAC","sourcesContent":["import {Listr, ListrTaskWrapper, Logger} from \"listr2\";\nimport type {TaskOptions, Tasks} from \"../interfaces/Tasks\";\nimport {isFunction} from \"@tsed/core\";\nimport {getLogger} from \"./createInjector\";\n\nclass CustomLogger extends Logger {\n fail(message: string) {\n getLogger()?.error(\"[FAIL]\", message);\n }\n\n skip(message: string) {\n getLogger()?.info(\"[SKIP]\", message);\n }\n\n success(message: string) {\n getLogger()?.info(\"[SUCCESS]\", message);\n }\n\n data(message: string) {\n getLogger()?.info(\"[DATA]\", message);\n }\n\n start(message: string) {\n getLogger()?.info(\"[START]\", message);\n }\n\n title(message: string) {\n getLogger()?.info(\"[TITLE]\", message);\n }\n\n retry(message: string) {\n getLogger()?.info(\"[RETRY]\", message);\n }\n\n rollback(message: string) {\n getLogger()?.info(\"[ROLLBACK]\", message);\n }\n}\n\nfunction getOptions(ctx: TaskOptions): any {\n const useRawRenderer = !(!ctx.verbose && !process.env.CI);\n const rendererOptions = useRawRenderer\n ? {\n logger: CustomLogger\n }\n : {};\n return {\n ...ctx,\n rendererSilent: process.env.NODE_ENV === \"test\",\n rendererFallback: useRawRenderer,\n renderer: useRawRenderer ? \"verbose\" : \"default\",\n nonTTYRendererOptions: rendererOptions,\n rendererOptions\n };\n}\n\nexport function createTasks(tasks: Tasks, ctx: TaskOptions) {\n return new Listr(tasks as any, getOptions(ctx));\n}\n\nexport function createSubTasks(tasks: Tasks | ((ctx: any, task: any) => Tasks | Promise<Tasks>), opts: TaskOptions) {\n opts = getOptions(opts);\n\n return async (ctx: any, task: ListrTaskWrapper<any, any>) => {\n if (isFunction(tasks)) {\n tasks = await tasks(ctx, task);\n }\n\n return task.newListr(tasks, opts);\n };\n}\n\nexport function createTasksRunner(tasks: Tasks, ctx: TaskOptions) {\n return createTasks(tasks, ctx).run(ctx as any);\n}\n"]}
@@ -1,8 +1,7 @@
1
1
  import { Store } from "@tsed/core";
2
2
  import { CommandStoreKeys } from "../domains/CommandStoreKeys.js";
3
3
  export function getCommandMetadata(token) {
4
- var _a;
5
- const { name, alias, args = {}, allowUnknownOption, description, options = {} } = (_a = Store.from(token)) === null || _a === void 0 ? void 0 : _a.get(CommandStoreKeys.COMMAND);
4
+ const { name, alias, args = {}, allowUnknownOption, description, options = {} } = Store.from(token)?.get(CommandStoreKeys.COMMAND);
6
5
  return {
7
6
  name,
8
7
  alias,
@@ -1 +1 @@
1
- {"version":3,"file":"getCommandMetadata.js","sourceRoot":"","sources":["../../../src/utils/getCommandMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAO,MAAM,YAAY,CAAC;AACvC,OAAO,EAAC,gBAAgB,EAAC,MAAM,6BAA6B,CAAC;AAG7D,MAAM,UAAU,kBAAkB,CAAC,KAAgB;;IACjD,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,kBAAkB,EAAE,WAAW,EAAE,OAAO,GAAG,EAAE,EAAC,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,0CAAE,GAAG,CACpG,gBAAgB,CAAC,OAAO,CACJ,CAAC;IAEvB,OAAO;QACL,IAAI;QACJ,KAAK;QACL,IAAI;QACJ,WAAW;QACX,OAAO;QACP,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;KACzC,CAAC;AACJ,CAAC","sourcesContent":["import {Store, Type} from \"@tsed/core\";\nimport {CommandStoreKeys} from \"../domains/CommandStoreKeys\";\nimport {CommandParameters} from \"../interfaces/CommandParameters\";\n\nexport function getCommandMetadata(token: Type<any>) {\n const {name, alias, args = {}, allowUnknownOption, description, options = {}} = Store.from(token)?.get(\n CommandStoreKeys.COMMAND\n ) as CommandParameters;\n\n return {\n name,\n alias,\n args,\n description,\n options,\n allowUnknownOption: !!allowUnknownOption\n };\n}\n"]}
1
+ {"version":3,"file":"getCommandMetadata.js","sourceRoot":"","sources":["../../../src/utils/getCommandMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAO,MAAM,YAAY,CAAC;AACvC,OAAO,EAAC,gBAAgB,EAAC,MAAM,6BAA6B,CAAC;AAG7D,MAAM,UAAU,kBAAkB,CAAC,KAAgB;IACjD,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,kBAAkB,EAAE,WAAW,EAAE,OAAO,GAAG,EAAE,EAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CACpG,gBAAgB,CAAC,OAAO,CACJ,CAAC;IAEvB,OAAO;QACL,IAAI;QACJ,KAAK;QACL,IAAI;QACJ,WAAW;QACX,OAAO;QACP,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;KACzC,CAAC;AACJ,CAAC","sourcesContent":["import {Store, Type} from \"@tsed/core\";\nimport {CommandStoreKeys} from \"../domains/CommandStoreKeys\";\nimport {CommandParameters} from \"../interfaces/CommandParameters\";\n\nexport function getCommandMetadata(token: Type<any>) {\n const {name, alias, args = {}, allowUnknownOption, description, options = {}} = Store.from(token)?.get(\n CommandStoreKeys.COMMAND\n ) as CommandParameters;\n\n return {\n name,\n alias,\n args,\n description,\n options,\n allowUnknownOption: !!allowUnknownOption\n };\n}\n"]}
@@ -2,8 +2,7 @@ import readPkgUp from "read-pkg-up";
2
2
  import { dirname, join } from "path";
3
3
  import Fs from "fs-extra";
4
4
  function useReadPkgUp(configuration) {
5
- var _a;
6
- return !(process.argv.includes("init") && !Fs.existsSync(join(String((_a = configuration.project) === null || _a === void 0 ? void 0 : _a.rootDir), "package.json")));
5
+ return !(process.argv.includes("init") && !Fs.existsSync(join(String(configuration.project?.rootDir), "package.json")));
7
6
  }
8
7
  function getEmptyPackageJson(configuration) {
9
8
  return {
@@ -16,10 +15,9 @@ function getEmptyPackageJson(configuration) {
16
15
  };
17
16
  }
18
17
  export function getPackageJson(configuration) {
19
- var _a;
20
18
  if (useReadPkgUp(configuration)) {
21
19
  const result = readPkgUp.sync({
22
- cwd: (_a = configuration.project) === null || _a === void 0 ? void 0 : _a.rootDir
20
+ cwd: configuration.project?.rootDir
23
21
  });
24
22
  if (result && result.path) {
25
23
  const pkgPath = dirname(result.path);
@@ -1 +1 @@
1
- {"version":3,"file":"getPackageJson.js","sourceRoot":"","sources":["../../../src/utils/getPackageJson.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,SAAS,YAAY,CAAC,aAA4B;;IAChD,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,MAAA,aAAa,CAAC,OAAO,0CAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;AAC1H,CAAC;AAED,SAAS,mBAAmB,CAAC,aAA4B;IACvD,OAAO;QACL,IAAI,EAAE,aAAa,CAAC,IAAI;QACxB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,EAAE;QAChB,eAAe,EAAE,EAAE;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,aAA4B;;IACzD,IAAI,YAAY,CAAC,aAAa,CAAC,EAAE;QAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC;YAC5B,GAAG,EAAE,MAAA,aAAa,CAAC,OAAO,0CAAE,OAAO;SACpC,CAAC,CAAC;QAEH,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE;YACzB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAErC,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YAE3C,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,MAAM,EAAC,CAAC,CAAC;YAE7D,OAAO,EAAC,GAAG,mBAAmB,CAAC,aAAa,CAAC,EAAE,GAAG,GAAG,EAAQ,CAAC;SAC/D;KACF;IAED,OAAO,mBAAmB,CAAC,aAAa,CAAC,CAAC;AAC5C,CAAC","sourcesContent":["import {Configuration} from \"@tsed/di\";\nimport readPkgUp from \"read-pkg-up\";\nimport {dirname, join} from \"path\";\nimport Fs from \"fs-extra\";\n\nfunction useReadPkgUp(configuration: Configuration) {\n return !(process.argv.includes(\"init\") && !Fs.existsSync(join(String(configuration.project?.rootDir), \"package.json\")));\n}\n\nfunction getEmptyPackageJson(configuration: Configuration) {\n return {\n name: configuration.name,\n version: \"1.0.0\",\n description: \"\",\n scripts: {},\n dependencies: {},\n devDependencies: {}\n };\n}\n\nexport function getPackageJson(configuration: Configuration) {\n if (useReadPkgUp(configuration)) {\n const result = readPkgUp.sync({\n cwd: configuration.project?.rootDir\n });\n\n if (result && result.path) {\n const pkgPath = dirname(result.path);\n\n configuration.set(\"project.root\", pkgPath);\n\n const pkg = Fs.readJsonSync(result.path, {encoding: \"utf8\"});\n\n return {...getEmptyPackageJson(configuration), ...pkg} as any;\n }\n }\n\n return getEmptyPackageJson(configuration);\n}\n"]}
1
+ {"version":3,"file":"getPackageJson.js","sourceRoot":"","sources":["../../../src/utils/getPackageJson.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,SAAS,YAAY,CAAC,aAA4B;IAChD,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;AAC1H,CAAC;AAED,SAAS,mBAAmB,CAAC,aAA4B;IACvD,OAAO;QACL,IAAI,EAAE,aAAa,CAAC,IAAI;QACxB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,EAAE;QAChB,eAAe,EAAE,EAAE;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,aAA4B;IACzD,IAAI,YAAY,CAAC,aAAa,CAAC,EAAE;QAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC;YAC5B,GAAG,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO;SACpC,CAAC,CAAC;QAEH,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE;YACzB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAErC,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YAE3C,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,MAAM,EAAC,CAAC,CAAC;YAE7D,OAAO,EAAC,GAAG,mBAAmB,CAAC,aAAa,CAAC,EAAE,GAAG,GAAG,EAAQ,CAAC;SAC/D;KACF;IAED,OAAO,mBAAmB,CAAC,aAAa,CAAC,CAAC;AAC5C,CAAC","sourcesContent":["import {Configuration} from \"@tsed/di\";\nimport readPkgUp from \"read-pkg-up\";\nimport {dirname, join} from \"path\";\nimport Fs from \"fs-extra\";\n\nfunction useReadPkgUp(configuration: Configuration) {\n return !(process.argv.includes(\"init\") && !Fs.existsSync(join(String(configuration.project?.rootDir), \"package.json\")));\n}\n\nfunction getEmptyPackageJson(configuration: Configuration) {\n return {\n name: configuration.name,\n version: \"1.0.0\",\n description: \"\",\n scripts: {},\n dependencies: {},\n devDependencies: {}\n };\n}\n\nexport function getPackageJson(configuration: Configuration) {\n if (useReadPkgUp(configuration)) {\n const result = readPkgUp.sync({\n cwd: configuration.project?.rootDir\n });\n\n if (result && result.path) {\n const pkgPath = dirname(result.path);\n\n configuration.set(\"project.root\", pkgPath);\n\n const pkg = Fs.readJsonSync(result.path, {encoding: \"utf8\"});\n\n return {...getEmptyPackageJson(configuration), ...pkg} as any;\n }\n }\n\n return getEmptyPackageJson(configuration);\n}\n"]}
@@ -12,15 +12,13 @@ export async function loadPlugins(injector) {
12
12
  const promises = Object.keys(projectPackageJson.allDependencies)
13
13
  .filter((mod) => mod.startsWith(`@${name}/cli-plugin`) || mod.includes(`${name}-cli-plugin`))
14
14
  .map(async (mod) => {
15
- var _a;
16
15
  try {
17
16
  const { default: plugin } = await fs.importModule(mod, rootDir);
18
17
  if (!injector.has(plugin)) {
19
- const provider = (_a = GlobalProviders.get(plugin)) === null || _a === void 0 ? void 0 : _a.clone();
20
- if (provider === null || provider === void 0 ? void 0 : provider.imports.length) {
18
+ const provider = GlobalProviders.get(plugin)?.clone();
19
+ if (provider?.imports.length) {
21
20
  await all(provider.imports.map(async (token) => {
22
- var _a;
23
- injector.add(token, (_a = GlobalProviders.get(token)) === null || _a === void 0 ? void 0 : _a.clone());
21
+ injector.add(token, GlobalProviders.get(token)?.clone());
24
22
  if (injector.settings.get("loaded")) {
25
23
  await injector.invoke(token);
26
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loadPlugins.js","sourceRoot":"","sources":["../../../src/utils/loadPlugins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAkB,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAC,OAAO,EAAC,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAElE,MAAM,GAAG,GAAG,CAAC,QAAe,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAyB;IACzD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAEzD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAqB,kBAAkB,CAAC,CAAC;IACnF,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAQ,KAAK,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC;SAC7D,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,aAAa,CAAC,CAAC;SAC5F,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;;QACjB,IAAI;YACF,MAAM,EAAC,OAAO,EAAE,MAAM,EAAC,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBACzB,MAAM,QAAQ,GAAG,MAAA,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,0CAAE,KAAK,EAAE,CAAC;gBAEtD,IAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,MAAM,EAAE;oBAC5B,MAAM,GAAG,CACP,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;;wBACnC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,MAAA,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,0CAAE,KAAK,EAAE,CAAC,CAAC;wBAEzD,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;4BACnC,MAAM,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;yBAC9B;oBACH,CAAC,CAAC,CACH,CAAC;iBACH;gBAED,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAE/B,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;oBACnC,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;iBAC/B;aACF;YACD,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;SACvE;QAAC,OAAO,EAAE,EAAE;YACX,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAC;SAC5E;IACH,CAAC,CAAC,CAAC;IAEL,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC;AACtB,CAAC","sourcesContent":["import {GlobalProviders, InjectorService} from \"@tsed/di\";\nimport {figures} from \"listr2\";\nimport chalk from \"chalk\";\nimport {CliFs} from \"../services/CliFs\";\nimport {ProjectPackageJson} from \"../services/ProjectPackageJson\";\n\nconst all = (promises: any[]) => Promise.all(promises);\n\nexport async function loadPlugins(injector: InjectorService) {\n const name = injector.settings.get(\"name\");\n const rootDir = injector.settings.get(\"project.rootDir\");\n\n const projectPackageJson = injector.invoke<ProjectPackageJson>(ProjectPackageJson);\n const fs = injector.invoke<CliFs>(CliFs);\n\n const promises = Object.keys(projectPackageJson.allDependencies)\n .filter((mod) => mod.startsWith(`@${name}/cli-plugin`) || mod.includes(`${name}-cli-plugin`))\n .map(async (mod) => {\n try {\n const {default: plugin} = await fs.importModule(mod, rootDir);\n\n if (!injector.has(plugin)) {\n const provider = GlobalProviders.get(plugin)?.clone();\n\n if (provider?.imports.length) {\n await all(\n provider.imports.map(async (token) => {\n injector.add(token, GlobalProviders.get(token)?.clone());\n\n if (injector.settings.get(\"loaded\")) {\n await injector.invoke(token);\n }\n })\n );\n }\n\n injector.add(plugin, provider);\n\n if (injector.settings.get(\"loaded\")) {\n await injector.invoke(plugin);\n }\n }\n injector.logger.info(chalk.green(figures.tick), mod, \"module loaded\");\n } catch (er) {\n injector.logger.warn(chalk.red(figures.cross), \"Fail to load plugin\", mod);\n }\n });\n\n await all(promises);\n}\n"]}
1
+ {"version":3,"file":"loadPlugins.js","sourceRoot":"","sources":["../../../src/utils/loadPlugins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAkB,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAC,OAAO,EAAC,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAElE,MAAM,GAAG,GAAG,CAAC,QAAe,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAyB;IACzD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAEzD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAqB,kBAAkB,CAAC,CAAC;IACnF,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAQ,KAAK,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC;SAC7D,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,aAAa,CAAC,CAAC;SAC5F,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACjB,IAAI;YACF,MAAM,EAAC,OAAO,EAAE,MAAM,EAAC,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBACzB,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;gBAEtD,IAAI,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE;oBAC5B,MAAM,GAAG,CACP,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;wBACnC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;wBAEzD,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;4BACnC,MAAM,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;yBAC9B;oBACH,CAAC,CAAC,CACH,CAAC;iBACH;gBAED,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAE/B,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;oBACnC,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;iBAC/B;aACF;YACD,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;SACvE;QAAC,OAAO,EAAE,EAAE;YACX,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAC;SAC5E;IACH,CAAC,CAAC,CAAC;IAEL,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC;AACtB,CAAC","sourcesContent":["import {GlobalProviders, InjectorService} from \"@tsed/di\";\nimport {figures} from \"listr2\";\nimport chalk from \"chalk\";\nimport {CliFs} from \"../services/CliFs\";\nimport {ProjectPackageJson} from \"../services/ProjectPackageJson\";\n\nconst all = (promises: any[]) => Promise.all(promises);\n\nexport async function loadPlugins(injector: InjectorService) {\n const name = injector.settings.get(\"name\");\n const rootDir = injector.settings.get(\"project.rootDir\");\n\n const projectPackageJson = injector.invoke<ProjectPackageJson>(ProjectPackageJson);\n const fs = injector.invoke<CliFs>(CliFs);\n\n const promises = Object.keys(projectPackageJson.allDependencies)\n .filter((mod) => mod.startsWith(`@${name}/cli-plugin`) || mod.includes(`${name}-cli-plugin`))\n .map(async (mod) => {\n try {\n const {default: plugin} = await fs.importModule(mod, rootDir);\n\n if (!injector.has(plugin)) {\n const provider = GlobalProviders.get(plugin)?.clone();\n\n if (provider?.imports.length) {\n await all(\n provider.imports.map(async (token) => {\n injector.add(token, GlobalProviders.get(token)?.clone());\n\n if (injector.settings.get(\"loaded\")) {\n await injector.invoke(token);\n }\n })\n );\n }\n\n injector.add(plugin, provider);\n\n if (injector.settings.get(\"loaded\")) {\n await injector.invoke(plugin);\n }\n }\n injector.logger.info(chalk.green(figures.tick), mod, \"module loaded\");\n } catch (er) {\n injector.logger.warn(chalk.red(figures.cross), \"Fail to load plugin\", mod);\n }\n });\n\n await all(promises);\n}\n"]}
@@ -1,24 +1,25 @@
1
1
  /// <reference types="node" />
2
+ import type { SyncOptions, Options } from "execa";
2
3
  import execa from "execa";
3
4
  import "any-observable/register/rxjs-all";
4
5
  export declare class CliExeca {
5
6
  readonly raw: {
6
- (file: string, arguments?: readonly string[] | undefined, options?: execa.Options<string> | undefined): execa.ExecaChildProcess<string>;
7
- (file: string, arguments?: readonly string[] | undefined, options?: execa.Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
8
- (file: string, options?: execa.Options<string> | undefined): execa.ExecaChildProcess<string>;
9
- (file: string, options?: execa.Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
10
- sync(file: string, arguments?: readonly string[] | undefined, options?: execa.SyncOptions<string> | undefined): execa.ExecaSyncReturnValue<string>;
11
- sync(file: string, arguments?: readonly string[] | undefined, options?: execa.SyncOptions<null> | undefined): execa.ExecaSyncReturnValue<Buffer>;
12
- sync(file: string, options?: execa.SyncOptions<string> | undefined): execa.ExecaSyncReturnValue<string>;
13
- sync(file: string, options?: execa.SyncOptions<null> | undefined): execa.ExecaSyncReturnValue<Buffer>;
14
- command(command: string, options?: execa.Options<string> | undefined): execa.ExecaChildProcess<string>;
15
- command(command: string, options?: execa.Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
16
- commandSync(command: string, options?: execa.SyncOptions<string> | undefined): execa.ExecaSyncReturnValue<string>;
17
- commandSync(command: string, options?: execa.SyncOptions<null> | undefined): execa.ExecaSyncReturnValue<Buffer>;
7
+ (file: string, arguments?: readonly string[] | undefined, options?: Options<string> | undefined): execa.ExecaChildProcess<string>;
8
+ (file: string, arguments?: readonly string[] | undefined, options?: Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
9
+ (file: string, options?: Options<string> | undefined): execa.ExecaChildProcess<string>;
10
+ (file: string, options?: Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
11
+ sync(file: string, arguments?: readonly string[] | undefined, options?: SyncOptions<string> | undefined): execa.ExecaSyncReturnValue<string>;
12
+ sync(file: string, arguments?: readonly string[] | undefined, options?: SyncOptions<null> | undefined): execa.ExecaSyncReturnValue<Buffer>;
13
+ sync(file: string, options?: SyncOptions<string> | undefined): execa.ExecaSyncReturnValue<string>;
14
+ sync(file: string, options?: SyncOptions<null> | undefined): execa.ExecaSyncReturnValue<Buffer>;
15
+ command(command: string, options?: Options<string> | undefined): execa.ExecaChildProcess<string>;
16
+ command(command: string, options?: Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
17
+ commandSync(command: string, options?: SyncOptions<string> | undefined): execa.ExecaSyncReturnValue<string>;
18
+ commandSync(command: string, options?: SyncOptions<null> | undefined): execa.ExecaSyncReturnValue<Buffer>;
18
19
  node(scriptPath: string, arguments?: readonly string[] | undefined, options?: execa.NodeOptions<string> | undefined): execa.ExecaChildProcess<string>;
19
- node(scriptPath: string, arguments?: readonly string[] | undefined, options?: execa.Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
20
- node(scriptPath: string, options?: execa.Options<string> | undefined): execa.ExecaChildProcess<string>;
21
- node(scriptPath: string, options?: execa.Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
20
+ node(scriptPath: string, arguments?: readonly string[] | undefined, options?: Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
21
+ node(scriptPath: string, options?: Options<string> | undefined): execa.ExecaChildProcess<string>;
22
+ node(scriptPath: string, options?: Options<null> | undefined): execa.ExecaChildProcess<Buffer>;
22
23
  };
23
24
  /**
24
25
  *
@@ -26,8 +27,8 @@ export declare class CliExeca {
26
27
  * @param args
27
28
  * @param opts
28
29
  */
29
- run(cmd: string, args: string[], opts?: execa.Options): any;
30
- runSync(cmd: string, args: string[], opts?: execa.SyncOptions): execa.ExecaSyncReturnValue<string>;
31
- getAsync(cmd: string, args: string[], opts?: execa.SyncOptions): Promise<string>;
32
- get(cmd: string, args: string[], opts?: execa.SyncOptions): string;
30
+ run(cmd: string, args: string[], opts?: Options): any;
31
+ runSync(cmd: string, args: string[], opts?: SyncOptions): execa.ExecaSyncReturnValue<string>;
32
+ getAsync(cmd: string, args: string[], opts?: SyncOptions): Promise<string>;
33
+ get(cmd: string, args: string[], opts?: SyncOptions): string;
33
34
  }
@@ -18,6 +18,6 @@ export declare class CliHttpClient extends CliHttpLogClient {
18
18
  delete<T = any>(endpoint: string, options?: CliHttpClientOptions): Promise<T>;
19
19
  protected getRequestParameters(method: Method, endpoint: string, options: CliHttpClientOptions): CliHttpClientOptions;
20
20
  protected configureProxy(endpoint: string, options: CliHttpClientOptions): void;
21
- protected send(options: AxiosRequestConfig): Promise<import("axios").AxiosResponse<any>>;
21
+ protected send(options: AxiosRequestConfig): Promise<import("axios").AxiosResponse<any, any>>;
22
22
  protected mapResponse(result: any, options: CliHttpClientOptions): any;
23
23
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsed/cli-core",
3
- "version": "3.21.0-rc.2",
3
+ "version": "3.21.0-rc.5",
4
4
  "description": "Build your CLI with TypeScript and Decorators",
5
5
  "source": "./src/index.ts",
6
6
  "main": "./lib/cjs/index.js",
@@ -28,33 +28,33 @@
28
28
  "listr"
29
29
  ],
30
30
  "dependencies": {
31
- "@npmcli/run-script": "3.0.0",
31
+ "@npmcli/run-script": "3.0.1",
32
32
  "@samverschueren/stream-to-observable": "^0.3.1",
33
- "@tsed/logger": ">=6.0.0",
33
+ "@tsed/logger": ">=6.1.1",
34
34
  "any-observable": "0.5.1",
35
- "axios": "0.21.4",
35
+ "axios": "0.26.1",
36
36
  "chalk": "4.1.0",
37
37
  "change-case": "^4.1.2",
38
- "commander": "8.0.0",
38
+ "commander": "9.1.0",
39
39
  "consolidate": "0.16.0",
40
40
  "create-frame": "1.0.0",
41
41
  "enquirer": "2.3.6",
42
- "execa": "5.0.0",
43
- "figures": "3.2.0",
42
+ "execa": "5.1.1",
43
+ "figures": "4.0.0",
44
44
  "filedirname": "2.7.0",
45
45
  "fs-extra": "10.1.0",
46
- "globby": "11.0.2",
46
+ "globby": "11.1.0",
47
47
  "handlebars": "4.7.7",
48
48
  "handlebars-utils": "1.0.6",
49
- "inquirer": "8.2.0",
50
- "inquirer-autocomplete-prompt": "1.3.0",
49
+ "inquirer": "8.2.1",
50
+ "inquirer-autocomplete-prompt": "2.0.0",
51
51
  "js-yaml": "4.1.0",
52
- "listr2": "3.13.1",
52
+ "listr2": "4.0.5",
53
53
  "module-alias": "2.2.2",
54
54
  "normalize-path": "3.0.0",
55
55
  "read-pkg-up": "7.0.1",
56
56
  "registry-url": "5.1.0",
57
- "rxjs": "^6.6.7",
57
+ "rxjs": "^7.5.5",
58
58
  "semver": "7.3.5",
59
59
  "split": "1.0.1",
60
60
  "tslib": "2.3.1",
@@ -65,17 +65,17 @@
65
65
  "devDependencies": {
66
66
  "@types/axios": "0.14.0",
67
67
  "@types/commander": "2.12.2",
68
- "@types/consolidate": "0.14.0",
68
+ "@types/consolidate": "0.14.1",
69
69
  "@types/figures": "3.0.1",
70
70
  "@types/fs-extra": "9.0.13",
71
71
  "@types/globby": "9.1.0",
72
- "@types/inquirer": "8.2.1",
73
- "@types/js-yaml": "4.0.4",
72
+ "@types/inquirer": "8.2.0",
73
+ "@types/js-yaml": "4.0.5",
74
74
  "@types/normalize-path": "^3.0.0",
75
75
  "@types/read-pkg-up": "6.0.0",
76
- "@types/semver": "7.3.5",
76
+ "@types/semver": "7.3.9",
77
77
  "@types/tunnel": "0.0.3",
78
- "@types/update-notifier": "5.0.0",
78
+ "@types/update-notifier": "5.1.0",
79
79
  "@types/url-parse": "^1.4.3"
80
80
  },
81
81
  "peerDependencies": {