@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
@@ -3,9 +3,6 @@ import { TEXT_NODE } from "./Node.js";
3
3
  class TextBase extends ChildNodeBase {
4
4
  constructor(data, ownerDocument) {
5
5
  super(TEXT_NODE, "#text", ownerDocument);
6
- // Override nodeType to match Text interface
7
- this.nodeType = TEXT_NODE;
8
- this.nodeName = "#text";
9
6
  this._data = data;
10
7
  this._nodeValue = data;
11
8
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/node/TextBase.ts"],
4
- "sourcesContent": ["import { ChildNodeBase } from './ChildNodeBase';\nimport { TEXT_NODE } from './Node';\nimport { Text } from './Text';\n\n/**\n * The **`TextBase`** class represents a text node implementation in the DOM.\n */\nexport class TextBase extends ChildNodeBase implements Text {\n private _data: string;\n \n // Override nodeType to match Text interface\n readonly nodeType: 3 = TEXT_NODE as 3;\n readonly nodeName: '#text' = '#text';\n\n constructor(data: string, ownerDocument?: any) {\n super(TEXT_NODE, '#text', ownerDocument);\n this._data = data;\n this._nodeValue = data;\n }\n\n get data(): string {\n return this._data;\n }\n\n set data(value: string) {\n this._data = value;\n this._nodeValue = value;\n }\n\n get length(): number {\n return this._data.length;\n }\n\n get textContent(): string | null {\n // Decode HTML entities to return original text\n return this._data ? this.decodeHTMLEntities(this._data) : this._data;\n }\n\n set textContent(value: string | null) {\n this._data = value || '';\n this._nodeValue = this._data;\n }\n\n get wholeText(): string {\n // For now, just return the current text\n // In a full implementation, this would collect adjacent text nodes\n return this._data;\n }\n\n // CharacterData methods\n appendData(data: string): void {\n this._data += data;\n this._nodeValue = this._data;\n }\n\n deleteData(offset: number, count: number): void {\n if (offset < 0 || offset > this._data.length) {\n throw new Error('Index out of bounds');\n }\n const endOffset = Math.min(offset + count, this._data.length);\n this._data = this._data.slice(0, offset) + this._data.slice(endOffset);\n this._nodeValue = this._data;\n }\n\n insertData(offset: number, data: string): void {\n if (offset < 0 || offset > this._data.length) {\n throw new Error('Index out of bounds');\n }\n this._data = this._data.slice(0, offset) + data + this._data.slice(offset);\n this._nodeValue = this._data;\n }\n\n replaceData(offset: number, count: number, data: string): void {\n this.deleteData(offset, count);\n this.insertData(offset, data);\n }\n\n substringData(offset: number, count: number): string {\n if (offset < 0 || offset > this._data.length) {\n throw new Error('Index out of bounds');\n }\n const endOffset = Math.min(offset + count, this._data.length);\n return this._data.slice(offset, endOffset);\n }\n\n splitText(offset: number): Text {\n if (offset < 0 || offset > this._data.length) {\n throw new Error('Index out of bounds');\n }\n\n const newData = this._data.slice(offset);\n this._data = this._data.slice(0, offset);\n this._nodeValue = this._data;\n\n const newTextNode = new TextBase(newData, this._ownerDocument);\n\n // Insert the new text node after this one\n if (this._parentNodeInternal) {\n const nextSibling = this.nextSibling;\n this._parentNodeInternal.insertBefore(newTextNode, nextSibling);\n }\n\n return newTextNode as Text;\n }\n\n cloneNode(deep?: boolean): Text {\n return new TextBase(this._data, this._ownerDocument) as Text;\n }\n\n toString(): string {\n return this._data;\n }\n}"],
5
- "mappings": "AAAA,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB;AAMnB,MAAM,iBAAiB,cAA8B;AAAA,EAOxD,YAAY,MAAc,eAAqB;AAC3C,UAAM,WAAW,SAAS,aAAa;AAJ3C;AAAA,SAAS,WAAc;AACvB,SAAS,WAAoB;AAIzB,SAAK,QAAQ;AACb,SAAK,aAAa;AAAA,EACtB;AAAA,EAEA,IAAI,OAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,KAAK,OAAe;AACpB,SAAK,QAAQ;AACb,SAAK,aAAa;AAAA,EACtB;AAAA,EAEA,IAAI,SAAiB;AACjB,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EAEA,IAAI,cAA6B;AAE7B,WAAO,KAAK,QAAQ,KAAK,mBAAmB,KAAK,KAAK,IAAI,KAAK;AAAA,EACnE;AAAA,EAEA,IAAI,YAAY,OAAsB;AAClC,SAAK,QAAQ,SAAS;AACtB,SAAK,aAAa,KAAK;AAAA,EAC3B;AAAA,EAEA,IAAI,YAAoB;AAGpB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA,EAGA,WAAW,MAAoB;AAC3B,SAAK,SAAS;AACd,SAAK,aAAa,KAAK;AAAA,EAC3B;AAAA,EAEA,WAAW,QAAgB,OAAqB;AAC5C,QAAI,SAAS,KAAK,SAAS,KAAK,MAAM,QAAQ;AAC1C,YAAM,IAAI,MAAM,qBAAqB;AAAA,IACzC;AACA,UAAM,YAAY,KAAK,IAAI,SAAS,OAAO,KAAK,MAAM,MAAM;AAC5D,SAAK,QAAQ,KAAK,MAAM,MAAM,GAAG,MAAM,IAAI,KAAK,MAAM,MAAM,SAAS;AACrE,SAAK,aAAa,KAAK;AAAA,EAC3B;AAAA,EAEA,WAAW,QAAgB,MAAoB;AAC3C,QAAI,SAAS,KAAK,SAAS,KAAK,MAAM,QAAQ;AAC1C,YAAM,IAAI,MAAM,qBAAqB;AAAA,IACzC;AACA,SAAK,QAAQ,KAAK,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,KAAK,MAAM,MAAM,MAAM;AACzE,SAAK,aAAa,KAAK;AAAA,EAC3B;AAAA,EAEA,YAAY,QAAgB,OAAe,MAAoB;AAC3D,SAAK,WAAW,QAAQ,KAAK;AAC7B,SAAK,WAAW,QAAQ,IAAI;AAAA,EAChC;AAAA,EAEA,cAAc,QAAgB,OAAuB;AACjD,QAAI,SAAS,KAAK,SAAS,KAAK,MAAM,QAAQ;AAC1C,YAAM,IAAI,MAAM,qBAAqB;AAAA,IACzC;AACA,UAAM,YAAY,KAAK,IAAI,SAAS,OAAO,KAAK,MAAM,MAAM;AAC5D,WAAO,KAAK,MAAM,MAAM,QAAQ,SAAS;AAAA,EAC7C;AAAA,EAEA,UAAU,QAAsB;AAC5B,QAAI,SAAS,KAAK,SAAS,KAAK,MAAM,QAAQ;AAC1C,YAAM,IAAI,MAAM,qBAAqB;AAAA,IACzC;AAEA,UAAM,UAAU,KAAK,MAAM,MAAM,MAAM;AACvC,SAAK,QAAQ,KAAK,MAAM,MAAM,GAAG,MAAM;AACvC,SAAK,aAAa,KAAK;AAEvB,UAAM,cAAc,IAAI,SAAS,SAAS,KAAK,cAAc;AAG7D,QAAI,KAAK,qBAAqB;AAC1B,YAAM,cAAc,KAAK;AACzB,WAAK,oBAAoB,aAAa,aAAa,WAAW;AAAA,IAClE;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,UAAU,MAAsB;AAC5B,WAAO,IAAI,SAAS,KAAK,OAAO,KAAK,cAAc;AAAA,EACvD;AAAA,EAEA,WAAmB;AACf,WAAO,KAAK;AAAA,EAChB;AACJ;",
4
+ "sourcesContent": ["import { ChildNodeBase } from './ChildNodeBase';\nimport { TEXT_NODE } from './Node';\n\n/**\n * The **`TextBase`** class represents a text node implementation in the DOM.\n */\nexport class TextBase extends ChildNodeBase implements Text {\n private _data: string;\n\n declare nodeType: 3;\n declare nodeName: '#text';\n\n constructor(data: string, ownerDocument?: any) {\n super(TEXT_NODE, '#text', ownerDocument);\n this._data = data;\n this._nodeValue = data;\n }\n\n get data(): string {\n return this._data;\n }\n\n set data(value: string) {\n this._data = value;\n this._nodeValue = value;\n }\n\n get length(): number {\n return this._data.length;\n }\n\n get textContent(): string | null {\n // Decode HTML entities to return original text\n return this._data ? this.decodeHTMLEntities(this._data) : this._data;\n }\n\n set textContent(value: string | null) {\n this._data = value || '';\n this._nodeValue = this._data;\n }\n\n get wholeText(): string {\n // For now, just return the current text\n // In a full implementation, this would collect adjacent text nodes\n return this._data;\n }\n\n // CharacterData methods\n appendData(data: string): void {\n this._data += data;\n this._nodeValue = this._data;\n }\n\n deleteData(offset: number, count: number): void {\n if (offset < 0 || offset > this._data.length) {\n throw new Error('Index out of bounds');\n }\n const endOffset = Math.min(offset + count, this._data.length);\n this._data = this._data.slice(0, offset) + this._data.slice(endOffset);\n this._nodeValue = this._data;\n }\n\n insertData(offset: number, data: string): void {\n if (offset < 0 || offset > this._data.length) {\n throw new Error('Index out of bounds');\n }\n this._data = this._data.slice(0, offset) + data + this._data.slice(offset);\n this._nodeValue = this._data;\n }\n\n replaceData(offset: number, count: number, data: string): void {\n this.deleteData(offset, count);\n this.insertData(offset, data);\n }\n\n substringData(offset: number, count: number): string {\n if (offset < 0 || offset > this._data.length) {\n throw new Error('Index out of bounds');\n }\n const endOffset = Math.min(offset + count, this._data.length);\n return this._data.slice(offset, endOffset);\n }\n\n splitText(offset: number): Text {\n if (offset < 0 || offset > this._data.length) {\n throw new Error('Index out of bounds');\n }\n\n const newData = this._data.slice(offset);\n this._data = this._data.slice(0, offset);\n this._nodeValue = this._data;\n\n const newTextNode = new TextBase(newData, this._ownerDocument);\n\n // Insert the new text node after this one\n if (this._parentNodeInternal) {\n const nextSibling = this.nextSibling;\n this._parentNodeInternal.insertBefore(newTextNode, nextSibling);\n }\n\n return newTextNode as Text;\n }\n\n cloneNode(deep?: boolean): Text {\n return new TextBase(this._data, this._ownerDocument) as Text;\n }\n\n toString(): string {\n return this._data;\n }\n}\n"],
5
+ "mappings": "AAAA,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB;AAKnB,MAAM,iBAAiB,cAA8B;AAAA,EAM1D,YAAY,MAAc,eAAqB;AAC7C,UAAM,WAAW,SAAS,aAAa;AACvC,SAAK,QAAQ;AACb,SAAK,aAAa;AAAA,EACpB;AAAA,EAEA,IAAI,OAAe;AACjB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAI,KAAK,OAAe;AACtB,SAAK,QAAQ;AACb,SAAK,aAAa;AAAA,EACpB;AAAA,EAEA,IAAI,SAAiB;AACnB,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA,EAEA,IAAI,cAA6B;AAE/B,WAAO,KAAK,QAAQ,KAAK,mBAAmB,KAAK,KAAK,IAAI,KAAK;AAAA,EACjE;AAAA,EAEA,IAAI,YAAY,OAAsB;AACpC,SAAK,QAAQ,SAAS;AACtB,SAAK,aAAa,KAAK;AAAA,EACzB;AAAA,EAEA,IAAI,YAAoB;AAGtB,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAGA,WAAW,MAAoB;AAC7B,SAAK,SAAS;AACd,SAAK,aAAa,KAAK;AAAA,EACzB;AAAA,EAEA,WAAW,QAAgB,OAAqB;AAC9C,QAAI,SAAS,KAAK,SAAS,KAAK,MAAM,QAAQ;AAC5C,YAAM,IAAI,MAAM,qBAAqB;AAAA,IACvC;AACA,UAAM,YAAY,KAAK,IAAI,SAAS,OAAO,KAAK,MAAM,MAAM;AAC5D,SAAK,QAAQ,KAAK,MAAM,MAAM,GAAG,MAAM,IAAI,KAAK,MAAM,MAAM,SAAS;AACrE,SAAK,aAAa,KAAK;AAAA,EACzB;AAAA,EAEA,WAAW,QAAgB,MAAoB;AAC7C,QAAI,SAAS,KAAK,SAAS,KAAK,MAAM,QAAQ;AAC5C,YAAM,IAAI,MAAM,qBAAqB;AAAA,IACvC;AACA,SAAK,QAAQ,KAAK,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,KAAK,MAAM,MAAM,MAAM;AACzE,SAAK,aAAa,KAAK;AAAA,EACzB;AAAA,EAEA,YAAY,QAAgB,OAAe,MAAoB;AAC7D,SAAK,WAAW,QAAQ,KAAK;AAC7B,SAAK,WAAW,QAAQ,IAAI;AAAA,EAC9B;AAAA,EAEA,cAAc,QAAgB,OAAuB;AACnD,QAAI,SAAS,KAAK,SAAS,KAAK,MAAM,QAAQ;AAC5C,YAAM,IAAI,MAAM,qBAAqB;AAAA,IACvC;AACA,UAAM,YAAY,KAAK,IAAI,SAAS,OAAO,KAAK,MAAM,MAAM;AAC5D,WAAO,KAAK,MAAM,MAAM,QAAQ,SAAS;AAAA,EAC3C;AAAA,EAEA,UAAU,QAAsB;AAC9B,QAAI,SAAS,KAAK,SAAS,KAAK,MAAM,QAAQ;AAC5C,YAAM,IAAI,MAAM,qBAAqB;AAAA,IACvC;AAEA,UAAM,UAAU,KAAK,MAAM,MAAM,MAAM;AACvC,SAAK,QAAQ,KAAK,MAAM,MAAM,GAAG,MAAM;AACvC,SAAK,aAAa,KAAK;AAEvB,UAAM,cAAc,IAAI,SAAS,SAAS,KAAK,cAAc;AAG7D,QAAI,KAAK,qBAAqB;AAC5B,YAAM,cAAc,KAAK;AACzB,WAAK,oBAAoB,aAAa,aAAa,WAAW;AAAA,IAChE;AAEA,WAAO;AAAA,EACT;AAAA,EAEA,UAAU,MAAsB;AAC9B,WAAO,IAAI,SAAS,KAAK,OAAO,KAAK,cAAc;AAAA,EACrD;AAAA,EAEA,WAAmB;AACjB,WAAO,KAAK;AAAA,EACd;AACF;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,253 @@
1
+ import { NodeFilter } from "./NodeFilter.js";
2
+ class TreeWalker {
3
+ constructor(root, whatToShow = NodeFilter.SHOW_ALL, filter = null) {
4
+ this._root = root;
5
+ this._whatToShow = whatToShow;
6
+ this._filter = filter;
7
+ this._currentNode = root;
8
+ }
9
+ get root() {
10
+ return this._root;
11
+ }
12
+ get whatToShow() {
13
+ return this._whatToShow;
14
+ }
15
+ get filter() {
16
+ return this._filter;
17
+ }
18
+ get currentNode() {
19
+ return this._currentNode;
20
+ }
21
+ set currentNode(node) {
22
+ this._currentNode = node;
23
+ }
24
+ /**
25
+ * Move to the parent node
26
+ */
27
+ parentNode() {
28
+ let node = this._currentNode;
29
+ while (node && node !== this._root) {
30
+ node = node.parentNode;
31
+ if (node && this._acceptNode(node) === NodeFilter.FILTER_ACCEPT) {
32
+ this._currentNode = node;
33
+ return node;
34
+ }
35
+ }
36
+ return null;
37
+ }
38
+ /**
39
+ * Move to the first child node
40
+ */
41
+ firstChild() {
42
+ let node = this._currentNode.firstChild;
43
+ while (node) {
44
+ const result = this._acceptNode(node);
45
+ if (result === NodeFilter.FILTER_ACCEPT) {
46
+ this._currentNode = node;
47
+ return node;
48
+ }
49
+ if (result === NodeFilter.FILTER_SKIP) {
50
+ const child = node.firstChild;
51
+ if (child) {
52
+ node = child;
53
+ continue;
54
+ }
55
+ }
56
+ while (node) {
57
+ const next = node.nextSibling;
58
+ if (next) {
59
+ node = next;
60
+ break;
61
+ }
62
+ const parent = node.parentNode;
63
+ if (!parent || parent === this._root || parent === this._currentNode) {
64
+ return null;
65
+ }
66
+ node = parent;
67
+ }
68
+ }
69
+ return null;
70
+ }
71
+ /**
72
+ * Move to the last child node
73
+ */
74
+ lastChild() {
75
+ let node = this._currentNode.lastChild;
76
+ while (node) {
77
+ const result = this._acceptNode(node);
78
+ if (result === NodeFilter.FILTER_ACCEPT) {
79
+ this._currentNode = node;
80
+ return node;
81
+ }
82
+ if (result === NodeFilter.FILTER_SKIP) {
83
+ const child = node.lastChild;
84
+ if (child) {
85
+ node = child;
86
+ continue;
87
+ }
88
+ }
89
+ while (node) {
90
+ const prev = node.previousSibling;
91
+ if (prev) {
92
+ node = prev;
93
+ break;
94
+ }
95
+ const parent = node.parentNode;
96
+ if (!parent || parent === this._root || parent === this._currentNode) {
97
+ return null;
98
+ }
99
+ node = parent;
100
+ }
101
+ }
102
+ return null;
103
+ }
104
+ /**
105
+ * Move to the previous sibling node
106
+ */
107
+ previousSibling() {
108
+ let node = this._currentNode;
109
+ if (node === this._root) return null;
110
+ while (node) {
111
+ let sibling = node.previousSibling;
112
+ while (sibling) {
113
+ const result = this._acceptNode(sibling);
114
+ if (result === NodeFilter.FILTER_ACCEPT) {
115
+ this._currentNode = sibling;
116
+ return sibling;
117
+ }
118
+ if (result === NodeFilter.FILTER_SKIP) {
119
+ const lastChild = sibling.lastChild;
120
+ if (lastChild) {
121
+ sibling = lastChild;
122
+ continue;
123
+ }
124
+ }
125
+ sibling = sibling.previousSibling;
126
+ }
127
+ node = node.parentNode;
128
+ if (!node || node === this._root || this._acceptNode(node) === NodeFilter.FILTER_ACCEPT) {
129
+ return null;
130
+ }
131
+ }
132
+ return null;
133
+ }
134
+ /**
135
+ * Move to the next sibling node
136
+ */
137
+ nextSibling() {
138
+ let node = this._currentNode;
139
+ if (node === this._root) return null;
140
+ while (node) {
141
+ let sibling = node.nextSibling;
142
+ while (sibling) {
143
+ const result = this._acceptNode(sibling);
144
+ if (result === NodeFilter.FILTER_ACCEPT) {
145
+ this._currentNode = sibling;
146
+ return sibling;
147
+ }
148
+ if (result === NodeFilter.FILTER_SKIP) {
149
+ const firstChild = sibling.firstChild;
150
+ if (firstChild) {
151
+ sibling = firstChild;
152
+ continue;
153
+ }
154
+ }
155
+ sibling = sibling.nextSibling;
156
+ }
157
+ node = node.parentNode;
158
+ if (!node || node === this._root || this._acceptNode(node) === NodeFilter.FILTER_ACCEPT) {
159
+ return null;
160
+ }
161
+ }
162
+ return null;
163
+ }
164
+ /**
165
+ * Move to the previous node in document order
166
+ */
167
+ previousNode() {
168
+ let node = this._currentNode;
169
+ while (node && node !== this._root) {
170
+ const sibling = node.previousSibling;
171
+ if (sibling) {
172
+ node = sibling;
173
+ while (true) {
174
+ const result = this._acceptNode(node);
175
+ if (result !== NodeFilter.FILTER_REJECT && node.lastChild) {
176
+ node = node.lastChild;
177
+ } else {
178
+ if (result === NodeFilter.FILTER_ACCEPT) {
179
+ this._currentNode = node;
180
+ return node;
181
+ }
182
+ break;
183
+ }
184
+ }
185
+ continue;
186
+ }
187
+ node = node.parentNode;
188
+ if (node) {
189
+ if (this._acceptNode(node) === NodeFilter.FILTER_ACCEPT) {
190
+ this._currentNode = node;
191
+ return node;
192
+ }
193
+ }
194
+ }
195
+ return null;
196
+ }
197
+ /**
198
+ * Move to the next node in document order
199
+ */
200
+ nextNode() {
201
+ let node = this._currentNode;
202
+ let result = NodeFilter.FILTER_ACCEPT;
203
+ while (true) {
204
+ if (result !== NodeFilter.FILTER_REJECT) {
205
+ const firstChild = node.firstChild;
206
+ if (firstChild) {
207
+ node = firstChild;
208
+ result = this._acceptNode(node);
209
+ if (result === NodeFilter.FILTER_ACCEPT) {
210
+ this._currentNode = node;
211
+ return node;
212
+ }
213
+ continue;
214
+ }
215
+ }
216
+ while (node) {
217
+ if (node === this._root) return null;
218
+ const nextSibling = node.nextSibling;
219
+ if (nextSibling) {
220
+ node = nextSibling;
221
+ break;
222
+ }
223
+ node = node.parentNode;
224
+ }
225
+ if (!node) return null;
226
+ result = this._acceptNode(node);
227
+ if (result === NodeFilter.FILTER_ACCEPT) {
228
+ this._currentNode = node;
229
+ return node;
230
+ }
231
+ }
232
+ }
233
+ /**
234
+ * Check node acceptance
235
+ */
236
+ _acceptNode(node) {
237
+ const nodeTypeMask = 1 << node.nodeType - 1;
238
+ if (!(this._whatToShow & nodeTypeMask)) {
239
+ return NodeFilter.FILTER_SKIP;
240
+ }
241
+ if (this._filter) {
242
+ if (typeof this._filter === "function") {
243
+ return this._filter(node);
244
+ }
245
+ return this._filter.acceptNode(node);
246
+ }
247
+ return NodeFilter.FILTER_ACCEPT;
248
+ }
249
+ }
250
+ export {
251
+ TreeWalker
252
+ };
253
+ //# sourceMappingURL=TreeWalker.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/node/TreeWalker.ts"],
4
+ "sourcesContent": ["import {NodeFilter} from \"./NodeFilter\";\n\n/**\n * TreeWalker implementation for traversing DOM nodes\n */\nexport class TreeWalker {\n private _root: Node;\n private _whatToShow: number;\n private _filter: NodeFilter | null;\n private _currentNode: Node;\n\n constructor(root: Node, whatToShow: number = NodeFilter.SHOW_ALL, filter: NodeFilter | null = null) {\n this._root = root;\n this._whatToShow = whatToShow;\n this._filter = filter;\n this._currentNode = root;\n }\n\n get root(): Node {\n return this._root;\n }\n\n get whatToShow(): number {\n return this._whatToShow;\n }\n\n get filter(): NodeFilter | null {\n return this._filter;\n }\n\n get currentNode(): Node {\n return this._currentNode;\n }\n\n set currentNode(node: Node) {\n this._currentNode = node;\n }\n\n /**\n * Move to the parent node\n */\n parentNode(): Node | null {\n let node = this._currentNode;\n while (node && node !== this._root) {\n node = (node as any).parentNode;\n if (node && this._acceptNode(node) === NodeFilter.FILTER_ACCEPT) {\n this._currentNode = node;\n return node;\n }\n }\n return null;\n }\n\n /**\n * Move to the first child node\n */\n firstChild(): Node | null {\n let node = (this._currentNode as any).firstChild;\n while (node) {\n const result = this._acceptNode(node);\n if (result === NodeFilter.FILTER_ACCEPT) {\n this._currentNode = node;\n return node;\n }\n if (result === NodeFilter.FILTER_SKIP) {\n const child = (node as any).firstChild;\n if (child) {\n node = child;\n continue;\n }\n }\n while (node) {\n const next = (node as any).nextSibling;\n if (next) {\n node = next;\n break;\n }\n const parent = (node as any).parentNode;\n if (!parent || parent === this._root || parent === this._currentNode) {\n return null;\n }\n node = parent;\n }\n }\n return null;\n }\n\n /**\n * Move to the last child node\n */\n lastChild(): Node | null {\n let node = (this._currentNode as any).lastChild;\n while (node) {\n const result = this._acceptNode(node);\n if (result === NodeFilter.FILTER_ACCEPT) {\n this._currentNode = node;\n return node;\n }\n if (result === NodeFilter.FILTER_SKIP) {\n const child = (node as any).lastChild;\n if (child) {\n node = child;\n continue;\n }\n }\n while (node) {\n const prev = (node as any).previousSibling;\n if (prev) {\n node = prev;\n break;\n }\n const parent = (node as any).parentNode;\n if (!parent || parent === this._root || parent === this._currentNode) {\n return null;\n }\n node = parent;\n }\n }\n return null;\n }\n\n /**\n * Move to the previous sibling node\n */\n previousSibling(): Node | null {\n let node = this._currentNode;\n if (node === this._root) return null;\n\n while (node) {\n let sibling = (node as any).previousSibling;\n while (sibling) {\n const result = this._acceptNode(sibling);\n if (result === NodeFilter.FILTER_ACCEPT) {\n this._currentNode = sibling;\n return sibling;\n }\n if (result === NodeFilter.FILTER_SKIP) {\n const lastChild = (sibling as any).lastChild;\n if (lastChild) {\n sibling = lastChild;\n continue;\n }\n }\n sibling = (sibling as any).previousSibling;\n }\n node = (node as any).parentNode;\n if (!node || node === this._root || this._acceptNode(node) === NodeFilter.FILTER_ACCEPT) {\n return null;\n }\n }\n return null;\n }\n\n /**\n * Move to the next sibling node\n */\n nextSibling(): Node | null {\n let node = this._currentNode;\n if (node === this._root) return null;\n\n while (node) {\n let sibling = (node as any).nextSibling;\n while (sibling) {\n const result = this._acceptNode(sibling);\n if (result === NodeFilter.FILTER_ACCEPT) {\n this._currentNode = sibling;\n return sibling;\n }\n if (result === NodeFilter.FILTER_SKIP) {\n const firstChild = (sibling as any).firstChild;\n if (firstChild) {\n sibling = firstChild;\n continue;\n }\n }\n sibling = (sibling as any).nextSibling;\n }\n node = (node as any).parentNode;\n if (!node || node === this._root || this._acceptNode(node) === NodeFilter.FILTER_ACCEPT) {\n return null;\n }\n }\n return null;\n }\n\n /**\n * Move to the previous node in document order\n */\n previousNode(): Node | null {\n let node = this._currentNode;\n while (node && node !== this._root) {\n const sibling = (node as any).previousSibling;\n if (sibling) {\n node = sibling;\n while (true) {\n const result = this._acceptNode(node);\n if (result !== NodeFilter.FILTER_REJECT && (node as any).lastChild) {\n node = (node as any).lastChild;\n } else {\n if (result === NodeFilter.FILTER_ACCEPT) {\n this._currentNode = node;\n return node;\n }\n break;\n }\n }\n continue;\n }\n\n node = (node as any).parentNode;\n if (node) {\n if (this._acceptNode(node) === NodeFilter.FILTER_ACCEPT) {\n this._currentNode = node;\n return node;\n }\n }\n }\n return null;\n }\n\n /**\n * Move to the next node in document order\n */\n nextNode(): Node | null {\n let node = this._currentNode;\n let result = NodeFilter.FILTER_ACCEPT;\n\n while (true) {\n if (result !== NodeFilter.FILTER_REJECT) {\n const firstChild = (node as any).firstChild;\n if (firstChild) {\n node = firstChild;\n result = this._acceptNode(node);\n if (result === NodeFilter.FILTER_ACCEPT) {\n this._currentNode = node;\n return node;\n }\n continue;\n }\n }\n\n while (node) {\n if (node === this._root) return null;\n const nextSibling = (node as any).nextSibling;\n if (nextSibling) {\n node = nextSibling;\n break;\n }\n node = (node as any).parentNode;\n }\n\n if (!node) return null;\n\n result = this._acceptNode(node);\n if (result === NodeFilter.FILTER_ACCEPT) {\n this._currentNode = node;\n return node;\n }\n }\n }\n\n /**\n * Check node acceptance\n */\n private _acceptNode(node: Node): number {\n const nodeTypeMask = 1 << (node.nodeType - 1);\n if (!(this._whatToShow & nodeTypeMask)) {\n return NodeFilter.FILTER_SKIP;\n }\n\n if (this._filter) {\n if (typeof this._filter === 'function') {\n return (this._filter as any)(node);\n }\n return this._filter.acceptNode(node);\n }\n\n return NodeFilter.FILTER_ACCEPT;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,4 +1,4 @@
1
- class HTMLCollection {
1
+ class HTMLCollectionImp {
2
2
  constructor(elements = []) {
3
3
  this._elements = [];
4
4
  this._elements = [...elements];
@@ -61,6 +61,7 @@ class HTMLCollection {
61
61
  /**
62
62
  * Returns an iterator for the collection.
63
63
  */
64
+ // @ts-ignore
64
65
  [Symbol.iterator]() {
65
66
  return this._elements[Symbol.iterator]();
66
67
  }
@@ -81,6 +82,6 @@ class HTMLCollection {
81
82
  }
82
83
  }
83
84
  export {
84
- HTMLCollection
85
+ HTMLCollectionImp
85
86
  };
86
- //# sourceMappingURL=HTMLCollection.js.map
87
+ //# sourceMappingURL=HTMLCollectionImp.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/collection/HTMLCollectionImp.ts"],
4
+ "sourcesContent": ["// import { Element } from '../elements/Element';\n\n/**\n * **`HTMLCollection`** represents a generic collection of HTML elements.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection)\n */\nexport class HTMLCollectionImp implements HTMLCollection {\n // \uC778\uB371\uC2A4 \uC2DC\uADF8\uB2C8\uCC98 \uC120\uC5B8\n [index: number]: Element;\n \n private _elements: Element[] = [];\n\n constructor(elements: Element[] = []) {\n this._elements = [...elements];\n \n // \uC778\uB371\uC2A4 \uC2DC\uADF8\uB2C8\uCC98 \uAD6C\uD604\uC744 \uC704\uD55C \uD504\uB85D\uC2DC \uC124\uC815\n return new Proxy(this, {\n get(target, prop) {\n // \uC22B\uC790 \uC778\uB371\uC2A4\uC778 \uACBD\uC6B0\n if (typeof prop === 'string' && /^\\d+$/.test(prop)) {\n const index = parseInt(prop, 10);\n return target._elements[index] || null;\n }\n // \uC77C\uBC18 \uD504\uB85C\uD37C\uD2F0/\uBA54\uC11C\uB4DC\uC778 \uACBD\uC6B0\n return (target as any)[prop];\n },\n \n set(target, prop, value) {\n // \uC22B\uC790 \uC778\uB371\uC2A4 \uC124\uC815 \uBC29\uC9C0 (\uC77D\uAE30 \uC804\uC6A9)\n if (typeof prop === 'string' && /^\\d+$/.test(prop)) {\n return false;\n }\n (target as any)[prop] = value;\n return true;\n },\n \n has(target, prop) {\n if (typeof prop === 'string' && /^\\d+$/.test(prop)) {\n const index = parseInt(prop, 10);\n return index >= 0 && index < target._elements.length;\n }\n return prop in target;\n }\n });\n }\n\n /**\n * Returns the number of elements in the collection.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/length)\n */\n get length(): number {\n return this._elements.length;\n }\n\n /**\n * Returns the element at the specified index, or null if the index is out of range.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/item)\n */\n item(index: number): Element | null {\n if (index < 0 || index >= this._elements.length) {\n return null;\n }\n return this._elements[index];\n }\n\n /**\n * Returns the element with the specified ID or name, or null if no such element exists.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/namedItem)\n */\n namedItem(name: string): Element | null {\n for (const element of this._elements) {\n if (element.id === name || element.getAttribute('name') === name) {\n return element;\n }\n }\n return null;\n }\n\n /**\n * Returns an iterator for the collection.\n */\n // @ts-ignore\n [Symbol.iterator](): IterableIterator<Element> {\n return this._elements[Symbol.iterator]();\n }\n\n // \uB0B4\uBD80\uC801\uC73C\uB85C \uC694\uC18C \uCD94\uAC00/\uC81C\uAC70\uB97C \uC704\uD55C \uBA54\uC11C\uB4DC\uB4E4 (DOM \uC870\uC791 \uC2DC \uC0AC\uC6A9)\n _addElement(element: Element): void {\n this._elements.push(element);\n }\n\n _removeElement(element: Element): boolean {\n const index = this._elements.indexOf(element);\n if (index !== -1) {\n this._elements.splice(index, 1);\n return true;\n }\n return false;\n }\n\n _insertElement(index: number, element: Element): void {\n this._elements.splice(index, 0, element);\n }\n}\n"],
5
+ "mappings": "AAOO,MAAM,kBAA4C;AAAA,EAMrD,YAAY,WAAsB,CAAC,GAAG;AAFtC,SAAQ,YAAuB,CAAC;AAG5B,SAAK,YAAY,CAAC,GAAG,QAAQ;AAG7B,WAAO,IAAI,MAAM,MAAM;AAAA,MACnB,IAAI,QAAQ,MAAM;AAEd,YAAI,OAAO,SAAS,YAAY,QAAQ,KAAK,IAAI,GAAG;AAChD,gBAAM,QAAQ,SAAS,MAAM,EAAE;AAC/B,iBAAO,OAAO,UAAU,KAAK,KAAK;AAAA,QACtC;AAEA,eAAQ,OAAe,IAAI;AAAA,MAC/B;AAAA,MAEA,IAAI,QAAQ,MAAM,OAAO;AAErB,YAAI,OAAO,SAAS,YAAY,QAAQ,KAAK,IAAI,GAAG;AAChD,iBAAO;AAAA,QACX;AACA,QAAC,OAAe,IAAI,IAAI;AACxB,eAAO;AAAA,MACX;AAAA,MAEA,IAAI,QAAQ,MAAM;AACd,YAAI,OAAO,SAAS,YAAY,QAAQ,KAAK,IAAI,GAAG;AAChD,gBAAM,QAAQ,SAAS,MAAM,EAAE;AAC/B,iBAAO,SAAS,KAAK,QAAQ,OAAO,UAAU;AAAA,QAClD;AACA,eAAO,QAAQ;AAAA,MACnB;AAAA,IACJ,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,IAAI,SAAiB;AACjB,WAAO,KAAK,UAAU;AAAA,EAC1B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,KAAK,OAA+B;AAChC,QAAI,QAAQ,KAAK,SAAS,KAAK,UAAU,QAAQ;AAC7C,aAAO;AAAA,IACX;AACA,WAAO,KAAK,UAAU,KAAK;AAAA,EAC/B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAU,MAA8B;AACpC,eAAW,WAAW,KAAK,WAAW;AAClC,UAAI,QAAQ,OAAO,QAAQ,QAAQ,aAAa,MAAM,MAAM,MAAM;AAC9D,eAAO;AAAA,MACX;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,CAAC,OAAO,QAAQ,IAA+B;AAC3C,WAAO,KAAK,UAAU,OAAO,QAAQ,EAAE;AAAA,EAC3C;AAAA;AAAA,EAGA,YAAY,SAAwB;AAChC,SAAK,UAAU,KAAK,OAAO;AAAA,EAC/B;AAAA,EAEA,eAAe,SAA2B;AACtC,UAAM,QAAQ,KAAK,UAAU,QAAQ,OAAO;AAC5C,QAAI,UAAU,IAAI;AACd,WAAK,UAAU,OAAO,OAAO,CAAC;AAC9B,aAAO;AAAA,IACX;AACA,WAAO;AAAA,EACX;AAAA,EAEA,eAAe,OAAe,SAAwB;AAClD,SAAK,UAAU,OAAO,OAAO,GAAG,OAAO;AAAA,EAC3C;AACJ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ import { HTMLCollectionImp } from "./HTMLCollectionImp.js";
2
+ class HTMLCollectionOfImp extends HTMLCollectionImp {
3
+ }
4
+ export {
5
+ HTMLCollectionOfImp
6
+ };
7
+ //# sourceMappingURL=HTMLCollectionOfImp.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/collection/HTMLCollectionOfImp.ts"],
4
+ "sourcesContent": ["// import { Element } from '../elements/Element';\nimport { HTMLCollectionImp } from './HTMLCollectionImp';\n\n/**\n * **`HTMLCollectionOf<T>`** is a generic version of HTMLCollection that provides type safety for specific element types.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection)\n */\nexport class HTMLCollectionOfImp<T extends Element> extends HTMLCollectionImp implements HTMLCollectionOfImp<T>{\n\n\n}"],
5
+ "mappings": "AACA,SAAS,yBAAyB;AAO3B,MAAM,4BAA+C,kBAAmD;AAG/G;",
6
+ "names": []
7
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/collection/NodeList.ts"],
4
- "sourcesContent": ["import { Node } from '../Node';\n\n/**\n * **`NodeList`** objects are collections of nodes, usually returned by properties such as Node.childNodes and methods such as document.querySelectorAll().\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList)\n */\nexport class NodeList<T extends Node = Node> {\n // \uC778\uB371\uC2A4 \uC2DC\uADF8\uB2C8\uCC98 \uC120\uC5B8\n [index: number]: T;\n \n private _nodes: T[] = [];\n\n constructor(nodes: T[] = []) {\n this._nodes = [...nodes];\n \n // \uC778\uB371\uC2A4 \uC2DC\uADF8\uB2C8\uCC98 \uAD6C\uD604\uC744 \uC704\uD55C \uD504\uB85D\uC2DC \uC124\uC815\n return new Proxy(this, {\n get(target, prop) {\n // \uC22B\uC790 \uC778\uB371\uC2A4\uC778 \uACBD\uC6B0\n if (typeof prop === 'string' && /^\\d+$/.test(prop)) {\n const index = parseInt(prop, 10);\n return target._nodes[index] || null;\n }\n // \uC77C\uBC18 \uD504\uB85C\uD37C\uD2F0/\uBA54\uC11C\uB4DC\uC778 \uACBD\uC6B0\n return (target as any)[prop];\n },\n \n set(target, prop, value) {\n // \uC22B\uC790 \uC778\uB371\uC2A4 \uC124\uC815 \uBC29\uC9C0 (\uC77D\uAE30 \uC804\uC6A9)\n if (typeof prop === 'string' && /^\\d+$/.test(prop)) {\n return false;\n }\n (target as any)[prop] = value;\n return true;\n },\n \n has(target, prop) {\n if (typeof prop === 'string' && /^\\d+$/.test(prop)) {\n const index = parseInt(prop, 10);\n return index >= 0 && index < target._nodes.length;\n }\n return prop in target;\n }\n });\n }\n\n /**\n * The **`NodeList.length`** property returns the number of items in a NodeList.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/length)\n */\n get length(): number {\n return this._nodes.length;\n }\n\n /**\n * Returns a node from a `NodeList` by index.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/item)\n */\n item(index: number): T | null {\n if (index < 0 || index >= this._nodes.length) {\n return null;\n }\n return this._nodes[index];\n }\n\n /**\n * Executes a provided function once for each `Node` value in the `NodeList`.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/forEach)\n */\n forEach(callbackfn: (value: T, key: number, parent: NodeList) => void, thisArg?: any): void {\n this._nodes.forEach((node, index) => {\n callbackfn.call(thisArg, node, index, this);\n });\n }\n\n // \uB0B4\uBD80\uC801\uC73C\uB85C \uB178\uB4DC \uCD94\uAC00/\uC81C\uAC70\uB97C \uC704\uD55C \uBA54\uC11C\uB4DC\uB4E4 (DOM \uC870\uC791 \uC2DC \uC0AC\uC6A9)\n _addNode(node: T): void {\n this._nodes.push(node);\n }\n\n _removeNode(node: T): boolean {\n const index = this._nodes.indexOf(node);\n if (index !== -1) {\n this._nodes.splice(index, 1);\n return true;\n }\n return false;\n }\n\n _insertNode(index: number, node: T): void {\n this._nodes.splice(index, 0, node);\n }\n\n // Iterator \uC9C0\uC6D0 (for...of \uC0AC\uC6A9 \uAC00\uB2A5)\n *[Symbol.iterator](): Iterator<T> {\n for (const node of this._nodes) {\n yield node;\n }\n }\n\n /**\n * Returns an iterator allowing to go through all keys contained in this object.\n * The keys are unsigned integer (index).\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/keys)\n */\n *keys(): IterableIterator<number> {\n for (let i = 0; i < this._nodes.length; i++) {\n yield i;\n }\n }\n\n /**\n * Returns an iterator allowing to go through all values contained in this object.\n * The values are Node objects.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/values)\n */\n *values(): IterableIterator<T> {\n for (const node of this._nodes) {\n yield node;\n }\n }\n\n /**\n * Returns an iterator allowing to go through all key/value pairs contained in this object.\n * The key is an unsigned integer (index) and the value is a Node object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/entries)\n */\n *entries(): IterableIterator<[number, T]> {\n for (let i = 0; i < this._nodes.length; i++) {\n yield [i, this._nodes[i]];\n }\n }\n}"],
4
+ "sourcesContent": ["// import { Node } from '../Node';\n\n/**\n * **`NodeList`** objects are collections of nodes, usually returned by properties such as Node.childNodes and methods such as document.querySelectorAll().\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList)\n */\nexport class NodeList<T extends Node = Node> {\n // \uC778\uB371\uC2A4 \uC2DC\uADF8\uB2C8\uCC98 \uC120\uC5B8\n [index: number]: T;\n \n private _nodes: T[] = [];\n\n constructor(nodes: T[] = []) {\n this._nodes = [...nodes];\n \n // \uC778\uB371\uC2A4 \uC2DC\uADF8\uB2C8\uCC98 \uAD6C\uD604\uC744 \uC704\uD55C \uD504\uB85D\uC2DC \uC124\uC815\n return new Proxy(this, {\n get(target, prop) {\n // \uC22B\uC790 \uC778\uB371\uC2A4\uC778 \uACBD\uC6B0\n if (typeof prop === 'string' && /^\\d+$/.test(prop)) {\n const index = parseInt(prop, 10);\n return target._nodes[index] || null;\n }\n // \uC77C\uBC18 \uD504\uB85C\uD37C\uD2F0/\uBA54\uC11C\uB4DC\uC778 \uACBD\uC6B0\n return (target as any)[prop];\n },\n \n set(target, prop, value) {\n // \uC22B\uC790 \uC778\uB371\uC2A4 \uC124\uC815 \uBC29\uC9C0 (\uC77D\uAE30 \uC804\uC6A9)\n if (typeof prop === 'string' && /^\\d+$/.test(prop)) {\n return false;\n }\n (target as any)[prop] = value;\n return true;\n },\n \n has(target, prop) {\n if (typeof prop === 'string' && /^\\d+$/.test(prop)) {\n const index = parseInt(prop, 10);\n return index >= 0 && index < target._nodes.length;\n }\n return prop in target;\n }\n });\n }\n\n /**\n * The **`NodeList.length`** property returns the number of items in a NodeList.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/length)\n */\n get length(): number {\n return this._nodes.length;\n }\n\n /**\n * Returns a node from a `NodeList` by index.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/item)\n */\n item(index: number): T | null {\n if (index < 0 || index >= this._nodes.length) {\n return null;\n }\n return this._nodes[index];\n }\n\n /**\n * Executes a provided function once for each `Node` value in the `NodeList`.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/forEach)\n */\n forEach(callbackfn: (value: T, key: number, parent: NodeList) => void, thisArg?: any): void {\n this._nodes.forEach((node, index) => {\n callbackfn.call(thisArg, node, index, this);\n });\n }\n\n // \uB0B4\uBD80\uC801\uC73C\uB85C \uB178\uB4DC \uCD94\uAC00/\uC81C\uAC70\uB97C \uC704\uD55C \uBA54\uC11C\uB4DC\uB4E4 (DOM \uC870\uC791 \uC2DC \uC0AC\uC6A9)\n _addNode(node: T): void {\n this._nodes.push(node);\n }\n\n _removeNode(node: T): boolean {\n const index = this._nodes.indexOf(node);\n if (index !== -1) {\n this._nodes.splice(index, 1);\n return true;\n }\n return false;\n }\n\n _insertNode(index: number, node: T): void {\n this._nodes.splice(index, 0, node);\n }\n\n // Iterator \uC9C0\uC6D0 (for...of \uC0AC\uC6A9 \uAC00\uB2A5)\n *[Symbol.iterator](): Iterator<T> {\n for (const node of this._nodes) {\n yield node;\n }\n }\n\n /**\n * Returns an iterator allowing to go through all keys contained in this object.\n * The keys are unsigned integer (index).\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/keys)\n */\n *keys(): IterableIterator<number> {\n for (let i = 0; i < this._nodes.length; i++) {\n yield i;\n }\n }\n\n /**\n * Returns an iterator allowing to go through all values contained in this object.\n * The values are Node objects.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/values)\n */\n *values(): IterableIterator<T> {\n for (const node of this._nodes) {\n yield node;\n }\n }\n\n /**\n * Returns an iterator allowing to go through all key/value pairs contained in this object.\n * The key is an unsigned integer (index) and the value is a Node object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/entries)\n */\n *entries(): IterableIterator<[number, T]> {\n for (let i = 0; i < this._nodes.length; i++) {\n yield [i, this._nodes[i]];\n }\n }\n}"],
5
5
  "mappings": "AAOO,MAAM,SAAgC;AAAA,EAMzC,YAAY,QAAa,CAAC,GAAG;AAF7B,SAAQ,SAAc,CAAC;AAGnB,SAAK,SAAS,CAAC,GAAG,KAAK;AAGvB,WAAO,IAAI,MAAM,MAAM;AAAA,MACnB,IAAI,QAAQ,MAAM;AAEd,YAAI,OAAO,SAAS,YAAY,QAAQ,KAAK,IAAI,GAAG;AAChD,gBAAM,QAAQ,SAAS,MAAM,EAAE;AAC/B,iBAAO,OAAO,OAAO,KAAK,KAAK;AAAA,QACnC;AAEA,eAAQ,OAAe,IAAI;AAAA,MAC/B;AAAA,MAEA,IAAI,QAAQ,MAAM,OAAO;AAErB,YAAI,OAAO,SAAS,YAAY,QAAQ,KAAK,IAAI,GAAG;AAChD,iBAAO;AAAA,QACX;AACA,QAAC,OAAe,IAAI,IAAI;AACxB,eAAO;AAAA,MACX;AAAA,MAEA,IAAI,QAAQ,MAAM;AACd,YAAI,OAAO,SAAS,YAAY,QAAQ,KAAK,IAAI,GAAG;AAChD,gBAAM,QAAQ,SAAS,MAAM,EAAE;AAC/B,iBAAO,SAAS,KAAK,QAAQ,OAAO,OAAO;AAAA,QAC/C;AACA,eAAO,QAAQ;AAAA,MACnB;AAAA,IACJ,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,IAAI,SAAiB;AACjB,WAAO,KAAK,OAAO;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,KAAK,OAAyB;AAC1B,QAAI,QAAQ,KAAK,SAAS,KAAK,OAAO,QAAQ;AAC1C,aAAO;AAAA,IACX;AACA,WAAO,KAAK,OAAO,KAAK;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,QAAQ,YAA+D,SAAqB;AACxF,SAAK,OAAO,QAAQ,CAAC,MAAM,UAAU;AACjC,iBAAW,KAAK,SAAS,MAAM,OAAO,IAAI;AAAA,IAC9C,CAAC;AAAA,EACL;AAAA;AAAA,EAGA,SAAS,MAAe;AACpB,SAAK,OAAO,KAAK,IAAI;AAAA,EACzB;AAAA,EAEA,YAAY,MAAkB;AAC1B,UAAM,QAAQ,KAAK,OAAO,QAAQ,IAAI;AACtC,QAAI,UAAU,IAAI;AACd,WAAK,OAAO,OAAO,OAAO,CAAC;AAC3B,aAAO;AAAA,IACX;AACA,WAAO;AAAA,EACX;AAAA,EAEA,YAAY,OAAe,MAAe;AACtC,SAAK,OAAO,OAAO,OAAO,GAAG,IAAI;AAAA,EACrC;AAAA;AAAA,EAGA,EAAE,OAAO,QAAQ,IAAiB;AAC9B,eAAW,QAAQ,KAAK,QAAQ;AAC5B,YAAM;AAAA,IACV;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,CAAC,OAAiC;AAC9B,aAAS,IAAI,GAAG,IAAI,KAAK,OAAO,QAAQ,KAAK;AACzC,YAAM;AAAA,IACV;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,CAAC,SAA8B;AAC3B,eAAW,QAAQ,KAAK,QAAQ;AAC5B,YAAM;AAAA,IACV;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,CAAC,UAAyC;AACtC,aAAS,IAAI,GAAG,IAAI,KAAK,OAAO,QAAQ,KAAK;AACzC,YAAM,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC;AAAA,IAC5B;AAAA,EACJ;AACJ;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import { NodeList } from "./NodeList.js";
2
- class NodeListOf extends NodeList {
2
+ class NodeListOfImp extends NodeList {
3
3
  constructor(nodes = []) {
4
4
  super(nodes);
5
5
  }
@@ -14,6 +14,6 @@ class NodeListOf extends NodeList {
14
14
  }
15
15
  }
16
16
  export {
17
- NodeListOf
17
+ NodeListOfImp
18
18
  };
19
- //# sourceMappingURL=NodeListOf.js.map
19
+ //# sourceMappingURL=NodeListOfImp.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/collection/NodeListOfImp.ts"],
4
+ "sourcesContent": ["// import { Node } from '../Node';\nimport { NodeList } from './NodeList';\n\n/**\n * **`NodeListOf<TNode>`** is a generic version of NodeList that provides type safety for specific node types.\n * \n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList)\n */\nexport class NodeListOfImp<TNode extends Node> extends NodeList<TNode> {\n // \uC778\uB371\uC2A4 \uC2DC\uADF8\uB2C8\uCC98\uB97C \uBA85\uC2DC\uC801\uC73C\uB85C \uC120\uC5B8\uD558\uC5EC \uD0C0\uC785 \uCD94\uB860 \uC9C0\uC6D0\n [index: number]: TNode;\n \n constructor(nodes: TNode[] = []) {\n // \uBD80\uBAA8 NodeList\uC758 \uC0DD\uC131\uC790\uB97C \uD638\uCD9C\uD558\uBA74\uC11C \uD0C0\uC785\uC774 \uC9C0\uC815\uB41C \uB178\uB4DC\uB4E4\uC744 \uC804\uB2EC\n super(nodes as TNode[]);\n }\n\n // \uD0C0\uC785 \uC548\uC804\uC131\uC744 \uC704\uD55C \uC624\uBC84\uB77C\uC774\uB4DC - \uB2E8\uC21C \uCE90\uC2A4\uD305\uB9CC\n item(index: number): TNode | null {\n return super.item(index) as TNode | null;\n }\n\n forEach(callbackfn: (value: TNode, key: number, parent: NodeListOfImp<TNode>) => void, thisArg?: any): void {\n super.forEach((node, index) => {\n callbackfn.call(thisArg, node as TNode, index, this);\n }, thisArg);\n }\n}"],
5
+ "mappings": "AACA,SAAS,gBAAgB;AAOlB,MAAM,sBAA0C,SAAgB;AAAA,EAInE,YAAY,QAAiB,CAAC,GAAG;AAE7B,UAAM,KAAgB;AAAA,EAC1B;AAAA;AAAA,EAGA,KAAK,OAA6B;AAC9B,WAAO,MAAM,KAAK,KAAK;AAAA,EAC3B;AAAA,EAEA,QAAQ,YAA+E,SAAqB;AACxG,UAAM,QAAQ,CAAC,MAAM,UAAU;AAC3B,iBAAW,KAAK,SAAS,MAAe,OAAO,IAAI;AAAA,IACvD,GAAG,OAAO;AAAA,EACd;AACJ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,46 @@
1
+ class StylePropertyMapImpl {
2
+ constructor(element) {
3
+ this.element = element;
4
+ }
5
+ get(property) {
6
+ throw new Error("Method not implemented.");
7
+ }
8
+ getAll(property) {
9
+ throw new Error("Method not implemented.");
10
+ }
11
+ has(property) {
12
+ throw new Error("Method not implemented.");
13
+ }
14
+ forEach(callbackfn, thisArg) {
15
+ throw new Error("Method not implemented.");
16
+ }
17
+ entries() {
18
+ throw new Error("Method not implemented.");
19
+ }
20
+ keys() {
21
+ throw new Error("Method not implemented.");
22
+ }
23
+ values() {
24
+ throw new Error("Method not implemented.");
25
+ }
26
+ [Symbol.iterator]() {
27
+ throw new Error("Method not implemented.");
28
+ }
29
+ set(property, ...values) {
30
+ const value = values[0];
31
+ this.element.style.setProperty(property, String(value));
32
+ }
33
+ append(property, ...values) {
34
+ this.set(property, ...values);
35
+ }
36
+ delete(property) {
37
+ this.element.style.removeProperty(property);
38
+ }
39
+ clear() {
40
+ this.element.style.cssText = "";
41
+ }
42
+ }
43
+ export {
44
+ StylePropertyMapImpl
45
+ };
46
+ //# sourceMappingURL=StylePropertyMapImpl.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/node/collection/StylePropertyMapImpl.ts"],
4
+ "sourcesContent": ["// StylePropertyMap implementation\nimport {HTMLElementBase} from \"../elements\";\n\nexport class StylePropertyMapImpl implements StylePropertyMap {\n [key: string]: any;\n\n constructor(private element: HTMLElementBase) {\n }\n\n size: number;\n\n get(property: string): undefined | CSSStyleValue {\n throw new Error(\"Method not implemented.\");\n }\n\n getAll(property: string): CSSStyleValue[] {\n throw new Error(\"Method not implemented.\");\n }\n\n has(property: string): boolean {\n throw new Error(\"Method not implemented.\");\n }\n\n forEach(callbackfn: (value: CSSStyleValue[], key: string, parent: StylePropertyMapReadOnly) => void, thisArg?: any): void {\n throw new Error(\"Method not implemented.\");\n }\n\n entries(): StylePropertyMapReadOnlyIterator<[string, Iterable<CSSStyleValue>]> {\n throw new Error(\"Method not implemented.\");\n }\n\n keys(): StylePropertyMapReadOnlyIterator<string> {\n throw new Error(\"Method not implemented.\");\n }\n\n values(): StylePropertyMapReadOnlyIterator<Iterable<CSSStyleValue>> {\n throw new Error(\"Method not implemented.\");\n }\n\n [Symbol.iterator](): StylePropertyMapReadOnlyIterator<[string, Iterable<CSSStyleValue>]> {\n throw new Error(\"Method not implemented.\");\n }\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": "AAGO,MAAM,qBAAiD;AAAA,EAG5D,YAAoB,SAA0B;AAA1B;AAAA,EACpB;AAAA,EAIA,IAAI,UAA6C;AAC/C,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,OAAO,UAAmC;AACxC,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,IAAI,UAA2B;AAC7B,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,QAAQ,YAA6F,SAAqB;AACxH,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,UAA+E;AAC7E,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,OAAiD;AAC/C,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,SAAoE;AAClE,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,CAAC,OAAO,QAAQ,IAAyE;AACvF,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,IAAI,aAAqB,QAAgC;AACvD,UAAM,QAAQ,OAAO,CAAC;AACtB,SAAK,QAAQ,MAAM,YAAY,UAAU,OAAO,KAAK,CAAC;AAAA,EACxD;AAAA,EAEA,OAAO,aAAqB,QAAgC;AAC1D,SAAK,IAAI,UAAU,GAAG,MAAM;AAAA,EAC9B;AAAA,EAEA,OAAO,UAAwB;AAC7B,SAAK,QAAQ,MAAM,eAAe,QAAQ;AAAA,EAC5C;AAAA,EAEA,QAAc;AACZ,SAAK,QAAQ,MAAM,UAAU;AAAA,EAC/B;AACF;",
6
+ "names": []
7
+ }
@@ -1,11 +1,11 @@
1
- import { HTMLCollection } from "./HTMLCollection.js";
2
- import { HTMLCollectionOf } from "./HTMLCollectionOf.js";
1
+ import { HTMLCollectionImp } from "./HTMLCollectionImp.js";
2
+ import { HTMLCollectionOfImp } from "./HTMLCollectionOfImp.js";
3
3
  import { NodeList } from "./NodeList.js";
4
- import { NodeListOf } from "./NodeListOf.js";
4
+ import { NodeListOfImp } from "./NodeListOfImp.js";
5
5
  export {
6
- HTMLCollection,
7
- HTMLCollectionOf,
6
+ HTMLCollectionImp,
7
+ HTMLCollectionOfImp,
8
8
  NodeList,
9
- NodeListOf
9
+ NodeListOfImp
10
10
  };
11
11
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/collection/index.ts"],
4
- "sourcesContent": ["export { HTMLCollection } from './HTMLCollection';\nexport { HTMLCollectionOf } from './HTMLCollectionOf';\nexport { NodeList } from './NodeList';\nexport { NodeListOf } from './NodeListOf';"],
5
- "mappings": "AAAA,SAAS,sBAAsB;AAC/B,SAAS,wBAAwB;AACjC,SAAS,gBAAgB;AACzB,SAAS,kBAAkB;",
4
+ "sourcesContent": ["export { HTMLCollectionImp } from './HTMLCollectionImp';\nexport { HTMLCollectionOfImp } from './HTMLCollectionOfImp';\nexport { NodeList } from './NodeList';\nexport { NodeListOfImp } from './NodeListOfImp';"],
5
+ "mappings": "AAAA,SAAS,yBAAyB;AAClC,SAAS,2BAA2B;AACpC,SAAS,gBAAgB;AACzB,SAAS,qBAAqB;",
6
6
  "names": []
7
7
  }