@limetech/lime-elements 37.65.4 → 37.65.6
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 +16 -0
- package/dist/cjs/lime-elements.cjs.js +1 -1
- package/dist/cjs/limel-icon_2.cjs.entry.js +14 -2
- package/dist/cjs/limel-icon_2.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +17 -19
- package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-snackbar.cjs.entry.js +2 -1
- package/dist/cjs/limel-snackbar.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/portal/portal.js +14 -22
- package/dist/collection/components/portal/portal.js.map +1 -1
- package/dist/collection/components/snackbar/snackbar.css +75 -0
- package/dist/collection/components/snackbar/snackbar.js +1 -0
- package/dist/collection/components/snackbar/snackbar.js.map +1 -1
- package/dist/collection/components/text-editor/utils/markdown-converter.js +3 -1
- package/dist/collection/components/text-editor/utils/markdown-converter.js.map +1 -1
- package/dist/collection/components/text-editor/utils/plugin-factory.js +14 -18
- package/dist/collection/components/text-editor/utils/plugin-factory.js.map +1 -1
- package/dist/esm/lime-elements.js +1 -1
- package/dist/esm/limel-icon_2.entry.js +14 -2
- package/dist/esm/limel-icon_2.entry.js.map +1 -1
- package/dist/esm/limel-prosemirror-adapter.entry.js +17 -19
- package/dist/esm/limel-prosemirror-adapter.entry.js.map +1 -1
- package/dist/esm/limel-snackbar.entry.js +2 -1
- package/dist/esm/limel-snackbar.entry.js.map +1 -1
- package/dist/esm/loader.js +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-0f484317.entry.js +2 -0
- package/dist/lime-elements/p-0f484317.entry.js.map +1 -0
- package/dist/lime-elements/{p-fea2cbd9.entry.js → p-975f1ee3.entry.js} +2 -2
- package/dist/lime-elements/p-975f1ee3.entry.js.map +1 -0
- package/dist/lime-elements/{p-f6929c67.entry.js → p-d687c11f.entry.js} +2 -2
- package/dist/lime-elements/p-d687c11f.entry.js.map +1 -0
- package/dist/types/components/portal/portal.d.ts +1 -11
- package/dist/types/components.d.ts +0 -8
- package/package.json +1 -1
- package/dist/lime-elements/p-d968c565.entry.js +0 -2
- package/dist/lime-elements/p-d968c565.entry.js.map +0 -1
- package/dist/lime-elements/p-f6929c67.entry.js.map +0 -1
- package/dist/lime-elements/p-fea2cbd9.entry.js.map +0 -1
|
@@ -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-086509a5.js";import{t as A}from"./p-fe15bcbb.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{d as $}from"./p-18c97232.js";import"./p-eda23c05.js";import"./p-4c3358cb.js";import"./p-9acf7b5d.js";import"./p-5fdb83c9.js";import"./p-eab67c09.js";import"./p-365098fe.js";import"./p-d529bb7d.js";var _=Object.create;var B=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 j(t,e){var i=-1,r=t.length;e||(e=Array(r));while(++i<r){e[i]=t[i]}return e}function R(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 N(t,e){return t&&q(e,n(e),t)}function T(t,e){return t&&q(e,w(e),t)}var z=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var I=z&&typeof module=="object"&&module&&!module.nodeType&&module;var P=I&&I.exports===z;var J=P?v.Buffer:undefined,L=J?J.allocUnsafe:undefined;function U(t,e){if(e){return t.slice()}var i=t.length,r=L?L(i):new t.constructor(i);t.copy(r);return r}function W(t,e){return q(t,s(t),e)}function H(t,e){return q(t,g(t),e)}var Z=Object.prototype;var K=Z.hasOwnProperty;function V(t){var e=t.length,i=new t.constructor(e);if(e&&typeof t[0]=="string"&&K.call(t,"index")){i.index=t.index;i.input=t.input}return i}function G(t){var e=new t.constructor(t.byteLength);new l(e).set(new l(t));return e}function X(t,e){var i=e?G(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.byteLength)}var Y=/\w*$/;function Q(t){var e=new t.constructor(t.source,Y.exec(t));e.lastIndex=t.lastIndex;return e}var tt=y?y.prototype:undefined,et=tt?tt.valueOf:undefined;function it(t){return et?Object(et.call(t)):{}}function rt(t,e){var i=e?G(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.length)}var nt="[object Boolean]",st="[object Date]",lt="[object Map]",ot="[object Number]",ut="[object RegExp]",ft="[object Set]",ht="[object String]",at="[object Symbol]";var ct="[object ArrayBuffer]",dt="[object DataView]",pt="[object Float32Array]",mt="[object Float64Array]",wt="[object Int8Array]",gt="[object Int16Array]",bt="[object Int32Array]",kt="[object Uint8Array]",Dt="[object Uint8ClampedArray]",vt="[object Uint16Array]",yt="[object Uint32Array]";function Ft(t,e,i){var r=t.constructor;switch(e){case ct:return G(t);case nt:case st:return new r(+t);case dt:return X(t,i);case pt:case mt:case wt:case gt:case bt:case kt:case Dt:case vt:case yt:return rt(t,i);case lt:return new r;case ot:case ht:return new r(t);case ut:return Q(t);case ft:return new r;case at:return it(t)}}function Et(t){return typeof t.constructor=="function"&&!o(t)?B(b(t)):{}}var xt="[object Map]";function Mt(t){return E(t)&&u(t)==xt}var At=h&&h.isMap;var Ct=At?f(At):Mt;var St="[object Set]";function Ot(t){return E(t)&&u(t)==St}var $t=h&&h.isSet;var _t=$t?f($t):Ot;var Bt=1,jt=2,Rt=4;var qt="[object Arguments]",Nt="[object Array]",Tt="[object Boolean]",zt="[object Date]",It="[object Error]",Pt="[object Function]",Jt="[object GeneratorFunction]",Lt="[object Map]",Ut="[object Number]",Wt="[object Object]",Ht="[object RegExp]",Zt="[object Set]",Kt="[object String]",Vt="[object Symbol]",Gt="[object WeakMap]";var Xt="[object ArrayBuffer]",Yt="[object DataView]",Qt="[object Float32Array]",te="[object Float64Array]",ee="[object Int8Array]",ie="[object Int16Array]",re="[object Int32Array]",ne="[object Uint8Array]",se="[object Uint8ClampedArray]",le="[object Uint16Array]",oe="[object Uint32Array]";var ue={};ue[qt]=ue[Nt]=ue[Xt]=ue[Yt]=ue[Tt]=ue[zt]=ue[Qt]=ue[te]=ue[ee]=ue[ie]=ue[re]=ue[Lt]=ue[Ut]=ue[Wt]=ue[Ht]=ue[Zt]=ue[Kt]=ue[Vt]=ue[ne]=ue[se]=ue[le]=ue[oe]=true;ue[It]=ue[Pt]=ue[Gt]=false;function fe(t,e,i,r,s,l){var o,f=e&Bt,h=e&jt,p=e&Rt;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=V(t);if(!f){return j(t,o)}}else{var b=u(t),v=b==Pt||b==Jt;if(a(t)){return U(t,f)}if(b==Wt||b==qt||v&&!s){o=h||v?{}:Et(t);if(!f){return h?H(t,T(o,t)):W(t,N(o,t))}}else{if(!ue[b]){return s?t:{}}o=Ft(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(fe(r,e,i,r,t,l))}))}else if(Ct(t)){t.forEach((function(r,n){o.set(n,fe(r,e,i,n,t,l))}))}var E=p?h?k:d:h?w:n;var x=g?undefined:E(t);R(x||t,(function(r,n){if(x){n=r;r=t[n]}m(o,n,fe(r,e,i,n,t,l))}));return o}var he=1,ae=4;function ce(t){return fe(t,he|ae)}function de(t){this.content=t}de.prototype={constructor:de,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 de(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 de(i)},addToStart:function(t,e){return new de([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var i=this.remove(t).content.slice();i.push(t,e);return new de(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 de(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=de.from(t);if(!t.size)return this;return new de(t.content.concat(this.subtract(t).content))},append:function(t){t=de.from(t);if(!t.size)return this;return new de(this.subtract(t).content.concat(t.content))},subtract:function(t){var e=this;t=de.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}};de.from=function(t){if(t instanceof de)return t;var e=[];if(t)for(var i in t)e.push(i,t[i]);return new de(e)};function pe(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=pe(n.content,s.content,i+1);if(t!=null)return t}i+=n.nodeSize}}function me(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=me(l.content,o.content,i-1,r-1);if(t)return t}i-=u;r-=u}}class we{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 we(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 we(i,r)}cutByIndex(t,e){if(t==e)return we.empty;if(t==0&&e==this.content.length)return this;return new we(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 we(r,n)}addToStart(t){return new we([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new we(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 pe(this,t,e)}findDiffEnd(t,e=this.size,i=t.size){return me(this,t,e,i)}findIndex(t,e=-1){if(t==0)return be(0,t);if(t==this.size)return be(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 be(i+1,s);return be(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 we.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new we(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return we.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 we(e||t,i)}static from(t){if(!t)return we.empty;if(t instanceof we)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new we([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}we.empty=new we([],0);const ge={index:0,offset:0};function be(t,e){ge.index=t;ge.offset=e;return ge}function ke(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(!ke(t[i],e[i]))return false}else{for(let i in t)if(!(i in e)||!ke(t[i],e[i]))return false;for(let i in e)if(!(i in t))return false}return true}class De{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&&ke(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`);let r=i.create(e.attrs);i.checkAttrs(r.attrs);return r}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 De.none;if(t instanceof De)return[t];let e=t.slice();e.sort(((t,e)=>t.type.rank-e.type.rank));return e}}De.none=[];class ve extends Error{}class ye{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=Ee(this.content,t+this.openStart,e);return i&&new ye(i,this.openStart,this.openEnd)}removeBetween(t,e){return new ye(Fe(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 ye.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 ye(we.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 ye(t,i,r)}}ye.empty=new ye(we.empty,0,0);function Fe(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(Fe(s.content,e-n-1,i-n-1)))}function Ee(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=Ee(l.content,e-s-1,i);return o&&t.replaceChild(n,l.copy(o))}function xe(t,e,i){if(i.openStart>t.depth)throw new ve("Inserted content deeper than insertion position");if(t.depth-i.openStart!=e.depth-i.openEnd)throw new ve("Inconsistent open depths");return Me(t,e,i,0)}function Me(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=Me(t,e,i,r+1);return s.copy(s.content.replaceChild(n,l))}else if(!i.content.size){return $e(s,Be(t,e,r))}else if(!i.openStart&&!i.openEnd&&t.depth==r&&e.depth==r){let r=t.parent,n=r.content;return $e(r,n.cut(0,t.parentOffset).append(i.content).append(n.cut(e.parentOffset)))}else{let{start:n,end:l}=je(i,t);return $e(s,_e(t,n,l,e,r))}}function Ae(t,e){if(!e.type.compatibleContent(t.type))throw new ve("Cannot join "+e.type.name+" onto "+t.type.name)}function Ce(t,e,i){let r=t.node(i);Ae(r,e.node(i));return r}function Se(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 Oe(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){Se(t.nodeAfter,r);s++}}for(let t=s;t<l;t++)Se(n.child(t),r);if(e&&e.depth==i&&e.textOffset)Se(e.nodeBefore,r)}function $e(t,e){t.type.checkContent(e);return t.copy(e)}function _e(t,e,i,r,n){let s=t.depth>n&&Ce(t,e,n+1);let l=r.depth>n&&Ce(i,r,n+1);let o=[];Oe(null,t,n,o);if(s&&l&&e.index(n)==i.index(n)){Ae(s,l);Se($e(s,_e(t,e,i,r,n+1)),o)}else{if(s)Se($e(s,Be(t,e,n+1)),o);Oe(e,i,n,o);if(l)Se($e(l,Be(i,r,n+1)),o)}Oe(r,null,n,o);return new we(o)}function Be(t,e,i){let r=[];Oe(null,t,i,r);if(t.depth>i){let n=Ce(t,e,i+1);Se($e(n,Be(t,e,i+1)),r)}Oe(e,null,i,r);return new we(r)}function je(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(we.from(n));return{start:n.resolveNoCache(t.openStart+i),end:n.resolveNoCache(n.content.size-t.openEnd-i)}}class Re{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 De.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 Re(e,i,n)}static resolveCached(t,e){let i=Te.get(t);if(i){for(let t=0;t<i.elts.length;t++){let r=i.elts[t];if(r.pos==e)return r}}else{Te.set(t,i=new qe)}let r=i.elts[i.i]=Re.resolve(t,e);i.i=(i.i+1)%Ne;return r}}class qe{constructor(){this.elts=[];this.i=0}}const Ne=12,Te=new WeakMap;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 Ie=Object.create(null);class Pe{constructor(t,e,i,r=De.none){this.type=t;this.attrs=e;this.marks=r;this.content=i||we.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&&ke(this.attrs,e||t.defaultAttrs||Ie)&&De.sameSet(this.marks,i||De.none)}copy(t=null){if(t==this.content)return this;return new Pe(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new Pe(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 ye.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 ye(u,r.depth-s,n.depth-s)}replace(t,e,i){return xe(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 Re.resolveCached(this,t)}resolveNoCache(t){return Re.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 Le(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=we.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);this.type.checkAttrs(this.attrs);let t=De.none;for(let e=0;e<this.marks.length;e++){let i=this.marks[e];i.type.checkAttrs(i.attrs);t=i.addToSet(t)}if(!De.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=undefined;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=we.fromJSON(t,e.content);let n=t.nodeType(e.type).create(e.attrs,r,i);n.type.checkAttrs(n.attrs);return n}}Pe.prototype.text=undefined;class Je extends Pe{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 Le(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 Je(this.type,this.attrs,this.text,t)}withText(t){if(t==this.text)return this;return new Je(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 Le(t,e){for(let i=t.length-1;i>=0;i--)e=t[i].type.name+"("+e+")";return e}class Ue{constructor(t){this.validEnd=t;this.next=[];this.wrapCache=[]}static parse(t,e){let i=new We(t,e);if(i.next==null)return Ue.empty;let r=He(i);if(i.next)i.err("Unexpected trailing text");let n=ii(Qe(r));ri(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 we.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")}}Ue.empty=new Ue(true);class We{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 He(t){let e=[];do{e.push(Ze(t))}while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function Ze(t){let e=[];do{e.push(Ke(t))}while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function Ke(t){let e=Ye(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=Ge(t,e);else break}return e}function Ve(t){if(/\D/.test(t.next))t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);t.pos++;return e}function Ge(t,e){let i=Ve(t),r=i;if(t.eat(",")){if(t.next!="}")r=Ve(t);else r=-1}if(!t.eat("}"))t.err("Unclosed braced range");return{type:"range",min:i,max:r,expr:e}}function Xe(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 Ye(t){if(t.eat("(")){let e=He(t);if(!t.eat(")"))t.err("Missing closing paren");return e}else if(!/\W/.test(t.next)){let e=Xe(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 Qe(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 ti(t,e){return e-t}function ei(t,e){let i=[];r(e);return i.sort(ti);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 ii(t){let e=Object.create(null);return i(ei(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];ei(t,i).forEach((t=>{if(!r)n.push([e,r=[]]);if(r.indexOf(t)==-1)r.push(t)}))}))}));let s=e[r.join(",")]=new Ue(r.indexOf(t.length-1)>-1);for(let t=0;t<n.length;t++){let r=n[t][1].sort(ti);s.next.push({type:n[t][0],next:e[r.join(",")]||i(r)})}return s}}function ri(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 ni(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 si(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 li(t,e,i,r){for(let r in e)if(!(r in t))throw new RangeError(`Unsupported attribute ${r} for ${i} of type ${r}`);for(let i in t){let r=t[i];if(r.validate)r.validate(e[i])}}function oi(t,e){let i=Object.create(null);if(e)for(let r in e)i[r]=new hi(t,r,e[r]);return i}class ui{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=oi(t,i.attrs);this.defaultAttrs=ni(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==Ue.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 si(this.attrs,t)}create(t=null,e,i){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new Pe(this,this.computeAttrs(t),we.from(e),De.setFrom(i))}createChecked(t=null,e,i){e=we.from(e);this.checkContent(e);return new Pe(this,this.computeAttrs(t),e,De.setFrom(i))}createAndFill(t=null,e,i){t=this.computeAttrs(t);e=we.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(we.empty,true);if(!n)return null;return new Pe(this,t,e.append(n),De.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)}`)}checkAttrs(t){li(this.attrs,t,"node")}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:De.none}static compile(t,e){let i=Object.create(null);t.forEach(((t,r)=>i[t]=new ui(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}}function fi(t,e,i){let r=i.split("|");return i=>{let n=i===null?"null":typeof i;if(r.indexOf(n)<0)throw new RangeError(`Expected value of type ${r} for attribute ${e} on type ${t}, got ${n}`)}}class hi{constructor(t,e,i){this.hasDefault=Object.prototype.hasOwnProperty.call(i,"default");this.default=i.default;this.validate=typeof i.validate=="string"?fi(t,e,i.validate):i.validate}get isRequired(){return!this.hasDefault}}class ai{constructor(t,e,i,r){this.name=t;this.rank=e;this.schema=i;this.spec=r;this.attrs=oi(t,r.attrs);this.excluded=null;let n=ni(this.attrs);this.instance=n?new De(this,n):null}create(t=null){if(!t&&this.instance)return this.instance;return new De(this,si(this.attrs,t))}static compile(t,e){let i=Object.create(null),r=0;t.forEach(((t,n)=>i[t]=new ai(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]}checkAttrs(t){li(this.attrs,t,"mark")}excludes(t){return this.excluded.indexOf(t)>-1}}class ci{constructor(t){this.linebreakReplacement=null;this.cached=Object.create(null);let e=this.spec={};for(let i in t)e[i]=t[i];e.nodes=de.from(t.nodes),e.marks=de.from(t.marks||{}),this.nodes=ui.compile(this.spec.nodes,this);this.marks=ai.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]=Ue.parse(r,this.nodes));e.inlineContent=e.contentMatch.inlineContent;if(e.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!e.isInline||!e.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=e}e.markSet=n=="_"?null:n?di(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==""?[]:di(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 ui))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 Je(i,i.defaultAttrs,t,De.setFrom(e))}mark(t,e){if(typeof t=="string")t=this.marks[t];return t.create(e)}nodeFromJSON(t){return Pe.fromJSON(this,t)}markFromJSON(t){return De.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function di(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}function pi(t){return t.tag!=null}function mi(t){return t.style!=null}class wi{constructor(t,e){this.schema=t;this.rules=e;this.tags=[];this.styles=[];let i=this.matchedStyles=[];e.forEach((t=>{if(pi(t)){this.tags.push(t)}else if(mi(t)){let e=/[^=]*/.exec(t.style)[0];if(i.indexOf(e)<0)i.push(e);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 xi(this,e,false);i.addAll(t,De.none,e.from,e.to);return i.finish()}parseSlice(t,e={}){let i=new xi(this,e,true);i.addAll(t,De.none,e.from,e.to);return ye.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(Ai(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=Ci(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=Ci(t));if(!(t.node||t.ignore||t.mark))t.node=e}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new wi(t,wi.schemaRules(t)))}}const gi={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 bi={head:true,noscript:true,object:true,script:true,style:true,title:true};const ki={ol:true,ul:true};const Di=1,vi=2,yi=4;function Fi(t,e,i){if(e!=null)return(e?Di:0)|(e==="full"?vi:0);return t&&t.whitespace=="pre"?Di|vi:i&~yi}class Ei{constructor(t,e,i,r,n,s){this.type=t;this.attrs=e;this.marks=i;this.solid=r;this.options=s;this.content=[];this.activeMarks=De.none;this.match=n||(s&yi?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(we.from(t));if(e){this.match=this.type.contentMatch.matchFragment(e)}else{let e=this.type.contentMatch,i;if(i=e.findWrapping(t.type)){this.match=e;return i}else{return null}}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&Di)){let t=this.content[this.content.length-1],e;if(t&&t.isText&&(e=/[ \t\r\n\u000c]+$/.exec(t.text))){let i=t;if(t.text.length==e[0].length)this.content.pop();else this.content[this.content.length-1]=i.withText(i.text.slice(0,i.text.length-e[0].length))}}let e=we.from(this.content);if(!t&&this.match)e=e.append(this.match.fillBefore(we.empty,true));return this.type?this.type.create(this.attrs,e,this.marks):e}inlineContext(t){if(this.type)return this.type.inlineContent;if(this.content.length)return this.content[0].isInline;return t.parentNode&&!gi.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class xi{constructor(t,e,i){this.parser=t;this.options=e;this.isOpen=i;this.open=0;let r=e.topNode,n;let s=Fi(null,e.preserveWhitespace,0)|(i?yi:0);if(r)n=new Ei(r.type,r.attrs,De.none,true,e.topMatch||r.type.contentMatch,s);else if(i)n=new Ei(null,null,De.none,true,null,s);else n=new Ei(t.schema.topNodeType,null,De.none,true,null,s);this.nodes=[n];this.find=e.findPositions;this.needsBlock=false}get top(){return this.nodes[this.open]}addDOM(t,e){if(t.nodeType==3)this.addTextNode(t,e);else if(t.nodeType==1)this.addElement(t,e)}addTextNode(t,e){let i=t.nodeValue;let r=this.top;if(r.options&vi||r.inlineContext(t)||/[^ \t\r\n\u000c]/.test(i)){if(!(r.options&Di)){i=i.replace(/[ \t\r\n\u000c]+/g," ");if(/^[ \t\r\n\u000c]/.test(i)&&this.open==this.nodes.length-1){let e=r.content[r.content.length-1];let n=t.previousSibling;if(!e||n&&n.nodeName=="BR"||e.isText&&/[ \t\r\n\u000c]$/.test(e.text))i=i.slice(1)}}else if(!(r.options&vi)){i=i.replace(/\r?\n|\r/g," ")}else{i=i.replace(/\r\n?/g,"\n")}if(i)this.insertNode(this.parser.schema.text(i),e);this.findInText(t)}else{this.findInside(t)}}addElement(t,e,i){let r=t.nodeName.toLowerCase(),n;if(ki.hasOwnProperty(r)&&this.parser.normalizeLists)Mi(t);let s=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(n=this.parser.matchTag(t,this,i));if(s?s.ignore:bi.hasOwnProperty(r)){this.findInside(t);this.ignoreFallback(t,e)}else if(!s||s.skip||s.closeParent){if(s&&s.closeParent)this.open=Math.max(0,this.open-1);else if(s&&s.skip.nodeType)t=s.skip;let i,n=this.top,l=this.needsBlock;if(gi.hasOwnProperty(r)){if(n.content.length&&n.content[0].isInline&&this.open){this.open--;n=this.top}i=true;if(!n.type)this.needsBlock=true}else if(!t.firstChild){this.leafFallback(t,e);return}let o=s&&s.skip?e:this.readStyles(t,e);if(o)this.addAll(t,o);if(i)this.sync(n);this.needsBlock=l}else{let i=this.readStyles(t,e);if(i)this.addElementByRule(t,s,i,s.consuming===false?n:undefined)}}leafFallback(t,e){if(t.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent)this.addTextNode(t.ownerDocument.createTextNode("\n"),e)}ignoreFallback(t,e){if(t.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent))this.findPlace(this.parser.schema.text("-"),e)}readStyles(t,e){let i=t.style;if(i&&i.length)for(let t=0;t<this.parser.matchedStyles.length;t++){let r=this.parser.matchedStyles[t],n=i.getPropertyValue(r);if(n)for(let t=undefined;;){let i=this.parser.matchStyle(r,n,this,t);if(!i)break;if(i.ignore)return null;if(i.clearMark)e=e.filter((t=>!i.clearMark(t)));else e=e.concat(this.parser.schema.marks[i.mark].create(i.attrs));if(i.consuming===false)t=i;else break}}return e}addElementByRule(t,e,i,r){let n,s;if(e.node){s=this.parser.schema.nodes[e.node];if(!s.isLeaf){let t=this.enter(s,e.attrs||null,i,e.preserveWhitespace);if(t){n=true;i=t}}else if(!this.insertNode(s.create(e.attrs),i)){this.leafFallback(t,i)}}else{let t=this.parser.schema.marks[e.mark];i=i.concat(t.create(e.attrs))}let l=this.top;if(s&&s.isLeaf){this.findInside(t)}else if(r){this.addElement(t,i,r)}else if(e.getContent){this.findInside(t);e.getContent(t,this.parser.schema).forEach((t=>this.insertNode(t,i)))}else{let r=t;if(typeof e.contentElement=="string")r=t.querySelector(e.contentElement);else if(typeof e.contentElement=="function")r=e.contentElement(t);else if(e.contentElement)r=e.contentElement;this.findAround(t,r,true);this.addAll(r,i)}if(n&&this.sync(l))this.open--}addAll(t,e,i,r){let n=i||0;for(let s=i?t.childNodes[i]:t.firstChild,l=r==null?null:t.childNodes[r];s!=l;s=s.nextSibling,++n){this.findAtPoint(t,n);this.addDOM(s,e)}this.findAtPoint(t,n)}findPlace(t,e){let i,r;for(let e=this.open;e>=0;e--){let n=this.nodes[e];let s=n.findWrapping(t);if(s&&(!i||i.length>s.length)){i=s;r=n;if(!s.length)break}if(n.solid)break}if(!i)return null;this.sync(r);for(let t=0;t<i.length;t++)e=this.enterInner(i[t],null,e,false);return e}insertNode(t,e){if(t.isInline&&this.needsBlock&&!this.top.type){let t=this.textblockFromContext();if(t)e=this.enterInner(t,null,e)}let i=this.findPlace(t,e);if(i){this.closeExtra();let e=this.top;if(e.match)e.match=e.match.matchType(t.type);let r=De.none;for(let n of i.concat(t.marks))if(e.type?e.type.allowsMarkType(n.type):Si(n.type,t.type))r=n.addToSet(r);e.content.push(t.mark(r));return true}return false}enter(t,e,i,r){let n=this.findPlace(t.create(e),i);if(n)n=this.enterInner(t,e,i,true,r);return n}enterInner(t,e,i,r=false,n){this.closeExtra();let s=this.top;s.match=s.match&&s.match.matchType(t);let l=Fi(t,n,s.options);if(s.options&yi&&s.content.length==0)l|=yi;let o=De.none;i=i.filter((e=>{if(s.type?s.type.allowsMarkType(e.type):Si(e.type,t)){o=e.addToSet(o);return false}return true}));this.nodes.push(new Ei(t,e,o,r,null,l));this.open++;return i}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}}}function Mi(t){for(let e=t.firstChild,i=null;e;e=e.nextSibling){let t=e.nodeType==1?e.nodeName.toLowerCase():null;if(t&&ki.hasOwnProperty(t)&&i){i.appendChild(e);e=i}else if(t=="li"){i=e}else if(t){i=null}}}function Ai(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function Ci(t){let e={};for(let i in t)e[i]=t[i];return e}function Si(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}}class Oi{constructor(t,e){this.nodes=t;this.marks=e}serializeFragment(t,e={},i){if(!i)i=_i(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}=qi(_i(e),this.nodes[t.type.name](t),null,t.attrs);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&&qi(_i(i),r(t,e),null,t.attrs)}static renderSpec(t,e,i=null,r){return qi(t,e,i,r)}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new Oi(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=$i(t.nodes);if(!e.text)e.text=t=>t.text;return e}static marksFromSchema(t){return $i(t.marks)}}function $i(t){let e={};for(let i in t){let r=t[i].spec.toDOM;if(r)e[i]=r}return e}function _i(t){return t.document||window.document}const Bi=new WeakMap;function ji(t){let e=Bi.get(t);if(e===undefined)Bi.set(t,e=Ri(t));return e}function Ri(t){let e=null;function i(t){if(t&&typeof t=="object"){if(Array.isArray(t)){if(typeof t[0]=="string"){if(!e)e=[];e.push(t)}else{for(let e=0;e<t.length;e++)i(t[e])}}else{for(let e in t)i(t[e])}}}i(t);return e}function qi(t,e,i,r){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 n=e[0],s;if(typeof n!="string")throw new RangeError("Invalid array passed to renderSpec");if(r&&(s=ji(r))&&s.indexOf(e)>-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let l=n.indexOf(" ");if(l>0){i=n.slice(0,l);n=n.slice(l+1)}let o;let u=i?t.createElementNS(i,n):t.createElement(n);let f=e[1],h=1;if(f&&typeof f=="object"&&f.nodeType==null&&!Array.isArray(f)){h=2;for(let t in f)if(f[t]!=null){let e=t.indexOf(" ");if(e>0)u.setAttributeNS(t.slice(0,e),t.slice(e+1),f[t]);else u.setAttribute(t,f[t])}}for(let n=h;n<e.length;n++){let s=e[n];if(s===0){if(n<e.length-1||n>h)throw new RangeError("Content hole must be the only child of its parent node");return{dom:u,contentDOM:u}}else{let{dom:e,contentDOM:n}=qi(t,s,i,r);u.appendChild(e);if(n){if(o)throw new RangeError("Multiple content holes");o=n}}}return{dom:u,contentDOM:o}}const Ni=65535;const Ti=Math.pow(2,16);function zi(t,e){return t+e*Ti}function Ii(t){return t&Ni}function Pi(t){return(t-(t&Ni))/Ti}const Ji=1,Li=2,Ui=4,Wi=8;class Hi{constructor(t,e,i){this.pos=t;this.delInfo=e;this.recover=i}get deleted(){return(this.delInfo&Wi)>0}get deletedBefore(){return(this.delInfo&(Ji|Ui))>0}get deletedAfter(){return(this.delInfo&(Li|Ui))>0}get deletedAcross(){return(this.delInfo&Ui)>0}}class Zi{constructor(t,e=false){this.ranges=t;this.inverted=e;if(!t.length&&Zi.empty)return Zi.empty}recover(t){let e=0,i=Ii(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+Pi(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:zi(l/3,t-o);let c=t==o?Li:t==h?Ji:Ui;if(e<0?t!=o:t!=h)c|=Wi;return new Hi(s,c,a)}r+=f-u}return i?t+r:new Hi(t+r,0,null)}touches(t,e){let i=0,r=Ii(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 Zi(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?Zi.empty:new Zi(t<0?[0,-t,0]:[0,0,t])}}Zi.empty=new Zi([]);class Ki{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 Ki(this.maps,this.mirror,t,e)}copy(){return new Ki(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 Ki;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 Hi(t,r,null)}}const Vi=Object.create(null);class Gi{getMap(){return Zi.empty}merge(t){return null}static fromJSON(t,e){if(!e||!e.stepType)throw new RangeError("Invalid input for Step.fromJSON");let i=Vi[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 Vi)throw new RangeError("Duplicate use of step JSON ID "+t);Vi[t]=e;e.prototype.jsonID=t;return e}}class Xi{constructor(t,e){this.doc=t;this.failed=e}static ok(t){return new Xi(t,null)}static fail(t){return new Xi(null,t)}static fromReplace(t,e,i,r){try{return Xi.ok(t.replace(e,i,r))}catch(t){if(t instanceof ve)return Xi.fail(t.message);throw t}}}function Yi(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(Yi(s.content,e,s));if(s.isInline)s=e(s,i,n);r.push(s)}return we.fromArray(r)}class Qi extends Gi{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 ye(Yi(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 Xi.fromReplace(t,this.from,this.to,n)}invert(){return new tr(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 Qi(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Qi&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Qi(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 Qi(e.from,e.to,t.markFromJSON(e.mark))}}Gi.jsonID("addMark",Qi);class tr extends Gi{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 ye(Yi(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Xi.fromReplace(t,this.from,this.to,i)}invert(){return new Qi(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 tr(e.pos,i.pos,this.mark)}merge(t){if(t instanceof tr&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new tr(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 tr(e.from,e.to,t.markFromJSON(e.mark))}}Gi.jsonID("removeMark",tr);class er extends Gi{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Xi.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Xi.fromReplace(t,this.pos,this.pos+1,new ye(we.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 er(this.pos,e.marks[i]);return new er(this.pos,this.mark)}}return new ir(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new er(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 er(e.pos,t.markFromJSON(e.mark))}}Gi.jsonID("addNodeMark",er);class ir extends Gi{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Xi.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.removeFromSet(e.marks));return Xi.fromReplace(t,this.pos,this.pos+1,new ye(we.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 er(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new ir(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 ir(e.pos,t.markFromJSON(e.mark))}}Gi.jsonID("removeNodeMark",ir);class rr extends Gi{constructor(t,e,i,r=false){super();this.from=t;this.to=e;this.slice=i;this.structure=r}apply(t){if(this.structure&&sr(t,this.from,this.to))return Xi.fail("Structure replace would overwrite content");return Xi.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new Zi([this.from,this.to-this.from,this.slice.size])}invert(t){return new rr(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 rr(e.pos,Math.max(e.pos,i.pos),this.slice)}merge(t){if(!(t instanceof rr)||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?ye.empty:new ye(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new rr(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?ye.empty:new ye(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new rr(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 rr(e.from,e.to,ye.fromJSON(t,e.slice),!!e.structure)}}Gi.jsonID("replace",rr);class nr extends Gi{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&&(sr(t,this.from,this.gapFrom)||sr(t,this.gapTo,this.to)))return Xi.fail("Structure gap-replace would overwrite content");let e=t.slice(this.gapFrom,this.gapTo);if(e.openStart||e.openEnd)return Xi.fail("Gap is not a flat range");let i=this.slice.insertAt(this.insert,e.content);if(!i)return Xi.fail("Content does not fit in gap");return Xi.fromReplace(t,this.from,this.to,i)}getMap(){return new Zi([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(t){let e=this.gapTo-this.gapFrom;return new nr(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 nr(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 nr(e.from,e.to,e.gapFrom,e.gapTo,ye.fromJSON(t,e.slice),e.insert,!!e.structure)}}Gi.jsonID("replaceAround",nr);function sr(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 lr(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 tr(f,a,h[t]))}}if(o&&o.to==f)o.to=a;else s.push(o=new Qi(f,a,r))}}));n.forEach((e=>t.step(e)));s.forEach((e=>t.step(e)))}function or(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 ai){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 tr(e.from,e.to,e.style))))}function ur(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 rr(l,u,ye.empty))}else{r=f;for(let e=0;e<o.marks.length;e++)if(!i.allowsMarkType(o.marks[e].type))t.step(new tr(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 ye(we.from(i.schema.text(" ",i.allowedMarks(o.marks))),0,0);s.push(new rr(l+t.index,l+t.index+t[0].length,r))}}}l=u}if(!r.validEnd){let e=r.fillBefore(we.empty,true);t.replace(l,l,new ye(e,0,0))}for(let e=s.length-1;e>=0;e--)t.step(s[e])}function fr(t,e,i){return(e==0||t.canReplace(e,t.childCount))&&(i==t.childCount||t.canReplace(0,i))}function hr(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||!fr(r,n,s))break}return null}function ar(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=we.empty,a=0;for(let t=s,e=false;t>i;t--)if(e||r.index(t)>0){e=true;h=we.from(r.node(t).copy(h));a++}else{u--}let c=we.empty,d=0;for(let t=s,e=false;t>i;t--)if(e||n.after(t+1)<n.end(t)){e=true;c=we.from(n.node(t).copy(c));d++}else{f++}t.step(new nr(u,f,l,o,new ye(h.append(c),a,d),h.size-a,true))}function cr(t,e,i=null,r=t){let n=pr(t,e);let s=n&&mr(r,e);if(!s)return null;return n.map(dr).concat({type:e,attrs:i}).concat(s.map(dr))}function dr(t){return{type:t,attrs:null}}function pr(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 mr(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 wr(t,e,i){let r=we.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=we.from(i[t].type.create(i[t].attrs,r))}let n=e.start,s=e.end;t.step(new nr(n,s,n,s,new ye(r,0,0),i.length,true))}function gr(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)&&br(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 nr(o,u,o+1,u-1,new ye(we.from(r.create(n,null,e.marks)),0,0),1,true));return false}}))}function br(t,e,i){let r=t.resolve(e),n=r.index();return r.parent.canReplaceWith(n,n+1,i)}function kr(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 nr(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new ye(we.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 vr(t,e,i=1,r){let n=t.doc.resolve(e),s=we.empty,l=we.empty;for(let t=n.depth,e=n.depth-i,o=i-1;t>e;t--,o--){s=we.from(n.node(t).copy(s));let e=r&&r[o];l=we.from(e?e.type.create(e.attrs,l):n.node(t).copy(l))}t.step(new rr(e,e,new ye(s.append(l),i,i),true))}function yr(t,e){let i=t.resolve(e),r=i.index();return Fr(i.nodeBefore,i.nodeAfter)&&i.parent.canReplace(r,r+1)}function Fr(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function Er(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&&Fr(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 xr(t,e,i){let r=new rr(e-i,e+i,ye.empty,true);t.step(r)}function Mr(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 Ar(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 Cr(t,e,i=e,r=ye.empty){if(e==i&&!r.size)return null;let n=t.resolve(e),s=t.resolve(i);if(Sr(n,s,r))return new rr(e,i,r);return new Or(n,s,r).fit()}function Sr(t,e,i){return!i.openStart&&!i.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),i.content)}class Or{constructor(t,e,i){this.$from=t;this.$to=e;this.unplaced=i;this.frontier=[];this.placed=we.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=we.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 ye(n,s,l);if(t>-1)return new nr(i.pos,t,this.$to.pos,this.$to.end(),o,e);if(o.size||i.pos!=this.$to.pos)return new rr(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=Br(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(we.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=Br(t,e);if(!r.childCount||r.firstChild.isLeaf)return false;this.unplaced=new ye(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=Br(t,e);if(r.childCount<=1&&e>0){let n=t.size-e<=e+r.size;this.unplaced=new ye($r(t,e-1,1),e-1,n?e-1:i)}else{this.unplaced=new ye($r(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(jr(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=_r(this.placed,e,we.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 ye($r(s.content,t,u),s.openStart,s.openEnd):t==0?ye.empty:new ye($r(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||!Rr(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=Rr(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=Rr(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=_r(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=_r(this.placed,this.depth,we.from(t.create(e,i)));this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop();let e=t.match.fillBefore(we.empty,true);if(e.childCount)this.placed=_r(this.placed,this.frontier.length,e)}}function $r(t,e,i){if(e==0)return t.cutByIndex(i,t.childCount);return t.replaceChild(0,t.firstChild.copy($r(t.firstChild.content,e-1,i)))}function _r(t,e,i){if(e==0)return t.append(i);return t.replaceChild(t.childCount-1,t.lastChild.copy(_r(t.lastChild.content,e-1,i)))}function Br(t,e){for(let i=0;i<e;i++)t=t.firstChild.content;return t}function jr(t,e,i){if(e<=0)return t;let r=t.content;if(e>1)r=r.replaceChild(0,jr(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(we.empty,true))}return t.copy(r)}function Rr(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&&!qr(i,s.content,l)?o:null}function qr(t,e,i){for(let r=i;r<e.childCount;r++)if(!t.allowsMarks(e.child(r).marks))return true;return false}function Nr(t){return t.spec.defining||t.spec.definingForContent}function Tr(t,e,i,r){if(!r.size)return t.deleteRange(e,i);let n=t.doc.resolve(e),s=t.doc.resolve(i);if(Sr(n,s,r))return t.step(new rr(e,i,r));let l=Jr(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=Nr(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 ye(zr(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 zr(t,e,i,r,n){if(e<i){let n=t.firstChild;t=t.replaceChild(0,n.copy(zr(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(we.empty,true))}return t}function Ir(t,e,i,r){if(!r.isInline&&e==i&&t.doc.resolve(e).parent.content.size){let n=Mr(t.doc,e,r.type);if(n!=null)e=i=n}t.replaceRange(e,i,new ye(we.from(r),0,0))}function Pr(t,e,i){let r=t.doc.resolve(e),n=t.doc.resolve(i);let s=Jr(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 Jr(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 Lr extends Gi{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 Xi.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 Xi.fromReplace(t,this.pos,this.pos+1,new ye(we.from(r),0,e.isLeaf?0:1))}getMap(){return Zi.empty}invert(t){return new Lr(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 Lr(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 Lr(e.pos,e.attr,e.value)}}Gi.jsonID("attr",Lr);class Ur extends Gi{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 Xi.ok(i)}getMap(){return Zi.empty}invert(t){return new Ur(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 Ur(e.attr,e.value)}}Gi.jsonID("docAttr",Ur);let Wr=class extends Error{};Wr=function t(e){let i=Error.call(this,e);i.__proto__=t.prototype;return i};Wr.prototype=Object.create(Error.prototype);Wr.prototype.constructor=Wr;Wr.prototype.name="TransformError";class Hr{constructor(t){this.doc=t;this.steps=[];this.docs=[];this.mapping=new Ki}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new Wr(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=ye.empty){let r=Cr(this.doc,t,e,i);if(r)this.step(r);return this}replaceWith(t,e,i){return this.replace(t,e,new ye(we.from(i),0,0))}delete(t,e){return this.replace(t,e,ye.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,i){Tr(this,t,e,i);return this}replaceRangeWith(t,e,i){Ir(this,t,e,i);return this}deleteRange(t,e){Pr(this,t,e);return this}lift(t,e){ar(this,t,e);return this}join(t,e=1){xr(this,t,e);return this}wrap(t,e){wr(this,t,e);return this}setBlockType(t,e=t,i,r=null){gr(this,t,e,i,r);return this}setNodeMarkup(t,e,i=null,r){kr(this,t,e,i,r);return this}setNodeAttribute(t,e,i){this.step(new Lr(t,e,i));return this}setDocAttribute(t,e){this.step(new Ur(t,e));return this}addNodeMark(t,e){this.step(new er(t,e));return this}removeNodeMark(t,e){if(!(e instanceof De)){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 ir(t,e));return this}split(t,e=1,i){vr(this,t,e,i);return this}addMark(t,e,i){lr(this,t,e,i);return this}removeMark(t,e,i){or(this,t,e,i);return this}clearIncompatible(t,e,i){ur(this,t,e,i);return this}}const Zr=Object.create(null);class Kr{constructor(t,e,i){this.$anchor=t;this.$head=e;this.ranges=i||[new Vr(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=ye.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?ye.empty:e);if(l==0)ln(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);ln(t,i,e.isInline?-1:1)}}}static findFrom(t,e,i=false){let r=t.parent.inlineContent?new Yr(t):sn(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?sn(t.node(0),t.node(r),t.before(r+1),t.index(r),e,i):sn(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 rn(t.node(0))}static atStart(t){return sn(t,t,0,0,1)||new rn(t)}static atEnd(t){return sn(t,t,t.content.size,t.childCount,-1)||new rn(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let i=Zr[e.type];if(!i)throw new RangeError(`No selection type ${e.type} defined`);return i.fromJSON(t,e)}static jsonID(t,e){if(t in Zr)throw new RangeError("Duplicate use of selection JSON ID "+t);Zr[t]=e;e.prototype.jsonID=t;return e}getBookmark(){return Yr.between(this.$anchor,this.$head).getBookmark()}}Kr.prototype.visible=true;class Vr{constructor(t,e){this.$from=t;this.$to=e}}let Gr=false;function Xr(t){if(!Gr&&!t.parent.inlineContent){Gr=true;console["warn"]("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")")}}class Yr extends Kr{constructor(t,e=t){Xr(t);Xr(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 Kr.near(i);let r=t.resolve(e.map(this.anchor));return new Yr(r.parent.inlineContent?r:i,i)}replace(t,e=ye.empty){super.replace(t,e);if(e==ye.empty){let e=this.$from.marksAcross(this.$to);if(e)t.ensureMarks(e)}}eq(t){return t instanceof Yr&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new Qr(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 Yr(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=Kr.findFrom(e,i,true)||Kr.findFrom(e,-i,true);if(t)e=t.$head;else return Kr.near(e,i)}if(!t.parent.inlineContent){if(r==0){t=e}else{t=(Kr.findFrom(t,-i,true)||Kr.findFrom(t,i,true)).$anchor;if(t.pos<e.pos!=r<0)t=e}}return new Yr(t,e)}}Kr.jsonID("text",Yr);class Qr{constructor(t,e){this.anchor=t;this.head=e}map(t){return new Qr(t.map(this.anchor),t.map(this.head))}resolve(t){return Yr.between(t.resolve(this.anchor),t.resolve(this.head))}}class tn extends Kr{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 Kr.near(n);return new tn(n)}content(){return new ye(we.from(this.node),0,0)}eq(t){return t instanceof tn&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new en(this.anchor)}static fromJSON(t,e){if(typeof e.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new tn(t.resolve(e.anchor))}static create(t,e){return new tn(t.resolve(e))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==false}}tn.prototype.visible=false;Kr.jsonID("node",tn);class en{constructor(t){this.anchor=t}map(t){let{deleted:e,pos:i}=t.mapResult(this.anchor);return e?new Qr(i,i):new en(i)}resolve(t){let e=t.resolve(this.anchor),i=e.nodeAfter;if(i&&tn.isSelectable(i))return new tn(e);return Kr.near(e)}}class rn extends Kr{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,e=ye.empty){if(e==ye.empty){t.delete(0,t.doc.content.size);let e=Kr.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 rn(t)}map(t){return new rn(t)}eq(t){return t instanceof rn}getBookmark(){return nn}}Kr.jsonID("all",rn);const nn={map(){return this},resolve(t){return new rn(t)}};function sn(t,e,i,r,n,s=false){if(e.inlineContent)return Yr.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=sn(t,r,i+n,n<0?r.childCount:0,n,s);if(e)return e}else if(!s&&tn.isSelectable(r)){return tn.create(t,i-(n<0?r.nodeSize:0))}i+=r.nodeSize*n}return null}function ln(t,e,i){let r=t.steps.length-1;if(r<e)return;let n=t.steps[r];if(!(n instanceof rr||n instanceof nr))return;let s=t.mapping.maps[r],l;s.forEach(((t,e,i,r)=>{if(l==null)l=r}));t.setSelection(Kr.near(t.doc.resolve(l),i))}const on=1,un=2,fn=4;class hn extends Hr{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|on)&~un;this.storedMarks=null;return this}get selectionSet(){return(this.updated&on)>0}setStoredMarks(t){this.storedMarks=t;this.updated|=un;return this}ensureMarks(t){if(!De.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&un)>0}addStep(t,e){super.addStep(t,e);this.updated=this.updated&~un;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)||De.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(Kr.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|=fn;return this}get scrolledIntoView(){return(this.updated&fn)>0}}function an(t,e){return!e||!t?t:t.bind(e)}class cn{constructor(t,e,i){this.name=t;this.init=an(e.init,i);this.apply=an(e.apply,i)}}const dn=[new cn("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new cn("selection",{init(t,e){return t.selection||Kr.atStart(e.doc)},apply(t){return t.selection}}),new cn("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,i,r){return r.selection.$cursor?t.storedMarks:null}}),new cn("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class pn{constructor(t,e){this.schema=t;this.plugins=[];this.pluginsByKey=Object.create(null);this.fields=dn.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 cn(t.key,t.spec.state,t))}))}}class mn{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 mn(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 hn(this)}static create(t){let e=new pn(t.doc?t.doc.type.schema:t.schema,t.plugins);let i=new mn(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 pn(this.schema,t.plugins);let i=e.fields,r=new mn(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 pn(t.schema,t.plugins);let n=new mn(r);r.fields.forEach((r=>{if(r.name=="doc"){n.doc=Pe.fromJSON(t.schema,e.doc)}else if(r.name=="selection"){n.selection=Kr.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 wn(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=wn(n,e,{});i[r]=n}return i}class gn{constructor(t){this.spec=t;this.props={};if(t.props)wn(t.props,this,this.props);this.key=t.key?t.key.key:kn("plugin")}getState(t){return t[this.key]}}const bn=Object.create(null);function kn(t){if(t in bn)return t+"$"+ ++bn[t];bn[t]=0;return t+"$"}class Dn{constructor(t="key"){this.key=kn(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const vn=function(t){for(var e=0;;e++){t=t.previousSibling;if(!t)return e}};const yn=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let Fn=null;const En=function(t,e,i){let r=Fn||(Fn=document.createRange());r.setEnd(t,i==null?t.nodeValue.length:i);r.setStart(t,e||0);return r};const xn=function(t,e,i,r){return i&&(An(t,e,i,r,-1)||An(t,e,i,r,1))};const Mn=/^(img|br|input|textarea|hr)$/i;function An(t,e,i,r,n){for(;;){if(t==i&&e==r)return true;if(e==(n<0?0:Cn(t))){let i=t.parentNode;if(!i||i.nodeType!=1||On(t)||Mn.test(t.nodeName)||t.contentEditable=="false")return false;e=vn(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?Cn(t):0}else{return false}}}function Cn(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Sn(t,e,i){for(let r=e==0,n=e==Cn(t);r||n;){if(t==i)return true;let e=vn(t);t=t.parentNode;if(!t)return false;r=r&&e==0;n=n&&e==Cn(t)}}function On(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 $n=function(t){return t.focusNode&&xn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function _n(t,e){let i=document.createEvent("Event");i.initEvent("keydown",true,true);i.keyCode=t;i.key=i.code=e;return i}function Bn(t){let e=t.activeElement;while(e&&e.shadowRoot)e=e.shadowRoot.activeElement;return e}function jn(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 Rn=typeof navigator!="undefined"?navigator:null;const qn=typeof document!="undefined"?document:null;const Nn=Rn&&Rn.userAgent||"";const Tn=/Edge\/(\d+)/.exec(Nn);const zn=/MSIE \d/.exec(Nn);const In=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Nn);const Pn=!!(zn||In||Tn);const Jn=zn?document.documentMode:In?+In[1]:Tn?+Tn[1]:0;const Ln=!Pn&&/gecko\/(\d+)/i.test(Nn);Ln&&+(/Firefox\/(\d+)/.exec(Nn)||[0,0])[1];const Un=!Pn&&/Chrome\/(\d+)/.exec(Nn);const Wn=!!Un;const Hn=Un?+Un[1]:0;const Zn=!Pn&&!!Rn&&/Apple Computer/.test(Rn.vendor);const Kn=Zn&&(/Mobile\/\w+/.test(Nn)||!!Rn&&Rn.maxTouchPoints>2);const Vn=Kn||(Rn?/Mac/.test(Rn.platform):false);const Gn=Rn?/Win/.test(Rn.platform):false;const Xn=/Android \d/.test(Nn);const Yn=!!qn&&"webkitFontSmoothing"in qn.documentElement.style;const Qn=Yn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function ts(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function es(t,e){return typeof t=="number"?t:t[e]}function is(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 rs(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=yn(l)){if(!l)break;if(l.nodeType!=1)continue;let t=l;let i=t==s.body;let o=i?ts(s):is(t);let u=0,f=0;if(e.top<o.top+es(r,"top"))f=-(o.top-e.top+es(n,"top"));else if(e.bottom>o.bottom-es(r,"bottom"))f=e.bottom-e.top>o.bottom-o.top?e.top+es(n,"top")-o.top:e.bottom-o.bottom+es(n,"bottom");if(e.left<o.left+es(r,"left"))u=-(o.left-e.left+es(n,"left"));else if(e.right>o.right-es(r,"right"))u=e.right-o.right+es(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 ns(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:ss(t.dom)}}function ss(t){let e=[],i=t.ownerDocument;for(let r=t;r;r=yn(r)){e.push({dom:r,top:r.scrollTop,left:r.scrollLeft});if(t==i)break}return e}function ls({refDOM:t,refTop:e,stack:i}){let r=t?t.getBoundingClientRect().top:0;us(i,r==0?0:r-e)}function us(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 fs=null;function hs(t){if(t.setActive)return t.setActive();if(fs)return t.focus(fs);let e=ss(t);t.focus(fs==null?{get preventScroll(){fs={preventScroll:true};return true}}:undefined);if(!fs){fs=false;us(e,0)}}function as(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=En(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 cs(i,n);if(!i||r&&i.nodeType==1)return{node:t,offset:s};return as(i,n)}function cs(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(ds(e,i))return{node:t,offset:n+(e.left>=(i.left+i.right)/2?1:0)}}return{node:t,offset:0}}function ds(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function ps(t,e){let i=t.parentNode;if(i&&/^li$/i.test(i.nodeName)&&e.left<t.getBoundingClientRect().left)return i;return t}function ms(t,e,i){let{node:r,offset:n}=as(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 ws(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 gs(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(ds(e,n))return gs(i,e,n)}}if((s=(s+1)%r)==n)break}}return t}function bs(t,e){let i=t.dom.ownerDocument,r,n=0;let s=jn(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(!ds(e,i))return null;l=gs(t.dom,e,i);if(!l)return null}if(Zn){for(let t=l;r&&t;t=yn(t))if(t.draggable)r=undefined}l=ps(l,e);if(r){if(Ln&&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(Yn&&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=ws(t,r,n,e)}if(o==null)o=ms(t,l,e);let u=t.docView.nearestDesc(l,true);return{pos:o,inside:u?u.posAtStart-u.border:-1}}function ks(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(ks(t))return t}return Array.prototype.find.call(i,ks)||t.getBoundingClientRect()}const vs=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function ys(t,e,i){let{node:r,offset:n,atom:s}=t.docView.domFromPos(e,i<0?-1:1);let l=Yn||Ln;if(r.nodeType==3){if(l&&(vs.test(r.nodeValue)||(i<0?!n:n==r.nodeValue.length))){let t=Ds(En(r,n,n),i);if(Ln&&n&&/\s/.test(r.nodeValue[n-1])&&n<r.nodeValue.length){let e=Ds(En(r,n-1,n-1),-1);if(e.top==t.top){let i=Ds(En(r,n,n+1),-1);if(i.top!=t.top)return Fs(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 Fs(Ds(En(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==Cn(r))){let t=r.childNodes[n-1];if(t.nodeType==1)return Es(t.getBoundingClientRect(),false)}if(s==null&&n<Cn(r)){let t=r.childNodes[n];if(t.nodeType==1)return Es(t.getBoundingClientRect(),true)}return Es(r.getBoundingClientRect(),i>=0)}if(s==null&&n&&(i<0||n==Cn(r))){let t=r.childNodes[n-1];let e=t.nodeType==3?En(t,Cn(t)-(l?0:1)):t.nodeType==1&&(t.nodeName!="BR"||!t.nextSibling)?t:null;if(e)return Fs(Ds(e,1),false)}if(s==null&&n<Cn(r)){let t=r.childNodes[n];while(t.pmViewDesc&&t.pmViewDesc.ignoreForCoords)t=t.nextSibling;let e=!t?null:t.nodeType==3?En(t,0,l?0:1):t.nodeType==1?t:null;if(e)return Fs(Ds(e,-1),true)}return Fs(Ds(r.nodeType==3?En(r):r,-i),i>=0)}function Fs(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 Es(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 xs(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 Ms(t,e,i){let r=e.selection;let n=i=="up"?r.$from:r.$to;return xs(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=ys(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=En(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 As=/[\u0590-\u08ac]/;function Cs(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(!As.test(r.parent.textContent)||!o.modify)return i=="left"||i=="backward"?s:l;return xs(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 Ss=null;let Os=null;let $s=false;function _s(t,e,i){if(Ss==e&&Os==i)return $s;Ss=e;Os=i;return $s=i=="up"||i=="down"?Ms(t,e,i):Cs(t,e,i)}const Bs=0,js=1,Rs=2,qs=3;class Ns{constructor(t,e,i,r){this.parent=t;this.children=e;this.dom=i;this.contentDOM=r;this.dirty=Bs;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>vn(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 Us){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 Ts&&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?vn(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?vn(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=vn(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=vn(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((Ln||Zn)&&t==e){let{node:t,offset:e}=l;if(t.nodeType==3){f=!!(e&&t.nodeValue[e-1]=="\n");if(f&&e==t.nodeValue.length){for(let e=t,i;e;e=e.parentNode){if(i=e.nextSibling){if(i.nodeName=="BR")l=o={node:i.parentNode,offset:vn(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(Ln&&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&&Zn)&&xn(l.node,l.offset,u.anchorNode,u.anchorOffset)&&xn(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?Rs:js;if(t==r&&e==l&&(n.contentLost||n.dom.parentNode!=this.contentDOM))n.dirty=qs;else n.markDirty(t-r,e-r);return}else{n.dirty=n.dom==n.contentDOM&&n.dom.parentNode==this.contentDOM&&!n.children.length?Rs:qs}}i=s}this.dirty=Rs}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let i=t==1?Rs:js;if(e.dirty<i)e.dirty=i}}get domAtom(){return false}get ignoreForCoords(){return false}}class Ts extends Ns{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==Bs&&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 zs extends Ns{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 Is extends Ns{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=Oi.renderSpec(document,e.type.spec.toDOM(e,i));return new Is(t,e,s.dom,s.contentDOM||s.dom)}parseRule(){if(this.dirty&qs||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!=qs&&this.mark.eq(t)}markDirty(t,e){super.markDirty(t,e);if(this.dirty!=Bs){let t=this.parent;while(!t.node)t=t.parent;if(t.dirty<this.dirty)t.dirty=this.dirty;this.dirty=Bs}}slice(t,e,i){let r=Is.create(this.parent,this.mark,true,i);let n=this.children,s=this.size;if(e<s)n=ul(n,e,s,i);if(t>0)n=ul(n,0,t,i);for(let t=0;t<n.length;t++)n[t].parent=r;r.children=n;return r}}class Ps extends Ns{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}=Oi.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=Ys(f,i,e);if(u)return o=new Ws(t,e,i,r,f,h||null,a,u,n,s+1);else if(e.isText)return new Ls(t,e,i,r,f,a,n);else return new Ps(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=()=>we.empty}return t}matchesNode(t,e,i){return this.dirty==Bs&&t.eq(this.node)&&Qs(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 el(this,s&&s.node,t);nl(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?De.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==Rs){if(s)this.protectLocalComposition(t,s);Hs(this.contentDOM,this.children,t);if(Kn)sl(this.dom)}}localCompositionInfo(t,e){let{from:i,to:r}=t.state.selection;if(!(t.state.selection instanceof Yr)||i<e||r>e+this.node.content.size)return null;let n=t.domSelectionRange();let s=ll(n.focusNode,n.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let t=s.nodeValue;let n=ol(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 zs(this,n,e,r);t.input.compositionNodes.push(s);this.children=ul(this.children,i,i+r.length,t,s)}update(t,e,i,r){if(this.dirty==qs||!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=Bs}updateOuterDeco(t){if(Qs(t,this.outerDeco))return;let e=this.nodeDOM.nodeType!=1;let i=this.dom;this.dom=Gs(this.dom,this.nodeDOM,Vs(this.outerDeco,this.node,e),Vs(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 Js(t,e,i,r,n){Ys(r,e,t);let s=new Ps(undefined,t,e,i,r,r,r,n,0);if(s.contentDOM)s.updateChildren(n,0);return s}class Ls extends Ps{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==qs||this.dirty!=Bs&&!this.inParent()||!t.sameMarkup(this.node))return false;this.updateOuterDeco(e);if((this.dirty!=Bs||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=Bs;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 Ls(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=qs}get domAtom(){return false}}class Us extends Ns{parseRule(){return{ignore:true}}matchesHack(t){return this.dirty==Bs&&this.dom.nodeName==t}get domAtom(){return true}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Ws extends Ps{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==qs)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 Hs(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=tl(r);n=true}r=r.nextSibling}else{n=true;t.insertBefore(o,r)}if(l instanceof Is){let e=r?r.previousSibling:t.lastChild;Hs(l.contentDOM,l.children,i);r=e?e.nextSibling:t.firstChild}}while(r){r=tl(r);n=true}if(n&&i.trackWrites==t)i.trackWrites=null}const Zs=function(t){if(t)this.nodeName=t};Zs.prototype=Object.create(null);const Ks=[new Zs];function Vs(t,e,i){if(t.length==0)return Ks;let r=i?Ks[0]:new Zs,n=[r];for(let s=0;s<t.length;s++){let l=t[s].type.attrs;if(!l)continue;if(l.nodeName)n.push(r=new Zs(l.nodeName));for(let t in l){let s=l[t];if(s==null)continue;if(i&&n.length==1)n.push(r=new Zs(e.isInline?"span":"div"));if(t=="class")r.class=(r.class?r.class+" ":"")+s;else if(t=="style")r.style=(r.style?r.style+";":"")+s;else if(t!="nodeName")r[t]=s}}return n}function Gs(t,e,i,r){if(i==Ks&&r==Ks)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=Ks[0];n=e}}Xs(n,l||Ks[0],s)}return n}function Xs(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 Ys(t,e,i){return Gs(t,t,Ks,Vs(e,i,t.nodeType!=1))}function Qs(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 tl(t){let e=t.nextSibling;t.parentNode.removeChild(t);return e}class el{constructor(t,e,i){this.lock=e;this.view=i;this.index=0;this.stack=[];this.changed=false;this.top=t;this.preMatch=il(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=Bs;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=Is.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==qs&&s.dom==s.contentDOM)s.dirty=Rs;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 Ps){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!=qs&&Qs(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=Rs;h.updateChildren(r,s+1);h.dirty=Bs}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=Ps.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=Ps.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 Ts(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 Is){e=t;t=e.children[e.children.length-1]}if(!t||!(t instanceof Ls)||/\n$/.test(t.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(t.node.text)){if((Zn||Wn)&&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 Us(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 il(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 Is){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 rl(t,e){return t.type.side-e.type.side}function nl(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(rl);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 sl(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 ll(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=Cn(t)}else if(t.nodeType==1&&e<t.childNodes.length){t=t.childNodes[e];e=0}else{return null}}}function ol(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 ul(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 fl(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($n(i)){u=o;while(n&&!n.node)n=n.parent;let t=n.node;if(n&&t.isAtom&&tn.isSelectable(t)&&n.parent&&!(t.isInline&&Sn(i.focusNode,i.focusOffset,n.dom))){let t=n.posBefore;f=new tn(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 hl(t){return t.editable?t.hasFocus():yl(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function al(t,e=false){let i=t.state.selection;bl(t,i);if(!hl(t))return;if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&Wn){let e=t.domSelectionRange(),i=t.domObserver.currentSelection;if(e.anchorNode&&i.anchorNode&&xn(e.anchorNode,e.anchorOffset,i.anchorNode,i.anchorOffset)){t.input.mouseDown.delayedSelectionSync=true;t.domObserver.setCurSelection();return}}t.domObserver.disconnectSelection();if(t.cursorWrapper){gl(t)}else{let{anchor:r,head:n}=i,s,l;if(cl&&!(i instanceof Yr)){if(!i.$from.parent.inlineContent)s=dl(t,i.from);if(!i.empty&&!i.$from.parent.inlineContent)l=dl(t,i.to)}t.docView.setSelection(r,n,t.root,e);if(cl){if(s)ml(s);if(l)ml(l)}if(i.visible){t.dom.classList.remove("ProseMirror-hideselection")}else{t.dom.classList.add("ProseMirror-hideselection");if("onselectionchange"in document)wl(t)}}t.domObserver.setCurSelection();t.domObserver.connectSelection()}const cl=Zn||Wn&&Hn<63;function dl(t,e){let{node:i,offset:r}=t.docView.domFromPos(e,0);let n=r<i.childNodes.length?i.childNodes[r]:null;let s=r?i.childNodes[r-1]:null;if(Zn&&n&&n.contentEditable=="false")return pl(n);if((!n||n.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(n)return pl(n);else if(s)return pl(s)}}function pl(t){t.contentEditable="true";if(Zn&&t.draggable){t.draggable=false;t.wasDraggable=true}return t}function ml(t){t.contentEditable="false";if(t.wasDraggable){t.draggable=true;t.wasDraggable=null}}function wl(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(!hl(t)||t.state.selection.visible)t.dom.classList.remove("ProseMirror-hideselection")}),20)}})}function gl(t){let e=t.domSelection(),i=document.createRange();let r=t.cursorWrapper.dom,n=r.nodeName=="IMG";if(n)i.setEnd(r.parentNode,vn(r)+1);else i.setEnd(r,0);i.collapse(false);e.removeAllRanges();e.addRange(i);if(!n&&!t.state.selection.visible&&Pn&&Jn<=11){r.disabled=true;r.disabled=false}}function bl(t,e){if(e instanceof tn){let i=t.docView.descAt(e.from);if(i!=t.lastSelectedViewDesc){kl(t);if(i)i.selectNode();t.lastSelectedViewDesc=i}}else{kl(t)}}function kl(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)))||Yr.between(e,i,r)}function vl(t){if(t.editable&&!t.hasFocus())return false;return yl(t)}function yl(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 Fl(t){let e=t.docView.domFromPos(t.state.selection.anchor,0);let i=t.domSelectionRange();return xn(e.node,e.offset,i.anchorNode,i.anchorOffset)}function El(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&&Kr.findFrom(s,e)}function xl(t,e){t.dispatch(t.state.tr.setSelection(e).scrollIntoView());return true}function Ml(t,e,i){let r=t.state.selection;if(r instanceof Yr){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 xl(t,new Yr(r.$anchor,s))}else if(!r.empty){return false}else if(t.endOfTextblock(e>0?"forward":"backward")){let i=El(t.state,e);if(i&&i instanceof tn)return xl(t,i);return false}else if(!(Vn&&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(tn.isSelectable(n)){return xl(t,new tn(e<0?t.state.doc.resolve(i.pos-n.nodeSize):i))}else if(Yn){return xl(t,new Yr(t.state.doc.resolve(e<0?l:l+n.nodeSize)))}else{return false}}}else if(r instanceof tn&&r.node.isInline){return xl(t,new Yr(e>0?r.$to:r.$from))}else{let i=El(t.state,e);if(i)return xl(t,i);return false}}function Al(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Cl(t,e){let i=t.pmViewDesc;return i&&i.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function Sl(t,e){return e<0?Ol(t):$l(t)}function Ol(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n,s,l=false;if(Ln&&i.nodeType==1&&r<Al(i)&&Cl(i.childNodes[r],-1))l=true;for(;;){if(r>0){if(i.nodeType!=1){break}else{let t=i.childNodes[r-1];if(Cl(t,-1)){n=i;s=--r}else if(t.nodeType==3){i=t;r=i.nodeValue.length}else break}}else if(_l(i)){break}else{let e=i.previousSibling;while(e&&Cl(e,-1)){n=i.parentNode;s=vn(e);e=e.previousSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=0}else{i=e;r=Al(i)}}}if(l)Rl(t,i,r);else if(n)Rl(t,n,s)}function $l(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n=Al(i);let s,l;for(;;){if(r<n){if(i.nodeType!=1)break;let t=i.childNodes[r];if(Cl(t,1)){s=i;l=++r}else break}else if(_l(i)){break}else{let e=i.nextSibling;while(e&&Cl(e,1)){s=e.parentNode;l=vn(e)+1;e=e.nextSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=n=0}else{i=e;r=0;n=Al(i)}}}if(s)Rl(t,s,l)}function _l(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Bl(t,e){while(t&&e==t.childNodes.length&&!On(t)){e=vn(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 jl(t,e){while(t&&!e&&!On(t)){e=vn(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 Rl(t,e,i){if(e.nodeType!=3){let t,r;if(r=Bl(e,i)){e=r;i=0}else if(t=jl(e,i)){e=t;i=t.nodeValue.length}}let r=t.domSelection();if($n(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)al(t)}),50)}function ql(t,e){let i=t.state.doc.resolve(e);if(!(Wn||Gn)&&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 Nl(t,e,i){let r=t.state.selection;if(r instanceof Yr&&!r.empty||i.indexOf("s")>-1)return false;if(Vn&&i.indexOf("m")>-1)return false;let{$from:n,$to:s}=r;if(!n.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let i=El(t.state,e);if(i&&i instanceof tn)return xl(t,i)}if(!n.parent.inlineContent){let i=e<0?n:s;let l=r instanceof rn?Kr.near(i,e):Kr.findFrom(i,e);return l?xl(t,l):false}return false}function Tl(t,e){if(!(t.state.selection instanceof Yr))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 zl(t,e,i){t.domObserver.stop();e.contentEditable=i;t.domObserver.start()}function Il(t){if(!Zn||t.state.selection.$head.parentOffset>0)return false;let{focusNode:e,focusOffset:i}=t.domSelectionRange();if(e&&e.nodeType==1&&i==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let i=e.firstChild;zl(t,i,"true");setTimeout((()=>zl(t,i,"false")),20)}return false}function Pl(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 Jl(t,e){let i=e.keyCode,r=Pl(e);if(i==8||Vn&&i==72&&r=="c"){return Tl(t,-1)||Sl(t,-1)}else if(i==46&&!e.shiftKey||Vn&&i==68&&r=="c"){return Tl(t,1)||Sl(t,1)}else if(i==13||i==27){return true}else if(i==37||Vn&&i==66&&r=="c"){let e=i==37?ql(t,t.state.selection.from)=="ltr"?-1:1:-1;return Ml(t,e,r)||Sl(t,e)}else if(i==39||Vn&&i==70&&r=="c"){let e=i==39?ql(t,t.state.selection.from)=="ltr"?1:-1:1;return Ml(t,e,r)||Sl(t,e)}else if(i==38||Vn&&i==80&&r=="c"){return Nl(t,-1,r)||Sl(t,-1)}else if(i==40||Vn&&i==78&&r=="c"){return Il(t)||Nl(t,1,r)||Sl(t,1)}else if(r==(Vn?"m":"c")&&(i==66||i==73||i==89||i==90)){return true}return false}function Ll(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")||Oi.fromSchema(t.state.schema);let o=to(),u=o.createElement("div");u.appendChild(l.serializeFragment(r,{document:o}));let f=u.firstChild,h,a=0;while(f&&f.nodeType==1&&(h=Yl[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 Ul(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 ye(we.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):ye.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=Oi.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=eo(i);if(Yn)io(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")||wi.fromSchema(t.state.schema);o=e.parseSlice(l,{preserveWhitespace:!!(u||h),context:n,ruleFromNode(t){if(t.nodeName=="BR"&&!t.nextSibling&&t.parentNode&&!Wl.test(t.parentNode.nodeName))return{ignore:true};return null}})}if(h){o=ro(Xl(o,+h[1],+h[2]),h[4])}else{o=ye.maxOpen(Hl(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=Xl(o,t,e)}}t.someProp("transformPasted",(e=>{o=e(o,t)}));return o}const Wl=/^(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 Hl(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&&Kl(e,s,t,l[l.length-1],0)){l[l.length-1]=i}else{if(l.length)l[l.length-1]=Vl(l[l.length-1],s.length);let i=Zl(t,e);l.push(i);n=n.matchType(i.type);s=e}}));if(l)return we.from(l)}return t}function Zl(t,e,i=0){for(let r=e.length-1;r>=i;r--)t=e[r].create(null,we.from(t));return t}function Kl(t,e,i,r,n){if(n<t.length&&n<e.length&&t[n]==e[n]){let s=Kl(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(we.from(Zl(i,t,n+1))))}}function Vl(t,e){if(e==0)return t;let i=t.content.replaceChild(t.childCount-1,Vl(t.lastChild,e-1));let r=t.contentMatchAt(t.childCount).fillBefore(we.empty,true);return t.copy(i.append(r))}function Gl(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=Gl(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(we.empty,true));return t.replaceChild(e<0?0:t.childCount-1,l.copy(o))}function Xl(t,e,i){if(e<t.openStart)t=new ye(Gl(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd);if(i<t.openEnd)t=new ye(Gl(t.content,1,i,t.openEnd,0,0),t.openStart,i);return t}const Yl={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 Ql=null;function to(){return Ql||(Ql=document.implementation.createHTMLDocument("title"))}function eo(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);if(e)t=t.slice(e[0].length);let i=to().createElement("div");let r=/<([a-z][^>\s]+)/i.exec(t),n;if(n=r&&Yl[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 io(t){let e=t.querySelectorAll(Wn?"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 ro(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=we.from(e.create(r[t+1],n));s++;l++}return new ye(n,s,l)}const no={};const so={};const lo={touchstart:true,touchmove:true};class oo{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 uo(t){for(let e in no){let i=no[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{if(po(t,e)&&!co(t,e)&&(t.editable||!(e.type in so)))i(t,e)},lo[e]?{passive:true}:undefined)}if(Zn)t.dom.addEventListener("input",(()=>null));ao(t)}function fo(t,e){t.input.lastSelectionOrigin=e;t.input.lastSelectionTime=Date.now()}function ho(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 ao(t){t.someProp("handleDOMEvents",(e=>{for(let i in e)if(!t.input.eventHandlers[i])t.dom.addEventListener(i,t.input.eventHandlers[i]=e=>co(t,e))}))}function co(t,e){return t.someProp("handleDOMEvents",(i=>{let r=i[e.type];return r?r(t,e)||e.defaultPrevented:false}))}function po(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 mo(t,e){if(!co(t,e)&&no[e.type]&&(t.editable||!(e.type in so)))no[e.type](t,e)}so.keydown=(t,e)=>{let i=e;t.input.shiftKey=i.keyCode==16||i.shiftKey;if(So(t,i))return;t.input.lastKeyCode=i.keyCode;t.input.lastKeyCodeTime=Date.now();if(Xn&&Wn&&i.keyCode==13)return;if(i.keyCode!=229)t.domObserver.forceFlush();if(Kn&&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,_n(13,"Enter"))));t.input.lastIOSEnter=0}}),200)}else if(t.someProp("handleKeyDown",(e=>e(t,i)))||Jl(t,i)){i.preventDefault()}else{fo(t,"key")}};so.keyup=(t,e)=>{if(e.keyCode==16)t.input.shiftKey=false};so.keypress=(t,e)=>{let i=e;if(So(t,i)||!i.charCode||i.ctrlKey&&!i.altKey||Vn&&i.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,i)))){i.preventDefault();return}let r=t.state.selection;if(!(r instanceof Yr)||!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 wo(t){return{left:t.clientX,top:t.clientY}}function go(t,e){let i=e.x-t.clientX,r=e.y-t.clientY;return i*i+r*r<100}function bo(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 ko(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 Do(t,e){if(e==-1)return false;let i=t.state.doc.resolve(e),r=i.nodeAfter;if(r&&r.isAtom&&tn.isSelectable(r)){ko(t,new tn(i),"pointer");return true}return false}function vo(t,e){if(e==-1)return false;let i=t.state.selection,r,n;if(i instanceof tn)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(tn.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){ko(t,tn.create(t.state.doc,n),"pointer");return true}else{return false}}function yo(t,e,i,r,n){return bo(t,"handleClickOn",e,i,r)||t.someProp("handleClick",(i=>i(t,e,r)))||(n?vo(t,i):Do(t,i))}function Fo(t,e,i,r){return bo(t,"handleDoubleClickOn",e,i,r)||t.someProp("handleDoubleClick",(i=>i(t,e,r)))}function Eo(t,e,i,r){return bo(t,"handleTripleClickOn",e,i,r)||t.someProp("handleTripleClick",(i=>i(t,e,r)))||xo(t,i,r)}function xo(t,e,i){if(i.button!=0)return false;let r=t.state.doc;if(e==-1){if(r.inlineContent){ko(t,Yr.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)ko(t,Yr.create(r,s+1,s+1+i.content.size),"pointer");else if(tn.isSelectable(i))ko(t,tn.create(r,s),"pointer");else continue;return true}}function Mo(t){return jo(t)}const Ao=Vn?"metaKey":"ctrlKey";no.mousedown=(t,e)=>{let i=e;t.input.shiftKey=i.shiftKey;let r=Mo(t);let n=Date.now(),s="singleClick";if(n-t.input.lastClick.time<500&&go(i,t.input.lastClick)&&!i[Ao]){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(wo(i));if(!l)return;if(s=="singleClick"){if(t.input.mouseDown)t.input.mouseDown.done();t.input.mouseDown=new Co(t,l,i,!!r)}else if((s=="doubleClick"?Fo:Eo)(t,l.pos,l.inside,i)){i.preventDefault()}else{fo(t,"pointer")}};class Co{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[Ao];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 tn&&u.from<=s&&u.to>s)this.mightDrag={node:n,pos:s,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&Ln&&!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));fo(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((()=>al(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(wo(t));this.updateAllowDefault(t);if(this.allowDefault||!e){fo(this.view,"pointer")}else if(yo(this.view,e.pos,e.inside,t,this.selectNode)){t.preventDefault()}else if(t.button==0&&(this.flushed||Zn&&this.mightDrag&&!this.mightDrag.node.isAtom||Wn&&!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)){ko(this.view,Kr.near(this.view.state.doc.resolve(e.pos)),"pointer");t.preventDefault()}else{fo(this.view,"pointer")}}move(t){this.updateAllowDefault(t);fo(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}}no.touchstart=t=>{t.input.lastTouch=Date.now();Mo(t);fo(t,"pointer")};no.touchmove=t=>{t.input.lastTouch=Date.now();fo(t,"pointer")};no.contextmenu=t=>Mo(t);function So(t,e){if(t.composing)return true;if(Zn&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500){t.input.compositionEndedAt=-2e8;return true}return false}const Oo=Xn?5e3:-1;so.compositionstart=so.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();jo(t,true);t.markCursor=null}else{jo(t);if(Ln&&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}$o(t,Oo)};so.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++;$o(t,20)}};function $o(t,e){clearTimeout(t.input.composingTimeout);if(e>-1)t.input.composingTimeout=setTimeout((()=>jo(t)),e)}function _o(t){if(t.composing){t.input.composing=false;t.input.compositionEndedAt=Bo()}while(t.input.compositionNodes.length>0)t.input.compositionNodes.pop().markParentsDirty()}function Bo(){let t=document.createEvent("Event");t.initEvent("event",true,true);return t.timeStamp}function jo(t,e=false){if(Xn&&t.domObserver.flushingSoon>=0)return;t.domObserver.forceFlush();_o(t);if(e||t.docView&&t.docView.dirty){let e=fl(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 Ro(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 qo=Pn&&Jn<15||Kn&&Qn<604;no.copy=so.cut=(t,e)=>{let i=e;let r=t.state.selection,n=i.type=="cut";if(r.empty)return;let s=qo?null:i.clipboardData;let l=r.content(),{dom:o,text:u}=Ll(t,l);if(s){i.preventDefault();s.clearData();s.setData("text/html",o.innerHTML);s.setData("text/plain",u)}else{Ro(t,o)}if(n)t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function No(t){return t.openStart==0&&t.openEnd==0&&t.content.childCount==1?t.content.firstChild:null}function To(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)zo(t,r.value,null,n,e);else zo(t,r.textContent,r.innerHTML,n,e)}),50)}function zo(t,e,i,r,n){let s=Ul(t,e,i,r,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,n,s||ye.empty))))return true;if(!s)return false;let l=No(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 Io(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," "):""}so.paste=(t,e)=>{let i=e;if(t.composing&&!Xn)return;let r=qo?null:i.clipboardData;let n=t.input.shiftKey&&t.input.lastKeyCode!=45;if(r&&zo(t,Io(r),r.getData("text/html"),n,i))i.preventDefault();else To(t,i)};class Po{constructor(t,e,i){this.slice=t;this.move=e;this.node=i}}const Jo=Vn?"altKey":"ctrlKey";no.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(wo(i));let l;if(s&&s.pos>=n.from&&s.pos<=(n instanceof tn?n.to-1:n.to));else if(r&&r.mightDrag){l=tn.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=tn.create(t.state.doc,e.posBefore)}let o=(l||t.state.selection).content(),{dom:u,text:f}=Ll(t,o);i.dataTransfer.clearData();i.dataTransfer.setData(qo?"Text":"text/html",u.innerHTML);i.dataTransfer.effectAllowed="copyMove";if(!qo)i.dataTransfer.setData("text/plain",f);t.dragging=new Po(o,!i[Jo],l)};no.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{if(t.dragging==e)t.dragging=null}),50)};so.dragover=so.dragenter=(t,e)=>e.preventDefault();so.drop=(t,e)=>{let i=e;let r=t.dragging;t.dragging=null;if(!i.dataTransfer)return;let n=t.posAtCoords(wo(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=Ul(t,Io(i.dataTransfer),qo?null:i.dataTransfer.getData("text/html"),false,s)}let o=!!(r&&!i[Jo]);if(t.someProp("handleDrop",(e=>e(t,i,l||ye.empty,o)))){i.preventDefault();return}if(!l)return;i.preventDefault();let u=l?Ar(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&&tn.isSelectable(l.content.firstChild)&&d.nodeAfter&&d.nodeAfter.sameMarkup(l.content.firstChild)){f.setSelection(new tn(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"))};no.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()))al(t)}),20)}};no.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}};no.beforeinput=(t,e)=>{let i=e;if(Wn&&Xn&&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,_n(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 so)no[t]=so[t];function Lo(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 Uo{constructor(t,e){this.toDOM=t;this.spec=e||Vo;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 Zo(n-i,n-i,this)}valid(){return true}eq(t){return this==t||t instanceof Uo&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&Lo(this.spec,t.spec))}destroy(t){if(this.spec.destroy)this.spec.destroy(t)}}class Wo{constructor(t,e){this.attrs=t;this.spec=e||Vo}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 Zo(n,s,this)}valid(t,e){return e.from<e.to}eq(t){return this==t||t instanceof Wo&&Lo(this.attrs,t.attrs)&&Lo(this.spec,t.spec)}static is(t){return t.type instanceof Wo}destroy(){}}class Ho{constructor(t,e){this.attrs=t;this.spec=e||Vo}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 Zo(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 Ho&&Lo(this.attrs,t.attrs)&&Lo(this.spec,t.spec)}destroy(){}}class Zo{constructor(t,e,i){this.from=t;this.to=e;this.type=i}copy(t,e){return new Zo(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 Zo(t,t,new Uo(e,i))}static inline(t,e,i,r){return new Zo(t,e,new Wo(i,r))}static node(t,e,i,r){return new Zo(t,e,new Ho(i,r))}get spec(){return this.type.spec}get inline(){return this.type instanceof Wo}get widget(){return this.type instanceof Uo}}const Ko=[],Vo={};class Go{constructor(t,e){this.local=t.length?t:Ko;this.children=e.length?e:Ko}static create(t,e){return e.length?nu(e,t,0,Vo):Xo}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==Xo||t.maps.length==0)return this;return this.mapInner(t,e,0,0,i||Vo)}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 Qo(this.children,s||[],t,e,i,r,n);else return s?new Go(s.sort(su),Ko):Xo}add(t,e){if(!e.length)return this;if(this==Xo)return Go.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=iu(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,nu(o,t,l+1,Vo));n+=3}));let s=tu(n?ru(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 Go(s.length?this.local.concat(s).sort(su):this.local,r||this.children)}remove(t){if(t.length==0||this==Xo)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!=Xo){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 Go(r,i):Xo}forChild(t,e){if(this==Xo)return this;if(e.isLeaf)return Go.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 Wo){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 Go(r.sort(su),Ko);return i?new Yo([t,i]):t}return i||Xo}eq(t){if(this==t)return true;if(!(t instanceof Go)||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 lu(this.localsInner(t))}localsInner(t){if(this==Xo)return Ko;if(t.inlineContent||!this.local.some(Wo.is))return this.local;let e=[];for(let t=0;t<this.local.length;t++){if(!(this.local[t].type instanceof Wo))e.push(this.local[t])}return e}}Go.empty=new Go([],[]);Go.removeOverlap=lu;const Xo=Go.empty;class Yo{constructor(t){this.members=t}map(t,e){const i=this.members.map((i=>i.map(t,e,Vo)));return Yo.from(i)}forChild(t,e){if(e.isLeaf)return Go.empty;let i=[];for(let r=0;r<this.members.length;r++){let n=this.members[r].forChild(t,e);if(n==Xo)continue;if(n instanceof Yo)i=i.concat(n.members);else i.push(n)}return Yo.from(i)}eq(t){if(!(t instanceof Yo)||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?lu(i?e:e.sort(su)):Ko}static from(t){switch(t.length){case 0:return Xo;case 1:return t[0];default:return new Yo(t.every((t=>t instanceof Go))?t:t.reduce(((t,e)=>t.concat(e instanceof Go?e:e.members)),[]))}}}function Qo(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!=Xo){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=eu(o,t,e,i,n,s,l);let f=nu(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 Go(e.sort(su),o)}function tu(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 Zo(n.from+e,n.to+e,n.type))}return i}function eu(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 iu(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 ru(t){let e=[];for(let i=0;i<t.length;i++)if(t[i]!=null)e.push(t[i]);return e}function nu(t,e,i,r){let n=[],s=false;e.forEach(((e,l)=>{let o=iu(t,e,l+i);if(o){s=true;let t=nu(o,e,i+l+1,r);if(t!=Xo)n.push(l,l+e.nodeSize,t)}}));let l=tu(s?ru(t):t,-i).sort(su);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 Go(l,n):Xo}function su(t,e){return t.from-e.from||t.to-e.to}function lu(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);ou(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);ou(e,n,r.copy(s.from,r.to))}break}}}return e}function ou(t,e,i){while(e<t.length&&su(i,t[e])>0)e++;t.splice(e,0,i)}function uu(t){let e=[];t.someProp("decorations",(i=>{let r=i(t.state);if(r&&r!=Xo)e.push(r)}));if(t.cursorWrapper)e.push(Go.create(t.state.doc,[t.cursorWrapper.deco]));return Yo.from(e)}const fu={childList:true,characterData:true,characterDataOldValue:true,attributes:true,attributeOldValue:true,subtree:true};const hu=Pn&&Jn<=11;class au{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 cu{constructor(t,e){this.view=t;this.handleDOMChange=e;this.queue=[];this.flushingSoon=-1;this.observer=null;this.currentSelection=new au;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(Pn&&Jn<=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(hu){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,fu)}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(!vl(this.view))return;if(this.suppressingSelectionUpdates)return al(this.view);if(Pn&&Jn<=11&&!this.view.state.selection.empty){let t=this.view.domSelectionRange();if(t.focusNode&&xn(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=yn(i))e.add(i);for(let r=t.anchorNode;r;r=yn(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)&&vl(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(Ln&&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&&$n(i)&&(u=fl(t))&&u.eq(Kr.near(t.state.doc.resolve(0),1))){t.input.lastFocus=0;al(t);this.currentSelection.set(i);t.scrollToSelection()}else if(n>-1||r){if(n>-1){t.docView.markDirty(n,s);mu(t)}this.handleDOMChange(n,s,l,o);if(t.docView&&t.docView.dirty)t.updateState(t.state);else if(!this.currentSelection.eq(i))al(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(Pn&&Jn<=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?vn(r)+1:0;let l=i.localPosFromDOM(t.target,s,-1);let o=n&&n.parentNode==t.target?vn(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 du=new WeakMap;let pu=false;function mu(t){if(du.has(t))return;du.set(t,null);if(["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1){t.requiresGeckoHackNode=Ln;if(pu)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.");pu=true}}function wu(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(xn(o.node,o.offset,s,l))[r,n,s,l]=[s,l,r,n];return{anchorNode:r,anchorOffset:n,focusNode:s,focusOffset:l}}function gu(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(!$n(u))f.push({node:u.focusNode,offset:u.focusOffset})}if(Wn&&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")||wi.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:bu,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 bu(t){let e=t.pmViewDesc;if(e){return e.parseRule()}else if(t.nodeName=="BR"&&t.parentNode){if(Zn&&/^(ul|ol)$/i.test(t.parentNode.nodeName)){let t=document.createElement("div");t.appendChild(document.createElement("li"));return{skip:t}}else if(t.parentNode.lastChild==t||Zn&&/^(tr|table)$/i.test(t.parentNode.nodeName)){return{ignore:true}}}else if(t.nodeName=="IMG"&&t.getAttribute("mark-placeholder")){return{ignore:true}}return null}const ku=/^(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=fl(t,e);if(i&&!t.state.selection.eq(i)){if(Wn&&Xn&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",(e=>e(t,_n(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=gu(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=xu(a.content,f.doc.content,f.from,c,d);if((Kn&&t.input.lastIOSEnter>Date.now()-225||Xn)&&n.some((t=>t.nodeType==1&&!ku.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,_n(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(!p){if(r&&u instanceof Yr&&!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=vu(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(Wn&&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 Yr){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(Pn&&Jn<=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((Kn&&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=Kr.findFrom(f.doc.resolve(m.pos+1),1,true))&&k.head==w.pos)&&t.someProp("handleKeyDown",(e=>e(t,_n(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&Fu(h,p.start,p.endA,m,w)&&t.someProp("handleKeyDown",(e=>e(t,_n(8,"Backspace"))))){if(Xn&&Wn)t.domObserver.suppressSelectionUpdates();return}if(Wn&&Xn&&p.endB==p.start)t.input.lastAndroidDelete=Date.now();if(Xn&&!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,_n(13,"Enter"))}))}),20)}let D=p.start,v=p.endA;let y,F,E;if(b){if(m.pos==w.pos){if(Pn&&Jn<=11&&m.parentOffset==0){t.domObserver.suppressSelectionUpdates();setTimeout((()=>al(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=yu(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=vu(t,y.doc,f.sel);if(e&&!(Wn&&Xn&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(e.head==D||e.head==y.mapping.map(v)-1)||Pn&&e.empty&&e.head==D))y.setSelection(e)}if(F)y.ensureMarks(F);if(s)y.setMeta("composition",s);t.dispatch(y.scrollIntoView())}function vu(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 yu(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(we.from(f).eq(t))return{mark:o,type:l}}function Fu(t,e,i,r,n){if(!r.parent.isTextblock||i-e<=n.pos-r.pos||Eu(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(Eu(s,true,true));if(!l.parent.isTextblock||l.pos>i||Eu(l,true,false)<i)return false;return r.parent.content.cut(r.parentOffset).eq(l.parent.content)}function Eu(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 xu(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&&Mu(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&&Mu(t.textBetween(s-1,s+1)))s+=e?1:-1;l=s+(l-o);o=s}return{start:s,endA:l,endB:o}}function Mu(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 Au{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 oo;this.prevDirectPlugins=[];this.pluginViews=[];this.requiresGeckoHackNode=false;this.dragging=null;this._props=e;this.state=e.state;this.directPlugins=e.plugins||[];this.directPlugins.forEach(ju);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=Ou(this);Su(this);this.nodeViews=_u(this);this.docView=Js(this.state.doc,Cu(this),uu(this),this.dom,this);this.domObserver=new cu(this,((t,e,i,r)=>Du(this,t,e,i,r)));this.domObserver.start();uo(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)ao(this);let e=this._props;this._props=t;if(t.plugins){t.plugins.forEach(ju);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){_o(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=_u(this);if(Bu(t,this.nodeViews)){this.nodeViews=t;n=true}}if(l||e.handleDOMEvents!=this._props.handleDOMEvents){ao(this)}this.editable=Ou(this);Su(this);let o=uu(this),u=Cu(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&&ns(this);if(s){this.domObserver.stop();let e=h&&(Pn||Wn)&&!this.composing&&!r.selection.empty&&!t.selection.empty&&$u(r.selection,t.selection);if(h){let i=Wn?this.trackWrites=this.domSelectionRange().focusNode:null;if(n||!this.docView.update(t.doc,u,o,this)){this.docView.updateOuterDeco([]);this.docView.destroy();this.docView=Js(t.doc,u,o,this.dom,this)}if(i&&!this.trackWrites)e=true}if(e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&Fl(this))){al(this,e)}else{bl(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){ls(a)}}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof tn){let e=this.docView.domAfterPos(this.state.selection.from);if(e.nodeType==1)rs(this,e.getBoundingClientRect(),t)}else{rs(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 Po(t.slice,t.move,r<0?undefined:tn.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(Pn){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)hs(this.dom);al(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 bs(this,t)}coordsAtPos(t,e=1){return ys(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 _s(this,e||this.state,t)}pasteHTML(t,e){return zo(this,"",t,false,e||new ClipboardEvent("paste"))}pasteText(t,e){return zo(this,t,null,true,e||new ClipboardEvent("paste"))}destroy(){if(!this.docView)return;ho(this);this.destroyPluginViews();if(this.mounted){this.docView.update(this.state.doc,[],uu(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 mo(this,t)}dispatch(t){let e=this._props.dispatchTransaction;if(e)e.call(this,t);else this.updateState(this.state.apply(t))}domSelectionRange(){return Zn&&this.root.nodeType===11&&Bn(this.dom.ownerDocument)==this.dom?wu(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function Cu(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[Zo.node(0,t.state.doc.content.size,e)]}function Su(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:Zo.widget(t.state.selection.head,e,{raw:true,marks:t.markCursor})}}else{t.cursorWrapper=null}}function Ou(t){return!t.someProp("editable",(e=>e(t.state)===false))}function $u(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 _u(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 Bu(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 ju(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 Ru=["p",0],qu=["blockquote",0],Nu=["hr"],Tu=["pre",["code",0]],zu=["br"];const Iu={doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return Ru}},blockquote:{content:"block+",group:"block",defining:true,parseDOM:[{tag:"blockquote"}],toDOM(){return qu}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return Nu}},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 Tu}},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 zu}}};const Pu=["em",0],Ju=["strong",0],Lu=["code",0];const Uu={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 Pu}},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 Ju}},code:{parseDOM:[{tag:"code"}],toDOM(){return Lu}}};const Wu=new ci({nodes:Iu,marks:Uu});const Hu=["ol",0],Zu=["ul",0],Ku=["li",0];const Vu={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?Hu:["ol",{start:t.attrs.order},0]}};const Gu={parseDOM:[{tag:"ul"}],toDOM(){return Zu}};const Xu={parseDOM:[{tag:"li"}],toDOM(){return Ku},defining:true};function Yu(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 Qu(t,e,i){return t.append({ordered_list:Yu(Vu,{content:"list_item+",group:i}),bullet_list:Yu(Gu,{content:"list_item+",group:i}),list_item:Yu(Xu,{content:e})})}function tf(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=cr(u,t,e,l);if(!f)return false;if(r)r(ef(i.tr,l,f,o,t).scrollIntoView());return true}}function ef(t,e,i,r,n){let s=we.empty;for(let t=i.length-1;t>=0;t--)s=we.from(i[t].type.create(i[t].attrs,s));t.step(new nr(e.start-(r?2:0),e.end,e.start,e.end,new ye(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 rf(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=we.empty;let s=n.index(-1)?1:n.index(-2)?2:3;for(let t=n.depth-s;t>=n.depth-3;t--)e=we.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(we.from(t.createAndFill()));let o=n.before(n.depth-(s-1));let u=i.tr.replace(o,n.after(-l),new ye(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(Kr.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 nf(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 sf(e,i,t,s);else return lf(e,i,s)}}function sf(t,e,i,r){let n=t.tr,s=r.end,l=r.$to.end(r.depth);if(s<l){n.step(new nr(s-1,l,s,l,new ye(we.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=hr(r);if(o==null)return false;n.lift(r,o);let u=n.mapping.map(s,-1)-1;if(yr(n.doc,u))n.join(u);e(n.scrollIntoView());return true}function lf(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?we.empty:we.from(n))))return false;let a=s.pos,c=a+l.nodeSize;r.step(new nr(a-(o?1:0),c+(u?1:0),a+1,c-1,new ye((o?we.empty:we.from(n.copy(we.empty))).append(u?we.empty:we.from(n.copy(we.empty))),o?0:1,u?0:1),o?0:1));e(r.scrollIntoView());return true}function of(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=we.from(r?t.create():null);let l=new ye(we.from(t.create(null,we.from(o.type.create(null,n)))),r?3:1,0);let f=s.start,h=s.end;i(e.tr.step(new nr(f-(r?3:1),h,f,h,l,1,true)).scrollIntoView())}return true}}var uf={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 ff={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 hf=typeof navigator!="undefined"&&/Mac/.test(navigator.platform);var af=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var cf=0;cf<10;cf++)uf[48+cf]=uf[96+cf]=String(cf);for(var cf=1;cf<=24;cf++)uf[cf+111]="F"+cf;for(var cf=65;cf<=90;cf++){uf[cf]=String.fromCharCode(cf+32);ff[cf]=String.fromCharCode(cf)}for(var df in uf)if(!ff.hasOwnProperty(df))ff[df]=uf[df];function pf(t){var e=hf&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||af&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified";var i=!e&&t.key||(t.shiftKey?ff:uf)[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 mf=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function wf(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(mf)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 gf(t){let e=Object.create(null);for(let i in t)e[wf(i)]=t[i];return e}function bf(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 kf(t){return new gn({props:{handleKeyDown:Df(t)}})}function Df(t){let e=gf(t);return function(t,i){let r=pf(i),n,s=e[bf(r,i)];if(s&&s(t.state,t.dispatch,t))return true;if(r.length==1&&r!=" "){if(i.shiftKey){let n=e[bf(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=uf[i.keyCode])&&n!=r){let r=e[bf(n,i)];if(r&&r(t.state,t.dispatch,t))return true}}return false}}var vf=200;var yf=function t(){};yf.prototype.append=function t(e){if(!e.length){return this}e=yf.from(e);return!this.length&&e||e.length<vf&&this.leafAppend(e)||this.length<vf&&e.leafPrepend(this)||this.appendInner(e)};yf.prototype.prepend=function t(e){if(!e.length){return this}return yf.from(e).append(this)};yf.prototype.appendInner=function t(e){return new Ef(this,e)};yf.prototype.slice=function t(e,i){if(e===void 0)e=0;if(i===void 0)i=this.length;if(e>=i){return yf.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,i))};yf.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};yf.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)}};yf.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};yf.from=function t(e){if(e instanceof yf){return e}return e&&e.length?new Ff(e):yf.empty};var Ff=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<=vf){return new e(this.values.concat(i.flatten()))}};e.prototype.leafPrepend=function t(i){if(this.length+i.length<=vf){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}(yf);yf.empty=new Ff([]);var Ef=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}(yf);const xf=500;class Mf{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 Cf(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 Cf(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 Mf(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 Cf(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>Of){l=Af(l,u);s-=u}return new Mf(l.append(n),s)}remapping(t,e){let i=new Ki;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 Mf(this.items.append(t.map((t=>new Cf(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 Cf(u,s,f))}else{i.push(new Cf(u))}}),r);let u=[];for(let t=e;t<s;t++)u.push(new Cf(n.maps[t]));let f=this.items.slice(0,r).append(u).append(i);let h=new Mf(f,l);if(h.emptyItemCount()>xf)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 Cf(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 Mf(yf.from(r.reverse()),n)}}Mf.empty=new Mf(yf.empty,0);function Af(t,e){let i;t.forEach(((t,r)=>{if(t.selection&&e--==0){i=r;return false}}));return t.slice(i)}class Cf{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 Cf(e.getMap().invert(),e,this.selection)}}}class Sf{constructor(t,e,i,r,n){this.done=t;this.undone=e;this.prevRanges=i;this.prevTime=r;this.prevComposition=n}}const Of=20;function $f(t,e,i,r){let n=i.getMeta(zf),s;if(n)return n.historyState;if(i.getMeta(If))t=new Sf(t.done,t.undone,null,0,-1);let l=i.getMeta("appendedTransaction");if(i.steps.length==0){return t}else if(l&&l.getMeta(zf)){if(l.getMeta(zf).redo)return new Sf(t.done.addTransform(i,undefined,r,Tf(e)),t.undone,Bf(i.mapping.maps[i.steps.length-1]),t.prevTime,t.prevComposition);else return new Sf(t.done,t.undone.addTransform(i,undefined,r,Tf(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||!_f(i,t.prevRanges));let o=l?jf(t.prevRanges,i.mapping):Bf(i.mapping.maps[i.steps.length-1]);return new Sf(t.done.addTransform(i,s?e.selection.getBookmark():undefined,r,Tf(e)),Mf.empty,o,i.time,n==null?t.prevComposition:n)}else if(s=i.getMeta("rebased")){return new Sf(t.done.rebased(i,s),t.undone.rebased(i,s),jf(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}else{return new Sf(t.done.addMaps(i.mapping.maps),t.undone.addMaps(i.mapping.maps),jf(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}}function _f(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 Bf(t){let e=[];t.forEach(((t,i,r,n)=>e.push(r,n)));return e}function jf(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 Rf(t,e,i,r){let n=Tf(e);let s=zf.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 Sf(r?u:l.remaining,r?l.remaining:u,null,0,-1);i(l.transform.setSelection(o).setMeta(zf,{redo:r,historyState:f}).scrollIntoView())}let qf=false,Nf=null;function Tf(t){let e=t.plugins;if(Nf!=e){qf=false;Nf=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){qf=true;break}}return qf}const zf=new Dn("history");const If=new Dn("closeHistory");function Pf(t={}){t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500};return new gn({key:zf,state:{init(){return new Sf(Mf.empty,Mf.empty,null,0,-1)},apply(e,i,r){return $f(i,r,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(t,e){let i=e.inputType;let r=i=="historyUndo"?Jf:i=="historyRedo"?Lf:null;if(!r)return false;e.preventDefault();return r(t.state,t.dispatch)}}}})}const Jf=(t,e)=>{let i=zf.getState(t);if(!i||i.done.eventCount==0)return false;if(e)Rf(i,t,e,false);return true};const Lf=(t,e)=>{let i=zf.getState(t);if(!i||i.undone.eventCount==0)return false;if(e)Rf(i,t,e,true);return true};const Uf=(t,e)=>{if(t.selection.empty)return false;if(e)e(t.tr.deleteSelection().scrollIntoView());return true};function Wf(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("backward",t):i.parentOffset>0))return null;return i}const Hf=(t,e,i)=>{let r=Wf(t,i);if(!r)return false;let n=Vf(r);if(!n){let i=r.blockRange(),n=i&&hr(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&&dh(t,n,e))return true;if(r.parent.content.size==0&&(Zf(s,"end")||tn.isSelectable(s))){let i=Cr(t.doc,r.before(),r.after(),ye.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(Zf(s,"end")?Kr.findFrom(r.doc.resolve(r.mapping.map(n.pos,-1)),-1):tn.create(r.doc,n.pos-s.nodeSize));e(r.scrollIntoView())}return true}}if(s.isAtom&&n.depth==r.depth-1){if(e)e(t.tr.delete(n.pos-s.nodeSize,n.pos).scrollIntoView());return true}return false};function Zf(t,e,i=false){for(let r=t;r;r=e=="start"?r.firstChild:r.lastChild){if(r.isTextblock)return true;if(i&&r.childCount!=1)return false}return false}const Kf=(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=Vf(r)}let l=s&&s.nodeBefore;if(!l||!tn.isSelectable(l))return false;if(e)e(t.tr.setSelection(tn.create(t.doc,s.pos-l.nodeSize)).scrollIntoView());return true};function Vf(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 Gf(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 Xf=(t,e,i)=>{let r=Gf(t,i);if(!r)return false;let n=Qf(r);if(!n)return false;let s=n.nodeAfter;if(dh(t,n,e))return true;if(r.parent.content.size==0&&(Zf(s,"start")||tn.isSelectable(s))){let i=Cr(t.doc,r.before(),r.after(),ye.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(Zf(s,"start")?Kr.findFrom(r.doc.resolve(r.mapping.map(n.pos)),1):tn.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 Yf=(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=Qf(r)}let l=s&&s.nodeAfter;if(!l||!tn.isSelectable(l))return false;if(e)e(t.tr.setSelection(tn.create(t.doc,s.pos)).scrollIntoView());return true};function Qf(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 th=(t,e)=>{let i=t.selection,r=i instanceof tn,n;if(r){if(i.node.isTextblock||!yr(t.doc,i.from))return false;n=i.from}else{n=Er(t.doc,i.from,-1);if(n==null)return false}if(e){let i=t.tr.join(n);if(r)i.setSelection(tn.create(i.doc,n-t.doc.resolve(n).nodeBefore.nodeSize));e(i.scrollIntoView())}return true};const eh=(t,e)=>{let i=t.selection,r;if(i instanceof tn){if(i.node.isTextblock||!yr(t.doc,i.to))return false;r=i.to}else{r=Er(t.doc,i.to,1);if(r==null)return false}if(e)e(t.tr.join(r).scrollIntoView());return true};const ih=(t,e)=>{let{$from:i,$to:r}=t.selection;let n=i.blockRange(r),s=n&&hr(n);if(s==null)return false;if(e)e(t.tr.lift(n,s).scrollIntoView());return true};const rh=(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 nh(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 sh=(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=nh(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(Kr.near(n.doc.resolve(r),1));e(n.scrollIntoView())}return true};const lh=(t,e)=>{let i=t.selection,{$from:r,$to:n}=i;if(i instanceof rn||r.parent.inlineContent||n.parent.inlineContent)return false;let s=nh(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(Yr.create(l.doc,i+1));e(l.scrollIntoView())}return true};const oh=(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&&hr(r);if(n==null)return false;if(e)e(t.tr.lift(r,n).scrollIntoView());return true};function uh(t){return(e,i)=>{let{$from:r,$to:n}=e.selection;if(e.selection instanceof tn&&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 Yr||e.selection instanceof rn)l.deleteSelection();let o=r.depth==0?null:nh(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 fh=uh();const hh=(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(tn.create(t.doc,n)));return true};const ah=(t,e)=>{if(e)e(t.tr.setSelection(new rn(t.doc)));return true};function ch(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||yr(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 dh(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s,l;if(r.type.spec.isolating||n.type.spec.isolating)return false;if(ch(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=we.empty;for(let t=s.length-1;t>=0;t--)o=we.from(s[t].create(null,o));o=we.from(r.copy(o));let u=t.tr.step(new nr(e.pos-1,l,e.pos,l,new ye(o,1,0),s.length,true));let f=l+2*s.length;if(yr(u.doc,f))u.join(f);i(u.scrollIntoView())}return true}let u=Kr.findFrom(e,1);let f=u&&u.$from.blockRange(u.$to),h=f&&hr(f);if(h!=null&&h>=e.depth){if(i)i(t.tr.lift(f,h).scrollIntoView());return true}if(o&&Zf(n,"start",true)&&Zf(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=we.empty;for(let t=l.length-1;t>=0;t--)r=we.from(l[t].copy(r));let s=t.tr.step(new nr(e.pos-l.length,e.pos+n.nodeSize,e.pos+u,e.pos+n.nodeSize-u,new ye(r,l.length,0),0,true));i(s.scrollIntoView())}return true}}return false}function ph(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(Yr.create(e.doc,t<0?n.start(s):n.end(s))));return true}}const mh=ph(-1);const wh=ph(1);function gh(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),o=l&&cr(l,t,e);if(!o)return false;if(r)r(i.tr.wrap(l,o).scrollIntoView());return true}}function bh(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 kh(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||!kh(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 vh(...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 yh=vh(Uf,Hf,Kf);let Fh=vh(Uf,Xf,Yf);const Eh={Enter:vh(rh,lh,oh,fh),"Mod-Enter":sh,Backspace:yh,"Mod-Backspace":yh,"Shift-Backspace":yh,Delete:Fh,"Mod-Delete":Fh,"Mod-a":ah};const xh={"Ctrl-h":Eh["Backspace"],"Alt-Backspace":Eh["Mod-Backspace"],"Ctrl-d":Eh["Delete"],"Ctrl-Alt-Backspace":Eh["Mod-Delete"],"Alt-Delete":Eh["Mod-Delete"],"Alt-d":Eh["Mod-Delete"],"Ctrl-a":mh,"Ctrl-e":wh};for(let t in Eh)xh[t]=Eh[t];const Mh=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os!="undefined"&&os.platform?os.platform()=="darwin":false;const Ah=Mh?xh:Eh;function Ch(t={}){return new gn({view(e){return new Sh(e,t)}})}class Sh{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=Ar(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 Oh extends Kr{constructor(t){super(t,t)}map(t,e){let i=t.resolve(e.map(this.head));return Oh.valid(i)?new Oh(i):Kr.near(i)}content(){return ye.empty}eq(t){return t instanceof Oh&&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 Oh(t.resolve(e.pos))}getBookmark(){return new $h(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!_h(t)||!Bh(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&&Oh.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(Oh.valid(l))return l}for(;;){let s=e>0?n.firstChild:n.lastChild;if(!s){if(n.isAtom&&!n.isText&&!tn.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(Oh.valid(l))return l}return null}}}Oh.prototype.visible=false;Oh.findFrom=Oh.findGapCursorFrom;Kr.jsonID("gapcursor",Oh);class $h{constructor(t){this.pos=t}map(t){return new $h(t.map(this.pos))}resolve(t){let e=t.resolve(this.pos);return Oh.valid(e)?new Oh(e):Kr.near(e)}}function _h(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 Bh(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 jh(){return new gn({props:{decorations:zh,createSelectionBetween(t,e,i){return e.pos==i.pos&&Oh.valid(i)?new Oh(i):null},handleClick:Nh,handleKeyDown:Rh,handleDOMEvents:{beforeinput:Th}}})}const Rh=Df({ArrowLeft:qh("horiz",-1),ArrowRight:qh("horiz",1),ArrowUp:qh("vert",-1),ArrowDown:qh("vert",1)});function qh(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 Yr){if(!n.endOfTextblock(i)||l.depth==0)return false;o=false;l=t.doc.resolve(e>0?l.after():l.before())}let u=Oh.findGapCursorFrom(l,e,o);if(!u)return false;if(r)r(t.tr.setSelection(new Oh(u)));return true}}function Nh(t,e,i){if(!t||!t.editable)return false;let r=t.state.doc.resolve(e);if(!Oh.valid(r))return false;let n=t.posAtCoords({left:i.clientX,top:i.clientY});if(n&&n.inside>-1&&tn.isSelectable(t.state.doc.nodeAt(n.inside)))return false;t.dispatch(t.state.tr.setSelection(new Oh(r)));return true}function Th(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof Oh))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=we.empty;for(let t=r.length-1;t>=0;t--)n=we.from(r[t].createAndFill(null,n));let s=t.state.tr.replace(i.pos,i.pos,new ye(n,0,0));s.setSelection(Yr.near(s.doc.resolve(i.pos+1)));t.dispatch(s);return false}function zh(t){if(!(t.selection instanceof Oh))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return Go.create(t.doc,[Zo.widget(t.selection.head,e,{key:"gapcursor"})])}function Ih(){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++)Ph(t,arguments[e]);return t}function Ph(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++)Ph(t,e[i])}else{throw new RangeError("Unsupported child node: "+e)}}const Jh="http://www.w3.org/2000/svg";const Lh="http://www.w3.org/1999/xlink";const Uh="ProseMirror-icon";function Wh(t){let e=0;for(let i=0;i<t.length;i++)e=(e<<5)-e+t.charCodeAt(i)|0;return e}function Hh(t,e){let i=(t.nodeType==9?t:t.ownerDocument)||document;let r=i.createElement("div");r.className=Uh;if(e.path){let{path:n,width:s,height:l}=e;let o="pm-icon-"+Wh(n).toString(16);if(!i.getElementById(o))Zh(t,o,e);let u=r.appendChild(i.createElementNS(Jh,"svg"));u.style.width=s/l+"em";let f=u.appendChild(i.createElementNS(Jh,"use"));f.setAttributeNS(Lh,"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 Zh(t,e,i){let[r,n]=t.nodeType==9?[t,t.body]:[t.ownerDocument||document,t];let s=r.getElementById(Uh+"-collection");if(!s){s=r.createElementNS(Jh,"svg");s.id=Uh+"-collection";s.style.display="none";n.insertBefore(s,n.firstChild)}let l=r.createElementNS(Jh,"symbol");l.id=e;l.setAttribute("viewBox","0 0 "+i.width+" "+i.height);let o=l.appendChild(r.createElementNS(Jh,"path"));o.setAttribute("d",i.path);s.appendChild(l)}const Kh="ProseMirror-menu";class Vh{constructor(t){this.spec=t}render(t){let e=this.spec;let i=e.render?e.render(t):e.icon?Hh(t.root,e.icon):e.label?Ih("div",null,Gh(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",Gh(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(Kh+"-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;pa(i,Kh+"-disabled",!r)}if(e.active){let n=r&&e.active(t)||false;pa(i,Kh+"-active",n)}return true}return{dom:i,update:r}}}function Gh(t,e){return t._props.translate?t._props.translate(e):e}let Xh={time:0,node:null};function Yh(t){Xh.time=Date.now();Xh.node=t.target}function Qh(t){return Date.now()-100<Xh.time&&Xh.node&&t.contains(Xh.node)}class ta{constructor(t,e={}){this.options=e;this.options=e||{};this.content=Array.isArray(t)?t:[t]}render(t){let e=ea(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Ih("div",{class:Kh+"-dropdown "+(this.options.class||""),style:this.options.css},Gh(t,this.options.label||""));if(this.options.title)r.setAttribute("title",Gh(t,this.options.title));let n=Ih("div",{class:Kh+"-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();Yh(t);if(s){o()}else{s=this.expand(n,e.dom);i.addEventListener("mousedown",l=()=>{if(!Qh(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=Ih("div",{class:Kh+"-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 ea(t,e){let i=[],r=[];for(let n=0;n<t.length;n++){let{dom:s,update:l}=t[n].render(e);i.push(Ih("div",{class:Kh+"-dropdown-item"},s));r.push(l)}return{dom:i,update:ia(r,i)}}function ia(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 ra{constructor(t,e={}){this.options=e;this.content=Array.isArray(t)?t:[t]}render(t){let e=ea(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Ih("div",{class:Kh+"-submenu-label"},Gh(t,this.options.label||""));let n=Ih("div",{class:Kh+"-submenu-wrap"},r,Ih("div",{class:Kh+"-submenu"},e.dom));let s=null;r.addEventListener("mousedown",(t=>{t.preventDefault();Yh(t);pa(n,Kh+"-submenu-wrap-active",false);if(!s)i.addEventListener("mousedown",s=()=>{if(!Qh(n)){n.classList.remove(Kh+"-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 na(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=Ih("span",{class:Kh+"item"},r);i.appendChild(s);u.push(s);o.push(n)}if(o.length){r.push(ia(o,u));if(s<e.length-1)n.push(i.appendChild(sa()))}}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 sa(){return Ih("span",{class:Kh+"separator"})}const la={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 oa=new Vh({title:"Join with above block",run:th,select:t=>th(t),icon:la.join});const ua=new Vh({title:"Lift out of enclosing block",run:ih,select:t=>ih(t),icon:la.lift});const fa=new Vh({title:"Select parent node",run:hh,select:t=>hh(t),icon:la.selectParentNode});let ha=new Vh({title:"Undo last change",run:Jf,enable:t=>Jf(t),icon:la.undo});let aa=new Vh({title:"Redo last undone change",run:Lf,enable:t=>Lf(t),icon:la.redo});function ca(t,e){let i={run(i,r){return gh(t,e.attrs)(i,r)},select(i){return gh(t,e.attrs)(i)}};for(let t in e)i[t]=e[t];return new Vh(i)}function da(t,e){let i=bh(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 Vh(r)}function pa(t,e,i){if(i)t.classList.add(e);else t.classList.remove(e)}const ma="ProseMirror-menubar";function wa(){if(typeof navigator=="undefined")return false;let t=navigator.userAgent;return!/Edge\/\d/.test(t)&&/AppleWebKit/.test(t)&&/Mobile\/\w+/.test(t)}function ga(t){return new gn({view(e){return new ba(e,t)}})}class ba{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=Ih("div",{class:ma+"-wrapper"});this.menu=this.wrapper.appendChild(Ih("div",{class:ma}));this.menu.className=ma;if(t.dom.parentNode)t.dom.parentNode.replaceChild(this.wrapper,t.dom);this.wrapper.appendChild(t.dom);let{dom:i,update:r}=na(this.editorView,this.options.content);this.contentUpdate=r;this.menu.appendChild(i);this.update();if(e.floating&&!wa()){this.updateFloat();let t=va(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[ka(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=Ih("div",{class:ma+"-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 ka(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 va(t){let e=[t.ownerDocument.defaultView||window];for(let i=t.parentNode;i;i=i.parentNode)e.push(i);return e}class ya{constructor(t,e,i={}){this.match=t;this.match=t;this.handler=typeof e=="string"?Fa(e):e;this.undoable=i.undoable!==false;this.inCode=i.inCode||false}}function Fa(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 Ea=500;function xa({rules:t}){let e=new gn({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 Ma(i,r,n,s,t,e)},handleDOMEvents:{compositionend:i=>{setTimeout((()=>{let{$cursor:r}=i.state.selection;if(r)Ma(i,r.pos,r.pos,"",t,e)}))}}},isInputRules:true});return e}function Ma(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-Ea),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 Aa=(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 Ca=new ya(/--$/,"—");const Sa=new ya(/\.\.\.$/,"…");const Oa=new ya(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");const $a=new ya(/"$/,"”");const _a=new ya(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");const Ba=new ya(/'$/,"’");const ja=[Oa,$a,_a,Ba];function Ra(t,e,i=null,r){return new ya(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&&cr(h,e,o);if(!a)return null;u.wrap(h,a);let c=u.doc.resolve(s-1).nodeBefore;if(c&&c.type==e&&yr(u.doc,s-1)&&(!r||r(n,c)))u.join(s-1);return u}))}function qa(t,e,i=null){return new ya(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 Na="ProseMirror-prompt";function Ta(t){let e=document.body.appendChild(document.createElement("div"));e.className=Na;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=Na+"-submit";s.textContent="OK";let l=document.createElement("button");l.type="button";l.className=Na+"-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=Na+"-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=za(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 za(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){Ia(l,u);return null}i[n]=s.clean(o)}return i}function Ia(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 Pa{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 Ja extends Pa{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 La(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 Ua(t){return new Vh({title:"Insert image",label:"Image",enable(e){return La(e,t)},run(e,i,r){let{from:n,to:s}=e.selection,l=null;if(e.selection instanceof tn&&e.selection.node.type==t)l=e.selection.node.attrs;Ta({title:"Insert image",fields:{src:new Ja({label:"Location",required:true,value:l&&l.src}),title:new Ja({label:"Title",value:l&&l.title}),alt:new Ja({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 Wa(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 Vh(i)}function Ha(t,e){let{from:i,$from:r,to:n,empty:s}=t.selection;if(s)return!!e.isInSet(t.storedMarks||r.marks());else return t.doc.rangeHasMark(i,n,e)}function Za(t,e){let i={active(e){return Ha(e,t)}};for(let t in e)i[t]=e[t];return Wa(Dh(t),i)}function Ka(t){return new Vh({title:"Add or remove link",icon:la.link,active(e){return Ha(e,t)},enable(t){return!t.selection.empty},run(e,i,r){if(Ha(e,t)){Dh(t)(e,i);return true}Ta({title:"Create a link",fields:{href:new Ja({label:"Link target",required:true}),title:new Ja({label:"Title"})},callback(e){Dh(t,e)(r.state,r.dispatch);r.focus()}})}})}function Va(t,e){return Wa(tf(t,e.attrs),e)}function Ga(t){let e={};let i;if(i=t.marks.strong)e.toggleStrong=Za(i,{title:"Toggle strong style",icon:la.strong});if(i=t.marks.em)e.toggleEm=Za(i,{title:"Toggle emphasis",icon:la.em});if(i=t.marks.code)e.toggleCode=Za(i,{title:"Toggle code font",icon:la.code});if(i=t.marks.link)e.toggleLink=Ka(i);let r;if(r=t.nodes.image)e.insertImage=Ua(r);if(r=t.nodes.bullet_list)e.wrapBulletList=Va(r,{title:"Wrap in bullet list",icon:la.bulletList});if(r=t.nodes.ordered_list)e.wrapOrderedList=Va(r,{title:"Wrap in ordered list",icon:la.orderedList});if(r=t.nodes.blockquote)e.wrapBlockQuote=ca(r,{title:"Wrap in block quote",icon:la.blockquote});if(r=t.nodes.paragraph)e.makeParagraph=da(r,{title:"Change to paragraph",label:"Plain"});if(r=t.nodes.code_block)e.makeCodeBlock=da(r,{title:"Change to code block",label:"Code"});if(r=t.nodes.heading)for(let t=1;t<=10;t++)e["makeHead"+t]=da(r,{title:"Change to heading "+t,label:"Level "+t,attrs:{level:t}});if(r=t.nodes.horizontal_rule){let t=r;e.insertHorizontalRule=new Vh({title:"Insert horizontal rule",label:"Horizontal rule",enable(e){return La(e,t)},run(e,i){i(e.tr.replaceSelectionWith(t.create()))}})}let n=t=>t.filter((t=>t));e.insertMenu=new ta(n([e.insertImage,e.insertHorizontalRule]),{label:"Insert"});e.typeMenu=new ta(n([e.makeParagraph,e.makeCodeBlock,e.makeHead1&&new ra(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,oa,ua,fa])];e.fullMenu=e.inlineMenu.concat([[e.insertMenu,e.typeMenu]],[[ha,aa]],e.blockMenu);return e}const Xa=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function Ya(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",Jf);n("Shift-Mod-z",Lf);n("Backspace",Aa);if(!Xa)n("Mod-y",Lf);n("Alt-ArrowUp",th);n("Alt-ArrowDown",eh);n("Mod-BracketLeft",ih);n("Escape",hh);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",tf(r));if(r=t.nodes.ordered_list)n("Shift-Ctrl-9",tf(r));if(r=t.nodes.blockquote)n("Ctrl->",gh(r));if(r=t.nodes.hard_break){let t=r,e=vh(sh,((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}));n("Mod-Enter",e);n("Shift-Enter",e);if(Xa)n("Ctrl-Enter",e)}if(r=t.nodes.list_item){n("Enter",rf(r));n("Mod-[",nf(r));n("Mod-]",of(r))}if(r=t.nodes.paragraph)n("Shift-Ctrl-0",bh(r));if(r=t.nodes.code_block)n("Shift-Ctrl-\\",bh(r));if(r=t.nodes.heading)for(let t=1;t<=6;t++)n("Shift-Ctrl-"+t,bh(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 Qa(t){return Ra(/^\s*>\s$/,t)}function tc(t){return Ra(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order==+t[1]))}function ec(t){return Ra(/^\s*([-+*])\s$/,t)}function ic(t){return qa(/^```$/,t)}function rc(t,e){return qa(new RegExp("^(#{1,"+e+"})\\s$"),t,(t=>({level:t[1].length})))}function nc(t){let e=ja.concat(Sa,Ca),i;if(i=t.nodes.blockquote)e.push(Qa(i));if(i=t.nodes.ordered_list)e.push(tc(i));if(i=t.nodes.bullet_list)e.push(ec(i));if(i=t.nodes.code_block)e.push(ic(i));if(i=t.nodes.heading)e.push(rc(i,6));return xa({rules:e})}function sc(t){let e=[nc(t.schema),kf(Ya(t.schema,t.mapKeys)),kf(Ah),Ch(),jh()];if(t.menuBar!==false)e.push(ga({floating:t.floatingMenu!==false,content:t.menuContent||Ga(t.schema).fullMenu}));if(t.history!==false)e.push(Pf());return e.concat(new gn({props:{attributes:{class:"ProseMirror-example-setup-style"}}}))}const lc={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 oc=Object.values(lc);const uc={Heading:"heading",one:1,two:2,three:3};const fc={Left:0,Middle:1,Right:2};const hc=(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 ac=(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===uc.Heading&&i){return n.attrs.level===i}return true}return false}};const cc=(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 dc=(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:wc(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:wc(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};hc(r,t.marks.link);return r};const pc=(t,e,i)=>{const r=t.marks[e];if(!r){throw new Error(`Mark "${e}" not found in schema`)}const n=mc(e,i);const s=Dh(r,n);hc(s,r);return s};const mc=(t,e)=>{if(t===lc.Link&&e.href){return{href:e.href,target:wc(e.href)?"_blank":null}}return undefined};const wc=t=>!t.startsWith(window.location.origin);const gc=(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 Yr&&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 ih(t,e)}if(r){return gh(n,i)(t,e)}else{return bh(n,i)(t,e)}}}return false}};const bc=t=>{try{new URL(t)}catch(t){return false}return true};const kc=(t,e,i)=>{const r=t.nodes[e];if(!r){throw new Error(`Node type "${e}" not found in schema`)}let n;if(e===uc.Heading&&i){n=gc(t,uc.Heading,{level:i})}else if(e===lc.CodeBlock){n=gc(t,lc.CodeBlock)}else{n=bh(r)}ac(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===lc.Blockquote){r=gc(t,lc.Blockquote,{},true)}else{r=gh(i)}cc(r,i);return r};const vc=t=>(e,i)=>{const{$from:r,$to:n}=e.selection;const s=r.blockRange(n);if(!s){return false}const l=s&&cr(s,t);if(l){if(i){i(e.tr.wrap(s,l).scrollIntoView())}return true}else{const t=s&&hr(s);if(t!==null){if(i){i(e.tr.lift(s,t).scrollIntoView())}return true}return false}};const yc=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`List type "${e}" not found in schema`)}const r=vc(i);cc(r,i);return r};const Fc=(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(!bc(s)){return false}const l=t.schema.marks.link.create({href:s,target:wc(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 Ec={strong:pc,em:pc,underline:pc,strikethrough:pc,code:pc,link:dc,headerlevel1:t=>kc(t,uc.Heading,uc.one),headerlevel2:t=>kc(t,uc.Heading,uc.two),headerlevel3:t=>kc(t,uc.Heading,uc.three),blockquote:t=>Dc(t,lc.Blockquote),code_block:t=>kc(t,lc.CodeBlock),ordered_list:t=>yc(t,lc.OrderedList),bullet_list:t=>yc(t,lc.BulletList)};class xc{constructor(t){this.schema=t}getCommand(t,e){const i=Ec[t];if(!i){throw new Error(`The Mark "${t}" is not supported`)}return i(this.schema,t,e)}buildKeymap(){return{"Mod-B":this.getCommand(lc.Bold),"Mod-I":this.getCommand(lc.Italic),"Mod-Shift-1":this.getCommand(lc.HeaderLevel1),"Mod-Shift-2":this.getCommand(lc.HeaderLevel2),"Mod-Shift-3":this.getCommand(lc.HeaderLevel3),"Mod-Shift-X":this.getCommand(lc.Strikethrough),"Mod-`":this.getCommand(lc.Code),"Mod-Shift-C":this.getCommand(lc.CodeBlock),"Mod-v":Fc}}}const Mc=()=>{const t=/Macintosh|MacIntel|MacPPC|Mac68K/;if(navigator.userAgent.match(t)){return{mod:"⌘",option:"⌥",shift:"⇧"}}return{mod:"Ctrl",option:"Alt",shift:"Shift"}};const{mod:Ac,shift:Cc}=Mc();const Sc=[{value:lc.Bold,text:"Bold",commandText:`${Ac} B`,icon:"-lime-text-bold",iconOnly:true,selected:false},{value:lc.Italic,text:"Italic",commandText:`${Ac} I`,icon:"-lime-text-italic",iconOnly:true,selected:false},{value:lc.Strikethrough,text:"Strikethrough",commandText:`${Ac} ${Cc} X`,icon:"-lime-text-strikethrough",iconOnly:true,selected:false},{value:lc.Link,text:"Link",icon:"-lime-text-link",iconOnly:true},{separator:true},{value:lc.BulletList,text:"Bullet list",icon:"-lime-text-bulleted-list",iconOnly:true,selected:false},{value:lc.OrderedList,text:"Numbered list",icon:"-lime-text-ordered-list",iconOnly:true,selected:false},{separator:true},{value:lc.HeaderLevel1,text:"Header 1",commandText:`${Ac} ${Cc} 1`,icon:"-lime-text-h-heading-1",iconOnly:true,selected:false},{value:lc.HeaderLevel2,text:"Header 2",commandText:`${Ac} ${Cc} 2`,icon:"-lime-text-h-heading-2",iconOnly:true,selected:false},{value:lc.HeaderLevel3,text:"Header 3",commandText:`${Ac} ${Cc} 3`,icon:"-lime-text-h-heading-3",iconOnly:true,selected:false},{separator:true},{value:lc.Blockquote,text:"Blockquote",icon:"-lime-text-blockquote",iconOnly:true,selected:false},{separator:true},{value:lc.Code,text:"Code",commandText:`${Ac} \``,icon:"-lime-text-code",iconOnly:true,selected:false},{value:lc.CodeBlock,text:"Code Block",commandText:`${Ac} ${Cc} C`,icon:"-lime-text-code-block",iconOnly:true,selected:false}];const Oc=()=>ce(Sc);const $c={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 _c={};function Bc(t){let e=_c[t];if(e){return e}e=_c[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 jc(t,e){if(typeof e!=="string"){e=jc.defaultChars}const i=Bc(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}))}jc.defaultChars=";/?:@&=+$,#";jc.componentChars="";const Rc={};function qc(t){let e=Rc[t];if(e){return e}e=Rc[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 Nc(t,e,i){if(typeof e!=="string"){i=e;e=Nc.defaultChars}if(typeof i==="undefined"){i=true}const r=qc(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}Nc.defaultChars=";/?:@&=+$,-_.!~*'()#";Nc.componentChars="-_.!~*'()";function Tc(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 zc(){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 Ic=/^([a-z0-9.+-]+:)/i;const Pc=/:[0-9]*$/;const Jc=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;const Lc=["<",">",'"',"`"," ","\r","\n","\t"];const Uc=["{","}","|","\\","^","`"].concat(Lc);const Wc=["'"].concat(Uc);const Hc=["%","/","?",";","#"].concat(Wc);const Zc=["/","?","#"];const Kc=255;const Vc=/^[+a-z0-9A-Z_-]{0,63}$/;const Gc=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;const Xc={javascript:true,"javascript:":true};const Yc={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function Qc(t,e){if(t&&t instanceof zc)return t;const i=new zc;i.parse(t,e);return i}zc.prototype.parse=function(t,e){let i,r,n;let s=t;s=s.trim();if(!e&&t.split("#").length===1){const t=Jc.exec(s);if(t){this.pathname=t[1];if(t[2]){this.search=t[2]}return this}}let l=Ic.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&&Xc[l])){s=s.substr(2);this.slashes=true}}if(!Xc[l]&&(n||l&&!Yc[l])){let t=-1;for(let e=0;e<Zc.length;e++){r=s.indexOf(Zc[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<Hc.length;e++){r=s.indexOf(Hc[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(Vc)){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(Vc)){const r=t.slice(0,e);const n=t.slice(e+1);const l=i.match(Gc);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>Kc){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(Yc[i]&&this.hostname&&!this.pathname){this.pathname=""}return this};zc.prototype.parseHost=function(t){let e=Pc.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 td=Object.freeze({__proto__:null,decode:jc,encode:Nc,format:Tc,parse:Qc});const ed=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;const id=/[\0-\x1F\x7F-\x9F]/;const rd=/[\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 nd=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\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 sd=/[\$\+<->\^`\|~\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 ld=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;const od=Object.freeze({__proto__:null,Any:ed,Cc:id,Cf:rd,P:nd,S:sd,Z:ld});function ud(t){return Object.prototype.toString.call(t)}function fd(t){return ud(t)==="[object String]"}const hd=Object.prototype.hasOwnProperty;function ad(t,e){return hd.call(t,e)}function cd(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 dd(t,e,i){return[].concat(t.slice(0,e),i,t.slice(e+1))}function pd(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 md(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 wd=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;const gd=/&([a-z#][a-z0-9]{1,31});/gi;const bd=new RegExp(wd.source+"|"+gd.source,"gi");const kd=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function Dd(t,e){if(e.charCodeAt(0)===35&&kd.test(e)){const i=e[1].toLowerCase()==="x"?parseInt(e.slice(2),16):parseInt(e.slice(1),10);if(pd(i)){return md(i)}return t}const i=x(t);if(i!==t){return i}return t}function vd(t){if(t.indexOf("\\")<0){return t}return t.replace(wd,"$1")}function yd(t){if(t.indexOf("\\")<0&&t.indexOf("&")<0){return t}return t.replace(bd,(function(t,e,i){if(e){return e}return Dd(t,i)}))}const Fd=/[&<>"]/;const Ed=/[&<>"]/g;const xd={"&":"&","<":"<",">":">",'"':"""};function Md(t){return xd[t]}function Ad(t){if(Fd.test(t)){return t.replace(Ed,Md)}return t}const Cd=/[.?*+^$[\]\\(){}|-]/g;function Sd(t){return t.replace(Cd,"\\$&")}function Od(t){switch(t){case 9:case 32:return true}return false}function $d(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 _d(t){return nd.test(t)||sd.test(t)}function Bd(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 jd(t){t=t.trim().replace(/\s+/g," ");if("ẞ".toLowerCase()==="Ṿ"){t=t.replace(/ẞ/g,"ß")}return t.toLowerCase().toUpperCase()}const Rd={mdurl:td,ucmicro:od};const qd=Object.freeze({__proto__:null,lib:Rd,assign:cd,isString:fd,has:ad,unescapeMd:vd,unescapeAll:yd,isValidEntityCode:pd,fromCodePoint:md,escapeHtml:Ad,arrayReplaceAt:dd,isSpace:Od,isWhiteSpace:$d,isMdAsciiPunct:Bd,isPunctChar:_d,escapeRE:Sd,normalizeReference:jd});function Nd(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 Td(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=yd(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=yd(t.slice(e,n));s.pos=n;s.ok=true;return s}function zd(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+=yd(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+=yd(t.slice(e,s));return l}const Id=Object.freeze({__proto__:null,parseLinkLabel:Nd,parseLinkDestination:Td,parseLinkTitle:zd});const Pd={};Pd.code_inline=function(t,e,i,r,n){const s=t[e];return"<code"+n.renderAttrs(s)+">"+Ad(s.content)+"</code>"};Pd.code_block=function(t,e,i,r,n){const s=t[e];return"<pre"+n.renderAttrs(s)+"><code>"+Ad(t[e].content)+"</code></pre>\n"};Pd.fence=function(t,e,i,r,n){const s=t[e];const l=s.info?yd(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)||Ad(s.content)}else{f=Ad(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`};Pd.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)};Pd.hardbreak=function(t,e,i){return i.xhtmlOut?"<br />\n":"<br>\n"};Pd.softbreak=function(t,e,i){return i.breaks?i.xhtmlOut?"<br />\n":"<br>\n":"\n"};Pd.text=function(t,e){return Ad(t[e].content)};Pd.html_block=function(t,e){return t[e].content};Pd.html_inline=function(t,e){return t[e].content};function Jd(){this.rules=cd({},Pd)}Jd.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+=" "+Ad(e.attrs[i][0])+'="'+Ad(e.attrs[i][1])+'"'}return n};Jd.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};Jd.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};Jd.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};Jd.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 Ld(){this.__rules__=[];this.__cache__=null}Ld.prototype.__find__=function(t){for(let e=0;e<this.__rules__.length;e++){if(this.__rules__[e].name===t){return e}}return-1};Ld.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)}))}))};Ld.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};Ld.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};Ld.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};Ld.prototype.push=function(t,e,i){const r=i||{};this.__rules__.push({name:t,enabled:true,fn:e,alt:r.alt||[]});this.__cache__=null};Ld.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};Ld.prototype.enableOnly=function(t,e){if(!Array.isArray(t)){t=[t]}this.__rules__.forEach((function(t){t.enabled=false}));this.enable(t,e)};Ld.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};Ld.prototype.getRules=function(t){if(this.__cache__===null){this.__compile__()}return this.__cache__[t]||[]};function Ud(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}Ud.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};Ud.prototype.attrPush=function t(e){if(this.attrs){this.attrs.push(e)}else{this.attrs=[e]}};Ud.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}};Ud.prototype.attrGet=function t(e){const i=this.attrIndex(e);let r=null;if(i>=0){r=this.attrs[i][1]}return r};Ud.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 Wd(t,e,i){this.src=t;this.env=i;this.tokens=[];this.inlineMode=false;this.md=e}Wd.prototype.Token=Ud;const Hd=/\r\n?|\n/g;const Zd=/\0/g;function Kd(t){let e;e=t.src.replace(Hd,"\n");e=e.replace(Zd,"�");t.src=e}function Vd(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 Gd(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 Xd(t){return/^<a[>\s]/i.test(t)}function Yd(t){return/^<\/a\s*>/i.test(t)}function Qd(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(Xd(l.content)&&n>0){n--}if(Yd(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=dd(r,s,u)}}}}const tp=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/;const ep=/\((c|tm|r)\)/i;const ip=/\((c|tm|r)\)/gi;const rp={c:"©",r:"®",tm:"™"};function np(t,e){return rp[e.toLowerCase()]}function sp(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(ip,np)}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function lp(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){if(tp.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 op(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(ep.test(t.tokens[e].content)){sp(t.tokens[e].children)}if(tp.test(t.tokens[e].content)){lp(t.tokens[e].children)}}}const up=/['"]/;const fp=/['"]/g;const hp="’";function ap(t,e,i){return t.slice(0,e)+i+t.slice(e+1)}function cp(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){fp.lastIndex=u;const h=fp.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=Bd(p)||_d(String.fromCharCode(p));const g=Bd(m)||_d(String.fromCharCode(m));const b=$d(p);const k=$d(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=ap(s.content,h.index,hp)}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=ap(s.content,h.index,c);t[a.token].content=ap(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=ap(s.content,h.index,hp)}}}}function dp(t){if(!t.md.options.typographer){return}for(let e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"||!up.test(t.tokens[e].content)){continue}cp(t.tokens[e].children,t)}}function pp(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 mp=[["normalize",Kd],["block",Vd],["inline",Gd],["linkify",Qd],["replacements",op],["smartquotes",dp],["text_join",pp]];function wp(){this.ruler=new Ld;for(let t=0;t<mp.length;t++){this.ruler.push(mp[t][0],mp[t][1])}}wp.prototype.process=function(t){const e=this.ruler.getRules("");for(let i=0,r=e.length;i<r;i++){e[i](t)}};wp.prototype.State=Wd;function gp(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(Od(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}gp.prototype.push=function(t,e,i){const r=new Ud(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};gp.prototype.isEmpty=function t(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]};gp.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};gp.prototype.skipSpaces=function t(e){for(let t=this.src.length;e<t;e++){const t=this.src.charCodeAt(e);if(!Od(t)){break}}return e};gp.prototype.skipSpacesBack=function t(e,i){if(e<=i){return e}while(e>i){if(!Od(this.src.charCodeAt(--e))){return e+1}}return e};gp.prototype.skipChars=function t(e,i){for(let t=this.src.length;e<t;e++){if(this.src.charCodeAt(e)!==i){break}}return e};gp.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};gp.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(Od(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("")};gp.prototype.Token=Ud;const bp=65536;function kp(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 vp(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&&!Od(o)){return false}if(l===45&&Od(o)){return false}while(s<t.eMarks[n]){const e=t.src.charCodeAt(s);if(e!==124&&e!==45&&e!==58&&!Od(e)){return false}s++}let u=kp(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=kp(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=kp(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>bp){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 yp(t,e,i){if(t.sCount[e]-t.blkIndent<4){return false}let r=e+1;let n=r;while(r<i){if(t.isEmpty(r)){r++;continue}if(t.sCount[r]-t.blkIndent>=4){r++;n=r;continue}break}t.line=n;const s=t.push("code_block","code",0);s.content=t.getLines(e,n,4+t.blkIndent,false)+"\n";s.map=[e,t.line];return true}function Fp(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}if(n+3>s){return false}const l=t.src.charCodeAt(n);if(l!==126&&l!==96){return false}let 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 Ep(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(Od(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 xp(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&&!Od(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 Mp(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(!Od(e)){return-1}}return r}function Ap(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(!Od(s)){return-1}}return n}function Cp(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 Sp(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=Ap(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=Mp(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=Ap(t,u);if(d<0){break}l=t.bMarks[u]+t.tShift[u]}else{d=Mp(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){Cp(t,m)}return true}function Op(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(Od(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(Od(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(!Od(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(!Od(t)){break}n++}}}if(n<s&&u.charCodeAt(n)!==10){return false}const g=jd(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 $p=["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 _p="[a-zA-Z_:][a-zA-Z0-9:._-]*";const Bp="[^\"'=<>`\\x00-\\x20]+";const jp="'[^']*'";const Rp='"[^"]*"';const qp="(?:"+Bp+"|"+jp+"|"+Rp+")";const Np="(?:\\s+"+_p+"(?:\\s*=\\s*"+qp+")?)";const Tp="<[A-Za-z][A-Za-z0-9\\-]*"+Np+"*\\s*\\/?>";const zp="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>";const Ip="\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e";const Pp="<[?][\\s\\S]*?[?]>";const Jp="<![A-Za-z][^>]*>";const Lp="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>";const Up=new RegExp("^(?:"+Tp+"|"+zp+"|"+Ip+"|"+Pp+"|"+Jp+"|"+Lp+")");const Wp=new RegExp("^(?:"+Tp+"|"+zp+")");const Hp=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,true],[/^<!--/,/-->/,true],[/^<\?/,/\?>/,true],[/^<![A-Z]/,/>/,true],[/^<!\[CDATA\[/,/\]\]>/,true],[new RegExp("^</?("+$p.join("|")+")(?=(\\s|/?>|$))","i"),/^$/,true],[new RegExp(Wp.source+"\\s*$"),/^$/,false]];function Zp(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<Hp.length;o++){if(Hp[o][0].test(l)){break}}if(o===Hp.length){return false}if(r){return Hp[o][2]}let u=e+1;if(!Hp[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(Hp[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 Kp(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&&!Od(l)){return false}if(r){return true}s=t.skipSpacesBack(s,n);const u=t.skipCharsBack(s,35,n);if(u>n&&Od(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 Vp(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 Gp(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 Xp=[["table",vp,["paragraph","reference"]],["code",yp],["fence",Fp,["paragraph","reference","blockquote","list"]],["blockquote",Ep,["paragraph","reference","blockquote","list"]],["hr",xp,["paragraph","reference","blockquote","list"]],["list",Sp,["paragraph","reference","blockquote"]],["reference",Op],["html_block",Zp,["paragraph","reference","blockquote"]],["heading",Kp,["paragraph","reference","blockquote"]],["lheading",Vp],["paragraph",Gp]];function Yp(){this.ruler=new Ld;for(let t=0;t<Xp.length;t++){this.ruler.push(Xp[t][0],Xp[t][1],{alt:(Xp[t][2]||[]).slice()})}}Yp.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}}};Yp.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)};Yp.prototype.State=gp;function Qp(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}Qp.prototype.pushPending=function(){const t=new Ud("text","",0);t.content=this.pending;t.level=this.pendingLevel;this.tokens.push(t);this.pending="";return t};Qp.prototype.push=function(t,e,i){if(this.pending){this.pushPending()}const r=new Ud(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};Qp.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=Bd(n)||_d(String.fromCharCode(n));const f=Bd(o)||_d(String.fromCharCode(o));const h=$d(n);const a=$d(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}};Qp.prototype.Token=Ud;function tm(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 em(t,e){let i=t.pos;while(i<t.posMax&&!tm(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 im=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function rm(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(im);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 nm(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&&Od(t.src.charCodeAt(i))){i++}t.pos=i;return true}const sm=[];for(let t=0;t<256;t++){sm.push(0)}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(t){sm[t.charCodeAt(0)]=1}));function lm(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(!Od(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&&sm[n]!==0){e.content=s}else{e.content=l}e.markup=l;e.info="escape"}t.pos=i+1;return true}function om(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 um(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 fm(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 hm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;fm(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){fm(t,e[r].delimiters)}}}const am={tokenize:um,postProcess:hm};function cm(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 dm(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 pm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;dm(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){dm(t,e[r].delimiters)}}}const mm={tokenize:cm,postProcess:pm};function wm(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(!Od(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(!Od(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(!Od(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[jd(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 gm(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(!Od(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(!Od(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(!Od(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[jd(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 bm=/^([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 km=/^([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(km.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(bm.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 vm(t){return/^<a[>\s]/i.test(t)}function ym(t){return/^<\/a\s*>/i.test(t)}function Fm(t){const e=t|32;return e>=97&&e<=122}function Em(t,e){if(!t.md.options.html){return false}const i=t.posMax;const r=t.pos;if(t.src.charCodeAt(r)!==60||r+2>=i){return false}const n=t.src.charCodeAt(r+1);if(n!==33&&n!==63&&n!==47&&!Fm(n)){return false}const s=t.src.slice(r).match(Up);if(!s){return false}if(!e){const e=t.push("html_inline","",0);e.content=s[0];if(vm(e.content))t.linkLevel++;if(ym(e.content))t.linkLevel--}t.pos+=s[0].length;return true}const xm=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i;const Mm=/^&([a-z][a-z0-9]{1,31});/i;function Am(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(xm);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=pd(e)?md(e):md(65533);i.markup=r[0];i.info="entity"}t.pos+=r[0].length;return true}}else{const r=t.src.slice(i).match(Mm);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 Cm(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 Sm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;Cm(t.delimiters);for(let t=0;t<i;t++){if(e[t]&&e[t].delimiters){Cm(e[t].delimiters)}}}function Om(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 $m=[["text",em],["linkify",rm],["newline",nm],["escape",lm],["backticks",om],["strikethrough",am.tokenize],["emphasis",mm.tokenize],["link",wm],["image",gm],["autolink",Dm],["html_inline",Em],["entity",Am]];const _m=[["balance_pairs",Sm],["strikethrough",am.postProcess],["emphasis",mm.postProcess],["fragments_join",Om]];function Bm(){this.ruler=new Ld;for(let t=0;t<$m.length;t++){this.ruler.push($m[t][0],$m[t][1])}this.ruler2=new Ld;for(let t=0;t<_m.length;t++){this.ruler2.push(_m[t][0],_m[t][1])}}Bm.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};Bm.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()}};Bm.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)}};Bm.prototype.State=Qp;function jm(t){const e={};t=t||{};e.src_Any=ed.source;e.src_Cc=id.source;e.src_Z=ld.source;e.src_P=nd.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 Rm(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 qm(t){return Object.prototype.toString.call(t)}function Nm(t){return qm(t)==="[object String]"}function Tm(t){return qm(t)==="[object Object]"}function zm(t){return qm(t)==="[object RegExp]"}function Im(t){return qm(t)==="[object Function]"}function Pm(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const Jm={fuzzyLink:true,fuzzyEmail:true,fuzzyIP:false};function Lm(t){return Object.keys(t||{}).reduce((function(t,e){return t||Jm.hasOwnProperty(e)}),false)}const Um={"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 Wm="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 Hm="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Zm(t){t.__index__=-1;t.__text_cache__=""}function Km(t){return function(e,i){const r=e.slice(i);if(t.test(r)){return r.match(t)[0].length}return 0}}function Vm(){return function(t,e){e.normalize(t)}}function Gm(t){const e=t.re=jm(t.__opts__);const i=t.__tlds__.slice();t.onCompile();if(!t.__tlds_replaced__){i.push(Wm)}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(Tm(i)){if(zm(i.validate)){r.validate=Km(i.validate)}else if(Im(i.validate)){r.validate=i.validate}else{s(e,i)}if(Im(i.normalize)){r.normalize=i.normalize}else if(!i.normalize){r.normalize=Vm()}else{s(e,i)}return}if(Nm(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:Vm()};const l=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(Pm).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");Zm(t)}function Xm(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 Ym(t,e){const i=new Xm(t,e);t.__compiled__[i.schema].normalize(i,t);return i}function Qm(t,e){if(!(this instanceof Qm)){return new Qm(t,e)}if(!e){if(Lm(t)){e=t;t={}}}this.__opts__=Rm({},Jm,e);this.__index__=-1;this.__last_index__=-1;this.__schema__="";this.__text_cache__="";this.__schemas__=Rm({},Um,t);this.__compiled__={};this.__tlds__=Hm;this.__tlds_replaced__=false;this.re={};Gm(this)}Qm.prototype.add=function t(e,i){this.__schemas__[e]=i;Gm(this);return this};Qm.prototype.set=function t(e){this.__opts__=Rm(this.__opts__,e);return this};Qm.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};Qm.prototype.pretest=function t(e){return this.re.pretest.test(e)};Qm.prototype.testSchemaAt=function t(e,i,r){if(!this.__compiled__[i.toLowerCase()]){return 0}return this.__compiled__[i.toLowerCase()].validate(e,r,this)};Qm.prototype.match=function t(e){const i=[];let r=0;if(this.__index__>=0&&this.__text_cache__===e){i.push(Ym(this,r));r=this.__last_index__}let n=r?e.slice(r):e;while(this.test(n)){i.push(Ym(this,r));n=n.slice(this.__last_index__);r+=this.__last_index__}if(i.length){return i}return null};Qm.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 Ym(this,0)};Qm.prototype.tlds=function t(e,i){e=Array.isArray(e)?e:[e];if(!i){this.__tlds__=e.slice();this.__tlds_replaced__=true;Gm(this);return this}this.__tlds__=this.__tlds__.concat(e).sort().filter((function(t,e,i){return t!==i[e-1]})).reverse();Gm(this);return this};Qm.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}};Qm.prototype.onCompile=function t(){};const tw=2147483647;const ew=36;const iw=1;const rw=26;const nw=38;const sw=700;const lw=72;const ow=128;const uw="-";const fw=/^xn--/;const hw=/[^\0-\x7F]/;const aw=/[\x2E\u3002\uFF0E\uFF61]/g;const cw={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const dw=ew-iw;const pw=Math.floor;const mw=String.fromCharCode;function ww(t){throw new RangeError(cw[t])}function gw(t,e){const i=[];let r=t.length;while(r--){i[r]=e(t[r])}return i}function bw(t,e){const i=t.split("@");let r="";if(i.length>1){r=i[0]+"@";t=i[1]}t=t.replace(aw,".");const n=t.split(".");const s=gw(n,e).join(".");return r+s}function kw(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 vw=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 ew};const yw=function(t,e){return t+22+75*(t<26)-((e!=0)<<5)};const Fw=function(t,e,i){let r=0;t=i?pw(t/sw):t>>1;t+=pw(t/e);for(;t>dw*rw>>1;r+=ew){t=pw(t/dw)}return pw(r+(dw+1)*t/(t+nw))};const Ew=function(t){const e=[];const i=t.length;let r=0;let n=ow;let s=lw;let l=t.lastIndexOf(uw);if(l<0){l=0}for(let i=0;i<l;++i){if(t.charCodeAt(i)>=128){ww("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=ew;;n+=ew){if(o>=i){ww("invalid-input")}const l=vw(t.charCodeAt(o++));if(l>=ew){ww("invalid-input")}if(l>pw((tw-r)/e)){ww("overflow")}r+=l*e;const u=n<=s?iw:n>=s+rw?rw:n-s;if(l<u){break}const f=ew-u;if(e>pw(tw/f)){ww("overflow")}e*=f}const u=e.length+1;s=Fw(r-l,u,l==0);if(pw(r/u)>tw-n){ww("overflow")}n+=pw(r/u);r%=u;e.splice(r++,0,n)}return String.fromCodePoint(...e)};const xw=function(t){const e=[];t=kw(t);const i=t.length;let r=ow;let n=0;let s=lw;for(const i of t){if(i<128){e.push(mw(i))}}const l=e.length;let o=l;if(l){e.push(uw)}while(o<i){let i=tw;for(const e of t){if(e>=r&&e<i){i=e}}const u=o+1;if(i-r>pw((tw-n)/u)){ww("overflow")}n+=(i-r)*u;r=i;for(const i of t){if(i<r&&++n>tw){ww("overflow")}if(i===r){let t=n;for(let i=ew;;i+=ew){const r=i<=s?iw:i>=s+rw?rw:i-s;if(t<r){break}const n=t-r;const l=ew-r;e.push(mw(yw(r+n%l,0)));t=pw(n/l)}e.push(mw(yw(t,0)));s=Fw(n,u,o===l);n=0;++o}}++n;++r}return e.join("")};const Mw=function(t){return bw(t,(function(t){return fw.test(t)?Ew(t.slice(4).toLowerCase()):t}))};const Aw=function(t){return bw(t,(function(t){return hw.test(t)?"xn--"+xw(t):t}))};const Cw={version:"2.3.1",ucs2:{decode:kw,encode:Dw},decode:Ew,encode:xw,toASCII:Aw,toUnicode:Mw};const Sw={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}};const Ow={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 $w={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 _w={default:Sw,zero:Ow,commonmark:$w};const Bw=/^(vbscript|javascript|file|data):/;const jw=/^data:image\/(gif|png|jpeg|webp);/;function Rw(t){const e=t.trim().toLowerCase();return Bw.test(e)?jw.test(e):true}const qw=["http:","https:","mailto:"];function Nw(t){const e=Qc(t,true);if(e.hostname){if(!e.protocol||qw.indexOf(e.protocol)>=0){try{e.hostname=Cw.toASCII(e.hostname)}catch(t){}}}return Nc(Tc(e))}function Tw(t){const e=Qc(t,true);if(e.hostname){if(!e.protocol||qw.indexOf(e.protocol)>=0){try{e.hostname=Cw.toUnicode(e.hostname)}catch(t){}}}return jc(Tc(e),jc.defaultChars+"%")}function zw(t,e){if(!(this instanceof zw)){return new zw(t,e)}if(!e){if(!fd(t)){e=t||{};t="default"}}this.inline=new Bm;this.block=new Yp;this.core=new wp;this.renderer=new Jd;this.linkify=new Qm;this.validateLink=Rw;this.normalizeLink=Nw;this.normalizeLinkText=Tw;this.utils=qd;this.helpers=cd({},Id);this.options={};this.configure(t);if(e){this.set(e)}}zw.prototype.set=function(t){cd(this.options,t);return this};zw.prototype.configure=function(t){const e=this;if(fd(t)){const e=t;t=_w[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};zw.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};zw.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};zw.prototype.use=function(t){const e=[this].concat(Array.prototype.slice.call(arguments,1));t.apply(t,e);return this};zw.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};zw.prototype.render=function(t,e){e=e||{};return this.renderer.render(this.parse(t,e),this.options,e)};zw.prototype.parseInline=function(t,e){const i=new this.core.State(t,this,e);i.inlineMode=true;this.core.process(i);return i.tokens};zw.prototype.renderInline=function(t,e){e=e||{};return this.renderer.render(this.parseInline(t,e),this.options,e)};const Iw=new ci({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 Pw(t,e){if(t.isText&&e.isText&&De.sameSet(t.marks,e.marks))return t.withText(t.text+e.text)}class Jw{constructor(t,e){this.schema=t;this.tokenHandlers=e;this.stack=[{type:t.topNodeType,attrs:null,content:[],marks:De.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=Pw(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:De.none})}closeNode(){let t=this.stack.pop();return this.addNode(t.type,t.attrs,t.content)}}function Lw(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 Uw(t,e){return t.noCloseToken||e=="code_inline"||e=="code_block"||e=="fence"}function Ww(t){return t[t.length-1]=="\n"?t.slice(0,t.length-1):t}function Hw(){}function Zw(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(Uw(n,r)){i[r]=(t,i,r,s)=>{t.openNode(e,Lw(n,i,r,s));t.addText(Ww(i.content));t.closeNode()}}else{i[r+"_open"]=(t,i,r,s)=>t.openNode(e,Lw(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,Lw(n,i,r,s))}else if(n.mark){let e=t.marks[n.mark];if(Uw(n,r)){i[r]=(t,i,r,s)=>{t.openMark(e.create(Lw(n,i,r,s)));t.addText(Ww(i.content));t.closeMark(e)}}else{i[r+"_open"]=(t,i,r,s)=>t.openMark(e.create(Lw(n,i,r,s)));i[r+"_close"]=t=>t.closeMark(e)}}else if(n.ignore){if(Uw(n,r)){i[r]=Hw}else{i[r+"_open"]=Hw;i[r+"_close"]=Hw}}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 Kw{constructor(t,e,i){this.schema=t;this.tokenizer=e;this.tokens=i;this.tokenHandlers=Zw(t,i)}parse(t,e={}){let i=new Jw(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 Vw(t,e){while(++e<t.length)if(t[e].type!="list_item_open")return t[e].hidden;return false}new Kw(Iw,zw("commonmark",{html:false}),{blockquote:{block:"blockquote"},paragraph:{block:"paragraph"},list_item:{block:"list_item"},bullet_list:{block:"bullet_list",getAttrs:(t,e,i)=>({tight:Vw(e,i)})},ordered_list:{block:"ordered_list",getAttrs:(t,e,i)=>({order:+t.attrGet("start")||1,tight:Vw(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}});const Gw={open:"",close:"",mixable:true};class Xw{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 eg(this.nodes,this.marks,e);i.renderContent(t);return i.out}}const Yw=new Xw({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=tg(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 Qw(i.child(r),-1)},close(t,e,i,r){return Qw(i.child(r-1),1)},escape:false}});function Qw(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 tg(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 eg{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}}getMark(t){let e=this.marks[t];if(!e){if(this.options.strict!==false)throw new Error(`Mark type \`${t}\` not supported by Markdown renderer`);e=Gw}return e}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]){this.nodes[t.type.name](this,t,e,i)}else{if(this.options.strict!==false){throw new Error("Token type `"+t.type.name+"` not supported by Markdown renderer")}else if(!t.type.isLeaf){if(t.type.inlineContent)this.renderInline(t);else this.renderContent(t);if(t.isBlock)this.closeBlock(t)}}}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.getMark(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.getMark(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.getMark(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.getMark(e.type.name).mixable)break;for(let r=0;r<i.length;r++){let n=i[r];if(!this.getMark(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.getMark(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 ig=t=>(e,i)=>{const r=`<${t.tagName}`+t.attributes.map((t=>` ${t}="${i.attrs[t]}"`)).join("")+">";const n=`</${t.tagName}>`;e.write(`${r}${n}`)};const rg=t=>{const e={};t.forEach((t=>{e[t.tagName]=ig(t)}));const i=Object.assign(Object.assign({},Yw.nodes),e);const r=Object.assign(Object.assign({},Yw.marks),{strikethrough:{open:"~~",close:"~~",mixable:true,expelEnclosingWhitespace:true}});return new Xw(i,r)};class ng{constructor(t){this.parseAsHTML=t=>{const e=this.customNodes.map((t=>({tagName:t.tagName,attributes:t.attributes})));return M(t,{whitelist:e})};this.serialize=t=>{if(t.dom.textContent===""){return""}else{return this.markdownSerializer.serialize(t.state.doc)}};this.markdownSerializer=rg(t);this.customNodes=t}}class sg{constructor(){this.parseAsHTML=t=>new Promise((e=>{e(t)}));this.serialize=t=>{if(t.dom.textContent===""){return""}else{return t.dom.innerHTML}}}}const lg={parseDOM:[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration=line-through"}],toDOM:()=>["s",0]};const og=new Dn("linkPlugin");const ug=(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 fg=(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===lc.Link&&t.attrs.href===i))){break}e--}return e};const hg=(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===lc.Link&&t.attrs.href===i))){break}e++}return e};const ag=(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===lc.Link));if(!n){return null}const s=n.attrs.href;const l=fg(t.state.doc,i.pos,s);const o=hg(t.state.doc,i.pos,s);const u=t.state.doc.textBetween(l,o," ");return{href:s,text:u,from:l,to:o}};const cg=(t,e)=>{const{href:i}=ag(t,e);if(i){window.open(i,"_blank");return true}return false};const dg=(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 pg=0;const mg=200;let wg;const gg=(t,e)=>{const i=Date.now();if(i-pg<mg){clearTimeout(wg);pg=i;return false}pg=i;wg=setTimeout((()=>{const i=ag(t,e);if(i){const{href:e,text:r,from:n,to:s}=i;const l=t.state.tr.setSelection(Yr.create(t.state.doc,n,s));t.dispatch(l);dg(t,e,r)}}),mg);return true};const bg=(t,e)=>{const i=e.clipboardData;if(!i){return false}const r=i.getData("text/plain");if(bc(r)){kg(t,r);return true}return false};const kg=(t,e)=>{const{state:i,dispatch:r}=t;const{from:n,to:s}=i.selection;const l=Wu.marks.link.create({href:e,title:e,target:wc(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 Dg=t=>new gn({key:og,props:{handlePaste:(t,e)=>bg(t,e),handleDOMEvents:{mousedown:(t,e)=>{if((e.metaKey||e.ctrlKey)&&e.button===0){return cg(t,e)}if(e.button!==fc.Right){return gg(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=>{ug(e,t)}})});const vg=new Dn("imageRemoverPlugin");const yg=()=>new gn({key:vg,props:{handlePaste:(t,e,i)=>xg(t,e,i)}});const Fg=t=>{if(t instanceof Pe){if(t.type.name==="image"){return true}let e=false;t.content.forEach((t=>{if(Fg(t)){e=true}}));return e}else if(t instanceof we){let e=false;t.forEach((t=>{if(Fg(t)){e=true}}));return e}return false};const Eg=t=>{const e=[];t.forEach((t=>{if(!Fg(t)){if(t.content.size>0){const i=Eg(t.content);const r=t.copy(i);e.push(r)}else{e.push(t)}}}));return we.fromArray(e)};const xg=(t,e,i)=>{const r=e.clipboardData;if(!r){return false}const n=new ye(Eg(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 Mg=new Dn("actionBarPlugin");const Ag=(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 Cg=(t,e,i)=>new gn({key:Mg,state:{init:()=>({}),apply:(t,e)=>{const i=t.getMeta(Mg);return i?i:e}},view:()=>({update:r=>{const n=Mg.getState(r.state);const s=Ag(t,e,r);if(!O(n,s)){const t=r.state.tr.setMeta(Mg,s);r.dispatch(t);i(s)}}})});const Sg=new Dn("actionBarInteractionPlugin");const Og=(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 $g=t=>new gn({key:Sg,props:{handleDOMEvents:{actionBarItemClick:(e,i)=>{i.preventDefault();i.stopPropagation();const{value:r}=i.detail;try{const i=t.getCommand(r);Og(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===lc.Link){try{const i=t.getCommand(r,n);Og(i,e)}catch(t){console.error(`Error executing command: ${t}`)}}return true}}}});const _g=t=>{const e=t.attributes.reduce(((t,e)=>{t[e]={};return t}),{});return{group:"inline",inline:true,atom:false,selectable:true,attrs:e,toDOM:e=>[t.tagName,t.attributes.reduce(((t,i)=>{t[i]=e.attrs[i];return t}),{})],parseDOM:[{tag:`${t.tagName}[${t.attributes.map((t=>t)).join("][")}]`,getAttrs:e=>t.attributes.reduce(((t,i)=>{t[i]=e.getAttribute(i);return t}),{})}]}};const Bg=t=>{const e=qg(t);return{insert:i=>{const{state:r,dispatch:n}=t;const{schema:s,selection:l}=r;const{$from:o}=l;let u;try{u=jg(i,s)}catch(t){console.error(t.message);return}const f=s.text(" ");const h=s.nodes.doc.create(null,[u,f]);const a=r.tr.replaceWith(e,o.pos,h);a.setMeta("stopTrigger",true);n(a)}}};const jg=(t,e)=>{var i;if(typeof t==="string"){return e.text(t)}const r=t.node;if(typeof r==="string"){return e.text(r)}const n=Rg(r.tagName,e);const s=((i=t.children)!==null&&i!==void 0?i:[]).map((t=>jg(t,e))).filter(Boolean);return n.create(r.attributes,s)};const Rg=(t,e)=>{const i=Object.values(e.nodes).find((e=>e.name===t));if(!i){throw new Error(`A custom element hasn't been registered for node ${t}`)}return i};const qg=t=>{var e,i,r;return(r=(i=(e=t.state)===null||e===void 0?void 0:e.selection)===null||i===void 0?void 0:i.$from)===null||r===void 0?void 0:r.pos};const Ng=(t,e)=>t.length===1&&e.includes(t);const Tg=t=>{const{$from:e}=t.selection;if(e.pos===1){return true}const i=e.pos-1;if(i>0){if(e.parentOffset===0){return true}const r=t.doc.textBetween(i,e.pos);return r===" "||r==="\n"}return false};const zg=(t,e,i,r)=>{const n=t.selection.$from.pos;if(n<i||n>i+r+1){return false}return t.doc.textBetween(i,i+1)===e};const Ig=(t,e,i)=>({trigger:e,textEditor:Bg(t),value:i});const Pg=(t,e,i,r)=>{const n=new CustomEvent(t,{detail:Ig(e,i,r),bubbles:true,composed:true});e.dom.dispatchEvent(n)};const Jg=(t,e,i)=>{let r="";let n="";e.forEach((t=>{if(t.docChanged){t.steps.forEach((t=>{if(t instanceof rr||t instanceof nr){const e=t.slice;const s=t.from;const l=t.to;if(e===null||e===void 0?void 0:e.size){r+=e.content.textBetween(0,e.size)}else if(s!==l){const t=i.doc.textBetween(s,l);n+=t}}}))}}));if(r){t+=r}else if(n){t=t.slice(0,-n.length)}return t};const Lg=t=>{let e=null;let i="";let r=null;let n=null;const s=()=>{i="";Pg("triggerStop",r,e,i);n=null;e=null};const l=(r,l)=>{const{state:o}=r;if(l.key==="Escape"){s();return true}if(Ng(l.key,t)&&Tg(o)){e=l.key;i="";n=o.selection.$from.pos-i.length;Pg("triggerStart",r,e,i);return false}return false};const o=(t,s,l)=>{if(!e||!n||!r){return}if(!zg(l,e,n,i.length)){return}const o=Jg(i,t,s);if(o!==i){i=o;Pg("triggerChange",r,e,i.slice(1))}};return new gn({key:new Dn("triggerPlugin"),view:t=>{r=t;return{}},state:{init:()=>({}),apply:t=>{if(t.getMeta("stopTrigger")){s()}return{}}},props:{handleKeyDown:l},appendTransaction:o})};const Ug='@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) .toolbar{order:1}:host(limel-prosemirror-adapter) div#editor{order:2;height:100%;flex-grow:1}:host(limel-prosemirror-adapter) div[contenteditable=true]{height:100%}*{box-sizing:border-box}:host(limel-prosemirror-adapter:hover) .toolbar,:host(limel-prosemirror-adapter:focus-within) .toolbar{will-change:grid-template-rows}:host(limel-prosemirror-adapter:hover) limel-action-bar,:host(limel-prosemirror-adapter:focus-within) limel-action-bar{will-change:opacity, padding}:host(limel-prosemirror-adapter:hover) .ProseMirror,:host(limel-prosemirror-adapter:focus-within) .ProseMirror{will-change:padding}.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}.toolbar{--action-bar-border-radius:0.25rem;border-radius:var(--action-bar-border-radius);flex-shrink:0;position:sticky;z-index:1;top:0;width:100%;display:grid;grid-template-rows:var(--limel-prosemirror-adapter-toolbar-grid-template-rows);transition-property:grid-template-rows;transition-duration:var(--limel-prosemirror-adapter-toolbar-grid-template-rows-transition-duration);transition-timing-function:var(--limel-prosemirror-adapter-toolbar-transition-timing-function);background-color:rgba(var(--contrast-200), 0.5);backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem)}limel-action-bar{min-width:0;transition-property:padding, opacity;transition-duration:var(--limel-prosemirror-adapter-toolbar-grid-template-rows-transition-duration);transition-timing-function:var(--limel-prosemirror-adapter-toolbar-transition-timing-function);opacity:var(--limel-prosemirror-adapter-toolbar-opacity);padding:var(--limel-prosemirror-adapter-action-bar-padding-top-bottom, 0.125rem) 0.25rem;background-color:transparent;overflow:hidden}.ProseMirror{transition-duration:padding;transition-duration:var(--limel-prosemirror-adapter-toolbar-grid-template-rows-transition-duration);transition-timing-function:var(--limel-prosemirror-adapter-toolbar-transition-timing-function);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 Wg=300;const Hg=class{constructor(i){t(this,i);this.change=e(this,"change",7);this.changeWaiting=false;this.suppressChangeEvent=false;this.getActionBarItems=()=>{this.actionBarItems=Oc().map(this.getTranslatedItem)};this.getTranslatedItem=t=>{const e=ce(t);if(S(t)){const i=$c[t.value];if(i){e.text=A.get(i,this.language)}}return e};this.updateActiveActionBarItems=t=>{const e=Oc().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||t.getMeta("pointer")){return}const i=this.contentConverter.serialize(this.view,this.schema);if(i===this.lastEmittedValue){return}this.lastEmittedValue=i;this.changeWaiting=true;this.changeEmitter(i)};this.handleActionBarItem=t=>{t.preventDefault();t.stopImmediatePropagation();const{value:e}=t.detail;if(e===lc.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:"https://"}};this.handleSaveLinkMenu=()=>{this.isLinkMenuOpen=false;const t=new CustomEvent("saveLinkMenu",{detail:{type:lc.Link,link:this.link}});this.view.dom.dispatchEvent(t);this.link={href:"https://"}};this.handleLinkChange=t=>{this.link=t.detail};this.handleNewLinkSelection=(t,e)=>{this.link.text=t;this.link.href=e||"https://"};this.handleOpenLinkMenu=t=>{t.stopImmediatePropagation();const{href:e,text:i}=t.detail;this.link={href:e,text:i};this.isLinkMenuOpen=true};this.changeEmitter=$((t=>{this.change.emit(t);this.changeWaiting=false}),Wg);this.handleBlur=()=>{this.changeEmitter.flush()};this.contentType="markdown";this.value=undefined;this.language=undefined;this.customElements=[];this.triggerCharacters=[];this.view=undefined;this.actionBarItems=[];this.link={href:"https://"};this.isLinkMenuOpen=false;this.portalId=C()}watchValue(t){if(!this.view){return}if(this.changeWaiting){return}const e=this.contentConverter.serialize(this.view,this.schema);if(t===e){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(){var t,e,i;this.host.removeEventListener("open-editor-link-menu",this.handleOpenLinkMenu);(e=(t=this.view)===null||t===void 0?void 0:t.dom)===null||e===void 0?void 0:e.removeEventListener("blur",this.handleBlur);(i=this.view)===null||i===void 0?void 0:i.destroy()}render(){return[i("div",{id:"editor"}),i("div",{class:"toolbar"},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",{containerId:this.portalId,visible:this.isLinkMenuOpen,openDirection:"top",inheritParentWidth:true,anchor:this.actionBarElement},i("limel-text-editor-link-menu",{link:this.link,isOpen:this.isLinkMenuOpen,onLinkChange:this.handleLinkChange,onCancel:this.handleCancelLinkMenu,onSave:this.handleSaveLinkMenu}))}setupContentConverter(){if(this.contentType==="markdown"){this.contentConverter=new ng(this.customElements)}else if(this.contentType==="html"){this.contentConverter=new sg}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 xc(this.schema);this.view=new Au(this.host.shadowRoot.querySelector("#editor"),{state:this.createEditorState(t),dispatchTransaction:this.handleTransaction});this.view.dom.addEventListener("blur",this.handleBlur);if(this.value){this.updateView(this.value)}}initializeSchema(){let t=Wu.spec.nodes;this.customElements.forEach((e=>{const i=_g(e);const r=e.tagName;t=t.append({[r]:i})}));t=Qu(t,"paragraph block*","block");return new ci({nodes:t,marks:Wu.spec.marks.append({strikethrough:lg})})}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 wi.fromSchema(this.schema).parse(t)}createEditorState(t){return mn.create({doc:t,plugins:[...sc({schema:this.schema,menuBar:false}),kf(this.menuCommandFactory.buildKeymap()),Dg(this.handleNewLinkSelection),Lg(this.triggerCharacters),yg(),Cg(oc,this.menuCommandFactory,this.updateActiveActionBarItems),$g(this.menuCommandFactory)]})}async updateView(t){this.suppressChangeEvent=true;const e=await this.contentConverter.parseAsHTML(t,this.schema);const i=wi.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"]}}};Hg.style=Ug;export{Hg 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,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-086509a5.js";import{t as A}from"./p-fe15bcbb.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{d as $}from"./p-18c97232.js";import"./p-eda23c05.js";import"./p-4c3358cb.js";import"./p-9acf7b5d.js";import"./p-5fdb83c9.js";import"./p-eab67c09.js";import"./p-365098fe.js";import"./p-d529bb7d.js";var _=Object.create;var B=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 j(t,e){var i=-1,r=t.length;e||(e=Array(r));while(++i<r){e[i]=t[i]}return e}function R(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 N(t,e){return t&&q(e,n(e),t)}function T(t,e){return t&&q(e,w(e),t)}var z=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var I=z&&typeof module=="object"&&module&&!module.nodeType&&module;var P=I&&I.exports===z;var J=P?v.Buffer:undefined,L=J?J.allocUnsafe:undefined;function U(t,e){if(e){return t.slice()}var i=t.length,r=L?L(i):new t.constructor(i);t.copy(r);return r}function W(t,e){return q(t,s(t),e)}function H(t,e){return q(t,g(t),e)}var Z=Object.prototype;var K=Z.hasOwnProperty;function V(t){var e=t.length,i=new t.constructor(e);if(e&&typeof t[0]=="string"&&K.call(t,"index")){i.index=t.index;i.input=t.input}return i}function G(t){var e=new t.constructor(t.byteLength);new l(e).set(new l(t));return e}function X(t,e){var i=e?G(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.byteLength)}var Y=/\w*$/;function Q(t){var e=new t.constructor(t.source,Y.exec(t));e.lastIndex=t.lastIndex;return e}var tt=y?y.prototype:undefined,et=tt?tt.valueOf:undefined;function it(t){return et?Object(et.call(t)):{}}function rt(t,e){var i=e?G(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.length)}var nt="[object Boolean]",st="[object Date]",lt="[object Map]",ot="[object Number]",ut="[object RegExp]",ft="[object Set]",ht="[object String]",at="[object Symbol]";var ct="[object ArrayBuffer]",dt="[object DataView]",pt="[object Float32Array]",mt="[object Float64Array]",wt="[object Int8Array]",gt="[object Int16Array]",bt="[object Int32Array]",kt="[object Uint8Array]",Dt="[object Uint8ClampedArray]",vt="[object Uint16Array]",yt="[object Uint32Array]";function Ft(t,e,i){var r=t.constructor;switch(e){case ct:return G(t);case nt:case st:return new r(+t);case dt:return X(t,i);case pt:case mt:case wt:case gt:case bt:case kt:case Dt:case vt:case yt:return rt(t,i);case lt:return new r;case ot:case ht:return new r(t);case ut:return Q(t);case ft:return new r;case at:return it(t)}}function Et(t){return typeof t.constructor=="function"&&!o(t)?B(b(t)):{}}var xt="[object Map]";function Mt(t){return E(t)&&u(t)==xt}var At=h&&h.isMap;var Ct=At?f(At):Mt;var St="[object Set]";function Ot(t){return E(t)&&u(t)==St}var $t=h&&h.isSet;var _t=$t?f($t):Ot;var Bt=1,jt=2,Rt=4;var qt="[object Arguments]",Nt="[object Array]",Tt="[object Boolean]",zt="[object Date]",It="[object Error]",Pt="[object Function]",Jt="[object GeneratorFunction]",Lt="[object Map]",Ut="[object Number]",Wt="[object Object]",Ht="[object RegExp]",Zt="[object Set]",Kt="[object String]",Vt="[object Symbol]",Gt="[object WeakMap]";var Xt="[object ArrayBuffer]",Yt="[object DataView]",Qt="[object Float32Array]",te="[object Float64Array]",ee="[object Int8Array]",ie="[object Int16Array]",re="[object Int32Array]",ne="[object Uint8Array]",se="[object Uint8ClampedArray]",le="[object Uint16Array]",oe="[object Uint32Array]";var ue={};ue[qt]=ue[Nt]=ue[Xt]=ue[Yt]=ue[Tt]=ue[zt]=ue[Qt]=ue[te]=ue[ee]=ue[ie]=ue[re]=ue[Lt]=ue[Ut]=ue[Wt]=ue[Ht]=ue[Zt]=ue[Kt]=ue[Vt]=ue[ne]=ue[se]=ue[le]=ue[oe]=true;ue[It]=ue[Pt]=ue[Gt]=false;function fe(t,e,i,r,s,l){var o,f=e&Bt,h=e&jt,p=e&Rt;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=V(t);if(!f){return j(t,o)}}else{var b=u(t),v=b==Pt||b==Jt;if(a(t)){return U(t,f)}if(b==Wt||b==qt||v&&!s){o=h||v?{}:Et(t);if(!f){return h?H(t,T(o,t)):W(t,N(o,t))}}else{if(!ue[b]){return s?t:{}}o=Ft(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(fe(r,e,i,r,t,l))}))}else if(Ct(t)){t.forEach((function(r,n){o.set(n,fe(r,e,i,n,t,l))}))}var E=p?h?k:d:h?w:n;var x=g?undefined:E(t);R(x||t,(function(r,n){if(x){n=r;r=t[n]}m(o,n,fe(r,e,i,n,t,l))}));return o}var he=1,ae=4;function ce(t){return fe(t,he|ae)}function de(t){this.content=t}de.prototype={constructor:de,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 de(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 de(i)},addToStart:function(t,e){return new de([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var i=this.remove(t).content.slice();i.push(t,e);return new de(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 de(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=de.from(t);if(!t.size)return this;return new de(t.content.concat(this.subtract(t).content))},append:function(t){t=de.from(t);if(!t.size)return this;return new de(this.subtract(t).content.concat(t.content))},subtract:function(t){var e=this;t=de.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}};de.from=function(t){if(t instanceof de)return t;var e=[];if(t)for(var i in t)e.push(i,t[i]);return new de(e)};function pe(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=pe(n.content,s.content,i+1);if(t!=null)return t}i+=n.nodeSize}}function me(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=me(l.content,o.content,i-1,r-1);if(t)return t}i-=u;r-=u}}class we{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 we(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 we(i,r)}cutByIndex(t,e){if(t==e)return we.empty;if(t==0&&e==this.content.length)return this;return new we(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 we(r,n)}addToStart(t){return new we([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new we(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 pe(this,t,e)}findDiffEnd(t,e=this.size,i=t.size){return me(this,t,e,i)}findIndex(t,e=-1){if(t==0)return be(0,t);if(t==this.size)return be(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 be(i+1,s);return be(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 we.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new we(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return we.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 we(e||t,i)}static from(t){if(!t)return we.empty;if(t instanceof we)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new we([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}we.empty=new we([],0);const ge={index:0,offset:0};function be(t,e){ge.index=t;ge.offset=e;return ge}function ke(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(!ke(t[i],e[i]))return false}else{for(let i in t)if(!(i in e)||!ke(t[i],e[i]))return false;for(let i in e)if(!(i in t))return false}return true}class De{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&&ke(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`);let r=i.create(e.attrs);i.checkAttrs(r.attrs);return r}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 De.none;if(t instanceof De)return[t];let e=t.slice();e.sort(((t,e)=>t.type.rank-e.type.rank));return e}}De.none=[];class ve extends Error{}class ye{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=Ee(this.content,t+this.openStart,e);return i&&new ye(i,this.openStart,this.openEnd)}removeBetween(t,e){return new ye(Fe(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 ye.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 ye(we.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 ye(t,i,r)}}ye.empty=new ye(we.empty,0,0);function Fe(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(Fe(s.content,e-n-1,i-n-1)))}function Ee(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=Ee(l.content,e-s-1,i);return o&&t.replaceChild(n,l.copy(o))}function xe(t,e,i){if(i.openStart>t.depth)throw new ve("Inserted content deeper than insertion position");if(t.depth-i.openStart!=e.depth-i.openEnd)throw new ve("Inconsistent open depths");return Me(t,e,i,0)}function Me(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=Me(t,e,i,r+1);return s.copy(s.content.replaceChild(n,l))}else if(!i.content.size){return $e(s,Be(t,e,r))}else if(!i.openStart&&!i.openEnd&&t.depth==r&&e.depth==r){let r=t.parent,n=r.content;return $e(r,n.cut(0,t.parentOffset).append(i.content).append(n.cut(e.parentOffset)))}else{let{start:n,end:l}=je(i,t);return $e(s,_e(t,n,l,e,r))}}function Ae(t,e){if(!e.type.compatibleContent(t.type))throw new ve("Cannot join "+e.type.name+" onto "+t.type.name)}function Ce(t,e,i){let r=t.node(i);Ae(r,e.node(i));return r}function Se(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 Oe(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){Se(t.nodeAfter,r);s++}}for(let t=s;t<l;t++)Se(n.child(t),r);if(e&&e.depth==i&&e.textOffset)Se(e.nodeBefore,r)}function $e(t,e){t.type.checkContent(e);return t.copy(e)}function _e(t,e,i,r,n){let s=t.depth>n&&Ce(t,e,n+1);let l=r.depth>n&&Ce(i,r,n+1);let o=[];Oe(null,t,n,o);if(s&&l&&e.index(n)==i.index(n)){Ae(s,l);Se($e(s,_e(t,e,i,r,n+1)),o)}else{if(s)Se($e(s,Be(t,e,n+1)),o);Oe(e,i,n,o);if(l)Se($e(l,Be(i,r,n+1)),o)}Oe(r,null,n,o);return new we(o)}function Be(t,e,i){let r=[];Oe(null,t,i,r);if(t.depth>i){let n=Ce(t,e,i+1);Se($e(n,Be(t,e,i+1)),r)}Oe(e,null,i,r);return new we(r)}function je(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(we.from(n));return{start:n.resolveNoCache(t.openStart+i),end:n.resolveNoCache(n.content.size-t.openEnd-i)}}class Re{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 De.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 Re(e,i,n)}static resolveCached(t,e){let i=Te.get(t);if(i){for(let t=0;t<i.elts.length;t++){let r=i.elts[t];if(r.pos==e)return r}}else{Te.set(t,i=new qe)}let r=i.elts[i.i]=Re.resolve(t,e);i.i=(i.i+1)%Ne;return r}}class qe{constructor(){this.elts=[];this.i=0}}const Ne=12,Te=new WeakMap;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 Ie=Object.create(null);class Pe{constructor(t,e,i,r=De.none){this.type=t;this.attrs=e;this.marks=r;this.content=i||we.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&&ke(this.attrs,e||t.defaultAttrs||Ie)&&De.sameSet(this.marks,i||De.none)}copy(t=null){if(t==this.content)return this;return new Pe(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new Pe(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 ye.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 ye(u,r.depth-s,n.depth-s)}replace(t,e,i){return xe(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 Re.resolveCached(this,t)}resolveNoCache(t){return Re.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 Le(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=we.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);this.type.checkAttrs(this.attrs);let t=De.none;for(let e=0;e<this.marks.length;e++){let i=this.marks[e];i.type.checkAttrs(i.attrs);t=i.addToSet(t)}if(!De.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=undefined;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=we.fromJSON(t,e.content);let n=t.nodeType(e.type).create(e.attrs,r,i);n.type.checkAttrs(n.attrs);return n}}Pe.prototype.text=undefined;class Je extends Pe{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 Le(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 Je(this.type,this.attrs,this.text,t)}withText(t){if(t==this.text)return this;return new Je(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 Le(t,e){for(let i=t.length-1;i>=0;i--)e=t[i].type.name+"("+e+")";return e}class Ue{constructor(t){this.validEnd=t;this.next=[];this.wrapCache=[]}static parse(t,e){let i=new We(t,e);if(i.next==null)return Ue.empty;let r=He(i);if(i.next)i.err("Unexpected trailing text");let n=ii(Qe(r));ri(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 we.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")}}Ue.empty=new Ue(true);class We{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 He(t){let e=[];do{e.push(Ze(t))}while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function Ze(t){let e=[];do{e.push(Ke(t))}while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function Ke(t){let e=Ye(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=Ge(t,e);else break}return e}function Ve(t){if(/\D/.test(t.next))t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);t.pos++;return e}function Ge(t,e){let i=Ve(t),r=i;if(t.eat(",")){if(t.next!="}")r=Ve(t);else r=-1}if(!t.eat("}"))t.err("Unclosed braced range");return{type:"range",min:i,max:r,expr:e}}function Xe(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 Ye(t){if(t.eat("(")){let e=He(t);if(!t.eat(")"))t.err("Missing closing paren");return e}else if(!/\W/.test(t.next)){let e=Xe(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 Qe(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 ti(t,e){return e-t}function ei(t,e){let i=[];r(e);return i.sort(ti);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 ii(t){let e=Object.create(null);return i(ei(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];ei(t,i).forEach((t=>{if(!r)n.push([e,r=[]]);if(r.indexOf(t)==-1)r.push(t)}))}))}));let s=e[r.join(",")]=new Ue(r.indexOf(t.length-1)>-1);for(let t=0;t<n.length;t++){let r=n[t][1].sort(ti);s.next.push({type:n[t][0],next:e[r.join(",")]||i(r)})}return s}}function ri(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 ni(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 si(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 li(t,e,i,r){for(let r in e)if(!(r in t))throw new RangeError(`Unsupported attribute ${r} for ${i} of type ${r}`);for(let i in t){let r=t[i];if(r.validate)r.validate(e[i])}}function oi(t,e){let i=Object.create(null);if(e)for(let r in e)i[r]=new hi(t,r,e[r]);return i}class ui{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=oi(t,i.attrs);this.defaultAttrs=ni(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==Ue.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 si(this.attrs,t)}create(t=null,e,i){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new Pe(this,this.computeAttrs(t),we.from(e),De.setFrom(i))}createChecked(t=null,e,i){e=we.from(e);this.checkContent(e);return new Pe(this,this.computeAttrs(t),e,De.setFrom(i))}createAndFill(t=null,e,i){t=this.computeAttrs(t);e=we.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(we.empty,true);if(!n)return null;return new Pe(this,t,e.append(n),De.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)}`)}checkAttrs(t){li(this.attrs,t,"node")}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:De.none}static compile(t,e){let i=Object.create(null);t.forEach(((t,r)=>i[t]=new ui(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}}function fi(t,e,i){let r=i.split("|");return i=>{let n=i===null?"null":typeof i;if(r.indexOf(n)<0)throw new RangeError(`Expected value of type ${r} for attribute ${e} on type ${t}, got ${n}`)}}class hi{constructor(t,e,i){this.hasDefault=Object.prototype.hasOwnProperty.call(i,"default");this.default=i.default;this.validate=typeof i.validate=="string"?fi(t,e,i.validate):i.validate}get isRequired(){return!this.hasDefault}}class ai{constructor(t,e,i,r){this.name=t;this.rank=e;this.schema=i;this.spec=r;this.attrs=oi(t,r.attrs);this.excluded=null;let n=ni(this.attrs);this.instance=n?new De(this,n):null}create(t=null){if(!t&&this.instance)return this.instance;return new De(this,si(this.attrs,t))}static compile(t,e){let i=Object.create(null),r=0;t.forEach(((t,n)=>i[t]=new ai(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]}checkAttrs(t){li(this.attrs,t,"mark")}excludes(t){return this.excluded.indexOf(t)>-1}}class ci{constructor(t){this.linebreakReplacement=null;this.cached=Object.create(null);let e=this.spec={};for(let i in t)e[i]=t[i];e.nodes=de.from(t.nodes),e.marks=de.from(t.marks||{}),this.nodes=ui.compile(this.spec.nodes,this);this.marks=ai.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]=Ue.parse(r,this.nodes));e.inlineContent=e.contentMatch.inlineContent;if(e.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!e.isInline||!e.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=e}e.markSet=n=="_"?null:n?di(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==""?[]:di(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 ui))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 Je(i,i.defaultAttrs,t,De.setFrom(e))}mark(t,e){if(typeof t=="string")t=this.marks[t];return t.create(e)}nodeFromJSON(t){return Pe.fromJSON(this,t)}markFromJSON(t){return De.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function di(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}function pi(t){return t.tag!=null}function mi(t){return t.style!=null}class wi{constructor(t,e){this.schema=t;this.rules=e;this.tags=[];this.styles=[];let i=this.matchedStyles=[];e.forEach((t=>{if(pi(t)){this.tags.push(t)}else if(mi(t)){let e=/[^=]*/.exec(t.style)[0];if(i.indexOf(e)<0)i.push(e);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 xi(this,e,false);i.addAll(t,De.none,e.from,e.to);return i.finish()}parseSlice(t,e={}){let i=new xi(this,e,true);i.addAll(t,De.none,e.from,e.to);return ye.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(Ai(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=Ci(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=Ci(t));if(!(t.node||t.ignore||t.mark))t.node=e}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new wi(t,wi.schemaRules(t)))}}const gi={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 bi={head:true,noscript:true,object:true,script:true,style:true,title:true};const ki={ol:true,ul:true};const Di=1,vi=2,yi=4;function Fi(t,e,i){if(e!=null)return(e?Di:0)|(e==="full"?vi:0);return t&&t.whitespace=="pre"?Di|vi:i&~yi}class Ei{constructor(t,e,i,r,n,s){this.type=t;this.attrs=e;this.marks=i;this.solid=r;this.options=s;this.content=[];this.activeMarks=De.none;this.match=n||(s&yi?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(we.from(t));if(e){this.match=this.type.contentMatch.matchFragment(e)}else{let e=this.type.contentMatch,i;if(i=e.findWrapping(t.type)){this.match=e;return i}else{return null}}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&Di)){let t=this.content[this.content.length-1],e;if(t&&t.isText&&(e=/[ \t\r\n\u000c]+$/.exec(t.text))){let i=t;if(t.text.length==e[0].length)this.content.pop();else this.content[this.content.length-1]=i.withText(i.text.slice(0,i.text.length-e[0].length))}}let e=we.from(this.content);if(!t&&this.match)e=e.append(this.match.fillBefore(we.empty,true));return this.type?this.type.create(this.attrs,e,this.marks):e}inlineContext(t){if(this.type)return this.type.inlineContent;if(this.content.length)return this.content[0].isInline;return t.parentNode&&!gi.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class xi{constructor(t,e,i){this.parser=t;this.options=e;this.isOpen=i;this.open=0;let r=e.topNode,n;let s=Fi(null,e.preserveWhitespace,0)|(i?yi:0);if(r)n=new Ei(r.type,r.attrs,De.none,true,e.topMatch||r.type.contentMatch,s);else if(i)n=new Ei(null,null,De.none,true,null,s);else n=new Ei(t.schema.topNodeType,null,De.none,true,null,s);this.nodes=[n];this.find=e.findPositions;this.needsBlock=false}get top(){return this.nodes[this.open]}addDOM(t,e){if(t.nodeType==3)this.addTextNode(t,e);else if(t.nodeType==1)this.addElement(t,e)}addTextNode(t,e){let i=t.nodeValue;let r=this.top;if(r.options&vi||r.inlineContext(t)||/[^ \t\r\n\u000c]/.test(i)){if(!(r.options&Di)){i=i.replace(/[ \t\r\n\u000c]+/g," ");if(/^[ \t\r\n\u000c]/.test(i)&&this.open==this.nodes.length-1){let e=r.content[r.content.length-1];let n=t.previousSibling;if(!e||n&&n.nodeName=="BR"||e.isText&&/[ \t\r\n\u000c]$/.test(e.text))i=i.slice(1)}}else if(!(r.options&vi)){i=i.replace(/\r?\n|\r/g," ")}else{i=i.replace(/\r\n?/g,"\n")}if(i)this.insertNode(this.parser.schema.text(i),e);this.findInText(t)}else{this.findInside(t)}}addElement(t,e,i){let r=t.nodeName.toLowerCase(),n;if(ki.hasOwnProperty(r)&&this.parser.normalizeLists)Mi(t);let s=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(n=this.parser.matchTag(t,this,i));if(s?s.ignore:bi.hasOwnProperty(r)){this.findInside(t);this.ignoreFallback(t,e)}else if(!s||s.skip||s.closeParent){if(s&&s.closeParent)this.open=Math.max(0,this.open-1);else if(s&&s.skip.nodeType)t=s.skip;let i,n=this.top,l=this.needsBlock;if(gi.hasOwnProperty(r)){if(n.content.length&&n.content[0].isInline&&this.open){this.open--;n=this.top}i=true;if(!n.type)this.needsBlock=true}else if(!t.firstChild){this.leafFallback(t,e);return}let o=s&&s.skip?e:this.readStyles(t,e);if(o)this.addAll(t,o);if(i)this.sync(n);this.needsBlock=l}else{let i=this.readStyles(t,e);if(i)this.addElementByRule(t,s,i,s.consuming===false?n:undefined)}}leafFallback(t,e){if(t.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent)this.addTextNode(t.ownerDocument.createTextNode("\n"),e)}ignoreFallback(t,e){if(t.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent))this.findPlace(this.parser.schema.text("-"),e)}readStyles(t,e){let i=t.style;if(i&&i.length)for(let t=0;t<this.parser.matchedStyles.length;t++){let r=this.parser.matchedStyles[t],n=i.getPropertyValue(r);if(n)for(let t=undefined;;){let i=this.parser.matchStyle(r,n,this,t);if(!i)break;if(i.ignore)return null;if(i.clearMark)e=e.filter((t=>!i.clearMark(t)));else e=e.concat(this.parser.schema.marks[i.mark].create(i.attrs));if(i.consuming===false)t=i;else break}}return e}addElementByRule(t,e,i,r){let n,s;if(e.node){s=this.parser.schema.nodes[e.node];if(!s.isLeaf){let t=this.enter(s,e.attrs||null,i,e.preserveWhitespace);if(t){n=true;i=t}}else if(!this.insertNode(s.create(e.attrs),i)){this.leafFallback(t,i)}}else{let t=this.parser.schema.marks[e.mark];i=i.concat(t.create(e.attrs))}let l=this.top;if(s&&s.isLeaf){this.findInside(t)}else if(r){this.addElement(t,i,r)}else if(e.getContent){this.findInside(t);e.getContent(t,this.parser.schema).forEach((t=>this.insertNode(t,i)))}else{let r=t;if(typeof e.contentElement=="string")r=t.querySelector(e.contentElement);else if(typeof e.contentElement=="function")r=e.contentElement(t);else if(e.contentElement)r=e.contentElement;this.findAround(t,r,true);this.addAll(r,i)}if(n&&this.sync(l))this.open--}addAll(t,e,i,r){let n=i||0;for(let s=i?t.childNodes[i]:t.firstChild,l=r==null?null:t.childNodes[r];s!=l;s=s.nextSibling,++n){this.findAtPoint(t,n);this.addDOM(s,e)}this.findAtPoint(t,n)}findPlace(t,e){let i,r;for(let e=this.open;e>=0;e--){let n=this.nodes[e];let s=n.findWrapping(t);if(s&&(!i||i.length>s.length)){i=s;r=n;if(!s.length)break}if(n.solid)break}if(!i)return null;this.sync(r);for(let t=0;t<i.length;t++)e=this.enterInner(i[t],null,e,false);return e}insertNode(t,e){if(t.isInline&&this.needsBlock&&!this.top.type){let t=this.textblockFromContext();if(t)e=this.enterInner(t,null,e)}let i=this.findPlace(t,e);if(i){this.closeExtra();let e=this.top;if(e.match)e.match=e.match.matchType(t.type);let r=De.none;for(let n of i.concat(t.marks))if(e.type?e.type.allowsMarkType(n.type):Si(n.type,t.type))r=n.addToSet(r);e.content.push(t.mark(r));return true}return false}enter(t,e,i,r){let n=this.findPlace(t.create(e),i);if(n)n=this.enterInner(t,e,i,true,r);return n}enterInner(t,e,i,r=false,n){this.closeExtra();let s=this.top;s.match=s.match&&s.match.matchType(t);let l=Fi(t,n,s.options);if(s.options&yi&&s.content.length==0)l|=yi;let o=De.none;i=i.filter((e=>{if(s.type?s.type.allowsMarkType(e.type):Si(e.type,t)){o=e.addToSet(o);return false}return true}));this.nodes.push(new Ei(t,e,o,r,null,l));this.open++;return i}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}}}function Mi(t){for(let e=t.firstChild,i=null;e;e=e.nextSibling){let t=e.nodeType==1?e.nodeName.toLowerCase():null;if(t&&ki.hasOwnProperty(t)&&i){i.appendChild(e);e=i}else if(t=="li"){i=e}else if(t){i=null}}}function Ai(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function Ci(t){let e={};for(let i in t)e[i]=t[i];return e}function Si(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}}class Oi{constructor(t,e){this.nodes=t;this.marks=e}serializeFragment(t,e={},i){if(!i)i=_i(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}=qi(_i(e),this.nodes[t.type.name](t),null,t.attrs);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&&qi(_i(i),r(t,e),null,t.attrs)}static renderSpec(t,e,i=null,r){return qi(t,e,i,r)}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new Oi(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=$i(t.nodes);if(!e.text)e.text=t=>t.text;return e}static marksFromSchema(t){return $i(t.marks)}}function $i(t){let e={};for(let i in t){let r=t[i].spec.toDOM;if(r)e[i]=r}return e}function _i(t){return t.document||window.document}const Bi=new WeakMap;function ji(t){let e=Bi.get(t);if(e===undefined)Bi.set(t,e=Ri(t));return e}function Ri(t){let e=null;function i(t){if(t&&typeof t=="object"){if(Array.isArray(t)){if(typeof t[0]=="string"){if(!e)e=[];e.push(t)}else{for(let e=0;e<t.length;e++)i(t[e])}}else{for(let e in t)i(t[e])}}}i(t);return e}function qi(t,e,i,r){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 n=e[0],s;if(typeof n!="string")throw new RangeError("Invalid array passed to renderSpec");if(r&&(s=ji(r))&&s.indexOf(e)>-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let l=n.indexOf(" ");if(l>0){i=n.slice(0,l);n=n.slice(l+1)}let o;let u=i?t.createElementNS(i,n):t.createElement(n);let f=e[1],h=1;if(f&&typeof f=="object"&&f.nodeType==null&&!Array.isArray(f)){h=2;for(let t in f)if(f[t]!=null){let e=t.indexOf(" ");if(e>0)u.setAttributeNS(t.slice(0,e),t.slice(e+1),f[t]);else u.setAttribute(t,f[t])}}for(let n=h;n<e.length;n++){let s=e[n];if(s===0){if(n<e.length-1||n>h)throw new RangeError("Content hole must be the only child of its parent node");return{dom:u,contentDOM:u}}else{let{dom:e,contentDOM:n}=qi(t,s,i,r);u.appendChild(e);if(n){if(o)throw new RangeError("Multiple content holes");o=n}}}return{dom:u,contentDOM:o}}const Ni=65535;const Ti=Math.pow(2,16);function zi(t,e){return t+e*Ti}function Ii(t){return t&Ni}function Pi(t){return(t-(t&Ni))/Ti}const Ji=1,Li=2,Ui=4,Wi=8;class Hi{constructor(t,e,i){this.pos=t;this.delInfo=e;this.recover=i}get deleted(){return(this.delInfo&Wi)>0}get deletedBefore(){return(this.delInfo&(Ji|Ui))>0}get deletedAfter(){return(this.delInfo&(Li|Ui))>0}get deletedAcross(){return(this.delInfo&Ui)>0}}class Zi{constructor(t,e=false){this.ranges=t;this.inverted=e;if(!t.length&&Zi.empty)return Zi.empty}recover(t){let e=0,i=Ii(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+Pi(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:zi(l/3,t-o);let c=t==o?Li:t==h?Ji:Ui;if(e<0?t!=o:t!=h)c|=Wi;return new Hi(s,c,a)}r+=f-u}return i?t+r:new Hi(t+r,0,null)}touches(t,e){let i=0,r=Ii(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 Zi(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?Zi.empty:new Zi(t<0?[0,-t,0]:[0,0,t])}}Zi.empty=new Zi([]);class Ki{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 Ki(this.maps,this.mirror,t,e)}copy(){return new Ki(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 Ki;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 Hi(t,r,null)}}const Vi=Object.create(null);class Gi{getMap(){return Zi.empty}merge(t){return null}static fromJSON(t,e){if(!e||!e.stepType)throw new RangeError("Invalid input for Step.fromJSON");let i=Vi[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 Vi)throw new RangeError("Duplicate use of step JSON ID "+t);Vi[t]=e;e.prototype.jsonID=t;return e}}class Xi{constructor(t,e){this.doc=t;this.failed=e}static ok(t){return new Xi(t,null)}static fail(t){return new Xi(null,t)}static fromReplace(t,e,i,r){try{return Xi.ok(t.replace(e,i,r))}catch(t){if(t instanceof ve)return Xi.fail(t.message);throw t}}}function Yi(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(Yi(s.content,e,s));if(s.isInline)s=e(s,i,n);r.push(s)}return we.fromArray(r)}class Qi extends Gi{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 ye(Yi(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 Xi.fromReplace(t,this.from,this.to,n)}invert(){return new tr(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 Qi(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Qi&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Qi(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 Qi(e.from,e.to,t.markFromJSON(e.mark))}}Gi.jsonID("addMark",Qi);class tr extends Gi{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 ye(Yi(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Xi.fromReplace(t,this.from,this.to,i)}invert(){return new Qi(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 tr(e.pos,i.pos,this.mark)}merge(t){if(t instanceof tr&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new tr(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 tr(e.from,e.to,t.markFromJSON(e.mark))}}Gi.jsonID("removeMark",tr);class er extends Gi{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Xi.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Xi.fromReplace(t,this.pos,this.pos+1,new ye(we.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 er(this.pos,e.marks[i]);return new er(this.pos,this.mark)}}return new ir(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new er(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 er(e.pos,t.markFromJSON(e.mark))}}Gi.jsonID("addNodeMark",er);class ir extends Gi{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Xi.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.removeFromSet(e.marks));return Xi.fromReplace(t,this.pos,this.pos+1,new ye(we.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 er(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new ir(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 ir(e.pos,t.markFromJSON(e.mark))}}Gi.jsonID("removeNodeMark",ir);class rr extends Gi{constructor(t,e,i,r=false){super();this.from=t;this.to=e;this.slice=i;this.structure=r}apply(t){if(this.structure&&sr(t,this.from,this.to))return Xi.fail("Structure replace would overwrite content");return Xi.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new Zi([this.from,this.to-this.from,this.slice.size])}invert(t){return new rr(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 rr(e.pos,Math.max(e.pos,i.pos),this.slice)}merge(t){if(!(t instanceof rr)||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?ye.empty:new ye(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new rr(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?ye.empty:new ye(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new rr(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 rr(e.from,e.to,ye.fromJSON(t,e.slice),!!e.structure)}}Gi.jsonID("replace",rr);class nr extends Gi{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&&(sr(t,this.from,this.gapFrom)||sr(t,this.gapTo,this.to)))return Xi.fail("Structure gap-replace would overwrite content");let e=t.slice(this.gapFrom,this.gapTo);if(e.openStart||e.openEnd)return Xi.fail("Gap is not a flat range");let i=this.slice.insertAt(this.insert,e.content);if(!i)return Xi.fail("Content does not fit in gap");return Xi.fromReplace(t,this.from,this.to,i)}getMap(){return new Zi([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(t){let e=this.gapTo-this.gapFrom;return new nr(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 nr(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 nr(e.from,e.to,e.gapFrom,e.gapTo,ye.fromJSON(t,e.slice),e.insert,!!e.structure)}}Gi.jsonID("replaceAround",nr);function sr(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 lr(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 tr(f,a,h[t]))}}if(o&&o.to==f)o.to=a;else s.push(o=new Qi(f,a,r))}}));n.forEach((e=>t.step(e)));s.forEach((e=>t.step(e)))}function or(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 ai){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 tr(e.from,e.to,e.style))))}function ur(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 rr(l,u,ye.empty))}else{r=f;for(let e=0;e<o.marks.length;e++)if(!i.allowsMarkType(o.marks[e].type))t.step(new tr(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 ye(we.from(i.schema.text(" ",i.allowedMarks(o.marks))),0,0);s.push(new rr(l+t.index,l+t.index+t[0].length,r))}}}l=u}if(!r.validEnd){let e=r.fillBefore(we.empty,true);t.replace(l,l,new ye(e,0,0))}for(let e=s.length-1;e>=0;e--)t.step(s[e])}function fr(t,e,i){return(e==0||t.canReplace(e,t.childCount))&&(i==t.childCount||t.canReplace(0,i))}function hr(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||!fr(r,n,s))break}return null}function ar(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=we.empty,a=0;for(let t=s,e=false;t>i;t--)if(e||r.index(t)>0){e=true;h=we.from(r.node(t).copy(h));a++}else{u--}let c=we.empty,d=0;for(let t=s,e=false;t>i;t--)if(e||n.after(t+1)<n.end(t)){e=true;c=we.from(n.node(t).copy(c));d++}else{f++}t.step(new nr(u,f,l,o,new ye(h.append(c),a,d),h.size-a,true))}function cr(t,e,i=null,r=t){let n=pr(t,e);let s=n&&mr(r,e);if(!s)return null;return n.map(dr).concat({type:e,attrs:i}).concat(s.map(dr))}function dr(t){return{type:t,attrs:null}}function pr(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 mr(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 wr(t,e,i){let r=we.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=we.from(i[t].type.create(i[t].attrs,r))}let n=e.start,s=e.end;t.step(new nr(n,s,n,s,new ye(r,0,0),i.length,true))}function gr(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)&&br(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 nr(o,u,o+1,u-1,new ye(we.from(r.create(n,null,e.marks)),0,0),1,true));return false}}))}function br(t,e,i){let r=t.resolve(e),n=r.index();return r.parent.canReplaceWith(n,n+1,i)}function kr(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 nr(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new ye(we.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 vr(t,e,i=1,r){let n=t.doc.resolve(e),s=we.empty,l=we.empty;for(let t=n.depth,e=n.depth-i,o=i-1;t>e;t--,o--){s=we.from(n.node(t).copy(s));let e=r&&r[o];l=we.from(e?e.type.create(e.attrs,l):n.node(t).copy(l))}t.step(new rr(e,e,new ye(s.append(l),i,i),true))}function yr(t,e){let i=t.resolve(e),r=i.index();return Fr(i.nodeBefore,i.nodeAfter)&&i.parent.canReplace(r,r+1)}function Fr(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function Er(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&&Fr(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 xr(t,e,i){let r=new rr(e-i,e+i,ye.empty,true);t.step(r)}function Mr(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 Ar(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 Cr(t,e,i=e,r=ye.empty){if(e==i&&!r.size)return null;let n=t.resolve(e),s=t.resolve(i);if(Sr(n,s,r))return new rr(e,i,r);return new Or(n,s,r).fit()}function Sr(t,e,i){return!i.openStart&&!i.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),i.content)}class Or{constructor(t,e,i){this.$from=t;this.$to=e;this.unplaced=i;this.frontier=[];this.placed=we.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=we.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 ye(n,s,l);if(t>-1)return new nr(i.pos,t,this.$to.pos,this.$to.end(),o,e);if(o.size||i.pos!=this.$to.pos)return new rr(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=Br(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(we.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=Br(t,e);if(!r.childCount||r.firstChild.isLeaf)return false;this.unplaced=new ye(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=Br(t,e);if(r.childCount<=1&&e>0){let n=t.size-e<=e+r.size;this.unplaced=new ye($r(t,e-1,1),e-1,n?e-1:i)}else{this.unplaced=new ye($r(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(jr(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=_r(this.placed,e,we.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 ye($r(s.content,t,u),s.openStart,s.openEnd):t==0?ye.empty:new ye($r(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||!Rr(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=Rr(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=Rr(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=_r(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=_r(this.placed,this.depth,we.from(t.create(e,i)));this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop();let e=t.match.fillBefore(we.empty,true);if(e.childCount)this.placed=_r(this.placed,this.frontier.length,e)}}function $r(t,e,i){if(e==0)return t.cutByIndex(i,t.childCount);return t.replaceChild(0,t.firstChild.copy($r(t.firstChild.content,e-1,i)))}function _r(t,e,i){if(e==0)return t.append(i);return t.replaceChild(t.childCount-1,t.lastChild.copy(_r(t.lastChild.content,e-1,i)))}function Br(t,e){for(let i=0;i<e;i++)t=t.firstChild.content;return t}function jr(t,e,i){if(e<=0)return t;let r=t.content;if(e>1)r=r.replaceChild(0,jr(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(we.empty,true))}return t.copy(r)}function Rr(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&&!qr(i,s.content,l)?o:null}function qr(t,e,i){for(let r=i;r<e.childCount;r++)if(!t.allowsMarks(e.child(r).marks))return true;return false}function Nr(t){return t.spec.defining||t.spec.definingForContent}function Tr(t,e,i,r){if(!r.size)return t.deleteRange(e,i);let n=t.doc.resolve(e),s=t.doc.resolve(i);if(Sr(n,s,r))return t.step(new rr(e,i,r));let l=Jr(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=Nr(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 ye(zr(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 zr(t,e,i,r,n){if(e<i){let n=t.firstChild;t=t.replaceChild(0,n.copy(zr(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(we.empty,true))}return t}function Ir(t,e,i,r){if(!r.isInline&&e==i&&t.doc.resolve(e).parent.content.size){let n=Mr(t.doc,e,r.type);if(n!=null)e=i=n}t.replaceRange(e,i,new ye(we.from(r),0,0))}function Pr(t,e,i){let r=t.doc.resolve(e),n=t.doc.resolve(i);let s=Jr(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 Jr(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 Lr extends Gi{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 Xi.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 Xi.fromReplace(t,this.pos,this.pos+1,new ye(we.from(r),0,e.isLeaf?0:1))}getMap(){return Zi.empty}invert(t){return new Lr(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 Lr(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 Lr(e.pos,e.attr,e.value)}}Gi.jsonID("attr",Lr);class Ur extends Gi{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 Xi.ok(i)}getMap(){return Zi.empty}invert(t){return new Ur(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 Ur(e.attr,e.value)}}Gi.jsonID("docAttr",Ur);let Wr=class extends Error{};Wr=function t(e){let i=Error.call(this,e);i.__proto__=t.prototype;return i};Wr.prototype=Object.create(Error.prototype);Wr.prototype.constructor=Wr;Wr.prototype.name="TransformError";class Hr{constructor(t){this.doc=t;this.steps=[];this.docs=[];this.mapping=new Ki}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new Wr(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=ye.empty){let r=Cr(this.doc,t,e,i);if(r)this.step(r);return this}replaceWith(t,e,i){return this.replace(t,e,new ye(we.from(i),0,0))}delete(t,e){return this.replace(t,e,ye.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,i){Tr(this,t,e,i);return this}replaceRangeWith(t,e,i){Ir(this,t,e,i);return this}deleteRange(t,e){Pr(this,t,e);return this}lift(t,e){ar(this,t,e);return this}join(t,e=1){xr(this,t,e);return this}wrap(t,e){wr(this,t,e);return this}setBlockType(t,e=t,i,r=null){gr(this,t,e,i,r);return this}setNodeMarkup(t,e,i=null,r){kr(this,t,e,i,r);return this}setNodeAttribute(t,e,i){this.step(new Lr(t,e,i));return this}setDocAttribute(t,e){this.step(new Ur(t,e));return this}addNodeMark(t,e){this.step(new er(t,e));return this}removeNodeMark(t,e){if(!(e instanceof De)){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 ir(t,e));return this}split(t,e=1,i){vr(this,t,e,i);return this}addMark(t,e,i){lr(this,t,e,i);return this}removeMark(t,e,i){or(this,t,e,i);return this}clearIncompatible(t,e,i){ur(this,t,e,i);return this}}const Zr=Object.create(null);class Kr{constructor(t,e,i){this.$anchor=t;this.$head=e;this.ranges=i||[new Vr(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=ye.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?ye.empty:e);if(l==0)ln(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);ln(t,i,e.isInline?-1:1)}}}static findFrom(t,e,i=false){let r=t.parent.inlineContent?new Yr(t):sn(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?sn(t.node(0),t.node(r),t.before(r+1),t.index(r),e,i):sn(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 rn(t.node(0))}static atStart(t){return sn(t,t,0,0,1)||new rn(t)}static atEnd(t){return sn(t,t,t.content.size,t.childCount,-1)||new rn(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let i=Zr[e.type];if(!i)throw new RangeError(`No selection type ${e.type} defined`);return i.fromJSON(t,e)}static jsonID(t,e){if(t in Zr)throw new RangeError("Duplicate use of selection JSON ID "+t);Zr[t]=e;e.prototype.jsonID=t;return e}getBookmark(){return Yr.between(this.$anchor,this.$head).getBookmark()}}Kr.prototype.visible=true;class Vr{constructor(t,e){this.$from=t;this.$to=e}}let Gr=false;function Xr(t){if(!Gr&&!t.parent.inlineContent){Gr=true;console["warn"]("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")")}}class Yr extends Kr{constructor(t,e=t){Xr(t);Xr(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 Kr.near(i);let r=t.resolve(e.map(this.anchor));return new Yr(r.parent.inlineContent?r:i,i)}replace(t,e=ye.empty){super.replace(t,e);if(e==ye.empty){let e=this.$from.marksAcross(this.$to);if(e)t.ensureMarks(e)}}eq(t){return t instanceof Yr&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new Qr(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 Yr(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=Kr.findFrom(e,i,true)||Kr.findFrom(e,-i,true);if(t)e=t.$head;else return Kr.near(e,i)}if(!t.parent.inlineContent){if(r==0){t=e}else{t=(Kr.findFrom(t,-i,true)||Kr.findFrom(t,i,true)).$anchor;if(t.pos<e.pos!=r<0)t=e}}return new Yr(t,e)}}Kr.jsonID("text",Yr);class Qr{constructor(t,e){this.anchor=t;this.head=e}map(t){return new Qr(t.map(this.anchor),t.map(this.head))}resolve(t){return Yr.between(t.resolve(this.anchor),t.resolve(this.head))}}class tn extends Kr{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 Kr.near(n);return new tn(n)}content(){return new ye(we.from(this.node),0,0)}eq(t){return t instanceof tn&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new en(this.anchor)}static fromJSON(t,e){if(typeof e.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new tn(t.resolve(e.anchor))}static create(t,e){return new tn(t.resolve(e))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==false}}tn.prototype.visible=false;Kr.jsonID("node",tn);class en{constructor(t){this.anchor=t}map(t){let{deleted:e,pos:i}=t.mapResult(this.anchor);return e?new Qr(i,i):new en(i)}resolve(t){let e=t.resolve(this.anchor),i=e.nodeAfter;if(i&&tn.isSelectable(i))return new tn(e);return Kr.near(e)}}class rn extends Kr{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,e=ye.empty){if(e==ye.empty){t.delete(0,t.doc.content.size);let e=Kr.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 rn(t)}map(t){return new rn(t)}eq(t){return t instanceof rn}getBookmark(){return nn}}Kr.jsonID("all",rn);const nn={map(){return this},resolve(t){return new rn(t)}};function sn(t,e,i,r,n,s=false){if(e.inlineContent)return Yr.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=sn(t,r,i+n,n<0?r.childCount:0,n,s);if(e)return e}else if(!s&&tn.isSelectable(r)){return tn.create(t,i-(n<0?r.nodeSize:0))}i+=r.nodeSize*n}return null}function ln(t,e,i){let r=t.steps.length-1;if(r<e)return;let n=t.steps[r];if(!(n instanceof rr||n instanceof nr))return;let s=t.mapping.maps[r],l;s.forEach(((t,e,i,r)=>{if(l==null)l=r}));t.setSelection(Kr.near(t.doc.resolve(l),i))}const on=1,un=2,fn=4;class hn extends Hr{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|on)&~un;this.storedMarks=null;return this}get selectionSet(){return(this.updated&on)>0}setStoredMarks(t){this.storedMarks=t;this.updated|=un;return this}ensureMarks(t){if(!De.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&un)>0}addStep(t,e){super.addStep(t,e);this.updated=this.updated&~un;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)||De.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(Kr.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|=fn;return this}get scrolledIntoView(){return(this.updated&fn)>0}}function an(t,e){return!e||!t?t:t.bind(e)}class cn{constructor(t,e,i){this.name=t;this.init=an(e.init,i);this.apply=an(e.apply,i)}}const dn=[new cn("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new cn("selection",{init(t,e){return t.selection||Kr.atStart(e.doc)},apply(t){return t.selection}}),new cn("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,i,r){return r.selection.$cursor?t.storedMarks:null}}),new cn("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class pn{constructor(t,e){this.schema=t;this.plugins=[];this.pluginsByKey=Object.create(null);this.fields=dn.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 cn(t.key,t.spec.state,t))}))}}class mn{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 mn(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 hn(this)}static create(t){let e=new pn(t.doc?t.doc.type.schema:t.schema,t.plugins);let i=new mn(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 pn(this.schema,t.plugins);let i=e.fields,r=new mn(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 pn(t.schema,t.plugins);let n=new mn(r);r.fields.forEach((r=>{if(r.name=="doc"){n.doc=Pe.fromJSON(t.schema,e.doc)}else if(r.name=="selection"){n.selection=Kr.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 wn(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=wn(n,e,{});i[r]=n}return i}class gn{constructor(t){this.spec=t;this.props={};if(t.props)wn(t.props,this,this.props);this.key=t.key?t.key.key:kn("plugin")}getState(t){return t[this.key]}}const bn=Object.create(null);function kn(t){if(t in bn)return t+"$"+ ++bn[t];bn[t]=0;return t+"$"}class Dn{constructor(t="key"){this.key=kn(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const vn=function(t){for(var e=0;;e++){t=t.previousSibling;if(!t)return e}};const yn=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let Fn=null;const En=function(t,e,i){let r=Fn||(Fn=document.createRange());r.setEnd(t,i==null?t.nodeValue.length:i);r.setStart(t,e||0);return r};const xn=function(t,e,i,r){return i&&(An(t,e,i,r,-1)||An(t,e,i,r,1))};const Mn=/^(img|br|input|textarea|hr)$/i;function An(t,e,i,r,n){for(;;){if(t==i&&e==r)return true;if(e==(n<0?0:Cn(t))){let i=t.parentNode;if(!i||i.nodeType!=1||On(t)||Mn.test(t.nodeName)||t.contentEditable=="false")return false;e=vn(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?Cn(t):0}else{return false}}}function Cn(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Sn(t,e,i){for(let r=e==0,n=e==Cn(t);r||n;){if(t==i)return true;let e=vn(t);t=t.parentNode;if(!t)return false;r=r&&e==0;n=n&&e==Cn(t)}}function On(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 $n=function(t){return t.focusNode&&xn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function _n(t,e){let i=document.createEvent("Event");i.initEvent("keydown",true,true);i.keyCode=t;i.key=i.code=e;return i}function Bn(t){let e=t.activeElement;while(e&&e.shadowRoot)e=e.shadowRoot.activeElement;return e}function jn(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 Rn=typeof navigator!="undefined"?navigator:null;const qn=typeof document!="undefined"?document:null;const Nn=Rn&&Rn.userAgent||"";const Tn=/Edge\/(\d+)/.exec(Nn);const zn=/MSIE \d/.exec(Nn);const In=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Nn);const Pn=!!(zn||In||Tn);const Jn=zn?document.documentMode:In?+In[1]:Tn?+Tn[1]:0;const Ln=!Pn&&/gecko\/(\d+)/i.test(Nn);Ln&&+(/Firefox\/(\d+)/.exec(Nn)||[0,0])[1];const Un=!Pn&&/Chrome\/(\d+)/.exec(Nn);const Wn=!!Un;const Hn=Un?+Un[1]:0;const Zn=!Pn&&!!Rn&&/Apple Computer/.test(Rn.vendor);const Kn=Zn&&(/Mobile\/\w+/.test(Nn)||!!Rn&&Rn.maxTouchPoints>2);const Vn=Kn||(Rn?/Mac/.test(Rn.platform):false);const Gn=Rn?/Win/.test(Rn.platform):false;const Xn=/Android \d/.test(Nn);const Yn=!!qn&&"webkitFontSmoothing"in qn.documentElement.style;const Qn=Yn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function ts(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function es(t,e){return typeof t=="number"?t:t[e]}function is(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 rs(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=yn(l)){if(!l)break;if(l.nodeType!=1)continue;let t=l;let i=t==s.body;let o=i?ts(s):is(t);let u=0,f=0;if(e.top<o.top+es(r,"top"))f=-(o.top-e.top+es(n,"top"));else if(e.bottom>o.bottom-es(r,"bottom"))f=e.bottom-e.top>o.bottom-o.top?e.top+es(n,"top")-o.top:e.bottom-o.bottom+es(n,"bottom");if(e.left<o.left+es(r,"left"))u=-(o.left-e.left+es(n,"left"));else if(e.right>o.right-es(r,"right"))u=e.right-o.right+es(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 ns(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:ss(t.dom)}}function ss(t){let e=[],i=t.ownerDocument;for(let r=t;r;r=yn(r)){e.push({dom:r,top:r.scrollTop,left:r.scrollLeft});if(t==i)break}return e}function ls({refDOM:t,refTop:e,stack:i}){let r=t?t.getBoundingClientRect().top:0;us(i,r==0?0:r-e)}function us(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 fs=null;function hs(t){if(t.setActive)return t.setActive();if(fs)return t.focus(fs);let e=ss(t);t.focus(fs==null?{get preventScroll(){fs={preventScroll:true};return true}}:undefined);if(!fs){fs=false;us(e,0)}}function as(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=En(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 cs(i,n);if(!i||r&&i.nodeType==1)return{node:t,offset:s};return as(i,n)}function cs(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(ds(e,i))return{node:t,offset:n+(e.left>=(i.left+i.right)/2?1:0)}}return{node:t,offset:0}}function ds(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function ps(t,e){let i=t.parentNode;if(i&&/^li$/i.test(i.nodeName)&&e.left<t.getBoundingClientRect().left)return i;return t}function ms(t,e,i){let{node:r,offset:n}=as(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 ws(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 gs(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(ds(e,n))return gs(i,e,n)}}if((s=(s+1)%r)==n)break}}return t}function bs(t,e){let i=t.dom.ownerDocument,r,n=0;let s=jn(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(!ds(e,i))return null;l=gs(t.dom,e,i);if(!l)return null}if(Zn){for(let t=l;r&&t;t=yn(t))if(t.draggable)r=undefined}l=ps(l,e);if(r){if(Ln&&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(Yn&&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=ws(t,r,n,e)}if(o==null)o=ms(t,l,e);let u=t.docView.nearestDesc(l,true);return{pos:o,inside:u?u.posAtStart-u.border:-1}}function ks(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(ks(t))return t}return Array.prototype.find.call(i,ks)||t.getBoundingClientRect()}const vs=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function ys(t,e,i){let{node:r,offset:n,atom:s}=t.docView.domFromPos(e,i<0?-1:1);let l=Yn||Ln;if(r.nodeType==3){if(l&&(vs.test(r.nodeValue)||(i<0?!n:n==r.nodeValue.length))){let t=Ds(En(r,n,n),i);if(Ln&&n&&/\s/.test(r.nodeValue[n-1])&&n<r.nodeValue.length){let e=Ds(En(r,n-1,n-1),-1);if(e.top==t.top){let i=Ds(En(r,n,n+1),-1);if(i.top!=t.top)return Fs(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 Fs(Ds(En(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==Cn(r))){let t=r.childNodes[n-1];if(t.nodeType==1)return Es(t.getBoundingClientRect(),false)}if(s==null&&n<Cn(r)){let t=r.childNodes[n];if(t.nodeType==1)return Es(t.getBoundingClientRect(),true)}return Es(r.getBoundingClientRect(),i>=0)}if(s==null&&n&&(i<0||n==Cn(r))){let t=r.childNodes[n-1];let e=t.nodeType==3?En(t,Cn(t)-(l?0:1)):t.nodeType==1&&(t.nodeName!="BR"||!t.nextSibling)?t:null;if(e)return Fs(Ds(e,1),false)}if(s==null&&n<Cn(r)){let t=r.childNodes[n];while(t.pmViewDesc&&t.pmViewDesc.ignoreForCoords)t=t.nextSibling;let e=!t?null:t.nodeType==3?En(t,0,l?0:1):t.nodeType==1?t:null;if(e)return Fs(Ds(e,-1),true)}return Fs(Ds(r.nodeType==3?En(r):r,-i),i>=0)}function Fs(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 Es(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 xs(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 Ms(t,e,i){let r=e.selection;let n=i=="up"?r.$from:r.$to;return xs(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=ys(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=En(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 As=/[\u0590-\u08ac]/;function Cs(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(!As.test(r.parent.textContent)||!o.modify)return i=="left"||i=="backward"?s:l;return xs(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 Ss=null;let Os=null;let $s=false;function _s(t,e,i){if(Ss==e&&Os==i)return $s;Ss=e;Os=i;return $s=i=="up"||i=="down"?Ms(t,e,i):Cs(t,e,i)}const Bs=0,js=1,Rs=2,qs=3;class Ns{constructor(t,e,i,r){this.parent=t;this.children=e;this.dom=i;this.contentDOM=r;this.dirty=Bs;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>vn(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 Us){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 Ts&&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?vn(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?vn(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=vn(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=vn(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((Ln||Zn)&&t==e){let{node:t,offset:e}=l;if(t.nodeType==3){f=!!(e&&t.nodeValue[e-1]=="\n");if(f&&e==t.nodeValue.length){for(let e=t,i;e;e=e.parentNode){if(i=e.nextSibling){if(i.nodeName=="BR")l=o={node:i.parentNode,offset:vn(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(Ln&&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&&Zn)&&xn(l.node,l.offset,u.anchorNode,u.anchorOffset)&&xn(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?Rs:js;if(t==r&&e==l&&(n.contentLost||n.dom.parentNode!=this.contentDOM))n.dirty=qs;else n.markDirty(t-r,e-r);return}else{n.dirty=n.dom==n.contentDOM&&n.dom.parentNode==this.contentDOM&&!n.children.length?Rs:qs}}i=s}this.dirty=Rs}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let i=t==1?Rs:js;if(e.dirty<i)e.dirty=i}}get domAtom(){return false}get ignoreForCoords(){return false}}class Ts extends Ns{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==Bs&&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 zs extends Ns{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 Is extends Ns{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=Oi.renderSpec(document,e.type.spec.toDOM(e,i));return new Is(t,e,s.dom,s.contentDOM||s.dom)}parseRule(){if(this.dirty&qs||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!=qs&&this.mark.eq(t)}markDirty(t,e){super.markDirty(t,e);if(this.dirty!=Bs){let t=this.parent;while(!t.node)t=t.parent;if(t.dirty<this.dirty)t.dirty=this.dirty;this.dirty=Bs}}slice(t,e,i){let r=Is.create(this.parent,this.mark,true,i);let n=this.children,s=this.size;if(e<s)n=ul(n,e,s,i);if(t>0)n=ul(n,0,t,i);for(let t=0;t<n.length;t++)n[t].parent=r;r.children=n;return r}}class Ps extends Ns{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}=Oi.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=Ys(f,i,e);if(u)return o=new Ws(t,e,i,r,f,h||null,a,u,n,s+1);else if(e.isText)return new Ls(t,e,i,r,f,a,n);else return new Ps(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=()=>we.empty}return t}matchesNode(t,e,i){return this.dirty==Bs&&t.eq(this.node)&&Qs(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 el(this,s&&s.node,t);nl(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?De.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==Rs){if(s)this.protectLocalComposition(t,s);Hs(this.contentDOM,this.children,t);if(Kn)sl(this.dom)}}localCompositionInfo(t,e){let{from:i,to:r}=t.state.selection;if(!(t.state.selection instanceof Yr)||i<e||r>e+this.node.content.size)return null;let n=t.domSelectionRange();let s=ll(n.focusNode,n.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let t=s.nodeValue;let n=ol(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 zs(this,n,e,r);t.input.compositionNodes.push(s);this.children=ul(this.children,i,i+r.length,t,s)}update(t,e,i,r){if(this.dirty==qs||!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=Bs}updateOuterDeco(t){if(Qs(t,this.outerDeco))return;let e=this.nodeDOM.nodeType!=1;let i=this.dom;this.dom=Gs(this.dom,this.nodeDOM,Vs(this.outerDeco,this.node,e),Vs(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 Js(t,e,i,r,n){Ys(r,e,t);let s=new Ps(undefined,t,e,i,r,r,r,n,0);if(s.contentDOM)s.updateChildren(n,0);return s}class Ls extends Ps{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==qs||this.dirty!=Bs&&!this.inParent()||!t.sameMarkup(this.node))return false;this.updateOuterDeco(e);if((this.dirty!=Bs||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=Bs;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 Ls(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=qs}get domAtom(){return false}}class Us extends Ns{parseRule(){return{ignore:true}}matchesHack(t){return this.dirty==Bs&&this.dom.nodeName==t}get domAtom(){return true}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Ws extends Ps{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==qs)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 Hs(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=tl(r);n=true}r=r.nextSibling}else{n=true;t.insertBefore(o,r)}if(l instanceof Is){let e=r?r.previousSibling:t.lastChild;Hs(l.contentDOM,l.children,i);r=e?e.nextSibling:t.firstChild}}while(r){r=tl(r);n=true}if(n&&i.trackWrites==t)i.trackWrites=null}const Zs=function(t){if(t)this.nodeName=t};Zs.prototype=Object.create(null);const Ks=[new Zs];function Vs(t,e,i){if(t.length==0)return Ks;let r=i?Ks[0]:new Zs,n=[r];for(let s=0;s<t.length;s++){let l=t[s].type.attrs;if(!l)continue;if(l.nodeName)n.push(r=new Zs(l.nodeName));for(let t in l){let s=l[t];if(s==null)continue;if(i&&n.length==1)n.push(r=new Zs(e.isInline?"span":"div"));if(t=="class")r.class=(r.class?r.class+" ":"")+s;else if(t=="style")r.style=(r.style?r.style+";":"")+s;else if(t!="nodeName")r[t]=s}}return n}function Gs(t,e,i,r){if(i==Ks&&r==Ks)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=Ks[0];n=e}}Xs(n,l||Ks[0],s)}return n}function Xs(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 Ys(t,e,i){return Gs(t,t,Ks,Vs(e,i,t.nodeType!=1))}function Qs(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 tl(t){let e=t.nextSibling;t.parentNode.removeChild(t);return e}class el{constructor(t,e,i){this.lock=e;this.view=i;this.index=0;this.stack=[];this.changed=false;this.top=t;this.preMatch=il(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=Bs;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=Is.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==qs&&s.dom==s.contentDOM)s.dirty=Rs;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 Ps){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!=qs&&Qs(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=Rs;h.updateChildren(r,s+1);h.dirty=Bs}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=Ps.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=Ps.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 Ts(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 Is){e=t;t=e.children[e.children.length-1]}if(!t||!(t instanceof Ls)||/\n$/.test(t.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(t.node.text)){if((Zn||Wn)&&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 Us(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 il(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 Is){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 rl(t,e){return t.type.side-e.type.side}function nl(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(rl);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 sl(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 ll(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=Cn(t)}else if(t.nodeType==1&&e<t.childNodes.length){t=t.childNodes[e];e=0}else{return null}}}function ol(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 ul(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 fl(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($n(i)){u=o;while(n&&!n.node)n=n.parent;let t=n.node;if(n&&t.isAtom&&tn.isSelectable(t)&&n.parent&&!(t.isInline&&Sn(i.focusNode,i.focusOffset,n.dom))){let t=n.posBefore;f=new tn(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 hl(t){return t.editable?t.hasFocus():yl(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function al(t,e=false){let i=t.state.selection;bl(t,i);if(!hl(t))return;if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&Wn){let e=t.domSelectionRange(),i=t.domObserver.currentSelection;if(e.anchorNode&&i.anchorNode&&xn(e.anchorNode,e.anchorOffset,i.anchorNode,i.anchorOffset)){t.input.mouseDown.delayedSelectionSync=true;t.domObserver.setCurSelection();return}}t.domObserver.disconnectSelection();if(t.cursorWrapper){gl(t)}else{let{anchor:r,head:n}=i,s,l;if(cl&&!(i instanceof Yr)){if(!i.$from.parent.inlineContent)s=dl(t,i.from);if(!i.empty&&!i.$from.parent.inlineContent)l=dl(t,i.to)}t.docView.setSelection(r,n,t.root,e);if(cl){if(s)ml(s);if(l)ml(l)}if(i.visible){t.dom.classList.remove("ProseMirror-hideselection")}else{t.dom.classList.add("ProseMirror-hideselection");if("onselectionchange"in document)wl(t)}}t.domObserver.setCurSelection();t.domObserver.connectSelection()}const cl=Zn||Wn&&Hn<63;function dl(t,e){let{node:i,offset:r}=t.docView.domFromPos(e,0);let n=r<i.childNodes.length?i.childNodes[r]:null;let s=r?i.childNodes[r-1]:null;if(Zn&&n&&n.contentEditable=="false")return pl(n);if((!n||n.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(n)return pl(n);else if(s)return pl(s)}}function pl(t){t.contentEditable="true";if(Zn&&t.draggable){t.draggable=false;t.wasDraggable=true}return t}function ml(t){t.contentEditable="false";if(t.wasDraggable){t.draggable=true;t.wasDraggable=null}}function wl(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(!hl(t)||t.state.selection.visible)t.dom.classList.remove("ProseMirror-hideselection")}),20)}})}function gl(t){let e=t.domSelection(),i=document.createRange();let r=t.cursorWrapper.dom,n=r.nodeName=="IMG";if(n)i.setEnd(r.parentNode,vn(r)+1);else i.setEnd(r,0);i.collapse(false);e.removeAllRanges();e.addRange(i);if(!n&&!t.state.selection.visible&&Pn&&Jn<=11){r.disabled=true;r.disabled=false}}function bl(t,e){if(e instanceof tn){let i=t.docView.descAt(e.from);if(i!=t.lastSelectedViewDesc){kl(t);if(i)i.selectNode();t.lastSelectedViewDesc=i}}else{kl(t)}}function kl(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)))||Yr.between(e,i,r)}function vl(t){if(t.editable&&!t.hasFocus())return false;return yl(t)}function yl(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 Fl(t){let e=t.docView.domFromPos(t.state.selection.anchor,0);let i=t.domSelectionRange();return xn(e.node,e.offset,i.anchorNode,i.anchorOffset)}function El(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&&Kr.findFrom(s,e)}function xl(t,e){t.dispatch(t.state.tr.setSelection(e).scrollIntoView());return true}function Ml(t,e,i){let r=t.state.selection;if(r instanceof Yr){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 xl(t,new Yr(r.$anchor,s))}else if(!r.empty){return false}else if(t.endOfTextblock(e>0?"forward":"backward")){let i=El(t.state,e);if(i&&i instanceof tn)return xl(t,i);return false}else if(!(Vn&&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(tn.isSelectable(n)){return xl(t,new tn(e<0?t.state.doc.resolve(i.pos-n.nodeSize):i))}else if(Yn){return xl(t,new Yr(t.state.doc.resolve(e<0?l:l+n.nodeSize)))}else{return false}}}else if(r instanceof tn&&r.node.isInline){return xl(t,new Yr(e>0?r.$to:r.$from))}else{let i=El(t.state,e);if(i)return xl(t,i);return false}}function Al(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Cl(t,e){let i=t.pmViewDesc;return i&&i.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function Sl(t,e){return e<0?Ol(t):$l(t)}function Ol(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n,s,l=false;if(Ln&&i.nodeType==1&&r<Al(i)&&Cl(i.childNodes[r],-1))l=true;for(;;){if(r>0){if(i.nodeType!=1){break}else{let t=i.childNodes[r-1];if(Cl(t,-1)){n=i;s=--r}else if(t.nodeType==3){i=t;r=i.nodeValue.length}else break}}else if(_l(i)){break}else{let e=i.previousSibling;while(e&&Cl(e,-1)){n=i.parentNode;s=vn(e);e=e.previousSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=0}else{i=e;r=Al(i)}}}if(l)Rl(t,i,r);else if(n)Rl(t,n,s)}function $l(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n=Al(i);let s,l;for(;;){if(r<n){if(i.nodeType!=1)break;let t=i.childNodes[r];if(Cl(t,1)){s=i;l=++r}else break}else if(_l(i)){break}else{let e=i.nextSibling;while(e&&Cl(e,1)){s=e.parentNode;l=vn(e)+1;e=e.nextSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=n=0}else{i=e;r=0;n=Al(i)}}}if(s)Rl(t,s,l)}function _l(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Bl(t,e){while(t&&e==t.childNodes.length&&!On(t)){e=vn(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 jl(t,e){while(t&&!e&&!On(t)){e=vn(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 Rl(t,e,i){if(e.nodeType!=3){let t,r;if(r=Bl(e,i)){e=r;i=0}else if(t=jl(e,i)){e=t;i=t.nodeValue.length}}let r=t.domSelection();if($n(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)al(t)}),50)}function ql(t,e){let i=t.state.doc.resolve(e);if(!(Wn||Gn)&&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 Nl(t,e,i){let r=t.state.selection;if(r instanceof Yr&&!r.empty||i.indexOf("s")>-1)return false;if(Vn&&i.indexOf("m")>-1)return false;let{$from:n,$to:s}=r;if(!n.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let i=El(t.state,e);if(i&&i instanceof tn)return xl(t,i)}if(!n.parent.inlineContent){let i=e<0?n:s;let l=r instanceof rn?Kr.near(i,e):Kr.findFrom(i,e);return l?xl(t,l):false}return false}function Tl(t,e){if(!(t.state.selection instanceof Yr))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 zl(t,e,i){t.domObserver.stop();e.contentEditable=i;t.domObserver.start()}function Il(t){if(!Zn||t.state.selection.$head.parentOffset>0)return false;let{focusNode:e,focusOffset:i}=t.domSelectionRange();if(e&&e.nodeType==1&&i==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let i=e.firstChild;zl(t,i,"true");setTimeout((()=>zl(t,i,"false")),20)}return false}function Pl(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 Jl(t,e){let i=e.keyCode,r=Pl(e);if(i==8||Vn&&i==72&&r=="c"){return Tl(t,-1)||Sl(t,-1)}else if(i==46&&!e.shiftKey||Vn&&i==68&&r=="c"){return Tl(t,1)||Sl(t,1)}else if(i==13||i==27){return true}else if(i==37||Vn&&i==66&&r=="c"){let e=i==37?ql(t,t.state.selection.from)=="ltr"?-1:1:-1;return Ml(t,e,r)||Sl(t,e)}else if(i==39||Vn&&i==70&&r=="c"){let e=i==39?ql(t,t.state.selection.from)=="ltr"?1:-1:1;return Ml(t,e,r)||Sl(t,e)}else if(i==38||Vn&&i==80&&r=="c"){return Nl(t,-1,r)||Sl(t,-1)}else if(i==40||Vn&&i==78&&r=="c"){return Il(t)||Nl(t,1,r)||Sl(t,1)}else if(r==(Vn?"m":"c")&&(i==66||i==73||i==89||i==90)){return true}return false}function Ll(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")||Oi.fromSchema(t.state.schema);let o=to(),u=o.createElement("div");u.appendChild(l.serializeFragment(r,{document:o}));let f=u.firstChild,h,a=0;while(f&&f.nodeType==1&&(h=Yl[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 Ul(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 ye(we.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):ye.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=Oi.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=eo(i);if(Yn)io(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")||wi.fromSchema(t.state.schema);o=e.parseSlice(l,{preserveWhitespace:!!(u||h),context:n,ruleFromNode(t){if(t.nodeName=="BR"&&!t.nextSibling&&t.parentNode&&!Wl.test(t.parentNode.nodeName))return{ignore:true};return null}})}if(h){o=ro(Xl(o,+h[1],+h[2]),h[4])}else{o=ye.maxOpen(Hl(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=Xl(o,t,e)}}t.someProp("transformPasted",(e=>{o=e(o,t)}));return o}const Wl=/^(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 Hl(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&&Kl(e,s,t,l[l.length-1],0)){l[l.length-1]=i}else{if(l.length)l[l.length-1]=Vl(l[l.length-1],s.length);let i=Zl(t,e);l.push(i);n=n.matchType(i.type);s=e}}));if(l)return we.from(l)}return t}function Zl(t,e,i=0){for(let r=e.length-1;r>=i;r--)t=e[r].create(null,we.from(t));return t}function Kl(t,e,i,r,n){if(n<t.length&&n<e.length&&t[n]==e[n]){let s=Kl(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(we.from(Zl(i,t,n+1))))}}function Vl(t,e){if(e==0)return t;let i=t.content.replaceChild(t.childCount-1,Vl(t.lastChild,e-1));let r=t.contentMatchAt(t.childCount).fillBefore(we.empty,true);return t.copy(i.append(r))}function Gl(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=Gl(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(we.empty,true));return t.replaceChild(e<0?0:t.childCount-1,l.copy(o))}function Xl(t,e,i){if(e<t.openStart)t=new ye(Gl(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd);if(i<t.openEnd)t=new ye(Gl(t.content,1,i,t.openEnd,0,0),t.openStart,i);return t}const Yl={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 Ql=null;function to(){return Ql||(Ql=document.implementation.createHTMLDocument("title"))}function eo(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);if(e)t=t.slice(e[0].length);let i=to().createElement("div");let r=/<([a-z][^>\s]+)/i.exec(t),n;if(n=r&&Yl[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 io(t){let e=t.querySelectorAll(Wn?"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 ro(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=we.from(e.create(r[t+1],n));s++;l++}return new ye(n,s,l)}const no={};const so={};const lo={touchstart:true,touchmove:true};class oo{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 uo(t){for(let e in no){let i=no[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{if(po(t,e)&&!co(t,e)&&(t.editable||!(e.type in so)))i(t,e)},lo[e]?{passive:true}:undefined)}if(Zn)t.dom.addEventListener("input",(()=>null));ao(t)}function fo(t,e){t.input.lastSelectionOrigin=e;t.input.lastSelectionTime=Date.now()}function ho(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 ao(t){t.someProp("handleDOMEvents",(e=>{for(let i in e)if(!t.input.eventHandlers[i])t.dom.addEventListener(i,t.input.eventHandlers[i]=e=>co(t,e))}))}function co(t,e){return t.someProp("handleDOMEvents",(i=>{let r=i[e.type];return r?r(t,e)||e.defaultPrevented:false}))}function po(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 mo(t,e){if(!co(t,e)&&no[e.type]&&(t.editable||!(e.type in so)))no[e.type](t,e)}so.keydown=(t,e)=>{let i=e;t.input.shiftKey=i.keyCode==16||i.shiftKey;if(So(t,i))return;t.input.lastKeyCode=i.keyCode;t.input.lastKeyCodeTime=Date.now();if(Xn&&Wn&&i.keyCode==13)return;if(i.keyCode!=229)t.domObserver.forceFlush();if(Kn&&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,_n(13,"Enter"))));t.input.lastIOSEnter=0}}),200)}else if(t.someProp("handleKeyDown",(e=>e(t,i)))||Jl(t,i)){i.preventDefault()}else{fo(t,"key")}};so.keyup=(t,e)=>{if(e.keyCode==16)t.input.shiftKey=false};so.keypress=(t,e)=>{let i=e;if(So(t,i)||!i.charCode||i.ctrlKey&&!i.altKey||Vn&&i.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,i)))){i.preventDefault();return}let r=t.state.selection;if(!(r instanceof Yr)||!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 wo(t){return{left:t.clientX,top:t.clientY}}function go(t,e){let i=e.x-t.clientX,r=e.y-t.clientY;return i*i+r*r<100}function bo(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 ko(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 Do(t,e){if(e==-1)return false;let i=t.state.doc.resolve(e),r=i.nodeAfter;if(r&&r.isAtom&&tn.isSelectable(r)){ko(t,new tn(i),"pointer");return true}return false}function vo(t,e){if(e==-1)return false;let i=t.state.selection,r,n;if(i instanceof tn)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(tn.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){ko(t,tn.create(t.state.doc,n),"pointer");return true}else{return false}}function yo(t,e,i,r,n){return bo(t,"handleClickOn",e,i,r)||t.someProp("handleClick",(i=>i(t,e,r)))||(n?vo(t,i):Do(t,i))}function Fo(t,e,i,r){return bo(t,"handleDoubleClickOn",e,i,r)||t.someProp("handleDoubleClick",(i=>i(t,e,r)))}function Eo(t,e,i,r){return bo(t,"handleTripleClickOn",e,i,r)||t.someProp("handleTripleClick",(i=>i(t,e,r)))||xo(t,i,r)}function xo(t,e,i){if(i.button!=0)return false;let r=t.state.doc;if(e==-1){if(r.inlineContent){ko(t,Yr.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)ko(t,Yr.create(r,s+1,s+1+i.content.size),"pointer");else if(tn.isSelectable(i))ko(t,tn.create(r,s),"pointer");else continue;return true}}function Mo(t){return jo(t)}const Ao=Vn?"metaKey":"ctrlKey";no.mousedown=(t,e)=>{let i=e;t.input.shiftKey=i.shiftKey;let r=Mo(t);let n=Date.now(),s="singleClick";if(n-t.input.lastClick.time<500&&go(i,t.input.lastClick)&&!i[Ao]){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(wo(i));if(!l)return;if(s=="singleClick"){if(t.input.mouseDown)t.input.mouseDown.done();t.input.mouseDown=new Co(t,l,i,!!r)}else if((s=="doubleClick"?Fo:Eo)(t,l.pos,l.inside,i)){i.preventDefault()}else{fo(t,"pointer")}};class Co{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[Ao];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 tn&&u.from<=s&&u.to>s)this.mightDrag={node:n,pos:s,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&Ln&&!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));fo(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((()=>al(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(wo(t));this.updateAllowDefault(t);if(this.allowDefault||!e){fo(this.view,"pointer")}else if(yo(this.view,e.pos,e.inside,t,this.selectNode)){t.preventDefault()}else if(t.button==0&&(this.flushed||Zn&&this.mightDrag&&!this.mightDrag.node.isAtom||Wn&&!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)){ko(this.view,Kr.near(this.view.state.doc.resolve(e.pos)),"pointer");t.preventDefault()}else{fo(this.view,"pointer")}}move(t){this.updateAllowDefault(t);fo(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}}no.touchstart=t=>{t.input.lastTouch=Date.now();Mo(t);fo(t,"pointer")};no.touchmove=t=>{t.input.lastTouch=Date.now();fo(t,"pointer")};no.contextmenu=t=>Mo(t);function So(t,e){if(t.composing)return true;if(Zn&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500){t.input.compositionEndedAt=-2e8;return true}return false}const Oo=Xn?5e3:-1;so.compositionstart=so.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();jo(t,true);t.markCursor=null}else{jo(t);if(Ln&&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}$o(t,Oo)};so.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++;$o(t,20)}};function $o(t,e){clearTimeout(t.input.composingTimeout);if(e>-1)t.input.composingTimeout=setTimeout((()=>jo(t)),e)}function _o(t){if(t.composing){t.input.composing=false;t.input.compositionEndedAt=Bo()}while(t.input.compositionNodes.length>0)t.input.compositionNodes.pop().markParentsDirty()}function Bo(){let t=document.createEvent("Event");t.initEvent("event",true,true);return t.timeStamp}function jo(t,e=false){if(Xn&&t.domObserver.flushingSoon>=0)return;t.domObserver.forceFlush();_o(t);if(e||t.docView&&t.docView.dirty){let e=fl(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 Ro(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 qo=Pn&&Jn<15||Kn&&Qn<604;no.copy=so.cut=(t,e)=>{let i=e;let r=t.state.selection,n=i.type=="cut";if(r.empty)return;let s=qo?null:i.clipboardData;let l=r.content(),{dom:o,text:u}=Ll(t,l);if(s){i.preventDefault();s.clearData();s.setData("text/html",o.innerHTML);s.setData("text/plain",u)}else{Ro(t,o)}if(n)t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function No(t){return t.openStart==0&&t.openEnd==0&&t.content.childCount==1?t.content.firstChild:null}function To(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)zo(t,r.value,null,n,e);else zo(t,r.textContent,r.innerHTML,n,e)}),50)}function zo(t,e,i,r,n){let s=Ul(t,e,i,r,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,n,s||ye.empty))))return true;if(!s)return false;let l=No(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 Io(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," "):""}so.paste=(t,e)=>{let i=e;if(t.composing&&!Xn)return;let r=qo?null:i.clipboardData;let n=t.input.shiftKey&&t.input.lastKeyCode!=45;if(r&&zo(t,Io(r),r.getData("text/html"),n,i))i.preventDefault();else To(t,i)};class Po{constructor(t,e,i){this.slice=t;this.move=e;this.node=i}}const Jo=Vn?"altKey":"ctrlKey";no.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(wo(i));let l;if(s&&s.pos>=n.from&&s.pos<=(n instanceof tn?n.to-1:n.to));else if(r&&r.mightDrag){l=tn.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=tn.create(t.state.doc,e.posBefore)}let o=(l||t.state.selection).content(),{dom:u,text:f}=Ll(t,o);i.dataTransfer.clearData();i.dataTransfer.setData(qo?"Text":"text/html",u.innerHTML);i.dataTransfer.effectAllowed="copyMove";if(!qo)i.dataTransfer.setData("text/plain",f);t.dragging=new Po(o,!i[Jo],l)};no.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{if(t.dragging==e)t.dragging=null}),50)};so.dragover=so.dragenter=(t,e)=>e.preventDefault();so.drop=(t,e)=>{let i=e;let r=t.dragging;t.dragging=null;if(!i.dataTransfer)return;let n=t.posAtCoords(wo(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=Ul(t,Io(i.dataTransfer),qo?null:i.dataTransfer.getData("text/html"),false,s)}let o=!!(r&&!i[Jo]);if(t.someProp("handleDrop",(e=>e(t,i,l||ye.empty,o)))){i.preventDefault();return}if(!l)return;i.preventDefault();let u=l?Ar(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&&tn.isSelectable(l.content.firstChild)&&d.nodeAfter&&d.nodeAfter.sameMarkup(l.content.firstChild)){f.setSelection(new tn(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"))};no.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()))al(t)}),20)}};no.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}};no.beforeinput=(t,e)=>{let i=e;if(Wn&&Xn&&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,_n(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 so)no[t]=so[t];function Lo(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 Uo{constructor(t,e){this.toDOM=t;this.spec=e||Vo;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 Zo(n-i,n-i,this)}valid(){return true}eq(t){return this==t||t instanceof Uo&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&Lo(this.spec,t.spec))}destroy(t){if(this.spec.destroy)this.spec.destroy(t)}}class Wo{constructor(t,e){this.attrs=t;this.spec=e||Vo}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 Zo(n,s,this)}valid(t,e){return e.from<e.to}eq(t){return this==t||t instanceof Wo&&Lo(this.attrs,t.attrs)&&Lo(this.spec,t.spec)}static is(t){return t.type instanceof Wo}destroy(){}}class Ho{constructor(t,e){this.attrs=t;this.spec=e||Vo}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 Zo(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 Ho&&Lo(this.attrs,t.attrs)&&Lo(this.spec,t.spec)}destroy(){}}class Zo{constructor(t,e,i){this.from=t;this.to=e;this.type=i}copy(t,e){return new Zo(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 Zo(t,t,new Uo(e,i))}static inline(t,e,i,r){return new Zo(t,e,new Wo(i,r))}static node(t,e,i,r){return new Zo(t,e,new Ho(i,r))}get spec(){return this.type.spec}get inline(){return this.type instanceof Wo}get widget(){return this.type instanceof Uo}}const Ko=[],Vo={};class Go{constructor(t,e){this.local=t.length?t:Ko;this.children=e.length?e:Ko}static create(t,e){return e.length?nu(e,t,0,Vo):Xo}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==Xo||t.maps.length==0)return this;return this.mapInner(t,e,0,0,i||Vo)}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 Qo(this.children,s||[],t,e,i,r,n);else return s?new Go(s.sort(su),Ko):Xo}add(t,e){if(!e.length)return this;if(this==Xo)return Go.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=iu(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,nu(o,t,l+1,Vo));n+=3}));let s=tu(n?ru(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 Go(s.length?this.local.concat(s).sort(su):this.local,r||this.children)}remove(t){if(t.length==0||this==Xo)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!=Xo){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 Go(r,i):Xo}forChild(t,e){if(this==Xo)return this;if(e.isLeaf)return Go.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 Wo){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 Go(r.sort(su),Ko);return i?new Yo([t,i]):t}return i||Xo}eq(t){if(this==t)return true;if(!(t instanceof Go)||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 lu(this.localsInner(t))}localsInner(t){if(this==Xo)return Ko;if(t.inlineContent||!this.local.some(Wo.is))return this.local;let e=[];for(let t=0;t<this.local.length;t++){if(!(this.local[t].type instanceof Wo))e.push(this.local[t])}return e}}Go.empty=new Go([],[]);Go.removeOverlap=lu;const Xo=Go.empty;class Yo{constructor(t){this.members=t}map(t,e){const i=this.members.map((i=>i.map(t,e,Vo)));return Yo.from(i)}forChild(t,e){if(e.isLeaf)return Go.empty;let i=[];for(let r=0;r<this.members.length;r++){let n=this.members[r].forChild(t,e);if(n==Xo)continue;if(n instanceof Yo)i=i.concat(n.members);else i.push(n)}return Yo.from(i)}eq(t){if(!(t instanceof Yo)||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?lu(i?e:e.sort(su)):Ko}static from(t){switch(t.length){case 0:return Xo;case 1:return t[0];default:return new Yo(t.every((t=>t instanceof Go))?t:t.reduce(((t,e)=>t.concat(e instanceof Go?e:e.members)),[]))}}}function Qo(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!=Xo){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=eu(o,t,e,i,n,s,l);let f=nu(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 Go(e.sort(su),o)}function tu(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 Zo(n.from+e,n.to+e,n.type))}return i}function eu(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 iu(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 ru(t){let e=[];for(let i=0;i<t.length;i++)if(t[i]!=null)e.push(t[i]);return e}function nu(t,e,i,r){let n=[],s=false;e.forEach(((e,l)=>{let o=iu(t,e,l+i);if(o){s=true;let t=nu(o,e,i+l+1,r);if(t!=Xo)n.push(l,l+e.nodeSize,t)}}));let l=tu(s?ru(t):t,-i).sort(su);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 Go(l,n):Xo}function su(t,e){return t.from-e.from||t.to-e.to}function lu(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);ou(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);ou(e,n,r.copy(s.from,r.to))}break}}}return e}function ou(t,e,i){while(e<t.length&&su(i,t[e])>0)e++;t.splice(e,0,i)}function uu(t){let e=[];t.someProp("decorations",(i=>{let r=i(t.state);if(r&&r!=Xo)e.push(r)}));if(t.cursorWrapper)e.push(Go.create(t.state.doc,[t.cursorWrapper.deco]));return Yo.from(e)}const fu={childList:true,characterData:true,characterDataOldValue:true,attributes:true,attributeOldValue:true,subtree:true};const hu=Pn&&Jn<=11;class au{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 cu{constructor(t,e){this.view=t;this.handleDOMChange=e;this.queue=[];this.flushingSoon=-1;this.observer=null;this.currentSelection=new au;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(Pn&&Jn<=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(hu){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,fu)}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(!vl(this.view))return;if(this.suppressingSelectionUpdates)return al(this.view);if(Pn&&Jn<=11&&!this.view.state.selection.empty){let t=this.view.domSelectionRange();if(t.focusNode&&xn(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=yn(i))e.add(i);for(let r=t.anchorNode;r;r=yn(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)&&vl(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(Ln&&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&&$n(i)&&(u=fl(t))&&u.eq(Kr.near(t.state.doc.resolve(0),1))){t.input.lastFocus=0;al(t);this.currentSelection.set(i);t.scrollToSelection()}else if(n>-1||r){if(n>-1){t.docView.markDirty(n,s);mu(t)}this.handleDOMChange(n,s,l,o);if(t.docView&&t.docView.dirty)t.updateState(t.state);else if(!this.currentSelection.eq(i))al(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(Pn&&Jn<=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?vn(r)+1:0;let l=i.localPosFromDOM(t.target,s,-1);let o=n&&n.parentNode==t.target?vn(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 du=new WeakMap;let pu=false;function mu(t){if(du.has(t))return;du.set(t,null);if(["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1){t.requiresGeckoHackNode=Ln;if(pu)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.");pu=true}}function wu(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(xn(o.node,o.offset,s,l))[r,n,s,l]=[s,l,r,n];return{anchorNode:r,anchorOffset:n,focusNode:s,focusOffset:l}}function gu(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(!$n(u))f.push({node:u.focusNode,offset:u.focusOffset})}if(Wn&&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")||wi.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:bu,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 bu(t){let e=t.pmViewDesc;if(e){return e.parseRule()}else if(t.nodeName=="BR"&&t.parentNode){if(Zn&&/^(ul|ol)$/i.test(t.parentNode.nodeName)){let t=document.createElement("div");t.appendChild(document.createElement("li"));return{skip:t}}else if(t.parentNode.lastChild==t||Zn&&/^(tr|table)$/i.test(t.parentNode.nodeName)){return{ignore:true}}}else if(t.nodeName=="IMG"&&t.getAttribute("mark-placeholder")){return{ignore:true}}return null}const ku=/^(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=fl(t,e);if(i&&!t.state.selection.eq(i)){if(Wn&&Xn&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",(e=>e(t,_n(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=gu(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=xu(a.content,f.doc.content,f.from,c,d);if((Kn&&t.input.lastIOSEnter>Date.now()-225||Xn)&&n.some((t=>t.nodeType==1&&!ku.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,_n(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(!p){if(r&&u instanceof Yr&&!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=vu(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(Wn&&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 Yr){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(Pn&&Jn<=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((Kn&&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=Kr.findFrom(f.doc.resolve(m.pos+1),1,true))&&k.head==w.pos)&&t.someProp("handleKeyDown",(e=>e(t,_n(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&Fu(h,p.start,p.endA,m,w)&&t.someProp("handleKeyDown",(e=>e(t,_n(8,"Backspace"))))){if(Xn&&Wn)t.domObserver.suppressSelectionUpdates();return}if(Wn&&Xn&&p.endB==p.start)t.input.lastAndroidDelete=Date.now();if(Xn&&!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,_n(13,"Enter"))}))}),20)}let D=p.start,v=p.endA;let y,F,E;if(b){if(m.pos==w.pos){if(Pn&&Jn<=11&&m.parentOffset==0){t.domObserver.suppressSelectionUpdates();setTimeout((()=>al(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=yu(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=vu(t,y.doc,f.sel);if(e&&!(Wn&&Xn&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(e.head==D||e.head==y.mapping.map(v)-1)||Pn&&e.empty&&e.head==D))y.setSelection(e)}if(F)y.ensureMarks(F);if(s)y.setMeta("composition",s);t.dispatch(y.scrollIntoView())}function vu(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 yu(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(we.from(f).eq(t))return{mark:o,type:l}}function Fu(t,e,i,r,n){if(!r.parent.isTextblock||i-e<=n.pos-r.pos||Eu(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(Eu(s,true,true));if(!l.parent.isTextblock||l.pos>i||Eu(l,true,false)<i)return false;return r.parent.content.cut(r.parentOffset).eq(l.parent.content)}function Eu(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 xu(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&&Mu(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&&Mu(t.textBetween(s-1,s+1)))s+=e?1:-1;l=s+(l-o);o=s}return{start:s,endA:l,endB:o}}function Mu(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 Au{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 oo;this.prevDirectPlugins=[];this.pluginViews=[];this.requiresGeckoHackNode=false;this.dragging=null;this._props=e;this.state=e.state;this.directPlugins=e.plugins||[];this.directPlugins.forEach(ju);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=Ou(this);Su(this);this.nodeViews=_u(this);this.docView=Js(this.state.doc,Cu(this),uu(this),this.dom,this);this.domObserver=new cu(this,((t,e,i,r)=>Du(this,t,e,i,r)));this.domObserver.start();uo(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)ao(this);let e=this._props;this._props=t;if(t.plugins){t.plugins.forEach(ju);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){_o(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=_u(this);if(Bu(t,this.nodeViews)){this.nodeViews=t;n=true}}if(l||e.handleDOMEvents!=this._props.handleDOMEvents){ao(this)}this.editable=Ou(this);Su(this);let o=uu(this),u=Cu(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&&ns(this);if(s){this.domObserver.stop();let e=h&&(Pn||Wn)&&!this.composing&&!r.selection.empty&&!t.selection.empty&&$u(r.selection,t.selection);if(h){let i=Wn?this.trackWrites=this.domSelectionRange().focusNode:null;if(n||!this.docView.update(t.doc,u,o,this)){this.docView.updateOuterDeco([]);this.docView.destroy();this.docView=Js(t.doc,u,o,this.dom,this)}if(i&&!this.trackWrites)e=true}if(e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&Fl(this))){al(this,e)}else{bl(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){ls(a)}}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof tn){let e=this.docView.domAfterPos(this.state.selection.from);if(e.nodeType==1)rs(this,e.getBoundingClientRect(),t)}else{rs(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 Po(t.slice,t.move,r<0?undefined:tn.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(Pn){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)hs(this.dom);al(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 bs(this,t)}coordsAtPos(t,e=1){return ys(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 _s(this,e||this.state,t)}pasteHTML(t,e){return zo(this,"",t,false,e||new ClipboardEvent("paste"))}pasteText(t,e){return zo(this,t,null,true,e||new ClipboardEvent("paste"))}destroy(){if(!this.docView)return;ho(this);this.destroyPluginViews();if(this.mounted){this.docView.update(this.state.doc,[],uu(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 mo(this,t)}dispatch(t){let e=this._props.dispatchTransaction;if(e)e.call(this,t);else this.updateState(this.state.apply(t))}domSelectionRange(){return Zn&&this.root.nodeType===11&&Bn(this.dom.ownerDocument)==this.dom?wu(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function Cu(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[Zo.node(0,t.state.doc.content.size,e)]}function Su(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:Zo.widget(t.state.selection.head,e,{raw:true,marks:t.markCursor})}}else{t.cursorWrapper=null}}function Ou(t){return!t.someProp("editable",(e=>e(t.state)===false))}function $u(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 _u(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 Bu(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 ju(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 Ru=["p",0],qu=["blockquote",0],Nu=["hr"],Tu=["pre",["code",0]],zu=["br"];const Iu={doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return Ru}},blockquote:{content:"block+",group:"block",defining:true,parseDOM:[{tag:"blockquote"}],toDOM(){return qu}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return Nu}},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 Tu}},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 zu}}};const Pu=["em",0],Ju=["strong",0],Lu=["code",0];const Uu={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 Pu}},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 Ju}},code:{parseDOM:[{tag:"code"}],toDOM(){return Lu}}};const Wu=new ci({nodes:Iu,marks:Uu});const Hu=["ol",0],Zu=["ul",0],Ku=["li",0];const Vu={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?Hu:["ol",{start:t.attrs.order},0]}};const Gu={parseDOM:[{tag:"ul"}],toDOM(){return Zu}};const Xu={parseDOM:[{tag:"li"}],toDOM(){return Ku},defining:true};function Yu(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 Qu(t,e,i){return t.append({ordered_list:Yu(Vu,{content:"list_item+",group:i}),bullet_list:Yu(Gu,{content:"list_item+",group:i}),list_item:Yu(Xu,{content:e})})}function tf(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=cr(u,t,e,l);if(!f)return false;if(r)r(ef(i.tr,l,f,o,t).scrollIntoView());return true}}function ef(t,e,i,r,n){let s=we.empty;for(let t=i.length-1;t>=0;t--)s=we.from(i[t].type.create(i[t].attrs,s));t.step(new nr(e.start-(r?2:0),e.end,e.start,e.end,new ye(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 rf(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=we.empty;let s=n.index(-1)?1:n.index(-2)?2:3;for(let t=n.depth-s;t>=n.depth-3;t--)e=we.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(we.from(t.createAndFill()));let o=n.before(n.depth-(s-1));let u=i.tr.replace(o,n.after(-l),new ye(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(Kr.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 nf(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 sf(e,i,t,s);else return lf(e,i,s)}}function sf(t,e,i,r){let n=t.tr,s=r.end,l=r.$to.end(r.depth);if(s<l){n.step(new nr(s-1,l,s,l,new ye(we.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=hr(r);if(o==null)return false;n.lift(r,o);let u=n.mapping.map(s,-1)-1;if(yr(n.doc,u))n.join(u);e(n.scrollIntoView());return true}function lf(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?we.empty:we.from(n))))return false;let a=s.pos,c=a+l.nodeSize;r.step(new nr(a-(o?1:0),c+(u?1:0),a+1,c-1,new ye((o?we.empty:we.from(n.copy(we.empty))).append(u?we.empty:we.from(n.copy(we.empty))),o?0:1,u?0:1),o?0:1));e(r.scrollIntoView());return true}function of(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=we.from(r?t.create():null);let l=new ye(we.from(t.create(null,we.from(o.type.create(null,n)))),r?3:1,0);let f=s.start,h=s.end;i(e.tr.step(new nr(f-(r?3:1),h,f,h,l,1,true)).scrollIntoView())}return true}}var uf={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 ff={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 hf=typeof navigator!="undefined"&&/Mac/.test(navigator.platform);var af=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var cf=0;cf<10;cf++)uf[48+cf]=uf[96+cf]=String(cf);for(var cf=1;cf<=24;cf++)uf[cf+111]="F"+cf;for(var cf=65;cf<=90;cf++){uf[cf]=String.fromCharCode(cf+32);ff[cf]=String.fromCharCode(cf)}for(var df in uf)if(!ff.hasOwnProperty(df))ff[df]=uf[df];function pf(t){var e=hf&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||af&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified";var i=!e&&t.key||(t.shiftKey?ff:uf)[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 mf=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function wf(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(mf)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 gf(t){let e=Object.create(null);for(let i in t)e[wf(i)]=t[i];return e}function bf(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 kf(t){return new gn({props:{handleKeyDown:Df(t)}})}function Df(t){let e=gf(t);return function(t,i){let r=pf(i),n,s=e[bf(r,i)];if(s&&s(t.state,t.dispatch,t))return true;if(r.length==1&&r!=" "){if(i.shiftKey){let n=e[bf(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=uf[i.keyCode])&&n!=r){let r=e[bf(n,i)];if(r&&r(t.state,t.dispatch,t))return true}}return false}}var vf=200;var yf=function t(){};yf.prototype.append=function t(e){if(!e.length){return this}e=yf.from(e);return!this.length&&e||e.length<vf&&this.leafAppend(e)||this.length<vf&&e.leafPrepend(this)||this.appendInner(e)};yf.prototype.prepend=function t(e){if(!e.length){return this}return yf.from(e).append(this)};yf.prototype.appendInner=function t(e){return new Ef(this,e)};yf.prototype.slice=function t(e,i){if(e===void 0)e=0;if(i===void 0)i=this.length;if(e>=i){return yf.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,i))};yf.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};yf.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)}};yf.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};yf.from=function t(e){if(e instanceof yf){return e}return e&&e.length?new Ff(e):yf.empty};var Ff=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<=vf){return new e(this.values.concat(i.flatten()))}};e.prototype.leafPrepend=function t(i){if(this.length+i.length<=vf){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}(yf);yf.empty=new Ff([]);var Ef=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}(yf);const xf=500;class Mf{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 Cf(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 Cf(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 Mf(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 Cf(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>Of){l=Af(l,u);s-=u}return new Mf(l.append(n),s)}remapping(t,e){let i=new Ki;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 Mf(this.items.append(t.map((t=>new Cf(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 Cf(u,s,f))}else{i.push(new Cf(u))}}),r);let u=[];for(let t=e;t<s;t++)u.push(new Cf(n.maps[t]));let f=this.items.slice(0,r).append(u).append(i);let h=new Mf(f,l);if(h.emptyItemCount()>xf)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 Cf(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 Mf(yf.from(r.reverse()),n)}}Mf.empty=new Mf(yf.empty,0);function Af(t,e){let i;t.forEach(((t,r)=>{if(t.selection&&e--==0){i=r;return false}}));return t.slice(i)}class Cf{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 Cf(e.getMap().invert(),e,this.selection)}}}class Sf{constructor(t,e,i,r,n){this.done=t;this.undone=e;this.prevRanges=i;this.prevTime=r;this.prevComposition=n}}const Of=20;function $f(t,e,i,r){let n=i.getMeta(zf),s;if(n)return n.historyState;if(i.getMeta(If))t=new Sf(t.done,t.undone,null,0,-1);let l=i.getMeta("appendedTransaction");if(i.steps.length==0){return t}else if(l&&l.getMeta(zf)){if(l.getMeta(zf).redo)return new Sf(t.done.addTransform(i,undefined,r,Tf(e)),t.undone,Bf(i.mapping.maps[i.steps.length-1]),t.prevTime,t.prevComposition);else return new Sf(t.done,t.undone.addTransform(i,undefined,r,Tf(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||!_f(i,t.prevRanges));let o=l?jf(t.prevRanges,i.mapping):Bf(i.mapping.maps[i.steps.length-1]);return new Sf(t.done.addTransform(i,s?e.selection.getBookmark():undefined,r,Tf(e)),Mf.empty,o,i.time,n==null?t.prevComposition:n)}else if(s=i.getMeta("rebased")){return new Sf(t.done.rebased(i,s),t.undone.rebased(i,s),jf(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}else{return new Sf(t.done.addMaps(i.mapping.maps),t.undone.addMaps(i.mapping.maps),jf(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}}function _f(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 Bf(t){let e=[];t.forEach(((t,i,r,n)=>e.push(r,n)));return e}function jf(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 Rf(t,e,i,r){let n=Tf(e);let s=zf.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 Sf(r?u:l.remaining,r?l.remaining:u,null,0,-1);i(l.transform.setSelection(o).setMeta(zf,{redo:r,historyState:f}).scrollIntoView())}let qf=false,Nf=null;function Tf(t){let e=t.plugins;if(Nf!=e){qf=false;Nf=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){qf=true;break}}return qf}const zf=new Dn("history");const If=new Dn("closeHistory");function Pf(t={}){t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500};return new gn({key:zf,state:{init(){return new Sf(Mf.empty,Mf.empty,null,0,-1)},apply(e,i,r){return $f(i,r,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(t,e){let i=e.inputType;let r=i=="historyUndo"?Jf:i=="historyRedo"?Lf:null;if(!r)return false;e.preventDefault();return r(t.state,t.dispatch)}}}})}const Jf=(t,e)=>{let i=zf.getState(t);if(!i||i.done.eventCount==0)return false;if(e)Rf(i,t,e,false);return true};const Lf=(t,e)=>{let i=zf.getState(t);if(!i||i.undone.eventCount==0)return false;if(e)Rf(i,t,e,true);return true};const Uf=(t,e)=>{if(t.selection.empty)return false;if(e)e(t.tr.deleteSelection().scrollIntoView());return true};function Wf(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("backward",t):i.parentOffset>0))return null;return i}const Hf=(t,e,i)=>{let r=Wf(t,i);if(!r)return false;let n=Vf(r);if(!n){let i=r.blockRange(),n=i&&hr(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&&dh(t,n,e))return true;if(r.parent.content.size==0&&(Zf(s,"end")||tn.isSelectable(s))){let i=Cr(t.doc,r.before(),r.after(),ye.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(Zf(s,"end")?Kr.findFrom(r.doc.resolve(r.mapping.map(n.pos,-1)),-1):tn.create(r.doc,n.pos-s.nodeSize));e(r.scrollIntoView())}return true}}if(s.isAtom&&n.depth==r.depth-1){if(e)e(t.tr.delete(n.pos-s.nodeSize,n.pos).scrollIntoView());return true}return false};function Zf(t,e,i=false){for(let r=t;r;r=e=="start"?r.firstChild:r.lastChild){if(r.isTextblock)return true;if(i&&r.childCount!=1)return false}return false}const Kf=(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=Vf(r)}let l=s&&s.nodeBefore;if(!l||!tn.isSelectable(l))return false;if(e)e(t.tr.setSelection(tn.create(t.doc,s.pos-l.nodeSize)).scrollIntoView());return true};function Vf(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 Gf(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 Xf=(t,e,i)=>{let r=Gf(t,i);if(!r)return false;let n=Qf(r);if(!n)return false;let s=n.nodeAfter;if(dh(t,n,e))return true;if(r.parent.content.size==0&&(Zf(s,"start")||tn.isSelectable(s))){let i=Cr(t.doc,r.before(),r.after(),ye.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(Zf(s,"start")?Kr.findFrom(r.doc.resolve(r.mapping.map(n.pos)),1):tn.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 Yf=(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=Qf(r)}let l=s&&s.nodeAfter;if(!l||!tn.isSelectable(l))return false;if(e)e(t.tr.setSelection(tn.create(t.doc,s.pos)).scrollIntoView());return true};function Qf(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 th=(t,e)=>{let i=t.selection,r=i instanceof tn,n;if(r){if(i.node.isTextblock||!yr(t.doc,i.from))return false;n=i.from}else{n=Er(t.doc,i.from,-1);if(n==null)return false}if(e){let i=t.tr.join(n);if(r)i.setSelection(tn.create(i.doc,n-t.doc.resolve(n).nodeBefore.nodeSize));e(i.scrollIntoView())}return true};const eh=(t,e)=>{let i=t.selection,r;if(i instanceof tn){if(i.node.isTextblock||!yr(t.doc,i.to))return false;r=i.to}else{r=Er(t.doc,i.to,1);if(r==null)return false}if(e)e(t.tr.join(r).scrollIntoView());return true};const ih=(t,e)=>{let{$from:i,$to:r}=t.selection;let n=i.blockRange(r),s=n&&hr(n);if(s==null)return false;if(e)e(t.tr.lift(n,s).scrollIntoView());return true};const rh=(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 nh(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 sh=(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=nh(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(Kr.near(n.doc.resolve(r),1));e(n.scrollIntoView())}return true};const lh=(t,e)=>{let i=t.selection,{$from:r,$to:n}=i;if(i instanceof rn||r.parent.inlineContent||n.parent.inlineContent)return false;let s=nh(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(Yr.create(l.doc,i+1));e(l.scrollIntoView())}return true};const oh=(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&&hr(r);if(n==null)return false;if(e)e(t.tr.lift(r,n).scrollIntoView());return true};function uh(t){return(e,i)=>{let{$from:r,$to:n}=e.selection;if(e.selection instanceof tn&&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 Yr||e.selection instanceof rn)l.deleteSelection();let o=r.depth==0?null:nh(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 fh=uh();const hh=(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(tn.create(t.doc,n)));return true};const ah=(t,e)=>{if(e)e(t.tr.setSelection(new rn(t.doc)));return true};function ch(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||yr(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 dh(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s,l;if(r.type.spec.isolating||n.type.spec.isolating)return false;if(ch(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=we.empty;for(let t=s.length-1;t>=0;t--)o=we.from(s[t].create(null,o));o=we.from(r.copy(o));let u=t.tr.step(new nr(e.pos-1,l,e.pos,l,new ye(o,1,0),s.length,true));let f=l+2*s.length;if(yr(u.doc,f))u.join(f);i(u.scrollIntoView())}return true}let u=Kr.findFrom(e,1);let f=u&&u.$from.blockRange(u.$to),h=f&&hr(f);if(h!=null&&h>=e.depth){if(i)i(t.tr.lift(f,h).scrollIntoView());return true}if(o&&Zf(n,"start",true)&&Zf(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=we.empty;for(let t=l.length-1;t>=0;t--)r=we.from(l[t].copy(r));let s=t.tr.step(new nr(e.pos-l.length,e.pos+n.nodeSize,e.pos+u,e.pos+n.nodeSize-u,new ye(r,l.length,0),0,true));i(s.scrollIntoView())}return true}}return false}function ph(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(Yr.create(e.doc,t<0?n.start(s):n.end(s))));return true}}const mh=ph(-1);const wh=ph(1);function gh(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),o=l&&cr(l,t,e);if(!o)return false;if(r)r(i.tr.wrap(l,o).scrollIntoView());return true}}function bh(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 kh(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||!kh(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 vh(...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 yh=vh(Uf,Hf,Kf);let Fh=vh(Uf,Xf,Yf);const Eh={Enter:vh(rh,lh,oh,fh),"Mod-Enter":sh,Backspace:yh,"Mod-Backspace":yh,"Shift-Backspace":yh,Delete:Fh,"Mod-Delete":Fh,"Mod-a":ah};const xh={"Ctrl-h":Eh["Backspace"],"Alt-Backspace":Eh["Mod-Backspace"],"Ctrl-d":Eh["Delete"],"Ctrl-Alt-Backspace":Eh["Mod-Delete"],"Alt-Delete":Eh["Mod-Delete"],"Alt-d":Eh["Mod-Delete"],"Ctrl-a":mh,"Ctrl-e":wh};for(let t in Eh)xh[t]=Eh[t];const Mh=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os!="undefined"&&os.platform?os.platform()=="darwin":false;const Ah=Mh?xh:Eh;function Ch(t={}){return new gn({view(e){return new Sh(e,t)}})}class Sh{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=Ar(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 Oh extends Kr{constructor(t){super(t,t)}map(t,e){let i=t.resolve(e.map(this.head));return Oh.valid(i)?new Oh(i):Kr.near(i)}content(){return ye.empty}eq(t){return t instanceof Oh&&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 Oh(t.resolve(e.pos))}getBookmark(){return new $h(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!_h(t)||!Bh(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&&Oh.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(Oh.valid(l))return l}for(;;){let s=e>0?n.firstChild:n.lastChild;if(!s){if(n.isAtom&&!n.isText&&!tn.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(Oh.valid(l))return l}return null}}}Oh.prototype.visible=false;Oh.findFrom=Oh.findGapCursorFrom;Kr.jsonID("gapcursor",Oh);class $h{constructor(t){this.pos=t}map(t){return new $h(t.map(this.pos))}resolve(t){let e=t.resolve(this.pos);return Oh.valid(e)?new Oh(e):Kr.near(e)}}function _h(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 Bh(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 jh(){return new gn({props:{decorations:zh,createSelectionBetween(t,e,i){return e.pos==i.pos&&Oh.valid(i)?new Oh(i):null},handleClick:Nh,handleKeyDown:Rh,handleDOMEvents:{beforeinput:Th}}})}const Rh=Df({ArrowLeft:qh("horiz",-1),ArrowRight:qh("horiz",1),ArrowUp:qh("vert",-1),ArrowDown:qh("vert",1)});function qh(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 Yr){if(!n.endOfTextblock(i)||l.depth==0)return false;o=false;l=t.doc.resolve(e>0?l.after():l.before())}let u=Oh.findGapCursorFrom(l,e,o);if(!u)return false;if(r)r(t.tr.setSelection(new Oh(u)));return true}}function Nh(t,e,i){if(!t||!t.editable)return false;let r=t.state.doc.resolve(e);if(!Oh.valid(r))return false;let n=t.posAtCoords({left:i.clientX,top:i.clientY});if(n&&n.inside>-1&&tn.isSelectable(t.state.doc.nodeAt(n.inside)))return false;t.dispatch(t.state.tr.setSelection(new Oh(r)));return true}function Th(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof Oh))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=we.empty;for(let t=r.length-1;t>=0;t--)n=we.from(r[t].createAndFill(null,n));let s=t.state.tr.replace(i.pos,i.pos,new ye(n,0,0));s.setSelection(Yr.near(s.doc.resolve(i.pos+1)));t.dispatch(s);return false}function zh(t){if(!(t.selection instanceof Oh))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return Go.create(t.doc,[Zo.widget(t.selection.head,e,{key:"gapcursor"})])}function Ih(){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++)Ph(t,arguments[e]);return t}function Ph(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++)Ph(t,e[i])}else{throw new RangeError("Unsupported child node: "+e)}}const Jh="http://www.w3.org/2000/svg";const Lh="http://www.w3.org/1999/xlink";const Uh="ProseMirror-icon";function Wh(t){let e=0;for(let i=0;i<t.length;i++)e=(e<<5)-e+t.charCodeAt(i)|0;return e}function Hh(t,e){let i=(t.nodeType==9?t:t.ownerDocument)||document;let r=i.createElement("div");r.className=Uh;if(e.path){let{path:n,width:s,height:l}=e;let o="pm-icon-"+Wh(n).toString(16);if(!i.getElementById(o))Zh(t,o,e);let u=r.appendChild(i.createElementNS(Jh,"svg"));u.style.width=s/l+"em";let f=u.appendChild(i.createElementNS(Jh,"use"));f.setAttributeNS(Lh,"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 Zh(t,e,i){let[r,n]=t.nodeType==9?[t,t.body]:[t.ownerDocument||document,t];let s=r.getElementById(Uh+"-collection");if(!s){s=r.createElementNS(Jh,"svg");s.id=Uh+"-collection";s.style.display="none";n.insertBefore(s,n.firstChild)}let l=r.createElementNS(Jh,"symbol");l.id=e;l.setAttribute("viewBox","0 0 "+i.width+" "+i.height);let o=l.appendChild(r.createElementNS(Jh,"path"));o.setAttribute("d",i.path);s.appendChild(l)}const Kh="ProseMirror-menu";class Vh{constructor(t){this.spec=t}render(t){let e=this.spec;let i=e.render?e.render(t):e.icon?Hh(t.root,e.icon):e.label?Ih("div",null,Gh(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",Gh(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(Kh+"-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;pa(i,Kh+"-disabled",!r)}if(e.active){let n=r&&e.active(t)||false;pa(i,Kh+"-active",n)}return true}return{dom:i,update:r}}}function Gh(t,e){return t._props.translate?t._props.translate(e):e}let Xh={time:0,node:null};function Yh(t){Xh.time=Date.now();Xh.node=t.target}function Qh(t){return Date.now()-100<Xh.time&&Xh.node&&t.contains(Xh.node)}class ta{constructor(t,e={}){this.options=e;this.options=e||{};this.content=Array.isArray(t)?t:[t]}render(t){let e=ea(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Ih("div",{class:Kh+"-dropdown "+(this.options.class||""),style:this.options.css},Gh(t,this.options.label||""));if(this.options.title)r.setAttribute("title",Gh(t,this.options.title));let n=Ih("div",{class:Kh+"-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();Yh(t);if(s){o()}else{s=this.expand(n,e.dom);i.addEventListener("mousedown",l=()=>{if(!Qh(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=Ih("div",{class:Kh+"-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 ea(t,e){let i=[],r=[];for(let n=0;n<t.length;n++){let{dom:s,update:l}=t[n].render(e);i.push(Ih("div",{class:Kh+"-dropdown-item"},s));r.push(l)}return{dom:i,update:ia(r,i)}}function ia(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 ra{constructor(t,e={}){this.options=e;this.content=Array.isArray(t)?t:[t]}render(t){let e=ea(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Ih("div",{class:Kh+"-submenu-label"},Gh(t,this.options.label||""));let n=Ih("div",{class:Kh+"-submenu-wrap"},r,Ih("div",{class:Kh+"-submenu"},e.dom));let s=null;r.addEventListener("mousedown",(t=>{t.preventDefault();Yh(t);pa(n,Kh+"-submenu-wrap-active",false);if(!s)i.addEventListener("mousedown",s=()=>{if(!Qh(n)){n.classList.remove(Kh+"-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 na(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=Ih("span",{class:Kh+"item"},r);i.appendChild(s);u.push(s);o.push(n)}if(o.length){r.push(ia(o,u));if(s<e.length-1)n.push(i.appendChild(sa()))}}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 sa(){return Ih("span",{class:Kh+"separator"})}const la={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 oa=new Vh({title:"Join with above block",run:th,select:t=>th(t),icon:la.join});const ua=new Vh({title:"Lift out of enclosing block",run:ih,select:t=>ih(t),icon:la.lift});const fa=new Vh({title:"Select parent node",run:hh,select:t=>hh(t),icon:la.selectParentNode});let ha=new Vh({title:"Undo last change",run:Jf,enable:t=>Jf(t),icon:la.undo});let aa=new Vh({title:"Redo last undone change",run:Lf,enable:t=>Lf(t),icon:la.redo});function ca(t,e){let i={run(i,r){return gh(t,e.attrs)(i,r)},select(i){return gh(t,e.attrs)(i)}};for(let t in e)i[t]=e[t];return new Vh(i)}function da(t,e){let i=bh(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 Vh(r)}function pa(t,e,i){if(i)t.classList.add(e);else t.classList.remove(e)}const ma="ProseMirror-menubar";function wa(){if(typeof navigator=="undefined")return false;let t=navigator.userAgent;return!/Edge\/\d/.test(t)&&/AppleWebKit/.test(t)&&/Mobile\/\w+/.test(t)}function ga(t){return new gn({view(e){return new ba(e,t)}})}class ba{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=Ih("div",{class:ma+"-wrapper"});this.menu=this.wrapper.appendChild(Ih("div",{class:ma}));this.menu.className=ma;if(t.dom.parentNode)t.dom.parentNode.replaceChild(this.wrapper,t.dom);this.wrapper.appendChild(t.dom);let{dom:i,update:r}=na(this.editorView,this.options.content);this.contentUpdate=r;this.menu.appendChild(i);this.update();if(e.floating&&!wa()){this.updateFloat();let t=va(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[ka(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=Ih("div",{class:ma+"-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 ka(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 va(t){let e=[t.ownerDocument.defaultView||window];for(let i=t.parentNode;i;i=i.parentNode)e.push(i);return e}class ya{constructor(t,e,i={}){this.match=t;this.match=t;this.handler=typeof e=="string"?Fa(e):e;this.undoable=i.undoable!==false;this.inCode=i.inCode||false}}function Fa(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 Ea=500;function xa({rules:t}){let e=new gn({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 Ma(i,r,n,s,t,e)},handleDOMEvents:{compositionend:i=>{setTimeout((()=>{let{$cursor:r}=i.state.selection;if(r)Ma(i,r.pos,r.pos,"",t,e)}))}}},isInputRules:true});return e}function Ma(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-Ea),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 Aa=(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 Ca=new ya(/--$/,"—");const Sa=new ya(/\.\.\.$/,"…");const Oa=new ya(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");const $a=new ya(/"$/,"”");const _a=new ya(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");const Ba=new ya(/'$/,"’");const ja=[Oa,$a,_a,Ba];function Ra(t,e,i=null,r){return new ya(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&&cr(h,e,o);if(!a)return null;u.wrap(h,a);let c=u.doc.resolve(s-1).nodeBefore;if(c&&c.type==e&&yr(u.doc,s-1)&&(!r||r(n,c)))u.join(s-1);return u}))}function qa(t,e,i=null){return new ya(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 Na="ProseMirror-prompt";function Ta(t){let e=document.body.appendChild(document.createElement("div"));e.className=Na;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=Na+"-submit";s.textContent="OK";let l=document.createElement("button");l.type="button";l.className=Na+"-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=Na+"-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=za(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 za(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){Ia(l,u);return null}i[n]=s.clean(o)}return i}function Ia(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 Pa{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 Ja extends Pa{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 La(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 Ua(t){return new Vh({title:"Insert image",label:"Image",enable(e){return La(e,t)},run(e,i,r){let{from:n,to:s}=e.selection,l=null;if(e.selection instanceof tn&&e.selection.node.type==t)l=e.selection.node.attrs;Ta({title:"Insert image",fields:{src:new Ja({label:"Location",required:true,value:l&&l.src}),title:new Ja({label:"Title",value:l&&l.title}),alt:new Ja({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 Wa(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 Vh(i)}function Ha(t,e){let{from:i,$from:r,to:n,empty:s}=t.selection;if(s)return!!e.isInSet(t.storedMarks||r.marks());else return t.doc.rangeHasMark(i,n,e)}function Za(t,e){let i={active(e){return Ha(e,t)}};for(let t in e)i[t]=e[t];return Wa(Dh(t),i)}function Ka(t){return new Vh({title:"Add or remove link",icon:la.link,active(e){return Ha(e,t)},enable(t){return!t.selection.empty},run(e,i,r){if(Ha(e,t)){Dh(t)(e,i);return true}Ta({title:"Create a link",fields:{href:new Ja({label:"Link target",required:true}),title:new Ja({label:"Title"})},callback(e){Dh(t,e)(r.state,r.dispatch);r.focus()}})}})}function Va(t,e){return Wa(tf(t,e.attrs),e)}function Ga(t){let e={};let i;if(i=t.marks.strong)e.toggleStrong=Za(i,{title:"Toggle strong style",icon:la.strong});if(i=t.marks.em)e.toggleEm=Za(i,{title:"Toggle emphasis",icon:la.em});if(i=t.marks.code)e.toggleCode=Za(i,{title:"Toggle code font",icon:la.code});if(i=t.marks.link)e.toggleLink=Ka(i);let r;if(r=t.nodes.image)e.insertImage=Ua(r);if(r=t.nodes.bullet_list)e.wrapBulletList=Va(r,{title:"Wrap in bullet list",icon:la.bulletList});if(r=t.nodes.ordered_list)e.wrapOrderedList=Va(r,{title:"Wrap in ordered list",icon:la.orderedList});if(r=t.nodes.blockquote)e.wrapBlockQuote=ca(r,{title:"Wrap in block quote",icon:la.blockquote});if(r=t.nodes.paragraph)e.makeParagraph=da(r,{title:"Change to paragraph",label:"Plain"});if(r=t.nodes.code_block)e.makeCodeBlock=da(r,{title:"Change to code block",label:"Code"});if(r=t.nodes.heading)for(let t=1;t<=10;t++)e["makeHead"+t]=da(r,{title:"Change to heading "+t,label:"Level "+t,attrs:{level:t}});if(r=t.nodes.horizontal_rule){let t=r;e.insertHorizontalRule=new Vh({title:"Insert horizontal rule",label:"Horizontal rule",enable(e){return La(e,t)},run(e,i){i(e.tr.replaceSelectionWith(t.create()))}})}let n=t=>t.filter((t=>t));e.insertMenu=new ta(n([e.insertImage,e.insertHorizontalRule]),{label:"Insert"});e.typeMenu=new ta(n([e.makeParagraph,e.makeCodeBlock,e.makeHead1&&new ra(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,oa,ua,fa])];e.fullMenu=e.inlineMenu.concat([[e.insertMenu,e.typeMenu]],[[ha,aa]],e.blockMenu);return e}const Xa=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function Ya(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",Jf);n("Shift-Mod-z",Lf);n("Backspace",Aa);if(!Xa)n("Mod-y",Lf);n("Alt-ArrowUp",th);n("Alt-ArrowDown",eh);n("Mod-BracketLeft",ih);n("Escape",hh);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",tf(r));if(r=t.nodes.ordered_list)n("Shift-Ctrl-9",tf(r));if(r=t.nodes.blockquote)n("Ctrl->",gh(r));if(r=t.nodes.hard_break){let t=r,e=vh(sh,((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}));n("Mod-Enter",e);n("Shift-Enter",e);if(Xa)n("Ctrl-Enter",e)}if(r=t.nodes.list_item){n("Enter",rf(r));n("Mod-[",nf(r));n("Mod-]",of(r))}if(r=t.nodes.paragraph)n("Shift-Ctrl-0",bh(r));if(r=t.nodes.code_block)n("Shift-Ctrl-\\",bh(r));if(r=t.nodes.heading)for(let t=1;t<=6;t++)n("Shift-Ctrl-"+t,bh(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 Qa(t){return Ra(/^\s*>\s$/,t)}function tc(t){return Ra(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order==+t[1]))}function ec(t){return Ra(/^\s*([-+*])\s$/,t)}function ic(t){return qa(/^```$/,t)}function rc(t,e){return qa(new RegExp("^(#{1,"+e+"})\\s$"),t,(t=>({level:t[1].length})))}function nc(t){let e=ja.concat(Sa,Ca),i;if(i=t.nodes.blockquote)e.push(Qa(i));if(i=t.nodes.ordered_list)e.push(tc(i));if(i=t.nodes.bullet_list)e.push(ec(i));if(i=t.nodes.code_block)e.push(ic(i));if(i=t.nodes.heading)e.push(rc(i,6));return xa({rules:e})}function sc(t){let e=[nc(t.schema),kf(Ya(t.schema,t.mapKeys)),kf(Ah),Ch(),jh()];if(t.menuBar!==false)e.push(ga({floating:t.floatingMenu!==false,content:t.menuContent||Ga(t.schema).fullMenu}));if(t.history!==false)e.push(Pf());return e.concat(new gn({props:{attributes:{class:"ProseMirror-example-setup-style"}}}))}const lc={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 oc=Object.values(lc);const uc={Heading:"heading",one:1,two:2,three:3};const fc={Left:0,Middle:1,Right:2};const hc=(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 ac=(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===uc.Heading&&i){return n.attrs.level===i}return true}return false}};const cc=(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 dc=(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:wc(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:wc(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};hc(r,t.marks.link);return r};const pc=(t,e,i)=>{const r=t.marks[e];if(!r){throw new Error(`Mark "${e}" not found in schema`)}const n=mc(e,i);const s=Dh(r,n);hc(s,r);return s};const mc=(t,e)=>{if(t===lc.Link&&e.href){return{href:e.href,target:wc(e.href)?"_blank":null}}return undefined};const wc=t=>!t.startsWith(window.location.origin);const gc=(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 Yr&&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 ih(t,e)}if(r){return gh(n,i)(t,e)}else{return bh(n,i)(t,e)}}}return false}};const bc=t=>{try{new URL(t)}catch(t){return false}return true};const kc=(t,e,i)=>{const r=t.nodes[e];if(!r){throw new Error(`Node type "${e}" not found in schema`)}let n;if(e===uc.Heading&&i){n=gc(t,uc.Heading,{level:i})}else if(e===lc.CodeBlock){n=gc(t,lc.CodeBlock)}else{n=bh(r)}ac(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===lc.Blockquote){r=gc(t,lc.Blockquote,{},true)}else{r=gh(i)}cc(r,i);return r};const vc=t=>(e,i)=>{const{$from:r,$to:n}=e.selection;const s=r.blockRange(n);if(!s){return false}const l=s&&cr(s,t);if(l){if(i){i(e.tr.wrap(s,l).scrollIntoView())}return true}else{const t=s&&hr(s);if(t!==null){if(i){i(e.tr.lift(s,t).scrollIntoView())}return true}return false}};const yc=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`List type "${e}" not found in schema`)}const r=vc(i);cc(r,i);return r};const Fc=(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(!bc(s)){return false}const l=t.schema.marks.link.create({href:s,target:wc(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 Ec={strong:pc,em:pc,underline:pc,strikethrough:pc,code:pc,link:dc,headerlevel1:t=>kc(t,uc.Heading,uc.one),headerlevel2:t=>kc(t,uc.Heading,uc.two),headerlevel3:t=>kc(t,uc.Heading,uc.three),blockquote:t=>Dc(t,lc.Blockquote),code_block:t=>kc(t,lc.CodeBlock),ordered_list:t=>yc(t,lc.OrderedList),bullet_list:t=>yc(t,lc.BulletList)};class xc{constructor(t){this.schema=t}getCommand(t,e){const i=Ec[t];if(!i){throw new Error(`The Mark "${t}" is not supported`)}return i(this.schema,t,e)}buildKeymap(){return{"Mod-B":this.getCommand(lc.Bold),"Mod-I":this.getCommand(lc.Italic),"Mod-Shift-1":this.getCommand(lc.HeaderLevel1),"Mod-Shift-2":this.getCommand(lc.HeaderLevel2),"Mod-Shift-3":this.getCommand(lc.HeaderLevel3),"Mod-Shift-X":this.getCommand(lc.Strikethrough),"Mod-`":this.getCommand(lc.Code),"Mod-Shift-C":this.getCommand(lc.CodeBlock),"Mod-v":Fc}}}const Mc=()=>{const t=/Macintosh|MacIntel|MacPPC|Mac68K/;if(navigator.userAgent.match(t)){return{mod:"⌘",option:"⌥",shift:"⇧"}}return{mod:"Ctrl",option:"Alt",shift:"Shift"}};const{mod:Ac,shift:Cc}=Mc();const Sc=[{value:lc.Bold,text:"Bold",commandText:`${Ac} B`,icon:"-lime-text-bold",iconOnly:true,selected:false},{value:lc.Italic,text:"Italic",commandText:`${Ac} I`,icon:"-lime-text-italic",iconOnly:true,selected:false},{value:lc.Strikethrough,text:"Strikethrough",commandText:`${Ac} ${Cc} X`,icon:"-lime-text-strikethrough",iconOnly:true,selected:false},{value:lc.Link,text:"Link",icon:"-lime-text-link",iconOnly:true},{separator:true},{value:lc.BulletList,text:"Bullet list",icon:"-lime-text-bulleted-list",iconOnly:true,selected:false},{value:lc.OrderedList,text:"Numbered list",icon:"-lime-text-ordered-list",iconOnly:true,selected:false},{separator:true},{value:lc.HeaderLevel1,text:"Header 1",commandText:`${Ac} ${Cc} 1`,icon:"-lime-text-h-heading-1",iconOnly:true,selected:false},{value:lc.HeaderLevel2,text:"Header 2",commandText:`${Ac} ${Cc} 2`,icon:"-lime-text-h-heading-2",iconOnly:true,selected:false},{value:lc.HeaderLevel3,text:"Header 3",commandText:`${Ac} ${Cc} 3`,icon:"-lime-text-h-heading-3",iconOnly:true,selected:false},{separator:true},{value:lc.Blockquote,text:"Blockquote",icon:"-lime-text-blockquote",iconOnly:true,selected:false},{separator:true},{value:lc.Code,text:"Code",commandText:`${Ac} \``,icon:"-lime-text-code",iconOnly:true,selected:false},{value:lc.CodeBlock,text:"Code Block",commandText:`${Ac} ${Cc} C`,icon:"-lime-text-code-block",iconOnly:true,selected:false}];const Oc=()=>ce(Sc);const $c={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 _c={};function Bc(t){let e=_c[t];if(e){return e}e=_c[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 jc(t,e){if(typeof e!=="string"){e=jc.defaultChars}const i=Bc(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}))}jc.defaultChars=";/?:@&=+$,#";jc.componentChars="";const Rc={};function qc(t){let e=Rc[t];if(e){return e}e=Rc[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 Nc(t,e,i){if(typeof e!=="string"){i=e;e=Nc.defaultChars}if(typeof i==="undefined"){i=true}const r=qc(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}Nc.defaultChars=";/?:@&=+$,-_.!~*'()#";Nc.componentChars="-_.!~*'()";function Tc(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 zc(){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 Ic=/^([a-z0-9.+-]+:)/i;const Pc=/:[0-9]*$/;const Jc=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;const Lc=["<",">",'"',"`"," ","\r","\n","\t"];const Uc=["{","}","|","\\","^","`"].concat(Lc);const Wc=["'"].concat(Uc);const Hc=["%","/","?",";","#"].concat(Wc);const Zc=["/","?","#"];const Kc=255;const Vc=/^[+a-z0-9A-Z_-]{0,63}$/;const Gc=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;const Xc={javascript:true,"javascript:":true};const Yc={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function Qc(t,e){if(t&&t instanceof zc)return t;const i=new zc;i.parse(t,e);return i}zc.prototype.parse=function(t,e){let i,r,n;let s=t;s=s.trim();if(!e&&t.split("#").length===1){const t=Jc.exec(s);if(t){this.pathname=t[1];if(t[2]){this.search=t[2]}return this}}let l=Ic.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&&Xc[l])){s=s.substr(2);this.slashes=true}}if(!Xc[l]&&(n||l&&!Yc[l])){let t=-1;for(let e=0;e<Zc.length;e++){r=s.indexOf(Zc[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<Hc.length;e++){r=s.indexOf(Hc[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(Vc)){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(Vc)){const r=t.slice(0,e);const n=t.slice(e+1);const l=i.match(Gc);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>Kc){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(Yc[i]&&this.hostname&&!this.pathname){this.pathname=""}return this};zc.prototype.parseHost=function(t){let e=Pc.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 td=Object.freeze({__proto__:null,decode:jc,encode:Nc,format:Tc,parse:Qc});const ed=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;const id=/[\0-\x1F\x7F-\x9F]/;const rd=/[\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 nd=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\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 sd=/[\$\+<->\^`\|~\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 ld=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;const od=Object.freeze({__proto__:null,Any:ed,Cc:id,Cf:rd,P:nd,S:sd,Z:ld});function ud(t){return Object.prototype.toString.call(t)}function fd(t){return ud(t)==="[object String]"}const hd=Object.prototype.hasOwnProperty;function ad(t,e){return hd.call(t,e)}function cd(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 dd(t,e,i){return[].concat(t.slice(0,e),i,t.slice(e+1))}function pd(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 md(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 wd=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;const gd=/&([a-z#][a-z0-9]{1,31});/gi;const bd=new RegExp(wd.source+"|"+gd.source,"gi");const kd=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function Dd(t,e){if(e.charCodeAt(0)===35&&kd.test(e)){const i=e[1].toLowerCase()==="x"?parseInt(e.slice(2),16):parseInt(e.slice(1),10);if(pd(i)){return md(i)}return t}const i=x(t);if(i!==t){return i}return t}function vd(t){if(t.indexOf("\\")<0){return t}return t.replace(wd,"$1")}function yd(t){if(t.indexOf("\\")<0&&t.indexOf("&")<0){return t}return t.replace(bd,(function(t,e,i){if(e){return e}return Dd(t,i)}))}const Fd=/[&<>"]/;const Ed=/[&<>"]/g;const xd={"&":"&","<":"<",">":">",'"':"""};function Md(t){return xd[t]}function Ad(t){if(Fd.test(t)){return t.replace(Ed,Md)}return t}const Cd=/[.?*+^$[\]\\(){}|-]/g;function Sd(t){return t.replace(Cd,"\\$&")}function Od(t){switch(t){case 9:case 32:return true}return false}function $d(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 _d(t){return nd.test(t)||sd.test(t)}function Bd(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 jd(t){t=t.trim().replace(/\s+/g," ");if("ẞ".toLowerCase()==="Ṿ"){t=t.replace(/ẞ/g,"ß")}return t.toLowerCase().toUpperCase()}const Rd={mdurl:td,ucmicro:od};const qd=Object.freeze({__proto__:null,lib:Rd,assign:cd,isString:fd,has:ad,unescapeMd:vd,unescapeAll:yd,isValidEntityCode:pd,fromCodePoint:md,escapeHtml:Ad,arrayReplaceAt:dd,isSpace:Od,isWhiteSpace:$d,isMdAsciiPunct:Bd,isPunctChar:_d,escapeRE:Sd,normalizeReference:jd});function Nd(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 Td(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=yd(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=yd(t.slice(e,n));s.pos=n;s.ok=true;return s}function zd(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+=yd(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+=yd(t.slice(e,s));return l}const Id=Object.freeze({__proto__:null,parseLinkLabel:Nd,parseLinkDestination:Td,parseLinkTitle:zd});const Pd={};Pd.code_inline=function(t,e,i,r,n){const s=t[e];return"<code"+n.renderAttrs(s)+">"+Ad(s.content)+"</code>"};Pd.code_block=function(t,e,i,r,n){const s=t[e];return"<pre"+n.renderAttrs(s)+"><code>"+Ad(t[e].content)+"</code></pre>\n"};Pd.fence=function(t,e,i,r,n){const s=t[e];const l=s.info?yd(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)||Ad(s.content)}else{f=Ad(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`};Pd.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)};Pd.hardbreak=function(t,e,i){return i.xhtmlOut?"<br />\n":"<br>\n"};Pd.softbreak=function(t,e,i){return i.breaks?i.xhtmlOut?"<br />\n":"<br>\n":"\n"};Pd.text=function(t,e){return Ad(t[e].content)};Pd.html_block=function(t,e){return t[e].content};Pd.html_inline=function(t,e){return t[e].content};function Jd(){this.rules=cd({},Pd)}Jd.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+=" "+Ad(e.attrs[i][0])+'="'+Ad(e.attrs[i][1])+'"'}return n};Jd.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};Jd.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};Jd.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};Jd.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 Ld(){this.__rules__=[];this.__cache__=null}Ld.prototype.__find__=function(t){for(let e=0;e<this.__rules__.length;e++){if(this.__rules__[e].name===t){return e}}return-1};Ld.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)}))}))};Ld.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};Ld.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};Ld.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};Ld.prototype.push=function(t,e,i){const r=i||{};this.__rules__.push({name:t,enabled:true,fn:e,alt:r.alt||[]});this.__cache__=null};Ld.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};Ld.prototype.enableOnly=function(t,e){if(!Array.isArray(t)){t=[t]}this.__rules__.forEach((function(t){t.enabled=false}));this.enable(t,e)};Ld.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};Ld.prototype.getRules=function(t){if(this.__cache__===null){this.__compile__()}return this.__cache__[t]||[]};function Ud(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}Ud.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};Ud.prototype.attrPush=function t(e){if(this.attrs){this.attrs.push(e)}else{this.attrs=[e]}};Ud.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}};Ud.prototype.attrGet=function t(e){const i=this.attrIndex(e);let r=null;if(i>=0){r=this.attrs[i][1]}return r};Ud.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 Wd(t,e,i){this.src=t;this.env=i;this.tokens=[];this.inlineMode=false;this.md=e}Wd.prototype.Token=Ud;const Hd=/\r\n?|\n/g;const Zd=/\0/g;function Kd(t){let e;e=t.src.replace(Hd,"\n");e=e.replace(Zd,"�");t.src=e}function Vd(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 Gd(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 Xd(t){return/^<a[>\s]/i.test(t)}function Yd(t){return/^<\/a\s*>/i.test(t)}function Qd(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(Xd(l.content)&&n>0){n--}if(Yd(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=dd(r,s,u)}}}}const tp=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/;const ep=/\((c|tm|r)\)/i;const ip=/\((c|tm|r)\)/gi;const rp={c:"©",r:"®",tm:"™"};function np(t,e){return rp[e.toLowerCase()]}function sp(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(ip,np)}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function lp(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){if(tp.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 op(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(ep.test(t.tokens[e].content)){sp(t.tokens[e].children)}if(tp.test(t.tokens[e].content)){lp(t.tokens[e].children)}}}const up=/['"]/;const fp=/['"]/g;const hp="’";function ap(t,e,i){return t.slice(0,e)+i+t.slice(e+1)}function cp(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){fp.lastIndex=u;const h=fp.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=Bd(p)||_d(String.fromCharCode(p));const g=Bd(m)||_d(String.fromCharCode(m));const b=$d(p);const k=$d(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=ap(s.content,h.index,hp)}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=ap(s.content,h.index,c);t[a.token].content=ap(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=ap(s.content,h.index,hp)}}}}function dp(t){if(!t.md.options.typographer){return}for(let e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"||!up.test(t.tokens[e].content)){continue}cp(t.tokens[e].children,t)}}function pp(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 mp=[["normalize",Kd],["block",Vd],["inline",Gd],["linkify",Qd],["replacements",op],["smartquotes",dp],["text_join",pp]];function wp(){this.ruler=new Ld;for(let t=0;t<mp.length;t++){this.ruler.push(mp[t][0],mp[t][1])}}wp.prototype.process=function(t){const e=this.ruler.getRules("");for(let i=0,r=e.length;i<r;i++){e[i](t)}};wp.prototype.State=Wd;function gp(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(Od(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}gp.prototype.push=function(t,e,i){const r=new Ud(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};gp.prototype.isEmpty=function t(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]};gp.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};gp.prototype.skipSpaces=function t(e){for(let t=this.src.length;e<t;e++){const t=this.src.charCodeAt(e);if(!Od(t)){break}}return e};gp.prototype.skipSpacesBack=function t(e,i){if(e<=i){return e}while(e>i){if(!Od(this.src.charCodeAt(--e))){return e+1}}return e};gp.prototype.skipChars=function t(e,i){for(let t=this.src.length;e<t;e++){if(this.src.charCodeAt(e)!==i){break}}return e};gp.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};gp.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(Od(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("")};gp.prototype.Token=Ud;const bp=65536;function kp(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 vp(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&&!Od(o)){return false}if(l===45&&Od(o)){return false}while(s<t.eMarks[n]){const e=t.src.charCodeAt(s);if(e!==124&&e!==45&&e!==58&&!Od(e)){return false}s++}let u=kp(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=kp(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=kp(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>bp){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 yp(t,e,i){if(t.sCount[e]-t.blkIndent<4){return false}let r=e+1;let n=r;while(r<i){if(t.isEmpty(r)){r++;continue}if(t.sCount[r]-t.blkIndent>=4){r++;n=r;continue}break}t.line=n;const s=t.push("code_block","code",0);s.content=t.getLines(e,n,4+t.blkIndent,false)+"\n";s.map=[e,t.line];return true}function Fp(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}if(n+3>s){return false}const l=t.src.charCodeAt(n);if(l!==126&&l!==96){return false}let 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 Ep(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(Od(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 xp(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&&!Od(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 Mp(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(!Od(e)){return-1}}return r}function Ap(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(!Od(s)){return-1}}return n}function Cp(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 Sp(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=Ap(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=Mp(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=Ap(t,u);if(d<0){break}l=t.bMarks[u]+t.tShift[u]}else{d=Mp(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){Cp(t,m)}return true}function Op(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(Od(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(Od(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(!Od(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(!Od(t)){break}n++}}}if(n<s&&u.charCodeAt(n)!==10){return false}const g=jd(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 $p=["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 _p="[a-zA-Z_:][a-zA-Z0-9:._-]*";const Bp="[^\"'=<>`\\x00-\\x20]+";const jp="'[^']*'";const Rp='"[^"]*"';const qp="(?:"+Bp+"|"+jp+"|"+Rp+")";const Np="(?:\\s+"+_p+"(?:\\s*=\\s*"+qp+")?)";const Tp="<[A-Za-z][A-Za-z0-9\\-]*"+Np+"*\\s*\\/?>";const zp="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>";const Ip="\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e";const Pp="<[?][\\s\\S]*?[?]>";const Jp="<![A-Za-z][^>]*>";const Lp="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>";const Up=new RegExp("^(?:"+Tp+"|"+zp+"|"+Ip+"|"+Pp+"|"+Jp+"|"+Lp+")");const Wp=new RegExp("^(?:"+Tp+"|"+zp+")");const Hp=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,true],[/^<!--/,/-->/,true],[/^<\?/,/\?>/,true],[/^<![A-Z]/,/>/,true],[/^<!\[CDATA\[/,/\]\]>/,true],[new RegExp("^</?("+$p.join("|")+")(?=(\\s|/?>|$))","i"),/^$/,true],[new RegExp(Wp.source+"\\s*$"),/^$/,false]];function Zp(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<Hp.length;o++){if(Hp[o][0].test(l)){break}}if(o===Hp.length){return false}if(r){return Hp[o][2]}let u=e+1;if(!Hp[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(Hp[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 Kp(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&&!Od(l)){return false}if(r){return true}s=t.skipSpacesBack(s,n);const u=t.skipCharsBack(s,35,n);if(u>n&&Od(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 Vp(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 Gp(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 Xp=[["table",vp,["paragraph","reference"]],["code",yp],["fence",Fp,["paragraph","reference","blockquote","list"]],["blockquote",Ep,["paragraph","reference","blockquote","list"]],["hr",xp,["paragraph","reference","blockquote","list"]],["list",Sp,["paragraph","reference","blockquote"]],["reference",Op],["html_block",Zp,["paragraph","reference","blockquote"]],["heading",Kp,["paragraph","reference","blockquote"]],["lheading",Vp],["paragraph",Gp]];function Yp(){this.ruler=new Ld;for(let t=0;t<Xp.length;t++){this.ruler.push(Xp[t][0],Xp[t][1],{alt:(Xp[t][2]||[]).slice()})}}Yp.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}}};Yp.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)};Yp.prototype.State=gp;function Qp(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}Qp.prototype.pushPending=function(){const t=new Ud("text","",0);t.content=this.pending;t.level=this.pendingLevel;this.tokens.push(t);this.pending="";return t};Qp.prototype.push=function(t,e,i){if(this.pending){this.pushPending()}const r=new Ud(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};Qp.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=Bd(n)||_d(String.fromCharCode(n));const f=Bd(o)||_d(String.fromCharCode(o));const h=$d(n);const a=$d(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}};Qp.prototype.Token=Ud;function tm(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 em(t,e){let i=t.pos;while(i<t.posMax&&!tm(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 im=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function rm(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(im);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 nm(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&&Od(t.src.charCodeAt(i))){i++}t.pos=i;return true}const sm=[];for(let t=0;t<256;t++){sm.push(0)}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(t){sm[t.charCodeAt(0)]=1}));function lm(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(!Od(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&&sm[n]!==0){e.content=s}else{e.content=l}e.markup=l;e.info="escape"}t.pos=i+1;return true}function om(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 um(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 fm(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 hm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;fm(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){fm(t,e[r].delimiters)}}}const am={tokenize:um,postProcess:hm};function cm(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 dm(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 pm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;dm(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){dm(t,e[r].delimiters)}}}const mm={tokenize:cm,postProcess:pm};function wm(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(!Od(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(!Od(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(!Od(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[jd(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 gm(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(!Od(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(!Od(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(!Od(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[jd(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 bm=/^([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 km=/^([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(km.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(bm.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 vm(t){return/^<a[>\s]/i.test(t)}function ym(t){return/^<\/a\s*>/i.test(t)}function Fm(t){const e=t|32;return e>=97&&e<=122}function Em(t,e){if(!t.md.options.html){return false}const i=t.posMax;const r=t.pos;if(t.src.charCodeAt(r)!==60||r+2>=i){return false}const n=t.src.charCodeAt(r+1);if(n!==33&&n!==63&&n!==47&&!Fm(n)){return false}const s=t.src.slice(r).match(Up);if(!s){return false}if(!e){const e=t.push("html_inline","",0);e.content=s[0];if(vm(e.content))t.linkLevel++;if(ym(e.content))t.linkLevel--}t.pos+=s[0].length;return true}const xm=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i;const Mm=/^&([a-z][a-z0-9]{1,31});/i;function Am(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(xm);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=pd(e)?md(e):md(65533);i.markup=r[0];i.info="entity"}t.pos+=r[0].length;return true}}else{const r=t.src.slice(i).match(Mm);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 Cm(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 Sm(t){const e=t.tokens_meta;const i=t.tokens_meta.length;Cm(t.delimiters);for(let t=0;t<i;t++){if(e[t]&&e[t].delimiters){Cm(e[t].delimiters)}}}function Om(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 $m=[["text",em],["linkify",rm],["newline",nm],["escape",lm],["backticks",om],["strikethrough",am.tokenize],["emphasis",mm.tokenize],["link",wm],["image",gm],["autolink",Dm],["html_inline",Em],["entity",Am]];const _m=[["balance_pairs",Sm],["strikethrough",am.postProcess],["emphasis",mm.postProcess],["fragments_join",Om]];function Bm(){this.ruler=new Ld;for(let t=0;t<$m.length;t++){this.ruler.push($m[t][0],$m[t][1])}this.ruler2=new Ld;for(let t=0;t<_m.length;t++){this.ruler2.push(_m[t][0],_m[t][1])}}Bm.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};Bm.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()}};Bm.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)}};Bm.prototype.State=Qp;function jm(t){const e={};t=t||{};e.src_Any=ed.source;e.src_Cc=id.source;e.src_Z=ld.source;e.src_P=nd.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 Rm(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 qm(t){return Object.prototype.toString.call(t)}function Nm(t){return qm(t)==="[object String]"}function Tm(t){return qm(t)==="[object Object]"}function zm(t){return qm(t)==="[object RegExp]"}function Im(t){return qm(t)==="[object Function]"}function Pm(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const Jm={fuzzyLink:true,fuzzyEmail:true,fuzzyIP:false};function Lm(t){return Object.keys(t||{}).reduce((function(t,e){return t||Jm.hasOwnProperty(e)}),false)}const Um={"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 Wm="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 Hm="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Zm(t){t.__index__=-1;t.__text_cache__=""}function Km(t){return function(e,i){const r=e.slice(i);if(t.test(r)){return r.match(t)[0].length}return 0}}function Vm(){return function(t,e){e.normalize(t)}}function Gm(t){const e=t.re=jm(t.__opts__);const i=t.__tlds__.slice();t.onCompile();if(!t.__tlds_replaced__){i.push(Wm)}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(Tm(i)){if(zm(i.validate)){r.validate=Km(i.validate)}else if(Im(i.validate)){r.validate=i.validate}else{s(e,i)}if(Im(i.normalize)){r.normalize=i.normalize}else if(!i.normalize){r.normalize=Vm()}else{s(e,i)}return}if(Nm(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:Vm()};const l=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(Pm).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");Zm(t)}function Xm(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 Ym(t,e){const i=new Xm(t,e);t.__compiled__[i.schema].normalize(i,t);return i}function Qm(t,e){if(!(this instanceof Qm)){return new Qm(t,e)}if(!e){if(Lm(t)){e=t;t={}}}this.__opts__=Rm({},Jm,e);this.__index__=-1;this.__last_index__=-1;this.__schema__="";this.__text_cache__="";this.__schemas__=Rm({},Um,t);this.__compiled__={};this.__tlds__=Hm;this.__tlds_replaced__=false;this.re={};Gm(this)}Qm.prototype.add=function t(e,i){this.__schemas__[e]=i;Gm(this);return this};Qm.prototype.set=function t(e){this.__opts__=Rm(this.__opts__,e);return this};Qm.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};Qm.prototype.pretest=function t(e){return this.re.pretest.test(e)};Qm.prototype.testSchemaAt=function t(e,i,r){if(!this.__compiled__[i.toLowerCase()]){return 0}return this.__compiled__[i.toLowerCase()].validate(e,r,this)};Qm.prototype.match=function t(e){const i=[];let r=0;if(this.__index__>=0&&this.__text_cache__===e){i.push(Ym(this,r));r=this.__last_index__}let n=r?e.slice(r):e;while(this.test(n)){i.push(Ym(this,r));n=n.slice(this.__last_index__);r+=this.__last_index__}if(i.length){return i}return null};Qm.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 Ym(this,0)};Qm.prototype.tlds=function t(e,i){e=Array.isArray(e)?e:[e];if(!i){this.__tlds__=e.slice();this.__tlds_replaced__=true;Gm(this);return this}this.__tlds__=this.__tlds__.concat(e).sort().filter((function(t,e,i){return t!==i[e-1]})).reverse();Gm(this);return this};Qm.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}};Qm.prototype.onCompile=function t(){};const tw=2147483647;const ew=36;const iw=1;const rw=26;const nw=38;const sw=700;const lw=72;const ow=128;const uw="-";const fw=/^xn--/;const hw=/[^\0-\x7F]/;const aw=/[\x2E\u3002\uFF0E\uFF61]/g;const cw={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const dw=ew-iw;const pw=Math.floor;const mw=String.fromCharCode;function ww(t){throw new RangeError(cw[t])}function gw(t,e){const i=[];let r=t.length;while(r--){i[r]=e(t[r])}return i}function bw(t,e){const i=t.split("@");let r="";if(i.length>1){r=i[0]+"@";t=i[1]}t=t.replace(aw,".");const n=t.split(".");const s=gw(n,e).join(".");return r+s}function kw(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 vw=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 ew};const yw=function(t,e){return t+22+75*(t<26)-((e!=0)<<5)};const Fw=function(t,e,i){let r=0;t=i?pw(t/sw):t>>1;t+=pw(t/e);for(;t>dw*rw>>1;r+=ew){t=pw(t/dw)}return pw(r+(dw+1)*t/(t+nw))};const Ew=function(t){const e=[];const i=t.length;let r=0;let n=ow;let s=lw;let l=t.lastIndexOf(uw);if(l<0){l=0}for(let i=0;i<l;++i){if(t.charCodeAt(i)>=128){ww("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=ew;;n+=ew){if(o>=i){ww("invalid-input")}const l=vw(t.charCodeAt(o++));if(l>=ew){ww("invalid-input")}if(l>pw((tw-r)/e)){ww("overflow")}r+=l*e;const u=n<=s?iw:n>=s+rw?rw:n-s;if(l<u){break}const f=ew-u;if(e>pw(tw/f)){ww("overflow")}e*=f}const u=e.length+1;s=Fw(r-l,u,l==0);if(pw(r/u)>tw-n){ww("overflow")}n+=pw(r/u);r%=u;e.splice(r++,0,n)}return String.fromCodePoint(...e)};const xw=function(t){const e=[];t=kw(t);const i=t.length;let r=ow;let n=0;let s=lw;for(const i of t){if(i<128){e.push(mw(i))}}const l=e.length;let o=l;if(l){e.push(uw)}while(o<i){let i=tw;for(const e of t){if(e>=r&&e<i){i=e}}const u=o+1;if(i-r>pw((tw-n)/u)){ww("overflow")}n+=(i-r)*u;r=i;for(const i of t){if(i<r&&++n>tw){ww("overflow")}if(i===r){let t=n;for(let i=ew;;i+=ew){const r=i<=s?iw:i>=s+rw?rw:i-s;if(t<r){break}const n=t-r;const l=ew-r;e.push(mw(yw(r+n%l,0)));t=pw(n/l)}e.push(mw(yw(t,0)));s=Fw(n,u,o===l);n=0;++o}}++n;++r}return e.join("")};const Mw=function(t){return bw(t,(function(t){return fw.test(t)?Ew(t.slice(4).toLowerCase()):t}))};const Aw=function(t){return bw(t,(function(t){return hw.test(t)?"xn--"+xw(t):t}))};const Cw={version:"2.3.1",ucs2:{decode:kw,encode:Dw},decode:Ew,encode:xw,toASCII:Aw,toUnicode:Mw};const Sw={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}};const Ow={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 $w={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 _w={default:Sw,zero:Ow,commonmark:$w};const Bw=/^(vbscript|javascript|file|data):/;const jw=/^data:image\/(gif|png|jpeg|webp);/;function Rw(t){const e=t.trim().toLowerCase();return Bw.test(e)?jw.test(e):true}const qw=["http:","https:","mailto:"];function Nw(t){const e=Qc(t,true);if(e.hostname){if(!e.protocol||qw.indexOf(e.protocol)>=0){try{e.hostname=Cw.toASCII(e.hostname)}catch(t){}}}return Nc(Tc(e))}function Tw(t){const e=Qc(t,true);if(e.hostname){if(!e.protocol||qw.indexOf(e.protocol)>=0){try{e.hostname=Cw.toUnicode(e.hostname)}catch(t){}}}return jc(Tc(e),jc.defaultChars+"%")}function zw(t,e){if(!(this instanceof zw)){return new zw(t,e)}if(!e){if(!fd(t)){e=t||{};t="default"}}this.inline=new Bm;this.block=new Yp;this.core=new wp;this.renderer=new Jd;this.linkify=new Qm;this.validateLink=Rw;this.normalizeLink=Nw;this.normalizeLinkText=Tw;this.utils=qd;this.helpers=cd({},Id);this.options={};this.configure(t);if(e){this.set(e)}}zw.prototype.set=function(t){cd(this.options,t);return this};zw.prototype.configure=function(t){const e=this;if(fd(t)){const e=t;t=_w[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};zw.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};zw.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};zw.prototype.use=function(t){const e=[this].concat(Array.prototype.slice.call(arguments,1));t.apply(t,e);return this};zw.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};zw.prototype.render=function(t,e){e=e||{};return this.renderer.render(this.parse(t,e),this.options,e)};zw.prototype.parseInline=function(t,e){const i=new this.core.State(t,this,e);i.inlineMode=true;this.core.process(i);return i.tokens};zw.prototype.renderInline=function(t,e){e=e||{};return this.renderer.render(this.parseInline(t,e),this.options,e)};const Iw=new ci({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 Pw(t,e){if(t.isText&&e.isText&&De.sameSet(t.marks,e.marks))return t.withText(t.text+e.text)}class Jw{constructor(t,e){this.schema=t;this.tokenHandlers=e;this.stack=[{type:t.topNodeType,attrs:null,content:[],marks:De.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=Pw(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:De.none})}closeNode(){let t=this.stack.pop();return this.addNode(t.type,t.attrs,t.content)}}function Lw(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 Uw(t,e){return t.noCloseToken||e=="code_inline"||e=="code_block"||e=="fence"}function Ww(t){return t[t.length-1]=="\n"?t.slice(0,t.length-1):t}function Hw(){}function Zw(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(Uw(n,r)){i[r]=(t,i,r,s)=>{t.openNode(e,Lw(n,i,r,s));t.addText(Ww(i.content));t.closeNode()}}else{i[r+"_open"]=(t,i,r,s)=>t.openNode(e,Lw(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,Lw(n,i,r,s))}else if(n.mark){let e=t.marks[n.mark];if(Uw(n,r)){i[r]=(t,i,r,s)=>{t.openMark(e.create(Lw(n,i,r,s)));t.addText(Ww(i.content));t.closeMark(e)}}else{i[r+"_open"]=(t,i,r,s)=>t.openMark(e.create(Lw(n,i,r,s)));i[r+"_close"]=t=>t.closeMark(e)}}else if(n.ignore){if(Uw(n,r)){i[r]=Hw}else{i[r+"_open"]=Hw;i[r+"_close"]=Hw}}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 Kw{constructor(t,e,i){this.schema=t;this.tokenizer=e;this.tokens=i;this.tokenHandlers=Zw(t,i)}parse(t,e={}){let i=new Jw(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 Vw(t,e){while(++e<t.length)if(t[e].type!="list_item_open")return t[e].hidden;return false}new Kw(Iw,zw("commonmark",{html:false}),{blockquote:{block:"blockquote"},paragraph:{block:"paragraph"},list_item:{block:"list_item"},bullet_list:{block:"bullet_list",getAttrs:(t,e,i)=>({tight:Vw(e,i)})},ordered_list:{block:"ordered_list",getAttrs:(t,e,i)=>({order:+t.attrGet("start")||1,tight:Vw(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}});const Gw={open:"",close:"",mixable:true};class Xw{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 eg(this.nodes,this.marks,e);i.renderContent(t);return i.out}}const Yw=new Xw({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=tg(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 Qw(i.child(r),-1)},close(t,e,i,r){return Qw(i.child(r-1),1)},escape:false}});function Qw(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 tg(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 eg{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}}getMark(t){let e=this.marks[t];if(!e){if(this.options.strict!==false)throw new Error(`Mark type \`${t}\` not supported by Markdown renderer`);e=Gw}return e}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]){this.nodes[t.type.name](this,t,e,i)}else{if(this.options.strict!==false){throw new Error("Token type `"+t.type.name+"` not supported by Markdown renderer")}else if(!t.type.isLeaf){if(t.type.inlineContent)this.renderInline(t);else this.renderContent(t);if(t.isBlock)this.closeBlock(t)}}}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.getMark(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.getMark(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.getMark(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.getMark(e.type.name).mixable)break;for(let r=0;r<i.length;r++){let n=i[r];if(!this.getMark(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.getMark(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 ig=t=>(e,i)=>{const r=`<${t.tagName}`+t.attributes.map((t=>` ${t}="${i.attrs[t]}"`)).join("")+">";const n=`</${t.tagName}>`;e.write(r);e.renderContent(i);e.write(n)};const rg=t=>{const e={};t.forEach((t=>{e[t.tagName]=ig(t)}));const i=Object.assign(Object.assign({},Yw.nodes),e);const r=Object.assign(Object.assign({},Yw.marks),{strikethrough:{open:"~~",close:"~~",mixable:true,expelEnclosingWhitespace:true}});return new Xw(i,r)};class ng{constructor(t){this.parseAsHTML=t=>{const e=this.customNodes.map((t=>({tagName:t.tagName,attributes:t.attributes})));return M(t,{whitelist:e})};this.serialize=t=>{if(t.dom.textContent===""){return""}else{return this.markdownSerializer.serialize(t.state.doc)}};this.markdownSerializer=rg(t);this.customNodes=t}}class sg{constructor(){this.parseAsHTML=t=>new Promise((e=>{e(t)}));this.serialize=t=>{if(t.dom.textContent===""){return""}else{return t.dom.innerHTML}}}}const lg={parseDOM:[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration=line-through"}],toDOM:()=>["s",0]};const og=new Dn("linkPlugin");const ug=(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 fg=(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===lc.Link&&t.attrs.href===i))){break}e--}return e};const hg=(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===lc.Link&&t.attrs.href===i))){break}e++}return e};const ag=(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===lc.Link));if(!n){return null}const s=n.attrs.href;const l=fg(t.state.doc,i.pos,s);const o=hg(t.state.doc,i.pos,s);const u=t.state.doc.textBetween(l,o," ");return{href:s,text:u,from:l,to:o}};const cg=(t,e)=>{const{href:i}=ag(t,e);if(i){window.open(i,"_blank");return true}return false};const dg=(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 pg=0;const mg=200;let wg;const gg=(t,e)=>{const i=Date.now();if(i-pg<mg){clearTimeout(wg);pg=i;return false}pg=i;wg=setTimeout((()=>{const i=ag(t,e);if(i){const{href:e,text:r,from:n,to:s}=i;const l=t.state.tr.setSelection(Yr.create(t.state.doc,n,s));t.dispatch(l);dg(t,e,r)}}),mg);return true};const bg=(t,e)=>{const i=e.clipboardData;if(!i){return false}const r=i.getData("text/plain");if(bc(r)){kg(t,r);return true}return false};const kg=(t,e)=>{const{state:i,dispatch:r}=t;const{from:n,to:s}=i.selection;const l=Wu.marks.link.create({href:e,title:e,target:wc(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 Dg=t=>new gn({key:og,props:{handlePaste:(t,e)=>bg(t,e),handleDOMEvents:{mousedown:(t,e)=>{if((e.metaKey||e.ctrlKey)&&e.button===0){return cg(t,e)}if(e.button!==fc.Right){return gg(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=>{ug(e,t)}})});const vg=new Dn("imageRemoverPlugin");const yg=()=>new gn({key:vg,props:{handlePaste:(t,e,i)=>xg(t,e,i)}});const Fg=t=>{if(t instanceof Pe){if(t.type.name==="image"){return true}let e=false;t.content.forEach((t=>{if(Fg(t)){e=true}}));return e}else if(t instanceof we){let e=false;t.forEach((t=>{if(Fg(t)){e=true}}));return e}return false};const Eg=t=>{const e=[];t.forEach((t=>{if(!Fg(t)){if(t.content.size>0){const i=Eg(t.content);const r=t.copy(i);e.push(r)}else{e.push(t)}}}));return we.fromArray(e)};const xg=(t,e,i)=>{const r=e.clipboardData;if(!r){return false}const n=new ye(Eg(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 Mg=new Dn("actionBarPlugin");const Ag=(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 Cg=(t,e,i)=>new gn({key:Mg,state:{init:()=>({}),apply:(t,e)=>{const i=t.getMeta(Mg);return i?i:e}},view:()=>({update:r=>{const n=Mg.getState(r.state);const s=Ag(t,e,r);if(!O(n,s)){const t=r.state.tr.setMeta(Mg,s);r.dispatch(t);i(s)}}})});const Sg=new Dn("actionBarInteractionPlugin");const Og=(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 $g=t=>new gn({key:Sg,props:{handleDOMEvents:{actionBarItemClick:(e,i)=>{i.preventDefault();i.stopPropagation();const{value:r}=i.detail;try{const i=t.getCommand(r);Og(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===lc.Link){try{const i=t.getCommand(r,n);Og(i,e)}catch(t){console.error(`Error executing command: ${t}`)}}return true}}}});const _g=t=>{const e={};t.attributes.forEach((t=>e[t]={}));const i=`${t.tagName}[${t.attributes.map((t=>t)).join("][")}]`;return{group:"inline",content:"(text* | inline*)",inline:true,atom:true,selectable:true,attrs:e,toDOM:e=>[t.tagName,e.attrs],parseDOM:[{tag:i,getAttrs:e=>{const i={};t.attributes.forEach((t=>i[t]=e.getAttribute(t)));return i}}]}};const Bg=t=>{const e=qg(t);return{insert:i=>{const{state:r,dispatch:n}=t;const{schema:s,selection:l}=r;const{$from:o}=l;let u;try{u=jg(i,s)}catch(t){console.error(t.message);return}const f=s.text(" ");const h=s.nodes.doc.create(null,[u,f]);const a=r.tr.replaceWith(e,o.pos,h);a.setMeta("stopTrigger",true);n(a)}}};const jg=(t,e)=>{var i;if(typeof t==="string"){return e.text(t)}const r=t.node;if(typeof r==="string"){return e.text(r)}const n=Rg(r.tagName,e);const s=((i=t.children)!==null&&i!==void 0?i:[]).map((t=>jg(t,e))).filter(Boolean);return n.create(r.attributes,s)};const Rg=(t,e)=>{const i=Object.values(e.nodes).find((e=>e.name===t));if(!i){throw new Error(`A custom element hasn't been registered for node ${t}`)}return i};const qg=t=>{var e,i,r;return(r=(i=(e=t.state)===null||e===void 0?void 0:e.selection)===null||i===void 0?void 0:i.$from)===null||r===void 0?void 0:r.pos};const Ng=(t,e)=>t.length===1&&e.includes(t);const Tg=t=>{const{$from:e}=t.selection;if(e.pos===1){return true}const i=e.pos-1;if(i>0){if(e.parentOffset===0){return true}const r=t.doc.textBetween(i,e.pos);return r===" "||r==="\n"}return false};const zg=(t,e,i,r)=>{const n=t.selection.$from.pos;if(n<i||n>i+r+1){return false}return t.doc.textBetween(i,i+1)===e};const Ig=(t,e,i)=>({trigger:e,textEditor:Bg(t),value:i});const Pg=(t,e,i,r)=>{const n=new CustomEvent(t,{detail:Ig(e,i,r),bubbles:true,composed:true});e.dom.dispatchEvent(n)};const Jg=(t,e,i)=>{let r="";let n="";e.forEach((t=>{if(t.docChanged){t.steps.forEach((t=>{if(t instanceof rr||t instanceof nr){const e=t.slice;const s=t.from;const l=t.to;if(e===null||e===void 0?void 0:e.size){r+=e.content.textBetween(0,e.size)}else if(s!==l){const t=i.doc.textBetween(s,l);n+=t}}}))}}));if(r){t+=r}else if(n){t=t.slice(0,-n.length)}return t};const Lg=t=>{let e=null;let i="";let r=null;let n=null;const s=()=>{i="";Pg("triggerStop",r,e,i);n=null;e=null};const l=(r,l)=>{const{state:o}=r;if(l.key==="Escape"){s();return true}if(Ng(l.key,t)&&Tg(o)){e=l.key;i="";n=o.selection.$from.pos-i.length;Pg("triggerStart",r,e,i);return false}return false};const o=(t,s,l)=>{if(!e||!n||!r){return}if(!zg(l,e,n,i.length)){return}const o=Jg(i,t,s);if(o!==i){i=o;Pg("triggerChange",r,e,i.slice(1))}};return new gn({key:new Dn("triggerPlugin"),view:t=>{r=t;return{}},state:{init:()=>({}),apply:t=>{if(t.getMeta("stopTrigger")){s()}return{}}},props:{handleKeyDown:l},appendTransaction:o})};const Ug='@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) .toolbar{order:1}:host(limel-prosemirror-adapter) div#editor{order:2;height:100%;flex-grow:1}:host(limel-prosemirror-adapter) div[contenteditable=true]{height:100%}*{box-sizing:border-box}:host(limel-prosemirror-adapter:hover) .toolbar,:host(limel-prosemirror-adapter:focus-within) .toolbar{will-change:grid-template-rows}:host(limel-prosemirror-adapter:hover) limel-action-bar,:host(limel-prosemirror-adapter:focus-within) limel-action-bar{will-change:opacity, padding}:host(limel-prosemirror-adapter:hover) .ProseMirror,:host(limel-prosemirror-adapter:focus-within) .ProseMirror{will-change:padding}.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}.toolbar{--action-bar-border-radius:0.25rem;border-radius:var(--action-bar-border-radius);flex-shrink:0;position:sticky;z-index:1;top:0;width:100%;display:grid;grid-template-rows:var(--limel-prosemirror-adapter-toolbar-grid-template-rows);transition-property:grid-template-rows;transition-duration:var(--limel-prosemirror-adapter-toolbar-grid-template-rows-transition-duration);transition-timing-function:var(--limel-prosemirror-adapter-toolbar-transition-timing-function);background-color:rgba(var(--contrast-200), 0.5);backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem)}limel-action-bar{min-width:0;transition-property:padding, opacity;transition-duration:var(--limel-prosemirror-adapter-toolbar-grid-template-rows-transition-duration);transition-timing-function:var(--limel-prosemirror-adapter-toolbar-transition-timing-function);opacity:var(--limel-prosemirror-adapter-toolbar-opacity);padding:var(--limel-prosemirror-adapter-action-bar-padding-top-bottom, 0.125rem) 0.25rem;background-color:transparent;overflow:hidden}.ProseMirror{transition-duration:padding;transition-duration:var(--limel-prosemirror-adapter-toolbar-grid-template-rows-transition-duration);transition-timing-function:var(--limel-prosemirror-adapter-toolbar-transition-timing-function);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 Wg=300;const Hg=class{constructor(i){t(this,i);this.change=e(this,"change",7);this.changeWaiting=false;this.suppressChangeEvent=false;this.getActionBarItems=()=>{this.actionBarItems=Oc().map(this.getTranslatedItem)};this.getTranslatedItem=t=>{const e=ce(t);if(S(t)){const i=$c[t.value];if(i){e.text=A.get(i,this.language)}}return e};this.updateActiveActionBarItems=t=>{const e=Oc().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||t.getMeta("pointer")){return}const i=this.contentConverter.serialize(this.view,this.schema);if(i===this.lastEmittedValue){return}this.lastEmittedValue=i;this.changeWaiting=true;this.changeEmitter(i)};this.handleActionBarItem=t=>{t.preventDefault();t.stopImmediatePropagation();const{value:e}=t.detail;if(e===lc.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:"https://"}};this.handleSaveLinkMenu=()=>{this.isLinkMenuOpen=false;const t=new CustomEvent("saveLinkMenu",{detail:{type:lc.Link,link:this.link}});this.view.dom.dispatchEvent(t);this.link={href:"https://"}};this.handleLinkChange=t=>{this.link=t.detail};this.handleNewLinkSelection=(t,e)=>{this.link.text=t;this.link.href=e||"https://"};this.handleOpenLinkMenu=t=>{t.stopImmediatePropagation();const{href:e,text:i}=t.detail;this.link={href:e,text:i};this.isLinkMenuOpen=true};this.changeEmitter=$((t=>{this.change.emit(t);this.changeWaiting=false}),Wg);this.handleBlur=()=>{this.changeEmitter.flush()};this.contentType="markdown";this.value=undefined;this.language=undefined;this.customElements=[];this.triggerCharacters=[];this.view=undefined;this.actionBarItems=[];this.link={href:"https://"};this.isLinkMenuOpen=false;this.portalId=C()}watchValue(t){if(!this.view){return}if(this.changeWaiting){return}const e=this.contentConverter.serialize(this.view,this.schema);if(t===e){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(){var t,e,i;this.host.removeEventListener("open-editor-link-menu",this.handleOpenLinkMenu);(e=(t=this.view)===null||t===void 0?void 0:t.dom)===null||e===void 0?void 0:e.removeEventListener("blur",this.handleBlur);(i=this.view)===null||i===void 0?void 0:i.destroy()}render(){return[i("div",{id:"editor"}),i("div",{class:"toolbar"},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",{containerId:this.portalId,visible:this.isLinkMenuOpen,openDirection:"top",inheritParentWidth:true,anchor:this.actionBarElement},i("limel-text-editor-link-menu",{link:this.link,isOpen:this.isLinkMenuOpen,onLinkChange:this.handleLinkChange,onCancel:this.handleCancelLinkMenu,onSave:this.handleSaveLinkMenu}))}setupContentConverter(){if(this.contentType==="markdown"){this.contentConverter=new ng(this.customElements)}else if(this.contentType==="html"){this.contentConverter=new sg}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 xc(this.schema);this.view=new Au(this.host.shadowRoot.querySelector("#editor"),{state:this.createEditorState(t),dispatchTransaction:this.handleTransaction});this.view.dom.addEventListener("blur",this.handleBlur);if(this.value){this.updateView(this.value)}}initializeSchema(){let t=Wu.spec.nodes;this.customElements.forEach((e=>{const i=_g(e);const r=e.tagName;t=t.append({[r]:i})}));t=Qu(t,"paragraph block*","block");return new ci({nodes:t,marks:Wu.spec.marks.append({strikethrough:lg})})}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 wi.fromSchema(this.schema).parse(t)}createEditorState(t){return mn.create({doc:t,plugins:[...sc({schema:this.schema,menuBar:false}),kf(this.menuCommandFactory.buildKeymap()),Dg(this.handleNewLinkSelection),Lg(this.triggerCharacters),yg(),Cg(oc,this.menuCommandFactory,this.updateActiveActionBarItems),$g(this.menuCommandFactory)]})}async updateView(t){this.suppressChangeEvent=true;const e=await this.contentConverter.parseAsHTML(t,this.schema);const i=wi.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"]}}};Hg.style=Ug;export{Hg as limel_prosemirror_adapter};
|
|
2
|
+
//# sourceMappingURL=p-975f1ee3.entry.js.map
|