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.
- package/README.md +48 -0
- package/index.d.mts +861 -0
- package/index.d.ts +861 -4
- package/index.js +4570 -12
- package/index.js.map +1 -1
- package/index.mjs +4534 -0
- package/index.mjs.map +1 -0
- package/package.json +23 -18
- package/umd/xslt-processor.global.js +9 -0
- package/umd/xslt-processor.global.js.map +1 -0
- package/constants.d.ts +0 -12
- package/constants.js +0 -17
- package/constants.js.map +0 -1
- package/dom/functions.d.ts +0 -14
- package/dom/functions.js +0 -57
- package/dom/functions.js.map +0 -1
- package/dom/index.d.ts +0 -7
- package/dom/index.js +0 -24
- package/dom/index.js.map +0 -1
- package/dom/util.d.ts +0 -7
- package/dom/util.js +0 -43
- package/dom/util.js.map +0 -1
- package/dom/xbrowser-node.d.ts +0 -9
- package/dom/xbrowser-node.js +0 -32
- package/dom/xbrowser-node.js.map +0 -1
- package/dom/xdocument.d.ts +0 -16
- package/dom/xdocument.js +0 -74
- package/dom/xdocument.js.map +0 -1
- package/dom/xml-functions.d.ts +0 -73
- package/dom/xml-functions.js +0 -402
- package/dom/xml-functions.js.map +0 -1
- package/dom/xml-output-options.d.ts +0 -6
- package/dom/xml-output-options.js +0 -3
- package/dom/xml-output-options.js.map +0 -1
- package/dom/xml-parser.d.ts +0 -47
- package/dom/xml-parser.js +0 -308
- package/dom/xml-parser.js.map +0 -1
- package/dom/xmltoken.d.ts +0 -12
- package/dom/xmltoken.js +0 -102
- package/dom/xmltoken.js.map +0 -1
- package/dom/xnode.d.ts +0 -73
- package/dom/xnode.js +0 -451
- package/dom/xnode.js.map +0 -1
- package/test-without-jest.d.ts +0 -1
- package/test-without-jest.js +0 -63
- package/test-without-jest.js.map +0 -1
- package/umd/constants.d.ts +0 -12
- package/umd/dom/functions.d.ts +0 -14
- package/umd/dom/index.d.ts +0 -7
- package/umd/dom/util.d.ts +0 -7
- package/umd/dom/xbrowser-node.d.ts +0 -9
- package/umd/dom/xdocument.d.ts +0 -16
- package/umd/dom/xml-functions.d.ts +0 -73
- package/umd/dom/xml-output-options.d.ts +0 -6
- package/umd/dom/xml-parser.d.ts +0 -47
- package/umd/dom/xmltoken.d.ts +0 -12
- package/umd/dom/xnode.d.ts +0 -73
- package/umd/index.d.ts +0 -4
- package/umd/test-without-jest.d.ts +0 -1
- package/umd/xpath/common-function.d.ts +0 -8
- package/umd/xpath/expr-context.d.ts +0 -116
- package/umd/xpath/expressions/binary-expr.d.ts +0 -11
- package/umd/xpath/expressions/expression.d.ts +0 -4
- package/umd/xpath/expressions/filter-expr.d.ts +0 -9
- package/umd/xpath/expressions/function-call-expr.d.ts +0 -12
- package/umd/xpath/expressions/index.d.ts +0 -13
- package/umd/xpath/expressions/literal-expr.d.ts +0 -7
- package/umd/xpath/expressions/location-expr.d.ts +0 -15
- package/umd/xpath/expressions/number-expr.d.ts +0 -7
- package/umd/xpath/expressions/path-expr.d.ts +0 -9
- package/umd/xpath/expressions/predicate-expr.d.ts +0 -8
- package/umd/xpath/expressions/step-expr.d.ts +0 -25
- package/umd/xpath/expressions/token-expr.d.ts +0 -7
- package/umd/xpath/expressions/unary-minus-expr.d.ts +0 -8
- package/umd/xpath/expressions/union-expr.d.ts +0 -9
- package/umd/xpath/expressions/variable-expr.d.ts +0 -7
- package/umd/xpath/functions/index.d.ts +0 -4
- package/umd/xpath/functions/internal-functions.d.ts +0 -2
- package/umd/xpath/functions/non-standard.d.ts +0 -12
- package/umd/xpath/functions/standard-20.d.ts +0 -5
- package/umd/xpath/functions/standard.d.ts +0 -40
- package/umd/xpath/functions/xslt-specific.d.ts +0 -3
- package/umd/xpath/grammar-rule-candidate.d.ts +0 -8
- package/umd/xpath/index.d.ts +0 -3
- package/umd/xpath/match-resolver.d.ts +0 -55
- package/umd/xpath/node-tests/index.d.ts +0 -8
- package/umd/xpath/node-tests/node-test-any.d.ts +0 -6
- package/umd/xpath/node-tests/node-test-comment.d.ts +0 -6
- package/umd/xpath/node-tests/node-test-element-or-attribute.d.ts +0 -6
- package/umd/xpath/node-tests/node-test-name.d.ts +0 -10
- package/umd/xpath/node-tests/node-test-nc.d.ts +0 -9
- package/umd/xpath/node-tests/node-test-pi.d.ts +0 -8
- package/umd/xpath/node-tests/node-test-text.d.ts +0 -6
- package/umd/xpath/node-tests/node-test.d.ts +0 -5
- package/umd/xpath/tokens.d.ts +0 -62
- package/umd/xpath/values/boolean-value.d.ts +0 -11
- package/umd/xpath/values/index.d.ts +0 -5
- package/umd/xpath/values/node-set-value.d.ts +0 -11
- package/umd/xpath/values/node-value.d.ts +0 -7
- package/umd/xpath/values/number-value.d.ts +0 -11
- package/umd/xpath/values/string-value.d.ts +0 -11
- package/umd/xpath/xpath-grammar-rules.d.ts +0 -68
- package/umd/xpath/xpath-token-rule.d.ts +0 -7
- package/umd/xpath/xpath.d.ts +0 -174
- package/umd/xpathdebug.d.ts +0 -2
- package/umd/xslt/index.d.ts +0 -3
- package/umd/xslt/xslt-decimal-format-settings.d.ts +0 -28
- package/umd/xslt/xslt-options.d.ts +0 -7
- package/umd/xslt/xslt-parameter.d.ts +0 -5
- package/umd/xslt/xslt.d.ts +0 -275
- package/umd/xslt-processor.js +0 -2
- package/umd/xslt-processor.js.map +0 -1
- package/xpath/common-function.d.ts +0 -8
- package/xpath/common-function.js +0 -32
- package/xpath/common-function.js.map +0 -1
- package/xpath/expr-context.d.ts +0 -116
- package/xpath/expr-context.js +0 -191
- package/xpath/expr-context.js.map +0 -1
- package/xpath/expressions/binary-expr.d.ts +0 -11
- package/xpath/expressions/binary-expr.js +0 -166
- package/xpath/expressions/binary-expr.js.map +0 -1
- package/xpath/expressions/expression.d.ts +0 -4
- package/xpath/expressions/expression.js +0 -10
- package/xpath/expressions/expression.js.map +0 -1
- package/xpath/expressions/filter-expr.d.ts +0 -9
- package/xpath/expressions/filter-expr.js +0 -53
- package/xpath/expressions/filter-expr.js.map +0 -1
- package/xpath/expressions/function-call-expr.d.ts +0 -12
- package/xpath/expressions/function-call-expr.js +0 -97
- package/xpath/expressions/function-call-expr.js.map +0 -1
- package/xpath/expressions/index.d.ts +0 -13
- package/xpath/expressions/index.js +0 -30
- package/xpath/expressions/index.js.map +0 -1
- package/xpath/expressions/literal-expr.d.ts +0 -7
- package/xpath/expressions/literal-expr.js +0 -34
- package/xpath/expressions/literal-expr.js.map +0 -1
- package/xpath/expressions/location-expr.d.ts +0 -15
- package/xpath/expressions/location-expr.js +0 -99
- package/xpath/expressions/location-expr.js.map +0 -1
- package/xpath/expressions/number-expr.d.ts +0 -7
- package/xpath/expressions/number-expr.js +0 -34
- package/xpath/expressions/number-expr.js.map +0 -1
- package/xpath/expressions/path-expr.d.ts +0 -9
- package/xpath/expressions/path-expr.js +0 -52
- package/xpath/expressions/path-expr.js.map +0 -1
- package/xpath/expressions/predicate-expr.d.ts +0 -8
- package/xpath/expressions/predicate-expr.js +0 -41
- package/xpath/expressions/predicate-expr.js.map +0 -1
- package/xpath/expressions/step-expr.d.ts +0 -25
- package/xpath/expressions/step-expr.js +0 -281
- package/xpath/expressions/step-expr.js.map +0 -1
- package/xpath/expressions/token-expr.d.ts +0 -7
- package/xpath/expressions/token-expr.js +0 -34
- package/xpath/expressions/token-expr.js.map +0 -1
- package/xpath/expressions/unary-minus-expr.d.ts +0 -8
- package/xpath/expressions/unary-minus-expr.js +0 -34
- package/xpath/expressions/unary-minus-expr.js.map +0 -1
- package/xpath/expressions/union-expr.d.ts +0 -9
- package/xpath/expressions/union-expr.js +0 -51
- package/xpath/expressions/union-expr.js.map +0 -1
- package/xpath/expressions/variable-expr.d.ts +0 -7
- package/xpath/expressions/variable-expr.js +0 -33
- package/xpath/expressions/variable-expr.js.map +0 -1
- package/xpath/functions/index.d.ts +0 -4
- package/xpath/functions/index.js +0 -21
- package/xpath/functions/index.js.map +0 -1
- package/xpath/functions/internal-functions.d.ts +0 -2
- package/xpath/functions/internal-functions.js +0 -22
- package/xpath/functions/internal-functions.js.map +0 -1
- package/xpath/functions/non-standard.d.ts +0 -12
- package/xpath/functions/non-standard.js +0 -45
- package/xpath/functions/non-standard.js.map +0 -1
- package/xpath/functions/standard-20.d.ts +0 -5
- package/xpath/functions/standard-20.js +0 -26
- package/xpath/functions/standard-20.js.map +0 -1
- package/xpath/functions/standard.d.ts +0 -40
- package/xpath/functions/standard.js +0 -442
- package/xpath/functions/standard.js.map +0 -1
- package/xpath/functions/xslt-specific.d.ts +0 -3
- package/xpath/functions/xslt-specific.js +0 -14
- package/xpath/functions/xslt-specific.js.map +0 -1
- package/xpath/grammar-rule-candidate.d.ts +0 -8
- package/xpath/grammar-rule-candidate.js +0 -3
- package/xpath/grammar-rule-candidate.js.map +0 -1
- package/xpath/index.d.ts +0 -3
- package/xpath/index.js +0 -20
- package/xpath/index.js.map +0 -1
- package/xpath/match-resolver.d.ts +0 -55
- package/xpath/match-resolver.js +0 -137
- package/xpath/match-resolver.js.map +0 -1
- package/xpath/node-tests/index.d.ts +0 -8
- package/xpath/node-tests/index.js +0 -18
- package/xpath/node-tests/index.js.map +0 -1
- package/xpath/node-tests/node-test-any.d.ts +0 -6
- package/xpath/node-tests/node-test-any.js +0 -15
- package/xpath/node-tests/node-test-any.js.map +0 -1
- package/xpath/node-tests/node-test-comment.d.ts +0 -6
- package/xpath/node-tests/node-test-comment.js +0 -15
- package/xpath/node-tests/node-test-comment.js.map +0 -1
- package/xpath/node-tests/node-test-element-or-attribute.d.ts +0 -6
- package/xpath/node-tests/node-test-element-or-attribute.js +0 -16
- package/xpath/node-tests/node-test-element-or-attribute.js.map +0 -1
- package/xpath/node-tests/node-test-name.d.ts +0 -10
- package/xpath/node-tests/node-test-name.js +0 -39
- package/xpath/node-tests/node-test-name.js.map +0 -1
- package/xpath/node-tests/node-test-nc.d.ts +0 -9
- package/xpath/node-tests/node-test-nc.js +0 -17
- package/xpath/node-tests/node-test-nc.js.map +0 -1
- package/xpath/node-tests/node-test-pi.d.ts +0 -8
- package/xpath/node-tests/node-test-pi.js +0 -17
- package/xpath/node-tests/node-test-pi.js.map +0 -1
- package/xpath/node-tests/node-test-text.d.ts +0 -6
- package/xpath/node-tests/node-test-text.js +0 -15
- package/xpath/node-tests/node-test-text.js.map +0 -1
- package/xpath/node-tests/node-test.d.ts +0 -5
- package/xpath/node-tests/node-test.js +0 -3
- package/xpath/node-tests/node-test.js.map +0 -1
- package/xpath/tokens.d.ts +0 -62
- package/xpath/tokens.js +0 -301
- package/xpath/tokens.js.map +0 -1
- package/xpath/values/boolean-value.d.ts +0 -11
- package/xpath/values/boolean-value.js +0 -24
- package/xpath/values/boolean-value.js.map +0 -1
- package/xpath/values/index.d.ts +0 -5
- package/xpath/values/index.js +0 -47
- package/xpath/values/index.js.map +0 -1
- package/xpath/values/node-set-value.d.ts +0 -11
- package/xpath/values/node-set-value.js +0 -28
- package/xpath/values/node-set-value.js.map +0 -1
- package/xpath/values/node-value.d.ts +0 -7
- package/xpath/values/node-value.js +0 -3
- package/xpath/values/node-value.js.map +0 -1
- package/xpath/values/number-value.d.ts +0 -11
- package/xpath/values/number-value.js +0 -24
- package/xpath/values/number-value.js.map +0 -1
- package/xpath/values/string-value.d.ts +0 -11
- package/xpath/values/string-value.js +0 -24
- package/xpath/values/string-value.js.map +0 -1
- package/xpath/xpath-grammar-rules.d.ts +0 -68
- package/xpath/xpath-grammar-rules.js +0 -75
- package/xpath/xpath-grammar-rules.js.map +0 -1
- package/xpath/xpath-token-rule.d.ts +0 -7
- package/xpath/xpath-token-rule.js +0 -3
- package/xpath/xpath-token-rule.js.map +0 -1
- package/xpath/xpath.d.ts +0 -174
- package/xpath/xpath.js +0 -912
- package/xpath/xpath.js.map +0 -1
- package/xpathdebug.d.ts +0 -2
- package/xpathdebug.js +0 -188
- package/xpathdebug.js.map +0 -1
- package/xslt/index.d.ts +0 -3
- package/xslt/index.js +0 -20
- package/xslt/index.js.map +0 -1
- package/xslt/xslt-decimal-format-settings.d.ts +0 -28
- package/xslt/xslt-decimal-format-settings.js +0 -3
- package/xslt/xslt-decimal-format-settings.js.map +0 -1
- package/xslt/xslt-options.d.ts +0 -7
- package/xslt/xslt-options.js +0 -3
- package/xslt/xslt-options.js.map +0 -1
- package/xslt/xslt-parameter.d.ts +0 -5
- package/xslt/xslt-parameter.js +0 -3
- package/xslt/xslt-parameter.js.map +0 -1
- package/xslt/xslt.d.ts +0 -275
- package/xslt/xslt.js +0 -1329
- package/xslt/xslt.js.map +0 -1
package/dom/xml-functions.js
DELETED
|
@@ -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(/</g, '<').replace(/>/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, '&')
|
|
350
|
-
.replace(/&amp;/g, '&')
|
|
351
|
-
.replace(/</g, '<')
|
|
352
|
-
.replace(/>/g, '>');
|
|
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, '"');
|
|
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
|
package/dom/xml-functions.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"xml-functions.js","sourceRoot":"","sources":["../../src/dom/xml-functions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"xml-output-options.js","sourceRoot":"","sources":["../../src/dom/xml-output-options.ts"],"names":[],"mappings":""}
|
package/dom/xml-parser.d.ts
DELETED
|
@@ -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
|
-
}
|