@dynatrace/strato-components-testing 1.18.0 → 3.1.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.
Files changed (117) hide show
  1. package/esm/jest/index.js +102 -3
  2. package/esm/jest/index.js.map +2 -2
  3. package/esm/jest/mocks/create-mock-element.js +81 -0
  4. package/esm/jest/mocks/create-mock-element.js.map +7 -0
  5. package/esm/jest/mocks/create-range-mock.js +28 -0
  6. package/esm/jest/mocks/create-range-mock.js.map +7 -0
  7. package/esm/jest/mocks/crypto-mock.js +20 -0
  8. package/esm/jest/mocks/crypto-mock.js.map +7 -0
  9. package/esm/jest/mocks/dom-rect-mock.js.map +2 -2
  10. package/esm/jest/mocks/element-from-point-mock.js +12 -0
  11. package/esm/jest/mocks/element-from-point-mock.js.map +7 -0
  12. package/esm/jest/mocks/fetch-mock.js +20 -0
  13. package/esm/jest/mocks/fetch-mock.js.map +7 -0
  14. package/esm/jest/mocks/framer-motion-mock.js +59 -0
  15. package/esm/jest/mocks/framer-motion-mock.js.map +7 -0
  16. package/esm/jest/mocks/intersection-observer-mock.js +40 -0
  17. package/esm/jest/mocks/intersection-observer-mock.js.map +7 -0
  18. package/esm/jest/mocks/match-media-mock.js +27 -0
  19. package/esm/jest/mocks/match-media-mock.js.map +7 -0
  20. package/esm/jest/mocks/offset-height-mock.js +21 -0
  21. package/esm/jest/mocks/offset-height-mock.js.map +7 -0
  22. package/esm/jest/mocks/offset-width-mock.js +21 -0
  23. package/esm/jest/mocks/offset-width-mock.js.map +7 -0
  24. package/esm/jest/mocks/pointer-event-mock.js +24 -0
  25. package/esm/jest/mocks/pointer-event-mock.js.map +7 -0
  26. package/esm/jest/mocks/screen-size-mock.js +16 -0
  27. package/esm/jest/mocks/screen-size-mock.js.map +7 -0
  28. package/esm/jest/mocks/scroll-into-view-mock.js +16 -0
  29. package/esm/jest/mocks/scroll-into-view-mock.js.map +7 -0
  30. package/esm/jest/mocks/streamdown.mock.js +8 -0
  31. package/esm/jest/mocks/streamdown.mock.js.map +7 -0
  32. package/esm/jest/mocks/table-virtualization-mock.js +87 -0
  33. package/esm/jest/mocks/table-virtualization-mock.js.map +7 -0
  34. package/esm/jest/mocks/virtualization-mock.js +155 -0
  35. package/esm/jest/mocks/virtualization-mock.js.map +7 -0
  36. package/esm/jest/preset/jest-preset.js +2 -1
  37. package/esm/jest/preset/jest-preset.js.map +2 -2
  38. package/esm/jest/setup/index.js +51 -0
  39. package/esm/jest/setup/index.js.map +2 -2
  40. package/esm/jest/testing-helpers/filters/filter-field.js +424 -0
  41. package/esm/jest/testing-helpers/filters/filter-field.js.map +7 -0
  42. package/esm/jest/testing-helpers/forms/base-input.js +32 -0
  43. package/esm/jest/testing-helpers/forms/base-input.js.map +7 -0
  44. package/esm/jest/testing-helpers/forms/password-input.js +29 -0
  45. package/esm/jest/testing-helpers/forms/password-input.js.map +7 -0
  46. package/esm/jest/testing-helpers/forms/search-input.js +27 -0
  47. package/esm/jest/testing-helpers/forms/search-input.js.map +7 -0
  48. package/esm/jest/testing-helpers/forms/select.js +131 -0
  49. package/esm/jest/testing-helpers/forms/select.js.map +7 -0
  50. package/esm/jest/testing-helpers/forms/text-input.js +24 -0
  51. package/esm/jest/testing-helpers/forms/text-input.js.map +7 -0
  52. package/esm/jest/testing-helpers/tables/datatable.js +794 -0
  53. package/esm/jest/testing-helpers/tables/datatable.js.map +7 -0
  54. package/esm/jest/testing-helpers/utils/isFakeTimersEnabled.js +9 -0
  55. package/esm/jest/testing-helpers/utils/isFakeTimersEnabled.js.map +7 -0
  56. package/esm/jest/testing-helpers/utils/setup-user-event.js +15 -0
  57. package/esm/jest/testing-helpers/utils/setup-user-event.js.map +7 -0
  58. package/jest/index.d.ts +22 -1
  59. package/jest/index.js +54 -3
  60. package/jest/mocks/create-mock-element.d.ts +15 -0
  61. package/jest/mocks/create-mock-element.js +99 -0
  62. package/jest/mocks/create-range-mock.d.ts +11 -0
  63. package/jest/mocks/create-range-mock.js +46 -0
  64. package/jest/mocks/crypto-mock.d.ts +12 -0
  65. package/jest/mocks/crypto-mock.js +48 -0
  66. package/jest/mocks/dom-rect-mock.d.ts +1 -0
  67. package/jest/mocks/element-from-point-mock.d.ts +11 -0
  68. package/jest/{setup.js → mocks/element-from-point-mock.js} +10 -16
  69. package/jest/mocks/fetch-mock.d.ts +10 -0
  70. package/jest/mocks/fetch-mock.js +38 -0
  71. package/jest/mocks/framer-motion-mock.d.ts +18 -0
  72. package/jest/mocks/framer-motion-mock.js +75 -0
  73. package/jest/mocks/intersection-observer-mock.d.ts +11 -0
  74. package/jest/mocks/intersection-observer-mock.js +58 -0
  75. package/jest/mocks/match-media-mock.d.ts +11 -0
  76. package/jest/mocks/match-media-mock.js +45 -0
  77. package/jest/mocks/offset-height-mock.d.ts +10 -0
  78. package/jest/mocks/offset-height-mock.js +39 -0
  79. package/jest/mocks/offset-width-mock.d.ts +10 -0
  80. package/jest/mocks/offset-width-mock.js +39 -0
  81. package/jest/mocks/pointer-event-mock.d.ts +10 -0
  82. package/jest/mocks/pointer-event-mock.js +42 -0
  83. package/jest/mocks/screen-size-mock.d.ts +10 -0
  84. package/jest/mocks/screen-size-mock.js +34 -0
  85. package/jest/mocks/scroll-into-view-mock.d.ts +10 -0
  86. package/jest/mocks/scroll-into-view-mock.js +34 -0
  87. package/jest/mocks/streamdown.mock.d.ts +2 -0
  88. package/jest/mocks/streamdown.mock.js +26 -0
  89. package/jest/mocks/table-virtualization-mock.d.ts +15 -0
  90. package/jest/mocks/table-virtualization-mock.js +102 -0
  91. package/jest/mocks/virtualization-mock.d.ts +9 -0
  92. package/jest/mocks/virtualization-mock.js +170 -0
  93. package/jest/preset/jest-preset.d.ts +2 -3
  94. package/jest/preset/jest-preset.js +2 -1
  95. package/jest/setup/index.js +27 -0
  96. package/jest/testing-helpers/filters/filter-field.d.ts +109 -0
  97. package/jest/testing-helpers/filters/filter-field.js +436 -0
  98. package/jest/testing-helpers/forms/base-input.d.ts +17 -0
  99. package/jest/testing-helpers/forms/base-input.js +50 -0
  100. package/jest/testing-helpers/forms/password-input.d.ts +16 -0
  101. package/jest/testing-helpers/forms/password-input.js +47 -0
  102. package/jest/testing-helpers/forms/search-input.d.ts +20 -0
  103. package/jest/testing-helpers/forms/search-input.js +45 -0
  104. package/jest/testing-helpers/forms/select.d.ts +65 -0
  105. package/jest/testing-helpers/forms/select.js +159 -0
  106. package/jest/testing-helpers/forms/text-input.d.ts +19 -0
  107. package/jest/testing-helpers/forms/text-input.js +42 -0
  108. package/jest/testing-helpers/tables/datatable.d.ts +239 -0
  109. package/jest/testing-helpers/tables/datatable.js +812 -0
  110. package/jest/testing-helpers/utils/isFakeTimersEnabled.d.ts +5 -0
  111. package/jest/testing-helpers/utils/isFakeTimersEnabled.js +27 -0
  112. package/jest/testing-helpers/utils/setup-user-event.d.ts +6 -0
  113. package/jest/testing-helpers/utils/setup-user-event.js +43 -0
  114. package/package.json +12 -3
  115. package/esm/jest/setup.js +0 -24
  116. package/esm/jest/setup.js.map +0 -7
  117. package/jest/setup.d.ts +0 -14
@@ -0,0 +1,24 @@
1
+ class MockPointerEvent extends Event {
2
+ button;
3
+ ctrlKey;
4
+ pointerType;
5
+ /** Creates a new MockPointerEvent. */
6
+ constructor(type, props) {
7
+ super(type, props);
8
+ this.button = props.button || 0;
9
+ this.ctrlKey = props.ctrlKey || false;
10
+ this.pointerType = props.pointerType || "mouse";
11
+ }
12
+ }
13
+ const pristinePointerEvent = global.PointerEvent;
14
+ function setupPointerEventMock() {
15
+ global.PointerEvent = MockPointerEvent;
16
+ }
17
+ function clearPointerEventMock() {
18
+ global.PointerEvent = pristinePointerEvent;
19
+ }
20
+ export {
21
+ clearPointerEventMock,
22
+ setupPointerEventMock
23
+ };
24
+ //# sourceMappingURL=pointer-event-mock.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/jest/mocks/pointer-event-mock.ts"],
4
+ "sourcesContent": ["class MockPointerEvent extends Event {\n button: number;\n ctrlKey: boolean;\n pointerType: string;\n\n /** Creates a new MockPointerEvent. */\n constructor(type: string, props: PointerEventInit) {\n super(type, props);\n this.button = props.button || 0;\n this.ctrlKey = props.ctrlKey || false;\n this.pointerType = props.pointerType || 'mouse';\n }\n}\n\nconst pristinePointerEvent = global.PointerEvent;\n\n/**\n * Mocks `PointerEvent`.\n * @public\n */\nexport function setupPointerEventMock() {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n global.PointerEvent = MockPointerEvent;\n}\n\n/**\n * Clears `PointerEvent` mock.\n * @public\n */\nexport function clearPointerEventMock() {\n global.PointerEvent = pristinePointerEvent;\n}\n"],
5
+ "mappings": "AAAA,MAAM,yBAAyB,MAAM;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA,YAAY,MAAc,OAAyB;AACjD,UAAM,MAAM,KAAK;AACjB,SAAK,SAAS,MAAM,UAAU;AAC9B,SAAK,UAAU,MAAM,WAAW;AAChC,SAAK,cAAc,MAAM,eAAe;AAAA,EAC1C;AACF;AAEA,MAAM,uBAAuB,OAAO;AAM7B,SAAS,wBAAwB;AAGtC,SAAO,eAAe;AACxB;AAMO,SAAS,wBAAwB;AACtC,SAAO,eAAe;AACxB;",
6
+ "names": []
7
+ }
@@ -0,0 +1,16 @@
1
+ const pristineScreenWidth = window.screen.width;
2
+ const pristineScreenHeight = window.screen.height;
3
+ function setupScreenSizeMock(width = 1024, height = 768) {
4
+ Object.defineProperty(window, "screen", {
5
+ configurable: true,
6
+ value: { width, height }
7
+ });
8
+ }
9
+ function clearScreenSizeMock() {
10
+ setupScreenSizeMock(pristineScreenWidth, pristineScreenHeight);
11
+ }
12
+ export {
13
+ clearScreenSizeMock,
14
+ setupScreenSizeMock
15
+ };
16
+ //# sourceMappingURL=screen-size-mock.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/jest/mocks/screen-size-mock.ts"],
4
+ "sourcesContent": ["const pristineScreenWidth = window.screen.width;\nconst pristineScreenHeight = window.screen.height;\n\n/**\n * Mocks the width and height on `window.screen`\n * @public\n */\nexport function setupScreenSizeMock(\n width: number = 1024,\n height: number = 768,\n) {\n Object.defineProperty(window, 'screen', {\n configurable: true,\n value: { width, height },\n });\n}\n\n/**\n * Clears mocked width and height on `window.screen`.\n * @public\n */\nexport function clearScreenSizeMock() {\n setupScreenSizeMock(pristineScreenWidth, pristineScreenHeight);\n}\n"],
5
+ "mappings": "AAAA,MAAM,sBAAsB,OAAO,OAAO;AAC1C,MAAM,uBAAuB,OAAO,OAAO;AAMpC,SAAS,oBACd,QAAgB,MAChB,SAAiB,KACjB;AACA,SAAO,eAAe,QAAQ,UAAU;AAAA,IACtC,cAAc;AAAA,IACd,OAAO,EAAE,OAAO,OAAO;AAAA,EACzB,CAAC;AACH;AAMO,SAAS,sBAAsB;AACpC,sBAAoB,qBAAqB,oBAAoB;AAC/D;",
6
+ "names": []
7
+ }
@@ -0,0 +1,16 @@
1
+ import { jest } from "@jest/globals";
2
+ const pristineScrollIntoView = window.HTMLElement.prototype.scrollIntoView;
3
+ function setupScrollIntoViewMock() {
4
+ Object.defineProperty(HTMLElement.prototype, "scrollIntoView", {
5
+ writable: true,
6
+ value: jest.fn()
7
+ });
8
+ }
9
+ function clearScrollIntoViewMock() {
10
+ window.HTMLElement.prototype.scrollIntoView = pristineScrollIntoView;
11
+ }
12
+ export {
13
+ clearScrollIntoViewMock,
14
+ setupScrollIntoViewMock
15
+ };
16
+ //# sourceMappingURL=scroll-into-view-mock.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/jest/mocks/scroll-into-view-mock.ts"],
4
+ "sourcesContent": ["// eslint-disable-next-line no-restricted-imports\nimport { jest } from '@jest/globals';\n\nconst pristineScrollIntoView = window.HTMLElement.prototype.scrollIntoView;\n/**\n * Mocks the scrollIntoView function since jsdom doesn't provide it\n * @public\n */\nexport function setupScrollIntoViewMock() {\n Object.defineProperty(HTMLElement.prototype, 'scrollIntoView', {\n writable: true,\n value: jest.fn(),\n });\n}\n\n/**\n * Clears the scrollIntoView\n * @public\n */\nexport function clearScrollIntoViewMock() {\n window.HTMLElement.prototype.scrollIntoView = pristineScrollIntoView;\n}\n"],
5
+ "mappings": "AACA,SAAS,YAAY;AAErB,MAAM,yBAAyB,OAAO,YAAY,UAAU;AAKrD,SAAS,0BAA0B;AACxC,SAAO,eAAe,YAAY,WAAW,kBAAkB;AAAA,IAC7D,UAAU;AAAA,IACV,OAAO,KAAK,GAAG;AAAA,EACjB,CAAC;AACH;AAMO,SAAS,0BAA0B;AACxC,SAAO,YAAY,UAAU,iBAAiB;AAChD;",
6
+ "names": []
7
+ }
@@ -0,0 +1,8 @@
1
+ import { Fragment, jsx } from "react/jsx-runtime";
2
+ function Streamdown(props) {
3
+ return /* @__PURE__ */ jsx(Fragment, { children: props.children });
4
+ }
5
+ export {
6
+ Streamdown
7
+ };
8
+ //# sourceMappingURL=streamdown.mock.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/jest/mocks/streamdown.mock.tsx"],
4
+ "sourcesContent": ["import type { PropsWithChildren } from 'react';\n\nexport function Streamdown(props: PropsWithChildren) {\n // eslint-disable-next-line react/jsx-no-useless-fragment\n return <>{props.children}</>;\n}\n"],
5
+ "mappings": "AAIS;AAFF,SAAS,WAAW,OAA0B;AAEnD,SAAO,gCAAG,gBAAM,UAAS;AAC3B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,87 @@
1
+ import {
2
+ clearGetBoundingClientRectMock,
3
+ setupGetBoundingClientRectMock
4
+ } from "./bounding-client-rect-mock.js";
5
+ import { createDOMRect } from "./dom-rect-mock.js";
6
+ const pristineOffsetHeight = Object.getOwnPropertyDescriptor(
7
+ HTMLElement.prototype,
8
+ "offsetHeight"
9
+ );
10
+ const pristineOffsetWidth = Object.getOwnPropertyDescriptor(
11
+ HTMLElement.prototype,
12
+ "offsetWidth"
13
+ );
14
+ function setupTableVirtualizationMock(containerHeight = 15e3) {
15
+ clearGetBoundingClientRectMock();
16
+ setupGetBoundingClientRectMock(function() {
17
+ if (this.classList.contains("strato-table-header-group")) {
18
+ return createDOMRect(1e3, 32);
19
+ }
20
+ if (this.classList.contains("strato-table-virtualization-container")) {
21
+ return createDOMRect(1e3, containerHeight);
22
+ }
23
+ if (this.classList.contains("strato-table-row")) {
24
+ return createDOMRect(1e3, 56);
25
+ }
26
+ if (this.classList.contains("strato-table-header-cell") || this.classList.contains("strato-table-cell")) {
27
+ return createDOMRect(100, 32);
28
+ }
29
+ return null;
30
+ });
31
+ Object.defineProperty(HTMLElement.prototype, "offsetHeight", {
32
+ configurable: true,
33
+ get: function() {
34
+ if (this.classList.contains("strato-table-header-group")) {
35
+ return 32;
36
+ }
37
+ if (this.classList.contains("strato-table-virtualization-container")) {
38
+ return containerHeight;
39
+ }
40
+ if (this.classList.contains("strato-table-row")) {
41
+ return 56;
42
+ }
43
+ if (this.classList.contains("strato-table-header-cell") || this.classList.contains("strato-table-cell")) {
44
+ return 32;
45
+ }
46
+ return 0;
47
+ }
48
+ });
49
+ Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
50
+ configurable: true,
51
+ get: function() {
52
+ if (this.classList.contains("strato-table-header-group")) {
53
+ return 1e3;
54
+ }
55
+ if (this.classList.contains("strato-table-virtualization-container")) {
56
+ return 1e3;
57
+ }
58
+ if (this.classList.contains("strato-table-row")) {
59
+ return 1e3;
60
+ }
61
+ if (this.classList.contains("strato-table-header-cell") || this.classList.contains("strato-table-cell")) {
62
+ return 100;
63
+ }
64
+ return 0;
65
+ }
66
+ });
67
+ }
68
+ function clearTableVirtualizationMock() {
69
+ clearGetBoundingClientRectMock();
70
+ Object.defineProperty(
71
+ HTMLElement.prototype,
72
+ "offsetHeight",
73
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
74
+ pristineOffsetHeight
75
+ );
76
+ Object.defineProperty(
77
+ HTMLElement.prototype,
78
+ "offsetWidth",
79
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
80
+ pristineOffsetWidth
81
+ );
82
+ }
83
+ export {
84
+ clearTableVirtualizationMock,
85
+ setupTableVirtualizationMock
86
+ };
87
+ //# sourceMappingURL=table-virtualization-mock.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/jest/mocks/table-virtualization-mock.ts"],
4
+ "sourcesContent": ["import {\n clearGetBoundingClientRectMock,\n setupGetBoundingClientRectMock,\n} from './bounding-client-rect-mock.js';\nimport { createDOMRect } from './dom-rect-mock.js';\n\nconst pristineOffsetHeight = Object.getOwnPropertyDescriptor(\n HTMLElement.prototype,\n 'offsetHeight',\n);\nconst pristineOffsetWidth = Object.getOwnPropertyDescriptor(\n HTMLElement.prototype,\n 'offsetWidth',\n);\n\n// DEPRECATION: [APPDEV-16006] BREAKING-CHANGE: Remove setupTableVirtualizationMock and clearTableVirtualizationMock\n/**\n * Mocks virtualization scrolling away by setting the containers height to something really tall.\n * Table virtualization will also rely on jest fake timers.\n * @public\n *\n * @deprecated this mock is deprecated and will be removed in future versions. Instead, use `setupVirtualizationMock`.\n */\nexport function setupTableVirtualizationMock(containerHeight: number = 15_000) {\n clearGetBoundingClientRectMock();\n setupGetBoundingClientRectMock(function (this: HTMLElement) {\n if (this.classList.contains('strato-table-header-group')) {\n return createDOMRect(1000, 32);\n }\n if (this.classList.contains('strato-table-virtualization-container')) {\n return createDOMRect(1000, containerHeight);\n }\n if (this.classList.contains('strato-table-row')) {\n return createDOMRect(1000, 56);\n }\n if (\n this.classList.contains('strato-table-header-cell') ||\n this.classList.contains('strato-table-cell')\n ) {\n return createDOMRect(100, 32);\n }\n return null;\n });\n\n Object.defineProperty(HTMLElement.prototype, 'offsetHeight', {\n configurable: true,\n get: function () {\n if (this.classList.contains('strato-table-header-group')) {\n return 32;\n }\n if (this.classList.contains('strato-table-virtualization-container')) {\n return containerHeight;\n }\n if (this.classList.contains('strato-table-row')) {\n return 56;\n }\n if (\n this.classList.contains('strato-table-header-cell') ||\n this.classList.contains('strato-table-cell')\n ) {\n return 32;\n }\n return 0;\n },\n });\n\n Object.defineProperty(HTMLElement.prototype, 'offsetWidth', {\n configurable: true,\n get: function () {\n if (this.classList.contains('strato-table-header-group')) {\n return 1000;\n }\n if (this.classList.contains('strato-table-virtualization-container')) {\n return 1000;\n }\n if (this.classList.contains('strato-table-row')) {\n return 1000;\n }\n if (\n this.classList.contains('strato-table-header-cell') ||\n this.classList.contains('strato-table-cell')\n ) {\n return 100;\n }\n return 0;\n },\n });\n}\n\n// DEPRECATION: [APPDEV-16006] BREAKING-CHANGE: Remove setupTableVirtualizationMock and clearTableVirtualizationMock\n/**\n * Clears the TableVirtualizationMock\n * @public\n *\n * @deprecated this mock is deprecated and will be removed in future versions. Instead, use `clearVirtualizationMock`.\n */\nexport function clearTableVirtualizationMock() {\n clearGetBoundingClientRectMock();\n Object.defineProperty(\n HTMLElement.prototype,\n 'offsetHeight',\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n pristineOffsetHeight!,\n );\n Object.defineProperty(\n HTMLElement.prototype,\n 'offsetWidth',\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n pristineOffsetWidth!,\n );\n}\n"],
5
+ "mappings": "AAAA;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,qBAAqB;AAE9B,MAAM,uBAAuB,OAAO;AAAA,EAClC,YAAY;AAAA,EACZ;AACF;AACA,MAAM,sBAAsB,OAAO;AAAA,EACjC,YAAY;AAAA,EACZ;AACF;AAUO,SAAS,6BAA6B,kBAA0B,MAAQ;AAC7E,iCAA+B;AAC/B,iCAA+B,WAA6B;AAC1D,QAAI,KAAK,UAAU,SAAS,2BAA2B,GAAG;AACxD,aAAO,cAAc,KAAM,EAAE;AAAA,IAC/B;AACA,QAAI,KAAK,UAAU,SAAS,uCAAuC,GAAG;AACpE,aAAO,cAAc,KAAM,eAAe;AAAA,IAC5C;AACA,QAAI,KAAK,UAAU,SAAS,kBAAkB,GAAG;AAC/C,aAAO,cAAc,KAAM,EAAE;AAAA,IAC/B;AACA,QACE,KAAK,UAAU,SAAS,0BAA0B,KAClD,KAAK,UAAU,SAAS,mBAAmB,GAC3C;AACA,aAAO,cAAc,KAAK,EAAE;AAAA,IAC9B;AACA,WAAO;AAAA,EACT,CAAC;AAED,SAAO,eAAe,YAAY,WAAW,gBAAgB;AAAA,IAC3D,cAAc;AAAA,IACd,KAAK,WAAY;AACf,UAAI,KAAK,UAAU,SAAS,2BAA2B,GAAG;AACxD,eAAO;AAAA,MACT;AACA,UAAI,KAAK,UAAU,SAAS,uCAAuC,GAAG;AACpE,eAAO;AAAA,MACT;AACA,UAAI,KAAK,UAAU,SAAS,kBAAkB,GAAG;AAC/C,eAAO;AAAA,MACT;AACA,UACE,KAAK,UAAU,SAAS,0BAA0B,KAClD,KAAK,UAAU,SAAS,mBAAmB,GAC3C;AACA,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT;AAAA,EACF,CAAC;AAED,SAAO,eAAe,YAAY,WAAW,eAAe;AAAA,IAC1D,cAAc;AAAA,IACd,KAAK,WAAY;AACf,UAAI,KAAK,UAAU,SAAS,2BAA2B,GAAG;AACxD,eAAO;AAAA,MACT;AACA,UAAI,KAAK,UAAU,SAAS,uCAAuC,GAAG;AACpE,eAAO;AAAA,MACT;AACA,UAAI,KAAK,UAAU,SAAS,kBAAkB,GAAG;AAC/C,eAAO;AAAA,MACT;AACA,UACE,KAAK,UAAU,SAAS,0BAA0B,KAClD,KAAK,UAAU,SAAS,mBAAmB,GAC3C;AACA,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT;AAAA,EACF,CAAC;AACH;AASO,SAAS,+BAA+B;AAC7C,iCAA+B;AAC/B,SAAO;AAAA,IACL,YAAY;AAAA,IACZ;AAAA;AAAA,IAEA;AAAA,EACF;AACA,SAAO;AAAA,IACL,YAAY;AAAA,IACZ;AAAA;AAAA,IAEA;AAAA,EACF;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,155 @@
1
+ import {
2
+ setupGetBoundingClientRectMock,
3
+ clearGetBoundingClientRectMock
4
+ } from "./bounding-client-rect-mock.js";
5
+ import { createDOMRect } from "./dom-rect-mock.js";
6
+ const pristineOffsetHeight = Object.getOwnPropertyDescriptor(
7
+ HTMLElement.prototype,
8
+ "offsetHeight"
9
+ );
10
+ const pristineOffsetWidth = Object.getOwnPropertyDescriptor(
11
+ HTMLElement.prototype,
12
+ "offsetWidth"
13
+ );
14
+ const mockSizes = [
15
+ // Select
16
+ {
17
+ className: "strato-select-option",
18
+ width: 0,
19
+ height: 24
20
+ },
21
+ {
22
+ className: "strato-select-menulist",
23
+ width: 0,
24
+ height: 9999
25
+ },
26
+ // DataTable
27
+ {
28
+ className: "strato-table-header-group",
29
+ width: 1e3,
30
+ height: 32
31
+ },
32
+ {
33
+ className: "strato-table-virtualization-container",
34
+ width: 1e3,
35
+ height: 9999
36
+ },
37
+ {
38
+ className: "strato-table-row",
39
+ width: 1e3,
40
+ height: 56
41
+ },
42
+ {
43
+ className: "strato-table-header-cell",
44
+ width: 100,
45
+ height: 32
46
+ },
47
+ {
48
+ className: "strato-table-cell",
49
+ width: 100,
50
+ height: 32
51
+ },
52
+ {
53
+ attribute: "data-row",
54
+ width: 100,
55
+ height: 32
56
+ },
57
+ {
58
+ className: "strato-table-settings-virtualization-container",
59
+ width: 1e3,
60
+ height: 999
61
+ },
62
+ {
63
+ className: "strato-table-settings-item",
64
+ width: 100,
65
+ height: 33
66
+ },
67
+ // Filterfield
68
+ {
69
+ className: "strato-filter-field-suggestions",
70
+ width: 1e3,
71
+ height: 9999
72
+ },
73
+ {
74
+ className: "strato-filter-field-suggestion",
75
+ width: 200,
76
+ height: 30
77
+ },
78
+ // Chart tooltips
79
+ {
80
+ className: "chart-legend-grid-content",
81
+ width: 0,
82
+ height: 20
83
+ },
84
+ {
85
+ testid: "chart-tooltip-item-container",
86
+ width: 0,
87
+ height: 999
88
+ },
89
+ {
90
+ testid: "chart-tooltip-item",
91
+ width: 0,
92
+ height: 16
93
+ }
94
+ ];
95
+ function setupVirtualizationMock() {
96
+ setupGetBoundingClientRectMock(function() {
97
+ for (const entry of mockSizes) {
98
+ const hasClass = entry.className ? this.classList.contains(entry.className) : false;
99
+ const hasAttribute = entry.attribute ? this.hasAttribute(entry.attribute) : false;
100
+ const hasTestId = entry.testid ? this.dataset.testid === entry.testid : false;
101
+ if (hasClass || hasAttribute || hasTestId) {
102
+ return createDOMRect(entry.width, entry.height);
103
+ }
104
+ }
105
+ return createDOMRect(0, 0);
106
+ });
107
+ Object.defineProperty(HTMLElement.prototype, "offsetHeight", {
108
+ configurable: true,
109
+ get: function() {
110
+ for (const entry of mockSizes) {
111
+ const hasClass = entry.className ? this.classList.contains(entry.className) : false;
112
+ const hasAttribute = entry.attribute ? this.hasAttribute(entry.attribute) : false;
113
+ const hasTestId = entry.testid ? this.dataset.testid === entry.testid : false;
114
+ if (hasClass || hasAttribute || hasTestId) {
115
+ return entry.height;
116
+ }
117
+ }
118
+ return 0;
119
+ }
120
+ });
121
+ Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
122
+ configurable: true,
123
+ get: function() {
124
+ for (const entry of mockSizes) {
125
+ const hasClass = entry.className ? this.classList.contains(entry.className) : false;
126
+ const hasAttribute = entry.attribute ? this.hasAttribute(entry.attribute) : false;
127
+ const hasTestId = entry.testid ? this.dataset.testid === entry.testid : false;
128
+ if (hasClass || hasAttribute || hasTestId) {
129
+ return entry.width;
130
+ }
131
+ }
132
+ return 0;
133
+ }
134
+ });
135
+ }
136
+ function clearVirtualizationMock() {
137
+ clearGetBoundingClientRectMock();
138
+ Object.defineProperty(
139
+ HTMLElement.prototype,
140
+ "offsetHeight",
141
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
142
+ pristineOffsetHeight
143
+ );
144
+ Object.defineProperty(
145
+ HTMLElement.prototype,
146
+ "offsetWidth",
147
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
148
+ pristineOffsetWidth
149
+ );
150
+ }
151
+ export {
152
+ clearVirtualizationMock,
153
+ setupVirtualizationMock
154
+ };
155
+ //# sourceMappingURL=virtualization-mock.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/jest/mocks/virtualization-mock.ts"],
4
+ "sourcesContent": ["import {\n setupGetBoundingClientRectMock,\n clearGetBoundingClientRectMock,\n} from './bounding-client-rect-mock.js';\nimport { createDOMRect } from './dom-rect-mock.js';\n\nconst pristineOffsetHeight = Object.getOwnPropertyDescriptor(\n HTMLElement.prototype,\n 'offsetHeight',\n);\nconst pristineOffsetWidth = Object.getOwnPropertyDescriptor(\n HTMLElement.prototype,\n 'offsetWidth',\n);\n\nconst mockSizes = [\n // Select\n {\n className: 'strato-select-option',\n width: 0,\n height: 24,\n },\n {\n className: 'strato-select-menulist',\n width: 0,\n height: 9999,\n },\n // DataTable\n {\n className: 'strato-table-header-group',\n width: 1000,\n height: 32,\n },\n {\n className: 'strato-table-virtualization-container',\n width: 1000,\n height: 9999,\n },\n {\n className: 'strato-table-row',\n width: 1000,\n height: 56,\n },\n {\n className: 'strato-table-header-cell',\n width: 100,\n height: 32,\n },\n {\n className: 'strato-table-cell',\n width: 100,\n height: 32,\n },\n {\n attribute: 'data-row',\n width: 100,\n height: 32,\n },\n {\n className: 'strato-table-settings-virtualization-container',\n width: 1000,\n height: 999,\n },\n {\n className: 'strato-table-settings-item',\n width: 100,\n height: 33,\n },\n // Filterfield\n {\n className: 'strato-filter-field-suggestions',\n width: 1000,\n height: 9999,\n },\n {\n className: 'strato-filter-field-suggestion',\n width: 200,\n height: 30,\n },\n // Chart tooltips\n {\n className: 'chart-legend-grid-content',\n width: 0,\n height: 20,\n },\n {\n testid: 'chart-tooltip-item-container',\n width: 0,\n height: 999,\n },\n {\n testid: 'chart-tooltip-item',\n width: 0,\n height: 16,\n },\n];\n\n/**\n * This mock sets up Virtualization mocking for the `Select`, `DataTable`, Chart-legends and chart tooltips.\n * @public\n */\nexport function setupVirtualizationMock() {\n setupGetBoundingClientRectMock(function (this: HTMLElement) {\n for (const entry of mockSizes) {\n const hasClass = entry.className\n ? this.classList.contains(entry.className)\n : false;\n const hasAttribute = entry.attribute\n ? this.hasAttribute(entry.attribute)\n : false;\n const hasTestId = entry.testid\n ? this.dataset.testid === entry.testid\n : false;\n if (hasClass || hasAttribute || hasTestId) {\n return createDOMRect(entry.width, entry.height);\n }\n }\n\n return createDOMRect(0, 0);\n });\n\n Object.defineProperty(HTMLElement.prototype, 'offsetHeight', {\n configurable: true,\n get: function () {\n for (const entry of mockSizes) {\n const hasClass = entry.className\n ? this.classList.contains(entry.className)\n : false;\n const hasAttribute = entry.attribute\n ? this.hasAttribute(entry.attribute)\n : false;\n const hasTestId = entry.testid\n ? this.dataset.testid === entry.testid\n : false;\n if (hasClass || hasAttribute || hasTestId) {\n return entry.height;\n }\n }\n return 0;\n },\n });\n\n Object.defineProperty(HTMLElement.prototype, 'offsetWidth', {\n configurable: true,\n get: function () {\n for (const entry of mockSizes) {\n const hasClass = entry.className\n ? this.classList.contains(entry.className)\n : false;\n const hasAttribute = entry.attribute\n ? this.hasAttribute(entry.attribute)\n : false;\n const hasTestId = entry.testid\n ? this.dataset.testid === entry.testid\n : false;\n if (hasClass || hasAttribute || hasTestId) {\n return entry.width;\n }\n }\n return 0;\n },\n });\n}\n\n/**\n * @public\n */\nexport function clearVirtualizationMock() {\n clearGetBoundingClientRectMock();\n Object.defineProperty(\n HTMLElement.prototype,\n 'offsetHeight',\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n pristineOffsetHeight!,\n );\n Object.defineProperty(\n HTMLElement.prototype,\n 'offsetWidth',\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n pristineOffsetWidth!,\n );\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -3,7 +3,8 @@ const stratoPreset = {
3
3
  "^d3-(.*)$": "<rootDir>/node_modules/d3-$1/dist/d3-$1",
4
4
  "^@codemirror/legacy-modes/mode/(.*)$": "<rootDir>/node_modules/@codemirror/legacy-modes/mode/$1.cjs",
5
5
  nanoid: "<rootDir>/node_modules/nanoid/index.cjs",
6
- "\\.(css|less|scss|sass)$": "identity-obj-proxy"
6
+ "\\.(css|less|scss|sass)$": "identity-obj-proxy",
7
+ streamdown: "@dynatrace/strato-components-testing/jest/mocks/streamdown.mock.js"
7
8
  },
8
9
  resolver: "<rootDir>/node_modules/@dynatrace/strato-components-testing/jest/preset/resolver.js"
9
10
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/jest/preset/jest-preset.ts"],
4
- "sourcesContent": ["/**\n * @public\n */\nexport const stratoPreset = {\n moduleNameMapper: {\n '^d3-(.*)$': '<rootDir>/node_modules/d3-$1/dist/d3-$1',\n '^@codemirror/legacy-modes/mode/(.*)$':\n '<rootDir>/node_modules/@codemirror/legacy-modes/mode/$1.cjs',\n nanoid: '<rootDir>/node_modules/nanoid/index.cjs',\n '\\\\.(css|less|scss|sass)$': 'identity-obj-proxy',\n },\n resolver:\n '<rootDir>/node_modules/@dynatrace/strato-components-testing/jest/preset/resolver.js',\n};\n"],
5
- "mappings": "AAGO,MAAM,eAAe;AAAA,EAC1B,kBAAkB;AAAA,IAChB,aAAa;AAAA,IACb,wCACE;AAAA,IACF,QAAQ;AAAA,IACR,4BAA4B;AAAA,EAC9B;AAAA,EACA,UACE;AACJ;",
4
+ "sourcesContent": ["/** @public */\nexport const stratoPreset = {\n moduleNameMapper: {\n '^d3-(.*)$': '<rootDir>/node_modules/d3-$1/dist/d3-$1',\n '^@codemirror/legacy-modes/mode/(.*)$':\n '<rootDir>/node_modules/@codemirror/legacy-modes/mode/$1.cjs',\n nanoid: '<rootDir>/node_modules/nanoid/index.cjs',\n '\\\\.(css|less|scss|sass)$': 'identity-obj-proxy',\n streamdown:\n '@dynatrace/strato-components-testing/jest/mocks/streamdown.mock.js',\n },\n resolver:\n '<rootDir>/node_modules/@dynatrace/strato-components-testing/jest/preset/resolver.js',\n};\n"],
5
+ "mappings": "AACO,MAAM,eAAe;AAAA,EAC1B,kBAAkB;AAAA,IAChB,aAAa;AAAA,IACb,wCACE;AAAA,IACF,QAAQ;AAAA,IACR,4BAA4B;AAAA,IAC5B,YACE;AAAA,EACJ;AAAA,EACA,UACE;AACJ;",
6
6
  "names": []
7
7
  }
@@ -2,19 +2,70 @@ import {
2
2
  clearCanvasMeasureTextMock,
3
3
  setupCanvasMeasureTextMock
4
4
  } from "../mocks/canvas-mock.js";
5
+ import {
6
+ clearCreateRangeMock,
7
+ setupCreateRangeMock
8
+ } from "../mocks/create-range-mock.js";
9
+ import { clearCryptoMock, setupCryptoMock } from "../mocks/crypto-mock.js";
5
10
  import { setupDomRectMock, clearDomRectMock } from "../mocks/dom-rect-mock.js";
11
+ import {
12
+ clearIntersectionObserverMock,
13
+ setupIntersectionObserverMock
14
+ } from "../mocks/intersection-observer-mock.js";
15
+ import {
16
+ setupMatchMediaMock,
17
+ clearMatchMediaMock
18
+ } from "../mocks/match-media-mock.js";
19
+ import {
20
+ setupOffsetWidthMock,
21
+ clearOffsetWidthMock
22
+ } from "../mocks/offset-width-mock.js";
23
+ import {
24
+ clearPointerEventMock,
25
+ setupPointerEventMock
26
+ } from "../mocks/pointer-event-mock.js";
6
27
  import {
7
28
  setupResizeObserverMock,
8
29
  clearResizeObserverMock
9
30
  } from "../mocks/resize-observer-mock.js";
31
+ import {
32
+ setupScreenSizeMock,
33
+ clearScreenSizeMock
34
+ } from "../mocks/screen-size-mock.js";
35
+ import {
36
+ clearScrollIntoViewMock,
37
+ setupScrollIntoViewMock
38
+ } from "../mocks/scroll-into-view-mock.js";
39
+ import {
40
+ clearVirtualizationMock,
41
+ setupVirtualizationMock
42
+ } from "../mocks/virtualization-mock.js";
10
43
  beforeAll(() => {
11
44
  setupResizeObserverMock();
45
+ setupPointerEventMock();
46
+ setupIntersectionObserverMock();
47
+ setupCreateRangeMock();
48
+ setupMatchMediaMock();
12
49
  setupDomRectMock();
50
+ setupScreenSizeMock();
51
+ setupOffsetWidthMock(0);
13
52
  setupCanvasMeasureTextMock(-Infinity);
53
+ setupScrollIntoViewMock();
54
+ setupVirtualizationMock();
55
+ setupCryptoMock();
14
56
  });
15
57
  afterAll(() => {
16
58
  clearResizeObserverMock();
59
+ clearPointerEventMock();
60
+ clearIntersectionObserverMock();
61
+ clearCreateRangeMock();
62
+ clearOffsetWidthMock();
17
63
  clearCanvasMeasureTextMock();
64
+ clearMatchMediaMock();
18
65
  clearDomRectMock();
66
+ clearScreenSizeMock();
67
+ clearScrollIntoViewMock();
68
+ clearVirtualizationMock();
69
+ clearCryptoMock();
19
70
  });
20
71
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/jest/setup/index.ts"],
4
- "sourcesContent": ["import {\n clearCanvasMeasureTextMock,\n setupCanvasMeasureTextMock,\n} from '../mocks/canvas-mock.js';\nimport { setupDomRectMock, clearDomRectMock } from '../mocks/dom-rect-mock.js';\nimport {\n setupResizeObserverMock,\n clearResizeObserverMock,\n} from '../mocks/resize-observer-mock.js';\n\nbeforeAll(() => {\n setupResizeObserverMock();\n setupDomRectMock();\n setupCanvasMeasureTextMock(-Infinity);\n});\n\nafterAll(() => {\n clearResizeObserverMock();\n clearCanvasMeasureTextMock();\n clearDomRectMock();\n});\n"],
5
- "mappings": "AAAA;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,kBAAkB,wBAAwB;AACnD;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAEP,UAAU,MAAM;AACd,0BAAwB;AACxB,mBAAiB;AACjB,6BAA2B,SAAS;AACtC,CAAC;AAED,SAAS,MAAM;AACb,0BAAwB;AACxB,6BAA2B;AAC3B,mBAAiB;AACnB,CAAC;",
4
+ "sourcesContent": ["import {\n clearCanvasMeasureTextMock,\n setupCanvasMeasureTextMock,\n} from '../mocks/canvas-mock.js';\nimport {\n clearCreateRangeMock,\n setupCreateRangeMock,\n} from '../mocks/create-range-mock.js';\nimport { clearCryptoMock, setupCryptoMock } from '../mocks/crypto-mock.js';\nimport { setupDomRectMock, clearDomRectMock } from '../mocks/dom-rect-mock.js';\nimport {\n clearIntersectionObserverMock,\n setupIntersectionObserverMock,\n} from '../mocks/intersection-observer-mock.js';\nimport {\n setupMatchMediaMock,\n clearMatchMediaMock,\n} from '../mocks/match-media-mock.js';\nimport {\n setupOffsetWidthMock,\n clearOffsetWidthMock,\n} from '../mocks/offset-width-mock.js';\nimport {\n clearPointerEventMock,\n setupPointerEventMock,\n} from '../mocks/pointer-event-mock.js';\nimport {\n setupResizeObserverMock,\n clearResizeObserverMock,\n} from '../mocks/resize-observer-mock.js';\nimport {\n setupScreenSizeMock,\n clearScreenSizeMock,\n} from '../mocks/screen-size-mock.js';\nimport {\n clearScrollIntoViewMock,\n setupScrollIntoViewMock,\n} from '../mocks/scroll-into-view-mock.js';\nimport {\n clearVirtualizationMock,\n setupVirtualizationMock,\n} from '../mocks/virtualization-mock.js';\nbeforeAll(() => {\n setupResizeObserverMock();\n setupPointerEventMock();\n setupIntersectionObserverMock();\n setupCreateRangeMock();\n setupMatchMediaMock();\n setupDomRectMock();\n setupScreenSizeMock();\n // Special TextEllipsis setup: text length always needs to be less than container width\n setupOffsetWidthMock(0);\n setupCanvasMeasureTextMock(-Infinity);\n setupScrollIntoViewMock();\n setupVirtualizationMock();\n setupCryptoMock();\n});\n\nafterAll(() => {\n clearResizeObserverMock();\n clearPointerEventMock();\n clearIntersectionObserverMock();\n clearCreateRangeMock();\n clearOffsetWidthMock();\n clearCanvasMeasureTextMock();\n clearMatchMediaMock();\n clearDomRectMock();\n clearScreenSizeMock();\n clearScrollIntoViewMock();\n clearVirtualizationMock();\n clearCryptoMock();\n});\n"],
5
+ "mappings": "AAAA;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,iBAAiB,uBAAuB;AACjD,SAAS,kBAAkB,wBAAwB;AACnD;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,UAAU,MAAM;AACd,0BAAwB;AACxB,wBAAsB;AACtB,gCAA8B;AAC9B,uBAAqB;AACrB,sBAAoB;AACpB,mBAAiB;AACjB,sBAAoB;AAEpB,uBAAqB,CAAC;AACtB,6BAA2B,SAAS;AACpC,0BAAwB;AACxB,0BAAwB;AACxB,kBAAgB;AAClB,CAAC;AAED,SAAS,MAAM;AACb,0BAAwB;AACxB,wBAAsB;AACtB,gCAA8B;AAC9B,uBAAqB;AACrB,uBAAqB;AACrB,6BAA2B;AAC3B,sBAAoB;AACpB,mBAAiB;AACjB,sBAAoB;AACpB,0BAAwB;AACxB,0BAAwB;AACxB,kBAAgB;AAClB,CAAC;",
6
6
  "names": []
7
7
  }