@dooboostore/dom-parser 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/DomParser.js +43 -13
- package/dist/cjs/DomParser.js.map +2 -2
- package/dist/cjs/factory/ElementFactory.js +27 -6
- package/dist/cjs/factory/ElementFactory.js.map +2 -2
- package/dist/cjs/index.js +4 -0
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/node/CharacterData.js.map +1 -1
- package/dist/cjs/node/ChildNode.js +0 -15
- package/dist/cjs/node/ChildNode.js.map +3 -3
- package/dist/cjs/node/ChildNodeBase.js +20 -0
- package/dist/cjs/node/ChildNodeBase.js.map +2 -2
- package/dist/cjs/node/Comment.js.map +2 -2
- package/dist/cjs/node/Document.js +0 -27
- package/dist/cjs/node/Document.js.map +4 -4
- package/dist/cjs/node/DocumentBase.js +169 -202
- package/dist/cjs/node/DocumentBase.js.map +2 -2
- package/dist/cjs/node/DocumentFragment.js +0 -15
- package/dist/cjs/node/DocumentFragment.js.map +3 -3
- package/dist/cjs/node/DocumentFragmentBase.js.map +2 -2
- package/dist/cjs/node/Node.js.map +1 -1
- package/dist/cjs/node/NodeBase.js +44 -2
- package/dist/cjs/node/NodeBase.js.map +2 -2
- package/dist/cjs/node/NodeFilter.js +43 -0
- package/dist/cjs/node/NodeFilter.js.map +7 -0
- package/dist/cjs/node/NodeIterator.js +1 -28
- package/dist/cjs/node/NodeIterator.js.map +2 -2
- package/dist/cjs/node/ParentNode.js +0 -15
- package/dist/cjs/node/ParentNode.js.map +3 -3
- package/dist/cjs/node/ParentNodeBase.js +10 -10
- package/dist/cjs/node/ParentNodeBase.js.map +3 -3
- package/dist/cjs/node/ShadowRootBase.js +79 -0
- package/dist/cjs/node/ShadowRootBase.js.map +7 -0
- package/dist/cjs/node/Text.js +0 -15
- package/dist/cjs/node/Text.js.map +3 -3
- package/dist/cjs/node/TextBase.js +0 -3
- package/dist/cjs/node/TextBase.js.map +2 -2
- package/dist/cjs/node/TreeWalker.js +272 -0
- package/dist/cjs/node/TreeWalker.js.map +7 -0
- package/dist/cjs/node/collection/{HTMLCollection.js → HTMLCollectionImp.js} +7 -6
- package/dist/cjs/node/collection/HTMLCollectionImp.js.map +7 -0
- package/dist/cjs/node/collection/HTMLCollectionOfImp.js +26 -0
- package/dist/cjs/node/collection/HTMLCollectionOfImp.js.map +7 -0
- package/dist/cjs/node/collection/NodeList.js.map +1 -1
- package/dist/cjs/node/collection/{NodeListOf.js → NodeListOfImp.js} +6 -6
- package/dist/cjs/node/collection/NodeListOfImp.js.map +7 -0
- package/dist/cjs/node/collection/StylePropertyMapImpl.js +65 -0
- package/dist/cjs/node/collection/StylePropertyMapImpl.js.map +7 -0
- package/dist/cjs/node/collection/index.js +6 -6
- package/dist/cjs/node/collection/index.js.map +2 -2
- package/dist/cjs/node/elements/Element.js +0 -15
- package/dist/cjs/node/elements/Element.js.map +3 -3
- package/dist/cjs/node/elements/ElementBase.js +164 -322
- package/dist/cjs/node/elements/ElementBase.js.map +3 -3
- package/dist/cjs/node/elements/HTMLAreaElement.js.map +2 -2
- package/dist/cjs/node/{collection/HTMLCollectionOf.js → elements/HTMLAudioElement.js} +9 -16
- package/dist/cjs/node/elements/HTMLAudioElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLButtonElement.js +1 -1
- package/dist/cjs/node/elements/HTMLButtonElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLDListElement.js +29 -0
- package/dist/cjs/node/elements/HTMLDListElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLDataElement.js +29 -0
- package/dist/cjs/node/elements/HTMLDataElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLDataListElement.js +29 -0
- package/dist/cjs/node/elements/HTMLDataListElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLDetailsElement.js +29 -0
- package/dist/cjs/node/elements/HTMLDetailsElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLDialogElement.js +29 -0
- package/dist/cjs/node/elements/HTMLDialogElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLElement.js +10 -0
- package/dist/cjs/node/elements/HTMLElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLElementBase.js +153 -3
- package/dist/cjs/node/elements/HTMLElementBase.js.map +2 -2
- package/dist/cjs/node/elements/HTMLEmbedElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLFieldSetElement.js +29 -0
- package/dist/cjs/node/elements/HTMLFieldSetElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLHRElement.js +29 -0
- package/dist/cjs/node/elements/HTMLHRElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLIFrameElement.js +29 -0
- package/dist/cjs/node/elements/HTMLIFrameElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLLabelElement.js +29 -0
- package/dist/cjs/node/elements/HTMLLabelElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLLegendElement.js +29 -0
- package/dist/cjs/node/elements/HTMLLegendElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLMapElement.js +29 -0
- package/dist/cjs/node/elements/HTMLMapElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLMeterElement.js +29 -0
- package/dist/cjs/node/elements/HTMLMeterElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLModElement.js +29 -0
- package/dist/cjs/node/elements/HTMLModElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLObjectElement.js +29 -0
- package/dist/cjs/node/elements/HTMLObjectElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLOptGroupElement.js +29 -0
- package/dist/cjs/node/elements/HTMLOptGroupElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLOptionElement.js +29 -0
- package/dist/cjs/node/elements/HTMLOptionElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLOutputElement.js +29 -0
- package/dist/cjs/node/elements/HTMLOutputElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLParamElement.js +29 -0
- package/dist/cjs/node/elements/HTMLParamElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLPictureElement.js +29 -0
- package/dist/cjs/node/elements/HTMLPictureElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLPreElement.js +29 -0
- package/dist/cjs/node/elements/HTMLPreElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLProgressElement.js +29 -0
- package/dist/cjs/node/elements/HTMLProgressElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLQuoteElement.js +29 -0
- package/dist/cjs/node/elements/HTMLQuoteElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLSelectElement.js +29 -0
- package/dist/cjs/node/elements/HTMLSelectElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLSlotElement.js +29 -0
- package/dist/cjs/node/elements/HTMLSlotElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLSourceElement.js +29 -0
- package/dist/cjs/node/elements/HTMLSourceElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLTableElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLTbodyElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLTdElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLTemplateElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLTextAreaElement.js +29 -0
- package/dist/cjs/node/elements/HTMLTextAreaElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLTfootElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLTheadElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLTimeElement.js +29 -0
- package/dist/cjs/node/elements/HTMLTimeElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLTrElement.js.map +2 -2
- package/dist/cjs/node/elements/HTMLTrackElement.js +29 -0
- package/dist/cjs/node/elements/HTMLTrackElement.js.map +7 -0
- package/dist/cjs/node/elements/HTMLVideoElement.js +29 -0
- package/dist/cjs/node/elements/HTMLVideoElement.js.map +7 -0
- package/dist/cjs/node/elements/index.js +181 -92
- package/dist/cjs/node/elements/index.js.map +2 -2
- package/dist/cjs/node/index.js +6 -16
- package/dist/cjs/node/index.js.map +2 -2
- package/dist/cjs/utils/CSSSelector.js.map +2 -2
- package/dist/cjs/window/CustomElementRegistryImp.js +105 -0
- package/dist/cjs/window/CustomElementRegistryImp.js.map +7 -0
- package/dist/cjs/window/Window.js +0 -15
- package/dist/cjs/window/Window.js.map +3 -3
- package/dist/cjs/window/WindowBase.js +233 -515
- package/dist/cjs/window/WindowBase.js.map +2 -2
- package/dist/cjs/window/index.js +0 -5
- package/dist/cjs/window/index.js.map +2 -2
- package/dist/esm/DomParser.js +43 -13
- package/dist/esm/DomParser.js.map +2 -2
- package/dist/esm/factory/ElementFactory.js +27 -6
- package/dist/esm/factory/ElementFactory.js.map +2 -2
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +2 -2
- package/dist/esm/node/ChildNodeBase.js +20 -0
- package/dist/esm/node/ChildNodeBase.js.map +2 -2
- package/dist/esm/node/Comment.js.map +2 -2
- package/dist/esm/node/Document.js +0 -8
- package/dist/esm/node/Document.js.map +4 -4
- package/dist/esm/node/DocumentBase.js +166 -199
- package/dist/esm/node/DocumentBase.js.map +2 -2
- package/dist/esm/node/DocumentFragmentBase.js.map +2 -2
- package/dist/esm/node/Node.js.map +1 -1
- package/dist/esm/node/NodeBase.js +45 -22
- package/dist/esm/node/NodeBase.js.map +2 -2
- package/dist/esm/node/NodeFilter.js +24 -0
- package/dist/esm/node/NodeFilter.js.map +7 -0
- package/dist/esm/node/NodeIterator.js +1 -28
- package/dist/esm/node/NodeIterator.js.map +2 -2
- package/dist/esm/node/ParentNodeBase.js +4 -4
- package/dist/esm/node/ParentNodeBase.js.map +2 -2
- package/dist/esm/node/ShadowRootBase.js +60 -0
- package/dist/esm/node/ShadowRootBase.js.map +7 -0
- package/dist/esm/node/TextBase.js +0 -3
- package/dist/esm/node/TextBase.js.map +2 -2
- package/dist/esm/node/TreeWalker.js +253 -0
- package/dist/esm/node/TreeWalker.js.map +7 -0
- package/dist/esm/node/collection/{HTMLCollection.js → HTMLCollectionImp.js} +4 -3
- package/dist/esm/node/collection/HTMLCollectionImp.js.map +7 -0
- package/dist/esm/node/collection/HTMLCollectionOfImp.js +7 -0
- package/dist/esm/node/collection/HTMLCollectionOfImp.js.map +7 -0
- package/dist/esm/node/collection/NodeList.js.map +1 -1
- package/dist/esm/node/collection/{NodeListOf.js → NodeListOfImp.js} +3 -3
- package/dist/esm/node/collection/NodeListOfImp.js.map +7 -0
- package/dist/esm/node/collection/StylePropertyMapImpl.js +46 -0
- package/dist/esm/node/collection/StylePropertyMapImpl.js.map +7 -0
- package/dist/esm/node/collection/index.js +6 -6
- package/dist/esm/node/collection/index.js.map +2 -2
- package/dist/esm/node/elements/ElementBase.js +164 -322
- package/dist/esm/node/elements/ElementBase.js.map +3 -3
- package/dist/esm/node/elements/HTMLAreaElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLAudioElement.js +10 -0
- package/dist/esm/node/elements/HTMLAudioElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLButtonElement.js +1 -1
- package/dist/esm/node/elements/HTMLButtonElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLDListElement.js +10 -0
- package/dist/esm/node/elements/HTMLDListElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLDataElement.js +10 -0
- package/dist/esm/node/elements/HTMLDataElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLDataListElement.js +10 -0
- package/dist/esm/node/elements/HTMLDataListElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLDetailsElement.js +10 -0
- package/dist/esm/node/elements/HTMLDetailsElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLDialogElement.js +10 -0
- package/dist/esm/node/elements/HTMLDialogElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLElement.js +6 -0
- package/dist/esm/node/elements/HTMLElement.js.map +3 -3
- package/dist/esm/node/elements/HTMLElementBase.js +153 -3
- package/dist/esm/node/elements/HTMLElementBase.js.map +2 -2
- package/dist/esm/node/elements/HTMLEmbedElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLFieldSetElement.js +10 -0
- package/dist/esm/node/elements/HTMLFieldSetElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLHRElement.js +10 -0
- package/dist/esm/node/elements/HTMLHRElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLIFrameElement.js +10 -0
- package/dist/esm/node/elements/HTMLIFrameElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLLabelElement.js +10 -0
- package/dist/esm/node/elements/HTMLLabelElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLLegendElement.js +10 -0
- package/dist/esm/node/elements/HTMLLegendElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLMapElement.js +10 -0
- package/dist/esm/node/elements/HTMLMapElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLMeterElement.js +10 -0
- package/dist/esm/node/elements/HTMLMeterElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLModElement.js +10 -0
- package/dist/esm/node/elements/HTMLModElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLObjectElement.js +10 -0
- package/dist/esm/node/elements/HTMLObjectElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLOptGroupElement.js +10 -0
- package/dist/esm/node/elements/HTMLOptGroupElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLOptionElement.js +10 -0
- package/dist/esm/node/elements/HTMLOptionElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLOutputElement.js +10 -0
- package/dist/esm/node/elements/HTMLOutputElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLParamElement.js +10 -0
- package/dist/esm/node/elements/HTMLParamElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLPictureElement.js +10 -0
- package/dist/esm/node/elements/HTMLPictureElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLPreElement.js +10 -0
- package/dist/esm/node/elements/HTMLPreElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLProgressElement.js +10 -0
- package/dist/esm/node/elements/HTMLProgressElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLQuoteElement.js +10 -0
- package/dist/esm/node/elements/HTMLQuoteElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLSelectElement.js +10 -0
- package/dist/esm/node/elements/HTMLSelectElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLSlotElement.js +10 -0
- package/dist/esm/node/elements/HTMLSlotElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLSourceElement.js +10 -0
- package/dist/esm/node/elements/HTMLSourceElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLTableElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLTbodyElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLTdElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLTemplateElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLTextAreaElement.js +10 -0
- package/dist/esm/node/elements/HTMLTextAreaElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLTfootElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLTheadElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLTimeElement.js +10 -0
- package/dist/esm/node/elements/HTMLTimeElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLTrElement.js.map +2 -2
- package/dist/esm/node/elements/HTMLTrackElement.js +10 -0
- package/dist/esm/node/elements/HTMLTrackElement.js.map +7 -0
- package/dist/esm/node/elements/HTMLVideoElement.js +10 -0
- package/dist/esm/node/elements/HTMLVideoElement.js.map +7 -0
- package/dist/esm/node/elements/index.js +182 -93
- package/dist/esm/node/elements/index.js.map +2 -2
- package/dist/esm/node/index.js +7 -17
- package/dist/esm/node/index.js.map +2 -2
- package/dist/esm/utils/CSSSelector.js.map +2 -2
- package/dist/esm/window/CustomElementRegistryImp.js +86 -0
- package/dist/esm/window/CustomElementRegistryImp.js.map +7 -0
- package/dist/esm/window/WindowBase.js +282 -499
- package/dist/esm/window/WindowBase.js.map +2 -2
- package/dist/esm/window/index.js +0 -5
- package/dist/esm/window/index.js.map +2 -2
- package/dist/esm-bundle/dooboostore-dom-parser.esm.js +3755 -3548
- package/dist/esm-bundle/dooboostore-dom-parser.esm.js.map +4 -4
- package/dist/types/DomParser.d.ts +4 -0
- package/dist/types/DomParser.d.ts.map +1 -1
- package/dist/types/factory/ElementFactory.d.ts +1 -1
- package/dist/types/factory/ElementFactory.d.ts.map +1 -1
- package/dist/types/index.d.ts +3 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/node/CharacterData.d.ts +0 -2
- package/dist/types/node/CharacterData.d.ts.map +1 -1
- package/dist/types/node/ChildNode.d.ts +0 -38
- package/dist/types/node/ChildNode.d.ts.map +1 -1
- package/dist/types/node/ChildNodeBase.d.ts +6 -4
- package/dist/types/node/ChildNodeBase.d.ts.map +1 -1
- package/dist/types/node/Comment.d.ts +1 -1
- package/dist/types/node/Comment.d.ts.map +1 -1
- package/dist/types/node/Document.d.ts +0 -856
- package/dist/types/node/Document.d.ts.map +1 -1
- package/dist/types/node/DocumentBase.d.ts +68 -108
- package/dist/types/node/DocumentBase.d.ts.map +1 -1
- package/dist/types/node/DocumentFragment.d.ts +0 -38
- package/dist/types/node/DocumentFragment.d.ts.map +1 -1
- package/dist/types/node/DocumentFragmentBase.d.ts +1 -8
- package/dist/types/node/DocumentFragmentBase.d.ts.map +1 -1
- package/dist/types/node/Node.d.ts +0 -213
- package/dist/types/node/Node.d.ts.map +1 -1
- package/dist/types/node/NodeBase.d.ts +11 -8
- package/dist/types/node/NodeBase.d.ts.map +1 -1
- package/dist/types/node/NodeFilter.d.ts +25 -0
- package/dist/types/node/NodeFilter.d.ts.map +1 -0
- package/dist/types/node/NodeIterator.d.ts +0 -34
- package/dist/types/node/NodeIterator.d.ts.map +1 -1
- package/dist/types/node/ParentNode.d.ts +0 -84
- package/dist/types/node/ParentNode.d.ts.map +1 -1
- package/dist/types/node/ParentNodeBase.d.ts +0 -5
- package/dist/types/node/ParentNodeBase.d.ts.map +1 -1
- package/dist/types/node/ShadowRootBase.d.ts +36 -0
- package/dist/types/node/ShadowRootBase.d.ts.map +1 -0
- package/dist/types/node/Text.d.ts +0 -24
- package/dist/types/node/Text.d.ts.map +1 -1
- package/dist/types/node/TextBase.d.ts +2 -3
- package/dist/types/node/TextBase.d.ts.map +1 -1
- package/dist/types/node/TreeWalker.d.ts +48 -0
- package/dist/types/node/TreeWalker.d.ts.map +1 -0
- package/dist/types/node/collection/{HTMLCollection.d.ts → HTMLCollectionImp.d.ts} +2 -3
- package/dist/types/node/collection/HTMLCollectionImp.d.ts.map +1 -0
- package/dist/types/node/collection/HTMLCollectionOfImp.d.ts +9 -0
- package/dist/types/node/collection/HTMLCollectionOfImp.d.ts.map +1 -0
- package/dist/types/node/collection/NodeList.d.ts +0 -1
- package/dist/types/node/collection/NodeList.d.ts.map +1 -1
- package/dist/types/node/collection/{NodeListOf.d.ts → NodeListOfImp.d.ts} +3 -4
- package/dist/types/node/collection/NodeListOfImp.d.ts.map +1 -0
- package/dist/types/node/collection/StylePropertyMapImpl.d.ts +20 -0
- package/dist/types/node/collection/StylePropertyMapImpl.d.ts.map +1 -0
- package/dist/types/node/collection/index.d.ts +3 -3
- package/dist/types/node/collection/index.d.ts.map +1 -1
- package/dist/types/node/elements/Element.d.ts +0 -686
- package/dist/types/node/elements/Element.d.ts.map +1 -1
- package/dist/types/node/elements/ElementBase.d.ts +97 -73
- package/dist/types/node/elements/ElementBase.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLAreaElement.d.ts +0 -1
- package/dist/types/node/elements/HTMLAreaElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLAudioElement.d.ts +8 -0
- package/dist/types/node/elements/HTMLAudioElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLButtonElement.d.ts +1 -1
- package/dist/types/node/elements/HTMLButtonElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLDListElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLDListElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLDataElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLDataElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLDataListElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLDataListElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLDetailsElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLDetailsElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLDialogElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLDialogElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLElement.d.ts +2 -88
- package/dist/types/node/elements/HTMLElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLElementBase.d.ts +133 -3
- package/dist/types/node/elements/HTMLElementBase.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLEmbedElement.d.ts +0 -1
- package/dist/types/node/elements/HTMLEmbedElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLFieldSetElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLFieldSetElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLHRElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLHRElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLIFrameElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLIFrameElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLLabelElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLLabelElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLLegendElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLLegendElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLMapElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLMapElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLMeterElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLMeterElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLModElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLModElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLObjectElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLObjectElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLOptGroupElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLOptGroupElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLOptionElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLOptionElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLOutputElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLOutputElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLParamElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLParamElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLPictureElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLPictureElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLPreElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLPreElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLProgressElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLProgressElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLQuoteElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLQuoteElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLSelectElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLSelectElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLSlotElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLSlotElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLSourceElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLSourceElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLTableElement.d.ts +3 -4
- package/dist/types/node/elements/HTMLTableElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLTbodyElement.d.ts +2 -3
- package/dist/types/node/elements/HTMLTbodyElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLTemplateElement.d.ts +0 -1
- package/dist/types/node/elements/HTMLTemplateElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLTextAreaElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLTextAreaElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLTfootElement.d.ts +2 -3
- package/dist/types/node/elements/HTMLTfootElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLTheadElement.d.ts +2 -3
- package/dist/types/node/elements/HTMLTheadElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLTimeElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLTimeElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLTrElement.d.ts +2 -3
- package/dist/types/node/elements/HTMLTrElement.d.ts.map +1 -1
- package/dist/types/node/elements/HTMLTrackElement.d.ts +5 -0
- package/dist/types/node/elements/HTMLTrackElement.d.ts.map +1 -0
- package/dist/types/node/elements/HTMLVideoElement.d.ts +8 -0
- package/dist/types/node/elements/HTMLVideoElement.d.ts.map +1 -0
- package/dist/types/node/elements/index.d.ts +106 -52
- package/dist/types/node/elements/index.d.ts.map +1 -1
- package/dist/types/node/index.d.ts +4 -7
- package/dist/types/node/index.d.ts.map +1 -1
- package/dist/types/utils/CSSSelector.d.ts +0 -1
- package/dist/types/utils/CSSSelector.d.ts.map +1 -1
- package/dist/types/window/CustomElementRegistryImp.d.ts +18 -0
- package/dist/types/window/CustomElementRegistryImp.d.ts.map +1 -0
- package/dist/types/window/Window.d.ts +0 -619
- package/dist/types/window/Window.d.ts.map +1 -1
- package/dist/types/window/WindowBase.d.ts +261 -284
- package/dist/types/window/WindowBase.d.ts.map +1 -1
- package/dist/types/window/index.d.ts +0 -1
- package/dist/types/window/index.d.ts.map +1 -1
- package/dist/umd-bundle/dooboostore-dom-parser.umd.js +3765 -3558
- package/dist/umd-bundle/dooboostore-dom-parser.umd.js.map +4 -4
- package/package.json +1 -1
- package/src/DomParser.ts +458 -429
- package/src/factory/ElementFactory.ts +79 -53
- package/src/index.ts +11 -10
- package/src/node/CharacterData.ts +0 -2
- package/src/node/ChildNode.ts +42 -42
- package/src/node/ChildNodeBase.ts +60 -39
- package/src/node/Comment.ts +60 -60
- package/src/node/Document.ts +129 -882
- package/src/node/DocumentBase.ts +371 -462
- package/src/node/DocumentFragment.ts +38 -44
- package/src/node/DocumentFragmentBase.ts +4 -9
- package/src/node/Node.ts +231 -224
- package/src/node/NodeBase.ts +469 -443
- package/src/node/NodeFilter.ts +50 -0
- package/src/node/NodeIterator.ts +117 -172
- package/src/node/ParentNode.ts +93 -93
- package/src/node/ParentNodeBase.ts +7 -10
- package/src/node/ShadowRootBase.ts +87 -0
- package/src/node/Text.ts +30 -30
- package/src/node/TextBase.ts +92 -94
- package/src/node/TreeWalker.ts +280 -0
- package/src/node/collection/{HTMLCollection.ts → HTMLCollectionImp.ts} +3 -2
- package/src/node/collection/HTMLCollectionOfImp.ts +12 -0
- package/src/node/collection/NodeList.ts +1 -1
- package/src/node/collection/{NodeListOf.ts → NodeListOfImp.ts} +3 -3
- package/src/node/collection/StylePropertyMapImpl.ts +60 -0
- package/src/node/collection/index.ts +3 -3
- package/src/node/elements/Element.ts +212 -771
- package/src/node/elements/ElementBase.ts +840 -1195
- package/src/node/elements/HTMLAreaElement.ts +0 -1
- package/src/node/elements/HTMLAudioElement.ts +10 -0
- package/src/node/elements/HTMLButtonElement.ts +63 -63
- package/src/node/elements/HTMLDListElement.ts +2 -0
- package/src/node/elements/HTMLDataElement.ts +6 -0
- package/src/node/elements/HTMLDataListElement.ts +2 -0
- package/src/node/elements/HTMLDetailsElement.ts +2 -0
- package/src/node/elements/HTMLDialogElement.ts +2 -0
- package/src/node/elements/HTMLElement.ts +2 -102
- package/src/node/elements/HTMLElementBase.ts +453 -156
- package/src/node/elements/HTMLEmbedElement.ts +0 -1
- package/src/node/elements/HTMLFieldSetElement.ts +2 -0
- package/src/node/elements/HTMLHRElement.ts +2 -0
- package/src/node/elements/HTMLIFrameElement.ts +2 -0
- package/src/node/elements/HTMLLabelElement.ts +2 -0
- package/src/node/elements/HTMLLegendElement.ts +2 -0
- package/src/node/elements/HTMLMapElement.ts +2 -0
- package/src/node/elements/HTMLMeterElement.ts +2 -0
- package/src/node/elements/HTMLModElement.ts +2 -0
- package/src/node/elements/HTMLObjectElement.ts +2 -0
- package/src/node/elements/HTMLOptGroupElement.ts +2 -0
- package/src/node/elements/HTMLOptionElement.ts +2 -0
- package/src/node/elements/HTMLOutputElement.ts +2 -0
- package/src/node/elements/HTMLParamElement.ts +2 -0
- package/src/node/elements/HTMLPictureElement.ts +2 -0
- package/src/node/elements/HTMLPreElement.ts +2 -0
- package/src/node/elements/HTMLProgressElement.ts +2 -0
- package/src/node/elements/HTMLQuoteElement.ts +2 -0
- package/src/node/elements/HTMLSelectElement.ts +2 -0
- package/src/node/elements/HTMLSlotElement.ts +2 -0
- package/src/node/elements/HTMLSourceElement.ts +2 -0
- package/src/node/elements/HTMLTableElement.ts +3 -7
- package/src/node/elements/HTMLTbodyElement.ts +2 -3
- package/src/node/elements/HTMLTdElement.ts +1 -1
- package/src/node/elements/HTMLTemplateElement.ts +3 -6
- package/src/node/elements/HTMLTextAreaElement.ts +2 -0
- package/src/node/elements/HTMLTfootElement.ts +2 -3
- package/src/node/elements/HTMLTheadElement.ts +2 -3
- package/src/node/elements/HTMLTimeElement.ts +2 -0
- package/src/node/elements/HTMLTrElement.ts +3 -4
- package/src/node/elements/HTMLTrackElement.ts +2 -0
- package/src/node/elements/HTMLVideoElement.ts +10 -0
- package/src/node/elements/index.ts +226 -149
- package/src/node/index.ts +8 -8
- package/src/utils/CSSSelector.ts +0 -1
- package/src/window/CustomElementRegistryImp.ts +120 -0
- package/src/window/Window.ts +716 -715
- package/src/window/WindowBase.ts +842 -998
- package/src/window/index.ts +0 -1
- package/tsconfig.json +1 -0
- package/dist/cjs/node/collection/HTMLCollection.js.map +0 -7
- package/dist/cjs/node/collection/HTMLCollectionOf.js.map +0 -7
- package/dist/cjs/node/collection/NodeListOf.js.map +0 -7
- package/dist/esm/node/collection/HTMLCollection.js.map +0 -7
- package/dist/esm/node/collection/HTMLCollectionOf.js +0 -17
- package/dist/esm/node/collection/HTMLCollectionOf.js.map +0 -7
- package/dist/esm/node/collection/NodeListOf.js.map +0 -7
- package/dist/types/node/collection/HTMLCollection.d.ts.map +0 -1
- package/dist/types/node/collection/HTMLCollectionOf.d.ts +0 -14
- package/dist/types/node/collection/HTMLCollectionOf.d.ts.map +0 -1
- package/dist/types/node/collection/NodeListOf.d.ts.map +0 -1
- package/src/node/collection/HTMLCollectionOf.ts +0 -26
|
@@ -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';\
|
|
5
|
-
"mappings": "AAAA,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB;
|
|
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": "AAAA,SAAQ,kBAAiB;AAKlB,MAAM,WAAW;AAAA,EAMtB,YAAY,MAAY,aAAqB,WAAW,UAAU,SAA4B,MAAM;AAClG,SAAK,QAAQ;AACb,SAAK,cAAc;AACnB,SAAK,UAAU;AACf,SAAK,eAAe;AAAA,EACtB;AAAA,EAEA,IAAI,OAAa;AACf,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAI,aAAqB;AACvB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAI,SAA4B;AAC9B,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAI,cAAoB;AACtB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAI,YAAY,MAAY;AAC1B,SAAK,eAAe;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKA,aAA0B;AACxB,QAAI,OAAO,KAAK;AAChB,WAAO,QAAQ,SAAS,KAAK,OAAO;AAClC,aAAQ,KAAa;AACrB,UAAI,QAAQ,KAAK,YAAY,IAAI,MAAM,WAAW,eAAe;AAC/D,aAAK,eAAe;AACpB,eAAO;AAAA,MACT;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,aAA0B;AACxB,QAAI,OAAQ,KAAK,aAAqB;AACtC,WAAO,MAAM;AACX,YAAM,SAAS,KAAK,YAAY,IAAI;AACpC,UAAI,WAAW,WAAW,eAAe;AACvC,aAAK,eAAe;AACpB,eAAO;AAAA,MACT;AACA,UAAI,WAAW,WAAW,aAAa;AACrC,cAAM,QAAS,KAAa;AAC5B,YAAI,OAAO;AACT,iBAAO;AACP;AAAA,QACF;AAAA,MACF;AACA,aAAO,MAAM;AACX,cAAM,OAAQ,KAAa;AAC3B,YAAI,MAAM;AACR,iBAAO;AACP;AAAA,QACF;AACA,cAAM,SAAU,KAAa;AAC7B,YAAI,CAAC,UAAU,WAAW,KAAK,SAAS,WAAW,KAAK,cAAc;AACpE,iBAAO;AAAA,QACT;AACA,eAAO;AAAA,MACT;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,YAAyB;AACvB,QAAI,OAAQ,KAAK,aAAqB;AACtC,WAAO,MAAM;AACX,YAAM,SAAS,KAAK,YAAY,IAAI;AACpC,UAAI,WAAW,WAAW,eAAe;AACvC,aAAK,eAAe;AACpB,eAAO;AAAA,MACT;AACA,UAAI,WAAW,WAAW,aAAa;AACrC,cAAM,QAAS,KAAa;AAC5B,YAAI,OAAO;AACT,iBAAO;AACP;AAAA,QACF;AAAA,MACF;AACA,aAAO,MAAM;AACX,cAAM,OAAQ,KAAa;AAC3B,YAAI,MAAM;AACR,iBAAO;AACP;AAAA,QACF;AACA,cAAM,SAAU,KAAa;AAC7B,YAAI,CAAC,UAAU,WAAW,KAAK,SAAS,WAAW,KAAK,cAAc;AACpE,iBAAO;AAAA,QACT;AACA,eAAO;AAAA,MACT;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,kBAA+B;AAC7B,QAAI,OAAO,KAAK;AAChB,QAAI,SAAS,KAAK,MAAO,QAAO;AAEhC,WAAO,MAAM;AACX,UAAI,UAAW,KAAa;AAC5B,aAAO,SAAS;AACd,cAAM,SAAS,KAAK,YAAY,OAAO;AACvC,YAAI,WAAW,WAAW,eAAe;AACvC,eAAK,eAAe;AACpB,iBAAO;AAAA,QACT;AACA,YAAI,WAAW,WAAW,aAAa;AACrC,gBAAM,YAAa,QAAgB;AACnC,cAAI,WAAW;AACb,sBAAU;AACV;AAAA,UACF;AAAA,QACF;AACA,kBAAW,QAAgB;AAAA,MAC7B;AACA,aAAQ,KAAa;AACrB,UAAI,CAAC,QAAQ,SAAS,KAAK,SAAS,KAAK,YAAY,IAAI,MAAM,WAAW,eAAe;AACvF,eAAO;AAAA,MACT;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,cAA2B;AACzB,QAAI,OAAO,KAAK;AAChB,QAAI,SAAS,KAAK,MAAO,QAAO;AAEhC,WAAO,MAAM;AACX,UAAI,UAAW,KAAa;AAC5B,aAAO,SAAS;AACd,cAAM,SAAS,KAAK,YAAY,OAAO;AACvC,YAAI,WAAW,WAAW,eAAe;AACvC,eAAK,eAAe;AACpB,iBAAO;AAAA,QACT;AACA,YAAI,WAAW,WAAW,aAAa;AACrC,gBAAM,aAAc,QAAgB;AACpC,cAAI,YAAY;AACd,sBAAU;AACV;AAAA,UACF;AAAA,QACF;AACA,kBAAW,QAAgB;AAAA,MAC7B;AACA,aAAQ,KAAa;AACrB,UAAI,CAAC,QAAQ,SAAS,KAAK,SAAS,KAAK,YAAY,IAAI,MAAM,WAAW,eAAe;AACvF,eAAO;AAAA,MACT;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,eAA4B;AAC1B,QAAI,OAAO,KAAK;AAChB,WAAO,QAAQ,SAAS,KAAK,OAAO;AAClC,YAAM,UAAW,KAAa;AAC9B,UAAI,SAAS;AACX,eAAO;AACP,eAAO,MAAM;AACX,gBAAM,SAAS,KAAK,YAAY,IAAI;AACpC,cAAI,WAAW,WAAW,iBAAkB,KAAa,WAAW;AAClE,mBAAQ,KAAa;AAAA,UACvB,OAAO;AACL,gBAAI,WAAW,WAAW,eAAe;AACvC,mBAAK,eAAe;AACpB,qBAAO;AAAA,YACT;AACA;AAAA,UACF;AAAA,QACF;AACA;AAAA,MACF;AAEA,aAAQ,KAAa;AACrB,UAAI,MAAM;AACR,YAAI,KAAK,YAAY,IAAI,MAAM,WAAW,eAAe;AACvD,eAAK,eAAe;AACpB,iBAAO;AAAA,QACT;AAAA,MACF;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,WAAwB;AACtB,QAAI,OAAO,KAAK;AAChB,QAAI,SAAS,WAAW;AAExB,WAAO,MAAM;AACX,UAAI,WAAW,WAAW,eAAe;AACvC,cAAM,aAAc,KAAa;AACjC,YAAI,YAAY;AACd,iBAAO;AACP,mBAAS,KAAK,YAAY,IAAI;AAC9B,cAAI,WAAW,WAAW,eAAe;AACvC,iBAAK,eAAe;AACpB,mBAAO;AAAA,UACT;AACA;AAAA,QACF;AAAA,MACF;AAEA,aAAO,MAAM;AACX,YAAI,SAAS,KAAK,MAAO,QAAO;AAChC,cAAM,cAAe,KAAa;AAClC,YAAI,aAAa;AACf,iBAAO;AACP;AAAA,QACF;AACA,eAAQ,KAAa;AAAA,MACvB;AAEA,UAAI,CAAC,KAAM,QAAO;AAElB,eAAS,KAAK,YAAY,IAAI;AAC9B,UAAI,WAAW,WAAW,eAAe;AACvC,aAAK,eAAe;AACpB,eAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKQ,YAAY,MAAoB;AACtC,UAAM,eAAe,KAAM,KAAK,WAAW;AAC3C,QAAI,EAAE,KAAK,cAAc,eAAe;AACtC,aAAO,WAAW;AAAA,IACpB;AAEA,QAAI,KAAK,SAAS;AAChB,UAAI,OAAO,KAAK,YAAY,YAAY;AACtC,eAAQ,KAAK,QAAgB,IAAI;AAAA,MACnC;AACA,aAAO,KAAK,QAAQ,WAAW,IAAI;AAAA,IACrC;AAEA,WAAO,WAAW;AAAA,EACpB;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class
|
|
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
|
-
|
|
85
|
+
HTMLCollectionImp
|
|
85
86
|
};
|
|
86
|
-
//# sourceMappingURL=
|
|
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
|
+
{
|
|
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
|
|
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
|
-
|
|
17
|
+
NodeListOfImp
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=
|
|
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 {
|
|
2
|
-
import {
|
|
1
|
+
import { HTMLCollectionImp } from "./HTMLCollectionImp.js";
|
|
2
|
+
import { HTMLCollectionOfImp } from "./HTMLCollectionOfImp.js";
|
|
3
3
|
import { NodeList } from "./NodeList.js";
|
|
4
|
-
import {
|
|
4
|
+
import { NodeListOfImp } from "./NodeListOfImp.js";
|
|
5
5
|
export {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
HTMLCollectionImp,
|
|
7
|
+
HTMLCollectionOfImp,
|
|
8
8
|
NodeList,
|
|
9
|
-
|
|
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 {
|
|
5
|
-
"mappings": "AAAA,SAAS,
|
|
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
|
}
|