@pokash/n8n-nodes-ksef 0.2.16 → 0.2.17

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 (645) hide show
  1. package/package.json +5 -12
  2. package/node_modules/@oozcitak/dom/LICENSE +0 -21
  3. package/node_modules/@oozcitak/dom/README.md +0 -32
  4. package/node_modules/@oozcitak/dom/lib/algorithm/AbortAlgorithm.d.ts +0 -21
  5. package/node_modules/@oozcitak/dom/lib/algorithm/AbortAlgorithm.js +0 -79
  6. package/node_modules/@oozcitak/dom/lib/algorithm/AbortAlgorithm.js.map +0 -1
  7. package/node_modules/@oozcitak/dom/lib/algorithm/AttrAlgorithm.d.ts +0 -8
  8. package/node_modules/@oozcitak/dom/lib/algorithm/AttrAlgorithm.js +0 -23
  9. package/node_modules/@oozcitak/dom/lib/algorithm/AttrAlgorithm.js.map +0 -1
  10. package/node_modules/@oozcitak/dom/lib/algorithm/BoundaryPointAlgorithm.d.ts +0 -8
  11. package/node_modules/@oozcitak/dom/lib/algorithm/BoundaryPointAlgorithm.js +0 -76
  12. package/node_modules/@oozcitak/dom/lib/algorithm/BoundaryPointAlgorithm.js.map +0 -1
  13. package/node_modules/@oozcitak/dom/lib/algorithm/CharacterDataAlgorithm.d.ts +0 -19
  14. package/node_modules/@oozcitak/dom/lib/algorithm/CharacterDataAlgorithm.js +0 -140
  15. package/node_modules/@oozcitak/dom/lib/algorithm/CharacterDataAlgorithm.js.map +0 -1
  16. package/node_modules/@oozcitak/dom/lib/algorithm/CreateAlgorithm.d.ts +0 -192
  17. package/node_modules/@oozcitak/dom/lib/algorithm/CreateAlgorithm.js +0 -303
  18. package/node_modules/@oozcitak/dom/lib/algorithm/CreateAlgorithm.js.map +0 -1
  19. package/node_modules/@oozcitak/dom/lib/algorithm/CustomElementAlgorithm.d.ts +0 -61
  20. package/node_modules/@oozcitak/dom/lib/algorithm/CustomElementAlgorithm.js +0 -108
  21. package/node_modules/@oozcitak/dom/lib/algorithm/CustomElementAlgorithm.js.map +0 -1
  22. package/node_modules/@oozcitak/dom/lib/algorithm/DOMAlgorithm.d.ts +0 -72
  23. package/node_modules/@oozcitak/dom/lib/algorithm/DOMAlgorithm.js +0 -288
  24. package/node_modules/@oozcitak/dom/lib/algorithm/DOMAlgorithm.js.map +0 -1
  25. package/node_modules/@oozcitak/dom/lib/algorithm/DOMTokenListAlgorithm.d.ts +0 -21
  26. package/node_modules/@oozcitak/dom/lib/algorithm/DOMTokenListAlgorithm.js +0 -61
  27. package/node_modules/@oozcitak/dom/lib/algorithm/DOMTokenListAlgorithm.js.map +0 -1
  28. package/node_modules/@oozcitak/dom/lib/algorithm/DocumentAlgorithm.d.ts +0 -29
  29. package/node_modules/@oozcitak/dom/lib/algorithm/DocumentAlgorithm.js +0 -161
  30. package/node_modules/@oozcitak/dom/lib/algorithm/DocumentAlgorithm.js.map +0 -1
  31. package/node_modules/@oozcitak/dom/lib/algorithm/ElementAlgorithm.d.ts +0 -121
  32. package/node_modules/@oozcitak/dom/lib/algorithm/ElementAlgorithm.js +0 -608
  33. package/node_modules/@oozcitak/dom/lib/algorithm/ElementAlgorithm.js.map +0 -1
  34. package/node_modules/@oozcitak/dom/lib/algorithm/EventAlgorithm.d.ts +0 -146
  35. package/node_modules/@oozcitak/dom/lib/algorithm/EventAlgorithm.js +0 -995
  36. package/node_modules/@oozcitak/dom/lib/algorithm/EventAlgorithm.js.map +0 -1
  37. package/node_modules/@oozcitak/dom/lib/algorithm/EventTargetAlgorithm.d.ts +0 -33
  38. package/node_modules/@oozcitak/dom/lib/algorithm/EventTargetAlgorithm.js +0 -142
  39. package/node_modules/@oozcitak/dom/lib/algorithm/EventTargetAlgorithm.js.map +0 -1
  40. package/node_modules/@oozcitak/dom/lib/algorithm/MutationAlgorithm.d.ts +0 -66
  41. package/node_modules/@oozcitak/dom/lib/algorithm/MutationAlgorithm.js +0 -1173
  42. package/node_modules/@oozcitak/dom/lib/algorithm/MutationAlgorithm.js.map +0 -1
  43. package/node_modules/@oozcitak/dom/lib/algorithm/MutationObserverAlgorithm.d.ts +0 -43
  44. package/node_modules/@oozcitak/dom/lib/algorithm/MutationObserverAlgorithm.js +0 -276
  45. package/node_modules/@oozcitak/dom/lib/algorithm/MutationObserverAlgorithm.js.map +0 -1
  46. package/node_modules/@oozcitak/dom/lib/algorithm/NamespaceAlgorithm.d.ts +0 -25
  47. package/node_modules/@oozcitak/dom/lib/algorithm/NamespaceAlgorithm.js +0 -85
  48. package/node_modules/@oozcitak/dom/lib/algorithm/NamespaceAlgorithm.js.map +0 -1
  49. package/node_modules/@oozcitak/dom/lib/algorithm/NodeAlgorithm.d.ts +0 -68
  50. package/node_modules/@oozcitak/dom/lib/algorithm/NodeAlgorithm.js +0 -543
  51. package/node_modules/@oozcitak/dom/lib/algorithm/NodeAlgorithm.js.map +0 -1
  52. package/node_modules/@oozcitak/dom/lib/algorithm/NodeIteratorAlgorithm.d.ts +0 -15
  53. package/node_modules/@oozcitak/dom/lib/algorithm/NodeIteratorAlgorithm.js +0 -105
  54. package/node_modules/@oozcitak/dom/lib/algorithm/NodeIteratorAlgorithm.js.map +0 -1
  55. package/node_modules/@oozcitak/dom/lib/algorithm/OrderedSetAlgorithm.d.ts +0 -27
  56. package/node_modules/@oozcitak/dom/lib/algorithm/OrderedSetAlgorithm.js +0 -125
  57. package/node_modules/@oozcitak/dom/lib/algorithm/OrderedSetAlgorithm.js.map +0 -1
  58. package/node_modules/@oozcitak/dom/lib/algorithm/ParentNodeAlgorithm.d.ts +0 -9
  59. package/node_modules/@oozcitak/dom/lib/algorithm/ParentNodeAlgorithm.js +0 -69
  60. package/node_modules/@oozcitak/dom/lib/algorithm/ParentNodeAlgorithm.js.map +0 -1
  61. package/node_modules/@oozcitak/dom/lib/algorithm/RangeAlgorithm.d.ts +0 -82
  62. package/node_modules/@oozcitak/dom/lib/algorithm/RangeAlgorithm.js +0 -829
  63. package/node_modules/@oozcitak/dom/lib/algorithm/RangeAlgorithm.js.map +0 -1
  64. package/node_modules/@oozcitak/dom/lib/algorithm/SelectorsAlgorithm.d.ts +0 -8
  65. package/node_modules/@oozcitak/dom/lib/algorithm/SelectorsAlgorithm.js +0 -21
  66. package/node_modules/@oozcitak/dom/lib/algorithm/SelectorsAlgorithm.js.map +0 -1
  67. package/node_modules/@oozcitak/dom/lib/algorithm/ShadowTreeAlgorithm.d.ts +0 -57
  68. package/node_modules/@oozcitak/dom/lib/algorithm/ShadowTreeAlgorithm.js +0 -316
  69. package/node_modules/@oozcitak/dom/lib/algorithm/ShadowTreeAlgorithm.js.map +0 -1
  70. package/node_modules/@oozcitak/dom/lib/algorithm/TextAlgorithm.d.ts +0 -30
  71. package/node_modules/@oozcitak/dom/lib/algorithm/TextAlgorithm.js +0 -226
  72. package/node_modules/@oozcitak/dom/lib/algorithm/TextAlgorithm.js.map +0 -1
  73. package/node_modules/@oozcitak/dom/lib/algorithm/TraversalAlgorithm.d.ts +0 -8
  74. package/node_modules/@oozcitak/dom/lib/algorithm/TraversalAlgorithm.js +0 -62
  75. package/node_modules/@oozcitak/dom/lib/algorithm/TraversalAlgorithm.js.map +0 -1
  76. package/node_modules/@oozcitak/dom/lib/algorithm/TreeAlgorithm.d.ts +0 -268
  77. package/node_modules/@oozcitak/dom/lib/algorithm/TreeAlgorithm.js +0 -853
  78. package/node_modules/@oozcitak/dom/lib/algorithm/TreeAlgorithm.js.map +0 -1
  79. package/node_modules/@oozcitak/dom/lib/algorithm/TreeWalkerAlgorithm.d.ts +0 -17
  80. package/node_modules/@oozcitak/dom/lib/algorithm/TreeWalkerAlgorithm.js +0 -147
  81. package/node_modules/@oozcitak/dom/lib/algorithm/TreeWalkerAlgorithm.js.map +0 -1
  82. package/node_modules/@oozcitak/dom/lib/algorithm/WebIDLAlgorithm.d.ts +0 -8
  83. package/node_modules/@oozcitak/dom/lib/algorithm/WebIDLAlgorithm.js +0 -14
  84. package/node_modules/@oozcitak/dom/lib/algorithm/WebIDLAlgorithm.js.map +0 -1
  85. package/node_modules/@oozcitak/dom/lib/algorithm/XMLAlgorithm.d.ts +0 -25
  86. package/node_modules/@oozcitak/dom/lib/algorithm/XMLAlgorithm.js +0 -164
  87. package/node_modules/@oozcitak/dom/lib/algorithm/XMLAlgorithm.js.map +0 -1
  88. package/node_modules/@oozcitak/dom/lib/algorithm/index.d.ts +0 -28
  89. package/node_modules/@oozcitak/dom/lib/algorithm/index.js +0 -34
  90. package/node_modules/@oozcitak/dom/lib/algorithm/index.js.map +0 -1
  91. package/node_modules/@oozcitak/dom/lib/dom/AbortControllerImpl.d.ts +0 -15
  92. package/node_modules/@oozcitak/dom/lib/dom/AbortControllerImpl.js +0 -32
  93. package/node_modules/@oozcitak/dom/lib/dom/AbortControllerImpl.js.map +0 -1
  94. package/node_modules/@oozcitak/dom/lib/dom/AbortSignalImpl.d.ts +0 -23
  95. package/node_modules/@oozcitak/dom/lib/dom/AbortSignalImpl.js +0 -59
  96. package/node_modules/@oozcitak/dom/lib/dom/AbortSignalImpl.js.map +0 -1
  97. package/node_modules/@oozcitak/dom/lib/dom/AbstractRangeImpl.d.ts +0 -23
  98. package/node_modules/@oozcitak/dom/lib/dom/AbstractRangeImpl.js +0 -70
  99. package/node_modules/@oozcitak/dom/lib/dom/AbstractRangeImpl.js.map +0 -1
  100. package/node_modules/@oozcitak/dom/lib/dom/AttrImpl.d.ts +0 -45
  101. package/node_modules/@oozcitak/dom/lib/dom/AttrImpl.js +0 -118
  102. package/node_modules/@oozcitak/dom/lib/dom/AttrImpl.js.map +0 -1
  103. package/node_modules/@oozcitak/dom/lib/dom/CDATASectionImpl.d.ts +0 -21
  104. package/node_modules/@oozcitak/dom/lib/dom/CDATASectionImpl.js +0 -51
  105. package/node_modules/@oozcitak/dom/lib/dom/CDATASectionImpl.js.map +0 -1
  106. package/node_modules/@oozcitak/dom/lib/dom/CharacterDataImpl.d.ts +0 -35
  107. package/node_modules/@oozcitak/dom/lib/dom/CharacterDataImpl.js +0 -132
  108. package/node_modules/@oozcitak/dom/lib/dom/CharacterDataImpl.js.map +0 -1
  109. package/node_modules/@oozcitak/dom/lib/dom/ChildNodeImpl.d.ts +0 -16
  110. package/node_modules/@oozcitak/dom/lib/dom/ChildNodeImpl.js +0 -165
  111. package/node_modules/@oozcitak/dom/lib/dom/ChildNodeImpl.js.map +0 -1
  112. package/node_modules/@oozcitak/dom/lib/dom/CommentImpl.d.ts +0 -21
  113. package/node_modules/@oozcitak/dom/lib/dom/CommentImpl.js +0 -52
  114. package/node_modules/@oozcitak/dom/lib/dom/CommentImpl.js.map +0 -1
  115. package/node_modules/@oozcitak/dom/lib/dom/CustomEventImpl.d.ts +0 -16
  116. package/node_modules/@oozcitak/dom/lib/dom/CustomEventImpl.js +0 -60
  117. package/node_modules/@oozcitak/dom/lib/dom/CustomEventImpl.js.map +0 -1
  118. package/node_modules/@oozcitak/dom/lib/dom/DOMException.d.ts +0 -171
  119. package/node_modules/@oozcitak/dom/lib/dom/DOMException.js +0 -347
  120. package/node_modules/@oozcitak/dom/lib/dom/DOMException.js.map +0 -1
  121. package/node_modules/@oozcitak/dom/lib/dom/DOMImpl.d.ts +0 -48
  122. package/node_modules/@oozcitak/dom/lib/dom/DOMImpl.js +0 -100
  123. package/node_modules/@oozcitak/dom/lib/dom/DOMImpl.js.map +0 -1
  124. package/node_modules/@oozcitak/dom/lib/dom/DOMImplementationImpl.d.ts +0 -29
  125. package/node_modules/@oozcitak/dom/lib/dom/DOMImplementationImpl.js +0 -149
  126. package/node_modules/@oozcitak/dom/lib/dom/DOMImplementationImpl.js.map +0 -1
  127. package/node_modules/@oozcitak/dom/lib/dom/DOMTokenListImpl.d.ts +0 -46
  128. package/node_modules/@oozcitak/dom/lib/dom/DOMTokenListImpl.js +0 -312
  129. package/node_modules/@oozcitak/dom/lib/dom/DOMTokenListImpl.js.map +0 -1
  130. package/node_modules/@oozcitak/dom/lib/dom/DocumentFragmentImpl.d.ts +0 -32
  131. package/node_modules/@oozcitak/dom/lib/dom/DocumentFragmentImpl.js +0 -103
  132. package/node_modules/@oozcitak/dom/lib/dom/DocumentFragmentImpl.js.map +0 -1
  133. package/node_modules/@oozcitak/dom/lib/dom/DocumentImpl.d.ts +0 -116
  134. package/node_modules/@oozcitak/dom/lib/dom/DocumentImpl.js +0 -545
  135. package/node_modules/@oozcitak/dom/lib/dom/DocumentImpl.js.map +0 -1
  136. package/node_modules/@oozcitak/dom/lib/dom/DocumentOrShadowRootImpl.d.ts +0 -11
  137. package/node_modules/@oozcitak/dom/lib/dom/DocumentOrShadowRootImpl.js +0 -17
  138. package/node_modules/@oozcitak/dom/lib/dom/DocumentOrShadowRootImpl.js.map +0 -1
  139. package/node_modules/@oozcitak/dom/lib/dom/DocumentTypeImpl.d.ts +0 -39
  140. package/node_modules/@oozcitak/dom/lib/dom/DocumentTypeImpl.js +0 -109
  141. package/node_modules/@oozcitak/dom/lib/dom/DocumentTypeImpl.js.map +0 -1
  142. package/node_modules/@oozcitak/dom/lib/dom/ElementImpl.d.ts +0 -132
  143. package/node_modules/@oozcitak/dom/lib/dom/ElementImpl.js +0 -714
  144. package/node_modules/@oozcitak/dom/lib/dom/ElementImpl.js.map +0 -1
  145. package/node_modules/@oozcitak/dom/lib/dom/EventImpl.d.ts +0 -74
  146. package/node_modules/@oozcitak/dom/lib/dom/EventImpl.js +0 -313
  147. package/node_modules/@oozcitak/dom/lib/dom/EventImpl.js.map +0 -1
  148. package/node_modules/@oozcitak/dom/lib/dom/EventTargetImpl.d.ts +0 -30
  149. package/node_modules/@oozcitak/dom/lib/dom/EventTargetImpl.js +0 -133
  150. package/node_modules/@oozcitak/dom/lib/dom/EventTargetImpl.js.map +0 -1
  151. package/node_modules/@oozcitak/dom/lib/dom/HTMLCollectionImpl.d.ts +0 -44
  152. package/node_modules/@oozcitak/dom/lib/dom/HTMLCollectionImpl.js +0 -157
  153. package/node_modules/@oozcitak/dom/lib/dom/HTMLCollectionImpl.js.map +0 -1
  154. package/node_modules/@oozcitak/dom/lib/dom/MutationObserverImpl.d.ts +0 -22
  155. package/node_modules/@oozcitak/dom/lib/dom/MutationObserverImpl.js +0 -184
  156. package/node_modules/@oozcitak/dom/lib/dom/MutationObserverImpl.js.map +0 -1
  157. package/node_modules/@oozcitak/dom/lib/dom/MutationRecordImpl.d.ts +0 -73
  158. package/node_modules/@oozcitak/dom/lib/dom/MutationRecordImpl.js +0 -116
  159. package/node_modules/@oozcitak/dom/lib/dom/MutationRecordImpl.js.map +0 -1
  160. package/node_modules/@oozcitak/dom/lib/dom/NamedNodeMapImpl.d.ts +0 -34
  161. package/node_modules/@oozcitak/dom/lib/dom/NamedNodeMapImpl.js +0 -112
  162. package/node_modules/@oozcitak/dom/lib/dom/NamedNodeMapImpl.js.map +0 -1
  163. package/node_modules/@oozcitak/dom/lib/dom/NodeFilterImpl.d.ts +0 -50
  164. package/node_modules/@oozcitak/dom/lib/dom/NodeFilterImpl.js +0 -64
  165. package/node_modules/@oozcitak/dom/lib/dom/NodeFilterImpl.js.map +0 -1
  166. package/node_modules/@oozcitak/dom/lib/dom/NodeImpl.d.ts +0 -252
  167. package/node_modules/@oozcitak/dom/lib/dom/NodeImpl.js +0 -891
  168. package/node_modules/@oozcitak/dom/lib/dom/NodeImpl.js.map +0 -1
  169. package/node_modules/@oozcitak/dom/lib/dom/NodeIteratorImpl.d.ts +0 -34
  170. package/node_modules/@oozcitak/dom/lib/dom/NodeIteratorImpl.js +0 -86
  171. package/node_modules/@oozcitak/dom/lib/dom/NodeIteratorImpl.js.map +0 -1
  172. package/node_modules/@oozcitak/dom/lib/dom/NodeListImpl.d.ts +0 -46
  173. package/node_modules/@oozcitak/dom/lib/dom/NodeListImpl.js +0 -198
  174. package/node_modules/@oozcitak/dom/lib/dom/NodeListImpl.js.map +0 -1
  175. package/node_modules/@oozcitak/dom/lib/dom/NodeListStaticImpl.d.ts +0 -49
  176. package/node_modules/@oozcitak/dom/lib/dom/NodeListStaticImpl.js +0 -188
  177. package/node_modules/@oozcitak/dom/lib/dom/NodeListStaticImpl.js.map +0 -1
  178. package/node_modules/@oozcitak/dom/lib/dom/NonDocumentTypeChildNodeImpl.d.ts +0 -12
  179. package/node_modules/@oozcitak/dom/lib/dom/NonDocumentTypeChildNodeImpl.js +0 -53
  180. package/node_modules/@oozcitak/dom/lib/dom/NonDocumentTypeChildNodeImpl.js.map +0 -1
  181. package/node_modules/@oozcitak/dom/lib/dom/NonElementParentNodeImpl.d.ts +0 -9
  182. package/node_modules/@oozcitak/dom/lib/dom/NonElementParentNodeImpl.js +0 -31
  183. package/node_modules/@oozcitak/dom/lib/dom/NonElementParentNodeImpl.js.map +0 -1
  184. package/node_modules/@oozcitak/dom/lib/dom/ParentNodeImpl.d.ts +0 -24
  185. package/node_modules/@oozcitak/dom/lib/dom/ParentNodeImpl.js +0 -158
  186. package/node_modules/@oozcitak/dom/lib/dom/ParentNodeImpl.js.map +0 -1
  187. package/node_modules/@oozcitak/dom/lib/dom/ProcessingInstructionImpl.d.ts +0 -25
  188. package/node_modules/@oozcitak/dom/lib/dom/ProcessingInstructionImpl.js +0 -59
  189. package/node_modules/@oozcitak/dom/lib/dom/ProcessingInstructionImpl.js.map +0 -1
  190. package/node_modules/@oozcitak/dom/lib/dom/RangeImpl.d.ts +0 -71
  191. package/node_modules/@oozcitak/dom/lib/dom/RangeImpl.js +0 -649
  192. package/node_modules/@oozcitak/dom/lib/dom/RangeImpl.js.map +0 -1
  193. package/node_modules/@oozcitak/dom/lib/dom/ShadowRootImpl.d.ts +0 -33
  194. package/node_modules/@oozcitak/dom/lib/dom/ShadowRootImpl.js +0 -82
  195. package/node_modules/@oozcitak/dom/lib/dom/ShadowRootImpl.js.map +0 -1
  196. package/node_modules/@oozcitak/dom/lib/dom/SlotableImpl.d.ts +0 -16
  197. package/node_modules/@oozcitak/dom/lib/dom/SlotableImpl.js +0 -35
  198. package/node_modules/@oozcitak/dom/lib/dom/SlotableImpl.js.map +0 -1
  199. package/node_modules/@oozcitak/dom/lib/dom/StaticRangeImpl.d.ts +0 -13
  200. package/node_modules/@oozcitak/dom/lib/dom/StaticRangeImpl.js +0 -48
  201. package/node_modules/@oozcitak/dom/lib/dom/StaticRangeImpl.js.map +0 -1
  202. package/node_modules/@oozcitak/dom/lib/dom/TextImpl.d.ts +0 -28
  203. package/node_modules/@oozcitak/dom/lib/dom/TextImpl.js +0 -109
  204. package/node_modules/@oozcitak/dom/lib/dom/TextImpl.js.map +0 -1
  205. package/node_modules/@oozcitak/dom/lib/dom/TraverserImpl.d.ts +0 -23
  206. package/node_modules/@oozcitak/dom/lib/dom/TraverserImpl.js +0 -41
  207. package/node_modules/@oozcitak/dom/lib/dom/TraverserImpl.js.map +0 -1
  208. package/node_modules/@oozcitak/dom/lib/dom/TreeWalkerImpl.d.ts +0 -36
  209. package/node_modules/@oozcitak/dom/lib/dom/TreeWalkerImpl.js +0 -249
  210. package/node_modules/@oozcitak/dom/lib/dom/TreeWalkerImpl.js.map +0 -1
  211. package/node_modules/@oozcitak/dom/lib/dom/WindowImpl.d.ts +0 -26
  212. package/node_modules/@oozcitak/dom/lib/dom/WindowImpl.js +0 -57
  213. package/node_modules/@oozcitak/dom/lib/dom/WindowImpl.js.map +0 -1
  214. package/node_modules/@oozcitak/dom/lib/dom/XMLDocumentImpl.d.ts +0 -11
  215. package/node_modules/@oozcitak/dom/lib/dom/XMLDocumentImpl.js +0 -31
  216. package/node_modules/@oozcitak/dom/lib/dom/XMLDocumentImpl.js.map +0 -1
  217. package/node_modules/@oozcitak/dom/lib/dom/index.d.ts +0 -36
  218. package/node_modules/@oozcitak/dom/lib/dom/index.js +0 -102
  219. package/node_modules/@oozcitak/dom/lib/dom/index.js.map +0 -1
  220. package/node_modules/@oozcitak/dom/lib/dom/interfaces.d.ts +0 -2218
  221. package/node_modules/@oozcitak/dom/lib/dom/interfaces.js +0 -91
  222. package/node_modules/@oozcitak/dom/lib/dom/interfaces.js.map +0 -1
  223. package/node_modules/@oozcitak/dom/lib/index.d.ts +0 -3
  224. package/node_modules/@oozcitak/dom/lib/index.js +0 -11
  225. package/node_modules/@oozcitak/dom/lib/index.js.map +0 -1
  226. package/node_modules/@oozcitak/dom/lib/parser/DOMParserImpl.d.ts +0 -11
  227. package/node_modules/@oozcitak/dom/lib/parser/DOMParserImpl.js +0 -37
  228. package/node_modules/@oozcitak/dom/lib/parser/DOMParserImpl.js.map +0 -1
  229. package/node_modules/@oozcitak/dom/lib/parser/XMLParserImpl.d.ts +0 -26
  230. package/node_modules/@oozcitak/dom/lib/parser/XMLParserImpl.js +0 -240
  231. package/node_modules/@oozcitak/dom/lib/parser/XMLParserImpl.js.map +0 -1
  232. package/node_modules/@oozcitak/dom/lib/parser/XMLStringLexer.d.ts +0 -159
  233. package/node_modules/@oozcitak/dom/lib/parser/XMLStringLexer.js +0 -512
  234. package/node_modules/@oozcitak/dom/lib/parser/XMLStringLexer.js.map +0 -1
  235. package/node_modules/@oozcitak/dom/lib/parser/index.d.ts +0 -1
  236. package/node_modules/@oozcitak/dom/lib/parser/index.js +0 -6
  237. package/node_modules/@oozcitak/dom/lib/parser/index.js.map +0 -1
  238. package/node_modules/@oozcitak/dom/lib/parser/interfaces.d.ts +0 -131
  239. package/node_modules/@oozcitak/dom/lib/parser/interfaces.js +0 -18
  240. package/node_modules/@oozcitak/dom/lib/parser/interfaces.js.map +0 -1
  241. package/node_modules/@oozcitak/dom/lib/serializer/LocalNameSet.d.ts +0 -27
  242. package/node_modules/@oozcitak/dom/lib/serializer/LocalNameSet.js +0 -56
  243. package/node_modules/@oozcitak/dom/lib/serializer/LocalNameSet.js.map +0 -1
  244. package/node_modules/@oozcitak/dom/lib/serializer/NamespacePrefixMap.d.ts +0 -52
  245. package/node_modules/@oozcitak/dom/lib/serializer/NamespacePrefixMap.js +0 -151
  246. package/node_modules/@oozcitak/dom/lib/serializer/NamespacePrefixMap.js.map +0 -1
  247. package/node_modules/@oozcitak/dom/lib/serializer/XMLSerializerImpl.d.ts +0 -166
  248. package/node_modules/@oozcitak/dom/lib/serializer/XMLSerializerImpl.js +0 -1479
  249. package/node_modules/@oozcitak/dom/lib/serializer/XMLSerializerImpl.js.map +0 -1
  250. package/node_modules/@oozcitak/dom/lib/serializer/index.d.ts +0 -1
  251. package/node_modules/@oozcitak/dom/lib/serializer/index.js +0 -6
  252. package/node_modules/@oozcitak/dom/lib/serializer/index.js.map +0 -1
  253. package/node_modules/@oozcitak/dom/lib/serializer/interfaces.d.ts +0 -15
  254. package/node_modules/@oozcitak/dom/lib/serializer/interfaces.js +0 -3
  255. package/node_modules/@oozcitak/dom/lib/serializer/interfaces.js.map +0 -1
  256. package/node_modules/@oozcitak/dom/lib/util/Cast.d.ts +0 -12
  257. package/node_modules/@oozcitak/dom/lib/util/Cast.js +0 -26
  258. package/node_modules/@oozcitak/dom/lib/util/Cast.js.map +0 -1
  259. package/node_modules/@oozcitak/dom/lib/util/EmptySet.d.ts +0 -13
  260. package/node_modules/@oozcitak/dom/lib/util/EmptySet.js +0 -61
  261. package/node_modules/@oozcitak/dom/lib/util/EmptySet.js.map +0 -1
  262. package/node_modules/@oozcitak/dom/lib/util/Guard.d.ts +0 -135
  263. package/node_modules/@oozcitak/dom/lib/util/Guard.js +0 -192
  264. package/node_modules/@oozcitak/dom/lib/util/Guard.js.map +0 -1
  265. package/node_modules/@oozcitak/dom/lib/util/index.d.ts +0 -3
  266. package/node_modules/@oozcitak/dom/lib/util/index.js +0 -9
  267. package/node_modules/@oozcitak/dom/lib/util/index.js.map +0 -1
  268. package/node_modules/@oozcitak/dom/package.json +0 -72
  269. package/node_modules/@oozcitak/infra/LICENSE +0 -21
  270. package/node_modules/@oozcitak/infra/README.md +0 -13
  271. package/node_modules/@oozcitak/infra/lib/Base64.d.ts +0 -12
  272. package/node_modules/@oozcitak/infra/lib/Base64.js +0 -82
  273. package/node_modules/@oozcitak/infra/lib/Base64.js.map +0 -1
  274. package/node_modules/@oozcitak/infra/lib/Byte.d.ts +0 -6
  275. package/node_modules/@oozcitak/infra/lib/Byte.js +0 -15
  276. package/node_modules/@oozcitak/infra/lib/Byte.js.map +0 -1
  277. package/node_modules/@oozcitak/infra/lib/ByteSequence.d.ts +0 -45
  278. package/node_modules/@oozcitak/infra/lib/ByteSequence.js +0 -171
  279. package/node_modules/@oozcitak/infra/lib/ByteSequence.js.map +0 -1
  280. package/node_modules/@oozcitak/infra/lib/CodePoints.d.ts +0 -82
  281. package/node_modules/@oozcitak/infra/lib/CodePoints.js +0 -85
  282. package/node_modules/@oozcitak/infra/lib/CodePoints.js.map +0 -1
  283. package/node_modules/@oozcitak/infra/lib/JSON.d.ts +0 -24
  284. package/node_modules/@oozcitak/infra/lib/JSON.js +0 -123
  285. package/node_modules/@oozcitak/infra/lib/JSON.js.map +0 -1
  286. package/node_modules/@oozcitak/infra/lib/List.d.ts +0 -101
  287. package/node_modules/@oozcitak/infra/lib/List.js +0 -325
  288. package/node_modules/@oozcitak/infra/lib/List.js.map +0 -1
  289. package/node_modules/@oozcitak/infra/lib/Map.d.ts +0 -87
  290. package/node_modules/@oozcitak/infra/lib/Map.js +0 -308
  291. package/node_modules/@oozcitak/infra/lib/Map.js.map +0 -1
  292. package/node_modules/@oozcitak/infra/lib/Namespace.d.ts +0 -6
  293. package/node_modules/@oozcitak/infra/lib/Namespace.js +0 -9
  294. package/node_modules/@oozcitak/infra/lib/Namespace.js.map +0 -1
  295. package/node_modules/@oozcitak/infra/lib/Queue.d.ts +0 -13
  296. package/node_modules/@oozcitak/infra/lib/Queue.js +0 -22
  297. package/node_modules/@oozcitak/infra/lib/Queue.js.map +0 -1
  298. package/node_modules/@oozcitak/infra/lib/Set.d.ts +0 -136
  299. package/node_modules/@oozcitak/infra/lib/Set.js +0 -467
  300. package/node_modules/@oozcitak/infra/lib/Set.js.map +0 -1
  301. package/node_modules/@oozcitak/infra/lib/Stack.d.ts +0 -13
  302. package/node_modules/@oozcitak/infra/lib/Stack.js +0 -22
  303. package/node_modules/@oozcitak/infra/lib/Stack.js.map +0 -1
  304. package/node_modules/@oozcitak/infra/lib/String.d.ts +0 -129
  305. package/node_modules/@oozcitak/infra/lib/String.js +0 -472
  306. package/node_modules/@oozcitak/infra/lib/String.js.map +0 -1
  307. package/node_modules/@oozcitak/infra/lib/index.d.ts +0 -13
  308. package/node_modules/@oozcitak/infra/lib/index.js +0 -34
  309. package/node_modules/@oozcitak/infra/lib/index.js.map +0 -1
  310. package/node_modules/@oozcitak/infra/package.json +0 -54
  311. package/node_modules/@oozcitak/url/LICENSE +0 -21
  312. package/node_modules/@oozcitak/url/README.md +0 -27
  313. package/node_modules/@oozcitak/url/lib/URLAlgorithm.d.ts +0 -267
  314. package/node_modules/@oozcitak/url/lib/URLAlgorithm.js +0 -2758
  315. package/node_modules/@oozcitak/url/lib/URLAlgorithm.js.map +0 -1
  316. package/node_modules/@oozcitak/url/lib/URLImpl.d.ts +0 -53
  317. package/node_modules/@oozcitak/url/lib/URLImpl.js +0 -377
  318. package/node_modules/@oozcitak/url/lib/URLImpl.js.map +0 -1
  319. package/node_modules/@oozcitak/url/lib/URLSearchParamsImpl.d.ts +0 -38
  320. package/node_modules/@oozcitak/url/lib/URLSearchParamsImpl.js +0 -303
  321. package/node_modules/@oozcitak/url/lib/URLSearchParamsImpl.js.map +0 -1
  322. package/node_modules/@oozcitak/url/lib/index.d.ts +0 -2
  323. package/node_modules/@oozcitak/url/lib/index.js +0 -7
  324. package/node_modules/@oozcitak/url/lib/index.js.map +0 -1
  325. package/node_modules/@oozcitak/url/lib/interfaces.d.ts +0 -195
  326. package/node_modules/@oozcitak/url/lib/interfaces.js +0 -31
  327. package/node_modules/@oozcitak/url/lib/interfaces.js.map +0 -1
  328. package/node_modules/@oozcitak/url/package.json +0 -55
  329. package/node_modules/@oozcitak/util/LICENSE +0 -21
  330. package/node_modules/@oozcitak/util/README.md +0 -10
  331. package/node_modules/@oozcitak/util/lib/CompareCache.d.ts +0 -32
  332. package/node_modules/@oozcitak/util/lib/CompareCache.js +0 -59
  333. package/node_modules/@oozcitak/util/lib/CompareCache.js.map +0 -1
  334. package/node_modules/@oozcitak/util/lib/FixedSizeSet.d.ts +0 -64
  335. package/node_modules/@oozcitak/util/lib/FixedSizeSet.js +0 -174
  336. package/node_modules/@oozcitak/util/lib/FixedSizeSet.js.map +0 -1
  337. package/node_modules/@oozcitak/util/lib/Lazy.d.ts +0 -18
  338. package/node_modules/@oozcitak/util/lib/Lazy.js +0 -34
  339. package/node_modules/@oozcitak/util/lib/Lazy.js.map +0 -1
  340. package/node_modules/@oozcitak/util/lib/ObjectCache.d.ts +0 -71
  341. package/node_modules/@oozcitak/util/lib/ObjectCache.js +0 -181
  342. package/node_modules/@oozcitak/util/lib/ObjectCache.js.map +0 -1
  343. package/node_modules/@oozcitak/util/lib/StringWalker.d.ts +0 -49
  344. package/node_modules/@oozcitak/util/lib/StringWalker.js +0 -105
  345. package/node_modules/@oozcitak/util/lib/StringWalker.js.map +0 -1
  346. package/node_modules/@oozcitak/util/lib/index.d.ts +0 -178
  347. package/node_modules/@oozcitak/util/lib/index.js +0 -439
  348. package/node_modules/@oozcitak/util/lib/index.js.map +0 -1
  349. package/node_modules/@oozcitak/util/package.json +0 -50
  350. package/node_modules/@xmldom/is-dom-node/LICENSE.md +0 -21
  351. package/node_modules/@xmldom/is-dom-node/README.md +0 -91
  352. package/node_modules/@xmldom/is-dom-node/dist/index.d.ts +0 -33
  353. package/node_modules/@xmldom/is-dom-node/dist/index.js +0 -91
  354. package/node_modules/@xmldom/is-dom-node/dist/index.js.map +0 -1
  355. package/node_modules/@xmldom/is-dom-node/package.json +0 -69
  356. package/node_modules/@xmldom/xmldom/CHANGELOG.md +0 -468
  357. package/node_modules/@xmldom/xmldom/LICENSE +0 -8
  358. package/node_modules/@xmldom/xmldom/SECURITY.md +0 -50
  359. package/node_modules/@xmldom/xmldom/index.d.ts +0 -43
  360. package/node_modules/@xmldom/xmldom/lib/.eslintrc.yml +0 -2
  361. package/node_modules/@xmldom/xmldom/lib/conventions.js +0 -203
  362. package/node_modules/@xmldom/xmldom/lib/dom-parser.js +0 -322
  363. package/node_modules/@xmldom/xmldom/lib/dom.js +0 -1879
  364. package/node_modules/@xmldom/xmldom/lib/entities.js +0 -2166
  365. package/node_modules/@xmldom/xmldom/lib/index.js +0 -4
  366. package/node_modules/@xmldom/xmldom/lib/sax.js +0 -662
  367. package/node_modules/@xmldom/xmldom/package.json +0 -71
  368. package/node_modules/@xmldom/xmldom/readme.md +0 -356
  369. package/node_modules/esprima/ChangeLog +0 -235
  370. package/node_modules/esprima/LICENSE.BSD +0 -21
  371. package/node_modules/esprima/README.md +0 -46
  372. package/node_modules/esprima/bin/esparse.js +0 -139
  373. package/node_modules/esprima/bin/esvalidate.js +0 -236
  374. package/node_modules/esprima/dist/esprima.js +0 -6709
  375. package/node_modules/esprima/package.json +0 -112
  376. package/node_modules/node-forge/LICENSE +0 -331
  377. package/node_modules/node-forge/README.md +0 -2071
  378. package/node_modules/node-forge/dist/forge.all.min.js +0 -2
  379. package/node_modules/node-forge/dist/forge.all.min.js.map +0 -1
  380. package/node_modules/node-forge/dist/forge.min.js +0 -2
  381. package/node_modules/node-forge/dist/forge.min.js.map +0 -1
  382. package/node_modules/node-forge/dist/prime.worker.min.js +0 -2
  383. package/node_modules/node-forge/dist/prime.worker.min.js.map +0 -1
  384. package/node_modules/node-forge/flash/swf/SocketPool.swf +0 -0
  385. package/node_modules/node-forge/lib/aes.js +0 -1091
  386. package/node_modules/node-forge/lib/aesCipherSuites.js +0 -282
  387. package/node_modules/node-forge/lib/asn1-validator.js +0 -91
  388. package/node_modules/node-forge/lib/asn1.js +0 -1503
  389. package/node_modules/node-forge/lib/baseN.js +0 -186
  390. package/node_modules/node-forge/lib/cipher.js +0 -230
  391. package/node_modules/node-forge/lib/cipherModes.js +0 -999
  392. package/node_modules/node-forge/lib/des.js +0 -496
  393. package/node_modules/node-forge/lib/ed25519.js +0 -1072
  394. package/node_modules/node-forge/lib/forge.js +0 -13
  395. package/node_modules/node-forge/lib/form.js +0 -149
  396. package/node_modules/node-forge/lib/hmac.js +0 -146
  397. package/node_modules/node-forge/lib/http.js +0 -1346
  398. package/node_modules/node-forge/lib/index.all.js +0 -16
  399. package/node_modules/node-forge/lib/index.js +0 -33
  400. package/node_modules/node-forge/lib/jsbn.js +0 -1264
  401. package/node_modules/node-forge/lib/kem.js +0 -168
  402. package/node_modules/node-forge/lib/log.js +0 -319
  403. package/node_modules/node-forge/lib/md.all.js +0 -13
  404. package/node_modules/node-forge/lib/md.js +0 -11
  405. package/node_modules/node-forge/lib/md5.js +0 -289
  406. package/node_modules/node-forge/lib/mgf.js +0 -12
  407. package/node_modules/node-forge/lib/mgf1.js +0 -57
  408. package/node_modules/node-forge/lib/oids.js +0 -179
  409. package/node_modules/node-forge/lib/pbe.js +0 -1023
  410. package/node_modules/node-forge/lib/pbkdf2.js +0 -211
  411. package/node_modules/node-forge/lib/pem.js +0 -237
  412. package/node_modules/node-forge/lib/pkcs1.js +0 -276
  413. package/node_modules/node-forge/lib/pkcs12.js +0 -1078
  414. package/node_modules/node-forge/lib/pkcs7.js +0 -1260
  415. package/node_modules/node-forge/lib/pkcs7asn1.js +0 -410
  416. package/node_modules/node-forge/lib/pki.js +0 -102
  417. package/node_modules/node-forge/lib/prime.js +0 -297
  418. package/node_modules/node-forge/lib/prime.worker.js +0 -168
  419. package/node_modules/node-forge/lib/prng.js +0 -419
  420. package/node_modules/node-forge/lib/pss.js +0 -241
  421. package/node_modules/node-forge/lib/random.js +0 -191
  422. package/node_modules/node-forge/lib/rc2.js +0 -410
  423. package/node_modules/node-forge/lib/rsa.js +0 -1949
  424. package/node_modules/node-forge/lib/sha1.js +0 -319
  425. package/node_modules/node-forge/lib/sha256.js +0 -327
  426. package/node_modules/node-forge/lib/sha512.js +0 -561
  427. package/node_modules/node-forge/lib/socket.js +0 -287
  428. package/node_modules/node-forge/lib/ssh.js +0 -236
  429. package/node_modules/node-forge/lib/tls.js +0 -4282
  430. package/node_modules/node-forge/lib/tlssocket.js +0 -249
  431. package/node_modules/node-forge/lib/util.js +0 -2652
  432. package/node_modules/node-forge/lib/x509.js +0 -3242
  433. package/node_modules/node-forge/lib/xhr.js +0 -738
  434. package/node_modules/node-forge/package.json +0 -123
  435. package/node_modules/sprintf-js/.npmignore +0 -1
  436. package/node_modules/sprintf-js/LICENSE +0 -24
  437. package/node_modules/sprintf-js/README.md +0 -88
  438. package/node_modules/sprintf-js/bower.json +0 -14
  439. package/node_modules/sprintf-js/demo/angular.html +0 -20
  440. package/node_modules/sprintf-js/dist/angular-sprintf.min.js +0 -4
  441. package/node_modules/sprintf-js/dist/angular-sprintf.min.js.map +0 -1
  442. package/node_modules/sprintf-js/dist/angular-sprintf.min.map +0 -1
  443. package/node_modules/sprintf-js/dist/sprintf.min.js +0 -4
  444. package/node_modules/sprintf-js/dist/sprintf.min.js.map +0 -1
  445. package/node_modules/sprintf-js/dist/sprintf.min.map +0 -1
  446. package/node_modules/sprintf-js/gruntfile.js +0 -36
  447. package/node_modules/sprintf-js/package.json +0 -22
  448. package/node_modules/sprintf-js/src/angular-sprintf.js +0 -18
  449. package/node_modules/sprintf-js/src/sprintf.js +0 -208
  450. package/node_modules/sprintf-js/test/test.js +0 -82
  451. package/node_modules/xml-crypto/LICENSE +0 -22
  452. package/node_modules/xml-crypto/README.md +0 -557
  453. package/node_modules/xml-crypto/lib/c14n-canonicalization.d.ts +0 -39
  454. package/node_modules/xml-crypto/lib/c14n-canonicalization.js +0 -230
  455. package/node_modules/xml-crypto/lib/c14n-canonicalization.js.map +0 -1
  456. package/node_modules/xml-crypto/lib/enveloped-signature.d.ts +0 -7
  457. package/node_modules/xml-crypto/lib/enveloped-signature.js +0 -43
  458. package/node_modules/xml-crypto/lib/enveloped-signature.js.map +0 -1
  459. package/node_modules/xml-crypto/lib/exclusive-canonicalization.d.ts +0 -38
  460. package/node_modules/xml-crypto/lib/exclusive-canonicalization.js +0 -246
  461. package/node_modules/xml-crypto/lib/exclusive-canonicalization.js.map +0 -1
  462. package/node_modules/xml-crypto/lib/hash-algorithms.d.ts +0 -13
  463. package/node_modules/xml-crypto/lib/hash-algorithms.js +0 -47
  464. package/node_modules/xml-crypto/lib/hash-algorithms.js.map +0 -1
  465. package/node_modules/xml-crypto/lib/index.d.ts +0 -5
  466. package/node_modules/xml-crypto/lib/index.js +0 -28
  467. package/node_modules/xml-crypto/lib/index.js.map +0 -1
  468. package/node_modules/xml-crypto/lib/signature-algorithms.d.ts +0 -47
  469. package/node_modules/xml-crypto/lib/signature-algorithms.js +0 -86
  470. package/node_modules/xml-crypto/lib/signature-algorithms.js.map +0 -1
  471. package/node_modules/xml-crypto/lib/signed-xml.d.ts +0 -225
  472. package/node_modules/xml-crypto/lib/signed-xml.js +0 -960
  473. package/node_modules/xml-crypto/lib/signed-xml.js.map +0 -1
  474. package/node_modules/xml-crypto/lib/types.d.ts +0 -125
  475. package/node_modules/xml-crypto/lib/types.js +0 -57
  476. package/node_modules/xml-crypto/lib/types.js.map +0 -1
  477. package/node_modules/xml-crypto/lib/utils.d.ts +0 -65
  478. package/node_modules/xml-crypto/lib/utils.js +0 -256
  479. package/node_modules/xml-crypto/lib/utils.js.map +0 -1
  480. package/node_modules/xml-crypto/node_modules/xpath/LICENSE +0 -22
  481. package/node_modules/xml-crypto/node_modules/xpath/README.md +0 -133
  482. package/node_modules/xml-crypto/node_modules/xpath/docs/XPathEvaluator.md +0 -62
  483. package/node_modules/xml-crypto/node_modules/xpath/docs/XPathResult.md +0 -47
  484. package/node_modules/xml-crypto/node_modules/xpath/docs/function resolvers.md +0 -88
  485. package/node_modules/xml-crypto/node_modules/xpath/docs/namespace resolvers.md +0 -69
  486. package/node_modules/xml-crypto/node_modules/xpath/docs/parsed expressions.md +0 -21
  487. package/node_modules/xml-crypto/node_modules/xpath/docs/variable resolvers.md +0 -89
  488. package/node_modules/xml-crypto/node_modules/xpath/docs/xpath methods.md +0 -39
  489. package/node_modules/xml-crypto/node_modules/xpath/package.json +0 -39
  490. package/node_modules/xml-crypto/node_modules/xpath/test.js +0 -1186
  491. package/node_modules/xml-crypto/node_modules/xpath/xpath.d.ts +0 -51
  492. package/node_modules/xml-crypto/node_modules/xpath/xpath.js +0 -4938
  493. package/node_modules/xml-crypto/package.json +0 -73
  494. package/node_modules/xmlbuilder2/CHANGELOG.md +0 -309
  495. package/node_modules/xmlbuilder2/LICENSE +0 -21
  496. package/node_modules/xmlbuilder2/README.md +0 -183
  497. package/node_modules/xmlbuilder2/lib/builder/BuilderFunctions.d.ts +0 -236
  498. package/node_modules/xmlbuilder2/lib/builder/BuilderFunctions.js +0 -108
  499. package/node_modules/xmlbuilder2/lib/builder/BuilderFunctions.js.map +0 -1
  500. package/node_modules/xmlbuilder2/lib/builder/BuilderFunctionsCB.d.ts +0 -17
  501. package/node_modules/xmlbuilder2/lib/builder/BuilderFunctionsCB.js +0 -26
  502. package/node_modules/xmlbuilder2/lib/builder/BuilderFunctionsCB.js.map +0 -1
  503. package/node_modules/xmlbuilder2/lib/builder/XMLBuilderCBImpl.d.ts +0 -124
  504. package/node_modules/xmlbuilder2/lib/builder/XMLBuilderCBImpl.js +0 -782
  505. package/node_modules/xmlbuilder2/lib/builder/XMLBuilderCBImpl.js.map +0 -1
  506. package/node_modules/xmlbuilder2/lib/builder/XMLBuilderImpl.d.ts +0 -143
  507. package/node_modules/xmlbuilder2/lib/builder/XMLBuilderImpl.js +0 -841
  508. package/node_modules/xmlbuilder2/lib/builder/XMLBuilderImpl.js.map +0 -1
  509. package/node_modules/xmlbuilder2/lib/builder/dom.d.ts +0 -8
  510. package/node_modules/xmlbuilder2/lib/builder/dom.js +0 -67
  511. package/node_modules/xmlbuilder2/lib/builder/dom.js.map +0 -1
  512. package/node_modules/xmlbuilder2/lib/builder/index.d.ts +0 -4
  513. package/node_modules/xmlbuilder2/lib/builder/index.js +0 -15
  514. package/node_modules/xmlbuilder2/lib/builder/index.js.map +0 -1
  515. package/node_modules/xmlbuilder2/lib/constants.d.ts +0 -1
  516. package/node_modules/xmlbuilder2/lib/constants.js +0 -4
  517. package/node_modules/xmlbuilder2/lib/constants.js.map +0 -1
  518. package/node_modules/xmlbuilder2/lib/index.d.ts +0 -1
  519. package/node_modules/xmlbuilder2/lib/index.js +0 -10
  520. package/node_modules/xmlbuilder2/lib/index.js.map +0 -1
  521. package/node_modules/xmlbuilder2/lib/interfaces.d.ts +0 -1355
  522. package/node_modules/xmlbuilder2/lib/interfaces.js +0 -76
  523. package/node_modules/xmlbuilder2/lib/interfaces.js.map +0 -1
  524. package/node_modules/xmlbuilder2/lib/readers/BaseReader.d.ts +0 -109
  525. package/node_modules/xmlbuilder2/lib/readers/BaseReader.js +0 -167
  526. package/node_modules/xmlbuilder2/lib/readers/BaseReader.js.map +0 -1
  527. package/node_modules/xmlbuilder2/lib/readers/JSONReader.d.ts +0 -14
  528. package/node_modules/xmlbuilder2/lib/readers/JSONReader.js +0 -38
  529. package/node_modules/xmlbuilder2/lib/readers/JSONReader.js.map +0 -1
  530. package/node_modules/xmlbuilder2/lib/readers/ObjectReader.d.ts +0 -15
  531. package/node_modules/xmlbuilder2/lib/readers/ObjectReader.js +0 -168
  532. package/node_modules/xmlbuilder2/lib/readers/ObjectReader.js.map +0 -1
  533. package/node_modules/xmlbuilder2/lib/readers/XMLReader.d.ts +0 -14
  534. package/node_modules/xmlbuilder2/lib/readers/XMLReader.js +0 -206
  535. package/node_modules/xmlbuilder2/lib/readers/XMLReader.js.map +0 -1
  536. package/node_modules/xmlbuilder2/lib/readers/YAMLReader.d.ts +0 -14
  537. package/node_modules/xmlbuilder2/lib/readers/YAMLReader.js +0 -44
  538. package/node_modules/xmlbuilder2/lib/readers/YAMLReader.js.map +0 -1
  539. package/node_modules/xmlbuilder2/lib/readers/index.d.ts +0 -4
  540. package/node_modules/xmlbuilder2/lib/readers/index.js +0 -11
  541. package/node_modules/xmlbuilder2/lib/readers/index.js.map +0 -1
  542. package/node_modules/xmlbuilder2/lib/writers/BaseCBWriter.d.ts +0 -110
  543. package/node_modules/xmlbuilder2/lib/writers/BaseCBWriter.js +0 -23
  544. package/node_modules/xmlbuilder2/lib/writers/BaseCBWriter.js.map +0 -1
  545. package/node_modules/xmlbuilder2/lib/writers/BaseWriter.d.ts +0 -276
  546. package/node_modules/xmlbuilder2/lib/writers/BaseWriter.js +0 -1603
  547. package/node_modules/xmlbuilder2/lib/writers/BaseWriter.js.map +0 -1
  548. package/node_modules/xmlbuilder2/lib/writers/JSONCBWriter.d.ts +0 -68
  549. package/node_modules/xmlbuilder2/lib/writers/JSONCBWriter.js +0 -172
  550. package/node_modules/xmlbuilder2/lib/writers/JSONCBWriter.js.map +0 -1
  551. package/node_modules/xmlbuilder2/lib/writers/JSONWriter.d.ts +0 -67
  552. package/node_modules/xmlbuilder2/lib/writers/JSONWriter.js +0 -222
  553. package/node_modules/xmlbuilder2/lib/writers/JSONWriter.js.map +0 -1
  554. package/node_modules/xmlbuilder2/lib/writers/MapWriter.d.ts +0 -27
  555. package/node_modules/xmlbuilder2/lib/writers/MapWriter.js +0 -84
  556. package/node_modules/xmlbuilder2/lib/writers/MapWriter.js.map +0 -1
  557. package/node_modules/xmlbuilder2/lib/writers/ObjectWriter.d.ts +0 -56
  558. package/node_modules/xmlbuilder2/lib/writers/ObjectWriter.js +0 -483
  559. package/node_modules/xmlbuilder2/lib/writers/ObjectWriter.js.map +0 -1
  560. package/node_modules/xmlbuilder2/lib/writers/XMLCBWriter.d.ts +0 -51
  561. package/node_modules/xmlbuilder2/lib/writers/XMLCBWriter.js +0 -165
  562. package/node_modules/xmlbuilder2/lib/writers/XMLCBWriter.js.map +0 -1
  563. package/node_modules/xmlbuilder2/lib/writers/XMLWriter.d.ts +0 -60
  564. package/node_modules/xmlbuilder2/lib/writers/XMLWriter.js +0 -236
  565. package/node_modules/xmlbuilder2/lib/writers/XMLWriter.js.map +0 -1
  566. package/node_modules/xmlbuilder2/lib/writers/YAMLCBWriter.d.ts +0 -61
  567. package/node_modules/xmlbuilder2/lib/writers/YAMLCBWriter.js +0 -161
  568. package/node_modules/xmlbuilder2/lib/writers/YAMLCBWriter.js.map +0 -1
  569. package/node_modules/xmlbuilder2/lib/writers/YAMLWriter.d.ts +0 -55
  570. package/node_modules/xmlbuilder2/lib/writers/YAMLWriter.js +0 -186
  571. package/node_modules/xmlbuilder2/lib/writers/YAMLWriter.js.map +0 -1
  572. package/node_modules/xmlbuilder2/lib/writers/index.d.ts +0 -5
  573. package/node_modules/xmlbuilder2/lib/writers/index.js +0 -13
  574. package/node_modules/xmlbuilder2/lib/writers/index.js.map +0 -1
  575. package/node_modules/xmlbuilder2/lib/xmlbuilder2.min.js +0 -8
  576. package/node_modules/xmlbuilder2/node_modules/argparse/CHANGELOG.md +0 -185
  577. package/node_modules/xmlbuilder2/node_modules/argparse/LICENSE +0 -21
  578. package/node_modules/xmlbuilder2/node_modules/argparse/README.md +0 -257
  579. package/node_modules/xmlbuilder2/node_modules/argparse/index.js +0 -3
  580. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/append/constant.js +0 -47
  581. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/append.js +0 -53
  582. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/count.js +0 -40
  583. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/help.js +0 -47
  584. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/store/constant.js +0 -43
  585. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/store/false.js +0 -27
  586. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/store/true.js +0 -26
  587. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/store.js +0 -50
  588. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/subparsers.js +0 -149
  589. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action/version.js +0 -47
  590. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action.js +0 -146
  591. package/node_modules/xmlbuilder2/node_modules/argparse/lib/action_container.js +0 -482
  592. package/node_modules/xmlbuilder2/node_modules/argparse/lib/argparse.js +0 -14
  593. package/node_modules/xmlbuilder2/node_modules/argparse/lib/argument/error.js +0 -50
  594. package/node_modules/xmlbuilder2/node_modules/argparse/lib/argument/exclusive.js +0 -54
  595. package/node_modules/xmlbuilder2/node_modules/argparse/lib/argument/group.js +0 -75
  596. package/node_modules/xmlbuilder2/node_modules/argparse/lib/argument_parser.js +0 -1161
  597. package/node_modules/xmlbuilder2/node_modules/argparse/lib/const.js +0 -21
  598. package/node_modules/xmlbuilder2/node_modules/argparse/lib/help/added_formatters.js +0 -87
  599. package/node_modules/xmlbuilder2/node_modules/argparse/lib/help/formatter.js +0 -795
  600. package/node_modules/xmlbuilder2/node_modules/argparse/lib/namespace.js +0 -76
  601. package/node_modules/xmlbuilder2/node_modules/argparse/lib/utils.js +0 -57
  602. package/node_modules/xmlbuilder2/node_modules/argparse/package.json +0 -34
  603. package/node_modules/xmlbuilder2/node_modules/js-yaml/CHANGELOG.md +0 -557
  604. package/node_modules/xmlbuilder2/node_modules/js-yaml/LICENSE +0 -21
  605. package/node_modules/xmlbuilder2/node_modules/js-yaml/README.md +0 -299
  606. package/node_modules/xmlbuilder2/node_modules/js-yaml/bin/js-yaml.js +0 -132
  607. package/node_modules/xmlbuilder2/node_modules/js-yaml/dist/js-yaml.js +0 -3989
  608. package/node_modules/xmlbuilder2/node_modules/js-yaml/dist/js-yaml.min.js +0 -1
  609. package/node_modules/xmlbuilder2/node_modules/js-yaml/index.js +0 -7
  610. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/common.js +0 -59
  611. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/dumper.js +0 -850
  612. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/exception.js +0 -43
  613. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/loader.js +0 -1644
  614. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/mark.js +0 -76
  615. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/schema/core.js +0 -18
  616. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/schema/default_full.js +0 -25
  617. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js +0 -28
  618. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js +0 -17
  619. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/schema/json.js +0 -25
  620. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/schema.js +0 -108
  621. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/binary.js +0 -138
  622. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/bool.js +0 -35
  623. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/float.js +0 -116
  624. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/int.js +0 -173
  625. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/js/function.js +0 -93
  626. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js +0 -60
  627. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js +0 -28
  628. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/map.js +0 -8
  629. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/merge.js +0 -12
  630. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/null.js +0 -34
  631. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/omap.js +0 -44
  632. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/pairs.js +0 -53
  633. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/seq.js +0 -8
  634. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/set.js +0 -29
  635. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/str.js +0 -8
  636. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type/timestamp.js +0 -88
  637. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml/type.js +0 -61
  638. package/node_modules/xmlbuilder2/node_modules/js-yaml/lib/js-yaml.js +0 -39
  639. package/node_modules/xmlbuilder2/node_modules/js-yaml/package.json +0 -49
  640. package/node_modules/xmlbuilder2/package.json +0 -82
  641. package/node_modules/xpath/LICENSE +0 -22
  642. package/node_modules/xpath/README.md +0 -133
  643. package/node_modules/xpath/package.json +0 -43
  644. package/node_modules/xpath/xpath.d.ts +0 -51
  645. package/node_modules/xpath/xpath.js +0 -5041
@@ -1,1186 +0,0 @@
1
- const xpath = require('./xpath.js');
2
- const dom = require('@xmldom/xmldom').DOMParser;
3
- const assert = require('assert');
4
-
5
- var xhtmlNs = 'http://www.w3.org/1999/xhtml';
6
-
7
- const parser = new dom();
8
-
9
- const parseXml = (xml, mimeType = 'text/xml') => parser.parseFromString(xml, mimeType);
10
-
11
- describe('xpath', () => {
12
- describe('api', () => {
13
- it('should contain the correct methods', () => {
14
- assert.ok(xpath.evaluate, 'evaluate api ok.');
15
- assert.ok(xpath.select, 'select api ok.');
16
- assert.ok(xpath.parse, 'parse api ok.');
17
- });
18
-
19
- it('should support .evaluate()', () => {
20
- var xml = '<book><title>Harry Potter</title></book>';
21
- var doc = parseXml(xml);
22
- var nodes = xpath.evaluate('//title', doc, null, xpath.XPathResult.ANY_TYPE, null).nodes;
23
-
24
- assert.strictEqual('title', nodes[0].localName);
25
- assert.strictEqual('Harry Potter', nodes[0].firstChild.data);
26
- assert.strictEqual('<title>Harry Potter</title>', nodes[0].toString());
27
- });
28
-
29
- it('should support .select()', () => {
30
- var xml = '<?book title="Harry Potter"?><?series title="Harry Potter"?><?series books="7"?><book><!-- This is a great book --><title>Harry Potter</title></book>';
31
- var doc = parseXml(xml);
32
- var nodes = xpath.select('//title', doc);
33
- assert.strictEqual('title', nodes[0].localName);
34
- assert.strictEqual('Harry Potter', nodes[0].firstChild.data);
35
- assert.strictEqual('<title>Harry Potter</title>', nodes[0].toString());
36
-
37
- var nodes2 = xpath.select('//node()', doc);
38
- assert.strictEqual(7, nodes2.length);
39
-
40
- var pis = xpath.select("/processing-instruction('series')", doc);
41
- assert.strictEqual(2, pis.length);
42
- assert.strictEqual('books="7"', pis[1].data);
43
- });
44
- });
45
-
46
- describe('parsing', () => {
47
- it('should detect unterminated string literals', () => {
48
- function testUnterminated(path) {
49
- assert.throws(function () {
50
- xpath.evaluate('"hello');
51
- }, function (err) {
52
- return err.message.indexOf('Unterminated') !== -1;
53
- });
54
- }
55
-
56
- testUnterminated('"Hello');
57
- testUnterminated("'Hello");
58
- testUnterminated('self::text() = "\""');
59
- testUnterminated('"\""');
60
- });
61
- });
62
-
63
- describe('.select()', () => {
64
- it('should select single nodes', () => {
65
- var xml = '<book><title>Harry Potter</title></book>';
66
- var doc = parseXml(xml);
67
-
68
- assert.strictEqual('title', xpath.select('//title[1]', doc)[0].localName);
69
- });
70
-
71
- it('should select text nodes', () => {
72
- var xml = '<book><title>Harry</title><title>Potter</title></book>';
73
- var doc = parseXml(xml);
74
-
75
- assert.deepEqual('book', xpath.select('local-name(/book)', doc));
76
- assert.deepEqual('Harry,Potter', xpath.select('//title/text()', doc).toString());
77
- });
78
-
79
- it('should select number values', () => {
80
- var xml = '<book><title>Harry</title><title>Potter</title></book>';
81
- var doc = parseXml(xml);
82
-
83
- assert.deepEqual(2, xpath.select('count(//title)', doc));
84
- });
85
-
86
- it('should select with namespaces', () => {
87
- var xml = '<book><title xmlns="myns">Harry Potter</title></book>';
88
- var doc = parseXml(xml);
89
-
90
- var nodes = xpath.select('//*[local-name(.)="title" and namespace-uri(.)="myns"]', doc);
91
- assert.strictEqual('title', nodes[0].localName);
92
- assert.strictEqual('myns', nodes[0].namespaceURI);
93
-
94
- var nodes2 = xpath.select('/*/title', doc);
95
-
96
- assert.strictEqual(0, nodes2.length);
97
- });
98
-
99
- it('should select with namespaces, using a resolver', () => {
100
- var xml = '<book xmlns:testns="http://example.com/test" xmlns:otherns="http://example.com/other"><otherns:title>Narnia</otherns:title><testns:title>Harry Potter</testns:title><testns:field testns:type="author">JKR</testns:field></book>';
101
- var doc = parseXml(xml);
102
-
103
- var resolver = {
104
- mappings: {
105
- 'testns': 'http://example.com/test'
106
- },
107
- lookupNamespaceURI: function (prefix) {
108
- return this.mappings[prefix];
109
- }
110
- };
111
-
112
- var nodes = xpath.selectWithResolver('//testns:title/text()', doc, resolver);
113
- assert.strictEqual('Harry Potter', nodes[0].nodeValue);
114
-
115
- assert.strictEqual('JKR', xpath.selectWithResolver('//testns:field[@testns:type="author"]/text()', doc, resolver)[0].nodeValue);
116
-
117
- var nodes2 = xpath.selectWithResolver('/*/testns:*', doc, resolver);
118
-
119
- assert.strictEqual(2, nodes2.length);
120
- });
121
-
122
- it('should select from xml with a default namespace, using a resolver', () => {
123
- var xml = '<book xmlns="http://example.com/test"><title>Harry Potter</title><field type="author">JKR</field></book>';
124
- var doc = parseXml(xml);
125
-
126
- var resolver = {
127
- mappings: {
128
- 'testns': 'http://example.com/test'
129
- },
130
- lookupNamespaceURI: function (prefix) {
131
- return this.mappings[prefix];
132
- }
133
- }
134
-
135
- var nodes = xpath.selectWithResolver('//testns:title/text()', doc, resolver);
136
- assert.strictEqual('Harry Potter', xpath.selectWithResolver('//testns:title/text()', doc, resolver)[0].nodeValue);
137
- assert.strictEqual('JKR', xpath.selectWithResolver('//testns:field[@type="author"]/text()', doc, resolver)[0].nodeValue);
138
- });
139
-
140
- it('should select with namespaces, prefixes different in xml and xpath, using a resolver', () => {
141
- var xml = '<book xmlns:testns="http://example.com/test"><testns:title>Harry Potter</testns:title><testns:field testns:type="author">JKR</testns:field></book>';
142
- var doc = parseXml(xml);
143
-
144
- var resolver = {
145
- mappings: {
146
- 'ns': 'http://example.com/test'
147
- },
148
- lookupNamespaceURI: function (prefix) {
149
- return this.mappings[prefix];
150
- }
151
- }
152
-
153
- var nodes = xpath.selectWithResolver('//ns:title/text()', doc, resolver);
154
- assert.strictEqual('Harry Potter', nodes[0].nodeValue);
155
-
156
- assert.strictEqual('JKR', xpath.selectWithResolver('//ns:field[@ns:type="author"]/text()', doc, resolver)[0].nodeValue);
157
- });
158
-
159
- it('should select with namespaces, using namespace mappings', () => {
160
- var xml = '<book xmlns:testns="http://example.com/test"><testns:title>Harry Potter</testns:title><testns:field testns:type="author">JKR</testns:field></book>';
161
- var doc = parseXml(xml);
162
- var select = xpath.useNamespaces({ 'testns': 'http://example.com/test' });
163
-
164
- assert.strictEqual('Harry Potter', select('//testns:title/text()', doc)[0].nodeValue);
165
- assert.strictEqual('JKR', select('//testns:field[@testns:type="author"]/text()', doc)[0].nodeValue);
166
- });
167
-
168
- it('should select attributes', () => {
169
- var xml = '<author name="J. K. Rowling"></author>';
170
- var doc = parseXml(xml);
171
-
172
- var author = xpath.select1('/author/@name', doc).value;
173
- assert.strictEqual('J. K. Rowling', author);
174
- });
175
- });
176
-
177
- describe('selection', () => {
178
- it('should select with multiple predicates', () => {
179
- var xml = '<characters><character name="Snape" sex="M" age="50" /><character name="McGonnagal" sex="F" age="65" /><character name="Harry" sex="M" age="14" /></characters>';
180
- var doc = parseXml(xml);
181
-
182
- var characters = xpath.select('/*/character[@sex = "M"][@age > 40]/@name', doc);
183
-
184
- assert.strictEqual(1, characters.length);
185
- assert.strictEqual('Snape', characters[0].textContent);
186
- });
187
-
188
- // https://github.com/goto100/xpath/issues/37
189
- it('should select multiple attributes', () => {
190
- var xml = '<authors><author name="J. K. Rowling" /><author name="Saeed Akl" /></authors>';
191
- var doc = parseXml(xml);
192
-
193
- var authors = xpath.select('/authors/author/@name', doc);
194
- assert.strictEqual(2, authors.length);
195
- assert.strictEqual('J. K. Rowling', authors[0].value);
196
-
197
- // https://github.com/goto100/xpath/issues/41
198
- doc = parseXml('<chapters><chapter v="1"/><chapter v="2"/><chapter v="3"/></chapters>');
199
- var nodes = xpath.select("/chapters/chapter/@v", doc);
200
- var values = nodes.map(function (n) { return n.value; });
201
-
202
- assert.strictEqual(3, values.length);
203
- assert.strictEqual("1", values[0]);
204
- assert.strictEqual("2", values[1]);
205
- assert.strictEqual("3", values[2]);
206
- });
207
-
208
- it('should compare string values of numbers with numbers', () => {
209
- assert.ok(xpath.select1('"000" = 0'), '000');
210
- assert.ok(xpath.select1('"45.0" = 45'), '45');
211
- });
212
-
213
- it('should correctly compare strings with booleans', () => {
214
- // string should downcast to boolean
215
- assert.strictEqual(false, xpath.select1('"false" = false()'), '"false" = false()');
216
- assert.strictEqual(true, xpath.select1('"a" = true()'), '"a" = true()');
217
- assert.strictEqual(true, xpath.select1('"" = false()'), '"" = false()');
218
- });
219
-
220
- it('should evaluate local-name() and name() on processing instructions', () => {
221
- var xml = '<?book-record added="2015-01-16" author="J.K. Rowling" ?><book>Harry Potter</book>';
222
- var doc = parseXml(xml);
223
- var expectedName = 'book-record';
224
- var localName = xpath.select('local-name(/processing-instruction())', doc);
225
- var name = xpath.select('name(/processing-instruction())', doc);
226
-
227
- assert.deepEqual(expectedName, localName, 'local-name() - "' + expectedName + '" !== "' + localName + '"');
228
- assert.deepEqual(expectedName, name, 'name() - "' + expectedName + '" !== "' + name + '"');
229
- });
230
-
231
- it('should support substring-after()', () => {
232
- var xml = '<classmate>Hermione</classmate>';
233
- var doc = parseXml(xml);
234
-
235
- var part = xpath.select('substring-after(/classmate, "Her")', doc);
236
- assert.deepEqual('mione', part);
237
- });
238
-
239
- it('should support preceding:: on document fragments', () => {
240
- var doc = parseXml('<n />'),
241
- df = doc.createDocumentFragment(),
242
- root = doc.createElement('book');
243
-
244
- df.appendChild(root);
245
-
246
- for (var i = 0; i < 10; i += 1) {
247
- root.appendChild(doc.createElement('chapter'));
248
- }
249
-
250
- var chapter = xpath.select1("book/chapter[5]", df);
251
-
252
- assert.ok(chapter, 'chapter');
253
-
254
- assert.strictEqual(xpath.select("count(preceding::chapter)", chapter), 4);
255
- });
256
-
257
- it('should allow getting sorted and unsorted arrays from nodesets', () => {
258
- const doc = parseXml('<book><character>Harry</character><character>Ron</character><character>Hermione</character></book>');
259
- const path = xpath.parse("/*/*[3] | /*/*[2] | /*/*[1]");
260
- const nset = path.evaluateNodeSet({ node: doc });
261
- const sorted = nset.toArray();
262
- const unsorted = nset.toUnsortedArray();
263
-
264
- assert.strictEqual(sorted.length, 3);
265
- assert.strictEqual(unsorted.length, 3);
266
-
267
- assert.strictEqual(sorted[0].textContent, 'Harry');
268
- assert.strictEqual(sorted[1].textContent, 'Ron');
269
- assert.strictEqual(sorted[2].textContent, 'Hermione');
270
-
271
- assert.notEqual(sorted[0], unsorted[0], "first nodeset element equal");
272
- });
273
-
274
- it('should compare nodesets to nodesets (=)', () => {
275
- var xml = '<school><houses>' +
276
- '<house name="Gryffindor"><student>Harry</student><student>Hermione</student></house>' +
277
- '<house name="Slytherin"><student>Draco</student><student>Crabbe</student></house>' +
278
- '<house name="Ravenclaw"><student>Luna</student><student>Cho</student></house>' +
279
- '</houses>' +
280
- '<honorStudents><student>Hermione</student><student>Luna</student></honorStudents></school>';
281
-
282
- var doc = parseXml(xml);
283
- var houses = xpath.parse('/school/houses/house[student = /school/honorStudents/student]').select({ node: doc });
284
-
285
- assert.strictEqual(houses.length, 2);
286
-
287
- var houseNames = houses.map(function (node) { return node.getAttribute('name'); }).sort();
288
-
289
- assert.strictEqual(houseNames[0], 'Gryffindor');
290
- assert.strictEqual(houseNames[1], 'Ravenclaw');
291
- });
292
-
293
- it('should compare nodesets to nodesets (>=)', () => {
294
- var xml = '<school><houses>' +
295
- '<house name="Gryffindor"><student level="5">Harry</student><student level="9">Hermione</student></house>' +
296
- '<house name="Slytherin"><student level="1">Goyle</student><student level="1">Crabbe</student></house>' +
297
- '<house name="Ravenclaw"><student level="4">Luna</student><student level="3">Cho</student></house>' +
298
- '</houses>' +
299
- '<courses><course minLevel="9">DADA</course><course minLevel="4">Charms</course></courses>' +
300
- '</school>';
301
-
302
- var doc = parseXml(xml);
303
- var houses = xpath.parse('/school/houses/house[student/@level >= /school/courses/course/@minLevel]').select({ node: doc });
304
-
305
- assert.strictEqual(houses.length, 2);
306
-
307
- var houseNames = houses.map(function (node) { return node.getAttribute('name'); }).sort();
308
-
309
- assert.strictEqual(houseNames[0], 'Gryffindor');
310
- assert.strictEqual(houseNames[1], 'Ravenclaw');
311
- });
312
-
313
- it('should support various inequality expressions on nodesets', () => {
314
- var xml = "<books><book num='1' title='PS' /><book num='2' title='CoS' /><book num='3' title='PoA' /><book num='4' title='GoF' /><book num='5' title='OotP' /><book num='6' title='HBP' /><book num='7' title='DH' /></books>";
315
- var doc = parseXml(xml);
316
-
317
- var options = { node: doc, variables: { theNumber: 3, theString: '3', theBoolean: true } };
318
-
319
- var numberPaths = [
320
- '/books/book[$theNumber <= @num]',
321
- '/books/book[$theNumber < @num]',
322
- '/books/book[$theNumber >= @num]',
323
- '/books/book[$theNumber > @num]'
324
- ];
325
-
326
- var stringPaths = [
327
- '/books/book[$theString <= @num]',
328
- '/books/book[$theString < @num]',
329
- '/books/book[$theString >= @num]',
330
- '/books/book[$theString > @num]'
331
- ];
332
-
333
- var booleanPaths = [
334
- '/books/book[$theBoolean <= @num]',
335
- '/books/book[$theBoolean < @num]',
336
- '/books/book[$theBoolean >= @num]',
337
- '/books/book[$theBoolean > @num]'
338
- ];
339
-
340
- var lhsPaths = [
341
- '/books/book[@num <= $theNumber]',
342
- '/books/book[@num < $theNumber]'
343
- ];
344
-
345
- function countNodes(paths) {
346
- return paths
347
- .map(xpath.parse)
348
- .map(function (path) { return path.select(options) })
349
- .map(function (arr) { return arr.length; });
350
- }
351
-
352
- assert.deepEqual(countNodes(numberPaths), [5, 4, 3, 2], 'numbers');
353
- assert.deepEqual(countNodes(stringPaths), [5, 4, 3, 2], 'strings');
354
- assert.deepEqual(countNodes(booleanPaths), [7, 6, 1, 0], 'numbers');
355
- assert.deepEqual(countNodes(lhsPaths), [3, 2], 'lhs');
356
- });
357
-
358
- it('should correctly evaluate context position', () => {
359
- var doc = parseXml("<books><book><chapter>The boy who lived</chapter><chapter>The vanishing glass</chapter></book><book><chapter>The worst birthday</chapter><chapter>Dobby's warning</chapter><chapter>The burrow</chapter></book></books>");
360
-
361
- var chapters = xpath.parse('/books/book/chapter[2]').select({ node: doc });
362
-
363
- assert.strictEqual(2, chapters.length);
364
- assert.strictEqual('The vanishing glass', chapters[0].textContent);
365
- assert.strictEqual("Dobby's warning", chapters[1].textContent);
366
-
367
- var lastChapters = xpath.parse('/books/book/chapter[last()]').select({ node: doc });
368
-
369
- assert.strictEqual(2, lastChapters.length);
370
- assert.strictEqual('The vanishing glass', lastChapters[0].textContent);
371
- assert.strictEqual("The burrow", lastChapters[1].textContent);
372
-
373
- var secondChapter = xpath.parse('(/books/book/chapter)[2]').select({ node: doc });
374
-
375
- assert.strictEqual(1, secondChapter.length);
376
- assert.strictEqual('The vanishing glass', chapters[0].textContent);
377
-
378
- var lastChapter = xpath.parse('(/books/book/chapter)[last()]').select({ node: doc });
379
-
380
- assert.strictEqual(1, lastChapter.length);
381
- assert.strictEqual("The burrow", lastChapter[0].textContent);
382
- });
383
- });
384
-
385
- describe('string()', () => {
386
- it('should work with no arguments', () => {
387
- var doc = parseXml('<book>Harry Potter</book>');
388
-
389
- var rootElement = xpath.select1('/book', doc);
390
- assert.ok(rootElement, 'rootElement is null');
391
-
392
- assert.strictEqual('Harry Potter', xpath.select1('string()', doc));
393
- });
394
-
395
- it('should work on document fragments', () => {
396
- var doc = parseXml('<n />');
397
- var docFragment = doc.createDocumentFragment();
398
-
399
- var el = doc.createElement("book");
400
- docFragment.appendChild(el);
401
-
402
- var testValue = "Harry Potter";
403
-
404
- el.appendChild(doc.createTextNode(testValue));
405
-
406
- assert.strictEqual(testValue, xpath.select1("string()", docFragment));
407
- });
408
-
409
- it('should work correctly on boolean values', () => {
410
- assert.strictEqual('string', typeof xpath.select1('string(true())'));
411
- assert.strictEqual('string', typeof xpath.select1('string(false())'));
412
- assert.strictEqual('string', typeof xpath.select1('string(1 = 2)'));
413
- assert.ok(xpath.select1('"true" = string(true())'), '"true" = string(true())');
414
- });
415
-
416
- it('should work correctly on numbers', () => {
417
- assert.strictEqual('string', typeof xpath.select1('string(45)'));
418
- assert.ok(xpath.select1('"45" = string(45)'), '"45" = string(45)');
419
- });
420
- });
421
-
422
- describe('type conversion', () => {
423
- it('should convert strings to numbers correctly', () => {
424
- assert.strictEqual(45.2, xpath.select1('number("45.200")'));
425
- assert.strictEqual(55.0, xpath.select1('number("000055")'));
426
- assert.strictEqual(65.0, xpath.select1('number(" 65 ")'));
427
-
428
- assert.strictEqual(true, xpath.select1('"" != 0'), '"" != 0');
429
- assert.strictEqual(false, xpath.select1('"" = 0'), '"" = 0');
430
- assert.strictEqual(false, xpath.select1('0 = ""'), '0 = ""');
431
- assert.strictEqual(false, xpath.select1('0 = " "'), '0 = " "');
432
-
433
- assert.ok(Number.isNaN(xpath.select('number("")')), 'number("")');
434
- assert.ok(Number.isNaN(xpath.select('number("45.8g")')), 'number("45.8g")');
435
- assert.ok(Number.isNaN(xpath.select('number("2e9")')), 'number("2e9")');
436
- assert.ok(Number.isNaN(xpath.select('number("+33")')), 'number("+33")');
437
- });
438
-
439
- it('should convert numbers to strings correctly', () => {
440
- assert.strictEqual('0.0000000000000000000000005250000000000001', xpath.parse('0.525 div 1000000 div 1000000 div 1000000 div 1000000').evaluateString());
441
- assert.strictEqual('525000000000000000000000', xpath.parse('0.525 * 1000000 * 1000000 * 1000000 * 1000000').evaluateString());
442
- });
443
-
444
- it('should provide correct string value for cdata sections', () => {
445
- const xml = "<people><person><![CDATA[Harry Potter]]></person><person>Ron <![CDATA[Weasley]]></person></people>";
446
- const doc = parseXml(xml);
447
-
448
- const person1 = xpath.parse("/people/person").evaluateString({ node: doc });
449
- const person2 = xpath.parse("/people/person/text()").evaluateString({ node: doc });
450
- const person3 = xpath.select("string(/people/person/text())", doc);
451
- const person4 = xpath.parse("/people/person[2]").evaluateString({ node: doc });
452
-
453
- assert.strictEqual(person1, 'Harry Potter');
454
- assert.strictEqual(person2, 'Harry Potter');
455
- assert.strictEqual(person3, 'Harry Potter');
456
- assert.strictEqual(person4, 'Ron Weasley');
457
- });
458
-
459
- it('should convert various node types to string values', () => {
460
- var xml = "<book xmlns:hp='http://harry'><!-- This describes the Harry Potter Book --><?author name='J.K. Rowling' ?><title lang='en'><![CDATA[Harry Potter & the Philosopher's Stone]]></title><character>Harry Potter</character></book>",
461
- doc = parseXml(xml),
462
- allText = xpath.parse('.').evaluateString({ node: doc }),
463
- ns = xpath.parse('*/namespace::*[name() = "hp"]').evaluateString({ node: doc }),
464
- title = xpath.parse('*/title').evaluateString({ node: doc }),
465
- child = xpath.parse('*/*').evaluateString({ node: doc }),
466
- titleLang = xpath.parse('*/*/@lang').evaluateString({ node: doc }),
467
- pi = xpath.parse('*/processing-instruction()').evaluateString({ node: doc }),
468
- comment = xpath.parse('*/comment()').evaluateString({ node: doc });
469
-
470
- assert.strictEqual(allText, "Harry Potter & the Philosopher's StoneHarry Potter");
471
- assert.strictEqual(ns, 'http://harry');
472
- assert.strictEqual(title, "Harry Potter & the Philosopher's Stone");
473
- assert.strictEqual(child, "Harry Potter & the Philosopher's Stone");
474
- assert.strictEqual(titleLang, 'en');
475
- assert.strictEqual(pi.trim(), "name='J.K. Rowling'");
476
- assert.strictEqual(comment, ' This describes the Harry Potter Book ');
477
- });
478
-
479
- it('should convert booleans to numbers correctly', () => {
480
- var num = xpath.parse('"a" = "b"').evaluateNumber();
481
-
482
- assert.strictEqual(num, 0);
483
-
484
- var str = xpath.select('substring("expelliarmus", 1, "a" = "a")');
485
-
486
- assert.strictEqual(str, 'e');
487
- });
488
- });
489
-
490
- describe('parsed expressions', () => {
491
- it('should work with no options', () => {
492
- var parsed = xpath.parse('5 + 7');
493
-
494
- assert.strictEqual(typeof parsed, "object", "parse() should return an object");
495
- assert.strictEqual(typeof parsed.evaluate, "function", "parsed.evaluate should be a function");
496
- assert.strictEqual(typeof parsed.evaluateNumber, "function", "parsed.evaluateNumber should be a function");
497
-
498
- assert.strictEqual(parsed.evaluateNumber(), 12);
499
-
500
- // evaluating twice should yield the same result
501
- assert.strictEqual(parsed.evaluateNumber(), 12);
502
- });
503
-
504
- it('should support select1()', () => {
505
- var xml = '<book><title>Harry Potter</title></book>';
506
- var doc = parseXml(xml);
507
- var parsed = xpath.parse('/*/title');
508
-
509
- assert.strictEqual(typeof parsed, 'object', 'parse() should return an object');
510
-
511
- assert.strictEqual(typeof parsed.select1, 'function', 'parsed.select1 should be a function');
512
-
513
- var single = parsed.select1({ node: doc });
514
-
515
- assert.strictEqual('title', single.localName);
516
- assert.strictEqual('Harry Potter', single.firstChild.data);
517
- assert.strictEqual('<title>Harry Potter</title>', single.toString());
518
- });
519
-
520
- it('should support select()', () => {
521
- var xml = '<book><title>Harry Potter</title></book>';
522
- var doc = parseXml(xml);
523
- var parsed = xpath.parse('/*/title');
524
-
525
- assert.strictEqual(typeof parsed, 'object', 'parse() should return an object');
526
-
527
- assert.strictEqual(typeof parsed.select, 'function', 'parsed.select should be a function');
528
-
529
- var nodes = parsed.select({ node: doc });
530
-
531
- assert.ok(nodes, 'parsed.select() should return a value');
532
- assert.strictEqual(1, nodes.length);
533
- assert.strictEqual('title', nodes[0].localName);
534
- assert.strictEqual('Harry Potter', nodes[0].firstChild.data);
535
- assert.strictEqual('<title>Harry Potter</title>', nodes[0].toString());
536
- });
537
-
538
- it('should support .evaluateString() and .evaluateNumber()', () => {
539
- var xml = '<book><title>Harry Potter</title><numVolumes>7</numVolumes></book>';
540
- var doc = parseXml(xml);
541
- var parsed = xpath.parse('/*/numVolumes');
542
-
543
- assert.strictEqual(typeof parsed, 'object', 'parse() should return an object');
544
-
545
- assert.strictEqual(typeof parsed.evaluateString, 'function', 'parsed.evaluateString should be a function');
546
- assert.strictEqual('7', parsed.evaluateString({ node: doc }));
547
-
548
- assert.strictEqual(typeof parsed.evaluateBoolean, 'function', 'parsed.evaluateBoolean should be a function');
549
- assert.strictEqual(true, parsed.evaluateBoolean({ node: doc }));
550
-
551
- assert.strictEqual(typeof parsed.evaluateNumber, 'function', 'parsed.evaluateNumber should be a function');
552
- assert.strictEqual(7, parsed.evaluateNumber({ node: doc }));
553
- });
554
-
555
- it('should support .evaluateBoolean()', () => {
556
- var xml = '<book><title>Harry Potter</title></book>';
557
- var doc = parseXml(xml);
558
- var context = { node: doc };
559
-
560
- function evaluate(path) {
561
- return xpath.parse(path).evaluateBoolean(context);
562
- }
563
-
564
- assert.strictEqual(false, evaluate('/*/myrtle'), 'boolean value of empty node set should be false');
565
-
566
- assert.strictEqual(true, evaluate('not(/*/myrtle)'), 'not() of empty nodeset should be true');
567
-
568
- assert.strictEqual(true, evaluate('/*/title'), 'boolean value of non-empty nodeset should be true');
569
-
570
- assert.strictEqual(true, evaluate('/*/title = "Harry Potter"'), 'title equals Harry Potter');
571
-
572
- assert.strictEqual(false, evaluate('/*/title != "Harry Potter"'), 'title != Harry Potter should be false');
573
-
574
- assert.strictEqual(false, evaluate('/*/title = "Percy Jackson"'), 'title should not equal Percy Jackson');
575
- });
576
-
577
- it('should support namespaces', () => {
578
- var xml = '<characters xmlns:ps="http://philosophers-stone.com" xmlns:cs="http://chamber-secrets.com">' +
579
- '<ps:character>Quirrell</ps:character><ps:character>Fluffy</ps:character>' +
580
- '<cs:character>Myrtle</cs:character><cs:character>Tom Riddle</cs:character>' +
581
- '</characters>';
582
- var doc = parseXml(xml);
583
-
584
- var expr = xpath.parse('/characters/c:character');
585
- var countExpr = xpath.parse('count(/characters/c:character)');
586
- var csns = 'http://chamber-secrets.com';
587
-
588
- function resolve(prefix) {
589
- if (prefix === 'c') {
590
- return csns;
591
- }
592
- }
593
-
594
- function testContext(context, description) {
595
- try {
596
- var value = expr.evaluateString(context);
597
- var count = countExpr.evaluateNumber(context);
598
-
599
- assert.strictEqual('Myrtle', value, description + ' - string value - ' + value);
600
- assert.strictEqual(2, count, description + ' map - count - ' + count);
601
- } catch (e) {
602
- e.message = description + ': ' + (e.message || '');
603
- throw e;
604
- }
605
- }
606
-
607
- testContext({
608
- node: doc,
609
- namespaces: {
610
- c: csns
611
- }
612
- }, 'Namespace map');
613
-
614
- testContext({
615
- node: doc,
616
- namespaces: resolve
617
- }, 'Namespace function');
618
-
619
- testContext({
620
- node: doc,
621
- namespaces: {
622
- getNamespace: resolve
623
- }
624
- }, 'Namespace object');
625
- });
626
-
627
- it('should support custom functions', () => {
628
- var xml = '<book><title>Harry Potter</title></book>';
629
- var doc = parseXml(xml);
630
-
631
- var parsed = xpath.parse('concat(double(/*/title), " is cool")');
632
-
633
- function doubleString(context, value) {
634
- assert.strictEqual(2, arguments.length);
635
- var str = value.stringValue();
636
- return str + str;
637
- }
638
-
639
- function functions(name, namespace) {
640
- if (name === 'double') {
641
- return doubleString;
642
- }
643
- return null;
644
- }
645
-
646
- function testContext(context, description) {
647
- try {
648
- var actual = parsed.evaluateString(context);
649
- var expected = 'Harry PotterHarry Potter is cool';
650
- assert.strictEqual(expected, actual, description + ' - ' + expected + ' != ' + actual);
651
- } catch (e) {
652
- e.message = description + ": " + (e.message || '');
653
- throw e;
654
- }
655
- }
656
-
657
- testContext({
658
- node: doc,
659
- functions: functions
660
- }, 'Functions function');
661
-
662
- testContext({
663
- node: doc,
664
- functions: {
665
- getFunction: functions
666
- }
667
- }, 'Functions object');
668
-
669
- testContext({
670
- node: doc,
671
- functions: {
672
- double: doubleString
673
- }
674
- }, 'Functions map');
675
- });
676
-
677
- it('should support custom functions in namespaces', () => {
678
- var xml = '<book><title>Harry Potter</title><friend>Ron</friend><friend>Hermione</friend><friend>Neville</friend></book>';
679
- var doc = parseXml(xml);
680
-
681
- var parsed = xpath.parse('concat(hp:double(/*/title), " is 2 cool ", hp:square(2), " school")');
682
- var hpns = 'http://harry-potter.com';
683
-
684
- var namespaces = {
685
- hp: hpns
686
- };
687
-
688
- var context = {
689
- node: doc,
690
- namespaces: {
691
- hp: hpns
692
- },
693
- functions: function (name, namespace) {
694
- if (namespace === hpns) {
695
- switch (name) {
696
- case "double":
697
- return function (context, value) {
698
- assert.strictEqual(2, arguments.length);
699
- var str = value.stringValue();
700
- return str + str;
701
- };
702
- case "square":
703
- return function (context, value) {
704
- var num = value.numberValue();
705
- return num * num;
706
- };
707
-
708
- case "xor":
709
- return function (context, l, r) {
710
- assert.strictEqual(3, arguments.length);
711
- var lbool = l.booleanValue();
712
- var rbool = r.booleanValue();
713
- return (lbool || rbool) && !(lbool && rbool);
714
- };
715
-
716
- case "second":
717
- return function (context, nodes) {
718
- var nodesArr = nodes.toArray();
719
- var second = nodesArr[1];
720
- return second ? [second] : [];
721
- };
722
- }
723
- }
724
- return null;
725
- }
726
- };
727
-
728
- assert.strictEqual('Harry PotterHarry Potter is 2 cool 4 school', parsed.evaluateString(context));
729
-
730
- assert.strictEqual(false, xpath.parse('hp:xor(false(), false())').evaluateBoolean(context));
731
- assert.strictEqual(true, xpath.parse('hp:xor(false(), true())').evaluateBoolean(context));
732
- assert.strictEqual(true, xpath.parse('hp:xor(true(), false())').evaluateBoolean(context));
733
- assert.strictEqual(false, xpath.parse('hp:xor(true(), true())').evaluateBoolean(context));
734
-
735
- assert.strictEqual('Hermione', xpath.parse('hp:second(/*/friend)').evaluateString(context));
736
- assert.strictEqual(1, xpath.parse('count(hp:second(/*/friend))').evaluateNumber(context));
737
- assert.strictEqual(0, xpath.parse('count(hp:second(/*/friendz))').evaluateNumber(context));
738
- });
739
-
740
- it('should support xpath variables', () => {
741
- var xml = '<book><title>Harry Potter</title><volumes>7</volumes></book>';
742
- var doc = parseXml(xml);
743
-
744
- var variables = {
745
- title: 'Harry Potter',
746
- notTitle: 'Percy Jackson',
747
- houses: 4
748
- };
749
-
750
- function variableFunction(name) {
751
- return variables[name];
752
- }
753
-
754
- function testContext(context, description) {
755
- try {
756
- assert.strictEqual(true, xpath.parse('$title = /*/title').evaluateBoolean(context));
757
- assert.strictEqual(false, xpath.parse('$notTitle = /*/title').evaluateBoolean(context));
758
- assert.strictEqual(11, xpath.parse('$houses + /*/volumes').evaluateNumber(context));
759
- } catch (e) {
760
- e.message = description + ": " + (e.message || '');
761
- throw e;
762
- }
763
- }
764
-
765
- testContext({
766
- node: doc,
767
- variables: variableFunction
768
- }, 'Variables function');
769
-
770
- testContext({
771
- node: doc,
772
- variables: {
773
- getVariable: variableFunction
774
- }
775
- }, 'Variables object');
776
-
777
- testContext({
778
- node: doc,
779
- variables: variables
780
- }, 'Variables map');
781
-
782
- });
783
-
784
- it('should support variables with namespaces', () => {
785
- var xml = '<book><title>Harry Potter</title><volumes>7</volumes></book>';
786
- var doc = parseXml(xml);
787
- var hpns = 'http://harry-potter.com';
788
-
789
- var context = {
790
- node: doc,
791
- namespaces: {
792
- hp: hpns
793
- },
794
- variables: function (name, namespace) {
795
- if (namespace === hpns) {
796
- switch (name) {
797
- case 'title': return 'Harry Potter';
798
- case 'houses': return 4;
799
- case 'false': return false;
800
- case 'falseStr': return 'false';
801
- }
802
- } else if (namespace === '') {
803
- switch (name) {
804
- case 'title': return 'World';
805
- }
806
- }
807
-
808
- return null;
809
- }
810
- };
811
-
812
- assert.strictEqual(true, xpath.parse('$hp:title = /*/title').evaluateBoolean(context));
813
- assert.strictEqual(false, xpath.parse('$title = /*/title').evaluateBoolean(context));
814
- assert.strictEqual('World', xpath.parse('$title').evaluateString(context));
815
- assert.strictEqual(false, xpath.parse('$hp:false').evaluateBoolean(context));
816
- assert.notEqual(false, xpath.parse('$hp:falseStr').evaluateBoolean(context));
817
- assert.throws(function () {
818
- xpath.parse('$hp:hello').evaluateString(context);
819
- }, function (err) {
820
- return err.message === 'Undeclared variable: $hp:hello';
821
- });
822
- });
823
-
824
- it('should support .toString()', () => {
825
- var parser = new xpath.XPathParser();
826
-
827
- var simpleStep = parser.parse('my:book');
828
-
829
- assert.strictEqual(simpleStep.toString(), 'child::my:book');
830
-
831
- var precedingSib = parser.parse('preceding-sibling::my:chapter');
832
-
833
- assert.strictEqual(precedingSib.toString(), 'preceding-sibling::my:chapter');
834
-
835
- var withPredicates = parser.parse('book[number > 3][contains(title, "and the")]');
836
-
837
- assert.strictEqual(withPredicates.toString(), "child::book[(child::number > 3)][contains(child::title, 'and the')]");
838
-
839
- var parenthesisWithPredicate = parser.parse('(/books/book/chapter)[7]');
840
-
841
- assert.strictEqual(parenthesisWithPredicate.toString(), '(/child::books/child::book/child::chapter)[7]');
842
-
843
- var charactersOver20 = parser.parse('heroes[age > 20] | villains[age > 20]');
844
-
845
- assert.strictEqual(charactersOver20.toString(), 'child::heroes[(child::age > 20)] | child::villains[(child::age > 20)]');
846
- });
847
- });
848
-
849
- describe('html-mode support', () => {
850
- it('should allow null namespaces for nodes with no prefix', () => {
851
- var markup = `<html>
852
- <head></head>
853
- <body>
854
- <p>Hi Ron!</p>
855
- <my:p xmlns:my="http://www.example.com/my">Hi Draco!</p>
856
- <p>Hi Hermione!</p>
857
- </body>
858
- </html>`;
859
-
860
- var docHtml = parseXml(markup, 'text/html');
861
-
862
- var noPrefixPath = xpath.parse('/html/body/p[2]');
863
-
864
- var greetings1 = noPrefixPath.select({ node: docHtml, allowAnyNamespaceForNoPrefix: false });
865
-
866
- assert.strictEqual(0, greetings1.length);
867
-
868
- var allowAnyNamespaceOptions = { node: docHtml, allowAnyNamespaceForNoPrefix: true };
869
-
870
- // if allowAnyNamespaceForNoPrefix specified, allow using prefix-less node tests to match nodes with no prefix
871
- var greetings2 = noPrefixPath.select(allowAnyNamespaceOptions);
872
-
873
- assert.strictEqual(1, greetings2.length);
874
- assert.strictEqual('Hi Hermione!', greetings2[0].textContent);
875
-
876
- var allGreetings = xpath.parse('/html/body/p').select(allowAnyNamespaceOptions);
877
-
878
- assert.strictEqual(2, allGreetings.length);
879
-
880
- var nsm = { html: xhtmlNs, other: 'http://www.example.com/other' };
881
-
882
- var prefixPath = xpath.parse('/html:html/body/html:p');
883
- var optionsWithNamespaces = { node: docHtml, allowAnyNamespaceForNoPrefix: true, namespaces: nsm };
884
-
885
- // if the path uses prefixes, they have to match
886
- var greetings3 = prefixPath.select(optionsWithNamespaces);
887
-
888
- assert.strictEqual(2, greetings3.length);
889
-
890
- var badPrefixPath = xpath.parse('/html:html/other:body/html:p');
891
-
892
- var greetings4 = badPrefixPath.select(optionsWithNamespaces);
893
-
894
- assert.strictEqual(0, greetings4.length);
895
- });
896
-
897
- it('should support the isHtml option', () => {
898
- var markup = '<html><head></head><body><p>Hi Ron!</p><my:p xmlns:my="http://www.example.com/my">Hi Draco!</p><p>Hi Hermione!</p></body></html>';
899
- var docHtml = parseXml(markup, 'text/html');
900
-
901
- var ns = { h: xhtmlNs };
902
-
903
- // allow matching on unprefixed nodes
904
- var greetings1 = xpath.parse('/html/body/p').select({ node: docHtml, isHtml: true });
905
-
906
- assert.strictEqual(2, greetings1.length);
907
-
908
- // allow case insensitive match
909
- var greetings2 = xpath.parse('/h:html/h:bOdY/h:p').select({ node: docHtml, namespaces: ns, isHtml: true });
910
-
911
- assert.strictEqual(2, greetings2.length);
912
-
913
- // non-html mode: allow select if case and namespaces match
914
- var greetings3 = xpath.parse('/h:html/h:body/h:p').select({ node: docHtml, namespaces: ns });
915
-
916
- assert.strictEqual(2, greetings3.length);
917
-
918
- // non-html mode: require namespaces
919
- var greetings4 = xpath.parse('/html/body/p').select({ node: docHtml, namespaces: ns });
920
-
921
- assert.strictEqual(0, greetings4.length);
922
-
923
- // non-html mode: require case to match
924
- var greetings5 = xpath.parse('/h:html/h:bOdY/h:p').select({ node: docHtml, namespaces: ns });
925
-
926
- assert.strictEqual(0, greetings5.length);
927
- });
928
- });
929
-
930
- describe('functions', () => {
931
- it('should provide a meaningful error for invalid functions', () => {
932
- var path = xpath.parse('invalidFunc()');
933
-
934
- assert.throws(function () {
935
- path.evaluateString();
936
- }, function (err) {
937
- return err.message.indexOf('invalidFunc') !== -1;
938
- });
939
-
940
- var path2 = xpath.parse('funcs:invalidFunc()');
941
-
942
- assert.throws(function () {
943
- path2.evaluateString({
944
- namespaces: {
945
- funcs: 'myfunctions'
946
- }
947
- });
948
- }, function (err) {
949
- return err.message.indexOf('invalidFunc') !== -1;
950
- });
951
- });
952
-
953
- // https://github.com/goto100/xpath/issues/32
954
- it('should support the contains() function on attributes', () => {
955
- var doc = parseXml("<books><book title='Harry Potter and the Philosopher\"s Stone' /><book title='Harry Potter and the Chamber of Secrets' /></books>"),
956
- andTheBooks = xpath.select("/books/book[contains(@title, ' ')]", doc),
957
- secretBooks = xpath.select("/books/book[contains(@title, 'Secrets')]", doc);
958
-
959
- assert.strictEqual(andTheBooks.length, 2);
960
- assert.strictEqual(secretBooks.length, 1);
961
- });
962
-
963
- it('should support builtin functions', () => {
964
- var translated = xpath.parse('translate("hello", "lhho", "yHb")').evaluateString();
965
-
966
- assert.strictEqual('Heyy', translated);
967
-
968
- var characters = parseXml('<characters><character>Harry</character><character>Ron</character><character>Hermione</character></characters>');
969
-
970
- var firstTwo = xpath.parse('/characters/character[position() <= 2]').select({ node: characters });
971
-
972
- assert.strictEqual(2, firstTwo.length);
973
- assert.strictEqual('Harry', firstTwo[0].textContent);
974
- assert.strictEqual('Ron', firstTwo[1].textContent);
975
-
976
- var last = xpath.parse('/characters/character[last()]').select({ node: characters });
977
-
978
- assert.strictEqual(1, last.length);
979
- assert.strictEqual('Hermione', last[0].textContent);
980
- });
981
- });
982
-
983
- describe('.parse()', () => {
984
- it('should correctly set types on path steps', () => {
985
- const parsed = xpath.parse('./my:*/my:name');
986
-
987
- const steps = parsed.expression.expression.locationPath.steps;
988
-
989
- const step0 = steps[0];
990
-
991
- assert.strictEqual(xpath.NodeTest.NODE, step0.nodeTest.type);
992
-
993
- const step1 = steps[1];
994
-
995
- assert.strictEqual(xpath.NodeTest.NAMETESTPREFIXANY, step1.nodeTest.type);
996
- assert.strictEqual('my', step1.nodeTest.prefix);
997
-
998
- const step2 = steps[2];
999
-
1000
- assert.strictEqual(xpath.NodeTest.NAMETESTQNAME, step2.nodeTest.type);
1001
- assert.strictEqual('my', step2.nodeTest.prefix);
1002
- assert.strictEqual('name', step2.nodeTest.localName);
1003
- assert.strictEqual('my:name', step2.nodeTest.name);
1004
- });
1005
- })
1006
-
1007
- describe('miscellaneous', () => {
1008
- it('should create XPathExceptions that act like Errors', () => {
1009
- try {
1010
- xpath.evaluate('1', null, null, null);
1011
- assert.fail(null, null, 'evaluate() should throw exception');
1012
- } catch (e) {
1013
- assert.ok('code' in e, 'must have a code');
1014
- assert.ok('stack' in e, 'must have a stack');
1015
- }
1016
- });
1017
-
1018
- it('should expose custom types', () => {
1019
- assert.ok(xpath.XPath, "xpath.XPath");
1020
- assert.ok(xpath.XPathParser, "xpath.XPathParser");
1021
- assert.ok(xpath.XPathResult, "xpath.XPathResult");
1022
-
1023
- assert.ok(xpath.Step, "xpath.Step");
1024
- assert.ok(xpath.NodeTest, "xpath.NodeTest");
1025
-
1026
- assert.ok(xpath.OrOperation, "xpath.OrOperation");
1027
- assert.ok(xpath.AndOperation, "xpath.AndOperation");
1028
-
1029
- assert.ok(xpath.BarOperation, "xpath.BarOperation");
1030
-
1031
- assert.ok(xpath.NamespaceResolver, "xpath.NamespaceResolver");
1032
- assert.ok(xpath.FunctionResolver, "xpath.FunctionResolver");
1033
- assert.ok(xpath.VariableResolver, "xpath.VariableResolver");
1034
-
1035
- assert.ok(xpath.Utilities, "xpath.Utilities");
1036
-
1037
- assert.ok(xpath.XPathContext, "xpath.XPathContext");
1038
- assert.ok(xpath.XNodeSet, "xpath.XNodeSet");
1039
- assert.ok(xpath.XBoolean, "xpath.XBoolean");
1040
- assert.ok(xpath.XString, "xpath.XString");
1041
- assert.ok(xpath.XNumber, "xpath.XNumber");
1042
- });
1043
-
1044
- it('should work with nodes created using DOM1 createElement()', () => {
1045
- var doc = parseXml('<book />');
1046
-
1047
- doc.documentElement.appendChild(doc.createElement('characters'));
1048
-
1049
- assert.ok(xpath.select1('/book/characters', doc));
1050
-
1051
- assert.strictEqual(xpath.select1('local-name(/book/characters)', doc), 'characters');
1052
- });
1053
- });
1054
-
1055
- describe('Node type tests', () => {
1056
- it('should correctly identify a Node of type Element', () => {
1057
- var doc = parseXml('<book />');
1058
- var element = doc.createElement('characters');
1059
-
1060
- assert.ok(xpath.isNodeLike(element));
1061
- assert.ok(xpath.isElement(element));
1062
- assert.ok(!xpath.isAttribute(doc));
1063
- });
1064
-
1065
- it('should correctly identify a Node of type Attribute', () => {
1066
- var doc = parseXml('<book />');
1067
- var attribute = doc.createAttribute('name');
1068
-
1069
- assert.ok(xpath.isNodeLike(attribute));
1070
- assert.ok(xpath.isAttribute(attribute));
1071
- assert.ok(!xpath.isTextNode(attribute));
1072
- });
1073
-
1074
- it('should correctly identify a Node of type Text', () => {
1075
- var doc = parseXml('<book />');
1076
- var text = doc.createTextNode('Harry Potter');
1077
-
1078
- assert.ok(xpath.isNodeLike(text));
1079
- assert.ok(xpath.isTextNode(text));
1080
- assert.ok(!xpath.isCDATASection(text));
1081
- });
1082
-
1083
- it('should correctly identify a Node of type CDATASection', () => {
1084
- var doc = parseXml('<book />');
1085
- var cdata = doc.createCDATASection('Harry Potter');
1086
-
1087
- assert.ok(xpath.isNodeLike(cdata));
1088
- assert.ok(xpath.isCDATASection(cdata));
1089
- assert.ok(!xpath.isProcessingInstruction(cdata));
1090
- });
1091
-
1092
- it('should correctly identify a Node of type ProcessingInstruction', () => {
1093
- var doc = parseXml('<book />');
1094
- var pi = doc.createProcessingInstruction('xml-stylesheet', 'href="mycss.css" type="text/css"');
1095
-
1096
- // This test fails due to a bug in @xmldom/xmldom@0.8.8
1097
- // assert.ok(xpath.isNodeLike(pi));
1098
- assert.ok(xpath.isProcessingInstruction(pi));
1099
- assert.ok(!xpath.isComment(pi));
1100
- });
1101
-
1102
- it('should correctly identify a Node of type Comment', () => {
1103
- var doc = parseXml('<book />');
1104
- var comment = doc.createComment('Harry Potter');
1105
-
1106
- assert.ok(xpath.isNodeLike(comment));
1107
- assert.ok(xpath.isComment(comment));
1108
- assert.ok(!xpath.isDocumentNode(comment));
1109
- });
1110
-
1111
- it('should correctly identify a Node of type Document', () => {
1112
- var doc = parseXml('<book />');
1113
-
1114
- assert.ok(xpath.isNodeLike(doc));
1115
- assert.ok(xpath.isDocumentNode(doc));
1116
- assert.ok(!xpath.isDocumentTypeNode(doc));
1117
- });
1118
-
1119
- it('should correctly identify a Node of type DocumentType', () => {
1120
- var doc = parseXml('<book />');
1121
- var doctype = doc.implementation.createDocumentType('book', null, null);
1122
-
1123
- assert.ok(xpath.isNodeLike(doctype));
1124
- assert.ok(xpath.isDocumentTypeNode(doctype));
1125
- assert.ok(!xpath.isDocumentFragment(doctype));
1126
- });
1127
-
1128
- it('should correctly identify a Node of type DocumentFragment', () => {
1129
- var doc = parseXml('<book />');
1130
- var fragment = doc.createDocumentFragment();
1131
-
1132
- assert.ok(xpath.isNodeLike(fragment));
1133
- assert.ok(xpath.isDocumentFragment(fragment));
1134
- assert.ok(!xpath.isElement(fragment));
1135
- });
1136
-
1137
- it('should not identify a string as a Node', () => {
1138
- assert.ok(!xpath.isNodeLike('Harry Potter'));
1139
- });
1140
-
1141
- it('should not identify a number as a Node', () => {
1142
- assert.ok(!xpath.isNodeLike(45));
1143
- });
1144
-
1145
- it('should not identify a boolean as a Node', () => {
1146
- assert.ok(!xpath.isNodeLike(true));
1147
- });
1148
-
1149
- it('should not identify null as a Node', () => {
1150
- assert.ok(!xpath.isNodeLike(null));
1151
- });
1152
-
1153
- it('should not identify undefined as a Node', () => {
1154
- assert.ok(!xpath.isNodeLike(undefined));
1155
- });
1156
-
1157
- it('should not identify an array as a Node', () => {
1158
- assert.ok(!xpath.isNodeLike([]));
1159
- });
1160
-
1161
- it('should identify an array of Nodes as such', () => {
1162
- var doc = parseXml('<book />');
1163
- var fragment = doc.createDocumentFragment();
1164
- var nodes = [doc, fragment];
1165
-
1166
- assert.ok(xpath.isArrayOfNodes(nodes));
1167
- assert.ok(!xpath.isNodeLike(nodes));
1168
- });
1169
-
1170
- it('should not identify an array of non-Nodes as an array of Nodes', () => {
1171
- var nodes = ['Harry Potter', 45];
1172
-
1173
- assert.ok(!xpath.isArrayOfNodes(nodes));
1174
- assert.ok(!xpath.isNodeLike(nodes));
1175
- });
1176
-
1177
- it('should not identify an array of mixed Nodes and non-Nodes as an array of Nodes', () => {
1178
- var doc = parseXml('<book />');
1179
- var fragment = doc.createDocumentFragment();
1180
- var nodes = [doc, fragment, 'Harry Potter'];
1181
-
1182
- assert.ok(!xpath.isArrayOfNodes(nodes));
1183
- assert.ok(!xpath.isNodeLike(nodes));
1184
- });
1185
- });
1186
- });