highmark-markdown 1.0.183 → 1.0.185

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 (266) hide show
  1. package/example.js +10243 -6411
  2. package/lib/constants.js +9 -1
  3. package/lib/defaultMarkdownStyle.js +2 -2
  4. package/lib/example/importer.js +3 -3
  5. package/lib/example/indexOptions.js +1 -98
  6. package/lib/example/view/div/container/markdown.js +2 -2
  7. package/lib/example/view/div/container/markdownStyle.js +2 -2
  8. package/lib/example/view/div/container.js +2 -2
  9. package/lib/example/view/div/pageButtons.js +7 -4
  10. package/lib/example/view/div/preview.js +1 -5
  11. package/lib/example/view/div/sizeable/left.js +2 -2
  12. package/lib/example/view/div/tabButtons/right.js +5 -5
  13. package/lib/example/view/textarea/markdown.js +2 -2
  14. package/lib/example/view/textarea/markdownStyle.js +2 -2
  15. package/lib/example/view/textarea/parseTree/html.js +2 -2
  16. package/lib/example/view/textarea/plainText.js +1 -5
  17. package/lib/example/view/xmp.js +1 -5
  18. package/lib/example/view.js +51 -48
  19. package/lib/index/list.js +4 -4
  20. package/lib/index.js +2 -2
  21. package/lib/map/node/html.js +13 -7
  22. package/lib/map/node/markdown.js +5 -24
  23. package/lib/markdown/bnf.js +2 -2
  24. package/lib/node/html/anchor.js +49 -64
  25. package/lib/node/html/blockLine.js +23 -4
  26. package/lib/node/{markdown/paragraph.js → html/directive/contents.js} +20 -14
  27. package/lib/node/{markdown/strongText.js → html/directive/footnotes.js} +20 -14
  28. package/lib/node/{markdown/emphasisedText.js → html/directive/index.js} +20 -14
  29. package/lib/node/{markdown/inlineText.js → html/directive/pageNumber.js} +20 -14
  30. package/lib/node/html/division.js +118 -7
  31. package/lib/node/html/footnote.js +4 -10
  32. package/lib/node/html/heading/index.js +71 -10
  33. package/lib/node/html/heading/primary.js +8 -7
  34. package/lib/node/html/heading/quaternary.js +8 -7
  35. package/lib/node/html/heading/secondary.js +8 -7
  36. package/lib/node/html/heading/tertiary.js +8 -7
  37. package/lib/node/html/heading.js +165 -0
  38. package/lib/node/html/image.js +7 -6
  39. package/lib/node/html/item/contents.js +22 -8
  40. package/lib/node/html/item/footnote.js +144 -0
  41. package/lib/node/html/item/index.js +27 -43
  42. package/lib/node/html/line.js +55 -2
  43. package/lib/node/html/link/contents.js +34 -14
  44. package/lib/node/html/link/email.js +32 -8
  45. package/lib/node/html/link/footnote.js +95 -5
  46. package/lib/node/html/link/hyper.js +32 -8
  47. package/lib/node/html/link/index.js +66 -35
  48. package/lib/node/html/list/contents.js +22 -8
  49. package/lib/node/html/list/footnotes.js +39 -12
  50. package/lib/node/html/list/index.js +22 -8
  51. package/lib/node/html/pageNumber.js +70 -23
  52. package/lib/node/html/{item/footnotes.js → reference.js} +14 -14
  53. package/lib/node/{markdown/heading/primary.js → html/text/comma.js} +38 -28
  54. package/lib/node/html/text/index.js +146 -0
  55. package/lib/node/html/text/stronglyEmphasised.js +15 -8
  56. package/lib/node/html/text.js +43 -5
  57. package/lib/node/html/topmost.js +67 -1
  58. package/lib/node/html.js +77 -4
  59. package/lib/node/markdown/directive/{embee.js → embed.js} +1 -1
  60. package/lib/node/markdown/division.js +13 -22
  61. package/lib/node/markdown/link/footnote.js +5 -102
  62. package/lib/node/markdown/subDivision.js +2 -2
  63. package/lib/node/markdown/text/block.js +1 -1
  64. package/lib/node/markdown/text.js +25 -29
  65. package/lib/ruleNames.js +87 -81
  66. package/lib/style/selector.js +4 -4
  67. package/lib/{node/markdown/heading/tertiary.js → transform/html/directive/contents.js} +23 -28
  68. package/lib/{node/markdown/stronglyEmphasisedText.js → transform/html/directive/footnotes.js} +15 -14
  69. package/lib/{node/markdown/line.js → transform/html/directive/index.js} +19 -18
  70. package/lib/transform/html/directive/pageNumber.js +108 -0
  71. package/lib/transform/html/division.js +130 -0
  72. package/lib/transform/html/footnote.js +159 -0
  73. package/lib/transform/html/heading/index.js +109 -0
  74. package/lib/transform/html/index.js +159 -0
  75. package/lib/transform/{indexAnchor.js → html/indexAnchor.js} +20 -20
  76. package/lib/transform/html/item/contents.js +130 -0
  77. package/lib/transform/html/item/footnote.js +117 -0
  78. package/lib/transform/html/item/index.js +117 -0
  79. package/lib/transform/html/line.js +123 -0
  80. package/lib/transform/html/link/contents.js +130 -0
  81. package/lib/transform/html/link/footnote.js +158 -0
  82. package/lib/transform/html/link/nestedFootnote.js +108 -0
  83. package/lib/transform/html/list/contents.js +180 -0
  84. package/lib/transform/html/list/footnotes.js +117 -0
  85. package/lib/transform/html/list/index.js +118 -0
  86. package/lib/transform/html/pageNumber.js +117 -0
  87. package/lib/transform/html.js +168 -0
  88. package/lib/transform/markdown/directive/embed.js +14 -9
  89. package/lib/transform/markdown/directive/ignore.js +12 -38
  90. package/lib/transform/markdown/directive/include.js +11 -6
  91. package/lib/transform/markdown/subDivision.js +18 -50
  92. package/lib/transform/markdown.js +148 -0
  93. package/lib/utilities/contents.js +16 -16
  94. package/lib/utilities/division.js +247 -0
  95. package/lib/utilities/footnotes.js +8 -8
  96. package/lib/utilities/html.js +37 -79
  97. package/lib/utilities/index.js +23 -16
  98. package/lib/utilities/markdown.js +2 -10
  99. package/lib/utilities/string.js +16 -10
  100. package/lib/utilities/whitespace.js +33 -0
  101. package/package.json +6 -6
  102. package/src/constants.js +2 -0
  103. package/src/defaultMarkdownStyle.js +6 -9
  104. package/src/example/importer.js +11 -5
  105. package/src/example/indexOptions.js +0 -97
  106. package/src/example/view/div/container/markdown.js +1 -1
  107. package/src/example/view/div/container/markdownStyle.js +1 -1
  108. package/src/example/view/div/container.js +1 -1
  109. package/src/example/view/div/pageButtons.js +8 -2
  110. package/src/example/view/div/preview.js +0 -6
  111. package/src/example/view/div/sizeable/left.js +1 -1
  112. package/src/example/view/div/tabButtons/right.js +3 -3
  113. package/src/example/view/textarea/markdown.js +1 -0
  114. package/src/example/view/textarea/markdownStyle.js +1 -0
  115. package/src/example/view/textarea/parseTree/html.js +1 -1
  116. package/src/example/view/textarea/plainText.js +0 -6
  117. package/src/example/view/xmp.js +0 -6
  118. package/src/example/view.js +75 -74
  119. package/src/index/list.js +3 -3
  120. package/src/index.js +1 -1
  121. package/src/map/node/html.js +29 -11
  122. package/src/map/node/markdown.js +8 -65
  123. package/src/markdown/bnf.js +112 -149
  124. package/src/node/html/anchor.js +34 -43
  125. package/src/node/html/blockLine.js +33 -4
  126. package/src/node/html/directive/contents.js +9 -0
  127. package/src/node/html/directive/footnotes.js +9 -0
  128. package/src/node/html/directive/index.js +9 -0
  129. package/src/node/html/directive/pageNumber.js +9 -0
  130. package/src/node/html/division.js +154 -4
  131. package/src/node/html/footnote.js +1 -7
  132. package/src/node/html/heading/index.js +78 -2
  133. package/src/node/html/heading/primary.js +6 -4
  134. package/src/node/html/heading/quaternary.js +6 -4
  135. package/src/node/html/heading/secondary.js +6 -4
  136. package/src/node/html/heading/tertiary.js +6 -4
  137. package/src/node/html/heading.js +59 -0
  138. package/src/node/html/image.js +8 -5
  139. package/src/node/html/item/contents.js +25 -2
  140. package/src/node/html/item/footnote.js +39 -0
  141. package/src/node/html/item/index.js +35 -16
  142. package/src/node/html/line.js +41 -2
  143. package/src/node/html/link/contents.js +32 -5
  144. package/src/node/html/link/email.js +51 -17
  145. package/src/node/html/link/footnote.js +98 -2
  146. package/src/node/html/link/hyper.js +51 -17
  147. package/src/node/html/link/index.js +63 -30
  148. package/src/node/html/list/contents.js +25 -2
  149. package/src/node/html/list/footnotes.js +34 -2
  150. package/src/node/html/list/index.js +25 -2
  151. package/src/node/html/pageNumber.js +60 -16
  152. package/src/node/html/reference.js +13 -0
  153. package/src/node/html/text/comma.js +29 -0
  154. package/src/node/html/text/index.js +43 -0
  155. package/src/node/html/text/stronglyEmphasised.js +22 -11
  156. package/src/node/html/text.js +3 -3
  157. package/src/node/html/topmost.js +93 -1
  158. package/src/node/html.js +34 -6
  159. package/src/node/markdown/division.js +11 -227
  160. package/src/node/markdown/link/footnote.js +6 -82
  161. package/src/node/markdown/subDivision.js +1 -1
  162. package/src/node/markdown/text/block.js +1 -1
  163. package/src/node/markdown/text.js +38 -39
  164. package/src/ruleNames.js +11 -8
  165. package/src/style/selector.js +3 -4
  166. package/src/transform/html/directive/contents.js +19 -0
  167. package/src/transform/html/directive/footnotes.js +12 -0
  168. package/src/transform/html/directive/index.js +19 -0
  169. package/src/transform/html/directive/pageNumber.js +12 -0
  170. package/src/transform/html/division.js +33 -0
  171. package/src/transform/html/footnote.js +66 -0
  172. package/src/transform/html/heading/index.js +14 -0
  173. package/src/transform/html/index.js +77 -0
  174. package/src/transform/html/indexAnchor.js +24 -0
  175. package/src/transform/html/item/contents.js +48 -0
  176. package/src/transform/html/item/footnote.js +21 -0
  177. package/src/transform/html/item/index.js +21 -0
  178. package/src/transform/html/line.js +27 -0
  179. package/src/transform/html/link/contents.js +40 -0
  180. package/src/transform/html/link/footnote.js +58 -0
  181. package/src/transform/html/link/nestedFootnote.js +12 -0
  182. package/src/transform/html/list/contents.js +86 -0
  183. package/src/transform/html/list/footnotes.js +20 -0
  184. package/src/transform/html/list/index.js +27 -0
  185. package/src/transform/html/pageNumber.js +20 -0
  186. package/src/transform/html.js +78 -0
  187. package/src/transform/markdown/directive/embed.js +6 -7
  188. package/src/transform/markdown/directive/ignore.js +3 -9
  189. package/src/transform/markdown/directive/include.js +3 -3
  190. package/src/transform/markdown/subDivision.js +5 -17
  191. package/src/transform/markdown.js +9 -0
  192. package/src/utilities/contents.js +12 -12
  193. package/src/utilities/division.js +256 -0
  194. package/src/utilities/footnotes.js +5 -5
  195. package/src/utilities/html.js +39 -86
  196. package/src/utilities/index.js +26 -16
  197. package/src/utilities/markdown.js +0 -8
  198. package/src/utilities/string.js +5 -3
  199. package/src/utilities/whitespace.js +21 -0
  200. package/lib/node/markdown/anchor.js +0 -171
  201. package/lib/node/markdown/contentsItem.js +0 -112
  202. package/lib/node/markdown/directive/pageNumber.js +0 -163
  203. package/lib/node/markdown/heading/quaternary.js +0 -121
  204. package/lib/node/markdown/heading/secondary.js +0 -121
  205. package/lib/node/markdown/heading.js +0 -140
  206. package/lib/node/markdown/item/footnotes.js +0 -120
  207. package/lib/node/markdown/link/contents.js +0 -156
  208. package/lib/node/markdown/link/index.js +0 -117
  209. package/lib/node/markdown/list/contents.js +0 -112
  210. package/lib/node/markdown/list/footnotes.js +0 -165
  211. package/lib/node/markdown/list/index.js +0 -112
  212. package/lib/transform/contentsDirective.js +0 -112
  213. package/lib/transform/contentsItem.js +0 -134
  214. package/lib/transform/contentsLink.js +0 -115
  215. package/lib/transform/contentsList.js +0 -193
  216. package/lib/transform/footnote.js +0 -181
  217. package/lib/transform/footnoteIdentifier.js +0 -120
  218. package/lib/transform/footnotesDirective.js +0 -112
  219. package/lib/transform/footnotesItem.js +0 -123
  220. package/lib/transform/footnotesList.js +0 -172
  221. package/lib/transform/index.js +0 -166
  222. package/lib/transform/indexDirective.js +0 -112
  223. package/lib/transform/indexHeading.js +0 -104
  224. package/lib/transform/indexItem.js +0 -113
  225. package/lib/transform/indexList.js +0 -121
  226. package/lib/transform/line.js +0 -111
  227. package/lib/transform/pageNumberDirective.js +0 -112
  228. package/src/node/html/item/footnotes.js +0 -13
  229. package/src/node/markdown/anchor.js +0 -45
  230. package/src/node/markdown/contentsItem.js +0 -21
  231. package/src/node/markdown/directive/pageNumber.js +0 -34
  232. package/src/node/markdown/emphasisedText.js +0 -7
  233. package/src/node/markdown/heading/primary.js +0 -9
  234. package/src/node/markdown/heading/quaternary.js +0 -9
  235. package/src/node/markdown/heading/secondary.js +0 -9
  236. package/src/node/markdown/heading/tertiary.js +0 -9
  237. package/src/node/markdown/heading.js +0 -47
  238. package/src/node/markdown/inlineText.js +0 -7
  239. package/src/node/markdown/item/footnotes.js +0 -39
  240. package/src/node/markdown/line.js +0 -17
  241. package/src/node/markdown/link/contents.js +0 -31
  242. package/src/node/markdown/link/index.js +0 -18
  243. package/src/node/markdown/list/contents.js +0 -21
  244. package/src/node/markdown/list/footnotes.js +0 -45
  245. package/src/node/markdown/list/index.js +0 -21
  246. package/src/node/markdown/paragraph.js +0 -7
  247. package/src/node/markdown/strongText.js +0 -7
  248. package/src/node/markdown/stronglyEmphasisedText.js +0 -7
  249. package/src/transform/contentsDirective.js +0 -18
  250. package/src/transform/contentsItem.js +0 -55
  251. package/src/transform/contentsLink.js +0 -28
  252. package/src/transform/contentsList.js +0 -110
  253. package/src/transform/footnote.js +0 -51
  254. package/src/transform/footnoteIdentifier.js +0 -27
  255. package/src/transform/footnotesDirective.js +0 -18
  256. package/src/transform/footnotesItem.js +0 -25
  257. package/src/transform/footnotesList.js +0 -77
  258. package/src/transform/index.js +0 -90
  259. package/src/transform/indexAnchor.js +0 -27
  260. package/src/transform/indexDirective.js +0 -18
  261. package/src/transform/indexHeading.js +0 -18
  262. package/src/transform/indexItem.js +0 -29
  263. package/src/transform/indexList.js +0 -33
  264. package/src/transform/line.js +0 -19
  265. package/src/transform/pageNumberDirective.js +0 -18
  266. /package/src/node/markdown/directive/{embee.js → embed.js} +0 -0
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  var _html = /*#__PURE__*/ _interop_require_default(require("../../node/html"));
12
12
  var _plain = /*#__PURE__*/ _interop_require_default(require("./text/plain"));
13
+ var _whitespace = require("../../utilities/whitespace");
13
14
  var _constants = require("../../constants");
14
15
  function _assert_this_initialized(self) {
15
16
  if (self === void 0) {
@@ -53,6 +54,22 @@ function _define_property(obj, key, value) {
53
54
  }
54
55
  return obj;
55
56
  }
57
+ function _get(target, property, receiver) {
58
+ if (typeof Reflect !== "undefined" && Reflect.get) {
59
+ _get = Reflect.get;
60
+ } else {
61
+ _get = function get(target, property, receiver) {
62
+ var base = _super_prop_base(target, property);
63
+ if (!base) return;
64
+ var desc = Object.getOwnPropertyDescriptor(base, property);
65
+ if (desc.get) {
66
+ return desc.get.call(receiver || target);
67
+ }
68
+ return desc.value;
69
+ };
70
+ }
71
+ return _get(target, property, receiver || target);
72
+ }
56
73
  function _get_prototype_of(o) {
57
74
  _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
58
75
  return o.__proto__ || Object.getPrototypeOf(o);
@@ -97,6 +114,13 @@ function _set_prototype_of(o, p) {
97
114
  };
98
115
  return _set_prototype_of(o, p);
99
116
  }
117
+ function _super_prop_base(object, property) {
118
+ while(!Object.prototype.hasOwnProperty.call(object, property)){
119
+ object = _get_prototype_of(object);
120
+ if (object === null) break;
121
+ }
122
+ return object;
123
+ }
100
124
  function _type_of(obj) {
101
125
  "@swc/helpers - typeof";
102
126
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
@@ -116,10 +140,34 @@ var LineHTMLNode = /*#__PURE__*/ function(HTMLNode) {
116
140
  return _call_super(this, LineHTMLNode, arguments);
117
141
  }
118
142
  _create_class(LineHTMLNode, [
143
+ {
144
+ key: "lines",
145
+ value: function lines(context) {
146
+ var _context_maximumLineCharacters = context.maximumLineCharacters, maximumLineCharacters = _context_maximumLineCharacters === void 0 ? _constants.DEFAULT_MAXIMUM_LINE_CHARACTERS : _context_maximumLineCharacters, plainText = this.asPlainText(context), plainTextLength = plainText.length, characters = plainTextLength, lines = characters / maximumLineCharacters + 1;
147
+ return lines;
148
+ }
149
+ },
150
+ {
151
+ key: "mount",
152
+ value: function mount(parentDOMElement, siblingDOMElement, context) {
153
+ var node = this; ///
154
+ (0, _whitespace.assignIndexes)(node, context);
155
+ _get(_get_prototype_of(LineHTMLNode.prototype), "mount", this).call(this, parentDOMElement, siblingDOMElement, context);
156
+ (0, _whitespace.deleteIndexes)(context);
157
+ }
158
+ },
159
+ {
160
+ key: "unmount",
161
+ value: function unmount(parentDOMElement, context) {
162
+ _get(_get_prototype_of(LineHTMLNode.prototype), "unmount", this).call(this, parentDOMElement, context);
163
+ }
164
+ },
119
165
  {
120
166
  key: "childNodesAsHTML",
121
167
  value: function childNodesAsHTML(indent, context) {
122
168
  var childNodesHTML;
169
+ var node = this; ///
170
+ (0, _whitespace.assignIndexes)(node, context);
123
171
  var previousChildNode = null;
124
172
  childNodesHTML = this.reduceChildNode(function(childNodesHTML, childNode) {
125
173
  var previousChildNodePlainTextHTMLNode = _instanceof(previousChildNode, _plain.default);
@@ -138,17 +186,22 @@ var LineHTMLNode = /*#__PURE__*/ function(HTMLNode) {
138
186
  if (previousChildNodePlainTextHTMLNode) {
139
187
  childNodesHTML = "".concat(childNodesHTML, "\n");
140
188
  }
189
+ (0, _whitespace.deleteIndexes)(context);
141
190
  return childNodesHTML;
142
191
  }
143
192
  },
144
193
  {
145
194
  key: "childNodesAsPlainText",
146
195
  value: function childNodesAsPlainText(context) {
147
- var childNodesPlainText = this.reduceChildNode(function(childNodesPlainText, childNode) {
196
+ var childNodesPlainText;
197
+ var node = this; ///
198
+ (0, _whitespace.assignIndexes)(node, context);
199
+ childNodesPlainText = this.reduceChildNode(function(childNodesPlainText, childNode) {
148
200
  var childNodePlainText = childNode.asPlainText(context);
149
201
  childNodesPlainText = "".concat(childNodesPlainText).concat(childNodePlainText);
150
202
  return childNodesPlainText;
151
203
  }, _constants.EMPTY_STRING);
204
+ (0, _whitespace.deleteIndexes)(context);
152
205
  return childNodesPlainText;
153
206
  }
154
207
  }
@@ -171,4 +224,4 @@ var LineHTMLNode = /*#__PURE__*/ function(HTMLNode) {
171
224
  _define_property(LineHTMLNode, "tagName", "span");
172
225
  _define_property(LineHTMLNode, "className", "line");
173
226
 
174
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi9ub2RlL2h0bWxcIjtcbmltcG9ydCBQbGFpblRleHRIVE1MTm9kZSBmcm9tIFwiLi90ZXh0L3BsYWluXCI7XG5cbmltcG9ydCB7IEVNUFRZX1NUUklORyB9IGZyb20gXCIuLi8uLi9jb25zdGFudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGluZUhUTUxOb2RlIGV4dGVuZHMgSFRNTE5vZGUge1xuICBjaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGxldCBjaGlsZE5vZGVzSFRNTDtcblxuICAgIGxldCBwcmV2aW91c0NoaWxkTm9kZSA9IG51bGw7XG5cbiAgICBjaGlsZE5vZGVzSFRNTCA9IHRoaXMucmVkdWNlQ2hpbGROb2RlKChjaGlsZE5vZGVzSFRNTCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBwcmV2aW91c0NoaWxkTm9kZVBsYWluVGV4dEhUTUxOb2RlID0gKHByZXZpb3VzQ2hpbGROb2RlIGluc3RhbmNlb2YgUGxhaW5UZXh0SFRNTE5vZGUpO1xuXG4gICAgICBpZiAocHJldmlvdXNDaGlsZE5vZGVQbGFpblRleHRIVE1MTm9kZSkge1xuICAgICAgICBjb25zdCBjaGlsZE5vZGVQbGFpblRleHRIVE1MTm9kZSA9IChjaGlsZE5vZGUgaW5zdGFuY2VvZiBQbGFpblRleHRIVE1MTm9kZSk7XG5cbiAgICAgICAgaWYgKCFjaGlsZE5vZGVQbGFpblRleHRIVE1MTm9kZSkge1xuICAgICAgICAgIGNoaWxkTm9kZXNIVE1MID0gYCR7Y2hpbGROb2Rlc0hUTUx9XG5gO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNoaWxkTm9kZUhUTUwgPSBjaGlsZE5vZGUuYXNIVE1MKGluZGVudCwgY29udGV4dCk7XG5cbiAgICAgIGNoaWxkTm9kZXNIVE1MID0gYCR7Y2hpbGROb2Rlc0hUTUx9JHtjaGlsZE5vZGVIVE1MfWA7XG5cbiAgICAgIHByZXZpb3VzQ2hpbGROb2RlID0gY2hpbGROb2RlOyAgLy8vXG5cbiAgICAgIHJldHVybiBjaGlsZE5vZGVzSFRNTDtcbiAgICB9LCBFTVBUWV9TVFJJTkcpO1xuXG4gICAgY29uc3QgcHJldmlvdXNDaGlsZE5vZGVQbGFpblRleHRIVE1MTm9kZSA9IChwcmV2aW91c0NoaWxkTm9kZSBpbnN0YW5jZW9mIFBsYWluVGV4dEhUTUxOb2RlKTtcblxuICAgIGlmIChwcmV2aW91c0NoaWxkTm9kZVBsYWluVGV4dEhUTUxOb2RlKSB7XG4gICAgICBjaGlsZE5vZGVzSFRNTCA9IGAke2NoaWxkTm9kZXNIVE1MfVxuYDtcbiAgICB9XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNQbGFpblRleHQoY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXNQbGFpblRleHQgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgoY2hpbGROb2Rlc1BsYWluVGV4dCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVQbGFpblRleHQgPSBjaGlsZE5vZGUuYXNQbGFpblRleHQoY29udGV4dCk7XG5cbiAgICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSBgJHtjaGlsZE5vZGVzUGxhaW5UZXh0fSR7Y2hpbGROb2RlUGxhaW5UZXh0fWA7XG5cbiAgICAgIHJldHVybiBjaGlsZE5vZGVzUGxhaW5UZXh0O1xuICAgIH0sIEVNUFRZX1NUUklORyk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1BsYWluVGV4dDtcbiAgfVxuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJzcGFuXCI7XG5cbiAgc3RhdGljIGNsYXNzTmFtZSA9IFwibGluZVwiO1xuXG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHsgcmV0dXJuIEhUTUxOb2RlLmZyb21Ob3RoaW5nKExpbmVIVE1MTm9kZSk7IH1cblxuICBzdGF0aWMgZnJvbU91dGVyTm9kZShvdXRlck5vZGUpIHsgcmV0dXJuIEhUTUxOb2RlLmZyb21PdXRlck5vZGUoTGluZUhUTUxOb2RlLCBvdXRlck5vZGUpOyB9XG59XG4iXSwibmFtZXMiOlsiTGluZUhUTUxOb2RlIiwiY2hpbGROb2Rlc0FzSFRNTCIsImluZGVudCIsImNvbnRleHQiLCJjaGlsZE5vZGVzSFRNTCIsInByZXZpb3VzQ2hpbGROb2RlIiwicmVkdWNlQ2hpbGROb2RlIiwiY2hpbGROb2RlIiwicHJldmlvdXNDaGlsZE5vZGVQbGFpblRleHRIVE1MTm9kZSIsIlBsYWluVGV4dEhUTUxOb2RlIiwiY2hpbGROb2RlUGxhaW5UZXh0SFRNTE5vZGUiLCJjaGlsZE5vZGVIVE1MIiwiYXNIVE1MIiwiRU1QVFlfU1RSSU5HIiwiY2hpbGROb2Rlc0FzUGxhaW5UZXh0IiwiY2hpbGROb2Rlc1BsYWluVGV4dCIsImNoaWxkTm9kZVBsYWluVGV4dCIsImFzUGxhaW5UZXh0IiwiZnJvbU5vdGhpbmciLCJIVE1MTm9kZSIsImZyb21PdXRlck5vZGUiLCJvdXRlck5vZGUiLCJ0YWdOYW1lIiwiY2xhc3NOYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU9xQkE7OzsyREFMQTs0REFDUzt5QkFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWQsSUFBQSxBQUFNQSw2QkFBTjtjQUFNQTthQUFBQTtnQ0FBQUE7ZUFBTixrQkFBTUE7O2tCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUJDLE1BQU0sRUFBRUMsT0FBTztnQkFDOUIsSUFBSUM7Z0JBRUosSUFBSUMsb0JBQW9CO2dCQUV4QkQsaUJBQWlCLElBQUksQ0FBQ0UsZUFBZSxDQUFDLFNBQUNGLGdCQUFnQkc7b0JBQ3JELElBQU1DLHFDQUFzQ0gsQUFBaUIsWUFBakJBLG1CQUE2QkksY0FBaUI7b0JBRTFGLElBQUlELG9DQUFvQzt3QkFDdEMsSUFBTUUsNkJBQThCSCxBQUFTLFlBQVRBLFdBQXFCRSxjQUFpQjt3QkFFMUUsSUFBSSxDQUFDQyw0QkFBNEI7NEJBQy9CTixpQkFBaUIsQUFBQyxHQUFpQixPQUFmQSxnQkFBZTt3QkFFckM7b0JBQ0Y7b0JBRUEsSUFBTU8sZ0JBQWdCSixVQUFVSyxNQUFNLENBQUNWLFFBQVFDO29CQUUvQ0MsaUJBQWlCLEFBQUMsR0FBbUJPLE9BQWpCUCxnQkFBK0IsT0FBZE87b0JBRXJDTixvQkFBb0JFLFdBQVksR0FBRztvQkFFbkMsT0FBT0g7Z0JBQ1QsR0FBR1MsdUJBQVk7Z0JBRWYsSUFBTUwscUNBQXNDSCxBQUFpQixZQUFqQkEsbUJBQTZCSSxjQUFpQjtnQkFFMUYsSUFBSUQsb0NBQW9DO29CQUN0Q0osaUJBQWlCLEFBQUMsR0FBaUIsT0FBZkEsZ0JBQWU7Z0JBRXJDO2dCQUVBLE9BQU9BO1lBQ1Q7OztZQUVBVSxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCWCxPQUFPO2dCQUMzQixJQUFNWSxzQkFBc0IsSUFBSSxDQUFDVCxlQUFlLENBQUMsU0FBQ1MscUJBQXFCUjtvQkFDckUsSUFBTVMscUJBQXFCVCxVQUFVVSxXQUFXLENBQUNkO29CQUVqRFksc0JBQXNCLEFBQUMsR0FBd0JDLE9BQXRCRCxxQkFBeUMsT0FBbkJDO29CQUUvQyxPQUFPRDtnQkFDVCxHQUFHRix1QkFBWTtnQkFFZixPQUFPRTtZQUNUOzs7O1lBTU9HLEtBQUFBO21CQUFQLFNBQU9BO2dCQUFnQixPQUFPQyxhQUFRLENBQUNELFdBQVcsQ0FyRC9CbEI7WUFxRCtDOzs7WUFFM0RvQixLQUFBQTttQkFBUCxTQUFPQSxjQUFjQyxTQUFTO2dCQUFJLE9BQU9GLGFBQVEsQ0FBQ0MsYUFBYSxDQXZENUNwQixjQXVEMkRxQjtZQUFZOzs7V0F2RHZFckI7RUFBcUJtQixhQUFRO0FBaURoRCxpQkFqRG1CbkIsY0FpRFpzQixXQUFVO0FBRWpCLGlCQW5EbUJ0QixjQW1EWnVCLGFBQVkifQ==
227
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi9ub2RlL2h0bWxcIjtcbmltcG9ydCBQbGFpblRleHRIVE1MTm9kZSBmcm9tIFwiLi90ZXh0L3BsYWluXCI7XG5cbmltcG9ydCB7IGFzc2lnbkluZGV4ZXMsIGRlbGV0ZUluZGV4ZXMgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3doaXRlc3BhY2VcIjtcbmltcG9ydCB7IEVNUFRZX1NUUklORywgREVGQVVMVF9NQVhJTVVNX0xJTkVfQ0hBUkFDVEVSUyB9IGZyb20gXCIuLi8uLi9jb25zdGFudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGluZUhUTUxOb2RlIGV4dGVuZHMgSFRNTE5vZGUge1xuICBsaW5lcyhjb250ZXh0KSB7XG4gICAgY29uc3QgeyBtYXhpbXVtTGluZUNoYXJhY3RlcnMgPSBERUZBVUxUX01BWElNVU1fTElORV9DSEFSQUNURVJTIH0gPSBjb250ZXh0LFxuICAgICAgICAgIHBsYWluVGV4dCA9IHRoaXMuYXNQbGFpblRleHQoY29udGV4dCksXG4gICAgICAgICAgcGxhaW5UZXh0TGVuZ3RoID0gcGxhaW5UZXh0Lmxlbmd0aCxcbiAgICAgICAgICBjaGFyYWN0ZXJzID0gcGxhaW5UZXh0TGVuZ3RoLCAvLy9cbiAgICAgICAgICBsaW5lcyA9IChjaGFyYWN0ZXJzIC8gbWF4aW11bUxpbmVDaGFyYWN0ZXJzKSArIDE7XG5cbiAgICByZXR1cm4gbGluZXM7XG4gIH1cblxuICBtb3VudChwYXJlbnRET01FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzOyAgLy8vXG5cbiAgICBhc3NpZ25JbmRleGVzKG5vZGUsIGNvbnRleHQpO1xuXG4gICAgc3VwZXIubW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpO1xuXG4gICAgZGVsZXRlSW5kZXhlcyhjb250ZXh0KTtcbiAgfVxuXG4gIHVubW91bnQocGFyZW50RE9NRWxlbWVudCwgY29udGV4dCkge1xuICAgIHN1cGVyLnVubW91bnQocGFyZW50RE9NRWxlbWVudCwgY29udGV4dCk7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGxldCBjaGlsZE5vZGVzSFRNTDtcblxuICAgIGNvbnN0IG5vZGUgPSB0aGlzOyAgLy8vXG5cbiAgICBhc3NpZ25JbmRleGVzKG5vZGUsIGNvbnRleHQpO1xuXG4gICAgbGV0IHByZXZpb3VzQ2hpbGROb2RlID0gbnVsbDtcblxuICAgIGNoaWxkTm9kZXNIVE1MID0gdGhpcy5yZWR1Y2VDaGlsZE5vZGUoKGNoaWxkTm9kZXNIVE1MLCBjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IHByZXZpb3VzQ2hpbGROb2RlUGxhaW5UZXh0SFRNTE5vZGUgPSAocHJldmlvdXNDaGlsZE5vZGUgaW5zdGFuY2VvZiBQbGFpblRleHRIVE1MTm9kZSk7XG5cbiAgICAgIGlmIChwcmV2aW91c0NoaWxkTm9kZVBsYWluVGV4dEhUTUxOb2RlKSB7XG4gICAgICAgIGNvbnN0IGNoaWxkTm9kZVBsYWluVGV4dEhUTUxOb2RlID0gKGNoaWxkTm9kZSBpbnN0YW5jZW9mIFBsYWluVGV4dEhUTUxOb2RlKTtcblxuICAgICAgICBpZiAoIWNoaWxkTm9kZVBsYWluVGV4dEhUTUxOb2RlKSB7XG4gICAgICAgICAgY2hpbGROb2Rlc0hUTUwgPSBgJHtjaGlsZE5vZGVzSFRNTH1cbmA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgY2hpbGROb2RlSFRNTCA9IGNoaWxkTm9kZS5hc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgY2hpbGROb2Rlc0hUTUwgPSBgJHtjaGlsZE5vZGVzSFRNTH0ke2NoaWxkTm9kZUhUTUx9YDtcblxuICAgICAgcHJldmlvdXNDaGlsZE5vZGUgPSBjaGlsZE5vZGU7ICAvLy9cblxuICAgICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICAgIH0sIEVNUFRZX1NUUklORyk7XG5cbiAgICBjb25zdCBwcmV2aW91c0NoaWxkTm9kZVBsYWluVGV4dEhUTUxOb2RlID0gKHByZXZpb3VzQ2hpbGROb2RlIGluc3RhbmNlb2YgUGxhaW5UZXh0SFRNTE5vZGUpO1xuXG4gICAgaWYgKHByZXZpb3VzQ2hpbGROb2RlUGxhaW5UZXh0SFRNTE5vZGUpIHtcbiAgICAgIGNoaWxkTm9kZXNIVE1MID0gYCR7Y2hpbGROb2Rlc0hUTUx9XG5gO1xuICAgIH1cblxuICAgIGRlbGV0ZUluZGV4ZXMoY29udGV4dCk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNQbGFpblRleHQoY29udGV4dCkge1xuICAgIGxldCBjaGlsZE5vZGVzUGxhaW5UZXh0O1xuXG4gICAgY29uc3Qgbm9kZSA9IHRoaXM7ICAvLy9cblxuICAgIGFzc2lnbkluZGV4ZXMobm9kZSwgY29udGV4dClcblxuICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgoY2hpbGROb2Rlc1BsYWluVGV4dCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVQbGFpblRleHQgPSBjaGlsZE5vZGUuYXNQbGFpblRleHQoY29udGV4dCk7XG5cbiAgICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSBgJHtjaGlsZE5vZGVzUGxhaW5UZXh0fSR7Y2hpbGROb2RlUGxhaW5UZXh0fWA7XG5cbiAgICAgIHJldHVybiBjaGlsZE5vZGVzUGxhaW5UZXh0O1xuICAgIH0sIEVNUFRZX1NUUklORyk7XG5cbiAgICBkZWxldGVJbmRleGVzKGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGNoaWxkTm9kZXNQbGFpblRleHQ7XG4gIH1cblxuICBzdGF0aWMgdGFnTmFtZSA9IFwic3BhblwiO1xuXG4gIHN0YXRpYyBjbGFzc05hbWUgPSBcImxpbmVcIjtcblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoKSB7IHJldHVybiBIVE1MTm9kZS5mcm9tTm90aGluZyhMaW5lSFRNTE5vZGUpOyB9XG5cbiAgc3RhdGljIGZyb21PdXRlck5vZGUob3V0ZXJOb2RlKSB7IHJldHVybiBIVE1MTm9kZS5mcm9tT3V0ZXJOb2RlKExpbmVIVE1MTm9kZSwgb3V0ZXJOb2RlKTsgfVxufVxuIl0sIm5hbWVzIjpbIkxpbmVIVE1MTm9kZSIsImxpbmVzIiwiY29udGV4dCIsIm1heGltdW1MaW5lQ2hhcmFjdGVycyIsIkRFRkFVTFRfTUFYSU1VTV9MSU5FX0NIQVJBQ1RFUlMiLCJwbGFpblRleHQiLCJhc1BsYWluVGV4dCIsInBsYWluVGV4dExlbmd0aCIsImxlbmd0aCIsImNoYXJhY3RlcnMiLCJtb3VudCIsInBhcmVudERPTUVsZW1lbnQiLCJzaWJsaW5nRE9NRWxlbWVudCIsIm5vZGUiLCJhc3NpZ25JbmRleGVzIiwiZGVsZXRlSW5kZXhlcyIsInVubW91bnQiLCJjaGlsZE5vZGVzQXNIVE1MIiwiaW5kZW50IiwiY2hpbGROb2Rlc0hUTUwiLCJwcmV2aW91c0NoaWxkTm9kZSIsInJlZHVjZUNoaWxkTm9kZSIsImNoaWxkTm9kZSIsInByZXZpb3VzQ2hpbGROb2RlUGxhaW5UZXh0SFRNTE5vZGUiLCJQbGFpblRleHRIVE1MTm9kZSIsImNoaWxkTm9kZVBsYWluVGV4dEhUTUxOb2RlIiwiY2hpbGROb2RlSFRNTCIsImFzSFRNTCIsIkVNUFRZX1NUUklORyIsImNoaWxkTm9kZXNBc1BsYWluVGV4dCIsImNoaWxkTm9kZXNQbGFpblRleHQiLCJjaGlsZE5vZGVQbGFpblRleHQiLCJmcm9tTm90aGluZyIsIkhUTUxOb2RlIiwiZnJvbU91dGVyTm9kZSIsIm91dGVyTm9kZSIsInRhZ05hbWUiLCJjbGFzc05hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBUXFCQTs7OzJEQU5BOzREQUNTOzBCQUVlO3lCQUNpQjs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -11,6 +11,7 @@ Object.defineProperty(exports, "default", {
11
11
  var _html = /*#__PURE__*/ _interop_require_default(require("../../../node/html"));
12
12
  var _prepends = require("../../../prepends");
13
13
  var _attributeNames = require("../../../attributeNames");
14
+ var _ruleNames = require("../../../ruleNames");
14
15
  function _assert_this_initialized(self) {
15
16
  if (self === void 0) {
16
17
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
@@ -104,15 +105,30 @@ function _is_native_reflect_construct() {
104
105
  }
105
106
  var ContentsLinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
106
107
  _inherits(ContentsLinkHTMLNode, HTMLNode);
107
- function ContentsLinkHTMLNode() {
108
+ function ContentsLinkHTMLNode(outerNode, parentNode, childNodes, domElement, identifier) {
108
109
  _class_call_check(this, ContentsLinkHTMLNode);
109
- return _call_super(this, ContentsLinkHTMLNode, arguments);
110
+ var _this;
111
+ _this = _call_super(this, ContentsLinkHTMLNode, [
112
+ outerNode,
113
+ parentNode,
114
+ childNodes,
115
+ domElement
116
+ ]);
117
+ _this.identifier = identifier;
118
+ return _this;
110
119
  }
111
120
  _create_class(ContentsLinkHTMLNode, [
112
121
  {
113
122
  key: "getIdentifier",
114
123
  value: function getIdentifier() {
115
- return this.outerNode.getIdentifier();
124
+ return this.identifier;
125
+ }
126
+ },
127
+ {
128
+ key: "getRuleName",
129
+ value: function getRuleName() {
130
+ var ruleName = _ruleNames.CONTENTS_LINK_RULE_NAME;
131
+ return ruleName;
116
132
  }
117
133
  },
118
134
  {
@@ -125,21 +141,25 @@ var ContentsLinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
125
141
  {
126
142
  key: "attributeValue",
127
143
  value: function attributeValue(context) {
128
- var prepend = _prepends.CONTENTS_PREPEND, identifier = this.getIdentifier(), attributeValue = "#".concat(prepend, "-").concat(identifier);
144
+ var prepend = _prepends.CONTENTS_PREPEND, attributeValue = "#".concat(prepend, "-").concat(this.identifier);
129
145
  return attributeValue;
130
146
  }
131
- }
132
- ], [
147
+ },
133
148
  {
134
- key: "fromNothing",
135
- value: function fromNothing() {
136
- return _html.default.fromNothing(ContentsLinkHTMLNode);
149
+ key: "asString",
150
+ value: function asString() {
151
+ var ruleName = this.getRuleName(), string = ruleName; ///
152
+ return string;
137
153
  }
138
- },
154
+ }
155
+ ], [
139
156
  {
140
- key: "fromOuterNode",
141
- value: function fromOuterNode(outerNode) {
142
- return _html.default.fromOuterNode(ContentsLinkHTMLNode, outerNode);
157
+ key: "fromLineHTMLTransformAndIdentifier",
158
+ value: function fromLineHTMLTransformAndIdentifier(lineHTMLTransform, identifier) {
159
+ var lineHTMLNode = lineHTMLTransform.getLineHTMLNode(), childNodes = [
160
+ lineHTMLNode
161
+ ], contentsLinkHTMLNode = _html.default.fromChildNodes(ContentsLinkHTMLNode, childNodes, identifier);
162
+ return contentsLinkHTMLNode;
143
163
  }
144
164
  }
145
165
  ]);
@@ -148,4 +168,4 @@ var ContentsLinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
148
168
  _define_property(ContentsLinkHTMLNode, "tagName", "a");
149
169
  _define_property(ContentsLinkHTMLNode, "className", "contents-link");
150
170
 
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluay9jb250ZW50cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi8uLi9ub2RlL2h0bWxcIjtcblxuaW1wb3J0IHsgQ09OVEVOVFNfUFJFUEVORCB9IGZyb20gXCIuLi8uLi8uLi9wcmVwZW5kc1wiO1xuaW1wb3J0IHsgSFJFRl9BVFRSSUJVVEVfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9hdHRyaWJ1dGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb250ZW50c0xpbmtIVE1MTm9kZSBleHRlbmRzIEhUTUxOb2RlIHtcbiAgZ2V0SWRlbnRpZmllcigpIHsgcmV0dXJuIHRoaXMub3V0ZXJOb2RlLmdldElkZW50aWZpZXIoKTsgfVxuXG4gIGF0dHJpYnV0ZU5hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBIUkVGX0FUVFJJQlVURV9OQU1FO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZU5hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSB7XG4gICAgY29uc3QgcHJlcGVuZCA9IENPTlRFTlRTX1BSRVBFTkQsXG4gICAgICAgICAgaWRlbnRpZmllciA9IHRoaXMuZ2V0SWRlbnRpZmllcigpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gYCMke3ByZXBlbmR9LSR7aWRlbnRpZmllcn1gO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZVZhbHVlO1xuICB9XG5cbiAgc3RhdGljIHRhZ05hbWUgPSBcImFcIjtcblxuICBzdGF0aWMgY2xhc3NOYW1lID0gXCJjb250ZW50cy1saW5rXCI7XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkgeyByZXR1cm4gSFRNTE5vZGUuZnJvbU5vdGhpbmcoQ29udGVudHNMaW5rSFRNTE5vZGUpOyB9XG5cbiAgc3RhdGljIGZyb21PdXRlck5vZGUob3V0ZXJOb2RlKSB7IHJldHVybiBIVE1MTm9kZS5mcm9tT3V0ZXJOb2RlKENvbnRlbnRzTGlua0hUTUxOb2RlLCBvdXRlck5vZGUpOyB9XG59XG4iXSwibmFtZXMiOlsiQ29udGVudHNMaW5rSFRNTE5vZGUiLCJnZXRJZGVudGlmaWVyIiwib3V0ZXJOb2RlIiwiYXR0cmlidXRlTmFtZSIsImNvbnRleHQiLCJIUkVGX0FUVFJJQlVURV9OQU1FIiwiYXR0cmlidXRlVmFsdWUiLCJwcmVwZW5kIiwiQ09OVEVOVFNfUFJFUEVORCIsImlkZW50aWZpZXIiLCJmcm9tTm90aGluZyIsIkhUTUxOb2RlIiwiZnJvbU91dGVyTm9kZSIsInRhZ05hbWUiLCJjbGFzc05hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBT3FCQTs7OzJEQUxBO3dCQUVZOzhCQUNHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVyQixJQUFBLEFBQU1BLHFDQUFOO2NBQU1BO2FBQUFBO2dDQUFBQTtlQUFOLGtCQUFNQTs7a0JBQUFBOztZQUNuQkMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUFrQixPQUFPLElBQUksQ0FBQ0MsU0FBUyxDQUFDRCxhQUFhO1lBQUk7OztZQUV6REUsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWNDLE9BQU87Z0JBQ25CLElBQU1ELGdCQUFnQkUsbUNBQW1CO2dCQUV6QyxPQUFPRjtZQUNUOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVGLE9BQU87Z0JBQ3BCLElBQU1HLFVBQVVDLDBCQUFnQixFQUMxQkMsYUFBYSxJQUFJLENBQUNSLGFBQWEsSUFDL0JLLGlCQUFpQixBQUFDLElBQWNHLE9BQVhGLFNBQVEsS0FBYyxPQUFYRTtnQkFFdEMsT0FBT0g7WUFDVDs7OztZQU1PSSxLQUFBQTttQkFBUCxTQUFPQTtnQkFBZ0IsT0FBT0MsYUFBUSxDQUFDRCxXQUFXLENBckIvQlY7WUFxQnVEOzs7WUFFbkVZLEtBQUFBO21CQUFQLFNBQU9BLGNBQWNWLFNBQVM7Z0JBQUksT0FBT1MsYUFBUSxDQUFDQyxhQUFhLENBdkI1Q1osc0JBdUJtRUU7WUFBWTs7O1dBdkIvRUY7RUFBNkJXLGFBQVE7QUFpQnhELGlCQWpCbUJYLHNCQWlCWmEsV0FBVTtBQUVqQixpQkFuQm1CYixzQkFtQlpjLGFBQVkifQ==
171
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluay9jb250ZW50cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi8uLi9ub2RlL2h0bWxcIjtcblxuaW1wb3J0IHsgQ09OVEVOVFNfUFJFUEVORCB9IGZyb20gXCIuLi8uLi8uLi9wcmVwZW5kc1wiO1xuaW1wb3J0IHsgSFJFRl9BVFRSSUJVVEVfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9hdHRyaWJ1dGVOYW1lc1wiO1xuaW1wb3J0IHsgQ09OVEVOVFNfTElOS19SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vLi4vcnVsZU5hbWVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENvbnRlbnRzTGlua0hUTUxOb2RlIGV4dGVuZHMgSFRNTE5vZGUge1xuICBjb25zdHJ1Y3RvcihvdXRlck5vZGUsIHBhcmVudE5vZGUsIGNoaWxkTm9kZXMsIGRvbUVsZW1lbnQsIGlkZW50aWZpZXIpIHtcbiAgICBzdXBlcihvdXRlck5vZGUsIHBhcmVudE5vZGUsIGNoaWxkTm9kZXMsIGRvbUVsZW1lbnQpO1xuXG4gICAgdGhpcy5pZGVudGlmaWVyID0gaWRlbnRpZmllcjtcbiAgfVxuXG4gIGdldElkZW50aWZpZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuaWRlbnRpZmllcjtcbiAgfVxuXG4gIGdldFJ1bGVOYW1lKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gQ09OVEVOVFNfTElOS19SVUxFX05BTUU7XG5cbiAgICByZXR1cm4gcnVsZU5hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lID0gSFJFRl9BVFRSSUJVVEVfTkFNRTtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVOYW1lO1xuICB9XG5cbiAgYXR0cmlidXRlVmFsdWUoY29udGV4dCkge1xuICAgIGNvbnN0IHByZXBlbmQgPSBDT05URU5UU19QUkVQRU5ELFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gYCMke3ByZXBlbmR9LSR7dGhpcy5pZGVudGlmaWVyfWA7XG5cbiAgICByZXR1cm4gYXR0cmlidXRlVmFsdWU7XG4gIH1cblxuICBhc1N0cmluZygpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IHRoaXMuZ2V0UnVsZU5hbWUoKSxcbiAgICAgICAgICBzdHJpbmcgPSBydWxlTmFtZTsgIC8vL1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJhXCI7XG5cbiAgc3RhdGljIGNsYXNzTmFtZSA9IFwiY29udGVudHMtbGlua1wiO1xuXG4gIHN0YXRpYyBmcm9tTGluZUhUTUxUcmFuc2Zvcm1BbmRJZGVudGlmaWVyKGxpbmVIVE1MVHJhbnNmb3JtLCBpZGVudGlmaWVyKSB7XG4gICAgY29uc3QgbGluZUhUTUxOb2RlID0gbGluZUhUTUxUcmFuc2Zvcm0uZ2V0TGluZUhUTUxOb2RlKCksXG4gICAgICAgICAgY2hpbGROb2RlcyA9IFtcbiAgICAgICAgICAgIGxpbmVIVE1MTm9kZVxuICAgICAgICAgIF0sXG4gICAgICAgICAgY29udGVudHNMaW5rSFRNTE5vZGUgPSBIVE1MTm9kZS5mcm9tQ2hpbGROb2RlcyhDb250ZW50c0xpbmtIVE1MTm9kZSwgY2hpbGROb2RlcywgaWRlbnRpZmllcik7XG5cbiAgICByZXR1cm4gY29udGVudHNMaW5rSFRNTE5vZGU7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJDb250ZW50c0xpbmtIVE1MTm9kZSIsIm91dGVyTm9kZSIsInBhcmVudE5vZGUiLCJjaGlsZE5vZGVzIiwiZG9tRWxlbWVudCIsImlkZW50aWZpZXIiLCJnZXRJZGVudGlmaWVyIiwiZ2V0UnVsZU5hbWUiLCJydWxlTmFtZSIsIkNPTlRFTlRTX0xJTktfUlVMRV9OQU1FIiwiYXR0cmlidXRlTmFtZSIsImNvbnRleHQiLCJIUkVGX0FUVFJJQlVURV9OQU1FIiwiYXR0cmlidXRlVmFsdWUiLCJwcmVwZW5kIiwiQ09OVEVOVFNfUFJFUEVORCIsImFzU3RyaW5nIiwic3RyaW5nIiwiZnJvbUxpbmVIVE1MVHJhbnNmb3JtQW5kSWRlbnRpZmllciIsImxpbmVIVE1MVHJhbnNmb3JtIiwibGluZUhUTUxOb2RlIiwiZ2V0TGluZUhUTUxOb2RlIiwiY29udGVudHNMaW5rSFRNTE5vZGUiLCJIVE1MTm9kZSIsImZyb21DaGlsZE5vZGVzIiwidGFnTmFtZSIsImNsYXNzTmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFRcUJBOzs7MkRBTkE7d0JBRVk7OEJBQ0c7eUJBQ0k7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXpCLElBQUEsQUFBTUEscUNBQU47Y0FBTUE7YUFBQUEscUJBQ1BDLFNBQVMsRUFBRUMsVUFBVSxFQUFFQyxVQUFVLEVBQUVDLFVBQVUsRUFBRUMsVUFBVTtnQ0FEbERMOztnQkFFakIsa0JBRmlCQTtZQUVYQztZQUFXQztZQUFZQztZQUFZQzs7UUFFekMsTUFBS0MsVUFBVSxHQUFHQTs7O2tCQUpETDs7WUFPbkJNLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0QsVUFBVTtZQUN4Qjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxXQUFXQyxrQ0FBdUI7Z0JBRXhDLE9BQU9EO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsY0FBY0MsT0FBTztnQkFDbkIsSUFBTUQsZ0JBQWdCRSxtQ0FBbUI7Z0JBRXpDLE9BQU9GO1lBQ1Q7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsZUFBZUYsT0FBTztnQkFDcEIsSUFBTUcsVUFBVUMsMEJBQWdCLEVBQzFCRixpQkFBaUIsQUFBQyxJQUFjLE9BQVhDLFNBQVEsS0FBbUIsT0FBaEIsSUFBSSxDQUFDVCxVQUFVO2dCQUVyRCxPQUFPUTtZQUNUOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1SLFdBQVcsSUFBSSxDQUFDRCxXQUFXLElBQzNCVSxTQUFTVCxVQUFXLEdBQUc7Z0JBRTdCLE9BQU9TO1lBQ1Q7Ozs7WUFNT0MsS0FBQUE7bUJBQVAsU0FBT0EsbUNBQW1DQyxpQkFBaUIsRUFBRWQsVUFBVTtnQkFDckUsSUFBTWUsZUFBZUQsa0JBQWtCRSxlQUFlLElBQ2hEbEIsYUFBYTtvQkFDWGlCO2lCQUNELEVBQ0RFLHVCQUF1QkMsYUFBUSxDQUFDQyxjQUFjLENBOUNuQ3hCLHNCQThDMERHLFlBQVlFO2dCQUV2RixPQUFPaUI7WUFDVDs7O1dBakRtQnRCO0VBQTZCdUIsYUFBUTtBQXFDeEQsaUJBckNtQnZCLHNCQXFDWnlCLFdBQVU7QUFFakIsaUJBdkNtQnpCLHNCQXVDWjBCLGFBQVkifQ==
@@ -137,6 +137,13 @@ var EmailLinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
137
137
  return this.outerNode.isSimple();
138
138
  }
139
139
  },
140
+ {
141
+ key: "content",
142
+ value: function content(context) {
143
+ var emailAddress = this.emailAddress(context), content = emailAddress; ///
144
+ return content;
145
+ }
146
+ },
140
147
  {
141
148
  key: "emailAddress",
142
149
  value: function emailAddress(context) {
@@ -160,23 +167,40 @@ var EmailLinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
160
167
  {
161
168
  key: "mount",
162
169
  value: function mount(parentDOMElement, siblingDOMElement, context) {
163
- _get(_get_prototype_of(EmailLinkHTMLNode.prototype), "mount", this).call(this, parentDOMElement, siblingDOMElement, context);
164
170
  var simple = this.isSimple();
165
- if (simple) {
166
- var emailAddress = this.emailAddress(context), content = emailAddress, textNode = document.createTextNode(content), domElement = textNode, _$parentDOMElement = this.domElement, _$siblingDOMElement = null;
167
- _$parentDOMElement.insertBefore(domElement, _$siblingDOMElement);
171
+ if (!simple) {
172
+ _get(_get_prototype_of(EmailLinkHTMLNode.prototype), "mount", this).call(this, parentDOMElement, siblingDOMElement, context);
173
+ return;
168
174
  }
175
+ var domElement;
176
+ domElement = this.createDOMElement(context);
177
+ this.setDOMElement(domElement);
178
+ parentDOMElement.insertBefore(domElement, siblingDOMElement);
179
+ parentDOMElement = domElement; ///
180
+ siblingDOMElement = null;
181
+ var content = this.content(context), textNode = document.createTextNode(content);
182
+ domElement = textNode; ///
183
+ parentDOMElement.insertBefore(domElement, siblingDOMElement);
169
184
  }
170
185
  },
171
186
  {
172
187
  key: "unmount",
173
188
  value: function unmount(parentDOMElement, context) {
174
189
  var simple = this.isSimple();
175
- if (simple) {
176
- var _$parentDOMElement = this.domElement, firstChild = _$parentDOMElement.firstChild, domElement = firstChild; ///
190
+ if (!simple) {
191
+ _get(_get_prototype_of(EmailLinkHTMLNode.prototype), "unmount", this).call(this, parentDOMElement, context);
192
+ return;
193
+ }
194
+ var domElement;
195
+ {
196
+ domElement = this.getDOMElement();
197
+ var _$parentDOMElement = domElement, firstChild = domElement.firstChild;
198
+ domElement = firstChild; ///
177
199
  _$parentDOMElement.removeChild(domElement);
178
200
  }
179
- _get(_get_prototype_of(EmailLinkHTMLNode.prototype), "unmount", this).call(this, parentDOMElement, context);
201
+ domElement = this.getDOMElement();
202
+ parentDOMElement.removeChild(domElement);
203
+ this.resetDOMElement();
180
204
  }
181
205
  },
182
206
  {
@@ -226,4 +250,4 @@ var EmailLinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
226
250
  _define_property(EmailLinkHTMLNode, "tagName", "a");
227
251
  _define_property(EmailLinkHTMLNode, "className", "email-link");
228
252
 
229
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluay9lbWFpbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi8uLi9ub2RlL2h0bWxcIjtcblxuaW1wb3J0IHsgSFJFRl9BVFRSSUJVVEVfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9hdHRyaWJ1dGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFbWFpbExpbmtIVE1MTm9kZSBleHRlbmRzIEhUTUxOb2RlIHtcbiAgaXNTaW1wbGUoKSB7IHJldHVybiB0aGlzLm91dGVyTm9kZS5pc1NpbXBsZSgpOyB9XG5cbiAgZW1haWxBZGRyZXNzKGNvbnRleHQpIHsgcmV0dXJuIHRoaXMub3V0ZXJOb2RlLmVtYWlsQWRkcmVzcyhjb250ZXh0KTsgfVxuXG4gIGF0dHJpYnV0ZU5hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBIUkVGX0FUVFJJQlVURV9OQU1FO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZU5hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSB7XG4gICAgY29uc3QgZW1haWxBZGRyZXNzID0gdGhpcy5lbWFpbEFkZHJlc3MoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSBgbWFpbHRvOiR7ZW1haWxBZGRyZXNzfWA7XG5cbiAgICByZXR1cm4gYXR0cmlidXRlVmFsdWU7XG4gIH1cblxuICBtb3VudChwYXJlbnRET01FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCwgY29udGV4dCkge1xuICAgIHN1cGVyLm1vdW50KHBhcmVudERPTUVsZW1lbnQsIHNpYmxpbmdET01FbGVtZW50LCBjb250ZXh0KTtcblxuICAgIGNvbnN0IHNpbXBsZSA9IHRoaXMuaXNTaW1wbGUoKTtcblxuICAgIGlmIChzaW1wbGUpIHtcbiAgICAgIGNvbnN0IGVtYWlsQWRkcmVzcyA9IHRoaXMuZW1haWxBZGRyZXNzKGNvbnRleHQpLFxuICAgICAgICAgICAgY29udGVudCA9IGVtYWlsQWRkcmVzcywgLy8vXG4gICAgICAgICAgICB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNvbnRlbnQpLFxuICAgICAgICAgICAgZG9tRWxlbWVudCA9IHRleHROb2RlLCAgLy8vXG4gICAgICAgICAgICBwYXJlbnRET01FbGVtZW50ID0gdGhpcy5kb21FbGVtZW50LCAvLy9cbiAgICAgICAgICAgIHNpYmxpbmdET01FbGVtZW50ID0gbnVsbDtcblxuICAgICAgcGFyZW50RE9NRWxlbWVudC5pbnNlcnRCZWZvcmUoZG9tRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQpXG4gICAgfVxuICB9XG5cbiAgdW5tb3VudChwYXJlbnRET01FbGVtZW50LCBjb250ZXh0KSB7XG4gICAgY29uc3Qgc2ltcGxlID0gdGhpcy5pc1NpbXBsZSgpO1xuXG4gICAgaWYgKHNpbXBsZSkge1xuICAgICAgY29uc3QgcGFyZW50RE9NRWxlbWVudCA9IHRoaXMuZG9tRWxlbWVudCxcbiAgICAgICAgICAgIGZpcnN0Q2hpbGQgPSBwYXJlbnRET01FbGVtZW50LmZpcnN0Q2hpbGQsXG4gICAgICAgICAgICBkb21FbGVtZW50ID0gZmlyc3RDaGlsZDsgIC8vL1xuXG4gICAgICBwYXJlbnRET01FbGVtZW50LnJlbW92ZUNoaWxkKGRvbUVsZW1lbnQpXG4gICAgfVxuXG4gICAgc3VwZXIudW5tb3VudChwYXJlbnRET01FbGVtZW50LCBjb250ZXh0KTtcbiAgfVxuXG4gIGFzUGxhaW5UZXh0KGNvbnRleHQpIHtcbiAgICBsZXQgcGxhaW5UZXh0O1xuXG4gICAgY29uc3Qgc2ltcGxlID0gdGhpcy5pc1NpbXBsZSgpO1xuXG4gICAgaWYgKHNpbXBsZSkge1xuICAgICAgY29uc3QgZW1haWxBZGRyZXNzID0gdGhpcy5lbWFpbEFkZHJlc3MoY29udGV4dCk7XG5cbiAgICAgIHBsYWluVGV4dCA9IGVtYWlsQWRkcmVzczsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIHBsYWluVGV4dCA9IHN1cGVyLmFzUGxhaW5UZXh0KGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiBwbGFpblRleHQ7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGxldCBjaGlsZE5vZGVzSFRNTDtcblxuICAgIGNvbnN0IHNpbXBsZSA9IHRoaXMuaXNTaW1wbGUoKTtcblxuICAgIGlmIChzaW1wbGUpIHtcbiAgICAgIGNvbnN0IGVtYWlsQWRkcmVzcyA9IHRoaXMuZW1haWxBZGRyZXNzKGNvbnRleHQpO1xuXG4gICAgICBjaGlsZE5vZGVzSFRNTCA9IGAke2VtYWlsQWRkcmVzc31cbmA7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNoaWxkTm9kZXNIVE1MID0gc3VwZXIuY2hpbGROb2Rlc0FzSFRNTChpbmRlbnQsIGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiBjaGlsZE5vZGVzSFRNTDtcbiAgfVxuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJhXCI7XG5cbiAgc3RhdGljIGNsYXNzTmFtZSA9IFwiZW1haWwtbGlua1wiO1xuXG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHsgcmV0dXJuIEhUTUxOb2RlLmZyb21Ob3RoaW5nKEVtYWlsTGlua0hUTUxOb2RlKTsgfVxuXG4gIHN0YXRpYyBmcm9tT3V0ZXJOb2RlKG91dGVyTm9kZSkgeyByZXR1cm4gSFRNTE5vZGUuZnJvbU91dGVyTm9kZShFbWFpbExpbmtIVE1MTm9kZSwgb3V0ZXJOb2RlKTsgfVxufVxuIl0sIm5hbWVzIjpbIkVtYWlsTGlua0hUTUxOb2RlIiwiaXNTaW1wbGUiLCJvdXRlck5vZGUiLCJlbWFpbEFkZHJlc3MiLCJjb250ZXh0IiwiYXR0cmlidXRlTmFtZSIsIkhSRUZfQVRUUklCVVRFX05BTUUiLCJhdHRyaWJ1dGVWYWx1ZSIsIm1vdW50IiwicGFyZW50RE9NRWxlbWVudCIsInNpYmxpbmdET01FbGVtZW50Iiwic2ltcGxlIiwiY29udGVudCIsInRleHROb2RlIiwiZG9jdW1lbnQiLCJjcmVhdGVUZXh0Tm9kZSIsImRvbUVsZW1lbnQiLCJpbnNlcnRCZWZvcmUiLCJ1bm1vdW50IiwiZmlyc3RDaGlsZCIsInJlbW92ZUNoaWxkIiwiYXNQbGFpblRleHQiLCJwbGFpblRleHQiLCJjaGlsZE5vZGVzQXNIVE1MIiwiaW5kZW50IiwiY2hpbGROb2Rlc0hUTUwiLCJmcm9tTm90aGluZyIsIkhUTUxOb2RlIiwiZnJvbU91dGVyTm9kZSIsInRhZ05hbWUiLCJjbGFzc05hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7OzJEQUpBOzhCQUVlOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXJCLElBQUEsQUFBTUEsa0NBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO2VBQU4sa0JBQU1BOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQWEsT0FBTyxJQUFJLENBQUNDLFNBQVMsQ0FBQ0QsUUFBUTtZQUFJOzs7WUFFL0NFLEtBQUFBO21CQUFBQSxTQUFBQSxhQUFhQyxPQUFPO2dCQUFJLE9BQU8sSUFBSSxDQUFDRixTQUFTLENBQUNDLFlBQVksQ0FBQ0M7WUFBVTs7O1lBRXJFQyxLQUFBQTttQkFBQUEsU0FBQUEsY0FBY0QsT0FBTztnQkFDbkIsSUFBTUMsZ0JBQWdCQyxtQ0FBbUI7Z0JBRXpDLE9BQU9EO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsZUFBZUgsT0FBTztnQkFDcEIsSUFBTUQsZUFBZSxJQUFJLENBQUNBLFlBQVksQ0FBQ0MsVUFDakNHLGlCQUFpQixBQUFDLFVBQXNCLE9BQWJKO2dCQUVqQyxPQUFPSTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLE1BQU1DLGdCQUFnQixFQUFFQyxpQkFBaUIsRUFBRU4sT0FBTztnQkFDaEQsdUJBbkJpQkosOEJBbUJYUSxTQUFOLElBQUssYUFBT0Msa0JBQWtCQyxtQkFBbUJOO2dCQUVqRCxJQUFNTyxTQUFTLElBQUksQ0FBQ1YsUUFBUTtnQkFFNUIsSUFBSVUsUUFBUTtvQkFDVixJQUFNUixlQUFlLElBQUksQ0FBQ0EsWUFBWSxDQUFDQyxVQUNqQ1EsVUFBVVQsY0FDVlUsV0FBV0MsU0FBU0MsY0FBYyxDQUFDSCxVQUNuQ0ksYUFBYUgsVUFDYkoscUJBQW1CLElBQUksQ0FBQ08sVUFBVSxFQUNsQ04sc0JBQW9CO29CQUUxQkQsbUJBQWlCUSxZQUFZLENBQUNELFlBQVlOO2dCQUM1QztZQUNGOzs7WUFFQVEsS0FBQUE7bUJBQUFBLFNBQUFBLFFBQVFULGdCQUFnQixFQUFFTCxPQUFPO2dCQUMvQixJQUFNTyxTQUFTLElBQUksQ0FBQ1YsUUFBUTtnQkFFNUIsSUFBSVUsUUFBUTtvQkFDVixJQUFNRixxQkFBbUIsSUFBSSxDQUFDTyxVQUFVLEVBQ2xDRyxhQUFhVixtQkFBaUJVLFVBQVUsRUFDeENILGFBQWFHLFlBQWEsR0FBRztvQkFFbkNWLG1CQUFpQlcsV0FBVyxDQUFDSjtnQkFDL0I7Z0JBRUEsdUJBOUNpQmhCLDhCQThDWGtCLFdBQU4sSUFBSyxhQUFTVCxrQkFBa0JMO1lBQ2xDOzs7WUFFQWlCLEtBQUFBO21CQUFBQSxTQUFBQSxZQUFZakIsT0FBTztnQkFDakIsSUFBSWtCO2dCQUVKLElBQU1YLFNBQVMsSUFBSSxDQUFDVixRQUFRO2dCQUU1QixJQUFJVSxRQUFRO29CQUNWLElBQU1SLGVBQWUsSUFBSSxDQUFDQSxZQUFZLENBQUNDO29CQUV2Q2tCLFlBQVluQixjQUFjLEdBQUc7Z0JBQy9CLE9BQU87b0JBQ0xtQixZQUFZLHVCQTNER3RCLDhCQTJER3FCLGVBQU4sSUFBSyxhQUFhakI7Z0JBQ2hDO2dCQUVBLE9BQU9rQjtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGlCQUFpQkMsTUFBTSxFQUFFcEIsT0FBTztnQkFDOUIsSUFBSXFCO2dCQUVKLElBQU1kLFNBQVMsSUFBSSxDQUFDVixRQUFRO2dCQUU1QixJQUFJVSxRQUFRO29CQUNWLElBQU1SLGVBQWUsSUFBSSxDQUFDQSxZQUFZLENBQUNDO29CQUV2Q3FCLGlCQUFpQixBQUFDLEdBQWUsT0FBYnRCLGNBQWE7Z0JBRW5DLE9BQU87b0JBQ0xzQixpQkFBaUIsdUJBNUVGekIsOEJBNEVRdUIsb0JBQU4sSUFBSyxhQUFrQkMsUUFBUXBCO2dCQUNsRDtnQkFFQSxPQUFPcUI7WUFDVDs7OztZQU1PQyxLQUFBQTttQkFBUCxTQUFPQTtnQkFBZ0IsT0FBT0MsYUFBUSxDQUFDRCxXQUFXLENBdEYvQjFCO1lBc0ZvRDs7O1lBRWhFNEIsS0FBQUE7bUJBQVAsU0FBT0EsY0FBYzFCLFNBQVM7Z0JBQUksT0FBT3lCLGFBQVEsQ0FBQ0MsYUFBYSxDQXhGNUM1QixtQkF3RmdFRTtZQUFZOzs7V0F4RjVFRjtFQUEwQjJCLGFBQVE7QUFrRnJELGlCQWxGbUIzQixtQkFrRlo2QixXQUFVO0FBRWpCLGlCQXBGbUI3QixtQkFvRlo4QixhQUFZIn0=
253
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluay9lbWFpbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi8uLi9ub2RlL2h0bWxcIjtcblxuaW1wb3J0IHsgSFJFRl9BVFRSSUJVVEVfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9hdHRyaWJ1dGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFbWFpbExpbmtIVE1MTm9kZSBleHRlbmRzIEhUTUxOb2RlIHtcbiAgaXNTaW1wbGUoKSB7IHJldHVybiB0aGlzLm91dGVyTm9kZS5pc1NpbXBsZSgpOyB9XG5cbiAgY29udGVudChjb250ZXh0KSB7XG4gICAgY29uc3QgZW1haWxBZGRyZXNzID0gdGhpcy5lbWFpbEFkZHJlc3MoY29udGV4dCksXG4gICAgICAgICAgY29udGVudCA9IGVtYWlsQWRkcmVzczsgLy8vXG5cbiAgICByZXR1cm4gY29udGVudDtcbiAgfVxuXG4gIGVtYWlsQWRkcmVzcyhjb250ZXh0KSB7IHJldHVybiB0aGlzLm91dGVyTm9kZS5lbWFpbEFkZHJlc3MoY29udGV4dCk7IH1cblxuICBhdHRyaWJ1dGVOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lID0gSFJFRl9BVFRSSUJVVEVfTkFNRTtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVOYW1lO1xuICB9XG5cbiAgYXR0cmlidXRlVmFsdWUoY29udGV4dCkge1xuICAgIGNvbnN0IGVtYWlsQWRkcmVzcyA9IHRoaXMuZW1haWxBZGRyZXNzKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gYG1haWx0bzoke2VtYWlsQWRkcmVzc31gO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZVZhbHVlO1xuICB9XG5cbiAgbW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpIHtcbiAgICBjb25zdCBzaW1wbGUgPSB0aGlzLmlzU2ltcGxlKCk7XG5cbiAgICBpZiAoIXNpbXBsZSkge1xuICAgICAgc3VwZXIubW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IGRvbUVsZW1lbnQ7XG5cbiAgICBkb21FbGVtZW50ID0gdGhpcy5jcmVhdGVET01FbGVtZW50KGNvbnRleHQpO1xuXG4gICAgdGhpcy5zZXRET01FbGVtZW50KGRvbUVsZW1lbnQpO1xuXG4gICAgcGFyZW50RE9NRWxlbWVudC5pbnNlcnRCZWZvcmUoZG9tRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQpO1xuXG4gICAgcGFyZW50RE9NRWxlbWVudCA9IGRvbUVsZW1lbnQ7IC8vL1xuXG4gICAgc2libGluZ0RPTUVsZW1lbnQgPSBudWxsO1xuXG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuY29udGVudChjb250ZXh0KSxcbiAgICAgICAgICB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNvbnRlbnQpO1xuXG4gICAgZG9tRWxlbWVudCA9IHRleHROb2RlOyAgLy8vXG5cbiAgICBwYXJlbnRET01FbGVtZW50Lmluc2VydEJlZm9yZShkb21FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCk7XG4gIH1cblxuICB1bm1vdW50KHBhcmVudERPTUVsZW1lbnQsIGNvbnRleHQpIHtcbiAgICBjb25zdCBzaW1wbGUgPSB0aGlzLmlzU2ltcGxlKCk7XG5cbiAgICBpZiAoIXNpbXBsZSkge1xuICAgICAgc3VwZXIudW5tb3VudChwYXJlbnRET01FbGVtZW50LCBjb250ZXh0KTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBkb21FbGVtZW50O1xuXG4gICAge1xuICAgICAgZG9tRWxlbWVudCA9IHRoaXMuZ2V0RE9NRWxlbWVudCgpO1xuXG4gICAgICBjb25zdCBwYXJlbnRET01FbGVtZW50ID0gZG9tRWxlbWVudCwgIC8vL1xuICAgICAgICAgICAgZmlyc3RDaGlsZCA9IGRvbUVsZW1lbnQuZmlyc3RDaGlsZFxuXG4gICAgICBkb21FbGVtZW50ID0gZmlyc3RDaGlsZDsgIC8vL1xuXG4gICAgICBwYXJlbnRET01FbGVtZW50LnJlbW92ZUNoaWxkKGRvbUVsZW1lbnQpO1xuICAgIH1cblxuICAgIGRvbUVsZW1lbnQgPSB0aGlzLmdldERPTUVsZW1lbnQoKTtcblxuICAgIHBhcmVudERPTUVsZW1lbnQucmVtb3ZlQ2hpbGQoZG9tRWxlbWVudCk7XG5cbiAgICB0aGlzLnJlc2V0RE9NRWxlbWVudCgpO1xuICB9XG5cbiAgYXNQbGFpblRleHQoY29udGV4dCkge1xuICAgIGxldCBwbGFpblRleHQ7XG5cbiAgICBjb25zdCBzaW1wbGUgPSB0aGlzLmlzU2ltcGxlKCk7XG5cbiAgICBpZiAoc2ltcGxlKSB7XG4gICAgICBjb25zdCBlbWFpbEFkZHJlc3MgPSB0aGlzLmVtYWlsQWRkcmVzcyhjb250ZXh0KTtcblxuICAgICAgcGxhaW5UZXh0ID0gZW1haWxBZGRyZXNzOyAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgcGxhaW5UZXh0ID0gc3VwZXIuYXNQbGFpblRleHQoY29udGV4dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBsYWluVGV4dDtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KSB7XG4gICAgbGV0IGNoaWxkTm9kZXNIVE1MO1xuXG4gICAgY29uc3Qgc2ltcGxlID0gdGhpcy5pc1NpbXBsZSgpO1xuXG4gICAgaWYgKHNpbXBsZSkge1xuICAgICAgY29uc3QgZW1haWxBZGRyZXNzID0gdGhpcy5lbWFpbEFkZHJlc3MoY29udGV4dCk7XG5cbiAgICAgIGNoaWxkTm9kZXNIVE1MID0gYCR7ZW1haWxBZGRyZXNzfVxuYDtcbiAgICB9IGVsc2Uge1xuICAgICAgY2hpbGROb2Rlc0hUTUwgPSBzdXBlci5jaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICB9XG5cbiAgc3RhdGljIHRhZ05hbWUgPSBcImFcIjtcblxuICBzdGF0aWMgY2xhc3NOYW1lID0gXCJlbWFpbC1saW5rXCI7XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkgeyByZXR1cm4gSFRNTE5vZGUuZnJvbU5vdGhpbmcoRW1haWxMaW5rSFRNTE5vZGUpOyB9XG5cbiAgc3RhdGljIGZyb21PdXRlck5vZGUob3V0ZXJOb2RlKSB7IHJldHVybiBIVE1MTm9kZS5mcm9tT3V0ZXJOb2RlKEVtYWlsTGlua0hUTUxOb2RlLCBvdXRlck5vZGUpOyB9XG59XG4iXSwibmFtZXMiOlsiRW1haWxMaW5rSFRNTE5vZGUiLCJpc1NpbXBsZSIsIm91dGVyTm9kZSIsImNvbnRlbnQiLCJjb250ZXh0IiwiZW1haWxBZGRyZXNzIiwiYXR0cmlidXRlTmFtZSIsIkhSRUZfQVRUUklCVVRFX05BTUUiLCJhdHRyaWJ1dGVWYWx1ZSIsIm1vdW50IiwicGFyZW50RE9NRWxlbWVudCIsInNpYmxpbmdET01FbGVtZW50Iiwic2ltcGxlIiwiZG9tRWxlbWVudCIsImNyZWF0ZURPTUVsZW1lbnQiLCJzZXRET01FbGVtZW50IiwiaW5zZXJ0QmVmb3JlIiwidGV4dE5vZGUiLCJkb2N1bWVudCIsImNyZWF0ZVRleHROb2RlIiwidW5tb3VudCIsImdldERPTUVsZW1lbnQiLCJmaXJzdENoaWxkIiwicmVtb3ZlQ2hpbGQiLCJyZXNldERPTUVsZW1lbnQiLCJhc1BsYWluVGV4dCIsInBsYWluVGV4dCIsImNoaWxkTm9kZXNBc0hUTUwiLCJpbmRlbnQiLCJjaGlsZE5vZGVzSFRNTCIsImZyb21Ob3RoaW5nIiwiSFRNTE5vZGUiLCJmcm9tT3V0ZXJOb2RlIiwidGFnTmFtZSIsImNsYXNzTmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNcUJBOzs7MkRBSkE7OEJBRWU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _html = /*#__PURE__*/ _interop_require_default(require("../../../node/html"));
12
+ var _constants = require("../../../constants");
12
13
  var _prepends = require("../../../prepends");
13
14
  var _attributeNames = require("../../../attributeNames");
14
15
  function _assert_this_initialized(self) {
@@ -40,6 +41,19 @@ function _create_class(Constructor, protoProps, staticProps) {
40
41
  if (staticProps) _defineProperties(Constructor, staticProps);
41
42
  return Constructor;
42
43
  }
44
+ function _define_property(obj, key, value) {
45
+ if (key in obj) {
46
+ Object.defineProperty(obj, key, {
47
+ value: value,
48
+ enumerable: true,
49
+ configurable: true,
50
+ writable: true
51
+ });
52
+ } else {
53
+ obj[key] = value;
54
+ }
55
+ return obj;
56
+ }
43
57
  function _get_prototype_of(o) {
44
58
  _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
45
59
  return o.__proto__ || Object.getPrototypeOf(o);
@@ -91,11 +105,44 @@ function _is_native_reflect_construct() {
91
105
  }
92
106
  var FootnoteLinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
93
107
  _inherits(FootnoteLinkHTMLNode, HTMLNode);
94
- function FootnoteLinkHTMLNode() {
108
+ function FootnoteLinkHTMLNode(outerNode, parentNode, childNodes, domElement, number) {
95
109
  _class_call_check(this, FootnoteLinkHTMLNode);
96
- return _call_super(this, FootnoteLinkHTMLNode, arguments);
110
+ var _this;
111
+ _this = _call_super(this, FootnoteLinkHTMLNode, [
112
+ outerNode,
113
+ parentNode,
114
+ childNodes,
115
+ domElement
116
+ ]);
117
+ _this.number = number;
118
+ return _this;
97
119
  }
98
120
  _create_class(FootnoteLinkHTMLNode, [
121
+ {
122
+ key: "getNumber",
123
+ value: function getNumber() {
124
+ return this.number;
125
+ }
126
+ },
127
+ {
128
+ key: "setNumber",
129
+ value: function setNumber(number) {
130
+ this.number = number;
131
+ }
132
+ },
133
+ {
134
+ key: "content",
135
+ value: function content(context) {
136
+ var content = this.number !== null ? this.number : _constants.EMPTY_STRING;
137
+ return content;
138
+ }
139
+ },
140
+ {
141
+ key: "identifier",
142
+ value: function identifier(context) {
143
+ return this.outerNode.identifier(context);
144
+ }
145
+ },
99
146
  {
100
147
  key: "attributeName",
101
148
  value: function attributeName(context) {
@@ -110,6 +157,45 @@ var FootnoteLinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
110
157
  return attributeValue;
111
158
  }
112
159
  },
160
+ {
161
+ key: "mount",
162
+ value: function mount(parentDOMElement, siblingDOMElement, context) {
163
+ var domElement;
164
+ domElement = this.createDOMElement(context);
165
+ this.setDOMElement(domElement);
166
+ parentDOMElement.insertBefore(domElement, siblingDOMElement);
167
+ parentDOMElement = domElement; ///
168
+ siblingDOMElement = null;
169
+ var content = this.content(context), textNode = document.createTextNode(content);
170
+ domElement = textNode; ///
171
+ parentDOMElement.insertBefore(domElement, siblingDOMElement);
172
+ }
173
+ },
174
+ {
175
+ key: "unmount",
176
+ value: function unmount(parentDOMElement, context) {
177
+ var domElement;
178
+ {
179
+ domElement = this.getDOMElement();
180
+ var _$parentDOMElement = domElement, firstChild = domElement.firstChild;
181
+ domElement = firstChild; ///
182
+ _$parentDOMElement.removeChild(domElement);
183
+ }
184
+ domElement = this.getDOMElement();
185
+ parentDOMElement.removeChild(domElement);
186
+ this.resetDOMElement();
187
+ }
188
+ },
189
+ {
190
+ key: "asHTML",
191
+ value: function asHTML(indent, context) {
192
+ var html;
193
+ indent = this.adjustIndent(indent);
194
+ var childNodesHTML = this.childNodesAsHTML(indent, context), startingTag = this.startingTag(context), closingTag = this.closingTag(context);
195
+ html = "".concat(indent).concat(startingTag).concat(childNodesHTML).concat(closingTag, "\n");
196
+ return html;
197
+ }
198
+ },
113
199
  {
114
200
  key: "childNodesAsHTML",
115
201
  value: function childNodesAsHTML(indent, context) {
@@ -121,17 +207,21 @@ var FootnoteLinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
121
207
  {
122
208
  key: "fromNothing",
123
209
  value: function fromNothing() {
124
- return _html.default.fromNothing(FootnoteLinkHTMLNode);
210
+ var number = null, footnoteLinkHTMLNode = _html.default.fromNothing(FootnoteLinkHTMLNode, number);
211
+ return footnoteLinkHTMLNode;
125
212
  }
126
213
  },
127
214
  {
128
215
  key: "fromOuterNode",
129
216
  value: function fromOuterNode(outerNode) {
130
- return _html.default.fromOuterNode(FootnoteLinkHTMLNode, outerNode);
217
+ var number = null, footnoteLinkHTMLNode = _html.default.fromOuterNode(FootnoteLinkHTMLNode, outerNode, number);
218
+ return footnoteLinkHTMLNode;
131
219
  }
132
220
  }
133
221
  ]);
134
222
  return FootnoteLinkHTMLNode;
135
223
  }(_html.default);
224
+ _define_property(FootnoteLinkHTMLNode, "tagName", "a");
225
+ _define_property(FootnoteLinkHTMLNode, "className", "footnote");
136
226
 
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluay9mb290bm90ZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi8uLi9ub2RlL2h0bWxcIjtcblxuaW1wb3J0IHsgRk9PVE5PVEVfUFJFUEVORCB9IGZyb20gXCIuLi8uLi8uLi9wcmVwZW5kc1wiO1xuaW1wb3J0IHsgSFJFRl9BVFRSSUJVVEVfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9hdHRyaWJ1dGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBGb290bm90ZUxpbmtIVE1MTm9kZSBleHRlbmRzIEhUTUxOb2RlIHtcbiAgYXR0cmlidXRlTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgYXR0cmlidXRlTmFtZSA9IEhSRUZfQVRUUklCVVRFX05BTUU7XG5cbiAgICByZXR1cm4gYXR0cmlidXRlTmFtZTtcbiAgfVxuXG4gIGF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpIHtcbiAgICBjb25zdCBwcmVwZW5kID0gRk9PVE5PVEVfUFJFUEVORCxcbiAgICAgICAgICBpZGVudGlmaWVyID0gdGhpcy5pZGVudGlmaWVyKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gYCMke3ByZXBlbmR9LSR7aWRlbnRpZmllcn1gOyAvLy9cblxuICAgIHJldHVybiBhdHRyaWJ1dGVWYWx1ZTtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KSB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuY29udGVudChjb250ZXh0KSxcbiAgICAgICAgICBjaGlsZE5vZGVzSFRNTCA9IGNvbnRlbnQ7IC8vL1xuXG4gICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkgeyByZXR1cm4gSFRNTE5vZGUuZnJvbU5vdGhpbmcoRm9vdG5vdGVMaW5rSFRNTE5vZGUpOyB9XG5cbiAgc3RhdGljIGZyb21PdXRlck5vZGUob3V0ZXJOb2RlKSB7IHJldHVybiBIVE1MTm9kZS5mcm9tT3V0ZXJOb2RlKEZvb3Rub3RlTGlua0hUTUxOb2RlLCBvdXRlck5vZGUpOyB9XG59XG4iXSwibmFtZXMiOlsiRm9vdG5vdGVMaW5rSFRNTE5vZGUiLCJhdHRyaWJ1dGVOYW1lIiwiY29udGV4dCIsIkhSRUZfQVRUUklCVVRFX05BTUUiLCJhdHRyaWJ1dGVWYWx1ZSIsInByZXBlbmQiLCJGT09UTk9URV9QUkVQRU5EIiwiaWRlbnRpZmllciIsImNoaWxkTm9kZXNBc0hUTUwiLCJpbmRlbnQiLCJjb250ZW50IiwiY2hpbGROb2Rlc0hUTUwiLCJmcm9tTm90aGluZyIsIkhUTUxOb2RlIiwiZnJvbU91dGVyTm9kZSIsIm91dGVyTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFPcUJBOzs7MkRBTEE7d0JBRVk7OEJBQ0c7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFckIsSUFBQSxBQUFNQSxxQ0FBTjtjQUFNQTthQUFBQTtnQ0FBQUE7ZUFBTixrQkFBTUE7O2tCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQSxjQUFjQyxPQUFPO2dCQUNuQixJQUFNRCxnQkFBZ0JFLG1DQUFtQjtnQkFFekMsT0FBT0Y7WUFDVDs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxlQUFlRixPQUFPO2dCQUNwQixJQUFNRyxVQUFVQywwQkFBZ0IsRUFDMUJDLGFBQWEsSUFBSSxDQUFDQSxVQUFVLENBQUNMLFVBQzdCRSxpQkFBaUIsQUFBQyxJQUFjRyxPQUFYRixTQUFRLEtBQWMsT0FBWEUsYUFBYyxHQUFHO2dCQUV2RCxPQUFPSDtZQUNUOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBLGlCQUFpQkMsTUFBTSxFQUFFUCxPQUFPO2dCQUM5QixJQUFNUSxVQUFVLElBQUksQ0FBQ0EsT0FBTyxDQUFDUixVQUN2QlMsaUJBQWlCRCxTQUFTLEdBQUc7Z0JBRW5DLE9BQU9DO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0E7Z0JBQWdCLE9BQU9DLGFBQVEsQ0FBQ0QsV0FBVyxDQXRCL0JaO1lBc0J1RDs7O1lBRW5FYyxLQUFBQTttQkFBUCxTQUFPQSxjQUFjQyxTQUFTO2dCQUFJLE9BQU9GLGFBQVEsQ0FBQ0MsYUFBYSxDQXhCNUNkLHNCQXdCbUVlO1lBQVk7OztXQXhCL0VmO0VBQTZCYSxhQUFRIn0=
227
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluay9mb290bm90ZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi8uLi9ub2RlL2h0bWxcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uLy4uLy4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgRk9PVE5PVEVfUFJFUEVORCB9IGZyb20gXCIuLi8uLi8uLi9wcmVwZW5kc1wiO1xuaW1wb3J0IHsgSFJFRl9BVFRSSUJVVEVfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9hdHRyaWJ1dGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBGb290bm90ZUxpbmtIVE1MTm9kZSBleHRlbmRzIEhUTUxOb2RlIHtcbiAgY29uc3RydWN0b3Iob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzLCBkb21FbGVtZW50LCBudW1iZXIpIHtcbiAgICBzdXBlcihvdXRlck5vZGUsIHBhcmVudE5vZGUsIGNoaWxkTm9kZXMsIGRvbUVsZW1lbnQpO1xuXG4gICAgdGhpcy5udW1iZXIgPSBudW1iZXI7XG4gIH1cblxuICBnZXROdW1iZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubnVtYmVyO1xuICB9XG5cbiAgc2V0TnVtYmVyKG51bWJlcikge1xuICAgIHRoaXMubnVtYmVyID0gbnVtYmVyO1xuICB9XG5cbiAgY29udGVudChjb250ZXh0KSB7XG4gICAgY29uc3QgY29udGVudCA9ICh0aGlzLm51bWJlciAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyIDpcbiAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORztcblxuICAgIHJldHVybiBjb250ZW50O1xuICB9XG5cbiAgaWRlbnRpZmllcihjb250ZXh0KSB7IHJldHVybiB0aGlzLm91dGVyTm9kZS5pZGVudGlmaWVyKGNvbnRleHQpOyB9XG5cbiAgYXR0cmlidXRlTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgYXR0cmlidXRlTmFtZSA9IEhSRUZfQVRUUklCVVRFX05BTUU7XG5cbiAgICByZXR1cm4gYXR0cmlidXRlTmFtZTtcbiAgfVxuXG4gIGF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpIHtcbiAgICBjb25zdCBwcmVwZW5kID0gRk9PVE5PVEVfUFJFUEVORCxcbiAgICAgICAgICBpZGVudGlmaWVyID0gdGhpcy5pZGVudGlmaWVyKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gYCMke3ByZXBlbmR9LSR7aWRlbnRpZmllcn1gOyAvLy9cblxuICAgIHJldHVybiBhdHRyaWJ1dGVWYWx1ZTtcbiAgfVxuXG4gIG1vdW50KHBhcmVudERPTUVsZW1lbnQsIHNpYmxpbmdET01FbGVtZW50LCBjb250ZXh0KSB7XG4gICAgbGV0IGRvbUVsZW1lbnQ7XG5cbiAgICBkb21FbGVtZW50ID0gdGhpcy5jcmVhdGVET01FbGVtZW50KGNvbnRleHQpO1xuXG4gICAgdGhpcy5zZXRET01FbGVtZW50KGRvbUVsZW1lbnQpO1xuXG4gICAgcGFyZW50RE9NRWxlbWVudC5pbnNlcnRCZWZvcmUoZG9tRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQpO1xuXG4gICAgcGFyZW50RE9NRWxlbWVudCA9IGRvbUVsZW1lbnQ7IC8vL1xuXG4gICAgc2libGluZ0RPTUVsZW1lbnQgPSBudWxsO1xuXG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuY29udGVudChjb250ZXh0KSxcbiAgICAgICAgICB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNvbnRlbnQpO1xuXG4gICAgZG9tRWxlbWVudCA9IHRleHROb2RlOyAgLy8vXG5cbiAgICBwYXJlbnRET01FbGVtZW50Lmluc2VydEJlZm9yZShkb21FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCk7XG4gIH1cblxuICB1bm1vdW50KHBhcmVudERPTUVsZW1lbnQsIGNvbnRleHQpIHtcbiAgICBsZXQgZG9tRWxlbWVudDtcblxuICAgIHtcbiAgICAgIGRvbUVsZW1lbnQgPSB0aGlzLmdldERPTUVsZW1lbnQoKTtcblxuICAgICAgY29uc3QgcGFyZW50RE9NRWxlbWVudCA9IGRvbUVsZW1lbnQsICAvLy9cbiAgICAgICAgICAgIGZpcnN0Q2hpbGQgPSBkb21FbGVtZW50LmZpcnN0Q2hpbGRcblxuICAgICAgZG9tRWxlbWVudCA9IGZpcnN0Q2hpbGQ7ICAvLy9cblxuICAgICAgcGFyZW50RE9NRWxlbWVudC5yZW1vdmVDaGlsZChkb21FbGVtZW50KTtcbiAgICB9XG5cbiAgICBkb21FbGVtZW50ID0gdGhpcy5nZXRET01FbGVtZW50KCk7XG5cbiAgICBwYXJlbnRET01FbGVtZW50LnJlbW92ZUNoaWxkKGRvbUVsZW1lbnQpO1xuXG4gICAgdGhpcy5yZXNldERPTUVsZW1lbnQoKTtcbiAgfVxuXG4gIGFzSFRNTChpbmRlbnQsIGNvbnRleHQpIHtcbiAgICBsZXQgaHRtbDtcblxuICAgIGluZGVudCA9IHRoaXMuYWRqdXN0SW5kZW50KGluZGVudCk7XG5cbiAgICBjb25zdCBjaGlsZE5vZGVzSFRNTCA9IHRoaXMuY2hpbGROb2Rlc0FzSFRNTChpbmRlbnQsIGNvbnRleHQpLFxuICAgICAgICAgIHN0YXJ0aW5nVGFnID0gdGhpcy5zdGFydGluZ1RhZyhjb250ZXh0KSxcbiAgICAgICAgICBjbG9zaW5nVGFnID0gdGhpcy5jbG9zaW5nVGFnKGNvbnRleHQpO1xuXG4gICAgaHRtbCA9IGAke2luZGVudH0ke3N0YXJ0aW5nVGFnfSR7Y2hpbGROb2Rlc0hUTUx9JHtjbG9zaW5nVGFnfVxuYDtcblxuICAgIHJldHVybiBodG1sO1xuICB9XG5cbiAgY2hpbGROb2Rlc0FzSFRNTChpbmRlbnQsIGNvbnRleHQpIHtcbiAgICBjb25zdCBjb250ZW50ID0gdGhpcy5jb250ZW50KGNvbnRleHQpLFxuICAgICAgICAgIGNoaWxkTm9kZXNIVE1MID0gY29udGVudDsgLy8vXG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBzdGF0aWMgdGFnTmFtZSA9IFwiYVwiO1xuXG4gIHN0YXRpYyBjbGFzc05hbWUgPSBcImZvb3Rub3RlXCI7XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkge1xuICAgIGNvbnN0IG51bWJlciA9IG51bGwsXG4gICAgICAgICAgZm9vdG5vdGVMaW5rSFRNTE5vZGUgPSBIVE1MTm9kZS5mcm9tTm90aGluZyhGb290bm90ZUxpbmtIVE1MTm9kZSwgbnVtYmVyKTtcblxuICAgIHJldHVybiBmb290bm90ZUxpbmtIVE1MTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tT3V0ZXJOb2RlKG91dGVyTm9kZSkge1xuICAgIGNvbnN0IG51bWJlciA9IG51bGwsXG4gICAgICAgICAgZm9vdG5vdGVMaW5rSFRNTE5vZGUgPSBIVE1MTm9kZS5mcm9tT3V0ZXJOb2RlKEZvb3Rub3RlTGlua0hUTUxOb2RlLCBvdXRlck5vZGUsIG51bWJlcik7XG5cbiAgICByZXR1cm4gZm9vdG5vdGVMaW5rSFRNTE5vZGU7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJGb290bm90ZUxpbmtIVE1MTm9kZSIsIm91dGVyTm9kZSIsInBhcmVudE5vZGUiLCJjaGlsZE5vZGVzIiwiZG9tRWxlbWVudCIsIm51bWJlciIsImdldE51bWJlciIsInNldE51bWJlciIsImNvbnRlbnQiLCJjb250ZXh0IiwiRU1QVFlfU1RSSU5HIiwiaWRlbnRpZmllciIsImF0dHJpYnV0ZU5hbWUiLCJIUkVGX0FUVFJJQlVURV9OQU1FIiwiYXR0cmlidXRlVmFsdWUiLCJwcmVwZW5kIiwiRk9PVE5PVEVfUFJFUEVORCIsIm1vdW50IiwicGFyZW50RE9NRWxlbWVudCIsInNpYmxpbmdET01FbGVtZW50IiwiY3JlYXRlRE9NRWxlbWVudCIsInNldERPTUVsZW1lbnQiLCJpbnNlcnRCZWZvcmUiLCJ0ZXh0Tm9kZSIsImRvY3VtZW50IiwiY3JlYXRlVGV4dE5vZGUiLCJ1bm1vdW50IiwiZ2V0RE9NRWxlbWVudCIsImZpcnN0Q2hpbGQiLCJyZW1vdmVDaGlsZCIsInJlc2V0RE9NRWxlbWVudCIsImFzSFRNTCIsImluZGVudCIsImh0bWwiLCJhZGp1c3RJbmRlbnQiLCJjaGlsZE5vZGVzSFRNTCIsImNoaWxkTm9kZXNBc0hUTUwiLCJzdGFydGluZ1RhZyIsImNsb3NpbmdUYWciLCJmcm9tTm90aGluZyIsImZvb3Rub3RlTGlua0hUTUxOb2RlIiwiSFRNTE5vZGUiLCJmcm9tT3V0ZXJOb2RlIiwidGFnTmFtZSIsImNsYXNzTmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFRcUJBOzs7MkRBTkE7eUJBRVE7d0JBQ0k7OEJBQ0c7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXJCLElBQUEsQUFBTUEscUNBQU47Y0FBTUE7YUFBQUEscUJBQ1BDLFNBQVMsRUFBRUMsVUFBVSxFQUFFQyxVQUFVLEVBQUVDLFVBQVUsRUFBRUMsTUFBTTtnQ0FEOUNMOztnQkFFakIsa0JBRmlCQTtZQUVYQztZQUFXQztZQUFZQztZQUFZQzs7UUFFekMsTUFBS0MsTUFBTSxHQUFHQTs7O2tCQUpHTDs7WUFPbkJNLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0QsTUFBTTtZQUNwQjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVRixNQUFNO2dCQUNkLElBQUksQ0FBQ0EsTUFBTSxHQUFHQTtZQUNoQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxRQUFRQyxPQUFPO2dCQUNiLElBQU1ELFVBQVUsQUFBQyxJQUFJLENBQUNILE1BQU0sS0FBSyxPQUNmLElBQUksQ0FBQ0EsTUFBTSxHQUNUSyx1QkFBWTtnQkFFaEMsT0FBT0Y7WUFDVDs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXRixPQUFPO2dCQUFJLE9BQU8sSUFBSSxDQUFDUixTQUFTLENBQUNVLFVBQVUsQ0FBQ0Y7WUFBVTs7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
@@ -143,6 +143,13 @@ var HyperlinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
143
143
  return this.outerNode.url(context);
144
144
  }
145
145
  },
146
+ {
147
+ key: "content",
148
+ value: function content(context) {
149
+ var url = this.url(context), content = url; ///
150
+ return content;
151
+ }
152
+ },
146
153
  {
147
154
  key: "attributeName",
148
155
  value: function attributeName(context) {
@@ -160,23 +167,40 @@ var HyperlinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
160
167
  {
161
168
  key: "mount",
162
169
  value: function mount(parentDOMElement, siblingDOMElement, context) {
163
- _get(_get_prototype_of(HyperlinkHTMLNode.prototype), "mount", this).call(this, parentDOMElement, siblingDOMElement, context);
164
170
  var simple = this.isSimple();
165
- if (simple) {
166
- var url = this.url(context), content = url, textNode = document.createTextNode(content), domElement = textNode, _$parentDOMElement = this.domElement, _$siblingDOMElement = null;
167
- _$parentDOMElement.insertBefore(domElement, _$siblingDOMElement);
171
+ if (!simple) {
172
+ _get(_get_prototype_of(HyperlinkHTMLNode.prototype), "mount", this).call(this, parentDOMElement, siblingDOMElement, context);
173
+ return;
168
174
  }
175
+ var domElement;
176
+ domElement = this.createDOMElement(context);
177
+ this.setDOMElement(domElement);
178
+ parentDOMElement.insertBefore(domElement, siblingDOMElement);
179
+ parentDOMElement = domElement; ///
180
+ siblingDOMElement = null;
181
+ var content = this.content(context), textNode = document.createTextNode(content);
182
+ domElement = textNode; ///
183
+ parentDOMElement.insertBefore(domElement, siblingDOMElement);
169
184
  }
170
185
  },
171
186
  {
172
187
  key: "unmount",
173
188
  value: function unmount(parentDOMElement, context) {
174
189
  var simple = this.isSimple();
175
- if (simple) {
176
- var _$parentDOMElement = this.domElement, firstChild = _$parentDOMElement.firstChild, domElement = firstChild; ///
190
+ if (!simple) {
191
+ _get(_get_prototype_of(HyperlinkHTMLNode.prototype), "unmount", this).call(this, parentDOMElement, context);
192
+ return;
193
+ }
194
+ var domElement;
195
+ {
196
+ domElement = this.getDOMElement();
197
+ var _$parentDOMElement = domElement, firstChild = domElement.firstChild;
198
+ domElement = firstChild; ///
177
199
  _$parentDOMElement.removeChild(domElement);
178
200
  }
179
- _get(_get_prototype_of(HyperlinkHTMLNode.prototype), "unmount", this).call(this, parentDOMElement, context);
201
+ domElement = this.getDOMElement();
202
+ parentDOMElement.removeChild(domElement);
203
+ this.resetDOMElement();
180
204
  }
181
205
  },
182
206
  {
@@ -226,4 +250,4 @@ var HyperlinkHTMLNode = /*#__PURE__*/ function(HTMLNode) {
226
250
  _define_property(HyperlinkHTMLNode, "tagName", "a");
227
251
  _define_property(HyperlinkHTMLNode, "className", "hyperlink");
228
252
 
229
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluay9oeXBlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi8uLi9ub2RlL2h0bWxcIjtcblxuaW1wb3J0IHsgSFJFRl9BVFRSSUJVVEVfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9hdHRyaWJ1dGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBIeXBlcmxpbmtIVE1MTm9kZSBleHRlbmRzIEhUTUxOb2RlIHtcbiAgaXNTaW1wbGUoKSB7IHJldHVybiB0aGlzLm91dGVyTm9kZS5pc1NpbXBsZSgpOyB9XG5cbiAgdXJsKGNvbnRleHQpIHsgcmV0dXJuIHRoaXMub3V0ZXJOb2RlLnVybChjb250ZXh0KTsgfVxuXG4gIGF0dHJpYnV0ZU5hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBIUkVGX0FUVFJJQlVURV9OQU1FO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZU5hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSB7XG4gICAgY29uc3QgdXJsID0gdGhpcy51cmwoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB1cmw7IC8vL1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZVZhbHVlO1xuICB9XG5cbiAgbW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpIHtcbiAgICBzdXBlci5tb3VudChwYXJlbnRET01FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCwgY29udGV4dCk7XG5cbiAgICBjb25zdCBzaW1wbGUgPSB0aGlzLmlzU2ltcGxlKCk7XG5cbiAgICBpZiAoc2ltcGxlKSB7XG4gICAgICBjb25zdCB1cmwgPSB0aGlzLnVybChjb250ZXh0KSxcbiAgICAgICAgICAgIGNvbnRlbnQgPSB1cmwsIC8vL1xuICAgICAgICAgICAgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjb250ZW50KSxcbiAgICAgICAgICAgIGRvbUVsZW1lbnQgPSB0ZXh0Tm9kZSwgIC8vL1xuICAgICAgICAgICAgcGFyZW50RE9NRWxlbWVudCA9IHRoaXMuZG9tRWxlbWVudCwgLy8vXG4gICAgICAgICAgICBzaWJsaW5nRE9NRWxlbWVudCA9IG51bGw7XG5cbiAgICAgIHBhcmVudERPTUVsZW1lbnQuaW5zZXJ0QmVmb3JlKGRvbUVsZW1lbnQsIHNpYmxpbmdET01FbGVtZW50KVxuICAgIH1cbiAgfVxuXG4gIHVubW91bnQocGFyZW50RE9NRWxlbWVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IHNpbXBsZSA9IHRoaXMuaXNTaW1wbGUoKTtcblxuICAgIGlmIChzaW1wbGUpIHtcbiAgICAgIGNvbnN0IHBhcmVudERPTUVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQsXG4gICAgICAgICAgICBmaXJzdENoaWxkID0gcGFyZW50RE9NRWxlbWVudC5maXJzdENoaWxkLFxuICAgICAgICAgICAgZG9tRWxlbWVudCA9IGZpcnN0Q2hpbGQ7ICAvLy9cblxuICAgICAgcGFyZW50RE9NRWxlbWVudC5yZW1vdmVDaGlsZChkb21FbGVtZW50KVxuICAgIH1cblxuICAgIHN1cGVyLnVubW91bnQocGFyZW50RE9NRWxlbWVudCwgY29udGV4dCk7XG4gIH1cblxuICBhc1BsYWluVGV4dChjb250ZXh0KSB7XG4gICAgbGV0IHBsYWluVGV4dDtcblxuICAgIGNvbnN0IHNpbXBsZSA9IHRoaXMuaXNTaW1wbGUoKTtcblxuICAgIGlmIChzaW1wbGUpIHtcbiAgICAgIGNvbnN0IHVybCA9IHRoaXMudXJsKGNvbnRleHQpO1xuXG4gICAgICBwbGFpblRleHQgPSB1cmw7IC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBwbGFpblRleHQgPSBzdXBlci5hc1BsYWluVGV4dChjb250ZXh0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGxhaW5UZXh0O1xuICB9XG5cbiAgY2hpbGROb2Rlc0FzSFRNTChpbmRlbnQsIGNvbnRleHQpIHtcbiAgICBsZXQgY2hpbGROb2Rlc0hUTUw7XG5cbiAgICBjb25zdCBzaW1wbGUgPSB0aGlzLmlzU2ltcGxlKCk7XG5cbiAgICBpZiAoc2ltcGxlKSB7XG4gICAgICBjb25zdCB1cmwgPSB0aGlzLnVybChjb250ZXh0KTtcblxuICAgICAgY2hpbGROb2Rlc0hUTUwgPSBgJHt1cmx9XG5gO1xuICAgIH0gZWxzZSB7XG4gICAgICBjaGlsZE5vZGVzSFRNTCA9IHN1cGVyLmNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBzdGF0aWMgdGFnTmFtZSA9IFwiYVwiO1xuXG4gIHN0YXRpYyBjbGFzc05hbWUgPSBcImh5cGVybGlua1wiO1xuXG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHsgcmV0dXJuIEhUTUxOb2RlLmZyb21Ob3RoaW5nKEh5cGVybGlua0hUTUxOb2RlKTsgfVxuXG4gIHN0YXRpYyBmcm9tT3V0ZXJOb2RlKG91dGVyTm9kZSkgeyByZXR1cm4gSFRNTE5vZGUuZnJvbU91dGVyTm9kZShIeXBlcmxpbmtIVE1MTm9kZSwgb3V0ZXJOb2RlKTsgfVxufVxuIl0sIm5hbWVzIjpbIkh5cGVybGlua0hUTUxOb2RlIiwiaXNTaW1wbGUiLCJvdXRlck5vZGUiLCJ1cmwiLCJjb250ZXh0IiwiYXR0cmlidXRlTmFtZSIsIkhSRUZfQVRUUklCVVRFX05BTUUiLCJhdHRyaWJ1dGVWYWx1ZSIsIm1vdW50IiwicGFyZW50RE9NRWxlbWVudCIsInNpYmxpbmdET01FbGVtZW50Iiwic2ltcGxlIiwiY29udGVudCIsInRleHROb2RlIiwiZG9jdW1lbnQiLCJjcmVhdGVUZXh0Tm9kZSIsImRvbUVsZW1lbnQiLCJpbnNlcnRCZWZvcmUiLCJ1bm1vdW50IiwiZmlyc3RDaGlsZCIsInJlbW92ZUNoaWxkIiwiYXNQbGFpblRleHQiLCJwbGFpblRleHQiLCJjaGlsZE5vZGVzQXNIVE1MIiwiaW5kZW50IiwiY2hpbGROb2Rlc0hUTUwiLCJmcm9tTm90aGluZyIsIkhUTUxOb2RlIiwiZnJvbU91dGVyTm9kZSIsInRhZ05hbWUiLCJjbGFzc05hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7OzJEQUpBOzhCQUVlOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXJCLElBQUEsQUFBTUEsa0NBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO2VBQU4sa0JBQU1BOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQWEsT0FBTyxJQUFJLENBQUNDLFNBQVMsQ0FBQ0QsUUFBUTtZQUFJOzs7WUFFL0NFLEtBQUFBO21CQUFBQSxTQUFBQSxJQUFJQyxPQUFPO2dCQUFJLE9BQU8sSUFBSSxDQUFDRixTQUFTLENBQUNDLEdBQUcsQ0FBQ0M7WUFBVTs7O1lBRW5EQyxLQUFBQTttQkFBQUEsU0FBQUEsY0FBY0QsT0FBTztnQkFDbkIsSUFBTUMsZ0JBQWdCQyxtQ0FBbUI7Z0JBRXpDLE9BQU9EO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsZUFBZUgsT0FBTztnQkFDcEIsSUFBTUQsTUFBTSxJQUFJLENBQUNBLEdBQUcsQ0FBQ0MsVUFDZkcsaUJBQWlCSixLQUFLLEdBQUc7Z0JBRS9CLE9BQU9JO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsTUFBTUMsZ0JBQWdCLEVBQUVDLGlCQUFpQixFQUFFTixPQUFPO2dCQUNoRCx1QkFuQmlCSiw4QkFtQlhRLFNBQU4sSUFBSyxhQUFPQyxrQkFBa0JDLG1CQUFtQk47Z0JBRWpELElBQU1PLFNBQVMsSUFBSSxDQUFDVixRQUFRO2dCQUU1QixJQUFJVSxRQUFRO29CQUNWLElBQU1SLE1BQU0sSUFBSSxDQUFDQSxHQUFHLENBQUNDLFVBQ2ZRLFVBQVVULEtBQ1ZVLFdBQVdDLFNBQVNDLGNBQWMsQ0FBQ0gsVUFDbkNJLGFBQWFILFVBQ2JKLHFCQUFtQixJQUFJLENBQUNPLFVBQVUsRUFDbENOLHNCQUFvQjtvQkFFMUJELG1CQUFpQlEsWUFBWSxDQUFDRCxZQUFZTjtnQkFDNUM7WUFDRjs7O1lBRUFRLEtBQUFBO21CQUFBQSxTQUFBQSxRQUFRVCxnQkFBZ0IsRUFBRUwsT0FBTztnQkFDL0IsSUFBTU8sU0FBUyxJQUFJLENBQUNWLFFBQVE7Z0JBRTVCLElBQUlVLFFBQVE7b0JBQ1YsSUFBTUYscUJBQW1CLElBQUksQ0FBQ08sVUFBVSxFQUNsQ0csYUFBYVYsbUJBQWlCVSxVQUFVLEVBQ3hDSCxhQUFhRyxZQUFhLEdBQUc7b0JBRW5DVixtQkFBaUJXLFdBQVcsQ0FBQ0o7Z0JBQy9CO2dCQUVBLHVCQTlDaUJoQiw4QkE4Q1hrQixXQUFOLElBQUssYUFBU1Qsa0JBQWtCTDtZQUNsQzs7O1lBRUFpQixLQUFBQTttQkFBQUEsU0FBQUEsWUFBWWpCLE9BQU87Z0JBQ2pCLElBQUlrQjtnQkFFSixJQUFNWCxTQUFTLElBQUksQ0FBQ1YsUUFBUTtnQkFFNUIsSUFBSVUsUUFBUTtvQkFDVixJQUFNUixNQUFNLElBQUksQ0FBQ0EsR0FBRyxDQUFDQztvQkFFckJrQixZQUFZbkIsS0FBSyxHQUFHO2dCQUN0QixPQUFPO29CQUNMbUIsWUFBWSx1QkEzREd0Qiw4QkEyREdxQixlQUFOLElBQUssYUFBYWpCO2dCQUNoQztnQkFFQSxPQUFPa0I7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUJDLE1BQU0sRUFBRXBCLE9BQU87Z0JBQzlCLElBQUlxQjtnQkFFSixJQUFNZCxTQUFTLElBQUksQ0FBQ1YsUUFBUTtnQkFFNUIsSUFBSVUsUUFBUTtvQkFDVixJQUFNUixNQUFNLElBQUksQ0FBQ0EsR0FBRyxDQUFDQztvQkFFckJxQixpQkFBaUIsQUFBQyxHQUFNLE9BQUp0QixLQUFJO2dCQUUxQixPQUFPO29CQUNMc0IsaUJBQWlCLHVCQTVFRnpCLDhCQTRFUXVCLG9CQUFOLElBQUssYUFBa0JDLFFBQVFwQjtnQkFDbEQ7Z0JBRUEsT0FBT3FCO1lBQ1Q7Ozs7WUFNT0MsS0FBQUE7bUJBQVAsU0FBT0E7Z0JBQWdCLE9BQU9DLGFBQVEsQ0FBQ0QsV0FBVyxDQXRGL0IxQjtZQXNGb0Q7OztZQUVoRTRCLEtBQUFBO21CQUFQLFNBQU9BLGNBQWMxQixTQUFTO2dCQUFJLE9BQU95QixhQUFRLENBQUNDLGFBQWEsQ0F4RjVDNUIsbUJBd0ZnRUU7WUFBWTs7O1dBeEY1RUY7RUFBMEIyQixhQUFRO0FBa0ZyRCxpQkFsRm1CM0IsbUJBa0ZaNkIsV0FBVTtBQUVqQixpQkFwRm1CN0IsbUJBb0ZaOEIsYUFBWSJ9
253
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvbGluay9oeXBlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEhUTUxOb2RlIGZyb20gXCIuLi8uLi8uLi9ub2RlL2h0bWxcIjtcblxuaW1wb3J0IHsgSFJFRl9BVFRSSUJVVEVfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9hdHRyaWJ1dGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBIeXBlcmxpbmtIVE1MTm9kZSBleHRlbmRzIEhUTUxOb2RlIHtcbiAgaXNTaW1wbGUoKSB7IHJldHVybiB0aGlzLm91dGVyTm9kZS5pc1NpbXBsZSgpOyB9XG5cbiAgdXJsKGNvbnRleHQpIHsgcmV0dXJuIHRoaXMub3V0ZXJOb2RlLnVybChjb250ZXh0KTsgfVxuXG4gIGNvbnRlbnQoY29udGV4dCkge1xuICAgIGNvbnN0IHVybCA9IHRoaXMudXJsKGNvbnRleHQpLFxuICAgICAgICAgIGNvbnRlbnQgPSB1cmw7ICAvLy9cblxuICAgIHJldHVybiBjb250ZW50O1xuICB9XG5cbiAgYXR0cmlidXRlTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgYXR0cmlidXRlTmFtZSA9IEhSRUZfQVRUUklCVVRFX05BTUU7XG5cbiAgICByZXR1cm4gYXR0cmlidXRlTmFtZTtcbiAgfVxuXG4gIGF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpIHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLnVybChjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZSA9IHVybDsgLy8vXG5cbiAgICByZXR1cm4gYXR0cmlidXRlVmFsdWU7XG4gIH1cblxuICBtb3VudChwYXJlbnRET01FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IHNpbXBsZSA9IHRoaXMuaXNTaW1wbGUoKTtcblxuICAgIGlmICghc2ltcGxlKSB7XG4gICAgICBzdXBlci5tb3VudChwYXJlbnRET01FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCwgY29udGV4dCk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgZG9tRWxlbWVudDtcblxuICAgIGRvbUVsZW1lbnQgPSB0aGlzLmNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCk7XG5cbiAgICB0aGlzLnNldERPTUVsZW1lbnQoZG9tRWxlbWVudCk7XG5cbiAgICBwYXJlbnRET01FbGVtZW50Lmluc2VydEJlZm9yZShkb21FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudCk7XG5cbiAgICBwYXJlbnRET01FbGVtZW50ID0gZG9tRWxlbWVudDsgLy8vXG5cbiAgICBzaWJsaW5nRE9NRWxlbWVudCA9IG51bGw7XG5cbiAgICBjb25zdCBjb250ZW50ID0gdGhpcy5jb250ZW50KGNvbnRleHQpLFxuICAgICAgICAgIHRleHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoY29udGVudCk7XG5cbiAgICBkb21FbGVtZW50ID0gdGV4dE5vZGU7ICAvLy9cblxuICAgIHBhcmVudERPTUVsZW1lbnQuaW5zZXJ0QmVmb3JlKGRvbUVsZW1lbnQsIHNpYmxpbmdET01FbGVtZW50KTtcbiAgfVxuXG4gIHVubW91bnQocGFyZW50RE9NRWxlbWVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IHNpbXBsZSA9IHRoaXMuaXNTaW1wbGUoKTtcblxuICAgIGlmICghc2ltcGxlKSB7XG4gICAgICBzdXBlci51bm1vdW50KHBhcmVudERPTUVsZW1lbnQsIGNvbnRleHQpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IGRvbUVsZW1lbnQ7XG5cbiAgICB7XG4gICAgICBkb21FbGVtZW50ID0gdGhpcy5nZXRET01FbGVtZW50KCk7XG5cbiAgICAgIGNvbnN0IHBhcmVudERPTUVsZW1lbnQgPSBkb21FbGVtZW50LCAgLy8vXG4gICAgICAgICAgICBmaXJzdENoaWxkID0gZG9tRWxlbWVudC5maXJzdENoaWxkXG5cbiAgICAgIGRvbUVsZW1lbnQgPSBmaXJzdENoaWxkOyAgLy8vXG5cbiAgICAgIHBhcmVudERPTUVsZW1lbnQucmVtb3ZlQ2hpbGQoZG9tRWxlbWVudCk7XG4gICAgfVxuXG4gICAgZG9tRWxlbWVudCA9IHRoaXMuZ2V0RE9NRWxlbWVudCgpO1xuXG4gICAgcGFyZW50RE9NRWxlbWVudC5yZW1vdmVDaGlsZChkb21FbGVtZW50KTtcblxuICAgIHRoaXMucmVzZXRET01FbGVtZW50KCk7XG4gIH1cblxuICBhc1BsYWluVGV4dChjb250ZXh0KSB7XG4gICAgbGV0IHBsYWluVGV4dDtcblxuICAgIGNvbnN0IHNpbXBsZSA9IHRoaXMuaXNTaW1wbGUoKTtcblxuICAgIGlmIChzaW1wbGUpIHtcbiAgICAgIGNvbnN0IHVybCA9IHRoaXMudXJsKGNvbnRleHQpO1xuXG4gICAgICBwbGFpblRleHQgPSB1cmw7IC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBwbGFpblRleHQgPSBzdXBlci5hc1BsYWluVGV4dChjb250ZXh0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGxhaW5UZXh0O1xuICB9XG5cbiAgY2hpbGROb2Rlc0FzSFRNTChpbmRlbnQsIGNvbnRleHQpIHtcbiAgICBsZXQgY2hpbGROb2Rlc0hUTUw7XG5cbiAgICBjb25zdCBzaW1wbGUgPSB0aGlzLmlzU2ltcGxlKCk7XG5cbiAgICBpZiAoc2ltcGxlKSB7XG4gICAgICBjb25zdCB1cmwgPSB0aGlzLnVybChjb250ZXh0KTtcblxuICAgICAgY2hpbGROb2Rlc0hUTUwgPSBgJHt1cmx9XG5gO1xuICAgIH0gZWxzZSB7XG4gICAgICBjaGlsZE5vZGVzSFRNTCA9IHN1cGVyLmNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBzdGF0aWMgdGFnTmFtZSA9IFwiYVwiO1xuXG4gIHN0YXRpYyBjbGFzc05hbWUgPSBcImh5cGVybGlua1wiO1xuXG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHsgcmV0dXJuIEhUTUxOb2RlLmZyb21Ob3RoaW5nKEh5cGVybGlua0hUTUxOb2RlKTsgfVxuXG4gIHN0YXRpYyBmcm9tT3V0ZXJOb2RlKG91dGVyTm9kZSkgeyByZXR1cm4gSFRNTE5vZGUuZnJvbU91dGVyTm9kZShIeXBlcmxpbmtIVE1MTm9kZSwgb3V0ZXJOb2RlKTsgfVxufVxuIl0sIm5hbWVzIjpbIkh5cGVybGlua0hUTUxOb2RlIiwiaXNTaW1wbGUiLCJvdXRlck5vZGUiLCJ1cmwiLCJjb250ZXh0IiwiY29udGVudCIsImF0dHJpYnV0ZU5hbWUiLCJIUkVGX0FUVFJJQlVURV9OQU1FIiwiYXR0cmlidXRlVmFsdWUiLCJtb3VudCIsInBhcmVudERPTUVsZW1lbnQiLCJzaWJsaW5nRE9NRWxlbWVudCIsInNpbXBsZSIsImRvbUVsZW1lbnQiLCJjcmVhdGVET01FbGVtZW50Iiwic2V0RE9NRWxlbWVudCIsImluc2VydEJlZm9yZSIsInRleHROb2RlIiwiZG9jdW1lbnQiLCJjcmVhdGVUZXh0Tm9kZSIsInVubW91bnQiLCJnZXRET01FbGVtZW50IiwiZmlyc3RDaGlsZCIsInJlbW92ZUNoaWxkIiwicmVzZXRET01FbGVtZW50IiwiYXNQbGFpblRleHQiLCJwbGFpblRleHQiLCJjaGlsZE5vZGVzQXNIVE1MIiwiaW5kZW50IiwiY2hpbGROb2Rlc0hUTUwiLCJmcm9tTm90aGluZyIsIkhUTUxOb2RlIiwiZnJvbU91dGVyTm9kZSIsInRhZ05hbWUiLCJjbGFzc05hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7OzJEQUpBOzhCQUVlOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXJCLElBQUEsQUFBTUEsa0NBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO2VBQU4sa0JBQU1BOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FB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