From 41fc8354a01b247153a79c8178bde22ffa755e5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leosvel=20P=C3=A9rez=20Espinosa?= Date: Thu, 22 Feb 2024 11:25:08 +0100 Subject: [PATCH] fix(angular): do not add target defaults for the ng-packagr-lite executor when generating non-buildable library (#21935) --- .../src/generators/library/lib/add-project.ts | 52 +++++++++---------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/packages/angular/src/generators/library/lib/add-project.ts b/packages/angular/src/generators/library/lib/add-project.ts index aacb523daafc2..9ac3e015a9037 100644 --- a/packages/angular/src/generators/library/lib/add-project.ts +++ b/packages/angular/src/generators/library/lib/add-project.ts @@ -8,11 +8,6 @@ export function addProject( tree: Tree, libraryOptions: NormalizedSchema['libraryOptions'] ) { - const executor = libraryOptions.publishable - ? '@nx/angular:package' - : '@nx/angular:ng-packagr-lite'; - - addBuildTargetDefaults(tree, executor); const project: AngularProjectConfiguration = { name: libraryOptions.name, root: libraryOptions.projectRoot, @@ -20,29 +15,34 @@ export function addProject( prefix: libraryOptions.prefix, tags: libraryOptions.parsedTags, projectType: 'library', - targets: { - build: - libraryOptions.buildable || libraryOptions.publishable - ? { - executor, - outputs: ['{workspaceRoot}/dist/{projectRoot}'], - options: { - project: `${libraryOptions.projectRoot}/ng-package.json`, - }, - configurations: { - production: { - tsConfig: `${libraryOptions.projectRoot}/tsconfig.lib.prod.json`, - }, - development: { - tsConfig: `${libraryOptions.projectRoot}/tsconfig.lib.json`, - }, - }, - defaultConfiguration: 'production', - } - : undefined, - }, + targets: {}, }; + if (libraryOptions.buildable || libraryOptions.publishable) { + const executor = libraryOptions.publishable + ? '@nx/angular:package' + : '@nx/angular:ng-packagr-lite'; + + addBuildTargetDefaults(tree, executor); + + project.targets.build = { + executor, + outputs: ['{workspaceRoot}/dist/{projectRoot}'], + options: { + project: `${libraryOptions.projectRoot}/ng-package.json`, + }, + configurations: { + production: { + tsConfig: `${libraryOptions.projectRoot}/tsconfig.lib.prod.json`, + }, + development: { + tsConfig: `${libraryOptions.projectRoot}/tsconfig.lib.json`, + }, + }, + defaultConfiguration: 'production', + }; + } + addProjectConfiguration(tree, libraryOptions.name, project); return project; }