Skip to content

Commit 9100baf

Browse files
committed
fix: allow name exports for presets subpath
1 parent 397b907 commit 9100baf

38 files changed

+179
-260
lines changed

examples/example-app-monorepo/apps/app1/jest-esm.config.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import ngPreset from 'jest-preset-angular/presets';
2-
import { pathsToModuleNameMapper, type JestConfigWithTsJest } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createEsmPreset } from 'jest-preset-angular/presets';
3+
import { pathsToModuleNameMapper } from 'ts-jest';
34

45
import tsconfig from './tsconfig.json';
56

6-
const esmPreset = ngPreset.createEsmPreset();
7+
const esmPreset = createEsmPreset();
78

89
export default {
910
...esmPreset,
@@ -24,4 +25,4 @@ export default {
2425
},
2526
],
2627
},
27-
} satisfies JestConfigWithTsJest;
28+
} satisfies Config;
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import type { Config } from 'jest';
2-
import presets from 'jest-preset-angular/presets';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
33

44
import jestCfg from './jest.config';
55

66
export default {
77
...jestCfg,
8-
...presets.createCjsPreset({
8+
...createCjsPreset({
99
tsconfig: '<rootDir>/tsconfig-isolated.spec.json',
1010
}),
1111
} satisfies Config;
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
import presets from 'jest-preset-angular/presets';
2-
import { pathsToModuleNameMapper, type JestConfigWithTsJest } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
3+
import { pathsToModuleNameMapper } from 'ts-jest';
34

45
import { compilerOptions } from './tsconfig.json';
56

67
export default {
78
displayName: 'app1',
8-
...presets.createCjsPreset(),
9+
...createCjsPreset(),
910
setupFilesAfterEnv: ['<rootDir>/setup-jest.ts'],
1011
moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, { prefix: '<rootDir>' }),
11-
} satisfies JestConfigWithTsJest;
12+
} satisfies Config;

examples/example-app-monorepo/libs/user/jest-esm.config.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
import ngPreset from 'jest-preset-angular/presets';
2-
import type { JestConfigWithTsJest } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createEsmPreset } from 'jest-preset-angular/presets';
33

4-
const esmPreset = ngPreset.createEsmPreset();
4+
const esmPreset = createEsmPreset();
55

66
export default {
77
...esmPreset,
@@ -21,4 +21,4 @@ export default {
2121
},
2222
],
2323
},
24-
} satisfies JestConfigWithTsJest;
24+
} satisfies Config;
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import presets from 'jest-preset-angular/presets';
2-
import type { JestConfigWithTsJest } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
33

44
import jestCfg from './jest.config';
55

66
export default {
77
...jestCfg,
8-
...presets.createCjsPreset({
8+
...createCjsPreset({
99
tsconfig: '<rootDir>/tsconfig-isolated.spec.json',
1010
}),
11-
} satisfies JestConfigWithTsJest;
11+
} satisfies Config;
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import presets from 'jest-preset-angular/presets';
2-
import type { JestConfigWithTsJest } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
33

44
export default {
55
displayName: 'user-lib',
6-
...presets.createCjsPreset(),
6+
...createCjsPreset(),
77
setupFilesAfterEnv: ['<rootDir>/setup-jest.ts'],
8-
} satisfies JestConfigWithTsJest;
8+
} satisfies Config;

examples/example-app-v17/jest-esm.config.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import ngPreset from 'jest-preset-angular/presets';
2-
import { type JestConfigWithTsJest, pathsToModuleNameMapper } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createEsmPreset } from 'jest-preset-angular/presets';
3+
import { pathsToModuleNameMapper } from 'ts-jest';
34

45
import tsconfig from './tsconfig.json';
56

6-
const esmPreset = ngPreset.createEsmPreset();
7+
const esmPreset = createEsmPreset();
78

89
export default {
910
...esmPreset,
@@ -23,4 +24,4 @@ export default {
2324
},
2425
],
2526
},
26-
} satisfies JestConfigWithTsJest;
27+
} satisfies Config;
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import presets from 'jest-preset-angular/presets';
2-
import type { JestConfigWithTsJest } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
33

44
import jestCfg from './jest.config';
55

66
export default {
77
...jestCfg,
8-
...presets.createCjsPreset({
8+
...createCjsPreset({
99
tsconfig: '<rootDir>/tsconfig-isolated.spec.json',
1010
}),
11-
} satisfies JestConfigWithTsJest;
11+
} satisfies Config;
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import presets from 'jest-preset-angular/presets';
2-
import { type JestConfigWithTsJest, pathsToModuleNameMapper } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
3+
import { pathsToModuleNameMapper } from 'ts-jest';
34

45
import { compilerOptions } from './tsconfig.json';
56

67
export default {
7-
...presets.createCjsPreset(),
8+
...createCjsPreset(),
89
moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, { prefix: '<rootDir>' }),
910
setupFilesAfterEnv: ['<rootDir>/setup-jest.ts'],
10-
} satisfies JestConfigWithTsJest;
11+
} satisfies Config;

examples/example-app-v18/jest-esm.config.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import ngPreset from 'jest-preset-angular/presets';
2-
import { type JestConfigWithTsJest, pathsToModuleNameMapper } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createEsmPreset } from 'jest-preset-angular/presets';
3+
import { pathsToModuleNameMapper } from 'ts-jest';
34

45
import tsconfig from './tsconfig.json';
56

6-
const esmPreset = ngPreset.createEsmPreset();
7+
const esmPreset = createEsmPreset();
78

89
export default {
910
...esmPreset,
@@ -23,4 +24,4 @@ export default {
2324
},
2425
],
2526
},
26-
} satisfies JestConfigWithTsJest;
27+
} satisfies Config;
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import presets from 'jest-preset-angular/presets';
2-
import type { JestConfigWithTsJest } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
33

44
import jestCfg from './jest.config';
55

66
export default {
77
...jestCfg,
8-
...presets.createCjsPreset({
8+
...createCjsPreset({
99
tsconfig: '<rootDir>/tsconfig-isolated.spec.json',
1010
}),
11-
} satisfies JestConfigWithTsJest;
11+
} satisfies Config;
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import presets from 'jest-preset-angular/presets';
2-
import { type JestConfigWithTsJest, pathsToModuleNameMapper } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
3+
import { pathsToModuleNameMapper } from 'ts-jest';
34

45
import { compilerOptions } from './tsconfig.json';
56

67
export default {
7-
...presets.createCjsPreset(),
8+
...createCjsPreset(),
89
moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, { prefix: '<rootDir>' }),
910
setupFilesAfterEnv: ['<rootDir>/setup-jest.ts'],
10-
} satisfies JestConfigWithTsJest;
11+
} satisfies Config;

examples/example-app-v19/jest-esm.config.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import ngPreset from 'jest-preset-angular/presets';
2-
import { type JestConfigWithTsJest, pathsToModuleNameMapper } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createEsmPreset } from 'jest-preset-angular/presets';
3+
import { pathsToModuleNameMapper } from 'ts-jest';
34

45
import tsconfig from './tsconfig.json';
56

6-
const esmPreset = ngPreset.createEsmPreset();
7+
const esmPreset = createEsmPreset();
78

89
export default {
910
...esmPreset,
@@ -23,4 +24,4 @@ export default {
2324
},
2425
],
2526
},
26-
} satisfies JestConfigWithTsJest;
27+
} satisfies Config;
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import presets from 'jest-preset-angular/presets';
2-
import type { JestConfigWithTsJest } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
33

44
import jestCfg from './jest.config';
55

66
export default {
77
...jestCfg,
8-
...presets.createCjsPreset({
8+
...createCjsPreset({
99
tsconfig: '<rootDir>/tsconfig-isolated.spec.json',
1010
}),
11-
} satisfies JestConfigWithTsJest;
11+
} satisfies Config;
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import presets from 'jest-preset-angular/presets';
2-
import { type JestConfigWithTsJest, pathsToModuleNameMapper } from 'ts-jest';
1+
import type { Config } from 'jest';
2+
import { createCjsPreset } from 'jest-preset-angular/presets';
3+
import { pathsToModuleNameMapper } from 'ts-jest';
34

45
import { compilerOptions } from './tsconfig.json';
56

67
export default {
7-
...presets.createCjsPreset(),
8+
...createCjsPreset(),
89
moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, { prefix: '<rootDir>' }),
910
setupFilesAfterEnv: ['<rootDir>/setup-jest.ts'],
10-
} satisfies JestConfigWithTsJest;
11+
} satisfies Config;

jest.config.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import type { JestConfigWithTsJest } from 'ts-jest';
1+
import type { Config } from 'jest';
22

3-
const config: JestConfigWithTsJest = {
3+
const config: Config = {
44
modulePathIgnorePatterns: ['examples/.*', 'website/.*'],
55
testMatch: ['<rootDir>/src/**/*.spec.ts'],
66
testEnvironment: 'jsdom',

presets/defaults-esm/jest-preset.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
module.exports = require('../index').defaultsESM;
1+
module.exports = require('../../build/presets').defaultsESM;

presets/defaults/jest-preset.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
module.exports = require('..').defaults;
1+
module.exports = require('../../build/presets').defaultPreset;

presets/index.d.ts

Lines changed: 3 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,3 @@
1-
declare const _default: {
2-
defaults: {
3-
transformIgnorePatterns: string[];
4-
transform: import('ts-jest').JestConfigWithTsJest['transform'];
5-
testEnvironment: string;
6-
moduleFileExtensions: string[];
7-
snapshotSerializers: string[];
8-
};
9-
defaultsESM: {
10-
extensionsToTreatAsEsm: string[];
11-
moduleNameMapper: {
12-
tslib: string;
13-
};
14-
transform: import('ts-jest').JestConfigWithTsJest['transform'];
15-
transformIgnorePatterns: string[];
16-
testEnvironment: string;
17-
moduleFileExtensions: string[];
18-
snapshotSerializers: string[];
19-
};
20-
defaultTransformerOptions: import('ts-jest').TsJestTransformerOptions;
21-
createCjsPreset: typeof import('../build/presets').createCjsPreset;
22-
createEsmPreset: typeof import('../build/presets').createEsmPreset;
23-
};
24-
export = _default;
1+
import presetEntries from '../build/presets';
2+
3+
export = presetEntries;

presets/index.js

Lines changed: 1 addition & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1 @@
1-
const ngJestPresets = require('../build/presets');
2-
3-
module.exports = {
4-
get defaults() {
5-
console.warn(`
6-
This preset is DEPRECATED and will be removed in the next major release.
7-
Please use "createCjsPreset" function instead. See documentation at https://thymikee.github.io/jest-preset-angular/docs/getting-started/presets#createcjspresetoptions
8-
`);
9-
10-
return ngJestPresets.defaultPreset;
11-
},
12-
get defaultsESM() {
13-
console.warn(`
14-
This preset is DEPRECATED and will be removed in the next major release.
15-
Please use "createEsmPreset" function instead. See documentation at https://thymikee.github.io/jest-preset-angular/docs/getting-started/presets#createesmpresetoptions
16-
`);
17-
18-
return ngJestPresets.defaultEsmPreset;
19-
},
20-
get defaultTransformerOptions() {
21-
console.warn(`
22-
These options are DEPRECATED and will be removed in the next major release.
23-
Please use "createCjsPreset" or "createEsmPreset" function instead. See documentation at https://thymikee.github.io/jest-preset-angular/docs/getting-started/presets
24-
`);
25-
26-
return ngJestPresets.defaultTransformerOptions;
27-
},
28-
createCjsPreset: ngJestPresets.createCjsPreset,
29-
createEsmPreset: ngJestPresets.createEsmPreset,
30-
};
1+
module.exports = require('../build/presets');

src/config/setup-jest.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ describe('setup-jest', () => {
6565

6666
beforeEach(() => {
6767
delete globalThis.ngJest;
68+
// @ts-expect-error testing purpose
6869
delete globalThis.TextEncoder;
6970
jest.clearAllMocks();
7071
jest.resetModules();

0 commit comments

Comments
 (0)