highmark-markdown 0.0.170 → 0.0.172
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 +81 -151
- package/lib/example/view/div/preview.js +10 -4
- package/lib/mixins/element.js +10 -1
- package/lib/mixins/node.js +16 -1
- package/lib/node/markdown/blockListing.js +4 -2
- package/lib/node/markdown/division.js +8 -8
- package/lib/node/markdown/emailLink.js +3 -3
- package/lib/node/markdown/error.js +3 -3
- package/lib/node/markdown/hyperlink.js +3 -3
- package/lib/node/markdown/inlineListing.js +3 -3
- package/lib/node/markdown/markedText.js +4 -3
- package/lib/node/markdown/stronglyEmphasisedText.js +5 -5
- package/lib/node/markdown.js +23 -49
- package/lib/utilities/footnotes.js +1 -30
- package/package.json +1 -1
- package/src/example/view/div/preview.js +9 -4
- package/src/mixins/element.js +12 -0
- package/src/mixins/node.js +27 -0
- package/src/node/markdown/blockListing.js +3 -1
- package/src/node/markdown/division.js +6 -6
- package/src/node/markdown/emailLink.js +2 -2
- package/src/node/markdown/error.js +2 -2
- package/src/node/markdown/hyperlink.js +2 -2
- package/src/node/markdown/inlineListing.js +2 -2
- package/src/node/markdown/markedText.js +3 -2
- package/src/node/markdown/stronglyEmphasisedText.js +5 -6
- package/src/node/markdown.js +29 -59
- package/src/utilities/footnotes.js +0 -43
- package/lib/utilities/string.js +0 -44
- package/src/utilities/string.js +0 -47
package/lib/node/markdown.js
CHANGED
|
@@ -174,27 +174,6 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
174
174
|
this.domElement = domElement;
|
|
175
175
|
}
|
|
176
176
|
},
|
|
177
|
-
{
|
|
178
|
-
key: "addChildNode",
|
|
179
|
-
value: function addChildNode(childNode) {
|
|
180
|
-
var childNodes = this.getChildNodes();
|
|
181
|
-
childNodes.push(childNode);
|
|
182
|
-
}
|
|
183
|
-
},
|
|
184
|
-
{
|
|
185
|
-
key: "removeChildNode",
|
|
186
|
-
value: function removeChildNode(childNode) {
|
|
187
|
-
var childNodes = this.getChildNodes(), index = childNodes.indexOf(childNode), start = index, deleteCount = 1;
|
|
188
|
-
childNodes.splice(start, deleteCount);
|
|
189
|
-
}
|
|
190
|
-
},
|
|
191
|
-
{
|
|
192
|
-
key: "replaceChildNode",
|
|
193
|
-
value: function replaceChildNode(replacedChildNode, replacementChildNode) {
|
|
194
|
-
var childNodes = this.getChildNodes(), index = childNodes.indexOf(replacedChildNode), start = index, deleteCount = 1;
|
|
195
|
-
childNodes.splice(start, deleteCount, replacementChildNode);
|
|
196
|
-
}
|
|
197
|
-
},
|
|
198
177
|
{
|
|
199
178
|
key: "tagName",
|
|
200
179
|
value: function tagName(context) {
|
|
@@ -290,6 +269,22 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
290
269
|
return html;
|
|
291
270
|
}
|
|
292
271
|
},
|
|
272
|
+
{
|
|
273
|
+
key: "childNodesAsHTML",
|
|
274
|
+
value: function childNodesAsHTML(indent, context) {
|
|
275
|
+
var childNodes = this.getChildNodes(), childNodesHTML = childNodes.reduce(function(childNodesHTML, childNode) {
|
|
276
|
+
var childNodeNonTerminalNode = childNode.isNonTerminalNode();
|
|
277
|
+
if (childNodeNonTerminalNode) {
|
|
278
|
+
var nonTerminalNode = childNode, markdownNode = nonTerminalNode, markdownNodeHTML = markdownNode.asHTML(indent, context);
|
|
279
|
+
if (markdownNodeHTML !== null) {
|
|
280
|
+
childNodesHTML = childNodesHTML === null ? markdownNodeHTML : "".concat(childNodesHTML).concat(markdownNodeHTML);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
return childNodesHTML;
|
|
284
|
+
}, null);
|
|
285
|
+
return childNodesHTML;
|
|
286
|
+
}
|
|
287
|
+
},
|
|
293
288
|
{
|
|
294
289
|
key: "createDOMElement",
|
|
295
290
|
value: function createDOMElement(context) {
|
|
@@ -299,7 +294,9 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
299
294
|
domElement = document.createElement(tagName);
|
|
300
295
|
var className = this.className(context), attributeName = this.attributeName(context), attributeValue = this.attributeValue(context);
|
|
301
296
|
if (className !== null) {
|
|
302
|
-
domElement
|
|
297
|
+
Object.assign(domElement, {
|
|
298
|
+
className: className
|
|
299
|
+
});
|
|
303
300
|
}
|
|
304
301
|
if (attributeName !== null && attributeValue !== null) {
|
|
305
302
|
domElement.setAttribute(attributeName, attributeValue);
|
|
@@ -310,22 +307,6 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
310
307
|
return domElement;
|
|
311
308
|
}
|
|
312
309
|
},
|
|
313
|
-
{
|
|
314
|
-
key: "childNodesAsHTML",
|
|
315
|
-
value: function childNodesAsHTML(indent, context) {
|
|
316
|
-
var childNodes = this.getChildNodes(), childNodesHTML = childNodes.reduce(function(childNodesHTML, childNode) {
|
|
317
|
-
var childNodeNonTerminalNode = childNode.isNonTerminalNode();
|
|
318
|
-
if (childNodeNonTerminalNode) {
|
|
319
|
-
var nonTerminalNode = childNode, markdownNode = nonTerminalNode, markdownNodeHTML = markdownNode.asHTML(indent, context);
|
|
320
|
-
if (markdownNodeHTML !== null) {
|
|
321
|
-
childNodesHTML = childNodesHTML === null ? markdownNodeHTML : "".concat(childNodesHTML).concat(markdownNodeHTML);
|
|
322
|
-
}
|
|
323
|
-
}
|
|
324
|
-
return childNodesHTML;
|
|
325
|
-
}, null);
|
|
326
|
-
return childNodesHTML;
|
|
327
|
-
}
|
|
328
|
-
},
|
|
329
310
|
{
|
|
330
311
|
key: "createChildNodeDOMElements",
|
|
331
312
|
value: function createChildNodeDOMElements(context) {
|
|
@@ -334,21 +315,14 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
334
315
|
childNodes.forEach(function(childNode) {
|
|
335
316
|
var childNodeNonTerminalNode = childNode.isNonTerminalNode();
|
|
336
317
|
if (childNodeNonTerminalNode) {
|
|
337
|
-
var nonTerminalNode = childNode, markdownNode = nonTerminalNode,
|
|
338
|
-
if (
|
|
339
|
-
_this.
|
|
318
|
+
var nonTerminalNode = childNode, markdownNode = nonTerminalNode, domElement = markdownNode.createDOMElement(context);
|
|
319
|
+
if (domElement !== null) {
|
|
320
|
+
_this.addDOMElement(domElement);
|
|
340
321
|
}
|
|
341
322
|
}
|
|
342
323
|
});
|
|
343
324
|
}
|
|
344
325
|
},
|
|
345
|
-
{
|
|
346
|
-
key: "insertDOMElement",
|
|
347
|
-
value: function insertDOMElement(domElement) {
|
|
348
|
-
var parentDOMElement = this.domElement, siblingDOMElement = null, childNodeDOMElement = domElement; ///
|
|
349
|
-
parentDOMElement.insertBefore(childNodeDOMElement, siblingDOMElement);
|
|
350
|
-
}
|
|
351
|
-
},
|
|
352
326
|
{
|
|
353
327
|
key: "clone",
|
|
354
328
|
value: function clone() {
|
|
@@ -387,4 +361,4 @@ Object.assign(MarkdownNode.prototype, _node.default);
|
|
|
387
361
|
Object.assign(MarkdownNode.prototype, _element.default);
|
|
388
362
|
var _default = MarkdownNode;
|
|
389
363
|
|
|
390
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL21hcmtkb3duLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuXG5pbXBvcnQgbm9kZU1peGlucyBmcm9tIFwiLi4vbWl4aW5zL25vZGVcIjtcbmltcG9ydCBlbGVtZW50TWl4aW5zIGZyb20gXCIuLi9taXhpbnMvZWxlbWVudFwiO1xuaW1wb3J0IHJ1bGVOYW1lVG9IVE1MTWFwIGZyb20gXCIuLi9ydWxlTmFtZVRvSFRNTE1hcFwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmNsYXNzIE1hcmtkb3duTm9kZSBleHRlbmRzIE5vblRlcm1pbmFsTm9kZSB7XG4gIGNvbnN0cnVjdG9yKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBwcmVjZWRlbmNlLCBvcGFjaXR5LCBkb21FbGVtZW50KSB7XG4gICAgc3VwZXIocnVsZU5hbWUsIGNoaWxkTm9kZXMsIHByZWNlZGVuY2UsIG9wYWNpdHkpO1xuXG4gICAgdGhpcy5kb21FbGVtZW50ID0gZG9tRWxlbWVudDtcbiAgfVxuXG4gIGdldERPTUVsZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZG9tRWxlbWVudDtcbiAgfVxuXG4gIHNldERPTUVsZW1lbnQoZG9tRWxlbWVudCkge1xuICAgIHRoaXMuZG9tRWxlbWVudCA9IGRvbUVsZW1lbnQ7XG4gIH1cblxuICBhZGRDaGlsZE5vZGUoY2hpbGROb2RlKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpO1xuXG4gICAgY2hpbGROb2Rlcy5wdXNoKGNoaWxkTm9kZSk7XG4gIH1cblxuICByZW1vdmVDaGlsZE5vZGUoY2hpbGROb2RlKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIGluZGV4ID0gY2hpbGROb2Rlcy5pbmRleE9mKGNoaWxkTm9kZSksXG4gICAgICAgICAgc3RhcnQgPSBpbmRleCwgIC8vL1xuICAgICAgICAgIGRlbGV0ZUNvdW50ID0gMTtcblxuICAgIGNoaWxkTm9kZXMuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCk7XG4gIH1cblxuICByZXBsYWNlQ2hpbGROb2RlKHJlcGxhY2VkQ2hpbGROb2RlLCByZXBsYWNlbWVudENoaWxkTm9kZSkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBpbmRleCA9IGNoaWxkTm9kZXMuaW5kZXhPZihyZXBsYWNlZENoaWxkTm9kZSksXG4gICAgICAgICAgc3RhcnQgPSBpbmRleCwgIC8vL1xuICAgICAgICAgIGRlbGV0ZUNvdW50ID0gMTtcblxuICAgIGNoaWxkTm9kZXMuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCwgcmVwbGFjZW1lbnRDaGlsZE5vZGUpO1xuICB9XG5cbiAgdGFnTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgeyB0YWdOYW1lIH0gPSBydWxlTmFtZVRvSFRNTE1hcFt0aGlzLnJ1bGVOYW1lXTtcblxuICAgIHJldHVybiB0YWdOYW1lO1xuICB9XG5cbiAgY2xhc3NOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSB9ID0gcnVsZU5hbWVUb0hUTUxNYXBbdGhpcy5ydWxlTmFtZV07XG5cbiAgICByZXR1cm4gY2xhc3NOYW1lO1xuICB9XG5cbiAgY2xvc2luZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBjbG9zaW5nVGFnID0gYDwvJHt0YWdOYW1lfT5gO1xuXG4gICAgcmV0dXJuIGNsb3NpbmdUYWc7XG4gIH1cblxuICBzdGFydGluZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc0hUTUwgPSAoY2xhc3NOYW1lICE9PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgIGAgY2xhc3M9XCIke2NsYXNzTmFtZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgYXR0cmlidXRlSFRNTCA9ICgoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkgJiYgKGF0dHJpYnV0ZVZhbHVlICE9PSBudWxsKSkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgYCAke2F0dHJpYnV0ZU5hbWV9PVwiJHthdHRyaWJ1dGVWYWx1ZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIHN0YXJ0aW5nVGFnID0gYDwke3RhZ05hbWV9JHtjbGFzc0hUTUx9JHthdHRyaWJ1dGVIVE1MfT5gO1xuXG4gICAgcmV0dXJuIHN0YXJ0aW5nVGFnO1xuICB9XG5cbiAgc2VsZkNsb3NpbmdUYWcoY29udGV4dCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCksXG4gICAgICAgICAgY2xhc3NOYW1lID0gdGhpcy5jbGFzc05hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlTmFtZSA9IHRoaXMuYXR0cmlidXRlTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZSA9IHRoaXMuYXR0cmlidXRlVmFsdWUoY29udGV4dCksXG4gICAgICAgICAgY2xhc3NIVE1MID0gKGNsYXNzTmFtZSAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICBgIGNsYXNzPVwiJHtjbGFzc05hbWV9XCJgIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIGF0dHJpYnV0ZUhUTUwgPSAoKGF0dHJpYnV0ZU5hbWUgIT09IG51bGwpICYmIChhdHRyaWJ1dGVWYWx1ZSAhPT0gbnVsbCkpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGAgJHthdHRyaWJ1dGVOYW1lfT1cIiR7YXR0cmlidXRlVmFsdWV9XCJgIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBzZWxmQ2xvc2luZ1RhZyA9IGA8JHt0YWdOYW1lfSR7Y2xhc3NIVE1MfSR7YXR0cmlidXRlSFRNTH0vPmA7XG5cbiAgICByZXR1cm4gc2VsZkNsb3NpbmdUYWc7XG4gIH1cblxuICBhZGp1c3RJbmRlbnQoaW5kZW50KSB7XG4gICAgaWYgKGluZGVudCAhPT0gbnVsbCkge1xuICAgICAgaW5kZW50ID0gYCAgJHtpbmRlbnR9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gaW5kZW50O1xuICB9XG5cbiAgYXR0cmlidXRlTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgYXR0cmlidXRlTmFtZSA9IG51bGw7XG5cbiAgICByZXR1cm4gYXR0cmlidXRlTmFtZTtcbiAgfVxuXG4gIGF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVWYWx1ZSA9IG51bGw7XG5cbiAgICByZXR1cm4gYXR0cmlidXRlVmFsdWU7XG4gIH1cblxuICByZXNvbHZlSW1wb3J0cyhwYXJlbnROb2RlLCBjb250ZXh0KSB7XG4gICAgcGFyZW50Tm9kZSA9IHRoaXM7ICAvLy9cXFxuXG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpO1xuXG4gICAgY2hpbGROb2Rlcy5mb3JFYWNoKChjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSA9IGNoaWxkTm9kZS5pc05vblRlcm1pbmFsTm9kZSgpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlTm9uVGVybWluYWxOb2RlKSB7XG4gICAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IGNoaWxkTm9kZSwgIC8vL1xuICAgICAgICAgICAgICBtYXJrZG93bk5vZGUgPSBub25UZXJtaW5hbE5vZGU7IC8vL1xuXG4gICAgICAgIG1hcmtkb3duTm9kZS5yZXNvbHZlSW1wb3J0cyhwYXJlbnROb2RlLCBjb250ZXh0KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFzSFRNTChpbmRlbnQsIGNvbnRleHQpIHtcbiAgICBpZiAoY29udGV4dCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb250ZXh0ID0gaW5kZW50OyAvLy9cblxuICAgICAgaW5kZW50ID0gRU1QVFlfU1RSSU5HO1xuICAgIH1cblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBsZXQgaHRtbCA9IG51bGw7XG5cbiAgICBpZiAodGFnTmFtZSAhPT0gbnVsbCkge1xuICAgICAgaW5kZW50ID0gdGhpcy5hZGp1c3RJbmRlbnQoaW5kZW50KTtcblxuICAgICAgY29uc3QgY2hpbGROb2Rlc0hUTUwgPSB0aGlzLmNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgaWYgKGNoaWxkTm9kZXNIVE1MICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHN0YXJ0aW5nVGFnID0gdGhpcy5zdGFydGluZ1RhZyhjb250ZXh0KSxcbiAgICAgICAgICAgICAgY2xvc2luZ1RhZyA9IHRoaXMuY2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgICBodG1sID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICBgJHtzdGFydGluZ1RhZ30ke2NoaWxkTm9kZXNIVE1MfSR7Y2xvc2luZ1RhZ31gIDpcbiAgICAgICAgICAgICAgICAgICBgJHtpbmRlbnR9JHtzdGFydGluZ1RhZ31cbiR7Y2hpbGROb2Rlc0hUTUx9JHtpbmRlbnR9JHtjbG9zaW5nVGFnfVxuYDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHNlbGZDbG9zaW5nVGFnID0gdGhpcy5zZWxmQ2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgICBodG1sID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgIHNlbGZDbG9zaW5nVGFnIDogIC8vL1xuYCR7aW5kZW50fSR7c2VsZkNsb3NpbmdUYWd9XG5gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBodG1sO1xuICB9XG5cbiAgY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KSB7XG4gICAgbGV0IGRvbUVsZW1lbnQgPSBudWxsO1xuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGlmICh0YWdOYW1lICE9PSBudWxsKSB7XG4gICAgICBkb21FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTtcblxuICAgICAgY29uc3QgY2xhc3NOYW1lID0gdGhpcy5jbGFzc05hbWUoY29udGV4dCksXG4gICAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpO1xuXG4gICAgICBpZiAoY2xhc3NOYW1lICE9PSBudWxsKSB7XG4gICAgICAgIGRvbUVsZW1lbnQuY2xhc3NOYW1lID0gY2xhc3NOYW1lO1xuICAgICAgfVxuXG4gICAgICBpZiAoKGF0dHJpYnV0ZU5hbWUgIT09IG51bGwpICYmIChhdHRyaWJ1dGVWYWx1ZSAhPT0gbnVsbCkpIHtcbiAgICAgICAgZG9tRWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSwgYXR0cmlidXRlVmFsdWUpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNldERPTUVsZW1lbnQoZG9tRWxlbWVudCk7XG5cbiAgICAgIHRoaXMuY3JlYXRlQ2hpbGROb2RlRE9NRWxlbWVudHMoY29udGV4dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRvbUVsZW1lbnQ7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBjaGlsZE5vZGVzSFRNTCA9IGNoaWxkTm9kZXMucmVkdWNlKChjaGlsZE5vZGVzSFRNTCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjaGlsZE5vZGVOb25UZXJtaW5hbE5vZGUgPSBjaGlsZE5vZGUuaXNOb25UZXJtaW5hbE5vZGUoKTtcblxuICAgICAgICAgICAgaWYgKGNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSkge1xuICAgICAgICAgICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBjaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlID0gbm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlSFRNTCA9IG1hcmtkb3duTm9kZS5hc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgICAgICAgICBpZiAobWFya2Rvd25Ob2RlSFRNTCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGNoaWxkTm9kZXNIVE1MID0gKGNoaWxkTm9kZXNIVE1MID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmtkb3duTm9kZUhUTUwgOiAgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtjaGlsZE5vZGVzSFRNTH0ke21hcmtkb3duTm9kZUhUTUx9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gICAgICAgICAgfSwgbnVsbCk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBjcmVhdGVDaGlsZE5vZGVET01FbGVtZW50cyhjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpO1xuXG4gICAgY2hpbGROb2Rlcy5mb3JFYWNoKChjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSA9IGNoaWxkTm9kZS5pc05vblRlcm1pbmFsTm9kZSgpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlTm9uVGVybWluYWxOb2RlKSB7XG4gICAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IGNoaWxkTm9kZSwgIC8vL1xuICAgICAgICAgICAgICBtYXJrZG93bk5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICBtYXJrZG93bk5vZGVET01FbGVtZW50ID0gbWFya2Rvd25Ob2RlLmNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCk7XG5cbiAgICAgICAgaWYgKG1hcmtkb3duTm9kZURPTUVsZW1lbnQgIT09IG51bGwpIHtcbiAgICAgICAgICB0aGlzLmluc2VydERPTUVsZW1lbnQobWFya2Rvd25Ob2RlRE9NRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGluc2VydERPTUVsZW1lbnQoZG9tRWxlbWVudCkge1xuICAgIGNvbnN0IHBhcmVudERPTUVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQsICAvLy9cbiAgICAgICAgICBzaWJsaW5nRE9NRWxlbWVudCA9IG51bGwsXG4gICAgICAgICAgY2hpbGROb2RlRE9NRWxlbWVudCA9IGRvbUVsZW1lbnQ7IC8vL1xuXG4gICAgcGFyZW50RE9NRWxlbWVudC5pbnNlcnRCZWZvcmUoY2hpbGROb2RlRE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQpO1xuICB9XG5cbiAgY2xvbmUoLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7IHJldHVybiBzdXBlci5jbG9uZSh0aGlzLmRvbUVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7IH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCBkb21FbGVtZW50ID0gbnVsbCxcbiAgICAgICAgICBtYXJrZG93bk5vZGUgPSBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG1hcmtkb3duTm9kZTtcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKE1hcmtkb3duTm9kZS5wcm90b3R5cGUsIG5vZGVNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihNYXJrZG93bk5vZGUucHJvdG90eXBlLCBlbGVtZW50TWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgTWFya2Rvd25Ob2RlO1xuIl0sIm5hbWVzIjpbIk1hcmtkb3duTm9kZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsInByZWNlZGVuY2UiLCJvcGFjaXR5IiwiZG9tRWxlbWVudCIsImdldERPTUVsZW1lbnQiLCJzZXRET01FbGVtZW50IiwiYWRkQ2hpbGROb2RlIiwiY2hpbGROb2RlIiwiZ2V0Q2hpbGROb2RlcyIsInB1c2giLCJyZW1vdmVDaGlsZE5vZGUiLCJpbmRleCIsImluZGV4T2YiLCJzdGFydCIsImRlbGV0ZUNvdW50Iiwic3BsaWNlIiwicmVwbGFjZUNoaWxkTm9kZSIsInJlcGxhY2VkQ2hpbGROb2RlIiwicmVwbGFjZW1lbnRDaGlsZE5vZGUiLCJ0YWdOYW1lIiwiY29udGV4dCIsInJ1bGVOYW1lVG9IVE1MTWFwIiwiY2xhc3NOYW1lIiwiY2xvc2luZ1RhZyIsInN0YXJ0aW5nVGFnIiwiYXR0cmlidXRlTmFtZSIsImF0dHJpYnV0ZVZhbHVlIiwiY2xhc3NIVE1MIiwiRU1QVFlfU1RSSU5HIiwiYXR0cmlidXRlSFRNTCIsInNlbGZDbG9zaW5nVGFnIiwiYWRqdXN0SW5kZW50IiwiaW5kZW50IiwicmVzb2x2ZUltcG9ydHMiLCJwYXJlbnROb2RlIiwiZm9yRWFjaCIsImNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSIsImlzTm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwibWFya2Rvd25Ob2RlIiwiYXNIVE1MIiwidW5kZWZpbmVkIiwiaHRtbCIsImNoaWxkTm9kZXNIVE1MIiwiY2hpbGROb2Rlc0FzSFRNTCIsImNyZWF0ZURPTUVsZW1lbnQiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJzZXRBdHRyaWJ1dGUiLCJjcmVhdGVDaGlsZE5vZGVET01FbGVtZW50cyIsInJlZHVjZSIsIm1hcmtkb3duTm9kZUhUTUwiLCJtYXJrZG93bk5vZGVET01FbGVtZW50IiwiaW5zZXJ0RE9NRWxlbWVudCIsInBhcmVudERPTUVsZW1lbnQiLCJzaWJsaW5nRE9NRWxlbWVudCIsImNoaWxkTm9kZURPTUVsZW1lbnQiLCJpbnNlcnRCZWZvcmUiLCJjbG9uZSIsInJlbWFpbmluZ0FyZ3VtZW50cyIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5IiwiQ2xhc3MiLCJOb25UZXJtaW5hbE5vZGUiLCJPYmplY3QiLCJhc3NpZ24iLCJwcm90b3R5cGUiLCJub2RlTWl4aW5zIiwiZWxlbWVudE1peGlucyJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
|
364
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL21hcmtkb3duLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuXG5pbXBvcnQgbm9kZU1peGlucyBmcm9tIFwiLi4vbWl4aW5zL25vZGVcIjtcbmltcG9ydCBlbGVtZW50TWl4aW5zIGZyb20gXCIuLi9taXhpbnMvZWxlbWVudFwiO1xuaW1wb3J0IHJ1bGVOYW1lVG9IVE1MTWFwIGZyb20gXCIuLi9ydWxlTmFtZVRvSFRNTE1hcFwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmNsYXNzIE1hcmtkb3duTm9kZSBleHRlbmRzIE5vblRlcm1pbmFsTm9kZSB7XG4gIGNvbnN0cnVjdG9yKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBwcmVjZWRlbmNlLCBvcGFjaXR5LCBkb21FbGVtZW50KSB7XG4gICAgc3VwZXIocnVsZU5hbWUsIGNoaWxkTm9kZXMsIHByZWNlZGVuY2UsIG9wYWNpdHkpO1xuXG4gICAgdGhpcy5kb21FbGVtZW50ID0gZG9tRWxlbWVudDtcbiAgfVxuXG4gIGdldERPTUVsZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZG9tRWxlbWVudDtcbiAgfVxuXG4gIHNldERPTUVsZW1lbnQoZG9tRWxlbWVudCkge1xuICAgIHRoaXMuZG9tRWxlbWVudCA9IGRvbUVsZW1lbnQ7XG4gIH1cblxuICB0YWdOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCB7IHRhZ05hbWUgfSA9IHJ1bGVOYW1lVG9IVE1MTWFwW3RoaXMucnVsZU5hbWVdO1xuXG4gICAgcmV0dXJuIHRhZ05hbWU7XG4gIH1cblxuICBjbGFzc05hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IHsgY2xhc3NOYW1lIH0gPSBydWxlTmFtZVRvSFRNTE1hcFt0aGlzLnJ1bGVOYW1lXTtcblxuICAgIHJldHVybiBjbGFzc05hbWU7XG4gIH1cblxuICBjbG9zaW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsb3NpbmdUYWcgPSBgPC8ke3RhZ05hbWV9PmA7XG5cbiAgICByZXR1cm4gY2xvc2luZ1RhZztcbiAgfVxuXG4gIHN0YXJ0aW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzSFRNTCA9IChjbGFzc05hbWUgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgYCBjbGFzcz1cIiR7Y2xhc3NOYW1lfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBhdHRyaWJ1dGVIVE1MID0gKChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSAmJiAoYXR0cmlidXRlVmFsdWUgIT09IG51bGwpKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBgICR7YXR0cmlidXRlTmFtZX09XCIke2F0dHJpYnV0ZVZhbHVlfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgc3RhcnRpbmdUYWcgPSBgPCR7dGFnTmFtZX0ke2NsYXNzSFRNTH0ke2F0dHJpYnV0ZUhUTUx9PmA7XG5cbiAgICByZXR1cm4gc3RhcnRpbmdUYWc7XG4gIH1cblxuICBzZWxmQ2xvc2luZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc0hUTUwgPSAoY2xhc3NOYW1lICE9PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgIGAgY2xhc3M9XCIke2NsYXNzTmFtZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgYXR0cmlidXRlSFRNTCA9ICgoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkgJiYgKGF0dHJpYnV0ZVZhbHVlICE9PSBudWxsKSkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgYCAke2F0dHJpYnV0ZU5hbWV9PVwiJHthdHRyaWJ1dGVWYWx1ZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIHNlbGZDbG9zaW5nVGFnID0gYDwke3RhZ05hbWV9JHtjbGFzc0hUTUx9JHthdHRyaWJ1dGVIVE1MfS8+YDtcblxuICAgIHJldHVybiBzZWxmQ2xvc2luZ1RhZztcbiAgfVxuXG4gIGFkanVzdEluZGVudChpbmRlbnQpIHtcbiAgICBpZiAoaW5kZW50ICE9PSBudWxsKSB7XG4gICAgICBpbmRlbnQgPSBgICAke2luZGVudH1gO1xuICAgIH1cblxuICAgIHJldHVybiBpbmRlbnQ7XG4gIH1cblxuICBhdHRyaWJ1dGVOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVOYW1lO1xuICB9XG5cbiAgYXR0cmlidXRlVmFsdWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVWYWx1ZTtcbiAgfVxuXG4gIHJlc29sdmVJbXBvcnRzKHBhcmVudE5vZGUsIGNvbnRleHQpIHtcbiAgICBwYXJlbnROb2RlID0gdGhpczsgIC8vL1xcXG5cbiAgICBjb25zdCBjaGlsZE5vZGVzID0gdGhpcy5nZXRDaGlsZE5vZGVzKCk7XG5cbiAgICBjaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlTm9uVGVybWluYWxOb2RlID0gY2hpbGROb2RlLmlzTm9uVGVybWluYWxOb2RlKCk7XG5cbiAgICAgIGlmIChjaGlsZE5vZGVOb25UZXJtaW5hbE5vZGUpIHtcbiAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gY2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICAgIG1hcmtkb3duTm9kZSA9IG5vblRlcm1pbmFsTm9kZTsgLy8vXG5cbiAgICAgICAgbWFya2Rvd25Ob2RlLnJlc29sdmVJbXBvcnRzKHBhcmVudE5vZGUsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgYXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnRleHQgPSBpbmRlbnQ7IC8vL1xuXG4gICAgICBpbmRlbnQgPSBFTVBUWV9TVFJJTkc7XG4gICAgfVxuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGxldCBodG1sID0gbnVsbDtcblxuICAgIGlmICh0YWdOYW1lICE9PSBudWxsKSB7XG4gICAgICBpbmRlbnQgPSB0aGlzLmFkanVzdEluZGVudChpbmRlbnQpO1xuXG4gICAgICBjb25zdCBjaGlsZE5vZGVzSFRNTCA9IHRoaXMuY2hpbGROb2Rlc0FzSFRNTChpbmRlbnQsIGNvbnRleHQpO1xuXG4gICAgICBpZiAoY2hpbGROb2Rlc0hUTUwgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3Qgc3RhcnRpbmdUYWcgPSB0aGlzLnN0YXJ0aW5nVGFnKGNvbnRleHQpLFxuICAgICAgICAgICAgICBjbG9zaW5nVGFnID0gdGhpcy5jbG9zaW5nVGFnKGNvbnRleHQpO1xuXG4gICAgICAgIGh0bWwgPSAoaW5kZW50ID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgIGAke3N0YXJ0aW5nVGFnfSR7Y2hpbGROb2Rlc0hUTUx9JHtjbG9zaW5nVGFnfWAgOlxuICAgICAgICAgICAgICAgICAgIGAke2luZGVudH0ke3N0YXJ0aW5nVGFnfVxuJHtjaGlsZE5vZGVzSFRNTH0ke2luZGVudH0ke2Nsb3NpbmdUYWd9XG5gO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgc2VsZkNsb3NpbmdUYWcgPSB0aGlzLnNlbGZDbG9zaW5nVGFnKGNvbnRleHQpO1xuXG4gICAgICAgIGh0bWwgPSAoaW5kZW50ID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgc2VsZkNsb3NpbmdUYWcgOiAgLy8vXG5gJHtpbmRlbnR9JHtzZWxmQ2xvc2luZ1RhZ31cbmA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGh0bWw7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBjaGlsZE5vZGVzSFRNTCA9IGNoaWxkTm9kZXMucmVkdWNlKChjaGlsZE5vZGVzSFRNTCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjaGlsZE5vZGVOb25UZXJtaW5hbE5vZGUgPSBjaGlsZE5vZGUuaXNOb25UZXJtaW5hbE5vZGUoKTtcblxuICAgICAgICAgICAgaWYgKGNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSkge1xuICAgICAgICAgICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBjaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlID0gbm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlSFRNTCA9IG1hcmtkb3duTm9kZS5hc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgICAgICAgICBpZiAobWFya2Rvd25Ob2RlSFRNTCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGNoaWxkTm9kZXNIVE1MID0gKGNoaWxkTm9kZXNIVE1MID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmtkb3duTm9kZUhUTUwgOiAgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtjaGlsZE5vZGVzSFRNTH0ke21hcmtkb3duTm9kZUhUTUx9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gICAgICAgICAgfSwgbnVsbCk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBjcmVhdGVET01FbGVtZW50KGNvbnRleHQpIHtcbiAgICBsZXQgZG9tRWxlbWVudCA9IG51bGw7XG5cbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpO1xuXG4gICAgaWYgKHRhZ05hbWUgIT09IG51bGwpIHtcbiAgICAgIGRvbUVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZ05hbWUpO1xuXG4gICAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCksXG4gICAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZSA9IHRoaXMuYXR0cmlidXRlVmFsdWUoY29udGV4dCk7XG5cbiAgICAgIGlmIChjbGFzc05hbWUgIT09IG51bGwpIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbihkb21FbGVtZW50LCB7XG4gICAgICAgICAgY2xhc3NOYW1lXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAoKGF0dHJpYnV0ZU5hbWUgIT09IG51bGwpICYmIChhdHRyaWJ1dGVWYWx1ZSAhPT0gbnVsbCkpIHtcbiAgICAgICAgZG9tRWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSwgYXR0cmlidXRlVmFsdWUpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNldERPTUVsZW1lbnQoZG9tRWxlbWVudCk7XG5cbiAgICAgIHRoaXMuY3JlYXRlQ2hpbGROb2RlRE9NRWxlbWVudHMoY29udGV4dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRvbUVsZW1lbnQ7XG4gIH1cblxuICBjcmVhdGVDaGlsZE5vZGVET01FbGVtZW50cyhjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpO1xuXG4gICAgY2hpbGROb2Rlcy5mb3JFYWNoKChjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSA9IGNoaWxkTm9kZS5pc05vblRlcm1pbmFsTm9kZSgpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlTm9uVGVybWluYWxOb2RlKSB7XG4gICAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IGNoaWxkTm9kZSwgIC8vL1xuICAgICAgICAgICAgICBtYXJrZG93bk5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICBkb21FbGVtZW50ID0gbWFya2Rvd25Ob2RlLmNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCk7XG5cbiAgICAgICAgaWYgKGRvbUVsZW1lbnQgIT09IG51bGwpIHtcbiAgICAgICAgICB0aGlzLmFkZERPTUVsZW1lbnQoZG9tRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGNsb25lKC4uLnJlbWFpbmluZ0FyZ3VtZW50cykgeyByZXR1cm4gc3VwZXIuY2xvbmUodGhpcy5kb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpOyB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5KENsYXNzLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgY29uc3QgZG9tRWxlbWVudCA9IG51bGwsXG4gICAgICAgICAgbWFya2Rvd25Ob2RlID0gTm9uVGVybWluYWxOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5KENsYXNzLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgZG9tRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIHJldHVybiBtYXJrZG93bk5vZGU7XG4gIH1cbn1cblxuT2JqZWN0LmFzc2lnbihNYXJrZG93bk5vZGUucHJvdG90eXBlLCBub2RlTWl4aW5zKTtcbk9iamVjdC5hc3NpZ24oTWFya2Rvd25Ob2RlLnByb3RvdHlwZSwgZWxlbWVudE1peGlucyk7XG5cbmV4cG9ydCBkZWZhdWx0IE1hcmtkb3duTm9kZTtcbiJdLCJuYW1lcyI6WyJNYXJrZG93bk5vZGUiLCJydWxlTmFtZSIsImNoaWxkTm9kZXMiLCJwcmVjZWRlbmNlIiwib3BhY2l0eSIsImRvbUVsZW1lbnQiLCJnZXRET01FbGVtZW50Iiwic2V0RE9NRWxlbWVudCIsInRhZ05hbWUiLCJjb250ZXh0IiwicnVsZU5hbWVUb0hUTUxNYXAiLCJjbGFzc05hbWUiLCJjbG9zaW5nVGFnIiwic3RhcnRpbmdUYWciLCJhdHRyaWJ1dGVOYW1lIiwiYXR0cmlidXRlVmFsdWUiLCJjbGFzc0hUTUwiLCJFTVBUWV9TVFJJTkciLCJhdHRyaWJ1dGVIVE1MIiwic2VsZkNsb3NpbmdUYWciLCJhZGp1c3RJbmRlbnQiLCJpbmRlbnQiLCJyZXNvbHZlSW1wb3J0cyIsInBhcmVudE5vZGUiLCJnZXRDaGlsZE5vZGVzIiwiZm9yRWFjaCIsImNoaWxkTm9kZSIsImNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSIsImlzTm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwibWFya2Rvd25Ob2RlIiwiYXNIVE1MIiwidW5kZWZpbmVkIiwiaHRtbCIsImNoaWxkTm9kZXNIVE1MIiwiY2hpbGROb2Rlc0FzSFRNTCIsInJlZHVjZSIsIm1hcmtkb3duTm9kZUhUTUwiLCJjcmVhdGVET01FbGVtZW50IiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiT2JqZWN0IiwiYXNzaWduIiwic2V0QXR0cmlidXRlIiwiY3JlYXRlQ2hpbGROb2RlRE9NRWxlbWVudHMiLCJhZGRET01FbGVtZW50IiwiY2xvbmUiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzQW5kT3BhY2l0eSIsIkNsYXNzIiwiTm9uVGVybWluYWxOb2RlIiwicHJvdG90eXBlIiwibm9kZU1peGlucyIsImVsZW1lbnRNaXhpbnMiXSwicmFuZ2VNYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMk9BOzs7ZUFBQTs7OzRCQXpPZ0M7MkRBRVQ7OERBQ0c7d0VBQ0k7eUJBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
|
@@ -9,44 +9,15 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
appendFootnotesListMarkdownNodeHTML: function() {
|
|
13
|
-
return appendFootnotesListMarkdownNodeHTML;
|
|
14
|
-
},
|
|
15
12
|
default: function() {
|
|
16
13
|
return _default;
|
|
17
14
|
},
|
|
18
15
|
renumberLinkMarkdownNodes: function() {
|
|
19
16
|
return renumberLinkMarkdownNodes;
|
|
20
|
-
},
|
|
21
|
-
renumberLinkMarkdownNodesHTML: function() {
|
|
22
|
-
return renumberLinkMarkdownNodesHTML;
|
|
23
17
|
}
|
|
24
18
|
});
|
|
25
|
-
var _necessary = require("necessary");
|
|
26
19
|
var _constants = require("../constants");
|
|
27
|
-
var _string = require("../utilities/string");
|
|
28
20
|
var _query = require("../utilities/query");
|
|
29
|
-
var strlen = _necessary.stringUtilities.strlen, indexOf = _necessary.stringUtilities.indexOf;
|
|
30
|
-
function appendFootnotesListMarkdownNodeHTML(childNodesHTML, footnotesListMarkdownNode, indent, context) {
|
|
31
|
-
var footnotesListMarkdownNodeHTML = footnotesListMarkdownNode.asHTML(indent, context);
|
|
32
|
-
childNodesHTML = "".concat(childNodesHTML).concat(footnotesListMarkdownNodeHTML);
|
|
33
|
-
return childNodesHTML;
|
|
34
|
-
}
|
|
35
|
-
function renumberLinkMarkdownNodesHTML(childNodesHTML, divisionMarkdownNode, footnotesListMarkdownNode, context) {
|
|
36
|
-
var number = 1;
|
|
37
|
-
var identifiers = footnotesListMarkdownNode.identifiers(), linkMarkdownNodes = (0, _query.linkMarkdownNodesFromNode)(divisionMarkdownNode);
|
|
38
|
-
linkMarkdownNodes.forEach(function(linkMarkdownNode) {
|
|
39
|
-
var indent = null, identifier = linkMarkdownNode.identifier(context), identifiersIncludesIdentifier = identifiers.includes(identifier), linkMarkdownNodeHTML = linkMarkdownNode.asHTML(indent, context), index = indexOf(childNodesHTML, linkMarkdownNodeHTML), length = strlen(linkMarkdownNodeHTML), start = index, deleteCount = length; ///
|
|
40
|
-
if (identifiersIncludesIdentifier) {
|
|
41
|
-
var linkMarkdownNodeHTML1 = linkMarkdownNode.asHTML(indent, context, number);
|
|
42
|
-
childNodesHTML = (0, _string.splice)(childNodesHTML, start, deleteCount, linkMarkdownNodeHTML1);
|
|
43
|
-
number++;
|
|
44
|
-
} else {
|
|
45
|
-
childNodesHTML = (0, _string.chop)(childNodesHTML, start, deleteCount);
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
return childNodesHTML;
|
|
49
|
-
}
|
|
50
21
|
function renumberLinkMarkdownNodes(divisionMarkdownNode, footnotesListMarkdownNode, context) {
|
|
51
22
|
var number = 1;
|
|
52
23
|
var identifiers = footnotesListMarkdownNode.identifiers(), linkMarkdownNodes = (0, _query.linkMarkdownNodesFromNode)(divisionMarkdownNode);
|
|
@@ -68,4 +39,4 @@ var _default = {
|
|
|
68
39
|
renumberLinkMarkdownNodes: renumberLinkMarkdownNodes
|
|
69
40
|
};
|
|
70
41
|
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZm9vdG5vdGVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVudW1iZXJMaW5rTWFya2Rvd25Ob2RlcyhkaXZpc2lvbk1hcmtkb3duTm9kZSwgZm9vdG5vdGVzTGlzdE1hcmtkb3duTm9kZSwgY29udGV4dCkge1xuICBsZXQgbnVtYmVyID0gMTtcblxuICBjb25zdCBpZGVudGlmaWVycyA9IGZvb3Rub3Rlc0xpc3RNYXJrZG93bk5vZGUuaWRlbnRpZmllcnMoKSxcbiAgICAgICAgbGlua01hcmtkb3duTm9kZXMgPSBsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKGRpdmlzaW9uTWFya2Rvd25Ob2RlKTtcblxuICBsaW5rTWFya2Rvd25Ob2Rlcy5mb3JFYWNoKChsaW5rTWFya2Rvd25Ob2RlKSA9PiB7XG4gICAgY29uc3QgaWRlbnRpZmllciA9IGxpbmtNYXJrZG93bk5vZGUuaWRlbnRpZmllcihjb250ZXh0KSxcbiAgICAgICAgICBsaW5rTWFya2Rvd25Ob2RlRE9NRWxlbWVudCA9IGxpbmtNYXJrZG93bk5vZGUuZ2V0RE9NRWxlbWVudCgpLFxuICAgICAgICAgIGlkZW50aWZpZXJzSW5jbHVkZXNJZGVudGlmaWVyID0gaWRlbnRpZmllcnMuaW5jbHVkZXMoaWRlbnRpZmllcik7XG5cbiAgICBsZXQgaW5uZXJIVE1MO1xuXG4gICAgaWYgKGlkZW50aWZpZXJzSW5jbHVkZXNJZGVudGlmaWVyKSB7XG4gICAgICBpbm5lckhUTUwgPSBgJHtudW1iZXJ9YDtcblxuICAgICAgbnVtYmVyKys7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlubmVySFRNTCA9IEVNUFRZX1NUUklORztcbiAgICB9XG5cbiAgICBPYmplY3QuYXNzaWduKGxpbmtNYXJrZG93bk5vZGVET01FbGVtZW50LCB7XG4gICAgICBpbm5lckhUTUxcbiAgICB9KTtcbiAgfSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgcmVudW1iZXJMaW5rTWFya2Rvd25Ob2Rlc1xufTtcbiJdLCJuYW1lcyI6WyJyZW51bWJlckxpbmtNYXJrZG93bk5vZGVzIiwiZGl2aXNpb25NYXJrZG93bk5vZGUiLCJmb290bm90ZXNMaXN0TWFya2Rvd25Ob2RlIiwiY29udGV4dCIsIm51bWJlciIsImlkZW50aWZpZXJzIiwibGlua01hcmtkb3duTm9kZXMiLCJsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwiZm9yRWFjaCIsImxpbmtNYXJrZG93bk5vZGUiLCJpZGVudGlmaWVyIiwibGlua01hcmtkb3duTm9kZURPTUVsZW1lbnQiLCJnZXRET01FbGVtZW50IiwiaWRlbnRpZmllcnNJbmNsdWRlc0lkZW50aWZpZXIiLCJpbmNsdWRlcyIsImlubmVySFRNTCIsIkVNUFRZX1NUUklORyIsIk9iamVjdCIsImFzc2lnbiJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7IiwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQWdDQSxPQUVFO2VBRkY7O0lBM0JnQkEseUJBQXlCO2VBQXpCQTs7O3lCQUhhO3FCQUNhO0FBRW5DLFNBQVNBLDBCQUEwQkMsb0JBQW9CLEVBQUVDLHlCQUF5QixFQUFFQyxPQUFPO0lBQ2hHLElBQUlDLFNBQVM7SUFFYixJQUFNQyxjQUFjSCwwQkFBMEJHLFdBQVcsSUFDbkRDLG9CQUFvQkMsSUFBQUEsZ0NBQXlCLEVBQUNOO0lBRXBESyxrQkFBa0JFLE9BQU8sQ0FBQyxTQUFDQztRQUN6QixJQUFNQyxhQUFhRCxpQkFBaUJDLFVBQVUsQ0FBQ1AsVUFDekNRLDZCQUE2QkYsaUJBQWlCRyxhQUFhLElBQzNEQyxnQ0FBZ0NSLFlBQVlTLFFBQVEsQ0FBQ0o7UUFFM0QsSUFBSUs7UUFFSixJQUFJRiwrQkFBK0I7WUFDakNFLFlBQVksQUFBQyxHQUFTLE9BQVBYO1lBRWZBO1FBQ0YsT0FBTztZQUNMVyxZQUFZQyx1QkFBWTtRQUMxQjtRQUVBQyxPQUFPQyxNQUFNLENBQUNQLDRCQUE0QjtZQUN4Q0ksV0FBQUE7UUFDRjtJQUNGO0FBQ0Y7SUFFQSxXQUFlO0lBQ2JmLDJCQUFBQTtBQUNGIn0=
|
package/package.json
CHANGED
|
@@ -7,6 +7,13 @@ import { Element } from "easy";
|
|
|
7
7
|
import { EMPTY_STRING } from "../../constants";
|
|
8
8
|
|
|
9
9
|
class PreviewDiv extends Element {
|
|
10
|
+
getParentDOMElement() {
|
|
11
|
+
const domElement = this.getDOMElement(),
|
|
12
|
+
parentDOMElement = domElement; ///
|
|
13
|
+
|
|
14
|
+
return parentDOMElement;
|
|
15
|
+
}
|
|
16
|
+
|
|
10
17
|
clear() {
|
|
11
18
|
const html = EMPTY_STRING;
|
|
12
19
|
|
|
@@ -16,11 +23,9 @@ class PreviewDiv extends Element {
|
|
|
16
23
|
update(domElement) {
|
|
17
24
|
this.clear();
|
|
18
25
|
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
domElement = this.getDOMElement();
|
|
26
|
+
const parentDOMElement = this.getParentDOMElement();
|
|
22
27
|
|
|
23
|
-
|
|
28
|
+
parentDOMElement.appendChild(domElement);
|
|
24
29
|
}
|
|
25
30
|
|
|
26
31
|
parentContext() {
|
package/src/mixins/element.js
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function addDOMElement(domElement) {
|
|
4
|
+
const parentDOMElement = this.domElement; ///
|
|
5
|
+
|
|
6
|
+
parentDOMElement.appendChild(domElement);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
function removeDOMElement(domElement) {
|
|
10
|
+
domElement.remove();
|
|
11
|
+
}
|
|
12
|
+
|
|
3
13
|
function getDescendantElements(descendantElements = []) {
|
|
4
14
|
const domElement = this.getDOMElement();
|
|
5
15
|
|
|
@@ -25,6 +35,8 @@ function getDescendantElements(descendantElements = []) {
|
|
|
25
35
|
}
|
|
26
36
|
|
|
27
37
|
const elementMixins = {
|
|
38
|
+
addDOMElement,
|
|
39
|
+
removeDOMElement,
|
|
28
40
|
getDescendantElements
|
|
29
41
|
};
|
|
30
42
|
|
package/src/mixins/node.js
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function addChildNode(childNode) {
|
|
4
|
+
const childNodes = this.getChildNodes();
|
|
5
|
+
|
|
6
|
+
childNodes.push(childNode);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
function removeChildNode(childNode) {
|
|
10
|
+
const childNodes = this.getChildNodes(),
|
|
11
|
+
index = childNodes.indexOf(childNode),
|
|
12
|
+
start = index, ///
|
|
13
|
+
deleteCount = 1;
|
|
14
|
+
|
|
15
|
+
childNodes.splice(start, deleteCount);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
function replaceChildNode(replacedChildNode, replacementChildNode) {
|
|
19
|
+
const childNodes = this.getChildNodes(),
|
|
20
|
+
index = childNodes.indexOf(replacedChildNode),
|
|
21
|
+
start = index, ///
|
|
22
|
+
deleteCount = 1;
|
|
23
|
+
|
|
24
|
+
childNodes.splice(start, deleteCount, replacementChildNode);
|
|
25
|
+
}
|
|
26
|
+
|
|
3
27
|
function getDescendantNodes(descendantNodes = []) {
|
|
4
28
|
const descendantNode = this; ///
|
|
5
29
|
|
|
@@ -21,6 +45,9 @@ function getDescendantNodes(descendantNodes = []) {
|
|
|
21
45
|
}
|
|
22
46
|
|
|
23
47
|
const nodeMixins = {
|
|
48
|
+
addChildNode,
|
|
49
|
+
removeChildNode,
|
|
50
|
+
replaceChildNode,
|
|
24
51
|
getDescendantNodes
|
|
25
52
|
};
|
|
26
53
|
|
|
@@ -99,12 +99,6 @@ export default class DivisionMarkdownNode extends MarkdownNode {
|
|
|
99
99
|
return footnotesListMarkdownNode;
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
-
removeFootnotesListMarkdownNode(footnotesListMarkdownNode) {
|
|
103
|
-
const childNode = footnotesListMarkdownNode; ///
|
|
104
|
-
|
|
105
|
-
this.removeChildNode(childNode);
|
|
106
|
-
}
|
|
107
|
-
|
|
108
102
|
createFootnotesListMarkdownNode(context) {
|
|
109
103
|
const divisionMarkdownNode = this, ///
|
|
110
104
|
footnotesListMarkdownNode = FootnotesListMarkdownNode.fromDivisionMarkdownNode(divisionMarkdownNode, context);
|
|
@@ -112,6 +106,12 @@ export default class DivisionMarkdownNode extends MarkdownNode {
|
|
|
112
106
|
return footnotesListMarkdownNode;
|
|
113
107
|
}
|
|
114
108
|
|
|
109
|
+
removeFootnotesListMarkdownNode(footnotesListMarkdownNode) {
|
|
110
|
+
const childNode = footnotesListMarkdownNode; ///
|
|
111
|
+
|
|
112
|
+
this.removeChildNode(childNode);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
115
|
clone() { return super.clone(this.divisionClassName); }
|
|
116
116
|
|
|
117
117
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) {
|
|
@@ -85,9 +85,9 @@ class EmailLinkMarkdownNode extends MarkdownNode {
|
|
|
85
85
|
inlineText :
|
|
86
86
|
this.content(context),
|
|
87
87
|
textNode = document.createTextNode(content),
|
|
88
|
-
|
|
88
|
+
domElement = textNode; ///
|
|
89
89
|
|
|
90
|
-
this.
|
|
90
|
+
this.addDOMElement(domElement);
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(EmailLinkMarkdownNode, ruleName, childNodes, opacity); }
|
|
@@ -14,9 +14,9 @@ class ErrorMarkdownNode extends MarkdownNode {
|
|
|
14
14
|
createChildNodeDOMElements(context) {
|
|
15
15
|
const content = this.content(context),
|
|
16
16
|
textNode = document.createTextNode(content),
|
|
17
|
-
|
|
17
|
+
domElement = textNode; ///
|
|
18
18
|
|
|
19
|
-
this.
|
|
19
|
+
this.addDOMElement(domElement);
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(ErrorMarkdownNode, ruleName, childNodes, opacity); }
|
|
@@ -85,9 +85,9 @@ class HyperlinkLinkMarkdownNode extends MarkdownNode {
|
|
|
85
85
|
inlineText :
|
|
86
86
|
this.content(context),
|
|
87
87
|
textNode = document.createTextNode(content),
|
|
88
|
-
|
|
88
|
+
domElement = textNode; ///
|
|
89
89
|
|
|
90
|
-
this.
|
|
90
|
+
this.addDOMElement(domElement);
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(HyperlinkLinkMarkdownNode, ruleName, childNodes, opacity); }
|
|
@@ -22,9 +22,9 @@ class InlineListingMarkdownNode extends MarkdownNode {
|
|
|
22
22
|
content = removeBackticks(content); ///
|
|
23
23
|
|
|
24
24
|
const textNode = document.createTextNode(content),
|
|
25
|
-
|
|
25
|
+
domElement = textNode; ///
|
|
26
26
|
|
|
27
|
-
this.
|
|
27
|
+
this.addDOMElement(domElement);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(InlineListingMarkdownNode, ruleName, childNodes, opacity); }
|
|
@@ -16,11 +16,12 @@ export default class MarkedTextMarkdownNode extends MarkdownNode {
|
|
|
16
16
|
const childNodes = this.getChildNodes(),
|
|
17
17
|
domElements = domElementsFromChildNodes(childNodes, context, leftTrimmed),
|
|
18
18
|
parentDOMElement = domElement, ///
|
|
19
|
-
siblingDOMElement = null,
|
|
20
19
|
childNodeDOMElements = domElements; ///
|
|
21
20
|
|
|
22
21
|
childNodeDOMElements.forEach((childNodeDOMElement) => {
|
|
23
|
-
|
|
22
|
+
const domElement = childNodeDOMElement; ///
|
|
23
|
+
|
|
24
|
+
parentDOMElement.appendChild(domElement);
|
|
24
25
|
});
|
|
25
26
|
}
|
|
26
27
|
|
|
@@ -22,18 +22,17 @@ class StronglyEmphasisedTextMarkdownNode extends MarkdownNode {
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
createDOMElement(context) {
|
|
25
|
-
let domElement
|
|
26
|
-
|
|
27
|
-
const childNodeDOMElement = domElement; ///
|
|
25
|
+
let domElement;
|
|
28
26
|
|
|
29
27
|
domElement = document.createElement(tagName);
|
|
30
28
|
|
|
31
29
|
this.setDOMElement(domElement);
|
|
32
30
|
|
|
33
|
-
const parentDOMElement = domElement
|
|
34
|
-
|
|
31
|
+
const parentDOMElement = domElement; ///
|
|
32
|
+
|
|
33
|
+
domElement = super.createDOMElement(context);
|
|
35
34
|
|
|
36
|
-
parentDOMElement.
|
|
35
|
+
parentDOMElement.appendChild(domElement);
|
|
37
36
|
|
|
38
37
|
return domElement;
|
|
39
38
|
}
|
package/src/node/markdown.js
CHANGED
|
@@ -23,30 +23,6 @@ class MarkdownNode extends NonTerminalNode {
|
|
|
23
23
|
this.domElement = domElement;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
addChildNode(childNode) {
|
|
27
|
-
const childNodes = this.getChildNodes();
|
|
28
|
-
|
|
29
|
-
childNodes.push(childNode);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
removeChildNode(childNode) {
|
|
33
|
-
const childNodes = this.getChildNodes(),
|
|
34
|
-
index = childNodes.indexOf(childNode),
|
|
35
|
-
start = index, ///
|
|
36
|
-
deleteCount = 1;
|
|
37
|
-
|
|
38
|
-
childNodes.splice(start, deleteCount);
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
replaceChildNode(replacedChildNode, replacementChildNode) {
|
|
42
|
-
const childNodes = this.getChildNodes(),
|
|
43
|
-
index = childNodes.indexOf(replacedChildNode),
|
|
44
|
-
start = index, ///
|
|
45
|
-
deleteCount = 1;
|
|
46
|
-
|
|
47
|
-
childNodes.splice(start, deleteCount, replacementChildNode);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
26
|
tagName(context) {
|
|
51
27
|
const { tagName } = ruleNameToHTMLMap[this.ruleName];
|
|
52
28
|
|
|
@@ -173,6 +149,29 @@ ${childNodesHTML}${indent}${closingTag}
|
|
|
173
149
|
return html;
|
|
174
150
|
}
|
|
175
151
|
|
|
152
|
+
childNodesAsHTML(indent, context) {
|
|
153
|
+
const childNodes = this.getChildNodes(),
|
|
154
|
+
childNodesHTML = childNodes.reduce((childNodesHTML, childNode) => {
|
|
155
|
+
const childNodeNonTerminalNode = childNode.isNonTerminalNode();
|
|
156
|
+
|
|
157
|
+
if (childNodeNonTerminalNode) {
|
|
158
|
+
const nonTerminalNode = childNode, ///
|
|
159
|
+
markdownNode = nonTerminalNode, ///
|
|
160
|
+
markdownNodeHTML = markdownNode.asHTML(indent, context);
|
|
161
|
+
|
|
162
|
+
if (markdownNodeHTML !== null) {
|
|
163
|
+
childNodesHTML = (childNodesHTML === null) ?
|
|
164
|
+
markdownNodeHTML : ///
|
|
165
|
+
`${childNodesHTML}${markdownNodeHTML}`;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
return childNodesHTML;
|
|
170
|
+
}, null);
|
|
171
|
+
|
|
172
|
+
return childNodesHTML;
|
|
173
|
+
}
|
|
174
|
+
|
|
176
175
|
createDOMElement(context) {
|
|
177
176
|
let domElement = null;
|
|
178
177
|
|
|
@@ -186,7 +185,9 @@ ${childNodesHTML}${indent}${closingTag}
|
|
|
186
185
|
attributeValue = this.attributeValue(context);
|
|
187
186
|
|
|
188
187
|
if (className !== null) {
|
|
189
|
-
domElement
|
|
188
|
+
Object.assign(domElement, {
|
|
189
|
+
className
|
|
190
|
+
});
|
|
190
191
|
}
|
|
191
192
|
|
|
192
193
|
if ((attributeName !== null) && (attributeValue !== null)) {
|
|
@@ -201,29 +202,6 @@ ${childNodesHTML}${indent}${closingTag}
|
|
|
201
202
|
return domElement;
|
|
202
203
|
}
|
|
203
204
|
|
|
204
|
-
childNodesAsHTML(indent, context) {
|
|
205
|
-
const childNodes = this.getChildNodes(),
|
|
206
|
-
childNodesHTML = childNodes.reduce((childNodesHTML, childNode) => {
|
|
207
|
-
const childNodeNonTerminalNode = childNode.isNonTerminalNode();
|
|
208
|
-
|
|
209
|
-
if (childNodeNonTerminalNode) {
|
|
210
|
-
const nonTerminalNode = childNode, ///
|
|
211
|
-
markdownNode = nonTerminalNode, ///
|
|
212
|
-
markdownNodeHTML = markdownNode.asHTML(indent, context);
|
|
213
|
-
|
|
214
|
-
if (markdownNodeHTML !== null) {
|
|
215
|
-
childNodesHTML = (childNodesHTML === null) ?
|
|
216
|
-
markdownNodeHTML : ///
|
|
217
|
-
`${childNodesHTML}${markdownNodeHTML}`;
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
return childNodesHTML;
|
|
222
|
-
}, null);
|
|
223
|
-
|
|
224
|
-
return childNodesHTML;
|
|
225
|
-
}
|
|
226
|
-
|
|
227
205
|
createChildNodeDOMElements(context) {
|
|
228
206
|
const childNodes = this.getChildNodes();
|
|
229
207
|
|
|
@@ -233,23 +211,15 @@ ${childNodesHTML}${indent}${closingTag}
|
|
|
233
211
|
if (childNodeNonTerminalNode) {
|
|
234
212
|
const nonTerminalNode = childNode, ///
|
|
235
213
|
markdownNode = nonTerminalNode, ///
|
|
236
|
-
|
|
214
|
+
domElement = markdownNode.createDOMElement(context);
|
|
237
215
|
|
|
238
|
-
if (
|
|
239
|
-
this.
|
|
216
|
+
if (domElement !== null) {
|
|
217
|
+
this.addDOMElement(domElement);
|
|
240
218
|
}
|
|
241
219
|
}
|
|
242
220
|
});
|
|
243
221
|
}
|
|
244
222
|
|
|
245
|
-
insertDOMElement(domElement) {
|
|
246
|
-
const parentDOMElement = this.domElement, ///
|
|
247
|
-
siblingDOMElement = null,
|
|
248
|
-
childNodeDOMElement = domElement; ///
|
|
249
|
-
|
|
250
|
-
parentDOMElement.insertBefore(childNodeDOMElement, siblingDOMElement);
|
|
251
|
-
}
|
|
252
|
-
|
|
253
223
|
clone(...remainingArguments) { return super.clone(this.domElement, ...remainingArguments); }
|
|
254
224
|
|
|
255
225
|
static fromRuleNameChildNodesAndOpacity(Class, ruleName, childNodes, opacity, ...remainingArguments) {
|