@tsed/cli-core 3.22.1 → 3.22.4

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.
@@ -5,7 +5,6 @@ const tslib_1 = require("tslib");
5
5
  const di_1 = require("@tsed/di");
6
6
  const execa_1 = tslib_1.__importDefault(require("execa"));
7
7
  const operators_1 = require("rxjs/operators");
8
- require("any-observable/register/rxjs-all");
9
8
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
10
9
  // @ts-ignore
11
10
  const split_1 = tslib_1.__importDefault(require("split"));
@@ -1 +1 @@
1
- {"version":3,"file":"CliExeca.js","sourceRoot":"","sources":["../../../src/services/CliExeca.ts"],"names":[],"mappings":";;;;AAAA,iCAAoC;AAEpC,0DAA0B;AAC1B,8CAAiD;AACjD,4CAA0C;AAC1C,6DAA6D;AAC7D,aAAa;AACb,0DAA0B;AAC1B,oEAA+D;AAG/D,IAAa,QAAQ,GAArB,MAAa,QAAQ;IACV,GAAG,GAAG,eAAK,CAAC;IAErB;;;;;OAKG;IACH,GAAG,CAAC,GAAW,EAAE,IAAc,EAAE,IAAc;QAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,IAAA,uCAAkB,EAAC,EAAE,CAAC,MAAO,CAAC,IAAI,CAAC,IAAA,eAAK,GAAE,CAAC,EAAE,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,IAAA,uCAAkB,EAAC,EAAE,CAAC,MAAO,CAAC,IAAI,CAAC,IAAA,eAAK,GAAE,CAAC,EAAE,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;QAEzE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAA,qBAAS,EAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAA,kBAAM,EAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QACrD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QAC5D,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAClD,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QACjD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;IAC/C,CAAC;CACF,CAAA;AA5BY,QAAQ;IADpB,IAAA,eAAU,GAAE;GACA,QAAQ,CA4BpB;AA5BY,4BAAQ","sourcesContent":["import {Injectable} from \"@tsed/di\";\nimport type {Options, SyncOptions} from \"execa\";\nimport execa from \"execa\";\nimport {filter, mergeWith} from \"rxjs/operators\";\nimport \"any-observable/register/rxjs-all\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport split from \"split\";\nimport {streamToObservable} from \"../utils/streamToObservable\";\n\n@Injectable()\nexport class CliExeca {\n readonly raw = execa;\n\n /**\n *\n * @param cmd\n * @param args\n * @param opts\n */\n run(cmd: string, args: string[], opts?: Options) {\n const cp = this.raw(cmd, args, opts);\n const stdout = streamToObservable(cp.stdout!.pipe(split()), {await: cp});\n const stderr = streamToObservable(cp.stderr!.pipe(split()), {await: cp});\n\n return stdout.pipe(mergeWith(stderr)).pipe(filter(Boolean));\n }\n\n runSync(cmd: string, args: string[], opts?: SyncOptions) {\n return this.raw.sync(cmd, args, opts);\n }\n\n async getAsync(cmd: string, args: string[], opts?: SyncOptions) {\n return (await this.raw(cmd, args, opts)).stdout;\n }\n\n get(cmd: string, args: string[], opts?: SyncOptions) {\n return this.raw.sync(cmd, args, opts).stdout;\n }\n}\n"]}
1
+ {"version":3,"file":"CliExeca.js","sourceRoot":"","sources":["../../../src/services/CliExeca.ts"],"names":[],"mappings":";;;;AAAA,iCAAoC;AAEpC,0DAA0B;AAC1B,8CAAiD;AACjD,6DAA6D;AAC7D,aAAa;AACb,0DAA0B;AAC1B,oEAA+D;AAG/D,IAAa,QAAQ,GAArB,MAAa,QAAQ;IACV,GAAG,GAAG,eAAK,CAAC;IAErB;;;;;OAKG;IACH,GAAG,CAAC,GAAW,EAAE,IAAc,EAAE,IAAc;QAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,IAAA,uCAAkB,EAAC,EAAE,CAAC,MAAO,CAAC,IAAI,CAAC,IAAA,eAAK,GAAE,CAAC,EAAE,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,IAAA,uCAAkB,EAAC,EAAE,CAAC,MAAO,CAAC,IAAI,CAAC,IAAA,eAAK,GAAE,CAAC,EAAE,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;QAEzE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAA,qBAAS,EAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAA,kBAAM,EAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QACrD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QAC5D,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAClD,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QACjD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;IAC/C,CAAC;CACF,CAAA;AA5BY,QAAQ;IADpB,IAAA,eAAU,GAAE;GACA,QAAQ,CA4BpB;AA5BY,4BAAQ","sourcesContent":["import {Injectable} from \"@tsed/di\";\nimport type {Options, SyncOptions} from \"execa\";\nimport execa from \"execa\";\nimport {filter, mergeWith} from \"rxjs/operators\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport split from \"split\";\nimport {streamToObservable} from \"../utils/streamToObservable\";\n\n@Injectable()\nexport class CliExeca {\n readonly raw = execa;\n\n /**\n *\n * @param cmd\n * @param args\n * @param opts\n */\n run(cmd: string, args: string[], opts?: Options) {\n const cp = this.raw(cmd, args, opts);\n const stdout = streamToObservable(cp.stdout!.pipe(split()), {await: cp});\n const stderr = streamToObservable(cp.stderr!.pipe(split()), {await: cp});\n\n return stdout.pipe(mergeWith(stderr)).pipe(filter(Boolean));\n }\n\n runSync(cmd: string, args: string[], opts?: SyncOptions) {\n return this.raw.sync(cmd, args, opts);\n }\n\n async getAsync(cmd: string, args: string[], opts?: SyncOptions) {\n return (await this.raw(cmd, args, opts)).stdout;\n }\n\n get(cmd: string, args: string[], opts?: SyncOptions) {\n return this.raw.sync(cmd, args, opts).stdout;\n }\n}\n"]}
@@ -276,9 +276,10 @@ let ProjectPackageJson = class ProjectPackageJson {
276
276
  async importModule(mod) {
277
277
  return this.fs.importModule(mod, this.dir);
278
278
  }
279
- runScript(npmTask, ignoreError = false) {
279
+ runScript(npmTask, { ignoreError, ...opts } = {}) {
280
280
  const options = {
281
- cwd: this.dir
281
+ cwd: this.dir,
282
+ ...opts
282
283
  };
283
284
  const errorPipe = () => (0, operators_1.catchError)((error) => {
284
285
  if (ignoreError) {
@@ -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: () => this.cliExeca.run(PackageManager.YARN, [\"install\", verbose && \"--verbose\"].filter(Boolean), options).pipe(errorPipe())\n },\n {\n title: \"Add dependencies using Yarn\",\n skip: () => !deps.length,\n task: () =>\n this.cliExeca.run(PackageManager.YARN, [\"add\", verbose && \"--verbose\", ...deps].filter(Boolean), options).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\", ...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\";\nimport {Options} from \"execa\";\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, ...opts}: {ignoreError?: boolean} & Options & Record<string, any> = {}) {\n const options = {\n cwd: this.dir,\n ...opts\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: () => this.cliExeca.run(PackageManager.YARN, [\"install\", verbose && \"--verbose\"].filter(Boolean), options).pipe(errorPipe())\n },\n {\n title: \"Add dependencies using Yarn\",\n skip: () => !deps.length,\n task: () =>\n this.cliExeca.run(PackageManager.YARN, [\"add\", verbose && \"--verbose\", ...deps].filter(Boolean), options).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\", ...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"]}
@@ -2,7 +2,6 @@ import { __decorate } from "tslib";
2
2
  import { Injectable } from "@tsed/di";
3
3
  import execa from "execa";
4
4
  import { filter, mergeWith } from "rxjs/operators";
5
- import "any-observable/register/rxjs-all";
6
5
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
7
6
  // @ts-ignore
8
7
  import split from "split";
@@ -1 +1 @@
1
- {"version":3,"file":"CliExeca.js","sourceRoot":"","sources":["../../../src/services/CliExeca.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAEpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,MAAM,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACjD,OAAO,kCAAkC,CAAC;AAC1C,6DAA6D;AAC7D,aAAa;AACb,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,kBAAkB,EAAC,MAAM,6BAA6B,CAAC;AAG/D,IAAa,QAAQ,GAArB,MAAa,QAAQ;IACV,GAAG,GAAG,KAAK,CAAC;IAErB;;;;;OAKG;IACH,GAAG,CAAC,GAAW,EAAE,IAAc,EAAE,IAAc;QAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,CAAC,MAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,CAAC,MAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;QAEzE,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QACrD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QAC5D,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAClD,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QACjD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;IAC/C,CAAC;CACF,CAAA;AA5BY,QAAQ;IADpB,UAAU,EAAE;GACA,QAAQ,CA4BpB;SA5BY,QAAQ","sourcesContent":["import {Injectable} from \"@tsed/di\";\nimport type {Options, SyncOptions} from \"execa\";\nimport execa from \"execa\";\nimport {filter, mergeWith} from \"rxjs/operators\";\nimport \"any-observable/register/rxjs-all\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport split from \"split\";\nimport {streamToObservable} from \"../utils/streamToObservable\";\n\n@Injectable()\nexport class CliExeca {\n readonly raw = execa;\n\n /**\n *\n * @param cmd\n * @param args\n * @param opts\n */\n run(cmd: string, args: string[], opts?: Options) {\n const cp = this.raw(cmd, args, opts);\n const stdout = streamToObservable(cp.stdout!.pipe(split()), {await: cp});\n const stderr = streamToObservable(cp.stderr!.pipe(split()), {await: cp});\n\n return stdout.pipe(mergeWith(stderr)).pipe(filter(Boolean));\n }\n\n runSync(cmd: string, args: string[], opts?: SyncOptions) {\n return this.raw.sync(cmd, args, opts);\n }\n\n async getAsync(cmd: string, args: string[], opts?: SyncOptions) {\n return (await this.raw(cmd, args, opts)).stdout;\n }\n\n get(cmd: string, args: string[], opts?: SyncOptions) {\n return this.raw.sync(cmd, args, opts).stdout;\n }\n}\n"]}
1
+ {"version":3,"file":"CliExeca.js","sourceRoot":"","sources":["../../../src/services/CliExeca.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAEpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,MAAM,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACjD,6DAA6D;AAC7D,aAAa;AACb,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,kBAAkB,EAAC,MAAM,6BAA6B,CAAC;AAG/D,IAAa,QAAQ,GAArB,MAAa,QAAQ;IACV,GAAG,GAAG,KAAK,CAAC;IAErB;;;;;OAKG;IACH,GAAG,CAAC,GAAW,EAAE,IAAc,EAAE,IAAc;QAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,CAAC,MAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,CAAC,MAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;QAEzE,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QACrD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QAC5D,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAClD,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,IAAc,EAAE,IAAkB;QACjD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;IAC/C,CAAC;CACF,CAAA;AA5BY,QAAQ;IADpB,UAAU,EAAE;GACA,QAAQ,CA4BpB;SA5BY,QAAQ","sourcesContent":["import {Injectable} from \"@tsed/di\";\nimport type {Options, SyncOptions} from \"execa\";\nimport execa from \"execa\";\nimport {filter, mergeWith} from \"rxjs/operators\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport split from \"split\";\nimport {streamToObservable} from \"../utils/streamToObservable\";\n\n@Injectable()\nexport class CliExeca {\n readonly raw = execa;\n\n /**\n *\n * @param cmd\n * @param args\n * @param opts\n */\n run(cmd: string, args: string[], opts?: Options) {\n const cp = this.raw(cmd, args, opts);\n const stdout = streamToObservable(cp.stdout!.pipe(split()), {await: cp});\n const stderr = streamToObservable(cp.stderr!.pipe(split()), {await: cp});\n\n return stdout.pipe(mergeWith(stderr)).pipe(filter(Boolean));\n }\n\n runSync(cmd: string, args: string[], opts?: SyncOptions) {\n return this.raw.sync(cmd, args, opts);\n }\n\n async getAsync(cmd: string, args: string[], opts?: SyncOptions) {\n return (await this.raw(cmd, args, opts)).stdout;\n }\n\n get(cmd: string, args: string[], opts?: SyncOptions) {\n return this.raw.sync(cmd, args, opts).stdout;\n }\n}\n"]}
@@ -273,9 +273,10 @@ let ProjectPackageJson = class ProjectPackageJson {
273
273
  async importModule(mod) {
274
274
  return this.fs.importModule(mod, this.dir);
275
275
  }
276
- runScript(npmTask, ignoreError = false) {
276
+ runScript(npmTask, { ignoreError, ...opts } = {}) {
277
277
  const options = {
278
- cwd: this.dir
278
+ cwd: this.dir,
279
+ ...opts
279
280
  };
280
281
  const errorPipe = () => catchError((error) => {
281
282
  if (ignoreError) {
@@ -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: () => this.cliExeca.run(PackageManager.YARN, [\"install\", verbose && \"--verbose\"].filter(Boolean), options).pipe(errorPipe())\n },\n {\n title: \"Add dependencies using Yarn\",\n skip: () => !deps.length,\n task: () =>\n this.cliExeca.run(PackageManager.YARN, [\"add\", verbose && \"--verbose\", ...deps].filter(Boolean), options).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\", ...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\";\nimport {Options} from \"execa\";\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, ...opts}: {ignoreError?: boolean} & Options & Record<string, any> = {}) {\n const options = {\n cwd: this.dir,\n ...opts\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: () => this.cliExeca.run(PackageManager.YARN, [\"install\", verbose && \"--verbose\"].filter(Boolean), options).pipe(errorPipe())\n },\n {\n title: \"Add dependencies using Yarn\",\n skip: () => !deps.length,\n task: () =>\n this.cliExeca.run(PackageManager.YARN, [\"add\", verbose && \"--verbose\", ...deps].filter(Boolean), options).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\", ...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,7 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  import type { Options, SyncOptions } from "execa";
3
3
  import execa from "execa";
4
- import "any-observable/register/rxjs-all";
5
4
  export declare class CliExeca {
6
5
  readonly raw: {
7
6
  (file: string, arguments?: readonly string[] | undefined, options?: Options<string> | undefined): execa.ExecaChildProcess<string>;
@@ -3,6 +3,7 @@ import { PackageJson } from "../interfaces/PackageJson";
3
3
  import { PackageManager, ProjectPreferences } from "../interfaces/ProjectPreferences";
4
4
  import { CliExeca } from "./CliExeca";
5
5
  import { CliFs } from "./CliFs";
6
+ import { Options } from "execa";
6
7
  export interface InstallOptions {
7
8
  packageManager?: PackageManager;
8
9
  [key: string]: any;
@@ -76,7 +77,9 @@ export declare class ProjectPackageJson {
76
77
  * @param mod
77
78
  */
78
79
  importModule(mod: string): Promise<any>;
79
- runScript(npmTask: string, ignoreError?: boolean): import("rxjs").Observable<unknown>;
80
+ runScript(npmTask: string, { ignoreError, ...opts }?: {
81
+ ignoreError?: boolean;
82
+ } & Options & Record<string, any>): import("rxjs").Observable<unknown>;
80
83
  getPackageManager(packageManager?: PackageManager): PackageManager;
81
84
  setGhToken(GH_TOKEN: string): void;
82
85
  protected installWithYarn({ verbose }: any): {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsed/cli-core",
3
- "version": "3.22.1",
3
+ "version": "3.22.4",
4
4
  "description": "Build your CLI with TypeScript and Decorators",
5
5
  "source": "./src/index.ts",
6
6
  "main": "./lib/cjs/index.js",
@@ -31,7 +31,7 @@
31
31
  "@npmcli/run-script": "3.0.1",
32
32
  "@tsed/logger": ">=6.1.1",
33
33
  "axios": "0.26.1",
34
- "chalk": "4.1.0",
34
+ "chalk": "4.1.2",
35
35
  "change-case": "^4.1.2",
36
36
  "commander": "9.3.0",
37
37
  "consolidate": "0.16.0",