happy-dom 13.0.6 → 13.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (615) hide show
  1. package/cjs/PropertySymbol.cjs +69 -2
  2. package/cjs/PropertySymbol.cjs.map +1 -1
  3. package/cjs/PropertySymbol.d.ts +67 -1
  4. package/cjs/PropertySymbol.d.ts.map +1 -1
  5. package/cjs/async-task-manager/AsyncTaskManager.cjs +11 -5
  6. package/cjs/async-task-manager/AsyncTaskManager.cjs.map +1 -1
  7. package/cjs/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
  8. package/cjs/browser/utilities/BrowserFrameNavigator.cjs +1 -1
  9. package/cjs/browser/utilities/BrowserFrameNavigator.cjs.map +1 -1
  10. package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs +17 -16
  11. package/cjs/css/declaration/AbstractCSSStyleDeclaration.cjs.map +1 -1
  12. package/cjs/css/declaration/AbstractCSSStyleDeclaration.d.ts.map +1 -1
  13. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs +43 -26
  14. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.cjs.map +1 -1
  15. package/cjs/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
  16. package/cjs/dom-implementation/DOMImplementation.cjs +6 -6
  17. package/cjs/dom-implementation/DOMImplementation.cjs.map +1 -1
  18. package/cjs/dom-parser/DOMParser.cjs +2 -2
  19. package/cjs/dom-parser/DOMParser.cjs.map +1 -1
  20. package/cjs/dom-parser/DOMParser.d.ts.map +1 -1
  21. package/cjs/event/Event.cjs +3 -3
  22. package/cjs/event/Event.cjs.map +1 -1
  23. package/cjs/event/EventTarget.cjs +4 -4
  24. package/cjs/event/EventTarget.cjs.map +1 -1
  25. package/cjs/fetch/Request.cjs +2 -1
  26. package/cjs/fetch/Request.cjs.map +1 -1
  27. package/cjs/fetch/Request.d.ts +4 -4
  28. package/cjs/fetch/Request.d.ts.map +1 -1
  29. package/cjs/form-data/FormData.cjs +7 -7
  30. package/cjs/form-data/FormData.cjs.map +1 -1
  31. package/cjs/mutation-observer/MutationObserver.cjs +3 -3
  32. package/cjs/mutation-observer/MutationObserver.cjs.map +1 -1
  33. package/cjs/named-node-map/NamedNodeMap.cjs +10 -8
  34. package/cjs/named-node-map/NamedNodeMap.cjs.map +1 -1
  35. package/cjs/named-node-map/NamedNodeMap.d.ts.map +1 -1
  36. package/cjs/nodes/attr/Attr.cjs +84 -15
  37. package/cjs/nodes/attr/Attr.cjs.map +1 -1
  38. package/cjs/nodes/attr/Attr.d.ts +40 -8
  39. package/cjs/nodes/attr/Attr.d.ts.map +1 -1
  40. package/cjs/nodes/character-data/CharacterData.cjs +2 -2
  41. package/cjs/nodes/character-data/CharacterData.cjs.map +1 -1
  42. package/cjs/nodes/child-node/ChildNodeUtility.cjs +8 -8
  43. package/cjs/nodes/child-node/ChildNodeUtility.cjs.map +1 -1
  44. package/cjs/nodes/child-node/NonDocumentChildNodeUtility.cjs +27 -3
  45. package/cjs/nodes/child-node/NonDocumentChildNodeUtility.cjs.map +1 -1
  46. package/cjs/nodes/child-node/NonDocumentChildNodeUtility.d.ts.map +1 -1
  47. package/cjs/nodes/comment/Comment.cjs +28 -2
  48. package/cjs/nodes/comment/Comment.cjs.map +1 -1
  49. package/cjs/nodes/comment/Comment.d.ts +3 -1
  50. package/cjs/nodes/comment/Comment.d.ts.map +1 -1
  51. package/cjs/nodes/document/Document.cjs +95 -41
  52. package/cjs/nodes/document/Document.cjs.map +1 -1
  53. package/cjs/nodes/document/Document.d.ts +45 -10
  54. package/cjs/nodes/document/Document.d.ts.map +1 -1
  55. package/cjs/nodes/document/IDocument.d.ts +2 -1
  56. package/cjs/nodes/document/IDocument.d.ts.map +1 -1
  57. package/cjs/nodes/document-fragment/DocumentFragment.cjs +8 -6
  58. package/cjs/nodes/document-fragment/DocumentFragment.cjs.map +1 -1
  59. package/cjs/nodes/document-fragment/DocumentFragment.d.ts +2 -1
  60. package/cjs/nodes/document-fragment/DocumentFragment.d.ts.map +1 -1
  61. package/cjs/nodes/document-type/DocumentType.cjs +58 -7
  62. package/cjs/nodes/document-type/DocumentType.cjs.map +1 -1
  63. package/cjs/nodes/document-type/DocumentType.d.ts +24 -4
  64. package/cjs/nodes/document-type/DocumentType.d.ts.map +1 -1
  65. package/cjs/nodes/element/Dataset.cjs +14 -14
  66. package/cjs/nodes/element/Dataset.cjs.map +1 -1
  67. package/cjs/nodes/element/Dataset.d.ts +1 -1
  68. package/cjs/nodes/element/Dataset.d.ts.map +1 -1
  69. package/cjs/nodes/element/Element.cjs +142 -55
  70. package/cjs/nodes/element/Element.cjs.map +1 -1
  71. package/cjs/nodes/element/Element.d.ts +77 -11
  72. package/cjs/nodes/element/Element.d.ts.map +1 -1
  73. package/cjs/nodes/element/ElementNamedNodeMap.cjs +33 -30
  74. package/cjs/nodes/element/ElementNamedNodeMap.cjs.map +1 -1
  75. package/cjs/nodes/element/ElementNamedNodeMap.d.ts.map +1 -1
  76. package/cjs/nodes/element/ElementUtility.cjs +19 -19
  77. package/cjs/nodes/element/ElementUtility.cjs.map +1 -1
  78. package/cjs/nodes/element/ElementUtility.d.ts.map +1 -1
  79. package/cjs/nodes/element/IElement.d.ts +3 -3
  80. package/cjs/nodes/element/IElement.d.ts.map +1 -1
  81. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs +6 -6
  82. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.cjs.map +1 -1
  83. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.d.ts +1 -1
  84. package/cjs/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
  85. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.cjs +7 -5
  86. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.cjs.map +1 -1
  87. package/cjs/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts.map +1 -1
  88. package/cjs/nodes/html-base-element/HTMLBaseElement.cjs +25 -1
  89. package/cjs/nodes/html-base-element/HTMLBaseElement.cjs.map +1 -1
  90. package/cjs/nodes/html-base-element/HTMLBaseElement.d.ts.map +1 -1
  91. package/cjs/nodes/html-button-element/HTMLButtonElement.cjs +27 -8
  92. package/cjs/nodes/html-button-element/HTMLButtonElement.cjs.map +1 -1
  93. package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts +16 -3
  94. package/cjs/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
  95. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.cjs +7 -7
  96. package/cjs/nodes/html-button-element/HTMLButtonElementNamedNodeMap.cjs.map +1 -1
  97. package/cjs/nodes/html-dialog-element/HTMLDialogElement.cjs +44 -1
  98. package/cjs/nodes/html-dialog-element/HTMLDialogElement.cjs.map +1 -1
  99. package/cjs/nodes/html-dialog-element/HTMLDialogElement.d.ts +14 -1
  100. package/cjs/nodes/html-dialog-element/HTMLDialogElement.d.ts.map +1 -1
  101. package/cjs/nodes/html-document/HTMLDocument.cjs +25 -1
  102. package/cjs/nodes/html-document/HTMLDocument.cjs.map +1 -1
  103. package/cjs/nodes/html-document/HTMLDocument.d.ts.map +1 -1
  104. package/cjs/nodes/html-element/HTMLElement.cjs +137 -32
  105. package/cjs/nodes/html-element/HTMLElement.cjs.map +1 -1
  106. package/cjs/nodes/html-element/HTMLElement.d.ts +91 -14
  107. package/cjs/nodes/html-element/HTMLElement.d.ts.map +1 -1
  108. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.cjs +4 -3
  109. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.cjs.map +1 -1
  110. package/cjs/nodes/html-element/HTMLElementNamedNodeMap.d.ts.map +1 -1
  111. package/cjs/nodes/html-element/HTMLElementUtility.cjs +12 -10
  112. package/cjs/nodes/html-element/HTMLElementUtility.cjs.map +1 -1
  113. package/cjs/nodes/html-element/HTMLElementUtility.d.ts.map +1 -1
  114. package/cjs/nodes/html-element/IHTMLElement.d.ts +3 -0
  115. package/cjs/nodes/html-element/IHTMLElement.d.ts.map +1 -1
  116. package/cjs/nodes/html-form-element/HTMLFormElement.cjs +62 -30
  117. package/cjs/nodes/html-form-element/HTMLFormElement.cjs.map +1 -1
  118. package/cjs/nodes/html-form-element/HTMLFormElement.d.ts +22 -3
  119. package/cjs/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
  120. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs +5 -5
  121. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.cjs.map +1 -1
  122. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts +1 -1
  123. package/cjs/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
  124. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.cjs +27 -1
  125. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.cjs.map +1 -1
  126. package/cjs/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts.map +1 -1
  127. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.cjs +2 -2
  128. package/cjs/nodes/html-iframe-element/HTMLIFrameElementPageLoader.cjs.map +1 -1
  129. package/cjs/nodes/html-image-element/HTMLImageElement.cjs +128 -26
  130. package/cjs/nodes/html-image-element/HTMLImageElement.cjs.map +1 -1
  131. package/cjs/nodes/html-image-element/HTMLImageElement.d.ts +76 -21
  132. package/cjs/nodes/html-image-element/HTMLImageElement.d.ts.map +1 -1
  133. package/cjs/nodes/html-input-element/HTMLInputElement.cjs +112 -27
  134. package/cjs/nodes/html-input-element/HTMLInputElement.cjs.map +1 -1
  135. package/cjs/nodes/html-input-element/HTMLInputElement.d.ts +67 -10
  136. package/cjs/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
  137. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.cjs +7 -7
  138. package/cjs/nodes/html-input-element/HTMLInputElementNamedNodeMap.cjs.map +1 -1
  139. package/cjs/nodes/html-label-element/HTMLLabelElement.cjs +1 -1
  140. package/cjs/nodes/html-label-element/HTMLLabelElement.cjs.map +1 -1
  141. package/cjs/nodes/html-label-element/HTMLLabelElementUtility.cjs +26 -2
  142. package/cjs/nodes/html-label-element/HTMLLabelElementUtility.cjs.map +1 -1
  143. package/cjs/nodes/html-label-element/HTMLLabelElementUtility.d.ts.map +1 -1
  144. package/cjs/nodes/html-link-element/HTMLLinkElement.cjs +15 -8
  145. package/cjs/nodes/html-link-element/HTMLLinkElement.cjs.map +1 -1
  146. package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts +6 -2
  147. package/cjs/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
  148. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.cjs +7 -6
  149. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.cjs.map +1 -1
  150. package/cjs/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts.map +1 -1
  151. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.cjs +8 -5
  152. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.cjs.map +1 -1
  153. package/cjs/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts.map +1 -1
  154. package/cjs/nodes/html-media-element/HTMLMediaElement.cjs +154 -53
  155. package/cjs/nodes/html-media-element/HTMLMediaElement.cjs.map +1 -1
  156. package/cjs/nodes/html-media-element/HTMLMediaElement.d.ts +86 -12
  157. package/cjs/nodes/html-media-element/HTMLMediaElement.d.ts.map +1 -1
  158. package/cjs/nodes/html-option-element/HTMLOptionElement.cjs +4 -4
  159. package/cjs/nodes/html-option-element/HTMLOptionElement.cjs.map +1 -1
  160. package/cjs/nodes/html-option-element/HTMLOptionElement.d.ts +1 -1
  161. package/cjs/nodes/html-option-element/HTMLOptionElement.d.ts.map +1 -1
  162. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.cjs +3 -3
  163. package/cjs/nodes/html-option-element/HTMLOptionElementNamedNodeMap.cjs.map +1 -1
  164. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs +12 -11
  165. package/cjs/nodes/html-script-element/HTMLScriptElement.cjs.map +1 -1
  166. package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts +1 -1
  167. package/cjs/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  168. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.cjs +4 -4
  169. package/cjs/nodes/html-script-element/HTMLScriptElementNamedNodeMap.cjs.map +1 -1
  170. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.cjs +8 -8
  171. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.cjs.map +1 -1
  172. package/cjs/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts.map +1 -1
  173. package/cjs/nodes/html-select-element/HTMLSelectElement.cjs +63 -32
  174. package/cjs/nodes/html-select-element/HTMLSelectElement.cjs.map +1 -1
  175. package/cjs/nodes/html-select-element/HTMLSelectElement.d.ts +30 -5
  176. package/cjs/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
  177. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.cjs +7 -7
  178. package/cjs/nodes/html-select-element/HTMLSelectElementNamedNodeMap.cjs.map +1 -1
  179. package/cjs/nodes/html-style-element/HTMLStyleElement.cjs +6 -6
  180. package/cjs/nodes/html-style-element/HTMLStyleElement.cjs.map +1 -1
  181. package/cjs/nodes/html-style-element/HTMLStyleElement.d.ts +1 -1
  182. package/cjs/nodes/html-style-element/HTMLStyleElement.d.ts.map +1 -1
  183. package/cjs/nodes/html-template-element/HTMLTemplateElement.cjs +27 -12
  184. package/cjs/nodes/html-template-element/HTMLTemplateElement.cjs.map +1 -1
  185. package/cjs/nodes/html-template-element/HTMLTemplateElement.d.ts +8 -1
  186. package/cjs/nodes/html-template-element/HTMLTemplateElement.d.ts.map +1 -1
  187. package/cjs/nodes/html-template-element/IHTMLTemplateElement.d.ts +1 -1
  188. package/cjs/nodes/html-template-element/IHTMLTemplateElement.d.ts.map +1 -1
  189. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs +27 -9
  190. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.cjs.map +1 -1
  191. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +16 -3
  192. package/cjs/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
  193. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.cjs +7 -7
  194. package/cjs/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.cjs.map +1 -1
  195. package/cjs/nodes/html-unknown-element/HTMLUnknownElement.cjs +24 -17
  196. package/cjs/nodes/html-unknown-element/HTMLUnknownElement.cjs.map +1 -1
  197. package/cjs/nodes/html-unknown-element/HTMLUnknownElement.d.ts.map +1 -1
  198. package/cjs/nodes/node/INode.d.ts +2 -2
  199. package/cjs/nodes/node/INode.d.ts.map +1 -1
  200. package/cjs/nodes/node/Node.cjs +95 -56
  201. package/cjs/nodes/node/Node.cjs.map +1 -1
  202. package/cjs/nodes/node/Node.d.ts +44 -20
  203. package/cjs/nodes/node/Node.d.ts.map +1 -1
  204. package/cjs/nodes/node/NodeUtility.cjs +37 -37
  205. package/cjs/nodes/node/NodeUtility.cjs.map +1 -1
  206. package/cjs/nodes/node/NodeUtility.d.ts.map +1 -1
  207. package/cjs/nodes/parent-node/ParentNodeUtility.cjs +8 -5
  208. package/cjs/nodes/parent-node/ParentNodeUtility.cjs.map +1 -1
  209. package/cjs/nodes/parent-node/ParentNodeUtility.d.ts.map +1 -1
  210. package/cjs/nodes/processing-instruction/ProcessingInstruction.cjs +35 -1
  211. package/cjs/nodes/processing-instruction/ProcessingInstruction.cjs.map +1 -1
  212. package/cjs/nodes/processing-instruction/ProcessingInstruction.d.ts +9 -2
  213. package/cjs/nodes/processing-instruction/ProcessingInstruction.d.ts.map +1 -1
  214. package/cjs/nodes/shadow-root/IShadowRoot.d.ts +2 -0
  215. package/cjs/nodes/shadow-root/IShadowRoot.d.ts.map +1 -1
  216. package/cjs/nodes/shadow-root/ShadowRoot.cjs +44 -7
  217. package/cjs/nodes/shadow-root/ShadowRoot.cjs.map +1 -1
  218. package/cjs/nodes/shadow-root/ShadowRoot.d.ts +28 -3
  219. package/cjs/nodes/shadow-root/ShadowRoot.d.ts.map +1 -1
  220. package/cjs/nodes/svg-element/SVGElement.cjs +7 -6
  221. package/cjs/nodes/svg-element/SVGElement.cjs.map +1 -1
  222. package/cjs/nodes/svg-element/SVGElement.d.ts +2 -2
  223. package/cjs/nodes/svg-element/SVGElement.d.ts.map +1 -1
  224. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.cjs +4 -3
  225. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.cjs.map +1 -1
  226. package/cjs/nodes/svg-element/SVGElementNamedNodeMap.d.ts.map +1 -1
  227. package/cjs/nodes/text/Text.cjs +7 -6
  228. package/cjs/nodes/text/Text.cjs.map +1 -1
  229. package/cjs/nodes/text/Text.d.ts +2 -1
  230. package/cjs/nodes/text/Text.d.ts.map +1 -1
  231. package/cjs/query-selector/QuerySelector.cjs +2 -2
  232. package/cjs/query-selector/QuerySelector.cjs.map +1 -1
  233. package/cjs/query-selector/SelectorItem.cjs +16 -16
  234. package/cjs/query-selector/SelectorItem.cjs.map +1 -1
  235. package/cjs/query-selector/SelectorItem.d.ts.map +1 -1
  236. package/cjs/range/Range.cjs +91 -79
  237. package/cjs/range/Range.cjs.map +1 -1
  238. package/cjs/range/Range.d.ts.map +1 -1
  239. package/cjs/range/RangeUtility.cjs +5 -4
  240. package/cjs/range/RangeUtility.cjs.map +1 -1
  241. package/cjs/range/RangeUtility.d.ts.map +1 -1
  242. package/cjs/selection/Selection.cjs +15 -15
  243. package/cjs/selection/Selection.cjs.map +1 -1
  244. package/cjs/tree-walker/TreeWalker.cjs +12 -6
  245. package/cjs/tree-walker/TreeWalker.cjs.map +1 -1
  246. package/cjs/tree-walker/TreeWalker.d.ts.map +1 -1
  247. package/cjs/validity-state/ValidityState.cjs +1 -1
  248. package/cjs/validity-state/ValidityState.cjs.map +1 -1
  249. package/cjs/version.cjs +1 -1
  250. package/cjs/window/BrowserWindow.cjs +20 -26
  251. package/cjs/window/BrowserWindow.cjs.map +1 -1
  252. package/cjs/window/BrowserWindow.d.ts.map +1 -1
  253. package/cjs/window/WindowErrorUtility.cjs +1 -1
  254. package/cjs/window/WindowErrorUtility.cjs.map +1 -1
  255. package/cjs/window/WindowErrorUtility.d.ts.map +1 -1
  256. package/cjs/xml-http-request/XMLHttpRequest.cjs +1 -1
  257. package/cjs/xml-http-request/XMLHttpRequest.cjs.map +1 -1
  258. package/cjs/xml-parser/XMLParser.cjs +16 -12
  259. package/cjs/xml-parser/XMLParser.cjs.map +1 -1
  260. package/cjs/xml-parser/XMLParser.d.ts.map +1 -1
  261. package/cjs/xml-serializer/XMLSerializer.cjs +36 -35
  262. package/cjs/xml-serializer/XMLSerializer.cjs.map +1 -1
  263. package/cjs/xml-serializer/XMLSerializer.d.ts +8 -1
  264. package/cjs/xml-serializer/XMLSerializer.d.ts.map +1 -1
  265. package/lib/PropertySymbol.d.ts +67 -1
  266. package/lib/PropertySymbol.d.ts.map +1 -1
  267. package/lib/PropertySymbol.js +67 -1
  268. package/lib/PropertySymbol.js.map +1 -1
  269. package/lib/async-task-manager/AsyncTaskManager.d.ts.map +1 -1
  270. package/lib/async-task-manager/AsyncTaskManager.js +11 -5
  271. package/lib/async-task-manager/AsyncTaskManager.js.map +1 -1
  272. package/lib/browser/utilities/BrowserFrameNavigator.js +1 -1
  273. package/lib/browser/utilities/BrowserFrameNavigator.js.map +1 -1
  274. package/lib/css/declaration/AbstractCSSStyleDeclaration.d.ts.map +1 -1
  275. package/lib/css/declaration/AbstractCSSStyleDeclaration.js +17 -16
  276. package/lib/css/declaration/AbstractCSSStyleDeclaration.js.map +1 -1
  277. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.d.ts.map +1 -1
  278. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js +43 -26
  279. package/lib/css/declaration/element-style/CSSStyleDeclarationElementStyle.js.map +1 -1
  280. package/lib/dom-implementation/DOMImplementation.js +6 -6
  281. package/lib/dom-implementation/DOMImplementation.js.map +1 -1
  282. package/lib/dom-parser/DOMParser.d.ts.map +1 -1
  283. package/lib/dom-parser/DOMParser.js +2 -2
  284. package/lib/dom-parser/DOMParser.js.map +1 -1
  285. package/lib/event/Event.js +3 -3
  286. package/lib/event/Event.js.map +1 -1
  287. package/lib/event/EventTarget.js +4 -4
  288. package/lib/event/EventTarget.js.map +1 -1
  289. package/lib/fetch/Request.d.ts +4 -4
  290. package/lib/fetch/Request.d.ts.map +1 -1
  291. package/lib/fetch/Request.js +2 -1
  292. package/lib/fetch/Request.js.map +1 -1
  293. package/lib/form-data/FormData.js +7 -7
  294. package/lib/form-data/FormData.js.map +1 -1
  295. package/lib/mutation-observer/MutationObserver.js +3 -3
  296. package/lib/mutation-observer/MutationObserver.js.map +1 -1
  297. package/lib/named-node-map/NamedNodeMap.d.ts.map +1 -1
  298. package/lib/named-node-map/NamedNodeMap.js +10 -8
  299. package/lib/named-node-map/NamedNodeMap.js.map +1 -1
  300. package/lib/nodes/attr/Attr.d.ts +40 -8
  301. package/lib/nodes/attr/Attr.d.ts.map +1 -1
  302. package/lib/nodes/attr/Attr.js +63 -16
  303. package/lib/nodes/attr/Attr.js.map +1 -1
  304. package/lib/nodes/character-data/CharacterData.js +2 -2
  305. package/lib/nodes/character-data/CharacterData.js.map +1 -1
  306. package/lib/nodes/child-node/ChildNodeUtility.js +8 -8
  307. package/lib/nodes/child-node/ChildNodeUtility.js.map +1 -1
  308. package/lib/nodes/child-node/NonDocumentChildNodeUtility.d.ts.map +1 -1
  309. package/lib/nodes/child-node/NonDocumentChildNodeUtility.js +4 -3
  310. package/lib/nodes/child-node/NonDocumentChildNodeUtility.js.map +1 -1
  311. package/lib/nodes/comment/Comment.d.ts +3 -1
  312. package/lib/nodes/comment/Comment.d.ts.map +1 -1
  313. package/lib/nodes/comment/Comment.js +7 -3
  314. package/lib/nodes/comment/Comment.js.map +1 -1
  315. package/lib/nodes/document/Document.d.ts +45 -10
  316. package/lib/nodes/document/Document.d.ts.map +1 -1
  317. package/lib/nodes/document/Document.js +95 -41
  318. package/lib/nodes/document/Document.js.map +1 -1
  319. package/lib/nodes/document/IDocument.d.ts +2 -1
  320. package/lib/nodes/document/IDocument.d.ts.map +1 -1
  321. package/lib/nodes/document-fragment/DocumentFragment.d.ts +2 -1
  322. package/lib/nodes/document-fragment/DocumentFragment.d.ts.map +1 -1
  323. package/lib/nodes/document-fragment/DocumentFragment.js +8 -6
  324. package/lib/nodes/document-fragment/DocumentFragment.js.map +1 -1
  325. package/lib/nodes/document-type/DocumentType.d.ts +24 -4
  326. package/lib/nodes/document-type/DocumentType.d.ts.map +1 -1
  327. package/lib/nodes/document-type/DocumentType.js +37 -8
  328. package/lib/nodes/document-type/DocumentType.js.map +1 -1
  329. package/lib/nodes/element/Dataset.d.ts +1 -1
  330. package/lib/nodes/element/Dataset.d.ts.map +1 -1
  331. package/lib/nodes/element/Dataset.js +14 -14
  332. package/lib/nodes/element/Dataset.js.map +1 -1
  333. package/lib/nodes/element/Element.d.ts +77 -11
  334. package/lib/nodes/element/Element.d.ts.map +1 -1
  335. package/lib/nodes/element/Element.js +142 -55
  336. package/lib/nodes/element/Element.js.map +1 -1
  337. package/lib/nodes/element/ElementNamedNodeMap.d.ts.map +1 -1
  338. package/lib/nodes/element/ElementNamedNodeMap.js +33 -30
  339. package/lib/nodes/element/ElementNamedNodeMap.js.map +1 -1
  340. package/lib/nodes/element/ElementUtility.d.ts.map +1 -1
  341. package/lib/nodes/element/ElementUtility.js +19 -19
  342. package/lib/nodes/element/ElementUtility.js.map +1 -1
  343. package/lib/nodes/element/IElement.d.ts +3 -3
  344. package/lib/nodes/element/IElement.d.ts.map +1 -1
  345. package/lib/nodes/html-anchor-element/HTMLAnchorElement.d.ts +1 -1
  346. package/lib/nodes/html-anchor-element/HTMLAnchorElement.d.ts.map +1 -1
  347. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js +6 -6
  348. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js.map +1 -1
  349. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.d.ts.map +1 -1
  350. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.js +7 -5
  351. package/lib/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.js.map +1 -1
  352. package/lib/nodes/html-base-element/HTMLBaseElement.d.ts.map +1 -1
  353. package/lib/nodes/html-base-element/HTMLBaseElement.js +2 -1
  354. package/lib/nodes/html-base-element/HTMLBaseElement.js.map +1 -1
  355. package/lib/nodes/html-button-element/HTMLButtonElement.d.ts +16 -3
  356. package/lib/nodes/html-button-element/HTMLButtonElement.d.ts.map +1 -1
  357. package/lib/nodes/html-button-element/HTMLButtonElement.js +27 -8
  358. package/lib/nodes/html-button-element/HTMLButtonElement.js.map +1 -1
  359. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.js +7 -7
  360. package/lib/nodes/html-button-element/HTMLButtonElementNamedNodeMap.js.map +1 -1
  361. package/lib/nodes/html-dialog-element/HTMLDialogElement.d.ts +14 -1
  362. package/lib/nodes/html-dialog-element/HTMLDialogElement.d.ts.map +1 -1
  363. package/lib/nodes/html-dialog-element/HTMLDialogElement.js +23 -2
  364. package/lib/nodes/html-dialog-element/HTMLDialogElement.js.map +1 -1
  365. package/lib/nodes/html-document/HTMLDocument.d.ts.map +1 -1
  366. package/lib/nodes/html-document/HTMLDocument.js +2 -1
  367. package/lib/nodes/html-document/HTMLDocument.js.map +1 -1
  368. package/lib/nodes/html-element/HTMLElement.d.ts +91 -14
  369. package/lib/nodes/html-element/HTMLElement.d.ts.map +1 -1
  370. package/lib/nodes/html-element/HTMLElement.js +137 -32
  371. package/lib/nodes/html-element/HTMLElement.js.map +1 -1
  372. package/lib/nodes/html-element/HTMLElementNamedNodeMap.d.ts.map +1 -1
  373. package/lib/nodes/html-element/HTMLElementNamedNodeMap.js +4 -3
  374. package/lib/nodes/html-element/HTMLElementNamedNodeMap.js.map +1 -1
  375. package/lib/nodes/html-element/HTMLElementUtility.d.ts.map +1 -1
  376. package/lib/nodes/html-element/HTMLElementUtility.js +12 -10
  377. package/lib/nodes/html-element/HTMLElementUtility.js.map +1 -1
  378. package/lib/nodes/html-element/IHTMLElement.d.ts +3 -0
  379. package/lib/nodes/html-element/IHTMLElement.d.ts.map +1 -1
  380. package/lib/nodes/html-form-element/HTMLFormElement.d.ts +22 -3
  381. package/lib/nodes/html-form-element/HTMLFormElement.d.ts.map +1 -1
  382. package/lib/nodes/html-form-element/HTMLFormElement.js +62 -30
  383. package/lib/nodes/html-form-element/HTMLFormElement.js.map +1 -1
  384. package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts +1 -1
  385. package/lib/nodes/html-iframe-element/HTMLIFrameElement.d.ts.map +1 -1
  386. package/lib/nodes/html-iframe-element/HTMLIFrameElement.js +5 -5
  387. package/lib/nodes/html-iframe-element/HTMLIFrameElement.js.map +1 -1
  388. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.d.ts.map +1 -1
  389. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.js +4 -1
  390. package/lib/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.js.map +1 -1
  391. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.js +2 -2
  392. package/lib/nodes/html-iframe-element/HTMLIFrameElementPageLoader.js.map +1 -1
  393. package/lib/nodes/html-image-element/HTMLImageElement.d.ts +76 -21
  394. package/lib/nodes/html-image-element/HTMLImageElement.d.ts.map +1 -1
  395. package/lib/nodes/html-image-element/HTMLImageElement.js +107 -27
  396. package/lib/nodes/html-image-element/HTMLImageElement.js.map +1 -1
  397. package/lib/nodes/html-input-element/HTMLInputElement.d.ts +67 -10
  398. package/lib/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
  399. package/lib/nodes/html-input-element/HTMLInputElement.js +112 -27
  400. package/lib/nodes/html-input-element/HTMLInputElement.js.map +1 -1
  401. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.js +7 -7
  402. package/lib/nodes/html-input-element/HTMLInputElementNamedNodeMap.js.map +1 -1
  403. package/lib/nodes/html-label-element/HTMLLabelElement.js +1 -1
  404. package/lib/nodes/html-label-element/HTMLLabelElement.js.map +1 -1
  405. package/lib/nodes/html-label-element/HTMLLabelElementUtility.d.ts.map +1 -1
  406. package/lib/nodes/html-label-element/HTMLLabelElementUtility.js +3 -2
  407. package/lib/nodes/html-label-element/HTMLLabelElementUtility.js.map +1 -1
  408. package/lib/nodes/html-link-element/HTMLLinkElement.d.ts +6 -2
  409. package/lib/nodes/html-link-element/HTMLLinkElement.d.ts.map +1 -1
  410. package/lib/nodes/html-link-element/HTMLLinkElement.js +15 -8
  411. package/lib/nodes/html-link-element/HTMLLinkElement.js.map +1 -1
  412. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.d.ts.map +1 -1
  413. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.js +7 -6
  414. package/lib/nodes/html-link-element/HTMLLinkElementNamedNodeMap.js.map +1 -1
  415. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.d.ts.map +1 -1
  416. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.js +8 -5
  417. package/lib/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.js.map +1 -1
  418. package/lib/nodes/html-media-element/HTMLMediaElement.d.ts +86 -12
  419. package/lib/nodes/html-media-element/HTMLMediaElement.d.ts.map +1 -1
  420. package/lib/nodes/html-media-element/HTMLMediaElement.js +132 -54
  421. package/lib/nodes/html-media-element/HTMLMediaElement.js.map +1 -1
  422. package/lib/nodes/html-option-element/HTMLOptionElement.d.ts +1 -1
  423. package/lib/nodes/html-option-element/HTMLOptionElement.d.ts.map +1 -1
  424. package/lib/nodes/html-option-element/HTMLOptionElement.js +4 -4
  425. package/lib/nodes/html-option-element/HTMLOptionElement.js.map +1 -1
  426. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.js +3 -3
  427. package/lib/nodes/html-option-element/HTMLOptionElementNamedNodeMap.js.map +1 -1
  428. package/lib/nodes/html-script-element/HTMLScriptElement.d.ts +1 -1
  429. package/lib/nodes/html-script-element/HTMLScriptElement.d.ts.map +1 -1
  430. package/lib/nodes/html-script-element/HTMLScriptElement.js +12 -11
  431. package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
  432. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.js +4 -4
  433. package/lib/nodes/html-script-element/HTMLScriptElementNamedNodeMap.js.map +1 -1
  434. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.d.ts.map +1 -1
  435. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.js +8 -8
  436. package/lib/nodes/html-script-element/HTMLScriptElementScriptLoader.js.map +1 -1
  437. package/lib/nodes/html-select-element/HTMLSelectElement.d.ts +30 -5
  438. package/lib/nodes/html-select-element/HTMLSelectElement.d.ts.map +1 -1
  439. package/lib/nodes/html-select-element/HTMLSelectElement.js +63 -32
  440. package/lib/nodes/html-select-element/HTMLSelectElement.js.map +1 -1
  441. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.js +7 -7
  442. package/lib/nodes/html-select-element/HTMLSelectElementNamedNodeMap.js.map +1 -1
  443. package/lib/nodes/html-style-element/HTMLStyleElement.d.ts +1 -1
  444. package/lib/nodes/html-style-element/HTMLStyleElement.d.ts.map +1 -1
  445. package/lib/nodes/html-style-element/HTMLStyleElement.js +6 -6
  446. package/lib/nodes/html-style-element/HTMLStyleElement.js.map +1 -1
  447. package/lib/nodes/html-template-element/HTMLTemplateElement.d.ts +8 -1
  448. package/lib/nodes/html-template-element/HTMLTemplateElement.d.ts.map +1 -1
  449. package/lib/nodes/html-template-element/HTMLTemplateElement.js +29 -13
  450. package/lib/nodes/html-template-element/HTMLTemplateElement.js.map +1 -1
  451. package/lib/nodes/html-template-element/IHTMLTemplateElement.d.ts +1 -1
  452. package/lib/nodes/html-template-element/IHTMLTemplateElement.d.ts.map +1 -1
  453. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +16 -3
  454. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts.map +1 -1
  455. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js +27 -9
  456. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js.map +1 -1
  457. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.js +7 -7
  458. package/lib/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.js.map +1 -1
  459. package/lib/nodes/html-unknown-element/HTMLUnknownElement.d.ts.map +1 -1
  460. package/lib/nodes/html-unknown-element/HTMLUnknownElement.js +24 -17
  461. package/lib/nodes/html-unknown-element/HTMLUnknownElement.js.map +1 -1
  462. package/lib/nodes/node/INode.d.ts +2 -2
  463. package/lib/nodes/node/INode.d.ts.map +1 -1
  464. package/lib/nodes/node/Node.d.ts +44 -20
  465. package/lib/nodes/node/Node.d.ts.map +1 -1
  466. package/lib/nodes/node/Node.js +95 -56
  467. package/lib/nodes/node/Node.js.map +1 -1
  468. package/lib/nodes/node/NodeUtility.d.ts.map +1 -1
  469. package/lib/nodes/node/NodeUtility.js +37 -37
  470. package/lib/nodes/node/NodeUtility.js.map +1 -1
  471. package/lib/nodes/parent-node/ParentNodeUtility.d.ts.map +1 -1
  472. package/lib/nodes/parent-node/ParentNodeUtility.js +8 -5
  473. package/lib/nodes/parent-node/ParentNodeUtility.js.map +1 -1
  474. package/lib/nodes/processing-instruction/ProcessingInstruction.d.ts +9 -2
  475. package/lib/nodes/processing-instruction/ProcessingInstruction.d.ts.map +1 -1
  476. package/lib/nodes/processing-instruction/ProcessingInstruction.js +14 -2
  477. package/lib/nodes/processing-instruction/ProcessingInstruction.js.map +1 -1
  478. package/lib/nodes/shadow-root/IShadowRoot.d.ts +2 -0
  479. package/lib/nodes/shadow-root/IShadowRoot.d.ts.map +1 -1
  480. package/lib/nodes/shadow-root/ShadowRoot.d.ts +28 -3
  481. package/lib/nodes/shadow-root/ShadowRoot.d.ts.map +1 -1
  482. package/lib/nodes/shadow-root/ShadowRoot.js +46 -8
  483. package/lib/nodes/shadow-root/ShadowRoot.js.map +1 -1
  484. package/lib/nodes/svg-element/SVGElement.d.ts +2 -2
  485. package/lib/nodes/svg-element/SVGElement.d.ts.map +1 -1
  486. package/lib/nodes/svg-element/SVGElement.js +7 -6
  487. package/lib/nodes/svg-element/SVGElement.js.map +1 -1
  488. package/lib/nodes/svg-element/SVGElementNamedNodeMap.d.ts.map +1 -1
  489. package/lib/nodes/svg-element/SVGElementNamedNodeMap.js +4 -3
  490. package/lib/nodes/svg-element/SVGElementNamedNodeMap.js.map +1 -1
  491. package/lib/nodes/text/Text.d.ts +2 -1
  492. package/lib/nodes/text/Text.d.ts.map +1 -1
  493. package/lib/nodes/text/Text.js +7 -6
  494. package/lib/nodes/text/Text.js.map +1 -1
  495. package/lib/query-selector/QuerySelector.js +2 -2
  496. package/lib/query-selector/QuerySelector.js.map +1 -1
  497. package/lib/query-selector/SelectorItem.d.ts.map +1 -1
  498. package/lib/query-selector/SelectorItem.js +16 -16
  499. package/lib/query-selector/SelectorItem.js.map +1 -1
  500. package/lib/range/Range.d.ts.map +1 -1
  501. package/lib/range/Range.js +91 -79
  502. package/lib/range/Range.js.map +1 -1
  503. package/lib/range/RangeUtility.d.ts.map +1 -1
  504. package/lib/range/RangeUtility.js +5 -4
  505. package/lib/range/RangeUtility.js.map +1 -1
  506. package/lib/selection/Selection.js +15 -15
  507. package/lib/selection/Selection.js.map +1 -1
  508. package/lib/tree-walker/TreeWalker.d.ts.map +1 -1
  509. package/lib/tree-walker/TreeWalker.js +12 -6
  510. package/lib/tree-walker/TreeWalker.js.map +1 -1
  511. package/lib/validity-state/ValidityState.js +1 -1
  512. package/lib/validity-state/ValidityState.js.map +1 -1
  513. package/lib/version.js +1 -1
  514. package/lib/window/BrowserWindow.d.ts.map +1 -1
  515. package/lib/window/BrowserWindow.js +20 -26
  516. package/lib/window/BrowserWindow.js.map +1 -1
  517. package/lib/window/WindowErrorUtility.d.ts.map +1 -1
  518. package/lib/window/WindowErrorUtility.js +1 -1
  519. package/lib/window/WindowErrorUtility.js.map +1 -1
  520. package/lib/xml-http-request/XMLHttpRequest.js +1 -1
  521. package/lib/xml-http-request/XMLHttpRequest.js.map +1 -1
  522. package/lib/xml-parser/XMLParser.d.ts.map +1 -1
  523. package/lib/xml-parser/XMLParser.js +16 -12
  524. package/lib/xml-parser/XMLParser.js.map +1 -1
  525. package/lib/xml-serializer/XMLSerializer.d.ts +8 -1
  526. package/lib/xml-serializer/XMLSerializer.d.ts.map +1 -1
  527. package/lib/xml-serializer/XMLSerializer.js +37 -37
  528. package/lib/xml-serializer/XMLSerializer.js.map +1 -1
  529. package/package.json +1 -1
  530. package/src/PropertySymbol.ts +67 -1
  531. package/src/async-task-manager/AsyncTaskManager.ts +12 -5
  532. package/src/browser/utilities/BrowserFrameNavigator.ts +1 -1
  533. package/src/css/declaration/AbstractCSSStyleDeclaration.ts +17 -16
  534. package/src/css/declaration/element-style/CSSStyleDeclarationElementStyle.ts +64 -28
  535. package/src/dom-implementation/DOMImplementation.ts +6 -6
  536. package/src/dom-parser/DOMParser.ts +2 -2
  537. package/src/event/Event.ts +3 -3
  538. package/src/event/EventTarget.ts +4 -4
  539. package/src/fetch/Request.ts +7 -5
  540. package/src/form-data/FormData.ts +9 -9
  541. package/src/mutation-observer/MutationObserver.ts +3 -3
  542. package/src/named-node-map/NamedNodeMap.ts +12 -8
  543. package/src/nodes/attr/Attr.ts +59 -11
  544. package/src/nodes/character-data/CharacterData.ts +2 -2
  545. package/src/nodes/child-node/ChildNodeUtility.ts +8 -8
  546. package/src/nodes/child-node/NonDocumentChildNodeUtility.ts +4 -3
  547. package/src/nodes/comment/Comment.ts +3 -2
  548. package/src/nodes/document/Document.ts +106 -46
  549. package/src/nodes/document/IDocument.ts +2 -1
  550. package/src/nodes/document-fragment/DocumentFragment.ts +8 -4
  551. package/src/nodes/document-type/DocumentType.ts +36 -7
  552. package/src/nodes/element/Dataset.ts +23 -17
  553. package/src/nodes/element/Element.ts +166 -61
  554. package/src/nodes/element/ElementNamedNodeMap.ts +58 -33
  555. package/src/nodes/element/ElementUtility.ts +26 -19
  556. package/src/nodes/element/IElement.ts +3 -3
  557. package/src/nodes/html-anchor-element/HTMLAnchorElement.ts +5 -3
  558. package/src/nodes/html-anchor-element/HTMLAnchorElementNamedNodeMap.ts +11 -5
  559. package/src/nodes/html-base-element/HTMLBaseElement.ts +2 -1
  560. package/src/nodes/html-button-element/HTMLButtonElement.ts +29 -6
  561. package/src/nodes/html-button-element/HTMLButtonElementNamedNodeMap.ts +7 -7
  562. package/src/nodes/html-dialog-element/HTMLDialogElement.ts +21 -1
  563. package/src/nodes/html-document/HTMLDocument.ts +2 -1
  564. package/src/nodes/html-element/HTMLElement.ts +161 -33
  565. package/src/nodes/html-element/HTMLElementNamedNodeMap.ts +6 -3
  566. package/src/nodes/html-element/HTMLElementUtility.ts +17 -10
  567. package/src/nodes/html-element/IHTMLElement.ts +3 -0
  568. package/src/nodes/html-form-element/HTMLFormElement.ts +67 -27
  569. package/src/nodes/html-iframe-element/HTMLIFrameElement.ts +6 -5
  570. package/src/nodes/html-iframe-element/HTMLIFrameElementNamedNodeMap.ts +6 -1
  571. package/src/nodes/html-iframe-element/HTMLIFrameElementPageLoader.ts +2 -2
  572. package/src/nodes/html-image-element/HTMLImageElement.ts +115 -28
  573. package/src/nodes/html-input-element/HTMLInputElement.ts +125 -30
  574. package/src/nodes/html-input-element/HTMLInputElementNamedNodeMap.ts +7 -7
  575. package/src/nodes/html-label-element/HTMLLabelElement.ts +1 -1
  576. package/src/nodes/html-label-element/HTMLLabelElementUtility.ts +3 -2
  577. package/src/nodes/html-link-element/HTMLLinkElement.ts +15 -5
  578. package/src/nodes/html-link-element/HTMLLinkElementNamedNodeMap.ts +9 -6
  579. package/src/nodes/html-link-element/HTMLLinkElementStyleSheetLoader.ts +13 -5
  580. package/src/nodes/html-media-element/HTMLMediaElement.ts +142 -42
  581. package/src/nodes/html-option-element/HTMLOptionElement.ts +3 -1
  582. package/src/nodes/html-option-element/HTMLOptionElementNamedNodeMap.ts +3 -3
  583. package/src/nodes/html-script-element/HTMLScriptElement.ts +19 -12
  584. package/src/nodes/html-script-element/HTMLScriptElementNamedNodeMap.ts +4 -4
  585. package/src/nodes/html-script-element/HTMLScriptElementScriptLoader.ts +13 -9
  586. package/src/nodes/html-select-element/HTMLSelectElement.ts +69 -31
  587. package/src/nodes/html-select-element/HTMLSelectElementNamedNodeMap.ts +7 -7
  588. package/src/nodes/html-style-element/HTMLStyleElement.ts +6 -6
  589. package/src/nodes/html-template-element/HTMLTemplateElement.ts +28 -12
  590. package/src/nodes/html-template-element/IHTMLTemplateElement.ts +1 -1
  591. package/src/nodes/html-text-area-element/HTMLTextAreaElement.ts +29 -6
  592. package/src/nodes/html-text-area-element/HTMLTextAreaElementNamedNodeMap.ts +7 -7
  593. package/src/nodes/html-unknown-element/HTMLUnknownElement.ts +38 -17
  594. package/src/nodes/node/INode.ts +2 -2
  595. package/src/nodes/node/Node.ts +129 -56
  596. package/src/nodes/node/NodeUtility.ts +44 -37
  597. package/src/nodes/parent-node/ParentNodeUtility.ts +10 -5
  598. package/src/nodes/processing-instruction/ProcessingInstruction.ts +12 -2
  599. package/src/nodes/shadow-root/IShadowRoot.ts +2 -0
  600. package/src/nodes/shadow-root/ShadowRoot.ts +50 -8
  601. package/src/nodes/svg-element/SVGElement.ts +6 -5
  602. package/src/nodes/svg-element/SVGElementNamedNodeMap.ts +6 -3
  603. package/src/nodes/text/Text.ts +5 -5
  604. package/src/query-selector/QuerySelector.ts +2 -2
  605. package/src/query-selector/SelectorItem.ts +20 -16
  606. package/src/range/Range.ts +109 -82
  607. package/src/range/RangeUtility.ts +7 -4
  608. package/src/selection/Selection.ts +15 -15
  609. package/src/tree-walker/TreeWalker.ts +22 -6
  610. package/src/validity-state/ValidityState.ts +1 -1
  611. package/src/window/BrowserWindow.ts +18 -24
  612. package/src/window/WindowErrorUtility.ts +3 -1
  613. package/src/xml-http-request/XMLHttpRequest.ts +1 -1
  614. package/src/xml-parser/XMLParser.ts +18 -12
  615. package/src/xml-serializer/XMLSerializer.ts +22 -20
@@ -12,13 +12,32 @@ import Event from '../../event/Event.js';
12
12
  * ShadowRoot.
13
13
  */
14
14
  export default class ShadowRoot extends DocumentFragment implements IShadowRoot {
15
- public readonly mode = 'open';
16
- public readonly host: IElement = null;
17
- public adoptedStyleSheets: CSSStyleSheet[] = [];
18
-
19
15
  // Events
20
16
  public onslotchange: (event: Event) => void | null = null;
21
17
 
18
+ // Internal properties
19
+ public [PropertySymbol.adoptedStyleSheets]: CSSStyleSheet[] = [];
20
+ public [PropertySymbol.mode] = 'open';
21
+ public [PropertySymbol.host]: IElement | null = null;
22
+
23
+ /**
24
+ * Returns mode.
25
+ *
26
+ * @returns Mode.
27
+ */
28
+ public get mode(): string {
29
+ return this[PropertySymbol.mode];
30
+ }
31
+
32
+ /**
33
+ * Returns host.
34
+ *
35
+ * @returns Host.
36
+ */
37
+ public get host(): IElement {
38
+ return this[PropertySymbol.host];
39
+ }
40
+
22
41
  /**
23
42
  * Returns inner HTML.
24
43
  *
@@ -45,7 +64,25 @@ export default class ShadowRoot extends DocumentFragment implements IShadowRoot
45
64
  this.removeChild(child);
46
65
  }
47
66
 
48
- XMLParser.parse(this.ownerDocument, html, { rootNode: this });
67
+ XMLParser.parse(this[PropertySymbol.ownerDocument], html, { rootNode: this });
68
+ }
69
+
70
+ /**
71
+ * Returns adopted style sheets.
72
+ *
73
+ * @returns Adopted style sheets.
74
+ */
75
+ public get adoptedStyleSheets(): CSSStyleSheet[] {
76
+ return this[PropertySymbol.adoptedStyleSheets];
77
+ }
78
+
79
+ /**
80
+ * Sets adopted style sheets.
81
+ *
82
+ * @param value Adopted style sheets.
83
+ */
84
+ public set adoptedStyleSheets(value: CSSStyleSheet[]) {
85
+ this[PropertySymbol.adoptedStyleSheets] = value;
49
86
  }
50
87
 
51
88
  /**
@@ -54,8 +91,13 @@ export default class ShadowRoot extends DocumentFragment implements IShadowRoot
54
91
  * @returns Active element.
55
92
  */
56
93
  public get activeElement(): IHTMLElement | null {
57
- const activeElement: IHTMLElement = this.ownerDocument[PropertySymbol.activeElement];
58
- if (activeElement && activeElement.isConnected && activeElement.getRootNode() === this) {
94
+ const activeElement: IHTMLElement =
95
+ this[PropertySymbol.ownerDocument][PropertySymbol.activeElement];
96
+ if (
97
+ activeElement &&
98
+ activeElement[PropertySymbol.isConnected] &&
99
+ activeElement.getRootNode() === this
100
+ ) {
59
101
  return activeElement;
60
102
  }
61
103
  return null;
@@ -79,7 +121,7 @@ export default class ShadowRoot extends DocumentFragment implements IShadowRoot
79
121
  */
80
122
  public cloneNode(deep = false): IShadowRoot {
81
123
  const clone = <ShadowRoot>super.cloneNode(deep);
82
- (<string>clone.mode) = this.mode;
124
+ clone[PropertySymbol.mode] = this.mode;
83
125
  return clone;
84
126
  }
85
127
  }
@@ -16,8 +16,6 @@ import SVGElementNamedNodeMap from './SVGElementNamedNodeMap.js';
16
16
  * https://developer.mozilla.org/en-US/docs/Web/API/SVGElement.
17
17
  */
18
18
  export default class SVGElement extends Element implements ISVGElement {
19
- public override readonly attributes: INamedNodeMap = new SVGElementNamedNodeMap(this);
20
-
21
19
  // Events
22
20
  public onabort: (event: Event) => void | null = null;
23
21
  public onerror: (event: Event) => void | null = null;
@@ -26,8 +24,11 @@ export default class SVGElement extends Element implements ISVGElement {
26
24
  public onscroll: (event: Event) => void | null = null;
27
25
  public onunload: (event: Event) => void | null = null;
28
26
 
27
+ // Internal properties
28
+ public override [PropertySymbol.attributes]: INamedNodeMap = new SVGElementNamedNodeMap(this);
29
+ public [PropertySymbol.style]: CSSStyleDeclaration | null = null;
30
+
29
31
  // Private properties
30
- public [PropertySymbol.style]: CSSStyleDeclaration = null;
31
32
  #dataset: Dataset = null;
32
33
 
33
34
  /**
@@ -45,13 +46,13 @@ export default class SVGElement extends Element implements ISVGElement {
45
46
  * @returns Element.
46
47
  */
47
48
  public get ownerSVGElement(): ISVGSVGElement {
48
- let parent = this.parentNode;
49
+ let parent = this[PropertySymbol.parentNode];
49
50
  while (parent) {
50
51
  if (parent['tagName'] === 'SVG') {
51
52
  return <ISVGSVGElement>parent;
52
53
  }
53
54
 
54
- parent = parent.parentNode;
55
+ parent = parent[PropertySymbol.parentNode];
55
56
  }
56
57
  return null;
57
58
  }
@@ -17,8 +17,11 @@ export default class SVGElementNamedNodeMap extends ElementNamedNodeMap {
17
17
  public override setNamedItem(item: IAttr): IAttr | null {
18
18
  const replacedItem = super.setNamedItem(item);
19
19
 
20
- if (item.name === 'style' && this[PropertySymbol.ownerElement][PropertySymbol.style]) {
21
- this[PropertySymbol.ownerElement][PropertySymbol.style].cssText = item.value;
20
+ if (
21
+ item[PropertySymbol.name] === 'style' &&
22
+ this[PropertySymbol.ownerElement][PropertySymbol.style]
23
+ ) {
24
+ this[PropertySymbol.ownerElement][PropertySymbol.style].cssText = item[PropertySymbol.value];
22
25
  }
23
26
 
24
27
  return replacedItem || null;
@@ -32,7 +35,7 @@ export default class SVGElementNamedNodeMap extends ElementNamedNodeMap {
32
35
 
33
36
  if (
34
37
  removedItem &&
35
- removedItem.name === 'style' &&
38
+ removedItem[PropertySymbol.name] === 'style' &&
36
39
  this[PropertySymbol.ownerElement][PropertySymbol.style]
37
40
  ) {
38
41
  this[PropertySymbol.ownerElement][PropertySymbol.style].cssText = '';
@@ -1,4 +1,3 @@
1
- import Node from '../node/Node.js';
2
1
  import * as PropertySymbol from '../../PropertySymbol.js';
3
2
  import CharacterData from '../character-data/CharacterData.js';
4
3
  import IText from './IText.js';
@@ -6,12 +5,13 @@ import DOMException from '../../exception/DOMException.js';
6
5
  import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum.js';
7
6
  import HTMLTextAreaElement from '../html-text-area-element/HTMLTextAreaElement.js';
8
7
  import INode from '../node/INode.js';
8
+ import NodeTypeEnum from '../node/NodeTypeEnum.js';
9
9
 
10
10
  /**
11
11
  * Text node.
12
12
  */
13
13
  export default class Text extends CharacterData implements IText {
14
- public readonly nodeType = Node.TEXT_NODE;
14
+ public override [PropertySymbol.nodeType] = NodeTypeEnum.textNode;
15
15
 
16
16
  /**
17
17
  * Node name.
@@ -59,10 +59,10 @@ export default class Text extends CharacterData implements IText {
59
59
 
60
60
  const count = length - offset;
61
61
  const newData = this.substringData(offset, count);
62
- const newNode = <IText>this.ownerDocument.createTextNode(newData);
62
+ const newNode = <IText>this[PropertySymbol.ownerDocument].createTextNode(newData);
63
63
 
64
- if (this.parentNode !== null) {
65
- this.parentNode.insertBefore(newNode, this.nextSibling);
64
+ if (this[PropertySymbol.parentNode] !== null) {
65
+ this[PropertySymbol.parentNode].insertBefore(newNode, this.nextSibling);
66
66
  }
67
67
 
68
68
  this.replaceData(offset, count, '');
@@ -48,7 +48,7 @@ export default class QuerySelector {
48
48
 
49
49
  for (const items of groups) {
50
50
  matches = matches.concat(
51
- node.nodeType === NodeTypeEnum.elementNode
51
+ node[PropertySymbol.nodeType] === NodeTypeEnum.elementNode
52
52
  ? this.findAll(<IElement>node, [<IElement>node], items)
53
53
  : this.findAll(null, (<Element>node)[PropertySymbol.children], items)
54
54
  );
@@ -92,7 +92,7 @@ export default class QuerySelector {
92
92
 
93
93
  for (const items of SelectorParser.getSelectorGroups(selector)) {
94
94
  const match =
95
- node.nodeType === NodeTypeEnum.elementNode
95
+ node[PropertySymbol.nodeType] === NodeTypeEnum.elementNode
96
96
  ? this.findFirst(<IElement>node, [<IElement>node], items)
97
97
  : this.findFirst(null, (<Element>node)[PropertySymbol.children], items);
98
98
 
@@ -65,7 +65,7 @@ export default class SelectorItem {
65
65
 
66
66
  // Tag name match
67
67
  if (this.tagName) {
68
- if (this.tagName !== '*' && this.tagName !== element.tagName) {
68
+ if (this.tagName !== '*' && this.tagName !== element[PropertySymbol.tagName]) {
69
69
  return null;
70
70
  }
71
71
  priorityWeight += 1;
@@ -112,9 +112,9 @@ export default class SelectorItem {
112
112
  * @returns Result.
113
113
  */
114
114
  private matchPsuedo(element: IElement): boolean {
115
- const parent = <IElement>element.parentNode;
116
- const parentChildren = element.parentNode
117
- ? (<Element>element.parentNode)[PropertySymbol.children]
115
+ const parent = <IElement>element[PropertySymbol.parentNode];
116
+ const parentChildren = element[PropertySymbol.parentNode]
117
+ ? (<Element>element[PropertySymbol.parentNode])[PropertySymbol.children]
118
118
  : [];
119
119
 
120
120
  if (!this.pseudos) {
@@ -161,7 +161,7 @@ export default class SelectorItem {
161
161
  return parentChildren.length === 1 && parentChildren[0] === element;
162
162
  case 'first-of-type':
163
163
  for (const child of parentChildren) {
164
- if (child.tagName === element.tagName) {
164
+ if (child[PropertySymbol.tagName] === element[PropertySymbol.tagName]) {
165
165
  return child === element;
166
166
  }
167
167
  }
@@ -169,7 +169,7 @@ export default class SelectorItem {
169
169
  case 'last-of-type':
170
170
  for (let i = parentChildren.length - 1; i >= 0; i--) {
171
171
  const child = parentChildren[i];
172
- if (child.tagName === element.tagName) {
172
+ if (child[PropertySymbol.tagName] === element[PropertySymbol.tagName]) {
173
173
  return child === element;
174
174
  }
175
175
  }
@@ -177,7 +177,7 @@ export default class SelectorItem {
177
177
  case 'only-of-type':
178
178
  let isFound = false;
179
179
  for (const child of parentChildren) {
180
- if (child.tagName === element.tagName) {
180
+ if (child[PropertySymbol.tagName] === element[PropertySymbol.tagName]) {
181
181
  if (isFound || child !== element) {
182
182
  return false;
183
183
  }
@@ -186,11 +186,13 @@ export default class SelectorItem {
186
186
  }
187
187
  return isFound;
188
188
  case 'checked':
189
- return element.tagName === 'INPUT' && (<IHTMLInputElement>element).checked;
189
+ return (
190
+ element[PropertySymbol.tagName] === 'INPUT' && (<IHTMLInputElement>element).checked
191
+ );
190
192
  case 'empty':
191
193
  return !(<Element>element)[PropertySymbol.children].length;
192
194
  case 'root':
193
- return element.tagName === 'HTML';
195
+ return element[PropertySymbol.tagName] === 'HTML';
194
196
  case 'not':
195
197
  return !psuedo.selectorItem.match(element);
196
198
  case 'nth-child':
@@ -199,11 +201,11 @@ export default class SelectorItem {
199
201
  : parentChildren.indexOf(element);
200
202
  return nthChildIndex !== -1 && psuedo.nthFunction(nthChildIndex + 1);
201
203
  case 'nth-of-type':
202
- if (!element.parentNode) {
204
+ if (!element[PropertySymbol.parentNode]) {
203
205
  return false;
204
206
  }
205
207
  const nthOfTypeIndex = parentChildren
206
- .filter((child) => child.tagName === element.tagName)
208
+ .filter((child) => child[PropertySymbol.tagName] === element[PropertySymbol.tagName])
207
209
  .indexOf(element);
208
210
  return nthOfTypeIndex !== -1 && psuedo.nthFunction(nthOfTypeIndex + 1);
209
211
  case 'nth-last-child':
@@ -216,7 +218,7 @@ export default class SelectorItem {
216
218
  return nthLastChildIndex !== -1 && psuedo.nthFunction(nthLastChildIndex + 1);
217
219
  case 'nth-last-of-type':
218
220
  const nthLastOfTypeIndex = parentChildren
219
- .filter((child) => child.tagName === element.tagName)
221
+ .filter((child) => child[PropertySymbol.tagName] === element[PropertySymbol.tagName])
220
222
  .reverse()
221
223
  .indexOf(element);
222
224
  return nthLastOfTypeIndex !== -1 && psuedo.nthFunction(nthLastOfTypeIndex + 1);
@@ -240,7 +242,9 @@ export default class SelectorItem {
240
242
  let priorityWeight = 0;
241
243
 
242
244
  for (const attribute of this.attributes) {
243
- const elementAttribute = (<Element>element).attributes.getNamedItem(attribute.name);
245
+ const elementAttribute = (<Element>element)[PropertySymbol.attributes].getNamedItem(
246
+ attribute.name
247
+ );
244
248
 
245
249
  if (!elementAttribute) {
246
250
  return null;
@@ -250,9 +254,9 @@ export default class SelectorItem {
250
254
 
251
255
  if (
252
256
  attribute.value !== null &&
253
- (elementAttribute.value === null ||
254
- (attribute.regExp && !attribute.regExp.test(elementAttribute.value)) ||
255
- (!attribute.regExp && attribute.value !== elementAttribute.value))
257
+ (elementAttribute[PropertySymbol.value] === null ||
258
+ (attribute.regExp && !attribute.regExp.test(elementAttribute[PropertySymbol.value])) ||
259
+ (!attribute.regExp && attribute.value !== elementAttribute[PropertySymbol.value]))
256
260
  ) {
257
261
  return null;
258
262
  }