From a483141394111b414da7abc3941c694f3bb772d4 Mon Sep 17 00:00:00 2001 From: Jack Hsu Date: Mon, 27 Feb 2023 09:53:56 -0500 Subject: [PATCH] fix(bundling): allow transitive external packages to be specified that are not installed in the workspace --- .../src/executors/esbuild/esbuild.impl.ts | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/packages/esbuild/src/executors/esbuild/esbuild.impl.ts b/packages/esbuild/src/executors/esbuild/esbuild.impl.ts index 047b1230fe196..f192f02f7617e 100644 --- a/packages/esbuild/src/executors/esbuild/esbuild.impl.ts +++ b/packages/esbuild/src/executors/esbuild/esbuild.impl.ts @@ -47,18 +47,17 @@ export async function* esbuildExecutor( const assetsResult = await copyAssets(options, context); const externalDependencies: DependentBuildableProjectNode[] = - options.external.map((name) => { + options.external.reduce((acc, name) => { const externalNode = context.projectGraph.externalNodes[`npm:${name}`]; - if (!externalNode) - throw new Error( - `Cannot find external dependency ${name}. Check your package.json file.` - ); - return { - name, - outputs: [], - node: externalNode, - }; - }); + if (externalNode) { + acc.push({ + name, + outputs: [], + node: externalNode, + }); + } + return acc; + }, []); if (!options.thirdParty) { const thirdPartyDependencies = getExtraDependencies(