@taiga-ui/jest-config 0.372.0 → 0.374.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/index.d.ts ADDED
@@ -0,0 +1 @@
1
+ export { tuiSwitchNgDevMode } from './utils/switch-ng-dev-mode';
package/index.js ADDED
@@ -0,0 +1,2 @@
1
+ export { tuiSwitchNgDevMode } from './utils/switch-ng-dev-mode';
2
+ //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../projects/jest-config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/jest-config",
3
- "version": "0.372.0",
3
+ "version": "0.374.0",
4
4
  "description": "Taiga UI jest config",
5
5
  "keywords": [
6
6
  "jest"
@@ -18,11 +18,9 @@
18
18
  "jest": "^29.7.0",
19
19
  "jest-environment-jsdom": "^29.7.0",
20
20
  "jest-preset-angular": "^14.6.2",
21
+ "resize-observer-polyfill": "^1.5.1",
21
22
  "ts-jest": "^29.4.5"
22
23
  },
23
- "optionalDependencies": {
24
- "@taiga-ui/testing": "^4.61.0"
25
- },
26
24
  "publishConfig": {
27
25
  "access": "public"
28
26
  }
package/polyfill.d.ts CHANGED
@@ -1 +1 @@
1
- import '@taiga-ui/testing/setup-jest';
1
+ export {};
package/polyfill.js CHANGED
@@ -1,4 +1,134 @@
1
- import '@taiga-ui/testing/setup-jest';
1
+ /// <reference types="@types/jest" />
2
+ /// <reference types="@types/node" />
3
+ import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
4
+ import ResizeObserver from 'resize-observer-polyfill';
5
+ import { tuiSwitchNgDevMode } from './utils/switch-ng-dev-mode';
6
+ const { TextDecoder: TextDecoderMock, TextEncoder: TextEncoderMock } = require('node:util'); // drop it after migrate zone less mode
7
+ tuiSwitchNgDevMode(false);
8
+ setupZoneTestEnv();
9
+ global.TextEncoder = TextEncoderMock;
10
+ global.TextDecoder = TextDecoderMock;
11
+ global.ResizeObserver = ResizeObserver;
12
+ Object.defineProperty(global.document, 'execCommand', {
13
+ value: () => { },
14
+ writable: true,
15
+ });
16
+ // you can also pass the mock implementation
17
+ // to jest.fn as an argument
18
+ global.window.IntersectionObserver = jest.fn(() => ({
19
+ disconnect: jest.fn(),
20
+ observe: jest.fn(),
21
+ unobserve: jest.fn(),
22
+ }));
23
+ global.window.resizeTo = (width) => {
24
+ global.window.innerWidth = width || global.window.innerWidth;
25
+ global.window.innerHeight = width || global.window.innerHeight;
26
+ // Simulate window resize events
27
+ global.window.dispatchEvent(new Event('resize', { bubbles: true, cancelable: true }));
28
+ };
29
+ global.URL.createObjectURL = jest.fn(String);
30
+ global.URL.revokeObjectURL = jest.fn();
31
+ Object.defineProperty(global.window, 'CSS', { value: null });
32
+ Object.defineProperty(global.window, 'getComputedStyle', {
33
+ value: () => ({
34
+ appearance: ['-webkit-appearance'],
35
+ display: 'none',
36
+ }),
37
+ });
38
+ Object.defineProperty(global.document, 'doctype', {
39
+ value: '<!DOCTYPE html>',
40
+ });
41
+ Object.defineProperty(global.document.body.style, 'transform', {
42
+ value: () => ({
43
+ configurable: true,
44
+ enumerable: true,
45
+ }),
46
+ });
47
+ Object.defineProperty(global.window, 'matchMedia', {
48
+ value: jest.fn().mockImplementation((query) => ({
49
+ addEventListener: jest.fn(),
50
+ addListener: jest.fn(),
51
+ dispatchEvent: jest.fn(),
52
+ matches: false,
53
+ media: query,
54
+ onchange: null,
55
+ removeEventListener: jest.fn(),
56
+ removeListener: jest.fn(),
57
+ })),
58
+ writable: true,
59
+ });
60
+ Object.defineProperty(global.document, 'elementFromPoint', {
61
+ value: jest.fn().mockImplementation(() => null),
62
+ writable: true,
63
+ });
64
+ Object.defineProperty(global.document, 'createRange', {
65
+ value: () => {
66
+ const range = new Range();
67
+ range.getBoundingClientRect = () => ({
68
+ width: 0,
69
+ bottom: 0,
70
+ height: 0,
71
+ left: 0,
72
+ right: 0,
73
+ toJSON: () => { },
74
+ top: 0,
75
+ x: 0,
76
+ y: 0,
77
+ });
78
+ range.getClientRects = () => ({
79
+ item: () => null,
80
+ length: 0,
81
+ [Symbol.iterator]: jest.fn(),
82
+ });
83
+ return range;
84
+ },
85
+ writable: true,
86
+ });
87
+ Object.defineProperty(window, 'scrollTo', jest.fn());
88
+ Object.defineProperty(global.window, 'getComputedStyle', {
89
+ value: () => ({
90
+ getPropertyValue: (_prop) => '',
91
+ }),
92
+ });
93
+ global.DataTransfer = class {
94
+ constructor() {
95
+ this.data = new Map();
96
+ }
97
+ setData(format, data) {
98
+ this.data.set(format, data);
99
+ }
100
+ getData(format) {
101
+ return this.data.get(format);
102
+ }
103
+ };
104
+ class TransferMockEvent {
105
+ constructor(type, options) {
106
+ this.type = type;
107
+ this.options = options;
108
+ this.dataTransfer = options.clipboardData;
109
+ this.relatedTarget = options.relatedTarget;
110
+ }
111
+ }
112
+ global.DragEvent = TransferMockEvent;
113
+ global.ClipboardEvent = TransferMockEvent;
114
+ // Need before initialize any static methods
115
+ global.Date = class extends Date {
116
+ constructor(...args) {
117
+ // @ts-ignore
118
+ super(...(args.length === 0 ? ['2023-02-15T00:00:00Z'] : args));
119
+ }
120
+ };
121
+ /**
122
+ * in our jest setupFilesAfterEnv file,
123
+ * however when running with ng test those
124
+ * imports are already done by angular
125
+ * resulting in duplicate imports
126
+ * and conflicts resulting in the above error
127
+ */
128
+ if (!('Zone' in global)) {
129
+ require('zone.js');
130
+ require('zone.js/testing');
131
+ }
2
132
  if (typeof globalThis.structuredClone !== 'function') {
3
133
  globalThis.structuredClone = (obj) => JSON.parse(JSON.stringify(obj));
4
134
  }
package/polyfill.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"polyfill.js","sourceRoot":"","sources":["../../projects/jest-config/polyfill.ts"],"names":[],"mappings":"AAAA,OAAO,8BAA8B,CAAC;AAEtC,IAAI,OAAO,UAAU,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;IACnD,UAAU,CAAC,eAAe,GAAG,CAAC,GAAY,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,IAAI,OAAO,UAAU,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;IAChD,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC,EAAgC,EAAE,GAAG,IAAe,EAAE,EAAE,CAChF,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAA8C,CAAC;AACjF,CAAC;AAED,IAAI,OAAO,UAAU,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;IAClD,UAAU,CAAC,cAAc,GAAG,CAAC,CAAC,SAA6B,EAAE,EAAE,CAC3D,YAAY,CAAC,SAAS,CAAC,CAAgD,CAAC;AAChF,CAAC"}
1
+ {"version":3,"file":"polyfill.js","sourceRoot":"","sources":["../../projects/jest-config/polyfill.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function tuiSwitchNgDevMode(enable: boolean): void;
@@ -0,0 +1,6 @@
1
+ export function tuiSwitchNgDevMode(enable) {
2
+ if (global) {
3
+ global.ngDevMode = enable;
4
+ }
5
+ }
6
+ //# sourceMappingURL=switch-ng-dev-mode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch-ng-dev-mode.js","sourceRoot":"","sources":["../../../projects/jest-config/utils/switch-ng-dev-mode.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,kBAAkB,CAAC,MAAe;IAC9C,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC;IAC9B,CAAC;AACL,CAAC"}