highmark-markdown 0.0.443 → 0.0.444
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 +1457 -1445
- package/lib/defaultMarkdownStyle.js +2 -2
- package/lib/example/importer.js +2 -2
- package/lib/example/view.js +3 -3
- package/lib/node/markdown/division.js +52 -42
- package/lib/node/markdown/subDivision.js +1 -12
- package/lib/node/markdown/verticalSpace.js +1 -12
- package/lib/node/markdown.js +8 -1
- package/lib/replacement/{subDivision/indexAnchor.js → indexAnchor.js} +23 -16
- package/lib/utilities/processing.js +23 -13
- package/package.json +1 -1
- package/src/defaultMarkdownStyle.js +3 -0
- package/src/example/importer.js +0 -2
- package/src/example/view.js +3 -2
- package/src/node/markdown/division.js +73 -59
- package/src/node/markdown/subDivision.js +0 -15
- package/src/node/markdown/verticalSpace.js +0 -15
- package/src/node/markdown.js +6 -0
- package/src/replacement/indexAnchor.js +27 -0
- package/src/utilities/processing.js +26 -16
- package/src/replacement/subDivision/indexAnchor.js +0 -20
|
@@ -8,10 +8,8 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return VerticalSpaceMarkdownNode;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var _occamparsers = require("occam-parsers");
|
|
12
11
|
var _markdown = /*#__PURE__*/ _interop_require_default(require("../../node/markdown"));
|
|
13
12
|
var _constants = require("../../constants");
|
|
14
|
-
var _ruleNames = require("../../ruleNames");
|
|
15
13
|
function _assert_this_initialized(self) {
|
|
16
14
|
if (self === void 0) {
|
|
17
15
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
@@ -126,15 +124,6 @@ var VerticalSpaceMarkdownNode = /*#__PURE__*/ function(MarkdownNode) {
|
|
|
126
124
|
}
|
|
127
125
|
}
|
|
128
126
|
], [
|
|
129
|
-
{
|
|
130
|
-
key: "fromNothing",
|
|
131
|
-
value: function fromNothing() {
|
|
132
|
-
var epsilonNode = _occamparsers.EpsilonNode.fromNothing(), ruleName = _ruleNames.VERTICAL_SPACE_RULE_NAME, childNodes = [
|
|
133
|
-
epsilonNode
|
|
134
|
-
], opacity = null, verticalSpaceMarkdownNode = _markdown.default.fromRuleNameChildNodesAndOpacity(VerticalSpaceMarkdownNode, ruleName, childNodes, opacity);
|
|
135
|
-
return verticalSpaceMarkdownNode;
|
|
136
|
-
}
|
|
137
|
-
},
|
|
138
127
|
{
|
|
139
128
|
key: "fromRuleNameChildNodesAndOpacity",
|
|
140
129
|
value: function fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) {
|
|
@@ -145,4 +134,4 @@ var VerticalSpaceMarkdownNode = /*#__PURE__*/ function(MarkdownNode) {
|
|
|
145
134
|
return VerticalSpaceMarkdownNode;
|
|
146
135
|
}(_markdown.default);
|
|
147
136
|
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL21hcmtkb3duL3ZlcnRpY2FsU3BhY2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNYXJrZG93bk5vZGUgZnJvbSBcIi4uLy4uL25vZGUvbWFya2Rvd25cIjtcblxuaW1wb3J0IHsgQ0FSUklBR0VfUkVUVVJOIH0gZnJvbSBcIi4uLy4uL2NvbnN0YW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZXJ0aWNhbFNwYWNlTWFya2Rvd25Ob2RlIGV4dGVuZHMgTWFya2Rvd25Ob2RlIHtcbiAgYXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IGh0bWwgPSBDQVJSSUFHRV9SRVRVUk47ICAvLy9cblxuICAgIHJldHVybiBodG1sO1xuICB9XG5cbiAgY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KSB7XG4gICAgY29uc3QgY29udGVudCA9IENBUlJJQUdFX1JFVFVSTiwgLy8vXG4gICAgICAgICAgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjb250ZW50KSxcbiAgICAgICAgICBkb21FbGVtZW50ID0gdGV4dE5vZGU7ICAvLy9cblxuICAgIHRoaXMuc2V0RE9NRWxlbWVudChkb21FbGVtZW50KTtcblxuICAgIHJldHVybiBkb21FbGVtZW50O1xuICB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5KHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5KSB7IHJldHVybiBNYXJrZG93bk5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoVmVydGljYWxTcGFjZU1hcmtkb3duTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHkpOyB9XG59XG4iXSwibmFtZXMiOlsiVmVydGljYWxTcGFjZU1hcmtkb3duTm9kZSIsImFzSFRNTCIsImluZGVudCIsImNvbnRleHQiLCJodG1sIiwiQ0FSUklBR0VfUkVUVVJOIiwiY3JlYXRlRE9NRWxlbWVudCIsImNvbnRlbnQiLCJ0ZXh0Tm9kZSIsImRvY3VtZW50IiwiY3JlYXRlVGV4dE5vZGUiLCJkb21FbGVtZW50Iiwic2V0RE9NRWxlbWVudCIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5IiwicnVsZU5hbWUiLCJjaGlsZE5vZGVzIiwib3BhY2l0eSIsIk1hcmtkb3duTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNcUJBOzs7K0RBSkk7eUJBRU87Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFakIsSUFBQSxBQUFNQSwwQ0FBRCxBQUFMO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUEsT0FBT0MsTUFBTSxFQUFFQyxPQUFPO2dCQUNwQixJQUFNQyxPQUFPQywwQkFBZSxFQUFHLEdBQUc7Z0JBRWxDLE9BQU9EO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsaUJBQWlCSCxPQUFPO2dCQUN0QixJQUFNSSxVQUFVRiwwQkFBZSxFQUN6QkcsV0FBV0MsU0FBU0MsY0FBYyxDQUFDSCxVQUNuQ0ksYUFBYUgsVUFBVyxHQUFHO2dCQUVqQyxJQUFJLENBQUNJLGFBQWEsQ0FBQ0Q7Z0JBRW5CLE9BQU9BO1lBQ1Q7Ozs7WUFFT0UsS0FBQUE7bUJBQVAsU0FBT0EsaUNBQWlDQyxRQUFRLEVBQUVDLFVBQVUsRUFBRUMsT0FBTztnQkFBSSxPQUFPQyxpQkFBWSxDQUFDSixnQ0FBZ0MsQ0FqQjFHYiwyQkFpQnNJYyxVQUFVQyxZQUFZQztZQUFVOzs7V0FqQnRLaEI7RUFBa0NpQixpQkFBWSJ9
|
package/lib/node/markdown.js
CHANGED
|
@@ -239,6 +239,13 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
239
239
|
return attributeValue;
|
|
240
240
|
}
|
|
241
241
|
},
|
|
242
|
+
{
|
|
243
|
+
key: "isDivisionMarkdownNode",
|
|
244
|
+
value: function isDivisionMarkdownNode() {
|
|
245
|
+
var divisionMarkdownNode = false;
|
|
246
|
+
return divisionMarkdownNode;
|
|
247
|
+
}
|
|
248
|
+
},
|
|
242
249
|
{
|
|
243
250
|
key: "isPlainTextMarkdownNode",
|
|
244
251
|
value: function isPlainTextMarkdownNode() {
|
|
@@ -409,4 +416,4 @@ Object.assign(MarkdownNode.prototype, _node.default);
|
|
|
409
416
|
Object.assign(MarkdownNode.prototype, _element.default);
|
|
410
417
|
var _default = MarkdownNode;
|
|
411
418
|
|
|
412
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL21hcmtkb3duLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuXG5pbXBvcnQgZWxlbWVudE1hcCBmcm9tIFwiLi4vZWxlbWVudE1hcFwiO1xuaW1wb3J0IG5vZGVNaXhpbnMgZnJvbSBcIi4uL21peGlucy9ub2RlXCI7XG5pbXBvcnQgZWxlbWVudE1peGlucyBmcm9tIFwiLi4vbWl4aW5zL2VsZW1lbnRcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuXG5jbGFzcyBNYXJrZG93bk5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBjb25zdHJ1Y3RvcihydWxlTmFtZSwgY2hpbGROb2RlcywgcHJlY2VkZW5jZSwgb3BhY2l0eSwgZG9tRWxlbWVudCkge1xuICAgIHN1cGVyKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBwcmVjZWRlbmNlLCBvcGFjaXR5KTtcblxuICAgIHRoaXMuZG9tRWxlbWVudCA9IGRvbUVsZW1lbnQ7XG4gIH1cblxuICBnZXRET01FbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLmRvbUVsZW1lbnQ7XG4gIH1cblxuICBzZXRET01FbGVtZW50KGRvbUVsZW1lbnQpIHtcbiAgICB0aGlzLmRvbUVsZW1lbnQgPSBkb21FbGVtZW50O1xuICB9XG5cbiAgdGFnTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgeyB0YWdOYW1lIH0gPSBlbGVtZW50TWFwW3RoaXMucnVsZU5hbWVdO1xuXG4gICAgcmV0dXJuIHRhZ05hbWU7XG4gIH1cblxuICBjbGFzc05hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IHsgY2xhc3NOYW1lIH0gPSBlbGVtZW50TWFwW3RoaXMucnVsZU5hbWVdO1xuXG4gICAgcmV0dXJuIGNsYXNzTmFtZTtcbiAgfVxuXG4gIGNsb3NpbmdUYWcoY29udGV4dCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCksXG4gICAgICAgICAgY2xvc2luZ1RhZyA9IGA8LyR7dGFnTmFtZX0+YDtcblxuICAgIHJldHVybiBjbG9zaW5nVGFnO1xuICB9XG5cbiAgc3RhcnRpbmdUYWcoY29udGV4dCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCksXG4gICAgICAgICAgY2xhc3NOYW1lID0gdGhpcy5jbGFzc05hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlTmFtZSA9IHRoaXMuYXR0cmlidXRlTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZSA9IHRoaXMuYXR0cmlidXRlVmFsdWUoY29udGV4dCksXG4gICAgICAgICAgY2xhc3NIVE1MID0gKGNsYXNzTmFtZSAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICBgIGNsYXNzPVwiJHtjbGFzc05hbWV9XCJgIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIGF0dHJpYnV0ZUhUTUwgPSAoKGF0dHJpYnV0ZU5hbWUgIT09IG51bGwpICYmIChhdHRyaWJ1dGVWYWx1ZSAhPT0gbnVsbCkpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGAgJHthdHRyaWJ1dGVOYW1lfT1cIiR7YXR0cmlidXRlVmFsdWV9XCJgIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBzdGFydGluZ1RhZyA9IGA8JHt0YWdOYW1lfSR7Y2xhc3NIVE1MfSR7YXR0cmlidXRlSFRNTH0+YDtcblxuICAgIHJldHVybiBzdGFydGluZ1RhZztcbiAgfVxuXG4gIHNlbGZDbG9zaW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzSFRNTCA9IChjbGFzc05hbWUgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgYCBjbGFzcz1cIiR7Y2xhc3NOYW1lfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBhdHRyaWJ1dGVIVE1MID0gKChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSAmJiAoYXR0cmlidXRlVmFsdWUgIT09IG51bGwpKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBgICR7YXR0cmlidXRlTmFtZX09XCIke2F0dHJpYnV0ZVZhbHVlfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgc2VsZkNsb3NpbmdUYWcgPSBgPCR7dGFnTmFtZX0ke2NsYXNzSFRNTH0ke2F0dHJpYnV0ZUhUTUx9Lz5gO1xuXG4gICAgcmV0dXJuIHNlbGZDbG9zaW5nVGFnO1xuICB9XG5cbiAgYWRqdXN0SW5kZW50KGluZGVudCkge1xuICAgIGlmIChpbmRlbnQgIT09IG51bGwpIHtcbiAgICAgIGluZGVudCA9IGAgICR7aW5kZW50fWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGluZGVudDtcbiAgfVxuXG4gIGF0dHJpYnV0ZU5hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZU5hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSB7XG4gICAgY29uc3QgYXR0cmlidXRlVmFsdWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZVZhbHVlO1xuICB9XG5cbiAgaXNQbGFpblRleHRNYXJrZG93bk5vZGUoKSB7XG4gICAgY29uc3QgcGxhaW5UZXh0TWFya2Rvd25Ob2RlID0gZmFsc2U7XG5cbiAgICByZXR1cm4gcGxhaW5UZXh0TWFya2Rvd25Ob2RlO1xuICB9XG5cbiAgbGluZXMoY29udGV4dCkge1xuICAgIGxldCBsaW5lcztcblxuICAgICh7IGxpbmVzID0gbnVsbCB9ID0gdGhpcy5jb25zdHJ1Y3Rvcik7XG5cbiAgICBpZiAobGluZXMgPT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKTtcblxuICAgICAgbGluZXMgPSBjaGlsZE5vZGVzLnJlZHVjZSgobGluZXMsIGNoaWxkTm9kZSkgPT4ge1xuICAgICAgICBjb25zdCBjaGlsZE5vZGVNYXJrZG93bk5vZGUgPSAoY2hpbGROb2RlIGluc3RhbmNlb2YgTWFya2Rvd25Ob2RlKTtcblxuICAgICAgICBpZiAoY2hpbGROb2RlTWFya2Rvd25Ob2RlKSB7XG4gICAgICAgICAgY29uc3QgbWFya2Rvd25Ob2RlID0gY2hpbGROb2RlLCAvLy9cbiAgICAgICAgICAgICAgICBtYXJrZG93bk5vZGVMaW5lcyA9IG1hcmtkb3duTm9kZS5saW5lcyhjb250ZXh0KTtcblxuICAgICAgICAgIGxpbmVzICs9IG1hcmtkb3duTm9kZUxpbmVzO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGxpbmVzO1xuICAgICAgfSwgMCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxpbmVzO1xuICB9XG5cbiAgYXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGxldCBodG1sID0gbnVsbDtcblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBpZiAodGFnTmFtZSAhPT0gbnVsbCkge1xuICAgICAgaW5kZW50ID0gdGhpcy5hZGp1c3RJbmRlbnQoaW5kZW50KTtcblxuICAgICAgY29uc3QgY2hpbGROb2Rlc0hUTUwgPSB0aGlzLmNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgaWYgKGNoaWxkTm9kZXNIVE1MICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHN0YXJ0aW5nVGFnID0gdGhpcy5zdGFydGluZ1RhZyhjb250ZXh0KSxcbiAgICAgICAgICAgICAgY2xvc2luZ1RhZyA9IHRoaXMuY2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgICBodG1sID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICBgJHtzdGFydGluZ1RhZ30ke2NoaWxkTm9kZXNIVE1MfSR7Y2xvc2luZ1RhZ31gIDpcbiAgICAgICAgICAgICAgICAgICBgJHtpbmRlbnR9JHtzdGFydGluZ1RhZ31cbiR7Y2hpbGROb2Rlc0hUTUx9JHtpbmRlbnR9JHtjbG9zaW5nVGFnfVxuYDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHNlbGZDbG9zaW5nVGFnID0gdGhpcy5zZWxmQ2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgICBodG1sID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgIHNlbGZDbG9zaW5nVGFnIDogIC8vL1xuYCR7aW5kZW50fSR7c2VsZkNsb3NpbmdUYWd9XG5gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBodG1sO1xuICB9XG5cbiAgYXNQbGFpblRleHQoY29udGV4dCkge1xuICAgIGxldCBwbGFpblRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGlmICh0YWdOYW1lICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVzUGxhaW5UZXh0ID0gdGhpcy5jaGlsZE5vZGVzQXNQbGFpblRleHQoY29udGV4dCk7XG5cbiAgICAgIGlmIChjaGlsZE5vZGVzUGxhaW5UZXh0ICE9PSBudWxsKSB7XG4gICAgICAgIHBsYWluVGV4dCA9IChwbGFpblRleHQgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGVzUGxhaW5UZXh0IDpcbiAgICAgICAgICAgICAgICAgICAgICAgYCR7cGxhaW5UZXh0fVxuJHtjaGlsZE5vZGVzUGxhaW5UZXh0fTtgO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBwbGFpblRleHQ7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBjaGlsZE5vZGVzSFRNTCA9IGNoaWxkTm9kZXMucmVkdWNlKChjaGlsZE5vZGVzSFRNTCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjaGlsZE5vZGVNYXJrZG93bk5vZGUgPSAoY2hpbGROb2RlIGluc3RhbmNlb2YgTWFya2Rvd25Ob2RlKTtcblxuICAgICAgICAgICAgaWYgKGNoaWxkTm9kZU1hcmtkb3duTm9kZSkge1xuICAgICAgICAgICAgICBjb25zdCBtYXJrZG93bk5vZGUgPSBjaGlsZE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgICAgICBtYXJrZG93bk5vZGVIVE1MID0gbWFya2Rvd25Ob2RlLmFzSFRNTChpbmRlbnQsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICAgIGlmIChtYXJrZG93bk5vZGVIVE1MICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgY2hpbGROb2Rlc0hUTUwgPSAoY2hpbGROb2Rlc0hUTUwgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlSFRNTCA6ICAvLy9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke2NoaWxkTm9kZXNIVE1MfSR7bWFya2Rvd25Ob2RlSFRNTH1gO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBjaGlsZE5vZGVzSFRNTDtcbiAgICAgICAgICB9LCBudWxsKTtcblxuICAgIHJldHVybiBjaGlsZE5vZGVzSFRNTDtcbiAgfVxuXG4gIGNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCkge1xuICAgIGxldCBkb21FbGVtZW50ID0gbnVsbDtcblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBpZiAodGFnTmFtZSAhPT0gbnVsbCkge1xuICAgICAgZG9tRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7XG5cbiAgICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgICAgYXR0cmlidXRlTmFtZSA9IHRoaXMuYXR0cmlidXRlTmFtZShjb250ZXh0KSxcbiAgICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KTtcblxuICAgICAgaWYgKGNsYXNzTmFtZSAhPT0gbnVsbCkge1xuICAgICAgICBPYmplY3QuYXNzaWduKGRvbUVsZW1lbnQsIHtcbiAgICAgICAgICBjbGFzc05hbWVcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGlmICgoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkgJiYgKGF0dHJpYnV0ZVZhbHVlICE9PSBudWxsKSkge1xuICAgICAgICBkb21FbGVtZW50LnNldEF0dHJpYnV0ZShhdHRyaWJ1dGVOYW1lLCBhdHRyaWJ1dGVWYWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2V0RE9NRWxlbWVudChkb21FbGVtZW50KTtcblxuICAgICAgdGhpcy5jcmVhdGVDaGlsZE5vZGVET01FbGVtZW50cyhjb250ZXh0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZG9tRWxlbWVudDtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc1BsYWluVGV4dChjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSBjaGlsZE5vZGVzLnJlZHVjZSgoY2hpbGROb2Rlc1BsYWluVGV4dCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICAgIGNvbnN0IGNoaWxkTm9kZU1hcmtkb3duTm9kZSA9IChjaGlsZE5vZGUgaW5zdGFuY2VvZiBNYXJrZG93bk5vZGUpO1xuXG4gICAgICAgIGlmIChjaGlsZE5vZGVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgICBjb25zdCBtYXJrZG93bk5vZGUgPSBjaGlsZE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIG1hcmtkb3duTm9kZVBsYWluVGV4dCA9IG1hcmtkb3duTm9kZS5hc1BsYWluVGV4dChjb250ZXh0KTtcblxuICAgICAgICAgIGlmIChtYXJrZG93bk5vZGVQbGFpblRleHQgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSAoY2hpbGROb2Rlc1BsYWluVGV4dCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlUGxhaW5UZXh0IDogIC8vL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke2NoaWxkTm9kZXNQbGFpblRleHR9XG4ke21hcmtkb3duTm9kZVBsYWluVGV4dH1gO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjaGlsZE5vZGVzUGxhaW5UZXh0O1xuICAgICAgfSwgbnVsbCk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1BsYWluVGV4dDtcbiAgfVxuXG4gIGNyZWF0ZUNoaWxkTm9kZURPTUVsZW1lbnRzKGNvbnRleHQpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gdGhpcy5nZXRDaGlsZE5vZGVzKCk7XG5cbiAgICBjaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlTWFya2Rvd25Ob2RlID0gKGNoaWxkTm9kZSBpbnN0YW5jZW9mIE1hcmtkb3duTm9kZSk7XG5cbiAgICAgIGlmIChjaGlsZE5vZGVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgY29uc3QgbWFya2Rvd25Ob2RlID0gY2hpbGROb2RlOyAvLy9cblxuICAgICAgICBtYXJrZG93bk5vZGUuY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KTtcblxuICAgICAgICBjb25zdCBkb21FbGVtZW50ID0gbWFya2Rvd25Ob2RlLmdldERPTUVsZW1lbnQoKTtcblxuICAgICAgICBpZiAoZG9tRWxlbWVudCAhPT0gbnVsbCkge1xuICAgICAgICAgIHRoaXMuYWRkRE9NRWxlbWVudChkb21FbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgY2xvbmUoLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7IHJldHVybiBzdXBlci5jbG9uZSh0aGlzLmRvbUVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7IH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCBkb21FbGVtZW50ID0gbnVsbCxcbiAgICAgICAgICBtYXJrZG93bk5vZGUgPSBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG1hcmtkb3duTm9kZTtcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKE1hcmtkb3duTm9kZS5wcm90b3R5cGUsIG5vZGVNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihNYXJrZG93bk5vZGUucHJvdG90eXBlLCBlbGVtZW50TWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgTWFya2Rvd25Ob2RlO1xuIl0sIm5hbWVzIjpbIk1hcmtkb3duTm9kZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsInByZWNlZGVuY2UiLCJvcGFjaXR5IiwiZG9tRWxlbWVudCIsImdldERPTUVsZW1lbnQiLCJzZXRET01FbGVtZW50IiwidGFnTmFtZSIsImNvbnRleHQiLCJlbGVtZW50TWFwIiwiY2xhc3NOYW1lIiwiY2xvc2luZ1RhZyIsInN0YXJ0aW5nVGFnIiwiYXR0cmlidXRlTmFtZSIsImF0dHJpYnV0ZVZhbHVlIiwiY2xhc3NIVE1MIiwiRU1QVFlfU1RSSU5HIiwiYXR0cmlidXRlSFRNTCIsInNlbGZDbG9zaW5nVGFnIiwiYWRqdXN0SW5kZW50IiwiaW5kZW50IiwiaXNQbGFpblRleHRNYXJrZG93bk5vZGUiLCJwbGFpblRleHRNYXJrZG93bk5vZGUiLCJsaW5lcyIsImNvbnN0cnVjdG9yIiwiZ2V0Q2hpbGROb2RlcyIsInJlZHVjZSIsImNoaWxkTm9kZSIsImNoaWxkTm9kZU1hcmtkb3duTm9kZSIsIm1hcmtkb3duTm9kZSIsIm1hcmtkb3duTm9kZUxpbmVzIiwiYXNIVE1MIiwiaHRtbCIsImNoaWxkTm9kZXNIVE1MIiwiY2hpbGROb2Rlc0FzSFRNTCIsImFzUGxhaW5UZXh0IiwicGxhaW5UZXh0IiwiY2hpbGROb2Rlc1BsYWluVGV4dCIsImNoaWxkTm9kZXNBc1BsYWluVGV4dCIsIm1hcmtkb3duTm9kZUhUTUwiLCJjcmVhdGVET01FbGVtZW50IiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiT2JqZWN0IiwiYXNzaWduIiwic2V0QXR0cmlidXRlIiwiY3JlYXRlQ2hpbGROb2RlRE9NRWxlbWVudHMiLCJtYXJrZG93bk5vZGVQbGFpblRleHQiLCJmb3JFYWNoIiwiYWRkRE9NRWxlbWVudCIsImNsb25lIiwicmVtYWluaW5nQXJndW1lbnRzIiwiZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkiLCJDbGFzcyIsIk5vblRlcm1pbmFsTm9kZSIsInByb3RvdHlwZSIsIm5vZGVNaXhpbnMiLCJlbGVt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
|
|
419
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL21hcmtkb3duLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuXG5pbXBvcnQgZWxlbWVudE1hcCBmcm9tIFwiLi4vZWxlbWVudE1hcFwiO1xuaW1wb3J0IG5vZGVNaXhpbnMgZnJvbSBcIi4uL21peGlucy9ub2RlXCI7XG5pbXBvcnQgZWxlbWVudE1peGlucyBmcm9tIFwiLi4vbWl4aW5zL2VsZW1lbnRcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuXG5jbGFzcyBNYXJrZG93bk5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBjb25zdHJ1Y3RvcihydWxlTmFtZSwgY2hpbGROb2RlcywgcHJlY2VkZW5jZSwgb3BhY2l0eSwgZG9tRWxlbWVudCkge1xuICAgIHN1cGVyKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBwcmVjZWRlbmNlLCBvcGFjaXR5KTtcblxuICAgIHRoaXMuZG9tRWxlbWVudCA9IGRvbUVsZW1lbnQ7XG4gIH1cblxuICBnZXRET01FbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLmRvbUVsZW1lbnQ7XG4gIH1cblxuICBzZXRET01FbGVtZW50KGRvbUVsZW1lbnQpIHtcbiAgICB0aGlzLmRvbUVsZW1lbnQgPSBkb21FbGVtZW50O1xuICB9XG5cbiAgdGFnTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgeyB0YWdOYW1lIH0gPSBlbGVtZW50TWFwW3RoaXMucnVsZU5hbWVdO1xuXG4gICAgcmV0dXJuIHRhZ05hbWU7XG4gIH1cblxuICBjbGFzc05hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IHsgY2xhc3NOYW1lIH0gPSBlbGVtZW50TWFwW3RoaXMucnVsZU5hbWVdO1xuXG4gICAgcmV0dXJuIGNsYXNzTmFtZTtcbiAgfVxuXG4gIGNsb3NpbmdUYWcoY29udGV4dCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCksXG4gICAgICAgICAgY2xvc2luZ1RhZyA9IGA8LyR7dGFnTmFtZX0+YDtcblxuICAgIHJldHVybiBjbG9zaW5nVGFnO1xuICB9XG5cbiAgc3RhcnRpbmdUYWcoY29udGV4dCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCksXG4gICAgICAgICAgY2xhc3NOYW1lID0gdGhpcy5jbGFzc05hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlTmFtZSA9IHRoaXMuYXR0cmlidXRlTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZSA9IHRoaXMuYXR0cmlidXRlVmFsdWUoY29udGV4dCksXG4gICAgICAgICAgY2xhc3NIVE1MID0gKGNsYXNzTmFtZSAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICBgIGNsYXNzPVwiJHtjbGFzc05hbWV9XCJgIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIGF0dHJpYnV0ZUhUTUwgPSAoKGF0dHJpYnV0ZU5hbWUgIT09IG51bGwpICYmIChhdHRyaWJ1dGVWYWx1ZSAhPT0gbnVsbCkpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGAgJHthdHRyaWJ1dGVOYW1lfT1cIiR7YXR0cmlidXRlVmFsdWV9XCJgIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBzdGFydGluZ1RhZyA9IGA8JHt0YWdOYW1lfSR7Y2xhc3NIVE1MfSR7YXR0cmlidXRlSFRNTH0+YDtcblxuICAgIHJldHVybiBzdGFydGluZ1RhZztcbiAgfVxuXG4gIHNlbGZDbG9zaW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzSFRNTCA9IChjbGFzc05hbWUgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgYCBjbGFzcz1cIiR7Y2xhc3NOYW1lfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBhdHRyaWJ1dGVIVE1MID0gKChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSAmJiAoYXR0cmlidXRlVmFsdWUgIT09IG51bGwpKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBgICR7YXR0cmlidXRlTmFtZX09XCIke2F0dHJpYnV0ZVZhbHVlfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgc2VsZkNsb3NpbmdUYWcgPSBgPCR7dGFnTmFtZX0ke2NsYXNzSFRNTH0ke2F0dHJpYnV0ZUhUTUx9Lz5gO1xuXG4gICAgcmV0dXJuIHNlbGZDbG9zaW5nVGFnO1xuICB9XG5cbiAgYWRqdXN0SW5kZW50KGluZGVudCkge1xuICAgIGlmIChpbmRlbnQgIT09IG51bGwpIHtcbiAgICAgIGluZGVudCA9IGAgICR7aW5kZW50fWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGluZGVudDtcbiAgfVxuXG4gIGF0dHJpYnV0ZU5hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZU5hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSB7XG4gICAgY29uc3QgYXR0cmlidXRlVmFsdWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZVZhbHVlO1xuICB9XG5cbiAgaXNEaXZpc2lvbk1hcmtkb3duTm9kZSgpIHtcbiAgICBjb25zdCBkaXZpc2lvbk1hcmtkb3duTm9kZSA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIGRpdmlzaW9uTWFya2Rvd25Ob2RlO1xuICB9XG5cbiAgaXNQbGFpblRleHRNYXJrZG93bk5vZGUoKSB7XG4gICAgY29uc3QgcGxhaW5UZXh0TWFya2Rvd25Ob2RlID0gZmFsc2U7XG5cbiAgICByZXR1cm4gcGxhaW5UZXh0TWFya2Rvd25Ob2RlO1xuICB9XG5cbiAgbGluZXMoY29udGV4dCkge1xuICAgIGxldCBsaW5lcztcblxuICAgICh7IGxpbmVzID0gbnVsbCB9ID0gdGhpcy5jb25zdHJ1Y3Rvcik7XG5cbiAgICBpZiAobGluZXMgPT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKTtcblxuICAgICAgbGluZXMgPSBjaGlsZE5vZGVzLnJlZHVjZSgobGluZXMsIGNoaWxkTm9kZSkgPT4ge1xuICAgICAgICBjb25zdCBjaGlsZE5vZGVNYXJrZG93bk5vZGUgPSAoY2hpbGROb2RlIGluc3RhbmNlb2YgTWFya2Rvd25Ob2RlKTtcblxuICAgICAgICBpZiAoY2hpbGROb2RlTWFya2Rvd25Ob2RlKSB7XG4gICAgICAgICAgY29uc3QgbWFya2Rvd25Ob2RlID0gY2hpbGROb2RlLCAvLy9cbiAgICAgICAgICAgICAgICBtYXJrZG93bk5vZGVMaW5lcyA9IG1hcmtkb3duTm9kZS5saW5lcyhjb250ZXh0KTtcblxuICAgICAgICAgIGxpbmVzICs9IG1hcmtkb3duTm9kZUxpbmVzO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGxpbmVzO1xuICAgICAgfSwgMCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxpbmVzO1xuICB9XG5cbiAgYXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGxldCBodG1sID0gbnVsbDtcblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBpZiAodGFnTmFtZSAhPT0gbnVsbCkge1xuICAgICAgaW5kZW50ID0gdGhpcy5hZGp1c3RJbmRlbnQoaW5kZW50KTtcblxuICAgICAgY29uc3QgY2hpbGROb2Rlc0hUTUwgPSB0aGlzLmNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgaWYgKGNoaWxkTm9kZXNIVE1MICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHN0YXJ0aW5nVGFnID0gdGhpcy5zdGFydGluZ1RhZyhjb250ZXh0KSxcbiAgICAgICAgICAgICAgY2xvc2luZ1RhZyA9IHRoaXMuY2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgICBodG1sID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICBgJHtzdGFydGluZ1RhZ30ke2NoaWxkTm9kZXNIVE1MfSR7Y2xvc2luZ1RhZ31gIDpcbiAgICAgICAgICAgICAgICAgICBgJHtpbmRlbnR9JHtzdGFydGluZ1RhZ31cbiR7Y2hpbGROb2Rlc0hUTUx9JHtpbmRlbnR9JHtjbG9zaW5nVGFnfVxuYDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHNlbGZDbG9zaW5nVGFnID0gdGhpcy5zZWxmQ2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgICBodG1sID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgIHNlbGZDbG9zaW5nVGFnIDogIC8vL1xuYCR7aW5kZW50fSR7c2VsZkNsb3NpbmdUYWd9XG5gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBodG1sO1xuICB9XG5cbiAgYXNQbGFpblRleHQoY29udGV4dCkge1xuICAgIGxldCBwbGFpblRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGlmICh0YWdOYW1lICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVzUGxhaW5UZXh0ID0gdGhpcy5jaGlsZE5vZGVzQXNQbGFpblRleHQoY29udGV4dCk7XG5cbiAgICAgIGlmIChjaGlsZE5vZGVzUGxhaW5UZXh0ICE9PSBudWxsKSB7XG4gICAgICAgIHBsYWluVGV4dCA9IChwbGFpblRleHQgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGVzUGxhaW5UZXh0IDpcbiAgICAgICAgICAgICAgICAgICAgICAgYCR7cGxhaW5UZXh0fVxuJHtjaGlsZE5vZGVzUGxhaW5UZXh0fTtgO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBwbGFpblRleHQ7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBjaGlsZE5vZGVzSFRNTCA9IGNoaWxkTm9kZXMucmVkdWNlKChjaGlsZE5vZGVzSFRNTCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjaGlsZE5vZGVNYXJrZG93bk5vZGUgPSAoY2hpbGROb2RlIGluc3RhbmNlb2YgTWFya2Rvd25Ob2RlKTtcblxuICAgICAgICAgICAgaWYgKGNoaWxkTm9kZU1hcmtkb3duTm9kZSkge1xuICAgICAgICAgICAgICBjb25zdCBtYXJrZG93bk5vZGUgPSBjaGlsZE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgICAgICBtYXJrZG93bk5vZGVIVE1MID0gbWFya2Rvd25Ob2RlLmFzSFRNTChpbmRlbnQsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICAgIGlmIChtYXJrZG93bk5vZGVIVE1MICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgY2hpbGROb2Rlc0hUTUwgPSAoY2hpbGROb2Rlc0hUTUwgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlSFRNTCA6ICAvLy9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke2NoaWxkTm9kZXNIVE1MfSR7bWFya2Rvd25Ob2RlSFRNTH1gO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBjaGlsZE5vZGVzSFRNTDtcbiAgICAgICAgICB9LCBudWxsKTtcblxuICAgIHJldHVybiBjaGlsZE5vZGVzSFRNTDtcbiAgfVxuXG4gIGNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCkge1xuICAgIGxldCBkb21FbGVtZW50ID0gbnVsbDtcblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBpZiAodGFnTmFtZSAhPT0gbnVsbCkge1xuICAgICAgZG9tRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7XG5cbiAgICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgICAgYXR0cmlidXRlTmFtZSA9IHRoaXMuYXR0cmlidXRlTmFtZShjb250ZXh0KSxcbiAgICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KTtcblxuICAgICAgaWYgKGNsYXNzTmFtZSAhPT0gbnVsbCkge1xuICAgICAgICBPYmplY3QuYXNzaWduKGRvbUVsZW1lbnQsIHtcbiAgICAgICAgICBjbGFzc05hbWVcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGlmICgoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkgJiYgKGF0dHJpYnV0ZVZhbHVlICE9PSBudWxsKSkge1xuICAgICAgICBkb21FbGVtZW50LnNldEF0dHJpYnV0ZShhdHRyaWJ1dGVOYW1lLCBhdHRyaWJ1dGVWYWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2V0RE9NRWxlbWVudChkb21FbGVtZW50KTtcblxuICAgICAgdGhpcy5jcmVhdGVDaGlsZE5vZGVET01FbGVtZW50cyhjb250ZXh0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZG9tRWxlbWVudDtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc1BsYWluVGV4dChjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSBjaGlsZE5vZGVzLnJlZHVjZSgoY2hpbGROb2Rlc1BsYWluVGV4dCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICAgIGNvbnN0IGNoaWxkTm9kZU1hcmtkb3duTm9kZSA9IChjaGlsZE5vZGUgaW5zdGFuY2VvZiBNYXJrZG93bk5vZGUpO1xuXG4gICAgICAgIGlmIChjaGlsZE5vZGVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgICBjb25zdCBtYXJrZG93bk5vZGUgPSBjaGlsZE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIG1hcmtkb3duTm9kZVBsYWluVGV4dCA9IG1hcmtkb3duTm9kZS5hc1BsYWluVGV4dChjb250ZXh0KTtcblxuICAgICAgICAgIGlmIChtYXJrZG93bk5vZGVQbGFpblRleHQgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSAoY2hpbGROb2Rlc1BsYWluVGV4dCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlUGxhaW5UZXh0IDogIC8vL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke2NoaWxkTm9kZXNQbGFpblRleHR9XG4ke21hcmtkb3duTm9kZVBsYWluVGV4dH1gO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjaGlsZE5vZGVzUGxhaW5UZXh0O1xuICAgICAgfSwgbnVsbCk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1BsYWluVGV4dDtcbiAgfVxuXG4gIGNyZWF0ZUNoaWxkTm9kZURPTUVsZW1lbnRzKGNvbnRleHQpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gdGhpcy5nZXRDaGlsZE5vZGVzKCk7XG5cbiAgICBjaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlTWFya2Rvd25Ob2RlID0gKGNoaWxkTm9kZSBpbnN0YW5jZW9mIE1hcmtkb3duTm9kZSk7XG5cbiAgICAgIGlmIChjaGlsZE5vZGVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgY29uc3QgbWFya2Rvd25Ob2RlID0gY2hpbGROb2RlOyAvLy9cblxuICAgICAgICBtYXJrZG93bk5vZGUuY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KTtcblxuICAgICAgICBjb25zdCBkb21FbGVtZW50ID0gbWFya2Rvd25Ob2RlLmdldERPTUVsZW1lbnQoKTtcblxuICAgICAgICBpZiAoZG9tRWxlbWVudCAhPT0gbnVsbCkge1xuICAgICAgICAgIHRoaXMuYWRkRE9NRWxlbWVudChkb21FbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgY2xvbmUoLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7IHJldHVybiBzdXBlci5jbG9uZSh0aGlzLmRvbUVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7IH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCBkb21FbGVtZW50ID0gbnVsbCxcbiAgICAgICAgICBtYXJrZG93bk5vZGUgPSBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG1hcmtkb3duTm9kZTtcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKE1hcmtkb3duTm9kZS5wcm90b3R5cGUsIG5vZGVNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihNYXJrZG93bk5vZGUucHJvdG90eXBlLCBlbGVtZW50TWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgTWFya2Rvd25Ob2RlO1xuIl0sIm5hbWVzIjpbIk1hcmtkb3duTm9kZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsInByZWNlZGVuY2UiLCJvcGFjaXR5IiwiZG9tRWxlbWVudCIsImdldERPTUVsZW1lbnQiLCJzZXRET01FbGVtZW50IiwidGFnTmFtZSIsImNvbnRleHQiLCJlbGVtZW50TWFwIiwiY2xhc3NOYW1lIiwiY2xvc2luZ1RhZyIsInN0YXJ0aW5nVGFnIiwiYXR0cmlidXRlTmFtZSIsImF0dHJpYnV0ZVZhbHVlIiwiY2xhc3NIVE1MIiwiRU1QVFlfU1RSSU5HIiwiYXR0cmlidXRlSFRNTCIsInNlbGZDbG9zaW5nVGFnIiwiYWRqdXN0SW5kZW50IiwiaW5kZW50IiwiaXNEaXZpc2lvbk1hcmtkb3duTm9kZSIsImRpdmlzaW9uTWFya2Rvd25Ob2RlIiwiaXNQbGFpblRleHRNYXJrZG93bk5vZGUiLCJwbGFpblRleHRNYXJrZG93bk5vZGUiLCJsaW5lcyIsImNvbnN0cnVjdG9yIiwiZ2V0Q2hpbGROb2RlcyIsInJlZHVjZSIsImNoaWxkTm9kZSIsImNoaWxkTm9kZU1hcmtkb3duTm9kZSIsIm1hcmtkb3duTm9kZSIsIm1hcmtkb3duTm9kZUxpbmVzIiwiYXNIVE1MIiwiaHRtbCIsImNoaWxkTm9kZXNIVE1MIiwiY2hpbGROb2Rlc0FzSFRNTCIsImFzUGxhaW5UZXh0IiwicGxhaW5UZXh0IiwiY2hpbGROb2Rlc1BsYWluVGV4dCIsImNoaWxkTm9kZXNBc1BsYWluVGV4dCIsIm1hcmtkb3duTm9kZUhUTUwiLCJjcmVhdGVET01FbGVtZW50IiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiT2JqZWN0IiwiYXNzaWduIiwic2V0QXR0cmlidXRlIiwiY3JlYXRlQ2hpbGROb2RlRE9NRWxlbWVudHMiLCJtYXJrZG93bk5vZGVQbGFpblRleHQiLCJmb3JFYWNoIiwiYWRkRE9NRWxlbWVudCIsImNsb25lIiwicmVtYWluaW5nQXJndW1lbnRzIiwiZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkiLCJDbGFzcyIsIk5vblRlcm1pbmFsTm9kZSIsInByb3RvdHlwZSIsIm5vZGVNaXhpbnMiLCJlbGVtZW50TWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFvU0E7OztlQUFBOzs7NEJBbFNnQztpRUFFVDsyREFDQTs4REFDRzt5QkFFRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFN0IsSUFBQSxBQUFNQSw2QkFBRCxBQUFMO2NBQU1BOytCQUFBQTthQUFBQSxhQUNRQyxRQUFRLEVBQUVDLFVBQVUsRUFBRUMsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVU7Z0NBRDdETDs7a0NBRUlDLFVBQVVDLFlBQVlDLFlBQVlDO1FBRXhDLE1BQUtDLFVBQVUsR0FBR0E7OztrQkFKaEJMOztZQU9KTSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNELFVBQVU7WUFDeEI7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsY0FBY0YsVUFBVTtnQkFDdEIsSUFBSSxDQUFDQSxVQUFVLEdBQUdBO1lBQ3BCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFFBQVFDLE9BQU87Z0JBQ2IsSUFBTSxBQUFFRCxVQUFZRSxtQkFBVSxDQUFDLElBQUksQ0FBQ1QsUUFBUSxDQUFDLENBQXJDTztnQkFFUixPQUFPQTtZQUNUOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVVGLE9BQU87Z0JBQ2YsSUFBTSxBQUFFRSxZQUFjRCxtQkFBVSxDQUFDLElBQUksQ0FBQ1QsUUFBUSxDQUFDLENB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
|
|
@@ -5,13 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
Object.defineProperty(exports, "default", {
|
|
6
6
|
enumerable: true,
|
|
7
7
|
get: function() {
|
|
8
|
-
return
|
|
8
|
+
return IndexAnchorReplacement;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var
|
|
12
|
-
var _anchor = /*#__PURE__*/ _interop_require_default(require("
|
|
13
|
-
var
|
|
14
|
-
var _prepends = require("../../prepends");
|
|
11
|
+
var _replacement = /*#__PURE__*/ _interop_require_default(require("../replacement"));
|
|
12
|
+
var _anchor = /*#__PURE__*/ _interop_require_default(require("../node/markdown/anchor"));
|
|
13
|
+
var _prepends = require("../prepends");
|
|
15
14
|
function _assert_this_initialized(self) {
|
|
16
15
|
if (self === void 0) {
|
|
17
16
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
@@ -102,23 +101,31 @@ function _create_super(Derived) {
|
|
|
102
101
|
return _possible_constructor_return(this, result);
|
|
103
102
|
};
|
|
104
103
|
}
|
|
105
|
-
var
|
|
106
|
-
_inherits(
|
|
107
|
-
var _super = _create_super(
|
|
108
|
-
function
|
|
109
|
-
_class_call_check(this,
|
|
104
|
+
var IndexAnchorReplacement = /*#__PURE__*/ function(Replacement) {
|
|
105
|
+
_inherits(IndexAnchorReplacement, Replacement);
|
|
106
|
+
var _super = _create_super(IndexAnchorReplacement);
|
|
107
|
+
function IndexAnchorReplacement() {
|
|
108
|
+
_class_call_check(this, IndexAnchorReplacement);
|
|
110
109
|
return _super.apply(this, arguments);
|
|
111
110
|
}
|
|
112
|
-
_create_class(
|
|
111
|
+
_create_class(IndexAnchorReplacement, [
|
|
112
|
+
{
|
|
113
|
+
key: "getAnchorMarkdownNode",
|
|
114
|
+
value: function getAnchorMarkdownNode() {
|
|
115
|
+
var node = this.getNode(), anchorMarkdownNode = node; ///
|
|
116
|
+
return anchorMarkdownNode;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
], [
|
|
113
120
|
{
|
|
114
121
|
key: "fromPageNumber",
|
|
115
122
|
value: function fromPageNumber(pageNumber, context) {
|
|
116
|
-
var prepend = _prepends.INDEX_PREPEND, identifier = pageNumber, anchorMarkdownNode = _anchor.default.fromPrependAndIdentifier(prepend, identifier),
|
|
117
|
-
return
|
|
123
|
+
var prepend = _prepends.INDEX_PREPEND, identifier = pageNumber, anchorMarkdownNode = _anchor.default.fromPrependAndIdentifier(prepend, identifier), node = anchorMarkdownNode, tokens = [], indexAnchorReplacement = _replacement.default.fromNodeAndTokens(IndexAnchorReplacement, node, tokens);
|
|
124
|
+
return indexAnchorReplacement;
|
|
118
125
|
}
|
|
119
126
|
}
|
|
120
127
|
]);
|
|
121
|
-
return
|
|
122
|
-
}(
|
|
128
|
+
return IndexAnchorReplacement;
|
|
129
|
+
}(_replacement.default);
|
|
123
130
|
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXBsYWNlbWVudC9pbmRleEFuY2hvci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFJlcGxhY2VtZW50IGZyb20gXCIuLi9yZXBsYWNlbWVudFwiO1xuXG5pbXBvcnQgQW5jaG9yTWFya2Rvd25Ob2RlIGZyb20gXCIuLi9ub2RlL21hcmtkb3duL2FuY2hvclwiO1xuXG5pbXBvcnQgeyBJTkRFWF9QUkVQRU5EIH0gZnJvbSBcIi4uL3ByZXBlbmRzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEluZGV4QW5jaG9yUmVwbGFjZW1lbnQgZXh0ZW5kcyBSZXBsYWNlbWVudCB7XG4gIGdldEFuY2hvck1hcmtkb3duTm9kZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgYW5jaG9yTWFya2Rvd25Ob2RlID0gbm9kZTsgIC8vL1xuXG4gICAgcmV0dXJuIGFuY2hvck1hcmtkb3duTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUGFnZU51bWJlcihwYWdlTnVtYmVyLCBjb250ZXh0KSB7XG4gICAgY29uc3QgcHJlcGVuZCA9IElOREVYX1BSRVBFTkQsXG4gICAgICAgICAgaWRlbnRpZmllciA9IHBhZ2VOdW1iZXIsICAvLy9cbiAgICAgICAgICBhbmNob3JNYXJrZG93bk5vZGUgPSBBbmNob3JNYXJrZG93bk5vZGUuZnJvbVByZXBlbmRBbmRJZGVudGlmaWVyKHByZXBlbmQsIGlkZW50aWZpZXIpLFxuICAgICAgICAgIG5vZGUgPSBhbmNob3JNYXJrZG93bk5vZGUsICAvLy9cbiAgICAgICAgICB0b2tlbnMgPSBbXSxcbiAgICAgICAgICBpbmRleEFuY2hvclJlcGxhY2VtZW50ID0gUmVwbGFjZW1lbnQuZnJvbU5vZGVBbmRUb2tlbnMoSW5kZXhBbmNob3JSZXBsYWNlbWVudCwgbm9kZSwgdG9rZW5zKTtcblxuICAgIHJldHVybiBpbmRleEFuY2hvclJlcGxhY2VtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiSW5kZXhBbmNob3JSZXBsYWNlbWVudCIsImdldEFuY2hvck1hcmtkb3duTm9kZSIsIm5vZGUiLCJnZXROb2RlIiwiYW5jaG9yTWFya2Rvd25Ob2RlIiwiZnJvbVBhZ2VOdW1iZXIiLCJwYWdlTnVtYmVyIiwiY29udGV4dCIsInByZXBlbmQiLCJJTkRFWF9QUkVQRU5EIiwiaWRlbnRpZmllciIsIkFuY2hvck1hcmtkb3duTm9kZSIsImZyb21QcmVwZW5kQW5kSWRlbnRpZmllciIsInRva2VucyIsImluZGV4QW5jaG9yUmVwbGFjZW1lbnQiLCJSZXBsYWNlbWVudCIsImZyb21Ob2RlQW5kVG9rZW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVFxQkE7OztrRUFORzs2REFFTzt3QkFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVmLElBQUEsQUFBTUEsdUNBQUQsQUFBTDtjQUFNQTsrQkFBQUE7YUFBQUE7Z0NBQUFBOzs7a0JBQUFBOztZQUNuQkMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLE9BQU8sSUFBSSxDQUFDQyxPQUFPLElBQ25CQyxxQkFBcUJGLE1BQU8sR0FBRztnQkFFckMsT0FBT0U7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxlQUFlQyxVQUFVLEVBQUVDLE9BQU87Z0JBQ3ZDLElBQU1DLFVBQVVDLHVCQUFhLEVBQ3ZCQyxhQUFhSixZQUNiRixxQkFBcUJPLGVBQWtCLENBQUNDLHdCQUF3QixDQUFDSixTQUFTRSxhQUMxRVIsT0FBT0Usb0JBQ1BTLFNBQVMsRUFBRSxFQUNYQyx5QkFBeUJDLG9CQUFXLENBQUNDLGlCQUFpQixDQWQzQ2hCLHdCQWNvRUUsTUFBTVc7Z0JBRTNGLE9BQU9DO1lBQ1Q7OztXQWpCbUJkO0VBQStCZSxvQkFBVyJ9
|
|
@@ -12,6 +12,9 @@ _export(exports, {
|
|
|
12
12
|
default: function() {
|
|
13
13
|
return _default;
|
|
14
14
|
},
|
|
15
|
+
divisionMarkdownNodesFromMarkdownNodes: function() {
|
|
16
|
+
return divisionMarkdownNodesFromMarkdownNodes;
|
|
17
|
+
},
|
|
15
18
|
postprocess: function() {
|
|
16
19
|
return postprocess;
|
|
17
20
|
}
|
|
@@ -20,24 +23,19 @@ function postprocess(divisionMarkdownNode, context) {
|
|
|
20
23
|
var divisionMarkdownNodes;
|
|
21
24
|
divisionMarkdownNodes = resolveIncludes(divisionMarkdownNode, context);
|
|
22
25
|
resolveEmbeddings(divisionMarkdownNodes, context);
|
|
23
|
-
var footnoteReplacementMap = prepareFootnotes(divisionMarkdownNodes, context);
|
|
24
|
-
divisionMarkdownNodes =
|
|
26
|
+
var footnoteReplacementMap = prepareFootnotes(divisionMarkdownNodes, context), markdownNodes = paginate(divisionMarkdownNodes, context);
|
|
27
|
+
divisionMarkdownNodes = divisionMarkdownNodesFromMarkdownNodes(markdownNodes); ///
|
|
25
28
|
createFootnotes(divisionMarkdownNodes, footnoteReplacementMap, context);
|
|
26
29
|
createContents(divisionMarkdownNodes, context);
|
|
27
30
|
createIndex(divisionMarkdownNodes, context);
|
|
28
|
-
return
|
|
31
|
+
return markdownNodes;
|
|
29
32
|
}
|
|
30
33
|
function paginate(divisionMarkdownNodes, context) {
|
|
31
|
-
var
|
|
34
|
+
var markdownNOdes = [];
|
|
32
35
|
divisionMarkdownNodes.forEach(function(divisionMarkdownNode) {
|
|
33
|
-
divisionMarkdownNode.paginate(
|
|
36
|
+
divisionMarkdownNode.paginate(markdownNOdes, context);
|
|
34
37
|
});
|
|
35
|
-
|
|
36
|
-
var pageNumber = index + 1;
|
|
37
|
-
paginatedDivisionMarkdownNode.setPageNumber(pageNumber);
|
|
38
|
-
});
|
|
39
|
-
divisionMarkdownNodes = paginatedDivisionMarkdownNodes; ///
|
|
40
|
-
return divisionMarkdownNodes;
|
|
38
|
+
return markdownNOdes;
|
|
41
39
|
}
|
|
42
40
|
function createIndex(divisionMarkdownNodes, context) {
|
|
43
41
|
divisionMarkdownNodes.some(function(divisionMarkdownNode) {
|
|
@@ -85,8 +83,20 @@ function resolveEmbeddings(divisionMarkdownNodes, context) {
|
|
|
85
83
|
divisionMarkdownNode.resolveEmbeddings(context);
|
|
86
84
|
});
|
|
87
85
|
}
|
|
86
|
+
function divisionMarkdownNodesFromMarkdownNodes(markdownNodes) {
|
|
87
|
+
var divisionMarkdownNodes = markdownNodes.reduce(function(divisionMarkdownNodes, markdownNode) {
|
|
88
|
+
var markdownNodeDivisionMarkdownNode = markdownNode.isDivisionMarkdownNode();
|
|
89
|
+
if (markdownNodeDivisionMarkdownNode) {
|
|
90
|
+
var divisionMarkdownNode = markdownNode; ///
|
|
91
|
+
divisionMarkdownNodes.push(divisionMarkdownNode);
|
|
92
|
+
}
|
|
93
|
+
return divisionMarkdownNodes;
|
|
94
|
+
}, []);
|
|
95
|
+
return divisionMarkdownNodes;
|
|
96
|
+
}
|
|
88
97
|
var _default = {
|
|
89
|
-
postprocess: postprocess
|
|
98
|
+
postprocess: postprocess,
|
|
99
|
+
divisionMarkdownNodesFromMarkdownNodes: divisionMarkdownNodesFromMarkdownNodes
|
|
90
100
|
};
|
|
91
101
|
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcHJvY2Vzc2luZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHBvc3Rwcm9jZXNzKGRpdmlzaW9uTWFya2Rvd25Ob2RlLCBjb250ZXh0KSB7XG4gIGxldCBkaXZpc2lvbk1hcmtkb3duTm9kZXM7XG5cbiAgZGl2aXNpb25NYXJrZG93bk5vZGVzID0gcmVzb2x2ZUluY2x1ZGVzKGRpdmlzaW9uTWFya2Rvd25Ob2RlLCBjb250ZXh0KTtcblxuICByZXNvbHZlRW1iZWRkaW5ncyhkaXZpc2lvbk1hcmtkb3duTm9kZXMsIGNvbnRleHQpO1xuXG4gIGNvbnN0IGZvb3Rub3RlUmVwbGFjZW1lbnRNYXAgPSBwcmVwYXJlRm9vdG5vdGVzKGRpdmlzaW9uTWFya2Rvd25Ob2RlcywgY29udGV4dCksXG4gICAgICAgIG1hcmtkb3duTm9kZXMgPSBwYWdpbmF0ZShkaXZpc2lvbk1hcmtkb3duTm9kZXMsIGNvbnRleHQpO1xuXG4gIGRpdmlzaW9uTWFya2Rvd25Ob2RlcyA9IGRpdmlzaW9uTWFya2Rvd25Ob2Rlc0Zyb21NYXJrZG93bk5vZGVzKG1hcmtkb3duTm9kZXMpOyAgLy8vXG5cbiAgY3JlYXRlRm9vdG5vdGVzKGRpdmlzaW9uTWFya2Rvd25Ob2RlcywgZm9vdG5vdGVSZXBsYWNlbWVudE1hcCwgY29udGV4dCk7XG5cbiAgY3JlYXRlQ29udGVudHMoZGl2aXNpb25NYXJrZG93bk5vZGVzLCBjb250ZXh0KTtcblxuICBjcmVhdGVJbmRleChkaXZpc2lvbk1hcmtkb3duTm9kZXMsIGNvbnRleHQpO1xuXG4gIHJldHVybiBtYXJrZG93bk5vZGVzO1xufVxuXG5mdW5jdGlvbiBwYWdpbmF0ZShkaXZpc2lvbk1hcmtkb3duTm9kZXMsIGNvbnRleHQpIHtcbiAgY29uc3QgbWFya2Rvd25OT2RlcyA9IFtdO1xuXG4gIGRpdmlzaW9uTWFya2Rvd25Ob2Rlcy5mb3JFYWNoKChkaXZpc2lvbk1hcmtkb3duTm9kZSkgPT4ge1xuICAgIGRpdmlzaW9uTWFya2Rvd25Ob2RlLnBhZ2luYXRlKG1hcmtkb3duTk9kZXMsIGNvbnRleHQpO1xuICB9KTtcblxuICByZXR1cm4gbWFya2Rvd25OT2Rlcztcbn1cblxuZnVuY3Rpb24gY3JlYXRlSW5kZXgoZGl2aXNpb25NYXJrZG93bk5vZGVzLCBjb250ZXh0KSB7XG4gIGRpdmlzaW9uTWFya2Rvd25Ob2Rlcy5zb21lKChkaXZpc2lvbk1hcmtkb3duTm9kZSkgPT4ge1xuICAgIGNvbnN0IGluZGV4Q3JlYXRlZCA9IGRpdmlzaW9uTWFya2Rvd25Ob2RlLmNyZWF0ZUluZGV4KGRpdmlzaW9uTWFya2Rvd25Ob2RlcywgY29udGV4dCk7XG5cbiAgICBpZiAoaW5kZXhDcmVhdGVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVDb250ZW50cyhkaXZpc2lvbk1hcmtkb3duTm9kZXMsIGNvbnRleHQpIHtcbiAgZGl2aXNpb25NYXJrZG93bk5vZGVzLnNvbWUoKGRpdmlzaW9uTWFya2Rvd25Ob2RlKSA9PiB7XG4gICAgY29uc3QgY29udGVudHNDcmVhdGVkID0gZGl2aXNpb25NYXJrZG93bk5vZGUuY3JlYXRlQ29udGVudHMoZGl2aXNpb25NYXJrZG93bk5vZGVzLCBjb250ZXh0KTtcblxuICAgIGlmIChjb250ZW50c0NyZWF0ZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUZvb3Rub3RlcyhkaXZpc2lvbk1hcmtkb3duTm9kZXMsIGZvb3Rub3RlUmVwbGFjZW1lbnRNYXAsIGNvbnRleHQpIHtcbiAgZGl2aXNpb25NYXJrZG93bk5vZGVzLmZvckVhY2goKGRpdmlzaW9uTWFya2Rvd25Ob2RlKSA9PiB7XG4gICAgZGl2aXNpb25NYXJrZG93bk5vZGUuY3JlYXRlRm9vdG5vdGVzKGZvb3Rub3RlUmVwbGFjZW1lbnRNYXAsIGNvbnRleHQpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gcmVzb2x2ZUluY2x1ZGVzKGRpdmlzaW9uTWFya2Rvd25Ob2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IGRpdmlzaW9uTWFya2Rvd25Ob2RlcyA9IFtdO1xuXG4gIE9iamVjdC5hc3NpZ24oY29udGV4dCwge1xuICAgIGRpdmlzaW9uTWFya2Rvd25Ob2Rlc1xuICB9KTtcblxuICBjb25zdCBkaXZpc2lvbk1hcmtkb3duTm9kZUlnbm9yZWQgPSBkaXZpc2lvbk1hcmtkb3duTm9kZS5pc0lnbm9yZWQoKTtcblxuICBpZiAoIWRpdmlzaW9uTWFya2Rvd25Ob2RlSWdub3JlZCkge1xuICAgIGRpdmlzaW9uTWFya2Rvd25Ob2Rlcy5wdXNoKGRpdmlzaW9uTWFya2Rvd25Ob2RlKTtcbiAgfVxuXG4gIGRpdmlzaW9uTWFya2Rvd25Ob2RlLnJlc29sdmVJbmNsdWRlcyhjb250ZXh0KTtcblxuICBkZWxldGUgY29udGV4dC5kaXZpc2lvbk1hcmtkb3duTm9kZXM7XG5cbiAgcmV0dXJuIGRpdmlzaW9uTWFya2Rvd25Ob2Rlcztcbn1cblxuZnVuY3Rpb24gcHJlcGFyZUZvb3Rub3RlcyhkaXZpc2lvbk1hcmtkb3duTm9kZXMsIGNvbnRleHQpIHtcbiAgY29uc3QgZm9vdG5vdGVSZXBsYWNlbWVudE1hcCA9IHt9O1xuXG4gIGRpdmlzaW9uTWFya2Rvd25Ob2Rlcy5mb3JFYWNoKChkaXZpc2lvbk1hcmtkb3duTm9kZSkgPT4ge1xuICAgIGRpdmlzaW9uTWFya2Rvd25Ob2RlLnByZXBhcmVGb290bm90ZXMoZm9vdG5vdGVSZXBsYWNlbWVudE1hcCwgY29udGV4dCk7XG4gIH0pO1xuXG4gIHJldHVybiBmb290bm90ZVJlcGxhY2VtZW50TWFwO1xufVxuXG5mdW5jdGlvbiByZXNvbHZlRW1iZWRkaW5ncyhkaXZpc2lvbk1hcmtkb3duTm9kZXMsIGNvbnRleHQpIHtcbiAgZGl2aXNpb25NYXJrZG93bk5vZGVzLmZvckVhY2goKGRpdmlzaW9uTWFya2Rvd25Ob2RlKSA9PiB7XG4gICAgZGl2aXNpb25NYXJrZG93bk5vZGUucmVzb2x2ZUVtYmVkZGluZ3MoY29udGV4dCk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGl2aXNpb25NYXJrZG93bk5vZGVzRnJvbU1hcmtkb3duTm9kZXMobWFya2Rvd25Ob2Rlcykge1xuICBjb25zdCBkaXZpc2lvbk1hcmtkb3duTm9kZXMgPSBtYXJrZG93bk5vZGVzLnJlZHVjZSgoZGl2aXNpb25NYXJrZG93bk5vZGVzLCBtYXJrZG93bk5vZGUpID0+IHtcbiAgICBjb25zdCBtYXJrZG93bk5vZGVEaXZpc2lvbk1hcmtkb3duTm9kZSA9IG1hcmtkb3duTm9kZS5pc0RpdmlzaW9uTWFya2Rvd25Ob2RlKCk7XG5cbiAgICBpZiAobWFya2Rvd25Ob2RlRGl2aXNpb25NYXJrZG93bk5vZGUpIHtcbiAgICAgIGNvbnN0IGRpdmlzaW9uTWFya2Rvd25Ob2RlID0gbWFya2Rvd25Ob2RlOyAgLy8vXG5cbiAgICAgIGRpdmlzaW9uTWFya2Rvd25Ob2Rlcy5wdXNoKGRpdmlzaW9uTWFya2Rvd25Ob2RlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGl2aXNpb25NYXJrZG93bk5vZGVzO1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIGRpdmlzaW9uTWFya2Rvd25Ob2Rlcztcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBwb3N0cHJvY2VzcyxcbiAgZGl2aXNpb25NYXJrZG93bk5vZGVzRnJvbU1hcmtkb3duTm9kZXNcbn0iXSwibmFtZXMiOlsiZGl2aXNpb25NYXJrZG93bk5vZGVzRnJvbU1hcmtkb3duTm9kZXMiLCJwb3N0cHJvY2VzcyIsImRpdmlzaW9uTWFya2Rvd25Ob2RlIiwiY29udGV4dCIsImRpdmlzaW9uTWFya2Rvd25Ob2RlcyIsInJlc29sdmVJbmNsdWRlcyIsInJlc29sdmVFbWJlZGRpbmdzIiwiZm9vdG5vdGVSZXBsYWNlbWVudE1hcCIsInByZXBhcmVGb290bm90ZXMiLCJtYXJrZG93bk5vZGVzIiwicGFnaW5hdGUiLCJjcmVhdGVGb290bm90ZXMiLCJjcmVhdGVDb250ZW50cyIsImNyZWF0ZUluZGV4IiwibWFya2Rvd25OT2RlcyIsImZvckVhY2giLCJzb21lIiwiaW5kZXhDcmVhdGVkIiwiY29udGVudHNDcmVhdGVkIiwiT2JqZWN0IiwiYXNzaWduIiwiZGl2aXNpb25NYXJrZG93bk5vZGVJZ25vcmVkIiwiaXNJZ25vcmVkIiwicHVzaCIsInJlZHVjZSIsIm1hcmtkb3duTm9kZSIsIm1hcmtkb3duTm9kZURpdmlzaW9uTWFya2Rvd25Ob2RlIiwiaXNEaXZpc2lvbk1hcmtkb3duTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBK0dBLE9BR0M7ZUFIRDs7SUFoQmdCQSxzQ0FBc0M7ZUFBdENBOztJQTdGQUMsV0FBVztlQUFYQTs7O0FBQVQsU0FBU0EsWUFBWUMsb0JBQW9CLEVBQUVDLE9BQU87SUFDdkQsSUFBSUM7SUFFSkEsd0JBQXdCQyxnQkFBZ0JILHNCQUFzQkM7SUFFOURHLGtCQUFrQkYsdUJBQXVCRDtJQUV6QyxJQUFNSSx5QkFBeUJDLGlCQUFpQkosdUJBQXVCRCxVQUNqRU0sZ0JBQWdCQyxTQUFTTix1QkFBdUJEO0lBRXREQyx3QkFBd0JKLHVDQUF1Q1MsZ0JBQWlCLEdBQUc7SUFFbkZFLGdCQUFnQlAsdUJBQXVCRyx3QkFBd0JKO0lBRS9EUyxlQUFlUix1QkFBdUJEO0lBRXRDVSxZQUFZVCx1QkFBdUJEO0lBRW5DLE9BQU9NO0FBQ1Q7QUFFQSxTQUFTQyxTQUFTTixxQkFBcUIsRUFBRUQsT0FBTztJQUM5QyxJQUFNVyxnQkFBZ0IsRUFBRTtJQUV4QlYsc0JBQXNCVyxPQUFPLENBQUMsU0FBQ2I7UUFDN0JBLHFCQUFxQlEsUUFBUSxDQUFDSSxlQUFlWDtJQUMvQztJQUVBLE9BQU9XO0FBQ1Q7QUFFQSxTQUFTRCxZQUFZVCxxQkFBcUIsRUFBRUQsT0FBTztJQUNqREMsc0JBQXNCWSxJQUFJLENBQUMsU0FBQ2Q7UUFDMUIsSUFBTWUsZUFBZWYscUJBQXFCVyxXQUFXLENBQUNULHVCQUF1QkQ7UUFFN0UsSUFBSWMsY0FBYztZQUNoQixPQUFPO1FBQ1Q7SUFDRjtBQUNGO0FBRUEsU0FBU0wsZUFBZVIscUJBQXFCLEVBQUVELE9BQU87SUFDcERDLHNCQUFzQlksSUFBSSxDQUFDLFNBQUNkO1FBQzFCLElBQU1nQixrQkFBa0JoQixxQkFBcUJVLGNBQWMsQ0FBQ1IsdUJBQXVCRDtRQUVuRixJQUFJZSxpQkFBaUI7WUFDbkIsT0FBTztRQUNUO0lBQ0Y7QUFDRjtBQUVBLFNBQVNQLGdCQUFnQlAscUJBQXFCLEVBQUVHLHNCQUFzQixFQUFFSixPQUFPO0lBQzdFQyxzQkFBc0JXLE9BQU8sQ0FBQyxTQUFDYjtRQUM3QkEscUJBQXFCUyxlQUFlLENBQUNKLHdCQUF3Qko7SUFDL0Q7QUFDRjtBQUVBLFNBQVNFLGdCQUFnQkgsb0JBQW9CLEVBQUVDLE9BQU87SUFDcEQsSUFBTUMsd0JBQXdCLEVBQUU7SUFFaENlLE9BQU9DLE1BQU0sQ0FBQ2pCLFNBQVM7UUFDckJDLHVCQUFBQTtJQUNGO0lBRUEsSUFBTWlCLDhCQUE4Qm5CLHFCQUFxQm9CLFNBQVM7SUFFbEUsSUFBSSxDQUFDRCw2QkFBNkI7UUFDaENqQixzQkFBc0JtQixJQUFJLENBQUNyQjtJQUM3QjtJQUVBQSxxQkFBcUJHLGVBQWUsQ0FBQ0Y7SUFFckMsT0FBT0EsUUFBUUMscUJBQXFCO0lBRXBDLE9BQU9BO0FBQ1Q7QUFFQSxTQUFTSSxpQkFBaUJKLHFCQUFxQixFQUFFRCxPQUFPO0lBQ3RELElBQU1JLHlCQUF5QixDQUFDO0lBRWhDSCxzQkFBc0JXLE9BQU8sQ0FBQyxTQUFDYjtRQUM3QkEscUJBQXFCTSxnQkFBZ0IsQ0FBQ0Qsd0JBQXdCSjtJQUNoRTtJQUVBLE9BQU9JO0FBQ1Q7QUFFQSxTQUFTRCxrQkFBa0JGLHFCQUFxQixFQUFFRCxPQUFPO0lBQ3ZEQyxzQkFBc0JXLE9BQU8sQ0FBQyxTQUFDYjtRQUM3QkEscUJBQXFCSSxpQkFBaUIsQ0FBQ0g7SUFDekM7QUFDRjtBQUVPLFNBQVNILHVDQUF1Q1MsYUFBYTtJQUNsRSxJQUFNTCx3QkFBd0JLLGNBQWNlLE1BQU0sQ0FBQyxTQUFDcEIsdUJBQXVCcUI7UUFDekUsSUFBTUMsbUNBQW1DRCxhQUFhRSxzQkFBc0I7UUFFNUUsSUFBSUQsa0NBQWtDO1lBQ3BDLElBQU14Qix1QkFBdUJ1QixjQUFlLEdBQUc7WUFFL0NyQixzQkFBc0JtQixJQUFJLENBQUNyQjtRQUM3QjtRQUVBLE9BQU9FO0lBQ1QsR0FBRyxFQUFFO0lBRUwsT0FBT0E7QUFDVDtJQUVBLFdBQWU7SUFDYkgsYUFBQUE7SUFDQUQsd0NBQUFBO0FBQ0YifQ==
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "highmark-markdown",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.444",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/highmark-markdown",
|
|
7
7
|
"description": "Highmark's Markdown and Markdown Style languages.",
|
|
@@ -111,6 +111,7 @@ inlineListing {
|
|
|
111
111
|
}
|
|
112
112
|
|
|
113
113
|
footnoteLink {
|
|
114
|
+
cursor: pointer;
|
|
114
115
|
font-size: 9pt;
|
|
115
116
|
line-height: 13pt;
|
|
116
117
|
margin-left: 3pt;
|
|
@@ -157,6 +158,7 @@ contentsItem {
|
|
|
157
158
|
}
|
|
158
159
|
|
|
159
160
|
contentsLink {
|
|
161
|
+
cursor: pointer;
|
|
160
162
|
font-size: 16pt;
|
|
161
163
|
text-decoration: none;
|
|
162
164
|
}
|
|
@@ -204,6 +206,7 @@ indexItem {
|
|
|
204
206
|
}
|
|
205
207
|
|
|
206
208
|
indexLink {
|
|
209
|
+
cursor: pointer;
|
|
207
210
|
margin-left: 3pt;
|
|
208
211
|
}
|
|
209
212
|
|
package/src/example/importer.js
CHANGED
package/src/example/view.js
CHANGED
|
@@ -18,9 +18,9 @@ import RightSizeableDiv from "./view/div/sizeable/right";
|
|
|
18
18
|
import MarkdownContainerDiv from "./view/div/container/markdown";
|
|
19
19
|
import MarkdownStyleContainerDiv from "./view/div/container/markdownStyle";
|
|
20
20
|
|
|
21
|
-
import { postprocess } from "../utilities/processing";
|
|
22
21
|
import { defaultContent } from "./importer";
|
|
23
22
|
import { LINES_PER_PAGE, CONTENTS_DEPTH, CHARACTERS_PER_LINE } from "./constants";
|
|
23
|
+
import { postprocess, divisionMarkdownNodesFromMarkdownNodes } from "../utilities/processing";
|
|
24
24
|
|
|
25
25
|
const markdownLexer = MarkdownLexer.fromNothing(),
|
|
26
26
|
markdownParser = MarkdownParser.fromNothing(),
|
|
@@ -97,7 +97,8 @@ class View extends Element {
|
|
|
97
97
|
tokensFromContent,
|
|
98
98
|
charactersPerLine
|
|
99
99
|
},
|
|
100
|
-
|
|
100
|
+
markdownNodes = postprocess(divisionMarkdownNode, context),
|
|
101
|
+
divisionMarkdownNodes = divisionMarkdownNodesFromMarkdownNodes(markdownNodes);
|
|
101
102
|
|
|
102
103
|
this.setDivisionMarkdownNodes(divisionMarkdownNodes);
|
|
103
104
|
|
|
@@ -5,19 +5,19 @@ import { arrayUtilities } from "necessary";
|
|
|
5
5
|
import MarkdownNode from "../../node/markdown";
|
|
6
6
|
import IndexReplacement from "../../replacement/index";
|
|
7
7
|
import FootnoteReplacement from "../../replacement/footnote";
|
|
8
|
+
import IndexAnchorReplacement from "../../replacement/indexAnchor";
|
|
8
9
|
import ContentsListReplacement from "../../replacement/contentsList";
|
|
9
10
|
import FootnotesListReplacement from "../../replacement/footnotesList";
|
|
10
11
|
import FootnoteSubDivisionReplacement from "../../replacement/subDivision/footnote";
|
|
11
|
-
import IndexAnchorSubDivisionReplacement from "../../replacement/subDivision/indexAnchor";
|
|
12
12
|
import IndexDirectiveSubDivisionReplacement from "../../replacement/subDivision/indexDirective";
|
|
13
13
|
import ContentsDirectiveSubDivisionReplacement from "../../replacement/subDivision/contentsDirective";
|
|
14
14
|
import FootnotesDirectiveSubDivisionReplacement from "../../replacement/subDivision/footnotesDirective";
|
|
15
15
|
import PageNumberDirectiveSubDivisionReplacement from "../../replacement/subDivision/pageNumberDirective";
|
|
16
16
|
|
|
17
17
|
import { EMPTY_STRING } from "../../constants";
|
|
18
|
-
import { DIVISION_RULE_NAME } from "../../ruleNames";
|
|
19
18
|
import { renumberFootnoteLinkMarkdownNodes } from "../../utilities/footnotes";
|
|
20
19
|
import { subDivisionMarkdownNodesFromNode, ignoreDirectiveMarkdownNodeFromNode, pageNumberDirectiveMarkdownNodeFromNode } from "../../utilities/query";
|
|
20
|
+
import {DIVISION_RULE_NAME} from "../../ruleNames";
|
|
21
21
|
|
|
22
22
|
const { clear, filter } = arrayUtilities;
|
|
23
23
|
|
|
@@ -50,52 +50,10 @@ export default class DivisionMarkdownNode extends MarkdownNode {
|
|
|
50
50
|
return ignored;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
|
|
54
|
-
const
|
|
55
|
-
pageNumberDirectiveSubDivisionReplacement = this.removeSubDivisionMarkdownNode(PageNumberDirectiveSubDivisionReplacement, context),
|
|
56
|
-
subDivisionReplacements = [
|
|
57
|
-
footnotesDirectiveSubDivisionReplacement,
|
|
58
|
-
pageNumberDirectiveSubDivisionReplacement
|
|
59
|
-
];
|
|
60
|
-
|
|
61
|
-
filter(subDivisionReplacements, (subDivisionReplacement) => {
|
|
62
|
-
if (subDivisionReplacement !== null) {
|
|
63
|
-
return true;
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
const { linesPerPage } = context,
|
|
68
|
-
paginatedChildNodes = [],
|
|
69
|
-
childNodes = this.getChildNodes();
|
|
70
|
-
|
|
71
|
-
let totalLines = 0;
|
|
72
|
-
|
|
73
|
-
childNodes.forEach((childNode) => {
|
|
74
|
-
const lines = childNode.lines(context),
|
|
75
|
-
paginatedChildNode = childNode; ///
|
|
76
|
-
|
|
77
|
-
totalLines += lines;
|
|
53
|
+
isDivisionMarkdownNode() {
|
|
54
|
+
const divisionMarkdownNode = true;
|
|
78
55
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
if (totalLines > linesPerPage) {
|
|
82
|
-
const divisionMarkdownNode = DivisionMarkdownNode.fromPaginatedChildNodesSubDivisionReplacementsAndDivisionClassName(paginatedChildNodes, subDivisionReplacements, this.divisionClassName, context),
|
|
83
|
-
paginatedDivisionMarkdownNode = divisionMarkdownNode; ///
|
|
84
|
-
|
|
85
|
-
paginatedDivisionMarkdownNodes.push(paginatedDivisionMarkdownNode);
|
|
86
|
-
|
|
87
|
-
clear(paginatedChildNodes);
|
|
88
|
-
|
|
89
|
-
totalLines = 0;
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
|
|
93
|
-
if (totalLines > 0) {
|
|
94
|
-
const divisionMarkdownNode = DivisionMarkdownNode.fromPaginatedChildNodesSubDivisionReplacementsAndDivisionClassName(paginatedChildNodes, subDivisionReplacements, this.divisionClassName, context),
|
|
95
|
-
paginatedDivisionMarkdownNode = divisionMarkdownNode; ///
|
|
96
|
-
|
|
97
|
-
paginatedDivisionMarkdownNodes.push(paginatedDivisionMarkdownNode);
|
|
98
|
-
}
|
|
56
|
+
return divisionMarkdownNode;
|
|
99
57
|
}
|
|
100
58
|
|
|
101
59
|
getPageNumber() {
|
|
@@ -132,6 +90,51 @@ export default class DivisionMarkdownNode extends MarkdownNode {
|
|
|
132
90
|
});
|
|
133
91
|
}
|
|
134
92
|
|
|
93
|
+
paginate(markdownNodes, context) {
|
|
94
|
+
const footnotesDirectiveSubDivisionReplacement = this.removeSubDivisionMarkdownNode(FootnotesDirectiveSubDivisionReplacement, context),
|
|
95
|
+
pageNumberDirectiveSubDivisionReplacement = this.removeSubDivisionMarkdownNode(PageNumberDirectiveSubDivisionReplacement, context),
|
|
96
|
+
subDivisionReplacements = [
|
|
97
|
+
footnotesDirectiveSubDivisionReplacement,
|
|
98
|
+
pageNumberDirectiveSubDivisionReplacement
|
|
99
|
+
];
|
|
100
|
+
|
|
101
|
+
filter(subDivisionReplacements, (subDivisionReplacement) => {
|
|
102
|
+
if (subDivisionReplacement !== null) {
|
|
103
|
+
return true;
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
const { linesPerPage } = context,
|
|
108
|
+
paginatedChildNodes = [],
|
|
109
|
+
childNodes = this.getChildNodes();
|
|
110
|
+
|
|
111
|
+
let totalLines = 0,
|
|
112
|
+
pageNumber = 1;
|
|
113
|
+
|
|
114
|
+
childNodes.forEach((childNode) => {
|
|
115
|
+
const lines = childNode.lines(context),
|
|
116
|
+
paginatedChildNode = childNode; ///
|
|
117
|
+
|
|
118
|
+
paginatedChildNodes.push(paginatedChildNode);
|
|
119
|
+
|
|
120
|
+
totalLines += lines;
|
|
121
|
+
|
|
122
|
+
if (totalLines > linesPerPage) {
|
|
123
|
+
paginateDivisionMarkdownNode(paginatedChildNodes, subDivisionReplacements, this.divisionClassName, markdownNodes, pageNumber, context)
|
|
124
|
+
|
|
125
|
+
clear(paginatedChildNodes);
|
|
126
|
+
|
|
127
|
+
totalLines = 0;
|
|
128
|
+
|
|
129
|
+
pageNumber++;
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
if (totalLines > 0) {
|
|
134
|
+
paginateDivisionMarkdownNode(paginatedChildNodes, subDivisionReplacements, this.divisionClassName, markdownNodes, pageNumber, context);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
|
|
135
138
|
createIndex(divisionMarkdownNodes, context) {
|
|
136
139
|
let indexCreated = false;
|
|
137
140
|
|
|
@@ -164,16 +167,6 @@ export default class DivisionMarkdownNode extends MarkdownNode {
|
|
|
164
167
|
contentsListReplacement.replaceContentsDirectiveSubdivisionReplacement(contentsDirectiveSubDivisionReplacement, divisionMarkdownNode, context);
|
|
165
168
|
|
|
166
169
|
contentsCreated = true;
|
|
167
|
-
|
|
168
|
-
divisionMarkdownNodes.forEach((divisionMarkdownNode) => {
|
|
169
|
-
const pageNumber = divisionMarkdownNode.getPageNumber();
|
|
170
|
-
|
|
171
|
-
if (pageNumber !== null) {
|
|
172
|
-
const indexAnchorSubDivisionReplacement = IndexAnchorSubDivisionReplacement.fromPageNumber(pageNumber, context);
|
|
173
|
-
|
|
174
|
-
indexAnchorSubDivisionReplacement.prependToDivisionMarkdownNode(divisionMarkdownNode, context);
|
|
175
|
-
}
|
|
176
|
-
});
|
|
177
170
|
}
|
|
178
171
|
}
|
|
179
172
|
|
|
@@ -331,13 +324,13 @@ ${childNodesHTML}${indent}${closingTag}
|
|
|
331
324
|
return divisionMarkdownNode;
|
|
332
325
|
}
|
|
333
326
|
|
|
334
|
-
static
|
|
327
|
+
static fromPaginatedChildNodesAndSubDivisionReplacements(paginatedChildNodes, subDivisionReplacements, context) {
|
|
335
328
|
const ruleName = DIVISION_RULE_NAME,
|
|
336
329
|
childNodes = [
|
|
337
330
|
...paginatedChildNodes
|
|
338
331
|
],
|
|
339
332
|
opacity = null,
|
|
340
|
-
divisionMarkdownNode =
|
|
333
|
+
divisionMarkdownNode = DivisionMarkdownNode.fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity);
|
|
341
334
|
|
|
342
335
|
subDivisionReplacements.forEach((subDivisionReplacement) => {
|
|
343
336
|
subDivisionReplacement = subDivisionReplacement.clone(); ///
|
|
@@ -348,3 +341,24 @@ ${childNodesHTML}${indent}${closingTag}
|
|
|
348
341
|
return divisionMarkdownNode;
|
|
349
342
|
}
|
|
350
343
|
}
|
|
344
|
+
|
|
345
|
+
function paginateDivisionMarkdownNode(paginatedChildNodes, subDivisionReplacements, divisionClassName, markdownNodes, pageNumber, context) {
|
|
346
|
+
let markdownNode;
|
|
347
|
+
|
|
348
|
+
const indexAnchorReplacement = IndexAnchorReplacement.fromPageNumber(pageNumber, context),
|
|
349
|
+
anchorMarkdownNode = indexAnchorReplacement.getAnchorMarkdownNode();
|
|
350
|
+
|
|
351
|
+
markdownNode = anchorMarkdownNode; ///
|
|
352
|
+
|
|
353
|
+
markdownNodes.push(markdownNode);
|
|
354
|
+
|
|
355
|
+
const divisionMarkdownNode = DivisionMarkdownNode.fromPaginatedChildNodesAndSubDivisionReplacements(paginatedChildNodes, subDivisionReplacements, context);
|
|
356
|
+
|
|
357
|
+
divisionMarkdownNode.setDivisionClassName(divisionClassName);
|
|
358
|
+
|
|
359
|
+
divisionMarkdownNode.setPageNumber(pageNumber);
|
|
360
|
+
|
|
361
|
+
markdownNode = divisionMarkdownNode; ///
|
|
362
|
+
|
|
363
|
+
markdownNodes.push(markdownNode);
|
|
364
|
+
}
|
|
@@ -7,8 +7,6 @@ import VerticalSpaceMarkdownNode from "../../node/markdown/verticalSpace";
|
|
|
7
7
|
import EmbedDirectivesSubDivisionReplacement from "../../replacement/subDivision/embedDirectives";
|
|
8
8
|
import IncludeDirectivesSubDivisionReplacement from "../../replacement/subDivision/includeDirectives";
|
|
9
9
|
|
|
10
|
-
import { SUB_DIVISION_RULE_NAME } from "../../ruleNames";
|
|
11
|
-
|
|
12
10
|
const { second } = arrayUtilities;
|
|
13
11
|
|
|
14
12
|
export default class SubDivisionMarkdownNode extends MarkdownNode {
|
|
@@ -79,18 +77,5 @@ export default class SubDivisionMarkdownNode extends MarkdownNode {
|
|
|
79
77
|
return secondMarkdownNode;
|
|
80
78
|
}
|
|
81
79
|
|
|
82
|
-
static fromAnchorMarkdownNode(anchorMarkdownNode) {
|
|
83
|
-
const ruleName = SUB_DIVISION_RULE_NAME,
|
|
84
|
-
verticalSpaceMarkdownNode = VerticalSpaceMarkdownNode.fromNothing(),
|
|
85
|
-
childNodes = [
|
|
86
|
-
verticalSpaceMarkdownNode,
|
|
87
|
-
anchorMarkdownNode
|
|
88
|
-
],
|
|
89
|
-
opacity = null,
|
|
90
|
-
subDivisionMarkdownNode = MarkdownNode.fromRuleNameChildNodesAndOpacity(SubDivisionMarkdownNode, ruleName, childNodes, opacity);
|
|
91
|
-
|
|
92
|
-
return subDivisionMarkdownNode;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
80
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(SubDivisionMarkdownNode, ruleName, childNodes, opacity); }
|
|
96
81
|
}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { EpsilonNode } from "occam-parsers";
|
|
4
|
-
|
|
5
3
|
import MarkdownNode from "../../node/markdown";
|
|
6
4
|
|
|
7
5
|
import { CARRIAGE_RETURN } from "../../constants";
|
|
8
|
-
import { VERTICAL_SPACE_RULE_NAME } from "../../ruleNames";
|
|
9
6
|
|
|
10
7
|
export default class VerticalSpaceMarkdownNode extends MarkdownNode {
|
|
11
8
|
asHTML(indent, context) {
|
|
@@ -24,17 +21,5 @@ export default class VerticalSpaceMarkdownNode extends MarkdownNode {
|
|
|
24
21
|
return domElement;
|
|
25
22
|
}
|
|
26
23
|
|
|
27
|
-
static fromNothing() {
|
|
28
|
-
const epsilonNode = EpsilonNode.fromNothing(),
|
|
29
|
-
ruleName = VERTICAL_SPACE_RULE_NAME,
|
|
30
|
-
childNodes = [
|
|
31
|
-
epsilonNode
|
|
32
|
-
],
|
|
33
|
-
opacity = null,
|
|
34
|
-
verticalSpaceMarkdownNode = MarkdownNode.fromRuleNameChildNodesAndOpacity(VerticalSpaceMarkdownNode, ruleName, childNodes, opacity);
|
|
35
|
-
|
|
36
|
-
return verticalSpaceMarkdownNode;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
24
|
static fromRuleNameChildNodesAndOpacity(ruleName, childNodes, opacity) { return MarkdownNode.fromRuleNameChildNodesAndOpacity(VerticalSpaceMarkdownNode, ruleName, childNodes, opacity); }
|
|
40
25
|
}
|
package/src/node/markdown.js
CHANGED
|
@@ -94,6 +94,12 @@ class MarkdownNode extends NonTerminalNode {
|
|
|
94
94
|
return attributeValue;
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
+
isDivisionMarkdownNode() {
|
|
98
|
+
const divisionMarkdownNode = false;
|
|
99
|
+
|
|
100
|
+
return divisionMarkdownNode;
|
|
101
|
+
}
|
|
102
|
+
|
|
97
103
|
isPlainTextMarkdownNode() {
|
|
98
104
|
const plainTextMarkdownNode = false;
|
|
99
105
|
|