highmark-markdown 1.2.130 → 1.2.131

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.
Files changed (261) hide show
  1. package/lib/attributeNames.js +38 -0
  2. package/lib/constants.js +86 -0
  3. package/lib/example/constants.js +38 -0
  4. package/lib/example/customEventTypes.js +46 -0
  5. package/lib/example/importer.js +100 -0
  6. package/lib/example/indexOptions.js +45 -0
  7. package/lib/example/view/button/page.js +54 -0
  8. package/lib/example/view/button/tab/css.js +33 -0
  9. package/lib/example/view/button/tab/html.js +33 -0
  10. package/lib/example/view/button/tab/markdown.js +33 -0
  11. package/lib/example/view/button/tab/markdownStyle.js +33 -0
  12. package/lib/example/view/button/tab/plainText.js +33 -0
  13. package/lib/example/view/button/tab/preview.js +33 -0
  14. package/lib/example/view/button/tab.js +56 -0
  15. package/lib/example/view/div/container/css.js +35 -0
  16. package/lib/example/view/div/container/html.js +37 -0
  17. package/lib/example/view/div/container/markdown.js +56 -0
  18. package/lib/example/view/div/container/markdownStyle.js +57 -0
  19. package/lib/example/view/div/container/plainText.js +35 -0
  20. package/lib/example/view/div/container/preview.js +41 -0
  21. package/lib/example/view/div/container.js +39 -0
  22. package/lib/example/view/div/html.js +37 -0
  23. package/lib/example/view/div/pageButtons.js +86 -0
  24. package/lib/example/view/div/preview.js +83 -0
  25. package/lib/example/view/div/sizeable/left.js +31 -0
  26. package/lib/example/view/div/tabButtons/left.js +61 -0
  27. package/lib/example/view/div/tabButtons/right.js +95 -0
  28. package/lib/example/view/div/tabButtons.js +34 -0
  29. package/lib/example/view/textarea/css.js +47 -0
  30. package/lib/example/view/textarea/markdown.js +47 -0
  31. package/lib/example/view/textarea/markdownStyle.js +47 -0
  32. package/lib/example/view/textarea/parseTree/css.js +39 -0
  33. package/lib/example/view/textarea/parseTree/html.js +39 -0
  34. package/lib/example/view/textarea/parseTree/markdown.js +36 -0
  35. package/lib/example/view/textarea/parseTree/markdownStyle.js +36 -0
  36. package/lib/example/view/textarea/parseTree.js +40 -0
  37. package/lib/example/view/textarea/plainText.js +50 -0
  38. package/lib/example/view/textarea.js +33 -0
  39. package/lib/example/view/xmp.js +49 -0
  40. package/lib/example/view.js +309 -0
  41. package/lib/example.js +26 -0
  42. package/lib/index/item.js +40 -0
  43. package/lib/index/list.js +55 -0
  44. package/lib/index/match.js +37 -0
  45. package/lib/index.js +147 -0
  46. package/lib/letters.js +41 -0
  47. package/lib/map/className.js +19 -0
  48. package/lib/map/node/css.js +76 -0
  49. package/lib/map/node/html.js +142 -0
  50. package/lib/map/nonTerminalNode/markdown.js +89 -0
  51. package/lib/map/nonTerminalNode/markdownStyle.js +63 -0
  52. package/lib/map/tagName.js +19 -0
  53. package/lib/markdown/bnf.js +362 -0
  54. package/lib/markdown/entries.js +81 -0
  55. package/lib/markdown/lexer.js +41 -0
  56. package/lib/markdown/parser.js +36 -0
  57. package/lib/markdownStyle/bnf.js +89 -0
  58. package/lib/markdownStyle/entries.js +53 -0
  59. package/lib/markdownStyle/lexer.js +41 -0
  60. package/lib/markdownStyle/parser.js +36 -0
  61. package/lib/mixins/node.js +145 -0
  62. package/lib/mixins/token.js +43 -0
  63. package/lib/node/css/amount.js +34 -0
  64. package/lib/node/css/argument.js +26 -0
  65. package/lib/node/css/arguments.js +32 -0
  66. package/lib/node/css/class.js +32 -0
  67. package/lib/node/css/colour.js +34 -0
  68. package/lib/node/css/content.js +30 -0
  69. package/lib/node/css/declaration.js +37 -0
  70. package/lib/node/css/identifier.js +34 -0
  71. package/lib/node/css/name.js +32 -0
  72. package/lib/node/css/pseudoClass.js +32 -0
  73. package/lib/node/css/ruleName.js +65 -0
  74. package/lib/node/css/ruleSet.js +65 -0
  75. package/lib/node/css/selector.js +26 -0
  76. package/lib/node/css/selectors.js +37 -0
  77. package/lib/node/css/selectorsList.js +40 -0
  78. package/lib/node/css/string.js +34 -0
  79. package/lib/node/css/target.js +26 -0
  80. package/lib/node/css/topmost.js +93 -0
  81. package/lib/node/css/value.js +31 -0
  82. package/lib/node/css/values.js +34 -0
  83. package/lib/node/css/verbatim.js +38 -0
  84. package/lib/node/css.js +89 -0
  85. package/lib/node/html/anchor/contents.js +26 -0
  86. package/lib/node/html/anchor/footnote.js +26 -0
  87. package/lib/node/html/anchor/index.js +26 -0
  88. package/lib/node/html/anchor.js +56 -0
  89. package/lib/node/html/container.js +43 -0
  90. package/lib/node/html/directive/contents.js +26 -0
  91. package/lib/node/html/directive/footnotes.js +26 -0
  92. package/lib/node/html/directive/index.js +26 -0
  93. package/lib/node/html/directive/pageNumber.js +26 -0
  94. package/lib/node/html/directive.js +41 -0
  95. package/lib/node/html/division.js +149 -0
  96. package/lib/node/html/error.js +59 -0
  97. package/lib/node/html/footnote.js +58 -0
  98. package/lib/node/html/heading/index.js +81 -0
  99. package/lib/node/html/heading/primary.js +30 -0
  100. package/lib/node/html/heading/quaternary.js +30 -0
  101. package/lib/node/html/heading/secondary.js +30 -0
  102. package/lib/node/html/heading/tertiary.js +30 -0
  103. package/lib/node/html/heading.js +56 -0
  104. package/lib/node/html/image.js +95 -0
  105. package/lib/node/html/item/contents.js +38 -0
  106. package/lib/node/html/item/footnote.js +39 -0
  107. package/lib/node/html/item/index.js +57 -0
  108. package/lib/node/html/item/ordered.js +41 -0
  109. package/lib/node/html/item/unordered.js +28 -0
  110. package/lib/node/html/line/block.js +33 -0
  111. package/lib/node/html/line.js +113 -0
  112. package/lib/node/html/link/contents.js +54 -0
  113. package/lib/node/html/link/email.js +111 -0
  114. package/lib/node/html/link/footnote.js +114 -0
  115. package/lib/node/html/link/hyper.js +111 -0
  116. package/lib/node/html/link/index.js +88 -0
  117. package/lib/node/html/list/contents.js +38 -0
  118. package/lib/node/html/list/footnotes.js +58 -0
  119. package/lib/node/html/list/index.js +38 -0
  120. package/lib/node/html/list/ordered.js +28 -0
  121. package/lib/node/html/list/unordered.js +28 -0
  122. package/lib/node/html/listing/block.js +55 -0
  123. package/lib/node/html/listing/inline.js +55 -0
  124. package/lib/node/html/pageNumber.js +86 -0
  125. package/lib/node/html/paragraph.js +28 -0
  126. package/lib/node/html/reference.js +28 -0
  127. package/lib/node/html/table.js +28 -0
  128. package/lib/node/html/tableBody.js +28 -0
  129. package/lib/node/html/tableBodyCell.js +28 -0
  130. package/lib/node/html/tableBodyRow.js +28 -0
  131. package/lib/node/html/tableHead.js +28 -0
  132. package/lib/node/html/tableHeadCell.js +28 -0
  133. package/lib/node/html/tableHeadRow.js +28 -0
  134. package/lib/node/html/text/block.js +28 -0
  135. package/lib/node/html/text/comma.js +39 -0
  136. package/lib/node/html/text/emphasised.js +32 -0
  137. package/lib/node/html/text/index.js +46 -0
  138. package/lib/node/html/text/inline.js +52 -0
  139. package/lib/node/html/text/plain.js +28 -0
  140. package/lib/node/html/text/strong.js +32 -0
  141. package/lib/node/html/text/stronglyEmphasised.js +87 -0
  142. package/lib/node/html/text/xml.js +34 -0
  143. package/lib/node/html/text.js +42 -0
  144. package/lib/node/html/topmost.js +125 -0
  145. package/lib/node/html/xmlElement/complex.js +35 -0
  146. package/lib/node/html/xmlElement/simple.js +34 -0
  147. package/lib/node/html/xmlElement.js +125 -0
  148. package/lib/node/html.js +282 -0
  149. package/lib/node/markdown/blockEnd.js +23 -0
  150. package/lib/node/markdown/blockStart.js +49 -0
  151. package/lib/node/markdown/className.js +30 -0
  152. package/lib/node/markdown/container.js +36 -0
  153. package/lib/node/markdown/directive/embed.js +60 -0
  154. package/lib/node/markdown/directive/include.js +59 -0
  155. package/lib/node/markdown/division.js +91 -0
  156. package/lib/node/markdown/document.js +62 -0
  157. package/lib/node/markdown/error.js +30 -0
  158. package/lib/node/markdown/footnote.js +30 -0
  159. package/lib/node/markdown/hyperlink.js +58 -0
  160. package/lib/node/markdown/image.js +30 -0
  161. package/lib/node/markdown/item/ordered.js +36 -0
  162. package/lib/node/markdown/languageName.js +30 -0
  163. package/lib/node/markdown/link/email.js +58 -0
  164. package/lib/node/markdown/link/footnote.js +32 -0
  165. package/lib/node/markdown/listng/block.js +37 -0
  166. package/lib/node/markdown/listng/inline.js +36 -0
  167. package/lib/node/markdown/path.js +30 -0
  168. package/lib/node/markdown/reference.js +36 -0
  169. package/lib/node/markdown/releaseName.js +30 -0
  170. package/lib/node/markdown/subDivision.js +53 -0
  171. package/lib/node/markdown/text/block.js +23 -0
  172. package/lib/node/markdown/text/plain.js +23 -0
  173. package/lib/node/markdown/text/xml.js +23 -0
  174. package/lib/node/markdown/text.js +66 -0
  175. package/lib/node/markdown/xmlAttribute.js +45 -0
  176. package/lib/node/markdown/xmlAttributeName.js +32 -0
  177. package/lib/node/markdown/xmlAttributeValue.js +31 -0
  178. package/lib/node/markdown/xmlElement/complex.js +23 -0
  179. package/lib/node/markdown/xmlElement/simple.js +23 -0
  180. package/lib/node/markdown/xmlElement.js +51 -0
  181. package/lib/node/markdown/xmlTag/complete.js +23 -0
  182. package/lib/node/markdown/xmlTag/end.js +35 -0
  183. package/lib/node/markdown/xmlTag/start.js +23 -0
  184. package/lib/node/markdown/xmlTag.js +57 -0
  185. package/lib/node/markdown/xmlTagName.js +32 -0
  186. package/lib/node/markdown.js +67 -0
  187. package/lib/node/markdownStyle/amount.js +31 -0
  188. package/lib/node/markdownStyle/argument.js +23 -0
  189. package/lib/node/markdownStyle/arguments.js +23 -0
  190. package/lib/node/markdownStyle/colour.js +30 -0
  191. package/lib/node/markdownStyle/content.js +39 -0
  192. package/lib/node/markdownStyle/declaration.js +23 -0
  193. package/lib/node/markdownStyle/document.js +23 -0
  194. package/lib/node/markdownStyle/error.js +23 -0
  195. package/lib/node/markdownStyle/identifier.js +31 -0
  196. package/lib/node/markdownStyle/name.js +23 -0
  197. package/lib/node/markdownStyle/nonsense.js +23 -0
  198. package/lib/node/markdownStyle/pseudoClass.js +23 -0
  199. package/lib/node/markdownStyle/ruleName.js +30 -0
  200. package/lib/node/markdownStyle/ruleSet.js +23 -0
  201. package/lib/node/markdownStyle/selector.js +23 -0
  202. package/lib/node/markdownStyle/selectors.js +23 -0
  203. package/lib/node/markdownStyle/selectorsList.js +23 -0
  204. package/lib/node/markdownStyle/string.js +30 -0
  205. package/lib/node/markdownStyle/value.js +23 -0
  206. package/lib/node/markdownStyle/values.js +23 -0
  207. package/lib/node/markdownStyle/verbatim.js +23 -0
  208. package/lib/node/markdownStyle.js +36 -0
  209. package/lib/prepends.js +26 -0
  210. package/lib/queries/markdown.js +20 -0
  211. package/lib/queries/markdownStyle.js +20 -0
  212. package/lib/ruleNames/markdown.js +435 -0
  213. package/lib/ruleNames/markdownStyle.js +135 -0
  214. package/lib/style/defaultMarkdown.js +258 -0
  215. package/lib/style/font.js +65 -0
  216. package/lib/styleElement/markdown/default.js +36 -0
  217. package/lib/styleElement/markdown.js +86 -0
  218. package/lib/styleElement.js +56 -0
  219. package/lib/tokenTypes.js +110 -0
  220. package/lib/transform/css/ruleSet.js +33 -0
  221. package/lib/transform/css/selectors.js +35 -0
  222. package/lib/transform/css/selectorsList.js +51 -0
  223. package/lib/transform/css.js +57 -0
  224. package/lib/transform/html/anchor/index.js +29 -0
  225. package/lib/transform/html/division.js +36 -0
  226. package/lib/transform/html/footnote.js +43 -0
  227. package/lib/transform/html/heading/index.js +25 -0
  228. package/lib/transform/html/index.js +64 -0
  229. package/lib/transform/html/item/contents.js +42 -0
  230. package/lib/transform/html/item/footnote.js +29 -0
  231. package/lib/transform/html/item/index.js +29 -0
  232. package/lib/transform/html/line.js +28 -0
  233. package/lib/transform/html/link/contents.js +39 -0
  234. package/lib/transform/html/link/footnote.js +54 -0
  235. package/lib/transform/html/list/contents.js +66 -0
  236. package/lib/transform/html/list/footnotes.js +38 -0
  237. package/lib/transform/html/list/index.js +34 -0
  238. package/lib/transform/html/pageNumber.js +33 -0
  239. package/lib/transform/html.js +44 -0
  240. package/lib/transform/markdown/directive/embed.js +28 -0
  241. package/lib/transform/markdown/directive/ignore.js +24 -0
  242. package/lib/transform/markdown/directive/include.js +34 -0
  243. package/lib/transform/markdown/subDivision.js +24 -0
  244. package/lib/transform/markdown.js +21 -0
  245. package/lib/utilities/contents.js +101 -0
  246. package/lib/utilities/css.js +53 -0
  247. package/lib/utilities/dom.js +58 -0
  248. package/lib/utilities/element.js +26 -0
  249. package/lib/utilities/entities.js +17 -0
  250. package/lib/utilities/entries.js +24 -0
  251. package/lib/utilities/grammar.js +160 -0
  252. package/lib/utilities/html.js +86 -0
  253. package/lib/utilities/index.js +250 -0
  254. package/lib/utilities/jsx.js +59 -0
  255. package/lib/utilities/markdown.js +61 -0
  256. package/lib/utilities/markdownStyle.js +13 -0
  257. package/lib/utilities/object.js +65 -0
  258. package/lib/utilities/query.js +64 -0
  259. package/lib/utilities/string.js +51 -0
  260. package/lib/utilities/stringLiteral.js +16 -0
  261. package/package.json +2 -2
@@ -0,0 +1,125 @@
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 XMLElementHTMLNode;
9
+ }
10
+ });
11
+ const _html = /*#__PURE__*/ _interop_require_default(require("../../node/html"));
12
+ const _constants = require("../../constants");
13
+ const _jsx = require("../../utilities/jsx");
14
+ function _interop_require_default(obj) {
15
+ return obj && obj.__esModule ? obj : {
16
+ default: obj
17
+ };
18
+ }
19
+ class XMLElementHTMLNode extends _html.default {
20
+ isJSX(context) {
21
+ const tagName = this.tagName(context), tagNameJSXTagname = (0, _jsx.isTagNameJSXTagName)(tagName), jsx = tagNameJSXTagname; ///
22
+ return jsx;
23
+ }
24
+ tagName(context) {
25
+ const markdownNode = this.getMarkdownNode(), tagName = markdownNode.tagName(context);
26
+ return tagName;
27
+ }
28
+ properties(context) {
29
+ const markdownNode = this.getMarkdownNode(), properties = markdownNode.properties(context);
30
+ return properties;
31
+ }
32
+ attributeNames(context) {
33
+ const markdownNode = this.getMarkdownNode(), attributeNames = markdownNode.attributeNames(context);
34
+ return attributeNames;
35
+ }
36
+ attributeValues(context) {
37
+ const markdownNode = this.getMarkdownNode(), attributeValues = markdownNode.attributeValues(context);
38
+ return attributeValues;
39
+ }
40
+ startingTag(context) {
41
+ let startingTag = _constants.EMPTY_STRING;
42
+ const tagName = this.tagName(context);
43
+ startingTag = `${startingTag}<${tagName}`;
44
+ const attributeNames = this.attributeNames(context), attributeValues = this.attributeValues(context);
45
+ attributeNames.forEach((attributeName, index)=>{
46
+ const attributeValue = attributeValues[index];
47
+ startingTag = `${startingTag} ${attributeName}="${attributeValue}"`;
48
+ });
49
+ startingTag = `${startingTag}/>`;
50
+ return startingTag;
51
+ }
52
+ closingTag(context) {
53
+ const tagName = this.tagName(context), closingTag = `</${tagName}>`;
54
+ return closingTag;
55
+ }
56
+ selfClosingTag(context) {
57
+ let selfClosingTag = _constants.EMPTY_STRING;
58
+ const tagName = this.tagName(context);
59
+ selfClosingTag = `${selfClosingTag}<${tagName}`;
60
+ const attributeNames = this.attributeNames(context), attributeValues = this.attributeValues(context);
61
+ attributeNames.forEach((attributeName, index)=>{
62
+ const attributeValue = attributeValues[index];
63
+ selfClosingTag = `${selfClosingTag} ${attributeName}="${attributeValue}"`;
64
+ });
65
+ selfClosingTag = `${selfClosingTag}/>`;
66
+ return selfClosingTag;
67
+ }
68
+ createDOMElement(context) {
69
+ let domElement;
70
+ const jsxDOMElement = this.createJSXDOMElement(context);
71
+ if (jsxDOMElement !== null) {
72
+ domElement = jsxDOMElement; ///
73
+ } else {
74
+ const nativeDOMElement = this.createNativeDOMElement(context);
75
+ domElement = nativeDOMElement; ///
76
+ }
77
+ return domElement;
78
+ }
79
+ createJSXDOMElement(context) {
80
+ let jsxDOMElement = null;
81
+ const jsx = this.isJSX(context);
82
+ if (jsx) {
83
+ const tagName = this.tagName(context), JSXElement = (0, _jsx.findJSXElement)(tagName, context);
84
+ if (JSXElement !== null) {
85
+ const properties = this.properties(context), jsxElement = /*#__PURE__*/ React.createElement(JSXElement, properties), domElement = jsxElement.getDOMElement();
86
+ jsxDOMElement = domElement; ///
87
+ }
88
+ }
89
+ return jsxDOMElement;
90
+ }
91
+ createNativeDOMElement(context) {
92
+ let nativeDOMElement;
93
+ const tagName = this.tagName(context);
94
+ nativeDOMElement = document.createElement(tagName);
95
+ const attributeNames = this.attributeNames(context), attributeValues = this.attributeValues(context);
96
+ attributeNames.forEach((attributeName, index)=>{
97
+ const attributeValue = attributeValues[index];
98
+ nativeDOMElement.setAttribute(attributeName, attributeValue);
99
+ });
100
+ return nativeDOMElement;
101
+ }
102
+ mount(parentDOMElement, siblingDOMElement, context) {
103
+ siblingDOMElement = super.mount(parentDOMElement, siblingDOMElement, context);
104
+ const jsxElement = this.domElement.__element__; ///
105
+ if (jsxElement) {
106
+ (0, _jsx.mountJSXElement)(jsxElement);
107
+ }
108
+ return siblingDOMElement;
109
+ }
110
+ unmount(parentDOMElement) {
111
+ const jsxElement = this.domElement.__element__; ///
112
+ if (jsxElement) {
113
+ (0, _jsx.unmountJSXElement)(jsxElement);
114
+ }
115
+ super.unmount(parentDOMElement);
116
+ }
117
+ static fromNothing(Class) {
118
+ return _html.default.fromNothing(Class);
119
+ }
120
+ static fromOuterNode(Class, outerNode) {
121
+ return _html.default.fromOuterNode(Class, outerNode);
122
+ }
123
+ }
124
+
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2h0bWwveG1sRWxlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi9ub2RlL2h0bWxcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uLy4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgZmluZEpTWEVsZW1lbnQsIG1vdW50SlNYRWxlbWVudCwgdW5tb3VudEpTWEVsZW1lbnQsIGlzVGFnTmFtZUpTWFRhZ05hbWUgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2pzeFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBYTUxFbGVtZW50SFRNTE5vZGUgZXh0ZW5kcyBIVE1MTm9kZSB7XG4gIGlzSlNYKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIHRhZ05hbWVKU1hUYWduYW1lID0gaXNUYWdOYW1lSlNYVGFnTmFtZSh0YWdOYW1lKSxcbiAgICAgICAgICBqc3ggPSB0YWdOYW1lSlNYVGFnbmFtZTsgLy8vXG5cbiAgICByZXR1cm4ganN4O1xuICB9XG5cbiAgdGFnTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgbWFya2Rvd25Ob2RlID0gdGhpcy5nZXRNYXJrZG93bk5vZGUoKSxcbiAgICAgICAgICB0YWdOYW1lID0gbWFya2Rvd25Ob2RlLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICByZXR1cm4gdGFnTmFtZTtcbiAgfVxuXG4gIHByb3BlcnRpZXMoY29udGV4dCkge1xuICAgIGNvbnN0IG1hcmtkb3duTm9kZSA9IHRoaXMuZ2V0TWFya2Rvd25Ob2RlKCksXG4gICAgICAgICAgcHJvcGVydGllcyA9IG1hcmtkb3duTm9kZS5wcm9wZXJ0aWVzKGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHByb3BlcnRpZXM7XG4gIH1cblxuICBhdHRyaWJ1dGVOYW1lcyhjb250ZXh0KSB7XG4gICAgY29uc3QgbWFya2Rvd25Ob2RlID0gdGhpcy5nZXRNYXJrZG93bk5vZGUoKSxcbiAgICAgIGF0dHJpYnV0ZU5hbWVzID0gbWFya2Rvd25Ob2RlLmF0dHJpYnV0ZU5hbWVzKGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZU5hbWVzO1xuICB9XG5cbiAgYXR0cmlidXRlVmFsdWVzKGNvbnRleHQpIHtcbiAgICBjb25zdCBtYXJrZG93bk5vZGUgPSB0aGlzLmdldE1hcmtkb3duTm9kZSgpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlcyA9IG1hcmtkb3duTm9kZS5hdHRyaWJ1dGVWYWx1ZXMoY29udGV4dCk7XG5cbiAgICByZXR1cm4gYXR0cmlidXRlVmFsdWVzO1xuICB9XG5cbiAgc3RhcnRpbmdUYWcoY29udGV4dCkge1xuICAgIGxldCBzdGFydGluZ1RhZyA9IEVNUFRZX1NUUklORztcblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBzdGFydGluZ1RhZyA9IGAke3N0YXJ0aW5nVGFnfTwke3RhZ05hbWV9YDtcblxuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWVzID0gdGhpcy5hdHRyaWJ1dGVOYW1lcyhjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZXMgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlcyhjb250ZXh0KTtcblxuICAgIGF0dHJpYnV0ZU5hbWVzLmZvckVhY2goKGF0dHJpYnV0ZU5hbWUsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBhdHRyaWJ1dGVWYWx1ZSA9IGF0dHJpYnV0ZVZhbHVlc1tpbmRleF07XG5cbiAgICAgIHN0YXJ0aW5nVGFnID0gYCR7c3RhcnRpbmdUYWd9ICR7YXR0cmlidXRlTmFtZX09XCIke2F0dHJpYnV0ZVZhbHVlfVwiYDtcbiAgICB9KTtcblxuICAgIHN0YXJ0aW5nVGFnID0gYCR7c3RhcnRpbmdUYWd9Lz5gO1xuXG4gICAgcmV0dXJuIHN0YXJ0aW5nVGFnO1xuICB9XG5cbiAgY2xvc2luZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBjbG9zaW5nVGFnID0gYDwvJHt0YWdOYW1lfT5gO1xuXG4gICAgcmV0dXJuIGNsb3NpbmdUYWc7XG4gIH1cblxuICBzZWxmQ2xvc2luZ1RhZyhjb250ZXh0KSB7XG4gICAgbGV0IHNlbGZDbG9zaW5nVGFnID0gRU1QVFlfU1RSSU5HO1xuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIHNlbGZDbG9zaW5nVGFnID0gYCR7c2VsZkNsb3NpbmdUYWd9PCR7dGFnTmFtZX1gO1xuXG4gICAgY29uc3QgYXR0cmlidXRlTmFtZXMgPSB0aGlzLmF0dHJpYnV0ZU5hbWVzKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlcyA9IHRoaXMuYXR0cmlidXRlVmFsdWVzKGNvbnRleHQpO1xuXG4gICAgYXR0cmlidXRlTmFtZXMuZm9yRWFjaCgoYXR0cmlidXRlTmFtZSwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlID0gYXR0cmlidXRlVmFsdWVzW2luZGV4XTtcblxuICAgICAgc2VsZkNsb3NpbmdUYWcgPSBgJHtzZWxmQ2xvc2luZ1RhZ30gJHthdHRyaWJ1dGVOYW1lfT1cIiR7YXR0cmlidXRlVmFsdWV9XCJgO1xuXG4gICAgfSk7XG5cbiAgICBzZWxmQ2xvc2luZ1RhZyA9IGAke3NlbGZDbG9zaW5nVGFnfS8+YDtcblxuICAgIHJldHVybiBzZWxmQ2xvc2luZ1RhZztcbiAgfVxuXG4gIGNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCkge1xuICAgIGxldCBkb21FbGVtZW50O1xuXG4gICAgY29uc3QganN4RE9NRWxlbWVudCA9IHRoaXMuY3JlYXRlSlNYRE9NRWxlbWVudChjb250ZXh0KTtcblxuICAgIGlmIChqc3hET01FbGVtZW50ICE9PSBudWxsKSB7XG4gICAgICBkb21FbGVtZW50ID0ganN4RE9NRWxlbWVudDsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG5hdGl2ZURPTUVsZW1lbnQgPSB0aGlzLmNyZWF0ZU5hdGl2ZURPTUVsZW1lbnQoY29udGV4dCk7XG5cbiAgICAgIGRvbUVsZW1lbnQgPSBuYXRpdmVET01FbGVtZW50OyAgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIGRvbUVsZW1lbnQ7XG4gIH1cblxuICBjcmVhdGVKU1hET01FbGVtZW50KGNvbnRleHQpIHtcbiAgICBsZXQganN4RE9NRWxlbWVudCA9IG51bGw7XG5cbiAgICBjb25zdCBqc3ggPSB0aGlzLmlzSlNYKGNvbnRleHQpO1xuXG4gICAgaWYgKGpzeCkge1xuICAgICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICAgIEpTWEVsZW1lbnQgPSBmaW5kSlNYRWxlbWVudCh0YWdOYW1lLCBjb250ZXh0KTtcblxuICAgICAgaWYgKEpTWEVsZW1lbnQgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IHRoaXMucHJvcGVydGllcyhjb250ZXh0KSxcbiAgICAgICAgICAgICAganN4RWxlbWVudCA9XG5cbiAgICAgICAgICAgICAgICA8SlNYRWxlbWVudCB7Li4ucHJvcGVydGllc30gLz5cblxuICAgICAgICAgICAgICAsXG4gICAgICAgICAgICAgIGRvbUVsZW1lbnQgPSBqc3hFbGVtZW50LmdldERPTUVsZW1lbnQoKTtcblxuICAgICAgICBqc3hET01FbGVtZW50ID0gZG9tRWxlbWVudDsgLy8vXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGpzeERPTUVsZW1lbnQ7XG4gIH1cblxuICBjcmVhdGVOYXRpdmVET01FbGVtZW50KGNvbnRleHQpIHtcbiAgICBsZXQgbmF0aXZlRE9NRWxlbWVudDtcblxuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCk7XG5cbiAgICBuYXRpdmVET01FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTtcblxuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWVzID0gdGhpcy5hdHRyaWJ1dGVOYW1lcyhjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZXMgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlcyhjb250ZXh0KTtcblxuICAgIGF0dHJpYnV0ZU5hbWVzLmZvckVhY2goKGF0dHJpYnV0ZU5hbWUsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBhdHRyaWJ1dGVWYWx1ZSA9IGF0dHJpYnV0ZVZhbHVlc1tpbmRleF07XG5cbiAgICAgIG5hdGl2ZURPTUVsZW1lbnQuc2V0QXR0cmlidXRlKGF0dHJpYnV0ZU5hbWUsIGF0dHJpYnV0ZVZhbHVlKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBuYXRpdmVET01FbGVtZW50O1xuICB9XG5cbiAgbW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpIHtcbiAgICBzaWJsaW5nRE9NRWxlbWVudCA9IHN1cGVyLm1vdW50KHBhcmVudERPTUVsZW1lbnQsIHNpYmxpbmdET01FbGVtZW50LCBjb250ZXh0KTtcblxuICAgIGNvbnN0IGpzeEVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQuX19lbGVtZW50X187ICAvLy9cblxuICAgIGlmIChqc3hFbGVtZW50KSB7IC8vL1xuICAgICAgbW91bnRKU1hFbGVtZW50KGpzeEVsZW1lbnQpO1xuICAgIH1cblxuICAgIHJldHVybiBzaWJsaW5nRE9NRWxlbWVudDtcbiAgfVxuXG4gIHVubW91bnQocGFyZW50RE9NRWxlbWVudCkge1xuICAgIGNvbnN0IGpzeEVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQuX19lbGVtZW50X187ICAvLy9cblxuICAgIGlmIChqc3hFbGVtZW50KSB7IC8vL1xuICAgICAgdW5tb3VudEpTWEVsZW1lbnQoanN4RWxlbWVudCk7XG4gICAgfVxuXG4gICAgc3VwZXIudW5tb3VudChwYXJlbnRET01FbGVtZW50KTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTm90aGluZyhDbGFzcykgeyByZXR1cm4gSFRNTE5vZGUuZnJvbU5vdGhpbmcoQ2xhc3MpOyB9XG5cbiAgc3RhdGljIGZyb21PdXRlck5vZGUoQ2xhc3MsIG91dGVyTm9kZSkgeyByZXR1cm4gSFRNTE5vZGUuZnJvbU91dGVyTm9kZShDbGFzcywgb3V0ZXJOb2RlKTsgfVxufVxuIl0sIm5hbWVzIjpbIlhNTEVsZW1lbnRIVE1MTm9kZSIsIkhUTUxOb2RlIiwiaXNKU1giLCJjb250ZXh0IiwidGFnTmFtZSIsInRhZ05hbWVKU1hUYWduYW1lIiwiaXNUYWdOYW1lSlNYVGFnTmFtZSIsImpzeCIsIm1hcmtkb3duTm9kZSIsImdldE1hcmtkb3duTm9kZSIsInByb3BlcnRpZXMiLCJhdHRyaWJ1dGVOYW1lcyIsImF0dHJpYnV0ZVZhbHVlcyIsInN0YXJ0aW5nVGFnIiwiRU1QVFlfU1RSSU5HIiwiZm9yRWFjaCIsImF0dHJpYnV0ZU5hbWUiLCJpbmRleCIsImF0dHJpYnV0ZVZhbHVlIiwiY2xvc2luZ1RhZyIsInNlbGZDbG9zaW5nVGFnIiwiY3JlYXRlRE9NRWxlbWVudCIsImRvbUVsZW1lbnQiLCJqc3hET01FbGVtZW50IiwiY3JlYXRlSlNYRE9NRWxlbWVudCIsIm5hdGl2ZURPTUVsZW1lbnQiLCJjcmVhdGVOYXRpdmVET01FbGVtZW50IiwiSlNYRWxlbWVudCIsImZpbmRKU1hFbGVtZW50IiwianN4RWxlbWVudCIsImdldERPTUVsZW1lbnQiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJzZXRBdHRyaWJ1dGUiLCJtb3VudCIsInBhcmVudERPTUVsZW1lbnQiLCJzaWJsaW5nRE9NRWxlbWVudCIsIl9fZWxlbWVudF9fIiwibW91bnRKU1hFbGVtZW50IiwidW5tb3VudCIsInVubW91bnRKU1hFbGVtZW50IiwiZnJvbU5vdGhpbmciLCJDbGFzcyIsImZyb21PdXRlck5vZGUiLCJvdXRlck5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU9BOzs7ZUFBcUJBOzs7NkRBTEE7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
@@ -0,0 +1,282 @@
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
+ const _occamdom = require("occam-dom");
12
+ const _node = /*#__PURE__*/ _interop_require_default(require("../mixins/node"));
13
+ const _constants = require("../constants");
14
+ const _dom = require("../utilities/dom");
15
+ function _interop_require_default(obj) {
16
+ return obj && obj.__esModule ? obj : {
17
+ default: obj
18
+ };
19
+ }
20
+ class HTMLNode extends _occamdom.Node {
21
+ constructor(outerNode, parentNode, childNodes, domElement){
22
+ super(outerNode, parentNode, childNodes);
23
+ this.domElement = domElement;
24
+ }
25
+ getDOMElement() {
26
+ return this.domElement;
27
+ }
28
+ setDOMElement(domElement) {
29
+ this.domElement = domElement;
30
+ }
31
+ resetDOMElement() {
32
+ this.domElement = null;
33
+ }
34
+ getRuleName() {
35
+ const markdownNode = this.getMarkdownNode(), ruleName = markdownNode.getRuleName();
36
+ return ruleName;
37
+ }
38
+ isTerminalNode() {
39
+ const terminalNode = false;
40
+ return terminalNode;
41
+ }
42
+ isNonTerminalNode() {
43
+ const nonTerminalNode = true;
44
+ return nonTerminalNode;
45
+ }
46
+ getMarkdownNode() {
47
+ const outerNode = this.getOuterNode(), markdownNode = outerNode; ///
48
+ return markdownNode;
49
+ }
50
+ getParentHTMLNode() {
51
+ const parentNode = this.getParentNode(), parentHTMLNode = parentNode; ///
52
+ return parentHTMLNode;
53
+ }
54
+ getChildHTMLNodes() {
55
+ const childNodes = this.getChildNodes(), childHTMLNodes = childNodes; ///
56
+ return childHTMLNodes;
57
+ }
58
+ getAncestorHTMLNodes() {
59
+ const ancestorNodes = this.getAncestorNodes(), ancestorHTMLNodes = ancestorNodes; ///
60
+ return ancestorHTMLNodes;
61
+ }
62
+ reduceChildHTMLNode(callback, initialValue) {
63
+ return this.reduceChildNode(callback, initialValue);
64
+ }
65
+ someAncestorHTMLNode(callback) {
66
+ return this.someAncestorNode(callback);
67
+ }
68
+ someChildHTMLNode(callback) {
69
+ return this.someChildNode(callback);
70
+ }
71
+ retrieveHTMLNode(callback) {
72
+ let htmlNode = null;
73
+ if (htmlNode === null) {
74
+ const childHTMLNodes = this.getChildHTMLNodes();
75
+ childHTMLNodes.some((childHTMLNode)=>{
76
+ htmlNode = childHTMLNode.retrieveHTMLNode(callback);
77
+ if (htmlNode !== null) {
78
+ return true;
79
+ }
80
+ });
81
+ }
82
+ if (htmlNode === null) {
83
+ htmlNode = this;
84
+ const result = callback(htmlNode);
85
+ if (!result) {
86
+ htmlNode = null;
87
+ }
88
+ }
89
+ return htmlNode;
90
+ }
91
+ removeChildHTMLNodes(removedChildHTMLNodes = null) {
92
+ let childHTMLNodes;
93
+ childHTMLNodes = this.getChildHTMLNodes();
94
+ if (removedChildHTMLNodes !== null) {
95
+ childHTMLNodes = childHTMLNodes.filter((childHTMLNode)=>{
96
+ const markdownNode = childHTMLNode.getMarkdownNode(), index = removedChildHTMLNodes.findIndex((removedChildHTMLNode)=>{
97
+ const markdownNodeMatches = removedChildHTMLNode.matchMarkdownNode(markdownNode);
98
+ if (markdownNodeMatches) {
99
+ return true;
100
+ }
101
+ });
102
+ if (index !== -1) {
103
+ return true;
104
+ }
105
+ });
106
+ }
107
+ let removedChildNodes = childHTMLNodes; ///
108
+ removedChildNodes = this.removeChildNodes(removedChildNodes);
109
+ removedChildHTMLNodes = removedChildNodes; ///
110
+ return removedChildHTMLNodes;
111
+ }
112
+ matchMarkdownNode(markdownNode) {
113
+ const outerNode = markdownNode, outerNodeMatches = this.matchOuterNode(outerNode), markdownNodeMatches = outerNodeMatches; ///
114
+ return markdownNodeMatches;
115
+ }
116
+ addChildHTMLNodes(addedChildHTMLNodes, startHTNLIndex) {
117
+ const addedChildNodes = addedChildHTMLNodes, startIndex = startHTNLIndex; ///
118
+ this.addChildNodes(addedChildNodes, startIndex);
119
+ }
120
+ adjustIndent(indent) {
121
+ if (indent !== null) {
122
+ indent = `${_constants.DOUBLE_SPACE}${indent}`;
123
+ }
124
+ return indent;
125
+ }
126
+ lines(context) {
127
+ let lines;
128
+ ({ lines = null } = this.constructor);
129
+ if (lines === null) {
130
+ lines = this.reduceChildNode((lines, childNode)=>{
131
+ const childNodeLines = childNode.lines(context);
132
+ lines += childNodeLines;
133
+ return lines;
134
+ }, 0);
135
+ }
136
+ return lines;
137
+ }
138
+ tagName(context) {
139
+ const { tagName } = this.constructor;
140
+ return tagName;
141
+ }
142
+ depth() {
143
+ const { depth = null } = this.constructor;
144
+ return depth;
145
+ }
146
+ className(context) {
147
+ const { className } = this.constructor;
148
+ return className;
149
+ }
150
+ closingTag(context) {
151
+ const tagName = this.tagName(context), closingTag = `</${tagName}>`;
152
+ return closingTag;
153
+ }
154
+ startingTag(context) {
155
+ const tagName = this.tagName(context), className = this.className(context), attributeName = this.attributeName(context), attributeValue = this.attributeValue(context), classHTML = className !== null ? ` class="${className}"` : _constants.EMPTY_STRING, attributeHTML = attributeName !== null && attributeValue !== null ? ` ${attributeName}="${attributeValue}"` : _constants.EMPTY_STRING, startingTag = `<${tagName}${classHTML}${attributeHTML}>`;
156
+ return startingTag;
157
+ }
158
+ selfClosingTag(context) {
159
+ const tagName = this.tagName(context), selfClosingTag = `<${tagName}/>`;
160
+ return selfClosingTag;
161
+ }
162
+ attributeName(context) {
163
+ const attributeName = null;
164
+ return attributeName;
165
+ }
166
+ attributeValue(context) {
167
+ const attributeValue = null;
168
+ return attributeValue;
169
+ }
170
+ createDOMElement(context) {
171
+ let domElement;
172
+ const tagName = this.tagName(context);
173
+ domElement = document.createElement(tagName);
174
+ const className = this.className(context), attributeName = this.attributeName(context), attributeValue = this.attributeValue(context);
175
+ if (className !== null) {
176
+ Object.assign(domElement, {
177
+ className
178
+ });
179
+ }
180
+ if (attributeName !== null && attributeValue !== null) {
181
+ domElement.setAttribute(attributeName, attributeValue);
182
+ }
183
+ return domElement;
184
+ }
185
+ mount(parentDOMElement, siblingDOMElement, context) {
186
+ this.domElement = this.createDOMElement(context);
187
+ siblingDOMElement !== null ? (0, _dom.insertAfter)(this.domElement, parentDOMElement, siblingDOMElement) : (0, _dom.insertBeforehand)(this.domElement, parentDOMElement);
188
+ parentDOMElement = this.domElement; ///
189
+ siblingDOMElement = null;
190
+ this.childNodes.forEach((childNode)=>{
191
+ siblingDOMElement = childNode.mount(parentDOMElement, siblingDOMElement, context);
192
+ });
193
+ siblingDOMElement = this.domElement; ///
194
+ return siblingDOMElement;
195
+ }
196
+ unmount(parentDOMElement) {
197
+ {
198
+ const parentDOMElement = this.domElement; ///
199
+ this.childNodes.forEach((childNode)=>{
200
+ childNode.unmount(parentDOMElement);
201
+ });
202
+ }
203
+ (0, _dom.remove)(this.domElement, parentDOMElement);
204
+ this.domElement = null;
205
+ }
206
+ asHTML(indent, context) {
207
+ if (context === undefined) {
208
+ context = indent; ///
209
+ indent = _constants.EMPTY_STRING;
210
+ }
211
+ let html;
212
+ indent = this.adjustIndent(indent);
213
+ const className = this.className(context), attributeName = this.attributeName(context), childNodesHTML = this.childNodesAsHTML(indent, context);
214
+ if (childNodesHTML !== _constants.EMPTY_STRING || className !== null || attributeName !== null) {
215
+ const startingTag = this.startingTag(context), closingTag = this.closingTag(context);
216
+ html = indent === null ? `${startingTag}${childNodesHTML}${closingTag}` : `${indent}${startingTag}
217
+ ${childNodesHTML}${indent}${closingTag}
218
+ `;
219
+ } else {
220
+ const selfClosingTag = this.selfClosingTag(context);
221
+ html = indent === null ? `${selfClosingTag}` : `${indent}${selfClosingTag}
222
+ `;
223
+ }
224
+ return html;
225
+ }
226
+ asPlainText(context) {
227
+ const childNodesPlainText = this.childNodesAsPlainText(context), plainText = childNodesPlainText; ///
228
+ return plainText;
229
+ }
230
+ childNodesAsHTML(indent, context) {
231
+ const childNodesHTML = this.reduceChildNode((childNodesHTML, childNode)=>{
232
+ const childNodeHTML = childNode.asHTML(indent, context);
233
+ childNodesHTML = `${childNodesHTML}${childNodeHTML}`;
234
+ return childNodesHTML;
235
+ }, _constants.EMPTY_STRING);
236
+ return childNodesHTML;
237
+ }
238
+ childNodesAsPlainText(context) {
239
+ const childNodesPlainText = this.reduceChildNode((childNodesPlainText, childNode)=>{
240
+ const childNodePlainText = childNode.asPlainText(context);
241
+ childNodesPlainText = `${childNodesPlainText}
242
+ ${childNodePlainText}`;
243
+ return childNodesPlainText;
244
+ }, _constants.EMPTY_STRING);
245
+ return childNodesPlainText;
246
+ }
247
+ static fromNothing(Class, ...remainingArguments) {
248
+ if (Class === undefined) {
249
+ Class = HTMLNode; ///
250
+ }
251
+ const domElement = null, htmlNode = _occamdom.Node.fromNothing(Class, domElement, ...remainingArguments);
252
+ return htmlNode;
253
+ }
254
+ static fromOuterNode(Class, outerNode, ...remainingArguments) {
255
+ if (outerNode === undefined) {
256
+ outerNode = Class; ///
257
+ Class = HTMLNode; ///
258
+ }
259
+ const domElement = null, htmlNode = _occamdom.Node.fromOuterNode(Class, outerNode, domElement, ...remainingArguments);
260
+ return htmlNode;
261
+ }
262
+ static fromDOMElement(Class, domElement, ...remainingArguments) {
263
+ if (domElement === undefined) {
264
+ domElement = Class; ///
265
+ Class = HTMLNode; ///
266
+ }
267
+ const htmlNode = _occamdom.Node.fromNothing(Class, domElement, ...remainingArguments);
268
+ return htmlNode;
269
+ }
270
+ static fromChildHTMLNodes(Class, childHTMLNodes, ...remainingArguments) {
271
+ if (childHTMLNodes === undefined) {
272
+ childHTMLNodes = Class; ///
273
+ Class = HTMLNode; ///
274
+ }
275
+ const childNodes = childHTMLNodes, domElement = null, htmlNode = _occamdom.Node.fromChildNodes(Class, childNodes, domElement, ...remainingArguments);
276
+ return htmlNode;
277
+ }
278
+ }
279
+ Object.assign(HTMLNode.prototype, _node.default);
280
+ const _default = HTMLNode;
281
+
282
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2h0bWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE5vZGUgfSBmcm9tIFwib2NjYW0tZG9tXCI7XG5cbmltcG9ydCBub2RlTWl4aW5zIGZyb20gXCIuLi9taXhpbnMvbm9kZVwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcsIERPVUJMRV9TUEFDRSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IHJlbW92ZSwgaW5zZXJ0QWZ0ZXIsIGluc2VydEJlZm9yZWhhbmQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2RvbVwiO1xuXG5jbGFzcyBIVE1MTm9kZSBleHRlbmRzIE5vZGUge1xuICBjb25zdHJ1Y3RvcihvdXRlck5vZGUsIHBhcmVudE5vZGUsIGNoaWxkTm9kZXMsIGRvbUVsZW1lbnQpIHtcbiAgICBzdXBlcihvdXRlck5vZGUsIHBhcmVudE5vZGUsIGNoaWxkTm9kZXMpO1xuXG4gICAgdGhpcy5kb21FbGVtZW50ID0gZG9tRWxlbWVudDtcbiAgfVxuXG4gIGdldERPTUVsZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZG9tRWxlbWVudDtcbiAgfVxuXG4gIHNldERPTUVsZW1lbnQoZG9tRWxlbWVudCkge1xuICAgIHRoaXMuZG9tRWxlbWVudCA9IGRvbUVsZW1lbnQ7XG4gIH1cblxuICByZXNldERPTUVsZW1lbnQoKSB7XG4gICAgdGhpcy5kb21FbGVtZW50ID0gbnVsbDtcbiAgfVxuXG4gIGdldFJ1bGVOYW1lKCkge1xuICAgIGNvbnN0IG1hcmtkb3duTm9kZSA9IHRoaXMuZ2V0TWFya2Rvd25Ob2RlKCksXG4gICAgICAgICAgcnVsZU5hbWUgPSBtYXJrZG93bk5vZGUuZ2V0UnVsZU5hbWUoKTtcblxuICAgIHJldHVybiBydWxlTmFtZTtcbiAgfVxuXG4gIGlzVGVybWluYWxOb2RlKCkge1xuICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIHRlcm1pbmFsTm9kZTtcbiAgfVxuXG4gIGlzTm9uVGVybWluYWxOb2RlKCkge1xuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IHRydWU7XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlO1xuICB9XG5cbiAgZ2V0TWFya2Rvd25Ob2RlKCkge1xuICAgIGNvbnN0IG91dGVyTm9kZSA9IHRoaXMuZ2V0T3V0ZXJOb2RlKCksXG4gICAgICAgICAgbWFya2Rvd25Ob2RlID0gb3V0ZXJOb2RlOyAvLy9cblxuICAgIHJldHVybiBtYXJrZG93bk5vZGU7XG4gIH1cblxuICBnZXRQYXJlbnRIVE1MTm9kZSgpIHtcbiAgICBjb25zdCBwYXJlbnROb2RlID0gdGhpcy5nZXRQYXJlbnROb2RlKCksXG4gICAgICAgICAgcGFyZW50SFRNTE5vZGUgPSBwYXJlbnROb2RlOyAgLy8vXG5cbiAgICByZXR1cm4gcGFyZW50SFRNTE5vZGU7XG4gIH1cblxuICBnZXRDaGlsZEhUTUxOb2RlcygpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gdGhpcy5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgY2hpbGRIVE1MTm9kZXMgPSBjaGlsZE5vZGVzOyAgLy8vXG5cbiAgICByZXR1cm4gY2hpbGRIVE1MTm9kZXM7XG4gIH1cblxuICBnZXRBbmNlc3RvckhUTUxOb2RlcygpIHtcbiAgICBjb25zdCBhbmNlc3Rvck5vZGVzID0gdGhpcy5nZXRBbmNlc3Rvck5vZGVzKCksXG4gICAgICAgICAgYW5jZXN0b3JIVE1MTm9kZXMgPSBhbmNlc3Rvck5vZGVzOyAgLy8vXG5cbiAgICByZXR1cm4gYW5jZXN0b3JIVE1MTm9kZXM7XG4gIH1cblxuICByZWR1Y2VDaGlsZEhUTUxOb2RlKGNhbGxiYWNrLCBpbml0aWFsVmFsdWUpIHsgcmV0dXJuIHRoaXMucmVkdWNlQ2hpbGROb2RlKGNhbGxiYWNrLCBpbml0aWFsVmFsdWUpOyB9XG5cbiAgc29tZUFuY2VzdG9ySFRNTE5vZGUoY2FsbGJhY2spIHsgcmV0dXJuIHRoaXMuc29tZUFuY2VzdG9yTm9kZShjYWxsYmFjayk7IH1cblxuICBzb21lQ2hpbGRIVE1MTm9kZShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5zb21lQ2hpbGROb2RlKGNhbGxiYWNrKTsgfVxuXG4gIHJldHJpZXZlSFRNTE5vZGUoY2FsbGJhY2spIHtcbiAgICBsZXQgaHRtbE5vZGUgPSBudWxsO1xuXG4gICAgaWYgKGh0bWxOb2RlID09PSBudWxsKSB7XG4gICAgICBjb25zdCBjaGlsZEhUTUxOb2RlcyA9IHRoaXMuZ2V0Q2hpbGRIVE1MTm9kZXMoKTtcblxuICAgICAgY2hpbGRIVE1MTm9kZXMuc29tZSgoY2hpbGRIVE1MTm9kZSkgPT4ge1xuICAgICAgICBodG1sTm9kZSA9IGNoaWxkSFRNTE5vZGUucmV0cmlldmVIVE1MTm9kZShjYWxsYmFjayk7XG5cbiAgICAgICAgaWYgKGh0bWxOb2RlICE9PSBudWxsKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChodG1sTm9kZSA9PT0gbnVsbCkge1xuICAgICAgaHRtbE5vZGUgPSB0aGlzO1xuXG4gICAgICBjb25zdCByZXN1bHQgPSBjYWxsYmFjayhodG1sTm9kZSk7XG5cbiAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgIGh0bWxOb2RlID0gbnVsbDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gaHRtbE5vZGU7XG4gIH1cblxuICByZW1vdmVDaGlsZEhUTUxOb2RlcyhyZW1vdmVkQ2hpbGRIVE1MTm9kZXMgPSBudWxsKSB7XG4gICAgbGV0IGNoaWxkSFRNTE5vZGVzO1xuXG4gICAgY2hpbGRIVE1MTm9kZXMgPSB0aGlzLmdldENoaWxkSFRNTE5vZGVzKCk7XG5cbiAgICBpZiAocmVtb3ZlZENoaWxkSFRNTE5vZGVzICE9PSBudWxsKSB7XG4gICAgICBjaGlsZEhUTUxOb2RlcyA9IGNoaWxkSFRNTE5vZGVzLmZpbHRlcigoY2hpbGRIVE1MTm9kZSkgPT4geyAvLy9cbiAgICAgICAgY29uc3QgbWFya2Rvd25Ob2RlID0gY2hpbGRIVE1MTm9kZS5nZXRNYXJrZG93bk5vZGUoKSxcbiAgICAgICAgICAgICAgaW5kZXggPSByZW1vdmVkQ2hpbGRIVE1MTm9kZXMuZmluZEluZGV4KChyZW1vdmVkQ2hpbGRIVE1MTm9kZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcmtkb3duTm9kZU1hdGNoZXMgPSByZW1vdmVkQ2hpbGRIVE1MTm9kZS5tYXRjaE1hcmtkb3duTm9kZShtYXJrZG93bk5vZGUpO1xuXG4gICAgICAgICAgICAgICAgaWYgKG1hcmtkb3duTm9kZU1hdGNoZXMpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBsZXQgcmVtb3ZlZENoaWxkTm9kZXMgPSBjaGlsZEhUTUxOb2RlczsgIC8vL1xuXG4gICAgcmVtb3ZlZENoaWxkTm9kZXMgPSB0aGlzLnJlbW92ZUNoaWxkTm9kZXMocmVtb3ZlZENoaWxkTm9kZXMpO1xuXG4gICAgcmVtb3ZlZENoaWxkSFRNTE5vZGVzID0gcmVtb3ZlZENoaWxkTm9kZXM7ICAvLy9cblxuICAgIHJldHVybiByZW1vdmVkQ2hpbGRIVE1MTm9kZXM7XG4gIH1cblxuICBtYXRjaE1hcmtkb3duTm9kZShtYXJrZG93bk5vZGUpIHtcbiAgICBjb25zdCBvdXRlck5vZGUgPSBtYXJrZG93bk5vZGUsIC8vL1xuICAgICAgICAgIG91dGVyTm9kZU1hdGNoZXMgPSB0aGlzLm1hdGNoT3V0ZXJOb2RlKG91dGVyTm9kZSksXG4gICAgICAgICAgbWFya2Rvd25Ob2RlTWF0Y2hlcyA9IG91dGVyTm9kZU1hdGNoZXM7IC8vL1xuXG4gICAgcmV0dXJuIG1hcmtkb3duTm9kZU1hdGNoZXM7XG4gIH1cblxuICBhZGRDaGlsZEhUTUxOb2RlcyhhZGRlZENoaWxkSFRNTE5vZGVzLCBzdGFydEhUTkxJbmRleCkge1xuICAgIGNvbnN0IGFkZGVkQ2hpbGROb2RlcyA9IGFkZGVkQ2hpbGRIVE1MTm9kZXMsICAvLy9cbiAgICAgICAgICBzdGFydEluZGV4ID0gc3RhcnRIVE5MSW5kZXg7ICAvLy9cblxuICAgIHRoaXMuYWRkQ2hpbGROb2RlcyhhZGRlZENoaWxkTm9kZXMsIHN0YXJ0SW5kZXgpO1xuICB9XG5cbiAgYWRqdXN0SW5kZW50KGluZGVudCkge1xuICAgIGlmIChpbmRlbnQgIT09IG51bGwpIHtcbiAgICAgIGluZGVudCA9IGAke0RPVUJMRV9TUEFDRX0ke2luZGVudH1gO1xuICAgIH1cblxuICAgIHJldHVybiBpbmRlbnQ7XG4gIH1cblxuICBsaW5lcyhjb250ZXh0KSB7XG4gICAgbGV0IGxpbmVzO1xuXG4gICAgKHsgbGluZXMgPSBudWxsIH0gPSB0aGlzLmNvbnN0cnVjdG9yKTtcblxuICAgIGlmIChsaW5lcyA9PT0gbnVsbCkge1xuICAgICAgbGluZXMgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgobGluZXMsIGNoaWxkTm9kZSkgPT4ge1xuICAgICAgICBjb25zdCBjaGlsZE5vZGVMaW5lcyA9IGNoaWxkTm9kZS5saW5lcyhjb250ZXh0KTtcblxuICAgICAgICBsaW5lcyArPSBjaGlsZE5vZGVMaW5lcztcblxuICAgICAgICByZXR1cm4gbGluZXM7XG4gICAgICB9LCAwKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGluZXM7XG4gIH1cblxuICB0YWdOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCB7IHRhZ05hbWUgfSA9IHRoaXMuY29uc3RydWN0b3I7XG5cbiAgICByZXR1cm4gdGFnTmFtZTtcbiAgfVxuXG4gIGRlcHRoKCkge1xuICAgIGNvbnN0IHsgZGVwdGggPSBudWxsIH0gPSB0aGlzLmNvbnN0cnVjdG9yO1xuXG4gICAgcmV0dXJuIGRlcHRoO1xuICB9XG5cbiAgY2xhc3NOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSB9ID0gdGhpcy5jb25zdHJ1Y3RvcjtcblxuICAgIHJldHVybiBjbGFzc05hbWU7XG4gIH1cblxuICBjbG9zaW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsb3NpbmdUYWcgPSBgPC8ke3RhZ05hbWV9PmA7XG5cbiAgICByZXR1cm4gY2xvc2luZ1RhZztcbiAgfVxuXG4gIHN0YXJ0aW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzSFRNTCA9IChjbGFzc05hbWUgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgYCBjbGFzcz1cIiR7Y2xhc3NOYW1lfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBhdHRyaWJ1dGVIVE1MID0gKChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSAmJiAoYXR0cmlidXRlVmFsdWUgIT09IG51bGwpKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBgICR7YXR0cmlidXRlTmFtZX09XCIke2F0dHJpYnV0ZVZhbHVlfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgc3RhcnRpbmdUYWcgPSBgPCR7dGFnTmFtZX0ke2NsYXNzSFRNTH0ke2F0dHJpYnV0ZUhUTUx9PmA7XG5cbiAgICByZXR1cm4gc3RhcnRpbmdUYWc7XG4gIH1cblxuICBzZWxmQ2xvc2luZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBzZWxmQ2xvc2luZ1RhZyA9IGA8JHt0YWdOYW1lfS8+YDtcblxuICAgIHJldHVybiBzZWxmQ2xvc2luZ1RhZztcbiAgfVxuXG4gIGF0dHJpYnV0ZU5hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZU5hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSB7XG4gICAgY29uc3QgYXR0cmlidXRlVmFsdWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZVZhbHVlO1xuICB9XG5cbiAgY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KSB7XG4gICAgbGV0IGRvbUVsZW1lbnQ7XG5cbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpO1xuXG4gICAgZG9tRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7XG5cbiAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KTtcblxuICAgIGlmIChjbGFzc05hbWUgIT09IG51bGwpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24oZG9tRWxlbWVudCwge1xuICAgICAgICBjbGFzc05hbWVcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICgoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkgJiYgKGF0dHJpYnV0ZVZhbHVlICE9PSBudWxsKSkge1xuICAgICAgZG9tRWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSwgYXR0cmlidXRlVmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBkb21FbGVtZW50O1xuICB9XG5cbiAgbW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpIHtcbiAgICB0aGlzLmRvbUVsZW1lbnQgPSB0aGlzLmNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCk7XG5cbiAgICAoc2libGluZ0RPTUVsZW1lbnQgIT09IG51bGwpID9cbiAgICAgIGluc2VydEFmdGVyKHRoaXMuZG9tRWxlbWVudCwgcGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQpIDpcbiAgICAgICAgaW5zZXJ0QmVmb3JlaGFuZCh0aGlzLmRvbUVsZW1lbnQsIHBhcmVudERPTUVsZW1lbnQpO1xuXG4gICAgcGFyZW50RE9NRWxlbWVudCA9IHRoaXMuZG9tRWxlbWVudDsgLy8vXG5cbiAgICBzaWJsaW5nRE9NRWxlbWVudCA9IG51bGw7XG5cbiAgICB0aGlzLmNoaWxkTm9kZXMuZm9yRWFjaCgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBzaWJsaW5nRE9NRWxlbWVudCA9IGNoaWxkTm9kZS5tb3VudChwYXJlbnRET01FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCwgY29udGV4dCk7XG4gICAgfSk7XG5cbiAgICBzaWJsaW5nRE9NRWxlbWVudCA9IHRoaXMuZG9tRWxlbWVudDsgIC8vL1xuXG4gICAgcmV0dXJuIHNpYmxpbmdET01FbGVtZW50O1xuICB9XG5cbiAgdW5tb3VudChwYXJlbnRET01FbGVtZW50KSB7XG4gICAge1xuICAgICAgY29uc3QgcGFyZW50RE9NRWxlbWVudCA9IHRoaXMuZG9tRWxlbWVudDsgLy8vXG5cbiAgICAgIHRoaXMuY2hpbGROb2Rlcy5mb3JFYWNoKChjaGlsZE5vZGUpID0+IHtcbiAgICAgICAgY2hpbGROb2RlLnVubW91bnQocGFyZW50RE9NRWxlbWVudCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZW1vdmUodGhpcy5kb21FbGVtZW50LCBwYXJlbnRET01FbGVtZW50KTtcblxuICAgIHRoaXMuZG9tRWxlbWVudCA9IG51bGw7XG4gIH1cblxuICBhc0hUTUwoaW5kZW50LCBjb250ZXh0KSB7XG4gICAgaWYgKGNvbnRleHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgY29udGV4dCA9IGluZGVudDsgLy8vXG5cbiAgICAgIGluZGVudCA9IEVNUFRZX1NUUklORztcbiAgICB9XG5cbiAgICBsZXQgaHRtbDtcblxuICAgIGluZGVudCA9IHRoaXMuYWRqdXN0SW5kZW50KGluZGVudCk7XG5cbiAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNoaWxkTm9kZXNIVE1MID0gdGhpcy5jaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCk7XG5cbiAgICBpZiAoKGNoaWxkTm9kZXNIVE1MICE9PSBFTVBUWV9TVFJJTkcpIHx8IChjbGFzc05hbWUgIT09IG51bGwpIHx8IChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSkge1xuICAgICAgY29uc3Qgc3RhcnRpbmdUYWcgPSB0aGlzLnN0YXJ0aW5nVGFnKGNvbnRleHQpLFxuICAgICAgICAgICAgY2xvc2luZ1RhZyA9IHRoaXMuY2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgaHRtbCA9IChpbmRlbnQgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgIGAke3N0YXJ0aW5nVGFnfSR7Y2hpbGROb2Rlc0hUTUx9JHtjbG9zaW5nVGFnfWAgOlxuICAgICAgICAgICAgICAgICBgJHtpbmRlbnR9JHtzdGFydGluZ1RhZ31cbiR7Y2hpbGROb2Rlc0hUTUx9JHtpbmRlbnR9JHtjbG9zaW5nVGFnfVxuYDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgc2VsZkNsb3NpbmdUYWcgPSB0aGlzLnNlbGZDbG9zaW5nVGFnKGNvbnRleHQpO1xuXG4gICAgICBodG1sID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgYCR7c2VsZkNsb3NpbmdUYWd9YCA6XG4gICAgICAgICAgICAgICAgIGAke2luZGVudH0ke3NlbGZDbG9zaW5nVGFnfVxuYDtcbiAgICB9XG5cbiAgICByZXR1cm4gaHRtbDtcbiAgfVxuXG4gIGFzUGxhaW5UZXh0KGNvbnRleHQpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzUGxhaW5UZXh0ID0gdGhpcy5jaGlsZE5vZGVzQXNQbGFpblRleHQoY29udGV4dCksXG4gICAgICAgICAgcGxhaW5UZXh0ID0gY2hpbGROb2Rlc1BsYWluVGV4dDsgIC8vL1xuXG4gICAgcmV0dXJuIHBsYWluVGV4dDtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2Rlc0hUTUwgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgoY2hpbGROb2Rlc0hUTUwsIGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlSFRNTCA9IGNoaWxkTm9kZS5hc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgY2hpbGROb2Rlc0hUTUwgPSBgJHtjaGlsZE5vZGVzSFRNTH0ke2NoaWxkTm9kZUhUTUx9YDtcblxuICAgICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICAgIH0sIEVNUFRZX1NUUklORyk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNQbGFpblRleHQoY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXNQbGFpblRleHQgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgoY2hpbGROb2Rlc1BsYWluVGV4dCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVQbGFpblRleHQgPSBjaGlsZE5vZGUuYXNQbGFpblRleHQoY29udGV4dCk7XG5cbiAgICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSBgJHtjaGlsZE5vZGVzUGxhaW5UZXh0fVxuJHtjaGlsZE5vZGVQbGFpblRleHR9YDtcblxuICAgICAgcmV0dXJuIGNoaWxkTm9kZXNQbGFpblRleHQ7XG4gICAgfSwgRU1QVFlfU1RSSU5HKTtcblxuICAgIHJldHVybiBjaGlsZE5vZGVzUGxhaW5UZXh0O1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKENsYXNzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBpZiAoQ2xhc3MgPT09IHVuZGVmaW5lZCkge1xuICAgICAgQ2xhc3MgPSBIVE1MTm9kZTsgLy8vXG4gICAgfVxuXG4gICAgY29uc3QgZG9tRWxlbWVudCA9IG51bGwsXG4gICAgICAgICAgaHRtbE5vZGUgPSBOb2RlLmZyb21Ob3RoaW5nKENsYXNzLCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIGh0bWxOb2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21PdXRlck5vZGUoQ2xhc3MsIG91dGVyTm9kZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgaWYgKG91dGVyTm9kZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBvdXRlck5vZGUgPSBDbGFzczsgIC8vL1xuXG4gICAgICBDbGFzcyA9IEhUTUxOb2RlOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBkb21FbGVtZW50ID0gbnVsbCxcbiAgICAgICAgICBodG1sTm9kZSA9IE5vZGUuZnJvbU91dGVyTm9kZShDbGFzcywgb3V0ZXJOb2RlLCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIGh0bWxOb2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21ET01FbGVtZW50KENsYXNzLCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBpZiAoZG9tRWxlbWVudCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBkb21FbGVtZW50ID0gQ2xhc3M7IC8vL1xuXG4gICAgICBDbGFzcyA9IEhUTUxOb2RlOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBodG1sTm9kZSA9IE5vZGUuZnJvbU5vdGhpbmcoQ2xhc3MsIGRvbUVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICByZXR1cm4gaHRtbE5vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbUNoaWxkSFRNTE5vZGVzKENsYXNzLCBjaGlsZEhUTUxOb2RlcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgaWYgKGNoaWxkSFRNTE5vZGVzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNoaWxkSFRNTE5vZGVzID0gQ2xhc3M7ICAvLy9cblxuICAgICAgQ2xhc3MgPSBIVE1MTm9kZTsgLy8vXG4gICAgfVxuXG4gICAgY29uc3QgY2hpbGROb2RlcyA9IGNoaWxkSFRNTE5vZGVzLCAgLy8vXG4gICAgICAgICAgZG9tRWxlbWVudCA9IG51bGwsXG4gICAgICAgICAgaHRtbE5vZGUgPSBOb2RlLmZyb21DaGlsZE5vZGVzKENsYXNzLCBjaGlsZE5vZGVzLCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIGh0bWxOb2RlO1xuICB9XG59XG5cbk9iamVjdC5hc3NpZ24oSFRNTE5vZGUucHJvdG90eXBlLCBub2RlTWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgSFRNTE5vZGU7XG4iXSwibmFtZXMiOlsiSFRNTE5vZGUiLCJOb2RlIiwib3V0ZXJOb2RlIiwicGFyZW50Tm9kZSIsImNoaWxkTm9kZXMiLCJkb21FbGVtZW50IiwiZ2V0RE9NRWxlbWVudCIsInNldERPTUVsZW1lbnQiLCJyZXNldERPTUVsZW1lbnQiLCJnZXRSdWxlTmFtZSIsIm1hcmtkb3duTm9kZSIsImdldE1hcmtkb3duTm9kZSIsInJ1bGVOYW1lIiwiaXNUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJpc05vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZSIsImdldE91dGVyTm9kZSIsImdldFBhcmVudEhUTUxOb2RlIiwiZ2V0UGFyZW50Tm9kZSIsInBhcmVudEhUTUxOb2RlIiwiZ2V0Q2hpbGRIVE1MTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwiY2hpbGRIVE1MTm9kZXMiLCJnZXRBbmNlc3RvckhUTUxOb2RlcyIsImFuY2VzdG9yTm9kZXMiLCJnZXRBbmNlc3Rvck5vZGVzIiwiYW5jZXN0b3JIVE1MTm9kZXMiLCJyZWR1Y2VDaGlsZEhUTUxOb2RlIiwiY2FsbGJhY2siLCJpbml0aWFsVmFsdWUiLCJyZWR1Y2VDaGlsZE5vZGUiLCJzb21lQW5jZXN0b3JIVE1MTm9kZSIsInNvbWVBbmNlc3Rvck5vZGUiLCJzb21lQ2hpbGRIVE1MTm9kZSIsInNvbWVDaGlsZE5vZGUiLCJyZXRyaWV2ZUhUTUxOb2RlIiwiaHRtbE5vZGUiLCJzb21lIiwiY2hpbGRIVE1MTm9kZSIsInJlc3VsdCIsInJlbW92ZUNoaWxkSFRNTE5vZGVzIiwicmVtb3ZlZENoaWxkSFRNTE5vZGVzIiwiZmlsdGVyIiwiaW5kZXgiLCJmaW5kSW5kZXgiLCJyZW1vdmVkQ2hpbGRIVE1MTm9kZSIsIm1hcmtkb3duTm9kZU1hdGNoZXMiLCJtYXRjaE1hcmtkb3duTm9kZSIsInJlbW92ZWRDaGlsZE5vZGVzIiwicmVtb3ZlQ2hpbGROb2RlcyIsIm91dGVyTm9kZU1hdGNoZXMiLCJtYXRjaE91dGVyTm9kZSIsImFkZENoaWxkSFRNTE5vZGVzIiwiYWRkZWRDaGlsZEhUTUxOb2RlcyIsInN0YXJ0SFROTEluZGV4IiwiYWRkZWRDaGlsZE5vZGVzIiwic3RhcnRJbmRleCIsImFkZENoaWxkTm9kZXMiLCJhZGp1c3RJbmRlbnQiLCJpbmRlbnQiLCJET1VCTEVfU1BBQ0UiLCJsaW5lcyIsImNvbnRleHQiLCJjaGlsZE5vZGUiLCJjaGlsZE5vZGVMaW5lcyIsInRhZ05hbWUiLCJkZXB0aCIsImNsYXNzTmFtZSIsImNsb3NpbmdUYWciLCJzdGFydGluZ1RhZyIsImF0dHJpYnV0ZU5hbWUiLCJhdHRyaWJ1dGVWYWx1ZSIsImNsYXNzSFRNTCIsIkVNUFRZX1NUUklORyIsImF0dHJpYnV0ZUhUTUwiLCJzZWxmQ2xvc2luZ1RhZyIsImNyZWF0ZURPTUVsZW1lbnQiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJzZXRBdHRyaWJ1dGUiLCJtb3VudCIsInBhcmVudERPTUVsZW1lbnQiLCJzaWJsaW5nRE9NRWxlbWVudCIsImluc2VydEFmdGVyIiwiaW5zZXJ0QmVmb3JlaGFuZCIsImZvckVhY2giLCJ1bm1vdW50IiwicmVtb3ZlIiwiYXNIVE1MIiwidW5kZWZpbmVkIiwiaHRtbCIsImNoaWxkTm9kZXNIVE1MIiwiY2hpbGROb2Rlc0FzSFRNTCIsImFzUGxhaW5UZXh0IiwiY2hpbGROb2Rlc1BsYWluVGV4dCIsImNoaWxkTm9kZXNBc1BsYWluVGV4dCIsInBsYWluVGV4dCIsImNoaWxkTm9kZUhUTUwiLCJjaGlsZE5vZGVQbGFpblRleHQiLCJmcm9tTm90aGluZyIsIkNsYXNzIiwicmVtYWluaW5nQXJndW1lbnRzIiwiZnJvbU91dGVyTm9kZSIsImZyb21ET01FbGVtZW50IiwiZnJvbUNoaWxkSFRNTE5vZGVzIiwiZnJvbUNoaWxkTm9kZXMiLCJwcm90b3R5cGUiLCJub2RlTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFvYUE7OztlQUFBOzs7MEJBbGFxQjs2REFFRTsyQkFFb0I7cUJBQ1c7Ozs7OztBQUV0RCxNQUFNQSxpQkFBaUJDLGNBQUk7SUFDekIsWUFBWUMsU0FBUyxFQUFFQyxVQUFVLEVBQUVDLFVBQVUsRUFBRUMsVUFBVSxDQUFFO1FBQ3pELEtBQUssQ0FBQ0gsV0FBV0MsWUFBWUM7UUFFN0IsSUFBSSxDQUFDQyxVQUFVLEdBQUdBO0lBQ3BCO0lBRUFDLGdCQUFnQjtRQUNkLE9BQU8sSUFBSSxDQUFDRCxVQUFVO0lBQ3hCO0lBRUFFLGNBQWNGLFVBQVUsRUFBRTtRQUN4QixJQUFJLENBQUNBLFVBQVUsR0FBR0E7SUFDcEI7SUFFQUcsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQ0gsVUFBVSxHQUFHO0lBQ3BCO0lBRUFJLGNBQWM7UUFDWixNQUFNQyxlQUFlLElBQUks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
@@ -0,0 +1,23 @@
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 BlockEndMarkdownNode;
9
+ }
10
+ });
11
+ const _markdown = /*#__PURE__*/ _interop_require_default(require("../../node/markdown"));
12
+ function _interop_require_default(obj) {
13
+ return obj && obj.__esModule ? obj : {
14
+ default: obj
15
+ };
16
+ }
17
+ class BlockEndMarkdownNode extends _markdown.default {
18
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
19
+ return _markdown.default.fromRuleNameChildNodesOpacityAndPrecedence(BlockEndMarkdownNode, ruleName, childNodes, opacity, precedence);
20
+ }
21
+ }
22
+
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL21hcmtkb3duL2Jsb2NrRW5kLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTWFya2Rvd25Ob2RlIGZyb20gXCIuLi8uLi9ub2RlL21hcmtkb3duXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJsb2NrRW5kTWFya2Rvd25Ob2RlIGV4dGVuZHMgTWFya2Rvd25Ob2RlIHtcbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSkgeyByZXR1cm4gTWFya2Rvd25Ob2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShCbG9ja0VuZE1hcmtkb3duTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiQmxvY2tFbmRNYXJrZG93bk5vZGUiLCJNYXJrZG93bk5vZGUiLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UiLCJydWxlTmFtZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBSUE7OztlQUFxQkE7OztpRUFGSTs7Ozs7O0FBRVYsTUFBTUEsNkJBQTZCQyxpQkFBWTtJQUM1RCxPQUFPQywyQ0FBMkNDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRTtRQUFFLE9BQU9MLGlCQUFZLENBQUNDLDBDQUEwQyxDQUFDRixzQkFBc0JHLFVBQVVDLFlBQVlDLFNBQVNDO0lBQWE7QUFDbE8ifQ==
@@ -0,0 +1,49 @@
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 BlockStartMarkdownNode;
9
+ }
10
+ });
11
+ const _markdown = /*#__PURE__*/ _interop_require_default(require("../../node/markdown"));
12
+ const _releaseName = /*#__PURE__*/ _interop_require_default(require("./releaseName"));
13
+ const _languageName = /*#__PURE__*/ _interop_require_default(require("./languageName"));
14
+ function _interop_require_default(obj) {
15
+ return obj && obj.__esModule ? obj : {
16
+ default: obj
17
+ };
18
+ }
19
+ class BlockStartMarkdownNode extends _markdown.default {
20
+ releaseName(context) {
21
+ const releaseName = this.fromFourthChildNode((fourthChildNode)=>{
22
+ let releaseName = null;
23
+ const fourthChildNodeClassNameMarkdownNode = fourthChildNode instanceof _releaseName.default;
24
+ if (fourthChildNodeClassNameMarkdownNode) {
25
+ const releaseNameMarkdownNode = fourthChildNode; ///
26
+ releaseName = releaseNameMarkdownNode.releaseName(context);
27
+ }
28
+ return releaseName;
29
+ });
30
+ return releaseName;
31
+ }
32
+ languageName(context) {
33
+ const languageName = this.fromSecondChildNode((secondChildNode)=>{
34
+ let languageName = null;
35
+ const secondChildNodeClassNameMarkdownNode = secondChildNode instanceof _languageName.default;
36
+ if (secondChildNodeClassNameMarkdownNode) {
37
+ const languageNameMarkdownNode = secondChildNode; ///
38
+ languageName = languageNameMarkdownNode.languageName(context);
39
+ }
40
+ return languageName;
41
+ });
42
+ return languageName;
43
+ }
44
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
45
+ return _markdown.default.fromRuleNameChildNodesOpacityAndPrecedence(BlockStartMarkdownNode, ruleName, childNodes, opacity, precedence);
46
+ }
47
+ }
48
+
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL21hcmtkb3duL2Jsb2NrU3RhcnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNYXJrZG93bk5vZGUgZnJvbSBcIi4uLy4uL25vZGUvbWFya2Rvd25cIjtcbmltcG9ydCBSZWxlYXNlTmFtZU1hcmtkb3duTm9kZSBmcm9tIFwiLi9yZWxlYXNlTmFtZVwiO1xuaW1wb3J0IExhbmd1YWdlTmFtZU1hcmtkb3duTm9kZSBmcm9tIFwiLi9sYW5ndWFnZU5hbWVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQmxvY2tTdGFydE1hcmtkb3duTm9kZSBleHRlbmRzIE1hcmtkb3duTm9kZSB7XG4gIHJlbGVhc2VOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCByZWxlYXNlTmFtZSA9IHRoaXMuZnJvbUZvdXJ0aENoaWxkTm9kZSgoZm91cnRoQ2hpbGROb2RlKSA9PiB7XG4gICAgICBsZXQgcmVsZWFzZU5hbWUgPSBudWxsO1xuXG4gICAgICBjb25zdCBmb3VydGhDaGlsZE5vZGVDbGFzc05hbWVNYXJrZG93bk5vZGUgPSAoZm91cnRoQ2hpbGROb2RlIGluc3RhbmNlb2YgUmVsZWFzZU5hbWVNYXJrZG93bk5vZGUpO1xuXG4gICAgICBpZiAoZm91cnRoQ2hpbGROb2RlQ2xhc3NOYW1lTWFya2Rvd25Ob2RlKSB7XG4gICAgICAgIGNvbnN0IHJlbGVhc2VOYW1lTWFya2Rvd25Ob2RlID0gZm91cnRoQ2hpbGROb2RlOyAgLy8vXG5cbiAgICAgICAgcmVsZWFzZU5hbWUgPSByZWxlYXNlTmFtZU1hcmtkb3duTm9kZS5yZWxlYXNlTmFtZShjb250ZXh0KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlbGVhc2VOYW1lO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHJlbGVhc2VOYW1lO1xuICB9XG5cbiAgbGFuZ3VhZ2VOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBsYW5ndWFnZU5hbWUgPSB0aGlzLmZyb21TZWNvbmRDaGlsZE5vZGUoKHNlY29uZENoaWxkTm9kZSkgPT4ge1xuICAgICAgbGV0IGxhbmd1YWdlTmFtZSA9IG51bGw7XG5cbiAgICAgIGNvbnN0IHNlY29uZENoaWxkTm9kZUNsYXNzTmFtZU1hcmtkb3duTm9kZSA9IChzZWNvbmRDaGlsZE5vZGUgaW5zdGFuY2VvZiBMYW5ndWFnZU5hbWVNYXJrZG93bk5vZGUpO1xuXG4gICAgICBpZiAoc2Vjb25kQ2hpbGROb2RlQ2xhc3NOYW1lTWFya2Rvd25Ob2RlKSB7XG4gICAgICAgIGNvbnN0IGxhbmd1YWdlTmFtZU1hcmtkb3duTm9kZSA9IHNlY29uZENoaWxkTm9kZTsgIC8vL1xuXG4gICAgICAgIGxhbmd1YWdlTmFtZSA9IGxhbmd1YWdlTmFtZU1hcmtkb3duTm9kZS5sYW5ndWFnZU5hbWUoY29udGV4dCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBsYW5ndWFnZU5hbWU7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbGFuZ3VhZ2VOYW1lO1xuICB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSkgeyByZXR1cm4gTWFya2Rvd25Ob2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShCbG9ja1N0YXJ0TWFya2Rvd25Ob2RlLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSk7IH1cbn1cbiJdLCJuYW1lcyI6WyJCbG9ja1N0YXJ0TWFya2Rvd25Ob2RlIiwiTWFya2Rvd25Ob2RlIiwicmVsZWFzZU5hbWUiLCJjb250ZXh0IiwiZnJvbUZvdXJ0aENoaWxkTm9kZSIsImZvdXJ0aENoaWxkTm9kZSIsImZvdXJ0aENoaWxkTm9kZUNsYXNzTmFtZU1hcmtkb3duTm9kZSIsIlJlbGVhc2VOYW1lTWFya2Rvd25Ob2RlIiwicmVsZWFzZU5hbWVNYXJrZG93bk5vZGUiLCJsYW5ndWFnZU5hbWUiLCJmcm9tU2Vjb25kQ2hpbGROb2RlIiwic2Vjb25kQ2hpbGROb2RlIiwic2Vjb25kQ2hpbGROb2RlQ2xhc3NOYW1lTWFya2Rvd25Ob2RlIiwiTGFuZ3VhZ2VOYW1lTWFya2Rvd25Ob2RlIiwibGFuZ3VhZ2VOYW1lTWFya2Rvd25Ob2RlIiwiZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlIiwicnVsZU5hbWUiLCJjaGlsZE5vZGVzIiwib3BhY2l0eSIsInByZWNlZGVuY2UiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBcUJBOzs7aUVBSkk7b0VBQ1c7cUVBQ0M7Ozs7OztBQUV0QixNQUFNQSwrQkFBK0JDLGlCQUFZO0lBQzlEQyxZQUFZQyxPQUFPLEVBQUU7UUFDbkIsTUFBTUQsY0FBYyxJQUFJLENBQUNFLG1CQUFtQixDQUFDLENBQUNDO1lBQzVDLElBQUlILGNBQWM7WUFFbEIsTUFBTUksdUNBQXdDRCwyQkFBMkJFLG9CQUF1QjtZQUVoRyxJQUFJRCxzQ0FBc0M7Z0JBQ3hDLE1BQU1FLDBCQUEwQkgsaUJBQWtCLEdBQUc7Z0JBRXJESCxjQUFjTSx3QkFBd0JOLFdBQVcsQ0FBQ0M7WUFDcEQ7WUFFQSxPQUFPRDtRQUNUO1FBRUEsT0FBT0E7SUFDVDtJQUVBTyxhQUFhTixPQUFPLEVBQUU7UUFDcEIsTUFBTU0sZUFBZSxJQUFJLENBQUNDLG1CQUFtQixDQUFDLENBQUNDO1lBQzdDLElBQUlGLGVBQWU7WUFFbkIsTUFBTUcsdUNBQXdDRCwyQkFBMkJFLHFCQUF3QjtZQUVqRyxJQUFJRCxzQ0FBc0M7Z0JBQ3hDLE1BQU1FLDJCQUEyQkgsaUJBQWtCLEdBQUc7Z0JBRXRERixlQUFlSyx5QkFBeUJMLFlBQVksQ0FBQ047WUFDdkQ7WUFFQSxPQUFPTTtRQUNUO1FBRUEsT0FBT0E7SUFDVDtJQUVBLE9BQU9NLDJDQUEyQ0MsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLE9BQU8sRUFBRUMsVUFBVSxFQUFFO1FBQUUsT0FBT2xCLGlCQUFZLENBQUNjLDBDQUEwQyxDQUFDZix3QkFBd0JnQixVQUFVQyxZQUFZQyxTQUFTQztJQUFhO0FBQ3BPIn0=
@@ -0,0 +1,30 @@
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 ClassNameMarkdownNode;
9
+ }
10
+ });
11
+ const _markdown = /*#__PURE__*/ _interop_require_default(require("../../node/markdown"));
12
+ function _interop_require_default(obj) {
13
+ return obj && obj.__esModule ? obj : {
14
+ default: obj
15
+ };
16
+ }
17
+ class ClassNameMarkdownNode extends _markdown.default {
18
+ className(context) {
19
+ const className = this.fromSecondChildNode((secondChildNode)=>{
20
+ const terminalNode = secondChildNode, terminalNodeContent = terminalNode.getContent(), className = terminalNodeContent; ///
21
+ return className;
22
+ });
23
+ return className;
24
+ }
25
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
26
+ return _markdown.default.fromRuleNameChildNodesOpacityAndPrecedence(ClassNameMarkdownNode, ruleName, childNodes, opacity, precedence);
27
+ }
28
+ }
29
+
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL21hcmtkb3duL2NsYXNzTmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE1hcmtkb3duTm9kZSBmcm9tIFwiLi4vLi4vbm9kZS9tYXJrZG93blwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDbGFzc05hbWVNYXJrZG93bk5vZGUgZXh0ZW5kcyBNYXJrZG93bk5vZGUge1xuICBjbGFzc05hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRoaXMuZnJvbVNlY29uZENoaWxkTm9kZSgoc2Vjb25kQ2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSBzZWNvbmRDaGlsZE5vZGUsIC8vL1xuICAgICAgICAgICAgdGVybWluYWxOb2RlQ29udGVudCA9IHRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgICAgICBjbGFzc05hbWUgPSB0ZXJtaW5hbE5vZGVDb250ZW50OyAgLy8vXG5cbiAgICAgIHJldHVybiBjbGFzc05hbWU7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gY2xhc3NOYW1lO1xuICB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSkgeyByZXR1cm4gTWFya2Rvd25Ob2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShDbGFzc05hbWVNYXJrZG93bk5vZGUsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKTsgfVxufVxuIl0sIm5hbWVzIjpbIkNsYXNzTmFtZU1hcmtkb3duTm9kZSIsIk1hcmtkb3duTm9kZSIsImNsYXNzTmFtZSIsImNvbnRleHQiLCJmcm9tU2Vjb25kQ2hpbGROb2RlIiwic2Vjb25kQ2hpbGROb2RlIiwidGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlQ29udGVudCIsImdldENvbnRlbnQiLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UiLCJydWxlTmFtZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBSUE7OztlQUFxQkE7OztpRUFGSTs7Ozs7O0FBRVYsTUFBTUEsOEJBQThCQyxpQkFBWTtJQUM3REMsVUFBVUMsT0FBTyxFQUFFO1FBQ2pCLE1BQU1ELFlBQVksSUFBSSxDQUFDRSxtQkFBbUIsQ0FBQyxDQUFDQztZQUMxQyxNQUFNQyxlQUFlRCxpQkFDZkUsc0JBQXNCRCxhQUFhRSxVQUFVLElBQzdDTixZQUFZSyxxQkFBc0IsR0FBRztZQUUzQyxPQUFPTDtRQUNUO1FBRUEsT0FBT0E7SUFDVDtJQUVBLE9BQU9PLDJDQUEyQ0MsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLE9BQU8sRUFBRUMsVUFBVSxFQUFFO1FBQUUsT0FBT1osaUJBQVksQ0FBQ1EsMENBQTBDLENBQUNULHVCQUF1QlUsVUFBVUMsWUFBWUMsU0FBU0M7SUFBYTtBQUNuTyJ9
@@ -0,0 +1,36 @@
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 ContainerNameMarkdownNode;
9
+ }
10
+ });
11
+ const _markdown = /*#__PURE__*/ _interop_require_default(require("../../node/markdown"));
12
+ const _className = /*#__PURE__*/ _interop_require_default(require("../../node/markdown/className"));
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ class ContainerNameMarkdownNode extends _markdown.default {
19
+ className(context) {
20
+ const className = this.fromSecondChildNode((secondChildNode)=>{
21
+ let className = null;
22
+ const secondChildNodeClassNameMarkdownNode = secondChildNode instanceof _className.default;
23
+ if (secondChildNodeClassNameMarkdownNode) {
24
+ const classNameMarkdownNode = secondChildNode; ///
25
+ className = classNameMarkdownNode.className(context);
26
+ }
27
+ return className;
28
+ });
29
+ return className;
30
+ }
31
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
32
+ return _markdown.default.fromRuleNameChildNodesOpacityAndPrecedence(ContainerNameMarkdownNode, ruleName, childNodes, opacity, precedence);
33
+ }
34
+ }
35
+
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL21hcmtkb3duL2NvbnRhaW5lci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE1hcmtkb3duTm9kZSBmcm9tIFwiLi4vLi4vbm9kZS9tYXJrZG93blwiO1xuaW1wb3J0IENsYXNzTmFtZU1hcmtkb3duIGZyb20gXCIuLi8uLi9ub2RlL21hcmtkb3duL2NsYXNzTmFtZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb250YWluZXJOYW1lTWFya2Rvd25Ob2RlIGV4dGVuZHMgTWFya2Rvd25Ob2RlIHtcbiAgY2xhc3NOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmZyb21TZWNvbmRDaGlsZE5vZGUoKHNlY29uZENoaWxkTm9kZSkgPT4ge1xuICAgICAgbGV0IGNsYXNzTmFtZSA9IG51bGw7XG5cbiAgICAgIGNvbnN0IHNlY29uZENoaWxkTm9kZUNsYXNzTmFtZU1hcmtkb3duTm9kZSA9IChzZWNvbmRDaGlsZE5vZGUgaW5zdGFuY2VvZiBDbGFzc05hbWVNYXJrZG93bik7XG5cbiAgICAgIGlmIChzZWNvbmRDaGlsZE5vZGVDbGFzc05hbWVNYXJrZG93bk5vZGUpIHtcbiAgICAgICAgY29uc3QgY2xhc3NOYW1lTWFya2Rvd25Ob2RlID0gc2Vjb25kQ2hpbGROb2RlOyAvLy9cblxuICAgICAgICBjbGFzc05hbWUgPSBjbGFzc05hbWVNYXJrZG93bk5vZGUuY2xhc3NOYW1lKGNvbnRleHQpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gY2xhc3NOYW1lO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNsYXNzTmFtZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UocnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHsgcmV0dXJuIE1hcmtkb3duTm9kZS5mcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UoQ29udGFpbmVyTmFtZU1hcmtkb3duTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiQ29udGFpbmVyTmFtZU1hcmtkb3duTm9kZSIsIk1hcmtkb3duTm9kZSIsImNsYXNzTmFtZSIsImNvbnRleHQiLCJmcm9tU2Vjb25kQ2hpbGROb2RlIiwic2Vjb25kQ2hpbGROb2RlIiwic2Vjb25kQ2hpbGROb2RlQ2xhc3NOYW1lTWFya2Rvd25Ob2RlIiwiQ2xhc3NOYW1lTWFya2Rvd24iLCJjbGFzc05hbWVNYXJrZG93bk5vZGUiLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UiLCJydWxlTmFtZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBS0E7OztlQUFxQkE7OztpRUFISTtrRUFDSzs7Ozs7O0FBRWYsTUFBTUEsa0NBQWtDQyxpQkFBWTtJQUNqRUMsVUFBVUMsT0FBTyxFQUFFO1FBQ2pCLE1BQU1ELFlBQVksSUFBSSxDQUFDRSxtQkFBbUIsQ0FBQyxDQUFDQztZQUMxQyxJQUFJSCxZQUFZO1lBRWhCLE1BQU1JLHVDQUF3Q0QsMkJBQTJCRSxrQkFBaUI7WUFFMUYsSUFBSUQsc0NBQXNDO2dCQUN4QyxNQUFNRSx3QkFBd0JILGlCQUFpQixHQUFHO2dCQUVsREgsWUFBWU0sc0JBQXNCTixTQUFTLENBQUNDO1lBQzlDO1lBRUEsT0FBT0Q7UUFDVDtRQUVBLE9BQU9BO0lBQ1Q7SUFFQSxPQUFPTywyQ0FBMkNDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRTtRQUFFLE9BQU9aLGlCQUFZLENBQUNRLDBDQUEwQyxDQUFDVCwyQkFBMkJVLFVBQVVDLFlBQVlDLFNBQVNDO0lBQWE7QUFDdk8ifQ==