@dooboostore/dom-parser 1.0.2 → 1.0.4

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.
Files changed (727) hide show
  1. package/README.MD +369 -6
  2. package/dist/cjs/DomParser.js +11 -1
  3. package/dist/cjs/DomParser.js.map +2 -2
  4. package/dist/cjs/bundle-entry.js +36 -0
  5. package/dist/cjs/bundle-entry.js.map +7 -0
  6. package/dist/cjs/factory/ElementFactory.js +31 -7
  7. package/dist/cjs/factory/ElementFactory.js.map +2 -2
  8. package/dist/cjs/index.js +26 -0
  9. package/dist/cjs/index.js.map +2 -2
  10. package/dist/cjs/node/CharacterData.js.map +1 -1
  11. package/dist/cjs/node/ChildNode.js +0 -15
  12. package/dist/cjs/node/ChildNode.js.map +3 -3
  13. package/dist/cjs/node/ChildNodeBase.js +20 -0
  14. package/dist/cjs/node/ChildNodeBase.js.map +2 -2
  15. package/dist/cjs/node/Comment.js.map +2 -2
  16. package/dist/cjs/node/Document.js +0 -27
  17. package/dist/cjs/node/Document.js.map +4 -4
  18. package/dist/cjs/node/DocumentBase.js +168 -205
  19. package/dist/cjs/node/DocumentBase.js.map +2 -2
  20. package/dist/cjs/node/DocumentFragment.js +0 -15
  21. package/dist/cjs/node/DocumentFragment.js.map +3 -3
  22. package/dist/cjs/node/DocumentFragmentBase.js.map +2 -2
  23. package/dist/cjs/node/Node.js.map +1 -1
  24. package/dist/cjs/node/NodeBase.js +44 -2
  25. package/dist/cjs/node/NodeBase.js.map +2 -2
  26. package/dist/cjs/node/NodeFilter.js +43 -0
  27. package/dist/cjs/node/NodeFilter.js.map +7 -0
  28. package/dist/cjs/node/NodeIterator.js +1 -28
  29. package/dist/cjs/node/NodeIterator.js.map +2 -2
  30. package/dist/cjs/node/ParentNode.js +0 -15
  31. package/dist/cjs/node/ParentNode.js.map +3 -3
  32. package/dist/cjs/node/ParentNodeBase.js +10 -10
  33. package/dist/cjs/node/ParentNodeBase.js.map +3 -3
  34. package/dist/cjs/node/ShadowRootBase.js +79 -0
  35. package/dist/cjs/node/ShadowRootBase.js.map +7 -0
  36. package/dist/cjs/node/Text.js +0 -15
  37. package/dist/cjs/node/Text.js.map +3 -3
  38. package/dist/cjs/node/TextBase.js +0 -3
  39. package/dist/cjs/node/TextBase.js.map +2 -2
  40. package/dist/cjs/node/TreeWalker.js +272 -0
  41. package/dist/cjs/node/TreeWalker.js.map +7 -0
  42. package/dist/cjs/node/collection/{HTMLCollection.js → HTMLCollectionImp.js} +7 -6
  43. package/dist/cjs/node/collection/HTMLCollectionImp.js.map +7 -0
  44. package/dist/cjs/node/collection/HTMLCollectionOfImp.js +26 -0
  45. package/dist/cjs/node/collection/HTMLCollectionOfImp.js.map +7 -0
  46. package/dist/cjs/node/collection/NodeList.js.map +1 -1
  47. package/dist/cjs/node/collection/{NodeListOf.js → NodeListOfImp.js} +6 -6
  48. package/dist/cjs/node/collection/NodeListOfImp.js.map +7 -0
  49. package/dist/cjs/node/collection/StylePropertyMapImpl.js +65 -0
  50. package/dist/cjs/node/collection/StylePropertyMapImpl.js.map +7 -0
  51. package/dist/cjs/node/collection/index.js +6 -6
  52. package/dist/cjs/node/collection/index.js.map +2 -2
  53. package/dist/cjs/node/elements/Element.js +0 -15
  54. package/dist/cjs/node/elements/Element.js.map +3 -3
  55. package/dist/cjs/node/elements/ElementBase.js +163 -331
  56. package/dist/cjs/node/elements/ElementBase.js.map +3 -3
  57. package/dist/cjs/node/elements/HTMLAnchorElement.js +2 -2
  58. package/dist/cjs/node/elements/HTMLAnchorElement.js.map +2 -2
  59. package/dist/cjs/node/elements/HTMLAreaElement.js +2 -2
  60. package/dist/cjs/node/elements/HTMLAreaElement.js.map +2 -2
  61. package/dist/cjs/node/elements/{HTMLGenericElement.js → HTMLAudioElement.js} +8 -11
  62. package/dist/cjs/node/elements/HTMLAudioElement.js.map +7 -0
  63. package/dist/cjs/node/elements/HTMLBaseElement.js +2 -2
  64. package/dist/cjs/node/elements/HTMLBaseElement.js.map +2 -2
  65. package/dist/cjs/node/elements/HTMLBodyElement.js +2 -2
  66. package/dist/cjs/node/elements/HTMLBodyElement.js.map +2 -2
  67. package/dist/cjs/node/elements/HTMLButtonElement.js +3 -3
  68. package/dist/cjs/node/elements/HTMLButtonElement.js.map +2 -2
  69. package/dist/cjs/node/elements/HTMLCanvasElement.js +2 -2
  70. package/dist/cjs/node/elements/HTMLCanvasElement.js.map +2 -2
  71. package/dist/cjs/node/elements/HTMLCaptionElement.js +2 -2
  72. package/dist/cjs/node/elements/HTMLCaptionElement.js.map +2 -2
  73. package/dist/cjs/node/{collection/HTMLCollectionOf.js → elements/HTMLDListElement.js} +9 -16
  74. package/dist/cjs/node/elements/HTMLDListElement.js.map +7 -0
  75. package/dist/cjs/node/elements/HTMLDataElement.js +29 -0
  76. package/dist/cjs/node/elements/HTMLDataElement.js.map +7 -0
  77. package/dist/cjs/node/elements/HTMLDataListElement.js +29 -0
  78. package/dist/cjs/node/elements/HTMLDataListElement.js.map +7 -0
  79. package/dist/cjs/node/elements/HTMLDetailsElement.js +29 -0
  80. package/dist/cjs/node/elements/HTMLDetailsElement.js.map +7 -0
  81. package/dist/cjs/node/elements/HTMLDialogElement.js +29 -0
  82. package/dist/cjs/node/elements/HTMLDialogElement.js.map +7 -0
  83. package/dist/cjs/node/elements/HTMLDivElement.js +2 -2
  84. package/dist/cjs/node/elements/HTMLDivElement.js.map +2 -2
  85. package/dist/cjs/node/elements/HTMLElement.js +13 -0
  86. package/dist/cjs/node/elements/HTMLElement.js.map +2 -2
  87. package/dist/cjs/node/elements/HTMLElementBase.js +44 -44
  88. package/dist/cjs/node/elements/HTMLElementBase.js.map +2 -2
  89. package/dist/cjs/node/elements/HTMLEmbedElement.js +2 -2
  90. package/dist/cjs/node/elements/HTMLEmbedElement.js.map +2 -2
  91. package/dist/cjs/node/elements/HTMLFieldSetElement.js +29 -0
  92. package/dist/cjs/node/elements/HTMLFieldSetElement.js.map +7 -0
  93. package/dist/cjs/node/elements/HTMLFormElement.js +2 -2
  94. package/dist/cjs/node/elements/HTMLFormElement.js.map +2 -2
  95. package/dist/cjs/node/elements/HTMLH1Element.js +2 -2
  96. package/dist/cjs/node/elements/HTMLH1Element.js.map +2 -2
  97. package/dist/cjs/node/elements/HTMLHRElement.js +29 -0
  98. package/dist/cjs/node/elements/HTMLHRElement.js.map +7 -0
  99. package/dist/cjs/node/elements/HTMLHeadElement.js +2 -2
  100. package/dist/cjs/node/elements/HTMLHeadElement.js.map +2 -2
  101. package/dist/cjs/node/elements/HTMLHtmlElement.js +2 -2
  102. package/dist/cjs/node/elements/HTMLHtmlElement.js.map +2 -2
  103. package/dist/cjs/node/elements/HTMLIFrameElement.js +29 -0
  104. package/dist/cjs/node/elements/HTMLIFrameElement.js.map +7 -0
  105. package/dist/cjs/node/elements/HTMLImgElement.js +2 -2
  106. package/dist/cjs/node/elements/HTMLImgElement.js.map +2 -2
  107. package/dist/cjs/node/elements/HTMLInputElement.js +2 -2
  108. package/dist/cjs/node/elements/HTMLInputElement.js.map +2 -2
  109. package/dist/cjs/node/elements/HTMLLIElement.js +2 -2
  110. package/dist/cjs/node/elements/HTMLLIElement.js.map +2 -2
  111. package/dist/cjs/node/elements/HTMLLabelElement.js +29 -0
  112. package/dist/cjs/node/elements/HTMLLabelElement.js.map +7 -0
  113. package/dist/cjs/node/elements/HTMLLegendElement.js +29 -0
  114. package/dist/cjs/node/elements/HTMLLegendElement.js.map +7 -0
  115. package/dist/cjs/node/elements/HTMLLinkElement.js +2 -2
  116. package/dist/cjs/node/elements/HTMLLinkElement.js.map +2 -2
  117. package/dist/cjs/node/elements/HTMLMapElement.js +29 -0
  118. package/dist/cjs/node/elements/HTMLMapElement.js.map +7 -0
  119. package/dist/cjs/node/elements/HTMLMetaElement.js +2 -2
  120. package/dist/cjs/node/elements/HTMLMetaElement.js.map +2 -2
  121. package/dist/cjs/node/elements/HTMLMeterElement.js +29 -0
  122. package/dist/cjs/node/elements/HTMLMeterElement.js.map +7 -0
  123. package/dist/cjs/node/elements/HTMLModElement.js +29 -0
  124. package/dist/cjs/node/elements/HTMLModElement.js.map +7 -0
  125. package/dist/cjs/node/elements/HTMLOListElement.js +2 -2
  126. package/dist/cjs/node/elements/HTMLOListElement.js.map +2 -2
  127. package/dist/cjs/node/elements/HTMLObjectElement.js +29 -0
  128. package/dist/cjs/node/elements/HTMLObjectElement.js.map +7 -0
  129. package/dist/cjs/node/elements/HTMLOptGroupElement.js +29 -0
  130. package/dist/cjs/node/elements/HTMLOptGroupElement.js.map +7 -0
  131. package/dist/cjs/node/elements/HTMLOptionElement.js +29 -0
  132. package/dist/cjs/node/elements/HTMLOptionElement.js.map +7 -0
  133. package/dist/cjs/node/elements/HTMLOutputElement.js +29 -0
  134. package/dist/cjs/node/elements/HTMLOutputElement.js.map +7 -0
  135. package/dist/cjs/node/elements/HTMLPElement.js +2 -2
  136. package/dist/cjs/node/elements/HTMLPElement.js.map +2 -2
  137. package/dist/cjs/node/elements/HTMLParamElement.js +29 -0
  138. package/dist/cjs/node/elements/HTMLParamElement.js.map +7 -0
  139. package/dist/cjs/node/elements/HTMLPictureElement.js +29 -0
  140. package/dist/cjs/node/elements/HTMLPictureElement.js.map +7 -0
  141. package/dist/cjs/node/elements/HTMLPreElement.js +29 -0
  142. package/dist/cjs/node/elements/HTMLPreElement.js.map +7 -0
  143. package/dist/cjs/node/elements/HTMLProgressElement.js +29 -0
  144. package/dist/cjs/node/elements/HTMLProgressElement.js.map +7 -0
  145. package/dist/cjs/node/elements/HTMLQuoteElement.js +29 -0
  146. package/dist/cjs/node/elements/HTMLQuoteElement.js.map +7 -0
  147. package/dist/cjs/node/elements/HTMLScriptElement.js +2 -2
  148. package/dist/cjs/node/elements/HTMLScriptElement.js.map +2 -2
  149. package/dist/cjs/node/elements/HTMLSelectElement.js +29 -0
  150. package/dist/cjs/node/elements/HTMLSelectElement.js.map +7 -0
  151. package/dist/cjs/node/elements/HTMLSlotElement.js +29 -0
  152. package/dist/cjs/node/elements/HTMLSlotElement.js.map +7 -0
  153. package/dist/cjs/node/elements/HTMLSourceElement.js +29 -0
  154. package/dist/cjs/node/elements/HTMLSourceElement.js.map +7 -0
  155. package/dist/cjs/node/elements/HTMLSpanElement.js +2 -2
  156. package/dist/cjs/node/elements/HTMLSpanElement.js.map +2 -2
  157. package/dist/cjs/node/elements/HTMLStyleElement.js +2 -2
  158. package/dist/cjs/node/elements/HTMLStyleElement.js.map +2 -2
  159. package/dist/cjs/node/elements/HTMLTableElement.js +2 -2
  160. package/dist/cjs/node/elements/HTMLTableElement.js.map +2 -2
  161. package/dist/cjs/node/elements/HTMLTbodyElement.js +2 -2
  162. package/dist/cjs/node/elements/HTMLTbodyElement.js.map +2 -2
  163. package/dist/cjs/node/elements/HTMLTdElement.js +2 -2
  164. package/dist/cjs/node/elements/HTMLTdElement.js.map +2 -2
  165. package/dist/cjs/node/elements/HTMLTemplateElement.js +2 -2
  166. package/dist/cjs/node/elements/HTMLTemplateElement.js.map +2 -2
  167. package/dist/cjs/node/elements/HTMLTextAreaElement.js +29 -0
  168. package/dist/cjs/node/elements/HTMLTextAreaElement.js.map +7 -0
  169. package/dist/cjs/node/elements/HTMLTfootElement.js +2 -2
  170. package/dist/cjs/node/elements/HTMLTfootElement.js.map +2 -2
  171. package/dist/cjs/node/elements/HTMLThElement.js +2 -2
  172. package/dist/cjs/node/elements/HTMLThElement.js.map +2 -2
  173. package/dist/cjs/node/elements/HTMLTheadElement.js +2 -2
  174. package/dist/cjs/node/elements/HTMLTheadElement.js.map +2 -2
  175. package/dist/cjs/node/elements/HTMLTimeElement.js +29 -0
  176. package/dist/cjs/node/elements/HTMLTimeElement.js.map +7 -0
  177. package/dist/cjs/node/elements/HTMLTitleElement.js +2 -2
  178. package/dist/cjs/node/elements/HTMLTitleElement.js.map +2 -2
  179. package/dist/cjs/node/elements/HTMLTrElement.js +2 -2
  180. package/dist/cjs/node/elements/HTMLTrElement.js.map +2 -2
  181. package/dist/cjs/node/elements/HTMLTrackElement.js +29 -0
  182. package/dist/cjs/node/elements/HTMLTrackElement.js.map +7 -0
  183. package/dist/cjs/node/elements/HTMLUListElement.js +2 -2
  184. package/dist/cjs/node/elements/HTMLUListElement.js.map +2 -2
  185. package/dist/cjs/node/elements/HTMLVideoElement.js +29 -0
  186. package/dist/cjs/node/elements/HTMLVideoElement.js.map +7 -0
  187. package/dist/cjs/node/elements/MathMLElement.js +2 -2
  188. package/dist/cjs/node/elements/MathMLElement.js.map +2 -2
  189. package/dist/cjs/node/elements/SVGElement.js +2 -2
  190. package/dist/cjs/node/elements/SVGElement.js.map +2 -2
  191. package/dist/cjs/node/elements/index.js +181 -94
  192. package/dist/cjs/node/elements/index.js.map +2 -2
  193. package/dist/cjs/node/index.js +6 -16
  194. package/dist/cjs/node/index.js.map +2 -2
  195. package/dist/cjs/utils/CSSSelector.js.map +2 -2
  196. package/dist/cjs/window/CustomElementRegistryImp.js +113 -0
  197. package/dist/cjs/window/CustomElementRegistryImp.js.map +7 -0
  198. package/dist/cjs/window/Window.js +0 -15
  199. package/dist/cjs/window/Window.js.map +3 -3
  200. package/dist/cjs/window/WindowBase.js +210 -613
  201. package/dist/cjs/window/WindowBase.js.map +2 -2
  202. package/dist/cjs/window/index.js +0 -5
  203. package/dist/cjs/window/index.js.map +2 -2
  204. package/dist/esm/DomParser.js +11 -1
  205. package/dist/esm/DomParser.js.map +2 -2
  206. package/dist/esm/bundle-entry.js +6 -0
  207. package/dist/esm/bundle-entry.js.map +7 -0
  208. package/dist/esm/factory/ElementFactory.js +32 -8
  209. package/dist/esm/factory/ElementFactory.js.map +2 -2
  210. package/dist/esm/index.js +26 -0
  211. package/dist/esm/index.js.map +2 -2
  212. package/dist/esm/node/ChildNodeBase.js +20 -0
  213. package/dist/esm/node/ChildNodeBase.js.map +2 -2
  214. package/dist/esm/node/Comment.js.map +2 -2
  215. package/dist/esm/node/Document.js +0 -8
  216. package/dist/esm/node/Document.js.map +4 -4
  217. package/dist/esm/node/DocumentBase.js +165 -202
  218. package/dist/esm/node/DocumentBase.js.map +2 -2
  219. package/dist/esm/node/DocumentFragmentBase.js.map +2 -2
  220. package/dist/esm/node/Node.js.map +1 -1
  221. package/dist/esm/node/NodeBase.js +45 -22
  222. package/dist/esm/node/NodeBase.js.map +2 -2
  223. package/dist/esm/node/NodeFilter.js +24 -0
  224. package/dist/esm/node/NodeFilter.js.map +7 -0
  225. package/dist/esm/node/NodeIterator.js +1 -28
  226. package/dist/esm/node/NodeIterator.js.map +2 -2
  227. package/dist/esm/node/ParentNodeBase.js +4 -4
  228. package/dist/esm/node/ParentNodeBase.js.map +2 -2
  229. package/dist/esm/node/ShadowRootBase.js +60 -0
  230. package/dist/esm/node/ShadowRootBase.js.map +7 -0
  231. package/dist/esm/node/TextBase.js +0 -3
  232. package/dist/esm/node/TextBase.js.map +2 -2
  233. package/dist/esm/node/TreeWalker.js +253 -0
  234. package/dist/esm/node/TreeWalker.js.map +7 -0
  235. package/dist/esm/node/collection/{HTMLCollection.js → HTMLCollectionImp.js} +4 -3
  236. package/dist/esm/node/collection/HTMLCollectionImp.js.map +7 -0
  237. package/dist/esm/node/collection/HTMLCollectionOfImp.js +7 -0
  238. package/dist/esm/node/collection/HTMLCollectionOfImp.js.map +7 -0
  239. package/dist/esm/node/collection/NodeList.js.map +1 -1
  240. package/dist/esm/node/collection/{NodeListOf.js → NodeListOfImp.js} +3 -3
  241. package/dist/esm/node/collection/NodeListOfImp.js.map +7 -0
  242. package/dist/esm/node/collection/StylePropertyMapImpl.js +46 -0
  243. package/dist/esm/node/collection/StylePropertyMapImpl.js.map +7 -0
  244. package/dist/esm/node/collection/index.js +6 -6
  245. package/dist/esm/node/collection/index.js.map +2 -2
  246. package/dist/esm/node/elements/ElementBase.js +163 -331
  247. package/dist/esm/node/elements/ElementBase.js.map +3 -3
  248. package/dist/esm/node/elements/HTMLAnchorElement.js +2 -2
  249. package/dist/esm/node/elements/HTMLAnchorElement.js.map +2 -2
  250. package/dist/esm/node/elements/HTMLAreaElement.js +2 -2
  251. package/dist/esm/node/elements/HTMLAreaElement.js.map +2 -2
  252. package/dist/esm/node/elements/HTMLAudioElement.js +10 -0
  253. package/dist/esm/node/elements/HTMLAudioElement.js.map +7 -0
  254. package/dist/esm/node/elements/HTMLBaseElement.js +2 -2
  255. package/dist/esm/node/elements/HTMLBaseElement.js.map +2 -2
  256. package/dist/esm/node/elements/HTMLBodyElement.js +2 -2
  257. package/dist/esm/node/elements/HTMLBodyElement.js.map +2 -2
  258. package/dist/esm/node/elements/HTMLButtonElement.js +3 -3
  259. package/dist/esm/node/elements/HTMLButtonElement.js.map +2 -2
  260. package/dist/esm/node/elements/HTMLCanvasElement.js +2 -2
  261. package/dist/esm/node/elements/HTMLCanvasElement.js.map +2 -2
  262. package/dist/esm/node/elements/HTMLCaptionElement.js +2 -2
  263. package/dist/esm/node/elements/HTMLCaptionElement.js.map +2 -2
  264. package/dist/esm/node/elements/HTMLDListElement.js +10 -0
  265. package/dist/esm/node/elements/HTMLDListElement.js.map +7 -0
  266. package/dist/esm/node/elements/HTMLDataElement.js +10 -0
  267. package/dist/esm/node/elements/HTMLDataElement.js.map +7 -0
  268. package/dist/esm/node/elements/HTMLDataListElement.js +10 -0
  269. package/dist/esm/node/elements/HTMLDataListElement.js.map +7 -0
  270. package/dist/esm/node/elements/HTMLDetailsElement.js +10 -0
  271. package/dist/esm/node/elements/HTMLDetailsElement.js.map +7 -0
  272. package/dist/esm/node/elements/HTMLDialogElement.js +10 -0
  273. package/dist/esm/node/elements/HTMLDialogElement.js.map +7 -0
  274. package/dist/esm/node/elements/HTMLDivElement.js +2 -2
  275. package/dist/esm/node/elements/HTMLDivElement.js.map +2 -2
  276. package/dist/esm/node/elements/HTMLElement.js +9 -0
  277. package/dist/esm/node/elements/HTMLElement.js.map +3 -3
  278. package/dist/esm/node/elements/HTMLElementBase.js +43 -43
  279. package/dist/esm/node/elements/HTMLElementBase.js.map +2 -2
  280. package/dist/esm/node/elements/HTMLEmbedElement.js +2 -2
  281. package/dist/esm/node/elements/HTMLEmbedElement.js.map +2 -2
  282. package/dist/esm/node/elements/HTMLFieldSetElement.js +10 -0
  283. package/dist/esm/node/elements/HTMLFieldSetElement.js.map +7 -0
  284. package/dist/esm/node/elements/HTMLFormElement.js +2 -2
  285. package/dist/esm/node/elements/HTMLFormElement.js.map +2 -2
  286. package/dist/esm/node/elements/HTMLH1Element.js +2 -2
  287. package/dist/esm/node/elements/HTMLH1Element.js.map +2 -2
  288. package/dist/esm/node/elements/HTMLHRElement.js +10 -0
  289. package/dist/esm/node/elements/HTMLHRElement.js.map +7 -0
  290. package/dist/esm/node/elements/HTMLHeadElement.js +2 -2
  291. package/dist/esm/node/elements/HTMLHeadElement.js.map +2 -2
  292. package/dist/esm/node/elements/HTMLHtmlElement.js +2 -2
  293. package/dist/esm/node/elements/HTMLHtmlElement.js.map +2 -2
  294. package/dist/esm/node/elements/HTMLIFrameElement.js +10 -0
  295. package/dist/esm/node/elements/HTMLIFrameElement.js.map +7 -0
  296. package/dist/esm/node/elements/HTMLImgElement.js +2 -2
  297. package/dist/esm/node/elements/HTMLImgElement.js.map +2 -2
  298. package/dist/esm/node/elements/HTMLInputElement.js +2 -2
  299. package/dist/esm/node/elements/HTMLInputElement.js.map +2 -2
  300. package/dist/esm/node/elements/HTMLLIElement.js +2 -2
  301. package/dist/esm/node/elements/HTMLLIElement.js.map +2 -2
  302. package/dist/esm/node/elements/HTMLLabelElement.js +10 -0
  303. package/dist/esm/node/elements/HTMLLabelElement.js.map +7 -0
  304. package/dist/esm/node/elements/HTMLLegendElement.js +10 -0
  305. package/dist/esm/node/elements/HTMLLegendElement.js.map +7 -0
  306. package/dist/esm/node/elements/HTMLLinkElement.js +2 -2
  307. package/dist/esm/node/elements/HTMLLinkElement.js.map +2 -2
  308. package/dist/esm/node/elements/HTMLMapElement.js +10 -0
  309. package/dist/esm/node/elements/HTMLMapElement.js.map +7 -0
  310. package/dist/esm/node/elements/HTMLMetaElement.js +2 -2
  311. package/dist/esm/node/elements/HTMLMetaElement.js.map +2 -2
  312. package/dist/esm/node/elements/HTMLMeterElement.js +10 -0
  313. package/dist/esm/node/elements/HTMLMeterElement.js.map +7 -0
  314. package/dist/esm/node/elements/HTMLModElement.js +10 -0
  315. package/dist/esm/node/elements/HTMLModElement.js.map +7 -0
  316. package/dist/esm/node/elements/HTMLOListElement.js +2 -2
  317. package/dist/esm/node/elements/HTMLOListElement.js.map +2 -2
  318. package/dist/esm/node/elements/HTMLObjectElement.js +10 -0
  319. package/dist/esm/node/elements/HTMLObjectElement.js.map +7 -0
  320. package/dist/esm/node/elements/HTMLOptGroupElement.js +10 -0
  321. package/dist/esm/node/elements/HTMLOptGroupElement.js.map +7 -0
  322. package/dist/esm/node/elements/HTMLOptionElement.js +10 -0
  323. package/dist/esm/node/elements/HTMLOptionElement.js.map +7 -0
  324. package/dist/esm/node/elements/HTMLOutputElement.js +10 -0
  325. package/dist/esm/node/elements/HTMLOutputElement.js.map +7 -0
  326. package/dist/esm/node/elements/HTMLPElement.js +2 -2
  327. package/dist/esm/node/elements/HTMLPElement.js.map +2 -2
  328. package/dist/esm/node/elements/HTMLParamElement.js +10 -0
  329. package/dist/esm/node/elements/HTMLParamElement.js.map +7 -0
  330. package/dist/esm/node/elements/HTMLPictureElement.js +10 -0
  331. package/dist/esm/node/elements/HTMLPictureElement.js.map +7 -0
  332. package/dist/esm/node/elements/HTMLPreElement.js +10 -0
  333. package/dist/esm/node/elements/HTMLPreElement.js.map +7 -0
  334. package/dist/esm/node/elements/HTMLProgressElement.js +10 -0
  335. package/dist/esm/node/elements/HTMLProgressElement.js.map +7 -0
  336. package/dist/esm/node/elements/HTMLQuoteElement.js +10 -0
  337. package/dist/esm/node/elements/HTMLQuoteElement.js.map +7 -0
  338. package/dist/esm/node/elements/HTMLScriptElement.js +2 -2
  339. package/dist/esm/node/elements/HTMLScriptElement.js.map +2 -2
  340. package/dist/esm/node/elements/HTMLSelectElement.js +10 -0
  341. package/dist/esm/node/elements/HTMLSelectElement.js.map +7 -0
  342. package/dist/esm/node/elements/HTMLSlotElement.js +10 -0
  343. package/dist/esm/node/elements/HTMLSlotElement.js.map +7 -0
  344. package/dist/esm/node/elements/HTMLSourceElement.js +10 -0
  345. package/dist/esm/node/elements/HTMLSourceElement.js.map +7 -0
  346. package/dist/esm/node/elements/HTMLSpanElement.js +2 -2
  347. package/dist/esm/node/elements/HTMLSpanElement.js.map +2 -2
  348. package/dist/esm/node/elements/HTMLStyleElement.js +2 -2
  349. package/dist/esm/node/elements/HTMLStyleElement.js.map +2 -2
  350. package/dist/esm/node/elements/HTMLTableElement.js +2 -2
  351. package/dist/esm/node/elements/HTMLTableElement.js.map +2 -2
  352. package/dist/esm/node/elements/HTMLTbodyElement.js +2 -2
  353. package/dist/esm/node/elements/HTMLTbodyElement.js.map +2 -2
  354. package/dist/esm/node/elements/HTMLTdElement.js +2 -2
  355. package/dist/esm/node/elements/HTMLTdElement.js.map +2 -2
  356. package/dist/esm/node/elements/HTMLTemplateElement.js +2 -2
  357. package/dist/esm/node/elements/HTMLTemplateElement.js.map +2 -2
  358. package/dist/esm/node/elements/HTMLTextAreaElement.js +10 -0
  359. package/dist/esm/node/elements/HTMLTextAreaElement.js.map +7 -0
  360. package/dist/esm/node/elements/HTMLTfootElement.js +2 -2
  361. package/dist/esm/node/elements/HTMLTfootElement.js.map +2 -2
  362. package/dist/esm/node/elements/HTMLThElement.js +2 -2
  363. package/dist/esm/node/elements/HTMLThElement.js.map +2 -2
  364. package/dist/esm/node/elements/HTMLTheadElement.js +2 -2
  365. package/dist/esm/node/elements/HTMLTheadElement.js.map +2 -2
  366. package/dist/esm/node/elements/HTMLTimeElement.js +10 -0
  367. package/dist/esm/node/elements/HTMLTimeElement.js.map +7 -0
  368. package/dist/esm/node/elements/HTMLTitleElement.js +2 -2
  369. package/dist/esm/node/elements/HTMLTitleElement.js.map +2 -2
  370. package/dist/esm/node/elements/HTMLTrElement.js +2 -2
  371. package/dist/esm/node/elements/HTMLTrElement.js.map +2 -2
  372. package/dist/esm/node/elements/HTMLTrackElement.js +10 -0
  373. package/dist/esm/node/elements/HTMLTrackElement.js.map +7 -0
  374. package/dist/esm/node/elements/HTMLUListElement.js +2 -2
  375. package/dist/esm/node/elements/HTMLUListElement.js.map +2 -2
  376. package/dist/esm/node/elements/HTMLVideoElement.js +10 -0
  377. package/dist/esm/node/elements/HTMLVideoElement.js.map +7 -0
  378. package/dist/esm/node/elements/MathMLElement.js +2 -2
  379. package/dist/esm/node/elements/MathMLElement.js.map +2 -2
  380. package/dist/esm/node/elements/SVGElement.js +2 -2
  381. package/dist/esm/node/elements/SVGElement.js.map +2 -2
  382. package/dist/esm/node/elements/index.js +182 -95
  383. package/dist/esm/node/elements/index.js.map +2 -2
  384. package/dist/esm/node/index.js +7 -17
  385. package/dist/esm/node/index.js.map +2 -2
  386. package/dist/esm/utils/CSSSelector.js.map +2 -2
  387. package/dist/esm/window/CustomElementRegistryImp.js +94 -0
  388. package/dist/esm/window/CustomElementRegistryImp.js.map +7 -0
  389. package/dist/esm/window/WindowBase.js +259 -597
  390. package/dist/esm/window/WindowBase.js.map +2 -2
  391. package/dist/esm/window/index.js +0 -5
  392. package/dist/esm/window/index.js.map +2 -2
  393. package/dist/esm-bundle/dooboostore-dom-parser.esm.js +3477 -3558
  394. package/dist/esm-bundle/dooboostore-dom-parser.esm.js.map +4 -4
  395. package/dist/types/DomParser.d.ts.map +1 -1
  396. package/dist/types/bundle-entry.d.ts +3 -0
  397. package/dist/types/bundle-entry.d.ts.map +1 -0
  398. package/dist/types/factory/ElementFactory.d.ts +1 -1
  399. package/dist/types/factory/ElementFactory.d.ts.map +1 -1
  400. package/dist/types/index.d.ts +14 -1
  401. package/dist/types/index.d.ts.map +1 -1
  402. package/dist/types/node/CharacterData.d.ts +0 -2
  403. package/dist/types/node/CharacterData.d.ts.map +1 -1
  404. package/dist/types/node/ChildNode.d.ts +0 -38
  405. package/dist/types/node/ChildNode.d.ts.map +1 -1
  406. package/dist/types/node/ChildNodeBase.d.ts +6 -4
  407. package/dist/types/node/ChildNodeBase.d.ts.map +1 -1
  408. package/dist/types/node/Comment.d.ts +1 -1
  409. package/dist/types/node/Comment.d.ts.map +1 -1
  410. package/dist/types/node/Document.d.ts +0 -856
  411. package/dist/types/node/Document.d.ts.map +1 -1
  412. package/dist/types/node/DocumentBase.d.ts +68 -110
  413. package/dist/types/node/DocumentBase.d.ts.map +1 -1
  414. package/dist/types/node/DocumentFragment.d.ts +0 -38
  415. package/dist/types/node/DocumentFragment.d.ts.map +1 -1
  416. package/dist/types/node/DocumentFragmentBase.d.ts +1 -8
  417. package/dist/types/node/DocumentFragmentBase.d.ts.map +1 -1
  418. package/dist/types/node/Node.d.ts +0 -213
  419. package/dist/types/node/Node.d.ts.map +1 -1
  420. package/dist/types/node/NodeBase.d.ts +11 -8
  421. package/dist/types/node/NodeBase.d.ts.map +1 -1
  422. package/dist/types/node/NodeFilter.d.ts +25 -0
  423. package/dist/types/node/NodeFilter.d.ts.map +1 -0
  424. package/dist/types/node/NodeIterator.d.ts +0 -34
  425. package/dist/types/node/NodeIterator.d.ts.map +1 -1
  426. package/dist/types/node/ParentNode.d.ts +0 -84
  427. package/dist/types/node/ParentNode.d.ts.map +1 -1
  428. package/dist/types/node/ParentNodeBase.d.ts +0 -5
  429. package/dist/types/node/ParentNodeBase.d.ts.map +1 -1
  430. package/dist/types/node/ShadowRootBase.d.ts +36 -0
  431. package/dist/types/node/ShadowRootBase.d.ts.map +1 -0
  432. package/dist/types/node/Text.d.ts +0 -24
  433. package/dist/types/node/Text.d.ts.map +1 -1
  434. package/dist/types/node/TextBase.d.ts +2 -3
  435. package/dist/types/node/TextBase.d.ts.map +1 -1
  436. package/dist/types/node/TreeWalker.d.ts +48 -0
  437. package/dist/types/node/TreeWalker.d.ts.map +1 -0
  438. package/dist/types/node/collection/{HTMLCollection.d.ts → HTMLCollectionImp.d.ts} +2 -3
  439. package/dist/types/node/collection/HTMLCollectionImp.d.ts.map +1 -0
  440. package/dist/types/node/collection/HTMLCollectionOfImp.d.ts +9 -0
  441. package/dist/types/node/collection/HTMLCollectionOfImp.d.ts.map +1 -0
  442. package/dist/types/node/collection/NodeList.d.ts +0 -1
  443. package/dist/types/node/collection/NodeList.d.ts.map +1 -1
  444. package/dist/types/node/collection/{NodeListOf.d.ts → NodeListOfImp.d.ts} +3 -4
  445. package/dist/types/node/collection/NodeListOfImp.d.ts.map +1 -0
  446. package/dist/types/node/collection/StylePropertyMapImpl.d.ts +20 -0
  447. package/dist/types/node/collection/StylePropertyMapImpl.d.ts.map +1 -0
  448. package/dist/types/node/collection/index.d.ts +3 -3
  449. package/dist/types/node/collection/index.d.ts.map +1 -1
  450. package/dist/types/node/elements/Element.d.ts +0 -687
  451. package/dist/types/node/elements/Element.d.ts.map +1 -1
  452. package/dist/types/node/elements/ElementBase.d.ts +98 -74
  453. package/dist/types/node/elements/ElementBase.d.ts.map +1 -1
  454. package/dist/types/node/elements/HTMLAnchorElement.d.ts +2 -2
  455. package/dist/types/node/elements/HTMLAnchorElement.d.ts.map +1 -1
  456. package/dist/types/node/elements/HTMLAreaElement.d.ts +2 -3
  457. package/dist/types/node/elements/HTMLAreaElement.d.ts.map +1 -1
  458. package/dist/types/node/elements/HTMLAudioElement.d.ts +8 -0
  459. package/dist/types/node/elements/HTMLAudioElement.d.ts.map +1 -0
  460. package/dist/types/node/elements/HTMLBaseElement.d.ts +2 -2
  461. package/dist/types/node/elements/HTMLBaseElement.d.ts.map +1 -1
  462. package/dist/types/node/elements/HTMLBodyElement.d.ts +2 -2
  463. package/dist/types/node/elements/HTMLBodyElement.d.ts.map +1 -1
  464. package/dist/types/node/elements/HTMLButtonElement.d.ts +3 -3
  465. package/dist/types/node/elements/HTMLButtonElement.d.ts.map +1 -1
  466. package/dist/types/node/elements/HTMLCanvasElement.d.ts +2 -2
  467. package/dist/types/node/elements/HTMLCanvasElement.d.ts.map +1 -1
  468. package/dist/types/node/elements/HTMLCaptionElement.d.ts +2 -2
  469. package/dist/types/node/elements/HTMLCaptionElement.d.ts.map +1 -1
  470. package/dist/types/node/elements/HTMLDListElement.d.ts +5 -0
  471. package/dist/types/node/elements/HTMLDListElement.d.ts.map +1 -0
  472. package/dist/types/node/elements/HTMLDataElement.d.ts +5 -0
  473. package/dist/types/node/elements/HTMLDataElement.d.ts.map +1 -0
  474. package/dist/types/node/elements/HTMLDataListElement.d.ts +5 -0
  475. package/dist/types/node/elements/HTMLDataListElement.d.ts.map +1 -0
  476. package/dist/types/node/elements/HTMLDetailsElement.d.ts +5 -0
  477. package/dist/types/node/elements/HTMLDetailsElement.d.ts.map +1 -0
  478. package/dist/types/node/elements/HTMLDialogElement.d.ts +5 -0
  479. package/dist/types/node/elements/HTMLDialogElement.d.ts.map +1 -0
  480. package/dist/types/node/elements/HTMLDivElement.d.ts +2 -2
  481. package/dist/types/node/elements/HTMLDivElement.d.ts.map +1 -1
  482. package/dist/types/node/elements/HTMLElement.d.ts +3 -119
  483. package/dist/types/node/elements/HTMLElement.d.ts.map +1 -1
  484. package/dist/types/node/elements/HTMLElementBase.d.ts +126 -5
  485. package/dist/types/node/elements/HTMLElementBase.d.ts.map +1 -1
  486. package/dist/types/node/elements/HTMLEmbedElement.d.ts +2 -3
  487. package/dist/types/node/elements/HTMLEmbedElement.d.ts.map +1 -1
  488. package/dist/types/node/elements/HTMLFieldSetElement.d.ts +5 -0
  489. package/dist/types/node/elements/HTMLFieldSetElement.d.ts.map +1 -0
  490. package/dist/types/node/elements/HTMLFormElement.d.ts +2 -2
  491. package/dist/types/node/elements/HTMLFormElement.d.ts.map +1 -1
  492. package/dist/types/node/elements/HTMLH1Element.d.ts +2 -2
  493. package/dist/types/node/elements/HTMLH1Element.d.ts.map +1 -1
  494. package/dist/types/node/elements/HTMLHRElement.d.ts +5 -0
  495. package/dist/types/node/elements/HTMLHRElement.d.ts.map +1 -0
  496. package/dist/types/node/elements/HTMLHeadElement.d.ts +2 -2
  497. package/dist/types/node/elements/HTMLHeadElement.d.ts.map +1 -1
  498. package/dist/types/node/elements/HTMLHtmlElement.d.ts +2 -2
  499. package/dist/types/node/elements/HTMLHtmlElement.d.ts.map +1 -1
  500. package/dist/types/node/elements/HTMLIFrameElement.d.ts +5 -0
  501. package/dist/types/node/elements/HTMLIFrameElement.d.ts.map +1 -0
  502. package/dist/types/node/elements/HTMLImgElement.d.ts +2 -2
  503. package/dist/types/node/elements/HTMLImgElement.d.ts.map +1 -1
  504. package/dist/types/node/elements/HTMLInputElement.d.ts +2 -2
  505. package/dist/types/node/elements/HTMLInputElement.d.ts.map +1 -1
  506. package/dist/types/node/elements/HTMLLIElement.d.ts +2 -2
  507. package/dist/types/node/elements/HTMLLIElement.d.ts.map +1 -1
  508. package/dist/types/node/elements/HTMLLabelElement.d.ts +5 -0
  509. package/dist/types/node/elements/HTMLLabelElement.d.ts.map +1 -0
  510. package/dist/types/node/elements/HTMLLegendElement.d.ts +5 -0
  511. package/dist/types/node/elements/HTMLLegendElement.d.ts.map +1 -0
  512. package/dist/types/node/elements/HTMLLinkElement.d.ts +2 -2
  513. package/dist/types/node/elements/HTMLLinkElement.d.ts.map +1 -1
  514. package/dist/types/node/elements/HTMLMapElement.d.ts +5 -0
  515. package/dist/types/node/elements/HTMLMapElement.d.ts.map +1 -0
  516. package/dist/types/node/elements/HTMLMetaElement.d.ts +2 -2
  517. package/dist/types/node/elements/HTMLMetaElement.d.ts.map +1 -1
  518. package/dist/types/node/elements/HTMLMeterElement.d.ts +5 -0
  519. package/dist/types/node/elements/HTMLMeterElement.d.ts.map +1 -0
  520. package/dist/types/node/elements/HTMLModElement.d.ts +5 -0
  521. package/dist/types/node/elements/HTMLModElement.d.ts.map +1 -0
  522. package/dist/types/node/elements/HTMLOListElement.d.ts +2 -2
  523. package/dist/types/node/elements/HTMLOListElement.d.ts.map +1 -1
  524. package/dist/types/node/elements/HTMLObjectElement.d.ts +5 -0
  525. package/dist/types/node/elements/HTMLObjectElement.d.ts.map +1 -0
  526. package/dist/types/node/elements/HTMLOptGroupElement.d.ts +5 -0
  527. package/dist/types/node/elements/HTMLOptGroupElement.d.ts.map +1 -0
  528. package/dist/types/node/elements/HTMLOptionElement.d.ts +5 -0
  529. package/dist/types/node/elements/HTMLOptionElement.d.ts.map +1 -0
  530. package/dist/types/node/elements/HTMLOutputElement.d.ts +5 -0
  531. package/dist/types/node/elements/HTMLOutputElement.d.ts.map +1 -0
  532. package/dist/types/node/elements/HTMLPElement.d.ts +2 -2
  533. package/dist/types/node/elements/HTMLPElement.d.ts.map +1 -1
  534. package/dist/types/node/elements/HTMLParamElement.d.ts +5 -0
  535. package/dist/types/node/elements/HTMLParamElement.d.ts.map +1 -0
  536. package/dist/types/node/elements/HTMLPictureElement.d.ts +5 -0
  537. package/dist/types/node/elements/HTMLPictureElement.d.ts.map +1 -0
  538. package/dist/types/node/elements/HTMLPreElement.d.ts +5 -0
  539. package/dist/types/node/elements/HTMLPreElement.d.ts.map +1 -0
  540. package/dist/types/node/elements/HTMLProgressElement.d.ts +5 -0
  541. package/dist/types/node/elements/HTMLProgressElement.d.ts.map +1 -0
  542. package/dist/types/node/elements/HTMLQuoteElement.d.ts +5 -0
  543. package/dist/types/node/elements/HTMLQuoteElement.d.ts.map +1 -0
  544. package/dist/types/node/elements/HTMLScriptElement.d.ts +2 -2
  545. package/dist/types/node/elements/HTMLScriptElement.d.ts.map +1 -1
  546. package/dist/types/node/elements/HTMLSelectElement.d.ts +5 -0
  547. package/dist/types/node/elements/HTMLSelectElement.d.ts.map +1 -0
  548. package/dist/types/node/elements/HTMLSlotElement.d.ts +5 -0
  549. package/dist/types/node/elements/HTMLSlotElement.d.ts.map +1 -0
  550. package/dist/types/node/elements/HTMLSourceElement.d.ts +5 -0
  551. package/dist/types/node/elements/HTMLSourceElement.d.ts.map +1 -0
  552. package/dist/types/node/elements/HTMLSpanElement.d.ts +2 -2
  553. package/dist/types/node/elements/HTMLSpanElement.d.ts.map +1 -1
  554. package/dist/types/node/elements/HTMLStyleElement.d.ts +2 -2
  555. package/dist/types/node/elements/HTMLStyleElement.d.ts.map +1 -1
  556. package/dist/types/node/elements/HTMLTableElement.d.ts +5 -6
  557. package/dist/types/node/elements/HTMLTableElement.d.ts.map +1 -1
  558. package/dist/types/node/elements/HTMLTbodyElement.d.ts +3 -4
  559. package/dist/types/node/elements/HTMLTbodyElement.d.ts.map +1 -1
  560. package/dist/types/node/elements/HTMLTdElement.d.ts +2 -2
  561. package/dist/types/node/elements/HTMLTdElement.d.ts.map +1 -1
  562. package/dist/types/node/elements/HTMLTemplateElement.d.ts +2 -3
  563. package/dist/types/node/elements/HTMLTemplateElement.d.ts.map +1 -1
  564. package/dist/types/node/elements/HTMLTextAreaElement.d.ts +5 -0
  565. package/dist/types/node/elements/HTMLTextAreaElement.d.ts.map +1 -0
  566. package/dist/types/node/elements/HTMLTfootElement.d.ts +4 -5
  567. package/dist/types/node/elements/HTMLTfootElement.d.ts.map +1 -1
  568. package/dist/types/node/elements/HTMLThElement.d.ts +2 -2
  569. package/dist/types/node/elements/HTMLThElement.d.ts.map +1 -1
  570. package/dist/types/node/elements/HTMLTheadElement.d.ts +4 -5
  571. package/dist/types/node/elements/HTMLTheadElement.d.ts.map +1 -1
  572. package/dist/types/node/elements/HTMLTimeElement.d.ts +5 -0
  573. package/dist/types/node/elements/HTMLTimeElement.d.ts.map +1 -0
  574. package/dist/types/node/elements/HTMLTitleElement.d.ts +2 -2
  575. package/dist/types/node/elements/HTMLTitleElement.d.ts.map +1 -1
  576. package/dist/types/node/elements/HTMLTrElement.d.ts +4 -5
  577. package/dist/types/node/elements/HTMLTrElement.d.ts.map +1 -1
  578. package/dist/types/node/elements/HTMLTrackElement.d.ts +5 -0
  579. package/dist/types/node/elements/HTMLTrackElement.d.ts.map +1 -0
  580. package/dist/types/node/elements/HTMLUListElement.d.ts +2 -2
  581. package/dist/types/node/elements/HTMLUListElement.d.ts.map +1 -1
  582. package/dist/types/node/elements/HTMLVideoElement.d.ts +8 -0
  583. package/dist/types/node/elements/HTMLVideoElement.d.ts.map +1 -0
  584. package/dist/types/node/elements/MathMLElement.d.ts +2 -2
  585. package/dist/types/node/elements/MathMLElement.d.ts.map +1 -1
  586. package/dist/types/node/elements/SVGElement.d.ts +2 -2
  587. package/dist/types/node/elements/SVGElement.d.ts.map +1 -1
  588. package/dist/types/node/elements/index.d.ts +108 -55
  589. package/dist/types/node/elements/index.d.ts.map +1 -1
  590. package/dist/types/node/index.d.ts +4 -7
  591. package/dist/types/node/index.d.ts.map +1 -1
  592. package/dist/types/utils/CSSSelector.d.ts +0 -1
  593. package/dist/types/utils/CSSSelector.d.ts.map +1 -1
  594. package/dist/types/window/CustomElementRegistryImp.d.ts +19 -0
  595. package/dist/types/window/CustomElementRegistryImp.d.ts.map +1 -0
  596. package/dist/types/window/Window.d.ts +0 -619
  597. package/dist/types/window/Window.d.ts.map +1 -1
  598. package/dist/types/window/WindowBase.d.ts +253 -286
  599. package/dist/types/window/WindowBase.d.ts.map +1 -1
  600. package/dist/types/window/index.d.ts +0 -1
  601. package/dist/types/window/index.d.ts.map +1 -1
  602. package/dist/umd-bundle/dooboostore-dom-parser.umd.js +3482 -3563
  603. package/dist/umd-bundle/dooboostore-dom-parser.umd.js.map +4 -4
  604. package/package.json +6 -1
  605. package/src/DomParser.ts +29 -20
  606. package/src/bundle-entry.ts +2 -0
  607. package/src/factory/ElementFactory.ts +87 -54
  608. package/src/index.ts +22 -10
  609. package/src/node/CharacterData.ts +0 -2
  610. package/src/node/ChildNode.ts +42 -42
  611. package/src/node/ChildNodeBase.ts +60 -39
  612. package/src/node/Comment.ts +60 -60
  613. package/src/node/Document.ts +129 -882
  614. package/src/node/DocumentBase.ts +371 -467
  615. package/src/node/DocumentFragment.ts +38 -44
  616. package/src/node/DocumentFragmentBase.ts +4 -9
  617. package/src/node/Node.ts +231 -224
  618. package/src/node/NodeBase.ts +469 -443
  619. package/src/node/NodeFilter.ts +50 -0
  620. package/src/node/NodeIterator.ts +117 -172
  621. package/src/node/ParentNode.ts +93 -93
  622. package/src/node/ParentNodeBase.ts +7 -10
  623. package/src/node/ShadowRootBase.ts +87 -0
  624. package/src/node/Text.ts +30 -30
  625. package/src/node/TextBase.ts +92 -94
  626. package/src/node/TreeWalker.ts +280 -0
  627. package/src/node/collection/{HTMLCollection.ts → HTMLCollectionImp.ts} +3 -2
  628. package/src/node/collection/HTMLCollectionOfImp.ts +12 -0
  629. package/src/node/collection/NodeList.ts +1 -1
  630. package/src/node/collection/{NodeListOf.ts → NodeListOfImp.ts} +3 -3
  631. package/src/node/collection/StylePropertyMapImpl.ts +60 -0
  632. package/src/node/collection/index.ts +3 -3
  633. package/src/node/elements/Element.ts +212 -772
  634. package/src/node/elements/ElementBase.ts +840 -1204
  635. package/src/node/elements/HTMLAnchorElement.ts +2 -1
  636. package/src/node/elements/HTMLAreaElement.ts +2 -2
  637. package/src/node/elements/HTMLAudioElement.ts +11 -0
  638. package/src/node/elements/HTMLBaseElement.ts +2 -1
  639. package/src/node/elements/HTMLBodyElement.ts +2 -1
  640. package/src/node/elements/HTMLButtonElement.ts +65 -64
  641. package/src/node/elements/HTMLCanvasElement.ts +2 -1
  642. package/src/node/elements/HTMLCaptionElement.ts +2 -1
  643. package/src/node/elements/HTMLDListElement.ts +8 -0
  644. package/src/node/elements/HTMLDataElement.ts +7 -0
  645. package/src/node/elements/HTMLDataListElement.ts +8 -0
  646. package/src/node/elements/HTMLDetailsElement.ts +8 -0
  647. package/src/node/elements/HTMLDialogElement.ts +8 -0
  648. package/src/node/elements/HTMLDivElement.ts +2 -1
  649. package/src/node/elements/HTMLElement.ts +6 -137
  650. package/src/node/elements/HTMLElementBase.ts +472 -355
  651. package/src/node/elements/HTMLEmbedElement.ts +2 -2
  652. package/src/node/elements/HTMLFieldSetElement.ts +8 -0
  653. package/src/node/elements/HTMLFormElement.ts +2 -1
  654. package/src/node/elements/HTMLH1Element.ts +2 -1
  655. package/src/node/elements/HTMLHRElement.ts +8 -0
  656. package/src/node/elements/HTMLHeadElement.ts +2 -1
  657. package/src/node/elements/HTMLHtmlElement.ts +2 -1
  658. package/src/node/elements/HTMLIFrameElement.ts +8 -0
  659. package/src/node/elements/HTMLImgElement.ts +2 -1
  660. package/src/node/elements/HTMLInputElement.ts +2 -1
  661. package/src/node/elements/HTMLLIElement.ts +2 -1
  662. package/src/node/elements/HTMLLabelElement.ts +3 -0
  663. package/src/node/elements/HTMLLegendElement.ts +3 -0
  664. package/src/node/elements/HTMLLinkElement.ts +2 -1
  665. package/src/node/elements/HTMLMapElement.ts +3 -0
  666. package/src/node/elements/HTMLMetaElement.ts +2 -1
  667. package/src/node/elements/HTMLMeterElement.ts +3 -0
  668. package/src/node/elements/HTMLModElement.ts +3 -0
  669. package/src/node/elements/HTMLOListElement.ts +2 -1
  670. package/src/node/elements/HTMLObjectElement.ts +3 -0
  671. package/src/node/elements/HTMLOptGroupElement.ts +3 -0
  672. package/src/node/elements/HTMLOptionElement.ts +3 -0
  673. package/src/node/elements/HTMLOutputElement.ts +3 -0
  674. package/src/node/elements/HTMLPElement.ts +2 -1
  675. package/src/node/elements/HTMLParamElement.ts +3 -0
  676. package/src/node/elements/HTMLPictureElement.ts +3 -0
  677. package/src/node/elements/HTMLPreElement.ts +3 -0
  678. package/src/node/elements/HTMLProgressElement.ts +3 -0
  679. package/src/node/elements/HTMLQuoteElement.ts +3 -0
  680. package/src/node/elements/HTMLScriptElement.ts +2 -1
  681. package/src/node/elements/HTMLSelectElement.ts +3 -0
  682. package/src/node/elements/HTMLSlotElement.ts +3 -0
  683. package/src/node/elements/HTMLSourceElement.ts +3 -0
  684. package/src/node/elements/HTMLSpanElement.ts +2 -1
  685. package/src/node/elements/HTMLStyleElement.ts +2 -1
  686. package/src/node/elements/HTMLTableElement.ts +5 -8
  687. package/src/node/elements/HTMLTbodyElement.ts +4 -4
  688. package/src/node/elements/HTMLTdElement.ts +3 -2
  689. package/src/node/elements/HTMLTemplateElement.ts +5 -7
  690. package/src/node/elements/HTMLTextAreaElement.ts +3 -0
  691. package/src/node/elements/HTMLTfootElement.ts +4 -4
  692. package/src/node/elements/HTMLThElement.ts +2 -1
  693. package/src/node/elements/HTMLTheadElement.ts +5 -5
  694. package/src/node/elements/HTMLTimeElement.ts +3 -0
  695. package/src/node/elements/HTMLTitleElement.ts +2 -1
  696. package/src/node/elements/HTMLTrElement.ts +7 -5
  697. package/src/node/elements/HTMLTrackElement.ts +3 -0
  698. package/src/node/elements/HTMLUListElement.ts +2 -1
  699. package/src/node/elements/HTMLVideoElement.ts +11 -0
  700. package/src/node/elements/MathMLElement.ts +2 -1
  701. package/src/node/elements/SVGElement.ts +2 -1
  702. package/src/node/elements/index.ts +231 -153
  703. package/src/node/index.ts +8 -8
  704. package/src/utils/CSSSelector.ts +0 -1
  705. package/src/window/CustomElementRegistryImp.ts +138 -0
  706. package/src/window/Window.ts +716 -715
  707. package/src/window/WindowBase.ts +482 -847
  708. package/src/window/index.ts +0 -1
  709. package/tsconfig.json +1 -0
  710. package/dist/cjs/node/collection/HTMLCollection.js.map +0 -7
  711. package/dist/cjs/node/collection/HTMLCollectionOf.js.map +0 -7
  712. package/dist/cjs/node/collection/NodeListOf.js.map +0 -7
  713. package/dist/cjs/node/elements/HTMLGenericElement.js.map +0 -7
  714. package/dist/esm/node/collection/HTMLCollection.js.map +0 -7
  715. package/dist/esm/node/collection/HTMLCollectionOf.js +0 -17
  716. package/dist/esm/node/collection/HTMLCollectionOf.js.map +0 -7
  717. package/dist/esm/node/collection/NodeListOf.js.map +0 -7
  718. package/dist/esm/node/elements/HTMLGenericElement.js +0 -13
  719. package/dist/esm/node/elements/HTMLGenericElement.js.map +0 -7
  720. package/dist/types/node/collection/HTMLCollection.d.ts.map +0 -1
  721. package/dist/types/node/collection/HTMLCollectionOf.d.ts +0 -14
  722. package/dist/types/node/collection/HTMLCollectionOf.d.ts.map +0 -1
  723. package/dist/types/node/collection/NodeListOf.d.ts.map +0 -1
  724. package/dist/types/node/elements/HTMLGenericElement.d.ts +0 -6
  725. package/dist/types/node/elements/HTMLGenericElement.d.ts.map +0 -1
  726. package/src/node/collection/HTMLCollectionOf.ts +0 -26
  727. package/src/node/elements/HTMLGenericElement.ts +0 -13
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/elements/HTMLDListElement.ts"],
4
+ "sourcesContent": ["import {HTMLElementBase} from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\n\nexport class HTMLDListElement extends HTMLElement {\n constructor(tagName: string = 'DL', ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AAEnB,MAAM,yBAAyB,+BAAY;AAAA,EAChD,YAAY,UAAkB,MAAM,eAAqB;AACvD,UAAM,SAAS,aAAa;AAAA,EAC9B;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,29 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var HTMLDataElement_exports = {};
19
+ __export(HTMLDataElement_exports, {
20
+ HTMLDataElement: () => HTMLDataElement
21
+ });
22
+ module.exports = __toCommonJS(HTMLDataElement_exports);
23
+ var import_HTMLElement = require("./HTMLElement");
24
+ class HTMLDataElement extends import_HTMLElement.HTMLElement {
25
+ constructor(tagName = "DATA", ownerDocument) {
26
+ super(tagName, ownerDocument);
27
+ }
28
+ }
29
+ //# sourceMappingURL=HTMLDataElement.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/elements/HTMLDataElement.ts"],
4
+ "sourcesContent": ["import { HTMLElementBase } from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\nexport class HTMLDataElement extends HTMLElement {\n constructor(tagName: string = 'DATA', ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AACnB,MAAM,wBAAwB,+BAAY;AAAA,EAC/C,YAAY,UAAkB,QAAQ,eAAqB;AACzD,UAAM,SAAS,aAAa;AAAA,EAC9B;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,29 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var HTMLDataListElement_exports = {};
19
+ __export(HTMLDataListElement_exports, {
20
+ HTMLDataListElement: () => HTMLDataListElement
21
+ });
22
+ module.exports = __toCommonJS(HTMLDataListElement_exports);
23
+ var import_HTMLElement = require("./HTMLElement");
24
+ class HTMLDataListElement extends import_HTMLElement.HTMLElement {
25
+ constructor(tagName = "DATALIST", ownerDocument) {
26
+ super(tagName, ownerDocument);
27
+ }
28
+ }
29
+ //# sourceMappingURL=HTMLDataListElement.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/elements/HTMLDataListElement.ts"],
4
+ "sourcesContent": ["import {HTMLElementBase} from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\n\nexport class HTMLDataListElement extends HTMLElement {\n constructor(tagName: string = 'DATALIST', ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AAEnB,MAAM,4BAA4B,+BAAY;AAAA,EACnD,YAAY,UAAkB,YAAY,eAAqB;AAC7D,UAAM,SAAS,aAAa;AAAA,EAC9B;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,29 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var HTMLDetailsElement_exports = {};
19
+ __export(HTMLDetailsElement_exports, {
20
+ HTMLDetailsElement: () => HTMLDetailsElement
21
+ });
22
+ module.exports = __toCommonJS(HTMLDetailsElement_exports);
23
+ var import_HTMLElement = require("./HTMLElement");
24
+ class HTMLDetailsElement extends import_HTMLElement.HTMLElement {
25
+ constructor(tagName = "DETAILS", ownerDocument) {
26
+ super(tagName, ownerDocument);
27
+ }
28
+ }
29
+ //# sourceMappingURL=HTMLDetailsElement.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/elements/HTMLDetailsElement.ts"],
4
+ "sourcesContent": ["import {HTMLElementBase} from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\n\nexport class HTMLDetailsElement extends HTMLElement {\n constructor(tagName: string = 'DETAILS', ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AAEnB,MAAM,2BAA2B,+BAAY;AAAA,EAClD,YAAY,UAAkB,WAAW,eAAqB;AAC5D,UAAM,SAAS,aAAa;AAAA,EAC9B;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,29 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var HTMLDialogElement_exports = {};
19
+ __export(HTMLDialogElement_exports, {
20
+ HTMLDialogElement: () => HTMLDialogElement
21
+ });
22
+ module.exports = __toCommonJS(HTMLDialogElement_exports);
23
+ var import_HTMLElement = require("./HTMLElement");
24
+ class HTMLDialogElement extends import_HTMLElement.HTMLElement {
25
+ constructor(tagName = "DIALOG", ownerDocument) {
26
+ super(tagName, ownerDocument);
27
+ }
28
+ }
29
+ //# sourceMappingURL=HTMLDialogElement.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/elements/HTMLDialogElement.ts"],
4
+ "sourcesContent": ["import {HTMLElementBase} from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\n\nexport class HTMLDialogElement extends HTMLElement {\n constructor(tagName: string = 'DIALOG', ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AAEnB,MAAM,0BAA0B,+BAAY;AAAA,EACjD,YAAY,UAAkB,UAAU,eAAqB;AAC3D,UAAM,SAAS,aAAa;AAAA,EAC9B;AACF;",
6
+ "names": []
7
+ }
@@ -20,8 +20,8 @@ __export(HTMLDivElement_exports, {
20
20
  HTMLDivElement: () => HTMLDivElement
21
21
  });
22
22
  module.exports = __toCommonJS(HTMLDivElement_exports);
23
- var import_HTMLElementBase = require("./HTMLElementBase");
24
- class HTMLDivElement extends import_HTMLElementBase.HTMLElementBase {
23
+ var import_HTMLElement = require("./HTMLElement");
24
+ class HTMLDivElement extends import_HTMLElement.HTMLElement {
25
25
  constructor(tagName, ownerDocument) {
26
26
  super(tagName, ownerDocument);
27
27
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/elements/HTMLDivElement.ts"],
4
- "sourcesContent": ["import { HTMLElementBase } from './HTMLElementBase';\n\n/**\n * The **`HTMLDivElement`** class represents an HTML `<div>` element.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDivElement)\n */\nexport class HTMLDivElement extends HTMLElementBase implements HTMLDivElement {\n constructor(tagName: string, ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAAgC;AAOzB,MAAM,uBAAuB,uCAA0C;AAAA,EAC1E,YAAY,SAAiB,eAAqB;AAC9C,UAAM,SAAS,aAAa;AAAA,EAChC;AACJ;",
4
+ "sourcesContent": ["import { HTMLElementBase } from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\n\n/**\n * The **`HTMLDivElement`** class represents an HTML `<div>` element.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDivElement)\n */\nexport class HTMLDivElement extends HTMLElement {\n constructor(tagName: string, ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AAOnB,MAAM,uBAAuB,+BAAY;AAAA,EAC5C,YAAY,SAAiB,eAAqB;AAC9C,UAAM,SAAS,aAAa;AAAA,EAChC;AACJ;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,10 @@ var __defProp = Object.defineProperty;
2
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
5
9
  var __copyProps = (to, from, except, desc) => {
6
10
  if (from && typeof from === "object" || typeof from === "function") {
7
11
  for (let key of __getOwnPropNames(from))
@@ -12,5 +16,14 @@ var __copyProps = (to, from, except, desc) => {
12
16
  };
13
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
14
18
  var HTMLElement_exports = {};
19
+ __export(HTMLElement_exports, {
20
+ HTMLElement: () => HTMLElement
21
+ });
15
22
  module.exports = __toCommonJS(HTMLElement_exports);
23
+ var import_HTMLElementBase = require("./HTMLElementBase");
24
+ class HTMLElement extends import_HTMLElementBase.HTMLElementBase {
25
+ constructor(tagName, ownerDocument) {
26
+ super(tagName, ownerDocument);
27
+ }
28
+ }
16
29
  //# sourceMappingURL=HTMLElement.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/elements/HTMLElement.ts"],
4
- "sourcesContent": ["import { Element } from './Element';\n\n/**\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementCSSInlineStyle)\n */\nexport interface ElementCSSInlineStyle {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/attributeStyleMap) */\n readonly attributeStyleMap: StylePropertyMap;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/style) */\n style: CSSStyleDeclaration | string;\n}\n\nexport interface StylePropertyMap {\n append(property: string, ...values: (string | any)[]): void;\n clear(): void;\n delete(property: string): void;\n set(property: string, ...values: (string | any)[]): void;\n [key: string]: any;\n}\n\n/**\n * The **`HTMLElement`** interface represents any HTML element.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement)\n */\nexport interface HTMLElement extends Element, ElementCSSInlineStyle {\n /**\n * Returns the value of element's title content attribute. Can be set to change it.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/title)\n */\n title: string;\n\n /**\n * Returns the value of element's lang content attribute. Can be set to change it.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/lang)\n */\n lang: string;\n\n /**\n * Returns the value of element's dir content attribute. Can be set to change it.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dir)\n */\n dir: string;\n\n /**\n * Returns the value of element's hidden content attribute. Can be set to change it.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/hidden)\n */\n hidden: boolean;\n\n /**\n * Returns the value of element's tabindex content attribute. Can be set to change it.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/tabIndex)\n */\n tabIndex: number;\n\n /**\n * Returns the value of element's accesskey content attribute. Can be set to change it.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/accessKey)\n */\n accessKey: string;\n\n /**\n * Returns the value of element's contenteditable content attribute. Can be set to change it.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/contentEditable)\n */\n contentEditable: string;\n\n /**\n * Returns whether the element is editable.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/isContentEditable)\n */\n readonly isContentEditable: boolean;\n\n /**\n * Returns the element's inner text content.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/innerText)\n */\n innerText: string;\n\n /**\n * Returns the element's outer text content.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/outerText)\n */\n outerText: string;\n\n /**\n * Simulates a mouse click on an element.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/click)\n */\n click(): void;\n\n /**\n * Makes the element take focus.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)\n */\n focus(options?: FocusOptions): void;\n\n /**\n * Makes the element lose focus.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/blur)\n */\n blur(): void;\n}\n\n\n// \uAE30\uBCF8 \uD0C0\uC785\uB4E4\nexport interface FocusOptions {\n preventScroll?: boolean;\n}\n\nexport interface CSSStyleDeclaration {\n cssText: string;\n length: number;\n parentRule: any;\n getPropertyPriority(property: string): string;\n getPropertyValue(property: string): string;\n item(index: number): string;\n removeProperty(property: string): string;\n setProperty(property: string, value: string | null, priority?: string): void;\n [index: number]: string;\n [key: string]: any;\n}\n\nexport interface DOMStringMap {\n [key: string]: string | undefined;\n}"],
5
- "mappings": ";;;;;;;;;;;;;AAAA;AAAA;",
4
+ "sourcesContent": ["import {HTMLElementBase} from \"./HTMLElementBase\";\n\nexport class HTMLElement extends HTMLElementBase {\n constructor(tagName: string, ownerDocument?: any) {\n super(tagName, ownerDocument);\n // console.log('----->',tagName, this.ownerDocument?.defaultView)\n }\n\n}"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAA8B;AAEvB,MAAM,oBAAoB,uCAAgB;AAAA,EAC/C,YAAY,SAAiB,eAAqB;AAChD,UAAM,SAAS,aAAa;AAAA,EAE9B;AAEF;",
6
6
  "names": []
7
7
  }
@@ -21,9 +21,12 @@ __export(HTMLElementBase_exports, {
21
21
  });
22
22
  module.exports = __toCommonJS(HTMLElementBase_exports);
23
23
  var import_ElementBase = require("./ElementBase");
24
+ var import_StylePropertyMapImpl = require("../collection/StylePropertyMapImpl");
24
25
  class HTMLElementBase extends import_ElementBase.ElementBase {
25
- constructor(tagName, ownerDocument) {
26
- super(tagName, ownerDocument);
26
+ constructor(tagName = "DIV", ownerDocument) {
27
+ const ctor = new.target;
28
+ const resolvedTagName = tagName || ctor?.__domParserExtendsTagName || ctor?.__domParserTagName || "DIV";
29
+ super(resolvedTagName, ownerDocument);
27
30
  this._title = "";
28
31
  this._lang = "";
29
32
  this._dir = "";
@@ -38,6 +41,18 @@ class HTMLElementBase extends import_ElementBase.ElementBase {
38
41
  this._dataset = null;
39
42
  this._attributeStyleMap = null;
40
43
  }
44
+ attachInternals() {
45
+ throw new Error("Method not implemented.");
46
+ }
47
+ hidePopover() {
48
+ throw new Error("Method not implemented.");
49
+ }
50
+ showPopover() {
51
+ throw new Error("Method not implemented.");
52
+ }
53
+ togglePopover(options) {
54
+ throw new Error("Method not implemented.");
55
+ }
41
56
  // HTMLElement interface implementation
42
57
  get title() {
43
58
  return this._title;
@@ -210,37 +225,40 @@ class HTMLElementBase extends import_ElementBase.ElementBase {
210
225
  }
211
226
  get attributeStyleMap() {
212
227
  if (!this._attributeStyleMap) {
213
- this._attributeStyleMap = new StylePropertyMapImpl(this);
228
+ this._attributeStyleMap = new import_StylePropertyMapImpl.StylePropertyMapImpl(this);
214
229
  }
215
230
  return this._attributeStyleMap;
216
231
  }
217
232
  get dataset() {
218
233
  if (!this._dataset) {
219
- this._dataset = new Proxy({}, {
220
- get: (target, prop) => {
221
- if (typeof prop === "string") {
222
- const attrName = "data-" + prop.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`);
223
- return this.getAttribute(attrName);
234
+ this._dataset = new Proxy(
235
+ {},
236
+ {
237
+ get: (target, prop) => {
238
+ if (typeof prop === "string") {
239
+ const attrName = "data-" + prop.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`);
240
+ return this.getAttribute(attrName);
241
+ }
242
+ return void 0;
243
+ },
244
+ set: (target, prop, value) => {
245
+ if (typeof prop === "string") {
246
+ const attrName = "data-" + prop.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`);
247
+ this.setAttribute(attrName, String(value));
248
+ return true;
249
+ }
250
+ return false;
251
+ },
252
+ deleteProperty: (target, prop) => {
253
+ if (typeof prop === "string") {
254
+ const attrName = "data-" + prop.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`);
255
+ this.removeAttribute(attrName);
256
+ return true;
257
+ }
258
+ return false;
224
259
  }
225
- return void 0;
226
- },
227
- set: (target, prop, value) => {
228
- if (typeof prop === "string") {
229
- const attrName = "data-" + prop.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`);
230
- this.setAttribute(attrName, String(value));
231
- return true;
232
- }
233
- return false;
234
- },
235
- deleteProperty: (target, prop) => {
236
- if (typeof prop === "string") {
237
- const attrName = "data-" + prop.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`);
238
- this.removeAttribute(attrName);
239
- return true;
240
- }
241
- return false;
242
260
  }
243
- });
261
+ );
244
262
  }
245
263
  return this._dataset;
246
264
  }
@@ -313,22 +331,4 @@ class CSSStyleDeclarationImpl {
313
331
  return Array.from(style.entries()).map(([property, value]) => `${property}: ${value}`).join("; ");
314
332
  }
315
333
  }
316
- class StylePropertyMapImpl {
317
- constructor(element) {
318
- this.element = element;
319
- }
320
- set(property, ...values) {
321
- const value = values[0];
322
- this.element.style.setProperty(property, String(value));
323
- }
324
- append(property, ...values) {
325
- this.set(property, ...values);
326
- }
327
- delete(property) {
328
- this.element.style.removeProperty(property);
329
- }
330
- clear() {
331
- this.element.style.cssText = "";
332
- }
333
- }
334
334
  //# sourceMappingURL=HTMLElementBase.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/elements/HTMLElementBase.ts"],
4
- "sourcesContent": ["import { ElementBase } from './ElementBase';\nimport { HTMLElement, FocusOptions, CSSStyleDeclaration, DOMStringMap, ElementCSSInlineStyle, StylePropertyMap } from './HTMLElement';\nimport { Text } from '../Text';\nimport { ElementFactory } from '../../factory';\n\n/**\n * Base implementation for all HTML elements\n */\nexport abstract class HTMLElementBase extends ElementBase implements HTMLElement, ElementCSSInlineStyle {\n private _title: string = '';\n private _lang: string = '';\n private _dir: string = '';\n private _hidden: boolean = false;\n private _tabIndex: number = -1;\n private _accessKey: string = '';\n private _contentEditable: string = 'inherit';\n private _innerText: string = '';\n private _outerText: string = '';\n\n constructor(tagName: string, ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n\n // HTMLElement interface implementation\n get title(): string {\n return this._title;\n }\n\n set title(value: string) {\n this._title = value;\n this.setAttribute('title', value);\n }\n\n get lang(): string {\n return this._lang;\n }\n\n set lang(value: string) {\n this._lang = value;\n this.setAttribute('lang', value);\n }\n\n get dir(): string {\n return this._dir;\n }\n\n set dir(value: string) {\n this._dir = value;\n this.setAttribute('dir', value);\n }\n\n get hidden(): boolean {\n return this._hidden;\n }\n\n set hidden(value: boolean) {\n this._hidden = value;\n if (value) {\n this.setAttribute('hidden', '');\n } else {\n this.removeAttribute('hidden');\n }\n }\n\n get tabIndex(): number {\n return this._tabIndex;\n }\n\n set tabIndex(value: number) {\n this._tabIndex = value;\n this.setAttribute('tabindex', value.toString());\n }\n\n get accessKey(): string {\n return this._accessKey;\n }\n\n set accessKey(value: string) {\n this._accessKey = value;\n this.setAttribute('accesskey', value);\n }\n\n get contentEditable(): string {\n return this._contentEditable;\n }\n\n set contentEditable(value: string) {\n this._contentEditable = value;\n this.setAttribute('contenteditable', value);\n }\n\n get isContentEditable(): boolean {\n return this._contentEditable === 'true';\n }\n\n get innerText(): string {\n return this._innerText || this.textContent || '';\n }\n\n set innerText(value: string) {\n this._innerText = value;\n this.textContent = value;\n }\n\n get outerText(): string {\n return this._outerText || this.innerText;\n }\n\n set outerText(value: string) {\n this._outerText = value;\n if (this.parentNode) {\n const { TextBase } = require('../TextBase');\n const textNode = new TextBase(value, this._ownerDocument);\n this.parentNode.replaceChild(textNode, this);\n }\n }\n\n // innerHTML functionality is inherited from ElementBase\n\n // HTMLElement methods\n click(): void {\n // Simulate click event - in a real implementation, this would dispatch events\n console.log(`Clicked on ${this.tagName} element`);\n }\n\n focus(options?: FocusOptions): void {\n }\n\n blur(): void {\n // Remove focus state\n this.removeAttribute('data-focused');\n console.log(`Blurred ${this.tagName} element`);\n }\n\n // Override setAttribute to sync with properties\n setAttribute(qualifiedName: string, value: string): void {\n super.setAttribute(qualifiedName, value);\n\n // Sync with properties\n const name = qualifiedName.toLowerCase();\n switch (name) {\n case 'title':\n this._title = value;\n break;\n case 'lang':\n this._lang = value;\n break;\n case 'dir':\n this._dir = value;\n break;\n case 'hidden':\n this._hidden = true;\n break;\n case 'tabindex':\n this._tabIndex = parseInt(value, 10) || -1;\n break;\n case 'accesskey':\n this._accessKey = value;\n break;\n case 'contenteditable':\n this._contentEditable = value;\n break;\n }\n }\n\n // Override removeAttribute to sync with properties\n removeAttribute(qualifiedName: string): void {\n super.removeAttribute(qualifiedName);\n\n const name = qualifiedName.toLowerCase();\n switch (name) {\n case 'title':\n this._title = '';\n break;\n case 'lang':\n this._lang = '';\n break;\n case 'dir':\n this._dir = '';\n break;\n case 'hidden':\n this._hidden = false;\n break;\n case 'tabindex':\n this._tabIndex = -1;\n break;\n case 'accesskey':\n this._accessKey = '';\n break;\n case 'contenteditable':\n this._contentEditable = 'inherit';\n break;\n }\n }\n\n // New implementations for style, dataset, nonce\n private _style: CSSStyleDeclaration | null = null;\n private _dataset: DOMStringMap | null = null;\n\n get style(): CSSStyleDeclaration {\n if (!this._style) {\n this._style = new Proxy(new CSSStyleDeclarationImpl(this), {\n get: (target, prop: string | symbol) => {\n if (typeof prop === 'string' && !(prop in target)) {\n // Convert camelCase to kebab-case for CSS properties\n const cssProp = prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n return target.getPropertyValue(cssProp);\n }\n return (target as any)[prop];\n },\n set: (target, prop: string | symbol, value: any) => {\n if (typeof prop === 'string' && !(prop in target)) {\n // Convert camelCase to kebab-case for CSS properties\n const cssProp = prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n target.setProperty(cssProp, String(value));\n return true;\n }\n (target as any)[prop] = value;\n return true;\n }\n }) as unknown as CSSStyleDeclaration;\n }\n return this._style;\n }\n\n set style(value: string | CSSStyleDeclaration) {\n if (typeof value === 'string') {\n this.style.cssText = value;\n }\n }\n\n private _attributeStyleMap: StylePropertyMap | null = null;\n\n get attributeStyleMap(): StylePropertyMap {\n if (!this._attributeStyleMap) {\n this._attributeStyleMap = new StylePropertyMapImpl(this);\n }\n return this._attributeStyleMap;\n }\n\n get dataset(): DOMStringMap {\n if (!this._dataset) {\n this._dataset = new Proxy({}, {\n get: (target, prop: string | symbol) => {\n if (typeof prop === 'string') {\n // Convert camelCase to kebab-case: fooBar -> data-foo-bar\n const attrName = 'data-' + prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n return this.getAttribute(attrName);\n }\n return undefined;\n },\n set: (target, prop: string | symbol, value: any) => {\n if (typeof prop === 'string') {\n // Convert camelCase to kebab-case: fooBar -> data-foo-bar\n const attrName = 'data-' + prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n this.setAttribute(attrName, String(value));\n return true;\n }\n return false;\n },\n deleteProperty: (target, prop: string | symbol) => {\n if (typeof prop === 'string') {\n const attrName = 'data-' + prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n this.removeAttribute(attrName);\n return true;\n }\n return false;\n }\n });\n }\n return this._dataset;\n }\n\n get nonce(): string {\n return this.getAttribute('nonce') || '';\n }\n\n set nonce(value: string) {\n this.setAttribute('nonce', value);\n }\n}\n\n// CSSStyleDeclaration implementation\nclass CSSStyleDeclarationImpl {\n [key: string]: any;\n\n constructor(private element: HTMLElementBase) { }\n\n parentRule: any = null;\n\n getPropertyPriority(property: string): string {\n return '';\n }\n\n get cssText(): string {\n return this.element.getAttribute('style') || '';\n }\n\n set cssText(value: string) {\n this.element.setAttribute('style', value);\n }\n\n get length(): number {\n return this.parseStyle(this.cssText).size;\n }\n\n getPropertyValue(property: string): string {\n const style = this.parseStyle(this.cssText);\n return style.get(property) || '';\n }\n\n setProperty(property: string, value: string | null, priority: string = ''): void {\n const style = this.parseStyle(this.cssText);\n if (value === null || value === '') {\n style.delete(property);\n } else {\n style.set(property, value); // TODO: handle priority\n }\n this.cssText = this.serializeStyle(style);\n }\n\n removeProperty(property: string): string {\n const style = this.parseStyle(this.cssText);\n const value = style.get(property) || '';\n style.delete(property);\n this.cssText = this.serializeStyle(style);\n return value;\n }\n\n item(index: number): string {\n const style = this.parseStyle(this.cssText);\n return Array.from(style.keys())[index] || '';\n }\n\n private parseStyle(cssText: string): Map<string, string> {\n const style = new Map<string, string>();\n if (!cssText) return style;\n\n cssText.split(';').forEach(declaration => {\n const part = declaration.trim();\n if (!part) return;\n\n const colonIndex = part.indexOf(':');\n if (colonIndex !== -1) {\n const property = part.substring(0, colonIndex).trim();\n const value = part.substring(colonIndex + 1).trim();\n if (property && value) {\n style.set(property, value);\n }\n }\n });\n return style;\n }\n\n private serializeStyle(style: Map<string, string>): string {\n return Array.from(style.entries())\n .map(([property, value]) => `${property}: ${value}`)\n .join('; ');\n }\n}\n\n// StylePropertyMap implementation\nclass StylePropertyMapImpl implements StylePropertyMap {\n [key: string]: any;\n\n constructor(private element: HTMLElementBase) { }\n\n set(property: string, ...values: (string | any)[]): void {\n const value = values[0];\n this.element.style.setProperty(property, String(value));\n }\n\n append(property: string, ...values: (string | any)[]): void {\n this.set(property, ...values);\n }\n\n delete(property: string): void {\n this.element.style.removeProperty(property);\n }\n\n clear(): void {\n this.element.style.cssText = '';\n }\n}"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {ElementBase} from './ElementBase';\nimport {StylePropertyMapImpl} from \"../collection/StylePropertyMapImpl\";\n\n// import { HTMLElement, FocusOptions, CSSStyleDeclaration, DOMStringMap, ElementCSSInlineStyle, StylePropertyMap } from './HTMLElement';\n\n/**\n * Base implementation for all HTML elements\n */\n// @ts-ignore\nexport abstract class HTMLElementBase extends ElementBase implements HTMLElement, ElementCSSInlineStyle {\n [key: string]: any;\n private _title: string = '';\n private _lang: string = '';\n private _dir: string = '';\n private _hidden: boolean = false;\n private _tabIndex: number = -1;\n private _accessKey: string = '';\n private _contentEditable: string = 'inherit';\n private _innerText: string = '';\n private _outerText: string = '';\n\n constructor(tagName: string = 'DIV', ownerDocument?: any) {\n const ctor = new.target as any;\n const resolvedTagName = tagName || ctor?.__domParserExtendsTagName || ctor?.__domParserTagName || 'DIV';\n super(resolvedTagName, ownerDocument);\n }\n // constructor(tagName?: string , ownerDocument?: any) {\n // super(tagName, ownerDocument);\n // console.log('vvvvvvvvv', tagName)\n // }\n\n accessKeyLabel: string;\n autocapitalize: string;\n autocorrect: boolean;\n draggable: boolean;\n inert: boolean;\n offsetHeight: number;\n offsetLeft: number;\n offsetParent: Element;\n offsetTop: number;\n offsetWidth: number;\n popover: string;\n spellcheck: boolean;\n translate: boolean;\n writingSuggestions: string;\n attachInternals(): ElementInternals {\n throw new Error(\"Method not implemented.\");\n }\n hidePopover(): void {\n throw new Error(\"Method not implemented.\");\n }\n showPopover(): void {\n throw new Error(\"Method not implemented.\");\n }\n togglePopover(options?: boolean): boolean {\n throw new Error(\"Method not implemented.\");\n }\n enterKeyHint: string;\n inputMode: string;\n onabort: (this: GlobalEventHandlers, ev: UIEvent) => any;\n onanimationcancel: (this: GlobalEventHandlers, ev: AnimationEvent) => any;\n onanimationend: (this: GlobalEventHandlers, ev: AnimationEvent) => any;\n onanimationiteration: (this: GlobalEventHandlers, ev: AnimationEvent) => any;\n onanimationstart: (this: GlobalEventHandlers, ev: AnimationEvent) => any;\n onauxclick: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onbeforeinput: (this: GlobalEventHandlers, ev: InputEvent) => any;\n onbeforematch: (this: GlobalEventHandlers, ev: Event) => any;\n onbeforetoggle: (this: GlobalEventHandlers, ev: ToggleEvent) => any;\n onblur: (this: GlobalEventHandlers, ev: FocusEvent) => any;\n oncancel: (this: GlobalEventHandlers, ev: Event) => any;\n oncanplay: (this: GlobalEventHandlers, ev: Event) => any;\n oncanplaythrough: (this: GlobalEventHandlers, ev: Event) => any;\n onchange: (this: GlobalEventHandlers, ev: Event) => any;\n onclick: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onclose: (this: GlobalEventHandlers, ev: Event) => any;\n oncontextlost: (this: GlobalEventHandlers, ev: Event) => any;\n oncontextmenu: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n oncontextrestored: (this: GlobalEventHandlers, ev: Event) => any;\n oncopy: (this: GlobalEventHandlers, ev: ClipboardEvent) => any;\n oncuechange: (this: GlobalEventHandlers, ev: Event) => any;\n oncut: (this: GlobalEventHandlers, ev: ClipboardEvent) => any;\n ondblclick: (this: GlobalEventHandlers, ev: MouseEvent) => any;\n ondrag: (this: GlobalEventHandlers, ev: DragEvent) => any;\n ondragend: (this: GlobalEventHandlers, ev: DragEvent) => any;\n ondragenter: (this: GlobalEventHandlers, ev: DragEvent) => any;\n ondragleave: (this: GlobalEventHandlers, ev: DragEvent) => any;\n ondragover: (this: GlobalEventHandlers, ev: DragEvent) => any;\n ondragstart: (this: GlobalEventHandlers, ev: DragEvent) => any;\n ondrop: (this: GlobalEventHandlers, ev: DragEvent) => any;\n ondurationchange: (this: GlobalEventHandlers, ev: Event) => any;\n onemptied: (this: GlobalEventHandlers, ev: Event) => any;\n onended: (this: GlobalEventHandlers, ev: Event) => any;\n onerror: OnErrorEventHandlerNonNull;\n onfocus: (this: GlobalEventHandlers, ev: FocusEvent) => any;\n onformdata: (this: GlobalEventHandlers, ev: FormDataEvent) => any;\n ongotpointercapture: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n oninput: (this: GlobalEventHandlers, ev: Event) => any;\n oninvalid: (this: GlobalEventHandlers, ev: Event) => any;\n onkeydown: (this: GlobalEventHandlers, ev: KeyboardEvent) => any;\n onkeypress: (this: GlobalEventHandlers, ev: KeyboardEvent) => any;\n onkeyup: (this: GlobalEventHandlers, ev: KeyboardEvent) => any;\n onload: (this: GlobalEventHandlers, ev: Event) => any;\n onloadeddata: (this: GlobalEventHandlers, ev: Event) => any;\n onloadedmetadata: (this: GlobalEventHandlers, ev: Event) => any;\n onloadstart: (this: GlobalEventHandlers, ev: Event) => any;\n onlostpointercapture: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onmousedown: (this: GlobalEventHandlers, ev: MouseEvent) => any;\n onmouseenter: (this: GlobalEventHandlers, ev: MouseEvent) => any;\n onmouseleave: (this: GlobalEventHandlers, ev: MouseEvent) => any;\n onmousemove: (this: GlobalEventHandlers, ev: MouseEvent) => any;\n onmouseout: (this: GlobalEventHandlers, ev: MouseEvent) => any;\n onmouseover: (this: GlobalEventHandlers, ev: MouseEvent) => any;\n onmouseup: (this: GlobalEventHandlers, ev: MouseEvent) => any;\n onpaste: (this: GlobalEventHandlers, ev: ClipboardEvent) => any;\n onpause: (this: GlobalEventHandlers, ev: Event) => any;\n onplay: (this: GlobalEventHandlers, ev: Event) => any;\n onplaying: (this: GlobalEventHandlers, ev: Event) => any;\n onpointercancel: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onpointerdown: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onpointerenter: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onpointerleave: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onpointermove: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onpointerout: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onpointerover: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onpointerrawupdate: (this: GlobalEventHandlers, ev: Event) => any;\n onpointerup: (this: GlobalEventHandlers, ev: PointerEvent) => any;\n onprogress: (this: GlobalEventHandlers, ev: ProgressEvent) => any;\n onratechange: (this: GlobalEventHandlers, ev: Event) => any;\n onreset: (this: GlobalEventHandlers, ev: Event) => any;\n onresize: (this: GlobalEventHandlers, ev: UIEvent) => any;\n onscroll: (this: GlobalEventHandlers, ev: Event) => any;\n onscrollend: (this: GlobalEventHandlers, ev: Event) => any;\n onsecuritypolicyviolation: (this: GlobalEventHandlers, ev: SecurityPolicyViolationEvent) => any;\n onseeked: (this: GlobalEventHandlers, ev: Event) => any;\n onseeking: (this: GlobalEventHandlers, ev: Event) => any;\n onselect: (this: GlobalEventHandlers, ev: Event) => any;\n onselectionchange: (this: GlobalEventHandlers, ev: Event) => any;\n onselectstart: (this: GlobalEventHandlers, ev: Event) => any;\n onslotchange: (this: GlobalEventHandlers, ev: Event) => any;\n onstalled: (this: GlobalEventHandlers, ev: Event) => any;\n onsubmit: (this: GlobalEventHandlers, ev: SubmitEvent) => any;\n onsuspend: (this: GlobalEventHandlers, ev: Event) => any;\n ontimeupdate: (this: GlobalEventHandlers, ev: Event) => any;\n ontoggle: (this: GlobalEventHandlers, ev: ToggleEvent) => any;\n ontouchcancel?: (this: GlobalEventHandlers, ev: TouchEvent) => any;\n ontouchend?: (this: GlobalEventHandlers, ev: TouchEvent) => any;\n ontouchmove?: (this: GlobalEventHandlers, ev: TouchEvent) => any;\n ontouchstart?: (this: GlobalEventHandlers, ev: TouchEvent) => any;\n ontransitioncancel: (this: GlobalEventHandlers, ev: TransitionEvent) => any;\n ontransitionend: (this: GlobalEventHandlers, ev: TransitionEvent) => any;\n ontransitionrun: (this: GlobalEventHandlers, ev: TransitionEvent) => any;\n ontransitionstart: (this: GlobalEventHandlers, ev: TransitionEvent) => any;\n onvolumechange: (this: GlobalEventHandlers, ev: Event) => any;\n onwaiting: (this: GlobalEventHandlers, ev: Event) => any;\n onwebkitanimationend: (this: GlobalEventHandlers, ev: Event) => any;\n onwebkitanimationiteration: (this: GlobalEventHandlers, ev: Event) => any;\n onwebkitanimationstart: (this: GlobalEventHandlers, ev: Event) => any;\n onwebkittransitionend: (this: GlobalEventHandlers, ev: Event) => any;\n onwheel: (this: GlobalEventHandlers, ev: WheelEvent) => any;\n autofocus: boolean;\n\n // HTMLElement interface implementation\n get title(): string {\n return this._title;\n }\n\n set title(value: string) {\n this._title = value;\n this.setAttribute('title', value);\n }\n\n get lang(): string {\n return this._lang;\n }\n\n set lang(value: string) {\n this._lang = value;\n this.setAttribute('lang', value);\n }\n\n get dir(): string {\n return this._dir;\n }\n\n set dir(value: string) {\n this._dir = value;\n this.setAttribute('dir', value);\n }\n\n get hidden(): boolean {\n return this._hidden;\n }\n\n set hidden(value: boolean) {\n this._hidden = value;\n if (value) {\n this.setAttribute('hidden', '');\n } else {\n this.removeAttribute('hidden');\n }\n }\n\n get tabIndex(): number {\n return this._tabIndex;\n }\n\n set tabIndex(value: number) {\n this._tabIndex = value;\n this.setAttribute('tabindex', value.toString());\n }\n\n get accessKey(): string {\n return this._accessKey;\n }\n\n set accessKey(value: string) {\n this._accessKey = value;\n this.setAttribute('accesskey', value);\n }\n\n get contentEditable(): string {\n return this._contentEditable;\n }\n\n set contentEditable(value: string) {\n this._contentEditable = value;\n this.setAttribute('contenteditable', value);\n }\n\n get isContentEditable(): boolean {\n return this._contentEditable === 'true';\n }\n\n get innerText(): string {\n return this._innerText || this.textContent || '';\n }\n\n set innerText(value: string) {\n this._innerText = value;\n this.textContent = value;\n }\n\n get outerText(): string {\n return this._outerText || this.innerText;\n }\n\n set outerText(value: string) {\n this._outerText = value;\n if (this.parentNode) {\n const { TextBase } = require('../TextBase');\n const textNode = new TextBase(value, this._ownerDocument);\n this.parentNode.replaceChild(textNode, this);\n }\n }\n\n // innerHTML functionality is inherited from ElementBase\n\n // HTMLElement methods\n click(): void {\n // Simulate click event - in a real implementation, this would dispatch events\n console.log(`Clicked on ${this.tagName} element`);\n }\n\n focus(options?: FocusOptions): void {}\n\n blur(): void {\n // Remove focus state\n this.removeAttribute('data-focused');\n console.log(`Blurred ${this.tagName} element`);\n }\n\n // Override setAttribute to sync with properties\n setAttribute(qualifiedName: string, value: string): void {\n super.setAttribute(qualifiedName, value);\n\n // Sync with properties\n const name = qualifiedName.toLowerCase();\n switch (name) {\n case 'title':\n this._title = value;\n break;\n case 'lang':\n this._lang = value;\n break;\n case 'dir':\n this._dir = value;\n break;\n case 'hidden':\n this._hidden = true;\n break;\n case 'tabindex':\n this._tabIndex = parseInt(value, 10) || -1;\n break;\n case 'accesskey':\n this._accessKey = value;\n break;\n case 'contenteditable':\n this._contentEditable = value;\n break;\n }\n }\n\n // Override removeAttribute to sync with properties\n removeAttribute(qualifiedName: string): void {\n super.removeAttribute(qualifiedName);\n\n const name = qualifiedName.toLowerCase();\n switch (name) {\n case 'title':\n this._title = '';\n break;\n case 'lang':\n this._lang = '';\n break;\n case 'dir':\n this._dir = '';\n break;\n case 'hidden':\n this._hidden = false;\n break;\n case 'tabindex':\n this._tabIndex = -1;\n break;\n case 'accesskey':\n this._accessKey = '';\n break;\n case 'contenteditable':\n this._contentEditable = 'inherit';\n break;\n }\n }\n\n // New implementations for style, dataset, nonce\n private _style: CSSStyleDeclaration | null = null;\n private _dataset: DOMStringMap | null = null;\n\n get style(): any {\n if (!this._style) {\n this._style = new Proxy(new CSSStyleDeclarationImpl(this), {\n get: (target, prop: string | symbol) => {\n if (typeof prop === 'string' && !(prop in target)) {\n // Convert camelCase to kebab-case for CSS properties\n const cssProp = prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n return target.getPropertyValue(cssProp);\n }\n return (target as any)[prop];\n },\n set: (target, prop: string | symbol, value: any) => {\n if (typeof prop === 'string' && !(prop in target)) {\n // Convert camelCase to kebab-case for CSS properties\n const cssProp = prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n target.setProperty(cssProp, String(value));\n return true;\n }\n (target as any)[prop] = value;\n return true;\n }\n }) as unknown as CSSStyleDeclaration;\n }\n return this._style;\n }\n\n set style(value: string | CSSStyleDeclaration) {\n if (typeof value === 'string') {\n (this.style as any).cssText = value;\n }\n }\n\n private _attributeStyleMap: StylePropertyMap | null = null;\n\n get attributeStyleMap(): any {\n if (!this._attributeStyleMap) {\n this._attributeStyleMap = new StylePropertyMapImpl(this) as unknown as StylePropertyMap;\n }\n return this._attributeStyleMap;\n }\n\n get dataset(): any {\n if (!this._dataset) {\n this._dataset = new Proxy(\n {},\n {\n get: (target, prop: string | symbol) => {\n if (typeof prop === 'string') {\n // Convert camelCase to kebab-case: fooBar -> data-foo-bar\n const attrName = 'data-' + prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n return this.getAttribute(attrName);\n }\n return undefined;\n },\n set: (target, prop: string | symbol, value: any) => {\n if (typeof prop === 'string') {\n // Convert camelCase to kebab-case: fooBar -> data-foo-bar\n const attrName = 'data-' + prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n this.setAttribute(attrName, String(value));\n return true;\n }\n return false;\n },\n deleteProperty: (target, prop: string | symbol) => {\n if (typeof prop === 'string') {\n const attrName = 'data-' + prop.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);\n this.removeAttribute(attrName);\n return true;\n }\n return false;\n }\n }\n );\n }\n return this._dataset;\n }\n\n get nonce(): string {\n return this.getAttribute('nonce') || '';\n }\n\n set nonce(value: string) {\n this.setAttribute('nonce', value);\n }\n}\n\n// CSSStyleDeclaration implementation\nclass CSSStyleDeclarationImpl {\n [key: string]: any;\n\n constructor(private element: HTMLElementBase) {}\n\n parentRule: any = null;\n\n getPropertyPriority(property: string): string {\n return '';\n }\n\n get cssText(): string {\n return this.element.getAttribute('style') || '';\n }\n\n set cssText(value: string) {\n this.element.setAttribute('style', value);\n }\n\n get length(): number {\n return this.parseStyle(this.cssText).size;\n }\n\n getPropertyValue(property: string): string {\n const style = this.parseStyle(this.cssText);\n return style.get(property) || '';\n }\n\n setProperty(property: string, value: string | null, priority: string = ''): void {\n const style = this.parseStyle(this.cssText);\n if (value === null || value === '') {\n style.delete(property);\n } else {\n style.set(property, value); // TODO: handle priority\n }\n this.cssText = this.serializeStyle(style);\n }\n\n removeProperty(property: string): string {\n const style = this.parseStyle(this.cssText);\n const value = style.get(property) || '';\n style.delete(property);\n this.cssText = this.serializeStyle(style);\n return value;\n }\n\n item(index: number): string {\n const style = this.parseStyle(this.cssText);\n return Array.from(style.keys())[index] || '';\n }\n\n private parseStyle(cssText: string): Map<string, string> {\n const style = new Map<string, string>();\n if (!cssText) return style;\n\n cssText.split(';').forEach(declaration => {\n const part = declaration.trim();\n if (!part) return;\n\n const colonIndex = part.indexOf(':');\n if (colonIndex !== -1) {\n const property = part.substring(0, colonIndex).trim();\n const value = part.substring(colonIndex + 1).trim();\n if (property && value) {\n style.set(property, value);\n }\n }\n });\n return style;\n }\n\n private serializeStyle(style: Map<string, string>): string {\n return Array.from(style.entries())\n .map(([property, value]) => `${property}: ${value}`)\n .join('; ');\n }\n}\n\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -20,8 +20,8 @@ __export(HTMLEmbedElement_exports, {
20
20
  HTMLEmbedElement: () => HTMLEmbedElement
21
21
  });
22
22
  module.exports = __toCommonJS(HTMLEmbedElement_exports);
23
- var import_HTMLElementBase = require("./HTMLElementBase");
24
- class HTMLEmbedElement extends import_HTMLElementBase.HTMLElementBase {
23
+ var import_HTMLElement = require("./HTMLElement");
24
+ class HTMLEmbedElement extends import_HTMLElement.HTMLElement {
25
25
  constructor(ownerDocument) {
26
26
  super("embed", ownerDocument);
27
27
  /**
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/elements/HTMLEmbedElement.ts"],
4
- "sourcesContent": ["import { HTMLElementBase } from './HTMLElementBase';\nimport { Document } from '../Document';\n\n/**\n * The **`HTMLEmbedElement`** interface provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating `<embed>` elements.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLEmbedElement)\n */\nexport class HTMLEmbedElement extends HTMLElementBase {\n /**\n * A string reflecting the `src` HTML attribute, containing the address of the resource.\n */\n src: string = '';\n\n /**\n * A string reflecting the `type` HTML attribute, containing the type of the resource.\n */\n type: string = '';\n\n /**\n * A string reflecting the `width` HTML attribute, containing the displayed width of the resource in CSS pixels.\n */\n width: string = '';\n\n /**\n * A string reflecting the `height` HTML attribute, containing the displayed height of the resource in CSS pixels.\n */\n height: string = '';\n\n constructor(ownerDocument: Document) {\n super('embed', ownerDocument);\n }\n}"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAAgC;AAQzB,MAAM,yBAAyB,uCAAgB;AAAA,EAqBlD,YAAY,eAAyB;AACjC,UAAM,SAAS,aAAa;AAlBhC;AAAA;AAAA;AAAA,eAAc;AAKd;AAAA;AAAA;AAAA,gBAAe;AAKf;AAAA;AAAA;AAAA,iBAAgB;AAKhB;AAAA;AAAA;AAAA,kBAAiB;AAAA,EAIjB;AACJ;",
4
+ "sourcesContent": ["import { HTMLElementBase } from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\n\n/**\n * The **`HTMLEmbedElement`** interface provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating `<embed>` elements.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLEmbedElement)\n */\nexport class HTMLEmbedElement extends HTMLElement {\n /**\n * A string reflecting the `src` HTML attribute, containing the address of the resource.\n */\n src: string = '';\n\n /**\n * A string reflecting the `type` HTML attribute, containing the type of the resource.\n */\n type: string = '';\n\n /**\n * A string reflecting the `width` HTML attribute, containing the displayed width of the resource in CSS pixels.\n */\n width: string = '';\n\n /**\n * A string reflecting the `height` HTML attribute, containing the displayed height of the resource in CSS pixels.\n */\n height: string = '';\n\n constructor(ownerDocument: Document) {\n super('embed', ownerDocument);\n }\n}"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AAOnB,MAAM,yBAAyB,+BAAY;AAAA,EAqB9C,YAAY,eAAyB;AACjC,UAAM,SAAS,aAAa;AAlBhC;AAAA;AAAA;AAAA,eAAc;AAKd;AAAA;AAAA;AAAA,gBAAe;AAKf;AAAA;AAAA;AAAA,iBAAgB;AAKhB;AAAA;AAAA;AAAA,kBAAiB;AAAA,EAIjB;AACJ;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,29 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var HTMLFieldSetElement_exports = {};
19
+ __export(HTMLFieldSetElement_exports, {
20
+ HTMLFieldSetElement: () => HTMLFieldSetElement
21
+ });
22
+ module.exports = __toCommonJS(HTMLFieldSetElement_exports);
23
+ var import_HTMLElement = require("./HTMLElement");
24
+ class HTMLFieldSetElement extends import_HTMLElement.HTMLElement {
25
+ constructor(tagName = "FIELDSET", ownerDocument) {
26
+ super(tagName, ownerDocument);
27
+ }
28
+ }
29
+ //# sourceMappingURL=HTMLFieldSetElement.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/elements/HTMLFieldSetElement.ts"],
4
+ "sourcesContent": ["import {HTMLElementBase} from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\n\nexport class HTMLFieldSetElement extends HTMLElement {\n constructor(tagName: string = 'FIELDSET', ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AAEnB,MAAM,4BAA4B,+BAAY;AAAA,EACnD,YAAY,UAAkB,YAAY,eAAqB;AAC7D,UAAM,SAAS,aAAa;AAAA,EAC9B;AACF;",
6
+ "names": []
7
+ }
@@ -20,8 +20,8 @@ __export(HTMLFormElement_exports, {
20
20
  HTMLFormElement: () => HTMLFormElement
21
21
  });
22
22
  module.exports = __toCommonJS(HTMLFormElement_exports);
23
- var import_HTMLElementBase = require("./HTMLElementBase");
24
- class HTMLFormElement extends import_HTMLElementBase.HTMLElementBase {
23
+ var import_HTMLElement = require("./HTMLElement");
24
+ class HTMLFormElement extends import_HTMLElement.HTMLElement {
25
25
  constructor(tagName, ownerDocument) {
26
26
  super(tagName, ownerDocument);
27
27
  this._action = "";
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/elements/HTMLFormElement.ts"],
4
- "sourcesContent": ["import { HTMLElementBase } from './HTMLElementBase';\n\n/**\n * The **`HTMLFormElement`** class represents an HTML `<form>` element.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement)\n */\nexport class HTMLFormElement extends HTMLElementBase {\n private _action: string = '';\n private _method: string = 'get';\n private _enctype: string = 'application/x-www-form-urlencoded';\n private _target: string = '';\n private _noValidate: boolean = false;\n \n constructor(tagName: string, ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n\n get action(): string {\n return this._action;\n }\n\n set action(value: string) {\n this._action = value;\n this.setAttribute('action', value);\n }\n\n get method(): string {\n return this._method;\n }\n\n set method(value: string) {\n this._method = value.toLowerCase();\n this.setAttribute('method', value);\n }\n\n get enctype(): string {\n return this._enctype;\n }\n\n set enctype(value: string) {\n this._enctype = value;\n this.setAttribute('enctype', value);\n }\n\n get target(): string {\n return this._target;\n }\n\n set target(value: string) {\n this._target = value;\n this.setAttribute('target', value);\n }\n\n get noValidate(): boolean {\n return this._noValidate;\n }\n\n set noValidate(value: boolean) {\n this._noValidate = value;\n if (value) {\n this.setAttribute('novalidate', '');\n } else {\n this.removeAttribute('novalidate');\n }\n }\n\n // Form methods\n submit(): void {\n // Form submission logic would go here\n console.log('Form submitted');\n }\n\n reset(): void {\n // Form reset logic would go here\n console.log('Form reset');\n }\n\n checkValidity(): boolean {\n // Form validation logic would go here\n return true;\n }\n\n // Override setAttribute to sync with properties\n setAttribute(qualifiedName: string, value: string): void {\n super.setAttribute(qualifiedName, value);\n \n const name = qualifiedName.toLowerCase();\n switch (name) {\n case 'action':\n this._action = value;\n break;\n case 'method':\n this._method = value.toLowerCase();\n break;\n case 'enctype':\n this._enctype = value;\n break;\n case 'target':\n this._target = value;\n break;\n case 'novalidate':\n this._noValidate = true;\n break;\n }\n }\n\n // Override removeAttribute to sync with properties\n removeAttribute(qualifiedName: string): void {\n super.removeAttribute(qualifiedName);\n \n const name = qualifiedName.toLowerCase();\n switch (name) {\n case 'action':\n this._action = '';\n break;\n case 'method':\n this._method = 'get';\n break;\n case 'enctype':\n this._enctype = 'application/x-www-form-urlencoded';\n break;\n case 'target':\n this._target = '';\n break;\n case 'novalidate':\n this._noValidate = false;\n break;\n }\n }\n}"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAAgC;AAOzB,MAAM,wBAAwB,uCAAgB;AAAA,EAOjD,YAAY,SAAiB,eAAqB;AAC9C,UAAM,SAAS,aAAa;AAPhC,SAAQ,UAAkB;AAC1B,SAAQ,UAAkB;AAC1B,SAAQ,WAAmB;AAC3B,SAAQ,UAAkB;AAC1B,SAAQ,cAAuB;AAAA,EAI/B;AAAA,EAEA,IAAI,SAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,OAAe;AACtB,SAAK,UAAU;AACf,SAAK,aAAa,UAAU,KAAK;AAAA,EACrC;AAAA,EAEA,IAAI,SAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,OAAe;AACtB,SAAK,UAAU,MAAM,YAAY;AACjC,SAAK,aAAa,UAAU,KAAK;AAAA,EACrC;AAAA,EAEA,IAAI,UAAkB;AAClB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,QAAQ,OAAe;AACvB,SAAK,WAAW;AAChB,SAAK,aAAa,WAAW,KAAK;AAAA,EACtC;AAAA,EAEA,IAAI,SAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,OAAe;AACtB,SAAK,UAAU;AACf,SAAK,aAAa,UAAU,KAAK;AAAA,EACrC;AAAA,EAEA,IAAI,aAAsB;AACtB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,WAAW,OAAgB;AAC3B,SAAK,cAAc;AACnB,QAAI,OAAO;AACP,WAAK,aAAa,cAAc,EAAE;AAAA,IACtC,OAAO;AACH,WAAK,gBAAgB,YAAY;AAAA,IACrC;AAAA,EACJ;AAAA;AAAA,EAGA,SAAe;AAEX,YAAQ,IAAI,gBAAgB;AAAA,EAChC;AAAA,EAEA,QAAc;AAEV,YAAQ,IAAI,YAAY;AAAA,EAC5B;AAAA,EAEA,gBAAyB;AAErB,WAAO;AAAA,EACX;AAAA;AAAA,EAGA,aAAa,eAAuB,OAAqB;AACrD,UAAM,aAAa,eAAe,KAAK;AAEvC,UAAM,OAAO,cAAc,YAAY;AACvC,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,UAAU,MAAM,YAAY;AACjC;AAAA,MACJ,KAAK;AACD,aAAK,WAAW;AAChB;AAAA,MACJ,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,cAAc;AACnB;AAAA,IACR;AAAA,EACJ;AAAA;AAAA,EAGA,gBAAgB,eAA6B;AACzC,UAAM,gBAAgB,aAAa;AAEnC,UAAM,OAAO,cAAc,YAAY;AACvC,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,WAAW;AAChB;AAAA,MACJ,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,cAAc;AACnB;AAAA,IACR;AAAA,EACJ;AACJ;",
4
+ "sourcesContent": ["import { HTMLElementBase } from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\n\n/**\n * The **`HTMLFormElement`** class represents an HTML `<form>` element.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement)\n */\nexport class HTMLFormElement extends HTMLElement {\n private _action: string = '';\n private _method: string = 'get';\n private _enctype: string = 'application/x-www-form-urlencoded';\n private _target: string = '';\n private _noValidate: boolean = false;\n \n constructor(tagName: string, ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n\n get action(): string {\n return this._action;\n }\n\n set action(value: string) {\n this._action = value;\n this.setAttribute('action', value);\n }\n\n get method(): string {\n return this._method;\n }\n\n set method(value: string) {\n this._method = value.toLowerCase();\n this.setAttribute('method', value);\n }\n\n get enctype(): string {\n return this._enctype;\n }\n\n set enctype(value: string) {\n this._enctype = value;\n this.setAttribute('enctype', value);\n }\n\n get target(): string {\n return this._target;\n }\n\n set target(value: string) {\n this._target = value;\n this.setAttribute('target', value);\n }\n\n get noValidate(): boolean {\n return this._noValidate;\n }\n\n set noValidate(value: boolean) {\n this._noValidate = value;\n if (value) {\n this.setAttribute('novalidate', '');\n } else {\n this.removeAttribute('novalidate');\n }\n }\n\n // Form methods\n submit(): void {\n // Form submission logic would go here\n console.log('Form submitted');\n }\n\n reset(): void {\n // Form reset logic would go here\n console.log('Form reset');\n }\n\n checkValidity(): boolean {\n // Form validation logic would go here\n return true;\n }\n\n // Override setAttribute to sync with properties\n setAttribute(qualifiedName: string, value: string): void {\n super.setAttribute(qualifiedName, value);\n \n const name = qualifiedName.toLowerCase();\n switch (name) {\n case 'action':\n this._action = value;\n break;\n case 'method':\n this._method = value.toLowerCase();\n break;\n case 'enctype':\n this._enctype = value;\n break;\n case 'target':\n this._target = value;\n break;\n case 'novalidate':\n this._noValidate = true;\n break;\n }\n }\n\n // Override removeAttribute to sync with properties\n removeAttribute(qualifiedName: string): void {\n super.removeAttribute(qualifiedName);\n \n const name = qualifiedName.toLowerCase();\n switch (name) {\n case 'action':\n this._action = '';\n break;\n case 'method':\n this._method = 'get';\n break;\n case 'enctype':\n this._enctype = 'application/x-www-form-urlencoded';\n break;\n case 'target':\n this._target = '';\n break;\n case 'novalidate':\n this._noValidate = false;\n break;\n }\n }\n}"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AAOnB,MAAM,wBAAwB,+BAAY;AAAA,EAO7C,YAAY,SAAiB,eAAqB;AAC9C,UAAM,SAAS,aAAa;AAPhC,SAAQ,UAAkB;AAC1B,SAAQ,UAAkB;AAC1B,SAAQ,WAAmB;AAC3B,SAAQ,UAAkB;AAC1B,SAAQ,cAAuB;AAAA,EAI/B;AAAA,EAEA,IAAI,SAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,OAAe;AACtB,SAAK,UAAU;AACf,SAAK,aAAa,UAAU,KAAK;AAAA,EACrC;AAAA,EAEA,IAAI,SAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,OAAe;AACtB,SAAK,UAAU,MAAM,YAAY;AACjC,SAAK,aAAa,UAAU,KAAK;AAAA,EACrC;AAAA,EAEA,IAAI,UAAkB;AAClB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,QAAQ,OAAe;AACvB,SAAK,WAAW;AAChB,SAAK,aAAa,WAAW,KAAK;AAAA,EACtC;AAAA,EAEA,IAAI,SAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,OAAe;AACtB,SAAK,UAAU;AACf,SAAK,aAAa,UAAU,KAAK;AAAA,EACrC;AAAA,EAEA,IAAI,aAAsB;AACtB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,WAAW,OAAgB;AAC3B,SAAK,cAAc;AACnB,QAAI,OAAO;AACP,WAAK,aAAa,cAAc,EAAE;AAAA,IACtC,OAAO;AACH,WAAK,gBAAgB,YAAY;AAAA,IACrC;AAAA,EACJ;AAAA;AAAA,EAGA,SAAe;AAEX,YAAQ,IAAI,gBAAgB;AAAA,EAChC;AAAA,EAEA,QAAc;AAEV,YAAQ,IAAI,YAAY;AAAA,EAC5B;AAAA,EAEA,gBAAyB;AAErB,WAAO;AAAA,EACX;AAAA;AAAA,EAGA,aAAa,eAAuB,OAAqB;AACrD,UAAM,aAAa,eAAe,KAAK;AAEvC,UAAM,OAAO,cAAc,YAAY;AACvC,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,UAAU,MAAM,YAAY;AACjC;AAAA,MACJ,KAAK;AACD,aAAK,WAAW;AAChB;AAAA,MACJ,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,cAAc;AACnB;AAAA,IACR;AAAA,EACJ;AAAA;AAAA,EAGA,gBAAgB,eAA6B;AACzC,UAAM,gBAAgB,aAAa;AAEnC,UAAM,OAAO,cAAc,YAAY;AACvC,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,WAAW;AAChB;AAAA,MACJ,KAAK;AACD,aAAK,UAAU;AACf;AAAA,MACJ,KAAK;AACD,aAAK,cAAc;AACnB;AAAA,IACR;AAAA,EACJ;AACJ;",
6
6
  "names": []
7
7
  }
@@ -20,8 +20,8 @@ __export(HTMLH1Element_exports, {
20
20
  HTMLH1Element: () => HTMLH1Element
21
21
  });
22
22
  module.exports = __toCommonJS(HTMLH1Element_exports);
23
- var import_HTMLElementBase = require("./HTMLElementBase");
24
- class HTMLH1Element extends import_HTMLElementBase.HTMLElementBase {
23
+ var import_HTMLElement = require("./HTMLElement");
24
+ class HTMLH1Element extends import_HTMLElement.HTMLElement {
25
25
  constructor(tagName, ownerDocument) {
26
26
  super(tagName, ownerDocument);
27
27
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/elements/HTMLH1Element.ts"],
4
- "sourcesContent": ["import { HTMLElementBase } from './HTMLElementBase';\n\n/**\n * The **`HTMLH1Element`** class represents an HTML `<h1>` element.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadingElement)\n */\nexport class HTMLH1Element extends HTMLElementBase {\n constructor(tagName: string, ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAAgC;AAOzB,MAAM,sBAAsB,uCAAgB;AAAA,EAC/C,YAAY,SAAiB,eAAqB;AAC9C,UAAM,SAAS,aAAa;AAAA,EAChC;AACJ;",
4
+ "sourcesContent": ["import { HTMLElementBase } from './HTMLElementBase';\nimport {HTMLElement} from \"./HTMLElement\";\n\n/**\n * The **`HTMLH1Element`** class represents an HTML `<h1>` element.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadingElement)\n */\nexport class HTMLH1Element extends HTMLElement {\n constructor(tagName: string, ownerDocument?: any) {\n super(tagName, ownerDocument);\n }\n}"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA0B;AAOnB,MAAM,sBAAsB,+BAAY;AAAA,EAC3C,YAAY,SAAiB,eAAqB;AAC9C,UAAM,SAAS,aAAa;AAAA,EAChC;AACJ;",
6
6
  "names": []
7
7
  }