highmark-markdown 1.0.169 → 1.0.170
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 +6921 -3362
- package/lib/classFromOuterNode.js +30 -0
- package/lib/constants.js +5 -1
- package/lib/example/constants.js +5 -1
- package/lib/example/view/button/page.js +2 -2
- package/lib/example/view/div/container/markdown.js +33 -4
- package/lib/example/view/div/container/markdownStyle.js +31 -2
- package/lib/example/view/div/container/preview.js +3 -9
- package/lib/example/view/div/container.js +2 -2
- package/lib/example/view/div/html.js +2 -2
- package/lib/example/view/div/pageButtons.js +2 -2
- package/lib/example/view/div/preview.js +1 -14
- package/lib/example/view/textarea/css.js +2 -2
- package/lib/example/view/textarea/markdown.js +2 -2
- package/lib/example/view/textarea/markdownStyle.js +2 -2
- package/lib/example/view/textarea/parseTree/markdown/inner.js +179 -0
- package/lib/example/view/textarea/parseTree/markdown/outer.js +148 -0
- package/lib/example/view/textarea/parseTree/markdown.js +1 -27
- package/lib/example/view/textarea/parseTree/markdownStyle.js +23 -2
- package/lib/example/view/textarea/parseTree.js +2 -2
- package/lib/example/view/textarea/plainText.js +2 -2
- package/lib/example/view/textarea.js +2 -2
- package/lib/example/view.js +20 -10
- package/lib/node/html/anchor.js +154 -0
- package/lib/node/html/blockLine.js +134 -0
- package/lib/node/html/blockListing.js +127 -0
- package/lib/node/html/blockListingEnd.js +120 -0
- package/lib/node/html/blockListingStart.js +120 -0
- package/lib/node/html/className.js +120 -0
- package/lib/node/html/comma.js +127 -0
- package/lib/node/html/contentsLink.js +136 -0
- package/lib/node/html/directive/pageNumber.js +178 -0
- package/lib/node/html/item/ordered.js +135 -0
- package/lib/node/html/topmost.js +123 -0
- package/lib/node/html.js +281 -0
- package/lib/node/markdown/anchor.js +1 -34
- package/lib/node/markdown/blockLine.js +1 -15
- package/lib/node/markdown/blockListing.js +1 -8
- package/lib/node/markdown/comma.js +1 -8
- package/lib/node/markdown/contentsLink.js +1 -17
- package/lib/node/markdown/directive/pageNumber.js +1 -16
- package/lib/node/markdown/item/ordered.js +1 -16
- package/lib/node/markdown.js +1 -66
- package/lib/queries.js +60 -0
- package/lib/ruleNameToClassMap.js +44 -0
- package/lib/utilities/query.js +12 -1
- package/package.json +4 -4
- package/src/classFromOuterNode.js +20 -0
- package/src/constants.js +1 -0
- package/src/example/constants.js +1 -0
- package/src/example/view/button/page.js +1 -1
- package/src/example/view/div/container/markdown.js +23 -4
- package/src/example/view/div/container/markdownStyle.js +21 -2
- package/src/example/view/div/container/preview.js +1 -9
- package/src/example/view/div/container.js +2 -0
- package/src/example/view/div/html.js +1 -1
- package/src/example/view/div/pageButtons.js +2 -2
- package/src/example/view/div/preview.js +0 -17
- package/src/example/view/textarea/css.js +1 -1
- package/src/example/view/textarea/markdown.js +2 -2
- package/src/example/view/textarea/markdownStyle.js +2 -2
- package/src/example/view/textarea/parseTree/markdown/inner.js +36 -0
- package/src/example/view/textarea/parseTree/markdown/outer.js +27 -0
- package/src/example/view/textarea/parseTree/markdown.js +1 -11
- package/src/example/view/textarea/parseTree/markdownStyle.js +10 -2
- package/src/example/view/textarea/parseTree.js +0 -2
- package/src/example/view/textarea/plainText.js +2 -2
- package/src/example/view/textarea.js +1 -1
- package/src/example/view.js +38 -19
- package/src/node/html/anchor.js +53 -0
- package/src/node/html/blockLine.js +27 -0
- package/src/node/html/blockListing.js +20 -0
- package/src/node/html/blockListingEnd.js +11 -0
- package/src/node/html/blockListingStart.js +11 -0
- package/src/node/html/className.js +11 -0
- package/src/node/html/comma.js +18 -0
- package/src/node/html/contentsLink.js +28 -0
- package/src/node/html/directive/pageNumber.js +55 -0
- package/src/node/html/item/ordered.js +26 -0
- package/src/node/html/topmost.js +20 -0
- package/src/node/html.js +183 -0
- package/src/node/markdown/anchor.js +0 -40
- package/src/node/markdown/blockLine.js +0 -16
- package/src/node/markdown/blockListing.js +0 -9
- package/src/node/markdown/comma.js +0 -7
- package/src/node/markdown/contentsLink.js +0 -15
- package/src/node/markdown/directive/pageNumber.js +0 -19
- package/src/node/markdown/item/ordered.js +0 -15
- package/src/node/markdown.js +0 -100
- package/src/queries.js +94 -0
- package/src/ruleNameToClassMap.js +38 -0
- package/src/utilities/query.js +12 -0
|
@@ -10,7 +10,6 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
});
|
|
11
11
|
var _necessary = require("necessary");
|
|
12
12
|
var _item = /*#__PURE__*/ _interop_require_default(require("../../../node/markdown/item"));
|
|
13
|
-
var _attributeNames = require("../../../attributeNames");
|
|
14
13
|
function _assert_this_initialized(self) {
|
|
15
14
|
if (self === void 0) {
|
|
16
15
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
@@ -106,20 +105,6 @@ var OrderedItemMarkdownNode = /*#__PURE__*/ function(ItemNode) {
|
|
|
106
105
|
});
|
|
107
106
|
return value;
|
|
108
107
|
}
|
|
109
|
-
},
|
|
110
|
-
{
|
|
111
|
-
key: "attributeName",
|
|
112
|
-
value: function attributeName(context) {
|
|
113
|
-
var attributeName = _attributeNames.VALUE_ATTRIBUTE_NAME;
|
|
114
|
-
return attributeName;
|
|
115
|
-
}
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
key: "attributeValue",
|
|
119
|
-
value: function attributeValue(context) {
|
|
120
|
-
var value = this.value(context), attributeValue = value; ///
|
|
121
|
-
return attributeValue;
|
|
122
|
-
}
|
|
123
108
|
}
|
|
124
109
|
], [
|
|
125
110
|
{
|
|
@@ -136,4 +121,4 @@ function valueFromMarkerTerminalNode(markerTerminalNode) {
|
|
|
136
121
|
return value;
|
|
137
122
|
}
|
|
138
123
|
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ub2RlL21hcmtkb3duL2l0ZW0vb3JkZXJlZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYXJyYXlVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCBJdGVtTm9kZSBmcm9tIFwiLi4vLi4vLi4vbm9kZS9tYXJrZG93bi9pdGVtXCI7XG5cbmNvbnN0IHsgc2Vjb25kIH0gPSBhcnJheVV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgT3JkZXJlZEl0ZW1NYXJrZG93bk5vZGUgZXh0ZW5kcyBJdGVtTm9kZSB7XG4gIHZhbHVlKGNvbnRleHQpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZnJvbUZpcnN0Q2hpbGROb2RlKChmaXJzdENoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgbWFya2VyVGVybWluYWxOb2RlID0gZmlyc3RDaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgIHZhbHVlID0gdmFsdWVGcm9tTWFya2VyVGVybWluYWxOb2RlKG1hcmtlclRlcm1pbmFsTm9kZSk7XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9KTtcblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzQW5kT3BhY2l0eShydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSkgeyByZXR1cm4gSXRlbU5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoT3JkZXJlZEl0ZW1NYXJrZG93bk5vZGUsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5KTsgfVxufVxuXG5mdW5jdGlvbiB2YWx1ZUZyb21NYXJrZXJUZXJtaW5hbE5vZGUobWFya2VyVGVybWluYWxOb2RlKSB7XG4gIGNvbnN0IGNvbnRlbnQgPSBtYXJrZXJUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICBtYXRjaGVzID0gY29udGVudC5tYXRjaCgvKFxcZCspXFwuLyksXG4gICAgICAgIHNlY29uZE1hdGNoID0gc2Vjb25kKG1hdGNoZXMpLFxuICAgICAgICB2YWx1ZSA9IHNlY29uZE1hdGNoOyAgLy8vXG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuIl0sIm5hbWVzIjpbIk9yZGVyZWRJdGVtTWFya2Rvd25Ob2RlIiwic2Vjb25kIiwiYXJyYXlVdGlsaXRpZXMiLCJ2YWx1ZSIsImNvbnRleHQiLCJmcm9tRmlyc3RDaGlsZE5vZGUiLCJmaXJzdENoaWxkTm9kZSIsIm1hcmtlclRlcm1pbmFsTm9kZSIsInZhbHVlRnJvbU1hcmtlclRlcm1pbmFsTm9kZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5IiwicnVsZU5hbWUiLCJjaGlsZE5vZGVzIiwib3BhY2l0eSIsIkl0ZW1Ob2RlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJtYXRjaGVzIiwibWF0Y2giLCJzZWNvbmRNYXRjaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFRcUJBOzs7eUJBTlU7MkRBRVY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFckIsSUFBTSxBQUFFQyxTQUFXQyx5QkFBYyxDQUF6QkQ7QUFFTyxJQUFBLEFBQU1ELHdDQUFOO2NBQU1BO2FBQUFBO2dDQUFBQTtlQUFOLGtCQUFNQTs7a0JBQUFBOztZQUNuQkcsS0FBQUE7bUJBQUFBLFNBQUFBLE1BQU1DLE9BQU87Z0JBQ1gsSUFBTUQsUUFBUSxJQUFJLENBQUNFLGtCQUFrQixDQUFDLFNBQUNDO29CQUNyQyxJQUFNQyxxQkFBcUJELGdCQUNyQkgsUUFBUUssNEJBQTRCRDtvQkFFMUMsT0FBT0o7Z0JBQ1Q7Z0JBRUEsT0FBT0E7WUFDVDs7OztZQUVPTSxLQUFBQTttQkFBUCxTQUFPQSxpQ0FBaUNDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxPQUFPO2dCQUFJLE9BQU9DLGFBQVEsQ0FBQ0osZ0NBQWdDLENBWnRHVCx5QkFZZ0lVLFVBQVVDLFlBQVlDO1lBQVU7OztXQVpoS1o7RUFBZ0NhLGFBQVE7QUFlN0QsU0FBU0wsNEJBQTRCRCxrQkFBa0I7SUFDckQsSUFBTU8sVUFBVVAsbUJBQW1CUSxVQUFVLElBQ3ZDQyxVQUFVRixRQUFRRyxLQUFLLENBQUMsWUFDeEJDLGNBQWNqQixPQUFPZSxVQUNyQmIsUUFBUWUsYUFBYyxHQUFHO0lBRS9CLE9BQU9mO0FBQ1QifQ==
|
package/lib/node/markdown.js
CHANGED
|
@@ -189,36 +189,6 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
189
189
|
return className;
|
|
190
190
|
}
|
|
191
191
|
},
|
|
192
|
-
{
|
|
193
|
-
key: "closingTag",
|
|
194
|
-
value: function closingTag(context) {
|
|
195
|
-
var tagName = this.tagName(context), closingTag = "</".concat(tagName, ">");
|
|
196
|
-
return closingTag;
|
|
197
|
-
}
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
key: "startingTag",
|
|
201
|
-
value: function startingTag(context) {
|
|
202
|
-
var tagName = this.tagName(context), className = this.className(context), attributeName = this.attributeName(context), attributeValue = this.attributeValue(context), classHTML = className !== null ? ' class="'.concat(className, '"') : _constants.EMPTY_STRING, attributeHTML = attributeName !== null && attributeValue !== null ? " ".concat(attributeName, '="').concat(attributeValue, '"') : _constants.EMPTY_STRING, startingTag = "<".concat(tagName).concat(classHTML).concat(attributeHTML, ">");
|
|
203
|
-
return startingTag;
|
|
204
|
-
}
|
|
205
|
-
},
|
|
206
|
-
{
|
|
207
|
-
key: "selfClosingTag",
|
|
208
|
-
value: function selfClosingTag(context) {
|
|
209
|
-
var tagName = this.tagName(context), className = this.className(context), attributeName = this.attributeName(context), attributeValue = this.attributeValue(context), classHTML = className !== null ? ' class="'.concat(className, '"') : _constants.EMPTY_STRING, attributeHTML = attributeName !== null && attributeValue !== null ? " ".concat(attributeName, '="').concat(attributeValue, '"') : _constants.EMPTY_STRING, selfClosingTag = "<".concat(tagName).concat(classHTML).concat(attributeHTML, "/>");
|
|
210
|
-
return selfClosingTag;
|
|
211
|
-
}
|
|
212
|
-
},
|
|
213
|
-
{
|
|
214
|
-
key: "adjustIndent",
|
|
215
|
-
value: function adjustIndent(indent) {
|
|
216
|
-
if (indent !== null) {
|
|
217
|
-
indent = " ".concat(indent);
|
|
218
|
-
}
|
|
219
|
-
return indent;
|
|
220
|
-
}
|
|
221
|
-
},
|
|
222
192
|
{
|
|
223
193
|
key: "attributeName",
|
|
224
194
|
value: function attributeName(context) {
|
|
@@ -328,25 +298,6 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
328
298
|
return domElement;
|
|
329
299
|
}
|
|
330
300
|
},
|
|
331
|
-
{
|
|
332
|
-
key: "asHTML",
|
|
333
|
-
value: function asHTML(indent, context) {
|
|
334
|
-
var html = null;
|
|
335
|
-
var tagName = this.tagName(context);
|
|
336
|
-
if (tagName !== null) {
|
|
337
|
-
indent = this.adjustIndent(indent);
|
|
338
|
-
var childNodesHTML = this.childNodesAsHTML(indent, context);
|
|
339
|
-
if (childNodesHTML !== null) {
|
|
340
|
-
var startingTag = this.startingTag(context), closingTag = this.closingTag(context);
|
|
341
|
-
html = indent === null ? "".concat(startingTag).concat(childNodesHTML).concat(closingTag) : "".concat(indent).concat(startingTag, "\n").concat(childNodesHTML).concat(indent).concat(closingTag, "\n");
|
|
342
|
-
} else {
|
|
343
|
-
var selfClosingTag = this.selfClosingTag(context);
|
|
344
|
-
html = indent === null ? selfClosingTag : "".concat(indent).concat(selfClosingTag, "\n");
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
|
-
return html;
|
|
348
|
-
}
|
|
349
|
-
},
|
|
350
301
|
{
|
|
351
302
|
key: "asPlainText",
|
|
352
303
|
value: function asPlainText(context) {
|
|
@@ -359,22 +310,6 @@ var MarkdownNode = /*#__PURE__*/ function(NonTerminalNode) {
|
|
|
359
310
|
return plainText;
|
|
360
311
|
}
|
|
361
312
|
},
|
|
362
|
-
{
|
|
363
|
-
key: "childNodesAsHTML",
|
|
364
|
-
value: function childNodesAsHTML(indent, context) {
|
|
365
|
-
var childNodesHTML = this.reduceChildNode(function(childNodesHTML, childNode) {
|
|
366
|
-
var childNodeMarkdownNode = _instanceof(childNode, MarkdownNode);
|
|
367
|
-
if (childNodeMarkdownNode) {
|
|
368
|
-
var markdownNode = childNode, markdownNodeHTML = markdownNode.asHTML(indent, context);
|
|
369
|
-
if (markdownNodeHTML !== null) {
|
|
370
|
-
childNodesHTML = childNodesHTML === null ? markdownNodeHTML : "".concat(childNodesHTML).concat(markdownNodeHTML);
|
|
371
|
-
}
|
|
372
|
-
}
|
|
373
|
-
return childNodesHTML;
|
|
374
|
-
}, null);
|
|
375
|
-
return childNodesHTML;
|
|
376
|
-
}
|
|
377
|
-
},
|
|
378
313
|
{
|
|
379
314
|
key: "childNodesAsPlainText",
|
|
380
315
|
value: function childNodesAsPlainText(context) {
|
|
@@ -429,4 +364,4 @@ Object.assign(MarkdownNode.prototype, _node.default);
|
|
|
429
364
|
Object.assign(MarkdownNode.prototype, _element.default);
|
|
430
365
|
var _default = MarkdownNode;
|
|
431
366
|
|
|
432
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL21hcmtkb3duLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuXG5pbXBvcnQgZWxlbWVudE1hcCBmcm9tIFwiLi4vZWxlbWVudE1hcFwiO1xuaW1wb3J0IG5vZGVNaXhpbnMgZnJvbSBcIi4uL21peGlucy9ub2RlXCI7XG5pbXBvcnQgZWxlbWVudE1peGlucyBmcm9tIFwiLi4vbWl4aW5zL2VsZW1lbnRcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuXG5jbGFzcyBNYXJrZG93bk5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBjb25zdHJ1Y3RvcihydWxlTmFtZSwgY2hpbGROb2RlcywgcHJlY2VkZW5jZSwgb3BhY2l0eSwgZG9tRWxlbWVudCkge1xuICAgIHN1cGVyKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBwcmVjZWRlbmNlLCBvcGFjaXR5KTtcblxuICAgIHRoaXMuZG9tRWxlbWVudCA9IGRvbUVsZW1lbnQ7XG4gIH1cblxuICBnZXRET01FbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLmRvbUVsZW1lbnQ7XG4gIH1cblxuICBzZXRET01FbGVtZW50KGRvbUVsZW1lbnQpIHtcbiAgICB0aGlzLmRvbUVsZW1lbnQgPSBkb21FbGVtZW50O1xuICB9XG5cbiAgdGFnTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGVsZW1lbnRNYXBbdGhpcy5ydWxlTmFtZV07XG5cbiAgICBjb25zdCB7IHRhZ05hbWUgfSA9IGVsZW1lbnQ7XG5cbiAgICByZXR1cm4gdGFnTmFtZTtcbiAgfVxuXG4gIGNsYXNzTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGVsZW1lbnRNYXBbdGhpcy5ydWxlTmFtZV07XG5cbiAgICBjb25zdCB7IGNsYXNzTmFtZSB9ID0gZWxlbWVudDtcblxuICAgIHJldHVybiBjbGFzc05hbWU7XG4gIH1cblxuICBjbG9zaW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsb3NpbmdUYWcgPSBgPC8ke3RhZ05hbWV9PmA7XG5cbiAgICByZXR1cm4gY2xvc2luZ1RhZztcbiAgfVxuXG4gIHN0YXJ0aW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzSFRNTCA9IChjbGFzc05hbWUgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgYCBjbGFzcz1cIiR7Y2xhc3NOYW1lfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBhdHRyaWJ1dGVIVE1MID0gKChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSAmJiAoYXR0cmlidXRlVmFsdWUgIT09IG51bGwpKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBgICR7YXR0cmlidXRlTmFtZX09XCIke2F0dHJpYnV0ZVZhbHVlfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgc3RhcnRpbmdUYWcgPSBgPCR7dGFnTmFtZX0ke2NsYXNzSFRNTH0ke2F0dHJpYnV0ZUhUTUx9PmA7XG5cbiAgICByZXR1cm4gc3RhcnRpbmdUYWc7XG4gIH1cblxuICBzZWxmQ2xvc2luZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc0hUTUwgPSAoY2xhc3NOYW1lICE9PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgIGAgY2xhc3M9XCIke2NsYXNzTmFtZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgYXR0cmlidXRlSFRNTCA9ICgoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkgJiYgKGF0dHJpYnV0ZVZhbHVlICE9PSBudWxsKSkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgYCAke2F0dHJpYnV0ZU5hbWV9PVwiJHthdHRyaWJ1dGVWYWx1ZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIHNlbGZDbG9zaW5nVGFnID0gYDwke3RhZ05hbWV9JHtjbGFzc0hUTUx9JHthdHRyaWJ1dGVIVE1MfS8+YDtcblxuICAgIHJldHVybiBzZWxmQ2xvc2luZ1RhZztcbiAgfVxuXG4gIGFkanVzdEluZGVudChpbmRlbnQpIHtcbiAgICBpZiAoaW5kZW50ICE9PSBudWxsKSB7XG4gICAgICBpbmRlbnQgPSBgICAke2luZGVudH1gO1xuICAgIH1cblxuICAgIHJldHVybiBpbmRlbnQ7XG4gIH1cblxuICBhdHRyaWJ1dGVOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVOYW1lO1xuICB9XG5cbiAgYXR0cmlidXRlVmFsdWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVWYWx1ZTtcbiAgfVxuXG4gIGlzRGl2aXNpb25NYXJrZG93bk5vZGUoKSB7XG4gICAgY29uc3QgZGl2aXNpb25NYXJrZG93bk5vZGUgPSBmYWxzZTtcblxuICAgIHJldHVybiBkaXZpc2lvbk1hcmtkb3duTm9kZTtcbiAgfVxuXG4gIGlzUGxhaW5UZXh0TWFya2Rvd25Ob2RlKCkge1xuICAgIGNvbnN0IHBsYWluVGV4dE1hcmtkb3duTm9kZSA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIHBsYWluVGV4dE1hcmtkb3duTm9kZTtcbiAgfVxuXG4gIGxpbmVzKGNvbnRleHQpIHtcbiAgICBsZXQgbGluZXM7XG5cbiAgICAoeyBsaW5lcyA9IG51bGwgfSA9IHRoaXMuY29uc3RydWN0b3IpO1xuXG4gICAgaWYgKGxpbmVzID09PSBudWxsKSB7XG4gICAgICBsaW5lcyA9IHRoaXMucmVkdWNlQ2hpbGROb2RlKChsaW5lcywgY2hpbGROb2RlKSA9PiB7XG4gICAgICAgIGNvbnN0IGNoaWxkTm9kZU1hcmtkb3duTm9kZSA9IChjaGlsZE5vZGUgaW5zdGFuY2VvZiBNYXJrZG93bk5vZGUpO1xuXG4gICAgICAgIGlmIChjaGlsZE5vZGVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgICBjb25zdCBtYXJrZG93bk5vZGUgPSBjaGlsZE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIG1hcmtkb3duTm9kZUxpbmVzID0gbWFya2Rvd25Ob2RlLmxpbmVzKGNvbnRleHQpO1xuXG4gICAgICAgICAgbGluZXMgKz0gbWFya2Rvd25Ob2RlTGluZXM7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbGluZXM7XG4gICAgICB9LCAwKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGluZXM7XG4gIH1cblxuICBtb3VudChwYXJlbnRET01FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCwgY29udGV4dCkge1xuICAgIHRoaXMuZG9tRWxlbWVudCA9IHRoaXMuY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KTtcblxuICAgIGlmICh0aGlzLmRvbUVsZW1lbnQgIT09IG51bGwpIHtcbiAgICAgIHBhcmVudERPTUVsZW1lbnQuaW5zZXJ0QmVmb3JlKHRoaXMuZG9tRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQpXG5cbiAgICAgIHBhcmVudERPTUVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQ7IC8vL1xuXG4gICAgICBzaWJsaW5nRE9NRWxlbWVudCA9IG51bGw7XG4gICAgfVxuXG4gICAgdGhpcy5jaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlTWFya2Rvd25Ob2RlID0gKGNoaWxkTm9kZSBpbnN0YW5jZW9mIE1hcmtkb3duTm9kZSk7XG5cbiAgICAgIGlmIChjaGlsZE5vZGVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgY29uc3QgbWFya2Rvd25Ob2RlID0gY2hpbGROb2RlOyAvLy9cblxuICAgICAgICBtYXJrZG93bk5vZGUubW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgdW5tb3VudChwYXJlbnRET01FbGVtZW50LCBjb250ZXh0KSB7XG4gICAgaWYgKHRoaXMuZG9tRWxlbWVudCAhPT0gbnVsbCkge1xuICAgICAgcGFyZW50RE9NRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmRvbUVsZW1lbnQpO1xuXG4gICAgICBwYXJlbnRET01FbGVtZW50ID0gdGhpcy5kb21FbGVtZW50OyAvLy9cblxuICAgICAgdGhpcy5kb21FbGVtZW50ID0gbnVsbDtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuY2hpbGROb2Rlcy5mb3JFYWNoKChjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZU1hcmtkb3duTm9kZSA9IChjaGlsZE5vZGUgaW5zdGFuY2VvZiBNYXJrZG93bk5vZGUpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlTWFya2Rvd25Ob2RlKSB7XG4gICAgICAgIGNoaWxkTm9kZS51bm1vdW50KHBhcmVudERPTUVsZW1lbnQsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaXNNb3VudGVkKCkge1xuICAgIGNvbnN0IG1vdW50ZWQgPSAodGhpcy5kb21FbGVtZW50ICE9PSBudWxsKTtcblxuICAgIHJldHVybiBtb3VudGVkO1xuICB9XG5cbiAgY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KSB7XG4gICAgbGV0IGRvbUVsZW1lbnQgPSBudWxsO1xuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGlmICh0YWdOYW1lICE9PSBudWxsKSB7XG4gICAgICBkb21FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTtcblxuICAgICAgY29uc3QgY2xhc3NOYW1lID0gdGhpcy5jbGFzc05hbWUoY29udGV4dCksXG4gICAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpO1xuXG4gICAgICBpZiAoY2xhc3NOYW1lICE9PSBudWxsKSB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oZG9tRWxlbWVudCwge1xuICAgICAgICAgIGNsYXNzTmFtZVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSAmJiAoYXR0cmlidXRlVmFsdWUgIT09IG51bGwpKSB7XG4gICAgICAgIGRvbUVsZW1lbnQuc2V0QXR0cmlidXRlKGF0dHJpYnV0ZU5hbWUsIGF0dHJpYnV0ZVZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZG9tRWxlbWVudDtcbiAgfVxuXG4gIGFzSFRNTChpbmRlbnQsIGNvbnRleHQpIHtcbiAgICBsZXQgaHRtbCA9IG51bGw7XG5cbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpO1xuXG4gICAgaWYgKHRhZ05hbWUgIT09IG51bGwpIHtcbiAgICAgIGluZGVudCA9IHRoaXMuYWRqdXN0SW5kZW50KGluZGVudCk7XG5cbiAgICAgIGNvbnN0IGNoaWxkTm9kZXNIVE1MID0gdGhpcy5jaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCk7XG5cbiAgICAgIGlmIChjaGlsZE5vZGVzSFRNTCAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBzdGFydGluZ1RhZyA9IHRoaXMuc3RhcnRpbmdUYWcoY29udGV4dCksXG4gICAgICAgICAgICAgIGNsb3NpbmdUYWcgPSB0aGlzLmNsb3NpbmdUYWcoY29udGV4dCk7XG5cbiAgICAgICAgaHRtbCA9IChpbmRlbnQgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgYCR7c3RhcnRpbmdUYWd9JHtjaGlsZE5vZGVzSFRNTH0ke2Nsb3NpbmdUYWd9YCA6XG4gICAgICAgICAgICAgICAgICAgYCR7aW5kZW50fSR7c3RhcnRpbmdUYWd9XG4ke2NoaWxkTm9kZXNIVE1MfSR7aW5kZW50fSR7Y2xvc2luZ1RhZ31cbmA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBzZWxmQ2xvc2luZ1RhZyA9IHRoaXMuc2VsZkNsb3NpbmdUYWcoY29udGV4dCk7XG5cbiAgICAgICAgaHRtbCA9IChpbmRlbnQgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICBzZWxmQ2xvc2luZ1RhZyA6ICAvLy9cbmAke2luZGVudH0ke3NlbGZDbG9zaW5nVGFnfVxuYDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gaHRtbDtcbiAgfVxuXG4gIGFzUGxhaW5UZXh0KGNvbnRleHQpIHtcbiAgICBsZXQgcGxhaW5UZXh0ID0gbnVsbDtcblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBpZiAodGFnTmFtZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgY2hpbGROb2Rlc1BsYWluVGV4dCA9IHRoaXMuY2hpbGROb2Rlc0FzUGxhaW5UZXh0KGNvbnRleHQpO1xuXG4gICAgICBwbGFpblRleHQgPSBjaGlsZE5vZGVzUGxhaW5UZXh0OyAgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIHBsYWluVGV4dDtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2Rlc0hUTUwgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgoY2hpbGROb2Rlc0hUTUwsIGNoaWxkTm9kZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY2hpbGROb2RlTWFya2Rvd25Ob2RlID0gKGNoaWxkTm9kZSBpbnN0YW5jZW9mIE1hcmtkb3duTm9kZSk7XG5cbiAgICAgICAgICAgIGlmIChjaGlsZE5vZGVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgICAgICAgY29uc3QgbWFya2Rvd25Ob2RlID0gY2hpbGROb2RlLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlSFRNTCA9IG1hcmtkb3duTm9kZS5hc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgICAgICAgICBpZiAobWFya2Rvd25Ob2RlSFRNTCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGNoaWxkTm9kZXNIVE1MID0gKGNoaWxkTm9kZXNIVE1MID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmtkb3duTm9kZUhUTUwgOiAgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtjaGlsZE5vZGVzSFRNTH0ke21hcmtkb3duTm9kZUhUTUx9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gICAgICAgICAgfSwgbnVsbCk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNQbGFpblRleHQoY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXNQbGFpblRleHQgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgoY2hpbGROb2Rlc1BsYWluVGV4dCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjaGlsZE5vZGVNYXJrZG93bk5vZGUgPSAoY2hpbGROb2RlIGluc3RhbmNlb2YgTWFya2Rvd25Ob2RlKTtcblxuICAgICAgICAgICAgaWYgKGNoaWxkTm9kZU1hcmtkb3duTm9kZSkge1xuICAgICAgICAgICAgICBjb25zdCBtYXJrZG93bk5vZGUgPSBjaGlsZE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgICAgICBtYXJrZG93bk5vZGVQbGFpblRleHQgPSBtYXJrZG93bk5vZGUuYXNQbGFpblRleHQoY29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKG1hcmtkb3duTm9kZVBsYWluVGV4dCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSAoY2hpbGROb2Rlc1BsYWluVGV4dCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmtkb3duTm9kZVBsYWluVGV4dCA6ICAvLy9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYCR7Y2hpbGROb2Rlc1BsYWluVGV4dH1cbiR7bWFya2Rvd25Ob2RlUGxhaW5UZXh0fWA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGNoaWxkTm9kZXNQbGFpblRleHQ7XG4gICAgICAgICAgfSwgbnVsbCk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1BsYWluVGV4dDtcbiAgfVxuXG4gIGNsb25lKC4uLnJlbWFpbmluZ0FyZ3VtZW50cykgeyByZXR1cm4gc3VwZXIuY2xvbmUodGhpcy5kb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpOyB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5KENsYXNzLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgY29uc3QgZG9tRWxlbWVudCA9IG51bGwsXG4gICAgICAgICAgbWFya2Rvd25Ob2RlID0gTm9uVGVybWluYWxOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5KENsYXNzLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgZG9tRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIHJldHVybiBtYXJrZG93bk5vZGU7XG4gIH1cbn1cblxuT2JqZWN0LmFzc2lnbihNYXJrZG93bk5vZGUucHJvdG90eXBlLCBub2RlTWl4aW5zKTtcbk9iamVjdC5hc3NpZ24oTWFya2Rvd25Ob2RlLnByb3RvdHlwZSwgZWxlbWVudE1peGlucyk7XG5cbmV4cG9ydCBkZWZhdWx0IE1hcmtkb3duTm9kZTtcbiJdLCJuYW1lcyI6WyJNYXJrZG93bk5vZGUiLCJydWxlTmFtZSIsImNoaWxkTm9kZXMiLCJwcmVjZWRlbmNlIiwib3BhY2l0eSIsImRvbUVsZW1lbnQiLCJnZXRET01FbGVtZW50Iiwic2V0RE9NRWxlbWVudCIsInRhZ05hbWUiLCJjb250ZXh0IiwiZWxlbWVudCIsImVsZW1lbnRNYXAiLCJjbGFzc05hbWUiLCJjbG9zaW5nVGFnIiwic3RhcnRpbmdUYWciLCJhdHRyaWJ1dGVOYW1lIiwiYXR0cmlidXRlVmFsdWUiLCJjbGFzc0hUTUwiLCJFTVBUWV9TVFJJTkciLCJhdHRyaWJ1dGVIVE1MIiwic2VsZkNsb3NpbmdUYWciLCJhZGp1c3RJbmRlbnQiLCJpbmRlbnQiLCJpc0RpdmlzaW9uTWFya2Rvd25Ob2RlIiwiZGl2aXNpb25NYXJrZG93bk5vZGUiLCJpc1BsYWluVGV4dE1hcmtkb3duTm9kZSIsInBsYWluVGV4dE1hcmtkb3duTm9kZSIsImxpbmVzIiwiY29uc3RydWN0b3IiLCJyZWR1Y2VDaGlsZE5vZGUiLCJjaGlsZE5vZGUiLCJjaGlsZE5vZGVNYXJrZG93bk5vZGUiLCJtYXJrZG93bk5vZGUiLCJtYXJrZG93bk5vZGVMaW5lcyIsIm1vdW50IiwicGFyZW50RE9NRWxlbWVudCIsInNpYmxpbmdET01FbGVtZW50IiwiY3JlYXRlRE9NRWxlbWVudCIsImluc2VydEJlZm9yZSIsImZvckVhY2giLCJ1bm1vdW50IiwicmVtb3ZlQ2hpbGQiLCJpc01vdW50ZWQiLCJtb3VudGVkIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiT2JqZWN0IiwiYXNzaWduIiwic2V0QXR0cmlidXRlIiwiYXNIVE1MIiwiaHRtbCIsImNoaWxkTm9kZXNIVE1MIiwiY2hpbGROb2Rlc0FzSFRNTCIsImFzUGxhaW5UZXh0IiwicGxhaW5UZXh0IiwiY2hpbGROb2Rlc1BsYWluVGV4dCIsImNoaWxkTm9kZXNBc1BsYWluVGV4dCIsIm1hcmtkb3duTm9kZUhUTUwiLCJtYXJrZG93bk5vZGVQbGFpblRleHQiLCJjbG9uZSIsInJlbWFpbmluZ0FyZ3VtZW50cyIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5IiwiQ2xhc3MiLCJOb25UZXJtaW5hbE5vZGUiLCJwcm90b3R5cGUiLCJub2RlTWl4aW5zIiwiZWxlbWVudE1peGlucyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBdVRBOzs7ZUFBQTs7OzRCQXJUZ0M7aUVBRVQ7MkRBQ0E7OERBQ0c7eUJBRUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTdCLElBQUEsQUFBTUEsNkJBQU47Y0FBTUE7YUFBQUEsYUFDUUMsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLFVBQVUsRUFBRUMsT0FBTyxFQUFFQyxVQUFVO2dDQUQ3REw7O2dCQUVGLGtCQUZFQTtZQUVJQztZQUFVQztZQUFZQztZQUFZQzs7UUFFeEMsTUFBS0MsVUFBVSxHQUFHQTs7O2tCQUpoQkw7O1lBT0pNLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0QsVUFBVTtZQUN4Qjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxjQUFjRixVQUFVO2dCQUN0QixJQUFJLENBQUNBLFVBQVUsR0FBR0E7WUFDcEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsUUFBUUMsT0FBTztnQkFDYixJQUFNQyxVQUFVQyxtQkFBVSxDQUFDLElBQUksQ0FBQ1YsUUFBUSxDQUFDO2dCQUV6QyxJQUFNLEFBQUVPLFVBQVlFLFFBQVpGO2dCQUVSLE9BQU9BO1lBQ1Q7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVUgsT0FBTztnQkFDZixJQUFNQyxVQUFVQyxtQkFBVSxDQUFDLElBQUksQ0FBQ1YsUUFBUSxDQUFDO2dCQUV6QyxJQUFNLEFBQUVXLFlBQWNGLFFBQWRFO2dCQUVSLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsV0FBV0osT0FBTztnQkFDaEIsSUFBTUQsVUFBVSxJQUFJLENBQUNBLE9BQU8sQ0FBQ0MsVUFDdkJJLGFBQWEsQUFBQyxLQUFZLE9BQVJMLFNBQVE7Z0JBRWhDLE9BQU9LO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsWUFBWUwsT0FBTztnQkFDakIsSUFBTUQsVUFBVSxJQUFJLENBQUNBLE9BQU8sQ0FBQ0MsVUFDdkJHLFlBQVksSUFBSSxDQUFDQSxTQUFTLENBQUNILFVBQzNCTSxnQkFBZ0IsSUFBSSxDQUFDQSxhQUFhLENBQUNOLFVBQ25DTyxpQkFBaUIsSUFBSSxDQUFDQSxjQUFjLENBQUNQLFVBQ3JDUSxZQUFZLEFBQUNMLGNBQWMsT0FDZCxBQUFDLFdBQW9CLE9BQVZBLFdBQVUsT0FDbEJNLHVCQUFZLEVBQzVCQyxnQkFBZ0IsQUFBQyxBQUFDSixrQkFBa0IsUUFBVUMsbUJBQW1CLE9BQ2hELEFBQUMsSUFBcUJBLE9BQWxCRCxlQUFjLE1BQW1CLE9BQWZDLGdCQUFlLE9BQ2xDRSx1QkFBWSxFQUNoQ0osY0FBYyxBQUFDLElBQWFHLE9BQVZULFNBQXNCVyxPQUFaRixXQUEwQixPQUFkRSxlQUFjO2dCQUU1RCxPQUFPTDtZQUNUOzs7WUFFQU0sS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVYLE9BQU87Z0JBQ3BCLElBQU1ELFVBQVUsSUFBSSxDQUFDQSxPQUFPLENBQUNDLFVBQ3ZCRyxZQUFZLElBQUksQ0FBQ0EsU0FBUyxDQUFDSCxVQUMzQk0sZ0JBQWdCLElBQUksQ0FBQ0EsYUFBYSxDQUFDTixVQUNuQ08saUJBQWlCLElBQUksQ0FBQ0EsY0FBYyxDQUFDUCxVQUNyQ1EsWUFBWSxBQUFDTCxjQUFjLE9BQ2QsQUFBQyxXQUFvQixPQUFWQSxXQUFVLE9BQ2xCTSx1QkFBWSxFQUM1QkMsZ0JBQWdCLEFBQUMsQUFBQ0osa0JBQWtCLFFBQVVDLG1CQUFtQixPQUNoRCxBQUFDLElBQXFCQSxPQUFsQkQsZUFBYyxNQUFtQixPQUFmQyxnQkFBZSxPQUNsQ0UsdUJBQVksRUFDaENFLGlCQUFpQixBQUFDLElBQWFILE9BQVZULFNBQXNCVyxPQUFaRixXQUEwQixPQUFkRSxlQUFjO2dCQUUvRCxPQUFPQztZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGFBQWFDLE1BQU07Z0JBQ2pCLElBQUlBLFdBQVcsTUFBTTtvQkFDbkJBLFNBQVMsQUFBQyxLQUFXLE9BQVBBO2dCQUNoQjtnQkFFQSxPQUFPQTtZQUNUOzs7WUFFQVAsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWNOLE9BQU87Z0JBQ25CLElBQU1NLGdCQUFnQjtnQkFFdEIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxlQUFlUCxPQUFPO2dCQUNwQixJQUFNTyxpQkFBaUI7Z0JBRXZCLE9BQU9BO1lBQ1Q7OztZQUVBTyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsdUJBQXVCO2dCQUU3QixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLHdCQUF3QjtnQkFFOUIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxNQUFNbEIsT0FBTztnQkFDWCxJQUFJa0I7O3NCQUVnQixJQUFJLENBQUNDLFdBQVcsYUFBakNELE9BQUFBLDBCQUFRO2dCQUVYLElBQUlBLFVBQVUsTUFBTTtvQkFDbEJBLFFBQVEsSUFBSSxDQUFDRSxlQUFlLENBQUMsU0FBQ0YsT0FBT0c7d0JBQ25DLElBQU1DLHdCQUF5QkQsQUFBUyxZQUFUQSxXQTdHakM5Qjt3QkErR0UsSUFBSStCLHVCQUF1Qjs0QkFDekIsSUFBTUMsZUFBZUYsV0FDZkcsb0JBQW9CRCxhQUFhTCxLQUFLLENBQUNsQjs0QkFFN0NrQixTQUFTTTt3QkFDWDt3QkFFQSxPQUFPTjtvQkFDVCxHQUFHO2dCQUNMO2dCQUVBLE9BQU9BO1lBQ1Q7OztZQUVBTyxLQUFBQTttQkFBQUEsU0FBQUEsTUFBTUMsZ0JBQWdCLEVBQUVDLGlCQUFpQixFQUFFM0IsT0FBTztnQkFDaEQsSUFBSSxDQUFDSixVQUFVLEdBQUcsSUFBSSxDQUFDZ0MsZ0JBQWdCLENBQUM1QjtnQkFFeEMsSUFBSSxJQUFJLENBQUNKLFVBQVUsS0FBSyxNQUFNO29CQUM1QjhCLGlCQUFpQkcsWUFBWSxDQUFDLElBQUksQ0FBQ2pDLFVBQVUsRUFBRStCO29CQUUvQ0QsbUJBQW1CLElBQUksQ0FBQzlCLFVBQVUsRUFBRSxHQUFHO29CQUV2QytCLG9CQUFvQjtnQkFDdEI7Z0JBRUEsSUFBSSxDQUFDbEMsVUFBVSxDQUFDcUMsT0FBTyxDQUFDLFNBQUNUO29CQUN2QixJQUFNQyx3QkFBeUJELEFBQVMsWUFBVEEsV0F6SS9COUI7b0JBMklBLElBQUkrQix1QkFBdUI7d0JBQ3pCLElBQU1DLGVBQWVGLFdBQVcsR0FBRzt3QkFFbkNFLGFBQWFFLEtBQUssQ0FBQ0Msa0JBQWtCQyxtQkFBbUIzQjtvQkFDMUQ7Z0JBQ0Y7WUFDRjs7O1lBRUErQixLQUFBQTttQkFBQUEsU0FBQUEsUUFBUUwsZ0JBQWdCLEVBQUUxQixPQUFPO2dCQUMvQixJQUFJLElBQUksQ0FBQ0osVUFBVSxLQUFLLE1BQU07b0JBQzVCOEIsaUJBQWlCTSxXQUFXLENBQUMsSUFBSSxDQUFDcEMsVUFBVTtvQkFFNUM4QixtQkFBbUIsSUFBSSxDQUFDOUIsVUFBVSxFQUFFLEdBQUc7b0JBRXZDLElBQUksQ0FBQ0EsVUFBVSxHQUFHO29CQUVsQjtnQkFDRjtnQkFFQSxJQUFJLENBQUNILFVBQVUsQ0FBQ3FDLE9BQU8sQ0FBQyxTQUFDVDtvQkFDdkIsSUFBTUMsd0JBQXlCRCxBQUFTLFlBQVRBLFdBL0ovQjlCO29CQWlLQSxJQUFJK0IsdUJBQXVCO3dCQUN6QkQsVUFBVVUsT0FBTyxDQUFDTCxrQkFBa0IxQjtvQkFDdEM7Z0JBQ0Y7WUFDRjs7O1lBRUFpQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsVUFBVyxJQUFJLENBQUN0QyxVQUFVLEtBQUs7Z0JBRXJDLE9BQU9zQztZQUNUOzs7WUFFQU4sS0FBQUE7bUJBQUFBLFNBQUFBLGlCQUFpQjVCLE9BQU87Z0JBQ3RCLElBQUlKLGFBQWE7Z0JBRWpCLElBQU1HLFVBQVUsSUFBSSxDQUFDQSxPQUFPLENBQUNDO2dCQUU3QixJQUFJRCxZQUFZLE1BQU07b0JBQ3BCSCxhQUFhdUMsU0FBU0MsYUFBYSxDQUFDckM7b0JBRXBDLElBQU1JLFlBQVksSUFBSSxDQUFDQSxTQUFTLENBQUNILFVBQzNCTSxnQkFBZ0IsSUFBSSxDQUFDQSxhQUFhLENBQUNOLFVBQ25DTyxpQkFBaUIsSUFBSSxDQUFDQSxjQUFjLENBQUNQO29CQUUzQyxJQUFJRyxjQUFjLE1BQU07d0JBQ3RCa0MsT0FBT0MsTUFBTSxDQUFDMUMsWUFBWTs0QkFDeEJPLFdBQUFBO3dCQUNGO29CQUNGO29CQUVBLElBQUksQUFBQ0csa0JBQWtCLFFBQVVDLG1CQUFtQixNQUFPO3dCQUN6RFgsV0FBVzJDLFlBQVksQ0FBQ2pDLGVBQWVDO29CQUN6QztnQkFDRjtnQkFFQSxPQUFPWDtZQUNUOzs7WUFFQTRDLEtBQUFBO21CQUFBQSxTQUFBQSxPQUFPM0IsTUFBTSxFQUFFYixPQUFPO2dCQUNwQixJQUFJeUMsT0FBTztnQkFFWCxJQUFNMUMsVUFBVSxJQUFJLENBQUNBLE9BQU8sQ0FBQ0M7Z0JBRTdCLElBQUlELFlBQVksTUFBTTtvQkFDcEJjLFNBQVMsSUFBSSxDQUFDRCxZQUFZLENBQUNDO29CQUUzQixJQUFNNkIsaUJBQWlCLElBQUksQ0FBQ0MsZ0JBQWdCLENBQUM5QixRQUFRYjtvQkFFckQsSUFBSTBDLG1CQUFtQixNQUFNO3dCQUMzQixJQUFNckMsY0FBYyxJQUFJLENBQUNBLFdBQVcsQ0FBQ0wsVUFDL0JJLGFBQWEsSUFBSSxDQUFDQSxVQUFVLENBQUNKO3dCQUVuQ3lDLE9BQU8sQUFBQzVCLFdBQVcsT0FDVixBQUFDLEdBQWdCNkIsT0FBZHJDLGFBQStCRCxPQUFqQnNDLGdCQUE0QixPQUFYdEMsY0FDaEMsQUFBQyxHQUFXQyxPQUFUUSxRQUNwQjZCLE9BRDZCckMsYUFBWSxNQUN4QlEsT0FBakI2QixnQkFBMEJ0QyxPQUFUUyxRQUFvQixPQUFYVCxZQUFXO29CQUVqQyxPQUFPO3dCQUNMLElBQU1PLGlCQUFpQixJQUFJLENBQUNBLGNBQWMsQ0FBQ1g7d0JBRTNDeUMsT0FBTyxBQUFDNUIsV0FBVyxPQUNYRixpQkFDaEIsQUFBQyxHQUFXQSxPQUFURSxRQUF3QixPQUFmRixnQkFBZTtvQkFFckI7Z0JBQ0Y7Z0JBRUEsT0FBTzhCO1lBQ1Q7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsWUFBWTVDLE9BQU87Z0JBQ2pCLElBQUk2QyxZQUFZO2dCQUVoQixJQUFNOUMsVUFBVSxJQUFJLENBQUNBLE9BQU8sQ0FBQ0M7Z0JBRTdCLElBQUlELFlBQVksTUFBTTtvQkFDcEIsSUFBTStDLHNCQUFzQixJQUFJLENBQUNDLHFCQUFxQixDQUFDL0M7b0JBRXZENkMsWUFBWUMscUJBQXNCLEdBQUc7Z0JBQ3ZDO2dCQUVBLE9BQU9EO1lBQ1Q7OztZQUVBRixLQUFBQTttQkFBQUEsU0FBQUEsaUJBQWlCOUIsTUFBTSxFQUFFYixPQUFPO2dCQUM5QixJQUFNMEMsaUJBQWlCLElBQUksQ0FBQ3RCLGVBQWUsQ0FBQyxTQUFDc0IsZ0JBQWdCckI7b0JBQ3JELElBQU1DLHdCQUF5QkQsQUFBUyxZQUFUQSxXQXZQckM5QjtvQkF5UE0sSUFBSStCLHVCQUF1Qjt3QkFDekIsSUFBTUMsZUFBZUYsV0FDZjJCLG1CQUFtQnpCLGFBQWFpQixNQUFNLENBQUMzQixRQUFRYjt3QkFFckQsSUFBSWdELHFCQUFxQixNQUFNOzRCQUM3Qk4saUJBQWlCLEFBQUNBLG1CQUFtQixPQUNsQk0sbUJBQ0MsQUFBQyxHQUFtQkEsT0FBakJOLGdCQUFrQyxPQUFqQk07d0JBQzFDO29CQUNGO29CQUVBLE9BQU9OO2dCQUNULEdBQUc7Z0JBRVQsT0FBT0E7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0IvQyxPQUFPO2dCQUMzQixJQUFNOEMsc0JBQXNCLElBQUksQ0FBQzFCLGVBQWUsQ0FBQyxTQUFDMEIscUJBQXFCekI7b0JBQy9ELElBQU1DLHdCQUF5QkQsQUFBUyxZQUFUQSxXQTVRckM5QjtvQkE4UU0sSUFBSStCLHVCQUF1Qjt3QkFDekIsSUFBTUMsZUFBZUYsV0FDZjRCLHdCQUF3QjFCLGFBQWFxQixXQUFXLENBQUM1Qzt3QkFFdkQsSUFBSWlELDBCQUEwQixNQUFNOzRCQUNsQ0gsc0JBQXNCLEFBQUNBLHdCQUF3QixPQUN2Qkcsd0JBQ0MsQUFBQyxHQUN4Q0EsT0FEMENILHFCQUFvQixNQUN4QyxPQUF0Qkc7d0JBQ1k7b0JBQ0Y7b0JBRUEsT0FBT0g7Z0JBQ1QsR0FBRztnQkFFVCxPQUFPQTtZQUNUOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUFNLElBQUEsSUFBQSxPQUFBLFVBQUEsUUFBQSxBQUFHQyxxQkFBSCxVQUFBLE9BQUEsT0FBQSxHQUFBLE9BQUEsTUFBQTtvQkFBR0EsbUJBQUgsUUFBQSxTQUFBLENBQUEsS0FBcUI7O29CQUFXO2dCQUFQLFFBQU8sU0FBQSx1QkFoU2xDNUQseUJBZ1N3QzJELFNBQU4sSUFBSyxjQUFMOztvQkFBWSxJQUFJLENBQUN0RCxVQUFVO3lCQUFFLHFCQUFHdUQ7WUFBcUI7Ozs7WUFFcEZDLEtBQUFBO21CQUFQLFNBQU9BLGlDQUFpQ0MsS0FBSyxFQUFFN0QsUUFBUSxFQUFFQyxVQUFVLEVBQUVFLE9BQU87Z0JBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUd3RCxxQkFBSCxVQUFBLE9BQUEsSUFBQSxPQUFBLFFBQUEsT0FBQSxHQUFBLE9BQUEsTUFBQTtvQkFBR0EsbUJBQUgsT0FBQSxLQUFBLFNBQUEsQ0FBQSxLQUFxQjs7b0JBRTVFRztnQkFEckIsSUFBTTFELGFBQWEsTUFDYjJCLGVBQWUrQixDQUFBQSxtQkFBQUEsNkJBQWUsRUFBQ0YsZ0NBQWdDLE9BQWhERSxrQkFBQUE7b0JBQWlERDtvQkFBTzdEO29CQUFVQztvQkFBWUU7b0JBQVNDO2lCQUFrQyxDQUF6SDBELE9BQW1HLHFCQUFHSDtnQkFFM0gsT0FBTzVCO1lBQ1Q7OztXQXZTSWhDO0VBQXFCK0QsNkJBQWU7QUEwUzFDakIsT0FBT0MsTUFBTSxDQUFDL0MsYUFBYWdFLFNBQVMsRUFBRUMsYUFBVTtBQUNoRG5CLE9BQU9DLE1BQU0sQ0FBQy9DLGFBQWFnRSxTQUFTLEVBQUVFLGdCQUFhO0lBRW5ELFdBQWVsRSJ9
|
|
367
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL21hcmtkb3duLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuXG5pbXBvcnQgZWxlbWVudE1hcCBmcm9tIFwiLi4vZWxlbWVudE1hcFwiO1xuaW1wb3J0IG5vZGVNaXhpbnMgZnJvbSBcIi4uL21peGlucy9ub2RlXCI7XG5pbXBvcnQgZWxlbWVudE1peGlucyBmcm9tIFwiLi4vbWl4aW5zL2VsZW1lbnRcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuXG5jbGFzcyBNYXJrZG93bk5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBjb25zdHJ1Y3RvcihydWxlTmFtZSwgY2hpbGROb2RlcywgcHJlY2VkZW5jZSwgb3BhY2l0eSwgZG9tRWxlbWVudCkge1xuICAgIHN1cGVyKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBwcmVjZWRlbmNlLCBvcGFjaXR5KTtcblxuICAgIHRoaXMuZG9tRWxlbWVudCA9IGRvbUVsZW1lbnQ7XG4gIH1cblxuICBnZXRET01FbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLmRvbUVsZW1lbnQ7XG4gIH1cblxuICBzZXRET01FbGVtZW50KGRvbUVsZW1lbnQpIHtcbiAgICB0aGlzLmRvbUVsZW1lbnQgPSBkb21FbGVtZW50O1xuICB9XG5cbiAgdGFnTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGVsZW1lbnRNYXBbdGhpcy5ydWxlTmFtZV07XG5cbiAgICBjb25zdCB7IHRhZ05hbWUgfSA9IGVsZW1lbnQ7XG5cbiAgICByZXR1cm4gdGFnTmFtZTtcbiAgfVxuXG4gIGNsYXNzTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGVsZW1lbnRNYXBbdGhpcy5ydWxlTmFtZV07XG5cbiAgICBjb25zdCB7IGNsYXNzTmFtZSB9ID0gZWxlbWVudDtcblxuICAgIHJldHVybiBjbGFzc05hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVOYW1lO1xuICB9XG5cbiAgYXR0cmlidXRlVmFsdWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVWYWx1ZTtcbiAgfVxuXG4gIGlzRGl2aXNpb25NYXJrZG93bk5vZGUoKSB7XG4gICAgY29uc3QgZGl2aXNpb25NYXJrZG93bk5vZGUgPSBmYWxzZTtcblxuICAgIHJldHVybiBkaXZpc2lvbk1hcmtkb3duTm9kZTtcbiAgfVxuXG4gIGlzUGxhaW5UZXh0TWFya2Rvd25Ob2RlKCkge1xuICAgIGNvbnN0IHBsYWluVGV4dE1hcmtkb3duTm9kZSA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIHBsYWluVGV4dE1hcmtkb3duTm9kZTtcbiAgfVxuXG4gIGxpbmVzKGNvbnRleHQpIHtcbiAgICBsZXQgbGluZXM7XG5cbiAgICAoeyBsaW5lcyA9IG51bGwgfSA9IHRoaXMuY29uc3RydWN0b3IpO1xuXG4gICAgaWYgKGxpbmVzID09PSBudWxsKSB7XG4gICAgICBsaW5lcyA9IHRoaXMucmVkdWNlQ2hpbGROb2RlKChsaW5lcywgY2hpbGROb2RlKSA9PiB7XG4gICAgICAgIGNvbnN0IGNoaWxkTm9kZU1hcmtkb3duTm9kZSA9IChjaGlsZE5vZGUgaW5zdGFuY2VvZiBNYXJrZG93bk5vZGUpO1xuXG4gICAgICAgIGlmIChjaGlsZE5vZGVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgICBjb25zdCBtYXJrZG93bk5vZGUgPSBjaGlsZE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIG1hcmtkb3duTm9kZUxpbmVzID0gbWFya2Rvd25Ob2RlLmxpbmVzKGNvbnRleHQpO1xuXG4gICAgICAgICAgbGluZXMgKz0gbWFya2Rvd25Ob2RlTGluZXM7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbGluZXM7XG4gICAgICB9LCAwKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGluZXM7XG4gIH1cblxuICBtb3VudChwYXJlbnRET01FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCwgY29udGV4dCkge1xuICAgIHRoaXMuZG9tRWxlbWVudCA9IHRoaXMuY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KTtcblxuICAgIGlmICh0aGlzLmRvbUVsZW1lbnQgIT09IG51bGwpIHtcbiAgICAgIHBhcmVudERPTUVsZW1lbnQuaW5zZXJ0QmVmb3JlKHRoaXMuZG9tRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQpXG5cbiAgICAgIHBhcmVudERPTUVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQ7IC8vL1xuXG4gICAgICBzaWJsaW5nRE9NRWxlbWVudCA9IG51bGw7XG4gICAgfVxuXG4gICAgdGhpcy5jaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlTWFya2Rvd25Ob2RlID0gKGNoaWxkTm9kZSBpbnN0YW5jZW9mIE1hcmtkb3duTm9kZSk7XG5cbiAgICAgIGlmIChjaGlsZE5vZGVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgY29uc3QgbWFya2Rvd25Ob2RlID0gY2hpbGROb2RlOyAvLy9cblxuICAgICAgICBtYXJrZG93bk5vZGUubW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgdW5tb3VudChwYXJlbnRET01FbGVtZW50LCBjb250ZXh0KSB7XG4gICAgaWYgKHRoaXMuZG9tRWxlbWVudCAhPT0gbnVsbCkge1xuICAgICAgcGFyZW50RE9NRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmRvbUVsZW1lbnQpO1xuXG4gICAgICBwYXJlbnRET01FbGVtZW50ID0gdGhpcy5kb21FbGVtZW50OyAvLy9cblxuICAgICAgdGhpcy5kb21FbGVtZW50ID0gbnVsbDtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuY2hpbGROb2Rlcy5mb3JFYWNoKChjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZU1hcmtkb3duTm9kZSA9IChjaGlsZE5vZGUgaW5zdGFuY2VvZiBNYXJrZG93bk5vZGUpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlTWFya2Rvd25Ob2RlKSB7XG4gICAgICAgIGNoaWxkTm9kZS51bm1vdW50KHBhcmVudERPTUVsZW1lbnQsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaXNNb3VudGVkKCkge1xuICAgIGNvbnN0IG1vdW50ZWQgPSAodGhpcy5kb21FbGVtZW50ICE9PSBudWxsKTtcblxuICAgIHJldHVybiBtb3VudGVkO1xuICB9XG5cbiAgY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KSB7XG4gICAgbGV0IGRvbUVsZW1lbnQgPSBudWxsO1xuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGlmICh0YWdOYW1lICE9PSBudWxsKSB7XG4gICAgICBkb21FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTtcblxuICAgICAgY29uc3QgY2xhc3NOYW1lID0gdGhpcy5jbGFzc05hbWUoY29udGV4dCksXG4gICAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpO1xuXG4gICAgICBpZiAoY2xhc3NOYW1lICE9PSBudWxsKSB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oZG9tRWxlbWVudCwge1xuICAgICAgICAgIGNsYXNzTmFtZVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSAmJiAoYXR0cmlidXRlVmFsdWUgIT09IG51bGwpKSB7XG4gICAgICAgIGRvbUVsZW1lbnQuc2V0QXR0cmlidXRlKGF0dHJpYnV0ZU5hbWUsIGF0dHJpYnV0ZVZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZG9tRWxlbWVudDtcbiAgfVxuXG4gIGFzUGxhaW5UZXh0KGNvbnRleHQpIHtcbiAgICBsZXQgcGxhaW5UZXh0ID0gbnVsbDtcblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBpZiAodGFnTmFtZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgY2hpbGROb2Rlc1BsYWluVGV4dCA9IHRoaXMuY2hpbGROb2Rlc0FzUGxhaW5UZXh0KGNvbnRleHQpO1xuXG4gICAgICBwbGFpblRleHQgPSBjaGlsZE5vZGVzUGxhaW5UZXh0OyAgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIHBsYWluVGV4dDtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc1BsYWluVGV4dChjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2Rlc1BsYWluVGV4dCA9IHRoaXMucmVkdWNlQ2hpbGROb2RlKChjaGlsZE5vZGVzUGxhaW5UZXh0LCBjaGlsZE5vZGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkTm9kZU1hcmtkb3duTm9kZSA9IChjaGlsZE5vZGUgaW5zdGFuY2VvZiBNYXJrZG93bk5vZGUpO1xuXG4gICAgICAgICAgICBpZiAoY2hpbGROb2RlTWFya2Rvd25Ob2RlKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG1hcmtkb3duTm9kZSA9IGNoaWxkTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgICAgIG1hcmtkb3duTm9kZVBsYWluVGV4dCA9IG1hcmtkb3duTm9kZS5hc1BsYWluVGV4dChjb250ZXh0KTtcblxuICAgICAgICAgICAgICBpZiAobWFya2Rvd25Ob2RlUGxhaW5UZXh0ICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgY2hpbGROb2Rlc1BsYWluVGV4dCA9IChjaGlsZE5vZGVzUGxhaW5UZXh0ID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFya2Rvd25Ob2RlUGxhaW5UZXh0IDogIC8vL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtjaGlsZE5vZGVzUGxhaW5UZXh0fVxuJHttYXJrZG93bk5vZGVQbGFpblRleHR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gY2hpbGROb2Rlc1BsYWluVGV4dDtcbiAgICAgICAgICB9LCBudWxsKTtcblxuICAgIHJldHVybiBjaGlsZE5vZGVzUGxhaW5UZXh0O1xuICB9XG5cbiAgY2xvbmUoLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7IHJldHVybiBzdXBlci5jbG9uZSh0aGlzLmRvbUVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7IH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCBkb21FbGVtZW50ID0gbnVsbCxcbiAgICAgICAgICBtYXJrZG93bk5vZGUgPSBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc0FuZE9wYWNpdHkoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG1hcmtkb3duTm9kZTtcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKE1hcmtkb3duTm9kZS5wcm90b3R5cGUsIG5vZGVNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihNYXJrZG93bk5vZGUucHJvdG90eXBlLCBlbGVtZW50TWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgTWFya2Rvd25Ob2RlO1xuIl0sIm5hbWVzIjpbIk1hcmtkb3duTm9kZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsInByZWNlZGVuY2UiLCJvcGFjaXR5IiwiZG9tRWxlbWVudCIsImdldERPTUVsZW1lbnQiLCJzZXRET01FbGVtZW50IiwidGFnTmFtZSIsImNvbnRleHQiLCJlbGVtZW50IiwiZWxlbWVudE1hcCIsImNsYXNzTmFtZSIsImF0dHJpYnV0ZU5hbWUiLCJhdHRyaWJ1dGVWYWx1ZSIsImlzRGl2aXNpb25NYXJrZG93bk5vZGUiLCJkaXZpc2lvbk1hcmtkb3duTm9kZSIsImlzUGxhaW5UZXh0TWFya2Rvd25Ob2RlIiwicGxhaW5UZXh0TWFya2Rvd25Ob2RlIiwibGluZXMiLCJjb25zdHJ1Y3RvciIsInJlZHVjZUNoaWxkTm9kZSIsImNoaWxkTm9kZSIsImNoaWxkTm9kZU1hcmtkb3duTm9kZSIsIm1hcmtkb3duTm9kZSIsIm1hcmtkb3duTm9kZUxpbmVzIiwibW91bnQiLCJwYXJlbnRET01FbGVtZW50Iiwic2libGluZ0RPTUVsZW1lbnQiLCJjcmVhdGVET01FbGVtZW50IiwiaW5zZXJ0QmVmb3JlIiwiZm9yRWFjaCIsInVubW91bnQiLCJyZW1vdmVDaGlsZCIsImlzTW91bnRlZCIsIm1vdW50ZWQiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJzZXRBdHRyaWJ1dGUiLCJhc1BsYWluVGV4dCIsInBsYWluVGV4dCIsImNoaWxkTm9kZXNQbGFpblRleHQiLCJjaGlsZE5vZGVzQXNQbGFpblRleHQiLCJtYXJrZG93bk5vZGVQbGFpblRleHQiLCJjbG9uZSIsInJlbWFpbmluZ0FyZ3VtZW50cyIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNBbmRPcGFjaXR5IiwiQ2xhc3MiLCJOb25UZXJtaW5hbE5vZGUiLCJwcm90b3R5cGUiLCJub2RlTWl4aW5zIiwiZWxlbWVudE1peGlucyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBbU5BOzs7ZUFB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
|
package/lib/queries.js
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _occamquery = require("occam-query");
|
|
12
|
+
var _ruleNames = require("./ruleNames");
|
|
13
|
+
var expressionStrings = [
|
|
14
|
+
"//".concat(_ruleNames.LINE_RULE_NAME),
|
|
15
|
+
"//".concat(_ruleNames.IMAGE_RULE_NAME),
|
|
16
|
+
"//".concat(_ruleNames.TABLE_RULE_NAME),
|
|
17
|
+
"//".concat(_ruleNames.ERROR_RULE_NAME),
|
|
18
|
+
"//".concat(_ruleNames.ANCHOR_RULE_NAME),
|
|
19
|
+
"//".concat(_ruleNames.DIVISION_RULE_NAME),
|
|
20
|
+
"//".concat(_ruleNames.PARAGRAPH_RULE_NAME),
|
|
21
|
+
"//".concat(_ruleNames.HYPERLINK_RULE_NAME),
|
|
22
|
+
"//".concat(_ruleNames.INDEX_LIST_RULE_NAME),
|
|
23
|
+
"//".concat(_ruleNames.INDEX_ITEM_RULE_NAME),
|
|
24
|
+
"//".concat(_ruleNames.INDEX_LINK_RULE_NAME),
|
|
25
|
+
"//".concat(_ruleNames.TABLE_HEAD_RULE_NAME),
|
|
26
|
+
"//".concat(_ruleNames.TABLE_BODY_RULE_NAME),
|
|
27
|
+
"//".concat(_ruleNames.BLOCK_LINE_RULE_NAME),
|
|
28
|
+
"//".concat(_ruleNames.EMAIL_LINK_RULE_NAME),
|
|
29
|
+
"//".concat(_ruleNames.STRONG_TEXT_RULE_NAME),
|
|
30
|
+
"//".concat(_ruleNames.ORDERED_LIST_RULE_NAME),
|
|
31
|
+
"//".concat(_ruleNames.ORDERED_ITEM_RULE_NAME),
|
|
32
|
+
"//".concat(_ruleNames.INDEX_HEADING_RULE_NAME),
|
|
33
|
+
"//".concat(_ruleNames.BLOCK_LISTING_RULE_NAME),
|
|
34
|
+
"//".concat(_ruleNames.CONTENTS_LINK_RULE_NAME),
|
|
35
|
+
"//".concat(_ruleNames.CONTENTS_ITEM_RULE_NAME),
|
|
36
|
+
"//".concat(_ruleNames.CONTENTS_LIST_RULE_NAME),
|
|
37
|
+
"//".concat(_ruleNames.FOOTNOTE_LINK_RULE_NAME),
|
|
38
|
+
"//".concat(_ruleNames.TABLE_HEAD_ROW_RULE_NAME),
|
|
39
|
+
"//".concat(_ruleNames.TABLE_BODY_ROW_RULE_NAME),
|
|
40
|
+
"//".concat(_ruleNames.INLINE_LISTING_RULE_NAME),
|
|
41
|
+
"//".concat(_ruleNames.UNORDERED_LIST_RULE_NAME),
|
|
42
|
+
"//".concat(_ruleNames.UNORDERED_ITEM_RULE_NAME),
|
|
43
|
+
"//".concat(_ruleNames.FOOTNOTES_ITEM_RULE_NAME),
|
|
44
|
+
"//".concat(_ruleNames.FOOTNOTES_LIST_RULE_NAME),
|
|
45
|
+
"//".concat(_ruleNames.TABLE_HEAD_CELL_RULE_NAME),
|
|
46
|
+
"//".concat(_ruleNames.TABLE_BODY_CELL_RULE_NAME),
|
|
47
|
+
"//".concat(_ruleNames.EMPHASISED_TEXT_RULE_NAME),
|
|
48
|
+
"//".concat(_ruleNames.PRIMARY_HEADING_RULE_NAME),
|
|
49
|
+
"//".concat(_ruleNames.TERTIARY_HEADING_RULE_NAME),
|
|
50
|
+
"//".concat(_ruleNames.SECONDARY_HEADING_RULE_NAME),
|
|
51
|
+
"//".concat(_ruleNames.QUATERNARY_HEADING_RULE_NAME),
|
|
52
|
+
"//".concat(_ruleNames.PAGE_NUMBER_DIRECTIVE_RULE_NAME),
|
|
53
|
+
"//".concat(_ruleNames.STRONGLY_EMPHASISED_TEXT_RULE_NAME)
|
|
54
|
+
], queries = expressionStrings.map(function(expressionString) {
|
|
55
|
+
var query = _occamquery.Query.fromExpressionString(expressionString);
|
|
56
|
+
return query;
|
|
57
|
+
});
|
|
58
|
+
var _default = queries;
|
|
59
|
+
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9xdWVyaWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBRdWVyeSB9IGZyb20gXCJvY2NhbS1xdWVyeVwiO1xuXG5pbXBvcnQgeyBMSU5FX1JVTEVfTkFNRSxcbiAgICAgICAgIElNQUdFX1JVTEVfTkFNRSxcbiAgICAgICAgIFRBQkxFX1JVTEVfTkFNRSxcbiAgICAgICAgIEVSUk9SX1JVTEVfTkFNRSxcbiAgICAgICAgIEFOQ0hPUl9SVUxFX05BTUUsXG4gICAgICAgICBESVZJU0lPTl9SVUxFX05BTUUsXG4gICAgICAgICBQQVJBR1JBUEhfUlVMRV9OQU1FLFxuICAgICAgICAgSFlQRVJMSU5LX1JVTEVfTkFNRSxcbiAgICAgICAgIElOREVYX0xJU1RfUlVMRV9OQU1FLFxuICAgICAgICAgSU5ERVhfSVRFTV9SVUxFX05BTUUsXG4gICAgICAgICBJTkRFWF9MSU5LX1JVTEVfTkFNRSxcbiAgICAgICAgIFRBQkxFX0hFQURfUlVMRV9OQU1FLFxuICAgICAgICAgVEFCTEVfQk9EWV9SVUxFX05BTUUsXG4gICAgICAgICBCTE9DS19MSU5FX1JVTEVfTkFNRSxcbiAgICAgICAgIEVNQUlMX0xJTktfUlVMRV9OQU1FLFxuICAgICAgICAgU1RST05HX1RFWFRfUlVMRV9OQU1FLFxuICAgICAgICAgT1JERVJFRF9MSVNUX1JVTEVfTkFNRSxcbiAgICAgICAgIE9SREVSRURfSVRFTV9SVUxFX05BTUUsXG4gICAgICAgICBJTkRFWF9IRUFESU5HX1JVTEVfTkFNRSxcbiAgICAgICAgIEJMT0NLX0xJU1RJTkdfUlVMRV9OQU1FLFxuICAgICAgICAgQ09OVEVOVFNfTElOS19SVUxFX05BTUUsXG4gICAgICAgICBDT05URU5UU19JVEVNX1JVTEVfTkFNRSxcbiAgICAgICAgIENPTlRFTlRTX0xJU1RfUlVMRV9OQU1FLFxuICAgICAgICAgRk9PVE5PVEVfTElOS19SVUxFX05BTUUsXG4gICAgICAgICBUQUJMRV9IRUFEX1JPV19SVUxFX05BTUUsXG4gICAgICAgICBUQUJMRV9CT0RZX1JPV19SVUxFX05BTUUsXG4gICAgICAgICBJTkxJTkVfTElTVElOR19SVUxFX05BTUUsXG4gICAgICAgICBVTk9SREVSRURfTElTVF9SVUxFX05BTUUsXG4gICAgICAgICBVTk9SREVSRURfSVRFTV9SVUxFX05BTUUsXG4gICAgICAgICBGT09UTk9URVNfSVRFTV9SVUxFX05BTUUsXG4gICAgICAgICBGT09UTk9URVNfTElTVF9SVUxFX05BTUUsXG4gICAgICAgICBUQUJMRV9IRUFEX0NFTExfUlVMRV9OQU1FLFxuICAgICAgICAgVEFCTEVfQk9EWV9DRUxMX1JVTEVfTkFNRSxcbiAgICAgICAgIEVNUEhBU0lTRURfVEVYVF9SVUxFX05BTUUsXG4gICAgICAgICBQUklNQVJZX0hFQURJTkdfUlVMRV9OQU1FLFxuICAgICAgICAgVEVSVElBUllfSEVBRElOR19SVUxFX05BTUUsXG4gICAgICAgICBTRUNPTkRBUllfSEVBRElOR19SVUxFX05BTUUsXG4gICAgICAgICBRVUFURVJOQVJZX0hFQURJTkdfUlVMRV9OQU1FLFxuICAgICAgICAgUEFHRV9OVU1CRVJfRElSRUNUSVZFX1JVTEVfTkFNRSxcbiAgICAgICAgIFNUUk9OR0xZX0VNUEhBU0lTRURfVEVYVF9SVUxFX05BTUUgfSBmcm9tIFwiLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgZXhwcmVzc2lvblN0cmluZ3MgPSBbXG4gICAgICAgIGAvLyR7TElORV9SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtJTUFHRV9SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtUQUJMRV9SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtFUlJPUl9SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtBTkNIT1JfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7RElWSVNJT05fUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7UEFSQUdSQVBIX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke0hZUEVSTElOS19SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtJTkRFWF9MSVNUX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke0lOREVYX0lURU1fUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7SU5ERVhfTElOS19SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtUQUJMRV9IRUFEX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke1RBQkxFX0JPRFlfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7QkxPQ0tfTElORV9SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtFTUFJTF9MSU5LX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke1NUUk9OR19URVhUX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke09SREVSRURfTElTVF9SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtPUkRFUkVEX0lURU1fUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7SU5ERVhfSEVBRElOR19SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtCTE9DS19MSVNUSU5HX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke0NPTlRFTlRTX0xJTktfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7Q09OVEVOVFNfSVRFTV9SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtDT05URU5UU19MSVNUX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke0ZPT1ROT1RFX0xJTktfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7VEFCTEVfSEVBRF9ST1dfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7VEFCTEVfQk9EWV9ST1dfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7SU5MSU5FX0xJU1RJTkdfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7VU5PUkRFUkVEX0xJU1RfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7VU5PUkRFUkVEX0lURU1fUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7Rk9PVE5PVEVTX0lURU1fUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7Rk9PVE5PVEVTX0xJU1RfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7VEFCTEVfSEVBRF9DRUxMX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke1RBQkxFX0JPRFlfQ0VMTF9SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtFTVBIQVNJU0VEX1RFWFRfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7UFJJTUFSWV9IRUFESU5HX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke1RFUlRJQVJZX0hFQURJTkdfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7U0VDT05EQVJZX0hFQURJTkdfUlVMRV9OQU1FfWAsXG4gICAgICAgIGAvLyR7UVVBVEVSTkFSWV9IRUFESU5HX1JVTEVfTkFNRX1gLFxuICAgICAgICBgLy8ke1BBR0VfTlVNQkVSX0RJUkVDVElWRV9SVUxFX05BTUV9YCxcbiAgICAgICAgYC8vJHtTVFJPTkdMWV9FTVBIQVNJU0VEX1RFWFRfUlVMRV9OQU1FfWBcbiAgICAgIF0sXG4gICAgICBxdWVyaWVzID0gZXhwcmVzc2lvblN0cmluZ3MubWFwKChleHByZXNzaW9uU3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHF1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb25TdHJpbmcoZXhwcmVzc2lvblN0cmluZyk7XG5cbiAgICAgICAgcmV0dXJuIHF1ZXJ5O1xuICAgICAgfSk7XG5cbmV4cG9ydCBkZWZhdWx0IHF1ZXJpZXM7Il0sIm5hbWVzIjpbImV4cHJlc3Npb25TdHJpbmdzIiwiTElORV9SVUxFX05BTUUiLCJJTUFHRV9SVUxFX05BTUUiLCJUQUJMRV9SVUxFX05BTUUiLCJFUlJPUl9SVUxFX05BTUUiLCJBTkNIT1JfUlVMRV9OQU1FIiwiRElWSVNJT05fUlVMRV9OQU1FIiwiUEFSQUdSQVBIX1JVTEVfTkFNRSIsIkhZUEVSTElOS19SVUxFX05BTUUiLCJJTkRFWF9MSVNUX1JVTEVfTkFNRSIsIklOREVYX0lURU1fUlVMRV9OQU1FIiwiSU5ERVhfTElOS19SVUxFX05BTUUiLCJUQUJMRV9IRUFEX1JVTEVfTkFNRSIsIlRBQkxFX0JPRFlfUlVMRV9OQU1FIiwiQkxPQ0tfTElORV9SVUxFX05BTUUiLCJFTUFJTF9MSU5LX1JVTEVfTkFNRSIsIlNUUk9OR19URVhUX1JVTEVfTkFNRSIsIk9SREVSRURfTElTVF9SVUxFX05BTUUiLCJPUkRFUkVEX0lURU1fUlVMRV9OQU1FIiwiSU5ERVhfSEVBRElOR19SVUxFX05BTUUiLCJCTE9DS19MSVNUSU5HX1JVTEVfTkFNRSIsIkNPTlRFTlRTX0xJTktfUlVMRV9OQU1FIiwiQ09OVEVOVFNfSVRFTV9SVUxFX05BTUUiLCJDT05URU5UU19MSVNUX1JVTEVfTkFNRSIsIkZPT1ROT1RFX0xJTktfUlVMRV9OQU1FIiwiVEFCTEVfSEVBRF9ST1dfUlVMRV9OQU1FIiwiVEFCTEVfQk9EWV9ST1dfUlVMRV9OQU1FIiwiSU5MSU5FX0xJU1RJTkdfUlVMRV9OQU1FIiwiVU5PUkRFUkVEX0xJU1RfUlVMRV9OQU1FIiwiVU5PUkRFUkVEX0lURU1fUlVMRV9OQU1FIiwiRk9PVE5PVEVTX0lURU1fUlVMRV9OQU1FIiwiRk9PVE5PVEVTX0xJU1RfUlVMRV9OQU1FIiwiVEFCTEVfSEVBRF9DRUxMX1JVTEVfTkFNRSIsIlRBQkxFX0JPRFlfQ0VMTF9SVUxFX05BTUUiLCJFTVBIQVNJU0VEX1RFWFRfUlVMRV9OQU1FIiwiUFJJTUFSWV9IRUFESU5HX1JVTEVfTkFNRSIsIlRFUlRJQVJZX0hFQURJTkdfUlVMRV9OQU1FIiwiU0VDT05EQVJZX0hFQURJTkdfUlVMRV9OQU1FIiwiUVVBVEVSTkFSWV9IRUFESU5HX1JVTEVfTkFNRSIsIlBBR0VfTlVNQkVSX0RJUkVDVElWRV9SVUxFX05BTUUiLCJTVFJPTkdMWV9FTVBIQVNJU0VEX1RFWFRfUlVMRV9OQU1FIiwicXVlcmllcyIsIm1hcCIsImV4cHJlc3Npb25TdHJpbmciLCJxdWVyeSIsIlF1ZXJ5IiwiZnJvbUV4cHJlc3Npb25TdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQTZGQTs7O2VBQUE7OzswQkEzRnNCO3lCQXlDNkI7QUFFbkQsSUFBTUEsb0JBQW9CO0lBQ2pCLEtBQW1CLE9BQWZDLHlCQUFjO0lBQ2xCLEtBQW9CLE9BQWhCQywwQkFBZTtJQUNuQixLQUFvQixPQUFoQkMsMEJBQWU7SUFDbkIsS0FBb0IsT0FBaEJDLDBCQUFlO0lBQ25CLEtBQXFCLE9BQWpCQywyQkFBZ0I7SUFDcEIsS0FBdUIsT0FBbkJDLDZCQUFrQjtJQUN0QixLQUF3QixPQUFwQkMsOEJBQW1CO0lBQ3ZCLEtBQXdCLE9BQXBCQyw4QkFBbUI7SUFDdkIsS0FBeUIsT0FBckJDLCtCQUFvQjtJQUN4QixLQUF5QixPQUFyQkMsK0JBQW9CO0lBQ3hCLEtBQXlCLE9BQXJCQywrQkFBb0I7SUFDeEIsS0FBeUIsT0FBckJDLCtCQUFvQjtJQUN4QixLQUF5QixPQUFyQkMsK0JBQW9CO0lBQ3hCLEtBQXlCLE9BQXJCQywrQkFBb0I7SUFDeEIsS0FBeUIsT0FBckJDLCtCQUFvQjtJQUN4QixLQUEwQixPQUF0QkMsZ0NBQXFCO0lBQ3pCLEtBQTJCLE9BQXZCQyxpQ0FBc0I7SUFDMUIsS0FBMkIsT0FBdkJDLGlDQUFzQjtJQUMxQixLQUE0QixPQUF4QkMsa0NBQXVCO0lBQzNCLEtBQTRCLE9BQXhCQyxrQ0FBdUI7SUFDM0IsS0FBNEIsT0FBeEJDLGtDQUF1QjtJQUMzQixLQUE0QixPQUF4QkMsa0NBQXVCO0lBQzNCLEtBQTRCLE9BQXhCQyxrQ0FBdUI7SUFDM0IsS0FBNEIsT0FBeEJDLGtDQUF1QjtJQUMzQixLQUE2QixPQUF6QkMsbUNBQXdCO0lBQzVCLEtBQTZCLE9BQXpCQyxtQ0FBd0I7SUFDNUIsS0FBNkIsT0FBekJDLG1DQUF3QjtJQUM1QixLQUE2QixPQUF6QkMsbUNBQXdCO0lBQzVCLEtBQTZCLE9BQXpCQyxtQ0FBd0I7SUFDNUIsS0FBNkIsT0FBekJDLG1DQUF3QjtJQUM1QixLQUE2QixPQUF6QkMsbUNBQXdCO0lBQzVCLEtBQThCLE9BQTFCQyxvQ0FBeUI7SUFDN0IsS0FBOEIsT0FBMUJDLG9DQUF5QjtJQUM3QixLQUE4QixPQUExQkMsb0NBQXlCO0lBQzdCLEtBQThCLE9BQTFCQyxvQ0FBeUI7SUFDN0IsS0FBK0IsT0FBM0JDLHFDQUEwQjtJQUM5QixLQUFnQyxPQUE1QkMsc0NBQTJCO0lBQy9CLEtBQWlDLE9BQTdCQyx1Q0FBNEI7SUFDaEMsS0FBb0MsT0FBaENDLDBDQUErQjtJQUNuQyxLQUF1QyxPQUFuQ0MsNkNBQWtDO0NBQ3hDLEVBQ0RDLFVBQVV6QyxrQkFBa0IwQyxHQUFHLENBQUMsU0FBQ0M7SUFDL0IsSUFBTUMsUUFBUUMsaUJBQUssQ0FBQ0Msb0JBQW9CLENBQUNIO0lBRXpDLE9BQU9DO0FBQ1Q7SUFFTixXQUFlSCJ9
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _comma = /*#__PURE__*/ _interop_require_default(require("./node/html/comma"));
|
|
12
|
+
var _anchor = /*#__PURE__*/ _interop_require_default(require("./node/html/anchor"));
|
|
13
|
+
var _className = /*#__PURE__*/ _interop_require_default(require("./node/html/className"));
|
|
14
|
+
var _blockLine = /*#__PURE__*/ _interop_require_default(require("./node/html/blockLine"));
|
|
15
|
+
var _ordered = /*#__PURE__*/ _interop_require_default(require("./node/html/item/ordered"));
|
|
16
|
+
var _contentsLink = /*#__PURE__*/ _interop_require_default(require("./node/html/contentsLink"));
|
|
17
|
+
var _blockListing = /*#__PURE__*/ _interop_require_default(require("./node/html/blockListing"));
|
|
18
|
+
var _blockListingEnd = /*#__PURE__*/ _interop_require_default(require("./node/html/blockListingEnd"));
|
|
19
|
+
var _blockListingStart = /*#__PURE__*/ _interop_require_default(require("./node/html/blockListingStart"));
|
|
20
|
+
var _pageNumber = /*#__PURE__*/ _interop_require_default(require("./node/html/directive/pageNumber"));
|
|
21
|
+
var _ruleNames = require("./ruleNames");
|
|
22
|
+
function _define_property(obj, key, value) {
|
|
23
|
+
if (key in obj) {
|
|
24
|
+
Object.defineProperty(obj, key, {
|
|
25
|
+
value: value,
|
|
26
|
+
enumerable: true,
|
|
27
|
+
configurable: true,
|
|
28
|
+
writable: true
|
|
29
|
+
});
|
|
30
|
+
} else {
|
|
31
|
+
obj[key] = value;
|
|
32
|
+
}
|
|
33
|
+
return obj;
|
|
34
|
+
}
|
|
35
|
+
function _interop_require_default(obj) {
|
|
36
|
+
return obj && obj.__esModule ? obj : {
|
|
37
|
+
default: obj
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
var _obj;
|
|
41
|
+
var ruleNameToClassMap = (_obj = {}, _define_property(_obj, _ruleNames.COMMA_RULE_NAME, _comma.default), _define_property(_obj, _ruleNames.ANCHOR_RULE_NAME, _anchor.default), _define_property(_obj, _ruleNames.CLASS_NAME_RULE_NAME, _className.default), _define_property(_obj, _ruleNames.BLOCK_LINE_RULE_NAME, _blockLine.default), _define_property(_obj, _ruleNames.ORDERED_ITEM_RULE_NAME, _ordered.default), _define_property(_obj, _ruleNames.CONTENTS_LINK_RULE_NAME, _contentsLink.default), _define_property(_obj, _ruleNames.BLOCK_LISTING_RULE_NAME, _blockListing.default), _define_property(_obj, _ruleNames.BLOCK_LISTING_END_RULE_NAME, _blockListingEnd.default), _define_property(_obj, _ruleNames.BLOCK_LISTING_START_RULE_NAME, _blockListingStart.default), _define_property(_obj, _ruleNames.PAGE_NUMBER_DIRECTIVE_RULE_NAME, _pageNumber.default), _obj);
|
|
42
|
+
var _default = ruleNameToClassMap;
|
|
43
|
+
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWxlTmFtZVRvQ2xhc3NNYXAuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBDb21tYUhUTUxOb2RlIGZyb20gXCIuL25vZGUvaHRtbC9jb21tYVwiO1xuaW1wb3J0IEFuY2hvckhUTUxOb2RlIGZyb20gXCIuL25vZGUvaHRtbC9hbmNob3JcIjtcbmltcG9ydCBDbGFzc05hbWVIVE1MTm9kZSBmcm9tIFwiLi9ub2RlL2h0bWwvY2xhc3NOYW1lXCI7XG5pbXBvcnQgQmxvY2tMaW5lSFRNTE5vZGUgZnJvbSBcIi4vbm9kZS9odG1sL2Jsb2NrTGluZVwiO1xuaW1wb3J0IE9yZGVyZWRJdGVtSFRNTE5vZGUgZnJvbSBcIi4vbm9kZS9odG1sL2l0ZW0vb3JkZXJlZFwiO1xuaW1wb3J0IENvbnRlbnRzTGlua0hUTUxOb2RlIGZyb20gXCIuL25vZGUvaHRtbC9jb250ZW50c0xpbmtcIjtcbmltcG9ydCBCbG9ja0xpc3RpbmdIVE1MTm9kZSBmcm9tIFwiLi9ub2RlL2h0bWwvYmxvY2tMaXN0aW5nXCI7XG5pbXBvcnQgQmxvY2tMaXN0aW5nSEVuZEhUTUxOb2RlIGZyb20gXCIuL25vZGUvaHRtbC9ibG9ja0xpc3RpbmdFbmRcIjtcbmltcG9ydCBCbG9ja0xpc3RpbmdIU3RhcnRIVE1MTm9kZSBmcm9tIFwiLi9ub2RlL2h0bWwvYmxvY2tMaXN0aW5nU3RhcnRcIjtcbmltcG9ydCBQYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUgZnJvbSBcIi4vbm9kZS9odG1sL2RpcmVjdGl2ZS9wYWdlTnVtYmVyXCI7XG5cbmltcG9ydCB7IENPTU1BX1JVTEVfTkFNRSxcbiAgICAgICAgIEFOQ0hPUl9SVUxFX05BTUUsXG4gICAgICAgICBDTEFTU19OQU1FX1JVTEVfTkFNRSxcbiAgICAgICAgIEJMT0NLX0xJTkVfUlVMRV9OQU1FLFxuICAgICAgICAgT1JERVJFRF9JVEVNX1JVTEVfTkFNRSxcbiAgICAgICAgIENPTlRFTlRTX0xJTktfUlVMRV9OQU1FLFxuICAgICAgICAgQkxPQ0tfTElTVElOR19SVUxFX05BTUUsXG4gICAgICAgICBCTE9DS19MSVNUSU5HX0VORF9SVUxFX05BTUUsXG4gICAgICAgICBCTE9DS19MSVNUSU5HX1NUQVJUX1JVTEVfTkFNRSxcbiAgICAgICAgIFBBR0VfTlVNQkVSX0RJUkVDVElWRV9SVUxFX05BTUUgfSBmcm9tIFwiLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgcnVsZU5hbWVUb0NsYXNzTWFwID0ge1xuICBbQ09NTUFfUlVMRV9OQU1FXTogQ29tbWFIVE1MTm9kZSxcbiAgW0FOQ0hPUl9SVUxFX05BTUVdOiBBbmNob3JIVE1MTm9kZSxcbiAgW0NMQVNTX05BTUVfUlVMRV9OQU1FXTogQ2xhc3NOYW1lSFRNTE5vZGUsXG4gIFtCTE9DS19MSU5FX1JVTEVfTkFNRV06IEJsb2NrTGluZUhUTUxOb2RlLFxuICBbT1JERVJFRF9JVEVNX1JVTEVfTkFNRV06IE9yZGVyZWRJdGVtSFRNTE5vZGUsXG4gIFtDT05URU5UU19MSU5LX1JVTEVfTkFNRV06IENvbnRlbnRzTGlua0hUTUxOb2RlLFxuICBbQkxPQ0tfTElTVElOR19SVUxFX05BTUVdOiBCbG9ja0xpc3RpbmdIVE1MTm9kZSxcbiAgW0JMT0NLX0xJU1RJTkdfRU5EX1JVTEVfTkFNRV06IEJsb2NrTGlzdGluZ0hFbmRIVE1MTm9kZSxcbiAgW0JMT0NLX0xJU1RJTkdfU1RBUlRfUlVMRV9OQU1FXTogQmxvY2tMaXN0aW5nSFN0YXJ0SFRNTE5vZGUsXG4gIFtQQUdFX05VTUJFUl9ESVJFQ1RJVkVfUlVMRV9OQU1FXTogUGFnZU51bWJlckRpcmVjdGl2ZUhUTUxOb2RlXG59XG5cbmV4cG9ydCBkZWZhdWx0IHJ1bGVOYW1lVG9DbGFzc01hcDtcbiJdLCJuYW1lcyI6WyJydWxlTmFtZVRvQ2xhc3NNYXAiLCJDT01NQV9SVUxFX05BTUUiLCJDb21tYUhUTUxOb2RlIiwiQU5DSE9SX1JVTEVfTkFNRSIsIkFuY2hvckhUTUxOb2RlIiwiQ0xBU1NfTkFNRV9SVUxFX05BTUUiLCJDbGFzc05hbWVIVE1MTm9kZSIsIkJMT0NLX0xJTkVfUlVMRV9OQU1FIiwiQmxvY2tMaW5lSFRNTE5vZGUiLCJPUkRFUkVEX0lURU1fUlVMRV9OQU1FIiwiT3JkZXJlZEl0ZW1IVE1MTm9kZSIsIkNPTlRFTlRTX0xJTktfUlVMRV9OQU1FIiwiQ29udGVudHNMaW5rSFRNTE5vZGUiLCJCTE9DS19MSVNUSU5HX1JVTEVfTkFNRSIsIkJsb2NrTGlzdGluZ0hUTUxOb2RlIiwiQkxPQ0tfTElTVElOR19FTkRfUlVMRV9OQU1FIiwiQmxvY2tMaXN0aW5nSEVuZEhUTUxOb2RlIiwiQkxPQ0tfTElTVElOR19TVEFSVF9SVUxFX05BTUUiLCJCbG9ja0xpc3RpbmdIU3RhcnRIVE1MTm9kZSIsIlBBR0VfTlVNQkVSX0RJUkVDVElWRV9SVUxFX05BTUUiLCJQYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQXFDQTs7O2VBQUE7Ozs0REFuQzBCOzZEQUNDO2dFQUNHO2dFQUNBOzhEQUNFO21FQUNDO21FQUNBO3NFQUNJO3dFQUNFO2lFQUNDO3lCQVdROzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBRXJCO0FBQTNCLElBQU1BLHNCQUFxQixXQUN6QixpQkFEeUIsTUFDeEJDLDBCQUFlLEVBQUdDLGNBQWEsR0FDaEMsaUJBRnlCLE1BRXhCQywyQkFBZ0IsRUFBR0MsZUFBYyxHQUNsQyxpQkFIeUIsTUFHeEJDLCtCQUFvQixFQUFHQyxrQkFBaUIsR0FDekMsaUJBSnlCLE1BSXhCQywrQkFBb0IsRUFBR0Msa0JBQWlCLEdBQ3pDLGlCQUx5QixNQUt4QkMsaUNBQXNCLEVBQUdDLGdCQUFtQixHQUM3QyxpQkFOeUIsTUFNeEJDLGtDQUF1QixFQUFHQyxxQkFBb0IsR0FDL0MsaUJBUHlCLE1BT3hCQyxrQ0FBdUIsRUFBR0MscUJBQW9CLEdBQy9DLGlCQVJ5QixNQVF4QkMsc0NBQTJCLEVBQUdDLHdCQUF3QixHQUN2RCxpQkFUeUIsTUFTeEJDLHdDQUE2QixFQUFHQywwQkFBMEIsR0FDM0QsaUJBVnlCLE1BVXhCQywwQ0FBK0IsRUFBR0MsbUJBQTJCLEdBVnJDO0lBYTNCLFdBQWVwQiJ9
|
package/lib/utilities/query.js
CHANGED
|
@@ -45,6 +45,9 @@ _export(exports, {
|
|
|
45
45
|
nodeQuery: function() {
|
|
46
46
|
return nodeQuery;
|
|
47
47
|
},
|
|
48
|
+
nodesFromNodeAndQueries: function() {
|
|
49
|
+
return nodesFromNodeAndQueries;
|
|
50
|
+
},
|
|
48
51
|
nodesQuery: function() {
|
|
49
52
|
return nodesQuery;
|
|
50
53
|
},
|
|
@@ -74,6 +77,14 @@ function nodesQuery(expression) {
|
|
|
74
77
|
return nodes;
|
|
75
78
|
};
|
|
76
79
|
}
|
|
80
|
+
function nodesFromNodeAndQueries(node, queries) {
|
|
81
|
+
var nodes = [];
|
|
82
|
+
queries.forEach(function(query) {
|
|
83
|
+
var queryNodes = query.execute(node);
|
|
84
|
+
push(nodes, queryNodes);
|
|
85
|
+
});
|
|
86
|
+
return nodes;
|
|
87
|
+
}
|
|
77
88
|
function footnoteMarkdownNodeFromNode(node) {
|
|
78
89
|
var footnoteMarkdownNode = nodeFromNodeAndQuery(node, footnoteMarkdownNodeQuery);
|
|
79
90
|
return footnoteMarkdownNode;
|
|
@@ -153,4 +164,4 @@ function nodesFromNodeAndQuery(node, query, nodes) {
|
|
|
153
164
|
return nodes;
|
|
154
165
|
}
|
|
155
166
|
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcXVlcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IFF1ZXJ5IH0gZnJvbSBcIm9jY2FtLXF1ZXJ5XCI7XG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuY29uc3QgeyBwdXNoIH0gPSBhcnJheVV0aWxpdGllcztcblxuY29uc3QgZm9vdG5vdGVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL3N1YkRpdmlzaW9uL2Zvb3Rub3RlXCIpLFxuICAgICAgaW5kZXhEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL3N1YkRpdmlzaW9uL2RpcmVjdGl2ZXMvaW5kZXhEaXJlY3RpdmVcIiksXG4gICAgICBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL2RpdmlzaW9uL3N1YkRpdmlzaW9uL2RpcmVjdGl2ZXMvaWdub3JlRGlyZWN0aXZlXCIpLFxuICAgICAgY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL3N1YkRpdmlzaW9uL2RpcmVjdGl2ZXMvY29udGVudHNEaXJlY3RpdmVcIiksXG4gICAgICBmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL3N1YkRpdmlzaW9uL2RpcmVjdGl2ZXMvZm9vdG5vdGVzRGlyZWN0aXZlXCIpLFxuICAgICAgcGFnZU51bWJlckRpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb25TdHJpbmcoXCIvL2RpcmVjdGl2ZXMvcGFnZU51bWJlclwiKSwgIC8vL1xuICAgICAgaGVhZGluZ01hcmtkb3duTm9kZXNRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL2RpdmlzaW9uL3N1YkRpdmlzaW9uL3ByaW1hcnlIZWFkaW5nfHNlY29uZGFyeUhlYWRpbmd8dGVydGlhcnlIZWFkaW5nfHF1YXRlcm5hcnlIZWFkaW5nXCIpLCAgLy8vXG4gICAgICBmb290bm90ZXNNYXJrZG93bk5vZGVzUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvblN0cmluZyhcIi8vZm9vdG5vdGV8Zm9vdG5vdGVMaW5rfGZvb3Rub3Rlc0RpcmVjdGl2ZVwiKSwgLy8vXG4gICAgICBzdWJEaXZpc2lvbk1hcmtkb3duTm9kZXNRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL2RpdmlzaW9uL3N1YkRpdmlzaW9uXCIpLFxuICAgICAgZm9vdG5vdGVMaW5rTWFya2Rvd25Ob2Rlc1F1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb25TdHJpbmcoXCIvL2Zvb3Rub3RlTGlua1wiKSxcbiAgICAgIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc1F1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb25TdHJpbmcoXCIvc3ViRGl2aXNpb24vZGlyZWN0aXZlcy9lbWJlZERpcmVjdGl2ZVwiKSxcbiAgICAgIGluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvblN0cmluZyhcIi9zdWJEaXZpc2lvbi9kaXJlY3RpdmVzL2luY2x1ZGVEaXJlY3RpdmVcIik7XG5cbmV4cG9ydCBmdW5jdGlvbiBub2RlUXVlcnkoZXhwcmVzc2lvbikge1xuICBjb25zdCBxdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKGV4cHJlc3Npb24pO1xuXG4gIHJldHVybiBmdW5jdGlvbihub2RlKSB7XG4gICAgY29uc3Qgbm9kZXMgPSBxdWVyeS5leGVjdXRlKG5vZGUpO1xuXG4gICAgbm9kZSA9IG5vZGVzLnNoaWZ0KCkgfHwgbnVsbDsgLy8vXG5cbiAgICByZXR1cm4gbm9kZTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9kZXNRdWVyeShleHByZXNzaW9uKSB7XG4gIGNvbnN0IHF1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb25TdHJpbmcoZXhwcmVzc2lvbik7XG5cbiAgcmV0dXJuIGZ1bmN0aW9uKG5vZGUpIHtcbiAgICBjb25zdCBub2RlcyA9IHF1ZXJ5LmV4ZWN1dGUobm9kZSk7XG5cbiAgICByZXR1cm4gbm9kZXM7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvb3Rub3RlTWFya2Rvd25Ob2RlRnJvbU5vZGUobm9kZSkge1xuICBjb25zdCBmb290bm90ZU1hcmtkb3duTm9kZSA9IG5vZGVGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGZvb3Rub3RlTWFya2Rvd25Ob2RlUXVlcnkpO1xuXG4gIHJldHVybiBmb290bm90ZU1hcmtkb3duTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluZGV4RGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUobm9kZSkge1xuICBjb25zdCBpbmRleERpcmVjdGl2ZU1hcmtkb3duTm9kZSA9IG5vZGVGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGluZGV4RGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkpO1xuXG4gIHJldHVybiBpbmRleERpcmVjdGl2ZU1hcmtkb3duTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlnbm9yZURpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlID0gbm9kZUZyb21Ob2RlQW5kUXVlcnkobm9kZSwgaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkpO1xuXG4gIHJldHVybiBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGUgPSBub2RlRnJvbU5vZGVBbmRRdWVyeShub2RlLCBjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5KTtcblxuICByZXR1cm4gY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZShub2RlKSB7XG4gIGNvbnN0IGZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZSA9IG5vZGVGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5KTtcblxuICByZXR1cm4gZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFnZU51bWJlckRpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgcGFnZU51bWJlckRpcmVjdGl2ZU1hcmtkb3duTm9kZSA9IG5vZGVGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIHBhZ2VOdW1iZXJEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSk7XG5cbiAgcmV0dXJuIHBhZ2VOdW1iZXJEaXJlY3RpdmVNYXJrZG93bk5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoZWFkaW5nTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKG5vZGUsIGhlYWRpbmdNYXJrZG93bk5vZGVzID0gW10pIHtcbiAgbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGhlYWRpbmdNYXJrZG93bk5vZGVzUXVlcnksIGhlYWRpbmdNYXJrZG93bk5vZGVzKTtcblxuICByZXR1cm4gaGVhZGluZ01hcmtkb3duTm9kZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb290bm90ZXNNYXJrZG93bk5vZGVzRnJvbU5vZGUobm9kZSwgZm9vdG5vdGVzTWFya2Rvd25Ob2RlcyA9IFtdKSB7XG4gIG5vZGVzRnJvbU5vZGVBbmRRdWVyeShub2RlLCBmb290bm90ZXNNYXJrZG93bk5vZGVzUXVlcnksIGZvb3Rub3Rlc01hcmtkb3duTm9kZXMpO1xuXG4gIHJldHVybiBmb290bm90ZXNNYXJrZG93bk5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc3ViRGl2aXNpb25NYXJrZG93bk5vZGVzRnJvbU5vZGUobm9kZSwgc3ViRGl2aXNpb25NYXJrZG93bk5vZGVzID0gW10pIHtcbiAgbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIHN1YkRpdmlzaW9uTWFya2Rvd25Ob2Rlc1F1ZXJ5LCBzdWJEaXZpc2lvbk1hcmtkb3duTm9kZXMpO1xuXG4gIHJldHVybiBzdWJEaXZpc2lvbk1hcmtkb3duTm9kZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb290bm90ZUxpbmtNYXJrZG93bk5vZGVzRnJvbU5vZGUobm9kZSwgbGlua01hcmtkb3duTm9kZXMgPSBbXSkge1xuICBub2Rlc0Zyb21Ob2RlQW5kUXVlcnkobm9kZSwgZm9vdG5vdGVMaW5rTWFya2Rvd25Ob2Rlc1F1ZXJ5LCBsaW5rTWFya2Rvd25Ob2Rlcyk7XG5cbiAgcmV0dXJuIGxpbmtNYXJrZG93bk5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZW1iZWREaXJlY3RpdmVNYXJrZG93bk5vZGVzRnJvbU5vZGUobm9kZSwgZW1iZWREaXJlY3RpdmVNYXJrZG93bk5vZGVzID0gW10pIHtcbiAgbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc1F1ZXJ5LCBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXMpO1xuXG4gIHJldHVybiBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlKG5vZGUsIGluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzID0gW10pIHtcbiAgbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzUXVlcnksIGluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzKTtcblxuICByZXR1cm4gaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXM7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgZm9vdG5vdGVNYXJrZG93bk5vZGVGcm9tTm9kZSxcbiAgaW5kZXhEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSxcbiAgaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUsXG4gIGNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUsXG4gIGZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlLFxuICBwYWdlTnVtYmVyRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUsXG4gIGhlYWRpbmdNYXJrZG93bk5vZGVzRnJvbU5vZGUsXG4gIGZvb3Rub3Rlc01hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgc3ViRGl2aXNpb25NYXJrZG93bk5vZGVzRnJvbU5vZGUsXG4gIGZvb3Rub3RlTGlua01hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgZW1iZWREaXJlY3RpdmVNYXJrZG93bk5vZGVzRnJvbU5vZGUsXG4gIGluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzRnJvbU5vZGVcbn07XG5cbmZ1bmN0aW9uIG5vZGVGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIHF1ZXJ5KSB7XG4gIGNvbnN0IHF1ZXJ5Tm9kZXMgPSBxdWVyeS5leGVjdXRlKG5vZGUpLFxuICAgICAgICBxdWVyeU5vZGUgPSBxdWVyeU5vZGVzLnNoaWZ0KCkgfHwgbnVsbDtcblxuICBub2RlID0gcXVlcnlOb2RlOyAgLy8vXG5cbiAgcmV0dXJuIG5vZGU7XG59XG5cbmZ1bmN0aW9uIG5vZGVzRnJvbU5vZGVBbmRRdWVyeShub2RlLCBxdWVyeSwgbm9kZXMpIHtcbiAgY29uc3QgcXVlcnlOb2RlcyA9IHF1ZXJ5LmV4ZWN1dGUobm9kZSk7XG5cbiAgcHVzaChub2RlcywgcXVlcnlOb2Rlcyk7XG5cbiAgcmV0dXJuIG5vZGVzO1xufVxuIl0sIm5hbWVzIjpbImNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUiLCJlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZSIsImZvb3Rub3RlTGlua01hcmtkb3duTm9kZXNGcm9tTm9kZSIsImZvb3Rub3RlTWFya2Rvd25Ob2RlRnJvbU5vZGUiLCJmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSIsImZvb3Rub3Rlc01hcmtkb3duTm9kZXNGcm9tTm9kZSIsImhlYWRpbmdNYXJrZG93bk5vZGVzRnJvbU5vZGUiLCJpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSIsImluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzRnJvbU5vZGUiLCJpbmRleERpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlIiwibm9kZVF1ZXJ5Iiwibm9kZXNRdWVyeSIsInBhZ2VOdW1iZXJEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSIsInN1YkRpdmlzaW9uTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwicHVzaCIsImFycmF5VXRpbGl0aWVzIiwiZm9vdG5vdGVNYXJrZG93bk5vZGVRdWVyeSIsIlF1ZXJ5IiwiZnJvbUV4cHJlc3Npb25TdHJpbmciLCJpbmRleERpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5IiwiaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkiLCJjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5IiwiZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkiLCJwYWdlTnVtYmVyRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkiLCJoZWFkaW5nTWFya2Rvd25Ob2Rlc1F1ZXJ5IiwiZm9vdG5vdGVzTWFya2Rvd25Ob2Rlc1F1ZXJ5Iiwic3ViRGl2aXNpb25NYXJrZG93bk5vZGVzUXVlcnkiLCJmb290bm90ZUxpbmtNYXJrZG93bk5vZGVzUXVlcnkiLCJlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNRdWVyeSIsImluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzUXVlcnkiLCJleHByZXNzaW9uIiwicXVlcnkiLCJub2RlIiwibm9kZXMiLCJleGVjdXRlIiwic2hpZnQiLCJmb290bm90ZU1hcmtkb3duTm9kZSIsIm5vZGVGcm9tTm9kZUFuZFF1ZXJ5IiwiaW5kZXhEaXJlY3RpdmVNYXJrZG93bk5vZGUiLCJpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGUiLCJjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZSIsImZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZSIsInBhZ2VOdW1iZXJEaXJlY3RpdmVNYXJrZG93bk5vZGUiLCJoZWFkaW5nTWFya2Rvd25Ob2RlcyIsIm5vZGVzRnJvbU5vZGVBbmRRdWVyeSIsImZvb3Rub3Rlc01hcmtkb3duTm9kZXMiLCJzdWJEaXZpc2lvbk1hcmtkb3duTm9kZXMiLCJsaW5rTWFya2Rvd25Ob2RlcyIsImVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2RlcyIsImluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzIiwicXVlcnlOb2RlcyIsInF1ZXJ5Tm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBNERnQkEscUNBQXFDO2VBQXJDQTs7SUFzRGhCLE9BYUU7ZUFiRjs7SUFaZ0JDLG1DQUFtQztlQUFuQ0E7O0lBTkFDLGlDQUFpQztlQUFqQ0E7O0lBdERBQyw0QkFBNEI7ZUFBNUJBOztJQXdCQUMsc0NBQXNDO2VBQXRDQTs7SUFrQkFDLDhCQUE4QjtlQUE5QkE7O0lBTkFDLDRCQUE0QjtlQUE1QkE7O0lBeEJBQyxtQ0FBbUM7ZUFBbkNBOztJQXNEQUMscUNBQXFDO2VBQXJDQTs7SUE1REFDLGtDQUFrQztlQUFsQ0E7O0lBNUJBQyxTQUFTO2VBQVRBOztJQVlBQyxVQUFVO2VBQVZBOztJQXdDQUMsdUNBQXVDO2VBQXZDQTs7SUFrQkFDLGdDQUFnQztlQUFoQ0E7OzswQkF4Rk07eUJBQ1M7QUFFL0IsSUFBTSxBQUFF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
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcXVlcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IFF1ZXJ5IH0gZnJvbSBcIm9jY2FtLXF1ZXJ5XCI7XG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuY29uc3QgeyBwdXNoIH0gPSBhcnJheVV0aWxpdGllcztcblxuY29uc3QgZm9vdG5vdGVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL3N1YkRpdmlzaW9uL2Zvb3Rub3RlXCIpLFxuICAgICAgaW5kZXhEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL3N1YkRpdmlzaW9uL2RpcmVjdGl2ZXMvaW5kZXhEaXJlY3RpdmVcIiksXG4gICAgICBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL2RpdmlzaW9uL3N1YkRpdmlzaW9uL2RpcmVjdGl2ZXMvaWdub3JlRGlyZWN0aXZlXCIpLFxuICAgICAgY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL3N1YkRpdmlzaW9uL2RpcmVjdGl2ZXMvY29udGVudHNEaXJlY3RpdmVcIiksXG4gICAgICBmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL3N1YkRpdmlzaW9uL2RpcmVjdGl2ZXMvZm9vdG5vdGVzRGlyZWN0aXZlXCIpLFxuICAgICAgcGFnZU51bWJlckRpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb25TdHJpbmcoXCIvL2RpcmVjdGl2ZXMvcGFnZU51bWJlclwiKSwgIC8vL1xuICAgICAgaGVhZGluZ01hcmtkb3duTm9kZXNRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL2RpdmlzaW9uL3N1YkRpdmlzaW9uL3ByaW1hcnlIZWFkaW5nfHNlY29uZGFyeUhlYWRpbmd8dGVydGlhcnlIZWFkaW5nfHF1YXRlcm5hcnlIZWFkaW5nXCIpLCAgLy8vXG4gICAgICBmb290bm90ZXNNYXJrZG93bk5vZGVzUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvblN0cmluZyhcIi8vZm9vdG5vdGV8Zm9vdG5vdGVMaW5rfGZvb3Rub3Rlc0RpcmVjdGl2ZVwiKSwgLy8vXG4gICAgICBzdWJEaXZpc2lvbk1hcmtkb3duTm9kZXNRdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKFwiL2RpdmlzaW9uL3N1YkRpdmlzaW9uXCIpLFxuICAgICAgZm9vdG5vdGVMaW5rTWFya2Rvd25Ob2Rlc1F1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb25TdHJpbmcoXCIvL2Zvb3Rub3RlTGlua1wiKSxcbiAgICAgIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc1F1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb25TdHJpbmcoXCIvc3ViRGl2aXNpb24vZGlyZWN0aXZlcy9lbWJlZERpcmVjdGl2ZVwiKSxcbiAgICAgIGluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzUXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvblN0cmluZyhcIi9zdWJEaXZpc2lvbi9kaXJlY3RpdmVzL2luY2x1ZGVEaXJlY3RpdmVcIik7XG5cbmV4cG9ydCBmdW5jdGlvbiBub2RlUXVlcnkoZXhwcmVzc2lvbikge1xuICBjb25zdCBxdWVyeSA9IFF1ZXJ5LmZyb21FeHByZXNzaW9uU3RyaW5nKGV4cHJlc3Npb24pO1xuXG4gIHJldHVybiBmdW5jdGlvbihub2RlKSB7XG4gICAgY29uc3Qgbm9kZXMgPSBxdWVyeS5leGVjdXRlKG5vZGUpO1xuXG4gICAgbm9kZSA9IG5vZGVzLnNoaWZ0KCkgfHwgbnVsbDsgLy8vXG5cbiAgICByZXR1cm4gbm9kZTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9kZXNRdWVyeShleHByZXNzaW9uKSB7XG4gIGNvbnN0IHF1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb25TdHJpbmcoZXhwcmVzc2lvbik7XG5cbiAgcmV0dXJuIGZ1bmN0aW9uKG5vZGUpIHtcbiAgICBjb25zdCBub2RlcyA9IHF1ZXJ5LmV4ZWN1dGUobm9kZSk7XG5cbiAgICByZXR1cm4gbm9kZXM7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vZGVzRnJvbU5vZGVBbmRRdWVyaWVzKG5vZGUsIHF1ZXJpZXMpIHtcbiAgY29uc3Qgbm9kZXMgPSBbXTtcblxuICBxdWVyaWVzLmZvckVhY2goKHF1ZXJ5KSA9PiB7XG4gICAgY29uc3QgcXVlcnlOb2RlcyA9IHF1ZXJ5LmV4ZWN1dGUobm9kZSk7XG5cbiAgICBwdXNoKG5vZGVzLCBxdWVyeU5vZGVzKTtcbiAgfSk7XG5cbiAgcmV0dXJuIG5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9vdG5vdGVNYXJrZG93bk5vZGVGcm9tTm9kZShub2RlKSB7XG4gIGNvbnN0IGZvb3Rub3RlTWFya2Rvd25Ob2RlID0gbm9kZUZyb21Ob2RlQW5kUXVlcnkobm9kZSwgZm9vdG5vdGVNYXJrZG93bk5vZGVRdWVyeSk7XG5cbiAgcmV0dXJuIGZvb3Rub3RlTWFya2Rvd25Ob2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5kZXhEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZShub2RlKSB7XG4gIGNvbnN0IGluZGV4RGlyZWN0aXZlTWFya2Rvd25Ob2RlID0gbm9kZUZyb21Ob2RlQW5kUXVlcnkobm9kZSwgaW5kZXhEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSk7XG5cbiAgcmV0dXJuIGluZGV4RGlyZWN0aXZlTWFya2Rvd25Ob2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUobm9kZSkge1xuICBjb25zdCBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGUgPSBub2RlRnJvbU5vZGVBbmRRdWVyeShub2RlLCBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSk7XG5cbiAgcmV0dXJuIGlnbm9yZURpcmVjdGl2ZU1hcmtkb3duTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUobm9kZSkge1xuICBjb25zdCBjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZSA9IG5vZGVGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGNvbnRlbnRzRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkpO1xuXG4gIHJldHVybiBjb250ZW50c0RpcmVjdGl2ZU1hcmtkb3duTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlID0gbm9kZUZyb21Ob2RlQW5kUXVlcnkobm9kZSwgZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlUXVlcnkpO1xuXG4gIHJldHVybiBmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYWdlTnVtYmVyRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUobm9kZSkge1xuICBjb25zdCBwYWdlTnVtYmVyRGlyZWN0aXZlTWFya2Rvd25Ob2RlID0gbm9kZUZyb21Ob2RlQW5kUXVlcnkobm9kZSwgcGFnZU51bWJlckRpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5KTtcblxuICByZXR1cm4gcGFnZU51bWJlckRpcmVjdGl2ZU1hcmtkb3duTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhlYWRpbmdNYXJrZG93bk5vZGVzRnJvbU5vZGUobm9kZSwgaGVhZGluZ01hcmtkb3duTm9kZXMgPSBbXSkge1xuICBub2Rlc0Zyb21Ob2RlQW5kUXVlcnkobm9kZSwgaGVhZGluZ01hcmtkb3duTm9kZXNRdWVyeSwgaGVhZGluZ01hcmtkb3duTm9kZXMpO1xuXG4gIHJldHVybiBoZWFkaW5nTWFya2Rvd25Ob2Rlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvb3Rub3Rlc01hcmtkb3duTm9kZXNGcm9tTm9kZShub2RlLCBmb290bm90ZXNNYXJrZG93bk5vZGVzID0gW10pIHtcbiAgbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIGZvb3Rub3Rlc01hcmtkb3duTm9kZXNRdWVyeSwgZm9vdG5vdGVzTWFya2Rvd25Ob2Rlcyk7XG5cbiAgcmV0dXJuIGZvb3Rub3Rlc01hcmtkb3duTm9kZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdWJEaXZpc2lvbk1hcmtkb3duTm9kZXNGcm9tTm9kZShub2RlLCBzdWJEaXZpc2lvbk1hcmtkb3duTm9kZXMgPSBbXSkge1xuICBub2Rlc0Zyb21Ob2RlQW5kUXVlcnkobm9kZSwgc3ViRGl2aXNpb25NYXJrZG93bk5vZGVzUXVlcnksIHN1YkRpdmlzaW9uTWFya2Rvd25Ob2Rlcyk7XG5cbiAgcmV0dXJuIHN1YkRpdmlzaW9uTWFya2Rvd25Ob2Rlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvb3Rub3RlTGlua01hcmtkb3duTm9kZXNGcm9tTm9kZShub2RlLCBsaW5rTWFya2Rvd25Ob2RlcyA9IFtdKSB7XG4gIG5vZGVzRnJvbU5vZGVBbmRRdWVyeShub2RlLCBmb290bm90ZUxpbmtNYXJrZG93bk5vZGVzUXVlcnksIGxpbmtNYXJrZG93bk5vZGVzKTtcblxuICByZXR1cm4gbGlua01hcmtkb3duTm9kZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZShub2RlLCBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXMgPSBbXSkge1xuICBub2Rlc0Zyb21Ob2RlQW5kUXVlcnkobm9kZSwgZW1iZWREaXJlY3RpdmVNYXJrZG93bk5vZGVzUXVlcnksIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlcyk7XG5cbiAgcmV0dXJuIGVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluY2x1ZGVEaXJlY3RpdmVNYXJrZG93bk5vZGVzRnJvbU5vZGUobm9kZSwgaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXMgPSBbXSkge1xuICBub2Rlc0Zyb21Ob2RlQW5kUXVlcnkobm9kZSwgaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXNRdWVyeSwgaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXMpO1xuXG4gIHJldHVybiBpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2Rlcztcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBmb290bm90ZU1hcmtkb3duTm9kZUZyb21Ob2RlLFxuICBpbmRleERpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlLFxuICBpZ25vcmVEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSxcbiAgY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSxcbiAgZm9vdG5vdGVzRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUsXG4gIHBhZ2VOdW1iZXJEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSxcbiAgaGVhZGluZ01hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgZm9vdG5vdGVzTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlLFxuICBzdWJEaXZpc2lvbk1hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgZm9vdG5vdGVMaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlLFxuICBlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZSxcbiAgaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZVxufTtcblxuZnVuY3Rpb24gbm9kZUZyb21Ob2RlQW5kUXVlcnkobm9kZSwgcXVlcnkpIHtcbiAgY29uc3QgcXVlcnlOb2RlcyA9IHF1ZXJ5LmV4ZWN1dGUobm9kZSksXG4gICAgICAgIHF1ZXJ5Tm9kZSA9IHF1ZXJ5Tm9kZXMuc2hpZnQoKSB8fCBudWxsO1xuXG4gIG5vZGUgPSBxdWVyeU5vZGU7ICAvLy9cblxuICByZXR1cm4gbm9kZTtcbn1cblxuZnVuY3Rpb24gbm9kZXNGcm9tTm9kZUFuZFF1ZXJ5KG5vZGUsIHF1ZXJ5LCBub2Rlcykge1xuICBjb25zdCBxdWVyeU5vZGVzID0gcXVlcnkuZXhlY3V0ZShub2RlKTtcblxuICBwdXNoKG5vZGVzLCBxdWVyeU5vZGVzKTtcblxuICByZXR1cm4gbm9kZXM7XG59XG4iXSwibmFtZXMiOlsiY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGVGcm9tTm9kZSIsImVtYmVkRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwiZm9vdG5vdGVMaW5rTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwiZm9vdG5vdGVNYXJrZG93bk5vZGVGcm9tTm9kZSIsImZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlIiwiZm9vdG5vdGVzTWFya2Rvd25Ob2Rlc0Zyb21Ob2RlIiwiaGVhZGluZ01hcmtkb3duTm9kZXNGcm9tTm9kZSIsImlnbm9yZURpcmVjdGl2ZU1hcmtkb3duTm9kZUZyb21Ob2RlIiwiaW5jbHVkZURpcmVjdGl2ZU1hcmtkb3duTm9kZXNGcm9tTm9kZSIsImluZGV4RGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUiLCJub2RlUXVlcnkiLCJub2Rlc0Zyb21Ob2RlQW5kUXVlcmllcyIsIm5vZGVzUXVlcnkiLCJwYWdlTnVtYmVyRGlyZWN0aXZlTWFya2Rvd25Ob2RlRnJvbU5vZGUiLCJzdWJEaXZpc2lvbk1hcmtkb3duTm9kZXNGcm9tTm9kZSIsInB1c2giLCJhcnJheVV0aWxpdGllcyIsImZvb3Rub3RlTWFya2Rvd25Ob2RlUXVlcnkiLCJRdWVyeSIsImZyb21FeHByZXNzaW9uU3RyaW5nIiwiaW5kZXhEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSIsImlnbm9yZURpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5IiwiY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGVRdWVyeSIsImZvb3Rub3Rlc0RpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5IiwicGFnZU51bWJlckRpcmVjdGl2ZU1hcmtkb3duTm9kZVF1ZXJ5IiwiaGVhZGluZ01hcmtkb3duTm9kZXNRdWVyeSIsImZvb3Rub3Rlc01hcmtkb3duTm9kZXNRdWVyeSIsInN1YkRpdmlzaW9uTWFya2Rvd25Ob2Rlc1F1ZXJ5IiwiZm9vdG5vdGVMaW5rTWFya2Rvd25Ob2Rlc1F1ZXJ5IiwiZW1iZWREaXJlY3RpdmVNYXJrZG93bk5vZGVzUXVlcnkiLCJpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2Rlc1F1ZXJ5IiwiZXhwcmVzc2lvbiIsInF1ZXJ5Iiwibm9kZSIsIm5vZGVzIiwiZXhlY3V0ZSIsInNoaWZ0IiwicXVlcmllcyIsImZvckVhY2giLCJxdWVyeU5vZGVzIiwiZm9vdG5vdGVNYXJrZG93bk5vZGUiLCJub2RlRnJvbU5vZGVBbmRRdWVyeSIsImluZGV4RGlyZWN0aXZlTWFya2Rvd25Ob2RlIiwiaWdub3JlRGlyZWN0aXZlTWFya2Rvd25Ob2RlIiwiY29udGVudHNEaXJlY3RpdmVNYXJrZG93bk5vZGUiLCJmb290bm90ZXNEaXJlY3RpdmVNYXJrZG93bk5vZGUiLCJwYWdlTnVtYmVyRGlyZWN0aXZlTWFya2Rvd25Ob2RlIiwiaGVhZGluZ01hcmtkb3duTm9kZXMiLCJub2Rlc0Zyb21Ob2RlQW5kUXVlcnkiLCJmb290bm90ZXNNYXJrZG93bk5vZGVzIiwic3ViRGl2aXNpb25NYXJrZG93bk5vZGVzIiwibGlua01hcmtkb3duTm9kZXMiLCJlbWJlZERpcmVjdGl2ZU1hcmtkb3duTm9kZXMiLCJpbmNsdWRlRGlyZWN0aXZlTWFya2Rvd25Ob2RlcyIsInF1ZXJ5Tm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBd0VnQkEscUNBQXFDO2VBQXJDQTs7SUFzRGhCLE9BYUU7ZUFiRjs7SUFaZ0JDLG1DQUFtQztlQUFuQ0E7O0lBTkFDLGlDQUFpQztlQUFq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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "highmark-markdown",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.170",
|
|
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.",
|
|
@@ -11,10 +11,10 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"necessary": "^14.3.2",
|
|
14
|
-
"occam-dom": "^5.0.
|
|
14
|
+
"occam-dom": "^5.0.10",
|
|
15
15
|
"occam-lexers": "^23.0.47",
|
|
16
|
-
"occam-parsers": "^23.0.
|
|
17
|
-
"occam-query": "^4.1.
|
|
16
|
+
"occam-parsers": "^23.0.117",
|
|
17
|
+
"occam-query": "^4.1.75"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"@swc/core": "^1.5.6",
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import HTMLNode from "./node/html";
|
|
4
|
+
import TopmostHTMLNode from "./node/html/topmost";
|
|
5
|
+
import ruleNameToClassMap from "./ruleNameToClassMap";
|
|
6
|
+
|
|
7
|
+
export default function ClassFromOuterNode(outerNode) {
|
|
8
|
+
let Class;
|
|
9
|
+
|
|
10
|
+
if (outerNode === null) {
|
|
11
|
+
Class = TopmostHTMLNode;
|
|
12
|
+
} else {
|
|
13
|
+
const nonTerminalNode = outerNode, ///
|
|
14
|
+
ruleName = nonTerminalNode.getRuleName();
|
|
15
|
+
|
|
16
|
+
Class = ruleNameToClassMap[ruleName] || HTMLNode;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return Class;
|
|
20
|
+
}
|
package/src/constants.js
CHANGED
package/src/example/constants.js
CHANGED
|
@@ -1,16 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import withStyle from "easy-with-style"; ///
|
|
4
4
|
|
|
5
|
+
import ContainerDiv from "../../div/container";
|
|
5
6
|
import MarkdownTextarea from "../../textarea/markdown";
|
|
6
|
-
import
|
|
7
|
+
import OuterMarkdownParseTreeTextarea from "../../textarea/parseTree/markdown/outer";
|
|
8
|
+
|
|
9
|
+
import { FLEX } from "../../../constants";
|
|
10
|
+
|
|
11
|
+
class MarkdownContainerDiv extends ContainerDiv {
|
|
12
|
+
show() {
|
|
13
|
+
const displayStyle = FLEX;
|
|
14
|
+
|
|
15
|
+
this.display(displayStyle);
|
|
16
|
+
}
|
|
7
17
|
|
|
8
|
-
export default class MarkdownContainerDiv extends ContainerDiv {
|
|
9
18
|
childElements() {
|
|
10
19
|
return ([
|
|
11
20
|
|
|
12
21
|
<MarkdownTextarea onKeyUp={this.keyUpHandler} />,
|
|
13
|
-
<
|
|
22
|
+
<OuterMarkdownParseTreeTextarea/>
|
|
14
23
|
|
|
15
24
|
]);
|
|
16
25
|
}
|
|
@@ -31,3 +40,13 @@ export default class MarkdownContainerDiv extends ContainerDiv {
|
|
|
31
40
|
className: "markdown"
|
|
32
41
|
};
|
|
33
42
|
}
|
|
43
|
+
|
|
44
|
+
export default withStyle(MarkdownContainerDiv)`
|
|
45
|
+
|
|
46
|
+
gap: 1rem;
|
|
47
|
+
height: 65rem;
|
|
48
|
+
display: flex;
|
|
49
|
+
flex-direction: column;
|
|
50
|
+
justify-content: space-between;
|
|
51
|
+
|
|
52
|
+
`;
|
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import withStyle from "easy-with-style"; ///
|
|
4
4
|
|
|
5
|
+
import ContainerDiv from "../../div/container";
|
|
5
6
|
import MarkdownStyleTextarea from "../../textarea/markdownStyle";
|
|
6
7
|
import MarkdownStyleParseTeeTextarea from "../../textarea/parseTree/markdownStyle";
|
|
7
8
|
|
|
8
|
-
|
|
9
|
+
import { FLEX } from "../../../constants";
|
|
10
|
+
|
|
11
|
+
class MarkdownStyleContainerDiv extends ContainerDiv {
|
|
12
|
+
show() {
|
|
13
|
+
const displayStyle = FLEX;
|
|
14
|
+
|
|
15
|
+
this.display(displayStyle);
|
|
16
|
+
}
|
|
17
|
+
|
|
9
18
|
childElements() {
|
|
10
19
|
return ([
|
|
11
20
|
|
|
@@ -33,3 +42,13 @@ export default class MarkdownStyleContainerDiv extends ContainerDiv {
|
|
|
33
42
|
className: "markdown-style"
|
|
34
43
|
};
|
|
35
44
|
}
|
|
45
|
+
|
|
46
|
+
export default withStyle(MarkdownStyleContainerDiv)`
|
|
47
|
+
|
|
48
|
+
gap: 1rem;
|
|
49
|
+
height: 65rem;
|
|
50
|
+
display: flex;
|
|
51
|
+
flex-direction: column;
|
|
52
|
+
justify-content: space-between;
|
|
53
|
+
|
|
54
|
+
`;
|
|
@@ -7,12 +7,9 @@ import ContainerDiv from "../../div/container";
|
|
|
7
7
|
|
|
8
8
|
class PreviewContainerDiv extends ContainerDiv {
|
|
9
9
|
childElements() {
|
|
10
|
-
const { onCustomPageUpdate } = this.properties,
|
|
11
|
-
pageUpdateCustomHandler = onCustomPageUpdate; ///
|
|
12
|
-
|
|
13
10
|
return ([
|
|
14
11
|
|
|
15
|
-
<PreviewDiv
|
|
12
|
+
<PreviewDiv/>
|
|
16
13
|
|
|
17
14
|
]);
|
|
18
15
|
}
|
|
@@ -28,15 +25,10 @@ class PreviewContainerDiv extends ContainerDiv {
|
|
|
28
25
|
hidePreviewContainerDiv
|
|
29
26
|
});
|
|
30
27
|
}
|
|
31
|
-
|
|
32
|
-
static ignoredProperties = [
|
|
33
|
-
"onCustomPageUpdate"
|
|
34
|
-
];
|
|
35
28
|
}
|
|
36
29
|
|
|
37
30
|
export default withStyle(PreviewContainerDiv)`
|
|
38
31
|
|
|
39
|
-
height: 56rem;
|
|
40
32
|
padding: 0;
|
|
41
33
|
position: relative;
|
|
42
34
|
|