jest-preset-angular 14.5.2 → 15.0.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +43 -0
- package/build/environments/jest-jsdom-env.js +17 -7
- package/build/presets/index.d.ts +0 -39
- package/build/presets/index.js +1 -28
- package/build/serializers/no-ng-attributes.js +4 -0
- package/build/transformers/jit_transform.js +34 -34
- package/package.json +25 -25
- package/presets/index.d.ts +0 -19
- package/presets/index.js +0 -24
- package/build/config/global-setup.d.ts +0 -1
- package/build/config/global-setup.js +0 -21
- package/build/utils/ngcc-jest-processor.d.ts +0 -1
- package/build/utils/ngcc-jest-processor.js +0 -75
- package/global-setup.js +0 -1
- package/global-setup.mjs +0 -3
- package/presets/defaults/jest-preset.js +0 -1
- package/presets/defaults-esm/jest-preset.js +0 -1
- package/setup-jest.js +0 -32
- package/setup-jest.mjs +0 -25
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,46 @@
|
|
|
1
|
+
## [15.0.0-next.0]((https://github.com/thymikee/jest-preset-angular/compare/v14.5.3...v15.0.0-next.0)) (2025-02-28)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* fix(serializers): generated `id="root{n}"` should be removed ([a6b908f](https://github.com/thymikee/jest-preset-angular/commit/a6b908f))
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Code Refactoring
|
|
10
|
+
|
|
11
|
+
* refactor: drop support for `jsdom` <22 (#2992) ([da9cb15](https://github.com/thymikee/jest-preset-angular/commit/da9cb15)), closes [#2992](https://github.com/thymikee/jest-preset-angular/issues/2992)
|
|
12
|
+
* refactor: drop support for `typescript` <5.4 ([873ab73](https://github.com/thymikee/jest-preset-angular/commit/873ab73))
|
|
13
|
+
* refactor: drop support for Angular <17 (#2991) ([3a60492](https://github.com/thymikee/jest-preset-angular/commit/3a60492)), closes [#2991](https://github.com/thymikee/jest-preset-angular/issues/2991)
|
|
14
|
+
* refactor: drop support for Node.js <18 ([aeef774](https://github.com/thymikee/jest-preset-angular/commit/aeef774))
|
|
15
|
+
* refactor: remove `defaults` and `defaults-esm` presets ([94dd3b1](https://github.com/thymikee/jest-preset-angular/commit/94dd3b1))
|
|
16
|
+
* refactor: remove `setup-jest` files ([6bf89a4](https://github.com/thymikee/jest-preset-angular/commit/6bf89a4))
|
|
17
|
+
* refactor: remove global setup script with `ngcc` ([35819c9](https://github.com/thymikee/jest-preset-angular/commit/35819c9))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### BREAKING CHANGES
|
|
21
|
+
|
|
22
|
+
* Snapshot generation is affected by ([a6b908f](https://github.com/thymikee/jest-preset-angular/commit/a6b908f)). One should update component snapshots via `-u` Jest CLI option. Since this change only removes the root `id`, it shouldn't affect the quality of snapshots in general.
|
|
23
|
+
* The supported `NodeJs` versions are `^18.19.1 || ^20.11.1 || >=22.0.0`.
|
|
24
|
+
* The minimum supported version for Angular is **17** following Angular support policy https://angular.dev/reference/releases#actively-supported-versions
|
|
25
|
+
* The minimum supported version for `jsdom` is **22**
|
|
26
|
+
* The minimum supported version of `TypeScript` is **5.4** following the support version from Angular **17**
|
|
27
|
+
* Running `ngcc` is not required for Angular **16**+ project
|
|
28
|
+
* Use `createCjsPreset` as a replacement for `defaults` preset
|
|
29
|
+
* Use `createEsmPreset` as a replacement for `defaults-esm` preset
|
|
30
|
+
* Use `setupZoneTestEnv` as a replacement for zone test environment setup
|
|
31
|
+
* Use `setupZonelessTestEnv` as a replacement for zoneless test environment setup
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
## [14.5.3](https://github.com/thymikee/jest-preset-angular/compare/v14.5.2...v14.5.3) (2025-02-24)
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
### Bug Fixes
|
|
39
|
+
|
|
40
|
+
* build: update bundle `jit_transform.js`, closes [#2979](https://github.com/thymikee/jest-preset-angular/issues/2979)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
1
44
|
## [14.5.2](https://github.com/thymikee/jest-preset-angular/compare/v14.5.1...v14.5.2) (2025-02-21)
|
|
2
45
|
|
|
3
46
|
|
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
37
|
};
|
package/build/presets/index.d.ts
CHANGED
|
@@ -1,41 +1,2 @@
|
|
|
1
|
-
import type { TsJestTransformerOptions } from 'ts-jest';
|
|
2
|
-
declare const defaultTransformerOptions: TsJestTransformerOptions;
|
|
3
|
-
declare const defaultPreset: {
|
|
4
|
-
transformIgnorePatterns: string[];
|
|
5
|
-
transform: {
|
|
6
|
-
'^.+\\.(ts|js|mjs|html|svg)$': (string | import("ts-jest").TsJestGlobalOptions)[];
|
|
7
|
-
};
|
|
8
|
-
snapshotSerializers?: string[] | undefined;
|
|
9
|
-
moduleFileExtensions?: string[] | undefined;
|
|
10
|
-
testEnvironment?: string | undefined;
|
|
11
|
-
};
|
|
12
|
-
declare const defaultEsmPreset: {
|
|
13
|
-
extensionsToTreatAsEsm: string[];
|
|
14
|
-
moduleNameMapper: {
|
|
15
|
-
tslib: string;
|
|
16
|
-
};
|
|
17
|
-
transform: {
|
|
18
|
-
'^.+\\.(ts|js|html|svg)$': (string | {
|
|
19
|
-
useESM: boolean;
|
|
20
|
-
tsconfig?: boolean | string | import("ts-jest").RawCompilerOptions;
|
|
21
|
-
isolatedModules?: boolean;
|
|
22
|
-
compiler?: "typescript" | "ttypescript" | string;
|
|
23
|
-
astTransformers?: import("ts-jest").ConfigCustomTransformer;
|
|
24
|
-
diagnostics?: boolean | {
|
|
25
|
-
pretty?: boolean;
|
|
26
|
-
ignoreCodes?: number | string | Array<number | string>;
|
|
27
|
-
exclude?: string[];
|
|
28
|
-
warnOnly?: boolean;
|
|
29
|
-
};
|
|
30
|
-
babelConfig?: boolean | string | import("ts-jest").BabelConfig;
|
|
31
|
-
stringifyContentPathRegex?: string | RegExp;
|
|
32
|
-
})[];
|
|
33
|
-
};
|
|
34
|
-
transformIgnorePatterns: string[];
|
|
35
|
-
snapshotSerializers?: string[] | undefined;
|
|
36
|
-
moduleFileExtensions?: string[] | undefined;
|
|
37
|
-
testEnvironment?: string | undefined;
|
|
38
|
-
};
|
|
39
|
-
export { defaultPreset, defaultEsmPreset, defaultTransformerOptions };
|
|
40
1
|
export { createCjsPreset } from './create-cjs-preset';
|
|
41
2
|
export { createEsmPreset } from './create-esm-preset';
|
package/build/presets/index.js
CHANGED
|
@@ -1,33 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createEsmPreset = exports.createCjsPreset =
|
|
7
|
-
const serializers_1 = __importDefault(require("../serializers"));
|
|
8
|
-
const baseConfig = {
|
|
9
|
-
testEnvironment: 'jsdom',
|
|
10
|
-
moduleFileExtensions: ['ts', 'html', 'js', 'json', 'mjs'],
|
|
11
|
-
snapshotSerializers: serializers_1.default,
|
|
12
|
-
};
|
|
13
|
-
const defaultTransformerOptions = {
|
|
14
|
-
tsconfig: '<rootDir>/tsconfig.spec.json',
|
|
15
|
-
stringifyContentPathRegex: '\\.(html|svg)$',
|
|
16
|
-
};
|
|
17
|
-
exports.defaultTransformerOptions = defaultTransformerOptions;
|
|
18
|
-
const defaultPreset = Object.assign(Object.assign({}, baseConfig), { transformIgnorePatterns: ['node_modules/(?!.*\\.mjs$)'], transform: {
|
|
19
|
-
'^.+\\.(ts|js|mjs|html|svg)$': ['jest-preset-angular', defaultTransformerOptions],
|
|
20
|
-
} });
|
|
21
|
-
exports.defaultPreset = defaultPreset;
|
|
22
|
-
const defaultEsmPreset = Object.assign(Object.assign({}, baseConfig), { extensionsToTreatAsEsm: ['.ts'], moduleNameMapper: {
|
|
23
|
-
tslib: 'tslib/tslib.es6.js',
|
|
24
|
-
}, transform: {
|
|
25
|
-
'^.+\\.(ts|js|html|svg)$': [
|
|
26
|
-
'jest-preset-angular',
|
|
27
|
-
Object.assign(Object.assign({}, defaultTransformerOptions), { useESM: true }),
|
|
28
|
-
],
|
|
29
|
-
}, transformIgnorePatterns: ['node_modules/(?!tslib)'] });
|
|
30
|
-
exports.defaultEsmPreset = defaultEsmPreset;
|
|
3
|
+
exports.createEsmPreset = exports.createCjsPreset = void 0;
|
|
31
4
|
var create_cjs_preset_1 = require("./create-cjs-preset");
|
|
32
5
|
Object.defineProperty(exports, "createCjsPreset", { enumerable: true, get: function () { return create_cjs_preset_1.createCjsPreset; } });
|
|
33
6
|
var create_esm_preset_1 = require("./create-esm-preset");
|
|
@@ -13,7 +13,11 @@ const attributesToClean = {
|
|
|
13
13
|
const hasAttributesToRemove = (attribute) => attributesToRemovePatterns.some((removePattern) => attribute.name.startsWith(removePattern));
|
|
14
14
|
const hasAttributesToClean = (attribute) => Object.keys(attributesToClean).some((removePatternKey) => attribute.name === removePatternKey);
|
|
15
15
|
const removeAngularAttributes = (node) => {
|
|
16
|
+
var _a;
|
|
16
17
|
const nodeCopy = node.cloneNode(true);
|
|
18
|
+
if (((_a = node.parentElement) === null || _a === void 0 ? void 0 : _a.tagName) === 'BODY') {
|
|
19
|
+
nodeCopy.removeAttribute('id');
|
|
20
|
+
}
|
|
17
21
|
Object.values(nodeCopy.attributes)
|
|
18
22
|
.filter(hasAttributesToRemove)
|
|
19
23
|
.forEach((attribute) => nodeCopy.attributes.removeNamedItem(attribute.name));
|