highmark-markdown 0.0.56 → 0.0.60
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/example.js +137 -204
- package/lib/example/view.js +2 -2
- package/lib/markdown/bnf.js +2 -2
- package/lib/markdown/entries.js +2 -2
- package/lib/markdown/lexer.js +2 -2
- package/lib/mixins/content.js +3 -3
- package/lib/node/markdown/address.js +3 -2
- package/lib/node/markdown/blockListing.js +1 -8
- package/lib/node/markdown/blockText.js +4 -4
- package/lib/node/markdown/division.js +1 -2
- package/lib/node/markdown/emphasisedText.js +2 -2
- package/lib/node/markdown/endOfLine.js +5 -9
- package/lib/node/markdown/error.js +7 -13
- package/lib/node/markdown/hyperlink.js +24 -24
- package/lib/node/markdown/image.js +15 -22
- package/lib/node/markdown/inlineText.js +2 -2
- package/lib/node/markdown/line.js +4 -3
- package/lib/node/markdown/mailToLink.js +24 -24
- package/lib/node/markdown/strongText.js +2 -2
- package/lib/node/markdown/stronglyEmphasisedText.js +2 -2
- package/lib/node/markdown/tableCell.js +7 -43
- package/lib/node/markdown/text.js +2 -12
- package/lib/node/markdown/url.js +3 -2
- package/lib/node/markdown/verticalSpace.js +12 -14
- package/lib/node/markdown.js +15 -15
- package/lib/utilities/content.js +15 -12
- package/package.json +1 -1
- package/src/example/view.js +5 -1
- package/src/markdown/bnf.js +2 -2
- package/src/markdown/entries.js +1 -1
- package/src/markdown/lexer.js +1 -2
- package/src/mixins/content.js +3 -2
- package/src/node/markdown/address.js +3 -1
- package/src/node/markdown/blockListing.js +0 -9
- package/src/node/markdown/blockText.js +6 -5
- package/src/node/markdown/division.js +0 -1
- package/src/node/markdown/emphasisedText.js +1 -2
- package/src/node/markdown/endOfLine.js +6 -9
- package/src/node/markdown/error.js +7 -18
- package/src/node/markdown/hyperlink.js +30 -30
- package/src/node/markdown/image.js +22 -28
- package/src/node/markdown/inlineText.js +1 -2
- package/src/node/markdown/line.js +1 -4
- package/src/node/markdown/mailToLink.js +28 -28
- package/src/node/markdown/strongText.js +1 -2
- package/src/node/markdown/stronglyEmphasisedText.js +1 -2
- package/src/node/markdown/tableCell.js +6 -51
- package/src/node/markdown/text.js +0 -13
- package/src/node/markdown/url.js +3 -1
- package/src/node/markdown/verticalSpace.js +19 -16
- package/src/node/markdown.js +12 -12
- package/src/utilities/content.js +17 -15
package/lib/node/markdown.js
CHANGED
|
@@ -166,20 +166,6 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
166
166
|
return className;
|
|
167
167
|
}
|
|
168
168
|
},
|
|
169
|
-
{
|
|
170
|
-
key: "attributeName",
|
|
171
|
-
value: function attributeName(context) {
|
|
172
|
-
var attributeName = null;
|
|
173
|
-
return attributeName;
|
|
174
|
-
}
|
|
175
|
-
},
|
|
176
|
-
{
|
|
177
|
-
key: "attributeValue",
|
|
178
|
-
value: function attributeValue(context) {
|
|
179
|
-
var attributeValue = null;
|
|
180
|
-
return attributeValue;
|
|
181
|
-
}
|
|
182
|
-
},
|
|
183
169
|
{
|
|
184
170
|
key: "asHTML",
|
|
185
171
|
value: function asHTML(indent, context) {
|
|
@@ -251,6 +237,20 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
251
237
|
return indent;
|
|
252
238
|
}
|
|
253
239
|
},
|
|
240
|
+
{
|
|
241
|
+
key: "attributeName",
|
|
242
|
+
value: function attributeName(context) {
|
|
243
|
+
var attributeName = null;
|
|
244
|
+
return attributeName;
|
|
245
|
+
}
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
key: "attributeValue",
|
|
249
|
+
value: function attributeValue(context) {
|
|
250
|
+
var attributeValue = null;
|
|
251
|
+
return attributeValue;
|
|
252
|
+
}
|
|
253
|
+
},
|
|
254
254
|
{
|
|
255
255
|
key: "childNodesAsHTML",
|
|
256
256
|
value: function childNodesAsHTML(indent, context) {
|
|
@@ -338,4 +338,4 @@ Object.assign(MarkdownNode.prototype, _node.default);
|
|
|
338
338
|
Object.assign(MarkdownNode.prototype, _element.default);
|
|
339
339
|
var _default = MarkdownNode;
|
|
340
340
|
|
|
341
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL21hcmtkb3duLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuXG5pbXBvcnQgbm9kZU1peGlucyBmcm9tIFwiLi4vbWl4aW5zL25vZGVcIjtcbmltcG9ydCBlbGVtZW50TWl4aW5zIGZyb20gXCIuLi9taXhpbnMvZWxlbWVudFwiO1xuaW1wb3J0IHJ1bGVOYW1lVG9IVE1MTWFwIGZyb20gXCIuLi9ydWxlTmFtZVRvSFRNTE1hcFwiO1xuXG5pbXBvcnQgeyB0cmltIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IEVNUFRZX1NUUklORyB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcblxuY2xhc3MgTWFya2Rvd25Ob2RlIGV4dGVuZHMgTm9uVGVybWluYWxOb2RlIHtcbiAgY29uc3RydWN0b3IocnVsZU5hbWUsIGNoaWxkTm9kZXMsIHByZWNlZGVuY2UsIG9wYWNpdHksIGRvbUVsZW1lbnQpIHtcbiAgICBzdXBlcihydWxlTmFtZSwgY2hpbGROb2RlcywgcHJlY2VkZW5jZSwgb3BhY2l0eSk7XG5cbiAgICB0aGlzLmRvbUVsZW1lbnQgPSBkb21FbGVtZW50O1xuICB9XG5cbiAgZ2V0RE9NRWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5kb21FbGVtZW50O1xuICB9XG5cbiAgc2V0RE9NRWxlbWVudChkb21FbGVtZW50KSB7XG4gICAgdGhpcy5kb21FbGVtZW50ID0gZG9tRWxlbWVudDtcbiAgfVxuXG4gIHRhZ05hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IHsgdGFnTmFtZSB9ID0gcnVsZU5hbWVUb0hUTUxNYXBbdGhpcy5ydWxlTmFtZV07XG5cbiAgICByZXR1cm4gdGFnTmFtZTtcbiAgfVxuXG4gIGNsYXNzTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgeyBjbGFzc05hbWUgfSA9IHJ1bGVOYW1lVG9IVE1MTWFwW3RoaXMucnVsZU5hbWVdO1xuXG4gICAgcmV0dXJuIGNsYXNzTmFtZTtcbiAgfVxuXG4gIGF0dHJpYnV0ZU5hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZU5hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSB7XG4gICAgY29uc3QgYXR0cmlidXRlVmFsdWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZVZhbHVlO1xuICB9XG5cbiAgYXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnRleHQgPSBpbmRlbnQ7IC8vL1xuXG4gICAgICBpbmRlbnQgPSBFTVBUWV9TVFJJTkc7XG4gICAgfVxuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGxldCBodG1sID0gbnVsbDtcblxuICAgIGlmICh0YWdOYW1lICE9PSBudWxsKSB7XG4gICAgICBpbmRlbnQgPSB0aGlzLmFkanVzdEluZGVudChpbmRlbnQpO1xuXG4gICAgICBjb25zdCBjaGlsZE5vZGVzSFRNTCA9IHRoaXMuY2hpbGROb2Rlc0FzSFRNTChpbmRlbnQsIGNvbnRleHQpO1xuXG4gICAgICBpZiAoY2hpbGROb2Rlc0hUTUwgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3Qgc3RhcnRpbmdUYWcgPSB0aGlzLnN0YXJ0aW5nVGFnKGNvbnRleHQpLFxuICAgICAgICAgICAgICBjbG9zaW5nVGFnID0gdGhpcy5jbG9zaW5nVGFnKGNvbnRleHQpO1xuXG4gICAgICAgIGh0bWwgPSAoaW5kZW50ID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgYCR7c3RhcnRpbmdUYWd9JHt0cmltKGNoaWxkTm9kZXNIVE1MKX0ke2Nsb3NpbmdUYWd9YCA6XG4gICAgICAgICAgICAgICAgICBgJHtpbmRlbnR9JHtzdGFydGluZ1RhZ31cbiR7dHJpbShjaGlsZE5vZGVzSFRNTCl9XG4ke2luZGVudH0ke2Nsb3NpbmdUYWd9XG5gO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgc2VsZkNsb3NpbmdUYWcgPSB0aGlzLnNlbGZDbG9zaW5nVGFnKGNvbnRleHQpO1xuXG4gICAgICAgIGh0bWwgPSAoaW5kZW50ID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgc2VsZkNsb3NpbmdUYWcgOiAgLy8vXG4gICAgICAgICAgICAgICAgIGAke2luZGVudH0ke3NlbGZDbG9zaW5nVGFnfVxuYDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gaHRtbDtcbiAgfVxuXG4gIGNsb3NpbmdUYWcoY29udGV4dCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCksXG4gICAgICAgICAgY2xvc2luZ1RhZyA9IGA8XFxcXCR7dGFnTmFtZX0+YDtcblxuICAgIHJldHVybiBjbG9zaW5nVGFnO1xuICB9XG5cbiAgc3RhcnRpbmdUYWcoY29udGV4dCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCksXG4gICAgICAgICAgY2xhc3NOYW1lID0gdGhpcy5jbGFzc05hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlTmFtZSA9IHRoaXMuYXR0cmlidXRlTmFtZShjb250ZXh0KTtcblxuICAgIGxldCBjbGFzc0hUTUwgPSBFTVBUWV9TVFJJTkcsXG4gICAgICAgIGF0dHJpYnV0ZUhUTUwgPSBFTVBUWV9TVFJJTkc7XG5cbiAgICBpZiAoY2xhc3NOYW1lICE9PSBudWxsKSB7XG4gICAgICBjbGFzc0hUTUwgPSBgIGNsYXNzPVwiJHtjbGFzc05hbWV9XCJgO1xuICAgIH1cblxuICAgIGlmIChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBhdHRyaWJ1dGVWYWx1ZSA9IHRoaXMuYXR0cmlidXRlVmFsdWUoY29udGV4dCk7XG5cbiAgICAgIGF0dHJpYnV0ZUhUTUwgPSBgICR7YXR0cmlidXRlTmFtZX09XCIke2F0dHJpYnV0ZVZhbHVlfVwiYDtcbiAgICB9XG5cbiAgICBjb25zdCBzdGFydGluZ1RhZyA9IGA8JHt0YWdOYW1lfSR7Y2xhc3NIVE1MfSR7YXR0cmlidXRlSFRNTH0+YDtcblxuICAgIHJldHVybiBzdGFydGluZ1RhZztcbiAgfVxuXG4gIHNlbGZDbG9zaW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCk7XG5cbiAgICBsZXQgY2xhc3NIVE1MID0gRU1QVFlfU1RSSU5HLFxuICAgICAgICBhdHRyaWJ1dGVIVE1MID0gRU1QVFlfU1RSSU5HO1xuXG4gICAgaWYgKGNsYXNzTmFtZSAhPT0gbnVsbCkge1xuICAgICAgY2xhc3NIVE1MID0gYCBjbGFzcz1cIiR7Y2xhc3NOYW1lfVwiYDtcbiAgICB9XG5cbiAgICBpZiAoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpO1xuXG4gICAgICBhdHRyaWJ1dGVIVE1MID0gYCAke2F0dHJpYnV0ZU5hbWV9PVwiJHthdHRyaWJ1dGVWYWx1ZX1cImA7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZkNsb3NpbmdUYWcgPSBgPCR7dGFnTmFtZX0ke2NsYXNzSFRNTH0ke2F0dHJpYnV0ZUhUTUx9Lz5gO1xuXG4gICAgcmV0dXJuIHNlbGZDbG9zaW5nVGFnO1xuICB9XG5cbiAgYWRqdXN0SW5kZW50KGluZGVudCkge1xuICAgIGlmIChpbmRlbnQgIT09IG51bGwpIHtcbiAgICAgIGluZGVudCA9IGAgICR7aW5kZW50fWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGluZGVudDtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIGNoaWxkTm9kZXNIVE1MID0gY2hpbGROb2Rlcy5yZWR1Y2UoKGNoaWxkTm9kZXNIVE1MLCBjaGlsZE5vZGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSA9IGNoaWxkTm9kZS5pc05vblRlcm1pbmFsTm9kZSgpO1xuXG4gICAgICAgICAgICBpZiAoY2hpbGROb2RlTm9uVGVybWluYWxOb2RlKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGNoaWxkTm9kZUhUTUwgPSBjaGlsZE5vZGUuYXNIVE1MKGluZGVudCwgY29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKGNoaWxkTm9kZUhUTUwgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBjaGlsZE5vZGVzSFRNTCA9IChjaGlsZE5vZGVzSFRNTCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGVIVE1MIDogIC8vL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYCR7Y2hpbGROb2Rlc0hUTUx9JHtjaGlsZE5vZGVIVE1MfWA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICAgICAgICAgIH0sIG51bGwpO1xuXG4gICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICB9XG5cbiAgY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KSB7XG4gICAgbGV0IGRvbUVsZW1lbnQgPSBudWxsO1xuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGlmICh0YWdOYW1lICE9PSBudWxsKSB7XG4gICAgICBkb21FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTtcblxuICAgICAgdGhpcy5zZXRET01FbGVtZW50KGRvbUVsZW1lbnQpO1xuXG4gICAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCk7XG5cbiAgICAgIGlmIChjbGFzc05hbWUgIT09IG51bGwpIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbihkb21FbGVtZW50LCB7XG4gICAgICAgICAgY2xhc3NOYW1lXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVWYWx1ZSA9IHRoaXMuYXR0cmlidXRlVmFsdWUoY29udGV4dCk7XG5cbiAgICAgICAgZG9tRWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSwgYXR0cmlidXRlVmFsdWUpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNyZWF0ZUNoaWxkTm9kZURPTUVsZW1lbnRzKGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiBkb21FbGVtZW50O1xuICB9XG5cbiAgY3JlYXRlQ2hpbGROb2RlRE9NRWxlbWVudHMoY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKTtcblxuICAgIGNoaWxkTm9kZXMuZm9yRWFjaCgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVOb25UZXJtaW5hbE5vZGUgPSBjaGlsZE5vZGUuaXNOb25UZXJtaW5hbE5vZGUoKTtcblxuICAgICAgaWYgKGNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSkge1xuICAgICAgICBjb25zdCBjaGlsZE5vZGVET01FbGVtZW50ID0gY2hpbGROb2RlLmNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCk7XG5cbiAgICAgICAgaWYgKGNoaWxkTm9kZURPTUVsZW1lbnQgIT09IG51bGwpIHtcbiAgICAgICAgICB0aGlzLmluc2VydERPTUVsZW1lbnQoY2hpbGROb2RlRE9NRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGluc2VydERPTUVsZW1lbnQoZG9tRWxlbWVudCkge1xuICAgIGNvbnN0IHBhcmVudERPTUVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQsICAvLy9cbiAgICAgICAgICBzaWJsaW5nRE9NRWxlbWVudCA9IG51bGw7XG5cbiAgICBwYXJlbnRET01FbGVtZW50Lmluc2VydEJlZm9yZShkb21FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCk7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCBkb21FbGVtZW50ID0gbnVsbCxcbiAgICAgICAgICBtYXJrZG93bk5vZGUgPSBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG1hcmtkb3duTm9kZTtcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKE1hcmtkb3duTm9kZS5wcm90b3R5cGUsIG5vZGVNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihNYXJrZG93bk5vZGUucHJvdG90eXBlLCBlbGVtZW50TWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgTWFya2Rvd25Ob2RlO1xuIl0sIm5hbWVzIjpbIk1hcmtkb3duTm9kZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsInByZWNlZGVuY2UiLCJvcGFjaXR5IiwiZG9tRWxlbWVudCIsImdldERPTUVsZW1lbnQiLCJzZXRET01FbGVtZW50IiwidGFnTmFtZSIsImNvbnRleHQiLCJydWxlTmFtZVRvSFRNTE1hcCIsImNsYXNzTmFtZSIsImF0dHJpYnV0ZU5hbWUiLCJhdHRyaWJ1dGVWYWx1ZSIsImFzSFRNTCIsImluZGVudCIsInVuZGVmaW5lZCIsIkVNUFRZX1NUUklORyIsImh0bWwiLCJhZGp1c3RJbmRlbnQiLCJjaGlsZE5vZGVzSFRNTCIsImNoaWxkTm9kZXNBc0hUTUwiLCJzdGFydGluZ1RhZyIsImNsb3NpbmdUYWciLCJ0cmltIiwic2VsZkNsb3NpbmdUYWciLCJjbGFzc0hUTUwiLCJhdHRyaWJ1dGVIVE1MIiwiZ2V0Q2hpbGROb2RlcyIsInJlZHVjZSIsImNoaWxkTm9kZSIsImNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSIsImlzTm9uVGVybWluYWxOb2RlIiwiY2hpbGROb2RlSFRNTCIsImNyZWF0ZURPTUVsZW1lbnQiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJzZXRBdHRyaWJ1dGUiLCJjcmVhdGVDaGlsZE5vZGVET01FbGVtZW50cyIsImZvckVhY2giLCJjaGlsZE5vZGVET01FbGVtZW50IiwiaW5zZXJ0RE9NRWxlbWVudCIsInBhcmVudERPTUVsZW1lbnQiLCJzaWJsaW5nRE9NRWxlbWVudCIsImluc2VydEJlZm9yZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5IiwiQ2xhc3MiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJOb25UZXJtaW5hbE5vZGUiLCJtYXJrZG93bk5vZGUiLCJwcm90b3R5cGUiLCJub2RlTWl4aW5zIiwiZWxlbWVudE1peGlucyJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBNE9BOzs7ZUFBQTs7OzRCQTFPZ0M7MkRBRVQ7OERBQ0c7d0VBQ0k7c0JBRVQ7eUJBQ1E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTdCLElBQUEsQUFBTUEsNkJBQUQsQUFBTDtjQUFNQTsrQkFBQUE7YUFBQUEsYUFDUUMsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLFVBQVUsRUFBRUMsT0FBTyxFQUFFQyxVQUFVO2dDQUQ3REw7O2tDQUVJQyxVQUFVQyxZQUFZQyxZQUFZQztRQUV4QyxNQUFLQyxVQUFVLEdBQUdBOzs7a0JBSmhCTDs7WUFPSk0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRCxVQUFVO1lBQ3hCOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWNGLFVBQVU7Z0JBQ3RCLElBQUksQ0FBQ0EsVUFBVSxHQUFHQTtZQUNwQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxRQUFRQyxPQUFPO2dCQUNiLElBQU0sQUFBRUQsVUFBWUUsMEJBQWlCLENBQUMsSUFBSSxDQUFDVCxRQUFRLENBQUMsQ0FBNUNPO2dCQUVSLE9BQU9BO1lBQ1Q7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVUYsT0FBTztnQkFDZixJQUFNLEFBQUVFLFlBQWNELDBCQUFpQixDQUFDLElBQUksQ0FBQ1QsUUFBUSxDQUFDLENBQTlDVTtnQkFFUixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWNILE9BQU87Z0JBQ25CLElBQU1HLGdCQUFnQjtnQkFFdEIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxlQUFlSixPQUFPO2dCQUNwQixJQUFNSSxpQkFBaUI7Z0JBRXZCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsT0FBT0MsTUFBTSxFQUFFTixPQUFPO2dCQUNwQixJQUFJQSxZQUFZTyxXQUFXO29CQUN6QlAsVUFBVU0sUUFBUSxHQUFHO29CQUVyQkEsU0FBU0UsdUJBQVk7Z0JBQ3ZCO2dCQUVBLElBQU1ULFVBQVUsSUFBSSxDQUFDQSxPQUFPLENBQUNDO2dCQUU3QixJQUFJUyxPQUFPO2dCQUVYLElBQUlWLFlBQVksTUFBTTtvQkFDcEJPLFNBQVMsSUFBSSxDQUFDSSxZQUFZLENBQUNKO29CQUUzQixJQUFNSyxpQkFBaUIsSUFBSSxDQUFDQyxnQkFBZ0IsQ0FBQ04sUUFBUU47b0JBRXJELElBQUlXLG1CQUFtQixNQUFNO3dCQUMzQixJQUFNRSxjQUFjLElBQUksQ0FBQ0EsV0FBVyxDQUFDYixVQUMvQmMsYUFBYSxJQUFJLENBQUNBLFVBQVUsQ0FBQ2Q7d0JBRW5DUyxPQUFPLEFBQUNILFdBQVcsT0FDWCxBQUFDLEdBQWdCUyxPQUFkRixhQUFxQ0MsT0FBdkJDLElBQUFBLFlBQUksRUFBQ0osaUJBQTZCLE9BQVhHLGNBQ3RDLEFBQUMsR0FBV0QsT0FBVFAsUUFDbkJTLE9BRDRCRixhQUFZLE1BRXhDUCxPQURBUyxJQUFBQSxZQUFJLEVBQUNKLGlCQUFnQixNQUNaRyxPQUFUUixRQUFvQixPQUFYUSxZQUFXO29CQUVoQixPQUFPO3dCQUNMLElBQU1FLGlCQUFpQixJQUFJLENBQUNBLGNBQWMsQ0FBQ2hCO3dCQUUzQ1MsT0FBTyxBQUFDSCxXQUFXLE9BQ1hVLGlCQUNDLEFBQUMsR0FBV0EsT0FBVFYsUUFBd0IsT0FBZlUsZ0JBQWU7b0JBRXRDO2dCQUNGO2dCQUVBLE9BQU9QO1lBQ1Q7OztZQUVBSyxLQUFBQTttQkFBQUEsU0FBQUEsV0FBV2QsT0FBTztnQkFDaEIsSUFBTUQsVUFBVSxJQUFJLENBQUNBLE9BQU8sQ0FBQ0MsVUFDdkJjLGFBQWEsQUFBQyxNQUFhLE9BQVJmLFNBQVE7Z0JBRWpDLE9BQU9lO1lBQ1Q7OztZQUVBRCxLQUFBQTttQkFBQUEsU0FBQUEsWUFBWWIsT0FBTztnQkFDakIsSUFBTUQsVUFBVSxJQUFJLENBQUNBLE9BQU8sQ0FBQ0MsVUFDdkJFLFlBQVksSUFBSSxDQUFDQSxTQUFTLENBQUNGLFVBQzNCRyxnQkFBZ0IsSUFBSSxDQUFDQSxhQUFhLENBQUNIO2dCQUV6QyxJQUFJaUIsWUFBWVQsdUJBQVksRUFDeEJVLGdCQUFnQlYsdUJBQVk7Z0JBRWhDLElBQUlOLGNBQWMsTUFBTTtvQkFDdEJlLFlBQVksQUFBQyxXQUFvQixPQUFWZixXQUFVO2dCQUNuQztnQkFFQSxJQUFJQyxrQkFBa0IsTUFBTTtvQkFDMUIsSUFBTUMsaUJBQWlCLElBQUksQ0FBQ0EsY0FBYyxDQUFDSjtvQkFFM0NrQixnQkFBZ0IsQUFBQyxJQUFxQmQsT0FBbEJELGVBQWMsTUFBbUIsT0FBZkMsZ0JBQWU7Z0JBQ3ZEO2dCQUVBLElBQU1TLGNBQWMsQUFBQyxJQUFhSSxPQUFWbEIsU0FBc0JtQixPQUFaRCxXQUEwQixPQUFkQyxlQUFjO2dCQUU1RCxPQUFPTDtZQUNUOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVoQixPQUFPO2dCQUNwQixJQUFNRCxVQUFVLElBQUksQ0FBQ0EsT0FBTyxDQUFDQyxVQUN2QkUsWUFBWSxJQUFJLENBQUNBLFNBQVMsQ0FBQ0YsVUFDM0JHLGdCQUFnQixJQUFJLENBQUNBLGFBQWEsQ0FBQ0g7Z0JBRXpDLElBQUlpQixZQUFZVCx1QkFBWSxFQUN4QlUsZ0JBQWdCVix1QkFBWTtnQkFFaEMsSUFBSU4sY0FBYyxNQUFNO29CQUN0QmUsWUFBWSxBQUFDLFdBQW9CLE9BQVZmLFdBQVU7Z0JBQ25DO2dCQUVBLElBQUlDLGtCQUFrQixNQUFNO29CQUMxQixJQUFNQyxpQkFBaUIsSUFBSSxDQUFDQSxjQUFjLENBQUNKO29CQUUzQ2tCLGdCQUFnQixBQUFDLElBQXFCZCxPQUFsQkQsZUFBYyxNQUFtQixPQUFmQyxnQkFBZTtnQkFDdkQ7Z0JBRUEsSUFBTVksaUJBQWlCLEFBQUMsSUFBYUMsT0FBVmxCLFNBQXNCbUIsT0FBWkQsV0FBMEIsT0FBZEMsZUFBYztnQkFFL0QsT0FBT0Y7WUFDVDs7O1lBRUFOLEtBQUFBO21CQUFBQSxTQUFBQSxhQUFhSixNQUFNO2dCQUNqQixJQUFJQSxXQUFXLE1BQU07b0JBQ25CQSxTQUFTLEFBQUMsS0FBVyxPQUFQQTtnQkFDaEI7Z0JBRUEsT0FBT0E7WUFDVDs7O1lBRUFNLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUJOLE1BQU0sRUFBRU4sT0FBTztnQkFDOUIsSUFBTVAsYUFBYSxJQUFJLENBQUMwQixhQUFhLElBQy9CUixpQkFBaUJsQixXQUFXMkIsTUFBTSxDQUFDLFNBQUNULGdCQUFnQlU7b0JBQ2xELElBQU1DLDJCQUEyQkQsVUFBVUUsaUJBQWlCO29CQUU1RCxJQUFJRCwwQkFBMEI7d0JBQzVCLElBQU1FLGdCQUFnQkgsVUFBVWhCLE1BQU0sQ0FBQ0MsUUFBUU47d0JBRS9DLElBQUl3QixrQkFBa0IsTUFBTTs0QkFDMUJiLGlCQUFpQixBQUFDQSxtQkFBbUIsT0FDbEJhLGdCQUNDLEFBQUMsR0FBbUJBLE9BQWpCYixnQkFBK0IsT0FBZGE7d0JBQzFDO29CQUNGO29CQUVBLE9BQU9iO2dCQUNULEdBQUc7Z0JBRVQsT0FBT0E7WUFDVDs7O1lBRUFjLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUJ6QixPQUFPO2dCQUN0QixJQUFJSixhQUFhO2dCQUVqQixJQUFNRyxVQUFVLElBQUksQ0FBQ0EsT0FBTyxDQUFDQztnQkFFN0IsSUFBSUQsWUFBWSxNQUFNO29CQUNwQkgsYUFBYThCLFNBQVNDLGFBQWEsQ0FBQzVCO29CQUVwQyxJQUFJLENBQUNELGFBQWEsQ0FBQ0Y7b0JBRW5CLElBQU1NLFlBQVksSUFBSSxDQUFDQSxTQUFTLENBQUNGLFVBQzNCRyxnQkFBZ0IsSUFBSSxDQUFDQSxhQUFhLENBQUNIO29CQUV6QyxJQUFJRSxjQUFjLE1BQU07d0JBQ3RCMEIsT0FBT0MsTUFBTSxDQUFDakMsWUFBWTs0QkFDeEJNLFdBQUFBO3dCQUNGO29CQUNGO29CQUVBLElBQUlDLGtCQUFrQixNQUFNO3dCQUMxQixJQUFNQyxpQkFBaUIsSUFBSSxDQUFDQSxjQUFjLENBQUNKO3dCQUUzQ0osV0FBV2tDLFlBQVksQ0FBQzNCLGVBQWVDO29CQUN6QztvQkFFQSxJQUFJLENBQUMyQiwwQkFBMEIsQ0FBQy9CO2dCQUNsQztnQkFFQSxPQUFPSjtZQUNUOzs7WUFFQW1DLEtBQUFBO21CQUFBQSxTQUFBQSwyQkFBMkIvQixPQUFPOztnQkFDaEMsSUFBTVAsYUFBYSxJQUFJLENBQUMwQixhQUFhO2dCQUVyQzFCLFdBQVd1QyxPQUFPLENBQUMsU0FBQ1g7b0JBQ2xCLElBQU1DLDJCQUEyQkQsVUFBVUUsaUJBQWlCO29CQUU1RCxJQUFJRCwwQkFBMEI7d0JBQzVCLElBQU1XLHNCQUFzQlosVUFBVUksZ0JBQWdCLENBQUN6Qjt3QkFFdkQsSUFBSWlDLHdCQUF3QixNQUFNOzRCQUNoQyxNQUFLQyxnQkFBZ0IsQ0FBQ0Q7d0JBQ3hCO29CQUNGO2dCQUNGO1lBQ0Y7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsaUJBQWlCdEMsVUFBVTtnQkFDekIsSUFBTXVDLG1CQUFtQixJQUFJLENBQUN2QyxVQUFVLEVBQ2xDd0Msb0JBQW9CO2dCQUUxQkQsaUJBQWlCRSxZQUFZLENBQUN6QyxZQUFZd0M7WUFDNUM7Ozs7WUFFT0UsS0FBQUE7bUJBQVAsU0FBT0EsaUNBQWlDQyxLQUFLLEVBQUUvQyxRQUFRLEVBQUVDLFVBQVUsRUFBRUUsT0FBTztnQkFBRSxJQUFBLElBQUEsT0FBQSxVQUFBLFFBQUEsQUFBRzZDLHFCQUFILFVBQUEsT0FBQSxJQUFBLE9BQUEsUUFBQSxPQUFBLEdBQUEsT0FBQSxNQUFBO29CQUFHQSxtQkFBSCxPQUFBLEtBQUEsU0FBQSxDQUFBLEtBQXFCOztvQkFFNUVDO2dCQURyQixJQUFNN0MsYUFBYSxNQUNiOEMsZUFBZUQsQ0FBQUEsbUJBQUFBLDZCQUFlLEVBQUNILGdDQUFnQyxDQUFoREcsTUFBQUEsa0JBQUFBO29CQUFpREY7b0JBQU8vQztvQkFBVUM7b0JBQVlFO29CQUFTQztpQkFBa0MsQ0FBekg2QyxPQUFtRyxxQkFBR0Q7Z0JBRTNILE9BQU9FO1lBQ1Q7OztXQTNOSW5EO0VBQXFCa0QsNkJBQWU7QUE4TjFDYixPQUFPQyxNQUFNLENBQUN0QyxhQUFhb0QsU0FBUyxFQUFFQyxhQUFVO0FBQ2hEaEIsT0FBT0MsTUFBTSxDQUFDdEMsYUFBYW9ELFNBQVMsRUFBRUUsZ0JBQWE7SUFFbkQsV0FBZXREIn0=
|
|
341
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL21hcmtkb3duLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuXG5pbXBvcnQgbm9kZU1peGlucyBmcm9tIFwiLi4vbWl4aW5zL25vZGVcIjtcbmltcG9ydCBlbGVtZW50TWl4aW5zIGZyb20gXCIuLi9taXhpbnMvZWxlbWVudFwiO1xuaW1wb3J0IHJ1bGVOYW1lVG9IVE1MTWFwIGZyb20gXCIuLi9ydWxlTmFtZVRvSFRNTE1hcFwiO1xuXG5pbXBvcnQgeyB0cmltIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IEVNUFRZX1NUUklORyB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcblxuY2xhc3MgTWFya2Rvd25Ob2RlIGV4dGVuZHMgTm9uVGVybWluYWxOb2RlIHtcbiAgY29uc3RydWN0b3IocnVsZU5hbWUsIGNoaWxkTm9kZXMsIHByZWNlZGVuY2UsIG9wYWNpdHksIGRvbUVsZW1lbnQpIHtcbiAgICBzdXBlcihydWxlTmFtZSwgY2hpbGROb2RlcywgcHJlY2VkZW5jZSwgb3BhY2l0eSk7XG5cbiAgICB0aGlzLmRvbUVsZW1lbnQgPSBkb21FbGVtZW50O1xuICB9XG5cbiAgZ2V0RE9NRWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5kb21FbGVtZW50O1xuICB9XG5cbiAgc2V0RE9NRWxlbWVudChkb21FbGVtZW50KSB7XG4gICAgdGhpcy5kb21FbGVtZW50ID0gZG9tRWxlbWVudDtcbiAgfVxuXG4gIHRhZ05hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IHsgdGFnTmFtZSB9ID0gcnVsZU5hbWVUb0hUTUxNYXBbdGhpcy5ydWxlTmFtZV07XG5cbiAgICByZXR1cm4gdGFnTmFtZTtcbiAgfVxuXG4gIGNsYXNzTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgeyBjbGFzc05hbWUgfSA9IHJ1bGVOYW1lVG9IVE1MTWFwW3RoaXMucnVsZU5hbWVdO1xuXG4gICAgcmV0dXJuIGNsYXNzTmFtZTtcbiAgfVxuXG4gIGFzSFRNTChpbmRlbnQsIGNvbnRleHQpIHtcbiAgICBpZiAoY29udGV4dCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb250ZXh0ID0gaW5kZW50OyAvLy9cblxuICAgICAgaW5kZW50ID0gRU1QVFlfU1RSSU5HO1xuICAgIH1cblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBsZXQgaHRtbCA9IG51bGw7XG5cbiAgICBpZiAodGFnTmFtZSAhPT0gbnVsbCkge1xuICAgICAgaW5kZW50ID0gdGhpcy5hZGp1c3RJbmRlbnQoaW5kZW50KTtcblxuICAgICAgY29uc3QgY2hpbGROb2Rlc0hUTUwgPSB0aGlzLmNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgaWYgKGNoaWxkTm9kZXNIVE1MICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHN0YXJ0aW5nVGFnID0gdGhpcy5zdGFydGluZ1RhZyhjb250ZXh0KSxcbiAgICAgICAgICAgICAgY2xvc2luZ1RhZyA9IHRoaXMuY2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgICBodG1sID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgIGAke3N0YXJ0aW5nVGFnfSR7dHJpbShjaGlsZE5vZGVzSFRNTCl9JHtjbG9zaW5nVGFnfWAgOlxuICAgICAgICAgICAgICAgICAgYCR7aW5kZW50fSR7c3RhcnRpbmdUYWd9XG4ke3RyaW0oY2hpbGROb2Rlc0hUTUwpfVxuJHtpbmRlbnR9JHtjbG9zaW5nVGFnfVxuYDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHNlbGZDbG9zaW5nVGFnID0gdGhpcy5zZWxmQ2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgICBodG1sID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgIHNlbGZDbG9zaW5nVGFnIDogIC8vL1xuICAgICAgICAgICAgICAgICBgJHtpbmRlbnR9JHtzZWxmQ2xvc2luZ1RhZ31cbmA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGh0bWw7XG4gIH1cblxuICBjbG9zaW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsb3NpbmdUYWcgPSBgPFxcXFwke3RhZ05hbWV9PmA7XG5cbiAgICByZXR1cm4gY2xvc2luZ1RhZztcbiAgfVxuXG4gIHN0YXJ0aW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCk7XG5cbiAgICBsZXQgY2xhc3NIVE1MID0gRU1QVFlfU1RSSU5HLFxuICAgICAgICBhdHRyaWJ1dGVIVE1MID0gRU1QVFlfU1RSSU5HO1xuXG4gICAgaWYgKGNsYXNzTmFtZSAhPT0gbnVsbCkge1xuICAgICAgY2xhc3NIVE1MID0gYCBjbGFzcz1cIiR7Y2xhc3NOYW1lfVwiYDtcbiAgICB9XG5cbiAgICBpZiAoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpO1xuXG4gICAgICBhdHRyaWJ1dGVIVE1MID0gYCAke2F0dHJpYnV0ZU5hbWV9PVwiJHthdHRyaWJ1dGVWYWx1ZX1cImA7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RhcnRpbmdUYWcgPSBgPCR7dGFnTmFtZX0ke2NsYXNzSFRNTH0ke2F0dHJpYnV0ZUhUTUx9PmA7XG5cbiAgICByZXR1cm4gc3RhcnRpbmdUYWc7XG4gIH1cblxuICBzZWxmQ2xvc2luZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpO1xuXG4gICAgbGV0IGNsYXNzSFRNTCA9IEVNUFRZX1NUUklORyxcbiAgICAgICAgYXR0cmlidXRlSFRNTCA9IEVNUFRZX1NUUklORztcblxuICAgIGlmIChjbGFzc05hbWUgIT09IG51bGwpIHtcbiAgICAgIGNsYXNzSFRNTCA9IGAgY2xhc3M9XCIke2NsYXNzTmFtZX1cImA7XG4gICAgfVxuXG4gICAgaWYgKGF0dHJpYnV0ZU5hbWUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KTtcblxuICAgICAgYXR0cmlidXRlSFRNTCA9IGAgJHthdHRyaWJ1dGVOYW1lfT1cIiR7YXR0cmlidXRlVmFsdWV9XCJgO1xuICAgIH1cblxuICAgIGNvbnN0IHNlbGZDbG9zaW5nVGFnID0gYDwke3RhZ05hbWV9JHtjbGFzc0hUTUx9JHthdHRyaWJ1dGVIVE1MfS8+YDtcblxuICAgIHJldHVybiBzZWxmQ2xvc2luZ1RhZztcbiAgfVxuXG4gIGFkanVzdEluZGVudChpbmRlbnQpIHtcbiAgICBpZiAoaW5kZW50ICE9PSBudWxsKSB7XG4gICAgICBpbmRlbnQgPSBgICAke2luZGVudH1gO1xuICAgIH1cblxuICAgIHJldHVybiBpbmRlbnQ7XG4gIH1cblxuICBhdHRyaWJ1dGVOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVOYW1lO1xuICB9XG5cbiAgYXR0cmlidXRlVmFsdWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVWYWx1ZTtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIGNoaWxkTm9kZXNIVE1MID0gY2hpbGROb2Rlcy5yZWR1Y2UoKGNoaWxkTm9kZXNIVE1MLCBjaGlsZE5vZGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSA9IGNoaWxkTm9kZS5pc05vblRlcm1pbmFsTm9kZSgpO1xuXG4gICAgICAgICAgICBpZiAoY2hpbGROb2RlTm9uVGVybWluYWxOb2RlKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGNoaWxkTm9kZUhUTUwgPSBjaGlsZE5vZGUuYXNIVE1MKGluZGVudCwgY29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKGNoaWxkTm9kZUhUTUwgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBjaGlsZE5vZGVzSFRNTCA9IChjaGlsZE5vZGVzSFRNTCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGVIVE1MIDogIC8vL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYCR7Y2hpbGROb2Rlc0hUTUx9JHtjaGlsZE5vZGVIVE1MfWA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICAgICAgICAgIH0sIG51bGwpO1xuXG4gICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICB9XG5cbiAgY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KSB7XG4gICAgbGV0IGRvbUVsZW1lbnQgPSBudWxsO1xuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGlmICh0YWdOYW1lICE9PSBudWxsKSB7XG4gICAgICBkb21FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTtcblxuICAgICAgdGhpcy5zZXRET01FbGVtZW50KGRvbUVsZW1lbnQpO1xuXG4gICAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCk7XG5cbiAgICAgIGlmIChjbGFzc05hbWUgIT09IG51bGwpIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbihkb21FbGVtZW50LCB7XG4gICAgICAgICAgY2xhc3NOYW1lXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVWYWx1ZSA9IHRoaXMuYXR0cmlidXRlVmFsdWUoY29udGV4dCk7XG5cbiAgICAgICAgZG9tRWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSwgYXR0cmlidXRlVmFsdWUpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNyZWF0ZUNoaWxkTm9kZURPTUVsZW1lbnRzKGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiBkb21FbGVtZW50O1xuICB9XG5cbiAgY3JlYXRlQ2hpbGROb2RlRE9NRWxlbWVudHMoY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKTtcblxuICAgIGNoaWxkTm9kZXMuZm9yRWFjaCgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVOb25UZXJtaW5hbE5vZGUgPSBjaGlsZE5vZGUuaXNOb25UZXJtaW5hbE5vZGUoKTtcblxuICAgICAgaWYgKGNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSkge1xuICAgICAgICBjb25zdCBjaGlsZE5vZGVET01FbGVtZW50ID0gY2hpbGROb2RlLmNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCk7XG5cbiAgICAgICAgaWYgKGNoaWxkTm9kZURPTUVsZW1lbnQgIT09IG51bGwpIHtcbiAgICAgICAgICB0aGlzLmluc2VydERPTUVsZW1lbnQoY2hpbGROb2RlRE9NRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGluc2VydERPTUVsZW1lbnQoZG9tRWxlbWVudCkge1xuICAgIGNvbnN0IHBhcmVudERPTUVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQsICAvLy9cbiAgICAgICAgICBzaWJsaW5nRE9NRWxlbWVudCA9IG51bGw7XG5cbiAgICBwYXJlbnRET01FbGVtZW50Lmluc2VydEJlZm9yZShkb21FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCk7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCBkb21FbGVtZW50ID0gbnVsbCxcbiAgICAgICAgICBtYXJrZG93bk5vZGUgPSBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG1hcmtkb3duTm9kZTtcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKE1hcmtkb3duTm9kZS5wcm90b3R5cGUsIG5vZGVNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihNYXJrZG93bk5vZGUucHJvdG90eXBlLCBlbGVtZW50TWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgTWFya2Rvd25Ob2RlO1xuIl0sIm5hbWVzIjpbIk1hcmtkb3duTm9kZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsInByZWNlZGVuY2UiLCJvcGFjaXR5IiwiZG9tRWxlbWVudCIsImdldERPTUVsZW1lbnQiLCJzZXRET01FbGVtZW50IiwidGFnTmFtZSIsImNvbnRleHQiLCJydWxlTmFtZVRvSFRNTE1hcCIsImNsYXNzTmFtZSIsImFzSFRNTCIsImluZGVudCIsInVuZGVmaW5lZCIsIkVNUFRZX1NUUklORyIsImh0bWwiLCJhZGp1c3RJbmRlbnQiLCJjaGlsZE5vZGVzSFRNTCIsImNoaWxkTm9kZXNBc0hUTUwiLCJzdGFydGluZ1RhZyIsImNsb3NpbmdUYWciLCJ0cmltIiwic2VsZkNsb3NpbmdUYWciLCJhdHRyaWJ1dGVOYW1lIiwiY2xhc3NIVE1MIiwiYXR0cmlidXRlSFRNTCIsImF0dHJpYnV0ZVZhbHVlIiwiZ2V0Q2hpbGROb2RlcyIsInJlZHVjZSIsImNoaWxkTm9kZSIsImNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSIsImlzTm9uVGVybWluYWxOb2RlIiwiY2hpbGROb2RlSFRNTCIsImNyZWF0ZURPTUVsZW1lbnQiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJzZXRBdHRyaWJ1dGUiLCJjcmVhdGVDaGlsZE5vZGVET01FbGVtZW50cyIsImZvckVhY2giLCJjaGlsZE5vZGVET01FbGVtZW50IiwiaW5zZXJ0RE9NRWxlbWVudCIsInBhcmVudERPTUVsZW1lbnQiLCJzaWJsaW5nRE9NRWxlbWVudCIsImluc2VydEJlZm9yZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5IiwiQ2xhc3MiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJOb25UZXJtaW5hbE5vZGUiLCJtYXJrZG93bk5vZGUiLCJwcm90b3R5cGUiLCJub2RlTWl4aW5zIiwiZWxlbWVudE1peGlucyJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
package/lib/utilities/content.js
CHANGED
|
@@ -13,22 +13,25 @@ var _constants = require("../constants");
|
|
|
13
13
|
var _tokenTypes = require("../tokenTypes");
|
|
14
14
|
var first = _necessary.arrayUtilities.first, last = _necessary.arrayUtilities.last;
|
|
15
15
|
function contentFromMarkdownNodes(markdownNodes, context) {
|
|
16
|
+
var trimmed = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
|
|
16
17
|
var content = _constants.EMPTY_STRING;
|
|
17
18
|
var tokens = context.tokens;
|
|
18
19
|
var markdownNodesLength = markdownNodes.length, firstMarkdownNode = first(markdownNodes), lastMarkdownNode = markdownNodesLength === 1 ? firstMarkdownNode : last(markdownNodes), firstSignificantToken = firstMarkdownNode.getFirstSignificantToken(), lastSignificantToken = lastMarkdownNode.getLastSignificantToken(), firstSignificantTokenIndex = tokens.indexOf(firstSignificantToken), lastSignificantTokenIndex = tokens.indexOf(lastSignificantToken);
|
|
19
20
|
var firstTokenIndex = firstSignificantTokenIndex, lastTokenIndex = lastSignificantTokenIndex; ///
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
if (!trimmed) {
|
|
22
|
+
var previousTokenIndex = firstTokenIndex - 1, nextTokenIndex = lastTokenIndex + 1;
|
|
23
|
+
if (previousTokenIndex > -1) {
|
|
24
|
+
var previousToken = tokens[previousTokenIndex], previousTokenSignificant = previousToken.isSignificant();
|
|
25
|
+
if (!previousTokenSignificant) {
|
|
26
|
+
firstTokenIndex--;
|
|
27
|
+
}
|
|
25
28
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
var tokensLength = tokens.length;
|
|
30
|
+
if (nextTokenIndex < tokensLength) {
|
|
31
|
+
var nextToken = tokens[nextTokenIndex], nextTokenSignificant = nextToken.isSignificant();
|
|
32
|
+
if (!nextTokenSignificant) {
|
|
33
|
+
lastTokenIndex++;
|
|
34
|
+
}
|
|
32
35
|
}
|
|
33
36
|
}
|
|
34
37
|
var start = firstTokenIndex, end = lastTokenIndex + 1;
|
|
@@ -49,4 +52,4 @@ function tokenContentFromToken(token) {
|
|
|
49
52
|
return tokenContent;
|
|
50
53
|
}
|
|
51
54
|
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29udGVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYXJyYXlVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCB7IEVNUFRZX1NUUklORyB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IEVTQ0FQRURfVE9LRU5fVFlQRSB9IGZyb20gXCIuLi90b2tlblR5cGVzXCI7XG5cbmNvbnN0IHsgZmlyc3QsIGxhc3QgfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZnVuY3Rpb24gY29udGVudEZyb21NYXJrZG93bk5vZGVzKG1hcmtkb3duTm9kZXMsIGNvbnRleHQsIHRyaW1tZWQgPSBmYWxzZSkge1xuICBsZXQgY29udGVudCA9IEVNUFRZX1NUUklORztcblxuICBsZXQgeyB0b2tlbnMgfSA9IGNvbnRleHQ7XG5cbiAgY29uc3QgbWFya2Rvd25Ob2Rlc0xlbmd0aCA9IG1hcmtkb3duTm9kZXMubGVuZ3RoLFxuICAgICAgICBmaXJzdE1hcmtkb3duTm9kZSA9IGZpcnN0KG1hcmtkb3duTm9kZXMpLFxuICAgICAgICBsYXN0TWFya2Rvd25Ob2RlID0gKG1hcmtkb3duTm9kZXNMZW5ndGggPT09IDEpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXJzdE1hcmtkb3duTm9kZSA6IC8vL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFzdChtYXJrZG93bk5vZGVzKSxcbiAgICAgICAgZmlyc3RTaWduaWZpY2FudFRva2VuID0gZmlyc3RNYXJrZG93bk5vZGUuZ2V0Rmlyc3RTaWduaWZpY2FudFRva2VuKCksXG4gICAgICAgIGxhc3RTaWduaWZpY2FudFRva2VuID0gbGFzdE1hcmtkb3duTm9kZS5nZXRMYXN0U2lnbmlmaWNhbnRUb2tlbigpLFxuICAgICAgICBmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCA9IHRva2Vucy5pbmRleE9mKGZpcnN0U2lnbmlmaWNhbnRUb2tlbiksXG4gICAgICAgIGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggPSB0b2tlbnMuaW5kZXhPZihsYXN0U2lnbmlmaWNhbnRUb2tlbik7XG5cbiAgbGV0IGZpcnN0VG9rZW5JbmRleCA9IGZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4LCAgLy8vXG4gICAgICBsYXN0VG9rZW5JbmRleCA9IGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXg7IC8vL1xuXG4gIGlmICghdHJpbW1lZCkge1xuICAgIGNvbnN0IHByZXZpb3VzVG9rZW5JbmRleCA9IGZpcnN0VG9rZW5JbmRleCAtIDEsXG4gICAgICAgICAgbmV4dFRva2VuSW5kZXggPSBsYXN0VG9rZW5JbmRleCArIDE7XG5cbiAgICBpZiAocHJldmlvdXNUb2tlbkluZGV4ID4gLTEpIHtcbiAgICAgIGNvbnN0IHByZXZpb3VzVG9rZW4gPSB0b2tlbnNbcHJldmlvdXNUb2tlbkluZGV4XSxcbiAgICAgICAgICAgIHByZXZpb3VzVG9rZW5TaWduaWZpY2FudCA9IHByZXZpb3VzVG9rZW4uaXNTaWduaWZpY2FudCgpO1xuXG4gICAgICBpZiAoIXByZXZpb3VzVG9rZW5TaWduaWZpY2FudCkge1xuICAgICAgICBmaXJzdFRva2VuSW5kZXgtLTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB0b2tlbnNMZW5ndGggPSB0b2tlbnMubGVuZ3RoO1xuXG4gICAgaWYgKG5leHRUb2tlbkluZGV4IDwgdG9rZW5zTGVuZ3RoKSB7XG4gICAgICBjb25zdCBuZXh0VG9rZW4gPSB0b2tlbnNbbmV4dFRva2VuSW5kZXhdLFxuICAgICAgICAgICAgbmV4dFRva2VuU2lnbmlmaWNhbnQgPSBuZXh0VG9rZW4uaXNTaWduaWZpY2FudCgpO1xuXG4gICAgICBpZiAoIW5leHRUb2tlblNpZ25pZmljYW50KSB7XG4gICAgICAgIGxhc3RUb2tlbkluZGV4Kys7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3Qgc3RhcnQgPSBmaXJzdFRva2VuSW5kZXgsICAvLy9cbiAgICAgICAgZW5kID0gbGFzdFRva2VuSW5kZXggKyAxO1xuXG4gIHRva2VucyA9IHRva2Vucy5zbGljZShzdGFydCwgZW5kKTtcblxuICB0b2tlbnMuZm9yRWFjaCgodG9rZW4pID0+IHtcbiAgICBjb25zdCB0b2tlbkNvbnRlbnQgPSB0b2tlbkNvbnRlbnRGcm9tVG9rZW4odG9rZW4pO1xuXG4gICAgY29udGVudCArPSB0b2tlbkNvbnRlbnQ7XG4gIH0pO1xuXG4gIHJldHVybiBjb250ZW50O1xufVxuXG5mdW5jdGlvbiB0b2tlbkNvbnRlbnRGcm9tVG9rZW4odG9rZW4pIHtcbiAgbGV0IHRva2VuQ29udGVudCA9IHRva2VuLmdldENvbnRlbnQoKTtcblxuICBjb25zdCB0eXBlID0gdG9rZW4uZ2V0VHlwZSgpO1xuXG4gIGlmICh0eXBlID09PSBFU0NBUEVEX1RPS0VOX1RZUEUpIHtcbiAgICBjb25zdCBzdGFydCA9IDE7XG5cbiAgICB0b2tlbkNvbnRlbnQgPSB0b2tlbkNvbnRlbnQuc3Vic3RyaW5nKHN0YXJ0KTtcbiAgfVxuXG4gIHJldHVybiB0b2tlbkNvbnRlbnQ7XG59XG4iXSwibmFtZXMiOlsiY29udGVudEZyb21NYXJrZG93bk5vZGVzIiwiZmlyc3QiLCJhcnJheVV0aWxpdGllcyIsImxhc3QiLCJtYXJrZG93bk5vZGVzIiwiY29udGV4dCIsInRyaW1tZWQiLCJjb250ZW50IiwiRU1QVFlfU1RSSU5HIiwidG9rZW5zIiwibWFya2Rvd25Ob2Rlc0xlbmd0aCIsImxlbmd0aCIsImZpcnN0TWFya2Rvd25Ob2RlIiwibGFzdE1hcmtkb3duTm9kZSIsImZpcnN0U2lnbmlmaWNhbnRUb2tlbiIsImdldEZpcnN0U2lnbmlmaWNhbnRUb2tlbiIsImxhc3RTaWduaWZpY2FudFRva2VuIiwiZ2V0TGFzdFNpZ25pZmljYW50VG9rZW4iLCJmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCIsImluZGV4T2YiLCJsYXN0U2lnbmlmaWNhbnRUb2tlbkluZGV4IiwiZmlyc3RUb2tlbkluZGV4IiwibGFzdFRva2VuSW5kZXgiLCJwcmV2aW91c1Rva2VuSW5kZXgiLCJuZXh0VG9rZW5JbmRleCIsInByZXZpb3VzVG9rZW4iLCJwcmV2aW91c1Rva2VuU2lnbmlmaWNhbnQiLCJpc1NpZ25pZmljYW50IiwidG9rZW5zTGVuZ3RoIiwibmV4dFRva2VuIiwibmV4dFRva2VuU2lnbmlmaWNhbnQiLCJzdGFydCIsImVuZCIsInNsaWNlIiwiZm9yRWFjaCIsInRva2VuIiwidG9rZW5Db250ZW50IiwidG9rZW5Db250ZW50RnJvbVRva2VuIiwiZ2V0Q29udGVudCIsInR5cGUiLCJnZXRUeXBlIiwiRVNDQVBFRF9UT0tFTl9UWVBFIiwic3Vic3RyaW5nIl0sInJhbmdlTWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7IiwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNnQkE7OztlQUFBQTs7O3lCQVBlO3lCQUVGOzBCQUNNO0FBRW5DLElBQVFDLFFBQWdCQyx5QkFBYyxDQUE5QkQsT0FBT0UsT0FBU0QseUJBQWMsQ0FBdkJDO0FBRVIsU0FBU0gseUJBQXlCSSxhQUFhLEVBQUVDLE9BQU87UUFBRUMsVUFBQUEsaUVBQVU7SUFDekUsSUFBSUMsVUFBVUMsdUJBQVk7SUFFMUIsSUFBSSxBQUFFQyxTQUFXSixRQUFYSTtJQUVOLElBQU1DLHNCQUFzQk4sY0FBY08sTUFBTSxFQUMxQ0Msb0JBQW9CWCxNQUFNRyxnQkFDMUJTLG1CQUFtQixBQUFDSCx3QkFBd0IsSUFDckJFLG9CQUNFVCxLQUFLQyxnQkFDOUJVLHdCQUF3QkYsa0JBQWtCRyx3QkFBd0IsSUFDbEVDLHVCQUF1QkgsaUJBQWlCSSx1QkFBdUIsSUFDL0RDLDZCQUE2QlQsT0FBT1UsT0FBTyxDQUFDTCx3QkFDNUNNLDRCQUE0QlgsT0FBT1UsT0FBTyxDQUFDSDtJQUVqRCxJQUFJSyxrQkFBa0JILDRCQUNsQkksaUJBQWlCRiwyQkFBMkIsR0FBRztJQUVuRCxJQUFJLENBQUNkLFNBQVM7UUFDWixJQUFNaUIscUJBQXFCRixrQkFBa0IsR0FDdkNHLGlCQUFpQkYsaUJBQWlCO1FBRXhDLElBQUlDLHFCQUFxQixDQUFDLEdBQUc7WUFDM0IsSUFBTUUsZ0JBQWdCaEIsTUFBTSxDQUFDYyxtQkFBbUIsRUFDMUNHLDJCQUEyQkQsY0FBY0UsYUFBYTtZQUU1RCxJQUFJLENBQUNELDBCQUEwQjtnQkFDN0JMO1lBQ0Y7UUFDRjtRQUVBLElBQU1PLGVBQWVuQixPQUFPRSxNQUFNO1FBRWxDLElBQUlhLGlCQUFpQkksY0FBYztZQUNqQyxJQUFNQyxZQUFZcEIsTUFBTSxDQUFDZSxlQUFlLEVBQ2xDTSx1QkFBdUJELFVBQVVGLGFBQWE7WUFFcEQsSUFBSSxDQUFDRyxzQkFBc0I7Z0JBQ3pCUjtZQUNGO1FBQ0Y7SUFDRjtJQUVBLElBQU1TLFFBQVFWLGlCQUNSVyxNQUFNVixpQkFBaUI7SUFFN0JiLFNBQVNBLE9BQU93QixLQUFLLENBQUNGLE9BQU9DO0lBRTdCdkIsT0FBT3lCLE9BQU8sQ0FBQyxTQUFDQztRQUNkLElBQU1DLGVBQWVDLHNCQUFzQkY7UUFFM0M1QixXQUFXNkI7SUFDYjtJQUVBLE9BQU83QjtBQUNUO0FBRUEsU0FBUzhCLHNCQUFzQkYsS0FBSztJQUNsQyxJQUFJQyxlQUFlRCxNQUFNRyxVQUFVO0lBRW5DLElBQU1DLE9BQU9KLE1BQU1LLE9BQU87SUFFMUIsSUFBSUQsU0FBU0UsOEJBQWtCLEVBQUU7UUFDL0IsSUFBTVYsUUFBUTtRQUVkSyxlQUFlQSxhQUFhTSxTQUFTLENBQUNYO0lBQ3hDO0lBRUEsT0FBT0s7QUFDVCJ9
|
package/package.json
CHANGED
package/src/example/view.js
CHANGED
|
@@ -110,7 +110,11 @@ class View extends Element {
|
|
|
110
110
|
}
|
|
111
111
|
|
|
112
112
|
static initialMarkdown = `
|
|
113
|
-
|
|
113
|
+
|
|
114
|
+
1. Regular expressions[^regular-expressions].
|
|
115
|
+
|
|
116
|
+
[^regular-expressions]: A footnote about regular expressions.
|
|
117
|
+
|
|
114
118
|
`;
|
|
115
119
|
|
|
116
120
|
static tagName = "div";
|
package/src/markdown/bnf.js
CHANGED
|
@@ -82,10 +82,10 @@ const bnf = `
|
|
|
82
82
|
footnoteItem ::= anchor paragraph ;
|
|
83
83
|
|
|
84
84
|
|
|
85
|
-
orderedListItem
|
|
85
|
+
orderedListItem. ::= [number]<NO_WHITESPACE>"." line ;
|
|
86
86
|
|
|
87
87
|
|
|
88
|
-
unorderedListItem
|
|
88
|
+
unorderedListItem. ::= ( [single-dash] | [single-asterisk] ) line ;
|
|
89
89
|
|
|
90
90
|
|
|
91
91
|
tableHead ::= tableHeadRow ;
|
package/src/markdown/entries.js
CHANGED
|
@@ -47,7 +47,7 @@ const entries = [
|
|
|
47
47
|
"number": "^[1-9][0-9]*"
|
|
48
48
|
},
|
|
49
49
|
{
|
|
50
|
-
"path": "^\\/(?:[A-Za-
|
|
50
|
+
"path": "^\\/(?:[A-Za-z_\\-]+\\/)*(?:[A-Za-z_\\-]+(?:\\.[A-Za-z_\\-]+)?)?"
|
|
51
51
|
},
|
|
52
52
|
{
|
|
53
53
|
"domain": "^[a-z]+(?:-[a-z]+)*(?:\\.[a-z]+(?:-[a-z]+)*)+"
|
package/src/markdown/lexer.js
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import { CommonLexer } from "occam-lexers";
|
|
4
4
|
import { WhitespaceToken,
|
|
5
|
-
RegularExpressionToken,
|
|
6
5
|
EndOfLineSignificantToken,
|
|
7
6
|
CStyleSingleLineCommentToken,
|
|
8
7
|
SinglyQuotedStringLiteralToken,
|
|
@@ -25,7 +24,7 @@ export default class MarkdownLexer extends CommonLexer {
|
|
|
25
24
|
|
|
26
25
|
static SingleLineCommentToken = CStyleSingleLineCommentToken; ///
|
|
27
26
|
|
|
28
|
-
static RegularExpressionToken =
|
|
27
|
+
static RegularExpressionToken = null;
|
|
29
28
|
|
|
30
29
|
static EndOfMultiLineCommentToken = CStyleEndOfMultiLineCommentToken; ///
|
|
31
30
|
|
package/src/mixins/content.js
CHANGED
|
@@ -3,11 +3,12 @@
|
|
|
3
3
|
import { contentFromMarkdownNodes } from "../utilities/content";
|
|
4
4
|
|
|
5
5
|
function content(context) {
|
|
6
|
-
const
|
|
6
|
+
const trimmed = true,
|
|
7
|
+
markdownNode = this, ///
|
|
7
8
|
markdownNodes = [
|
|
8
9
|
markdownNode
|
|
9
10
|
],
|
|
10
|
-
content = contentFromMarkdownNodes(markdownNodes, context);
|
|
11
|
+
content = contentFromMarkdownNodes(markdownNodes, context, trimmed);
|
|
11
12
|
|
|
12
13
|
return content;
|
|
13
14
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import MarkdownNode from "../../node/markdown";
|
|
4
4
|
import contentMixins from "../../mixins/content";
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
class AddressMarkdownNode extends MarkdownNode {
|
|
7
7
|
asHTML(indent, context) {
|
|
8
8
|
const content = this.content(context),
|
|
9
9
|
html = content; ///
|
|
@@ -24,3 +24,5 @@ export default class AddressMarkdownNode extends MarkdownNode {
|
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
Object.assign(AddressMarkdownNode.prototype, contentMixins);
|
|
27
|
+
|
|
28
|
+
export default AddressMarkdownNode;
|
|
@@ -7,15 +7,6 @@ import MarkdownNode from "../../node/markdown";
|
|
|
7
7
|
const { first, second } = arrayUtilities;
|
|
8
8
|
|
|
9
9
|
export default class BlockListingMarkdownNode extends MarkdownNode {
|
|
10
|
-
content(context) {
|
|
11
|
-
const childNodes = this.getChildNodes(),
|
|
12
|
-
secondChildNode = second(childNodes),
|
|
13
|
-
blockTextMarkdownNode = secondChildNode, ///
|
|
14
|
-
content = blockTextMarkdownNode.content(context);
|
|
15
|
-
|
|
16
|
-
return content;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
10
|
className(context) {
|
|
20
11
|
let className = super.className(context);
|
|
21
12
|
|
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import contentMixins from "../../mixins/content";
|
|
4
|
-
|
|
5
3
|
import MarkdownNode from "../markdown";
|
|
4
|
+
import contentMixins from "../../mixins/content";
|
|
6
5
|
|
|
7
6
|
class BlockTextMarkdownNode extends MarkdownNode {
|
|
8
7
|
asHTML(indent, context) {
|
|
9
|
-
const
|
|
8
|
+
const trimmed = false,
|
|
9
|
+
content = this.content(context, trimmed),
|
|
10
10
|
html = content; ///
|
|
11
11
|
|
|
12
12
|
return html;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
createDOMElement(context) {
|
|
16
|
-
const
|
|
17
|
-
|
|
16
|
+
const trimmed = false,
|
|
17
|
+
content = this.content(context),
|
|
18
|
+
domElement = document.createTextNode(content, trimmed);
|
|
18
19
|
|
|
19
20
|
this.setDOMElement(domElement);
|
|
20
21
|
|
|
@@ -5,7 +5,6 @@ import FootnotesListMarkdownNode from "../../node/markdown/footnotesList";
|
|
|
5
5
|
|
|
6
6
|
import { EMPTY_STRING } from "../../constants";
|
|
7
7
|
import { renumberLinkMarkdownNodes, renumberLinkMarkdownNodesHTML } from "../../utilities/link";
|
|
8
|
-
import ruleNameToHTMLMap from "../../ruleNameToHTMLMap";
|
|
9
8
|
|
|
10
9
|
export default class DivisionMarkdownNode extends MarkdownNode {
|
|
11
10
|
className(context) {
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import contentMixins from "../../mixins/content";
|
|
4
|
-
|
|
5
3
|
import MarkdownNode from "../markdown";
|
|
4
|
+
import contentMixins from "../../mixins/content";
|
|
6
5
|
|
|
7
6
|
class EmphasisedTextMarkdownNode extends MarkdownNode {
|
|
8
7
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(EmphasisedTextMarkdownNode, ruleName, childNodes, opacity); }
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import MarkdownNode from "../../node/markdown";
|
|
4
|
+
import contentMixins from "../../mixins/content";
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
class EndOfLineMarkdownNode extends MarkdownNode {
|
|
6
7
|
asHTML(indent, context) {
|
|
7
8
|
const content = this.content(context),
|
|
8
9
|
html = content; ///
|
|
@@ -19,13 +20,9 @@ export default class EndOfLineMarkdownNode extends MarkdownNode {
|
|
|
19
20
|
return domElement;
|
|
20
21
|
}
|
|
21
22
|
|
|
22
|
-
content(context) {
|
|
23
|
-
const firstSignificantToken = this.getFirstSignificantToken(),
|
|
24
|
-
endOfLineToken = firstSignificantToken, ///
|
|
25
|
-
content = endOfLineToken.getContent();
|
|
26
|
-
|
|
27
|
-
return content;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
23
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(EndOfLineMarkdownNode, ruleName, childNodes, opacity); }
|
|
31
24
|
}
|
|
25
|
+
|
|
26
|
+
Object.assign(EndOfLineMarkdownNode.prototype, contentMixins);
|
|
27
|
+
|
|
28
|
+
export default EndOfLineMarkdownNode;
|
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { arrayUtilities } from "necessary";
|
|
4
|
-
|
|
5
3
|
import MarkdownNode from "../../node/markdown";
|
|
4
|
+
import contentMixins from "../../mixins/content";
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
export default class ErrorMarkdownNode extends MarkdownNode {
|
|
6
|
+
class ErrorMarkdownNode extends MarkdownNode {
|
|
10
7
|
childNodesAsHTML(indent, context) {
|
|
11
8
|
const content = this.content(context),
|
|
12
9
|
childNodesHTML = content; ///
|
|
@@ -16,22 +13,14 @@ export default class ErrorMarkdownNode extends MarkdownNode {
|
|
|
16
13
|
|
|
17
14
|
createChildNodeDOMElements(context) {
|
|
18
15
|
const content = this.content(context),
|
|
19
|
-
domElement = this.getDOMElement(),
|
|
20
|
-
parentDOMElement = domElement, ///
|
|
21
|
-
siblingDOMElement = null,
|
|
22
16
|
childNodeDOMElement = document.createTextNode(content);
|
|
23
17
|
|
|
24
|
-
|
|
18
|
+
this.insertDOMElement(childNodeDOMElement);
|
|
25
19
|
}
|
|
26
20
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
firstChildNode = first(childNodes),
|
|
30
|
-
terminalNode = firstChildNode, ///
|
|
31
|
-
content = terminalNode.getContent();
|
|
21
|
+
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(ErrorMarkdownNode, ruleName, childNodes, opacity); }
|
|
22
|
+
}
|
|
32
23
|
|
|
33
|
-
|
|
34
|
-
}
|
|
24
|
+
Object.assign(ErrorMarkdownNode.prototype, contentMixins);
|
|
35
25
|
|
|
36
|
-
|
|
37
|
-
}
|
|
26
|
+
export default ErrorMarkdownNode;
|
|
@@ -9,11 +9,39 @@ import { HREF_ATTRIBUTE_NAME } from "../../attributeNames";
|
|
|
9
9
|
const { first, second, secondLast } = arrayUtilities;
|
|
10
10
|
|
|
11
11
|
export default class HyperlinkMarkdownNode extends MarkdownNode {
|
|
12
|
+
attributeName(context) {
|
|
13
|
+
const attributeName = HREF_ATTRIBUTE_NAME;
|
|
14
|
+
|
|
15
|
+
return attributeName;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
attributeValue(context) {
|
|
19
|
+
const childNodes = this.getChildNodes(),
|
|
20
|
+
childNodesLength = childNodes.length;
|
|
21
|
+
|
|
22
|
+
let urlMarkdownNode;
|
|
23
|
+
|
|
24
|
+
if (childNodesLength === 1) {
|
|
25
|
+
const firstChildNode = first(childNodes);
|
|
26
|
+
|
|
27
|
+
urlMarkdownNode = firstChildNode; ///
|
|
28
|
+
} else {
|
|
29
|
+
const secondLastChildNode = secondLast(childNodes);
|
|
30
|
+
|
|
31
|
+
urlMarkdownNode = secondLastChildNode; ///
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const urlMarkdownNodeContent = urlMarkdownNode.content(context),
|
|
35
|
+
attributeValue = urlMarkdownNodeContent; ///
|
|
36
|
+
|
|
37
|
+
return attributeValue;
|
|
38
|
+
}
|
|
39
|
+
|
|
12
40
|
childNodesAsHTML(indent, context) {
|
|
13
41
|
let childNodesHTML;
|
|
14
42
|
|
|
15
43
|
const childNodes = this.getChildNodes(),
|
|
16
|
-
|
|
44
|
+
childNodesLength = childNodes.length;
|
|
17
45
|
|
|
18
46
|
if (childNodesLength === 1) {
|
|
19
47
|
const firstChildNode = first(childNodes),
|
|
@@ -34,7 +62,7 @@ export default class HyperlinkMarkdownNode extends MarkdownNode {
|
|
|
34
62
|
|
|
35
63
|
createChildNodeDOMElements(context) {
|
|
36
64
|
const childNodes = this.getChildNodes(),
|
|
37
|
-
|
|
65
|
+
childNodesLength = childNodes.length;
|
|
38
66
|
|
|
39
67
|
if (childNodesLength === 1) {
|
|
40
68
|
const firstChildNode = first(childNodes),
|
|
@@ -51,33 +79,5 @@ export default class HyperlinkMarkdownNode extends MarkdownNode {
|
|
|
51
79
|
}
|
|
52
80
|
}
|
|
53
81
|
|
|
54
|
-
attributeName(context) {
|
|
55
|
-
const attributeName = HREF_ATTRIBUTE_NAME;
|
|
56
|
-
|
|
57
|
-
return attributeName;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
attributeValue(context) {
|
|
61
|
-
const childNodes = this.getChildNodes(),
|
|
62
|
-
childNodesLength = childNodes.length;
|
|
63
|
-
|
|
64
|
-
let urlMarkdownNode;
|
|
65
|
-
|
|
66
|
-
if (childNodesLength === 1) {
|
|
67
|
-
const firstChildNode = first(childNodes);
|
|
68
|
-
|
|
69
|
-
urlMarkdownNode = firstChildNode; ///
|
|
70
|
-
} else {
|
|
71
|
-
const secondLastChildNode = secondLast(childNodes);
|
|
72
|
-
|
|
73
|
-
urlMarkdownNode = secondLastChildNode; ///
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
const urlMarkdownNodeContent = urlMarkdownNode.content(context),
|
|
77
|
-
attributeValue = urlMarkdownNodeContent; ///
|
|
78
|
-
|
|
79
|
-
return attributeValue;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
82
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(HyperlinkMarkdownNode, ruleName, childNodes, opacity); }
|
|
83
83
|
}
|
|
@@ -9,32 +9,6 @@ import { SRC_ATTRIBUTE_NAME } from "../../attributeNames";
|
|
|
9
9
|
const { second, secondLast } = arrayUtilities;
|
|
10
10
|
|
|
11
11
|
export default class ImageMarkdownNode extends MarkdownNode {
|
|
12
|
-
childNodesAsHTML(indent, context) {
|
|
13
|
-
const content = this.content(context),
|
|
14
|
-
childNodesHTML = content; ///
|
|
15
|
-
|
|
16
|
-
return childNodesHTML;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
createChildNodeDOMElements(context) {
|
|
20
|
-
const content = this.content(context),
|
|
21
|
-
domElement = this.getDOMElement(),
|
|
22
|
-
parentDOMElement = domElement, ///
|
|
23
|
-
siblingDOMElement = null,
|
|
24
|
-
childNodeDOMElement = document.createTextNode(content);
|
|
25
|
-
|
|
26
|
-
parentDOMElement.insertBefore(childNodeDOMElement, siblingDOMElement);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
content(context) {
|
|
30
|
-
const childNodes = this.getChildNodes(),
|
|
31
|
-
secondChildNode = second(childNodes),
|
|
32
|
-
inlineTextMarkdownNode = secondChildNode, ///
|
|
33
|
-
content = inlineTextMarkdownNode.content(context);
|
|
34
|
-
|
|
35
|
-
return content;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
12
|
attributeName(context) {
|
|
39
13
|
const attributeName = SRC_ATTRIBUTE_NAME;
|
|
40
14
|
|
|
@@ -49,12 +23,32 @@ export default class ImageMarkdownNode extends MarkdownNode {
|
|
|
49
23
|
pathTerminalNodeContent = pathTerminalNode.getContent(),
|
|
50
24
|
path = pathTerminalNodeContent, ///
|
|
51
25
|
imageURL = (pathToURL === null) ?
|
|
52
|
-
|
|
53
|
-
|
|
26
|
+
path : ///
|
|
27
|
+
pathToURL(path),
|
|
54
28
|
attributeValue = imageURL; ///
|
|
55
29
|
|
|
56
30
|
return attributeValue;
|
|
57
31
|
}
|
|
58
32
|
|
|
33
|
+
childNodesAsHTML(indent, context) {
|
|
34
|
+
const childNodes = this.getChildNodes(),
|
|
35
|
+
secondChildNode = second(childNodes),
|
|
36
|
+
inlineTextMarkdownNode = secondChildNode, ///
|
|
37
|
+
content = inlineTextMarkdownNode.content(context),
|
|
38
|
+
childNodesHTML = content; ///
|
|
39
|
+
|
|
40
|
+
return childNodesHTML;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
createChildNodeDOMElements(context) {
|
|
44
|
+
const childNodes = this.getChildNodes(),
|
|
45
|
+
secondChildNode = second(childNodes),
|
|
46
|
+
inlineTextMarkdownNode = secondChildNode, ///
|
|
47
|
+
content = inlineTextMarkdownNode.content(context),
|
|
48
|
+
childNodeDOMElement = document.createTextNode(content);
|
|
49
|
+
|
|
50
|
+
this.insertDOMElement(childNodeDOMElement);
|
|
51
|
+
}
|
|
52
|
+
|
|
59
53
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(ImageMarkdownNode, ruleName, childNodes, opacity); }
|
|
60
54
|
}
|
|
@@ -14,14 +14,11 @@ export default class LineMarkdownNode extends MarkdownNode {
|
|
|
14
14
|
|
|
15
15
|
createChildNodeDOMElements(context) {
|
|
16
16
|
const childNodes = this.getChildNodes(),
|
|
17
|
-
domElement = this.getDOMElement(),
|
|
18
17
|
domElements = domElementsFromChildNodes(childNodes, context),
|
|
19
|
-
parentDOMElement = domElement, ///
|
|
20
|
-
siblingDOMElement = null,
|
|
21
18
|
childNodeDOMElements = domElements; ///
|
|
22
19
|
|
|
23
20
|
childNodeDOMElements.forEach((childNodeDOMElement) => {
|
|
24
|
-
|
|
21
|
+
this.insertDOMElement(childNodeDOMElement);
|
|
25
22
|
});
|
|
26
23
|
}
|
|
27
24
|
|