@limetech/lime-elements 37.45.2 → 37.46.0

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 (187) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/cjs/component-cba208a8.js +2448 -0
  3. package/dist/cjs/component-cba208a8.js.map +1 -0
  4. package/dist/cjs/{dom-ee8ee17d.js → debounce-2e5f4b7e.js} +1 -31
  5. package/dist/cjs/debounce-2e5f4b7e.js.map +1 -0
  6. package/dist/cjs/dom-81eaa633.js +34 -0
  7. package/dist/cjs/dom-81eaa633.js.map +1 -0
  8. package/dist/cjs/lime-elements.cjs.js +1 -1
  9. package/dist/cjs/{limel-action-bar_3.cjs.entry.js → limel-action-bar_4.cjs.entry.js} +68 -1
  10. package/dist/cjs/limel-action-bar_4.cjs.entry.js.map +1 -0
  11. package/dist/cjs/{limel-breadcrumbs_7.cjs.entry.js → limel-breadcrumbs_5.cjs.entry.js} +412 -3357
  12. package/dist/cjs/limel-breadcrumbs_5.cjs.entry.js.map +1 -0
  13. package/dist/cjs/limel-callout.cjs.entry.js +1 -1
  14. package/dist/cjs/limel-chip_2.cjs.entry.js +2 -2
  15. package/dist/cjs/limel-dynamic-label_4.cjs.entry.js +610 -0
  16. package/dist/cjs/limel-dynamic-label_4.cjs.entry.js.map +1 -0
  17. package/dist/cjs/limel-file-viewer.cjs.entry.js +1 -1
  18. package/dist/cjs/limel-file.cjs.entry.js +1 -1
  19. package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +1 -1
  20. package/dist/cjs/limel-form.cjs.entry.js +1 -1
  21. package/dist/cjs/limel-form.cjs.entry.js.map +1 -1
  22. package/dist/cjs/{limel-portal.cjs.entry.js → limel-icon_2.cjs.entry.js} +201 -1
  23. package/dist/cjs/limel-icon_2.cjs.entry.js.map +1 -0
  24. package/dist/cjs/limel-picker.cjs.entry.js +3 -2
  25. package/dist/cjs/limel-picker.cjs.entry.js.map +1 -1
  26. package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +294 -16
  27. package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js.map +1 -1
  28. package/dist/cjs/limel-snackbar.cjs.entry.js +1 -1
  29. package/dist/cjs/{link-helper-b7e6c8df.js → link-helper-563b01c0.js} +3 -1
  30. package/dist/cjs/link-helper-563b01c0.js.map +1 -0
  31. package/dist/cjs/loader.cjs.js +1 -1
  32. package/dist/cjs/{translations-988a3f51.js → translations-83a68e56.js} +25 -1
  33. package/dist/cjs/translations-83a68e56.js.map +1 -0
  34. package/dist/collection/collection-manifest.json +1 -0
  35. package/dist/collection/components/chip/chip.js +2 -2
  36. package/dist/collection/components/text-editor/link-menu/editor-link-menu.css +12 -0
  37. package/dist/collection/components/text-editor/link-menu/editor-link-menu.js +201 -0
  38. package/dist/collection/components/text-editor/link-menu/editor-link-menu.js.map +1 -0
  39. package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-commands.js +72 -11
  40. package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-commands.js.map +1 -1
  41. package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-items.js +6 -0
  42. package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-items.js.map +1 -1
  43. package/dist/collection/components/text-editor/prosemirror-adapter/menu/types.js.map +1 -1
  44. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/link-plugin.js +172 -0
  45. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/link-plugin.js.map +1 -0
  46. package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.css +4 -0
  47. package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js +53 -6
  48. package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js.map +1 -1
  49. package/dist/collection/translations/da.js +4 -0
  50. package/dist/collection/translations/da.js.map +1 -1
  51. package/dist/collection/translations/en.js +4 -0
  52. package/dist/collection/translations/en.js.map +1 -1
  53. package/dist/collection/translations/fi.js +4 -0
  54. package/dist/collection/translations/fi.js.map +1 -1
  55. package/dist/collection/translations/nl.js +4 -0
  56. package/dist/collection/translations/nl.js.map +1 -1
  57. package/dist/collection/translations/no.js +4 -0
  58. package/dist/collection/translations/no.js.map +1 -1
  59. package/dist/collection/translations/sv.js +4 -0
  60. package/dist/collection/translations/sv.js.map +1 -1
  61. package/dist/collection/util/link-helper.js +1 -1
  62. package/dist/collection/util/link-helper.js.map +1 -1
  63. package/dist/esm/component-db286494.js +2440 -0
  64. package/dist/esm/component-db286494.js.map +1 -0
  65. package/dist/esm/{dom-ae531ebc.js → debounce-9a05c91c.js} +2 -31
  66. package/dist/esm/debounce-9a05c91c.js.map +1 -0
  67. package/dist/esm/dom-0b0170a0.js +32 -0
  68. package/dist/esm/dom-0b0170a0.js.map +1 -0
  69. package/dist/esm/lime-elements.js +1 -1
  70. package/dist/esm/{limel-action-bar_3.entry.js → limel-action-bar_4.entry.js} +68 -2
  71. package/dist/esm/limel-action-bar_4.entry.js.map +1 -0
  72. package/dist/esm/{limel-breadcrumbs_7.entry.js → limel-breadcrumbs_5.entry.js} +404 -3347
  73. package/dist/esm/limel-breadcrumbs_5.entry.js.map +1 -0
  74. package/dist/esm/limel-callout.entry.js +1 -1
  75. package/dist/esm/limel-chip_2.entry.js +2 -2
  76. package/dist/esm/limel-dynamic-label_4.entry.js +603 -0
  77. package/dist/esm/limel-dynamic-label_4.entry.js.map +1 -0
  78. package/dist/esm/limel-file-viewer.entry.js +1 -1
  79. package/dist/esm/limel-file.entry.js +1 -1
  80. package/dist/esm/limel-flatpickr-adapter.entry.js +1 -1
  81. package/dist/esm/limel-form.entry.js +1 -1
  82. package/dist/esm/limel-form.entry.js.map +1 -1
  83. package/dist/esm/{limel-portal.entry.js → limel-icon_2.entry.js} +201 -2
  84. package/dist/esm/limel-icon_2.entry.js.map +1 -0
  85. package/dist/esm/limel-picker.entry.js +2 -1
  86. package/dist/esm/limel-picker.entry.js.map +1 -1
  87. package/dist/esm/limel-prosemirror-adapter.entry.js +294 -16
  88. package/dist/esm/limel-prosemirror-adapter.entry.js.map +1 -1
  89. package/dist/esm/limel-snackbar.entry.js +1 -1
  90. package/dist/esm/{link-helper-725a9166.js → link-helper-2a16b323.js} +2 -2
  91. package/dist/esm/link-helper-2a16b323.js.map +1 -0
  92. package/dist/esm/loader.js +1 -1
  93. package/dist/esm/{translations-e73d7840.js → translations-5ae8ec7b.js} +25 -1
  94. package/dist/esm/translations-5ae8ec7b.js.map +1 -0
  95. package/dist/lime-elements/lime-elements.esm.js +1 -1
  96. package/dist/lime-elements/lime-elements.esm.js.map +1 -1
  97. package/dist/lime-elements/p-18c97232.js +2 -0
  98. package/dist/lime-elements/p-18c97232.js.map +1 -0
  99. package/dist/lime-elements/{p-5cfed8a8.entry.js → p-26a43fd9.entry.js} +5 -5
  100. package/dist/lime-elements/p-29e0e5bd.js +2 -0
  101. package/dist/lime-elements/p-29e0e5bd.js.map +1 -0
  102. package/dist/lime-elements/{p-dfc28411.entry.js → p-42b6ba6d.entry.js} +2 -2
  103. package/dist/lime-elements/{p-c8ce7cd4.entry.js → p-4bd0b7fb.entry.js} +2 -2
  104. package/dist/lime-elements/p-50b604b9.entry.js +2 -0
  105. package/dist/lime-elements/p-50b604b9.entry.js.map +1 -0
  106. package/dist/lime-elements/{p-ab13cb4a.entry.js → p-5e2604e5.entry.js} +2 -2
  107. package/dist/lime-elements/p-5e7b7b03.js +2 -0
  108. package/dist/lime-elements/p-5e7b7b03.js.map +1 -0
  109. package/dist/lime-elements/{p-516619d3.js → p-6465625e.js} +2 -2
  110. package/dist/lime-elements/p-6465625e.js.map +1 -0
  111. package/dist/lime-elements/{p-7681dae8.entry.js → p-70bfa812.entry.js} +2 -2
  112. package/dist/lime-elements/p-8d71c9e5.entry.js +2 -0
  113. package/dist/lime-elements/p-8d71c9e5.entry.js.map +1 -0
  114. package/dist/lime-elements/{p-e3eb403a.entry.js → p-91a8c244.entry.js} +2 -2
  115. package/dist/lime-elements/p-b8bfe44d.entry.js +2 -0
  116. package/dist/lime-elements/{p-3f4d2f62.entry.js.map → p-b8bfe44d.entry.js.map} +1 -1
  117. package/dist/lime-elements/p-bcfb5db5.entry.js +68 -0
  118. package/dist/lime-elements/p-bcfb5db5.entry.js.map +1 -0
  119. package/dist/lime-elements/p-d4d2593b.entry.js +2 -0
  120. package/dist/lime-elements/p-d4d2593b.entry.js.map +1 -0
  121. package/dist/lime-elements/p-eb9ab3d4.entry.js +2 -0
  122. package/dist/lime-elements/p-eb9ab3d4.entry.js.map +1 -0
  123. package/dist/lime-elements/p-f764b655.js +200 -0
  124. package/dist/lime-elements/p-f764b655.js.map +1 -0
  125. package/dist/lime-elements/{p-cfe4e725.entry.js → p-fe5e8f22.entry.js} +2 -2
  126. package/dist/lime-elements/{p-cfe4e725.entry.js.map → p-fe5e8f22.entry.js.map} +1 -1
  127. package/dist/types/components/file-viewer/file-viewer.d.ts +126 -0
  128. package/dist/types/components/progress-flow/progress-flow-item/progress-flow-item.d.ts +36 -0
  129. package/dist/types/components/progress-flow/progress-flow.d.ts +49 -0
  130. package/dist/types/components/text-editor/link-menu/editor-link-menu.d.ts +47 -0
  131. package/dist/types/components/text-editor/prosemirror-adapter/menu/menu-commands.d.ts +5 -2
  132. package/dist/types/components/text-editor/prosemirror-adapter/menu/types.d.ts +49 -0
  133. package/dist/types/components/text-editor/prosemirror-adapter/plugins/link-plugin.d.ts +9 -0
  134. package/dist/types/components/text-editor/prosemirror-adapter/prosemirror-adapter.d.ts +14 -3
  135. package/dist/types/components.d.ts +79 -0
  136. package/dist/types/translations/da.d.ts +4 -0
  137. package/dist/types/translations/en.d.ts +4 -0
  138. package/dist/types/translations/fi.d.ts +4 -0
  139. package/dist/types/translations/nl.d.ts +4 -0
  140. package/dist/types/translations/no.d.ts +4 -0
  141. package/dist/types/translations/sv.d.ts +4 -0
  142. package/dist/types/util/link-helper.d.ts +1 -0
  143. package/package.json +2 -2
  144. package/dist/cjs/dom-ee8ee17d.js.map +0 -1
  145. package/dist/cjs/limel-action-bar_3.cjs.entry.js.map +0 -1
  146. package/dist/cjs/limel-breadcrumbs_7.cjs.entry.js.map +0 -1
  147. package/dist/cjs/limel-dynamic-label_2.cjs.entry.js +0 -91
  148. package/dist/cjs/limel-dynamic-label_2.cjs.entry.js.map +0 -1
  149. package/dist/cjs/limel-icon.cjs.entry.js +0 -208
  150. package/dist/cjs/limel-icon.cjs.entry.js.map +0 -1
  151. package/dist/cjs/limel-portal.cjs.entry.js.map +0 -1
  152. package/dist/cjs/link-helper-b7e6c8df.js.map +0 -1
  153. package/dist/cjs/translations-988a3f51.js.map +0 -1
  154. package/dist/esm/dom-ae531ebc.js.map +0 -1
  155. package/dist/esm/limel-action-bar_3.entry.js.map +0 -1
  156. package/dist/esm/limel-breadcrumbs_7.entry.js.map +0 -1
  157. package/dist/esm/limel-dynamic-label_2.entry.js +0 -86
  158. package/dist/esm/limel-dynamic-label_2.entry.js.map +0 -1
  159. package/dist/esm/limel-icon.entry.js +0 -204
  160. package/dist/esm/limel-icon.entry.js.map +0 -1
  161. package/dist/esm/limel-portal.entry.js.map +0 -1
  162. package/dist/esm/link-helper-725a9166.js.map +0 -1
  163. package/dist/esm/translations-e73d7840.js.map +0 -1
  164. package/dist/lime-elements/p-2f453044.entry.js +0 -266
  165. package/dist/lime-elements/p-2f453044.entry.js.map +0 -1
  166. package/dist/lime-elements/p-35a4a846.entry.js +0 -2
  167. package/dist/lime-elements/p-35a4a846.entry.js.map +0 -1
  168. package/dist/lime-elements/p-3f4d2f62.entry.js +0 -2
  169. package/dist/lime-elements/p-516619d3.js.map +0 -1
  170. package/dist/lime-elements/p-5c9fbe6f.entry.js +0 -2
  171. package/dist/lime-elements/p-5c9fbe6f.entry.js.map +0 -1
  172. package/dist/lime-elements/p-714d6937.js +0 -2
  173. package/dist/lime-elements/p-714d6937.js.map +0 -1
  174. package/dist/lime-elements/p-a0fc1875.entry.js +0 -2
  175. package/dist/lime-elements/p-a0fc1875.entry.js.map +0 -1
  176. package/dist/lime-elements/p-a2d19673.entry.js +0 -2
  177. package/dist/lime-elements/p-a2d19673.entry.js.map +0 -1
  178. package/dist/lime-elements/p-cd6b9ff0.js +0 -2
  179. package/dist/lime-elements/p-cd6b9ff0.js.map +0 -1
  180. package/dist/lime-elements/p-f548d996.entry.js +0 -2
  181. package/dist/lime-elements/p-f548d996.entry.js.map +0 -1
  182. /package/dist/lime-elements/{p-5cfed8a8.entry.js.map → p-26a43fd9.entry.js.map} +0 -0
  183. /package/dist/lime-elements/{p-dfc28411.entry.js.map → p-42b6ba6d.entry.js.map} +0 -0
  184. /package/dist/lime-elements/{p-c8ce7cd4.entry.js.map → p-4bd0b7fb.entry.js.map} +0 -0
  185. /package/dist/lime-elements/{p-ab13cb4a.entry.js.map → p-5e2604e5.entry.js.map} +0 -0
  186. /package/dist/lime-elements/{p-7681dae8.entry.js.map → p-70bfa812.entry.js.map} +0 -0
  187. /package/dist/lime-elements/{p-e3eb403a.entry.js.map → p-91a8c244.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as i,g as r}from"./p-443111b3.js";import{k as n,l as s,U as l,e as u,a as o,n as f,p as h,i as a,S as c,g as d}from"./p-2ba41fdf.js";import{b as p,a as m}from"./p-b28128d2.js";import{k as w,b as g,g as b,a as k}from"./p-9cff01aa.js";import{i as D,r as v,S as y}from"./p-c93050d6.js";import{i as F}from"./p-0b1af919.js";import{i as E}from"./p-858c6b82.js";import{d as x,m as M}from"./p-714d3ef8.js";import{t as A}from"./p-cd6b9ff0.js";import{i as C}from"./p-91741e79.js";import"./p-eda23c05.js";import"./p-4c3358cb.js";import"./p-9acf7b5d.js";import"./p-5fdb83c9.js";import"./p-eab67c09.js";var S=Object.create;var O=function(){function t(){}return function(e){if(!D(e)){return{}}if(S){return S(e)}t.prototype=e;var i=new t;t.prototype=undefined;return i}}();function $(t,e){var i=-1,r=t.length;e||(e=Array(r));while(++i<r){e[i]=t[i]}return e}function _(t,e){var i=-1,r=t==null?0:t.length;while(++i<r){if(e(t[i],i,t)===false){break}}return t}function B(t,e,i,r){var n=!i;i||(i={});var s=-1,l=e.length;while(++s<l){var u=e[s];var o=r?r(i[u],t[u],u,i,t):undefined;if(o===undefined){o=t[u]}if(n){p(i,u,o)}else{m(i,u,o)}}return i}function j(t,e){return t&&B(e,n(e),t)}function q(t,e){return t&&B(e,w(e),t)}var R=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var N=R&&typeof module=="object"&&module&&!module.nodeType&&module;var z=N&&N.exports===R;var T=z?v.Buffer:undefined,I=T?T.allocUnsafe:undefined;function P(t,e){if(e){return t.slice()}var i=t.length,r=I?I(i):new t.constructor(i);t.copy(r);return r}function J(t,e){return B(t,s(t),e)}function L(t,e){return B(t,g(t),e)}var U=Object.prototype;var W=U.hasOwnProperty;function H(t){var e=t.length,i=new t.constructor(e);if(e&&typeof t[0]=="string"&&W.call(t,"index")){i.index=t.index;i.input=t.input}return i}function Z(t){var e=new t.constructor(t.byteLength);new l(e).set(new l(t));return e}function K(t,e){var i=e?Z(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.byteLength)}var V=/\w*$/;function G(t){var e=new t.constructor(t.source,V.exec(t));e.lastIndex=t.lastIndex;return e}var X=y?y.prototype:undefined,Y=X?X.valueOf:undefined;function Q(t){return Y?Object(Y.call(t)):{}}function tt(t,e){var i=e?Z(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.length)}var et="[object Boolean]",it="[object Date]",rt="[object Map]",nt="[object Number]",st="[object RegExp]",lt="[object Set]",ut="[object String]",ot="[object Symbol]";var ft="[object ArrayBuffer]",ht="[object DataView]",at="[object Float32Array]",ct="[object Float64Array]",dt="[object Int8Array]",pt="[object Int16Array]",mt="[object Int32Array]",wt="[object Uint8Array]",gt="[object Uint8ClampedArray]",bt="[object Uint16Array]",kt="[object Uint32Array]";function Dt(t,e,i){var r=t.constructor;switch(e){case ft:return Z(t);case et:case it:return new r(+t);case ht:return K(t,i);case at:case ct:case dt:case pt:case mt:case wt:case gt:case bt:case kt:return tt(t,i);case rt:return new r;case nt:case ut:return new r(t);case st:return G(t);case lt:return new r;case ot:return Q(t)}}function vt(t){return typeof t.constructor=="function"&&!u(t)?O(b(t)):{}}var yt="[object Map]";function Ft(t){return E(t)&&o(t)==yt}var Et=h&&h.isMap;var xt=Et?f(Et):Ft;var Mt="[object Set]";function At(t){return E(t)&&o(t)==Mt}var Ct=h&&h.isSet;var St=Ct?f(Ct):At;var Ot=1,$t=2,_t=4;var Bt="[object Arguments]",jt="[object Array]",qt="[object Boolean]",Rt="[object Date]",Nt="[object Error]",zt="[object Function]",Tt="[object GeneratorFunction]",It="[object Map]",Pt="[object Number]",Jt="[object Object]",Lt="[object RegExp]",Ut="[object Set]",Wt="[object String]",Ht="[object Symbol]",Zt="[object WeakMap]";var Kt="[object ArrayBuffer]",Vt="[object DataView]",Gt="[object Float32Array]",Xt="[object Float64Array]",Yt="[object Int8Array]",Qt="[object Int16Array]",te="[object Int32Array]",ee="[object Uint8Array]",ie="[object Uint8ClampedArray]",re="[object Uint16Array]",ne="[object Uint32Array]";var se={};se[Bt]=se[jt]=se[Kt]=se[Vt]=se[qt]=se[Rt]=se[Gt]=se[Xt]=se[Yt]=se[Qt]=se[te]=se[It]=se[Pt]=se[Jt]=se[Lt]=se[Ut]=se[Wt]=se[Ht]=se[ee]=se[ie]=se[re]=se[ne]=true;se[Nt]=se[zt]=se[Zt]=false;function le(t,e,i,r,s,l){var u,f=e&Ot,h=e&$t,p=e&_t;if(i){u=s?i(t,r,s,l):i(t)}if(u!==undefined){return u}if(!D(t)){return t}var g=F(t);if(g){u=H(t);if(!f){return $(t,u)}}else{var b=o(t),v=b==zt||b==Tt;if(a(t)){return P(t,f)}if(b==Jt||b==Bt||v&&!s){u=h||v?{}:vt(t);if(!f){return h?L(t,q(u,t)):J(t,j(u,t))}}else{if(!se[b]){return s?t:{}}u=Dt(t,b,f)}}l||(l=new c);var y=l.get(t);if(y){return y}l.set(t,u);if(St(t)){t.forEach((function(r){u.add(le(r,e,i,r,t,l))}))}else if(xt(t)){t.forEach((function(r,n){u.set(n,le(r,e,i,n,t,l))}))}var E=p?h?k:d:h?w:n;var x=g?undefined:E(t);_(x||t,(function(r,n){if(x){n=r;r=t[n]}m(u,n,le(r,e,i,n,t,l))}));return u}var ue=1,oe=4;function fe(t){return le(t,ue|oe)}function he(t){this.content=t}he.prototype={constructor:he,find:function(t){for(var e=0;e<this.content.length;e+=2)if(this.content[e]===t)return e;return-1},get:function(t){var e=this.find(t);return e==-1?undefined:this.content[e+1]},update:function(t,e,i){var r=i&&i!=t?this.remove(i):this;var n=r.find(t),s=r.content.slice();if(n==-1){s.push(i||t,e)}else{s[n+1]=e;if(i)s[n]=i}return new he(s)},remove:function(t){var e=this.find(t);if(e==-1)return this;var i=this.content.slice();i.splice(e,2);return new he(i)},addToStart:function(t,e){return new he([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var i=this.remove(t).content.slice();i.push(t,e);return new he(i)},addBefore:function(t,e,i){var r=this.remove(e),n=r.content.slice();var s=r.find(t);n.splice(s==-1?n.length:s,0,e,i);return new he(n)},forEach:function(t){for(var e=0;e<this.content.length;e+=2)t(this.content[e],this.content[e+1])},prepend:function(t){t=he.from(t);if(!t.size)return this;return new he(t.content.concat(this.subtract(t).content))},append:function(t){t=he.from(t);if(!t.size)return this;return new he(this.subtract(t).content.concat(t.content))},subtract:function(t){var e=this;t=he.from(t);for(var i=0;i<t.content.length;i+=2)e=e.remove(t.content[i]);return e},toObject:function(){var t={};this.forEach((function(e,i){t[e]=i}));return t},get size(){return this.content.length>>1}};he.from=function(t){if(t instanceof he)return t;var e=[];if(t)for(var i in t)e.push(i,t[i]);return new he(e)};function ae(t,e,i){for(let r=0;;r++){if(r==t.childCount||r==e.childCount)return t.childCount==e.childCount?null:i;let n=t.child(r),s=e.child(r);if(n==s){i+=n.nodeSize;continue}if(!n.sameMarkup(s))return i;if(n.isText&&n.text!=s.text){for(let t=0;n.text[t]==s.text[t];t++)i++;return i}if(n.content.size||s.content.size){let t=ae(n.content,s.content,i+1);if(t!=null)return t}i+=n.nodeSize}}function ce(t,e,i,r){for(let n=t.childCount,s=e.childCount;;){if(n==0||s==0)return n==s?null:{a:i,b:r};let l=t.child(--n),u=e.child(--s),o=l.nodeSize;if(l==u){i-=o;r-=o;continue}if(!l.sameMarkup(u))return{a:i,b:r};if(l.isText&&l.text!=u.text){let t=0,e=Math.min(l.text.length,u.text.length);while(t<e&&l.text[l.text.length-t-1]==u.text[u.text.length-t-1]){t++;i--;r--}return{a:i,b:r}}if(l.content.size||u.content.size){let t=ce(l.content,u.content,i-1,r-1);if(t)return t}i-=o;r-=o}}class de{constructor(t,e){this.content=t;this.size=e||0;if(e==null)for(let e=0;e<t.length;e++)this.size+=t[e].nodeSize}nodesBetween(t,e,i,r=0,n){for(let s=0,l=0;l<e;s++){let u=this.content[s],o=l+u.nodeSize;if(o>t&&i(u,r+l,n||null,s)!==false&&u.content.size){let n=l+1;u.nodesBetween(Math.max(0,t-n),Math.min(u.content.size,e-n),i,r+n)}l=o}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,i,r){let n="",s=true;this.nodesBetween(t,e,((l,u)=>{let o=l.isText?l.text.slice(Math.max(t,u)-u,e-u):!l.isLeaf?"":r?typeof r==="function"?r(l):r:l.type.spec.leafText?l.type.spec.leafText(l):"";if(l.isBlock&&(l.isLeaf&&o||l.isTextblock)&&i){if(s)s=false;else n+=i}n+=o}),0);return n}append(t){if(!t.size)return this;if(!this.size)return t;let e=this.lastChild,i=t.firstChild,r=this.content.slice(),n=0;if(e.isText&&e.sameMarkup(i)){r[r.length-1]=e.withText(e.text+i.text);n=1}for(;n<t.content.length;n++)r.push(t.content[n]);return new de(r,this.size+t.size)}cut(t,e=this.size){if(t==0&&e==this.size)return this;let i=[],r=0;if(e>t)for(let n=0,s=0;s<e;n++){let l=this.content[n],u=s+l.nodeSize;if(u>t){if(s<t||u>e){if(l.isText)l=l.cut(Math.max(0,t-s),Math.min(l.text.length,e-s));else l=l.cut(Math.max(0,t-s-1),Math.min(l.content.size,e-s-1))}i.push(l);r+=l.nodeSize}s=u}return new de(i,r)}cutByIndex(t,e){if(t==e)return de.empty;if(t==0&&e==this.content.length)return this;return new de(this.content.slice(t,e))}replaceChild(t,e){let i=this.content[t];if(i==e)return this;let r=this.content.slice();let n=this.size+e.nodeSize-i.nodeSize;r[t]=e;return new de(r,n)}addToStart(t){return new de([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new de(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return false;for(let e=0;e<this.content.length;e++)if(!this.content[e].eq(t.content[e]))return false;return true}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(t){let e=this.content[t];if(!e)throw new RangeError("Index "+t+" out of range for "+this);return e}maybeChild(t){return this.content[t]||null}forEach(t){for(let e=0,i=0;e<this.content.length;e++){let r=this.content[e];t(r,i,e);i+=r.nodeSize}}findDiffStart(t,e=0){return ae(this,t,e)}findDiffEnd(t,e=this.size,i=t.size){return ce(this,t,e,i)}findIndex(t,e=-1){if(t==0)return me(0,t);if(t==this.size)return me(this.content.length,t);if(t>this.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let i=0,r=0;;i++){let n=this.child(i),s=r+n.nodeSize;if(s>=t){if(s==t||e>0)return me(i+1,s);return me(i,r)}r=s}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map((t=>t.toJSON())):null}static fromJSON(t,e){if(!e)return de.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new de(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return de.empty;let e,i=0;for(let r=0;r<t.length;r++){let n=t[r];i+=n.nodeSize;if(r&&n.isText&&t[r-1].sameMarkup(n)){if(!e)e=t.slice(0,r);e[e.length-1]=n.withText(e[e.length-1].text+n.text)}else if(e){e.push(n)}}return new de(e||t,i)}static from(t){if(!t)return de.empty;if(t instanceof de)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new de([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}de.empty=new de([],0);const pe={index:0,offset:0};function me(t,e){pe.index=t;pe.offset=e;return pe}function we(t,e){if(t===e)return true;if(!(t&&typeof t=="object")||!(e&&typeof e=="object"))return false;let i=Array.isArray(t);if(Array.isArray(e)!=i)return false;if(i){if(t.length!=e.length)return false;for(let i=0;i<t.length;i++)if(!we(t[i],e[i]))return false}else{for(let i in t)if(!(i in e)||!we(t[i],e[i]))return false;for(let i in e)if(!(i in t))return false}return true}class ge{constructor(t,e){this.type=t;this.attrs=e}addToSet(t){let e,i=false;for(let r=0;r<t.length;r++){let n=t[r];if(this.eq(n))return t;if(this.type.excludes(n.type)){if(!e)e=t.slice(0,r)}else if(n.type.excludes(this.type)){return t}else{if(!i&&n.type.rank>this.type.rank){if(!e)e=t.slice(0,r);e.push(this);i=true}if(e)e.push(n)}}if(!e)e=t.slice();if(!i)e.push(this);return e}removeFromSet(t){for(let e=0;e<t.length;e++)if(this.eq(t[e]))return t.slice(0,e).concat(t.slice(e+1));return t}isInSet(t){for(let e=0;e<t.length;e++)if(this.eq(t[e]))return true;return false}eq(t){return this==t||this.type==t.type&&we(this.attrs,t.attrs)}toJSON(){let t={type:this.type.name};for(let e in this.attrs){t.attrs=this.attrs;break}return t}static fromJSON(t,e){if(!e)throw new RangeError("Invalid input for Mark.fromJSON");let i=t.marks[e.type];if(!i)throw new RangeError(`There is no mark type ${e.type} in this schema`);return i.create(e.attrs)}static sameSet(t,e){if(t==e)return true;if(t.length!=e.length)return false;for(let i=0;i<t.length;i++)if(!t[i].eq(e[i]))return false;return true}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return ge.none;if(t instanceof ge)return[t];let e=t.slice();e.sort(((t,e)=>t.type.rank-e.type.rank));return e}}ge.none=[];class be extends Error{}class ke{constructor(t,e,i){this.content=t;this.openStart=e;this.openEnd=i}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,e){let i=ve(this.content,t+this.openStart,e);return i&&new ke(i,this.openStart,this.openEnd)}removeBetween(t,e){return new ke(De(this.content,t+this.openStart,e+this.openStart),this.openStart,this.openEnd)}eq(t){return this.content.eq(t.content)&&this.openStart==t.openStart&&this.openEnd==t.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let t={content:this.content.toJSON()};if(this.openStart>0)t.openStart=this.openStart;if(this.openEnd>0)t.openEnd=this.openEnd;return t}static fromJSON(t,e){if(!e)return ke.empty;let i=e.openStart||0,r=e.openEnd||0;if(typeof i!="number"||typeof r!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new ke(de.fromJSON(t,e.content),i,r)}static maxOpen(t,e=true){let i=0,r=0;for(let r=t.firstChild;r&&!r.isLeaf&&(e||!r.type.spec.isolating);r=r.firstChild)i++;for(let i=t.lastChild;i&&!i.isLeaf&&(e||!i.type.spec.isolating);i=i.lastChild)r++;return new ke(t,i,r)}}ke.empty=new ke(de.empty,0,0);function De(t,e,i){let{index:r,offset:n}=t.findIndex(e),s=t.maybeChild(r);let{index:l,offset:u}=t.findIndex(i);if(n==e||s.isText){if(u!=i&&!t.child(l).isText)throw new RangeError("Removing non-flat range");return t.cut(0,e).append(t.cut(i))}if(r!=l)throw new RangeError("Removing non-flat range");return t.replaceChild(r,s.copy(De(s.content,e-n-1,i-n-1)))}function ve(t,e,i,r){let{index:n,offset:s}=t.findIndex(e),l=t.maybeChild(n);if(s==e||l.isText){if(r&&!r.canReplace(n,n,i))return null;return t.cut(0,e).append(i).append(t.cut(e))}let u=ve(l.content,e-s-1,i);return u&&t.replaceChild(n,l.copy(u))}function ye(t,e,i){if(i.openStart>t.depth)throw new be("Inserted content deeper than insertion position");if(t.depth-i.openStart!=e.depth-i.openEnd)throw new be("Inconsistent open depths");return Fe(t,e,i,0)}function Fe(t,e,i,r){let n=t.index(r),s=t.node(r);if(n==e.index(r)&&r<t.depth-i.openStart){let l=Fe(t,e,i,r+1);return s.copy(s.content.replaceChild(n,l))}else if(!i.content.size){return Ce(s,Oe(t,e,r))}else if(!i.openStart&&!i.openEnd&&t.depth==r&&e.depth==r){let r=t.parent,n=r.content;return Ce(r,n.cut(0,t.parentOffset).append(i.content).append(n.cut(e.parentOffset)))}else{let{start:n,end:l}=$e(i,t);return Ce(s,Se(t,n,l,e,r))}}function Ee(t,e){if(!e.type.compatibleContent(t.type))throw new be("Cannot join "+e.type.name+" onto "+t.type.name)}function xe(t,e,i){let r=t.node(i);Ee(r,e.node(i));return r}function Me(t,e){let i=e.length-1;if(i>=0&&t.isText&&t.sameMarkup(e[i]))e[i]=t.withText(e[i].text+t.text);else e.push(t)}function Ae(t,e,i,r){let n=(e||t).node(i);let s=0,l=e?e.index(i):n.childCount;if(t){s=t.index(i);if(t.depth>i){s++}else if(t.textOffset){Me(t.nodeAfter,r);s++}}for(let t=s;t<l;t++)Me(n.child(t),r);if(e&&e.depth==i&&e.textOffset)Me(e.nodeBefore,r)}function Ce(t,e){t.type.checkContent(e);return t.copy(e)}function Se(t,e,i,r,n){let s=t.depth>n&&xe(t,e,n+1);let l=r.depth>n&&xe(i,r,n+1);let u=[];Ae(null,t,n,u);if(s&&l&&e.index(n)==i.index(n)){Ee(s,l);Me(Ce(s,Se(t,e,i,r,n+1)),u)}else{if(s)Me(Ce(s,Oe(t,e,n+1)),u);Ae(e,i,n,u);if(l)Me(Ce(l,Oe(i,r,n+1)),u)}Ae(r,null,n,u);return new de(u)}function Oe(t,e,i){let r=[];Ae(null,t,i,r);if(t.depth>i){let n=xe(t,e,i+1);Me(Ce(n,Oe(t,e,i+1)),r)}Ae(e,null,i,r);return new de(r)}function $e(t,e){let i=e.depth-t.openStart,r=e.node(i);let n=r.copy(t.content);for(let t=i-1;t>=0;t--)n=e.node(t).copy(de.from(n));return{start:n.resolveNoCache(t.openStart+i),end:n.resolveNoCache(n.content.size-t.openEnd-i)}}class _e{constructor(t,e,i){this.pos=t;this.path=e;this.parentOffset=i;this.depth=e.length/3-1}resolveDepth(t){if(t==null)return this.depth;if(t<0)return this.depth+t;return t}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(t){return this.path[this.resolveDepth(t)*3]}index(t){return this.path[this.resolveDepth(t)*3+1]}indexAfter(t){t=this.resolveDepth(t);return this.index(t)+(t==this.depth&&!this.textOffset?0:1)}start(t){t=this.resolveDepth(t);return t==0?0:this.path[t*3-1]+1}end(t){t=this.resolveDepth(t);return this.start(t)+this.node(t).content.size}before(t){t=this.resolveDepth(t);if(!t)throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]}after(t){t=this.resolveDepth(t);if(!t)throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]+this.path[t*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let t=this.parent,e=this.index(this.depth);if(e==t.childCount)return null;let i=this.pos-this.path[this.path.length-1],r=t.child(e);return i?t.child(e).cut(i):r}get nodeBefore(){let t=this.index(this.depth);let e=this.pos-this.path[this.path.length-1];if(e)return this.parent.child(t).cut(0,e);return t==0?null:this.parent.child(t-1)}posAtIndex(t,e){e=this.resolveDepth(e);let i=this.path[e*3],r=e==0?0:this.path[e*3-1]+1;for(let e=0;e<t;e++)r+=i.child(e).nodeSize;return r}marks(){let t=this.parent,e=this.index();if(t.content.size==0)return ge.none;if(this.textOffset)return t.child(e).marks;let i=t.maybeChild(e-1),r=t.maybeChild(e);if(!i){let t=i;i=r;r=t}let n=i.marks;for(var s=0;s<n.length;s++)if(n[s].type.spec.inclusive===false&&(!r||!n[s].isInSet(r.marks)))n=n[s--].removeFromSet(n);return n}marksAcross(t){let e=this.parent.maybeChild(this.index());if(!e||!e.isInline)return null;let i=e.marks,r=t.parent.maybeChild(t.index());for(var n=0;n<i.length;n++)if(i[n].type.spec.inclusive===false&&(!r||!i[n].isInSet(r.marks)))i=i[n--].removeFromSet(i);return i}sharedDepth(t){for(let e=this.depth;e>0;e--)if(this.start(e)<=t&&this.end(e)>=t)return e;return 0}blockRange(t=this,e){if(t.pos<this.pos)return t.blockRange(this);for(let i=this.depth-(this.parent.inlineContent||this.pos==t.pos?1:0);i>=0;i--)if(t.pos<=this.end(i)&&(!e||e(this.node(i))))return new Re(this,t,i);return null}sameParent(t){return this.pos-this.parentOffset==t.pos-t.parentOffset}max(t){return t.pos>this.pos?t:this}min(t){return t.pos<this.pos?t:this}toString(){let t="";for(let e=1;e<=this.depth;e++)t+=(t?"/":"")+this.node(e).type.name+"_"+this.index(e-1);return t+":"+this.parentOffset}static resolve(t,e){if(!(e>=0&&e<=t.content.size))throw new RangeError("Position "+e+" out of range");let i=[];let r=0,n=e;for(let e=t;;){let{index:t,offset:s}=e.content.findIndex(n);let l=n-s;i.push(e,t,r+s);if(!l)break;e=e.child(t);if(e.isText)break;n=l-1;r+=s+1}return new _e(e,i,n)}static resolveCached(t,e){for(let i=0;i<Be.length;i++){let r=Be[i];if(r.pos==e&&r.doc==t)return r}let i=Be[je]=_e.resolve(t,e);je=(je+1)%qe;return i}}let Be=[],je=0,qe=12;class Re{constructor(t,e,i){this.$from=t;this.$to=e;this.depth=i}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const Ne=Object.create(null);class ze{constructor(t,e,i,r=ge.none){this.type=t;this.attrs=e;this.marks=r;this.content=i||de.empty}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(t){return this.content.child(t)}maybeChild(t){return this.content.maybeChild(t)}forEach(t){this.content.forEach(t)}nodesBetween(t,e,i,r=0){this.content.nodesBetween(t,e,i,r,this)}descendants(t){this.nodesBetween(0,this.content.size,t)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(t,e,i,r){return this.content.textBetween(t,e,i,r)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(t){return this==t||this.sameMarkup(t)&&this.content.eq(t.content)}sameMarkup(t){return this.hasMarkup(t.type,t.attrs,t.marks)}hasMarkup(t,e,i){return this.type==t&&we(this.attrs,e||t.defaultAttrs||Ne)&&ge.sameSet(this.marks,i||ge.none)}copy(t=null){if(t==this.content)return this;return new ze(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new ze(this.type,this.attrs,this.content,t)}cut(t,e=this.content.size){if(t==0&&e==this.content.size)return this;return this.copy(this.content.cut(t,e))}slice(t,e=this.content.size,i=false){if(t==e)return ke.empty;let r=this.resolve(t),n=this.resolve(e);let s=i?0:r.sharedDepth(e);let l=r.start(s),u=r.node(s);let o=u.content.cut(r.pos-l,n.pos-l);return new ke(o,r.depth-s,n.depth-s)}replace(t,e,i){return ye(this.resolve(t),this.resolve(e),i)}nodeAt(t){for(let e=this;;){let{index:i,offset:r}=e.content.findIndex(t);e=e.maybeChild(i);if(!e)return null;if(r==t||e.isText)return e;t-=r+1}}childAfter(t){let{index:e,offset:i}=this.content.findIndex(t);return{node:this.content.maybeChild(e),index:e,offset:i}}childBefore(t){if(t==0)return{node:null,index:0,offset:0};let{index:e,offset:i}=this.content.findIndex(t);if(i<t)return{node:this.content.child(e),index:e,offset:i};let r=this.content.child(e-1);return{node:r,index:e-1,offset:i-r.nodeSize}}resolve(t){return _e.resolveCached(this,t)}resolveNoCache(t){return _e.resolve(this,t)}rangeHasMark(t,e,i){let r=false;if(e>t)this.nodesBetween(t,e,(t=>{if(i.isInSet(t.marks))r=true;return!r}));return r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let t=this.type.name;if(this.content.size)t+="("+this.content.toStringInner()+")";return Ie(this.marks,t)}contentMatchAt(t){let e=this.type.contentMatch.matchFragment(this.content,0,t);if(!e)throw new Error("Called contentMatchAt on a node with invalid content");return e}canReplace(t,e,i=de.empty,r=0,n=i.childCount){let s=this.contentMatchAt(t).matchFragment(i,r,n);let l=s&&s.matchFragment(this.content,e);if(!l||!l.validEnd)return false;for(let t=r;t<n;t++)if(!this.type.allowsMarks(i.child(t).marks))return false;return true}canReplaceWith(t,e,i,r){if(r&&!this.type.allowsMarks(r))return false;let n=this.contentMatchAt(t).matchType(i);let s=n&&n.matchFragment(this.content,e);return s?s.validEnd:false}canAppend(t){if(t.content.size)return this.canReplace(this.childCount,this.childCount,t.content);else return this.type.compatibleContent(t.type)}check(){this.type.checkContent(this.content);let t=ge.none;for(let e=0;e<this.marks.length;e++)t=this.marks[e].addToSet(t);if(!ge.sameSet(t,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map((t=>t.type.name))}`);this.content.forEach((t=>t.check()))}toJSON(){let t={type:this.type.name};for(let e in this.attrs){t.attrs=this.attrs;break}if(this.content.size)t.content=this.content.toJSON();if(this.marks.length)t.marks=this.marks.map((t=>t.toJSON()));return t}static fromJSON(t,e){if(!e)throw new RangeError("Invalid input for Node.fromJSON");let i=null;if(e.marks){if(!Array.isArray(e.marks))throw new RangeError("Invalid mark data for Node.fromJSON");i=e.marks.map(t.markFromJSON)}if(e.type=="text"){if(typeof e.text!="string")throw new RangeError("Invalid text node in JSON");return t.text(e.text,i)}let r=de.fromJSON(t,e.content);return t.nodeType(e.type).create(e.attrs,r,i)}}ze.prototype.text=undefined;class Te extends ze{constructor(t,e,i,r){super(t,e,null,r);if(!i)throw new RangeError("Empty text nodes are not allowed");this.text=i}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);return Ie(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(t,e){return this.text.slice(t,e)}get nodeSize(){return this.text.length}mark(t){return t==this.marks?this:new Te(this.type,this.attrs,this.text,t)}withText(t){if(t==this.text)return this;return new Te(this.type,this.attrs,t,this.marks)}cut(t=0,e=this.text.length){if(t==0&&e==this.text.length)return this;return this.withText(this.text.slice(t,e))}eq(t){return this.sameMarkup(t)&&this.text==t.text}toJSON(){let t=super.toJSON();t.text=this.text;return t}}function Ie(t,e){for(let i=t.length-1;i>=0;i--)e=t[i].type.name+"("+e+")";return e}class Pe{constructor(t){this.validEnd=t;this.next=[];this.wrapCache=[]}static parse(t,e){let i=new Je(t,e);if(i.next==null)return Pe.empty;let r=Le(i);if(i.next)i.err("Unexpected trailing text");let n=Qe(Ge(r));ti(n,i);return n}matchType(t){for(let e=0;e<this.next.length;e++)if(this.next[e].type==t)return this.next[e].next;return null}matchFragment(t,e=0,i=t.childCount){let r=this;for(let n=e;r&&n<i;n++)r=r.matchType(t.child(n).type);return r}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let t=0;t<this.next.length;t++){let{type:e}=this.next[t];if(!(e.isText||e.hasRequiredAttrs()))return e}return null}compatible(t){for(let e=0;e<this.next.length;e++)for(let i=0;i<t.next.length;i++)if(this.next[e].type==t.next[i].type)return true;return false}fillBefore(t,e=false,i=0){let r=[this];function n(s,l){let u=s.matchFragment(t,i);if(u&&(!e||u.validEnd))return de.from(l.map((t=>t.createAndFill())));for(let t=0;t<s.next.length;t++){let{type:e,next:i}=s.next[t];if(!(e.isText||e.hasRequiredAttrs())&&r.indexOf(i)==-1){r.push(i);let t=n(i,l.concat(e));if(t)return t}}return null}return n(this,[])}findWrapping(t){for(let e=0;e<this.wrapCache.length;e+=2)if(this.wrapCache[e]==t)return this.wrapCache[e+1];let e=this.computeWrapping(t);this.wrapCache.push(t,e);return e}computeWrapping(t){let e=Object.create(null),i=[{match:this,type:null,via:null}];while(i.length){let r=i.shift(),n=r.match;if(n.matchType(t)){let t=[];for(let e=r;e.type;e=e.via)t.push(e.type);return t.reverse()}for(let t=0;t<n.next.length;t++){let{type:s,next:l}=n.next[t];if(!s.isLeaf&&!s.hasRequiredAttrs()&&!(s.name in e)&&(!r.type||l.validEnd)){i.push({match:s.contentMatch,type:s,via:r});e[s.name]=true}}}return null}get edgeCount(){return this.next.length}edge(t){if(t>=this.next.length)throw new RangeError(`There's no ${t}th edge in this content match`);return this.next[t]}toString(){let t=[];function e(i){t.push(i);for(let r=0;r<i.next.length;r++)if(t.indexOf(i.next[r].next)==-1)e(i.next[r].next)}e(this);return t.map(((e,i)=>{let r=i+(e.validEnd?"*":" ")+" ";for(let i=0;i<e.next.length;i++)r+=(i?", ":"")+e.next[i].type.name+"->"+t.indexOf(e.next[i].next);return r})).join("\n")}}Pe.empty=new Pe(true);class Je{constructor(t,e){this.string=t;this.nodeTypes=e;this.inline=null;this.pos=0;this.tokens=t.split(/\s*(?=\b|\W|$)/);if(this.tokens[this.tokens.length-1]=="")this.tokens.pop();if(this.tokens[0]=="")this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(t){return this.next==t&&(this.pos++||true)}err(t){throw new SyntaxError(t+" (in content expression '"+this.string+"')")}}function Le(t){let e=[];do{e.push(Ue(t))}while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function Ue(t){let e=[];do{e.push(We(t))}while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function We(t){let e=Ve(t);for(;;){if(t.eat("+"))e={type:"plus",expr:e};else if(t.eat("*"))e={type:"star",expr:e};else if(t.eat("?"))e={type:"opt",expr:e};else if(t.eat("{"))e=Ze(t,e);else break}return e}function He(t){if(/\D/.test(t.next))t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);t.pos++;return e}function Ze(t,e){let i=He(t),r=i;if(t.eat(",")){if(t.next!="}")r=He(t);else r=-1}if(!t.eat("}"))t.err("Unclosed braced range");return{type:"range",min:i,max:r,expr:e}}function Ke(t,e){let i=t.nodeTypes,r=i[e];if(r)return[r];let n=[];for(let t in i){let r=i[t];if(r.groups.indexOf(e)>-1)n.push(r)}if(n.length==0)t.err("No node type or group '"+e+"' found");return n}function Ve(t){if(t.eat("(")){let e=Le(t);if(!t.eat(")"))t.err("Missing closing paren");return e}else if(!/\W/.test(t.next)){let e=Ke(t,t.next).map((e=>{if(t.inline==null)t.inline=e.isInline;else if(t.inline!=e.isInline)t.err("Mixing inline and block content");return{type:"name",value:e}}));t.pos++;return e.length==1?e[0]:{type:"choice",exprs:e}}else{t.err("Unexpected token '"+t.next+"'")}}function Ge(t){let e=[[]];n(s(t,0),i());return e;function i(){return e.push([])-1}function r(t,i,r){let n={term:r,to:i};e[t].push(n);return n}function n(t,e){t.forEach((t=>t.to=e))}function s(t,e){if(t.type=="choice"){return t.exprs.reduce(((t,i)=>t.concat(s(i,e))),[])}else if(t.type=="seq"){for(let r=0;;r++){let l=s(t.exprs[r],e);if(r==t.exprs.length-1)return l;n(l,e=i())}}else if(t.type=="star"){let l=i();r(e,l);n(s(t.expr,l),l);return[r(l)]}else if(t.type=="plus"){let l=i();n(s(t.expr,e),l);n(s(t.expr,l),l);return[r(l)]}else if(t.type=="opt"){return[r(e)].concat(s(t.expr,e))}else if(t.type=="range"){let l=e;for(let e=0;e<t.min;e++){let e=i();n(s(t.expr,l),e);l=e}if(t.max==-1){n(s(t.expr,l),l)}else{for(let e=t.min;e<t.max;e++){let e=i();r(l,e);n(s(t.expr,l),e);l=e}}return[r(l)]}else if(t.type=="name"){return[r(e,undefined,t.value)]}else{throw new Error("Unknown expr type")}}}function Xe(t,e){return e-t}function Ye(t,e){let i=[];r(e);return i.sort(Xe);function r(e){let n=t[e];if(n.length==1&&!n[0].term)return r(n[0].to);i.push(e);for(let t=0;t<n.length;t++){let{term:e,to:s}=n[t];if(!e&&i.indexOf(s)==-1)r(s)}}}function Qe(t){let e=Object.create(null);return i(Ye(t,0));function i(r){let n=[];r.forEach((e=>{t[e].forEach((({term:e,to:i})=>{if(!e)return;let r;for(let t=0;t<n.length;t++)if(n[t][0]==e)r=n[t][1];Ye(t,i).forEach((t=>{if(!r)n.push([e,r=[]]);if(r.indexOf(t)==-1)r.push(t)}))}))}));let s=e[r.join(",")]=new Pe(r.indexOf(t.length-1)>-1);for(let t=0;t<n.length;t++){let r=n[t][1].sort(Xe);s.next.push({type:n[t][0],next:e[r.join(",")]||i(r)})}return s}}function ti(t,e){for(let i=0,r=[t];i<r.length;i++){let t=r[i],n=!t.validEnd,s=[];for(let e=0;e<t.next.length;e++){let{type:i,next:l}=t.next[e];s.push(i.name);if(n&&!(i.isText||i.hasRequiredAttrs()))n=false;if(r.indexOf(l)==-1)r.push(l)}if(n)e.err("Only non-generatable nodes ("+s.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function ei(t){let e=Object.create(null);for(let i in t){let r=t[i];if(!r.hasDefault)return null;e[i]=r.default}return e}function ii(t,e){let i=Object.create(null);for(let r in t){let n=e&&e[r];if(n===undefined){let e=t[r];if(e.hasDefault)n=e.default;else throw new RangeError("No value supplied for attribute "+r)}i[r]=n}return i}function ri(t){let e=Object.create(null);if(t)for(let i in t)e[i]=new si(t[i]);return e}class ni{constructor(t,e,i){this.name=t;this.schema=e;this.spec=i;this.markSet=null;this.groups=i.group?i.group.split(" "):[];this.attrs=ri(i.attrs);this.defaultAttrs=ei(this.attrs);this.contentMatch=null;this.inlineContent=null;this.isBlock=!(i.inline||t=="text");this.isText=t=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==Pe.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let t in this.attrs)if(this.attrs[t].isRequired)return true;return false}compatibleContent(t){return this==t||this.contentMatch.compatible(t.contentMatch)}computeAttrs(t){if(!t&&this.defaultAttrs)return this.defaultAttrs;else return ii(this.attrs,t)}create(t=null,e,i){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new ze(this,this.computeAttrs(t),de.from(e),ge.setFrom(i))}createChecked(t=null,e,i){e=de.from(e);this.checkContent(e);return new ze(this,this.computeAttrs(t),e,ge.setFrom(i))}createAndFill(t=null,e,i){t=this.computeAttrs(t);e=de.from(e);if(e.size){let t=this.contentMatch.fillBefore(e);if(!t)return null;e=t.append(e)}let r=this.contentMatch.matchFragment(e);let n=r&&r.fillBefore(de.empty,true);if(!n)return null;return new ze(this,t,e.append(n),ge.setFrom(i))}validContent(t){let e=this.contentMatch.matchFragment(t);if(!e||!e.validEnd)return false;for(let e=0;e<t.childCount;e++)if(!this.allowsMarks(t.child(e).marks))return false;return true}checkContent(t){if(!this.validContent(t))throw new RangeError(`Invalid content for node ${this.name}: ${t.toString().slice(0,50)}`)}allowsMarkType(t){return this.markSet==null||this.markSet.indexOf(t)>-1}allowsMarks(t){if(this.markSet==null)return true;for(let e=0;e<t.length;e++)if(!this.allowsMarkType(t[e].type))return false;return true}allowedMarks(t){if(this.markSet==null)return t;let e;for(let i=0;i<t.length;i++){if(!this.allowsMarkType(t[i].type)){if(!e)e=t.slice(0,i)}else if(e){e.push(t[i])}}return!e?t:e.length?e:ge.none}static compile(t,e){let i=Object.create(null);t.forEach(((t,r)=>i[t]=new ni(t,e,r)));let r=e.spec.topNode||"doc";if(!i[r])throw new RangeError("Schema is missing its top node type ('"+r+"')");if(!i.text)throw new RangeError("Every schema needs a 'text' type");for(let t in i.text.attrs)throw new RangeError("The text node type should not have attributes");return i}}class si{constructor(t){this.hasDefault=Object.prototype.hasOwnProperty.call(t,"default");this.default=t.default}get isRequired(){return!this.hasDefault}}class li{constructor(t,e,i,r){this.name=t;this.rank=e;this.schema=i;this.spec=r;this.attrs=ri(r.attrs);this.excluded=null;let n=ei(this.attrs);this.instance=n?new ge(this,n):null}create(t=null){if(!t&&this.instance)return this.instance;return new ge(this,ii(this.attrs,t))}static compile(t,e){let i=Object.create(null),r=0;t.forEach(((t,n)=>i[t]=new li(t,r++,e,n)));return i}removeFromSet(t){for(var e=0;e<t.length;e++)if(t[e].type==this){t=t.slice(0,e).concat(t.slice(e+1));e--}return t}isInSet(t){for(let e=0;e<t.length;e++)if(t[e].type==this)return t[e]}excludes(t){return this.excluded.indexOf(t)>-1}}class ui{constructor(t){this.cached=Object.create(null);let e=this.spec={};for(let i in t)e[i]=t[i];e.nodes=he.from(t.nodes),e.marks=he.from(t.marks||{}),this.nodes=ni.compile(this.spec.nodes,this);this.marks=li.compile(this.spec.marks,this);let i=Object.create(null);for(let t in this.nodes){if(t in this.marks)throw new RangeError(t+" can not be both a node and a mark");let e=this.nodes[t],r=e.spec.content||"",n=e.spec.marks;e.contentMatch=i[r]||(i[r]=Pe.parse(r,this.nodes));e.inlineContent=e.contentMatch.inlineContent;e.markSet=n=="_"?null:n?oi(this,n.split(" ")):n==""||!e.inlineContent?[]:null}for(let t in this.marks){let e=this.marks[t],i=e.spec.excludes;e.excluded=i==null?[e]:i==""?[]:oi(this,i.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this);this.markFromJSON=this.markFromJSON.bind(this);this.topNodeType=this.nodes[this.spec.topNode||"doc"];this.cached.wrappings=Object.create(null)}node(t,e=null,i,r){if(typeof t=="string")t=this.nodeType(t);else if(!(t instanceof ni))throw new RangeError("Invalid node type: "+t);else if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")");return t.createChecked(e,i,r)}text(t,e){let i=this.nodes.text;return new Te(i,i.defaultAttrs,t,ge.setFrom(e))}mark(t,e){if(typeof t=="string")t=this.marks[t];return t.create(e)}nodeFromJSON(t){return ze.fromJSON(this,t)}markFromJSON(t){return ge.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function oi(t,e){let i=[];for(let r=0;r<e.length;r++){let n=e[r],s=t.marks[n],l=s;if(s){i.push(s)}else{for(let e in t.marks){let r=t.marks[e];if(n=="_"||r.spec.group&&r.spec.group.split(" ").indexOf(n)>-1)i.push(l=r)}}if(!l)throw new SyntaxError("Unknown mark type: '"+e[r]+"'")}return i}class fi{constructor(t,e){this.schema=t;this.rules=e;this.tags=[];this.styles=[];e.forEach((t=>{if(t.tag)this.tags.push(t);else if(t.style)this.styles.push(t)}));this.normalizeLists=!this.tags.some((e=>{if(!/^(ul|ol)\b/.test(e.tag)||!e.node)return false;let i=t.nodes[e.node];return i.contentMatch.matchType(i)}))}parse(t,e={}){let i=new bi(this,e,false);i.addAll(t,e.from,e.to);return i.finish()}parseSlice(t,e={}){let i=new bi(this,e,true);i.addAll(t,e.from,e.to);return ke.maxOpen(i.finish())}matchTag(t,e,i){for(let r=i?this.tags.indexOf(i)+1:0;r<this.tags.length;r++){let i=this.tags[r];if(Di(t,i.tag)&&(i.namespace===undefined||t.namespaceURI==i.namespace)&&(!i.context||e.matchesContext(i.context))){if(i.getAttrs){let e=i.getAttrs(t);if(e===false)continue;i.attrs=e||undefined}return i}}}matchStyle(t,e,i,r){for(let n=r?this.styles.indexOf(r)+1:0;n<this.styles.length;n++){let r=this.styles[n],s=r.style;if(s.indexOf(t)!=0||r.context&&!i.matchesContext(r.context)||s.length>t.length&&(s.charCodeAt(t.length)!=61||s.slice(t.length+1)!=e))continue;if(r.getAttrs){let t=r.getAttrs(e);if(t===false)continue;r.attrs=t||undefined}return r}}static schemaRules(t){let e=[];function i(t){let i=t.priority==null?50:t.priority,r=0;for(;r<e.length;r++){let t=e[r],n=t.priority==null?50:t.priority;if(n<i)break}e.splice(r,0,t)}for(let e in t.marks){let r=t.marks[e].spec.parseDOM;if(r)r.forEach((t=>{i(t=yi(t));if(!(t.mark||t.ignore||t.clearMark))t.mark=e}))}for(let e in t.nodes){let r=t.nodes[e].spec.parseDOM;if(r)r.forEach((t=>{i(t=yi(t));if(!(t.node||t.ignore||t.mark))t.node=e}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new fi(t,fi.schemaRules(t)))}}const hi={address:true,article:true,aside:true,blockquote:true,canvas:true,dd:true,div:true,dl:true,fieldset:true,figcaption:true,figure:true,footer:true,form:true,h1:true,h2:true,h3:true,h4:true,h5:true,h6:true,header:true,hgroup:true,hr:true,li:true,noscript:true,ol:true,output:true,p:true,pre:true,section:true,table:true,tfoot:true,ul:true};const ai={head:true,noscript:true,object:true,script:true,style:true,title:true};const ci={ol:true,ul:true};const di=1,pi=2,mi=4;function wi(t,e,i){if(e!=null)return(e?di:0)|(e==="full"?pi:0);return t&&t.whitespace=="pre"?di|pi:i&~mi}class gi{constructor(t,e,i,r,n,s,l){this.type=t;this.attrs=e;this.marks=i;this.pendingMarks=r;this.solid=n;this.options=l;this.content=[];this.activeMarks=ge.none;this.stashMarks=[];this.match=s||(l&mi?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(de.from(t));if(e){this.match=this.type.contentMatch.matchFragment(e)}else{let e=this.type.contentMatch,i;if(i=e.findWrapping(t.type)){this.match=e;return i}else{return null}}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&di)){let t=this.content[this.content.length-1],e;if(t&&t.isText&&(e=/[ \t\r\n\u000c]+$/.exec(t.text))){let i=t;if(t.text.length==e[0].length)this.content.pop();else this.content[this.content.length-1]=i.withText(i.text.slice(0,i.text.length-e[0].length))}}let e=de.from(this.content);if(!t&&this.match)e=e.append(this.match.fillBefore(de.empty,true));return this.type?this.type.create(this.attrs,e,this.marks):e}popFromStashMark(t){for(let e=this.stashMarks.length-1;e>=0;e--)if(t.eq(this.stashMarks[e]))return this.stashMarks.splice(e,1)[0]}applyPending(t){for(let e=0,i=this.pendingMarks;e<i.length;e++){let r=i[e];if((this.type?this.type.allowsMarkType(r.type):Fi(r.type,t))&&!r.isInSet(this.activeMarks)){this.activeMarks=r.addToSet(this.activeMarks);this.pendingMarks=r.removeFromSet(this.pendingMarks)}}}inlineContext(t){if(this.type)return this.type.inlineContent;if(this.content.length)return this.content[0].isInline;return t.parentNode&&!hi.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class bi{constructor(t,e,i){this.parser=t;this.options=e;this.isOpen=i;this.open=0;let r=e.topNode,n;let s=wi(null,e.preserveWhitespace,0)|(i?mi:0);if(r)n=new gi(r.type,r.attrs,ge.none,ge.none,true,e.topMatch||r.type.contentMatch,s);else if(i)n=new gi(null,null,ge.none,ge.none,true,null,s);else n=new gi(t.schema.topNodeType,null,ge.none,ge.none,true,null,s);this.nodes=[n];this.find=e.findPositions;this.needsBlock=false}get top(){return this.nodes[this.open]}addDOM(t){if(t.nodeType==3)this.addTextNode(t);else if(t.nodeType==1)this.addElement(t)}withStyleRules(t,e){let i=t.getAttribute("style");if(!i)return e();let r=this.readStyles(vi(i));if(!r)return;let[n,s]=r,l=this.top;for(let t=0;t<s.length;t++)this.removePendingMark(s[t],l);for(let t=0;t<n.length;t++)this.addPendingMark(n[t]);e();for(let t=0;t<n.length;t++)this.removePendingMark(n[t],l);for(let t=0;t<s.length;t++)this.addPendingMark(s[t])}addTextNode(t){let e=t.nodeValue;let i=this.top;if(i.options&pi||i.inlineContext(t)||/[^ \t\r\n\u000c]/.test(e)){if(!(i.options&di)){e=e.replace(/[ \t\r\n\u000c]+/g," ");if(/^[ \t\r\n\u000c]/.test(e)&&this.open==this.nodes.length-1){let r=i.content[i.content.length-1];let n=t.previousSibling;if(!r||n&&n.nodeName=="BR"||r.isText&&/[ \t\r\n\u000c]$/.test(r.text))e=e.slice(1)}}else if(!(i.options&pi)){e=e.replace(/\r?\n|\r/g," ")}else{e=e.replace(/\r\n?/g,"\n")}if(e)this.insertNode(this.parser.schema.text(e));this.findInText(t)}else{this.findInside(t)}}addElement(t,e){let i=t.nodeName.toLowerCase(),r;if(ci.hasOwnProperty(i)&&this.parser.normalizeLists)ki(t);let n=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(r=this.parser.matchTag(t,this,e));if(n?n.ignore:ai.hasOwnProperty(i)){this.findInside(t);this.ignoreFallback(t)}else if(!n||n.skip||n.closeParent){if(n&&n.closeParent)this.open=Math.max(0,this.open-1);else if(n&&n.skip.nodeType)t=n.skip;let e,r=this.top,s=this.needsBlock;if(hi.hasOwnProperty(i)){if(r.content.length&&r.content[0].isInline&&this.open){this.open--;r=this.top}e=true;if(!r.type)this.needsBlock=true}else if(!t.firstChild){this.leafFallback(t);return}if(n&&n.skip)this.addAll(t);else this.withStyleRules(t,(()=>this.addAll(t)));if(e)this.sync(r);this.needsBlock=s}else{this.withStyleRules(t,(()=>{this.addElementByRule(t,n,n.consuming===false?r:undefined)}))}}leafFallback(t){if(t.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent)this.addTextNode(t.ownerDocument.createTextNode("\n"))}ignoreFallback(t){if(t.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent))this.findPlace(this.parser.schema.text("-"))}readStyles(t){let e=ge.none,i=ge.none;for(let r=0;r<t.length;r+=2){for(let n=undefined;;){let s=this.parser.matchStyle(t[r],t[r+1],this,n);if(!s)break;if(s.ignore)return null;if(s.clearMark){this.top.pendingMarks.concat(this.top.activeMarks).forEach((t=>{if(s.clearMark(t))i=t.addToSet(i)}))}else{e=this.parser.schema.marks[s.mark].create(s.attrs).addToSet(e)}if(s.consuming===false)n=s;else break}}return[e,i]}addElementByRule(t,e,i){let r,n,s;if(e.node){n=this.parser.schema.nodes[e.node];if(!n.isLeaf){r=this.enter(n,e.attrs||null,e.preserveWhitespace)}else if(!this.insertNode(n.create(e.attrs))){this.leafFallback(t)}}else{let t=this.parser.schema.marks[e.mark];s=t.create(e.attrs);this.addPendingMark(s)}let l=this.top;if(n&&n.isLeaf){this.findInside(t)}else if(i){this.addElement(t,i)}else if(e.getContent){this.findInside(t);e.getContent(t,this.parser.schema).forEach((t=>this.insertNode(t)))}else{let i=t;if(typeof e.contentElement=="string")i=t.querySelector(e.contentElement);else if(typeof e.contentElement=="function")i=e.contentElement(t);else if(e.contentElement)i=e.contentElement;this.findAround(t,i,true);this.addAll(i)}if(r&&this.sync(l))this.open--;if(s)this.removePendingMark(s,l)}addAll(t,e,i){let r=e||0;for(let n=e?t.childNodes[e]:t.firstChild,s=i==null?null:t.childNodes[i];n!=s;n=n.nextSibling,++r){this.findAtPoint(t,r);this.addDOM(n)}this.findAtPoint(t,r)}findPlace(t){let e,i;for(let r=this.open;r>=0;r--){let n=this.nodes[r];let s=n.findWrapping(t);if(s&&(!e||e.length>s.length)){e=s;i=n;if(!s.length)break}if(n.solid)break}if(!e)return false;this.sync(i);for(let t=0;t<e.length;t++)this.enterInner(e[t],null,false);return true}insertNode(t){if(t.isInline&&this.needsBlock&&!this.top.type){let t=this.textblockFromContext();if(t)this.enterInner(t)}if(this.findPlace(t)){this.closeExtra();let e=this.top;e.applyPending(t.type);if(e.match)e.match=e.match.matchType(t.type);let i=e.activeMarks;for(let r=0;r<t.marks.length;r++)if(!e.type||e.type.allowsMarkType(t.marks[r].type))i=t.marks[r].addToSet(i);e.content.push(t.mark(i));return true}return false}enter(t,e,i){let r=this.findPlace(t.create(e));if(r)this.enterInner(t,e,true,i);return r}enterInner(t,e=null,i=false,r){this.closeExtra();let n=this.top;n.applyPending(t);n.match=n.match&&n.match.matchType(t);let s=wi(t,r,n.options);if(n.options&mi&&n.content.length==0)s|=mi;this.nodes.push(new gi(t,e,n.activeMarks,n.pendingMarks,i,null,s));this.open++}closeExtra(t=false){let e=this.nodes.length-1;if(e>this.open){for(;e>this.open;e--)this.nodes[e-1].content.push(this.nodes[e].finish(t));this.nodes.length=this.open+1}}finish(){this.open=0;this.closeExtra(this.isOpen);return this.nodes[0].finish(this.isOpen||this.options.topOpen)}sync(t){for(let e=this.open;e>=0;e--)if(this.nodes[e]==t){this.open=e;return true}return false}get currentPos(){this.closeExtra();let t=0;for(let e=this.open;e>=0;e--){let i=this.nodes[e].content;for(let e=i.length-1;e>=0;e--)t+=i[e].nodeSize;if(e)t++}return t}findAtPoint(t,e){if(this.find)for(let i=0;i<this.find.length;i++){if(this.find[i].node==t&&this.find[i].offset==e)this.find[i].pos=this.currentPos}}findInside(t){if(this.find)for(let e=0;e<this.find.length;e++){if(this.find[e].pos==null&&t.nodeType==1&&t.contains(this.find[e].node))this.find[e].pos=this.currentPos}}findAround(t,e,i){if(t!=e&&this.find)for(let r=0;r<this.find.length;r++){if(this.find[r].pos==null&&t.nodeType==1&&t.contains(this.find[r].node)){let t=e.compareDocumentPosition(this.find[r].node);if(t&(i?2:4))this.find[r].pos=this.currentPos}}}findInText(t){if(this.find)for(let e=0;e<this.find.length;e++){if(this.find[e].node==t)this.find[e].pos=this.currentPos-(t.nodeValue.length-this.find[e].offset)}}matchesContext(t){if(t.indexOf("|")>-1)return t.split(/\s*\|\s*/).some(this.matchesContext,this);let e=t.split("/");let i=this.options.context;let r=!this.isOpen&&(!i||i.parent.type==this.nodes[0].type);let n=-(i?i.depth+1:0)+(r?0:1);let s=(t,l)=>{for(;t>=0;t--){let u=e[t];if(u==""){if(t==e.length-1||t==0)continue;for(;l>=n;l--)if(s(t-1,l))return true;return false}else{let t=l>0||l==0&&r?this.nodes[l].type:i&&l>=n?i.node(l-n).type:null;if(!t||t.name!=u&&t.groups.indexOf(u)==-1)return false;l--}}return true};return s(e.length-1,this.open)}textblockFromContext(){let t=this.options.context;if(t)for(let e=t.depth;e>=0;e--){let i=t.node(e).contentMatchAt(t.indexAfter(e)).defaultType;if(i&&i.isTextblock&&i.defaultAttrs)return i}for(let t in this.parser.schema.nodes){let e=this.parser.schema.nodes[t];if(e.isTextblock&&e.defaultAttrs)return e}}addPendingMark(t){let e=Ei(t,this.top.pendingMarks);if(e)this.top.stashMarks.push(e);this.top.pendingMarks=t.addToSet(this.top.pendingMarks)}removePendingMark(t,e){for(let i=this.open;i>=0;i--){let r=this.nodes[i];let n=r.pendingMarks.lastIndexOf(t);if(n>-1){r.pendingMarks=t.removeFromSet(r.pendingMarks)}else{r.activeMarks=t.removeFromSet(r.activeMarks);let e=r.popFromStashMark(t);if(e&&r.type&&r.type.allowsMarkType(e.type))r.activeMarks=e.addToSet(r.activeMarks)}if(r==e)break}}}function ki(t){for(let e=t.firstChild,i=null;e;e=e.nextSibling){let t=e.nodeType==1?e.nodeName.toLowerCase():null;if(t&&ci.hasOwnProperty(t)&&i){i.appendChild(e);e=i}else if(t=="li"){i=e}else if(t){i=null}}}function Di(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function vi(t){let e=/\s*([\w-]+)\s*:\s*([^;]+)/g,i,r=[];while(i=e.exec(t))r.push(i[1],i[2].trim());return r}function yi(t){let e={};for(let i in t)e[i]=t[i];return e}function Fi(t,e){let i=e.schema.nodes;for(let r in i){let n=i[r];if(!n.allowsMarkType(t))continue;let s=[],l=t=>{s.push(t);for(let i=0;i<t.edgeCount;i++){let{type:r,next:n}=t.edge(i);if(r==e)return true;if(s.indexOf(n)<0&&l(n))return true}};if(l(n.contentMatch))return true}}function Ei(t,e){for(let i=0;i<e.length;i++){if(t.eq(e[i]))return e[i]}}class xi{constructor(t,e){this.nodes=t;this.marks=e}serializeFragment(t,e={},i){if(!i)i=Ai(e).createDocumentFragment();let r=i,n=[];t.forEach((t=>{if(n.length||t.marks.length){let i=0,s=0;while(i<n.length&&s<t.marks.length){let e=t.marks[s];if(!this.marks[e.type.name]){s++;continue}if(!e.eq(n[i][0])||e.type.spec.spanning===false)break;i++;s++}while(i<n.length)r=n.pop()[1];while(s<t.marks.length){let i=t.marks[s++];let l=this.serializeMark(i,t.isInline,e);if(l){n.push([i,r]);r.appendChild(l.dom);r=l.contentDOM||l.dom}}}r.appendChild(this.serializeNodeInner(t,e))}));return i}serializeNodeInner(t,e){let{dom:i,contentDOM:r}=xi.renderSpec(Ai(e),this.nodes[t.type.name](t));if(r){if(t.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(t.content,e,r)}return i}serializeNode(t,e={}){let i=this.serializeNodeInner(t,e);for(let r=t.marks.length-1;r>=0;r--){let n=this.serializeMark(t.marks[r],t.isInline,e);if(n){(n.contentDOM||n.dom).appendChild(i);i=n.dom}}return i}serializeMark(t,e,i={}){let r=this.marks[t.type.name];return r&&xi.renderSpec(Ai(i),r(t,e))}static renderSpec(t,e,i=null){if(typeof e=="string")return{dom:t.createTextNode(e)};if(e.nodeType!=null)return{dom:e};if(e.dom&&e.dom.nodeType!=null)return e;let r=e[0],n=r.indexOf(" ");if(n>0){i=r.slice(0,n);r=r.slice(n+1)}let s;let l=i?t.createElementNS(i,r):t.createElement(r);let u=e[1],o=1;if(u&&typeof u=="object"&&u.nodeType==null&&!Array.isArray(u)){o=2;for(let t in u)if(u[t]!=null){let e=t.indexOf(" ");if(e>0)l.setAttributeNS(t.slice(0,e),t.slice(e+1),u[t]);else l.setAttribute(t,u[t])}}for(let r=o;r<e.length;r++){let n=e[r];if(n===0){if(r<e.length-1||r>o)throw new RangeError("Content hole must be the only child of its parent node");return{dom:l,contentDOM:l}}else{let{dom:e,contentDOM:r}=xi.renderSpec(t,n,i);l.appendChild(e);if(r){if(s)throw new RangeError("Multiple content holes");s=r}}}return{dom:l,contentDOM:s}}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new xi(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=Mi(t.nodes);if(!e.text)e.text=t=>t.text;return e}static marksFromSchema(t){return Mi(t.marks)}}function Mi(t){let e={};for(let i in t){let r=t[i].spec.toDOM;if(r)e[i]=r}return e}function Ai(t){return t.document||window.document}const Ci=65535;const Si=Math.pow(2,16);function Oi(t,e){return t+e*Si}function $i(t){return t&Ci}function _i(t){return(t-(t&Ci))/Si}const Bi=1,ji=2,qi=4,Ri=8;class Ni{constructor(t,e,i){this.pos=t;this.delInfo=e;this.recover=i}get deleted(){return(this.delInfo&Ri)>0}get deletedBefore(){return(this.delInfo&(Bi|qi))>0}get deletedAfter(){return(this.delInfo&(ji|qi))>0}get deletedAcross(){return(this.delInfo&qi)>0}}class zi{constructor(t,e=false){this.ranges=t;this.inverted=e;if(!t.length&&zi.empty)return zi.empty}recover(t){let e=0,i=$i(t);if(!this.inverted)for(let t=0;t<i;t++)e+=this.ranges[t*3+2]-this.ranges[t*3+1];return this.ranges[i*3]+e+_i(t)}mapResult(t,e=1){return this._map(t,e,false)}map(t,e=1){return this._map(t,e,true)}_map(t,e,i){let r=0,n=this.inverted?2:1,s=this.inverted?1:2;for(let l=0;l<this.ranges.length;l+=3){let u=this.ranges[l]-(this.inverted?r:0);if(u>t)break;let o=this.ranges[l+n],f=this.ranges[l+s],h=u+o;if(t<=h){let n=!o?e:t==u?-1:t==h?1:e;let s=u+r+(n<0?0:f);if(i)return s;let a=t==(e<0?u:h)?null:Oi(l/3,t-u);let c=t==u?ji:t==h?Bi:qi;if(e<0?t!=u:t!=h)c|=Ri;return new Ni(s,c,a)}r+=f-o}return i?t+r:new Ni(t+r,0,null)}touches(t,e){let i=0,r=$i(e);let n=this.inverted?2:1,s=this.inverted?1:2;for(let e=0;e<this.ranges.length;e+=3){let l=this.ranges[e]-(this.inverted?i:0);if(l>t)break;let u=this.ranges[e+n],o=l+u;if(t<=o&&e==r*3)return true;i+=this.ranges[e+s]-u}return false}forEach(t){let e=this.inverted?2:1,i=this.inverted?1:2;for(let r=0,n=0;r<this.ranges.length;r+=3){let s=this.ranges[r],l=s-(this.inverted?n:0),u=s+(this.inverted?0:n);let o=this.ranges[r+e],f=this.ranges[r+i];t(l,l+o,u,u+f);n+=f-o}}invert(){return new zi(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?zi.empty:new zi(t<0?[0,-t,0]:[0,0,t])}}zi.empty=new zi([]);class Ti{constructor(t=[],e,i=0,r=t.length){this.maps=t;this.mirror=e;this.from=i;this.to=r}slice(t=0,e=this.maps.length){return new Ti(this.maps,this.mirror,t,e)}copy(){return new Ti(this.maps.slice(),this.mirror&&this.mirror.slice(),this.from,this.to)}appendMap(t,e){this.to=this.maps.push(t);if(e!=null)this.setMirror(this.maps.length-1,e)}appendMapping(t){for(let e=0,i=this.maps.length;e<t.maps.length;e++){let r=t.getMirror(e);this.appendMap(t.maps[e],r!=null&&r<e?i+r:undefined)}}getMirror(t){if(this.mirror)for(let e=0;e<this.mirror.length;e++)if(this.mirror[e]==t)return this.mirror[e+(e%2?-1:1)]}setMirror(t,e){if(!this.mirror)this.mirror=[];this.mirror.push(t,e)}appendMappingInverted(t){for(let e=t.maps.length-1,i=this.maps.length+t.maps.length;e>=0;e--){let r=t.getMirror(e);this.appendMap(t.maps[e].invert(),r!=null&&r>e?i-r-1:undefined)}}invert(){let t=new Ti;t.appendMappingInverted(this);return t}map(t,e=1){if(this.mirror)return this._map(t,e,true);for(let i=this.from;i<this.to;i++)t=this.maps[i].map(t,e);return t}mapResult(t,e=1){return this._map(t,e,false)}_map(t,e,i){let r=0;for(let i=this.from;i<this.to;i++){let n=this.maps[i],s=n.mapResult(t,e);if(s.recover!=null){let e=this.getMirror(i);if(e!=null&&e>i&&e<this.to){i=e;t=this.maps[e].recover(s.recover);continue}}r|=s.delInfo;t=s.pos}return i?t:new Ni(t,r,null)}}const Ii=Object.create(null);class Pi{getMap(){return zi.empty}merge(t){return null}static fromJSON(t,e){if(!e||!e.stepType)throw new RangeError("Invalid input for Step.fromJSON");let i=Ii[e.stepType];if(!i)throw new RangeError(`No step type ${e.stepType} defined`);return i.fromJSON(t,e)}static jsonID(t,e){if(t in Ii)throw new RangeError("Duplicate use of step JSON ID "+t);Ii[t]=e;e.prototype.jsonID=t;return e}}class Ji{constructor(t,e){this.doc=t;this.failed=e}static ok(t){return new Ji(t,null)}static fail(t){return new Ji(null,t)}static fromReplace(t,e,i,r){try{return Ji.ok(t.replace(e,i,r))}catch(t){if(t instanceof be)return Ji.fail(t.message);throw t}}}function Li(t,e,i){let r=[];for(let n=0;n<t.childCount;n++){let s=t.child(n);if(s.content.size)s=s.copy(Li(s.content,e,s));if(s.isInline)s=e(s,i,n);r.push(s)}return de.fromArray(r)}class Ui extends Pi{constructor(t,e,i){super();this.from=t;this.to=e;this.mark=i}apply(t){let e=t.slice(this.from,this.to),i=t.resolve(this.from);let r=i.node(i.sharedDepth(this.to));let n=new ke(Li(e.content,((t,e)=>{if(!t.isAtom||!e.type.allowsMarkType(this.mark.type))return t;return t.mark(this.mark.addToSet(t.marks))}),r),e.openStart,e.openEnd);return Ji.fromReplace(t,this.from,this.to,n)}invert(){return new Wi(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);if(e.deleted&&i.deleted||e.pos>=i.pos)return null;return new Ui(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Ui&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Ui(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark);return null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,e){if(typeof e.from!="number"||typeof e.to!="number")throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new Ui(e.from,e.to,t.markFromJSON(e.mark))}}Pi.jsonID("addMark",Ui);class Wi extends Pi{constructor(t,e,i){super();this.from=t;this.to=e;this.mark=i}apply(t){let e=t.slice(this.from,this.to);let i=new ke(Li(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Ji.fromReplace(t,this.from,this.to,i)}invert(){return new Ui(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);if(e.deleted&&i.deleted||e.pos>=i.pos)return null;return new Wi(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Wi&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Wi(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark);return null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,e){if(typeof e.from!="number"||typeof e.to!="number")throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new Wi(e.from,e.to,t.markFromJSON(e.mark))}}Pi.jsonID("removeMark",Wi);class Hi extends Pi{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Ji.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Ji.fromReplace(t,this.pos,this.pos+1,new ke(de.from(i),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(e){let t=this.mark.addToSet(e.marks);if(t.length==e.marks.length){for(let i=0;i<e.marks.length;i++)if(!e.marks[i].isInSet(t))return new Hi(this.pos,e.marks[i]);return new Hi(this.pos,this.mark)}}return new Zi(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Hi(e.pos,this.mark)}toJSON(){return{stepType:"addNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,e){if(typeof e.pos!="number")throw new RangeError("Invalid input for AddNodeMarkStep.fromJSON");return new Hi(e.pos,t.markFromJSON(e.mark))}}Pi.jsonID("addNodeMark",Hi);class Zi extends Pi{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Ji.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.removeFromSet(e.marks));return Ji.fromReplace(t,this.pos,this.pos+1,new ke(de.from(i),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(!e||!this.mark.isInSet(e.marks))return this;return new Hi(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Zi(e.pos,this.mark)}toJSON(){return{stepType:"removeNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,e){if(typeof e.pos!="number")throw new RangeError("Invalid input for RemoveNodeMarkStep.fromJSON");return new Zi(e.pos,t.markFromJSON(e.mark))}}Pi.jsonID("removeNodeMark",Zi);class Ki extends Pi{constructor(t,e,i,r=false){super();this.from=t;this.to=e;this.slice=i;this.structure=r}apply(t){if(this.structure&&Gi(t,this.from,this.to))return Ji.fail("Structure replace would overwrite content");return Ji.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new zi([this.from,this.to-this.from,this.slice.size])}invert(t){return new Ki(this.from,this.from+this.slice.size,t.slice(this.from,this.to))}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);if(e.deletedAcross&&i.deletedAcross)return null;return new Ki(e.pos,Math.max(e.pos,i.pos),this.slice)}merge(t){if(!(t instanceof Ki)||t.structure||this.structure)return null;if(this.from+this.slice.size==t.from&&!this.slice.openEnd&&!t.slice.openStart){let e=this.slice.size+t.slice.size==0?ke.empty:new ke(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new Ki(this.from,this.to+(t.to-t.from),e,this.structure)}else if(t.to==this.from&&!this.slice.openStart&&!t.slice.openEnd){let e=this.slice.size+t.slice.size==0?ke.empty:new ke(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new Ki(t.from,this.to,e,this.structure)}else{return null}}toJSON(){let t={stepType:"replace",from:this.from,to:this.to};if(this.slice.size)t.slice=this.slice.toJSON();if(this.structure)t.structure=true;return t}static fromJSON(t,e){if(typeof e.from!="number"||typeof e.to!="number")throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new Ki(e.from,e.to,ke.fromJSON(t,e.slice),!!e.structure)}}Pi.jsonID("replace",Ki);class Vi extends Pi{constructor(t,e,i,r,n,s,l=false){super();this.from=t;this.to=e;this.gapFrom=i;this.gapTo=r;this.slice=n;this.insert=s;this.structure=l}apply(t){if(this.structure&&(Gi(t,this.from,this.gapFrom)||Gi(t,this.gapTo,this.to)))return Ji.fail("Structure gap-replace would overwrite content");let e=t.slice(this.gapFrom,this.gapTo);if(e.openStart||e.openEnd)return Ji.fail("Gap is not a flat range");let i=this.slice.insertAt(this.insert,e.content);if(!i)return Ji.fail("Content does not fit in gap");return Ji.fromReplace(t,this.from,this.to,i)}getMap(){return new zi([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(t){let e=this.gapTo-this.gapFrom;return new Vi(this.from,this.from+this.slice.size+e,this.from+this.insert,this.from+this.insert+e,t.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);let r=t.map(this.gapFrom,-1),n=t.map(this.gapTo,1);if(e.deletedAcross&&i.deletedAcross||r<e.pos||n>i.pos)return null;return new Vi(e.pos,i.pos,r,n,this.slice,this.insert,this.structure)}toJSON(){let t={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};if(this.slice.size)t.slice=this.slice.toJSON();if(this.structure)t.structure=true;return t}static fromJSON(t,e){if(typeof e.from!="number"||typeof e.to!="number"||typeof e.gapFrom!="number"||typeof e.gapTo!="number"||typeof e.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new Vi(e.from,e.to,e.gapFrom,e.gapTo,ke.fromJSON(t,e.slice),e.insert,!!e.structure)}}Pi.jsonID("replaceAround",Vi);function Gi(t,e,i){let r=t.resolve(e),n=i-e,s=r.depth;while(n>0&&s>0&&r.indexAfter(s)==r.node(s).childCount){s--;n--}if(n>0){let t=r.node(s).maybeChild(r.indexAfter(s));while(n>0){if(!t||t.isLeaf)return true;t=t.firstChild;n--}}return false}function Xi(t,e,i,r){let n=[],s=[];let l,u;t.doc.nodesBetween(e,i,((t,o,f)=>{if(!t.isInline)return;let h=t.marks;if(!r.isInSet(h)&&f.type.allowsMarkType(r.type)){let f=Math.max(o,e),a=Math.min(o+t.nodeSize,i);let c=r.addToSet(h);for(let t=0;t<h.length;t++){if(!h[t].isInSet(c)){if(l&&l.to==f&&l.mark.eq(h[t]))l.to=a;else n.push(l=new Wi(f,a,h[t]))}}if(u&&u.to==f)u.to=a;else s.push(u=new Ui(f,a,r))}}));n.forEach((e=>t.step(e)));s.forEach((e=>t.step(e)))}function Yi(t,e,i,r){let n=[],s=0;t.doc.nodesBetween(e,i,((t,l)=>{if(!t.isInline)return;s++;let u=null;if(r instanceof li){let e=t.marks,i;while(i=r.isInSet(e)){(u||(u=[])).push(i);e=i.removeFromSet(e)}}else if(r){if(r.isInSet(t.marks))u=[r]}else{u=t.marks}if(u&&u.length){let r=Math.min(l+t.nodeSize,i);for(let t=0;t<u.length;t++){let i=u[t],o;for(let t=0;t<n.length;t++){let e=n[t];if(e.step==s-1&&i.eq(n[t].style))o=e}if(o){o.to=r;o.step=s}else{n.push({style:i,from:Math.max(l,e),to:r,step:s})}}}}));n.forEach((e=>t.step(new Wi(e.from,e.to,e.style))))}function Qi(t,e,i,r=i.contentMatch){let n=t.doc.nodeAt(e);let s=[],l=e+1;for(let e=0;e<n.childCount;e++){let u=n.child(e),o=l+u.nodeSize;let f=r.matchType(u.type);if(!f){s.push(new Ki(l,o,ke.empty))}else{r=f;for(let e=0;e<u.marks.length;e++)if(!i.allowsMarkType(u.marks[e].type))t.step(new Wi(l,o,u.marks[e]));if(u.isText&&!i.spec.code){let t,e=/\r?\n|\r/g,r;while(t=e.exec(u.text)){if(!r)r=new ke(de.from(i.schema.text(" ",i.allowedMarks(u.marks))),0,0);s.push(new Ki(l+t.index,l+t.index+t[0].length,r))}}}l=o}if(!r.validEnd){let e=r.fillBefore(de.empty,true);t.replace(l,l,new ke(e,0,0))}for(let e=s.length-1;e>=0;e--)t.step(s[e])}function tr(t,e,i){return(e==0||t.canReplace(e,t.childCount))&&(i==t.childCount||t.canReplace(0,i))}function er(t){let e=t.parent;let i=e.content.cutByIndex(t.startIndex,t.endIndex);for(let e=t.depth;;--e){let r=t.$from.node(e);let n=t.$from.index(e),s=t.$to.indexAfter(e);if(e<t.depth&&r.canReplace(n,s,i))return e;if(e==0||r.type.spec.isolating||!tr(r,n,s))break}return null}function ir(t,e,i){let{$from:r,$to:n,depth:s}=e;let l=r.before(s+1),u=n.after(s+1);let o=l,f=u;let h=de.empty,a=0;for(let t=s,e=false;t>i;t--)if(e||r.index(t)>0){e=true;h=de.from(r.node(t).copy(h));a++}else{o--}let c=de.empty,d=0;for(let t=s,e=false;t>i;t--)if(e||n.after(t+1)<n.end(t)){e=true;c=de.from(n.node(t).copy(c));d++}else{f++}t.step(new Vi(o,f,l,u,new ke(h.append(c),a,d),h.size-a,true))}function rr(t,e,i=null,r=t){let n=sr(t,e);let s=n&&lr(r,e);if(!s)return null;return n.map(nr).concat({type:e,attrs:i}).concat(s.map(nr))}function nr(t){return{type:t,attrs:null}}function sr(t,e){let{parent:i,startIndex:r,endIndex:n}=t;let s=i.contentMatchAt(r).findWrapping(e);if(!s)return null;let l=s.length?s[0]:e;return i.canReplaceWith(r,n,l)?s:null}function lr(t,e){let{parent:i,startIndex:r,endIndex:n}=t;let s=i.child(r);let l=e.contentMatch.findWrapping(s.type);if(!l)return null;let u=l.length?l[l.length-1]:e;let o=u.contentMatch;for(let t=r;o&&t<n;t++)o=o.matchType(i.child(t).type);if(!o||!o.validEnd)return null;return l}function ur(t,e,i){let r=de.empty;for(let t=i.length-1;t>=0;t--){if(r.size){let e=i[t].type.contentMatch.matchFragment(r);if(!e||!e.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}r=de.from(i[t].type.create(i[t].attrs,r))}let n=e.start,s=e.end;t.step(new Vi(n,s,n,s,new ke(r,0,0),i.length,true))}function or(t,e,i,r,n){if(!r.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let s=t.steps.length;t.doc.nodesBetween(e,i,((e,i)=>{if(e.isTextblock&&!e.hasMarkup(r,n)&&fr(t.doc,t.mapping.slice(s).map(i),r)){t.clearIncompatible(t.mapping.slice(s).map(i,1),r);let l=t.mapping.slice(s);let u=l.map(i,1),o=l.map(i+e.nodeSize,1);t.step(new Vi(u,o,u+1,o-1,new ke(de.from(r.create(n,null,e.marks)),0,0),1,true));return false}}))}function fr(t,e,i){let r=t.resolve(e),n=r.index();return r.parent.canReplaceWith(n,n+1,i)}function hr(t,e,i,r,n){let s=t.doc.nodeAt(e);if(!s)throw new RangeError("No node at given position");if(!i)i=s.type;let l=i.create(r,null,n||s.marks);if(s.isLeaf)return t.replaceWith(e,e+s.nodeSize,l);if(!i.validContent(s.content))throw new RangeError("Invalid content for node type "+i.name);t.step(new Vi(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new ke(de.from(l),0,0),1,true))}function ar(t,e,i=1,r){let n=t.resolve(e),s=n.depth-i;let l=r&&r[r.length-1]||n.parent;if(s<0||n.parent.type.spec.isolating||!n.parent.canReplace(n.index(),n.parent.childCount)||!l.type.validContent(n.parent.content.cutByIndex(n.index(),n.parent.childCount)))return false;for(let t=n.depth-1,e=i-2;t>s;t--,e--){let i=n.node(t),s=n.index(t);if(i.type.spec.isolating)return false;let l=i.content.cutByIndex(s,i.childCount);let u=r&&r[e+1];if(u)l=l.replaceChild(0,u.type.create(u.attrs));let o=r&&r[e]||i;if(!i.canReplace(s+1,i.childCount)||!o.type.validContent(l))return false}let u=n.indexAfter(s);let o=r&&r[0];return n.node(s).canReplaceWith(u,u,o?o.type:n.node(s+1).type)}function cr(t,e,i=1,r){let n=t.doc.resolve(e),s=de.empty,l=de.empty;for(let t=n.depth,e=n.depth-i,u=i-1;t>e;t--,u--){s=de.from(n.node(t).copy(s));let e=r&&r[u];l=de.from(e?e.type.create(e.attrs,l):n.node(t).copy(l))}t.step(new Ki(e,e,new ke(s.append(l),i,i),true))}function dr(t,e){let i=t.resolve(e),r=i.index();return pr(i.nodeBefore,i.nodeAfter)&&i.parent.canReplace(r,r+1)}function pr(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function mr(t,e,i=-1){let r=t.resolve(e);for(let t=r.depth;;t--){let n,s,l=r.index(t);if(t==r.depth){n=r.nodeBefore;s=r.nodeAfter}else if(i>0){n=r.node(t+1);l++;s=r.node(t).maybeChild(l)}else{n=r.node(t).maybeChild(l-1);s=r.node(t+1)}if(n&&!n.isTextblock&&pr(n,s)&&r.node(t).canReplace(l,l+1))return e;if(t==0)break;e=i<0?r.before(t):r.after(t)}}function wr(t,e,i){let r=new Ki(e-i,e+i,ke.empty,true);t.step(r)}function gr(t,e,i){let r=t.resolve(e);if(r.parent.canReplaceWith(r.index(),r.index(),i))return e;if(r.parentOffset==0)for(let t=r.depth-1;t>=0;t--){let e=r.index(t);if(r.node(t).canReplaceWith(e,e,i))return r.before(t+1);if(e>0)return null}if(r.parentOffset==r.parent.content.size)for(let t=r.depth-1;t>=0;t--){let e=r.indexAfter(t);if(r.node(t).canReplaceWith(e,e,i))return r.after(t+1);if(e<r.node(t).childCount)return null}return null}function br(t,e,i){let r=t.resolve(e);if(!i.content.size)return e;let n=i.content;for(let t=0;t<i.openStart;t++)n=n.firstChild.content;for(let t=1;t<=(i.openStart==0&&i.size?2:1);t++){for(let e=r.depth;e>=0;e--){let i=e==r.depth?0:r.pos<=(r.start(e+1)+r.end(e+1))/2?-1:1;let s=r.index(e)+(i>0?1:0);let l=r.node(e),u=false;if(t==1){u=l.canReplace(s,s,n)}else{let t=l.contentMatchAt(s).findWrapping(n.firstChild.type);u=t&&l.canReplaceWith(s,s,t[0])}if(u)return i==0?r.pos:i<0?r.before(e+1):r.after(e+1)}}return null}function kr(t,e,i=e,r=ke.empty){if(e==i&&!r.size)return null;let n=t.resolve(e),s=t.resolve(i);if(Dr(n,s,r))return new Ki(e,i,r);return new vr(n,s,r).fit()}function Dr(t,e,i){return!i.openStart&&!i.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),i.content)}class vr{constructor(t,e,i){this.$from=t;this.$to=e;this.unplaced=i;this.frontier=[];this.placed=de.empty;for(let e=0;e<=t.depth;e++){let i=t.node(e);this.frontier.push({type:i.type,match:i.contentMatchAt(t.indexAfter(e))})}for(let e=t.depth;e>0;e--)this.placed=de.from(t.node(e).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){while(this.unplaced.size){let t=this.findFittable();if(t)this.placeNodes(t);else this.openMore()||this.dropNode()}let t=this.mustMoveInline(),e=this.placed.size-this.depth-this.$from.depth;let i=this.$from,r=this.close(t<0?this.$to:i.doc.resolve(t));if(!r)return null;let n=this.placed,s=i.depth,l=r.depth;while(s&&l&&n.childCount==1){n=n.firstChild.content;s--;l--}let u=new ke(n,s,l);if(t>-1)return new Vi(i.pos,t,this.$to.pos,this.$to.end(),u,e);if(u.size||i.pos!=this.$to.pos)return new Ki(i.pos,r.pos,u);return null}findFittable(){let t=this.unplaced.openStart;for(let e=this.unplaced.content,i=0,r=this.unplaced.openEnd;i<t;i++){let n=e.firstChild;if(e.childCount>1)r=0;if(n.type.spec.isolating&&r<=i){t=i;break}e=n.content}for(let e=1;e<=2;e++){for(let i=e==1?t:this.unplaced.openStart;i>=0;i--){let t,r=null;if(i){r=Er(this.unplaced.content,i-1).firstChild;t=r.content}else{t=this.unplaced.content}let n=t.firstChild;for(let t=this.depth;t>=0;t--){let{type:s,match:l}=this.frontier[t],u,o=null;if(e==1&&(n?l.matchType(n.type)||(o=l.fillBefore(de.from(n),false)):r&&s.compatibleContent(r.type)))return{sliceDepth:i,frontierDepth:t,parent:r,inject:o};else if(e==2&&n&&(u=l.findWrapping(n.type)))return{sliceDepth:i,frontierDepth:t,parent:r,wrap:u};if(r&&l.matchType(r.type))break}}}}openMore(){let{content:t,openStart:e,openEnd:i}=this.unplaced;let r=Er(t,e);if(!r.childCount||r.firstChild.isLeaf)return false;this.unplaced=new ke(t,e+1,Math.max(i,r.size+e>=t.size-i?e+1:0));return true}dropNode(){let{content:t,openStart:e,openEnd:i}=this.unplaced;let r=Er(t,e);if(r.childCount<=1&&e>0){let n=t.size-e<=e+r.size;this.unplaced=new ke(yr(t,e-1,1),e-1,n?e-1:i)}else{this.unplaced=new ke(yr(t,e,1),e,i)}}placeNodes({sliceDepth:t,frontierDepth:e,parent:i,inject:r,wrap:n}){while(this.depth>e)this.closeFrontierNode();if(n)for(let t=0;t<n.length;t++)this.openFrontierNode(n[t]);let s=this.unplaced,l=i?i.content:s.content;let u=s.openStart-t;let o=0,f=[];let{match:h,type:a}=this.frontier[e];if(r){for(let t=0;t<r.childCount;t++)f.push(r.child(t));h=h.matchFragment(r)}let c=l.size+t-(s.content.size-s.openEnd);while(o<l.childCount){let t=l.child(o),e=h.matchType(t.type);if(!e)break;o++;if(o>1||u==0||t.content.size){h=e;f.push(xr(t.mark(a.allowedMarks(t.marks)),o==1?u:0,o==l.childCount?c:-1))}}let d=o==l.childCount;if(!d)c=-1;this.placed=Fr(this.placed,e,de.from(f));this.frontier[e].match=h;if(d&&c<0&&i&&i.type==this.frontier[this.depth].type&&this.frontier.length>1)this.closeFrontierNode();for(let t=0,e=l;t<c;t++){let t=e.lastChild;this.frontier.push({type:t.type,match:t.contentMatchAt(t.childCount)});e=t.content}this.unplaced=!d?new ke(yr(s.content,t,o),s.openStart,s.openEnd):t==0?ke.empty:new ke(yr(s.content,t-1,1),t-1,c<0?s.openEnd:t-1)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let t=this.frontier[this.depth],e;if(!t.type.isTextblock||!Mr(this.$to,this.$to.depth,t.type,t.match,false)||this.$to.depth==this.depth&&(e=this.findCloseLevel(this.$to))&&e.depth==this.depth)return-1;let{depth:i}=this.$to,r=this.$to.after(i);while(i>1&&r==this.$to.end(--i))++r;return r}findCloseLevel(t){t:for(let e=Math.min(this.depth,t.depth);e>=0;e--){let{match:i,type:r}=this.frontier[e];let n=e<t.depth&&t.end(e+1)==t.pos+(t.depth-(e+1));let s=Mr(t,e,r,i,n);if(!s)continue;for(let i=e-1;i>=0;i--){let{match:e,type:r}=this.frontier[i];let n=Mr(t,i,r,e,true);if(!n||n.childCount)continue t}return{depth:e,fit:s,move:n?t.doc.resolve(t.after(e+1)):t}}}close(t){let e=this.findCloseLevel(t);if(!e)return null;while(this.depth>e.depth)this.closeFrontierNode();if(e.fit.childCount)this.placed=Fr(this.placed,e.depth,e.fit);t=e.move;for(let i=e.depth+1;i<=t.depth;i++){let e=t.node(i),r=e.type.contentMatch.fillBefore(e.content,true,t.index(i));this.openFrontierNode(e.type,e.attrs,r)}return t}openFrontierNode(t,e=null,i){let r=this.frontier[this.depth];r.match=r.match.matchType(t);this.placed=Fr(this.placed,this.depth,de.from(t.create(e,i)));this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop();let e=t.match.fillBefore(de.empty,true);if(e.childCount)this.placed=Fr(this.placed,this.frontier.length,e)}}function yr(t,e,i){if(e==0)return t.cutByIndex(i,t.childCount);return t.replaceChild(0,t.firstChild.copy(yr(t.firstChild.content,e-1,i)))}function Fr(t,e,i){if(e==0)return t.append(i);return t.replaceChild(t.childCount-1,t.lastChild.copy(Fr(t.lastChild.content,e-1,i)))}function Er(t,e){for(let i=0;i<e;i++)t=t.firstChild.content;return t}function xr(t,e,i){if(e<=0)return t;let r=t.content;if(e>1)r=r.replaceChild(0,xr(r.firstChild,e-1,r.childCount==1?i-1:0));if(e>0){r=t.type.contentMatch.fillBefore(r).append(r);if(i<=0)r=r.append(t.type.contentMatch.matchFragment(r).fillBefore(de.empty,true))}return t.copy(r)}function Mr(t,e,i,r,n){let s=t.node(e),l=n?t.indexAfter(e):t.index(e);if(l==s.childCount&&!i.compatibleContent(s.type))return null;let u=r.fillBefore(s.content,true,l);return u&&!Ar(i,s.content,l)?u:null}function Ar(t,e,i){for(let r=i;r<e.childCount;r++)if(!t.allowsMarks(e.child(r).marks))return true;return false}function Cr(t){return t.spec.defining||t.spec.definingForContent}function Sr(t,e,i,r){if(!r.size)return t.deleteRange(e,i);let n=t.doc.resolve(e),s=t.doc.resolve(i);if(Dr(n,s,r))return t.step(new Ki(e,i,r));let l=Br(n,t.doc.resolve(i));if(l[l.length-1]==0)l.pop();let u=-(n.depth+1);l.unshift(u);for(let t=n.depth,e=n.pos-1;t>0;t--,e--){let i=n.node(t).type.spec;if(i.defining||i.definingAsContext||i.isolating)break;if(l.indexOf(t)>-1)u=t;else if(n.before(t)==e)l.splice(1,0,-t)}let o=l.indexOf(u);let f=[],h=r.openStart;for(let t=r.content,e=0;;e++){let i=t.firstChild;f.push(i);if(e==r.openStart)break;t=i.content}for(let t=h-1;t>=0;t--){let e=f[t],i=Cr(e.type);if(i&&!e.sameMarkup(n.node(Math.abs(u)-1)))h=t;else if(i||!e.type.isTextblock)break}for(let e=r.openStart;e>=0;e--){let u=(e+h+1)%(r.openStart+1);let a=f[u];if(!a)continue;for(let e=0;e<l.length;e++){let f=l[(e+o)%l.length],h=true;if(f<0){h=false;f=-f}let c=n.node(f-1),d=n.index(f-1);if(c.canReplaceWith(d,d,a.type,a.marks))return t.replace(n.before(f),h?s.after(f):i,new ke(Or(r.content,0,r.openStart,u),u,r.openEnd))}}let a=t.steps.length;for(let u=l.length-1;u>=0;u--){t.replace(e,i,r);if(t.steps.length>a)break;let o=l[u];if(o<0)continue;e=n.before(o);i=s.after(o)}}function Or(t,e,i,r,n){if(e<i){let n=t.firstChild;t=t.replaceChild(0,n.copy(Or(n.content,e+1,i,r,n)))}if(e>r){let e=n.contentMatchAt(0);let i=e.fillBefore(t).append(t);t=i.append(e.matchFragment(i).fillBefore(de.empty,true))}return t}function $r(t,e,i,r){if(!r.isInline&&e==i&&t.doc.resolve(e).parent.content.size){let n=gr(t.doc,e,r.type);if(n!=null)e=i=n}t.replaceRange(e,i,new ke(de.from(r),0,0))}function _r(t,e,i){let r=t.doc.resolve(e),n=t.doc.resolve(i);let s=Br(r,n);for(let e=0;e<s.length;e++){let i=s[e],l=e==s.length-1;if(l&&i==0||r.node(i).type.contentMatch.validEnd)return t.delete(r.start(i),n.end(i));if(i>0&&(l||r.node(i-1).canReplace(r.index(i-1),n.indexAfter(i-1))))return t.delete(r.before(i),n.after(i))}for(let s=1;s<=r.depth&&s<=n.depth;s++){if(e-r.start(s)==r.depth-s&&i>r.end(s)&&n.end(s)-i!=n.depth-s)return t.delete(r.before(s),i)}t.delete(e,i)}function Br(t,e){let i=[],r=Math.min(t.depth,e.depth);for(let n=r;n>=0;n--){let r=t.start(n);if(r<t.pos-(t.depth-n)||e.end(n)>e.pos+(e.depth-n)||t.node(n).type.spec.isolating||e.node(n).type.spec.isolating)break;if(r==e.start(n)||n==t.depth&&n==e.depth&&t.parent.inlineContent&&e.parent.inlineContent&&n&&e.start(n-1)==r-1)i.push(n)}return i}class jr extends Pi{constructor(t,e,i){super();this.pos=t;this.attr=e;this.value=i}apply(t){let e=t.nodeAt(this.pos);if(!e)return Ji.fail("No node at attribute step's position");let i=Object.create(null);for(let t in e.attrs)i[t]=e.attrs[t];i[this.attr]=this.value;let r=e.type.create(i,null,e.marks);return Ji.fromReplace(t,this.pos,this.pos+1,new ke(de.from(r),0,e.isLeaf?0:1))}getMap(){return zi.empty}invert(t){return new jr(this.pos,this.attr,t.nodeAt(this.pos).attrs[this.attr])}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new jr(e.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(t,e){if(typeof e.pos!="number"||typeof e.attr!="string")throw new RangeError("Invalid input for AttrStep.fromJSON");return new jr(e.pos,e.attr,e.value)}}Pi.jsonID("attr",jr);class qr extends Pi{constructor(t,e){super();this.attr=t;this.value=e}apply(t){let e=Object.create(null);for(let i in t.attrs)e[i]=t.attrs[i];e[this.attr]=this.value;let i=t.type.create(e,t.content,t.marks);return Ji.ok(i)}getMap(){return zi.empty}invert(t){return new qr(this.attr,t.attrs[this.attr])}map(t){return this}toJSON(){return{stepType:"docAttr",attr:this.attr,value:this.value}}static fromJSON(t,e){if(typeof e.attr!="string")throw new RangeError("Invalid input for DocAttrStep.fromJSON");return new qr(e.attr,e.value)}}Pi.jsonID("docAttr",qr);let Rr=class extends Error{};Rr=function t(e){let i=Error.call(this,e);i.__proto__=t.prototype;return i};Rr.prototype=Object.create(Error.prototype);Rr.prototype.constructor=Rr;Rr.prototype.name="TransformError";class Nr{constructor(t){this.doc=t;this.steps=[];this.docs=[];this.mapping=new Ti}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new Rr(e.failed);return this}maybeStep(t){let e=t.apply(this.doc);if(!e.failed)this.addStep(t,e.doc);return e}get docChanged(){return this.steps.length>0}addStep(t,e){this.docs.push(this.doc);this.steps.push(t);this.mapping.appendMap(t.getMap());this.doc=e}replace(t,e=t,i=ke.empty){let r=kr(this.doc,t,e,i);if(r)this.step(r);return this}replaceWith(t,e,i){return this.replace(t,e,new ke(de.from(i),0,0))}delete(t,e){return this.replace(t,e,ke.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,i){Sr(this,t,e,i);return this}replaceRangeWith(t,e,i){$r(this,t,e,i);return this}deleteRange(t,e){_r(this,t,e);return this}lift(t,e){ir(this,t,e);return this}join(t,e=1){wr(this,t,e);return this}wrap(t,e){ur(this,t,e);return this}setBlockType(t,e=t,i,r=null){or(this,t,e,i,r);return this}setNodeMarkup(t,e,i=null,r){hr(this,t,e,i,r);return this}setNodeAttribute(t,e,i){this.step(new jr(t,e,i));return this}setDocAttribute(t,e){this.step(new qr(t,e));return this}addNodeMark(t,e){this.step(new Hi(t,e));return this}removeNodeMark(t,e){if(!(e instanceof ge)){let i=this.doc.nodeAt(t);if(!i)throw new RangeError("No node at position "+t);e=e.isInSet(i.marks);if(!e)return this}this.step(new Zi(t,e));return this}split(t,e=1,i){cr(this,t,e,i);return this}addMark(t,e,i){Xi(this,t,e,i);return this}removeMark(t,e,i){Yi(this,t,e,i);return this}clearIncompatible(t,e,i){Qi(this,t,e,i);return this}}const zr=Object.create(null);class Tr{constructor(t,e,i){this.$anchor=t;this.$head=e;this.ranges=i||[new Ir(t.min(e),t.max(e))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let t=this.ranges;for(let e=0;e<t.length;e++)if(t[e].$from.pos!=t[e].$to.pos)return false;return true}content(){return this.$from.doc.slice(this.from,this.to,true)}replace(t,e=ke.empty){let i=e.content.lastChild,r=null;for(let t=0;t<e.openEnd;t++){r=i;i=i.lastChild}let n=t.steps.length,s=this.ranges;for(let l=0;l<s.length;l++){let{$from:u,$to:o}=s[l],f=t.mapping.slice(n);t.replaceRange(f.map(u.pos),f.map(o.pos),l?ke.empty:e);if(l==0)Gr(t,n,(i?i.isInline:r&&r.isTextblock)?-1:1)}}replaceWith(t,e){let i=t.steps.length,r=this.ranges;for(let n=0;n<r.length;n++){let{$from:s,$to:l}=r[n],u=t.mapping.slice(i);let o=u.map(s.pos),f=u.map(l.pos);if(n){t.deleteRange(o,f)}else{t.replaceRangeWith(o,f,e);Gr(t,i,e.isInline?-1:1)}}}static findFrom(t,e,i=false){let r=t.parent.inlineContent?new Lr(t):Vr(t.node(0),t.parent,t.pos,t.index(),e,i);if(r)return r;for(let r=t.depth-1;r>=0;r--){let n=e<0?Vr(t.node(0),t.node(r),t.before(r+1),t.index(r),e,i):Vr(t.node(0),t.node(r),t.after(r+1),t.index(r)+1,e,i);if(n)return n}return null}static near(t,e=1){return this.findFrom(t,e)||this.findFrom(t,-e)||new Zr(t.node(0))}static atStart(t){return Vr(t,t,0,0,1)||new Zr(t)}static atEnd(t){return Vr(t,t,t.content.size,t.childCount,-1)||new Zr(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let i=zr[e.type];if(!i)throw new RangeError(`No selection type ${e.type} defined`);return i.fromJSON(t,e)}static jsonID(t,e){if(t in zr)throw new RangeError("Duplicate use of selection JSON ID "+t);zr[t]=e;e.prototype.jsonID=t;return e}getBookmark(){return Lr.between(this.$anchor,this.$head).getBookmark()}}Tr.prototype.visible=true;class Ir{constructor(t,e){this.$from=t;this.$to=e}}let Pr=false;function Jr(t){if(!Pr&&!t.parent.inlineContent){Pr=true;console["warn"]("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")")}}class Lr extends Tr{constructor(t,e=t){Jr(t);Jr(e);super(t,e)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,e){let i=t.resolve(e.map(this.head));if(!i.parent.inlineContent)return Tr.near(i);let r=t.resolve(e.map(this.anchor));return new Lr(r.parent.inlineContent?r:i,i)}replace(t,e=ke.empty){super.replace(t,e);if(e==ke.empty){let e=this.$from.marksAcross(this.$to);if(e)t.ensureMarks(e)}}eq(t){return t instanceof Lr&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new Ur(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(t,e){if(typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid input for TextSelection.fromJSON");return new Lr(t.resolve(e.anchor),t.resolve(e.head))}static create(t,e,i=e){let r=t.resolve(e);return new this(r,i==e?r:t.resolve(i))}static between(t,e,i){let r=t.pos-e.pos;if(!i||r)i=r>=0?1:-1;if(!e.parent.inlineContent){let t=Tr.findFrom(e,i,true)||Tr.findFrom(e,-i,true);if(t)e=t.$head;else return Tr.near(e,i)}if(!t.parent.inlineContent){if(r==0){t=e}else{t=(Tr.findFrom(t,-i,true)||Tr.findFrom(t,i,true)).$anchor;if(t.pos<e.pos!=r<0)t=e}}return new Lr(t,e)}}Tr.jsonID("text",Lr);class Ur{constructor(t,e){this.anchor=t;this.head=e}map(t){return new Ur(t.map(this.anchor),t.map(this.head))}resolve(t){return Lr.between(t.resolve(this.anchor),t.resolve(this.head))}}class Wr extends Tr{constructor(t){let e=t.nodeAfter;let i=t.node(0).resolve(t.pos+e.nodeSize);super(t,i);this.node=e}map(t,e){let{deleted:i,pos:r}=e.mapResult(this.anchor);let n=t.resolve(r);if(i)return Tr.near(n);return new Wr(n)}content(){return new ke(de.from(this.node),0,0)}eq(t){return t instanceof Wr&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new Hr(this.anchor)}static fromJSON(t,e){if(typeof e.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new Wr(t.resolve(e.anchor))}static create(t,e){return new Wr(t.resolve(e))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==false}}Wr.prototype.visible=false;Tr.jsonID("node",Wr);class Hr{constructor(t){this.anchor=t}map(t){let{deleted:e,pos:i}=t.mapResult(this.anchor);return e?new Ur(i,i):new Hr(i)}resolve(t){let e=t.resolve(this.anchor),i=e.nodeAfter;if(i&&Wr.isSelectable(i))return new Wr(e);return Tr.near(e)}}class Zr extends Tr{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,e=ke.empty){if(e==ke.empty){t.delete(0,t.doc.content.size);let e=Tr.atStart(t.doc);if(!e.eq(t.selection))t.setSelection(e)}else{super.replace(t,e)}}toJSON(){return{type:"all"}}static fromJSON(t){return new Zr(t)}map(t){return new Zr(t)}eq(t){return t instanceof Zr}getBookmark(){return Kr}}Tr.jsonID("all",Zr);const Kr={map(){return this},resolve(t){return new Zr(t)}};function Vr(t,e,i,r,n,s=false){if(e.inlineContent)return Lr.create(t,i);for(let l=r-(n>0?0:1);n>0?l<e.childCount:l>=0;l+=n){let r=e.child(l);if(!r.isAtom){let e=Vr(t,r,i+n,n<0?r.childCount:0,n,s);if(e)return e}else if(!s&&Wr.isSelectable(r)){return Wr.create(t,i-(n<0?r.nodeSize:0))}i+=r.nodeSize*n}return null}function Gr(t,e,i){let r=t.steps.length-1;if(r<e)return;let n=t.steps[r];if(!(n instanceof Ki||n instanceof Vi))return;let s=t.mapping.maps[r],l;s.forEach(((t,e,i,r)=>{if(l==null)l=r}));t.setSelection(Tr.near(t.doc.resolve(l),i))}const Xr=1,Yr=2,Qr=4;class tn extends Nr{constructor(t){super(t.doc);this.curSelectionFor=0;this.updated=0;this.meta=Object.create(null);this.time=Date.now();this.curSelection=t.selection;this.storedMarks=t.storedMarks}get selection(){if(this.curSelectionFor<this.steps.length){this.curSelection=this.curSelection.map(this.doc,this.mapping.slice(this.curSelectionFor));this.curSelectionFor=this.steps.length}return this.curSelection}setSelection(t){if(t.$from.doc!=this.doc)throw new RangeError("Selection passed to setSelection must point at the current document");this.curSelection=t;this.curSelectionFor=this.steps.length;this.updated=(this.updated|Xr)&~Yr;this.storedMarks=null;return this}get selectionSet(){return(this.updated&Xr)>0}setStoredMarks(t){this.storedMarks=t;this.updated|=Yr;return this}ensureMarks(t){if(!ge.sameSet(this.storedMarks||this.selection.$from.marks(),t))this.setStoredMarks(t);return this}addStoredMark(t){return this.ensureMarks(t.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(t){return this.ensureMarks(t.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(this.updated&Yr)>0}addStep(t,e){super.addStep(t,e);this.updated=this.updated&~Yr;this.storedMarks=null}setTime(t){this.time=t;return this}replaceSelection(t){this.selection.replace(this,t);return this}replaceSelectionWith(t,e=true){let i=this.selection;if(e)t=t.mark(this.storedMarks||(i.empty?i.$from.marks():i.$from.marksAcross(i.$to)||ge.none));i.replaceWith(this,t);return this}deleteSelection(){this.selection.replace(this);return this}insertText(t,e,i){let r=this.doc.type.schema;if(e==null){if(!t)return this.deleteSelection();return this.replaceSelectionWith(r.text(t),true)}else{if(i==null)i=e;i=i==null?e:i;if(!t)return this.deleteRange(e,i);let n=this.storedMarks;if(!n){let t=this.doc.resolve(e);n=i==e?t.marks():t.marksAcross(this.doc.resolve(i))}this.replaceRangeWith(e,i,r.text(t,n));if(!this.selection.empty)this.setSelection(Tr.near(this.selection.$to));return this}}setMeta(t,e){this.meta[typeof t=="string"?t:t.key]=e;return this}getMeta(t){return this.meta[typeof t=="string"?t:t.key]}get isGeneric(){for(let t in this.meta)return false;return true}scrollIntoView(){this.updated|=Qr;return this}get scrolledIntoView(){return(this.updated&Qr)>0}}function en(t,e){return!e||!t?t:t.bind(e)}class rn{constructor(t,e,i){this.name=t;this.init=en(e.init,i);this.apply=en(e.apply,i)}}const nn=[new rn("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new rn("selection",{init(t,e){return t.selection||Tr.atStart(e.doc)},apply(t){return t.selection}}),new rn("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,i,r){return r.selection.$cursor?t.storedMarks:null}}),new rn("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class sn{constructor(t,e){this.schema=t;this.plugins=[];this.pluginsByKey=Object.create(null);this.fields=nn.slice();if(e)e.forEach((t=>{if(this.pluginsByKey[t.key])throw new RangeError("Adding different instances of a keyed plugin ("+t.key+")");this.plugins.push(t);this.pluginsByKey[t.key]=t;if(t.spec.state)this.fields.push(new rn(t.key,t.spec.state,t))}))}}class ln{constructor(t){this.config=t}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(t){return this.applyTransaction(t).state}filterTransaction(t,e=-1){for(let i=0;i<this.config.plugins.length;i++)if(i!=e){let e=this.config.plugins[i];if(e.spec.filterTransaction&&!e.spec.filterTransaction.call(e,t,this))return false}return true}applyTransaction(t){if(!this.filterTransaction(t))return{state:this,transactions:[]};let e=[t],i=this.applyInner(t),r=null;for(;;){let n=false;for(let s=0;s<this.config.plugins.length;s++){let l=this.config.plugins[s];if(l.spec.appendTransaction){let u=r?r[s].n:0,o=r?r[s].state:this;let f=u<e.length&&l.spec.appendTransaction.call(l,u?e.slice(u):e,o,i);if(f&&i.filterTransaction(f,s)){f.setMeta("appendedTransaction",t);if(!r){r=[];for(let t=0;t<this.config.plugins.length;t++)r.push(t<s?{state:i,n:e.length}:{state:this,n:0})}e.push(f);i=i.applyInner(f);n=true}if(r)r[s]={state:i,n:e.length}}}if(!n)return{state:i,transactions:e}}}applyInner(t){if(!t.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let e=new ln(this.config),i=this.config.fields;for(let r=0;r<i.length;r++){let n=i[r];e[n.name]=n.apply(t,this[n.name],this,e)}return e}get tr(){return new tn(this)}static create(t){let e=new sn(t.doc?t.doc.type.schema:t.schema,t.plugins);let i=new ln(e);for(let r=0;r<e.fields.length;r++)i[e.fields[r].name]=e.fields[r].init(t,i);return i}reconfigure(t){let e=new sn(this.schema,t.plugins);let i=e.fields,r=new ln(e);for(let e=0;e<i.length;e++){let n=i[e].name;r[n]=this.hasOwnProperty(n)?this[n]:i[e].init(t,r)}return r}toJSON(t){let e={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks)e.storedMarks=this.storedMarks.map((t=>t.toJSON()));if(t&&typeof t=="object")for(let i in t){if(i=="doc"||i=="selection")throw new RangeError("The JSON fields `doc` and `selection` are reserved");let r=t[i],n=r.spec.state;if(n&&n.toJSON)e[i]=n.toJSON.call(r,this[r.key])}return e}static fromJSON(t,e,i){if(!e)throw new RangeError("Invalid input for EditorState.fromJSON");if(!t.schema)throw new RangeError("Required config field 'schema' missing");let r=new sn(t.schema,t.plugins);let n=new ln(r);r.fields.forEach((r=>{if(r.name=="doc"){n.doc=ze.fromJSON(t.schema,e.doc)}else if(r.name=="selection"){n.selection=Tr.fromJSON(n.doc,e.selection)}else if(r.name=="storedMarks"){if(e.storedMarks)n.storedMarks=e.storedMarks.map(t.schema.markFromJSON)}else{if(i)for(let s in i){let l=i[s],u=l.spec.state;if(l.key==r.name&&u&&u.fromJSON&&Object.prototype.hasOwnProperty.call(e,s)){n[r.name]=u.fromJSON.call(l,t,e[s],n);return}}n[r.name]=r.init(t,n)}}));return n}}function un(t,e,i){for(let r in t){let n=t[r];if(n instanceof Function)n=n.bind(e);else if(r=="handleDOMEvents")n=un(n,e,{});i[r]=n}return i}class on{constructor(t){this.spec=t;this.props={};if(t.props)un(t.props,this,this.props);this.key=t.key?t.key.key:hn("plugin")}getState(t){return t[this.key]}}const fn=Object.create(null);function hn(t){if(t in fn)return t+"$"+ ++fn[t];fn[t]=0;return t+"$"}class an{constructor(t="key"){this.key=hn(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const cn=function(t){for(var e=0;;e++){t=t.previousSibling;if(!t)return e}};const dn=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let pn=null;const mn=function(t,e,i){let r=pn||(pn=document.createRange());r.setEnd(t,i==null?t.nodeValue.length:i);r.setStart(t,e||0);return r};const wn=function(t,e,i,r){return i&&(bn(t,e,i,r,-1)||bn(t,e,i,r,1))};const gn=/^(img|br|input|textarea|hr)$/i;function bn(t,e,i,r,n){for(;;){if(t==i&&e==r)return true;if(e==(n<0?0:kn(t))){let i=t.parentNode;if(!i||i.nodeType!=1||vn(t)||gn.test(t.nodeName)||t.contentEditable=="false")return false;e=cn(t)+(n<0?0:1);t=i}else if(t.nodeType==1){t=t.childNodes[e+(n<0?-1:0)];if(t.contentEditable=="false")return false;e=n<0?kn(t):0}else{return false}}}function kn(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Dn(t,e,i){for(let r=e==0,n=e==kn(t);r||n;){if(t==i)return true;let e=cn(t);t=t.parentNode;if(!t)return false;r=r&&e==0;n=n&&e==kn(t)}}function vn(t){let e;for(let i=t;i;i=i.parentNode)if(e=i.pmViewDesc)break;return e&&e.node&&e.node.isBlock&&(e.dom==t||e.contentDOM==t)}const yn=function(t){return t.focusNode&&wn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function Fn(t,e){let i=document.createEvent("Event");i.initEvent("keydown",true,true);i.keyCode=t;i.key=i.code=e;return i}function En(t){let e=t.activeElement;while(e&&e.shadowRoot)e=e.shadowRoot.activeElement;return e}function xn(t,e,i){if(t.caretPositionFromPoint){try{let r=t.caretPositionFromPoint(e,i);if(r)return{node:r.offsetNode,offset:r.offset}}catch(t){}}if(t.caretRangeFromPoint){let r=t.caretRangeFromPoint(e,i);if(r)return{node:r.startContainer,offset:r.startOffset}}}const Mn=typeof navigator!="undefined"?navigator:null;const An=typeof document!="undefined"?document:null;const Cn=Mn&&Mn.userAgent||"";const Sn=/Edge\/(\d+)/.exec(Cn);const On=/MSIE \d/.exec(Cn);const $n=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Cn);const _n=!!(On||$n||Sn);const Bn=On?document.documentMode:$n?+$n[1]:Sn?+Sn[1]:0;const jn=!_n&&/gecko\/(\d+)/i.test(Cn);jn&&+(/Firefox\/(\d+)/.exec(Cn)||[0,0])[1];const qn=!_n&&/Chrome\/(\d+)/.exec(Cn);const Rn=!!qn;const Nn=qn?+qn[1]:0;const zn=!_n&&!!Mn&&/Apple Computer/.test(Mn.vendor);const Tn=zn&&(/Mobile\/\w+/.test(Cn)||!!Mn&&Mn.maxTouchPoints>2);const In=Tn||(Mn?/Mac/.test(Mn.platform):false);const Pn=Mn?/Win/.test(Mn.platform):false;const Jn=/Android \d/.test(Cn);const Ln=!!An&&"webkitFontSmoothing"in An.documentElement.style;const Un=Ln?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function Wn(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function Hn(t,e){return typeof t=="number"?t:t[e]}function Zn(t){let e=t.getBoundingClientRect();let i=e.width/t.offsetWidth||1;let r=e.height/t.offsetHeight||1;return{left:e.left,right:e.left+t.clientWidth*i,top:e.top,bottom:e.top+t.clientHeight*r}}function Kn(t,e,i){let r=t.someProp("scrollThreshold")||0,n=t.someProp("scrollMargin")||5;let s=t.dom.ownerDocument;for(let l=i||t.dom;;l=dn(l)){if(!l)break;if(l.nodeType!=1)continue;let t=l;let i=t==s.body;let u=i?Wn(s):Zn(t);let o=0,f=0;if(e.top<u.top+Hn(r,"top"))f=-(u.top-e.top+Hn(n,"top"));else if(e.bottom>u.bottom-Hn(r,"bottom"))f=e.bottom-e.top>u.bottom-u.top?e.top+Hn(n,"top")-u.top:e.bottom-u.bottom+Hn(n,"bottom");if(e.left<u.left+Hn(r,"left"))o=-(u.left-e.left+Hn(n,"left"));else if(e.right>u.right-Hn(r,"right"))o=e.right-u.right+Hn(n,"right");if(o||f){if(i){s.defaultView.scrollBy(o,f)}else{let i=t.scrollLeft,r=t.scrollTop;if(f)t.scrollTop+=f;if(o)t.scrollLeft+=o;let n=t.scrollLeft-i,s=t.scrollTop-r;e={left:e.left-n,top:e.top-s,right:e.right-n,bottom:e.bottom-s}}}if(i||/^(fixed|sticky)$/.test(getComputedStyle(l).position))break}}function Vn(t){let e=t.dom.getBoundingClientRect(),i=Math.max(0,e.top);let r,n;for(let s=(e.left+e.right)/2,l=i+1;l<Math.min(innerHeight,e.bottom);l+=5){let e=t.root.elementFromPoint(s,l);if(!e||e==t.dom||!t.dom.contains(e))continue;let u=e.getBoundingClientRect();if(u.top>=i-20){r=e;n=u.top;break}}return{refDOM:r,refTop:n,stack:Gn(t.dom)}}function Gn(t){let e=[],i=t.ownerDocument;for(let r=t;r;r=dn(r)){e.push({dom:r,top:r.scrollTop,left:r.scrollLeft});if(t==i)break}return e}function Xn({refDOM:t,refTop:e,stack:i}){let r=t?t.getBoundingClientRect().top:0;Yn(i,r==0?0:r-e)}function Yn(t,e){for(let i=0;i<t.length;i++){let{dom:r,top:n,left:s}=t[i];if(r.scrollTop!=n+e)r.scrollTop=n+e;if(r.scrollLeft!=s)r.scrollLeft=s}}let Qn=null;function ts(t){if(t.setActive)return t.setActive();if(Qn)return t.focus(Qn);let e=Gn(t);t.focus(Qn==null?{get preventScroll(){Qn={preventScroll:true};return true}}:undefined);if(!Qn){Qn=false;Yn(e,0)}}function es(t,e){let i,r=2e8,n,s=0;let l=e.top,u=e.top;let o,f;for(let h=t.firstChild,a=0;h;h=h.nextSibling,a++){let t;if(h.nodeType==1)t=h.getClientRects();else if(h.nodeType==3)t=mn(h).getClientRects();else continue;for(let c=0;c<t.length;c++){let d=t[c];if(d.top<=l&&d.bottom>=u){l=Math.max(d.bottom,l);u=Math.min(d.top,u);let t=d.left>e.left?d.left-e.left:d.right<e.left?e.left-d.right:0;if(t<r){i=h;r=t;n=t&&i.nodeType==3?{left:d.right<e.left?d.right:d.left,top:e.top}:e;if(h.nodeType==1&&t)s=a+(e.left>=(d.left+d.right)/2?1:0);continue}}else if(d.top>e.top&&!o&&d.left<=e.left&&d.right>=e.left){o=h;f={left:Math.max(d.left,Math.min(d.right,e.left)),top:d.top}}if(!i&&(e.left>=d.right&&e.top>=d.top||e.left>=d.left&&e.top>=d.bottom))s=a+1}}if(!i&&o){i=o;n=f;r=0}if(i&&i.nodeType==3)return is(i,n);if(!i||r&&i.nodeType==1)return{node:t,offset:s};return es(i,n)}function is(t,e){let i=t.nodeValue.length;let r=document.createRange();for(let n=0;n<i;n++){r.setEnd(t,n+1);r.setStart(t,n);let i=as(r,1);if(i.top==i.bottom)continue;if(rs(e,i))return{node:t,offset:n+(e.left>=(i.left+i.right)/2?1:0)}}return{node:t,offset:0}}function rs(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function ns(t,e){let i=t.parentNode;if(i&&/^li$/i.test(i.nodeName)&&e.left<t.getBoundingClientRect().left)return i;return t}function ss(t,e,i){let{node:r,offset:n}=es(e,i),s=-1;if(r.nodeType==1&&!r.firstChild){let t=r.getBoundingClientRect();s=t.left!=t.right&&i.left>(t.left+t.right)/2?1:-1}return t.docView.posFromDOM(r,n,s)}function ls(t,e,i,r){let n=-1;for(let i=e,s=false;;){if(i==t.dom)break;let e=t.docView.nearestDesc(i,true);if(!e)return null;if(e.dom.nodeType==1&&(e.node.isBlock&&e.parent&&!s||!e.contentDOM)){let t=e.dom.getBoundingClientRect();if(e.node.isBlock&&e.parent&&!s){s=true;if(t.left>r.left||t.top>r.top)n=e.posBefore;else if(t.right<r.left||t.bottom<r.top)n=e.posAfter}if(!e.contentDOM&&n<0&&!e.node.isText){let i=e.node.isBlock?r.top<(t.top+t.bottom)/2:r.left<(t.left+t.right)/2;return i?e.posBefore:e.posAfter}}i=e.dom.parentNode}return n>-1?n:t.docView.posFromDOM(e,i,-1)}function us(t,e,i){let r=t.childNodes.length;if(r&&i.top<i.bottom){for(let n=Math.max(0,Math.min(r-1,Math.floor(r*(e.top-i.top)/(i.bottom-i.top))-2)),s=n;;){let i=t.childNodes[s];if(i.nodeType==1){let t=i.getClientRects();for(let r=0;r<t.length;r++){let n=t[r];if(rs(e,n))return us(i,e,n)}}if((s=(s+1)%r)==n)break}}return t}function fs(t,e){let i=t.dom.ownerDocument,r,n=0;let s=xn(i,e.left,e.top);if(s)({node:r,offset:n}=s);let l=(t.root.elementFromPoint?t.root:i).elementFromPoint(e.left,e.top);let u;if(!l||!t.dom.contains(l.nodeType!=1?l.parentNode:l)){let i=t.dom.getBoundingClientRect();if(!rs(e,i))return null;l=us(t.dom,e,i);if(!l)return null}if(zn){for(let t=l;r&&t;t=dn(t))if(t.draggable)r=undefined}l=ns(l,e);if(r){if(jn&&r.nodeType==1){n=Math.min(n,r.childNodes.length);if(n<r.childNodes.length){let t=r.childNodes[n],i;if(t.nodeName=="IMG"&&(i=t.getBoundingClientRect()).right<=e.left&&i.bottom>e.top)n++}}let i;if(Ln&&n&&r.nodeType==1&&(i=r.childNodes[n-1]).nodeType==1&&i.contentEditable=="false"&&i.getBoundingClientRect().top>=e.top)n--;if(r==t.dom&&n==r.childNodes.length-1&&r.lastChild.nodeType==1&&e.top>r.lastChild.getBoundingClientRect().bottom)u=t.state.doc.content.size;else if(n==0||r.nodeType!=1||r.childNodes[n-1].nodeName!="BR")u=ls(t,r,n,e)}if(u==null)u=ss(t,l,e);let o=t.docView.nearestDesc(l,true);return{pos:u,inside:o?o.posAtStart-o.border:-1}}function hs(t){return t.top<t.bottom||t.left<t.right}function as(t,e){let i=t.getClientRects();if(i.length){let t=i[e<0?0:i.length-1];if(hs(t))return t}return Array.prototype.find.call(i,hs)||t.getBoundingClientRect()}const cs=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function ds(t,e,i){let{node:r,offset:n,atom:s}=t.docView.domFromPos(e,i<0?-1:1);let l=Ln||jn;if(r.nodeType==3){if(l&&(cs.test(r.nodeValue)||(i<0?!n:n==r.nodeValue.length))){let t=as(mn(r,n,n),i);if(jn&&n&&/\s/.test(r.nodeValue[n-1])&&n<r.nodeValue.length){let e=as(mn(r,n-1,n-1),-1);if(e.top==t.top){let i=as(mn(r,n,n+1),-1);if(i.top!=t.top)return ps(i,i.left<e.left)}}return t}else{let t=n,e=n,s=i<0?1:-1;if(i<0&&!n){e++;s=-1}else if(i>=0&&n==r.nodeValue.length){t--;s=1}else if(i<0){t--}else{e++}return ps(as(mn(r,t,e),s),s<0)}}let u=t.state.doc.resolve(e-(s||0));if(!u.parent.inlineContent){if(s==null&&n&&(i<0||n==kn(r))){let t=r.childNodes[n-1];if(t.nodeType==1)return ms(t.getBoundingClientRect(),false)}if(s==null&&n<kn(r)){let t=r.childNodes[n];if(t.nodeType==1)return ms(t.getBoundingClientRect(),true)}return ms(r.getBoundingClientRect(),i>=0)}if(s==null&&n&&(i<0||n==kn(r))){let t=r.childNodes[n-1];let e=t.nodeType==3?mn(t,kn(t)-(l?0:1)):t.nodeType==1&&(t.nodeName!="BR"||!t.nextSibling)?t:null;if(e)return ps(as(e,1),false)}if(s==null&&n<kn(r)){let t=r.childNodes[n];while(t.pmViewDesc&&t.pmViewDesc.ignoreForCoords)t=t.nextSibling;let e=!t?null:t.nodeType==3?mn(t,0,l?0:1):t.nodeType==1?t:null;if(e)return ps(as(e,-1),true)}return ps(as(r.nodeType==3?mn(r):r,-i),i>=0)}function ps(t,e){if(t.width==0)return t;let i=e?t.left:t.right;return{top:t.top,bottom:t.bottom,left:i,right:i}}function ms(t,e){if(t.height==0)return t;let i=e?t.top:t.bottom;return{top:i,bottom:i,left:t.left,right:t.right}}function ws(t,e,i){let r=t.state,n=t.root.activeElement;if(r!=e)t.updateState(e);if(n!=t.dom)t.focus();try{return i()}finally{if(r!=e)t.updateState(r);if(n!=t.dom&&n)n.focus()}}function gs(t,e,i){let r=e.selection;let n=i=="up"?r.$from:r.$to;return ws(t,e,(()=>{let{node:e}=t.docView.domFromPos(n.pos,i=="up"?-1:1);for(;;){let i=t.docView.nearestDesc(e,true);if(!i)break;if(i.node.isBlock){e=i.contentDOM||i.dom;break}e=i.dom.parentNode}let r=ds(t,n.pos,1);for(let t=e.firstChild;t;t=t.nextSibling){let e;if(t.nodeType==1)e=t.getClientRects();else if(t.nodeType==3)e=mn(t,0,t.nodeValue.length).getClientRects();else continue;for(let t=0;t<e.length;t++){let n=e[t];if(n.bottom>n.top+1&&(i=="up"?r.top-n.top>(n.bottom-r.top)*2:n.bottom-r.bottom>(r.bottom-n.top)*2))return false}}return true}))}const bs=/[\u0590-\u08ac]/;function ks(t,e,i){let{$head:r}=e.selection;if(!r.parent.isTextblock)return false;let n=r.parentOffset,s=!n,l=n==r.parent.content.size;let u=t.domSelection();if(!bs.test(r.parent.textContent)||!u.modify)return i=="left"||i=="backward"?s:l;return ws(t,e,(()=>{let{focusNode:e,focusOffset:n,anchorNode:s,anchorOffset:l}=t.domSelectionRange();let o=u.caretBidiLevel;u.modify("move",i,"character");let f=r.depth?t.docView.domAfterPos(r.before()):t.dom;let{focusNode:h,focusOffset:a}=t.domSelectionRange();let c=h&&!f.contains(h.nodeType==1?h:h.parentNode)||e==h&&n==a;try{u.collapse(s,l);if(e&&(e!=s||n!=l)&&u.extend)u.extend(e,n)}catch(t){}if(o!=null)u.caretBidiLevel=o;return c}))}let Ds=null;let vs=null;let ys=false;function Fs(t,e,i){if(Ds==e&&vs==i)return ys;Ds=e;vs=i;return ys=i=="up"||i=="down"?gs(t,e,i):ks(t,e,i)}const Es=0,xs=1,Ms=2,As=3;class Cs{constructor(t,e,i,r){this.parent=t;this.children=e;this.dom=i;this.contentDOM=r;this.dirty=Es;i.pmViewDesc=this}matchesWidget(t){return false}matchesMark(t){return false}matchesNode(t,e,i){return false}matchesHack(t){return false}parseRule(){return null}stopEvent(t){return false}get size(){let t=0;for(let e=0;e<this.children.length;e++)t+=this.children[e].size;return t}get border(){return 0}destroy(){this.parent=undefined;if(this.dom.pmViewDesc==this)this.dom.pmViewDesc=undefined;for(let t=0;t<this.children.length;t++)this.children[t].destroy()}posBeforeChild(t){for(let e=0,i=this.posAtStart;;e++){let r=this.children[e];if(r==t)return i;i+=r.size}}get posBefore(){return this.parent.posBeforeChild(this)}get posAtStart(){return this.parent?this.parent.posBeforeChild(this)+this.border:0}get posAfter(){return this.posBefore+this.size}get posAtEnd(){return this.posAtStart+this.size-2*this.border}localPosFromDOM(t,e,i){if(this.contentDOM&&this.contentDOM.contains(t.nodeType==1?t:t.parentNode)){if(i<0){let i,r;if(t==this.contentDOM){i=t.childNodes[e-1]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;i=t.previousSibling}while(i&&!((r=i.pmViewDesc)&&r.parent==this))i=i.previousSibling;return i?this.posBeforeChild(r)+r.size:this.posAtStart}else{let i,r;if(t==this.contentDOM){i=t.childNodes[e]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;i=t.nextSibling}while(i&&!((r=i.pmViewDesc)&&r.parent==this))i=i.nextSibling;return i?this.posBeforeChild(r):this.posAtEnd}}let r;if(t==this.dom&&this.contentDOM){r=e>cn(this.contentDOM)}else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM)){r=t.compareDocumentPosition(this.contentDOM)&2}else if(this.dom.firstChild){if(e==0)for(let e=t;;e=e.parentNode){if(e==this.dom){r=false;break}if(e.previousSibling)break}if(r==null&&e==t.childNodes.length)for(let e=t;;e=e.parentNode){if(e==this.dom){r=true;break}if(e.nextSibling)break}}return(r==null?i>0:r)?this.posAtEnd:this.posAtStart}nearestDesc(t,e=false){for(let i=true,r=t;r;r=r.parentNode){let n=this.getDesc(r),s;if(n&&(!e||n.node)){if(i&&(s=n.nodeDOM)&&!(s.nodeType==1?s.contains(t.nodeType==1?t:t.parentNode):s==t))i=false;else return n}}}getDesc(t){let e=t.pmViewDesc;for(let t=e;t;t=t.parent)if(t==this)return e}posFromDOM(t,e,i){for(let r=t;r;r=r.parentNode){let n=this.getDesc(r);if(n)return n.localPosFromDOM(t,e,i)}return-1}descAt(t){for(let e=0,i=0;e<this.children.length;e++){let r=this.children[e],n=i+r.size;if(i==t&&n!=i){while(!r.border&&r.children.length)r=r.children[0];return r}if(t<n)return r.descAt(t-i-r.border);i=n}}domFromPos(t,e){if(!this.contentDOM)return{node:this.dom,offset:0,atom:t+1};let i=0,r=0;for(let e=0;i<this.children.length;i++){let n=this.children[i],s=e+n.size;if(s>t||n instanceof qs){r=t-e;break}e=s}if(r)return this.children[i].domFromPos(r-this.children[i].border,e);for(let t;i&&!(t=this.children[i-1]).size&&t instanceof Ss&&t.side>=0;i--){}if(e<=0){let t,r=true;for(;;i--,r=false){t=i?this.children[i-1]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&e&&r&&!t.border&&!t.domAtom)return t.domFromPos(t.size,e);return{node:this.contentDOM,offset:t?cn(t.dom)+1:0}}else{let t,r=true;for(;;i++,r=false){t=i<this.children.length?this.children[i]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&r&&!t.border&&!t.domAtom)return t.domFromPos(0,e);return{node:this.contentDOM,offset:t?cn(t.dom):this.contentDOM.childNodes.length}}}parseRange(t,e,i=0){if(this.children.length==0)return{node:this.contentDOM,from:t,to:e,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let r=-1,n=-1;for(let s=i,l=0;;l++){let i=this.children[l],u=s+i.size;if(r==-1&&t<=u){let n=s+i.border;if(t>=n&&e<=u-i.border&&i.node&&i.contentDOM&&this.contentDOM.contains(i.contentDOM))return i.parseRange(t,e,n);t=s;for(let e=l;e>0;e--){let i=this.children[e-1];if(i.size&&i.dom.parentNode==this.contentDOM&&!i.emptyChildAt(1)){r=cn(i.dom)+1;break}t-=i.size}if(r==-1)r=0}if(r>-1&&(u>e||l==this.children.length-1)){e=u;for(let t=l+1;t<this.children.length;t++){let i=this.children[t];if(i.size&&i.dom.parentNode==this.contentDOM&&!i.emptyChildAt(-1)){n=cn(i.dom);break}e+=i.size}if(n==-1)n=this.contentDOM.childNodes.length;break}s=u}return{node:this.contentDOM,from:t,to:e,fromOffset:r,toOffset:n}}emptyChildAt(t){if(this.border||!this.contentDOM||!this.children.length)return false;let e=this.children[t<0?0:this.children.length-1];return e.size==0||e.emptyChildAt(t)}domAfterPos(t){let{node:e,offset:i}=this.domFromPos(t,0);if(e.nodeType!=1||i==e.childNodes.length)throw new RangeError("No node after pos "+t);return e.childNodes[i]}setSelection(t,e,i,r=false){let n=Math.min(t,e),s=Math.max(t,e);for(let l=0,u=0;l<this.children.length;l++){let o=this.children[l],f=u+o.size;if(n>u&&s<f)return o.setSelection(t-u-o.border,e-u-o.border,i,r);u=f}let l=this.domFromPos(t,t?-1:1);let u=e==t?l:this.domFromPos(e,e?-1:1);let o=i.getSelection();let f=false;if((jn||zn)&&t==e){let{node:t,offset:e}=l;if(t.nodeType==3){f=!!(e&&t.nodeValue[e-1]=="\n");if(f&&e==t.nodeValue.length){for(let e=t,i;e;e=e.parentNode){if(i=e.nextSibling){if(i.nodeName=="BR")l=u={node:i.parentNode,offset:cn(i)+1};break}let t=e.pmViewDesc;if(t&&t.node&&t.node.isBlock)break}}}else{let i=t.childNodes[e-1];f=i&&(i.nodeName=="BR"||i.contentEditable=="false")}}if(jn&&o.focusNode&&o.focusNode!=u.node&&o.focusNode.nodeType==1){let t=o.focusNode.childNodes[o.focusOffset];if(t&&t.contentEditable=="false")r=true}if(!(r||f&&zn)&&wn(l.node,l.offset,o.anchorNode,o.anchorOffset)&&wn(u.node,u.offset,o.focusNode,o.focusOffset))return;let h=false;if((o.extend||t==e)&&!f){o.collapse(l.node,l.offset);try{if(t!=e)o.extend(u.node,u.offset);h=true}catch(t){}}if(!h){if(t>e){let t=l;l=u;u=t}let i=document.createRange();i.setEnd(u.node,u.offset);i.setStart(l.node,l.offset);o.removeAllRanges();o.addRange(i)}}ignoreMutation(t){return!this.contentDOM&&t.type!="selection"}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(t,e){for(let i=0,r=0;r<this.children.length;r++){let n=this.children[r],s=i+n.size;if(i==s?t<=s&&e>=i:t<s&&e>i){let r=i+n.border,l=s-n.border;if(t>=r&&e<=l){this.dirty=t==i||e==s?Ms:xs;if(t==r&&e==l&&(n.contentLost||n.dom.parentNode!=this.contentDOM))n.dirty=As;else n.markDirty(t-r,e-r);return}else{n.dirty=n.dom==n.contentDOM&&n.dom.parentNode==this.contentDOM&&!n.children.length?Ms:As}}i=s}this.dirty=Ms}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let i=t==1?Ms:xs;if(e.dirty<i)e.dirty=i}}get domAtom(){return false}get ignoreForCoords(){return false}}class Ss extends Cs{constructor(t,e,i,r){let n,s=e.type.toDOM;if(typeof s=="function")s=s(i,(()=>{if(!n)return r;if(n.parent)return n.parent.posBeforeChild(n)}));if(!e.type.spec.raw){if(s.nodeType!=1){let t=document.createElement("span");t.appendChild(s);s=t}s.contentEditable="false";s.classList.add("ProseMirror-widget")}super(t,[],s,null);this.widget=e;this.widget=e;n=this}matchesWidget(t){return this.dirty==Es&&t.type.eq(this.widget.type)}parseRule(){return{ignore:true}}stopEvent(t){let e=this.widget.spec.stopEvent;return e?e(t):false}ignoreMutation(t){return t.type!="selection"||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom);super.destroy()}get domAtom(){return true}get side(){return this.widget.type.side}}class Os extends Cs{constructor(t,e,i,r){super(t,[],e,null);this.textDOM=i;this.text=r}get size(){return this.text.length}localPosFromDOM(t,e){if(t!=this.textDOM)return this.posAtStart+(e?this.size:0);return this.posAtStart+e}domFromPos(t){return{node:this.textDOM,offset:t}}ignoreMutation(t){return t.type==="characterData"&&t.target.nodeValue==t.oldValue}}class $s extends Cs{constructor(t,e,i,r){super(t,[],i,r);this.mark=e}static create(t,e,i,r){let n=r.nodeViews[e.type.name];let s=n&&n(e,r,i);if(!s||!s.dom)s=xi.renderSpec(document,e.type.spec.toDOM(e,i));return new $s(t,e,s.dom,s.contentDOM||s.dom)}parseRule(){if(this.dirty&As||this.mark.type.spec.reparseInView)return null;return{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(t){return this.dirty!=As&&this.mark.eq(t)}markDirty(t,e){super.markDirty(t,e);if(this.dirty!=Es){let t=this.parent;while(!t.node)t=t.parent;if(t.dirty<this.dirty)t.dirty=this.dirty;this.dirty=Es}}slice(t,e,i){let r=$s.create(this.parent,this.mark,true,i);let n=this.children,s=this.size;if(e<s)n=Qs(n,e,s,i);if(t>0)n=Qs(n,0,t,i);for(let t=0;t<n.length;t++)n[t].parent=r;r.children=n;return r}}class _s extends Cs{constructor(t,e,i,r,n,s,l,u,o){super(t,[],n,s);this.node=e;this.outerDeco=i;this.innerDeco=r;this.nodeDOM=l}static create(t,e,i,r,n,s){let l=n.nodeViews[e.type.name],u;let o=l&&l(e,n,(()=>{if(!u)return s;if(u.parent)return u.parent.posBeforeChild(u)}),i,r);let f=o&&o.dom,h=o&&o.contentDOM;if(e.isText){if(!f)f=document.createTextNode(e.text);else if(f.nodeType!=3)throw new RangeError("Text must be rendered as a DOM text node")}else if(!f){({dom:f,contentDOM:h}=xi.renderSpec(document,e.type.spec.toDOM(e)))}if(!h&&!e.isText&&f.nodeName!="BR"){if(!f.hasAttribute("contenteditable"))f.contentEditable="false";if(e.type.spec.draggable)f.draggable=true}let a=f;f=Ls(f,i,e);if(o)return u=new Rs(t,e,i,r,f,h||null,a,o,n,s+1);else if(e.isText)return new js(t,e,i,r,f,a,n);else return new _s(t,e,i,r,f,h||null,a,n,s+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let t={node:this.node.type.name,attrs:this.node.attrs};if(this.node.type.whitespace=="pre")t.preserveWhitespace="full";if(!this.contentDOM){t.getContent=()=>this.node.content}else if(!this.contentLost){t.contentElement=this.contentDOM}else{for(let e=this.children.length-1;e>=0;e--){let i=this.children[e];if(this.dom.contains(i.dom.parentNode)){t.contentElement=i.dom.parentNode;break}}if(!t.contentElement)t.getContent=()=>de.empty}return t}matchesNode(t,e,i){return this.dirty==Es&&t.eq(this.node)&&Us(e,this.outerDeco)&&i.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(t,e){let i=this.node.inlineContent,r=e;let n=t.composing?this.localCompositionInfo(t,e):null;let s=n&&n.pos>-1?n:null;let l=n&&n.pos<0;let u=new Hs(this,s&&s.node,t);Vs(this.node,this.innerDeco,((e,n,s)=>{if(e.spec.marks)u.syncToMarks(e.spec.marks,i,t);else if(e.type.side>=0&&!s)u.syncToMarks(n==this.node.childCount?ge.none:this.node.child(n).marks,i,t);u.placeWidget(e,t,r)}),((e,s,o,f)=>{u.syncToMarks(e.marks,i,t);let h;if(u.findNodeMatch(e,s,o,f));else if(l&&t.state.selection.from>r&&t.state.selection.to<r+e.nodeSize&&(h=u.findIndexWithChild(n.node))>-1&&u.updateNodeAt(e,s,o,h,t));else if(u.updateNextNode(e,s,o,t,f,r));else{u.addNode(e,s,o,t,r)}r+=e.nodeSize}));u.syncToMarks([],i,t);if(this.node.isTextblock)u.addTextblockHacks();u.destroyRest();if(u.changed||this.dirty==Ms){if(s)this.protectLocalComposition(t,s);Ns(this.contentDOM,this.children,t);if(Tn)Gs(this.dom)}}localCompositionInfo(t,e){let{from:i,to:r}=t.state.selection;if(!(t.state.selection instanceof Lr)||i<e||r>e+this.node.content.size)return null;let n=t.domSelectionRange();let s=Xs(n.focusNode,n.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let t=s.nodeValue;let n=Ys(this.node.content,t,i-e,r-e);return n<0?null:{node:s,pos:n,text:t}}else{return{node:s,pos:-1,text:""}}}protectLocalComposition(t,{node:e,pos:i,text:r}){if(this.getDesc(e))return;let n=e;for(;;n=n.parentNode){if(n.parentNode==this.contentDOM)break;while(n.previousSibling)n.parentNode.removeChild(n.previousSibling);while(n.nextSibling)n.parentNode.removeChild(n.nextSibling);if(n.pmViewDesc)n.pmViewDesc=undefined}let s=new Os(this,n,e,r);t.input.compositionNodes.push(s);this.children=Qs(this.children,i,i+r.length,t,s)}update(t,e,i,r){if(this.dirty==As||!t.sameMarkup(this.node))return false;this.updateInner(t,e,i,r);return true}updateInner(t,e,i,r){this.updateOuterDeco(e);this.node=t;this.innerDeco=i;if(this.contentDOM)this.updateChildren(r,this.posAtStart);this.dirty=Es}updateOuterDeco(t){if(Us(t,this.outerDeco))return;let e=this.nodeDOM.nodeType!=1;let i=this.dom;this.dom=Ps(this.dom,this.nodeDOM,Is(this.outerDeco,this.node,e),Is(t,this.node,e));if(this.dom!=i){i.pmViewDesc=undefined;this.dom.pmViewDesc=this}this.outerDeco=t}selectNode(){if(this.nodeDOM.nodeType==1)this.nodeDOM.classList.add("ProseMirror-selectednode");if(this.contentDOM||!this.node.type.spec.draggable)this.dom.draggable=true}deselectNode(){if(this.nodeDOM.nodeType==1)this.nodeDOM.classList.remove("ProseMirror-selectednode");if(this.contentDOM||!this.node.type.spec.draggable)this.dom.removeAttribute("draggable")}get domAtom(){return this.node.isAtom}}function Bs(t,e,i,r,n){Ls(r,e,t);let s=new _s(undefined,t,e,i,r,r,r,n,0);if(s.contentDOM)s.updateChildren(n,0);return s}class js extends _s{constructor(t,e,i,r,n,s,l){super(t,e,i,r,n,null,s,l,0)}parseRule(){let t=this.nodeDOM.parentNode;while(t&&t!=this.dom&&!t.pmIsDeco)t=t.parentNode;return{skip:t||true}}update(t,e,i,r){if(this.dirty==As||this.dirty!=Es&&!this.inParent()||!t.sameMarkup(this.node))return false;this.updateOuterDeco(e);if((this.dirty!=Es||t.text!=this.node.text)&&t.text!=this.nodeDOM.nodeValue){this.nodeDOM.nodeValue=t.text;if(r.trackWrites==this.nodeDOM)r.trackWrites=null}this.node=t;this.dirty=Es;return true}inParent(){let t=this.parent.contentDOM;for(let e=this.nodeDOM;e;e=e.parentNode)if(e==t)return true;return false}domFromPos(t){return{node:this.nodeDOM,offset:t}}localPosFromDOM(t,e,i){if(t==this.nodeDOM)return this.posAtStart+Math.min(e,this.node.text.length);return super.localPosFromDOM(t,e,i)}ignoreMutation(t){return t.type!="characterData"&&t.type!="selection"}slice(t,e,i){let r=this.node.cut(t,e),n=document.createTextNode(r.text);return new js(this.parent,r,this.outerDeco,this.innerDeco,n,n,i)}markDirty(t,e){super.markDirty(t,e);if(this.dom!=this.nodeDOM&&(t==0||e==this.nodeDOM.nodeValue.length))this.dirty=As}get domAtom(){return false}}class qs extends Cs{parseRule(){return{ignore:true}}matchesHack(t){return this.dirty==Es&&this.dom.nodeName==t}get domAtom(){return true}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Rs extends _s{constructor(t,e,i,r,n,s,l,u,o,f){super(t,e,i,r,n,s,l,o,f);this.spec=u}update(t,e,i,r){if(this.dirty==As)return false;if(this.spec.update){let n=this.spec.update(t,e,i);if(n)this.updateInner(t,e,i,r);return n}else if(!this.contentDOM&&!t.isLeaf){return false}else{return super.update(t,e,i,r)}}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(t,e,i,r){this.spec.setSelection?this.spec.setSelection(t,e,i):super.setSelection(t,e,i,r)}destroy(){if(this.spec.destroy)this.spec.destroy();super.destroy()}stopEvent(t){return this.spec.stopEvent?this.spec.stopEvent(t):false}ignoreMutation(t){return this.spec.ignoreMutation?this.spec.ignoreMutation(t):super.ignoreMutation(t)}}function Ns(t,e,i){let r=t.firstChild,n=false;for(let s=0;s<e.length;s++){let l=e[s],u=l.dom;if(u.parentNode==t){while(u!=r){r=Ws(r);n=true}r=r.nextSibling}else{n=true;t.insertBefore(u,r)}if(l instanceof $s){let e=r?r.previousSibling:t.lastChild;Ns(l.contentDOM,l.children,i);r=e?e.nextSibling:t.firstChild}}while(r){r=Ws(r);n=true}if(n&&i.trackWrites==t)i.trackWrites=null}const zs=function(t){if(t)this.nodeName=t};zs.prototype=Object.create(null);const Ts=[new zs];function Is(t,e,i){if(t.length==0)return Ts;let r=i?Ts[0]:new zs,n=[r];for(let s=0;s<t.length;s++){let l=t[s].type.attrs;if(!l)continue;if(l.nodeName)n.push(r=new zs(l.nodeName));for(let t in l){let s=l[t];if(s==null)continue;if(i&&n.length==1)n.push(r=new zs(e.isInline?"span":"div"));if(t=="class")r.class=(r.class?r.class+" ":"")+s;else if(t=="style")r.style=(r.style?r.style+";":"")+s;else if(t!="nodeName")r[t]=s}}return n}function Ps(t,e,i,r){if(i==Ts&&r==Ts)return e;let n=e;for(let e=0;e<r.length;e++){let s=r[e],l=i[e];if(e){let e;if(l&&l.nodeName==s.nodeName&&n!=t&&(e=n.parentNode)&&e.nodeName.toLowerCase()==s.nodeName){n=e}else{e=document.createElement(s.nodeName);e.pmIsDeco=true;e.appendChild(n);l=Ts[0];n=e}}Js(n,l||Ts[0],s)}return n}function Js(t,e,i){for(let r in e)if(r!="class"&&r!="style"&&r!="nodeName"&&!(r in i))t.removeAttribute(r);for(let r in i)if(r!="class"&&r!="style"&&r!="nodeName"&&i[r]!=e[r])t.setAttribute(r,i[r]);if(e.class!=i.class){let r=e.class?e.class.split(" ").filter(Boolean):[];let n=i.class?i.class.split(" ").filter(Boolean):[];for(let e=0;e<r.length;e++)if(n.indexOf(r[e])==-1)t.classList.remove(r[e]);for(let e=0;e<n.length;e++)if(r.indexOf(n[e])==-1)t.classList.add(n[e]);if(t.classList.length==0)t.removeAttribute("class")}if(e.style!=i.style){if(e.style){let i=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g,r;while(r=i.exec(e.style))t.style.removeProperty(r[1])}if(i.style)t.style.cssText+=i.style}}function Ls(t,e,i){return Ps(t,t,Ts,Is(e,i,t.nodeType!=1))}function Us(t,e){if(t.length!=e.length)return false;for(let i=0;i<t.length;i++)if(!t[i].type.eq(e[i].type))return false;return true}function Ws(t){let e=t.nextSibling;t.parentNode.removeChild(t);return e}class Hs{constructor(t,e,i){this.lock=e;this.view=i;this.index=0;this.stack=[];this.changed=false;this.top=t;this.preMatch=Zs(t.node.content,t)}destroyBetween(t,e){if(t==e)return;for(let i=t;i<e;i++)this.top.children[i].destroy();this.top.children.splice(t,e-t);this.changed=true}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(t,e,i){let r=0,n=this.stack.length>>1;let s=Math.min(n,t.length);while(r<s&&(r==n-1?this.top:this.stack[r+1<<1]).matchesMark(t[r])&&t[r].type.spec.spanning!==false)r++;while(r<n){this.destroyRest();this.top.dirty=Es;this.index=this.stack.pop();this.top=this.stack.pop();n--}while(n<t.length){this.stack.push(this.top,this.index+1);let r=-1;for(let e=this.index;e<Math.min(this.index+3,this.top.children.length);e++){let i=this.top.children[e];if(i.matchesMark(t[n])&&!this.isLocked(i.dom)){r=e;break}}if(r>-1){if(r>this.index){this.changed=true;this.destroyBetween(this.index,r)}this.top=this.top.children[this.index]}else{let r=$s.create(this.top,t[n],e,i);this.top.children.splice(this.index,0,r);this.top=r;this.changed=true}this.index=0;n++}}findNodeMatch(t,e,i,r){let n=-1,s;if(r>=this.preMatch.index&&(s=this.preMatch.matches[r-this.preMatch.index]).parent==this.top&&s.matchesNode(t,e,i)){n=this.top.children.indexOf(s,this.index)}else{for(let r=this.index,s=Math.min(this.top.children.length,r+5);r<s;r++){let s=this.top.children[r];if(s.matchesNode(t,e,i)&&!this.preMatch.matched.has(s)){n=r;break}}}if(n<0)return false;this.destroyBetween(this.index,n);this.index++;return true}updateNodeAt(t,e,i,r,n){let s=this.top.children[r];if(s.dirty==As&&s.dom==s.contentDOM)s.dirty=Ms;if(!s.update(t,e,i,n))return false;this.destroyBetween(this.index,r);this.index++;return true}findIndexWithChild(t){for(;;){let e=t.parentNode;if(!e)return-1;if(e==this.top.contentDOM){let e=t.pmViewDesc;if(e)for(let t=this.index;t<this.top.children.length;t++){if(this.top.children[t]==e)return t}return-1}t=e}}updateNextNode(t,e,i,r,n,s){for(let l=this.index;l<this.top.children.length;l++){let u=this.top.children[l];if(u instanceof _s){let o=this.preMatch.matched.get(u);if(o!=null&&o!=n)return false;let f=u.dom,h;let a=this.isLocked(f)&&!(t.isText&&u.node&&u.node.isText&&u.nodeDOM.nodeValue==t.text&&u.dirty!=As&&Us(e,u.outerDeco));if(!a&&u.update(t,e,i,r)){this.destroyBetween(this.index,l);if(u.dom!=f)this.changed=true;this.index++;return true}else if(!a&&(h=this.recreateWrapper(u,t,e,i,r,s))){this.top.children[this.index]=h;if(h.contentDOM){h.dirty=Ms;h.updateChildren(r,s+1);h.dirty=Es}this.changed=true;this.index++;return true}break}}return false}recreateWrapper(t,e,i,r,n,s){if(t.dirty||e.isAtom||!t.children.length||!t.node.content.eq(e.content))return null;let l=_s.create(this.top,e,i,r,n,s);if(l.contentDOM){l.children=t.children;t.children=[];for(let t of l.children)t.parent=l}t.destroy();return l}addNode(t,e,i,r,n){let s=_s.create(this.top,t,e,i,r,n);if(s.contentDOM)s.updateChildren(r,n+1);this.top.children.splice(this.index++,0,s);this.changed=true}placeWidget(t,e,i){let r=this.index<this.top.children.length?this.top.children[this.index]:null;if(r&&r.matchesWidget(t)&&(t==r.widget||!r.widget.type.toDOM.parentNode)){this.index++}else{let r=new Ss(this.top,t,e,i);this.top.children.splice(this.index++,0,r);this.changed=true}}addTextblockHacks(){let t=this.top.children[this.index-1],e=this.top;while(t instanceof $s){e=t;t=e.children[e.children.length-1]}if(!t||!(t instanceof js)||/\n$/.test(t.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(t.node.text)){if((zn||Rn)&&t&&t.dom.contentEditable=="false")this.addHackNode("IMG",e);this.addHackNode("BR",this.top)}}addHackNode(t,e){if(e==this.top&&this.index<e.children.length&&e.children[this.index].matchesHack(t)){this.index++}else{let i=document.createElement(t);if(t=="IMG"){i.className="ProseMirror-separator";i.alt=""}if(t=="BR")i.className="ProseMirror-trailingBreak";let r=new qs(this.top,[],i,null);if(e!=this.top)e.children.push(r);else e.children.splice(this.index++,0,r);this.changed=true}}isLocked(t){return this.lock&&(t==this.lock||t.nodeType==1&&t.contains(this.lock.parentNode))}}function Zs(t,e){let i=e,r=i.children.length;let n=t.childCount,s=new Map,l=[];t:while(n>0){let u;for(;;){if(r){let t=i.children[r-1];if(t instanceof $s){i=t;r=t.children.length}else{u=t;r--;break}}else if(i==e){break t}else{r=i.parent.children.indexOf(i);i=i.parent}}let o=u.node;if(!o)continue;if(o!=t.child(n-1))break;--n;s.set(u,n);l.push(u)}return{index:n,matched:s,matches:l.reverse()}}function Ks(t,e){return t.type.side-e.type.side}function Vs(t,e,i,r){let n=e.locals(t),s=0;if(n.length==0){for(let i=0;i<t.childCount;i++){let l=t.child(i);r(l,n,e.forChild(s,l),i);s+=l.nodeSize}return}let l=0,u=[],o=null;for(let f=0;;){let h,a;while(l<n.length&&n[l].to==s){let t=n[l++];if(t.widget){if(!h)h=t;else(a||(a=[h])).push(t)}}if(h){if(a){a.sort(Ks);for(let t=0;t<a.length;t++)i(a[t],f,!!o)}else{i(h,f,!!o)}}let c,d;if(o){d=-1;c=o;o=null}else if(f<t.childCount){d=f;c=t.child(f++)}else{break}for(let t=0;t<u.length;t++)if(u[t].to<=s)u.splice(t--,1);while(l<n.length&&n[l].from<=s&&n[l].to>s)u.push(n[l++]);let p=s+c.nodeSize;if(c.isText){let t=p;if(l<n.length&&n[l].from<t)t=n[l].from;for(let e=0;e<u.length;e++)if(u[e].to<t)t=u[e].to;if(t<p){o=c.cut(t-s);c=c.cut(0,t-s);p=t;d=-1}}else{while(l<n.length&&n[l].to<p)l++}let m=c.isInline&&!c.isLeaf?u.filter((t=>!t.inline)):u.slice();r(c,m,e.forChild(s,c),d);s=p}}function Gs(t){if(t.nodeName=="UL"||t.nodeName=="OL"){let e=t.style.cssText;t.style.cssText=e+"; list-style: square !important";window.getComputedStyle(t).listStyle;t.style.cssText=e}}function Xs(t,e){for(;;){if(t.nodeType==3)return t;if(t.nodeType==1&&e>0){if(t.childNodes.length>e&&t.childNodes[e].nodeType==3)return t.childNodes[e];t=t.childNodes[e-1];e=kn(t)}else if(t.nodeType==1&&e<t.childNodes.length){t=t.childNodes[e];e=0}else{return null}}}function Ys(t,e,i,r){for(let n=0,s=0;n<t.childCount&&s<=r;){let l=t.child(n++),u=s;s+=l.nodeSize;if(!l.isText)continue;let o=l.text;while(n<t.childCount){let e=t.child(n++);s+=e.nodeSize;if(!e.isText)break;o+=e.text}if(s>=i){if(s>=r&&o.slice(r-e.length-u,r-u)==e)return r-e.length;let t=u<r?o.lastIndexOf(e,r-u-1):-1;if(t>=0&&t+e.length+u>=i)return u+t;if(i==r&&o.length>=r+e.length-u&&o.slice(r-u,r-u+e.length)==e)return r}}return-1}function Qs(t,e,i,r,n){let s=[];for(let l=0,u=0;l<t.length;l++){let o=t[l],f=u,h=u+=o.size;if(f>=i||h<=e){s.push(o)}else{if(f<e)s.push(o.slice(0,e-f,r));if(n){s.push(n);n=undefined}if(h>i)s.push(o.slice(i-f,o.size,r))}}return s}function tl(t,e=null){let i=t.domSelectionRange(),r=t.state.doc;if(!i.focusNode)return null;let n=t.docView.nearestDesc(i.focusNode),s=n&&n.size==0;let l=t.docView.posFromDOM(i.focusNode,i.focusOffset,1);if(l<0)return null;let u=r.resolve(l),o,f;if(yn(i)){o=u;while(n&&!n.node)n=n.parent;let t=n.node;if(n&&t.isAtom&&Wr.isSelectable(t)&&n.parent&&!(t.isInline&&Dn(i.focusNode,i.focusOffset,n.dom))){let t=n.posBefore;f=new Wr(l==t?u:r.resolve(t))}}else{let e=t.docView.posFromDOM(i.anchorNode,i.anchorOffset,1);if(e<0)return null;o=r.resolve(e)}if(!f){let i=e=="pointer"||t.state.selection.head<u.pos&&!s?1:-1;f=al(t,o,u,i)}return f}function el(t){return t.editable?t.hasFocus():dl(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function il(t,e=false){let i=t.state.selection;fl(t,i);if(!el(t))return;if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&Rn){let e=t.domSelectionRange(),i=t.domObserver.currentSelection;if(e.anchorNode&&i.anchorNode&&wn(e.anchorNode,e.anchorOffset,i.anchorNode,i.anchorOffset)){t.input.mouseDown.delayedSelectionSync=true;t.domObserver.setCurSelection();return}}t.domObserver.disconnectSelection();if(t.cursorWrapper){ol(t)}else{let{anchor:r,head:n}=i,s,l;if(rl&&!(i instanceof Lr)){if(!i.$from.parent.inlineContent)s=nl(t,i.from);if(!i.empty&&!i.$from.parent.inlineContent)l=nl(t,i.to)}t.docView.setSelection(r,n,t.root,e);if(rl){if(s)ll(s);if(l)ll(l)}if(i.visible){t.dom.classList.remove("ProseMirror-hideselection")}else{t.dom.classList.add("ProseMirror-hideselection");if("onselectionchange"in document)ul(t)}}t.domObserver.setCurSelection();t.domObserver.connectSelection()}const rl=zn||Rn&&Nn<63;function nl(t,e){let{node:i,offset:r}=t.docView.domFromPos(e,0);let n=r<i.childNodes.length?i.childNodes[r]:null;let s=r?i.childNodes[r-1]:null;if(zn&&n&&n.contentEditable=="false")return sl(n);if((!n||n.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(n)return sl(n);else if(s)return sl(s)}}function sl(t){t.contentEditable="true";if(zn&&t.draggable){t.draggable=false;t.wasDraggable=true}return t}function ll(t){t.contentEditable="false";if(t.wasDraggable){t.draggable=true;t.wasDraggable=null}}function ul(t){let e=t.dom.ownerDocument;e.removeEventListener("selectionchange",t.input.hideSelectionGuard);let i=t.domSelectionRange();let r=i.anchorNode,n=i.anchorOffset;e.addEventListener("selectionchange",t.input.hideSelectionGuard=()=>{if(i.anchorNode!=r||i.anchorOffset!=n){e.removeEventListener("selectionchange",t.input.hideSelectionGuard);setTimeout((()=>{if(!el(t)||t.state.selection.visible)t.dom.classList.remove("ProseMirror-hideselection")}),20)}})}function ol(t){let e=t.domSelection(),i=document.createRange();let r=t.cursorWrapper.dom,n=r.nodeName=="IMG";if(n)i.setEnd(r.parentNode,cn(r)+1);else i.setEnd(r,0);i.collapse(false);e.removeAllRanges();e.addRange(i);if(!n&&!t.state.selection.visible&&_n&&Bn<=11){r.disabled=true;r.disabled=false}}function fl(t,e){if(e instanceof Wr){let i=t.docView.descAt(e.from);if(i!=t.lastSelectedViewDesc){hl(t);if(i)i.selectNode();t.lastSelectedViewDesc=i}}else{hl(t)}}function hl(t){if(t.lastSelectedViewDesc){if(t.lastSelectedViewDesc.parent)t.lastSelectedViewDesc.deselectNode();t.lastSelectedViewDesc=undefined}}function al(t,e,i,r){return t.someProp("createSelectionBetween",(r=>r(t,e,i)))||Lr.between(e,i,r)}function cl(t){if(t.editable&&!t.hasFocus())return false;return dl(t)}function dl(t){let e=t.domSelectionRange();if(!e.anchorNode)return false;try{return t.dom.contains(e.anchorNode.nodeType==3?e.anchorNode.parentNode:e.anchorNode)&&(t.editable||t.dom.contains(e.focusNode.nodeType==3?e.focusNode.parentNode:e.focusNode))}catch(t){return false}}function pl(t){let e=t.docView.domFromPos(t.state.selection.anchor,0);let i=t.domSelectionRange();return wn(e.node,e.offset,i.anchorNode,i.anchorOffset)}function ml(t,e){let{$anchor:i,$head:r}=t.selection;let n=e>0?i.max(r):i.min(r);let s=!n.parent.inlineContent?n:n.depth?t.doc.resolve(e>0?n.after():n.before()):null;return s&&Tr.findFrom(s,e)}function wl(t,e){t.dispatch(t.state.tr.setSelection(e).scrollIntoView());return true}function gl(t,e,i){let r=t.state.selection;if(r instanceof Lr){if(i.indexOf("s")>-1){let{$head:i}=r,n=i.textOffset?null:e<0?i.nodeBefore:i.nodeAfter;if(!n||n.isText||!n.isLeaf)return false;let s=t.state.doc.resolve(i.pos+n.nodeSize*(e<0?-1:1));return wl(t,new Lr(r.$anchor,s))}else if(!r.empty){return false}else if(t.endOfTextblock(e>0?"forward":"backward")){let i=ml(t.state,e);if(i&&i instanceof Wr)return wl(t,i);return false}else if(!(In&&i.indexOf("m")>-1)){let i=r.$head,n=i.textOffset?null:e<0?i.nodeBefore:i.nodeAfter,s;if(!n||n.isText)return false;let l=e<0?i.pos-n.nodeSize:i.pos;if(!(n.isAtom||(s=t.docView.descAt(l))&&!s.contentDOM))return false;if(Wr.isSelectable(n)){return wl(t,new Wr(e<0?t.state.doc.resolve(i.pos-n.nodeSize):i))}else if(Ln){return wl(t,new Lr(t.state.doc.resolve(e<0?l:l+n.nodeSize)))}else{return false}}}else if(r instanceof Wr&&r.node.isInline){return wl(t,new Lr(e>0?r.$to:r.$from))}else{let i=ml(t.state,e);if(i)return wl(t,i);return false}}function bl(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function kl(t,e){let i=t.pmViewDesc;return i&&i.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function Dl(t,e){return e<0?vl(t):yl(t)}function vl(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n,s,l=false;if(jn&&i.nodeType==1&&r<bl(i)&&kl(i.childNodes[r],-1))l=true;for(;;){if(r>0){if(i.nodeType!=1){break}else{let t=i.childNodes[r-1];if(kl(t,-1)){n=i;s=--r}else if(t.nodeType==3){i=t;r=i.nodeValue.length}else break}}else if(Fl(i)){break}else{let e=i.previousSibling;while(e&&kl(e,-1)){n=i.parentNode;s=cn(e);e=e.previousSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=0}else{i=e;r=bl(i)}}}if(l)Ml(t,i,r);else if(n)Ml(t,n,s)}function yl(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n=bl(i);let s,l;for(;;){if(r<n){if(i.nodeType!=1)break;let t=i.childNodes[r];if(kl(t,1)){s=i;l=++r}else break}else if(Fl(i)){break}else{let e=i.nextSibling;while(e&&kl(e,1)){s=e.parentNode;l=cn(e)+1;e=e.nextSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=n=0}else{i=e;r=0;n=bl(i)}}}if(s)Ml(t,s,l)}function Fl(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function El(t,e){while(t&&e==t.childNodes.length&&!vn(t)){e=cn(t)+1;t=t.parentNode}while(t&&e<t.childNodes.length){let i=t.childNodes[e];if(i.nodeType==3)return i;if(i.nodeType==1&&i.contentEditable=="false")break;t=i;e=0}}function xl(t,e){while(t&&!e&&!vn(t)){e=cn(t);t=t.parentNode}while(t&&e){let i=t.childNodes[e-1];if(i.nodeType==3)return i;if(i.nodeType==1&&i.contentEditable=="false")break;t=i;e=t.childNodes.length}}function Ml(t,e,i){if(e.nodeType!=3){let t,r;if(r=El(e,i)){e=r;i=0}else if(t=xl(e,i)){e=t;i=t.nodeValue.length}}let r=t.domSelection();if(yn(r)){let t=document.createRange();t.setEnd(e,i);t.setStart(e,i);r.removeAllRanges();r.addRange(t)}else if(r.extend){r.extend(e,i)}t.domObserver.setCurSelection();let{state:n}=t;setTimeout((()=>{if(t.state==n)il(t)}),50)}function Al(t,e){let i=t.state.doc.resolve(e);if(!(Rn||Pn)&&i.parent.inlineContent){let r=t.coordsAtPos(e);if(e>i.start()){let i=t.coordsAtPos(e-1);let n=(i.top+i.bottom)/2;if(n>r.top&&n<r.bottom&&Math.abs(i.left-r.left)>1)return i.left<r.left?"ltr":"rtl"}if(e<i.end()){let i=t.coordsAtPos(e+1);let n=(i.top+i.bottom)/2;if(n>r.top&&n<r.bottom&&Math.abs(i.left-r.left)>1)return i.left>r.left?"ltr":"rtl"}}let r=getComputedStyle(t.dom).direction;return r=="rtl"?"rtl":"ltr"}function Cl(t,e,i){let r=t.state.selection;if(r instanceof Lr&&!r.empty||i.indexOf("s")>-1)return false;if(In&&i.indexOf("m")>-1)return false;let{$from:n,$to:s}=r;if(!n.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let i=ml(t.state,e);if(i&&i instanceof Wr)return wl(t,i)}if(!n.parent.inlineContent){let i=e<0?n:s;let l=r instanceof Zr?Tr.near(i,e):Tr.findFrom(i,e);return l?wl(t,l):false}return false}function Sl(t,e){if(!(t.state.selection instanceof Lr))return true;let{$head:i,$anchor:r,empty:n}=t.state.selection;if(!i.sameParent(r))return true;if(!n)return false;if(t.endOfTextblock(e>0?"forward":"backward"))return true;let s=!i.textOffset&&(e<0?i.nodeBefore:i.nodeAfter);if(s&&!s.isText){let r=t.state.tr;if(e<0)r.delete(i.pos-s.nodeSize,i.pos);else r.delete(i.pos,i.pos+s.nodeSize);t.dispatch(r);return true}return false}function Ol(t,e,i){t.domObserver.stop();e.contentEditable=i;t.domObserver.start()}function $l(t){if(!zn||t.state.selection.$head.parentOffset>0)return false;let{focusNode:e,focusOffset:i}=t.domSelectionRange();if(e&&e.nodeType==1&&i==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let i=e.firstChild;Ol(t,i,"true");setTimeout((()=>Ol(t,i,"false")),20)}return false}function _l(t){let e="";if(t.ctrlKey)e+="c";if(t.metaKey)e+="m";if(t.altKey)e+="a";if(t.shiftKey)e+="s";return e}function Bl(t,e){let i=e.keyCode,r=_l(e);if(i==8||In&&i==72&&r=="c"){return Sl(t,-1)||Dl(t,-1)}else if(i==46&&!e.shiftKey||In&&i==68&&r=="c"){return Sl(t,1)||Dl(t,1)}else if(i==13||i==27){return true}else if(i==37||In&&i==66&&r=="c"){let e=i==37?Al(t,t.state.selection.from)=="ltr"?-1:1:-1;return gl(t,e,r)||Dl(t,e)}else if(i==39||In&&i==70&&r=="c"){let e=i==39?Al(t,t.state.selection.from)=="ltr"?1:-1:1;return gl(t,e,r)||Dl(t,e)}else if(i==38||In&&i==80&&r=="c"){return Cl(t,-1,r)||Dl(t,-1)}else if(i==40||In&&i==78&&r=="c"){return $l(t)||Cl(t,1,r)||Dl(t,1)}else if(r==(In?"m":"c")&&(i==66||i==73||i==89||i==90)){return true}return false}function jl(t,e){t.someProp("transformCopied",(i=>{e=i(e,t)}));let i=[],{content:r,openStart:n,openEnd:s}=e;while(n>1&&s>1&&r.childCount==1&&r.firstChild.childCount==1){n--;s--;let t=r.firstChild;i.push(t.type.name,t.attrs!=t.type.defaultAttrs?t.attrs:null);r=t.content}let l=t.someProp("clipboardSerializer")||xi.fromSchema(t.state.schema);let u=Wl(),o=u.createElement("div");o.appendChild(l.serializeFragment(r,{document:u}));let f=o.firstChild,h,a=0;while(f&&f.nodeType==1&&(h=Ll[f.nodeName.toLowerCase()])){for(let t=h.length-1;t>=0;t--){let e=u.createElement(h[t]);while(o.firstChild)e.appendChild(o.firstChild);o.appendChild(e);a++}f=o.firstChild}if(f&&f.nodeType==1)f.setAttribute("data-pm-slice",`${n} ${s}${a?` -${a}`:""} ${JSON.stringify(i)}`);let c=t.someProp("clipboardTextSerializer",(i=>i(e,t)))||e.content.textBetween(0,e.content.size,"\n\n");return{dom:o,text:c}}function ql(t,e,i,r,n){let s=n.parent.type.spec.code;let l,u;if(!i&&!e)return null;let o=e&&(r||s||!i);if(o){t.someProp("transformPastedText",(i=>{e=i(e,s||r,t)}));if(s)return e?new ke(de.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):ke.empty;let i=t.someProp("clipboardTextParser",(i=>i(e,n,r,t)));if(i){u=i}else{let i=n.marks();let{schema:r}=t.state,s=xi.fromSchema(r);l=document.createElement("div");e.split(/(?:\r\n?|\n)+/).forEach((t=>{let e=l.appendChild(document.createElement("p"));if(t)e.appendChild(s.serializeNode(r.text(t,i)))}))}}else{t.someProp("transformPastedHTML",(e=>{i=e(i,t)}));l=Hl(i);if(Ln)Zl(l)}let f=l&&l.querySelector("[data-pm-slice]");let h=f&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(f.getAttribute("data-pm-slice")||"");if(h&&h[3])for(let t=+h[3];t>0;t--){let t=l.firstChild;while(t&&t.nodeType!=1)t=t.nextSibling;if(!t)break;l=t}if(!u){let e=t.someProp("clipboardParser")||t.someProp("domParser")||fi.fromSchema(t.state.schema);u=e.parseSlice(l,{preserveWhitespace:!!(o||h),context:n,ruleFromNode(t){if(t.nodeName=="BR"&&!t.nextSibling&&t.parentNode&&!Rl.test(t.parentNode.nodeName))return{ignore:true};return null}})}if(h){u=Kl(Jl(u,+h[1],+h[2]),h[4])}else{u=ke.maxOpen(Nl(u.content,n),true);if(u.openStart||u.openEnd){let t=0,e=0;for(let e=u.content.firstChild;t<u.openStart&&!e.type.spec.isolating;t++,e=e.firstChild){}for(let t=u.content.lastChild;e<u.openEnd&&!t.type.spec.isolating;e++,t=t.lastChild){}u=Jl(u,t,e)}}t.someProp("transformPasted",(e=>{u=e(u,t)}));return u}const Rl=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var)$/i;function Nl(t,e){if(t.childCount<2)return t;for(let i=e.depth;i>=0;i--){let r=e.node(i);let n=r.contentMatchAt(e.index(i));let s,l=[];t.forEach((t=>{if(!l)return;let e=n.findWrapping(t.type),i;if(!e)return l=null;if(i=l.length&&s.length&&Tl(e,s,t,l[l.length-1],0)){l[l.length-1]=i}else{if(l.length)l[l.length-1]=Il(l[l.length-1],s.length);let i=zl(t,e);l.push(i);n=n.matchType(i.type);s=e}}));if(l)return de.from(l)}return t}function zl(t,e,i=0){for(let r=e.length-1;r>=i;r--)t=e[r].create(null,de.from(t));return t}function Tl(t,e,i,r,n){if(n<t.length&&n<e.length&&t[n]==e[n]){let s=Tl(t,e,i,r.lastChild,n+1);if(s)return r.copy(r.content.replaceChild(r.childCount-1,s));let l=r.contentMatchAt(r.childCount);if(l.matchType(n==t.length-1?i.type:t[n+1]))return r.copy(r.content.append(de.from(zl(i,t,n+1))))}}function Il(t,e){if(e==0)return t;let i=t.content.replaceChild(t.childCount-1,Il(t.lastChild,e-1));let r=t.contentMatchAt(t.childCount).fillBefore(de.empty,true);return t.copy(i.append(r))}function Pl(t,e,i,r,n,s){let l=e<0?t.firstChild:t.lastChild,u=l.content;if(t.childCount>1)s=0;if(n<r-1)u=Pl(u,e,i,r,n+1,s);if(n>=i)u=e<0?l.contentMatchAt(0).fillBefore(u,s<=n).append(u):u.append(l.contentMatchAt(l.childCount).fillBefore(de.empty,true));return t.replaceChild(e<0?0:t.childCount-1,l.copy(u))}function Jl(t,e,i){if(e<t.openStart)t=new ke(Pl(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd);if(i<t.openEnd)t=new ke(Pl(t.content,1,i,t.openEnd,0,0),t.openStart,i);return t}const Ll={thead:["table"],tbody:["table"],tfoot:["table"],caption:["table"],colgroup:["table"],col:["table","colgroup"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","tbody","tr"]};let Ul=null;function Wl(){return Ul||(Ul=document.implementation.createHTMLDocument("title"))}function Hl(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);if(e)t=t.slice(e[0].length);let i=Wl().createElement("div");let r=/<([a-z][^>\s]+)/i.exec(t),n;if(n=r&&Ll[r[1].toLowerCase()])t=n.map((t=>"<"+t+">")).join("")+t+n.map((t=>"</"+t+">")).reverse().join("");i.innerHTML=t;if(n)for(let t=0;t<n.length;t++)i=i.querySelector(n[t])||i;return i}function Zl(t){let e=t.querySelectorAll(Rn?"span:not([class]):not([style])":"span.Apple-converted-space");for(let i=0;i<e.length;i++){let r=e[i];if(r.childNodes.length==1&&r.textContent==" "&&r.parentNode)r.parentNode.replaceChild(t.ownerDocument.createTextNode(" "),r)}}function Kl(t,e){if(!t.size)return t;let i=t.content.firstChild.type.schema,r;try{r=JSON.parse(e)}catch(e){return t}let{content:n,openStart:s,openEnd:l}=t;for(let t=r.length-2;t>=0;t-=2){let e=i.nodes[r[t]];if(!e||e.hasRequiredAttrs())break;n=de.from(e.create(r[t+1],n));s++;l++}return new ke(n,s,l)}const Vl={};const Gl={};const Xl={touchstart:true,touchmove:true};class Yl{constructor(){this.shiftKey=false;this.mouseDown=null;this.lastKeyCode=null;this.lastKeyCodeTime=0;this.lastClick={time:0,x:0,y:0,type:""};this.lastSelectionOrigin=null;this.lastSelectionTime=0;this.lastIOSEnter=0;this.lastIOSEnterFallbackTimeout=-1;this.lastFocus=0;this.lastTouch=0;this.lastAndroidDelete=0;this.composing=false;this.composingTimeout=-1;this.compositionNodes=[];this.compositionEndedAt=-2e8;this.compositionID=1;this.compositionPendingChanges=0;this.domChangeCount=0;this.eventHandlers=Object.create(null);this.hideSelectionGuard=null}}function Ql(t){for(let e in Vl){let i=Vl[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{if(nu(t,e)&&!ru(t,e)&&(t.editable||!(e.type in Gl)))i(t,e)},Xl[e]?{passive:true}:undefined)}if(zn)t.dom.addEventListener("input",(()=>null));iu(t)}function tu(t,e){t.input.lastSelectionOrigin=e;t.input.lastSelectionTime=Date.now()}function eu(t){t.domObserver.stop();for(let e in t.input.eventHandlers)t.dom.removeEventListener(e,t.input.eventHandlers[e]);clearTimeout(t.input.composingTimeout);clearTimeout(t.input.lastIOSEnterFallbackTimeout)}function iu(t){t.someProp("handleDOMEvents",(e=>{for(let i in e)if(!t.input.eventHandlers[i])t.dom.addEventListener(i,t.input.eventHandlers[i]=e=>ru(t,e))}))}function ru(t,e){return t.someProp("handleDOMEvents",(i=>{let r=i[e.type];return r?r(t,e)||e.defaultPrevented:false}))}function nu(t,e){if(!e.bubbles)return true;if(e.defaultPrevented)return false;for(let i=e.target;i!=t.dom;i=i.parentNode)if(!i||i.nodeType==11||i.pmViewDesc&&i.pmViewDesc.stopEvent(e))return false;return true}function su(t,e){if(!ru(t,e)&&Vl[e.type]&&(t.editable||!(e.type in Gl)))Vl[e.type](t,e)}Gl.keydown=(t,e)=>{let i=e;t.input.shiftKey=i.keyCode==16||i.shiftKey;if(ku(t,i))return;t.input.lastKeyCode=i.keyCode;t.input.lastKeyCodeTime=Date.now();if(Jn&&Rn&&i.keyCode==13)return;if(i.keyCode!=229)t.domObserver.forceFlush();if(Tn&&i.keyCode==13&&!i.ctrlKey&&!i.altKey&&!i.metaKey){let e=Date.now();t.input.lastIOSEnter=e;t.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{if(t.input.lastIOSEnter==e){t.someProp("handleKeyDown",(e=>e(t,Fn(13,"Enter"))));t.input.lastIOSEnter=0}}),200)}else if(t.someProp("handleKeyDown",(e=>e(t,i)))||Bl(t,i)){i.preventDefault()}else{tu(t,"key")}};Gl.keyup=(t,e)=>{if(e.keyCode==16)t.input.shiftKey=false};Gl.keypress=(t,e)=>{let i=e;if(ku(t,i)||!i.charCode||i.ctrlKey&&!i.altKey||In&&i.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,i)))){i.preventDefault();return}let r=t.state.selection;if(!(r instanceof Lr)||!r.$from.sameParent(r.$to)){let e=String.fromCharCode(i.charCode);if(!/[\r\n]/.test(e)&&!t.someProp("handleTextInput",(i=>i(t,r.$from.pos,r.$to.pos,e))))t.dispatch(t.state.tr.insertText(e).scrollIntoView());i.preventDefault()}};function lu(t){return{left:t.clientX,top:t.clientY}}function uu(t,e){let i=e.x-t.clientX,r=e.y-t.clientY;return i*i+r*r<100}function ou(t,e,i,r,n){if(r==-1)return false;let s=t.state.doc.resolve(r);for(let r=s.depth+1;r>0;r--){if(t.someProp(e,(e=>r>s.depth?e(t,i,s.nodeAfter,s.before(r),n,true):e(t,i,s.node(r),s.before(r),n,false))))return true}return false}function fu(t,e,i){if(!t.focused)t.focus();let r=t.state.tr.setSelection(e);if(i=="pointer")r.setMeta("pointer",true);t.dispatch(r)}function hu(t,e){if(e==-1)return false;let i=t.state.doc.resolve(e),r=i.nodeAfter;if(r&&r.isAtom&&Wr.isSelectable(r)){fu(t,new Wr(i),"pointer");return true}return false}function au(t,e){if(e==-1)return false;let i=t.state.selection,r,n;if(i instanceof Wr)r=i.node;let s=t.state.doc.resolve(e);for(let t=s.depth+1;t>0;t--){let e=t>s.depth?s.nodeAfter:s.node(t);if(Wr.isSelectable(e)){if(r&&i.$from.depth>0&&t>=i.$from.depth&&s.before(i.$from.depth+1)==i.$from.pos)n=s.before(i.$from.depth);else n=s.before(t);break}}if(n!=null){fu(t,Wr.create(t.state.doc,n),"pointer");return true}else{return false}}function cu(t,e,i,r,n){return ou(t,"handleClickOn",e,i,r)||t.someProp("handleClick",(i=>i(t,e,r)))||(n?au(t,i):hu(t,i))}function du(t,e,i,r){return ou(t,"handleDoubleClickOn",e,i,r)||t.someProp("handleDoubleClick",(i=>i(t,e,r)))}function pu(t,e,i,r){return ou(t,"handleTripleClickOn",e,i,r)||t.someProp("handleTripleClick",(i=>i(t,e,r)))||mu(t,i,r)}function mu(t,e,i){if(i.button!=0)return false;let r=t.state.doc;if(e==-1){if(r.inlineContent){fu(t,Lr.create(r,0,r.content.size),"pointer");return true}return false}let n=r.resolve(e);for(let e=n.depth+1;e>0;e--){let i=e>n.depth?n.nodeAfter:n.node(e);let s=n.before(e);if(i.inlineContent)fu(t,Lr.create(r,s+1,s+1+i.content.size),"pointer");else if(Wr.isSelectable(i))fu(t,Wr.create(r,s),"pointer");else continue;return true}}function wu(t){return Eu(t)}const gu=In?"metaKey":"ctrlKey";Vl.mousedown=(t,e)=>{let i=e;t.input.shiftKey=i.shiftKey;let r=wu(t);let n=Date.now(),s="singleClick";if(n-t.input.lastClick.time<500&&uu(i,t.input.lastClick)&&!i[gu]){if(t.input.lastClick.type=="singleClick")s="doubleClick";else if(t.input.lastClick.type=="doubleClick")s="tripleClick"}t.input.lastClick={time:n,x:i.clientX,y:i.clientY,type:s};let l=t.posAtCoords(lu(i));if(!l)return;if(s=="singleClick"){if(t.input.mouseDown)t.input.mouseDown.done();t.input.mouseDown=new bu(t,l,i,!!r)}else if((s=="doubleClick"?du:pu)(t,l.pos,l.inside,i)){i.preventDefault()}else{tu(t,"pointer")}};class bu{constructor(t,e,i,r){this.view=t;this.pos=e;this.event=i;this.flushed=r;this.delayedSelectionSync=false;this.mightDrag=null;this.startDoc=t.state.doc;this.selectNode=!!i[gu];this.allowDefault=i.shiftKey;let n,s;if(e.inside>-1){n=t.state.doc.nodeAt(e.inside);s=e.inside}else{let i=t.state.doc.resolve(e.pos);n=i.parent;s=i.depth?i.before():0}const l=r?null:i.target;const u=l?t.docView.nearestDesc(l,true):null;this.target=u?u.dom:null;let{selection:o}=t.state;if(i.button==0&&n.type.spec.draggable&&n.type.spec.selectable!==false||o instanceof Wr&&o.from<=s&&o.to>s)this.mightDrag={node:n,pos:s,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&jn&&!this.target.hasAttribute("contentEditable"))};if(this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)){this.view.domObserver.stop();if(this.mightDrag.addAttr)this.target.draggable=true;if(this.mightDrag.setUneditable)setTimeout((()=>{if(this.view.input.mouseDown==this)this.target.setAttribute("contentEditable","false")}),20);this.view.domObserver.start()}t.root.addEventListener("mouseup",this.up=this.up.bind(this));t.root.addEventListener("mousemove",this.move=this.move.bind(this));tu(t,"pointer")}done(){this.view.root.removeEventListener("mouseup",this.up);this.view.root.removeEventListener("mousemove",this.move);if(this.mightDrag&&this.target){this.view.domObserver.stop();if(this.mightDrag.addAttr)this.target.removeAttribute("draggable");if(this.mightDrag.setUneditable)this.target.removeAttribute("contentEditable");this.view.domObserver.start()}if(this.delayedSelectionSync)setTimeout((()=>il(this.view)));this.view.input.mouseDown=null}up(t){this.done();if(!this.view.dom.contains(t.target))return;let e=this.pos;if(this.view.state.doc!=this.startDoc)e=this.view.posAtCoords(lu(t));this.updateAllowDefault(t);if(this.allowDefault||!e){tu(this.view,"pointer")}else if(cu(this.view,e.pos,e.inside,t,this.selectNode)){t.preventDefault()}else if(t.button==0&&(this.flushed||zn&&this.mightDrag&&!this.mightDrag.node.isAtom||Rn&&!this.view.state.selection.visible&&Math.min(Math.abs(e.pos-this.view.state.selection.from),Math.abs(e.pos-this.view.state.selection.to))<=2)){fu(this.view,Tr.near(this.view.state.doc.resolve(e.pos)),"pointer");t.preventDefault()}else{tu(this.view,"pointer")}}move(t){this.updateAllowDefault(t);tu(this.view,"pointer");if(t.buttons==0)this.done()}updateAllowDefault(t){if(!this.allowDefault&&(Math.abs(this.event.x-t.clientX)>4||Math.abs(this.event.y-t.clientY)>4))this.allowDefault=true}}Vl.touchstart=t=>{t.input.lastTouch=Date.now();wu(t);tu(t,"pointer")};Vl.touchmove=t=>{t.input.lastTouch=Date.now();tu(t,"pointer")};Vl.contextmenu=t=>wu(t);function ku(t,e){if(t.composing)return true;if(zn&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500){t.input.compositionEndedAt=-2e8;return true}return false}const Du=Jn?5e3:-1;Gl.compositionstart=Gl.compositionupdate=t=>{if(!t.composing){t.domObserver.flush();let{state:e}=t,i=e.selection.$from;if(e.selection.empty&&(e.storedMarks||!i.textOffset&&i.parentOffset&&i.nodeBefore.marks.some((t=>t.type.spec.inclusive===false)))){t.markCursor=t.state.storedMarks||i.marks();Eu(t,true);t.markCursor=null}else{Eu(t);if(jn&&e.selection.empty&&i.parentOffset&&!i.textOffset&&i.nodeBefore.marks.length){let e=t.domSelectionRange();for(let i=e.focusNode,r=e.focusOffset;i&&i.nodeType==1&&r!=0;){let e=r<0?i.lastChild:i.childNodes[r-1];if(!e)break;if(e.nodeType==3){t.domSelection().collapse(e,e.nodeValue.length);break}else{i=e;r=-1}}}}t.input.composing=true}vu(t,Du)};Gl.compositionend=(t,e)=>{if(t.composing){t.input.composing=false;t.input.compositionEndedAt=e.timeStamp;t.input.compositionPendingChanges=t.domObserver.pendingRecords().length?t.input.compositionID:0;if(t.input.compositionPendingChanges)Promise.resolve().then((()=>t.domObserver.flush()));t.input.compositionID++;vu(t,20)}};function vu(t,e){clearTimeout(t.input.composingTimeout);if(e>-1)t.input.composingTimeout=setTimeout((()=>Eu(t)),e)}function yu(t){if(t.composing){t.input.composing=false;t.input.compositionEndedAt=Fu()}while(t.input.compositionNodes.length>0)t.input.compositionNodes.pop().markParentsDirty()}function Fu(){let t=document.createEvent("Event");t.initEvent("event",true,true);return t.timeStamp}function Eu(t,e=false){if(Jn&&t.domObserver.flushingSoon>=0)return;t.domObserver.forceFlush();yu(t);if(e||t.docView&&t.docView.dirty){let e=tl(t);if(e&&!e.eq(t.state.selection))t.dispatch(t.state.tr.setSelection(e));else t.updateState(t.state);return true}return false}function xu(t,e){if(!t.dom.parentNode)return;let i=t.dom.parentNode.appendChild(document.createElement("div"));i.appendChild(e);i.style.cssText="position: fixed; left: -10000px; top: 10px";let r=getSelection(),n=document.createRange();n.selectNodeContents(e);t.dom.blur();r.removeAllRanges();r.addRange(n);setTimeout((()=>{if(i.parentNode)i.parentNode.removeChild(i);t.focus()}),50)}const Mu=_n&&Bn<15||Tn&&Un<604;Vl.copy=Gl.cut=(t,e)=>{let i=e;let r=t.state.selection,n=i.type=="cut";if(r.empty)return;let s=Mu?null:i.clipboardData;let l=r.content(),{dom:u,text:o}=jl(t,l);if(s){i.preventDefault();s.clearData();s.setData("text/html",u.innerHTML);s.setData("text/plain",o)}else{xu(t,u)}if(n)t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function Au(t){return t.openStart==0&&t.openEnd==0&&t.content.childCount==1?t.content.firstChild:null}function Cu(t,e){if(!t.dom.parentNode)return;let i=t.input.shiftKey||t.state.selection.$from.parent.type.spec.code;let r=t.dom.parentNode.appendChild(document.createElement(i?"textarea":"div"));if(!i)r.contentEditable="true";r.style.cssText="position: fixed; left: -10000px; top: 10px";r.focus();let n=t.input.shiftKey&&t.input.lastKeyCode!=45;setTimeout((()=>{t.focus();if(r.parentNode)r.parentNode.removeChild(r);if(i)Su(t,r.value,null,n,e);else Su(t,r.textContent,r.innerHTML,n,e)}),50)}function Su(t,e,i,r,n){let s=ql(t,e,i,r,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,n,s||ke.empty))))return true;if(!s)return false;let l=Au(s);let u=l?t.state.tr.replaceSelectionWith(l,r):t.state.tr.replaceSelection(s);t.dispatch(u.scrollIntoView().setMeta("paste",true).setMeta("uiEvent","paste"));return true}function Ou(t){let e=t.getData("text/plain")||t.getData("Text");if(e)return e;let i=t.getData("text/uri-list");return i?i.replace(/\r?\n/g," "):""}Gl.paste=(t,e)=>{let i=e;if(t.composing&&!Jn)return;let r=Mu?null:i.clipboardData;let n=t.input.shiftKey&&t.input.lastKeyCode!=45;if(r&&Su(t,Ou(r),r.getData("text/html"),n,i))i.preventDefault();else Cu(t,i)};class $u{constructor(t,e,i){this.slice=t;this.move=e;this.node=i}}const _u=In?"altKey":"ctrlKey";Vl.dragstart=(t,e)=>{let i=e;let r=t.input.mouseDown;if(r)r.done();if(!i.dataTransfer)return;let n=t.state.selection;let s=n.empty?null:t.posAtCoords(lu(i));let l;if(s&&s.pos>=n.from&&s.pos<=(n instanceof Wr?n.to-1:n.to));else if(r&&r.mightDrag){l=Wr.create(t.state.doc,r.mightDrag.pos)}else if(i.target&&i.target.nodeType==1){let e=t.docView.nearestDesc(i.target,true);if(e&&e.node.type.spec.draggable&&e!=t.docView)l=Wr.create(t.state.doc,e.posBefore)}let u=(l||t.state.selection).content(),{dom:o,text:f}=jl(t,u);i.dataTransfer.clearData();i.dataTransfer.setData(Mu?"Text":"text/html",o.innerHTML);i.dataTransfer.effectAllowed="copyMove";if(!Mu)i.dataTransfer.setData("text/plain",f);t.dragging=new $u(u,!i[_u],l)};Vl.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{if(t.dragging==e)t.dragging=null}),50)};Gl.dragover=Gl.dragenter=(t,e)=>e.preventDefault();Gl.drop=(t,e)=>{let i=e;let r=t.dragging;t.dragging=null;if(!i.dataTransfer)return;let n=t.posAtCoords(lu(i));if(!n)return;let s=t.state.doc.resolve(n.pos);let l=r&&r.slice;if(l){t.someProp("transformPasted",(e=>{l=e(l,t)}))}else{l=ql(t,Ou(i.dataTransfer),Mu?null:i.dataTransfer.getData("text/html"),false,s)}let u=!!(r&&!i[_u]);if(t.someProp("handleDrop",(e=>e(t,i,l||ke.empty,u)))){i.preventDefault();return}if(!l)return;i.preventDefault();let o=l?br(t.state.doc,s.pos,l):s.pos;if(o==null)o=s.pos;let f=t.state.tr;if(u){let{node:t}=r;if(t)t.replace(f);else f.deleteSelection()}let h=f.mapping.map(o);let a=l.openStart==0&&l.openEnd==0&&l.content.childCount==1;let c=f.doc;if(a)f.replaceRangeWith(h,h,l.content.firstChild);else f.replaceRange(h,h,l);if(f.doc.eq(c))return;let d=f.doc.resolve(h);if(a&&Wr.isSelectable(l.content.firstChild)&&d.nodeAfter&&d.nodeAfter.sameMarkup(l.content.firstChild)){f.setSelection(new Wr(d))}else{let e=f.mapping.map(o);f.mapping.maps[f.mapping.maps.length-1].forEach(((t,i,r,n)=>e=n));f.setSelection(al(t,d,f.doc.resolve(e)))}t.focus();t.dispatch(f.setMeta("uiEvent","drop"))};Vl.focus=t=>{t.input.lastFocus=Date.now();if(!t.focused){t.domObserver.stop();t.dom.classList.add("ProseMirror-focused");t.domObserver.start();t.focused=true;setTimeout((()=>{if(t.docView&&t.hasFocus()&&!t.domObserver.currentSelection.eq(t.domSelectionRange()))il(t)}),20)}};Vl.blur=(t,e)=>{let i=e;if(t.focused){t.domObserver.stop();t.dom.classList.remove("ProseMirror-focused");t.domObserver.start();if(i.relatedTarget&&t.dom.contains(i.relatedTarget))t.domObserver.currentSelection.clear();t.focused=false}};Vl.beforeinput=(t,e)=>{let i=e;if(Rn&&Jn&&i.inputType=="deleteContentBackward"){t.domObserver.flushSoon();let{domChangeCount:e}=t.input;setTimeout((()=>{if(t.input.domChangeCount!=e)return;t.dom.blur();t.focus();if(t.someProp("handleKeyDown",(e=>e(t,Fn(8,"Backspace")))))return;let{$cursor:i}=t.state.selection;if(i&&i.pos>0)t.dispatch(t.state.tr.delete(i.pos-1,i.pos).scrollIntoView())}),50)}};for(let t in Gl)Vl[t]=Gl[t];function Bu(t,e){if(t==e)return true;for(let i in t)if(t[i]!==e[i])return false;for(let i in e)if(!(i in t))return false;return true}class ju{constructor(t,e){this.toDOM=t;this.spec=e||Tu;this.side=this.spec.side||0}map(t,e,i,r){let{pos:n,deleted:s}=t.mapResult(e.from+r,this.side<0?-1:1);return s?null:new Nu(n-i,n-i,this)}valid(){return true}eq(t){return this==t||t instanceof ju&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&Bu(this.spec,t.spec))}destroy(t){if(this.spec.destroy)this.spec.destroy(t)}}class qu{constructor(t,e){this.attrs=t;this.spec=e||Tu}map(t,e,i,r){let n=t.map(e.from+r,this.spec.inclusiveStart?-1:1)-i;let s=t.map(e.to+r,this.spec.inclusiveEnd?1:-1)-i;return n>=s?null:new Nu(n,s,this)}valid(t,e){return e.from<e.to}eq(t){return this==t||t instanceof qu&&Bu(this.attrs,t.attrs)&&Bu(this.spec,t.spec)}static is(t){return t.type instanceof qu}destroy(){}}class Ru{constructor(t,e){this.attrs=t;this.spec=e||Tu}map(t,e,i,r){let n=t.mapResult(e.from+r,1);if(n.deleted)return null;let s=t.mapResult(e.to+r,-1);if(s.deleted||s.pos<=n.pos)return null;return new Nu(n.pos-i,s.pos-i,this)}valid(t,e){let{index:i,offset:r}=t.content.findIndex(e.from),n;return r==e.from&&!(n=t.child(i)).isText&&r+n.nodeSize==e.to}eq(t){return this==t||t instanceof Ru&&Bu(this.attrs,t.attrs)&&Bu(this.spec,t.spec)}destroy(){}}class Nu{constructor(t,e,i){this.from=t;this.to=e;this.type=i}copy(t,e){return new Nu(t,e,this.type)}eq(t,e=0){return this.type.eq(t.type)&&this.from+e==t.from&&this.to+e==t.to}map(t,e,i){return this.type.map(t,this,e,i)}static widget(t,e,i){return new Nu(t,t,new ju(e,i))}static inline(t,e,i,r){return new Nu(t,e,new qu(i,r))}static node(t,e,i,r){return new Nu(t,e,new Ru(i,r))}get spec(){return this.type.spec}get inline(){return this.type instanceof qu}get widget(){return this.type instanceof ju}}const zu=[],Tu={};class Iu{constructor(t,e){this.local=t.length?t:zu;this.children=e.length?e:zu}static create(t,e){return e.length?Ku(e,t,0,Tu):Pu}find(t,e,i){let r=[];this.findInner(t==null?0:t,e==null?1e9:e,r,0,i);return r}findInner(t,e,i,r,n){for(let s=0;s<this.local.length;s++){let l=this.local[s];if(l.from<=e&&l.to>=t&&(!n||n(l.spec)))i.push(l.copy(l.from+r,l.to+r))}for(let s=0;s<this.children.length;s+=3){if(this.children[s]<e&&this.children[s+1]>t){let l=this.children[s]+1;this.children[s+2].findInner(t-l,e-l,i,r+l,n)}}}map(t,e,i){if(this==Pu||t.maps.length==0)return this;return this.mapInner(t,e,0,0,i||Tu)}mapInner(t,e,i,r,n){let s;for(let l=0;l<this.local.length;l++){let u=this.local[l].map(t,i,r);if(u&&u.type.valid(e,u))(s||(s=[])).push(u);else if(n.onRemove)n.onRemove(this.local[l].spec)}if(this.children.length)return Lu(this.children,s||[],t,e,i,r,n);else return s?new Iu(s.sort(Vu),zu):Pu}add(t,e){if(!e.length)return this;if(this==Pu)return Iu.create(t,e);return this.addInner(t,e,0)}addInner(t,e,i){let r,n=0;t.forEach(((t,s)=>{let l=s+i,u;if(!(u=Hu(e,t,l)))return;if(!r)r=this.children.slice();while(n<r.length&&r[n]<s)n+=3;if(r[n]==s)r[n+2]=r[n+2].addInner(t,u,l+1);else r.splice(n,0,s,s+t.nodeSize,Ku(u,t,l+1,Tu));n+=3}));let s=Uu(n?Zu(e):e,-i);for(let e=0;e<s.length;e++)if(!s[e].type.valid(t,s[e]))s.splice(e--,1);return new Iu(s.length?this.local.concat(s).sort(Vu):this.local,r||this.children)}remove(t){if(t.length==0||this==Pu)return this;return this.removeInner(t,0)}removeInner(t,e){let i=this.children,r=this.local;for(let r=0;r<i.length;r+=3){let n;let s=i[r]+e,l=i[r+1]+e;for(let e=0,i;e<t.length;e++)if(i=t[e]){if(i.from>s&&i.to<l){t[e]=null;(n||(n=[])).push(i)}}if(!n)continue;if(i==this.children)i=this.children.slice();let u=i[r+2].removeInner(n,s+1);if(u!=Pu){i[r+2]=u}else{i.splice(r,3);r-=3}}if(r.length)for(let i=0,n;i<t.length;i++)if(n=t[i]){for(let t=0;t<r.length;t++)if(r[t].eq(n,e)){if(r==this.local)r=this.local.slice();r.splice(t--,1)}}if(i==this.children&&r==this.local)return this;return r.length||i.length?new Iu(r,i):Pu}forChild(t,e){if(this==Pu)return this;if(e.isLeaf)return Iu.empty;let i,r;for(let e=0;e<this.children.length;e+=3)if(this.children[e]>=t){if(this.children[e]==t)i=this.children[e+2];break}let n=t+1,s=n+e.content.size;for(let t=0;t<this.local.length;t++){let e=this.local[t];if(e.from<s&&e.to>n&&e.type instanceof qu){let t=Math.max(n,e.from)-n,i=Math.min(s,e.to)-n;if(t<i)(r||(r=[])).push(e.copy(t,i))}}if(r){let t=new Iu(r.sort(Vu),zu);return i?new Ju([t,i]):t}return i||Pu}eq(t){if(this==t)return true;if(!(t instanceof Iu)||this.local.length!=t.local.length||this.children.length!=t.children.length)return false;for(let e=0;e<this.local.length;e++)if(!this.local[e].eq(t.local[e]))return false;for(let e=0;e<this.children.length;e+=3)if(this.children[e]!=t.children[e]||this.children[e+1]!=t.children[e+1]||!this.children[e+2].eq(t.children[e+2]))return false;return true}locals(t){return Gu(this.localsInner(t))}localsInner(t){if(this==Pu)return zu;if(t.inlineContent||!this.local.some(qu.is))return this.local;let e=[];for(let t=0;t<this.local.length;t++){if(!(this.local[t].type instanceof qu))e.push(this.local[t])}return e}}Iu.empty=new Iu([],[]);Iu.removeOverlap=Gu;const Pu=Iu.empty;class Ju{constructor(t){this.members=t}map(t,e){const i=this.members.map((i=>i.map(t,e,Tu)));return Ju.from(i)}forChild(t,e){if(e.isLeaf)return Iu.empty;let i=[];for(let r=0;r<this.members.length;r++){let n=this.members[r].forChild(t,e);if(n==Pu)continue;if(n instanceof Ju)i=i.concat(n.members);else i.push(n)}return Ju.from(i)}eq(t){if(!(t instanceof Ju)||t.members.length!=this.members.length)return false;for(let e=0;e<this.members.length;e++)if(!this.members[e].eq(t.members[e]))return false;return true}locals(t){let e,i=true;for(let r=0;r<this.members.length;r++){let n=this.members[r].localsInner(t);if(!n.length)continue;if(!e){e=n}else{if(i){e=e.slice();i=false}for(let t=0;t<n.length;t++)e.push(n[t])}}return e?Gu(i?e:e.sort(Vu)):zu}static from(t){switch(t.length){case 0:return Pu;case 1:return t[0];default:return new Ju(t.every((t=>t instanceof Iu))?t:t.reduce(((t,e)=>t.concat(e instanceof Iu?e:e.members)),[]))}}}function Lu(t,e,i,r,n,s,l){let u=t.slice();for(let t=0,e=s;t<i.maps.length;t++){let r=0;i.maps[t].forEach(((t,i,n,s)=>{let l=s-n-(i-t);for(let n=0;n<u.length;n+=3){let s=u[n+1];if(s<0||t>s+e-r)continue;let o=u[n]+e-r;if(i>=o){u[n+1]=t<=o?-2:-1}else if(t>=e&&l){u[n]+=l;u[n+1]+=l}}r+=l}));e=i.maps[t].map(e,-1)}let o=false;for(let e=0;e<u.length;e+=3)if(u[e+1]<0){if(u[e+1]==-2){o=true;u[e+1]=-1;continue}let f=i.map(t[e]+s),h=f-n;if(h<0||h>=r.content.size){o=true;continue}let a=i.map(t[e+1]+s,-1),c=a-n;let{index:d,offset:p}=r.content.findIndex(h);let m=r.maybeChild(d);if(m&&p==h&&p+m.nodeSize==c){let r=u[e+2].mapInner(i,m,f+1,t[e]+s+1,l);if(r!=Pu){u[e]=h;u[e+1]=c;u[e+2]=r}else{u[e+1]=-2;o=true}}else{o=true}}if(o){let o=Wu(u,t,e,i,n,s,l);let f=Ku(o,r,0,l);e=f.local;for(let t=0;t<u.length;t+=3)if(u[t+1]<0){u.splice(t,3);t-=3}for(let t=0,e=0;t<f.children.length;t+=3){let i=f.children[t];while(e<u.length&&u[e]<i)e+=3;u.splice(e,0,f.children[t],f.children[t+1],f.children[t+2])}}return new Iu(e.sort(Vu),u)}function Uu(t,e){if(!e||!t.length)return t;let i=[];for(let r=0;r<t.length;r++){let n=t[r];i.push(new Nu(n.from+e,n.to+e,n.type))}return i}function Wu(t,e,i,r,n,s,l){function u(t,e){for(let s=0;s<t.local.length;s++){let u=t.local[s].map(r,n,e);if(u)i.push(u);else if(l.onRemove)l.onRemove(t.local[s].spec)}for(let i=0;i<t.children.length;i+=3)u(t.children[i+2],t.children[i]+e+1)}for(let i=0;i<t.length;i+=3)if(t[i+1]==-1)u(t[i+2],e[i]+s+1);return i}function Hu(t,e,i){if(e.isLeaf)return null;let r=i+e.nodeSize,n=null;for(let e=0,s;e<t.length;e++){if((s=t[e])&&s.from>i&&s.to<r){(n||(n=[])).push(s);t[e]=null}}return n}function Zu(t){let e=[];for(let i=0;i<t.length;i++)if(t[i]!=null)e.push(t[i]);return e}function Ku(t,e,i,r){let n=[],s=false;e.forEach(((e,l)=>{let u=Hu(t,e,l+i);if(u){s=true;let t=Ku(u,e,i+l+1,r);if(t!=Pu)n.push(l,l+e.nodeSize,t)}}));let l=Uu(s?Zu(t):t,-i).sort(Vu);for(let t=0;t<l.length;t++)if(!l[t].type.valid(e,l[t])){if(r.onRemove)r.onRemove(l[t].spec);l.splice(t--,1)}return l.length||n.length?new Iu(l,n):Pu}function Vu(t,e){return t.from-e.from||t.to-e.to}function Gu(t){let e=t;for(let i=0;i<e.length-1;i++){let r=e[i];if(r.from!=r.to)for(let n=i+1;n<e.length;n++){let s=e[n];if(s.from==r.from){if(s.to!=r.to){if(e==t)e=t.slice();e[n]=s.copy(s.from,r.to);Xu(e,n+1,s.copy(r.to,s.to))}continue}else{if(s.from<r.to){if(e==t)e=t.slice();e[i]=r.copy(r.from,s.from);Xu(e,n,r.copy(s.from,r.to))}break}}}return e}function Xu(t,e,i){while(e<t.length&&Vu(i,t[e])>0)e++;t.splice(e,0,i)}function Yu(t){let e=[];t.someProp("decorations",(i=>{let r=i(t.state);if(r&&r!=Pu)e.push(r)}));if(t.cursorWrapper)e.push(Iu.create(t.state.doc,[t.cursorWrapper.deco]));return Ju.from(e)}const Qu={childList:true,characterData:true,characterDataOldValue:true,attributes:true,attributeOldValue:true,subtree:true};const to=_n&&Bn<=11;class eo{constructor(){this.anchorNode=null;this.anchorOffset=0;this.focusNode=null;this.focusOffset=0}set(t){this.anchorNode=t.anchorNode;this.anchorOffset=t.anchorOffset;this.focusNode=t.focusNode;this.focusOffset=t.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(t){return t.anchorNode==this.anchorNode&&t.anchorOffset==this.anchorOffset&&t.focusNode==this.focusNode&&t.focusOffset==this.focusOffset}}class io{constructor(t,e){this.view=t;this.handleDOMChange=e;this.queue=[];this.flushingSoon=-1;this.observer=null;this.currentSelection=new eo;this.onCharData=null;this.suppressingSelectionUpdates=false;this.observer=window.MutationObserver&&new window.MutationObserver((t=>{for(let e=0;e<t.length;e++)this.queue.push(t[e]);if(_n&&Bn<=11&&t.some((t=>t.type=="childList"&&t.removedNodes.length||t.type=="characterData"&&t.oldValue.length>t.target.nodeValue.length)))this.flushSoon();else this.flush()}));if(to){this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.prevValue});this.flushSoon()}}this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){if(this.flushingSoon<0)this.flushingSoon=window.setTimeout((()=>{this.flushingSoon=-1;this.flush()}),20)}forceFlush(){if(this.flushingSoon>-1){window.clearTimeout(this.flushingSoon);this.flushingSoon=-1;this.flush()}}start(){if(this.observer){this.observer.takeRecords();this.observer.observe(this.view.dom,Qu)}if(this.onCharData)this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData);this.connectSelection()}stop(){if(this.observer){let t=this.observer.takeRecords();if(t.length){for(let e=0;e<t.length;e++)this.queue.push(t[e]);window.setTimeout((()=>this.flush()),20)}this.observer.disconnect()}if(this.onCharData)this.view.dom.removeEventListener("DOMCharacterDataModified",this.onCharData);this.disconnectSelection()}connectSelection(){this.view.dom.ownerDocument.addEventListener("selectionchange",this.onSelectionChange)}disconnectSelection(){this.view.dom.ownerDocument.removeEventListener("selectionchange",this.onSelectionChange)}suppressSelectionUpdates(){this.suppressingSelectionUpdates=true;setTimeout((()=>this.suppressingSelectionUpdates=false),50)}onSelectionChange(){if(!cl(this.view))return;if(this.suppressingSelectionUpdates)return il(this.view);if(_n&&Bn<=11&&!this.view.state.selection.empty){let t=this.view.domSelectionRange();if(t.focusNode&&wn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset))return this.flushSoon()}this.flush()}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(t){if(!t.focusNode)return true;let e=new Set,i;for(let i=t.focusNode;i;i=dn(i))e.add(i);for(let r=t.anchorNode;r;r=dn(r))if(e.has(r)){i=r;break}let r=i&&this.view.docView.nearestDesc(i);if(r&&r.ignoreMutation({type:"selection",target:i.nodeType==3?i.parentNode:i})){this.setCurSelection();return true}}pendingRecords(){if(this.observer)for(let t of this.observer.takeRecords())this.queue.push(t);return this.queue}flush(){let{view:t}=this;if(!t.docView||this.flushingSoon>-1)return;let e=this.pendingRecords();if(e.length)this.queue=[];let i=t.domSelectionRange();let r=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(i)&&cl(t)&&!this.ignoreSelectionChange(i);let n=-1,s=-1,l=false,u=[];if(t.editable){for(let t=0;t<e.length;t++){let i=this.registerMutation(e[t],u);if(i){n=n<0?i.from:Math.min(i.from,n);s=s<0?i.to:Math.max(i.to,s);if(i.typeOver)l=true}}}if(jn&&u.length>1){let t=u.filter((t=>t.nodeName=="BR"));if(t.length==2){let e=t[0],i=t[1];if(e.parentNode&&e.parentNode.parentNode==i.parentNode)i.remove();else e.remove()}}let o=null;if(n<0&&r&&t.input.lastFocus>Date.now()-200&&Math.max(t.input.lastTouch,t.input.lastClick.time)<Date.now()-300&&yn(i)&&(o=tl(t))&&o.eq(Tr.near(t.state.doc.resolve(0),1))){t.input.lastFocus=0;il(t);this.currentSelection.set(i);t.scrollToSelection()}else if(n>-1||r){if(n>-1){t.docView.markDirty(n,s);so(t)}this.handleDOMChange(n,s,l,u);if(t.docView&&t.docView.dirty)t.updateState(t.state);else if(!this.currentSelection.eq(i))il(t);this.currentSelection.set(i)}}registerMutation(t,e){if(e.indexOf(t.target)>-1)return null;let i=this.view.docView.nearestDesc(t.target);if(t.type=="attributes"&&(i==this.view.docView||t.attributeName=="contenteditable"||t.attributeName=="style"&&!t.oldValue&&!t.target.getAttribute("style")))return null;if(!i||i.ignoreMutation(t))return null;if(t.type=="childList"){for(let i=0;i<t.addedNodes.length;i++)e.push(t.addedNodes[i]);if(i.contentDOM&&i.contentDOM!=i.dom&&!i.contentDOM.contains(t.target))return{from:i.posBefore,to:i.posAfter};let r=t.previousSibling,n=t.nextSibling;if(_n&&Bn<=11&&t.addedNodes.length){for(let e=0;e<t.addedNodes.length;e++){let{previousSibling:i,nextSibling:s}=t.addedNodes[e];if(!i||Array.prototype.indexOf.call(t.addedNodes,i)<0)r=i;if(!s||Array.prototype.indexOf.call(t.addedNodes,s)<0)n=s}}let s=r&&r.parentNode==t.target?cn(r)+1:0;let l=i.localPosFromDOM(t.target,s,-1);let u=n&&n.parentNode==t.target?cn(n):t.target.childNodes.length;let o=i.localPosFromDOM(t.target,u,1);return{from:l,to:o}}else if(t.type=="attributes"){return{from:i.posAtStart-i.border,to:i.posAtEnd+i.border}}else{return{from:i.posAtStart,to:i.posAtEnd,typeOver:t.target.nodeValue==t.oldValue}}}}let ro=new WeakMap;let no=false;function so(t){if(ro.has(t))return;ro.set(t,null);if(["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1){t.requiresGeckoHackNode=jn;if(no)return;console["warn"]("ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package.");no=true}}function lo(t){let e;function i(t){t.preventDefault();t.stopImmediatePropagation();e=t.getTargetRanges()[0]}t.dom.addEventListener("beforeinput",i,true);document.execCommand("indent");t.dom.removeEventListener("beforeinput",i,true);let r=e.startContainer,n=e.startOffset;let s=e.endContainer,l=e.endOffset;let u=t.domAtPos(t.state.selection.anchor);if(wn(u.node,u.offset,s,l))[r,n,s,l]=[s,l,r,n];return{anchorNode:r,anchorOffset:n,focusNode:s,focusOffset:l}}function uo(t,e,i){let{node:r,fromOffset:n,toOffset:s,from:l,to:u}=t.docView.parseRange(e,i);let o=t.domSelectionRange();let f;let h=o.anchorNode;if(h&&t.dom.contains(h.nodeType==1?h:h.parentNode)){f=[{node:h,offset:o.anchorOffset}];if(!yn(o))f.push({node:o.focusNode,offset:o.focusOffset})}if(Rn&&t.input.lastKeyCode===8){for(let t=s;t>n;t--){let e=r.childNodes[t-1],i=e.pmViewDesc;if(e.nodeName=="BR"&&!i){s=t;break}if(!i||i.size)break}}let a=t.state.doc;let c=t.someProp("domParser")||fi.fromSchema(t.state.schema);let d=a.resolve(l);let p=null,m=c.parse(r,{topNode:d.parent,topMatch:d.parent.contentMatchAt(d.index()),topOpen:true,from:n,to:s,preserveWhitespace:d.parent.type.whitespace=="pre"?"full":true,findPositions:f,ruleFromNode:oo,context:d});if(f&&f[0].pos!=null){let t=f[0].pos,e=f[1]&&f[1].pos;if(e==null)e=t;p={anchor:t+l,head:e+l}}return{doc:m,sel:p,from:l,to:u}}function oo(t){let e=t.pmViewDesc;if(e){return e.parseRule()}else if(t.nodeName=="BR"&&t.parentNode){if(zn&&/^(ul|ol)$/i.test(t.parentNode.nodeName)){let t=document.createElement("div");t.appendChild(document.createElement("li"));return{skip:t}}else if(t.parentNode.lastChild==t||zn&&/^(tr|table)$/i.test(t.parentNode.nodeName)){return{ignore:true}}}else if(t.nodeName=="IMG"&&t.getAttribute("mark-placeholder")){return{ignore:true}}return null}const fo=/^(a|abbr|acronym|b|bd[io]|big|br|button|cite|code|data(list)?|del|dfn|em|i|ins|kbd|label|map|mark|meter|output|q|ruby|s|samp|small|span|strong|su[bp]|time|u|tt|var)$/i;function ho(t,e,i,r,n){let s=t.input.compositionPendingChanges||(t.composing?t.input.compositionID:0);t.input.compositionPendingChanges=0;if(e<0){let e=t.input.lastSelectionTime>Date.now()-50?t.input.lastSelectionOrigin:null;let i=tl(t,e);if(i&&!t.state.selection.eq(i)){if(Rn&&Jn&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",(e=>e(t,Fn(13,"Enter")))))return;let r=t.state.tr.setSelection(i);if(e=="pointer")r.setMeta("pointer",true);else if(e=="key")r.scrollIntoView();if(s)r.setMeta("composition",s);t.dispatch(r)}return}let l=t.state.doc.resolve(e);let u=l.sharedDepth(i);e=l.before(u+1);i=t.state.doc.resolve(i).after(u+1);let o=t.state.selection;let f=uo(t,e,i);let h=t.state.doc,a=h.slice(f.from,f.to);let c,d;if(t.input.lastKeyCode===8&&Date.now()-100<t.input.lastKeyCodeTime){c=t.state.selection.to;d="end"}else{c=t.state.selection.from;d="start"}t.input.lastKeyCode=null;let p=wo(a.content,f.doc.content,f.from,c,d);if((Tn&&t.input.lastIOSEnter>Date.now()-225||Jn)&&n.some((t=>t.nodeType==1&&!fo.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,Fn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(!p){if(r&&o instanceof Lr&&!o.empty&&o.$head.sameParent(o.$anchor)&&!t.composing&&!(f.sel&&f.sel.anchor!=f.sel.head)){p={start:o.from,endA:o.to,endB:o.to}}else{if(f.sel){let e=ao(t,t.state.doc,f.sel);if(e&&!e.eq(t.state.selection)){let i=t.state.tr.setSelection(e);if(s)i.setMeta("composition",s);t.dispatch(i)}}return}}if(Rn&&t.cursorWrapper&&f.sel&&f.sel.anchor==t.cursorWrapper.deco.from&&f.sel.head==f.sel.anchor){let t=p.endB-p.start;f.sel={anchor:f.sel.anchor+t,head:f.sel.anchor+t}}t.input.domChangeCount++;if(t.state.selection.from<t.state.selection.to&&p.start==p.endB&&t.state.selection instanceof Lr){if(p.start>t.state.selection.from&&p.start<=t.state.selection.from+2&&t.state.selection.from>=f.from){p.start=t.state.selection.from}else if(p.endA<t.state.selection.to&&p.endA>=t.state.selection.to-2&&t.state.selection.to<=f.to){p.endB+=t.state.selection.to-p.endA;p.endA=t.state.selection.to}}if(_n&&Bn<=11&&p.endB==p.start+1&&p.endA==p.start&&p.start>f.from&&f.doc.textBetween(p.start-f.from-1,p.start-f.from+1)=="  "){p.start--;p.endA--;p.endB--}let m=f.doc.resolveNoCache(p.start-f.from);let w=f.doc.resolveNoCache(p.endB-f.from);let g=h.resolve(p.start);let b=m.sameParent(w)&&m.parent.inlineContent&&g.end()>=p.endA;let k;if((Tn&&t.input.lastIOSEnter>Date.now()-225&&(!b||n.some((t=>t.nodeName=="DIV"||t.nodeName=="P")))||!b&&m.pos<f.doc.content.size&&!m.sameParent(w)&&(k=Tr.findFrom(f.doc.resolve(m.pos+1),1,true))&&k.head==w.pos)&&t.someProp("handleKeyDown",(e=>e(t,Fn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&po(h,p.start,p.endA,m,w)&&t.someProp("handleKeyDown",(e=>e(t,Fn(8,"Backspace"))))){if(Jn&&Rn)t.domObserver.suppressSelectionUpdates();return}if(Rn&&Jn&&p.endB==p.start)t.input.lastAndroidDelete=Date.now();if(Jn&&!b&&m.start()!=w.start()&&w.parentOffset==0&&m.depth==w.depth&&f.sel&&f.sel.anchor==f.sel.head&&f.sel.head==p.endA){p.endB-=2;w=f.doc.resolveNoCache(p.endB-f.from);setTimeout((()=>{t.someProp("handleKeyDown",(function(e){return e(t,Fn(13,"Enter"))}))}),20)}let D=p.start,v=p.endA;let y,F,E;if(b){if(m.pos==w.pos){if(_n&&Bn<=11&&m.parentOffset==0){t.domObserver.suppressSelectionUpdates();setTimeout((()=>il(t)),20)}y=t.state.tr.delete(D,v);F=h.resolve(p.start).marksAcross(h.resolve(p.endA))}else if(p.endA==p.endB&&(E=co(m.parent.content.cut(m.parentOffset,w.parentOffset),g.parent.content.cut(g.parentOffset,p.endA-g.start())))){y=t.state.tr;if(E.type=="add")y.addMark(D,v,E.mark);else y.removeMark(D,v,E.mark)}else if(m.parent.child(m.index()).isText&&m.index()==w.index()-(w.textOffset?0:1)){let e=m.parent.textBetween(m.parentOffset,w.parentOffset);if(t.someProp("handleTextInput",(i=>i(t,D,v,e))))return;y=t.state.tr.insertText(e,D,v)}}if(!y)y=t.state.tr.replace(D,v,f.doc.slice(p.start-f.from,p.endB-f.from));if(f.sel){let e=ao(t,y.doc,f.sel);if(e&&!(Rn&&Jn&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(e.head==D||e.head==y.mapping.map(v)-1)||_n&&e.empty&&e.head==D))y.setSelection(e)}if(F)y.ensureMarks(F);if(s)y.setMeta("composition",s);t.dispatch(y.scrollIntoView())}function ao(t,e,i){if(Math.max(i.anchor,i.head)>e.content.size)return null;return al(t,e.resolve(i.anchor),e.resolve(i.head))}function co(t,e){let i=t.firstChild.marks,r=e.firstChild.marks;let n=i,s=r,l,u,o;for(let t=0;t<r.length;t++)n=r[t].removeFromSet(n);for(let t=0;t<i.length;t++)s=i[t].removeFromSet(s);if(n.length==1&&s.length==0){u=n[0];l="add";o=t=>t.mark(u.addToSet(t.marks))}else if(n.length==0&&s.length==1){u=s[0];l="remove";o=t=>t.mark(u.removeFromSet(t.marks))}else{return null}let f=[];for(let t=0;t<e.childCount;t++)f.push(o(e.child(t)));if(de.from(f).eq(t))return{mark:u,type:l}}function po(t,e,i,r,n){if(!r.parent.isTextblock||i-e<=n.pos-r.pos||mo(r,true,false)<n.pos)return false;let s=t.resolve(e);if(s.parentOffset<s.parent.content.size||!s.parent.isTextblock)return false;let l=t.resolve(mo(s,true,true));if(!l.parent.isTextblock||l.pos>i||mo(l,true,false)<i)return false;return r.parent.content.cut(r.parentOffset).eq(l.parent.content)}function mo(t,e,i){let r=t.depth,n=e?t.end():t.pos;while(r>0&&(e||t.indexAfter(r)==t.node(r).childCount)){r--;n++;e=false}if(i){let e=t.node(r).maybeChild(t.indexAfter(r));while(e&&!e.isLeaf){e=e.firstChild;n++}}return n}function wo(t,e,i,r,n){let s=t.findDiffStart(e,i);if(s==null)return null;let{a:l,b:u}=t.findDiffEnd(e,i+t.size,i+e.size);if(n=="end"){let t=Math.max(0,s-Math.min(l,u));r-=l+t-s}if(l<s&&t.size<e.size){let t=r<=s&&r>=l?s-r:0;s-=t;if(s&&s<e.size&&go(e.textBetween(s-1,s+1)))s+=t?1:-1;u=s+(u-l);l=s}else if(u<s){let e=r<=s&&r>=u?s-r:0;s-=e;if(s&&s<t.size&&go(t.textBetween(s-1,s+1)))s+=e?1:-1;l=s+(l-u);u=s}return{start:s,endA:l,endB:u}}function go(t){if(t.length!=2)return false;let e=t.charCodeAt(0),i=t.charCodeAt(1);return e>=56320&&e<=57343&&i>=55296&&i<=56319}class bo{constructor(t,e){this._root=null;this.focused=false;this.trackWrites=null;this.mounted=false;this.markCursor=null;this.cursorWrapper=null;this.lastSelectedViewDesc=undefined;this.input=new Yl;this.prevDirectPlugins=[];this.pluginViews=[];this.requiresGeckoHackNode=false;this.dragging=null;this._props=e;this.state=e.state;this.directPlugins=e.plugins||[];this.directPlugins.forEach(xo);this.dispatch=this.dispatch.bind(this);this.dom=t&&t.mount||document.createElement("div");if(t){if(t.appendChild)t.appendChild(this.dom);else if(typeof t=="function")t(this.dom);else if(t.mount)this.mounted=true}this.editable=vo(this);Do(this);this.nodeViews=Fo(this);this.docView=Bs(this.state.doc,ko(this),Yu(this),this.dom,this);this.domObserver=new io(this,((t,e,i,r)=>ho(this,t,e,i,r)));this.domObserver.start();Ql(this);this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let t=this._props;this._props={};for(let e in t)this._props[e]=t[e];this._props.state=this.state}return this._props}update(t){if(t.handleDOMEvents!=this._props.handleDOMEvents)iu(this);let e=this._props;this._props=t;if(t.plugins){t.plugins.forEach(xo);this.directPlugins=t.plugins}this.updateStateInner(t.state,e)}setProps(t){let e={};for(let t in this._props)e[t]=this._props[t];e.state=this.state;for(let i in t)e[i]=t[i];this.update(e)}updateState(t){this.updateStateInner(t,this._props)}updateStateInner(t,e){var i;let r=this.state,n=false,s=false;if(t.storedMarks&&this.composing){yu(this);s=true}this.state=t;let l=r.plugins!=t.plugins||this._props.plugins!=e.plugins;if(l||this._props.plugins!=e.plugins||this._props.nodeViews!=e.nodeViews){let t=Fo(this);if(Eo(t,this.nodeViews)){this.nodeViews=t;n=true}}if(l||e.handleDOMEvents!=this._props.handleDOMEvents){iu(this)}this.editable=vo(this);Do(this);let u=Yu(this),o=ko(this);let f=r.plugins!=t.plugins&&!r.doc.eq(t.doc)?"reset":t.scrollToSelection>r.scrollToSelection?"to selection":"preserve";let h=n||!this.docView.matchesNode(t.doc,o,u);if(h||!t.selection.eq(r.selection))s=true;let a=f=="preserve"&&s&&this.dom.style.overflowAnchor==null&&Vn(this);if(s){this.domObserver.stop();let e=h&&(_n||Rn)&&!this.composing&&!r.selection.empty&&!t.selection.empty&&yo(r.selection,t.selection);if(h){let i=Rn?this.trackWrites=this.domSelectionRange().focusNode:null;if(n||!this.docView.update(t.doc,o,u,this)){this.docView.updateOuterDeco([]);this.docView.destroy();this.docView=Bs(t.doc,o,u,this.dom,this)}if(i&&!this.trackWrites)e=true}if(e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&pl(this))){il(this,e)}else{fl(this,t.selection);this.domObserver.setCurSelection()}this.domObserver.start()}this.updatePluginViews(r);if(((i=this.dragging)===null||i===void 0?void 0:i.node)&&!r.doc.eq(t.doc))this.updateDraggedNode(this.dragging,r);if(f=="reset"){this.dom.scrollTop=0}else if(f=="to selection"){this.scrollToSelection()}else if(a){Xn(a)}}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof Wr){let e=this.docView.domAfterPos(this.state.selection.from);if(e.nodeType==1)Kn(this,e.getBoundingClientRect(),t)}else{Kn(this,this.coordsAtPos(this.state.selection.head,1),t)}}destroyPluginViews(){let t;while(t=this.pluginViews.pop())if(t.destroy)t.destroy()}updatePluginViews(t){if(!t||t.plugins!=this.state.plugins||this.directPlugins!=this.prevDirectPlugins){this.prevDirectPlugins=this.directPlugins;this.destroyPluginViews();for(let t=0;t<this.directPlugins.length;t++){let e=this.directPlugins[t];if(e.spec.view)this.pluginViews.push(e.spec.view(this))}for(let t=0;t<this.state.plugins.length;t++){let e=this.state.plugins[t];if(e.spec.view)this.pluginViews.push(e.spec.view(this))}}else{for(let e=0;e<this.pluginViews.length;e++){let i=this.pluginViews[e];if(i.update)i.update(this,t)}}}updateDraggedNode(t,e){let i=t.node,r=-1;if(this.state.doc.nodeAt(i.from)==i.node){r=i.from}else{let t=i.from+(this.state.doc.content.size-e.doc.content.size);let n=t>0&&this.state.doc.nodeAt(t);if(n==i.node)r=t}this.dragging=new $u(t.slice,t.move,r<0?undefined:Wr.create(this.state.doc,r))}someProp(t,e){let i=this._props&&this._props[t],r;if(i!=null&&(r=e?e(i):i))return r;for(let i=0;i<this.directPlugins.length;i++){let n=this.directPlugins[i].props[t];if(n!=null&&(r=e?e(n):n))return r}let n=this.state.plugins;if(n)for(let i=0;i<n.length;i++){let s=n[i].props[t];if(s!=null&&(r=e?e(s):s))return r}}hasFocus(){if(_n){let t=this.root.activeElement;if(t==this.dom)return true;if(!t||!this.dom.contains(t))return false;while(t&&this.dom!=t&&this.dom.contains(t)){if(t.contentEditable=="false")return false;t=t.parentElement}return true}return this.root.activeElement==this.dom}focus(){this.domObserver.stop();if(this.editable)ts(this.dom);il(this);this.domObserver.start()}get root(){let t=this._root;if(t==null)for(let t=this.dom.parentNode;t;t=t.parentNode){if(t.nodeType==9||t.nodeType==11&&t.host){if(!t.getSelection)Object.getPrototypeOf(t).getSelection=()=>t.ownerDocument.getSelection();return this._root=t}}return t||document}updateRoot(){this._root=null}posAtCoords(t){return fs(this,t)}coordsAtPos(t,e=1){return ds(this,t,e)}domAtPos(t,e=0){return this.docView.domFromPos(t,e)}nodeDOM(t){let e=this.docView.descAt(t);return e?e.nodeDOM:null}posAtDOM(t,e,i=-1){let r=this.docView.posFromDOM(t,e,i);if(r==null)throw new RangeError("DOM position not inside the editor");return r}endOfTextblock(t,e){return Fs(this,e||this.state,t)}pasteHTML(t,e){return Su(this,"",t,false,e||new ClipboardEvent("paste"))}pasteText(t,e){return Su(this,t,null,true,e||new ClipboardEvent("paste"))}destroy(){if(!this.docView)return;eu(this);this.destroyPluginViews();if(this.mounted){this.docView.update(this.state.doc,[],Yu(this),this);this.dom.textContent=""}else if(this.dom.parentNode){this.dom.parentNode.removeChild(this.dom)}this.docView.destroy();this.docView=null}get isDestroyed(){return this.docView==null}dispatchEvent(t){return su(this,t)}dispatch(t){let e=this._props.dispatchTransaction;if(e)e.call(this,t);else this.updateState(this.state.apply(t))}domSelectionRange(){return zn&&this.root.nodeType===11&&En(this.dom.ownerDocument)==this.dom?lo(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function ko(t){let e=Object.create(null);e.class="ProseMirror";e.contenteditable=String(t.editable);t.someProp("attributes",(i=>{if(typeof i=="function")i=i(t.state);if(i)for(let t in i){if(t=="class")e.class+=" "+i[t];else if(t=="style")e.style=(e.style?e.style+";":"")+i[t];else if(!e[t]&&t!="contenteditable"&&t!="nodeName")e[t]=String(i[t])}}));if(!e.translate)e.translate="no";return[Nu.node(0,t.state.doc.content.size,e)]}function Do(t){if(t.markCursor){let e=document.createElement("img");e.className="ProseMirror-separator";e.setAttribute("mark-placeholder","true");e.setAttribute("alt","");t.cursorWrapper={dom:e,deco:Nu.widget(t.state.selection.head,e,{raw:true,marks:t.markCursor})}}else{t.cursorWrapper=null}}function vo(t){return!t.someProp("editable",(e=>e(t.state)===false))}function yo(t,e){let i=Math.min(t.$anchor.sharedDepth(t.head),e.$anchor.sharedDepth(e.head));return t.$anchor.start(i)!=e.$anchor.start(i)}function Fo(t){let e=Object.create(null);function i(t){for(let i in t)if(!Object.prototype.hasOwnProperty.call(e,i))e[i]=t[i]}t.someProp("nodeViews",i);t.someProp("markViews",i);return e}function Eo(t,e){let i=0,r=0;for(let r in t){if(t[r]!=e[r])return true;i++}for(let t in e)r++;return i!=r}function xo(t){if(t.spec.state||t.spec.filterTransaction||t.spec.appendTransaction)throw new RangeError("Plugins passed directly to the view must not have a state component")}const Mo=["p",0],Ao=["blockquote",0],Co=["hr"],So=["pre",["code",0]],Oo=["br"];const $o={doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return Mo}},blockquote:{content:"block+",group:"block",defining:true,parseDOM:[{tag:"blockquote"}],toDOM(){return Ao}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return Co}},heading:{attrs:{level:{default:1}},content:"inline*",group:"block",defining:true,parseDOM:[{tag:"h1",attrs:{level:1}},{tag:"h2",attrs:{level:2}},{tag:"h3",attrs:{level:3}},{tag:"h4",attrs:{level:4}},{tag:"h5",attrs:{level:5}},{tag:"h6",attrs:{level:6}}],toDOM(t){return["h"+t.attrs.level,0]}},code_block:{content:"text*",marks:"",group:"block",code:true,defining:true,parseDOM:[{tag:"pre",preserveWhitespace:"full"}],toDOM(){return So}},text:{group:"inline"},image:{inline:true,attrs:{src:{},alt:{default:null},title:{default:null}},group:"inline",draggable:true,parseDOM:[{tag:"img[src]",getAttrs(t){return{src:t.getAttribute("src"),title:t.getAttribute("title"),alt:t.getAttribute("alt")}}}],toDOM(t){let{src:e,alt:i,title:r}=t.attrs;return["img",{src:e,alt:i,title:r}]}},hard_break:{inline:true,group:"inline",selectable:false,parseDOM:[{tag:"br"}],toDOM(){return Oo}}};const _o=["em",0],Bo=["strong",0],jo=["code",0];const qo={link:{attrs:{href:{},title:{default:null}},inclusive:false,parseDOM:[{tag:"a[href]",getAttrs(t){return{href:t.getAttribute("href"),title:t.getAttribute("title")}}}],toDOM(t){let{href:e,title:i}=t.attrs;return["a",{href:e,title:i},0]}},em:{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"},{style:"font-style=normal",clearMark:t=>t.type.name=="em"}],toDOM(){return _o}},strong:{parseDOM:[{tag:"strong"},{tag:"b",getAttrs:t=>t.style.fontWeight!="normal"&&null},{style:"font-weight=400",clearMark:t=>t.type.name=="strong"},{style:"font-weight",getAttrs:t=>/^(bold(er)?|[5-9]\d{2,})$/.test(t)&&null}],toDOM(){return Bo}},code:{parseDOM:[{tag:"code"}],toDOM(){return jo}}};const Ro=new ui({nodes:$o,marks:qo});const No=["ol",0],zo=["ul",0],To=["li",0];const Io={attrs:{order:{default:1}},parseDOM:[{tag:"ol",getAttrs(t){return{order:t.hasAttribute("start")?+t.getAttribute("start"):1}}}],toDOM(t){return t.attrs.order==1?No:["ol",{start:t.attrs.order},0]}};const Po={parseDOM:[{tag:"ul"}],toDOM(){return zo}};const Jo={parseDOM:[{tag:"li"}],toDOM(){return To},defining:true};function Lo(t,e){let i={};for(let e in t)i[e]=t[e];for(let t in e)i[t]=e[t];return i}function Uo(t,e,i){return t.append({ordered_list:Lo(Io,{content:"list_item+",group:i}),bullet_list:Lo(Po,{content:"list_item+",group:i}),list_item:Lo(Jo,{content:e})})}function Wo(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),u=false,o=l;if(!l)return false;if(l.depth>=2&&n.node(l.depth-1).type.compatibleContent(t)&&l.startIndex==0){if(n.index(l.depth-1)==0)return false;let t=i.doc.resolve(l.start-2);o=new Re(t,t,l.depth);if(l.endIndex<l.parent.childCount)l=new Re(n,i.doc.resolve(s.end(l.depth)),l.depth);u=true}let f=rr(o,t,e,l);if(!f)return false;if(r)r(Ho(i.tr,l,f,u,t).scrollIntoView());return true}}function Ho(t,e,i,r,n){let s=de.empty;for(let t=i.length-1;t>=0;t--)s=de.from(i[t].type.create(i[t].attrs,s));t.step(new Vi(e.start-(r?2:0),e.end,e.start,e.end,new ke(s,0,0),i.length,true));let l=0;for(let t=0;t<i.length;t++)if(i[t].type==n)l=t+1;let u=i.length-l;let o=e.start+i.length-(r?2:0),f=e.parent;for(let i=e.startIndex,r=e.endIndex,n=true;i<r;i++,n=false){if(!n&&ar(t.doc,o,u)){t.split(o,u);o+=2*u}o+=f.child(i).nodeSize}return t}function Zo(t,e){return function(i,r){let{$from:n,$to:s,node:l}=i.selection;if(l&&l.isBlock||n.depth<2||!n.sameParent(s))return false;let u=n.node(-1);if(u.type!=t)return false;if(n.parent.content.size==0&&n.node(-1).childCount==n.indexAfter(-1)){if(n.depth==3||n.node(-3).type!=t||n.index(-2)!=n.node(-2).childCount-1)return false;if(r){let e=de.empty;let s=n.index(-1)?1:n.index(-2)?2:3;for(let t=n.depth-s;t>=n.depth-3;t--)e=de.from(n.node(t).copy(e));let l=n.indexAfter(-1)<n.node(-2).childCount?1:n.indexAfter(-2)<n.node(-3).childCount?2:3;e=e.append(de.from(t.createAndFill()));let u=n.before(n.depth-(s-1));let o=i.tr.replace(u,n.after(-l),new ke(e,4-s,0));let f=-1;o.doc.nodesBetween(u,o.doc.content.size,((t,e)=>{if(f>-1)return false;if(t.isTextblock&&t.content.size==0)f=e+1}));if(f>-1)o.setSelection(Tr.near(o.doc.resolve(f)));r(o.scrollIntoView())}return true}let o=s.pos==n.end()?u.contentMatchAt(0).defaultType:null;let f=i.tr.delete(n.pos,s.pos);let h=o?[e?{type:t,attrs:e}:null,{type:o}]:undefined;if(!ar(f.doc,n.pos,2,h))return false;if(r)r(f.split(n.pos,2,h).scrollIntoView());return true}}function Ko(t){return function(e,i){let{$from:r,$to:n}=e.selection;let s=r.blockRange(n,(e=>e.childCount>0&&e.firstChild.type==t));if(!s)return false;if(!i)return true;if(r.node(s.depth-1).type==t)return Vo(e,i,t,s);else return Go(e,i,s)}}function Vo(t,e,i,r){let n=t.tr,s=r.end,l=r.$to.end(r.depth);if(s<l){n.step(new Vi(s-1,l,s,l,new ke(de.from(i.create(null,r.parent.copy())),1,0),1,true));r=new Re(n.doc.resolve(r.$from.pos),n.doc.resolve(l),r.depth)}const u=er(r);if(u==null)return false;n.lift(r,u);let o=n.mapping.map(s,-1)-1;if(dr(n.doc,o))n.join(o);e(n.scrollIntoView());return true}function Go(t,e,i){let r=t.tr,n=i.parent;for(let t=i.end,e=i.endIndex-1,s=i.startIndex;e>s;e--){t-=n.child(e).nodeSize;r.delete(t-1,t+1)}let s=r.doc.resolve(i.start),l=s.nodeAfter;if(r.mapping.map(i.end)!=i.start+s.nodeAfter.nodeSize)return false;let u=i.startIndex==0,o=i.endIndex==n.childCount;let f=s.node(-1),h=s.index(-1);if(!f.canReplace(h+(u?0:1),h+1,l.content.append(o?de.empty:de.from(n))))return false;let a=s.pos,c=a+l.nodeSize;r.step(new Vi(a-(u?1:0),c+(o?1:0),a+1,c-1,new ke((u?de.empty:de.from(n.copy(de.empty))).append(o?de.empty:de.from(n.copy(de.empty))),u?0:1,o?0:1),u?0:1));e(r.scrollIntoView());return true}function Xo(t){return function(e,i){let{$from:r,$to:n}=e.selection;let s=r.blockRange(n,(e=>e.childCount>0&&e.firstChild.type==t));if(!s)return false;let l=s.startIndex;if(l==0)return false;let u=s.parent,o=u.child(l-1);if(o.type!=t)return false;if(i){let r=o.lastChild&&o.lastChild.type==u.type;let n=de.from(r?t.create():null);let l=new ke(de.from(t.create(null,de.from(u.type.create(null,n)))),r?3:1,0);let f=s.start,h=s.end;i(e.tr.step(new Vi(f-(r?3:1),h,f,h,l,1,true)).scrollIntoView())}return true}}var Yo={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"};var Qo={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'};var tf=typeof navigator!="undefined"&&/Mac/.test(navigator.platform);var ef=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var rf=0;rf<10;rf++)Yo[48+rf]=Yo[96+rf]=String(rf);for(var rf=1;rf<=24;rf++)Yo[rf+111]="F"+rf;for(var rf=65;rf<=90;rf++){Yo[rf]=String.fromCharCode(rf+32);Qo[rf]=String.fromCharCode(rf)}for(var nf in Yo)if(!Qo.hasOwnProperty(nf))Qo[nf]=Yo[nf];function sf(t){var e=tf&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||ef&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified";var i=!e&&t.key||(t.shiftKey?Qo:Yo)[t.keyCode]||t.key||"Unidentified";if(i=="Esc")i="Escape";if(i=="Del")i="Delete";if(i=="Left")i="ArrowLeft";if(i=="Up")i="ArrowUp";if(i=="Right")i="ArrowRight";if(i=="Down")i="ArrowDown";return i}const lf=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function uf(t){let e=t.split(/-(?!$)/),i=e[e.length-1];if(i=="Space")i=" ";let r,n,s,l;for(let t=0;t<e.length-1;t++){let i=e[t];if(/^(cmd|meta|m)$/i.test(i))l=true;else if(/^a(lt)?$/i.test(i))r=true;else if(/^(c|ctrl|control)$/i.test(i))n=true;else if(/^s(hift)?$/i.test(i))s=true;else if(/^mod$/i.test(i)){if(lf)l=true;else n=true}else throw new Error("Unrecognized modifier name: "+i)}if(r)i="Alt-"+i;if(n)i="Ctrl-"+i;if(l)i="Meta-"+i;if(s)i="Shift-"+i;return i}function of(t){let e=Object.create(null);for(let i in t)e[uf(i)]=t[i];return e}function ff(t,e,i=true){if(e.altKey)t="Alt-"+t;if(e.ctrlKey)t="Ctrl-"+t;if(e.metaKey)t="Meta-"+t;if(i&&e.shiftKey)t="Shift-"+t;return t}function hf(t){return new on({props:{handleKeyDown:af(t)}})}function af(t){let e=of(t);return function(t,i){let r=sf(i),n,s=e[ff(r,i)];if(s&&s(t.state,t.dispatch,t))return true;if(r.length==1&&r!=" "){if(i.shiftKey){let n=e[ff(r,i,false)];if(n&&n(t.state,t.dispatch,t))return true}if((i.shiftKey||i.altKey||i.metaKey||r.charCodeAt(0)>127)&&(n=Yo[i.keyCode])&&n!=r){let r=e[ff(n,i)];if(r&&r(t.state,t.dispatch,t))return true}}return false}}var cf=200;var df=function t(){};df.prototype.append=function t(e){if(!e.length){return this}e=df.from(e);return!this.length&&e||e.length<cf&&this.leafAppend(e)||this.length<cf&&e.leafPrepend(this)||this.appendInner(e)};df.prototype.prepend=function t(e){if(!e.length){return this}return df.from(e).append(this)};df.prototype.appendInner=function t(e){return new mf(this,e)};df.prototype.slice=function t(e,i){if(e===void 0)e=0;if(i===void 0)i=this.length;if(e>=i){return df.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,i))};df.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};df.prototype.forEach=function t(e,i,r){if(i===void 0)i=0;if(r===void 0)r=this.length;if(i<=r){this.forEachInner(e,i,r,0)}else{this.forEachInvertedInner(e,i,r,0)}};df.prototype.map=function t(e,i,r){if(i===void 0)i=0;if(r===void 0)r=this.length;var n=[];this.forEach((function(t,i){return n.push(e(t,i))}),i,r);return n};df.from=function t(e){if(e instanceof df){return e}return e&&e.length?new pf(e):df.empty};var pf=function(t){function e(e){t.call(this);this.values=e}if(t)e.__proto__=t;e.prototype=Object.create(t&&t.prototype);e.prototype.constructor=e;var i={length:{configurable:true},depth:{configurable:true}};e.prototype.flatten=function t(){return this.values};e.prototype.sliceInner=function t(i,r){if(i==0&&r==this.length){return this}return new e(this.values.slice(i,r))};e.prototype.getInner=function t(e){return this.values[e]};e.prototype.forEachInner=function t(e,i,r,n){for(var s=i;s<r;s++){if(e(this.values[s],n+s)===false){return false}}};e.prototype.forEachInvertedInner=function t(e,i,r,n){for(var s=i-1;s>=r;s--){if(e(this.values[s],n+s)===false){return false}}};e.prototype.leafAppend=function t(i){if(this.length+i.length<=cf){return new e(this.values.concat(i.flatten()))}};e.prototype.leafPrepend=function t(i){if(this.length+i.length<=cf){return new e(i.flatten().concat(this.values))}};i.length.get=function(){return this.values.length};i.depth.get=function(){return 0};Object.defineProperties(e.prototype,i);return e}(df);df.empty=new pf([]);var mf=function(t){function e(e,i){t.call(this);this.left=e;this.right=i;this.length=e.length+i.length;this.depth=Math.max(e.depth,i.depth)+1}if(t)e.__proto__=t;e.prototype=Object.create(t&&t.prototype);e.prototype.constructor=e;e.prototype.flatten=function t(){return this.left.flatten().concat(this.right.flatten())};e.prototype.getInner=function t(e){return e<this.left.length?this.left.get(e):this.right.get(e-this.left.length)};e.prototype.forEachInner=function t(e,i,r,n){var s=this.left.length;if(i<s&&this.left.forEachInner(e,i,Math.min(r,s),n)===false){return false}if(r>s&&this.right.forEachInner(e,Math.max(i-s,0),Math.min(this.length,r)-s,n+s)===false){return false}};e.prototype.forEachInvertedInner=function t(e,i,r,n){var s=this.left.length;if(i>s&&this.right.forEachInvertedInner(e,i-s,Math.max(r,s)-s,n+s)===false){return false}if(r<s&&this.left.forEachInvertedInner(e,Math.min(i,s),r,n)===false){return false}};e.prototype.sliceInner=function t(e,i){if(e==0&&i==this.length){return this}var r=this.left.length;if(i<=r){return this.left.slice(e,i)}if(e>=r){return this.right.slice(e-r,i-r)}return this.left.slice(e,r).append(this.right.slice(0,i-r))};e.prototype.leafAppend=function t(i){var r=this.right.leafAppend(i);if(r){return new e(this.left,r)}};e.prototype.leafPrepend=function t(i){var r=this.left.leafPrepend(i);if(r){return new e(r,this.right)}};e.prototype.appendInner=function t(i){if(this.left.depth>=Math.max(this.right.depth,i.depth)+1){return new e(this.left,new e(this.right,i))}return new e(this,i)};return e}(df);const wf=500;class gf{constructor(t,e){this.items=t;this.eventCount=e}popEvent(t,e){if(this.eventCount==0)return null;let i=this.items.length;for(;;i--){let t=this.items.get(i-1);if(t.selection){--i;break}}let r,n;if(e){r=this.remapping(i,this.items.length);n=r.maps.length}let s=t.tr;let l,u;let o=[],f=[];this.items.forEach(((t,e)=>{if(!t.step){if(!r){r=this.remapping(i,e+1);n=r.maps.length}n--;f.push(t);return}if(r){f.push(new kf(t.map));let e=t.step.map(r.slice(n)),i;if(e&&s.maybeStep(e).doc){i=s.mapping.maps[s.mapping.maps.length-1];o.push(new kf(i,undefined,undefined,o.length+f.length))}n--;if(i)r.appendMap(i,n)}else{s.maybeStep(t.step)}if(t.selection){l=r?t.selection.map(r.slice(n)):t.selection;u=new gf(this.items.slice(0,i).append(f.reverse().concat(o)),this.eventCount-1);return false}}),this.items.length,0);return{remaining:u,transform:s,selection:l}}addTransform(t,e,i,r){let n=[],s=this.eventCount;let l=this.items,u=!r&&l.length?l.get(l.length-1):null;for(let i=0;i<t.steps.length;i++){let o=t.steps[i].invert(t.docs[i]);let f=new kf(t.mapping.maps[i],o,e),h;if(h=u&&u.merge(f)){f=h;if(i)n.pop();else l=l.slice(0,l.length-1)}n.push(f);if(e){s++;e=undefined}if(!r)u=f}let o=s-i.depth;if(o>vf){l=bf(l,o);s-=o}return new gf(l.append(n),s)}remapping(t,e){let i=new Ti;this.items.forEach(((e,r)=>{let n=e.mirrorOffset!=null&&r-e.mirrorOffset>=t?i.maps.length-e.mirrorOffset:undefined;i.appendMap(e.map,n)}),t,e);return i}addMaps(t){if(this.eventCount==0)return this;return new gf(this.items.append(t.map((t=>new kf(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let i=[],r=Math.max(0,this.items.length-e);let n=t.mapping;let s=t.steps.length;let l=this.eventCount;this.items.forEach((t=>{if(t.selection)l--}),r);let u=e;this.items.forEach((e=>{let r=n.getMirror(--u);if(r==null)return;s=Math.min(s,r);let o=n.maps[r];if(e.step){let s=t.steps[r].invert(t.docs[r]);let f=e.selection&&e.selection.map(n.slice(u+1,r));if(f)l++;i.push(new kf(o,s,f))}else{i.push(new kf(o))}}),r);let o=[];for(let t=e;t<s;t++)o.push(new kf(n.maps[t]));let f=this.items.slice(0,r).append(o).append(i);let h=new gf(f,l);if(h.emptyItemCount()>wf)h=h.compress(this.items.length-i.length);return h}emptyItemCount(){let t=0;this.items.forEach((e=>{if(!e.step)t++}));return t}compress(t=this.items.length){let e=this.remapping(0,t),i=e.maps.length;let r=[],n=0;this.items.forEach(((s,l)=>{if(l>=t){r.push(s);if(s.selection)n++}else if(s.step){let t=s.step.map(e.slice(i)),l=t&&t.getMap();i--;if(l)e.appendMap(l,i);if(t){let u=s.selection&&s.selection.map(e.slice(i));if(u)n++;let o=new kf(l.invert(),t,u),f,h=r.length-1;if(f=r.length&&r[h].merge(o))r[h]=f;else r.push(o)}}else if(s.map){i--}}),this.items.length,0);return new gf(df.from(r.reverse()),n)}}gf.empty=new gf(df.empty,0);function bf(t,e){let i;t.forEach(((t,r)=>{if(t.selection&&e--==0){i=r;return false}}));return t.slice(i)}class kf{constructor(t,e,i,r){this.map=t;this.step=e;this.selection=i;this.mirrorOffset=r}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new kf(e.getMap().invert(),e,this.selection)}}}class Df{constructor(t,e,i,r,n){this.done=t;this.undone=e;this.prevRanges=i;this.prevTime=r;this.prevComposition=n}}const vf=20;function yf(t,e,i,r){let n=i.getMeta(Of),s;if(n)return n.historyState;if(i.getMeta($f))t=new Df(t.done,t.undone,null,0,-1);let l=i.getMeta("appendedTransaction");if(i.steps.length==0){return t}else if(l&&l.getMeta(Of)){if(l.getMeta(Of).redo)return new Df(t.done.addTransform(i,undefined,r,Sf(e)),t.undone,Ef(i.mapping.maps[i.steps.length-1]),t.prevTime,t.prevComposition);else return new Df(t.done,t.undone.addTransform(i,undefined,r,Sf(e)),null,t.prevTime,t.prevComposition)}else if(i.getMeta("addToHistory")!==false&&!(l&&l.getMeta("addToHistory")===false)){let n=i.getMeta("composition");let s=t.prevTime==0||!l&&t.prevComposition!=n&&(t.prevTime<(i.time||0)-r.newGroupDelay||!Ff(i,t.prevRanges));let u=l?xf(t.prevRanges,i.mapping):Ef(i.mapping.maps[i.steps.length-1]);return new Df(t.done.addTransform(i,s?e.selection.getBookmark():undefined,r,Sf(e)),gf.empty,u,i.time,n==null?t.prevComposition:n)}else if(s=i.getMeta("rebased")){return new Df(t.done.rebased(i,s),t.undone.rebased(i,s),xf(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}else{return new Df(t.done.addMaps(i.mapping.maps),t.undone.addMaps(i.mapping.maps),xf(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}}function Ff(t,e){if(!e)return false;if(!t.docChanged)return true;let i=false;t.mapping.maps[0].forEach(((t,r)=>{for(let n=0;n<e.length;n+=2)if(t<=e[n+1]&&r>=e[n])i=true}));return i}function Ef(t){let e=[];t.forEach(((t,i,r,n)=>e.push(r,n)));return e}function xf(t,e){if(!t)return null;let i=[];for(let r=0;r<t.length;r+=2){let n=e.map(t[r],1),s=e.map(t[r+1],-1);if(n<=s)i.push(n,s)}return i}function Mf(t,e,i,r){let n=Sf(e);let s=Of.get(e).spec.config;let l=(r?t.undone:t.done).popEvent(e,n);if(!l)return;let u=l.selection.resolve(l.transform.doc);let o=(r?t.done:t.undone).addTransform(l.transform,e.selection.getBookmark(),s,n);let f=new Df(r?o:l.remaining,r?l.remaining:o,null,0,-1);i(l.transform.setSelection(u).setMeta(Of,{redo:r,historyState:f}).scrollIntoView())}let Af=false,Cf=null;function Sf(t){let e=t.plugins;if(Cf!=e){Af=false;Cf=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){Af=true;break}}return Af}const Of=new an("history");const $f=new an("closeHistory");function _f(t={}){t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500};return new on({key:Of,state:{init(){return new Df(gf.empty,gf.empty,null,0,-1)},apply(e,i,r){return yf(i,r,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(t,e){let i=e.inputType;let r=i=="historyUndo"?Bf:i=="historyRedo"?jf:null;if(!r)return false;e.preventDefault();return r(t.state,t.dispatch)}}}})}const Bf=(t,e)=>{let i=Of.getState(t);if(!i||i.done.eventCount==0)return false;if(e)Mf(i,t,e,false);return true};const jf=(t,e)=>{let i=Of.getState(t);if(!i||i.undone.eventCount==0)return false;if(e)Mf(i,t,e,true);return true};const qf=(t,e)=>{if(t.selection.empty)return false;if(e)e(t.tr.deleteSelection().scrollIntoView());return true};function Rf(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("backward",t):i.parentOffset>0))return null;return i}const Nf=(t,e,i)=>{let r=Rf(t,i);if(!r)return false;let n=If(r);if(!n){let i=r.blockRange(),n=i&&er(i);if(n==null)return false;if(e)e(t.tr.lift(i,n).scrollIntoView());return true}let s=n.nodeBefore;if(!s.type.spec.isolating&&nh(t,n,e))return true;if(r.parent.content.size==0&&(zf(s,"end")||Wr.isSelectable(s))){let i=kr(t.doc,r.before(),r.after(),ke.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(zf(s,"end")?Tr.findFrom(r.doc.resolve(r.mapping.map(n.pos,-1)),-1):Wr.create(r.doc,n.pos-s.nodeSize));e(r.scrollIntoView())}return true}}if(s.isAtom&&n.depth==r.depth-1){if(e)e(t.tr.delete(n.pos-s.nodeSize,n.pos).scrollIntoView());return true}return false};function zf(t,e,i=false){for(let r=t;r;r=e=="start"?r.firstChild:r.lastChild){if(r.isTextblock)return true;if(i&&r.childCount!=1)return false}return false}const Tf=(t,e,i)=>{let{$head:r,empty:n}=t.selection,s=r;if(!n)return false;if(r.parent.isTextblock){if(i?!i.endOfTextblock("backward",t):r.parentOffset>0)return false;s=If(r)}let l=s&&s.nodeBefore;if(!l||!Wr.isSelectable(l))return false;if(e)e(t.tr.setSelection(Wr.create(t.doc,s.pos-l.nodeSize)).scrollIntoView());return true};function If(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){if(t.index(e)>0)return t.doc.resolve(t.before(e+1));if(t.node(e).type.spec.isolating)break}return null}function Pf(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("forward",t):i.parentOffset<i.parent.content.size))return null;return i}const Jf=(t,e,i)=>{let r=Pf(t,i);if(!r)return false;let n=Uf(r);if(!n)return false;let s=n.nodeAfter;if(nh(t,n,e))return true;if(r.parent.content.size==0&&(zf(s,"start")||Wr.isSelectable(s))){let i=kr(t.doc,r.before(),r.after(),ke.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(zf(s,"start")?Tr.findFrom(r.doc.resolve(r.mapping.map(n.pos)),1):Wr.create(r.doc,r.mapping.map(n.pos)));e(r.scrollIntoView())}return true}}if(s.isAtom&&n.depth==r.depth-1){if(e)e(t.tr.delete(n.pos,n.pos+s.nodeSize).scrollIntoView());return true}return false};const Lf=(t,e,i)=>{let{$head:r,empty:n}=t.selection,s=r;if(!n)return false;if(r.parent.isTextblock){if(i?!i.endOfTextblock("forward",t):r.parentOffset<r.parent.content.size)return false;s=Uf(r)}let l=s&&s.nodeAfter;if(!l||!Wr.isSelectable(l))return false;if(e)e(t.tr.setSelection(Wr.create(t.doc,s.pos)).scrollIntoView());return true};function Uf(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let i=t.node(e);if(t.index(e)+1<i.childCount)return t.doc.resolve(t.after(e+1));if(i.type.spec.isolating)break}return null}const Wf=(t,e)=>{let i=t.selection,r=i instanceof Wr,n;if(r){if(i.node.isTextblock||!dr(t.doc,i.from))return false;n=i.from}else{n=mr(t.doc,i.from,-1);if(n==null)return false}if(e){let i=t.tr.join(n);if(r)i.setSelection(Wr.create(i.doc,n-t.doc.resolve(n).nodeBefore.nodeSize));e(i.scrollIntoView())}return true};const Hf=(t,e)=>{let i=t.selection,r;if(i instanceof Wr){if(i.node.isTextblock||!dr(t.doc,i.to))return false;r=i.to}else{r=mr(t.doc,i.to,1);if(r==null)return false}if(e)e(t.tr.join(r).scrollIntoView());return true};const Zf=(t,e)=>{let{$from:i,$to:r}=t.selection;let n=i.blockRange(r),s=n&&er(n);if(s==null)return false;if(e)e(t.tr.lift(n,s).scrollIntoView());return true};const Kf=(t,e)=>{let{$head:i,$anchor:r}=t.selection;if(!i.parent.type.spec.code||!i.sameParent(r))return false;if(e)e(t.tr.insertText("\n").scrollIntoView());return true};function Vf(t){for(let e=0;e<t.edgeCount;e++){let{type:i}=t.edge(e);if(i.isTextblock&&!i.hasRequiredAttrs())return i}return null}const Gf=(t,e)=>{let{$head:i,$anchor:r}=t.selection;if(!i.parent.type.spec.code||!i.sameParent(r))return false;let n=i.node(-1),s=i.indexAfter(-1),l=Vf(n.contentMatchAt(s));if(!l||!n.canReplaceWith(s,s,l))return false;if(e){let r=i.after(),n=t.tr.replaceWith(r,r,l.createAndFill());n.setSelection(Tr.near(n.doc.resolve(r),1));e(n.scrollIntoView())}return true};const Xf=(t,e)=>{let i=t.selection,{$from:r,$to:n}=i;if(i instanceof Zr||r.parent.inlineContent||n.parent.inlineContent)return false;let s=Vf(n.parent.contentMatchAt(n.indexAfter()));if(!s||!s.isTextblock)return false;if(e){let i=(!r.parentOffset&&n.index()<n.parent.childCount?r:n).pos;let l=t.tr.insert(i,s.createAndFill());l.setSelection(Lr.create(l.doc,i+1));e(l.scrollIntoView())}return true};const Yf=(t,e)=>{let{$cursor:i}=t.selection;if(!i||i.parent.content.size)return false;if(i.depth>1&&i.after()!=i.end(-1)){let r=i.before();if(ar(t.doc,r)){if(e)e(t.tr.split(r).scrollIntoView());return true}}let r=i.blockRange(),n=r&&er(r);if(n==null)return false;if(e)e(t.tr.lift(r,n).scrollIntoView());return true};function Qf(t){return(e,i)=>{let{$from:r,$to:n}=e.selection;if(e.selection instanceof Wr&&e.selection.node.isBlock){if(!r.parentOffset||!ar(e.doc,r.pos))return false;if(i)i(e.tr.split(r.pos).scrollIntoView());return true}if(!r.parent.isBlock)return false;if(i){let s=n.parentOffset==n.parent.content.size;let l=e.tr;if(e.selection instanceof Lr||e.selection instanceof Zr)l.deleteSelection();let u=r.depth==0?null:Vf(r.node(-1).contentMatchAt(r.indexAfter(-1)));let o=t&&t(n.parent,s);let f=o?[o]:s&&u?[{type:u}]:undefined;let h=ar(l.doc,l.mapping.map(r.pos),1,f);if(!f&&!h&&ar(l.doc,l.mapping.map(r.pos),1,u?[{type:u}]:undefined)){if(u)f=[{type:u}];h=true}if(h){l.split(l.mapping.map(r.pos),1,f);if(!s&&!r.parentOffset&&r.parent.type!=u){let t=l.mapping.map(r.before()),e=l.doc.resolve(t);if(u&&r.node(-1).canReplaceWith(e.index(),e.index()+1,u))l.setNodeMarkup(l.mapping.map(r.before()),u)}}i(l.scrollIntoView())}return true}}const th=Qf();const eh=(t,e)=>{let{$from:i,to:r}=t.selection,n;let s=i.sharedDepth(r);if(s==0)return false;n=i.before(s);if(e)e(t.tr.setSelection(Wr.create(t.doc,n)));return true};const ih=(t,e)=>{if(e)e(t.tr.setSelection(new Zr(t.doc)));return true};function rh(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s=e.index();if(!r||!n||!r.type.compatibleContent(n.type))return false;if(!r.content.size&&e.parent.canReplace(s-1,s)){if(i)i(t.tr.delete(e.pos-r.nodeSize,e.pos).scrollIntoView());return true}if(!e.parent.canReplace(s,s+1)||!(n.isTextblock||dr(t.doc,e.pos)))return false;if(i)i(t.tr.clearIncompatible(e.pos,r.type,r.contentMatchAt(r.childCount)).join(e.pos).scrollIntoView());return true}function nh(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s,l;if(r.type.spec.isolating||n.type.spec.isolating)return false;if(rh(t,e,i))return true;let u=e.parent.canReplace(e.index(),e.index()+1);if(u&&(s=(l=r.contentMatchAt(r.childCount)).findWrapping(n.type))&&l.matchType(s[0]||n.type).validEnd){if(i){let l=e.pos+n.nodeSize,u=de.empty;for(let t=s.length-1;t>=0;t--)u=de.from(s[t].create(null,u));u=de.from(r.copy(u));let o=t.tr.step(new Vi(e.pos-1,l,e.pos,l,new ke(u,1,0),s.length,true));let f=l+2*s.length;if(dr(o.doc,f))o.join(f);i(o.scrollIntoView())}return true}let o=Tr.findFrom(e,1);let f=o&&o.$from.blockRange(o.$to),h=f&&er(f);if(h!=null&&h>=e.depth){if(i)i(t.tr.lift(f,h).scrollIntoView());return true}if(u&&zf(n,"start",true)&&zf(r,"end")){let s=r,l=[];for(;;){l.push(s);if(s.isTextblock)break;s=s.lastChild}let u=n,o=1;for(;!u.isTextblock;u=u.firstChild)o++;if(s.canReplace(s.childCount,s.childCount,u.content)){if(i){let r=de.empty;for(let t=l.length-1;t>=0;t--)r=de.from(l[t].copy(r));let s=t.tr.step(new Vi(e.pos-l.length,e.pos+n.nodeSize,e.pos+o,e.pos+n.nodeSize-o,new ke(r,l.length,0),0,true));i(s.scrollIntoView())}return true}}return false}function sh(t){return function(e,i){let r=e.selection,n=t<0?r.$from:r.$to;let s=n.depth;while(n.node(s).isInline){if(!s)return false;s--}if(!n.node(s).isTextblock)return false;if(i)i(e.tr.setSelection(Lr.create(e.doc,t<0?n.start(s):n.end(s))));return true}}const lh=sh(-1);const uh=sh(1);function oh(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),u=l&&rr(l,t,e);if(!u)return false;if(r)r(i.tr.wrap(l,u).scrollIntoView());return true}}function fh(t,e=null){return function(i,r){let n=false;for(let r=0;r<i.selection.ranges.length&&!n;r++){let{$from:{pos:s},$to:{pos:l}}=i.selection.ranges[r];i.doc.nodesBetween(s,l,((r,s)=>{if(n)return false;if(!r.isTextblock||r.hasMarkup(t,e))return;if(r.type==t){n=true}else{let e=i.doc.resolve(s),r=e.index();n=e.parent.canReplaceWith(r,r+1,t)}}))}if(!n)return false;if(r){let n=i.tr;for(let r=0;r<i.selection.ranges.length;r++){let{$from:{pos:s},$to:{pos:l}}=i.selection.ranges[r];n.setBlockType(s,l,t,e)}r(n.scrollIntoView())}return true}}function hh(t,e,i){for(let r=0;r<e.length;r++){let{$from:n,$to:s}=e[r];let l=n.depth==0?t.inlineContent&&t.type.allowsMarkType(i):false;t.nodesBetween(n.pos,s.pos,(t=>{if(l)return false;l=t.inlineContent&&t.type.allowsMarkType(i)}));if(l)return true}return false}function ah(t,e=null){return function(i,r){let{empty:n,$cursor:s,ranges:l}=i.selection;if(n&&!s||!hh(i.doc,l,t))return false;if(r){if(s){if(t.isInSet(i.storedMarks||s.marks()))r(i.tr.removeStoredMark(t));else r(i.tr.addStoredMark(t.create(e)))}else{let n=false,s=i.tr;for(let e=0;!n&&e<l.length;e++){let{$from:r,$to:s}=l[e];n=i.doc.rangeHasMark(r.pos,s.pos,t)}for(let i=0;i<l.length;i++){let{$from:r,$to:u}=l[i];if(n){s.removeMark(r.pos,u.pos,t)}else{let i=r.pos,n=u.pos,l=r.nodeAfter,o=u.nodeBefore;let f=l&&l.isText?/^\s*/.exec(l.text)[0].length:0;let h=o&&o.isText?/\s*$/.exec(o.text)[0].length:0;if(i+f<n){i+=f;n-=h}s.addMark(i,n,t.create(e))}}r(s.scrollIntoView())}}return true}}function ch(...t){return function(e,i,r){for(let n=0;n<t.length;n++)if(t[n](e,i,r))return true;return false}}let dh=ch(qf,Nf,Tf);let ph=ch(qf,Jf,Lf);const mh={Enter:ch(Kf,Xf,Yf,th),"Mod-Enter":Gf,Backspace:dh,"Mod-Backspace":dh,"Shift-Backspace":dh,Delete:ph,"Mod-Delete":ph,"Mod-a":ih};const wh={"Ctrl-h":mh["Backspace"],"Alt-Backspace":mh["Mod-Backspace"],"Ctrl-d":mh["Delete"],"Ctrl-Alt-Backspace":mh["Mod-Delete"],"Alt-Delete":mh["Mod-Delete"],"Alt-d":mh["Mod-Delete"],"Ctrl-a":lh,"Ctrl-e":uh};for(let t in mh)wh[t]=mh[t];const gh=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os!="undefined"&&os.platform?os.platform()=="darwin":false;const bh=gh?wh:mh;function kh(t={}){return new on({view(e){return new Dh(e,t)}})}class Dh{constructor(t,e){var i;this.editorView=t;this.cursorPos=null;this.element=null;this.timeout=-1;this.width=(i=e.width)!==null&&i!==void 0?i:1;this.color=e.color===false?undefined:e.color||"black";this.class=e.class;this.handlers=["dragover","dragend","drop","dragleave"].map((e=>{let i=t=>{this[e](t)};t.dom.addEventListener(e,i);return{name:e,handler:i}}))}destroy(){this.handlers.forEach((({name:t,handler:e})=>this.editorView.dom.removeEventListener(t,e)))}update(t,e){if(this.cursorPos!=null&&e.doc!=t.state.doc){if(this.cursorPos>t.state.doc.content.size)this.setCursor(null);else this.updateOverlay()}}setCursor(t){if(t==this.cursorPos)return;this.cursorPos=t;if(t==null){this.element.parentNode.removeChild(this.element);this.element=null}else{this.updateOverlay()}}updateOverlay(){let t=this.editorView.state.doc.resolve(this.cursorPos);let e=!t.parent.inlineContent,i;if(e){let e=t.nodeBefore,r=t.nodeAfter;if(e||r){let t=this.editorView.nodeDOM(this.cursorPos-(e?e.nodeSize:0));if(t){let n=t.getBoundingClientRect();let s=e?n.bottom:n.top;if(e&&r)s=(s+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2;i={left:n.left,right:n.right,top:s-this.width/2,bottom:s+this.width/2}}}}if(!i){let t=this.editorView.coordsAtPos(this.cursorPos);i={left:t.left-this.width/2,right:t.left+this.width/2,top:t.top,bottom:t.bottom}}let r=this.editorView.dom.offsetParent;if(!this.element){this.element=r.appendChild(document.createElement("div"));if(this.class)this.element.className=this.class;this.element.style.cssText="position: absolute; z-index: 50; pointer-events: none;";if(this.color){this.element.style.backgroundColor=this.color}}this.element.classList.toggle("prosemirror-dropcursor-block",e);this.element.classList.toggle("prosemirror-dropcursor-inline",!e);let n,s;if(!r||r==document.body&&getComputedStyle(r).position=="static"){n=-pageXOffset;s=-pageYOffset}else{let t=r.getBoundingClientRect();n=t.left-r.scrollLeft;s=t.top-r.scrollTop}this.element.style.left=i.left-n+"px";this.element.style.top=i.top-s+"px";this.element.style.width=i.right-i.left+"px";this.element.style.height=i.bottom-i.top+"px"}scheduleRemoval(t){clearTimeout(this.timeout);this.timeout=setTimeout((()=>this.setCursor(null)),t)}dragover(t){if(!this.editorView.editable)return;let e=this.editorView.posAtCoords({left:t.clientX,top:t.clientY});let i=e&&e.inside>=0&&this.editorView.state.doc.nodeAt(e.inside);let r=i&&i.type.spec.disableDropCursor;let n=typeof r=="function"?r(this.editorView,e,t):r;if(e&&!n){let t=e.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){let e=br(this.editorView.state.doc,t,this.editorView.dragging.slice);if(e!=null)t=e}this.setCursor(t);this.scheduleRemoval(5e3)}}dragend(){this.scheduleRemoval(20)}drop(){this.scheduleRemoval(20)}dragleave(t){if(t.target==this.editorView.dom||!this.editorView.dom.contains(t.relatedTarget))this.setCursor(null)}}class vh extends Tr{constructor(t){super(t,t)}map(t,e){let i=t.resolve(e.map(this.head));return vh.valid(i)?new vh(i):Tr.near(i)}content(){return ke.empty}eq(t){return t instanceof vh&&t.head==this.head}toJSON(){return{type:"gapcursor",pos:this.head}}static fromJSON(t,e){if(typeof e.pos!="number")throw new RangeError("Invalid input for GapCursor.fromJSON");return new vh(t.resolve(e.pos))}getBookmark(){return new yh(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!Fh(t)||!Eh(t))return false;let i=e.type.spec.allowGapCursor;if(i!=null)return i;let r=e.contentMatchAt(t.index()).defaultType;return r&&r.isTextblock}static findGapCursorFrom(t,e,i=false){t:for(;;){if(!i&&vh.valid(t))return t;let r=t.pos,n=null;for(let i=t.depth;;i--){let s=t.node(i);if(e>0?t.indexAfter(i)<s.childCount:t.index(i)>0){n=s.child(e>0?t.indexAfter(i):t.index(i)-1);break}else if(i==0){return null}r+=e;let l=t.doc.resolve(r);if(vh.valid(l))return l}for(;;){let s=e>0?n.firstChild:n.lastChild;if(!s){if(n.isAtom&&!n.isText&&!Wr.isSelectable(n)){t=t.doc.resolve(r+n.nodeSize*e);i=false;continue t}break}n=s;r+=e;let l=t.doc.resolve(r);if(vh.valid(l))return l}return null}}}vh.prototype.visible=false;vh.findFrom=vh.findGapCursorFrom;Tr.jsonID("gapcursor",vh);class yh{constructor(t){this.pos=t}map(t){return new yh(t.map(this.pos))}resolve(t){let e=t.resolve(this.pos);return vh.valid(e)?new vh(e):Tr.near(e)}}function Fh(t){for(let e=t.depth;e>=0;e--){let i=t.index(e),r=t.node(e);if(i==0){if(r.type.spec.isolating)return true;continue}for(let t=r.child(i-1);;t=t.lastChild){if(t.childCount==0&&!t.inlineContent||t.isAtom||t.type.spec.isolating)return true;if(t.inlineContent)return false}}return true}function Eh(t){for(let e=t.depth;e>=0;e--){let i=t.indexAfter(e),r=t.node(e);if(i==r.childCount){if(r.type.spec.isolating)return true;continue}for(let t=r.child(i);;t=t.firstChild){if(t.childCount==0&&!t.inlineContent||t.isAtom||t.type.spec.isolating)return true;if(t.inlineContent)return false}}return true}function xh(){return new on({props:{decorations:Oh,createSelectionBetween(t,e,i){return e.pos==i.pos&&vh.valid(i)?new vh(i):null},handleClick:Ch,handleKeyDown:Mh,handleDOMEvents:{beforeinput:Sh}}})}const Mh=af({ArrowLeft:Ah("horiz",-1),ArrowRight:Ah("horiz",1),ArrowUp:Ah("vert",-1),ArrowDown:Ah("vert",1)});function Ah(t,e){const i=t=="vert"?e>0?"down":"up":e>0?"right":"left";return function(t,r,n){let s=t.selection;let l=e>0?s.$to:s.$from,u=s.empty;if(s instanceof Lr){if(!n.endOfTextblock(i)||l.depth==0)return false;u=false;l=t.doc.resolve(e>0?l.after():l.before())}let o=vh.findGapCursorFrom(l,e,u);if(!o)return false;if(r)r(t.tr.setSelection(new vh(o)));return true}}function Ch(t,e,i){if(!t||!t.editable)return false;let r=t.state.doc.resolve(e);if(!vh.valid(r))return false;let n=t.posAtCoords({left:i.clientX,top:i.clientY});if(n&&n.inside>-1&&Wr.isSelectable(t.state.doc.nodeAt(n.inside)))return false;t.dispatch(t.state.tr.setSelection(new vh(r)));return true}function Sh(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof vh))return false;let{$from:i}=t.state.selection;let r=i.parent.contentMatchAt(i.index()).findWrapping(t.state.schema.nodes.text);if(!r)return false;let n=de.empty;for(let t=r.length-1;t>=0;t--)n=de.from(r[t].createAndFill(null,n));let s=t.state.tr.replace(i.pos,i.pos,new ke(n,0,0));s.setSelection(Lr.near(s.doc.resolve(i.pos+1)));t.dispatch(s);return false}function Oh(t){if(!(t.selection instanceof vh))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return Iu.create(t.doc,[Nu.widget(t.selection.head,e,{key:"gapcursor"})])}function $h(){var t=arguments[0];if(typeof t=="string")t=document.createElement(t);var e=1,i=arguments[1];if(i&&typeof i=="object"&&i.nodeType==null&&!Array.isArray(i)){for(var r in i)if(Object.prototype.hasOwnProperty.call(i,r)){var n=i[r];if(typeof n=="string")t.setAttribute(r,n);else if(n!=null)t[r]=n}e++}for(;e<arguments.length;e++)_h(t,arguments[e]);return t}function _h(t,e){if(typeof e=="string"){t.appendChild(document.createTextNode(e))}else if(e==null);else if(e.nodeType!=null){t.appendChild(e)}else if(Array.isArray(e)){for(var i=0;i<e.length;i++)_h(t,e[i])}else{throw new RangeError("Unsupported child node: "+e)}}const Bh="http://www.w3.org/2000/svg";const jh="http://www.w3.org/1999/xlink";const qh="ProseMirror-icon";function Rh(t){let e=0;for(let i=0;i<t.length;i++)e=(e<<5)-e+t.charCodeAt(i)|0;return e}function Nh(t,e){let i=(t.nodeType==9?t:t.ownerDocument)||document;let r=i.createElement("div");r.className=qh;if(e.path){let{path:n,width:s,height:l}=e;let u="pm-icon-"+Rh(n).toString(16);if(!i.getElementById(u))zh(t,u,e);let o=r.appendChild(i.createElementNS(Bh,"svg"));o.style.width=s/l+"em";let f=o.appendChild(i.createElementNS(Bh,"use"));f.setAttributeNS(jh,"href",/([^#]*)/.exec(i.location.toString())[1]+"#"+u)}else if(e.dom){r.appendChild(e.dom.cloneNode(true))}else{let{text:t,css:n}=e;r.appendChild(i.createElement("span")).textContent=t||"";if(n)r.firstChild.style.cssText=n}return r}function zh(t,e,i){let[r,n]=t.nodeType==9?[t,t.body]:[t.ownerDocument||document,t];let s=r.getElementById(qh+"-collection");if(!s){s=r.createElementNS(Bh,"svg");s.id=qh+"-collection";s.style.display="none";n.insertBefore(s,n.firstChild)}let l=r.createElementNS(Bh,"symbol");l.id=e;l.setAttribute("viewBox","0 0 "+i.width+" "+i.height);let u=l.appendChild(r.createElementNS(Bh,"path"));u.setAttribute("d",i.path);s.appendChild(l)}const Th="ProseMirror-menu";class Ih{constructor(t){this.spec=t}render(t){let e=this.spec;let i=e.render?e.render(t):e.icon?Nh(t.root,e.icon):e.label?$h("div",null,Ph(t,e.label)):null;if(!i)throw new RangeError("MenuItem without icon or label property");if(e.title){const r=typeof e.title==="function"?e.title(t.state):e.title;i.setAttribute("title",Ph(t,r))}if(e.class)i.classList.add(e.class);if(e.css)i.style.cssText+=e.css;i.addEventListener("mousedown",(r=>{r.preventDefault();if(!i.classList.contains(Th+"-disabled"))e.run(t.state,t.dispatch,t,r)}));function r(t){if(e.select){let r=e.select(t);i.style.display=r?"":"none";if(!r)return false}let r=true;if(e.enable){r=e.enable(t)||false;sa(i,Th+"-disabled",!r)}if(e.active){let n=r&&e.active(t)||false;sa(i,Th+"-active",n)}return true}return{dom:i,update:r}}}function Ph(t,e){return t._props.translate?t._props.translate(e):e}let Jh={time:0,node:null};function Lh(t){Jh.time=Date.now();Jh.node=t.target}function Uh(t){return Date.now()-100<Jh.time&&Jh.node&&t.contains(Jh.node)}class Wh{constructor(t,e={}){this.options=e;this.options=e||{};this.content=Array.isArray(t)?t:[t]}render(t){let e=Hh(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=$h("div",{class:Th+"-dropdown "+(this.options.class||""),style:this.options.css},Ph(t,this.options.label||""));if(this.options.title)r.setAttribute("title",Ph(t,this.options.title));let n=$h("div",{class:Th+"-dropdown-wrap"},r);let s=null;let l=null;let u=()=>{if(s&&s.close()){s=null;i.removeEventListener("mousedown",l)}};r.addEventListener("mousedown",(t=>{t.preventDefault();Lh(t);if(s){u()}else{s=this.expand(n,e.dom);i.addEventListener("mousedown",l=()=>{if(!Uh(n))u()})}}));function o(t){let i=e.update(t);n.style.display=i?"":"none";return i}return{dom:n,update:o}}expand(t,e){let i=$h("div",{class:Th+"-dropdown-menu "+(this.options.class||"")},e);let r=false;function n(){if(r)return false;r=true;t.removeChild(i);return true}t.appendChild(i);return{close:n,node:i}}}function Hh(t,e){let i=[],r=[];for(let n=0;n<t.length;n++){let{dom:s,update:l}=t[n].render(e);i.push($h("div",{class:Th+"-dropdown-item"},s));r.push(l)}return{dom:i,update:Zh(r,i)}}function Zh(t,e){return i=>{let r=false;for(let n=0;n<t.length;n++){let s=t[n](i);e[n].style.display=s?"":"none";if(s)r=true}return r}}class Kh{constructor(t,e={}){this.options=e;this.content=Array.isArray(t)?t:[t]}render(t){let e=Hh(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=$h("div",{class:Th+"-submenu-label"},Ph(t,this.options.label||""));let n=$h("div",{class:Th+"-submenu-wrap"},r,$h("div",{class:Th+"-submenu"},e.dom));let s=null;r.addEventListener("mousedown",(t=>{t.preventDefault();Lh(t);sa(n,Th+"-submenu-wrap-active",false);if(!s)i.addEventListener("mousedown",s=()=>{if(!Uh(n)){n.classList.remove(Th+"-submenu-wrap-active");i.removeEventListener("mousedown",s);s=null}})}));function l(t){let i=e.update(t);n.style.display=i?"":"none";return i}return{dom:n,update:l}}}function Vh(t,e){let i=document.createDocumentFragment();let r=[],n=[];for(let s=0;s<e.length;s++){let l=e[s],u=[],o=[];for(let e=0;e<l.length;e++){let{dom:r,update:n}=l[e].render(t);let s=$h("span",{class:Th+"item"},r);i.appendChild(s);o.push(s);u.push(n)}if(u.length){r.push(Zh(u,o));if(s<e.length-1)n.push(i.appendChild(Gh()))}}function s(t){let e=false,i=false;for(let s=0;s<r.length;s++){let l=r[s](t);if(s)n[s-1].style.display=i&&l?"":"none";i=l;if(l)e=true}return e}return{dom:i,update:s}}function Gh(){return $h("span",{class:Th+"separator"})}const Xh={join:{width:800,height:900,path:"M0 75h800v125h-800z M0 825h800v-125h-800z M250 400h100v-100h100v100h100v100h-100v100h-100v-100h-100z"},lift:{width:1024,height:1024,path:"M219 310v329q0 7-5 12t-12 5q-8 0-13-5l-164-164q-5-5-5-13t5-13l164-164q5-5 13-5 7 0 12 5t5 12zM1024 749v109q0 7-5 12t-12 5h-987q-7 0-12-5t-5-12v-109q0-7 5-12t12-5h987q7 0 12 5t5 12zM1024 530v109q0 7-5 12t-12 5h-621q-7 0-12-5t-5-12v-109q0-7 5-12t12-5h621q7 0 12 5t5 12zM1024 310v109q0 7-5 12t-12 5h-621q-7 0-12-5t-5-12v-109q0-7 5-12t12-5h621q7 0 12 5t5 12zM1024 91v109q0 7-5 12t-12 5h-987q-7 0-12-5t-5-12v-109q0-7 5-12t12-5h987q7 0 12 5t5 12z"},selectParentNode:{text:"⬚",css:"font-weight: bold"},undo:{width:1024,height:1024,path:"M761 1024c113-206 132-520-313-509v253l-384-384 384-384v248c534-13 594 472 313 775z"},redo:{width:1024,height:1024,path:"M576 248v-248l384 384-384 384v-253c-446-10-427 303-313 509-280-303-221-789 313-775z"},strong:{width:805,height:1024,path:"M317 869q42 18 80 18 214 0 214-191 0-65-23-102-15-25-35-42t-38-26-46-14-48-6-54-1q-41 0-57 5 0 30-0 90t-0 90q0 4-0 38t-0 55 2 47 6 38zM309 442q24 4 62 4 46 0 81-7t62-25 42-51 14-81q0-40-16-70t-45-46-61-24-70-8q-28 0-74 7 0 28 2 86t2 86q0 15-0 45t-0 45q0 26 0 39zM0 950l1-53q8-2 48-9t60-15q4-6 7-15t4-19 3-18 1-21 0-19v-37q0-561-12-585-2-4-12-8t-25-6-28-4-27-2-17-1l-2-47q56-1 194-6t213-5q13 0 39 0t38 0q40 0 78 7t73 24 61 40 42 59 16 78q0 29-9 54t-22 41-36 32-41 25-48 22q88 20 146 76t58 141q0 57-20 102t-53 74-78 48-93 27-100 8q-25 0-75-1t-75-1q-60 0-175 6t-132 6z"},em:{width:585,height:1024,path:"M0 949l9-48q3-1 46-12t63-21q16-20 23-57 0-4 35-165t65-310 29-169v-14q-13-7-31-10t-39-4-33-3l10-58q18 1 68 3t85 4 68 1q27 0 56-1t69-4 56-3q-2 22-10 50-17 5-58 16t-62 19q-4 10-8 24t-5 22-4 26-3 24q-15 84-50 239t-44 203q-1 5-7 33t-11 51-9 47-3 32l0 10q9 2 105 17-1 25-9 56-6 0-18 0t-18 0q-16 0-49-5t-49-5q-78-1-117-1-29 0-81 5t-69 6z"},code:{width:896,height:1024,path:"M608 192l-96 96 224 224-224 224 96 96 288-320-288-320zM288 192l-288 320 288 320 96-96-224-224 224-224-96-96z"},link:{width:951,height:1024,path:"M832 694q0-22-16-38l-118-118q-16-16-38-16-24 0-41 18 1 1 10 10t12 12 8 10 7 14 2 15q0 22-16 38t-38 16q-8 0-15-2t-14-7-10-8-12-12-10-10q-18 17-18 41 0 22 16 38l117 118q15 15 38 15 22 0 38-14l84-83q16-16 16-38zM430 292q0-22-16-38l-117-118q-16-16-38-16-22 0-38 15l-84 83q-16 16-16 38 0 22 16 38l118 118q15 15 38 15 24 0 41-17-1-1-10-10t-12-12-8-10-7-14-2-15q0-22 16-38t38-16q8 0 15 2t14 7 10 8 12 12 10 10q18-17 18-41zM941 694q0 68-48 116l-84 83q-47 47-116 47-69 0-116-48l-117-118q-47-47-47-116 0-70 50-119l-50-50q-49 50-118 50-68 0-116-48l-118-118q-48-48-48-116t48-116l84-83q47-47 116-47 69 0 116 48l117 118q47 47 47 116 0 70-50 119l50 50q49-50 118-50 68 0 116 48l118 118q48 48 48 116z"},bulletList:{width:768,height:896,path:"M0 512h128v-128h-128v128zM0 256h128v-128h-128v128zM0 768h128v-128h-128v128zM256 512h512v-128h-512v128zM256 256h512v-128h-512v128zM256 768h512v-128h-512v128z"},orderedList:{width:768,height:896,path:"M320 512h448v-128h-448v128zM320 768h448v-128h-448v128zM320 128v128h448v-128h-448zM79 384h78v-256h-36l-85 23v50l43-2v185zM189 590c0-36-12-78-96-78-33 0-64 6-83 16l1 66c21-10 42-15 67-15s32 11 32 28c0 26-30 58-110 112v50h192v-67l-91 2c49-30 87-66 87-113l1-1z"},blockquote:{width:640,height:896,path:"M0 448v256h256v-256h-128c0 0 0-128 128-128v-128c0 0-256 0-256 256zM640 320v-128c0 0-256 0-256 256v256h256v-256h-128c0 0 0-128 128-128z"}};const Yh=new Ih({title:"Join with above block",run:Wf,select:t=>Wf(t),icon:Xh.join});const Qh=new Ih({title:"Lift out of enclosing block",run:Zf,select:t=>Zf(t),icon:Xh.lift});const ta=new Ih({title:"Select parent node",run:eh,select:t=>eh(t),icon:Xh.selectParentNode});let ea=new Ih({title:"Undo last change",run:Bf,enable:t=>Bf(t),icon:Xh.undo});let ia=new Ih({title:"Redo last undone change",run:jf,enable:t=>jf(t),icon:Xh.redo});function ra(t,e){let i={run(i,r){return oh(t,e.attrs)(i,r)},select(i){return oh(t,e.attrs)(i)}};for(let t in e)i[t]=e[t];return new Ih(i)}function na(t,e){let i=fh(t,e.attrs);let r={run:i,enable(t){return i(t)},active(i){let{$from:r,to:n,node:s}=i.selection;if(s)return s.hasMarkup(t,e.attrs);return n<=r.end()&&r.parent.hasMarkup(t,e.attrs)}};for(let t in e)r[t]=e[t];return new Ih(r)}function sa(t,e,i){if(i)t.classList.add(e);else t.classList.remove(e)}const la="ProseMirror-menubar";function ua(){if(typeof navigator=="undefined")return false;let t=navigator.userAgent;return!/Edge\/\d/.test(t)&&/AppleWebKit/.test(t)&&/Mobile\/\w+/.test(t)}function oa(t){return new on({view(e){return new fa(e,t)}})}class fa{constructor(t,e){this.editorView=t;this.options=e;this.spacer=null;this.maxHeight=0;this.widthForMaxHeight=0;this.floating=false;this.scrollHandler=null;this.wrapper=$h("div",{class:la+"-wrapper"});this.menu=this.wrapper.appendChild($h("div",{class:la}));this.menu.className=la;if(t.dom.parentNode)t.dom.parentNode.replaceChild(this.wrapper,t.dom);this.wrapper.appendChild(t.dom);let{dom:i,update:r}=Vh(this.editorView,this.options.content);this.contentUpdate=r;this.menu.appendChild(i);this.update();if(e.floating&&!ua()){this.updateFloat();let t=ca(this.wrapper);this.scrollHandler=e=>{let i=this.editorView.root;if(!(i.body||i).contains(this.wrapper))t.forEach((t=>t.removeEventListener("scroll",this.scrollHandler)));else this.updateFloat(e.target.getBoundingClientRect?e.target:undefined)};t.forEach((t=>t.addEventListener("scroll",this.scrollHandler)))}}update(){this.contentUpdate(this.editorView.state);if(this.floating){this.updateScrollCursor()}else{if(this.menu.offsetWidth!=this.widthForMaxHeight){this.widthForMaxHeight=this.menu.offsetWidth;this.maxHeight=0}if(this.menu.offsetHeight>this.maxHeight){this.maxHeight=this.menu.offsetHeight;this.menu.style.minHeight=this.maxHeight+"px"}}}updateScrollCursor(){let t=this.editorView.root.getSelection();if(!t.focusNode)return;let e=t.getRangeAt(0).getClientRects();let i=e[ha(t)?0:e.length-1];if(!i)return;let r=this.menu.getBoundingClientRect();if(i.top<r.bottom&&i.bottom>r.top){let t=aa(this.wrapper);if(t)t.scrollTop-=r.bottom-i.top}}updateFloat(t){let e=this.wrapper,i=e.getBoundingClientRect(),r=t?Math.max(0,t.getBoundingClientRect().top):0;if(this.floating){if(i.top>=r||i.bottom<this.menu.offsetHeight+10){this.floating=false;this.menu.style.position=this.menu.style.left=this.menu.style.top=this.menu.style.width="";this.menu.style.display="";this.spacer.parentNode.removeChild(this.spacer);this.spacer=null}else{let n=(e.offsetWidth-e.clientWidth)/2;this.menu.style.left=i.left+n+"px";this.menu.style.display=i.top>(this.editorView.dom.ownerDocument.defaultView||window).innerHeight?"none":"";if(t)this.menu.style.top=r+"px"}}else{if(i.top<r&&i.bottom>=this.menu.offsetHeight+10){this.floating=true;let i=this.menu.getBoundingClientRect();this.menu.style.left=i.left+"px";this.menu.style.width=i.width+"px";if(t)this.menu.style.top=r+"px";this.menu.style.position="fixed";this.spacer=$h("div",{class:la+"-spacer",style:`height: ${i.height}px`});e.insertBefore(this.spacer,this.menu)}}}destroy(){if(this.wrapper.parentNode)this.wrapper.parentNode.replaceChild(this.editorView.dom,this.wrapper)}}function ha(t){if(t.anchorNode==t.focusNode)return t.anchorOffset>t.focusOffset;return t.anchorNode.compareDocumentPosition(t.focusNode)==Node.DOCUMENT_POSITION_FOLLOWING}function aa(t){for(let e=t.parentNode;e;e=e.parentNode)if(e.scrollHeight>e.clientHeight)return e}function ca(t){let e=[t.ownerDocument.defaultView||window];for(let i=t.parentNode;i;i=i.parentNode)e.push(i);return e}class da{constructor(t,e,i={}){this.match=t;this.match=t;this.handler=typeof e=="string"?pa(e):e;this.undoable=i.undoable!==false;this.inCode=i.inCode||false}}function pa(t){return function(e,i,r,n){let s=t;if(i[1]){let t=i[0].lastIndexOf(i[1]);s+=i[0].slice(t+i[1].length);r+=t;let e=r-n;if(e>0){s=i[0].slice(t-e,t)+s;r=n}}return e.tr.insertText(s,r,n)}}const ma=500;function wa({rules:t}){let e=new on({state:{init(){return null},apply(t,e){let i=t.getMeta(this);if(i)return i;return t.selectionSet||t.docChanged?null:e}},props:{handleTextInput(i,r,n,s){return ga(i,r,n,s,t,e)},handleDOMEvents:{compositionend:i=>{setTimeout((()=>{let{$cursor:r}=i.state.selection;if(r)ga(i,r.pos,r.pos,"",t,e)}))}}},isInputRules:true});return e}function ga(t,e,i,r,n,s){if(t.composing)return false;let l=t.state,u=l.doc.resolve(e);let o=u.parent.textBetween(Math.max(0,u.parentOffset-ma),u.parentOffset,null,"")+r;for(let f=0;f<n.length;f++){let h=n[f];if(u.parent.type.spec.code){if(!h.inCode)continue}else if(h.inCode==="only"){continue}let a=h.match.exec(o);let c=a&&h.handler(l,a,e-(a[0].length-r.length),i);if(!c)continue;if(h.undoable)c.setMeta(s,{transform:c,from:e,to:i,text:r});t.dispatch(c);return true}return false}const ba=(t,e)=>{let i=t.plugins;for(let r=0;r<i.length;r++){let n=i[r],s;if(n.spec.isInputRules&&(s=n.getState(t))){if(e){let i=t.tr,r=s.transform;for(let t=r.steps.length-1;t>=0;t--)i.step(r.steps[t].invert(r.docs[t]));if(s.text){let e=i.doc.resolve(s.from).marks();i.replaceWith(s.from,s.to,t.schema.text(s.text,e))}else{i.delete(s.from,s.to)}e(i)}return true}}return false};const ka=new da(/--$/,"—");const Da=new da(/\.\.\.$/,"…");const va=new da(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");const ya=new da(/"$/,"”");const Fa=new da(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");const Ea=new da(/'$/,"’");const xa=[va,ya,Fa,Ea];function Ma(t,e,i=null,r){return new da(t,((t,n,s,l)=>{let u=i instanceof Function?i(n):i;let o=t.tr.delete(s,l);let f=o.doc.resolve(s),h=f.blockRange(),a=h&&rr(h,e,u);if(!a)return null;o.wrap(h,a);let c=o.doc.resolve(s-1).nodeBefore;if(c&&c.type==e&&dr(o.doc,s-1)&&(!r||r(n,c)))o.join(s-1);return o}))}function Aa(t,e,i=null){return new da(t,((t,r,n,s)=>{let l=t.doc.resolve(n);let u=i instanceof Function?i(r):i;if(!l.node(-1).canReplaceWith(l.index(-1),l.indexAfter(-1),e))return null;return t.tr.delete(n,s).setBlockType(n,n,e,u)}))}const Ca="ProseMirror-prompt";function Sa(t){let e=document.body.appendChild(document.createElement("div"));e.className=Ca;let i=t=>{if(!e.contains(t.target))r()};setTimeout((()=>window.addEventListener("mousedown",i)),50);let r=()=>{window.removeEventListener("mousedown",i);if(e.parentNode)e.parentNode.removeChild(e)};let n=[];for(let e in t.fields)n.push(t.fields[e].render());let s=document.createElement("button");s.type="submit";s.className=Ca+"-submit";s.textContent="OK";let l=document.createElement("button");l.type="button";l.className=Ca+"-cancel";l.textContent="Cancel";l.addEventListener("click",r);let u=e.appendChild(document.createElement("form"));if(t.title)u.appendChild(document.createElement("h5")).textContent=t.title;n.forEach((t=>{u.appendChild(document.createElement("div")).appendChild(t)}));let o=u.appendChild(document.createElement("div"));o.className=Ca+"-buttons";o.appendChild(s);o.appendChild(document.createTextNode(" "));o.appendChild(l);let f=e.getBoundingClientRect();e.style.top=(window.innerHeight-f.height)/2+"px";e.style.left=(window.innerWidth-f.width)/2+"px";let h=()=>{let e=Oa(t.fields,n);if(e){r();t.callback(e)}};u.addEventListener("submit",(t=>{t.preventDefault();h()}));u.addEventListener("keydown",(t=>{if(t.keyCode==27){t.preventDefault();r()}else if(t.keyCode==13&&!(t.ctrlKey||t.metaKey||t.shiftKey)){t.preventDefault();h()}else if(t.keyCode==9){window.setTimeout((()=>{if(!e.contains(document.activeElement))r()}),500)}}));let a=u.elements[0];if(a)a.focus()}function Oa(t,e){let i=Object.create(null),r=0;for(let n in t){let s=t[n],l=e[r++];let u=s.read(l),o=s.validate(u);if(o){$a(l,o);return null}i[n]=s.clean(u)}return i}function $a(t,e){let i=t.parentNode;let r=i.appendChild(document.createElement("div"));r.style.left=t.offsetLeft+t.offsetWidth+2+"px";r.style.top=t.offsetTop-5+"px";r.className="ProseMirror-invalid";r.textContent=e;setTimeout((()=>i.removeChild(r)),1500)}class _a{constructor(t){this.options=t}read(t){return t.value}validateType(t){return null}validate(t){if(!t&&this.options.required)return"Required field";return this.validateType(t)||(this.options.validate?this.options.validate(t):null)}clean(t){return this.options.clean?this.options.clean(t):t}}class Ba extends _a{render(){let t=document.createElement("input");t.type="text";t.placeholder=this.options.label;t.value=this.options.value||"";t.autocomplete="off";return t}}function ja(t,e){let i=t.selection.$from;for(let t=i.depth;t>=0;t--){let r=i.index(t);if(i.node(t).canReplaceWith(r,r,e))return true}return false}function qa(t){return new Ih({title:"Insert image",label:"Image",enable(e){return ja(e,t)},run(e,i,r){let{from:n,to:s}=e.selection,l=null;if(e.selection instanceof Wr&&e.selection.node.type==t)l=e.selection.node.attrs;Sa({title:"Insert image",fields:{src:new Ba({label:"Location",required:true,value:l&&l.src}),title:new Ba({label:"Title",value:l&&l.title}),alt:new Ba({label:"Description",value:l?l.alt:e.doc.textBetween(n,s," ")})},callback(e){r.dispatch(r.state.tr.replaceSelectionWith(t.createAndFill(e)));r.focus()}})}})}function Ra(t,e){let i={label:e.title,run:t};for(let t in e)i[t]=e[t];if(!e.enable&&!e.select)i[e.enable?"enable":"select"]=e=>t(e);return new Ih(i)}function Na(t,e){let{from:i,$from:r,to:n,empty:s}=t.selection;if(s)return!!e.isInSet(t.storedMarks||r.marks());else return t.doc.rangeHasMark(i,n,e)}function za(t,e){let i={active(e){return Na(e,t)}};for(let t in e)i[t]=e[t];return Ra(ah(t),i)}function Ta(t){return new Ih({title:"Add or remove link",icon:Xh.link,active(e){return Na(e,t)},enable(t){return!t.selection.empty},run(e,i,r){if(Na(e,t)){ah(t)(e,i);return true}Sa({title:"Create a link",fields:{href:new Ba({label:"Link target",required:true}),title:new Ba({label:"Title"})},callback(e){ah(t,e)(r.state,r.dispatch);r.focus()}})}})}function Ia(t,e){return Ra(Wo(t,e.attrs),e)}function Pa(t){let e={};let i;if(i=t.marks.strong)e.toggleStrong=za(i,{title:"Toggle strong style",icon:Xh.strong});if(i=t.marks.em)e.toggleEm=za(i,{title:"Toggle emphasis",icon:Xh.em});if(i=t.marks.code)e.toggleCode=za(i,{title:"Toggle code font",icon:Xh.code});if(i=t.marks.link)e.toggleLink=Ta(i);let r;if(r=t.nodes.image)e.insertImage=qa(r);if(r=t.nodes.bullet_list)e.wrapBulletList=Ia(r,{title:"Wrap in bullet list",icon:Xh.bulletList});if(r=t.nodes.ordered_list)e.wrapOrderedList=Ia(r,{title:"Wrap in ordered list",icon:Xh.orderedList});if(r=t.nodes.blockquote)e.wrapBlockQuote=ra(r,{title:"Wrap in block quote",icon:Xh.blockquote});if(r=t.nodes.paragraph)e.makeParagraph=na(r,{title:"Change to paragraph",label:"Plain"});if(r=t.nodes.code_block)e.makeCodeBlock=na(r,{title:"Change to code block",label:"Code"});if(r=t.nodes.heading)for(let t=1;t<=10;t++)e["makeHead"+t]=na(r,{title:"Change to heading "+t,label:"Level "+t,attrs:{level:t}});if(r=t.nodes.horizontal_rule){let t=r;e.insertHorizontalRule=new Ih({title:"Insert horizontal rule",label:"Horizontal rule",enable(e){return ja(e,t)},run(e,i){i(e.tr.replaceSelectionWith(t.create()))}})}let n=t=>t.filter((t=>t));e.insertMenu=new Wh(n([e.insertImage,e.insertHorizontalRule]),{label:"Insert"});e.typeMenu=new Wh(n([e.makeParagraph,e.makeCodeBlock,e.makeHead1&&new Kh(n([e.makeHead1,e.makeHead2,e.makeHead3,e.makeHead4,e.makeHead5,e.makeHead6]),{label:"Heading"})]),{label:"Type..."});e.inlineMenu=[n([e.toggleStrong,e.toggleEm,e.toggleCode,e.toggleLink])];e.blockMenu=[n([e.wrapBulletList,e.wrapOrderedList,e.wrapBlockQuote,Yh,Qh,ta])];e.fullMenu=e.inlineMenu.concat([[e.insertMenu,e.typeMenu]],[[ea,ia]],e.blockMenu);return e}const Ja=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function La(t,e){let i={},r;function n(t,r){if(e){let i=e[t];if(i===false)return;if(i)t=i}i[t]=r}n("Mod-z",Bf);n("Shift-Mod-z",jf);n("Backspace",ba);if(!Ja)n("Mod-y",jf);n("Alt-ArrowUp",Wf);n("Alt-ArrowDown",Hf);n("Mod-BracketLeft",Zf);n("Escape",eh);if(r=t.marks.strong){n("Mod-b",ah(r));n("Mod-B",ah(r))}if(r=t.marks.em){n("Mod-i",ah(r));n("Mod-I",ah(r))}if(r=t.marks.code)n("Mod-`",ah(r));if(r=t.nodes.bullet_list)n("Shift-Ctrl-8",Wo(r));if(r=t.nodes.ordered_list)n("Shift-Ctrl-9",Wo(r));if(r=t.nodes.blockquote)n("Ctrl->",oh(r));if(r=t.nodes.hard_break){let t=r,e=ch(Gf,((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}));n("Mod-Enter",e);n("Shift-Enter",e);if(Ja)n("Ctrl-Enter",e)}if(r=t.nodes.list_item){n("Enter",Zo(r));n("Mod-[",Ko(r));n("Mod-]",Xo(r))}if(r=t.nodes.paragraph)n("Shift-Ctrl-0",fh(r));if(r=t.nodes.code_block)n("Shift-Ctrl-\\",fh(r));if(r=t.nodes.heading)for(let t=1;t<=6;t++)n("Shift-Ctrl-"+t,fh(r,{level:t}));if(r=t.nodes.horizontal_rule){let t=r;n("Mod-_",((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}))}return i}function Ua(t){return Ma(/^\s*>\s$/,t)}function Wa(t){return Ma(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order==+t[1]))}function Ha(t){return Ma(/^\s*([-+*])\s$/,t)}function Za(t){return Aa(/^```$/,t)}function Ka(t,e){return Aa(new RegExp("^(#{1,"+e+"})\\s$"),t,(t=>({level:t[1].length})))}function Va(t){let e=xa.concat(Da,ka),i;if(i=t.nodes.blockquote)e.push(Ua(i));if(i=t.nodes.ordered_list)e.push(Wa(i));if(i=t.nodes.bullet_list)e.push(Ha(i));if(i=t.nodes.code_block)e.push(Za(i));if(i=t.nodes.heading)e.push(Ka(i,6));return wa({rules:e})}function Ga(t){let e=[Va(t.schema),hf(La(t.schema,t.mapKeys)),hf(bh),kh(),xh()];if(t.menuBar!==false)e.push(oa({floating:t.floatingMenu!==false,content:t.menuContent||Pa(t.schema).fullMenu}));if(t.history!==false)e.push(_f());return e.concat(new on({props:{attributes:{class:"ProseMirror-example-setup-style"}}}))}const Xa={Bold:"strong",Italic:"em",Blockquote:"blockquote",HeaderLevel1:"headerlevel1",HeaderLevel2:"headerlevel2",HeaderLevel3:"headerlevel3",Link:"link",OrderedList:"ordered_list",BulletList:"bullet_list",Strikethrough:"strikethrough",Code:"code",CodeBlock:"code_block"};const Ya={Heading:"heading",one:1,two:2,three:3};const Qa=(t,e)=>{t.active=t=>{const{from:i,$from:r,to:n,empty:s}=t.selection;if(s){return!!e.isInSet(t.storedMarks||r.marks())}else{return t.doc.rangeHasMark(i,n,e)}}};const tc=(t,e,i)=>{t.active=t=>{const{$from:r}=t.selection;const n=r.node(r.depth);if(n&&n.type.name===e.name){if(e.name===Ya.Heading&&i){return n.attrs.level===i}return true}return false}};const ec=(t,e)=>{t.active=t=>{const{from:i,to:r}=t.selection;for(let n=i;n<=r;n++){const i=t.doc.resolve(n);for(let t=i.depth;t>0;t--){const r=i.node(t);if(r&&r.type.name===e.name){return true}}}return false}};const ic=(t,e,i)=>{const r=t.marks[e];if(!r){throw new Error(`Mark "${e}" not found in schema`)}const n=rc(e,i);const s=ah(r,n);Qa(s,r);return s};const rc=(t,e)=>{if(t===Xa.Link&&e){return{href:e,target:nc(e)?"_blank":null}}return undefined};const nc=t=>!t.startsWith(window.location.origin);const sc=(t,e,i={},r=false)=>{const n=t.nodes[e];const s=t.nodes.paragraph;return(t,e)=>{const{$from:l,to:u}=t.selection;if(t.selection instanceof Lr&&l.sameParent(l.doc.resolve(u))){if(l.parent.type===n){if(e){e(t.tr.setBlockType(l.pos,u,s))}return true}else{if(r){return oh(n,i)(t,e)}else{return fh(n,i)(t,e)}}}return false}};const lc=(t,e,i)=>{const r=t.nodes[e];if(!r){throw new Error(`Node type "${e}" not found in schema`)}let n;if(e===Ya.Heading&&i){n=sc(t,Ya.Heading,{level:i})}else if(e===Xa.CodeBlock){n=sc(t,Xa.CodeBlock)}else{n=fh(r)}tc(n,r,i);return n};const uc=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`Node type "${e}" not found in schema`)}let r;if(e===Xa.Blockquote){r=sc(t,Xa.Blockquote,{},true)}else{r=oh(i)}ec(r,i);return r};const oc=t=>(e,i)=>{const{$from:r,$to:n}=e.selection;const s=r.blockRange(n);if(!s){return false}const l=s&&rr(s,t);if(l){if(i){i(e.tr.wrap(s,l).scrollIntoView())}return true}else{const t=s&&er(s);if(t!==null){if(i){i(e.tr.lift(s,t).scrollIntoView())}return true}return false}};const fc=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`List type "${e}" not found in schema`)}const r=oc(i);ec(r,i);return r};const hc={strong:ic,em:ic,underline:ic,strikethrough:ic,code:ic,link:ic,headerlevel1:t=>lc(t,Ya.Heading,Ya.one),headerlevel2:t=>lc(t,Ya.Heading,Ya.two),headerlevel3:t=>lc(t,Ya.Heading,Ya.three),blockquote:t=>uc(t,Xa.Blockquote),code_block:t=>lc(t,Xa.CodeBlock),ordered_list:t=>fc(t,Xa.OrderedList),bullet_list:t=>fc(t,Xa.BulletList)};class ac{constructor(t){this.schema=t}getCommand(t,e){const i=hc[t];if(!i){throw new Error(`The Mark "${t}" is not supported`)}return i(this.schema,t,e)}buildKeymap(){return{"Mod-B":this.getCommand(Xa.Bold),"Mod-I":this.getCommand(Xa.Italic),"Mod-Shift-1":this.getCommand(Xa.HeaderLevel1),"Mod-Shift-2":this.getCommand(Xa.HeaderLevel2),"Mod-Shift-3":this.getCommand(Xa.HeaderLevel3),"Mod-Shift-X":this.getCommand(Xa.Strikethrough),"Mod-`":this.getCommand(Xa.Code),"Mod-Shift-C":this.getCommand(Xa.CodeBlock)}}}const cc=()=>{const t=/Macintosh|MacIntel|MacPPC|Mac68K/;if(navigator.userAgent.match(t)){return{mod:"⌘",option:"⌥",shift:"⇧"}}return{mod:"Ctrl",option:"Alt",shift:"Shift"}};const{mod:dc,shift:pc}=cc();const mc=[{value:Xa.Bold,text:"Bold",commandText:`${dc} B`,icon:"-lime-text-bold",iconOnly:true,selected:false},{value:Xa.Italic,text:"Italic",commandText:`${dc} I`,icon:"-lime-text-italic",iconOnly:true,selected:false},{value:Xa.Strikethrough,text:"Strikethrough",commandText:`${dc} ${pc} X`,icon:"-lime-text-strikethrough",iconOnly:true,selected:false},{value:Xa.Code,text:"Code",commandText:`${dc} \``,icon:"-lime-text-code",iconOnly:true,selected:false},{value:Xa.CodeBlock,text:"Code Block",commandText:`${dc} ${pc} C`,icon:"-lime-text-code-block",iconOnly:true,selected:false},{separator:true},{value:Xa.HeaderLevel1,text:"Header 1",commandText:`${dc} ${pc} 1`,icon:"-lime-text-h-heading-1",iconOnly:true,selected:false},{value:Xa.HeaderLevel2,text:"Header 2",commandText:`${dc} ${pc} 2`,icon:"-lime-text-h-heading-2",iconOnly:true,selected:false},{value:Xa.HeaderLevel3,text:"Header 3",commandText:`${dc} ${pc} 3`,icon:"-lime-text-h-heading-3",iconOnly:true,selected:false},{separator:true},{value:Xa.BulletList,text:"Bullet list",icon:"-lime-text-bulleted-list",iconOnly:true,selected:false},{value:Xa.OrderedList,text:"Numbered list",icon:"-lime-text-ordered-list",iconOnly:true,selected:false},{value:Xa.Blockquote,text:"Blockquote",icon:"-lime-text-blockquote",iconOnly:true,selected:false}];const wc=()=>fe(mc);const gc={strong:"editor-menu.bold",em:"editor-menu.italic",headerlevel1:"editor-menu.h1",headerlevel2:"editor-menu.h2",headerlevel3:"editor-menu.h3",bullet_list:"editor-menu.bulleted-list",ordered_list:"editor-menu.numbered-list",code_block:"editor-menu.code-block",blockquote:"editor-menu.blockquote",link:"editor-menu.link",strikethrough:"editor-menu.strikethrough",code:"editor-menu.code"};const bc={};function kc(t){let e=bc[t];if(e){return e}e=bc[t]=[];for(let t=0;t<128;t++){const i=String.fromCharCode(t);e.push(i)}for(let i=0;i<t.length;i++){const r=t.charCodeAt(i);e[r]="%"+("0"+r.toString(16).toUpperCase()).slice(-2)}return e}function Dc(t,e){if(typeof e!=="string"){e=Dc.defaultChars}const i=kc(e);return t.replace(/(%[a-f0-9]{2})+/gi,(function(t){let e="";for(let r=0,n=t.length;r<n;r+=3){const s=parseInt(t.slice(r+1,r+3),16);if(s<128){e+=i[s];continue}if((s&224)===192&&r+3<n){const i=parseInt(t.slice(r+4,r+6),16);if((i&192)===128){const t=s<<6&1984|i&63;if(t<128){e+="��"}else{e+=String.fromCharCode(t)}r+=3;continue}}if((s&240)===224&&r+6<n){const i=parseInt(t.slice(r+4,r+6),16);const n=parseInt(t.slice(r+7,r+9),16);if((i&192)===128&&(n&192)===128){const t=s<<12&61440|i<<6&4032|n&63;if(t<2048||t>=55296&&t<=57343){e+="���"}else{e+=String.fromCharCode(t)}r+=6;continue}}if((s&248)===240&&r+9<n){const i=parseInt(t.slice(r+4,r+6),16);const n=parseInt(t.slice(r+7,r+9),16);const l=parseInt(t.slice(r+10,r+12),16);if((i&192)===128&&(n&192)===128&&(l&192)===128){let t=s<<18&1835008|i<<12&258048|n<<6&4032|l&63;if(t<65536||t>1114111){e+="����"}else{t-=65536;e+=String.fromCharCode(55296+(t>>10),56320+(t&1023))}r+=9;continue}}e+="�"}return e}))}Dc.defaultChars=";/?:@&=+$,#";Dc.componentChars="";const vc={};function yc(t){let e=vc[t];if(e){return e}e=vc[t]=[];for(let t=0;t<128;t++){const i=String.fromCharCode(t);if(/^[0-9a-z]$/i.test(i)){e.push(i)}else{e.push("%"+("0"+t.toString(16).toUpperCase()).slice(-2))}}for(let i=0;i<t.length;i++){e[t.charCodeAt(i)]=t[i]}return e}function Fc(t,e,i){if(typeof e!=="string"){i=e;e=Fc.defaultChars}if(typeof i==="undefined"){i=true}const r=yc(e);let n="";for(let e=0,s=t.length;e<s;e++){const l=t.charCodeAt(e);if(i&&l===37&&e+2<s){if(/^[0-9a-f]{2}$/i.test(t.slice(e+1,e+3))){n+=t.slice(e,e+3);e+=2;continue}}if(l<128){n+=r[l];continue}if(l>=55296&&l<=57343){if(l>=55296&&l<=56319&&e+1<s){const i=t.charCodeAt(e+1);if(i>=56320&&i<=57343){n+=encodeURIComponent(t[e]+t[e+1]);e++;continue}}n+="%EF%BF%BD";continue}n+=encodeURIComponent(t[e])}return n}Fc.defaultChars=";/?:@&=+$,-_.!~*'()#";Fc.componentChars="-_.!~*'()";function Ec(t){let e="";e+=t.protocol||"";e+=t.slashes?"//":"";e+=t.auth?t.auth+"@":"";if(t.hostname&&t.hostname.indexOf(":")!==-1){e+="["+t.hostname+"]"}else{e+=t.hostname||""}e+=t.port?":"+t.port:"";e+=t.pathname||"";e+=t.search||"";e+=t.hash||"";return e}function xc(){this.protocol=null;this.slashes=null;this.auth=null;this.port=null;this.hostname=null;this.hash=null;this.search=null;this.pathname=null}const Mc=/^([a-z0-9.+-]+:)/i;const Ac=/:[0-9]*$/;const Cc=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;const Sc=["<",">",'"',"`"," ","\r","\n","\t"];const Oc=["{","}","|","\\","^","`"].concat(Sc);const $c=["'"].concat(Oc);const _c=["%","/","?",";","#"].concat($c);const Bc=["/","?","#"];const jc=255;const qc=/^[+a-z0-9A-Z_-]{0,63}$/;const Rc=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;const Nc={javascript:true,"javascript:":true};const zc={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function Tc(t,e){if(t&&t instanceof xc)return t;const i=new xc;i.parse(t,e);return i}xc.prototype.parse=function(t,e){let i,r,n;let s=t;s=s.trim();if(!e&&t.split("#").length===1){const t=Cc.exec(s);if(t){this.pathname=t[1];if(t[2]){this.search=t[2]}return this}}let l=Mc.exec(s);if(l){l=l[0];i=l.toLowerCase();this.protocol=l;s=s.substr(l.length)}if(e||l||s.match(/^\/\/[^@\/]+@[^@\/]+/)){n=s.substr(0,2)==="//";if(n&&!(l&&Nc[l])){s=s.substr(2);this.slashes=true}}if(!Nc[l]&&(n||l&&!zc[l])){let t=-1;for(let e=0;e<Bc.length;e++){r=s.indexOf(Bc[e]);if(r!==-1&&(t===-1||r<t)){t=r}}let e,i;if(t===-1){i=s.lastIndexOf("@")}else{i=s.lastIndexOf("@",t)}if(i!==-1){e=s.slice(0,i);s=s.slice(i+1);this.auth=e}t=-1;for(let e=0;e<_c.length;e++){r=s.indexOf(_c[e]);if(r!==-1&&(t===-1||r<t)){t=r}}if(t===-1){t=s.length}if(s[t-1]===":"){t--}const n=s.slice(0,t);s=s.slice(t);this.parseHost(n);this.hostname=this.hostname||"";const l=this.hostname[0]==="["&&this.hostname[this.hostname.length-1]==="]";if(!l){const t=this.hostname.split(/\./);for(let e=0,i=t.length;e<i;e++){const i=t[e];if(!i){continue}if(!i.match(qc)){let r="";for(let t=0,e=i.length;t<e;t++){if(i.charCodeAt(t)>127){r+="x"}else{r+=i[t]}}if(!r.match(qc)){const r=t.slice(0,e);const n=t.slice(e+1);const l=i.match(Rc);if(l){r.push(l[1]);n.unshift(l[2])}if(n.length){s=n.join(".")+s}this.hostname=r.join(".");break}}}}if(this.hostname.length>jc){this.hostname=""}if(l){this.hostname=this.hostname.substr(1,this.hostname.length-2)}}const u=s.indexOf("#");if(u!==-1){this.hash=s.substr(u);s=s.slice(0,u)}const o=s.indexOf("?");if(o!==-1){this.search=s.substr(o);s=s.slice(0,o)}if(s){this.pathname=s}if(zc[i]&&this.hostname&&!this.pathname){this.pathname=""}return this};xc.prototype.parseHost=function(t){let e=Ac.exec(t);if(e){e=e[0];if(e!==":"){this.port=e.substr(1)}t=t.substr(0,t.length-e.length)}if(t){this.hostname=t}};const Ic=Object.freeze({__proto__:null,decode:Dc,encode:Fc,format:Ec,parse:Tc});const Pc=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;const Jc=/[\0-\x1F\x7F-\x9F]/;const Lc=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/;const Uc=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/;const Wc=/[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC2\uFD40-\uFD4F\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF76\uDF7B-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDE53\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC5\uDECE-\uDEDB\uDEE0-\uDEE8\uDEF0-\uDEF8\uDF00-\uDF92\uDF94-\uDFCA]/;const Hc=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;const Zc=Object.freeze({__proto__:null,Any:Pc,Cc:Jc,Cf:Lc,P:Uc,S:Wc,Z:Hc});function Kc(t){return Object.prototype.toString.call(t)}function Vc(t){return Kc(t)==="[object String]"}const Gc=Object.prototype.hasOwnProperty;function Xc(t,e){return Gc.call(t,e)}function Yc(t){const e=Array.prototype.slice.call(arguments,1);e.forEach((function(e){if(!e){return}if(typeof e!=="object"){throw new TypeError(e+"must be object")}Object.keys(e).forEach((function(i){t[i]=e[i]}))}));return t}function Qc(t,e,i){return[].concat(t.slice(0,e),i,t.slice(e+1))}function td(t){if(t>=55296&&t<=57343){return false}if(t>=64976&&t<=65007){return false}if((t&65535)===65535||(t&65535)===65534){return false}if(t>=0&&t<=8){return false}if(t===11){return false}if(t>=14&&t<=31){return false}if(t>=127&&t<=159){return false}if(t>1114111){return false}return true}function ed(t){if(t>65535){t-=65536;const e=55296+(t>>10);const i=56320+(t&1023);return String.fromCharCode(e,i)}return String.fromCharCode(t)}const id=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;const rd=/&([a-z#][a-z0-9]{1,31});/gi;const nd=new RegExp(id.source+"|"+rd.source,"gi");const sd=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function ld(t,e){if(e.charCodeAt(0)===35&&sd.test(e)){const i=e[1].toLowerCase()==="x"?parseInt(e.slice(2),16):parseInt(e.slice(1),10);if(td(i)){return ed(i)}return t}const i=x(t);if(i!==t){return i}return t}function ud(t){if(t.indexOf("\\")<0){return t}return t.replace(id,"$1")}function od(t){if(t.indexOf("\\")<0&&t.indexOf("&")<0){return t}return t.replace(nd,(function(t,e,i){if(e){return e}return ld(t,i)}))}const fd=/[&<>"]/;const hd=/[&<>"]/g;const ad={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;"};function cd(t){return ad[t]}function dd(t){if(fd.test(t)){return t.replace(hd,cd)}return t}const pd=/[.?*+^$[\]\\(){}|-]/g;function md(t){return t.replace(pd,"\\$&")}function wd(t){switch(t){case 9:case 32:return true}return false}function gd(t){if(t>=8192&&t<=8202){return true}switch(t){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return true}return false}function bd(t){return Uc.test(t)||Wc.test(t)}function kd(t){switch(t){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return true;default:return false}}function Dd(t){t=t.trim().replace(/\s+/g," ");if("ẞ".toLowerCase()==="Ṿ"){t=t.replace(/ẞ/g,"ß")}return t.toLowerCase().toUpperCase()}const vd={mdurl:Ic,ucmicro:Zc};const yd=Object.freeze({__proto__:null,lib:vd,assign:Yc,isString:Vc,has:Xc,unescapeMd:ud,unescapeAll:od,isValidEntityCode:td,fromCodePoint:ed,escapeHtml:dd,arrayReplaceAt:Qc,isSpace:wd,isWhiteSpace:gd,isMdAsciiPunct:kd,isPunctChar:bd,escapeRE:md,normalizeReference:Dd});function Fd(t,e,i){let r,n,s,l;const u=t.posMax;const o=t.pos;t.pos=e+1;r=1;while(t.pos<u){s=t.src.charCodeAt(t.pos);if(s===93){r--;if(r===0){n=true;break}}l=t.pos;t.md.inline.skipToken(t);if(s===91){if(l===t.pos-1){r++}else if(i){t.pos=o;return-1}}}let f=-1;if(n){f=t.pos}t.pos=o;return f}function Ed(t,e,i){let r;let n=e;const s={ok:false,pos:0,str:""};if(t.charCodeAt(n)===60){n++;while(n<i){r=t.charCodeAt(n);if(r===10){return s}if(r===60){return s}if(r===62){s.pos=n+1;s.str=od(t.slice(e+1,n));s.ok=true;return s}if(r===92&&n+1<i){n+=2;continue}n++}return s}let l=0;while(n<i){r=t.charCodeAt(n);if(r===32){break}if(r<32||r===127){break}if(r===92&&n+1<i){if(t.charCodeAt(n+1)===32){break}n+=2;continue}if(r===40){l++;if(l>32){return s}}if(r===41){if(l===0){break}l--}n++}if(e===n){return s}if(l!==0){return s}s.str=od(t.slice(e,n));s.pos=n;s.ok=true;return s}function xd(t,e,i,r){let n;let s=e;const l={ok:false,can_continue:false,pos:0,str:"",marker:0};if(r){l.str=r.str;l.marker=r.marker}else{if(s>=i){return l}let r=t.charCodeAt(s);if(r!==34&&r!==39&&r!==40){return l}e++;s++;if(r===40){r=41}l.marker=r}while(s<i){n=t.charCodeAt(s);if(n===l.marker){l.pos=s+1;l.str+=od(t.slice(e,s));l.ok=true;return l}else if(n===40&&l.marker===41){return l}else if(n===92&&s+1<i){s++}s++}l.can_continue=true;l.str+=od(t.slice(e,s));return l}const Md=Object.freeze({__proto__:null,parseLinkLabel:Fd,parseLinkDestination:Ed,parseLinkTitle:xd});const Ad={};Ad.code_inline=function(t,e,i,r,n){const s=t[e];return"<code"+n.renderAttrs(s)+">"+dd(s.content)+"</code>"};Ad.code_block=function(t,e,i,r,n){const s=t[e];return"<pre"+n.renderAttrs(s)+"><code>"+dd(t[e].content)+"</code></pre>\n"};Ad.fence=function(t,e,i,r,n){const s=t[e];const l=s.info?od(s.info).trim():"";let u="";let o="";if(l){const t=l.split(/(\s+)/g);u=t[0];o=t.slice(2).join("")}let f;if(i.highlight){f=i.highlight(s.content,u,o)||dd(s.content)}else{f=dd(s.content)}if(f.indexOf("<pre")===0){return f+"\n"}if(l){const t=s.attrIndex("class");const e=s.attrs?s.attrs.slice():[];if(t<0){e.push(["class",i.langPrefix+u])}else{e[t]=e[t].slice();e[t][1]+=" "+i.langPrefix+u}const r={attrs:e};return`<pre><code${n.renderAttrs(r)}>${f}</code></pre>\n`}return`<pre><code${n.renderAttrs(s)}>${f}</code></pre>\n`};Ad.image=function(t,e,i,r,n){const s=t[e];s.attrs[s.attrIndex("alt")][1]=n.renderInlineAsText(s.children,i,r);return n.renderToken(t,e,i)};Ad.hardbreak=function(t,e,i){return i.xhtmlOut?"<br />\n":"<br>\n"};Ad.softbreak=function(t,e,i){return i.breaks?i.xhtmlOut?"<br />\n":"<br>\n":"\n"};Ad.text=function(t,e){return dd(t[e].content)};Ad.html_block=function(t,e){return t[e].content};Ad.html_inline=function(t,e){return t[e].content};function Cd(){this.rules=Yc({},Ad)}Cd.prototype.renderAttrs=function t(e){let i,r,n;if(!e.attrs){return""}n="";for(i=0,r=e.attrs.length;i<r;i++){n+=" "+dd(e.attrs[i][0])+'="'+dd(e.attrs[i][1])+'"'}return n};Cd.prototype.renderToken=function t(e,i,r){const n=e[i];let s="";if(n.hidden){return""}if(n.block&&n.nesting!==-1&&i&&e[i-1].hidden){s+="\n"}s+=(n.nesting===-1?"</":"<")+n.tag;s+=this.renderAttrs(n);if(n.nesting===0&&r.xhtmlOut){s+=" /"}let l=false;if(n.block){l=true;if(n.nesting===1){if(i+1<e.length){const t=e[i+1];if(t.type==="inline"||t.hidden){l=false}else if(t.nesting===-1&&t.tag===n.tag){l=false}}}}s+=l?">\n":">";return s};Cd.prototype.renderInline=function(t,e,i){let r="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(typeof n[l]!=="undefined"){r+=n[l](t,s,e,i,this)}else{r+=this.renderToken(t,s,e)}}return r};Cd.prototype.renderInlineAsText=function(t,e,i){let r="";for(let n=0,s=t.length;n<s;n++){switch(t[n].type){case"text":r+=t[n].content;break;case"image":r+=this.renderInlineAsText(t[n].children,e,i);break;case"html_inline":case"html_block":r+=t[n].content;break;case"softbreak":case"hardbreak":r+="\n";break}}return r};Cd.prototype.render=function(t,e,i){let r="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(l==="inline"){r+=this.renderInline(t[s].children,e,i)}else if(typeof n[l]!=="undefined"){r+=n[l](t,s,e,i,this)}else{r+=this.renderToken(t,s,e,i)}}return r};function Sd(){this.__rules__=[];this.__cache__=null}Sd.prototype.__find__=function(t){for(let e=0;e<this.__rules__.length;e++){if(this.__rules__[e].name===t){return e}}return-1};Sd.prototype.__compile__=function(){const t=this;const e=[""];t.__rules__.forEach((function(t){if(!t.enabled){return}t.alt.forEach((function(t){if(e.indexOf(t)<0){e.push(t)}}))}));t.__cache__={};e.forEach((function(e){t.__cache__[e]=[];t.__rules__.forEach((function(i){if(!i.enabled){return}if(e&&i.alt.indexOf(e)<0){return}t.__cache__[e].push(i.fn)}))}))};Sd.prototype.at=function(t,e,i){const r=this.__find__(t);const n=i||{};if(r===-1){throw new Error("Parser rule not found: "+t)}this.__rules__[r].fn=e;this.__rules__[r].alt=n.alt||[];this.__cache__=null};Sd.prototype.before=function(t,e,i,r){const n=this.__find__(t);const s=r||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n,0,{name:e,enabled:true,fn:i,alt:s.alt||[]});this.__cache__=null};Sd.prototype.after=function(t,e,i,r){const n=this.__find__(t);const s=r||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n+1,0,{name:e,enabled:true,fn:i,alt:s.alt||[]});this.__cache__=null};Sd.prototype.push=function(t,e,i){const r=i||{};this.__rules__.push({name:t,enabled:true,fn:e,alt:r.alt||[]});this.__cache__=null};Sd.prototype.enable=function(t,e){if(!Array.isArray(t)){t=[t]}const i=[];t.forEach((function(t){const r=this.__find__(t);if(r<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[r].enabled=true;i.push(t)}),this);this.__cache__=null;return i};Sd.prototype.enableOnly=function(t,e){if(!Array.isArray(t)){t=[t]}this.__rules__.forEach((function(t){t.enabled=false}));this.enable(t,e)};Sd.prototype.disable=function(t,e){if(!Array.isArray(t)){t=[t]}const i=[];t.forEach((function(t){const r=this.__find__(t);if(r<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[r].enabled=false;i.push(t)}),this);this.__cache__=null;return i};Sd.prototype.getRules=function(t){if(this.__cache__===null){this.__compile__()}return this.__cache__[t]||[]};function Od(t,e,i){this.type=t;this.tag=e;this.attrs=null;this.map=null;this.nesting=i;this.level=0;this.children=null;this.content="";this.markup="";this.info="";this.meta=null;this.block=false;this.hidden=false}Od.prototype.attrIndex=function t(e){if(!this.attrs){return-1}const i=this.attrs;for(let t=0,r=i.length;t<r;t++){if(i[t][0]===e){return t}}return-1};Od.prototype.attrPush=function t(e){if(this.attrs){this.attrs.push(e)}else{this.attrs=[e]}};Od.prototype.attrSet=function t(e,i){const r=this.attrIndex(e);const n=[e,i];if(r<0){this.attrPush(n)}else{this.attrs[r]=n}};Od.prototype.attrGet=function t(e){const i=this.attrIndex(e);let r=null;if(i>=0){r=this.attrs[i][1]}return r};Od.prototype.attrJoin=function t(e,i){const r=this.attrIndex(e);if(r<0){this.attrPush([e,i])}else{this.attrs[r][1]=this.attrs[r][1]+" "+i}};function $d(t,e,i){this.src=t;this.env=i;this.tokens=[];this.inlineMode=false;this.md=e}$d.prototype.Token=Od;const _d=/\r\n?|\n/g;const Bd=/\0/g;function jd(t){let e;e=t.src.replace(_d,"\n");e=e.replace(Bd,"�");t.src=e}function qd(t){let e;if(t.inlineMode){e=new t.Token("inline","",0);e.content=t.src;e.map=[0,1];e.children=[];t.tokens.push(e)}else{t.md.block.parse(t.src,t.md,t.env,t.tokens)}}function Rd(t){const e=t.tokens;for(let i=0,r=e.length;i<r;i++){const r=e[i];if(r.type==="inline"){t.md.inline.parse(r.content,t.md,t.env,r.children)}}}function Nd(t){return/^<a[>\s]/i.test(t)}function zd(t){return/^<\/a\s*>/i.test(t)}function Td(t){const e=t.tokens;if(!t.md.options.linkify){return}for(let i=0,r=e.length;i<r;i++){if(e[i].type!=="inline"||!t.md.linkify.pretest(e[i].content)){continue}let r=e[i].children;let n=0;for(let s=r.length-1;s>=0;s--){const l=r[s];if(l.type==="link_close"){s--;while(r[s].level!==l.level&&r[s].type!=="link_open"){s--}continue}if(l.type==="html_inline"){if(Nd(l.content)&&n>0){n--}if(zd(l.content)){n++}}if(n>0){continue}if(l.type==="text"&&t.md.linkify.test(l.content)){const n=l.content;let u=t.md.linkify.match(n);const o=[];let f=l.level;let h=0;if(u.length>0&&u[0].index===0&&s>0&&r[s-1].type==="text_special"){u=u.slice(1)}for(let e=0;e<u.length;e++){const i=u[e].url;const r=t.md.normalizeLink(i);if(!t.md.validateLink(r)){continue}let s=u[e].text;if(!u[e].schema){s=t.md.normalizeLinkText("http://"+s).replace(/^http:\/\//,"")}else if(u[e].schema==="mailto:"&&!/^mailto:/i.test(s)){s=t.md.normalizeLinkText("mailto:"+s).replace(/^mailto:/,"")}else{s=t.md.normalizeLinkText(s)}const l=u[e].index;if(l>h){const e=new t.Token("text","",0);e.content=n.slice(h,l);e.level=f;o.push(e)}const a=new t.Token("link_open","a",1);a.attrs=[["href",r]];a.level=f++;a.markup="linkify";a.info="auto";o.push(a);const c=new t.Token("text","",0);c.content=s;c.level=f;o.push(c);const d=new t.Token("link_close","a",-1);d.level=--f;d.markup="linkify";d.info="auto";o.push(d);h=u[e].lastIndex}if(h<n.length){const e=new t.Token("text","",0);e.content=n.slice(h);e.level=f;o.push(e)}e[i].children=r=Qc(r,s,o)}}}}const Id=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/;const Pd=/\((c|tm|r)\)/i;const Jd=/\((c|tm|r)\)/gi;const Ld={c:"©",r:"®",tm:"™"};function Ud(t,e){return Ld[e.toLowerCase()]}function Wd(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){r.content=r.content.replace(Jd,Ud)}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function Hd(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){if(Id.test(r.content)){r.content=r.content.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---(?=[^-]|$)/gm,"$1—").replace(/(^|\s)--(?=\s|$)/gm,"$1–").replace(/(^|[^-\s])--(?=[^-\s]|$)/gm,"$1–")}}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function Zd(t){let e;if(!t.md.options.typographer){return}for(e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"){continue}if(Pd.test(t.tokens[e].content)){Wd(t.tokens[e].children)}if(Id.test(t.tokens[e].content)){Hd(t.tokens[e].children)}}}const Kd=/['"]/;const Vd=/['"]/g;const Gd="’";function Xd(t,e,i){return t.slice(0,e)+i+t.slice(e+1)}function Yd(t,e){let i;const r=[];for(let n=0;n<t.length;n++){const s=t[n];const l=t[n].level;for(i=r.length-1;i>=0;i--){if(r[i].level<=l){break}}r.length=i+1;if(s.type!=="text"){continue}let u=s.content;let o=0;let f=u.length;t:while(o<f){Vd.lastIndex=o;const h=Vd.exec(u);if(!h){break}let a=true;let c=true;o=h.index+1;const d=h[0]==="'";let p=32;if(h.index-1>=0){p=u.charCodeAt(h.index-1)}else{for(i=n-1;i>=0;i--){if(t[i].type==="softbreak"||t[i].type==="hardbreak")break;if(!t[i].content)continue;p=t[i].content.charCodeAt(t[i].content.length-1);break}}let m=32;if(o<f){m=u.charCodeAt(o)}else{for(i=n+1;i<t.length;i++){if(t[i].type==="softbreak"||t[i].type==="hardbreak")break;if(!t[i].content)continue;m=t[i].content.charCodeAt(0);break}}const w=kd(p)||bd(String.fromCharCode(p));const g=kd(m)||bd(String.fromCharCode(m));const b=gd(p);const k=gd(m);if(k){a=false}else if(g){if(!(b||w)){a=false}}if(b){c=false}else if(w){if(!(k||g)){c=false}}if(m===34&&h[0]==='"'){if(p>=48&&p<=57){c=a=false}}if(a&&c){a=w;c=g}if(!a&&!c){if(d){s.content=Xd(s.content,h.index,Gd)}continue}if(c){for(i=r.length-1;i>=0;i--){let a=r[i];if(r[i].level<l){break}if(a.single===d&&r[i].level===l){a=r[i];let l;let c;if(d){l=e.md.options.quotes[2];c=e.md.options.quotes[3]}else{l=e.md.options.quotes[0];c=e.md.options.quotes[1]}s.content=Xd(s.content,h.index,c);t[a.token].content=Xd(t[a.token].content,a.pos,l);o+=c.length-1;if(a.token===n){o+=l.length-1}u=s.content;f=u.length;r.length=i;continue t}}}if(a){r.push({token:n,pos:h.index,single:d,level:l})}else if(c&&d){s.content=Xd(s.content,h.index,Gd)}}}}function Qd(t){if(!t.md.options.typographer){return}for(let e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"||!Kd.test(t.tokens[e].content)){continue}Yd(t.tokens[e].children,t)}}function tp(t){let e,i;const r=t.tokens;const n=r.length;for(let t=0;t<n;t++){if(r[t].type!=="inline")continue;const n=r[t].children;const s=n.length;for(e=0;e<s;e++){if(n[e].type==="text_special"){n[e].type="text"}}for(e=i=0;e<s;e++){if(n[e].type==="text"&&e+1<s&&n[e+1].type==="text"){n[e+1].content=n[e].content+n[e+1].content}else{if(e!==i){n[i]=n[e]}i++}}if(e!==i){n.length=i}}}const ep=[["normalize",jd],["block",qd],["inline",Rd],["linkify",Td],["replacements",Zd],["smartquotes",Qd],["text_join",tp]];function ip(){this.ruler=new Sd;for(let t=0;t<ep.length;t++){this.ruler.push(ep[t][0],ep[t][1])}}ip.prototype.process=function(t){const e=this.ruler.getRules("");for(let i=0,r=e.length;i<r;i++){e[i](t)}};ip.prototype.State=$d;function rp(t,e,i,r){this.src=t;this.md=e;this.env=i;this.tokens=r;this.bMarks=[];this.eMarks=[];this.tShift=[];this.sCount=[];this.bsCount=[];this.blkIndent=0;this.line=0;this.lineMax=0;this.tight=false;this.ddIndent=-1;this.listIndent=-1;this.parentType="root";this.level=0;const n=this.src;for(let t=0,e=0,i=0,r=0,s=n.length,l=false;e<s;e++){const u=n.charCodeAt(e);if(!l){if(wd(u)){i++;if(u===9){r+=4-r%4}else{r++}continue}else{l=true}}if(u===10||e===s-1){if(u!==10){e++}this.bMarks.push(t);this.eMarks.push(e);this.tShift.push(i);this.sCount.push(r);this.bsCount.push(0);l=false;i=0;r=0;t=e+1}}this.bMarks.push(n.length);this.eMarks.push(n.length);this.tShift.push(0);this.sCount.push(0);this.bsCount.push(0);this.lineMax=this.bMarks.length-1}rp.prototype.push=function(t,e,i){const r=new Od(t,e,i);r.block=true;if(i<0)this.level--;r.level=this.level;if(i>0)this.level++;this.tokens.push(r);return r};rp.prototype.isEmpty=function t(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]};rp.prototype.skipEmptyLines=function t(e){for(let t=this.lineMax;e<t;e++){if(this.bMarks[e]+this.tShift[e]<this.eMarks[e]){break}}return e};rp.prototype.skipSpaces=function t(e){for(let t=this.src.length;e<t;e++){const t=this.src.charCodeAt(e);if(!wd(t)){break}}return e};rp.prototype.skipSpacesBack=function t(e,i){if(e<=i){return e}while(e>i){if(!wd(this.src.charCodeAt(--e))){return e+1}}return e};rp.prototype.skipChars=function t(e,i){for(let t=this.src.length;e<t;e++){if(this.src.charCodeAt(e)!==i){break}}return e};rp.prototype.skipCharsBack=function t(e,i,r){if(e<=r){return e}while(e>r){if(i!==this.src.charCodeAt(--e)){return e+1}}return e};rp.prototype.getLines=function t(e,i,r,n){if(e>=i){return""}const s=new Array(i-e);for(let t=0,l=e;l<i;l++,t++){let e=0;const u=this.bMarks[l];let o=u;let f;if(l+1<i||n){f=this.eMarks[l]+1}else{f=this.eMarks[l]}while(o<f&&e<r){const t=this.src.charCodeAt(o);if(wd(t)){if(t===9){e+=4-(e+this.bsCount[l])%4}else{e++}}else if(o-u<this.tShift[l]){e++}else{break}o++}if(e>r){s[t]=new Array(e-r+1).join(" ")+this.src.slice(o,f)}else{s[t]=this.src.slice(o,f)}}return s.join("")};rp.prototype.Token=Od;const np=65536;function sp(t,e){const i=t.bMarks[e]+t.tShift[e];const r=t.eMarks[e];return t.src.slice(i,r)}function lp(t){const e=[];const i=t.length;let r=0;let n=t.charCodeAt(r);let s=false;let l=0;let u="";while(r<i){if(n===124){if(!s){e.push(u+t.substring(l,r));u="";l=r+1}else{u+=t.substring(l,r-1);l=r}}s=n===92;r++;n=t.charCodeAt(r)}e.push(u+t.substring(l));return e}function up(t,e,i,r){if(e+2>i){return false}let n=e+1;if(t.sCount[n]<t.blkIndent){return false}if(t.sCount[n]-t.blkIndent>=4){return false}let s=t.bMarks[n]+t.tShift[n];if(s>=t.eMarks[n]){return false}const l=t.src.charCodeAt(s++);if(l!==124&&l!==45&&l!==58){return false}if(s>=t.eMarks[n]){return false}const u=t.src.charCodeAt(s++);if(u!==124&&u!==45&&u!==58&&!wd(u)){return false}if(l===45&&wd(u)){return false}while(s<t.eMarks[n]){const e=t.src.charCodeAt(s);if(e!==124&&e!==45&&e!==58&&!wd(e)){return false}s++}let o=sp(t,e+1);let f=o.split("|");const h=[];for(let t=0;t<f.length;t++){const e=f[t].trim();if(!e){if(t===0||t===f.length-1){continue}else{return false}}if(!/^:?-+:?$/.test(e)){return false}if(e.charCodeAt(e.length-1)===58){h.push(e.charCodeAt(0)===58?"center":"right")}else if(e.charCodeAt(0)===58){h.push("left")}else{h.push("")}}o=sp(t,e).trim();if(o.indexOf("|")===-1){return false}if(t.sCount[e]-t.blkIndent>=4){return false}f=lp(o);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();const a=f.length;if(a===0||a!==h.length){return false}if(r){return true}const c=t.parentType;t.parentType="table";const d=t.md.block.ruler.getRules("blockquote");const p=t.push("table_open","table",1);const m=[e,0];p.map=m;const w=t.push("thead_open","thead",1);w.map=[e,e+1];const g=t.push("tr_open","tr",1);g.map=[e,e+1];for(let e=0;e<f.length;e++){const i=t.push("th_open","th",1);if(h[e]){i.attrs=[["style","text-align:"+h[e]]]}const r=t.push("inline","",0);r.content=f[e].trim();r.children=[];t.push("th_close","th",-1)}t.push("tr_close","tr",-1);t.push("thead_close","thead",-1);let b;let k=0;for(n=e+2;n<i;n++){if(t.sCount[n]<t.blkIndent){break}let r=false;for(let e=0,s=d.length;e<s;e++){if(d[e](t,n,i,true)){r=true;break}}if(r){break}o=sp(t,n).trim();if(!o){break}if(t.sCount[n]-t.blkIndent>=4){break}f=lp(o);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();k+=a-f.length;if(k>np){break}if(n===e+2){const i=t.push("tbody_open","tbody",1);i.map=b=[e+2,0]}const s=t.push("tr_open","tr",1);s.map=[n,n+1];for(let e=0;e<a;e++){const i=t.push("td_open","td",1);if(h[e]){i.attrs=[["style","text-align:"+h[e]]]}const r=t.push("inline","",0);r.content=f[e]?f[e].trim():"";r.children=[];t.push("td_close","td",-1)}t.push("tr_close","tr",-1)}if(b){t.push("tbody_close","tbody",-1);b[1]=n}t.push("table_close","table",-1);m[1]=n;t.parentType=c;t.line=n;return true}function op(t,e,i){if(t.sCount[e]-t.blkIndent<4){return false}let r=e+1;let n=r;while(r<i){if(t.isEmpty(r)){r++;continue}if(t.sCount[r]-t.blkIndent>=4){r++;n=r;continue}break}t.line=n;const s=t.push("code_block","code",0);s.content=t.getLines(e,n,4+t.blkIndent,false)+"\n";s.map=[e,t.line];return true}function fp(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}if(n+3>s){return false}const l=t.src.charCodeAt(n);if(l!==126&&l!==96){return false}let u=n;n=t.skipChars(n,l);let o=n-u;if(o<3){return false}const f=t.src.slice(u,n);const h=t.src.slice(n,s);if(l===96){if(h.indexOf(String.fromCharCode(l))>=0){return false}}if(r){return true}let a=e;let c=false;for(;;){a++;if(a>=i){break}n=u=t.bMarks[a]+t.tShift[a];s=t.eMarks[a];if(n<s&&t.sCount[a]<t.blkIndent){break}if(t.src.charCodeAt(n)!==l){continue}if(t.sCount[a]-t.blkIndent>=4){continue}n=t.skipChars(n,l);if(n-u<o){continue}n=t.skipSpaces(n);if(n<s){continue}c=true;break}o=t.sCount[e];t.line=a+(c?1:0);const d=t.push("fence","code",0);d.info=h;d.content=t.getLines(e+1,a,o,true);d.markup=f;d.map=[e,t.line];return true}function hp(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];const l=t.lineMax;if(t.sCount[e]-t.blkIndent>=4){return false}if(t.src.charCodeAt(n)!==62){return false}if(r){return true}const u=[];const o=[];const f=[];const h=[];const a=t.md.block.ruler.getRules("blockquote");const c=t.parentType;t.parentType="blockquote";let d=false;let p;for(p=e;p<i;p++){const e=t.sCount[p]<t.blkIndent;n=t.bMarks[p]+t.tShift[p];s=t.eMarks[p];if(n>=s){break}if(t.src.charCodeAt(n++)===62&&!e){let e=t.sCount[p]+1;let i;let r;if(t.src.charCodeAt(n)===32){n++;e++;r=false;i=true}else if(t.src.charCodeAt(n)===9){i=true;if((t.bsCount[p]+e)%4===3){n++;e++;r=false}else{r=true}}else{i=false}let l=e;u.push(t.bMarks[p]);t.bMarks[p]=n;while(n<s){const e=t.src.charCodeAt(n);if(wd(e)){if(e===9){l+=4-(l+t.bsCount[p]+(r?1:0))%4}else{l++}}else{break}n++}d=n>=s;o.push(t.bsCount[p]);t.bsCount[p]=t.sCount[p]+1+(i?1:0);f.push(t.sCount[p]);t.sCount[p]=l-e;h.push(t.tShift[p]);t.tShift[p]=n-t.bMarks[p];continue}if(d){break}let r=false;for(let e=0,n=a.length;e<n;e++){if(a[e](t,p,i,true)){r=true;break}}if(r){t.lineMax=p;if(t.blkIndent!==0){u.push(t.bMarks[p]);o.push(t.bsCount[p]);h.push(t.tShift[p]);f.push(t.sCount[p]);t.sCount[p]-=t.blkIndent}break}u.push(t.bMarks[p]);o.push(t.bsCount[p]);h.push(t.tShift[p]);f.push(t.sCount[p]);t.sCount[p]=-1}const m=t.blkIndent;t.blkIndent=0;const w=t.push("blockquote_open","blockquote",1);w.markup=">";const g=[e,0];w.map=g;t.md.block.tokenize(t,e,p);const b=t.push("blockquote_close","blockquote",-1);b.markup=">";t.lineMax=l;t.parentType=c;g[1]=t.line;for(let i=0;i<h.length;i++){t.bMarks[i+e]=u[i];t.tShift[i+e]=h[i];t.sCount[i+e]=f[i];t.bsCount[i+e]=o[i]}t.blkIndent=m;return true}function ap(t,e,i,r){const n=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}let s=t.bMarks[e]+t.tShift[e];const l=t.src.charCodeAt(s++);if(l!==42&&l!==45&&l!==95){return false}let u=1;while(s<n){const e=t.src.charCodeAt(s++);if(e!==l&&!wd(e)){return false}if(e===l){u++}}if(u<3){return false}if(r){return true}t.line=e+1;const o=t.push("hr","hr",0);o.map=[e,t.line];o.markup=Array(u+1).join(String.fromCharCode(l));return true}function cp(t,e){const i=t.eMarks[e];let r=t.bMarks[e]+t.tShift[e];const n=t.src.charCodeAt(r++);if(n!==42&&n!==45&&n!==43){return-1}if(r<i){const e=t.src.charCodeAt(r);if(!wd(e)){return-1}}return r}function dp(t,e){const i=t.bMarks[e]+t.tShift[e];const r=t.eMarks[e];let n=i;if(n+1>=r){return-1}let s=t.src.charCodeAt(n++);if(s<48||s>57){return-1}for(;;){if(n>=r){return-1}s=t.src.charCodeAt(n++);if(s>=48&&s<=57){if(n-i>=10){return-1}continue}if(s===41||s===46){break}return-1}if(n<r){s=t.src.charCodeAt(n);if(!wd(s)){return-1}}return n}function pp(t,e){const i=t.level+2;for(let r=e+2,n=t.tokens.length-2;r<n;r++){if(t.tokens[r].level===i&&t.tokens[r].type==="paragraph_open"){t.tokens[r+2].hidden=true;t.tokens[r].hidden=true;r+=2}}}function mp(t,e,i,r){let n,s,l,u;let o=e;let f=true;if(t.sCount[o]-t.blkIndent>=4){return false}if(t.listIndent>=0&&t.sCount[o]-t.listIndent>=4&&t.sCount[o]<t.blkIndent){return false}let h=false;if(r&&t.parentType==="paragraph"){if(t.sCount[o]>=t.blkIndent){h=true}}let a;let c;let d;if((d=dp(t,o))>=0){a=true;l=t.bMarks[o]+t.tShift[o];c=Number(t.src.slice(l,d-1));if(h&&c!==1)return false}else if((d=cp(t,o))>=0){a=false}else{return false}if(h){if(t.skipSpaces(d)>=t.eMarks[o])return false}if(r){return true}const p=t.src.charCodeAt(d-1);const m=t.tokens.length;if(a){u=t.push("ordered_list_open","ol",1);if(c!==1){u.attrs=[["start",c]]}}else{u=t.push("bullet_list_open","ul",1)}const w=[o,0];u.map=w;u.markup=String.fromCharCode(p);let g=false;const b=t.md.block.ruler.getRules("list");const k=t.parentType;t.parentType="list";while(o<i){s=d;n=t.eMarks[o];const e=t.sCount[o]+d-(t.bMarks[o]+t.tShift[o]);let r=e;while(s<n){const e=t.src.charCodeAt(s);if(e===9){r+=4-(r+t.bsCount[o])%4}else if(e===32){r++}else{break}s++}const h=s;let c;if(h>=n){c=1}else{c=r-e}if(c>4){c=1}const m=e+c;u=t.push("list_item_open","li",1);u.markup=String.fromCharCode(p);const w=[o,0];u.map=w;if(a){u.info=t.src.slice(l,d-1)}const k=t.tight;const D=t.tShift[o];const v=t.sCount[o];const y=t.listIndent;t.listIndent=t.blkIndent;t.blkIndent=m;t.tight=true;t.tShift[o]=h-t.bMarks[o];t.sCount[o]=r;if(h>=n&&t.isEmpty(o+1)){t.line=Math.min(t.line+2,i)}else{t.md.block.tokenize(t,o,i,true)}if(!t.tight||g){f=false}g=t.line-o>1&&t.isEmpty(t.line-1);t.blkIndent=t.listIndent;t.listIndent=y;t.tShift[o]=D;t.sCount[o]=v;t.tight=k;u=t.push("list_item_close","li",-1);u.markup=String.fromCharCode(p);o=t.line;w[1]=o;if(o>=i){break}if(t.sCount[o]<t.blkIndent){break}if(t.sCount[o]-t.blkIndent>=4){break}let F=false;for(let e=0,r=b.length;e<r;e++){if(b[e](t,o,i,true)){F=true;break}}if(F){break}if(a){d=dp(t,o);if(d<0){break}l=t.bMarks[o]+t.tShift[o]}else{d=cp(t,o);if(d<0){break}}if(p!==t.src.charCodeAt(d-1)){break}}if(a){u=t.push("ordered_list_close","ol",-1)}else{u=t.push("bullet_list_close","ul",-1)}u.markup=String.fromCharCode(p);w[1]=o;t.line=o;t.parentType=k;if(f){pp(t,m)}return true}function wp(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];let l=e+1;if(t.sCount[e]-t.blkIndent>=4){return false}if(t.src.charCodeAt(n)!==91){return false}function u(e){const i=t.lineMax;if(e>=i||t.isEmpty(e)){return null}let r=false;if(t.sCount[e]-t.blkIndent>3){r=true}if(t.sCount[e]<0){r=true}if(!r){const r=t.md.block.ruler.getRules("reference");const n=t.parentType;t.parentType="reference";let s=false;for(let n=0,l=r.length;n<l;n++){if(r[n](t,e,i,true)){s=true;break}}t.parentType=n;if(s){return null}}const n=t.bMarks[e]+t.tShift[e];const s=t.eMarks[e];return t.src.slice(n,s+1)}let o=t.src.slice(n,s+1);s=o.length;let f=-1;for(n=1;n<s;n++){const t=o.charCodeAt(n);if(t===91){return false}else if(t===93){f=n;break}else if(t===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}else if(t===92){n++;if(n<s&&o.charCodeAt(n)===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}}}if(f<0||o.charCodeAt(f+1)!==58){return false}for(n=f+2;n<s;n++){const t=o.charCodeAt(n);if(t===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}else if(wd(t));else{break}}const h=t.md.helpers.parseLinkDestination(o,n,s);if(!h.ok){return false}const a=t.md.normalizeLink(h.str);if(!t.md.validateLink(a)){return false}n=h.pos;const c=n;const d=l;const p=n;for(;n<s;n++){const t=o.charCodeAt(n);if(t===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}else if(wd(t));else{break}}let m=t.md.helpers.parseLinkTitle(o,n,s);while(m.can_continue){const e=u(l);if(e===null)break;o+=e;n=s;s=o.length;l++;m=t.md.helpers.parseLinkTitle(o,n,s,m)}let w;if(n<s&&p!==n&&m.ok){w=m.str;n=m.pos}else{w="";n=c;l=d}while(n<s){const t=o.charCodeAt(n);if(!wd(t)){break}n++}if(n<s&&o.charCodeAt(n)!==10){if(w){w="";n=c;l=d;while(n<s){const t=o.charCodeAt(n);if(!wd(t)){break}n++}}}if(n<s&&o.charCodeAt(n)!==10){return false}const g=Dd(o.slice(1,f));if(!g){return false}if(r){return true}if(typeof t.env.references==="undefined"){t.env.references={}}if(typeof t.env.references[g]==="undefined"){t.env.references[g]={title:w,href:a}}t.line=l;return true}const gp=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"];const bp="[a-zA-Z_:][a-zA-Z0-9:._-]*";const kp="[^\"'=<>`\\x00-\\x20]+";const Dp="'[^']*'";const vp='"[^"]*"';const yp="(?:"+kp+"|"+Dp+"|"+vp+")";const Fp="(?:\\s+"+bp+"(?:\\s*=\\s*"+yp+")?)";const Ep="<[A-Za-z][A-Za-z0-9\\-]*"+Fp+"*\\s*\\/?>";const xp="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>";const Mp="\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e";const Ap="<[?][\\s\\S]*?[?]>";const Cp="<![A-Za-z][^>]*>";const Sp="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>";const Op=new RegExp("^(?:"+Ep+"|"+xp+"|"+Mp+"|"+Ap+"|"+Cp+"|"+Sp+")");const $p=new RegExp("^(?:"+Ep+"|"+xp+")");const _p=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,true],[/^<!--/,/-->/,true],[/^<\?/,/\?>/,true],[/^<![A-Z]/,/>/,true],[/^<!\[CDATA\[/,/\]\]>/,true],[new RegExp("^</?("+gp.join("|")+")(?=(\\s|/?>|$))","i"),/^$/,true],[new RegExp($p.source+"\\s*$"),/^$/,false]];function Bp(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}if(!t.md.options.html){return false}if(t.src.charCodeAt(n)!==60){return false}let l=t.src.slice(n,s);let u=0;for(;u<_p.length;u++){if(_p[u][0].test(l)){break}}if(u===_p.length){return false}if(r){return _p[u][2]}let o=e+1;if(!_p[u][1].test(l)){for(;o<i;o++){if(t.sCount[o]<t.blkIndent){break}n=t.bMarks[o]+t.tShift[o];s=t.eMarks[o];l=t.src.slice(n,s);if(_p[u][1].test(l)){if(l.length!==0){o++}break}}}t.line=o;const f=t.push("html_block","",0);f.map=[e,o];f.content=t.getLines(e,o,t.blkIndent,true);return true}function jp(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}let l=t.src.charCodeAt(n);if(l!==35||n>=s){return false}let u=1;l=t.src.charCodeAt(++n);while(l===35&&n<s&&u<=6){u++;l=t.src.charCodeAt(++n)}if(u>6||n<s&&!wd(l)){return false}if(r){return true}s=t.skipSpacesBack(s,n);const o=t.skipCharsBack(s,35,n);if(o>n&&wd(t.src.charCodeAt(o-1))){s=o}t.line=e+1;const f=t.push("heading_open","h"+String(u),1);f.markup="########".slice(0,u);f.map=[e,t.line];const h=t.push("inline","",0);h.content=t.src.slice(n,s).trim();h.map=[e,t.line];h.children=[];const a=t.push("heading_close","h"+String(u),-1);a.markup="########".slice(0,u);return true}function qp(t,e,i){const r=t.md.block.ruler.getRules("paragraph");if(t.sCount[e]-t.blkIndent>=4){return false}const n=t.parentType;t.parentType="paragraph";let s=0;let l;let u=e+1;for(;u<i&&!t.isEmpty(u);u++){if(t.sCount[u]-t.blkIndent>3){continue}if(t.sCount[u]>=t.blkIndent){let e=t.bMarks[u]+t.tShift[u];const i=t.eMarks[u];if(e<i){l=t.src.charCodeAt(e);if(l===45||l===61){e=t.skipChars(e,l);e=t.skipSpaces(e);if(e>=i){s=l===61?1:2;break}}}}if(t.sCount[u]<0){continue}let e=false;for(let n=0,s=r.length;n<s;n++){if(r[n](t,u,i,true)){e=true;break}}if(e){break}}if(!s){return false}const o=t.getLines(e,u,t.blkIndent,false).trim();t.line=u+1;const f=t.push("heading_open","h"+String(s),1);f.markup=String.fromCharCode(l);f.map=[e,t.line];const h=t.push("inline","",0);h.content=o;h.map=[e,t.line-1];h.children=[];const a=t.push("heading_close","h"+String(s),-1);a.markup=String.fromCharCode(l);t.parentType=n;return true}function Rp(t,e,i){const r=t.md.block.ruler.getRules("paragraph");const n=t.parentType;let s=e+1;t.parentType="paragraph";for(;s<i&&!t.isEmpty(s);s++){if(t.sCount[s]-t.blkIndent>3){continue}if(t.sCount[s]<0){continue}let e=false;for(let n=0,l=r.length;n<l;n++){if(r[n](t,s,i,true)){e=true;break}}if(e){break}}const l=t.getLines(e,s,t.blkIndent,false).trim();t.line=s;const u=t.push("paragraph_open","p",1);u.map=[e,t.line];const o=t.push("inline","",0);o.content=l;o.map=[e,t.line];o.children=[];t.push("paragraph_close","p",-1);t.parentType=n;return true}const Np=[["table",up,["paragraph","reference"]],["code",op],["fence",fp,["paragraph","reference","blockquote","list"]],["blockquote",hp,["paragraph","reference","blockquote","list"]],["hr",ap,["paragraph","reference","blockquote","list"]],["list",mp,["paragraph","reference","blockquote"]],["reference",wp],["html_block",Bp,["paragraph","reference","blockquote"]],["heading",jp,["paragraph","reference","blockquote"]],["lheading",qp],["paragraph",Rp]];function zp(){this.ruler=new Sd;for(let t=0;t<Np.length;t++){this.ruler.push(Np[t][0],Np[t][1],{alt:(Np[t][2]||[]).slice()})}}zp.prototype.tokenize=function(t,e,i){const r=this.ruler.getRules("");const n=r.length;const s=t.md.options.maxNesting;let l=e;let u=false;while(l<i){t.line=l=t.skipEmptyLines(l);if(l>=i){break}if(t.sCount[l]<t.blkIndent){break}if(t.level>=s){t.line=i;break}const e=t.line;let o=false;for(let s=0;s<n;s++){o=r[s](t,l,i,false);if(o){if(e>=t.line){throw new Error("block rule didn't increment state.line")}break}}if(!o)throw new Error("none of the block rules matched");t.tight=!u;if(t.isEmpty(t.line-1)){u=true}l=t.line;if(l<i&&t.isEmpty(l)){u=true;l++;t.line=l}}};zp.prototype.parse=function(t,e,i,r){if(!t){return}const n=new this.State(t,e,i,r);this.tokenize(n,n.line,n.lineMax)};zp.prototype.State=rp;function Tp(t,e,i,r){this.src=t;this.env=i;this.md=e;this.tokens=r;this.tokens_meta=Array(r.length);this.pos=0;this.posMax=this.src.length;this.level=0;this.pending="";this.pendingLevel=0;this.cache={};this.delimiters=[];this._prev_delimiters=[];this.backticks={};this.backticksScanned=false;this.linkLevel=0}Tp.prototype.pushPending=function(){const t=new Od("text","",0);t.content=this.pending;t.level=this.pendingLevel;this.tokens.push(t);this.pending="";return t};Tp.prototype.push=function(t,e,i){if(this.pending){this.pushPending()}const r=new Od(t,e,i);let n=null;if(i<0){this.level--;this.delimiters=this._prev_delimiters.pop()}r.level=this.level;if(i>0){this.level++;this._prev_delimiters.push(this.delimiters);this.delimiters=[];n={delimiters:this.delimiters}}this.pendingLevel=this.level;this.tokens.push(r);this.tokens_meta.push(n);return r};Tp.prototype.scanDelims=function(t,e){const i=this.posMax;const r=this.src.charCodeAt(t);const n=t>0?this.src.charCodeAt(t-1):32;let s=t;while(s<i&&this.src.charCodeAt(s)===r){s++}const l=s-t;const u=s<i?this.src.charCodeAt(s):32;const o=kd(n)||bd(String.fromCharCode(n));const f=kd(u)||bd(String.fromCharCode(u));const h=gd(n);const a=gd(u);const c=!a&&(!f||h||o);const d=!h&&(!o||a||f);const p=c&&(e||!d||o);const m=d&&(e||!c||f);return{can_open:p,can_close:m,length:l}};Tp.prototype.Token=Od;function Ip(t){switch(t){case 10:case 33:case 35:case 36:case 37:case 38:case 42:case 43:case 45:case 58:case 60:case 61:case 62:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 125:case 126:return true;default:return false}}function Pp(t,e){let i=t.pos;while(i<t.posMax&&!Ip(t.src.charCodeAt(i))){i++}if(i===t.pos){return false}if(!e){t.pending+=t.src.slice(t.pos,i)}t.pos=i;return true}const Jp=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function Lp(t,e){if(!t.md.options.linkify)return false;if(t.linkLevel>0)return false;const i=t.pos;const r=t.posMax;if(i+3>r)return false;if(t.src.charCodeAt(i)!==58)return false;if(t.src.charCodeAt(i+1)!==47)return false;if(t.src.charCodeAt(i+2)!==47)return false;const n=t.pending.match(Jp);if(!n)return false;const s=n[1];const l=t.md.linkify.matchAtStart(t.src.slice(i-s.length));if(!l)return false;let u=l.url;if(u.length<=s.length)return false;u=u.replace(/\*+$/,"");const o=t.md.normalizeLink(u);if(!t.md.validateLink(o))return false;if(!e){t.pending=t.pending.slice(0,-s.length);const e=t.push("link_open","a",1);e.attrs=[["href",o]];e.markup="linkify";e.info="auto";const i=t.push("text","",0);i.content=t.md.normalizeLinkText(u);const r=t.push("link_close","a",-1);r.markup="linkify";r.info="auto"}t.pos+=u.length-s.length;return true}function Up(t,e){let i=t.pos;if(t.src.charCodeAt(i)!==10){return false}const r=t.pending.length-1;const n=t.posMax;if(!e){if(r>=0&&t.pending.charCodeAt(r)===32){if(r>=1&&t.pending.charCodeAt(r-1)===32){let e=r-1;while(e>=1&&t.pending.charCodeAt(e-1)===32)e--;t.pending=t.pending.slice(0,e);t.push("hardbreak","br",0)}else{t.pending=t.pending.slice(0,-1);t.push("softbreak","br",0)}}else{t.push("softbreak","br",0)}}i++;while(i<n&&wd(t.src.charCodeAt(i))){i++}t.pos=i;return true}const Wp=[];for(let t=0;t<256;t++){Wp.push(0)}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(t){Wp[t.charCodeAt(0)]=1}));function Hp(t,e){let i=t.pos;const r=t.posMax;if(t.src.charCodeAt(i)!==92)return false;i++;if(i>=r)return false;let n=t.src.charCodeAt(i);if(n===10){if(!e){t.push("hardbreak","br",0)}i++;while(i<r){n=t.src.charCodeAt(i);if(!wd(n))break;i++}t.pos=i;return true}let s=t.src[i];if(n>=55296&&n<=56319&&i+1<r){const e=t.src.charCodeAt(i+1);if(e>=56320&&e<=57343){s+=t.src[i+1];i++}}const l="\\"+s;if(!e){const e=t.push("text_special","",0);if(n<256&&Wp[n]!==0){e.content=s}else{e.content=l}e.markup=l;e.info="escape"}t.pos=i+1;return true}function Zp(t,e){let i=t.pos;const r=t.src.charCodeAt(i);if(r!==96){return false}const n=i;i++;const s=t.posMax;while(i<s&&t.src.charCodeAt(i)===96){i++}const l=t.src.slice(n,i);const u=l.length;if(t.backticksScanned&&(t.backticks[u]||0)<=n){if(!e)t.pending+=l;t.pos+=u;return true}let o=i;let f;while((f=t.src.indexOf("`",o))!==-1){o=f+1;while(o<s&&t.src.charCodeAt(o)===96){o++}const r=o-f;if(r===u){if(!e){const e=t.push("code_inline","code",0);e.markup=l;e.content=t.src.slice(i,f).replace(/\n/g," ").replace(/^ (.+) $/,"$1")}t.pos=o;return true}t.backticks[r]=f}t.backticksScanned=true;if(!e)t.pending+=l;t.pos+=u;return true}function Kp(t,e){const i=t.pos;const r=t.src.charCodeAt(i);if(e){return false}if(r!==126){return false}const n=t.scanDelims(t.pos,true);let s=n.length;const l=String.fromCharCode(r);if(s<2){return false}let u;if(s%2){u=t.push("text","",0);u.content=l;s--}for(let e=0;e<s;e+=2){u=t.push("text","",0);u.content=l+l;t.delimiters.push({marker:r,length:0,token:t.tokens.length-1,end:-1,open:n.can_open,close:n.can_close})}t.pos+=n.length;return true}function Vp(t,e){let i;const r=[];const n=e.length;for(let s=0;s<n;s++){const n=e[s];if(n.marker!==126){continue}if(n.end===-1){continue}const l=e[n.end];i=t.tokens[n.token];i.type="s_open";i.tag="s";i.nesting=1;i.markup="~~";i.content="";i=t.tokens[l.token];i.type="s_close";i.tag="s";i.nesting=-1;i.markup="~~";i.content="";if(t.tokens[l.token-1].type==="text"&&t.tokens[l.token-1].content==="~"){r.push(l.token-1)}}while(r.length){const e=r.pop();let n=e+1;while(n<t.tokens.length&&t.tokens[n].type==="s_close"){n++}n--;if(e!==n){i=t.tokens[n];t.tokens[n]=t.tokens[e];t.tokens[e]=i}}}function Gp(t){const e=t.tokens_meta;const i=t.tokens_meta.length;Vp(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){Vp(t,e[r].delimiters)}}}const Xp={tokenize:Kp,postProcess:Gp};function Yp(t,e){const i=t.pos;const r=t.src.charCodeAt(i);if(e){return false}if(r!==95&&r!==42){return false}const n=t.scanDelims(t.pos,r===42);for(let e=0;e<n.length;e++){const e=t.push("text","",0);e.content=String.fromCharCode(r);t.delimiters.push({marker:r,length:n.length,token:t.tokens.length-1,end:-1,open:n.can_open,close:n.can_close})}t.pos+=n.length;return true}function Qp(t,e){const i=e.length;for(let r=i-1;r>=0;r--){const i=e[r];if(i.marker!==95&&i.marker!==42){continue}if(i.end===-1){continue}const n=e[i.end];const s=r>0&&e[r-1].end===i.end+1&&e[r-1].marker===i.marker&&e[r-1].token===i.token-1&&e[i.end+1].token===n.token+1;const l=String.fromCharCode(i.marker);const u=t.tokens[i.token];u.type=s?"strong_open":"em_open";u.tag=s?"strong":"em";u.nesting=1;u.markup=s?l+l:l;u.content="";const o=t.tokens[n.token];o.type=s?"strong_close":"em_close";o.tag=s?"strong":"em";o.nesting=-1;o.markup=s?l+l:l;o.content="";if(s){t.tokens[e[r-1].token].content="";t.tokens[e[i.end+1].token].content="";r--}}}function tm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;Qp(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){Qp(t,e[r].delimiters)}}}const em={tokenize:Yp,postProcess:tm};function im(t,e){let i,r,n,s;let l="";let u="";let o=t.pos;let f=true;if(t.src.charCodeAt(t.pos)!==91){return false}const h=t.pos;const a=t.posMax;const c=t.pos+1;const d=t.md.helpers.parseLinkLabel(t,t.pos,true);if(d<0){return false}let p=d+1;if(p<a&&t.src.charCodeAt(p)===40){f=false;p++;for(;p<a;p++){i=t.src.charCodeAt(p);if(!wd(i)&&i!==10){break}}if(p>=a){return false}o=p;n=t.md.helpers.parseLinkDestination(t.src,p,t.posMax);if(n.ok){l=t.md.normalizeLink(n.str);if(t.md.validateLink(l)){p=n.pos}else{l=""}o=p;for(;p<a;p++){i=t.src.charCodeAt(p);if(!wd(i)&&i!==10){break}}n=t.md.helpers.parseLinkTitle(t.src,p,t.posMax);if(p<a&&o!==p&&n.ok){u=n.str;p=n.pos;for(;p<a;p++){i=t.src.charCodeAt(p);if(!wd(i)&&i!==10){break}}}}if(p>=a||t.src.charCodeAt(p)!==41){f=true}p++}if(f){if(typeof t.env.references==="undefined"){return false}if(p<a&&t.src.charCodeAt(p)===91){o=p+1;p=t.md.helpers.parseLinkLabel(t,p);if(p>=0){r=t.src.slice(o,p++)}else{p=d+1}}else{p=d+1}if(!r){r=t.src.slice(c,d)}s=t.env.references[Dd(r)];if(!s){t.pos=h;return false}l=s.href;u=s.title}if(!e){t.pos=c;t.posMax=d;const e=t.push("link_open","a",1);const i=[["href",l]];e.attrs=i;if(u){i.push(["title",u])}t.linkLevel++;t.md.inline.tokenize(t);t.linkLevel--;t.push("link_close","a",-1)}t.pos=p;t.posMax=a;return true}function rm(t,e){let i,r,n,s,l,u,o,f;let h="";const a=t.pos;const c=t.posMax;if(t.src.charCodeAt(t.pos)!==33){return false}if(t.src.charCodeAt(t.pos+1)!==91){return false}const d=t.pos+2;const p=t.md.helpers.parseLinkLabel(t,t.pos+1,false);if(p<0){return false}s=p+1;if(s<c&&t.src.charCodeAt(s)===40){s++;for(;s<c;s++){i=t.src.charCodeAt(s);if(!wd(i)&&i!==10){break}}if(s>=c){return false}f=s;u=t.md.helpers.parseLinkDestination(t.src,s,t.posMax);if(u.ok){h=t.md.normalizeLink(u.str);if(t.md.validateLink(h)){s=u.pos}else{h=""}}f=s;for(;s<c;s++){i=t.src.charCodeAt(s);if(!wd(i)&&i!==10){break}}u=t.md.helpers.parseLinkTitle(t.src,s,t.posMax);if(s<c&&f!==s&&u.ok){o=u.str;s=u.pos;for(;s<c;s++){i=t.src.charCodeAt(s);if(!wd(i)&&i!==10){break}}}else{o=""}if(s>=c||t.src.charCodeAt(s)!==41){t.pos=a;return false}s++}else{if(typeof t.env.references==="undefined"){return false}if(s<c&&t.src.charCodeAt(s)===91){f=s+1;s=t.md.helpers.parseLinkLabel(t,s);if(s>=0){n=t.src.slice(f,s++)}else{s=p+1}}else{s=p+1}if(!n){n=t.src.slice(d,p)}l=t.env.references[Dd(n)];if(!l){t.pos=a;return false}h=l.href;o=l.title}if(!e){r=t.src.slice(d,p);const e=[];t.md.inline.parse(r,t.md,t.env,e);const i=t.push("image","img",0);const n=[["src",h],["alt",""]];i.attrs=n;i.children=e;i.content=r;if(o){n.push(["title",o])}}t.pos=s;t.posMax=c;return true}const nm=/^([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/;const sm=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function lm(t,e){let i=t.pos;if(t.src.charCodeAt(i)!==60){return false}const r=t.pos;const n=t.posMax;for(;;){if(++i>=n)return false;const e=t.src.charCodeAt(i);if(e===60)return false;if(e===62)break}const s=t.src.slice(r+1,i);if(sm.test(s)){const i=t.md.normalizeLink(s);if(!t.md.validateLink(i)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",i]];e.markup="autolink";e.info="auto";const r=t.push("text","",0);r.content=t.md.normalizeLinkText(s);const n=t.push("link_close","a",-1);n.markup="autolink";n.info="auto"}t.pos+=s.length+2;return true}if(nm.test(s)){const i=t.md.normalizeLink("mailto:"+s);if(!t.md.validateLink(i)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",i]];e.markup="autolink";e.info="auto";const r=t.push("text","",0);r.content=t.md.normalizeLinkText(s);const n=t.push("link_close","a",-1);n.markup="autolink";n.info="auto"}t.pos+=s.length+2;return true}return false}function um(t){return/^<a[>\s]/i.test(t)}function om(t){return/^<\/a\s*>/i.test(t)}function fm(t){const e=t|32;return e>=97&&e<=122}function hm(t,e){if(!t.md.options.html){return false}const i=t.posMax;const r=t.pos;if(t.src.charCodeAt(r)!==60||r+2>=i){return false}const n=t.src.charCodeAt(r+1);if(n!==33&&n!==63&&n!==47&&!fm(n)){return false}const s=t.src.slice(r).match(Op);if(!s){return false}if(!e){const e=t.push("html_inline","",0);e.content=s[0];if(um(e.content))t.linkLevel++;if(om(e.content))t.linkLevel--}t.pos+=s[0].length;return true}const am=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i;const cm=/^&([a-z][a-z0-9]{1,31});/i;function dm(t,e){const i=t.pos;const r=t.posMax;if(t.src.charCodeAt(i)!==38)return false;if(i+1>=r)return false;const n=t.src.charCodeAt(i+1);if(n===35){const r=t.src.slice(i).match(am);if(r){if(!e){const e=r[1][0].toLowerCase()==="x"?parseInt(r[1].slice(1),16):parseInt(r[1],10);const i=t.push("text_special","",0);i.content=td(e)?ed(e):ed(65533);i.markup=r[0];i.info="entity"}t.pos+=r[0].length;return true}}else{const r=t.src.slice(i).match(cm);if(r){const i=x(r[0]);if(i!==r[0]){if(!e){const e=t.push("text_special","",0);e.content=i;e.markup=r[0];e.info="entity"}t.pos+=r[0].length;return true}}}return false}function pm(t){const e={};const i=t.length;if(!i)return;let r=0;let n=-2;const s=[];for(let l=0;l<i;l++){const i=t[l];s.push(0);if(t[r].marker!==i.marker||n!==i.token-1){r=l}n=i.token;i.length=i.length||0;if(!i.close)continue;if(!e.hasOwnProperty(i.marker)){e[i.marker]=[-1,-1,-1,-1,-1,-1]}const u=e[i.marker][(i.open?3:0)+i.length%3];let o=r-s[r]-1;let f=o;for(;o>u;o-=s[o]+1){const e=t[o];if(e.marker!==i.marker)continue;if(e.open&&e.end<0){let r=false;if(e.close||i.open){if((e.length+i.length)%3===0){if(e.length%3!==0||i.length%3!==0){r=true}}}if(!r){const r=o>0&&!t[o-1].open?s[o-1]+1:0;s[l]=l-o+r;s[o]=r;i.open=false;e.end=l;e.close=false;f=-1;n=-2;break}}}if(f!==-1){e[i.marker][(i.open?3:0)+(i.length||0)%3]=f}}}function mm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;pm(t.delimiters);for(let t=0;t<i;t++){if(e[t]&&e[t].delimiters){pm(e[t].delimiters)}}}function wm(t){let e,i;let r=0;const n=t.tokens;const s=t.tokens.length;for(e=i=0;e<s;e++){if(n[e].nesting<0)r--;n[e].level=r;if(n[e].nesting>0)r++;if(n[e].type==="text"&&e+1<s&&n[e+1].type==="text"){n[e+1].content=n[e].content+n[e+1].content}else{if(e!==i){n[i]=n[e]}i++}}if(e!==i){n.length=i}}const gm=[["text",Pp],["linkify",Lp],["newline",Up],["escape",Hp],["backticks",Zp],["strikethrough",Xp.tokenize],["emphasis",em.tokenize],["link",im],["image",rm],["autolink",lm],["html_inline",hm],["entity",dm]];const bm=[["balance_pairs",mm],["strikethrough",Xp.postProcess],["emphasis",em.postProcess],["fragments_join",wm]];function km(){this.ruler=new Sd;for(let t=0;t<gm.length;t++){this.ruler.push(gm[t][0],gm[t][1])}this.ruler2=new Sd;for(let t=0;t<bm.length;t++){this.ruler2.push(bm[t][0],bm[t][1])}}km.prototype.skipToken=function(t){const e=t.pos;const i=this.ruler.getRules("");const r=i.length;const n=t.md.options.maxNesting;const s=t.cache;if(typeof s[e]!=="undefined"){t.pos=s[e];return}let l=false;if(t.level<n){for(let n=0;n<r;n++){t.level++;l=i[n](t,true);t.level--;if(l){if(e>=t.pos){throw new Error("inline rule didn't increment state.pos")}break}}}else{t.pos=t.posMax}if(!l){t.pos++}s[e]=t.pos};km.prototype.tokenize=function(t){const e=this.ruler.getRules("");const i=e.length;const r=t.posMax;const n=t.md.options.maxNesting;while(t.pos<r){const s=t.pos;let l=false;if(t.level<n){for(let r=0;r<i;r++){l=e[r](t,false);if(l){if(s>=t.pos){throw new Error("inline rule didn't increment state.pos")}break}}}if(l){if(t.pos>=r){break}continue}t.pending+=t.src[t.pos++]}if(t.pending){t.pushPending()}};km.prototype.parse=function(t,e,i,r){const n=new this.State(t,e,i,r);this.tokenize(n);const s=this.ruler2.getRules("");const l=s.length;for(let t=0;t<l;t++){s[t](n)}};km.prototype.State=Tp;function Dm(t){const e={};t=t||{};e.src_Any=Pc.source;e.src_Cc=Jc.source;e.src_Z=Hc.source;e.src_P=Uc.source;e.src_ZPCc=[e.src_Z,e.src_P,e.src_Cc].join("|");e.src_ZCc=[e.src_Z,e.src_Cc].join("|");const i="[><|]";e.src_pseudo_letter="(?:(?!"+i+"|"+e.src_ZPCc+")"+e.src_Any+")";e.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)";e.src_auth="(?:(?:(?!"+e.src_ZCc+"|[@/\\[\\]()]).)+@)?";e.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?";e.src_host_terminator="(?=$|"+i+"|"+e.src_ZPCc+")"+"(?!"+(t["---"]?"-(?!--)|":"-|")+"_|:\\d|\\.-|\\.(?!$|"+e.src_ZPCc+"))";e.src_path="(?:"+"[/?#]"+"(?:"+"(?!"+e.src_ZCc+"|"+i+"|[()[\\]{}.,\"'?!\\-;]).|"+"\\[(?:(?!"+e.src_ZCc+"|\\]).)*\\]|"+"\\((?:(?!"+e.src_ZCc+"|[)]).)*\\)|"+"\\{(?:(?!"+e.src_ZCc+"|[}]).)*\\}|"+'\\"(?:(?!'+e.src_ZCc+'|["]).)+\\"|'+"\\'(?:(?!"+e.src_ZCc+"|[']).)+\\'|"+"\\'(?="+e.src_pseudo_letter+"|[-])|"+"\\.{2,}[a-zA-Z0-9%/&]|"+"\\.(?!"+e.src_ZCc+"|[.]|$)|"+(t["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+",(?!"+e.src_ZCc+"|$)|"+";(?!"+e.src_ZCc+"|$)|"+"\\!+(?!"+e.src_ZCc+"|[!]|$)|"+"\\?(?!"+e.src_ZCc+"|[?]|$)"+")+"+"|\\/"+")?";e.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*';e.src_xn="xn--[a-z0-9\\-]{1,59}";e.src_domain_root="(?:"+e.src_xn+"|"+e.src_pseudo_letter+"{1,63}"+")";e.src_domain="(?:"+e.src_xn+"|"+"(?:"+e.src_pseudo_letter+")"+"|"+"(?:"+e.src_pseudo_letter+"(?:-|"+e.src_pseudo_letter+"){0,61}"+e.src_pseudo_letter+")"+")";e.src_host="(?:"+"(?:(?:(?:"+e.src_domain+")\\.)*"+e.src_domain+")"+")";e.tpl_host_fuzzy="(?:"+e.src_ip4+"|"+"(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%))"+")";e.tpl_host_no_ip_fuzzy="(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%))";e.src_host_strict=e.src_host+e.src_host_terminator;e.tpl_host_fuzzy_strict=e.tpl_host_fuzzy+e.src_host_terminator;e.src_host_port_strict=e.src_host+e.src_port+e.src_host_terminator;e.tpl_host_port_fuzzy_strict=e.tpl_host_fuzzy+e.src_port+e.src_host_terminator;e.tpl_host_port_no_ip_fuzzy_strict=e.tpl_host_no_ip_fuzzy+e.src_port+e.src_host_terminator;e.tpl_host_fuzzy_test="localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:"+e.src_ZPCc+"|>|$))";e.tpl_email_fuzzy="(^|"+i+'|"|\\(|'+e.src_ZCc+")"+"("+e.src_email_name+"@"+e.tpl_host_fuzzy_strict+")";e.tpl_link_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))"+"((?![$+<=>^`||])"+e.tpl_host_port_fuzzy_strict+e.src_path+")";e.tpl_link_no_ip_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))"+"((?![$+<=>^`||])"+e.tpl_host_port_no_ip_fuzzy_strict+e.src_path+")";return e}function vm(t){const e=Array.prototype.slice.call(arguments,1);e.forEach((function(e){if(!e){return}Object.keys(e).forEach((function(i){t[i]=e[i]}))}));return t}function ym(t){return Object.prototype.toString.call(t)}function Fm(t){return ym(t)==="[object String]"}function Em(t){return ym(t)==="[object Object]"}function xm(t){return ym(t)==="[object RegExp]"}function Mm(t){return ym(t)==="[object Function]"}function Am(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const Cm={fuzzyLink:true,fuzzyEmail:true,fuzzyIP:false};function Sm(t){return Object.keys(t||{}).reduce((function(t,e){return t||Cm.hasOwnProperty(e)}),false)}const Om={"http:":{validate:function(t,e,i){const r=t.slice(e);if(!i.re.http){i.re.http=new RegExp("^\\/\\/"+i.re.src_auth+i.re.src_host_port_strict+i.re.src_path,"i")}if(i.re.http.test(r)){return r.match(i.re.http)[0].length}return 0}},"https:":"http:","ftp:":"http:","//":{validate:function(t,e,i){const r=t.slice(e);if(!i.re.no_http){i.re.no_http=new RegExp("^"+i.re.src_auth+"(?:localhost|(?:(?:"+i.re.src_domain+")\\.)+"+i.re.src_domain_root+")"+i.re.src_port+i.re.src_host_terminator+i.re.src_path,"i")}if(i.re.no_http.test(r)){if(e>=3&&t[e-3]===":"){return 0}if(e>=3&&t[e-3]==="/"){return 0}return r.match(i.re.no_http)[0].length}return 0}},"mailto:":{validate:function(t,e,i){const r=t.slice(e);if(!i.re.mailto){i.re.mailto=new RegExp("^"+i.re.src_email_name+"@"+i.re.src_host_strict,"i")}if(i.re.mailto.test(r)){return r.match(i.re.mailto)[0].length}return 0}}};const $m="a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]";const _m="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Bm(t){t.__index__=-1;t.__text_cache__=""}function jm(t){return function(e,i){const r=e.slice(i);if(t.test(r)){return r.match(t)[0].length}return 0}}function qm(){return function(t,e){e.normalize(t)}}function Rm(t){const e=t.re=Dm(t.__opts__);const i=t.__tlds__.slice();t.onCompile();if(!t.__tlds_replaced__){i.push($m)}i.push(e.src_xn);e.src_tlds=i.join("|");function r(t){return t.replace("%TLDS%",e.src_tlds)}e.email_fuzzy=RegExp(r(e.tpl_email_fuzzy),"i");e.link_fuzzy=RegExp(r(e.tpl_link_fuzzy),"i");e.link_no_ip_fuzzy=RegExp(r(e.tpl_link_no_ip_fuzzy),"i");e.host_fuzzy_test=RegExp(r(e.tpl_host_fuzzy_test),"i");const n=[];t.__compiled__={};function s(t,e){throw new Error('(LinkifyIt) Invalid schema "'+t+'": '+e)}Object.keys(t.__schemas__).forEach((function(e){const i=t.__schemas__[e];if(i===null){return}const r={validate:null,link:null};t.__compiled__[e]=r;if(Em(i)){if(xm(i.validate)){r.validate=jm(i.validate)}else if(Mm(i.validate)){r.validate=i.validate}else{s(e,i)}if(Mm(i.normalize)){r.normalize=i.normalize}else if(!i.normalize){r.normalize=qm()}else{s(e,i)}return}if(Fm(i)){n.push(e);return}s(e,i)}));n.forEach((function(e){if(!t.__compiled__[t.__schemas__[e]]){return}t.__compiled__[e].validate=t.__compiled__[t.__schemas__[e]].validate;t.__compiled__[e].normalize=t.__compiled__[t.__schemas__[e]].normalize}));t.__compiled__[""]={validate:null,normalize:qm()};const l=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(Am).join("|");t.re.schema_test=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+l+")","i");t.re.schema_search=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+l+")","ig");t.re.schema_at_start=RegExp("^"+t.re.schema_search.source,"i");t.re.pretest=RegExp("("+t.re.schema_test.source+")|("+t.re.host_fuzzy_test.source+")|@","i");Bm(t)}function Nm(t,e){const i=t.__index__;const r=t.__last_index__;const n=t.__text_cache__.slice(i,r);this.schema=t.__schema__.toLowerCase();this.index=i+e;this.lastIndex=r+e;this.raw=n;this.text=n;this.url=n}function zm(t,e){const i=new Nm(t,e);t.__compiled__[i.schema].normalize(i,t);return i}function Tm(t,e){if(!(this instanceof Tm)){return new Tm(t,e)}if(!e){if(Sm(t)){e=t;t={}}}this.__opts__=vm({},Cm,e);this.__index__=-1;this.__last_index__=-1;this.__schema__="";this.__text_cache__="";this.__schemas__=vm({},Om,t);this.__compiled__={};this.__tlds__=_m;this.__tlds_replaced__=false;this.re={};Rm(this)}Tm.prototype.add=function t(e,i){this.__schemas__[e]=i;Rm(this);return this};Tm.prototype.set=function t(e){this.__opts__=vm(this.__opts__,e);return this};Tm.prototype.test=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length){return false}let i,r,n,s,l,u,o,f,h;if(this.re.schema_test.test(e)){o=this.re.schema_search;o.lastIndex=0;while((i=o.exec(e))!==null){s=this.testSchemaAt(e,i[2],o.lastIndex);if(s){this.__schema__=i[2];this.__index__=i.index+i[1].length;this.__last_index__=i.index+i[0].length+s;break}}}if(this.__opts__.fuzzyLink&&this.__compiled__["http:"]){f=e.search(this.re.host_fuzzy_test);if(f>=0){if(this.__index__<0||f<this.__index__){if((r=e.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy))!==null){l=r.index+r[1].length;if(this.__index__<0||l<this.__index__){this.__schema__="";this.__index__=l;this.__last_index__=r.index+r[0].length}}}}}if(this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"]){h=e.indexOf("@");if(h>=0){if((n=e.match(this.re.email_fuzzy))!==null){l=n.index+n[1].length;u=n.index+n[0].length;if(this.__index__<0||l<this.__index__||l===this.__index__&&u>this.__last_index__){this.__schema__="mailto:";this.__index__=l;this.__last_index__=u}}}}return this.__index__>=0};Tm.prototype.pretest=function t(e){return this.re.pretest.test(e)};Tm.prototype.testSchemaAt=function t(e,i,r){if(!this.__compiled__[i.toLowerCase()]){return 0}return this.__compiled__[i.toLowerCase()].validate(e,r,this)};Tm.prototype.match=function t(e){const i=[];let r=0;if(this.__index__>=0&&this.__text_cache__===e){i.push(zm(this,r));r=this.__last_index__}let n=r?e.slice(r):e;while(this.test(n)){i.push(zm(this,r));n=n.slice(this.__last_index__);r+=this.__last_index__}if(i.length){return i}return null};Tm.prototype.matchAtStart=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length)return null;const i=this.re.schema_at_start.exec(e);if(!i)return null;const r=this.testSchemaAt(e,i[2],i[0].length);if(!r)return null;this.__schema__=i[2];this.__index__=i.index+i[1].length;this.__last_index__=i.index+i[0].length+r;return zm(this,0)};Tm.prototype.tlds=function t(e,i){e=Array.isArray(e)?e:[e];if(!i){this.__tlds__=e.slice();this.__tlds_replaced__=true;Rm(this);return this}this.__tlds__=this.__tlds__.concat(e).sort().filter((function(t,e,i){return t!==i[e-1]})).reverse();Rm(this);return this};Tm.prototype.normalize=function t(e){if(!e.schema){e.url="http://"+e.url}if(e.schema==="mailto:"&&!/^mailto:/i.test(e.url)){e.url="mailto:"+e.url}};Tm.prototype.onCompile=function t(){};const Im=2147483647;const Pm=36;const Jm=1;const Lm=26;const Um=38;const Wm=700;const Hm=72;const Zm=128;const Km="-";const Vm=/^xn--/;const Gm=/[^\0-\x7F]/;const Xm=/[\x2E\u3002\uFF0E\uFF61]/g;const Ym={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const Qm=Pm-Jm;const tw=Math.floor;const ew=String.fromCharCode;function iw(t){throw new RangeError(Ym[t])}function rw(t,e){const i=[];let r=t.length;while(r--){i[r]=e(t[r])}return i}function nw(t,e){const i=t.split("@");let r="";if(i.length>1){r=i[0]+"@";t=i[1]}t=t.replace(Xm,".");const n=t.split(".");const s=rw(n,e).join(".");return r+s}function sw(t){const e=[];let i=0;const r=t.length;while(i<r){const n=t.charCodeAt(i++);if(n>=55296&&n<=56319&&i<r){const r=t.charCodeAt(i++);if((r&64512)==56320){e.push(((n&1023)<<10)+(r&1023)+65536)}else{e.push(n);i--}}else{e.push(n)}}return e}const lw=t=>String.fromCodePoint(...t);const uw=function(t){if(t>=48&&t<58){return 26+(t-48)}if(t>=65&&t<91){return t-65}if(t>=97&&t<123){return t-97}return Pm};const ow=function(t,e){return t+22+75*(t<26)-((e!=0)<<5)};const fw=function(t,e,i){let r=0;t=i?tw(t/Wm):t>>1;t+=tw(t/e);for(;t>Qm*Lm>>1;r+=Pm){t=tw(t/Qm)}return tw(r+(Qm+1)*t/(t+Um))};const hw=function(t){const e=[];const i=t.length;let r=0;let n=Zm;let s=Hm;let l=t.lastIndexOf(Km);if(l<0){l=0}for(let i=0;i<l;++i){if(t.charCodeAt(i)>=128){iw("not-basic")}e.push(t.charCodeAt(i))}for(let u=l>0?l+1:0;u<i;){const l=r;for(let e=1,n=Pm;;n+=Pm){if(u>=i){iw("invalid-input")}const l=uw(t.charCodeAt(u++));if(l>=Pm){iw("invalid-input")}if(l>tw((Im-r)/e)){iw("overflow")}r+=l*e;const o=n<=s?Jm:n>=s+Lm?Lm:n-s;if(l<o){break}const f=Pm-o;if(e>tw(Im/f)){iw("overflow")}e*=f}const o=e.length+1;s=fw(r-l,o,l==0);if(tw(r/o)>Im-n){iw("overflow")}n+=tw(r/o);r%=o;e.splice(r++,0,n)}return String.fromCodePoint(...e)};const aw=function(t){const e=[];t=sw(t);const i=t.length;let r=Zm;let n=0;let s=Hm;for(const i of t){if(i<128){e.push(ew(i))}}const l=e.length;let u=l;if(l){e.push(Km)}while(u<i){let i=Im;for(const e of t){if(e>=r&&e<i){i=e}}const o=u+1;if(i-r>tw((Im-n)/o)){iw("overflow")}n+=(i-r)*o;r=i;for(const i of t){if(i<r&&++n>Im){iw("overflow")}if(i===r){let t=n;for(let i=Pm;;i+=Pm){const r=i<=s?Jm:i>=s+Lm?Lm:i-s;if(t<r){break}const n=t-r;const l=Pm-r;e.push(ew(ow(r+n%l,0)));t=tw(n/l)}e.push(ew(ow(t,0)));s=fw(n,o,u===l);n=0;++u}}++n;++r}return e.join("")};const cw=function(t){return nw(t,(function(t){return Vm.test(t)?hw(t.slice(4).toLowerCase()):t}))};const dw=function(t){return nw(t,(function(t){return Gm.test(t)?"xn--"+aw(t):t}))};const pw={version:"2.3.1",ucs2:{decode:sw,encode:lw},decode:hw,encode:aw,toASCII:dw,toUnicode:cw};const mw={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}};const ww={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["paragraph"]},inline:{rules:["text"],rules2:["balance_pairs","fragments_join"]}}};const gw={options:{html:true,xhtmlOut:true,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["blockquote","code","fence","heading","hr","html_block","lheading","list","reference","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","html_inline","image","link","newline","text"],rules2:["balance_pairs","emphasis","fragments_join"]}}};const bw={default:mw,zero:ww,commonmark:gw};const kw=/^(vbscript|javascript|file|data):/;const Dw=/^data:image\/(gif|png|jpeg|webp);/;function vw(t){const e=t.trim().toLowerCase();return kw.test(e)?Dw.test(e):true}const yw=["http:","https:","mailto:"];function Fw(t){const e=Tc(t,true);if(e.hostname){if(!e.protocol||yw.indexOf(e.protocol)>=0){try{e.hostname=pw.toASCII(e.hostname)}catch(t){}}}return Fc(Ec(e))}function Ew(t){const e=Tc(t,true);if(e.hostname){if(!e.protocol||yw.indexOf(e.protocol)>=0){try{e.hostname=pw.toUnicode(e.hostname)}catch(t){}}}return Dc(Ec(e),Dc.defaultChars+"%")}function xw(t,e){if(!(this instanceof xw)){return new xw(t,e)}if(!e){if(!Vc(t)){e=t||{};t="default"}}this.inline=new km;this.block=new zp;this.core=new ip;this.renderer=new Cd;this.linkify=new Tm;this.validateLink=vw;this.normalizeLink=Fw;this.normalizeLinkText=Ew;this.utils=yd;this.helpers=Yc({},Md);this.options={};this.configure(t);if(e){this.set(e)}}xw.prototype.set=function(t){Yc(this.options,t);return this};xw.prototype.configure=function(t){const e=this;if(Vc(t)){const e=t;t=bw[e];if(!t){throw new Error('Wrong `markdown-it` preset "'+e+'", check name')}}if(!t){throw new Error("Wrong `markdown-it` preset, can't be empty")}if(t.options){e.set(t.options)}if(t.components){Object.keys(t.components).forEach((function(i){if(t.components[i].rules){e[i].ruler.enableOnly(t.components[i].rules)}if(t.components[i].rules2){e[i].ruler2.enableOnly(t.components[i].rules2)}}))}return this};xw.prototype.enable=function(t,e){let i=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){i=i.concat(this[e].ruler.enable(t,true))}),this);i=i.concat(this.inline.ruler2.enable(t,true));const r=t.filter((function(t){return i.indexOf(t)<0}));if(r.length&&!e){throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+r)}return this};xw.prototype.disable=function(t,e){let i=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){i=i.concat(this[e].ruler.disable(t,true))}),this);i=i.concat(this.inline.ruler2.disable(t,true));const r=t.filter((function(t){return i.indexOf(t)<0}));if(r.length&&!e){throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+r)}return this};xw.prototype.use=function(t){const e=[this].concat(Array.prototype.slice.call(arguments,1));t.apply(t,e);return this};xw.prototype.parse=function(t,e){if(typeof t!=="string"){throw new Error("Input data should be a String")}const i=new this.core.State(t,this,e);this.core.process(i);return i.tokens};xw.prototype.render=function(t,e){e=e||{};return this.renderer.render(this.parse(t,e),this.options,e)};xw.prototype.parseInline=function(t,e){const i=new this.core.State(t,this,e);i.inlineMode=true;this.core.process(i);return i.tokens};xw.prototype.renderInline=function(t,e){e=e||{};return this.renderer.render(this.parseInline(t,e),this.options,e)};const Mw=new ui({nodes:{doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return["p",0]}},blockquote:{content:"block+",group:"block",parseDOM:[{tag:"blockquote"}],toDOM(){return["blockquote",0]}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return["div",["hr"]]}},heading:{attrs:{level:{default:1}},content:"(text | image)*",group:"block",defining:true,parseDOM:[{tag:"h1",attrs:{level:1}},{tag:"h2",attrs:{level:2}},{tag:"h3",attrs:{level:3}},{tag:"h4",attrs:{level:4}},{tag:"h5",attrs:{level:5}},{tag:"h6",attrs:{level:6}}],toDOM(t){return["h"+t.attrs.level,0]}},code_block:{content:"text*",group:"block",code:true,defining:true,marks:"",attrs:{params:{default:""}},parseDOM:[{tag:"pre",preserveWhitespace:"full",getAttrs:t=>({params:t.getAttribute("data-params")||""})}],toDOM(t){return["pre",t.attrs.params?{"data-params":t.attrs.params}:{},["code",0]]}},ordered_list:{content:"list_item+",group:"block",attrs:{order:{default:1},tight:{default:false}},parseDOM:[{tag:"ol",getAttrs(t){return{order:t.hasAttribute("start")?+t.getAttribute("start"):1,tight:t.hasAttribute("data-tight")}}}],toDOM(t){return["ol",{start:t.attrs.order==1?null:t.attrs.order,"data-tight":t.attrs.tight?"true":null},0]}},bullet_list:{content:"list_item+",group:"block",attrs:{tight:{default:false}},parseDOM:[{tag:"ul",getAttrs:t=>({tight:t.hasAttribute("data-tight")})}],toDOM(t){return["ul",{"data-tight":t.attrs.tight?"true":null},0]}},list_item:{content:"block+",defining:true,parseDOM:[{tag:"li"}],toDOM(){return["li",0]}},text:{group:"inline"},image:{inline:true,attrs:{src:{},alt:{default:null},title:{default:null}},group:"inline",draggable:true,parseDOM:[{tag:"img[src]",getAttrs(t){return{src:t.getAttribute("src"),title:t.getAttribute("title"),alt:t.getAttribute("alt")}}}],toDOM(t){return["img",t.attrs]}},hard_break:{inline:true,group:"inline",selectable:false,parseDOM:[{tag:"br"}],toDOM(){return["br"]}}},marks:{em:{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"},{style:"font-style=normal",clearMark:t=>t.type.name=="em"}],toDOM(){return["em"]}},strong:{parseDOM:[{tag:"strong"},{tag:"b",getAttrs:t=>t.style.fontWeight!="normal"&&null},{style:"font-weight=400",clearMark:t=>t.type.name=="strong"},{style:"font-weight",getAttrs:t=>/^(bold(er)?|[5-9]\d{2,})$/.test(t)&&null}],toDOM(){return["strong"]}},link:{attrs:{href:{},title:{default:null}},inclusive:false,parseDOM:[{tag:"a[href]",getAttrs(t){return{href:t.getAttribute("href"),title:t.getAttribute("title")}}}],toDOM(t){return["a",t.attrs]}},code:{parseDOM:[{tag:"code"}],toDOM(){return["code"]}}}});function Aw(t,e){if(t.isText&&e.isText&&ge.sameSet(t.marks,e.marks))return t.withText(t.text+e.text)}class Cw{constructor(t,e){this.schema=t;this.tokenHandlers=e;this.stack=[{type:t.topNodeType,attrs:null,content:[],marks:ge.none}]}top(){return this.stack[this.stack.length-1]}push(t){if(this.stack.length)this.top().content.push(t)}addText(t){if(!t)return;let e=this.top(),i=e.content,r=i[i.length-1];let n=this.schema.text(t,e.marks),s;if(r&&(s=Aw(r,n)))i[i.length-1]=s;else i.push(n)}openMark(t){let e=this.top();e.marks=t.addToSet(e.marks)}closeMark(t){let e=this.top();e.marks=t.removeFromSet(e.marks)}parseTokens(t){for(let e=0;e<t.length;e++){let i=t[e];let r=this.tokenHandlers[i.type];if(!r)throw new Error("Token type `"+i.type+"` not supported by Markdown parser");r(this,i,t,e)}}addNode(t,e,i){let r=this.top();let n=t.createAndFill(e,i,r?r.marks:[]);if(!n)return null;this.push(n);return n}openNode(t,e){this.stack.push({type:t,attrs:e,content:[],marks:ge.none})}closeNode(){let t=this.stack.pop();return this.addNode(t.type,t.attrs,t.content)}}function Sw(t,e,i,r){if(t.getAttrs)return t.getAttrs(e,i,r);else if(t.attrs instanceof Function)return t.attrs(e);else return t.attrs}function Ow(t,e){return t.noCloseToken||e=="code_inline"||e=="code_block"||e=="fence"}function $w(t){return t[t.length-1]=="\n"?t.slice(0,t.length-1):t}function _w(){}function Bw(t,e){let i=Object.create(null);for(let r in e){let n=e[r];if(n.block){let e=t.nodeType(n.block);if(Ow(n,r)){i[r]=(t,i,r,s)=>{t.openNode(e,Sw(n,i,r,s));t.addText($w(i.content));t.closeNode()}}else{i[r+"_open"]=(t,i,r,s)=>t.openNode(e,Sw(n,i,r,s));i[r+"_close"]=t=>t.closeNode()}}else if(n.node){let e=t.nodeType(n.node);i[r]=(t,i,r,s)=>t.addNode(e,Sw(n,i,r,s))}else if(n.mark){let e=t.marks[n.mark];if(Ow(n,r)){i[r]=(t,i,r,s)=>{t.openMark(e.create(Sw(n,i,r,s)));t.addText($w(i.content));t.closeMark(e)}}else{i[r+"_open"]=(t,i,r,s)=>t.openMark(e.create(Sw(n,i,r,s)));i[r+"_close"]=t=>t.closeMark(e)}}else if(n.ignore){if(Ow(n,r)){i[r]=_w}else{i[r+"_open"]=_w;i[r+"_close"]=_w}}else{throw new RangeError("Unrecognized parsing spec "+JSON.stringify(n))}}i.text=(t,e)=>t.addText(e.content);i.inline=(t,e)=>t.parseTokens(e.children);i.softbreak=i.softbreak||(t=>t.addText(" "));return i}class jw{constructor(t,e,i){this.schema=t;this.tokenizer=e;this.tokens=i;this.tokenHandlers=Bw(t,i)}parse(t,e={}){let i=new Cw(this.schema,this.tokenHandlers),r;i.parseTokens(this.tokenizer.parse(t,e));do{r=i.closeNode()}while(i.stack.length);return r||this.schema.topNodeType.createAndFill()}}function qw(t,e){while(++e<t.length)if(t[e].type!="list_item_open")return t[e].hidden;return false}new jw(Mw,xw("commonmark",{html:false}),{blockquote:{block:"blockquote"},paragraph:{block:"paragraph"},list_item:{block:"list_item"},bullet_list:{block:"bullet_list",getAttrs:(t,e,i)=>({tight:qw(e,i)})},ordered_list:{block:"ordered_list",getAttrs:(t,e,i)=>({order:+t.attrGet("start")||1,tight:qw(e,i)})},heading:{block:"heading",getAttrs:t=>({level:+t.tag.slice(1)})},code_block:{block:"code_block",noCloseToken:true},fence:{block:"code_block",getAttrs:t=>({params:t.info||""}),noCloseToken:true},hr:{node:"horizontal_rule"},image:{node:"image",getAttrs:t=>({src:t.attrGet("src"),title:t.attrGet("title")||null,alt:t.children[0]&&t.children[0].content||null})},hardbreak:{node:"hard_break"},em:{mark:"em"},strong:{mark:"strong"},link:{mark:"link",getAttrs:t=>({href:t.attrGet("href"),title:t.attrGet("title")||null})},code_inline:{mark:"code",noCloseToken:true}});class Rw{constructor(t,e,i={}){this.nodes=t;this.marks=e;this.options=i}serialize(t,e={}){e=Object.assign({},this.options,e);let i=new Iw(this.nodes,this.marks,e);i.renderContent(t);return i.out}}const Nw=new Rw({blockquote(t,e){t.wrapBlock("> ",null,e,(()=>t.renderContent(e)))},code_block(t,e){const i=e.textContent.match(/`{3,}/gm);const r=i?i.sort().slice(-1)[0]+"`":"```";t.write(r+(e.attrs.params||"")+"\n");t.text(e.textContent,false);t.write("\n");t.write(r);t.closeBlock(e)},heading(t,e){t.write(t.repeat("#",e.attrs.level)+" ");t.renderInline(e,false);t.closeBlock(e)},horizontal_rule(t,e){t.write(e.attrs.markup||"---");t.closeBlock(e)},bullet_list(t,e){t.renderList(e," ",(()=>(e.attrs.bullet||"*")+" "))},ordered_list(t,e){let i=e.attrs.order||1;let r=String(i+e.childCount-1).length;let n=t.repeat(" ",r+2);t.renderList(e,n,(e=>{let n=String(i+e);return t.repeat(" ",r-n.length)+n+". "}))},list_item(t,e){t.renderContent(e)},paragraph(t,e){t.renderInline(e);t.closeBlock(e)},image(t,e){t.write("!["+t.esc(e.attrs.alt||"")+"]("+e.attrs.src.replace(/[\(\)]/g,"\\$&")+(e.attrs.title?' "'+e.attrs.title.replace(/"/g,'\\"')+'"':"")+")")},hard_break(t,e,i,r){for(let n=r+1;n<i.childCount;n++)if(i.child(n).type!=e.type){t.write("\\\n");return}},text(t,e){t.text(e.text,!t.inAutolink)}},{em:{open:"*",close:"*",mixable:true,expelEnclosingWhitespace:true},strong:{open:"**",close:"**",mixable:true,expelEnclosingWhitespace:true},link:{open(t,e,i,r){t.inAutolink=Tw(e,i,r);return t.inAutolink?"<":"["},close(t,e,i,r){let{inAutolink:n}=t;t.inAutolink=undefined;return n?">":"]("+e.attrs.href.replace(/[\(\)"]/g,"\\$&")+(e.attrs.title?` "${e.attrs.title.replace(/"/g,'\\"')}"`:"")+")"},mixable:true},code:{open(t,e,i,r){return zw(i.child(r),-1)},close(t,e,i,r){return zw(i.child(r-1),1)},escape:false}});function zw(t,e){let i=/`+/g,r,n=0;if(t.isText)while(r=i.exec(t.text))n=Math.max(n,r[0].length);let s=n>0&&e>0?" `":"`";for(let t=0;t<n;t++)s+="`";if(n>0&&e<0)s+=" ";return s}function Tw(t,e,i){if(t.attrs.title||!/^\w+:/.test(t.attrs.href))return false;let r=e.child(i);if(!r.isText||r.text!=t.attrs.href||r.marks[r.marks.length-1]!=t)return false;return i==e.childCount-1||!t.isInSet(e.child(i+1).marks)}class Iw{constructor(t,e,i){this.nodes=t;this.marks=e;this.options=i;this.delim="";this.out="";this.closed=null;this.inAutolink=undefined;this.atBlockStart=false;this.inTightList=false;if(typeof this.options.tightLists=="undefined")this.options.tightLists=false;if(typeof this.options.hardBreakNodeName=="undefined")this.options.hardBreakNodeName="hard_break"}flushClose(t=2){if(this.closed){if(!this.atBlank())this.out+="\n";if(t>1){let e=this.delim;let i=/\s+$/.exec(e);if(i)e=e.slice(0,e.length-i[0].length);for(let i=1;i<t;i++)this.out+=e+"\n"}this.closed=null}}wrapBlock(t,e,i,r){let n=this.delim;this.write(e!=null?e:t);this.delim+=t;r();this.delim=n;this.closeBlock(i)}atBlank(){return/(^|\n)$/.test(this.out)}ensureNewLine(){if(!this.atBlank())this.out+="\n"}write(t){this.flushClose();if(this.delim&&this.atBlank())this.out+=this.delim;if(t)this.out+=t}closeBlock(t){this.closed=t}text(t,e=true){let i=t.split("\n");for(let t=0;t<i.length;t++){this.write();if(!e&&i[t][0]=="["&&/(^|[^\\])\!$/.test(this.out))this.out=this.out.slice(0,this.out.length-1)+"\\!";this.out+=e?this.esc(i[t],this.atBlockStart):i[t];if(t!=i.length-1)this.out+="\n"}}render(t,e,i){if(!this.nodes[t.type.name])throw new Error("Token type `"+t.type.name+"` not supported by Markdown renderer");this.nodes[t.type.name](this,t,e,i)}renderContent(t){t.forEach(((e,i,r)=>this.render(e,t,r)))}renderInline(t,e=true){this.atBlockStart=e;let i=[],r="";let n=(e,n,s)=>{let l=e?e.marks:[];if(e&&e.type.name===this.options.hardBreakNodeName)l=l.filter((e=>{if(s+1==t.childCount)return false;let i=t.child(s+1);return e.isInSet(i.marks)&&(!i.isText||/\S/.test(i.text))}));let u=r;r="";if(e&&e.isText&&l.some((t=>{let e=this.marks[t.type.name];return e&&e.expelEnclosingWhitespace&&!t.isInSet(i)}))){let[t,r,n]=/^(\s*)(.*)$/m.exec(e.text);if(r){u+=r;e=n?e.withText(n):null;if(!e)l=i}}if(e&&e.isText&&l.some((e=>{let i=this.marks[e.type.name];return i&&i.expelEnclosingWhitespace&&(s==t.childCount-1||!e.isInSet(t.child(s+1).marks))}))){let[t,n,s]=/^(.*?)(\s*)$/m.exec(e.text);if(s){r=s;e=n?e.withText(n):null;if(!e)l=i}}let o=l.length?l[l.length-1]:null;let f=o&&this.marks[o.type.name].escape===false;let h=l.length-(f?1:0);t:for(let t=0;t<h;t++){let e=l[t];if(!this.marks[e.type.name].mixable)break;for(let r=0;r<i.length;r++){let n=i[r];if(!this.marks[n.type.name].mixable)break;if(e.eq(n)){if(t>r)l=l.slice(0,r).concat(e).concat(l.slice(r,t)).concat(l.slice(t+1,h));else if(r>t)l=l.slice(0,t).concat(l.slice(t+1,r)).concat(e).concat(l.slice(r,h));continue t}}}let a=0;while(a<Math.min(i.length,h)&&l[a].eq(i[a]))++a;while(a<i.length)this.text(this.markString(i.pop(),false,t,s),false);if(u)this.text(u);if(e){while(i.length<h){let e=l[i.length];i.push(e);this.text(this.markString(e,true,t,s),false);this.atBlockStart=false}if(f&&e.isText)this.text(this.markString(o,true,t,s)+e.text+this.markString(o,false,t,s+1),false);else this.render(e,t,s);this.atBlockStart=false}if((e===null||e===void 0?void 0:e.isText)&&e.nodeSize>0){this.atBlockStart=false}};t.forEach(n);n(null,0,t.childCount);this.atBlockStart=false}renderList(t,e,i){if(this.closed&&this.closed.type==t.type)this.flushClose(3);else if(this.inTightList)this.flushClose(1);let r=typeof t.attrs.tight!="undefined"?t.attrs.tight:this.options.tightLists;let n=this.inTightList;this.inTightList=r;t.forEach(((n,s,l)=>{if(l&&r)this.flushClose(1);this.wrapBlock(e,i(l),t,(()=>this.render(n,t,l)))}));this.inTightList=n}esc(t,e=false){t=t.replace(/[`*\\~\[\]_]/g,((e,i)=>e=="_"&&i>0&&i+1<t.length&&t[i-1].match(/\w/)&&t[i+1].match(/\w/)?e:"\\"+e));if(e)t=t.replace(/^(\+[ ]|[\-*>])/,"\\$&").replace(/^(\s*)(#{1,6})(\s|$)/,"$1\\$2$3").replace(/^(\s*\d+)\.\s/,"$1\\. ");if(this.options.escapeExtraCharacters)t=t.replace(this.options.escapeExtraCharacters,"\\$&");return t}quote(t){let e=t.indexOf('"')==-1?'""':t.indexOf("'")==-1?"''":"()";return e[0]+t+e[1]}repeat(t,e){let i="";for(let r=0;r<e;r++)i+=t;return i}markString(t,e,i,r){let n=this.marks[t.type.name];let s=e?n.open:n.close;return typeof s=="string"?s:s(this,t,i,r)}getEnclosingWhitespace(t){return{leading:(t.match(/^(\s+)/)||[undefined])[0],trailing:(t.match(/(\s+)$/)||[undefined])[0]}}}const Pw=new Rw(Object.assign({},Nw.nodes),Object.assign(Object.assign({},Nw.marks),{strikethrough:{open:"~~",close:"~~",mixable:true,expelEnclosingWhitespace:true}}));class Jw{constructor(){this.parseAsHTML=t=>M(t);this.serialize=t=>{if(t.dom.textContent===""){return""}else{return Pw.serialize(t.state.doc)}}}}class Lw{constructor(){this.parseAsHTML=t=>new Promise((e=>{e(t)}));this.serialize=t=>{if(t.dom.textContent===""){return""}else{return t.dom.innerHTML}}}}const Uw={parseDOM:[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration=line-through"}],toDOM:()=>["s",0]};const Ww='@charset "UTF-8";:host{--mdc-theme-primary:var(\n --lime-primary-color,\n rgb(var(--color-teal-default))\n );--mdc-theme-secondary:var(\n --lime-secondary-color,\n rgb(var(--contrast-1100))\n );--mdc-theme-on-primary:var(\n --lime-on-primary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-secondary:var(\n --lime-on-secondary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-text-disabled-on-background:var(\n --lime-text-disabled-on-background-color,\n rgba(var(--contrast-1700), 0.38)\n );--mdc-theme-text-primary-on-background:var(\n --lime-text-primary-on-background-color,\n rgba(var(--contrast-1700), 0.87)\n );--mdc-theme-text-secondary-on-background:var(\n --lime-text-secondary-on-background-color,\n rgba(var(--contrast-1700), 0.54)\n );--mdc-theme-error:var(\n --lime-error-background-color,\n rgb(var(--color-red-dark))\n );--lime-error-text-color:rgb(var(--color-red-darker));--mdc-theme-surface:var(\n --lime-surface-background-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-surface:var(\n --lime-on-surface-color,\n rgb(var(--contrast-1500))\n )}:host(limel-prosemirror-adapter){display:flex;flex-direction:column}:host(limel-prosemirror-adapter) limel-action-bar{order:1}:host(limel-prosemirror-adapter) div#editor{order:2;height:100%}:host(limel-prosemirror-adapter) div[contenteditable=true]{height:100%}*{box-sizing:border-box}.ProseMirror-menubar-wrapper{display:grid;grid-template-rows:auto 1fr}.ProseMirror-textblock-dropdown{min-width:3em}.ProseMirror-tooltip .ProseMirror-menu{width:-webkit-fit-content;width:fit-content;white-space:pre}limel-action-bar{--action-bar-border-radius:0.25rem;position:sticky;z-index:1;top:1px;background-color:rgba(var(--contrast-200), 0.5);backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);opacity:0.6;transition:opacity 0.5s ease;margin:0 1px;width:calc(100% - 2px)}:host(limel-prosemirror-adapter:focus-within) limel-action-bar,:host(limel-prosemirror-adapter:hover) limel-action-bar{opacity:1}.ProseMirror{position:relative;word-wrap:break-word;white-space:pre-wrap;white-space:break-spaces;-webkit-font-variant-ligatures:none;font-variant-ligatures:none;font-feature-settings:"liga" 0;padding:var(--limel-text-editor-padding)}.ProseMirror [draggable][contenteditable=false]{user-select:text}.ProseMirror:focus-visible{outline:none}.ProseMirror-hideselection{caret-color:transparent}.ProseMirror-hideselection *::selection{background:transparent}.ProseMirror-hideselection *::-moz-selection{background:transparent}.ProseMirror-selectednode{outline:0.125rem solid rgb(var(--color-sky-light))}li.ProseMirror-selectednode{outline:none}li.ProseMirror-selectednode:after{content:"";position:absolute;left:-2rem;right:-0.125rem;top:-0.125rem;bottom:-0.125rem;border:0.125rem solid rgb(var(--color-sky-light));pointer-events:none}img.ProseMirror-separator{display:inline !important;border:none !important;margin:0 !important}blockquote{position:relative;font-weight:100;font-size:0.875rem;max-width:100%;line-height:1.4;margin:0;padding:0.5rem 1.25rem;border-radius:0.05rem 0.75rem;background-color:rgb(var(--contrast-300))}blockquote:before,blockquote:after{position:absolute;font-size:2.75rem;opacity:0.4}blockquote:before{content:"“";left:0;top:-0.75rem}blockquote:after{content:"”";right:0;bottom:-2rem}:host(limel-markdown.truncate-paragraphs) p{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}p,li{font-size:0.875rem;word-break:break-word;hyphens:auto;-webkit-hyphens:auto}a{word-break:break-all}p{margin-top:0;margin-bottom:0.5rem}p:only-child{margin-bottom:0}a{transition:color 0.2s ease;color:var(--markdown-hyperlink-color, rgb(var(--color-blue-dark)));text-decoration:none}a:hover{color:var(--markdown-hyperlink-color--hovered, rgb(var(--color-blue-default)))}hr{margin:1.75rem 0 2rem 0;border-width:0;border-top:1px solid rgb(var(--contrast-500))}dl{display:grid;grid-template-columns:1fr 2fr;grid-template-rows:1fr;margin-bottom:2rem;border:1px solid rgb(var(--contrast-400));border-radius:0.375rem;background-color:rgb(var(--contrast-200))}dl dt,dl dd{padding:0.375rem 0.5rem;font-size:0.875rem;margin:0}dl dt:nth-of-type(even),dl dd:nth-of-type(even){background-color:rgb(var(--contrast-300))}dl dt:first-child{border-top-left-radius:0.375rem}dl dt:last-child{border-bottom-left-radius:0.375rem}dl dd:first-child{border-top-right-radius:0.375rem}dl dd:last-child{border-bottom-right-radius:0.375rem}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.125rem}h4{font-size:1rem}h5{font-size:0.875rem}h6{font-size:0.75rem}h1,h2{margin-top:0.5rem;margin-bottom:0.5rem;letter-spacing:-0.03125rem;font-weight:500}h3,h4{margin-top:0.75rem;margin-bottom:0.25rem;font-weight:600}h5,h6{margin-top:0.5rem;margin-bottom:0.125rem;font-weight:600}h1,h2,h3,h4,h5,h6{word-break:break-word;hyphens:auto;-webkit-hyphens:auto}:not([contenteditable=true]) h1,:not([contenteditable=true]) h2,:not([contenteditable=true]) h3,:not([contenteditable=true]) h4,:not([contenteditable=true]) h5,:not([contenteditable=true]) h6{text-wrap:balance}[contenteditable=true] h1,[contenteditable=true] h2,[contenteditable=true] h3,[contenteditable=true] h4,[contenteditable=true] h5,[contenteditable=true] h6{text-wrap:initial}ul{list-style:none}ul li{position:relative;margin-left:0.75rem}ul li:before{content:"";position:absolute;left:-0.5rem;top:0.5rem;width:0.25rem;height:0.25rem;border-radius:50%;background-color:rgb(var(--contrast-700));display:block}ol{margin-top:0.25rem;padding-left:1rem}ul{margin-top:0.25rem;padding-left:0}ul ul,ul ol,ol ol,ol ul{margin-left:0}li{margin-bottom:0.25rem}code{font-family:ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;font-size:0.8125rem;letter-spacing:-0.0125rem;color:rgb(var(--contrast-1300));-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;display:inline-block;border-radius:0.25rem;padding:0.03125rem 0.25rem;background-color:rgb(var(--contrast-600))}pre>code{display:block;margin:0.5rem 0;padding:0.5rem 0.75rem;overflow:auto;white-space:pre-wrap}:host(limel-markdown:not(.no-table-styles)) table{table-layout:auto;min-width:100%;border-collapse:collapse;border-spacing:0;background:transparent;margin:0.75rem 0;border:1px solid rgb(var(--contrast-400))}:host(limel-markdown:not(.no-table-styles)) th,:host(limel-markdown:not(.no-table-styles)) td{text-align:left;vertical-align:top;transition:background-color 0.2s ease;font-size:0.875rem}:host(limel-markdown:not(.no-table-styles)) td{padding:0.5rem 0.375rem 0.75rem 0.375rem}:host(limel-markdown:not(.no-table-styles)) tr th{background-color:rgb(var(--contrast-400));padding:0.25rem 0.375rem;font-weight:normal}:host(limel-markdown:not(.no-table-styles)) tr th:only-child{text-align:center}:host(limel-markdown:not(.no-table-styles)) tbody tr:nth-child(odd) td{background-color:rgb(var(--contrast-200))}:host(limel-markdown:not(.no-table-styles)) tbody tr:hover td{background-color:rgb(var(--contrast-300))}';const Hw=class{constructor(i){t(this,i);this.change=e(this,"change",7);this.suppressChangeEvent=false;this.getActionBarItems=()=>{this.actionBarItems=wc().map(this.getTranslatedItem)};this.getTranslatedItem=t=>{const e=fe(t);if(C(t)){const i=gc[t.value];if(i){e.text=A.get(i,this.language)}}return e};this.handleTransaction=t=>{const e=this.view.state.apply(t);this.view.updateState(e);if(this.suppressChangeEvent){return}if(t.getMeta("pointer")){return}this.change.emit(this.contentConverter.serialize(this.view,this.schema))};this.handleActionBarItem=t=>{t.preventDefault();const{value:e}=t.detail;try{const t=this.menuCommandFactory.getCommand(e);this.dispatchMenuCommand(t)}catch(t){throw new Error(`Error executing command: ${t}`)}};this.actionBarPluginKey=new an("actionBarPlugin");this.updateActionBarItems=(t,e)=>{const i=fe(t);i.forEach((t=>{if(C(t)){const i=this.menuCommandFactory.getCommand(t.value);if(i&&i.active){t.selected=i.active(e.state)}else{t.selected=false}}}));this.actionBarItems=i};this.createMenuStateTrackingPlugin=t=>new on({key:this.actionBarPluginKey,view:()=>({update:e=>{this.updateActionBarItems(t,e)}})});this.contentType="markdown";this.value=undefined;this.language=undefined;this.view=undefined;this.actionBarItems=[]}watchValue(t){if(!this.view||t===this.contentConverter.serialize(this.view,this.schema)){return}this.updateView(t)}componentWillLoad(){this.getActionBarItems();this.setupContentConverter()}componentDidLoad(){setTimeout((()=>{this.initializeTextEditor()}),0)}render(){return[i("div",{id:"editor"}),i("limel-action-bar",{accessibleLabel:"Toolbar",actions:this.actionBarItems,onItemSelected:this.handleActionBarItem})]}disconnectedCallback(){this.view.destroy()}setupContentConverter(){if(this.contentType==="markdown"){this.contentConverter=new Jw}else if(this.contentType==="html"){this.contentConverter=new Lw}else{throw new Error(`Unsupported content type: ${this.contentType}. Only 'markdown' and 'html' are supported.`)}}async initializeTextEditor(){this.schema=this.initializeSchema();const t=await this.parseInitialContent();this.menuCommandFactory=new ac(this.schema);this.view=new bo(this.host.shadowRoot.querySelector("#editor"),{state:this.createEditorState(t),dispatchTransaction:this.handleTransaction});if(this.value){this.updateView(this.value)}}initializeSchema(){return new ui({nodes:Uo(Ro.spec.nodes,"paragraph block*","block"),marks:Ro.spec.marks.append({strikethrough:Uw})})}async parseInitialContent(){const t=document.createElement("div");if(this.value){t.innerHTML=await this.contentConverter.parseAsHTML(this.value,this.schema)}else{t.innerHTML="<p></p>"}return fi.fromSchema(this.schema).parse(t)}createEditorState(t){return ln.create({doc:t,plugins:[...Ga({schema:this.schema,menuBar:false}),hf(this.menuCommandFactory.buildKeymap()),this.createMenuStateTrackingPlugin(this.actionBarItems)]})}async updateView(t){this.suppressChangeEvent=true;const e=await this.contentConverter.parseAsHTML(t,this.schema);const i=fi.fromSchema(this.view.state.schema);const r=new window.DOMParser;const n=r.parseFromString(e,"text/html");const s=i.parse(n.body);const l=this.view.state.tr;l.replaceWith(0,l.doc.content.size,s.content);this.view.dispatch(l);this.suppressChangeEvent=false}dispatchMenuCommand(t){const{state:e}=this.view;const i=e.selection;let r=e.tr;if(!i.empty){r.setSelection(i)}t(e,(t=>{r=t}));this.view.dispatch(r);this.setFocus()}setFocus(){var t;(t=this.view)===null||t===void 0?void 0:t.focus()}get host(){return r(this)}static get watchers(){return{value:["watchValue"]}}};Hw.style=Ww;export{Hw as limel_prosemirror_adapter};
2
- //# sourceMappingURL=p-a0fc1875.entry.js.map