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.
@@ -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.className = className;
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, markdownNodeDOMElement = markdownNode.createDOMElement(context);
338
- if (markdownNodeDOMElement !== null) {
339
- _this.insertDOMElement(markdownNodeDOMElement);
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZm9vdG5vdGVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBzdHJpbmdVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCB7IEVNUFRZX1NUUklORyB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGNob3AsIHNwbGljZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB7IHN0cmxlbiwgaW5kZXhPZiB9ID0gc3RyaW5nVXRpbGl0aWVzO1xuXG5leHBvcnQgZnVuY3Rpb24gYXBwZW5kRm9vdG5vdGVzTGlzdE1hcmtkb3duTm9kZUhUTUwoY2hpbGROb2Rlc0hUTUwsIGZvb3Rub3Rlc0xpc3RNYXJrZG93bk5vZGUsIGluZGVudCwgY29udGV4dCkge1xuICBjb25zdCBmb290bm90ZXNMaXN0TWFya2Rvd25Ob2RlSFRNTCA9IGZvb3Rub3Rlc0xpc3RNYXJrZG93bk5vZGUuYXNIVE1MKGluZGVudCwgY29udGV4dCk7XG5cbiAgY2hpbGROb2Rlc0hUTUwgPSBgJHtjaGlsZE5vZGVzSFRNTH0ke2Zvb3Rub3Rlc0xpc3RNYXJrZG93bk5vZGVIVE1MfWA7XG5cbiAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVudW1iZXJMaW5rTWFya2Rvd25Ob2Rlc0hUTUwoY2hpbGROb2Rlc0hUTUwsIGRpdmlzaW9uTWFya2Rvd25Ob2RlLCBmb290bm90ZXNMaXN0TWFya2Rvd25Ob2RlLCBjb250ZXh0KSB7XG4gIGxldCBudW1iZXIgPSAxO1xuXG4gIGNvbnN0IGlkZW50aWZpZXJzID0gZm9vdG5vdGVzTGlzdE1hcmtkb3duTm9kZS5pZGVudGlmaWVycygpLFxuICAgICAgICBsaW5rTWFya2Rvd25Ob2RlcyA9IGxpbmtNYXJrZG93bk5vZGVzRnJvbU5vZGUoZGl2aXNpb25NYXJrZG93bk5vZGUpO1xuXG4gIGxpbmtNYXJrZG93bk5vZGVzLmZvckVhY2goKGxpbmtNYXJrZG93bk5vZGUpID0+IHtcbiAgICBjb25zdCBpbmRlbnQgPSBudWxsLFxuICAgICAgICAgIGlkZW50aWZpZXIgPSBsaW5rTWFya2Rvd25Ob2RlLmlkZW50aWZpZXIoY29udGV4dCksXG4gICAgICAgICAgaWRlbnRpZmllcnNJbmNsdWRlc0lkZW50aWZpZXIgPSBpZGVudGlmaWVycy5pbmNsdWRlcyhpZGVudGlmaWVyKSxcbiAgICAgICAgICBsaW5rTWFya2Rvd25Ob2RlSFRNTCA9IGxpbmtNYXJrZG93bk5vZGUuYXNIVE1MKGluZGVudCwgY29udGV4dCksXG4gICAgICAgICAgaW5kZXggPSBpbmRleE9mKGNoaWxkTm9kZXNIVE1MLCBsaW5rTWFya2Rvd25Ob2RlSFRNTCksXG4gICAgICAgICAgbGVuZ3RoID0gc3RybGVuKGxpbmtNYXJrZG93bk5vZGVIVE1MKSxcbiAgICAgICAgICBzdGFydCA9IGluZGV4LCAgLy8vXG4gICAgICAgICAgZGVsZXRlQ291bnQgPSBsZW5ndGg7IC8vL1xuXG4gICAgaWYgKGlkZW50aWZpZXJzSW5jbHVkZXNJZGVudGlmaWVyKSB7XG4gICAgICBjb25zdCBsaW5rTWFya2Rvd25Ob2RlSFRNTCA9IGxpbmtNYXJrZG93bk5vZGUuYXNIVE1MKGluZGVudCwgY29udGV4dCwgbnVtYmVyKTtcblxuICAgICAgY2hpbGROb2Rlc0hUTUwgPSBzcGxpY2UoY2hpbGROb2Rlc0hUTUwsIHN0YXJ0LCBkZWxldGVDb3VudCwgbGlua01hcmtkb3duTm9kZUhUTUwpO1xuXG4gICAgICBudW1iZXIrKztcbiAgICB9IGVsc2Uge1xuICAgICAgY2hpbGROb2Rlc0hUTUwgPSBjaG9wKGNoaWxkTm9kZXNIVE1MLCBzdGFydCwgZGVsZXRlQ291bnQpO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVudW1iZXJMaW5rTWFya2Rvd25Ob2RlcyhkaXZpc2lvbk1hcmtkb3duTm9kZSwgZm9vdG5vdGVzTGlzdE1hcmtkb3duTm9kZSwgY29udGV4dCkge1xuICBsZXQgbnVtYmVyID0gMTtcblxuICBjb25zdCBpZGVudGlmaWVycyA9IGZvb3Rub3Rlc0xpc3RNYXJrZG93bk5vZGUuaWRlbnRpZmllcnMoKSxcbiAgICAgICAgbGlua01hcmtkb3duTm9kZXMgPSBsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKGRpdmlzaW9uTWFya2Rvd25Ob2RlKTtcblxuICBsaW5rTWFya2Rvd25Ob2Rlcy5mb3JFYWNoKChsaW5rTWFya2Rvd25Ob2RlKSA9PiB7XG4gICAgY29uc3QgaWRlbnRpZmllciA9IGxpbmtNYXJrZG93bk5vZGUuaWRlbnRpZmllcihjb250ZXh0KSxcbiAgICAgICAgICBsaW5rTWFya2Rvd25Ob2RlRE9NRWxlbWVudCA9IGxpbmtNYXJrZG93bk5vZGUuZ2V0RE9NRWxlbWVudCgpLFxuICAgICAgICAgIGlkZW50aWZpZXJzSW5jbHVkZXNJZGVudGlmaWVyID0gaWRlbnRpZmllcnMuaW5jbHVkZXMoaWRlbnRpZmllcik7XG5cbiAgICBsZXQgaW5uZXJIVE1MO1xuXG4gICAgaWYgKGlkZW50aWZpZXJzSW5jbHVkZXNJZGVudGlmaWVyKSB7XG4gICAgICBpbm5lckhUTUwgPSBgJHtudW1iZXJ9YDtcblxuICAgICAgbnVtYmVyKys7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlubmVySFRNTCA9IEVNUFRZX1NUUklORztcbiAgICB9XG5cbiAgICBPYmplY3QuYXNzaWduKGxpbmtNYXJrZG93bk5vZGVET01FbGVtZW50LCB7XG4gICAgICBpbm5lckhUTUxcbiAgICB9KTtcbiAgfSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgcmVudW1iZXJMaW5rTWFya2Rvd25Ob2Rlc1xufTtcbiJdLCJuYW1lcyI6WyJhcHBlbmRGb290bm90ZXNMaXN0TWFya2Rvd25Ob2RlSFRNTCIsInJlbnVtYmVyTGlua01hcmtkb3duTm9kZXMiLCJyZW51bWJlckxpbmtNYXJrZG93bk5vZGVzSFRNTCIsInN0cmxlbiIsInN0cmluZ1V0aWxpdGllcyIsImluZGV4T2YiLCJjaGlsZE5vZGVzSFRNTCIsImZvb3Rub3Rlc0xpc3RNYXJrZG93bk5vZGUiLCJpbmRlbnQiLCJjb250ZXh0IiwiZm9vdG5vdGVzTGlzdE1hcmtkb3duTm9kZUhUTUwiLCJhc0hUTUwiLCJkaXZpc2lvbk1hcmtkb3duTm9kZSIsIm51bWJlciIsImlkZW50aWZpZXJzIiwibGlua01hcmtkb3duTm9kZXMiLCJsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwiZm9yRWFjaCIsImxpbmtNYXJrZG93bk5vZGUiLCJpZGVudGlmaWVyIiwiaWRlbnRpZmllcnNJbmNsdWRlc0lkZW50aWZpZXIiLCJpbmNsdWRlcyIsImxpbmtNYXJrZG93bk5vZGVIVE1MIiwiaW5kZXgiLCJsZW5ndGgiLCJzdGFydCIsImRlbGV0ZUNvdW50Iiwic3BsaWNlIiwiY2hvcCIsImxpbmtNYXJrZG93bk5vZGVET01FbGVtZW50IiwiZ2V0RE9NRWxlbWVudCIsImlubmVySFRNTCIsIkVNUFRZX1NUUklORyIsIk9iamVjdCIsImFzc2lnbiJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBVWdCQSxtQ0FBbUM7ZUFBbkNBOztJQWlFaEIsT0FFRTtlQUZGOztJQTNCZ0JDLHlCQUF5QjtlQUF6QkE7O0lBOUJBQyw2QkFBNkI7ZUFBN0JBOzs7eUJBaEJnQjt5QkFFSDtzQkFDQTtxQkFDYTtBQUUxQyxJQUFRQyxTQUFvQkMsMEJBQWUsQ0FBbkNELFFBQVFFLFVBQVlELDBCQUFlLENBQTNCQztBQUVULFNBQVNMLG9DQUFvQ00sY0FBYyxFQUFFQyx5QkFBeUIsRUFBRUMsTUFBTSxFQUFFQyxPQUFPO0lBQzVHLElBQU1DLGdDQUFnQ0gsMEJBQTBCSSxNQUFNLENBQUNILFFBQVFDO0lBRS9FSCxpQkFBaUIsQUFBQyxHQUFtQkksT0FBakJKLGdCQUErQyxPQUE5Qkk7SUFFckMsT0FBT0o7QUFDVDtBQUVPLFNBQVNKLDhCQUE4QkksY0FBYyxFQUFFTSxvQkFBb0IsRUFBRUwseUJBQXlCLEVBQUVFLE9BQU87SUFDcEgsSUFBSUksU0FBUztJQUViLElBQU1DLGNBQWNQLDBCQUEwQk8sV0FBVyxJQUNuREMsb0JBQW9CQyxJQUFBQSxnQ0FBeUIsRUFBQ0o7SUFFcERHLGtCQUFrQkUsT0FBTyxDQUFDLFNBQUNDO1FBQ3pCLElBQU1WLFNBQVMsTUFDVFcsYUFBYUQsaUJBQWlCQyxVQUFVLENBQUNWLFVBQ3pDVyxnQ0FBZ0NOLFlBQVlPLFFBQVEsQ0FBQ0YsYUFDckRHLHVCQUF1QkosaUJBQWlCUCxNQUFNLENBQUNILFFBQVFDLFVBQ3ZEYyxRQUFRbEIsUUFBUUMsZ0JBQWdCZ0IsdUJBQ2hDRSxTQUFTckIsT0FBT21CLHVCQUNoQkcsUUFBUUYsT0FDUkcsY0FBY0YsUUFBUSxHQUFHO1FBRS9CLElBQUlKLCtCQUErQjtZQUNqQyxJQUFNRSx3QkFBdUJKLGlCQUFpQlAsTUFBTSxDQUFDSCxRQUFRQyxTQUFTSTtZQUV0RVAsaUJBQWlCcUIsSUFBQUEsY0FBTSxFQUFDckIsZ0JBQWdCbUIsT0FBT0MsYUFBYUo7WUFFNURUO1FBQ0YsT0FBTztZQUNMUCxpQkFBaUJzQixJQUFBQSxZQUFJLEVBQUN0QixnQkFBZ0JtQixPQUFPQztRQUMvQztJQUNGO0lBRUEsT0FBT3BCO0FBQ1Q7QUFFTyxTQUFTTCwwQkFBMEJXLG9CQUFvQixFQUFFTCx5QkFBeUIsRUFBRUUsT0FBTztJQUNoRyxJQUFJSSxTQUFTO0lBRWIsSUFBTUMsY0FBY1AsMEJBQTBCTyxXQUFXLElBQ25EQyxvQkFBb0JDLElBQUFBLGdDQUF5QixFQUFDSjtJQUVwREcsa0JBQWtCRSxPQUFPLENBQUMsU0FBQ0M7UUFDekIsSUFBTUMsYUFBYUQsaUJBQWlCQyxVQUFVLENBQUNWLFVBQ3pDb0IsNkJBQTZCWCxpQkFBaUJZLGFBQWEsSUFDM0RWLGdDQUFnQ04sWUFBWU8sUUFBUSxDQUFDRjtRQUUzRCxJQUFJWTtRQUVKLElBQUlYLCtCQUErQjtZQUNqQ1csWUFBWSxBQUFDLEdBQVMsT0FBUGxCO1lBRWZBO1FBQ0YsT0FBTztZQUNMa0IsWUFBWUMsdUJBQVk7UUFDMUI7UUFFQUMsT0FBT0MsTUFBTSxDQUFDTCw0QkFBNEI7WUFDeENFLFdBQUFBO1FBQ0Y7SUFDRjtBQUNGO0lBRUEsV0FBZTtJQUNiOUIsMkJBQUFBO0FBQ0YifQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZm9vdG5vdGVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVudW1iZXJMaW5rTWFya2Rvd25Ob2RlcyhkaXZpc2lvbk1hcmtkb3duTm9kZSwgZm9vdG5vdGVzTGlzdE1hcmtkb3duTm9kZSwgY29udGV4dCkge1xuICBsZXQgbnVtYmVyID0gMTtcblxuICBjb25zdCBpZGVudGlmaWVycyA9IGZvb3Rub3Rlc0xpc3RNYXJrZG93bk5vZGUuaWRlbnRpZmllcnMoKSxcbiAgICAgICAgbGlua01hcmtkb3duTm9kZXMgPSBsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKGRpdmlzaW9uTWFya2Rvd25Ob2RlKTtcblxuICBsaW5rTWFya2Rvd25Ob2Rlcy5mb3JFYWNoKChsaW5rTWFya2Rvd25Ob2RlKSA9PiB7XG4gICAgY29uc3QgaWRlbnRpZmllciA9IGxpbmtNYXJrZG93bk5vZGUuaWRlbnRpZmllcihjb250ZXh0KSxcbiAgICAgICAgICBsaW5rTWFya2Rvd25Ob2RlRE9NRWxlbWVudCA9IGxpbmtNYXJrZG93bk5vZGUuZ2V0RE9NRWxlbWVudCgpLFxuICAgICAgICAgIGlkZW50aWZpZXJzSW5jbHVkZXNJZGVudGlmaWVyID0gaWRlbnRpZmllcnMuaW5jbHVkZXMoaWRlbnRpZmllcik7XG5cbiAgICBsZXQgaW5uZXJIVE1MO1xuXG4gICAgaWYgKGlkZW50aWZpZXJzSW5jbHVkZXNJZGVudGlmaWVyKSB7XG4gICAgICBpbm5lckhUTUwgPSBgJHtudW1iZXJ9YDtcblxuICAgICAgbnVtYmVyKys7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlubmVySFRNTCA9IEVNUFRZX1NUUklORztcbiAgICB9XG5cbiAgICBPYmplY3QuYXNzaWduKGxpbmtNYXJrZG93bk5vZGVET01FbGVtZW50LCB7XG4gICAgICBpbm5lckhUTUxcbiAgICB9KTtcbiAgfSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgcmVudW1iZXJMaW5rTWFya2Rvd25Ob2Rlc1xufTtcbiJdLCJuYW1lcyI6WyJyZW51bWJlckxpbmtNYXJrZG93bk5vZGVzIiwiZGl2aXNpb25NYXJrZG93bk5vZGUiLCJmb290bm90ZXNMaXN0TWFya2Rvd25Ob2RlIiwiY29udGV4dCIsIm51bWJlciIsImlkZW50aWZpZXJzIiwibGlua01hcmtkb3duTm9kZXMiLCJsaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwiZm9yRWFjaCIsImxpbmtNYXJrZG93bk5vZGUiLCJpZGVudGlmaWVyIiwibGlua01hcmtkb3duTm9kZURPTUVsZW1lbnQiLCJnZXRET01FbGVtZW50IiwiaWRlbnRpZmllcnNJbmNsdWRlc0lkZW50aWZpZXIiLCJpbmNsdWRlcyIsImlubmVySFRNTCIsIkVNUFRZX1NUUklORyIsIk9iamVjdCIsImFzc2lnbiJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7IiwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQWdDQSxPQUVFO2VBRkY7O0lBM0JnQkEseUJBQXlCO2VBQXpCQTs7O3lCQUhhO3FCQUNhO0FBRW5DLFNBQVNBLDBCQUEwQkMsb0JBQW9CLEVBQUVDLHlCQUF5QixFQUFFQyxPQUFPO0lBQ2hHLElBQUlDLFNBQVM7SUFFYixJQUFNQyxjQUFjSCwwQkFBMEJHLFdBQVcsSUFDbkRDLG9CQUFvQkMsSUFBQUEsZ0NBQXlCLEVBQUNOO0lBRXBESyxrQkFBa0JFLE9BQU8sQ0FBQyxTQUFDQztRQUN6QixJQUFNQyxhQUFhRCxpQkFBaUJDLFVBQVUsQ0FBQ1AsVUFDekNRLDZCQUE2QkYsaUJBQWlCRyxhQUFhLElBQzNEQyxnQ0FBZ0NSLFlBQVlTLFFBQVEsQ0FBQ0o7UUFFM0QsSUFBSUs7UUFFSixJQUFJRiwrQkFBK0I7WUFDakNFLFlBQVksQUFBQyxHQUFTLE9BQVBYO1lBRWZBO1FBQ0YsT0FBTztZQUNMVyxZQUFZQyx1QkFBWTtRQUMxQjtRQUVBQyxPQUFPQyxNQUFNLENBQUNQLDRCQUE0QjtZQUN4Q0ksV0FBQUE7UUFDRjtJQUNGO0FBQ0Y7SUFFQSxXQUFlO0lBQ2JmLDJCQUFBQTtBQUNGIn0=
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "highmark-markdown",
3
3
  "author": "James Smith",
4
- "version": "0.0.170",
4
+ "version": "0.0.172",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/highmark-markdown",
7
7
  "description": "Highmark's Markdown.",
@@ -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 childDOMElement = domElement; ///
20
-
21
- domElement = this.getDOMElement();
26
+ const parentDOMElement = this.getParentDOMElement();
22
27
 
23
- domElement.appendChild(childDOMElement);
28
+ parentDOMElement.appendChild(domElement);
24
29
  }
25
30
 
26
31
  parentContext() {
@@ -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
 
@@ -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
 
@@ -23,7 +23,9 @@ ${childNodesHTML}${closingTag}
23
23
  className = this.className(context),
24
24
  domElement = document.createElement(tagName);
25
25
 
26
- domElement.className = className;
26
+ Object.assign(domElement, {
27
+ className
28
+ });
27
29
 
28
30
  this.setDOMElement(domElement);
29
31
 
@@ -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
- childNodeDOMElement = textNode; ///
88
+ domElement = textNode; ///
89
89
 
90
- this.insertDOMElement(childNodeDOMElement);
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
- childNodeDOMElement = textNode; ///
17
+ domElement = textNode; ///
18
18
 
19
- this.insertDOMElement(childNodeDOMElement);
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
- childNodeDOMElement = textNode; ///
88
+ domElement = textNode; ///
89
89
 
90
- this.insertDOMElement(childNodeDOMElement);
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
- childNodeDOMElement = textNode; ///
25
+ domElement = textNode; ///
26
26
 
27
- this.insertDOMElement(childNodeDOMElement);
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
- parentDOMElement.insertBefore(childNodeDOMElement, siblingDOMElement);
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 = super.createDOMElement(context);
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
- siblingDOMElement = null;
31
+ const parentDOMElement = domElement; ///
32
+
33
+ domElement = super.createDOMElement(context);
35
34
 
36
- parentDOMElement.insertBefore(childNodeDOMElement, siblingDOMElement);
35
+ parentDOMElement.appendChild(domElement);
37
36
 
38
37
  return domElement;
39
38
  }
@@ -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.className = className;
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
- markdownNodeDOMElement = markdownNode.createDOMElement(context);
214
+ domElement = markdownNode.createDOMElement(context);
237
215
 
238
- if (markdownNodeDOMElement !== null) {
239
- this.insertDOMElement(markdownNodeDOMElement);
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) {