Skip to content

Commit 7bb5832

Browse files
FrozenPandazvsavkin
authored andcommitted
fix(schematics): do not use tsconfig updates from angular lib schematic
1 parent b5550d3 commit 7bb5832

File tree

2 files changed

+50
-1
lines changed

2 files changed

+50
-1
lines changed

packages/schematics/src/collection/library/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -381,7 +381,9 @@ export default function(schema: Schema): Rule {
381381
externalSchematic('@schematics/angular', 'library', {
382382
name: options.name,
383383
prefix: options.prefix,
384-
entryFile: 'index'
384+
entryFile: 'index',
385+
skipPackageJson: !options.publishable,
386+
skipTsConfig: true
385387
}),
386388
move(options.name, options.projectRoot),
387389
updateProject(options),

packages/schematics/src/collection/library/library.spec.ts

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,26 @@ describe('lib', () => {
4040
expect(ngPackage.dest).toEqual('../../dist/libs/my-lib');
4141
});
4242

43+
it('should not update package.json by default', () => {
44+
const tree = schematicRunner.runSchematic(
45+
'lib',
46+
{ name: 'myLib' },
47+
appTree
48+
);
49+
const packageJson = readJsonInTree(tree, '/package.json');
50+
expect(packageJson.devDependencies).toBeUndefined();
51+
});
52+
53+
it('should update package.json when publishable', () => {
54+
const tree = schematicRunner.runSchematic(
55+
'lib',
56+
{ name: 'myLib', publishable: true },
57+
appTree
58+
);
59+
const packageJson = readJsonInTree(tree, '/package.json');
60+
expect(packageJson.devDependencies['ng-packagr']).toBeDefined();
61+
});
62+
4363
it('should update angular.json', () => {
4464
const tree = schematicRunner.runSchematic(
4565
'lib',
@@ -102,6 +122,17 @@ describe('lib', () => {
102122
expect(tree.exists(`libs/my-lib/karma.conf.js`)).toBeTruthy();
103123
expect(tree.exists('libs/my-lib/src/index.ts')).toBeTruthy();
104124
expect(tree.exists('libs/my-lib/src/lib/my-lib.module.ts')).toBeTruthy();
125+
126+
expect(
127+
tree.exists('libs/my-lib/src/lib/my-lib.component.ts')
128+
).toBeFalsy();
129+
expect(
130+
tree.exists('libs/my-lib/src/lib/my-lib.component.spec.ts')
131+
).toBeFalsy();
132+
expect(tree.exists('libs/my-lib/src/lib/my-lib.service.ts')).toBeFalsy();
133+
expect(
134+
tree.exists('libs/my-lib/src/lib/my-lib.service.spec.ts')
135+
).toBeFalsy();
105136
});
106137

107138
it('should default the prefix to npmScope', () => {
@@ -140,6 +171,19 @@ describe('lib', () => {
140171
expect(
141172
tree.exists('libs/my-dir/my-lib/src/lib/my-dir-my-lib.module.ts')
142173
).toBeTruthy();
174+
175+
expect(
176+
tree.exists('libs/my-dir/my-lib/src/lib/my-lib.component.ts')
177+
).toBeFalsy();
178+
expect(
179+
tree.exists('libs/my-dir/my-lib/src/lib/my-lib.component.spec.ts')
180+
).toBeFalsy();
181+
expect(
182+
tree.exists('libs/my-dir/my-lib/src/lib/my-lib.service.ts')
183+
).toBeFalsy();
184+
expect(
185+
tree.exists('libs/my-dir/my-lib/src/lib/my-lib.service.spec.ts')
186+
).toBeFalsy();
143187
});
144188

145189
it('should update ng-package.json', () => {
@@ -183,6 +227,9 @@ describe('lib', () => {
183227
expect(tsconfigJson.compilerOptions.paths['@proj/my-dir/my-lib']).toEqual(
184228
['libs/my-dir/my-lib/src/index.ts']
185229
);
230+
expect(
231+
tsconfigJson.compilerOptions.paths['my-dir-my-lib/*']
232+
).toBeUndefined();
186233
});
187234
});
188235

0 commit comments

Comments
 (0)