diff --git a/packages/js/src/generators/library/library.spec.ts b/packages/js/src/generators/library/library.spec.ts index 798521edbb37f..e18ca315a1de8 100644 --- a/packages/js/src/generators/library/library.spec.ts +++ b/packages/js/src/generators/library/library.spec.ts @@ -810,6 +810,35 @@ describe('lib', () => { }); }); + describe('bundler=rollup', () => { + it('should generate correct options for build', async () => { + await libraryGenerator(tree, { + ...defaultOptions, + name: 'myLib', + buildable: true, + bundler: 'rollup', + }); + + const config = readProjectConfiguration(tree, 'my-lib'); + expect(config.targets.build.options.project).toEqual( + `libs/my-lib/package.json` + ); + }); + + it('should set compiler to swc', async () => { + await libraryGenerator(tree, { + ...defaultOptions, + name: 'myLib', + buildable: true, + bundler: 'rollup', + compiler: 'swc', + }); + + const config = readProjectConfiguration(tree, 'my-lib'); + expect(config.targets.build.options.compiler).toEqual('swc'); + }); + }); + describe('--publishable', () => { it('should generate the build target', async () => { await libraryGenerator(tree, { diff --git a/packages/js/src/generators/library/library.ts b/packages/js/src/generators/library/library.ts index 0b0ef4dd785df..62ec892c9f7db 100644 --- a/packages/js/src/generators/library/library.ts +++ b/packages/js/src/generators/library/library.ts @@ -83,7 +83,7 @@ export async function projectGenerator( }); tasks.push(viteTask); } - if (schema.bundler === 'rollup') { + if (options.bundler === 'rollup') { ensureBabelRootConfigExists(tree); } @@ -160,6 +160,13 @@ function addProject( }, }; + if (options.bundler === 'rollup') { + projectConfiguration.targets.build.options.project = `${options.projectRoot}/package.json`; + if (options.compiler === 'swc') { + projectConfiguration.targets.build.options.compiler = 'swc'; + } + } + if (options.compiler === 'swc' && options.skipTypeCheck) { projectConfiguration.targets.build.options.skipTypeCheck = true; }