happy-dom 12.10.3 → 13.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 (1659) hide show
  1. package/README.md +27 -5
  2. package/cjs/PropertySymbol.cjs +86 -0
  3. package/cjs/PropertySymbol.cjs.map +1 -0
  4. package/cjs/PropertySymbol.d.ts +82 -0
  5. package/cjs/PropertySymbol.d.ts.map +1 -0
  6. package/cjs/async-task-manager/AsyncTaskManager.cjs +48 -33
  7. package/cjs/async-task-manager/AsyncTaskManager.cjs.map +1 -1
  8. package/cjs/async-task-manager/AsyncTaskManager.d.ts +15 -5
  9. package/cjs/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
  10. package/cjs/browser/Browser.cjs +97 -0
  11. package/cjs/browser/Browser.cjs.map +1 -0
  12. package/cjs/browser/Browser.d.ts +62 -0
  13. package/cjs/browser/Browser.d.ts.map +1 -0
  14. package/cjs/browser/BrowserContext.cjs +86 -0
  15. package/cjs/browser/BrowserContext.cjs.map +1 -0
  16. package/cjs/browser/BrowserContext.d.ts +45 -0
  17. package/cjs/browser/BrowserContext.d.ts.map +1 -0
  18. package/cjs/browser/BrowserFrame.cjs +168 -0
  19. package/cjs/browser/BrowserFrame.cjs.map +1 -0
  20. package/cjs/browser/BrowserFrame.d.ts +98 -0
  21. package/cjs/browser/BrowserFrame.d.ts.map +1 -0
  22. package/cjs/browser/BrowserPage.cjs +123 -0
  23. package/cjs/browser/BrowserPage.cjs.map +1 -0
  24. package/cjs/browser/BrowserPage.d.ts +97 -0
  25. package/cjs/browser/BrowserPage.d.ts.map +1 -0
  26. package/cjs/browser/BrowserSettingsFactory.cjs +38 -0
  27. package/cjs/browser/BrowserSettingsFactory.cjs.map +1 -0
  28. package/cjs/browser/BrowserSettingsFactory.d.ts +16 -0
  29. package/cjs/browser/BrowserSettingsFactory.d.ts.map +1 -0
  30. package/cjs/browser/DefaultBrowserSettings.cjs +34 -0
  31. package/cjs/browser/DefaultBrowserSettings.cjs.map +1 -0
  32. package/cjs/browser/DefaultBrowserSettings.d.ts +4 -0
  33. package/cjs/browser/DefaultBrowserSettings.d.ts.map +1 -0
  34. package/cjs/browser/detached-browser/DetachedBrowser.cjs +92 -0
  35. package/cjs/browser/detached-browser/DetachedBrowser.cjs.map +1 -0
  36. package/cjs/browser/detached-browser/DetachedBrowser.d.ts +72 -0
  37. package/cjs/browser/detached-browser/DetachedBrowser.d.ts.map +1 -0
  38. package/cjs/browser/detached-browser/DetachedBrowserContext.cjs +87 -0
  39. package/cjs/browser/detached-browser/DetachedBrowserContext.cjs.map +1 -0
  40. package/cjs/browser/detached-browser/DetachedBrowserContext.d.ts +45 -0
  41. package/cjs/browser/detached-browser/DetachedBrowserContext.d.ts.map +1 -0
  42. package/cjs/browser/detached-browser/DetachedBrowserFrame.cjs +182 -0
  43. package/cjs/browser/detached-browser/DetachedBrowserFrame.cjs.map +1 -0
  44. package/cjs/browser/detached-browser/DetachedBrowserFrame.d.ts +99 -0
  45. package/cjs/browser/detached-browser/DetachedBrowserFrame.d.ts.map +1 -0
  46. package/cjs/browser/detached-browser/DetachedBrowserPage.cjs +135 -0
  47. package/cjs/browser/detached-browser/DetachedBrowserPage.cjs.map +1 -0
  48. package/cjs/browser/detached-browser/DetachedBrowserPage.d.ts +97 -0
  49. package/cjs/browser/detached-browser/DetachedBrowserPage.d.ts.map +1 -0
  50. package/cjs/browser/enums/BrowserErrorCaptureEnum.cjs +13 -0
  51. package/cjs/browser/enums/BrowserErrorCaptureEnum.cjs.map +1 -0
  52. package/cjs/browser/enums/BrowserErrorCaptureEnum.d.ts +10 -0
  53. package/cjs/browser/enums/BrowserErrorCaptureEnum.d.ts.map +1 -0
  54. package/cjs/browser/enums/BrowserNavigationCrossOriginPolicyEnum.cjs +13 -0
  55. package/cjs/browser/enums/BrowserNavigationCrossOriginPolicyEnum.cjs.map +1 -0
  56. package/cjs/browser/enums/BrowserNavigationCrossOriginPolicyEnum.d.ts +10 -0
  57. package/cjs/browser/enums/BrowserNavigationCrossOriginPolicyEnum.d.ts.map +1 -0
  58. package/cjs/{window/IHappyDOMOptions.cjs → browser/types/IBrowser.cjs} +1 -1
  59. package/cjs/browser/types/IBrowser.cjs.map +1 -0
  60. package/cjs/browser/types/IBrowser.d.ts +44 -0
  61. package/cjs/browser/types/IBrowser.d.ts.map +1 -0
  62. package/cjs/{window/IHappyDOMSettings.cjs → browser/types/IBrowserContext.cjs} +1 -1
  63. package/cjs/browser/types/IBrowserContext.cjs.map +1 -0
  64. package/cjs/browser/types/IBrowserContext.d.ts +38 -0
  65. package/cjs/browser/types/IBrowserContext.d.ts.map +1 -0
  66. package/cjs/browser/types/IBrowserFrame.cjs +27 -0
  67. package/cjs/browser/types/IBrowserFrame.cjs.map +1 -0
  68. package/cjs/browser/types/IBrowserFrame.d.ts +62 -0
  69. package/cjs/browser/types/IBrowserFrame.d.ts.map +1 -0
  70. package/cjs/browser/types/IBrowserPage.cjs +3 -0
  71. package/cjs/browser/types/IBrowserPage.cjs.map +1 -0
  72. package/cjs/browser/types/IBrowserPage.d.ts +63 -0
  73. package/cjs/browser/types/IBrowserPage.d.ts.map +1 -0
  74. package/cjs/browser/types/IBrowserPageViewport.cjs +3 -0
  75. package/cjs/browser/types/IBrowserPageViewport.cjs.map +1 -0
  76. package/cjs/browser/types/IBrowserPageViewport.d.ts +6 -0
  77. package/cjs/browser/types/IBrowserPageViewport.d.ts.map +1 -0
  78. package/cjs/browser/types/IBrowserSettings.cjs +3 -0
  79. package/cjs/browser/types/IBrowserSettings.cjs.map +1 -0
  80. package/cjs/browser/types/IBrowserSettings.d.ts +81 -0
  81. package/cjs/browser/types/IBrowserSettings.d.ts.map +1 -0
  82. package/cjs/browser/types/IGoToOptions.cjs +3 -0
  83. package/cjs/browser/types/IGoToOptions.cjs.map +1 -0
  84. package/cjs/browser/types/IGoToOptions.d.ts +16 -0
  85. package/cjs/browser/types/IGoToOptions.d.ts.map +1 -0
  86. package/cjs/browser/types/IOptionalBrowserSettings.cjs +3 -0
  87. package/cjs/browser/types/IOptionalBrowserSettings.cjs.map +1 -0
  88. package/cjs/browser/types/IOptionalBrowserSettings.d.ts +60 -0
  89. package/cjs/browser/types/IOptionalBrowserSettings.d.ts.map +1 -0
  90. package/cjs/browser/types/IReloadOptions.cjs +3 -0
  91. package/cjs/browser/types/IReloadOptions.cjs.map +1 -0
  92. package/cjs/browser/types/IReloadOptions.d.ts +14 -0
  93. package/cjs/browser/types/IReloadOptions.d.ts.map +1 -0
  94. package/cjs/browser/utilities/BrowserFrameExceptionObserver.cjs +76 -0
  95. package/cjs/browser/utilities/BrowserFrameExceptionObserver.cjs.map +1 -0
  96. package/cjs/browser/utilities/BrowserFrameExceptionObserver.d.ts +21 -0
  97. package/cjs/browser/utilities/BrowserFrameExceptionObserver.d.ts.map +1 -0
  98. package/cjs/browser/utilities/BrowserFrameFactory.cjs +87 -0
  99. package/cjs/browser/utilities/BrowserFrameFactory.cjs.map +1 -0
  100. package/cjs/browser/utilities/BrowserFrameFactory.d.ts +20 -0
  101. package/cjs/browser/utilities/BrowserFrameFactory.d.ts.map +1 -0
  102. package/cjs/browser/utilities/BrowserFrameNavigator.cjs +154 -0
  103. package/cjs/browser/utilities/BrowserFrameNavigator.cjs.map +1 -0
  104. package/cjs/browser/utilities/BrowserFrameNavigator.d.ts +25 -0
  105. package/cjs/browser/utilities/BrowserFrameNavigator.d.ts.map +1 -0
  106. package/cjs/browser/utilities/BrowserFrameScriptEvaluator.cjs +24 -0
  107. package/cjs/browser/utilities/BrowserFrameScriptEvaluator.cjs.map +1 -0
  108. package/cjs/browser/utilities/BrowserFrameScriptEvaluator.d.ts +17 -0
  109. package/cjs/browser/utilities/BrowserFrameScriptEvaluator.d.ts.map +1 -0
  110. package/cjs/browser/utilities/BrowserFrameURL.cjs +39 -0
  111. package/cjs/browser/utilities/BrowserFrameURL.cjs.map +1 -0
  112. package/cjs/browser/utilities/BrowserFrameURL.d.ts +17 -0
  113. package/cjs/browser/utilities/BrowserFrameURL.d.ts.map +1 -0
  114. package/cjs/browser/utilities/BrowserFrameValidator.cjs +71 -0
  115. package/cjs/browser/utilities/BrowserFrameValidator.cjs.map +1 -0
  116. package/cjs/browser/utilities/BrowserFrameValidator.d.ts +24 -0
  117. package/cjs/browser/utilities/BrowserFrameValidator.d.ts.map +1 -0
  118. package/cjs/browser/utilities/BrowserPageUtility.cjs +85 -0
  119. package/cjs/browser/utilities/BrowserPageUtility.cjs.map +1 -0
  120. package/cjs/browser/utilities/BrowserPageUtility.d.ts +36 -0
  121. package/cjs/browser/utilities/BrowserPageUtility.d.ts.map +1 -0
  122. package/cjs/clipboard/Clipboard.cjs.map +1 -1
  123. package/cjs/clipboard/Clipboard.d.ts +2 -2
  124. package/cjs/clipboard/Clipboard.d.ts.map +1 -1
  125. package/cjs/config/ElementTag.cjs +128 -155
  126. package/cjs/config/ElementTag.cjs.map +1 -1
  127. package/cjs/config/ElementTag.d.ts +1 -152
  128. package/cjs/config/ElementTag.d.ts.map +1 -1
  129. package/cjs/console/VirtualConsole.cjs +70 -54
  130. package/cjs/console/VirtualConsole.cjs.map +1 -1
  131. package/cjs/console/VirtualConsole.d.ts +1 -5
  132. package/cjs/console/VirtualConsole.d.ts.map +1 -1
  133. package/cjs/console/VirtualConsolePrinter.cjs +26 -13
  134. package/cjs/console/VirtualConsolePrinter.cjs.map +1 -1
  135. package/cjs/console/VirtualConsolePrinter.d.ts +1 -2
  136. package/cjs/console/VirtualConsolePrinter.d.ts.map +1 -1
  137. package/cjs/console/types/IVirtualConsolePrinter.d.ts +1 -1
  138. package/cjs/console/types/IVirtualConsolePrinter.d.ts.map +1 -1
  139. package/cjs/cookie/CookieContainer.cjs +71 -0
  140. package/cjs/cookie/CookieContainer.cjs.map +1 -0
  141. package/cjs/cookie/CookieContainer.d.ts +27 -0
  142. package/cjs/cookie/CookieContainer.d.ts.map +1 -0
  143. package/cjs/cookie/enums/CookieSameSiteEnum.cjs.map +1 -0
  144. package/cjs/cookie/enums/CookieSameSiteEnum.d.ts.map +1 -0
  145. package/cjs/cookie/types/ICookie.cjs +3 -0
  146. package/cjs/cookie/types/ICookie.cjs.map +1 -0
  147. package/cjs/cookie/types/ICookie.d.ts +14 -0
  148. package/cjs/cookie/types/ICookie.d.ts.map +1 -0
  149. package/cjs/cookie/types/ICookieContainer.cjs +3 -0
  150. package/cjs/cookie/types/ICookieContainer.cjs.map +1 -0
  151. package/cjs/cookie/types/ICookieContainer.d.ts +25 -0
  152. package/cjs/cookie/types/ICookieContainer.d.ts.map +1 -0
  153. package/cjs/cookie/urilities/CookieExpireUtility.cjs +18 -0
  154. package/cjs/cookie/urilities/CookieExpireUtility.cjs.map +1 -0
  155. package/cjs/cookie/urilities/CookieExpireUtility.d.ts +14 -0
  156. package/cjs/cookie/urilities/CookieExpireUtility.d.ts.map +1 -0
  157. package/cjs/cookie/urilities/CookieStringUtility.cjs +107 -0
  158. package/cjs/cookie/urilities/CookieStringUtility.cjs.map +1 -0
  159. package/cjs/cookie/urilities/CookieStringUtility.d.ts +23 -0
  160. package/cjs/cookie/urilities/CookieStringUtility.d.ts.map +1 -0
  161. package/cjs/cookie/urilities/CookieURLUtility.cjs +28 -0
  162. package/cjs/cookie/urilities/CookieURLUtility.cjs.map +1 -0
  163. package/cjs/cookie/urilities/CookieURLUtility.d.ts +16 -0
  164. package/cjs/cookie/urilities/CookieURLUtility.d.ts.map +1 -0
  165. package/cjs/css/CSSParser.cjs +25 -1
  166. package/cjs/css/CSSParser.cjs.map +1 -1
  167. package/cjs/css/CSSParser.d.ts.map +1 -1
  168. package/cjs/css/CSSStyleSheet.cjs +16 -3
  169. package/cjs/css/CSSStyleSheet.cjs.map +1 -1
  170. package/cjs/css/CSSStyleSheet.d.ts +1 -1
  171. package/cjs/css/CSSStyleSheet.d.ts.map +1 -1
  172. package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs +91 -52
  173. package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs.map +1 -1
  174. package/cjs/css/declaration/AbstractCSSStyleDeclaration.d.ts +1 -6
  175. package/cjs/css/declaration/AbstractCSSStyleDeclaration.d.ts.map +1 -1
  176. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs +32 -7
  177. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs.map +1 -1
  178. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
  179. package/cjs/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts +2 -2
  180. package/cjs/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts.map +1 -1
  181. package/cjs/css/rules/CSSFontFaceRule.cjs +44 -7
  182. package/cjs/css/rules/CSSFontFaceRule.cjs.map +1 -1
  183. package/cjs/css/rules/CSSFontFaceRule.d.ts +3 -2
  184. package/cjs/css/rules/CSSFontFaceRule.d.ts.map +1 -1
  185. package/cjs/css/rules/CSSKeyframeRule.cjs +44 -7
  186. package/cjs/css/rules/CSSKeyframeRule.cjs.map +1 -1
  187. package/cjs/css/rules/CSSKeyframeRule.d.ts +3 -2
  188. package/cjs/css/rules/CSSKeyframeRule.d.ts.map +1 -1
  189. package/cjs/css/rules/CSSStyleRule.cjs +44 -7
  190. package/cjs/css/rules/CSSStyleRule.cjs.map +1 -1
  191. package/cjs/css/rules/CSSStyleRule.d.ts +3 -2
  192. package/cjs/css/rules/CSSStyleRule.d.ts.map +1 -1
  193. package/cjs/custom-element/CustomElementRegistry.cjs +39 -10
  194. package/cjs/custom-element/CustomElementRegistry.cjs.map +1 -1
  195. package/cjs/custom-element/CustomElementRegistry.d.ts +3 -2
  196. package/cjs/custom-element/CustomElementRegistry.d.ts.map +1 -1
  197. package/cjs/dom-implementation/DOMImplementation.cjs +47 -13
  198. package/cjs/dom-implementation/DOMImplementation.cjs.map +1 -1
  199. package/cjs/dom-implementation/DOMImplementation.d.ts +3 -3
  200. package/cjs/dom-implementation/DOMImplementation.d.ts.map +1 -1
  201. package/cjs/dom-parser/DOMParser.cjs +63 -39
  202. package/cjs/dom-parser/DOMParser.cjs.map +1 -1
  203. package/cjs/dom-parser/DOMParser.d.ts +5 -9
  204. package/cjs/dom-parser/DOMParser.d.ts.map +1 -1
  205. package/cjs/dom-token-list/DOMTokenList.cjs +56 -18
  206. package/cjs/dom-token-list/DOMTokenList.cjs.map +1 -1
  207. package/cjs/dom-token-list/DOMTokenList.d.ts +3 -3
  208. package/cjs/dom-token-list/DOMTokenList.d.ts.map +1 -1
  209. package/cjs/event/Event.cjs +40 -14
  210. package/cjs/event/Event.cjs.map +1 -1
  211. package/cjs/event/Event.d.ts +6 -5
  212. package/cjs/event/Event.d.ts.map +1 -1
  213. package/cjs/event/EventTarget.cjs +88 -52
  214. package/cjs/event/EventTarget.cjs.map +1 -1
  215. package/cjs/event/EventTarget.d.ts +4 -9
  216. package/cjs/event/EventTarget.d.ts.map +1 -1
  217. package/cjs/event/IUIEventInit.d.ts +2 -2
  218. package/cjs/event/IUIEventInit.d.ts.map +1 -1
  219. package/cjs/event/UIEvent.d.ts +2 -2
  220. package/cjs/event/UIEvent.d.ts.map +1 -1
  221. package/cjs/event/events/IMessageEventInit.d.ts +2 -2
  222. package/cjs/event/events/IMessageEventInit.d.ts.map +1 -1
  223. package/cjs/event/events/MessageEvent.d.ts +2 -2
  224. package/cjs/event/events/MessageEvent.d.ts.map +1 -1
  225. package/cjs/fetch/AbortController.cjs +25 -1
  226. package/cjs/fetch/AbortController.cjs.map +1 -1
  227. package/cjs/fetch/AbortController.d.ts.map +1 -1
  228. package/cjs/fetch/AbortSignal.cjs +25 -1
  229. package/cjs/fetch/AbortSignal.cjs.map +1 -1
  230. package/cjs/fetch/AbortSignal.d.ts +2 -1
  231. package/cjs/fetch/AbortSignal.d.ts.map +1 -1
  232. package/cjs/fetch/Fetch.cjs +329 -188
  233. package/cjs/fetch/Fetch.cjs.map +1 -1
  234. package/cjs/fetch/Fetch.d.ts +40 -35
  235. package/cjs/fetch/Fetch.d.ts.map +1 -1
  236. package/cjs/fetch/Headers.cjs +41 -16
  237. package/cjs/fetch/Headers.cjs.map +1 -1
  238. package/cjs/fetch/Headers.d.ts +2 -1
  239. package/cjs/fetch/Headers.d.ts.map +1 -1
  240. package/cjs/fetch/Request.cjs +88 -46
  241. package/cjs/fetch/Request.cjs.map +1 -1
  242. package/cjs/fetch/Request.d.ts +21 -9
  243. package/cjs/fetch/Request.d.ts.map +1 -1
  244. package/cjs/fetch/ResourceFetch.cjs +47 -14
  245. package/cjs/fetch/ResourceFetch.cjs.map +1 -1
  246. package/cjs/fetch/ResourceFetch.d.ts +17 -5
  247. package/cjs/fetch/ResourceFetch.d.ts.map +1 -1
  248. package/cjs/fetch/Response.cjs +121 -63
  249. package/cjs/fetch/Response.cjs.map +1 -1
  250. package/cjs/fetch/Response.d.ts +20 -8
  251. package/cjs/fetch/Response.d.ts.map +1 -1
  252. package/cjs/fetch/SyncFetch.cjs +459 -0
  253. package/cjs/fetch/SyncFetch.cjs.map +1 -0
  254. package/cjs/fetch/SyncFetch.d.ts +80 -0
  255. package/cjs/fetch/SyncFetch.d.ts.map +1 -0
  256. package/cjs/fetch/cache/preflight/ICachablePreflightRequest.cjs +3 -0
  257. package/cjs/fetch/cache/preflight/ICachablePreflightRequest.cjs.map +1 -0
  258. package/cjs/fetch/cache/preflight/ICachablePreflightRequest.d.ts +7 -0
  259. package/cjs/fetch/cache/preflight/ICachablePreflightRequest.d.ts.map +1 -0
  260. package/cjs/fetch/cache/preflight/ICachablePreflightResponse.cjs +3 -0
  261. package/cjs/fetch/cache/preflight/ICachablePreflightResponse.cjs.map +1 -0
  262. package/cjs/fetch/cache/preflight/ICachablePreflightResponse.d.ts +7 -0
  263. package/cjs/fetch/cache/preflight/ICachablePreflightResponse.d.ts.map +1 -0
  264. package/cjs/fetch/cache/preflight/ICachedPreflightResponse.cjs +3 -0
  265. package/cjs/fetch/cache/preflight/ICachedPreflightResponse.cjs.map +1 -0
  266. package/cjs/fetch/cache/preflight/ICachedPreflightResponse.d.ts +6 -0
  267. package/cjs/fetch/cache/preflight/ICachedPreflightResponse.d.ts.map +1 -0
  268. package/cjs/fetch/cache/preflight/IPreflightResponseCache.cjs +3 -0
  269. package/cjs/fetch/cache/preflight/IPreflightResponseCache.cjs.map +1 -0
  270. package/cjs/fetch/cache/preflight/IPreflightResponseCache.d.ts +28 -0
  271. package/cjs/fetch/cache/preflight/IPreflightResponseCache.d.ts.map +1 -0
  272. package/cjs/fetch/cache/preflight/PreflightResponseCache.cjs +90 -0
  273. package/cjs/fetch/cache/preflight/PreflightResponseCache.cjs.map +1 -0
  274. package/cjs/fetch/cache/preflight/PreflightResponseCache.d.ts +32 -0
  275. package/cjs/fetch/cache/preflight/PreflightResponseCache.d.ts.map +1 -0
  276. package/cjs/fetch/cache/response/CachedResponseStateEnum.cjs +9 -0
  277. package/cjs/fetch/cache/response/CachedResponseStateEnum.cjs.map +1 -0
  278. package/cjs/fetch/cache/response/CachedResponseStateEnum.d.ts +6 -0
  279. package/cjs/fetch/cache/response/CachedResponseStateEnum.d.ts.map +1 -0
  280. package/cjs/fetch/cache/response/ICachableRequest.cjs +3 -0
  281. package/cjs/fetch/cache/response/ICachableRequest.cjs.map +1 -0
  282. package/cjs/fetch/cache/response/ICachableRequest.d.ts +7 -0
  283. package/cjs/fetch/cache/response/ICachableRequest.d.ts.map +1 -0
  284. package/cjs/fetch/cache/response/ICachableResponse.cjs +3 -0
  285. package/cjs/fetch/cache/response/ICachableResponse.cjs.map +1 -0
  286. package/cjs/fetch/cache/response/ICachableResponse.d.ts +11 -0
  287. package/cjs/fetch/cache/response/ICachableResponse.d.ts.map +1 -0
  288. package/cjs/fetch/cache/response/ICachedResponse.cjs +3 -0
  289. package/cjs/fetch/cache/response/ICachedResponse.cjs.map +1 -0
  290. package/cjs/fetch/cache/response/ICachedResponse.d.ts +38 -0
  291. package/cjs/fetch/cache/response/ICachedResponse.d.ts.map +1 -0
  292. package/cjs/fetch/cache/response/IResponseCache.cjs +3 -0
  293. package/cjs/fetch/cache/response/IResponseCache.cjs.map +1 -0
  294. package/cjs/fetch/cache/response/IResponseCache.d.ts +35 -0
  295. package/cjs/fetch/cache/response/IResponseCache.d.ts.map +1 -0
  296. package/cjs/fetch/cache/response/ResponseCache.cjs +220 -0
  297. package/cjs/fetch/cache/response/ResponseCache.cjs.map +1 -0
  298. package/cjs/fetch/cache/response/ResponseCache.d.ts +40 -0
  299. package/cjs/fetch/cache/response/ResponseCache.d.ts.map +1 -0
  300. package/cjs/fetch/certificate/FetchHTTPSCertificate.cjs +55 -0
  301. package/cjs/fetch/certificate/FetchHTTPSCertificate.cjs.map +1 -0
  302. package/cjs/fetch/certificate/FetchHTTPSCertificate.d.ts +6 -0
  303. package/cjs/fetch/certificate/FetchHTTPSCertificate.d.ts.map +1 -0
  304. package/cjs/fetch/multipart/MultipartFormDataParser.cjs +55 -4
  305. package/cjs/fetch/multipart/MultipartFormDataParser.cjs.map +1 -1
  306. package/cjs/fetch/multipart/MultipartFormDataParser.d.ts +4 -1
  307. package/cjs/fetch/multipart/MultipartFormDataParser.d.ts.map +1 -1
  308. package/cjs/fetch/types/ISyncResponse.cjs +3 -0
  309. package/cjs/fetch/types/ISyncResponse.cjs.map +1 -0
  310. package/cjs/fetch/types/ISyncResponse.d.ts +17 -0
  311. package/cjs/fetch/types/ISyncResponse.d.ts.map +1 -0
  312. package/cjs/fetch/utilities/FetchBodyUtility.cjs +39 -10
  313. package/cjs/fetch/utilities/FetchBodyUtility.cjs.map +1 -1
  314. package/cjs/fetch/utilities/FetchBodyUtility.d.ts +12 -5
  315. package/cjs/fetch/utilities/FetchBodyUtility.d.ts.map +1 -1
  316. package/cjs/fetch/utilities/FetchCORSUtility.cjs +6 -0
  317. package/cjs/fetch/utilities/FetchCORSUtility.cjs.map +1 -1
  318. package/cjs/fetch/utilities/FetchCORSUtility.d.ts +3 -1
  319. package/cjs/fetch/utilities/FetchCORSUtility.d.ts.map +1 -1
  320. package/cjs/fetch/utilities/FetchRequestHeaderUtility.cjs +91 -2
  321. package/cjs/fetch/utilities/FetchRequestHeaderUtility.cjs.map +1 -1
  322. package/cjs/fetch/utilities/FetchRequestHeaderUtility.d.ts +26 -0
  323. package/cjs/fetch/utilities/FetchRequestHeaderUtility.d.ts.map +1 -1
  324. package/cjs/fetch/utilities/FetchRequestReferrerUtility.cjs +83 -44
  325. package/cjs/fetch/utilities/FetchRequestReferrerUtility.cjs.map +1 -1
  326. package/cjs/fetch/utilities/FetchRequestReferrerUtility.d.ts +19 -12
  327. package/cjs/fetch/utilities/FetchRequestReferrerUtility.d.ts.map +1 -1
  328. package/cjs/fetch/utilities/FetchRequestValidationUtility.cjs +53 -0
  329. package/cjs/fetch/utilities/FetchRequestValidationUtility.cjs.map +1 -1
  330. package/cjs/fetch/utilities/FetchRequestValidationUtility.d.ts +17 -2
  331. package/cjs/fetch/utilities/FetchRequestValidationUtility.d.ts.map +1 -1
  332. package/cjs/fetch/utilities/FetchResponseHeaderUtility.cjs +48 -0
  333. package/cjs/fetch/utilities/FetchResponseHeaderUtility.cjs.map +1 -0
  334. package/cjs/fetch/utilities/FetchResponseHeaderUtility.d.ts +24 -0
  335. package/cjs/fetch/utilities/FetchResponseHeaderUtility.d.ts.map +1 -0
  336. package/cjs/fetch/utilities/FetchResponseRedirectUtility.cjs +29 -0
  337. package/cjs/fetch/utilities/FetchResponseRedirectUtility.cjs.map +1 -0
  338. package/cjs/fetch/utilities/FetchResponseRedirectUtility.d.ts +20 -0
  339. package/cjs/fetch/utilities/FetchResponseRedirectUtility.d.ts.map +1 -0
  340. package/cjs/fetch/utilities/SyncFetchScriptBuilder.cjs +63 -0
  341. package/cjs/fetch/utilities/SyncFetchScriptBuilder.cjs.map +1 -0
  342. package/cjs/fetch/utilities/SyncFetchScriptBuilder.d.ts +26 -0
  343. package/cjs/fetch/utilities/SyncFetchScriptBuilder.d.ts.map +1 -0
  344. package/cjs/file/Blob.cjs +34 -8
  345. package/cjs/file/Blob.cjs.map +1 -1
  346. package/cjs/file/Blob.d.ts +2 -1
  347. package/cjs/file/Blob.d.ts.map +1 -1
  348. package/cjs/file/FileReader.cjs +100 -72
  349. package/cjs/file/FileReader.cjs.map +1 -1
  350. package/cjs/file/FileReader.d.ts +5 -15
  351. package/cjs/file/FileReader.d.ts.map +1 -1
  352. package/cjs/form-data/FormData.cjs +69 -39
  353. package/cjs/form-data/FormData.cjs.map +1 -1
  354. package/cjs/form-data/FormData.d.ts +1 -9
  355. package/cjs/form-data/FormData.d.ts.map +1 -1
  356. package/cjs/history/History.cjs +17 -4
  357. package/cjs/history/History.cjs.map +1 -1
  358. package/cjs/history/History.d.ts +1 -1
  359. package/cjs/history/History.d.ts.map +1 -1
  360. package/cjs/index.cjs +171 -151
  361. package/cjs/index.cjs.map +1 -1
  362. package/cjs/index.d.ts +143 -130
  363. package/cjs/index.d.ts.map +1 -1
  364. package/cjs/location/Location.cjs +27 -24
  365. package/cjs/location/Location.cjs.map +1 -1
  366. package/cjs/location/Location.d.ts +9 -9
  367. package/cjs/location/Location.d.ts.map +1 -1
  368. package/cjs/match-media/MediaQueryItem.cjs +6 -3
  369. package/cjs/match-media/MediaQueryItem.cjs.map +1 -1
  370. package/cjs/match-media/MediaQueryItem.d.ts +2 -2
  371. package/cjs/match-media/MediaQueryItem.d.ts.map +1 -1
  372. package/cjs/match-media/MediaQueryList.cjs +62 -25
  373. package/cjs/match-media/MediaQueryList.cjs.map +1 -1
  374. package/cjs/match-media/MediaQueryList.d.ts +3 -6
  375. package/cjs/match-media/MediaQueryList.d.ts.map +1 -1
  376. package/cjs/match-media/MediaQueryParser.d.ts +2 -2
  377. package/cjs/match-media/MediaQueryParser.d.ts.map +1 -1
  378. package/cjs/mutation-observer/MutationListener.cjs +77 -4
  379. package/cjs/mutation-observer/MutationListener.cjs.map +1 -1
  380. package/cjs/mutation-observer/MutationListener.d.ts +36 -3
  381. package/cjs/mutation-observer/MutationListener.d.ts.map +1 -1
  382. package/cjs/mutation-observer/MutationObserver.cjs +93 -15
  383. package/cjs/mutation-observer/MutationObserver.cjs.map +1 -1
  384. package/cjs/mutation-observer/MutationObserver.d.ts +5 -5
  385. package/cjs/mutation-observer/MutationObserver.d.ts.map +1 -1
  386. package/cjs/mutation-observer/MutationRecord.cjs +7 -1
  387. package/cjs/mutation-observer/MutationRecord.cjs.map +1 -1
  388. package/cjs/mutation-observer/MutationRecord.d.ts +6 -0
  389. package/cjs/mutation-observer/MutationRecord.d.ts.map +1 -1
  390. package/cjs/named-node-map/NamedNodeMap.cjs +43 -18
  391. package/cjs/named-node-map/NamedNodeMap.cjs.map +1 -1
  392. package/cjs/named-node-map/NamedNodeMap.d.ts +7 -6
  393. package/cjs/named-node-map/NamedNodeMap.d.ts.map +1 -1
  394. package/cjs/navigator/Navigator.cjs +3 -2
  395. package/cjs/navigator/Navigator.cjs.map +1 -1
  396. package/cjs/navigator/Navigator.d.ts +2 -2
  397. package/cjs/navigator/Navigator.d.ts.map +1 -1
  398. package/cjs/nodes/character-data/CharacterData.cjs +43 -17
  399. package/cjs/nodes/character-data/CharacterData.cjs.map +1 -1
  400. package/cjs/nodes/character-data/CharacterData.d.ts +2 -1
  401. package/cjs/nodes/character-data/CharacterData.d.ts.map +1 -1
  402. package/cjs/nodes/child-node/ChildNodeUtility.cjs +27 -3
  403. package/cjs/nodes/child-node/ChildNodeUtility.cjs.map +1 -1
  404. package/cjs/nodes/child-node/ChildNodeUtility.d.ts.map +1 -1
  405. package/cjs/nodes/document/Document.cjs +143 -105
  406. package/cjs/nodes/document/Document.cjs.map +1 -1
  407. package/cjs/nodes/document/Document.d.ts +24 -24
  408. package/cjs/nodes/document/Document.d.ts.map +1 -1
  409. package/cjs/nodes/document/DocumentReadyStateManager.cjs +1 -1
  410. package/cjs/nodes/document/DocumentReadyStateManager.cjs.map +1 -1
  411. package/cjs/nodes/document/DocumentReadyStateManager.d.ts +3 -3
  412. package/cjs/nodes/document/DocumentReadyStateManager.d.ts.map +1 -1
  413. package/cjs/nodes/document/IDocument.cjs +24 -0
  414. package/cjs/nodes/document/IDocument.cjs.map +1 -1
  415. package/cjs/nodes/document/IDocument.d.ts +4 -2
  416. package/cjs/nodes/document/IDocument.d.ts.map +1 -1
  417. package/cjs/nodes/document/NodeCreationOwnerDocument.cjs +15 -0
  418. package/cjs/nodes/document/NodeCreationOwnerDocument.cjs.map +1 -0
  419. package/cjs/nodes/document/NodeCreationOwnerDocument.d.ts +15 -0
  420. package/cjs/nodes/document/NodeCreationOwnerDocument.d.ts.map +1 -0
  421. package/cjs/nodes/document-fragment/DocumentFragment.cjs +36 -10
  422. package/cjs/nodes/document-fragment/DocumentFragment.cjs.map +1 -1
  423. package/cjs/nodes/document-fragment/DocumentFragment.d.ts +3 -2
  424. package/cjs/nodes/document-fragment/DocumentFragment.d.ts.map +1 -1
  425. package/cjs/nodes/element/Dataset.cjs +25 -1
  426. package/cjs/nodes/element/Dataset.cjs.map +1 -1
  427. package/cjs/nodes/element/Dataset.d.ts.map +1 -1
  428. package/cjs/nodes/element/Element.cjs +77 -59
  429. package/cjs/nodes/element/Element.cjs.map +1 -1
  430. package/cjs/nodes/element/Element.d.ts +11 -18
  431. package/cjs/nodes/element/Element.d.ts.map +1 -1
  432. package/cjs/nodes/element/ElementNamedNodeMap.cjs +74 -50
  433. package/cjs/nodes/element/ElementNamedNodeMap.cjs.map +1 -1
  434. package/cjs/nodes/element/ElementNamedNodeMap.d.ts +6 -5
  435. package/cjs/nodes/element/ElementNamedNodeMap.d.ts.map +1 -1
  436. package/cjs/nodes/element/ElementUtility.cjs +35 -11
  437. package/cjs/nodes/element/ElementUtility.cjs.map +1 -1
  438. package/cjs/nodes/element/ElementUtility.d.ts.map +1 -1
  439. package/cjs/nodes/element/HTMLCollection.cjs +44 -19
  440. package/cjs/nodes/element/HTMLCollection.cjs.map +1 -1
  441. package/cjs/nodes/element/HTMLCollection.d.ts +5 -4
  442. package/cjs/nodes/element/HTMLCollection.d.ts.map +1 -1
  443. package/cjs/nodes/element/IElement.d.ts +2 -2
  444. package/cjs/nodes/element/IElement.d.ts.map +1 -1
  445. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs +97 -53
  446. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs.map +1 -1
  447. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.d.ts +8 -2
  448. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
  449. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.cjs +32 -8
  450. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.cjs.map +1 -1
  451. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts +3 -2
  452. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts.map +1 -1
  453. package/cjs/nodes/html-button-element/HTMLButtonElement.cjs +52 -29
  454. package/cjs/nodes/html-button-element/HTMLButtonElement.cjs.map +1 -1
  455. package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts +3 -10
  456. package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
  457. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.cjs +32 -7
  458. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.cjs.map +1 -1
  459. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts +3 -2
  460. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts.map +1 -1
  461. package/cjs/nodes/html-document/HTMLDocument.cjs +19 -0
  462. package/cjs/nodes/html-document/HTMLDocument.cjs.map +1 -1
  463. package/cjs/nodes/html-document/HTMLDocument.d.ts +13 -0
  464. package/cjs/nodes/html-document/HTMLDocument.d.ts.map +1 -1
  465. package/cjs/nodes/html-element/HTMLElement.cjs +50 -13
  466. package/cjs/nodes/html-element/HTMLElement.cjs.map +1 -1
  467. package/cjs/nodes/html-element/HTMLElement.d.ts +3 -2
  468. package/cjs/nodes/html-element/HTMLElement.d.ts.map +1 -1
  469. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.cjs +32 -6
  470. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.cjs.map +1 -1
  471. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.d.ts +3 -2
  472. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.d.ts.map +1 -1
  473. package/cjs/nodes/html-element/HTMLElementUtility.cjs +34 -10
  474. package/cjs/nodes/html-element/HTMLElementUtility.cjs.map +1 -1
  475. package/cjs/nodes/html-element/HTMLElementUtility.d.ts.map +1 -1
  476. package/cjs/nodes/html-form-element/HTMLFormControlsCollection.cjs +51 -21
  477. package/cjs/nodes/html-form-element/HTMLFormControlsCollection.cjs.map +1 -1
  478. package/cjs/nodes/html-form-element/HTMLFormControlsCollection.d.ts +5 -4
  479. package/cjs/nodes/html-form-element/HTMLFormControlsCollection.d.ts.map +1 -1
  480. package/cjs/nodes/html-form-element/HTMLFormElement.cjs +33 -8
  481. package/cjs/nodes/html-form-element/HTMLFormElement.cjs.map +1 -1
  482. package/cjs/nodes/html-form-element/HTMLFormElement.d.ts +4 -3
  483. package/cjs/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
  484. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs +65 -11
  485. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs.map +1 -1
  486. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts +13 -5
  487. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
  488. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.cjs +25 -2
  489. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.cjs.map +1 -1
  490. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts +10 -2
  491. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts.map +1 -1
  492. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.cjs +122 -0
  493. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.cjs.map +1 -0
  494. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts +35 -0
  495. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts.map +1 -0
  496. package/cjs/nodes/html-iframe-element/IHTMLIFrameElement.d.ts +3 -3
  497. package/cjs/nodes/html-iframe-element/IHTMLIFrameElement.d.ts.map +1 -1
  498. package/cjs/nodes/html-input-element/HTMLInputElement.cjs +126 -101
  499. package/cjs/nodes/html-input-element/HTMLInputElement.cjs.map +1 -1
  500. package/cjs/nodes/html-input-element/HTMLInputElement.d.ts +7 -20
  501. package/cjs/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
  502. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.cjs +32 -7
  503. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.cjs.map +1 -1
  504. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts +3 -2
  505. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts.map +1 -1
  506. package/cjs/nodes/html-label-element/HTMLLabelElement.cjs +25 -1
  507. package/cjs/nodes/html-label-element/HTMLLabelElement.cjs.map +1 -1
  508. package/cjs/nodes/html-label-element/HTMLLabelElement.d.ts.map +1 -1
  509. package/cjs/nodes/html-link-element/HTMLLinkElement.cjs +61 -13
  510. package/cjs/nodes/html-link-element/HTMLLinkElement.cjs.map +1 -1
  511. package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts +12 -3
  512. package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
  513. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.cjs +61 -9
  514. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.cjs.map +1 -1
  515. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts +13 -2
  516. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts.map +1 -1
  517. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.cjs +123 -0
  518. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.cjs.map +1 -0
  519. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts +27 -0
  520. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts.map +1 -0
  521. package/cjs/nodes/html-option-element/HTMLOptionElement.cjs +43 -16
  522. package/cjs/nodes/html-option-element/HTMLOptionElement.cjs.map +1 -1
  523. package/cjs/nodes/html-option-element/HTMLOptionElement.d.ts +4 -4
  524. package/cjs/nodes/html-option-element/HTMLOptionElement.d.ts.map +1 -1
  525. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.cjs +36 -10
  526. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.cjs.map +1 -1
  527. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts +3 -2
  528. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts.map +1 -1
  529. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs +69 -15
  530. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs.map +1 -1
  531. package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts +11 -2
  532. package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  533. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.cjs +52 -3
  534. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.cjs.map +1 -1
  535. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts +11 -1
  536. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts.map +1 -1
  537. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.cjs +141 -0
  538. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.cjs.map +1 -0
  539. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts +26 -0
  540. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts.map +1 -0
  541. package/cjs/nodes/html-select-element/HTMLOptionsCollection.cjs +21 -7
  542. package/cjs/nodes/html-select-element/HTMLOptionsCollection.cjs.map +1 -1
  543. package/cjs/nodes/html-select-element/HTMLOptionsCollection.d.ts +1 -1
  544. package/cjs/nodes/html-select-element/HTMLOptionsCollection.d.ts.map +1 -1
  545. package/cjs/nodes/html-select-element/HTMLSelectElement.cjs +65 -38
  546. package/cjs/nodes/html-select-element/HTMLSelectElement.cjs.map +1 -1
  547. package/cjs/nodes/html-select-element/HTMLSelectElement.d.ts +5 -9
  548. package/cjs/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
  549. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.cjs +32 -7
  550. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.cjs.map +1 -1
  551. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts +3 -2
  552. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts.map +1 -1
  553. package/cjs/nodes/html-slot-element/HTMLSlotElement.cjs +27 -3
  554. package/cjs/nodes/html-slot-element/HTMLSlotElement.cjs.map +1 -1
  555. package/cjs/nodes/html-slot-element/HTMLSlotElement.d.ts.map +1 -1
  556. package/cjs/nodes/html-style-element/HTMLStyleElement.cjs +31 -5
  557. package/cjs/nodes/html-style-element/HTMLStyleElement.cjs.map +1 -1
  558. package/cjs/nodes/html-style-element/HTMLStyleElement.d.ts +2 -1
  559. package/cjs/nodes/html-style-element/HTMLStyleElement.d.ts.map +1 -1
  560. package/cjs/nodes/html-template-element/HTMLTemplateElement.cjs +26 -2
  561. package/cjs/nodes/html-template-element/HTMLTemplateElement.cjs.map +1 -1
  562. package/cjs/nodes/html-template-element/HTMLTemplateElement.d.ts.map +1 -1
  563. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs +88 -53
  564. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs.map +1 -1
  565. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +6 -8
  566. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
  567. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.cjs +32 -7
  568. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.cjs.map +1 -1
  569. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts +3 -2
  570. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts.map +1 -1
  571. package/cjs/nodes/html-unknown-element/HTMLUnknownElement.cjs +73 -34
  572. package/cjs/nodes/html-unknown-element/HTMLUnknownElement.cjs.map +1 -1
  573. package/cjs/nodes/html-unknown-element/HTMLUnknownElement.d.ts +3 -2
  574. package/cjs/nodes/html-unknown-element/HTMLUnknownElement.d.ts.map +1 -1
  575. package/cjs/nodes/node/Node.cjs +100 -61
  576. package/cjs/nodes/node/Node.cjs.map +1 -1
  577. package/cjs/nodes/node/Node.d.ts +12 -11
  578. package/cjs/nodes/node/Node.d.ts.map +1 -1
  579. package/cjs/nodes/node/NodeUtility.cjs +77 -47
  580. package/cjs/nodes/node/NodeUtility.cjs.map +1 -1
  581. package/cjs/nodes/node/NodeUtility.d.ts +1 -1
  582. package/cjs/nodes/node/NodeUtility.d.ts.map +1 -1
  583. package/cjs/nodes/parent-node/ParentNodeUtility.cjs +31 -7
  584. package/cjs/nodes/parent-node/ParentNodeUtility.cjs.map +1 -1
  585. package/cjs/nodes/parent-node/ParentNodeUtility.d.ts.map +1 -1
  586. package/cjs/nodes/shadow-root/ShadowRoot.cjs +27 -3
  587. package/cjs/nodes/shadow-root/ShadowRoot.cjs.map +1 -1
  588. package/cjs/nodes/shadow-root/ShadowRoot.d.ts.map +1 -1
  589. package/cjs/nodes/svg-element/SVGElement.cjs +43 -6
  590. package/cjs/nodes/svg-element/SVGElement.cjs.map +1 -1
  591. package/cjs/nodes/svg-element/SVGElement.d.ts +3 -2
  592. package/cjs/nodes/svg-element/SVGElement.d.ts.map +1 -1
  593. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.cjs +32 -6
  594. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.cjs.map +1 -1
  595. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.d.ts +3 -2
  596. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.d.ts.map +1 -1
  597. package/cjs/nodes/text/Text.cjs +35 -11
  598. package/cjs/nodes/text/Text.cjs.map +1 -1
  599. package/cjs/nodes/text/Text.d.ts +2 -1
  600. package/cjs/nodes/text/Text.d.ts.map +1 -1
  601. package/cjs/query-selector/QuerySelector.cjs +32 -8
  602. package/cjs/query-selector/QuerySelector.cjs.map +1 -1
  603. package/cjs/query-selector/QuerySelector.d.ts.map +1 -1
  604. package/cjs/query-selector/SelectorItem.cjs +28 -2
  605. package/cjs/query-selector/SelectorItem.cjs.map +1 -1
  606. package/cjs/query-selector/SelectorItem.d.ts.map +1 -1
  607. package/cjs/range/Range.cjs +229 -186
  608. package/cjs/range/Range.cjs.map +1 -1
  609. package/cjs/range/Range.d.ts +9 -5
  610. package/cjs/range/Range.d.ts.map +1 -1
  611. package/cjs/range/RangeUtility.cjs +25 -1
  612. package/cjs/range/RangeUtility.cjs.map +1 -1
  613. package/cjs/range/RangeUtility.d.ts.map +1 -1
  614. package/cjs/selection/Selection.cjs +142 -113
  615. package/cjs/selection/Selection.cjs.map +1 -1
  616. package/cjs/selection/Selection.d.ts +2 -11
  617. package/cjs/selection/Selection.d.ts.map +1 -1
  618. package/cjs/storage/Storage.cjs +22 -7
  619. package/cjs/storage/Storage.cjs.map +1 -1
  620. package/cjs/storage/Storage.d.ts +3 -1
  621. package/cjs/storage/Storage.d.ts.map +1 -1
  622. package/cjs/tree-walker/NodeIterator.cjs +17 -3
  623. package/cjs/tree-walker/NodeIterator.cjs.map +1 -1
  624. package/cjs/tree-walker/NodeIterator.d.ts +1 -1
  625. package/cjs/tree-walker/NodeIterator.d.ts.map +1 -1
  626. package/cjs/tree-walker/TreeWalker.cjs +28 -4
  627. package/cjs/tree-walker/TreeWalker.cjs.map +1 -1
  628. package/cjs/tree-walker/TreeWalker.d.ts.map +1 -1
  629. package/cjs/url/URL.cjs +25 -1
  630. package/cjs/url/URL.cjs.map +1 -1
  631. package/cjs/url/URL.d.ts.map +1 -1
  632. package/cjs/validity-state/ValidityState.cjs +26 -1
  633. package/cjs/validity-state/ValidityState.cjs.map +1 -1
  634. package/cjs/validity-state/ValidityState.d.ts.map +1 -1
  635. package/cjs/version.cjs +1 -1
  636. package/cjs/window/BrowserWindow.cjs +962 -0
  637. package/cjs/window/BrowserWindow.cjs.map +1 -0
  638. package/cjs/window/BrowserWindow.d.ts +684 -0
  639. package/cjs/window/BrowserWindow.d.ts.map +1 -0
  640. package/cjs/window/CrossOriginBrowserWindow.cjs +95 -0
  641. package/cjs/window/CrossOriginBrowserWindow.cjs.map +1 -0
  642. package/cjs/window/CrossOriginBrowserWindow.d.ts +55 -0
  643. package/cjs/window/CrossOriginBrowserWindow.d.ts.map +1 -0
  644. package/cjs/window/DetachedWindowAPI.cjs +126 -0
  645. package/cjs/window/DetachedWindowAPI.cjs.map +1 -0
  646. package/cjs/window/DetachedWindowAPI.d.ts +90 -0
  647. package/cjs/window/DetachedWindowAPI.d.ts.map +1 -0
  648. package/cjs/window/GlobalWindow.cjs +25 -1
  649. package/cjs/window/GlobalWindow.cjs.map +1 -1
  650. package/cjs/window/GlobalWindow.d.ts +2 -1
  651. package/cjs/window/GlobalWindow.d.ts.map +1 -1
  652. package/cjs/window/IBrowserWindow.cjs +27 -0
  653. package/cjs/window/IBrowserWindow.cjs.map +1 -0
  654. package/cjs/window/IBrowserWindow.d.ts +554 -0
  655. package/cjs/window/IBrowserWindow.d.ts.map +1 -0
  656. package/cjs/window/ICrossOriginBrowserWindow.cjs +3 -0
  657. package/cjs/window/ICrossOriginBrowserWindow.cjs.map +1 -0
  658. package/cjs/window/ICrossOriginBrowserWindow.d.ts +36 -0
  659. package/cjs/window/ICrossOriginBrowserWindow.d.ts.map +1 -0
  660. package/cjs/window/IWindow.d.ts +5 -527
  661. package/cjs/window/IWindow.d.ts.map +1 -1
  662. package/cjs/window/VMGlobalPropertyScript.cjs +1 -1
  663. package/cjs/window/Window.cjs +16 -831
  664. package/cjs/window/Window.cjs.map +1 -1
  665. package/cjs/window/Window.d.ts +18 -639
  666. package/cjs/window/Window.d.ts.map +1 -1
  667. package/cjs/window/WindowBrowserSettingsReader.cjs +79 -0
  668. package/cjs/window/WindowBrowserSettingsReader.cjs.map +1 -0
  669. package/cjs/window/WindowBrowserSettingsReader.d.ts +29 -0
  670. package/cjs/window/WindowBrowserSettingsReader.d.ts.map +1 -0
  671. package/cjs/window/WindowErrorUtility.cjs +25 -2
  672. package/cjs/window/WindowErrorUtility.cjs.map +1 -1
  673. package/cjs/window/WindowErrorUtility.d.ts +4 -4
  674. package/cjs/window/WindowErrorUtility.d.ts.map +1 -1
  675. package/cjs/window/WindowPageOpenUtility.cjs +148 -0
  676. package/cjs/window/WindowPageOpenUtility.cjs.map +1 -0
  677. package/cjs/window/WindowPageOpenUtility.d.ts +30 -0
  678. package/cjs/window/WindowPageOpenUtility.d.ts.map +1 -0
  679. package/cjs/xml-http-request/XMLHttpRequest.cjs +265 -665
  680. package/cjs/xml-http-request/XMLHttpRequest.cjs.map +1 -1
  681. package/cjs/xml-http-request/XMLHttpRequest.d.ts +32 -108
  682. package/cjs/xml-http-request/XMLHttpRequest.d.ts.map +1 -1
  683. package/cjs/xml-http-request/utilities/XMLHttpRequestResponseDataParser.cjs +69 -0
  684. package/cjs/xml-http-request/utilities/XMLHttpRequestResponseDataParser.cjs.map +1 -0
  685. package/cjs/xml-http-request/utilities/XMLHttpRequestResponseDataParser.d.ts +26 -0
  686. package/cjs/xml-http-request/utilities/XMLHttpRequestResponseDataParser.d.ts.map +1 -0
  687. package/cjs/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.cjs +29 -0
  688. package/cjs/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.cjs.map +1 -0
  689. package/cjs/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.d.ts +15 -0
  690. package/cjs/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.d.ts.map +1 -0
  691. package/cjs/xml-parser/XMLParser.cjs +3 -2
  692. package/cjs/xml-parser/XMLParser.cjs.map +1 -1
  693. package/cjs/xml-parser/XMLParser.d.ts.map +1 -1
  694. package/cjs/xml-serializer/XMLSerializer.cjs +36 -33
  695. package/cjs/xml-serializer/XMLSerializer.cjs.map +1 -1
  696. package/cjs/xml-serializer/XMLSerializer.d.ts +1 -11
  697. package/cjs/xml-serializer/XMLSerializer.d.ts.map +1 -1
  698. package/lib/PropertySymbol.d.ts +82 -0
  699. package/lib/PropertySymbol.d.ts.map +1 -0
  700. package/lib/PropertySymbol.js +82 -0
  701. package/lib/PropertySymbol.js.map +1 -0
  702. package/lib/async-task-manager/AsyncTaskManager.d.ts +15 -5
  703. package/lib/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
  704. package/lib/async-task-manager/AsyncTaskManager.js +48 -33
  705. package/lib/async-task-manager/AsyncTaskManager.js.map +1 -1
  706. package/lib/browser/Browser.d.ts +62 -0
  707. package/lib/browser/Browser.d.ts.map +1 -0
  708. package/lib/browser/Browser.js +91 -0
  709. package/lib/browser/Browser.js.map +1 -0
  710. package/lib/browser/BrowserContext.d.ts +45 -0
  711. package/lib/browser/BrowserContext.d.ts.map +1 -0
  712. package/lib/browser/BrowserContext.js +80 -0
  713. package/lib/browser/BrowserContext.js.map +1 -0
  714. package/lib/browser/BrowserFrame.d.ts +98 -0
  715. package/lib/browser/BrowserFrame.d.ts.map +1 -0
  716. package/lib/browser/BrowserFrame.js +140 -0
  717. package/lib/browser/BrowserFrame.js.map +1 -0
  718. package/lib/browser/BrowserPage.d.ts +97 -0
  719. package/lib/browser/BrowserPage.d.ts.map +1 -0
  720. package/lib/browser/BrowserPage.js +117 -0
  721. package/lib/browser/BrowserPage.js.map +1 -0
  722. package/lib/browser/BrowserSettingsFactory.d.ts +16 -0
  723. package/lib/browser/BrowserSettingsFactory.d.ts.map +1 -0
  724. package/lib/browser/BrowserSettingsFactory.js +32 -0
  725. package/lib/browser/BrowserSettingsFactory.js.map +1 -0
  726. package/lib/browser/DefaultBrowserSettings.d.ts +4 -0
  727. package/lib/browser/DefaultBrowserSettings.d.ts.map +1 -0
  728. package/lib/browser/DefaultBrowserSettings.js +29 -0
  729. package/lib/browser/DefaultBrowserSettings.js.map +1 -0
  730. package/lib/browser/detached-browser/DetachedBrowser.d.ts +72 -0
  731. package/lib/browser/detached-browser/DetachedBrowser.d.ts.map +1 -0
  732. package/lib/browser/detached-browser/DetachedBrowser.js +86 -0
  733. package/lib/browser/detached-browser/DetachedBrowser.js.map +1 -0
  734. package/lib/browser/detached-browser/DetachedBrowserContext.d.ts +45 -0
  735. package/lib/browser/detached-browser/DetachedBrowserContext.d.ts.map +1 -0
  736. package/lib/browser/detached-browser/DetachedBrowserContext.js +81 -0
  737. package/lib/browser/detached-browser/DetachedBrowserContext.js.map +1 -0
  738. package/lib/browser/detached-browser/DetachedBrowserFrame.d.ts +99 -0
  739. package/lib/browser/detached-browser/DetachedBrowserFrame.d.ts.map +1 -0
  740. package/lib/browser/detached-browser/DetachedBrowserFrame.js +154 -0
  741. package/lib/browser/detached-browser/DetachedBrowserFrame.js.map +1 -0
  742. package/lib/browser/detached-browser/DetachedBrowserPage.d.ts +97 -0
  743. package/lib/browser/detached-browser/DetachedBrowserPage.d.ts.map +1 -0
  744. package/lib/browser/detached-browser/DetachedBrowserPage.js +129 -0
  745. package/lib/browser/detached-browser/DetachedBrowserPage.js.map +1 -0
  746. package/lib/browser/enums/BrowserErrorCaptureEnum.d.ts +10 -0
  747. package/lib/browser/enums/BrowserErrorCaptureEnum.d.ts.map +1 -0
  748. package/lib/browser/enums/BrowserErrorCaptureEnum.js +11 -0
  749. package/lib/browser/enums/BrowserErrorCaptureEnum.js.map +1 -0
  750. package/lib/browser/enums/BrowserNavigationCrossOriginPolicyEnum.d.ts +10 -0
  751. package/lib/browser/enums/BrowserNavigationCrossOriginPolicyEnum.d.ts.map +1 -0
  752. package/lib/browser/enums/BrowserNavigationCrossOriginPolicyEnum.js +11 -0
  753. package/lib/browser/enums/BrowserNavigationCrossOriginPolicyEnum.js.map +1 -0
  754. package/lib/browser/types/IBrowser.d.ts +44 -0
  755. package/lib/browser/types/IBrowser.d.ts.map +1 -0
  756. package/lib/browser/types/IBrowser.js +2 -0
  757. package/lib/browser/types/IBrowser.js.map +1 -0
  758. package/lib/browser/types/IBrowserContext.d.ts +38 -0
  759. package/lib/browser/types/IBrowserContext.d.ts.map +1 -0
  760. package/lib/browser/types/IBrowserContext.js +2 -0
  761. package/lib/browser/types/IBrowserContext.js.map +1 -0
  762. package/lib/browser/types/IBrowserFrame.d.ts +62 -0
  763. package/lib/browser/types/IBrowserFrame.d.ts.map +1 -0
  764. package/lib/browser/types/IBrowserFrame.js +2 -0
  765. package/lib/browser/types/IBrowserFrame.js.map +1 -0
  766. package/lib/browser/types/IBrowserPage.d.ts +63 -0
  767. package/lib/browser/types/IBrowserPage.d.ts.map +1 -0
  768. package/lib/browser/types/IBrowserPage.js +2 -0
  769. package/lib/browser/types/IBrowserPage.js.map +1 -0
  770. package/lib/browser/types/IBrowserPageViewport.d.ts +6 -0
  771. package/lib/browser/types/IBrowserPageViewport.d.ts.map +1 -0
  772. package/lib/browser/types/IBrowserPageViewport.js +2 -0
  773. package/lib/browser/types/IBrowserPageViewport.js.map +1 -0
  774. package/lib/browser/types/IBrowserSettings.d.ts +81 -0
  775. package/lib/browser/types/IBrowserSettings.d.ts.map +1 -0
  776. package/lib/browser/types/IBrowserSettings.js +2 -0
  777. package/lib/browser/types/IBrowserSettings.js.map +1 -0
  778. package/lib/browser/types/IGoToOptions.d.ts +16 -0
  779. package/lib/browser/types/IGoToOptions.d.ts.map +1 -0
  780. package/lib/browser/types/IGoToOptions.js +2 -0
  781. package/lib/browser/types/IGoToOptions.js.map +1 -0
  782. package/lib/browser/types/IOptionalBrowserSettings.d.ts +60 -0
  783. package/lib/browser/types/IOptionalBrowserSettings.d.ts.map +1 -0
  784. package/lib/browser/types/IOptionalBrowserSettings.js +2 -0
  785. package/lib/browser/types/IOptionalBrowserSettings.js.map +1 -0
  786. package/lib/browser/types/IReloadOptions.d.ts +14 -0
  787. package/lib/browser/types/IReloadOptions.d.ts.map +1 -0
  788. package/lib/browser/types/IReloadOptions.js +2 -0
  789. package/lib/browser/types/IReloadOptions.js.map +1 -0
  790. package/lib/browser/utilities/BrowserFrameExceptionObserver.d.ts +21 -0
  791. package/lib/browser/utilities/BrowserFrameExceptionObserver.d.ts.map +1 -0
  792. package/lib/browser/utilities/BrowserFrameExceptionObserver.js +74 -0
  793. package/lib/browser/utilities/BrowserFrameExceptionObserver.js.map +1 -0
  794. package/lib/browser/utilities/BrowserFrameFactory.d.ts +20 -0
  795. package/lib/browser/utilities/BrowserFrameFactory.d.ts.map +1 -0
  796. package/lib/browser/utilities/BrowserFrameFactory.js +61 -0
  797. package/lib/browser/utilities/BrowserFrameFactory.js.map +1 -0
  798. package/lib/browser/utilities/BrowserFrameNavigator.d.ts +25 -0
  799. package/lib/browser/utilities/BrowserFrameNavigator.d.ts.map +1 -0
  800. package/lib/browser/utilities/BrowserFrameNavigator.js +125 -0
  801. package/lib/browser/utilities/BrowserFrameNavigator.js.map +1 -0
  802. package/lib/browser/utilities/BrowserFrameScriptEvaluator.d.ts +17 -0
  803. package/lib/browser/utilities/BrowserFrameScriptEvaluator.d.ts.map +1 -0
  804. package/lib/browser/utilities/BrowserFrameScriptEvaluator.js +21 -0
  805. package/lib/browser/utilities/BrowserFrameScriptEvaluator.js.map +1 -0
  806. package/lib/browser/utilities/BrowserFrameURL.d.ts +17 -0
  807. package/lib/browser/utilities/BrowserFrameURL.d.ts.map +1 -0
  808. package/lib/browser/utilities/BrowserFrameURL.js +33 -0
  809. package/lib/browser/utilities/BrowserFrameURL.js.map +1 -0
  810. package/lib/browser/utilities/BrowserFrameValidator.d.ts +24 -0
  811. package/lib/browser/utilities/BrowserFrameValidator.d.ts.map +1 -0
  812. package/lib/browser/utilities/BrowserFrameValidator.js +65 -0
  813. package/lib/browser/utilities/BrowserFrameValidator.js.map +1 -0
  814. package/lib/browser/utilities/BrowserPageUtility.d.ts +36 -0
  815. package/lib/browser/utilities/BrowserPageUtility.d.ts.map +1 -0
  816. package/lib/browser/utilities/BrowserPageUtility.js +79 -0
  817. package/lib/browser/utilities/BrowserPageUtility.js.map +1 -0
  818. package/lib/clipboard/Clipboard.d.ts +2 -2
  819. package/lib/clipboard/Clipboard.d.ts.map +1 -1
  820. package/lib/clipboard/Clipboard.js.map +1 -1
  821. package/lib/config/ElementTag.d.ts +1 -152
  822. package/lib/config/ElementTag.d.ts.map +1 -1
  823. package/lib/config/ElementTag.js +128 -152
  824. package/lib/config/ElementTag.js.map +1 -1
  825. package/lib/console/VirtualConsole.d.ts +1 -5
  826. package/lib/console/VirtualConsole.d.ts.map +1 -1
  827. package/lib/console/VirtualConsole.js +72 -55
  828. package/lib/console/VirtualConsole.js.map +1 -1
  829. package/lib/console/VirtualConsolePrinter.d.ts +1 -2
  830. package/lib/console/VirtualConsolePrinter.d.ts.map +1 -1
  831. package/lib/console/VirtualConsolePrinter.js +28 -14
  832. package/lib/console/VirtualConsolePrinter.js.map +1 -1
  833. package/lib/console/types/IVirtualConsolePrinter.d.ts +1 -1
  834. package/lib/console/types/IVirtualConsolePrinter.d.ts.map +1 -1
  835. package/lib/cookie/CookieContainer.d.ts +27 -0
  836. package/lib/cookie/CookieContainer.d.ts.map +1 -0
  837. package/lib/cookie/CookieContainer.js +66 -0
  838. package/lib/cookie/CookieContainer.js.map +1 -0
  839. package/lib/cookie/enums/CookieSameSiteEnum.d.ts.map +1 -0
  840. package/lib/cookie/enums/CookieSameSiteEnum.js.map +1 -0
  841. package/lib/cookie/types/ICookie.d.ts +14 -0
  842. package/lib/cookie/types/ICookie.d.ts.map +1 -0
  843. package/lib/cookie/types/ICookie.js +2 -0
  844. package/lib/cookie/types/ICookie.js.map +1 -0
  845. package/lib/cookie/types/ICookieContainer.d.ts +25 -0
  846. package/lib/cookie/types/ICookieContainer.d.ts.map +1 -0
  847. package/lib/cookie/types/ICookieContainer.js +2 -0
  848. package/lib/cookie/types/ICookieContainer.js.map +1 -0
  849. package/lib/cookie/urilities/CookieExpireUtility.d.ts +14 -0
  850. package/lib/cookie/urilities/CookieExpireUtility.d.ts.map +1 -0
  851. package/lib/cookie/urilities/CookieExpireUtility.js +15 -0
  852. package/lib/cookie/urilities/CookieExpireUtility.js.map +1 -0
  853. package/lib/cookie/urilities/CookieStringUtility.d.ts +23 -0
  854. package/lib/cookie/urilities/CookieStringUtility.d.ts.map +1 -0
  855. package/lib/cookie/urilities/CookieStringUtility.js +101 -0
  856. package/lib/cookie/urilities/CookieStringUtility.js.map +1 -0
  857. package/lib/cookie/urilities/CookieURLUtility.d.ts +16 -0
  858. package/lib/cookie/urilities/CookieURLUtility.d.ts.map +1 -0
  859. package/lib/cookie/urilities/CookieURLUtility.js +22 -0
  860. package/lib/cookie/urilities/CookieURLUtility.js.map +1 -0
  861. package/lib/css/CSSParser.d.ts.map +1 -1
  862. package/lib/css/CSSParser.js +2 -1
  863. package/lib/css/CSSParser.js.map +1 -1
  864. package/lib/css/CSSStyleSheet.d.ts +1 -1
  865. package/lib/css/CSSStyleSheet.d.ts.map +1 -1
  866. package/lib/css/CSSStyleSheet.js +18 -4
  867. package/lib/css/CSSStyleSheet.js.map +1 -1
  868. package/lib/css/declaration/AbstractCSSStyleDeclaration.d.ts +1 -6
  869. package/lib/css/declaration/AbstractCSSStyleDeclaration.d.ts.map +1 -1
  870. package/lib/css/declaration/AbstractCSSStyleDeclaration.js +70 -53
  871. package/lib/css/declaration/AbstractCSSStyleDeclaration.js.map +1 -1
  872. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
  873. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js +9 -7
  874. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js.map +1 -1
  875. package/lib/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts +2 -2
  876. package/lib/css/declaration/measurement-converter/CSSMeasurementConverter.d.ts.map +1 -1
  877. package/lib/css/rules/CSSFontFaceRule.d.ts +3 -2
  878. package/lib/css/rules/CSSFontFaceRule.d.ts.map +1 -1
  879. package/lib/css/rules/CSSFontFaceRule.js +23 -8
  880. package/lib/css/rules/CSSFontFaceRule.js.map +1 -1
  881. package/lib/css/rules/CSSKeyframeRule.d.ts +3 -2
  882. package/lib/css/rules/CSSKeyframeRule.d.ts.map +1 -1
  883. package/lib/css/rules/CSSKeyframeRule.js +23 -8
  884. package/lib/css/rules/CSSKeyframeRule.js.map +1 -1
  885. package/lib/css/rules/CSSStyleRule.d.ts +3 -2
  886. package/lib/css/rules/CSSStyleRule.d.ts.map +1 -1
  887. package/lib/css/rules/CSSStyleRule.js +23 -8
  888. package/lib/css/rules/CSSStyleRule.js.map +1 -1
  889. package/lib/custom-element/CustomElementRegistry.d.ts +3 -2
  890. package/lib/custom-element/CustomElementRegistry.d.ts.map +1 -1
  891. package/lib/custom-element/CustomElementRegistry.js +18 -11
  892. package/lib/custom-element/CustomElementRegistry.js.map +1 -1
  893. package/lib/dom-implementation/DOMImplementation.d.ts +3 -3
  894. package/lib/dom-implementation/DOMImplementation.d.ts.map +1 -1
  895. package/lib/dom-implementation/DOMImplementation.js +26 -14
  896. package/lib/dom-implementation/DOMImplementation.js.map +1 -1
  897. package/lib/dom-parser/DOMParser.d.ts +5 -9
  898. package/lib/dom-parser/DOMParser.d.ts.map +1 -1
  899. package/lib/dom-parser/DOMParser.js +40 -39
  900. package/lib/dom-parser/DOMParser.js.map +1 -1
  901. package/lib/dom-token-list/DOMTokenList.d.ts +3 -3
  902. package/lib/dom-token-list/DOMTokenList.d.ts.map +1 -1
  903. package/lib/dom-token-list/DOMTokenList.js +33 -18
  904. package/lib/dom-token-list/DOMTokenList.js.map +1 -1
  905. package/lib/event/Event.d.ts +6 -5
  906. package/lib/event/Event.d.ts.map +1 -1
  907. package/lib/event/Event.js +19 -15
  908. package/lib/event/Event.js.map +1 -1
  909. package/lib/event/EventTarget.d.ts +4 -9
  910. package/lib/event/EventTarget.d.ts.map +1 -1
  911. package/lib/event/EventTarget.js +67 -53
  912. package/lib/event/EventTarget.js.map +1 -1
  913. package/lib/event/IUIEventInit.d.ts +2 -2
  914. package/lib/event/IUIEventInit.d.ts.map +1 -1
  915. package/lib/event/UIEvent.d.ts +2 -2
  916. package/lib/event/UIEvent.d.ts.map +1 -1
  917. package/lib/event/events/IMessageEventInit.d.ts +2 -2
  918. package/lib/event/events/IMessageEventInit.d.ts.map +1 -1
  919. package/lib/event/events/MessageEvent.d.ts +2 -2
  920. package/lib/event/events/MessageEvent.d.ts.map +1 -1
  921. package/lib/fetch/AbortController.d.ts.map +1 -1
  922. package/lib/fetch/AbortController.js +2 -1
  923. package/lib/fetch/AbortController.js.map +1 -1
  924. package/lib/fetch/AbortSignal.d.ts +2 -1
  925. package/lib/fetch/AbortSignal.d.ts.map +1 -1
  926. package/lib/fetch/AbortSignal.js +2 -1
  927. package/lib/fetch/AbortSignal.js.map +1 -1
  928. package/lib/fetch/Fetch.d.ts +40 -35
  929. package/lib/fetch/Fetch.d.ts.map +1 -1
  930. package/lib/fetch/Fetch.js +308 -189
  931. package/lib/fetch/Fetch.js.map +1 -1
  932. package/lib/fetch/Headers.d.ts +2 -1
  933. package/lib/fetch/Headers.d.ts.map +1 -1
  934. package/lib/fetch/Headers.js +18 -16
  935. package/lib/fetch/Headers.js.map +1 -1
  936. package/lib/fetch/Request.d.ts +21 -9
  937. package/lib/fetch/Request.d.ts.map +1 -1
  938. package/lib/fetch/Request.js +66 -48
  939. package/lib/fetch/Request.js.map +1 -1
  940. package/lib/fetch/ResourceFetch.d.ts +17 -5
  941. package/lib/fetch/ResourceFetch.d.ts.map +1 -1
  942. package/lib/fetch/ResourceFetch.js +49 -15
  943. package/lib/fetch/ResourceFetch.js.map +1 -1
  944. package/lib/fetch/Response.d.ts +20 -8
  945. package/lib/fetch/Response.d.ts.map +1 -1
  946. package/lib/fetch/Response.js +98 -63
  947. package/lib/fetch/Response.js.map +1 -1
  948. package/lib/fetch/SyncFetch.d.ts +80 -0
  949. package/lib/fetch/SyncFetch.d.ts.map +1 -0
  950. package/lib/fetch/SyncFetch.js +431 -0
  951. package/lib/fetch/SyncFetch.js.map +1 -0
  952. package/lib/fetch/cache/preflight/ICachablePreflightRequest.d.ts +7 -0
  953. package/lib/fetch/cache/preflight/ICachablePreflightRequest.d.ts.map +1 -0
  954. package/lib/fetch/cache/preflight/ICachablePreflightRequest.js +2 -0
  955. package/lib/fetch/cache/preflight/ICachablePreflightRequest.js.map +1 -0
  956. package/lib/fetch/cache/preflight/ICachablePreflightResponse.d.ts +7 -0
  957. package/lib/fetch/cache/preflight/ICachablePreflightResponse.d.ts.map +1 -0
  958. package/lib/fetch/cache/preflight/ICachablePreflightResponse.js +2 -0
  959. package/lib/fetch/cache/preflight/ICachablePreflightResponse.js.map +1 -0
  960. package/lib/fetch/cache/preflight/ICachedPreflightResponse.d.ts +6 -0
  961. package/lib/fetch/cache/preflight/ICachedPreflightResponse.d.ts.map +1 -0
  962. package/lib/fetch/cache/preflight/ICachedPreflightResponse.js +2 -0
  963. package/lib/fetch/cache/preflight/ICachedPreflightResponse.js.map +1 -0
  964. package/lib/fetch/cache/preflight/IPreflightResponseCache.d.ts +28 -0
  965. package/lib/fetch/cache/preflight/IPreflightResponseCache.d.ts.map +1 -0
  966. package/lib/fetch/cache/preflight/IPreflightResponseCache.js +2 -0
  967. package/lib/fetch/cache/preflight/IPreflightResponseCache.js.map +1 -0
  968. package/lib/fetch/cache/preflight/PreflightResponseCache.d.ts +32 -0
  969. package/lib/fetch/cache/preflight/PreflightResponseCache.d.ts.map +1 -0
  970. package/lib/fetch/cache/preflight/PreflightResponseCache.js +88 -0
  971. package/lib/fetch/cache/preflight/PreflightResponseCache.js.map +1 -0
  972. package/lib/fetch/cache/response/CachedResponseStateEnum.d.ts +6 -0
  973. package/lib/fetch/cache/response/CachedResponseStateEnum.d.ts.map +1 -0
  974. package/lib/fetch/cache/response/CachedResponseStateEnum.js +7 -0
  975. package/lib/fetch/cache/response/CachedResponseStateEnum.js.map +1 -0
  976. package/lib/fetch/cache/response/ICachableRequest.d.ts +7 -0
  977. package/lib/fetch/cache/response/ICachableRequest.d.ts.map +1 -0
  978. package/lib/fetch/cache/response/ICachableRequest.js +2 -0
  979. package/lib/fetch/cache/response/ICachableRequest.js.map +1 -0
  980. package/lib/fetch/cache/response/ICachableResponse.d.ts +11 -0
  981. package/lib/fetch/cache/response/ICachableResponse.d.ts.map +1 -0
  982. package/lib/fetch/cache/response/ICachableResponse.js +2 -0
  983. package/lib/fetch/cache/response/ICachableResponse.js.map +1 -0
  984. package/lib/fetch/cache/response/ICachedResponse.d.ts +38 -0
  985. package/lib/fetch/cache/response/ICachedResponse.d.ts.map +1 -0
  986. package/lib/fetch/cache/response/ICachedResponse.js +2 -0
  987. package/lib/fetch/cache/response/ICachedResponse.js.map +1 -0
  988. package/lib/fetch/cache/response/IResponseCache.d.ts +35 -0
  989. package/lib/fetch/cache/response/IResponseCache.d.ts.map +1 -0
  990. package/lib/fetch/cache/response/IResponseCache.js +2 -0
  991. package/lib/fetch/cache/response/IResponseCache.js.map +1 -0
  992. package/lib/fetch/cache/response/ResponseCache.d.ts +40 -0
  993. package/lib/fetch/cache/response/ResponseCache.d.ts.map +1 -0
  994. package/lib/fetch/cache/response/ResponseCache.js +215 -0
  995. package/lib/fetch/cache/response/ResponseCache.js.map +1 -0
  996. package/lib/fetch/certificate/FetchHTTPSCertificate.d.ts +6 -0
  997. package/lib/fetch/certificate/FetchHTTPSCertificate.d.ts.map +1 -0
  998. package/lib/fetch/certificate/FetchHTTPSCertificate.js +53 -0
  999. package/lib/fetch/certificate/FetchHTTPSCertificate.js.map +1 -0
  1000. package/lib/fetch/multipart/MultipartFormDataParser.d.ts +4 -1
  1001. package/lib/fetch/multipart/MultipartFormDataParser.d.ts.map +1 -1
  1002. package/lib/fetch/multipart/MultipartFormDataParser.js +32 -4
  1003. package/lib/fetch/multipart/MultipartFormDataParser.js.map +1 -1
  1004. package/lib/fetch/types/ISyncResponse.d.ts +17 -0
  1005. package/lib/fetch/types/ISyncResponse.d.ts.map +1 -0
  1006. package/lib/fetch/types/ISyncResponse.js +2 -0
  1007. package/lib/fetch/types/ISyncResponse.js.map +1 -0
  1008. package/lib/fetch/utilities/FetchBodyUtility.d.ts +12 -5
  1009. package/lib/fetch/utilities/FetchBodyUtility.d.ts.map +1 -1
  1010. package/lib/fetch/utilities/FetchBodyUtility.js +16 -10
  1011. package/lib/fetch/utilities/FetchBodyUtility.js.map +1 -1
  1012. package/lib/fetch/utilities/FetchCORSUtility.d.ts +3 -1
  1013. package/lib/fetch/utilities/FetchCORSUtility.d.ts.map +1 -1
  1014. package/lib/fetch/utilities/FetchCORSUtility.js +6 -0
  1015. package/lib/fetch/utilities/FetchCORSUtility.js.map +1 -1
  1016. package/lib/fetch/utilities/FetchRequestHeaderUtility.d.ts +26 -0
  1017. package/lib/fetch/utilities/FetchRequestHeaderUtility.d.ts.map +1 -1
  1018. package/lib/fetch/utilities/FetchRequestHeaderUtility.js +65 -2
  1019. package/lib/fetch/utilities/FetchRequestHeaderUtility.js.map +1 -1
  1020. package/lib/fetch/utilities/FetchRequestReferrerUtility.d.ts +19 -12
  1021. package/lib/fetch/utilities/FetchRequestReferrerUtility.d.ts.map +1 -1
  1022. package/lib/fetch/utilities/FetchRequestReferrerUtility.js +60 -44
  1023. package/lib/fetch/utilities/FetchRequestReferrerUtility.js.map +1 -1
  1024. package/lib/fetch/utilities/FetchRequestValidationUtility.d.ts +17 -2
  1025. package/lib/fetch/utilities/FetchRequestValidationUtility.d.ts.map +1 -1
  1026. package/lib/fetch/utilities/FetchRequestValidationUtility.js +30 -0
  1027. package/lib/fetch/utilities/FetchRequestValidationUtility.js.map +1 -1
  1028. package/lib/fetch/utilities/FetchResponseHeaderUtility.d.ts +24 -0
  1029. package/lib/fetch/utilities/FetchResponseHeaderUtility.d.ts.map +1 -0
  1030. package/lib/fetch/utilities/FetchResponseHeaderUtility.js +42 -0
  1031. package/lib/fetch/utilities/FetchResponseHeaderUtility.js.map +1 -0
  1032. package/lib/fetch/utilities/FetchResponseRedirectUtility.d.ts +20 -0
  1033. package/lib/fetch/utilities/FetchResponseRedirectUtility.d.ts.map +1 -0
  1034. package/lib/fetch/utilities/FetchResponseRedirectUtility.js +26 -0
  1035. package/lib/fetch/utilities/FetchResponseRedirectUtility.js.map +1 -0
  1036. package/lib/fetch/utilities/SyncFetchScriptBuilder.d.ts +26 -0
  1037. package/lib/fetch/utilities/SyncFetchScriptBuilder.d.ts.map +1 -0
  1038. package/lib/fetch/utilities/SyncFetchScriptBuilder.js +57 -0
  1039. package/lib/fetch/utilities/SyncFetchScriptBuilder.js.map +1 -0
  1040. package/lib/file/Blob.d.ts +2 -1
  1041. package/lib/file/Blob.d.ts.map +1 -1
  1042. package/lib/file/Blob.js +13 -9
  1043. package/lib/file/Blob.js.map +1 -1
  1044. package/lib/file/FileReader.d.ts +5 -15
  1045. package/lib/file/FileReader.d.ts.map +1 -1
  1046. package/lib/file/FileReader.js +77 -72
  1047. package/lib/file/FileReader.js.map +1 -1
  1048. package/lib/form-data/FormData.d.ts +1 -9
  1049. package/lib/form-data/FormData.d.ts.map +1 -1
  1050. package/lib/form-data/FormData.js +48 -40
  1051. package/lib/form-data/FormData.js.map +1 -1
  1052. package/lib/history/History.d.ts +1 -1
  1053. package/lib/history/History.d.ts.map +1 -1
  1054. package/lib/history/History.js +19 -5
  1055. package/lib/history/History.js.map +1 -1
  1056. package/lib/index.d.ts +143 -130
  1057. package/lib/index.d.ts.map +1 -1
  1058. package/lib/index.js +85 -75
  1059. package/lib/index.js.map +1 -1
  1060. package/lib/location/Location.d.ts +9 -9
  1061. package/lib/location/Location.d.ts.map +1 -1
  1062. package/lib/location/Location.js +29 -25
  1063. package/lib/location/Location.js.map +1 -1
  1064. package/lib/match-media/MediaQueryItem.d.ts +2 -2
  1065. package/lib/match-media/MediaQueryItem.d.ts.map +1 -1
  1066. package/lib/match-media/MediaQueryItem.js +6 -3
  1067. package/lib/match-media/MediaQueryItem.js.map +1 -1
  1068. package/lib/match-media/MediaQueryList.d.ts +3 -6
  1069. package/lib/match-media/MediaQueryList.d.ts.map +1 -1
  1070. package/lib/match-media/MediaQueryList.js +41 -26
  1071. package/lib/match-media/MediaQueryList.js.map +1 -1
  1072. package/lib/match-media/MediaQueryParser.d.ts +2 -2
  1073. package/lib/match-media/MediaQueryParser.d.ts.map +1 -1
  1074. package/lib/mutation-observer/MutationListener.d.ts +36 -3
  1075. package/lib/mutation-observer/MutationListener.d.ts.map +1 -1
  1076. package/lib/mutation-observer/MutationListener.js +79 -5
  1077. package/lib/mutation-observer/MutationListener.js.map +1 -1
  1078. package/lib/mutation-observer/MutationObserver.d.ts +5 -5
  1079. package/lib/mutation-observer/MutationObserver.d.ts.map +1 -1
  1080. package/lib/mutation-observer/MutationObserver.js +73 -17
  1081. package/lib/mutation-observer/MutationObserver.js.map +1 -1
  1082. package/lib/mutation-observer/MutationRecord.d.ts +6 -0
  1083. package/lib/mutation-observer/MutationRecord.d.ts.map +1 -1
  1084. package/lib/mutation-observer/MutationRecord.js +7 -1
  1085. package/lib/mutation-observer/MutationRecord.js.map +1 -1
  1086. package/lib/named-node-map/NamedNodeMap.d.ts +7 -6
  1087. package/lib/named-node-map/NamedNodeMap.d.ts.map +1 -1
  1088. package/lib/named-node-map/NamedNodeMap.js +20 -18
  1089. package/lib/named-node-map/NamedNodeMap.js.map +1 -1
  1090. package/lib/navigator/Navigator.d.ts +2 -2
  1091. package/lib/navigator/Navigator.d.ts.map +1 -1
  1092. package/lib/navigator/Navigator.js +3 -2
  1093. package/lib/navigator/Navigator.js.map +1 -1
  1094. package/lib/nodes/character-data/CharacterData.d.ts +2 -1
  1095. package/lib/nodes/character-data/CharacterData.d.ts.map +1 -1
  1096. package/lib/nodes/character-data/CharacterData.js +22 -18
  1097. package/lib/nodes/character-data/CharacterData.js.map +1 -1
  1098. package/lib/nodes/child-node/ChildNodeUtility.d.ts.map +1 -1
  1099. package/lib/nodes/child-node/ChildNodeUtility.js +4 -3
  1100. package/lib/nodes/child-node/ChildNodeUtility.js.map +1 -1
  1101. package/lib/nodes/document/Document.d.ts +24 -24
  1102. package/lib/nodes/document/Document.d.ts.map +1 -1
  1103. package/lib/nodes/document/Document.js +120 -105
  1104. package/lib/nodes/document/Document.js.map +1 -1
  1105. package/lib/nodes/document/DocumentReadyStateManager.d.ts +3 -3
  1106. package/lib/nodes/document/DocumentReadyStateManager.d.ts.map +1 -1
  1107. package/lib/nodes/document/DocumentReadyStateManager.js +1 -1
  1108. package/lib/nodes/document/DocumentReadyStateManager.js.map +1 -1
  1109. package/lib/nodes/document/IDocument.d.ts +4 -2
  1110. package/lib/nodes/document/IDocument.d.ts.map +1 -1
  1111. package/lib/nodes/document/IDocument.js +1 -1
  1112. package/lib/nodes/document/IDocument.js.map +1 -1
  1113. package/lib/nodes/document/NodeCreationOwnerDocument.d.ts +15 -0
  1114. package/lib/nodes/document/NodeCreationOwnerDocument.d.ts.map +1 -0
  1115. package/lib/nodes/document/NodeCreationOwnerDocument.js +13 -0
  1116. package/lib/nodes/document/NodeCreationOwnerDocument.js.map +1 -0
  1117. package/lib/nodes/document-fragment/DocumentFragment.d.ts +3 -2
  1118. package/lib/nodes/document-fragment/DocumentFragment.d.ts.map +1 -1
  1119. package/lib/nodes/document-fragment/DocumentFragment.js +15 -11
  1120. package/lib/nodes/document-fragment/DocumentFragment.js.map +1 -1
  1121. package/lib/nodes/element/Dataset.d.ts.map +1 -1
  1122. package/lib/nodes/element/Dataset.js +2 -1
  1123. package/lib/nodes/element/Dataset.js.map +1 -1
  1124. package/lib/nodes/element/Element.d.ts +11 -18
  1125. package/lib/nodes/element/Element.d.ts.map +1 -1
  1126. package/lib/nodes/element/Element.js +56 -60
  1127. package/lib/nodes/element/Element.js.map +1 -1
  1128. package/lib/nodes/element/ElementNamedNodeMap.d.ts +6 -5
  1129. package/lib/nodes/element/ElementNamedNodeMap.d.ts.map +1 -1
  1130. package/lib/nodes/element/ElementNamedNodeMap.js +51 -50
  1131. package/lib/nodes/element/ElementNamedNodeMap.js.map +1 -1
  1132. package/lib/nodes/element/ElementUtility.d.ts.map +1 -1
  1133. package/lib/nodes/element/ElementUtility.js +12 -11
  1134. package/lib/nodes/element/ElementUtility.js.map +1 -1
  1135. package/lib/nodes/element/HTMLCollection.d.ts +5 -4
  1136. package/lib/nodes/element/HTMLCollection.d.ts.map +1 -1
  1137. package/lib/nodes/element/HTMLCollection.js +21 -19
  1138. package/lib/nodes/element/HTMLCollection.js.map +1 -1
  1139. package/lib/nodes/element/IElement.d.ts +2 -2
  1140. package/lib/nodes/element/IElement.d.ts.map +1 -1
  1141. package/lib/nodes/html-anchor-element/HTMLAnchorElement.d.ts +8 -2
  1142. package/lib/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
  1143. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js +76 -54
  1144. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js.map +1 -1
  1145. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts +3 -2
  1146. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts.map +1 -1
  1147. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.js +9 -8
  1148. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.js.map +1 -1
  1149. package/lib/nodes/html-button-element/HTMLButtonElement.d.ts +3 -10
  1150. package/lib/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
  1151. package/lib/nodes/html-button-element/HTMLButtonElement.js +31 -30
  1152. package/lib/nodes/html-button-element/HTMLButtonElement.js.map +1 -1
  1153. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts +3 -2
  1154. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts.map +1 -1
  1155. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.js +9 -7
  1156. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.js.map +1 -1
  1157. package/lib/nodes/html-document/HTMLDocument.d.ts +13 -0
  1158. package/lib/nodes/html-document/HTMLDocument.d.ts.map +1 -1
  1159. package/lib/nodes/html-document/HTMLDocument.js +19 -0
  1160. package/lib/nodes/html-document/HTMLDocument.js.map +1 -1
  1161. package/lib/nodes/html-element/HTMLElement.d.ts +3 -2
  1162. package/lib/nodes/html-element/HTMLElement.d.ts.map +1 -1
  1163. package/lib/nodes/html-element/HTMLElement.js +29 -14
  1164. package/lib/nodes/html-element/HTMLElement.js.map +1 -1
  1165. package/lib/nodes/html-element/HTMLElementNamedNodeMap.d.ts +3 -2
  1166. package/lib/nodes/html-element/HTMLElementNamedNodeMap.d.ts.map +1 -1
  1167. package/lib/nodes/html-element/HTMLElementNamedNodeMap.js +9 -6
  1168. package/lib/nodes/html-element/HTMLElementNamedNodeMap.js.map +1 -1
  1169. package/lib/nodes/html-element/HTMLElementUtility.d.ts.map +1 -1
  1170. package/lib/nodes/html-element/HTMLElementUtility.js +11 -10
  1171. package/lib/nodes/html-element/HTMLElementUtility.js.map +1 -1
  1172. package/lib/nodes/html-form-element/HTMLFormControlsCollection.d.ts +5 -4
  1173. package/lib/nodes/html-form-element/HTMLFormControlsCollection.d.ts.map +1 -1
  1174. package/lib/nodes/html-form-element/HTMLFormControlsCollection.js +28 -21
  1175. package/lib/nodes/html-form-element/HTMLFormControlsCollection.js.map +1 -1
  1176. package/lib/nodes/html-form-element/HTMLFormElement.d.ts +4 -3
  1177. package/lib/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
  1178. package/lib/nodes/html-form-element/HTMLFormElement.js +10 -8
  1179. package/lib/nodes/html-form-element/HTMLFormElement.js.map +1 -1
  1180. package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts +13 -5
  1181. package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
  1182. package/lib/nodes/html-iframe-element/HTMLIFrameElement.js +42 -11
  1183. package/lib/nodes/html-iframe-element/HTMLIFrameElement.js.map +1 -1
  1184. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts +10 -2
  1185. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts.map +1 -1
  1186. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.js +27 -3
  1187. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.js.map +1 -1
  1188. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts +35 -0
  1189. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts.map +1 -0
  1190. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.js +94 -0
  1191. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.js.map +1 -0
  1192. package/lib/nodes/html-iframe-element/IHTMLIFrameElement.d.ts +3 -3
  1193. package/lib/nodes/html-iframe-element/IHTMLIFrameElement.d.ts.map +1 -1
  1194. package/lib/nodes/html-input-element/HTMLInputElement.d.ts +7 -20
  1195. package/lib/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
  1196. package/lib/nodes/html-input-element/HTMLInputElement.js +105 -102
  1197. package/lib/nodes/html-input-element/HTMLInputElement.js.map +1 -1
  1198. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts +3 -2
  1199. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts.map +1 -1
  1200. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.js +9 -7
  1201. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.js.map +1 -1
  1202. package/lib/nodes/html-label-element/HTMLLabelElement.d.ts.map +1 -1
  1203. package/lib/nodes/html-label-element/HTMLLabelElement.js +2 -1
  1204. package/lib/nodes/html-label-element/HTMLLabelElement.js.map +1 -1
  1205. package/lib/nodes/html-link-element/HTMLLinkElement.d.ts +12 -3
  1206. package/lib/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
  1207. package/lib/nodes/html-link-element/HTMLLinkElement.js +38 -13
  1208. package/lib/nodes/html-link-element/HTMLLinkElement.js.map +1 -1
  1209. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts +13 -2
  1210. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts.map +1 -1
  1211. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.js +38 -9
  1212. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.js.map +1 -1
  1213. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts +27 -0
  1214. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts.map +1 -0
  1215. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.js +95 -0
  1216. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.js.map +1 -0
  1217. package/lib/nodes/html-option-element/HTMLOptionElement.d.ts +4 -4
  1218. package/lib/nodes/html-option-element/HTMLOptionElement.d.ts.map +1 -1
  1219. package/lib/nodes/html-option-element/HTMLOptionElement.js +20 -16
  1220. package/lib/nodes/html-option-element/HTMLOptionElement.js.map +1 -1
  1221. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts +3 -2
  1222. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts.map +1 -1
  1223. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.js +13 -10
  1224. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.js.map +1 -1
  1225. package/lib/nodes/html-script-element/HTMLScriptElement.d.ts +11 -2
  1226. package/lib/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  1227. package/lib/nodes/html-script-element/HTMLScriptElement.js +46 -15
  1228. package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
  1229. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts +11 -1
  1230. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts.map +1 -1
  1231. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.js +31 -4
  1232. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.js.map +1 -1
  1233. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts +26 -0
  1234. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts.map +1 -0
  1235. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.js +113 -0
  1236. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.js.map +1 -0
  1237. package/lib/nodes/html-select-element/HTMLOptionsCollection.d.ts +1 -1
  1238. package/lib/nodes/html-select-element/HTMLOptionsCollection.d.ts.map +1 -1
  1239. package/lib/nodes/html-select-element/HTMLOptionsCollection.js +23 -8
  1240. package/lib/nodes/html-select-element/HTMLOptionsCollection.js.map +1 -1
  1241. package/lib/nodes/html-select-element/HTMLSelectElement.d.ts +5 -9
  1242. package/lib/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
  1243. package/lib/nodes/html-select-element/HTMLSelectElement.js +44 -39
  1244. package/lib/nodes/html-select-element/HTMLSelectElement.js.map +1 -1
  1245. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts +3 -2
  1246. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts.map +1 -1
  1247. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.js +9 -7
  1248. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.js.map +1 -1
  1249. package/lib/nodes/html-slot-element/HTMLSlotElement.d.ts.map +1 -1
  1250. package/lib/nodes/html-slot-element/HTMLSlotElement.js +4 -3
  1251. package/lib/nodes/html-slot-element/HTMLSlotElement.js.map +1 -1
  1252. package/lib/nodes/html-style-element/HTMLStyleElement.d.ts +2 -1
  1253. package/lib/nodes/html-style-element/HTMLStyleElement.d.ts.map +1 -1
  1254. package/lib/nodes/html-style-element/HTMLStyleElement.js +10 -6
  1255. package/lib/nodes/html-style-element/HTMLStyleElement.js.map +1 -1
  1256. package/lib/nodes/html-template-element/HTMLTemplateElement.d.ts.map +1 -1
  1257. package/lib/nodes/html-template-element/HTMLTemplateElement.js +3 -2
  1258. package/lib/nodes/html-template-element/HTMLTemplateElement.js.map +1 -1
  1259. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +6 -8
  1260. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
  1261. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js +65 -53
  1262. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js.map +1 -1
  1263. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts +3 -2
  1264. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts.map +1 -1
  1265. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.js +9 -7
  1266. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.js.map +1 -1
  1267. package/lib/nodes/html-unknown-element/HTMLUnknownElement.d.ts +3 -2
  1268. package/lib/nodes/html-unknown-element/HTMLUnknownElement.d.ts.map +1 -1
  1269. package/lib/nodes/html-unknown-element/HTMLUnknownElement.js +50 -34
  1270. package/lib/nodes/html-unknown-element/HTMLUnknownElement.js.map +1 -1
  1271. package/lib/nodes/node/Node.d.ts +12 -11
  1272. package/lib/nodes/node/Node.d.ts.map +1 -1
  1273. package/lib/nodes/node/Node.js +77 -61
  1274. package/lib/nodes/node/Node.js.map +1 -1
  1275. package/lib/nodes/node/NodeUtility.d.ts +1 -1
  1276. package/lib/nodes/node/NodeUtility.d.ts.map +1 -1
  1277. package/lib/nodes/node/NodeUtility.js +54 -47
  1278. package/lib/nodes/node/NodeUtility.js.map +1 -1
  1279. package/lib/nodes/parent-node/ParentNodeUtility.d.ts.map +1 -1
  1280. package/lib/nodes/parent-node/ParentNodeUtility.js +8 -7
  1281. package/lib/nodes/parent-node/ParentNodeUtility.js.map +1 -1
  1282. package/lib/nodes/shadow-root/ShadowRoot.d.ts.map +1 -1
  1283. package/lib/nodes/shadow-root/ShadowRoot.js +4 -3
  1284. package/lib/nodes/shadow-root/ShadowRoot.js.map +1 -1
  1285. package/lib/nodes/svg-element/SVGElement.d.ts +3 -2
  1286. package/lib/nodes/svg-element/SVGElement.d.ts.map +1 -1
  1287. package/lib/nodes/svg-element/SVGElement.js +22 -7
  1288. package/lib/nodes/svg-element/SVGElement.js.map +1 -1
  1289. package/lib/nodes/svg-element/SVGElementNamedNodeMap.d.ts +3 -2
  1290. package/lib/nodes/svg-element/SVGElementNamedNodeMap.d.ts.map +1 -1
  1291. package/lib/nodes/svg-element/SVGElementNamedNodeMap.js +9 -6
  1292. package/lib/nodes/svg-element/SVGElementNamedNodeMap.js.map +1 -1
  1293. package/lib/nodes/text/Text.d.ts +2 -1
  1294. package/lib/nodes/text/Text.d.ts.map +1 -1
  1295. package/lib/nodes/text/Text.js +12 -11
  1296. package/lib/nodes/text/Text.js.map +1 -1
  1297. package/lib/query-selector/QuerySelector.d.ts.map +1 -1
  1298. package/lib/query-selector/QuerySelector.js +9 -8
  1299. package/lib/query-selector/QuerySelector.js.map +1 -1
  1300. package/lib/query-selector/SelectorItem.d.ts.map +1 -1
  1301. package/lib/query-selector/SelectorItem.js +5 -2
  1302. package/lib/query-selector/SelectorItem.js.map +1 -1
  1303. package/lib/range/Range.d.ts +9 -5
  1304. package/lib/range/Range.d.ts.map +1 -1
  1305. package/lib/range/Range.js +206 -186
  1306. package/lib/range/Range.js.map +1 -1
  1307. package/lib/range/RangeUtility.d.ts.map +1 -1
  1308. package/lib/range/RangeUtility.js +2 -1
  1309. package/lib/range/RangeUtility.js.map +1 -1
  1310. package/lib/selection/Selection.d.ts +2 -11
  1311. package/lib/selection/Selection.d.ts.map +1 -1
  1312. package/lib/selection/Selection.js +121 -114
  1313. package/lib/selection/Selection.js.map +1 -1
  1314. package/lib/storage/Storage.d.ts +3 -1
  1315. package/lib/storage/Storage.d.ts.map +1 -1
  1316. package/lib/storage/Storage.js +24 -8
  1317. package/lib/storage/Storage.js.map +1 -1
  1318. package/lib/tree-walker/NodeIterator.d.ts +1 -1
  1319. package/lib/tree-walker/NodeIterator.d.ts.map +1 -1
  1320. package/lib/tree-walker/NodeIterator.js +19 -4
  1321. package/lib/tree-walker/NodeIterator.js.map +1 -1
  1322. package/lib/tree-walker/TreeWalker.d.ts.map +1 -1
  1323. package/lib/tree-walker/TreeWalker.js +5 -4
  1324. package/lib/tree-walker/TreeWalker.js.map +1 -1
  1325. package/lib/url/URL.d.ts.map +1 -1
  1326. package/lib/url/URL.js +2 -1
  1327. package/lib/url/URL.js.map +1 -1
  1328. package/lib/validity-state/ValidityState.d.ts.map +1 -1
  1329. package/lib/validity-state/ValidityState.js +3 -1
  1330. package/lib/validity-state/ValidityState.js.map +1 -1
  1331. package/lib/version.js +1 -1
  1332. package/lib/window/BrowserWindow.d.ts +684 -0
  1333. package/lib/window/BrowserWindow.d.ts.map +1 -0
  1334. package/lib/window/BrowserWindow.js +933 -0
  1335. package/lib/window/BrowserWindow.js.map +1 -0
  1336. package/lib/window/CrossOriginBrowserWindow.d.ts +55 -0
  1337. package/lib/window/CrossOriginBrowserWindow.d.ts.map +1 -0
  1338. package/lib/window/CrossOriginBrowserWindow.js +90 -0
  1339. package/lib/window/CrossOriginBrowserWindow.js.map +1 -0
  1340. package/lib/window/DetachedWindowAPI.d.ts +90 -0
  1341. package/lib/window/DetachedWindowAPI.d.ts.map +1 -0
  1342. package/lib/window/DetachedWindowAPI.js +124 -0
  1343. package/lib/window/DetachedWindowAPI.js.map +1 -0
  1344. package/lib/window/GlobalWindow.d.ts +2 -1
  1345. package/lib/window/GlobalWindow.d.ts.map +1 -1
  1346. package/lib/window/GlobalWindow.js +2 -1
  1347. package/lib/window/GlobalWindow.js.map +1 -1
  1348. package/lib/window/IBrowserWindow.d.ts +554 -0
  1349. package/lib/window/IBrowserWindow.d.ts.map +1 -0
  1350. package/lib/window/IBrowserWindow.js +2 -0
  1351. package/lib/window/IBrowserWindow.js.map +1 -0
  1352. package/lib/window/ICrossOriginBrowserWindow.d.ts +36 -0
  1353. package/lib/window/ICrossOriginBrowserWindow.d.ts.map +1 -0
  1354. package/lib/window/ICrossOriginBrowserWindow.js +2 -0
  1355. package/lib/window/ICrossOriginBrowserWindow.js.map +1 -0
  1356. package/lib/window/IWindow.d.ts +5 -527
  1357. package/lib/window/IWindow.d.ts.map +1 -1
  1358. package/lib/window/VMGlobalPropertyScript.js +1 -1
  1359. package/lib/window/Window.d.ts +18 -639
  1360. package/lib/window/Window.d.ts.map +1 -1
  1361. package/lib/window/Window.js +16 -808
  1362. package/lib/window/Window.js.map +1 -1
  1363. package/lib/window/WindowBrowserSettingsReader.d.ts +29 -0
  1364. package/lib/window/WindowBrowserSettingsReader.d.ts.map +1 -0
  1365. package/lib/window/WindowBrowserSettingsReader.js +54 -0
  1366. package/lib/window/WindowBrowserSettingsReader.js.map +1 -0
  1367. package/lib/window/WindowErrorUtility.d.ts +4 -4
  1368. package/lib/window/WindowErrorUtility.d.ts.map +1 -1
  1369. package/lib/window/WindowErrorUtility.js +2 -2
  1370. package/lib/window/WindowErrorUtility.js.map +1 -1
  1371. package/lib/window/WindowPageOpenUtility.d.ts +30 -0
  1372. package/lib/window/WindowPageOpenUtility.d.ts.map +1 -0
  1373. package/lib/window/WindowPageOpenUtility.js +142 -0
  1374. package/lib/window/WindowPageOpenUtility.js.map +1 -0
  1375. package/lib/xml-http-request/XMLHttpRequest.d.ts +32 -108
  1376. package/lib/xml-http-request/XMLHttpRequest.d.ts.map +1 -1
  1377. package/lib/xml-http-request/XMLHttpRequest.js +242 -665
  1378. package/lib/xml-http-request/XMLHttpRequest.js.map +1 -1
  1379. package/lib/xml-http-request/utilities/XMLHttpRequestResponseDataParser.d.ts +26 -0
  1380. package/lib/xml-http-request/utilities/XMLHttpRequestResponseDataParser.d.ts.map +1 -0
  1381. package/lib/xml-http-request/utilities/XMLHttpRequestResponseDataParser.js +63 -0
  1382. package/lib/xml-http-request/utilities/XMLHttpRequestResponseDataParser.js.map +1 -0
  1383. package/lib/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.d.ts +15 -0
  1384. package/lib/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.d.ts.map +1 -0
  1385. package/lib/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.js +23 -0
  1386. package/lib/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.js.map +1 -0
  1387. package/lib/xml-parser/XMLParser.d.ts.map +1 -1
  1388. package/lib/xml-parser/XMLParser.js +3 -2
  1389. package/lib/xml-parser/XMLParser.js.map +1 -1
  1390. package/lib/xml-serializer/XMLSerializer.d.ts +1 -11
  1391. package/lib/xml-serializer/XMLSerializer.d.ts.map +1 -1
  1392. package/lib/xml-serializer/XMLSerializer.js +38 -34
  1393. package/lib/xml-serializer/XMLSerializer.js.map +1 -1
  1394. package/package.json +2 -12
  1395. package/src/PropertySymbol.ts +81 -0
  1396. package/src/async-task-manager/AsyncTaskManager.ts +56 -39
  1397. package/src/browser/Browser.ts +106 -0
  1398. package/src/browser/BrowserContext.ts +92 -0
  1399. package/src/browser/BrowserFrame.ts +164 -0
  1400. package/src/browser/BrowserPage.ts +141 -0
  1401. package/src/browser/BrowserSettingsFactory.ts +34 -0
  1402. package/src/browser/DefaultBrowserSettings.ts +32 -0
  1403. package/src/browser/detached-browser/DetachedBrowser.ts +113 -0
  1404. package/src/browser/detached-browser/DetachedBrowserContext.ts +94 -0
  1405. package/src/browser/detached-browser/DetachedBrowserFrame.ts +185 -0
  1406. package/src/browser/detached-browser/DetachedBrowserPage.ts +153 -0
  1407. package/src/browser/enums/BrowserErrorCaptureEnum.ts +10 -0
  1408. package/src/browser/enums/BrowserNavigationCrossOriginPolicyEnum.ts +10 -0
  1409. package/src/browser/types/IBrowser.ts +48 -0
  1410. package/src/browser/types/IBrowserContext.ts +42 -0
  1411. package/src/browser/types/IBrowserFrame.ts +65 -0
  1412. package/src/browser/types/IBrowserPage.ts +69 -0
  1413. package/src/browser/types/IBrowserPageViewport.ts +5 -0
  1414. package/src/browser/types/IBrowserSettings.ts +100 -0
  1415. package/src/browser/types/IGoToOptions.ts +17 -0
  1416. package/src/browser/types/IOptionalBrowserSettings.ts +74 -0
  1417. package/src/browser/types/IReloadOptions.ts +14 -0
  1418. package/src/browser/utilities/BrowserFrameExceptionObserver.ts +99 -0
  1419. package/src/browser/utilities/BrowserFrameFactory.ts +70 -0
  1420. package/src/browser/utilities/BrowserFrameNavigator.ts +179 -0
  1421. package/src/browser/utilities/BrowserFrameScriptEvaluator.ts +22 -0
  1422. package/src/browser/utilities/BrowserFrameURL.ts +40 -0
  1423. package/src/browser/utilities/BrowserFrameValidator.ts +83 -0
  1424. package/src/browser/utilities/BrowserPageUtility.ts +94 -0
  1425. package/src/clipboard/Clipboard.ts +3 -3
  1426. package/src/config/ElementTag.ts +129 -154
  1427. package/src/console/VirtualConsole.ts +55 -55
  1428. package/src/console/VirtualConsolePrinter.ts +13 -13
  1429. package/src/console/types/IVirtualConsolePrinter.ts +1 -1
  1430. package/src/cookie/CookieContainer.ts +72 -0
  1431. package/src/cookie/types/ICookie.ts +16 -0
  1432. package/src/cookie/types/ICookieContainer.ts +26 -0
  1433. package/src/cookie/urilities/CookieExpireUtility.ts +16 -0
  1434. package/src/cookie/urilities/CookieStringUtility.ts +116 -0
  1435. package/src/cookie/urilities/CookieURLUtility.ts +26 -0
  1436. package/src/css/CSSParser.ts +2 -1
  1437. package/src/css/CSSStyleSheet.ts +3 -3
  1438. package/src/css/declaration/AbstractCSSStyleDeclaration.ts +60 -57
  1439. package/src/css/declaration/element-style/CSSStyleDeclarationElementStyle.ts +13 -7
  1440. package/src/css/declaration/measurement-converter/CSSMeasurementConverter.ts +2 -2
  1441. package/src/css/rules/CSSFontFaceRule.ts +8 -7
  1442. package/src/css/rules/CSSKeyframeRule.ts +8 -7
  1443. package/src/css/rules/CSSStyleRule.ts +8 -7
  1444. package/src/custom-element/CustomElementRegistry.ts +16 -10
  1445. package/src/dom-implementation/DOMImplementation.ts +11 -12
  1446. package/src/dom-parser/DOMParser.ts +18 -26
  1447. package/src/dom-token-list/DOMTokenList.ts +21 -20
  1448. package/src/event/Event.ts +19 -15
  1449. package/src/event/EventTarget.ts +61 -41
  1450. package/src/event/IUIEventInit.ts +2 -2
  1451. package/src/event/UIEvent.ts +2 -2
  1452. package/src/event/events/IMessageEventInit.ts +2 -2
  1453. package/src/event/events/MessageEvent.ts +2 -2
  1454. package/src/fetch/AbortController.ts +2 -1
  1455. package/src/fetch/AbortSignal.ts +2 -1
  1456. package/src/fetch/Fetch.ts +378 -243
  1457. package/src/fetch/Headers.ts +16 -15
  1458. package/src/fetch/Request.ts +65 -52
  1459. package/src/fetch/ResourceFetch.ts +45 -15
  1460. package/src/fetch/Response.ts +107 -68
  1461. package/src/fetch/SyncFetch.ts +558 -0
  1462. package/src/fetch/cache/preflight/ICachablePreflightRequest.ts +7 -0
  1463. package/src/fetch/cache/preflight/ICachablePreflightResponse.ts +7 -0
  1464. package/src/fetch/cache/preflight/ICachedPreflightResponse.ts +5 -0
  1465. package/src/fetch/cache/preflight/IPreflightResponseCache.ts +33 -0
  1466. package/src/fetch/cache/preflight/PreflightResponseCache.ts +94 -0
  1467. package/src/fetch/cache/response/CachedResponseStateEnum.ts +5 -0
  1468. package/src/fetch/cache/response/ICachableRequest.ts +7 -0
  1469. package/src/fetch/cache/response/ICachableResponse.ts +10 -0
  1470. package/src/fetch/cache/response/ICachedResponse.ts +36 -0
  1471. package/src/fetch/cache/response/IResponseCache.ts +34 -0
  1472. package/src/fetch/cache/response/ResponseCache.ts +221 -0
  1473. package/src/fetch/certificate/FetchHTTPSCertificate.ts +52 -0
  1474. package/src/fetch/multipart/MultipartFormDataParser.ts +44 -5
  1475. package/src/fetch/types/ISyncResponse.ts +16 -0
  1476. package/src/fetch/utilities/FetchBodyUtility.ts +19 -11
  1477. package/src/fetch/utilities/FetchCORSUtility.ts +10 -1
  1478. package/src/fetch/utilities/FetchRequestHeaderUtility.ts +94 -2
  1479. package/src/fetch/utilities/FetchRequestReferrerUtility.ts +74 -57
  1480. package/src/fetch/utilities/FetchRequestValidationUtility.ts +48 -2
  1481. package/src/fetch/utilities/FetchResponseHeaderUtility.ts +47 -0
  1482. package/src/fetch/utilities/FetchResponseRedirectUtility.ts +27 -0
  1483. package/src/fetch/utilities/SyncFetchScriptBuilder.ts +71 -0
  1484. package/src/file/Blob.ts +9 -8
  1485. package/src/file/FileReader.ts +25 -28
  1486. package/src/form-data/FormData.ts +25 -20
  1487. package/src/history/History.ts +4 -4
  1488. package/src/index.ts +288 -260
  1489. package/src/location/Location.ts +16 -28
  1490. package/src/match-media/MediaQueryItem.ts +13 -6
  1491. package/src/match-media/MediaQueryList.ts +33 -25
  1492. package/src/match-media/MediaQueryParser.ts +2 -2
  1493. package/src/mutation-observer/MutationListener.ts +80 -4
  1494. package/src/mutation-observer/MutationObserver.ts +71 -18
  1495. package/src/mutation-observer/MutationRecord.ts +9 -0
  1496. package/src/named-node-map/NamedNodeMap.ts +18 -17
  1497. package/src/navigator/Navigator.ts +6 -5
  1498. package/src/nodes/character-data/CharacterData.ts +20 -17
  1499. package/src/nodes/child-node/ChildNodeUtility.ts +4 -3
  1500. package/src/nodes/document/Document.ts +130 -116
  1501. package/src/nodes/document/DocumentReadyStateManager.ts +4 -4
  1502. package/src/nodes/document/IDocument.ts +4 -2
  1503. package/src/nodes/document/NodeCreationOwnerDocument.ts +14 -0
  1504. package/src/nodes/document-fragment/DocumentFragment.ts +11 -10
  1505. package/src/nodes/element/Dataset.ts +2 -1
  1506. package/src/nodes/element/Element.ts +70 -67
  1507. package/src/nodes/element/ElementNamedNodeMap.ts +81 -58
  1508. package/src/nodes/element/ElementUtility.ts +30 -11
  1509. package/src/nodes/element/HTMLCollection.ts +20 -19
  1510. package/src/nodes/element/IElement.ts +2 -2
  1511. package/src/nodes/html-anchor-element/HTMLAnchorElement.ts +81 -53
  1512. package/src/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.ts +11 -10
  1513. package/src/nodes/html-button-element/HTMLButtonElement.ts +39 -32
  1514. package/src/nodes/html-button-element/HTMLButtonElementNamedNodeMap.ts +18 -17
  1515. package/src/nodes/html-document/HTMLDocument.ts +26 -1
  1516. package/src/nodes/html-element/HTMLElement.ts +15 -13
  1517. package/src/nodes/html-element/HTMLElementNamedNodeMap.ts +12 -7
  1518. package/src/nodes/html-element/HTMLElementUtility.ts +11 -10
  1519. package/src/nodes/html-form-element/HTMLFormControlsCollection.ts +27 -21
  1520. package/src/nodes/html-form-element/HTMLFormElement.ts +9 -8
  1521. package/src/nodes/html-iframe-element/HTMLIFrameElement.ts +36 -12
  1522. package/src/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.ts +15 -4
  1523. package/src/nodes/html-iframe-element/HTMLIFrameElementPageLoader.ts +106 -0
  1524. package/src/nodes/html-iframe-element/IHTMLIFrameElement.ts +3 -3
  1525. package/src/nodes/html-input-element/HTMLInputElement.ts +83 -74
  1526. package/src/nodes/html-input-element/HTMLInputElementNamedNodeMap.ts +18 -17
  1527. package/src/nodes/html-label-element/HTMLLabelElement.ts +2 -1
  1528. package/src/nodes/html-link-element/HTMLLinkElement.ts +34 -11
  1529. package/src/nodes/html-link-element/HTMLLinkElementNamedNodeMap.ts +36 -10
  1530. package/src/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.ts +102 -0
  1531. package/src/nodes/html-option-element/HTMLOptionElement.ts +20 -17
  1532. package/src/nodes/html-option-element/HTMLOptionElementNamedNodeMap.ts +20 -11
  1533. package/src/nodes/html-script-element/HTMLScriptElement.ts +49 -14
  1534. package/src/nodes/html-script-element/HTMLScriptElementNamedNodeMap.ts +21 -4
  1535. package/src/nodes/html-script-element/HTMLScriptElementScriptLoader.ts +126 -0
  1536. package/src/nodes/html-select-element/HTMLOptionsCollection.ts +8 -8
  1537. package/src/nodes/html-select-element/HTMLSelectElement.ts +34 -26
  1538. package/src/nodes/html-select-element/HTMLSelectElementNamedNodeMap.ts +18 -17
  1539. package/src/nodes/html-slot-element/HTMLSlotElement.ts +4 -3
  1540. package/src/nodes/html-style-element/HTMLStyleElement.ts +6 -5
  1541. package/src/nodes/html-template-element/HTMLTemplateElement.ts +3 -2
  1542. package/src/nodes/html-text-area-element/HTMLTextAreaElement.ts +56 -49
  1543. package/src/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.ts +18 -17
  1544. package/src/nodes/html-unknown-element/HTMLUnknownElement.ts +49 -34
  1545. package/src/nodes/node/Node.ts +77 -61
  1546. package/src/nodes/node/NodeUtility.ts +62 -53
  1547. package/src/nodes/parent-node/ParentNodeUtility.ts +8 -7
  1548. package/src/nodes/shadow-root/ShadowRoot.ts +4 -3
  1549. package/src/nodes/svg-element/SVGElement.ts +7 -6
  1550. package/src/nodes/svg-element/SVGElementNamedNodeMap.ts +12 -7
  1551. package/src/nodes/text/Text.ts +12 -11
  1552. package/src/query-selector/QuerySelector.ts +18 -8
  1553. package/src/query-selector/SelectorItem.ts +5 -2
  1554. package/src/range/Range.ts +249 -191
  1555. package/src/range/RangeUtility.ts +2 -1
  1556. package/src/selection/Selection.ts +100 -99
  1557. package/src/storage/Storage.ts +9 -7
  1558. package/src/tree-walker/NodeIterator.ts +4 -4
  1559. package/src/tree-walker/TreeWalker.ts +5 -4
  1560. package/src/url/URL.ts +2 -1
  1561. package/src/validity-state/ValidityState.ts +3 -1
  1562. package/src/window/BrowserWindow.ts +1107 -0
  1563. package/src/window/CrossOriginBrowserWindow.ts +102 -0
  1564. package/src/window/DetachedWindowAPI.ts +126 -0
  1565. package/src/window/GlobalWindow.ts +2 -1
  1566. package/src/window/IBrowserWindow.ts +578 -0
  1567. package/src/window/ICrossOriginBrowserWindow.ts +40 -0
  1568. package/src/window/IWindow.ts +6 -539
  1569. package/src/window/VMGlobalPropertyScript.ts +1 -1
  1570. package/src/window/Window.ts +30 -1004
  1571. package/src/window/WindowBrowserSettingsReader.ts +55 -0
  1572. package/src/window/WindowErrorUtility.ts +8 -10
  1573. package/src/window/WindowPageOpenUtility.ts +188 -0
  1574. package/src/xml-http-request/XMLHttpRequest.ts +249 -831
  1575. package/src/xml-http-request/utilities/XMLHttpRequestResponseDataParser.ts +75 -0
  1576. package/src/xml-http-request/utilities/XMLHttpRequestResponseTextDecoder.ts +26 -0
  1577. package/src/xml-parser/XMLParser.ts +3 -2
  1578. package/src/xml-serializer/XMLSerializer.ts +19 -15
  1579. package/vitest.config.ts +2 -1
  1580. package/.eslintrc.cjs +0 -174
  1581. package/cjs/cookie/Cookie.cjs +0 -119
  1582. package/cjs/cookie/Cookie.cjs.map +0 -1
  1583. package/cjs/cookie/Cookie.d.ts +0 -43
  1584. package/cjs/cookie/Cookie.d.ts.map +0 -1
  1585. package/cjs/cookie/CookieJar.cjs +0 -76
  1586. package/cjs/cookie/CookieJar.cjs.map +0 -1
  1587. package/cjs/cookie/CookieJar.d.ts +0 -26
  1588. package/cjs/cookie/CookieJar.d.ts.map +0 -1
  1589. package/cjs/cookie/CookieSameSiteEnum.cjs.map +0 -1
  1590. package/cjs/cookie/CookieSameSiteEnum.d.ts.map +0 -1
  1591. package/cjs/nodes/html-iframe-element/HTMLIFrameUtility.cjs +0 -75
  1592. package/cjs/nodes/html-iframe-element/HTMLIFrameUtility.cjs.map +0 -1
  1593. package/cjs/nodes/html-iframe-element/HTMLIFrameUtility.d.ts +0 -13
  1594. package/cjs/nodes/html-iframe-element/HTMLIFrameUtility.d.ts.map +0 -1
  1595. package/cjs/nodes/html-iframe-element/IFrameCrossOriginWindow.cjs +0 -47
  1596. package/cjs/nodes/html-iframe-element/IFrameCrossOriginWindow.cjs.map +0 -1
  1597. package/cjs/nodes/html-iframe-element/IFrameCrossOriginWindow.d.ts +0 -30
  1598. package/cjs/nodes/html-iframe-element/IFrameCrossOriginWindow.d.ts.map +0 -1
  1599. package/cjs/nodes/html-link-element/HTMLLinkElementUtility.cjs +0 -61
  1600. package/cjs/nodes/html-link-element/HTMLLinkElementUtility.cjs.map +0 -1
  1601. package/cjs/nodes/html-link-element/HTMLLinkElementUtility.d.ts +0 -15
  1602. package/cjs/nodes/html-link-element/HTMLLinkElementUtility.d.ts.map +0 -1
  1603. package/cjs/nodes/html-script-element/HTMLScriptElementUtility.cjs +0 -93
  1604. package/cjs/nodes/html-script-element/HTMLScriptElementUtility.cjs.map +0 -1
  1605. package/cjs/nodes/html-script-element/HTMLScriptElementUtility.d.ts +0 -15
  1606. package/cjs/nodes/html-script-element/HTMLScriptElementUtility.d.ts.map +0 -1
  1607. package/cjs/window/IHappyDOMOptions.cjs.map +0 -1
  1608. package/cjs/window/IHappyDOMOptions.d.ts +0 -35
  1609. package/cjs/window/IHappyDOMOptions.d.ts.map +0 -1
  1610. package/cjs/window/IHappyDOMSettings.cjs.map +0 -1
  1611. package/cjs/window/IHappyDOMSettings.d.ts +0 -20
  1612. package/cjs/window/IHappyDOMSettings.d.ts.map +0 -1
  1613. package/lib/cookie/Cookie.d.ts +0 -43
  1614. package/lib/cookie/Cookie.d.ts.map +0 -1
  1615. package/lib/cookie/Cookie.js +0 -113
  1616. package/lib/cookie/Cookie.js.map +0 -1
  1617. package/lib/cookie/CookieJar.d.ts +0 -26
  1618. package/lib/cookie/CookieJar.d.ts.map +0 -1
  1619. package/lib/cookie/CookieJar.js +0 -70
  1620. package/lib/cookie/CookieJar.js.map +0 -1
  1621. package/lib/cookie/CookieSameSiteEnum.d.ts.map +0 -1
  1622. package/lib/cookie/CookieSameSiteEnum.js.map +0 -1
  1623. package/lib/nodes/html-iframe-element/HTMLIFrameUtility.d.ts +0 -13
  1624. package/lib/nodes/html-iframe-element/HTMLIFrameUtility.d.ts.map +0 -1
  1625. package/lib/nodes/html-iframe-element/HTMLIFrameUtility.js +0 -69
  1626. package/lib/nodes/html-iframe-element/HTMLIFrameUtility.js.map +0 -1
  1627. package/lib/nodes/html-iframe-element/IFrameCrossOriginWindow.d.ts +0 -30
  1628. package/lib/nodes/html-iframe-element/IFrameCrossOriginWindow.d.ts.map +0 -1
  1629. package/lib/nodes/html-iframe-element/IFrameCrossOriginWindow.js +0 -41
  1630. package/lib/nodes/html-iframe-element/IFrameCrossOriginWindow.js.map +0 -1
  1631. package/lib/nodes/html-link-element/HTMLLinkElementUtility.d.ts +0 -15
  1632. package/lib/nodes/html-link-element/HTMLLinkElementUtility.d.ts.map +0 -1
  1633. package/lib/nodes/html-link-element/HTMLLinkElementUtility.js +0 -55
  1634. package/lib/nodes/html-link-element/HTMLLinkElementUtility.js.map +0 -1
  1635. package/lib/nodes/html-script-element/HTMLScriptElementUtility.d.ts +0 -15
  1636. package/lib/nodes/html-script-element/HTMLScriptElementUtility.d.ts.map +0 -1
  1637. package/lib/nodes/html-script-element/HTMLScriptElementUtility.js +0 -87
  1638. package/lib/nodes/html-script-element/HTMLScriptElementUtility.js.map +0 -1
  1639. package/lib/window/IHappyDOMOptions.d.ts +0 -35
  1640. package/lib/window/IHappyDOMOptions.d.ts.map +0 -1
  1641. package/lib/window/IHappyDOMOptions.js +0 -2
  1642. package/lib/window/IHappyDOMOptions.js.map +0 -1
  1643. package/lib/window/IHappyDOMSettings.d.ts +0 -20
  1644. package/lib/window/IHappyDOMSettings.d.ts.map +0 -1
  1645. package/lib/window/IHappyDOMSettings.js +0 -2
  1646. package/lib/window/IHappyDOMSettings.js.map +0 -1
  1647. package/src/cookie/Cookie.ts +0 -125
  1648. package/src/cookie/CookieJar.ts +0 -81
  1649. package/src/nodes/html-iframe-element/HTMLIFrameUtility.ts +0 -86
  1650. package/src/nodes/html-iframe-element/IFrameCrossOriginWindow.ts +0 -60
  1651. package/src/nodes/html-link-element/HTMLLinkElementUtility.ts +0 -64
  1652. package/src/nodes/html-script-element/HTMLScriptElementUtility.ts +0 -99
  1653. package/src/window/IHappyDOMOptions.ts +0 -35
  1654. package/src/window/IHappyDOMSettings.ts +0 -19
  1655. /package/cjs/cookie/{CookieSameSiteEnum.cjs → enums/CookieSameSiteEnum.cjs} +0 -0
  1656. /package/cjs/cookie/{CookieSameSiteEnum.d.ts → enums/CookieSameSiteEnum.d.ts} +0 -0
  1657. /package/lib/cookie/{CookieSameSiteEnum.d.ts → enums/CookieSameSiteEnum.d.ts} +0 -0
  1658. /package/lib/cookie/{CookieSameSiteEnum.js → enums/CookieSameSiteEnum.js} +0 -0
  1659. /package/src/cookie/{CookieSameSiteEnum.ts → enums/CookieSameSiteEnum.ts} +0 -0
@@ -0,0 +1,7 @@
1
+ import IHeaders from '../../types/IHeaders.js';
2
+
3
+ export default interface ICachableRequest {
4
+ url: string;
5
+ method: string;
6
+ headers: IHeaders;
7
+ }
@@ -0,0 +1,10 @@
1
+ import IHeaders from '../../types/IHeaders.js';
2
+
3
+ export default interface ICachableResponse {
4
+ status: number;
5
+ statusText: string;
6
+ url: string;
7
+ headers: IHeaders;
8
+ body: Buffer | null;
9
+ waitingForBody: boolean;
10
+ }
@@ -0,0 +1,36 @@
1
+ import CachedResponseStateEnum from './CachedResponseStateEnum.js';
2
+ import IHeaders from '../../types/IHeaders.js';
3
+
4
+ export default interface ICachedResponse {
5
+ /** Response. */
6
+ response: {
7
+ status: number;
8
+ statusText: string;
9
+ url: string;
10
+ headers: IHeaders;
11
+ // We need to wait for the body to be populated if set to "true".
12
+ waitingForBody: boolean;
13
+ body: Buffer | null;
14
+ };
15
+ /** Request. */
16
+ request: {
17
+ headers: IHeaders;
18
+ method: string;
19
+ };
20
+ /** Cache update time in milliseconds. */
21
+ cacheUpdateTime: number;
22
+ /** Last modified time in milliseconds. */
23
+ lastModified: number | null;
24
+ /** Vary headers. */
25
+ vary: { [header: string]: string };
26
+ /** Expire time in milliseconds. */
27
+ expires: number | null;
28
+ /** ETag */
29
+ etag: string | null;
30
+ /** Must revalidate using "If-Modified-Since" request when expired. Not supported yet. */
31
+ mustRevalidate: boolean;
32
+ /** Stale while revalidate using "If-Modified-Since" request when expired */
33
+ staleWhileRevalidate: boolean;
34
+ /** Used when "mustRevalidate" or "staleWhileRevalidate" is true. */
35
+ state: CachedResponseStateEnum;
36
+ }
@@ -0,0 +1,34 @@
1
+ import ICachedResponse from './ICachedResponse.js';
2
+ import ICachableRequest from './ICachableRequest.js';
3
+ import ICachableResponse from './ICachableResponse.js';
4
+
5
+ /**
6
+ * Fetch response cache.
7
+ */
8
+ export default interface IResponseCache {
9
+ /**
10
+ * Returns cached response.
11
+ *
12
+ * @param request Request.
13
+ * @returns Cached response.
14
+ */
15
+ get(request: ICachableRequest): ICachedResponse | null;
16
+
17
+ /**
18
+ * Adds a cached response.
19
+ *
20
+ * @param request Request.
21
+ * @param response Response.
22
+ * @returns Cached response.
23
+ */
24
+ add(request: ICachableRequest, response: ICachableResponse): ICachedResponse | null;
25
+
26
+ /**
27
+ * Clears the cache.
28
+ *
29
+ * @param [options] Options.
30
+ * @param [options.url] URL.
31
+ * @param [options.toTime] Time in MS.
32
+ */
33
+ clear(options?: { url?: string; toTime?: number }): void;
34
+ }
@@ -0,0 +1,221 @@
1
+ import IResponseCache from './IResponseCache.js';
2
+ import ICachedResponse from './ICachedResponse.js';
3
+ import CachedResponseStateEnum from './CachedResponseStateEnum.js';
4
+ import ICachableRequest from './ICachableRequest.js';
5
+ import ICachableResponse from './ICachableResponse.js';
6
+ import Headers from '../../Headers.js';
7
+
8
+ const UPDATE_RESPONSE_HEADERS = ['Cache-Control', 'Last-Modified', 'Vary', 'ETag'];
9
+
10
+ /**
11
+ * Fetch response cache.
12
+ *
13
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching
14
+ * @see https://www.mnot.net/cache_docs/
15
+ */
16
+ export default class ResponseCache implements IResponseCache {
17
+ #entries: { [url: string]: ICachedResponse[] } = {};
18
+
19
+ /**
20
+ * Returns cached response.
21
+ *
22
+ * @param request Request.
23
+ * @returns Cached response.
24
+ */
25
+ public get(request: ICachableRequest): ICachedResponse | null {
26
+ if (request.headers.get('Cache-Control')?.includes('no-cache')) {
27
+ return null;
28
+ }
29
+
30
+ const url = request.url;
31
+
32
+ if (this.#entries[url]) {
33
+ for (let i = 0, max = this.#entries[url].length; i < max; i++) {
34
+ const entry = this.#entries[url][i];
35
+ let isMatch = entry.request.method === request.method;
36
+ if (isMatch) {
37
+ for (const header of Object.keys(entry.vary)) {
38
+ const requestHeader = request.headers.get(header);
39
+ if (requestHeader !== null && entry.vary[header] !== requestHeader) {
40
+ isMatch = false;
41
+ break;
42
+ }
43
+ }
44
+ }
45
+ if (isMatch) {
46
+ if (entry.expires && entry.expires < Date.now()) {
47
+ if (entry.lastModified) {
48
+ entry.state = CachedResponseStateEnum.stale;
49
+ } else if (!entry.etag) {
50
+ this.#entries[url].splice(i, 1);
51
+ return null;
52
+ }
53
+ }
54
+ return entry;
55
+ }
56
+ }
57
+ }
58
+ return null;
59
+ }
60
+
61
+ /**
62
+ * Adds a cache entity.
63
+ *
64
+ * @param request Request.
65
+ * @param response Response.
66
+ * @returns Cached response.
67
+ */
68
+ public add(request: ICachableRequest, response: ICachableResponse): ICachedResponse {
69
+ // We should only cache GET and HEAD requests.
70
+ if (
71
+ (request.method !== 'GET' && request.method !== 'HEAD') ||
72
+ request.headers.get('Cache-Control')?.includes('no-cache')
73
+ ) {
74
+ return null;
75
+ }
76
+
77
+ const url = request.url;
78
+ let cachedResponse = this.get(request);
79
+
80
+ if (response.status === 304) {
81
+ if (!cachedResponse) {
82
+ throw new Error('ResponseCache: Cached response not found.');
83
+ }
84
+
85
+ for (const name of UPDATE_RESPONSE_HEADERS) {
86
+ if (response.headers.has(name)) {
87
+ cachedResponse.response.headers.set(name, response.headers.get(name));
88
+ }
89
+ }
90
+
91
+ cachedResponse.cacheUpdateTime = Date.now();
92
+ cachedResponse.state = CachedResponseStateEnum.fresh;
93
+ } else {
94
+ if (cachedResponse) {
95
+ const index = this.#entries[url].indexOf(cachedResponse);
96
+ if (index !== -1) {
97
+ this.#entries[url].splice(index, 1);
98
+ }
99
+ }
100
+
101
+ cachedResponse = {
102
+ response: {
103
+ status: response.status,
104
+ statusText: response.statusText,
105
+ url: response.url,
106
+ headers: new Headers(response.headers),
107
+ // We need to wait for the body to be consumed and then populated if set to true (e.g. by using Response.text()).
108
+ waitingForBody: response.waitingForBody,
109
+ body: response.body ?? null
110
+ },
111
+ request: {
112
+ headers: request.headers,
113
+ method: request.method
114
+ },
115
+ vary: {},
116
+ expires: null,
117
+ etag: null,
118
+ cacheUpdateTime: Date.now(),
119
+ lastModified: null,
120
+ mustRevalidate: false,
121
+ staleWhileRevalidate: false,
122
+ state: CachedResponseStateEnum.fresh
123
+ };
124
+
125
+ this.#entries[url] = this.#entries[url] || [];
126
+ this.#entries[url].push(cachedResponse);
127
+ }
128
+
129
+ if (response.headers.has('Cache-Control')) {
130
+ const age = response.headers.get('Age');
131
+
132
+ for (const part of response.headers.get('Cache-Control').split(',')) {
133
+ const [key, value] = part.trim().split('=');
134
+ switch (key) {
135
+ case 'max-age':
136
+ cachedResponse.expires =
137
+ Date.now() + parseInt(value) * 1000 - (age ? parseInt(age) * 1000 : 0);
138
+ break;
139
+ case 'no-cache':
140
+ case 'no-store':
141
+ const index = this.#entries[url].indexOf(cachedResponse);
142
+ if (index !== -1) {
143
+ this.#entries[url].splice(index, 1);
144
+ }
145
+ return null;
146
+ case 'must-revalidate':
147
+ cachedResponse.mustRevalidate = true;
148
+ break;
149
+ case 'stale-while-revalidate':
150
+ cachedResponse.staleWhileRevalidate = true;
151
+ break;
152
+ }
153
+ }
154
+ }
155
+
156
+ if (response.headers.has('Last-Modified')) {
157
+ cachedResponse.lastModified = Date.parse(response.headers.get('Last-Modified'));
158
+ }
159
+
160
+ if (response.headers.has('Vary')) {
161
+ for (const header of response.headers.get('Vary').split(',')) {
162
+ const name = header.trim();
163
+ const value = request.headers.get(name);
164
+ if (value) {
165
+ cachedResponse.vary[name] = value;
166
+ }
167
+ }
168
+ }
169
+
170
+ if (response.headers.has('ETag')) {
171
+ cachedResponse.etag = response.headers.get('ETag');
172
+ }
173
+
174
+ if (!cachedResponse.expires) {
175
+ const expires = response.headers.get('Expires');
176
+ if (expires) {
177
+ cachedResponse.expires = Date.parse(expires);
178
+ }
179
+ }
180
+
181
+ // Cache is invalid if it has expired and doesn't have an ETag.
182
+ if (!cachedResponse.etag && (!cachedResponse.expires || cachedResponse.expires < Date.now())) {
183
+ const index = this.#entries[url].indexOf(cachedResponse);
184
+ if (index !== -1) {
185
+ this.#entries[url].splice(index, 1);
186
+ }
187
+ return null;
188
+ }
189
+
190
+ return cachedResponse;
191
+ }
192
+
193
+ /**
194
+ * Clears the cache.
195
+ *
196
+ * @param [options] Options.
197
+ * @param [options.url] URL.
198
+ * @param [options.toTime] Removes all entries that are older than this time. Time in MS.
199
+ */
200
+ public clear(options?: { url?: string; toTime?: number }): void {
201
+ if (options) {
202
+ if (options.toTime) {
203
+ for (const key of options.url ? [options.url] : Object.keys(this.#entries)) {
204
+ if (this.#entries[key]) {
205
+ for (let i = 0, max = this.#entries[key].length; i < max; i++) {
206
+ if (this.#entries[key][i].cacheUpdateTime < options.toTime) {
207
+ this.#entries[key].splice(i, 1);
208
+ i--;
209
+ max--;
210
+ }
211
+ }
212
+ }
213
+ }
214
+ } else if (options.url) {
215
+ delete this.#entries[options.url];
216
+ }
217
+ } else {
218
+ this.#entries = {};
219
+ }
220
+ }
221
+ }
@@ -0,0 +1,52 @@
1
+ // SSL certificate generated for Happy DOM to be able to perform HTTPS requests
2
+ export default {
3
+ cert: `-----BEGIN CERTIFICATE-----
4
+ MIIDYzCCAkugAwIBAgIUJRKB/H66hpet1VfUlm0CiXqePA4wDQYJKoZIhvcNAQEL
5
+ BQAwQTELMAkGA1UEBhMCU0UxDjAMBgNVBAgMBVNrYW5lMQ4wDAYDVQQHDAVNYWxt
6
+ bzESMBAGA1UECgwJSGFwcHkgRE9NMB4XDTIyMTAxMTIyMDM0OVoXDTMyMTAwODIy
7
+ MDM0OVowQTELMAkGA1UEBhMCU0UxDjAMBgNVBAgMBVNrYW5lMQ4wDAYDVQQHDAVN
8
+ YWxtbzESMBAGA1UECgwJSGFwcHkgRE9NMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
9
+ MIIBCgKCAQEAqerQSQEg/SxVxRiwlItithr5e5EMZo1nsqt/xOxagbmpW3IEmt0j
10
+ bpbH7iEF4DDEo7KAOwUCOwVWeFxRoag8lG2ax48wrgjlCna45XDn0Xeg1ARajL04
11
+ gs46HZ0VrzIloVGfln0zgt/Vum5BNqs9Oc5fQoBmoP3cAn3dn4ZVcP0AKthtcyPl
12
+ q2DuNRN0PV0D2RtMSiAy9l1Ko6N5x+sAeClDyOL+sTDLngZBVeZyOKt9Id15S8Zt
13
+ XtA6VMgHnnF3jChn7pag77rsd/y5iANAVNZYqRl+Eg7xaDcsvbgH46UBOrBcB39Q
14
+ tTh5Mtjoxep5e3ZDFG+kQ1HUE+iz5O5n0wIDAQABo1MwUTAdBgNVHQ4EFgQU69s9
15
+ YSobG/m2SN4L/7zTaF7iDbwwHwYDVR0jBBgwFoAU69s9YSobG/m2SN4L/7zTaF7i
16
+ DbwwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAi/WUXx2oal8L
17
+ YnPlIuKfh49n/K18wXSYG//oFYwxfVxqpYH8hUiXVm/GUcXCxS++hUkaKLqXmH9q
18
+ MKJiCrZr3vS+2nsBKopkICu/TLdROl0sAI9lByfnEbfSAzjxe1IWJdK8NdY0y5m5
19
+ 9pEr/URVIAp/CxrneyASb4q0Jg5To3FR7vYc+2X6wZn0MundKMg6Dp9/A37jiF3l
20
+ Tt/EJp299YZcsUzh+LnRuggRjnoOVu1aLcLFlaUiwZfy9m8mLG6B/mdW/qNzNMh9
21
+ Oqvg1zfGdpz/4D/2UUUBn6pq1vbsoAaF3OesoA3mfDcegDf/H9woJlpT0Wql+e68
22
+ Y3FblSokcA==
23
+ -----END CERTIFICATE-----`,
24
+ key: `-----BEGIN PRIVATE KEY-----
25
+ MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCp6tBJASD9LFXF
26
+ GLCUi2K2Gvl7kQxmjWeyq3/E7FqBualbcgSa3SNulsfuIQXgMMSjsoA7BQI7BVZ4
27
+ XFGhqDyUbZrHjzCuCOUKdrjlcOfRd6DUBFqMvTiCzjodnRWvMiWhUZ+WfTOC39W6
28
+ bkE2qz05zl9CgGag/dwCfd2fhlVw/QAq2G1zI+WrYO41E3Q9XQPZG0xKIDL2XUqj
29
+ o3nH6wB4KUPI4v6xMMueBkFV5nI4q30h3XlLxm1e0DpUyAeecXeMKGfulqDvuux3
30
+ /LmIA0BU1lipGX4SDvFoNyy9uAfjpQE6sFwHf1C1OHky2OjF6nl7dkMUb6RDUdQT
31
+ 6LPk7mfTAgMBAAECggEAKkwTkTjAt4UjzK56tl+EMQTB+ep/hb/JgoaChci4Nva6
32
+ m9LkJpDJ0yuhlTuPNOGu8XjrxsVWas7HWarRf0Zb3i7yip6wZYI9Ub+AA015x4DZ
33
+ /i0fRU2NFbK0cM67qSL4jxG8gj+kZP3HPGNZxHwX/53JxMolwgmvjMc8NgvAlSFd
34
+ NnV9h4xtbhUh1NGS5zmP3iU2rwnE8JrIEzwy6axLom7nekAgkdcbAr0UoBs8gcgH
35
+ aYNhU4Gz3tGcZZ0IXAfT/bJIH1Ko8AGv4pssWc3BXcmmNdm/+kzvHIxEIV7Qegmo
36
+ XG1ZyZCyD/0b4/3e8ySDBEDqwR+HeyTW2isWG2agAQKBgQDp44aTwr3dkIXY30xv
37
+ FPfUOipg/B49dWnffYJ9MWc1FT9ijNPAngWSk0EIiEQIazICcUBI4Yji6/KeyqLJ
38
+ GdLpDi1CkKqtyh73mjELinYp3EUQgEa77aQogGa2+nMOVfu+O5CtloUrv/A18jX3
39
+ +VEyaEASK0fWmnSI0OdlxQHIAQKBgQC5+xOls2F3MlKASvWRLlnW1wHqlDTtVoYg
40
+ 5Nh8syZH4Ci2UH8tON3A5/7SWNM0t1cgV6Cw4zW8Z2spgIT/W0iYYrQ4hHL1xdCu
41
+ +CxL1km4Gy8Uwpsd+KdFahFqF/XTmLzW0HXLxWSK0fTwmdV0SFrKF3MXfTCU2AeZ
42
+ jJoMFb6P0wKBgQC3Odw6s0vkYAzLGhuZxfZkVvDOK5RRF0NKpttr0iEFL9EJFkPo
43
+ 2KKK8jr3QTDy229BBJGUxsJi6u6VwS8HlehpVQbV59kd7oKV/EBBx0XMg1fDlopT
44
+ PNbmN7i/zbIG4AsoOyebJZjL7kBzMn1e9vzKHWtcEHXlw/hZGja8vjooAQKBgAeg
45
+ xK2HLfg1mCyq5meN/yFQsENu0LzrT5UJzddPgcJw7zqLEqxIKNBAs7Ls8by3yFsL
46
+ PQwERa/0jfCl1M6kb9XQNpQa2pw6ANUsWKTDpUJn2wZ+9N3F1RaDwzMWyH5lRVmK
47
+ M0qoTfdjpSg5Jwgd75taWt4bxGJWeflSSv8z5R0BAoGAWL8c527AbeBvx2tOYKkD
48
+ 2TFranvANNcoMrbeviZSkkGvMNDP3p8b6juJwXOIeWNr8q4vFgCzLmq6d1/9gYm2
49
+ 3XJwwyD0LKlqzkBrrKU47qrnmMosUrIRlrAzd3HbShOptxc6Iz2apSaUDKGKXkaw
50
+ gl5OpEjeliU7Mus0BVS858g=
51
+ -----END PRIVATE KEY-----`
52
+ };
@@ -1,4 +1,5 @@
1
1
  import FormData from '../../form-data/FormData.js';
2
+ import * as PropertySymbol from '../../PropertySymbol.js';
2
3
  import Stream from 'stream';
3
4
  import MultipartReader from './MultipartReader.js';
4
5
  import DOMException from '../../exception/DOMException.js';
@@ -21,7 +22,7 @@ export default class MultipartFormDataParser {
21
22
  public static async streamToFormData(
22
23
  body: Stream.Readable,
23
24
  contentType: string
24
- ): Promise<FormData> {
25
+ ): Promise<{ formData: FormData; buffer: Buffer }> {
25
26
  if (!/multipart/i.test(contentType)) {
26
27
  throw new DOMException(
27
28
  `Failed to build FormData object: The "content-type" header isn't of type "multipart/form-data".`,
@@ -39,12 +40,50 @@ export default class MultipartFormDataParser {
39
40
  }
40
41
 
41
42
  const reader = new MultipartReader(match[1] || match[2]);
43
+ const chunks = [];
44
+ let buffer: Buffer;
45
+ let bytes = 0;
42
46
 
43
- for await (const chunk of body) {
44
- reader.write(chunk);
47
+ try {
48
+ for await (const chunk of body) {
49
+ reader.write(chunk);
50
+ bytes += chunk.length;
51
+ chunks.push(chunk);
52
+ }
53
+ } catch (error) {
54
+ if (error instanceof DOMException) {
55
+ throw error;
56
+ }
57
+ throw new DOMException(
58
+ `Failed to read response body. Error: ${error.message}.`,
59
+ DOMExceptionNameEnum.encodingError
60
+ );
61
+ }
62
+
63
+ if (
64
+ (<Stream.Readable>body).readableEnded === false ||
65
+ (<Stream.Readable>body)['_readableState']?.ended === false
66
+ ) {
67
+ throw new DOMException(
68
+ `Premature close of server response.`,
69
+ DOMExceptionNameEnum.invalidStateError
70
+ );
71
+ }
72
+
73
+ try {
74
+ buffer =
75
+ typeof chunks[0] === 'string' ? Buffer.from(chunks.join('')) : Buffer.concat(chunks, bytes);
76
+ } catch (error) {
77
+ throw new DOMException(
78
+ `Could not create Buffer from response body. Error: ${error.message}.`,
79
+ DOMExceptionNameEnum.invalidStateError
80
+ );
45
81
  }
46
82
 
47
- return reader.end();
83
+ return {
84
+ formData: reader.end(),
85
+ buffer
86
+ };
48
87
  }
49
88
 
50
89
  /**
@@ -82,7 +121,7 @@ export default class MultipartFormDataParser {
82
121
  )}"\r\nContent-Type: ${value.type || 'application/octet-stream'}\r\n\r\n`
83
122
  )
84
123
  );
85
- chunks.push(value._buffer);
124
+ chunks.push(value[PropertySymbol.buffer]);
86
125
  chunks.push(Buffer.from('\r\n'));
87
126
  }
88
127
  }
@@ -0,0 +1,16 @@
1
+ import IHeaders from './IHeaders.js';
2
+
3
+ /**
4
+ * Fetch response.
5
+ *
6
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Response/Response
7
+ */
8
+ export default interface ISyncResponse {
9
+ status: number;
10
+ statusText: string;
11
+ ok: boolean;
12
+ url: string;
13
+ redirected: boolean;
14
+ headers: IHeaders;
15
+ body: Buffer;
16
+ }
@@ -1,4 +1,5 @@
1
1
  import MultipartFormDataParser from '../multipart/MultipartFormDataParser.js';
2
+ import * as PropertySymbol from '../../PropertySymbol.js';
2
3
  import Stream from 'stream';
3
4
  import { URLSearchParams } from 'url';
4
5
  import FormData from '../../form-data/FormData.js';
@@ -7,7 +8,6 @@ import DOMException from '../../exception/DOMException.js';
7
8
  import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js';
8
9
  import IRequestBody from '../types/IRequestBody.js';
9
10
  import IResponseBody from '../types/IResponseBody.js';
10
- import Request from '../Request.js';
11
11
 
12
12
  /**
13
13
  * Fetch body utility.
@@ -39,7 +39,7 @@ export default class FetchBodyUtility {
39
39
  contentLength: buffer.length
40
40
  };
41
41
  } else if (body instanceof Blob) {
42
- const buffer = (<Blob>body)._buffer;
42
+ const buffer = (<Blob>body)[PropertySymbol.buffer];
43
43
  return {
44
44
  buffer,
45
45
  stream: Stream.Readable.from(buffer),
@@ -90,13 +90,21 @@ export default class FetchBodyUtility {
90
90
  }
91
91
 
92
92
  /**
93
- * Clones a request body stream.
93
+ * Clones a request or body body stream.
94
94
  *
95
- * @param request Request.
96
- * @returns Stream.
95
+ * It is actually not cloning the stream.
96
+ * It creates a pass through stream and pipes the original stream to it.
97
+ *
98
+ * @param requestOrResponse Request or Response.
99
+ * @param requestOrResponse.body
100
+ * @param requestOrResponse.bodyUsed
101
+ * @returns New stream.
97
102
  */
98
- public static cloneRequestBodyStream(request: Request): Stream.Readable {
99
- if (request.bodyUsed) {
103
+ public static cloneBodyStream(requestOrResponse: {
104
+ body: Stream.Readable;
105
+ bodyUsed: boolean;
106
+ }): Stream.Readable {
107
+ if (requestOrResponse.bodyUsed) {
100
108
  throw new DOMException(
101
109
  `Failed to clone body stream of request: Request body is already used.`,
102
110
  DOMExceptionNameEnum.invalidStateError
@@ -106,11 +114,11 @@ export default class FetchBodyUtility {
106
114
  const p1 = new Stream.PassThrough();
107
115
  const p2 = new Stream.PassThrough();
108
116
 
109
- request.body.pipe(p1);
110
- request.body.pipe(p2);
117
+ requestOrResponse.body.pipe(p1);
118
+ requestOrResponse.body.pipe(p2);
111
119
 
112
- // Sets the body of the cloned request to the first pass through stream.
113
- (<Stream.Readable>request.body) = p1;
120
+ // Sets the body of the cloned request/response to the first pass through stream.
121
+ (<Stream.Readable>requestOrResponse.body) = p1;
114
122
 
115
123
  // Returns the clone.
116
124
  return p2;
@@ -1,3 +1,5 @@
1
+ import { URL } from 'url';
2
+
1
3
  /**
2
4
  * Fetch CORS utility.
3
5
  */
@@ -8,7 +10,14 @@ export default class FetchCORSUtility {
8
10
  * @param originURL Origin URL.
9
11
  * @param targetURL Target URL.
10
12
  */
11
- public static isCORS(originURL, targetURL): boolean {
13
+ public static isCORS(originURL: URL | string, targetURL: URL | string): boolean {
14
+ originURL = typeof originURL === 'string' ? new URL(<string>originURL) : <URL>originURL;
15
+ targetURL = typeof targetURL === 'string' ? new URL(<string>targetURL) : <URL>targetURL;
16
+
17
+ if (targetURL.protocol === 'about:' || targetURL.protocol === 'javascript:') {
18
+ return false;
19
+ }
20
+
12
21
  return (
13
22
  (originURL.hostname !== targetURL.hostname &&
14
23
  !originURL.hostname.endsWith(targetURL.hostname)) ||
@@ -1,5 +1,11 @@
1
+ import IBrowserFrame from '../../browser/types/IBrowserFrame.js';
2
+ import * as PropertySymbol from '../../PropertySymbol.js';
3
+ import IBrowserWindow from '../../window/IBrowserWindow.js';
4
+ import CookieStringUtility from '../../cookie/urilities/CookieStringUtility.js';
1
5
  import Headers from '../Headers.js';
6
+ import Request from '../Request.js';
2
7
  import IHeaders from '../types/IHeaders.js';
8
+ import FetchCORSUtility from './FetchCORSUtility.js';
3
9
 
4
10
  const FORBIDDEN_HEADER_NAMES = [
5
11
  'accept-charset',
@@ -8,6 +14,7 @@ const FORBIDDEN_HEADER_NAMES = [
8
14
  'access-control-request-method',
9
15
  'connection',
10
16
  'content-length',
17
+ 'content-transfer-encoding',
11
18
  'cookie',
12
19
  'cookie2',
13
20
  'date',
@@ -34,14 +41,99 @@ export default class FetchRequestHeaderUtility {
34
41
  * @param headers Headers.
35
42
  */
36
43
  public static removeForbiddenHeaders(headers: IHeaders): void {
37
- for (const key of Object.keys((<Headers>headers)._entries)) {
44
+ for (const key of Object.keys((<Headers>headers)[PropertySymbol.entries])) {
38
45
  if (
39
46
  FORBIDDEN_HEADER_NAMES.includes(key) ||
40
47
  key.startsWith('proxy-') ||
41
48
  key.startsWith('sec-')
42
49
  ) {
43
- delete (<Headers>headers)._entries[key];
50
+ delete (<Headers>headers)[PropertySymbol.entries][key];
44
51
  }
45
52
  }
46
53
  }
54
+
55
+ /**
56
+ * Returns "true" if the header is forbidden.
57
+ *
58
+ * @param name Header name.
59
+ * @returns "true" if the header is forbidden.
60
+ */
61
+ public static isHeaderForbidden(name: string): boolean {
62
+ return FORBIDDEN_HEADER_NAMES.includes(name.toLowerCase());
63
+ }
64
+
65
+ /**
66
+ * Returns request headers.
67
+ *
68
+ * @param options Options.
69
+ * @param options.browserFrame Browser frame.
70
+ * @param options.window Window.
71
+ * @param options.request Request.
72
+ * @returns Headers.
73
+ */
74
+ public static getRequestHeaders(options: {
75
+ browserFrame: IBrowserFrame;
76
+ window: IBrowserWindow;
77
+ request: Request;
78
+ }): { [key: string]: string } {
79
+ const headers = new Headers(options.request.headers);
80
+ const isCORS = FetchCORSUtility.isCORS(
81
+ options.window.location,
82
+ options.request[PropertySymbol.url]
83
+ );
84
+
85
+ // TODO: Maybe we need to add support for OPTIONS request with 'Access-Control-Allow-*' headers?
86
+ if (
87
+ options.request.credentials === 'omit' ||
88
+ (options.request.credentials === 'same-origin' && isCORS)
89
+ ) {
90
+ headers.delete('authorization');
91
+ headers.delete('www-authenticate');
92
+ }
93
+
94
+ headers.set('Accept-Encoding', 'gzip, deflate, br');
95
+ headers.set('Connection', 'close');
96
+
97
+ if (!headers.has('User-Agent')) {
98
+ headers.set('User-Agent', options.window.navigator.userAgent);
99
+ }
100
+
101
+ if (options.request[PropertySymbol.referrer] instanceof URL) {
102
+ headers.set('Referer', options.request[PropertySymbol.referrer].href);
103
+ }
104
+
105
+ if (
106
+ options.request.credentials === 'include' ||
107
+ (options.request.credentials === 'same-origin' && !isCORS)
108
+ ) {
109
+ const cookies = options.browserFrame.page.context.cookieContainer.getCookies(
110
+ options.window.location,
111
+ false
112
+ );
113
+ if (cookies.length > 0) {
114
+ headers.set('Cookie', CookieStringUtility.cookiesToString(cookies));
115
+ }
116
+ }
117
+
118
+ if (!headers.has('Accept')) {
119
+ headers.set('Accept', '*/*');
120
+ }
121
+
122
+ if (!headers.has('Content-Length') && options.request[PropertySymbol.contentLength] !== null) {
123
+ headers.set('Content-Length', String(options.request[PropertySymbol.contentLength]));
124
+ }
125
+
126
+ if (!headers.has('Content-Type') && options.request[PropertySymbol.contentType]) {
127
+ headers.set('Content-Type', options.request[PropertySymbol.contentType]);
128
+ }
129
+
130
+ // We need to convert the headers to Node request headers.
131
+ const httpRequestHeaders = {};
132
+
133
+ for (const header of Object.values(headers[PropertySymbol.entries])) {
134
+ httpRequestHeaders[header.name] = header.value;
135
+ }
136
+
137
+ return httpRequestHeaders;
138
+ }
47
139
  }