@limetech/lime-elements 37.55.6 → 37.55.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/cjs/lime-elements.cjs.js +1 -1
- package/dist/cjs/limel-dialog.cjs.entry.js +51 -931
- package/dist/cjs/limel-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-form.cjs.entry.js +2498 -2498
- package/dist/cjs/limel-form.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-slider.cjs.entry.js +86 -2
- package/dist/cjs/limel-slider.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/dialog/dialog.css +79 -679
- package/dist/collection/components/dialog/dialog.js +58 -62
- package/dist/collection/components/dialog/dialog.js.map +1 -1
- package/dist/esm/{_arrayIncludesWith-8fac90b7.js → _arrayIncludesWith-37fb8c3e.js} +3 -3
- package/dist/esm/{_arrayIncludesWith-8fac90b7.js.map → _arrayIncludesWith-37fb8c3e.js.map} +1 -1
- package/dist/esm/{_baseForOwn-6eb68438.js → _baseForOwn-fff53ded.js} +2 -2
- package/dist/esm/{_baseForOwn-6eb68438.js.map → _baseForOwn-fff53ded.js.map} +1 -1
- package/dist/esm/{_baseIsEqual-f751b77f.js → _baseIsEqual-f3eeaadf.js} +3 -3
- package/dist/esm/{_baseIsEqual-f751b77f.js.map → _baseIsEqual-f3eeaadf.js.map} +1 -1
- package/dist/esm/{_baseIteratee-77de5982.js → _baseIteratee-b8e533f5.js} +3 -3
- package/dist/esm/{_baseIteratee-77de5982.js.map → _baseIteratee-b8e533f5.js.map} +1 -1
- package/dist/esm/{_getAllKeysIn-f5fc1fe7.js → _getAllKeysIn-4936435d.js} +3 -3
- package/dist/esm/{_getAllKeysIn-f5fc1fe7.js.map → _getAllKeysIn-4936435d.js.map} +1 -1
- package/dist/esm/{isArrayLike-385e0f31.js → isArrayLike-dd37ba9a.js} +2 -2
- package/dist/esm/{isArrayLike-385e0f31.js.map → isArrayLike-dd37ba9a.js.map} +1 -1
- package/dist/esm/{isEmpty-3b1e5881.js → isEmpty-d700c746.js} +3 -3
- package/dist/esm/{isEmpty-3b1e5881.js.map → isEmpty-d700c746.js.map} +1 -1
- package/dist/esm/{isEqual-90c6e6fc.js → isEqual-883988f1.js} +2 -2
- package/dist/esm/{isEqual-90c6e6fc.js.map → isEqual-883988f1.js.map} +1 -1
- package/dist/esm/lime-elements.js +1 -1
- package/dist/esm/limel-chip_2.entry.js +4 -4
- package/dist/esm/limel-dialog.entry.js +51 -931
- package/dist/esm/limel-dialog.entry.js.map +1 -1
- package/dist/esm/limel-file-dropzone_2.entry.js +4 -4
- package/dist/esm/limel-flatpickr-adapter.entry.js +1 -1
- package/dist/esm/limel-form.entry.js +2507 -2507
- package/dist/esm/limel-form.entry.js.map +1 -1
- package/dist/esm/limel-prosemirror-adapter.entry.js +4 -4
- package/dist/esm/limel-slider.entry.js +85 -1
- package/dist/esm/limel-slider.entry.js.map +1 -1
- package/dist/esm/limel-tab-bar.entry.js +4 -4
- package/dist/esm/limel-table.entry.js +6 -6
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{pickBy-7b1558ef.js → pickBy-923628c8.js} +4 -4
- package/dist/esm/{pickBy-7b1558ef.js.map → pickBy-923628c8.js.map} +1 -1
- package/dist/lime-elements/lime-elements.esm.js +1 -1
- package/dist/lime-elements/lime-elements.esm.js.map +1 -1
- package/dist/lime-elements/{p-efe6d8b9.entry.js → p-09792bbf.entry.js} +2 -2
- package/dist/lime-elements/{p-f1d08f33.entry.js → p-33733088.entry.js} +2 -2
- package/dist/lime-elements/p-3d88b583.js +2 -0
- package/dist/lime-elements/p-57906760.js +2 -0
- package/dist/lime-elements/{p-a28fa78d.js.map → p-57906760.js.map} +1 -1
- package/dist/lime-elements/p-69b694b5.js +2 -0
- package/dist/lime-elements/{p-038bd215.js.map → p-69b694b5.js.map} +1 -1
- package/dist/lime-elements/p-6a3d0141.js +2 -0
- package/dist/lime-elements/p-7377db39.js +2 -0
- package/dist/lime-elements/{p-2b06f854.entry.js → p-75b4a7aa.entry.js} +2 -2
- package/dist/lime-elements/p-785755e9.js +2 -0
- package/dist/lime-elements/{p-0ec8eec7.js.map → p-785755e9.js.map} +1 -1
- package/dist/lime-elements/{p-9acf7b5d.js → p-7f43b0c4.js} +2 -2
- package/dist/lime-elements/{p-347c1107.entry.js → p-82af91ed.entry.js} +2 -2
- package/dist/lime-elements/p-836774a8.js +2 -0
- package/dist/lime-elements/p-9b51660b.entry.js +21 -0
- package/dist/lime-elements/p-9b51660b.entry.js.map +1 -0
- package/dist/lime-elements/p-b11ab47e.entry.js +2 -0
- package/dist/lime-elements/p-b11ab47e.entry.js.map +1 -0
- package/dist/lime-elements/{p-9375145d.entry.js → p-d505de95.entry.js} +27 -5
- package/dist/lime-elements/p-d505de95.entry.js.map +1 -0
- package/dist/lime-elements/{p-178bbeb4.entry.js → p-e53fae23.entry.js} +2 -2
- package/dist/lime-elements/{p-1b9d3851.js → p-f069e11f.js} +2 -2
- package/dist/lime-elements/{p-36b385b2.entry.js → p-f629e2bf.entry.js} +2 -2
- package/dist/types/components/dialog/dialog.d.ts +5 -8
- package/package.json +1 -1
- package/dist/cjs/animationframe-e4c1798e.js +0 -90
- package/dist/cjs/animationframe-e4c1798e.js.map +0 -1
- package/dist/esm/animationframe-b52af02d.js +0 -88
- package/dist/esm/animationframe-b52af02d.js.map +0 -1
- package/dist/lime-elements/p-038bd215.js +0 -2
- package/dist/lime-elements/p-0ec8eec7.js +0 -2
- package/dist/lime-elements/p-22704cbc.js +0 -2
- package/dist/lime-elements/p-48105d44.js +0 -24
- package/dist/lime-elements/p-48105d44.js.map +0 -1
- package/dist/lime-elements/p-48ef6a20.js +0 -2
- package/dist/lime-elements/p-50303eb1.entry.js +0 -21
- package/dist/lime-elements/p-50303eb1.entry.js.map +0 -1
- package/dist/lime-elements/p-9375145d.entry.js.map +0 -1
- package/dist/lime-elements/p-a28fa78d.js +0 -2
- package/dist/lime-elements/p-adf6cbe8.entry.js +0 -112
- package/dist/lime-elements/p-adf6cbe8.entry.js.map +0 -1
- package/dist/lime-elements/p-d0bdb2e3.js +0 -2
- package/dist/lime-elements/p-d4029e33.js +0 -2
- /package/dist/lime-elements/{p-efe6d8b9.entry.js.map → p-09792bbf.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-f1d08f33.entry.js.map → p-33733088.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-48ef6a20.js.map → p-3d88b583.js.map} +0 -0
- /package/dist/lime-elements/{p-d4029e33.js.map → p-6a3d0141.js.map} +0 -0
- /package/dist/lime-elements/{p-d0bdb2e3.js.map → p-7377db39.js.map} +0 -0
- /package/dist/lime-elements/{p-2b06f854.entry.js.map → p-75b4a7aa.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-9acf7b5d.js.map → p-7f43b0c4.js.map} +0 -0
- /package/dist/lime-elements/{p-347c1107.entry.js.map → p-82af91ed.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-22704cbc.js.map → p-836774a8.js.map} +0 -0
- /package/dist/lime-elements/{p-178bbeb4.entry.js.map → p-e53fae23.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-1b9d3851.js.map → p-f069e11f.js.map} +0 -0
- /package/dist/lime-elements/{p-36b385b2.entry.js.map → p-f629e2bf.entry.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,g as r}from"./p-443111b3.js";import{k as n,q as s,U as l,f as o,g as u,t as f,u as h,i as a,j as c,v as d}from"./p-1b9d3851.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-22704cbc.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-1c8ce194.js";import{t as A}from"./p-1b6c1122.js";import{c as C}from"./p-3ccdc4a3.js";import{i as S}from"./p-91741e79.js";import{i as O}from"./p-d0bdb2e3.js";import"./p-eda23c05.js";import"./p-4c3358cb.js";import"./p-9acf7b5d.js";import"./p-5fdb83c9.js";import"./p-eab67c09.js";var $=Object.create;var _=function(){function t(){}return function(e){if(!D(e)){return{}}if($){return $(e)}t.prototype=e;var i=new t;t.prototype=undefined;return i}}();function B(t,e){var i=-1,r=t.length;e||(e=Array(r));while(++i<r){e[i]=t[i]}return e}function j(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 q(t,e,i,r){var n=!i;i||(i={});var s=-1,l=e.length;while(++s<l){var o=e[s];var u=r?r(i[o],t[o],o,i,t):undefined;if(u===undefined){u=t[o]}if(n){p(i,o,u)}else{m(i,o,u)}}return i}function R(t,e){return t&&q(e,n(e),t)}function N(t,e){return t&&q(e,w(e),t)}var z=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var T=z&&typeof module=="object"&&module&&!module.nodeType&&module;var I=T&&T.exports===z;var P=I?v.Buffer:undefined,J=P?P.allocUnsafe:undefined;function L(t,e){if(e){return t.slice()}var i=t.length,r=J?J(i):new t.constructor(i);t.copy(r);return r}function U(t,e){return q(t,s(t),e)}function W(t,e){return q(t,g(t),e)}var H=Object.prototype;var Z=H.hasOwnProperty;function K(t){var e=t.length,i=new t.constructor(e);if(e&&typeof t[0]=="string"&&Z.call(t,"index")){i.index=t.index;i.input=t.input}return i}function V(t){var e=new t.constructor(t.byteLength);new l(e).set(new l(t));return e}function G(t,e){var i=e?V(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.byteLength)}var X=/\w*$/;function Y(t){var e=new t.constructor(t.source,X.exec(t));e.lastIndex=t.lastIndex;return e}var Q=y?y.prototype:undefined,tt=Q?Q.valueOf:undefined;function et(t){return tt?Object(tt.call(t)):{}}function it(t,e){var i=e?V(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.length)}var rt="[object Boolean]",nt="[object Date]",st="[object Map]",lt="[object Number]",ot="[object RegExp]",ut="[object Set]",ft="[object String]",ht="[object Symbol]";var at="[object ArrayBuffer]",ct="[object DataView]",dt="[object Float32Array]",pt="[object Float64Array]",mt="[object Int8Array]",wt="[object Int16Array]",gt="[object Int32Array]",bt="[object Uint8Array]",kt="[object Uint8ClampedArray]",Dt="[object Uint16Array]",vt="[object Uint32Array]";function yt(t,e,i){var r=t.constructor;switch(e){case at:return V(t);case rt:case nt:return new r(+t);case ct:return G(t,i);case dt:case pt:case mt:case wt:case gt:case bt:case kt:case Dt:case vt:return it(t,i);case st:return new r;case lt:case ft:return new r(t);case ot:return Y(t);case ut:return new r;case ht:return et(t)}}function Ft(t){return typeof t.constructor=="function"&&!o(t)?_(b(t)):{}}var Et="[object Map]";function xt(t){return E(t)&&u(t)==Et}var Mt=h&&h.isMap;var At=Mt?f(Mt):xt;var Ct="[object Set]";function St(t){return E(t)&&u(t)==Ct}var Ot=h&&h.isSet;var $t=Ot?f(Ot):St;var _t=1,Bt=2,jt=4;var qt="[object Arguments]",Rt="[object Array]",Nt="[object Boolean]",zt="[object Date]",Tt="[object Error]",It="[object Function]",Pt="[object GeneratorFunction]",Jt="[object Map]",Lt="[object Number]",Ut="[object Object]",Wt="[object RegExp]",Ht="[object Set]",Zt="[object String]",Kt="[object Symbol]",Vt="[object WeakMap]";var Gt="[object ArrayBuffer]",Xt="[object DataView]",Yt="[object Float32Array]",Qt="[object Float64Array]",te="[object Int8Array]",ee="[object Int16Array]",ie="[object Int32Array]",re="[object Uint8Array]",ne="[object Uint8ClampedArray]",se="[object Uint16Array]",le="[object Uint32Array]";var oe={};oe[qt]=oe[Rt]=oe[Gt]=oe[Xt]=oe[Nt]=oe[zt]=oe[Yt]=oe[Qt]=oe[te]=oe[ee]=oe[ie]=oe[Jt]=oe[Lt]=oe[Ut]=oe[Wt]=oe[Ht]=oe[Zt]=oe[Kt]=oe[re]=oe[ne]=oe[se]=oe[le]=true;oe[Tt]=oe[It]=oe[Vt]=false;function ue(t,e,i,r,s,l){var o,f=e&_t,h=e&Bt,p=e&jt;if(i){o=s?i(t,r,s,l):i(t)}if(o!==undefined){return o}if(!D(t)){return t}var g=F(t);if(g){o=K(t);if(!f){return B(t,o)}}else{var b=u(t),v=b==It||b==Pt;if(a(t)){return L(t,f)}if(b==Ut||b==qt||v&&!s){o=h||v?{}:Ft(t);if(!f){return h?W(t,N(o,t)):U(t,R(o,t))}}else{if(!oe[b]){return s?t:{}}o=yt(t,b,f)}}l||(l=new c);var y=l.get(t);if(y){return y}l.set(t,o);if($t(t)){t.forEach((function(r){o.add(ue(r,e,i,r,t,l))}))}else if(At(t)){t.forEach((function(r,n){o.set(n,ue(r,e,i,n,t,l))}))}var E=p?h?k:d:h?w:n;var x=g?undefined:E(t);j(x||t,(function(r,n){if(x){n=r;r=t[n]}m(o,n,ue(r,e,i,n,t,l))}));return o}var fe=1,he=4;function ae(t){return ue(t,fe|he)}function ce(t){this.content=t}ce.prototype={constructor:ce,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 ce(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 ce(i)},addToStart:function(t,e){return new ce([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var i=this.remove(t).content.slice();i.push(t,e);return new ce(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 ce(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=ce.from(t);if(!t.size)return this;return new ce(t.content.concat(this.subtract(t).content))},append:function(t){t=ce.from(t);if(!t.size)return this;return new ce(this.subtract(t).content.concat(t.content))},subtract:function(t){var e=this;t=ce.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}};ce.from=function(t){if(t instanceof ce)return t;var e=[];if(t)for(var i in t)e.push(i,t[i]);return new ce(e)};function de(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=de(n.content,s.content,i+1);if(t!=null)return t}i+=n.nodeSize}}function pe(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),o=e.child(--s),u=l.nodeSize;if(l==o){i-=u;r-=u;continue}if(!l.sameMarkup(o))return{a:i,b:r};if(l.isText&&l.text!=o.text){let t=0,e=Math.min(l.text.length,o.text.length);while(t<e&&l.text[l.text.length-t-1]==o.text[o.text.length-t-1]){t++;i--;r--}return{a:i,b:r}}if(l.content.size||o.content.size){let t=pe(l.content,o.content,i-1,r-1);if(t)return t}i-=u;r-=u}}class me{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 o=this.content[s],u=l+o.nodeSize;if(u>t&&i(o,r+l,n||null,s)!==false&&o.content.size){let n=l+1;o.nodesBetween(Math.max(0,t-n),Math.min(o.content.size,e-n),i,r+n)}l=u}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,i,r){let n="",s=true;this.nodesBetween(t,e,((l,o)=>{let u=l.isText?l.text.slice(Math.max(t,o)-o,e-o):!l.isLeaf?"":r?typeof r==="function"?r(l):r:l.type.spec.leafText?l.type.spec.leafText(l):"";if(l.isBlock&&(l.isLeaf&&u||l.isTextblock)&&i){if(s)s=false;else n+=i}n+=u}),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 me(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],o=s+l.nodeSize;if(o>t){if(s<t||o>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=o}return new me(i,r)}cutByIndex(t,e){if(t==e)return me.empty;if(t==0&&e==this.content.length)return this;return new me(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 me(r,n)}addToStart(t){return new me([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new me(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 de(this,t,e)}findDiffEnd(t,e=this.size,i=t.size){return pe(this,t,e,i)}findIndex(t,e=-1){if(t==0)return ge(0,t);if(t==this.size)return ge(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 ge(i+1,s);return ge(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 me.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new me(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return me.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 me(e||t,i)}static from(t){if(!t)return me.empty;if(t instanceof me)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new me([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}me.empty=new me([],0);const we={index:0,offset:0};function ge(t,e){we.index=t;we.offset=e;return we}function be(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(!be(t[i],e[i]))return false}else{for(let i in t)if(!(i in e)||!be(t[i],e[i]))return false;for(let i in e)if(!(i in t))return false}return true}class ke{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&&be(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 ke.none;if(t instanceof ke)return[t];let e=t.slice();e.sort(((t,e)=>t.type.rank-e.type.rank));return e}}ke.none=[];class De extends Error{}class ve{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=Fe(this.content,t+this.openStart,e);return i&&new ve(i,this.openStart,this.openEnd)}removeBetween(t,e){return new ve(ye(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 ve.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 ve(me.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 ve(t,i,r)}}ve.empty=new ve(me.empty,0,0);function ye(t,e,i){let{index:r,offset:n}=t.findIndex(e),s=t.maybeChild(r);let{index:l,offset:o}=t.findIndex(i);if(n==e||s.isText){if(o!=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(ye(s.content,e-n-1,i-n-1)))}function Fe(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 o=Fe(l.content,e-s-1,i);return o&&t.replaceChild(n,l.copy(o))}function Ee(t,e,i){if(i.openStart>t.depth)throw new De("Inserted content deeper than insertion position");if(t.depth-i.openStart!=e.depth-i.openEnd)throw new De("Inconsistent open depths");return xe(t,e,i,0)}function xe(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=xe(t,e,i,r+1);return s.copy(s.content.replaceChild(n,l))}else if(!i.content.size){return Oe(s,_e(t,e,r))}else if(!i.openStart&&!i.openEnd&&t.depth==r&&e.depth==r){let r=t.parent,n=r.content;return Oe(r,n.cut(0,t.parentOffset).append(i.content).append(n.cut(e.parentOffset)))}else{let{start:n,end:l}=Be(i,t);return Oe(s,$e(t,n,l,e,r))}}function Me(t,e){if(!e.type.compatibleContent(t.type))throw new De("Cannot join "+e.type.name+" onto "+t.type.name)}function Ae(t,e,i){let r=t.node(i);Me(r,e.node(i));return r}function Ce(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 Se(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){Ce(t.nodeAfter,r);s++}}for(let t=s;t<l;t++)Ce(n.child(t),r);if(e&&e.depth==i&&e.textOffset)Ce(e.nodeBefore,r)}function Oe(t,e){t.type.checkContent(e);return t.copy(e)}function $e(t,e,i,r,n){let s=t.depth>n&&Ae(t,e,n+1);let l=r.depth>n&&Ae(i,r,n+1);let o=[];Se(null,t,n,o);if(s&&l&&e.index(n)==i.index(n)){Me(s,l);Ce(Oe(s,$e(t,e,i,r,n+1)),o)}else{if(s)Ce(Oe(s,_e(t,e,n+1)),o);Se(e,i,n,o);if(l)Ce(Oe(l,_e(i,r,n+1)),o)}Se(r,null,n,o);return new me(o)}function _e(t,e,i){let r=[];Se(null,t,i,r);if(t.depth>i){let n=Ae(t,e,i+1);Ce(Oe(n,_e(t,e,i+1)),r)}Se(e,null,i,r);return new me(r)}function Be(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(me.from(n));return{start:n.resolveNoCache(t.openStart+i),end:n.resolveNoCache(n.content.size-t.openEnd-i)}}class je{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 ke.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 ze(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 je(e,i,n)}static resolveCached(t,e){for(let i=0;i<qe.length;i++){let r=qe[i];if(r.pos==e&&r.doc==t)return r}let i=qe[Re]=je.resolve(t,e);Re=(Re+1)%Ne;return i}}let qe=[],Re=0,Ne=12;class ze{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 Te=Object.create(null);class Ie{constructor(t,e,i,r=ke.none){this.type=t;this.attrs=e;this.marks=r;this.content=i||me.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&&be(this.attrs,e||t.defaultAttrs||Te)&&ke.sameSet(this.marks,i||ke.none)}copy(t=null){if(t==this.content)return this;return new Ie(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new Ie(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 ve.empty;let r=this.resolve(t),n=this.resolve(e);let s=i?0:r.sharedDepth(e);let l=r.start(s),o=r.node(s);let u=o.content.cut(r.pos-l,n.pos-l);return new ve(u,r.depth-s,n.depth-s)}replace(t,e,i){return Ee(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 je.resolveCached(this,t)}resolveNoCache(t){return je.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 Je(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=me.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=ke.none;for(let e=0;e<this.marks.length;e++)t=this.marks[e].addToSet(t);if(!ke.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=me.fromJSON(t,e.content);return t.nodeType(e.type).create(e.attrs,r,i)}}Ie.prototype.text=undefined;class Pe extends Ie{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 Je(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 Pe(this.type,this.attrs,this.text,t)}withText(t){if(t==this.text)return this;return new Pe(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 Je(t,e){for(let i=t.length-1;i>=0;i--)e=t[i].type.name+"("+e+")";return e}class Le{constructor(t){this.validEnd=t;this.next=[];this.wrapCache=[]}static parse(t,e){let i=new Ue(t,e);if(i.next==null)return Le.empty;let r=We(i);if(i.next)i.err("Unexpected trailing text");let n=ei(Ye(r));ii(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 o=s.matchFragment(t,i);if(o&&(!e||o.validEnd))return me.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")}}Le.empty=new Le(true);class Ue{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 We(t){let e=[];do{e.push(He(t))}while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function He(t){let e=[];do{e.push(Ze(t))}while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function Ze(t){let e=Xe(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=Ve(t,e);else break}return e}function Ke(t){if(/\D/.test(t.next))t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);t.pos++;return e}function Ve(t,e){let i=Ke(t),r=i;if(t.eat(",")){if(t.next!="}")r=Ke(t);else r=-1}if(!t.eat("}"))t.err("Unclosed braced range");return{type:"range",min:i,max:r,expr:e}}function Ge(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 Xe(t){if(t.eat("(")){let e=We(t);if(!t.eat(")"))t.err("Missing closing paren");return e}else if(!/\W/.test(t.next)){let e=Ge(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 Ye(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 Qe(t,e){return e-t}function ti(t,e){let i=[];r(e);return i.sort(Qe);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 ei(t){let e=Object.create(null);return i(ti(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];ti(t,i).forEach((t=>{if(!r)n.push([e,r=[]]);if(r.indexOf(t)==-1)r.push(t)}))}))}));let s=e[r.join(",")]=new Le(r.indexOf(t.length-1)>-1);for(let t=0;t<n.length;t++){let r=n[t][1].sort(Qe);s.next.push({type:n[t][0],next:e[r.join(",")]||i(r)})}return s}}function ii(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 ri(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 ni(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 si(t){let e=Object.create(null);if(t)for(let i in t)e[i]=new oi(t[i]);return e}class li{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=si(i.attrs);this.defaultAttrs=ri(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==Le.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 ni(this.attrs,t)}create(t=null,e,i){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new Ie(this,this.computeAttrs(t),me.from(e),ke.setFrom(i))}createChecked(t=null,e,i){e=me.from(e);this.checkContent(e);return new Ie(this,this.computeAttrs(t),e,ke.setFrom(i))}createAndFill(t=null,e,i){t=this.computeAttrs(t);e=me.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(me.empty,true);if(!n)return null;return new Ie(this,t,e.append(n),ke.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:ke.none}static compile(t,e){let i=Object.create(null);t.forEach(((t,r)=>i[t]=new li(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 oi{constructor(t){this.hasDefault=Object.prototype.hasOwnProperty.call(t,"default");this.default=t.default}get isRequired(){return!this.hasDefault}}class ui{constructor(t,e,i,r){this.name=t;this.rank=e;this.schema=i;this.spec=r;this.attrs=si(r.attrs);this.excluded=null;let n=ri(this.attrs);this.instance=n?new ke(this,n):null}create(t=null){if(!t&&this.instance)return this.instance;return new ke(this,ni(this.attrs,t))}static compile(t,e){let i=Object.create(null),r=0;t.forEach(((t,n)=>i[t]=new ui(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 fi{constructor(t){this.cached=Object.create(null);let e=this.spec={};for(let i in t)e[i]=t[i];e.nodes=ce.from(t.nodes),e.marks=ce.from(t.marks||{}),this.nodes=li.compile(this.spec.nodes,this);this.marks=ui.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]=Le.parse(r,this.nodes));e.inlineContent=e.contentMatch.inlineContent;e.markSet=n=="_"?null:n?hi(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==""?[]:hi(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 li))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 Pe(i,i.defaultAttrs,t,ke.setFrom(e))}mark(t,e){if(typeof t=="string")t=this.marks[t];return t.create(e)}nodeFromJSON(t){return Ie.fromJSON(this,t)}markFromJSON(t){return ke.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function hi(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 ai{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 Di(this,e,false);i.addAll(t,e.from,e.to);return i.finish()}parseSlice(t,e={}){let i=new Di(this,e,true);i.addAll(t,e.from,e.to);return ve.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(yi(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=Ei(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=Ei(t));if(!(t.node||t.ignore||t.mark))t.node=e}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new ai(t,ai.schemaRules(t)))}}const ci={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 di={head:true,noscript:true,object:true,script:true,style:true,title:true};const pi={ol:true,ul:true};const mi=1,wi=2,gi=4;function bi(t,e,i){if(e!=null)return(e?mi:0)|(e==="full"?wi:0);return t&&t.whitespace=="pre"?mi|wi:i&~gi}class ki{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=ke.none;this.stashMarks=[];this.match=s||(l&gi?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(me.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&mi)){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=me.from(this.content);if(!t&&this.match)e=e.append(this.match.fillBefore(me.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):xi(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&&!ci.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class Di{constructor(t,e,i){this.parser=t;this.options=e;this.isOpen=i;this.open=0;let r=e.topNode,n;let s=bi(null,e.preserveWhitespace,0)|(i?gi:0);if(r)n=new ki(r.type,r.attrs,ke.none,ke.none,true,e.topMatch||r.type.contentMatch,s);else if(i)n=new ki(null,null,ke.none,ke.none,true,null,s);else n=new ki(t.schema.topNodeType,null,ke.none,ke.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(Fi(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&wi||i.inlineContext(t)||/[^ \t\r\n\u000c]/.test(e)){if(!(i.options&mi)){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&wi)){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(pi.hasOwnProperty(i)&&this.parser.normalizeLists)vi(t);let n=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(r=this.parser.matchTag(t,this,e));if(n?n.ignore:di.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(ci.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=ke.none,i=ke.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=bi(t,r,n.options);if(n.options&gi&&n.content.length==0)s|=gi;this.nodes.push(new ki(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 o=e[t];if(o==""){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!=o&&t.groups.indexOf(o)==-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=Mi(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 vi(t){for(let e=t.firstChild,i=null;e;e=e.nextSibling){let t=e.nodeType==1?e.nodeName.toLowerCase():null;if(t&&pi.hasOwnProperty(t)&&i){i.appendChild(e);e=i}else if(t=="li"){i=e}else if(t){i=null}}}function yi(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function Fi(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 Ei(t){let e={};for(let i in t)e[i]=t[i];return e}function xi(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 Mi(t,e){for(let i=0;i<e.length;i++){if(t.eq(e[i]))return e[i]}}class Ai{constructor(t,e){this.nodes=t;this.marks=e}serializeFragment(t,e={},i){if(!i)i=Si(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}=Ai.renderSpec(Si(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&&Ai.renderSpec(Si(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 o=e[1],u=1;if(o&&typeof o=="object"&&o.nodeType==null&&!Array.isArray(o)){u=2;for(let t in o)if(o[t]!=null){let e=t.indexOf(" ");if(e>0)l.setAttributeNS(t.slice(0,e),t.slice(e+1),o[t]);else l.setAttribute(t,o[t])}}for(let r=u;r<e.length;r++){let n=e[r];if(n===0){if(r<e.length-1||r>u)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}=Ai.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 Ai(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=Ci(t.nodes);if(!e.text)e.text=t=>t.text;return e}static marksFromSchema(t){return Ci(t.marks)}}function Ci(t){let e={};for(let i in t){let r=t[i].spec.toDOM;if(r)e[i]=r}return e}function Si(t){return t.document||window.document}const Oi=65535;const $i=Math.pow(2,16);function _i(t,e){return t+e*$i}function Bi(t){return t&Oi}function ji(t){return(t-(t&Oi))/$i}const qi=1,Ri=2,Ni=4,zi=8;class Ti{constructor(t,e,i){this.pos=t;this.delInfo=e;this.recover=i}get deleted(){return(this.delInfo&zi)>0}get deletedBefore(){return(this.delInfo&(qi|Ni))>0}get deletedAfter(){return(this.delInfo&(Ri|Ni))>0}get deletedAcross(){return(this.delInfo&Ni)>0}}class Ii{constructor(t,e=false){this.ranges=t;this.inverted=e;if(!t.length&&Ii.empty)return Ii.empty}recover(t){let e=0,i=Bi(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+ji(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 o=this.ranges[l]-(this.inverted?r:0);if(o>t)break;let u=this.ranges[l+n],f=this.ranges[l+s],h=o+u;if(t<=h){let n=!u?e:t==o?-1:t==h?1:e;let s=o+r+(n<0?0:f);if(i)return s;let a=t==(e<0?o:h)?null:_i(l/3,t-o);let c=t==o?Ri:t==h?qi:Ni;if(e<0?t!=o:t!=h)c|=zi;return new Ti(s,c,a)}r+=f-u}return i?t+r:new Ti(t+r,0,null)}touches(t,e){let i=0,r=Bi(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 o=this.ranges[e+n],u=l+o;if(t<=u&&e==r*3)return true;i+=this.ranges[e+s]-o}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),o=s+(this.inverted?0:n);let u=this.ranges[r+e],f=this.ranges[r+i];t(l,l+u,o,o+f);n+=f-u}}invert(){return new Ii(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?Ii.empty:new Ii(t<0?[0,-t,0]:[0,0,t])}}Ii.empty=new Ii([]);class Pi{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 Pi(this.maps,this.mirror,t,e)}copy(){return new Pi(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 Pi;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 Ti(t,r,null)}}const Ji=Object.create(null);class Li{getMap(){return Ii.empty}merge(t){return null}static fromJSON(t,e){if(!e||!e.stepType)throw new RangeError("Invalid input for Step.fromJSON");let i=Ji[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 Ji)throw new RangeError("Duplicate use of step JSON ID "+t);Ji[t]=e;e.prototype.jsonID=t;return e}}class Ui{constructor(t,e){this.doc=t;this.failed=e}static ok(t){return new Ui(t,null)}static fail(t){return new Ui(null,t)}static fromReplace(t,e,i,r){try{return Ui.ok(t.replace(e,i,r))}catch(t){if(t instanceof De)return Ui.fail(t.message);throw t}}}function Wi(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(Wi(s.content,e,s));if(s.isInline)s=e(s,i,n);r.push(s)}return me.fromArray(r)}class Hi extends Li{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 ve(Wi(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 Ui.fromReplace(t,this.from,this.to,n)}invert(){return new Zi(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 Hi(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Hi&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Hi(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 Hi(e.from,e.to,t.markFromJSON(e.mark))}}Li.jsonID("addMark",Hi);class Zi extends Li{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 ve(Wi(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Ui.fromReplace(t,this.from,this.to,i)}invert(){return new Hi(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 Zi(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Zi&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Zi(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 Zi(e.from,e.to,t.markFromJSON(e.mark))}}Li.jsonID("removeMark",Zi);class Ki extends Li{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Ui.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Ui.fromReplace(t,this.pos,this.pos+1,new ve(me.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 Ki(this.pos,e.marks[i]);return new Ki(this.pos,this.mark)}}return new Vi(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Ki(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 Ki(e.pos,t.markFromJSON(e.mark))}}Li.jsonID("addNodeMark",Ki);class Vi extends Li{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Ui.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.removeFromSet(e.marks));return Ui.fromReplace(t,this.pos,this.pos+1,new ve(me.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 Ki(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Vi(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 Vi(e.pos,t.markFromJSON(e.mark))}}Li.jsonID("removeNodeMark",Vi);class Gi extends Li{constructor(t,e,i,r=false){super();this.from=t;this.to=e;this.slice=i;this.structure=r}apply(t){if(this.structure&&Yi(t,this.from,this.to))return Ui.fail("Structure replace would overwrite content");return Ui.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new Ii([this.from,this.to-this.from,this.slice.size])}invert(t){return new Gi(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 Gi(e.pos,Math.max(e.pos,i.pos),this.slice)}merge(t){if(!(t instanceof Gi)||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?ve.empty:new ve(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new Gi(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?ve.empty:new ve(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new Gi(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 Gi(e.from,e.to,ve.fromJSON(t,e.slice),!!e.structure)}}Li.jsonID("replace",Gi);class Xi extends Li{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&&(Yi(t,this.from,this.gapFrom)||Yi(t,this.gapTo,this.to)))return Ui.fail("Structure gap-replace would overwrite content");let e=t.slice(this.gapFrom,this.gapTo);if(e.openStart||e.openEnd)return Ui.fail("Gap is not a flat range");let i=this.slice.insertAt(this.insert,e.content);if(!i)return Ui.fail("Content does not fit in gap");return Ui.fromReplace(t,this.from,this.to,i)}getMap(){return new Ii([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 Xi(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 Xi(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 Xi(e.from,e.to,e.gapFrom,e.gapTo,ve.fromJSON(t,e.slice),e.insert,!!e.structure)}}Li.jsonID("replaceAround",Xi);function Yi(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 Qi(t,e,i,r){let n=[],s=[];let l,o;t.doc.nodesBetween(e,i,((t,u,f)=>{if(!t.isInline)return;let h=t.marks;if(!r.isInSet(h)&&f.type.allowsMarkType(r.type)){let f=Math.max(u,e),a=Math.min(u+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 Zi(f,a,h[t]))}}if(o&&o.to==f)o.to=a;else s.push(o=new Hi(f,a,r))}}));n.forEach((e=>t.step(e)));s.forEach((e=>t.step(e)))}function tr(t,e,i,r){let n=[],s=0;t.doc.nodesBetween(e,i,((t,l)=>{if(!t.isInline)return;s++;let o=null;if(r instanceof ui){let e=t.marks,i;while(i=r.isInSet(e)){(o||(o=[])).push(i);e=i.removeFromSet(e)}}else if(r){if(r.isInSet(t.marks))o=[r]}else{o=t.marks}if(o&&o.length){let r=Math.min(l+t.nodeSize,i);for(let t=0;t<o.length;t++){let i=o[t],u;for(let t=0;t<n.length;t++){let e=n[t];if(e.step==s-1&&i.eq(n[t].style))u=e}if(u){u.to=r;u.step=s}else{n.push({style:i,from:Math.max(l,e),to:r,step:s})}}}}));n.forEach((e=>t.step(new Zi(e.from,e.to,e.style))))}function er(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 o=n.child(e),u=l+o.nodeSize;let f=r.matchType(o.type);if(!f){s.push(new Gi(l,u,ve.empty))}else{r=f;for(let e=0;e<o.marks.length;e++)if(!i.allowsMarkType(o.marks[e].type))t.step(new Zi(l,u,o.marks[e]));if(o.isText&&!i.spec.code){let t,e=/\r?\n|\r/g,r;while(t=e.exec(o.text)){if(!r)r=new ve(me.from(i.schema.text(" ",i.allowedMarks(o.marks))),0,0);s.push(new Gi(l+t.index,l+t.index+t[0].length,r))}}}l=u}if(!r.validEnd){let e=r.fillBefore(me.empty,true);t.replace(l,l,new ve(e,0,0))}for(let e=s.length-1;e>=0;e--)t.step(s[e])}function ir(t,e,i){return(e==0||t.canReplace(e,t.childCount))&&(i==t.childCount||t.canReplace(0,i))}function rr(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||!ir(r,n,s))break}return null}function nr(t,e,i){let{$from:r,$to:n,depth:s}=e;let l=r.before(s+1),o=n.after(s+1);let u=l,f=o;let h=me.empty,a=0;for(let t=s,e=false;t>i;t--)if(e||r.index(t)>0){e=true;h=me.from(r.node(t).copy(h));a++}else{u--}let c=me.empty,d=0;for(let t=s,e=false;t>i;t--)if(e||n.after(t+1)<n.end(t)){e=true;c=me.from(n.node(t).copy(c));d++}else{f++}t.step(new Xi(u,f,l,o,new ve(h.append(c),a,d),h.size-a,true))}function sr(t,e,i=null,r=t){let n=or(t,e);let s=n&&ur(r,e);if(!s)return null;return n.map(lr).concat({type:e,attrs:i}).concat(s.map(lr))}function lr(t){return{type:t,attrs:null}}function or(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 ur(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 o=l.length?l[l.length-1]:e;let u=o.contentMatch;for(let t=r;u&&t<n;t++)u=u.matchType(i.child(t).type);if(!u||!u.validEnd)return null;return l}function fr(t,e,i){let r=me.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=me.from(i[t].type.create(i[t].attrs,r))}let n=e.start,s=e.end;t.step(new Xi(n,s,n,s,new ve(r,0,0),i.length,true))}function hr(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)&&ar(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 o=l.map(i,1),u=l.map(i+e.nodeSize,1);t.step(new Xi(o,u,o+1,u-1,new ve(me.from(r.create(n,null,e.marks)),0,0),1,true));return false}}))}function ar(t,e,i){let r=t.resolve(e),n=r.index();return r.parent.canReplaceWith(n,n+1,i)}function cr(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 Xi(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new ve(me.from(l),0,0),1,true))}function dr(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 o=r&&r[e+1];if(o)l=l.replaceChild(0,o.type.create(o.attrs));let u=r&&r[e]||i;if(!i.canReplace(s+1,i.childCount)||!u.type.validContent(l))return false}let o=n.indexAfter(s);let u=r&&r[0];return n.node(s).canReplaceWith(o,o,u?u.type:n.node(s+1).type)}function pr(t,e,i=1,r){let n=t.doc.resolve(e),s=me.empty,l=me.empty;for(let t=n.depth,e=n.depth-i,o=i-1;t>e;t--,o--){s=me.from(n.node(t).copy(s));let e=r&&r[o];l=me.from(e?e.type.create(e.attrs,l):n.node(t).copy(l))}t.step(new Gi(e,e,new ve(s.append(l),i,i),true))}function mr(t,e){let i=t.resolve(e),r=i.index();return wr(i.nodeBefore,i.nodeAfter)&&i.parent.canReplace(r,r+1)}function wr(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function gr(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&&wr(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 br(t,e,i){let r=new Gi(e-i,e+i,ve.empty,true);t.step(r)}function kr(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 Dr(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),o=false;if(t==1){o=l.canReplace(s,s,n)}else{let t=l.contentMatchAt(s).findWrapping(n.firstChild.type);o=t&&l.canReplaceWith(s,s,t[0])}if(o)return i==0?r.pos:i<0?r.before(e+1):r.after(e+1)}}return null}function vr(t,e,i=e,r=ve.empty){if(e==i&&!r.size)return null;let n=t.resolve(e),s=t.resolve(i);if(yr(n,s,r))return new Gi(e,i,r);return new Fr(n,s,r).fit()}function yr(t,e,i){return!i.openStart&&!i.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),i.content)}class Fr{constructor(t,e,i){this.$from=t;this.$to=e;this.unplaced=i;this.frontier=[];this.placed=me.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=me.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 o=new ve(n,s,l);if(t>-1)return new Xi(i.pos,t,this.$to.pos,this.$to.end(),o,e);if(o.size||i.pos!=this.$to.pos)return new Gi(i.pos,r.pos,o);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=Mr(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],o,u=null;if(e==1&&(n?l.matchType(n.type)||(u=l.fillBefore(me.from(n),false)):r&&s.compatibleContent(r.type)))return{sliceDepth:i,frontierDepth:t,parent:r,inject:u};else if(e==2&&n&&(o=l.findWrapping(n.type)))return{sliceDepth:i,frontierDepth:t,parent:r,wrap:o};if(r&&l.matchType(r.type))break}}}}openMore(){let{content:t,openStart:e,openEnd:i}=this.unplaced;let r=Mr(t,e);if(!r.childCount||r.firstChild.isLeaf)return false;this.unplaced=new ve(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=Mr(t,e);if(r.childCount<=1&&e>0){let n=t.size-e<=e+r.size;this.unplaced=new ve(Er(t,e-1,1),e-1,n?e-1:i)}else{this.unplaced=new ve(Er(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 o=s.openStart-t;let u=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(u<l.childCount){let t=l.child(u),e=h.matchType(t.type);if(!e)break;u++;if(u>1||o==0||t.content.size){h=e;f.push(Ar(t.mark(a.allowedMarks(t.marks)),u==1?o:0,u==l.childCount?c:-1))}}let d=u==l.childCount;if(!d)c=-1;this.placed=xr(this.placed,e,me.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 ve(Er(s.content,t,u),s.openStart,s.openEnd):t==0?ve.empty:new ve(Er(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||!Cr(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=Cr(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=Cr(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=xr(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=xr(this.placed,this.depth,me.from(t.create(e,i)));this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop();let e=t.match.fillBefore(me.empty,true);if(e.childCount)this.placed=xr(this.placed,this.frontier.length,e)}}function Er(t,e,i){if(e==0)return t.cutByIndex(i,t.childCount);return t.replaceChild(0,t.firstChild.copy(Er(t.firstChild.content,e-1,i)))}function xr(t,e,i){if(e==0)return t.append(i);return t.replaceChild(t.childCount-1,t.lastChild.copy(xr(t.lastChild.content,e-1,i)))}function Mr(t,e){for(let i=0;i<e;i++)t=t.firstChild.content;return t}function Ar(t,e,i){if(e<=0)return t;let r=t.content;if(e>1)r=r.replaceChild(0,Ar(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(me.empty,true))}return t.copy(r)}function Cr(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 o=r.fillBefore(s.content,true,l);return o&&!Sr(i,s.content,l)?o:null}function Sr(t,e,i){for(let r=i;r<e.childCount;r++)if(!t.allowsMarks(e.child(r).marks))return true;return false}function Or(t){return t.spec.defining||t.spec.definingForContent}function $r(t,e,i,r){if(!r.size)return t.deleteRange(e,i);let n=t.doc.resolve(e),s=t.doc.resolve(i);if(yr(n,s,r))return t.step(new Gi(e,i,r));let l=qr(n,t.doc.resolve(i));if(l[l.length-1]==0)l.pop();let o=-(n.depth+1);l.unshift(o);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)o=t;else if(n.before(t)==e)l.splice(1,0,-t)}let u=l.indexOf(o);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=Or(e.type);if(i&&!e.sameMarkup(n.node(Math.abs(o)-1)))h=t;else if(i||!e.type.isTextblock)break}for(let e=r.openStart;e>=0;e--){let o=(e+h+1)%(r.openStart+1);let a=f[o];if(!a)continue;for(let e=0;e<l.length;e++){let f=l[(e+u)%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 ve(_r(r.content,0,r.openStart,o),o,r.openEnd))}}let a=t.steps.length;for(let o=l.length-1;o>=0;o--){t.replace(e,i,r);if(t.steps.length>a)break;let u=l[o];if(u<0)continue;e=n.before(u);i=s.after(u)}}function _r(t,e,i,r,n){if(e<i){let n=t.firstChild;t=t.replaceChild(0,n.copy(_r(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(me.empty,true))}return t}function Br(t,e,i,r){if(!r.isInline&&e==i&&t.doc.resolve(e).parent.content.size){let n=kr(t.doc,e,r.type);if(n!=null)e=i=n}t.replaceRange(e,i,new ve(me.from(r),0,0))}function jr(t,e,i){let r=t.doc.resolve(e),n=t.doc.resolve(i);let s=qr(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 qr(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 Rr extends Li{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 Ui.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 Ui.fromReplace(t,this.pos,this.pos+1,new ve(me.from(r),0,e.isLeaf?0:1))}getMap(){return Ii.empty}invert(t){return new Rr(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 Rr(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 Rr(e.pos,e.attr,e.value)}}Li.jsonID("attr",Rr);class Nr extends Li{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 Ui.ok(i)}getMap(){return Ii.empty}invert(t){return new Nr(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 Nr(e.attr,e.value)}}Li.jsonID("docAttr",Nr);let zr=class extends Error{};zr=function t(e){let i=Error.call(this,e);i.__proto__=t.prototype;return i};zr.prototype=Object.create(Error.prototype);zr.prototype.constructor=zr;zr.prototype.name="TransformError";class Tr{constructor(t){this.doc=t;this.steps=[];this.docs=[];this.mapping=new Pi}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new zr(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=ve.empty){let r=vr(this.doc,t,e,i);if(r)this.step(r);return this}replaceWith(t,e,i){return this.replace(t,e,new ve(me.from(i),0,0))}delete(t,e){return this.replace(t,e,ve.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,i){$r(this,t,e,i);return this}replaceRangeWith(t,e,i){Br(this,t,e,i);return this}deleteRange(t,e){jr(this,t,e);return this}lift(t,e){nr(this,t,e);return this}join(t,e=1){br(this,t,e);return this}wrap(t,e){fr(this,t,e);return this}setBlockType(t,e=t,i,r=null){hr(this,t,e,i,r);return this}setNodeMarkup(t,e,i=null,r){cr(this,t,e,i,r);return this}setNodeAttribute(t,e,i){this.step(new Rr(t,e,i));return this}setDocAttribute(t,e){this.step(new Nr(t,e));return this}addNodeMark(t,e){this.step(new Ki(t,e));return this}removeNodeMark(t,e){if(!(e instanceof ke)){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 Vi(t,e));return this}split(t,e=1,i){pr(this,t,e,i);return this}addMark(t,e,i){Qi(this,t,e,i);return this}removeMark(t,e,i){tr(this,t,e,i);return this}clearIncompatible(t,e,i){er(this,t,e,i);return this}}const Ir=Object.create(null);class Pr{constructor(t,e,i){this.$anchor=t;this.$head=e;this.ranges=i||[new Jr(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=ve.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:o,$to:u}=s[l],f=t.mapping.slice(n);t.replaceRange(f.map(o.pos),f.map(u.pos),l?ve.empty:e);if(l==0)Yr(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],o=t.mapping.slice(i);let u=o.map(s.pos),f=o.map(l.pos);if(n){t.deleteRange(u,f)}else{t.replaceRangeWith(u,f,e);Yr(t,i,e.isInline?-1:1)}}}static findFrom(t,e,i=false){let r=t.parent.inlineContent?new Wr(t):Xr(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?Xr(t.node(0),t.node(r),t.before(r+1),t.index(r),e,i):Xr(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 Vr(t.node(0))}static atStart(t){return Xr(t,t,0,0,1)||new Vr(t)}static atEnd(t){return Xr(t,t,t.content.size,t.childCount,-1)||new Vr(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let i=Ir[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 Ir)throw new RangeError("Duplicate use of selection JSON ID "+t);Ir[t]=e;e.prototype.jsonID=t;return e}getBookmark(){return Wr.between(this.$anchor,this.$head).getBookmark()}}Pr.prototype.visible=true;class Jr{constructor(t,e){this.$from=t;this.$to=e}}let Lr=false;function Ur(t){if(!Lr&&!t.parent.inlineContent){Lr=true;console["warn"]("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")")}}class Wr extends Pr{constructor(t,e=t){Ur(t);Ur(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 Pr.near(i);let r=t.resolve(e.map(this.anchor));return new Wr(r.parent.inlineContent?r:i,i)}replace(t,e=ve.empty){super.replace(t,e);if(e==ve.empty){let e=this.$from.marksAcross(this.$to);if(e)t.ensureMarks(e)}}eq(t){return t instanceof Wr&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new Hr(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 Wr(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=Pr.findFrom(e,i,true)||Pr.findFrom(e,-i,true);if(t)e=t.$head;else return Pr.near(e,i)}if(!t.parent.inlineContent){if(r==0){t=e}else{t=(Pr.findFrom(t,-i,true)||Pr.findFrom(t,i,true)).$anchor;if(t.pos<e.pos!=r<0)t=e}}return new Wr(t,e)}}Pr.jsonID("text",Wr);class Hr{constructor(t,e){this.anchor=t;this.head=e}map(t){return new Hr(t.map(this.anchor),t.map(this.head))}resolve(t){return Wr.between(t.resolve(this.anchor),t.resolve(this.head))}}class Zr extends Pr{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 Pr.near(n);return new Zr(n)}content(){return new ve(me.from(this.node),0,0)}eq(t){return t instanceof Zr&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new Kr(this.anchor)}static fromJSON(t,e){if(typeof e.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new Zr(t.resolve(e.anchor))}static create(t,e){return new Zr(t.resolve(e))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==false}}Zr.prototype.visible=false;Pr.jsonID("node",Zr);class Kr{constructor(t){this.anchor=t}map(t){let{deleted:e,pos:i}=t.mapResult(this.anchor);return e?new Hr(i,i):new Kr(i)}resolve(t){let e=t.resolve(this.anchor),i=e.nodeAfter;if(i&&Zr.isSelectable(i))return new Zr(e);return Pr.near(e)}}class Vr extends Pr{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,e=ve.empty){if(e==ve.empty){t.delete(0,t.doc.content.size);let e=Pr.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 Vr(t)}map(t){return new Vr(t)}eq(t){return t instanceof Vr}getBookmark(){return Gr}}Pr.jsonID("all",Vr);const Gr={map(){return this},resolve(t){return new Vr(t)}};function Xr(t,e,i,r,n,s=false){if(e.inlineContent)return Wr.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=Xr(t,r,i+n,n<0?r.childCount:0,n,s);if(e)return e}else if(!s&&Zr.isSelectable(r)){return Zr.create(t,i-(n<0?r.nodeSize:0))}i+=r.nodeSize*n}return null}function Yr(t,e,i){let r=t.steps.length-1;if(r<e)return;let n=t.steps[r];if(!(n instanceof Gi||n instanceof Xi))return;let s=t.mapping.maps[r],l;s.forEach(((t,e,i,r)=>{if(l==null)l=r}));t.setSelection(Pr.near(t.doc.resolve(l),i))}const Qr=1,tn=2,en=4;class rn extends Tr{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|Qr)&~tn;this.storedMarks=null;return this}get selectionSet(){return(this.updated&Qr)>0}setStoredMarks(t){this.storedMarks=t;this.updated|=tn;return this}ensureMarks(t){if(!ke.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&tn)>0}addStep(t,e){super.addStep(t,e);this.updated=this.updated&~tn;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)||ke.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(Pr.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|=en;return this}get scrolledIntoView(){return(this.updated&en)>0}}function nn(t,e){return!e||!t?t:t.bind(e)}class sn{constructor(t,e,i){this.name=t;this.init=nn(e.init,i);this.apply=nn(e.apply,i)}}const ln=[new sn("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new sn("selection",{init(t,e){return t.selection||Pr.atStart(e.doc)},apply(t){return t.selection}}),new sn("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,i,r){return r.selection.$cursor?t.storedMarks:null}}),new sn("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class on{constructor(t,e){this.schema=t;this.plugins=[];this.pluginsByKey=Object.create(null);this.fields=ln.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 sn(t.key,t.spec.state,t))}))}}class un{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 o=r?r[s].n:0,u=r?r[s].state:this;let f=o<e.length&&l.spec.appendTransaction.call(l,o?e.slice(o):e,u,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 un(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 rn(this)}static create(t){let e=new on(t.doc?t.doc.type.schema:t.schema,t.plugins);let i=new un(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 on(this.schema,t.plugins);let i=e.fields,r=new un(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 on(t.schema,t.plugins);let n=new un(r);r.fields.forEach((r=>{if(r.name=="doc"){n.doc=Ie.fromJSON(t.schema,e.doc)}else if(r.name=="selection"){n.selection=Pr.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],o=l.spec.state;if(l.key==r.name&&o&&o.fromJSON&&Object.prototype.hasOwnProperty.call(e,s)){n[r.name]=o.fromJSON.call(l,t,e[s],n);return}}n[r.name]=r.init(t,n)}}));return n}}function fn(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=fn(n,e,{});i[r]=n}return i}class hn{constructor(t){this.spec=t;this.props={};if(t.props)fn(t.props,this,this.props);this.key=t.key?t.key.key:cn("plugin")}getState(t){return t[this.key]}}const an=Object.create(null);function cn(t){if(t in an)return t+"$"+ ++an[t];an[t]=0;return t+"$"}class dn{constructor(t="key"){this.key=cn(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const pn=function(t){for(var e=0;;e++){t=t.previousSibling;if(!t)return e}};const mn=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let wn=null;const gn=function(t,e,i){let r=wn||(wn=document.createRange());r.setEnd(t,i==null?t.nodeValue.length:i);r.setStart(t,e||0);return r};const bn=function(t,e,i,r){return i&&(Dn(t,e,i,r,-1)||Dn(t,e,i,r,1))};const kn=/^(img|br|input|textarea|hr)$/i;function Dn(t,e,i,r,n){for(;;){if(t==i&&e==r)return true;if(e==(n<0?0:vn(t))){let i=t.parentNode;if(!i||i.nodeType!=1||Fn(t)||kn.test(t.nodeName)||t.contentEditable=="false")return false;e=pn(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?vn(t):0}else{return false}}}function vn(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function yn(t,e,i){for(let r=e==0,n=e==vn(t);r||n;){if(t==i)return true;let e=pn(t);t=t.parentNode;if(!t)return false;r=r&&e==0;n=n&&e==vn(t)}}function Fn(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 En=function(t){return t.focusNode&&bn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function xn(t,e){let i=document.createEvent("Event");i.initEvent("keydown",true,true);i.keyCode=t;i.key=i.code=e;return i}function Mn(t){let e=t.activeElement;while(e&&e.shadowRoot)e=e.shadowRoot.activeElement;return e}function An(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 Cn=typeof navigator!="undefined"?navigator:null;const Sn=typeof document!="undefined"?document:null;const On=Cn&&Cn.userAgent||"";const $n=/Edge\/(\d+)/.exec(On);const _n=/MSIE \d/.exec(On);const Bn=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(On);const jn=!!(_n||Bn||$n);const qn=_n?document.documentMode:Bn?+Bn[1]:$n?+$n[1]:0;const Rn=!jn&&/gecko\/(\d+)/i.test(On);Rn&&+(/Firefox\/(\d+)/.exec(On)||[0,0])[1];const Nn=!jn&&/Chrome\/(\d+)/.exec(On);const zn=!!Nn;const Tn=Nn?+Nn[1]:0;const In=!jn&&!!Cn&&/Apple Computer/.test(Cn.vendor);const Pn=In&&(/Mobile\/\w+/.test(On)||!!Cn&&Cn.maxTouchPoints>2);const Jn=Pn||(Cn?/Mac/.test(Cn.platform):false);const Ln=Cn?/Win/.test(Cn.platform):false;const Un=/Android \d/.test(On);const Wn=!!Sn&&"webkitFontSmoothing"in Sn.documentElement.style;const Hn=Wn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function Zn(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function Kn(t,e){return typeof t=="number"?t:t[e]}function Vn(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 Gn(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=mn(l)){if(!l)break;if(l.nodeType!=1)continue;let t=l;let i=t==s.body;let o=i?Zn(s):Vn(t);let u=0,f=0;if(e.top<o.top+Kn(r,"top"))f=-(o.top-e.top+Kn(n,"top"));else if(e.bottom>o.bottom-Kn(r,"bottom"))f=e.bottom-e.top>o.bottom-o.top?e.top+Kn(n,"top")-o.top:e.bottom-o.bottom+Kn(n,"bottom");if(e.left<o.left+Kn(r,"left"))u=-(o.left-e.left+Kn(n,"left"));else if(e.right>o.right-Kn(r,"right"))u=e.right-o.right+Kn(n,"right");if(u||f){if(i){s.defaultView.scrollBy(u,f)}else{let i=t.scrollLeft,r=t.scrollTop;if(f)t.scrollTop+=f;if(u)t.scrollLeft+=u;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 Xn(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 o=e.getBoundingClientRect();if(o.top>=i-20){r=e;n=o.top;break}}return{refDOM:r,refTop:n,stack:Yn(t.dom)}}function Yn(t){let e=[],i=t.ownerDocument;for(let r=t;r;r=mn(r)){e.push({dom:r,top:r.scrollTop,left:r.scrollLeft});if(t==i)break}return e}function Qn({refDOM:t,refTop:e,stack:i}){let r=t?t.getBoundingClientRect().top:0;ts(i,r==0?0:r-e)}function ts(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 es=null;function is(t){if(t.setActive)return t.setActive();if(es)return t.focus(es);let e=Yn(t);t.focus(es==null?{get preventScroll(){es={preventScroll:true};return true}}:undefined);if(!es){es=false;ts(e,0)}}function rs(t,e){let i,r=2e8,n,s=0;let l=e.top,o=e.top;let u,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=gn(h).getClientRects();else continue;for(let c=0;c<t.length;c++){let d=t[c];if(d.top<=l&&d.bottom>=o){l=Math.max(d.bottom,l);o=Math.min(d.top,o);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&&!u&&d.left<=e.left&&d.right>=e.left){u=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&&u){i=u;n=f;r=0}if(i&&i.nodeType==3)return ns(i,n);if(!i||r&&i.nodeType==1)return{node:t,offset:s};return rs(i,n)}function ns(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=ds(r,1);if(i.top==i.bottom)continue;if(ss(e,i))return{node:t,offset:n+(e.left>=(i.left+i.right)/2?1:0)}}return{node:t,offset:0}}function ss(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function ls(t,e){let i=t.parentNode;if(i&&/^li$/i.test(i.nodeName)&&e.left<t.getBoundingClientRect().left)return i;return t}function us(t,e,i){let{node:r,offset:n}=rs(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 fs(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 hs(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(ss(e,n))return hs(i,e,n)}}if((s=(s+1)%r)==n)break}}return t}function as(t,e){let i=t.dom.ownerDocument,r,n=0;let s=An(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 o;if(!l||!t.dom.contains(l.nodeType!=1?l.parentNode:l)){let i=t.dom.getBoundingClientRect();if(!ss(e,i))return null;l=hs(t.dom,e,i);if(!l)return null}if(In){for(let t=l;r&&t;t=mn(t))if(t.draggable)r=undefined}l=ls(l,e);if(r){if(Rn&&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(Wn&&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)o=t.state.doc.content.size;else if(n==0||r.nodeType!=1||r.childNodes[n-1].nodeName!="BR")o=fs(t,r,n,e)}if(o==null)o=us(t,l,e);let u=t.docView.nearestDesc(l,true);return{pos:o,inside:u?u.posAtStart-u.border:-1}}function cs(t){return t.top<t.bottom||t.left<t.right}function ds(t,e){let i=t.getClientRects();if(i.length){let t=i[e<0?0:i.length-1];if(cs(t))return t}return Array.prototype.find.call(i,cs)||t.getBoundingClientRect()}const ps=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function ms(t,e,i){let{node:r,offset:n,atom:s}=t.docView.domFromPos(e,i<0?-1:1);let l=Wn||Rn;if(r.nodeType==3){if(l&&(ps.test(r.nodeValue)||(i<0?!n:n==r.nodeValue.length))){let t=ds(gn(r,n,n),i);if(Rn&&n&&/\s/.test(r.nodeValue[n-1])&&n<r.nodeValue.length){let e=ds(gn(r,n-1,n-1),-1);if(e.top==t.top){let i=ds(gn(r,n,n+1),-1);if(i.top!=t.top)return ws(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 ws(ds(gn(r,t,e),s),s<0)}}let o=t.state.doc.resolve(e-(s||0));if(!o.parent.inlineContent){if(s==null&&n&&(i<0||n==vn(r))){let t=r.childNodes[n-1];if(t.nodeType==1)return gs(t.getBoundingClientRect(),false)}if(s==null&&n<vn(r)){let t=r.childNodes[n];if(t.nodeType==1)return gs(t.getBoundingClientRect(),true)}return gs(r.getBoundingClientRect(),i>=0)}if(s==null&&n&&(i<0||n==vn(r))){let t=r.childNodes[n-1];let e=t.nodeType==3?gn(t,vn(t)-(l?0:1)):t.nodeType==1&&(t.nodeName!="BR"||!t.nextSibling)?t:null;if(e)return ws(ds(e,1),false)}if(s==null&&n<vn(r)){let t=r.childNodes[n];while(t.pmViewDesc&&t.pmViewDesc.ignoreForCoords)t=t.nextSibling;let e=!t?null:t.nodeType==3?gn(t,0,l?0:1):t.nodeType==1?t:null;if(e)return ws(ds(e,-1),true)}return ws(ds(r.nodeType==3?gn(r):r,-i),i>=0)}function ws(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 gs(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 bs(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 ks(t,e,i){let r=e.selection;let n=i=="up"?r.$from:r.$to;return bs(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=ms(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=gn(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 Ds=/[\u0590-\u08ac]/;function vs(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 o=t.domSelection();if(!Ds.test(r.parent.textContent)||!o.modify)return i=="left"||i=="backward"?s:l;return bs(t,e,(()=>{let{focusNode:e,focusOffset:n,anchorNode:s,anchorOffset:l}=t.domSelectionRange();let u=o.caretBidiLevel;o.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{o.collapse(s,l);if(e&&(e!=s||n!=l)&&o.extend)o.extend(e,n)}catch(t){}if(u!=null)o.caretBidiLevel=u;return c}))}let ys=null;let Fs=null;let Es=false;function xs(t,e,i){if(ys==e&&Fs==i)return Es;ys=e;Fs=i;return Es=i=="up"||i=="down"?ks(t,e,i):vs(t,e,i)}const Ms=0,As=1,Cs=2,Ss=3;class Os{constructor(t,e,i,r){this.parent=t;this.children=e;this.dom=i;this.contentDOM=r;this.dirty=Ms;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>pn(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 Ns){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 $s&&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?pn(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?pn(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],o=s+i.size;if(r==-1&&t<=o){let n=s+i.border;if(t>=n&&e<=o-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=pn(i.dom)+1;break}t-=i.size}if(r==-1)r=0}if(r>-1&&(o>e||l==this.children.length-1)){e=o;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=pn(i.dom);break}e+=i.size}if(n==-1)n=this.contentDOM.childNodes.length;break}s=o}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,o=0;l<this.children.length;l++){let u=this.children[l],f=o+u.size;if(n>o&&s<f)return u.setSelection(t-o-u.border,e-o-u.border,i,r);o=f}let l=this.domFromPos(t,t?-1:1);let o=e==t?l:this.domFromPos(e,e?-1:1);let u=i.getSelection();let f=false;if((Rn||In)&&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=o={node:i.parentNode,offset:pn(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(Rn&&u.focusNode&&u.focusNode!=o.node&&u.focusNode.nodeType==1){let t=u.focusNode.childNodes[u.focusOffset];if(t&&t.contentEditable=="false")r=true}if(!(r||f&&In)&&bn(l.node,l.offset,u.anchorNode,u.anchorOffset)&&bn(o.node,o.offset,u.focusNode,u.focusOffset))return;let h=false;if((u.extend||t==e)&&!f){u.collapse(l.node,l.offset);try{if(t!=e)u.extend(o.node,o.offset);h=true}catch(t){}}if(!h){if(t>e){let t=l;l=o;o=t}let i=document.createRange();i.setEnd(o.node,o.offset);i.setStart(l.node,l.offset);u.removeAllRanges();u.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?Cs:As;if(t==r&&e==l&&(n.contentLost||n.dom.parentNode!=this.contentDOM))n.dirty=Ss;else n.markDirty(t-r,e-r);return}else{n.dirty=n.dom==n.contentDOM&&n.dom.parentNode==this.contentDOM&&!n.children.length?Cs:Ss}}i=s}this.dirty=Cs}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let i=t==1?Cs:As;if(e.dirty<i)e.dirty=i}}get domAtom(){return false}get ignoreForCoords(){return false}}class $s extends Os{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==Ms&&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 _s extends Os{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 Bs extends Os{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=Ai.renderSpec(document,e.type.spec.toDOM(e,i));return new Bs(t,e,s.dom,s.contentDOM||s.dom)}parseRule(){if(this.dirty&Ss||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!=Ss&&this.mark.eq(t)}markDirty(t,e){super.markDirty(t,e);if(this.dirty!=Ms){let t=this.parent;while(!t.node)t=t.parent;if(t.dirty<this.dirty)t.dirty=this.dirty;this.dirty=Ms}}slice(t,e,i){let r=Bs.create(this.parent,this.mark,true,i);let n=this.children,s=this.size;if(e<s)n=el(n,e,s,i);if(t>0)n=el(n,0,t,i);for(let t=0;t<n.length;t++)n[t].parent=r;r.children=n;return r}}class js extends Os{constructor(t,e,i,r,n,s,l,o,u){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],o;let u=l&&l(e,n,(()=>{if(!o)return s;if(o.parent)return o.parent.posBeforeChild(o)}),i,r);let f=u&&u.dom,h=u&&u.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}=Ai.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=Ws(f,i,e);if(u)return o=new zs(t,e,i,r,f,h||null,a,u,n,s+1);else if(e.isText)return new Rs(t,e,i,r,f,a,n);else return new js(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=()=>me.empty}return t}matchesNode(t,e,i){return this.dirty==Ms&&t.eq(this.node)&&Hs(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 o=new Ks(this,s&&s.node,t);Xs(this.node,this.innerDeco,((e,n,s)=>{if(e.spec.marks)o.syncToMarks(e.spec.marks,i,t);else if(e.type.side>=0&&!s)o.syncToMarks(n==this.node.childCount?ke.none:this.node.child(n).marks,i,t);o.placeWidget(e,t,r)}),((e,s,u,f)=>{o.syncToMarks(e.marks,i,t);let h;if(o.findNodeMatch(e,s,u,f));else if(l&&t.state.selection.from>r&&t.state.selection.to<r+e.nodeSize&&(h=o.findIndexWithChild(n.node))>-1&&o.updateNodeAt(e,s,u,h,t));else if(o.updateNextNode(e,s,u,t,f,r));else{o.addNode(e,s,u,t,r)}r+=e.nodeSize}));o.syncToMarks([],i,t);if(this.node.isTextblock)o.addTextblockHacks();o.destroyRest();if(o.changed||this.dirty==Cs){if(s)this.protectLocalComposition(t,s);Ts(this.contentDOM,this.children,t);if(Pn)Ys(this.dom)}}localCompositionInfo(t,e){let{from:i,to:r}=t.state.selection;if(!(t.state.selection instanceof Wr)||i<e||r>e+this.node.content.size)return null;let n=t.domSelectionRange();let s=Qs(n.focusNode,n.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let t=s.nodeValue;let n=tl(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 _s(this,n,e,r);t.input.compositionNodes.push(s);this.children=el(this.children,i,i+r.length,t,s)}update(t,e,i,r){if(this.dirty==Ss||!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=Ms}updateOuterDeco(t){if(Hs(t,this.outerDeco))return;let e=this.nodeDOM.nodeType!=1;let i=this.dom;this.dom=Ls(this.dom,this.nodeDOM,Js(this.outerDeco,this.node,e),Js(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 qs(t,e,i,r,n){Ws(r,e,t);let s=new js(undefined,t,e,i,r,r,r,n,0);if(s.contentDOM)s.updateChildren(n,0);return s}class Rs extends js{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==Ss||this.dirty!=Ms&&!this.inParent()||!t.sameMarkup(this.node))return false;this.updateOuterDeco(e);if((this.dirty!=Ms||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=Ms;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 Rs(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=Ss}get domAtom(){return false}}class Ns extends Os{parseRule(){return{ignore:true}}matchesHack(t){return this.dirty==Ms&&this.dom.nodeName==t}get domAtom(){return true}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class zs extends js{constructor(t,e,i,r,n,s,l,o,u,f){super(t,e,i,r,n,s,l,u,f);this.spec=o}update(t,e,i,r){if(this.dirty==Ss)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 Ts(t,e,i){let r=t.firstChild,n=false;for(let s=0;s<e.length;s++){let l=e[s],o=l.dom;if(o.parentNode==t){while(o!=r){r=Zs(r);n=true}r=r.nextSibling}else{n=true;t.insertBefore(o,r)}if(l instanceof Bs){let e=r?r.previousSibling:t.lastChild;Ts(l.contentDOM,l.children,i);r=e?e.nextSibling:t.firstChild}}while(r){r=Zs(r);n=true}if(n&&i.trackWrites==t)i.trackWrites=null}const Is=function(t){if(t)this.nodeName=t};Is.prototype=Object.create(null);const Ps=[new Is];function Js(t,e,i){if(t.length==0)return Ps;let r=i?Ps[0]:new Is,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 Is(l.nodeName));for(let t in l){let s=l[t];if(s==null)continue;if(i&&n.length==1)n.push(r=new Is(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 Ls(t,e,i,r){if(i==Ps&&r==Ps)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=Ps[0];n=e}}Us(n,l||Ps[0],s)}return n}function Us(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 Ws(t,e,i){return Ls(t,t,Ps,Js(e,i,t.nodeType!=1))}function Hs(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 Zs(t){let e=t.nextSibling;t.parentNode.removeChild(t);return e}class Ks{constructor(t,e,i){this.lock=e;this.view=i;this.index=0;this.stack=[];this.changed=false;this.top=t;this.preMatch=Vs(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=Ms;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=Bs.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==Ss&&s.dom==s.contentDOM)s.dirty=Cs;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 o=this.top.children[l];if(o instanceof js){let u=this.preMatch.matched.get(o);if(u!=null&&u!=n)return false;let f=o.dom,h;let a=this.isLocked(f)&&!(t.isText&&o.node&&o.node.isText&&o.nodeDOM.nodeValue==t.text&&o.dirty!=Ss&&Hs(e,o.outerDeco));if(!a&&o.update(t,e,i,r)){this.destroyBetween(this.index,l);if(o.dom!=f)this.changed=true;this.index++;return true}else if(!a&&(h=this.recreateWrapper(o,t,e,i,r,s))){this.top.children[this.index]=h;if(h.contentDOM){h.dirty=Cs;h.updateChildren(r,s+1);h.dirty=Ms}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=js.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=js.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 $s(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 Bs){e=t;t=e.children[e.children.length-1]}if(!t||!(t instanceof Rs)||/\n$/.test(t.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(t.node.text)){if((In||zn)&&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 Ns(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 Vs(t,e){let i=e,r=i.children.length;let n=t.childCount,s=new Map,l=[];t:while(n>0){let o;for(;;){if(r){let t=i.children[r-1];if(t instanceof Bs){i=t;r=t.children.length}else{o=t;r--;break}}else if(i==e){break t}else{r=i.parent.children.indexOf(i);i=i.parent}}let u=o.node;if(!u)continue;if(u!=t.child(n-1))break;--n;s.set(o,n);l.push(o)}return{index:n,matched:s,matches:l.reverse()}}function Gs(t,e){return t.type.side-e.type.side}function Xs(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,o=[],u=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(Gs);for(let t=0;t<a.length;t++)i(a[t],f,!!u)}else{i(h,f,!!u)}}let c,d;if(u){d=-1;c=u;u=null}else if(f<t.childCount){d=f;c=t.child(f++)}else{break}for(let t=0;t<o.length;t++)if(o[t].to<=s)o.splice(t--,1);while(l<n.length&&n[l].from<=s&&n[l].to>s)o.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<o.length;e++)if(o[e].to<t)t=o[e].to;if(t<p){u=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?o.filter((t=>!t.inline)):o.slice();r(c,m,e.forChild(s,c),d);s=p}}function Ys(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 Qs(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=vn(t)}else if(t.nodeType==1&&e<t.childNodes.length){t=t.childNodes[e];e=0}else{return null}}}function tl(t,e,i,r){for(let n=0,s=0;n<t.childCount&&s<=r;){let l=t.child(n++),o=s;s+=l.nodeSize;if(!l.isText)continue;let u=l.text;while(n<t.childCount){let e=t.child(n++);s+=e.nodeSize;if(!e.isText)break;u+=e.text}if(s>=i){if(s>=r&&u.slice(r-e.length-o,r-o)==e)return r-e.length;let t=o<r?u.lastIndexOf(e,r-o-1):-1;if(t>=0&&t+e.length+o>=i)return o+t;if(i==r&&u.length>=r+e.length-o&&u.slice(r-o,r-o+e.length)==e)return r}}return-1}function el(t,e,i,r,n){let s=[];for(let l=0,o=0;l<t.length;l++){let u=t[l],f=o,h=o+=u.size;if(f>=i||h<=e){s.push(u)}else{if(f<e)s.push(u.slice(0,e-f,r));if(n){s.push(n);n=undefined}if(h>i)s.push(u.slice(i-f,u.size,r))}}return s}function il(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 o=r.resolve(l),u,f;if(En(i)){u=o;while(n&&!n.node)n=n.parent;let t=n.node;if(n&&t.isAtom&&Zr.isSelectable(t)&&n.parent&&!(t.isInline&&yn(i.focusNode,i.focusOffset,n.dom))){let t=n.posBefore;f=new Zr(l==t?o:r.resolve(t))}}else{let e=t.docView.posFromDOM(i.anchorNode,i.anchorOffset,1);if(e<0)return null;u=r.resolve(e)}if(!f){let i=e=="pointer"||t.state.selection.head<o.pos&&!s?1:-1;f=dl(t,u,o,i)}return f}function rl(t){return t.editable?t.hasFocus():ml(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function nl(t,e=false){let i=t.state.selection;al(t,i);if(!rl(t))return;if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&zn){let e=t.domSelectionRange(),i=t.domObserver.currentSelection;if(e.anchorNode&&i.anchorNode&&bn(e.anchorNode,e.anchorOffset,i.anchorNode,i.anchorOffset)){t.input.mouseDown.delayedSelectionSync=true;t.domObserver.setCurSelection();return}}t.domObserver.disconnectSelection();if(t.cursorWrapper){hl(t)}else{let{anchor:r,head:n}=i,s,l;if(sl&&!(i instanceof Wr)){if(!i.$from.parent.inlineContent)s=ll(t,i.from);if(!i.empty&&!i.$from.parent.inlineContent)l=ll(t,i.to)}t.docView.setSelection(r,n,t.root,e);if(sl){if(s)ul(s);if(l)ul(l)}if(i.visible){t.dom.classList.remove("ProseMirror-hideselection")}else{t.dom.classList.add("ProseMirror-hideselection");if("onselectionchange"in document)fl(t)}}t.domObserver.setCurSelection();t.domObserver.connectSelection()}const sl=In||zn&&Tn<63;function ll(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(In&&n&&n.contentEditable=="false")return ol(n);if((!n||n.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(n)return ol(n);else if(s)return ol(s)}}function ol(t){t.contentEditable="true";if(In&&t.draggable){t.draggable=false;t.wasDraggable=true}return t}function ul(t){t.contentEditable="false";if(t.wasDraggable){t.draggable=true;t.wasDraggable=null}}function fl(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(!rl(t)||t.state.selection.visible)t.dom.classList.remove("ProseMirror-hideselection")}),20)}})}function hl(t){let e=t.domSelection(),i=document.createRange();let r=t.cursorWrapper.dom,n=r.nodeName=="IMG";if(n)i.setEnd(r.parentNode,pn(r)+1);else i.setEnd(r,0);i.collapse(false);e.removeAllRanges();e.addRange(i);if(!n&&!t.state.selection.visible&&jn&&qn<=11){r.disabled=true;r.disabled=false}}function al(t,e){if(e instanceof Zr){let i=t.docView.descAt(e.from);if(i!=t.lastSelectedViewDesc){cl(t);if(i)i.selectNode();t.lastSelectedViewDesc=i}}else{cl(t)}}function cl(t){if(t.lastSelectedViewDesc){if(t.lastSelectedViewDesc.parent)t.lastSelectedViewDesc.deselectNode();t.lastSelectedViewDesc=undefined}}function dl(t,e,i,r){return t.someProp("createSelectionBetween",(r=>r(t,e,i)))||Wr.between(e,i,r)}function pl(t){if(t.editable&&!t.hasFocus())return false;return ml(t)}function ml(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 wl(t){let e=t.docView.domFromPos(t.state.selection.anchor,0);let i=t.domSelectionRange();return bn(e.node,e.offset,i.anchorNode,i.anchorOffset)}function gl(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&&Pr.findFrom(s,e)}function bl(t,e){t.dispatch(t.state.tr.setSelection(e).scrollIntoView());return true}function kl(t,e,i){let r=t.state.selection;if(r instanceof Wr){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 bl(t,new Wr(r.$anchor,s))}else if(!r.empty){return false}else if(t.endOfTextblock(e>0?"forward":"backward")){let i=gl(t.state,e);if(i&&i instanceof Zr)return bl(t,i);return false}else if(!(Jn&&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(Zr.isSelectable(n)){return bl(t,new Zr(e<0?t.state.doc.resolve(i.pos-n.nodeSize):i))}else if(Wn){return bl(t,new Wr(t.state.doc.resolve(e<0?l:l+n.nodeSize)))}else{return false}}}else if(r instanceof Zr&&r.node.isInline){return bl(t,new Wr(e>0?r.$to:r.$from))}else{let i=gl(t.state,e);if(i)return bl(t,i);return false}}function Dl(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function vl(t,e){let i=t.pmViewDesc;return i&&i.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function yl(t,e){return e<0?Fl(t):El(t)}function Fl(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n,s,l=false;if(Rn&&i.nodeType==1&&r<Dl(i)&&vl(i.childNodes[r],-1))l=true;for(;;){if(r>0){if(i.nodeType!=1){break}else{let t=i.childNodes[r-1];if(vl(t,-1)){n=i;s=--r}else if(t.nodeType==3){i=t;r=i.nodeValue.length}else break}}else if(xl(i)){break}else{let e=i.previousSibling;while(e&&vl(e,-1)){n=i.parentNode;s=pn(e);e=e.previousSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=0}else{i=e;r=Dl(i)}}}if(l)Cl(t,i,r);else if(n)Cl(t,n,s)}function El(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n=Dl(i);let s,l;for(;;){if(r<n){if(i.nodeType!=1)break;let t=i.childNodes[r];if(vl(t,1)){s=i;l=++r}else break}else if(xl(i)){break}else{let e=i.nextSibling;while(e&&vl(e,1)){s=e.parentNode;l=pn(e)+1;e=e.nextSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=n=0}else{i=e;r=0;n=Dl(i)}}}if(s)Cl(t,s,l)}function xl(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Ml(t,e){while(t&&e==t.childNodes.length&&!Fn(t)){e=pn(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 Al(t,e){while(t&&!e&&!Fn(t)){e=pn(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 Cl(t,e,i){if(e.nodeType!=3){let t,r;if(r=Ml(e,i)){e=r;i=0}else if(t=Al(e,i)){e=t;i=t.nodeValue.length}}let r=t.domSelection();if(En(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)nl(t)}),50)}function Sl(t,e){let i=t.state.doc.resolve(e);if(!(zn||Ln)&&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 Ol(t,e,i){let r=t.state.selection;if(r instanceof Wr&&!r.empty||i.indexOf("s")>-1)return false;if(Jn&&i.indexOf("m")>-1)return false;let{$from:n,$to:s}=r;if(!n.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let i=gl(t.state,e);if(i&&i instanceof Zr)return bl(t,i)}if(!n.parent.inlineContent){let i=e<0?n:s;let l=r instanceof Vr?Pr.near(i,e):Pr.findFrom(i,e);return l?bl(t,l):false}return false}function $l(t,e){if(!(t.state.selection instanceof Wr))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 _l(t,e,i){t.domObserver.stop();e.contentEditable=i;t.domObserver.start()}function Bl(t){if(!In||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;_l(t,i,"true");setTimeout((()=>_l(t,i,"false")),20)}return false}function jl(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 ql(t,e){let i=e.keyCode,r=jl(e);if(i==8||Jn&&i==72&&r=="c"){return $l(t,-1)||yl(t,-1)}else if(i==46&&!e.shiftKey||Jn&&i==68&&r=="c"){return $l(t,1)||yl(t,1)}else if(i==13||i==27){return true}else if(i==37||Jn&&i==66&&r=="c"){let e=i==37?Sl(t,t.state.selection.from)=="ltr"?-1:1:-1;return kl(t,e,r)||yl(t,e)}else if(i==39||Jn&&i==70&&r=="c"){let e=i==39?Sl(t,t.state.selection.from)=="ltr"?1:-1:1;return kl(t,e,r)||yl(t,e)}else if(i==38||Jn&&i==80&&r=="c"){return Ol(t,-1,r)||yl(t,-1)}else if(i==40||Jn&&i==78&&r=="c"){return Bl(t)||Ol(t,1,r)||yl(t,1)}else if(r==(Jn?"m":"c")&&(i==66||i==73||i==89||i==90)){return true}return false}function Rl(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")||Ai.fromSchema(t.state.schema);let o=Zl(),u=o.createElement("div");u.appendChild(l.serializeFragment(r,{document:o}));let f=u.firstChild,h,a=0;while(f&&f.nodeType==1&&(h=Wl[f.nodeName.toLowerCase()])){for(let t=h.length-1;t>=0;t--){let e=o.createElement(h[t]);while(u.firstChild)e.appendChild(u.firstChild);u.appendChild(e);a++}f=u.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:u,text:c}}function Nl(t,e,i,r,n){let s=n.parent.type.spec.code;let l,o;if(!i&&!e)return null;let u=e&&(r||s||!i);if(u){t.someProp("transformPastedText",(i=>{e=i(e,s||r,t)}));if(s)return e?new ve(me.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):ve.empty;let i=t.someProp("clipboardTextParser",(i=>i(e,n,r,t)));if(i){o=i}else{let i=n.marks();let{schema:r}=t.state,s=Ai.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=Kl(i);if(Wn)Vl(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(!o){let e=t.someProp("clipboardParser")||t.someProp("domParser")||ai.fromSchema(t.state.schema);o=e.parseSlice(l,{preserveWhitespace:!!(u||h),context:n,ruleFromNode(t){if(t.nodeName=="BR"&&!t.nextSibling&&t.parentNode&&!zl.test(t.parentNode.nodeName))return{ignore:true};return null}})}if(h){o=Gl(Ul(o,+h[1],+h[2]),h[4])}else{o=ve.maxOpen(Tl(o.content,n),true);if(o.openStart||o.openEnd){let t=0,e=0;for(let e=o.content.firstChild;t<o.openStart&&!e.type.spec.isolating;t++,e=e.firstChild){}for(let t=o.content.lastChild;e<o.openEnd&&!t.type.spec.isolating;e++,t=t.lastChild){}o=Ul(o,t,e)}}t.someProp("transformPasted",(e=>{o=e(o,t)}));return o}const zl=/^(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 Tl(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&&Pl(e,s,t,l[l.length-1],0)){l[l.length-1]=i}else{if(l.length)l[l.length-1]=Jl(l[l.length-1],s.length);let i=Il(t,e);l.push(i);n=n.matchType(i.type);s=e}}));if(l)return me.from(l)}return t}function Il(t,e,i=0){for(let r=e.length-1;r>=i;r--)t=e[r].create(null,me.from(t));return t}function Pl(t,e,i,r,n){if(n<t.length&&n<e.length&&t[n]==e[n]){let s=Pl(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(me.from(Il(i,t,n+1))))}}function Jl(t,e){if(e==0)return t;let i=t.content.replaceChild(t.childCount-1,Jl(t.lastChild,e-1));let r=t.contentMatchAt(t.childCount).fillBefore(me.empty,true);return t.copy(i.append(r))}function Ll(t,e,i,r,n,s){let l=e<0?t.firstChild:t.lastChild,o=l.content;if(t.childCount>1)s=0;if(n<r-1)o=Ll(o,e,i,r,n+1,s);if(n>=i)o=e<0?l.contentMatchAt(0).fillBefore(o,s<=n).append(o):o.append(l.contentMatchAt(l.childCount).fillBefore(me.empty,true));return t.replaceChild(e<0?0:t.childCount-1,l.copy(o))}function Ul(t,e,i){if(e<t.openStart)t=new ve(Ll(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd);if(i<t.openEnd)t=new ve(Ll(t.content,1,i,t.openEnd,0,0),t.openStart,i);return t}const Wl={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 Hl=null;function Zl(){return Hl||(Hl=document.implementation.createHTMLDocument("title"))}function Kl(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);if(e)t=t.slice(e[0].length);let i=Zl().createElement("div");let r=/<([a-z][^>\s]+)/i.exec(t),n;if(n=r&&Wl[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 Vl(t){let e=t.querySelectorAll(zn?"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 Gl(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=me.from(e.create(r[t+1],n));s++;l++}return new ve(n,s,l)}const Xl={};const Yl={};const Ql={touchstart:true,touchmove:true};class to{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 eo(t){for(let e in Xl){let i=Xl[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{if(lo(t,e)&&!so(t,e)&&(t.editable||!(e.type in Yl)))i(t,e)},Ql[e]?{passive:true}:undefined)}if(In)t.dom.addEventListener("input",(()=>null));no(t)}function io(t,e){t.input.lastSelectionOrigin=e;t.input.lastSelectionTime=Date.now()}function ro(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 no(t){t.someProp("handleDOMEvents",(e=>{for(let i in e)if(!t.input.eventHandlers[i])t.dom.addEventListener(i,t.input.eventHandlers[i]=e=>so(t,e))}))}function so(t,e){return t.someProp("handleDOMEvents",(i=>{let r=i[e.type];return r?r(t,e)||e.defaultPrevented:false}))}function lo(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 oo(t,e){if(!so(t,e)&&Xl[e.type]&&(t.editable||!(e.type in Yl)))Xl[e.type](t,e)}Yl.keydown=(t,e)=>{let i=e;t.input.shiftKey=i.keyCode==16||i.shiftKey;if(yo(t,i))return;t.input.lastKeyCode=i.keyCode;t.input.lastKeyCodeTime=Date.now();if(Un&&zn&&i.keyCode==13)return;if(i.keyCode!=229)t.domObserver.forceFlush();if(Pn&&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,xn(13,"Enter"))));t.input.lastIOSEnter=0}}),200)}else if(t.someProp("handleKeyDown",(e=>e(t,i)))||ql(t,i)){i.preventDefault()}else{io(t,"key")}};Yl.keyup=(t,e)=>{if(e.keyCode==16)t.input.shiftKey=false};Yl.keypress=(t,e)=>{let i=e;if(yo(t,i)||!i.charCode||i.ctrlKey&&!i.altKey||Jn&&i.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,i)))){i.preventDefault();return}let r=t.state.selection;if(!(r instanceof Wr)||!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 uo(t){return{left:t.clientX,top:t.clientY}}function fo(t,e){let i=e.x-t.clientX,r=e.y-t.clientY;return i*i+r*r<100}function ho(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 ao(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 co(t,e){if(e==-1)return false;let i=t.state.doc.resolve(e),r=i.nodeAfter;if(r&&r.isAtom&&Zr.isSelectable(r)){ao(t,new Zr(i),"pointer");return true}return false}function po(t,e){if(e==-1)return false;let i=t.state.selection,r,n;if(i instanceof Zr)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(Zr.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){ao(t,Zr.create(t.state.doc,n),"pointer");return true}else{return false}}function mo(t,e,i,r,n){return ho(t,"handleClickOn",e,i,r)||t.someProp("handleClick",(i=>i(t,e,r)))||(n?po(t,i):co(t,i))}function wo(t,e,i,r){return ho(t,"handleDoubleClickOn",e,i,r)||t.someProp("handleDoubleClick",(i=>i(t,e,r)))}function go(t,e,i,r){return ho(t,"handleTripleClickOn",e,i,r)||t.someProp("handleTripleClick",(i=>i(t,e,r)))||bo(t,i,r)}function bo(t,e,i){if(i.button!=0)return false;let r=t.state.doc;if(e==-1){if(r.inlineContent){ao(t,Wr.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)ao(t,Wr.create(r,s+1,s+1+i.content.size),"pointer");else if(Zr.isSelectable(i))ao(t,Zr.create(r,s),"pointer");else continue;return true}}function ko(t){return Ao(t)}const Do=Jn?"metaKey":"ctrlKey";Xl.mousedown=(t,e)=>{let i=e;t.input.shiftKey=i.shiftKey;let r=ko(t);let n=Date.now(),s="singleClick";if(n-t.input.lastClick.time<500&&fo(i,t.input.lastClick)&&!i[Do]){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(uo(i));if(!l)return;if(s=="singleClick"){if(t.input.mouseDown)t.input.mouseDown.done();t.input.mouseDown=new vo(t,l,i,!!r)}else if((s=="doubleClick"?wo:go)(t,l.pos,l.inside,i)){i.preventDefault()}else{io(t,"pointer")}};class vo{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[Do];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 o=l?t.docView.nearestDesc(l,true):null;this.target=o?o.dom:null;let{selection:u}=t.state;if(i.button==0&&n.type.spec.draggable&&n.type.spec.selectable!==false||u instanceof Zr&&u.from<=s&&u.to>s)this.mightDrag={node:n,pos:s,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&Rn&&!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));io(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((()=>nl(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(uo(t));this.updateAllowDefault(t);if(this.allowDefault||!e){io(this.view,"pointer")}else if(mo(this.view,e.pos,e.inside,t,this.selectNode)){t.preventDefault()}else if(t.button==0&&(this.flushed||In&&this.mightDrag&&!this.mightDrag.node.isAtom||zn&&!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)){ao(this.view,Pr.near(this.view.state.doc.resolve(e.pos)),"pointer");t.preventDefault()}else{io(this.view,"pointer")}}move(t){this.updateAllowDefault(t);io(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}}Xl.touchstart=t=>{t.input.lastTouch=Date.now();ko(t);io(t,"pointer")};Xl.touchmove=t=>{t.input.lastTouch=Date.now();io(t,"pointer")};Xl.contextmenu=t=>ko(t);function yo(t,e){if(t.composing)return true;if(In&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500){t.input.compositionEndedAt=-2e8;return true}return false}const Fo=Un?5e3:-1;Yl.compositionstart=Yl.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();Ao(t,true);t.markCursor=null}else{Ao(t);if(Rn&&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}Eo(t,Fo)};Yl.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++;Eo(t,20)}};function Eo(t,e){clearTimeout(t.input.composingTimeout);if(e>-1)t.input.composingTimeout=setTimeout((()=>Ao(t)),e)}function xo(t){if(t.composing){t.input.composing=false;t.input.compositionEndedAt=Mo()}while(t.input.compositionNodes.length>0)t.input.compositionNodes.pop().markParentsDirty()}function Mo(){let t=document.createEvent("Event");t.initEvent("event",true,true);return t.timeStamp}function Ao(t,e=false){if(Un&&t.domObserver.flushingSoon>=0)return;t.domObserver.forceFlush();xo(t);if(e||t.docView&&t.docView.dirty){let e=il(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 Co(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 So=jn&&qn<15||Pn&&Hn<604;Xl.copy=Yl.cut=(t,e)=>{let i=e;let r=t.state.selection,n=i.type=="cut";if(r.empty)return;let s=So?null:i.clipboardData;let l=r.content(),{dom:o,text:u}=Rl(t,l);if(s){i.preventDefault();s.clearData();s.setData("text/html",o.innerHTML);s.setData("text/plain",u)}else{Co(t,o)}if(n)t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function Oo(t){return t.openStart==0&&t.openEnd==0&&t.content.childCount==1?t.content.firstChild:null}function $o(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)_o(t,r.value,null,n,e);else _o(t,r.textContent,r.innerHTML,n,e)}),50)}function _o(t,e,i,r,n){let s=Nl(t,e,i,r,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,n,s||ve.empty))))return true;if(!s)return false;let l=Oo(s);let o=l?t.state.tr.replaceSelectionWith(l,r):t.state.tr.replaceSelection(s);t.dispatch(o.scrollIntoView().setMeta("paste",true).setMeta("uiEvent","paste"));return true}function Bo(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," "):""}Yl.paste=(t,e)=>{let i=e;if(t.composing&&!Un)return;let r=So?null:i.clipboardData;let n=t.input.shiftKey&&t.input.lastKeyCode!=45;if(r&&_o(t,Bo(r),r.getData("text/html"),n,i))i.preventDefault();else $o(t,i)};class jo{constructor(t,e,i){this.slice=t;this.move=e;this.node=i}}const qo=Jn?"altKey":"ctrlKey";Xl.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(uo(i));let l;if(s&&s.pos>=n.from&&s.pos<=(n instanceof Zr?n.to-1:n.to));else if(r&&r.mightDrag){l=Zr.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=Zr.create(t.state.doc,e.posBefore)}let o=(l||t.state.selection).content(),{dom:u,text:f}=Rl(t,o);i.dataTransfer.clearData();i.dataTransfer.setData(So?"Text":"text/html",u.innerHTML);i.dataTransfer.effectAllowed="copyMove";if(!So)i.dataTransfer.setData("text/plain",f);t.dragging=new jo(o,!i[qo],l)};Xl.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{if(t.dragging==e)t.dragging=null}),50)};Yl.dragover=Yl.dragenter=(t,e)=>e.preventDefault();Yl.drop=(t,e)=>{let i=e;let r=t.dragging;t.dragging=null;if(!i.dataTransfer)return;let n=t.posAtCoords(uo(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=Nl(t,Bo(i.dataTransfer),So?null:i.dataTransfer.getData("text/html"),false,s)}let o=!!(r&&!i[qo]);if(t.someProp("handleDrop",(e=>e(t,i,l||ve.empty,o)))){i.preventDefault();return}if(!l)return;i.preventDefault();let u=l?Dr(t.state.doc,s.pos,l):s.pos;if(u==null)u=s.pos;let f=t.state.tr;if(o){let{node:t}=r;if(t)t.replace(f);else f.deleteSelection()}let h=f.mapping.map(u);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&&Zr.isSelectable(l.content.firstChild)&&d.nodeAfter&&d.nodeAfter.sameMarkup(l.content.firstChild)){f.setSelection(new Zr(d))}else{let e=f.mapping.map(u);f.mapping.maps[f.mapping.maps.length-1].forEach(((t,i,r,n)=>e=n));f.setSelection(dl(t,d,f.doc.resolve(e)))}t.focus();t.dispatch(f.setMeta("uiEvent","drop"))};Xl.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()))nl(t)}),20)}};Xl.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}};Xl.beforeinput=(t,e)=>{let i=e;if(zn&&Un&&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,xn(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 Yl)Xl[t]=Yl[t];function Ro(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 No{constructor(t,e){this.toDOM=t;this.spec=e||Jo;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 Io(n-i,n-i,this)}valid(){return true}eq(t){return this==t||t instanceof No&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&Ro(this.spec,t.spec))}destroy(t){if(this.spec.destroy)this.spec.destroy(t)}}class zo{constructor(t,e){this.attrs=t;this.spec=e||Jo}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 Io(n,s,this)}valid(t,e){return e.from<e.to}eq(t){return this==t||t instanceof zo&&Ro(this.attrs,t.attrs)&&Ro(this.spec,t.spec)}static is(t){return t.type instanceof zo}destroy(){}}class To{constructor(t,e){this.attrs=t;this.spec=e||Jo}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 Io(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 To&&Ro(this.attrs,t.attrs)&&Ro(this.spec,t.spec)}destroy(){}}class Io{constructor(t,e,i){this.from=t;this.to=e;this.type=i}copy(t,e){return new Io(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 Io(t,t,new No(e,i))}static inline(t,e,i,r){return new Io(t,e,new zo(i,r))}static node(t,e,i,r){return new Io(t,e,new To(i,r))}get spec(){return this.type.spec}get inline(){return this.type instanceof zo}get widget(){return this.type instanceof No}}const Po=[],Jo={};class Lo{constructor(t,e){this.local=t.length?t:Po;this.children=e.length?e:Po}static create(t,e){return e.length?Xo(e,t,0,Jo):Uo}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==Uo||t.maps.length==0)return this;return this.mapInner(t,e,0,0,i||Jo)}mapInner(t,e,i,r,n){let s;for(let l=0;l<this.local.length;l++){let o=this.local[l].map(t,i,r);if(o&&o.type.valid(e,o))(s||(s=[])).push(o);else if(n.onRemove)n.onRemove(this.local[l].spec)}if(this.children.length)return Ho(this.children,s||[],t,e,i,r,n);else return s?new Lo(s.sort(Yo),Po):Uo}add(t,e){if(!e.length)return this;if(this==Uo)return Lo.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,o;if(!(o=Vo(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,o,l+1);else r.splice(n,0,s,s+t.nodeSize,Xo(o,t,l+1,Jo));n+=3}));let s=Zo(n?Go(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 Lo(s.length?this.local.concat(s).sort(Yo):this.local,r||this.children)}remove(t){if(t.length==0||this==Uo)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 o=i[r+2].removeInner(n,s+1);if(o!=Uo){i[r+2]=o}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 Lo(r,i):Uo}forChild(t,e){if(this==Uo)return this;if(e.isLeaf)return Lo.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 zo){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 Lo(r.sort(Yo),Po);return i?new Wo([t,i]):t}return i||Uo}eq(t){if(this==t)return true;if(!(t instanceof Lo)||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 Qo(this.localsInner(t))}localsInner(t){if(this==Uo)return Po;if(t.inlineContent||!this.local.some(zo.is))return this.local;let e=[];for(let t=0;t<this.local.length;t++){if(!(this.local[t].type instanceof zo))e.push(this.local[t])}return e}}Lo.empty=new Lo([],[]);Lo.removeOverlap=Qo;const Uo=Lo.empty;class Wo{constructor(t){this.members=t}map(t,e){const i=this.members.map((i=>i.map(t,e,Jo)));return Wo.from(i)}forChild(t,e){if(e.isLeaf)return Lo.empty;let i=[];for(let r=0;r<this.members.length;r++){let n=this.members[r].forChild(t,e);if(n==Uo)continue;if(n instanceof Wo)i=i.concat(n.members);else i.push(n)}return Wo.from(i)}eq(t){if(!(t instanceof Wo)||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?Qo(i?e:e.sort(Yo)):Po}static from(t){switch(t.length){case 0:return Uo;case 1:return t[0];default:return new Wo(t.every((t=>t instanceof Lo))?t:t.reduce(((t,e)=>t.concat(e instanceof Lo?e:e.members)),[]))}}}function Ho(t,e,i,r,n,s,l){let o=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<o.length;n+=3){let s=o[n+1];if(s<0||t>s+e-r)continue;let u=o[n]+e-r;if(i>=u){o[n+1]=t<=u?-2:-1}else if(t>=e&&l){o[n]+=l;o[n+1]+=l}}r+=l}));e=i.maps[t].map(e,-1)}let u=false;for(let e=0;e<o.length;e+=3)if(o[e+1]<0){if(o[e+1]==-2){u=true;o[e+1]=-1;continue}let f=i.map(t[e]+s),h=f-n;if(h<0||h>=r.content.size){u=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=o[e+2].mapInner(i,m,f+1,t[e]+s+1,l);if(r!=Uo){o[e]=h;o[e+1]=c;o[e+2]=r}else{o[e+1]=-2;u=true}}else{u=true}}if(u){let u=Ko(o,t,e,i,n,s,l);let f=Xo(u,r,0,l);e=f.local;for(let t=0;t<o.length;t+=3)if(o[t+1]<0){o.splice(t,3);t-=3}for(let t=0,e=0;t<f.children.length;t+=3){let i=f.children[t];while(e<o.length&&o[e]<i)e+=3;o.splice(e,0,f.children[t],f.children[t+1],f.children[t+2])}}return new Lo(e.sort(Yo),o)}function Zo(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 Io(n.from+e,n.to+e,n.type))}return i}function Ko(t,e,i,r,n,s,l){function o(t,e){for(let s=0;s<t.local.length;s++){let o=t.local[s].map(r,n,e);if(o)i.push(o);else if(l.onRemove)l.onRemove(t.local[s].spec)}for(let i=0;i<t.children.length;i+=3)o(t.children[i+2],t.children[i]+e+1)}for(let i=0;i<t.length;i+=3)if(t[i+1]==-1)o(t[i+2],e[i]+s+1);return i}function Vo(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 Go(t){let e=[];for(let i=0;i<t.length;i++)if(t[i]!=null)e.push(t[i]);return e}function Xo(t,e,i,r){let n=[],s=false;e.forEach(((e,l)=>{let o=Vo(t,e,l+i);if(o){s=true;let t=Xo(o,e,i+l+1,r);if(t!=Uo)n.push(l,l+e.nodeSize,t)}}));let l=Zo(s?Go(t):t,-i).sort(Yo);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 Lo(l,n):Uo}function Yo(t,e){return t.from-e.from||t.to-e.to}function Qo(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);tu(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);tu(e,n,r.copy(s.from,r.to))}break}}}return e}function tu(t,e,i){while(e<t.length&&Yo(i,t[e])>0)e++;t.splice(e,0,i)}function eu(t){let e=[];t.someProp("decorations",(i=>{let r=i(t.state);if(r&&r!=Uo)e.push(r)}));if(t.cursorWrapper)e.push(Lo.create(t.state.doc,[t.cursorWrapper.deco]));return Wo.from(e)}const iu={childList:true,characterData:true,characterDataOldValue:true,attributes:true,attributeOldValue:true,subtree:true};const ru=jn&&qn<=11;class nu{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 su{constructor(t,e){this.view=t;this.handleDOMChange=e;this.queue=[];this.flushingSoon=-1;this.observer=null;this.currentSelection=new nu;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(jn&&qn<=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(ru){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,iu)}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(!pl(this.view))return;if(this.suppressingSelectionUpdates)return nl(this.view);if(jn&&qn<=11&&!this.view.state.selection.empty){let t=this.view.domSelectionRange();if(t.focusNode&&bn(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=mn(i))e.add(i);for(let r=t.anchorNode;r;r=mn(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)&&pl(t)&&!this.ignoreSelectionChange(i);let n=-1,s=-1,l=false,o=[];if(t.editable){for(let t=0;t<e.length;t++){let i=this.registerMutation(e[t],o);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(Rn&&o.length>1){let t=o.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 u=null;if(n<0&&r&&t.input.lastFocus>Date.now()-200&&Math.max(t.input.lastTouch,t.input.lastClick.time)<Date.now()-300&&En(i)&&(u=il(t))&&u.eq(Pr.near(t.state.doc.resolve(0),1))){t.input.lastFocus=0;nl(t);this.currentSelection.set(i);t.scrollToSelection()}else if(n>-1||r){if(n>-1){t.docView.markDirty(n,s);uu(t)}this.handleDOMChange(n,s,l,o);if(t.docView&&t.docView.dirty)t.updateState(t.state);else if(!this.currentSelection.eq(i))nl(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(jn&&qn<=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?pn(r)+1:0;let l=i.localPosFromDOM(t.target,s,-1);let o=n&&n.parentNode==t.target?pn(n):t.target.childNodes.length;let u=i.localPosFromDOM(t.target,o,1);return{from:l,to:u}}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 lu=new WeakMap;let ou=false;function uu(t){if(lu.has(t))return;lu.set(t,null);if(["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1){t.requiresGeckoHackNode=Rn;if(ou)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.");ou=true}}function fu(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 o=t.domAtPos(t.state.selection.anchor);if(bn(o.node,o.offset,s,l))[r,n,s,l]=[s,l,r,n];return{anchorNode:r,anchorOffset:n,focusNode:s,focusOffset:l}}function hu(t,e,i){let{node:r,fromOffset:n,toOffset:s,from:l,to:o}=t.docView.parseRange(e,i);let u=t.domSelectionRange();let f;let h=u.anchorNode;if(h&&t.dom.contains(h.nodeType==1?h:h.parentNode)){f=[{node:h,offset:u.anchorOffset}];if(!En(u))f.push({node:u.focusNode,offset:u.focusOffset})}if(zn&&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")||ai.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:au,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:o}}function au(t){let e=t.pmViewDesc;if(e){return e.parseRule()}else if(t.nodeName=="BR"&&t.parentNode){if(In&&/^(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||In&&/^(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 cu=/^(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 du(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=il(t,e);if(i&&!t.state.selection.eq(i)){if(zn&&Un&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",(e=>e(t,xn(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 o=l.sharedDepth(i);e=l.before(o+1);i=t.state.doc.resolve(i).after(o+1);let u=t.state.selection;let f=hu(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=bu(a.content,f.doc.content,f.from,c,d);if((Pn&&t.input.lastIOSEnter>Date.now()-225||Un)&&n.some((t=>t.nodeType==1&&!cu.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,xn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(!p){if(r&&u instanceof Wr&&!u.empty&&u.$head.sameParent(u.$anchor)&&!t.composing&&!(f.sel&&f.sel.anchor!=f.sel.head)){p={start:u.from,endA:u.to,endB:u.to}}else{if(f.sel){let e=pu(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(zn&&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 Wr){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(jn&&qn<=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((Pn&&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=Pr.findFrom(f.doc.resolve(m.pos+1),1,true))&&k.head==w.pos)&&t.someProp("handleKeyDown",(e=>e(t,xn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&wu(h,p.start,p.endA,m,w)&&t.someProp("handleKeyDown",(e=>e(t,xn(8,"Backspace"))))){if(Un&&zn)t.domObserver.suppressSelectionUpdates();return}if(zn&&Un&&p.endB==p.start)t.input.lastAndroidDelete=Date.now();if(Un&&!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,xn(13,"Enter"))}))}),20)}let D=p.start,v=p.endA;let y,F,E;if(b){if(m.pos==w.pos){if(jn&&qn<=11&&m.parentOffset==0){t.domObserver.suppressSelectionUpdates();setTimeout((()=>nl(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=mu(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=pu(t,y.doc,f.sel);if(e&&!(zn&&Un&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(e.head==D||e.head==y.mapping.map(v)-1)||jn&&e.empty&&e.head==D))y.setSelection(e)}if(F)y.ensureMarks(F);if(s)y.setMeta("composition",s);t.dispatch(y.scrollIntoView())}function pu(t,e,i){if(Math.max(i.anchor,i.head)>e.content.size)return null;return dl(t,e.resolve(i.anchor),e.resolve(i.head))}function mu(t,e){let i=t.firstChild.marks,r=e.firstChild.marks;let n=i,s=r,l,o,u;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){o=n[0];l="add";u=t=>t.mark(o.addToSet(t.marks))}else if(n.length==0&&s.length==1){o=s[0];l="remove";u=t=>t.mark(o.removeFromSet(t.marks))}else{return null}let f=[];for(let t=0;t<e.childCount;t++)f.push(u(e.child(t)));if(me.from(f).eq(t))return{mark:o,type:l}}function wu(t,e,i,r,n){if(!r.parent.isTextblock||i-e<=n.pos-r.pos||gu(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(gu(s,true,true));if(!l.parent.isTextblock||l.pos>i||gu(l,true,false)<i)return false;return r.parent.content.cut(r.parentOffset).eq(l.parent.content)}function gu(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 bu(t,e,i,r,n){let s=t.findDiffStart(e,i);if(s==null)return null;let{a:l,b:o}=t.findDiffEnd(e,i+t.size,i+e.size);if(n=="end"){let t=Math.max(0,s-Math.min(l,o));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&&ku(e.textBetween(s-1,s+1)))s+=t?1:-1;o=s+(o-l);l=s}else if(o<s){let e=r<=s&&r>=o?s-r:0;s-=e;if(s&&s<t.size&&ku(t.textBetween(s-1,s+1)))s+=e?1:-1;l=s+(l-o);o=s}return{start:s,endA:l,endB:o}}function ku(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 Du{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 to;this.prevDirectPlugins=[];this.pluginViews=[];this.requiresGeckoHackNode=false;this.dragging=null;this._props=e;this.state=e.state;this.directPlugins=e.plugins||[];this.directPlugins.forEach(Au);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=Fu(this);yu(this);this.nodeViews=xu(this);this.docView=qs(this.state.doc,vu(this),eu(this),this.dom,this);this.domObserver=new su(this,((t,e,i,r)=>du(this,t,e,i,r)));this.domObserver.start();eo(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)no(this);let e=this._props;this._props=t;if(t.plugins){t.plugins.forEach(Au);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){xo(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=xu(this);if(Mu(t,this.nodeViews)){this.nodeViews=t;n=true}}if(l||e.handleDOMEvents!=this._props.handleDOMEvents){no(this)}this.editable=Fu(this);yu(this);let o=eu(this),u=vu(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,u,o);if(h||!t.selection.eq(r.selection))s=true;let a=f=="preserve"&&s&&this.dom.style.overflowAnchor==null&&Xn(this);if(s){this.domObserver.stop();let e=h&&(jn||zn)&&!this.composing&&!r.selection.empty&&!t.selection.empty&&Eu(r.selection,t.selection);if(h){let i=zn?this.trackWrites=this.domSelectionRange().focusNode:null;if(n||!this.docView.update(t.doc,u,o,this)){this.docView.updateOuterDeco([]);this.docView.destroy();this.docView=qs(t.doc,u,o,this.dom,this)}if(i&&!this.trackWrites)e=true}if(e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&wl(this))){nl(this,e)}else{al(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){Qn(a)}}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof Zr){let e=this.docView.domAfterPos(this.state.selection.from);if(e.nodeType==1)Gn(this,e.getBoundingClientRect(),t)}else{Gn(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 jo(t.slice,t.move,r<0?undefined:Zr.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(jn){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)is(this.dom);nl(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 as(this,t)}coordsAtPos(t,e=1){return ms(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 xs(this,e||this.state,t)}pasteHTML(t,e){return _o(this,"",t,false,e||new ClipboardEvent("paste"))}pasteText(t,e){return _o(this,t,null,true,e||new ClipboardEvent("paste"))}destroy(){if(!this.docView)return;ro(this);this.destroyPluginViews();if(this.mounted){this.docView.update(this.state.doc,[],eu(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 oo(this,t)}dispatch(t){let e=this._props.dispatchTransaction;if(e)e.call(this,t);else this.updateState(this.state.apply(t))}domSelectionRange(){return In&&this.root.nodeType===11&&Mn(this.dom.ownerDocument)==this.dom?fu(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function vu(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[Io.node(0,t.state.doc.content.size,e)]}function yu(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:Io.widget(t.state.selection.head,e,{raw:true,marks:t.markCursor})}}else{t.cursorWrapper=null}}function Fu(t){return!t.someProp("editable",(e=>e(t.state)===false))}function Eu(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 xu(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 Mu(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 Au(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 Cu=["p",0],Su=["blockquote",0],Ou=["hr"],$u=["pre",["code",0]],_u=["br"];const Bu={doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return Cu}},blockquote:{content:"block+",group:"block",defining:true,parseDOM:[{tag:"blockquote"}],toDOM(){return Su}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return Ou}},heading:{attrs:{level:{default:1,validate:"number"}},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 $u}},text:{group:"inline"},image:{inline:true,attrs:{src:{validate:"string"},alt:{default:null,validate:"string|null"},title:{default:null,validate:"string|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 _u}}};const ju=["em",0],qu=["strong",0],Ru=["code",0];const Nu={link:{attrs:{href:{validate:"string"},title:{default:null,validate:"string|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 ju}},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 qu}},code:{parseDOM:[{tag:"code"}],toDOM(){return Ru}}};const zu=new fi({nodes:Bu,marks:Nu});const Tu=["ol",0],Iu=["ul",0],Pu=["li",0];const Ju={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?Tu:["ol",{start:t.attrs.order},0]}};const Lu={parseDOM:[{tag:"ul"}],toDOM(){return Iu}};const Uu={parseDOM:[{tag:"li"}],toDOM(){return Pu},defining:true};function Wu(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 Hu(t,e,i){return t.append({ordered_list:Wu(Ju,{content:"list_item+",group:i}),bullet_list:Wu(Lu,{content:"list_item+",group:i}),list_item:Wu(Uu,{content:e})})}function Zu(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),o=false,u=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);u=new ze(t,t,l.depth);if(l.endIndex<l.parent.childCount)l=new ze(n,i.doc.resolve(s.end(l.depth)),l.depth);o=true}let f=sr(u,t,e,l);if(!f)return false;if(r)r(Ku(i.tr,l,f,o,t).scrollIntoView());return true}}function Ku(t,e,i,r,n){let s=me.empty;for(let t=i.length-1;t>=0;t--)s=me.from(i[t].type.create(i[t].attrs,s));t.step(new Xi(e.start-(r?2:0),e.end,e.start,e.end,new ve(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 o=i.length-l;let u=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&&dr(t.doc,u,o)){t.split(u,o);u+=2*o}u+=f.child(i).nodeSize}return t}function Vu(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 o=n.node(-1);if(o.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=me.empty;let s=n.index(-1)?1:n.index(-2)?2:3;for(let t=n.depth-s;t>=n.depth-3;t--)e=me.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(me.from(t.createAndFill()));let o=n.before(n.depth-(s-1));let u=i.tr.replace(o,n.after(-l),new ve(e,4-s,0));let f=-1;u.doc.nodesBetween(o,u.doc.content.size,((t,e)=>{if(f>-1)return false;if(t.isTextblock&&t.content.size==0)f=e+1}));if(f>-1)u.setSelection(Pr.near(u.doc.resolve(f)));r(u.scrollIntoView())}return true}let u=s.pos==n.end()?o.contentMatchAt(0).defaultType:null;let f=i.tr.delete(n.pos,s.pos);let h=u?[e?{type:t,attrs:e}:null,{type:u}]:undefined;if(!dr(f.doc,n.pos,2,h))return false;if(r)r(f.split(n.pos,2,h).scrollIntoView());return true}}function Gu(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 Xu(e,i,t,s);else return Yu(e,i,s)}}function Xu(t,e,i,r){let n=t.tr,s=r.end,l=r.$to.end(r.depth);if(s<l){n.step(new Xi(s-1,l,s,l,new ve(me.from(i.create(null,r.parent.copy())),1,0),1,true));r=new ze(n.doc.resolve(r.$from.pos),n.doc.resolve(l),r.depth)}const o=rr(r);if(o==null)return false;n.lift(r,o);let u=n.mapping.map(s,-1)-1;if(mr(n.doc,u))n.join(u);e(n.scrollIntoView());return true}function Yu(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 o=i.startIndex==0,u=i.endIndex==n.childCount;let f=s.node(-1),h=s.index(-1);if(!f.canReplace(h+(o?0:1),h+1,l.content.append(u?me.empty:me.from(n))))return false;let a=s.pos,c=a+l.nodeSize;r.step(new Xi(a-(o?1:0),c+(u?1:0),a+1,c-1,new ve((o?me.empty:me.from(n.copy(me.empty))).append(u?me.empty:me.from(n.copy(me.empty))),o?0:1,u?0:1),o?0:1));e(r.scrollIntoView());return true}function Qu(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 o=s.parent,u=o.child(l-1);if(u.type!=t)return false;if(i){let r=u.lastChild&&u.lastChild.type==o.type;let n=me.from(r?t.create():null);let l=new ve(me.from(t.create(null,me.from(o.type.create(null,n)))),r?3:1,0);let f=s.start,h=s.end;i(e.tr.step(new Xi(f-(r?3:1),h,f,h,l,1,true)).scrollIntoView())}return true}}var tf={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 ef={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 rf=typeof navigator!="undefined"&&/Mac/.test(navigator.platform);var nf=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var sf=0;sf<10;sf++)tf[48+sf]=tf[96+sf]=String(sf);for(var sf=1;sf<=24;sf++)tf[sf+111]="F"+sf;for(var sf=65;sf<=90;sf++){tf[sf]=String.fromCharCode(sf+32);ef[sf]=String.fromCharCode(sf)}for(var lf in tf)if(!ef.hasOwnProperty(lf))ef[lf]=tf[lf];function of(t){var e=rf&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||nf&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified";var i=!e&&t.key||(t.shiftKey?ef:tf)[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 uf=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function ff(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(uf)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 hf(t){let e=Object.create(null);for(let i in t)e[ff(i)]=t[i];return e}function af(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 cf(t){return new hn({props:{handleKeyDown:df(t)}})}function df(t){let e=hf(t);return function(t,i){let r=of(i),n,s=e[af(r,i)];if(s&&s(t.state,t.dispatch,t))return true;if(r.length==1&&r!=" "){if(i.shiftKey){let n=e[af(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=tf[i.keyCode])&&n!=r){let r=e[af(n,i)];if(r&&r(t.state,t.dispatch,t))return true}}return false}}var pf=200;var mf=function t(){};mf.prototype.append=function t(e){if(!e.length){return this}e=mf.from(e);return!this.length&&e||e.length<pf&&this.leafAppend(e)||this.length<pf&&e.leafPrepend(this)||this.appendInner(e)};mf.prototype.prepend=function t(e){if(!e.length){return this}return mf.from(e).append(this)};mf.prototype.appendInner=function t(e){return new gf(this,e)};mf.prototype.slice=function t(e,i){if(e===void 0)e=0;if(i===void 0)i=this.length;if(e>=i){return mf.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,i))};mf.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};mf.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)}};mf.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};mf.from=function t(e){if(e instanceof mf){return e}return e&&e.length?new wf(e):mf.empty};var wf=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<=pf){return new e(this.values.concat(i.flatten()))}};e.prototype.leafPrepend=function t(i){if(this.length+i.length<=pf){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}(mf);mf.empty=new wf([]);var gf=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}(mf);const bf=500;class kf{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,o;let u=[],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 vf(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];u.push(new vf(i,undefined,undefined,u.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;o=new kf(this.items.slice(0,i).append(f.reverse().concat(u)),this.eventCount-1);return false}}),this.items.length,0);return{remaining:o,transform:s,selection:l}}addTransform(t,e,i,r){let n=[],s=this.eventCount;let l=this.items,o=!r&&l.length?l.get(l.length-1):null;for(let i=0;i<t.steps.length;i++){let u=t.steps[i].invert(t.docs[i]);let f=new vf(t.mapping.maps[i],u,e),h;if(h=o&&o.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)o=f}let u=s-i.depth;if(u>Ff){l=Df(l,u);s-=u}return new kf(l.append(n),s)}remapping(t,e){let i=new Pi;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 kf(this.items.append(t.map((t=>new vf(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 o=e;this.items.forEach((e=>{let r=n.getMirror(--o);if(r==null)return;s=Math.min(s,r);let u=n.maps[r];if(e.step){let s=t.steps[r].invert(t.docs[r]);let f=e.selection&&e.selection.map(n.slice(o+1,r));if(f)l++;i.push(new vf(u,s,f))}else{i.push(new vf(u))}}),r);let u=[];for(let t=e;t<s;t++)u.push(new vf(n.maps[t]));let f=this.items.slice(0,r).append(u).append(i);let h=new kf(f,l);if(h.emptyItemCount()>bf)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 o=s.selection&&s.selection.map(e.slice(i));if(o)n++;let u=new vf(l.invert(),t,o),f,h=r.length-1;if(f=r.length&&r[h].merge(u))r[h]=f;else r.push(u)}}else if(s.map){i--}}),this.items.length,0);return new kf(mf.from(r.reverse()),n)}}kf.empty=new kf(mf.empty,0);function Df(t,e){let i;t.forEach(((t,r)=>{if(t.selection&&e--==0){i=r;return false}}));return t.slice(i)}class vf{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 vf(e.getMap().invert(),e,this.selection)}}}class yf{constructor(t,e,i,r,n){this.done=t;this.undone=e;this.prevRanges=i;this.prevTime=r;this.prevComposition=n}}const Ff=20;function Ef(t,e,i,r){let n=i.getMeta(_f),s;if(n)return n.historyState;if(i.getMeta(Bf))t=new yf(t.done,t.undone,null,0,-1);let l=i.getMeta("appendedTransaction");if(i.steps.length==0){return t}else if(l&&l.getMeta(_f)){if(l.getMeta(_f).redo)return new yf(t.done.addTransform(i,undefined,r,$f(e)),t.undone,Mf(i.mapping.maps[i.steps.length-1]),t.prevTime,t.prevComposition);else return new yf(t.done,t.undone.addTransform(i,undefined,r,$f(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||!xf(i,t.prevRanges));let o=l?Af(t.prevRanges,i.mapping):Mf(i.mapping.maps[i.steps.length-1]);return new yf(t.done.addTransform(i,s?e.selection.getBookmark():undefined,r,$f(e)),kf.empty,o,i.time,n==null?t.prevComposition:n)}else if(s=i.getMeta("rebased")){return new yf(t.done.rebased(i,s),t.undone.rebased(i,s),Af(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}else{return new yf(t.done.addMaps(i.mapping.maps),t.undone.addMaps(i.mapping.maps),Af(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}}function xf(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 Mf(t){let e=[];t.forEach(((t,i,r,n)=>e.push(r,n)));return e}function Af(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 Cf(t,e,i,r){let n=$f(e);let s=_f.get(e).spec.config;let l=(r?t.undone:t.done).popEvent(e,n);if(!l)return;let o=l.selection.resolve(l.transform.doc);let u=(r?t.done:t.undone).addTransform(l.transform,e.selection.getBookmark(),s,n);let f=new yf(r?u:l.remaining,r?l.remaining:u,null,0,-1);i(l.transform.setSelection(o).setMeta(_f,{redo:r,historyState:f}).scrollIntoView())}let Sf=false,Of=null;function $f(t){let e=t.plugins;if(Of!=e){Sf=false;Of=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){Sf=true;break}}return Sf}const _f=new dn("history");const Bf=new dn("closeHistory");function jf(t={}){t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500};return new hn({key:_f,state:{init(){return new yf(kf.empty,kf.empty,null,0,-1)},apply(e,i,r){return Ef(i,r,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(t,e){let i=e.inputType;let r=i=="historyUndo"?qf:i=="historyRedo"?Rf:null;if(!r)return false;e.preventDefault();return r(t.state,t.dispatch)}}}})}const qf=(t,e)=>{let i=_f.getState(t);if(!i||i.done.eventCount==0)return false;if(e)Cf(i,t,e,false);return true};const Rf=(t,e)=>{let i=_f.getState(t);if(!i||i.undone.eventCount==0)return false;if(e)Cf(i,t,e,true);return true};const Nf=(t,e)=>{if(t.selection.empty)return false;if(e)e(t.tr.deleteSelection().scrollIntoView());return true};function zf(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("backward",t):i.parentOffset>0))return null;return i}const Tf=(t,e,i)=>{let r=zf(t,i);if(!r)return false;let n=Jf(r);if(!n){let i=r.blockRange(),n=i&&rr(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&&lh(t,n,e))return true;if(r.parent.content.size==0&&(If(s,"end")||Zr.isSelectable(s))){let i=vr(t.doc,r.before(),r.after(),ve.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(If(s,"end")?Pr.findFrom(r.doc.resolve(r.mapping.map(n.pos,-1)),-1):Zr.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 If(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 Pf=(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=Jf(r)}let l=s&&s.nodeBefore;if(!l||!Zr.isSelectable(l))return false;if(e)e(t.tr.setSelection(Zr.create(t.doc,s.pos-l.nodeSize)).scrollIntoView());return true};function Jf(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 Lf(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 Uf=(t,e,i)=>{let r=Lf(t,i);if(!r)return false;let n=Hf(r);if(!n)return false;let s=n.nodeAfter;if(lh(t,n,e))return true;if(r.parent.content.size==0&&(If(s,"start")||Zr.isSelectable(s))){let i=vr(t.doc,r.before(),r.after(),ve.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(If(s,"start")?Pr.findFrom(r.doc.resolve(r.mapping.map(n.pos)),1):Zr.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 Wf=(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=Hf(r)}let l=s&&s.nodeAfter;if(!l||!Zr.isSelectable(l))return false;if(e)e(t.tr.setSelection(Zr.create(t.doc,s.pos)).scrollIntoView());return true};function Hf(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 Zf=(t,e)=>{let i=t.selection,r=i instanceof Zr,n;if(r){if(i.node.isTextblock||!mr(t.doc,i.from))return false;n=i.from}else{n=gr(t.doc,i.from,-1);if(n==null)return false}if(e){let i=t.tr.join(n);if(r)i.setSelection(Zr.create(i.doc,n-t.doc.resolve(n).nodeBefore.nodeSize));e(i.scrollIntoView())}return true};const Kf=(t,e)=>{let i=t.selection,r;if(i instanceof Zr){if(i.node.isTextblock||!mr(t.doc,i.to))return false;r=i.to}else{r=gr(t.doc,i.to,1);if(r==null)return false}if(e)e(t.tr.join(r).scrollIntoView());return true};const Vf=(t,e)=>{let{$from:i,$to:r}=t.selection;let n=i.blockRange(r),s=n&&rr(n);if(s==null)return false;if(e)e(t.tr.lift(n,s).scrollIntoView());return true};const Gf=(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 Xf(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 Yf=(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=Xf(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(Pr.near(n.doc.resolve(r),1));e(n.scrollIntoView())}return true};const Qf=(t,e)=>{let i=t.selection,{$from:r,$to:n}=i;if(i instanceof Vr||r.parent.inlineContent||n.parent.inlineContent)return false;let s=Xf(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(Wr.create(l.doc,i+1));e(l.scrollIntoView())}return true};const th=(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(dr(t.doc,r)){if(e)e(t.tr.split(r).scrollIntoView());return true}}let r=i.blockRange(),n=r&&rr(r);if(n==null)return false;if(e)e(t.tr.lift(r,n).scrollIntoView());return true};function eh(t){return(e,i)=>{let{$from:r,$to:n}=e.selection;if(e.selection instanceof Zr&&e.selection.node.isBlock){if(!r.parentOffset||!dr(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 Wr||e.selection instanceof Vr)l.deleteSelection();let o=r.depth==0?null:Xf(r.node(-1).contentMatchAt(r.indexAfter(-1)));let u=t&&t(n.parent,s);let f=u?[u]:s&&o?[{type:o}]:undefined;let h=dr(l.doc,l.mapping.map(r.pos),1,f);if(!f&&!h&&dr(l.doc,l.mapping.map(r.pos),1,o?[{type:o}]:undefined)){if(o)f=[{type:o}];h=true}if(h){l.split(l.mapping.map(r.pos),1,f);if(!s&&!r.parentOffset&&r.parent.type!=o){let t=l.mapping.map(r.before()),e=l.doc.resolve(t);if(o&&r.node(-1).canReplaceWith(e.index(),e.index()+1,o))l.setNodeMarkup(l.mapping.map(r.before()),o)}}i(l.scrollIntoView())}return true}}const ih=eh();const rh=(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(Zr.create(t.doc,n)));return true};const nh=(t,e)=>{if(e)e(t.tr.setSelection(new Vr(t.doc)));return true};function sh(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||mr(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 lh(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s,l;if(r.type.spec.isolating||n.type.spec.isolating)return false;if(sh(t,e,i))return true;let o=e.parent.canReplace(e.index(),e.index()+1);if(o&&(s=(l=r.contentMatchAt(r.childCount)).findWrapping(n.type))&&l.matchType(s[0]||n.type).validEnd){if(i){let l=e.pos+n.nodeSize,o=me.empty;for(let t=s.length-1;t>=0;t--)o=me.from(s[t].create(null,o));o=me.from(r.copy(o));let u=t.tr.step(new Xi(e.pos-1,l,e.pos,l,new ve(o,1,0),s.length,true));let f=l+2*s.length;if(mr(u.doc,f))u.join(f);i(u.scrollIntoView())}return true}let u=Pr.findFrom(e,1);let f=u&&u.$from.blockRange(u.$to),h=f&&rr(f);if(h!=null&&h>=e.depth){if(i)i(t.tr.lift(f,h).scrollIntoView());return true}if(o&&If(n,"start",true)&&If(r,"end")){let s=r,l=[];for(;;){l.push(s);if(s.isTextblock)break;s=s.lastChild}let o=n,u=1;for(;!o.isTextblock;o=o.firstChild)u++;if(s.canReplace(s.childCount,s.childCount,o.content)){if(i){let r=me.empty;for(let t=l.length-1;t>=0;t--)r=me.from(l[t].copy(r));let s=t.tr.step(new Xi(e.pos-l.length,e.pos+n.nodeSize,e.pos+u,e.pos+n.nodeSize-u,new ve(r,l.length,0),0,true));i(s.scrollIntoView())}return true}}return false}function oh(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(Wr.create(e.doc,t<0?n.start(s):n.end(s))));return true}}const uh=oh(-1);const fh=oh(1);function hh(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),o=l&&sr(l,t,e);if(!o)return false;if(r)r(i.tr.wrap(l,o).scrollIntoView());return true}}function ah(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 ch(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 dh(t,e=null){return function(i,r){let{empty:n,$cursor:s,ranges:l}=i.selection;if(n&&!s||!ch(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:o}=l[i];if(n){s.removeMark(r.pos,o.pos,t)}else{let i=r.pos,n=o.pos,l=r.nodeAfter,u=o.nodeBefore;let f=l&&l.isText?/^\s*/.exec(l.text)[0].length:0;let h=u&&u.isText?/\s*$/.exec(u.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 ph(...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 mh=ph(Nf,Tf,Pf);let wh=ph(Nf,Uf,Wf);const gh={Enter:ph(Gf,Qf,th,ih),"Mod-Enter":Yf,Backspace:mh,"Mod-Backspace":mh,"Shift-Backspace":mh,Delete:wh,"Mod-Delete":wh,"Mod-a":nh};const bh={"Ctrl-h":gh["Backspace"],"Alt-Backspace":gh["Mod-Backspace"],"Ctrl-d":gh["Delete"],"Ctrl-Alt-Backspace":gh["Mod-Delete"],"Alt-Delete":gh["Mod-Delete"],"Alt-d":gh["Mod-Delete"],"Ctrl-a":uh,"Ctrl-e":fh};for(let t in gh)bh[t]=gh[t];const kh=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os!="undefined"&&os.platform?os.platform()=="darwin":false;const Dh=kh?bh:gh;function vh(t={}){return new hn({view(e){return new yh(e,t)}})}class yh{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=Dr(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 Fh extends Pr{constructor(t){super(t,t)}map(t,e){let i=t.resolve(e.map(this.head));return Fh.valid(i)?new Fh(i):Pr.near(i)}content(){return ve.empty}eq(t){return t instanceof Fh&&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 Fh(t.resolve(e.pos))}getBookmark(){return new Eh(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!xh(t)||!Mh(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&&Fh.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(Fh.valid(l))return l}for(;;){let s=e>0?n.firstChild:n.lastChild;if(!s){if(n.isAtom&&!n.isText&&!Zr.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(Fh.valid(l))return l}return null}}}Fh.prototype.visible=false;Fh.findFrom=Fh.findGapCursorFrom;Pr.jsonID("gapcursor",Fh);class Eh{constructor(t){this.pos=t}map(t){return new Eh(t.map(this.pos))}resolve(t){let e=t.resolve(this.pos);return Fh.valid(e)?new Fh(e):Pr.near(e)}}function xh(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 Mh(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 Ah(){return new hn({props:{decorations:_h,createSelectionBetween(t,e,i){return e.pos==i.pos&&Fh.valid(i)?new Fh(i):null},handleClick:Oh,handleKeyDown:Ch,handleDOMEvents:{beforeinput:$h}}})}const Ch=df({ArrowLeft:Sh("horiz",-1),ArrowRight:Sh("horiz",1),ArrowUp:Sh("vert",-1),ArrowDown:Sh("vert",1)});function Sh(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,o=s.empty;if(s instanceof Wr){if(!n.endOfTextblock(i)||l.depth==0)return false;o=false;l=t.doc.resolve(e>0?l.after():l.before())}let u=Fh.findGapCursorFrom(l,e,o);if(!u)return false;if(r)r(t.tr.setSelection(new Fh(u)));return true}}function Oh(t,e,i){if(!t||!t.editable)return false;let r=t.state.doc.resolve(e);if(!Fh.valid(r))return false;let n=t.posAtCoords({left:i.clientX,top:i.clientY});if(n&&n.inside>-1&&Zr.isSelectable(t.state.doc.nodeAt(n.inside)))return false;t.dispatch(t.state.tr.setSelection(new Fh(r)));return true}function $h(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof Fh))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=me.empty;for(let t=r.length-1;t>=0;t--)n=me.from(r[t].createAndFill(null,n));let s=t.state.tr.replace(i.pos,i.pos,new ve(n,0,0));s.setSelection(Wr.near(s.doc.resolve(i.pos+1)));t.dispatch(s);return false}function _h(t){if(!(t.selection instanceof Fh))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return Lo.create(t.doc,[Io.widget(t.selection.head,e,{key:"gapcursor"})])}function Bh(){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++)jh(t,arguments[e]);return t}function jh(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++)jh(t,e[i])}else{throw new RangeError("Unsupported child node: "+e)}}const qh="http://www.w3.org/2000/svg";const Rh="http://www.w3.org/1999/xlink";const Nh="ProseMirror-icon";function zh(t){let e=0;for(let i=0;i<t.length;i++)e=(e<<5)-e+t.charCodeAt(i)|0;return e}function Th(t,e){let i=(t.nodeType==9?t:t.ownerDocument)||document;let r=i.createElement("div");r.className=Nh;if(e.path){let{path:n,width:s,height:l}=e;let o="pm-icon-"+zh(n).toString(16);if(!i.getElementById(o))Ih(t,o,e);let u=r.appendChild(i.createElementNS(qh,"svg"));u.style.width=s/l+"em";let f=u.appendChild(i.createElementNS(qh,"use"));f.setAttributeNS(Rh,"href",/([^#]*)/.exec(i.location.toString())[1]+"#"+o)}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 Ih(t,e,i){let[r,n]=t.nodeType==9?[t,t.body]:[t.ownerDocument||document,t];let s=r.getElementById(Nh+"-collection");if(!s){s=r.createElementNS(qh,"svg");s.id=Nh+"-collection";s.style.display="none";n.insertBefore(s,n.firstChild)}let l=r.createElementNS(qh,"symbol");l.id=e;l.setAttribute("viewBox","0 0 "+i.width+" "+i.height);let o=l.appendChild(r.createElementNS(qh,"path"));o.setAttribute("d",i.path);s.appendChild(l)}const Ph="ProseMirror-menu";class Jh{constructor(t){this.spec=t}render(t){let e=this.spec;let i=e.render?e.render(t):e.icon?Th(t.root,e.icon):e.label?Bh("div",null,Lh(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",Lh(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(Ph+"-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;oa(i,Ph+"-disabled",!r)}if(e.active){let n=r&&e.active(t)||false;oa(i,Ph+"-active",n)}return true}return{dom:i,update:r}}}function Lh(t,e){return t._props.translate?t._props.translate(e):e}let Uh={time:0,node:null};function Wh(t){Uh.time=Date.now();Uh.node=t.target}function Hh(t){return Date.now()-100<Uh.time&&Uh.node&&t.contains(Uh.node)}class Zh{constructor(t,e={}){this.options=e;this.options=e||{};this.content=Array.isArray(t)?t:[t]}render(t){let e=Kh(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Bh("div",{class:Ph+"-dropdown "+(this.options.class||""),style:this.options.css},Lh(t,this.options.label||""));if(this.options.title)r.setAttribute("title",Lh(t,this.options.title));let n=Bh("div",{class:Ph+"-dropdown-wrap"},r);let s=null;let l=null;let o=()=>{if(s&&s.close()){s=null;i.removeEventListener("mousedown",l)}};r.addEventListener("mousedown",(t=>{t.preventDefault();Wh(t);if(s){o()}else{s=this.expand(n,e.dom);i.addEventListener("mousedown",l=()=>{if(!Hh(n))o()})}}));function u(t){let i=e.update(t);n.style.display=i?"":"none";return i}return{dom:n,update:u}}expand(t,e){let i=Bh("div",{class:Ph+"-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 Kh(t,e){let i=[],r=[];for(let n=0;n<t.length;n++){let{dom:s,update:l}=t[n].render(e);i.push(Bh("div",{class:Ph+"-dropdown-item"},s));r.push(l)}return{dom:i,update:Vh(r,i)}}function Vh(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 Gh{constructor(t,e={}){this.options=e;this.content=Array.isArray(t)?t:[t]}render(t){let e=Kh(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Bh("div",{class:Ph+"-submenu-label"},Lh(t,this.options.label||""));let n=Bh("div",{class:Ph+"-submenu-wrap"},r,Bh("div",{class:Ph+"-submenu"},e.dom));let s=null;r.addEventListener("mousedown",(t=>{t.preventDefault();Wh(t);oa(n,Ph+"-submenu-wrap-active",false);if(!s)i.addEventListener("mousedown",s=()=>{if(!Hh(n)){n.classList.remove(Ph+"-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 Xh(t,e){let i=document.createDocumentFragment();let r=[],n=[];for(let s=0;s<e.length;s++){let l=e[s],o=[],u=[];for(let e=0;e<l.length;e++){let{dom:r,update:n}=l[e].render(t);let s=Bh("span",{class:Ph+"item"},r);i.appendChild(s);u.push(s);o.push(n)}if(o.length){r.push(Vh(o,u));if(s<e.length-1)n.push(i.appendChild(Yh()))}}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 Yh(){return Bh("span",{class:Ph+"separator"})}const Qh={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 ta=new Jh({title:"Join with above block",run:Zf,select:t=>Zf(t),icon:Qh.join});const ea=new Jh({title:"Lift out of enclosing block",run:Vf,select:t=>Vf(t),icon:Qh.lift});const ia=new Jh({title:"Select parent node",run:rh,select:t=>rh(t),icon:Qh.selectParentNode});let ra=new Jh({title:"Undo last change",run:qf,enable:t=>qf(t),icon:Qh.undo});let na=new Jh({title:"Redo last undone change",run:Rf,enable:t=>Rf(t),icon:Qh.redo});function sa(t,e){let i={run(i,r){return hh(t,e.attrs)(i,r)},select(i){return hh(t,e.attrs)(i)}};for(let t in e)i[t]=e[t];return new Jh(i)}function la(t,e){let i=ah(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 Jh(r)}function oa(t,e,i){if(i)t.classList.add(e);else t.classList.remove(e)}const ua="ProseMirror-menubar";function fa(){if(typeof navigator=="undefined")return false;let t=navigator.userAgent;return!/Edge\/\d/.test(t)&&/AppleWebKit/.test(t)&&/Mobile\/\w+/.test(t)}function ha(t){return new hn({view(e){return new aa(e,t)}})}class aa{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=Bh("div",{class:ua+"-wrapper"});this.menu=this.wrapper.appendChild(Bh("div",{class:ua}));this.menu.className=ua;if(t.dom.parentNode)t.dom.parentNode.replaceChild(this.wrapper,t.dom);this.wrapper.appendChild(t.dom);let{dom:i,update:r}=Xh(this.editorView,this.options.content);this.contentUpdate=r;this.menu.appendChild(i);this.update();if(e.floating&&!fa()){this.updateFloat();let t=pa(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[ca(t)?0:e.length-1];if(!i)return;let r=this.menu.getBoundingClientRect();if(i.top<r.bottom&&i.bottom>r.top){let t=da(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=Bh("div",{class:ua+"-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 ca(t){if(t.anchorNode==t.focusNode)return t.anchorOffset>t.focusOffset;return t.anchorNode.compareDocumentPosition(t.focusNode)==Node.DOCUMENT_POSITION_FOLLOWING}function da(t){for(let e=t.parentNode;e;e=e.parentNode)if(e.scrollHeight>e.clientHeight)return e}function pa(t){let e=[t.ownerDocument.defaultView||window];for(let i=t.parentNode;i;i=i.parentNode)e.push(i);return e}class ma{constructor(t,e,i={}){this.match=t;this.match=t;this.handler=typeof e=="string"?wa(e):e;this.undoable=i.undoable!==false;this.inCode=i.inCode||false}}function wa(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 ga=500;function ba({rules:t}){let e=new hn({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 ka(i,r,n,s,t,e)},handleDOMEvents:{compositionend:i=>{setTimeout((()=>{let{$cursor:r}=i.state.selection;if(r)ka(i,r.pos,r.pos,"",t,e)}))}}},isInputRules:true});return e}function ka(t,e,i,r,n,s){if(t.composing)return false;let l=t.state,o=l.doc.resolve(e);let u=o.parent.textBetween(Math.max(0,o.parentOffset-ga),o.parentOffset,null,"")+r;for(let f=0;f<n.length;f++){let h=n[f];if(o.parent.type.spec.code){if(!h.inCode)continue}else if(h.inCode==="only"){continue}let a=h.match.exec(u);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 Da=(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 va=new ma(/--$/,"—");const ya=new ma(/\.\.\.$/,"…");const Fa=new ma(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");const Ea=new ma(/"$/,"”");const xa=new ma(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");const Ma=new ma(/'$/,"’");const Aa=[Fa,Ea,xa,Ma];function Ca(t,e,i=null,r){return new ma(t,((t,n,s,l)=>{let o=i instanceof Function?i(n):i;let u=t.tr.delete(s,l);let f=u.doc.resolve(s),h=f.blockRange(),a=h&&sr(h,e,o);if(!a)return null;u.wrap(h,a);let c=u.doc.resolve(s-1).nodeBefore;if(c&&c.type==e&&mr(u.doc,s-1)&&(!r||r(n,c)))u.join(s-1);return u}))}function Sa(t,e,i=null){return new ma(t,((t,r,n,s)=>{let l=t.doc.resolve(n);let o=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,o)}))}const Oa="ProseMirror-prompt";function $a(t){let e=document.body.appendChild(document.createElement("div"));e.className=Oa;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=Oa+"-submit";s.textContent="OK";let l=document.createElement("button");l.type="button";l.className=Oa+"-cancel";l.textContent="Cancel";l.addEventListener("click",r);let o=e.appendChild(document.createElement("form"));if(t.title)o.appendChild(document.createElement("h5")).textContent=t.title;n.forEach((t=>{o.appendChild(document.createElement("div")).appendChild(t)}));let u=o.appendChild(document.createElement("div"));u.className=Oa+"-buttons";u.appendChild(s);u.appendChild(document.createTextNode(" "));u.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=_a(t.fields,n);if(e){r();t.callback(e)}};o.addEventListener("submit",(t=>{t.preventDefault();h()}));o.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=o.elements[0];if(a)a.focus()}function _a(t,e){let i=Object.create(null),r=0;for(let n in t){let s=t[n],l=e[r++];let o=s.read(l),u=s.validate(o);if(u){Ba(l,u);return null}i[n]=s.clean(o)}return i}function Ba(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 ja{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 qa extends ja{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 Ra(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 Na(t){return new Jh({title:"Insert image",label:"Image",enable(e){return Ra(e,t)},run(e,i,r){let{from:n,to:s}=e.selection,l=null;if(e.selection instanceof Zr&&e.selection.node.type==t)l=e.selection.node.attrs;$a({title:"Insert image",fields:{src:new qa({label:"Location",required:true,value:l&&l.src}),title:new qa({label:"Title",value:l&&l.title}),alt:new qa({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 za(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 Jh(i)}function Ta(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 Ia(t,e){let i={active(e){return Ta(e,t)}};for(let t in e)i[t]=e[t];return za(dh(t),i)}function Pa(t){return new Jh({title:"Add or remove link",icon:Qh.link,active(e){return Ta(e,t)},enable(t){return!t.selection.empty},run(e,i,r){if(Ta(e,t)){dh(t)(e,i);return true}$a({title:"Create a link",fields:{href:new qa({label:"Link target",required:true}),title:new qa({label:"Title"})},callback(e){dh(t,e)(r.state,r.dispatch);r.focus()}})}})}function Ja(t,e){return za(Zu(t,e.attrs),e)}function La(t){let e={};let i;if(i=t.marks.strong)e.toggleStrong=Ia(i,{title:"Toggle strong style",icon:Qh.strong});if(i=t.marks.em)e.toggleEm=Ia(i,{title:"Toggle emphasis",icon:Qh.em});if(i=t.marks.code)e.toggleCode=Ia(i,{title:"Toggle code font",icon:Qh.code});if(i=t.marks.link)e.toggleLink=Pa(i);let r;if(r=t.nodes.image)e.insertImage=Na(r);if(r=t.nodes.bullet_list)e.wrapBulletList=Ja(r,{title:"Wrap in bullet list",icon:Qh.bulletList});if(r=t.nodes.ordered_list)e.wrapOrderedList=Ja(r,{title:"Wrap in ordered list",icon:Qh.orderedList});if(r=t.nodes.blockquote)e.wrapBlockQuote=sa(r,{title:"Wrap in block quote",icon:Qh.blockquote});if(r=t.nodes.paragraph)e.makeParagraph=la(r,{title:"Change to paragraph",label:"Plain"});if(r=t.nodes.code_block)e.makeCodeBlock=la(r,{title:"Change to code block",label:"Code"});if(r=t.nodes.heading)for(let t=1;t<=10;t++)e["makeHead"+t]=la(r,{title:"Change to heading "+t,label:"Level "+t,attrs:{level:t}});if(r=t.nodes.horizontal_rule){let t=r;e.insertHorizontalRule=new Jh({title:"Insert horizontal rule",label:"Horizontal rule",enable(e){return Ra(e,t)},run(e,i){i(e.tr.replaceSelectionWith(t.create()))}})}let n=t=>t.filter((t=>t));e.insertMenu=new Zh(n([e.insertImage,e.insertHorizontalRule]),{label:"Insert"});e.typeMenu=new Zh(n([e.makeParagraph,e.makeCodeBlock,e.makeHead1&&new Gh(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,ta,ea,ia])];e.fullMenu=e.inlineMenu.concat([[e.insertMenu,e.typeMenu]],[[ra,na]],e.blockMenu);return e}const Ua=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function Wa(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",qf);n("Shift-Mod-z",Rf);n("Backspace",Da);if(!Ua)n("Mod-y",Rf);n("Alt-ArrowUp",Zf);n("Alt-ArrowDown",Kf);n("Mod-BracketLeft",Vf);n("Escape",rh);if(r=t.marks.strong){n("Mod-b",dh(r));n("Mod-B",dh(r))}if(r=t.marks.em){n("Mod-i",dh(r));n("Mod-I",dh(r))}if(r=t.marks.code)n("Mod-`",dh(r));if(r=t.nodes.bullet_list)n("Shift-Ctrl-8",Zu(r));if(r=t.nodes.ordered_list)n("Shift-Ctrl-9",Zu(r));if(r=t.nodes.blockquote)n("Ctrl->",hh(r));if(r=t.nodes.hard_break){let t=r,e=ph(Yf,((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}));n("Mod-Enter",e);n("Shift-Enter",e);if(Ua)n("Ctrl-Enter",e)}if(r=t.nodes.list_item){n("Enter",Vu(r));n("Mod-[",Gu(r));n("Mod-]",Qu(r))}if(r=t.nodes.paragraph)n("Shift-Ctrl-0",ah(r));if(r=t.nodes.code_block)n("Shift-Ctrl-\\",ah(r));if(r=t.nodes.heading)for(let t=1;t<=6;t++)n("Shift-Ctrl-"+t,ah(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 Ha(t){return Ca(/^\s*>\s$/,t)}function Za(t){return Ca(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order==+t[1]))}function Ka(t){return Ca(/^\s*([-+*])\s$/,t)}function Va(t){return Sa(/^```$/,t)}function Ga(t,e){return Sa(new RegExp("^(#{1,"+e+"})\\s$"),t,(t=>({level:t[1].length})))}function Xa(t){let e=Aa.concat(ya,va),i;if(i=t.nodes.blockquote)e.push(Ha(i));if(i=t.nodes.ordered_list)e.push(Za(i));if(i=t.nodes.bullet_list)e.push(Ka(i));if(i=t.nodes.code_block)e.push(Va(i));if(i=t.nodes.heading)e.push(Ga(i,6));return ba({rules:e})}function Ya(t){let e=[Xa(t.schema),cf(Wa(t.schema,t.mapKeys)),cf(Dh),vh(),Ah()];if(t.menuBar!==false)e.push(ha({floating:t.floatingMenu!==false,content:t.menuContent||La(t.schema).fullMenu}));if(t.history!==false)e.push(jf());return e.concat(new hn({props:{attributes:{class:"ProseMirror-example-setup-style"}}}))}const Qa={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 tc=Object.values(Qa);const ec={Heading:"heading",one:1,two:2,three:3};const ic={Left:0,Middle:1,Right:2};const rc=(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 nc=(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===ec.Heading&&i){return n.attrs.level===i}return true}return false}};const sc=(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 lc=(t,e,i)=>{const r=(e,r)=>{const{from:n,to:s}=e.selection;if(n===s){const s=t.marks.link.create({href:i.href,title:i.href,target:fc(i.href)?"_blank":null});const l=i.text||i.href;const o=t.text(l,[s]);r(e.tr.insert(n,o))}else{const l=t.marks.link.create({href:i.href,title:i.href,target:fc(i.href)?"_blank":null});const o=e.doc.textBetween(n,s," ");const u=t.text(i.text||o,[l]);r(e.tr.replaceWith(n,s,u))}return true};rc(r,t.marks.link);return r};const oc=(t,e,i)=>{const r=t.marks[e];if(!r){throw new Error(`Mark "${e}" not found in schema`)}const n=uc(e,i);const s=dh(r,n);rc(s,r);return s};const uc=(t,e)=>{if(t===Qa.Link&&e.href){return{href:e.href,target:fc(e.href)?"_blank":null}}return undefined};const fc=t=>!t.startsWith(window.location.origin);const hc=(t,e,i={},r=false)=>{const n=t.nodes[e];const s=t.nodes.paragraph;return(t,e)=>{const{$from:l,$to:o}=t.selection;const u=l.node(l.depth-1).type===n;if(t.selection instanceof Wr&&l.sameParent(l.doc.resolve(o.pos))){if(l.parent.type===n){if(e){e(t.tr.setBlockType(l.pos,o.pos,s))}return true}else{if(u){return Vf(t,e)}if(r){return hh(n,i)(t,e)}else{return ah(n,i)(t,e)}}}return false}};const ac=t=>{try{new URL(t)}catch(t){return false}return true};const cc=(t,e,i)=>{const r=t.nodes[e];if(!r){throw new Error(`Node type "${e}" not found in schema`)}let n;if(e===ec.Heading&&i){n=hc(t,ec.Heading,{level:i})}else if(e===Qa.CodeBlock){n=hc(t,Qa.CodeBlock)}else{n=ah(r)}nc(n,r,i);return n};const dc=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`Node type "${e}" not found in schema`)}let r;if(e===Qa.Blockquote){r=hc(t,Qa.Blockquote,{},true)}else{r=hh(i)}sc(r,i);return r};const pc=t=>(e,i)=>{const{$from:r,$to:n}=e.selection;const s=r.blockRange(n);if(!s){return false}const l=s&&sr(s,t);if(l){if(i){i(e.tr.wrap(s,l).scrollIntoView())}return true}else{const t=s&&rr(s);if(t!==null){if(i){i(e.tr.lift(s,t).scrollIntoView())}return true}return false}};const mc=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`List type "${e}" not found in schema`)}const r=pc(i);sc(r,i);return r};const wc=(t,e)=>{const{from:i,to:r}=t.selection;if(i===r){return false}const n=window.clipboardData;if(!n){return false}const s=n.getData("text");if(!ac(s)){return false}const l=t.schema.marks.link.create({href:s,target:fc(s)?"_blank":null});const o=t.doc.textBetween(i,r," ");const u=t.schema.text(o,[l]);e(t.tr.replaceWith(i,r,u))};const gc={strong:oc,em:oc,underline:oc,strikethrough:oc,code:oc,link:lc,headerlevel1:t=>cc(t,ec.Heading,ec.one),headerlevel2:t=>cc(t,ec.Heading,ec.two),headerlevel3:t=>cc(t,ec.Heading,ec.three),blockquote:t=>dc(t,Qa.Blockquote),code_block:t=>cc(t,Qa.CodeBlock),ordered_list:t=>mc(t,Qa.OrderedList),bullet_list:t=>mc(t,Qa.BulletList)};class bc{constructor(t){this.schema=t}getCommand(t,e){const i=gc[t];if(!i){throw new Error(`The Mark "${t}" is not supported`)}return i(this.schema,t,e)}buildKeymap(){return{"Mod-B":this.getCommand(Qa.Bold),"Mod-I":this.getCommand(Qa.Italic),"Mod-Shift-1":this.getCommand(Qa.HeaderLevel1),"Mod-Shift-2":this.getCommand(Qa.HeaderLevel2),"Mod-Shift-3":this.getCommand(Qa.HeaderLevel3),"Mod-Shift-X":this.getCommand(Qa.Strikethrough),"Mod-`":this.getCommand(Qa.Code),"Mod-Shift-C":this.getCommand(Qa.CodeBlock),"Mod-v":wc}}}const kc=()=>{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:vc}=kc();const yc=[{value:Qa.Bold,text:"Bold",commandText:`${Dc} B`,icon:"-lime-text-bold",iconOnly:true,selected:false},{value:Qa.Italic,text:"Italic",commandText:`${Dc} I`,icon:"-lime-text-italic",iconOnly:true,selected:false},{value:Qa.Strikethrough,text:"Strikethrough",commandText:`${Dc} ${vc} X`,icon:"-lime-text-strikethrough",iconOnly:true,selected:false},{value:Qa.Link,text:"Link",icon:"-lime-text-link",iconOnly:true},{separator:true},{value:Qa.BulletList,text:"Bullet list",icon:"-lime-text-bulleted-list",iconOnly:true,selected:false},{value:Qa.OrderedList,text:"Numbered list",icon:"-lime-text-ordered-list",iconOnly:true,selected:false},{separator:true},{value:Qa.HeaderLevel1,text:"Header 1",commandText:`${Dc} ${vc} 1`,icon:"-lime-text-h-heading-1",iconOnly:true,selected:false},{value:Qa.HeaderLevel2,text:"Header 2",commandText:`${Dc} ${vc} 2`,icon:"-lime-text-h-heading-2",iconOnly:true,selected:false},{value:Qa.HeaderLevel3,text:"Header 3",commandText:`${Dc} ${vc} 3`,icon:"-lime-text-h-heading-3",iconOnly:true,selected:false},{separator:true},{value:Qa.Blockquote,text:"Blockquote",icon:"-lime-text-blockquote",iconOnly:true,selected:false},{separator:true},{value:Qa.Code,text:"Code",commandText:`${Dc} \``,icon:"-lime-text-code",iconOnly:true,selected:false},{value:Qa.CodeBlock,text:"Code Block",commandText:`${Dc} ${vc} C`,icon:"-lime-text-code-block",iconOnly:true,selected:false}];const Fc=()=>ae(yc);const Ec={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 xc={};function Mc(t){let e=xc[t];if(e){return e}e=xc[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 Ac(t,e){if(typeof e!=="string"){e=Ac.defaultChars}const i=Mc(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}))}Ac.defaultChars=";/?:@&=+$,#";Ac.componentChars="";const Cc={};function Sc(t){let e=Cc[t];if(e){return e}e=Cc[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 Oc(t,e,i){if(typeof e!=="string"){i=e;e=Oc.defaultChars}if(typeof i==="undefined"){i=true}const r=Sc(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}Oc.defaultChars=";/?:@&=+$,-_.!~*'()#";Oc.componentChars="-_.!~*'()";function $c(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 _c(){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 Bc=/^([a-z0-9.+-]+:)/i;const jc=/:[0-9]*$/;const qc=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;const Rc=["<",">",'"',"`"," ","\r","\n","\t"];const Nc=["{","}","|","\\","^","`"].concat(Rc);const zc=["'"].concat(Nc);const Tc=["%","/","?",";","#"].concat(zc);const Ic=["/","?","#"];const Pc=255;const Jc=/^[+a-z0-9A-Z_-]{0,63}$/;const Lc=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;const Uc={javascript:true,"javascript:":true};const Wc={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function Hc(t,e){if(t&&t instanceof _c)return t;const i=new _c;i.parse(t,e);return i}_c.prototype.parse=function(t,e){let i,r,n;let s=t;s=s.trim();if(!e&&t.split("#").length===1){const t=qc.exec(s);if(t){this.pathname=t[1];if(t[2]){this.search=t[2]}return this}}let l=Bc.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&&Uc[l])){s=s.substr(2);this.slashes=true}}if(!Uc[l]&&(n||l&&!Wc[l])){let t=-1;for(let e=0;e<Ic.length;e++){r=s.indexOf(Ic[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<Tc.length;e++){r=s.indexOf(Tc[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(Jc)){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(Jc)){const r=t.slice(0,e);const n=t.slice(e+1);const l=i.match(Lc);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>Pc){this.hostname=""}if(l){this.hostname=this.hostname.substr(1,this.hostname.length-2)}}const o=s.indexOf("#");if(o!==-1){this.hash=s.substr(o);s=s.slice(0,o)}const u=s.indexOf("?");if(u!==-1){this.search=s.substr(u);s=s.slice(0,u)}if(s){this.pathname=s}if(Wc[i]&&this.hostname&&!this.pathname){this.pathname=""}return this};_c.prototype.parseHost=function(t){let e=jc.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 Zc=Object.freeze({__proto__:null,decode:Ac,encode:Oc,format:$c,parse:Hc});const Kc=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;const Vc=/[\0-\x1F\x7F-\x9F]/;const Gc=/[\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 Xc=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\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 Yc=/[\$\+<->\^`\|~\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 Qc=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;const td=Object.freeze({__proto__:null,Any:Kc,Cc:Vc,Cf:Gc,P:Xc,S:Yc,Z:Qc});function ed(t){return Object.prototype.toString.call(t)}function id(t){return ed(t)==="[object String]"}const rd=Object.prototype.hasOwnProperty;function nd(t,e){return rd.call(t,e)}function sd(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 ld(t,e,i){return[].concat(t.slice(0,e),i,t.slice(e+1))}function od(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 ud(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 fd=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;const hd=/&([a-z#][a-z0-9]{1,31});/gi;const ad=new RegExp(fd.source+"|"+hd.source,"gi");const cd=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function dd(t,e){if(e.charCodeAt(0)===35&&cd.test(e)){const i=e[1].toLowerCase()==="x"?parseInt(e.slice(2),16):parseInt(e.slice(1),10);if(od(i)){return ud(i)}return t}const i=x(t);if(i!==t){return i}return t}function pd(t){if(t.indexOf("\\")<0){return t}return t.replace(fd,"$1")}function md(t){if(t.indexOf("\\")<0&&t.indexOf("&")<0){return t}return t.replace(ad,(function(t,e,i){if(e){return e}return dd(t,i)}))}const wd=/[&<>"]/;const gd=/[&<>"]/g;const bd={"&":"&","<":"<",">":">",'"':"""};function kd(t){return bd[t]}function Dd(t){if(wd.test(t)){return t.replace(gd,kd)}return t}const vd=/[.?*+^$[\]\\(){}|-]/g;function yd(t){return t.replace(vd,"\\$&")}function Fd(t){switch(t){case 9:case 32:return true}return false}function Ed(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 xd(t){return Xc.test(t)||Yc.test(t)}function Md(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 Ad(t){t=t.trim().replace(/\s+/g," ");if("ẞ".toLowerCase()==="Ṿ"){t=t.replace(/ẞ/g,"ß")}return t.toLowerCase().toUpperCase()}const Cd={mdurl:Zc,ucmicro:td};const Sd=Object.freeze({__proto__:null,lib:Cd,assign:sd,isString:id,has:nd,unescapeMd:pd,unescapeAll:md,isValidEntityCode:od,fromCodePoint:ud,escapeHtml:Dd,arrayReplaceAt:ld,isSpace:Fd,isWhiteSpace:Ed,isMdAsciiPunct:Md,isPunctChar:xd,escapeRE:yd,normalizeReference:Ad});function Od(t,e,i){let r,n,s,l;const o=t.posMax;const u=t.pos;t.pos=e+1;r=1;while(t.pos<o){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=u;return-1}}}let f=-1;if(n){f=t.pos}t.pos=u;return f}function $d(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=md(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=md(t.slice(e,n));s.pos=n;s.ok=true;return s}function _d(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+=md(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+=md(t.slice(e,s));return l}const Bd=Object.freeze({__proto__:null,parseLinkLabel:Od,parseLinkDestination:$d,parseLinkTitle:_d});const jd={};jd.code_inline=function(t,e,i,r,n){const s=t[e];return"<code"+n.renderAttrs(s)+">"+Dd(s.content)+"</code>"};jd.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"};jd.fence=function(t,e,i,r,n){const s=t[e];const l=s.info?md(s.info).trim():"";let o="";let u="";if(l){const t=l.split(/(\s+)/g);o=t[0];u=t.slice(2).join("")}let f;if(i.highlight){f=i.highlight(s.content,o,u)||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+o])}else{e[t]=e[t].slice();e[t][1]+=" "+i.langPrefix+o}const r={attrs:e};return`<pre><code${n.renderAttrs(r)}>${f}</code></pre>\n`}return`<pre><code${n.renderAttrs(s)}>${f}</code></pre>\n`};jd.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)};jd.hardbreak=function(t,e,i){return i.xhtmlOut?"<br />\n":"<br>\n"};jd.softbreak=function(t,e,i){return i.breaks?i.xhtmlOut?"<br />\n":"<br>\n":"\n"};jd.text=function(t,e){return Dd(t[e].content)};jd.html_block=function(t,e){return t[e].content};jd.html_inline=function(t,e){return t[e].content};function qd(){this.rules=sd({},jd)}qd.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};qd.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};qd.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};qd.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};qd.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 Rd(){this.__rules__=[];this.__cache__=null}Rd.prototype.__find__=function(t){for(let e=0;e<this.__rules__.length;e++){if(this.__rules__[e].name===t){return e}}return-1};Rd.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)}))}))};Rd.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};Rd.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};Rd.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};Rd.prototype.push=function(t,e,i){const r=i||{};this.__rules__.push({name:t,enabled:true,fn:e,alt:r.alt||[]});this.__cache__=null};Rd.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};Rd.prototype.enableOnly=function(t,e){if(!Array.isArray(t)){t=[t]}this.__rules__.forEach((function(t){t.enabled=false}));this.enable(t,e)};Rd.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};Rd.prototype.getRules=function(t){if(this.__cache__===null){this.__compile__()}return this.__cache__[t]||[]};function Nd(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}Nd.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};Nd.prototype.attrPush=function t(e){if(this.attrs){this.attrs.push(e)}else{this.attrs=[e]}};Nd.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}};Nd.prototype.attrGet=function t(e){const i=this.attrIndex(e);let r=null;if(i>=0){r=this.attrs[i][1]}return r};Nd.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 zd(t,e,i){this.src=t;this.env=i;this.tokens=[];this.inlineMode=false;this.md=e}zd.prototype.Token=Nd;const Td=/\r\n?|\n/g;const Id=/\0/g;function Pd(t){let e;e=t.src.replace(Td,"\n");e=e.replace(Id,"�");t.src=e}function Jd(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 Ld(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 Ud(t){return/^<a[>\s]/i.test(t)}function Wd(t){return/^<\/a\s*>/i.test(t)}function Hd(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(Ud(l.content)&&n>0){n--}if(Wd(l.content)){n++}}if(n>0){continue}if(l.type==="text"&&t.md.linkify.test(l.content)){const n=l.content;let o=t.md.linkify.match(n);const u=[];let f=l.level;let h=0;if(o.length>0&&o[0].index===0&&s>0&&r[s-1].type==="text_special"){o=o.slice(1)}for(let e=0;e<o.length;e++){const i=o[e].url;const r=t.md.normalizeLink(i);if(!t.md.validateLink(r)){continue}let s=o[e].text;if(!o[e].schema){s=t.md.normalizeLinkText("http://"+s).replace(/^http:\/\//,"")}else if(o[e].schema==="mailto:"&&!/^mailto:/i.test(s)){s=t.md.normalizeLinkText("mailto:"+s).replace(/^mailto:/,"")}else{s=t.md.normalizeLinkText(s)}const l=o[e].index;if(l>h){const e=new t.Token("text","",0);e.content=n.slice(h,l);e.level=f;u.push(e)}const a=new t.Token("link_open","a",1);a.attrs=[["href",r]];a.level=f++;a.markup="linkify";a.info="auto";u.push(a);const c=new t.Token("text","",0);c.content=s;c.level=f;u.push(c);const d=new t.Token("link_close","a",-1);d.level=--f;d.markup="linkify";d.info="auto";u.push(d);h=o[e].lastIndex}if(h<n.length){const e=new t.Token("text","",0);e.content=n.slice(h);e.level=f;u.push(e)}e[i].children=r=ld(r,s,u)}}}}const Zd=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/;const Kd=/\((c|tm|r)\)/i;const Vd=/\((c|tm|r)\)/gi;const Gd={c:"©",r:"®",tm:"™"};function Xd(t,e){return Gd[e.toLowerCase()]}function Yd(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(Vd,Xd)}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function Qd(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){if(Zd.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 tp(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(Kd.test(t.tokens[e].content)){Yd(t.tokens[e].children)}if(Zd.test(t.tokens[e].content)){Qd(t.tokens[e].children)}}}const ep=/['"]/;const ip=/['"]/g;const rp="’";function np(t,e,i){return t.slice(0,e)+i+t.slice(e+1)}function sp(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 o=s.content;let u=0;let f=o.length;t:while(u<f){ip.lastIndex=u;const h=ip.exec(o);if(!h){break}let a=true;let c=true;u=h.index+1;const d=h[0]==="'";let p=32;if(h.index-1>=0){p=o.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(u<f){m=o.charCodeAt(u)}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=Md(p)||xd(String.fromCharCode(p));const g=Md(m)||xd(String.fromCharCode(m));const b=Ed(p);const k=Ed(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=np(s.content,h.index,rp)}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=np(s.content,h.index,c);t[a.token].content=np(t[a.token].content,a.pos,l);u+=c.length-1;if(a.token===n){u+=l.length-1}o=s.content;f=o.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=np(s.content,h.index,rp)}}}}function lp(t){if(!t.md.options.typographer){return}for(let e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"||!ep.test(t.tokens[e].content)){continue}sp(t.tokens[e].children,t)}}function op(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 up=[["normalize",Pd],["block",Jd],["inline",Ld],["linkify",Hd],["replacements",tp],["smartquotes",lp],["text_join",op]];function fp(){this.ruler=new Rd;for(let t=0;t<up.length;t++){this.ruler.push(up[t][0],up[t][1])}}fp.prototype.process=function(t){const e=this.ruler.getRules("");for(let i=0,r=e.length;i<r;i++){e[i](t)}};fp.prototype.State=zd;function hp(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 o=n.charCodeAt(e);if(!l){if(Fd(o)){i++;if(o===9){r+=4-r%4}else{r++}continue}else{l=true}}if(o===10||e===s-1){if(o!==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}hp.prototype.push=function(t,e,i){const r=new Nd(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};hp.prototype.isEmpty=function t(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]};hp.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};hp.prototype.skipSpaces=function t(e){for(let t=this.src.length;e<t;e++){const t=this.src.charCodeAt(e);if(!Fd(t)){break}}return e};hp.prototype.skipSpacesBack=function t(e,i){if(e<=i){return e}while(e>i){if(!Fd(this.src.charCodeAt(--e))){return e+1}}return e};hp.prototype.skipChars=function t(e,i){for(let t=this.src.length;e<t;e++){if(this.src.charCodeAt(e)!==i){break}}return e};hp.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};hp.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 o=this.bMarks[l];let u=o;let f;if(l+1<i||n){f=this.eMarks[l]+1}else{f=this.eMarks[l]}while(u<f&&e<r){const t=this.src.charCodeAt(u);if(Fd(t)){if(t===9){e+=4-(e+this.bsCount[l])%4}else{e++}}else if(u-o<this.tShift[l]){e++}else{break}u++}if(e>r){s[t]=new Array(e-r+1).join(" ")+this.src.slice(u,f)}else{s[t]=this.src.slice(u,f)}}return s.join("")};hp.prototype.Token=Nd;const ap=65536;function cp(t,e){const i=t.bMarks[e]+t.tShift[e];const r=t.eMarks[e];return t.src.slice(i,r)}function dp(t){const e=[];const i=t.length;let r=0;let n=t.charCodeAt(r);let s=false;let l=0;let o="";while(r<i){if(n===124){if(!s){e.push(o+t.substring(l,r));o="";l=r+1}else{o+=t.substring(l,r-1);l=r}}s=n===92;r++;n=t.charCodeAt(r)}e.push(o+t.substring(l));return e}function pp(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 o=t.src.charCodeAt(s++);if(o!==124&&o!==45&&o!==58&&!Fd(o)){return false}if(l===45&&Fd(o)){return false}while(s<t.eMarks[n]){const e=t.src.charCodeAt(s);if(e!==124&&e!==45&&e!==58&&!Fd(e)){return false}s++}let u=cp(t,e+1);let f=u.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("")}}u=cp(t,e).trim();if(u.indexOf("|")===-1){return false}if(t.sCount[e]-t.blkIndent>=4){return false}f=dp(u);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}u=cp(t,n).trim();if(!u){break}if(t.sCount[n]-t.blkIndent>=4){break}f=dp(u);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();k+=a-f.length;if(k>ap){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 mp(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 wp(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 o=n;n=t.skipChars(n,l);let u=n-o;if(u<3){return false}const f=t.src.slice(o,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=o=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-o<u){continue}n=t.skipSpaces(n);if(n<s){continue}c=true;break}u=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,u,true);d.markup=f;d.map=[e,t.line];return true}function gp(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 o=[];const u=[];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;o.push(t.bMarks[p]);t.bMarks[p]=n;while(n<s){const e=t.src.charCodeAt(n);if(Fd(e)){if(e===9){l+=4-(l+t.bsCount[p]+(r?1:0))%4}else{l++}}else{break}n++}d=n>=s;u.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){o.push(t.bMarks[p]);u.push(t.bsCount[p]);h.push(t.tShift[p]);f.push(t.sCount[p]);t.sCount[p]-=t.blkIndent}break}o.push(t.bMarks[p]);u.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]=o[i];t.tShift[i+e]=h[i];t.sCount[i+e]=f[i];t.bsCount[i+e]=u[i]}t.blkIndent=m;return true}function bp(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 o=1;while(s<n){const e=t.src.charCodeAt(s++);if(e!==l&&!Fd(e)){return false}if(e===l){o++}}if(o<3){return false}if(r){return true}t.line=e+1;const u=t.push("hr","hr",0);u.map=[e,t.line];u.markup=Array(o+1).join(String.fromCharCode(l));return true}function kp(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(!Fd(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(!Fd(s)){return-1}}return n}function vp(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 yp(t,e,i,r){let n,s,l,o;let u=e;let f=true;if(t.sCount[u]-t.blkIndent>=4){return false}if(t.listIndent>=0&&t.sCount[u]-t.listIndent>=4&&t.sCount[u]<t.blkIndent){return false}let h=false;if(r&&t.parentType==="paragraph"){if(t.sCount[u]>=t.blkIndent){h=true}}let a;let c;let d;if((d=Dp(t,u))>=0){a=true;l=t.bMarks[u]+t.tShift[u];c=Number(t.src.slice(l,d-1));if(h&&c!==1)return false}else if((d=kp(t,u))>=0){a=false}else{return false}if(h){if(t.skipSpaces(d)>=t.eMarks[u])return false}if(r){return true}const p=t.src.charCodeAt(d-1);const m=t.tokens.length;if(a){o=t.push("ordered_list_open","ol",1);if(c!==1){o.attrs=[["start",c]]}}else{o=t.push("bullet_list_open","ul",1)}const w=[u,0];o.map=w;o.markup=String.fromCharCode(p);let g=false;const b=t.md.block.ruler.getRules("list");const k=t.parentType;t.parentType="list";while(u<i){s=d;n=t.eMarks[u];const e=t.sCount[u]+d-(t.bMarks[u]+t.tShift[u]);let r=e;while(s<n){const e=t.src.charCodeAt(s);if(e===9){r+=4-(r+t.bsCount[u])%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;o=t.push("list_item_open","li",1);o.markup=String.fromCharCode(p);const w=[u,0];o.map=w;if(a){o.info=t.src.slice(l,d-1)}const k=t.tight;const D=t.tShift[u];const v=t.sCount[u];const y=t.listIndent;t.listIndent=t.blkIndent;t.blkIndent=m;t.tight=true;t.tShift[u]=h-t.bMarks[u];t.sCount[u]=r;if(h>=n&&t.isEmpty(u+1)){t.line=Math.min(t.line+2,i)}else{t.md.block.tokenize(t,u,i,true)}if(!t.tight||g){f=false}g=t.line-u>1&&t.isEmpty(t.line-1);t.blkIndent=t.listIndent;t.listIndent=y;t.tShift[u]=D;t.sCount[u]=v;t.tight=k;o=t.push("list_item_close","li",-1);o.markup=String.fromCharCode(p);u=t.line;w[1]=u;if(u>=i){break}if(t.sCount[u]<t.blkIndent){break}if(t.sCount[u]-t.blkIndent>=4){break}let F=false;for(let e=0,r=b.length;e<r;e++){if(b[e](t,u,i,true)){F=true;break}}if(F){break}if(a){d=Dp(t,u);if(d<0){break}l=t.bMarks[u]+t.tShift[u]}else{d=kp(t,u);if(d<0){break}}if(p!==t.src.charCodeAt(d-1)){break}}if(a){o=t.push("ordered_list_close","ol",-1)}else{o=t.push("bullet_list_close","ul",-1)}o.markup=String.fromCharCode(p);w[1]=u;t.line=u;t.parentType=k;if(f){vp(t,m)}return true}function Fp(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 o(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 u=t.src.slice(n,s+1);s=u.length;let f=-1;for(n=1;n<s;n++){const t=u.charCodeAt(n);if(t===91){return false}else if(t===93){f=n;break}else if(t===10){const t=o(l);if(t!==null){u+=t;s=u.length;l++}}else if(t===92){n++;if(n<s&&u.charCodeAt(n)===10){const t=o(l);if(t!==null){u+=t;s=u.length;l++}}}}if(f<0||u.charCodeAt(f+1)!==58){return false}for(n=f+2;n<s;n++){const t=u.charCodeAt(n);if(t===10){const t=o(l);if(t!==null){u+=t;s=u.length;l++}}else if(Fd(t));else{break}}const h=t.md.helpers.parseLinkDestination(u,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=u.charCodeAt(n);if(t===10){const t=o(l);if(t!==null){u+=t;s=u.length;l++}}else if(Fd(t));else{break}}let m=t.md.helpers.parseLinkTitle(u,n,s);while(m.can_continue){const e=o(l);if(e===null)break;u+=e;n=s;s=u.length;l++;m=t.md.helpers.parseLinkTitle(u,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=u.charCodeAt(n);if(!Fd(t)){break}n++}if(n<s&&u.charCodeAt(n)!==10){if(w){w="";n=c;l=d;while(n<s){const t=u.charCodeAt(n);if(!Fd(t)){break}n++}}}if(n<s&&u.charCodeAt(n)!==10){return false}const g=Ad(u.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 Ep=["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 xp="[a-zA-Z_:][a-zA-Z0-9:._-]*";const Mp="[^\"'=<>`\\x00-\\x20]+";const Ap="'[^']*'";const Cp='"[^"]*"';const Sp="(?:"+Mp+"|"+Ap+"|"+Cp+")";const Op="(?:\\s+"+xp+"(?:\\s*=\\s*"+Sp+")?)";const $p="<[A-Za-z][A-Za-z0-9\\-]*"+Op+"*\\s*\\/?>";const _p="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>";const Bp="\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e";const jp="<[?][\\s\\S]*?[?]>";const qp="<![A-Za-z][^>]*>";const Rp="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>";const Np=new RegExp("^(?:"+$p+"|"+_p+"|"+Bp+"|"+jp+"|"+qp+"|"+Rp+")");const zp=new RegExp("^(?:"+$p+"|"+_p+")");const Tp=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,true],[/^<!--/,/-->/,true],[/^<\?/,/\?>/,true],[/^<![A-Z]/,/>/,true],[/^<!\[CDATA\[/,/\]\]>/,true],[new RegExp("^</?("+Ep.join("|")+")(?=(\\s|/?>|$))","i"),/^$/,true],[new RegExp(zp.source+"\\s*$"),/^$/,false]];function Ip(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 o=0;for(;o<Tp.length;o++){if(Tp[o][0].test(l)){break}}if(o===Tp.length){return false}if(r){return Tp[o][2]}let u=e+1;if(!Tp[o][1].test(l)){for(;u<i;u++){if(t.sCount[u]<t.blkIndent){break}n=t.bMarks[u]+t.tShift[u];s=t.eMarks[u];l=t.src.slice(n,s);if(Tp[o][1].test(l)){if(l.length!==0){u++}break}}}t.line=u;const f=t.push("html_block","",0);f.map=[e,u];f.content=t.getLines(e,u,t.blkIndent,true);return true}function Pp(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 o=1;l=t.src.charCodeAt(++n);while(l===35&&n<s&&o<=6){o++;l=t.src.charCodeAt(++n)}if(o>6||n<s&&!Fd(l)){return false}if(r){return true}s=t.skipSpacesBack(s,n);const u=t.skipCharsBack(s,35,n);if(u>n&&Fd(t.src.charCodeAt(u-1))){s=u}t.line=e+1;const f=t.push("heading_open","h"+String(o),1);f.markup="########".slice(0,o);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(o),-1);a.markup="########".slice(0,o);return true}function Jp(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 o=e+1;for(;o<i&&!t.isEmpty(o);o++){if(t.sCount[o]-t.blkIndent>3){continue}if(t.sCount[o]>=t.blkIndent){let e=t.bMarks[o]+t.tShift[o];const i=t.eMarks[o];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[o]<0){continue}let e=false;for(let n=0,s=r.length;n<s;n++){if(r[n](t,o,i,true)){e=true;break}}if(e){break}}if(!s){return false}const u=t.getLines(e,o,t.blkIndent,false).trim();t.line=o+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=u;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 Lp(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 o=t.push("paragraph_open","p",1);o.map=[e,t.line];const u=t.push("inline","",0);u.content=l;u.map=[e,t.line];u.children=[];t.push("paragraph_close","p",-1);t.parentType=n;return true}const Up=[["table",pp,["paragraph","reference"]],["code",mp],["fence",wp,["paragraph","reference","blockquote","list"]],["blockquote",gp,["paragraph","reference","blockquote","list"]],["hr",bp,["paragraph","reference","blockquote","list"]],["list",yp,["paragraph","reference","blockquote"]],["reference",Fp],["html_block",Ip,["paragraph","reference","blockquote"]],["heading",Pp,["paragraph","reference","blockquote"]],["lheading",Jp],["paragraph",Lp]];function Wp(){this.ruler=new Rd;for(let t=0;t<Up.length;t++){this.ruler.push(Up[t][0],Up[t][1],{alt:(Up[t][2]||[]).slice()})}}Wp.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 o=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 u=false;for(let s=0;s<n;s++){u=r[s](t,l,i,false);if(u){if(e>=t.line){throw new Error("block rule didn't increment state.line")}break}}if(!u)throw new Error("none of the block rules matched");t.tight=!o;if(t.isEmpty(t.line-1)){o=true}l=t.line;if(l<i&&t.isEmpty(l)){o=true;l++;t.line=l}}};Wp.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)};Wp.prototype.State=hp;function Hp(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}Hp.prototype.pushPending=function(){const t=new Nd("text","",0);t.content=this.pending;t.level=this.pendingLevel;this.tokens.push(t);this.pending="";return t};Hp.prototype.push=function(t,e,i){if(this.pending){this.pushPending()}const r=new Nd(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};Hp.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 o=s<i?this.src.charCodeAt(s):32;const u=Md(n)||xd(String.fromCharCode(n));const f=Md(o)||xd(String.fromCharCode(o));const h=Ed(n);const a=Ed(o);const c=!a&&(!f||h||u);const d=!h&&(!u||a||f);const p=c&&(e||!d||u);const m=d&&(e||!c||f);return{can_open:p,can_close:m,length:l}};Hp.prototype.Token=Nd;function Zp(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 Kp(t,e){let i=t.pos;while(i<t.posMax&&!Zp(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 Vp=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function Gp(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(Vp);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 o=l.url;if(o.length<=s.length)return false;o=o.replace(/\*+$/,"");const u=t.md.normalizeLink(o);if(!t.md.validateLink(u))return false;if(!e){t.pending=t.pending.slice(0,-s.length);const e=t.push("link_open","a",1);e.attrs=[["href",u]];e.markup="linkify";e.info="auto";const i=t.push("text","",0);i.content=t.md.normalizeLinkText(o);const r=t.push("link_close","a",-1);r.markup="linkify";r.info="auto"}t.pos+=o.length-s.length;return true}function Xp(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&&Fd(t.src.charCodeAt(i))){i++}t.pos=i;return true}const Yp=[];for(let t=0;t<256;t++){Yp.push(0)}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(t){Yp[t.charCodeAt(0)]=1}));function Qp(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(!Fd(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&&Yp[n]!==0){e.content=s}else{e.content=l}e.markup=l;e.info="escape"}t.pos=i+1;return true}function tm(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 o=l.length;if(t.backticksScanned&&(t.backticks[o]||0)<=n){if(!e)t.pending+=l;t.pos+=o;return true}let u=i;let f;while((f=t.src.indexOf("`",u))!==-1){u=f+1;while(u<s&&t.src.charCodeAt(u)===96){u++}const r=u-f;if(r===o){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=u;return true}t.backticks[r]=f}t.backticksScanned=true;if(!e)t.pending+=l;t.pos+=o;return true}function em(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 o;if(s%2){o=t.push("text","",0);o.content=l;s--}for(let e=0;e<s;e+=2){o=t.push("text","",0);o.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 im(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 rm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;im(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){im(t,e[r].delimiters)}}}const nm={tokenize:em,postProcess:rm};function sm(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 lm(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 o=t.tokens[i.token];o.type=s?"strong_open":"em_open";o.tag=s?"strong":"em";o.nesting=1;o.markup=s?l+l:l;o.content="";const u=t.tokens[n.token];u.type=s?"strong_close":"em_close";u.tag=s?"strong":"em";u.nesting=-1;u.markup=s?l+l:l;u.content="";if(s){t.tokens[e[r-1].token].content="";t.tokens[e[i.end+1].token].content="";r--}}}function om(t){const e=t.tokens_meta;const i=t.tokens_meta.length;lm(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){lm(t,e[r].delimiters)}}}const um={tokenize:sm,postProcess:om};function fm(t,e){let i,r,n,s;let l="";let o="";let u=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(!Fd(i)&&i!==10){break}}if(p>=a){return false}u=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=""}u=p;for(;p<a;p++){i=t.src.charCodeAt(p);if(!Fd(i)&&i!==10){break}}n=t.md.helpers.parseLinkTitle(t.src,p,t.posMax);if(p<a&&u!==p&&n.ok){o=n.str;p=n.pos;for(;p<a;p++){i=t.src.charCodeAt(p);if(!Fd(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){u=p+1;p=t.md.helpers.parseLinkLabel(t,p);if(p>=0){r=t.src.slice(u,p++)}else{p=d+1}}else{p=d+1}if(!r){r=t.src.slice(c,d)}s=t.env.references[Ad(r)];if(!s){t.pos=h;return false}l=s.href;o=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(o){i.push(["title",o])}t.linkLevel++;t.md.inline.tokenize(t);t.linkLevel--;t.push("link_close","a",-1)}t.pos=p;t.posMax=a;return true}function hm(t,e){let i,r,n,s,l,o,u,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(!Fd(i)&&i!==10){break}}if(s>=c){return false}f=s;o=t.md.helpers.parseLinkDestination(t.src,s,t.posMax);if(o.ok){h=t.md.normalizeLink(o.str);if(t.md.validateLink(h)){s=o.pos}else{h=""}}f=s;for(;s<c;s++){i=t.src.charCodeAt(s);if(!Fd(i)&&i!==10){break}}o=t.md.helpers.parseLinkTitle(t.src,s,t.posMax);if(s<c&&f!==s&&o.ok){u=o.str;s=o.pos;for(;s<c;s++){i=t.src.charCodeAt(s);if(!Fd(i)&&i!==10){break}}}else{u=""}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[Ad(n)];if(!l){t.pos=a;return false}h=l.href;u=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(u){n.push(["title",u])}}t.pos=s;t.posMax=c;return true}const am=/^([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 cm=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function dm(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(cm.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(am.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 pm(t){return/^<a[>\s]/i.test(t)}function mm(t){return/^<\/a\s*>/i.test(t)}function wm(t){const e=t|32;return e>=97&&e<=122}function gm(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&&!wm(n)){return false}const s=t.src.slice(r).match(Np);if(!s){return false}if(!e){const e=t.push("html_inline","",0);e.content=s[0];if(pm(e.content))t.linkLevel++;if(mm(e.content))t.linkLevel--}t.pos+=s[0].length;return true}const bm=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i;const km=/^&([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(bm);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=od(e)?ud(e):ud(65533);i.markup=r[0];i.info="entity"}t.pos+=r[0].length;return true}}else{const r=t.src.slice(i).match(km);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 vm(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 o=e[i.marker][(i.open?3:0)+i.length%3];let u=r-s[r]-1;let f=u;for(;u>o;u-=s[u]+1){const e=t[u];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=u>0&&!t[u-1].open?s[u-1]+1:0;s[l]=l-u+r;s[u]=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 ym(t){const e=t.tokens_meta;const i=t.tokens_meta.length;vm(t.delimiters);for(let t=0;t<i;t++){if(e[t]&&e[t].delimiters){vm(e[t].delimiters)}}}function Fm(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 Em=[["text",Kp],["linkify",Gp],["newline",Xp],["escape",Qp],["backticks",tm],["strikethrough",nm.tokenize],["emphasis",um.tokenize],["link",fm],["image",hm],["autolink",dm],["html_inline",gm],["entity",Dm]];const xm=[["balance_pairs",ym],["strikethrough",nm.postProcess],["emphasis",um.postProcess],["fragments_join",Fm]];function Mm(){this.ruler=new Rd;for(let t=0;t<Em.length;t++){this.ruler.push(Em[t][0],Em[t][1])}this.ruler2=new Rd;for(let t=0;t<xm.length;t++){this.ruler2.push(xm[t][0],xm[t][1])}}Mm.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};Mm.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()}};Mm.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)}};Mm.prototype.State=Hp;function Am(t){const e={};t=t||{};e.src_Any=Kc.source;e.src_Cc=Vc.source;e.src_Z=Qc.source;e.src_P=Xc.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 Cm(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 Sm(t){return Object.prototype.toString.call(t)}function Om(t){return Sm(t)==="[object String]"}function $m(t){return Sm(t)==="[object Object]"}function _m(t){return Sm(t)==="[object RegExp]"}function Bm(t){return Sm(t)==="[object Function]"}function jm(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const qm={fuzzyLink:true,fuzzyEmail:true,fuzzyIP:false};function Rm(t){return Object.keys(t||{}).reduce((function(t,e){return t||qm.hasOwnProperty(e)}),false)}const Nm={"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 zm="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 Tm="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Im(t){t.__index__=-1;t.__text_cache__=""}function Pm(t){return function(e,i){const r=e.slice(i);if(t.test(r)){return r.match(t)[0].length}return 0}}function Jm(){return function(t,e){e.normalize(t)}}function Lm(t){const e=t.re=Am(t.__opts__);const i=t.__tlds__.slice();t.onCompile();if(!t.__tlds_replaced__){i.push(zm)}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($m(i)){if(_m(i.validate)){r.validate=Pm(i.validate)}else if(Bm(i.validate)){r.validate=i.validate}else{s(e,i)}if(Bm(i.normalize)){r.normalize=i.normalize}else if(!i.normalize){r.normalize=Jm()}else{s(e,i)}return}if(Om(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:Jm()};const l=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(jm).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");Im(t)}function Um(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 Wm(t,e){const i=new Um(t,e);t.__compiled__[i.schema].normalize(i,t);return i}function Hm(t,e){if(!(this instanceof Hm)){return new Hm(t,e)}if(!e){if(Rm(t)){e=t;t={}}}this.__opts__=Cm({},qm,e);this.__index__=-1;this.__last_index__=-1;this.__schema__="";this.__text_cache__="";this.__schemas__=Cm({},Nm,t);this.__compiled__={};this.__tlds__=Tm;this.__tlds_replaced__=false;this.re={};Lm(this)}Hm.prototype.add=function t(e,i){this.__schemas__[e]=i;Lm(this);return this};Hm.prototype.set=function t(e){this.__opts__=Cm(this.__opts__,e);return this};Hm.prototype.test=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length){return false}let i,r,n,s,l,o,u,f,h;if(this.re.schema_test.test(e)){u=this.re.schema_search;u.lastIndex=0;while((i=u.exec(e))!==null){s=this.testSchemaAt(e,i[2],u.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;o=n.index+n[0].length;if(this.__index__<0||l<this.__index__||l===this.__index__&&o>this.__last_index__){this.__schema__="mailto:";this.__index__=l;this.__last_index__=o}}}}return this.__index__>=0};Hm.prototype.pretest=function t(e){return this.re.pretest.test(e)};Hm.prototype.testSchemaAt=function t(e,i,r){if(!this.__compiled__[i.toLowerCase()]){return 0}return this.__compiled__[i.toLowerCase()].validate(e,r,this)};Hm.prototype.match=function t(e){const i=[];let r=0;if(this.__index__>=0&&this.__text_cache__===e){i.push(Wm(this,r));r=this.__last_index__}let n=r?e.slice(r):e;while(this.test(n)){i.push(Wm(this,r));n=n.slice(this.__last_index__);r+=this.__last_index__}if(i.length){return i}return null};Hm.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 Wm(this,0)};Hm.prototype.tlds=function t(e,i){e=Array.isArray(e)?e:[e];if(!i){this.__tlds__=e.slice();this.__tlds_replaced__=true;Lm(this);return this}this.__tlds__=this.__tlds__.concat(e).sort().filter((function(t,e,i){return t!==i[e-1]})).reverse();Lm(this);return this};Hm.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}};Hm.prototype.onCompile=function t(){};const Zm=2147483647;const Km=36;const Vm=1;const Gm=26;const Xm=38;const Ym=700;const Qm=72;const tw=128;const ew="-";const iw=/^xn--/;const rw=/[^\0-\x7F]/;const nw=/[\x2E\u3002\uFF0E\uFF61]/g;const sw={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const lw=Km-Vm;const ow=Math.floor;const uw=String.fromCharCode;function fw(t){throw new RangeError(sw[t])}function hw(t,e){const i=[];let r=t.length;while(r--){i[r]=e(t[r])}return i}function aw(t,e){const i=t.split("@");let r="";if(i.length>1){r=i[0]+"@";t=i[1]}t=t.replace(nw,".");const n=t.split(".");const s=hw(n,e).join(".");return r+s}function cw(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 dw=t=>String.fromCodePoint(...t);const pw=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 Km};const mw=function(t,e){return t+22+75*(t<26)-((e!=0)<<5)};const ww=function(t,e,i){let r=0;t=i?ow(t/Ym):t>>1;t+=ow(t/e);for(;t>lw*Gm>>1;r+=Km){t=ow(t/lw)}return ow(r+(lw+1)*t/(t+Xm))};const gw=function(t){const e=[];const i=t.length;let r=0;let n=tw;let s=Qm;let l=t.lastIndexOf(ew);if(l<0){l=0}for(let i=0;i<l;++i){if(t.charCodeAt(i)>=128){fw("not-basic")}e.push(t.charCodeAt(i))}for(let o=l>0?l+1:0;o<i;){const l=r;for(let e=1,n=Km;;n+=Km){if(o>=i){fw("invalid-input")}const l=pw(t.charCodeAt(o++));if(l>=Km){fw("invalid-input")}if(l>ow((Zm-r)/e)){fw("overflow")}r+=l*e;const u=n<=s?Vm:n>=s+Gm?Gm:n-s;if(l<u){break}const f=Km-u;if(e>ow(Zm/f)){fw("overflow")}e*=f}const u=e.length+1;s=ww(r-l,u,l==0);if(ow(r/u)>Zm-n){fw("overflow")}n+=ow(r/u);r%=u;e.splice(r++,0,n)}return String.fromCodePoint(...e)};const bw=function(t){const e=[];t=cw(t);const i=t.length;let r=tw;let n=0;let s=Qm;for(const i of t){if(i<128){e.push(uw(i))}}const l=e.length;let o=l;if(l){e.push(ew)}while(o<i){let i=Zm;for(const e of t){if(e>=r&&e<i){i=e}}const u=o+1;if(i-r>ow((Zm-n)/u)){fw("overflow")}n+=(i-r)*u;r=i;for(const i of t){if(i<r&&++n>Zm){fw("overflow")}if(i===r){let t=n;for(let i=Km;;i+=Km){const r=i<=s?Vm:i>=s+Gm?Gm:i-s;if(t<r){break}const n=t-r;const l=Km-r;e.push(uw(mw(r+n%l,0)));t=ow(n/l)}e.push(uw(mw(t,0)));s=ww(n,u,o===l);n=0;++o}}++n;++r}return e.join("")};const kw=function(t){return aw(t,(function(t){return iw.test(t)?gw(t.slice(4).toLowerCase()):t}))};const Dw=function(t){return aw(t,(function(t){return rw.test(t)?"xn--"+bw(t):t}))};const vw={version:"2.3.1",ucs2:{decode:cw,encode:dw},decode:gw,encode:bw,toASCII:Dw,toUnicode:kw};const yw={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}};const Fw={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 Ew={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 xw={default:yw,zero:Fw,commonmark:Ew};const Mw=/^(vbscript|javascript|file|data):/;const Aw=/^data:image\/(gif|png|jpeg|webp);/;function Cw(t){const e=t.trim().toLowerCase();return Mw.test(e)?Aw.test(e):true}const Sw=["http:","https:","mailto:"];function Ow(t){const e=Hc(t,true);if(e.hostname){if(!e.protocol||Sw.indexOf(e.protocol)>=0){try{e.hostname=vw.toASCII(e.hostname)}catch(t){}}}return Oc($c(e))}function $w(t){const e=Hc(t,true);if(e.hostname){if(!e.protocol||Sw.indexOf(e.protocol)>=0){try{e.hostname=vw.toUnicode(e.hostname)}catch(t){}}}return Ac($c(e),Ac.defaultChars+"%")}function _w(t,e){if(!(this instanceof _w)){return new _w(t,e)}if(!e){if(!id(t)){e=t||{};t="default"}}this.inline=new Mm;this.block=new Wp;this.core=new fp;this.renderer=new qd;this.linkify=new Hm;this.validateLink=Cw;this.normalizeLink=Ow;this.normalizeLinkText=$w;this.utils=Sd;this.helpers=sd({},Bd);this.options={};this.configure(t);if(e){this.set(e)}}_w.prototype.set=function(t){sd(this.options,t);return this};_w.prototype.configure=function(t){const e=this;if(id(t)){const e=t;t=xw[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};_w.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};_w.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};_w.prototype.use=function(t){const e=[this].concat(Array.prototype.slice.call(arguments,1));t.apply(t,e);return this};_w.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};_w.prototype.render=function(t,e){e=e||{};return this.renderer.render(this.parse(t,e),this.options,e)};_w.prototype.parseInline=function(t,e){const i=new this.core.State(t,this,e);i.inlineMode=true;this.core.process(i);return i.tokens};_w.prototype.renderInline=function(t,e){e=e||{};return this.renderer.render(this.parseInline(t,e),this.options,e)};const Bw=new fi({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 jw(t,e){if(t.isText&&e.isText&&ke.sameSet(t.marks,e.marks))return t.withText(t.text+e.text)}class qw{constructor(t,e){this.schema=t;this.tokenHandlers=e;this.stack=[{type:t.topNodeType,attrs:null,content:[],marks:ke.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=jw(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:ke.none})}closeNode(){let t=this.stack.pop();return this.addNode(t.type,t.attrs,t.content)}}function Rw(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 Nw(t,e){return t.noCloseToken||e=="code_inline"||e=="code_block"||e=="fence"}function zw(t){return t[t.length-1]=="\n"?t.slice(0,t.length-1):t}function Tw(){}function Iw(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(Nw(n,r)){i[r]=(t,i,r,s)=>{t.openNode(e,Rw(n,i,r,s));t.addText(zw(i.content));t.closeNode()}}else{i[r+"_open"]=(t,i,r,s)=>t.openNode(e,Rw(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,Rw(n,i,r,s))}else if(n.mark){let e=t.marks[n.mark];if(Nw(n,r)){i[r]=(t,i,r,s)=>{t.openMark(e.create(Rw(n,i,r,s)));t.addText(zw(i.content));t.closeMark(e)}}else{i[r+"_open"]=(t,i,r,s)=>t.openMark(e.create(Rw(n,i,r,s)));i[r+"_close"]=t=>t.closeMark(e)}}else if(n.ignore){if(Nw(n,r)){i[r]=Tw}else{i[r+"_open"]=Tw;i[r+"_close"]=Tw}}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 Pw{constructor(t,e,i){this.schema=t;this.tokenizer=e;this.tokens=i;this.tokenHandlers=Iw(t,i)}parse(t,e={}){let i=new qw(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 Jw(t,e){while(++e<t.length)if(t[e].type!="list_item_open")return t[e].hidden;return false}new Pw(Bw,_w("commonmark",{html:false}),{blockquote:{block:"blockquote"},paragraph:{block:"paragraph"},list_item:{block:"list_item"},bullet_list:{block:"bullet_list",getAttrs:(t,e,i)=>({tight:Jw(e,i)})},ordered_list:{block:"ordered_list",getAttrs:(t,e,i)=>({order:+t.attrGet("start")||1,tight:Jw(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 Lw{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 Zw(this.nodes,this.marks,e);i.renderContent(t);return i.out}}const Uw=new Lw({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("]/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=Hw(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 Ww(i.child(r),-1)},close(t,e,i,r){return Ww(i.child(r-1),1)},escape:false}});function Ww(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 Hw(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 Zw{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 o=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){o+=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 u=l.length?l[l.length-1]:null;let f=u&&this.marks[u.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(o)this.text(o);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(u,true,t,s)+e.text+this.markString(u,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 Kw=new Lw(Object.assign({},Uw.nodes),Object.assign(Object.assign({},Uw.marks),{strikethrough:{open:"~~",close:"~~",mixable:true,expelEnclosingWhitespace:true}}));class Vw{constructor(){this.parseAsHTML=t=>M(t);this.serialize=t=>{if(t.dom.textContent===""){return""}else{return Kw.serialize(t.state.doc)}}}}class Gw{constructor(){this.parseAsHTML=t=>new Promise((e=>{e(t)}));this.serialize=t=>{if(t.dom.textContent===""){return""}else{return t.dom.innerHTML}}}}const Xw={parseDOM:[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration=line-through"}],toDOM:()=>["s",0]};const Yw=new dn("linkPlugin");const Qw=(t,e)=>{const{from:i,to:r}=t.state.selection;let n="";let s="";t.state.doc.nodesBetween(i,r,((t,e)=>{if(t.type.name!=="text"){return}const l=Math.max(0,i-e);const o=Math.min(t.text.length,r-e);n+=t.text.slice(l,o);t.marks.forEach((t=>{if(t.type.name==="link"){s=t.attrs.href}}))}));if(e){e(n,s)}};const tg=(t,e,i)=>{while(e>0){const r=t.nodeAt(e-1);if(!(r===null||r===void 0?void 0:r.isText)||!r.marks.some((t=>t.type.name===Qa.Link&&t.attrs.href===i))){break}e--}return e};const eg=(t,e,i)=>{while(e<t.content.size){const r=t.nodeAt(e);if(!(r===null||r===void 0?void 0:r.isText)||!r.marks.some((t=>t.type.name===Qa.Link&&t.attrs.href===i))){break}e++}return e};const ig=(t,e)=>{const i=t.posAtCoords({left:e.clientX,top:e.clientY});const r=t.state.doc.nodeAt(i.pos);if(!r){return null}const n=r.marks.find((t=>t.type.name===Qa.Link));if(!n){return null}const s=n.attrs.href;const l=tg(t.state.doc,i.pos,s);const o=eg(t.state.doc,i.pos,s);const u=t.state.doc.textBetween(l,o," ");return{href:s,text:u,from:l,to:o}};const rg=(t,e)=>{const{href:i}=ig(t,e);if(i){window.open(i,"_blank");return true}return false};const ng=(t,e,i)=>{const r=new CustomEvent("open-editor-link-menu",{detail:{href:e,text:i},bubbles:true,composed:true});t.dom.dispatchEvent(r)};let sg=0;const lg=200;let og;const ug=(t,e)=>{const i=Date.now();if(i-sg<lg){clearTimeout(og);sg=i;return false}sg=i;og=setTimeout((()=>{const i=ig(t,e);if(i){const{href:e,text:r,from:n,to:s}=i;const l=t.state.tr.setSelection(Wr.create(t.state.doc,n,s));t.dispatch(l);ng(t,e,r)}}),lg);return true};const fg=(t,e)=>{const i=e.clipboardData;if(!i){return false}const r=i.getData("text/plain");if(ac(r)){hg(t,r);return true}return false};const hg=(t,e)=>{const{state:i,dispatch:r}=t;const{from:n,to:s}=i.selection;const l=zu.marks.link.create({href:e,title:e,target:fc(e)?"_blank":null});const o=i.doc.textBetween(n,s," ")||e;const u=i.tr.insertText(o,n,s).addMark(n,n+o.length,l);r(u)};const ag=t=>new hn({key:Yw,props:{handlePaste:(t,e)=>fg(t,e),handleDOMEvents:{mousedown:(t,e)=>{if((e.metaKey||e.ctrlKey)&&e.button===0){return rg(t,e)}if(e.button!==ic.Right){return ug(t,e)}return true},click:(t,e)=>{if(!(e.target instanceof HTMLElement)){return}const i=e.target.closest("a");if(i){e.preventDefault();e.stopPropagation()}}}},view:()=>({update:e=>{Qw(e,t)}})});const cg=new dn("imageRemoverPlugin");const dg=()=>new hn({key:cg,props:{handlePaste:(t,e,i)=>wg(t,e,i)}});const pg=t=>{if(t instanceof Ie){if(t.type.name==="image"){return true}let e=false;t.content.forEach((t=>{if(pg(t)){e=true}}));return e}else if(t instanceof me){let e=false;t.forEach((t=>{if(pg(t)){e=true}}));return e}return false};const mg=t=>{const e=[];t.forEach((t=>{if(!pg(t)){if(t.content.size>0){const i=mg(t.content);const r=t.copy(i);e.push(r)}else{e.push(t)}}}));return me.fromArray(e)};const wg=(t,e,i)=>{const r=e.clipboardData;if(!r){return false}const n=new ve(mg(i.content),i.openStart,i.openEnd);if(n.content.childCount<i.content.childCount){const{state:e,dispatch:i}=t;const r=e.tr.replaceSelection(n);i(r);return true}return false};const gg=new dn("actionBarPlugin");const bg=(t,e,i)=>{const r={};t.forEach((t=>{const n=e.getCommand(t);r[t]=n&&n.active&&n.active(i.state)}));return r};const kg=(t,e,i)=>new hn({key:gg,state:{init:()=>({}),apply:(t,e)=>{const i=t.getMeta(gg);return i?i:e}},view:()=>({update:r=>{const n=gg.getState(r.state);const s=bg(t,e,r);if(!O(n,s)){const t=r.state.tr.setMeta(gg,s);r.dispatch(t);i(s)}}})});const Dg=new dn("actionBarInteractionPlugin");const vg=(t,e)=>{const{state:i}=e;const r=i.selection;let n=i.tr;if(!r.empty){n.setSelection(r)}t(i,(t=>{n=t}));e.dispatch(n);e.focus()};const yg=t=>new hn({key:Dg,props:{handleDOMEvents:{actionBarItemClick:(e,i)=>{i.preventDefault();i.stopPropagation();const{value:r}=i.detail;try{const i=t.getCommand(r);vg(i,e)}catch(t){console.error(`Error executing command: ${t}`)}return true},saveLinkMenu:(e,i)=>{i.preventDefault();i.stopPropagation();const{type:r,link:n}=i.detail;if(r===Qa.Link){try{const i=t.getCommand(r,n);vg(i,e)}catch(t){console.error(`Error executing command: ${t}`)}}return true}}}});const Fg='@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%;flex-grow:1}*{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}limel-portal{width:25rem}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 Eg=class{constructor(i){t(this,i);this.change=e(this,"change",7);this.suppressChangeEvent=false;this.getActionBarItems=()=>{this.actionBarItems=Fc().map(this.getTranslatedItem)};this.getTranslatedItem=t=>{const e=ae(t);if(S(t)){const i=Ec[t.value];if(i){e.text=A.get(i,this.language)}}return e};this.updateActiveActionBarItems=t=>{const e=Fc().map((e=>{if(S(e)){return Object.assign(Object.assign({},e),{selected:t[e.value]})}return e}));this.actionBarItems=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();t.stopImmediatePropagation();const{value:e}=t.detail;if(e===Qa.Link){this.isLinkMenuOpen=true;return}const i=new CustomEvent("actionBarItemClick",{detail:t.detail});this.view.dom.dispatchEvent(i)};this.handleCancelLinkMenu=t=>{t.preventDefault();t.stopPropagation();this.isLinkMenuOpen=false;this.link={text:"",href:""}};this.handleSaveLinkMenu=()=>{this.isLinkMenuOpen=false;const t=new CustomEvent("saveLinkMenu",{detail:{type:Qa.Link,link:this.link}});this.view.dom.dispatchEvent(t);this.link={href:""}};this.handleLinkChange=t=>{this.link=t.detail};this.handleNewLinkSelection=(t,e)=>{this.link.text=t;this.link.href=e};this.handleOpenLinkMenu=t=>{t.stopImmediatePropagation();const{href:e,text:i}=t.detail;this.link={href:e,text:i};this.isLinkMenuOpen=true};this.contentType="markdown";this.value=undefined;this.language=undefined;this.view=undefined;this.actionBarItems=[];this.link={href:""};this.isLinkMenuOpen=false;this.portalId=C()}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)}connectedCallback(){if(this.view){this.initializeTextEditor()}this.host.addEventListener("open-editor-link-menu",this.handleOpenLinkMenu)}disconnectedCallback(){this.host.removeEventListener("open-editor-link-menu",this.handleOpenLinkMenu);this.view.destroy()}render(){return[i("div",{id:"editor"}),i("limel-action-bar",{ref:t=>this.actionBarElement=t,accessibleLabel:"Toolbar",actions:this.actionBarItems,onItemSelected:this.handleActionBarItem}),this.renderLinkMenu()]}renderLinkMenu(){if(!this.isLinkMenuOpen){return}return i("limel-portal",{visible:this.isLinkMenuOpen,openDirection:"top",inheritParentWidth:true,anchor:this.actionBarElement},i("limel-text-editor-link-menu",{id:this.portalId,link:this.link,isOpen:this.isLinkMenuOpen,onLinkChange:this.handleLinkChange,onCancel:this.handleCancelLinkMenu,onSave:this.handleSaveLinkMenu}))}setupContentConverter(){if(this.contentType==="markdown"){this.contentConverter=new Vw}else if(this.contentType==="html"){this.contentConverter=new Gw}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 bc(this.schema);this.view=new Du(this.host.shadowRoot.querySelector("#editor"),{state:this.createEditorState(t),dispatchTransaction:this.handleTransaction});if(this.value){this.updateView(this.value)}}initializeSchema(){return new fi({nodes:Hu(zu.spec.nodes,"paragraph block*","block"),marks:zu.spec.marks.append({strikethrough:Xw})})}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 ai.fromSchema(this.schema).parse(t)}createEditorState(t){return un.create({doc:t,plugins:[...Ya({schema:this.schema,menuBar:false}),cf(this.menuCommandFactory.buildKeymap()),ag(this.handleNewLinkSelection),dg(),kg(tc,this.menuCommandFactory,this.updateActiveActionBarItems),yg(this.menuCommandFactory)]})}async updateView(t){this.suppressChangeEvent=true;const e=await this.contentConverter.parseAsHTML(t,this.schema);const i=ai.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}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"]}}};Eg.style=Fg;export{Eg as limel_prosemirror_adapter};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,c as e,h as i,g as r}from"./p-443111b3.js";import{k as n,q as s,U as l,e as o,g as u,t as f,u as h,i as a,h as c,v as d}from"./p-f069e11f.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-836774a8.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-1c8ce194.js";import{t as A}from"./p-1b6c1122.js";import{c as C}from"./p-3ccdc4a3.js";import{i as S}from"./p-91741e79.js";import{i as O}from"./p-7377db39.js";import"./p-eda23c05.js";import"./p-4c3358cb.js";import"./p-7f43b0c4.js";import"./p-5fdb83c9.js";import"./p-eab67c09.js";var $=Object.create;var _=function(){function t(){}return function(e){if(!D(e)){return{}}if($){return $(e)}t.prototype=e;var i=new t;t.prototype=undefined;return i}}();function B(t,e){var i=-1,r=t.length;e||(e=Array(r));while(++i<r){e[i]=t[i]}return e}function j(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 q(t,e,i,r){var n=!i;i||(i={});var s=-1,l=e.length;while(++s<l){var o=e[s];var u=r?r(i[o],t[o],o,i,t):undefined;if(u===undefined){u=t[o]}if(n){p(i,o,u)}else{m(i,o,u)}}return i}function R(t,e){return t&&q(e,n(e),t)}function N(t,e){return t&&q(e,w(e),t)}var z=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var T=z&&typeof module=="object"&&module&&!module.nodeType&&module;var I=T&&T.exports===z;var P=I?v.Buffer:undefined,J=P?P.allocUnsafe:undefined;function L(t,e){if(e){return t.slice()}var i=t.length,r=J?J(i):new t.constructor(i);t.copy(r);return r}function U(t,e){return q(t,s(t),e)}function W(t,e){return q(t,g(t),e)}var H=Object.prototype;var Z=H.hasOwnProperty;function K(t){var e=t.length,i=new t.constructor(e);if(e&&typeof t[0]=="string"&&Z.call(t,"index")){i.index=t.index;i.input=t.input}return i}function V(t){var e=new t.constructor(t.byteLength);new l(e).set(new l(t));return e}function G(t,e){var i=e?V(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.byteLength)}var X=/\w*$/;function Y(t){var e=new t.constructor(t.source,X.exec(t));e.lastIndex=t.lastIndex;return e}var Q=y?y.prototype:undefined,tt=Q?Q.valueOf:undefined;function et(t){return tt?Object(tt.call(t)):{}}function it(t,e){var i=e?V(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.length)}var rt="[object Boolean]",nt="[object Date]",st="[object Map]",lt="[object Number]",ot="[object RegExp]",ut="[object Set]",ft="[object String]",ht="[object Symbol]";var at="[object ArrayBuffer]",ct="[object DataView]",dt="[object Float32Array]",pt="[object Float64Array]",mt="[object Int8Array]",wt="[object Int16Array]",gt="[object Int32Array]",bt="[object Uint8Array]",kt="[object Uint8ClampedArray]",Dt="[object Uint16Array]",vt="[object Uint32Array]";function yt(t,e,i){var r=t.constructor;switch(e){case at:return V(t);case rt:case nt:return new r(+t);case ct:return G(t,i);case dt:case pt:case mt:case wt:case gt:case bt:case kt:case Dt:case vt:return it(t,i);case st:return new r;case lt:case ft:return new r(t);case ot:return Y(t);case ut:return new r;case ht:return et(t)}}function Ft(t){return typeof t.constructor=="function"&&!o(t)?_(b(t)):{}}var Et="[object Map]";function xt(t){return E(t)&&u(t)==Et}var Mt=h&&h.isMap;var At=Mt?f(Mt):xt;var Ct="[object Set]";function St(t){return E(t)&&u(t)==Ct}var Ot=h&&h.isSet;var $t=Ot?f(Ot):St;var _t=1,Bt=2,jt=4;var qt="[object Arguments]",Rt="[object Array]",Nt="[object Boolean]",zt="[object Date]",Tt="[object Error]",It="[object Function]",Pt="[object GeneratorFunction]",Jt="[object Map]",Lt="[object Number]",Ut="[object Object]",Wt="[object RegExp]",Ht="[object Set]",Zt="[object String]",Kt="[object Symbol]",Vt="[object WeakMap]";var Gt="[object ArrayBuffer]",Xt="[object DataView]",Yt="[object Float32Array]",Qt="[object Float64Array]",te="[object Int8Array]",ee="[object Int16Array]",ie="[object Int32Array]",re="[object Uint8Array]",ne="[object Uint8ClampedArray]",se="[object Uint16Array]",le="[object Uint32Array]";var oe={};oe[qt]=oe[Rt]=oe[Gt]=oe[Xt]=oe[Nt]=oe[zt]=oe[Yt]=oe[Qt]=oe[te]=oe[ee]=oe[ie]=oe[Jt]=oe[Lt]=oe[Ut]=oe[Wt]=oe[Ht]=oe[Zt]=oe[Kt]=oe[re]=oe[ne]=oe[se]=oe[le]=true;oe[Tt]=oe[It]=oe[Vt]=false;function ue(t,e,i,r,s,l){var o,f=e&_t,h=e&Bt,p=e&jt;if(i){o=s?i(t,r,s,l):i(t)}if(o!==undefined){return o}if(!D(t)){return t}var g=F(t);if(g){o=K(t);if(!f){return B(t,o)}}else{var b=u(t),v=b==It||b==Pt;if(a(t)){return L(t,f)}if(b==Ut||b==qt||v&&!s){o=h||v?{}:Ft(t);if(!f){return h?W(t,N(o,t)):U(t,R(o,t))}}else{if(!oe[b]){return s?t:{}}o=yt(t,b,f)}}l||(l=new c);var y=l.get(t);if(y){return y}l.set(t,o);if($t(t)){t.forEach((function(r){o.add(ue(r,e,i,r,t,l))}))}else if(At(t)){t.forEach((function(r,n){o.set(n,ue(r,e,i,n,t,l))}))}var E=p?h?k:d:h?w:n;var x=g?undefined:E(t);j(x||t,(function(r,n){if(x){n=r;r=t[n]}m(o,n,ue(r,e,i,n,t,l))}));return o}var fe=1,he=4;function ae(t){return ue(t,fe|he)}function ce(t){this.content=t}ce.prototype={constructor:ce,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 ce(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 ce(i)},addToStart:function(t,e){return new ce([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var i=this.remove(t).content.slice();i.push(t,e);return new ce(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 ce(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=ce.from(t);if(!t.size)return this;return new ce(t.content.concat(this.subtract(t).content))},append:function(t){t=ce.from(t);if(!t.size)return this;return new ce(this.subtract(t).content.concat(t.content))},subtract:function(t){var e=this;t=ce.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}};ce.from=function(t){if(t instanceof ce)return t;var e=[];if(t)for(var i in t)e.push(i,t[i]);return new ce(e)};function de(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=de(n.content,s.content,i+1);if(t!=null)return t}i+=n.nodeSize}}function pe(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),o=e.child(--s),u=l.nodeSize;if(l==o){i-=u;r-=u;continue}if(!l.sameMarkup(o))return{a:i,b:r};if(l.isText&&l.text!=o.text){let t=0,e=Math.min(l.text.length,o.text.length);while(t<e&&l.text[l.text.length-t-1]==o.text[o.text.length-t-1]){t++;i--;r--}return{a:i,b:r}}if(l.content.size||o.content.size){let t=pe(l.content,o.content,i-1,r-1);if(t)return t}i-=u;r-=u}}class me{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 o=this.content[s],u=l+o.nodeSize;if(u>t&&i(o,r+l,n||null,s)!==false&&o.content.size){let n=l+1;o.nodesBetween(Math.max(0,t-n),Math.min(o.content.size,e-n),i,r+n)}l=u}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,i,r){let n="",s=true;this.nodesBetween(t,e,((l,o)=>{let u=l.isText?l.text.slice(Math.max(t,o)-o,e-o):!l.isLeaf?"":r?typeof r==="function"?r(l):r:l.type.spec.leafText?l.type.spec.leafText(l):"";if(l.isBlock&&(l.isLeaf&&u||l.isTextblock)&&i){if(s)s=false;else n+=i}n+=u}),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 me(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],o=s+l.nodeSize;if(o>t){if(s<t||o>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=o}return new me(i,r)}cutByIndex(t,e){if(t==e)return me.empty;if(t==0&&e==this.content.length)return this;return new me(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 me(r,n)}addToStart(t){return new me([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new me(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 de(this,t,e)}findDiffEnd(t,e=this.size,i=t.size){return pe(this,t,e,i)}findIndex(t,e=-1){if(t==0)return ge(0,t);if(t==this.size)return ge(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 ge(i+1,s);return ge(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 me.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new me(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return me.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 me(e||t,i)}static from(t){if(!t)return me.empty;if(t instanceof me)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new me([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}me.empty=new me([],0);const we={index:0,offset:0};function ge(t,e){we.index=t;we.offset=e;return we}function be(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(!be(t[i],e[i]))return false}else{for(let i in t)if(!(i in e)||!be(t[i],e[i]))return false;for(let i in e)if(!(i in t))return false}return true}class ke{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&&be(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 ke.none;if(t instanceof ke)return[t];let e=t.slice();e.sort(((t,e)=>t.type.rank-e.type.rank));return e}}ke.none=[];class De extends Error{}class ve{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=Fe(this.content,t+this.openStart,e);return i&&new ve(i,this.openStart,this.openEnd)}removeBetween(t,e){return new ve(ye(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 ve.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 ve(me.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 ve(t,i,r)}}ve.empty=new ve(me.empty,0,0);function ye(t,e,i){let{index:r,offset:n}=t.findIndex(e),s=t.maybeChild(r);let{index:l,offset:o}=t.findIndex(i);if(n==e||s.isText){if(o!=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(ye(s.content,e-n-1,i-n-1)))}function Fe(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 o=Fe(l.content,e-s-1,i);return o&&t.replaceChild(n,l.copy(o))}function Ee(t,e,i){if(i.openStart>t.depth)throw new De("Inserted content deeper than insertion position");if(t.depth-i.openStart!=e.depth-i.openEnd)throw new De("Inconsistent open depths");return xe(t,e,i,0)}function xe(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=xe(t,e,i,r+1);return s.copy(s.content.replaceChild(n,l))}else if(!i.content.size){return Oe(s,_e(t,e,r))}else if(!i.openStart&&!i.openEnd&&t.depth==r&&e.depth==r){let r=t.parent,n=r.content;return Oe(r,n.cut(0,t.parentOffset).append(i.content).append(n.cut(e.parentOffset)))}else{let{start:n,end:l}=Be(i,t);return Oe(s,$e(t,n,l,e,r))}}function Me(t,e){if(!e.type.compatibleContent(t.type))throw new De("Cannot join "+e.type.name+" onto "+t.type.name)}function Ae(t,e,i){let r=t.node(i);Me(r,e.node(i));return r}function Ce(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 Se(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){Ce(t.nodeAfter,r);s++}}for(let t=s;t<l;t++)Ce(n.child(t),r);if(e&&e.depth==i&&e.textOffset)Ce(e.nodeBefore,r)}function Oe(t,e){t.type.checkContent(e);return t.copy(e)}function $e(t,e,i,r,n){let s=t.depth>n&&Ae(t,e,n+1);let l=r.depth>n&&Ae(i,r,n+1);let o=[];Se(null,t,n,o);if(s&&l&&e.index(n)==i.index(n)){Me(s,l);Ce(Oe(s,$e(t,e,i,r,n+1)),o)}else{if(s)Ce(Oe(s,_e(t,e,n+1)),o);Se(e,i,n,o);if(l)Ce(Oe(l,_e(i,r,n+1)),o)}Se(r,null,n,o);return new me(o)}function _e(t,e,i){let r=[];Se(null,t,i,r);if(t.depth>i){let n=Ae(t,e,i+1);Ce(Oe(n,_e(t,e,i+1)),r)}Se(e,null,i,r);return new me(r)}function Be(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(me.from(n));return{start:n.resolveNoCache(t.openStart+i),end:n.resolveNoCache(n.content.size-t.openEnd-i)}}class je{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 ke.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 ze(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 je(e,i,n)}static resolveCached(t,e){for(let i=0;i<qe.length;i++){let r=qe[i];if(r.pos==e&&r.doc==t)return r}let i=qe[Re]=je.resolve(t,e);Re=(Re+1)%Ne;return i}}let qe=[],Re=0,Ne=12;class ze{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 Te=Object.create(null);class Ie{constructor(t,e,i,r=ke.none){this.type=t;this.attrs=e;this.marks=r;this.content=i||me.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&&be(this.attrs,e||t.defaultAttrs||Te)&&ke.sameSet(this.marks,i||ke.none)}copy(t=null){if(t==this.content)return this;return new Ie(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new Ie(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 ve.empty;let r=this.resolve(t),n=this.resolve(e);let s=i?0:r.sharedDepth(e);let l=r.start(s),o=r.node(s);let u=o.content.cut(r.pos-l,n.pos-l);return new ve(u,r.depth-s,n.depth-s)}replace(t,e,i){return Ee(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 je.resolveCached(this,t)}resolveNoCache(t){return je.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 Je(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=me.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=ke.none;for(let e=0;e<this.marks.length;e++)t=this.marks[e].addToSet(t);if(!ke.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=me.fromJSON(t,e.content);return t.nodeType(e.type).create(e.attrs,r,i)}}Ie.prototype.text=undefined;class Pe extends Ie{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 Je(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 Pe(this.type,this.attrs,this.text,t)}withText(t){if(t==this.text)return this;return new Pe(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 Je(t,e){for(let i=t.length-1;i>=0;i--)e=t[i].type.name+"("+e+")";return e}class Le{constructor(t){this.validEnd=t;this.next=[];this.wrapCache=[]}static parse(t,e){let i=new Ue(t,e);if(i.next==null)return Le.empty;let r=We(i);if(i.next)i.err("Unexpected trailing text");let n=ei(Ye(r));ii(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 o=s.matchFragment(t,i);if(o&&(!e||o.validEnd))return me.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")}}Le.empty=new Le(true);class Ue{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 We(t){let e=[];do{e.push(He(t))}while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function He(t){let e=[];do{e.push(Ze(t))}while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function Ze(t){let e=Xe(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=Ve(t,e);else break}return e}function Ke(t){if(/\D/.test(t.next))t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);t.pos++;return e}function Ve(t,e){let i=Ke(t),r=i;if(t.eat(",")){if(t.next!="}")r=Ke(t);else r=-1}if(!t.eat("}"))t.err("Unclosed braced range");return{type:"range",min:i,max:r,expr:e}}function Ge(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 Xe(t){if(t.eat("(")){let e=We(t);if(!t.eat(")"))t.err("Missing closing paren");return e}else if(!/\W/.test(t.next)){let e=Ge(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 Ye(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 Qe(t,e){return e-t}function ti(t,e){let i=[];r(e);return i.sort(Qe);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 ei(t){let e=Object.create(null);return i(ti(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];ti(t,i).forEach((t=>{if(!r)n.push([e,r=[]]);if(r.indexOf(t)==-1)r.push(t)}))}))}));let s=e[r.join(",")]=new Le(r.indexOf(t.length-1)>-1);for(let t=0;t<n.length;t++){let r=n[t][1].sort(Qe);s.next.push({type:n[t][0],next:e[r.join(",")]||i(r)})}return s}}function ii(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 ri(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 ni(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 si(t){let e=Object.create(null);if(t)for(let i in t)e[i]=new oi(t[i]);return e}class li{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=si(i.attrs);this.defaultAttrs=ri(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==Le.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 ni(this.attrs,t)}create(t=null,e,i){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new Ie(this,this.computeAttrs(t),me.from(e),ke.setFrom(i))}createChecked(t=null,e,i){e=me.from(e);this.checkContent(e);return new Ie(this,this.computeAttrs(t),e,ke.setFrom(i))}createAndFill(t=null,e,i){t=this.computeAttrs(t);e=me.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(me.empty,true);if(!n)return null;return new Ie(this,t,e.append(n),ke.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:ke.none}static compile(t,e){let i=Object.create(null);t.forEach(((t,r)=>i[t]=new li(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 oi{constructor(t){this.hasDefault=Object.prototype.hasOwnProperty.call(t,"default");this.default=t.default}get isRequired(){return!this.hasDefault}}class ui{constructor(t,e,i,r){this.name=t;this.rank=e;this.schema=i;this.spec=r;this.attrs=si(r.attrs);this.excluded=null;let n=ri(this.attrs);this.instance=n?new ke(this,n):null}create(t=null){if(!t&&this.instance)return this.instance;return new ke(this,ni(this.attrs,t))}static compile(t,e){let i=Object.create(null),r=0;t.forEach(((t,n)=>i[t]=new ui(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 fi{constructor(t){this.cached=Object.create(null);let e=this.spec={};for(let i in t)e[i]=t[i];e.nodes=ce.from(t.nodes),e.marks=ce.from(t.marks||{}),this.nodes=li.compile(this.spec.nodes,this);this.marks=ui.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]=Le.parse(r,this.nodes));e.inlineContent=e.contentMatch.inlineContent;e.markSet=n=="_"?null:n?hi(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==""?[]:hi(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 li))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 Pe(i,i.defaultAttrs,t,ke.setFrom(e))}mark(t,e){if(typeof t=="string")t=this.marks[t];return t.create(e)}nodeFromJSON(t){return Ie.fromJSON(this,t)}markFromJSON(t){return ke.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function hi(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 ai{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 Di(this,e,false);i.addAll(t,e.from,e.to);return i.finish()}parseSlice(t,e={}){let i=new Di(this,e,true);i.addAll(t,e.from,e.to);return ve.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(yi(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=Ei(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=Ei(t));if(!(t.node||t.ignore||t.mark))t.node=e}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new ai(t,ai.schemaRules(t)))}}const ci={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 di={head:true,noscript:true,object:true,script:true,style:true,title:true};const pi={ol:true,ul:true};const mi=1,wi=2,gi=4;function bi(t,e,i){if(e!=null)return(e?mi:0)|(e==="full"?wi:0);return t&&t.whitespace=="pre"?mi|wi:i&~gi}class ki{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=ke.none;this.stashMarks=[];this.match=s||(l&gi?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(me.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&mi)){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=me.from(this.content);if(!t&&this.match)e=e.append(this.match.fillBefore(me.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):xi(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&&!ci.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class Di{constructor(t,e,i){this.parser=t;this.options=e;this.isOpen=i;this.open=0;let r=e.topNode,n;let s=bi(null,e.preserveWhitespace,0)|(i?gi:0);if(r)n=new ki(r.type,r.attrs,ke.none,ke.none,true,e.topMatch||r.type.contentMatch,s);else if(i)n=new ki(null,null,ke.none,ke.none,true,null,s);else n=new ki(t.schema.topNodeType,null,ke.none,ke.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(Fi(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&wi||i.inlineContext(t)||/[^ \t\r\n\u000c]/.test(e)){if(!(i.options&mi)){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&wi)){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(pi.hasOwnProperty(i)&&this.parser.normalizeLists)vi(t);let n=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(r=this.parser.matchTag(t,this,e));if(n?n.ignore:di.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(ci.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=ke.none,i=ke.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=bi(t,r,n.options);if(n.options&gi&&n.content.length==0)s|=gi;this.nodes.push(new ki(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 o=e[t];if(o==""){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!=o&&t.groups.indexOf(o)==-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=Mi(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 vi(t){for(let e=t.firstChild,i=null;e;e=e.nextSibling){let t=e.nodeType==1?e.nodeName.toLowerCase():null;if(t&&pi.hasOwnProperty(t)&&i){i.appendChild(e);e=i}else if(t=="li"){i=e}else if(t){i=null}}}function yi(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function Fi(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 Ei(t){let e={};for(let i in t)e[i]=t[i];return e}function xi(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 Mi(t,e){for(let i=0;i<e.length;i++){if(t.eq(e[i]))return e[i]}}class Ai{constructor(t,e){this.nodes=t;this.marks=e}serializeFragment(t,e={},i){if(!i)i=Si(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}=Ai.renderSpec(Si(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&&Ai.renderSpec(Si(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 o=e[1],u=1;if(o&&typeof o=="object"&&o.nodeType==null&&!Array.isArray(o)){u=2;for(let t in o)if(o[t]!=null){let e=t.indexOf(" ");if(e>0)l.setAttributeNS(t.slice(0,e),t.slice(e+1),o[t]);else l.setAttribute(t,o[t])}}for(let r=u;r<e.length;r++){let n=e[r];if(n===0){if(r<e.length-1||r>u)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}=Ai.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 Ai(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=Ci(t.nodes);if(!e.text)e.text=t=>t.text;return e}static marksFromSchema(t){return Ci(t.marks)}}function Ci(t){let e={};for(let i in t){let r=t[i].spec.toDOM;if(r)e[i]=r}return e}function Si(t){return t.document||window.document}const Oi=65535;const $i=Math.pow(2,16);function _i(t,e){return t+e*$i}function Bi(t){return t&Oi}function ji(t){return(t-(t&Oi))/$i}const qi=1,Ri=2,Ni=4,zi=8;class Ti{constructor(t,e,i){this.pos=t;this.delInfo=e;this.recover=i}get deleted(){return(this.delInfo&zi)>0}get deletedBefore(){return(this.delInfo&(qi|Ni))>0}get deletedAfter(){return(this.delInfo&(Ri|Ni))>0}get deletedAcross(){return(this.delInfo&Ni)>0}}class Ii{constructor(t,e=false){this.ranges=t;this.inverted=e;if(!t.length&&Ii.empty)return Ii.empty}recover(t){let e=0,i=Bi(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+ji(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 o=this.ranges[l]-(this.inverted?r:0);if(o>t)break;let u=this.ranges[l+n],f=this.ranges[l+s],h=o+u;if(t<=h){let n=!u?e:t==o?-1:t==h?1:e;let s=o+r+(n<0?0:f);if(i)return s;let a=t==(e<0?o:h)?null:_i(l/3,t-o);let c=t==o?Ri:t==h?qi:Ni;if(e<0?t!=o:t!=h)c|=zi;return new Ti(s,c,a)}r+=f-u}return i?t+r:new Ti(t+r,0,null)}touches(t,e){let i=0,r=Bi(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 o=this.ranges[e+n],u=l+o;if(t<=u&&e==r*3)return true;i+=this.ranges[e+s]-o}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),o=s+(this.inverted?0:n);let u=this.ranges[r+e],f=this.ranges[r+i];t(l,l+u,o,o+f);n+=f-u}}invert(){return new Ii(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?Ii.empty:new Ii(t<0?[0,-t,0]:[0,0,t])}}Ii.empty=new Ii([]);class Pi{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 Pi(this.maps,this.mirror,t,e)}copy(){return new Pi(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 Pi;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 Ti(t,r,null)}}const Ji=Object.create(null);class Li{getMap(){return Ii.empty}merge(t){return null}static fromJSON(t,e){if(!e||!e.stepType)throw new RangeError("Invalid input for Step.fromJSON");let i=Ji[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 Ji)throw new RangeError("Duplicate use of step JSON ID "+t);Ji[t]=e;e.prototype.jsonID=t;return e}}class Ui{constructor(t,e){this.doc=t;this.failed=e}static ok(t){return new Ui(t,null)}static fail(t){return new Ui(null,t)}static fromReplace(t,e,i,r){try{return Ui.ok(t.replace(e,i,r))}catch(t){if(t instanceof De)return Ui.fail(t.message);throw t}}}function Wi(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(Wi(s.content,e,s));if(s.isInline)s=e(s,i,n);r.push(s)}return me.fromArray(r)}class Hi extends Li{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 ve(Wi(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 Ui.fromReplace(t,this.from,this.to,n)}invert(){return new Zi(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 Hi(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Hi&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Hi(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 Hi(e.from,e.to,t.markFromJSON(e.mark))}}Li.jsonID("addMark",Hi);class Zi extends Li{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 ve(Wi(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Ui.fromReplace(t,this.from,this.to,i)}invert(){return new Hi(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 Zi(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Zi&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Zi(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 Zi(e.from,e.to,t.markFromJSON(e.mark))}}Li.jsonID("removeMark",Zi);class Ki extends Li{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Ui.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Ui.fromReplace(t,this.pos,this.pos+1,new ve(me.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 Ki(this.pos,e.marks[i]);return new Ki(this.pos,this.mark)}}return new Vi(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Ki(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 Ki(e.pos,t.markFromJSON(e.mark))}}Li.jsonID("addNodeMark",Ki);class Vi extends Li{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Ui.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.removeFromSet(e.marks));return Ui.fromReplace(t,this.pos,this.pos+1,new ve(me.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 Ki(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Vi(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 Vi(e.pos,t.markFromJSON(e.mark))}}Li.jsonID("removeNodeMark",Vi);class Gi extends Li{constructor(t,e,i,r=false){super();this.from=t;this.to=e;this.slice=i;this.structure=r}apply(t){if(this.structure&&Yi(t,this.from,this.to))return Ui.fail("Structure replace would overwrite content");return Ui.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new Ii([this.from,this.to-this.from,this.slice.size])}invert(t){return new Gi(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 Gi(e.pos,Math.max(e.pos,i.pos),this.slice)}merge(t){if(!(t instanceof Gi)||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?ve.empty:new ve(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new Gi(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?ve.empty:new ve(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new Gi(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 Gi(e.from,e.to,ve.fromJSON(t,e.slice),!!e.structure)}}Li.jsonID("replace",Gi);class Xi extends Li{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&&(Yi(t,this.from,this.gapFrom)||Yi(t,this.gapTo,this.to)))return Ui.fail("Structure gap-replace would overwrite content");let e=t.slice(this.gapFrom,this.gapTo);if(e.openStart||e.openEnd)return Ui.fail("Gap is not a flat range");let i=this.slice.insertAt(this.insert,e.content);if(!i)return Ui.fail("Content does not fit in gap");return Ui.fromReplace(t,this.from,this.to,i)}getMap(){return new Ii([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 Xi(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 Xi(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 Xi(e.from,e.to,e.gapFrom,e.gapTo,ve.fromJSON(t,e.slice),e.insert,!!e.structure)}}Li.jsonID("replaceAround",Xi);function Yi(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 Qi(t,e,i,r){let n=[],s=[];let l,o;t.doc.nodesBetween(e,i,((t,u,f)=>{if(!t.isInline)return;let h=t.marks;if(!r.isInSet(h)&&f.type.allowsMarkType(r.type)){let f=Math.max(u,e),a=Math.min(u+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 Zi(f,a,h[t]))}}if(o&&o.to==f)o.to=a;else s.push(o=new Hi(f,a,r))}}));n.forEach((e=>t.step(e)));s.forEach((e=>t.step(e)))}function tr(t,e,i,r){let n=[],s=0;t.doc.nodesBetween(e,i,((t,l)=>{if(!t.isInline)return;s++;let o=null;if(r instanceof ui){let e=t.marks,i;while(i=r.isInSet(e)){(o||(o=[])).push(i);e=i.removeFromSet(e)}}else if(r){if(r.isInSet(t.marks))o=[r]}else{o=t.marks}if(o&&o.length){let r=Math.min(l+t.nodeSize,i);for(let t=0;t<o.length;t++){let i=o[t],u;for(let t=0;t<n.length;t++){let e=n[t];if(e.step==s-1&&i.eq(n[t].style))u=e}if(u){u.to=r;u.step=s}else{n.push({style:i,from:Math.max(l,e),to:r,step:s})}}}}));n.forEach((e=>t.step(new Zi(e.from,e.to,e.style))))}function er(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 o=n.child(e),u=l+o.nodeSize;let f=r.matchType(o.type);if(!f){s.push(new Gi(l,u,ve.empty))}else{r=f;for(let e=0;e<o.marks.length;e++)if(!i.allowsMarkType(o.marks[e].type))t.step(new Zi(l,u,o.marks[e]));if(o.isText&&!i.spec.code){let t,e=/\r?\n|\r/g,r;while(t=e.exec(o.text)){if(!r)r=new ve(me.from(i.schema.text(" ",i.allowedMarks(o.marks))),0,0);s.push(new Gi(l+t.index,l+t.index+t[0].length,r))}}}l=u}if(!r.validEnd){let e=r.fillBefore(me.empty,true);t.replace(l,l,new ve(e,0,0))}for(let e=s.length-1;e>=0;e--)t.step(s[e])}function ir(t,e,i){return(e==0||t.canReplace(e,t.childCount))&&(i==t.childCount||t.canReplace(0,i))}function rr(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||!ir(r,n,s))break}return null}function nr(t,e,i){let{$from:r,$to:n,depth:s}=e;let l=r.before(s+1),o=n.after(s+1);let u=l,f=o;let h=me.empty,a=0;for(let t=s,e=false;t>i;t--)if(e||r.index(t)>0){e=true;h=me.from(r.node(t).copy(h));a++}else{u--}let c=me.empty,d=0;for(let t=s,e=false;t>i;t--)if(e||n.after(t+1)<n.end(t)){e=true;c=me.from(n.node(t).copy(c));d++}else{f++}t.step(new Xi(u,f,l,o,new ve(h.append(c),a,d),h.size-a,true))}function sr(t,e,i=null,r=t){let n=or(t,e);let s=n&&ur(r,e);if(!s)return null;return n.map(lr).concat({type:e,attrs:i}).concat(s.map(lr))}function lr(t){return{type:t,attrs:null}}function or(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 ur(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 o=l.length?l[l.length-1]:e;let u=o.contentMatch;for(let t=r;u&&t<n;t++)u=u.matchType(i.child(t).type);if(!u||!u.validEnd)return null;return l}function fr(t,e,i){let r=me.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=me.from(i[t].type.create(i[t].attrs,r))}let n=e.start,s=e.end;t.step(new Xi(n,s,n,s,new ve(r,0,0),i.length,true))}function hr(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)&&ar(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 o=l.map(i,1),u=l.map(i+e.nodeSize,1);t.step(new Xi(o,u,o+1,u-1,new ve(me.from(r.create(n,null,e.marks)),0,0),1,true));return false}}))}function ar(t,e,i){let r=t.resolve(e),n=r.index();return r.parent.canReplaceWith(n,n+1,i)}function cr(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 Xi(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new ve(me.from(l),0,0),1,true))}function dr(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 o=r&&r[e+1];if(o)l=l.replaceChild(0,o.type.create(o.attrs));let u=r&&r[e]||i;if(!i.canReplace(s+1,i.childCount)||!u.type.validContent(l))return false}let o=n.indexAfter(s);let u=r&&r[0];return n.node(s).canReplaceWith(o,o,u?u.type:n.node(s+1).type)}function pr(t,e,i=1,r){let n=t.doc.resolve(e),s=me.empty,l=me.empty;for(let t=n.depth,e=n.depth-i,o=i-1;t>e;t--,o--){s=me.from(n.node(t).copy(s));let e=r&&r[o];l=me.from(e?e.type.create(e.attrs,l):n.node(t).copy(l))}t.step(new Gi(e,e,new ve(s.append(l),i,i),true))}function mr(t,e){let i=t.resolve(e),r=i.index();return wr(i.nodeBefore,i.nodeAfter)&&i.parent.canReplace(r,r+1)}function wr(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function gr(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&&wr(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 br(t,e,i){let r=new Gi(e-i,e+i,ve.empty,true);t.step(r)}function kr(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 Dr(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),o=false;if(t==1){o=l.canReplace(s,s,n)}else{let t=l.contentMatchAt(s).findWrapping(n.firstChild.type);o=t&&l.canReplaceWith(s,s,t[0])}if(o)return i==0?r.pos:i<0?r.before(e+1):r.after(e+1)}}return null}function vr(t,e,i=e,r=ve.empty){if(e==i&&!r.size)return null;let n=t.resolve(e),s=t.resolve(i);if(yr(n,s,r))return new Gi(e,i,r);return new Fr(n,s,r).fit()}function yr(t,e,i){return!i.openStart&&!i.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),i.content)}class Fr{constructor(t,e,i){this.$from=t;this.$to=e;this.unplaced=i;this.frontier=[];this.placed=me.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=me.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 o=new ve(n,s,l);if(t>-1)return new Xi(i.pos,t,this.$to.pos,this.$to.end(),o,e);if(o.size||i.pos!=this.$to.pos)return new Gi(i.pos,r.pos,o);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=Mr(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],o,u=null;if(e==1&&(n?l.matchType(n.type)||(u=l.fillBefore(me.from(n),false)):r&&s.compatibleContent(r.type)))return{sliceDepth:i,frontierDepth:t,parent:r,inject:u};else if(e==2&&n&&(o=l.findWrapping(n.type)))return{sliceDepth:i,frontierDepth:t,parent:r,wrap:o};if(r&&l.matchType(r.type))break}}}}openMore(){let{content:t,openStart:e,openEnd:i}=this.unplaced;let r=Mr(t,e);if(!r.childCount||r.firstChild.isLeaf)return false;this.unplaced=new ve(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=Mr(t,e);if(r.childCount<=1&&e>0){let n=t.size-e<=e+r.size;this.unplaced=new ve(Er(t,e-1,1),e-1,n?e-1:i)}else{this.unplaced=new ve(Er(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 o=s.openStart-t;let u=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(u<l.childCount){let t=l.child(u),e=h.matchType(t.type);if(!e)break;u++;if(u>1||o==0||t.content.size){h=e;f.push(Ar(t.mark(a.allowedMarks(t.marks)),u==1?o:0,u==l.childCount?c:-1))}}let d=u==l.childCount;if(!d)c=-1;this.placed=xr(this.placed,e,me.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 ve(Er(s.content,t,u),s.openStart,s.openEnd):t==0?ve.empty:new ve(Er(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||!Cr(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=Cr(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=Cr(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=xr(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=xr(this.placed,this.depth,me.from(t.create(e,i)));this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop();let e=t.match.fillBefore(me.empty,true);if(e.childCount)this.placed=xr(this.placed,this.frontier.length,e)}}function Er(t,e,i){if(e==0)return t.cutByIndex(i,t.childCount);return t.replaceChild(0,t.firstChild.copy(Er(t.firstChild.content,e-1,i)))}function xr(t,e,i){if(e==0)return t.append(i);return t.replaceChild(t.childCount-1,t.lastChild.copy(xr(t.lastChild.content,e-1,i)))}function Mr(t,e){for(let i=0;i<e;i++)t=t.firstChild.content;return t}function Ar(t,e,i){if(e<=0)return t;let r=t.content;if(e>1)r=r.replaceChild(0,Ar(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(me.empty,true))}return t.copy(r)}function Cr(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 o=r.fillBefore(s.content,true,l);return o&&!Sr(i,s.content,l)?o:null}function Sr(t,e,i){for(let r=i;r<e.childCount;r++)if(!t.allowsMarks(e.child(r).marks))return true;return false}function Or(t){return t.spec.defining||t.spec.definingForContent}function $r(t,e,i,r){if(!r.size)return t.deleteRange(e,i);let n=t.doc.resolve(e),s=t.doc.resolve(i);if(yr(n,s,r))return t.step(new Gi(e,i,r));let l=qr(n,t.doc.resolve(i));if(l[l.length-1]==0)l.pop();let o=-(n.depth+1);l.unshift(o);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)o=t;else if(n.before(t)==e)l.splice(1,0,-t)}let u=l.indexOf(o);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=Or(e.type);if(i&&!e.sameMarkup(n.node(Math.abs(o)-1)))h=t;else if(i||!e.type.isTextblock)break}for(let e=r.openStart;e>=0;e--){let o=(e+h+1)%(r.openStart+1);let a=f[o];if(!a)continue;for(let e=0;e<l.length;e++){let f=l[(e+u)%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 ve(_r(r.content,0,r.openStart,o),o,r.openEnd))}}let a=t.steps.length;for(let o=l.length-1;o>=0;o--){t.replace(e,i,r);if(t.steps.length>a)break;let u=l[o];if(u<0)continue;e=n.before(u);i=s.after(u)}}function _r(t,e,i,r,n){if(e<i){let n=t.firstChild;t=t.replaceChild(0,n.copy(_r(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(me.empty,true))}return t}function Br(t,e,i,r){if(!r.isInline&&e==i&&t.doc.resolve(e).parent.content.size){let n=kr(t.doc,e,r.type);if(n!=null)e=i=n}t.replaceRange(e,i,new ve(me.from(r),0,0))}function jr(t,e,i){let r=t.doc.resolve(e),n=t.doc.resolve(i);let s=qr(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 qr(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 Rr extends Li{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 Ui.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 Ui.fromReplace(t,this.pos,this.pos+1,new ve(me.from(r),0,e.isLeaf?0:1))}getMap(){return Ii.empty}invert(t){return new Rr(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 Rr(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 Rr(e.pos,e.attr,e.value)}}Li.jsonID("attr",Rr);class Nr extends Li{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 Ui.ok(i)}getMap(){return Ii.empty}invert(t){return new Nr(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 Nr(e.attr,e.value)}}Li.jsonID("docAttr",Nr);let zr=class extends Error{};zr=function t(e){let i=Error.call(this,e);i.__proto__=t.prototype;return i};zr.prototype=Object.create(Error.prototype);zr.prototype.constructor=zr;zr.prototype.name="TransformError";class Tr{constructor(t){this.doc=t;this.steps=[];this.docs=[];this.mapping=new Pi}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new zr(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=ve.empty){let r=vr(this.doc,t,e,i);if(r)this.step(r);return this}replaceWith(t,e,i){return this.replace(t,e,new ve(me.from(i),0,0))}delete(t,e){return this.replace(t,e,ve.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,i){$r(this,t,e,i);return this}replaceRangeWith(t,e,i){Br(this,t,e,i);return this}deleteRange(t,e){jr(this,t,e);return this}lift(t,e){nr(this,t,e);return this}join(t,e=1){br(this,t,e);return this}wrap(t,e){fr(this,t,e);return this}setBlockType(t,e=t,i,r=null){hr(this,t,e,i,r);return this}setNodeMarkup(t,e,i=null,r){cr(this,t,e,i,r);return this}setNodeAttribute(t,e,i){this.step(new Rr(t,e,i));return this}setDocAttribute(t,e){this.step(new Nr(t,e));return this}addNodeMark(t,e){this.step(new Ki(t,e));return this}removeNodeMark(t,e){if(!(e instanceof ke)){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 Vi(t,e));return this}split(t,e=1,i){pr(this,t,e,i);return this}addMark(t,e,i){Qi(this,t,e,i);return this}removeMark(t,e,i){tr(this,t,e,i);return this}clearIncompatible(t,e,i){er(this,t,e,i);return this}}const Ir=Object.create(null);class Pr{constructor(t,e,i){this.$anchor=t;this.$head=e;this.ranges=i||[new Jr(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=ve.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:o,$to:u}=s[l],f=t.mapping.slice(n);t.replaceRange(f.map(o.pos),f.map(u.pos),l?ve.empty:e);if(l==0)Yr(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],o=t.mapping.slice(i);let u=o.map(s.pos),f=o.map(l.pos);if(n){t.deleteRange(u,f)}else{t.replaceRangeWith(u,f,e);Yr(t,i,e.isInline?-1:1)}}}static findFrom(t,e,i=false){let r=t.parent.inlineContent?new Wr(t):Xr(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?Xr(t.node(0),t.node(r),t.before(r+1),t.index(r),e,i):Xr(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 Vr(t.node(0))}static atStart(t){return Xr(t,t,0,0,1)||new Vr(t)}static atEnd(t){return Xr(t,t,t.content.size,t.childCount,-1)||new Vr(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let i=Ir[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 Ir)throw new RangeError("Duplicate use of selection JSON ID "+t);Ir[t]=e;e.prototype.jsonID=t;return e}getBookmark(){return Wr.between(this.$anchor,this.$head).getBookmark()}}Pr.prototype.visible=true;class Jr{constructor(t,e){this.$from=t;this.$to=e}}let Lr=false;function Ur(t){if(!Lr&&!t.parent.inlineContent){Lr=true;console["warn"]("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")")}}class Wr extends Pr{constructor(t,e=t){Ur(t);Ur(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 Pr.near(i);let r=t.resolve(e.map(this.anchor));return new Wr(r.parent.inlineContent?r:i,i)}replace(t,e=ve.empty){super.replace(t,e);if(e==ve.empty){let e=this.$from.marksAcross(this.$to);if(e)t.ensureMarks(e)}}eq(t){return t instanceof Wr&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new Hr(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 Wr(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=Pr.findFrom(e,i,true)||Pr.findFrom(e,-i,true);if(t)e=t.$head;else return Pr.near(e,i)}if(!t.parent.inlineContent){if(r==0){t=e}else{t=(Pr.findFrom(t,-i,true)||Pr.findFrom(t,i,true)).$anchor;if(t.pos<e.pos!=r<0)t=e}}return new Wr(t,e)}}Pr.jsonID("text",Wr);class Hr{constructor(t,e){this.anchor=t;this.head=e}map(t){return new Hr(t.map(this.anchor),t.map(this.head))}resolve(t){return Wr.between(t.resolve(this.anchor),t.resolve(this.head))}}class Zr extends Pr{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 Pr.near(n);return new Zr(n)}content(){return new ve(me.from(this.node),0,0)}eq(t){return t instanceof Zr&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new Kr(this.anchor)}static fromJSON(t,e){if(typeof e.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new Zr(t.resolve(e.anchor))}static create(t,e){return new Zr(t.resolve(e))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==false}}Zr.prototype.visible=false;Pr.jsonID("node",Zr);class Kr{constructor(t){this.anchor=t}map(t){let{deleted:e,pos:i}=t.mapResult(this.anchor);return e?new Hr(i,i):new Kr(i)}resolve(t){let e=t.resolve(this.anchor),i=e.nodeAfter;if(i&&Zr.isSelectable(i))return new Zr(e);return Pr.near(e)}}class Vr extends Pr{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,e=ve.empty){if(e==ve.empty){t.delete(0,t.doc.content.size);let e=Pr.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 Vr(t)}map(t){return new Vr(t)}eq(t){return t instanceof Vr}getBookmark(){return Gr}}Pr.jsonID("all",Vr);const Gr={map(){return this},resolve(t){return new Vr(t)}};function Xr(t,e,i,r,n,s=false){if(e.inlineContent)return Wr.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=Xr(t,r,i+n,n<0?r.childCount:0,n,s);if(e)return e}else if(!s&&Zr.isSelectable(r)){return Zr.create(t,i-(n<0?r.nodeSize:0))}i+=r.nodeSize*n}return null}function Yr(t,e,i){let r=t.steps.length-1;if(r<e)return;let n=t.steps[r];if(!(n instanceof Gi||n instanceof Xi))return;let s=t.mapping.maps[r],l;s.forEach(((t,e,i,r)=>{if(l==null)l=r}));t.setSelection(Pr.near(t.doc.resolve(l),i))}const Qr=1,tn=2,en=4;class rn extends Tr{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|Qr)&~tn;this.storedMarks=null;return this}get selectionSet(){return(this.updated&Qr)>0}setStoredMarks(t){this.storedMarks=t;this.updated|=tn;return this}ensureMarks(t){if(!ke.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&tn)>0}addStep(t,e){super.addStep(t,e);this.updated=this.updated&~tn;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)||ke.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(Pr.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|=en;return this}get scrolledIntoView(){return(this.updated&en)>0}}function nn(t,e){return!e||!t?t:t.bind(e)}class sn{constructor(t,e,i){this.name=t;this.init=nn(e.init,i);this.apply=nn(e.apply,i)}}const ln=[new sn("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new sn("selection",{init(t,e){return t.selection||Pr.atStart(e.doc)},apply(t){return t.selection}}),new sn("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,i,r){return r.selection.$cursor?t.storedMarks:null}}),new sn("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class on{constructor(t,e){this.schema=t;this.plugins=[];this.pluginsByKey=Object.create(null);this.fields=ln.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 sn(t.key,t.spec.state,t))}))}}class un{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 o=r?r[s].n:0,u=r?r[s].state:this;let f=o<e.length&&l.spec.appendTransaction.call(l,o?e.slice(o):e,u,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 un(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 rn(this)}static create(t){let e=new on(t.doc?t.doc.type.schema:t.schema,t.plugins);let i=new un(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 on(this.schema,t.plugins);let i=e.fields,r=new un(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 on(t.schema,t.plugins);let n=new un(r);r.fields.forEach((r=>{if(r.name=="doc"){n.doc=Ie.fromJSON(t.schema,e.doc)}else if(r.name=="selection"){n.selection=Pr.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],o=l.spec.state;if(l.key==r.name&&o&&o.fromJSON&&Object.prototype.hasOwnProperty.call(e,s)){n[r.name]=o.fromJSON.call(l,t,e[s],n);return}}n[r.name]=r.init(t,n)}}));return n}}function fn(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=fn(n,e,{});i[r]=n}return i}class hn{constructor(t){this.spec=t;this.props={};if(t.props)fn(t.props,this,this.props);this.key=t.key?t.key.key:cn("plugin")}getState(t){return t[this.key]}}const an=Object.create(null);function cn(t){if(t in an)return t+"$"+ ++an[t];an[t]=0;return t+"$"}class dn{constructor(t="key"){this.key=cn(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const pn=function(t){for(var e=0;;e++){t=t.previousSibling;if(!t)return e}};const mn=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let wn=null;const gn=function(t,e,i){let r=wn||(wn=document.createRange());r.setEnd(t,i==null?t.nodeValue.length:i);r.setStart(t,e||0);return r};const bn=function(t,e,i,r){return i&&(Dn(t,e,i,r,-1)||Dn(t,e,i,r,1))};const kn=/^(img|br|input|textarea|hr)$/i;function Dn(t,e,i,r,n){for(;;){if(t==i&&e==r)return true;if(e==(n<0?0:vn(t))){let i=t.parentNode;if(!i||i.nodeType!=1||Fn(t)||kn.test(t.nodeName)||t.contentEditable=="false")return false;e=pn(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?vn(t):0}else{return false}}}function vn(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function yn(t,e,i){for(let r=e==0,n=e==vn(t);r||n;){if(t==i)return true;let e=pn(t);t=t.parentNode;if(!t)return false;r=r&&e==0;n=n&&e==vn(t)}}function Fn(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 En=function(t){return t.focusNode&&bn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function xn(t,e){let i=document.createEvent("Event");i.initEvent("keydown",true,true);i.keyCode=t;i.key=i.code=e;return i}function Mn(t){let e=t.activeElement;while(e&&e.shadowRoot)e=e.shadowRoot.activeElement;return e}function An(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 Cn=typeof navigator!="undefined"?navigator:null;const Sn=typeof document!="undefined"?document:null;const On=Cn&&Cn.userAgent||"";const $n=/Edge\/(\d+)/.exec(On);const _n=/MSIE \d/.exec(On);const Bn=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(On);const jn=!!(_n||Bn||$n);const qn=_n?document.documentMode:Bn?+Bn[1]:$n?+$n[1]:0;const Rn=!jn&&/gecko\/(\d+)/i.test(On);Rn&&+(/Firefox\/(\d+)/.exec(On)||[0,0])[1];const Nn=!jn&&/Chrome\/(\d+)/.exec(On);const zn=!!Nn;const Tn=Nn?+Nn[1]:0;const In=!jn&&!!Cn&&/Apple Computer/.test(Cn.vendor);const Pn=In&&(/Mobile\/\w+/.test(On)||!!Cn&&Cn.maxTouchPoints>2);const Jn=Pn||(Cn?/Mac/.test(Cn.platform):false);const Ln=Cn?/Win/.test(Cn.platform):false;const Un=/Android \d/.test(On);const Wn=!!Sn&&"webkitFontSmoothing"in Sn.documentElement.style;const Hn=Wn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function Zn(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function Kn(t,e){return typeof t=="number"?t:t[e]}function Vn(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 Gn(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=mn(l)){if(!l)break;if(l.nodeType!=1)continue;let t=l;let i=t==s.body;let o=i?Zn(s):Vn(t);let u=0,f=0;if(e.top<o.top+Kn(r,"top"))f=-(o.top-e.top+Kn(n,"top"));else if(e.bottom>o.bottom-Kn(r,"bottom"))f=e.bottom-e.top>o.bottom-o.top?e.top+Kn(n,"top")-o.top:e.bottom-o.bottom+Kn(n,"bottom");if(e.left<o.left+Kn(r,"left"))u=-(o.left-e.left+Kn(n,"left"));else if(e.right>o.right-Kn(r,"right"))u=e.right-o.right+Kn(n,"right");if(u||f){if(i){s.defaultView.scrollBy(u,f)}else{let i=t.scrollLeft,r=t.scrollTop;if(f)t.scrollTop+=f;if(u)t.scrollLeft+=u;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 Xn(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 o=e.getBoundingClientRect();if(o.top>=i-20){r=e;n=o.top;break}}return{refDOM:r,refTop:n,stack:Yn(t.dom)}}function Yn(t){let e=[],i=t.ownerDocument;for(let r=t;r;r=mn(r)){e.push({dom:r,top:r.scrollTop,left:r.scrollLeft});if(t==i)break}return e}function Qn({refDOM:t,refTop:e,stack:i}){let r=t?t.getBoundingClientRect().top:0;ts(i,r==0?0:r-e)}function ts(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 es=null;function is(t){if(t.setActive)return t.setActive();if(es)return t.focus(es);let e=Yn(t);t.focus(es==null?{get preventScroll(){es={preventScroll:true};return true}}:undefined);if(!es){es=false;ts(e,0)}}function rs(t,e){let i,r=2e8,n,s=0;let l=e.top,o=e.top;let u,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=gn(h).getClientRects();else continue;for(let c=0;c<t.length;c++){let d=t[c];if(d.top<=l&&d.bottom>=o){l=Math.max(d.bottom,l);o=Math.min(d.top,o);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&&!u&&d.left<=e.left&&d.right>=e.left){u=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&&u){i=u;n=f;r=0}if(i&&i.nodeType==3)return ns(i,n);if(!i||r&&i.nodeType==1)return{node:t,offset:s};return rs(i,n)}function ns(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=ds(r,1);if(i.top==i.bottom)continue;if(ss(e,i))return{node:t,offset:n+(e.left>=(i.left+i.right)/2?1:0)}}return{node:t,offset:0}}function ss(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function ls(t,e){let i=t.parentNode;if(i&&/^li$/i.test(i.nodeName)&&e.left<t.getBoundingClientRect().left)return i;return t}function us(t,e,i){let{node:r,offset:n}=rs(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 fs(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 hs(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(ss(e,n))return hs(i,e,n)}}if((s=(s+1)%r)==n)break}}return t}function as(t,e){let i=t.dom.ownerDocument,r,n=0;let s=An(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 o;if(!l||!t.dom.contains(l.nodeType!=1?l.parentNode:l)){let i=t.dom.getBoundingClientRect();if(!ss(e,i))return null;l=hs(t.dom,e,i);if(!l)return null}if(In){for(let t=l;r&&t;t=mn(t))if(t.draggable)r=undefined}l=ls(l,e);if(r){if(Rn&&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(Wn&&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)o=t.state.doc.content.size;else if(n==0||r.nodeType!=1||r.childNodes[n-1].nodeName!="BR")o=fs(t,r,n,e)}if(o==null)o=us(t,l,e);let u=t.docView.nearestDesc(l,true);return{pos:o,inside:u?u.posAtStart-u.border:-1}}function cs(t){return t.top<t.bottom||t.left<t.right}function ds(t,e){let i=t.getClientRects();if(i.length){let t=i[e<0?0:i.length-1];if(cs(t))return t}return Array.prototype.find.call(i,cs)||t.getBoundingClientRect()}const ps=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function ms(t,e,i){let{node:r,offset:n,atom:s}=t.docView.domFromPos(e,i<0?-1:1);let l=Wn||Rn;if(r.nodeType==3){if(l&&(ps.test(r.nodeValue)||(i<0?!n:n==r.nodeValue.length))){let t=ds(gn(r,n,n),i);if(Rn&&n&&/\s/.test(r.nodeValue[n-1])&&n<r.nodeValue.length){let e=ds(gn(r,n-1,n-1),-1);if(e.top==t.top){let i=ds(gn(r,n,n+1),-1);if(i.top!=t.top)return ws(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 ws(ds(gn(r,t,e),s),s<0)}}let o=t.state.doc.resolve(e-(s||0));if(!o.parent.inlineContent){if(s==null&&n&&(i<0||n==vn(r))){let t=r.childNodes[n-1];if(t.nodeType==1)return gs(t.getBoundingClientRect(),false)}if(s==null&&n<vn(r)){let t=r.childNodes[n];if(t.nodeType==1)return gs(t.getBoundingClientRect(),true)}return gs(r.getBoundingClientRect(),i>=0)}if(s==null&&n&&(i<0||n==vn(r))){let t=r.childNodes[n-1];let e=t.nodeType==3?gn(t,vn(t)-(l?0:1)):t.nodeType==1&&(t.nodeName!="BR"||!t.nextSibling)?t:null;if(e)return ws(ds(e,1),false)}if(s==null&&n<vn(r)){let t=r.childNodes[n];while(t.pmViewDesc&&t.pmViewDesc.ignoreForCoords)t=t.nextSibling;let e=!t?null:t.nodeType==3?gn(t,0,l?0:1):t.nodeType==1?t:null;if(e)return ws(ds(e,-1),true)}return ws(ds(r.nodeType==3?gn(r):r,-i),i>=0)}function ws(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 gs(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 bs(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 ks(t,e,i){let r=e.selection;let n=i=="up"?r.$from:r.$to;return bs(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=ms(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=gn(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 Ds=/[\u0590-\u08ac]/;function vs(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 o=t.domSelection();if(!Ds.test(r.parent.textContent)||!o.modify)return i=="left"||i=="backward"?s:l;return bs(t,e,(()=>{let{focusNode:e,focusOffset:n,anchorNode:s,anchorOffset:l}=t.domSelectionRange();let u=o.caretBidiLevel;o.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{o.collapse(s,l);if(e&&(e!=s||n!=l)&&o.extend)o.extend(e,n)}catch(t){}if(u!=null)o.caretBidiLevel=u;return c}))}let ys=null;let Fs=null;let Es=false;function xs(t,e,i){if(ys==e&&Fs==i)return Es;ys=e;Fs=i;return Es=i=="up"||i=="down"?ks(t,e,i):vs(t,e,i)}const Ms=0,As=1,Cs=2,Ss=3;class Os{constructor(t,e,i,r){this.parent=t;this.children=e;this.dom=i;this.contentDOM=r;this.dirty=Ms;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>pn(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 Ns){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 $s&&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?pn(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?pn(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],o=s+i.size;if(r==-1&&t<=o){let n=s+i.border;if(t>=n&&e<=o-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=pn(i.dom)+1;break}t-=i.size}if(r==-1)r=0}if(r>-1&&(o>e||l==this.children.length-1)){e=o;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=pn(i.dom);break}e+=i.size}if(n==-1)n=this.contentDOM.childNodes.length;break}s=o}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,o=0;l<this.children.length;l++){let u=this.children[l],f=o+u.size;if(n>o&&s<f)return u.setSelection(t-o-u.border,e-o-u.border,i,r);o=f}let l=this.domFromPos(t,t?-1:1);let o=e==t?l:this.domFromPos(e,e?-1:1);let u=i.getSelection();let f=false;if((Rn||In)&&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=o={node:i.parentNode,offset:pn(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(Rn&&u.focusNode&&u.focusNode!=o.node&&u.focusNode.nodeType==1){let t=u.focusNode.childNodes[u.focusOffset];if(t&&t.contentEditable=="false")r=true}if(!(r||f&&In)&&bn(l.node,l.offset,u.anchorNode,u.anchorOffset)&&bn(o.node,o.offset,u.focusNode,u.focusOffset))return;let h=false;if((u.extend||t==e)&&!f){u.collapse(l.node,l.offset);try{if(t!=e)u.extend(o.node,o.offset);h=true}catch(t){}}if(!h){if(t>e){let t=l;l=o;o=t}let i=document.createRange();i.setEnd(o.node,o.offset);i.setStart(l.node,l.offset);u.removeAllRanges();u.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?Cs:As;if(t==r&&e==l&&(n.contentLost||n.dom.parentNode!=this.contentDOM))n.dirty=Ss;else n.markDirty(t-r,e-r);return}else{n.dirty=n.dom==n.contentDOM&&n.dom.parentNode==this.contentDOM&&!n.children.length?Cs:Ss}}i=s}this.dirty=Cs}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let i=t==1?Cs:As;if(e.dirty<i)e.dirty=i}}get domAtom(){return false}get ignoreForCoords(){return false}}class $s extends Os{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==Ms&&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 _s extends Os{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 Bs extends Os{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=Ai.renderSpec(document,e.type.spec.toDOM(e,i));return new Bs(t,e,s.dom,s.contentDOM||s.dom)}parseRule(){if(this.dirty&Ss||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!=Ss&&this.mark.eq(t)}markDirty(t,e){super.markDirty(t,e);if(this.dirty!=Ms){let t=this.parent;while(!t.node)t=t.parent;if(t.dirty<this.dirty)t.dirty=this.dirty;this.dirty=Ms}}slice(t,e,i){let r=Bs.create(this.parent,this.mark,true,i);let n=this.children,s=this.size;if(e<s)n=el(n,e,s,i);if(t>0)n=el(n,0,t,i);for(let t=0;t<n.length;t++)n[t].parent=r;r.children=n;return r}}class js extends Os{constructor(t,e,i,r,n,s,l,o,u){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],o;let u=l&&l(e,n,(()=>{if(!o)return s;if(o.parent)return o.parent.posBeforeChild(o)}),i,r);let f=u&&u.dom,h=u&&u.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}=Ai.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=Ws(f,i,e);if(u)return o=new zs(t,e,i,r,f,h||null,a,u,n,s+1);else if(e.isText)return new Rs(t,e,i,r,f,a,n);else return new js(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=()=>me.empty}return t}matchesNode(t,e,i){return this.dirty==Ms&&t.eq(this.node)&&Hs(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 o=new Ks(this,s&&s.node,t);Xs(this.node,this.innerDeco,((e,n,s)=>{if(e.spec.marks)o.syncToMarks(e.spec.marks,i,t);else if(e.type.side>=0&&!s)o.syncToMarks(n==this.node.childCount?ke.none:this.node.child(n).marks,i,t);o.placeWidget(e,t,r)}),((e,s,u,f)=>{o.syncToMarks(e.marks,i,t);let h;if(o.findNodeMatch(e,s,u,f));else if(l&&t.state.selection.from>r&&t.state.selection.to<r+e.nodeSize&&(h=o.findIndexWithChild(n.node))>-1&&o.updateNodeAt(e,s,u,h,t));else if(o.updateNextNode(e,s,u,t,f,r));else{o.addNode(e,s,u,t,r)}r+=e.nodeSize}));o.syncToMarks([],i,t);if(this.node.isTextblock)o.addTextblockHacks();o.destroyRest();if(o.changed||this.dirty==Cs){if(s)this.protectLocalComposition(t,s);Ts(this.contentDOM,this.children,t);if(Pn)Ys(this.dom)}}localCompositionInfo(t,e){let{from:i,to:r}=t.state.selection;if(!(t.state.selection instanceof Wr)||i<e||r>e+this.node.content.size)return null;let n=t.domSelectionRange();let s=Qs(n.focusNode,n.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let t=s.nodeValue;let n=tl(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 _s(this,n,e,r);t.input.compositionNodes.push(s);this.children=el(this.children,i,i+r.length,t,s)}update(t,e,i,r){if(this.dirty==Ss||!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=Ms}updateOuterDeco(t){if(Hs(t,this.outerDeco))return;let e=this.nodeDOM.nodeType!=1;let i=this.dom;this.dom=Ls(this.dom,this.nodeDOM,Js(this.outerDeco,this.node,e),Js(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 qs(t,e,i,r,n){Ws(r,e,t);let s=new js(undefined,t,e,i,r,r,r,n,0);if(s.contentDOM)s.updateChildren(n,0);return s}class Rs extends js{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==Ss||this.dirty!=Ms&&!this.inParent()||!t.sameMarkup(this.node))return false;this.updateOuterDeco(e);if((this.dirty!=Ms||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=Ms;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 Rs(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=Ss}get domAtom(){return false}}class Ns extends Os{parseRule(){return{ignore:true}}matchesHack(t){return this.dirty==Ms&&this.dom.nodeName==t}get domAtom(){return true}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class zs extends js{constructor(t,e,i,r,n,s,l,o,u,f){super(t,e,i,r,n,s,l,u,f);this.spec=o}update(t,e,i,r){if(this.dirty==Ss)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 Ts(t,e,i){let r=t.firstChild,n=false;for(let s=0;s<e.length;s++){let l=e[s],o=l.dom;if(o.parentNode==t){while(o!=r){r=Zs(r);n=true}r=r.nextSibling}else{n=true;t.insertBefore(o,r)}if(l instanceof Bs){let e=r?r.previousSibling:t.lastChild;Ts(l.contentDOM,l.children,i);r=e?e.nextSibling:t.firstChild}}while(r){r=Zs(r);n=true}if(n&&i.trackWrites==t)i.trackWrites=null}const Is=function(t){if(t)this.nodeName=t};Is.prototype=Object.create(null);const Ps=[new Is];function Js(t,e,i){if(t.length==0)return Ps;let r=i?Ps[0]:new Is,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 Is(l.nodeName));for(let t in l){let s=l[t];if(s==null)continue;if(i&&n.length==1)n.push(r=new Is(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 Ls(t,e,i,r){if(i==Ps&&r==Ps)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=Ps[0];n=e}}Us(n,l||Ps[0],s)}return n}function Us(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 Ws(t,e,i){return Ls(t,t,Ps,Js(e,i,t.nodeType!=1))}function Hs(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 Zs(t){let e=t.nextSibling;t.parentNode.removeChild(t);return e}class Ks{constructor(t,e,i){this.lock=e;this.view=i;this.index=0;this.stack=[];this.changed=false;this.top=t;this.preMatch=Vs(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=Ms;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=Bs.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==Ss&&s.dom==s.contentDOM)s.dirty=Cs;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 o=this.top.children[l];if(o instanceof js){let u=this.preMatch.matched.get(o);if(u!=null&&u!=n)return false;let f=o.dom,h;let a=this.isLocked(f)&&!(t.isText&&o.node&&o.node.isText&&o.nodeDOM.nodeValue==t.text&&o.dirty!=Ss&&Hs(e,o.outerDeco));if(!a&&o.update(t,e,i,r)){this.destroyBetween(this.index,l);if(o.dom!=f)this.changed=true;this.index++;return true}else if(!a&&(h=this.recreateWrapper(o,t,e,i,r,s))){this.top.children[this.index]=h;if(h.contentDOM){h.dirty=Cs;h.updateChildren(r,s+1);h.dirty=Ms}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=js.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=js.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 $s(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 Bs){e=t;t=e.children[e.children.length-1]}if(!t||!(t instanceof Rs)||/\n$/.test(t.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(t.node.text)){if((In||zn)&&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 Ns(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 Vs(t,e){let i=e,r=i.children.length;let n=t.childCount,s=new Map,l=[];t:while(n>0){let o;for(;;){if(r){let t=i.children[r-1];if(t instanceof Bs){i=t;r=t.children.length}else{o=t;r--;break}}else if(i==e){break t}else{r=i.parent.children.indexOf(i);i=i.parent}}let u=o.node;if(!u)continue;if(u!=t.child(n-1))break;--n;s.set(o,n);l.push(o)}return{index:n,matched:s,matches:l.reverse()}}function Gs(t,e){return t.type.side-e.type.side}function Xs(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,o=[],u=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(Gs);for(let t=0;t<a.length;t++)i(a[t],f,!!u)}else{i(h,f,!!u)}}let c,d;if(u){d=-1;c=u;u=null}else if(f<t.childCount){d=f;c=t.child(f++)}else{break}for(let t=0;t<o.length;t++)if(o[t].to<=s)o.splice(t--,1);while(l<n.length&&n[l].from<=s&&n[l].to>s)o.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<o.length;e++)if(o[e].to<t)t=o[e].to;if(t<p){u=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?o.filter((t=>!t.inline)):o.slice();r(c,m,e.forChild(s,c),d);s=p}}function Ys(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 Qs(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=vn(t)}else if(t.nodeType==1&&e<t.childNodes.length){t=t.childNodes[e];e=0}else{return null}}}function tl(t,e,i,r){for(let n=0,s=0;n<t.childCount&&s<=r;){let l=t.child(n++),o=s;s+=l.nodeSize;if(!l.isText)continue;let u=l.text;while(n<t.childCount){let e=t.child(n++);s+=e.nodeSize;if(!e.isText)break;u+=e.text}if(s>=i){if(s>=r&&u.slice(r-e.length-o,r-o)==e)return r-e.length;let t=o<r?u.lastIndexOf(e,r-o-1):-1;if(t>=0&&t+e.length+o>=i)return o+t;if(i==r&&u.length>=r+e.length-o&&u.slice(r-o,r-o+e.length)==e)return r}}return-1}function el(t,e,i,r,n){let s=[];for(let l=0,o=0;l<t.length;l++){let u=t[l],f=o,h=o+=u.size;if(f>=i||h<=e){s.push(u)}else{if(f<e)s.push(u.slice(0,e-f,r));if(n){s.push(n);n=undefined}if(h>i)s.push(u.slice(i-f,u.size,r))}}return s}function il(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 o=r.resolve(l),u,f;if(En(i)){u=o;while(n&&!n.node)n=n.parent;let t=n.node;if(n&&t.isAtom&&Zr.isSelectable(t)&&n.parent&&!(t.isInline&&yn(i.focusNode,i.focusOffset,n.dom))){let t=n.posBefore;f=new Zr(l==t?o:r.resolve(t))}}else{let e=t.docView.posFromDOM(i.anchorNode,i.anchorOffset,1);if(e<0)return null;u=r.resolve(e)}if(!f){let i=e=="pointer"||t.state.selection.head<o.pos&&!s?1:-1;f=dl(t,u,o,i)}return f}function rl(t){return t.editable?t.hasFocus():ml(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function nl(t,e=false){let i=t.state.selection;al(t,i);if(!rl(t))return;if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&zn){let e=t.domSelectionRange(),i=t.domObserver.currentSelection;if(e.anchorNode&&i.anchorNode&&bn(e.anchorNode,e.anchorOffset,i.anchorNode,i.anchorOffset)){t.input.mouseDown.delayedSelectionSync=true;t.domObserver.setCurSelection();return}}t.domObserver.disconnectSelection();if(t.cursorWrapper){hl(t)}else{let{anchor:r,head:n}=i,s,l;if(sl&&!(i instanceof Wr)){if(!i.$from.parent.inlineContent)s=ll(t,i.from);if(!i.empty&&!i.$from.parent.inlineContent)l=ll(t,i.to)}t.docView.setSelection(r,n,t.root,e);if(sl){if(s)ul(s);if(l)ul(l)}if(i.visible){t.dom.classList.remove("ProseMirror-hideselection")}else{t.dom.classList.add("ProseMirror-hideselection");if("onselectionchange"in document)fl(t)}}t.domObserver.setCurSelection();t.domObserver.connectSelection()}const sl=In||zn&&Tn<63;function ll(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(In&&n&&n.contentEditable=="false")return ol(n);if((!n||n.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(n)return ol(n);else if(s)return ol(s)}}function ol(t){t.contentEditable="true";if(In&&t.draggable){t.draggable=false;t.wasDraggable=true}return t}function ul(t){t.contentEditable="false";if(t.wasDraggable){t.draggable=true;t.wasDraggable=null}}function fl(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(!rl(t)||t.state.selection.visible)t.dom.classList.remove("ProseMirror-hideselection")}),20)}})}function hl(t){let e=t.domSelection(),i=document.createRange();let r=t.cursorWrapper.dom,n=r.nodeName=="IMG";if(n)i.setEnd(r.parentNode,pn(r)+1);else i.setEnd(r,0);i.collapse(false);e.removeAllRanges();e.addRange(i);if(!n&&!t.state.selection.visible&&jn&&qn<=11){r.disabled=true;r.disabled=false}}function al(t,e){if(e instanceof Zr){let i=t.docView.descAt(e.from);if(i!=t.lastSelectedViewDesc){cl(t);if(i)i.selectNode();t.lastSelectedViewDesc=i}}else{cl(t)}}function cl(t){if(t.lastSelectedViewDesc){if(t.lastSelectedViewDesc.parent)t.lastSelectedViewDesc.deselectNode();t.lastSelectedViewDesc=undefined}}function dl(t,e,i,r){return t.someProp("createSelectionBetween",(r=>r(t,e,i)))||Wr.between(e,i,r)}function pl(t){if(t.editable&&!t.hasFocus())return false;return ml(t)}function ml(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 wl(t){let e=t.docView.domFromPos(t.state.selection.anchor,0);let i=t.domSelectionRange();return bn(e.node,e.offset,i.anchorNode,i.anchorOffset)}function gl(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&&Pr.findFrom(s,e)}function bl(t,e){t.dispatch(t.state.tr.setSelection(e).scrollIntoView());return true}function kl(t,e,i){let r=t.state.selection;if(r instanceof Wr){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 bl(t,new Wr(r.$anchor,s))}else if(!r.empty){return false}else if(t.endOfTextblock(e>0?"forward":"backward")){let i=gl(t.state,e);if(i&&i instanceof Zr)return bl(t,i);return false}else if(!(Jn&&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(Zr.isSelectable(n)){return bl(t,new Zr(e<0?t.state.doc.resolve(i.pos-n.nodeSize):i))}else if(Wn){return bl(t,new Wr(t.state.doc.resolve(e<0?l:l+n.nodeSize)))}else{return false}}}else if(r instanceof Zr&&r.node.isInline){return bl(t,new Wr(e>0?r.$to:r.$from))}else{let i=gl(t.state,e);if(i)return bl(t,i);return false}}function Dl(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function vl(t,e){let i=t.pmViewDesc;return i&&i.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function yl(t,e){return e<0?Fl(t):El(t)}function Fl(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n,s,l=false;if(Rn&&i.nodeType==1&&r<Dl(i)&&vl(i.childNodes[r],-1))l=true;for(;;){if(r>0){if(i.nodeType!=1){break}else{let t=i.childNodes[r-1];if(vl(t,-1)){n=i;s=--r}else if(t.nodeType==3){i=t;r=i.nodeValue.length}else break}}else if(xl(i)){break}else{let e=i.previousSibling;while(e&&vl(e,-1)){n=i.parentNode;s=pn(e);e=e.previousSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=0}else{i=e;r=Dl(i)}}}if(l)Cl(t,i,r);else if(n)Cl(t,n,s)}function El(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n=Dl(i);let s,l;for(;;){if(r<n){if(i.nodeType!=1)break;let t=i.childNodes[r];if(vl(t,1)){s=i;l=++r}else break}else if(xl(i)){break}else{let e=i.nextSibling;while(e&&vl(e,1)){s=e.parentNode;l=pn(e)+1;e=e.nextSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=n=0}else{i=e;r=0;n=Dl(i)}}}if(s)Cl(t,s,l)}function xl(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Ml(t,e){while(t&&e==t.childNodes.length&&!Fn(t)){e=pn(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 Al(t,e){while(t&&!e&&!Fn(t)){e=pn(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 Cl(t,e,i){if(e.nodeType!=3){let t,r;if(r=Ml(e,i)){e=r;i=0}else if(t=Al(e,i)){e=t;i=t.nodeValue.length}}let r=t.domSelection();if(En(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)nl(t)}),50)}function Sl(t,e){let i=t.state.doc.resolve(e);if(!(zn||Ln)&&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 Ol(t,e,i){let r=t.state.selection;if(r instanceof Wr&&!r.empty||i.indexOf("s")>-1)return false;if(Jn&&i.indexOf("m")>-1)return false;let{$from:n,$to:s}=r;if(!n.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let i=gl(t.state,e);if(i&&i instanceof Zr)return bl(t,i)}if(!n.parent.inlineContent){let i=e<0?n:s;let l=r instanceof Vr?Pr.near(i,e):Pr.findFrom(i,e);return l?bl(t,l):false}return false}function $l(t,e){if(!(t.state.selection instanceof Wr))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 _l(t,e,i){t.domObserver.stop();e.contentEditable=i;t.domObserver.start()}function Bl(t){if(!In||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;_l(t,i,"true");setTimeout((()=>_l(t,i,"false")),20)}return false}function jl(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 ql(t,e){let i=e.keyCode,r=jl(e);if(i==8||Jn&&i==72&&r=="c"){return $l(t,-1)||yl(t,-1)}else if(i==46&&!e.shiftKey||Jn&&i==68&&r=="c"){return $l(t,1)||yl(t,1)}else if(i==13||i==27){return true}else if(i==37||Jn&&i==66&&r=="c"){let e=i==37?Sl(t,t.state.selection.from)=="ltr"?-1:1:-1;return kl(t,e,r)||yl(t,e)}else if(i==39||Jn&&i==70&&r=="c"){let e=i==39?Sl(t,t.state.selection.from)=="ltr"?1:-1:1;return kl(t,e,r)||yl(t,e)}else if(i==38||Jn&&i==80&&r=="c"){return Ol(t,-1,r)||yl(t,-1)}else if(i==40||Jn&&i==78&&r=="c"){return Bl(t)||Ol(t,1,r)||yl(t,1)}else if(r==(Jn?"m":"c")&&(i==66||i==73||i==89||i==90)){return true}return false}function Rl(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")||Ai.fromSchema(t.state.schema);let o=Zl(),u=o.createElement("div");u.appendChild(l.serializeFragment(r,{document:o}));let f=u.firstChild,h,a=0;while(f&&f.nodeType==1&&(h=Wl[f.nodeName.toLowerCase()])){for(let t=h.length-1;t>=0;t--){let e=o.createElement(h[t]);while(u.firstChild)e.appendChild(u.firstChild);u.appendChild(e);a++}f=u.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:u,text:c}}function Nl(t,e,i,r,n){let s=n.parent.type.spec.code;let l,o;if(!i&&!e)return null;let u=e&&(r||s||!i);if(u){t.someProp("transformPastedText",(i=>{e=i(e,s||r,t)}));if(s)return e?new ve(me.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):ve.empty;let i=t.someProp("clipboardTextParser",(i=>i(e,n,r,t)));if(i){o=i}else{let i=n.marks();let{schema:r}=t.state,s=Ai.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=Kl(i);if(Wn)Vl(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(!o){let e=t.someProp("clipboardParser")||t.someProp("domParser")||ai.fromSchema(t.state.schema);o=e.parseSlice(l,{preserveWhitespace:!!(u||h),context:n,ruleFromNode(t){if(t.nodeName=="BR"&&!t.nextSibling&&t.parentNode&&!zl.test(t.parentNode.nodeName))return{ignore:true};return null}})}if(h){o=Gl(Ul(o,+h[1],+h[2]),h[4])}else{o=ve.maxOpen(Tl(o.content,n),true);if(o.openStart||o.openEnd){let t=0,e=0;for(let e=o.content.firstChild;t<o.openStart&&!e.type.spec.isolating;t++,e=e.firstChild){}for(let t=o.content.lastChild;e<o.openEnd&&!t.type.spec.isolating;e++,t=t.lastChild){}o=Ul(o,t,e)}}t.someProp("transformPasted",(e=>{o=e(o,t)}));return o}const zl=/^(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 Tl(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&&Pl(e,s,t,l[l.length-1],0)){l[l.length-1]=i}else{if(l.length)l[l.length-1]=Jl(l[l.length-1],s.length);let i=Il(t,e);l.push(i);n=n.matchType(i.type);s=e}}));if(l)return me.from(l)}return t}function Il(t,e,i=0){for(let r=e.length-1;r>=i;r--)t=e[r].create(null,me.from(t));return t}function Pl(t,e,i,r,n){if(n<t.length&&n<e.length&&t[n]==e[n]){let s=Pl(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(me.from(Il(i,t,n+1))))}}function Jl(t,e){if(e==0)return t;let i=t.content.replaceChild(t.childCount-1,Jl(t.lastChild,e-1));let r=t.contentMatchAt(t.childCount).fillBefore(me.empty,true);return t.copy(i.append(r))}function Ll(t,e,i,r,n,s){let l=e<0?t.firstChild:t.lastChild,o=l.content;if(t.childCount>1)s=0;if(n<r-1)o=Ll(o,e,i,r,n+1,s);if(n>=i)o=e<0?l.contentMatchAt(0).fillBefore(o,s<=n).append(o):o.append(l.contentMatchAt(l.childCount).fillBefore(me.empty,true));return t.replaceChild(e<0?0:t.childCount-1,l.copy(o))}function Ul(t,e,i){if(e<t.openStart)t=new ve(Ll(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd);if(i<t.openEnd)t=new ve(Ll(t.content,1,i,t.openEnd,0,0),t.openStart,i);return t}const Wl={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 Hl=null;function Zl(){return Hl||(Hl=document.implementation.createHTMLDocument("title"))}function Kl(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);if(e)t=t.slice(e[0].length);let i=Zl().createElement("div");let r=/<([a-z][^>\s]+)/i.exec(t),n;if(n=r&&Wl[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 Vl(t){let e=t.querySelectorAll(zn?"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 Gl(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=me.from(e.create(r[t+1],n));s++;l++}return new ve(n,s,l)}const Xl={};const Yl={};const Ql={touchstart:true,touchmove:true};class to{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 eo(t){for(let e in Xl){let i=Xl[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{if(lo(t,e)&&!so(t,e)&&(t.editable||!(e.type in Yl)))i(t,e)},Ql[e]?{passive:true}:undefined)}if(In)t.dom.addEventListener("input",(()=>null));no(t)}function io(t,e){t.input.lastSelectionOrigin=e;t.input.lastSelectionTime=Date.now()}function ro(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 no(t){t.someProp("handleDOMEvents",(e=>{for(let i in e)if(!t.input.eventHandlers[i])t.dom.addEventListener(i,t.input.eventHandlers[i]=e=>so(t,e))}))}function so(t,e){return t.someProp("handleDOMEvents",(i=>{let r=i[e.type];return r?r(t,e)||e.defaultPrevented:false}))}function lo(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 oo(t,e){if(!so(t,e)&&Xl[e.type]&&(t.editable||!(e.type in Yl)))Xl[e.type](t,e)}Yl.keydown=(t,e)=>{let i=e;t.input.shiftKey=i.keyCode==16||i.shiftKey;if(yo(t,i))return;t.input.lastKeyCode=i.keyCode;t.input.lastKeyCodeTime=Date.now();if(Un&&zn&&i.keyCode==13)return;if(i.keyCode!=229)t.domObserver.forceFlush();if(Pn&&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,xn(13,"Enter"))));t.input.lastIOSEnter=0}}),200)}else if(t.someProp("handleKeyDown",(e=>e(t,i)))||ql(t,i)){i.preventDefault()}else{io(t,"key")}};Yl.keyup=(t,e)=>{if(e.keyCode==16)t.input.shiftKey=false};Yl.keypress=(t,e)=>{let i=e;if(yo(t,i)||!i.charCode||i.ctrlKey&&!i.altKey||Jn&&i.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,i)))){i.preventDefault();return}let r=t.state.selection;if(!(r instanceof Wr)||!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 uo(t){return{left:t.clientX,top:t.clientY}}function fo(t,e){let i=e.x-t.clientX,r=e.y-t.clientY;return i*i+r*r<100}function ho(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 ao(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 co(t,e){if(e==-1)return false;let i=t.state.doc.resolve(e),r=i.nodeAfter;if(r&&r.isAtom&&Zr.isSelectable(r)){ao(t,new Zr(i),"pointer");return true}return false}function po(t,e){if(e==-1)return false;let i=t.state.selection,r,n;if(i instanceof Zr)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(Zr.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){ao(t,Zr.create(t.state.doc,n),"pointer");return true}else{return false}}function mo(t,e,i,r,n){return ho(t,"handleClickOn",e,i,r)||t.someProp("handleClick",(i=>i(t,e,r)))||(n?po(t,i):co(t,i))}function wo(t,e,i,r){return ho(t,"handleDoubleClickOn",e,i,r)||t.someProp("handleDoubleClick",(i=>i(t,e,r)))}function go(t,e,i,r){return ho(t,"handleTripleClickOn",e,i,r)||t.someProp("handleTripleClick",(i=>i(t,e,r)))||bo(t,i,r)}function bo(t,e,i){if(i.button!=0)return false;let r=t.state.doc;if(e==-1){if(r.inlineContent){ao(t,Wr.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)ao(t,Wr.create(r,s+1,s+1+i.content.size),"pointer");else if(Zr.isSelectable(i))ao(t,Zr.create(r,s),"pointer");else continue;return true}}function ko(t){return Ao(t)}const Do=Jn?"metaKey":"ctrlKey";Xl.mousedown=(t,e)=>{let i=e;t.input.shiftKey=i.shiftKey;let r=ko(t);let n=Date.now(),s="singleClick";if(n-t.input.lastClick.time<500&&fo(i,t.input.lastClick)&&!i[Do]){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(uo(i));if(!l)return;if(s=="singleClick"){if(t.input.mouseDown)t.input.mouseDown.done();t.input.mouseDown=new vo(t,l,i,!!r)}else if((s=="doubleClick"?wo:go)(t,l.pos,l.inside,i)){i.preventDefault()}else{io(t,"pointer")}};class vo{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[Do];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 o=l?t.docView.nearestDesc(l,true):null;this.target=o?o.dom:null;let{selection:u}=t.state;if(i.button==0&&n.type.spec.draggable&&n.type.spec.selectable!==false||u instanceof Zr&&u.from<=s&&u.to>s)this.mightDrag={node:n,pos:s,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&Rn&&!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));io(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((()=>nl(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(uo(t));this.updateAllowDefault(t);if(this.allowDefault||!e){io(this.view,"pointer")}else if(mo(this.view,e.pos,e.inside,t,this.selectNode)){t.preventDefault()}else if(t.button==0&&(this.flushed||In&&this.mightDrag&&!this.mightDrag.node.isAtom||zn&&!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)){ao(this.view,Pr.near(this.view.state.doc.resolve(e.pos)),"pointer");t.preventDefault()}else{io(this.view,"pointer")}}move(t){this.updateAllowDefault(t);io(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}}Xl.touchstart=t=>{t.input.lastTouch=Date.now();ko(t);io(t,"pointer")};Xl.touchmove=t=>{t.input.lastTouch=Date.now();io(t,"pointer")};Xl.contextmenu=t=>ko(t);function yo(t,e){if(t.composing)return true;if(In&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500){t.input.compositionEndedAt=-2e8;return true}return false}const Fo=Un?5e3:-1;Yl.compositionstart=Yl.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();Ao(t,true);t.markCursor=null}else{Ao(t);if(Rn&&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}Eo(t,Fo)};Yl.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++;Eo(t,20)}};function Eo(t,e){clearTimeout(t.input.composingTimeout);if(e>-1)t.input.composingTimeout=setTimeout((()=>Ao(t)),e)}function xo(t){if(t.composing){t.input.composing=false;t.input.compositionEndedAt=Mo()}while(t.input.compositionNodes.length>0)t.input.compositionNodes.pop().markParentsDirty()}function Mo(){let t=document.createEvent("Event");t.initEvent("event",true,true);return t.timeStamp}function Ao(t,e=false){if(Un&&t.domObserver.flushingSoon>=0)return;t.domObserver.forceFlush();xo(t);if(e||t.docView&&t.docView.dirty){let e=il(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 Co(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 So=jn&&qn<15||Pn&&Hn<604;Xl.copy=Yl.cut=(t,e)=>{let i=e;let r=t.state.selection,n=i.type=="cut";if(r.empty)return;let s=So?null:i.clipboardData;let l=r.content(),{dom:o,text:u}=Rl(t,l);if(s){i.preventDefault();s.clearData();s.setData("text/html",o.innerHTML);s.setData("text/plain",u)}else{Co(t,o)}if(n)t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function Oo(t){return t.openStart==0&&t.openEnd==0&&t.content.childCount==1?t.content.firstChild:null}function $o(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)_o(t,r.value,null,n,e);else _o(t,r.textContent,r.innerHTML,n,e)}),50)}function _o(t,e,i,r,n){let s=Nl(t,e,i,r,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,n,s||ve.empty))))return true;if(!s)return false;let l=Oo(s);let o=l?t.state.tr.replaceSelectionWith(l,r):t.state.tr.replaceSelection(s);t.dispatch(o.scrollIntoView().setMeta("paste",true).setMeta("uiEvent","paste"));return true}function Bo(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," "):""}Yl.paste=(t,e)=>{let i=e;if(t.composing&&!Un)return;let r=So?null:i.clipboardData;let n=t.input.shiftKey&&t.input.lastKeyCode!=45;if(r&&_o(t,Bo(r),r.getData("text/html"),n,i))i.preventDefault();else $o(t,i)};class jo{constructor(t,e,i){this.slice=t;this.move=e;this.node=i}}const qo=Jn?"altKey":"ctrlKey";Xl.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(uo(i));let l;if(s&&s.pos>=n.from&&s.pos<=(n instanceof Zr?n.to-1:n.to));else if(r&&r.mightDrag){l=Zr.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=Zr.create(t.state.doc,e.posBefore)}let o=(l||t.state.selection).content(),{dom:u,text:f}=Rl(t,o);i.dataTransfer.clearData();i.dataTransfer.setData(So?"Text":"text/html",u.innerHTML);i.dataTransfer.effectAllowed="copyMove";if(!So)i.dataTransfer.setData("text/plain",f);t.dragging=new jo(o,!i[qo],l)};Xl.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{if(t.dragging==e)t.dragging=null}),50)};Yl.dragover=Yl.dragenter=(t,e)=>e.preventDefault();Yl.drop=(t,e)=>{let i=e;let r=t.dragging;t.dragging=null;if(!i.dataTransfer)return;let n=t.posAtCoords(uo(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=Nl(t,Bo(i.dataTransfer),So?null:i.dataTransfer.getData("text/html"),false,s)}let o=!!(r&&!i[qo]);if(t.someProp("handleDrop",(e=>e(t,i,l||ve.empty,o)))){i.preventDefault();return}if(!l)return;i.preventDefault();let u=l?Dr(t.state.doc,s.pos,l):s.pos;if(u==null)u=s.pos;let f=t.state.tr;if(o){let{node:t}=r;if(t)t.replace(f);else f.deleteSelection()}let h=f.mapping.map(u);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&&Zr.isSelectable(l.content.firstChild)&&d.nodeAfter&&d.nodeAfter.sameMarkup(l.content.firstChild)){f.setSelection(new Zr(d))}else{let e=f.mapping.map(u);f.mapping.maps[f.mapping.maps.length-1].forEach(((t,i,r,n)=>e=n));f.setSelection(dl(t,d,f.doc.resolve(e)))}t.focus();t.dispatch(f.setMeta("uiEvent","drop"))};Xl.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()))nl(t)}),20)}};Xl.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}};Xl.beforeinput=(t,e)=>{let i=e;if(zn&&Un&&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,xn(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 Yl)Xl[t]=Yl[t];function Ro(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 No{constructor(t,e){this.toDOM=t;this.spec=e||Jo;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 Io(n-i,n-i,this)}valid(){return true}eq(t){return this==t||t instanceof No&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&Ro(this.spec,t.spec))}destroy(t){if(this.spec.destroy)this.spec.destroy(t)}}class zo{constructor(t,e){this.attrs=t;this.spec=e||Jo}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 Io(n,s,this)}valid(t,e){return e.from<e.to}eq(t){return this==t||t instanceof zo&&Ro(this.attrs,t.attrs)&&Ro(this.spec,t.spec)}static is(t){return t.type instanceof zo}destroy(){}}class To{constructor(t,e){this.attrs=t;this.spec=e||Jo}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 Io(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 To&&Ro(this.attrs,t.attrs)&&Ro(this.spec,t.spec)}destroy(){}}class Io{constructor(t,e,i){this.from=t;this.to=e;this.type=i}copy(t,e){return new Io(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 Io(t,t,new No(e,i))}static inline(t,e,i,r){return new Io(t,e,new zo(i,r))}static node(t,e,i,r){return new Io(t,e,new To(i,r))}get spec(){return this.type.spec}get inline(){return this.type instanceof zo}get widget(){return this.type instanceof No}}const Po=[],Jo={};class Lo{constructor(t,e){this.local=t.length?t:Po;this.children=e.length?e:Po}static create(t,e){return e.length?Xo(e,t,0,Jo):Uo}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==Uo||t.maps.length==0)return this;return this.mapInner(t,e,0,0,i||Jo)}mapInner(t,e,i,r,n){let s;for(let l=0;l<this.local.length;l++){let o=this.local[l].map(t,i,r);if(o&&o.type.valid(e,o))(s||(s=[])).push(o);else if(n.onRemove)n.onRemove(this.local[l].spec)}if(this.children.length)return Ho(this.children,s||[],t,e,i,r,n);else return s?new Lo(s.sort(Yo),Po):Uo}add(t,e){if(!e.length)return this;if(this==Uo)return Lo.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,o;if(!(o=Vo(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,o,l+1);else r.splice(n,0,s,s+t.nodeSize,Xo(o,t,l+1,Jo));n+=3}));let s=Zo(n?Go(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 Lo(s.length?this.local.concat(s).sort(Yo):this.local,r||this.children)}remove(t){if(t.length==0||this==Uo)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 o=i[r+2].removeInner(n,s+1);if(o!=Uo){i[r+2]=o}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 Lo(r,i):Uo}forChild(t,e){if(this==Uo)return this;if(e.isLeaf)return Lo.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 zo){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 Lo(r.sort(Yo),Po);return i?new Wo([t,i]):t}return i||Uo}eq(t){if(this==t)return true;if(!(t instanceof Lo)||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 Qo(this.localsInner(t))}localsInner(t){if(this==Uo)return Po;if(t.inlineContent||!this.local.some(zo.is))return this.local;let e=[];for(let t=0;t<this.local.length;t++){if(!(this.local[t].type instanceof zo))e.push(this.local[t])}return e}}Lo.empty=new Lo([],[]);Lo.removeOverlap=Qo;const Uo=Lo.empty;class Wo{constructor(t){this.members=t}map(t,e){const i=this.members.map((i=>i.map(t,e,Jo)));return Wo.from(i)}forChild(t,e){if(e.isLeaf)return Lo.empty;let i=[];for(let r=0;r<this.members.length;r++){let n=this.members[r].forChild(t,e);if(n==Uo)continue;if(n instanceof Wo)i=i.concat(n.members);else i.push(n)}return Wo.from(i)}eq(t){if(!(t instanceof Wo)||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?Qo(i?e:e.sort(Yo)):Po}static from(t){switch(t.length){case 0:return Uo;case 1:return t[0];default:return new Wo(t.every((t=>t instanceof Lo))?t:t.reduce(((t,e)=>t.concat(e instanceof Lo?e:e.members)),[]))}}}function Ho(t,e,i,r,n,s,l){let o=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<o.length;n+=3){let s=o[n+1];if(s<0||t>s+e-r)continue;let u=o[n]+e-r;if(i>=u){o[n+1]=t<=u?-2:-1}else if(t>=e&&l){o[n]+=l;o[n+1]+=l}}r+=l}));e=i.maps[t].map(e,-1)}let u=false;for(let e=0;e<o.length;e+=3)if(o[e+1]<0){if(o[e+1]==-2){u=true;o[e+1]=-1;continue}let f=i.map(t[e]+s),h=f-n;if(h<0||h>=r.content.size){u=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=o[e+2].mapInner(i,m,f+1,t[e]+s+1,l);if(r!=Uo){o[e]=h;o[e+1]=c;o[e+2]=r}else{o[e+1]=-2;u=true}}else{u=true}}if(u){let u=Ko(o,t,e,i,n,s,l);let f=Xo(u,r,0,l);e=f.local;for(let t=0;t<o.length;t+=3)if(o[t+1]<0){o.splice(t,3);t-=3}for(let t=0,e=0;t<f.children.length;t+=3){let i=f.children[t];while(e<o.length&&o[e]<i)e+=3;o.splice(e,0,f.children[t],f.children[t+1],f.children[t+2])}}return new Lo(e.sort(Yo),o)}function Zo(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 Io(n.from+e,n.to+e,n.type))}return i}function Ko(t,e,i,r,n,s,l){function o(t,e){for(let s=0;s<t.local.length;s++){let o=t.local[s].map(r,n,e);if(o)i.push(o);else if(l.onRemove)l.onRemove(t.local[s].spec)}for(let i=0;i<t.children.length;i+=3)o(t.children[i+2],t.children[i]+e+1)}for(let i=0;i<t.length;i+=3)if(t[i+1]==-1)o(t[i+2],e[i]+s+1);return i}function Vo(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 Go(t){let e=[];for(let i=0;i<t.length;i++)if(t[i]!=null)e.push(t[i]);return e}function Xo(t,e,i,r){let n=[],s=false;e.forEach(((e,l)=>{let o=Vo(t,e,l+i);if(o){s=true;let t=Xo(o,e,i+l+1,r);if(t!=Uo)n.push(l,l+e.nodeSize,t)}}));let l=Zo(s?Go(t):t,-i).sort(Yo);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 Lo(l,n):Uo}function Yo(t,e){return t.from-e.from||t.to-e.to}function Qo(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);tu(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);tu(e,n,r.copy(s.from,r.to))}break}}}return e}function tu(t,e,i){while(e<t.length&&Yo(i,t[e])>0)e++;t.splice(e,0,i)}function eu(t){let e=[];t.someProp("decorations",(i=>{let r=i(t.state);if(r&&r!=Uo)e.push(r)}));if(t.cursorWrapper)e.push(Lo.create(t.state.doc,[t.cursorWrapper.deco]));return Wo.from(e)}const iu={childList:true,characterData:true,characterDataOldValue:true,attributes:true,attributeOldValue:true,subtree:true};const ru=jn&&qn<=11;class nu{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 su{constructor(t,e){this.view=t;this.handleDOMChange=e;this.queue=[];this.flushingSoon=-1;this.observer=null;this.currentSelection=new nu;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(jn&&qn<=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(ru){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,iu)}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(!pl(this.view))return;if(this.suppressingSelectionUpdates)return nl(this.view);if(jn&&qn<=11&&!this.view.state.selection.empty){let t=this.view.domSelectionRange();if(t.focusNode&&bn(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=mn(i))e.add(i);for(let r=t.anchorNode;r;r=mn(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)&&pl(t)&&!this.ignoreSelectionChange(i);let n=-1,s=-1,l=false,o=[];if(t.editable){for(let t=0;t<e.length;t++){let i=this.registerMutation(e[t],o);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(Rn&&o.length>1){let t=o.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 u=null;if(n<0&&r&&t.input.lastFocus>Date.now()-200&&Math.max(t.input.lastTouch,t.input.lastClick.time)<Date.now()-300&&En(i)&&(u=il(t))&&u.eq(Pr.near(t.state.doc.resolve(0),1))){t.input.lastFocus=0;nl(t);this.currentSelection.set(i);t.scrollToSelection()}else if(n>-1||r){if(n>-1){t.docView.markDirty(n,s);uu(t)}this.handleDOMChange(n,s,l,o);if(t.docView&&t.docView.dirty)t.updateState(t.state);else if(!this.currentSelection.eq(i))nl(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(jn&&qn<=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?pn(r)+1:0;let l=i.localPosFromDOM(t.target,s,-1);let o=n&&n.parentNode==t.target?pn(n):t.target.childNodes.length;let u=i.localPosFromDOM(t.target,o,1);return{from:l,to:u}}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 lu=new WeakMap;let ou=false;function uu(t){if(lu.has(t))return;lu.set(t,null);if(["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1){t.requiresGeckoHackNode=Rn;if(ou)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.");ou=true}}function fu(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 o=t.domAtPos(t.state.selection.anchor);if(bn(o.node,o.offset,s,l))[r,n,s,l]=[s,l,r,n];return{anchorNode:r,anchorOffset:n,focusNode:s,focusOffset:l}}function hu(t,e,i){let{node:r,fromOffset:n,toOffset:s,from:l,to:o}=t.docView.parseRange(e,i);let u=t.domSelectionRange();let f;let h=u.anchorNode;if(h&&t.dom.contains(h.nodeType==1?h:h.parentNode)){f=[{node:h,offset:u.anchorOffset}];if(!En(u))f.push({node:u.focusNode,offset:u.focusOffset})}if(zn&&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")||ai.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:au,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:o}}function au(t){let e=t.pmViewDesc;if(e){return e.parseRule()}else if(t.nodeName=="BR"&&t.parentNode){if(In&&/^(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||In&&/^(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 cu=/^(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 du(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=il(t,e);if(i&&!t.state.selection.eq(i)){if(zn&&Un&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",(e=>e(t,xn(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 o=l.sharedDepth(i);e=l.before(o+1);i=t.state.doc.resolve(i).after(o+1);let u=t.state.selection;let f=hu(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=bu(a.content,f.doc.content,f.from,c,d);if((Pn&&t.input.lastIOSEnter>Date.now()-225||Un)&&n.some((t=>t.nodeType==1&&!cu.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,xn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(!p){if(r&&u instanceof Wr&&!u.empty&&u.$head.sameParent(u.$anchor)&&!t.composing&&!(f.sel&&f.sel.anchor!=f.sel.head)){p={start:u.from,endA:u.to,endB:u.to}}else{if(f.sel){let e=pu(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(zn&&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 Wr){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(jn&&qn<=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((Pn&&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=Pr.findFrom(f.doc.resolve(m.pos+1),1,true))&&k.head==w.pos)&&t.someProp("handleKeyDown",(e=>e(t,xn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&wu(h,p.start,p.endA,m,w)&&t.someProp("handleKeyDown",(e=>e(t,xn(8,"Backspace"))))){if(Un&&zn)t.domObserver.suppressSelectionUpdates();return}if(zn&&Un&&p.endB==p.start)t.input.lastAndroidDelete=Date.now();if(Un&&!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,xn(13,"Enter"))}))}),20)}let D=p.start,v=p.endA;let y,F,E;if(b){if(m.pos==w.pos){if(jn&&qn<=11&&m.parentOffset==0){t.domObserver.suppressSelectionUpdates();setTimeout((()=>nl(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=mu(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=pu(t,y.doc,f.sel);if(e&&!(zn&&Un&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(e.head==D||e.head==y.mapping.map(v)-1)||jn&&e.empty&&e.head==D))y.setSelection(e)}if(F)y.ensureMarks(F);if(s)y.setMeta("composition",s);t.dispatch(y.scrollIntoView())}function pu(t,e,i){if(Math.max(i.anchor,i.head)>e.content.size)return null;return dl(t,e.resolve(i.anchor),e.resolve(i.head))}function mu(t,e){let i=t.firstChild.marks,r=e.firstChild.marks;let n=i,s=r,l,o,u;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){o=n[0];l="add";u=t=>t.mark(o.addToSet(t.marks))}else if(n.length==0&&s.length==1){o=s[0];l="remove";u=t=>t.mark(o.removeFromSet(t.marks))}else{return null}let f=[];for(let t=0;t<e.childCount;t++)f.push(u(e.child(t)));if(me.from(f).eq(t))return{mark:o,type:l}}function wu(t,e,i,r,n){if(!r.parent.isTextblock||i-e<=n.pos-r.pos||gu(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(gu(s,true,true));if(!l.parent.isTextblock||l.pos>i||gu(l,true,false)<i)return false;return r.parent.content.cut(r.parentOffset).eq(l.parent.content)}function gu(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 bu(t,e,i,r,n){let s=t.findDiffStart(e,i);if(s==null)return null;let{a:l,b:o}=t.findDiffEnd(e,i+t.size,i+e.size);if(n=="end"){let t=Math.max(0,s-Math.min(l,o));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&&ku(e.textBetween(s-1,s+1)))s+=t?1:-1;o=s+(o-l);l=s}else if(o<s){let e=r<=s&&r>=o?s-r:0;s-=e;if(s&&s<t.size&&ku(t.textBetween(s-1,s+1)))s+=e?1:-1;l=s+(l-o);o=s}return{start:s,endA:l,endB:o}}function ku(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 Du{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 to;this.prevDirectPlugins=[];this.pluginViews=[];this.requiresGeckoHackNode=false;this.dragging=null;this._props=e;this.state=e.state;this.directPlugins=e.plugins||[];this.directPlugins.forEach(Au);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=Fu(this);yu(this);this.nodeViews=xu(this);this.docView=qs(this.state.doc,vu(this),eu(this),this.dom,this);this.domObserver=new su(this,((t,e,i,r)=>du(this,t,e,i,r)));this.domObserver.start();eo(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)no(this);let e=this._props;this._props=t;if(t.plugins){t.plugins.forEach(Au);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){xo(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=xu(this);if(Mu(t,this.nodeViews)){this.nodeViews=t;n=true}}if(l||e.handleDOMEvents!=this._props.handleDOMEvents){no(this)}this.editable=Fu(this);yu(this);let o=eu(this),u=vu(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,u,o);if(h||!t.selection.eq(r.selection))s=true;let a=f=="preserve"&&s&&this.dom.style.overflowAnchor==null&&Xn(this);if(s){this.domObserver.stop();let e=h&&(jn||zn)&&!this.composing&&!r.selection.empty&&!t.selection.empty&&Eu(r.selection,t.selection);if(h){let i=zn?this.trackWrites=this.domSelectionRange().focusNode:null;if(n||!this.docView.update(t.doc,u,o,this)){this.docView.updateOuterDeco([]);this.docView.destroy();this.docView=qs(t.doc,u,o,this.dom,this)}if(i&&!this.trackWrites)e=true}if(e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&wl(this))){nl(this,e)}else{al(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){Qn(a)}}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof Zr){let e=this.docView.domAfterPos(this.state.selection.from);if(e.nodeType==1)Gn(this,e.getBoundingClientRect(),t)}else{Gn(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 jo(t.slice,t.move,r<0?undefined:Zr.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(jn){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)is(this.dom);nl(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 as(this,t)}coordsAtPos(t,e=1){return ms(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 xs(this,e||this.state,t)}pasteHTML(t,e){return _o(this,"",t,false,e||new ClipboardEvent("paste"))}pasteText(t,e){return _o(this,t,null,true,e||new ClipboardEvent("paste"))}destroy(){if(!this.docView)return;ro(this);this.destroyPluginViews();if(this.mounted){this.docView.update(this.state.doc,[],eu(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 oo(this,t)}dispatch(t){let e=this._props.dispatchTransaction;if(e)e.call(this,t);else this.updateState(this.state.apply(t))}domSelectionRange(){return In&&this.root.nodeType===11&&Mn(this.dom.ownerDocument)==this.dom?fu(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function vu(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[Io.node(0,t.state.doc.content.size,e)]}function yu(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:Io.widget(t.state.selection.head,e,{raw:true,marks:t.markCursor})}}else{t.cursorWrapper=null}}function Fu(t){return!t.someProp("editable",(e=>e(t.state)===false))}function Eu(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 xu(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 Mu(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 Au(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 Cu=["p",0],Su=["blockquote",0],Ou=["hr"],$u=["pre",["code",0]],_u=["br"];const Bu={doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return Cu}},blockquote:{content:"block+",group:"block",defining:true,parseDOM:[{tag:"blockquote"}],toDOM(){return Su}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return Ou}},heading:{attrs:{level:{default:1,validate:"number"}},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 $u}},text:{group:"inline"},image:{inline:true,attrs:{src:{validate:"string"},alt:{default:null,validate:"string|null"},title:{default:null,validate:"string|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 _u}}};const ju=["em",0],qu=["strong",0],Ru=["code",0];const Nu={link:{attrs:{href:{validate:"string"},title:{default:null,validate:"string|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 ju}},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 qu}},code:{parseDOM:[{tag:"code"}],toDOM(){return Ru}}};const zu=new fi({nodes:Bu,marks:Nu});const Tu=["ol",0],Iu=["ul",0],Pu=["li",0];const Ju={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?Tu:["ol",{start:t.attrs.order},0]}};const Lu={parseDOM:[{tag:"ul"}],toDOM(){return Iu}};const Uu={parseDOM:[{tag:"li"}],toDOM(){return Pu},defining:true};function Wu(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 Hu(t,e,i){return t.append({ordered_list:Wu(Ju,{content:"list_item+",group:i}),bullet_list:Wu(Lu,{content:"list_item+",group:i}),list_item:Wu(Uu,{content:e})})}function Zu(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),o=false,u=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);u=new ze(t,t,l.depth);if(l.endIndex<l.parent.childCount)l=new ze(n,i.doc.resolve(s.end(l.depth)),l.depth);o=true}let f=sr(u,t,e,l);if(!f)return false;if(r)r(Ku(i.tr,l,f,o,t).scrollIntoView());return true}}function Ku(t,e,i,r,n){let s=me.empty;for(let t=i.length-1;t>=0;t--)s=me.from(i[t].type.create(i[t].attrs,s));t.step(new Xi(e.start-(r?2:0),e.end,e.start,e.end,new ve(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 o=i.length-l;let u=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&&dr(t.doc,u,o)){t.split(u,o);u+=2*o}u+=f.child(i).nodeSize}return t}function Vu(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 o=n.node(-1);if(o.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=me.empty;let s=n.index(-1)?1:n.index(-2)?2:3;for(let t=n.depth-s;t>=n.depth-3;t--)e=me.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(me.from(t.createAndFill()));let o=n.before(n.depth-(s-1));let u=i.tr.replace(o,n.after(-l),new ve(e,4-s,0));let f=-1;u.doc.nodesBetween(o,u.doc.content.size,((t,e)=>{if(f>-1)return false;if(t.isTextblock&&t.content.size==0)f=e+1}));if(f>-1)u.setSelection(Pr.near(u.doc.resolve(f)));r(u.scrollIntoView())}return true}let u=s.pos==n.end()?o.contentMatchAt(0).defaultType:null;let f=i.tr.delete(n.pos,s.pos);let h=u?[e?{type:t,attrs:e}:null,{type:u}]:undefined;if(!dr(f.doc,n.pos,2,h))return false;if(r)r(f.split(n.pos,2,h).scrollIntoView());return true}}function Gu(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 Xu(e,i,t,s);else return Yu(e,i,s)}}function Xu(t,e,i,r){let n=t.tr,s=r.end,l=r.$to.end(r.depth);if(s<l){n.step(new Xi(s-1,l,s,l,new ve(me.from(i.create(null,r.parent.copy())),1,0),1,true));r=new ze(n.doc.resolve(r.$from.pos),n.doc.resolve(l),r.depth)}const o=rr(r);if(o==null)return false;n.lift(r,o);let u=n.mapping.map(s,-1)-1;if(mr(n.doc,u))n.join(u);e(n.scrollIntoView());return true}function Yu(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 o=i.startIndex==0,u=i.endIndex==n.childCount;let f=s.node(-1),h=s.index(-1);if(!f.canReplace(h+(o?0:1),h+1,l.content.append(u?me.empty:me.from(n))))return false;let a=s.pos,c=a+l.nodeSize;r.step(new Xi(a-(o?1:0),c+(u?1:0),a+1,c-1,new ve((o?me.empty:me.from(n.copy(me.empty))).append(u?me.empty:me.from(n.copy(me.empty))),o?0:1,u?0:1),o?0:1));e(r.scrollIntoView());return true}function Qu(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 o=s.parent,u=o.child(l-1);if(u.type!=t)return false;if(i){let r=u.lastChild&&u.lastChild.type==o.type;let n=me.from(r?t.create():null);let l=new ve(me.from(t.create(null,me.from(o.type.create(null,n)))),r?3:1,0);let f=s.start,h=s.end;i(e.tr.step(new Xi(f-(r?3:1),h,f,h,l,1,true)).scrollIntoView())}return true}}var tf={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 ef={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 rf=typeof navigator!="undefined"&&/Mac/.test(navigator.platform);var nf=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var sf=0;sf<10;sf++)tf[48+sf]=tf[96+sf]=String(sf);for(var sf=1;sf<=24;sf++)tf[sf+111]="F"+sf;for(var sf=65;sf<=90;sf++){tf[sf]=String.fromCharCode(sf+32);ef[sf]=String.fromCharCode(sf)}for(var lf in tf)if(!ef.hasOwnProperty(lf))ef[lf]=tf[lf];function of(t){var e=rf&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||nf&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified";var i=!e&&t.key||(t.shiftKey?ef:tf)[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 uf=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function ff(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(uf)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 hf(t){let e=Object.create(null);for(let i in t)e[ff(i)]=t[i];return e}function af(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 cf(t){return new hn({props:{handleKeyDown:df(t)}})}function df(t){let e=hf(t);return function(t,i){let r=of(i),n,s=e[af(r,i)];if(s&&s(t.state,t.dispatch,t))return true;if(r.length==1&&r!=" "){if(i.shiftKey){let n=e[af(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=tf[i.keyCode])&&n!=r){let r=e[af(n,i)];if(r&&r(t.state,t.dispatch,t))return true}}return false}}var pf=200;var mf=function t(){};mf.prototype.append=function t(e){if(!e.length){return this}e=mf.from(e);return!this.length&&e||e.length<pf&&this.leafAppend(e)||this.length<pf&&e.leafPrepend(this)||this.appendInner(e)};mf.prototype.prepend=function t(e){if(!e.length){return this}return mf.from(e).append(this)};mf.prototype.appendInner=function t(e){return new gf(this,e)};mf.prototype.slice=function t(e,i){if(e===void 0)e=0;if(i===void 0)i=this.length;if(e>=i){return mf.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,i))};mf.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};mf.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)}};mf.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};mf.from=function t(e){if(e instanceof mf){return e}return e&&e.length?new wf(e):mf.empty};var wf=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<=pf){return new e(this.values.concat(i.flatten()))}};e.prototype.leafPrepend=function t(i){if(this.length+i.length<=pf){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}(mf);mf.empty=new wf([]);var gf=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}(mf);const bf=500;class kf{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,o;let u=[],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 vf(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];u.push(new vf(i,undefined,undefined,u.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;o=new kf(this.items.slice(0,i).append(f.reverse().concat(u)),this.eventCount-1);return false}}),this.items.length,0);return{remaining:o,transform:s,selection:l}}addTransform(t,e,i,r){let n=[],s=this.eventCount;let l=this.items,o=!r&&l.length?l.get(l.length-1):null;for(let i=0;i<t.steps.length;i++){let u=t.steps[i].invert(t.docs[i]);let f=new vf(t.mapping.maps[i],u,e),h;if(h=o&&o.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)o=f}let u=s-i.depth;if(u>Ff){l=Df(l,u);s-=u}return new kf(l.append(n),s)}remapping(t,e){let i=new Pi;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 kf(this.items.append(t.map((t=>new vf(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 o=e;this.items.forEach((e=>{let r=n.getMirror(--o);if(r==null)return;s=Math.min(s,r);let u=n.maps[r];if(e.step){let s=t.steps[r].invert(t.docs[r]);let f=e.selection&&e.selection.map(n.slice(o+1,r));if(f)l++;i.push(new vf(u,s,f))}else{i.push(new vf(u))}}),r);let u=[];for(let t=e;t<s;t++)u.push(new vf(n.maps[t]));let f=this.items.slice(0,r).append(u).append(i);let h=new kf(f,l);if(h.emptyItemCount()>bf)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 o=s.selection&&s.selection.map(e.slice(i));if(o)n++;let u=new vf(l.invert(),t,o),f,h=r.length-1;if(f=r.length&&r[h].merge(u))r[h]=f;else r.push(u)}}else if(s.map){i--}}),this.items.length,0);return new kf(mf.from(r.reverse()),n)}}kf.empty=new kf(mf.empty,0);function Df(t,e){let i;t.forEach(((t,r)=>{if(t.selection&&e--==0){i=r;return false}}));return t.slice(i)}class vf{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 vf(e.getMap().invert(),e,this.selection)}}}class yf{constructor(t,e,i,r,n){this.done=t;this.undone=e;this.prevRanges=i;this.prevTime=r;this.prevComposition=n}}const Ff=20;function Ef(t,e,i,r){let n=i.getMeta(_f),s;if(n)return n.historyState;if(i.getMeta(Bf))t=new yf(t.done,t.undone,null,0,-1);let l=i.getMeta("appendedTransaction");if(i.steps.length==0){return t}else if(l&&l.getMeta(_f)){if(l.getMeta(_f).redo)return new yf(t.done.addTransform(i,undefined,r,$f(e)),t.undone,Mf(i.mapping.maps[i.steps.length-1]),t.prevTime,t.prevComposition);else return new yf(t.done,t.undone.addTransform(i,undefined,r,$f(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||!xf(i,t.prevRanges));let o=l?Af(t.prevRanges,i.mapping):Mf(i.mapping.maps[i.steps.length-1]);return new yf(t.done.addTransform(i,s?e.selection.getBookmark():undefined,r,$f(e)),kf.empty,o,i.time,n==null?t.prevComposition:n)}else if(s=i.getMeta("rebased")){return new yf(t.done.rebased(i,s),t.undone.rebased(i,s),Af(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}else{return new yf(t.done.addMaps(i.mapping.maps),t.undone.addMaps(i.mapping.maps),Af(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}}function xf(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 Mf(t){let e=[];t.forEach(((t,i,r,n)=>e.push(r,n)));return e}function Af(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 Cf(t,e,i,r){let n=$f(e);let s=_f.get(e).spec.config;let l=(r?t.undone:t.done).popEvent(e,n);if(!l)return;let o=l.selection.resolve(l.transform.doc);let u=(r?t.done:t.undone).addTransform(l.transform,e.selection.getBookmark(),s,n);let f=new yf(r?u:l.remaining,r?l.remaining:u,null,0,-1);i(l.transform.setSelection(o).setMeta(_f,{redo:r,historyState:f}).scrollIntoView())}let Sf=false,Of=null;function $f(t){let e=t.plugins;if(Of!=e){Sf=false;Of=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){Sf=true;break}}return Sf}const _f=new dn("history");const Bf=new dn("closeHistory");function jf(t={}){t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500};return new hn({key:_f,state:{init(){return new yf(kf.empty,kf.empty,null,0,-1)},apply(e,i,r){return Ef(i,r,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(t,e){let i=e.inputType;let r=i=="historyUndo"?qf:i=="historyRedo"?Rf:null;if(!r)return false;e.preventDefault();return r(t.state,t.dispatch)}}}})}const qf=(t,e)=>{let i=_f.getState(t);if(!i||i.done.eventCount==0)return false;if(e)Cf(i,t,e,false);return true};const Rf=(t,e)=>{let i=_f.getState(t);if(!i||i.undone.eventCount==0)return false;if(e)Cf(i,t,e,true);return true};const Nf=(t,e)=>{if(t.selection.empty)return false;if(e)e(t.tr.deleteSelection().scrollIntoView());return true};function zf(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("backward",t):i.parentOffset>0))return null;return i}const Tf=(t,e,i)=>{let r=zf(t,i);if(!r)return false;let n=Jf(r);if(!n){let i=r.blockRange(),n=i&&rr(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&&lh(t,n,e))return true;if(r.parent.content.size==0&&(If(s,"end")||Zr.isSelectable(s))){let i=vr(t.doc,r.before(),r.after(),ve.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(If(s,"end")?Pr.findFrom(r.doc.resolve(r.mapping.map(n.pos,-1)),-1):Zr.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 If(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 Pf=(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=Jf(r)}let l=s&&s.nodeBefore;if(!l||!Zr.isSelectable(l))return false;if(e)e(t.tr.setSelection(Zr.create(t.doc,s.pos-l.nodeSize)).scrollIntoView());return true};function Jf(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 Lf(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 Uf=(t,e,i)=>{let r=Lf(t,i);if(!r)return false;let n=Hf(r);if(!n)return false;let s=n.nodeAfter;if(lh(t,n,e))return true;if(r.parent.content.size==0&&(If(s,"start")||Zr.isSelectable(s))){let i=vr(t.doc,r.before(),r.after(),ve.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(If(s,"start")?Pr.findFrom(r.doc.resolve(r.mapping.map(n.pos)),1):Zr.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 Wf=(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=Hf(r)}let l=s&&s.nodeAfter;if(!l||!Zr.isSelectable(l))return false;if(e)e(t.tr.setSelection(Zr.create(t.doc,s.pos)).scrollIntoView());return true};function Hf(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 Zf=(t,e)=>{let i=t.selection,r=i instanceof Zr,n;if(r){if(i.node.isTextblock||!mr(t.doc,i.from))return false;n=i.from}else{n=gr(t.doc,i.from,-1);if(n==null)return false}if(e){let i=t.tr.join(n);if(r)i.setSelection(Zr.create(i.doc,n-t.doc.resolve(n).nodeBefore.nodeSize));e(i.scrollIntoView())}return true};const Kf=(t,e)=>{let i=t.selection,r;if(i instanceof Zr){if(i.node.isTextblock||!mr(t.doc,i.to))return false;r=i.to}else{r=gr(t.doc,i.to,1);if(r==null)return false}if(e)e(t.tr.join(r).scrollIntoView());return true};const Vf=(t,e)=>{let{$from:i,$to:r}=t.selection;let n=i.blockRange(r),s=n&&rr(n);if(s==null)return false;if(e)e(t.tr.lift(n,s).scrollIntoView());return true};const Gf=(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 Xf(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 Yf=(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=Xf(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(Pr.near(n.doc.resolve(r),1));e(n.scrollIntoView())}return true};const Qf=(t,e)=>{let i=t.selection,{$from:r,$to:n}=i;if(i instanceof Vr||r.parent.inlineContent||n.parent.inlineContent)return false;let s=Xf(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(Wr.create(l.doc,i+1));e(l.scrollIntoView())}return true};const th=(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(dr(t.doc,r)){if(e)e(t.tr.split(r).scrollIntoView());return true}}let r=i.blockRange(),n=r&&rr(r);if(n==null)return false;if(e)e(t.tr.lift(r,n).scrollIntoView());return true};function eh(t){return(e,i)=>{let{$from:r,$to:n}=e.selection;if(e.selection instanceof Zr&&e.selection.node.isBlock){if(!r.parentOffset||!dr(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 Wr||e.selection instanceof Vr)l.deleteSelection();let o=r.depth==0?null:Xf(r.node(-1).contentMatchAt(r.indexAfter(-1)));let u=t&&t(n.parent,s);let f=u?[u]:s&&o?[{type:o}]:undefined;let h=dr(l.doc,l.mapping.map(r.pos),1,f);if(!f&&!h&&dr(l.doc,l.mapping.map(r.pos),1,o?[{type:o}]:undefined)){if(o)f=[{type:o}];h=true}if(h){l.split(l.mapping.map(r.pos),1,f);if(!s&&!r.parentOffset&&r.parent.type!=o){let t=l.mapping.map(r.before()),e=l.doc.resolve(t);if(o&&r.node(-1).canReplaceWith(e.index(),e.index()+1,o))l.setNodeMarkup(l.mapping.map(r.before()),o)}}i(l.scrollIntoView())}return true}}const ih=eh();const rh=(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(Zr.create(t.doc,n)));return true};const nh=(t,e)=>{if(e)e(t.tr.setSelection(new Vr(t.doc)));return true};function sh(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||mr(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 lh(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s,l;if(r.type.spec.isolating||n.type.spec.isolating)return false;if(sh(t,e,i))return true;let o=e.parent.canReplace(e.index(),e.index()+1);if(o&&(s=(l=r.contentMatchAt(r.childCount)).findWrapping(n.type))&&l.matchType(s[0]||n.type).validEnd){if(i){let l=e.pos+n.nodeSize,o=me.empty;for(let t=s.length-1;t>=0;t--)o=me.from(s[t].create(null,o));o=me.from(r.copy(o));let u=t.tr.step(new Xi(e.pos-1,l,e.pos,l,new ve(o,1,0),s.length,true));let f=l+2*s.length;if(mr(u.doc,f))u.join(f);i(u.scrollIntoView())}return true}let u=Pr.findFrom(e,1);let f=u&&u.$from.blockRange(u.$to),h=f&&rr(f);if(h!=null&&h>=e.depth){if(i)i(t.tr.lift(f,h).scrollIntoView());return true}if(o&&If(n,"start",true)&&If(r,"end")){let s=r,l=[];for(;;){l.push(s);if(s.isTextblock)break;s=s.lastChild}let o=n,u=1;for(;!o.isTextblock;o=o.firstChild)u++;if(s.canReplace(s.childCount,s.childCount,o.content)){if(i){let r=me.empty;for(let t=l.length-1;t>=0;t--)r=me.from(l[t].copy(r));let s=t.tr.step(new Xi(e.pos-l.length,e.pos+n.nodeSize,e.pos+u,e.pos+n.nodeSize-u,new ve(r,l.length,0),0,true));i(s.scrollIntoView())}return true}}return false}function oh(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(Wr.create(e.doc,t<0?n.start(s):n.end(s))));return true}}const uh=oh(-1);const fh=oh(1);function hh(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),o=l&&sr(l,t,e);if(!o)return false;if(r)r(i.tr.wrap(l,o).scrollIntoView());return true}}function ah(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 ch(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 dh(t,e=null){return function(i,r){let{empty:n,$cursor:s,ranges:l}=i.selection;if(n&&!s||!ch(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:o}=l[i];if(n){s.removeMark(r.pos,o.pos,t)}else{let i=r.pos,n=o.pos,l=r.nodeAfter,u=o.nodeBefore;let f=l&&l.isText?/^\s*/.exec(l.text)[0].length:0;let h=u&&u.isText?/\s*$/.exec(u.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 ph(...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 mh=ph(Nf,Tf,Pf);let wh=ph(Nf,Uf,Wf);const gh={Enter:ph(Gf,Qf,th,ih),"Mod-Enter":Yf,Backspace:mh,"Mod-Backspace":mh,"Shift-Backspace":mh,Delete:wh,"Mod-Delete":wh,"Mod-a":nh};const bh={"Ctrl-h":gh["Backspace"],"Alt-Backspace":gh["Mod-Backspace"],"Ctrl-d":gh["Delete"],"Ctrl-Alt-Backspace":gh["Mod-Delete"],"Alt-Delete":gh["Mod-Delete"],"Alt-d":gh["Mod-Delete"],"Ctrl-a":uh,"Ctrl-e":fh};for(let t in gh)bh[t]=gh[t];const kh=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os!="undefined"&&os.platform?os.platform()=="darwin":false;const Dh=kh?bh:gh;function vh(t={}){return new hn({view(e){return new yh(e,t)}})}class yh{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=Dr(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 Fh extends Pr{constructor(t){super(t,t)}map(t,e){let i=t.resolve(e.map(this.head));return Fh.valid(i)?new Fh(i):Pr.near(i)}content(){return ve.empty}eq(t){return t instanceof Fh&&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 Fh(t.resolve(e.pos))}getBookmark(){return new Eh(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!xh(t)||!Mh(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&&Fh.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(Fh.valid(l))return l}for(;;){let s=e>0?n.firstChild:n.lastChild;if(!s){if(n.isAtom&&!n.isText&&!Zr.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(Fh.valid(l))return l}return null}}}Fh.prototype.visible=false;Fh.findFrom=Fh.findGapCursorFrom;Pr.jsonID("gapcursor",Fh);class Eh{constructor(t){this.pos=t}map(t){return new Eh(t.map(this.pos))}resolve(t){let e=t.resolve(this.pos);return Fh.valid(e)?new Fh(e):Pr.near(e)}}function xh(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 Mh(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 Ah(){return new hn({props:{decorations:_h,createSelectionBetween(t,e,i){return e.pos==i.pos&&Fh.valid(i)?new Fh(i):null},handleClick:Oh,handleKeyDown:Ch,handleDOMEvents:{beforeinput:$h}}})}const Ch=df({ArrowLeft:Sh("horiz",-1),ArrowRight:Sh("horiz",1),ArrowUp:Sh("vert",-1),ArrowDown:Sh("vert",1)});function Sh(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,o=s.empty;if(s instanceof Wr){if(!n.endOfTextblock(i)||l.depth==0)return false;o=false;l=t.doc.resolve(e>0?l.after():l.before())}let u=Fh.findGapCursorFrom(l,e,o);if(!u)return false;if(r)r(t.tr.setSelection(new Fh(u)));return true}}function Oh(t,e,i){if(!t||!t.editable)return false;let r=t.state.doc.resolve(e);if(!Fh.valid(r))return false;let n=t.posAtCoords({left:i.clientX,top:i.clientY});if(n&&n.inside>-1&&Zr.isSelectable(t.state.doc.nodeAt(n.inside)))return false;t.dispatch(t.state.tr.setSelection(new Fh(r)));return true}function $h(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof Fh))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=me.empty;for(let t=r.length-1;t>=0;t--)n=me.from(r[t].createAndFill(null,n));let s=t.state.tr.replace(i.pos,i.pos,new ve(n,0,0));s.setSelection(Wr.near(s.doc.resolve(i.pos+1)));t.dispatch(s);return false}function _h(t){if(!(t.selection instanceof Fh))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return Lo.create(t.doc,[Io.widget(t.selection.head,e,{key:"gapcursor"})])}function Bh(){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++)jh(t,arguments[e]);return t}function jh(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++)jh(t,e[i])}else{throw new RangeError("Unsupported child node: "+e)}}const qh="http://www.w3.org/2000/svg";const Rh="http://www.w3.org/1999/xlink";const Nh="ProseMirror-icon";function zh(t){let e=0;for(let i=0;i<t.length;i++)e=(e<<5)-e+t.charCodeAt(i)|0;return e}function Th(t,e){let i=(t.nodeType==9?t:t.ownerDocument)||document;let r=i.createElement("div");r.className=Nh;if(e.path){let{path:n,width:s,height:l}=e;let o="pm-icon-"+zh(n).toString(16);if(!i.getElementById(o))Ih(t,o,e);let u=r.appendChild(i.createElementNS(qh,"svg"));u.style.width=s/l+"em";let f=u.appendChild(i.createElementNS(qh,"use"));f.setAttributeNS(Rh,"href",/([^#]*)/.exec(i.location.toString())[1]+"#"+o)}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 Ih(t,e,i){let[r,n]=t.nodeType==9?[t,t.body]:[t.ownerDocument||document,t];let s=r.getElementById(Nh+"-collection");if(!s){s=r.createElementNS(qh,"svg");s.id=Nh+"-collection";s.style.display="none";n.insertBefore(s,n.firstChild)}let l=r.createElementNS(qh,"symbol");l.id=e;l.setAttribute("viewBox","0 0 "+i.width+" "+i.height);let o=l.appendChild(r.createElementNS(qh,"path"));o.setAttribute("d",i.path);s.appendChild(l)}const Ph="ProseMirror-menu";class Jh{constructor(t){this.spec=t}render(t){let e=this.spec;let i=e.render?e.render(t):e.icon?Th(t.root,e.icon):e.label?Bh("div",null,Lh(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",Lh(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(Ph+"-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;oa(i,Ph+"-disabled",!r)}if(e.active){let n=r&&e.active(t)||false;oa(i,Ph+"-active",n)}return true}return{dom:i,update:r}}}function Lh(t,e){return t._props.translate?t._props.translate(e):e}let Uh={time:0,node:null};function Wh(t){Uh.time=Date.now();Uh.node=t.target}function Hh(t){return Date.now()-100<Uh.time&&Uh.node&&t.contains(Uh.node)}class Zh{constructor(t,e={}){this.options=e;this.options=e||{};this.content=Array.isArray(t)?t:[t]}render(t){let e=Kh(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Bh("div",{class:Ph+"-dropdown "+(this.options.class||""),style:this.options.css},Lh(t,this.options.label||""));if(this.options.title)r.setAttribute("title",Lh(t,this.options.title));let n=Bh("div",{class:Ph+"-dropdown-wrap"},r);let s=null;let l=null;let o=()=>{if(s&&s.close()){s=null;i.removeEventListener("mousedown",l)}};r.addEventListener("mousedown",(t=>{t.preventDefault();Wh(t);if(s){o()}else{s=this.expand(n,e.dom);i.addEventListener("mousedown",l=()=>{if(!Hh(n))o()})}}));function u(t){let i=e.update(t);n.style.display=i?"":"none";return i}return{dom:n,update:u}}expand(t,e){let i=Bh("div",{class:Ph+"-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 Kh(t,e){let i=[],r=[];for(let n=0;n<t.length;n++){let{dom:s,update:l}=t[n].render(e);i.push(Bh("div",{class:Ph+"-dropdown-item"},s));r.push(l)}return{dom:i,update:Vh(r,i)}}function Vh(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 Gh{constructor(t,e={}){this.options=e;this.content=Array.isArray(t)?t:[t]}render(t){let e=Kh(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Bh("div",{class:Ph+"-submenu-label"},Lh(t,this.options.label||""));let n=Bh("div",{class:Ph+"-submenu-wrap"},r,Bh("div",{class:Ph+"-submenu"},e.dom));let s=null;r.addEventListener("mousedown",(t=>{t.preventDefault();Wh(t);oa(n,Ph+"-submenu-wrap-active",false);if(!s)i.addEventListener("mousedown",s=()=>{if(!Hh(n)){n.classList.remove(Ph+"-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 Xh(t,e){let i=document.createDocumentFragment();let r=[],n=[];for(let s=0;s<e.length;s++){let l=e[s],o=[],u=[];for(let e=0;e<l.length;e++){let{dom:r,update:n}=l[e].render(t);let s=Bh("span",{class:Ph+"item"},r);i.appendChild(s);u.push(s);o.push(n)}if(o.length){r.push(Vh(o,u));if(s<e.length-1)n.push(i.appendChild(Yh()))}}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 Yh(){return Bh("span",{class:Ph+"separator"})}const Qh={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 ta=new Jh({title:"Join with above block",run:Zf,select:t=>Zf(t),icon:Qh.join});const ea=new Jh({title:"Lift out of enclosing block",run:Vf,select:t=>Vf(t),icon:Qh.lift});const ia=new Jh({title:"Select parent node",run:rh,select:t=>rh(t),icon:Qh.selectParentNode});let ra=new Jh({title:"Undo last change",run:qf,enable:t=>qf(t),icon:Qh.undo});let na=new Jh({title:"Redo last undone change",run:Rf,enable:t=>Rf(t),icon:Qh.redo});function sa(t,e){let i={run(i,r){return hh(t,e.attrs)(i,r)},select(i){return hh(t,e.attrs)(i)}};for(let t in e)i[t]=e[t];return new Jh(i)}function la(t,e){let i=ah(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 Jh(r)}function oa(t,e,i){if(i)t.classList.add(e);else t.classList.remove(e)}const ua="ProseMirror-menubar";function fa(){if(typeof navigator=="undefined")return false;let t=navigator.userAgent;return!/Edge\/\d/.test(t)&&/AppleWebKit/.test(t)&&/Mobile\/\w+/.test(t)}function ha(t){return new hn({view(e){return new aa(e,t)}})}class aa{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=Bh("div",{class:ua+"-wrapper"});this.menu=this.wrapper.appendChild(Bh("div",{class:ua}));this.menu.className=ua;if(t.dom.parentNode)t.dom.parentNode.replaceChild(this.wrapper,t.dom);this.wrapper.appendChild(t.dom);let{dom:i,update:r}=Xh(this.editorView,this.options.content);this.contentUpdate=r;this.menu.appendChild(i);this.update();if(e.floating&&!fa()){this.updateFloat();let t=pa(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[ca(t)?0:e.length-1];if(!i)return;let r=this.menu.getBoundingClientRect();if(i.top<r.bottom&&i.bottom>r.top){let t=da(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=Bh("div",{class:ua+"-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 ca(t){if(t.anchorNode==t.focusNode)return t.anchorOffset>t.focusOffset;return t.anchorNode.compareDocumentPosition(t.focusNode)==Node.DOCUMENT_POSITION_FOLLOWING}function da(t){for(let e=t.parentNode;e;e=e.parentNode)if(e.scrollHeight>e.clientHeight)return e}function pa(t){let e=[t.ownerDocument.defaultView||window];for(let i=t.parentNode;i;i=i.parentNode)e.push(i);return e}class ma{constructor(t,e,i={}){this.match=t;this.match=t;this.handler=typeof e=="string"?wa(e):e;this.undoable=i.undoable!==false;this.inCode=i.inCode||false}}function wa(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 ga=500;function ba({rules:t}){let e=new hn({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 ka(i,r,n,s,t,e)},handleDOMEvents:{compositionend:i=>{setTimeout((()=>{let{$cursor:r}=i.state.selection;if(r)ka(i,r.pos,r.pos,"",t,e)}))}}},isInputRules:true});return e}function ka(t,e,i,r,n,s){if(t.composing)return false;let l=t.state,o=l.doc.resolve(e);let u=o.parent.textBetween(Math.max(0,o.parentOffset-ga),o.parentOffset,null,"")+r;for(let f=0;f<n.length;f++){let h=n[f];if(o.parent.type.spec.code){if(!h.inCode)continue}else if(h.inCode==="only"){continue}let a=h.match.exec(u);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 Da=(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 va=new ma(/--$/,"—");const ya=new ma(/\.\.\.$/,"…");const Fa=new ma(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");const Ea=new ma(/"$/,"”");const xa=new ma(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");const Ma=new ma(/'$/,"’");const Aa=[Fa,Ea,xa,Ma];function Ca(t,e,i=null,r){return new ma(t,((t,n,s,l)=>{let o=i instanceof Function?i(n):i;let u=t.tr.delete(s,l);let f=u.doc.resolve(s),h=f.blockRange(),a=h&&sr(h,e,o);if(!a)return null;u.wrap(h,a);let c=u.doc.resolve(s-1).nodeBefore;if(c&&c.type==e&&mr(u.doc,s-1)&&(!r||r(n,c)))u.join(s-1);return u}))}function Sa(t,e,i=null){return new ma(t,((t,r,n,s)=>{let l=t.doc.resolve(n);let o=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,o)}))}const Oa="ProseMirror-prompt";function $a(t){let e=document.body.appendChild(document.createElement("div"));e.className=Oa;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=Oa+"-submit";s.textContent="OK";let l=document.createElement("button");l.type="button";l.className=Oa+"-cancel";l.textContent="Cancel";l.addEventListener("click",r);let o=e.appendChild(document.createElement("form"));if(t.title)o.appendChild(document.createElement("h5")).textContent=t.title;n.forEach((t=>{o.appendChild(document.createElement("div")).appendChild(t)}));let u=o.appendChild(document.createElement("div"));u.className=Oa+"-buttons";u.appendChild(s);u.appendChild(document.createTextNode(" "));u.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=_a(t.fields,n);if(e){r();t.callback(e)}};o.addEventListener("submit",(t=>{t.preventDefault();h()}));o.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=o.elements[0];if(a)a.focus()}function _a(t,e){let i=Object.create(null),r=0;for(let n in t){let s=t[n],l=e[r++];let o=s.read(l),u=s.validate(o);if(u){Ba(l,u);return null}i[n]=s.clean(o)}return i}function Ba(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 ja{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 qa extends ja{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 Ra(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 Na(t){return new Jh({title:"Insert image",label:"Image",enable(e){return Ra(e,t)},run(e,i,r){let{from:n,to:s}=e.selection,l=null;if(e.selection instanceof Zr&&e.selection.node.type==t)l=e.selection.node.attrs;$a({title:"Insert image",fields:{src:new qa({label:"Location",required:true,value:l&&l.src}),title:new qa({label:"Title",value:l&&l.title}),alt:new qa({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 za(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 Jh(i)}function Ta(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 Ia(t,e){let i={active(e){return Ta(e,t)}};for(let t in e)i[t]=e[t];return za(dh(t),i)}function Pa(t){return new Jh({title:"Add or remove link",icon:Qh.link,active(e){return Ta(e,t)},enable(t){return!t.selection.empty},run(e,i,r){if(Ta(e,t)){dh(t)(e,i);return true}$a({title:"Create a link",fields:{href:new qa({label:"Link target",required:true}),title:new qa({label:"Title"})},callback(e){dh(t,e)(r.state,r.dispatch);r.focus()}})}})}function Ja(t,e){return za(Zu(t,e.attrs),e)}function La(t){let e={};let i;if(i=t.marks.strong)e.toggleStrong=Ia(i,{title:"Toggle strong style",icon:Qh.strong});if(i=t.marks.em)e.toggleEm=Ia(i,{title:"Toggle emphasis",icon:Qh.em});if(i=t.marks.code)e.toggleCode=Ia(i,{title:"Toggle code font",icon:Qh.code});if(i=t.marks.link)e.toggleLink=Pa(i);let r;if(r=t.nodes.image)e.insertImage=Na(r);if(r=t.nodes.bullet_list)e.wrapBulletList=Ja(r,{title:"Wrap in bullet list",icon:Qh.bulletList});if(r=t.nodes.ordered_list)e.wrapOrderedList=Ja(r,{title:"Wrap in ordered list",icon:Qh.orderedList});if(r=t.nodes.blockquote)e.wrapBlockQuote=sa(r,{title:"Wrap in block quote",icon:Qh.blockquote});if(r=t.nodes.paragraph)e.makeParagraph=la(r,{title:"Change to paragraph",label:"Plain"});if(r=t.nodes.code_block)e.makeCodeBlock=la(r,{title:"Change to code block",label:"Code"});if(r=t.nodes.heading)for(let t=1;t<=10;t++)e["makeHead"+t]=la(r,{title:"Change to heading "+t,label:"Level "+t,attrs:{level:t}});if(r=t.nodes.horizontal_rule){let t=r;e.insertHorizontalRule=new Jh({title:"Insert horizontal rule",label:"Horizontal rule",enable(e){return Ra(e,t)},run(e,i){i(e.tr.replaceSelectionWith(t.create()))}})}let n=t=>t.filter((t=>t));e.insertMenu=new Zh(n([e.insertImage,e.insertHorizontalRule]),{label:"Insert"});e.typeMenu=new Zh(n([e.makeParagraph,e.makeCodeBlock,e.makeHead1&&new Gh(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,ta,ea,ia])];e.fullMenu=e.inlineMenu.concat([[e.insertMenu,e.typeMenu]],[[ra,na]],e.blockMenu);return e}const Ua=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function Wa(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",qf);n("Shift-Mod-z",Rf);n("Backspace",Da);if(!Ua)n("Mod-y",Rf);n("Alt-ArrowUp",Zf);n("Alt-ArrowDown",Kf);n("Mod-BracketLeft",Vf);n("Escape",rh);if(r=t.marks.strong){n("Mod-b",dh(r));n("Mod-B",dh(r))}if(r=t.marks.em){n("Mod-i",dh(r));n("Mod-I",dh(r))}if(r=t.marks.code)n("Mod-`",dh(r));if(r=t.nodes.bullet_list)n("Shift-Ctrl-8",Zu(r));if(r=t.nodes.ordered_list)n("Shift-Ctrl-9",Zu(r));if(r=t.nodes.blockquote)n("Ctrl->",hh(r));if(r=t.nodes.hard_break){let t=r,e=ph(Yf,((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}));n("Mod-Enter",e);n("Shift-Enter",e);if(Ua)n("Ctrl-Enter",e)}if(r=t.nodes.list_item){n("Enter",Vu(r));n("Mod-[",Gu(r));n("Mod-]",Qu(r))}if(r=t.nodes.paragraph)n("Shift-Ctrl-0",ah(r));if(r=t.nodes.code_block)n("Shift-Ctrl-\\",ah(r));if(r=t.nodes.heading)for(let t=1;t<=6;t++)n("Shift-Ctrl-"+t,ah(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 Ha(t){return Ca(/^\s*>\s$/,t)}function Za(t){return Ca(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order==+t[1]))}function Ka(t){return Ca(/^\s*([-+*])\s$/,t)}function Va(t){return Sa(/^```$/,t)}function Ga(t,e){return Sa(new RegExp("^(#{1,"+e+"})\\s$"),t,(t=>({level:t[1].length})))}function Xa(t){let e=Aa.concat(ya,va),i;if(i=t.nodes.blockquote)e.push(Ha(i));if(i=t.nodes.ordered_list)e.push(Za(i));if(i=t.nodes.bullet_list)e.push(Ka(i));if(i=t.nodes.code_block)e.push(Va(i));if(i=t.nodes.heading)e.push(Ga(i,6));return ba({rules:e})}function Ya(t){let e=[Xa(t.schema),cf(Wa(t.schema,t.mapKeys)),cf(Dh),vh(),Ah()];if(t.menuBar!==false)e.push(ha({floating:t.floatingMenu!==false,content:t.menuContent||La(t.schema).fullMenu}));if(t.history!==false)e.push(jf());return e.concat(new hn({props:{attributes:{class:"ProseMirror-example-setup-style"}}}))}const Qa={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 tc=Object.values(Qa);const ec={Heading:"heading",one:1,two:2,three:3};const ic={Left:0,Middle:1,Right:2};const rc=(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 nc=(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===ec.Heading&&i){return n.attrs.level===i}return true}return false}};const sc=(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 lc=(t,e,i)=>{const r=(e,r)=>{const{from:n,to:s}=e.selection;if(n===s){const s=t.marks.link.create({href:i.href,title:i.href,target:fc(i.href)?"_blank":null});const l=i.text||i.href;const o=t.text(l,[s]);r(e.tr.insert(n,o))}else{const l=t.marks.link.create({href:i.href,title:i.href,target:fc(i.href)?"_blank":null});const o=e.doc.textBetween(n,s," ");const u=t.text(i.text||o,[l]);r(e.tr.replaceWith(n,s,u))}return true};rc(r,t.marks.link);return r};const oc=(t,e,i)=>{const r=t.marks[e];if(!r){throw new Error(`Mark "${e}" not found in schema`)}const n=uc(e,i);const s=dh(r,n);rc(s,r);return s};const uc=(t,e)=>{if(t===Qa.Link&&e.href){return{href:e.href,target:fc(e.href)?"_blank":null}}return undefined};const fc=t=>!t.startsWith(window.location.origin);const hc=(t,e,i={},r=false)=>{const n=t.nodes[e];const s=t.nodes.paragraph;return(t,e)=>{const{$from:l,$to:o}=t.selection;const u=l.node(l.depth-1).type===n;if(t.selection instanceof Wr&&l.sameParent(l.doc.resolve(o.pos))){if(l.parent.type===n){if(e){e(t.tr.setBlockType(l.pos,o.pos,s))}return true}else{if(u){return Vf(t,e)}if(r){return hh(n,i)(t,e)}else{return ah(n,i)(t,e)}}}return false}};const ac=t=>{try{new URL(t)}catch(t){return false}return true};const cc=(t,e,i)=>{const r=t.nodes[e];if(!r){throw new Error(`Node type "${e}" not found in schema`)}let n;if(e===ec.Heading&&i){n=hc(t,ec.Heading,{level:i})}else if(e===Qa.CodeBlock){n=hc(t,Qa.CodeBlock)}else{n=ah(r)}nc(n,r,i);return n};const dc=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`Node type "${e}" not found in schema`)}let r;if(e===Qa.Blockquote){r=hc(t,Qa.Blockquote,{},true)}else{r=hh(i)}sc(r,i);return r};const pc=t=>(e,i)=>{const{$from:r,$to:n}=e.selection;const s=r.blockRange(n);if(!s){return false}const l=s&&sr(s,t);if(l){if(i){i(e.tr.wrap(s,l).scrollIntoView())}return true}else{const t=s&&rr(s);if(t!==null){if(i){i(e.tr.lift(s,t).scrollIntoView())}return true}return false}};const mc=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`List type "${e}" not found in schema`)}const r=pc(i);sc(r,i);return r};const wc=(t,e)=>{const{from:i,to:r}=t.selection;if(i===r){return false}const n=window.clipboardData;if(!n){return false}const s=n.getData("text");if(!ac(s)){return false}const l=t.schema.marks.link.create({href:s,target:fc(s)?"_blank":null});const o=t.doc.textBetween(i,r," ");const u=t.schema.text(o,[l]);e(t.tr.replaceWith(i,r,u))};const gc={strong:oc,em:oc,underline:oc,strikethrough:oc,code:oc,link:lc,headerlevel1:t=>cc(t,ec.Heading,ec.one),headerlevel2:t=>cc(t,ec.Heading,ec.two),headerlevel3:t=>cc(t,ec.Heading,ec.three),blockquote:t=>dc(t,Qa.Blockquote),code_block:t=>cc(t,Qa.CodeBlock),ordered_list:t=>mc(t,Qa.OrderedList),bullet_list:t=>mc(t,Qa.BulletList)};class bc{constructor(t){this.schema=t}getCommand(t,e){const i=gc[t];if(!i){throw new Error(`The Mark "${t}" is not supported`)}return i(this.schema,t,e)}buildKeymap(){return{"Mod-B":this.getCommand(Qa.Bold),"Mod-I":this.getCommand(Qa.Italic),"Mod-Shift-1":this.getCommand(Qa.HeaderLevel1),"Mod-Shift-2":this.getCommand(Qa.HeaderLevel2),"Mod-Shift-3":this.getCommand(Qa.HeaderLevel3),"Mod-Shift-X":this.getCommand(Qa.Strikethrough),"Mod-`":this.getCommand(Qa.Code),"Mod-Shift-C":this.getCommand(Qa.CodeBlock),"Mod-v":wc}}}const kc=()=>{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:vc}=kc();const yc=[{value:Qa.Bold,text:"Bold",commandText:`${Dc} B`,icon:"-lime-text-bold",iconOnly:true,selected:false},{value:Qa.Italic,text:"Italic",commandText:`${Dc} I`,icon:"-lime-text-italic",iconOnly:true,selected:false},{value:Qa.Strikethrough,text:"Strikethrough",commandText:`${Dc} ${vc} X`,icon:"-lime-text-strikethrough",iconOnly:true,selected:false},{value:Qa.Link,text:"Link",icon:"-lime-text-link",iconOnly:true},{separator:true},{value:Qa.BulletList,text:"Bullet list",icon:"-lime-text-bulleted-list",iconOnly:true,selected:false},{value:Qa.OrderedList,text:"Numbered list",icon:"-lime-text-ordered-list",iconOnly:true,selected:false},{separator:true},{value:Qa.HeaderLevel1,text:"Header 1",commandText:`${Dc} ${vc} 1`,icon:"-lime-text-h-heading-1",iconOnly:true,selected:false},{value:Qa.HeaderLevel2,text:"Header 2",commandText:`${Dc} ${vc} 2`,icon:"-lime-text-h-heading-2",iconOnly:true,selected:false},{value:Qa.HeaderLevel3,text:"Header 3",commandText:`${Dc} ${vc} 3`,icon:"-lime-text-h-heading-3",iconOnly:true,selected:false},{separator:true},{value:Qa.Blockquote,text:"Blockquote",icon:"-lime-text-blockquote",iconOnly:true,selected:false},{separator:true},{value:Qa.Code,text:"Code",commandText:`${Dc} \``,icon:"-lime-text-code",iconOnly:true,selected:false},{value:Qa.CodeBlock,text:"Code Block",commandText:`${Dc} ${vc} C`,icon:"-lime-text-code-block",iconOnly:true,selected:false}];const Fc=()=>ae(yc);const Ec={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 xc={};function Mc(t){let e=xc[t];if(e){return e}e=xc[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 Ac(t,e){if(typeof e!=="string"){e=Ac.defaultChars}const i=Mc(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}))}Ac.defaultChars=";/?:@&=+$,#";Ac.componentChars="";const Cc={};function Sc(t){let e=Cc[t];if(e){return e}e=Cc[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 Oc(t,e,i){if(typeof e!=="string"){i=e;e=Oc.defaultChars}if(typeof i==="undefined"){i=true}const r=Sc(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}Oc.defaultChars=";/?:@&=+$,-_.!~*'()#";Oc.componentChars="-_.!~*'()";function $c(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 _c(){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 Bc=/^([a-z0-9.+-]+:)/i;const jc=/:[0-9]*$/;const qc=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;const Rc=["<",">",'"',"`"," ","\r","\n","\t"];const Nc=["{","}","|","\\","^","`"].concat(Rc);const zc=["'"].concat(Nc);const Tc=["%","/","?",";","#"].concat(zc);const Ic=["/","?","#"];const Pc=255;const Jc=/^[+a-z0-9A-Z_-]{0,63}$/;const Lc=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;const Uc={javascript:true,"javascript:":true};const Wc={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function Hc(t,e){if(t&&t instanceof _c)return t;const i=new _c;i.parse(t,e);return i}_c.prototype.parse=function(t,e){let i,r,n;let s=t;s=s.trim();if(!e&&t.split("#").length===1){const t=qc.exec(s);if(t){this.pathname=t[1];if(t[2]){this.search=t[2]}return this}}let l=Bc.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&&Uc[l])){s=s.substr(2);this.slashes=true}}if(!Uc[l]&&(n||l&&!Wc[l])){let t=-1;for(let e=0;e<Ic.length;e++){r=s.indexOf(Ic[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<Tc.length;e++){r=s.indexOf(Tc[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(Jc)){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(Jc)){const r=t.slice(0,e);const n=t.slice(e+1);const l=i.match(Lc);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>Pc){this.hostname=""}if(l){this.hostname=this.hostname.substr(1,this.hostname.length-2)}}const o=s.indexOf("#");if(o!==-1){this.hash=s.substr(o);s=s.slice(0,o)}const u=s.indexOf("?");if(u!==-1){this.search=s.substr(u);s=s.slice(0,u)}if(s){this.pathname=s}if(Wc[i]&&this.hostname&&!this.pathname){this.pathname=""}return this};_c.prototype.parseHost=function(t){let e=jc.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 Zc=Object.freeze({__proto__:null,decode:Ac,encode:Oc,format:$c,parse:Hc});const Kc=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;const Vc=/[\0-\x1F\x7F-\x9F]/;const Gc=/[\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 Xc=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\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 Yc=/[\$\+<->\^`\|~\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 Qc=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;const td=Object.freeze({__proto__:null,Any:Kc,Cc:Vc,Cf:Gc,P:Xc,S:Yc,Z:Qc});function ed(t){return Object.prototype.toString.call(t)}function id(t){return ed(t)==="[object String]"}const rd=Object.prototype.hasOwnProperty;function nd(t,e){return rd.call(t,e)}function sd(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 ld(t,e,i){return[].concat(t.slice(0,e),i,t.slice(e+1))}function od(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 ud(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 fd=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;const hd=/&([a-z#][a-z0-9]{1,31});/gi;const ad=new RegExp(fd.source+"|"+hd.source,"gi");const cd=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function dd(t,e){if(e.charCodeAt(0)===35&&cd.test(e)){const i=e[1].toLowerCase()==="x"?parseInt(e.slice(2),16):parseInt(e.slice(1),10);if(od(i)){return ud(i)}return t}const i=x(t);if(i!==t){return i}return t}function pd(t){if(t.indexOf("\\")<0){return t}return t.replace(fd,"$1")}function md(t){if(t.indexOf("\\")<0&&t.indexOf("&")<0){return t}return t.replace(ad,(function(t,e,i){if(e){return e}return dd(t,i)}))}const wd=/[&<>"]/;const gd=/[&<>"]/g;const bd={"&":"&","<":"<",">":">",'"':"""};function kd(t){return bd[t]}function Dd(t){if(wd.test(t)){return t.replace(gd,kd)}return t}const vd=/[.?*+^$[\]\\(){}|-]/g;function yd(t){return t.replace(vd,"\\$&")}function Fd(t){switch(t){case 9:case 32:return true}return false}function Ed(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 xd(t){return Xc.test(t)||Yc.test(t)}function Md(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 Ad(t){t=t.trim().replace(/\s+/g," ");if("ẞ".toLowerCase()==="Ṿ"){t=t.replace(/ẞ/g,"ß")}return t.toLowerCase().toUpperCase()}const Cd={mdurl:Zc,ucmicro:td};const Sd=Object.freeze({__proto__:null,lib:Cd,assign:sd,isString:id,has:nd,unescapeMd:pd,unescapeAll:md,isValidEntityCode:od,fromCodePoint:ud,escapeHtml:Dd,arrayReplaceAt:ld,isSpace:Fd,isWhiteSpace:Ed,isMdAsciiPunct:Md,isPunctChar:xd,escapeRE:yd,normalizeReference:Ad});function Od(t,e,i){let r,n,s,l;const o=t.posMax;const u=t.pos;t.pos=e+1;r=1;while(t.pos<o){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=u;return-1}}}let f=-1;if(n){f=t.pos}t.pos=u;return f}function $d(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=md(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=md(t.slice(e,n));s.pos=n;s.ok=true;return s}function _d(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+=md(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+=md(t.slice(e,s));return l}const Bd=Object.freeze({__proto__:null,parseLinkLabel:Od,parseLinkDestination:$d,parseLinkTitle:_d});const jd={};jd.code_inline=function(t,e,i,r,n){const s=t[e];return"<code"+n.renderAttrs(s)+">"+Dd(s.content)+"</code>"};jd.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"};jd.fence=function(t,e,i,r,n){const s=t[e];const l=s.info?md(s.info).trim():"";let o="";let u="";if(l){const t=l.split(/(\s+)/g);o=t[0];u=t.slice(2).join("")}let f;if(i.highlight){f=i.highlight(s.content,o,u)||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+o])}else{e[t]=e[t].slice();e[t][1]+=" "+i.langPrefix+o}const r={attrs:e};return`<pre><code${n.renderAttrs(r)}>${f}</code></pre>\n`}return`<pre><code${n.renderAttrs(s)}>${f}</code></pre>\n`};jd.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)};jd.hardbreak=function(t,e,i){return i.xhtmlOut?"<br />\n":"<br>\n"};jd.softbreak=function(t,e,i){return i.breaks?i.xhtmlOut?"<br />\n":"<br>\n":"\n"};jd.text=function(t,e){return Dd(t[e].content)};jd.html_block=function(t,e){return t[e].content};jd.html_inline=function(t,e){return t[e].content};function qd(){this.rules=sd({},jd)}qd.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};qd.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};qd.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};qd.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};qd.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 Rd(){this.__rules__=[];this.__cache__=null}Rd.prototype.__find__=function(t){for(let e=0;e<this.__rules__.length;e++){if(this.__rules__[e].name===t){return e}}return-1};Rd.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)}))}))};Rd.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};Rd.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};Rd.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};Rd.prototype.push=function(t,e,i){const r=i||{};this.__rules__.push({name:t,enabled:true,fn:e,alt:r.alt||[]});this.__cache__=null};Rd.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};Rd.prototype.enableOnly=function(t,e){if(!Array.isArray(t)){t=[t]}this.__rules__.forEach((function(t){t.enabled=false}));this.enable(t,e)};Rd.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};Rd.prototype.getRules=function(t){if(this.__cache__===null){this.__compile__()}return this.__cache__[t]||[]};function Nd(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}Nd.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};Nd.prototype.attrPush=function t(e){if(this.attrs){this.attrs.push(e)}else{this.attrs=[e]}};Nd.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}};Nd.prototype.attrGet=function t(e){const i=this.attrIndex(e);let r=null;if(i>=0){r=this.attrs[i][1]}return r};Nd.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 zd(t,e,i){this.src=t;this.env=i;this.tokens=[];this.inlineMode=false;this.md=e}zd.prototype.Token=Nd;const Td=/\r\n?|\n/g;const Id=/\0/g;function Pd(t){let e;e=t.src.replace(Td,"\n");e=e.replace(Id,"�");t.src=e}function Jd(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 Ld(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 Ud(t){return/^<a[>\s]/i.test(t)}function Wd(t){return/^<\/a\s*>/i.test(t)}function Hd(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(Ud(l.content)&&n>0){n--}if(Wd(l.content)){n++}}if(n>0){continue}if(l.type==="text"&&t.md.linkify.test(l.content)){const n=l.content;let o=t.md.linkify.match(n);const u=[];let f=l.level;let h=0;if(o.length>0&&o[0].index===0&&s>0&&r[s-1].type==="text_special"){o=o.slice(1)}for(let e=0;e<o.length;e++){const i=o[e].url;const r=t.md.normalizeLink(i);if(!t.md.validateLink(r)){continue}let s=o[e].text;if(!o[e].schema){s=t.md.normalizeLinkText("http://"+s).replace(/^http:\/\//,"")}else if(o[e].schema==="mailto:"&&!/^mailto:/i.test(s)){s=t.md.normalizeLinkText("mailto:"+s).replace(/^mailto:/,"")}else{s=t.md.normalizeLinkText(s)}const l=o[e].index;if(l>h){const e=new t.Token("text","",0);e.content=n.slice(h,l);e.level=f;u.push(e)}const a=new t.Token("link_open","a",1);a.attrs=[["href",r]];a.level=f++;a.markup="linkify";a.info="auto";u.push(a);const c=new t.Token("text","",0);c.content=s;c.level=f;u.push(c);const d=new t.Token("link_close","a",-1);d.level=--f;d.markup="linkify";d.info="auto";u.push(d);h=o[e].lastIndex}if(h<n.length){const e=new t.Token("text","",0);e.content=n.slice(h);e.level=f;u.push(e)}e[i].children=r=ld(r,s,u)}}}}const Zd=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/;const Kd=/\((c|tm|r)\)/i;const Vd=/\((c|tm|r)\)/gi;const Gd={c:"©",r:"®",tm:"™"};function Xd(t,e){return Gd[e.toLowerCase()]}function Yd(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(Vd,Xd)}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function Qd(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){if(Zd.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 tp(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(Kd.test(t.tokens[e].content)){Yd(t.tokens[e].children)}if(Zd.test(t.tokens[e].content)){Qd(t.tokens[e].children)}}}const ep=/['"]/;const ip=/['"]/g;const rp="’";function np(t,e,i){return t.slice(0,e)+i+t.slice(e+1)}function sp(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 o=s.content;let u=0;let f=o.length;t:while(u<f){ip.lastIndex=u;const h=ip.exec(o);if(!h){break}let a=true;let c=true;u=h.index+1;const d=h[0]==="'";let p=32;if(h.index-1>=0){p=o.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(u<f){m=o.charCodeAt(u)}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=Md(p)||xd(String.fromCharCode(p));const g=Md(m)||xd(String.fromCharCode(m));const b=Ed(p);const k=Ed(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=np(s.content,h.index,rp)}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=np(s.content,h.index,c);t[a.token].content=np(t[a.token].content,a.pos,l);u+=c.length-1;if(a.token===n){u+=l.length-1}o=s.content;f=o.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=np(s.content,h.index,rp)}}}}function lp(t){if(!t.md.options.typographer){return}for(let e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"||!ep.test(t.tokens[e].content)){continue}sp(t.tokens[e].children,t)}}function op(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 up=[["normalize",Pd],["block",Jd],["inline",Ld],["linkify",Hd],["replacements",tp],["smartquotes",lp],["text_join",op]];function fp(){this.ruler=new Rd;for(let t=0;t<up.length;t++){this.ruler.push(up[t][0],up[t][1])}}fp.prototype.process=function(t){const e=this.ruler.getRules("");for(let i=0,r=e.length;i<r;i++){e[i](t)}};fp.prototype.State=zd;function hp(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 o=n.charCodeAt(e);if(!l){if(Fd(o)){i++;if(o===9){r+=4-r%4}else{r++}continue}else{l=true}}if(o===10||e===s-1){if(o!==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}hp.prototype.push=function(t,e,i){const r=new Nd(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};hp.prototype.isEmpty=function t(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]};hp.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};hp.prototype.skipSpaces=function t(e){for(let t=this.src.length;e<t;e++){const t=this.src.charCodeAt(e);if(!Fd(t)){break}}return e};hp.prototype.skipSpacesBack=function t(e,i){if(e<=i){return e}while(e>i){if(!Fd(this.src.charCodeAt(--e))){return e+1}}return e};hp.prototype.skipChars=function t(e,i){for(let t=this.src.length;e<t;e++){if(this.src.charCodeAt(e)!==i){break}}return e};hp.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};hp.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 o=this.bMarks[l];let u=o;let f;if(l+1<i||n){f=this.eMarks[l]+1}else{f=this.eMarks[l]}while(u<f&&e<r){const t=this.src.charCodeAt(u);if(Fd(t)){if(t===9){e+=4-(e+this.bsCount[l])%4}else{e++}}else if(u-o<this.tShift[l]){e++}else{break}u++}if(e>r){s[t]=new Array(e-r+1).join(" ")+this.src.slice(u,f)}else{s[t]=this.src.slice(u,f)}}return s.join("")};hp.prototype.Token=Nd;const ap=65536;function cp(t,e){const i=t.bMarks[e]+t.tShift[e];const r=t.eMarks[e];return t.src.slice(i,r)}function dp(t){const e=[];const i=t.length;let r=0;let n=t.charCodeAt(r);let s=false;let l=0;let o="";while(r<i){if(n===124){if(!s){e.push(o+t.substring(l,r));o="";l=r+1}else{o+=t.substring(l,r-1);l=r}}s=n===92;r++;n=t.charCodeAt(r)}e.push(o+t.substring(l));return e}function pp(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 o=t.src.charCodeAt(s++);if(o!==124&&o!==45&&o!==58&&!Fd(o)){return false}if(l===45&&Fd(o)){return false}while(s<t.eMarks[n]){const e=t.src.charCodeAt(s);if(e!==124&&e!==45&&e!==58&&!Fd(e)){return false}s++}let u=cp(t,e+1);let f=u.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("")}}u=cp(t,e).trim();if(u.indexOf("|")===-1){return false}if(t.sCount[e]-t.blkIndent>=4){return false}f=dp(u);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}u=cp(t,n).trim();if(!u){break}if(t.sCount[n]-t.blkIndent>=4){break}f=dp(u);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();k+=a-f.length;if(k>ap){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 mp(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 wp(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 o=n;n=t.skipChars(n,l);let u=n-o;if(u<3){return false}const f=t.src.slice(o,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=o=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-o<u){continue}n=t.skipSpaces(n);if(n<s){continue}c=true;break}u=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,u,true);d.markup=f;d.map=[e,t.line];return true}function gp(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 o=[];const u=[];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;o.push(t.bMarks[p]);t.bMarks[p]=n;while(n<s){const e=t.src.charCodeAt(n);if(Fd(e)){if(e===9){l+=4-(l+t.bsCount[p]+(r?1:0))%4}else{l++}}else{break}n++}d=n>=s;u.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){o.push(t.bMarks[p]);u.push(t.bsCount[p]);h.push(t.tShift[p]);f.push(t.sCount[p]);t.sCount[p]-=t.blkIndent}break}o.push(t.bMarks[p]);u.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]=o[i];t.tShift[i+e]=h[i];t.sCount[i+e]=f[i];t.bsCount[i+e]=u[i]}t.blkIndent=m;return true}function bp(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 o=1;while(s<n){const e=t.src.charCodeAt(s++);if(e!==l&&!Fd(e)){return false}if(e===l){o++}}if(o<3){return false}if(r){return true}t.line=e+1;const u=t.push("hr","hr",0);u.map=[e,t.line];u.markup=Array(o+1).join(String.fromCharCode(l));return true}function kp(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(!Fd(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(!Fd(s)){return-1}}return n}function vp(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 yp(t,e,i,r){let n,s,l,o;let u=e;let f=true;if(t.sCount[u]-t.blkIndent>=4){return false}if(t.listIndent>=0&&t.sCount[u]-t.listIndent>=4&&t.sCount[u]<t.blkIndent){return false}let h=false;if(r&&t.parentType==="paragraph"){if(t.sCount[u]>=t.blkIndent){h=true}}let a;let c;let d;if((d=Dp(t,u))>=0){a=true;l=t.bMarks[u]+t.tShift[u];c=Number(t.src.slice(l,d-1));if(h&&c!==1)return false}else if((d=kp(t,u))>=0){a=false}else{return false}if(h){if(t.skipSpaces(d)>=t.eMarks[u])return false}if(r){return true}const p=t.src.charCodeAt(d-1);const m=t.tokens.length;if(a){o=t.push("ordered_list_open","ol",1);if(c!==1){o.attrs=[["start",c]]}}else{o=t.push("bullet_list_open","ul",1)}const w=[u,0];o.map=w;o.markup=String.fromCharCode(p);let g=false;const b=t.md.block.ruler.getRules("list");const k=t.parentType;t.parentType="list";while(u<i){s=d;n=t.eMarks[u];const e=t.sCount[u]+d-(t.bMarks[u]+t.tShift[u]);let r=e;while(s<n){const e=t.src.charCodeAt(s);if(e===9){r+=4-(r+t.bsCount[u])%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;o=t.push("list_item_open","li",1);o.markup=String.fromCharCode(p);const w=[u,0];o.map=w;if(a){o.info=t.src.slice(l,d-1)}const k=t.tight;const D=t.tShift[u];const v=t.sCount[u];const y=t.listIndent;t.listIndent=t.blkIndent;t.blkIndent=m;t.tight=true;t.tShift[u]=h-t.bMarks[u];t.sCount[u]=r;if(h>=n&&t.isEmpty(u+1)){t.line=Math.min(t.line+2,i)}else{t.md.block.tokenize(t,u,i,true)}if(!t.tight||g){f=false}g=t.line-u>1&&t.isEmpty(t.line-1);t.blkIndent=t.listIndent;t.listIndent=y;t.tShift[u]=D;t.sCount[u]=v;t.tight=k;o=t.push("list_item_close","li",-1);o.markup=String.fromCharCode(p);u=t.line;w[1]=u;if(u>=i){break}if(t.sCount[u]<t.blkIndent){break}if(t.sCount[u]-t.blkIndent>=4){break}let F=false;for(let e=0,r=b.length;e<r;e++){if(b[e](t,u,i,true)){F=true;break}}if(F){break}if(a){d=Dp(t,u);if(d<0){break}l=t.bMarks[u]+t.tShift[u]}else{d=kp(t,u);if(d<0){break}}if(p!==t.src.charCodeAt(d-1)){break}}if(a){o=t.push("ordered_list_close","ol",-1)}else{o=t.push("bullet_list_close","ul",-1)}o.markup=String.fromCharCode(p);w[1]=u;t.line=u;t.parentType=k;if(f){vp(t,m)}return true}function Fp(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 o(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 u=t.src.slice(n,s+1);s=u.length;let f=-1;for(n=1;n<s;n++){const t=u.charCodeAt(n);if(t===91){return false}else if(t===93){f=n;break}else if(t===10){const t=o(l);if(t!==null){u+=t;s=u.length;l++}}else if(t===92){n++;if(n<s&&u.charCodeAt(n)===10){const t=o(l);if(t!==null){u+=t;s=u.length;l++}}}}if(f<0||u.charCodeAt(f+1)!==58){return false}for(n=f+2;n<s;n++){const t=u.charCodeAt(n);if(t===10){const t=o(l);if(t!==null){u+=t;s=u.length;l++}}else if(Fd(t));else{break}}const h=t.md.helpers.parseLinkDestination(u,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=u.charCodeAt(n);if(t===10){const t=o(l);if(t!==null){u+=t;s=u.length;l++}}else if(Fd(t));else{break}}let m=t.md.helpers.parseLinkTitle(u,n,s);while(m.can_continue){const e=o(l);if(e===null)break;u+=e;n=s;s=u.length;l++;m=t.md.helpers.parseLinkTitle(u,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=u.charCodeAt(n);if(!Fd(t)){break}n++}if(n<s&&u.charCodeAt(n)!==10){if(w){w="";n=c;l=d;while(n<s){const t=u.charCodeAt(n);if(!Fd(t)){break}n++}}}if(n<s&&u.charCodeAt(n)!==10){return false}const g=Ad(u.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 Ep=["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 xp="[a-zA-Z_:][a-zA-Z0-9:._-]*";const Mp="[^\"'=<>`\\x00-\\x20]+";const Ap="'[^']*'";const Cp='"[^"]*"';const Sp="(?:"+Mp+"|"+Ap+"|"+Cp+")";const Op="(?:\\s+"+xp+"(?:\\s*=\\s*"+Sp+")?)";const $p="<[A-Za-z][A-Za-z0-9\\-]*"+Op+"*\\s*\\/?>";const _p="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>";const Bp="\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e";const jp="<[?][\\s\\S]*?[?]>";const qp="<![A-Za-z][^>]*>";const Rp="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>";const Np=new RegExp("^(?:"+$p+"|"+_p+"|"+Bp+"|"+jp+"|"+qp+"|"+Rp+")");const zp=new RegExp("^(?:"+$p+"|"+_p+")");const Tp=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,true],[/^<!--/,/-->/,true],[/^<\?/,/\?>/,true],[/^<![A-Z]/,/>/,true],[/^<!\[CDATA\[/,/\]\]>/,true],[new RegExp("^</?("+Ep.join("|")+")(?=(\\s|/?>|$))","i"),/^$/,true],[new RegExp(zp.source+"\\s*$"),/^$/,false]];function Ip(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 o=0;for(;o<Tp.length;o++){if(Tp[o][0].test(l)){break}}if(o===Tp.length){return false}if(r){return Tp[o][2]}let u=e+1;if(!Tp[o][1].test(l)){for(;u<i;u++){if(t.sCount[u]<t.blkIndent){break}n=t.bMarks[u]+t.tShift[u];s=t.eMarks[u];l=t.src.slice(n,s);if(Tp[o][1].test(l)){if(l.length!==0){u++}break}}}t.line=u;const f=t.push("html_block","",0);f.map=[e,u];f.content=t.getLines(e,u,t.blkIndent,true);return true}function Pp(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 o=1;l=t.src.charCodeAt(++n);while(l===35&&n<s&&o<=6){o++;l=t.src.charCodeAt(++n)}if(o>6||n<s&&!Fd(l)){return false}if(r){return true}s=t.skipSpacesBack(s,n);const u=t.skipCharsBack(s,35,n);if(u>n&&Fd(t.src.charCodeAt(u-1))){s=u}t.line=e+1;const f=t.push("heading_open","h"+String(o),1);f.markup="########".slice(0,o);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(o),-1);a.markup="########".slice(0,o);return true}function Jp(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 o=e+1;for(;o<i&&!t.isEmpty(o);o++){if(t.sCount[o]-t.blkIndent>3){continue}if(t.sCount[o]>=t.blkIndent){let e=t.bMarks[o]+t.tShift[o];const i=t.eMarks[o];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[o]<0){continue}let e=false;for(let n=0,s=r.length;n<s;n++){if(r[n](t,o,i,true)){e=true;break}}if(e){break}}if(!s){return false}const u=t.getLines(e,o,t.blkIndent,false).trim();t.line=o+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=u;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 Lp(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 o=t.push("paragraph_open","p",1);o.map=[e,t.line];const u=t.push("inline","",0);u.content=l;u.map=[e,t.line];u.children=[];t.push("paragraph_close","p",-1);t.parentType=n;return true}const Up=[["table",pp,["paragraph","reference"]],["code",mp],["fence",wp,["paragraph","reference","blockquote","list"]],["blockquote",gp,["paragraph","reference","blockquote","list"]],["hr",bp,["paragraph","reference","blockquote","list"]],["list",yp,["paragraph","reference","blockquote"]],["reference",Fp],["html_block",Ip,["paragraph","reference","blockquote"]],["heading",Pp,["paragraph","reference","blockquote"]],["lheading",Jp],["paragraph",Lp]];function Wp(){this.ruler=new Rd;for(let t=0;t<Up.length;t++){this.ruler.push(Up[t][0],Up[t][1],{alt:(Up[t][2]||[]).slice()})}}Wp.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 o=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 u=false;for(let s=0;s<n;s++){u=r[s](t,l,i,false);if(u){if(e>=t.line){throw new Error("block rule didn't increment state.line")}break}}if(!u)throw new Error("none of the block rules matched");t.tight=!o;if(t.isEmpty(t.line-1)){o=true}l=t.line;if(l<i&&t.isEmpty(l)){o=true;l++;t.line=l}}};Wp.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)};Wp.prototype.State=hp;function Hp(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}Hp.prototype.pushPending=function(){const t=new Nd("text","",0);t.content=this.pending;t.level=this.pendingLevel;this.tokens.push(t);this.pending="";return t};Hp.prototype.push=function(t,e,i){if(this.pending){this.pushPending()}const r=new Nd(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};Hp.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 o=s<i?this.src.charCodeAt(s):32;const u=Md(n)||xd(String.fromCharCode(n));const f=Md(o)||xd(String.fromCharCode(o));const h=Ed(n);const a=Ed(o);const c=!a&&(!f||h||u);const d=!h&&(!u||a||f);const p=c&&(e||!d||u);const m=d&&(e||!c||f);return{can_open:p,can_close:m,length:l}};Hp.prototype.Token=Nd;function Zp(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 Kp(t,e){let i=t.pos;while(i<t.posMax&&!Zp(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 Vp=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function Gp(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(Vp);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 o=l.url;if(o.length<=s.length)return false;o=o.replace(/\*+$/,"");const u=t.md.normalizeLink(o);if(!t.md.validateLink(u))return false;if(!e){t.pending=t.pending.slice(0,-s.length);const e=t.push("link_open","a",1);e.attrs=[["href",u]];e.markup="linkify";e.info="auto";const i=t.push("text","",0);i.content=t.md.normalizeLinkText(o);const r=t.push("link_close","a",-1);r.markup="linkify";r.info="auto"}t.pos+=o.length-s.length;return true}function Xp(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&&Fd(t.src.charCodeAt(i))){i++}t.pos=i;return true}const Yp=[];for(let t=0;t<256;t++){Yp.push(0)}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(t){Yp[t.charCodeAt(0)]=1}));function Qp(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(!Fd(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&&Yp[n]!==0){e.content=s}else{e.content=l}e.markup=l;e.info="escape"}t.pos=i+1;return true}function tm(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 o=l.length;if(t.backticksScanned&&(t.backticks[o]||0)<=n){if(!e)t.pending+=l;t.pos+=o;return true}let u=i;let f;while((f=t.src.indexOf("`",u))!==-1){u=f+1;while(u<s&&t.src.charCodeAt(u)===96){u++}const r=u-f;if(r===o){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=u;return true}t.backticks[r]=f}t.backticksScanned=true;if(!e)t.pending+=l;t.pos+=o;return true}function em(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 o;if(s%2){o=t.push("text","",0);o.content=l;s--}for(let e=0;e<s;e+=2){o=t.push("text","",0);o.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 im(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 rm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;im(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){im(t,e[r].delimiters)}}}const nm={tokenize:em,postProcess:rm};function sm(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 lm(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 o=t.tokens[i.token];o.type=s?"strong_open":"em_open";o.tag=s?"strong":"em";o.nesting=1;o.markup=s?l+l:l;o.content="";const u=t.tokens[n.token];u.type=s?"strong_close":"em_close";u.tag=s?"strong":"em";u.nesting=-1;u.markup=s?l+l:l;u.content="";if(s){t.tokens[e[r-1].token].content="";t.tokens[e[i.end+1].token].content="";r--}}}function om(t){const e=t.tokens_meta;const i=t.tokens_meta.length;lm(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){lm(t,e[r].delimiters)}}}const um={tokenize:sm,postProcess:om};function fm(t,e){let i,r,n,s;let l="";let o="";let u=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(!Fd(i)&&i!==10){break}}if(p>=a){return false}u=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=""}u=p;for(;p<a;p++){i=t.src.charCodeAt(p);if(!Fd(i)&&i!==10){break}}n=t.md.helpers.parseLinkTitle(t.src,p,t.posMax);if(p<a&&u!==p&&n.ok){o=n.str;p=n.pos;for(;p<a;p++){i=t.src.charCodeAt(p);if(!Fd(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){u=p+1;p=t.md.helpers.parseLinkLabel(t,p);if(p>=0){r=t.src.slice(u,p++)}else{p=d+1}}else{p=d+1}if(!r){r=t.src.slice(c,d)}s=t.env.references[Ad(r)];if(!s){t.pos=h;return false}l=s.href;o=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(o){i.push(["title",o])}t.linkLevel++;t.md.inline.tokenize(t);t.linkLevel--;t.push("link_close","a",-1)}t.pos=p;t.posMax=a;return true}function hm(t,e){let i,r,n,s,l,o,u,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(!Fd(i)&&i!==10){break}}if(s>=c){return false}f=s;o=t.md.helpers.parseLinkDestination(t.src,s,t.posMax);if(o.ok){h=t.md.normalizeLink(o.str);if(t.md.validateLink(h)){s=o.pos}else{h=""}}f=s;for(;s<c;s++){i=t.src.charCodeAt(s);if(!Fd(i)&&i!==10){break}}o=t.md.helpers.parseLinkTitle(t.src,s,t.posMax);if(s<c&&f!==s&&o.ok){u=o.str;s=o.pos;for(;s<c;s++){i=t.src.charCodeAt(s);if(!Fd(i)&&i!==10){break}}}else{u=""}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[Ad(n)];if(!l){t.pos=a;return false}h=l.href;u=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(u){n.push(["title",u])}}t.pos=s;t.posMax=c;return true}const am=/^([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 cm=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function dm(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(cm.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(am.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 pm(t){return/^<a[>\s]/i.test(t)}function mm(t){return/^<\/a\s*>/i.test(t)}function wm(t){const e=t|32;return e>=97&&e<=122}function gm(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&&!wm(n)){return false}const s=t.src.slice(r).match(Np);if(!s){return false}if(!e){const e=t.push("html_inline","",0);e.content=s[0];if(pm(e.content))t.linkLevel++;if(mm(e.content))t.linkLevel--}t.pos+=s[0].length;return true}const bm=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i;const km=/^&([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(bm);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=od(e)?ud(e):ud(65533);i.markup=r[0];i.info="entity"}t.pos+=r[0].length;return true}}else{const r=t.src.slice(i).match(km);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 vm(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 o=e[i.marker][(i.open?3:0)+i.length%3];let u=r-s[r]-1;let f=u;for(;u>o;u-=s[u]+1){const e=t[u];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=u>0&&!t[u-1].open?s[u-1]+1:0;s[l]=l-u+r;s[u]=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 ym(t){const e=t.tokens_meta;const i=t.tokens_meta.length;vm(t.delimiters);for(let t=0;t<i;t++){if(e[t]&&e[t].delimiters){vm(e[t].delimiters)}}}function Fm(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 Em=[["text",Kp],["linkify",Gp],["newline",Xp],["escape",Qp],["backticks",tm],["strikethrough",nm.tokenize],["emphasis",um.tokenize],["link",fm],["image",hm],["autolink",dm],["html_inline",gm],["entity",Dm]];const xm=[["balance_pairs",ym],["strikethrough",nm.postProcess],["emphasis",um.postProcess],["fragments_join",Fm]];function Mm(){this.ruler=new Rd;for(let t=0;t<Em.length;t++){this.ruler.push(Em[t][0],Em[t][1])}this.ruler2=new Rd;for(let t=0;t<xm.length;t++){this.ruler2.push(xm[t][0],xm[t][1])}}Mm.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};Mm.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()}};Mm.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)}};Mm.prototype.State=Hp;function Am(t){const e={};t=t||{};e.src_Any=Kc.source;e.src_Cc=Vc.source;e.src_Z=Qc.source;e.src_P=Xc.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 Cm(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 Sm(t){return Object.prototype.toString.call(t)}function Om(t){return Sm(t)==="[object String]"}function $m(t){return Sm(t)==="[object Object]"}function _m(t){return Sm(t)==="[object RegExp]"}function Bm(t){return Sm(t)==="[object Function]"}function jm(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const qm={fuzzyLink:true,fuzzyEmail:true,fuzzyIP:false};function Rm(t){return Object.keys(t||{}).reduce((function(t,e){return t||qm.hasOwnProperty(e)}),false)}const Nm={"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 zm="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 Tm="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Im(t){t.__index__=-1;t.__text_cache__=""}function Pm(t){return function(e,i){const r=e.slice(i);if(t.test(r)){return r.match(t)[0].length}return 0}}function Jm(){return function(t,e){e.normalize(t)}}function Lm(t){const e=t.re=Am(t.__opts__);const i=t.__tlds__.slice();t.onCompile();if(!t.__tlds_replaced__){i.push(zm)}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($m(i)){if(_m(i.validate)){r.validate=Pm(i.validate)}else if(Bm(i.validate)){r.validate=i.validate}else{s(e,i)}if(Bm(i.normalize)){r.normalize=i.normalize}else if(!i.normalize){r.normalize=Jm()}else{s(e,i)}return}if(Om(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:Jm()};const l=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(jm).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");Im(t)}function Um(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 Wm(t,e){const i=new Um(t,e);t.__compiled__[i.schema].normalize(i,t);return i}function Hm(t,e){if(!(this instanceof Hm)){return new Hm(t,e)}if(!e){if(Rm(t)){e=t;t={}}}this.__opts__=Cm({},qm,e);this.__index__=-1;this.__last_index__=-1;this.__schema__="";this.__text_cache__="";this.__schemas__=Cm({},Nm,t);this.__compiled__={};this.__tlds__=Tm;this.__tlds_replaced__=false;this.re={};Lm(this)}Hm.prototype.add=function t(e,i){this.__schemas__[e]=i;Lm(this);return this};Hm.prototype.set=function t(e){this.__opts__=Cm(this.__opts__,e);return this};Hm.prototype.test=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length){return false}let i,r,n,s,l,o,u,f,h;if(this.re.schema_test.test(e)){u=this.re.schema_search;u.lastIndex=0;while((i=u.exec(e))!==null){s=this.testSchemaAt(e,i[2],u.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;o=n.index+n[0].length;if(this.__index__<0||l<this.__index__||l===this.__index__&&o>this.__last_index__){this.__schema__="mailto:";this.__index__=l;this.__last_index__=o}}}}return this.__index__>=0};Hm.prototype.pretest=function t(e){return this.re.pretest.test(e)};Hm.prototype.testSchemaAt=function t(e,i,r){if(!this.__compiled__[i.toLowerCase()]){return 0}return this.__compiled__[i.toLowerCase()].validate(e,r,this)};Hm.prototype.match=function t(e){const i=[];let r=0;if(this.__index__>=0&&this.__text_cache__===e){i.push(Wm(this,r));r=this.__last_index__}let n=r?e.slice(r):e;while(this.test(n)){i.push(Wm(this,r));n=n.slice(this.__last_index__);r+=this.__last_index__}if(i.length){return i}return null};Hm.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 Wm(this,0)};Hm.prototype.tlds=function t(e,i){e=Array.isArray(e)?e:[e];if(!i){this.__tlds__=e.slice();this.__tlds_replaced__=true;Lm(this);return this}this.__tlds__=this.__tlds__.concat(e).sort().filter((function(t,e,i){return t!==i[e-1]})).reverse();Lm(this);return this};Hm.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}};Hm.prototype.onCompile=function t(){};const Zm=2147483647;const Km=36;const Vm=1;const Gm=26;const Xm=38;const Ym=700;const Qm=72;const tw=128;const ew="-";const iw=/^xn--/;const rw=/[^\0-\x7F]/;const nw=/[\x2E\u3002\uFF0E\uFF61]/g;const sw={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const lw=Km-Vm;const ow=Math.floor;const uw=String.fromCharCode;function fw(t){throw new RangeError(sw[t])}function hw(t,e){const i=[];let r=t.length;while(r--){i[r]=e(t[r])}return i}function aw(t,e){const i=t.split("@");let r="";if(i.length>1){r=i[0]+"@";t=i[1]}t=t.replace(nw,".");const n=t.split(".");const s=hw(n,e).join(".");return r+s}function cw(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 dw=t=>String.fromCodePoint(...t);const pw=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 Km};const mw=function(t,e){return t+22+75*(t<26)-((e!=0)<<5)};const ww=function(t,e,i){let r=0;t=i?ow(t/Ym):t>>1;t+=ow(t/e);for(;t>lw*Gm>>1;r+=Km){t=ow(t/lw)}return ow(r+(lw+1)*t/(t+Xm))};const gw=function(t){const e=[];const i=t.length;let r=0;let n=tw;let s=Qm;let l=t.lastIndexOf(ew);if(l<0){l=0}for(let i=0;i<l;++i){if(t.charCodeAt(i)>=128){fw("not-basic")}e.push(t.charCodeAt(i))}for(let o=l>0?l+1:0;o<i;){const l=r;for(let e=1,n=Km;;n+=Km){if(o>=i){fw("invalid-input")}const l=pw(t.charCodeAt(o++));if(l>=Km){fw("invalid-input")}if(l>ow((Zm-r)/e)){fw("overflow")}r+=l*e;const u=n<=s?Vm:n>=s+Gm?Gm:n-s;if(l<u){break}const f=Km-u;if(e>ow(Zm/f)){fw("overflow")}e*=f}const u=e.length+1;s=ww(r-l,u,l==0);if(ow(r/u)>Zm-n){fw("overflow")}n+=ow(r/u);r%=u;e.splice(r++,0,n)}return String.fromCodePoint(...e)};const bw=function(t){const e=[];t=cw(t);const i=t.length;let r=tw;let n=0;let s=Qm;for(const i of t){if(i<128){e.push(uw(i))}}const l=e.length;let o=l;if(l){e.push(ew)}while(o<i){let i=Zm;for(const e of t){if(e>=r&&e<i){i=e}}const u=o+1;if(i-r>ow((Zm-n)/u)){fw("overflow")}n+=(i-r)*u;r=i;for(const i of t){if(i<r&&++n>Zm){fw("overflow")}if(i===r){let t=n;for(let i=Km;;i+=Km){const r=i<=s?Vm:i>=s+Gm?Gm:i-s;if(t<r){break}const n=t-r;const l=Km-r;e.push(uw(mw(r+n%l,0)));t=ow(n/l)}e.push(uw(mw(t,0)));s=ww(n,u,o===l);n=0;++o}}++n;++r}return e.join("")};const kw=function(t){return aw(t,(function(t){return iw.test(t)?gw(t.slice(4).toLowerCase()):t}))};const Dw=function(t){return aw(t,(function(t){return rw.test(t)?"xn--"+bw(t):t}))};const vw={version:"2.3.1",ucs2:{decode:cw,encode:dw},decode:gw,encode:bw,toASCII:Dw,toUnicode:kw};const yw={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}};const Fw={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 Ew={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 xw={default:yw,zero:Fw,commonmark:Ew};const Mw=/^(vbscript|javascript|file|data):/;const Aw=/^data:image\/(gif|png|jpeg|webp);/;function Cw(t){const e=t.trim().toLowerCase();return Mw.test(e)?Aw.test(e):true}const Sw=["http:","https:","mailto:"];function Ow(t){const e=Hc(t,true);if(e.hostname){if(!e.protocol||Sw.indexOf(e.protocol)>=0){try{e.hostname=vw.toASCII(e.hostname)}catch(t){}}}return Oc($c(e))}function $w(t){const e=Hc(t,true);if(e.hostname){if(!e.protocol||Sw.indexOf(e.protocol)>=0){try{e.hostname=vw.toUnicode(e.hostname)}catch(t){}}}return Ac($c(e),Ac.defaultChars+"%")}function _w(t,e){if(!(this instanceof _w)){return new _w(t,e)}if(!e){if(!id(t)){e=t||{};t="default"}}this.inline=new Mm;this.block=new Wp;this.core=new fp;this.renderer=new qd;this.linkify=new Hm;this.validateLink=Cw;this.normalizeLink=Ow;this.normalizeLinkText=$w;this.utils=Sd;this.helpers=sd({},Bd);this.options={};this.configure(t);if(e){this.set(e)}}_w.prototype.set=function(t){sd(this.options,t);return this};_w.prototype.configure=function(t){const e=this;if(id(t)){const e=t;t=xw[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};_w.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};_w.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};_w.prototype.use=function(t){const e=[this].concat(Array.prototype.slice.call(arguments,1));t.apply(t,e);return this};_w.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};_w.prototype.render=function(t,e){e=e||{};return this.renderer.render(this.parse(t,e),this.options,e)};_w.prototype.parseInline=function(t,e){const i=new this.core.State(t,this,e);i.inlineMode=true;this.core.process(i);return i.tokens};_w.prototype.renderInline=function(t,e){e=e||{};return this.renderer.render(this.parseInline(t,e),this.options,e)};const Bw=new fi({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 jw(t,e){if(t.isText&&e.isText&&ke.sameSet(t.marks,e.marks))return t.withText(t.text+e.text)}class qw{constructor(t,e){this.schema=t;this.tokenHandlers=e;this.stack=[{type:t.topNodeType,attrs:null,content:[],marks:ke.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=jw(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:ke.none})}closeNode(){let t=this.stack.pop();return this.addNode(t.type,t.attrs,t.content)}}function Rw(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 Nw(t,e){return t.noCloseToken||e=="code_inline"||e=="code_block"||e=="fence"}function zw(t){return t[t.length-1]=="\n"?t.slice(0,t.length-1):t}function Tw(){}function Iw(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(Nw(n,r)){i[r]=(t,i,r,s)=>{t.openNode(e,Rw(n,i,r,s));t.addText(zw(i.content));t.closeNode()}}else{i[r+"_open"]=(t,i,r,s)=>t.openNode(e,Rw(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,Rw(n,i,r,s))}else if(n.mark){let e=t.marks[n.mark];if(Nw(n,r)){i[r]=(t,i,r,s)=>{t.openMark(e.create(Rw(n,i,r,s)));t.addText(zw(i.content));t.closeMark(e)}}else{i[r+"_open"]=(t,i,r,s)=>t.openMark(e.create(Rw(n,i,r,s)));i[r+"_close"]=t=>t.closeMark(e)}}else if(n.ignore){if(Nw(n,r)){i[r]=Tw}else{i[r+"_open"]=Tw;i[r+"_close"]=Tw}}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 Pw{constructor(t,e,i){this.schema=t;this.tokenizer=e;this.tokens=i;this.tokenHandlers=Iw(t,i)}parse(t,e={}){let i=new qw(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 Jw(t,e){while(++e<t.length)if(t[e].type!="list_item_open")return t[e].hidden;return false}new Pw(Bw,_w("commonmark",{html:false}),{blockquote:{block:"blockquote"},paragraph:{block:"paragraph"},list_item:{block:"list_item"},bullet_list:{block:"bullet_list",getAttrs:(t,e,i)=>({tight:Jw(e,i)})},ordered_list:{block:"ordered_list",getAttrs:(t,e,i)=>({order:+t.attrGet("start")||1,tight:Jw(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 Lw{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 Zw(this.nodes,this.marks,e);i.renderContent(t);return i.out}}const Uw=new Lw({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("]/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=Hw(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 Ww(i.child(r),-1)},close(t,e,i,r){return Ww(i.child(r-1),1)},escape:false}});function Ww(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 Hw(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 Zw{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 o=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){o+=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 u=l.length?l[l.length-1]:null;let f=u&&this.marks[u.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(o)this.text(o);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(u,true,t,s)+e.text+this.markString(u,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 Kw=new Lw(Object.assign({},Uw.nodes),Object.assign(Object.assign({},Uw.marks),{strikethrough:{open:"~~",close:"~~",mixable:true,expelEnclosingWhitespace:true}}));class Vw{constructor(){this.parseAsHTML=t=>M(t);this.serialize=t=>{if(t.dom.textContent===""){return""}else{return Kw.serialize(t.state.doc)}}}}class Gw{constructor(){this.parseAsHTML=t=>new Promise((e=>{e(t)}));this.serialize=t=>{if(t.dom.textContent===""){return""}else{return t.dom.innerHTML}}}}const Xw={parseDOM:[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration=line-through"}],toDOM:()=>["s",0]};const Yw=new dn("linkPlugin");const Qw=(t,e)=>{const{from:i,to:r}=t.state.selection;let n="";let s="";t.state.doc.nodesBetween(i,r,((t,e)=>{if(t.type.name!=="text"){return}const l=Math.max(0,i-e);const o=Math.min(t.text.length,r-e);n+=t.text.slice(l,o);t.marks.forEach((t=>{if(t.type.name==="link"){s=t.attrs.href}}))}));if(e){e(n,s)}};const tg=(t,e,i)=>{while(e>0){const r=t.nodeAt(e-1);if(!(r===null||r===void 0?void 0:r.isText)||!r.marks.some((t=>t.type.name===Qa.Link&&t.attrs.href===i))){break}e--}return e};const eg=(t,e,i)=>{while(e<t.content.size){const r=t.nodeAt(e);if(!(r===null||r===void 0?void 0:r.isText)||!r.marks.some((t=>t.type.name===Qa.Link&&t.attrs.href===i))){break}e++}return e};const ig=(t,e)=>{const i=t.posAtCoords({left:e.clientX,top:e.clientY});const r=t.state.doc.nodeAt(i.pos);if(!r){return null}const n=r.marks.find((t=>t.type.name===Qa.Link));if(!n){return null}const s=n.attrs.href;const l=tg(t.state.doc,i.pos,s);const o=eg(t.state.doc,i.pos,s);const u=t.state.doc.textBetween(l,o," ");return{href:s,text:u,from:l,to:o}};const rg=(t,e)=>{const{href:i}=ig(t,e);if(i){window.open(i,"_blank");return true}return false};const ng=(t,e,i)=>{const r=new CustomEvent("open-editor-link-menu",{detail:{href:e,text:i},bubbles:true,composed:true});t.dom.dispatchEvent(r)};let sg=0;const lg=200;let og;const ug=(t,e)=>{const i=Date.now();if(i-sg<lg){clearTimeout(og);sg=i;return false}sg=i;og=setTimeout((()=>{const i=ig(t,e);if(i){const{href:e,text:r,from:n,to:s}=i;const l=t.state.tr.setSelection(Wr.create(t.state.doc,n,s));t.dispatch(l);ng(t,e,r)}}),lg);return true};const fg=(t,e)=>{const i=e.clipboardData;if(!i){return false}const r=i.getData("text/plain");if(ac(r)){hg(t,r);return true}return false};const hg=(t,e)=>{const{state:i,dispatch:r}=t;const{from:n,to:s}=i.selection;const l=zu.marks.link.create({href:e,title:e,target:fc(e)?"_blank":null});const o=i.doc.textBetween(n,s," ")||e;const u=i.tr.insertText(o,n,s).addMark(n,n+o.length,l);r(u)};const ag=t=>new hn({key:Yw,props:{handlePaste:(t,e)=>fg(t,e),handleDOMEvents:{mousedown:(t,e)=>{if((e.metaKey||e.ctrlKey)&&e.button===0){return rg(t,e)}if(e.button!==ic.Right){return ug(t,e)}return true},click:(t,e)=>{if(!(e.target instanceof HTMLElement)){return}const i=e.target.closest("a");if(i){e.preventDefault();e.stopPropagation()}}}},view:()=>({update:e=>{Qw(e,t)}})});const cg=new dn("imageRemoverPlugin");const dg=()=>new hn({key:cg,props:{handlePaste:(t,e,i)=>wg(t,e,i)}});const pg=t=>{if(t instanceof Ie){if(t.type.name==="image"){return true}let e=false;t.content.forEach((t=>{if(pg(t)){e=true}}));return e}else if(t instanceof me){let e=false;t.forEach((t=>{if(pg(t)){e=true}}));return e}return false};const mg=t=>{const e=[];t.forEach((t=>{if(!pg(t)){if(t.content.size>0){const i=mg(t.content);const r=t.copy(i);e.push(r)}else{e.push(t)}}}));return me.fromArray(e)};const wg=(t,e,i)=>{const r=e.clipboardData;if(!r){return false}const n=new ve(mg(i.content),i.openStart,i.openEnd);if(n.content.childCount<i.content.childCount){const{state:e,dispatch:i}=t;const r=e.tr.replaceSelection(n);i(r);return true}return false};const gg=new dn("actionBarPlugin");const bg=(t,e,i)=>{const r={};t.forEach((t=>{const n=e.getCommand(t);r[t]=n&&n.active&&n.active(i.state)}));return r};const kg=(t,e,i)=>new hn({key:gg,state:{init:()=>({}),apply:(t,e)=>{const i=t.getMeta(gg);return i?i:e}},view:()=>({update:r=>{const n=gg.getState(r.state);const s=bg(t,e,r);if(!O(n,s)){const t=r.state.tr.setMeta(gg,s);r.dispatch(t);i(s)}}})});const Dg=new dn("actionBarInteractionPlugin");const vg=(t,e)=>{const{state:i}=e;const r=i.selection;let n=i.tr;if(!r.empty){n.setSelection(r)}t(i,(t=>{n=t}));e.dispatch(n);e.focus()};const yg=t=>new hn({key:Dg,props:{handleDOMEvents:{actionBarItemClick:(e,i)=>{i.preventDefault();i.stopPropagation();const{value:r}=i.detail;try{const i=t.getCommand(r);vg(i,e)}catch(t){console.error(`Error executing command: ${t}`)}return true},saveLinkMenu:(e,i)=>{i.preventDefault();i.stopPropagation();const{type:r,link:n}=i.detail;if(r===Qa.Link){try{const i=t.getCommand(r,n);vg(i,e)}catch(t){console.error(`Error executing command: ${t}`)}}return true}}}});const Fg='@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%;flex-grow:1}*{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}limel-portal{width:25rem}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 Eg=class{constructor(i){t(this,i);this.change=e(this,"change",7);this.suppressChangeEvent=false;this.getActionBarItems=()=>{this.actionBarItems=Fc().map(this.getTranslatedItem)};this.getTranslatedItem=t=>{const e=ae(t);if(S(t)){const i=Ec[t.value];if(i){e.text=A.get(i,this.language)}}return e};this.updateActiveActionBarItems=t=>{const e=Fc().map((e=>{if(S(e)){return Object.assign(Object.assign({},e),{selected:t[e.value]})}return e}));this.actionBarItems=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();t.stopImmediatePropagation();const{value:e}=t.detail;if(e===Qa.Link){this.isLinkMenuOpen=true;return}const i=new CustomEvent("actionBarItemClick",{detail:t.detail});this.view.dom.dispatchEvent(i)};this.handleCancelLinkMenu=t=>{t.preventDefault();t.stopPropagation();this.isLinkMenuOpen=false;this.link={text:"",href:""}};this.handleSaveLinkMenu=()=>{this.isLinkMenuOpen=false;const t=new CustomEvent("saveLinkMenu",{detail:{type:Qa.Link,link:this.link}});this.view.dom.dispatchEvent(t);this.link={href:""}};this.handleLinkChange=t=>{this.link=t.detail};this.handleNewLinkSelection=(t,e)=>{this.link.text=t;this.link.href=e};this.handleOpenLinkMenu=t=>{t.stopImmediatePropagation();const{href:e,text:i}=t.detail;this.link={href:e,text:i};this.isLinkMenuOpen=true};this.contentType="markdown";this.value=undefined;this.language=undefined;this.view=undefined;this.actionBarItems=[];this.link={href:""};this.isLinkMenuOpen=false;this.portalId=C()}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)}connectedCallback(){if(this.view){this.initializeTextEditor()}this.host.addEventListener("open-editor-link-menu",this.handleOpenLinkMenu)}disconnectedCallback(){this.host.removeEventListener("open-editor-link-menu",this.handleOpenLinkMenu);this.view.destroy()}render(){return[i("div",{id:"editor"}),i("limel-action-bar",{ref:t=>this.actionBarElement=t,accessibleLabel:"Toolbar",actions:this.actionBarItems,onItemSelected:this.handleActionBarItem}),this.renderLinkMenu()]}renderLinkMenu(){if(!this.isLinkMenuOpen){return}return i("limel-portal",{visible:this.isLinkMenuOpen,openDirection:"top",inheritParentWidth:true,anchor:this.actionBarElement},i("limel-text-editor-link-menu",{id:this.portalId,link:this.link,isOpen:this.isLinkMenuOpen,onLinkChange:this.handleLinkChange,onCancel:this.handleCancelLinkMenu,onSave:this.handleSaveLinkMenu}))}setupContentConverter(){if(this.contentType==="markdown"){this.contentConverter=new Vw}else if(this.contentType==="html"){this.contentConverter=new Gw}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 bc(this.schema);this.view=new Du(this.host.shadowRoot.querySelector("#editor"),{state:this.createEditorState(t),dispatchTransaction:this.handleTransaction});if(this.value){this.updateView(this.value)}}initializeSchema(){return new fi({nodes:Hu(zu.spec.nodes,"paragraph block*","block"),marks:zu.spec.marks.append({strikethrough:Xw})})}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 ai.fromSchema(this.schema).parse(t)}createEditorState(t){return un.create({doc:t,plugins:[...Ya({schema:this.schema,menuBar:false}),cf(this.menuCommandFactory.buildKeymap()),ag(this.handleNewLinkSelection),dg(),kg(tc,this.menuCommandFactory,this.updateActiveActionBarItems),yg(this.menuCommandFactory)]})}async updateView(t){this.suppressChangeEvent=true;const e=await this.contentConverter.parseAsHTML(t,this.schema);const i=ai.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}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"]}}};Eg.style=Fg;export{Eg as limel_prosemirror_adapter};
|
|
2
|
+
//# sourceMappingURL=p-f629e2bf.entry.js.map
|