happy-dom 15.0.0 → 15.2.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 (804) hide show
  1. package/cjs/ClassMethodBinder.cjs +8 -6
  2. package/cjs/ClassMethodBinder.cjs.map +1 -1
  3. package/cjs/ClassMethodBinder.d.ts +4 -2
  4. package/cjs/ClassMethodBinder.d.ts.map +1 -1
  5. package/cjs/PropertySymbol.cjs +20 -9
  6. package/cjs/PropertySymbol.cjs.map +1 -1
  7. package/cjs/PropertySymbol.d.ts +15 -4
  8. package/cjs/PropertySymbol.d.ts.map +1 -1
  9. package/cjs/async-task-manager/AsyncTaskManager.cjs +64 -35
  10. package/cjs/async-task-manager/AsyncTaskManager.cjs.map +1 -1
  11. package/cjs/async-task-manager/AsyncTaskManager.d.ts +11 -1
  12. package/cjs/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
  13. package/cjs/browser/Browser.cjs +30 -0
  14. package/cjs/browser/Browser.cjs.map +1 -1
  15. package/cjs/browser/Browser.d.ts +3 -0
  16. package/cjs/browser/Browser.d.ts.map +1 -1
  17. package/cjs/browser/BrowserFrame.cjs +3 -7
  18. package/cjs/browser/BrowserFrame.cjs.map +1 -1
  19. package/cjs/browser/BrowserFrame.d.ts +1 -4
  20. package/cjs/browser/BrowserFrame.d.ts.map +1 -1
  21. package/cjs/browser/DefaultBrowserSettings.cjs +2 -1
  22. package/cjs/browser/DefaultBrowserSettings.cjs.map +1 -1
  23. package/cjs/browser/DefaultBrowserSettings.d.ts.map +1 -1
  24. package/cjs/browser/detached-browser/DetachedBrowser.cjs +30 -0
  25. package/cjs/browser/detached-browser/DetachedBrowser.cjs.map +1 -1
  26. package/cjs/browser/detached-browser/DetachedBrowser.d.ts +3 -0
  27. package/cjs/browser/detached-browser/DetachedBrowser.d.ts.map +1 -1
  28. package/cjs/browser/detached-browser/DetachedBrowserFrame.cjs +3 -7
  29. package/cjs/browser/detached-browser/DetachedBrowserFrame.cjs.map +1 -1
  30. package/cjs/browser/detached-browser/DetachedBrowserFrame.d.ts +1 -4
  31. package/cjs/browser/detached-browser/DetachedBrowserFrame.d.ts.map +1 -1
  32. package/cjs/browser/types/IBrowser.cjs +24 -0
  33. package/cjs/browser/types/IBrowser.cjs.map +1 -1
  34. package/cjs/browser/types/IBrowser.d.ts +3 -0
  35. package/cjs/browser/types/IBrowser.d.ts.map +1 -1
  36. package/cjs/browser/types/IBrowserFrame.d.ts +0 -3
  37. package/cjs/browser/types/IBrowserFrame.d.ts.map +1 -1
  38. package/cjs/browser/types/IBrowserSettings.d.ts +1 -0
  39. package/cjs/browser/types/IBrowserSettings.d.ts.map +1 -1
  40. package/cjs/browser/utilities/BrowserExceptionObserver.cjs +100 -0
  41. package/cjs/browser/utilities/BrowserExceptionObserver.cjs.map +1 -0
  42. package/{lib/browser/utilities/BrowserFrameExceptionObserver.d.ts → cjs/browser/utilities/BrowserExceptionObserver.d.ts} +9 -7
  43. package/cjs/browser/utilities/BrowserExceptionObserver.d.ts.map +1 -0
  44. package/cjs/browser/utilities/BrowserFrameFactory.cjs +27 -35
  45. package/cjs/browser/utilities/BrowserFrameFactory.cjs.map +1 -1
  46. package/cjs/browser/utilities/BrowserFrameFactory.d.ts.map +1 -1
  47. package/cjs/browser/utilities/BrowserFrameNavigator.cjs +52 -29
  48. package/cjs/browser/utilities/BrowserFrameNavigator.cjs.map +1 -1
  49. package/cjs/browser/utilities/BrowserFrameNavigator.d.ts.map +1 -1
  50. package/cjs/clipboard/Clipboard.cjs +18 -15
  51. package/cjs/clipboard/Clipboard.cjs.map +1 -1
  52. package/cjs/clipboard/Clipboard.d.ts +2 -2
  53. package/cjs/clipboard/Clipboard.d.ts.map +1 -1
  54. package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs +27 -4
  55. package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs.map +1 -1
  56. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs +6 -5
  57. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs.map +1 -1
  58. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
  59. package/cjs/css/declaration/measurement-converter/CSSMeasurementConverter.cjs +5 -5
  60. package/cjs/css/declaration/measurement-converter/CSSMeasurementConverter.cjs.map +1 -1
  61. package/cjs/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts +2 -2
  62. package/cjs/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts.map +1 -1
  63. package/cjs/custom-element/CustomElementRegistry.cjs +37 -17
  64. package/cjs/custom-element/CustomElementRegistry.cjs.map +1 -1
  65. package/cjs/custom-element/CustomElementRegistry.d.ts +2 -3
  66. package/cjs/custom-element/CustomElementRegistry.d.ts.map +1 -1
  67. package/cjs/dom-implementation/DOMImplementation.cjs +12 -7
  68. package/cjs/dom-implementation/DOMImplementation.cjs.map +1 -1
  69. package/cjs/dom-implementation/DOMImplementation.d.ts +7 -3
  70. package/cjs/dom-implementation/DOMImplementation.d.ts.map +1 -1
  71. package/cjs/dom-parser/DOMParser.cjs +6 -15
  72. package/cjs/dom-parser/DOMParser.cjs.map +1 -1
  73. package/cjs/dom-parser/DOMParser.d.ts +2 -6
  74. package/cjs/dom-parser/DOMParser.d.ts.map +1 -1
  75. package/cjs/event/Event.cjs +76 -18
  76. package/cjs/event/Event.cjs.map +1 -1
  77. package/cjs/event/Event.d.ts +49 -7
  78. package/cjs/event/Event.d.ts.map +1 -1
  79. package/cjs/event/EventTarget.cjs +153 -141
  80. package/cjs/event/EventTarget.cjs.map +1 -1
  81. package/cjs/event/EventTarget.d.ts +12 -8
  82. package/cjs/event/EventTarget.d.ts.map +1 -1
  83. package/cjs/event/MessagePort.cjs.map +1 -1
  84. package/cjs/event/MessagePort.d.ts +1 -2
  85. package/cjs/event/MessagePort.d.ts.map +1 -1
  86. package/cjs/event/{IEventListener.cjs → TEventListener.cjs} +1 -1
  87. package/cjs/event/TEventListener.cjs.map +1 -0
  88. package/cjs/event/TEventListener.d.ts +5 -0
  89. package/cjs/event/TEventListener.d.ts.map +1 -0
  90. package/cjs/event/TEventListenerFunction.cjs +3 -0
  91. package/cjs/event/TEventListenerFunction.cjs.map +1 -0
  92. package/cjs/event/TEventListenerFunction.d.ts +4 -0
  93. package/cjs/event/TEventListenerFunction.d.ts.map +1 -0
  94. package/cjs/event/{IMessagePort.cjs → TEventListenerObject.cjs} +1 -1
  95. package/cjs/event/TEventListenerObject.cjs.map +1 -0
  96. package/cjs/event/TEventListenerObject.d.ts +6 -0
  97. package/cjs/event/TEventListenerObject.d.ts.map +1 -0
  98. package/cjs/event/events/CustomEvent.cjs +38 -6
  99. package/cjs/event/events/CustomEvent.cjs.map +1 -1
  100. package/cjs/event/events/CustomEvent.d.ts +8 -1
  101. package/cjs/event/events/CustomEvent.d.ts.map +1 -1
  102. package/cjs/event/events/IErrorEventInit.d.ts.map +1 -1
  103. package/cjs/event/events/IMessageEventInit.d.ts +2 -2
  104. package/cjs/event/events/IMessageEventInit.d.ts.map +1 -1
  105. package/cjs/event/events/MessageEvent.cjs.map +1 -1
  106. package/cjs/event/events/MessageEvent.d.ts +2 -2
  107. package/cjs/event/events/MessageEvent.d.ts.map +1 -1
  108. package/cjs/fetch/AbortController.cjs +2 -11
  109. package/cjs/fetch/AbortController.cjs.map +1 -1
  110. package/cjs/fetch/AbortController.d.ts +3 -4
  111. package/cjs/fetch/AbortController.d.ts.map +1 -1
  112. package/cjs/fetch/AbortSignal.cjs +48 -4
  113. package/cjs/fetch/AbortSignal.cjs.map +1 -1
  114. package/cjs/fetch/AbortSignal.d.ts +19 -0
  115. package/cjs/fetch/AbortSignal.d.ts.map +1 -1
  116. package/cjs/fetch/Fetch.cjs +24 -14
  117. package/cjs/fetch/Fetch.cjs.map +1 -1
  118. package/cjs/fetch/Fetch.d.ts.map +1 -1
  119. package/cjs/fetch/Request.cjs +62 -45
  120. package/cjs/fetch/Request.cjs.map +1 -1
  121. package/cjs/fetch/Request.d.ts +3 -14
  122. package/cjs/fetch/Request.d.ts.map +1 -1
  123. package/cjs/fetch/ResourceFetch.cjs +2 -3
  124. package/cjs/fetch/ResourceFetch.cjs.map +1 -1
  125. package/cjs/fetch/ResourceFetch.d.ts.map +1 -1
  126. package/cjs/fetch/Response.cjs +63 -40
  127. package/cjs/fetch/Response.cjs.map +1 -1
  128. package/cjs/fetch/Response.d.ts +3 -10
  129. package/cjs/fetch/Response.d.ts.map +1 -1
  130. package/cjs/fetch/SyncFetch.cjs +12 -13
  131. package/cjs/fetch/SyncFetch.cjs.map +1 -1
  132. package/cjs/fetch/SyncFetch.d.ts.map +1 -1
  133. package/cjs/fetch/multipart/MultipartFormDataParser.cjs +12 -6
  134. package/cjs/fetch/multipart/MultipartFormDataParser.cjs.map +1 -1
  135. package/cjs/fetch/multipart/MultipartFormDataParser.d.ts +3 -1
  136. package/cjs/fetch/multipart/MultipartFormDataParser.d.ts.map +1 -1
  137. package/cjs/fetch/multipart/MultipartReader.cjs +5 -3
  138. package/cjs/fetch/multipart/MultipartReader.cjs.map +1 -1
  139. package/cjs/fetch/multipart/MultipartReader.d.ts +4 -1
  140. package/cjs/fetch/multipart/MultipartReader.d.ts.map +1 -1
  141. package/cjs/fetch/utilities/FetchBodyUtility.cjs +10 -5
  142. package/cjs/fetch/utilities/FetchBodyUtility.cjs.map +1 -1
  143. package/cjs/fetch/utilities/FetchBodyUtility.d.ts +5 -2
  144. package/cjs/fetch/utilities/FetchBodyUtility.d.ts.map +1 -1
  145. package/cjs/file/FileReader.cjs +11 -11
  146. package/cjs/file/FileReader.cjs.map +1 -1
  147. package/cjs/file/FileReader.d.ts +1 -4
  148. package/cjs/file/FileReader.d.ts.map +1 -1
  149. package/cjs/history/History.cjs +28 -14
  150. package/cjs/history/History.cjs.map +1 -1
  151. package/cjs/history/History.d.ts +2 -2
  152. package/cjs/history/History.d.ts.map +1 -1
  153. package/cjs/index.d.ts +2 -2
  154. package/cjs/location/Location.cjs +43 -22
  155. package/cjs/location/Location.cjs.map +1 -1
  156. package/cjs/location/Location.d.ts +4 -0
  157. package/cjs/location/Location.d.ts.map +1 -1
  158. package/cjs/match-media/MediaQueryItem.cjs +26 -26
  159. package/cjs/match-media/MediaQueryItem.cjs.map +1 -1
  160. package/cjs/match-media/MediaQueryItem.d.ts +3 -3
  161. package/cjs/match-media/MediaQueryItem.d.ts.map +1 -1
  162. package/cjs/match-media/MediaQueryList.cjs +7 -7
  163. package/cjs/match-media/MediaQueryList.cjs.map +1 -1
  164. package/cjs/match-media/MediaQueryList.d.ts +5 -5
  165. package/cjs/match-media/MediaQueryList.d.ts.map +1 -1
  166. package/cjs/match-media/MediaQueryParser.cjs +4 -4
  167. package/cjs/match-media/MediaQueryParser.cjs.map +1 -1
  168. package/cjs/match-media/MediaQueryParser.d.ts +2 -2
  169. package/cjs/match-media/MediaQueryParser.d.ts.map +1 -1
  170. package/cjs/mutation-observer/MutationObserver.cjs +17 -15
  171. package/cjs/mutation-observer/MutationObserver.cjs.map +1 -1
  172. package/cjs/mutation-observer/MutationObserver.d.ts +3 -0
  173. package/cjs/mutation-observer/MutationObserver.d.ts.map +1 -1
  174. package/cjs/navigator/Navigator.cjs +13 -10
  175. package/cjs/navigator/Navigator.cjs.map +1 -1
  176. package/cjs/navigator/Navigator.d.ts +2 -2
  177. package/cjs/navigator/Navigator.d.ts.map +1 -1
  178. package/cjs/nodes/NodeFactory.cjs +1 -1
  179. package/cjs/nodes/NodeFactory.cjs.map +1 -1
  180. package/cjs/nodes/document/Document.cjs +69 -51
  181. package/cjs/nodes/document/Document.cjs.map +1 -1
  182. package/cjs/nodes/document/Document.d.ts +9 -16
  183. package/cjs/nodes/document/Document.d.ts.map +1 -1
  184. package/cjs/nodes/document/DocumentReadyStateManager.cjs +12 -10
  185. package/cjs/nodes/document/DocumentReadyStateManager.cjs.map +1 -1
  186. package/cjs/nodes/document/DocumentReadyStateManager.d.ts.map +1 -1
  187. package/cjs/nodes/element/Element.cjs +33 -20
  188. package/cjs/nodes/element/Element.cjs.map +1 -1
  189. package/cjs/nodes/element/Element.d.ts +7 -3
  190. package/cjs/nodes/element/Element.d.ts.map +1 -1
  191. package/cjs/nodes/element/HTMLCollection.cjs +1 -4
  192. package/cjs/nodes/element/HTMLCollection.cjs.map +1 -1
  193. package/cjs/nodes/element/HTMLCollection.d.ts.map +1 -1
  194. package/cjs/nodes/element/NamedNodeMap.cjs +4 -0
  195. package/cjs/nodes/element/NamedNodeMap.cjs.map +1 -1
  196. package/cjs/nodes/element/NamedNodeMap.d.ts.map +1 -1
  197. package/cjs/nodes/element/NamedNodeMapProxyFactory.cjs +0 -9
  198. package/cjs/nodes/element/NamedNodeMapProxyFactory.cjs.map +1 -1
  199. package/cjs/nodes/element/NamedNodeMapProxyFactory.d.ts.map +1 -1
  200. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs +5 -5
  201. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs.map +1 -1
  202. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
  203. package/cjs/nodes/html-area-element/HTMLAreaElement.cjs +7 -8
  204. package/cjs/nodes/html-area-element/HTMLAreaElement.cjs.map +1 -1
  205. package/cjs/nodes/html-area-element/HTMLAreaElement.d.ts.map +1 -1
  206. package/cjs/nodes/html-audio-element/Audio.cjs +28 -0
  207. package/cjs/nodes/html-audio-element/Audio.cjs.map +1 -1
  208. package/cjs/nodes/html-audio-element/Audio.d.ts +4 -0
  209. package/cjs/nodes/html-audio-element/Audio.d.ts.map +1 -1
  210. package/cjs/nodes/html-button-element/HTMLButtonElement.cjs +63 -35
  211. package/cjs/nodes/html-button-element/HTMLButtonElement.cjs.map +1 -1
  212. package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts +27 -3
  213. package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
  214. package/cjs/nodes/html-canvas-element/HTMLCanvasElement.cjs +2 -4
  215. package/cjs/nodes/html-canvas-element/HTMLCanvasElement.cjs.map +1 -1
  216. package/cjs/nodes/html-canvas-element/HTMLCanvasElement.d.ts.map +1 -1
  217. package/cjs/nodes/html-document/HTMLDocument.cjs +2 -6
  218. package/cjs/nodes/html-document/HTMLDocument.cjs.map +1 -1
  219. package/cjs/nodes/html-document/HTMLDocument.d.ts +1 -10
  220. package/cjs/nodes/html-document/HTMLDocument.d.ts.map +1 -1
  221. package/cjs/nodes/html-element/HTMLElement.cjs +130 -89
  222. package/cjs/nodes/html-element/HTMLElement.cjs.map +1 -1
  223. package/cjs/nodes/html-element/HTMLElement.d.ts +14 -2
  224. package/cjs/nodes/html-element/HTMLElement.d.ts.map +1 -1
  225. package/cjs/nodes/html-form-element/HTMLFormElement.cjs +6 -7
  226. package/cjs/nodes/html-form-element/HTMLFormElement.cjs.map +1 -1
  227. package/cjs/nodes/html-form-element/HTMLFormElement.d.ts +1 -3
  228. package/cjs/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
  229. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs +30 -38
  230. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs.map +1 -1
  231. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts +0 -6
  232. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
  233. package/cjs/nodes/html-image-element/Image.cjs +28 -0
  234. package/cjs/nodes/html-image-element/Image.cjs.map +1 -1
  235. package/cjs/nodes/html-image-element/Image.d.ts +4 -0
  236. package/cjs/nodes/html-image-element/Image.d.ts.map +1 -1
  237. package/cjs/nodes/html-input-element/HTMLInputElement.cjs +88 -56
  238. package/cjs/nodes/html-input-element/HTMLInputElement.cjs.map +1 -1
  239. package/cjs/nodes/html-input-element/HTMLInputElement.d.ts +25 -0
  240. package/cjs/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
  241. package/cjs/nodes/html-label-element/HTMLLabelElement.cjs +4 -3
  242. package/cjs/nodes/html-label-element/HTMLLabelElement.cjs.map +1 -1
  243. package/cjs/nodes/html-label-element/HTMLLabelElement.d.ts +8 -1
  244. package/cjs/nodes/html-label-element/HTMLLabelElement.d.ts.map +1 -1
  245. package/cjs/nodes/html-link-element/HTMLLinkElement.cjs +10 -16
  246. package/cjs/nodes/html-link-element/HTMLLinkElement.cjs.map +1 -1
  247. package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts +0 -6
  248. package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
  249. package/cjs/nodes/html-media-element/HTMLMediaElement.cjs +12 -16
  250. package/cjs/nodes/html-media-element/HTMLMediaElement.cjs.map +1 -1
  251. package/cjs/nodes/html-media-element/HTMLMediaElement.d.ts.map +1 -1
  252. package/cjs/nodes/html-media-element/MediaStream.cjs +3 -0
  253. package/cjs/nodes/html-media-element/MediaStream.cjs.map +1 -1
  254. package/cjs/nodes/html-media-element/MediaStream.d.ts.map +1 -1
  255. package/cjs/nodes/html-media-element/MediaStreamTrack.cjs +3 -0
  256. package/cjs/nodes/html-media-element/MediaStreamTrack.cjs.map +1 -1
  257. package/cjs/nodes/html-media-element/MediaStreamTrack.d.ts.map +1 -1
  258. package/cjs/nodes/html-media-element/TextTrack.cjs +3 -0
  259. package/cjs/nodes/html-media-element/TextTrack.cjs.map +1 -1
  260. package/cjs/nodes/html-media-element/TextTrack.d.ts.map +1 -1
  261. package/cjs/nodes/html-media-element/TextTrackCue.cjs +3 -0
  262. package/cjs/nodes/html-media-element/TextTrackCue.cjs.map +1 -1
  263. package/cjs/nodes/html-media-element/TextTrackCue.d.ts.map +1 -1
  264. package/cjs/nodes/html-media-element/VTTCue.cjs +7 -8
  265. package/cjs/nodes/html-media-element/VTTCue.cjs.map +1 -1
  266. package/cjs/nodes/html-media-element/VTTCue.d.ts +1 -4
  267. package/cjs/nodes/html-media-element/VTTCue.d.ts.map +1 -1
  268. package/cjs/nodes/html-meter-element/HTMLMeterElement.cjs +30 -6
  269. package/cjs/nodes/html-meter-element/HTMLMeterElement.cjs.map +1 -1
  270. package/cjs/nodes/html-meter-element/HTMLMeterElement.d.ts.map +1 -1
  271. package/cjs/nodes/html-progress-element/HTMLProgressElement.cjs +26 -2
  272. package/cjs/nodes/html-progress-element/HTMLProgressElement.cjs.map +1 -1
  273. package/cjs/nodes/html-progress-element/HTMLProgressElement.d.ts.map +1 -1
  274. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs +21 -27
  275. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs.map +1 -1
  276. package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts +0 -6
  277. package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  278. package/cjs/nodes/html-select-element/HTMLSelectElement.cjs +5 -5
  279. package/cjs/nodes/html-select-element/HTMLSelectElement.cjs.map +1 -1
  280. package/cjs/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
  281. package/cjs/nodes/html-table-element/HTMLTableElement.cjs +8 -9
  282. package/cjs/nodes/html-table-element/HTMLTableElement.cjs.map +1 -1
  283. package/cjs/nodes/html-table-element/HTMLTableElement.d.ts.map +1 -1
  284. package/cjs/nodes/html-table-row-element/HTMLTableRowElement.cjs +5 -6
  285. package/cjs/nodes/html-table-row-element/HTMLTableRowElement.cjs.map +1 -1
  286. package/cjs/nodes/html-table-row-element/HTMLTableRowElement.d.ts.map +1 -1
  287. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs +1 -2
  288. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs.map +1 -1
  289. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
  290. package/cjs/nodes/html-track-element/HTMLTrackElement.cjs +1 -2
  291. package/cjs/nodes/html-track-element/HTMLTrackElement.cjs.map +1 -1
  292. package/cjs/nodes/node/Node.cjs +23 -22
  293. package/cjs/nodes/node/Node.cjs.map +1 -1
  294. package/cjs/nodes/node/Node.d.ts +1 -2
  295. package/cjs/nodes/node/Node.d.ts.map +1 -1
  296. package/cjs/nodes/node/NodeList.cjs +4 -6
  297. package/cjs/nodes/node/NodeList.cjs.map +1 -1
  298. package/cjs/nodes/node/NodeList.d.ts.map +1 -1
  299. package/cjs/nodes/text/Text.cjs +1 -2
  300. package/cjs/nodes/text/Text.cjs.map +1 -1
  301. package/cjs/nodes/text/Text.d.ts.map +1 -1
  302. package/cjs/permissions/Permissions.cjs +13 -2
  303. package/cjs/permissions/Permissions.cjs.map +1 -1
  304. package/cjs/permissions/Permissions.d.ts +7 -0
  305. package/cjs/permissions/Permissions.d.ts.map +1 -1
  306. package/cjs/query-selector/QuerySelector.cjs +12 -10
  307. package/cjs/query-selector/QuerySelector.cjs.map +1 -1
  308. package/cjs/query-selector/QuerySelector.d.ts.map +1 -1
  309. package/cjs/range/Range.cjs +26 -23
  310. package/cjs/range/Range.cjs.map +1 -1
  311. package/cjs/range/Range.d.ts +2 -2
  312. package/cjs/range/Range.d.ts.map +1 -1
  313. package/cjs/selection/Selection.cjs +16 -17
  314. package/cjs/selection/Selection.cjs.map +1 -1
  315. package/cjs/selection/Selection.d.ts.map +1 -1
  316. package/cjs/window/BrowserWindow.cjs +136 -266
  317. package/cjs/window/BrowserWindow.cjs.map +1 -1
  318. package/cjs/window/BrowserWindow.d.ts +115 -117
  319. package/cjs/window/BrowserWindow.d.ts.map +1 -1
  320. package/cjs/window/VMGlobalPropertyScript.cjs +0 -1
  321. package/cjs/window/VMGlobalPropertyScript.cjs.map +1 -1
  322. package/cjs/window/VMGlobalPropertyScript.d.ts.map +1 -1
  323. package/cjs/window/WindowBrowserContext.cjs +117 -0
  324. package/cjs/window/WindowBrowserContext.cjs.map +1 -0
  325. package/cjs/window/WindowBrowserContext.d.ts +75 -0
  326. package/cjs/window/WindowBrowserContext.d.ts.map +1 -0
  327. package/cjs/window/WindowClassExtender.cjs +332 -0
  328. package/cjs/window/WindowClassExtender.cjs.map +1 -0
  329. package/cjs/window/WindowClassExtender.d.ts +15 -0
  330. package/cjs/window/WindowClassExtender.d.ts.map +1 -0
  331. package/cjs/window/WindowPageOpenUtility.cjs +11 -1
  332. package/cjs/window/WindowPageOpenUtility.cjs.map +1 -1
  333. package/cjs/window/WindowPageOpenUtility.d.ts.map +1 -1
  334. package/cjs/xml-http-request/XMLHttpRequest.cjs +33 -33
  335. package/cjs/xml-http-request/XMLHttpRequest.cjs.map +1 -1
  336. package/cjs/xml-http-request/XMLHttpRequest.d.ts +2 -11
  337. package/cjs/xml-http-request/XMLHttpRequest.d.ts.map +1 -1
  338. package/lib/ClassMethodBinder.d.ts +4 -2
  339. package/lib/ClassMethodBinder.d.ts.map +1 -1
  340. package/lib/ClassMethodBinder.js +8 -6
  341. package/lib/ClassMethodBinder.js.map +1 -1
  342. package/lib/PropertySymbol.d.ts +15 -4
  343. package/lib/PropertySymbol.d.ts.map +1 -1
  344. package/lib/PropertySymbol.js +15 -4
  345. package/lib/PropertySymbol.js.map +1 -1
  346. package/lib/async-task-manager/AsyncTaskManager.d.ts +11 -1
  347. package/lib/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
  348. package/lib/async-task-manager/AsyncTaskManager.js +64 -35
  349. package/lib/async-task-manager/AsyncTaskManager.js.map +1 -1
  350. package/lib/browser/Browser.d.ts +3 -0
  351. package/lib/browser/Browser.d.ts.map +1 -1
  352. package/lib/browser/Browser.js +7 -0
  353. package/lib/browser/Browser.js.map +1 -1
  354. package/lib/browser/BrowserFrame.d.ts +1 -4
  355. package/lib/browser/BrowserFrame.d.ts.map +1 -1
  356. package/lib/browser/BrowserFrame.js +3 -7
  357. package/lib/browser/BrowserFrame.js.map +1 -1
  358. package/lib/browser/DefaultBrowserSettings.d.ts.map +1 -1
  359. package/lib/browser/DefaultBrowserSettings.js +2 -1
  360. package/lib/browser/DefaultBrowserSettings.js.map +1 -1
  361. package/lib/browser/detached-browser/DetachedBrowser.d.ts +3 -0
  362. package/lib/browser/detached-browser/DetachedBrowser.d.ts.map +1 -1
  363. package/lib/browser/detached-browser/DetachedBrowser.js +7 -0
  364. package/lib/browser/detached-browser/DetachedBrowser.js.map +1 -1
  365. package/lib/browser/detached-browser/DetachedBrowserFrame.d.ts +1 -4
  366. package/lib/browser/detached-browser/DetachedBrowserFrame.d.ts.map +1 -1
  367. package/lib/browser/detached-browser/DetachedBrowserFrame.js +3 -7
  368. package/lib/browser/detached-browser/DetachedBrowserFrame.js.map +1 -1
  369. package/lib/browser/types/IBrowser.d.ts +3 -0
  370. package/lib/browser/types/IBrowser.d.ts.map +1 -1
  371. package/lib/browser/types/IBrowser.js +1 -1
  372. package/lib/browser/types/IBrowser.js.map +1 -1
  373. package/lib/browser/types/IBrowserFrame.d.ts +0 -3
  374. package/lib/browser/types/IBrowserFrame.d.ts.map +1 -1
  375. package/lib/browser/types/IBrowserSettings.d.ts +1 -0
  376. package/lib/browser/types/IBrowserSettings.d.ts.map +1 -1
  377. package/{cjs/browser/utilities/BrowserFrameExceptionObserver.d.ts → lib/browser/utilities/BrowserExceptionObserver.d.ts} +9 -7
  378. package/lib/browser/utilities/BrowserExceptionObserver.d.ts.map +1 -0
  379. package/lib/browser/utilities/BrowserExceptionObserver.js +97 -0
  380. package/lib/browser/utilities/BrowserExceptionObserver.js.map +1 -0
  381. package/lib/browser/utilities/BrowserFrameFactory.d.ts.map +1 -1
  382. package/lib/browser/utilities/BrowserFrameFactory.js +27 -35
  383. package/lib/browser/utilities/BrowserFrameFactory.js.map +1 -1
  384. package/lib/browser/utilities/BrowserFrameNavigator.d.ts.map +1 -1
  385. package/lib/browser/utilities/BrowserFrameNavigator.js +52 -29
  386. package/lib/browser/utilities/BrowserFrameNavigator.js.map +1 -1
  387. package/lib/clipboard/Clipboard.d.ts +2 -2
  388. package/lib/clipboard/Clipboard.d.ts.map +1 -1
  389. package/lib/clipboard/Clipboard.js +18 -15
  390. package/lib/clipboard/Clipboard.js.map +1 -1
  391. package/lib/css/declaration/AbstractCSSStyleDeclaration.js +4 -4
  392. package/lib/css/declaration/AbstractCSSStyleDeclaration.js.map +1 -1
  393. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
  394. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js +6 -5
  395. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js.map +1 -1
  396. package/lib/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts +2 -2
  397. package/lib/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts.map +1 -1
  398. package/lib/css/declaration/measurement-converter/CSSMeasurementConverter.js +5 -5
  399. package/lib/css/declaration/measurement-converter/CSSMeasurementConverter.js.map +1 -1
  400. package/lib/custom-element/CustomElementRegistry.d.ts +2 -3
  401. package/lib/custom-element/CustomElementRegistry.d.ts.map +1 -1
  402. package/lib/custom-element/CustomElementRegistry.js +37 -17
  403. package/lib/custom-element/CustomElementRegistry.js.map +1 -1
  404. package/lib/dom-implementation/DOMImplementation.d.ts +7 -3
  405. package/lib/dom-implementation/DOMImplementation.d.ts.map +1 -1
  406. package/lib/dom-implementation/DOMImplementation.js +12 -7
  407. package/lib/dom-implementation/DOMImplementation.js.map +1 -1
  408. package/lib/dom-parser/DOMParser.d.ts +2 -6
  409. package/lib/dom-parser/DOMParser.d.ts.map +1 -1
  410. package/lib/dom-parser/DOMParser.js +6 -15
  411. package/lib/dom-parser/DOMParser.js.map +1 -1
  412. package/lib/event/Event.d.ts +49 -7
  413. package/lib/event/Event.d.ts.map +1 -1
  414. package/lib/event/Event.js +76 -18
  415. package/lib/event/Event.js.map +1 -1
  416. package/lib/event/EventTarget.d.ts +12 -8
  417. package/lib/event/EventTarget.d.ts.map +1 -1
  418. package/lib/event/EventTarget.js +153 -141
  419. package/lib/event/EventTarget.js.map +1 -1
  420. package/lib/event/MessagePort.d.ts +1 -2
  421. package/lib/event/MessagePort.d.ts.map +1 -1
  422. package/lib/event/MessagePort.js.map +1 -1
  423. package/lib/event/TEventListener.d.ts +5 -0
  424. package/lib/event/TEventListener.d.ts.map +1 -0
  425. package/lib/event/TEventListener.js +2 -0
  426. package/lib/event/TEventListener.js.map +1 -0
  427. package/lib/event/TEventListenerFunction.d.ts +4 -0
  428. package/lib/event/TEventListenerFunction.d.ts.map +1 -0
  429. package/lib/event/TEventListenerFunction.js +2 -0
  430. package/lib/event/TEventListenerFunction.js.map +1 -0
  431. package/lib/event/TEventListenerObject.d.ts +6 -0
  432. package/lib/event/TEventListenerObject.d.ts.map +1 -0
  433. package/lib/event/TEventListenerObject.js +2 -0
  434. package/lib/event/TEventListenerObject.js.map +1 -0
  435. package/lib/event/events/CustomEvent.d.ts +8 -1
  436. package/lib/event/events/CustomEvent.d.ts.map +1 -1
  437. package/lib/event/events/CustomEvent.js +15 -6
  438. package/lib/event/events/CustomEvent.js.map +1 -1
  439. package/lib/event/events/IErrorEventInit.d.ts.map +1 -1
  440. package/lib/event/events/IMessageEventInit.d.ts +2 -2
  441. package/lib/event/events/IMessageEventInit.d.ts.map +1 -1
  442. package/lib/event/events/MessageEvent.d.ts +2 -2
  443. package/lib/event/events/MessageEvent.d.ts.map +1 -1
  444. package/lib/event/events/MessageEvent.js.map +1 -1
  445. package/lib/fetch/AbortController.d.ts +3 -4
  446. package/lib/fetch/AbortController.d.ts.map +1 -1
  447. package/lib/fetch/AbortController.js +2 -8
  448. package/lib/fetch/AbortController.js.map +1 -1
  449. package/lib/fetch/AbortSignal.d.ts +19 -0
  450. package/lib/fetch/AbortSignal.d.ts.map +1 -1
  451. package/lib/fetch/AbortSignal.js +48 -4
  452. package/lib/fetch/AbortSignal.js.map +1 -1
  453. package/lib/fetch/Fetch.d.ts.map +1 -1
  454. package/lib/fetch/Fetch.js +24 -14
  455. package/lib/fetch/Fetch.js.map +1 -1
  456. package/lib/fetch/Request.d.ts +3 -14
  457. package/lib/fetch/Request.d.ts.map +1 -1
  458. package/lib/fetch/Request.js +62 -45
  459. package/lib/fetch/Request.js.map +1 -1
  460. package/lib/fetch/ResourceFetch.d.ts.map +1 -1
  461. package/lib/fetch/ResourceFetch.js +2 -3
  462. package/lib/fetch/ResourceFetch.js.map +1 -1
  463. package/lib/fetch/Response.d.ts +3 -10
  464. package/lib/fetch/Response.d.ts.map +1 -1
  465. package/lib/fetch/Response.js +63 -40
  466. package/lib/fetch/Response.js.map +1 -1
  467. package/lib/fetch/SyncFetch.d.ts.map +1 -1
  468. package/lib/fetch/SyncFetch.js +12 -13
  469. package/lib/fetch/SyncFetch.js.map +1 -1
  470. package/lib/fetch/multipart/MultipartFormDataParser.d.ts +3 -1
  471. package/lib/fetch/multipart/MultipartFormDataParser.d.ts.map +1 -1
  472. package/lib/fetch/multipart/MultipartFormDataParser.js +12 -6
  473. package/lib/fetch/multipart/MultipartFormDataParser.js.map +1 -1
  474. package/lib/fetch/multipart/MultipartReader.d.ts +4 -1
  475. package/lib/fetch/multipart/MultipartReader.d.ts.map +1 -1
  476. package/lib/fetch/multipart/MultipartReader.js +5 -3
  477. package/lib/fetch/multipart/MultipartReader.js.map +1 -1
  478. package/lib/fetch/utilities/FetchBodyUtility.d.ts +5 -2
  479. package/lib/fetch/utilities/FetchBodyUtility.d.ts.map +1 -1
  480. package/lib/fetch/utilities/FetchBodyUtility.js +10 -5
  481. package/lib/fetch/utilities/FetchBodyUtility.js.map +1 -1
  482. package/lib/file/FileReader.d.ts +1 -4
  483. package/lib/file/FileReader.d.ts.map +1 -1
  484. package/lib/file/FileReader.js +11 -11
  485. package/lib/file/FileReader.js.map +1 -1
  486. package/lib/history/History.d.ts +2 -2
  487. package/lib/history/History.d.ts.map +1 -1
  488. package/lib/history/History.js +28 -14
  489. package/lib/history/History.js.map +1 -1
  490. package/lib/index.d.ts +2 -2
  491. package/lib/location/Location.d.ts +4 -0
  492. package/lib/location/Location.d.ts.map +1 -1
  493. package/lib/location/Location.js +43 -22
  494. package/lib/location/Location.js.map +1 -1
  495. package/lib/match-media/MediaQueryItem.d.ts +3 -3
  496. package/lib/match-media/MediaQueryItem.d.ts.map +1 -1
  497. package/lib/match-media/MediaQueryItem.js +26 -26
  498. package/lib/match-media/MediaQueryItem.js.map +1 -1
  499. package/lib/match-media/MediaQueryList.d.ts +5 -5
  500. package/lib/match-media/MediaQueryList.d.ts.map +1 -1
  501. package/lib/match-media/MediaQueryList.js +7 -7
  502. package/lib/match-media/MediaQueryList.js.map +1 -1
  503. package/lib/match-media/MediaQueryParser.d.ts +2 -2
  504. package/lib/match-media/MediaQueryParser.d.ts.map +1 -1
  505. package/lib/match-media/MediaQueryParser.js +4 -4
  506. package/lib/match-media/MediaQueryParser.js.map +1 -1
  507. package/lib/mutation-observer/MutationObserver.d.ts +3 -0
  508. package/lib/mutation-observer/MutationObserver.d.ts.map +1 -1
  509. package/lib/mutation-observer/MutationObserver.js +17 -15
  510. package/lib/mutation-observer/MutationObserver.js.map +1 -1
  511. package/lib/navigator/Navigator.d.ts +2 -2
  512. package/lib/navigator/Navigator.d.ts.map +1 -1
  513. package/lib/navigator/Navigator.js +13 -10
  514. package/lib/navigator/Navigator.js.map +1 -1
  515. package/lib/nodes/NodeFactory.js +1 -1
  516. package/lib/nodes/NodeFactory.js.map +1 -1
  517. package/lib/nodes/document/Document.d.ts +9 -16
  518. package/lib/nodes/document/Document.d.ts.map +1 -1
  519. package/lib/nodes/document/Document.js +69 -51
  520. package/lib/nodes/document/Document.js.map +1 -1
  521. package/lib/nodes/document/DocumentReadyStateManager.d.ts.map +1 -1
  522. package/lib/nodes/document/DocumentReadyStateManager.js +12 -10
  523. package/lib/nodes/document/DocumentReadyStateManager.js.map +1 -1
  524. package/lib/nodes/element/Element.d.ts +7 -3
  525. package/lib/nodes/element/Element.d.ts.map +1 -1
  526. package/lib/nodes/element/Element.js +33 -20
  527. package/lib/nodes/element/Element.js.map +1 -1
  528. package/lib/nodes/element/HTMLCollection.d.ts.map +1 -1
  529. package/lib/nodes/element/HTMLCollection.js +1 -4
  530. package/lib/nodes/element/HTMLCollection.js.map +1 -1
  531. package/lib/nodes/element/NamedNodeMap.d.ts.map +1 -1
  532. package/lib/nodes/element/NamedNodeMap.js +4 -0
  533. package/lib/nodes/element/NamedNodeMap.js.map +1 -1
  534. package/lib/nodes/element/NamedNodeMapProxyFactory.d.ts.map +1 -1
  535. package/lib/nodes/element/NamedNodeMapProxyFactory.js +0 -6
  536. package/lib/nodes/element/NamedNodeMapProxyFactory.js.map +1 -1
  537. package/lib/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
  538. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js +5 -5
  539. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js.map +1 -1
  540. package/lib/nodes/html-area-element/HTMLAreaElement.d.ts.map +1 -1
  541. package/lib/nodes/html-area-element/HTMLAreaElement.js +7 -8
  542. package/lib/nodes/html-area-element/HTMLAreaElement.js.map +1 -1
  543. package/lib/nodes/html-audio-element/Audio.d.ts +4 -0
  544. package/lib/nodes/html-audio-element/Audio.d.ts.map +1 -1
  545. package/lib/nodes/html-audio-element/Audio.js +5 -0
  546. package/lib/nodes/html-audio-element/Audio.js.map +1 -1
  547. package/lib/nodes/html-button-element/HTMLButtonElement.d.ts +27 -3
  548. package/lib/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
  549. package/lib/nodes/html-button-element/HTMLButtonElement.js +63 -35
  550. package/lib/nodes/html-button-element/HTMLButtonElement.js.map +1 -1
  551. package/lib/nodes/html-canvas-element/HTMLCanvasElement.d.ts.map +1 -1
  552. package/lib/nodes/html-canvas-element/HTMLCanvasElement.js +2 -4
  553. package/lib/nodes/html-canvas-element/HTMLCanvasElement.js.map +1 -1
  554. package/lib/nodes/html-document/HTMLDocument.d.ts +1 -10
  555. package/lib/nodes/html-document/HTMLDocument.d.ts.map +1 -1
  556. package/lib/nodes/html-document/HTMLDocument.js +2 -6
  557. package/lib/nodes/html-document/HTMLDocument.js.map +1 -1
  558. package/lib/nodes/html-element/HTMLElement.d.ts +14 -2
  559. package/lib/nodes/html-element/HTMLElement.d.ts.map +1 -1
  560. package/lib/nodes/html-element/HTMLElement.js +130 -89
  561. package/lib/nodes/html-element/HTMLElement.js.map +1 -1
  562. package/lib/nodes/html-form-element/HTMLFormElement.d.ts +1 -3
  563. package/lib/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
  564. package/lib/nodes/html-form-element/HTMLFormElement.js +6 -7
  565. package/lib/nodes/html-form-element/HTMLFormElement.js.map +1 -1
  566. package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts +0 -6
  567. package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
  568. package/lib/nodes/html-iframe-element/HTMLIFrameElement.js +30 -38
  569. package/lib/nodes/html-iframe-element/HTMLIFrameElement.js.map +1 -1
  570. package/lib/nodes/html-image-element/Image.d.ts +4 -0
  571. package/lib/nodes/html-image-element/Image.d.ts.map +1 -1
  572. package/lib/nodes/html-image-element/Image.js +5 -0
  573. package/lib/nodes/html-image-element/Image.js.map +1 -1
  574. package/lib/nodes/html-input-element/HTMLInputElement.d.ts +25 -0
  575. package/lib/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
  576. package/lib/nodes/html-input-element/HTMLInputElement.js +88 -56
  577. package/lib/nodes/html-input-element/HTMLInputElement.js.map +1 -1
  578. package/lib/nodes/html-label-element/HTMLLabelElement.d.ts +8 -1
  579. package/lib/nodes/html-label-element/HTMLLabelElement.d.ts.map +1 -1
  580. package/lib/nodes/html-label-element/HTMLLabelElement.js +4 -3
  581. package/lib/nodes/html-label-element/HTMLLabelElement.js.map +1 -1
  582. package/lib/nodes/html-link-element/HTMLLinkElement.d.ts +0 -6
  583. package/lib/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
  584. package/lib/nodes/html-link-element/HTMLLinkElement.js +10 -16
  585. package/lib/nodes/html-link-element/HTMLLinkElement.js.map +1 -1
  586. package/lib/nodes/html-media-element/HTMLMediaElement.d.ts.map +1 -1
  587. package/lib/nodes/html-media-element/HTMLMediaElement.js +12 -16
  588. package/lib/nodes/html-media-element/HTMLMediaElement.js.map +1 -1
  589. package/lib/nodes/html-media-element/MediaStream.d.ts.map +1 -1
  590. package/lib/nodes/html-media-element/MediaStream.js +3 -0
  591. package/lib/nodes/html-media-element/MediaStream.js.map +1 -1
  592. package/lib/nodes/html-media-element/MediaStreamTrack.d.ts.map +1 -1
  593. package/lib/nodes/html-media-element/MediaStreamTrack.js +3 -0
  594. package/lib/nodes/html-media-element/MediaStreamTrack.js.map +1 -1
  595. package/lib/nodes/html-media-element/TextTrack.d.ts.map +1 -1
  596. package/lib/nodes/html-media-element/TextTrack.js +3 -0
  597. package/lib/nodes/html-media-element/TextTrack.js.map +1 -1
  598. package/lib/nodes/html-media-element/TextTrackCue.d.ts.map +1 -1
  599. package/lib/nodes/html-media-element/TextTrackCue.js +3 -0
  600. package/lib/nodes/html-media-element/TextTrackCue.js.map +1 -1
  601. package/lib/nodes/html-media-element/VTTCue.d.ts +1 -4
  602. package/lib/nodes/html-media-element/VTTCue.d.ts.map +1 -1
  603. package/lib/nodes/html-media-element/VTTCue.js +7 -8
  604. package/lib/nodes/html-media-element/VTTCue.js.map +1 -1
  605. package/lib/nodes/html-meter-element/HTMLMeterElement.d.ts.map +1 -1
  606. package/lib/nodes/html-meter-element/HTMLMeterElement.js +7 -6
  607. package/lib/nodes/html-meter-element/HTMLMeterElement.js.map +1 -1
  608. package/lib/nodes/html-progress-element/HTMLProgressElement.d.ts.map +1 -1
  609. package/lib/nodes/html-progress-element/HTMLProgressElement.js +3 -2
  610. package/lib/nodes/html-progress-element/HTMLProgressElement.js.map +1 -1
  611. package/lib/nodes/html-script-element/HTMLScriptElement.d.ts +0 -6
  612. package/lib/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  613. package/lib/nodes/html-script-element/HTMLScriptElement.js +21 -27
  614. package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
  615. package/lib/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
  616. package/lib/nodes/html-select-element/HTMLSelectElement.js +5 -5
  617. package/lib/nodes/html-select-element/HTMLSelectElement.js.map +1 -1
  618. package/lib/nodes/html-table-element/HTMLTableElement.d.ts.map +1 -1
  619. package/lib/nodes/html-table-element/HTMLTableElement.js +8 -9
  620. package/lib/nodes/html-table-element/HTMLTableElement.js.map +1 -1
  621. package/lib/nodes/html-table-row-element/HTMLTableRowElement.d.ts.map +1 -1
  622. package/lib/nodes/html-table-row-element/HTMLTableRowElement.js +5 -6
  623. package/lib/nodes/html-table-row-element/HTMLTableRowElement.js.map +1 -1
  624. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
  625. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js +1 -2
  626. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js.map +1 -1
  627. package/lib/nodes/html-track-element/HTMLTrackElement.js +1 -2
  628. package/lib/nodes/html-track-element/HTMLTrackElement.js.map +1 -1
  629. package/lib/nodes/node/Node.d.ts +1 -2
  630. package/lib/nodes/node/Node.d.ts.map +1 -1
  631. package/lib/nodes/node/Node.js +23 -22
  632. package/lib/nodes/node/Node.js.map +1 -1
  633. package/lib/nodes/node/NodeList.d.ts.map +1 -1
  634. package/lib/nodes/node/NodeList.js +4 -6
  635. package/lib/nodes/node/NodeList.js.map +1 -1
  636. package/lib/nodes/text/Text.d.ts.map +1 -1
  637. package/lib/nodes/text/Text.js +1 -2
  638. package/lib/nodes/text/Text.js.map +1 -1
  639. package/lib/permissions/Permissions.d.ts +7 -0
  640. package/lib/permissions/Permissions.d.ts.map +1 -1
  641. package/lib/permissions/Permissions.js +13 -2
  642. package/lib/permissions/Permissions.js.map +1 -1
  643. package/lib/query-selector/QuerySelector.d.ts.map +1 -1
  644. package/lib/query-selector/QuerySelector.js +12 -10
  645. package/lib/query-selector/QuerySelector.js.map +1 -1
  646. package/lib/range/Range.d.ts +2 -2
  647. package/lib/range/Range.d.ts.map +1 -1
  648. package/lib/range/Range.js +26 -23
  649. package/lib/range/Range.js.map +1 -1
  650. package/lib/selection/Selection.d.ts.map +1 -1
  651. package/lib/selection/Selection.js +16 -17
  652. package/lib/selection/Selection.js.map +1 -1
  653. package/lib/window/BrowserWindow.d.ts +115 -117
  654. package/lib/window/BrowserWindow.d.ts.map +1 -1
  655. package/lib/window/BrowserWindow.js +140 -270
  656. package/lib/window/BrowserWindow.js.map +1 -1
  657. package/lib/window/VMGlobalPropertyScript.d.ts.map +1 -1
  658. package/lib/window/VMGlobalPropertyScript.js +0 -1
  659. package/lib/window/VMGlobalPropertyScript.js.map +1 -1
  660. package/lib/window/WindowBrowserContext.d.ts +75 -0
  661. package/lib/window/WindowBrowserContext.d.ts.map +1 -0
  662. package/lib/window/WindowBrowserContext.js +91 -0
  663. package/lib/window/WindowBrowserContext.js.map +1 -0
  664. package/lib/window/WindowClassExtender.d.ts +15 -0
  665. package/lib/window/WindowClassExtender.d.ts.map +1 -0
  666. package/lib/window/WindowClassExtender.js +303 -0
  667. package/lib/window/WindowClassExtender.js.map +1 -0
  668. package/lib/window/WindowPageOpenUtility.d.ts.map +1 -1
  669. package/lib/window/WindowPageOpenUtility.js +11 -1
  670. package/lib/window/WindowPageOpenUtility.js.map +1 -1
  671. package/lib/xml-http-request/XMLHttpRequest.d.ts +2 -11
  672. package/lib/xml-http-request/XMLHttpRequest.d.ts.map +1 -1
  673. package/lib/xml-http-request/XMLHttpRequest.js +33 -33
  674. package/lib/xml-http-request/XMLHttpRequest.js.map +1 -1
  675. package/package.json +1 -1
  676. package/src/ClassMethodBinder.ts +10 -7
  677. package/src/PropertySymbol.ts +15 -4
  678. package/src/async-task-manager/AsyncTaskManager.ts +71 -39
  679. package/src/browser/Browser.ts +7 -0
  680. package/src/browser/BrowserFrame.ts +3 -7
  681. package/src/browser/DefaultBrowserSettings.ts +2 -1
  682. package/src/browser/detached-browser/DetachedBrowser.ts +7 -0
  683. package/src/browser/detached-browser/DetachedBrowserFrame.ts +3 -7
  684. package/src/browser/types/IBrowser.ts +3 -0
  685. package/src/browser/types/IBrowserFrame.ts +0 -3
  686. package/src/browser/types/IBrowserSettings.ts +1 -0
  687. package/src/browser/utilities/BrowserExceptionObserver.ts +125 -0
  688. package/src/browser/utilities/BrowserFrameFactory.ts +29 -33
  689. package/src/browser/utilities/BrowserFrameNavigator.ts +60 -38
  690. package/src/clipboard/Clipboard.ts +20 -14
  691. package/src/css/declaration/AbstractCSSStyleDeclaration.ts +4 -4
  692. package/src/css/declaration/element-style/CSSStyleDeclarationElementStyle.ts +6 -7
  693. package/src/css/declaration/measurement-converter/CSSMeasurementConverter.ts +6 -8
  694. package/src/custom-element/CustomElementRegistry.ts +45 -17
  695. package/src/dom-implementation/DOMImplementation.ts +15 -10
  696. package/src/dom-parser/DOMParser.ts +11 -16
  697. package/src/event/Event.ts +85 -18
  698. package/src/event/EventTarget.ts +200 -185
  699. package/src/event/MessagePort.ts +1 -2
  700. package/src/event/TEventListener.ts +6 -0
  701. package/src/event/TEventListenerFunction.ts +5 -0
  702. package/src/event/TEventListenerObject.ts +7 -0
  703. package/src/event/events/CustomEvent.ts +16 -6
  704. package/src/event/events/IErrorEventInit.ts +0 -1
  705. package/src/event/events/IMessageEventInit.ts +2 -2
  706. package/src/event/events/MessageEvent.ts +2 -2
  707. package/src/fetch/AbortController.ts +5 -7
  708. package/src/fetch/AbortSignal.ts +69 -4
  709. package/src/fetch/Fetch.ts +39 -15
  710. package/src/fetch/Request.ts +83 -55
  711. package/src/fetch/ResourceFetch.ts +2 -3
  712. package/src/fetch/Response.ts +80 -45
  713. package/src/fetch/SyncFetch.ts +15 -13
  714. package/src/fetch/multipart/MultipartFormDataParser.ts +16 -5
  715. package/src/fetch/multipart/MultipartReader.ts +6 -3
  716. package/src/fetch/utilities/FetchBodyUtility.ts +23 -8
  717. package/src/file/FileReader.ts +16 -12
  718. package/src/history/History.ts +31 -14
  719. package/src/index.ts +2 -2
  720. package/src/location/Location.ts +46 -22
  721. package/src/match-media/MediaQueryItem.ts +27 -30
  722. package/src/match-media/MediaQueryList.ts +11 -21
  723. package/src/match-media/MediaQueryParser.ts +5 -5
  724. package/src/mutation-observer/MutationObserver.ts +25 -17
  725. package/src/navigator/Navigator.ts +14 -12
  726. package/src/nodes/NodeFactory.ts +1 -1
  727. package/src/nodes/document/Document.ts +67 -62
  728. package/src/nodes/document/DocumentReadyStateManager.ts +13 -10
  729. package/src/nodes/element/Element.ts +44 -29
  730. package/src/nodes/element/HTMLCollection.ts +1 -4
  731. package/src/nodes/element/NamedNodeMap.ts +4 -0
  732. package/src/nodes/element/NamedNodeMapProxyFactory.ts +0 -6
  733. package/src/nodes/html-anchor-element/HTMLAnchorElement.ts +4 -8
  734. package/src/nodes/html-area-element/HTMLAreaElement.ts +7 -11
  735. package/src/nodes/html-audio-element/Audio.ts +6 -0
  736. package/src/nodes/html-button-element/HTMLButtonElement.ts +67 -37
  737. package/src/nodes/html-canvas-element/HTMLCanvasElement.ts +5 -3
  738. package/src/nodes/html-document/HTMLDocument.ts +2 -8
  739. package/src/nodes/html-element/HTMLElement.ts +151 -129
  740. package/src/nodes/html-form-element/HTMLFormElement.ts +7 -9
  741. package/src/nodes/html-iframe-element/HTMLIFrameElement.ts +31 -42
  742. package/src/nodes/html-image-element/Image.ts +6 -0
  743. package/src/nodes/html-input-element/HTMLInputElement.ts +96 -61
  744. package/src/nodes/html-label-element/HTMLLabelElement.ts +21 -6
  745. package/src/nodes/html-link-element/HTMLLinkElement.ts +12 -19
  746. package/src/nodes/html-media-element/HTMLMediaElement.ts +15 -12
  747. package/src/nodes/html-media-element/MediaStream.ts +6 -0
  748. package/src/nodes/html-media-element/MediaStreamTrack.ts +6 -0
  749. package/src/nodes/html-media-element/TextTrack.ts +6 -0
  750. package/src/nodes/html-media-element/TextTrackCue.ts +6 -0
  751. package/src/nodes/html-media-element/VTTCue.ts +10 -9
  752. package/src/nodes/html-meter-element/HTMLMeterElement.ts +8 -6
  753. package/src/nodes/html-progress-element/HTMLProgressElement.ts +4 -2
  754. package/src/nodes/html-script-element/HTMLScriptElement.ts +25 -45
  755. package/src/nodes/html-select-element/HTMLSelectElement.ts +6 -5
  756. package/src/nodes/html-table-element/HTMLTableElement.ts +8 -9
  757. package/src/nodes/html-table-row-element/HTMLTableRowElement.ts +5 -6
  758. package/src/nodes/html-text-area-element/HTMLTextAreaElement.ts +1 -2
  759. package/src/nodes/html-track-element/HTMLTrackElement.ts +1 -1
  760. package/src/nodes/node/Node.ts +28 -26
  761. package/src/nodes/node/NodeList.ts +10 -11
  762. package/src/nodes/text/Text.ts +1 -2
  763. package/src/permissions/Permissions.ts +17 -1
  764. package/src/query-selector/QuerySelector.ts +15 -10
  765. package/src/range/Range.ts +39 -23
  766. package/src/selection/Selection.ts +27 -17
  767. package/src/window/BrowserWindow.ts +308 -335
  768. package/src/window/VMGlobalPropertyScript.ts +0 -1
  769. package/src/window/WindowBrowserContext.ts +114 -0
  770. package/src/window/WindowClassExtender.ts +306 -0
  771. package/src/window/WindowPageOpenUtility.ts +11 -1
  772. package/src/xml-http-request/XMLHttpRequest.ts +39 -36
  773. package/cjs/browser/utilities/BrowserFrameExceptionObserver.cjs +0 -80
  774. package/cjs/browser/utilities/BrowserFrameExceptionObserver.cjs.map +0 -1
  775. package/cjs/browser/utilities/BrowserFrameExceptionObserver.d.ts.map +0 -1
  776. package/cjs/event/IEventListener.cjs.map +0 -1
  777. package/cjs/event/IEventListener.d.ts +0 -13
  778. package/cjs/event/IEventListener.d.ts.map +0 -1
  779. package/cjs/event/IMessagePort.cjs.map +0 -1
  780. package/cjs/event/IMessagePort.d.ts +0 -24
  781. package/cjs/event/IMessagePort.d.ts.map +0 -1
  782. package/cjs/window/WindowBrowserSettingsReader.cjs +0 -72
  783. package/cjs/window/WindowBrowserSettingsReader.cjs.map +0 -1
  784. package/cjs/window/WindowBrowserSettingsReader.d.ts +0 -29
  785. package/cjs/window/WindowBrowserSettingsReader.d.ts.map +0 -1
  786. package/lib/browser/utilities/BrowserFrameExceptionObserver.d.ts.map +0 -1
  787. package/lib/browser/utilities/BrowserFrameExceptionObserver.js +0 -77
  788. package/lib/browser/utilities/BrowserFrameExceptionObserver.js.map +0 -1
  789. package/lib/event/IEventListener.d.ts +0 -13
  790. package/lib/event/IEventListener.d.ts.map +0 -1
  791. package/lib/event/IEventListener.js +0 -2
  792. package/lib/event/IEventListener.js.map +0 -1
  793. package/lib/event/IMessagePort.d.ts +0 -24
  794. package/lib/event/IMessagePort.d.ts.map +0 -1
  795. package/lib/event/IMessagePort.js +0 -2
  796. package/lib/event/IMessagePort.js.map +0 -1
  797. package/lib/window/WindowBrowserSettingsReader.d.ts +0 -29
  798. package/lib/window/WindowBrowserSettingsReader.d.ts.map +0 -1
  799. package/lib/window/WindowBrowserSettingsReader.js +0 -46
  800. package/lib/window/WindowBrowserSettingsReader.js.map +0 -1
  801. package/src/browser/utilities/BrowserFrameExceptionObserver.ts +0 -111
  802. package/src/event/IEventListener.ts +0 -13
  803. package/src/event/IMessagePort.ts +0 -26
  804. package/src/window/WindowBrowserSettingsReader.ts +0 -55
@@ -1,80 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /**
4
- * Listens for uncaught exceptions coming from Happy DOM on the running Node process and dispatches error events on the Window instance.
5
- */
6
- class BrowserFrameExceptionObserver {
7
- static listenerCount = 0;
8
- browserFrame = null;
9
- uncaughtExceptionListener = null;
10
- uncaughtRejectionListener = null;
11
- /**
12
- * Observes the Node process for uncaught exceptions.
13
- *
14
- * @param browserFrame Browser frame.
15
- */
16
- observe(browserFrame) {
17
- if (this.browserFrame) {
18
- throw new Error('Already observing.');
19
- }
20
- this.browserFrame = browserFrame;
21
- this.constructor.listenerCount++;
22
- this.uncaughtExceptionListener = (error, origin) => {
23
- if (origin === 'unhandledRejection') {
24
- return;
25
- }
26
- if (!this.browserFrame.window) {
27
- throw new Error('Browser frame was not closed correctly. Window is undefined on browser frame, but exception observer is still watching.');
28
- }
29
- if (error instanceof this.browserFrame.window.Error ||
30
- error instanceof this.browserFrame.window.DOMException) {
31
- this.browserFrame.window.console.error(error);
32
- this.browserFrame.window.dispatchEvent(new this.browserFrame.window.ErrorEvent('error', { error, message: error.message }));
33
- }
34
- else if (process.listenerCount('uncaughtException') ===
35
- this.constructor.listenerCount) {
36
- // eslint-disable-next-line no-console
37
- console.error(error);
38
- // Exit if there are no other listeners handling the error.
39
- process.exit(1);
40
- }
41
- };
42
- // The "uncaughtException" event is not always triggered for unhandled rejections.
43
- // Therefore we want to use the "unhandledRejection" event as well.
44
- this.uncaughtRejectionListener = (error) => {
45
- if (!this.browserFrame.window) {
46
- throw new Error('Browser frame was not closed correctly. Window is undefined on browser frame, but exception observer is still watching.');
47
- }
48
- if (error instanceof this.browserFrame.window.Error ||
49
- error instanceof this.browserFrame.window.DOMException) {
50
- this.browserFrame.window.console.error(error);
51
- this.browserFrame.window.dispatchEvent(new this.browserFrame.window.ErrorEvent('error', { error, message: error.message }));
52
- }
53
- else if (process.listenerCount('unhandledRejection') ===
54
- this.constructor.listenerCount) {
55
- // eslint-disable-next-line no-console
56
- console.error(error);
57
- // Exit if there are no other listeners handling the error.
58
- process.exit(1);
59
- }
60
- };
61
- process.on('uncaughtException', this.uncaughtExceptionListener);
62
- process.on('unhandledRejection', this.uncaughtRejectionListener);
63
- }
64
- /**
65
- * Disconnects observer.
66
- */
67
- disconnect() {
68
- if (!this.browserFrame) {
69
- return;
70
- }
71
- this.constructor.listenerCount--;
72
- process.off('uncaughtException', this.uncaughtExceptionListener);
73
- process.off('unhandledRejection', this.uncaughtRejectionListener);
74
- this.uncaughtExceptionListener = null;
75
- this.uncaughtRejectionListener = null;
76
- this.browserFrame = null;
77
- }
78
- }
79
- exports.default = BrowserFrameExceptionObserver;
80
- //# sourceMappingURL=BrowserFrameExceptionObserver.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserFrameExceptionObserver.cjs","sourceRoot":"","sources":["../../../src/browser/utilities/BrowserFrameExceptionObserver.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserFrameExceptionObserver.d.ts","sourceRoot":"","sources":["../../../src/browser/utilities/BrowserFrameExceptionObserver.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,2BAA2B,CAAC;AAEtD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,6BAA6B;IACjD,OAAO,CAAC,MAAM,CAAC,aAAa,CAAK;IACjC,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,yBAAyB,CAGT;IACxB,OAAO,CAAC,yBAAyB,CAAuC;IAExE;;;;OAIG;IACI,OAAO,CAAC,YAAY,EAAE,aAAa,GAAG,IAAI;IA0EjD;;OAEG;IACI,UAAU,IAAI,IAAI;CAczB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IEventListener.cjs","sourceRoot":"","sources":["../../src/event/IEventListener.ts"],"names":[],"mappings":""}
@@ -1,13 +0,0 @@
1
- import Event from './Event.cjs';
2
- /**
3
- * Event listener.
4
- */
5
- export default interface IEventListener {
6
- /**
7
- * Handles event.
8
- *
9
- * @param event Event.
10
- */
11
- handleEvent(event: Event): void;
12
- }
13
- //# sourceMappingURL=IEventListener.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IEventListener.d.ts","sourceRoot":"","sources":["../../src/event/IEventListener.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,cAAc;IACtC;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CAChC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IMessagePort.cjs","sourceRoot":"","sources":["../../src/event/IMessagePort.ts"],"names":[],"mappings":""}
@@ -1,24 +0,0 @@
1
- import EventTarget from './EventTarget.cjs';
2
- /**
3
- * Message port.
4
- *
5
- * @see https://developer.mozilla.org/en-US/docs/Web/API/MessagePort
6
- */
7
- export default interface IMessagePort extends EventTarget {
8
- /**
9
- * Sends a message from the port, and optionally, transfers ownership of objects to other browsing contexts.
10
- *
11
- * @param type Event type.
12
- * @param listener Listener.
13
- */
14
- postMessage(message: unknown, transerList: unknown[]): void;
15
- /**
16
- * Starts the sending of messages queued on the port.
17
- */
18
- start(): void;
19
- /**
20
- * Disconnects the port, so it is no longer active. This stops the flow of messages to that port.
21
- */
22
- close(): void;
23
- }
24
- //# sourceMappingURL=IMessagePort.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IMessagePort.d.ts","sourceRoot":"","sources":["../../src/event/IMessagePort.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C;;;;GAIG;AACH,MAAM,CAAC,OAAO,WAAW,YAAa,SAAQ,WAAW;IACxD;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAE5D;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;CACd"}
@@ -1,72 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const PropertySymbol = __importStar(require("../PropertySymbol.cjs"));
27
- /**
28
- * Browser settings reader that will allow to read settings more securely as it is not possible to override a settings object to make DOM functionality act on it.
29
- */
30
- class WindowBrowserSettingsReader {
31
- static #settings = [];
32
- /**
33
- * Returns browser settings.
34
- *
35
- * @param window Window.
36
- * @returns Settings.
37
- */
38
- static getSettings(window) {
39
- const id = window[PropertySymbol.happyDOMSettingsID];
40
- if (id === undefined || !this.#settings[id]) {
41
- return null;
42
- }
43
- return this.#settings[id];
44
- }
45
- /**
46
- * Sets browser settings.
47
- *
48
- * @param window Window.
49
- * @param settings Settings.
50
- */
51
- static setSettings(window, settings) {
52
- if (window[PropertySymbol.happyDOMSettingsID] !== undefined) {
53
- return;
54
- }
55
- window[PropertySymbol.happyDOMSettingsID] = this.#settings.length;
56
- this.#settings.push(settings);
57
- }
58
- /**
59
- * Removes browser settings.
60
- *
61
- * @param window Window.
62
- */
63
- static removeSettings(window) {
64
- const id = window[PropertySymbol.happyDOMSettingsID];
65
- if (id !== undefined && this.#settings[id]) {
66
- delete this.#settings[id];
67
- }
68
- delete window[PropertySymbol.happyDOMSettingsID];
69
- }
70
- }
71
- exports.default = WindowBrowserSettingsReader;
72
- //# sourceMappingURL=WindowBrowserSettingsReader.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WindowBrowserSettingsReader.cjs","sourceRoot":"","sources":["../../src/window/WindowBrowserSettingsReader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,qEAAuD;AAGvD;;GAEG;AACH,MAAqB,2BAA2B;IAC/C,MAAM,CAAC,SAAS,GAAuB,EAAE,CAAC;IAE1C;;;;;OAKG;IACI,MAAM,CAAC,WAAW,CAAC,MAAqB;QAC9C,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAErD,IAAI,EAAE,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,WAAW,CAAC,MAAqB,EAAE,QAA0B;QAC1E,IAAI,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,KAAK,SAAS,EAAE,CAAC;YAC7D,OAAO;QACR,CAAC;QACD,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QAClE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,cAAc,CAAC,MAAqB;QACjD,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAErD,IAAI,EAAE,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;;AA9CF,8CA+CC"}
@@ -1,29 +0,0 @@
1
- import IBrowserSettings from '../browser/types/IBrowserSettings.cjs';
2
- import BrowserWindow from './BrowserWindow.cjs';
3
- /**
4
- * Browser settings reader that will allow to read settings more securely as it is not possible to override a settings object to make DOM functionality act on it.
5
- */
6
- export default class WindowBrowserSettingsReader {
7
- #private;
8
- /**
9
- * Returns browser settings.
10
- *
11
- * @param window Window.
12
- * @returns Settings.
13
- */
14
- static getSettings(window: BrowserWindow): IBrowserSettings | null;
15
- /**
16
- * Sets browser settings.
17
- *
18
- * @param window Window.
19
- * @param settings Settings.
20
- */
21
- static setSettings(window: BrowserWindow, settings: IBrowserSettings): void;
22
- /**
23
- * Removes browser settings.
24
- *
25
- * @param window Window.
26
- */
27
- static removeSettings(window: BrowserWindow): void;
28
- }
29
- //# sourceMappingURL=WindowBrowserSettingsReader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WindowBrowserSettingsReader.d.ts","sourceRoot":"","sources":["../../src/window/WindowBrowserSettingsReader.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,sCAAsC,CAAC;AAEpE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,2BAA2B;;IAG/C;;;;;OAKG;WACW,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,gBAAgB,GAAG,IAAI;IAUzE;;;;;OAKG;WACW,WAAW,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAQlF;;;;OAIG;WACW,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;CASzD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserFrameExceptionObserver.d.ts","sourceRoot":"","sources":["../../../src/browser/utilities/BrowserFrameExceptionObserver.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,2BAA2B,CAAC;AAEtD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,6BAA6B;IACjD,OAAO,CAAC,MAAM,CAAC,aAAa,CAAK;IACjC,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,yBAAyB,CAGT;IACxB,OAAO,CAAC,yBAAyB,CAAuC;IAExE;;;;OAIG;IACI,OAAO,CAAC,YAAY,EAAE,aAAa,GAAG,IAAI;IA0EjD;;OAEG;IACI,UAAU,IAAI,IAAI;CAczB"}
@@ -1,77 +0,0 @@
1
- /**
2
- * Listens for uncaught exceptions coming from Happy DOM on the running Node process and dispatches error events on the Window instance.
3
- */
4
- export default class BrowserFrameExceptionObserver {
5
- static listenerCount = 0;
6
- browserFrame = null;
7
- uncaughtExceptionListener = null;
8
- uncaughtRejectionListener = null;
9
- /**
10
- * Observes the Node process for uncaught exceptions.
11
- *
12
- * @param browserFrame Browser frame.
13
- */
14
- observe(browserFrame) {
15
- if (this.browserFrame) {
16
- throw new Error('Already observing.');
17
- }
18
- this.browserFrame = browserFrame;
19
- this.constructor.listenerCount++;
20
- this.uncaughtExceptionListener = (error, origin) => {
21
- if (origin === 'unhandledRejection') {
22
- return;
23
- }
24
- if (!this.browserFrame.window) {
25
- throw new Error('Browser frame was not closed correctly. Window is undefined on browser frame, but exception observer is still watching.');
26
- }
27
- if (error instanceof this.browserFrame.window.Error ||
28
- error instanceof this.browserFrame.window.DOMException) {
29
- this.browserFrame.window.console.error(error);
30
- this.browserFrame.window.dispatchEvent(new this.browserFrame.window.ErrorEvent('error', { error, message: error.message }));
31
- }
32
- else if (process.listenerCount('uncaughtException') ===
33
- this.constructor.listenerCount) {
34
- // eslint-disable-next-line no-console
35
- console.error(error);
36
- // Exit if there are no other listeners handling the error.
37
- process.exit(1);
38
- }
39
- };
40
- // The "uncaughtException" event is not always triggered for unhandled rejections.
41
- // Therefore we want to use the "unhandledRejection" event as well.
42
- this.uncaughtRejectionListener = (error) => {
43
- if (!this.browserFrame.window) {
44
- throw new Error('Browser frame was not closed correctly. Window is undefined on browser frame, but exception observer is still watching.');
45
- }
46
- if (error instanceof this.browserFrame.window.Error ||
47
- error instanceof this.browserFrame.window.DOMException) {
48
- this.browserFrame.window.console.error(error);
49
- this.browserFrame.window.dispatchEvent(new this.browserFrame.window.ErrorEvent('error', { error, message: error.message }));
50
- }
51
- else if (process.listenerCount('unhandledRejection') ===
52
- this.constructor.listenerCount) {
53
- // eslint-disable-next-line no-console
54
- console.error(error);
55
- // Exit if there are no other listeners handling the error.
56
- process.exit(1);
57
- }
58
- };
59
- process.on('uncaughtException', this.uncaughtExceptionListener);
60
- process.on('unhandledRejection', this.uncaughtRejectionListener);
61
- }
62
- /**
63
- * Disconnects observer.
64
- */
65
- disconnect() {
66
- if (!this.browserFrame) {
67
- return;
68
- }
69
- this.constructor.listenerCount--;
70
- process.off('uncaughtException', this.uncaughtExceptionListener);
71
- process.off('unhandledRejection', this.uncaughtRejectionListener);
72
- this.uncaughtExceptionListener = null;
73
- this.uncaughtRejectionListener = null;
74
- this.browserFrame = null;
75
- }
76
- }
77
- //# sourceMappingURL=BrowserFrameExceptionObserver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserFrameExceptionObserver.js","sourceRoot":"","sources":["../../../src/browser/utilities/BrowserFrameExceptionObserver.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import Event from './Event.js';
2
- /**
3
- * Event listener.
4
- */
5
- export default interface IEventListener {
6
- /**
7
- * Handles event.
8
- *
9
- * @param event Event.
10
- */
11
- handleEvent(event: Event): void;
12
- }
13
- //# sourceMappingURL=IEventListener.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IEventListener.d.ts","sourceRoot":"","sources":["../../src/event/IEventListener.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,cAAc;IACtC;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CAChC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=IEventListener.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IEventListener.js","sourceRoot":"","sources":["../../src/event/IEventListener.ts"],"names":[],"mappings":""}
@@ -1,24 +0,0 @@
1
- import EventTarget from './EventTarget.js';
2
- /**
3
- * Message port.
4
- *
5
- * @see https://developer.mozilla.org/en-US/docs/Web/API/MessagePort
6
- */
7
- export default interface IMessagePort extends EventTarget {
8
- /**
9
- * Sends a message from the port, and optionally, transfers ownership of objects to other browsing contexts.
10
- *
11
- * @param type Event type.
12
- * @param listener Listener.
13
- */
14
- postMessage(message: unknown, transerList: unknown[]): void;
15
- /**
16
- * Starts the sending of messages queued on the port.
17
- */
18
- start(): void;
19
- /**
20
- * Disconnects the port, so it is no longer active. This stops the flow of messages to that port.
21
- */
22
- close(): void;
23
- }
24
- //# sourceMappingURL=IMessagePort.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IMessagePort.d.ts","sourceRoot":"","sources":["../../src/event/IMessagePort.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C;;;;GAIG;AACH,MAAM,CAAC,OAAO,WAAW,YAAa,SAAQ,WAAW;IACxD;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAE5D;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;CACd"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=IMessagePort.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IMessagePort.js","sourceRoot":"","sources":["../../src/event/IMessagePort.ts"],"names":[],"mappings":""}
@@ -1,29 +0,0 @@
1
- import IBrowserSettings from '../browser/types/IBrowserSettings.js';
2
- import BrowserWindow from './BrowserWindow.js';
3
- /**
4
- * Browser settings reader that will allow to read settings more securely as it is not possible to override a settings object to make DOM functionality act on it.
5
- */
6
- export default class WindowBrowserSettingsReader {
7
- #private;
8
- /**
9
- * Returns browser settings.
10
- *
11
- * @param window Window.
12
- * @returns Settings.
13
- */
14
- static getSettings(window: BrowserWindow): IBrowserSettings | null;
15
- /**
16
- * Sets browser settings.
17
- *
18
- * @param window Window.
19
- * @param settings Settings.
20
- */
21
- static setSettings(window: BrowserWindow, settings: IBrowserSettings): void;
22
- /**
23
- * Removes browser settings.
24
- *
25
- * @param window Window.
26
- */
27
- static removeSettings(window: BrowserWindow): void;
28
- }
29
- //# sourceMappingURL=WindowBrowserSettingsReader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WindowBrowserSettingsReader.d.ts","sourceRoot":"","sources":["../../src/window/WindowBrowserSettingsReader.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,sCAAsC,CAAC;AAEpE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,2BAA2B;;IAG/C;;;;;OAKG;WACW,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,gBAAgB,GAAG,IAAI;IAUzE;;;;;OAKG;WACW,WAAW,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAQlF;;;;OAIG;WACW,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;CASzD"}
@@ -1,46 +0,0 @@
1
- import * as PropertySymbol from '../PropertySymbol.js';
2
- /**
3
- * Browser settings reader that will allow to read settings more securely as it is not possible to override a settings object to make DOM functionality act on it.
4
- */
5
- export default class WindowBrowserSettingsReader {
6
- static #settings = [];
7
- /**
8
- * Returns browser settings.
9
- *
10
- * @param window Window.
11
- * @returns Settings.
12
- */
13
- static getSettings(window) {
14
- const id = window[PropertySymbol.happyDOMSettingsID];
15
- if (id === undefined || !this.#settings[id]) {
16
- return null;
17
- }
18
- return this.#settings[id];
19
- }
20
- /**
21
- * Sets browser settings.
22
- *
23
- * @param window Window.
24
- * @param settings Settings.
25
- */
26
- static setSettings(window, settings) {
27
- if (window[PropertySymbol.happyDOMSettingsID] !== undefined) {
28
- return;
29
- }
30
- window[PropertySymbol.happyDOMSettingsID] = this.#settings.length;
31
- this.#settings.push(settings);
32
- }
33
- /**
34
- * Removes browser settings.
35
- *
36
- * @param window Window.
37
- */
38
- static removeSettings(window) {
39
- const id = window[PropertySymbol.happyDOMSettingsID];
40
- if (id !== undefined && this.#settings[id]) {
41
- delete this.#settings[id];
42
- }
43
- delete window[PropertySymbol.happyDOMSettingsID];
44
- }
45
- }
46
- //# sourceMappingURL=WindowBrowserSettingsReader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WindowBrowserSettingsReader.js","sourceRoot":"","sources":["../../src/window/WindowBrowserSettingsReader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,cAAc,MAAM,sBAAsB,CAAC;AAGvD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,2BAA2B;IAC/C,MAAM,CAAC,SAAS,GAAuB,EAAE,CAAC;IAE1C;;;;;OAKG;IACI,MAAM,CAAC,WAAW,CAAC,MAAqB;QAC9C,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAErD,IAAI,EAAE,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,WAAW,CAAC,MAAqB,EAAE,QAA0B;QAC1E,IAAI,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,KAAK,SAAS,EAAE,CAAC;YAC7D,OAAO;QACR,CAAC;QACD,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QAClE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,cAAc,CAAC,MAAqB;QACjD,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAErD,IAAI,EAAE,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC"}
@@ -1,111 +0,0 @@
1
- import IBrowserFrame from '../types/IBrowserFrame.js';
2
-
3
- /**
4
- * Listens for uncaught exceptions coming from Happy DOM on the running Node process and dispatches error events on the Window instance.
5
- */
6
- export default class BrowserFrameExceptionObserver {
7
- private static listenerCount = 0;
8
- private browserFrame: IBrowserFrame | null = null;
9
- private uncaughtExceptionListener: (
10
- error: Error,
11
- origin: 'uncaughtException' | 'unhandledRejection'
12
- ) => void | null = null;
13
- private uncaughtRejectionListener: (error: Error) => void | null = null;
14
-
15
- /**
16
- * Observes the Node process for uncaught exceptions.
17
- *
18
- * @param browserFrame Browser frame.
19
- */
20
- public observe(browserFrame: IBrowserFrame): void {
21
- if (this.browserFrame) {
22
- throw new Error('Already observing.');
23
- }
24
-
25
- this.browserFrame = browserFrame;
26
-
27
- (<typeof BrowserFrameExceptionObserver>this.constructor).listenerCount++;
28
-
29
- this.uncaughtExceptionListener = (
30
- error: unknown,
31
- origin: 'uncaughtException' | 'unhandledRejection'
32
- ) => {
33
- if (origin === 'unhandledRejection') {
34
- return;
35
- }
36
-
37
- if (!this.browserFrame.window) {
38
- throw new Error(
39
- 'Browser frame was not closed correctly. Window is undefined on browser frame, but exception observer is still watching.'
40
- );
41
- }
42
-
43
- if (
44
- error instanceof this.browserFrame.window.Error ||
45
- error instanceof this.browserFrame.window.DOMException
46
- ) {
47
- this.browserFrame.window.console.error(error);
48
- this.browserFrame.window.dispatchEvent(
49
- new this.browserFrame.window.ErrorEvent('error', { error, message: error.message })
50
- );
51
- } else if (
52
- process.listenerCount('uncaughtException') ===
53
- (<typeof BrowserFrameExceptionObserver>this.constructor).listenerCount
54
- ) {
55
- // eslint-disable-next-line no-console
56
- console.error(error);
57
- // Exit if there are no other listeners handling the error.
58
- process.exit(1);
59
- }
60
- };
61
-
62
- // The "uncaughtException" event is not always triggered for unhandled rejections.
63
- // Therefore we want to use the "unhandledRejection" event as well.
64
- this.uncaughtRejectionListener = (error: unknown) => {
65
- if (!this.browserFrame.window) {
66
- throw new Error(
67
- 'Browser frame was not closed correctly. Window is undefined on browser frame, but exception observer is still watching.'
68
- );
69
- }
70
-
71
- if (
72
- error instanceof this.browserFrame.window.Error ||
73
- error instanceof this.browserFrame.window.DOMException
74
- ) {
75
- this.browserFrame.window.console.error(error);
76
- this.browserFrame.window.dispatchEvent(
77
- new this.browserFrame.window.ErrorEvent('error', { error, message: error.message })
78
- );
79
- } else if (
80
- process.listenerCount('unhandledRejection') ===
81
- (<typeof BrowserFrameExceptionObserver>this.constructor).listenerCount
82
- ) {
83
- // eslint-disable-next-line no-console
84
- console.error(error);
85
- // Exit if there are no other listeners handling the error.
86
- process.exit(1);
87
- }
88
- };
89
-
90
- process.on('uncaughtException', this.uncaughtExceptionListener);
91
- process.on('unhandledRejection', this.uncaughtRejectionListener);
92
- }
93
-
94
- /**
95
- * Disconnects observer.
96
- */
97
- public disconnect(): void {
98
- if (!this.browserFrame) {
99
- return;
100
- }
101
-
102
- (<typeof BrowserFrameExceptionObserver>this.constructor).listenerCount--;
103
-
104
- process.off('uncaughtException', this.uncaughtExceptionListener);
105
- process.off('unhandledRejection', this.uncaughtRejectionListener);
106
-
107
- this.uncaughtExceptionListener = null;
108
- this.uncaughtRejectionListener = null;
109
- this.browserFrame = null;
110
- }
111
- }
@@ -1,13 +0,0 @@
1
- import Event from './Event.js';
2
-
3
- /**
4
- * Event listener.
5
- */
6
- export default interface IEventListener {
7
- /**
8
- * Handles event.
9
- *
10
- * @param event Event.
11
- */
12
- handleEvent(event: Event): void;
13
- }
@@ -1,26 +0,0 @@
1
- import EventTarget from './EventTarget.js';
2
-
3
- /**
4
- * Message port.
5
- *
6
- * @see https://developer.mozilla.org/en-US/docs/Web/API/MessagePort
7
- */
8
- export default interface IMessagePort extends EventTarget {
9
- /**
10
- * Sends a message from the port, and optionally, transfers ownership of objects to other browsing contexts.
11
- *
12
- * @param type Event type.
13
- * @param listener Listener.
14
- */
15
- postMessage(message: unknown, transerList: unknown[]): void;
16
-
17
- /**
18
- * Starts the sending of messages queued on the port.
19
- */
20
- start(): void;
21
-
22
- /**
23
- * Disconnects the port, so it is no longer active. This stops the flow of messages to that port.
24
- */
25
- close(): void;
26
- }