happy-dom 14.12.3 → 15.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 (2121) hide show
  1. package/cjs/ClassMethodBinder.cjs +71 -0
  2. package/cjs/ClassMethodBinder.cjs.map +1 -0
  3. package/cjs/ClassMethodBinder.d.ts +19 -0
  4. package/cjs/ClassMethodBinder.d.ts.map +1 -0
  5. package/cjs/PropertySymbol.cjs +78 -23
  6. package/cjs/PropertySymbol.cjs.map +1 -1
  7. package/cjs/PropertySymbol.d.ts +72 -18
  8. package/cjs/PropertySymbol.d.ts.map +1 -1
  9. package/cjs/async-task-manager/AsyncTaskManager.cjs +7 -9
  10. package/cjs/async-task-manager/AsyncTaskManager.cjs.map +1 -1
  11. package/cjs/async-task-manager/AsyncTaskManager.d.ts +0 -1
  12. package/cjs/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
  13. package/cjs/browser/Browser.cjs +3 -0
  14. package/cjs/browser/Browser.cjs.map +1 -1
  15. package/cjs/browser/Browser.d.ts +0 -1
  16. package/cjs/browser/Browser.d.ts.map +1 -1
  17. package/cjs/browser/BrowserContext.cjs +5 -4
  18. package/cjs/browser/BrowserContext.cjs.map +1 -1
  19. package/cjs/browser/BrowserFrame.cjs +61 -12
  20. package/cjs/browser/BrowserFrame.cjs.map +1 -1
  21. package/cjs/browser/BrowserFrame.d.ts +22 -2
  22. package/cjs/browser/BrowserFrame.d.ts.map +1 -1
  23. package/cjs/browser/BrowserPage.cjs +31 -2
  24. package/cjs/browser/BrowserPage.cjs.map +1 -1
  25. package/cjs/browser/BrowserPage.d.ts +21 -3
  26. package/cjs/browser/BrowserPage.d.ts.map +1 -1
  27. package/cjs/browser/DefaultBrowserPageViewport.d.ts.map +1 -1
  28. package/cjs/browser/DefaultBrowserSettings.d.ts.map +1 -1
  29. package/cjs/browser/detached-browser/DetachedBrowser.cjs +4 -0
  30. package/cjs/browser/detached-browser/DetachedBrowser.cjs.map +1 -1
  31. package/cjs/browser/detached-browser/DetachedBrowser.d.ts +0 -1
  32. package/cjs/browser/detached-browser/DetachedBrowser.d.ts.map +1 -1
  33. package/cjs/browser/detached-browser/DetachedBrowserContext.cjs +5 -3
  34. package/cjs/browser/detached-browser/DetachedBrowserContext.cjs.map +1 -1
  35. package/cjs/browser/detached-browser/DetachedBrowserFrame.cjs +62 -12
  36. package/cjs/browser/detached-browser/DetachedBrowserFrame.cjs.map +1 -1
  37. package/cjs/browser/detached-browser/DetachedBrowserFrame.d.ts +22 -2
  38. package/cjs/browser/detached-browser/DetachedBrowserFrame.d.ts.map +1 -1
  39. package/cjs/browser/detached-browser/DetachedBrowserPage.cjs +31 -2
  40. package/cjs/browser/detached-browser/DetachedBrowserPage.cjs.map +1 -1
  41. package/cjs/browser/detached-browser/DetachedBrowserPage.d.ts +21 -3
  42. package/cjs/browser/detached-browser/DetachedBrowserPage.d.ts.map +1 -1
  43. package/cjs/browser/types/IBrowser.d.ts +0 -1
  44. package/cjs/browser/types/IBrowser.d.ts.map +1 -1
  45. package/cjs/browser/types/IBrowserFrame.d.ts +21 -1
  46. package/cjs/browser/types/IBrowserFrame.d.ts.map +1 -1
  47. package/cjs/browser/types/IBrowserPage.d.ts +20 -3
  48. package/cjs/browser/types/IBrowserPage.d.ts.map +1 -1
  49. package/cjs/browser/utilities/BrowserFrameExceptionObserver.cjs +4 -6
  50. package/cjs/browser/utilities/BrowserFrameExceptionObserver.cjs.map +1 -1
  51. package/cjs/browser/utilities/BrowserFrameNavigator.cjs +229 -12
  52. package/cjs/browser/utilities/BrowserFrameNavigator.cjs.map +1 -1
  53. package/cjs/browser/utilities/BrowserFrameNavigator.d.ts +74 -2
  54. package/cjs/browser/utilities/BrowserFrameNavigator.d.ts.map +1 -1
  55. package/cjs/browser/utilities/BrowserFrameScriptEvaluator.d.ts +0 -1
  56. package/cjs/browser/utilities/BrowserFrameScriptEvaluator.d.ts.map +1 -1
  57. package/cjs/browser/utilities/BrowserFrameURL.d.ts +0 -1
  58. package/cjs/browser/utilities/BrowserFrameURL.d.ts.map +1 -1
  59. package/cjs/browser/utilities/BrowserFrameValidator.d.ts +0 -1
  60. package/cjs/browser/utilities/BrowserFrameValidator.d.ts.map +1 -1
  61. package/cjs/clipboard/Clipboard.cjs +11 -24
  62. package/cjs/clipboard/Clipboard.cjs.map +1 -1
  63. package/cjs/clipboard/ClipboardItem.cjs +6 -19
  64. package/cjs/clipboard/ClipboardItem.cjs.map +1 -1
  65. package/cjs/config/HTMLElementConfig.cjs +52 -70
  66. package/cjs/config/HTMLElementConfig.cjs.map +1 -1
  67. package/cjs/config/HTMLElementConfig.d.ts.map +1 -1
  68. package/cjs/config/IHTMLElementTagNameMap.d.ts +104 -66
  69. package/cjs/config/IHTMLElementTagNameMap.d.ts.map +1 -1
  70. package/cjs/console/VirtualConsole.cjs +58 -70
  71. package/cjs/console/VirtualConsole.cjs.map +1 -1
  72. package/cjs/console/VirtualConsole.d.ts +0 -1
  73. package/cjs/console/VirtualConsole.d.ts.map +1 -1
  74. package/cjs/console/VirtualConsolePrinter.cjs +13 -28
  75. package/cjs/console/VirtualConsolePrinter.cjs.map +1 -1
  76. package/cjs/cookie/CookieContainer.cjs +7 -16
  77. package/cjs/cookie/CookieContainer.cjs.map +1 -1
  78. package/cjs/cookie/ICookie.d.ts +0 -1
  79. package/cjs/cookie/ICookie.d.ts.map +1 -1
  80. package/cjs/css/CSSRule.cjs +17 -19
  81. package/cjs/css/CSSRule.cjs.map +1 -1
  82. package/cjs/css/CSSStyleSheet.cjs +12 -20
  83. package/cjs/css/CSSStyleSheet.cjs.map +1 -1
  84. package/cjs/css/CSSUnitValue.cjs +2 -2
  85. package/cjs/css/CSSUnitValue.cjs.map +1 -1
  86. package/cjs/css/MediaList.cjs +1 -3
  87. package/cjs/css/MediaList.cjs.map +1 -1
  88. package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs +42 -103
  89. package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs.map +1 -1
  90. package/cjs/css/declaration/AbstractCSSStyleDeclaration.d.ts.map +1 -1
  91. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs +27 -19
  92. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs.map +1 -1
  93. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts +0 -1
  94. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
  95. package/cjs/css/declaration/property-manager/CSSStyleDeclarationPropertyManager.cjs +2 -2
  96. package/cjs/css/declaration/property-manager/CSSStyleDeclarationPropertyManager.cjs.map +1 -1
  97. package/cjs/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.cjs +52 -39
  98. package/cjs/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.cjs.map +1 -1
  99. package/cjs/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.d.ts.map +1 -1
  100. package/cjs/css/declaration/property-manager/CSSStyleDeclarationValueParser.cjs +23 -9
  101. package/cjs/css/declaration/property-manager/CSSStyleDeclarationValueParser.cjs.map +1 -1
  102. package/cjs/css/declaration/property-manager/CSSStyleDeclarationValueParser.d.ts.map +1 -1
  103. package/cjs/css/rules/CSSContainerRule.cjs +3 -6
  104. package/cjs/css/rules/CSSContainerRule.cjs.map +1 -1
  105. package/cjs/css/rules/CSSFontFaceRule.cjs +8 -24
  106. package/cjs/css/rules/CSSFontFaceRule.cjs.map +1 -1
  107. package/cjs/css/rules/CSSKeyframeRule.cjs +9 -24
  108. package/cjs/css/rules/CSSKeyframeRule.cjs.map +1 -1
  109. package/cjs/css/rules/CSSKeyframesRule.cjs +3 -6
  110. package/cjs/css/rules/CSSKeyframesRule.cjs.map +1 -1
  111. package/cjs/css/rules/CSSMediaRule.cjs +3 -6
  112. package/cjs/css/rules/CSSMediaRule.cjs.map +1 -1
  113. package/cjs/css/rules/CSSStyleRule.cjs +10 -26
  114. package/cjs/css/rules/CSSStyleRule.cjs.map +1 -1
  115. package/cjs/css/rules/CSSSupportsRule.cjs +3 -6
  116. package/cjs/css/rules/CSSSupportsRule.cjs.map +1 -1
  117. package/cjs/custom-element/CustomElementRegistry.cjs +37 -46
  118. package/cjs/custom-element/CustomElementRegistry.cjs.map +1 -1
  119. package/cjs/dom-implementation/DOMImplementation.cjs +5 -18
  120. package/cjs/dom-implementation/DOMImplementation.cjs.map +1 -1
  121. package/cjs/dom-implementation/DOMImplementation.d.ts.map +1 -1
  122. package/cjs/dom-parser/DOMParser.cjs +33 -39
  123. package/cjs/dom-parser/DOMParser.cjs.map +1 -1
  124. package/cjs/dom-parser/DOMParser.d.ts.map +1 -1
  125. package/cjs/event/DataTransfer.cjs +3 -5
  126. package/cjs/event/DataTransfer.cjs.map +1 -1
  127. package/cjs/event/DataTransferItem.cjs +6 -17
  128. package/cjs/event/DataTransferItem.cjs.map +1 -1
  129. package/cjs/event/Event.cjs +17 -15
  130. package/cjs/event/Event.cjs.map +1 -1
  131. package/cjs/event/EventTarget.cjs +23 -27
  132. package/cjs/event/EventTarget.cjs.map +1 -1
  133. package/cjs/event/Touch.cjs +12 -0
  134. package/cjs/event/Touch.cjs.map +1 -1
  135. package/cjs/event/UIEvent.cjs +10 -8
  136. package/cjs/event/UIEvent.cjs.map +1 -1
  137. package/cjs/event/events/AnimationEvent.cjs +3 -0
  138. package/cjs/event/events/AnimationEvent.cjs.map +1 -1
  139. package/cjs/event/events/ClipboardEvent.cjs +1 -0
  140. package/cjs/event/events/ClipboardEvent.cjs.map +1 -1
  141. package/cjs/event/events/CustomEvent.cjs +2 -0
  142. package/cjs/event/events/CustomEvent.cjs.map +1 -1
  143. package/cjs/event/events/ErrorEvent.cjs +5 -0
  144. package/cjs/event/events/ErrorEvent.cjs.map +1 -1
  145. package/cjs/event/events/FocusEvent.cjs +1 -0
  146. package/cjs/event/events/FocusEvent.cjs.map +1 -1
  147. package/cjs/event/events/HashChangeEvent.cjs +2 -0
  148. package/cjs/event/events/HashChangeEvent.cjs.map +1 -1
  149. package/cjs/event/events/IMediaQueryListEventInit.cjs +3 -0
  150. package/cjs/event/events/IMediaQueryListEventInit.cjs.map +1 -0
  151. package/cjs/event/events/IMediaQueryListEventInit.d.ts +6 -0
  152. package/cjs/event/events/IMediaQueryListEventInit.d.ts.map +1 -0
  153. package/cjs/event/events/InputEvent.cjs +4 -0
  154. package/cjs/event/events/InputEvent.cjs.map +1 -1
  155. package/cjs/event/events/KeyboardEvent.cjs +17 -4
  156. package/cjs/event/events/KeyboardEvent.cjs.map +1 -1
  157. package/cjs/event/events/MediaQueryListEvent.cjs +2 -0
  158. package/cjs/event/events/MediaQueryListEvent.cjs.map +1 -1
  159. package/cjs/event/events/MediaStreamTrackEvent.cjs +24 -0
  160. package/cjs/event/events/MediaStreamTrackEvent.cjs.map +1 -0
  161. package/cjs/event/events/MediaStreamTrackEvent.d.ts +17 -0
  162. package/cjs/event/events/MediaStreamTrackEvent.d.ts.map +1 -0
  163. package/cjs/event/events/MessageEvent.cjs +5 -0
  164. package/cjs/event/events/MessageEvent.cjs.map +1 -1
  165. package/cjs/event/events/MouseEvent.cjs +16 -0
  166. package/cjs/event/events/MouseEvent.cjs.map +1 -1
  167. package/cjs/event/events/PointerEvent.cjs +16 -2
  168. package/cjs/event/events/PointerEvent.cjs.map +1 -1
  169. package/cjs/event/events/ProgressEvent.cjs +3 -0
  170. package/cjs/event/events/ProgressEvent.cjs.map +1 -1
  171. package/cjs/event/events/StorageEvent.cjs +5 -0
  172. package/cjs/event/events/StorageEvent.cjs.map +1 -1
  173. package/cjs/event/events/SubmitEvent.cjs +1 -0
  174. package/cjs/event/events/SubmitEvent.cjs.map +1 -1
  175. package/cjs/event/events/TouchEvent.cjs +7 -0
  176. package/cjs/event/events/TouchEvent.cjs.map +1 -1
  177. package/cjs/event/events/WheelEvent.cjs +7 -3
  178. package/cjs/event/events/WheelEvent.cjs.map +1 -1
  179. package/cjs/fetch/AbortController.cjs +1 -1
  180. package/cjs/fetch/AbortController.cjs.map +1 -1
  181. package/cjs/fetch/AbortSignal.cjs +3 -6
  182. package/cjs/fetch/AbortSignal.cjs.map +1 -1
  183. package/cjs/fetch/Fetch.cjs +57 -67
  184. package/cjs/fetch/Fetch.cjs.map +1 -1
  185. package/cjs/fetch/Headers.cjs +2 -3
  186. package/cjs/fetch/Headers.cjs.map +1 -1
  187. package/cjs/fetch/Request.cjs +32 -34
  188. package/cjs/fetch/Request.cjs.map +1 -1
  189. package/cjs/fetch/Request.d.ts +0 -2
  190. package/cjs/fetch/Request.d.ts.map +1 -1
  191. package/cjs/fetch/ResourceFetch.cjs +5 -17
  192. package/cjs/fetch/ResourceFetch.cjs.map +1 -1
  193. package/cjs/fetch/Response.cjs +45 -47
  194. package/cjs/fetch/Response.cjs.map +1 -1
  195. package/cjs/fetch/Response.d.ts +0 -2
  196. package/cjs/fetch/Response.d.ts.map +1 -1
  197. package/cjs/fetch/SyncFetch.cjs +32 -42
  198. package/cjs/fetch/SyncFetch.cjs.map +1 -1
  199. package/cjs/fetch/cache/preflight/PreflightResponseCache.cjs +6 -21
  200. package/cjs/fetch/cache/preflight/PreflightResponseCache.cjs.map +1 -1
  201. package/cjs/fetch/cache/response/ICachableResponse.d.ts +0 -1
  202. package/cjs/fetch/cache/response/ICachableResponse.d.ts.map +1 -1
  203. package/cjs/fetch/cache/response/ICachedResponse.d.ts +0 -1
  204. package/cjs/fetch/cache/response/ICachedResponse.d.ts.map +1 -1
  205. package/cjs/fetch/cache/response/ResponseCache.cjs +20 -35
  206. package/cjs/fetch/cache/response/ResponseCache.cjs.map +1 -1
  207. package/cjs/fetch/data-uri/DataURIParser.d.ts +0 -1
  208. package/cjs/fetch/data-uri/DataURIParser.d.ts.map +1 -1
  209. package/cjs/fetch/multipart/MultipartFormDataParser.d.ts +0 -2
  210. package/cjs/fetch/multipart/MultipartFormDataParser.d.ts.map +1 -1
  211. package/cjs/fetch/multipart/MultipartReader.cjs +10 -9
  212. package/cjs/fetch/multipart/MultipartReader.cjs.map +1 -1
  213. package/cjs/fetch/types/IRequestBody.d.ts +0 -2
  214. package/cjs/fetch/types/IRequestBody.d.ts.map +1 -1
  215. package/cjs/fetch/types/IResponseBody.d.ts +0 -2
  216. package/cjs/fetch/types/IResponseBody.d.ts.map +1 -1
  217. package/cjs/fetch/types/ISyncResponse.d.ts +0 -1
  218. package/cjs/fetch/types/ISyncResponse.d.ts.map +1 -1
  219. package/cjs/fetch/utilities/FetchBodyUtility.d.ts +0 -3
  220. package/cjs/fetch/utilities/FetchBodyUtility.d.ts.map +1 -1
  221. package/cjs/fetch/utilities/FetchCORSUtility.d.ts +0 -1
  222. package/cjs/fetch/utilities/FetchCORSUtility.d.ts.map +1 -1
  223. package/cjs/fetch/utilities/FetchResponseHeaderUtility.d.ts +0 -1
  224. package/cjs/fetch/utilities/FetchResponseHeaderUtility.d.ts.map +1 -1
  225. package/cjs/fetch/utilities/SyncFetchScriptBuilder.d.ts +0 -2
  226. package/cjs/fetch/utilities/SyncFetchScriptBuilder.d.ts.map +1 -1
  227. package/cjs/file/Blob.cjs +2 -4
  228. package/cjs/file/Blob.cjs.map +1 -1
  229. package/cjs/file/Blob.d.ts +0 -1
  230. package/cjs/file/Blob.d.ts.map +1 -1
  231. package/cjs/file/File.cjs +2 -2
  232. package/cjs/file/File.cjs.map +1 -1
  233. package/cjs/file/File.d.ts +0 -1
  234. package/cjs/file/File.d.ts.map +1 -1
  235. package/cjs/file/FileReader.cjs +77 -83
  236. package/cjs/file/FileReader.cjs.map +1 -1
  237. package/cjs/file/FileReader.d.ts +0 -1
  238. package/cjs/file/FileReader.d.ts.map +1 -1
  239. package/cjs/form-data/FormData.cjs +80 -71
  240. package/cjs/form-data/FormData.cjs.map +1 -1
  241. package/cjs/form-data/FormData.d.ts.map +1 -1
  242. package/cjs/history/History.cjs +141 -34
  243. package/cjs/history/History.cjs.map +1 -1
  244. package/cjs/history/History.d.ts +31 -11
  245. package/cjs/history/History.d.ts.map +1 -1
  246. package/cjs/history/IHistoryItem.cjs +3 -0
  247. package/cjs/history/IHistoryItem.cjs.map +1 -0
  248. package/cjs/history/IHistoryItem.d.ts +12 -0
  249. package/cjs/history/IHistoryItem.d.ts.map +1 -0
  250. package/cjs/index.cjs +108 -50
  251. package/cjs/index.cjs.map +1 -1
  252. package/cjs/index.d.ts +53 -2
  253. package/cjs/index.d.ts.map +1 -1
  254. package/cjs/intersection-observer/IIntersectionObserverInit.cjs +3 -0
  255. package/cjs/intersection-observer/IIntersectionObserverInit.cjs.map +1 -0
  256. package/cjs/intersection-observer/IIntersectionObserverInit.d.ts +16 -0
  257. package/cjs/intersection-observer/IIntersectionObserverInit.d.ts.map +1 -0
  258. package/cjs/intersection-observer/IntersectionObserver.cjs +56 -0
  259. package/cjs/intersection-observer/IntersectionObserver.cjs.map +1 -0
  260. package/cjs/intersection-observer/IntersectionObserver.d.ts +41 -0
  261. package/cjs/intersection-observer/IntersectionObserver.d.ts.map +1 -0
  262. package/cjs/intersection-observer/IntersectionObserverEntry.cjs +26 -0
  263. package/cjs/intersection-observer/IntersectionObserverEntry.cjs.map +1 -0
  264. package/cjs/intersection-observer/IntersectionObserverEntry.d.ts +23 -0
  265. package/cjs/intersection-observer/IntersectionObserverEntry.d.ts.map +1 -0
  266. package/cjs/location/Location.cjs +46 -57
  267. package/cjs/location/Location.cjs.map +1 -1
  268. package/cjs/location/Location.d.ts.map +1 -1
  269. package/cjs/match-media/MediaQueryItem.cjs +6 -1
  270. package/cjs/match-media/MediaQueryItem.cjs.map +1 -1
  271. package/cjs/match-media/MediaQueryList.cjs +26 -37
  272. package/cjs/match-media/MediaQueryList.cjs.map +1 -1
  273. package/cjs/mutation-observer/IMutationListener.cjs +3 -0
  274. package/cjs/mutation-observer/IMutationListener.cjs.map +1 -0
  275. package/cjs/mutation-observer/IMutationListener.d.ts +7 -0
  276. package/cjs/mutation-observer/IMutationListener.d.ts.map +1 -0
  277. package/cjs/mutation-observer/MutationObserver.cjs +25 -36
  278. package/cjs/mutation-observer/MutationObserver.cjs.map +1 -1
  279. package/cjs/mutation-observer/MutationObserver.d.ts.map +1 -1
  280. package/cjs/mutation-observer/MutationObserverListener.cjs +86 -0
  281. package/cjs/mutation-observer/MutationObserverListener.cjs.map +1 -0
  282. package/cjs/mutation-observer/MutationObserverListener.d.ts +47 -0
  283. package/cjs/mutation-observer/MutationObserverListener.d.ts.map +1 -0
  284. package/cjs/mutation-observer/MutationRecord.cjs +9 -9
  285. package/cjs/mutation-observer/MutationRecord.cjs.map +1 -1
  286. package/cjs/navigator/MimeType.cjs +4 -0
  287. package/cjs/navigator/MimeType.cjs.map +1 -1
  288. package/cjs/navigator/MimeTypeArray.cjs +1 -0
  289. package/cjs/navigator/MimeTypeArray.cjs.map +1 -1
  290. package/cjs/navigator/Navigator.cjs +11 -24
  291. package/cjs/navigator/Navigator.cjs.map +1 -1
  292. package/cjs/navigator/Plugin.cjs +4 -1
  293. package/cjs/navigator/Plugin.cjs.map +1 -1
  294. package/cjs/navigator/PluginArray.cjs +1 -0
  295. package/cjs/navigator/PluginArray.cjs.map +1 -1
  296. package/cjs/nodes/NodeFactory.cjs +28 -2
  297. package/cjs/nodes/NodeFactory.cjs.map +1 -1
  298. package/cjs/nodes/NodeFactory.d.ts +2 -1
  299. package/cjs/nodes/NodeFactory.d.ts.map +1 -1
  300. package/cjs/nodes/attr/Attr.cjs +23 -13
  301. package/cjs/nodes/attr/Attr.cjs.map +1 -1
  302. package/cjs/nodes/attr/Attr.d.ts +7 -0
  303. package/cjs/nodes/attr/Attr.d.ts.map +1 -1
  304. package/cjs/nodes/character-data/CharacterData.cjs +8 -21
  305. package/cjs/nodes/character-data/CharacterData.cjs.map +1 -1
  306. package/cjs/nodes/character-data/CharacterData.d.ts.map +1 -1
  307. package/cjs/nodes/child-node/ChildNodeUtility.cjs +10 -10
  308. package/cjs/nodes/child-node/ChildNodeUtility.cjs.map +1 -1
  309. package/cjs/nodes/comment/Comment.cjs +2 -6
  310. package/cjs/nodes/comment/Comment.cjs.map +1 -1
  311. package/cjs/nodes/comment/Comment.d.ts.map +1 -1
  312. package/cjs/nodes/document/Document.cjs +211 -237
  313. package/cjs/nodes/document/Document.cjs.map +1 -1
  314. package/cjs/nodes/document/Document.d.ts +16 -22
  315. package/cjs/nodes/document/Document.d.ts.map +1 -1
  316. package/cjs/nodes/document/DocumentReadyStateManager.cjs +5 -5
  317. package/cjs/nodes/document/DocumentReadyStateManager.cjs.map +1 -1
  318. package/cjs/nodes/document-fragment/DocumentFragment.cjs +15 -49
  319. package/cjs/nodes/document-fragment/DocumentFragment.cjs.map +1 -1
  320. package/cjs/nodes/document-fragment/DocumentFragment.d.ts +3 -19
  321. package/cjs/nodes/document-fragment/DocumentFragment.d.ts.map +1 -1
  322. package/cjs/nodes/document-type/DocumentType.cjs +5 -9
  323. package/cjs/nodes/document-type/DocumentType.cjs.map +1 -1
  324. package/cjs/nodes/document-type/DocumentType.d.ts.map +1 -1
  325. package/cjs/nodes/element/DOMRectReadOnly.cjs +4 -6
  326. package/cjs/nodes/element/DOMRectReadOnly.cjs.map +1 -1
  327. package/cjs/nodes/element/DOMStringMap.cjs +99 -0
  328. package/cjs/nodes/element/DOMStringMap.cjs.map +1 -0
  329. package/cjs/nodes/element/DOMStringMap.d.ts +17 -0
  330. package/cjs/nodes/element/DOMStringMap.d.ts.map +1 -0
  331. package/cjs/nodes/element/DOMStringMapUtility.cjs +36 -0
  332. package/cjs/nodes/element/DOMStringMapUtility.cjs.map +1 -0
  333. package/cjs/nodes/element/DOMStringMapUtility.d.ts +23 -0
  334. package/cjs/nodes/element/DOMStringMapUtility.d.ts.map +1 -0
  335. package/cjs/nodes/element/DOMTokenList.cjs +314 -0
  336. package/cjs/nodes/element/DOMTokenList.cjs.map +1 -0
  337. package/cjs/nodes/element/DOMTokenList.d.ts +118 -0
  338. package/cjs/nodes/element/DOMTokenList.d.ts.map +1 -0
  339. package/cjs/nodes/element/Element.cjs +418 -150
  340. package/cjs/nodes/element/Element.cjs.map +1 -1
  341. package/cjs/nodes/element/Element.d.ts +68 -35
  342. package/cjs/nodes/element/Element.d.ts.map +1 -1
  343. package/cjs/nodes/element/HTMLCollection.cjs +180 -56
  344. package/cjs/nodes/element/HTMLCollection.cjs.map +1 -1
  345. package/cjs/nodes/element/HTMLCollection.d.ts +44 -23
  346. package/cjs/nodes/element/HTMLCollection.d.ts.map +1 -1
  347. package/cjs/nodes/element/NamedNodeMap.cjs +241 -0
  348. package/cjs/nodes/element/NamedNodeMap.cjs.map +1 -0
  349. package/cjs/nodes/element/NamedNodeMap.d.ts +127 -0
  350. package/cjs/nodes/element/NamedNodeMap.d.ts.map +1 -0
  351. package/cjs/nodes/element/NamedNodeMapProxyFactory.cjs +141 -0
  352. package/cjs/nodes/element/NamedNodeMapProxyFactory.cjs.map +1 -0
  353. package/cjs/nodes/element/NamedNodeMapProxyFactory.d.ts +15 -0
  354. package/cjs/nodes/element/NamedNodeMapProxyFactory.d.ts.map +1 -0
  355. package/cjs/nodes/element/THTMLCollectionListener.cjs +3 -0
  356. package/cjs/nodes/element/THTMLCollectionListener.cjs.map +1 -0
  357. package/cjs/nodes/element/THTMLCollectionListener.d.ts +8 -0
  358. package/cjs/nodes/element/THTMLCollectionListener.d.ts.map +1 -0
  359. package/cjs/nodes/element/TNamedNodeMapListener.cjs +3 -0
  360. package/cjs/nodes/element/TNamedNodeMapListener.cjs.map +1 -0
  361. package/cjs/nodes/element/TNamedNodeMapListener.d.ts +4 -0
  362. package/cjs/nodes/element/TNamedNodeMapListener.d.ts.map +1 -0
  363. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs +33 -169
  364. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs.map +1 -1
  365. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.d.ts +5 -6
  366. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
  367. package/cjs/nodes/html-area-element/HTMLAreaElement.cjs +378 -0
  368. package/cjs/nodes/html-area-element/HTMLAreaElement.cjs.map +1 -0
  369. package/cjs/nodes/html-area-element/HTMLAreaElement.d.ts +251 -0
  370. package/cjs/nodes/html-area-element/HTMLAreaElement.d.ts.map +1 -0
  371. package/cjs/nodes/html-base-element/HTMLBaseElement.cjs +9 -4
  372. package/cjs/nodes/html-base-element/HTMLBaseElement.cjs.map +1 -1
  373. package/cjs/nodes/html-base-element/HTMLBaseElement.d.ts.map +1 -1
  374. package/cjs/nodes/html-body-element/HTMLBodyElement.cjs +34 -0
  375. package/cjs/nodes/html-body-element/HTMLBodyElement.cjs.map +1 -0
  376. package/cjs/nodes/html-body-element/HTMLBodyElement.d.ts +28 -0
  377. package/cjs/nodes/html-body-element/HTMLBodyElement.d.ts.map +1 -0
  378. package/cjs/nodes/html-br-element/HTMLBRElement.cjs +15 -0
  379. package/cjs/nodes/html-br-element/HTMLBRElement.cjs.map +1 -0
  380. package/cjs/nodes/html-br-element/HTMLBRElement.d.ts +9 -0
  381. package/cjs/nodes/html-br-element/HTMLBRElement.d.ts.map +1 -0
  382. package/cjs/nodes/html-button-element/HTMLButtonElement.cjs +19 -41
  383. package/cjs/nodes/html-button-element/HTMLButtonElement.cjs.map +1 -1
  384. package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts +2 -8
  385. package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
  386. package/cjs/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.cjs +74 -0
  387. package/cjs/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.cjs.map +1 -0
  388. package/cjs/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.d.ts +35 -0
  389. package/cjs/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.d.ts.map +1 -0
  390. package/cjs/nodes/html-canvas-element/HTMLCanvasElement.cjs +144 -0
  391. package/cjs/nodes/html-canvas-element/HTMLCanvasElement.cjs.map +1 -0
  392. package/cjs/nodes/html-canvas-element/HTMLCanvasElement.d.ts +81 -0
  393. package/cjs/nodes/html-canvas-element/HTMLCanvasElement.d.ts.map +1 -0
  394. package/cjs/nodes/html-canvas-element/ImageBitmap.cjs +29 -0
  395. package/cjs/nodes/html-canvas-element/ImageBitmap.cjs.map +1 -0
  396. package/cjs/nodes/html-canvas-element/ImageBitmap.d.ts +21 -0
  397. package/cjs/nodes/html-canvas-element/ImageBitmap.d.ts.map +1 -0
  398. package/cjs/nodes/html-canvas-element/OffscreenCanvas.cjs +57 -0
  399. package/cjs/nodes/html-canvas-element/OffscreenCanvas.cjs.map +1 -0
  400. package/cjs/nodes/html-canvas-element/OffscreenCanvas.d.ts +47 -0
  401. package/cjs/nodes/html-canvas-element/OffscreenCanvas.d.ts.map +1 -0
  402. package/cjs/nodes/html-d-list-element/HTMLDListElement.cjs +15 -0
  403. package/cjs/nodes/html-d-list-element/HTMLDListElement.cjs.map +1 -0
  404. package/cjs/nodes/html-d-list-element/HTMLDListElement.d.ts +9 -0
  405. package/cjs/nodes/html-d-list-element/HTMLDListElement.d.ts.map +1 -0
  406. package/cjs/nodes/html-data-element/HTMLDataElement.cjs +31 -0
  407. package/cjs/nodes/html-data-element/HTMLDataElement.cjs.map +1 -0
  408. package/cjs/nodes/html-data-element/HTMLDataElement.d.ts +21 -0
  409. package/cjs/nodes/html-data-element/HTMLDataElement.d.ts.map +1 -0
  410. package/cjs/nodes/html-data-list-element/HTMLDataListElement.cjs +52 -0
  411. package/cjs/nodes/html-data-list-element/HTMLDataListElement.cjs.map +1 -0
  412. package/cjs/nodes/html-data-list-element/HTMLDataListElement.d.ts +19 -0
  413. package/cjs/nodes/html-data-list-element/HTMLDataListElement.d.ts.map +1 -0
  414. package/cjs/nodes/html-details-element/HTMLDetailsElement.cjs +81 -0
  415. package/cjs/nodes/html-details-element/HTMLDetailsElement.cjs.map +1 -0
  416. package/cjs/nodes/html-details-element/HTMLDetailsElement.d.ts +31 -0
  417. package/cjs/nodes/html-details-element/HTMLDetailsElement.d.ts.map +1 -0
  418. package/cjs/nodes/html-dialog-element/HTMLDialogElement.cjs +6 -12
  419. package/cjs/nodes/html-dialog-element/HTMLDialogElement.cjs.map +1 -1
  420. package/cjs/nodes/html-dialog-element/HTMLDialogElement.d.ts +1 -2
  421. package/cjs/nodes/html-dialog-element/HTMLDialogElement.d.ts.map +1 -1
  422. package/cjs/nodes/html-div-element/HTMLDivElement.cjs +15 -0
  423. package/cjs/nodes/html-div-element/HTMLDivElement.cjs.map +1 -0
  424. package/cjs/nodes/html-div-element/HTMLDivElement.d.ts +9 -0
  425. package/cjs/nodes/html-div-element/HTMLDivElement.d.ts.map +1 -0
  426. package/cjs/nodes/html-element/HTMLElement.cjs +104 -116
  427. package/cjs/nodes/html-element/HTMLElement.cjs.map +1 -1
  428. package/cjs/nodes/html-element/HTMLElement.d.ts +10 -10
  429. package/cjs/nodes/html-element/HTMLElement.d.ts.map +1 -1
  430. package/cjs/nodes/html-element/HTMLElementUtility.cjs +4 -2
  431. package/cjs/nodes/html-element/HTMLElementUtility.cjs.map +1 -1
  432. package/cjs/nodes/html-element/HTMLElementUtility.d.ts.map +1 -1
  433. package/cjs/nodes/html-embed-element/HTMLEmbedElement.cjs +112 -0
  434. package/cjs/nodes/html-embed-element/HTMLEmbedElement.cjs.map +1 -0
  435. package/cjs/nodes/html-embed-element/HTMLEmbedElement.d.ts +57 -0
  436. package/cjs/nodes/html-embed-element/HTMLEmbedElement.d.ts.map +1 -0
  437. package/cjs/nodes/html-field-set-element/HTMLFieldSetElement.cjs +161 -0
  438. package/cjs/nodes/html-field-set-element/HTMLFieldSetElement.cjs.map +1 -0
  439. package/cjs/nodes/html-field-set-element/HTMLFieldSetElement.d.ts +99 -0
  440. package/cjs/nodes/html-field-set-element/HTMLFieldSetElement.d.ts.map +1 -0
  441. package/cjs/nodes/html-form-element/HTMLFormControlsCollection.cjs +10 -81
  442. package/cjs/nodes/html-form-element/HTMLFormControlsCollection.cjs.map +1 -1
  443. package/cjs/nodes/html-form-element/HTMLFormControlsCollection.d.ts +11 -37
  444. package/cjs/nodes/html-form-element/HTMLFormControlsCollection.d.ts.map +1 -1
  445. package/cjs/nodes/html-form-element/HTMLFormElement.cjs +250 -145
  446. package/cjs/nodes/html-form-element/HTMLFormElement.cjs.map +1 -1
  447. package/cjs/nodes/html-form-element/HTMLFormElement.d.ts +12 -23
  448. package/cjs/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
  449. package/cjs/nodes/html-form-element/RadioNodeList.cjs +25 -1
  450. package/cjs/nodes/html-form-element/RadioNodeList.cjs.map +1 -1
  451. package/cjs/nodes/html-form-element/RadioNodeList.d.ts +2 -5
  452. package/cjs/nodes/html-form-element/RadioNodeList.d.ts.map +1 -1
  453. package/cjs/nodes/html-form-element/THTMLFormControlElement.cjs +3 -0
  454. package/cjs/nodes/html-form-element/THTMLFormControlElement.cjs.map +1 -0
  455. package/cjs/nodes/html-form-element/THTMLFormControlElement.d.ts +10 -0
  456. package/cjs/nodes/html-form-element/THTMLFormControlElement.d.ts.map +1 -0
  457. package/cjs/nodes/html-head-element/HTMLHeadElement.cjs +15 -0
  458. package/cjs/nodes/html-head-element/HTMLHeadElement.cjs.map +1 -0
  459. package/cjs/nodes/html-head-element/HTMLHeadElement.d.ts +9 -0
  460. package/cjs/nodes/html-head-element/HTMLHeadElement.d.ts.map +1 -0
  461. package/cjs/nodes/html-heading-element/HTMLHeadingElement.cjs +15 -0
  462. package/cjs/nodes/html-heading-element/HTMLHeadingElement.cjs.map +1 -0
  463. package/cjs/nodes/html-heading-element/HTMLHeadingElement.d.ts +9 -0
  464. package/cjs/nodes/html-heading-element/HTMLHeadingElement.d.ts.map +1 -0
  465. package/cjs/nodes/html-hr-element/HTMLHRElement.cjs +15 -0
  466. package/cjs/nodes/html-hr-element/HTMLHRElement.cjs.map +1 -0
  467. package/cjs/nodes/html-hr-element/HTMLHRElement.d.ts +9 -0
  468. package/cjs/nodes/html-hr-element/HTMLHRElement.d.ts.map +1 -0
  469. package/cjs/nodes/html-html-element/HTMLHtmlElement.cjs +15 -0
  470. package/cjs/nodes/html-html-element/HTMLHtmlElement.cjs.map +1 -0
  471. package/cjs/nodes/html-html-element/HTMLHtmlElement.d.ts +9 -0
  472. package/cjs/nodes/html-html-element/HTMLHtmlElement.d.ts.map +1 -0
  473. package/cjs/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.cjs +348 -0
  474. package/cjs/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.cjs.map +1 -0
  475. package/cjs/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.d.ts +142 -0
  476. package/cjs/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.d.ts.map +1 -0
  477. package/cjs/nodes/html-hyperlink-element/IHTMLHyperlinkElement.cjs +3 -0
  478. package/cjs/nodes/html-hyperlink-element/IHTMLHyperlinkElement.cjs.map +1 -0
  479. package/cjs/nodes/html-hyperlink-element/IHTMLHyperlinkElement.d.ts +20 -0
  480. package/cjs/nodes/html-hyperlink-element/IHTMLHyperlinkElement.d.ts.map +1 -0
  481. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs +175 -45
  482. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs.map +1 -1
  483. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts +18 -8
  484. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
  485. package/cjs/nodes/html-image-element/HTMLImageElement.cjs +8 -12
  486. package/cjs/nodes/html-image-element/HTMLImageElement.cjs.map +1 -1
  487. package/cjs/nodes/html-image-element/HTMLImageElement.d.ts.map +1 -1
  488. package/cjs/nodes/html-input-element/HTMLInputElement.cjs +102 -115
  489. package/cjs/nodes/html-input-element/HTMLInputElement.cjs.map +1 -1
  490. package/cjs/nodes/html-input-element/HTMLInputElement.d.ts +10 -9
  491. package/cjs/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
  492. package/cjs/nodes/html-input-element/HTMLInputElementValueSanitizer.cjs +16 -16
  493. package/cjs/nodes/html-input-element/HTMLInputElementValueSanitizer.cjs.map +1 -1
  494. package/cjs/nodes/html-label-element/HTMLLabelElement.cjs +22 -5
  495. package/cjs/nodes/html-label-element/HTMLLabelElement.cjs.map +1 -1
  496. package/cjs/nodes/html-label-element/HTMLLabelElement.d.ts +2 -2
  497. package/cjs/nodes/html-label-element/HTMLLabelElement.d.ts.map +1 -1
  498. package/cjs/nodes/html-label-element/HTMLLabelElementUtility.cjs +6 -5
  499. package/cjs/nodes/html-label-element/HTMLLabelElementUtility.cjs.map +1 -1
  500. package/cjs/nodes/html-label-element/HTMLLabelElementUtility.d.ts.map +1 -1
  501. package/cjs/nodes/html-legend-element/HTMLLegendElement.cjs +31 -0
  502. package/cjs/nodes/html-legend-element/HTMLLegendElement.cjs.map +1 -0
  503. package/cjs/nodes/html-legend-element/HTMLLegendElement.d.ts +16 -0
  504. package/cjs/nodes/html-legend-element/HTMLLegendElement.d.ts.map +1 -0
  505. package/cjs/nodes/html-li-element/HTMLLIElement.cjs +36 -0
  506. package/cjs/nodes/html-li-element/HTMLLIElement.cjs.map +1 -0
  507. package/cjs/nodes/html-li-element/HTMLLIElement.d.ts +21 -0
  508. package/cjs/nodes/html-li-element/HTMLLIElement.d.ts.map +1 -0
  509. package/cjs/nodes/html-link-element/HTMLLinkElement.cjs +98 -35
  510. package/cjs/nodes/html-link-element/HTMLLinkElement.cjs.map +1 -1
  511. package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts +9 -8
  512. package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
  513. package/cjs/nodes/html-map-element/HTMLMapElement.cjs +68 -0
  514. package/cjs/nodes/html-map-element/HTMLMapElement.cjs.map +1 -0
  515. package/cjs/nodes/html-map-element/HTMLMapElement.d.ts +31 -0
  516. package/cjs/nodes/html-map-element/HTMLMapElement.d.ts.map +1 -0
  517. package/cjs/nodes/html-media-element/HTMLMediaElement.cjs +245 -104
  518. package/cjs/nodes/html-media-element/HTMLMediaElement.cjs.map +1 -1
  519. package/cjs/nodes/html-media-element/HTMLMediaElement.d.ts +117 -39
  520. package/cjs/nodes/html-media-element/HTMLMediaElement.d.ts.map +1 -1
  521. package/cjs/nodes/html-media-element/IMediaTrackCapabilities.cjs +3 -0
  522. package/cjs/nodes/html-media-element/IMediaTrackCapabilities.cjs.map +1 -0
  523. package/cjs/nodes/html-media-element/IMediaTrackCapabilities.d.ts +22 -0
  524. package/cjs/nodes/html-media-element/IMediaTrackCapabilities.d.ts.map +1 -0
  525. package/cjs/nodes/html-media-element/IMediaTrackSettings.cjs +3 -0
  526. package/cjs/nodes/html-media-element/IMediaTrackSettings.cjs.map +1 -0
  527. package/cjs/nodes/html-media-element/IMediaTrackSettings.d.ts +6 -0
  528. package/cjs/nodes/html-media-element/IMediaTrackSettings.d.ts.map +1 -0
  529. package/cjs/nodes/html-media-element/MediaStream.cjs +126 -0
  530. package/cjs/nodes/html-media-element/MediaStream.cjs.map +1 -0
  531. package/cjs/nodes/html-media-element/MediaStream.d.ts +60 -0
  532. package/cjs/nodes/html-media-element/MediaStream.d.ts.map +1 -0
  533. package/cjs/nodes/html-media-element/MediaStreamTrack.cjs +176 -0
  534. package/cjs/nodes/html-media-element/MediaStreamTrack.cjs.map +1 -0
  535. package/cjs/nodes/html-media-element/MediaStreamTrack.d.ts +75 -0
  536. package/cjs/nodes/html-media-element/MediaStreamTrack.d.ts.map +1 -0
  537. package/cjs/nodes/html-media-element/RemotePlayback.cjs +71 -0
  538. package/cjs/nodes/html-media-element/RemotePlayback.cjs.map +1 -0
  539. package/cjs/nodes/html-media-element/RemotePlayback.d.ts +32 -0
  540. package/cjs/nodes/html-media-element/RemotePlayback.d.ts.map +1 -0
  541. package/cjs/nodes/html-media-element/TextTrack.cjs +160 -0
  542. package/cjs/nodes/html-media-element/TextTrack.cjs.map +1 -0
  543. package/cjs/nodes/html-media-element/TextTrack.d.ts +88 -0
  544. package/cjs/nodes/html-media-element/TextTrack.d.ts.map +1 -0
  545. package/cjs/nodes/html-media-element/TextTrackCue.cjs +68 -0
  546. package/cjs/nodes/html-media-element/TextTrackCue.cjs.map +1 -0
  547. package/cjs/nodes/html-media-element/TextTrackCue.d.ts +31 -0
  548. package/cjs/nodes/html-media-element/TextTrackCue.d.ts.map +1 -0
  549. package/cjs/nodes/html-media-element/TextTrackCueList.cjs +59 -0
  550. package/cjs/nodes/html-media-element/TextTrackCueList.cjs.map +1 -0
  551. package/cjs/nodes/html-media-element/TextTrackCueList.d.ts +19 -0
  552. package/cjs/nodes/html-media-element/TextTrackCueList.d.ts.map +1 -0
  553. package/cjs/nodes/html-media-element/TextTrackKindEnum.cjs +12 -0
  554. package/cjs/nodes/html-media-element/TextTrackKindEnum.cjs.map +1 -0
  555. package/cjs/nodes/html-media-element/TextTrackKindEnum.d.ts +9 -0
  556. package/cjs/nodes/html-media-element/TextTrackKindEnum.d.ts.map +1 -0
  557. package/cjs/nodes/html-media-element/TextTrackList.cjs +186 -0
  558. package/cjs/nodes/html-media-element/TextTrackList.cjs.map +1 -0
  559. package/cjs/nodes/html-media-element/TextTrackList.d.ts +59 -0
  560. package/cjs/nodes/html-media-element/TextTrackList.d.ts.map +1 -0
  561. package/cjs/nodes/html-media-element/TimeRanges.cjs +93 -0
  562. package/cjs/nodes/html-media-element/TimeRanges.cjs.map +1 -0
  563. package/cjs/nodes/html-media-element/TimeRanges.d.ts +50 -0
  564. package/cjs/nodes/html-media-element/TimeRanges.d.ts.map +1 -0
  565. package/cjs/nodes/html-media-element/VTTCue.cjs +94 -0
  566. package/cjs/nodes/html-media-element/VTTCue.cjs.map +1 -0
  567. package/cjs/nodes/html-media-element/VTTCue.d.ts +38 -0
  568. package/cjs/nodes/html-media-element/VTTCue.d.ts.map +1 -0
  569. package/cjs/nodes/html-media-element/VTTRegion.cjs +19 -0
  570. package/cjs/nodes/html-media-element/VTTRegion.cjs.map +1 -0
  571. package/cjs/nodes/html-media-element/VTTRegion.d.ts +16 -0
  572. package/cjs/nodes/html-media-element/VTTRegion.d.ts.map +1 -0
  573. package/cjs/nodes/html-menu-element/HTMLMenuElement.cjs +15 -0
  574. package/cjs/nodes/html-menu-element/HTMLMenuElement.cjs.map +1 -0
  575. package/cjs/nodes/html-menu-element/HTMLMenuElement.d.ts +9 -0
  576. package/cjs/nodes/html-menu-element/HTMLMenuElement.d.ts.map +1 -0
  577. package/cjs/nodes/html-meter-element/HTMLMeterElement.cjs +183 -0
  578. package/cjs/nodes/html-meter-element/HTMLMeterElement.cjs.map +1 -0
  579. package/cjs/nodes/html-meter-element/HTMLMeterElement.d.ts +89 -0
  580. package/cjs/nodes/html-meter-element/HTMLMeterElement.d.ts.map +1 -0
  581. package/cjs/nodes/html-mod-element/HTMLModElement.cjs +80 -0
  582. package/cjs/nodes/html-mod-element/HTMLModElement.cjs.map +1 -0
  583. package/cjs/nodes/html-mod-element/HTMLModElement.d.ts +33 -0
  584. package/cjs/nodes/html-mod-element/HTMLModElement.d.ts.map +1 -0
  585. package/cjs/nodes/html-o-list-element/HTMLOListElement.cjs +81 -0
  586. package/cjs/nodes/html-o-list-element/HTMLOListElement.cjs.map +1 -0
  587. package/cjs/nodes/html-o-list-element/HTMLOListElement.d.ts +45 -0
  588. package/cjs/nodes/html-o-list-element/HTMLOListElement.d.ts.map +1 -0
  589. package/cjs/nodes/html-object-element/HTMLObjectElement.cjs +211 -0
  590. package/cjs/nodes/html-object-element/HTMLObjectElement.cjs.map +1 -0
  591. package/cjs/nodes/html-object-element/HTMLObjectElement.d.ts +131 -0
  592. package/cjs/nodes/html-object-element/HTMLObjectElement.d.ts.map +1 -0
  593. package/cjs/nodes/html-opt-group-element/HTMLOptGroupElement.cjs +1 -1
  594. package/cjs/nodes/html-opt-group-element/HTMLOptGroupElement.d.ts +1 -1
  595. package/cjs/nodes/html-option-element/HTMLOptionElement.cjs +52 -21
  596. package/cjs/nodes/html-option-element/HTMLOptionElement.cjs.map +1 -1
  597. package/cjs/nodes/html-option-element/HTMLOptionElement.d.ts +16 -4
  598. package/cjs/nodes/html-option-element/HTMLOptionElement.d.ts.map +1 -1
  599. package/cjs/nodes/html-output-element/HTMLOutputElement.cjs +188 -0
  600. package/cjs/nodes/html-output-element/HTMLOutputElement.cjs.map +1 -0
  601. package/cjs/nodes/html-output-element/HTMLOutputElement.d.ts +120 -0
  602. package/cjs/nodes/html-output-element/HTMLOutputElement.d.ts.map +1 -0
  603. package/cjs/nodes/html-paragraph-element/HTMLParagraphElement.cjs +15 -0
  604. package/cjs/nodes/html-paragraph-element/HTMLParagraphElement.cjs.map +1 -0
  605. package/cjs/nodes/html-paragraph-element/HTMLParagraphElement.d.ts +9 -0
  606. package/cjs/nodes/html-paragraph-element/HTMLParagraphElement.d.ts.map +1 -0
  607. package/cjs/nodes/html-param-element/HTMLParamElement.cjs +15 -0
  608. package/cjs/nodes/html-param-element/HTMLParamElement.cjs.map +1 -0
  609. package/cjs/nodes/html-param-element/HTMLParamElement.d.ts +9 -0
  610. package/cjs/nodes/html-param-element/HTMLParamElement.d.ts.map +1 -0
  611. package/cjs/nodes/html-picture-element/HTMLPictureElement.cjs +15 -0
  612. package/cjs/nodes/html-picture-element/HTMLPictureElement.cjs.map +1 -0
  613. package/cjs/nodes/html-picture-element/HTMLPictureElement.d.ts +9 -0
  614. package/cjs/nodes/html-picture-element/HTMLPictureElement.d.ts.map +1 -0
  615. package/cjs/nodes/html-pre-element/HTMLPreElement.cjs +15 -0
  616. package/cjs/nodes/html-pre-element/HTMLPreElement.cjs.map +1 -0
  617. package/cjs/nodes/html-pre-element/HTMLPreElement.d.ts +9 -0
  618. package/cjs/nodes/html-pre-element/HTMLPreElement.d.ts.map +1 -0
  619. package/cjs/nodes/html-progress-element/HTMLProgressElement.cjs +90 -0
  620. package/cjs/nodes/html-progress-element/HTMLProgressElement.cjs.map +1 -0
  621. package/cjs/nodes/html-progress-element/HTMLProgressElement.d.ts +47 -0
  622. package/cjs/nodes/html-progress-element/HTMLProgressElement.d.ts.map +1 -0
  623. package/cjs/nodes/html-quote-element/HTMLQuoteElement.cjs +64 -0
  624. package/cjs/nodes/html-quote-element/HTMLQuoteElement.cjs.map +1 -0
  625. package/cjs/nodes/html-quote-element/HTMLQuoteElement.d.ts +21 -0
  626. package/cjs/nodes/html-quote-element/HTMLQuoteElement.d.ts.map +1 -0
  627. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs +103 -34
  628. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs.map +1 -1
  629. package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts +7 -6
  630. package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  631. package/cjs/nodes/html-select-element/HTMLOptionsCollection.cjs +34 -47
  632. package/cjs/nodes/html-select-element/HTMLOptionsCollection.cjs.map +1 -1
  633. package/cjs/nodes/html-select-element/HTMLOptionsCollection.d.ts +6 -9
  634. package/cjs/nodes/html-select-element/HTMLOptionsCollection.d.ts.map +1 -1
  635. package/cjs/nodes/html-select-element/HTMLSelectElement.cjs +281 -89
  636. package/cjs/nodes/html-select-element/HTMLSelectElement.cjs.map +1 -1
  637. package/cjs/nodes/html-select-element/HTMLSelectElement.d.ts +9 -12
  638. package/cjs/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
  639. package/cjs/nodes/html-slot-element/HTMLSlotElement.cjs +142 -35
  640. package/cjs/nodes/html-slot-element/HTMLSlotElement.cjs.map +1 -1
  641. package/cjs/nodes/html-slot-element/HTMLSlotElement.d.ts +16 -5
  642. package/cjs/nodes/html-slot-element/HTMLSlotElement.d.ts.map +1 -1
  643. package/cjs/nodes/html-source-element/HTMLSourceElement.cjs +164 -0
  644. package/cjs/nodes/html-source-element/HTMLSourceElement.cjs.map +1 -0
  645. package/cjs/nodes/html-source-element/HTMLSourceElement.d.ts +93 -0
  646. package/cjs/nodes/html-source-element/HTMLSourceElement.d.ts.map +1 -0
  647. package/cjs/nodes/html-span-element/HTMLSpanElement.cjs +15 -0
  648. package/cjs/nodes/html-span-element/HTMLSpanElement.cjs.map +1 -0
  649. package/cjs/nodes/html-span-element/HTMLSpanElement.d.ts +9 -0
  650. package/cjs/nodes/html-span-element/HTMLSpanElement.d.ts.map +1 -0
  651. package/cjs/nodes/html-style-element/HTMLStyleElement.cjs +9 -36
  652. package/cjs/nodes/html-style-element/HTMLStyleElement.cjs.map +1 -1
  653. package/cjs/nodes/html-style-element/HTMLStyleElement.d.ts +2 -11
  654. package/cjs/nodes/html-style-element/HTMLStyleElement.d.ts.map +1 -1
  655. package/cjs/nodes/html-table-caption-element/HTMLTableCaptionElement.cjs +15 -0
  656. package/cjs/nodes/html-table-caption-element/HTMLTableCaptionElement.cjs.map +1 -0
  657. package/cjs/nodes/html-table-caption-element/HTMLTableCaptionElement.d.ts +9 -0
  658. package/cjs/nodes/html-table-caption-element/HTMLTableCaptionElement.d.ts.map +1 -0
  659. package/cjs/nodes/html-table-cell-element/HTMLTableCellElement.cjs +137 -0
  660. package/cjs/nodes/html-table-cell-element/HTMLTableCellElement.cjs.map +1 -0
  661. package/cjs/nodes/html-table-cell-element/HTMLTableCellElement.d.ts +72 -0
  662. package/cjs/nodes/html-table-cell-element/HTMLTableCellElement.d.ts.map +1 -0
  663. package/cjs/nodes/html-table-col-element/HTMLTableColElement.cjs +15 -0
  664. package/cjs/nodes/html-table-col-element/HTMLTableColElement.cjs.map +1 -0
  665. package/cjs/nodes/html-table-col-element/HTMLTableColElement.d.ts +9 -0
  666. package/cjs/nodes/html-table-col-element/HTMLTableColElement.d.ts.map +1 -0
  667. package/cjs/nodes/html-table-element/HTMLTableElement.cjs +294 -0
  668. package/cjs/nodes/html-table-element/HTMLTableElement.cjs.map +1 -0
  669. package/cjs/nodes/html-table-element/HTMLTableElement.d.ts +111 -0
  670. package/cjs/nodes/html-table-element/HTMLTableElement.d.ts.map +1 -0
  671. package/cjs/nodes/html-table-row-element/HTMLTableRowElement.cjs +135 -0
  672. package/cjs/nodes/html-table-row-element/HTMLTableRowElement.cjs.map +1 -0
  673. package/cjs/nodes/html-table-row-element/HTMLTableRowElement.d.ts +42 -0
  674. package/cjs/nodes/html-table-row-element/HTMLTableRowElement.d.ts.map +1 -0
  675. package/cjs/nodes/html-table-section-element/HTMLTableSectionElement.cjs +15 -0
  676. package/cjs/nodes/html-table-section-element/HTMLTableSectionElement.cjs.map +1 -0
  677. package/cjs/nodes/html-table-section-element/HTMLTableSectionElement.d.ts +9 -0
  678. package/cjs/nodes/html-table-section-element/HTMLTableSectionElement.d.ts.map +1 -0
  679. package/cjs/nodes/html-template-element/HTMLTemplateElement.cjs +29 -20
  680. package/cjs/nodes/html-template-element/HTMLTemplateElement.cjs.map +1 -1
  681. package/cjs/nodes/html-template-element/HTMLTemplateElement.d.ts +11 -2
  682. package/cjs/nodes/html-template-element/HTMLTemplateElement.d.ts.map +1 -1
  683. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs +55 -80
  684. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs.map +1 -1
  685. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +3 -9
  686. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
  687. package/cjs/nodes/html-time-element/HTMLTimeElement.cjs +1 -1
  688. package/cjs/nodes/html-time-element/HTMLTimeElement.d.ts +1 -1
  689. package/cjs/nodes/html-title-element/HTMLTitleElement.cjs +74 -0
  690. package/cjs/nodes/html-title-element/HTMLTitleElement.cjs.map +1 -0
  691. package/cjs/nodes/html-title-element/HTMLTitleElement.d.ts +29 -0
  692. package/cjs/nodes/html-title-element/HTMLTitleElement.d.ts.map +1 -0
  693. package/cjs/nodes/html-track-element/HTMLTrackElement.cjs +169 -0
  694. package/cjs/nodes/html-track-element/HTMLTrackElement.cjs.map +1 -0
  695. package/cjs/nodes/html-track-element/HTMLTrackElement.d.ts +83 -0
  696. package/cjs/nodes/html-track-element/HTMLTrackElement.d.ts.map +1 -0
  697. package/cjs/nodes/html-u-list-element/HTMLUListElement.cjs +15 -0
  698. package/cjs/nodes/html-u-list-element/HTMLUListElement.cjs.map +1 -0
  699. package/cjs/nodes/html-u-list-element/HTMLUListElement.d.ts +9 -0
  700. package/cjs/nodes/html-u-list-element/HTMLUListElement.d.ts.map +1 -0
  701. package/cjs/nodes/node/ICachedComputedStyleResult.cjs +3 -0
  702. package/cjs/nodes/node/ICachedComputedStyleResult.cjs.map +1 -0
  703. package/cjs/nodes/node/ICachedComputedStyleResult.d.ts +6 -0
  704. package/cjs/nodes/node/ICachedComputedStyleResult.d.ts.map +1 -0
  705. package/cjs/nodes/node/ICachedElementByIdResult.cjs +3 -0
  706. package/cjs/nodes/node/ICachedElementByIdResult.cjs.map +1 -0
  707. package/cjs/nodes/node/ICachedElementByIdResult.d.ts +6 -0
  708. package/cjs/nodes/node/ICachedElementByIdResult.d.ts.map +1 -0
  709. package/cjs/nodes/node/ICachedElementByTagNameResult.cjs +3 -0
  710. package/cjs/nodes/node/ICachedElementByTagNameResult.cjs.map +1 -0
  711. package/cjs/nodes/node/ICachedElementByTagNameResult.d.ts +6 -0
  712. package/cjs/nodes/node/ICachedElementByTagNameResult.d.ts.map +1 -0
  713. package/cjs/nodes/node/ICachedElementsByTagNameResult.cjs +3 -0
  714. package/cjs/nodes/node/ICachedElementsByTagNameResult.cjs.map +1 -0
  715. package/cjs/nodes/node/ICachedElementsByTagNameResult.d.ts +6 -0
  716. package/cjs/nodes/node/ICachedElementsByTagNameResult.d.ts.map +1 -0
  717. package/cjs/nodes/node/ICachedMatchesResult.cjs +3 -0
  718. package/cjs/nodes/node/ICachedMatchesResult.cjs.map +1 -0
  719. package/cjs/nodes/node/ICachedMatchesResult.d.ts +8 -0
  720. package/cjs/nodes/node/ICachedMatchesResult.d.ts.map +1 -0
  721. package/cjs/nodes/node/ICachedQuerySelectorAllResult.cjs +3 -0
  722. package/cjs/nodes/node/ICachedQuerySelectorAllResult.cjs.map +1 -0
  723. package/cjs/nodes/node/ICachedQuerySelectorAllResult.d.ts +7 -0
  724. package/cjs/nodes/node/ICachedQuerySelectorAllResult.d.ts.map +1 -0
  725. package/cjs/nodes/node/ICachedQuerySelectorResult.cjs +3 -0
  726. package/cjs/nodes/node/ICachedQuerySelectorResult.cjs.map +1 -0
  727. package/cjs/nodes/node/ICachedQuerySelectorResult.d.ts +6 -0
  728. package/cjs/nodes/node/ICachedQuerySelectorResult.d.ts.map +1 -0
  729. package/cjs/nodes/node/ICachedResult.cjs +3 -0
  730. package/cjs/nodes/node/ICachedResult.cjs.map +1 -0
  731. package/cjs/nodes/node/ICachedResult.d.ts +4 -0
  732. package/cjs/nodes/node/ICachedResult.d.ts.map +1 -0
  733. package/cjs/nodes/node/ICachedStyleResult.cjs +3 -0
  734. package/cjs/nodes/node/ICachedStyleResult.cjs.map +1 -0
  735. package/cjs/nodes/node/ICachedStyleResult.d.ts +6 -0
  736. package/cjs/nodes/node/ICachedStyleResult.d.ts.map +1 -0
  737. package/cjs/nodes/node/Node.cjs +468 -133
  738. package/cjs/nodes/node/Node.cjs.map +1 -1
  739. package/cjs/nodes/node/Node.d.ts +73 -17
  740. package/cjs/nodes/node/Node.d.ts.map +1 -1
  741. package/cjs/nodes/node/NodeList.cjs +186 -4
  742. package/cjs/nodes/node/NodeList.cjs.map +1 -1
  743. package/cjs/nodes/node/NodeList.d.ts +65 -2
  744. package/cjs/nodes/node/NodeList.d.ts.map +1 -1
  745. package/cjs/nodes/node/NodeUtility.cjs +23 -167
  746. package/cjs/nodes/node/NodeUtility.cjs.map +1 -1
  747. package/cjs/nodes/node/NodeUtility.d.ts +0 -33
  748. package/cjs/nodes/node/NodeUtility.d.ts.map +1 -1
  749. package/cjs/nodes/node/TNodeListListener.cjs +3 -0
  750. package/cjs/nodes/node/TNodeListListener.cjs.map +1 -0
  751. package/cjs/nodes/node/TNodeListListener.d.ts +3 -0
  752. package/cjs/nodes/node/TNodeListListener.d.ts.map +1 -0
  753. package/cjs/nodes/parent-node/ParentNodeUtility.cjs +121 -44
  754. package/cjs/nodes/parent-node/ParentNodeUtility.cjs.map +1 -1
  755. package/cjs/nodes/parent-node/ParentNodeUtility.d.ts +4 -4
  756. package/cjs/nodes/parent-node/ParentNodeUtility.d.ts.map +1 -1
  757. package/cjs/nodes/processing-instruction/ProcessingInstruction.cjs +2 -6
  758. package/cjs/nodes/processing-instruction/ProcessingInstruction.cjs.map +1 -1
  759. package/cjs/nodes/shadow-root/ShadowRoot.cjs +103 -18
  760. package/cjs/nodes/shadow-root/ShadowRoot.cjs.map +1 -1
  761. package/cjs/nodes/shadow-root/ShadowRoot.d.ts +58 -0
  762. package/cjs/nodes/shadow-root/ShadowRoot.d.ts.map +1 -1
  763. package/cjs/nodes/svg-element/DOMMatrix.cjs +2 -4
  764. package/cjs/nodes/svg-element/DOMMatrix.cjs.map +1 -1
  765. package/cjs/nodes/svg-element/SVGAngle.cjs +9 -11
  766. package/cjs/nodes/svg-element/SVGAngle.cjs.map +1 -1
  767. package/cjs/nodes/svg-element/SVGAnimatedRect.cjs +2 -4
  768. package/cjs/nodes/svg-element/SVGAnimatedRect.cjs.map +1 -1
  769. package/cjs/nodes/svg-element/SVGElement.cjs +13 -31
  770. package/cjs/nodes/svg-element/SVGElement.cjs.map +1 -1
  771. package/cjs/nodes/svg-element/SVGElement.d.ts +2 -4
  772. package/cjs/nodes/svg-element/SVGElement.d.ts.map +1 -1
  773. package/cjs/nodes/svg-element/SVGGraphicsElement.cjs +1 -4
  774. package/cjs/nodes/svg-element/SVGGraphicsElement.cjs.map +1 -1
  775. package/cjs/nodes/svg-element/SVGLength.cjs +15 -17
  776. package/cjs/nodes/svg-element/SVGLength.cjs.map +1 -1
  777. package/cjs/nodes/svg-element/SVGNumber.cjs +1 -3
  778. package/cjs/nodes/svg-element/SVGNumber.cjs.map +1 -1
  779. package/cjs/nodes/svg-element/SVGPoint.cjs +2 -4
  780. package/cjs/nodes/svg-element/SVGPoint.cjs.map +1 -1
  781. package/cjs/nodes/svg-element/SVGRect.cjs +4 -6
  782. package/cjs/nodes/svg-element/SVGRect.cjs.map +1 -1
  783. package/cjs/nodes/svg-element/SVGSVGElement.cjs +19 -22
  784. package/cjs/nodes/svg-element/SVGSVGElement.cjs.map +1 -1
  785. package/cjs/nodes/svg-element/SVGSVGElement.d.ts.map +1 -1
  786. package/cjs/nodes/svg-element/SVGTransform.cjs +9 -11
  787. package/cjs/nodes/svg-element/SVGTransform.cjs.map +1 -1
  788. package/cjs/nodes/text/Text.cjs +23 -16
  789. package/cjs/nodes/text/Text.cjs.map +1 -1
  790. package/cjs/nodes/text/Text.d.ts +9 -2
  791. package/cjs/nodes/text/Text.d.ts.map +1 -1
  792. package/cjs/permissions/PermissionStatus.cjs +2 -1
  793. package/cjs/permissions/PermissionStatus.cjs.map +1 -1
  794. package/cjs/permissions/Permissions.cjs +5 -14
  795. package/cjs/permissions/Permissions.cjs.map +1 -1
  796. package/cjs/query-selector/QuerySelector.cjs +116 -37
  797. package/cjs/query-selector/QuerySelector.cjs.map +1 -1
  798. package/cjs/query-selector/QuerySelector.d.ts +3 -0
  799. package/cjs/query-selector/QuerySelector.d.ts.map +1 -1
  800. package/cjs/query-selector/SelectorItem.cjs +65 -32
  801. package/cjs/query-selector/SelectorItem.cjs.map +1 -1
  802. package/cjs/query-selector/SelectorItem.d.ts.map +1 -1
  803. package/cjs/query-selector/SelectorParser.cjs.map +1 -1
  804. package/cjs/query-selector/SelectorParser.d.ts.map +1 -1
  805. package/cjs/range/Range.cjs +30 -42
  806. package/cjs/range/Range.cjs.map +1 -1
  807. package/cjs/range/RangeUtility.cjs +1 -1
  808. package/cjs/range/RangeUtility.cjs.map +1 -1
  809. package/cjs/screen/Screen.cjs +6 -8
  810. package/cjs/screen/Screen.cjs.map +1 -1
  811. package/cjs/selection/Selection.cjs +76 -81
  812. package/cjs/selection/Selection.cjs.map +1 -1
  813. package/cjs/storage/Storage.cjs +75 -4
  814. package/cjs/storage/Storage.cjs.map +1 -1
  815. package/cjs/storage/Storage.d.ts +4 -0
  816. package/cjs/storage/Storage.d.ts.map +1 -1
  817. package/cjs/tree-walker/NodeIterator.cjs +7 -20
  818. package/cjs/tree-walker/NodeIterator.cjs.map +1 -1
  819. package/cjs/tree-walker/TreeWalker.cjs +8 -8
  820. package/cjs/tree-walker/TreeWalker.cjs.map +1 -1
  821. package/cjs/url/URL.d.ts +0 -2
  822. package/cjs/url/URL.d.ts.map +1 -1
  823. package/cjs/validity-state/ValidityState.cjs +6 -1
  824. package/cjs/validity-state/ValidityState.cjs.map +1 -1
  825. package/cjs/validity-state/ValidityState.d.ts +3 -1
  826. package/cjs/validity-state/ValidityState.d.ts.map +1 -1
  827. package/cjs/window/BrowserWindow.cjs +590 -489
  828. package/cjs/window/BrowserWindow.cjs.map +1 -1
  829. package/cjs/window/BrowserWindow.d.ts +251 -172
  830. package/cjs/window/BrowserWindow.d.ts.map +1 -1
  831. package/cjs/window/CrossOriginBrowserWindow.cjs +78 -24
  832. package/cjs/window/CrossOriginBrowserWindow.cjs.map +1 -1
  833. package/cjs/window/CrossOriginBrowserWindow.d.ts +34 -3
  834. package/cjs/window/CrossOriginBrowserWindow.d.ts.map +1 -1
  835. package/cjs/window/DetachedWindowAPI.cjs +9 -22
  836. package/cjs/window/DetachedWindowAPI.cjs.map +1 -1
  837. package/cjs/window/GlobalWindow.cjs +60 -63
  838. package/cjs/window/GlobalWindow.cjs.map +1 -1
  839. package/cjs/window/GlobalWindow.d.ts +0 -1
  840. package/cjs/window/GlobalWindow.d.ts.map +1 -1
  841. package/cjs/window/INodeJSGlobal.d.ts +0 -2
  842. package/cjs/window/INodeJSGlobal.d.ts.map +1 -1
  843. package/cjs/window/VMGlobalPropertyScript.d.ts +0 -1
  844. package/cjs/window/VMGlobalPropertyScript.d.ts.map +1 -1
  845. package/cjs/window/Window.cjs +2 -0
  846. package/cjs/window/Window.cjs.map +1 -1
  847. package/cjs/window/Window.d.ts +0 -1
  848. package/cjs/window/Window.d.ts.map +1 -1
  849. package/cjs/window/WindowBrowserSettingsReader.cjs +7 -14
  850. package/cjs/window/WindowBrowserSettingsReader.cjs.map +1 -1
  851. package/cjs/xml-http-request/XMLHttpRequest.cjs +184 -192
  852. package/cjs/xml-http-request/XMLHttpRequest.cjs.map +1 -1
  853. package/cjs/xml-http-request/XMLHttpRequestEventTarget.cjs +7 -10
  854. package/cjs/xml-http-request/XMLHttpRequestEventTarget.cjs.map +1 -1
  855. package/cjs/xml-http-request/XMLHttpRequestResponseDataParser.d.ts +0 -1
  856. package/cjs/xml-http-request/XMLHttpRequestResponseDataParser.d.ts.map +1 -1
  857. package/cjs/xml-parser/XMLParser.cjs +57 -43
  858. package/cjs/xml-parser/XMLParser.cjs.map +1 -1
  859. package/cjs/xml-parser/XMLParser.d.ts.map +1 -1
  860. package/cjs/xml-serializer/XMLSerializer.cjs +20 -40
  861. package/cjs/xml-serializer/XMLSerializer.cjs.map +1 -1
  862. package/cjs/xml-serializer/XMLSerializer.d.ts +7 -12
  863. package/cjs/xml-serializer/XMLSerializer.d.ts.map +1 -1
  864. package/lib/ClassMethodBinder.d.ts +19 -0
  865. package/lib/ClassMethodBinder.d.ts.map +1 -0
  866. package/lib/ClassMethodBinder.js +68 -0
  867. package/lib/ClassMethodBinder.js.map +1 -0
  868. package/lib/PropertySymbol.d.ts +72 -18
  869. package/lib/PropertySymbol.d.ts.map +1 -1
  870. package/lib/PropertySymbol.js +73 -19
  871. package/lib/PropertySymbol.js.map +1 -1
  872. package/lib/async-task-manager/AsyncTaskManager.d.ts +0 -1
  873. package/lib/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
  874. package/lib/async-task-manager/AsyncTaskManager.js +8 -11
  875. package/lib/async-task-manager/AsyncTaskManager.js.map +1 -1
  876. package/lib/browser/Browser.d.ts +0 -1
  877. package/lib/browser/Browser.d.ts.map +1 -1
  878. package/lib/browser/Browser.js +3 -0
  879. package/lib/browser/Browser.js.map +1 -1
  880. package/lib/browser/BrowserContext.js +5 -4
  881. package/lib/browser/BrowserContext.js.map +1 -1
  882. package/lib/browser/BrowserFrame.d.ts +22 -2
  883. package/lib/browser/BrowserFrame.d.ts.map +1 -1
  884. package/lib/browser/BrowserFrame.js +62 -14
  885. package/lib/browser/BrowserFrame.js.map +1 -1
  886. package/lib/browser/BrowserPage.d.ts +21 -3
  887. package/lib/browser/BrowserPage.d.ts.map +1 -1
  888. package/lib/browser/BrowserPage.js +31 -2
  889. package/lib/browser/BrowserPage.js.map +1 -1
  890. package/lib/browser/DefaultBrowserPageViewport.d.ts.map +1 -1
  891. package/lib/browser/DefaultBrowserSettings.d.ts.map +1 -1
  892. package/lib/browser/detached-browser/DetachedBrowser.d.ts +0 -1
  893. package/lib/browser/detached-browser/DetachedBrowser.d.ts.map +1 -1
  894. package/lib/browser/detached-browser/DetachedBrowser.js +4 -0
  895. package/lib/browser/detached-browser/DetachedBrowser.js.map +1 -1
  896. package/lib/browser/detached-browser/DetachedBrowserContext.js +5 -3
  897. package/lib/browser/detached-browser/DetachedBrowserContext.js.map +1 -1
  898. package/lib/browser/detached-browser/DetachedBrowserFrame.d.ts +22 -2
  899. package/lib/browser/detached-browser/DetachedBrowserFrame.d.ts.map +1 -1
  900. package/lib/browser/detached-browser/DetachedBrowserFrame.js +63 -14
  901. package/lib/browser/detached-browser/DetachedBrowserFrame.js.map +1 -1
  902. package/lib/browser/detached-browser/DetachedBrowserPage.d.ts +21 -3
  903. package/lib/browser/detached-browser/DetachedBrowserPage.d.ts.map +1 -1
  904. package/lib/browser/detached-browser/DetachedBrowserPage.js +31 -2
  905. package/lib/browser/detached-browser/DetachedBrowserPage.js.map +1 -1
  906. package/lib/browser/types/IBrowser.d.ts +0 -1
  907. package/lib/browser/types/IBrowser.d.ts.map +1 -1
  908. package/lib/browser/types/IBrowserFrame.d.ts +21 -1
  909. package/lib/browser/types/IBrowserFrame.d.ts.map +1 -1
  910. package/lib/browser/types/IBrowserPage.d.ts +20 -3
  911. package/lib/browser/types/IBrowserPage.d.ts.map +1 -1
  912. package/lib/browser/utilities/BrowserFrameExceptionObserver.js +5 -8
  913. package/lib/browser/utilities/BrowserFrameExceptionObserver.js.map +1 -1
  914. package/lib/browser/utilities/BrowserFrameNavigator.d.ts +74 -2
  915. package/lib/browser/utilities/BrowserFrameNavigator.d.ts.map +1 -1
  916. package/lib/browser/utilities/BrowserFrameNavigator.js +229 -12
  917. package/lib/browser/utilities/BrowserFrameNavigator.js.map +1 -1
  918. package/lib/browser/utilities/BrowserFrameScriptEvaluator.d.ts +0 -1
  919. package/lib/browser/utilities/BrowserFrameScriptEvaluator.d.ts.map +1 -1
  920. package/lib/browser/utilities/BrowserFrameURL.d.ts +0 -1
  921. package/lib/browser/utilities/BrowserFrameURL.d.ts.map +1 -1
  922. package/lib/browser/utilities/BrowserFrameValidator.d.ts +0 -1
  923. package/lib/browser/utilities/BrowserFrameValidator.d.ts.map +1 -1
  924. package/lib/clipboard/Clipboard.js +12 -26
  925. package/lib/clipboard/Clipboard.js.map +1 -1
  926. package/lib/clipboard/ClipboardItem.js +7 -21
  927. package/lib/clipboard/ClipboardItem.js.map +1 -1
  928. package/lib/config/HTMLElementConfig.d.ts.map +1 -1
  929. package/lib/config/HTMLElementConfig.js +52 -70
  930. package/lib/config/HTMLElementConfig.js.map +1 -1
  931. package/lib/config/IHTMLElementTagNameMap.d.ts +104 -66
  932. package/lib/config/IHTMLElementTagNameMap.d.ts.map +1 -1
  933. package/lib/console/VirtualConsole.d.ts +0 -1
  934. package/lib/console/VirtualConsole.d.ts.map +1 -1
  935. package/lib/console/VirtualConsole.js +59 -72
  936. package/lib/console/VirtualConsole.js.map +1 -1
  937. package/lib/console/VirtualConsolePrinter.js +14 -30
  938. package/lib/console/VirtualConsolePrinter.js.map +1 -1
  939. package/lib/cookie/CookieContainer.js +8 -18
  940. package/lib/cookie/CookieContainer.js.map +1 -1
  941. package/lib/cookie/ICookie.d.ts +0 -1
  942. package/lib/cookie/ICookie.d.ts.map +1 -1
  943. package/lib/css/CSSRule.js +18 -21
  944. package/lib/css/CSSRule.js.map +1 -1
  945. package/lib/css/CSSStyleSheet.js +13 -22
  946. package/lib/css/CSSStyleSheet.js.map +1 -1
  947. package/lib/css/CSSUnitValue.js +2 -2
  948. package/lib/css/CSSUnitValue.js.map +1 -1
  949. package/lib/css/MediaList.js +1 -3
  950. package/lib/css/MediaList.js.map +1 -1
  951. package/lib/css/declaration/AbstractCSSStyleDeclaration.d.ts.map +1 -1
  952. package/lib/css/declaration/AbstractCSSStyleDeclaration.js +43 -82
  953. package/lib/css/declaration/AbstractCSSStyleDeclaration.js.map +1 -1
  954. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts +0 -1
  955. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
  956. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js +27 -19
  957. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js.map +1 -1
  958. package/lib/css/declaration/property-manager/CSSStyleDeclarationPropertyManager.js +2 -2
  959. package/lib/css/declaration/property-manager/CSSStyleDeclarationPropertyManager.js.map +1 -1
  960. package/lib/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.d.ts.map +1 -1
  961. package/lib/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.js +52 -39
  962. package/lib/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.js.map +1 -1
  963. package/lib/css/declaration/property-manager/CSSStyleDeclarationValueParser.d.ts.map +1 -1
  964. package/lib/css/declaration/property-manager/CSSStyleDeclarationValueParser.js +23 -9
  965. package/lib/css/declaration/property-manager/CSSStyleDeclarationValueParser.js.map +1 -1
  966. package/lib/css/rules/CSSContainerRule.js +3 -6
  967. package/lib/css/rules/CSSContainerRule.js.map +1 -1
  968. package/lib/css/rules/CSSFontFaceRule.js +9 -26
  969. package/lib/css/rules/CSSFontFaceRule.js.map +1 -1
  970. package/lib/css/rules/CSSKeyframeRule.js +10 -26
  971. package/lib/css/rules/CSSKeyframeRule.js.map +1 -1
  972. package/lib/css/rules/CSSKeyframesRule.js +3 -6
  973. package/lib/css/rules/CSSKeyframesRule.js.map +1 -1
  974. package/lib/css/rules/CSSMediaRule.js +3 -6
  975. package/lib/css/rules/CSSMediaRule.js.map +1 -1
  976. package/lib/css/rules/CSSStyleRule.js +11 -28
  977. package/lib/css/rules/CSSStyleRule.js.map +1 -1
  978. package/lib/css/rules/CSSSupportsRule.js +3 -6
  979. package/lib/css/rules/CSSSupportsRule.js.map +1 -1
  980. package/lib/custom-element/CustomElementRegistry.js +38 -48
  981. package/lib/custom-element/CustomElementRegistry.js.map +1 -1
  982. package/lib/dom-implementation/DOMImplementation.d.ts.map +1 -1
  983. package/lib/dom-implementation/DOMImplementation.js +6 -20
  984. package/lib/dom-implementation/DOMImplementation.js.map +1 -1
  985. package/lib/dom-parser/DOMParser.d.ts.map +1 -1
  986. package/lib/dom-parser/DOMParser.js +34 -41
  987. package/lib/dom-parser/DOMParser.js.map +1 -1
  988. package/lib/event/DataTransfer.js +3 -5
  989. package/lib/event/DataTransfer.js.map +1 -1
  990. package/lib/event/DataTransferItem.js +7 -19
  991. package/lib/event/DataTransferItem.js.map +1 -1
  992. package/lib/event/Event.js +18 -17
  993. package/lib/event/Event.js.map +1 -1
  994. package/lib/event/EventTarget.js +24 -29
  995. package/lib/event/EventTarget.js.map +1 -1
  996. package/lib/event/Touch.js +12 -0
  997. package/lib/event/Touch.js.map +1 -1
  998. package/lib/event/UIEvent.js +11 -10
  999. package/lib/event/UIEvent.js.map +1 -1
  1000. package/lib/event/events/AnimationEvent.js +3 -0
  1001. package/lib/event/events/AnimationEvent.js.map +1 -1
  1002. package/lib/event/events/ClipboardEvent.js +1 -0
  1003. package/lib/event/events/ClipboardEvent.js.map +1 -1
  1004. package/lib/event/events/CustomEvent.js +2 -0
  1005. package/lib/event/events/CustomEvent.js.map +1 -1
  1006. package/lib/event/events/ErrorEvent.js +5 -0
  1007. package/lib/event/events/ErrorEvent.js.map +1 -1
  1008. package/lib/event/events/FocusEvent.js +1 -0
  1009. package/lib/event/events/FocusEvent.js.map +1 -1
  1010. package/lib/event/events/HashChangeEvent.js +2 -0
  1011. package/lib/event/events/HashChangeEvent.js.map +1 -1
  1012. package/lib/event/events/IMediaQueryListEventInit.d.ts +6 -0
  1013. package/lib/event/events/IMediaQueryListEventInit.d.ts.map +1 -0
  1014. package/lib/event/events/IMediaQueryListEventInit.js +2 -0
  1015. package/lib/event/events/IMediaQueryListEventInit.js.map +1 -0
  1016. package/lib/event/events/InputEvent.js +4 -0
  1017. package/lib/event/events/InputEvent.js.map +1 -1
  1018. package/lib/event/events/KeyboardEvent.js +18 -6
  1019. package/lib/event/events/KeyboardEvent.js.map +1 -1
  1020. package/lib/event/events/MediaQueryListEvent.js +2 -0
  1021. package/lib/event/events/MediaQueryListEvent.js.map +1 -1
  1022. package/lib/event/events/MediaStreamTrackEvent.d.ts +17 -0
  1023. package/lib/event/events/MediaStreamTrackEvent.d.ts.map +1 -0
  1024. package/lib/event/events/MediaStreamTrackEvent.js +18 -0
  1025. package/lib/event/events/MediaStreamTrackEvent.js.map +1 -0
  1026. package/lib/event/events/MessageEvent.js +5 -0
  1027. package/lib/event/events/MessageEvent.js.map +1 -1
  1028. package/lib/event/events/MouseEvent.js +16 -0
  1029. package/lib/event/events/MouseEvent.js.map +1 -1
  1030. package/lib/event/events/PointerEvent.js +16 -2
  1031. package/lib/event/events/PointerEvent.js.map +1 -1
  1032. package/lib/event/events/ProgressEvent.js +3 -0
  1033. package/lib/event/events/ProgressEvent.js.map +1 -1
  1034. package/lib/event/events/StorageEvent.js +5 -0
  1035. package/lib/event/events/StorageEvent.js.map +1 -1
  1036. package/lib/event/events/SubmitEvent.js +1 -0
  1037. package/lib/event/events/SubmitEvent.js.map +1 -1
  1038. package/lib/event/events/TouchEvent.js +7 -0
  1039. package/lib/event/events/TouchEvent.js.map +1 -1
  1040. package/lib/event/events/WheelEvent.js +8 -5
  1041. package/lib/event/events/WheelEvent.js.map +1 -1
  1042. package/lib/fetch/AbortController.js +1 -1
  1043. package/lib/fetch/AbortController.js.map +1 -1
  1044. package/lib/fetch/AbortSignal.js +3 -6
  1045. package/lib/fetch/AbortSignal.js.map +1 -1
  1046. package/lib/fetch/Fetch.js +58 -69
  1047. package/lib/fetch/Fetch.js.map +1 -1
  1048. package/lib/fetch/Headers.js +2 -3
  1049. package/lib/fetch/Headers.js.map +1 -1
  1050. package/lib/fetch/Request.d.ts +0 -2
  1051. package/lib/fetch/Request.d.ts.map +1 -1
  1052. package/lib/fetch/Request.js +32 -34
  1053. package/lib/fetch/Request.js.map +1 -1
  1054. package/lib/fetch/ResourceFetch.js +6 -19
  1055. package/lib/fetch/ResourceFetch.js.map +1 -1
  1056. package/lib/fetch/Response.d.ts +0 -2
  1057. package/lib/fetch/Response.d.ts.map +1 -1
  1058. package/lib/fetch/Response.js +46 -49
  1059. package/lib/fetch/Response.js.map +1 -1
  1060. package/lib/fetch/SyncFetch.js +33 -44
  1061. package/lib/fetch/SyncFetch.js.map +1 -1
  1062. package/lib/fetch/cache/preflight/PreflightResponseCache.js +7 -23
  1063. package/lib/fetch/cache/preflight/PreflightResponseCache.js.map +1 -1
  1064. package/lib/fetch/cache/response/ICachableResponse.d.ts +0 -1
  1065. package/lib/fetch/cache/response/ICachableResponse.d.ts.map +1 -1
  1066. package/lib/fetch/cache/response/ICachedResponse.d.ts +0 -1
  1067. package/lib/fetch/cache/response/ICachedResponse.d.ts.map +1 -1
  1068. package/lib/fetch/cache/response/ResponseCache.js +21 -37
  1069. package/lib/fetch/cache/response/ResponseCache.js.map +1 -1
  1070. package/lib/fetch/data-uri/DataURIParser.d.ts +0 -1
  1071. package/lib/fetch/data-uri/DataURIParser.d.ts.map +1 -1
  1072. package/lib/fetch/multipart/MultipartFormDataParser.d.ts +0 -2
  1073. package/lib/fetch/multipart/MultipartFormDataParser.d.ts.map +1 -1
  1074. package/lib/fetch/multipart/MultipartReader.js +10 -9
  1075. package/lib/fetch/multipart/MultipartReader.js.map +1 -1
  1076. package/lib/fetch/types/IRequestBody.d.ts +0 -2
  1077. package/lib/fetch/types/IRequestBody.d.ts.map +1 -1
  1078. package/lib/fetch/types/IResponseBody.d.ts +0 -2
  1079. package/lib/fetch/types/IResponseBody.d.ts.map +1 -1
  1080. package/lib/fetch/types/ISyncResponse.d.ts +0 -1
  1081. package/lib/fetch/types/ISyncResponse.d.ts.map +1 -1
  1082. package/lib/fetch/utilities/FetchBodyUtility.d.ts +0 -3
  1083. package/lib/fetch/utilities/FetchBodyUtility.d.ts.map +1 -1
  1084. package/lib/fetch/utilities/FetchCORSUtility.d.ts +0 -1
  1085. package/lib/fetch/utilities/FetchCORSUtility.d.ts.map +1 -1
  1086. package/lib/fetch/utilities/FetchResponseHeaderUtility.d.ts +0 -1
  1087. package/lib/fetch/utilities/FetchResponseHeaderUtility.d.ts.map +1 -1
  1088. package/lib/fetch/utilities/SyncFetchScriptBuilder.d.ts +0 -2
  1089. package/lib/fetch/utilities/SyncFetchScriptBuilder.d.ts.map +1 -1
  1090. package/lib/file/Blob.d.ts +0 -1
  1091. package/lib/file/Blob.d.ts.map +1 -1
  1092. package/lib/file/Blob.js +3 -6
  1093. package/lib/file/Blob.js.map +1 -1
  1094. package/lib/file/File.d.ts +0 -1
  1095. package/lib/file/File.d.ts.map +1 -1
  1096. package/lib/file/File.js +2 -2
  1097. package/lib/file/File.js.map +1 -1
  1098. package/lib/file/FileReader.d.ts +0 -1
  1099. package/lib/file/FileReader.d.ts.map +1 -1
  1100. package/lib/file/FileReader.js +78 -85
  1101. package/lib/file/FileReader.js.map +1 -1
  1102. package/lib/form-data/FormData.d.ts.map +1 -1
  1103. package/lib/form-data/FormData.js +81 -73
  1104. package/lib/form-data/FormData.js.map +1 -1
  1105. package/lib/history/History.d.ts +31 -11
  1106. package/lib/history/History.d.ts.map +1 -1
  1107. package/lib/history/History.js +120 -37
  1108. package/lib/history/History.js.map +1 -1
  1109. package/lib/history/IHistoryItem.d.ts +12 -0
  1110. package/lib/history/IHistoryItem.d.ts.map +1 -0
  1111. package/lib/history/IHistoryItem.js +2 -0
  1112. package/lib/history/IHistoryItem.js.map +1 -0
  1113. package/lib/index.d.ts +53 -2
  1114. package/lib/index.d.ts.map +1 -1
  1115. package/lib/index.js +53 -1
  1116. package/lib/index.js.map +1 -1
  1117. package/lib/intersection-observer/IIntersectionObserverInit.d.ts +16 -0
  1118. package/lib/intersection-observer/IIntersectionObserverInit.d.ts.map +1 -0
  1119. package/lib/intersection-observer/IIntersectionObserverInit.js +2 -0
  1120. package/lib/intersection-observer/IIntersectionObserverInit.js.map +1 -0
  1121. package/lib/intersection-observer/IntersectionObserver.d.ts +41 -0
  1122. package/lib/intersection-observer/IntersectionObserver.d.ts.map +1 -0
  1123. package/lib/intersection-observer/IntersectionObserver.js +53 -0
  1124. package/lib/intersection-observer/IntersectionObserver.js.map +1 -0
  1125. package/lib/intersection-observer/IntersectionObserverEntry.d.ts +23 -0
  1126. package/lib/intersection-observer/IntersectionObserverEntry.d.ts.map +1 -0
  1127. package/lib/intersection-observer/IntersectionObserverEntry.js +23 -0
  1128. package/lib/intersection-observer/IntersectionObserverEntry.js.map +1 -0
  1129. package/lib/location/Location.d.ts.map +1 -1
  1130. package/lib/location/Location.js +46 -57
  1131. package/lib/location/Location.js.map +1 -1
  1132. package/lib/match-media/MediaQueryItem.js +6 -1
  1133. package/lib/match-media/MediaQueryItem.js.map +1 -1
  1134. package/lib/match-media/MediaQueryList.js +27 -39
  1135. package/lib/match-media/MediaQueryList.js.map +1 -1
  1136. package/lib/mutation-observer/IMutationListener.d.ts +7 -0
  1137. package/lib/mutation-observer/IMutationListener.d.ts.map +1 -0
  1138. package/lib/mutation-observer/IMutationListener.js +2 -0
  1139. package/lib/mutation-observer/IMutationListener.js.map +1 -0
  1140. package/lib/mutation-observer/MutationObserver.d.ts.map +1 -1
  1141. package/lib/mutation-observer/MutationObserver.js +26 -38
  1142. package/lib/mutation-observer/MutationObserver.js.map +1 -1
  1143. package/lib/mutation-observer/MutationObserverListener.d.ts +47 -0
  1144. package/lib/mutation-observer/MutationObserverListener.d.ts.map +1 -0
  1145. package/lib/mutation-observer/MutationObserverListener.js +83 -0
  1146. package/lib/mutation-observer/MutationObserverListener.js.map +1 -0
  1147. package/lib/mutation-observer/MutationRecord.js +9 -9
  1148. package/lib/mutation-observer/MutationRecord.js.map +1 -1
  1149. package/lib/navigator/MimeType.js +4 -0
  1150. package/lib/navigator/MimeType.js.map +1 -1
  1151. package/lib/navigator/MimeTypeArray.js +1 -0
  1152. package/lib/navigator/MimeTypeArray.js.map +1 -1
  1153. package/lib/navigator/Navigator.js +12 -26
  1154. package/lib/navigator/Navigator.js.map +1 -1
  1155. package/lib/navigator/Plugin.js +4 -1
  1156. package/lib/navigator/Plugin.js.map +1 -1
  1157. package/lib/navigator/PluginArray.js +1 -0
  1158. package/lib/navigator/PluginArray.js.map +1 -1
  1159. package/lib/nodes/NodeFactory.d.ts +2 -1
  1160. package/lib/nodes/NodeFactory.d.ts.map +1 -1
  1161. package/lib/nodes/NodeFactory.js +6 -4
  1162. package/lib/nodes/NodeFactory.js.map +1 -1
  1163. package/lib/nodes/attr/Attr.d.ts +7 -0
  1164. package/lib/nodes/attr/Attr.d.ts.map +1 -1
  1165. package/lib/nodes/attr/Attr.js +24 -15
  1166. package/lib/nodes/attr/Attr.js.map +1 -1
  1167. package/lib/nodes/character-data/CharacterData.d.ts.map +1 -1
  1168. package/lib/nodes/character-data/CharacterData.js +8 -21
  1169. package/lib/nodes/character-data/CharacterData.js.map +1 -1
  1170. package/lib/nodes/child-node/ChildNodeUtility.js +10 -10
  1171. package/lib/nodes/child-node/ChildNodeUtility.js.map +1 -1
  1172. package/lib/nodes/comment/Comment.d.ts.map +1 -1
  1173. package/lib/nodes/comment/Comment.js +2 -6
  1174. package/lib/nodes/comment/Comment.js.map +1 -1
  1175. package/lib/nodes/document/Document.d.ts +16 -22
  1176. package/lib/nodes/document/Document.d.ts.map +1 -1
  1177. package/lib/nodes/document/Document.js +212 -239
  1178. package/lib/nodes/document/Document.js.map +1 -1
  1179. package/lib/nodes/document/DocumentReadyStateManager.js +5 -5
  1180. package/lib/nodes/document/DocumentReadyStateManager.js.map +1 -1
  1181. package/lib/nodes/document-fragment/DocumentFragment.d.ts +3 -19
  1182. package/lib/nodes/document-fragment/DocumentFragment.d.ts.map +1 -1
  1183. package/lib/nodes/document-fragment/DocumentFragment.js +15 -49
  1184. package/lib/nodes/document-fragment/DocumentFragment.js.map +1 -1
  1185. package/lib/nodes/document-type/DocumentType.d.ts.map +1 -1
  1186. package/lib/nodes/document-type/DocumentType.js +5 -9
  1187. package/lib/nodes/document-type/DocumentType.js.map +1 -1
  1188. package/lib/nodes/element/DOMRectReadOnly.js +5 -8
  1189. package/lib/nodes/element/DOMRectReadOnly.js.map +1 -1
  1190. package/lib/nodes/element/DOMStringMap.d.ts +17 -0
  1191. package/lib/nodes/element/DOMStringMap.d.ts.map +1 -0
  1192. package/lib/nodes/element/DOMStringMap.js +70 -0
  1193. package/lib/nodes/element/DOMStringMap.js.map +1 -0
  1194. package/lib/nodes/element/DOMStringMapUtility.d.ts +23 -0
  1195. package/lib/nodes/element/DOMStringMapUtility.d.ts.map +1 -0
  1196. package/lib/nodes/element/DOMStringMapUtility.js +33 -0
  1197. package/lib/nodes/element/DOMStringMapUtility.js.map +1 -0
  1198. package/lib/nodes/element/DOMTokenList.d.ts +118 -0
  1199. package/lib/nodes/element/DOMTokenList.d.ts.map +1 -0
  1200. package/lib/nodes/element/DOMTokenList.js +285 -0
  1201. package/lib/nodes/element/DOMTokenList.js.map +1 -0
  1202. package/lib/nodes/element/Element.d.ts +68 -35
  1203. package/lib/nodes/element/Element.d.ts.map +1 -1
  1204. package/lib/nodes/element/Element.js +419 -152
  1205. package/lib/nodes/element/Element.js.map +1 -1
  1206. package/lib/nodes/element/HTMLCollection.d.ts +44 -23
  1207. package/lib/nodes/element/HTMLCollection.d.ts.map +1 -1
  1208. package/lib/nodes/element/HTMLCollection.js +177 -56
  1209. package/lib/nodes/element/HTMLCollection.js.map +1 -1
  1210. package/lib/nodes/element/NamedNodeMap.d.ts +127 -0
  1211. package/lib/nodes/element/NamedNodeMap.d.ts.map +1 -0
  1212. package/lib/nodes/element/NamedNodeMap.js +212 -0
  1213. package/lib/nodes/element/NamedNodeMap.js.map +1 -0
  1214. package/lib/nodes/element/NamedNodeMapProxyFactory.d.ts +15 -0
  1215. package/lib/nodes/element/NamedNodeMapProxyFactory.d.ts.map +1 -0
  1216. package/lib/nodes/element/NamedNodeMapProxyFactory.js +112 -0
  1217. package/lib/nodes/element/NamedNodeMapProxyFactory.js.map +1 -0
  1218. package/lib/nodes/element/THTMLCollectionListener.d.ts +8 -0
  1219. package/lib/nodes/element/THTMLCollectionListener.d.ts.map +1 -0
  1220. package/lib/nodes/element/THTMLCollectionListener.js +2 -0
  1221. package/lib/nodes/element/THTMLCollectionListener.js.map +1 -0
  1222. package/lib/nodes/element/TNamedNodeMapListener.d.ts +4 -0
  1223. package/lib/nodes/element/TNamedNodeMapListener.d.ts.map +1 -0
  1224. package/lib/nodes/element/TNamedNodeMapListener.js +2 -0
  1225. package/lib/nodes/element/TNamedNodeMapListener.js.map +1 -0
  1226. package/lib/nodes/html-anchor-element/HTMLAnchorElement.d.ts +5 -6
  1227. package/lib/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
  1228. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js +34 -171
  1229. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js.map +1 -1
  1230. package/lib/nodes/html-area-element/HTMLAreaElement.d.ts +251 -0
  1231. package/lib/nodes/html-area-element/HTMLAreaElement.d.ts.map +1 -0
  1232. package/lib/nodes/html-area-element/HTMLAreaElement.js +349 -0
  1233. package/lib/nodes/html-area-element/HTMLAreaElement.js.map +1 -0
  1234. package/lib/nodes/html-base-element/HTMLBaseElement.d.ts.map +1 -1
  1235. package/lib/nodes/html-base-element/HTMLBaseElement.js +9 -4
  1236. package/lib/nodes/html-base-element/HTMLBaseElement.js.map +1 -1
  1237. package/lib/nodes/html-body-element/HTMLBodyElement.d.ts +28 -0
  1238. package/lib/nodes/html-body-element/HTMLBodyElement.d.ts.map +1 -0
  1239. package/lib/nodes/html-body-element/HTMLBodyElement.js +28 -0
  1240. package/lib/nodes/html-body-element/HTMLBodyElement.js.map +1 -0
  1241. package/lib/nodes/html-br-element/HTMLBRElement.d.ts +9 -0
  1242. package/lib/nodes/html-br-element/HTMLBRElement.d.ts.map +1 -0
  1243. package/lib/nodes/html-br-element/HTMLBRElement.js +9 -0
  1244. package/lib/nodes/html-br-element/HTMLBRElement.js.map +1 -0
  1245. package/lib/nodes/html-button-element/HTMLButtonElement.d.ts +2 -8
  1246. package/lib/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
  1247. package/lib/nodes/html-button-element/HTMLButtonElement.js +20 -43
  1248. package/lib/nodes/html-button-element/HTMLButtonElement.js.map +1 -1
  1249. package/lib/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.d.ts +35 -0
  1250. package/lib/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.d.ts.map +1 -0
  1251. package/lib/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.js +45 -0
  1252. package/lib/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.js.map +1 -0
  1253. package/lib/nodes/html-canvas-element/HTMLCanvasElement.d.ts +81 -0
  1254. package/lib/nodes/html-canvas-element/HTMLCanvasElement.d.ts.map +1 -0
  1255. package/lib/nodes/html-canvas-element/HTMLCanvasElement.js +115 -0
  1256. package/lib/nodes/html-canvas-element/HTMLCanvasElement.js.map +1 -0
  1257. package/lib/nodes/html-canvas-element/ImageBitmap.d.ts +21 -0
  1258. package/lib/nodes/html-canvas-element/ImageBitmap.d.ts.map +1 -0
  1259. package/lib/nodes/html-canvas-element/ImageBitmap.js +26 -0
  1260. package/lib/nodes/html-canvas-element/ImageBitmap.js.map +1 -0
  1261. package/lib/nodes/html-canvas-element/OffscreenCanvas.d.ts +47 -0
  1262. package/lib/nodes/html-canvas-element/OffscreenCanvas.d.ts.map +1 -0
  1263. package/lib/nodes/html-canvas-element/OffscreenCanvas.js +51 -0
  1264. package/lib/nodes/html-canvas-element/OffscreenCanvas.js.map +1 -0
  1265. package/lib/nodes/html-d-list-element/HTMLDListElement.d.ts +9 -0
  1266. package/lib/nodes/html-d-list-element/HTMLDListElement.d.ts.map +1 -0
  1267. package/lib/nodes/html-d-list-element/HTMLDListElement.js +9 -0
  1268. package/lib/nodes/html-d-list-element/HTMLDListElement.js.map +1 -0
  1269. package/lib/nodes/html-data-element/HTMLDataElement.d.ts +21 -0
  1270. package/lib/nodes/html-data-element/HTMLDataElement.d.ts.map +1 -0
  1271. package/lib/nodes/html-data-element/HTMLDataElement.js +25 -0
  1272. package/lib/nodes/html-data-element/HTMLDataElement.js.map +1 -0
  1273. package/lib/nodes/html-data-list-element/HTMLDataListElement.d.ts +19 -0
  1274. package/lib/nodes/html-data-list-element/HTMLDataListElement.d.ts.map +1 -0
  1275. package/lib/nodes/html-data-list-element/HTMLDataListElement.js +23 -0
  1276. package/lib/nodes/html-data-list-element/HTMLDataListElement.js.map +1 -0
  1277. package/lib/nodes/html-details-element/HTMLDetailsElement.d.ts +31 -0
  1278. package/lib/nodes/html-details-element/HTMLDetailsElement.d.ts.map +1 -0
  1279. package/lib/nodes/html-details-element/HTMLDetailsElement.js +52 -0
  1280. package/lib/nodes/html-details-element/HTMLDetailsElement.js.map +1 -0
  1281. package/lib/nodes/html-dialog-element/HTMLDialogElement.d.ts +1 -2
  1282. package/lib/nodes/html-dialog-element/HTMLDialogElement.d.ts.map +1 -1
  1283. package/lib/nodes/html-dialog-element/HTMLDialogElement.js +7 -14
  1284. package/lib/nodes/html-dialog-element/HTMLDialogElement.js.map +1 -1
  1285. package/lib/nodes/html-div-element/HTMLDivElement.d.ts +9 -0
  1286. package/lib/nodes/html-div-element/HTMLDivElement.d.ts.map +1 -0
  1287. package/lib/nodes/html-div-element/HTMLDivElement.js +9 -0
  1288. package/lib/nodes/html-div-element/HTMLDivElement.js.map +1 -0
  1289. package/lib/nodes/html-element/HTMLElement.d.ts +10 -10
  1290. package/lib/nodes/html-element/HTMLElement.d.ts.map +1 -1
  1291. package/lib/nodes/html-element/HTMLElement.js +104 -116
  1292. package/lib/nodes/html-element/HTMLElement.js.map +1 -1
  1293. package/lib/nodes/html-element/HTMLElementUtility.d.ts.map +1 -1
  1294. package/lib/nodes/html-element/HTMLElementUtility.js +4 -2
  1295. package/lib/nodes/html-element/HTMLElementUtility.js.map +1 -1
  1296. package/lib/nodes/html-embed-element/HTMLEmbedElement.d.ts +57 -0
  1297. package/lib/nodes/html-embed-element/HTMLEmbedElement.d.ts.map +1 -0
  1298. package/lib/nodes/html-embed-element/HTMLEmbedElement.js +83 -0
  1299. package/lib/nodes/html-embed-element/HTMLEmbedElement.js.map +1 -0
  1300. package/lib/nodes/html-field-set-element/HTMLFieldSetElement.d.ts +99 -0
  1301. package/lib/nodes/html-field-set-element/HTMLFieldSetElement.d.ts.map +1 -0
  1302. package/lib/nodes/html-field-set-element/HTMLFieldSetElement.js +132 -0
  1303. package/lib/nodes/html-field-set-element/HTMLFieldSetElement.js.map +1 -0
  1304. package/lib/nodes/html-form-element/HTMLFormControlsCollection.d.ts +11 -37
  1305. package/lib/nodes/html-form-element/HTMLFormControlsCollection.d.ts.map +1 -1
  1306. package/lib/nodes/html-form-element/HTMLFormControlsCollection.js +10 -81
  1307. package/lib/nodes/html-form-element/HTMLFormControlsCollection.js.map +1 -1
  1308. package/lib/nodes/html-form-element/HTMLFormElement.d.ts +12 -23
  1309. package/lib/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
  1310. package/lib/nodes/html-form-element/HTMLFormElement.js +251 -147
  1311. package/lib/nodes/html-form-element/HTMLFormElement.js.map +1 -1
  1312. package/lib/nodes/html-form-element/RadioNodeList.d.ts +2 -5
  1313. package/lib/nodes/html-form-element/RadioNodeList.d.ts.map +1 -1
  1314. package/lib/nodes/html-form-element/RadioNodeList.js +2 -1
  1315. package/lib/nodes/html-form-element/RadioNodeList.js.map +1 -1
  1316. package/lib/nodes/html-form-element/THTMLFormControlElement.d.ts +10 -0
  1317. package/lib/nodes/html-form-element/THTMLFormControlElement.d.ts.map +1 -0
  1318. package/lib/nodes/html-form-element/THTMLFormControlElement.js +2 -0
  1319. package/lib/nodes/html-form-element/THTMLFormControlElement.js.map +1 -0
  1320. package/lib/nodes/html-head-element/HTMLHeadElement.d.ts +9 -0
  1321. package/lib/nodes/html-head-element/HTMLHeadElement.d.ts.map +1 -0
  1322. package/lib/nodes/html-head-element/HTMLHeadElement.js +9 -0
  1323. package/lib/nodes/html-head-element/HTMLHeadElement.js.map +1 -0
  1324. package/lib/nodes/html-heading-element/HTMLHeadingElement.d.ts +9 -0
  1325. package/lib/nodes/html-heading-element/HTMLHeadingElement.d.ts.map +1 -0
  1326. package/lib/nodes/html-heading-element/HTMLHeadingElement.js +9 -0
  1327. package/lib/nodes/html-heading-element/HTMLHeadingElement.js.map +1 -0
  1328. package/lib/nodes/html-hr-element/HTMLHRElement.d.ts +9 -0
  1329. package/lib/nodes/html-hr-element/HTMLHRElement.d.ts.map +1 -0
  1330. package/lib/nodes/html-hr-element/HTMLHRElement.js +9 -0
  1331. package/lib/nodes/html-hr-element/HTMLHRElement.js.map +1 -0
  1332. package/lib/nodes/html-html-element/HTMLHtmlElement.d.ts +9 -0
  1333. package/lib/nodes/html-html-element/HTMLHtmlElement.d.ts.map +1 -0
  1334. package/lib/nodes/html-html-element/HTMLHtmlElement.js +9 -0
  1335. package/lib/nodes/html-html-element/HTMLHtmlElement.js.map +1 -0
  1336. package/lib/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.d.ts +142 -0
  1337. package/lib/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.d.ts.map +1 -0
  1338. package/lib/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.js +322 -0
  1339. package/lib/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.js.map +1 -0
  1340. package/lib/nodes/html-hyperlink-element/IHTMLHyperlinkElement.d.ts +20 -0
  1341. package/lib/nodes/html-hyperlink-element/IHTMLHyperlinkElement.d.ts.map +1 -0
  1342. package/lib/nodes/html-hyperlink-element/IHTMLHyperlinkElement.js +2 -0
  1343. package/lib/nodes/html-hyperlink-element/IHTMLHyperlinkElement.js.map +1 -0
  1344. package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts +18 -8
  1345. package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
  1346. package/lib/nodes/html-iframe-element/HTMLIFrameElement.js +175 -45
  1347. package/lib/nodes/html-iframe-element/HTMLIFrameElement.js.map +1 -1
  1348. package/lib/nodes/html-image-element/HTMLImageElement.d.ts.map +1 -1
  1349. package/lib/nodes/html-image-element/HTMLImageElement.js +8 -12
  1350. package/lib/nodes/html-image-element/HTMLImageElement.js.map +1 -1
  1351. package/lib/nodes/html-input-element/HTMLInputElement.d.ts +10 -9
  1352. package/lib/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
  1353. package/lib/nodes/html-input-element/HTMLInputElement.js +103 -117
  1354. package/lib/nodes/html-input-element/HTMLInputElement.js.map +1 -1
  1355. package/lib/nodes/html-input-element/HTMLInputElementValueSanitizer.js +17 -18
  1356. package/lib/nodes/html-input-element/HTMLInputElementValueSanitizer.js.map +1 -1
  1357. package/lib/nodes/html-label-element/HTMLLabelElement.d.ts +2 -2
  1358. package/lib/nodes/html-label-element/HTMLLabelElement.d.ts.map +1 -1
  1359. package/lib/nodes/html-label-element/HTMLLabelElement.js +22 -5
  1360. package/lib/nodes/html-label-element/HTMLLabelElement.js.map +1 -1
  1361. package/lib/nodes/html-label-element/HTMLLabelElementUtility.d.ts.map +1 -1
  1362. package/lib/nodes/html-label-element/HTMLLabelElementUtility.js +6 -5
  1363. package/lib/nodes/html-label-element/HTMLLabelElementUtility.js.map +1 -1
  1364. package/lib/nodes/html-legend-element/HTMLLegendElement.d.ts +16 -0
  1365. package/lib/nodes/html-legend-element/HTMLLegendElement.d.ts.map +1 -0
  1366. package/lib/nodes/html-legend-element/HTMLLegendElement.js +25 -0
  1367. package/lib/nodes/html-legend-element/HTMLLegendElement.js.map +1 -0
  1368. package/lib/nodes/html-li-element/HTMLLIElement.d.ts +21 -0
  1369. package/lib/nodes/html-li-element/HTMLLIElement.d.ts.map +1 -0
  1370. package/lib/nodes/html-li-element/HTMLLIElement.js +30 -0
  1371. package/lib/nodes/html-li-element/HTMLLIElement.js.map +1 -0
  1372. package/lib/nodes/html-link-element/HTMLLinkElement.d.ts +9 -8
  1373. package/lib/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
  1374. package/lib/nodes/html-link-element/HTMLLinkElement.js +98 -35
  1375. package/lib/nodes/html-link-element/HTMLLinkElement.js.map +1 -1
  1376. package/lib/nodes/html-map-element/HTMLMapElement.d.ts +31 -0
  1377. package/lib/nodes/html-map-element/HTMLMapElement.d.ts.map +1 -0
  1378. package/lib/nodes/html-map-element/HTMLMapElement.js +39 -0
  1379. package/lib/nodes/html-map-element/HTMLMapElement.js.map +1 -0
  1380. package/lib/nodes/html-media-element/HTMLMediaElement.d.ts +117 -39
  1381. package/lib/nodes/html-media-element/HTMLMediaElement.d.ts.map +1 -1
  1382. package/lib/nodes/html-media-element/HTMLMediaElement.js +245 -104
  1383. package/lib/nodes/html-media-element/HTMLMediaElement.js.map +1 -1
  1384. package/lib/nodes/html-media-element/IMediaTrackCapabilities.d.ts +22 -0
  1385. package/lib/nodes/html-media-element/IMediaTrackCapabilities.d.ts.map +1 -0
  1386. package/lib/nodes/html-media-element/IMediaTrackCapabilities.js +2 -0
  1387. package/lib/nodes/html-media-element/IMediaTrackCapabilities.js.map +1 -0
  1388. package/lib/nodes/html-media-element/IMediaTrackSettings.d.ts +6 -0
  1389. package/lib/nodes/html-media-element/IMediaTrackSettings.d.ts.map +1 -0
  1390. package/lib/nodes/html-media-element/IMediaTrackSettings.js +2 -0
  1391. package/lib/nodes/html-media-element/IMediaTrackSettings.js.map +1 -0
  1392. package/lib/nodes/html-media-element/MediaStream.d.ts +60 -0
  1393. package/lib/nodes/html-media-element/MediaStream.d.ts.map +1 -0
  1394. package/lib/nodes/html-media-element/MediaStream.js +97 -0
  1395. package/lib/nodes/html-media-element/MediaStream.js.map +1 -0
  1396. package/lib/nodes/html-media-element/MediaStreamTrack.d.ts +75 -0
  1397. package/lib/nodes/html-media-element/MediaStreamTrack.d.ts.map +1 -0
  1398. package/lib/nodes/html-media-element/MediaStreamTrack.js +147 -0
  1399. package/lib/nodes/html-media-element/MediaStreamTrack.js.map +1 -0
  1400. package/lib/nodes/html-media-element/RemotePlayback.d.ts +32 -0
  1401. package/lib/nodes/html-media-element/RemotePlayback.d.ts.map +1 -0
  1402. package/lib/nodes/html-media-element/RemotePlayback.js +42 -0
  1403. package/lib/nodes/html-media-element/RemotePlayback.js.map +1 -0
  1404. package/lib/nodes/html-media-element/TextTrack.d.ts +88 -0
  1405. package/lib/nodes/html-media-element/TextTrack.d.ts.map +1 -0
  1406. package/lib/nodes/html-media-element/TextTrack.js +131 -0
  1407. package/lib/nodes/html-media-element/TextTrack.js.map +1 -0
  1408. package/lib/nodes/html-media-element/TextTrackCue.d.ts +31 -0
  1409. package/lib/nodes/html-media-element/TextTrackCue.d.ts.map +1 -0
  1410. package/lib/nodes/html-media-element/TextTrackCue.js +39 -0
  1411. package/lib/nodes/html-media-element/TextTrackCue.js.map +1 -0
  1412. package/lib/nodes/html-media-element/TextTrackCueList.d.ts +19 -0
  1413. package/lib/nodes/html-media-element/TextTrackCueList.d.ts.map +1 -0
  1414. package/lib/nodes/html-media-element/TextTrackCueList.js +33 -0
  1415. package/lib/nodes/html-media-element/TextTrackCueList.js.map +1 -0
  1416. package/lib/nodes/html-media-element/TextTrackKindEnum.d.ts +9 -0
  1417. package/lib/nodes/html-media-element/TextTrackKindEnum.d.ts.map +1 -0
  1418. package/lib/nodes/html-media-element/TextTrackKindEnum.js +10 -0
  1419. package/lib/nodes/html-media-element/TextTrackKindEnum.js.map +1 -0
  1420. package/lib/nodes/html-media-element/TextTrackList.d.ts +59 -0
  1421. package/lib/nodes/html-media-element/TextTrackList.d.ts.map +1 -0
  1422. package/lib/nodes/html-media-element/TextTrackList.js +157 -0
  1423. package/lib/nodes/html-media-element/TextTrackList.js.map +1 -0
  1424. package/lib/nodes/html-media-element/TimeRanges.d.ts +50 -0
  1425. package/lib/nodes/html-media-element/TimeRanges.d.ts.map +1 -0
  1426. package/lib/nodes/html-media-element/TimeRanges.js +67 -0
  1427. package/lib/nodes/html-media-element/TimeRanges.js.map +1 -0
  1428. package/lib/nodes/html-media-element/VTTCue.d.ts +38 -0
  1429. package/lib/nodes/html-media-element/VTTCue.d.ts.map +1 -0
  1430. package/lib/nodes/html-media-element/VTTCue.js +65 -0
  1431. package/lib/nodes/html-media-element/VTTCue.js.map +1 -0
  1432. package/lib/nodes/html-media-element/VTTRegion.d.ts +16 -0
  1433. package/lib/nodes/html-media-element/VTTRegion.d.ts.map +1 -0
  1434. package/lib/nodes/html-media-element/VTTRegion.js +16 -0
  1435. package/lib/nodes/html-media-element/VTTRegion.js.map +1 -0
  1436. package/lib/nodes/html-menu-element/HTMLMenuElement.d.ts +9 -0
  1437. package/lib/nodes/html-menu-element/HTMLMenuElement.d.ts.map +1 -0
  1438. package/lib/nodes/html-menu-element/HTMLMenuElement.js +9 -0
  1439. package/lib/nodes/html-menu-element/HTMLMenuElement.js.map +1 -0
  1440. package/lib/nodes/html-meter-element/HTMLMeterElement.d.ts +89 -0
  1441. package/lib/nodes/html-meter-element/HTMLMeterElement.d.ts.map +1 -0
  1442. package/lib/nodes/html-meter-element/HTMLMeterElement.js +177 -0
  1443. package/lib/nodes/html-meter-element/HTMLMeterElement.js.map +1 -0
  1444. package/lib/nodes/html-mod-element/HTMLModElement.d.ts +33 -0
  1445. package/lib/nodes/html-mod-element/HTMLModElement.d.ts.map +1 -0
  1446. package/lib/nodes/html-mod-element/HTMLModElement.js +51 -0
  1447. package/lib/nodes/html-mod-element/HTMLModElement.js.map +1 -0
  1448. package/lib/nodes/html-o-list-element/HTMLOListElement.d.ts +45 -0
  1449. package/lib/nodes/html-o-list-element/HTMLOListElement.d.ts.map +1 -0
  1450. package/lib/nodes/html-o-list-element/HTMLOListElement.js +75 -0
  1451. package/lib/nodes/html-o-list-element/HTMLOListElement.js.map +1 -0
  1452. package/lib/nodes/html-object-element/HTMLObjectElement.d.ts +131 -0
  1453. package/lib/nodes/html-object-element/HTMLObjectElement.d.ts.map +1 -0
  1454. package/lib/nodes/html-object-element/HTMLObjectElement.js +182 -0
  1455. package/lib/nodes/html-object-element/HTMLObjectElement.js.map +1 -0
  1456. package/lib/nodes/html-opt-group-element/HTMLOptGroupElement.d.ts +1 -1
  1457. package/lib/nodes/html-opt-group-element/HTMLOptGroupElement.js +1 -1
  1458. package/lib/nodes/html-option-element/HTMLOptionElement.d.ts +16 -4
  1459. package/lib/nodes/html-option-element/HTMLOptionElement.d.ts.map +1 -1
  1460. package/lib/nodes/html-option-element/HTMLOptionElement.js +52 -21
  1461. package/lib/nodes/html-option-element/HTMLOptionElement.js.map +1 -1
  1462. package/lib/nodes/html-output-element/HTMLOutputElement.d.ts +120 -0
  1463. package/lib/nodes/html-output-element/HTMLOutputElement.d.ts.map +1 -0
  1464. package/lib/nodes/html-output-element/HTMLOutputElement.js +159 -0
  1465. package/lib/nodes/html-output-element/HTMLOutputElement.js.map +1 -0
  1466. package/lib/nodes/html-paragraph-element/HTMLParagraphElement.d.ts +9 -0
  1467. package/lib/nodes/html-paragraph-element/HTMLParagraphElement.d.ts.map +1 -0
  1468. package/lib/nodes/html-paragraph-element/HTMLParagraphElement.js +9 -0
  1469. package/lib/nodes/html-paragraph-element/HTMLParagraphElement.js.map +1 -0
  1470. package/lib/nodes/html-param-element/HTMLParamElement.d.ts +9 -0
  1471. package/lib/nodes/html-param-element/HTMLParamElement.d.ts.map +1 -0
  1472. package/lib/nodes/html-param-element/HTMLParamElement.js +9 -0
  1473. package/lib/nodes/html-param-element/HTMLParamElement.js.map +1 -0
  1474. package/lib/nodes/html-picture-element/HTMLPictureElement.d.ts +9 -0
  1475. package/lib/nodes/html-picture-element/HTMLPictureElement.d.ts.map +1 -0
  1476. package/lib/nodes/html-picture-element/HTMLPictureElement.js +9 -0
  1477. package/lib/nodes/html-picture-element/HTMLPictureElement.js.map +1 -0
  1478. package/lib/nodes/html-pre-element/HTMLPreElement.d.ts +9 -0
  1479. package/lib/nodes/html-pre-element/HTMLPreElement.d.ts.map +1 -0
  1480. package/lib/nodes/html-pre-element/HTMLPreElement.js +9 -0
  1481. package/lib/nodes/html-pre-element/HTMLPreElement.js.map +1 -0
  1482. package/lib/nodes/html-progress-element/HTMLProgressElement.d.ts +47 -0
  1483. package/lib/nodes/html-progress-element/HTMLProgressElement.d.ts.map +1 -0
  1484. package/lib/nodes/html-progress-element/HTMLProgressElement.js +84 -0
  1485. package/lib/nodes/html-progress-element/HTMLProgressElement.js.map +1 -0
  1486. package/lib/nodes/html-quote-element/HTMLQuoteElement.d.ts +21 -0
  1487. package/lib/nodes/html-quote-element/HTMLQuoteElement.d.ts.map +1 -0
  1488. package/lib/nodes/html-quote-element/HTMLQuoteElement.js +35 -0
  1489. package/lib/nodes/html-quote-element/HTMLQuoteElement.js.map +1 -0
  1490. package/lib/nodes/html-script-element/HTMLScriptElement.d.ts +7 -6
  1491. package/lib/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  1492. package/lib/nodes/html-script-element/HTMLScriptElement.js +103 -34
  1493. package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
  1494. package/lib/nodes/html-select-element/HTMLOptionsCollection.d.ts +6 -9
  1495. package/lib/nodes/html-select-element/HTMLOptionsCollection.d.ts.map +1 -1
  1496. package/lib/nodes/html-select-element/HTMLOptionsCollection.js +13 -50
  1497. package/lib/nodes/html-select-element/HTMLOptionsCollection.js.map +1 -1
  1498. package/lib/nodes/html-select-element/HTMLSelectElement.d.ts +9 -12
  1499. package/lib/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
  1500. package/lib/nodes/html-select-element/HTMLSelectElement.js +282 -91
  1501. package/lib/nodes/html-select-element/HTMLSelectElement.js.map +1 -1
  1502. package/lib/nodes/html-slot-element/HTMLSlotElement.d.ts +16 -5
  1503. package/lib/nodes/html-slot-element/HTMLSlotElement.d.ts.map +1 -1
  1504. package/lib/nodes/html-slot-element/HTMLSlotElement.js +144 -36
  1505. package/lib/nodes/html-slot-element/HTMLSlotElement.js.map +1 -1
  1506. package/lib/nodes/html-source-element/HTMLSourceElement.d.ts +93 -0
  1507. package/lib/nodes/html-source-element/HTMLSourceElement.d.ts.map +1 -0
  1508. package/lib/nodes/html-source-element/HTMLSourceElement.js +135 -0
  1509. package/lib/nodes/html-source-element/HTMLSourceElement.js.map +1 -0
  1510. package/lib/nodes/html-span-element/HTMLSpanElement.d.ts +9 -0
  1511. package/lib/nodes/html-span-element/HTMLSpanElement.d.ts.map +1 -0
  1512. package/lib/nodes/html-span-element/HTMLSpanElement.js +9 -0
  1513. package/lib/nodes/html-span-element/HTMLSpanElement.js.map +1 -0
  1514. package/lib/nodes/html-style-element/HTMLStyleElement.d.ts +2 -11
  1515. package/lib/nodes/html-style-element/HTMLStyleElement.d.ts.map +1 -1
  1516. package/lib/nodes/html-style-element/HTMLStyleElement.js +9 -36
  1517. package/lib/nodes/html-style-element/HTMLStyleElement.js.map +1 -1
  1518. package/lib/nodes/html-table-caption-element/HTMLTableCaptionElement.d.ts +9 -0
  1519. package/lib/nodes/html-table-caption-element/HTMLTableCaptionElement.d.ts.map +1 -0
  1520. package/lib/nodes/html-table-caption-element/HTMLTableCaptionElement.js +9 -0
  1521. package/lib/nodes/html-table-caption-element/HTMLTableCaptionElement.js.map +1 -0
  1522. package/lib/nodes/html-table-cell-element/HTMLTableCellElement.d.ts +72 -0
  1523. package/lib/nodes/html-table-cell-element/HTMLTableCellElement.d.ts.map +1 -0
  1524. package/lib/nodes/html-table-cell-element/HTMLTableCellElement.js +108 -0
  1525. package/lib/nodes/html-table-cell-element/HTMLTableCellElement.js.map +1 -0
  1526. package/lib/nodes/html-table-col-element/HTMLTableColElement.d.ts +9 -0
  1527. package/lib/nodes/html-table-col-element/HTMLTableColElement.d.ts.map +1 -0
  1528. package/lib/nodes/html-table-col-element/HTMLTableColElement.js +9 -0
  1529. package/lib/nodes/html-table-col-element/HTMLTableColElement.js.map +1 -0
  1530. package/lib/nodes/html-table-element/HTMLTableElement.d.ts +111 -0
  1531. package/lib/nodes/html-table-element/HTMLTableElement.d.ts.map +1 -0
  1532. package/lib/nodes/html-table-element/HTMLTableElement.js +265 -0
  1533. package/lib/nodes/html-table-element/HTMLTableElement.js.map +1 -0
  1534. package/lib/nodes/html-table-row-element/HTMLTableRowElement.d.ts +42 -0
  1535. package/lib/nodes/html-table-row-element/HTMLTableRowElement.d.ts.map +1 -0
  1536. package/lib/nodes/html-table-row-element/HTMLTableRowElement.js +106 -0
  1537. package/lib/nodes/html-table-row-element/HTMLTableRowElement.js.map +1 -0
  1538. package/lib/nodes/html-table-section-element/HTMLTableSectionElement.d.ts +9 -0
  1539. package/lib/nodes/html-table-section-element/HTMLTableSectionElement.d.ts.map +1 -0
  1540. package/lib/nodes/html-table-section-element/HTMLTableSectionElement.js +9 -0
  1541. package/lib/nodes/html-table-section-element/HTMLTableSectionElement.js.map +1 -0
  1542. package/lib/nodes/html-template-element/HTMLTemplateElement.d.ts +11 -2
  1543. package/lib/nodes/html-template-element/HTMLTemplateElement.d.ts.map +1 -1
  1544. package/lib/nodes/html-template-element/HTMLTemplateElement.js +29 -20
  1545. package/lib/nodes/html-template-element/HTMLTemplateElement.js.map +1 -1
  1546. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +3 -9
  1547. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
  1548. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js +55 -80
  1549. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js.map +1 -1
  1550. package/lib/nodes/html-time-element/HTMLTimeElement.d.ts +1 -1
  1551. package/lib/nodes/html-time-element/HTMLTimeElement.js +1 -1
  1552. package/lib/nodes/html-title-element/HTMLTitleElement.d.ts +29 -0
  1553. package/lib/nodes/html-title-element/HTMLTitleElement.d.ts.map +1 -0
  1554. package/lib/nodes/html-title-element/HTMLTitleElement.js +45 -0
  1555. package/lib/nodes/html-title-element/HTMLTitleElement.js.map +1 -0
  1556. package/lib/nodes/html-track-element/HTMLTrackElement.d.ts +83 -0
  1557. package/lib/nodes/html-track-element/HTMLTrackElement.d.ts.map +1 -0
  1558. package/lib/nodes/html-track-element/HTMLTrackElement.js +140 -0
  1559. package/lib/nodes/html-track-element/HTMLTrackElement.js.map +1 -0
  1560. package/lib/nodes/html-u-list-element/HTMLUListElement.d.ts +9 -0
  1561. package/lib/nodes/html-u-list-element/HTMLUListElement.d.ts.map +1 -0
  1562. package/lib/nodes/html-u-list-element/HTMLUListElement.js +9 -0
  1563. package/lib/nodes/html-u-list-element/HTMLUListElement.js.map +1 -0
  1564. package/lib/nodes/node/ICachedComputedStyleResult.d.ts +6 -0
  1565. package/lib/nodes/node/ICachedComputedStyleResult.d.ts.map +1 -0
  1566. package/lib/nodes/node/ICachedComputedStyleResult.js +2 -0
  1567. package/lib/nodes/node/ICachedComputedStyleResult.js.map +1 -0
  1568. package/lib/nodes/node/ICachedElementByIdResult.d.ts +6 -0
  1569. package/lib/nodes/node/ICachedElementByIdResult.d.ts.map +1 -0
  1570. package/lib/nodes/node/ICachedElementByIdResult.js +2 -0
  1571. package/lib/nodes/node/ICachedElementByIdResult.js.map +1 -0
  1572. package/lib/nodes/node/ICachedElementByTagNameResult.d.ts +6 -0
  1573. package/lib/nodes/node/ICachedElementByTagNameResult.d.ts.map +1 -0
  1574. package/lib/nodes/node/ICachedElementByTagNameResult.js +2 -0
  1575. package/lib/nodes/node/ICachedElementByTagNameResult.js.map +1 -0
  1576. package/lib/nodes/node/ICachedElementsByTagNameResult.d.ts +6 -0
  1577. package/lib/nodes/node/ICachedElementsByTagNameResult.d.ts.map +1 -0
  1578. package/lib/nodes/node/ICachedElementsByTagNameResult.js +2 -0
  1579. package/lib/nodes/node/ICachedElementsByTagNameResult.js.map +1 -0
  1580. package/lib/nodes/node/ICachedMatchesResult.d.ts +8 -0
  1581. package/lib/nodes/node/ICachedMatchesResult.d.ts.map +1 -0
  1582. package/lib/nodes/node/ICachedMatchesResult.js +2 -0
  1583. package/lib/nodes/node/ICachedMatchesResult.js.map +1 -0
  1584. package/lib/nodes/node/ICachedQuerySelectorAllResult.d.ts +7 -0
  1585. package/lib/nodes/node/ICachedQuerySelectorAllResult.d.ts.map +1 -0
  1586. package/lib/nodes/node/ICachedQuerySelectorAllResult.js +2 -0
  1587. package/lib/nodes/node/ICachedQuerySelectorAllResult.js.map +1 -0
  1588. package/lib/nodes/node/ICachedQuerySelectorResult.d.ts +6 -0
  1589. package/lib/nodes/node/ICachedQuerySelectorResult.d.ts.map +1 -0
  1590. package/lib/nodes/node/ICachedQuerySelectorResult.js +2 -0
  1591. package/lib/nodes/node/ICachedQuerySelectorResult.js.map +1 -0
  1592. package/lib/nodes/node/ICachedResult.d.ts +4 -0
  1593. package/lib/nodes/node/ICachedResult.d.ts.map +1 -0
  1594. package/lib/nodes/node/ICachedResult.js +2 -0
  1595. package/lib/nodes/node/ICachedResult.js.map +1 -0
  1596. package/lib/nodes/node/ICachedStyleResult.d.ts +6 -0
  1597. package/lib/nodes/node/ICachedStyleResult.d.ts.map +1 -0
  1598. package/lib/nodes/node/ICachedStyleResult.js +2 -0
  1599. package/lib/nodes/node/ICachedStyleResult.js.map +1 -0
  1600. package/lib/nodes/node/Node.d.ts +73 -17
  1601. package/lib/nodes/node/Node.d.ts.map +1 -1
  1602. package/lib/nodes/node/Node.js +469 -135
  1603. package/lib/nodes/node/Node.js.map +1 -1
  1604. package/lib/nodes/node/NodeList.d.ts +65 -2
  1605. package/lib/nodes/node/NodeList.d.ts.map +1 -1
  1606. package/lib/nodes/node/NodeList.js +161 -4
  1607. package/lib/nodes/node/NodeList.js.map +1 -1
  1608. package/lib/nodes/node/NodeUtility.d.ts +0 -33
  1609. package/lib/nodes/node/NodeUtility.d.ts.map +1 -1
  1610. package/lib/nodes/node/NodeUtility.js +23 -167
  1611. package/lib/nodes/node/NodeUtility.js.map +1 -1
  1612. package/lib/nodes/node/TNodeListListener.d.ts +3 -0
  1613. package/lib/nodes/node/TNodeListListener.d.ts.map +1 -0
  1614. package/lib/nodes/node/TNodeListListener.js +2 -0
  1615. package/lib/nodes/node/TNodeListListener.js.map +1 -0
  1616. package/lib/nodes/parent-node/ParentNodeUtility.d.ts +4 -4
  1617. package/lib/nodes/parent-node/ParentNodeUtility.d.ts.map +1 -1
  1618. package/lib/nodes/parent-node/ParentNodeUtility.js +121 -44
  1619. package/lib/nodes/parent-node/ParentNodeUtility.js.map +1 -1
  1620. package/lib/nodes/processing-instruction/ProcessingInstruction.js +3 -8
  1621. package/lib/nodes/processing-instruction/ProcessingInstruction.js.map +1 -1
  1622. package/lib/nodes/shadow-root/ShadowRoot.d.ts +58 -0
  1623. package/lib/nodes/shadow-root/ShadowRoot.d.ts.map +1 -1
  1624. package/lib/nodes/shadow-root/ShadowRoot.js +103 -18
  1625. package/lib/nodes/shadow-root/ShadowRoot.js.map +1 -1
  1626. package/lib/nodes/svg-element/DOMMatrix.js +2 -4
  1627. package/lib/nodes/svg-element/DOMMatrix.js.map +1 -1
  1628. package/lib/nodes/svg-element/SVGAngle.js +10 -13
  1629. package/lib/nodes/svg-element/SVGAngle.js.map +1 -1
  1630. package/lib/nodes/svg-element/SVGAnimatedRect.js +2 -4
  1631. package/lib/nodes/svg-element/SVGAnimatedRect.js.map +1 -1
  1632. package/lib/nodes/svg-element/SVGElement.d.ts +2 -4
  1633. package/lib/nodes/svg-element/SVGElement.d.ts.map +1 -1
  1634. package/lib/nodes/svg-element/SVGElement.js +14 -33
  1635. package/lib/nodes/svg-element/SVGElement.js.map +1 -1
  1636. package/lib/nodes/svg-element/SVGGraphicsElement.js +1 -4
  1637. package/lib/nodes/svg-element/SVGGraphicsElement.js.map +1 -1
  1638. package/lib/nodes/svg-element/SVGLength.js +16 -19
  1639. package/lib/nodes/svg-element/SVGLength.js.map +1 -1
  1640. package/lib/nodes/svg-element/SVGNumber.js +1 -3
  1641. package/lib/nodes/svg-element/SVGNumber.js.map +1 -1
  1642. package/lib/nodes/svg-element/SVGPoint.js +2 -4
  1643. package/lib/nodes/svg-element/SVGPoint.js.map +1 -1
  1644. package/lib/nodes/svg-element/SVGRect.js +4 -6
  1645. package/lib/nodes/svg-element/SVGRect.js.map +1 -1
  1646. package/lib/nodes/svg-element/SVGSVGElement.d.ts.map +1 -1
  1647. package/lib/nodes/svg-element/SVGSVGElement.js +19 -22
  1648. package/lib/nodes/svg-element/SVGSVGElement.js.map +1 -1
  1649. package/lib/nodes/svg-element/SVGTransform.js +10 -13
  1650. package/lib/nodes/svg-element/SVGTransform.js.map +1 -1
  1651. package/lib/nodes/text/Text.d.ts +9 -2
  1652. package/lib/nodes/text/Text.d.ts.map +1 -1
  1653. package/lib/nodes/text/Text.js +23 -16
  1654. package/lib/nodes/text/Text.js.map +1 -1
  1655. package/lib/permissions/PermissionStatus.js +2 -1
  1656. package/lib/permissions/PermissionStatus.js.map +1 -1
  1657. package/lib/permissions/Permissions.js +6 -16
  1658. package/lib/permissions/Permissions.js.map +1 -1
  1659. package/lib/query-selector/QuerySelector.d.ts +3 -0
  1660. package/lib/query-selector/QuerySelector.d.ts.map +1 -1
  1661. package/lib/query-selector/QuerySelector.js +116 -37
  1662. package/lib/query-selector/QuerySelector.js.map +1 -1
  1663. package/lib/query-selector/SelectorItem.d.ts.map +1 -1
  1664. package/lib/query-selector/SelectorItem.js +65 -32
  1665. package/lib/query-selector/SelectorItem.js.map +1 -1
  1666. package/lib/query-selector/SelectorParser.d.ts.map +1 -1
  1667. package/lib/query-selector/SelectorParser.js.map +1 -1
  1668. package/lib/range/Range.js +31 -44
  1669. package/lib/range/Range.js.map +1 -1
  1670. package/lib/range/RangeUtility.js +1 -1
  1671. package/lib/range/RangeUtility.js.map +1 -1
  1672. package/lib/screen/Screen.js +6 -8
  1673. package/lib/screen/Screen.js.map +1 -1
  1674. package/lib/selection/Selection.js +77 -83
  1675. package/lib/selection/Selection.js.map +1 -1
  1676. package/lib/storage/Storage.d.ts +4 -0
  1677. package/lib/storage/Storage.d.ts.map +1 -1
  1678. package/lib/storage/Storage.js +73 -6
  1679. package/lib/storage/Storage.js.map +1 -1
  1680. package/lib/tree-walker/NodeIterator.js +8 -22
  1681. package/lib/tree-walker/NodeIterator.js.map +1 -1
  1682. package/lib/tree-walker/TreeWalker.js +8 -8
  1683. package/lib/tree-walker/TreeWalker.js.map +1 -1
  1684. package/lib/url/URL.d.ts +0 -2
  1685. package/lib/url/URL.d.ts.map +1 -1
  1686. package/lib/validity-state/ValidityState.d.ts +3 -1
  1687. package/lib/validity-state/ValidityState.d.ts.map +1 -1
  1688. package/lib/validity-state/ValidityState.js +6 -1
  1689. package/lib/validity-state/ValidityState.js.map +1 -1
  1690. package/lib/window/BrowserWindow.d.ts +251 -172
  1691. package/lib/window/BrowserWindow.d.ts.map +1 -1
  1692. package/lib/window/BrowserWindow.js +591 -491
  1693. package/lib/window/BrowserWindow.js.map +1 -1
  1694. package/lib/window/CrossOriginBrowserWindow.d.ts +34 -3
  1695. package/lib/window/CrossOriginBrowserWindow.d.ts.map +1 -1
  1696. package/lib/window/CrossOriginBrowserWindow.js +57 -27
  1697. package/lib/window/CrossOriginBrowserWindow.js.map +1 -1
  1698. package/lib/window/DetachedWindowAPI.js +10 -24
  1699. package/lib/window/DetachedWindowAPI.js.map +1 -1
  1700. package/lib/window/GlobalWindow.d.ts +0 -1
  1701. package/lib/window/GlobalWindow.d.ts.map +1 -1
  1702. package/lib/window/GlobalWindow.js +60 -63
  1703. package/lib/window/GlobalWindow.js.map +1 -1
  1704. package/lib/window/INodeJSGlobal.d.ts +0 -2
  1705. package/lib/window/INodeJSGlobal.d.ts.map +1 -1
  1706. package/lib/window/VMGlobalPropertyScript.d.ts +0 -1
  1707. package/lib/window/VMGlobalPropertyScript.d.ts.map +1 -1
  1708. package/lib/window/Window.d.ts +0 -1
  1709. package/lib/window/Window.d.ts.map +1 -1
  1710. package/lib/window/Window.js +2 -0
  1711. package/lib/window/Window.js.map +1 -1
  1712. package/lib/window/WindowBrowserSettingsReader.js +8 -16
  1713. package/lib/window/WindowBrowserSettingsReader.js.map +1 -1
  1714. package/lib/xml-http-request/XMLHttpRequest.js +185 -194
  1715. package/lib/xml-http-request/XMLHttpRequest.js.map +1 -1
  1716. package/lib/xml-http-request/XMLHttpRequestEventTarget.js +7 -10
  1717. package/lib/xml-http-request/XMLHttpRequestEventTarget.js.map +1 -1
  1718. package/lib/xml-http-request/XMLHttpRequestResponseDataParser.d.ts +0 -1
  1719. package/lib/xml-http-request/XMLHttpRequestResponseDataParser.d.ts.map +1 -1
  1720. package/lib/xml-parser/XMLParser.d.ts.map +1 -1
  1721. package/lib/xml-parser/XMLParser.js +57 -43
  1722. package/lib/xml-parser/XMLParser.js.map +1 -1
  1723. package/lib/xml-serializer/XMLSerializer.d.ts +7 -12
  1724. package/lib/xml-serializer/XMLSerializer.d.ts.map +1 -1
  1725. package/lib/xml-serializer/XMLSerializer.js +20 -40
  1726. package/lib/xml-serializer/XMLSerializer.js.map +1 -1
  1727. package/package.json +2 -2
  1728. package/src/ClassMethodBinder.ts +77 -0
  1729. package/src/PropertySymbol.ts +73 -19
  1730. package/src/browser/BrowserFrame.ts +56 -3
  1731. package/src/browser/BrowserPage.ts +30 -1
  1732. package/src/browser/detached-browser/DetachedBrowserFrame.ts +56 -3
  1733. package/src/browser/detached-browser/DetachedBrowserPage.ts +30 -1
  1734. package/src/browser/types/IBrowserFrame.ts +24 -0
  1735. package/src/browser/types/IBrowserPage.ts +23 -1
  1736. package/src/browser/utilities/BrowserFrameNavigator.ts +285 -12
  1737. package/src/config/HTMLElementConfig.ts +52 -70
  1738. package/src/config/IHTMLElementTagNameMap.ts +104 -66
  1739. package/src/css/declaration/AbstractCSSStyleDeclaration.ts +7 -45
  1740. package/src/css/declaration/element-style/CSSStyleDeclarationElementStyle.ts +35 -28
  1741. package/src/css/declaration/property-manager/CSSStyleDeclarationPropertySetParser.ts +56 -41
  1742. package/src/css/declaration/property-manager/CSSStyleDeclarationValueParser.ts +23 -9
  1743. package/src/custom-element/CustomElementRegistry.ts +3 -3
  1744. package/src/dom-implementation/DOMImplementation.ts +3 -1
  1745. package/src/dom-parser/DOMParser.ts +11 -9
  1746. package/src/event/Event.ts +1 -1
  1747. package/src/event/events/IMediaQueryListEventInit.ts +6 -0
  1748. package/src/event/events/MediaStreamTrackEvent.ts +22 -0
  1749. package/src/form-data/FormData.ts +46 -37
  1750. package/src/history/History.ts +152 -21
  1751. package/src/history/IHistoryItem.ts +12 -0
  1752. package/src/index.ts +120 -62
  1753. package/src/intersection-observer/IIntersectionObserverInit.ts +16 -0
  1754. package/src/intersection-observer/IntersectionObserver.ts +64 -0
  1755. package/src/intersection-observer/IntersectionObserverEntry.ts +26 -0
  1756. package/src/location/Location.ts +1 -0
  1757. package/src/mutation-observer/IMutationListener.ts +7 -0
  1758. package/src/mutation-observer/MutationObserver.ts +14 -12
  1759. package/src/mutation-observer/MutationObserverListener.ts +102 -0
  1760. package/src/nodes/NodeFactory.ts +6 -2
  1761. package/src/nodes/attr/Attr.ts +23 -2
  1762. package/src/nodes/character-data/CharacterData.ts +9 -22
  1763. package/src/nodes/child-node/ChildNodeUtility.ts +10 -10
  1764. package/src/nodes/comment/Comment.ts +1 -1
  1765. package/src/nodes/document/Document.ts +118 -118
  1766. package/src/nodes/document-fragment/DocumentFragment.ts +19 -52
  1767. package/src/nodes/document-type/DocumentType.ts +1 -1
  1768. package/src/nodes/element/DOMStringMap.ts +86 -0
  1769. package/src/nodes/element/DOMStringMapUtility.ts +33 -0
  1770. package/src/nodes/element/DOMTokenList.ts +335 -0
  1771. package/src/nodes/element/Element.ts +481 -114
  1772. package/src/nodes/element/HTMLCollection.ts +221 -55
  1773. package/src/nodes/element/NamedNodeMap.ts +273 -0
  1774. package/src/nodes/element/NamedNodeMapProxyFactory.ts +124 -0
  1775. package/src/nodes/element/THTMLCollectionListener.ts +7 -0
  1776. package/src/nodes/element/TNamedNodeMapListener.ts +4 -0
  1777. package/src/nodes/html-anchor-element/HTMLAnchorElement.ts +41 -150
  1778. package/src/nodes/html-area-element/HTMLAreaElement.ts +398 -0
  1779. package/src/nodes/html-base-element/HTMLBaseElement.ts +11 -5
  1780. package/src/nodes/html-body-element/HTMLBodyElement.ts +28 -0
  1781. package/src/nodes/html-br-element/HTMLBRElement.ts +7 -0
  1782. package/src/nodes/html-button-element/HTMLButtonElement.ts +10 -40
  1783. package/src/nodes/html-canvas-element/CanvasCaptureMediaStreamTrack.ts +51 -0
  1784. package/src/nodes/html-canvas-element/HTMLCanvasElement.ts +133 -0
  1785. package/src/nodes/html-canvas-element/ImageBitmap.ts +27 -0
  1786. package/src/nodes/html-canvas-element/OffscreenCanvas.ts +58 -0
  1787. package/src/nodes/html-d-list-element/HTMLDListElement.ts +7 -0
  1788. package/src/nodes/html-data-element/HTMLDataElement.ts +25 -0
  1789. package/src/nodes/html-data-list-element/HTMLDataListElement.ts +28 -0
  1790. package/src/nodes/html-details-element/HTMLDetailsElement.ts +59 -0
  1791. package/src/nodes/html-dialog-element/HTMLDialogElement.ts +1 -2
  1792. package/src/nodes/html-div-element/HTMLDivElement.ts +7 -0
  1793. package/src/nodes/html-element/HTMLElement.ts +87 -87
  1794. package/src/nodes/html-element/HTMLElementUtility.ts +4 -2
  1795. package/src/nodes/html-embed-element/HTMLEmbedElement.ts +90 -0
  1796. package/src/nodes/html-field-set-element/HTMLFieldSetElement.ts +168 -0
  1797. package/src/nodes/html-form-element/HTMLFormControlsCollection.ts +17 -108
  1798. package/src/nodes/html-form-element/HTMLFormElement.ts +255 -96
  1799. package/src/nodes/html-form-element/RadioNodeList.ts +4 -7
  1800. package/src/nodes/html-form-element/THTMLFormControlElement.ts +18 -0
  1801. package/src/nodes/html-head-element/HTMLHeadElement.ts +7 -0
  1802. package/src/nodes/html-heading-element/HTMLHeadingElement.ts +7 -0
  1803. package/src/nodes/html-hr-element/HTMLHRElement.ts +7 -0
  1804. package/src/nodes/html-html-element/HTMLHtmlElement.ts +7 -0
  1805. package/src/nodes/html-hyperlink-element/HTMLHyperlinkElementUtility.ts +329 -0
  1806. package/src/nodes/html-hyperlink-element/IHTMLHyperlinkElement.ts +19 -0
  1807. package/src/nodes/html-iframe-element/HTMLIFrameElement.ts +219 -29
  1808. package/src/nodes/html-image-element/HTMLImageElement.ts +1 -1
  1809. package/src/nodes/html-input-element/HTMLInputElement.ts +32 -46
  1810. package/src/nodes/html-label-element/HTMLLabelElement.ts +30 -9
  1811. package/src/nodes/html-label-element/HTMLLabelElementUtility.ts +11 -6
  1812. package/src/nodes/html-legend-element/HTMLLegendElement.ts +27 -0
  1813. package/src/nodes/html-li-element/HTMLLIElement.ts +31 -0
  1814. package/src/nodes/html-link-element/HTMLLinkElement.ts +113 -25
  1815. package/src/nodes/html-map-element/HTMLMapElement.ts +47 -0
  1816. package/src/nodes/html-media-element/HTMLMediaElement.ts +228 -67
  1817. package/src/nodes/html-media-element/IMediaTrackCapabilities.ts +21 -0
  1818. package/src/nodes/html-media-element/IMediaTrackSettings.ts +5 -0
  1819. package/src/nodes/html-media-element/MediaStream.ts +108 -0
  1820. package/src/nodes/html-media-element/MediaStreamTrack.ts +171 -0
  1821. package/src/nodes/html-media-element/RemotePlayback.ts +47 -0
  1822. package/src/nodes/html-media-element/TextTrack.ts +150 -0
  1823. package/src/nodes/html-media-element/TextTrackCue.ts +45 -0
  1824. package/src/nodes/html-media-element/TextTrackCueList.ts +37 -0
  1825. package/src/nodes/html-media-element/TextTrackKindEnum.ts +9 -0
  1826. package/src/nodes/html-media-element/TextTrackList.ts +175 -0
  1827. package/src/nodes/html-media-element/TimeRanges.ts +73 -0
  1828. package/src/nodes/html-media-element/VTTCue.ts +79 -0
  1829. package/src/nodes/html-media-element/VTTRegion.ts +15 -0
  1830. package/src/nodes/html-menu-element/HTMLMenuElement.ts +7 -0
  1831. package/src/nodes/html-meter-element/HTMLMeterElement.ts +208 -0
  1832. package/src/nodes/html-mod-element/HTMLModElement.ts +54 -0
  1833. package/src/nodes/html-o-list-element/HTMLOListElement.ts +83 -0
  1834. package/src/nodes/html-object-element/HTMLObjectElement.ts +207 -0
  1835. package/src/nodes/html-opt-group-element/HTMLOptGroupElement.ts +1 -1
  1836. package/src/nodes/html-option-element/HTMLOptionElement.ts +71 -21
  1837. package/src/nodes/html-output-element/HTMLOutputElement.ts +182 -0
  1838. package/src/nodes/html-paragraph-element/HTMLParagraphElement.ts +7 -0
  1839. package/src/nodes/html-param-element/HTMLParamElement.ts +7 -0
  1840. package/src/nodes/html-picture-element/HTMLPictureElement.ts +7 -0
  1841. package/src/nodes/html-pre-element/HTMLPreElement.ts +7 -0
  1842. package/src/nodes/html-progress-element/HTMLProgressElement.ts +96 -0
  1843. package/src/nodes/html-quote-element/HTMLQuoteElement.ts +36 -0
  1844. package/src/nodes/html-script-element/HTMLScriptElement.ts +132 -24
  1845. package/src/nodes/html-select-element/HTMLOptionsCollection.ts +19 -43
  1846. package/src/nodes/html-select-element/HTMLSelectElement.ts +349 -89
  1847. package/src/nodes/html-slot-element/HTMLSlotElement.ts +154 -34
  1848. package/src/nodes/html-source-element/HTMLSourceElement.ts +148 -0
  1849. package/src/nodes/html-span-element/HTMLSpanElement.ts +7 -0
  1850. package/src/nodes/html-style-element/HTMLStyleElement.ts +7 -33
  1851. package/src/nodes/html-table-caption-element/HTMLTableCaptionElement.ts +7 -0
  1852. package/src/nodes/html-table-cell-element/HTMLTableCellElement.ts +120 -0
  1853. package/src/nodes/html-table-col-element/HTMLTableColElement.ts +7 -0
  1854. package/src/nodes/html-table-element/HTMLTableElement.ts +337 -0
  1855. package/src/nodes/html-table-row-element/HTMLTableRowElement.ts +149 -0
  1856. package/src/nodes/html-table-section-element/HTMLTableSectionElement.ts +7 -0
  1857. package/src/nodes/html-template-element/HTMLTemplateElement.ts +45 -19
  1858. package/src/nodes/html-text-area-element/HTMLTextAreaElement.ts +17 -38
  1859. package/src/nodes/html-time-element/HTMLTimeElement.ts +1 -1
  1860. package/src/nodes/html-title-element/HTMLTitleElement.ts +48 -0
  1861. package/src/nodes/html-track-element/HTMLTrackElement.ts +151 -0
  1862. package/src/nodes/html-u-list-element/HTMLUListElement.ts +7 -0
  1863. package/src/nodes/node/ICachedComputedStyleResult.ts +6 -0
  1864. package/src/nodes/node/ICachedElementByIdResult.ts +6 -0
  1865. package/src/nodes/node/ICachedElementByTagNameResult.ts +6 -0
  1866. package/src/nodes/node/ICachedElementsByTagNameResult.ts +6 -0
  1867. package/src/nodes/node/ICachedMatchesResult.ts +6 -0
  1868. package/src/nodes/node/ICachedQuerySelectorAllResult.ts +7 -0
  1869. package/src/nodes/node/ICachedQuerySelectorResult.ts +6 -0
  1870. package/src/nodes/node/ICachedResult.ts +3 -0
  1871. package/src/nodes/node/ICachedStyleResult.ts +6 -0
  1872. package/src/nodes/node/Node.ts +581 -138
  1873. package/src/nodes/node/NodeList.ts +187 -4
  1874. package/src/nodes/node/NodeUtility.ts +29 -228
  1875. package/src/nodes/node/TNodeListListener.ts +2 -0
  1876. package/src/nodes/parent-node/ParentNodeUtility.ts +184 -60
  1877. package/src/nodes/shadow-root/ShadowRoot.ts +110 -8
  1878. package/src/nodes/svg-element/SVGElement.ts +4 -8
  1879. package/src/nodes/svg-element/SVGSVGElement.ts +1 -1
  1880. package/src/nodes/text/Text.ts +28 -14
  1881. package/src/query-selector/QuerySelector.ts +160 -50
  1882. package/src/query-selector/SelectorItem.ts +57 -32
  1883. package/src/query-selector/SelectorParser.ts +1 -0
  1884. package/src/range/Range.ts +12 -12
  1885. package/src/range/RangeUtility.ts +1 -1
  1886. package/src/selection/Selection.ts +1 -1
  1887. package/src/storage/Storage.ts +82 -1
  1888. package/src/tree-walker/TreeWalker.ts +4 -4
  1889. package/src/validity-state/ValidityState.ts +21 -3
  1890. package/src/window/BrowserWindow.ts +399 -310
  1891. package/src/window/CrossOriginBrowserWindow.ts +56 -5
  1892. package/src/xml-parser/XMLParser.ts +82 -56
  1893. package/src/xml-serializer/XMLSerializer.ts +31 -42
  1894. package/tsconfig.json +2 -2
  1895. package/vitest.config.ts +2 -1
  1896. package/cjs/dom-token-list/DOMTokenList.cjs +0 -251
  1897. package/cjs/dom-token-list/DOMTokenList.cjs.map +0 -1
  1898. package/cjs/dom-token-list/DOMTokenList.d.ts +0 -113
  1899. package/cjs/dom-token-list/DOMTokenList.d.ts.map +0 -1
  1900. package/cjs/mutation-observer/MutationListener.cjs +0 -90
  1901. package/cjs/mutation-observer/MutationListener.cjs.map +0 -1
  1902. package/cjs/mutation-observer/MutationListener.d.ts +0 -45
  1903. package/cjs/mutation-observer/MutationListener.d.ts.map +0 -1
  1904. package/cjs/named-node-map/NamedNodeMap.cjs +0 -229
  1905. package/cjs/named-node-map/NamedNodeMap.cjs.map +0 -1
  1906. package/cjs/named-node-map/NamedNodeMap.d.ts +0 -113
  1907. package/cjs/named-node-map/NamedNodeMap.d.ts.map +0 -1
  1908. package/cjs/nodes/element/DatasetFactory.cjs +0 -100
  1909. package/cjs/nodes/element/DatasetFactory.cjs.map +0 -1
  1910. package/cjs/nodes/element/DatasetFactory.d.ts +0 -15
  1911. package/cjs/nodes/element/DatasetFactory.d.ts.map +0 -1
  1912. package/cjs/nodes/element/DatasetUtility.cjs +0 -36
  1913. package/cjs/nodes/element/DatasetUtility.cjs.map +0 -1
  1914. package/cjs/nodes/element/DatasetUtility.d.ts +0 -23
  1915. package/cjs/nodes/element/DatasetUtility.d.ts.map +0 -1
  1916. package/cjs/nodes/element/ElementNamedNodeMap.cjs +0 -179
  1917. package/cjs/nodes/element/ElementNamedNodeMap.cjs.map +0 -1
  1918. package/cjs/nodes/element/ElementNamedNodeMap.d.ts +0 -46
  1919. package/cjs/nodes/element/ElementNamedNodeMap.d.ts.map +0 -1
  1920. package/cjs/nodes/element/ElementUtility.cjs +0 -186
  1921. package/cjs/nodes/element/ElementUtility.cjs.map +0 -1
  1922. package/cjs/nodes/element/ElementUtility.d.ts +0 -44
  1923. package/cjs/nodes/element/ElementUtility.d.ts.map +0 -1
  1924. package/cjs/nodes/element/IDataset.cjs +0 -3
  1925. package/cjs/nodes/element/IDataset.cjs.map +0 -1
  1926. package/cjs/nodes/element/IDataset.d.ts +0 -4
  1927. package/cjs/nodes/element/IDataset.d.ts.map +0 -1
  1928. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.cjs +0 -61
  1929. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.cjs.map +0 -1
  1930. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts +0 -21
  1931. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts.map +0 -1
  1932. package/cjs/nodes/html-anchor-element/IHTMLHyperlinkElementUtils.cjs +0 -3
  1933. package/cjs/nodes/html-anchor-element/IHTMLHyperlinkElementUtils.cjs.map +0 -1
  1934. package/cjs/nodes/html-anchor-element/IHTMLHyperlinkElementUtils.d.ts +0 -20
  1935. package/cjs/nodes/html-anchor-element/IHTMLHyperlinkElementUtils.d.ts.map +0 -1
  1936. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.cjs +0 -67
  1937. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.cjs.map +0 -1
  1938. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts +0 -21
  1939. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts.map +0 -1
  1940. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.cjs +0 -62
  1941. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.cjs.map +0 -1
  1942. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.d.ts +0 -21
  1943. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.d.ts.map +0 -1
  1944. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.cjs +0 -132
  1945. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.cjs.map +0 -1
  1946. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts +0 -29
  1947. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts.map +0 -1
  1948. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.cjs +0 -143
  1949. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.cjs.map +0 -1
  1950. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts +0 -35
  1951. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts.map +0 -1
  1952. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.cjs +0 -67
  1953. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.cjs.map +0 -1
  1954. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts +0 -21
  1955. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts.map +0 -1
  1956. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.cjs +0 -92
  1957. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.cjs.map +0 -1
  1958. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts +0 -31
  1959. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts.map +0 -1
  1960. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.cjs +0 -130
  1961. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.cjs.map +0 -1
  1962. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts +0 -27
  1963. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts.map +0 -1
  1964. package/cjs/nodes/html-media-element/TimeRange.cjs +0 -30
  1965. package/cjs/nodes/html-media-element/TimeRange.cjs.map +0 -1
  1966. package/cjs/nodes/html-media-element/TimeRange.d.ts +0 -21
  1967. package/cjs/nodes/html-media-element/TimeRange.d.ts.map +0 -1
  1968. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.cjs +0 -71
  1969. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.cjs.map +0 -1
  1970. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts +0 -21
  1971. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts.map +0 -1
  1972. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.cjs +0 -75
  1973. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.cjs.map +0 -1
  1974. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts +0 -26
  1975. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts.map +0 -1
  1976. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.cjs +0 -144
  1977. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.cjs.map +0 -1
  1978. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts +0 -26
  1979. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts.map +0 -1
  1980. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.cjs +0 -67
  1981. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.cjs.map +0 -1
  1982. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts +0 -21
  1983. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts.map +0 -1
  1984. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.cjs +0 -67
  1985. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.cjs.map +0 -1
  1986. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts +0 -21
  1987. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts.map +0 -1
  1988. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.cjs +0 -62
  1989. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.cjs.map +0 -1
  1990. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.d.ts +0 -21
  1991. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.d.ts.map +0 -1
  1992. package/cjs/storage/StorageFactory.cjs +0 -121
  1993. package/cjs/storage/StorageFactory.cjs.map +0 -1
  1994. package/cjs/storage/StorageFactory.d.ts +0 -14
  1995. package/cjs/storage/StorageFactory.d.ts.map +0 -1
  1996. package/lib/dom-token-list/DOMTokenList.d.ts +0 -113
  1997. package/lib/dom-token-list/DOMTokenList.d.ts.map +0 -1
  1998. package/lib/dom-token-list/DOMTokenList.js +0 -226
  1999. package/lib/dom-token-list/DOMTokenList.js.map +0 -1
  2000. package/lib/mutation-observer/MutationListener.d.ts +0 -45
  2001. package/lib/mutation-observer/MutationListener.d.ts.map +0 -1
  2002. package/lib/mutation-observer/MutationListener.js +0 -88
  2003. package/lib/mutation-observer/MutationListener.js.map +0 -1
  2004. package/lib/named-node-map/NamedNodeMap.d.ts +0 -113
  2005. package/lib/named-node-map/NamedNodeMap.d.ts.map +0 -1
  2006. package/lib/named-node-map/NamedNodeMap.js +0 -200
  2007. package/lib/named-node-map/NamedNodeMap.js.map +0 -1
  2008. package/lib/nodes/element/DatasetFactory.d.ts +0 -15
  2009. package/lib/nodes/element/DatasetFactory.d.ts.map +0 -1
  2010. package/lib/nodes/element/DatasetFactory.js +0 -71
  2011. package/lib/nodes/element/DatasetFactory.js.map +0 -1
  2012. package/lib/nodes/element/DatasetUtility.d.ts +0 -23
  2013. package/lib/nodes/element/DatasetUtility.d.ts.map +0 -1
  2014. package/lib/nodes/element/DatasetUtility.js +0 -33
  2015. package/lib/nodes/element/DatasetUtility.js.map +0 -1
  2016. package/lib/nodes/element/ElementNamedNodeMap.d.ts +0 -46
  2017. package/lib/nodes/element/ElementNamedNodeMap.d.ts.map +0 -1
  2018. package/lib/nodes/element/ElementNamedNodeMap.js +0 -150
  2019. package/lib/nodes/element/ElementNamedNodeMap.js.map +0 -1
  2020. package/lib/nodes/element/ElementUtility.d.ts +0 -44
  2021. package/lib/nodes/element/ElementUtility.d.ts.map +0 -1
  2022. package/lib/nodes/element/ElementUtility.js +0 -157
  2023. package/lib/nodes/element/ElementUtility.js.map +0 -1
  2024. package/lib/nodes/element/IDataset.d.ts +0 -4
  2025. package/lib/nodes/element/IDataset.d.ts.map +0 -1
  2026. package/lib/nodes/element/IDataset.js +0 -2
  2027. package/lib/nodes/element/IDataset.js.map +0 -1
  2028. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts +0 -21
  2029. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts.map +0 -1
  2030. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.js +0 -32
  2031. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.js.map +0 -1
  2032. package/lib/nodes/html-anchor-element/IHTMLHyperlinkElementUtils.d.ts +0 -20
  2033. package/lib/nodes/html-anchor-element/IHTMLHyperlinkElementUtils.d.ts.map +0 -1
  2034. package/lib/nodes/html-anchor-element/IHTMLHyperlinkElementUtils.js +0 -2
  2035. package/lib/nodes/html-anchor-element/IHTMLHyperlinkElementUtils.js.map +0 -1
  2036. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts +0 -21
  2037. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.d.ts.map +0 -1
  2038. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.js +0 -38
  2039. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.js.map +0 -1
  2040. package/lib/nodes/html-element/HTMLElementNamedNodeMap.d.ts +0 -21
  2041. package/lib/nodes/html-element/HTMLElementNamedNodeMap.d.ts.map +0 -1
  2042. package/lib/nodes/html-element/HTMLElementNamedNodeMap.js +0 -33
  2043. package/lib/nodes/html-element/HTMLElementNamedNodeMap.js.map +0 -1
  2044. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts +0 -29
  2045. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts.map +0 -1
  2046. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.js +0 -104
  2047. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.js.map +0 -1
  2048. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts +0 -35
  2049. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.d.ts.map +0 -1
  2050. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.js +0 -115
  2051. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.js.map +0 -1
  2052. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts +0 -21
  2053. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.d.ts.map +0 -1
  2054. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.js +0 -38
  2055. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.js.map +0 -1
  2056. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts +0 -31
  2057. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts.map +0 -1
  2058. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.js +0 -63
  2059. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.js.map +0 -1
  2060. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts +0 -27
  2061. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts.map +0 -1
  2062. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.js +0 -102
  2063. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.js.map +0 -1
  2064. package/lib/nodes/html-media-element/TimeRange.d.ts +0 -21
  2065. package/lib/nodes/html-media-element/TimeRange.d.ts.map +0 -1
  2066. package/lib/nodes/html-media-element/TimeRange.js +0 -27
  2067. package/lib/nodes/html-media-element/TimeRange.js.map +0 -1
  2068. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts +0 -21
  2069. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.d.ts.map +0 -1
  2070. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.js +0 -42
  2071. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.js.map +0 -1
  2072. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts +0 -26
  2073. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.d.ts.map +0 -1
  2074. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.js +0 -47
  2075. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.js.map +0 -1
  2076. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts +0 -26
  2077. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts.map +0 -1
  2078. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.js +0 -116
  2079. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.js.map +0 -1
  2080. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts +0 -21
  2081. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.d.ts.map +0 -1
  2082. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.js +0 -38
  2083. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.js.map +0 -1
  2084. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts +0 -21
  2085. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.d.ts.map +0 -1
  2086. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.js +0 -38
  2087. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.js.map +0 -1
  2088. package/lib/nodes/svg-element/SVGElementNamedNodeMap.d.ts +0 -21
  2089. package/lib/nodes/svg-element/SVGElementNamedNodeMap.d.ts.map +0 -1
  2090. package/lib/nodes/svg-element/SVGElementNamedNodeMap.js +0 -33
  2091. package/lib/nodes/svg-element/SVGElementNamedNodeMap.js.map +0 -1
  2092. package/lib/storage/StorageFactory.d.ts +0 -14
  2093. package/lib/storage/StorageFactory.d.ts.map +0 -1
  2094. package/lib/storage/StorageFactory.js +0 -92
  2095. package/lib/storage/StorageFactory.js.map +0 -1
  2096. package/src/dom-token-list/DOMTokenList.ts +0 -247
  2097. package/src/mutation-observer/MutationListener.ts +0 -94
  2098. package/src/named-node-map/NamedNodeMap.ts +0 -232
  2099. package/src/nodes/element/DatasetFactory.ts +0 -86
  2100. package/src/nodes/element/DatasetUtility.ts +0 -33
  2101. package/src/nodes/element/ElementNamedNodeMap.ts +0 -241
  2102. package/src/nodes/element/ElementUtility.ts +0 -228
  2103. package/src/nodes/element/IDataset.ts +0 -3
  2104. package/src/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.ts +0 -45
  2105. package/src/nodes/html-anchor-element/IHTMLHyperlinkElementUtils.ts +0 -19
  2106. package/src/nodes/html-button-element/HTMLButtonElementNamedNodeMap.ts +0 -58
  2107. package/src/nodes/html-element/HTMLElementNamedNodeMap.ts +0 -46
  2108. package/src/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.ts +0 -123
  2109. package/src/nodes/html-iframe-element/HTMLIFrameElementPageLoader.ts +0 -139
  2110. package/src/nodes/html-input-element/HTMLInputElementNamedNodeMap.ts +0 -58
  2111. package/src/nodes/html-link-element/HTMLLinkElementNamedNodeMap.ts +0 -72
  2112. package/src/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.ts +0 -110
  2113. package/src/nodes/html-media-element/TimeRange.ts +0 -26
  2114. package/src/nodes/html-option-element/HTMLOptionElementNamedNodeMap.ts +0 -64
  2115. package/src/nodes/html-script-element/HTMLScriptElementNamedNodeMap.ts +0 -43
  2116. package/src/nodes/html-script-element/HTMLScriptElementScriptLoader.ts +0 -132
  2117. package/src/nodes/html-select-element/HTMLSelectElementNamedNodeMap.ts +0 -58
  2118. package/src/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.ts +0 -58
  2119. package/src/nodes/html-text-area-element/HTMLTextAreaPropertyAttributes.json +0 -16
  2120. package/src/nodes/svg-element/SVGElementNamedNodeMap.ts +0 -46
  2121. package/src/storage/StorageFactory.ts +0 -95
@@ -1,6 +1,5 @@
1
1
  import EventTarget from '../../event/EventTarget.js';
2
2
  import * as PropertySymbol from '../../PropertySymbol.js';
3
- import MutationListener from '../../mutation-observer/MutationListener.js';
4
3
  import Document from '../document/Document.js';
5
4
  import Element from '../element/Element.js';
6
5
  import NodeTypeEnum from './NodeTypeEnum.js';
@@ -8,6 +7,25 @@ import NodeDocumentPositionEnum from './NodeDocumentPositionEnum.js';
8
7
  import NodeUtility from './NodeUtility.js';
9
8
  import Attr from '../attr/Attr.js';
10
9
  import NodeList from './NodeList.js';
10
+ import MutationRecord from '../../mutation-observer/MutationRecord.js';
11
+ import MutationTypeEnum from '../../mutation-observer/MutationTypeEnum.js';
12
+ import DOMException from '../../exception/DOMException.js';
13
+ import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js';
14
+ import IMutationListener from '../../mutation-observer/IMutationListener.js';
15
+ import ICachedQuerySelectorAllResult from './ICachedQuerySelectorAllResult.js';
16
+ import ICachedQuerySelectorResult from './ICachedQuerySelectorResult.js';
17
+ import ICachedMatchesResult from './ICachedMatchesResult.js';
18
+ import ICachedElementsByTagNameResult from './ICachedElementsByTagNameResult.js';
19
+ import ICachedElementByTagNameResult from './ICachedElementByTagNameResult.js';
20
+ import ICachedStyleResult from './ICachedStyleResult.js';
21
+ import ICachedComputedStyleResult from './ICachedComputedStyleResult.js';
22
+ import ICachedResult from './ICachedResult.js';
23
+ import ICachedElementByIdResult from './ICachedElementByIdResult.js';
24
+ import HTMLStyleElement from '../html-style-element/HTMLStyleElement.js';
25
+ import HTMLFormElement from '../html-form-element/HTMLFormElement.js';
26
+ import HTMLSelectElement from '../html-select-element/HTMLSelectElement.js';
27
+ import HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js';
28
+ import HTMLSlotElement from '../html-slot-element/HTMLSlotElement.js';
11
29
  import NodeFactory from '../NodeFactory.js';
12
30
 
13
31
  /**
@@ -36,21 +54,21 @@ export default class Node extends EventTarget {
36
54
  public static readonly DOCUMENT_POSITION_PRECEDING = NodeDocumentPositionEnum.preceding;
37
55
 
38
56
  // Defined on the prototype
39
- public readonly ELEMENT_NODE;
40
- public readonly ATTRIBUTE_NODE;
41
- public readonly TEXT_NODE;
42
- public readonly CDATA_SECTION_NODE;
43
- public readonly COMMENT_NODE;
44
- public readonly DOCUMENT_NODE;
45
- public readonly DOCUMENT_TYPE_NODE;
46
- public readonly DOCUMENT_FRAGMENT_NODE;
47
- public readonly PROCESSING_INSTRUCTION_NODE;
48
- public readonly DOCUMENT_POSITION_CONTAINED_BY;
49
- public readonly DOCUMENT_POSITION_CONTAINS;
50
- public readonly DOCUMENT_POSITION_DISCONNECTED;
51
- public readonly DOCUMENT_POSITION_FOLLOWING;
52
- public readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC;
53
- public readonly DOCUMENT_POSITION_PRECEDING;
57
+ public declare readonly ELEMENT_NODE;
58
+ public declare readonly ATTRIBUTE_NODE;
59
+ public declare readonly TEXT_NODE;
60
+ public declare readonly CDATA_SECTION_NODE;
61
+ public declare readonly COMMENT_NODE;
62
+ public declare readonly DOCUMENT_NODE;
63
+ public declare readonly DOCUMENT_TYPE_NODE;
64
+ public declare readonly DOCUMENT_FRAGMENT_NODE;
65
+ public declare readonly PROCESSING_INSTRUCTION_NODE;
66
+ public declare readonly DOCUMENT_POSITION_CONTAINED_BY;
67
+ public declare readonly DOCUMENT_POSITION_CONTAINS;
68
+ public declare readonly DOCUMENT_POSITION_DISCONNECTED;
69
+ public declare readonly DOCUMENT_POSITION_FOLLOWING;
70
+ public declare readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC;
71
+ public declare readonly DOCUMENT_POSITION_PRECEDING;
54
72
 
55
73
  // Internal properties
56
74
  public [PropertySymbol.isConnected] = false;
@@ -58,28 +76,53 @@ export default class Node extends EventTarget {
58
76
  public [PropertySymbol.parentNode]: Node | null = null;
59
77
  public [PropertySymbol.nodeType]: NodeTypeEnum;
60
78
  public [PropertySymbol.rootNode]: Node = null;
61
- public [PropertySymbol.formNode]: Node = null;
62
- public [PropertySymbol.selectNode]: Node = null;
63
- public [PropertySymbol.textAreaNode]: Node = null;
64
- public [PropertySymbol.styleNode]: Node = null;
65
- public [PropertySymbol.observers]: MutationListener[] = [];
66
- public [PropertySymbol.childNodes]: NodeList<Node> = new NodeList<Node>();
79
+ public [PropertySymbol.styleNode]: HTMLStyleElement | null = null;
80
+ public [PropertySymbol.textAreaNode]: HTMLTextAreaElement | null = null;
81
+ public [PropertySymbol.formNode]: HTMLFormElement | null = null;
82
+ public [PropertySymbol.selectNode]: HTMLSelectElement | null = null;
83
+ public [PropertySymbol.mutationListeners]: IMutationListener[] = [];
84
+ public [PropertySymbol.nodeArray]: Node[] = [];
85
+ public [PropertySymbol.elementArray]: Element[] = [];
86
+ public [PropertySymbol.childNodes]: NodeList<Node> | null = null;
87
+ public [PropertySymbol.assignedToSlot]: HTMLSlotElement | null = null;
88
+ public [PropertySymbol.cache]: {
89
+ querySelector: Map<string, ICachedQuerySelectorResult>;
90
+ querySelectorAll: Map<string, ICachedQuerySelectorAllResult>;
91
+ matches: Map<string, ICachedMatchesResult>;
92
+ elementsByTagName: Map<string, ICachedElementsByTagNameResult>;
93
+ elementsByTagNameNS: Map<string, ICachedElementsByTagNameResult>;
94
+ elementByTagName: Map<string, ICachedElementByTagNameResult>;
95
+ elementById: Map<string, ICachedElementByIdResult>;
96
+ style: ICachedStyleResult | null;
97
+ computedStyle: ICachedComputedStyleResult | null;
98
+ } = {
99
+ querySelector: new Map(),
100
+ querySelectorAll: new Map(),
101
+ matches: new Map(),
102
+ elementsByTagName: new Map(),
103
+ elementsByTagNameNS: new Map(),
104
+ elementByTagName: new Map(),
105
+ elementById: new Map(),
106
+ style: null,
107
+ computedStyle: null
108
+ };
109
+ public [PropertySymbol.affectsCache]: ICachedResult[] = [];
67
110
 
68
111
  /**
69
112
  * Constructor.
70
113
  */
71
114
  constructor() {
72
115
  super();
73
- if ((<typeof Node>this.constructor)[PropertySymbol.ownerDocument] !== undefined) {
74
- this[PropertySymbol.ownerDocument] = (<typeof Node>this.constructor)[
75
- PropertySymbol.ownerDocument
76
- ];
116
+
117
+ const definedOwnerDocument = (<typeof Node>this.constructor)[PropertySymbol.ownerDocument];
118
+
119
+ if (definedOwnerDocument) {
120
+ this[PropertySymbol.ownerDocument] = definedOwnerDocument;
77
121
  } else {
78
122
  const ownerDocument = NodeFactory.pullOwnerDocument();
123
+
79
124
  if (!ownerDocument) {
80
- throw new Error(
81
- 'Failed to construct "Node": No owner document in queue. Please use "NodeFactory" to create instances of a Node.'
82
- );
125
+ throw new TypeError('Illegal constructor');
83
126
  }
84
127
  this[PropertySymbol.ownerDocument] = ownerDocument;
85
128
  }
@@ -136,6 +179,12 @@ export default class Node extends EventTarget {
136
179
  * @returns Child nodes list.
137
180
  */
138
181
  public get childNodes(): NodeList<Node> {
182
+ if (!this[PropertySymbol.childNodes]) {
183
+ this[PropertySymbol.childNodes] = new NodeList<Node>(
184
+ PropertySymbol.illegalConstructor,
185
+ this[PropertySymbol.nodeArray]
186
+ );
187
+ }
139
188
  return this[PropertySymbol.childNodes];
140
189
  }
141
190
 
@@ -191,11 +240,10 @@ export default class Node extends EventTarget {
191
240
  */
192
241
  public get previousSibling(): Node {
193
242
  if (this[PropertySymbol.parentNode]) {
194
- const index = (<Node>this[PropertySymbol.parentNode])[PropertySymbol.childNodes].indexOf(
195
- this
196
- );
243
+ const nodeArray = this[PropertySymbol.parentNode][PropertySymbol.nodeArray];
244
+ const index = nodeArray.indexOf(this);
197
245
  if (index > 0) {
198
- return (<Node>this[PropertySymbol.parentNode])[PropertySymbol.childNodes][index - 1];
246
+ return nodeArray[index - 1];
199
247
  }
200
248
  }
201
249
  return null;
@@ -208,14 +256,10 @@ export default class Node extends EventTarget {
208
256
  */
209
257
  public get nextSibling(): Node {
210
258
  if (this[PropertySymbol.parentNode]) {
211
- const index = (<Node>this[PropertySymbol.parentNode])[PropertySymbol.childNodes].indexOf(
212
- this
213
- );
214
- if (
215
- index > -1 &&
216
- index + 1 < (<Node>this[PropertySymbol.parentNode])[PropertySymbol.childNodes].length
217
- ) {
218
- return (<Node>this[PropertySymbol.parentNode])[PropertySymbol.childNodes][index + 1];
259
+ const nodeArray = this[PropertySymbol.parentNode][PropertySymbol.nodeArray];
260
+ const index = nodeArray.indexOf(this);
261
+ if (index > -1 && index + 1 < nodeArray.length) {
262
+ return nodeArray[index + 1];
219
263
  }
220
264
  }
221
265
  return null;
@@ -227,8 +271,9 @@ export default class Node extends EventTarget {
227
271
  * @returns Node.
228
272
  */
229
273
  public get firstChild(): Node {
230
- if (this[PropertySymbol.childNodes].length > 0) {
231
- return this[PropertySymbol.childNodes][0];
274
+ const nodeArray = this[PropertySymbol.nodeArray];
275
+ if (nodeArray.length > 0) {
276
+ return nodeArray[0];
232
277
  }
233
278
  return null;
234
279
  }
@@ -239,8 +284,9 @@ export default class Node extends EventTarget {
239
284
  * @returns Node.
240
285
  */
241
286
  public get lastChild(): Node {
242
- if (this[PropertySymbol.childNodes].length > 0) {
243
- return this[PropertySymbol.childNodes][this[PropertySymbol.childNodes].length - 1];
287
+ const nodeArray = this[PropertySymbol.nodeArray];
288
+ if (nodeArray.length > 0) {
289
+ return nodeArray[nodeArray.length - 1];
244
290
  }
245
291
  return null;
246
292
  }
@@ -287,7 +333,7 @@ export default class Node extends EventTarget {
287
333
  * @returns "true" if the node has child nodes.
288
334
  */
289
335
  public hasChildNodes(): boolean {
290
- return this[PropertySymbol.childNodes].length > 0;
336
+ return this[PropertySymbol.nodeArray].length > 0;
291
337
  }
292
338
 
293
339
  /**
@@ -339,6 +385,11 @@ export default class Node extends EventTarget {
339
385
  * @returns Appended node.
340
386
  */
341
387
  public appendChild(node: Node): Node {
388
+ if (arguments.length < 1) {
389
+ throw new TypeError(
390
+ `Failed to execute 'appendChild' on 'Node': 1 argument required, but only 0 present`
391
+ );
392
+ }
342
393
  return this[PropertySymbol.appendChild](node);
343
394
  }
344
395
 
@@ -349,6 +400,11 @@ export default class Node extends EventTarget {
349
400
  * @returns Removed node.
350
401
  */
351
402
  public removeChild(node: Node): Node {
403
+ if (arguments.length < 1) {
404
+ throw new TypeError(
405
+ `Failed to execute 'removeChild' on 'Node': 1 argument required, but only 0 present`
406
+ );
407
+ }
352
408
  return this[PropertySymbol.removeChild](node);
353
409
  }
354
410
 
@@ -376,6 +432,11 @@ export default class Node extends EventTarget {
376
432
  * @returns Replaced node.
377
433
  */
378
434
  public replaceChild(newChild: Node, oldChild: Node): Node {
435
+ if (arguments.length < 2) {
436
+ throw new TypeError(
437
+ `Failed to execute 'replaceChild' on 'Node': 2 arguments required, but only ${arguments.length} present.`
438
+ );
439
+ }
379
440
  return this[PropertySymbol.replaceChild](newChild, oldChild);
380
441
  }
381
442
 
@@ -386,23 +447,28 @@ export default class Node extends EventTarget {
386
447
  * @returns Cloned node.
387
448
  */
388
449
  public [PropertySymbol.cloneNode](deep = false): Node {
389
- const clone = NodeFactory.createNode<Node>(
450
+ const clone = NodeFactory.createNode(
390
451
  this[PropertySymbol.ownerDocument],
391
452
  <typeof Node>this.constructor
392
453
  );
393
454
 
394
455
  // Document has childNodes directly when it is created
395
- if (clone[PropertySymbol.childNodes].length) {
396
- for (const node of clone[PropertySymbol.childNodes].slice()) {
397
- node[PropertySymbol.parentNode].removeChild(node);
456
+ if (clone[PropertySymbol.nodeArray].length) {
457
+ const childNodes = clone[PropertySymbol.nodeArray];
458
+ while (childNodes.length) {
459
+ clone.removeChild(childNodes[0]);
398
460
  }
399
461
  }
400
462
 
401
463
  if (deep) {
402
- for (const childNode of this[PropertySymbol.childNodes]) {
464
+ for (const childNode of this[PropertySymbol.nodeArray]) {
403
465
  const childClone = childNode.cloneNode(true);
404
466
  childClone[PropertySymbol.parentNode] = clone;
405
- clone[PropertySymbol.childNodes].push(childClone);
467
+ clone[PropertySymbol.nodeArray].push(childClone);
468
+
469
+ if (childClone[PropertySymbol.nodeType] === NodeTypeEnum.elementNode) {
470
+ clone[PropertySymbol.elementArray].push(<Element>childClone);
471
+ }
406
472
  }
407
473
  }
408
474
 
@@ -413,10 +479,68 @@ export default class Node extends EventTarget {
413
479
  * Append a child node to childNodes.
414
480
  *
415
481
  * @param node Node to append.
482
+ * @param [disableValidations=false] "true" to disable validations.
416
483
  * @returns Appended node.
417
484
  */
418
- public [PropertySymbol.appendChild](node: Node): Node {
419
- return NodeUtility.appendChild(this, node);
485
+ public [PropertySymbol.appendChild](node: Node, disableValidations = false): Node {
486
+ if (!disableValidations) {
487
+ if (node === this) {
488
+ throw new DOMException(
489
+ "Failed to execute 'appendChild' on 'Node': Not possible to append a node as a child of itself."
490
+ );
491
+ }
492
+
493
+ if (NodeUtility.isInclusiveAncestor(node, this, true)) {
494
+ throw new DOMException(
495
+ "Failed to execute 'appendChild' on 'Node': The new node is a parent of the node to insert to.",
496
+ DOMExceptionNameEnum.domException
497
+ );
498
+ }
499
+ }
500
+
501
+ // If the type is DocumentFragment, then the child nodes of if it should be moved instead of the actual node.
502
+ // See: https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment
503
+ if (node[PropertySymbol.nodeType] === NodeTypeEnum.documentFragmentNode) {
504
+ const childNodes = node[PropertySymbol.nodeArray];
505
+ while (childNodes.length) {
506
+ this.appendChild(childNodes[0]);
507
+ }
508
+ return node;
509
+ }
510
+
511
+ // Remove the node from its previous parent if it has any.
512
+ if (node[PropertySymbol.parentNode]) {
513
+ node[PropertySymbol.parentNode][PropertySymbol.removeChild](node);
514
+ }
515
+
516
+ node[PropertySymbol.parentNode] = this;
517
+
518
+ node[PropertySymbol.clearCache]();
519
+
520
+ this[PropertySymbol.nodeArray].push(node);
521
+
522
+ if (node[PropertySymbol.nodeType] === NodeTypeEnum.elementNode) {
523
+ this[PropertySymbol.elementArray].push(<Element>node);
524
+ }
525
+
526
+ node[PropertySymbol.connectedToNode]();
527
+
528
+ // Mutation listeners
529
+ for (const mutationListener of this[PropertySymbol.mutationListeners]) {
530
+ if (mutationListener.options?.subtree && mutationListener.callback.deref()) {
531
+ (<Node>node)[PropertySymbol.observeMutations](mutationListener);
532
+ }
533
+ }
534
+
535
+ this[PropertySymbol.reportMutation](
536
+ new MutationRecord({
537
+ target: this,
538
+ type: MutationTypeEnum.childList,
539
+ addedNodes: [node]
540
+ })
541
+ );
542
+
543
+ return node;
420
544
  }
421
545
 
422
546
  /**
@@ -426,7 +550,53 @@ export default class Node extends EventTarget {
426
550
  * @returns Removed node.
427
551
  */
428
552
  public [PropertySymbol.removeChild](node: Node): Node {
429
- return NodeUtility.removeChild(this, node);
553
+ node[PropertySymbol.parentNode] = null;
554
+
555
+ node[PropertySymbol.clearCache]();
556
+
557
+ const index = this[PropertySymbol.nodeArray].indexOf(node);
558
+
559
+ if (index === -1) {
560
+ throw new DOMException(
561
+ `Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node.`
562
+ );
563
+ }
564
+
565
+ this[PropertySymbol.nodeArray].splice(index, 1);
566
+
567
+ if (node[PropertySymbol.nodeType] === NodeTypeEnum.elementNode) {
568
+ const index = this[PropertySymbol.elementArray].indexOf(<Element>node);
569
+ if (index !== -1) {
570
+ this[PropertySymbol.elementArray].splice(index, 1);
571
+ }
572
+ }
573
+
574
+ if (node[PropertySymbol.assignedToSlot]) {
575
+ const index = node[PropertySymbol.assignedToSlot][PropertySymbol.assignedNodes].indexOf(node);
576
+ if (index !== -1) {
577
+ node[PropertySymbol.assignedToSlot][PropertySymbol.assignedNodes].splice(index, 1);
578
+ }
579
+ node[PropertySymbol.assignedToSlot] = null;
580
+ }
581
+
582
+ node[PropertySymbol.disconnectedFromNode]();
583
+
584
+ // Mutation listeners
585
+ for (const mutationListener of this[PropertySymbol.mutationListeners]) {
586
+ if (mutationListener.options?.subtree && mutationListener.callback.deref()) {
587
+ (<Node>node)[PropertySymbol.unobserveMutations](mutationListener);
588
+ }
589
+ }
590
+
591
+ this[PropertySymbol.reportMutation](
592
+ new MutationRecord({
593
+ target: this,
594
+ type: MutationTypeEnum.childList,
595
+ removedNodes: [node]
596
+ })
597
+ );
598
+
599
+ return node;
430
600
  }
431
601
 
432
602
  /**
@@ -437,7 +607,92 @@ export default class Node extends EventTarget {
437
607
  * @returns Inserted node.
438
608
  */
439
609
  public [PropertySymbol.insertBefore](newNode: Node, referenceNode: Node | null): Node {
440
- return NodeUtility.insertBefore(this, newNode, referenceNode);
610
+ if (newNode === referenceNode) {
611
+ return newNode;
612
+ }
613
+
614
+ if (NodeUtility.isInclusiveAncestor(newNode, this, true)) {
615
+ throw new DOMException(
616
+ "Failed to execute 'insertBefore' on 'Node': The new node is a parent of the node to insert to.",
617
+ DOMExceptionNameEnum.domException
618
+ );
619
+ }
620
+
621
+ // If the type is DocumentFragment, then the child nodes of if it should be moved instead of the actual node.
622
+ // See: https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment
623
+ if (newNode[PropertySymbol.nodeType] === NodeTypeEnum.documentFragmentNode) {
624
+ const childNodes = (<Node>newNode)[PropertySymbol.nodeArray];
625
+ while (childNodes.length > 0) {
626
+ this.insertBefore(childNodes[0], referenceNode);
627
+ }
628
+ return newNode;
629
+ }
630
+
631
+ // If the referenceNode is null or undefined, then the newNode should be appended to the ancestorNode.
632
+ // According to spec only null is valid, but browsers support undefined as well.
633
+ if (!referenceNode) {
634
+ this.appendChild(newNode);
635
+ return newNode;
636
+ }
637
+
638
+ const nodeArray = this[PropertySymbol.nodeArray];
639
+
640
+ // We need to check if the referenceNode is a child of this node before removing it from its parent, as the parent may be the same node and the index would be wrong.
641
+ if (!nodeArray.includes(referenceNode)) {
642
+ throw new DOMException(
643
+ "Failed to execute 'insertBefore' on 'Node': The node before which the new node is to be inserted is not a child of this node."
644
+ );
645
+ }
646
+
647
+ if (newNode[PropertySymbol.parentNode]) {
648
+ newNode[PropertySymbol.parentNode][PropertySymbol.removeChild](newNode);
649
+ }
650
+
651
+ newNode[PropertySymbol.parentNode] = this;
652
+
653
+ newNode[PropertySymbol.clearCache]();
654
+
655
+ const index = nodeArray.indexOf(referenceNode);
656
+
657
+ if (newNode[PropertySymbol.nodeType] === NodeTypeEnum.elementNode) {
658
+ const elementArray = this[PropertySymbol.elementArray];
659
+ if (referenceNode[PropertySymbol.nodeType] === NodeTypeEnum.elementNode) {
660
+ elementArray.splice(elementArray.indexOf(<Element>referenceNode), 0, <Element>newNode);
661
+ } else {
662
+ let isInserted = false;
663
+ for (let i = index, max = nodeArray.length; i < max; i++) {
664
+ if (nodeArray[i][PropertySymbol.nodeType] === NodeTypeEnum.elementNode) {
665
+ elementArray.splice(elementArray.indexOf(<Element>nodeArray[i]), 0, <Element>newNode);
666
+ isInserted = true;
667
+ break;
668
+ }
669
+ }
670
+ if (!isInserted) {
671
+ elementArray.push(<Element>newNode);
672
+ }
673
+ }
674
+ }
675
+
676
+ nodeArray.splice(index, 0, newNode);
677
+
678
+ newNode[PropertySymbol.connectedToNode]();
679
+
680
+ // Mutation listeners
681
+ for (const mutationListener of this[PropertySymbol.mutationListeners]) {
682
+ if (mutationListener.options?.subtree && mutationListener.callback.deref()) {
683
+ newNode[PropertySymbol.observeMutations](mutationListener);
684
+ }
685
+ }
686
+
687
+ this[PropertySymbol.reportMutation](
688
+ new MutationRecord({
689
+ target: this,
690
+ type: MutationTypeEnum.childList,
691
+ addedNodes: [newNode]
692
+ })
693
+ );
694
+
695
+ return newNode;
441
696
  }
442
697
 
443
698
  /**
@@ -475,132 +730,318 @@ export default class Node extends EventTarget {
475
730
  }
476
731
 
477
732
  /**
478
- * Observeres the node.
479
- * Used by MutationObserver, but it is not part of the HTML standard.
733
+ * Observeres mutations on the node.
734
+ *
735
+ * Used by MutationObserver and internal logic.
480
736
  *
481
737
  * @param listener Listener.
482
738
  */
483
- public [PropertySymbol.observe](listener: MutationListener): void {
484
- this[PropertySymbol.observers].push(listener);
739
+ public [PropertySymbol.observeMutations](listener: IMutationListener): void {
740
+ this[PropertySymbol.mutationListeners].push(listener);
485
741
  if (listener.options.subtree) {
486
- for (const node of this[PropertySymbol.childNodes]) {
487
- (<Node>node)[PropertySymbol.observe](listener);
742
+ for (const node of this[PropertySymbol.nodeArray]) {
743
+ (<Node>node)[PropertySymbol.observeMutations](listener);
488
744
  }
489
745
  }
490
746
  }
491
747
 
492
748
  /**
493
- * Stops observing the node.
494
- * Used by MutationObserver, but it is not part of the HTML standard.
749
+ * Stops observing mutations on the node.
750
+ *
751
+ * Used by MutationObserver and internal logic.
495
752
  *
496
753
  * @param listener Listener.
497
754
  */
498
- public [PropertySymbol.unobserve](listener: MutationListener): void {
499
- const index = this[PropertySymbol.observers].indexOf(listener);
755
+ public [PropertySymbol.unobserveMutations](listener: IMutationListener): void {
756
+ const index = this[PropertySymbol.mutationListeners].indexOf(listener);
500
757
  if (index !== -1) {
501
- this[PropertySymbol.observers].splice(index, 1);
758
+ this[PropertySymbol.mutationListeners].splice(index, 1);
502
759
  }
503
760
  if (listener.options.subtree) {
504
- for (const node of this[PropertySymbol.childNodes]) {
505
- (<Node>node)[PropertySymbol.unobserve](listener);
761
+ for (const node of this[PropertySymbol.nodeArray]) {
762
+ node[PropertySymbol.unobserveMutations](listener);
506
763
  }
507
764
  }
508
765
  }
509
766
 
510
767
  /**
511
- * Connects this element to another element.
768
+ * Reports a mutation on the node.
769
+ *
770
+ * Used by MutationObserver and internal logic.
512
771
  *
513
- * @param parentNode Parent node.
772
+ * @param record Mutation record.
514
773
  */
515
- public [PropertySymbol.connectToNode](parentNode: Node = null): void {
516
- const isConnected = !!parentNode && parentNode[PropertySymbol.isConnected];
517
- const formNode = (<Node>this)[PropertySymbol.formNode];
518
- const selectNode = (<Node>this)[PropertySymbol.selectNode];
519
- const textAreaNode = (<Node>this)[PropertySymbol.textAreaNode];
520
- const styleNode = (<Node>this)[PropertySymbol.styleNode];
774
+ public [PropertySymbol.reportMutation](record: MutationRecord): void {
775
+ this[PropertySymbol.clearCache]();
521
776
 
522
- if (this[PropertySymbol.nodeType] !== NodeTypeEnum.documentFragmentNode) {
523
- this[PropertySymbol.parentNode] = parentNode;
524
- this[PropertySymbol.rootNode] =
525
- isConnected && parentNode ? (<Node>parentNode)[PropertySymbol.rootNode] : null;
777
+ const mutationListeners = this[PropertySymbol.mutationListeners];
526
778
 
527
- if (this['tagName'] !== 'FORM') {
528
- (<Node>this)[PropertySymbol.formNode] = parentNode
529
- ? (<Node>parentNode)[PropertySymbol.formNode]
530
- : null;
779
+ if (!mutationListeners.length) {
780
+ return;
781
+ }
782
+
783
+ for (let i = 0, max = mutationListeners.length; i < max; i++) {
784
+ const mutationListener = mutationListeners[i];
785
+ const callback = mutationListener.callback.deref();
786
+ if (callback) {
787
+ switch (record.type) {
788
+ case MutationTypeEnum.childList:
789
+ if (mutationListener.options.childList) {
790
+ callback(record);
791
+ }
792
+ break;
793
+ case MutationTypeEnum.attributes:
794
+ if (
795
+ mutationListener.options.attributes &&
796
+ (!mutationListener.options.attributeFilter ||
797
+ mutationListener.options.attributeFilter.includes(record.attributeName))
798
+ ) {
799
+ callback(record);
800
+ }
801
+ break;
802
+ case MutationTypeEnum.characterData:
803
+ if (mutationListener.options?.characterData) {
804
+ callback(record);
805
+ }
806
+ break;
807
+ }
808
+ } else {
809
+ mutationListeners.splice(i, 1);
810
+ i--;
811
+ max--;
531
812
  }
813
+ }
814
+ }
815
+
816
+ /**
817
+ * Clears query selector cache.
818
+ */
819
+ public [PropertySymbol.clearCache](): void {
820
+ const cache = this[PropertySymbol.cache];
532
821
 
533
- if (this['tagName'] !== 'SELECT') {
534
- (<Node>this)[PropertySymbol.selectNode] = parentNode
535
- ? (<Node>parentNode)[PropertySymbol.selectNode]
536
- : null;
822
+ if (cache.querySelector.size) {
823
+ for (const item of cache.querySelector.values()) {
824
+ if (item.result) {
825
+ item.result = null;
826
+ }
537
827
  }
828
+ cache.querySelector = new Map();
829
+ }
538
830
 
539
- if (this['tagName'] !== 'TEXTAREA') {
540
- (<Node>this)[PropertySymbol.textAreaNode] = parentNode
541
- ? (<Node>parentNode)[PropertySymbol.textAreaNode]
542
- : null;
831
+ if (cache.querySelectorAll.size) {
832
+ for (const item of cache.querySelectorAll.values()) {
833
+ if (item.result) {
834
+ item.result = null;
835
+ }
543
836
  }
837
+ cache.querySelectorAll = new Map();
838
+ }
544
839
 
545
- if (this['tagName'] !== 'STYLE') {
546
- (<Node>this)[PropertySymbol.styleNode] = parentNode
547
- ? (<Node>parentNode)[PropertySymbol.styleNode]
548
- : null;
840
+ if (cache.matches.size) {
841
+ for (const item of cache.matches.values()) {
842
+ if (item.result) {
843
+ item.result = null;
844
+ }
549
845
  }
846
+ cache.matches = new Map();
550
847
  }
551
848
 
552
- if (this[PropertySymbol.isConnected] !== isConnected) {
553
- this[PropertySymbol.isConnected] = isConnected;
849
+ if (cache.elementsByTagName.size) {
850
+ for (const item of cache.elementsByTagName.values()) {
851
+ if (item.result) {
852
+ item.result = null;
853
+ }
854
+ }
855
+ cache.elementsByTagName = new Map();
856
+ }
554
857
 
555
- if (!isConnected) {
556
- if (this[PropertySymbol.ownerDocument][PropertySymbol.activeElement] === <unknown>this) {
557
- this[PropertySymbol.ownerDocument][PropertySymbol.activeElement] = null;
858
+ if (cache.elementsByTagNameNS.size) {
859
+ for (const item of cache.elementsByTagNameNS.values()) {
860
+ if (item.result) {
861
+ item.result = null;
558
862
  }
559
863
  }
864
+ cache.elementsByTagNameNS = new Map();
865
+ }
560
866
 
561
- if (isConnected && this.connectedCallback) {
562
- const result = <void | Promise<void>>this.connectedCallback();
563
- /**
564
- * It is common to import dependencies in the connectedCallback() method of web components.
565
- * As Happy DOM doesn't have support for dynamic imports yet, this is a temporary solution to wait for imports in connectedCallback().
566
- *
567
- * @see https://github.com/capricorn86/happy-dom/issues/1442
568
- */
569
- if (result instanceof Promise) {
570
- const asyncTaskManager =
571
- this[PropertySymbol.ownerDocument][PropertySymbol.ownerWindow][
572
- PropertySymbol.asyncTaskManager
573
- ];
574
- const taskID = asyncTaskManager.startTask();
575
- result
576
- .then(() => asyncTaskManager.endTask(taskID))
577
- .catch(() => asyncTaskManager.endTask(taskID));
867
+ if (cache.elementByTagName.size) {
868
+ for (const item of cache.elementByTagName.values()) {
869
+ if (item.result) {
870
+ item.result = null;
871
+ }
872
+ }
873
+ cache.elementByTagName = new Map();
874
+ }
875
+
876
+ if (cache.elementById.size) {
877
+ for (const item of cache.elementById.values()) {
878
+ if (item.result) {
879
+ item.result = null;
578
880
  }
579
- } else if (!isConnected && this.disconnectedCallback) {
580
- this.disconnectedCallback();
581
881
  }
882
+ cache.elementById = new Map();
883
+ }
884
+
885
+ const affectsCache = this[PropertySymbol.affectsCache];
886
+
887
+ if (affectsCache.length) {
888
+ for (const item of affectsCache) {
889
+ item.result = null;
890
+ }
891
+ this[PropertySymbol.affectsCache] = [];
892
+ }
893
+
894
+ // Computed style cache is affected by all mutations.
895
+ const document = this[PropertySymbol.ownerDocument];
582
896
 
583
- for (const child of this[PropertySymbol.childNodes]) {
584
- (<Node>child)[PropertySymbol.connectToNode](this);
897
+ if (document && document[PropertySymbol.affectsComputedStyleCache].length) {
898
+ for (const item of document[PropertySymbol.affectsComputedStyleCache]) {
899
+ item.result = null;
585
900
  }
901
+ document[PropertySymbol.affectsComputedStyleCache] = [];
902
+ }
903
+ }
586
904
 
587
- // eslint-disable-next-line
588
- if ((<any>this)[PropertySymbol.shadowRoot]) {
589
- // eslint-disable-next-line
590
- (<any>this)[PropertySymbol.shadowRoot][PropertySymbol.connectToNode](this);
905
+ /**
906
+ * Called when connected to a node.
907
+ */
908
+ public [PropertySymbol.connectedToNode](): void {
909
+ const parentNode = this[PropertySymbol.parentNode];
910
+ const parent = parentNode || this[PropertySymbol.host];
911
+
912
+ if (parentNode) {
913
+ if (parentNode[PropertySymbol.styleNode] && this[PropertySymbol.tagName] !== 'STYLE') {
914
+ this[PropertySymbol.styleNode] = parentNode[PropertySymbol.styleNode];
915
+ }
916
+
917
+ if (parentNode[PropertySymbol.textAreaNode] && this[PropertySymbol.tagName] !== 'TEXTAREA') {
918
+ this[PropertySymbol.textAreaNode] = parentNode[PropertySymbol.textAreaNode];
919
+ }
920
+
921
+ if (parentNode[PropertySymbol.formNode] && this[PropertySymbol.tagName] !== 'FORM') {
922
+ this[PropertySymbol.formNode] = parentNode[PropertySymbol.formNode];
923
+ }
924
+
925
+ if (parentNode[PropertySymbol.selectNode] && this[PropertySymbol.tagName] !== 'SELECT') {
926
+ this[PropertySymbol.selectNode] = parentNode[PropertySymbol.selectNode];
591
927
  }
592
- } else if (
593
- formNode !== this[PropertySymbol.formNode] ||
594
- selectNode !== this[PropertySymbol.selectNode] ||
595
- textAreaNode !== this[PropertySymbol.textAreaNode] ||
596
- styleNode !== this[PropertySymbol.styleNode]
597
- ) {
598
- for (const child of this[PropertySymbol.childNodes]) {
599
- (<Node>child)[PropertySymbol.connectToNode](this);
928
+ }
929
+
930
+ if (!this[PropertySymbol.isConnected] && parent[PropertySymbol.isConnected]) {
931
+ this[PropertySymbol.connectedToDocument]();
932
+ } else if (this[PropertySymbol.isConnected] && !parent[PropertySymbol.isConnected]) {
933
+ this[PropertySymbol.disconnectedFromDocument]();
934
+ }
935
+
936
+ const childNodes = this[PropertySymbol.nodeArray];
937
+ for (let i = 0, max = childNodes.length; i < max; i++) {
938
+ childNodes[i][PropertySymbol.connectedToNode]();
939
+ }
940
+
941
+ // eslint-disable-next-line
942
+ if ((<any>this)[PropertySymbol.shadowRoot]) {
943
+ // eslint-disable-next-line
944
+ (<any>this)[PropertySymbol.shadowRoot][PropertySymbol.connectedToNode]();
945
+ }
946
+ }
947
+
948
+ /**
949
+ * Called when disconnected from a node.
950
+ */
951
+ public [PropertySymbol.disconnectedFromNode](): void {
952
+ if (this[PropertySymbol.isConnected]) {
953
+ this[PropertySymbol.disconnectedFromDocument]();
954
+ }
955
+
956
+ if (this[PropertySymbol.tagName] !== 'STYLE') {
957
+ this[PropertySymbol.styleNode] = null;
958
+ }
959
+
960
+ if (this[PropertySymbol.tagName] !== 'TEXTAREA') {
961
+ this[PropertySymbol.textAreaNode] = null;
962
+ }
963
+
964
+ if (this[PropertySymbol.tagName] !== 'FORM') {
965
+ this[PropertySymbol.formNode] = null;
966
+ }
967
+
968
+ if (this[PropertySymbol.tagName] !== 'SELECT') {
969
+ this[PropertySymbol.selectNode] = null;
970
+ }
971
+
972
+ const childNodes = this[PropertySymbol.nodeArray];
973
+ for (let i = 0, max = childNodes.length; i < max; i++) {
974
+ childNodes[i][PropertySymbol.disconnectedFromNode]();
975
+ }
976
+
977
+ // eslint-disable-next-line
978
+ if ((<any>this)[PropertySymbol.shadowRoot]) {
979
+ // eslint-disable-next-line
980
+ (<any>this)[PropertySymbol.shadowRoot][PropertySymbol.disconnectedFromNode]();
981
+ }
982
+ }
983
+
984
+ /**
985
+ * Called when connected to document.
986
+ */
987
+ public [PropertySymbol.connectedToDocument](): void {
988
+ this[PropertySymbol.isConnected] = true;
989
+
990
+ if (this[PropertySymbol.nodeType] !== NodeTypeEnum.documentFragmentNode) {
991
+ this[PropertySymbol.rootNode] = this[PropertySymbol.parentNode][PropertySymbol.rootNode];
992
+ }
993
+
994
+ // eslint-disable-next-line
995
+ if ((<any>this)[PropertySymbol.shadowRoot]) {
996
+ // eslint-disable-next-line
997
+ (<any>this)[PropertySymbol.shadowRoot][PropertySymbol.connectedToDocument]();
998
+ }
999
+
1000
+ if (this.connectedCallback) {
1001
+ const result = <void | Promise<void>>this.connectedCallback();
1002
+
1003
+ /**
1004
+ * It is common to import dependencies in the connectedCallback() method of web components.
1005
+ * As Happy DOM doesn't have support for dynamic imports yet, this is a temporary solution to wait for imports in connectedCallback().
1006
+ *
1007
+ * @see https://github.com/capricorn86/happy-dom/issues/1442
1008
+ */
1009
+ if (result instanceof Promise) {
1010
+ const asyncTaskManager =
1011
+ this[PropertySymbol.ownerDocument][PropertySymbol.ownerWindow][
1012
+ PropertySymbol.asyncTaskManager
1013
+ ];
1014
+ const taskID = asyncTaskManager.startTask();
1015
+ result
1016
+ .then(() => asyncTaskManager.endTask(taskID))
1017
+ .catch(() => asyncTaskManager.endTask(taskID));
600
1018
  }
601
1019
  }
602
1020
  }
603
1021
 
1022
+ /**
1023
+ * Called when disconnected from document.
1024
+ * @param e
1025
+ */
1026
+ public [PropertySymbol.disconnectedFromDocument](): void {
1027
+ this[PropertySymbol.isConnected] = false;
1028
+ this[PropertySymbol.rootNode] = null;
1029
+
1030
+ if (this[PropertySymbol.ownerDocument][PropertySymbol.activeElement] === <unknown>this) {
1031
+ this[PropertySymbol.ownerDocument][PropertySymbol.activeElement] = null;
1032
+ }
1033
+
1034
+ // eslint-disable-next-line
1035
+ if ((<any>this)[PropertySymbol.shadowRoot]) {
1036
+ // eslint-disable-next-line
1037
+ (<any>this)[PropertySymbol.shadowRoot][PropertySymbol.disconnectedFromDocument]();
1038
+ }
1039
+
1040
+ if (this.disconnectedCallback) {
1041
+ this.disconnectedCallback();
1042
+ }
1043
+ }
1044
+
604
1045
  /**
605
1046
  * Reports the position of its argument node relative to the node on which it is called.
606
1047
  *
@@ -650,7 +1091,9 @@ export default class Node extends EventTarget {
650
1091
  /**
651
1092
  * 5.2.1. For each attr in node2’s attribute list:
652
1093
  */
653
- for (const attr of Object.values((<Element>node2)[PropertySymbol.attributes])) {
1094
+ for (const attr of Array.from(
1095
+ (<Element>node2)[PropertySymbol.attributes][PropertySymbol.namedItems].values()
1096
+ )) {
654
1097
  /**
655
1098
  * 5.2.1.1. If attr equals attr1, then return the result of adding DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC and DOCUMENT_POSITION_PRECEDING.
656
1099
  */
@@ -747,7 +1190,7 @@ export default class Node extends EventTarget {
747
1190
 
748
1191
  const computeNodeIndexes = (nodes: Node[]): void => {
749
1192
  for (const childNode of nodes) {
750
- computeNodeIndexes((<Node>childNode)[PropertySymbol.childNodes]);
1193
+ computeNodeIndexes(childNode[PropertySymbol.nodeArray]);
751
1194
 
752
1195
  if (childNode === node2Node) {
753
1196
  node2Index = indexes;
@@ -763,7 +1206,7 @@ export default class Node extends EventTarget {
763
1206
  }
764
1207
  };
765
1208
 
766
- computeNodeIndexes((<Node>commonAncestor)[PropertySymbol.childNodes]);
1209
+ computeNodeIndexes(commonAncestor[PropertySymbol.nodeArray]);
767
1210
 
768
1211
  /**
769
1212
  * 9. If node1 is preceding node2, then return DOCUMENT_POSITION_PRECEDING.