happy-dom 10.11.2 → 11.0.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.

Potentially problematic release.


This version of happy-dom might be problematic. Click here for more details.

Files changed (160) hide show
  1. package/.eslintrc.cjs +1 -1
  2. package/cjs/console/VirtualConsole.cjs +351 -0
  3. package/cjs/console/VirtualConsole.cjs.map +1 -0
  4. package/cjs/console/VirtualConsole.d.ts +163 -0
  5. package/cjs/console/VirtualConsole.d.ts.map +1 -0
  6. package/cjs/console/VirtualConsolePrinter.cjs +101 -0
  7. package/cjs/console/VirtualConsolePrinter.cjs.map +1 -0
  8. package/cjs/console/VirtualConsolePrinter.d.ts +55 -0
  9. package/cjs/console/VirtualConsolePrinter.d.ts.map +1 -0
  10. package/cjs/console/enums/VirtualConsoleLogLevelEnum.cjs +16 -0
  11. package/cjs/console/enums/VirtualConsoleLogLevelEnum.cjs.map +1 -0
  12. package/cjs/console/enums/VirtualConsoleLogLevelEnum.d.ts +13 -0
  13. package/cjs/console/enums/VirtualConsoleLogLevelEnum.d.ts.map +1 -0
  14. package/cjs/console/enums/VirtualConsoleLogTypeEnum.cjs +30 -0
  15. package/cjs/console/enums/VirtualConsoleLogTypeEnum.cjs.map +1 -0
  16. package/cjs/console/enums/VirtualConsoleLogTypeEnum.d.ts +23 -0
  17. package/cjs/console/enums/VirtualConsoleLogTypeEnum.d.ts.map +1 -0
  18. package/cjs/console/types/IVirtualConsoleLogEntry.cjs +3 -0
  19. package/cjs/console/types/IVirtualConsoleLogEntry.cjs.map +1 -0
  20. package/cjs/console/types/IVirtualConsoleLogEntry.d.ts +10 -0
  21. package/cjs/console/types/IVirtualConsoleLogEntry.d.ts.map +1 -0
  22. package/cjs/console/types/IVirtualConsoleLogGroup.cjs +3 -0
  23. package/cjs/console/types/IVirtualConsoleLogGroup.cjs.map +1 -0
  24. package/cjs/console/types/IVirtualConsoleLogGroup.d.ts +7 -0
  25. package/cjs/console/types/IVirtualConsoleLogGroup.d.ts.map +1 -0
  26. package/cjs/console/types/IVirtualConsolePrinter.cjs +3 -0
  27. package/cjs/console/types/IVirtualConsolePrinter.cjs.map +1 -0
  28. package/cjs/console/types/IVirtualConsolePrinter.d.ts +52 -0
  29. package/cjs/console/types/IVirtualConsolePrinter.d.ts.map +1 -0
  30. package/cjs/console/utilities/VirtualConsoleLogEntryStringifier.cjs +97 -0
  31. package/cjs/console/utilities/VirtualConsoleLogEntryStringifier.cjs.map +1 -0
  32. package/cjs/console/utilities/VirtualConsoleLogEntryStringifier.d.ts +35 -0
  33. package/cjs/console/utilities/VirtualConsoleLogEntryStringifier.d.ts.map +1 -0
  34. package/cjs/event/EventTarget.cjs +23 -5
  35. package/cjs/event/EventTarget.cjs.map +1 -1
  36. package/cjs/event/EventTarget.d.ts.map +1 -1
  37. package/cjs/nodes/element/Element.cjs.map +1 -1
  38. package/cjs/nodes/element/Element.d.ts +1 -1
  39. package/cjs/nodes/element/Element.d.ts.map +1 -1
  40. package/cjs/nodes/html-link-element/HTMLLinkElementUtility.cjs +8 -31
  41. package/cjs/nodes/html-link-element/HTMLLinkElementUtility.cjs.map +1 -1
  42. package/cjs/nodes/html-link-element/HTMLLinkElementUtility.d.ts +0 -7
  43. package/cjs/nodes/html-link-element/HTMLLinkElementUtility.d.ts.map +1 -1
  44. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs +2 -1
  45. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs.map +1 -1
  46. package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  47. package/cjs/nodes/html-script-element/HTMLScriptElementUtility.cjs +10 -55
  48. package/cjs/nodes/html-script-element/HTMLScriptElementUtility.cjs.map +1 -1
  49. package/cjs/nodes/html-script-element/HTMLScriptElementUtility.d.ts +0 -14
  50. package/cjs/nodes/html-script-element/HTMLScriptElementUtility.d.ts.map +1 -1
  51. package/cjs/window/GlobalWindow.cjs +1 -9
  52. package/cjs/window/GlobalWindow.cjs.map +1 -1
  53. package/cjs/window/GlobalWindow.d.ts +1 -7
  54. package/cjs/window/GlobalWindow.d.ts.map +1 -1
  55. package/cjs/window/IHappyDOMOptions.d.ts +2 -0
  56. package/cjs/window/IHappyDOMOptions.d.ts.map +1 -1
  57. package/cjs/window/IWindow.d.ts +2 -7
  58. package/cjs/window/IWindow.d.ts.map +1 -1
  59. package/cjs/window/VMGlobalPropertyScript.cjs +1 -0
  60. package/cjs/window/VMGlobalPropertyScript.cjs.map +1 -1
  61. package/cjs/window/VMGlobalPropertyScript.d.ts +1 -1
  62. package/cjs/window/VMGlobalPropertyScript.d.ts.map +1 -1
  63. package/cjs/window/Window.cjs +51 -64
  64. package/cjs/window/Window.cjs.map +1 -1
  65. package/cjs/window/Window.d.ts +6 -23
  66. package/cjs/window/Window.d.ts.map +1 -1
  67. package/cjs/window/WindowErrorUtility.cjs +84 -0
  68. package/cjs/window/WindowErrorUtility.cjs.map +1 -0
  69. package/cjs/window/WindowErrorUtility.d.ts +38 -0
  70. package/cjs/window/WindowErrorUtility.d.ts.map +1 -0
  71. package/lib/console/VirtualConsole.d.ts +163 -0
  72. package/lib/console/VirtualConsole.d.ts.map +1 -0
  73. package/lib/console/VirtualConsole.js +322 -0
  74. package/lib/console/VirtualConsole.js.map +1 -0
  75. package/lib/console/VirtualConsolePrinter.d.ts +55 -0
  76. package/lib/console/VirtualConsolePrinter.d.ts.map +1 -0
  77. package/lib/console/VirtualConsolePrinter.js +95 -0
  78. package/lib/console/VirtualConsolePrinter.js.map +1 -0
  79. package/lib/console/enums/VirtualConsoleLogLevelEnum.d.ts +13 -0
  80. package/lib/console/enums/VirtualConsoleLogLevelEnum.d.ts.map +1 -0
  81. package/lib/console/enums/VirtualConsoleLogLevelEnum.js +14 -0
  82. package/lib/console/enums/VirtualConsoleLogLevelEnum.js.map +1 -0
  83. package/lib/console/enums/VirtualConsoleLogTypeEnum.d.ts +23 -0
  84. package/lib/console/enums/VirtualConsoleLogTypeEnum.d.ts.map +1 -0
  85. package/lib/console/enums/VirtualConsoleLogTypeEnum.js +28 -0
  86. package/lib/console/enums/VirtualConsoleLogTypeEnum.js.map +1 -0
  87. package/lib/console/types/IVirtualConsoleLogEntry.d.ts +10 -0
  88. package/lib/console/types/IVirtualConsoleLogEntry.d.ts.map +1 -0
  89. package/lib/console/types/IVirtualConsoleLogEntry.js +2 -0
  90. package/lib/console/types/IVirtualConsoleLogEntry.js.map +1 -0
  91. package/lib/console/types/IVirtualConsoleLogGroup.d.ts +7 -0
  92. package/lib/console/types/IVirtualConsoleLogGroup.d.ts.map +1 -0
  93. package/lib/console/types/IVirtualConsoleLogGroup.js +2 -0
  94. package/lib/console/types/IVirtualConsoleLogGroup.js.map +1 -0
  95. package/lib/console/types/IVirtualConsolePrinter.d.ts +52 -0
  96. package/lib/console/types/IVirtualConsolePrinter.d.ts.map +1 -0
  97. package/lib/console/types/IVirtualConsolePrinter.js +2 -0
  98. package/lib/console/types/IVirtualConsolePrinter.js.map +1 -0
  99. package/lib/console/utilities/VirtualConsoleLogEntryStringifier.d.ts +35 -0
  100. package/lib/console/utilities/VirtualConsoleLogEntryStringifier.d.ts.map +1 -0
  101. package/lib/console/utilities/VirtualConsoleLogEntryStringifier.js +91 -0
  102. package/lib/console/utilities/VirtualConsoleLogEntryStringifier.js.map +1 -0
  103. package/lib/event/EventTarget.d.ts.map +1 -1
  104. package/lib/event/EventTarget.js +23 -5
  105. package/lib/event/EventTarget.js.map +1 -1
  106. package/lib/nodes/element/Element.d.ts +1 -1
  107. package/lib/nodes/element/Element.d.ts.map +1 -1
  108. package/lib/nodes/element/Element.js.map +1 -1
  109. package/lib/nodes/html-link-element/HTMLLinkElementUtility.d.ts +0 -7
  110. package/lib/nodes/html-link-element/HTMLLinkElementUtility.d.ts.map +1 -1
  111. package/lib/nodes/html-link-element/HTMLLinkElementUtility.js +8 -31
  112. package/lib/nodes/html-link-element/HTMLLinkElementUtility.js.map +1 -1
  113. package/lib/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  114. package/lib/nodes/html-script-element/HTMLScriptElement.js +2 -1
  115. package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
  116. package/lib/nodes/html-script-element/HTMLScriptElementUtility.d.ts +0 -14
  117. package/lib/nodes/html-script-element/HTMLScriptElementUtility.d.ts.map +1 -1
  118. package/lib/nodes/html-script-element/HTMLScriptElementUtility.js +10 -55
  119. package/lib/nodes/html-script-element/HTMLScriptElementUtility.js.map +1 -1
  120. package/lib/window/GlobalWindow.d.ts +1 -7
  121. package/lib/window/GlobalWindow.d.ts.map +1 -1
  122. package/lib/window/GlobalWindow.js +1 -9
  123. package/lib/window/GlobalWindow.js.map +1 -1
  124. package/lib/window/IHappyDOMOptions.d.ts +2 -0
  125. package/lib/window/IHappyDOMOptions.d.ts.map +1 -1
  126. package/lib/window/IWindow.d.ts +2 -7
  127. package/lib/window/IWindow.d.ts.map +1 -1
  128. package/lib/window/VMGlobalPropertyScript.d.ts +1 -1
  129. package/lib/window/VMGlobalPropertyScript.d.ts.map +1 -1
  130. package/lib/window/VMGlobalPropertyScript.js +1 -0
  131. package/lib/window/VMGlobalPropertyScript.js.map +1 -1
  132. package/lib/window/Window.d.ts +6 -23
  133. package/lib/window/Window.d.ts.map +1 -1
  134. package/lib/window/Window.js +51 -64
  135. package/lib/window/Window.js.map +1 -1
  136. package/lib/window/WindowErrorUtility.d.ts +38 -0
  137. package/lib/window/WindowErrorUtility.d.ts.map +1 -0
  138. package/lib/window/WindowErrorUtility.js +78 -0
  139. package/lib/window/WindowErrorUtility.js.map +1 -0
  140. package/package.json +2 -2
  141. package/src/console/VirtualConsole.ts +356 -0
  142. package/src/console/VirtualConsolePrinter.ts +107 -0
  143. package/src/console/enums/VirtualConsoleLogLevelEnum.ts +12 -0
  144. package/src/console/enums/VirtualConsoleLogTypeEnum.ts +29 -0
  145. package/src/console/types/IVirtualConsoleLogEntry.ts +10 -0
  146. package/src/console/types/IVirtualConsoleLogGroup.ts +6 -0
  147. package/src/console/types/IVirtualConsolePrinter.ts +58 -0
  148. package/src/console/utilities/VirtualConsoleLogEntryStringifier.ts +100 -0
  149. package/src/event/EventTarget.ts +27 -5
  150. package/src/nodes/element/Element.ts +1 -1
  151. package/src/nodes/html-link-element/HTMLLinkElementUtility.ts +13 -35
  152. package/src/nodes/html-script-element/HTMLScriptElement.ts +4 -1
  153. package/src/nodes/html-script-element/HTMLScriptElementUtility.ts +19 -62
  154. package/src/window/GlobalWindow.ts +1 -10
  155. package/src/window/IHappyDOMOptions.ts +1 -0
  156. package/src/window/IWindow.ts +2 -8
  157. package/src/window/VMGlobalPropertyScript.ts +1 -0
  158. package/src/window/Window.ts +77 -70
  159. package/src/window/WindowErrorUtility.ts +94 -0
  160. package/tsconfig.json +2 -3
@@ -119,6 +119,9 @@ import FormData from '../form-data/FormData.js';
119
119
  import AbortController from '../fetch/AbortController.js';
120
120
  import AbortSignal from '../fetch/AbortSignal.js';
121
121
  import DOMExceptionNameEnum from '../exception/DOMExceptionNameEnum.js';
122
+ import WindowErrorUtility from './WindowErrorUtility.js';
123
+ import VirtualConsole from '../console/VirtualConsole.js';
124
+ import VirtualConsolePrinter from '../console/VirtualConsolePrinter.js';
122
125
  const ORIGINAL_SET_TIMEOUT = setTimeout;
123
126
  const ORIGINAL_CLEAR_TIMEOUT = clearTimeout;
124
127
  const ORIGINAL_SET_INTERVAL = setInterval;
@@ -153,9 +156,6 @@ export default class Window extends EventTarget {
153
156
  this.happyDOM.asyncTaskManager.cancelAll();
154
157
  },
155
158
  asyncTaskManager: new AsyncTaskManager(),
156
- setURL: (url) => {
157
- this.location.href = url;
158
- },
159
159
  setWindowSize: (options) => {
160
160
  if ((options.width !== undefined && this.innerWidth !== options.width) ||
161
161
  (options.height !== undefined && this.innerHeight !== options.height)) {
@@ -170,6 +170,10 @@ export default class Window extends EventTarget {
170
170
  this.dispatchEvent(new Event('resize'));
171
171
  }
172
172
  },
173
+ virtualConsolePrinter: null,
174
+ setURL: (url) => {
175
+ this.location.href = url;
176
+ },
173
177
  settings: {
174
178
  disableJavaScriptEvaluation: false,
175
179
  disableJavaScriptFileLoading: false,
@@ -182,15 +186,7 @@ export default class Window extends EventTarget {
182
186
  mediaType: 'screen'
183
187
  }
184
188
  },
185
- /**
186
- * @param width The width of the viewport.
187
- * @deprecated
188
- */
189
189
  setInnerWidth: (width) => this.happyDOM.setWindowSize({ width }),
190
- /**
191
- * @param height The height of the viewport.
192
- * @deprecated
193
- */
194
190
  setInnerHeight: (height) => this.happyDOM.setWindowSize({ height })
195
191
  };
196
192
  // Global classes
@@ -301,7 +297,6 @@ export default class Window extends EventTarget {
301
297
  // Events
302
298
  this.onload = null;
303
299
  this.onerror = null;
304
- this.console = console;
305
300
  this.self = this;
306
301
  this.top = this;
307
302
  this.parent = this;
@@ -309,6 +304,10 @@ export default class Window extends EventTarget {
309
304
  this.globalThis = this;
310
305
  this.devicePixelRatio = 1;
311
306
  this.performance = PerfHooks.performance;
307
+ this.innerWidth = 1024;
308
+ this.innerHeight = 768;
309
+ this.outerWidth = 1024;
310
+ this.outerHeight = 768;
312
311
  this.Buffer = Buffer;
313
312
  // Public internal properties
314
313
  // Used for tracking capture event listeners to improve performance when they are not used.
@@ -321,42 +320,43 @@ export default class Window extends EventTarget {
321
320
  this.screen = new Screen();
322
321
  this.sessionStorage = new Storage();
323
322
  this.localStorage = new Storage();
324
- if (options && options.width !== undefined) {
325
- this.innerWidth = options.width;
326
- this.outerWidth = options.width;
327
- }
328
- else if (options && options.innerWidth !== undefined) {
329
- this.innerWidth = options.innerWidth;
330
- this.outerWidth = options.innerWidth;
331
- }
332
- else {
333
- this.innerWidth = 1024;
334
- this.outerWidth = 1024;
335
- }
336
- if (options && options.height !== undefined) {
337
- this.innerHeight = options.height;
338
- this.outerHeight = options.height;
323
+ if (options) {
324
+ if (options.width !== undefined) {
325
+ this.innerWidth = options.width;
326
+ this.outerWidth = options.width;
327
+ }
328
+ else if (options.innerWidth !== undefined) {
329
+ this.innerWidth = options.innerWidth;
330
+ this.outerWidth = options.innerWidth;
331
+ }
332
+ if (options.height !== undefined) {
333
+ this.innerHeight = options.height;
334
+ this.outerHeight = options.height;
335
+ }
336
+ else if (options.innerHeight !== undefined) {
337
+ this.innerHeight = options.innerHeight;
338
+ this.outerHeight = options.innerHeight;
339
+ }
340
+ if (options.url !== undefined) {
341
+ this.location.href = options.url;
342
+ }
343
+ if (options.settings) {
344
+ this.happyDOM.settings = {
345
+ ...this.happyDOM.settings,
346
+ ...options.settings,
347
+ device: {
348
+ ...this.happyDOM.settings.device,
349
+ ...options.settings.device
350
+ }
351
+ };
352
+ }
339
353
  }
340
- else if (options && options.innerHeight !== undefined) {
341
- this.innerHeight = options.innerHeight;
342
- this.outerHeight = options.innerHeight;
354
+ if (options && options.console) {
355
+ this.console = options.console;
343
356
  }
344
357
  else {
345
- this.innerHeight = 768;
346
- this.outerHeight = 768;
347
- }
348
- if (options && options.url !== undefined) {
349
- this.location.href = options.url;
350
- }
351
- if (options && options.settings) {
352
- this.happyDOM.settings = {
353
- ...this.happyDOM.settings,
354
- ...options.settings,
355
- device: {
356
- ...this.happyDOM.settings.device,
357
- ...options.settings.device
358
- }
359
- };
358
+ this.happyDOM.virtualConsolePrinter = new VirtualConsolePrinter();
359
+ this.console = new VirtualConsole(this.happyDOM.virtualConsolePrinter);
360
360
  }
361
361
  this._setTimeout = ORIGINAL_SET_TIMEOUT;
362
362
  this._clearTimeout = ORIGINAL_CLEAR_TIMEOUT;
@@ -474,19 +474,6 @@ export default class Window extends EventTarget {
474
474
  get CSS() {
475
475
  return new CSS();
476
476
  }
477
- /**
478
- * Evaluates code.
479
- *
480
- * @override
481
- * @param code Code.
482
- * @returns Result.
483
- */
484
- eval(code) {
485
- if (VM.isContext(this)) {
486
- return VM.runInContext(code, this);
487
- }
488
- return eval(code);
489
- }
490
477
  /**
491
478
  * Returns an object containing the values of all CSS properties of an element.
492
479
  *
@@ -566,7 +553,7 @@ export default class Window extends EventTarget {
566
553
  setTimeout(callback, delay = 0, ...args) {
567
554
  const id = this._setTimeout(() => {
568
555
  this.happyDOM.asyncTaskManager.endTimer(id);
569
- callback(...args);
556
+ WindowErrorUtility.captureErrorSync(this, () => callback(...args));
570
557
  }, delay);
571
558
  this.happyDOM.asyncTaskManager.startTimer(id);
572
559
  return id;
@@ -589,7 +576,9 @@ export default class Window extends EventTarget {
589
576
  * @returns Interval ID.
590
577
  */
591
578
  setInterval(callback, delay = 0, ...args) {
592
- const id = this._setInterval(callback, delay, ...args);
579
+ const id = this._setInterval(() => {
580
+ WindowErrorUtility.captureErrorSync(this, () => callback(...args), () => this.clearInterval(id));
581
+ }, delay);
593
582
  this.happyDOM.asyncTaskManager.startTimer(id);
594
583
  return id;
595
584
  }
@@ -609,9 +598,7 @@ export default class Window extends EventTarget {
609
598
  * @returns Timeout ID.
610
599
  */
611
600
  requestAnimationFrame(callback) {
612
- return this.setTimeout(() => {
613
- callback(this.performance.now());
614
- });
601
+ return this.setTimeout(() => callback(this.performance.now()));
615
602
  }
616
603
  /**
617
604
  * Mock animation frames with timeouts.
@@ -631,8 +618,8 @@ export default class Window extends EventTarget {
631
618
  const taskId = this.happyDOM.asyncTaskManager.startTask(() => (isAborted = true));
632
619
  this._queueMicrotask(() => {
633
620
  if (!isAborted) {
621
+ WindowErrorUtility.captureErrorSync(this, callback);
634
622
  this.happyDOM.asyncTaskManager.endTask(taskId);
635
- callback();
636
623
  }
637
624
  });
638
625
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Window.js","sourceRoot":"","sources":["../../src/window/Window.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,4CAA4C,CAAC;AAC/E,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,YAAY,MAAM,wCAAwC,CAAC;AAClE,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,IAAI,MAAM,uBAAuB,CAAC;AACzC,OAAO,UAAU,MAAM,8BAA8B,CAAC;AACtD,OAAO,IAAI,MAAM,uBAAuB,CAAC;AACzC,OAAO,OAAO,MAAM,6BAA6B,CAAC;AAClD,OAAO,UAAU,MAAM,oCAAoC,CAAC;AAC5D,OAAO,OAAO,MAAM,6BAA6B,CAAC;AAClD,OAAO,mBAAmB,MAAM,uDAAuD,CAAC;AACxF,OAAO,eAAe,MAAM,+CAA+C,CAAC;AAC5E,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,kBAAkB,MAAM,qDAAqD,CAAC;AACrF,OAAO,gBAAgB,MAAM,iDAAiD,CAAC;AAC/E,OAAO,iBAAiB,MAAM,mDAAmD,CAAC;AAClF,OAAO,mBAAmB,MAAM,wDAAwD,CAAC;AACzF,OAAO,eAAe,MAAM,+CAA+C,CAAC;AAC5E,OAAO,gBAAgB,MAAM,iDAAiD,CAAC;AAC/E,OAAO,eAAe,MAAM,+CAA+C,CAAC;AAC5E,OAAO,gBAAgB,MAAM,iDAAiD,CAAC;AAC/E,OAAO,eAAe,MAAM,+CAA+C,CAAC;AAC5E,OAAO,gBAAgB,MAAM,iDAAiD,CAAC;AAC/E,OAAO,gBAAgB,MAAM,iDAAiD,CAAC;AAC/E,OAAO,mBAAmB,MAAM,sCAAsC,CAAC;AACvE,OAAO,gBAAgB,MAAM,iDAAiD,CAAC;AAC/E,OAAO,eAAe,MAAM,+CAA+C,CAAC;AAC5E,OAAO,iBAAiB,MAAM,mDAAmD,CAAC;AAClF,OAAO,iBAAiB,MAAM,mDAAmD,CAAC;AAClF,OAAO,aAAa,MAAM,uCAAuC,CAAC;AAClE,OAAO,UAAU,MAAM,oCAAoC,CAAC;AAC5D,OAAO,kBAAkB,MAAM,4CAA4C,CAAC;AAC5E,OAAO,iBAAiB,MAAM,mDAAmD,CAAC;AAClF,OAAO,gBAAgB,MAAM,iDAAiD,CAAC;AAC/E,OAAO,mBAAmB,MAAM,sCAAsC,CAAC;AACvE,OAAO,gBAAgB,MAAM,gDAAgD,CAAC;AAC9E,OAAO,aAAa,MAAM,0CAA0C,CAAC;AACrE,OAAO,YAAY,MAAM,gCAAgC,CAAC;AAC1D,OAAO,UAAU,MAAM,8BAA8B,CAAC;AACtD,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,cAAc,MAAM,mCAAmC,CAAC;AAC/D,OAAO,aAAa,MAAM,kCAAkC,CAAC;AAC7D,OAAO,YAAY,MAAM,iCAAiC,CAAC;AAC3D,OAAO,aAAa,MAAM,kCAAkC,CAAC;AAC7D,OAAO,mBAAmB,MAAM,wCAAwC,CAAC;AACzE,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AAC3C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,wBAAwB,MAAM,sCAAsC,CAAC;AAC5E,OAAO,gBAAgB,MAAM,0CAA0C,CAAC;AACxE,OAAO,6BAA6B,MAAM,4CAA4C,CAAC;AACvF,OAAO,uBAAuB,MAAM,4BAA4B,CAAC;AACjE,OAAO,aAAa,MAAM,oCAAoC,CAAC;AAC/D,OAAO,cAAc,MAAM,sCAAsC,CAAC;AAClE,OAAO,IAAI,MAAM,iBAAiB,CAAC;AACnC,OAAO,IAAI,MAAM,iBAAiB,CAAC;AACnC,OAAO,YAAY,MAAM,8BAA8B,CAAC;AACxD,OAAO,wBAAwB,MAAM,uBAAuB,CAAC;AAC7D,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAC5C,OAAO,aAAa,MAAM,yBAAyB,CAAC;AACpD,OAAO,mBAAmB,MAAM,2CAA2C,CAAC;AAC5E,OAAO,GAAG,MAAM,eAAe,CAAC;AAChC,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAClD,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAChE,OAAO,eAAe,MAAM,iCAAiC,CAAC;AAC9D,OAAO,eAAe,MAAM,iCAAiC,CAAC;AAC9D,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAChE,OAAO,YAAY,MAAM,8BAA8B,CAAC;AACxD,OAAO,YAAY,MAAM,8BAA8B,CAAC;AACxD,OAAO,eAAe,MAAM,iCAAiC,CAAC;AAC9D,OAAO,UAAU,MAAM,+BAA+B,CAAC;AACvD,OAAO,YAAY,MAAM,iCAAiC,CAAC;AAC3D,OAAO,UAAU,MAAM,+BAA+B,CAAC;AACvD,OAAO,UAAU,MAAM,+BAA+B,CAAC;AACvD,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,gBAAgB,MAAM,8BAA8B,CAAC;AAC5D,OAAO,oBAAoB,MAAM,kCAAkC,CAAC;AACpE,OAAO,UAAU,MAAM,+BAA+B,CAAC;AACvD,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,UAAU,MAAM,+BAA+B,CAAC;AACvD,OAAO,YAAY,MAAM,iCAAiC,CAAC;AAC3D,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,gBAAgB,MAAM,2CAA2C,CAAC;AAOzE,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,qBAAqB,MAAM,qBAAqB,CAAC;AACxD,OAAO,sBAAsB,MAAM,sBAAsB,CAAC;AAC1D,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAE5C,OAAO,cAAc,MAAM,oCAAoC,CAAC;AAChE,OAAO,0BAA0B,MAAM,0DAA0D,CAAC;AAClG,OAAO,QAAQ,MAAM,2BAA2B,CAAC;AACjD,OAAO,cAAc,MAAM,kCAAkC,CAAC;AAC9D,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAClD,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAClD,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAChD,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAC5C,OAAO,WAAW,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,mBAAmB,MAAM,mBAAmB,CAAC;AAEpD,OAAO,sBAAsB,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,4BAA4B,MAAM,uCAAuC,CAAC;AACjF,OAAO,oBAAoB,MAAM,6CAA6C,CAAC;AAC/E,OAAO,yBAAyB,MAAM,kDAAkD,CAAC;AACzF,OAAO,MAAM,MAAM,qBAAqB,CAAC;AAEzC,OAAO,IAAI,MAAM,uBAAuB,CAAC;AACzC,OAAO,YAAY,MAAM,mCAAmC,CAAC;AAE7D,OAAO,qBAAqB,MAAM,0DAA0D,CAAC;AAE7F,OAAO,QAAQ,MAAM,yCAAyC,CAAC;AAC/D,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAChD,OAAO,eAAe,MAAM,6BAA6B,CAAC;AAC1D,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAGlD,OAAO,oBAAoB,MAAM,sCAAsC,CAAC;AAKxE,MAAM,oBAAoB,GAAG,UAAU,CAAC;AACxC,MAAM,sBAAsB,GAAG,YAAY,CAAC;AAC5C,MAAM,qBAAqB,GAAG,WAAW,CAAC;AAC1C,MAAM,uBAAuB,GAAG,aAAa,CAAC;AAC9C,MAAM,wBAAwB,GAAG,cAAc,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,WAAW;IAqR9C;;;;;;;;;;OAUG;IACH,YAAY,OAA0B;QACrC,KAAK,EAAE,CAAC;QAhST,yBAAyB;QACT,aAAQ,GAAG;YAC1B,iBAAiB,EAAE,KAAK,IAAmB,EAAE;gBAC5C,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;YAC5D,CAAC;YACD,WAAW,EAAE,GAAS,EAAE;gBACvB,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAC5C,CAAC;YACD,gBAAgB,EAAE,IAAI,gBAAgB,EAAE;YACxC,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE;gBACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC;YAC1B,CAAC;YACD,aAAa,EAAE,CAAC,OAA4C,EAAQ,EAAE;gBACrE,IACC,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,CAAC,KAAK,CAAC;oBAClE,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,EACpE;oBACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,CAAC,KAAK,EAAE;wBAC5D,IAAI,CAAC,UAAW,GAAG,OAAO,CAAC,KAAK,CAAC;wBACjC,IAAI,CAAC,UAAW,GAAG,OAAO,CAAC,KAAK,CAAC;qBAC1C;oBAED,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,MAAM,EAAE;wBAC/D,IAAI,CAAC,WAAY,GAAG,OAAO,CAAC,MAAM,CAAC;wBACnC,IAAI,CAAC,WAAY,GAAG,OAAO,CAAC,MAAM,CAAC;qBAC5C;oBAED,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;iBACxC;YACF,CAAC;YACD,QAAQ,EAAE;gBACT,2BAA2B,EAAE,KAAK;gBAClC,4BAA4B,EAAE,KAAK;gBACnC,qBAAqB,EAAE,KAAK;gBAC5B,wBAAwB,EAAE,KAAK;gBAC/B,6BAA6B,EAAE,KAAK;gBACpC,4BAA4B,EAAE,KAAK;gBACnC,MAAM,EAAE;oBACP,kBAAkB,EAAE,OAAO;oBAC3B,SAAS,EAAE,QAAQ;iBACnB;aACD;YAED;;;eAGG;YACH,aAAa,EAAE,CAAC,KAAa,EAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;YAE9E;;;eAGG;YACH,cAAc,EAAE,CAAC,MAAc,EAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;SACjF,CAAC;QAEF,iBAAiB;QACD,SAAI,GAAG,IAAI,CAAC;QACZ,gBAAW,GAAG,WAAW,CAAC;QAC1B,uBAAkB,GAAG,kBAAkB,CAAC;QACxC,wBAAmB,GAAG,mBAAmB,CAAC;QAC1C,oBAAe,GAAG,eAAe,CAAC;QAClC,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,sBAAiB,GAAG,iBAAiB,CAAC;QACtC,wBAAmB,GAAG,mBAAmB,CAAC;QAC1C,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,sBAAiB,GAAG,iBAAiB,CAAC;QACtC,oBAAe,GAAG,eAAe,CAAC;QAClC,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,oBAAe,GAAG,eAAe,CAAC;QAClC,oBAAe,GAAG,eAAe,CAAC;QAClC,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,oBAAe,GAAG,eAAe,CAAC;QAClC,sBAAiB,GAAG,iBAAiB,CAAC;QACtC,sBAAiB,GAAG,iBAAiB,CAAC;QACtC,SAAI,GAAG,IAAI,CAAC;QACZ,iBAAY,GAAG,YAAY,CAAC;QAC5B,kBAAa,GAAG,aAAa,CAAC;QAC9B,eAAU,GAAG,UAAU,CAAC;QACxB,uBAAkB,GAAG,kBAAkB,CAAC;QACxC,SAAI,GAAG,IAAI,CAAC;QACZ,YAAO,GAAG,OAAO,CAAC;QAClB,eAAU,GAAG,UAAU,CAAC;QACxB,0BAAqB,GAAG,qBAAqB,CAAC;QAC9C,YAAO,GAAG,OAAO,CAAC;QAClB,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,kBAAa,GAAG,aAAa,CAAC;QAC9B,eAAU,GAAG,UAAU,CAAC;QACxB,iBAAY,GAAG,YAAY,CAAC;QAC5B,eAAU,GAAG,UAAU,CAAC;QACxB,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,aAAQ,GAAG,QAAQ,CAAC;QACpB,iBAAY,GAAG,YAAY,CAAC;QAC5B,gBAAW,GAAG,WAAW,CAAC;QAC1B,gBAAW,GAAG,WAAW,CAAC;QAC1B,UAAK,GAAG,KAAK,CAAC;QACd,YAAO,GAAG,OAAO,CAAC;QAClB,gBAAW,GAAG,WAAW,CAAC;QAC1B,mBAAc,GAAG,cAAc,CAAC;QAChC,kBAAa,GAAG,aAAa,CAAC;QAC9B,iBAAY,GAAG,YAAY,CAAC;QAC5B,eAAU,GAAG,UAAU,CAAC;QACxB,iBAAY,GAAG,YAAY,CAAC;QAC5B,eAAU,GAAG,UAAU,CAAC;QACxB,eAAU,GAAG,UAAU,CAAC;QACxB,eAAU,GAAG,UAAU,CAAC;QACxB,eAAU,GAAG,UAAU,CAAC;QACxB,iBAAY,GAAG,YAAY,CAAC;QAC5B,gBAAW,GAAG,WAAW,CAAC;QAC1B,kBAAa,GAAG,aAAa,CAAC;QAC9B,wBAAmB,GAAG,mBAAmB,CAAC;QAC1C,gBAAW,GAAG,WAAW,CAAC;QAC1B,gBAAW,GAAG,WAAW,CAAC;QAC1B,iBAAY,GAAG,YAAY,CAAC;QAC5B,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,yBAAoB,GAAG,oBAAoB,CAAC;QAC5C,QAAG,GAAG,GAAG,CAAC;QACV,aAAQ,GAAG,QAAQ,CAAC;QACpB,0BAAqB,GAAG,qBAAqB,CAAC;QAC9C,WAAM,GAAkB,IAAI,CAAC,WAAW,CAAC;QACzC,kBAAa,GAAG,aAAa,CAAC;QAC9B,mBAAc,GAAG,cAAc,CAAC;QAChC,kBAAa,GAAG,aAAa,CAAC;QAC9B,SAAI,GAAG,IAAI,CAAC;QACZ,SAAI,GAAG,IAAI,CAAC;QACZ,iBAAY,GAAG,YAAY,CAAC;QAC5B,YAAO,GAAG,OAAO,CAAC;QAClB,WAAM,GAAG,MAAM,CAAC;QAChB,YAAO,GAAG,OAAO,CAAC;QAClB,oBAAe,GAAG,eAAe,CAAC;QAClC,mBAAc,GAAG,cAAc,CAAC;QAChC,+BAA0B,GAAG,0BAA0B,CAAC;QACxD,aAAQ,GAAG,QAAQ,CAAC;QACpB,iBAAY,GAAG,YAAY,CAAC;QAC5B,YAAO,GAAG,OAAO,CAAC;QAClB,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,oBAAe,GAAG,eAAe,CAAC;QAClC,oBAAe,GAAG,eAAe,CAAC;QAClC,qBAAgB,GAAG,gBAAgB,CAAC;QACpC,iBAAY,GAAG,YAAY,CAAC;QAC5B,iBAAY,GAAG,YAAY,CAAC;QAC5B,oBAAe,GAAG,eAAe,CAAC;QAClC,cAAS,GAAG,SAAS,CAAC;QACtB,cAAS,GAAG,SAAS,CAAC;QACtB,aAAQ,GAAG,QAAQ,CAAC;QACpB,kBAAa,GAAG,aAAa,CAAC;QAC9B,WAAM,GAAG,MAAM,CAAC;QAChB,gBAAW,GAAG,WAAW,CAAC;QAC1B,aAAQ,GAAG,QAAQ,CAAC;QACpB,YAAO,GAA4C,OAAO,CAAC;QAU3D,yBAAoB,GAAG,oBAAoB,CAAC;QAC5C,8BAAyB,GAAG,yBAAyB,CAAC;QACtD,mBAAc,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,mBAAc,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,oBAAe,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,oBAAe,GAAG,eAAe,CAAC;QAClC,gBAAW,GAAG,WAAW,CAAC;QAC1B,aAAQ,GAAG,QAAQ,CAAC;QAQpC,SAAS;QACF,WAAM,GAA2B,IAAI,CAAC;QACtC,YAAO,GAAgC,IAAI,CAAC;QAQnC,YAAO,GAAG,OAAO,CAAC;QAClB,SAAI,GAAG,IAAI,CAAC;QACZ,QAAG,GAAG,IAAI,CAAC;QACX,WAAM,GAAG,IAAI,CAAC;QACd,WAAM,GAAG,IAAI,CAAC;QACd,eAAU,GAAG,IAAI,CAAC;QAElB,qBAAgB,GAAG,CAAC,CAAC;QAGrB,gBAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QAU7C,WAAM,GAAG,MAAM,CAAC;QAwDvB,6BAA6B;QAE7B,2FAA2F;QAC3F,yBAAyB;QAClB,+BAA0B,GAAoC,EAAE,CAAC;QAuBvE,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAqB,EAAE,CAAC;QAClD,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,EAAE,CAAC;QAElC,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE;YAC3C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;YAChC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;SAChC;aAAM,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE;YACvD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YACrC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;SACrC;aAAM;YACN,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;SACvB;QAED,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE;YAC5C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;YAClC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;SAClC;aAAM,IAAI,OAAO,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE;YACxD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACvC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;SACvC;aAAM;YACN,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;YACvB,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;SACvB;QAED,IAAI,OAAO,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE;YACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;SACjC;QAED,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE;YAChC,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG;gBACxB,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBACzB,GAAG,OAAO,CAAC,QAAQ;gBACnB,MAAM,EAAE;oBACP,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM;oBAChC,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM;iBAC1B;aACD,CAAC;SACF;QAED,IAAI,CAAC,WAAW,GAAG,oBAAoB,CAAC;QACxC,IAAI,CAAC,aAAa,GAAG,sBAAsB,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,qBAAqB,CAAC;QAC1C,IAAI,CAAC,cAAc,GAAG,uBAAuB,CAAC;QAC9C,IAAI,CAAC,eAAe,GAAG,wBAAwB,CAAC;QAEhD,8BAA8B;QAC9B,KAAK,MAAM,SAAS,IAAI,wBAAwB,EAAE;YACjD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBACrB,IAAI,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;aACxB;SACD;QAED,kCAAkC;QAClC,KAAK,MAAM,SAAS,IAAI,6BAA6B,EAAE;YACtD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBACrB,IAAI,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC;aAC9B;SACD;QAED,6FAA6F;QAC7F,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CACpE,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC,SAAS,CAAC,CACjD,EAAE;YACF,IACC,GAAG,KAAK,aAAa;gBACrB,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;gBACd,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;gBAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,UAAU,EAC9B;gBACD,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjC;SACD;QAED,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACjC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QAEnC,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QAEpC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,2EAA2E;QAC3E,wGAAwG;QAExG,sBAAsB,CAAC,cAAc,GAAG,QAAQ,CAAC;QACjD,qBAAqB,CAAC,cAAc,GAAG,QAAQ,CAAC;QAChD,mBAAmB,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC9C,wBAAwB,CAAC,cAAc,GAAG,QAAQ,CAAC;QACnD,uBAAuB,CAAC,cAAc,GAAG,QAAQ,CAAC;QAClD,mBAAmB,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC9C,4BAA4B,CAAC,cAAc,GAAG,QAAQ,CAAC;QAEvD,wCAAwC;QACxC,MAAM,QAAS,SAAQ,sBAAsB;;QAC9B,uBAAc,GAAc,QAAQ,CAAC;QAEpD,MAAM,OAAQ,SAAQ,qBAAqB;;QAC5B,sBAAc,GAAc,QAAQ,CAAC;QAEpD,MAAM,KAAM,SAAQ,mBAAmB;;QACxB,oBAAc,GAAc,QAAQ,CAAC;QAEpD,MAAM,UAAW,SAAQ,wBAAwB;;QAClC,yBAAc,GAAc,QAAQ,CAAC;QAEpD,MAAM,SAAU,SAAQ,uBAAuB;;QAChC,wBAAc,GAAc,QAAQ,CAAC;QAEpD,MAAM,cAAe,SAAQ,4BAA4B;;QAC1C,6BAAc,GAAc,QAAQ,CAAC;QAEpD,MAAM,KAAM,SAAQ,mBAAmB;;QACxB,oBAAc,GAAc,QAAQ,CAAC;QAEpD,MAAM,KAAM,SAAQ,mBAAmB;;QACxB,oBAAc,GAAc,QAAQ,CAAC;QAEpD,uCAAuC;QAEvC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,IAAI,CAAC,eAAe,EAAE,CAAC;QAEvB,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,IAAW,OAAO;QACjB,OAAO,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,UAAU,IAAI,CAAC,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACH,IAAW,WAAW;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,IAAW,OAAO;QACjB,OAAO,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,IAAI,CAAC,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACH,IAAW,WAAW;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,IAAW,GAAG;QACb,OAAO,IAAI,GAAG,EAAE,CAAC;IAClB,CAAC;IAED;;;;;;OAMG;IACI,IAAI,CAAC,IAAY;QACvB,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACvB,OAAO,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;SACnC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACI,gBAAgB,CAAC,OAAiB;QACxC,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,IAAI,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAChG,OAAO,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACI,YAAY;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,CAA8D,EAAE,CAAU;QACvF,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;YAC1B,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,EAAE;gBAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE;oBACpB,IAAI,CAAC,CAAC,GAAG,KAAK,SAAS,EAAE;wBACf,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAU,GAAG,CAAC,CAAC,GAAG,CAAC;qBAC1D;oBACD,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE;wBAChB,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,UAAW,GAAG,CAAC,CAAC,IAAI,CAAC;qBAC5D;gBACF,CAAC,CAAC,CAAC;aACH;iBAAM;gBACN,IAAI,CAAC,CAAC,GAAG,KAAK,SAAS,EAAE;oBACf,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAU,GAAG,CAAC,CAAC,GAAG,CAAC;iBAC1D;gBACD,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE;oBAChB,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,UAAW,GAAG,CAAC,CAAC,IAAI,CAAC;iBAC5D;aACD;SACD;aAAM,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,EAAE;YACrC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,UAAW,GAAG,CAAC,CAAC;YAC9C,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAU,GAAG,CAAC,CAAC;SACtD;IACF,CAAC;IAED;;;;;OAKG;IACI,QAAQ,CACd,CAA8D,EAC9D,CAAU;QAEV,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACI,UAAU,CAAC,gBAAwB;QACzC,OAAO,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;;OAOG;IACI,UAAU,CAAC,QAAkB,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,IAAe;QAClE,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC5C,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;QACnB,CAAC,EAAE,KAAK,CAAC,CAAC;QACV,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,EAAE,CAAC;IACX,CAAC;IAED;;;;OAIG;IACI,YAAY,CAAC,EAAkB;QACrC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;OAOG;IACI,WAAW,CAAC,QAAkB,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,IAAe;QACnE,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,EAAE,CAAC;IACX,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,EAAkB;QACtC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACI,qBAAqB,CAAC,QAAqC;QACjE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE;YAC3B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,oBAAoB,CAAC,EAAkB;QAC7C,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACI,cAAc,CAAC,QAAkB;QACvC,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC;QAClF,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE;YACzB,IAAI,CAAC,SAAS,EAAE;gBACf,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC/C,QAAQ,EAAE,CAAC;aACX;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,KAAK,CAAC,GAAgB,EAAE,IAAmB;QACvD,OAAO,MAAM,IAAI,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5E,CAAC;IAED;;;;;;OAMG;IACI,IAAI,CAAC,IAAa;QACxB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;;;OAQG;IACI,IAAI,CAAC,IAAa;QACxB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;OAMG;IACI,WAAW,CAAC,OAAgB,EAAE,YAAY,GAAG,GAAG,EAAE,SAAqB;QAC7E,4BAA4B;QAE5B,IAAI,YAAY,IAAI,YAAY,KAAK,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,YAAY,EAAE;YAClF,MAAM,IAAI,YAAY,CACrB,6EAA6E,YAAY,sDAAsD,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,EACxK,oBAAoB,CAAC,aAAa,CAClC,CAAC;SACF;QAED,IAAI;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;SACxB;QAAC,OAAO,KAAK,EAAE;YACf,MAAM,IAAI,YAAY,CACrB,yFAAyF,EACzF,oBAAoB,CAAC,iBAAiB,CACtC,CAAC;SACF;QAED,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAC3B,IAAI,CAAC,aAAa,CACjB,IAAI,YAAY,CAAC,SAAS,EAAE;YAC3B,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;YACnC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,WAAW,EAAE,EAAE;SACf,CAAC,CACF,CACD,CAAC;IACH,CAAC;IAED;;OAEG;IACO,eAAe;QACxB,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACxB,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAEvB,2DAA2D;YAC3D,wDAAwD;YACxD,EAAE,CAAC,YAAY,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;SAC9C;IACF,CAAC;CACD"}
1
+ {"version":3,"file":"Window.js","sourceRoot":"","sources":["../../src/window/Window.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import IWindow from './IWindow.js';
2
+ import { IElement } from '../index.js';
3
+ /**
4
+ * Error utility.
5
+ */
6
+ export default class WindowErrorUtility {
7
+ /**
8
+ * Calls a function asynchronously wrapped in a try/catch block to capture errors and dispatch error events.
9
+ *
10
+ * It will also output the errors to the console.
11
+ *
12
+ * @param elementOrWindow Element or Window.
13
+ * @param callback Callback.
14
+ * @param [cleanup] Cleanup callback on error.
15
+ * @returns Promise.
16
+ */
17
+ static captureErrorAsync<T>(elementOrWindow: IWindow | IElement, callback: () => Promise<T>, cleanup?: () => void): Promise<T | null>;
18
+ /**
19
+ * Calls a function synchronously wrapped in a try/catch block to capture errors and dispatch error events.
20
+ * If the callback returns a Promise, it will catch errors from the promise.
21
+ *
22
+ * It will also output the errors to the console.
23
+ *
24
+ * @param elementOrWindow Element or Window.
25
+ * @param callback Callback.
26
+ * @param [cleanup] Cleanup callback on error.
27
+ * @returns Result.
28
+ */
29
+ static captureErrorSync<T>(elementOrWindow: IWindow | IElement, callback: () => T, cleanup?: () => void): T | null;
30
+ /**
31
+ * Dispatches an error event and outputs it to the console.
32
+ *
33
+ * @param elementOrWindow Element or Window.
34
+ * @param error Error.
35
+ */
36
+ static dispatchError(elementOrWindow: IWindow | IElement, error: Error): void;
37
+ }
38
+ //# sourceMappingURL=WindowErrorUtility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WindowErrorUtility.d.ts","sourceRoot":"","sources":["../../src/window/WindowErrorUtility.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAkB;IACtC;;;;;;;;;OASG;WACiB,iBAAiB,CAAC,CAAC,EACtC,eAAe,EAAE,OAAO,GAAG,QAAQ,EACnC,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,GAClB,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAYpB;;;;;;;;;;OAUG;WACW,gBAAgB,CAAC,CAAC,EAC/B,eAAe,EAAE,OAAO,GAAG,QAAQ,EACnC,QAAQ,EAAE,MAAM,CAAC,EACjB,OAAO,CAAC,EAAE,MAAM,IAAI,GAClB,CAAC,GAAG,IAAI;IAwBX;;;;;OAKG;WACW,aAAa,CAAC,eAAe,EAAE,OAAO,GAAG,QAAQ,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CAcpF"}
@@ -0,0 +1,78 @@
1
+ import ErrorEvent from '../event/events/ErrorEvent.js';
2
+ /**
3
+ * Error utility.
4
+ */
5
+ export default class WindowErrorUtility {
6
+ /**
7
+ * Calls a function asynchronously wrapped in a try/catch block to capture errors and dispatch error events.
8
+ *
9
+ * It will also output the errors to the console.
10
+ *
11
+ * @param elementOrWindow Element or Window.
12
+ * @param callback Callback.
13
+ * @param [cleanup] Cleanup callback on error.
14
+ * @returns Promise.
15
+ */
16
+ static async captureErrorAsync(elementOrWindow, callback, cleanup) {
17
+ try {
18
+ return await callback();
19
+ }
20
+ catch (error) {
21
+ this.dispatchError(elementOrWindow, error);
22
+ if (cleanup) {
23
+ cleanup();
24
+ }
25
+ }
26
+ return null;
27
+ }
28
+ /**
29
+ * Calls a function synchronously wrapped in a try/catch block to capture errors and dispatch error events.
30
+ * If the callback returns a Promise, it will catch errors from the promise.
31
+ *
32
+ * It will also output the errors to the console.
33
+ *
34
+ * @param elementOrWindow Element or Window.
35
+ * @param callback Callback.
36
+ * @param [cleanup] Cleanup callback on error.
37
+ * @returns Result.
38
+ */
39
+ static captureErrorSync(elementOrWindow, callback, cleanup) {
40
+ let result = null;
41
+ try {
42
+ result = callback();
43
+ }
44
+ catch (error) {
45
+ this.dispatchError(elementOrWindow, error);
46
+ if (cleanup) {
47
+ cleanup();
48
+ }
49
+ }
50
+ if (result && result instanceof Promise) {
51
+ result.catch((error) => {
52
+ this.dispatchError(elementOrWindow, error);
53
+ if (cleanup) {
54
+ cleanup();
55
+ }
56
+ });
57
+ }
58
+ return result;
59
+ }
60
+ /**
61
+ * Dispatches an error event and outputs it to the console.
62
+ *
63
+ * @param elementOrWindow Element or Window.
64
+ * @param error Error.
65
+ */
66
+ static dispatchError(elementOrWindow, error) {
67
+ if (elementOrWindow.console) {
68
+ elementOrWindow.console.error(error);
69
+ elementOrWindow.dispatchEvent(new ErrorEvent('error', { message: error.message, error }));
70
+ }
71
+ else {
72
+ elementOrWindow.ownerDocument.defaultView.console.error(error);
73
+ elementOrWindow.dispatchEvent(new ErrorEvent('error', { message: error.message, error }));
74
+ elementOrWindow.ownerDocument.defaultView.dispatchEvent(new ErrorEvent('error', { message: error.message, error }));
75
+ }
76
+ }
77
+ }
78
+ //# sourceMappingURL=WindowErrorUtility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WindowErrorUtility.js","sourceRoot":"","sources":["../../src/window/WindowErrorUtility.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,+BAA+B,CAAC;AAGvD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAkB;IACtC;;;;;;;;;OASG;IACI,MAAM,CAAC,KAAK,CAAC,iBAAiB,CACpC,eAAmC,EACnC,QAA0B,EAC1B,OAAoB;QAEpB,IAAI;YACH,OAAO,MAAM,QAAQ,EAAE,CAAC;SACxB;QAAC,OAAO,KAAK,EAAE;YACf,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;YAC3C,IAAI,OAAO,EAAE;gBACZ,OAAO,EAAE,CAAC;aACV;SACD;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;;;OAUG;IACI,MAAM,CAAC,gBAAgB,CAC7B,eAAmC,EACnC,QAAiB,EACjB,OAAoB;QAEpB,IAAI,MAAM,GAAG,IAAI,CAAC;QAElB,IAAI;YACH,MAAM,GAAG,QAAQ,EAAE,CAAC;SACpB;QAAC,OAAO,KAAK,EAAE;YACf,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;YAC3C,IAAI,OAAO,EAAE;gBACZ,OAAO,EAAE,CAAC;aACV;SACD;QAED,IAAI,MAAM,IAAI,MAAM,YAAY,OAAO,EAAE;YACxC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACtB,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;gBAC3C,IAAI,OAAO,EAAE;oBACZ,OAAO,EAAE,CAAC;iBACV;YACF,CAAC,CAAC,CAAC;SACH;QAED,OAAO,MAAM,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,aAAa,CAAC,eAAmC,EAAE,KAAY;QAC5E,IAAc,eAAgB,CAAC,OAAO,EAAE;YAC7B,eAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAChD,eAAe,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;SAC1F;aAAM;YACK,eAAgB,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAChE,eAAgB,CAAC,aAAa,CACxC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAC1D,CAAC;YACS,eAAgB,CAAC,aAAa,CAAC,WAAW,CAAC,aAAa,CAClE,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAC1D,CAAC;SACF;IACF,CAAC;CACD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "happy-dom",
3
- "version": "10.11.2",
3
+ "version": "11.0.0",
4
4
  "license": "MIT",
5
5
  "homepage": "https://github.com/capricorn86/happy-dom",
6
6
  "repository": "https://github.com/capricorn86/happy-dom",
@@ -73,7 +73,7 @@
73
73
  "test": "vitest run",
74
74
  "test:ui": "vitest --ui",
75
75
  "test:watch": "vitest",
76
- "test:debug": "vitest --inspect-brk --threads false"
76
+ "test:debug": "vitest run --inspect-brk --threads false"
77
77
  },
78
78
  "dependencies": {
79
79
  "css.escape": "^1.5.1",