highmark-markdown 0.0.417 → 0.0.418
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 +12 -3
- package/lib/defaultMarkdownStyle.js +2 -3
- package/lib/example/view.js +10 -22
- package/lib/example.js +2 -2
- package/package.json +1 -1
- package/src/defaultMarkdownStyle.js +0 -16
- package/src/example/view.js +21 -21
- package/src/example.js +1 -1
|
@@ -8,8 +8,7 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return _default;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var defaultMarkdownStyle = "\nsecondaryHeading,\ntertiaryHeading,\nquaternaryHeading,\norderedListItem,\nunorderedListItem {\n :first-child {\n margin-top: 0;\n }\n \n :last-child {\n margin-bottom: 0;\n }\n}\n";
|
|
12
|
-
var _defaultMarkdownStyle = '\ncolour: black;\npadding: 24pt;\nposition: relative;\nmin-height: 100%;\nfont-family: "Computer Modern Serif";\npadding-bottom: 64pt;\nbackground-colour: white;\n\nprimaryHeading {\n font-size: 32pt;\n}\n\nsecondaryHeading {\n font-size: 24pt;\n}\n\ntertiaryHeading {\n font-size: 17pt;\n}\n\nquaternaryHeading {\n font-size: 13pt;\n}\n\nprimaryHeading,\nsecondaryHeading,\ntertiaryHeading,\nquaternaryHeading {\n line-height: 1;\n font-weight: normal;\n font-family: "Computer Modern Sans";\n}\n\nparagraph,\nblockListing,\ninlineListing,\ntableHeadCell,\ntableBodyCell,\norderedListItem,\nunorderedListItem {\n font-size: 13pt;\n line-height: 20pt;\n}\n\ntable,\nparagraph,\norderedList,\nunorderedList,\nblockListing,\nprimaryHeading,\nsecondaryHeading,\ntertiaryHeading,\nquaternaryHeading {\n margin: 13pt 0 13pt 0;\n}\n\norderedListItem,\nunorderedListItem {\n margin: 6pt 0 6pt 0;\n margin-left: 13pt;\n}\n\ninlineListing {\n margin: 0;\n}\n\ntable,\nparagraph,\norderedList,\nunorderedList,\ninlineListing,\nblockListing,\nprimaryHeading,\nsecondaryHeading,\ntertiaryHeading,\nquaternaryHeading,\norderedListItem,\nunorderedListItem {\n :first-child {\n margin-top: 0;\n }\n \n :last-child {\n margin-bottom: 0;\n }\n}\n\nparagraph {\n text-align: justify;\n}\n\nblockListing,\ninlineListing {\n colour: white;\n background-colour: black;\n font-family: "Computer Modern Typewriter";\n}\n\nblockListing {\n display: block;\n padding: 6pt 12pt;\n overflow-x: scroll;\n}\n\ninlineListing {\n display: inline-block;\n padding: 0 3pt 0 3pt;\n}\n\nlink {\n font-size: 9pt;\n line-height: 13pt;\n margin-left: 3pt;\n vertical-align: super;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ntableHead {\n border-bottom: 2pt solid black;\n}\n\ntableBodyCell,\ntableHeadCell {\n padding: 13pt;\n}\n\nstrongText {\n font-weight: bold;\n}\n\nemphasisedText {\n font-style: italic;\n}\n\nstronglyEmphasisedText {\n font-style: italic;\n font-weight: bold;\n}\n\ncontentsList {\n list-style-type: none;\n\n contentsList {\n margin-left: 13pt;\n }\n}\n\ncontentsItem {\n margin: 13pt;\n margin-left: 0;\n}\n\ncontentsLink {\n font-size: 16pt;\n text-decoration: none;\n}\n\nfootnotesList {\n border-top: 1pt solid black;\n padding-top: 13pt;\n}\n\nfootnotesItem {\n font-size: 11pt;\n line-height: 17pt;\n margin-left: 13pt;\n \n paragraph {\n margin: 0;\n font-size: 11pt;\n line-height: 17pt;\n }\n}\n\npageNumber {\n left: 0;\n width: 100%;\n bottom: 0;\n display: block;\n position: absolute;\n font-size: 13pt;\n text-align: center;\n padding-bottom: 24pt;\n}\n\nerror {\n colour: red;\n font-size: 13pt;\n}\n';
|
|
11
|
+
var defaultMarkdownStyle = '\ncolour: black;\npadding: 24pt;\nposition: relative;\nmin-height: 100%;\nfont-family: "Computer Modern Serif";\npadding-bottom: 64pt;\nbackground-colour: white;\n\nprimaryHeading {\n font-size: 32pt;\n}\n\nsecondaryHeading {\n font-size: 24pt;\n}\n\ntertiaryHeading {\n font-size: 17pt;\n}\n\nquaternaryHeading {\n font-size: 13pt;\n}\n\nprimaryHeading,\nsecondaryHeading,\ntertiaryHeading,\nquaternaryHeading {\n line-height: 1;\n font-weight: normal;\n font-family: "Computer Modern Sans";\n}\n\nparagraph,\nblockListing,\ninlineListing,\ntableHeadCell,\ntableBodyCell,\norderedListItem,\nunorderedListItem {\n font-size: 13pt;\n line-height: 20pt;\n}\n\ntable,\nparagraph,\norderedList,\nunorderedList,\nblockListing,\nprimaryHeading,\nsecondaryHeading,\ntertiaryHeading,\nquaternaryHeading {\n margin: 13pt 0 13pt 0;\n}\n\norderedListItem,\nunorderedListItem {\n margin: 6pt 0 6pt 0;\n margin-left: 13pt;\n}\n\ninlineListing {\n margin: 0;\n}\n\ntable,\nparagraph,\norderedList,\nunorderedList,\ninlineListing,\nblockListing,\nprimaryHeading,\nsecondaryHeading,\ntertiaryHeading,\nquaternaryHeading,\norderedListItem,\nunorderedListItem {\n :first-child {\n margin-top: 0;\n }\n \n :last-child {\n margin-bottom: 0;\n }\n}\n\nparagraph {\n text-align: justify;\n}\n\nblockListing,\ninlineListing {\n colour: white;\n background-colour: black;\n font-family: "Computer Modern Typewriter";\n}\n\nblockListing {\n display: block;\n padding: 6pt 12pt;\n overflow-x: scroll;\n}\n\ninlineListing {\n display: inline-block;\n padding: 0 3pt 0 3pt;\n}\n\nlink {\n font-size: 9pt;\n line-height: 13pt;\n margin-left: 3pt;\n vertical-align: super;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ntableHead {\n border-bottom: 2pt solid black;\n}\n\ntableBodyCell,\ntableHeadCell {\n padding: 13pt;\n}\n\nstrongText {\n font-weight: bold;\n}\n\nemphasisedText {\n font-style: italic;\n}\n\nstronglyEmphasisedText {\n font-style: italic;\n font-weight: bold;\n}\n\ncontentsList {\n list-style-type: none;\n\n contentsList {\n margin-left: 13pt;\n }\n}\n\ncontentsItem {\n margin: 13pt;\n margin-left: 0;\n}\n\ncontentsLink {\n font-size: 16pt;\n text-decoration: none;\n}\n\nfootnotesList {\n border-top: 1pt solid black;\n padding-top: 13pt;\n}\n\nfootnotesItem {\n font-size: 11pt;\n line-height: 17pt;\n margin-left: 13pt;\n \n paragraph {\n margin: 0;\n font-size: 11pt;\n line-height: 17pt;\n }\n}\n\npageNumber {\n left: 0;\n width: 100%;\n bottom: 0;\n display: block;\n position: absolute;\n font-size: 13pt;\n text-align: center;\n padding-bottom: 24pt;\n}\n\nerror {\n colour: red;\n font-size: 13pt;\n}\n';
|
|
13
12
|
var _default = defaultMarkdownStyle;
|
|
14
13
|
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWZhdWx0TWFya2Rvd25TdHlsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgZGVmYXVsdE1hcmtkb3duU3R5bGUgPSBgXG5jb2xvdXI6IGJsYWNrO1xucGFkZGluZzogMjRwdDtcbnBvc2l0aW9uOiByZWxhdGl2ZTtcbm1pbi1oZWlnaHQ6IDEwMCU7XG5mb250LWZhbWlseTogXCJDb21wdXRlciBNb2Rlcm4gU2VyaWZcIjtcbnBhZGRpbmctYm90dG9tOiA2NHB0O1xuYmFja2dyb3VuZC1jb2xvdXI6IHdoaXRlO1xuXG5wcmltYXJ5SGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMzJwdDtcbn1cblxuc2Vjb25kYXJ5SGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMjRwdDtcbn1cblxudGVydGlhcnlIZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxN3B0O1xufVxuXG5xdWF0ZXJuYXJ5SGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMTNwdDtcbn1cblxucHJpbWFyeUhlYWRpbmcsXG5zZWNvbmRhcnlIZWFkaW5nLFxudGVydGlhcnlIZWFkaW5nLFxucXVhdGVybmFyeUhlYWRpbmcge1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1mYW1pbHk6IFwiQ29tcHV0ZXIgTW9kZXJuIFNhbnNcIjtcbn1cblxucGFyYWdyYXBoLFxuYmxvY2tMaXN0aW5nLFxuaW5saW5lTGlzdGluZyxcbnRhYmxlSGVhZENlbGwsXG50YWJsZUJvZHlDZWxsLFxub3JkZXJlZExpc3RJdGVtLFxudW5vcmRlcmVkTGlzdEl0ZW0ge1xuICBmb250LXNpemU6IDEzcHQ7XG4gIGxpbmUtaGVpZ2h0OiAyMHB0O1xufVxuXG50YWJsZSxcbnBhcmFncmFwaCxcbm9yZGVyZWRMaXN0LFxudW5vcmRlcmVkTGlzdCxcbmJsb2NrTGlzdGluZyxcbnByaW1hcnlIZWFkaW5nLFxuc2Vjb25kYXJ5SGVhZGluZyxcbnRlcnRpYXJ5SGVhZGluZyxcbnF1YXRlcm5hcnlIZWFkaW5nIHtcbiAgbWFyZ2luOiAxM3B0IDAgMTNwdCAwO1xufVxuXG5vcmRlcmVkTGlzdEl0ZW0sXG51bm9yZGVyZWRMaXN0SXRlbSB7XG4gIG1hcmdpbjogNnB0IDAgNnB0IDA7XG4gIG1hcmdpbi1sZWZ0OiAxM3B0O1xufVxuXG5pbmxpbmVMaXN0aW5nIHtcbiAgbWFyZ2luOiAwO1xufVxuXG50YWJsZSxcbnBhcmFncmFwaCxcbm9yZGVyZWRMaXN0LFxudW5vcmRlcmVkTGlzdCxcbmlubGluZUxpc3RpbmcsXG5ibG9ja0xpc3RpbmcsXG5wcmltYXJ5SGVhZGluZyxcbnNlY29uZGFyeUhlYWRpbmcsXG50ZXJ0aWFyeUhlYWRpbmcsXG5xdWF0ZXJuYXJ5SGVhZGluZyxcbm9yZGVyZWRMaXN0SXRlbSxcbnVub3JkZXJlZExpc3RJdGVtIHtcbiAgOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIFxuICA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5wYXJhZ3JhcGgge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG5ibG9ja0xpc3RpbmcsXG5pbmxpbmVMaXN0aW5nIHtcbiAgY29sb3VyOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvdXI6IGJsYWNrO1xuICBmb250LWZhbWlseTogXCJDb21wdXRlciBNb2Rlcm4gVHlwZXdyaXRlclwiO1xufVxuXG5ibG9ja0xpc3Rpbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNnB0IDEycHQ7XG4gIG92ZXJmbG93LXg6IHNjcm9sbDtcbn1cblxuaW5saW5lTGlzdGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAzcHQgMCAzcHQ7XG59XG5cbmxpbmsge1xuICBmb250LXNpemU6IDlwdDtcbiAgbGluZS1oZWlnaHQ6IDEzcHQ7XG4gIG1hcmdpbi1sZWZ0OiAzcHQ7XG4gIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG50YWJsZUhlYWQge1xuICBib3JkZXItYm90dG9tOiAycHQgc29saWQgYmxhY2s7XG59XG5cbnRhYmxlQm9keUNlbGwsXG50YWJsZUhlYWRDZWxsIHtcbiAgcGFkZGluZzogMTNwdDtcbn1cblxuc3Ryb25nVGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5lbXBoYXNpc2VkVGV4dCB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuc3Ryb25nbHlFbXBoYXNpc2VkVGV4dCB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmNvbnRlbnRzTGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICBjb250ZW50c0xpc3Qge1xuICAgIG1hcmdpbi1sZWZ0OiAxM3B0O1xuICB9XG59XG5cbmNvbnRlbnRzSXRlbSB7XG4gIG1hcmdpbjogMTNwdDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbmNvbnRlbnRzTGluayB7XG4gIGZvbnQtc2l6ZTogMTZwdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5mb290bm90ZXNMaXN0IHtcbiAgYm9yZGVyLXRvcDogMXB0IHNvbGlkIGJsYWNrO1xuICBwYWRkaW5nLXRvcDogMTNwdDtcbn1cblxuZm9vdG5vdGVzSXRlbSB7XG4gIGZvbnQtc2l6ZTogMTFwdDtcbiAgbGluZS1oZWlnaHQ6IDE3cHQ7XG4gIG1hcmdpbi1sZWZ0OiAxM3B0O1xuICBcbiAgcGFyYWdyYXBoIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxMXB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxN3B0O1xuICB9XG59XG5cbnBhZ2VOdW1iZXIge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IDEzcHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy1ib3R0b206IDI0cHQ7XG59XG5cbmVycm9yIHtcbiAgY29sb3VyOiByZWQ7XG4gIGZvbnQtc2l6ZTogMTNwdDtcbn1cbmA7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmF1bHRNYXJrZG93blN0eWxlO1xuIl0sIm5hbWVzIjpbImRlZmF1bHRNYXJrZG93blN0eWxlIl0sInJhbmdlTWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OyIsIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFxTUE7OztlQUFBOzs7QUFuTUEsSUFBTUEsdUJBQXdCO0lBbU05QixXQUFlQSJ9
|
package/lib/example/view.js
CHANGED
|
@@ -260,27 +260,15 @@ var View = /*#__PURE__*/ function(Element) {
|
|
|
260
260
|
{
|
|
261
261
|
key: "updateMarkdownStyle",
|
|
262
262
|
value: function updateMarkdownStyle() {
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
// tokens = lexer.tokenise(content),
|
|
273
|
-
// startRule = parser.getStartRule(),
|
|
274
|
-
// startOfContent = true,
|
|
275
|
-
// node = parser.parse(tokens, startRule, startOfContent);
|
|
276
|
-
//
|
|
277
|
-
// if (node !== null) {
|
|
278
|
-
// const parseTree = node.asParseTree(tokens);
|
|
279
|
-
//
|
|
280
|
-
// this.updateMarkdownStyleParseTreeTextarea(parseTree);
|
|
281
|
-
// } else {
|
|
282
|
-
// this.clearMarkdownStyleParseTreeTextarea();
|
|
283
|
-
// }
|
|
263
|
+
var markdownStyleElement = this.properties.markdownStyleElement, markdownStyle = this.getMarkdownStyle(), css = markdownStyleElement.update(markdownStyle);
|
|
264
|
+
this.setCSS(css);
|
|
265
|
+
var lexer = markdownStyleLexer, parser = markdownStyleParser, content = markdownStyle, tokens = lexer.tokenise(content), startRule = parser.getStartRule(), startOfContent = true, node = parser.parse(tokens, startRule, startOfContent);
|
|
266
|
+
if (node !== null) {
|
|
267
|
+
var parseTree = node.asParseTree(tokens);
|
|
268
|
+
this.updateMarkdownStyleParseTreeTextarea(parseTree);
|
|
269
|
+
} else {
|
|
270
|
+
this.clearMarkdownStyleParseTreeTextarea();
|
|
271
|
+
}
|
|
284
272
|
}
|
|
285
273
|
},
|
|
286
274
|
{
|
|
@@ -430,4 +418,4 @@ _define_property(View, "initialMarkdown", _importer.defaultContent) ///
|
|
|
430
418
|
_define_property(View, "initialMarkdownStyle", "width: 100%;\nposition: absolute;\nmin-height: 100%; \npadding-top: 5rem; \n");
|
|
431
419
|
var _default = (0, _easywithstyle.default)(View)(_templateObject());
|
|
432
420
|
|
|
433
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leGFtcGxlL3ZpZXcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwiZWFzeVwiO1xuaW1wb3J0IHsgTWFya2Rvd25MZXhlciwgTWFya2Rvd25QYXJzZXIsIE1hcmtkb3duU3R5bGVMZXhlciwgTWFya2Rvd25TdHlsZVBhcnNlciB9IGZyb20gXCIuLi9pbmRleFwiO1xuaW1wb3J0IHsgUm93RGl2LCBSb3dzRGl2LCBDb2x1bW5EaXYsIENvbHVtbnNEaXYsIFZlcnRpY2FsU3BsaXR0ZXJEaXYsIEhvcml6b250YWxTcGxpdHRlckRpdiB9IGZyb20gXCJlYXN5LWxheW91dFwiO1xuXG5pbXBvcnQgSFRNTERpdiBmcm9tIFwiLi92aWV3L2Rpdi9odG1sXCI7XG5pbXBvcnQgaW1wb3J0ZXIgZnJvbSBcIi4vaW1wb3J0ZXJcIjtcbmltcG9ydCBQcmV2aWV3RGl2IGZyb20gXCIuL3ZpZXcvZGl2L3ByZXZpZXdcIjtcbmltcG9ydCBTdWJIZWFkaW5nIGZyb20gXCIuL3ZpZXcvc3ViSGVhZGluZ1wiO1xuaW1wb3J0IENTU1RleHRhcmVhIGZyb20gXCIuL3ZpZXcvdGV4dGFyZWEvY3NzXCI7XG5pbXBvcnQgVGFiQnV0dG9uc0RpdiBmcm9tIFwiLi92aWV3L2Rpdi90YWJCdXR0b25zXCI7XG5pbXBvcnQgTGVmdFNpemVhYmxlRGl2IGZyb20gXCIuL3ZpZXcvZGl2L3NpemVhYmxlL2xlZnRcIjtcbmltcG9ydCBSaWdodFNpemVhYmxlRGl2IGZyb20gXCIuL3ZpZXcvZGl2L3NpemVhYmxlL3JpZ2h0XCI7XG5pbXBvcnQgTWFya2Rvd25Db250YWluZXJEaXYgZnJvbSBcIi4vdmlldy9kaXYvY29udGFpbmVyL21hcmtkb3duXCI7XG5pbXBvcnQgTWFya2Rvd25TdHlsZUNvbnRhaW5lckRpdiBmcm9tIFwiLi92aWV3L2Rpdi9jb250YWluZXIvbWFya2Rvd25TdHlsZVwiO1xuXG5pbXBvcnQgeyBwb3N0cHJvY2VzcyB9IGZyb20gXCIuLi91dGlsaXRpZXMvcHJvY2Vzc2luZ1wiO1xuaW1wb3J0IHsgZGVmYXVsdENvbnRlbnQgfSBmcm9tIFwiLi9pbXBvcnRlclwiO1xuaW1wb3J0IHsgTElORVNfUEVSX1BBR0UsIENPTlRFTlRTX0RFUFRILCBDSEFSQUNURVJTX1BFUl9MSU5FIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5cbmNvbnN0IG1hcmtkb3duTGV4ZXIgPSBNYXJrZG93bkxleGVyLmZyb21Ob3RoaW5nKCksXG4gICAgICBtYXJrZG93blBhcnNlciA9IE1hcmtkb3duUGFyc2VyLmZyb21Ob3RoaW5nKCksXG4gICAgICBtYXJrZG93blN0eWxlTGV4ZXIgPSBNYXJrZG93blN0eWxlTGV4ZXIuZnJvbU5vdGhpbmcoKSxcbiAgICAgIG1hcmtkb3duU3R5bGVQYXJzZXIgPSBNYXJrZG93blN0eWxlUGFyc2VyLmZyb21Ob3RoaW5nKCk7XG5cbmNsYXNzIFZpZXcgZXh0ZW5kcyBFbGVtZW50IHtcbiAgbWFya2Rvd25TdHlsZUN1c3RvbUhhbmRsZXIgPSAoZXZlbnQsIGVsZW1lbnQpID0+IHtcbiAgICB0aGlzLm1hcmtkb3duU3R5bGUoKTtcbiAgfVxuXG4gIHBhZ2VVcGRhdGVDdXN0b21IYW5kbGVyID0gKGV2ZW50LCBlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIHRoaXMuY2xlYXJQYWdlKCk7XG5cbiAgICB0aGlzLnVwZGF0ZVBhZ2UoaW5kZXgpO1xuICB9XG5cbiAgbWFya2Rvd25DdXN0b21IYW5kbGVyID0gKGV2ZW50LCBlbGVtZW50KSA9PiB7XG4gICAgdGhpcy5tYXJrZG93bigpO1xuICB9XG5cbiAga2V5VXBDdXN0b21IYW5kbGVyID0gKGV2ZW50LCBlbGVtZW50KSA9PiB7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHVwZGF0ZU1hcmtkb3duU3R5bGUoKSB7XG4gICAgLy8gY29uc3QgeyBtYXJrZG93blN0eWxlRWxlbWVudCB9ID0gdGhpcy5wcm9wZXJ0aWVzLFxuICAgIC8vICAgICAgIG1hcmtkb3duU3R5bGUgPSB0aGlzLmdldE1hcmtkb3duU3R5bGUoKSxcbiAgICAvLyAgICAgICBjc3MgPSBtYXJrZG93blN0eWxlRWxlbWVudC51cGRhdGUobWFya2Rvd25TdHlsZSk7XG4gICAgLy9cbiAgICAvLyB0aGlzLnNldENTUyhjc3MpO1xuICAgIC8vXG4gICAgLy8gY29uc3QgbGV4ZXIgPSBtYXJrZG93blN0eWxlTGV4ZXIsIC8vL1xuICAgIC8vICAgICAgIHBhcnNlciA9IG1hcmtkb3duU3R5bGVQYXJzZXIsIC8vL1xuICAgIC8vICAgICAgIGNvbnRlbnQgPSBtYXJrZG93blN0eWxlLCAgLy8vXG4gICAgLy8gICAgICAgdG9rZW5zID0gbGV4ZXIudG9rZW5pc2UoY29udGVudCksXG4gICAgLy8gICAgICAgc3RhcnRSdWxlID0gcGFyc2VyLmdldFN0YXJ0UnVsZSgpLFxuICAgIC8vICAgICAgIHN0YXJ0T2ZDb250ZW50ID0gdHJ1ZSxcbiAgICAvLyAgICAgICBub2RlID0gcGFyc2VyLnBhcnNlKHRva2Vucywgc3RhcnRSdWxlLCBzdGFydE9mQ29udGVudCk7XG4gICAgLy9cbiAgICAvLyBpZiAobm9kZSAhPT0gbnVsbCkge1xuICAgIC8vICAgY29uc3QgcGFyc2VUcmVlID0gbm9kZS5hc1BhcnNlVHJlZSh0b2tlbnMpO1xuICAgIC8vXG4gICAgLy8gICB0aGlzLnVwZGF0ZU1hcmtkb3duU3R5bGVQYXJzZVRyZWVUZXh0YXJlYShwYXJzZVRyZWUpO1xuICAgIC8vIH0gZWxzZSB7XG4gICAgLy8gICB0aGlzLmNsZWFyTWFya2Rvd25TdHlsZVBhcnNlVHJlZVRleHRhcmVhKCk7XG4gICAgLy8gfVxuICB9XG5cbiAgdXBkYXRlTWFya2Rvd24oKSB7XG4gICAgY29uc3QgbWFya2Rvd24gPSB0aGlzLmdldE1hcmtkb3duKCksXG4gICAgICAgICAgbGV4ZXIgPSBtYXJrZG93bkxleGVyLCAgLy8vXG4gICAgICAgICAgcGFyc2VyID0gIG1hcmtkb3duUGFyc2VyLCAvLy9cbiAgICAgICAgICBjb250ZW50ID0gbWFya2Rvd24sIC8vL1xuICAgICAgICAgIHN0YXJ0T2ZDb250ZW50ID0gdHJ1ZSxcbiAgICAgICAgICBzdGFydFJ1bGUgPSBwYXJzZXIuZ2V0U3RhcnRSdWxlKCksXG4gICAgICAgICAgdG9rZW5zID0gbGV4ZXIudG9rZW5pc2UoY29udGVudCksXG4gICAgICAgICAgbm9kZSA9IHBhcnNlci5wYXJzZSh0b2tlbnMsIHN0YXJ0UnVsZSwgc3RhcnRPZkNvbnRlbnQpO1xuXG4gICAgdGhpcy5zZXRUb2tlbnModG9rZW5zKTtcblxuICAgIGlmIChub2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBkaXZpc2lvbk1hcmtkb3duTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICAgIGNoYXJhY3RlcnNQZXJMaW5lID0gQ0hBUkFDVEVSU19QRVJfTElORSxcbiAgICAgICAgICAgIGNvbnRlbnRzRGVwdGggPSBDT05URU5UU19ERVBUSCxcbiAgICAgICAgICAgIGxpbmVzUGVyUGFnZSA9IExJTkVTX1BFUl9QQUdFLFxuICAgICAgICAgICAgY29udGV4dCA9IHtcbiAgICAgICAgICAgICAgdG9rZW5zLFxuICAgICAgICAgICAgICBpbXBvcnRlcixcbiAgICAgICAgICAgICAgbGluZXNQZXJQYWdlLFxuICAgICAgICAgICAgICBjb250ZW50c0RlcHRoLFxuICAgICAgICAgICAgICBjaGFyYWN0ZXJzUGVyTGluZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRpdmlzaW9uTWFya2Rvd25Ob2RlcyA9IHBvc3Rwcm9jZXNzKGRpdmlzaW9uTWFya2Rvd25Ob2RlLCBjb250ZXh0KTtcblxuICAgICAgdGhpcy5zZXREaXZpc2lvbk1hcmtkb3duTm9kZXMoZGl2aXNpb25NYXJrZG93bk5vZGVzKTtcblxuICAgICAgY29uc3QgaW5kZXggPSAwLFxuICAgICAgICAgICAgbGVuZ3RoID0gZGl2aXNpb25NYXJrZG93bk5vZGVzLmxlbmd0aCxcbiAgICAgICAgICAgIHBhcnNlVHJlZSA9IGRpdmlzaW9uTWFya2Rvd25Ob2RlLmFzUGFyc2VUcmVlKHRva2Vucyk7XG5cbiAgICAgIHRoaXMudXBkYXRlUGFnZShpbmRleCk7XG5cbiAgICAgIHRoaXMudXBkYXRlUGFnZUJ1dHRvbnNEaXYobGVuZ3RoKTtcblxuICAgICAgdGhpcy51cGRhdGVNYXJrZG93blBhcnNlVHJlZVRleHRhcmVhKHBhcnNlVHJlZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xlYXJQYWdlKCk7XG5cbiAgICAgIHRoaXMuY2xlYXJQYWdlQnV0dG9uc0RpdigpO1xuXG4gICAgICB0aGlzLmNsZWFyTWFya2Rvd25QYXJzZVRyZWVUZXh0YXJlYSgpO1xuXG4gICAgICBjb25zdCBkaXZpc2lvbk1hcmtkb3duTm9kZXMgPSBudWxsO1xuXG4gICAgICB0aGlzLnNldERpdmlzaW9uTWFya2Rvd25Ob2RlcyhkaXZpc2lvbk1hcmtkb3duTm9kZXMpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVBhZ2UoaW5kZXgpIHtcbiAgICBjb25zdCBkaXZpc2lvbk1hcmtkb3duTm9kZXMgPSB0aGlzLmdldERpdmlzaW9uTWFya2Rvd25Ob2RlcygpLFxuICAgICAgICAgIGRpdmlzaW9uTWFya2Rvd25Ob2RlID0gZGl2aXNpb25NYXJrZG93bk5vZGVzW2luZGV4XSxcbiAgICAgICAgICB0b2tlbnMgPSB0aGlzLmdldFRva2VucygpLFxuICAgICAgICAgIGNvbnRleHQgPSB7XG4gICAgICAgICAgICB0b2tlbnNcbiAgICAgICAgICB9LFxuICAgICAgICAgIGxlbmd0aCA9IG51bGwsXG4gICAgICAgICAgaHRtbCA9IGRpdmlzaW9uTWFya2Rvd25Ob2RlLmFzSFRNTChjb250ZXh0KSxcbiAgICAgICAgICBkb21FbGVtZW50ID0gZGl2aXNpb25NYXJrZG93bk5vZGUuY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KTtcblxuICAgIHRoaXMudXBkYXRlWE1QKGh0bWwpO1xuXG4gICAgdGhpcy51cGRhdGVQcmV2aWV3RGl2KGRvbUVsZW1lbnQpO1xuXG4gICAgdGhpcy51cGRhdGVQYWdlQnV0dG9uc0RpdihsZW5ndGgsIGluZGV4KTtcbiAgfVxuXG4gIGNsZWFyUGFnZSgpIHtcbiAgICB0aGlzLmNsZWFyWE1QKCk7XG5cbiAgICB0aGlzLmNsZWFyUHJldmlld0RpdigpO1xuICB9XG5cbiAgbWFya2Rvd25TdHlsZSgpIHtcbiAgICB0aGlzLmhpZGVNYXJrZG93bkNvbnRhaW5lckRpdigpO1xuICAgIHRoaXMuc2hvd01hcmtkb3duU3R5bGVDb250YWluZXJEaXYoKTtcbiAgfVxuXG4gIG1hcmtkb3duKCkge1xuICAgIHRoaXMuc2hvd01hcmtkb3duQ29udGFpbmVyRGl2KCk7XG4gICAgdGhpcy5oaWRlTWFya2Rvd25TdHlsZUNvbnRhaW5lckRpdigpO1xuICB9XG5cbiAgdXBkYXRlKCkge1xuICAgIHRoaXMudXBkYXRlTWFya2Rvd24oKTtcbiAgICB0aGlzLnVwZGF0ZU1hcmtkb3duU3R5bGUoKTtcbiAgfVxuXG4gIGdldFRva2VucygpIHtcbiAgICBjb25zdCB7IHRva2VucyB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gICAgcmV0dXJuIHRva2VucztcbiAgfVxuXG4gIHNldFRva2Vucyh0b2tlbnMpIHtcbiAgICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICAgIHRva2Vuc1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0RGl2aXNpb25NYXJrZG93bk5vZGVzKCkge1xuICAgIGNvbnN0IHsgZGl2aXNpb25NYXJrZG93bk5vZGVzIH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgICByZXR1cm4gZGl2aXNpb25NYXJrZG93bk5vZGVzO1xuICB9XG5cbiAgc2V0RGl2aXNpb25NYXJrZG93bk5vZGVzKGRpdmlzaW9uTWFya2Rvd25Ob2Rlcykge1xuICAgIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgICAgZGl2aXNpb25NYXJrZG93bk5vZGVzXG4gICAgfSk7XG4gIH1cblxuICBzZXRJbml0aWFsU3RhdGUoKSB7XG4gICAgY29uc3QgdG9rZW5zID0gbnVsbCxcbiAgICAgICAgICBkaXZpc2lvbk1hcmtkb3duTm9kZXMgPSBudWxsO1xuXG4gICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICB0b2tlbnMsXG4gICAgICBkaXZpc2lvbk1hcmtkb3duTm9kZXNcbiAgICB9KTtcbiAgfVxuXG4gIGNoaWxkRWxlbWVudHMoKSB7XG4gICAgcmV0dXJuIChcblxuICAgICAgPENvbHVtbnNEaXY+XG4gICAgICAgIDxMZWZ0U2l6ZWFibGVEaXY+XG4gICAgICAgICAgPFRhYkJ1dHRvbnNEaXYgb25DdXN0b21NYXJrZG93bj17dGhpcy5tYXJrZG93bkN1c3RvbUhhbmRsZXJ9IG9uQ3VzdG9tTWFya2Rvd25TdHlsZT17dGhpcy5tYXJrZG93blN0eWxlQ3VzdG9tSGFuZGxlcn0gLz5cbiAgICAgICAgICA8TWFya2Rvd25Db250YWluZXJEaXYgb25DdXN0b21LZXlVcD17dGhpcy5rZXlVcEN1c3RvbUhhbmRsZXJ9IC8+XG4gICAgICAgICAgPE1hcmtkb3duU3R5bGVDb250YWluZXJEaXYgb25DdXN0b21LZXlVcD17dGhpcy5rZXlVcEN1c3RvbUhhbmRsZXJ9IC8+XG4gICAgICAgIDwvTGVmdFNpemVhYmxlRGl2PlxuICAgICAgICA8VmVydGljYWxTcGxpdHRlckRpdi8+XG4gICAgICAgIDxDb2x1bW5EaXY+XG4gICAgICAgICAgPFJvd3NEaXY+XG4gICAgICAgICAgICA8UmlnaHRTaXplYWJsZURpdj5cbiAgICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgICAgSFRNTFxuICAgICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICAgIDxIVE1MRGl2Lz5cbiAgICAgICAgICAgIDwvUmlnaHRTaXplYWJsZURpdj5cbiAgICAgICAgICAgIDxIb3Jpem9udGFsU3BsaXR0ZXJEaXYvPlxuICAgICAgICAgICAgPFJvd0Rpdj5cbiAgICAgICAgICAgICAgPFJvd3NEaXY+XG4gICAgICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgICAgICBDU1NcbiAgICAgICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICAgICAgPENTU1RleHRhcmVhLz5cbiAgICAgICAgICAgICAgICA8U3ViSGVhZGluZz5cbiAgICAgICAgICAgICAgICAgIFByZXZpZXdcbiAgICAgICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICAgICAgPFByZXZpZXdEaXYgb25DdXN0b21QYWdlVXBkYXRlPXt0aGlzLnBhZ2VVcGRhdGVDdXN0b21IYW5kbGVyfSAvPlxuICAgICAgICAgICAgICA8L1Jvd3NEaXY+XG4gICAgICAgICAgICA8L1Jvd0Rpdj5cbiAgICAgICAgICA8L1Jvd3NEaXY+XG4gICAgICAgIDwvQ29sdW1uRGl2PlxuICAgICAgPC9Db2x1bW5zRGl2PlxuXG4gICAgKTtcbiAgfVxuXG4gIGluaXRpYWxpc2UoKSB7XG4gICAgdGhpcy5hc3NpZ25Db250ZXh0KCk7XG5cbiAgICB0aGlzLnNldEluaXRpYWxTdGF0ZSgpO1xuXG4gICAgY29uc3QgeyBpbml0aWFsTWFya2Rvd24sIGluaXRpYWxNYXJrZG93blN0eWxlIH0gPSB0aGlzLmNvbnN0cnVjdG9yLFxuICAgICAgICAgIG1hcmtkb3duU3R5bGUgPSBpbml0aWFsTWFya2Rvd25TdHlsZSwgLy8vXG4gICAgICAgICAgbWFya2Rvd24gPSBpbml0aWFsTWFya2Rvd247IC8vL1xuXG4gICAgdGhpcy5zZXRNYXJrZG93bihtYXJrZG93bik7XG5cbiAgICB0aGlzLnNldE1hcmtkb3duU3R5bGUobWFya2Rvd25TdHlsZSk7XG5cbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9XG5cbiAgc3RhdGljIHRhZ05hbWUgPSBcImRpdlwiO1xuXG4gIHN0YXRpYyBpZ25vcmVkUHJvcGVydGllcyA9IFtcbiAgICBcIm1hcmtkb3duU3R5bGVFbGVtZW50XCJcbiAgXTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcInZpZXdcIlxuICB9O1xuXG4gIHN0YXRpYyBpbml0aWFsTWFya2Rvd24gPSBkZWZhdWx0Q29udGVudDsgIC8vL1xuXG4gIHN0YXRpYyBpbml0aWFsTWFya2Rvd25TdHlsZSA9IGB3aWR0aDogMTAwJTtcbnBvc2l0aW9uOiBhYnNvbHV0ZTtcbm1pbi1oZWlnaHQ6IDEwMCU7ICBcbnBhZGRpbmctdG9wOiA1cmVtOyAgXG5gO1xufVxuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoVmlldylgXG5cbiAgcGFkZGluZzogMXJlbTtcbiAgXG5gO1xuIl0sIm5hbWVzIjpbIm1hcmtkb3duTGV4ZXIiLCJNYXJrZG93bkxleGVyIiwiZnJvbU5vdGhpbmciLCJtYXJrZG93blBhcnNlciIsIk1hcmtkb3duUGFyc2VyIiwibWFya2Rvd25TdHlsZUxleGVyIiwiTWFya2Rvd25TdHlsZUxleGVyIiwibWFya2Rvd25TdHlsZVBhcnNlciIsIk1hcmtkb3duU3R5bGVQYXJzZXIiLCJWaWV3IiwibWFya2Rvd25TdHlsZUN1c3RvbUhhbmRsZXIiLCJldmVudCIsImVsZW1lbnQiLCJtYXJrZG93blN0eWxlIiwicGFnZVVwZGF0ZUN1c3RvbUhhbmRsZXIiLCJpbmRleCIsImNsZWFyUGFnZSIsInVwZGF0ZVBhZ2UiLCJtYXJrZG93bkN1c3RvbUhhbmRsZXIiLCJtYXJrZG93biIsImtleVVwQ3VzdG9tSGFuZGxlciIsInVwZGF0ZSIsInVwZGF0ZU1hcmtkb3duU3R5bGUiLCJ1cGRhdGVNYXJrZG93biIsImdldE1hcmtkb3duIiwibGV4ZXIiLCJwYXJzZXIiLCJjb250ZW50Iiwic3RhcnRPZkNvbnRlbnQiLCJzdGFydFJ1bGUiLCJnZXRTdGFydFJ1bGUiLCJ0b2tlbnMiLCJ0b2tlbmlzZSIsIm5vZGUiLCJwYXJzZSIsInNldFRva2VucyIsImRpdmlzaW9uTWFya2Rvd25Ob2RlIiwiY2hhcmFjdGVyc1BlckxpbmUiLCJDSEFSQUNURVJTX1BFUl9MSU5FIiwiY29udGVudHNEZXB0aCIsIkNPTlRFTlRTX0RFUFRIIiwibGluZXNQZXJQYWdlIiwiTElORVNfUEVSX1BBR0UiLCJjb250ZXh0IiwiaW1wb3J0ZXIiLCJkaXZpc2lvbk1hcmtkb3duTm9kZXMiLCJwb3N0cHJvY2VzcyIsInNldERpdmlzaW9uTWFya2Rvd25Ob2RlcyIsImxlbmd0aCIsInBhcnNlVHJlZSIsImFzUGFyc2VUcmVlIiwidXBkYXRlUGFnZUJ1dHRvbnNEaXYiLCJ1cGRhdGVNYXJrZG93blBhcnNlVHJlZVRleHRhcmVhIiwiY2xlYXJQYWdlQnV0dG9uc0RpdiIsImNsZWFyTWFya2Rvd25QYXJzZVRyZWVUZXh0YXJlYSIsImdldERpdmlzaW9uTWFya2Rvd25Ob2RlcyIsImdldFRva2VucyIsImh0bWwiLCJhc0hUTUwiLCJkb21FbGVtZW50IiwiY3JlYXRlRE9NRWxlbWVudCIsInVwZGF0ZVhNUCIsInVwZGF0ZVByZXZpZXdEaXYiLCJjbGVhclhNUCIsImNsZWFyUHJldmlld0RpdiIsImhpZGVNYXJrZG93bkNvbnRhaW5lckRpdiIsInNob3dNYXJrZG93blN0eWxlQ29udGFpbmVyRGl2Iiwic2hvd01hcmtkb3duQ29udGFpbmVyRGl2IiwiaGlkZU1hcmtkb3duU3R5bGVDb250YWluZXJEaXYiLCJnZXRTdGF0ZSIsInVwZGF0ZVN0YXRlIiwic2V0SW5pdGlhbFN0YXRlIiwic2V0U3RhdGUiLCJjaGlsZEVsZW1lbnRzIiwiQ29sdW1uc0RpdiIsIkxlZnRTaXplYWJsZURpdiIsIlRhYkJ1dHRvbnNEaXYiLCJvbkN1c3RvbU1hcmtkb3duIiwib25DdXN0b21NYXJrZG93blN0eWxlIiwiTWFya2Rvd25Db250YWluZXJEaXYiLCJvbkN1c3RvbUtleVVwIiwiTWFya2Rvd25TdHlsZUNvbnRhaW5lckRpdiIsIlZlcnRpY2FsU3BsaXR0ZXJEaXYiLCJDb2x1bW5EaXYiLCJSb3dzRGl2IiwiUmlnaHRTaXplYWJsZURpdiIsIlN1YkhlYWRpbmciLCJIVE1MRGl2IiwiSG9yaXpvbnRhbFNwbGl0dGVyRGl2IiwiUm93RGl2IiwiQ1NTVGV4dGFyZWEiLCJQcmV2aWV3RGl2Iiwib25DdXN0b21QYWdlVXBkYXRlIiwiaW5pdGlhbGlzZSIsImFzc2lnbkNvbnRleHQiLCJjb25zdHJ1Y3RvciIsImluaXRpYWxNYXJrZG93biIsImluaXRpYWxNYXJrZG93blN0eWxlIiwic2V0TWFya2Rvd24iLCJzZXRNYXJrZG93blN0eWxlIiwiRWxlbWVudCIsInRhZ05hbWUiLCJpZ25vcmVkUHJvcGVydGllcyIsImRlZmF1bHRQcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwiZGVmYXVsdENvbnRlbnQiLCJ3aXRoU3R5bGUiXSwicmFuZ2VNYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMlFBOzs7ZUFBQTs7O29FQXpRc0I7b0JBRUU7cUJBQytEOzBCQUNZOzJEQUUvRTtnRUFDQzs4REFDRTtpRUFDQTswREFDQztpRUFDRTsyREFDRTs0REFDQzsrREFDSTtvRUFDSzswQkFFVjt5QkFFd0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
|
421
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leGFtcGxlL3ZpZXcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwiZWFzeVwiO1xuaW1wb3J0IHsgTWFya2Rvd25MZXhlciwgTWFya2Rvd25QYXJzZXIsIE1hcmtkb3duU3R5bGVMZXhlciwgTWFya2Rvd25TdHlsZVBhcnNlciB9IGZyb20gXCIuLi9pbmRleFwiO1xuaW1wb3J0IHsgUm93RGl2LCBSb3dzRGl2LCBDb2x1bW5EaXYsIENvbHVtbnNEaXYsIFZlcnRpY2FsU3BsaXR0ZXJEaXYsIEhvcml6b250YWxTcGxpdHRlckRpdiB9IGZyb20gXCJlYXN5LWxheW91dFwiO1xuXG5pbXBvcnQgSFRNTERpdiBmcm9tIFwiLi92aWV3L2Rpdi9odG1sXCI7XG5pbXBvcnQgaW1wb3J0ZXIgZnJvbSBcIi4vaW1wb3J0ZXJcIjtcbmltcG9ydCBQcmV2aWV3RGl2IGZyb20gXCIuL3ZpZXcvZGl2L3ByZXZpZXdcIjtcbmltcG9ydCBTdWJIZWFkaW5nIGZyb20gXCIuL3ZpZXcvc3ViSGVhZGluZ1wiO1xuaW1wb3J0IENTU1RleHRhcmVhIGZyb20gXCIuL3ZpZXcvdGV4dGFyZWEvY3NzXCI7XG5pbXBvcnQgVGFiQnV0dG9uc0RpdiBmcm9tIFwiLi92aWV3L2Rpdi90YWJCdXR0b25zXCI7XG5pbXBvcnQgTGVmdFNpemVhYmxlRGl2IGZyb20gXCIuL3ZpZXcvZGl2L3NpemVhYmxlL2xlZnRcIjtcbmltcG9ydCBSaWdodFNpemVhYmxlRGl2IGZyb20gXCIuL3ZpZXcvZGl2L3NpemVhYmxlL3JpZ2h0XCI7XG5pbXBvcnQgTWFya2Rvd25Db250YWluZXJEaXYgZnJvbSBcIi4vdmlldy9kaXYvY29udGFpbmVyL21hcmtkb3duXCI7XG5pbXBvcnQgTWFya2Rvd25TdHlsZUNvbnRhaW5lckRpdiBmcm9tIFwiLi92aWV3L2Rpdi9jb250YWluZXIvbWFya2Rvd25TdHlsZVwiO1xuXG5pbXBvcnQgeyBwb3N0cHJvY2VzcyB9IGZyb20gXCIuLi91dGlsaXRpZXMvcHJvY2Vzc2luZ1wiO1xuaW1wb3J0IHsgZGVmYXVsdENvbnRlbnQgfSBmcm9tIFwiLi9pbXBvcnRlclwiO1xuaW1wb3J0IHsgTElORVNfUEVSX1BBR0UsIENPTlRFTlRTX0RFUFRILCBDSEFSQUNURVJTX1BFUl9MSU5FIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5cbmNvbnN0IG1hcmtkb3duTGV4ZXIgPSBNYXJrZG93bkxleGVyLmZyb21Ob3RoaW5nKCksXG4gICAgICBtYXJrZG93blBhcnNlciA9IE1hcmtkb3duUGFyc2VyLmZyb21Ob3RoaW5nKCksXG4gICAgICBtYXJrZG93blN0eWxlTGV4ZXIgPSBNYXJrZG93blN0eWxlTGV4ZXIuZnJvbU5vdGhpbmcoKSxcbiAgICAgIG1hcmtkb3duU3R5bGVQYXJzZXIgPSBNYXJrZG93blN0eWxlUGFyc2VyLmZyb21Ob3RoaW5nKCk7XG5cbmNsYXNzIFZpZXcgZXh0ZW5kcyBFbGVtZW50IHtcbiAgbWFya2Rvd25TdHlsZUN1c3RvbUhhbmRsZXIgPSAoZXZlbnQsIGVsZW1lbnQpID0+IHtcbiAgICB0aGlzLm1hcmtkb3duU3R5bGUoKTtcbiAgfVxuXG4gIHBhZ2VVcGRhdGVDdXN0b21IYW5kbGVyID0gKGV2ZW50LCBlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgIHRoaXMuY2xlYXJQYWdlKCk7XG5cbiAgICB0aGlzLnVwZGF0ZVBhZ2UoaW5kZXgpO1xuICB9XG5cbiAgbWFya2Rvd25DdXN0b21IYW5kbGVyID0gKGV2ZW50LCBlbGVtZW50KSA9PiB7XG4gICAgdGhpcy5tYXJrZG93bigpO1xuICB9XG5cbiAga2V5VXBDdXN0b21IYW5kbGVyID0gKGV2ZW50LCBlbGVtZW50KSA9PiB7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHVwZGF0ZU1hcmtkb3duU3R5bGUoKSB7XG4gICAgY29uc3QgeyBtYXJrZG93blN0eWxlRWxlbWVudCB9ID0gdGhpcy5wcm9wZXJ0aWVzLFxuICAgICAgICAgIG1hcmtkb3duU3R5bGUgPSB0aGlzLmdldE1hcmtkb3duU3R5bGUoKSxcbiAgICAgICAgICBjc3MgPSBtYXJrZG93blN0eWxlRWxlbWVudC51cGRhdGUobWFya2Rvd25TdHlsZSk7XG5cbiAgICB0aGlzLnNldENTUyhjc3MpO1xuXG4gICAgY29uc3QgbGV4ZXIgPSBtYXJrZG93blN0eWxlTGV4ZXIsIC8vL1xuICAgICAgICAgIHBhcnNlciA9IG1hcmtkb3duU3R5bGVQYXJzZXIsIC8vL1xuICAgICAgICAgIGNvbnRlbnQgPSBtYXJrZG93blN0eWxlLCAgLy8vXG4gICAgICAgICAgdG9rZW5zID0gbGV4ZXIudG9rZW5pc2UoY29udGVudCksXG4gICAgICAgICAgc3RhcnRSdWxlID0gcGFyc2VyLmdldFN0YXJ0UnVsZSgpLFxuICAgICAgICAgIHN0YXJ0T2ZDb250ZW50ID0gdHJ1ZSxcbiAgICAgICAgICBub2RlID0gcGFyc2VyLnBhcnNlKHRva2Vucywgc3RhcnRSdWxlLCBzdGFydE9mQ29udGVudCk7XG5cbiAgICBpZiAobm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcGFyc2VUcmVlID0gbm9kZS5hc1BhcnNlVHJlZSh0b2tlbnMpO1xuXG4gICAgICB0aGlzLnVwZGF0ZU1hcmtkb3duU3R5bGVQYXJzZVRyZWVUZXh0YXJlYShwYXJzZVRyZWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNsZWFyTWFya2Rvd25TdHlsZVBhcnNlVHJlZVRleHRhcmVhKCk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlTWFya2Rvd24oKSB7XG4gICAgY29uc3QgbWFya2Rvd24gPSB0aGlzLmdldE1hcmtkb3duKCksXG4gICAgICAgICAgbGV4ZXIgPSBtYXJrZG93bkxleGVyLCAgLy8vXG4gICAgICAgICAgcGFyc2VyID0gIG1hcmtkb3duUGFyc2VyLCAvLy9cbiAgICAgICAgICBjb250ZW50ID0gbWFya2Rvd24sIC8vL1xuICAgICAgICAgIHN0YXJ0T2ZDb250ZW50ID0gdHJ1ZSxcbiAgICAgICAgICBzdGFydFJ1bGUgPSBwYXJzZXIuZ2V0U3RhcnRSdWxlKCksXG4gICAgICAgICAgdG9rZW5zID0gbGV4ZXIudG9rZW5pc2UoY29udGVudCksXG4gICAgICAgICAgbm9kZSA9IHBhcnNlci5wYXJzZSh0b2tlbnMsIHN0YXJ0UnVsZSwgc3RhcnRPZkNvbnRlbnQpO1xuXG4gICAgdGhpcy5zZXRUb2tlbnModG9rZW5zKTtcblxuICAgIGlmIChub2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBkaXZpc2lvbk1hcmtkb3duTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICAgIGNoYXJhY3RlcnNQZXJMaW5lID0gQ0hBUkFDVEVSU19QRVJfTElORSxcbiAgICAgICAgICAgIGNvbnRlbnRzRGVwdGggPSBDT05URU5UU19ERVBUSCxcbiAgICAgICAgICAgIGxpbmVzUGVyUGFnZSA9IExJTkVTX1BFUl9QQUdFLFxuICAgICAgICAgICAgY29udGV4dCA9IHtcbiAgICAgICAgICAgICAgdG9rZW5zLFxuICAgICAgICAgICAgICBpbXBvcnRlcixcbiAgICAgICAgICAgICAgbGluZXNQZXJQYWdlLFxuICAgICAgICAgICAgICBjb250ZW50c0RlcHRoLFxuICAgICAgICAgICAgICBjaGFyYWN0ZXJzUGVyTGluZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRpdmlzaW9uTWFya2Rvd25Ob2RlcyA9IHBvc3Rwcm9jZXNzKGRpdmlzaW9uTWFya2Rvd25Ob2RlLCBjb250ZXh0KTtcblxuICAgICAgdGhpcy5zZXREaXZpc2lvbk1hcmtkb3duTm9kZXMoZGl2aXNpb25NYXJrZG93bk5vZGVzKTtcblxuICAgICAgY29uc3QgaW5kZXggPSAwLFxuICAgICAgICAgICAgbGVuZ3RoID0gZGl2aXNpb25NYXJrZG93bk5vZGVzLmxlbmd0aCxcbiAgICAgICAgICAgIHBhcnNlVHJlZSA9IGRpdmlzaW9uTWFya2Rvd25Ob2RlLmFzUGFyc2VUcmVlKHRva2Vucyk7XG5cbiAgICAgIHRoaXMudXBkYXRlUGFnZShpbmRleCk7XG5cbiAgICAgIHRoaXMudXBkYXRlUGFnZUJ1dHRvbnNEaXYobGVuZ3RoKTtcblxuICAgICAgdGhpcy51cGRhdGVNYXJrZG93blBhcnNlVHJlZVRleHRhcmVhKHBhcnNlVHJlZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xlYXJQYWdlKCk7XG5cbiAgICAgIHRoaXMuY2xlYXJQYWdlQnV0dG9uc0RpdigpO1xuXG4gICAgICB0aGlzLmNsZWFyTWFya2Rvd25QYXJzZVRyZWVUZXh0YXJlYSgpO1xuXG4gICAgICBjb25zdCBkaXZpc2lvbk1hcmtkb3duTm9kZXMgPSBudWxsO1xuXG4gICAgICB0aGlzLnNldERpdmlzaW9uTWFya2Rvd25Ob2RlcyhkaXZpc2lvbk1hcmtkb3duTm9kZXMpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVBhZ2UoaW5kZXgpIHtcbiAgICBjb25zdCBkaXZpc2lvbk1hcmtkb3duTm9kZXMgPSB0aGlzLmdldERpdmlzaW9uTWFya2Rvd25Ob2RlcygpLFxuICAgICAgICAgIGRpdmlzaW9uTWFya2Rvd25Ob2RlID0gZGl2aXNpb25NYXJrZG93bk5vZGVzW2luZGV4XSxcbiAgICAgICAgICB0b2tlbnMgPSB0aGlzLmdldFRva2VucygpLFxuICAgICAgICAgIGNvbnRleHQgPSB7XG4gICAgICAgICAgICB0b2tlbnNcbiAgICAgICAgICB9LFxuICAgICAgICAgIGxlbmd0aCA9IG51bGwsXG4gICAgICAgICAgaHRtbCA9IGRpdmlzaW9uTWFya2Rvd25Ob2RlLmFzSFRNTChjb250ZXh0KSxcbiAgICAgICAgICBkb21FbGVtZW50ID0gZGl2aXNpb25NYXJrZG93bk5vZGUuY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KTtcblxuICAgIHRoaXMudXBkYXRlWE1QKGh0bWwpO1xuXG4gICAgdGhpcy51cGRhdGVQcmV2aWV3RGl2KGRvbUVsZW1lbnQpO1xuXG4gICAgdGhpcy51cGRhdGVQYWdlQnV0dG9uc0RpdihsZW5ndGgsIGluZGV4KTtcbiAgfVxuXG4gIGNsZWFyUGFnZSgpIHtcbiAgICB0aGlzLmNsZWFyWE1QKCk7XG5cbiAgICB0aGlzLmNsZWFyUHJldmlld0RpdigpO1xuICB9XG5cbiAgbWFya2Rvd25TdHlsZSgpIHtcbiAgICB0aGlzLmhpZGVNYXJrZG93bkNvbnRhaW5lckRpdigpO1xuICAgIHRoaXMuc2hvd01hcmtkb3duU3R5bGVDb250YWluZXJEaXYoKTtcbiAgfVxuXG4gIG1hcmtkb3duKCkge1xuICAgIHRoaXMuc2hvd01hcmtkb3duQ29udGFpbmVyRGl2KCk7XG4gICAgdGhpcy5oaWRlTWFya2Rvd25TdHlsZUNvbnRhaW5lckRpdigpO1xuICB9XG5cbiAgdXBkYXRlKCkge1xuICAgIHRoaXMudXBkYXRlTWFya2Rvd24oKTtcbiAgICB0aGlzLnVwZGF0ZU1hcmtkb3duU3R5bGUoKTtcbiAgfVxuXG4gIGdldFRva2VucygpIHtcbiAgICBjb25zdCB7IHRva2VucyB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gICAgcmV0dXJuIHRva2VucztcbiAgfVxuXG4gIHNldFRva2Vucyh0b2tlbnMpIHtcbiAgICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICAgIHRva2Vuc1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0RGl2aXNpb25NYXJrZG93bk5vZGVzKCkge1xuICAgIGNvbnN0IHsgZGl2aXNpb25NYXJrZG93bk5vZGVzIH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgICByZXR1cm4gZGl2aXNpb25NYXJrZG93bk5vZGVzO1xuICB9XG5cbiAgc2V0RGl2aXNpb25NYXJrZG93bk5vZGVzKGRpdmlzaW9uTWFya2Rvd25Ob2Rlcykge1xuICAgIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgICAgZGl2aXNpb25NYXJrZG93bk5vZGVzXG4gICAgfSk7XG4gIH1cblxuICBzZXRJbml0aWFsU3RhdGUoKSB7XG4gICAgY29uc3QgdG9rZW5zID0gbnVsbCxcbiAgICAgICAgICBkaXZpc2lvbk1hcmtkb3duTm9kZXMgPSBudWxsO1xuXG4gICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICB0b2tlbnMsXG4gICAgICBkaXZpc2lvbk1hcmtkb3duTm9kZXNcbiAgICB9KTtcbiAgfVxuXG4gIGNoaWxkRWxlbWVudHMoKSB7XG4gICAgcmV0dXJuIChcblxuICAgICAgPENvbHVtbnNEaXY+XG4gICAgICAgIDxMZWZ0U2l6ZWFibGVEaXY+XG4gICAgICAgICAgPFRhYkJ1dHRvbnNEaXYgb25DdXN0b21NYXJrZG93bj17dGhpcy5tYXJrZG93bkN1c3RvbUhhbmRsZXJ9IG9uQ3VzdG9tTWFya2Rvd25TdHlsZT17dGhpcy5tYXJrZG93blN0eWxlQ3VzdG9tSGFuZGxlcn0gLz5cbiAgICAgICAgICA8TWFya2Rvd25Db250YWluZXJEaXYgb25DdXN0b21LZXlVcD17dGhpcy5rZXlVcEN1c3RvbUhhbmRsZXJ9IC8+XG4gICAgICAgICAgPE1hcmtkb3duU3R5bGVDb250YWluZXJEaXYgb25DdXN0b21LZXlVcD17dGhpcy5rZXlVcEN1c3RvbUhhbmRsZXJ9IC8+XG4gICAgICAgIDwvTGVmdFNpemVhYmxlRGl2PlxuICAgICAgICA8VmVydGljYWxTcGxpdHRlckRpdi8+XG4gICAgICAgIDxDb2x1bW5EaXY+XG4gICAgICAgICAgPFJvd3NEaXY+XG4gICAgICAgICAgICA8UmlnaHRTaXplYWJsZURpdj5cbiAgICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgICAgSFRNTFxuICAgICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICAgIDxIVE1MRGl2Lz5cbiAgICAgICAgICAgIDwvUmlnaHRTaXplYWJsZURpdj5cbiAgICAgICAgICAgIDxIb3Jpem9udGFsU3BsaXR0ZXJEaXYvPlxuICAgICAgICAgICAgPFJvd0Rpdj5cbiAgICAgICAgICAgICAgPFJvd3NEaXY+XG4gICAgICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgICAgICBDU1NcbiAgICAgICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICAgICAgPENTU1RleHRhcmVhLz5cbiAgICAgICAgICAgICAgICA8U3ViSGVhZGluZz5cbiAgICAgICAgICAgICAgICAgIFByZXZpZXdcbiAgICAgICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICAgICAgPFByZXZpZXdEaXYgb25DdXN0b21QYWdlVXBkYXRlPXt0aGlzLnBhZ2VVcGRhdGVDdXN0b21IYW5kbGVyfSAvPlxuICAgICAgICAgICAgICA8L1Jvd3NEaXY+XG4gICAgICAgICAgICA8L1Jvd0Rpdj5cbiAgICAgICAgICA8L1Jvd3NEaXY+XG4gICAgICAgIDwvQ29sdW1uRGl2PlxuICAgICAgPC9Db2x1bW5zRGl2PlxuXG4gICAgKTtcbiAgfVxuXG4gIGluaXRpYWxpc2UoKSB7XG4gICAgdGhpcy5hc3NpZ25Db250ZXh0KCk7XG5cbiAgICB0aGlzLnNldEluaXRpYWxTdGF0ZSgpO1xuXG4gICAgY29uc3QgeyBpbml0aWFsTWFya2Rvd24sIGluaXRpYWxNYXJrZG93blN0eWxlIH0gPSB0aGlzLmNvbnN0cnVjdG9yLFxuICAgICAgICAgIG1hcmtkb3duU3R5bGUgPSBpbml0aWFsTWFya2Rvd25TdHlsZSwgLy8vXG4gICAgICAgICAgbWFya2Rvd24gPSBpbml0aWFsTWFya2Rvd247IC8vL1xuXG4gICAgdGhpcy5zZXRNYXJrZG93bihtYXJrZG93bik7XG5cbiAgICB0aGlzLnNldE1hcmtkb3duU3R5bGUobWFya2Rvd25TdHlsZSk7XG5cbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9XG5cbiAgc3RhdGljIHRhZ05hbWUgPSBcImRpdlwiO1xuXG4gIHN0YXRpYyBpZ25vcmVkUHJvcGVydGllcyA9IFtcbiAgICBcIm1hcmtkb3duU3R5bGVFbGVtZW50XCJcbiAgXTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcInZpZXdcIlxuICB9O1xuXG4gIHN0YXRpYyBpbml0aWFsTWFya2Rvd24gPSBkZWZhdWx0Q29udGVudDsgIC8vL1xuXG4gIHN0YXRpYyBpbml0aWFsTWFya2Rvd25TdHlsZSA9IGB3aWR0aDogMTAwJTtcbnBvc2l0aW9uOiBhYnNvbHV0ZTtcbm1pbi1oZWlnaHQ6IDEwMCU7ICBcbnBhZGRpbmctdG9wOiA1cmVtOyAgXG5gO1xufVxuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoVmlldylgXG5cbiAgcGFkZGluZzogMXJlbTtcbiAgXG5gO1xuIl0sIm5hbWVzIjpbIm1hcmtkb3duTGV4ZXIiLCJNYXJrZG93bkxleGVyIiwiZnJvbU5vdGhpbmciLCJtYXJrZG93blBhcnNlciIsIk1hcmtkb3duUGFyc2VyIiwibWFya2Rvd25TdHlsZUxleGVyIiwiTWFya2Rvd25TdHlsZUxleGVyIiwibWFya2Rvd25TdHlsZVBhcnNlciIsIk1hcmtkb3duU3R5bGVQYXJzZXIiLCJWaWV3IiwibWFya2Rvd25TdHlsZUN1c3RvbUhhbmRsZXIiLCJldmVudCIsImVsZW1lbnQiLCJtYXJrZG93blN0eWxlIiwicGFnZVVwZGF0ZUN1c3RvbUhhbmRsZXIiLCJpbmRleCIsImNsZWFyUGFnZSIsInVwZGF0ZVBhZ2UiLCJtYXJrZG93bkN1c3RvbUhhbmRsZXIiLCJtYXJrZG93biIsImtleVVwQ3VzdG9tSGFuZGxlciIsInVwZGF0ZSIsInVwZGF0ZU1hcmtkb3duU3R5bGUiLCJtYXJrZG93blN0eWxlRWxlbWVudCIsInByb3BlcnRpZXMiLCJnZXRNYXJrZG93blN0eWxlIiwiY3NzIiwic2V0Q1NTIiwibGV4ZXIiLCJwYXJzZXIiLCJjb250ZW50IiwidG9rZW5zIiwidG9rZW5pc2UiLCJzdGFydFJ1bGUiLCJnZXRTdGFydFJ1bGUiLCJzdGFydE9mQ29udGVudCIsIm5vZGUiLCJwYXJzZSIsInBhcnNlVHJlZSIsImFzUGFyc2VUcmVlIiwidXBkYXRlTWFya2Rvd25TdHlsZVBhcnNlVHJlZVRleHRhcmVhIiwiY2xlYXJNYXJrZG93blN0eWxlUGFyc2VUcmVlVGV4dGFyZWEiLCJ1cGRhdGVNYXJrZG93biIsImdldE1hcmtkb3duIiwic2V0VG9rZW5zIiwiZGl2aXNpb25NYXJrZG93bk5vZGUiLCJjaGFyYWN0ZXJzUGVyTGluZSIsIkNIQVJBQ1RFUlNfUEVSX0xJTkUiLCJjb250ZW50c0RlcHRoIiwiQ09OVEVOVFNfREVQVEgiLCJsaW5lc1BlclBhZ2UiLCJMSU5FU19QRVJfUEFHRSIsImNvbnRleHQiLCJpbXBvcnRlciIsImRpdmlzaW9uTWFya2Rvd25Ob2RlcyIsInBvc3Rwcm9jZXNzIiwic2V0RGl2aXNpb25NYXJrZG93bk5vZGVzIiwibGVuZ3RoIiwidXBkYXRlUGFnZUJ1dHRvbnNEaXYiLCJ1cGRhdGVNYXJrZG93blBhcnNlVHJlZVRleHRhcmVhIiwiY2xlYXJQYWdlQnV0dG9uc0RpdiIsImNsZWFyTWFya2Rvd25QYXJzZVRyZWVUZXh0YXJlYSIsImdldERpdmlzaW9uTWFya2Rvd25Ob2RlcyIsImdldFRva2VucyIsImh0bWwiLCJhc0hUTUwiLCJkb21FbGVtZW50IiwiY3JlYXRlRE9NRWxlbWVudCIsInVwZGF0ZVhNUCIsInVwZGF0ZVByZXZpZXdEaXYiLCJjbGVhclhNUCIsImNsZWFyUHJldmlld0RpdiIsImhpZGVNYXJrZG93bkNvbnRhaW5lckRpdiIsInNob3dNYXJrZG93blN0eWxlQ29udGFpbmVyRGl2Iiwic2hvd01hcmtkb3duQ29udGFpbmVyRGl2IiwiaGlkZU1hcmtkb3duU3R5bGVDb250YWluZXJEaXYiLCJnZXRTdGF0ZSIsInVwZGF0ZVN0YXRlIiwic2V0SW5pdGlhbFN0YXRlIiwic2V0U3RhdGUiLCJjaGlsZEVsZW1lbnRzIiwiQ29sdW1uc0RpdiIsIkxlZnRTaXplYWJsZURpdiIsIlRhYkJ1dHRvbnNEaXYiLCJvbkN1c3RvbU1hcmtkb3duIiwib25DdXN0b21NYXJrZG93blN0eWxlIiwiTWFya2Rvd25Db250YWluZXJEaXYiLCJvbkN1c3RvbUtleVVwIiwiTWFya2Rvd25TdHlsZUNvbnRhaW5lckRpdiIsIlZlcnRpY2FsU3BsaXR0ZXJEaXYiLCJDb2x1bW5EaXYiLCJSb3dzRGl2IiwiUmlnaHRTaXplYWJsZURpdiIsIlN1YkhlYWRpbmciLCJIVE1MRGl2IiwiSG9yaXpvbnRhbFNwbGl0dGVyRGl2IiwiUm93RGl2IiwiQ1NTVGV4dGFyZWEiLCJQcmV2aWV3RGl2Iiwib25DdXN0b21QYWdlVXBkYXRlIiwiaW5pdGlhbGlzZSIsImFzc2lnbkNvbnRleHQiLCJjb25zdHJ1Y3RvciIsImluaXRpYWxNYXJrZG93biIsImluaXRpYWxNYXJrZG93blN0eWxlIiwic2V0TWFya2Rvd24iLCJzZXRNYXJrZG93blN0eWxlIiwiRWxlbWVudCIsInRhZ05hbWUiLCJpZ25vcmVkUHJvcGVydGllcyIsImRlZmF1bHRQcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwiZGVmYXVsdENvbnRlbnQiLCJ3aXRoU3R5bGUiXSwicmFuZ2VNYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMlFBOzs7ZUFBQTs7O29FQXpRc0I7b0JBRUU7cUJBQytEOzBCQUNZOzJEQUUvRTtnRUFDQzs4REFDRTtpRUFDQTswREFDQztpRUFDRTsyREFDRTs0REFDQzsrREFDSTtvRUFDSzswQkFFVjt5QkFFd0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVwRSxJQUFNQSxnQkFBZ0JDLG9CQUFhLENBQUNDLFdBQVcsSUFDekNDLGlCQUFpQkMscUJBQWMsQ0FBQ0YsV0FBVyxJQUMzQ0cscUJBQXFCQyx5QkFBa0IsQ0FBQ0osV0FBVyxJQUNuREssc0JBQXNCQywwQkFBbUIsQ0FBQ04sV0FBVztBQUUzRCxJQUFBLEFBQU1PLHFCQUFELEFBQUw7Y0FBTUE7K0JBQUFBO2FBQUFBO2dDQUFBQTs7O1FBQ0pDLGtEQUFBQSw4QkFBNkIsU0FBQ0MsT0FBT0M7WUFDbkMsTUFBS0MsYUFBYTtRQUNwQjtRQUVBQyxrREFBQUEsMkJBQTBCLFNBQUNILE9BQU9DLFNBQVNHO1lBQ3pDLE1BQUtDLFNBQVM7WUFFZCxNQUFLQyxVQUFVLENBQUNGO1FBQ2xCO1FBRUFHLGtEQUFBQSx5QkFBd0IsU0FBQ1AsT0FBT0M7WUFDOUIsTUFBS08sUUFBUTtRQUNmO1FBRUFDLGtEQUFBQSxzQkFBcUIsU0FBQ1QsT0FBT0M7WUFDM0IsTUFBS1MsTUFBTTtRQUNiOzs7a0JBakJJWjs7WUFtQkphLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNLEFBQUVDLHVCQUF5QixJQUFJLENBQUNDLFVBQVUsQ0FBeENELHNCQUNGVixnQkFBZ0IsSUFBSSxDQUFDWSxnQkFBZ0IsSUFDckNDLE1BQU1ILHFCQUFxQkYsTUFBTSxDQUFDUjtnQkFFeEMsSUFBSSxDQUFDYyxNQUFNLENBQUNEO2dCQUVaLElBQU1FLFFBQVF2QixvQkFDUndCLFNBQVN0QixxQkFDVHVCLFVBQVVqQixlQUNWa0IsU0FBU0gsTUFBTUksUUFBUSxDQUFDRixVQUN4QkcsWUFBWUosT0FBT0ssWUFBWSxJQUMvQkMsaUJBQWlCLE1BQ2pCQyxPQUFPUCxPQUFPUSxLQUFLLENBQUNOLFFBQVFFLFdBQVdFO2dCQUU3QyxJQUFJQyxTQUFTLE1BQU07b0JBQ2pCLElBQU1FLFlBQVlGLEtBQUtHLFdBQVcsQ0FBQ1I7b0JBRW5DLElBQUksQ0FBQ1Msb0NBQW9DLENBQUNGO2dCQUM1QyxPQUFPO29CQUNMLElBQUksQ0FBQ0csbUNBQW1DO2dCQUMxQztZQUNGOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU12QixXQUFXLElBQUksQ0FBQ3dCLFdBQVcsSUFDM0JmLFFBQVE1QixlQUNSNkIsU0FBVTFCLGdCQUNWMkIsVUFBVVgsVUFDVmdCLGlCQUFpQixNQUNqQkYsWUFBWUosT0FBT0ssWUFBWSxJQUMvQkgsU0FBU0gsTUFBTUksUUFBUSxDQUFDRixVQUN4Qk0sT0FBT1AsT0FBT1EsS0FBSyxDQUFDTixRQUFRRSxXQUFXRTtnQkFFN0MsSUFBSSxDQUFDUyxTQUFTLENBQUNiO2dCQUVmLElBQUlLLFNBQVMsTUFBTTtvQkFDakIsSUFBTVMsdUJBQXVCVCxNQUN2QlUsb0JBQW9CQyw4QkFBbUIsRUFDdkNDLGdCQUFnQkMseUJBQWMsRUFDOUJDLGVBQWVDLHlCQUFjLEVBQzdCQyxVQUFVO3dCQUNSckIsUUFBQUE7d0JBQ0FzQixVQUFBQSxpQkFBUTt3QkFDUkgsY0FBQUE7d0JBQ0FGLGVBQUFBO3dCQUNBRixtQkFBQUE7b0JBQ0YsR0FDQVEsd0JBQXdCQyxJQUFBQSx1QkFBVyxFQUFDVixzQkFBc0JPO29CQUVoRSxJQUFJLENBQUNJLHdCQUF3QixDQUFDRjtvQkFFOUIsSUFBTXZDLFFBQVEsR0FDUjBDLFNBQVNILHNCQUFzQkcsTUFBTSxFQUNyQ25CLFlBQVlPLHFCQUFxQk4sV0FBVyxDQUFDUjtvQkFFbkQsSUFBSSxDQUFDZCxVQUFVLENBQUNGO29CQUVoQixJQUFJLENBQUMyQyxvQkFBb0IsQ0FBQ0Q7b0JBRTFCLElBQUksQ0FBQ0UsK0JBQStCLENBQUNyQjtnQkFDdkMsT0FBTztvQkFDTCxJQUFJLENBQUN0QixTQUFTO29CQUVkLElBQUksQ0FBQzRDLG1CQUFtQjtvQkFFeEIsSUFBSSxDQUFDQyw4QkFBOEI7b0JBRW5DLElBQU1QLHlCQUF3QjtvQkFFOUIsSUFBSSxDQUFDRSx3QkFBd0IsQ0FBQ0Y7Z0JBQ2hDO1lBQ0Y7OztZQUVBckMsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVdGLEtBQUs7Z0JBQ2QsSUFBTXVDLHdCQUF3QixJQUFJLENBQUNRLHdCQUF3QixJQUNyRGpCLHVCQUF1QlMscUJBQXFCLENBQUN2QyxNQUFNLEVBQ25EZ0IsU0FBUyxJQUFJLENBQUNnQyxTQUFTLElBQ3ZCWCxVQUFVO29CQUNSckIsUUFBQUE7Z0JBQ0YsR0FDQTBCLFNBQVMsTUFDVE8sT0FBT25CLHFCQUFxQm9CLE1BQU0sQ0FBQ2IsVUFDbkNjLGFBQWFyQixxQkFBcUJzQixnQkFBZ0IsQ0FBQ2Y7Z0JBRXpELElBQUksQ0FBQ2dCLFNBQVMsQ0FBQ0o7Z0JBRWYsSUFBSSxDQUFDSyxnQkFBZ0IsQ0FBQ0g7Z0JBRXRCLElBQUksQ0FBQ1Isb0JBQW9CLENBQUNELFFBQVExQztZQUNwQzs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFJLENBQUNzRCxRQUFRO2dCQUViLElBQUksQ0FBQ0MsZUFBZTtZQUN0Qjs7O1lBRUExRCxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDMkQsd0JBQXdCO2dCQUM3QixJQUFJLENBQUNDLDZCQUE2QjtZQUNwQzs7O1lBRUF0RCxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDdUQsd0JBQXdCO2dCQUM3QixJQUFJLENBQUNDLDZCQUE2QjtZQUNwQzs7O1lBRUF0RCxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDcUIsY0FBYztnQkFDbkIsSUFBSSxDQUFDcEIsbUJBQW1CO1lBQzFCOzs7WUFFQXlDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNLEFBQUVoQyxTQUFXLElBQUksQ0FBQzZDLFFBQVEsR0FBeEI3QztnQkFFUixPQUFPQTtZQUNUOzs7WUFFQWEsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVViLE1BQU07Z0JBQ2QsSUFBSSxDQUFDOEMsV0FBVyxDQUFDO29CQUNmOUMsUUFBQUE7Z0JBQ0Y7WUFDRjs7O1lBRUErQixLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTSxBQUFFUix3QkFBMEIsSUFBSSxDQUFDc0IsUUFBUSxHQUF2Q3RCO2dCQUVSLE9BQU9BO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEseUJBQXlCRixxQkFBcUI7Z0JBQzVDLElBQUksQ0FBQ3VCLFdBQVcsQ0FBQztvQkFDZnZCLHVCQUFBQTtnQkFDRjtZQUNGOzs7WUFFQXdCLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNL0MsU0FBUyxNQUNUdUIsd0JBQXdCO2dCQUU5QixJQUFJLENBQUN5QixRQUFRLENBQUM7b0JBQ1poRCxRQUFBQTtvQkFDQXVCLHVCQUFBQTtnQkFDRjtZQUNGOzs7WUFFQTBCLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxxQkFFRSxvQkFBQ0Msc0JBQVUsc0JBQ1Qsb0JBQUNDLGFBQWUsc0JBQ2Qsb0JBQUNDLG1CQUFhO29CQUFDQyxrQkFBa0IsSUFBSSxDQUFDbEUscUJBQXFCO29CQUFFbUUsdUJBQXVCLElBQUksQ0FBQzNFLDBCQUEwQjtrQ0FDbkgsb0JBQUM0RSxpQkFBb0I7b0JBQUNDLGVBQWUsSUFBSSxDQUFDbkUsa0JBQWtCO2tDQUM1RCxvQkFBQ29FLHNCQUF5QjtvQkFBQ0QsZUFBZSxJQUFJLENBQUNuRSxrQkFBa0I7bUNBRW5FLG9CQUFDcUUsK0JBQW1CLHVCQUNwQixvQkFBQ0MscUJBQVMsc0JBQ1Isb0JBQUNDLG1CQUFPLHNCQUNOLG9CQUFDQyxjQUFnQixzQkFDZixvQkFBQ0MsbUJBQVUsUUFBQyx1QkFHWixvQkFBQ0MsYUFBTyx3QkFFVixvQkFBQ0MsaUNBQXFCLHVCQUN0QixvQkFBQ0Msa0JBQU0sc0JBQ0wsb0JBQUNMLG1CQUFPLHNCQUNOLG9CQUFDRSxtQkFBVSxRQUFDLHNCQUdaLG9CQUFDSSxZQUFXLHVCQUNaLG9CQUFDSixtQkFBVSxRQUFDLDBCQUdaLG9CQUFDSyxnQkFBVTtvQkFBQ0Msb0JBQW9CLElBQUksQ0FBQ3JGLHVCQUF1Qjs7WUFRMUU7OztZQUVBc0YsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQUksQ0FBQ0MsYUFBYTtnQkFFbEIsSUFBSSxDQUFDdkIsZUFBZTtnQkFFcEIsSUFBa0Qsb0JBQUEsSUFBSSxDQUFDd0IsV0FBVyxFQUExREMsa0JBQTBDLGtCQUExQ0EsaUJBQWlCQyx1QkFBeUIsa0JBQXpCQSxzQkFDbkIzRixnQkFBZ0IyRixzQkFDaEJyRixXQUFXb0YsaUJBQWlCLEdBQUc7Z0JBRXJDLElBQUksQ0FBQ0UsV0FBVyxDQUFDdEY7Z0JBRWpCLElBQUksQ0FBQ3VGLGdCQUFnQixDQUFDN0Y7Z0JBRXRCLElBQUksQ0FBQ1EsTUFBTTtZQUNiOzs7V0ExTklaO3FCQUFha0csYUFBTztBQTROeEIsaUJBNU5JbEcsTUE0TkdtRyxXQUFVO0FBRWpCLGlCQTlOSW5HLE1BOE5Hb0cscUJBQW9CO0lBQ3pCO0NBQ0Q7QUFFRCxpQkFsT0lwRyxNQWtPR3FHLHFCQUFvQjtJQUN6QkMsV0FBVztBQUNiO0FBRUEsaUJBdE9JdEcsTUFzT0c4RixtQkFBa0JTLHdCQUFjLEVBQUcsR0FBRzs7QUFFN0MsaUJBeE9JdkcsTUF3T0crRix3QkFBd0I7SUFPakMsV0FBZVMsSUFBQUEsc0JBQVMsRUFBQ3hHIn0=
|
package/lib/example.js
CHANGED
|
@@ -16,11 +16,11 @@ function _interop_require_default(obj) {
|
|
|
16
16
|
var renderStyles = _easywithstyle.default.renderStyles, PREVIEW_MEDIA_TYPE_NAME = _index.mediaTypeNames.PREVIEW_MEDIA_TYPE_NAME;
|
|
17
17
|
var mediaTypeName = PREVIEW_MEDIA_TYPE_NAME, selectorsString = _constants.PREVIEWED_DIV_SELECTORS_STRING;
|
|
18
18
|
_index.DefaultMarkdownStyleElement.fromMediaTypeNameAndSelectorsString(mediaTypeName, selectorsString);
|
|
19
|
-
var markdownStyleElement =
|
|
19
|
+
var markdownStyleElement = _index.MarkdownStyleElement.fromMediaTypeNameAndSelectorsString(mediaTypeName, selectorsString);
|
|
20
20
|
renderStyles();
|
|
21
21
|
var body = new _easy.Body();
|
|
22
22
|
body.mount(/*#__PURE__*/ React.createElement(_view.default, {
|
|
23
23
|
markdownStyleElement: markdownStyleElement
|
|
24
24
|
}));
|
|
25
25
|
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9leGFtcGxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgXCJqdXh0YXBvc2VcIjtcblxuaW1wb3J0IHdpdGhTdHlsZSBmcm9tIFwiZWFzeS13aXRoLXN0eWxlXCI7ICAvLy9cblxuaW1wb3J0IHsgQm9keSB9IGZyb20gXCJlYXN5XCI7XG5pbXBvcnQgeyBtZWRpYVR5cGVOYW1lcywgTWFya2Rvd25TdHlsZUVsZW1lbnQsIERlZmF1bHRNYXJrZG93blN0eWxlRWxlbWVudCB9IGZyb20gXCIuL2luZGV4XCI7ICAvLy9cblxuaW1wb3J0IFZpZXcgZnJvbSBcIi4vZXhhbXBsZS92aWV3XCI7XG5cbmltcG9ydCB7IFBSRVZJRVdFRF9ESVZfU0VMRUNUT1JTX1NUUklORyB9IGZyb20gXCIuL2V4YW1wbGUvY29uc3RhbnRzXCI7XG5cbmNvbnN0IHsgcmVuZGVyU3R5bGVzIH0gPSB3aXRoU3R5bGUsXG4gICAgICB7IFBSRVZJRVdfTUVESUFfVFlQRV9OQU1FIH0gPSBtZWRpYVR5cGVOYW1lcztcblxuY29uc3QgbWVkaWFUeXBlTmFtZSA9IFBSRVZJRVdfTUVESUFfVFlQRV9OQU1FLFxuICAgICAgc2VsZWN0b3JzU3RyaW5nID0gUFJFVklFV0VEX0RJVl9TRUxFQ1RPUlNfU1RSSU5HO1xuXG5EZWZhdWx0TWFya2Rvd25TdHlsZUVsZW1lbnQuZnJvbU1lZGlhVHlwZU5hbWVBbmRTZWxlY3RvcnNTdHJpbmcobWVkaWFUeXBlTmFtZSwgc2VsZWN0b3JzU3RyaW5nKTtcblxuY29uc3QgbWFya2Rvd25TdHlsZUVsZW1lbnQgPSBNYXJrZG93blN0eWxlRWxlbWVudC5mcm9tTWVkaWFUeXBlTmFtZUFuZFNlbGVjdG9yc1N0cmluZyhtZWRpYVR5cGVOYW1lLCBzZWxlY3RvcnNTdHJpbmcpO1xuXG5yZW5kZXJTdHlsZXMoKTtcblxuY29uc3QgYm9keSA9IG5ldyBCb2R5KCk7XG5cbmJvZHkubW91bnQoXG5cbiAgPFZpZXcgbWFya2Rvd25TdHlsZUVsZW1lbnQ9e21hcmtkb3duU3R5bGVFbGVtZW50fSAvPlxuXG4pO1xuIl0sIm5hbWVzIjpbInJlbmRlclN0eWxlcyIsIndpdGhTdHlsZSIsIlBSRVZJRVdfTUVESUFfVFlQRV9OQU1FIiwibWVkaWFUeXBlTmFtZXMiLCJtZWRpYVR5cGVOYW1lIiwic2VsZWN0b3JzU3RyaW5nIiwiUFJFVklFV0VEX0RJVl9TRUxFQ1RPUlNfU1RSSU5HIiwiRGVmYXVsdE1hcmtkb3duU3R5bGVFbGVtZW50IiwiZnJvbU1lZGlhVHlwZU5hbWVBbmRTZWxlY3RvcnNTdHJpbmciLCJtYXJrZG93blN0eWxlRWxlbWVudCIsIk1hcmtkb3duU3R5bGVFbGVtZW50IiwiYm9keSIsIkJvZHkiLCJtb3VudCIsIlZpZXciXSwicmFuZ2VNYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7UUFFTztvRUFFZTtvQkFFRDtxQkFDNkQ7MkRBRWpFO3lCQUU4Qjs7Ozs7O0FBRS9DLElBQU0sQUFBRUEsZUFBaUJDLHNCQUFTLENBQTFCRCxjQUNGLEFBQUVFLDBCQUE0QkMscUJBQWMsQ0FBMUNEO0FBRVIsSUFBTUUsZ0JBQWdCRix5QkFDaEJHLGtCQUFrQkMseUNBQThCO0FBRXREQyxrQ0FBMkIsQ0FBQ0MsbUNBQW1DLENBQUNKLGVBQWVDO0FBRS9FLElBQU1JLHVCQUF1QkMsMkJBQW9CLENBQUNGLG1DQUFtQyxDQUFDSixlQUFlQztBQUVyR0w7QUFFQSxJQUFNVyxPQUFPLElBQUlDLFVBQUk7QUFFckJELEtBQUtFLEtBQUssZUFFUixvQkFBQ0MsYUFBSTtJQUFDTCxzQkFBc0JBIn0=
|
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.418",
|
|
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.",
|
|
@@ -1,22 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
const defaultMarkdownStyle = `
|
|
4
|
-
secondaryHeading,
|
|
5
|
-
tertiaryHeading,
|
|
6
|
-
quaternaryHeading,
|
|
7
|
-
orderedListItem,
|
|
8
|
-
unorderedListItem {
|
|
9
|
-
:first-child {
|
|
10
|
-
margin-top: 0;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
:last-child {
|
|
14
|
-
margin-bottom: 0;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
`;
|
|
18
|
-
|
|
19
|
-
const _defaultMarkdownStyle = `
|
|
20
4
|
colour: black;
|
|
21
5
|
padding: 24pt;
|
|
22
6
|
position: relative;
|
package/src/example/view.js
CHANGED
|
@@ -46,27 +46,27 @@ class View extends Element {
|
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
updateMarkdownStyle() {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
49
|
+
const { markdownStyleElement } = this.properties,
|
|
50
|
+
markdownStyle = this.getMarkdownStyle(),
|
|
51
|
+
css = markdownStyleElement.update(markdownStyle);
|
|
52
|
+
|
|
53
|
+
this.setCSS(css);
|
|
54
|
+
|
|
55
|
+
const lexer = markdownStyleLexer, ///
|
|
56
|
+
parser = markdownStyleParser, ///
|
|
57
|
+
content = markdownStyle, ///
|
|
58
|
+
tokens = lexer.tokenise(content),
|
|
59
|
+
startRule = parser.getStartRule(),
|
|
60
|
+
startOfContent = true,
|
|
61
|
+
node = parser.parse(tokens, startRule, startOfContent);
|
|
62
|
+
|
|
63
|
+
if (node !== null) {
|
|
64
|
+
const parseTree = node.asParseTree(tokens);
|
|
65
|
+
|
|
66
|
+
this.updateMarkdownStyleParseTreeTextarea(parseTree);
|
|
67
|
+
} else {
|
|
68
|
+
this.clearMarkdownStyleParseTreeTextarea();
|
|
69
|
+
}
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
updateMarkdown() {
|
package/src/example.js
CHANGED
|
@@ -19,7 +19,7 @@ const mediaTypeName = PREVIEW_MEDIA_TYPE_NAME,
|
|
|
19
19
|
|
|
20
20
|
DefaultMarkdownStyleElement.fromMediaTypeNameAndSelectorsString(mediaTypeName, selectorsString);
|
|
21
21
|
|
|
22
|
-
const markdownStyleElement =
|
|
22
|
+
const markdownStyleElement = MarkdownStyleElement.fromMediaTypeNameAndSelectorsString(mediaTypeName, selectorsString);
|
|
23
23
|
|
|
24
24
|
renderStyles();
|
|
25
25
|
|