xslt-processor 3.4.0 → 4.1.0

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 (265) hide show
  1. package/README.md +48 -0
  2. package/index.d.mts +861 -0
  3. package/index.d.ts +861 -4
  4. package/index.js +4570 -12
  5. package/index.js.map +1 -1
  6. package/index.mjs +4534 -0
  7. package/index.mjs.map +1 -0
  8. package/package.json +23 -18
  9. package/umd/xslt-processor.global.js +9 -0
  10. package/umd/xslt-processor.global.js.map +1 -0
  11. package/constants.d.ts +0 -12
  12. package/constants.js +0 -17
  13. package/constants.js.map +0 -1
  14. package/dom/functions.d.ts +0 -14
  15. package/dom/functions.js +0 -57
  16. package/dom/functions.js.map +0 -1
  17. package/dom/index.d.ts +0 -7
  18. package/dom/index.js +0 -24
  19. package/dom/index.js.map +0 -1
  20. package/dom/util.d.ts +0 -7
  21. package/dom/util.js +0 -43
  22. package/dom/util.js.map +0 -1
  23. package/dom/xbrowser-node.d.ts +0 -9
  24. package/dom/xbrowser-node.js +0 -32
  25. package/dom/xbrowser-node.js.map +0 -1
  26. package/dom/xdocument.d.ts +0 -16
  27. package/dom/xdocument.js +0 -74
  28. package/dom/xdocument.js.map +0 -1
  29. package/dom/xml-functions.d.ts +0 -73
  30. package/dom/xml-functions.js +0 -402
  31. package/dom/xml-functions.js.map +0 -1
  32. package/dom/xml-output-options.d.ts +0 -6
  33. package/dom/xml-output-options.js +0 -3
  34. package/dom/xml-output-options.js.map +0 -1
  35. package/dom/xml-parser.d.ts +0 -47
  36. package/dom/xml-parser.js +0 -308
  37. package/dom/xml-parser.js.map +0 -1
  38. package/dom/xmltoken.d.ts +0 -12
  39. package/dom/xmltoken.js +0 -102
  40. package/dom/xmltoken.js.map +0 -1
  41. package/dom/xnode.d.ts +0 -73
  42. package/dom/xnode.js +0 -451
  43. package/dom/xnode.js.map +0 -1
  44. package/test-without-jest.d.ts +0 -1
  45. package/test-without-jest.js +0 -63
  46. package/test-without-jest.js.map +0 -1
  47. package/umd/constants.d.ts +0 -12
  48. package/umd/dom/functions.d.ts +0 -14
  49. package/umd/dom/index.d.ts +0 -7
  50. package/umd/dom/util.d.ts +0 -7
  51. package/umd/dom/xbrowser-node.d.ts +0 -9
  52. package/umd/dom/xdocument.d.ts +0 -16
  53. package/umd/dom/xml-functions.d.ts +0 -73
  54. package/umd/dom/xml-output-options.d.ts +0 -6
  55. package/umd/dom/xml-parser.d.ts +0 -47
  56. package/umd/dom/xmltoken.d.ts +0 -12
  57. package/umd/dom/xnode.d.ts +0 -73
  58. package/umd/index.d.ts +0 -4
  59. package/umd/test-without-jest.d.ts +0 -1
  60. package/umd/xpath/common-function.d.ts +0 -8
  61. package/umd/xpath/expr-context.d.ts +0 -116
  62. package/umd/xpath/expressions/binary-expr.d.ts +0 -11
  63. package/umd/xpath/expressions/expression.d.ts +0 -4
  64. package/umd/xpath/expressions/filter-expr.d.ts +0 -9
  65. package/umd/xpath/expressions/function-call-expr.d.ts +0 -12
  66. package/umd/xpath/expressions/index.d.ts +0 -13
  67. package/umd/xpath/expressions/literal-expr.d.ts +0 -7
  68. package/umd/xpath/expressions/location-expr.d.ts +0 -15
  69. package/umd/xpath/expressions/number-expr.d.ts +0 -7
  70. package/umd/xpath/expressions/path-expr.d.ts +0 -9
  71. package/umd/xpath/expressions/predicate-expr.d.ts +0 -8
  72. package/umd/xpath/expressions/step-expr.d.ts +0 -25
  73. package/umd/xpath/expressions/token-expr.d.ts +0 -7
  74. package/umd/xpath/expressions/unary-minus-expr.d.ts +0 -8
  75. package/umd/xpath/expressions/union-expr.d.ts +0 -9
  76. package/umd/xpath/expressions/variable-expr.d.ts +0 -7
  77. package/umd/xpath/functions/index.d.ts +0 -4
  78. package/umd/xpath/functions/internal-functions.d.ts +0 -2
  79. package/umd/xpath/functions/non-standard.d.ts +0 -12
  80. package/umd/xpath/functions/standard-20.d.ts +0 -5
  81. package/umd/xpath/functions/standard.d.ts +0 -40
  82. package/umd/xpath/functions/xslt-specific.d.ts +0 -3
  83. package/umd/xpath/grammar-rule-candidate.d.ts +0 -8
  84. package/umd/xpath/index.d.ts +0 -3
  85. package/umd/xpath/match-resolver.d.ts +0 -55
  86. package/umd/xpath/node-tests/index.d.ts +0 -8
  87. package/umd/xpath/node-tests/node-test-any.d.ts +0 -6
  88. package/umd/xpath/node-tests/node-test-comment.d.ts +0 -6
  89. package/umd/xpath/node-tests/node-test-element-or-attribute.d.ts +0 -6
  90. package/umd/xpath/node-tests/node-test-name.d.ts +0 -10
  91. package/umd/xpath/node-tests/node-test-nc.d.ts +0 -9
  92. package/umd/xpath/node-tests/node-test-pi.d.ts +0 -8
  93. package/umd/xpath/node-tests/node-test-text.d.ts +0 -6
  94. package/umd/xpath/node-tests/node-test.d.ts +0 -5
  95. package/umd/xpath/tokens.d.ts +0 -62
  96. package/umd/xpath/values/boolean-value.d.ts +0 -11
  97. package/umd/xpath/values/index.d.ts +0 -5
  98. package/umd/xpath/values/node-set-value.d.ts +0 -11
  99. package/umd/xpath/values/node-value.d.ts +0 -7
  100. package/umd/xpath/values/number-value.d.ts +0 -11
  101. package/umd/xpath/values/string-value.d.ts +0 -11
  102. package/umd/xpath/xpath-grammar-rules.d.ts +0 -68
  103. package/umd/xpath/xpath-token-rule.d.ts +0 -7
  104. package/umd/xpath/xpath.d.ts +0 -174
  105. package/umd/xpathdebug.d.ts +0 -2
  106. package/umd/xslt/index.d.ts +0 -3
  107. package/umd/xslt/xslt-decimal-format-settings.d.ts +0 -28
  108. package/umd/xslt/xslt-options.d.ts +0 -7
  109. package/umd/xslt/xslt-parameter.d.ts +0 -5
  110. package/umd/xslt/xslt.d.ts +0 -275
  111. package/umd/xslt-processor.js +0 -2
  112. package/umd/xslt-processor.js.map +0 -1
  113. package/xpath/common-function.d.ts +0 -8
  114. package/xpath/common-function.js +0 -32
  115. package/xpath/common-function.js.map +0 -1
  116. package/xpath/expr-context.d.ts +0 -116
  117. package/xpath/expr-context.js +0 -191
  118. package/xpath/expr-context.js.map +0 -1
  119. package/xpath/expressions/binary-expr.d.ts +0 -11
  120. package/xpath/expressions/binary-expr.js +0 -166
  121. package/xpath/expressions/binary-expr.js.map +0 -1
  122. package/xpath/expressions/expression.d.ts +0 -4
  123. package/xpath/expressions/expression.js +0 -10
  124. package/xpath/expressions/expression.js.map +0 -1
  125. package/xpath/expressions/filter-expr.d.ts +0 -9
  126. package/xpath/expressions/filter-expr.js +0 -53
  127. package/xpath/expressions/filter-expr.js.map +0 -1
  128. package/xpath/expressions/function-call-expr.d.ts +0 -12
  129. package/xpath/expressions/function-call-expr.js +0 -97
  130. package/xpath/expressions/function-call-expr.js.map +0 -1
  131. package/xpath/expressions/index.d.ts +0 -13
  132. package/xpath/expressions/index.js +0 -30
  133. package/xpath/expressions/index.js.map +0 -1
  134. package/xpath/expressions/literal-expr.d.ts +0 -7
  135. package/xpath/expressions/literal-expr.js +0 -34
  136. package/xpath/expressions/literal-expr.js.map +0 -1
  137. package/xpath/expressions/location-expr.d.ts +0 -15
  138. package/xpath/expressions/location-expr.js +0 -99
  139. package/xpath/expressions/location-expr.js.map +0 -1
  140. package/xpath/expressions/number-expr.d.ts +0 -7
  141. package/xpath/expressions/number-expr.js +0 -34
  142. package/xpath/expressions/number-expr.js.map +0 -1
  143. package/xpath/expressions/path-expr.d.ts +0 -9
  144. package/xpath/expressions/path-expr.js +0 -52
  145. package/xpath/expressions/path-expr.js.map +0 -1
  146. package/xpath/expressions/predicate-expr.d.ts +0 -8
  147. package/xpath/expressions/predicate-expr.js +0 -41
  148. package/xpath/expressions/predicate-expr.js.map +0 -1
  149. package/xpath/expressions/step-expr.d.ts +0 -25
  150. package/xpath/expressions/step-expr.js +0 -281
  151. package/xpath/expressions/step-expr.js.map +0 -1
  152. package/xpath/expressions/token-expr.d.ts +0 -7
  153. package/xpath/expressions/token-expr.js +0 -34
  154. package/xpath/expressions/token-expr.js.map +0 -1
  155. package/xpath/expressions/unary-minus-expr.d.ts +0 -8
  156. package/xpath/expressions/unary-minus-expr.js +0 -34
  157. package/xpath/expressions/unary-minus-expr.js.map +0 -1
  158. package/xpath/expressions/union-expr.d.ts +0 -9
  159. package/xpath/expressions/union-expr.js +0 -51
  160. package/xpath/expressions/union-expr.js.map +0 -1
  161. package/xpath/expressions/variable-expr.d.ts +0 -7
  162. package/xpath/expressions/variable-expr.js +0 -33
  163. package/xpath/expressions/variable-expr.js.map +0 -1
  164. package/xpath/functions/index.d.ts +0 -4
  165. package/xpath/functions/index.js +0 -21
  166. package/xpath/functions/index.js.map +0 -1
  167. package/xpath/functions/internal-functions.d.ts +0 -2
  168. package/xpath/functions/internal-functions.js +0 -22
  169. package/xpath/functions/internal-functions.js.map +0 -1
  170. package/xpath/functions/non-standard.d.ts +0 -12
  171. package/xpath/functions/non-standard.js +0 -45
  172. package/xpath/functions/non-standard.js.map +0 -1
  173. package/xpath/functions/standard-20.d.ts +0 -5
  174. package/xpath/functions/standard-20.js +0 -26
  175. package/xpath/functions/standard-20.js.map +0 -1
  176. package/xpath/functions/standard.d.ts +0 -40
  177. package/xpath/functions/standard.js +0 -442
  178. package/xpath/functions/standard.js.map +0 -1
  179. package/xpath/functions/xslt-specific.d.ts +0 -3
  180. package/xpath/functions/xslt-specific.js +0 -14
  181. package/xpath/functions/xslt-specific.js.map +0 -1
  182. package/xpath/grammar-rule-candidate.d.ts +0 -8
  183. package/xpath/grammar-rule-candidate.js +0 -3
  184. package/xpath/grammar-rule-candidate.js.map +0 -1
  185. package/xpath/index.d.ts +0 -3
  186. package/xpath/index.js +0 -20
  187. package/xpath/index.js.map +0 -1
  188. package/xpath/match-resolver.d.ts +0 -55
  189. package/xpath/match-resolver.js +0 -137
  190. package/xpath/match-resolver.js.map +0 -1
  191. package/xpath/node-tests/index.d.ts +0 -8
  192. package/xpath/node-tests/index.js +0 -18
  193. package/xpath/node-tests/index.js.map +0 -1
  194. package/xpath/node-tests/node-test-any.d.ts +0 -6
  195. package/xpath/node-tests/node-test-any.js +0 -15
  196. package/xpath/node-tests/node-test-any.js.map +0 -1
  197. package/xpath/node-tests/node-test-comment.d.ts +0 -6
  198. package/xpath/node-tests/node-test-comment.js +0 -15
  199. package/xpath/node-tests/node-test-comment.js.map +0 -1
  200. package/xpath/node-tests/node-test-element-or-attribute.d.ts +0 -6
  201. package/xpath/node-tests/node-test-element-or-attribute.js +0 -16
  202. package/xpath/node-tests/node-test-element-or-attribute.js.map +0 -1
  203. package/xpath/node-tests/node-test-name.d.ts +0 -10
  204. package/xpath/node-tests/node-test-name.js +0 -39
  205. package/xpath/node-tests/node-test-name.js.map +0 -1
  206. package/xpath/node-tests/node-test-nc.d.ts +0 -9
  207. package/xpath/node-tests/node-test-nc.js +0 -17
  208. package/xpath/node-tests/node-test-nc.js.map +0 -1
  209. package/xpath/node-tests/node-test-pi.d.ts +0 -8
  210. package/xpath/node-tests/node-test-pi.js +0 -17
  211. package/xpath/node-tests/node-test-pi.js.map +0 -1
  212. package/xpath/node-tests/node-test-text.d.ts +0 -6
  213. package/xpath/node-tests/node-test-text.js +0 -15
  214. package/xpath/node-tests/node-test-text.js.map +0 -1
  215. package/xpath/node-tests/node-test.d.ts +0 -5
  216. package/xpath/node-tests/node-test.js +0 -3
  217. package/xpath/node-tests/node-test.js.map +0 -1
  218. package/xpath/tokens.d.ts +0 -62
  219. package/xpath/tokens.js +0 -301
  220. package/xpath/tokens.js.map +0 -1
  221. package/xpath/values/boolean-value.d.ts +0 -11
  222. package/xpath/values/boolean-value.js +0 -24
  223. package/xpath/values/boolean-value.js.map +0 -1
  224. package/xpath/values/index.d.ts +0 -5
  225. package/xpath/values/index.js +0 -47
  226. package/xpath/values/index.js.map +0 -1
  227. package/xpath/values/node-set-value.d.ts +0 -11
  228. package/xpath/values/node-set-value.js +0 -28
  229. package/xpath/values/node-set-value.js.map +0 -1
  230. package/xpath/values/node-value.d.ts +0 -7
  231. package/xpath/values/node-value.js +0 -3
  232. package/xpath/values/node-value.js.map +0 -1
  233. package/xpath/values/number-value.d.ts +0 -11
  234. package/xpath/values/number-value.js +0 -24
  235. package/xpath/values/number-value.js.map +0 -1
  236. package/xpath/values/string-value.d.ts +0 -11
  237. package/xpath/values/string-value.js +0 -24
  238. package/xpath/values/string-value.js.map +0 -1
  239. package/xpath/xpath-grammar-rules.d.ts +0 -68
  240. package/xpath/xpath-grammar-rules.js +0 -75
  241. package/xpath/xpath-grammar-rules.js.map +0 -1
  242. package/xpath/xpath-token-rule.d.ts +0 -7
  243. package/xpath/xpath-token-rule.js +0 -3
  244. package/xpath/xpath-token-rule.js.map +0 -1
  245. package/xpath/xpath.d.ts +0 -174
  246. package/xpath/xpath.js +0 -912
  247. package/xpath/xpath.js.map +0 -1
  248. package/xpathdebug.d.ts +0 -2
  249. package/xpathdebug.js +0 -188
  250. package/xpathdebug.js.map +0 -1
  251. package/xslt/index.d.ts +0 -3
  252. package/xslt/index.js +0 -20
  253. package/xslt/index.js.map +0 -1
  254. package/xslt/xslt-decimal-format-settings.d.ts +0 -28
  255. package/xslt/xslt-decimal-format-settings.js +0 -3
  256. package/xslt/xslt-decimal-format-settings.js.map +0 -1
  257. package/xslt/xslt-options.d.ts +0 -7
  258. package/xslt/xslt-options.js +0 -3
  259. package/xslt/xslt-options.js.map +0 -1
  260. package/xslt/xslt-parameter.d.ts +0 -5
  261. package/xslt/xslt-parameter.js +0 -3
  262. package/xslt/xslt-parameter.js.map +0 -1
  263. package/xslt/xslt.d.ts +0 -275
  264. package/xslt/xslt.js +0 -1329
  265. package/xslt/xslt.js.map +0 -1
@@ -1,402 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.xmlValue = xmlValue;
7
- exports.xmlValueLegacyBehavior = xmlValueLegacyBehavior;
8
- exports.xmlText = xmlText;
9
- exports.xmlTransformedText = xmlTransformedText;
10
- exports.xmlUnescapeText = xmlUnescapeText;
11
- exports.xmlEscapeText = xmlEscapeText;
12
- exports.xmlGetAttribute = xmlGetAttribute;
13
- exports.xmlOwnerDocument = xmlOwnerDocument;
14
- var he_1 = __importDefault(require("he"));
15
- var constants_1 = require("../constants");
16
- var functions_1 = require("./functions");
17
- /**
18
- * Returns the text value of a node; for nodes without children this
19
- * is the nodeValue, for nodes with children this is the concatenation
20
- * of the value of all children. Browser-specific optimizations are used by
21
- * default; they can be disabled by passing "true" in as the second parameter.
22
- * @param node The Node (not exactly a `XNode` here).
23
- * @param disallowBrowserSpecificOptimization A boolean, to avoid browser optimization.
24
- * @returns The XML value as a string.
25
- */
26
- function xmlValue(node, disallowBrowserSpecificOptimization) {
27
- if (disallowBrowserSpecificOptimization === void 0) { disallowBrowserSpecificOptimization = false; }
28
- if (!node) {
29
- return '';
30
- }
31
- var ret = '';
32
- switch (node.nodeType) {
33
- case constants_1.DOM_DOCUMENT_TYPE_NODE:
34
- return "<!DOCTYPE ".concat(node.nodeValue, ">");
35
- case constants_1.DOM_TEXT_NODE:
36
- case constants_1.DOM_CDATA_SECTION_NODE:
37
- case constants_1.DOM_ATTRIBUTE_NODE:
38
- return node.nodeValue;
39
- case constants_1.DOM_ELEMENT_NODE:
40
- case constants_1.DOM_DOCUMENT_NODE:
41
- case constants_1.DOM_DOCUMENT_FRAGMENT_NODE:
42
- if (!disallowBrowserSpecificOptimization) {
43
- // Only returns something if node has either `innerText` or `textContent` (not an XNode).
44
- // IE, Safari, Opera, and friends (`innerText`)
45
- var browserNode = node;
46
- var innerText = browserNode.innerText;
47
- if (innerText !== undefined) {
48
- return innerText;
49
- }
50
- // Firefox (`textContent`)
51
- var textContent = browserNode.textContent;
52
- if (textContent !== undefined) {
53
- return textContent;
54
- }
55
- }
56
- if (node.transformedChildNodes.length > 0) {
57
- var transformedTextNodes = node.transformedChildNodes.filter(function (n) { return n.nodeType !== constants_1.DOM_ATTRIBUTE_NODE; });
58
- for (var i = 0; i < transformedTextNodes.length; ++i) {
59
- ret += xmlValue(transformedTextNodes[i]);
60
- }
61
- }
62
- else {
63
- var textNodes = node.childNodes.filter(function (n) { return n.nodeType !== constants_1.DOM_ATTRIBUTE_NODE; });
64
- for (var i = 0; i < textNodes.length; ++i) {
65
- ret += xmlValue(textNodes[i]);
66
- }
67
- }
68
- return ret;
69
- }
70
- }
71
- /**
72
- * The older version to obtain a XML value from a node.
73
- * For now, this form is only used to get text from attribute nodes,
74
- * and it should be removed in future versions.
75
- * @param node The attribute node.
76
- * @param disallowBrowserSpecificOptimization A boolean, to avoid browser optimization.
77
- * @returns The XML value as a string.
78
- */
79
- function xmlValueLegacyBehavior(node, disallowBrowserSpecificOptimization) {
80
- if (disallowBrowserSpecificOptimization === void 0) { disallowBrowserSpecificOptimization = false; }
81
- if (!node) {
82
- return '';
83
- }
84
- var returnedXmlString = '';
85
- switch (node.nodeType) {
86
- case constants_1.DOM_ATTRIBUTE_NODE:
87
- case constants_1.DOM_TEXT_NODE:
88
- returnedXmlString += node.nodeValue;
89
- break;
90
- case constants_1.DOM_CDATA_SECTION_NODE:
91
- returnedXmlString += node.nodeValue;
92
- break;
93
- case constants_1.DOM_DOCUMENT_NODE:
94
- case constants_1.DOM_DOCUMENT_FRAGMENT_NODE:
95
- case constants_1.DOM_ELEMENT_NODE:
96
- if (!disallowBrowserSpecificOptimization) {
97
- // IE, Safari, Opera, and friends
98
- var browserNode = node;
99
- var innerText = browserNode.innerText;
100
- if (innerText !== undefined) {
101
- return innerText;
102
- }
103
- // Firefox
104
- var textContent = browserNode.textContent;
105
- if (textContent !== undefined) {
106
- return textContent;
107
- }
108
- }
109
- var len = node.transformedChildNodes.length;
110
- for (var i = 0; i < len; ++i) {
111
- returnedXmlString += xmlValue(node.transformedChildNodes[i]);
112
- }
113
- break;
114
- }
115
- return returnedXmlString;
116
- }
117
- /**
118
- * Returns the representation of a node as XML text.
119
- * In general it is not used by XSLT, that uses `xmlTransformedText` instead.
120
- * @param {XNode} node The starting node.
121
- * @param {XmlOutputOptions} options XML output options.
122
- * @returns The XML string.
123
- * @see xmlTransformedText
124
- */
125
- function xmlText(node, options) {
126
- if (options === void 0) { options = {
127
- cData: true,
128
- escape: true,
129
- selfClosingTags: true,
130
- outputMethod: 'xml'
131
- }; }
132
- var buffer = [];
133
- xmlTextRecursive(node, buffer, options);
134
- return buffer.join('');
135
- }
136
- /**
137
- * The recursive logic to transform a node in XML text.
138
- * It can be considered legacy, since it does not work with transformed nodes, and
139
- * probably will be removed in the future.
140
- * @param {XNode} node The node.
141
- * @param {string[]} buffer The buffer, that will represent the transformed XML text.
142
- * @param {XmlOutputOptions} options XML output options.
143
- */
144
- function xmlTextRecursive(node, buffer, options) {
145
- if (node.nodeType == constants_1.DOM_TEXT_NODE) {
146
- buffer.push(xmlEscapeText(node.nodeValue));
147
- }
148
- else if (node.nodeType == constants_1.DOM_CDATA_SECTION_NODE) {
149
- if (options.cData) {
150
- buffer.push(node.nodeValue);
151
- }
152
- else {
153
- buffer.push("<![CDATA[".concat(node.nodeValue, "]]>"));
154
- }
155
- }
156
- else if (node.nodeType == constants_1.DOM_COMMENT_NODE) {
157
- buffer.push("<!--".concat(node.nodeValue, "-->"));
158
- }
159
- else if (node.nodeType == constants_1.DOM_ELEMENT_NODE) {
160
- buffer.push("<".concat(xmlFullNodeName(node)));
161
- for (var i = 0; i < node.childNodes.length; ++i) {
162
- var childNode = node.childNodes[i];
163
- if (!childNode || childNode.nodeType !== constants_1.DOM_ATTRIBUTE_NODE) {
164
- continue;
165
- }
166
- if (childNode.nodeName && childNode.nodeValue) {
167
- buffer.push(" ".concat(xmlFullNodeName(childNode), "=\"").concat(xmlEscapeAttr(childNode.nodeValue), "\""));
168
- }
169
- }
170
- if (node.childNodes.length === 0) {
171
- if (options.selfClosingTags ||
172
- (options.outputMethod === 'html' && ['hr', 'link'].includes(node.nodeName))) {
173
- buffer.push('/>');
174
- }
175
- else {
176
- buffer.push("></".concat(xmlFullNodeName(node), ">"));
177
- }
178
- }
179
- else {
180
- buffer.push('>');
181
- for (var i = 0; i < node.childNodes.length; ++i) {
182
- xmlTextRecursive(node.childNodes[i], buffer, options);
183
- }
184
- buffer.push("</".concat(xmlFullNodeName(node), ">"));
185
- }
186
- }
187
- else if (node.nodeType == constants_1.DOM_DOCUMENT_NODE || node.nodeType == constants_1.DOM_DOCUMENT_FRAGMENT_NODE) {
188
- for (var i = 0; i < node.childNodes.length; ++i) {
189
- xmlTextRecursive(node.childNodes[i], buffer, options);
190
- }
191
- }
192
- }
193
- /**
194
- * Returns the representation of a node as XML text.
195
- * @param {XNode} node The starting node.
196
- * @param {XmlOutputOptions} options XML output options.
197
- * @returns The XML string.
198
- */
199
- function xmlTransformedText(node, options) {
200
- if (options === void 0) { options = {
201
- cData: true,
202
- escape: true,
203
- selfClosingTags: true,
204
- outputMethod: 'xml'
205
- }; }
206
- var buffer = [];
207
- xmlTransformedTextRecursive(node, buffer, options);
208
- return buffer.join('');
209
- }
210
- /**
211
- * The recursive logic to transform a node in XML text.
212
- * @param {XNode} node The node.
213
- * @param {string[]} buffer The buffer, that will represent the transformed XML text.
214
- * @param {XmlOutputOptions} options XML output options.
215
- */
216
- function xmlTransformedTextRecursive(node, buffer, options) {
217
- if (node.visited)
218
- return;
219
- var nodeType = node.transformedNodeType || node.nodeType;
220
- var nodeValue = node.transformedNodeValue || node.nodeValue;
221
- if (nodeType === constants_1.DOM_TEXT_NODE) {
222
- if (node.transformedNodeValue && node.transformedNodeValue.trim() !== '') {
223
- var finalText = node.escape && options.escape ? xmlEscapeText(node.transformedNodeValue) : xmlUnescapeText(node.transformedNodeValue);
224
- buffer.push(finalText);
225
- }
226
- }
227
- else if (nodeType === constants_1.DOM_CDATA_SECTION_NODE) {
228
- if (options.cData) {
229
- buffer.push(xmlEscapeText(nodeValue));
230
- }
231
- else {
232
- buffer.push("<![CDATA[".concat(nodeValue, "]]>"));
233
- }
234
- }
235
- else if (nodeType == constants_1.DOM_COMMENT_NODE) {
236
- buffer.push("<!-- ".concat(nodeValue, " -->"));
237
- }
238
- else if (nodeType == constants_1.DOM_ELEMENT_NODE) {
239
- // If node didn't have a transformed name, but its children
240
- // had transformations, children should be present at output.
241
- // This is called here "muted logic".
242
- if (node.transformedNodeName !== null && node.transformedNodeName !== undefined) {
243
- xmlElementLogicTrivial(node, buffer, options);
244
- }
245
- else {
246
- xmlElementLogicMuted(node, buffer, options);
247
- }
248
- }
249
- else if (nodeType === constants_1.DOM_DOCUMENT_NODE || nodeType === constants_1.DOM_DOCUMENT_FRAGMENT_NODE) {
250
- var childNodes = node.transformedChildNodes.concat(node.childNodes);
251
- childNodes.sort(function (a, b) { return a.siblingPosition - b.siblingPosition; });
252
- for (var i = 0; i < childNodes.length; ++i) {
253
- xmlTransformedTextRecursive(childNodes[i], buffer, options);
254
- }
255
- }
256
- node.visited = true;
257
- }
258
- /**
259
- * XML element output, trivial logic.
260
- * @param node The XML node.
261
- * @param buffer The XML buffer.
262
- * @param cdata If using CDATA configuration.
263
- */
264
- function xmlElementLogicTrivial(node, buffer, options) {
265
- buffer.push("<".concat(xmlFullNodeName(node)));
266
- var attributes = node.transformedChildNodes.filter(function (n) { return n.nodeType === constants_1.DOM_ATTRIBUTE_NODE; });
267
- if (attributes.length === 0) {
268
- attributes = node.childNodes.filter(function (n) { return n.nodeType === constants_1.DOM_ATTRIBUTE_NODE; });
269
- }
270
- for (var i = 0; i < attributes.length; ++i) {
271
- var attribute = attributes[i];
272
- if (!attribute) {
273
- continue;
274
- }
275
- if (attribute.transformedNodeName && attribute.transformedNodeValue) {
276
- buffer.push(" ".concat(xmlFullNodeName(attribute), "=\"").concat(xmlEscapeAttr(attribute.transformedNodeValue), "\""));
277
- }
278
- }
279
- var childNodes = node.transformedChildNodes.filter(function (n) { return n.nodeType !== constants_1.DOM_ATTRIBUTE_NODE; });
280
- if (childNodes.length === 0) {
281
- childNodes = node.childNodes.filter(function (n) { return n.nodeType !== constants_1.DOM_ATTRIBUTE_NODE; });
282
- }
283
- childNodes = childNodes.sort(function (a, b) { return a.siblingPosition - b.siblingPosition; });
284
- if (childNodes.length === 0) {
285
- if (options.outputMethod === 'html' && ['hr', 'link', 'meta'].includes(node.nodeName)) {
286
- buffer.push('>');
287
- }
288
- else if (options.selfClosingTags) {
289
- buffer.push('/>');
290
- }
291
- else {
292
- buffer.push("></".concat(xmlFullNodeName(node), ">"));
293
- }
294
- }
295
- else {
296
- buffer.push('>');
297
- for (var i = 0; i < childNodes.length; ++i) {
298
- xmlTransformedTextRecursive(childNodes[i], buffer, options);
299
- }
300
- buffer.push("</".concat(xmlFullNodeName(node), ">"));
301
- }
302
- }
303
- /**
304
- * XML element output, muted logic.
305
- * In other words, this element should not be printed, but its
306
- * children can be printed if they have transformed values.
307
- * @param node The XML node.
308
- * @param buffer The XML buffer.
309
- * @param cdata If using CDATA configuration.
310
- */
311
- function xmlElementLogicMuted(node, buffer, options) {
312
- var childNodes = node.transformedChildNodes.length > 0 ? node.transformedChildNodes : node.childNodes;
313
- childNodes = childNodes.sort(function (a, b) { return a.siblingPosition - b.siblingPosition; });
314
- for (var i = 0; i < childNodes.length; ++i) {
315
- xmlTransformedTextRecursive(childNodes[i], buffer, options);
316
- }
317
- }
318
- /**
319
- * Gets the full node name.
320
- * When namespace is set, the node name is `namespace:node`.
321
- * @param node The node.
322
- * @returns The full node name as a string.
323
- */
324
- function xmlFullNodeName(node) {
325
- var nodeName = node.transformedNodeName || node.nodeName;
326
- if (node.transformedPrefix && nodeName.indexOf("".concat(node.transformedPrefix, ":")) != 0) {
327
- return "".concat(node.transformedPrefix, ":").concat(nodeName);
328
- }
329
- return nodeName;
330
- }
331
- /**
332
- * Replaces HTML/XML entities to their literal characters.
333
- * Currently implementing only tag delimiters.
334
- * @param text The text to be transformed.
335
- * @returns The unescaped text.
336
- */
337
- function xmlUnescapeText(text) {
338
- return "".concat(text).replace(/&lt;/g, '<').replace(/&gt;/g, '>');
339
- }
340
- /**
341
- * Escape XML special markup characters: tag delimiter <, >, and entity
342
- * reference start delimiter &. The escaped string can be used in XML
343
- * text portions (i.e. between tags).
344
- * @param s The string to be escaped.
345
- * @returns The escaped string.
346
- */
347
- function xmlEscapeText(s) {
348
- return "".concat(s)
349
- .replace(/&/g, '&amp;')
350
- .replace(/&amp;amp;/g, '&amp;')
351
- .replace(/</g, '&lt;')
352
- .replace(/>/g, '&gt;');
353
- }
354
- /**
355
- * Escape XML special markup characters: tag delimiter, <, >, entity
356
- * reference start delimiter &, and double quotes ("). The escaped string can be
357
- * used in double quoted XML attribute value portions (i.e. in
358
- * attributes within start tags).
359
- * @param s The string to be escaped.
360
- * @returns The escaped string.
361
- */
362
- function xmlEscapeAttr(s) {
363
- return xmlEscapeText(s).replace(/"/g, '&quot;');
364
- }
365
- /**
366
- * Wrapper function to access attribute values of template element
367
- * nodes. Currently this calls he.decode because in some DOM
368
- * implementations the return value of node.getAttributeValue()
369
- * contains unresolved XML entities, although the DOM spec requires
370
- * that entity references are resolved by the DOM.
371
- * @param node TODO
372
- * @param name TODO
373
- * @returns TODO
374
- */
375
- function xmlGetAttribute(node, name) {
376
- // TODO(mesch): This should not be necessary if the DOM is working
377
- // correctly. The DOM is responsible for resolving entities, not the
378
- // application.
379
- var value = (0, functions_1.domGetAttributeValue)(node, name);
380
- if (value) {
381
- return he_1.default.decode(value);
382
- }
383
- return value;
384
- }
385
- /**
386
- * Wrapper function to access the owner document uniformly for document
387
- * and other nodes: for the document node, the owner document is the
388
- * node itself, for all others it's the ownerDocument property.
389
- *
390
- * @param {XNode} node
391
- * @return {XDocument}
392
- */
393
- function xmlOwnerDocument(node) {
394
- if (node === null || node === undefined) {
395
- throw new Error('Node has no valid owner document.');
396
- }
397
- if (node.nodeType === constants_1.DOM_DOCUMENT_NODE) {
398
- return node;
399
- }
400
- return xmlOwnerDocument(node.ownerDocument);
401
- }
402
- //# sourceMappingURL=xml-functions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"xml-functions.js","sourceRoot":"","sources":["../../src/dom/xml-functions.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- export type XmlOutputOptions = {
2
- cData: boolean;
3
- escape: boolean;
4
- selfClosingTags: boolean;
5
- outputMethod: 'xml' | 'html' | 'text' | 'name' | 'xhtml';
6
- };
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=xml-output-options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"xml-output-options.js","sourceRoot":"","sources":["../../src/dom/xml-output-options.ts"],"names":[],"mappings":""}
@@ -1,47 +0,0 @@
1
- import { XDocument } from './xdocument';
2
- /**
3
- * Original author: Steffen Meschkat <mesch@google.com> (the `xmlParse` function,
4
- * now `xmlStrictParse`).
5
- *
6
- * An XML parse and a minimal DOM implementation that just supports
7
- * the subset of the W3C DOM that is used in the XSLT implementation.
8
- */
9
- export declare class XmlParser {
10
- regexEmpty: RegExp;
11
- XML10_TAGNAME_REGEXP: RegExp;
12
- XML10_ATTRIBUTE_REGEXP: RegExp;
13
- XML11_TAGNAME_REGEXP: RegExp;
14
- XML11_ATTRIBUTE_REGEXP: RegExp;
15
- lenientHtmlTags: string[];
16
- /**
17
- * The entry point for this parser.
18
- * It verifies whether the document seems to be HTML.
19
- * HTML is a special case if XML and it should be parsed differently.
20
- * @param xmlOrHtml The XML or HTML content to be parsed.
21
- * @returns A DOM document.
22
- */
23
- xmlParse(xmlOrHtml: string): XDocument;
24
- /**
25
- * Given an XNode, returns an object mapping prefixes to their corresponding namespaces in its scope.
26
- * Default namespace is treated as if its prefix were the empty string.
27
- * @param node The Node.
28
- * @returns An object with prefixes and namespace URLs.
29
- */
30
- private namespaceMapAt;
31
- /**
32
- * HTML needs to be parsed differently because it's a special case of XML.
33
- * Sources:
34
- *
35
- * - https://blog.teamtreehouse.com/to-close-or-not-to-close-tags-in-html5
36
- * @param htmlText The HTML text
37
- * @returns A DOM document.
38
- */
39
- private htmlParse;
40
- /**
41
- * Parses the given XML string with our custom, JavaScript XML parser.
42
- * @param xml The XML String.
43
- * @returns A XDocument.
44
- * @author Steffen Meschkat <mesch@google.com>
45
- */
46
- private xmlStrictParse;
47
- }