@dooboostore/dom-parser 1.0.1 → 1.0.3

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 (519) hide show
  1. package/dist/cjs/DomParser.js +43 -13
  2. package/dist/cjs/DomParser.js.map +2 -2
  3. package/dist/cjs/factory/ElementFactory.js +27 -6
  4. package/dist/cjs/factory/ElementFactory.js.map +2 -2
  5. package/dist/cjs/index.js +4 -0
  6. package/dist/cjs/index.js.map +2 -2
  7. package/dist/cjs/node/CharacterData.js.map +1 -1
  8. package/dist/cjs/node/ChildNode.js +0 -15
  9. package/dist/cjs/node/ChildNode.js.map +3 -3
  10. package/dist/cjs/node/ChildNodeBase.js +20 -0
  11. package/dist/cjs/node/ChildNodeBase.js.map +2 -2
  12. package/dist/cjs/node/Comment.js.map +2 -2
  13. package/dist/cjs/node/Document.js +0 -27
  14. package/dist/cjs/node/Document.js.map +4 -4
  15. package/dist/cjs/node/DocumentBase.js +169 -202
  16. package/dist/cjs/node/DocumentBase.js.map +2 -2
  17. package/dist/cjs/node/DocumentFragment.js +0 -15
  18. package/dist/cjs/node/DocumentFragment.js.map +3 -3
  19. package/dist/cjs/node/DocumentFragmentBase.js.map +2 -2
  20. package/dist/cjs/node/Node.js.map +1 -1
  21. package/dist/cjs/node/NodeBase.js +44 -2
  22. package/dist/cjs/node/NodeBase.js.map +2 -2
  23. package/dist/cjs/node/NodeFilter.js +43 -0
  24. package/dist/cjs/node/NodeFilter.js.map +7 -0
  25. package/dist/cjs/node/NodeIterator.js +1 -28
  26. package/dist/cjs/node/NodeIterator.js.map +2 -2
  27. package/dist/cjs/node/ParentNode.js +0 -15
  28. package/dist/cjs/node/ParentNode.js.map +3 -3
  29. package/dist/cjs/node/ParentNodeBase.js +10 -10
  30. package/dist/cjs/node/ParentNodeBase.js.map +3 -3
  31. package/dist/cjs/node/ShadowRootBase.js +79 -0
  32. package/dist/cjs/node/ShadowRootBase.js.map +7 -0
  33. package/dist/cjs/node/Text.js +0 -15
  34. package/dist/cjs/node/Text.js.map +3 -3
  35. package/dist/cjs/node/TextBase.js +0 -3
  36. package/dist/cjs/node/TextBase.js.map +2 -2
  37. package/dist/cjs/node/TreeWalker.js +272 -0
  38. package/dist/cjs/node/TreeWalker.js.map +7 -0
  39. package/dist/cjs/node/collection/{HTMLCollection.js → HTMLCollectionImp.js} +7 -6
  40. package/dist/cjs/node/collection/HTMLCollectionImp.js.map +7 -0
  41. package/dist/cjs/node/collection/HTMLCollectionOfImp.js +26 -0
  42. package/dist/cjs/node/collection/HTMLCollectionOfImp.js.map +7 -0
  43. package/dist/cjs/node/collection/NodeList.js.map +1 -1
  44. package/dist/cjs/node/collection/{NodeListOf.js → NodeListOfImp.js} +6 -6
  45. package/dist/cjs/node/collection/NodeListOfImp.js.map +7 -0
  46. package/dist/cjs/node/collection/StylePropertyMapImpl.js +65 -0
  47. package/dist/cjs/node/collection/StylePropertyMapImpl.js.map +7 -0
  48. package/dist/cjs/node/collection/index.js +6 -6
  49. package/dist/cjs/node/collection/index.js.map +2 -2
  50. package/dist/cjs/node/elements/Element.js +0 -15
  51. package/dist/cjs/node/elements/Element.js.map +3 -3
  52. package/dist/cjs/node/elements/ElementBase.js +164 -322
  53. package/dist/cjs/node/elements/ElementBase.js.map +3 -3
  54. package/dist/cjs/node/elements/HTMLAreaElement.js.map +2 -2
  55. package/dist/cjs/node/{collection/HTMLCollectionOf.js → elements/HTMLAudioElement.js} +9 -16
  56. package/dist/cjs/node/elements/HTMLAudioElement.js.map +7 -0
  57. package/dist/cjs/node/elements/HTMLButtonElement.js +1 -1
  58. package/dist/cjs/node/elements/HTMLButtonElement.js.map +2 -2
  59. package/dist/cjs/node/elements/HTMLDListElement.js +29 -0
  60. package/dist/cjs/node/elements/HTMLDListElement.js.map +7 -0
  61. package/dist/cjs/node/elements/HTMLDataElement.js +29 -0
  62. package/dist/cjs/node/elements/HTMLDataElement.js.map +7 -0
  63. package/dist/cjs/node/elements/HTMLDataListElement.js +29 -0
  64. package/dist/cjs/node/elements/HTMLDataListElement.js.map +7 -0
  65. package/dist/cjs/node/elements/HTMLDetailsElement.js +29 -0
  66. package/dist/cjs/node/elements/HTMLDetailsElement.js.map +7 -0
  67. package/dist/cjs/node/elements/HTMLDialogElement.js +29 -0
  68. package/dist/cjs/node/elements/HTMLDialogElement.js.map +7 -0
  69. package/dist/cjs/node/elements/HTMLElement.js +10 -0
  70. package/dist/cjs/node/elements/HTMLElement.js.map +2 -2
  71. package/dist/cjs/node/elements/HTMLElementBase.js +153 -3
  72. package/dist/cjs/node/elements/HTMLElementBase.js.map +2 -2
  73. package/dist/cjs/node/elements/HTMLEmbedElement.js.map +2 -2
  74. package/dist/cjs/node/elements/HTMLFieldSetElement.js +29 -0
  75. package/dist/cjs/node/elements/HTMLFieldSetElement.js.map +7 -0
  76. package/dist/cjs/node/elements/HTMLHRElement.js +29 -0
  77. package/dist/cjs/node/elements/HTMLHRElement.js.map +7 -0
  78. package/dist/cjs/node/elements/HTMLIFrameElement.js +29 -0
  79. package/dist/cjs/node/elements/HTMLIFrameElement.js.map +7 -0
  80. package/dist/cjs/node/elements/HTMLLabelElement.js +29 -0
  81. package/dist/cjs/node/elements/HTMLLabelElement.js.map +7 -0
  82. package/dist/cjs/node/elements/HTMLLegendElement.js +29 -0
  83. package/dist/cjs/node/elements/HTMLLegendElement.js.map +7 -0
  84. package/dist/cjs/node/elements/HTMLMapElement.js +29 -0
  85. package/dist/cjs/node/elements/HTMLMapElement.js.map +7 -0
  86. package/dist/cjs/node/elements/HTMLMeterElement.js +29 -0
  87. package/dist/cjs/node/elements/HTMLMeterElement.js.map +7 -0
  88. package/dist/cjs/node/elements/HTMLModElement.js +29 -0
  89. package/dist/cjs/node/elements/HTMLModElement.js.map +7 -0
  90. package/dist/cjs/node/elements/HTMLObjectElement.js +29 -0
  91. package/dist/cjs/node/elements/HTMLObjectElement.js.map +7 -0
  92. package/dist/cjs/node/elements/HTMLOptGroupElement.js +29 -0
  93. package/dist/cjs/node/elements/HTMLOptGroupElement.js.map +7 -0
  94. package/dist/cjs/node/elements/HTMLOptionElement.js +29 -0
  95. package/dist/cjs/node/elements/HTMLOptionElement.js.map +7 -0
  96. package/dist/cjs/node/elements/HTMLOutputElement.js +29 -0
  97. package/dist/cjs/node/elements/HTMLOutputElement.js.map +7 -0
  98. package/dist/cjs/node/elements/HTMLParamElement.js +29 -0
  99. package/dist/cjs/node/elements/HTMLParamElement.js.map +7 -0
  100. package/dist/cjs/node/elements/HTMLPictureElement.js +29 -0
  101. package/dist/cjs/node/elements/HTMLPictureElement.js.map +7 -0
  102. package/dist/cjs/node/elements/HTMLPreElement.js +29 -0
  103. package/dist/cjs/node/elements/HTMLPreElement.js.map +7 -0
  104. package/dist/cjs/node/elements/HTMLProgressElement.js +29 -0
  105. package/dist/cjs/node/elements/HTMLProgressElement.js.map +7 -0
  106. package/dist/cjs/node/elements/HTMLQuoteElement.js +29 -0
  107. package/dist/cjs/node/elements/HTMLQuoteElement.js.map +7 -0
  108. package/dist/cjs/node/elements/HTMLSelectElement.js +29 -0
  109. package/dist/cjs/node/elements/HTMLSelectElement.js.map +7 -0
  110. package/dist/cjs/node/elements/HTMLSlotElement.js +29 -0
  111. package/dist/cjs/node/elements/HTMLSlotElement.js.map +7 -0
  112. package/dist/cjs/node/elements/HTMLSourceElement.js +29 -0
  113. package/dist/cjs/node/elements/HTMLSourceElement.js.map +7 -0
  114. package/dist/cjs/node/elements/HTMLTableElement.js.map +2 -2
  115. package/dist/cjs/node/elements/HTMLTbodyElement.js.map +2 -2
  116. package/dist/cjs/node/elements/HTMLTdElement.js.map +2 -2
  117. package/dist/cjs/node/elements/HTMLTemplateElement.js.map +2 -2
  118. package/dist/cjs/node/elements/HTMLTextAreaElement.js +29 -0
  119. package/dist/cjs/node/elements/HTMLTextAreaElement.js.map +7 -0
  120. package/dist/cjs/node/elements/HTMLTfootElement.js.map +2 -2
  121. package/dist/cjs/node/elements/HTMLTheadElement.js.map +2 -2
  122. package/dist/cjs/node/elements/HTMLTimeElement.js +29 -0
  123. package/dist/cjs/node/elements/HTMLTimeElement.js.map +7 -0
  124. package/dist/cjs/node/elements/HTMLTrElement.js.map +2 -2
  125. package/dist/cjs/node/elements/HTMLTrackElement.js +29 -0
  126. package/dist/cjs/node/elements/HTMLTrackElement.js.map +7 -0
  127. package/dist/cjs/node/elements/HTMLVideoElement.js +29 -0
  128. package/dist/cjs/node/elements/HTMLVideoElement.js.map +7 -0
  129. package/dist/cjs/node/elements/index.js +181 -92
  130. package/dist/cjs/node/elements/index.js.map +2 -2
  131. package/dist/cjs/node/index.js +6 -16
  132. package/dist/cjs/node/index.js.map +2 -2
  133. package/dist/cjs/utils/CSSSelector.js.map +2 -2
  134. package/dist/cjs/window/CustomElementRegistryImp.js +105 -0
  135. package/dist/cjs/window/CustomElementRegistryImp.js.map +7 -0
  136. package/dist/cjs/window/Window.js +0 -15
  137. package/dist/cjs/window/Window.js.map +3 -3
  138. package/dist/cjs/window/WindowBase.js +233 -515
  139. package/dist/cjs/window/WindowBase.js.map +2 -2
  140. package/dist/cjs/window/index.js +0 -5
  141. package/dist/cjs/window/index.js.map +2 -2
  142. package/dist/esm/DomParser.js +43 -13
  143. package/dist/esm/DomParser.js.map +2 -2
  144. package/dist/esm/factory/ElementFactory.js +27 -6
  145. package/dist/esm/factory/ElementFactory.js.map +2 -2
  146. package/dist/esm/index.js +4 -0
  147. package/dist/esm/index.js.map +2 -2
  148. package/dist/esm/node/ChildNodeBase.js +20 -0
  149. package/dist/esm/node/ChildNodeBase.js.map +2 -2
  150. package/dist/esm/node/Comment.js.map +2 -2
  151. package/dist/esm/node/Document.js +0 -8
  152. package/dist/esm/node/Document.js.map +4 -4
  153. package/dist/esm/node/DocumentBase.js +166 -199
  154. package/dist/esm/node/DocumentBase.js.map +2 -2
  155. package/dist/esm/node/DocumentFragmentBase.js.map +2 -2
  156. package/dist/esm/node/Node.js.map +1 -1
  157. package/dist/esm/node/NodeBase.js +45 -22
  158. package/dist/esm/node/NodeBase.js.map +2 -2
  159. package/dist/esm/node/NodeFilter.js +24 -0
  160. package/dist/esm/node/NodeFilter.js.map +7 -0
  161. package/dist/esm/node/NodeIterator.js +1 -28
  162. package/dist/esm/node/NodeIterator.js.map +2 -2
  163. package/dist/esm/node/ParentNodeBase.js +4 -4
  164. package/dist/esm/node/ParentNodeBase.js.map +2 -2
  165. package/dist/esm/node/ShadowRootBase.js +60 -0
  166. package/dist/esm/node/ShadowRootBase.js.map +7 -0
  167. package/dist/esm/node/TextBase.js +0 -3
  168. package/dist/esm/node/TextBase.js.map +2 -2
  169. package/dist/esm/node/TreeWalker.js +253 -0
  170. package/dist/esm/node/TreeWalker.js.map +7 -0
  171. package/dist/esm/node/collection/{HTMLCollection.js → HTMLCollectionImp.js} +4 -3
  172. package/dist/esm/node/collection/HTMLCollectionImp.js.map +7 -0
  173. package/dist/esm/node/collection/HTMLCollectionOfImp.js +7 -0
  174. package/dist/esm/node/collection/HTMLCollectionOfImp.js.map +7 -0
  175. package/dist/esm/node/collection/NodeList.js.map +1 -1
  176. package/dist/esm/node/collection/{NodeListOf.js → NodeListOfImp.js} +3 -3
  177. package/dist/esm/node/collection/NodeListOfImp.js.map +7 -0
  178. package/dist/esm/node/collection/StylePropertyMapImpl.js +46 -0
  179. package/dist/esm/node/collection/StylePropertyMapImpl.js.map +7 -0
  180. package/dist/esm/node/collection/index.js +6 -6
  181. package/dist/esm/node/collection/index.js.map +2 -2
  182. package/dist/esm/node/elements/ElementBase.js +164 -322
  183. package/dist/esm/node/elements/ElementBase.js.map +3 -3
  184. package/dist/esm/node/elements/HTMLAreaElement.js.map +2 -2
  185. package/dist/esm/node/elements/HTMLAudioElement.js +10 -0
  186. package/dist/esm/node/elements/HTMLAudioElement.js.map +7 -0
  187. package/dist/esm/node/elements/HTMLButtonElement.js +1 -1
  188. package/dist/esm/node/elements/HTMLButtonElement.js.map +2 -2
  189. package/dist/esm/node/elements/HTMLDListElement.js +10 -0
  190. package/dist/esm/node/elements/HTMLDListElement.js.map +7 -0
  191. package/dist/esm/node/elements/HTMLDataElement.js +10 -0
  192. package/dist/esm/node/elements/HTMLDataElement.js.map +7 -0
  193. package/dist/esm/node/elements/HTMLDataListElement.js +10 -0
  194. package/dist/esm/node/elements/HTMLDataListElement.js.map +7 -0
  195. package/dist/esm/node/elements/HTMLDetailsElement.js +10 -0
  196. package/dist/esm/node/elements/HTMLDetailsElement.js.map +7 -0
  197. package/dist/esm/node/elements/HTMLDialogElement.js +10 -0
  198. package/dist/esm/node/elements/HTMLDialogElement.js.map +7 -0
  199. package/dist/esm/node/elements/HTMLElement.js +6 -0
  200. package/dist/esm/node/elements/HTMLElement.js.map +3 -3
  201. package/dist/esm/node/elements/HTMLElementBase.js +153 -3
  202. package/dist/esm/node/elements/HTMLElementBase.js.map +2 -2
  203. package/dist/esm/node/elements/HTMLEmbedElement.js.map +2 -2
  204. package/dist/esm/node/elements/HTMLFieldSetElement.js +10 -0
  205. package/dist/esm/node/elements/HTMLFieldSetElement.js.map +7 -0
  206. package/dist/esm/node/elements/HTMLHRElement.js +10 -0
  207. package/dist/esm/node/elements/HTMLHRElement.js.map +7 -0
  208. package/dist/esm/node/elements/HTMLIFrameElement.js +10 -0
  209. package/dist/esm/node/elements/HTMLIFrameElement.js.map +7 -0
  210. package/dist/esm/node/elements/HTMLLabelElement.js +10 -0
  211. package/dist/esm/node/elements/HTMLLabelElement.js.map +7 -0
  212. package/dist/esm/node/elements/HTMLLegendElement.js +10 -0
  213. package/dist/esm/node/elements/HTMLLegendElement.js.map +7 -0
  214. package/dist/esm/node/elements/HTMLMapElement.js +10 -0
  215. package/dist/esm/node/elements/HTMLMapElement.js.map +7 -0
  216. package/dist/esm/node/elements/HTMLMeterElement.js +10 -0
  217. package/dist/esm/node/elements/HTMLMeterElement.js.map +7 -0
  218. package/dist/esm/node/elements/HTMLModElement.js +10 -0
  219. package/dist/esm/node/elements/HTMLModElement.js.map +7 -0
  220. package/dist/esm/node/elements/HTMLObjectElement.js +10 -0
  221. package/dist/esm/node/elements/HTMLObjectElement.js.map +7 -0
  222. package/dist/esm/node/elements/HTMLOptGroupElement.js +10 -0
  223. package/dist/esm/node/elements/HTMLOptGroupElement.js.map +7 -0
  224. package/dist/esm/node/elements/HTMLOptionElement.js +10 -0
  225. package/dist/esm/node/elements/HTMLOptionElement.js.map +7 -0
  226. package/dist/esm/node/elements/HTMLOutputElement.js +10 -0
  227. package/dist/esm/node/elements/HTMLOutputElement.js.map +7 -0
  228. package/dist/esm/node/elements/HTMLParamElement.js +10 -0
  229. package/dist/esm/node/elements/HTMLParamElement.js.map +7 -0
  230. package/dist/esm/node/elements/HTMLPictureElement.js +10 -0
  231. package/dist/esm/node/elements/HTMLPictureElement.js.map +7 -0
  232. package/dist/esm/node/elements/HTMLPreElement.js +10 -0
  233. package/dist/esm/node/elements/HTMLPreElement.js.map +7 -0
  234. package/dist/esm/node/elements/HTMLProgressElement.js +10 -0
  235. package/dist/esm/node/elements/HTMLProgressElement.js.map +7 -0
  236. package/dist/esm/node/elements/HTMLQuoteElement.js +10 -0
  237. package/dist/esm/node/elements/HTMLQuoteElement.js.map +7 -0
  238. package/dist/esm/node/elements/HTMLSelectElement.js +10 -0
  239. package/dist/esm/node/elements/HTMLSelectElement.js.map +7 -0
  240. package/dist/esm/node/elements/HTMLSlotElement.js +10 -0
  241. package/dist/esm/node/elements/HTMLSlotElement.js.map +7 -0
  242. package/dist/esm/node/elements/HTMLSourceElement.js +10 -0
  243. package/dist/esm/node/elements/HTMLSourceElement.js.map +7 -0
  244. package/dist/esm/node/elements/HTMLTableElement.js.map +2 -2
  245. package/dist/esm/node/elements/HTMLTbodyElement.js.map +2 -2
  246. package/dist/esm/node/elements/HTMLTdElement.js.map +2 -2
  247. package/dist/esm/node/elements/HTMLTemplateElement.js.map +2 -2
  248. package/dist/esm/node/elements/HTMLTextAreaElement.js +10 -0
  249. package/dist/esm/node/elements/HTMLTextAreaElement.js.map +7 -0
  250. package/dist/esm/node/elements/HTMLTfootElement.js.map +2 -2
  251. package/dist/esm/node/elements/HTMLTheadElement.js.map +2 -2
  252. package/dist/esm/node/elements/HTMLTimeElement.js +10 -0
  253. package/dist/esm/node/elements/HTMLTimeElement.js.map +7 -0
  254. package/dist/esm/node/elements/HTMLTrElement.js.map +2 -2
  255. package/dist/esm/node/elements/HTMLTrackElement.js +10 -0
  256. package/dist/esm/node/elements/HTMLTrackElement.js.map +7 -0
  257. package/dist/esm/node/elements/HTMLVideoElement.js +10 -0
  258. package/dist/esm/node/elements/HTMLVideoElement.js.map +7 -0
  259. package/dist/esm/node/elements/index.js +182 -93
  260. package/dist/esm/node/elements/index.js.map +2 -2
  261. package/dist/esm/node/index.js +7 -17
  262. package/dist/esm/node/index.js.map +2 -2
  263. package/dist/esm/utils/CSSSelector.js.map +2 -2
  264. package/dist/esm/window/CustomElementRegistryImp.js +86 -0
  265. package/dist/esm/window/CustomElementRegistryImp.js.map +7 -0
  266. package/dist/esm/window/WindowBase.js +282 -499
  267. package/dist/esm/window/WindowBase.js.map +2 -2
  268. package/dist/esm/window/index.js +0 -5
  269. package/dist/esm/window/index.js.map +2 -2
  270. package/dist/esm-bundle/dooboostore-dom-parser.esm.js +3755 -3548
  271. package/dist/esm-bundle/dooboostore-dom-parser.esm.js.map +4 -4
  272. package/dist/types/DomParser.d.ts +4 -0
  273. package/dist/types/DomParser.d.ts.map +1 -1
  274. package/dist/types/factory/ElementFactory.d.ts +1 -1
  275. package/dist/types/factory/ElementFactory.d.ts.map +1 -1
  276. package/dist/types/index.d.ts +3 -1
  277. package/dist/types/index.d.ts.map +1 -1
  278. package/dist/types/node/CharacterData.d.ts +0 -2
  279. package/dist/types/node/CharacterData.d.ts.map +1 -1
  280. package/dist/types/node/ChildNode.d.ts +0 -38
  281. package/dist/types/node/ChildNode.d.ts.map +1 -1
  282. package/dist/types/node/ChildNodeBase.d.ts +6 -4
  283. package/dist/types/node/ChildNodeBase.d.ts.map +1 -1
  284. package/dist/types/node/Comment.d.ts +1 -1
  285. package/dist/types/node/Comment.d.ts.map +1 -1
  286. package/dist/types/node/Document.d.ts +0 -856
  287. package/dist/types/node/Document.d.ts.map +1 -1
  288. package/dist/types/node/DocumentBase.d.ts +68 -108
  289. package/dist/types/node/DocumentBase.d.ts.map +1 -1
  290. package/dist/types/node/DocumentFragment.d.ts +0 -38
  291. package/dist/types/node/DocumentFragment.d.ts.map +1 -1
  292. package/dist/types/node/DocumentFragmentBase.d.ts +1 -8
  293. package/dist/types/node/DocumentFragmentBase.d.ts.map +1 -1
  294. package/dist/types/node/Node.d.ts +0 -213
  295. package/dist/types/node/Node.d.ts.map +1 -1
  296. package/dist/types/node/NodeBase.d.ts +11 -8
  297. package/dist/types/node/NodeBase.d.ts.map +1 -1
  298. package/dist/types/node/NodeFilter.d.ts +25 -0
  299. package/dist/types/node/NodeFilter.d.ts.map +1 -0
  300. package/dist/types/node/NodeIterator.d.ts +0 -34
  301. package/dist/types/node/NodeIterator.d.ts.map +1 -1
  302. package/dist/types/node/ParentNode.d.ts +0 -84
  303. package/dist/types/node/ParentNode.d.ts.map +1 -1
  304. package/dist/types/node/ParentNodeBase.d.ts +0 -5
  305. package/dist/types/node/ParentNodeBase.d.ts.map +1 -1
  306. package/dist/types/node/ShadowRootBase.d.ts +36 -0
  307. package/dist/types/node/ShadowRootBase.d.ts.map +1 -0
  308. package/dist/types/node/Text.d.ts +0 -24
  309. package/dist/types/node/Text.d.ts.map +1 -1
  310. package/dist/types/node/TextBase.d.ts +2 -3
  311. package/dist/types/node/TextBase.d.ts.map +1 -1
  312. package/dist/types/node/TreeWalker.d.ts +48 -0
  313. package/dist/types/node/TreeWalker.d.ts.map +1 -0
  314. package/dist/types/node/collection/{HTMLCollection.d.ts → HTMLCollectionImp.d.ts} +2 -3
  315. package/dist/types/node/collection/HTMLCollectionImp.d.ts.map +1 -0
  316. package/dist/types/node/collection/HTMLCollectionOfImp.d.ts +9 -0
  317. package/dist/types/node/collection/HTMLCollectionOfImp.d.ts.map +1 -0
  318. package/dist/types/node/collection/NodeList.d.ts +0 -1
  319. package/dist/types/node/collection/NodeList.d.ts.map +1 -1
  320. package/dist/types/node/collection/{NodeListOf.d.ts → NodeListOfImp.d.ts} +3 -4
  321. package/dist/types/node/collection/NodeListOfImp.d.ts.map +1 -0
  322. package/dist/types/node/collection/StylePropertyMapImpl.d.ts +20 -0
  323. package/dist/types/node/collection/StylePropertyMapImpl.d.ts.map +1 -0
  324. package/dist/types/node/collection/index.d.ts +3 -3
  325. package/dist/types/node/collection/index.d.ts.map +1 -1
  326. package/dist/types/node/elements/Element.d.ts +0 -686
  327. package/dist/types/node/elements/Element.d.ts.map +1 -1
  328. package/dist/types/node/elements/ElementBase.d.ts +97 -73
  329. package/dist/types/node/elements/ElementBase.d.ts.map +1 -1
  330. package/dist/types/node/elements/HTMLAreaElement.d.ts +0 -1
  331. package/dist/types/node/elements/HTMLAreaElement.d.ts.map +1 -1
  332. package/dist/types/node/elements/HTMLAudioElement.d.ts +8 -0
  333. package/dist/types/node/elements/HTMLAudioElement.d.ts.map +1 -0
  334. package/dist/types/node/elements/HTMLButtonElement.d.ts +1 -1
  335. package/dist/types/node/elements/HTMLButtonElement.d.ts.map +1 -1
  336. package/dist/types/node/elements/HTMLDListElement.d.ts +5 -0
  337. package/dist/types/node/elements/HTMLDListElement.d.ts.map +1 -0
  338. package/dist/types/node/elements/HTMLDataElement.d.ts +5 -0
  339. package/dist/types/node/elements/HTMLDataElement.d.ts.map +1 -0
  340. package/dist/types/node/elements/HTMLDataListElement.d.ts +5 -0
  341. package/dist/types/node/elements/HTMLDataListElement.d.ts.map +1 -0
  342. package/dist/types/node/elements/HTMLDetailsElement.d.ts +5 -0
  343. package/dist/types/node/elements/HTMLDetailsElement.d.ts.map +1 -0
  344. package/dist/types/node/elements/HTMLDialogElement.d.ts +5 -0
  345. package/dist/types/node/elements/HTMLDialogElement.d.ts.map +1 -0
  346. package/dist/types/node/elements/HTMLElement.d.ts +2 -88
  347. package/dist/types/node/elements/HTMLElement.d.ts.map +1 -1
  348. package/dist/types/node/elements/HTMLElementBase.d.ts +133 -3
  349. package/dist/types/node/elements/HTMLElementBase.d.ts.map +1 -1
  350. package/dist/types/node/elements/HTMLEmbedElement.d.ts +0 -1
  351. package/dist/types/node/elements/HTMLEmbedElement.d.ts.map +1 -1
  352. package/dist/types/node/elements/HTMLFieldSetElement.d.ts +5 -0
  353. package/dist/types/node/elements/HTMLFieldSetElement.d.ts.map +1 -0
  354. package/dist/types/node/elements/HTMLHRElement.d.ts +5 -0
  355. package/dist/types/node/elements/HTMLHRElement.d.ts.map +1 -0
  356. package/dist/types/node/elements/HTMLIFrameElement.d.ts +5 -0
  357. package/dist/types/node/elements/HTMLIFrameElement.d.ts.map +1 -0
  358. package/dist/types/node/elements/HTMLLabelElement.d.ts +5 -0
  359. package/dist/types/node/elements/HTMLLabelElement.d.ts.map +1 -0
  360. package/dist/types/node/elements/HTMLLegendElement.d.ts +5 -0
  361. package/dist/types/node/elements/HTMLLegendElement.d.ts.map +1 -0
  362. package/dist/types/node/elements/HTMLMapElement.d.ts +5 -0
  363. package/dist/types/node/elements/HTMLMapElement.d.ts.map +1 -0
  364. package/dist/types/node/elements/HTMLMeterElement.d.ts +5 -0
  365. package/dist/types/node/elements/HTMLMeterElement.d.ts.map +1 -0
  366. package/dist/types/node/elements/HTMLModElement.d.ts +5 -0
  367. package/dist/types/node/elements/HTMLModElement.d.ts.map +1 -0
  368. package/dist/types/node/elements/HTMLObjectElement.d.ts +5 -0
  369. package/dist/types/node/elements/HTMLObjectElement.d.ts.map +1 -0
  370. package/dist/types/node/elements/HTMLOptGroupElement.d.ts +5 -0
  371. package/dist/types/node/elements/HTMLOptGroupElement.d.ts.map +1 -0
  372. package/dist/types/node/elements/HTMLOptionElement.d.ts +5 -0
  373. package/dist/types/node/elements/HTMLOptionElement.d.ts.map +1 -0
  374. package/dist/types/node/elements/HTMLOutputElement.d.ts +5 -0
  375. package/dist/types/node/elements/HTMLOutputElement.d.ts.map +1 -0
  376. package/dist/types/node/elements/HTMLParamElement.d.ts +5 -0
  377. package/dist/types/node/elements/HTMLParamElement.d.ts.map +1 -0
  378. package/dist/types/node/elements/HTMLPictureElement.d.ts +5 -0
  379. package/dist/types/node/elements/HTMLPictureElement.d.ts.map +1 -0
  380. package/dist/types/node/elements/HTMLPreElement.d.ts +5 -0
  381. package/dist/types/node/elements/HTMLPreElement.d.ts.map +1 -0
  382. package/dist/types/node/elements/HTMLProgressElement.d.ts +5 -0
  383. package/dist/types/node/elements/HTMLProgressElement.d.ts.map +1 -0
  384. package/dist/types/node/elements/HTMLQuoteElement.d.ts +5 -0
  385. package/dist/types/node/elements/HTMLQuoteElement.d.ts.map +1 -0
  386. package/dist/types/node/elements/HTMLSelectElement.d.ts +5 -0
  387. package/dist/types/node/elements/HTMLSelectElement.d.ts.map +1 -0
  388. package/dist/types/node/elements/HTMLSlotElement.d.ts +5 -0
  389. package/dist/types/node/elements/HTMLSlotElement.d.ts.map +1 -0
  390. package/dist/types/node/elements/HTMLSourceElement.d.ts +5 -0
  391. package/dist/types/node/elements/HTMLSourceElement.d.ts.map +1 -0
  392. package/dist/types/node/elements/HTMLTableElement.d.ts +3 -4
  393. package/dist/types/node/elements/HTMLTableElement.d.ts.map +1 -1
  394. package/dist/types/node/elements/HTMLTbodyElement.d.ts +2 -3
  395. package/dist/types/node/elements/HTMLTbodyElement.d.ts.map +1 -1
  396. package/dist/types/node/elements/HTMLTemplateElement.d.ts +0 -1
  397. package/dist/types/node/elements/HTMLTemplateElement.d.ts.map +1 -1
  398. package/dist/types/node/elements/HTMLTextAreaElement.d.ts +5 -0
  399. package/dist/types/node/elements/HTMLTextAreaElement.d.ts.map +1 -0
  400. package/dist/types/node/elements/HTMLTfootElement.d.ts +2 -3
  401. package/dist/types/node/elements/HTMLTfootElement.d.ts.map +1 -1
  402. package/dist/types/node/elements/HTMLTheadElement.d.ts +2 -3
  403. package/dist/types/node/elements/HTMLTheadElement.d.ts.map +1 -1
  404. package/dist/types/node/elements/HTMLTimeElement.d.ts +5 -0
  405. package/dist/types/node/elements/HTMLTimeElement.d.ts.map +1 -0
  406. package/dist/types/node/elements/HTMLTrElement.d.ts +2 -3
  407. package/dist/types/node/elements/HTMLTrElement.d.ts.map +1 -1
  408. package/dist/types/node/elements/HTMLTrackElement.d.ts +5 -0
  409. package/dist/types/node/elements/HTMLTrackElement.d.ts.map +1 -0
  410. package/dist/types/node/elements/HTMLVideoElement.d.ts +8 -0
  411. package/dist/types/node/elements/HTMLVideoElement.d.ts.map +1 -0
  412. package/dist/types/node/elements/index.d.ts +106 -52
  413. package/dist/types/node/elements/index.d.ts.map +1 -1
  414. package/dist/types/node/index.d.ts +4 -7
  415. package/dist/types/node/index.d.ts.map +1 -1
  416. package/dist/types/utils/CSSSelector.d.ts +0 -1
  417. package/dist/types/utils/CSSSelector.d.ts.map +1 -1
  418. package/dist/types/window/CustomElementRegistryImp.d.ts +18 -0
  419. package/dist/types/window/CustomElementRegistryImp.d.ts.map +1 -0
  420. package/dist/types/window/Window.d.ts +0 -619
  421. package/dist/types/window/Window.d.ts.map +1 -1
  422. package/dist/types/window/WindowBase.d.ts +261 -284
  423. package/dist/types/window/WindowBase.d.ts.map +1 -1
  424. package/dist/types/window/index.d.ts +0 -1
  425. package/dist/types/window/index.d.ts.map +1 -1
  426. package/dist/umd-bundle/dooboostore-dom-parser.umd.js +3765 -3558
  427. package/dist/umd-bundle/dooboostore-dom-parser.umd.js.map +4 -4
  428. package/package.json +1 -1
  429. package/src/DomParser.ts +458 -429
  430. package/src/factory/ElementFactory.ts +79 -53
  431. package/src/index.ts +11 -10
  432. package/src/node/CharacterData.ts +0 -2
  433. package/src/node/ChildNode.ts +42 -42
  434. package/src/node/ChildNodeBase.ts +60 -39
  435. package/src/node/Comment.ts +60 -60
  436. package/src/node/Document.ts +129 -882
  437. package/src/node/DocumentBase.ts +371 -462
  438. package/src/node/DocumentFragment.ts +38 -44
  439. package/src/node/DocumentFragmentBase.ts +4 -9
  440. package/src/node/Node.ts +231 -224
  441. package/src/node/NodeBase.ts +469 -443
  442. package/src/node/NodeFilter.ts +50 -0
  443. package/src/node/NodeIterator.ts +117 -172
  444. package/src/node/ParentNode.ts +93 -93
  445. package/src/node/ParentNodeBase.ts +7 -10
  446. package/src/node/ShadowRootBase.ts +87 -0
  447. package/src/node/Text.ts +30 -30
  448. package/src/node/TextBase.ts +92 -94
  449. package/src/node/TreeWalker.ts +280 -0
  450. package/src/node/collection/{HTMLCollection.ts → HTMLCollectionImp.ts} +3 -2
  451. package/src/node/collection/HTMLCollectionOfImp.ts +12 -0
  452. package/src/node/collection/NodeList.ts +1 -1
  453. package/src/node/collection/{NodeListOf.ts → NodeListOfImp.ts} +3 -3
  454. package/src/node/collection/StylePropertyMapImpl.ts +60 -0
  455. package/src/node/collection/index.ts +3 -3
  456. package/src/node/elements/Element.ts +212 -771
  457. package/src/node/elements/ElementBase.ts +840 -1195
  458. package/src/node/elements/HTMLAreaElement.ts +0 -1
  459. package/src/node/elements/HTMLAudioElement.ts +10 -0
  460. package/src/node/elements/HTMLButtonElement.ts +63 -63
  461. package/src/node/elements/HTMLDListElement.ts +2 -0
  462. package/src/node/elements/HTMLDataElement.ts +6 -0
  463. package/src/node/elements/HTMLDataListElement.ts +2 -0
  464. package/src/node/elements/HTMLDetailsElement.ts +2 -0
  465. package/src/node/elements/HTMLDialogElement.ts +2 -0
  466. package/src/node/elements/HTMLElement.ts +2 -102
  467. package/src/node/elements/HTMLElementBase.ts +453 -156
  468. package/src/node/elements/HTMLEmbedElement.ts +0 -1
  469. package/src/node/elements/HTMLFieldSetElement.ts +2 -0
  470. package/src/node/elements/HTMLHRElement.ts +2 -0
  471. package/src/node/elements/HTMLIFrameElement.ts +2 -0
  472. package/src/node/elements/HTMLLabelElement.ts +2 -0
  473. package/src/node/elements/HTMLLegendElement.ts +2 -0
  474. package/src/node/elements/HTMLMapElement.ts +2 -0
  475. package/src/node/elements/HTMLMeterElement.ts +2 -0
  476. package/src/node/elements/HTMLModElement.ts +2 -0
  477. package/src/node/elements/HTMLObjectElement.ts +2 -0
  478. package/src/node/elements/HTMLOptGroupElement.ts +2 -0
  479. package/src/node/elements/HTMLOptionElement.ts +2 -0
  480. package/src/node/elements/HTMLOutputElement.ts +2 -0
  481. package/src/node/elements/HTMLParamElement.ts +2 -0
  482. package/src/node/elements/HTMLPictureElement.ts +2 -0
  483. package/src/node/elements/HTMLPreElement.ts +2 -0
  484. package/src/node/elements/HTMLProgressElement.ts +2 -0
  485. package/src/node/elements/HTMLQuoteElement.ts +2 -0
  486. package/src/node/elements/HTMLSelectElement.ts +2 -0
  487. package/src/node/elements/HTMLSlotElement.ts +2 -0
  488. package/src/node/elements/HTMLSourceElement.ts +2 -0
  489. package/src/node/elements/HTMLTableElement.ts +3 -7
  490. package/src/node/elements/HTMLTbodyElement.ts +2 -3
  491. package/src/node/elements/HTMLTdElement.ts +1 -1
  492. package/src/node/elements/HTMLTemplateElement.ts +3 -6
  493. package/src/node/elements/HTMLTextAreaElement.ts +2 -0
  494. package/src/node/elements/HTMLTfootElement.ts +2 -3
  495. package/src/node/elements/HTMLTheadElement.ts +2 -3
  496. package/src/node/elements/HTMLTimeElement.ts +2 -0
  497. package/src/node/elements/HTMLTrElement.ts +3 -4
  498. package/src/node/elements/HTMLTrackElement.ts +2 -0
  499. package/src/node/elements/HTMLVideoElement.ts +10 -0
  500. package/src/node/elements/index.ts +226 -149
  501. package/src/node/index.ts +8 -8
  502. package/src/utils/CSSSelector.ts +0 -1
  503. package/src/window/CustomElementRegistryImp.ts +120 -0
  504. package/src/window/Window.ts +716 -715
  505. package/src/window/WindowBase.ts +842 -998
  506. package/src/window/index.ts +0 -1
  507. package/tsconfig.json +1 -0
  508. package/dist/cjs/node/collection/HTMLCollection.js.map +0 -7
  509. package/dist/cjs/node/collection/HTMLCollectionOf.js.map +0 -7
  510. package/dist/cjs/node/collection/NodeListOf.js.map +0 -7
  511. package/dist/esm/node/collection/HTMLCollection.js.map +0 -7
  512. package/dist/esm/node/collection/HTMLCollectionOf.js +0 -17
  513. package/dist/esm/node/collection/HTMLCollectionOf.js.map +0 -7
  514. package/dist/esm/node/collection/NodeListOf.js.map +0 -7
  515. package/dist/types/node/collection/HTMLCollection.d.ts.map +0 -1
  516. package/dist/types/node/collection/HTMLCollectionOf.d.ts +0 -14
  517. package/dist/types/node/collection/HTMLCollectionOf.d.ts.map +0 -1
  518. package/dist/types/node/collection/NodeListOf.d.ts.map +0 -1
  519. package/src/node/collection/HTMLCollectionOf.ts +0 -26
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLLabelElement extends HTMLElementBase { constructor(tagName: string = 'LABEL', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLLegendElement extends HTMLElementBase { constructor(tagName: string = 'LEGEND', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLMapElement extends HTMLElementBase { constructor(tagName: string = 'MAP', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLMeterElement extends HTMLElementBase { constructor(tagName: string = 'METER', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLModElement extends HTMLElementBase { constructor(tagName: string = 'DEL', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLObjectElement extends HTMLElementBase { constructor(tagName: string = 'OBJECT', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLOptGroupElement extends HTMLElementBase { constructor(tagName: string = 'OPTGROUP', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLOptionElement extends HTMLElementBase { constructor(tagName: string = 'OPTION', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLOutputElement extends HTMLElementBase { constructor(tagName: string = 'OUTPUT', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLParamElement extends HTMLElementBase { constructor(tagName: string = 'PARAM', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLPictureElement extends HTMLElementBase { constructor(tagName: string = 'PICTURE', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLPreElement extends HTMLElementBase { constructor(tagName: string = 'PRE', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLProgressElement extends HTMLElementBase { constructor(tagName: string = 'PROGRESS', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLQuoteElement extends HTMLElementBase { constructor(tagName: string = 'BLOCKQUOTE', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLSelectElement extends HTMLElementBase { constructor(tagName: string = 'SELECT', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLSlotElement extends HTMLElementBase { constructor(tagName: string = 'SLOT', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLSourceElement extends HTMLElementBase { constructor(tagName: string = 'SOURCE', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -1,9 +1,5 @@
1
- import { Element } from './Element';
2
- import { Document } from '../Document';
3
- import { HTMLElement } from './HTMLElement';
4
1
  import { HTMLElementBase } from './HTMLElementBase';
5
- import { HTMLCollection } from '../collection/HTMLCollection'
6
- import { HTMLElementTagNameMap } from './index';
2
+ import { HTMLCollectionImp } from '../collection/HTMLCollectionImp'
7
3
 
8
4
  /**
9
5
  * The **`HTMLTableElement`** class represents an HTML `<table>` element.
@@ -27,11 +23,11 @@ export class HTMLTableElement extends HTMLElementBase {
27
23
  return this.querySelector('tfoot');
28
24
  }
29
25
 
30
- get tBodies(): HTMLCollection {
26
+ get tBodies(): HTMLCollectionImp {
31
27
  return this.querySelectorAll('tbody') as any;
32
28
  }
33
29
 
34
- get rows(): HTMLCollection {
30
+ get rows(): HTMLCollectionImp {
35
31
  return this.querySelectorAll('tr') as any;
36
32
  }
37
33
 
@@ -1,6 +1,5 @@
1
1
  import { HTMLElementBase } from './HTMLElementBase';
2
- import { HTMLCollection } from '../collection';
3
- import {HTMLElement} from "./HTMLElement";
2
+ import { HTMLCollectionImp } from '../collection';
4
3
 
5
4
  /**
6
5
  * The **`HTMLTbodyElement`** class represents an HTML `<tbody>` element.
@@ -12,7 +11,7 @@ export class HTMLTbodyElement extends HTMLElementBase {
12
11
  super(tagName, ownerDocument);
13
12
  }
14
13
 
15
- get rows(): HTMLCollection {
14
+ get rows(): HTMLCollectionImp {
16
15
  return this.querySelectorAll('tr') as any;
17
16
  }
18
17
 
@@ -16,7 +16,7 @@ export class HTMLTdElement extends HTMLElementBase {
16
16
 
17
17
  const cells = row.querySelectorAll('td, th');
18
18
  for (let i = 0; i < cells.length; i++) {
19
- if (cells[i] === this) {
19
+ if (cells[i] === this as unknown as HTMLElement) {
20
20
  return i;
21
21
  }
22
22
  }
@@ -1,9 +1,6 @@
1
1
  import { HTMLElementBase } from './HTMLElementBase';
2
2
  import { DocumentFragmentBase } from '../DocumentFragmentBase';
3
- import { Node, TEXT_NODE } from "../Node";
4
- import {Text} from '../Text'
5
- import {ElementFactory} from '../../factory/ElementFactory';
6
- import { NodeBase } from "../NodeBase";
3
+ import { TEXT_NODE } from "../Node";
7
4
 
8
5
  /**
9
6
  * The **`HTMLTemplateElement`** class represents an HTML `<template>` element.
@@ -88,8 +85,8 @@ export class HTMLTemplateElement extends HTMLElementBase {
88
85
  const children = [...this._childNodesInternal];
89
86
  for (const child of children) {
90
87
  if (child) {
91
- this.removeChild(child);
92
- this._content.appendChild(child);
88
+ this.removeChild(child as unknown as Node);
89
+ this._content.appendChild(child as unknown as Node);
93
90
  }
94
91
  }
95
92
  }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLTextAreaElement extends HTMLElementBase { constructor(tagName: string = 'TEXTAREA', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -1,6 +1,5 @@
1
1
  import { HTMLElementBase } from './HTMLElementBase';
2
- import { HTMLCollection } from '../collection';
3
- import { HTMLElement } from './HTMLElement';
2
+ import { HTMLCollectionImp } from '../collection';
4
3
  /**
5
4
  * The **`HTMLTfootElement`** class represents an HTML `<tfoot>` element.
6
5
  *
@@ -13,7 +12,7 @@ export class HTMLTfootElement extends HTMLElementBase {
13
12
  super(HTMLTfootElement.TAG_NAME, ownerDocument);
14
13
  }
15
14
 
16
- get rows(): HTMLCollection {
15
+ get rows(): HTMLCollectionImp {
17
16
  return this.querySelectorAll('tr') as any;
18
17
  }
19
18
 
@@ -1,6 +1,5 @@
1
1
  import {HTMLElementBase} from './HTMLElementBase';
2
- import {HTMLCollection} from '../collection';
3
- import {HTMLElement} from './HTMLElement';
2
+ import {HTMLCollectionImp} from '../collection';
4
3
 
5
4
  /**
6
5
  * The **`HTMLTheadElement`** class represents an HTML `<thead>` element.
@@ -12,7 +11,7 @@ export class HTMLTheadElement extends HTMLElementBase {
12
11
  super(tagName, ownerDocument);
13
12
  }
14
13
 
15
- get rows(): HTMLCollection {
14
+ get rows(): HTMLCollectionImp {
16
15
  return this.querySelectorAll('tr') as any;
17
16
  }
18
17
 
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLTimeElement extends HTMLElementBase { constructor(tagName: string = 'TIME', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -1,6 +1,5 @@
1
- import { HTMLElement } from './HTMLElement';
2
1
  import { HTMLElementBase } from './HTMLElementBase';
3
- import { HTMLCollection, NodeListOf, NodeList, HTMLCollectionOf } from '../collection';
2
+ import { HTMLCollectionImp, NodeListOfImp, NodeList, HTMLCollectionOfImp } from '../collection';
4
3
  /**
5
4
  * The **`HTMLTrElement`** class represents an HTML `<tr>` element.
6
5
  *
@@ -11,7 +10,7 @@ export class HTMLTrElement extends HTMLElementBase {
11
10
  super(tagName, ownerDocument);
12
11
  }
13
12
 
14
- get cells(): HTMLCollection {
13
+ get cells(): HTMLCollectionImp {
15
14
  return this.querySelectorAll('td, th') as any;
16
15
  }
17
16
 
@@ -35,7 +34,7 @@ export class HTMLTrElement extends HTMLElementBase {
35
34
 
36
35
  const sectionRows = section.querySelectorAll('tr');
37
36
  for (let i = 0; i < sectionRows.length; i++) {
38
- if (sectionRows[i] === this) {
37
+ if (sectionRows[i] === this as unknown as HTMLElement) {
39
38
  return i;
40
39
  }
41
40
  }
@@ -0,0 +1,2 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+ export class HTMLTrackElement extends HTMLElementBase { constructor(tagName: string = 'TRACK', ownerDocument?: any) { super(tagName, ownerDocument); } }
@@ -0,0 +1,10 @@
1
+ import { HTMLElementBase } from './HTMLElementBase';
2
+
3
+ /**
4
+ * The **`HTMLVideoElement`** interface provides special properties and methods for manipulating video objects.
5
+ */
6
+ export class HTMLVideoElement extends HTMLElementBase {
7
+ constructor(tagName: string = 'VIDEO', ownerDocument?: any) {
8
+ super(tagName, ownerDocument);
9
+ }
10
+ }
@@ -1,6 +1,6 @@
1
1
  // Base Element interfaces and types
2
- export { Element, DOMTokenList } from './Element';
3
- export { HTMLCollection, HTMLCollectionOf } from '../collection';
2
+ // export type { Element, DOMTokenList } from './Element';
3
+ export { HTMLCollectionImp, HTMLCollectionOfImp } from '../collection';
4
4
 
5
5
  // Base Element implementations
6
6
  export { ElementBase } from './ElementBase';
@@ -8,179 +8,256 @@ export { HTMLElementBase } from './HTMLElementBase';
8
8
  export { HTMLGenericElement } from './HTMLGenericElement';
9
9
 
10
10
  // Import all element classes
11
+ import { HTMLElement } from './HTMLElement';
11
12
  import { HTMLAnchorElement } from './HTMLAnchorElement';
13
+ import { HTMLAreaElement } from './HTMLAreaElement';
14
+ import { HTMLAudioElement } from './HTMLAudioElement';
15
+ import { HTMLBaseElement } from './HTMLBaseElement';
12
16
  import { HTMLBodyElement } from './HTMLBodyElement';
13
- import { HTMLDivElement } from './HTMLDivElement';
14
- import { HTMLSpanElement } from './HTMLSpanElement';
15
- import { HTMLPElement } from './HTMLPElement';
16
- import { HTMLImgElement } from './HTMLImgElement';
17
17
  import { HTMLButtonElement } from './HTMLButtonElement';
18
18
  import { HTMLCanvasElement } from './HTMLCanvasElement';
19
- import { HTMLInputElement } from './HTMLInputElement';
19
+ import { HTMLCaptionElement } from './HTMLCaptionElement';
20
+ import { HTMLDataElement } from './HTMLDataElement';
21
+ import { HTMLDataListElement } from './HTMLDataListElement';
22
+ import { HTMLDetailsElement } from './HTMLDetailsElement';
23
+ import { HTMLDialogElement } from './HTMLDialogElement';
24
+ import { HTMLDivElement } from './HTMLDivElement';
25
+ import { HTMLDListElement } from './HTMLDListElement';
26
+ import { HTMLEmbedElement } from './HTMLEmbedElement';
27
+ import { HTMLFieldSetElement } from './HTMLFieldSetElement';
28
+ import { HTMLFormElement } from './HTMLFormElement';
20
29
  import { HTMLH1Element } from './HTMLH1Element';
21
30
  import { HTMLHeadElement } from './HTMLHeadElement';
31
+ import { HTMLHRElement } from './HTMLHRElement';
22
32
  import { HTMLHtmlElement } from './HTMLHtmlElement';
23
- import { HTMLTitleElement } from './HTMLTitleElement';
33
+ import { HTMLIFrameElement } from './HTMLIFrameElement';
34
+ import { HTMLImgElement } from './HTMLImgElement';
35
+ import { HTMLInputElement } from './HTMLInputElement';
36
+ import { HTMLLabelElement } from './HTMLLabelElement';
37
+ import { HTMLLegendElement } from './HTMLLegendElement';
38
+ import { HTMLLIElement } from './HTMLLIElement';
24
39
  import { HTMLLinkElement } from './HTMLLinkElement';
40
+ import { HTMLMapElement } from './HTMLMapElement';
41
+ import { HTMLMetaElement } from './HTMLMetaElement';
42
+ import { HTMLMeterElement } from './HTMLMeterElement';
43
+ import { HTMLModElement } from './HTMLModElement';
44
+ import { HTMLObjectElement } from './HTMLObjectElement';
45
+ import { HTMLOListElement } from './HTMLOListElement';
46
+ import { HTMLOptGroupElement } from './HTMLOptGroupElement';
47
+ import { HTMLOptionElement } from './HTMLOptionElement';
48
+ import { HTMLOutputElement } from './HTMLOutputElement';
49
+ import { HTMLPElement } from './HTMLPElement';
50
+ import { HTMLParamElement } from './HTMLParamElement';
51
+ import { HTMLPictureElement } from './HTMLPictureElement';
52
+ import { HTMLPreElement } from './HTMLPreElement';
53
+ import { HTMLProgressElement } from './HTMLProgressElement';
54
+ import { HTMLQuoteElement } from './HTMLQuoteElement';
25
55
  import { HTMLScriptElement } from './HTMLScriptElement';
56
+ import { HTMLSelectElement } from './HTMLSelectElement';
57
+ import { HTMLSlotElement } from './HTMLSlotElement';
58
+ import { HTMLSourceElement } from './HTMLSourceElement';
59
+ import { HTMLSpanElement } from './HTMLSpanElement';
26
60
  import { HTMLStyleElement } from './HTMLStyleElement';
27
- import { HTMLFormElement } from './HTMLFormElement';
28
61
  import { HTMLTableElement } from './HTMLTableElement';
29
- import { HTMLUListElement } from './HTMLUListElement';
30
- import { HTMLOListElement } from './HTMLOListElement';
31
- import { HTMLLIElement } from './HTMLLIElement';
32
- import { SVGElement } from './SVGElement';
33
- import { SVGCircleElement } from './SVGCircleElement';
34
- import { SVGRectElement } from './SVGRectElement';
35
- import { HTMLMetaElement } from './HTMLMetaElement';
62
+ import { HTMLTbodyElement } from './HTMLTbodyElement';
63
+ import { HTMLTdElement } from './HTMLTdElement';
36
64
  import { HTMLTemplateElement } from './HTMLTemplateElement';
37
- import { HTMLTheadElement } from './HTMLTheadElement';
65
+ import { HTMLTextAreaElement } from './HTMLTextAreaElement';
38
66
  import { HTMLTfootElement } from './HTMLTfootElement';
39
- import { HTMLTrElement } from './HTMLTrElement';
40
- import { HTMLTdElement } from './HTMLTdElement';
67
+ import { HTMLTheadElement } from './HTMLTheadElement';
41
68
  import { HTMLThElement } from './HTMLThElement';
42
- import { HTMLCaptionElement } from './HTMLCaptionElement';
43
- import { HTMLTbodyElement } from './HTMLTbodyElement';
44
- import { HTMLEmbedElement } from './HTMLEmbedElement';
45
- import { HTMLAreaElement } from './HTMLAreaElement';
46
- import { HTMLBaseElement } from './HTMLBaseElement';
69
+ import { HTMLTimeElement } from './HTMLTimeElement';
70
+ import { HTMLTitleElement } from './HTMLTitleElement';
71
+ import { HTMLTrackElement } from './HTMLTrackElement';
72
+ import { HTMLTrElement } from './HTMLTrElement';
73
+ import { HTMLUListElement } from './HTMLUListElement';
74
+ import { HTMLVideoElement } from './HTMLVideoElement';
47
75
  import { MathMLElement } from './MathMLElement';
76
+ import { SVGElement } from './SVGElement';
77
+ import { SVGCircleElement } from './SVGCircleElement';
78
+ import { SVGRectElement } from './SVGRectElement';
48
79
 
49
80
  // Export all element classes
50
81
  export {
51
- HTMLAnchorElement,
52
- HTMLBodyElement,
53
- HTMLDivElement,
54
- HTMLHeadElement,
55
- HTMLHtmlElement,
56
- HTMLSpanElement,
57
- HTMLPElement,
58
- HTMLImgElement,
59
- HTMLButtonElement,
60
- HTMLCanvasElement,
61
- HTMLInputElement,
62
- HTMLH1Element,
63
- HTMLTitleElement,
64
- HTMLLinkElement,
65
- HTMLScriptElement,
66
- HTMLStyleElement,
67
- HTMLFormElement,
68
- HTMLTableElement,
69
- HTMLUListElement,
70
- HTMLOListElement,
71
- HTMLLIElement,
72
- SVGElement,
73
- SVGCircleElement,
74
- SVGRectElement,
75
- HTMLMetaElement,
76
- HTMLTemplateElement,
77
- HTMLTheadElement,
78
- HTMLTfootElement,
79
- HTMLTrElement,
80
- HTMLTdElement,
81
- HTMLThElement,
82
- HTMLCaptionElement,
83
- HTMLTbodyElement,
84
- HTMLEmbedElement,
85
- HTMLAreaElement,
86
- HTMLBaseElement,
87
- MathMLElement,
82
+ HTMLElement,
83
+ HTMLAnchorElement,
84
+ HTMLAreaElement,
85
+ HTMLAudioElement,
86
+ HTMLBaseElement,
87
+ HTMLBodyElement,
88
+ HTMLButtonElement,
89
+ HTMLCanvasElement,
90
+ HTMLCaptionElement,
91
+ HTMLDataElement,
92
+ HTMLDataListElement,
93
+ HTMLDetailsElement,
94
+ HTMLDialogElement,
95
+ HTMLDivElement,
96
+ HTMLDListElement,
97
+ HTMLEmbedElement,
98
+ HTMLFieldSetElement,
99
+ HTMLFormElement,
100
+ HTMLH1Element,
101
+ HTMLHeadElement,
102
+ HTMLHRElement,
103
+ HTMLHtmlElement,
104
+ HTMLIFrameElement,
105
+ HTMLImgElement,
106
+ HTMLInputElement,
107
+ HTMLLabelElement,
108
+ HTMLLegendElement,
109
+ HTMLLIElement,
110
+ HTMLLinkElement,
111
+ HTMLMapElement,
112
+ HTMLMetaElement,
113
+ HTMLMeterElement,
114
+ HTMLModElement,
115
+ HTMLObjectElement,
116
+ HTMLOListElement,
117
+ HTMLOptGroupElement,
118
+ HTMLOptionElement,
119
+ HTMLOutputElement,
120
+ HTMLPElement,
121
+ HTMLParamElement,
122
+ HTMLPictureElement,
123
+ HTMLPreElement,
124
+ HTMLProgressElement,
125
+ HTMLQuoteElement,
126
+ HTMLScriptElement,
127
+ HTMLSelectElement,
128
+ HTMLSlotElement,
129
+ HTMLSourceElement,
130
+ HTMLSpanElement,
131
+ HTMLStyleElement,
132
+ HTMLTableElement,
133
+ HTMLTbodyElement,
134
+ HTMLTdElement,
135
+ HTMLTemplateElement,
136
+ HTMLTextAreaElement,
137
+ HTMLTfootElement,
138
+ HTMLTheadElement,
139
+ HTMLThElement,
140
+ HTMLTimeElement,
141
+ HTMLTitleElement,
142
+ HTMLTrackElement,
143
+ HTMLTrElement,
144
+ HTMLUListElement,
145
+ HTMLVideoElement,
146
+ MathMLElement,
147
+ SVGElement,
148
+ SVGCircleElement,
149
+ SVGRectElement
88
150
  };
89
151
 
90
- // HTML Elements mapping with explicit string keys for proper type inference
152
+ // HTML Elements mapping
91
153
  export const htmlElements = {
92
- 'a': HTMLAnchorElement,
93
- 'body': HTMLBodyElement,
94
- 'button': HTMLButtonElement,
95
- 'canvas': HTMLCanvasElement,
96
- 'div': HTMLDivElement,
97
- 'h1': HTMLH1Element,
98
- 'head': HTMLHeadElement,
99
- 'html': HTMLHtmlElement,
100
- 'img': HTMLImgElement,
101
- 'input': HTMLInputElement,
102
- 'p': HTMLPElement,
103
- 'meta': HTMLMetaElement,
104
- 'span': HTMLSpanElement,
105
- 'title': HTMLTitleElement,
106
- 'link': HTMLLinkElement,
107
- 'script': HTMLScriptElement,
108
- 'style': HTMLStyleElement,
109
- 'form': HTMLFormElement,
110
- 'table': HTMLTableElement,
111
- 'ul': HTMLUListElement,
112
- 'ol': HTMLOListElement,
113
- 'li': HTMLLIElement,
114
- 'template': HTMLTemplateElement,
115
- 'thead': HTMLTheadElement,
116
- 'tfoot': HTMLTfootElement,
117
- 'tr': HTMLTrElement,
118
- 'td': HTMLTdElement,
119
- 'th': HTMLThElement,
120
- 'caption': HTMLCaptionElement,
121
- 'tbody': HTMLTbodyElement,
122
- 'embed': HTMLEmbedElement,
123
- 'area': HTMLAreaElement,
124
- 'base': HTMLBaseElement,
154
+ a: HTMLAnchorElement,
155
+ area: HTMLAreaElement,
156
+ audio: HTMLAudioElement,
157
+ base: HTMLBaseElement,
158
+ body: HTMLBodyElement,
159
+ button: HTMLButtonElement,
160
+ canvas: HTMLCanvasElement,
161
+ caption: HTMLCaptionElement,
162
+ data: HTMLDataElement,
163
+ datalist: HTMLDataListElement,
164
+ details: HTMLDetailsElement,
165
+ dialog: HTMLDialogElement,
166
+ div: HTMLDivElement,
167
+ dl: HTMLDListElement,
168
+ embed: HTMLEmbedElement,
169
+ fieldset: HTMLFieldSetElement,
170
+ form: HTMLFormElement,
171
+ h1: HTMLH1Element,
172
+ head: HTMLHeadElement,
173
+ hr: HTMLHRElement,
174
+ html: HTMLHtmlElement,
175
+ iframe: HTMLIFrameElement,
176
+ img: HTMLImgElement,
177
+ input: HTMLInputElement,
178
+ label: HTMLLabelElement,
179
+ legend: HTMLLegendElement,
180
+ li: HTMLLIElement,
181
+ link: HTMLLinkElement,
182
+ map: HTMLMapElement,
183
+ meta: HTMLMetaElement,
184
+ meter: HTMLMeterElement,
185
+ del: HTMLModElement,
186
+ object: HTMLObjectElement,
187
+ ol: HTMLOListElement,
188
+ optgroup: HTMLOptGroupElement,
189
+ option: HTMLOptionElement,
190
+ output: HTMLOutputElement,
191
+ p: HTMLPElement,
192
+ param: HTMLParamElement,
193
+ picture: HTMLPictureElement,
194
+ pre: HTMLPreElement,
195
+ progress: HTMLProgressElement,
196
+ blockquote: HTMLQuoteElement,
197
+ script: HTMLScriptElement,
198
+ select: HTMLSelectElement,
199
+ slot: HTMLSlotElement,
200
+ source: HTMLSourceElement,
201
+ span: HTMLSpanElement,
202
+ style: HTMLStyleElement,
203
+ table: HTMLTableElement,
204
+ tbody: HTMLTbodyElement,
205
+ td: HTMLTdElement,
206
+ template: HTMLTemplateElement,
207
+ textarea: HTMLTextAreaElement,
208
+ tfoot: HTMLTfootElement,
209
+ thead: HTMLTheadElement,
210
+ th: HTMLThElement,
211
+ time: HTMLTimeElement,
212
+ title: HTMLTitleElement,
213
+ track: HTMLTrackElement,
214
+ tr: HTMLTrElement,
215
+ ul: HTMLUListElement,
216
+ video: HTMLVideoElement
125
217
  } as const;
126
218
 
127
- // SVG Elements mapping with explicit string keys
128
219
  export const svgElements = {
129
- 'svg': SVGElement,
130
- 'circle': SVGCircleElement,
131
- 'rect': SVGRectElement,
220
+ svg: SVGElement,
221
+ circle: SVGCircleElement,
222
+ rect: SVGRectElement
132
223
  } as const;
133
224
 
134
- // MathML Elements mapping - all use MathMLElement
135
225
  export const mathmlElements = {
136
- 'annotation': MathMLElement,
137
- 'annotation-xml': MathMLElement,
138
- 'maction': MathMLElement,
139
- 'math': MathMLElement,
140
- 'merror': MathMLElement,
141
- 'mfrac': MathMLElement,
142
- 'mi': MathMLElement,
143
- 'mmultiscripts': MathMLElement,
144
- 'mn': MathMLElement,
145
- 'mo': MathMLElement,
146
- 'mover': MathMLElement,
147
- 'mpadded': MathMLElement,
148
- 'mphantom': MathMLElement,
149
- 'mprescripts': MathMLElement,
150
- 'mroot': MathMLElement,
151
- 'mrow': MathMLElement,
152
- 'ms': MathMLElement,
153
- 'mspace': MathMLElement,
154
- 'msqrt': MathMLElement,
155
- 'mstyle': MathMLElement,
156
- 'msub': MathMLElement,
157
- 'msubsup': MathMLElement,
158
- 'msup': MathMLElement,
159
- 'mtable': MathMLElement,
160
- 'mtd': MathMLElement,
161
- 'mtext': MathMLElement,
162
- 'mtr': MathMLElement,
163
- 'munder': MathMLElement,
164
- 'munderover': MathMLElement,
165
- 'semantics': MathMLElement,
226
+ annotation: MathMLElement,
227
+ 'annotation-xml': MathMLElement,
228
+ maction: MathMLElement,
229
+ math: MathMLElement,
230
+ merror: MathMLElement,
231
+ mfrac: MathMLElement,
232
+ mi: MathMLElement,
233
+ mmultiscripts: MathMLElement,
234
+ mn: MathMLElement,
235
+ mo: MathMLElement,
236
+ mover: MathMLElement,
237
+ mpadded: MathMLElement,
238
+ mphantom: MathMLElement,
239
+ mprescripts: MathMLElement,
240
+ mroot: MathMLElement,
241
+ mrow: MathMLElement,
242
+ ms: MathMLElement,
243
+ mspace: MathMLElement,
244
+ msqrt: MathMLElement,
245
+ mstyle: MathMLElement,
246
+ msub: MathMLElement,
247
+ msubsup: MathMLElement,
248
+ msup: MathMLElement,
249
+ mtable: MathMLElement,
250
+ mtd: MathMLElement,
251
+ mtext: MathMLElement,
252
+ mtr: MathMLElement,
253
+ munder: MathMLElement,
254
+ munderover: MathMLElement,
255
+ semantics: MathMLElement
166
256
  } as const;
167
257
 
168
- // Type-safe tag name mappings - back to the working approach
169
- export type HTMLElementTagNameMap = {
170
- [K in keyof typeof htmlElements]: InstanceType<typeof htmlElements[K]>;
171
- };
172
-
173
- export type SVGElementTagNameMap = {
174
- [K in keyof typeof svgElements]: InstanceType<typeof svgElements[K]>;
175
- };
176
-
177
- export type MathMLElementTagNameMap = {
178
- [K in keyof typeof mathmlElements]: InstanceType<typeof mathmlElements[K]>;
179
- };
180
-
181
- export interface HTMLElementDeprecatedTagNameMap {
182
- // deprecated 태그들
183
- }
184
-
185
- // Type aliases for Document interface compatibility
186
- export type HTMLImageElement = HTMLImgElement;
258
+ export type HTMLImageElement = HTMLImgElement;
259
+ export type HTMLParagraphElement = HTMLPElement;
260
+ export type HTMLHeadingElement = HTMLH1Element;
261
+ export type HTMLTableSectionElement = HTMLTbodyElement;
262
+ export type HTMLTableCellElement = HTMLTdElement;
263
+ export type HTMLTableRowElement = HTMLTrElement;