diff --git a/packages/cli/src/modules/build/commands/package/start/command.ts b/packages/cli/src/modules/build/commands/package/start/command.ts index 0d169af5ef..143385e4a6 100644 --- a/packages/cli/src/modules/build/commands/package/start/command.ts +++ b/packages/cli/src/modules/build/commands/package/start/command.ts @@ -86,8 +86,8 @@ export default async ({ args, info }: CommandContext) => { configPaths: config, checksEnabled: Boolean(check), linkedWorkspace: await resolveLinkedWorkspace(link), - inspectEnabled: inspect, - inspectBrkEnabled: inspectBrk, + inspectEnabled: inspect || (inspect === '' ? true : undefined), + inspectBrkEnabled: inspectBrk || (inspectBrk === '' ? true : undefined), require: requirePath, }); }; diff --git a/packages/cli/src/modules/build/commands/package/start/startBackend.ts b/packages/cli/src/modules/build/commands/package/start/startBackend.ts index b9eb8709f3..a36a93b8ff 100644 --- a/packages/cli/src/modules/build/commands/package/start/startBackend.ts +++ b/packages/cli/src/modules/build/commands/package/start/startBackend.ts @@ -23,8 +23,8 @@ import { runBackend } from '../../../lib/runner'; interface StartBackendOptions { targetDir: string; checksEnabled: boolean; - inspectEnabled?: string; - inspectBrkEnabled?: string; + inspectEnabled?: boolean | string; + inspectBrkEnabled?: boolean | string; linkedWorkspace?: string; require?: string; } diff --git a/packages/cli/src/modules/build/commands/package/start/startPackage.ts b/packages/cli/src/modules/build/commands/package/start/startPackage.ts index 084a4670b4..e0ab13facc 100644 --- a/packages/cli/src/modules/build/commands/package/start/startPackage.ts +++ b/packages/cli/src/modules/build/commands/package/start/startPackage.ts @@ -38,8 +38,8 @@ export async function startPackage(options: { targetDir: string; configPaths: string[]; checksEnabled: boolean; - inspectEnabled?: string; - inspectBrkEnabled?: string; + inspectEnabled?: boolean | string; + inspectBrkEnabled?: boolean | string; linkedWorkspace?: string; require?: string; }): Promise { diff --git a/packages/cli/src/modules/build/commands/repo/start.ts b/packages/cli/src/modules/build/commands/repo/start.ts index f2f6b7c412..8d36d0732b 100644 --- a/packages/cli/src/modules/build/commands/repo/start.ts +++ b/packages/cli/src/modules/build/commands/repo/start.ts @@ -84,8 +84,8 @@ export default async ({ args, info }: CommandContext) => { const packageOptions = await resolvePackageOptions(targetPackages, { plugin, config, - inspect, - inspectBrk, + inspect: inspect || (inspect === '' ? true : undefined), + inspectBrk: inspectBrk || (inspectBrk === '' ? true : undefined), require: requirePath, link, }); @@ -211,8 +211,8 @@ export async function findTargetPackages( type CommandOptions = { plugin: string[]; config: string[]; - inspect?: string; - inspectBrk?: string; + inspect?: boolean | string; + inspectBrk?: boolean | string; require?: string; link?: string; }; diff --git a/packages/cli/src/modules/build/lib/runner/runBackend.test.ts b/packages/cli/src/modules/build/lib/runner/runBackend.test.ts index 5fc3f448c9..2b97ae352c 100644 --- a/packages/cli/src/modules/build/lib/runner/runBackend.test.ts +++ b/packages/cli/src/modules/build/lib/runner/runBackend.test.ts @@ -163,7 +163,7 @@ describe('runBackend', () => { runBackend({ entry: 'src/index', - inspectEnabled: '', + inspectEnabled: true, }); // Fast-forward past the debounce delay (100ms) diff --git a/packages/cli/src/modules/build/lib/runner/runBackend.ts b/packages/cli/src/modules/build/lib/runner/runBackend.ts index adaa9ca58f..22fd50b3f4 100644 --- a/packages/cli/src/modules/build/lib/runner/runBackend.ts +++ b/packages/cli/src/modules/build/lib/runner/runBackend.ts @@ -38,9 +38,9 @@ export type RunBackendOptions = { /** relative entry point path without extension, e.g. 'src/index' */ entry: string; /** Whether to forward the --inspect flag to the node process */ - inspectEnabled?: string; + inspectEnabled?: boolean | string; /** Whether to forward the --inspect-brk flag to the node process */ - inspectBrkEnabled?: string; + inspectBrkEnabled?: boolean | string; /** Additional module to require via the --require flag to the node process */ require?: string | string[]; /** An external linked workspace to override module resolution towards */ @@ -96,18 +96,18 @@ export async function runBackend(options: RunBackendOptions) { } const optionArgs = new Array(); - if (options.inspectEnabled !== undefined) { - optionArgs.push( - options.inspectEnabled + if (options.inspectEnabled) { + const inspect = + typeof options.inspectEnabled === 'string' ? `--inspect=${options.inspectEnabled}` - : '--inspect', - ); - } else if (options.inspectBrkEnabled !== undefined) { - optionArgs.push( - options.inspectBrkEnabled + : '--inspect'; + optionArgs.push(inspect); + } else if (options.inspectBrkEnabled) { + const inspect = + typeof options.inspectBrkEnabled === 'string' ? `--inspect-brk=${options.inspectBrkEnabled}` - : '--inspect-brk', - ); + : '--inspect-brk'; + optionArgs.push(inspect); } if (options.require) { const requires = [options.require].flat();