From 47c0f9d7aaa86a3671a0d16bc72a6b4043c536f0 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Tue, 19 May 2026 13:33:47 +0200 Subject: [PATCH 1/4] fix: fix eslint --- .../utils/create-bundles/Angular/bundler.ts | 9 ++++++--- .../utils/ts-to-js-converter/converter.ts | 20 +++++++++---------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/apps/demos/utils/create-bundles/Angular/bundler.ts b/apps/demos/utils/create-bundles/Angular/bundler.ts index ca2d8dbe953e..d5200fe4b708 100644 --- a/apps/demos/utils/create-bundles/Angular/bundler.ts +++ b/apps/demos/utils/create-bundles/Angular/bundler.ts @@ -1,4 +1,4 @@ -import { exec } from 'child_process'; +import { spawn } from 'child_process'; import { BuildOptions } from 'esbuild'; import { existsSync, mkdirSync, removeSync } from 'fs-extra'; import { Demo, Framework } from '../helper/types'; @@ -42,8 +42,11 @@ export default class AngularBundler implements Bundler { createDemoLayout(demo, this.framework); - const ngBuildCommand = `npm run build-angular -- ${getProjectNameByDemo(demo)}`; - const ngBuildProcess = exec(ngBuildCommand); + const isWin = process.platform === 'win32'; + const [npmCmd, npmArgs] = isWin + ? ['cmd', ['/c', 'npm.cmd', 'run', 'build-angular', '--', getProjectNameByDemo(demo)]] + : ['npm', ['run', 'build-angular', '--', getProjectNameByDemo(demo)]]; + const ngBuildProcess = spawn(npmCmd, npmArgs); ngBuildProcess.stdout.on('data', (data) => { console.log(`stdout: ${data}`); }); diff --git a/apps/demos/utils/ts-to-js-converter/converter.ts b/apps/demos/utils/ts-to-js-converter/converter.ts index 4101fe599c6e..87f7771110c4 100644 --- a/apps/demos/utils/ts-to-js-converter/converter.ts +++ b/apps/demos/utils/ts-to-js-converter/converter.ts @@ -78,15 +78,14 @@ const pipeSource = async ( })); }; -const execTsc = async (directory: string, args: string): Promise => new Promise((resolve, reject) => { - cps.exec(`tsc ${args}`, (error, stdout, stderr) => { - if (error != null) { - // eslint-disable-next-line prefer-promise-reject-errors - return reject(`${error}\n${stderr}\n${stdout}`); - } - return resolve(stdout); - }); -}); +const execFilePromise = promisify(cps.execFile); + +const execTsc = (directory: string, args: string[]): Promise => { + const [cmd, cmdArgs] = isWindows() + ? ['cmd', ['/c', 'tsc.cmd', ...args]] + : ['tsc', args]; + return execFilePromise(cmd, cmdArgs, { cwd: directory }).then(({ stdout }) => stdout); +}; const compile = async (resolve: PathResolvers, log: Logger) => { log.debug('compiling sources and unit tests'); @@ -109,7 +108,7 @@ const compile = async (resolve: PathResolvers, log: Logger) => { ), ); - await execTsc(resolve.source('./'), `--build ${tsconfigFile}`); + await execTsc(resolve.source('./'), ['--build', tsconfigFile]); }; const copyAssets = async (resolve: PathResolvers, log: Logger) => { @@ -140,6 +139,7 @@ const strip = async (resolve: PathResolvers, log: Logger) => { }); }; +// eslint-disable-next-line require-await const replaceInFiles = async (filenamePatterns: string[], replacementCallback: (string) => string, resolvePath: (string) => string, log: Logger) => ( Promise.all( filenamePatterns.map(async (pattern) => { From 6f0d19ed9f2bc2f2ab578ecd502f69a1e8adc035 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Wed, 20 May 2026 13:26:04 +0200 Subject: [PATCH 2/4] refactor: convert execTsc to async --- apps/demos/utils/ts-to-js-converter/converter.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/demos/utils/ts-to-js-converter/converter.ts b/apps/demos/utils/ts-to-js-converter/converter.ts index 87f7771110c4..f155a0f4fb92 100644 --- a/apps/demos/utils/ts-to-js-converter/converter.ts +++ b/apps/demos/utils/ts-to-js-converter/converter.ts @@ -80,11 +80,12 @@ const pipeSource = async ( const execFilePromise = promisify(cps.execFile); -const execTsc = (directory: string, args: string[]): Promise => { +const execTsc = async (directory: string, args: string[]): Promise => { const [cmd, cmdArgs] = isWindows() ? ['cmd', ['/c', 'tsc.cmd', ...args]] : ['tsc', args]; - return execFilePromise(cmd, cmdArgs, { cwd: directory }).then(({ stdout }) => stdout); + const { stdout } = await execFilePromise(cmd, cmdArgs, { cwd: directory }); + return stdout; }; const compile = async (resolve: PathResolvers, log: Logger) => { From cca53cf76cfb4fb7a2c42797e74aa647005ed288 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Wed, 20 May 2026 13:28:17 +0200 Subject: [PATCH 3/4] refactor: fix indenting --- apps/demos/utils/ts-to-js-converter/converter.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/demos/utils/ts-to-js-converter/converter.ts b/apps/demos/utils/ts-to-js-converter/converter.ts index f155a0f4fb92..288ca1d63905 100644 --- a/apps/demos/utils/ts-to-js-converter/converter.ts +++ b/apps/demos/utils/ts-to-js-converter/converter.ts @@ -85,7 +85,7 @@ const execTsc = async (directory: string, args: string[]): Promise => { ? ['cmd', ['/c', 'tsc.cmd', ...args]] : ['tsc', args]; const { stdout } = await execFilePromise(cmd, cmdArgs, { cwd: directory }); - return stdout; + return stdout; }; const compile = async (resolve: PathResolvers, log: Logger) => { From 840a9dc5c2d0d16edf39ce5ef3a51868985f6957 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Wed, 20 May 2026 13:30:04 +0200 Subject: [PATCH 4/4] refactor: delete useless var --- apps/demos/utils/ts-to-js-converter/converter.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/apps/demos/utils/ts-to-js-converter/converter.ts b/apps/demos/utils/ts-to-js-converter/converter.ts index 288ca1d63905..6e0c47d661bc 100644 --- a/apps/demos/utils/ts-to-js-converter/converter.ts +++ b/apps/demos/utils/ts-to-js-converter/converter.ts @@ -78,13 +78,11 @@ const pipeSource = async ( })); }; -const execFilePromise = promisify(cps.execFile); - const execTsc = async (directory: string, args: string[]): Promise => { const [cmd, cmdArgs] = isWindows() ? ['cmd', ['/c', 'tsc.cmd', ...args]] : ['tsc', args]; - const { stdout } = await execFilePromise(cmd, cmdArgs, { cwd: directory }); + const { stdout } = await promisify(cps.execFile)(cmd, cmdArgs, { cwd: directory }); return stdout; };