@limetech/lime-elements 37.70.1 → 37.70.2

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.
@@ -1,2 +1,2 @@
1
- import{r as t,c as e,h as r,H as i,g as n}from"./p-443111b3.js";import{k as s,q as l,U as o,f as u,g as f,t as h,u as a,i as c,j as d,v as p}from"./p-1b9d3851.js";import{b as m,a as w}from"./p-b28128d2.js";import{k as g,b,g as k,a as D}from"./p-22704cbc.js";import{i as v,r as y,S as F}from"./p-c93050d6.js";import{i as E}from"./p-0b1af919.js";import{i as M}from"./p-858c6b82.js";import{d as x,m as A}from"./p-086509a5.js";import{t as C}from"./p-8915fa60.js";import{c as S}from"./p-3ccdc4a3.js";import{i as O}from"./p-91741e79.js";import{i as $}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 B=Object.create;var R=function(){function t(){}return function(e){if(!v(e)){return{}}if(B){return B(e)}t.prototype=e;var r=new t;t.prototype=undefined;return r}}();function j(t,e){var r=-1,i=t.length;e||(e=Array(i));while(++r<i){e[r]=t[r]}return e}function N(t,e){var r=-1,i=t==null?0:t.length;while(++r<i){if(e(t[r],r,t)===false){break}}return t}function q(t,e,r,i){var n=!r;r||(r={});var s=-1,l=e.length;while(++s<l){var o=e[s];var u=i?i(r[o],t[o],o,r,t):undefined;if(u===undefined){u=t[o]}if(n){m(r,o,u)}else{w(r,o,u)}}return r}function z(t,e){return t&&q(e,s(e),t)}function T(t,e){return t&&q(e,g(e),t)}var I=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var P=I&&typeof module=="object"&&module&&!module.nodeType&&module;var J=P&&P.exports===I;var L=J?y.Buffer:undefined,W=L?L.allocUnsafe:undefined;function U(t,e){if(e){return t.slice()}var r=t.length,i=W?W(r):new t.constructor(r);t.copy(i);return i}function H(t,e){return q(t,l(t),e)}function Z(t,e){return q(t,b(t),e)}var K=Object.prototype;var V=K.hasOwnProperty;function G(t){var e=t.length,r=new t.constructor(e);if(e&&typeof t[0]=="string"&&V.call(t,"index")){r.index=t.index;r.input=t.input}return r}function X(t){var e=new t.constructor(t.byteLength);new o(e).set(new o(t));return e}function Y(t,e){var r=e?X(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var Q=/\w*$/;function tt(t){var e=new t.constructor(t.source,Q.exec(t));e.lastIndex=t.lastIndex;return e}var et=F?F.prototype:undefined,rt=et?et.valueOf:undefined;function it(t){return rt?Object(rt.call(t)):{}}function nt(t,e){var r=e?X(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var st="[object Boolean]",lt="[object Date]",ot="[object Map]",ut="[object Number]",ft="[object RegExp]",ht="[object Set]",at="[object String]",ct="[object Symbol]";var dt="[object ArrayBuffer]",pt="[object DataView]",mt="[object Float32Array]",wt="[object Float64Array]",gt="[object Int8Array]",bt="[object Int16Array]",kt="[object Int32Array]",Dt="[object Uint8Array]",vt="[object Uint8ClampedArray]",yt="[object Uint16Array]",Ft="[object Uint32Array]";function Et(t,e,r){var i=t.constructor;switch(e){case dt:return X(t);case st:case lt:return new i(+t);case pt:return Y(t,r);case mt:case wt:case gt:case bt:case kt:case Dt:case vt:case yt:case Ft:return nt(t,r);case ot:return new i;case ut:case at:return new i(t);case ft:return tt(t);case ht:return new i;case ct:return it(t)}}function Mt(t){return typeof t.constructor=="function"&&!u(t)?R(k(t)):{}}var xt="[object Map]";function At(t){return M(t)&&f(t)==xt}var Ct=a&&a.isMap;var St=Ct?h(Ct):At;var Ot="[object Set]";function $t(t){return M(t)&&f(t)==Ot}var _t=a&&a.isSet;var Bt=_t?h(_t):$t;var Rt=1,jt=2,Nt=4;var qt="[object Arguments]",zt="[object Array]",Tt="[object Boolean]",It="[object Date]",Pt="[object Error]",Jt="[object Function]",Lt="[object GeneratorFunction]",Wt="[object Map]",Ut="[object Number]",Ht="[object Object]",Zt="[object RegExp]",Kt="[object Set]",Vt="[object String]",Gt="[object Symbol]",Xt="[object WeakMap]";var Yt="[object ArrayBuffer]",Qt="[object DataView]",te="[object Float32Array]",ee="[object Float64Array]",re="[object Int8Array]",ie="[object Int16Array]",ne="[object Int32Array]",se="[object Uint8Array]",le="[object Uint8ClampedArray]",oe="[object Uint16Array]",ue="[object Uint32Array]";var fe={};fe[qt]=fe[zt]=fe[Yt]=fe[Qt]=fe[Tt]=fe[It]=fe[te]=fe[ee]=fe[re]=fe[ie]=fe[ne]=fe[Wt]=fe[Ut]=fe[Ht]=fe[Zt]=fe[Kt]=fe[Vt]=fe[Gt]=fe[se]=fe[le]=fe[oe]=fe[ue]=true;fe[Pt]=fe[Jt]=fe[Xt]=false;function he(t,e,r,i,n,l){var o,u=e&Rt,h=e&jt,a=e&Nt;if(r){o=n?r(t,i,n,l):r(t)}if(o!==undefined){return o}if(!v(t)){return t}var m=E(t);if(m){o=G(t);if(!u){return j(t,o)}}else{var b=f(t),k=b==Jt||b==Lt;if(c(t)){return U(t,u)}if(b==Ht||b==qt||k&&!n){o=h||k?{}:Mt(t);if(!u){return h?Z(t,T(o,t)):H(t,z(o,t))}}else{if(!fe[b]){return n?t:{}}o=Et(t,b,u)}}l||(l=new d);var y=l.get(t);if(y){return y}l.set(t,o);if(Bt(t)){t.forEach((function(i){o.add(he(i,e,r,i,t,l))}))}else if(St(t)){t.forEach((function(i,n){o.set(n,he(i,e,r,n,t,l))}))}var F=a?h?D:p:h?g:s;var M=m?undefined:F(t);N(M||t,(function(i,n){if(M){n=i;i=t[n]}w(o,n,he(i,e,r,n,t,l))}));return o}var ae=1,ce=4;function de(t){return he(t,ae|ce)}function pe(t){this.content=t}pe.prototype={constructor:pe,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,r){var i=r&&r!=t?this.remove(r):this;var n=i.find(t),s=i.content.slice();if(n==-1){s.push(r||t,e)}else{s[n+1]=e;if(r)s[n]=r}return new pe(s)},remove:function(t){var e=this.find(t);if(e==-1)return this;var r=this.content.slice();r.splice(e,2);return new pe(r)},addToStart:function(t,e){return new pe([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var r=this.remove(t).content.slice();r.push(t,e);return new pe(r)},addBefore:function(t,e,r){var i=this.remove(e),n=i.content.slice();var s=i.find(t);n.splice(s==-1?n.length:s,0,e,r);return new pe(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=pe.from(t);if(!t.size)return this;return new pe(t.content.concat(this.subtract(t).content))},append:function(t){t=pe.from(t);if(!t.size)return this;return new pe(this.subtract(t).content.concat(t.content))},subtract:function(t){var e=this;t=pe.from(t);for(var r=0;r<t.content.length;r+=2)e=e.remove(t.content[r]);return e},toObject:function(){var t={};this.forEach((function(e,r){t[e]=r}));return t},get size(){return this.content.length>>1}};pe.from=function(t){if(t instanceof pe)return t;var e=[];if(t)for(var r in t)e.push(r,t[r]);return new pe(e)};function me(t,e,r){for(let i=0;;i++){if(i==t.childCount||i==e.childCount)return t.childCount==e.childCount?null:r;let n=t.child(i),s=e.child(i);if(n==s){r+=n.nodeSize;continue}if(!n.sameMarkup(s))return r;if(n.isText&&n.text!=s.text){for(let t=0;n.text[t]==s.text[t];t++)r++;return r}if(n.content.size||s.content.size){let t=me(n.content,s.content,r+1);if(t!=null)return t}r+=n.nodeSize}}function we(t,e,r,i){for(let n=t.childCount,s=e.childCount;;){if(n==0||s==0)return n==s?null:{a:r,b:i};let l=t.child(--n),o=e.child(--s),u=l.nodeSize;if(l==o){r-=u;i-=u;continue}if(!l.sameMarkup(o))return{a:r,b:i};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++;r--;i--}return{a:r,b:i}}if(l.content.size||o.content.size){let t=we(l.content,o.content,r-1,i-1);if(t)return t}r-=u;i-=u}}class ge{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,r,i=0,n){for(let s=0,l=0;l<e;s++){let o=this.content[s],u=l+o.nodeSize;if(u>t&&r(o,i+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),r,i+n)}l=u}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,r,i){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?"":i?typeof i==="function"?i(l):i:l.type.spec.leafText?l.type.spec.leafText(l):"";if(l.isBlock&&(l.isLeaf&&u||l.isTextblock)&&r){if(s)s=false;else n+=r}n+=u}),0);return n}append(t){if(!t.size)return this;if(!this.size)return t;let e=this.lastChild,r=t.firstChild,i=this.content.slice(),n=0;if(e.isText&&e.sameMarkup(r)){i[i.length-1]=e.withText(e.text+r.text);n=1}for(;n<t.content.length;n++)i.push(t.content[n]);return new ge(i,this.size+t.size)}cut(t,e=this.size){if(t==0&&e==this.size)return this;let r=[],i=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))}r.push(l);i+=l.nodeSize}s=o}return new ge(r,i)}cutByIndex(t,e){if(t==e)return ge.empty;if(t==0&&e==this.content.length)return this;return new ge(this.content.slice(t,e))}replaceChild(t,e){let r=this.content[t];if(r==e)return this;let i=this.content.slice();let n=this.size+e.nodeSize-r.nodeSize;i[t]=e;return new ge(i,n)}addToStart(t){return new ge([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new ge(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,r=0;e<this.content.length;e++){let i=this.content[e];t(i,r,e);r+=i.nodeSize}}findDiffStart(t,e=0){return me(this,t,e)}findDiffEnd(t,e=this.size,r=t.size){return we(this,t,e,r)}findIndex(t,e=-1){if(t==0)return ke(0,t);if(t==this.size)return ke(this.content.length,t);if(t>this.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let r=0,i=0;;r++){let n=this.child(r),s=i+n.nodeSize;if(s>=t){if(s==t||e>0)return ke(r+1,s);return ke(r,i)}i=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 ge.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new ge(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return ge.empty;let e,r=0;for(let i=0;i<t.length;i++){let n=t[i];r+=n.nodeSize;if(i&&n.isText&&t[i-1].sameMarkup(n)){if(!e)e=t.slice(0,i);e[e.length-1]=n.withText(e[e.length-1].text+n.text)}else if(e){e.push(n)}}return new ge(e||t,r)}static from(t){if(!t)return ge.empty;if(t instanceof ge)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new ge([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}ge.empty=new ge([],0);const be={index:0,offset:0};function ke(t,e){be.index=t;be.offset=e;return be}function De(t,e){if(t===e)return true;if(!(t&&typeof t=="object")||!(e&&typeof e=="object"))return false;let r=Array.isArray(t);if(Array.isArray(e)!=r)return false;if(r){if(t.length!=e.length)return false;for(let r=0;r<t.length;r++)if(!De(t[r],e[r]))return false}else{for(let r in t)if(!(r in e)||!De(t[r],e[r]))return false;for(let r in e)if(!(r in t))return false}return true}class ve{constructor(t,e){this.type=t;this.attrs=e}addToSet(t){let e,r=false;for(let i=0;i<t.length;i++){let n=t[i];if(this.eq(n))return t;if(this.type.excludes(n.type)){if(!e)e=t.slice(0,i)}else if(n.type.excludes(this.type)){return t}else{if(!r&&n.type.rank>this.type.rank){if(!e)e=t.slice(0,i);e.push(this);r=true}if(e)e.push(n)}}if(!e)e=t.slice();if(!r)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&&De(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 r=t.marks[e.type];if(!r)throw new RangeError(`There is no mark type ${e.type} in this schema`);let i=r.create(e.attrs);r.checkAttrs(i.attrs);return i}static sameSet(t,e){if(t==e)return true;if(t.length!=e.length)return false;for(let r=0;r<t.length;r++)if(!t[r].eq(e[r]))return false;return true}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return ve.none;if(t instanceof ve)return[t];let e=t.slice();e.sort(((t,e)=>t.type.rank-e.type.rank));return e}}ve.none=[];class ye extends Error{}class Fe{constructor(t,e,r){this.content=t;this.openStart=e;this.openEnd=r}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,e){let r=Me(this.content,t+this.openStart,e);return r&&new Fe(r,this.openStart,this.openEnd)}removeBetween(t,e){return new Fe(Ee(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 Fe.empty;let r=e.openStart||0,i=e.openEnd||0;if(typeof r!="number"||typeof i!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new Fe(ge.fromJSON(t,e.content),r,i)}static maxOpen(t,e=true){let r=0,i=0;for(let i=t.firstChild;i&&!i.isLeaf&&(e||!i.type.spec.isolating);i=i.firstChild)r++;for(let r=t.lastChild;r&&!r.isLeaf&&(e||!r.type.spec.isolating);r=r.lastChild)i++;return new Fe(t,r,i)}}Fe.empty=new Fe(ge.empty,0,0);function Ee(t,e,r){let{index:i,offset:n}=t.findIndex(e),s=t.maybeChild(i);let{index:l,offset:o}=t.findIndex(r);if(n==e||s.isText){if(o!=r&&!t.child(l).isText)throw new RangeError("Removing non-flat range");return t.cut(0,e).append(t.cut(r))}if(i!=l)throw new RangeError("Removing non-flat range");return t.replaceChild(i,s.copy(Ee(s.content,e-n-1,r-n-1)))}function Me(t,e,r,i){let{index:n,offset:s}=t.findIndex(e),l=t.maybeChild(n);if(s==e||l.isText){if(i&&!i.canReplace(n,n,r))return null;return t.cut(0,e).append(r).append(t.cut(e))}let o=Me(l.content,e-s-1,r);return o&&t.replaceChild(n,l.copy(o))}function xe(t,e,r){if(r.openStart>t.depth)throw new ye("Inserted content deeper than insertion position");if(t.depth-r.openStart!=e.depth-r.openEnd)throw new ye("Inconsistent open depths");return Ae(t,e,r,0)}function Ae(t,e,r,i){let n=t.index(i),s=t.node(i);if(n==e.index(i)&&i<t.depth-r.openStart){let l=Ae(t,e,r,i+1);return s.copy(s.content.replaceChild(n,l))}else if(!r.content.size){return _e(s,Re(t,e,i))}else if(!r.openStart&&!r.openEnd&&t.depth==i&&e.depth==i){let i=t.parent,n=i.content;return _e(i,n.cut(0,t.parentOffset).append(r.content).append(n.cut(e.parentOffset)))}else{let{start:n,end:l}=je(r,t);return _e(s,Be(t,n,l,e,i))}}function Ce(t,e){if(!e.type.compatibleContent(t.type))throw new ye("Cannot join "+e.type.name+" onto "+t.type.name)}function Se(t,e,r){let i=t.node(r);Ce(i,e.node(r));return i}function Oe(t,e){let r=e.length-1;if(r>=0&&t.isText&&t.sameMarkup(e[r]))e[r]=t.withText(e[r].text+t.text);else e.push(t)}function $e(t,e,r,i){let n=(e||t).node(r);let s=0,l=e?e.index(r):n.childCount;if(t){s=t.index(r);if(t.depth>r){s++}else if(t.textOffset){Oe(t.nodeAfter,i);s++}}for(let t=s;t<l;t++)Oe(n.child(t),i);if(e&&e.depth==r&&e.textOffset)Oe(e.nodeBefore,i)}function _e(t,e){t.type.checkContent(e);return t.copy(e)}function Be(t,e,r,i,n){let s=t.depth>n&&Se(t,e,n+1);let l=i.depth>n&&Se(r,i,n+1);let o=[];$e(null,t,n,o);if(s&&l&&e.index(n)==r.index(n)){Ce(s,l);Oe(_e(s,Be(t,e,r,i,n+1)),o)}else{if(s)Oe(_e(s,Re(t,e,n+1)),o);$e(e,r,n,o);if(l)Oe(_e(l,Re(r,i,n+1)),o)}$e(i,null,n,o);return new ge(o)}function Re(t,e,r){let i=[];$e(null,t,r,i);if(t.depth>r){let n=Se(t,e,r+1);Oe(_e(n,Re(t,e,r+1)),i)}$e(e,null,r,i);return new ge(i)}function je(t,e){let r=e.depth-t.openStart,i=e.node(r);let n=i.copy(t.content);for(let t=r-1;t>=0;t--)n=e.node(t).copy(ge.from(n));return{start:n.resolveNoCache(t.openStart+r),end:n.resolveNoCache(n.content.size-t.openEnd-r)}}class Ne{constructor(t,e,r){this.pos=t;this.path=e;this.parentOffset=r;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 r=this.pos-this.path[this.path.length-1],i=t.child(e);return r?t.child(e).cut(r):i}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 r=this.path[e*3],i=e==0?0:this.path[e*3-1]+1;for(let e=0;e<t;e++)i+=r.child(e).nodeSize;return i}marks(){let t=this.parent,e=this.index();if(t.content.size==0)return ve.none;if(this.textOffset)return t.child(e).marks;let r=t.maybeChild(e-1),i=t.maybeChild(e);if(!r){let t=r;r=i;i=t}let n=r.marks;for(var s=0;s<n.length;s++)if(n[s].type.spec.inclusive===false&&(!i||!n[s].isInSet(i.marks)))n=n[s--].removeFromSet(n);return n}marksAcross(t){let e=this.parent.maybeChild(this.index());if(!e||!e.isInline)return null;let r=e.marks,i=t.parent.maybeChild(t.index());for(var n=0;n<r.length;n++)if(r[n].type.spec.inclusive===false&&(!i||!r[n].isInSet(i.marks)))r=r[n--].removeFromSet(r);return r}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 r=this.depth-(this.parent.inlineContent||this.pos==t.pos?1:0);r>=0;r--)if(t.pos<=this.end(r)&&(!e||e(this.node(r))))return new Ie(this,t,r);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 r=[];let i=0,n=e;for(let e=t;;){let{index:t,offset:s}=e.content.findIndex(n);let l=n-s;r.push(e,t,i+s);if(!l)break;e=e.child(t);if(e.isText)break;n=l-1;i+=s+1}return new Ne(e,r,n)}static resolveCached(t,e){let r=Te.get(t);if(r){for(let t=0;t<r.elts.length;t++){let i=r.elts[t];if(i.pos==e)return i}}else{Te.set(t,r=new qe)}let i=r.elts[r.i]=Ne.resolve(t,e);r.i=(r.i+1)%ze;return i}}class qe{constructor(){this.elts=[];this.i=0}}const ze=12,Te=new WeakMap;class Ie{constructor(t,e,r){this.$from=t;this.$to=e;this.depth=r}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 Pe=Object.create(null);class Je{constructor(t,e,r,i=ve.none){this.type=t;this.attrs=e;this.marks=i;this.content=r||ge.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,r,i=0){this.content.nodesBetween(t,e,r,i,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,r,i){return this.content.textBetween(t,e,r,i)}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,r){return this.type==t&&De(this.attrs,e||t.defaultAttrs||Pe)&&ve.sameSet(this.marks,r||ve.none)}copy(t=null){if(t==this.content)return this;return new Je(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new Je(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,r=false){if(t==e)return Fe.empty;let i=this.resolve(t),n=this.resolve(e);let s=r?0:i.sharedDepth(e);let l=i.start(s),o=i.node(s);let u=o.content.cut(i.pos-l,n.pos-l);return new Fe(u,i.depth-s,n.depth-s)}replace(t,e,r){return xe(this.resolve(t),this.resolve(e),r)}nodeAt(t){for(let e=this;;){let{index:r,offset:i}=e.content.findIndex(t);e=e.maybeChild(r);if(!e)return null;if(i==t||e.isText)return e;t-=i+1}}childAfter(t){let{index:e,offset:r}=this.content.findIndex(t);return{node:this.content.maybeChild(e),index:e,offset:r}}childBefore(t){if(t==0)return{node:null,index:0,offset:0};let{index:e,offset:r}=this.content.findIndex(t);if(r<t)return{node:this.content.child(e),index:e,offset:r};let i=this.content.child(e-1);return{node:i,index:e-1,offset:r-i.nodeSize}}resolve(t){return Ne.resolveCached(this,t)}resolveNoCache(t){return Ne.resolve(this,t)}rangeHasMark(t,e,r){let i=false;if(e>t)this.nodesBetween(t,e,(t=>{if(r.isInSet(t.marks))i=true;return!i}));return i}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 We(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,r=ge.empty,i=0,n=r.childCount){let s=this.contentMatchAt(t).matchFragment(r,i,n);let l=s&&s.matchFragment(this.content,e);if(!l||!l.validEnd)return false;for(let t=i;t<n;t++)if(!this.type.allowsMarks(r.child(t).marks))return false;return true}canReplaceWith(t,e,r,i){if(i&&!this.type.allowsMarks(i))return false;let n=this.contentMatchAt(t).matchType(r);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=ve.none;for(let e=0;e<this.marks.length;e++){let r=this.marks[e];r.type.checkAttrs(r.attrs);t=r.addToSet(t)}if(!ve.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 r=undefined;if(e.marks){if(!Array.isArray(e.marks))throw new RangeError("Invalid mark data for Node.fromJSON");r=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,r)}let i=ge.fromJSON(t,e.content);let n=t.nodeType(e.type).create(e.attrs,i,r);n.type.checkAttrs(n.attrs);return n}}Je.prototype.text=undefined;class Le extends Je{constructor(t,e,r,i){super(t,e,null,i);if(!r)throw new RangeError("Empty text nodes are not allowed");this.text=r}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);return We(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 Le(this.type,this.attrs,this.text,t)}withText(t){if(t==this.text)return this;return new Le(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 We(t,e){for(let r=t.length-1;r>=0;r--)e=t[r].type.name+"("+e+")";return e}class Ue{constructor(t){this.validEnd=t;this.next=[];this.wrapCache=[]}static parse(t,e){let r=new He(t,e);if(r.next==null)return Ue.empty;let i=Ze(r);if(r.next)r.err("Unexpected trailing text");let n=ir(tr(i));nr(n,r);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,r=t.childCount){let i=this;for(let n=e;i&&n<r;n++)i=i.matchType(t.child(n).type);return i}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 r=0;r<t.next.length;r++)if(this.next[e].type==t.next[r].type)return true;return false}fillBefore(t,e=false,r=0){let i=[this];function n(s,l){let o=s.matchFragment(t,r);if(o&&(!e||o.validEnd))return ge.from(l.map((t=>t.createAndFill())));for(let t=0;t<s.next.length;t++){let{type:e,next:r}=s.next[t];if(!(e.isText||e.hasRequiredAttrs())&&i.indexOf(r)==-1){i.push(r);let t=n(r,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),r=[{match:this,type:null,via:null}];while(r.length){let i=r.shift(),n=i.match;if(n.matchType(t)){let t=[];for(let e=i;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)&&(!i.type||l.validEnd)){r.push({match:s.contentMatch,type:s,via:i});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(r){t.push(r);for(let i=0;i<r.next.length;i++)if(t.indexOf(r.next[i].next)==-1)e(r.next[i].next)}e(this);return t.map(((e,r)=>{let i=r+(e.validEnd?"*":" ")+" ";for(let r=0;r<e.next.length;r++)i+=(r?", ":"")+e.next[r].type.name+"->"+t.indexOf(e.next[r].next);return i})).join("\n")}}Ue.empty=new Ue(true);class He{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 Ze(t){let e=[];do{e.push(Ke(t))}while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function Ke(t){let e=[];do{e.push(Ve(t))}while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function Ve(t){let e=Qe(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=Xe(t,e);else break}return e}function Ge(t){if(/\D/.test(t.next))t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);t.pos++;return e}function Xe(t,e){let r=Ge(t),i=r;if(t.eat(",")){if(t.next!="}")i=Ge(t);else i=-1}if(!t.eat("}"))t.err("Unclosed braced range");return{type:"range",min:r,max:i,expr:e}}function Ye(t,e){let r=t.nodeTypes,i=r[e];if(i)return[i];let n=[];for(let t in r){let i=r[t];if(i.groups.indexOf(e)>-1)n.push(i)}if(n.length==0)t.err("No node type or group '"+e+"' found");return n}function Qe(t){if(t.eat("(")){let e=Ze(t);if(!t.eat(")"))t.err("Missing closing paren");return e}else if(!/\W/.test(t.next)){let e=Ye(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 tr(t){let e=[[]];n(s(t,0),r());return e;function r(){return e.push([])-1}function i(t,r,i){let n={term:i,to:r};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,r)=>t.concat(s(r,e))),[])}else if(t.type=="seq"){for(let i=0;;i++){let l=s(t.exprs[i],e);if(i==t.exprs.length-1)return l;n(l,e=r())}}else if(t.type=="star"){let l=r();i(e,l);n(s(t.expr,l),l);return[i(l)]}else if(t.type=="plus"){let l=r();n(s(t.expr,e),l);n(s(t.expr,l),l);return[i(l)]}else if(t.type=="opt"){return[i(e)].concat(s(t.expr,e))}else if(t.type=="range"){let l=e;for(let e=0;e<t.min;e++){let e=r();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=r();i(l,e);n(s(t.expr,l),e);l=e}}return[i(l)]}else if(t.type=="name"){return[i(e,undefined,t.value)]}else{throw new Error("Unknown expr type")}}}function er(t,e){return e-t}function rr(t,e){let r=[];i(e);return r.sort(er);function i(e){let n=t[e];if(n.length==1&&!n[0].term)return i(n[0].to);r.push(e);for(let t=0;t<n.length;t++){let{term:e,to:s}=n[t];if(!e&&r.indexOf(s)==-1)i(s)}}}function ir(t){let e=Object.create(null);return r(rr(t,0));function r(i){let n=[];i.forEach((e=>{t[e].forEach((({term:e,to:r})=>{if(!e)return;let i;for(let t=0;t<n.length;t++)if(n[t][0]==e)i=n[t][1];rr(t,r).forEach((t=>{if(!i)n.push([e,i=[]]);if(i.indexOf(t)==-1)i.push(t)}))}))}));let s=e[i.join(",")]=new Ue(i.indexOf(t.length-1)>-1);for(let t=0;t<n.length;t++){let i=n[t][1].sort(er);s.next.push({type:n[t][0],next:e[i.join(",")]||r(i)})}return s}}function nr(t,e){for(let r=0,i=[t];r<i.length;r++){let t=i[r],n=!t.validEnd,s=[];for(let e=0;e<t.next.length;e++){let{type:r,next:l}=t.next[e];s.push(r.name);if(n&&!(r.isText||r.hasRequiredAttrs()))n=false;if(i.indexOf(l)==-1)i.push(l)}if(n)e.err("Only non-generatable nodes ("+s.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function sr(t){let e=Object.create(null);for(let r in t){let i=t[r];if(!i.hasDefault)return null;e[r]=i.default}return e}function lr(t,e){let r=Object.create(null);for(let i in t){let n=e&&e[i];if(n===undefined){let e=t[i];if(e.hasDefault)n=e.default;else throw new RangeError("No value supplied for attribute "+i)}r[i]=n}return r}function or(t,e,r,i){for(let i in e)if(!(i in t))throw new RangeError(`Unsupported attribute ${i} for ${r} of type ${i}`);for(let r in t){let i=t[r];if(i.validate)i.validate(e[r])}}function ur(t,e){let r=Object.create(null);if(e)for(let i in e)r[i]=new ar(t,i,e[i]);return r}class fr{constructor(t,e,r){this.name=t;this.schema=e;this.spec=r;this.markSet=null;this.groups=r.group?r.group.split(" "):[];this.attrs=ur(t,r.attrs);this.defaultAttrs=sr(this.attrs);this.contentMatch=null;this.inlineContent=null;this.isBlock=!(r.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 lr(this.attrs,t)}create(t=null,e,r){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new Je(this,this.computeAttrs(t),ge.from(e),ve.setFrom(r))}createChecked(t=null,e,r){e=ge.from(e);this.checkContent(e);return new Je(this,this.computeAttrs(t),e,ve.setFrom(r))}createAndFill(t=null,e,r){t=this.computeAttrs(t);e=ge.from(e);if(e.size){let t=this.contentMatch.fillBefore(e);if(!t)return null;e=t.append(e)}let i=this.contentMatch.matchFragment(e);let n=i&&i.fillBefore(ge.empty,true);if(!n)return null;return new Je(this,t,e.append(n),ve.setFrom(r))}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){or(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 r=0;r<t.length;r++){if(!this.allowsMarkType(t[r].type)){if(!e)e=t.slice(0,r)}else if(e){e.push(t[r])}}return!e?t:e.length?e:ve.none}static compile(t,e){let r=Object.create(null);t.forEach(((t,i)=>r[t]=new fr(t,e,i)));let i=e.spec.topNode||"doc";if(!r[i])throw new RangeError("Schema is missing its top node type ('"+i+"')");if(!r.text)throw new RangeError("Every schema needs a 'text' type");for(let t in r.text.attrs)throw new RangeError("The text node type should not have attributes");return r}}function hr(t,e,r){let i=r.split("|");return r=>{let n=r===null?"null":typeof r;if(i.indexOf(n)<0)throw new RangeError(`Expected value of type ${i} for attribute ${e} on type ${t}, got ${n}`)}}class ar{constructor(t,e,r){this.hasDefault=Object.prototype.hasOwnProperty.call(r,"default");this.default=r.default;this.validate=typeof r.validate=="string"?hr(t,e,r.validate):r.validate}get isRequired(){return!this.hasDefault}}class cr{constructor(t,e,r,i){this.name=t;this.rank=e;this.schema=r;this.spec=i;this.attrs=ur(t,i.attrs);this.excluded=null;let n=sr(this.attrs);this.instance=n?new ve(this,n):null}create(t=null){if(!t&&this.instance)return this.instance;return new ve(this,lr(this.attrs,t))}static compile(t,e){let r=Object.create(null),i=0;t.forEach(((t,n)=>r[t]=new cr(t,i++,e,n)));return r}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){or(this.attrs,t,"mark")}excludes(t){return this.excluded.indexOf(t)>-1}}class dr{constructor(t){this.linebreakReplacement=null;this.cached=Object.create(null);let e=this.spec={};for(let r in t)e[r]=t[r];e.nodes=pe.from(t.nodes),e.marks=pe.from(t.marks||{}),this.nodes=fr.compile(this.spec.nodes,this);this.marks=cr.compile(this.spec.marks,this);let r=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],i=e.spec.content||"",n=e.spec.marks;e.contentMatch=r[i]||(r[i]=Ue.parse(i,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?pr(this,n.split(" ")):n==""||!e.inlineContent?[]:null}for(let t in this.marks){let e=this.marks[t],r=e.spec.excludes;e.excluded=r==null?[e]:r==""?[]:pr(this,r.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,r,i){if(typeof t=="string")t=this.nodeType(t);else if(!(t instanceof fr))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,r,i)}text(t,e){let r=this.nodes.text;return new Le(r,r.defaultAttrs,t,ve.setFrom(e))}mark(t,e){if(typeof t=="string")t=this.marks[t];return t.create(e)}nodeFromJSON(t){return Je.fromJSON(this,t)}markFromJSON(t){return ve.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function pr(t,e){let r=[];for(let i=0;i<e.length;i++){let n=e[i],s=t.marks[n],l=s;if(s){r.push(s)}else{for(let e in t.marks){let i=t.marks[e];if(n=="_"||i.spec.group&&i.spec.group.split(" ").indexOf(n)>-1)r.push(l=i)}}if(!l)throw new SyntaxError("Unknown mark type: '"+e[i]+"'")}return r}function mr(t){return t.tag!=null}function wr(t){return t.style!=null}class gr{constructor(t,e){this.schema=t;this.rules=e;this.tags=[];this.styles=[];let r=this.matchedStyles=[];e.forEach((t=>{if(mr(t)){this.tags.push(t)}else if(wr(t)){let e=/[^=]*/.exec(t.style)[0];if(r.indexOf(e)<0)r.push(e);this.styles.push(t)}}));this.normalizeLists=!this.tags.some((e=>{if(!/^(ul|ol)\b/.test(e.tag)||!e.node)return false;let r=t.nodes[e.node];return r.contentMatch.matchType(r)}))}parse(t,e={}){let r=new xr(this,e,false);r.addAll(t,ve.none,e.from,e.to);return r.finish()}parseSlice(t,e={}){let r=new xr(this,e,true);r.addAll(t,ve.none,e.from,e.to);return Fe.maxOpen(r.finish())}matchTag(t,e,r){for(let i=r?this.tags.indexOf(r)+1:0;i<this.tags.length;i++){let r=this.tags[i];if(Cr(t,r.tag)&&(r.namespace===undefined||t.namespaceURI==r.namespace)&&(!r.context||e.matchesContext(r.context))){if(r.getAttrs){let e=r.getAttrs(t);if(e===false)continue;r.attrs=e||undefined}return r}}}matchStyle(t,e,r,i){for(let n=i?this.styles.indexOf(i)+1:0;n<this.styles.length;n++){let i=this.styles[n],s=i.style;if(s.indexOf(t)!=0||i.context&&!r.matchesContext(i.context)||s.length>t.length&&(s.charCodeAt(t.length)!=61||s.slice(t.length+1)!=e))continue;if(i.getAttrs){let t=i.getAttrs(e);if(t===false)continue;i.attrs=t||undefined}return i}}static schemaRules(t){let e=[];function r(t){let r=t.priority==null?50:t.priority,i=0;for(;i<e.length;i++){let t=e[i],n=t.priority==null?50:t.priority;if(n<r)break}e.splice(i,0,t)}for(let e in t.marks){let i=t.marks[e].spec.parseDOM;if(i)i.forEach((t=>{r(t=Sr(t));if(!(t.mark||t.ignore||t.clearMark))t.mark=e}))}for(let e in t.nodes){let i=t.nodes[e].spec.parseDOM;if(i)i.forEach((t=>{r(t=Sr(t));if(!(t.node||t.ignore||t.mark))t.node=e}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new gr(t,gr.schemaRules(t)))}}const br={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 kr={head:true,noscript:true,object:true,script:true,style:true,title:true};const Dr={ol:true,ul:true};const vr=1,yr=2,Fr=4;function Er(t,e,r){if(e!=null)return(e?vr:0)|(e==="full"?yr:0);return t&&t.whitespace=="pre"?vr|yr:r&~Fr}class Mr{constructor(t,e,r,i,n,s){this.type=t;this.attrs=e;this.marks=r;this.solid=i;this.options=s;this.content=[];this.activeMarks=ve.none;this.match=n||(s&Fr?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(ge.from(t));if(e){this.match=this.type.contentMatch.matchFragment(e)}else{let e=this.type.contentMatch,r;if(r=e.findWrapping(t.type)){this.match=e;return r}else{return null}}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&vr)){let t=this.content[this.content.length-1],e;if(t&&t.isText&&(e=/[ \t\r\n\u000c]+$/.exec(t.text))){let r=t;if(t.text.length==e[0].length)this.content.pop();else this.content[this.content.length-1]=r.withText(r.text.slice(0,r.text.length-e[0].length))}}let e=ge.from(this.content);if(!t&&this.match)e=e.append(this.match.fillBefore(ge.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&&!br.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class xr{constructor(t,e,r){this.parser=t;this.options=e;this.isOpen=r;this.open=0;let i=e.topNode,n;let s=Er(null,e.preserveWhitespace,0)|(r?Fr:0);if(i)n=new Mr(i.type,i.attrs,ve.none,true,e.topMatch||i.type.contentMatch,s);else if(r)n=new Mr(null,null,ve.none,true,null,s);else n=new Mr(t.schema.topNodeType,null,ve.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 r=t.nodeValue;let i=this.top;if(i.options&yr||i.inlineContext(t)||/[^ \t\r\n\u000c]/.test(r)){if(!(i.options&vr)){r=r.replace(/[ \t\r\n\u000c]+/g," ");if(/^[ \t\r\n\u000c]/.test(r)&&this.open==this.nodes.length-1){let e=i.content[i.content.length-1];let n=t.previousSibling;if(!e||n&&n.nodeName=="BR"||e.isText&&/[ \t\r\n\u000c]$/.test(e.text))r=r.slice(1)}}else if(!(i.options&yr)){r=r.replace(/\r?\n|\r/g," ")}else{r=r.replace(/\r\n?/g,"\n")}if(r)this.insertNode(this.parser.schema.text(r),e);this.findInText(t)}else{this.findInside(t)}}addElement(t,e,r){let i=t.nodeName.toLowerCase(),n;if(Dr.hasOwnProperty(i)&&this.parser.normalizeLists)Ar(t);let s=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(n=this.parser.matchTag(t,this,r));if(s?s.ignore:kr.hasOwnProperty(i)){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 r,n=this.top,l=this.needsBlock;if(br.hasOwnProperty(i)){if(n.content.length&&n.content[0].isInline&&this.open){this.open--;n=this.top}r=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(r)this.sync(n);this.needsBlock=l}else{let r=this.readStyles(t,e);if(r)this.addElementByRule(t,s,r,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 r=t.style;if(r&&r.length)for(let t=0;t<this.parser.matchedStyles.length;t++){let i=this.parser.matchedStyles[t],n=r.getPropertyValue(i);if(n)for(let t=undefined;;){let r=this.parser.matchStyle(i,n,this,t);if(!r)break;if(r.ignore)return null;if(r.clearMark)e=e.filter((t=>!r.clearMark(t)));else e=e.concat(this.parser.schema.marks[r.mark].create(r.attrs));if(r.consuming===false)t=r;else break}}return e}addElementByRule(t,e,r,i){let n,s;if(e.node){s=this.parser.schema.nodes[e.node];if(!s.isLeaf){let t=this.enter(s,e.attrs||null,r,e.preserveWhitespace);if(t){n=true;r=t}}else if(!this.insertNode(s.create(e.attrs),r)){this.leafFallback(t,r)}}else{let t=this.parser.schema.marks[e.mark];r=r.concat(t.create(e.attrs))}let l=this.top;if(s&&s.isLeaf){this.findInside(t)}else if(i){this.addElement(t,r,i)}else if(e.getContent){this.findInside(t);e.getContent(t,this.parser.schema).forEach((t=>this.insertNode(t,r)))}else{let i=t;if(typeof e.contentElement=="string")i=t.querySelector(e.contentElement);else if(typeof e.contentElement=="function")i=e.contentElement(t);else if(e.contentElement)i=e.contentElement;this.findAround(t,i,true);this.addAll(i,r)}if(n&&this.sync(l))this.open--}addAll(t,e,r,i){let n=r||0;for(let s=r?t.childNodes[r]:t.firstChild,l=i==null?null:t.childNodes[i];s!=l;s=s.nextSibling,++n){this.findAtPoint(t,n);this.addDOM(s,e)}this.findAtPoint(t,n)}findPlace(t,e){let r,i;for(let e=this.open;e>=0;e--){let n=this.nodes[e];let s=n.findWrapping(t);if(s&&(!r||r.length>s.length)){r=s;i=n;if(!s.length)break}if(n.solid)break}if(!r)return null;this.sync(i);for(let t=0;t<r.length;t++)e=this.enterInner(r[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 r=this.findPlace(t,e);if(r){this.closeExtra();let e=this.top;if(e.match)e.match=e.match.matchType(t.type);let i=ve.none;for(let n of r.concat(t.marks))if(e.type?e.type.allowsMarkType(n.type):Or(n.type,t.type))i=n.addToSet(i);e.content.push(t.mark(i));return true}return false}enter(t,e,r,i){let n=this.findPlace(t.create(e),r);if(n)n=this.enterInner(t,e,r,true,i);return n}enterInner(t,e,r,i=false,n){this.closeExtra();let s=this.top;s.match=s.match&&s.match.matchType(t);let l=Er(t,n,s.options);if(s.options&Fr&&s.content.length==0)l|=Fr;let o=ve.none;r=r.filter((e=>{if(s.type?s.type.allowsMarkType(e.type):Or(e.type,t)){o=e.addToSet(o);return false}return true}));this.nodes.push(new Mr(t,e,o,i,null,l));this.open++;return r}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 r=this.nodes[e].content;for(let e=r.length-1;e>=0;e--)t+=r[e].nodeSize;if(e)t++}return t}findAtPoint(t,e){if(this.find)for(let r=0;r<this.find.length;r++){if(this.find[r].node==t&&this.find[r].offset==e)this.find[r].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,r){if(t!=e&&this.find)for(let i=0;i<this.find.length;i++){if(this.find[i].pos==null&&t.nodeType==1&&t.contains(this.find[i].node)){let t=e.compareDocumentPosition(this.find[i].node);if(t&(r?2:4))this.find[i].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 r=this.options.context;let i=!this.isOpen&&(!r||r.parent.type==this.nodes[0].type);let n=-(r?r.depth+1:0)+(i?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&&i?this.nodes[l].type:r&&l>=n?r.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 r=t.node(e).contentMatchAt(t.indexAfter(e)).defaultType;if(r&&r.isTextblock&&r.defaultAttrs)return r}for(let t in this.parser.schema.nodes){let e=this.parser.schema.nodes[t];if(e.isTextblock&&e.defaultAttrs)return e}}}function Ar(t){for(let e=t.firstChild,r=null;e;e=e.nextSibling){let t=e.nodeType==1?e.nodeName.toLowerCase():null;if(t&&Dr.hasOwnProperty(t)&&r){r.appendChild(e);e=r}else if(t=="li"){r=e}else if(t){r=null}}}function Cr(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function Sr(t){let e={};for(let r in t)e[r]=t[r];return e}function Or(t,e){let r=e.schema.nodes;for(let i in r){let n=r[i];if(!n.allowsMarkType(t))continue;let s=[],l=t=>{s.push(t);for(let r=0;r<t.edgeCount;r++){let{type:i,next:n}=t.edge(r);if(i==e)return true;if(s.indexOf(n)<0&&l(n))return true}};if(l(n.contentMatch))return true}}class $r{constructor(t,e){this.nodes=t;this.marks=e}serializeFragment(t,e={},r){if(!r)r=Br(e).createDocumentFragment();let i=r,n=[];t.forEach((t=>{if(n.length||t.marks.length){let r=0,s=0;while(r<n.length&&s<t.marks.length){let e=t.marks[s];if(!this.marks[e.type.name]){s++;continue}if(!e.eq(n[r][0])||e.type.spec.spanning===false)break;r++;s++}while(r<n.length)i=n.pop()[1];while(s<t.marks.length){let r=t.marks[s++];let l=this.serializeMark(r,t.isInline,e);if(l){n.push([r,i]);i.appendChild(l.dom);i=l.contentDOM||l.dom}}}i.appendChild(this.serializeNodeInner(t,e))}));return r}serializeNodeInner(t,e){let{dom:r,contentDOM:i}=qr(Br(e),this.nodes[t.type.name](t),null,t.attrs);if(i){if(t.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(t.content,e,i)}return r}serializeNode(t,e={}){let r=this.serializeNodeInner(t,e);for(let i=t.marks.length-1;i>=0;i--){let n=this.serializeMark(t.marks[i],t.isInline,e);if(n){(n.contentDOM||n.dom).appendChild(r);r=n.dom}}return r}serializeMark(t,e,r={}){let i=this.marks[t.type.name];return i&&qr(Br(r),i(t,e),null,t.attrs)}static renderSpec(t,e,r=null,i){return qr(t,e,r,i)}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new $r(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=_r(t.nodes);if(!e.text)e.text=t=>t.text;return e}static marksFromSchema(t){return _r(t.marks)}}function _r(t){let e={};for(let r in t){let i=t[r].spec.toDOM;if(i)e[r]=i}return e}function Br(t){return t.document||window.document}const Rr=new WeakMap;function jr(t){let e=Rr.get(t);if(e===undefined)Rr.set(t,e=Nr(t));return e}function Nr(t){let e=null;function r(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++)r(t[e])}}else{for(let e in t)r(t[e])}}}r(t);return e}function qr(t,e,r,i){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(i&&(s=jr(i))&&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){r=n.slice(0,l);n=n.slice(l+1)}let o;let u=r?t.createElementNS(r,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}=qr(t,s,r,i);u.appendChild(e);if(n){if(o)throw new RangeError("Multiple content holes");o=n}}}return{dom:u,contentDOM:o}}const zr=65535;const Tr=Math.pow(2,16);function Ir(t,e){return t+e*Tr}function Pr(t){return t&zr}function Jr(t){return(t-(t&zr))/Tr}const Lr=1,Wr=2,Ur=4,Hr=8;class Zr{constructor(t,e,r){this.pos=t;this.delInfo=e;this.recover=r}get deleted(){return(this.delInfo&Hr)>0}get deletedBefore(){return(this.delInfo&(Lr|Ur))>0}get deletedAfter(){return(this.delInfo&(Wr|Ur))>0}get deletedAcross(){return(this.delInfo&Ur)>0}}class Kr{constructor(t,e=false){this.ranges=t;this.inverted=e;if(!t.length&&Kr.empty)return Kr.empty}recover(t){let e=0,r=Pr(t);if(!this.inverted)for(let t=0;t<r;t++)e+=this.ranges[t*3+2]-this.ranges[t*3+1];return this.ranges[r*3]+e+Jr(t)}mapResult(t,e=1){return this._map(t,e,false)}map(t,e=1){return this._map(t,e,true)}_map(t,e,r){let i=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?i: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+i+(n<0?0:f);if(r)return s;let a=t==(e<0?o:h)?null:Ir(l/3,t-o);let c=t==o?Wr:t==h?Lr:Ur;if(e<0?t!=o:t!=h)c|=Hr;return new Zr(s,c,a)}i+=f-u}return r?t+i:new Zr(t+i,0,null)}touches(t,e){let r=0,i=Pr(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?r:0);if(l>t)break;let o=this.ranges[e+n],u=l+o;if(t<=u&&e==i*3)return true;r+=this.ranges[e+s]-o}return false}forEach(t){let e=this.inverted?2:1,r=this.inverted?1:2;for(let i=0,n=0;i<this.ranges.length;i+=3){let s=this.ranges[i],l=s-(this.inverted?n:0),o=s+(this.inverted?0:n);let u=this.ranges[i+e],f=this.ranges[i+r];t(l,l+u,o,o+f);n+=f-u}}invert(){return new Kr(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?Kr.empty:new Kr(t<0?[0,-t,0]:[0,0,t])}}Kr.empty=new Kr([]);class Vr{constructor(t=[],e,r=0,i=t.length){this.maps=t;this.mirror=e;this.from=r;this.to=i}slice(t=0,e=this.maps.length){return new Vr(this.maps,this.mirror,t,e)}copy(){return new Vr(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,r=this.maps.length;e<t.maps.length;e++){let i=t.getMirror(e);this.appendMap(t.maps[e],i!=null&&i<e?r+i: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,r=this.maps.length+t.maps.length;e>=0;e--){let i=t.getMirror(e);this.appendMap(t.maps[e].invert(),i!=null&&i>e?r-i-1:undefined)}}invert(){let t=new Vr;t.appendMappingInverted(this);return t}map(t,e=1){if(this.mirror)return this._map(t,e,true);for(let r=this.from;r<this.to;r++)t=this.maps[r].map(t,e);return t}mapResult(t,e=1){return this._map(t,e,false)}_map(t,e,r){let i=0;for(let r=this.from;r<this.to;r++){let n=this.maps[r],s=n.mapResult(t,e);if(s.recover!=null){let e=this.getMirror(r);if(e!=null&&e>r&&e<this.to){r=e;t=this.maps[e].recover(s.recover);continue}}i|=s.delInfo;t=s.pos}return r?t:new Zr(t,i,null)}}const Gr=Object.create(null);class Xr{getMap(){return Kr.empty}merge(t){return null}static fromJSON(t,e){if(!e||!e.stepType)throw new RangeError("Invalid input for Step.fromJSON");let r=Gr[e.stepType];if(!r)throw new RangeError(`No step type ${e.stepType} defined`);return r.fromJSON(t,e)}static jsonID(t,e){if(t in Gr)throw new RangeError("Duplicate use of step JSON ID "+t);Gr[t]=e;e.prototype.jsonID=t;return e}}class Yr{constructor(t,e){this.doc=t;this.failed=e}static ok(t){return new Yr(t,null)}static fail(t){return new Yr(null,t)}static fromReplace(t,e,r,i){try{return Yr.ok(t.replace(e,r,i))}catch(t){if(t instanceof ye)return Yr.fail(t.message);throw t}}}function Qr(t,e,r){let i=[];for(let n=0;n<t.childCount;n++){let s=t.child(n);if(s.content.size)s=s.copy(Qr(s.content,e,s));if(s.isInline)s=e(s,r,n);i.push(s)}return ge.fromArray(i)}class ti extends Xr{constructor(t,e,r){super();this.from=t;this.to=e;this.mark=r}apply(t){let e=t.slice(this.from,this.to),r=t.resolve(this.from);let i=r.node(r.sharedDepth(this.to));let n=new Fe(Qr(e.content,((t,e)=>{if(!t.isAtom||!e.type.allowsMarkType(this.mark.type))return t;return t.mark(this.mark.addToSet(t.marks))}),i),e.openStart,e.openEnd);return Yr.fromReplace(t,this.from,this.to,n)}invert(){return new ei(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);if(e.deleted&&r.deleted||e.pos>=r.pos)return null;return new ti(e.pos,r.pos,this.mark)}merge(t){if(t instanceof ti&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new ti(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 ti(e.from,e.to,t.markFromJSON(e.mark))}}Xr.jsonID("addMark",ti);class ei extends Xr{constructor(t,e,r){super();this.from=t;this.to=e;this.mark=r}apply(t){let e=t.slice(this.from,this.to);let r=new Fe(Qr(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Yr.fromReplace(t,this.from,this.to,r)}invert(){return new ti(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);if(e.deleted&&r.deleted||e.pos>=r.pos)return null;return new ei(e.pos,r.pos,this.mark)}merge(t){if(t instanceof ei&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new ei(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 ei(e.from,e.to,t.markFromJSON(e.mark))}}Xr.jsonID("removeMark",ei);class ri extends Xr{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Yr.fail("No node at mark step's position");let r=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Yr.fromReplace(t,this.pos,this.pos+1,new Fe(ge.from(r),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 r=0;r<e.marks.length;r++)if(!e.marks[r].isInSet(t))return new ri(this.pos,e.marks[r]);return new ri(this.pos,this.mark)}}return new ii(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new ri(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 ri(e.pos,t.markFromJSON(e.mark))}}Xr.jsonID("addNodeMark",ri);class ii extends Xr{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Yr.fail("No node at mark step's position");let r=e.type.create(e.attrs,null,this.mark.removeFromSet(e.marks));return Yr.fromReplace(t,this.pos,this.pos+1,new Fe(ge.from(r),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(!e||!this.mark.isInSet(e.marks))return this;return new ri(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new ii(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 ii(e.pos,t.markFromJSON(e.mark))}}Xr.jsonID("removeNodeMark",ii);class ni extends Xr{constructor(t,e,r,i=false){super();this.from=t;this.to=e;this.slice=r;this.structure=i}apply(t){if(this.structure&&li(t,this.from,this.to))return Yr.fail("Structure replace would overwrite content");return Yr.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new Kr([this.from,this.to-this.from,this.slice.size])}invert(t){return new ni(this.from,this.from+this.slice.size,t.slice(this.from,this.to))}map(t){let e=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);if(e.deletedAcross&&r.deletedAcross)return null;return new ni(e.pos,Math.max(e.pos,r.pos),this.slice)}merge(t){if(!(t instanceof ni)||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?Fe.empty:new Fe(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new ni(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?Fe.empty:new Fe(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new ni(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 ni(e.from,e.to,Fe.fromJSON(t,e.slice),!!e.structure)}}Xr.jsonID("replace",ni);class si extends Xr{constructor(t,e,r,i,n,s,l=false){super();this.from=t;this.to=e;this.gapFrom=r;this.gapTo=i;this.slice=n;this.insert=s;this.structure=l}apply(t){if(this.structure&&(li(t,this.from,this.gapFrom)||li(t,this.gapTo,this.to)))return Yr.fail("Structure gap-replace would overwrite content");let e=t.slice(this.gapFrom,this.gapTo);if(e.openStart||e.openEnd)return Yr.fail("Gap is not a flat range");let r=this.slice.insertAt(this.insert,e.content);if(!r)return Yr.fail("Content does not fit in gap");return Yr.fromReplace(t,this.from,this.to,r)}getMap(){return new Kr([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 si(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),r=t.mapResult(this.to,-1);let i=t.map(this.gapFrom,-1),n=t.map(this.gapTo,1);if(e.deletedAcross&&r.deletedAcross||i<e.pos||n>r.pos)return null;return new si(e.pos,r.pos,i,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 si(e.from,e.to,e.gapFrom,e.gapTo,Fe.fromJSON(t,e.slice),e.insert,!!e.structure)}}Xr.jsonID("replaceAround",si);function li(t,e,r){let i=t.resolve(e),n=r-e,s=i.depth;while(n>0&&s>0&&i.indexAfter(s)==i.node(s).childCount){s--;n--}if(n>0){let t=i.node(s).maybeChild(i.indexAfter(s));while(n>0){if(!t||t.isLeaf)return true;t=t.firstChild;n--}}return false}function oi(t,e,r,i){let n=[],s=[];let l,o;t.doc.nodesBetween(e,r,((t,u,f)=>{if(!t.isInline)return;let h=t.marks;if(!i.isInSet(h)&&f.type.allowsMarkType(i.type)){let f=Math.max(u,e),a=Math.min(u+t.nodeSize,r);let c=i.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 ei(f,a,h[t]))}}if(o&&o.to==f)o.to=a;else s.push(o=new ti(f,a,i))}}));n.forEach((e=>t.step(e)));s.forEach((e=>t.step(e)))}function ui(t,e,r,i){let n=[],s=0;t.doc.nodesBetween(e,r,((t,l)=>{if(!t.isInline)return;s++;let o=null;if(i instanceof cr){let e=t.marks,r;while(r=i.isInSet(e)){(o||(o=[])).push(r);e=r.removeFromSet(e)}}else if(i){if(i.isInSet(t.marks))o=[i]}else{o=t.marks}if(o&&o.length){let i=Math.min(l+t.nodeSize,r);for(let t=0;t<o.length;t++){let r=o[t],u;for(let t=0;t<n.length;t++){let e=n[t];if(e.step==s-1&&r.eq(n[t].style))u=e}if(u){u.to=i;u.step=s}else{n.push({style:r,from:Math.max(l,e),to:i,step:s})}}}}));n.forEach((e=>t.step(new ei(e.from,e.to,e.style))))}function fi(t,e,r,i=r.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=i.matchType(o.type);if(!f){s.push(new ni(l,u,Fe.empty))}else{i=f;for(let e=0;e<o.marks.length;e++)if(!r.allowsMarkType(o.marks[e].type))t.step(new ei(l,u,o.marks[e]));if(o.isText&&!r.spec.code){let t,e=/\r?\n|\r/g,i;while(t=e.exec(o.text)){if(!i)i=new Fe(ge.from(r.schema.text(" ",r.allowedMarks(o.marks))),0,0);s.push(new ni(l+t.index,l+t.index+t[0].length,i))}}}l=u}if(!i.validEnd){let e=i.fillBefore(ge.empty,true);t.replace(l,l,new Fe(e,0,0))}for(let e=s.length-1;e>=0;e--)t.step(s[e])}function hi(t,e,r){return(e==0||t.canReplace(e,t.childCount))&&(r==t.childCount||t.canReplace(0,r))}function ai(t){let e=t.parent;let r=e.content.cutByIndex(t.startIndex,t.endIndex);for(let e=t.depth;;--e){let i=t.$from.node(e);let n=t.$from.index(e),s=t.$to.indexAfter(e);if(e<t.depth&&i.canReplace(n,s,r))return e;if(e==0||i.type.spec.isolating||!hi(i,n,s))break}return null}function ci(t,e,r){let{$from:i,$to:n,depth:s}=e;let l=i.before(s+1),o=n.after(s+1);let u=l,f=o;let h=ge.empty,a=0;for(let t=s,e=false;t>r;t--)if(e||i.index(t)>0){e=true;h=ge.from(i.node(t).copy(h));a++}else{u--}let c=ge.empty,d=0;for(let t=s,e=false;t>r;t--)if(e||n.after(t+1)<n.end(t)){e=true;c=ge.from(n.node(t).copy(c));d++}else{f++}t.step(new si(u,f,l,o,new Fe(h.append(c),a,d),h.size-a,true))}function di(t,e,r=null,i=t){let n=mi(t,e);let s=n&&wi(i,e);if(!s)return null;return n.map(pi).concat({type:e,attrs:r}).concat(s.map(pi))}function pi(t){return{type:t,attrs:null}}function mi(t,e){let{parent:r,startIndex:i,endIndex:n}=t;let s=r.contentMatchAt(i).findWrapping(e);if(!s)return null;let l=s.length?s[0]:e;return r.canReplaceWith(i,n,l)?s:null}function wi(t,e){let{parent:r,startIndex:i,endIndex:n}=t;let s=r.child(i);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=i;u&&t<n;t++)u=u.matchType(r.child(t).type);if(!u||!u.validEnd)return null;return l}function gi(t,e,r){let i=ge.empty;for(let t=r.length-1;t>=0;t--){if(i.size){let e=r[t].type.contentMatch.matchFragment(i);if(!e||!e.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}i=ge.from(r[t].type.create(r[t].attrs,i))}let n=e.start,s=e.end;t.step(new si(n,s,n,s,new Fe(i,0,0),r.length,true))}function bi(t,e,r,i,n){if(!i.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let s=t.steps.length;t.doc.nodesBetween(e,r,((e,r)=>{if(e.isTextblock&&!e.hasMarkup(i,n)&&ki(t.doc,t.mapping.slice(s).map(r),i)){t.clearIncompatible(t.mapping.slice(s).map(r,1),i);let l=t.mapping.slice(s);let o=l.map(r,1),u=l.map(r+e.nodeSize,1);t.step(new si(o,u,o+1,u-1,new Fe(ge.from(i.create(n,null,e.marks)),0,0),1,true));return false}}))}function ki(t,e,r){let i=t.resolve(e),n=i.index();return i.parent.canReplaceWith(n,n+1,r)}function Di(t,e,r,i,n){let s=t.doc.nodeAt(e);if(!s)throw new RangeError("No node at given position");if(!r)r=s.type;let l=r.create(i,null,n||s.marks);if(s.isLeaf)return t.replaceWith(e,e+s.nodeSize,l);if(!r.validContent(s.content))throw new RangeError("Invalid content for node type "+r.name);t.step(new si(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new Fe(ge.from(l),0,0),1,true))}function vi(t,e,r=1,i){let n=t.resolve(e),s=n.depth-r;let l=i&&i[i.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=r-2;t>s;t--,e--){let r=n.node(t),s=n.index(t);if(r.type.spec.isolating)return false;let l=r.content.cutByIndex(s,r.childCount);let o=i&&i[e+1];if(o)l=l.replaceChild(0,o.type.create(o.attrs));let u=i&&i[e]||r;if(!r.canReplace(s+1,r.childCount)||!u.type.validContent(l))return false}let o=n.indexAfter(s);let u=i&&i[0];return n.node(s).canReplaceWith(o,o,u?u.type:n.node(s+1).type)}function yi(t,e,r=1,i){let n=t.doc.resolve(e),s=ge.empty,l=ge.empty;for(let t=n.depth,e=n.depth-r,o=r-1;t>e;t--,o--){s=ge.from(n.node(t).copy(s));let e=i&&i[o];l=ge.from(e?e.type.create(e.attrs,l):n.node(t).copy(l))}t.step(new ni(e,e,new Fe(s.append(l),r,r),true))}function Fi(t,e){let r=t.resolve(e),i=r.index();return Ei(r.nodeBefore,r.nodeAfter)&&r.parent.canReplace(i,i+1)}function Ei(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function Mi(t,e,r=-1){let i=t.resolve(e);for(let t=i.depth;;t--){let n,s,l=i.index(t);if(t==i.depth){n=i.nodeBefore;s=i.nodeAfter}else if(r>0){n=i.node(t+1);l++;s=i.node(t).maybeChild(l)}else{n=i.node(t).maybeChild(l-1);s=i.node(t+1)}if(n&&!n.isTextblock&&Ei(n,s)&&i.node(t).canReplace(l,l+1))return e;if(t==0)break;e=r<0?i.before(t):i.after(t)}}function xi(t,e,r){let i=new ni(e-r,e+r,Fe.empty,true);t.step(i)}function Ai(t,e,r){let i=t.resolve(e);if(i.parent.canReplaceWith(i.index(),i.index(),r))return e;if(i.parentOffset==0)for(let t=i.depth-1;t>=0;t--){let e=i.index(t);if(i.node(t).canReplaceWith(e,e,r))return i.before(t+1);if(e>0)return null}if(i.parentOffset==i.parent.content.size)for(let t=i.depth-1;t>=0;t--){let e=i.indexAfter(t);if(i.node(t).canReplaceWith(e,e,r))return i.after(t+1);if(e<i.node(t).childCount)return null}return null}function Ci(t,e,r){let i=t.resolve(e);if(!r.content.size)return e;let n=r.content;for(let t=0;t<r.openStart;t++)n=n.firstChild.content;for(let t=1;t<=(r.openStart==0&&r.size?2:1);t++){for(let e=i.depth;e>=0;e--){let r=e==i.depth?0:i.pos<=(i.start(e+1)+i.end(e+1))/2?-1:1;let s=i.index(e)+(r>0?1:0);let l=i.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 r==0?i.pos:r<0?i.before(e+1):i.after(e+1)}}return null}function Si(t,e,r=e,i=Fe.empty){if(e==r&&!i.size)return null;let n=t.resolve(e),s=t.resolve(r);if(Oi(n,s,i))return new ni(e,r,i);return new $i(n,s,i).fit()}function Oi(t,e,r){return!r.openStart&&!r.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),r.content)}class $i{constructor(t,e,r){this.$from=t;this.$to=e;this.unplaced=r;this.frontier=[];this.placed=ge.empty;for(let e=0;e<=t.depth;e++){let r=t.node(e);this.frontier.push({type:r.type,match:r.contentMatchAt(t.indexAfter(e))})}for(let e=t.depth;e>0;e--)this.placed=ge.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 r=this.$from,i=this.close(t<0?this.$to:r.doc.resolve(t));if(!i)return null;let n=this.placed,s=r.depth,l=i.depth;while(s&&l&&n.childCount==1){n=n.firstChild.content;s--;l--}let o=new Fe(n,s,l);if(t>-1)return new si(r.pos,t,this.$to.pos,this.$to.end(),o,e);if(o.size||r.pos!=this.$to.pos)return new ni(r.pos,i.pos,o);return null}findFittable(){let t=this.unplaced.openStart;for(let e=this.unplaced.content,r=0,i=this.unplaced.openEnd;r<t;r++){let n=e.firstChild;if(e.childCount>1)i=0;if(n.type.spec.isolating&&i<=r){t=r;break}e=n.content}for(let e=1;e<=2;e++){for(let r=e==1?t:this.unplaced.openStart;r>=0;r--){let t,i=null;if(r){i=Ri(this.unplaced.content,r-1).firstChild;t=i.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(ge.from(n),false)):i&&s.compatibleContent(i.type)))return{sliceDepth:r,frontierDepth:t,parent:i,inject:u};else if(e==2&&n&&(o=l.findWrapping(n.type)))return{sliceDepth:r,frontierDepth:t,parent:i,wrap:o};if(i&&l.matchType(i.type))break}}}}openMore(){let{content:t,openStart:e,openEnd:r}=this.unplaced;let i=Ri(t,e);if(!i.childCount||i.firstChild.isLeaf)return false;this.unplaced=new Fe(t,e+1,Math.max(r,i.size+e>=t.size-r?e+1:0));return true}dropNode(){let{content:t,openStart:e,openEnd:r}=this.unplaced;let i=Ri(t,e);if(i.childCount<=1&&e>0){let n=t.size-e<=e+i.size;this.unplaced=new Fe(_i(t,e-1,1),e-1,n?e-1:r)}else{this.unplaced=new Fe(_i(t,e,1),e,r)}}placeNodes({sliceDepth:t,frontierDepth:e,parent:r,inject:i,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=r?r.content:s.content;let o=s.openStart-t;let u=0,f=[];let{match:h,type:a}=this.frontier[e];if(i){for(let t=0;t<i.childCount;t++)f.push(i.child(t));h=h.matchFragment(i)}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(ji(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=Bi(this.placed,e,ge.from(f));this.frontier[e].match=h;if(d&&c<0&&r&&r.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 Fe(_i(s.content,t,u),s.openStart,s.openEnd):t==0?Fe.empty:new Fe(_i(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||!Ni(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:r}=this.$to,i=this.$to.after(r);while(r>1&&i==this.$to.end(--r))++i;return i}findCloseLevel(t){t:for(let e=Math.min(this.depth,t.depth);e>=0;e--){let{match:r,type:i}=this.frontier[e];let n=e<t.depth&&t.end(e+1)==t.pos+(t.depth-(e+1));let s=Ni(t,e,i,r,n);if(!s)continue;for(let r=e-1;r>=0;r--){let{match:e,type:i}=this.frontier[r];let n=Ni(t,r,i,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=Bi(this.placed,e.depth,e.fit);t=e.move;for(let r=e.depth+1;r<=t.depth;r++){let e=t.node(r),i=e.type.contentMatch.fillBefore(e.content,true,t.index(r));this.openFrontierNode(e.type,e.attrs,i)}return t}openFrontierNode(t,e=null,r){let i=this.frontier[this.depth];i.match=i.match.matchType(t);this.placed=Bi(this.placed,this.depth,ge.from(t.create(e,r)));this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop();let e=t.match.fillBefore(ge.empty,true);if(e.childCount)this.placed=Bi(this.placed,this.frontier.length,e)}}function _i(t,e,r){if(e==0)return t.cutByIndex(r,t.childCount);return t.replaceChild(0,t.firstChild.copy(_i(t.firstChild.content,e-1,r)))}function Bi(t,e,r){if(e==0)return t.append(r);return t.replaceChild(t.childCount-1,t.lastChild.copy(Bi(t.lastChild.content,e-1,r)))}function Ri(t,e){for(let r=0;r<e;r++)t=t.firstChild.content;return t}function ji(t,e,r){if(e<=0)return t;let i=t.content;if(e>1)i=i.replaceChild(0,ji(i.firstChild,e-1,i.childCount==1?r-1:0));if(e>0){i=t.type.contentMatch.fillBefore(i).append(i);if(r<=0)i=i.append(t.type.contentMatch.matchFragment(i).fillBefore(ge.empty,true))}return t.copy(i)}function Ni(t,e,r,i,n){let s=t.node(e),l=n?t.indexAfter(e):t.index(e);if(l==s.childCount&&!r.compatibleContent(s.type))return null;let o=i.fillBefore(s.content,true,l);return o&&!qi(r,s.content,l)?o:null}function qi(t,e,r){for(let i=r;i<e.childCount;i++)if(!t.allowsMarks(e.child(i).marks))return true;return false}function zi(t){return t.spec.defining||t.spec.definingForContent}function Ti(t,e,r,i){if(!i.size)return t.deleteRange(e,r);let n=t.doc.resolve(e),s=t.doc.resolve(r);if(Oi(n,s,i))return t.step(new ni(e,r,i));let l=Li(n,t.doc.resolve(r));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 r=n.node(t).type.spec;if(r.defining||r.definingAsContext||r.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=i.openStart;for(let t=i.content,e=0;;e++){let r=t.firstChild;f.push(r);if(e==i.openStart)break;t=r.content}for(let t=h-1;t>=0;t--){let e=f[t],r=zi(e.type);if(r&&!e.sameMarkup(n.node(Math.abs(o)-1)))h=t;else if(r||!e.type.isTextblock)break}for(let e=i.openStart;e>=0;e--){let o=(e+h+1)%(i.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):r,new Fe(Ii(i.content,0,i.openStart,o),o,i.openEnd))}}let a=t.steps.length;for(let o=l.length-1;o>=0;o--){t.replace(e,r,i);if(t.steps.length>a)break;let u=l[o];if(u<0)continue;e=n.before(u);r=s.after(u)}}function Ii(t,e,r,i,n){if(e<r){let n=t.firstChild;t=t.replaceChild(0,n.copy(Ii(n.content,e+1,r,i,n)))}if(e>i){let e=n.contentMatchAt(0);let r=e.fillBefore(t).append(t);t=r.append(e.matchFragment(r).fillBefore(ge.empty,true))}return t}function Pi(t,e,r,i){if(!i.isInline&&e==r&&t.doc.resolve(e).parent.content.size){let n=Ai(t.doc,e,i.type);if(n!=null)e=r=n}t.replaceRange(e,r,new Fe(ge.from(i),0,0))}function Ji(t,e,r){let i=t.doc.resolve(e),n=t.doc.resolve(r);let s=Li(i,n);for(let e=0;e<s.length;e++){let r=s[e],l=e==s.length-1;if(l&&r==0||i.node(r).type.contentMatch.validEnd)return t.delete(i.start(r),n.end(r));if(r>0&&(l||i.node(r-1).canReplace(i.index(r-1),n.indexAfter(r-1))))return t.delete(i.before(r),n.after(r))}for(let s=1;s<=i.depth&&s<=n.depth;s++){if(e-i.start(s)==i.depth-s&&r>i.end(s)&&n.end(s)-r!=n.depth-s)return t.delete(i.before(s),r)}t.delete(e,r)}function Li(t,e){let r=[],i=Math.min(t.depth,e.depth);for(let n=i;n>=0;n--){let i=t.start(n);if(i<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(i==e.start(n)||n==t.depth&&n==e.depth&&t.parent.inlineContent&&e.parent.inlineContent&&n&&e.start(n-1)==i-1)r.push(n)}return r}class Wi extends Xr{constructor(t,e,r){super();this.pos=t;this.attr=e;this.value=r}apply(t){let e=t.nodeAt(this.pos);if(!e)return Yr.fail("No node at attribute step's position");let r=Object.create(null);for(let t in e.attrs)r[t]=e.attrs[t];r[this.attr]=this.value;let i=e.type.create(r,null,e.marks);return Yr.fromReplace(t,this.pos,this.pos+1,new Fe(ge.from(i),0,e.isLeaf?0:1))}getMap(){return Kr.empty}invert(t){return new Wi(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 Wi(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 Wi(e.pos,e.attr,e.value)}}Xr.jsonID("attr",Wi);class Ui extends Xr{constructor(t,e){super();this.attr=t;this.value=e}apply(t){let e=Object.create(null);for(let r in t.attrs)e[r]=t.attrs[r];e[this.attr]=this.value;let r=t.type.create(e,t.content,t.marks);return Yr.ok(r)}getMap(){return Kr.empty}invert(t){return new Ui(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 Ui(e.attr,e.value)}}Xr.jsonID("docAttr",Ui);let Hi=class extends Error{};Hi=function t(e){let r=Error.call(this,e);r.__proto__=t.prototype;return r};Hi.prototype=Object.create(Error.prototype);Hi.prototype.constructor=Hi;Hi.prototype.name="TransformError";class Zi{constructor(t){this.doc=t;this.steps=[];this.docs=[];this.mapping=new Vr}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new Hi(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,r=Fe.empty){let i=Si(this.doc,t,e,r);if(i)this.step(i);return this}replaceWith(t,e,r){return this.replace(t,e,new Fe(ge.from(r),0,0))}delete(t,e){return this.replace(t,e,Fe.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,r){Ti(this,t,e,r);return this}replaceRangeWith(t,e,r){Pi(this,t,e,r);return this}deleteRange(t,e){Ji(this,t,e);return this}lift(t,e){ci(this,t,e);return this}join(t,e=1){xi(this,t,e);return this}wrap(t,e){gi(this,t,e);return this}setBlockType(t,e=t,r,i=null){bi(this,t,e,r,i);return this}setNodeMarkup(t,e,r=null,i){Di(this,t,e,r,i);return this}setNodeAttribute(t,e,r){this.step(new Wi(t,e,r));return this}setDocAttribute(t,e){this.step(new Ui(t,e));return this}addNodeMark(t,e){this.step(new ri(t,e));return this}removeNodeMark(t,e){if(!(e instanceof ve)){let r=this.doc.nodeAt(t);if(!r)throw new RangeError("No node at position "+t);e=e.isInSet(r.marks);if(!e)return this}this.step(new ii(t,e));return this}split(t,e=1,r){yi(this,t,e,r);return this}addMark(t,e,r){oi(this,t,e,r);return this}removeMark(t,e,r){ui(this,t,e,r);return this}clearIncompatible(t,e,r){fi(this,t,e,r);return this}}const Ki=Object.create(null);class Vi{constructor(t,e,r){this.$anchor=t;this.$head=e;this.ranges=r||[new Gi(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=Fe.empty){let r=e.content.lastChild,i=null;for(let t=0;t<e.openEnd;t++){i=r;r=r.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?Fe.empty:e);if(l==0)on(t,n,(r?r.isInline:i&&i.isTextblock)?-1:1)}}replaceWith(t,e){let r=t.steps.length,i=this.ranges;for(let n=0;n<i.length;n++){let{$from:s,$to:l}=i[n],o=t.mapping.slice(r);let u=o.map(s.pos),f=o.map(l.pos);if(n){t.deleteRange(u,f)}else{t.replaceRangeWith(u,f,e);on(t,r,e.isInline?-1:1)}}}static findFrom(t,e,r=false){let i=t.parent.inlineContent?new Qi(t):ln(t.node(0),t.parent,t.pos,t.index(),e,r);if(i)return i;for(let i=t.depth-1;i>=0;i--){let n=e<0?ln(t.node(0),t.node(i),t.before(i+1),t.index(i),e,r):ln(t.node(0),t.node(i),t.after(i+1),t.index(i)+1,e,r);if(n)return n}return null}static near(t,e=1){return this.findFrom(t,e)||this.findFrom(t,-e)||new nn(t.node(0))}static atStart(t){return ln(t,t,0,0,1)||new nn(t)}static atEnd(t){return ln(t,t,t.content.size,t.childCount,-1)||new nn(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let r=Ki[e.type];if(!r)throw new RangeError(`No selection type ${e.type} defined`);return r.fromJSON(t,e)}static jsonID(t,e){if(t in Ki)throw new RangeError("Duplicate use of selection JSON ID "+t);Ki[t]=e;e.prototype.jsonID=t;return e}getBookmark(){return Qi.between(this.$anchor,this.$head).getBookmark()}}Vi.prototype.visible=true;class Gi{constructor(t,e){this.$from=t;this.$to=e}}let Xi=false;function Yi(t){if(!Xi&&!t.parent.inlineContent){Xi=true;console["warn"]("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")")}}class Qi extends Vi{constructor(t,e=t){Yi(t);Yi(e);super(t,e)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,e){let r=t.resolve(e.map(this.head));if(!r.parent.inlineContent)return Vi.near(r);let i=t.resolve(e.map(this.anchor));return new Qi(i.parent.inlineContent?i:r,r)}replace(t,e=Fe.empty){super.replace(t,e);if(e==Fe.empty){let e=this.$from.marksAcross(this.$to);if(e)t.ensureMarks(e)}}eq(t){return t instanceof Qi&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new tn(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 Qi(t.resolve(e.anchor),t.resolve(e.head))}static create(t,e,r=e){let i=t.resolve(e);return new this(i,r==e?i:t.resolve(r))}static between(t,e,r){let i=t.pos-e.pos;if(!r||i)r=i>=0?1:-1;if(!e.parent.inlineContent){let t=Vi.findFrom(e,r,true)||Vi.findFrom(e,-r,true);if(t)e=t.$head;else return Vi.near(e,r)}if(!t.parent.inlineContent){if(i==0){t=e}else{t=(Vi.findFrom(t,-r,true)||Vi.findFrom(t,r,true)).$anchor;if(t.pos<e.pos!=i<0)t=e}}return new Qi(t,e)}}Vi.jsonID("text",Qi);class tn{constructor(t,e){this.anchor=t;this.head=e}map(t){return new tn(t.map(this.anchor),t.map(this.head))}resolve(t){return Qi.between(t.resolve(this.anchor),t.resolve(this.head))}}class en extends Vi{constructor(t){let e=t.nodeAfter;let r=t.node(0).resolve(t.pos+e.nodeSize);super(t,r);this.node=e}map(t,e){let{deleted:r,pos:i}=e.mapResult(this.anchor);let n=t.resolve(i);if(r)return Vi.near(n);return new en(n)}content(){return new Fe(ge.from(this.node),0,0)}eq(t){return t instanceof en&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new rn(this.anchor)}static fromJSON(t,e){if(typeof e.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new en(t.resolve(e.anchor))}static create(t,e){return new en(t.resolve(e))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==false}}en.prototype.visible=false;Vi.jsonID("node",en);class rn{constructor(t){this.anchor=t}map(t){let{deleted:e,pos:r}=t.mapResult(this.anchor);return e?new tn(r,r):new rn(r)}resolve(t){let e=t.resolve(this.anchor),r=e.nodeAfter;if(r&&en.isSelectable(r))return new en(e);return Vi.near(e)}}class nn extends Vi{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,e=Fe.empty){if(e==Fe.empty){t.delete(0,t.doc.content.size);let e=Vi.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 nn(t)}map(t){return new nn(t)}eq(t){return t instanceof nn}getBookmark(){return sn}}Vi.jsonID("all",nn);const sn={map(){return this},resolve(t){return new nn(t)}};function ln(t,e,r,i,n,s=false){if(e.inlineContent)return Qi.create(t,r);for(let l=i-(n>0?0:1);n>0?l<e.childCount:l>=0;l+=n){let i=e.child(l);if(!i.isAtom){let e=ln(t,i,r+n,n<0?i.childCount:0,n,s);if(e)return e}else if(!s&&en.isSelectable(i)){return en.create(t,r-(n<0?i.nodeSize:0))}r+=i.nodeSize*n}return null}function on(t,e,r){let i=t.steps.length-1;if(i<e)return;let n=t.steps[i];if(!(n instanceof ni||n instanceof si))return;let s=t.mapping.maps[i],l;s.forEach(((t,e,r,i)=>{if(l==null)l=i}));t.setSelection(Vi.near(t.doc.resolve(l),r))}const un=1,fn=2,hn=4;class an extends Zi{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|un)&~fn;this.storedMarks=null;return this}get selectionSet(){return(this.updated&un)>0}setStoredMarks(t){this.storedMarks=t;this.updated|=fn;return this}ensureMarks(t){if(!ve.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&fn)>0}addStep(t,e){super.addStep(t,e);this.updated=this.updated&~fn;this.storedMarks=null}setTime(t){this.time=t;return this}replaceSelection(t){this.selection.replace(this,t);return this}replaceSelectionWith(t,e=true){let r=this.selection;if(e)t=t.mark(this.storedMarks||(r.empty?r.$from.marks():r.$from.marksAcross(r.$to)||ve.none));r.replaceWith(this,t);return this}deleteSelection(){this.selection.replace(this);return this}insertText(t,e,r){let i=this.doc.type.schema;if(e==null){if(!t)return this.deleteSelection();return this.replaceSelectionWith(i.text(t),true)}else{if(r==null)r=e;r=r==null?e:r;if(!t)return this.deleteRange(e,r);let n=this.storedMarks;if(!n){let t=this.doc.resolve(e);n=r==e?t.marks():t.marksAcross(this.doc.resolve(r))}this.replaceRangeWith(e,r,i.text(t,n));if(!this.selection.empty)this.setSelection(Vi.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|=hn;return this}get scrolledIntoView(){return(this.updated&hn)>0}}function cn(t,e){return!e||!t?t:t.bind(e)}class dn{constructor(t,e,r){this.name=t;this.init=cn(e.init,r);this.apply=cn(e.apply,r)}}const pn=[new dn("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new dn("selection",{init(t,e){return t.selection||Vi.atStart(e.doc)},apply(t){return t.selection}}),new dn("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,r,i){return i.selection.$cursor?t.storedMarks:null}}),new dn("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class mn{constructor(t,e){this.schema=t;this.plugins=[];this.pluginsByKey=Object.create(null);this.fields=pn.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 dn(t.key,t.spec.state,t))}))}}class wn{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 r=0;r<this.config.plugins.length;r++)if(r!=e){let e=this.config.plugins[r];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],r=this.applyInner(t),i=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=i?i[s].n:0,u=i?i[s].state:this;let f=o<e.length&&l.spec.appendTransaction.call(l,o?e.slice(o):e,u,r);if(f&&r.filterTransaction(f,s)){f.setMeta("appendedTransaction",t);if(!i){i=[];for(let t=0;t<this.config.plugins.length;t++)i.push(t<s?{state:r,n:e.length}:{state:this,n:0})}e.push(f);r=r.applyInner(f);n=true}if(i)i[s]={state:r,n:e.length}}}if(!n)return{state:r,transactions:e}}}applyInner(t){if(!t.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let e=new wn(this.config),r=this.config.fields;for(let i=0;i<r.length;i++){let n=r[i];e[n.name]=n.apply(t,this[n.name],this,e)}return e}get tr(){return new an(this)}static create(t){let e=new mn(t.doc?t.doc.type.schema:t.schema,t.plugins);let r=new wn(e);for(let i=0;i<e.fields.length;i++)r[e.fields[i].name]=e.fields[i].init(t,r);return r}reconfigure(t){let e=new mn(this.schema,t.plugins);let r=e.fields,i=new wn(e);for(let e=0;e<r.length;e++){let n=r[e].name;i[n]=this.hasOwnProperty(n)?this[n]:r[e].init(t,i)}return i}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 r in t){if(r=="doc"||r=="selection")throw new RangeError("The JSON fields `doc` and `selection` are reserved");let i=t[r],n=i.spec.state;if(n&&n.toJSON)e[r]=n.toJSON.call(i,this[i.key])}return e}static fromJSON(t,e,r){if(!e)throw new RangeError("Invalid input for EditorState.fromJSON");if(!t.schema)throw new RangeError("Required config field 'schema' missing");let i=new mn(t.schema,t.plugins);let n=new wn(i);i.fields.forEach((i=>{if(i.name=="doc"){n.doc=Je.fromJSON(t.schema,e.doc)}else if(i.name=="selection"){n.selection=Vi.fromJSON(n.doc,e.selection)}else if(i.name=="storedMarks"){if(e.storedMarks)n.storedMarks=e.storedMarks.map(t.schema.markFromJSON)}else{if(r)for(let s in r){let l=r[s],o=l.spec.state;if(l.key==i.name&&o&&o.fromJSON&&Object.prototype.hasOwnProperty.call(e,s)){n[i.name]=o.fromJSON.call(l,t,e[s],n);return}}n[i.name]=i.init(t,n)}}));return n}}function gn(t,e,r){for(let i in t){let n=t[i];if(n instanceof Function)n=n.bind(e);else if(i=="handleDOMEvents")n=gn(n,e,{});r[i]=n}return r}class bn{constructor(t){this.spec=t;this.props={};if(t.props)gn(t.props,this,this.props);this.key=t.key?t.key.key:Dn("plugin")}getState(t){return t[this.key]}}const kn=Object.create(null);function Dn(t){if(t in kn)return t+"$"+ ++kn[t];kn[t]=0;return t+"$"}class vn{constructor(t="key"){this.key=Dn(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const yn=function(t){for(var e=0;;e++){t=t.previousSibling;if(!t)return e}};const Fn=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let En=null;const Mn=function(t,e,r){let i=En||(En=document.createRange());i.setEnd(t,r==null?t.nodeValue.length:r);i.setStart(t,e||0);return i};const xn=function(t,e,r,i){return r&&(Cn(t,e,r,i,-1)||Cn(t,e,r,i,1))};const An=/^(img|br|input|textarea|hr)$/i;function Cn(t,e,r,i,n){for(;;){if(t==r&&e==i)return true;if(e==(n<0?0:Sn(t))){let r=t.parentNode;if(!r||r.nodeType!=1||$n(t)||An.test(t.nodeName)||t.contentEditable=="false")return false;e=yn(t)+(n<0?0:1);t=r}else if(t.nodeType==1){t=t.childNodes[e+(n<0?-1:0)];if(t.contentEditable=="false")return false;e=n<0?Sn(t):0}else{return false}}}function Sn(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function On(t,e,r){for(let i=e==0,n=e==Sn(t);i||n;){if(t==r)return true;let e=yn(t);t=t.parentNode;if(!t)return false;i=i&&e==0;n=n&&e==Sn(t)}}function $n(t){let e;for(let r=t;r;r=r.parentNode)if(e=r.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 Bn(t,e){let r=document.createEvent("Event");r.initEvent("keydown",true,true);r.keyCode=t;r.key=r.code=e;return r}function Rn(t){let e=t.activeElement;while(e&&e.shadowRoot)e=e.shadowRoot.activeElement;return e}function jn(t,e,r){if(t.caretPositionFromPoint){try{let i=t.caretPositionFromPoint(e,r);if(i)return{node:i.offsetNode,offset:i.offset}}catch(t){}}if(t.caretRangeFromPoint){let i=t.caretRangeFromPoint(e,r);if(i)return{node:i.startContainer,offset:i.startOffset}}}const Nn=typeof navigator!="undefined"?navigator:null;const qn=typeof document!="undefined"?document:null;const zn=Nn&&Nn.userAgent||"";const Tn=/Edge\/(\d+)/.exec(zn);const In=/MSIE \d/.exec(zn);const Pn=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(zn);const Jn=!!(In||Pn||Tn);const Ln=In?document.documentMode:Pn?+Pn[1]:Tn?+Tn[1]:0;const Wn=!Jn&&/gecko\/(\d+)/i.test(zn);Wn&&+(/Firefox\/(\d+)/.exec(zn)||[0,0])[1];const Un=!Jn&&/Chrome\/(\d+)/.exec(zn);const Hn=!!Un;const Zn=Un?+Un[1]:0;const Kn=!Jn&&!!Nn&&/Apple Computer/.test(Nn.vendor);const Vn=Kn&&(/Mobile\/\w+/.test(zn)||!!Nn&&Nn.maxTouchPoints>2);const Gn=Vn||(Nn?/Mac/.test(Nn.platform):false);const Xn=Nn?/Win/.test(Nn.platform):false;const Yn=/Android \d/.test(zn);const Qn=!!qn&&"webkitFontSmoothing"in qn.documentElement.style;const ts=Qn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function es(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function rs(t,e){return typeof t=="number"?t:t[e]}function is(t){let e=t.getBoundingClientRect();let r=e.width/t.offsetWidth||1;let i=e.height/t.offsetHeight||1;return{left:e.left,right:e.left+t.clientWidth*r,top:e.top,bottom:e.top+t.clientHeight*i}}function ns(t,e,r){let i=t.someProp("scrollThreshold")||0,n=t.someProp("scrollMargin")||5;let s=t.dom.ownerDocument;for(let l=r||t.dom;;l=Fn(l)){if(!l)break;if(l.nodeType!=1)continue;let t=l;let r=t==s.body;let o=r?es(s):is(t);let u=0,f=0;if(e.top<o.top+rs(i,"top"))f=-(o.top-e.top+rs(n,"top"));else if(e.bottom>o.bottom-rs(i,"bottom"))f=e.bottom-e.top>o.bottom-o.top?e.top+rs(n,"top")-o.top:e.bottom-o.bottom+rs(n,"bottom");if(e.left<o.left+rs(i,"left"))u=-(o.left-e.left+rs(n,"left"));else if(e.right>o.right-rs(i,"right"))u=e.right-o.right+rs(n,"right");if(u||f){if(r){s.defaultView.scrollBy(u,f)}else{let r=t.scrollLeft,i=t.scrollTop;if(f)t.scrollTop+=f;if(u)t.scrollLeft+=u;let n=t.scrollLeft-r,s=t.scrollTop-i;e={left:e.left-n,top:e.top-s,right:e.right-n,bottom:e.bottom-s}}}if(r||/^(fixed|sticky)$/.test(getComputedStyle(l).position))break}}function ss(t){let e=t.dom.getBoundingClientRect(),r=Math.max(0,e.top);let i,n;for(let s=(e.left+e.right)/2,l=r+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>=r-20){i=e;n=o.top;break}}return{refDOM:i,refTop:n,stack:ls(t.dom)}}function ls(t){let e=[],r=t.ownerDocument;for(let i=t;i;i=Fn(i)){e.push({dom:i,top:i.scrollTop,left:i.scrollLeft});if(t==r)break}return e}function us({refDOM:t,refTop:e,stack:r}){let i=t?t.getBoundingClientRect().top:0;fs(r,i==0?0:i-e)}function fs(t,e){for(let r=0;r<t.length;r++){let{dom:i,top:n,left:s}=t[r];if(i.scrollTop!=n+e)i.scrollTop=n+e;if(i.scrollLeft!=s)i.scrollLeft=s}}let hs=null;function as(t){if(t.setActive)return t.setActive();if(hs)return t.focus(hs);let e=ls(t);t.focus(hs==null?{get preventScroll(){hs={preventScroll:true};return true}}:undefined);if(!hs){hs=false;fs(e,0)}}function cs(t,e){let r,i=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=Mn(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<i){r=h;i=t;n=t&&r.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(!r&&(e.left>=d.right&&e.top>=d.top||e.left>=d.left&&e.top>=d.bottom))s=a+1}}if(!r&&u){r=u;n=f;i=0}if(r&&r.nodeType==3)return ds(r,n);if(!r||i&&r.nodeType==1)return{node:t,offset:s};return cs(r,n)}function ds(t,e){let r=t.nodeValue.length;let i=document.createRange();for(let n=0;n<r;n++){i.setEnd(t,n+1);i.setStart(t,n);let r=vs(i,1);if(r.top==r.bottom)continue;if(ps(e,r))return{node:t,offset:n+(e.left>=(r.left+r.right)/2?1:0)}}return{node:t,offset:0}}function ps(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function ms(t,e){let r=t.parentNode;if(r&&/^li$/i.test(r.nodeName)&&e.left<t.getBoundingClientRect().left)return r;return t}function ws(t,e,r){let{node:i,offset:n}=cs(e,r),s=-1;if(i.nodeType==1&&!i.firstChild){let t=i.getBoundingClientRect();s=t.left!=t.right&&r.left>(t.left+t.right)/2?1:-1}return t.docView.posFromDOM(i,n,s)}function gs(t,e,r,i){let n=-1;for(let r=e,s=false;;){if(r==t.dom)break;let e=t.docView.nearestDesc(r,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>i.left||t.top>i.top)n=e.posBefore;else if(t.right<i.left||t.bottom<i.top)n=e.posAfter}if(!e.contentDOM&&n<0&&!e.node.isText){let r=e.node.isBlock?i.top<(t.top+t.bottom)/2:i.left<(t.left+t.right)/2;return r?e.posBefore:e.posAfter}}r=e.dom.parentNode}return n>-1?n:t.docView.posFromDOM(e,r,-1)}function bs(t,e,r){let i=t.childNodes.length;if(i&&r.top<r.bottom){for(let n=Math.max(0,Math.min(i-1,Math.floor(i*(e.top-r.top)/(r.bottom-r.top))-2)),s=n;;){let r=t.childNodes[s];if(r.nodeType==1){let t=r.getClientRects();for(let i=0;i<t.length;i++){let n=t[i];if(ps(e,n))return bs(r,e,n)}}if((s=(s+1)%i)==n)break}}return t}function ks(t,e){let r=t.dom.ownerDocument,i,n=0;let s=jn(r,e.left,e.top);if(s)({node:i,offset:n}=s);let l=(t.root.elementFromPoint?t.root:r).elementFromPoint(e.left,e.top);let o;if(!l||!t.dom.contains(l.nodeType!=1?l.parentNode:l)){let r=t.dom.getBoundingClientRect();if(!ps(e,r))return null;l=bs(t.dom,e,r);if(!l)return null}if(Kn){for(let t=l;i&&t;t=Fn(t))if(t.draggable)i=undefined}l=ms(l,e);if(i){if(Wn&&i.nodeType==1){n=Math.min(n,i.childNodes.length);if(n<i.childNodes.length){let t=i.childNodes[n],r;if(t.nodeName=="IMG"&&(r=t.getBoundingClientRect()).right<=e.left&&r.bottom>e.top)n++}}let r;if(Qn&&n&&i.nodeType==1&&(r=i.childNodes[n-1]).nodeType==1&&r.contentEditable=="false"&&r.getBoundingClientRect().top>=e.top)n--;if(i==t.dom&&n==i.childNodes.length-1&&i.lastChild.nodeType==1&&e.top>i.lastChild.getBoundingClientRect().bottom)o=t.state.doc.content.size;else if(n==0||i.nodeType!=1||i.childNodes[n-1].nodeName!="BR")o=gs(t,i,n,e)}if(o==null)o=ws(t,l,e);let u=t.docView.nearestDesc(l,true);return{pos:o,inside:u?u.posAtStart-u.border:-1}}function Ds(t){return t.top<t.bottom||t.left<t.right}function vs(t,e){let r=t.getClientRects();if(r.length){let t=r[e<0?0:r.length-1];if(Ds(t))return t}return Array.prototype.find.call(r,Ds)||t.getBoundingClientRect()}const ys=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function Fs(t,e,r){let{node:i,offset:n,atom:s}=t.docView.domFromPos(e,r<0?-1:1);let l=Qn||Wn;if(i.nodeType==3){if(l&&(ys.test(i.nodeValue)||(r<0?!n:n==i.nodeValue.length))){let t=vs(Mn(i,n,n),r);if(Wn&&n&&/\s/.test(i.nodeValue[n-1])&&n<i.nodeValue.length){let e=vs(Mn(i,n-1,n-1),-1);if(e.top==t.top){let r=vs(Mn(i,n,n+1),-1);if(r.top!=t.top)return Es(r,r.left<e.left)}}return t}else{let t=n,e=n,s=r<0?1:-1;if(r<0&&!n){e++;s=-1}else if(r>=0&&n==i.nodeValue.length){t--;s=1}else if(r<0){t--}else{e++}return Es(vs(Mn(i,t,e),s),s<0)}}let o=t.state.doc.resolve(e-(s||0));if(!o.parent.inlineContent){if(s==null&&n&&(r<0||n==Sn(i))){let t=i.childNodes[n-1];if(t.nodeType==1)return Ms(t.getBoundingClientRect(),false)}if(s==null&&n<Sn(i)){let t=i.childNodes[n];if(t.nodeType==1)return Ms(t.getBoundingClientRect(),true)}return Ms(i.getBoundingClientRect(),r>=0)}if(s==null&&n&&(r<0||n==Sn(i))){let t=i.childNodes[n-1];let e=t.nodeType==3?Mn(t,Sn(t)-(l?0:1)):t.nodeType==1&&(t.nodeName!="BR"||!t.nextSibling)?t:null;if(e)return Es(vs(e,1),false)}if(s==null&&n<Sn(i)){let t=i.childNodes[n];while(t.pmViewDesc&&t.pmViewDesc.ignoreForCoords)t=t.nextSibling;let e=!t?null:t.nodeType==3?Mn(t,0,l?0:1):t.nodeType==1?t:null;if(e)return Es(vs(e,-1),true)}return Es(vs(i.nodeType==3?Mn(i):i,-r),r>=0)}function Es(t,e){if(t.width==0)return t;let r=e?t.left:t.right;return{top:t.top,bottom:t.bottom,left:r,right:r}}function Ms(t,e){if(t.height==0)return t;let r=e?t.top:t.bottom;return{top:r,bottom:r,left:t.left,right:t.right}}function xs(t,e,r){let i=t.state,n=t.root.activeElement;if(i!=e)t.updateState(e);if(n!=t.dom)t.focus();try{return r()}finally{if(i!=e)t.updateState(i);if(n!=t.dom&&n)n.focus()}}function As(t,e,r){let i=e.selection;let n=r=="up"?i.$from:i.$to;return xs(t,e,(()=>{let{node:e}=t.docView.domFromPos(n.pos,r=="up"?-1:1);for(;;){let r=t.docView.nearestDesc(e,true);if(!r)break;if(r.node.isBlock){e=r.contentDOM||r.dom;break}e=r.dom.parentNode}let i=Fs(t,n.pos,1);for(let t=e.firstChild;t;t=t.nextSibling){let e;if(t.nodeType==1)e=t.getClientRects();else if(t.nodeType==3)e=Mn(t,0,t.nodeValue.length).getClientRects();else continue;for(let t=0;t<e.length;t++){let n=e[t];if(n.bottom>n.top+1&&(r=="up"?i.top-n.top>(n.bottom-i.top)*2:n.bottom-i.bottom>(i.bottom-n.top)*2))return false}}return true}))}const Cs=/[\u0590-\u08ac]/;function Ss(t,e,r){let{$head:i}=e.selection;if(!i.parent.isTextblock)return false;let n=i.parentOffset,s=!n,l=n==i.parent.content.size;let o=t.domSelection();if(!Cs.test(i.parent.textContent)||!o.modify)return r=="left"||r=="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",r,"character");let f=i.depth?t.docView.domAfterPos(i.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 Os=null;let $s=null;let _s=false;function Bs(t,e,r){if(Os==e&&$s==r)return _s;Os=e;$s=r;return _s=r=="up"||r=="down"?As(t,e,r):Ss(t,e,r)}const Rs=0,js=1,Ns=2,qs=3;class zs{constructor(t,e,r,i){this.parent=t;this.children=e;this.dom=r;this.contentDOM=i;this.dirty=Rs;r.pmViewDesc=this}matchesWidget(t){return false}matchesMark(t){return false}matchesNode(t,e,r){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,r=this.posAtStart;;e++){let i=this.children[e];if(i==t)return r;r+=i.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,r){if(this.contentDOM&&this.contentDOM.contains(t.nodeType==1?t:t.parentNode)){if(r<0){let r,i;if(t==this.contentDOM){r=t.childNodes[e-1]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;r=t.previousSibling}while(r&&!((i=r.pmViewDesc)&&i.parent==this))r=r.previousSibling;return r?this.posBeforeChild(i)+i.size:this.posAtStart}else{let r,i;if(t==this.contentDOM){r=t.childNodes[e]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;r=t.nextSibling}while(r&&!((i=r.pmViewDesc)&&i.parent==this))r=r.nextSibling;return r?this.posBeforeChild(i):this.posAtEnd}}let i;if(t==this.dom&&this.contentDOM){i=e>yn(this.contentDOM)}else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM)){i=t.compareDocumentPosition(this.contentDOM)&2}else if(this.dom.firstChild){if(e==0)for(let e=t;;e=e.parentNode){if(e==this.dom){i=false;break}if(e.previousSibling)break}if(i==null&&e==t.childNodes.length)for(let e=t;;e=e.parentNode){if(e==this.dom){i=true;break}if(e.nextSibling)break}}return(i==null?r>0:i)?this.posAtEnd:this.posAtStart}nearestDesc(t,e=false){for(let r=true,i=t;i;i=i.parentNode){let n=this.getDesc(i),s;if(n&&(!e||n.node)){if(r&&(s=n.nodeDOM)&&!(s.nodeType==1?s.contains(t.nodeType==1?t:t.parentNode):s==t))r=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,r){for(let i=t;i;i=i.parentNode){let n=this.getDesc(i);if(n)return n.localPosFromDOM(t,e,r)}return-1}descAt(t){for(let e=0,r=0;e<this.children.length;e++){let i=this.children[e],n=r+i.size;if(r==t&&n!=r){while(!i.border&&i.children.length)i=i.children[0];return i}if(t<n)return i.descAt(t-r-i.border);r=n}}domFromPos(t,e){if(!this.contentDOM)return{node:this.dom,offset:0,atom:t+1};let r=0,i=0;for(let e=0;r<this.children.length;r++){let n=this.children[r],s=e+n.size;if(s>t||n instanceof Us){i=t-e;break}e=s}if(i)return this.children[r].domFromPos(i-this.children[r].border,e);for(let t;r&&!(t=this.children[r-1]).size&&t instanceof Ts&&t.side>=0;r--){}if(e<=0){let t,i=true;for(;;r--,i=false){t=r?this.children[r-1]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&e&&i&&!t.border&&!t.domAtom)return t.domFromPos(t.size,e);return{node:this.contentDOM,offset:t?yn(t.dom)+1:0}}else{let t,i=true;for(;;r++,i=false){t=r<this.children.length?this.children[r]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&i&&!t.border&&!t.domAtom)return t.domFromPos(0,e);return{node:this.contentDOM,offset:t?yn(t.dom):this.contentDOM.childNodes.length}}}parseRange(t,e,r=0){if(this.children.length==0)return{node:this.contentDOM,from:t,to:e,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let i=-1,n=-1;for(let s=r,l=0;;l++){let r=this.children[l],o=s+r.size;if(i==-1&&t<=o){let n=s+r.border;if(t>=n&&e<=o-r.border&&r.node&&r.contentDOM&&this.contentDOM.contains(r.contentDOM))return r.parseRange(t,e,n);t=s;for(let e=l;e>0;e--){let r=this.children[e-1];if(r.size&&r.dom.parentNode==this.contentDOM&&!r.emptyChildAt(1)){i=yn(r.dom)+1;break}t-=r.size}if(i==-1)i=0}if(i>-1&&(o>e||l==this.children.length-1)){e=o;for(let t=l+1;t<this.children.length;t++){let r=this.children[t];if(r.size&&r.dom.parentNode==this.contentDOM&&!r.emptyChildAt(-1)){n=yn(r.dom);break}e+=r.size}if(n==-1)n=this.contentDOM.childNodes.length;break}s=o}return{node:this.contentDOM,from:t,to:e,fromOffset:i,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:r}=this.domFromPos(t,0);if(e.nodeType!=1||r==e.childNodes.length)throw new RangeError("No node after pos "+t);return e.childNodes[r]}setSelection(t,e,r,i=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,r,i);o=f}let l=this.domFromPos(t,t?-1:1);let o=e==t?l:this.domFromPos(e,e?-1:1);let u=r.getSelection();let f=false;if((Wn||Kn)&&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,r;e;e=e.parentNode){if(r=e.nextSibling){if(r.nodeName=="BR")l=o={node:r.parentNode,offset:yn(r)+1};break}let t=e.pmViewDesc;if(t&&t.node&&t.node.isBlock)break}}}else{let r=t.childNodes[e-1];f=r&&(r.nodeName=="BR"||r.contentEditable=="false")}}if(Wn&&u.focusNode&&u.focusNode!=o.node&&u.focusNode.nodeType==1){let t=u.focusNode.childNodes[u.focusOffset];if(t&&t.contentEditable=="false")i=true}if(!(i||f&&Kn)&&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 r=document.createRange();r.setEnd(o.node,o.offset);r.setStart(l.node,l.offset);u.removeAllRanges();u.addRange(r)}}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 r=0,i=0;i<this.children.length;i++){let n=this.children[i],s=r+n.size;if(r==s?t<=s&&e>=r:t<s&&e>r){let i=r+n.border,l=s-n.border;if(t>=i&&e<=l){this.dirty=t==r||e==s?Ns:js;if(t==i&&e==l&&(n.contentLost||n.dom.parentNode!=this.contentDOM))n.dirty=qs;else n.markDirty(t-i,e-i);return}else{n.dirty=n.dom==n.contentDOM&&n.dom.parentNode==this.contentDOM&&!n.children.length?Ns:qs}}r=s}this.dirty=Ns}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let r=t==1?Ns:js;if(e.dirty<r)e.dirty=r}}get domAtom(){return false}get ignoreForCoords(){return false}}class Ts extends zs{constructor(t,e,r,i){let n,s=e.type.toDOM;if(typeof s=="function")s=s(r,(()=>{if(!n)return i;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==Rs&&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 Is extends zs{constructor(t,e,r,i){super(t,[],e,null);this.textDOM=r;this.text=i}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 Ps extends zs{constructor(t,e,r,i){super(t,[],r,i);this.mark=e}static create(t,e,r,i){let n=i.nodeViews[e.type.name];let s=n&&n(e,i,r);if(!s||!s.dom)s=$r.renderSpec(document,e.type.spec.toDOM(e,r));return new Ps(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!=Rs){let t=this.parent;while(!t.node)t=t.parent;if(t.dirty<this.dirty)t.dirty=this.dirty;this.dirty=Rs}}slice(t,e,r){let i=Ps.create(this.parent,this.mark,true,r);let n=this.children,s=this.size;if(e<s)n=fl(n,e,s,r);if(t>0)n=fl(n,0,t,r);for(let t=0;t<n.length;t++)n[t].parent=i;i.children=n;return i}}class Js extends zs{constructor(t,e,r,i,n,s,l,o,u){super(t,[],n,s);this.node=e;this.outerDeco=r;this.innerDeco=i;this.nodeDOM=l}static create(t,e,r,i,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)}),r,i);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}=$r.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=Qs(f,r,e);if(u)return o=new Hs(t,e,r,i,f,h||null,a,u,n,s+1);else if(e.isText)return new Ws(t,e,r,i,f,a,n);else return new Js(t,e,r,i,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 r=this.children[e];if(this.dom.contains(r.dom.parentNode)){t.contentElement=r.dom.parentNode;break}}if(!t.contentElement)t.getContent=()=>ge.empty}return t}matchesNode(t,e,r){return this.dirty==Rs&&t.eq(this.node)&&tl(e,this.outerDeco)&&r.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(t,e){let r=this.node.inlineContent,i=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 rl(this,s&&s.node,t);sl(this.node,this.innerDeco,((e,n,s)=>{if(e.spec.marks)o.syncToMarks(e.spec.marks,r,t);else if(e.type.side>=0&&!s)o.syncToMarks(n==this.node.childCount?ve.none:this.node.child(n).marks,r,t);o.placeWidget(e,t,i)}),((e,s,u,f)=>{o.syncToMarks(e.marks,r,t);let h;if(o.findNodeMatch(e,s,u,f));else if(l&&t.state.selection.from>i&&t.state.selection.to<i+e.nodeSize&&(h=o.findIndexWithChild(n.node))>-1&&o.updateNodeAt(e,s,u,h,t));else if(o.updateNextNode(e,s,u,t,f,i));else{o.addNode(e,s,u,t,i)}i+=e.nodeSize}));o.syncToMarks([],r,t);if(this.node.isTextblock)o.addTextblockHacks();o.destroyRest();if(o.changed||this.dirty==Ns){if(s)this.protectLocalComposition(t,s);Zs(this.contentDOM,this.children,t);if(Vn)ll(this.dom)}}localCompositionInfo(t,e){let{from:r,to:i}=t.state.selection;if(!(t.state.selection instanceof Qi)||r<e||i>e+this.node.content.size)return null;let n=t.domSelectionRange();let s=ol(n.focusNode,n.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let t=s.nodeValue;let n=ul(this.node.content,t,r-e,i-e);return n<0?null:{node:s,pos:n,text:t}}else{return{node:s,pos:-1,text:""}}}protectLocalComposition(t,{node:e,pos:r,text:i}){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 Is(this,n,e,i);t.input.compositionNodes.push(s);this.children=fl(this.children,r,r+i.length,t,s)}update(t,e,r,i){if(this.dirty==qs||!t.sameMarkup(this.node))return false;this.updateInner(t,e,r,i);return true}updateInner(t,e,r,i){this.updateOuterDeco(e);this.node=t;this.innerDeco=r;if(this.contentDOM)this.updateChildren(i,this.posAtStart);this.dirty=Rs}updateOuterDeco(t){if(tl(t,this.outerDeco))return;let e=this.nodeDOM.nodeType!=1;let r=this.dom;this.dom=Xs(this.dom,this.nodeDOM,Gs(this.outerDeco,this.node,e),Gs(t,this.node,e));if(this.dom!=r){r.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 Ls(t,e,r,i,n){Qs(i,e,t);let s=new Js(undefined,t,e,r,i,i,i,n,0);if(s.contentDOM)s.updateChildren(n,0);return s}class Ws extends Js{constructor(t,e,r,i,n,s,l){super(t,e,r,i,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,r,i){if(this.dirty==qs||this.dirty!=Rs&&!this.inParent()||!t.sameMarkup(this.node))return false;this.updateOuterDeco(e);if((this.dirty!=Rs||t.text!=this.node.text)&&t.text!=this.nodeDOM.nodeValue){this.nodeDOM.nodeValue=t.text;if(i.trackWrites==this.nodeDOM)i.trackWrites=null}this.node=t;this.dirty=Rs;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,r){if(t==this.nodeDOM)return this.posAtStart+Math.min(e,this.node.text.length);return super.localPosFromDOM(t,e,r)}ignoreMutation(t){return t.type!="characterData"&&t.type!="selection"}slice(t,e,r){let i=this.node.cut(t,e),n=document.createTextNode(i.text);return new Ws(this.parent,i,this.outerDeco,this.innerDeco,n,n,r)}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 zs{parseRule(){return{ignore:true}}matchesHack(t){return this.dirty==Rs&&this.dom.nodeName==t}get domAtom(){return true}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Hs extends Js{constructor(t,e,r,i,n,s,l,o,u,f){super(t,e,r,i,n,s,l,u,f);this.spec=o}update(t,e,r,i){if(this.dirty==qs)return false;if(this.spec.update){let n=this.spec.update(t,e,r);if(n)this.updateInner(t,e,r,i);return n}else if(!this.contentDOM&&!t.isLeaf){return false}else{return super.update(t,e,r,i)}}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(t,e,r,i){this.spec.setSelection?this.spec.setSelection(t,e,r):super.setSelection(t,e,r,i)}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 Zs(t,e,r){let i=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!=i){i=el(i);n=true}i=i.nextSibling}else{n=true;t.insertBefore(o,i)}if(l instanceof Ps){let e=i?i.previousSibling:t.lastChild;Zs(l.contentDOM,l.children,r);i=e?e.nextSibling:t.firstChild}}while(i){i=el(i);n=true}if(n&&r.trackWrites==t)r.trackWrites=null}const Ks=function(t){if(t)this.nodeName=t};Ks.prototype=Object.create(null);const Vs=[new Ks];function Gs(t,e,r){if(t.length==0)return Vs;let i=r?Vs[0]:new Ks,n=[i];for(let s=0;s<t.length;s++){let l=t[s].type.attrs;if(!l)continue;if(l.nodeName)n.push(i=new Ks(l.nodeName));for(let t in l){let s=l[t];if(s==null)continue;if(r&&n.length==1)n.push(i=new Ks(e.isInline?"span":"div"));if(t=="class")i.class=(i.class?i.class+" ":"")+s;else if(t=="style")i.style=(i.style?i.style+";":"")+s;else if(t!="nodeName")i[t]=s}}return n}function Xs(t,e,r,i){if(r==Vs&&i==Vs)return e;let n=e;for(let e=0;e<i.length;e++){let s=i[e],l=r[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=Vs[0];n=e}}Ys(n,l||Vs[0],s)}return n}function Ys(t,e,r){for(let i in e)if(i!="class"&&i!="style"&&i!="nodeName"&&!(i in r))t.removeAttribute(i);for(let i in r)if(i!="class"&&i!="style"&&i!="nodeName"&&r[i]!=e[i])t.setAttribute(i,r[i]);if(e.class!=r.class){let i=e.class?e.class.split(" ").filter(Boolean):[];let n=r.class?r.class.split(" ").filter(Boolean):[];for(let e=0;e<i.length;e++)if(n.indexOf(i[e])==-1)t.classList.remove(i[e]);for(let e=0;e<n.length;e++)if(i.indexOf(n[e])==-1)t.classList.add(n[e]);if(t.classList.length==0)t.removeAttribute("class")}if(e.style!=r.style){if(e.style){let r=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g,i;while(i=r.exec(e.style))t.style.removeProperty(i[1])}if(r.style)t.style.cssText+=r.style}}function Qs(t,e,r){return Xs(t,t,Vs,Gs(e,r,t.nodeType!=1))}function tl(t,e){if(t.length!=e.length)return false;for(let r=0;r<t.length;r++)if(!t[r].type.eq(e[r].type))return false;return true}function el(t){let e=t.nextSibling;t.parentNode.removeChild(t);return e}class rl{constructor(t,e,r){this.lock=e;this.view=r;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 r=t;r<e;r++)this.top.children[r].destroy();this.top.children.splice(t,e-t);this.changed=true}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(t,e,r){let i=0,n=this.stack.length>>1;let s=Math.min(n,t.length);while(i<s&&(i==n-1?this.top:this.stack[i+1<<1]).matchesMark(t[i])&&t[i].type.spec.spanning!==false)i++;while(i<n){this.destroyRest();this.top.dirty=Rs;this.index=this.stack.pop();this.top=this.stack.pop();n--}while(n<t.length){this.stack.push(this.top,this.index+1);let i=-1;for(let e=this.index;e<Math.min(this.index+3,this.top.children.length);e++){let r=this.top.children[e];if(r.matchesMark(t[n])&&!this.isLocked(r.dom)){i=e;break}}if(i>-1){if(i>this.index){this.changed=true;this.destroyBetween(this.index,i)}this.top=this.top.children[this.index]}else{let i=Ps.create(this.top,t[n],e,r);this.top.children.splice(this.index,0,i);this.top=i;this.changed=true}this.index=0;n++}}findNodeMatch(t,e,r,i){let n=-1,s;if(i>=this.preMatch.index&&(s=this.preMatch.matches[i-this.preMatch.index]).parent==this.top&&s.matchesNode(t,e,r)){n=this.top.children.indexOf(s,this.index)}else{for(let i=this.index,s=Math.min(this.top.children.length,i+5);i<s;i++){let s=this.top.children[i];if(s.matchesNode(t,e,r)&&!this.preMatch.matched.has(s)){n=i;break}}}if(n<0)return false;this.destroyBetween(this.index,n);this.index++;return true}updateNodeAt(t,e,r,i,n){let s=this.top.children[i];if(s.dirty==qs&&s.dom==s.contentDOM)s.dirty=Ns;if(!s.update(t,e,r,n))return false;this.destroyBetween(this.index,i);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,r,i,n,s){for(let l=this.index;l<this.top.children.length;l++){let o=this.top.children[l];if(o instanceof Js){let u=this.preMatch.matched.get(o);if(u!=null&&u!=n)return false;let f=o.dom,h;let a=this.isLocked(f)&&!(t.isText&&o.node&&o.node.isText&&o.nodeDOM.nodeValue==t.text&&o.dirty!=qs&&tl(e,o.outerDeco));if(!a&&o.update(t,e,r,i)){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,r,i,s))){this.top.children[this.index]=h;if(h.contentDOM){h.dirty=Ns;h.updateChildren(i,s+1);h.dirty=Rs}this.changed=true;this.index++;return true}break}}return false}recreateWrapper(t,e,r,i,n,s){if(t.dirty||e.isAtom||!t.children.length||!t.node.content.eq(e.content))return null;let l=Js.create(this.top,e,r,i,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,r,i,n){let s=Js.create(this.top,t,e,r,i,n);if(s.contentDOM)s.updateChildren(i,n+1);this.top.children.splice(this.index++,0,s);this.changed=true}placeWidget(t,e,r){let i=this.index<this.top.children.length?this.top.children[this.index]:null;if(i&&i.matchesWidget(t)&&(t==i.widget||!i.widget.type.toDOM.parentNode)){this.index++}else{let i=new Ts(this.top,t,e,r);this.top.children.splice(this.index++,0,i);this.changed=true}}addTextblockHacks(){let t=this.top.children[this.index-1],e=this.top;while(t instanceof Ps){e=t;t=e.children[e.children.length-1]}if(!t||!(t instanceof Ws)||/\n$/.test(t.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(t.node.text)){if((Kn||Hn)&&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 r=document.createElement(t);if(t=="IMG"){r.className="ProseMirror-separator";r.alt=""}if(t=="BR")r.className="ProseMirror-trailingBreak";let i=new Us(this.top,[],r,null);if(e!=this.top)e.children.push(i);else e.children.splice(this.index++,0,i);this.changed=true}}isLocked(t){return this.lock&&(t==this.lock||t.nodeType==1&&t.contains(this.lock.parentNode))}}function il(t,e){let r=e,i=r.children.length;let n=t.childCount,s=new Map,l=[];t:while(n>0){let o;for(;;){if(i){let t=r.children[i-1];if(t instanceof Ps){r=t;i=t.children.length}else{o=t;i--;break}}else if(r==e){break t}else{i=r.parent.children.indexOf(r);r=r.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 nl(t,e){return t.type.side-e.type.side}function sl(t,e,r,i){let n=e.locals(t),s=0;if(n.length==0){for(let r=0;r<t.childCount;r++){let l=t.child(r);i(l,n,e.forChild(s,l),r);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(nl);for(let t=0;t<a.length;t++)r(a[t],f,!!u)}else{r(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();i(c,m,e.forChild(s,c),d);s=p}}function ll(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 ol(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=Sn(t)}else if(t.nodeType==1&&e<t.childNodes.length){t=t.childNodes[e];e=0}else{return null}}}function ul(t,e,r,i){for(let n=0,s=0;n<t.childCount&&s<=i;){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>=r){if(s>=i&&u.slice(i-e.length-o,i-o)==e)return i-e.length;let t=o<i?u.lastIndexOf(e,i-o-1):-1;if(t>=0&&t+e.length+o>=r)return o+t;if(r==i&&u.length>=i+e.length-o&&u.slice(i-o,i-o+e.length)==e)return i}}return-1}function fl(t,e,r,i,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>=r||h<=e){s.push(u)}else{if(f<e)s.push(u.slice(0,e-f,i));if(n){s.push(n);n=undefined}if(h>r)s.push(u.slice(r-f,u.size,i))}}return s}function hl(t,e=null){let r=t.domSelectionRange(),i=t.state.doc;if(!r.focusNode)return null;let n=t.docView.nearestDesc(r.focusNode),s=n&&n.size==0;let l=t.docView.posFromDOM(r.focusNode,r.focusOffset,1);if(l<0)return null;let o=i.resolve(l),u,f;if(_n(r)){u=o;while(n&&!n.node)n=n.parent;let t=n.node;if(n&&t.isAtom&&en.isSelectable(t)&&n.parent&&!(t.isInline&&On(r.focusNode,r.focusOffset,n.dom))){let t=n.posBefore;f=new en(l==t?o:i.resolve(t))}}else{let e=t.docView.posFromDOM(r.anchorNode,r.anchorOffset,1);if(e<0)return null;u=i.resolve(e)}if(!f){let r=e=="pointer"||t.state.selection.head<o.pos&&!s?1:-1;f=vl(t,u,o,r)}return f}function al(t){return t.editable?t.hasFocus():Fl(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function cl(t,e=false){let r=t.state.selection;kl(t,r);if(!al(t))return;if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&Hn){let e=t.domSelectionRange(),r=t.domObserver.currentSelection;if(e.anchorNode&&r.anchorNode&&xn(e.anchorNode,e.anchorOffset,r.anchorNode,r.anchorOffset)){t.input.mouseDown.delayedSelectionSync=true;t.domObserver.setCurSelection();return}}t.domObserver.disconnectSelection();if(t.cursorWrapper){bl(t)}else{let{anchor:i,head:n}=r,s,l;if(dl&&!(r instanceof Qi)){if(!r.$from.parent.inlineContent)s=pl(t,r.from);if(!r.empty&&!r.$from.parent.inlineContent)l=pl(t,r.to)}t.docView.setSelection(i,n,t.root,e);if(dl){if(s)wl(s);if(l)wl(l)}if(r.visible){t.dom.classList.remove("ProseMirror-hideselection")}else{t.dom.classList.add("ProseMirror-hideselection");if("onselectionchange"in document)gl(t)}}t.domObserver.setCurSelection();t.domObserver.connectSelection()}const dl=Kn||Hn&&Zn<63;function pl(t,e){let{node:r,offset:i}=t.docView.domFromPos(e,0);let n=i<r.childNodes.length?r.childNodes[i]:null;let s=i?r.childNodes[i-1]:null;if(Kn&&n&&n.contentEditable=="false")return ml(n);if((!n||n.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(n)return ml(n);else if(s)return ml(s)}}function ml(t){t.contentEditable="true";if(Kn&&t.draggable){t.draggable=false;t.wasDraggable=true}return t}function wl(t){t.contentEditable="false";if(t.wasDraggable){t.draggable=true;t.wasDraggable=null}}function gl(t){let e=t.dom.ownerDocument;e.removeEventListener("selectionchange",t.input.hideSelectionGuard);let r=t.domSelectionRange();let i=r.anchorNode,n=r.anchorOffset;e.addEventListener("selectionchange",t.input.hideSelectionGuard=()=>{if(r.anchorNode!=i||r.anchorOffset!=n){e.removeEventListener("selectionchange",t.input.hideSelectionGuard);setTimeout((()=>{if(!al(t)||t.state.selection.visible)t.dom.classList.remove("ProseMirror-hideselection")}),20)}})}function bl(t){let e=t.domSelection(),r=document.createRange();let i=t.cursorWrapper.dom,n=i.nodeName=="IMG";if(n)r.setEnd(i.parentNode,yn(i)+1);else r.setEnd(i,0);r.collapse(false);e.removeAllRanges();e.addRange(r);if(!n&&!t.state.selection.visible&&Jn&&Ln<=11){i.disabled=true;i.disabled=false}}function kl(t,e){if(e instanceof en){let r=t.docView.descAt(e.from);if(r!=t.lastSelectedViewDesc){Dl(t);if(r)r.selectNode();t.lastSelectedViewDesc=r}}else{Dl(t)}}function Dl(t){if(t.lastSelectedViewDesc){if(t.lastSelectedViewDesc.parent)t.lastSelectedViewDesc.deselectNode();t.lastSelectedViewDesc=undefined}}function vl(t,e,r,i){return t.someProp("createSelectionBetween",(i=>i(t,e,r)))||Qi.between(e,r,i)}function yl(t){if(t.editable&&!t.hasFocus())return false;return Fl(t)}function Fl(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 El(t){let e=t.docView.domFromPos(t.state.selection.anchor,0);let r=t.domSelectionRange();return xn(e.node,e.offset,r.anchorNode,r.anchorOffset)}function Ml(t,e){let{$anchor:r,$head:i}=t.selection;let n=e>0?r.max(i):r.min(i);let s=!n.parent.inlineContent?n:n.depth?t.doc.resolve(e>0?n.after():n.before()):null;return s&&Vi.findFrom(s,e)}function xl(t,e){t.dispatch(t.state.tr.setSelection(e).scrollIntoView());return true}function Al(t,e,r){let i=t.state.selection;if(i instanceof Qi){if(r.indexOf("s")>-1){let{$head:r}=i,n=r.textOffset?null:e<0?r.nodeBefore:r.nodeAfter;if(!n||n.isText||!n.isLeaf)return false;let s=t.state.doc.resolve(r.pos+n.nodeSize*(e<0?-1:1));return xl(t,new Qi(i.$anchor,s))}else if(!i.empty){return false}else if(t.endOfTextblock(e>0?"forward":"backward")){let r=Ml(t.state,e);if(r&&r instanceof en)return xl(t,r);return false}else if(!(Gn&&r.indexOf("m")>-1)){let r=i.$head,n=r.textOffset?null:e<0?r.nodeBefore:r.nodeAfter,s;if(!n||n.isText)return false;let l=e<0?r.pos-n.nodeSize:r.pos;if(!(n.isAtom||(s=t.docView.descAt(l))&&!s.contentDOM))return false;if(en.isSelectable(n)){return xl(t,new en(e<0?t.state.doc.resolve(r.pos-n.nodeSize):r))}else if(Qn){return xl(t,new Qi(t.state.doc.resolve(e<0?l:l+n.nodeSize)))}else{return false}}}else if(i instanceof en&&i.node.isInline){return xl(t,new Qi(e>0?i.$to:i.$from))}else{let r=Ml(t.state,e);if(r)return xl(t,r);return false}}function Cl(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Sl(t,e){let r=t.pmViewDesc;return r&&r.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function Ol(t,e){return e<0?$l(t):_l(t)}function $l(t){let e=t.domSelectionRange();let r=e.focusNode,i=e.focusOffset;if(!r)return;let n,s,l=false;if(Wn&&r.nodeType==1&&i<Cl(r)&&Sl(r.childNodes[i],-1))l=true;for(;;){if(i>0){if(r.nodeType!=1){break}else{let t=r.childNodes[i-1];if(Sl(t,-1)){n=r;s=--i}else if(t.nodeType==3){r=t;i=r.nodeValue.length}else break}}else if(Bl(r)){break}else{let e=r.previousSibling;while(e&&Sl(e,-1)){n=r.parentNode;s=yn(e);e=e.previousSibling}if(!e){r=r.parentNode;if(r==t.dom)break;i=0}else{r=e;i=Cl(r)}}}if(l)Nl(t,r,i);else if(n)Nl(t,n,s)}function _l(t){let e=t.domSelectionRange();let r=e.focusNode,i=e.focusOffset;if(!r)return;let n=Cl(r);let s,l;for(;;){if(i<n){if(r.nodeType!=1)break;let t=r.childNodes[i];if(Sl(t,1)){s=r;l=++i}else break}else if(Bl(r)){break}else{let e=r.nextSibling;while(e&&Sl(e,1)){s=e.parentNode;l=yn(e)+1;e=e.nextSibling}if(!e){r=r.parentNode;if(r==t.dom)break;i=n=0}else{r=e;i=0;n=Cl(r)}}}if(s)Nl(t,s,l)}function Bl(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Rl(t,e){while(t&&e==t.childNodes.length&&!$n(t)){e=yn(t)+1;t=t.parentNode}while(t&&e<t.childNodes.length){let r=t.childNodes[e];if(r.nodeType==3)return r;if(r.nodeType==1&&r.contentEditable=="false")break;t=r;e=0}}function jl(t,e){while(t&&!e&&!$n(t)){e=yn(t);t=t.parentNode}while(t&&e){let r=t.childNodes[e-1];if(r.nodeType==3)return r;if(r.nodeType==1&&r.contentEditable=="false")break;t=r;e=t.childNodes.length}}function Nl(t,e,r){if(e.nodeType!=3){let t,i;if(i=Rl(e,r)){e=i;r=0}else if(t=jl(e,r)){e=t;r=t.nodeValue.length}}let i=t.domSelection();if(_n(i)){let t=document.createRange();t.setEnd(e,r);t.setStart(e,r);i.removeAllRanges();i.addRange(t)}else if(i.extend){i.extend(e,r)}t.domObserver.setCurSelection();let{state:n}=t;setTimeout((()=>{if(t.state==n)cl(t)}),50)}function ql(t,e){let r=t.state.doc.resolve(e);if(!(Hn||Xn)&&r.parent.inlineContent){let i=t.coordsAtPos(e);if(e>r.start()){let r=t.coordsAtPos(e-1);let n=(r.top+r.bottom)/2;if(n>i.top&&n<i.bottom&&Math.abs(r.left-i.left)>1)return r.left<i.left?"ltr":"rtl"}if(e<r.end()){let r=t.coordsAtPos(e+1);let n=(r.top+r.bottom)/2;if(n>i.top&&n<i.bottom&&Math.abs(r.left-i.left)>1)return r.left>i.left?"ltr":"rtl"}}let i=getComputedStyle(t.dom).direction;return i=="rtl"?"rtl":"ltr"}function zl(t,e,r){let i=t.state.selection;if(i instanceof Qi&&!i.empty||r.indexOf("s")>-1)return false;if(Gn&&r.indexOf("m")>-1)return false;let{$from:n,$to:s}=i;if(!n.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let r=Ml(t.state,e);if(r&&r instanceof en)return xl(t,r)}if(!n.parent.inlineContent){let r=e<0?n:s;let l=i instanceof nn?Vi.near(r,e):Vi.findFrom(r,e);return l?xl(t,l):false}return false}function Tl(t,e){if(!(t.state.selection instanceof Qi))return true;let{$head:r,$anchor:i,empty:n}=t.state.selection;if(!r.sameParent(i))return true;if(!n)return false;if(t.endOfTextblock(e>0?"forward":"backward"))return true;let s=!r.textOffset&&(e<0?r.nodeBefore:r.nodeAfter);if(s&&!s.isText){let i=t.state.tr;if(e<0)i.delete(r.pos-s.nodeSize,r.pos);else i.delete(r.pos,r.pos+s.nodeSize);t.dispatch(i);return true}return false}function Il(t,e,r){t.domObserver.stop();e.contentEditable=r;t.domObserver.start()}function Pl(t){if(!Kn||t.state.selection.$head.parentOffset>0)return false;let{focusNode:e,focusOffset:r}=t.domSelectionRange();if(e&&e.nodeType==1&&r==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let r=e.firstChild;Il(t,r,"true");setTimeout((()=>Il(t,r,"false")),20)}return false}function Jl(t){let e="";if(t.ctrlKey)e+="c";if(t.metaKey)e+="m";if(t.altKey)e+="a";if(t.shiftKey)e+="s";return e}function Ll(t,e){let r=e.keyCode,i=Jl(e);if(r==8||Gn&&r==72&&i=="c"){return Tl(t,-1)||Ol(t,-1)}else if(r==46&&!e.shiftKey||Gn&&r==68&&i=="c"){return Tl(t,1)||Ol(t,1)}else if(r==13||r==27){return true}else if(r==37||Gn&&r==66&&i=="c"){let e=r==37?ql(t,t.state.selection.from)=="ltr"?-1:1:-1;return Al(t,e,i)||Ol(t,e)}else if(r==39||Gn&&r==70&&i=="c"){let e=r==39?ql(t,t.state.selection.from)=="ltr"?1:-1:1;return Al(t,e,i)||Ol(t,e)}else if(r==38||Gn&&r==80&&i=="c"){return zl(t,-1,i)||Ol(t,-1)}else if(r==40||Gn&&r==78&&i=="c"){return Pl(t)||zl(t,1,i)||Ol(t,1)}else if(i==(Gn?"m":"c")&&(r==66||r==73||r==89||r==90)){return true}return false}function Wl(t,e){t.someProp("transformCopied",(r=>{e=r(e,t)}));let r=[],{content:i,openStart:n,openEnd:s}=e;while(n>1&&s>1&&i.childCount==1&&i.firstChild.childCount==1){n--;s--;let t=i.firstChild;r.push(t.type.name,t.attrs!=t.type.defaultAttrs?t.attrs:null);i=t.content}let l=t.someProp("clipboardSerializer")||$r.fromSchema(t.state.schema);let o=eo(),u=o.createElement("div");u.appendChild(l.serializeFragment(i,{document:o}));let f=u.firstChild,h,a=0;while(f&&f.nodeType==1&&(h=Ql[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(r)}`);let c=t.someProp("clipboardTextSerializer",(r=>r(e,t)))||e.content.textBetween(0,e.content.size,"\n\n");return{dom:u,text:c}}function Ul(t,e,r,i,n){let s=n.parent.type.spec.code;let l,o;if(!r&&!e)return null;let u=e&&(i||s||!r);if(u){t.someProp("transformPastedText",(r=>{e=r(e,s||i,t)}));if(s)return e?new Fe(ge.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):Fe.empty;let r=t.someProp("clipboardTextParser",(r=>r(e,n,i,t)));if(r){o=r}else{let r=n.marks();let{schema:i}=t.state,s=$r.fromSchema(i);l=document.createElement("div");e.split(/(?:\r\n?|\n)+/).forEach((t=>{let e=l.appendChild(document.createElement("p"));if(t)e.appendChild(s.serializeNode(i.text(t,r)))}))}}else{t.someProp("transformPastedHTML",(e=>{r=e(r,t)}));l=ro(r);if(Qn)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")||gr.fromSchema(t.state.schema);o=e.parseSlice(l,{preserveWhitespace:!!(u||h),context:n,ruleFromNode(t){if(t.nodeName=="BR"&&!t.nextSibling&&t.parentNode&&!Hl.test(t.parentNode.nodeName))return{ignore:true};return null}})}if(h){o=no(Yl(o,+h[1],+h[2]),h[4])}else{o=Fe.maxOpen(Zl(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=Yl(o,t,e)}}t.someProp("transformPasted",(e=>{o=e(o,t)}));return o}const Hl=/^(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 Zl(t,e){if(t.childCount<2)return t;for(let r=e.depth;r>=0;r--){let i=e.node(r);let n=i.contentMatchAt(e.index(r));let s,l=[];t.forEach((t=>{if(!l)return;let e=n.findWrapping(t.type),r;if(!e)return l=null;if(r=l.length&&s.length&&Vl(e,s,t,l[l.length-1],0)){l[l.length-1]=r}else{if(l.length)l[l.length-1]=Gl(l[l.length-1],s.length);let r=Kl(t,e);l.push(r);n=n.matchType(r.type);s=e}}));if(l)return ge.from(l)}return t}function Kl(t,e,r=0){for(let i=e.length-1;i>=r;i--)t=e[i].create(null,ge.from(t));return t}function Vl(t,e,r,i,n){if(n<t.length&&n<e.length&&t[n]==e[n]){let s=Vl(t,e,r,i.lastChild,n+1);if(s)return i.copy(i.content.replaceChild(i.childCount-1,s));let l=i.contentMatchAt(i.childCount);if(l.matchType(n==t.length-1?r.type:t[n+1]))return i.copy(i.content.append(ge.from(Kl(r,t,n+1))))}}function Gl(t,e){if(e==0)return t;let r=t.content.replaceChild(t.childCount-1,Gl(t.lastChild,e-1));let i=t.contentMatchAt(t.childCount).fillBefore(ge.empty,true);return t.copy(r.append(i))}function Xl(t,e,r,i,n,s){let l=e<0?t.firstChild:t.lastChild,o=l.content;if(t.childCount>1)s=0;if(n<i-1)o=Xl(o,e,r,i,n+1,s);if(n>=r)o=e<0?l.contentMatchAt(0).fillBefore(o,s<=n).append(o):o.append(l.contentMatchAt(l.childCount).fillBefore(ge.empty,true));return t.replaceChild(e<0?0:t.childCount-1,l.copy(o))}function Yl(t,e,r){if(e<t.openStart)t=new Fe(Xl(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd);if(r<t.openEnd)t=new Fe(Xl(t.content,1,r,t.openEnd,0,0),t.openStart,r);return t}const Ql={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 to=null;function eo(){return to||(to=document.implementation.createHTMLDocument("title"))}function ro(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);if(e)t=t.slice(e[0].length);let r=eo().createElement("div");let i=/<([a-z][^>\s]+)/i.exec(t),n;if(n=i&&Ql[i[1].toLowerCase()])t=n.map((t=>"<"+t+">")).join("")+t+n.map((t=>"</"+t+">")).reverse().join("");r.innerHTML=t;if(n)for(let t=0;t<n.length;t++)r=r.querySelector(n[t])||r;return r}function io(t){let e=t.querySelectorAll(Hn?"span:not([class]):not([style])":"span.Apple-converted-space");for(let r=0;r<e.length;r++){let i=e[r];if(i.childNodes.length==1&&i.textContent==" "&&i.parentNode)i.parentNode.replaceChild(t.ownerDocument.createTextNode(" "),i)}}function no(t,e){if(!t.size)return t;let r=t.content.firstChild.type.schema,i;try{i=JSON.parse(e)}catch(e){return t}let{content:n,openStart:s,openEnd:l}=t;for(let t=i.length-2;t>=0;t-=2){let e=r.nodes[i[t]];if(!e||e.hasRequiredAttrs())break;n=ge.from(e.create(i[t+1],n));s++;l++}return new Fe(n,s,l)}const so={};const lo={};const oo={touchstart:true,touchmove:true};class uo{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 fo(t){for(let e in so){let r=so[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{if(mo(t,e)&&!po(t,e)&&(t.editable||!(e.type in lo)))r(t,e)},oo[e]?{passive:true}:undefined)}if(Kn)t.dom.addEventListener("input",(()=>null));co(t)}function ho(t,e){t.input.lastSelectionOrigin=e;t.input.lastSelectionTime=Date.now()}function ao(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 co(t){t.someProp("handleDOMEvents",(e=>{for(let r in e)if(!t.input.eventHandlers[r])t.dom.addEventListener(r,t.input.eventHandlers[r]=e=>po(t,e))}))}function po(t,e){return t.someProp("handleDOMEvents",(r=>{let i=r[e.type];return i?i(t,e)||e.defaultPrevented:false}))}function mo(t,e){if(!e.bubbles)return true;if(e.defaultPrevented)return false;for(let r=e.target;r!=t.dom;r=r.parentNode)if(!r||r.nodeType==11||r.pmViewDesc&&r.pmViewDesc.stopEvent(e))return false;return true}function wo(t,e){if(!po(t,e)&&so[e.type]&&(t.editable||!(e.type in lo)))so[e.type](t,e)}lo.keydown=(t,e)=>{let r=e;t.input.shiftKey=r.keyCode==16||r.shiftKey;if(Oo(t,r))return;t.input.lastKeyCode=r.keyCode;t.input.lastKeyCodeTime=Date.now();if(Yn&&Hn&&r.keyCode==13)return;if(r.keyCode!=229)t.domObserver.forceFlush();if(Vn&&r.keyCode==13&&!r.ctrlKey&&!r.altKey&&!r.metaKey){let e=Date.now();t.input.lastIOSEnter=e;t.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{if(t.input.lastIOSEnter==e){t.someProp("handleKeyDown",(e=>e(t,Bn(13,"Enter"))));t.input.lastIOSEnter=0}}),200)}else if(t.someProp("handleKeyDown",(e=>e(t,r)))||Ll(t,r)){r.preventDefault()}else{ho(t,"key")}};lo.keyup=(t,e)=>{if(e.keyCode==16)t.input.shiftKey=false};lo.keypress=(t,e)=>{let r=e;if(Oo(t,r)||!r.charCode||r.ctrlKey&&!r.altKey||Gn&&r.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,r)))){r.preventDefault();return}let i=t.state.selection;if(!(i instanceof Qi)||!i.$from.sameParent(i.$to)){let e=String.fromCharCode(r.charCode);if(!/[\r\n]/.test(e)&&!t.someProp("handleTextInput",(r=>r(t,i.$from.pos,i.$to.pos,e))))t.dispatch(t.state.tr.insertText(e).scrollIntoView());r.preventDefault()}};function go(t){return{left:t.clientX,top:t.clientY}}function bo(t,e){let r=e.x-t.clientX,i=e.y-t.clientY;return r*r+i*i<100}function ko(t,e,r,i,n){if(i==-1)return false;let s=t.state.doc.resolve(i);for(let i=s.depth+1;i>0;i--){if(t.someProp(e,(e=>i>s.depth?e(t,r,s.nodeAfter,s.before(i),n,true):e(t,r,s.node(i),s.before(i),n,false))))return true}return false}function Do(t,e,r){if(!t.focused)t.focus();let i=t.state.tr.setSelection(e);if(r=="pointer")i.setMeta("pointer",true);t.dispatch(i)}function vo(t,e){if(e==-1)return false;let r=t.state.doc.resolve(e),i=r.nodeAfter;if(i&&i.isAtom&&en.isSelectable(i)){Do(t,new en(r),"pointer");return true}return false}function yo(t,e){if(e==-1)return false;let r=t.state.selection,i,n;if(r instanceof en)i=r.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(en.isSelectable(e)){if(i&&r.$from.depth>0&&t>=r.$from.depth&&s.before(r.$from.depth+1)==r.$from.pos)n=s.before(r.$from.depth);else n=s.before(t);break}}if(n!=null){Do(t,en.create(t.state.doc,n),"pointer");return true}else{return false}}function Fo(t,e,r,i,n){return ko(t,"handleClickOn",e,r,i)||t.someProp("handleClick",(r=>r(t,e,i)))||(n?yo(t,r):vo(t,r))}function Eo(t,e,r,i){return ko(t,"handleDoubleClickOn",e,r,i)||t.someProp("handleDoubleClick",(r=>r(t,e,i)))}function Mo(t,e,r,i){return ko(t,"handleTripleClickOn",e,r,i)||t.someProp("handleTripleClick",(r=>r(t,e,i)))||xo(t,r,i)}function xo(t,e,r){if(r.button!=0)return false;let i=t.state.doc;if(e==-1){if(i.inlineContent){Do(t,Qi.create(i,0,i.content.size),"pointer");return true}return false}let n=i.resolve(e);for(let e=n.depth+1;e>0;e--){let r=e>n.depth?n.nodeAfter:n.node(e);let s=n.before(e);if(r.inlineContent)Do(t,Qi.create(i,s+1,s+1+r.content.size),"pointer");else if(en.isSelectable(r))Do(t,en.create(i,s),"pointer");else continue;return true}}function Ao(t){return jo(t)}const Co=Gn?"metaKey":"ctrlKey";so.mousedown=(t,e)=>{let r=e;t.input.shiftKey=r.shiftKey;let i=Ao(t);let n=Date.now(),s="singleClick";if(n-t.input.lastClick.time<500&&bo(r,t.input.lastClick)&&!r[Co]){if(t.input.lastClick.type=="singleClick")s="doubleClick";else if(t.input.lastClick.type=="doubleClick")s="tripleClick"}t.input.lastClick={time:n,x:r.clientX,y:r.clientY,type:s};let l=t.posAtCoords(go(r));if(!l)return;if(s=="singleClick"){if(t.input.mouseDown)t.input.mouseDown.done();t.input.mouseDown=new So(t,l,r,!!i)}else if((s=="doubleClick"?Eo:Mo)(t,l.pos,l.inside,r)){r.preventDefault()}else{ho(t,"pointer")}};class So{constructor(t,e,r,i){this.view=t;this.pos=e;this.event=r;this.flushed=i;this.delayedSelectionSync=false;this.mightDrag=null;this.startDoc=t.state.doc;this.selectNode=!!r[Co];this.allowDefault=r.shiftKey;let n,s;if(e.inside>-1){n=t.state.doc.nodeAt(e.inside);s=e.inside}else{let r=t.state.doc.resolve(e.pos);n=r.parent;s=r.depth?r.before():0}const l=i?null:r.target;const o=l?t.docView.nearestDesc(l,true):null;this.target=o?o.dom:null;let{selection:u}=t.state;if(r.button==0&&n.type.spec.draggable&&n.type.spec.selectable!==false||u instanceof en&&u.from<=s&&u.to>s)this.mightDrag={node:n,pos:s,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&Wn&&!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));ho(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((()=>cl(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(go(t));this.updateAllowDefault(t);if(this.allowDefault||!e){ho(this.view,"pointer")}else if(Fo(this.view,e.pos,e.inside,t,this.selectNode)){t.preventDefault()}else if(t.button==0&&(this.flushed||Kn&&this.mightDrag&&!this.mightDrag.node.isAtom||Hn&&!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)){Do(this.view,Vi.near(this.view.state.doc.resolve(e.pos)),"pointer");t.preventDefault()}else{ho(this.view,"pointer")}}move(t){this.updateAllowDefault(t);ho(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}}so.touchstart=t=>{t.input.lastTouch=Date.now();Ao(t);ho(t,"pointer")};so.touchmove=t=>{t.input.lastTouch=Date.now();ho(t,"pointer")};so.contextmenu=t=>Ao(t);function Oo(t,e){if(t.composing)return true;if(Kn&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500){t.input.compositionEndedAt=-2e8;return true}return false}const $o=Yn?5e3:-1;lo.compositionstart=lo.compositionupdate=t=>{if(!t.composing){t.domObserver.flush();let{state:e}=t,r=e.selection.$from;if(e.selection.empty&&(e.storedMarks||!r.textOffset&&r.parentOffset&&r.nodeBefore.marks.some((t=>t.type.spec.inclusive===false)))){t.markCursor=t.state.storedMarks||r.marks();jo(t,true);t.markCursor=null}else{jo(t);if(Wn&&e.selection.empty&&r.parentOffset&&!r.textOffset&&r.nodeBefore.marks.length){let e=t.domSelectionRange();for(let r=e.focusNode,i=e.focusOffset;r&&r.nodeType==1&&i!=0;){let e=i<0?r.lastChild:r.childNodes[i-1];if(!e)break;if(e.nodeType==3){t.domSelection().collapse(e,e.nodeValue.length);break}else{r=e;i=-1}}}}t.input.composing=true}_o(t,$o)};lo.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 Bo(t){if(t.composing){t.input.composing=false;t.input.compositionEndedAt=Ro()}while(t.input.compositionNodes.length>0)t.input.compositionNodes.pop().markParentsDirty()}function Ro(){let t=document.createEvent("Event");t.initEvent("event",true,true);return t.timeStamp}function jo(t,e=false){if(Yn&&t.domObserver.flushingSoon>=0)return;t.domObserver.forceFlush();Bo(t);if(e||t.docView&&t.docView.dirty){let e=hl(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 No(t,e){if(!t.dom.parentNode)return;let r=t.dom.parentNode.appendChild(document.createElement("div"));r.appendChild(e);r.style.cssText="position: fixed; left: -10000px; top: 10px";let i=getSelection(),n=document.createRange();n.selectNodeContents(e);t.dom.blur();i.removeAllRanges();i.addRange(n);setTimeout((()=>{if(r.parentNode)r.parentNode.removeChild(r);t.focus()}),50)}const qo=Jn&&Ln<15||Vn&&ts<604;so.copy=lo.cut=(t,e)=>{let r=e;let i=t.state.selection,n=r.type=="cut";if(i.empty)return;let s=qo?null:r.clipboardData;let l=i.content(),{dom:o,text:u}=Wl(t,l);if(s){r.preventDefault();s.clearData();s.setData("text/html",o.innerHTML);s.setData("text/plain",u)}else{No(t,o)}if(n)t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function zo(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 r=t.input.shiftKey||t.state.selection.$from.parent.type.spec.code;let i=t.dom.parentNode.appendChild(document.createElement(r?"textarea":"div"));if(!r)i.contentEditable="true";i.style.cssText="position: fixed; left: -10000px; top: 10px";i.focus();let n=t.input.shiftKey&&t.input.lastKeyCode!=45;setTimeout((()=>{t.focus();if(i.parentNode)i.parentNode.removeChild(i);if(r)Io(t,i.value,null,n,e);else Io(t,i.textContent,i.innerHTML,n,e)}),50)}function Io(t,e,r,i,n){let s=Ul(t,e,r,i,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,n,s||Fe.empty))))return true;if(!s)return false;let l=zo(s);let o=l?t.state.tr.replaceSelectionWith(l,i):t.state.tr.replaceSelection(s);t.dispatch(o.scrollIntoView().setMeta("paste",true).setMeta("uiEvent","paste"));return true}function Po(t){let e=t.getData("text/plain")||t.getData("Text");if(e)return e;let r=t.getData("text/uri-list");return r?r.replace(/\r?\n/g," "):""}lo.paste=(t,e)=>{let r=e;if(t.composing&&!Yn)return;let i=qo?null:r.clipboardData;let n=t.input.shiftKey&&t.input.lastKeyCode!=45;if(i&&Io(t,Po(i),i.getData("text/html"),n,r))r.preventDefault();else To(t,r)};class Jo{constructor(t,e,r){this.slice=t;this.move=e;this.node=r}}const Lo=Gn?"altKey":"ctrlKey";so.dragstart=(t,e)=>{let r=e;let i=t.input.mouseDown;if(i)i.done();if(!r.dataTransfer)return;let n=t.state.selection;let s=n.empty?null:t.posAtCoords(go(r));let l;if(s&&s.pos>=n.from&&s.pos<=(n instanceof en?n.to-1:n.to));else if(i&&i.mightDrag){l=en.create(t.state.doc,i.mightDrag.pos)}else if(r.target&&r.target.nodeType==1){let e=t.docView.nearestDesc(r.target,true);if(e&&e.node.type.spec.draggable&&e!=t.docView)l=en.create(t.state.doc,e.posBefore)}let o=(l||t.state.selection).content(),{dom:u,text:f}=Wl(t,o);r.dataTransfer.clearData();r.dataTransfer.setData(qo?"Text":"text/html",u.innerHTML);r.dataTransfer.effectAllowed="copyMove";if(!qo)r.dataTransfer.setData("text/plain",f);t.dragging=new Jo(o,!r[Lo],l)};so.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{if(t.dragging==e)t.dragging=null}),50)};lo.dragover=lo.dragenter=(t,e)=>e.preventDefault();lo.drop=(t,e)=>{let r=e;let i=t.dragging;t.dragging=null;if(!r.dataTransfer)return;let n=t.posAtCoords(go(r));if(!n)return;let s=t.state.doc.resolve(n.pos);let l=i&&i.slice;if(l){t.someProp("transformPasted",(e=>{l=e(l,t)}))}else{l=Ul(t,Po(r.dataTransfer),qo?null:r.dataTransfer.getData("text/html"),false,s)}let o=!!(i&&!r[Lo]);if(t.someProp("handleDrop",(e=>e(t,r,l||Fe.empty,o)))){r.preventDefault();return}if(!l)return;r.preventDefault();let u=l?Ci(t.state.doc,s.pos,l):s.pos;if(u==null)u=s.pos;let f=t.state.tr;if(o){let{node:t}=i;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&&en.isSelectable(l.content.firstChild)&&d.nodeAfter&&d.nodeAfter.sameMarkup(l.content.firstChild)){f.setSelection(new en(d))}else{let e=f.mapping.map(u);f.mapping.maps[f.mapping.maps.length-1].forEach(((t,r,i,n)=>e=n));f.setSelection(vl(t,d,f.doc.resolve(e)))}t.focus();t.dispatch(f.setMeta("uiEvent","drop"))};so.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()))cl(t)}),20)}};so.blur=(t,e)=>{let r=e;if(t.focused){t.domObserver.stop();t.dom.classList.remove("ProseMirror-focused");t.domObserver.start();if(r.relatedTarget&&t.dom.contains(r.relatedTarget))t.domObserver.currentSelection.clear();t.focused=false}};so.beforeinput=(t,e)=>{let r=e;if(Hn&&Yn&&r.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,Bn(8,"Backspace")))))return;let{$cursor:r}=t.state.selection;if(r&&r.pos>0)t.dispatch(t.state.tr.delete(r.pos-1,r.pos).scrollIntoView())}),50)}};for(let t in lo)so[t]=lo[t];function Wo(t,e){if(t==e)return true;for(let r in t)if(t[r]!==e[r])return false;for(let r in e)if(!(r in t))return false;return true}class Uo{constructor(t,e){this.toDOM=t;this.spec=e||Go;this.side=this.spec.side||0}map(t,e,r,i){let{pos:n,deleted:s}=t.mapResult(e.from+i,this.side<0?-1:1);return s?null:new Ko(n-r,n-r,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&&Wo(this.spec,t.spec))}destroy(t){if(this.spec.destroy)this.spec.destroy(t)}}class Ho{constructor(t,e){this.attrs=t;this.spec=e||Go}map(t,e,r,i){let n=t.map(e.from+i,this.spec.inclusiveStart?-1:1)-r;let s=t.map(e.to+i,this.spec.inclusiveEnd?1:-1)-r;return n>=s?null:new Ko(n,s,this)}valid(t,e){return e.from<e.to}eq(t){return this==t||t instanceof Ho&&Wo(this.attrs,t.attrs)&&Wo(this.spec,t.spec)}static is(t){return t.type instanceof Ho}destroy(){}}class Zo{constructor(t,e){this.attrs=t;this.spec=e||Go}map(t,e,r,i){let n=t.mapResult(e.from+i,1);if(n.deleted)return null;let s=t.mapResult(e.to+i,-1);if(s.deleted||s.pos<=n.pos)return null;return new Ko(n.pos-r,s.pos-r,this)}valid(t,e){let{index:r,offset:i}=t.content.findIndex(e.from),n;return i==e.from&&!(n=t.child(r)).isText&&i+n.nodeSize==e.to}eq(t){return this==t||t instanceof Zo&&Wo(this.attrs,t.attrs)&&Wo(this.spec,t.spec)}destroy(){}}class Ko{constructor(t,e,r){this.from=t;this.to=e;this.type=r}copy(t,e){return new Ko(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,r){return this.type.map(t,this,e,r)}static widget(t,e,r){return new Ko(t,t,new Uo(e,r))}static inline(t,e,r,i){return new Ko(t,e,new Ho(r,i))}static node(t,e,r,i){return new Ko(t,e,new Zo(r,i))}get spec(){return this.type.spec}get inline(){return this.type instanceof Ho}get widget(){return this.type instanceof Uo}}const Vo=[],Go={};class Xo{constructor(t,e){this.local=t.length?t:Vo;this.children=e.length?e:Vo}static create(t,e){return e.length?su(e,t,0,Go):Yo}find(t,e,r){let i=[];this.findInner(t==null?0:t,e==null?1e9:e,i,0,r);return i}findInner(t,e,r,i,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)))r.push(l.copy(l.from+i,l.to+i))}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,r,i+l,n)}}}map(t,e,r){if(this==Yo||t.maps.length==0)return this;return this.mapInner(t,e,0,0,r||Go)}mapInner(t,e,r,i,n){let s;for(let l=0;l<this.local.length;l++){let o=this.local[l].map(t,r,i);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 tu(this.children,s||[],t,e,r,i,n);else return s?new Xo(s.sort(lu),Vo):Yo}add(t,e){if(!e.length)return this;if(this==Yo)return Xo.create(t,e);return this.addInner(t,e,0)}addInner(t,e,r){let i,n=0;t.forEach(((t,s)=>{let l=s+r,o;if(!(o=iu(e,t,l)))return;if(!i)i=this.children.slice();while(n<i.length&&i[n]<s)n+=3;if(i[n]==s)i[n+2]=i[n+2].addInner(t,o,l+1);else i.splice(n,0,s,s+t.nodeSize,su(o,t,l+1,Go));n+=3}));let s=eu(n?nu(e):e,-r);for(let e=0;e<s.length;e++)if(!s[e].type.valid(t,s[e]))s.splice(e--,1);return new Xo(s.length?this.local.concat(s).sort(lu):this.local,i||this.children)}remove(t){if(t.length==0||this==Yo)return this;return this.removeInner(t,0)}removeInner(t,e){let r=this.children,i=this.local;for(let i=0;i<r.length;i+=3){let n;let s=r[i]+e,l=r[i+1]+e;for(let e=0,r;e<t.length;e++)if(r=t[e]){if(r.from>s&&r.to<l){t[e]=null;(n||(n=[])).push(r)}}if(!n)continue;if(r==this.children)r=this.children.slice();let o=r[i+2].removeInner(n,s+1);if(o!=Yo){r[i+2]=o}else{r.splice(i,3);i-=3}}if(i.length)for(let r=0,n;r<t.length;r++)if(n=t[r]){for(let t=0;t<i.length;t++)if(i[t].eq(n,e)){if(i==this.local)i=this.local.slice();i.splice(t--,1)}}if(r==this.children&&i==this.local)return this;return i.length||r.length?new Xo(i,r):Yo}forChild(t,e){if(this==Yo)return this;if(e.isLeaf)return Xo.empty;let r,i;for(let e=0;e<this.children.length;e+=3)if(this.children[e]>=t){if(this.children[e]==t)r=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 Ho){let t=Math.max(n,e.from)-n,r=Math.min(s,e.to)-n;if(t<r)(i||(i=[])).push(e.copy(t,r))}}if(i){let t=new Xo(i.sort(lu),Vo);return r?new Qo([t,r]):t}return r||Yo}eq(t){if(this==t)return true;if(!(t instanceof Xo)||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 ou(this.localsInner(t))}localsInner(t){if(this==Yo)return Vo;if(t.inlineContent||!this.local.some(Ho.is))return this.local;let e=[];for(let t=0;t<this.local.length;t++){if(!(this.local[t].type instanceof Ho))e.push(this.local[t])}return e}}Xo.empty=new Xo([],[]);Xo.removeOverlap=ou;const Yo=Xo.empty;class Qo{constructor(t){this.members=t}map(t,e){const r=this.members.map((r=>r.map(t,e,Go)));return Qo.from(r)}forChild(t,e){if(e.isLeaf)return Xo.empty;let r=[];for(let i=0;i<this.members.length;i++){let n=this.members[i].forChild(t,e);if(n==Yo)continue;if(n instanceof Qo)r=r.concat(n.members);else r.push(n)}return Qo.from(r)}eq(t){if(!(t instanceof Qo)||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,r=true;for(let i=0;i<this.members.length;i++){let n=this.members[i].localsInner(t);if(!n.length)continue;if(!e){e=n}else{if(r){e=e.slice();r=false}for(let t=0;t<n.length;t++)e.push(n[t])}}return e?ou(r?e:e.sort(lu)):Vo}static from(t){switch(t.length){case 0:return Yo;case 1:return t[0];default:return new Qo(t.every((t=>t instanceof Xo))?t:t.reduce(((t,e)=>t.concat(e instanceof Xo?e:e.members)),[]))}}}function tu(t,e,r,i,n,s,l){let o=t.slice();for(let t=0,e=s;t<r.maps.length;t++){let i=0;r.maps[t].forEach(((t,r,n,s)=>{let l=s-n-(r-t);for(let n=0;n<o.length;n+=3){let s=o[n+1];if(s<0||t>s+e-i)continue;let u=o[n]+e-i;if(r>=u){o[n+1]=t<=u?-2:-1}else if(t>=e&&l){o[n]+=l;o[n+1]+=l}}i+=l}));e=r.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=r.map(t[e]+s),h=f-n;if(h<0||h>=i.content.size){u=true;continue}let a=r.map(t[e+1]+s,-1),c=a-n;let{index:d,offset:p}=i.content.findIndex(h);let m=i.maybeChild(d);if(m&&p==h&&p+m.nodeSize==c){let i=o[e+2].mapInner(r,m,f+1,t[e]+s+1,l);if(i!=Yo){o[e]=h;o[e+1]=c;o[e+2]=i}else{o[e+1]=-2;u=true}}else{u=true}}if(u){let u=ru(o,t,e,r,n,s,l);let f=su(u,i,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 r=f.children[t];while(e<o.length&&o[e]<r)e+=3;o.splice(e,0,f.children[t],f.children[t+1],f.children[t+2])}}return new Xo(e.sort(lu),o)}function eu(t,e){if(!e||!t.length)return t;let r=[];for(let i=0;i<t.length;i++){let n=t[i];r.push(new Ko(n.from+e,n.to+e,n.type))}return r}function ru(t,e,r,i,n,s,l){function o(t,e){for(let s=0;s<t.local.length;s++){let o=t.local[s].map(i,n,e);if(o)r.push(o);else if(l.onRemove)l.onRemove(t.local[s].spec)}for(let r=0;r<t.children.length;r+=3)o(t.children[r+2],t.children[r]+e+1)}for(let r=0;r<t.length;r+=3)if(t[r+1]==-1)o(t[r+2],e[r]+s+1);return r}function iu(t,e,r){if(e.isLeaf)return null;let i=r+e.nodeSize,n=null;for(let e=0,s;e<t.length;e++){if((s=t[e])&&s.from>r&&s.to<i){(n||(n=[])).push(s);t[e]=null}}return n}function nu(t){let e=[];for(let r=0;r<t.length;r++)if(t[r]!=null)e.push(t[r]);return e}function su(t,e,r,i){let n=[],s=false;e.forEach(((e,l)=>{let o=iu(t,e,l+r);if(o){s=true;let t=su(o,e,r+l+1,i);if(t!=Yo)n.push(l,l+e.nodeSize,t)}}));let l=eu(s?nu(t):t,-r).sort(lu);for(let t=0;t<l.length;t++)if(!l[t].type.valid(e,l[t])){if(i.onRemove)i.onRemove(l[t].spec);l.splice(t--,1)}return l.length||n.length?new Xo(l,n):Yo}function lu(t,e){return t.from-e.from||t.to-e.to}function ou(t){let e=t;for(let r=0;r<e.length-1;r++){let i=e[r];if(i.from!=i.to)for(let n=r+1;n<e.length;n++){let s=e[n];if(s.from==i.from){if(s.to!=i.to){if(e==t)e=t.slice();e[n]=s.copy(s.from,i.to);uu(e,n+1,s.copy(i.to,s.to))}continue}else{if(s.from<i.to){if(e==t)e=t.slice();e[r]=i.copy(i.from,s.from);uu(e,n,i.copy(s.from,i.to))}break}}}return e}function uu(t,e,r){while(e<t.length&&lu(r,t[e])>0)e++;t.splice(e,0,r)}function fu(t){let e=[];t.someProp("decorations",(r=>{let i=r(t.state);if(i&&i!=Yo)e.push(i)}));if(t.cursorWrapper)e.push(Xo.create(t.state.doc,[t.cursorWrapper.deco]));return Qo.from(e)}const hu={childList:true,characterData:true,characterDataOldValue:true,attributes:true,attributeOldValue:true,subtree:true};const au=Jn&&Ln<=11;class cu{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 du{constructor(t,e){this.view=t;this.handleDOMChange=e;this.queue=[];this.flushingSoon=-1;this.observer=null;this.currentSelection=new cu;this.onCharData=null;this.suppressingSelectionUpdates=false;this.observer=window.MutationObserver&&new window.MutationObserver((t=>{for(let e=0;e<t.length;e++)this.queue.push(t[e]);if(Jn&&Ln<=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(au){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,hu)}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(!yl(this.view))return;if(this.suppressingSelectionUpdates)return cl(this.view);if(Jn&&Ln<=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,r;for(let r=t.focusNode;r;r=Fn(r))e.add(r);for(let i=t.anchorNode;i;i=Fn(i))if(e.has(i)){r=i;break}let i=r&&this.view.docView.nearestDesc(r);if(i&&i.ignoreMutation({type:"selection",target:r.nodeType==3?r.parentNode:r})){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 r=t.domSelectionRange();let i=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(r)&&yl(t)&&!this.ignoreSelectionChange(r);let n=-1,s=-1,l=false,o=[];if(t.editable){for(let t=0;t<e.length;t++){let r=this.registerMutation(e[t],o);if(r){n=n<0?r.from:Math.min(r.from,n);s=s<0?r.to:Math.max(r.to,s);if(r.typeOver)l=true}}}if(Wn&&o.length>1){let t=o.filter((t=>t.nodeName=="BR"));if(t.length==2){let e=t[0],r=t[1];if(e.parentNode&&e.parentNode.parentNode==r.parentNode)r.remove();else e.remove()}}let u=null;if(n<0&&i&&t.input.lastFocus>Date.now()-200&&Math.max(t.input.lastTouch,t.input.lastClick.time)<Date.now()-300&&_n(r)&&(u=hl(t))&&u.eq(Vi.near(t.state.doc.resolve(0),1))){t.input.lastFocus=0;cl(t);this.currentSelection.set(r);t.scrollToSelection()}else if(n>-1||i){if(n>-1){t.docView.markDirty(n,s);wu(t)}this.handleDOMChange(n,s,l,o);if(t.docView&&t.docView.dirty)t.updateState(t.state);else if(!this.currentSelection.eq(r))cl(t);this.currentSelection.set(r)}}registerMutation(t,e){if(e.indexOf(t.target)>-1)return null;let r=this.view.docView.nearestDesc(t.target);if(t.type=="attributes"&&(r==this.view.docView||t.attributeName=="contenteditable"||t.attributeName=="style"&&!t.oldValue&&!t.target.getAttribute("style")))return null;if(!r||r.ignoreMutation(t))return null;if(t.type=="childList"){for(let r=0;r<t.addedNodes.length;r++)e.push(t.addedNodes[r]);if(r.contentDOM&&r.contentDOM!=r.dom&&!r.contentDOM.contains(t.target))return{from:r.posBefore,to:r.posAfter};let i=t.previousSibling,n=t.nextSibling;if(Jn&&Ln<=11&&t.addedNodes.length){for(let e=0;e<t.addedNodes.length;e++){let{previousSibling:r,nextSibling:s}=t.addedNodes[e];if(!r||Array.prototype.indexOf.call(t.addedNodes,r)<0)i=r;if(!s||Array.prototype.indexOf.call(t.addedNodes,s)<0)n=s}}let s=i&&i.parentNode==t.target?yn(i)+1:0;let l=r.localPosFromDOM(t.target,s,-1);let o=n&&n.parentNode==t.target?yn(n):t.target.childNodes.length;let u=r.localPosFromDOM(t.target,o,1);return{from:l,to:u}}else if(t.type=="attributes"){return{from:r.posAtStart-r.border,to:r.posAtEnd+r.border}}else{return{from:r.posAtStart,to:r.posAtEnd,typeOver:t.target.nodeValue==t.oldValue}}}}let pu=new WeakMap;let mu=false;function wu(t){if(pu.has(t))return;pu.set(t,null);if(["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1){t.requiresGeckoHackNode=Wn;if(mu)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.");mu=true}}function gu(t){let e;function r(t){t.preventDefault();t.stopImmediatePropagation();e=t.getTargetRanges()[0]}t.dom.addEventListener("beforeinput",r,true);document.execCommand("indent");t.dom.removeEventListener("beforeinput",r,true);let i=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))[i,n,s,l]=[s,l,i,n];return{anchorNode:i,anchorOffset:n,focusNode:s,focusOffset:l}}function bu(t,e,r){let{node:i,fromOffset:n,toOffset:s,from:l,to:o}=t.docView.parseRange(e,r);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(Hn&&t.input.lastKeyCode===8){for(let t=s;t>n;t--){let e=i.childNodes[t-1],r=e.pmViewDesc;if(e.nodeName=="BR"&&!r){s=t;break}if(!r||r.size)break}}let a=t.state.doc;let c=t.someProp("domParser")||gr.fromSchema(t.state.schema);let d=a.resolve(l);let p=null,m=c.parse(i,{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:ku,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 ku(t){let e=t.pmViewDesc;if(e){return e.parseRule()}else if(t.nodeName=="BR"&&t.parentNode){if(Kn&&/^(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||Kn&&/^(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 Du=/^(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 vu(t,e,r,i,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 r=hl(t,e);if(r&&!t.state.selection.eq(r)){if(Hn&&Yn&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",(e=>e(t,Bn(13,"Enter")))))return;let i=t.state.tr.setSelection(r);if(e=="pointer")i.setMeta("pointer",true);else if(e=="key")i.scrollIntoView();if(s)i.setMeta("composition",s);t.dispatch(i)}return}let l=t.state.doc.resolve(e);let o=l.sharedDepth(r);e=l.before(o+1);r=t.state.doc.resolve(r).after(o+1);let u=t.state.selection;let f=bu(t,e,r);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((Vn&&t.input.lastIOSEnter>Date.now()-225||Yn)&&n.some((t=>t.nodeType==1&&!Du.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,Bn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(!p){if(i&&u instanceof Qi&&!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=yu(t,t.state.doc,f.sel);if(e&&!e.eq(t.state.selection)){let r=t.state.tr.setSelection(e);if(s)r.setMeta("composition",s);t.dispatch(r)}}return}}if(Hn&&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 Qi){if(p.start>t.state.selection.from&&p.start<=t.state.selection.from+2&&t.state.selection.from>=f.from){p.start=t.state.selection.from}else if(p.endA<t.state.selection.to&&p.endA>=t.state.selection.to-2&&t.state.selection.to<=f.to){p.endB+=t.state.selection.to-p.endA;p.endA=t.state.selection.to}}if(Jn&&Ln<=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((Vn&&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=Vi.findFrom(f.doc.resolve(m.pos+1),1,true))&&k.head==w.pos)&&t.someProp("handleKeyDown",(e=>e(t,Bn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&Eu(h,p.start,p.endA,m,w)&&t.someProp("handleKeyDown",(e=>e(t,Bn(8,"Backspace"))))){if(Yn&&Hn)t.domObserver.suppressSelectionUpdates();return}if(Hn&&Yn&&p.endB==p.start)t.input.lastAndroidDelete=Date.now();if(Yn&&!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,Bn(13,"Enter"))}))}),20)}let D=p.start,v=p.endA;let y,F,E;if(b){if(m.pos==w.pos){if(Jn&&Ln<=11&&m.parentOffset==0){t.domObserver.suppressSelectionUpdates();setTimeout((()=>cl(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=Fu(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",(r=>r(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=yu(t,y.doc,f.sel);if(e&&!(Hn&&Yn&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(e.head==D||e.head==y.mapping.map(v)-1)||Jn&&e.empty&&e.head==D))y.setSelection(e)}if(F)y.ensureMarks(F);if(s)y.setMeta("composition",s);t.dispatch(y.scrollIntoView())}function yu(t,e,r){if(Math.max(r.anchor,r.head)>e.content.size)return null;return vl(t,e.resolve(r.anchor),e.resolve(r.head))}function Fu(t,e){let r=t.firstChild.marks,i=e.firstChild.marks;let n=r,s=i,l,o,u;for(let t=0;t<i.length;t++)n=i[t].removeFromSet(n);for(let t=0;t<r.length;t++)s=r[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(ge.from(f).eq(t))return{mark:o,type:l}}function Eu(t,e,r,i,n){if(!i.parent.isTextblock||r-e<=n.pos-i.pos||Mu(i,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(Mu(s,true,true));if(!l.parent.isTextblock||l.pos>r||Mu(l,true,false)<r)return false;return i.parent.content.cut(i.parentOffset).eq(l.parent.content)}function Mu(t,e,r){let i=t.depth,n=e?t.end():t.pos;while(i>0&&(e||t.indexAfter(i)==t.node(i).childCount)){i--;n++;e=false}if(r){let e=t.node(i).maybeChild(t.indexAfter(i));while(e&&!e.isLeaf){e=e.firstChild;n++}}return n}function xu(t,e,r,i,n){let s=t.findDiffStart(e,r);if(s==null)return null;let{a:l,b:o}=t.findDiffEnd(e,r+t.size,r+e.size);if(n=="end"){let t=Math.max(0,s-Math.min(l,o));i-=l+t-s}if(l<s&&t.size<e.size){let t=i<=s&&i>=l?s-i:0;s-=t;if(s&&s<e.size&&Au(e.textBetween(s-1,s+1)))s+=t?1:-1;o=s+(o-l);l=s}else if(o<s){let e=i<=s&&i>=o?s-i:0;s-=e;if(s&&s<t.size&&Au(t.textBetween(s-1,s+1)))s+=e?1:-1;l=s+(l-o);o=s}return{start:s,endA:l,endB:o}}function Au(t){if(t.length!=2)return false;let e=t.charCodeAt(0),r=t.charCodeAt(1);return e>=56320&&e<=57343&&r>=55296&&r<=56319}class Cu{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 uo;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=$u(this);Ou(this);this.nodeViews=Bu(this);this.docView=Ls(this.state.doc,Su(this),fu(this),this.dom,this);this.domObserver=new du(this,((t,e,r,i)=>vu(this,t,e,r,i)));this.domObserver.start();fo(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)co(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 r in t)e[r]=t[r];this.update(e)}updateState(t){this.updateStateInner(t,this._props)}updateStateInner(t,e){var r;let i=this.state,n=false,s=false;if(t.storedMarks&&this.composing){Bo(this);s=true}this.state=t;let l=i.plugins!=t.plugins||this._props.plugins!=e.plugins;if(l||this._props.plugins!=e.plugins||this._props.nodeViews!=e.nodeViews){let t=Bu(this);if(Ru(t,this.nodeViews)){this.nodeViews=t;n=true}}if(l||e.handleDOMEvents!=this._props.handleDOMEvents){co(this)}this.editable=$u(this);Ou(this);let o=fu(this),u=Su(this);let f=i.plugins!=t.plugins&&!i.doc.eq(t.doc)?"reset":t.scrollToSelection>i.scrollToSelection?"to selection":"preserve";let h=n||!this.docView.matchesNode(t.doc,u,o);if(h||!t.selection.eq(i.selection))s=true;let a=f=="preserve"&&s&&this.dom.style.overflowAnchor==null&&ss(this);if(s){this.domObserver.stop();let e=h&&(Jn||Hn)&&!this.composing&&!i.selection.empty&&!t.selection.empty&&_u(i.selection,t.selection);if(h){let r=Hn?this.trackWrites=this.domSelectionRange().focusNode:null;if(n||!this.docView.update(t.doc,u,o,this)){this.docView.updateOuterDeco([]);this.docView.destroy();this.docView=Ls(t.doc,u,o,this.dom,this)}if(r&&!this.trackWrites)e=true}if(e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&El(this))){cl(this,e)}else{kl(this,t.selection);this.domObserver.setCurSelection()}this.domObserver.start()}this.updatePluginViews(i);if(((r=this.dragging)===null||r===void 0?void 0:r.node)&&!i.doc.eq(t.doc))this.updateDraggedNode(this.dragging,i);if(f=="reset"){this.dom.scrollTop=0}else if(f=="to selection"){this.scrollToSelection()}else if(a){us(a)}}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof en){let e=this.docView.domAfterPos(this.state.selection.from);if(e.nodeType==1)ns(this,e.getBoundingClientRect(),t)}else{ns(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 r=this.pluginViews[e];if(r.update)r.update(this,t)}}}updateDraggedNode(t,e){let r=t.node,i=-1;if(this.state.doc.nodeAt(r.from)==r.node){i=r.from}else{let t=r.from+(this.state.doc.content.size-e.doc.content.size);let n=t>0&&this.state.doc.nodeAt(t);if(n==r.node)i=t}this.dragging=new Jo(t.slice,t.move,i<0?undefined:en.create(this.state.doc,i))}someProp(t,e){let r=this._props&&this._props[t],i;if(r!=null&&(i=e?e(r):r))return i;for(let r=0;r<this.directPlugins.length;r++){let n=this.directPlugins[r].props[t];if(n!=null&&(i=e?e(n):n))return i}let n=this.state.plugins;if(n)for(let r=0;r<n.length;r++){let s=n[r].props[t];if(s!=null&&(i=e?e(s):s))return i}}hasFocus(){if(Jn){let t=this.root.activeElement;if(t==this.dom)return true;if(!t||!this.dom.contains(t))return false;while(t&&this.dom!=t&&this.dom.contains(t)){if(t.contentEditable=="false")return false;t=t.parentElement}return true}return this.root.activeElement==this.dom}focus(){this.domObserver.stop();if(this.editable)as(this.dom);cl(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 ks(this,t)}coordsAtPos(t,e=1){return Fs(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,r=-1){let i=this.docView.posFromDOM(t,e,r);if(i==null)throw new RangeError("DOM position not inside the editor");return i}endOfTextblock(t,e){return Bs(this,e||this.state,t)}pasteHTML(t,e){return Io(this,"",t,false,e||new ClipboardEvent("paste"))}pasteText(t,e){return Io(this,t,null,true,e||new ClipboardEvent("paste"))}destroy(){if(!this.docView)return;ao(this);this.destroyPluginViews();if(this.mounted){this.docView.update(this.state.doc,[],fu(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 wo(this,t)}dispatch(t){let e=this._props.dispatchTransaction;if(e)e.call(this,t);else this.updateState(this.state.apply(t))}domSelectionRange(){return Kn&&this.root.nodeType===11&&Rn(this.dom.ownerDocument)==this.dom?gu(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function Su(t){let e=Object.create(null);e.class="ProseMirror";e.contenteditable=String(t.editable);t.someProp("attributes",(r=>{if(typeof r=="function")r=r(t.state);if(r)for(let t in r){if(t=="class")e.class+=" "+r[t];else if(t=="style")e.style=(e.style?e.style+";":"")+r[t];else if(!e[t]&&t!="contenteditable"&&t!="nodeName")e[t]=String(r[t])}}));if(!e.translate)e.translate="no";return[Ko.node(0,t.state.doc.content.size,e)]}function Ou(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:Ko.widget(t.state.selection.head,e,{raw:true,marks:t.markCursor})}}else{t.cursorWrapper=null}}function $u(t){return!t.someProp("editable",(e=>e(t.state)===false))}function _u(t,e){let r=Math.min(t.$anchor.sharedDepth(t.head),e.$anchor.sharedDepth(e.head));return t.$anchor.start(r)!=e.$anchor.start(r)}function Bu(t){let e=Object.create(null);function r(t){for(let r in t)if(!Object.prototype.hasOwnProperty.call(e,r))e[r]=t[r]}t.someProp("nodeViews",r);t.someProp("markViews",r);return e}function Ru(t,e){let r=0,i=0;for(let i in t){if(t[i]!=e[i])return true;r++}for(let t in e)i++;return r!=i}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 Nu=["p",0],qu=["blockquote",0],zu=["hr"],Tu=["pre",["code",0]],Iu=["br"];const Pu={doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return Nu}},blockquote:{content:"block+",group:"block",defining:true,parseDOM:[{tag:"blockquote"}],toDOM(){return qu}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return zu}},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:r,title:i}=t.attrs;return["img",{src:e,alt:r,title:i}]}},hard_break:{inline:true,group:"inline",selectable:false,parseDOM:[{tag:"br"}],toDOM(){return Iu}}};const Ju=["em",0],Lu=["strong",0],Wu=["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:r}=t.attrs;return["a",{href:e,title:r},0]}},em:{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"},{style:"font-style=normal",clearMark:t=>t.type.name=="em"}],toDOM(){return Ju}},strong:{parseDOM:[{tag:"strong"},{tag:"b",getAttrs:t=>t.style.fontWeight!="normal"&&null},{style:"font-weight=400",clearMark:t=>t.type.name=="strong"},{style:"font-weight",getAttrs:t=>/^(bold(er)?|[5-9]\d{2,})$/.test(t)&&null}],toDOM(){return Lu}},code:{parseDOM:[{tag:"code"}],toDOM(){return Wu}}};const Hu=new dr({nodes:Pu,marks:Uu});const Zu=["ol",0],Ku=["ul",0],Vu=["li",0];const Gu={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?Zu:["ol",{start:t.attrs.order},0]}};const Xu={parseDOM:[{tag:"ul"}],toDOM(){return Ku}};const Yu={parseDOM:[{tag:"li"}],toDOM(){return Vu},defining:true};function Qu(t,e){let r={};for(let e in t)r[e]=t[e];for(let t in e)r[t]=e[t];return r}function tf(t,e,r){return t.append({ordered_list:Qu(Gu,{content:"list_item+",group:r}),bullet_list:Qu(Xu,{content:"list_item+",group:r}),list_item:Qu(Yu,{content:e})})}function ef(t,e=null){return function(r,i){let{$from:n,$to:s}=r.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=r.doc.resolve(l.start-2);u=new Ie(t,t,l.depth);if(l.endIndex<l.parent.childCount)l=new Ie(n,r.doc.resolve(s.end(l.depth)),l.depth);o=true}let f=di(u,t,e,l);if(!f)return false;if(i)i(rf(r.tr,l,f,o,t).scrollIntoView());return true}}function rf(t,e,r,i,n){let s=ge.empty;for(let t=r.length-1;t>=0;t--)s=ge.from(r[t].type.create(r[t].attrs,s));t.step(new si(e.start-(i?2:0),e.end,e.start,e.end,new Fe(s,0,0),r.length,true));let l=0;for(let t=0;t<r.length;t++)if(r[t].type==n)l=t+1;let o=r.length-l;let u=e.start+r.length-(i?2:0),f=e.parent;for(let r=e.startIndex,i=e.endIndex,n=true;r<i;r++,n=false){if(!n&&vi(t.doc,u,o)){t.split(u,o);u+=2*o}u+=f.child(r).nodeSize}return t}function nf(t,e){return function(r,i){let{$from:n,$to:s,node:l}=r.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(i){let e=ge.empty;let s=n.index(-1)?1:n.index(-2)?2:3;for(let t=n.depth-s;t>=n.depth-3;t--)e=ge.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(ge.from(t.createAndFill()));let o=n.before(n.depth-(s-1));let u=r.tr.replace(o,n.after(-l),new Fe(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(Vi.near(u.doc.resolve(f)));i(u.scrollIntoView())}return true}let u=s.pos==n.end()?o.contentMatchAt(0).defaultType:null;let f=r.tr.delete(n.pos,s.pos);let h=u?[e?{type:t,attrs:e}:null,{type:u}]:undefined;if(!vi(f.doc,n.pos,2,h))return false;if(i)i(f.split(n.pos,2,h).scrollIntoView());return true}}function sf(t){return function(e,r){let{$from:i,$to:n}=e.selection;let s=i.blockRange(n,(e=>e.childCount>0&&e.firstChild.type==t));if(!s)return false;if(!r)return true;if(i.node(s.depth-1).type==t)return lf(e,r,t,s);else return of(e,r,s)}}function lf(t,e,r,i){let n=t.tr,s=i.end,l=i.$to.end(i.depth);if(s<l){n.step(new si(s-1,l,s,l,new Fe(ge.from(r.create(null,i.parent.copy())),1,0),1,true));i=new Ie(n.doc.resolve(i.$from.pos),n.doc.resolve(l),i.depth)}const o=ai(i);if(o==null)return false;n.lift(i,o);let u=n.mapping.map(s,-1)-1;if(Fi(n.doc,u))n.join(u);e(n.scrollIntoView());return true}function of(t,e,r){let i=t.tr,n=r.parent;for(let t=r.end,e=r.endIndex-1,s=r.startIndex;e>s;e--){t-=n.child(e).nodeSize;i.delete(t-1,t+1)}let s=i.doc.resolve(r.start),l=s.nodeAfter;if(i.mapping.map(r.end)!=r.start+s.nodeAfter.nodeSize)return false;let o=r.startIndex==0,u=r.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?ge.empty:ge.from(n))))return false;let a=s.pos,c=a+l.nodeSize;i.step(new si(a-(o?1:0),c+(u?1:0),a+1,c-1,new Fe((o?ge.empty:ge.from(n.copy(ge.empty))).append(u?ge.empty:ge.from(n.copy(ge.empty))),o?0:1,u?0:1),o?0:1));e(i.scrollIntoView());return true}function uf(t){return function(e,r){let{$from:i,$to:n}=e.selection;let s=i.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(r){let i=u.lastChild&&u.lastChild.type==o.type;let n=ge.from(i?t.create():null);let l=new Fe(ge.from(t.create(null,ge.from(o.type.create(null,n)))),i?3:1,0);let f=s.start,h=s.end;r(e.tr.step(new si(f-(i?3:1),h,f,h,l,1,true)).scrollIntoView())}return true}}var ff={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 hf={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 af=typeof navigator!="undefined"&&/Mac/.test(navigator.platform);var cf=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var df=0;df<10;df++)ff[48+df]=ff[96+df]=String(df);for(var df=1;df<=24;df++)ff[df+111]="F"+df;for(var df=65;df<=90;df++){ff[df]=String.fromCharCode(df+32);hf[df]=String.fromCharCode(df)}for(var pf in ff)if(!hf.hasOwnProperty(pf))hf[pf]=ff[pf];function mf(t){var e=af&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||cf&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified";var r=!e&&t.key||(t.shiftKey?hf:ff)[t.keyCode]||t.key||"Unidentified";if(r=="Esc")r="Escape";if(r=="Del")r="Delete";if(r=="Left")r="ArrowLeft";if(r=="Up")r="ArrowUp";if(r=="Right")r="ArrowRight";if(r=="Down")r="ArrowDown";return r}const wf=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function gf(t){let e=t.split(/-(?!$)/),r=e[e.length-1];if(r=="Space")r=" ";let i,n,s,l;for(let t=0;t<e.length-1;t++){let r=e[t];if(/^(cmd|meta|m)$/i.test(r))l=true;else if(/^a(lt)?$/i.test(r))i=true;else if(/^(c|ctrl|control)$/i.test(r))n=true;else if(/^s(hift)?$/i.test(r))s=true;else if(/^mod$/i.test(r)){if(wf)l=true;else n=true}else throw new Error("Unrecognized modifier name: "+r)}if(i)r="Alt-"+r;if(n)r="Ctrl-"+r;if(l)r="Meta-"+r;if(s)r="Shift-"+r;return r}function bf(t){let e=Object.create(null);for(let r in t)e[gf(r)]=t[r];return e}function kf(t,e,r=true){if(e.altKey)t="Alt-"+t;if(e.ctrlKey)t="Ctrl-"+t;if(e.metaKey)t="Meta-"+t;if(r&&e.shiftKey)t="Shift-"+t;return t}function Df(t){return new bn({props:{handleKeyDown:vf(t)}})}function vf(t){let e=bf(t);return function(t,r){let i=mf(r),n,s=e[kf(i,r)];if(s&&s(t.state,t.dispatch,t))return true;if(i.length==1&&i!=" "){if(r.shiftKey){let n=e[kf(i,r,false)];if(n&&n(t.state,t.dispatch,t))return true}if((r.shiftKey||r.altKey||r.metaKey||i.charCodeAt(0)>127)&&(n=ff[r.keyCode])&&n!=i){let i=e[kf(n,r)];if(i&&i(t.state,t.dispatch,t))return true}}return false}}var yf=200;var Ff=function t(){};Ff.prototype.append=function t(e){if(!e.length){return this}e=Ff.from(e);return!this.length&&e||e.length<yf&&this.leafAppend(e)||this.length<yf&&e.leafPrepend(this)||this.appendInner(e)};Ff.prototype.prepend=function t(e){if(!e.length){return this}return Ff.from(e).append(this)};Ff.prototype.appendInner=function t(e){return new Mf(this,e)};Ff.prototype.slice=function t(e,r){if(e===void 0)e=0;if(r===void 0)r=this.length;if(e>=r){return Ff.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,r))};Ff.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};Ff.prototype.forEach=function t(e,r,i){if(r===void 0)r=0;if(i===void 0)i=this.length;if(r<=i){this.forEachInner(e,r,i,0)}else{this.forEachInvertedInner(e,r,i,0)}};Ff.prototype.map=function t(e,r,i){if(r===void 0)r=0;if(i===void 0)i=this.length;var n=[];this.forEach((function(t,r){return n.push(e(t,r))}),r,i);return n};Ff.from=function t(e){if(e instanceof Ff){return e}return e&&e.length?new Ef(e):Ff.empty};var Ef=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 r={length:{configurable:true},depth:{configurable:true}};e.prototype.flatten=function t(){return this.values};e.prototype.sliceInner=function t(r,i){if(r==0&&i==this.length){return this}return new e(this.values.slice(r,i))};e.prototype.getInner=function t(e){return this.values[e]};e.prototype.forEachInner=function t(e,r,i,n){for(var s=r;s<i;s++){if(e(this.values[s],n+s)===false){return false}}};e.prototype.forEachInvertedInner=function t(e,r,i,n){for(var s=r-1;s>=i;s--){if(e(this.values[s],n+s)===false){return false}}};e.prototype.leafAppend=function t(r){if(this.length+r.length<=yf){return new e(this.values.concat(r.flatten()))}};e.prototype.leafPrepend=function t(r){if(this.length+r.length<=yf){return new e(r.flatten().concat(this.values))}};r.length.get=function(){return this.values.length};r.depth.get=function(){return 0};Object.defineProperties(e.prototype,r);return e}(Ff);Ff.empty=new Ef([]);var Mf=function(t){function e(e,r){t.call(this);this.left=e;this.right=r;this.length=e.length+r.length;this.depth=Math.max(e.depth,r.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,r,i,n){var s=this.left.length;if(r<s&&this.left.forEachInner(e,r,Math.min(i,s),n)===false){return false}if(i>s&&this.right.forEachInner(e,Math.max(r-s,0),Math.min(this.length,i)-s,n+s)===false){return false}};e.prototype.forEachInvertedInner=function t(e,r,i,n){var s=this.left.length;if(r>s&&this.right.forEachInvertedInner(e,r-s,Math.max(i,s)-s,n+s)===false){return false}if(i<s&&this.left.forEachInvertedInner(e,Math.min(r,s),i,n)===false){return false}};e.prototype.sliceInner=function t(e,r){if(e==0&&r==this.length){return this}var i=this.left.length;if(r<=i){return this.left.slice(e,r)}if(e>=i){return this.right.slice(e-i,r-i)}return this.left.slice(e,i).append(this.right.slice(0,r-i))};e.prototype.leafAppend=function t(r){var i=this.right.leafAppend(r);if(i){return new e(this.left,i)}};e.prototype.leafPrepend=function t(r){var i=this.left.leafPrepend(r);if(i){return new e(i,this.right)}};e.prototype.appendInner=function t(r){if(this.left.depth>=Math.max(this.right.depth,r.depth)+1){return new e(this.left,new e(this.right,r))}return new e(this,r)};return e}(Ff);const xf=500;class Af{constructor(t,e){this.items=t;this.eventCount=e}popEvent(t,e){if(this.eventCount==0)return null;let r=this.items.length;for(;;r--){let t=this.items.get(r-1);if(t.selection){--r;break}}let i,n;if(e){i=this.remapping(r,this.items.length);n=i.maps.length}let s=t.tr;let l,o;let u=[],f=[];this.items.forEach(((t,e)=>{if(!t.step){if(!i){i=this.remapping(r,e+1);n=i.maps.length}n--;f.push(t);return}if(i){f.push(new Sf(t.map));let e=t.step.map(i.slice(n)),r;if(e&&s.maybeStep(e).doc){r=s.mapping.maps[s.mapping.maps.length-1];u.push(new Sf(r,undefined,undefined,u.length+f.length))}n--;if(r)i.appendMap(r,n)}else{s.maybeStep(t.step)}if(t.selection){l=i?t.selection.map(i.slice(n)):t.selection;o=new Af(this.items.slice(0,r).append(f.reverse().concat(u)),this.eventCount-1);return false}}),this.items.length,0);return{remaining:o,transform:s,selection:l}}addTransform(t,e,r,i){let n=[],s=this.eventCount;let l=this.items,o=!i&&l.length?l.get(l.length-1):null;for(let r=0;r<t.steps.length;r++){let u=t.steps[r].invert(t.docs[r]);let f=new Sf(t.mapping.maps[r],u,e),h;if(h=o&&o.merge(f)){f=h;if(r)n.pop();else l=l.slice(0,l.length-1)}n.push(f);if(e){s++;e=undefined}if(!i)o=f}let u=s-r.depth;if(u>$f){l=Cf(l,u);s-=u}return new Af(l.append(n),s)}remapping(t,e){let r=new Vr;this.items.forEach(((e,i)=>{let n=e.mirrorOffset!=null&&i-e.mirrorOffset>=t?r.maps.length-e.mirrorOffset:undefined;r.appendMap(e.map,n)}),t,e);return r}addMaps(t){if(this.eventCount==0)return this;return new Af(this.items.append(t.map((t=>new Sf(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let r=[],i=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--}),i);let o=e;this.items.forEach((e=>{let i=n.getMirror(--o);if(i==null)return;s=Math.min(s,i);let u=n.maps[i];if(e.step){let s=t.steps[i].invert(t.docs[i]);let f=e.selection&&e.selection.map(n.slice(o+1,i));if(f)l++;r.push(new Sf(u,s,f))}else{r.push(new Sf(u))}}),i);let u=[];for(let t=e;t<s;t++)u.push(new Sf(n.maps[t]));let f=this.items.slice(0,i).append(u).append(r);let h=new Af(f,l);if(h.emptyItemCount()>xf)h=h.compress(this.items.length-r.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),r=e.maps.length;let i=[],n=0;this.items.forEach(((s,l)=>{if(l>=t){i.push(s);if(s.selection)n++}else if(s.step){let t=s.step.map(e.slice(r)),l=t&&t.getMap();r--;if(l)e.appendMap(l,r);if(t){let o=s.selection&&s.selection.map(e.slice(r));if(o)n++;let u=new Sf(l.invert(),t,o),f,h=i.length-1;if(f=i.length&&i[h].merge(u))i[h]=f;else i.push(u)}}else if(s.map){r--}}),this.items.length,0);return new Af(Ff.from(i.reverse()),n)}}Af.empty=new Af(Ff.empty,0);function Cf(t,e){let r;t.forEach(((t,i)=>{if(t.selection&&e--==0){r=i;return false}}));return t.slice(r)}class Sf{constructor(t,e,r,i){this.map=t;this.step=e;this.selection=r;this.mirrorOffset=i}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new Sf(e.getMap().invert(),e,this.selection)}}}class Of{constructor(t,e,r,i,n){this.done=t;this.undone=e;this.prevRanges=r;this.prevTime=i;this.prevComposition=n}}const $f=20;function _f(t,e,r,i){let n=r.getMeta(If),s;if(n)return n.historyState;if(r.getMeta(Pf))t=new Of(t.done,t.undone,null,0,-1);let l=r.getMeta("appendedTransaction");if(r.steps.length==0){return t}else if(l&&l.getMeta(If)){if(l.getMeta(If).redo)return new Of(t.done.addTransform(r,undefined,i,Tf(e)),t.undone,Rf(r.mapping.maps[r.steps.length-1]),t.prevTime,t.prevComposition);else return new Of(t.done,t.undone.addTransform(r,undefined,i,Tf(e)),null,t.prevTime,t.prevComposition)}else if(r.getMeta("addToHistory")!==false&&!(l&&l.getMeta("addToHistory")===false)){let n=r.getMeta("composition");let s=t.prevTime==0||!l&&t.prevComposition!=n&&(t.prevTime<(r.time||0)-i.newGroupDelay||!Bf(r,t.prevRanges));let o=l?jf(t.prevRanges,r.mapping):Rf(r.mapping.maps[r.steps.length-1]);return new Of(t.done.addTransform(r,s?e.selection.getBookmark():undefined,i,Tf(e)),Af.empty,o,r.time,n==null?t.prevComposition:n)}else if(s=r.getMeta("rebased")){return new Of(t.done.rebased(r,s),t.undone.rebased(r,s),jf(t.prevRanges,r.mapping),t.prevTime,t.prevComposition)}else{return new Of(t.done.addMaps(r.mapping.maps),t.undone.addMaps(r.mapping.maps),jf(t.prevRanges,r.mapping),t.prevTime,t.prevComposition)}}function Bf(t,e){if(!e)return false;if(!t.docChanged)return true;let r=false;t.mapping.maps[0].forEach(((t,i)=>{for(let n=0;n<e.length;n+=2)if(t<=e[n+1]&&i>=e[n])r=true}));return r}function Rf(t){let e=[];t.forEach(((t,r,i,n)=>e.push(i,n)));return e}function jf(t,e){if(!t)return null;let r=[];for(let i=0;i<t.length;i+=2){let n=e.map(t[i],1),s=e.map(t[i+1],-1);if(n<=s)r.push(n,s)}return r}function Nf(t,e,r,i){let n=Tf(e);let s=If.get(e).spec.config;let l=(i?t.undone:t.done).popEvent(e,n);if(!l)return;let o=l.selection.resolve(l.transform.doc);let u=(i?t.done:t.undone).addTransform(l.transform,e.selection.getBookmark(),s,n);let f=new Of(i?u:l.remaining,i?l.remaining:u,null,0,-1);r(l.transform.setSelection(o).setMeta(If,{redo:i,historyState:f}).scrollIntoView())}let qf=false,zf=null;function Tf(t){let e=t.plugins;if(zf!=e){qf=false;zf=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){qf=true;break}}return qf}const If=new vn("history");const Pf=new vn("closeHistory");function Jf(t={}){t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500};return new bn({key:If,state:{init(){return new Of(Af.empty,Af.empty,null,0,-1)},apply(e,r,i){return _f(r,i,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(t,e){let r=e.inputType;let i=r=="historyUndo"?Lf:r=="historyRedo"?Wf:null;if(!i)return false;e.preventDefault();return i(t.state,t.dispatch)}}}})}const Lf=(t,e)=>{let r=If.getState(t);if(!r||r.done.eventCount==0)return false;if(e)Nf(r,t,e,false);return true};const Wf=(t,e)=>{let r=If.getState(t);if(!r||r.undone.eventCount==0)return false;if(e)Nf(r,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 Hf(t,e){let{$cursor:r}=t.selection;if(!r||(e?!e.endOfTextblock("backward",t):r.parentOffset>0))return null;return r}const Zf=(t,e,r)=>{let i=Hf(t,r);if(!i)return false;let n=Gf(i);if(!n){let r=i.blockRange(),n=r&&ai(r);if(n==null)return false;if(e)e(t.tr.lift(r,n).scrollIntoView());return true}let s=n.nodeBefore;if(!s.type.spec.isolating&&ph(t,n,e))return true;if(i.parent.content.size==0&&(Kf(s,"end")||en.isSelectable(s))){let r=Si(t.doc,i.before(),i.after(),Fe.empty);if(r&&r.slice.size<r.to-r.from){if(e){let i=t.tr.step(r);i.setSelection(Kf(s,"end")?Vi.findFrom(i.doc.resolve(i.mapping.map(n.pos,-1)),-1):en.create(i.doc,n.pos-s.nodeSize));e(i.scrollIntoView())}return true}}if(s.isAtom&&n.depth==i.depth-1){if(e)e(t.tr.delete(n.pos-s.nodeSize,n.pos).scrollIntoView());return true}return false};function Kf(t,e,r=false){for(let i=t;i;i=e=="start"?i.firstChild:i.lastChild){if(i.isTextblock)return true;if(r&&i.childCount!=1)return false}return false}const Vf=(t,e,r)=>{let{$head:i,empty:n}=t.selection,s=i;if(!n)return false;if(i.parent.isTextblock){if(r?!r.endOfTextblock("backward",t):i.parentOffset>0)return false;s=Gf(i)}let l=s&&s.nodeBefore;if(!l||!en.isSelectable(l))return false;if(e)e(t.tr.setSelection(en.create(t.doc,s.pos-l.nodeSize)).scrollIntoView());return true};function Gf(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 Xf(t,e){let{$cursor:r}=t.selection;if(!r||(e?!e.endOfTextblock("forward",t):r.parentOffset<r.parent.content.size))return null;return r}const Yf=(t,e,r)=>{let i=Xf(t,r);if(!i)return false;let n=th(i);if(!n)return false;let s=n.nodeAfter;if(ph(t,n,e))return true;if(i.parent.content.size==0&&(Kf(s,"start")||en.isSelectable(s))){let r=Si(t.doc,i.before(),i.after(),Fe.empty);if(r&&r.slice.size<r.to-r.from){if(e){let i=t.tr.step(r);i.setSelection(Kf(s,"start")?Vi.findFrom(i.doc.resolve(i.mapping.map(n.pos)),1):en.create(i.doc,i.mapping.map(n.pos)));e(i.scrollIntoView())}return true}}if(s.isAtom&&n.depth==i.depth-1){if(e)e(t.tr.delete(n.pos,n.pos+s.nodeSize).scrollIntoView());return true}return false};const Qf=(t,e,r)=>{let{$head:i,empty:n}=t.selection,s=i;if(!n)return false;if(i.parent.isTextblock){if(r?!r.endOfTextblock("forward",t):i.parentOffset<i.parent.content.size)return false;s=th(i)}let l=s&&s.nodeAfter;if(!l||!en.isSelectable(l))return false;if(e)e(t.tr.setSelection(en.create(t.doc,s.pos)).scrollIntoView());return true};function th(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let r=t.node(e);if(t.index(e)+1<r.childCount)return t.doc.resolve(t.after(e+1));if(r.type.spec.isolating)break}return null}const eh=(t,e)=>{let r=t.selection,i=r instanceof en,n;if(i){if(r.node.isTextblock||!Fi(t.doc,r.from))return false;n=r.from}else{n=Mi(t.doc,r.from,-1);if(n==null)return false}if(e){let r=t.tr.join(n);if(i)r.setSelection(en.create(r.doc,n-t.doc.resolve(n).nodeBefore.nodeSize));e(r.scrollIntoView())}return true};const rh=(t,e)=>{let r=t.selection,i;if(r instanceof en){if(r.node.isTextblock||!Fi(t.doc,r.to))return false;i=r.to}else{i=Mi(t.doc,r.to,1);if(i==null)return false}if(e)e(t.tr.join(i).scrollIntoView());return true};const ih=(t,e)=>{let{$from:r,$to:i}=t.selection;let n=r.blockRange(i),s=n&&ai(n);if(s==null)return false;if(e)e(t.tr.lift(n,s).scrollIntoView());return true};const nh=(t,e)=>{let{$head:r,$anchor:i}=t.selection;if(!r.parent.type.spec.code||!r.sameParent(i))return false;if(e)e(t.tr.insertText("\n").scrollIntoView());return true};function sh(t){for(let e=0;e<t.edgeCount;e++){let{type:r}=t.edge(e);if(r.isTextblock&&!r.hasRequiredAttrs())return r}return null}const lh=(t,e)=>{let{$head:r,$anchor:i}=t.selection;if(!r.parent.type.spec.code||!r.sameParent(i))return false;let n=r.node(-1),s=r.indexAfter(-1),l=sh(n.contentMatchAt(s));if(!l||!n.canReplaceWith(s,s,l))return false;if(e){let i=r.after(),n=t.tr.replaceWith(i,i,l.createAndFill());n.setSelection(Vi.near(n.doc.resolve(i),1));e(n.scrollIntoView())}return true};const oh=(t,e)=>{let r=t.selection,{$from:i,$to:n}=r;if(r instanceof nn||i.parent.inlineContent||n.parent.inlineContent)return false;let s=sh(n.parent.contentMatchAt(n.indexAfter()));if(!s||!s.isTextblock)return false;if(e){let r=(!i.parentOffset&&n.index()<n.parent.childCount?i:n).pos;let l=t.tr.insert(r,s.createAndFill());l.setSelection(Qi.create(l.doc,r+1));e(l.scrollIntoView())}return true};const uh=(t,e)=>{let{$cursor:r}=t.selection;if(!r||r.parent.content.size)return false;if(r.depth>1&&r.after()!=r.end(-1)){let i=r.before();if(vi(t.doc,i)){if(e)e(t.tr.split(i).scrollIntoView());return true}}let i=r.blockRange(),n=i&&ai(i);if(n==null)return false;if(e)e(t.tr.lift(i,n).scrollIntoView());return true};function fh(t){return(e,r)=>{let{$from:i,$to:n}=e.selection;if(e.selection instanceof en&&e.selection.node.isBlock){if(!i.parentOffset||!vi(e.doc,i.pos))return false;if(r)r(e.tr.split(i.pos).scrollIntoView());return true}if(!i.parent.isBlock)return false;if(r){let s=n.parentOffset==n.parent.content.size;let l=e.tr;if(e.selection instanceof Qi||e.selection instanceof nn)l.deleteSelection();let o=i.depth==0?null:sh(i.node(-1).contentMatchAt(i.indexAfter(-1)));let u=t&&t(n.parent,s);let f=u?[u]:s&&o?[{type:o}]:undefined;let h=vi(l.doc,l.mapping.map(i.pos),1,f);if(!f&&!h&&vi(l.doc,l.mapping.map(i.pos),1,o?[{type:o}]:undefined)){if(o)f=[{type:o}];h=true}if(h){l.split(l.mapping.map(i.pos),1,f);if(!s&&!i.parentOffset&&i.parent.type!=o){let t=l.mapping.map(i.before()),e=l.doc.resolve(t);if(o&&i.node(-1).canReplaceWith(e.index(),e.index()+1,o))l.setNodeMarkup(l.mapping.map(i.before()),o)}}r(l.scrollIntoView())}return true}}const hh=fh();const ah=(t,e)=>{let{$from:r,to:i}=t.selection,n;let s=r.sharedDepth(i);if(s==0)return false;n=r.before(s);if(e)e(t.tr.setSelection(en.create(t.doc,n)));return true};const ch=(t,e)=>{if(e)e(t.tr.setSelection(new nn(t.doc)));return true};function dh(t,e,r){let i=e.nodeBefore,n=e.nodeAfter,s=e.index();if(!i||!n||!i.type.compatibleContent(n.type))return false;if(!i.content.size&&e.parent.canReplace(s-1,s)){if(r)r(t.tr.delete(e.pos-i.nodeSize,e.pos).scrollIntoView());return true}if(!e.parent.canReplace(s,s+1)||!(n.isTextblock||Fi(t.doc,e.pos)))return false;if(r)r(t.tr.clearIncompatible(e.pos,i.type,i.contentMatchAt(i.childCount)).join(e.pos).scrollIntoView());return true}function ph(t,e,r){let i=e.nodeBefore,n=e.nodeAfter,s,l;if(i.type.spec.isolating||n.type.spec.isolating)return false;if(dh(t,e,r))return true;let o=e.parent.canReplace(e.index(),e.index()+1);if(o&&(s=(l=i.contentMatchAt(i.childCount)).findWrapping(n.type))&&l.matchType(s[0]||n.type).validEnd){if(r){let l=e.pos+n.nodeSize,o=ge.empty;for(let t=s.length-1;t>=0;t--)o=ge.from(s[t].create(null,o));o=ge.from(i.copy(o));let u=t.tr.step(new si(e.pos-1,l,e.pos,l,new Fe(o,1,0),s.length,true));let f=l+2*s.length;if(Fi(u.doc,f))u.join(f);r(u.scrollIntoView())}return true}let u=Vi.findFrom(e,1);let f=u&&u.$from.blockRange(u.$to),h=f&&ai(f);if(h!=null&&h>=e.depth){if(r)r(t.tr.lift(f,h).scrollIntoView());return true}if(o&&Kf(n,"start",true)&&Kf(i,"end")){let s=i,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(r){let i=ge.empty;for(let t=l.length-1;t>=0;t--)i=ge.from(l[t].copy(i));let s=t.tr.step(new si(e.pos-l.length,e.pos+n.nodeSize,e.pos+u,e.pos+n.nodeSize-u,new Fe(i,l.length,0),0,true));r(s.scrollIntoView())}return true}}return false}function mh(t){return function(e,r){let i=e.selection,n=t<0?i.$from:i.$to;let s=n.depth;while(n.node(s).isInline){if(!s)return false;s--}if(!n.node(s).isTextblock)return false;if(r)r(e.tr.setSelection(Qi.create(e.doc,t<0?n.start(s):n.end(s))));return true}}const wh=mh(-1);const gh=mh(1);function bh(t,e=null){return function(r,i){let{$from:n,$to:s}=r.selection;let l=n.blockRange(s),o=l&&di(l,t,e);if(!o)return false;if(i)i(r.tr.wrap(l,o).scrollIntoView());return true}}function kh(t,e=null){return function(r,i){let n=false;for(let i=0;i<r.selection.ranges.length&&!n;i++){let{$from:{pos:s},$to:{pos:l}}=r.selection.ranges[i];r.doc.nodesBetween(s,l,((i,s)=>{if(n)return false;if(!i.isTextblock||i.hasMarkup(t,e))return;if(i.type==t){n=true}else{let e=r.doc.resolve(s),i=e.index();n=e.parent.canReplaceWith(i,i+1,t)}}))}if(!n)return false;if(i){let n=r.tr;for(let i=0;i<r.selection.ranges.length;i++){let{$from:{pos:s},$to:{pos:l}}=r.selection.ranges[i];n.setBlockType(s,l,t,e)}i(n.scrollIntoView())}return true}}function Dh(t,e,r){for(let i=0;i<e.length;i++){let{$from:n,$to:s}=e[i];let l=n.depth==0?t.inlineContent&&t.type.allowsMarkType(r):false;t.nodesBetween(n.pos,s.pos,(t=>{if(l)return false;l=t.inlineContent&&t.type.allowsMarkType(r)}));if(l)return true}return false}function vh(t,e=null){return function(r,i){let{empty:n,$cursor:s,ranges:l}=r.selection;if(n&&!s||!Dh(r.doc,l,t))return false;if(i){if(s){if(t.isInSet(r.storedMarks||s.marks()))i(r.tr.removeStoredMark(t));else i(r.tr.addStoredMark(t.create(e)))}else{let n=false,s=r.tr;for(let e=0;!n&&e<l.length;e++){let{$from:i,$to:s}=l[e];n=r.doc.rangeHasMark(i.pos,s.pos,t)}for(let r=0;r<l.length;r++){let{$from:i,$to:o}=l[r];if(n){s.removeMark(i.pos,o.pos,t)}else{let r=i.pos,n=o.pos,l=i.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(r+f<n){r+=f;n-=h}s.addMark(r,n,t.create(e))}}i(s.scrollIntoView())}}return true}}function yh(...t){return function(e,r,i){for(let n=0;n<t.length;n++)if(t[n](e,r,i))return true;return false}}let Fh=yh(Uf,Zf,Vf);let Eh=yh(Uf,Yf,Qf);const Mh={Enter:yh(nh,oh,uh,hh),"Mod-Enter":lh,Backspace:Fh,"Mod-Backspace":Fh,"Shift-Backspace":Fh,Delete:Eh,"Mod-Delete":Eh,"Mod-a":ch};const xh={"Ctrl-h":Mh["Backspace"],"Alt-Backspace":Mh["Mod-Backspace"],"Ctrl-d":Mh["Delete"],"Ctrl-Alt-Backspace":Mh["Mod-Delete"],"Alt-Delete":Mh["Mod-Delete"],"Alt-d":Mh["Mod-Delete"],"Ctrl-a":wh,"Ctrl-e":gh};for(let t in Mh)xh[t]=Mh[t];const Ah=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os!="undefined"&&os.platform?os.platform()=="darwin":false;const Ch=Ah?xh:Mh;function Sh(t={}){return new bn({view(e){return new Oh(e,t)}})}class Oh{constructor(t,e){var r;this.editorView=t;this.cursorPos=null;this.element=null;this.timeout=-1;this.width=(r=e.width)!==null&&r!==void 0?r:1;this.color=e.color===false?undefined:e.color||"black";this.class=e.class;this.handlers=["dragover","dragend","drop","dragleave"].map((e=>{let r=t=>{this[e](t)};t.dom.addEventListener(e,r);return{name:e,handler:r}}))}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,r;if(e){let e=t.nodeBefore,i=t.nodeAfter;if(e||i){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&&i)s=(s+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2;r={left:n.left,right:n.right,top:s-this.width/2,bottom:s+this.width/2}}}}if(!r){let t=this.editorView.coordsAtPos(this.cursorPos);r={left:t.left-this.width/2,right:t.left+this.width/2,top:t.top,bottom:t.bottom}}let i=this.editorView.dom.offsetParent;if(!this.element){this.element=i.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(!i||i==document.body&&getComputedStyle(i).position=="static"){n=-pageXOffset;s=-pageYOffset}else{let t=i.getBoundingClientRect();n=t.left-i.scrollLeft;s=t.top-i.scrollTop}this.element.style.left=r.left-n+"px";this.element.style.top=r.top-s+"px";this.element.style.width=r.right-r.left+"px";this.element.style.height=r.bottom-r.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 r=e&&e.inside>=0&&this.editorView.state.doc.nodeAt(e.inside);let i=r&&r.type.spec.disableDropCursor;let n=typeof i=="function"?i(this.editorView,e,t):i;if(e&&!n){let t=e.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){let e=Ci(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 $h extends Vi{constructor(t){super(t,t)}map(t,e){let r=t.resolve(e.map(this.head));return $h.valid(r)?new $h(r):Vi.near(r)}content(){return Fe.empty}eq(t){return t instanceof $h&&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 $h(t.resolve(e.pos))}getBookmark(){return new _h(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!Bh(t)||!Rh(t))return false;let r=e.type.spec.allowGapCursor;if(r!=null)return r;let i=e.contentMatchAt(t.index()).defaultType;return i&&i.isTextblock}static findGapCursorFrom(t,e,r=false){t:for(;;){if(!r&&$h.valid(t))return t;let i=t.pos,n=null;for(let r=t.depth;;r--){let s=t.node(r);if(e>0?t.indexAfter(r)<s.childCount:t.index(r)>0){n=s.child(e>0?t.indexAfter(r):t.index(r)-1);break}else if(r==0){return null}i+=e;let l=t.doc.resolve(i);if($h.valid(l))return l}for(;;){let s=e>0?n.firstChild:n.lastChild;if(!s){if(n.isAtom&&!n.isText&&!en.isSelectable(n)){t=t.doc.resolve(i+n.nodeSize*e);r=false;continue t}break}n=s;i+=e;let l=t.doc.resolve(i);if($h.valid(l))return l}return null}}}$h.prototype.visible=false;$h.findFrom=$h.findGapCursorFrom;Vi.jsonID("gapcursor",$h);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 $h.valid(e)?new $h(e):Vi.near(e)}}function Bh(t){for(let e=t.depth;e>=0;e--){let r=t.index(e),i=t.node(e);if(r==0){if(i.type.spec.isolating)return true;continue}for(let t=i.child(r-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 Rh(t){for(let e=t.depth;e>=0;e--){let r=t.indexAfter(e),i=t.node(e);if(r==i.childCount){if(i.type.spec.isolating)return true;continue}for(let t=i.child(r);;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 bn({props:{decorations:Ih,createSelectionBetween(t,e,r){return e.pos==r.pos&&$h.valid(r)?new $h(r):null},handleClick:zh,handleKeyDown:Nh,handleDOMEvents:{beforeinput:Th}}})}const Nh=vf({ArrowLeft:qh("horiz",-1),ArrowRight:qh("horiz",1),ArrowUp:qh("vert",-1),ArrowDown:qh("vert",1)});function qh(t,e){const r=t=="vert"?e>0?"down":"up":e>0?"right":"left";return function(t,i,n){let s=t.selection;let l=e>0?s.$to:s.$from,o=s.empty;if(s instanceof Qi){if(!n.endOfTextblock(r)||l.depth==0)return false;o=false;l=t.doc.resolve(e>0?l.after():l.before())}let u=$h.findGapCursorFrom(l,e,o);if(!u)return false;if(i)i(t.tr.setSelection(new $h(u)));return true}}function zh(t,e,r){if(!t||!t.editable)return false;let i=t.state.doc.resolve(e);if(!$h.valid(i))return false;let n=t.posAtCoords({left:r.clientX,top:r.clientY});if(n&&n.inside>-1&&en.isSelectable(t.state.doc.nodeAt(n.inside)))return false;t.dispatch(t.state.tr.setSelection(new $h(i)));return true}function Th(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof $h))return false;let{$from:r}=t.state.selection;let i=r.parent.contentMatchAt(r.index()).findWrapping(t.state.schema.nodes.text);if(!i)return false;let n=ge.empty;for(let t=i.length-1;t>=0;t--)n=ge.from(i[t].createAndFill(null,n));let s=t.state.tr.replace(r.pos,r.pos,new Fe(n,0,0));s.setSelection(Qi.near(s.doc.resolve(r.pos+1)));t.dispatch(s);return false}function Ih(t){if(!(t.selection instanceof $h))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return Xo.create(t.doc,[Ko.widget(t.selection.head,e,{key:"gapcursor"})])}function Ph(){var t=arguments[0];if(typeof t=="string")t=document.createElement(t);var e=1,r=arguments[1];if(r&&typeof r=="object"&&r.nodeType==null&&!Array.isArray(r)){for(var i in r)if(Object.prototype.hasOwnProperty.call(r,i)){var n=r[i];if(typeof n=="string")t.setAttribute(i,n);else if(n!=null)t[i]=n}e++}for(;e<arguments.length;e++)Jh(t,arguments[e]);return t}function Jh(t,e){if(typeof e=="string"){t.appendChild(document.createTextNode(e))}else if(e==null);else if(e.nodeType!=null){t.appendChild(e)}else if(Array.isArray(e)){for(var r=0;r<e.length;r++)Jh(t,e[r])}else{throw new RangeError("Unsupported child node: "+e)}}const Lh="http://www.w3.org/2000/svg";const Wh="http://www.w3.org/1999/xlink";const Uh="ProseMirror-icon";function Hh(t){let e=0;for(let r=0;r<t.length;r++)e=(e<<5)-e+t.charCodeAt(r)|0;return e}function Zh(t,e){let r=(t.nodeType==9?t:t.ownerDocument)||document;let i=r.createElement("div");i.className=Uh;if(e.path){let{path:n,width:s,height:l}=e;let o="pm-icon-"+Hh(n).toString(16);if(!r.getElementById(o))Kh(t,o,e);let u=i.appendChild(r.createElementNS(Lh,"svg"));u.style.width=s/l+"em";let f=u.appendChild(r.createElementNS(Lh,"use"));f.setAttributeNS(Wh,"href",/([^#]*)/.exec(r.location.toString())[1]+"#"+o)}else if(e.dom){i.appendChild(e.dom.cloneNode(true))}else{let{text:t,css:n}=e;i.appendChild(r.createElement("span")).textContent=t||"";if(n)i.firstChild.style.cssText=n}return i}function Kh(t,e,r){let[i,n]=t.nodeType==9?[t,t.body]:[t.ownerDocument||document,t];let s=i.getElementById(Uh+"-collection");if(!s){s=i.createElementNS(Lh,"svg");s.id=Uh+"-collection";s.style.display="none";n.insertBefore(s,n.firstChild)}let l=i.createElementNS(Lh,"symbol");l.id=e;l.setAttribute("viewBox","0 0 "+r.width+" "+r.height);let o=l.appendChild(i.createElementNS(Lh,"path"));o.setAttribute("d",r.path);s.appendChild(l)}const Vh="ProseMirror-menu";class Gh{constructor(t){this.spec=t}render(t){let e=this.spec;let r=e.render?e.render(t):e.icon?Zh(t.root,e.icon):e.label?Ph("div",null,Xh(t,e.label)):null;if(!r)throw new RangeError("MenuItem without icon or label property");if(e.title){const i=typeof e.title==="function"?e.title(t.state):e.title;r.setAttribute("title",Xh(t,i))}if(e.class)r.classList.add(e.class);if(e.css)r.style.cssText+=e.css;r.addEventListener("mousedown",(i=>{i.preventDefault();if(!r.classList.contains(Vh+"-disabled"))e.run(t.state,t.dispatch,t,i)}));function i(t){if(e.select){let i=e.select(t);r.style.display=i?"":"none";if(!i)return false}let i=true;if(e.enable){i=e.enable(t)||false;ma(r,Vh+"-disabled",!i)}if(e.active){let n=i&&e.active(t)||false;ma(r,Vh+"-active",n)}return true}return{dom:r,update:i}}}function Xh(t,e){return t._props.translate?t._props.translate(e):e}let Yh={time:0,node:null};function Qh(t){Yh.time=Date.now();Yh.node=t.target}function ta(t){return Date.now()-100<Yh.time&&Yh.node&&t.contains(Yh.node)}class ea{constructor(t,e={}){this.options=e;this.options=e||{};this.content=Array.isArray(t)?t:[t]}render(t){let e=ra(this.content,t);let r=t.dom.ownerDocument.defaultView||window;let i=Ph("div",{class:Vh+"-dropdown "+(this.options.class||""),style:this.options.css},Xh(t,this.options.label||""));if(this.options.title)i.setAttribute("title",Xh(t,this.options.title));let n=Ph("div",{class:Vh+"-dropdown-wrap"},i);let s=null;let l=null;let o=()=>{if(s&&s.close()){s=null;r.removeEventListener("mousedown",l)}};i.addEventListener("mousedown",(t=>{t.preventDefault();Qh(t);if(s){o()}else{s=this.expand(n,e.dom);r.addEventListener("mousedown",l=()=>{if(!ta(n))o()})}}));function u(t){let r=e.update(t);n.style.display=r?"":"none";return r}return{dom:n,update:u}}expand(t,e){let r=Ph("div",{class:Vh+"-dropdown-menu "+(this.options.class||"")},e);let i=false;function n(){if(i)return false;i=true;t.removeChild(r);return true}t.appendChild(r);return{close:n,node:r}}}function ra(t,e){let r=[],i=[];for(let n=0;n<t.length;n++){let{dom:s,update:l}=t[n].render(e);r.push(Ph("div",{class:Vh+"-dropdown-item"},s));i.push(l)}return{dom:r,update:ia(i,r)}}function ia(t,e){return r=>{let i=false;for(let n=0;n<t.length;n++){let s=t[n](r);e[n].style.display=s?"":"none";if(s)i=true}return i}}class na{constructor(t,e={}){this.options=e;this.content=Array.isArray(t)?t:[t]}render(t){let e=ra(this.content,t);let r=t.dom.ownerDocument.defaultView||window;let i=Ph("div",{class:Vh+"-submenu-label"},Xh(t,this.options.label||""));let n=Ph("div",{class:Vh+"-submenu-wrap"},i,Ph("div",{class:Vh+"-submenu"},e.dom));let s=null;i.addEventListener("mousedown",(t=>{t.preventDefault();Qh(t);ma(n,Vh+"-submenu-wrap-active",false);if(!s)r.addEventListener("mousedown",s=()=>{if(!ta(n)){n.classList.remove(Vh+"-submenu-wrap-active");r.removeEventListener("mousedown",s);s=null}})}));function l(t){let r=e.update(t);n.style.display=r?"":"none";return r}return{dom:n,update:l}}}function sa(t,e){let r=document.createDocumentFragment();let i=[],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:i,update:n}=l[e].render(t);let s=Ph("span",{class:Vh+"item"},i);r.appendChild(s);u.push(s);o.push(n)}if(o.length){i.push(ia(o,u));if(s<e.length-1)n.push(r.appendChild(la()))}}function s(t){let e=false,r=false;for(let s=0;s<i.length;s++){let l=i[s](t);if(s)n[s-1].style.display=r&&l?"":"none";r=l;if(l)e=true}return e}return{dom:r,update:s}}function la(){return Ph("span",{class:Vh+"separator"})}const oa={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 ua=new Gh({title:"Join with above block",run:eh,select:t=>eh(t),icon:oa.join});const fa=new Gh({title:"Lift out of enclosing block",run:ih,select:t=>ih(t),icon:oa.lift});const ha=new Gh({title:"Select parent node",run:ah,select:t=>ah(t),icon:oa.selectParentNode});let aa=new Gh({title:"Undo last change",run:Lf,enable:t=>Lf(t),icon:oa.undo});let ca=new Gh({title:"Redo last undone change",run:Wf,enable:t=>Wf(t),icon:oa.redo});function da(t,e){let r={run(r,i){return bh(t,e.attrs)(r,i)},select(r){return bh(t,e.attrs)(r)}};for(let t in e)r[t]=e[t];return new Gh(r)}function pa(t,e){let r=kh(t,e.attrs);let i={run:r,enable(t){return r(t)},active(r){let{$from:i,to:n,node:s}=r.selection;if(s)return s.hasMarkup(t,e.attrs);return n<=i.end()&&i.parent.hasMarkup(t,e.attrs)}};for(let t in e)i[t]=e[t];return new Gh(i)}function ma(t,e,r){if(r)t.classList.add(e);else t.classList.remove(e)}const wa="ProseMirror-menubar";function ga(){if(typeof navigator=="undefined")return false;let t=navigator.userAgent;return!/Edge\/\d/.test(t)&&/AppleWebKit/.test(t)&&/Mobile\/\w+/.test(t)}function ba(t){return new bn({view(e){return new ka(e,t)}})}class ka{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=Ph("div",{class:wa+"-wrapper"});this.menu=this.wrapper.appendChild(Ph("div",{class:wa}));this.menu.className=wa;if(t.dom.parentNode)t.dom.parentNode.replaceChild(this.wrapper,t.dom);this.wrapper.appendChild(t.dom);let{dom:r,update:i}=sa(this.editorView,this.options.content);this.contentUpdate=i;this.menu.appendChild(r);this.update();if(e.floating&&!ga()){this.updateFloat();let t=ya(this.wrapper);this.scrollHandler=e=>{let r=this.editorView.root;if(!(r.body||r).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 r=e[Da(t)?0:e.length-1];if(!r)return;let i=this.menu.getBoundingClientRect();if(r.top<i.bottom&&r.bottom>i.top){let t=va(this.wrapper);if(t)t.scrollTop-=i.bottom-r.top}}updateFloat(t){let e=this.wrapper,r=e.getBoundingClientRect(),i=t?Math.max(0,t.getBoundingClientRect().top):0;if(this.floating){if(r.top>=i||r.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=r.left+n+"px";this.menu.style.display=r.top>(this.editorView.dom.ownerDocument.defaultView||window).innerHeight?"none":"";if(t)this.menu.style.top=i+"px"}}else{if(r.top<i&&r.bottom>=this.menu.offsetHeight+10){this.floating=true;let r=this.menu.getBoundingClientRect();this.menu.style.left=r.left+"px";this.menu.style.width=r.width+"px";if(t)this.menu.style.top=i+"px";this.menu.style.position="fixed";this.spacer=Ph("div",{class:wa+"-spacer",style:`height: ${r.height}px`});e.insertBefore(this.spacer,this.menu)}}}destroy(){if(this.wrapper.parentNode)this.wrapper.parentNode.replaceChild(this.editorView.dom,this.wrapper)}}function Da(t){if(t.anchorNode==t.focusNode)return t.anchorOffset>t.focusOffset;return t.anchorNode.compareDocumentPosition(t.focusNode)==Node.DOCUMENT_POSITION_FOLLOWING}function va(t){for(let e=t.parentNode;e;e=e.parentNode)if(e.scrollHeight>e.clientHeight)return e}function ya(t){let e=[t.ownerDocument.defaultView||window];for(let r=t.parentNode;r;r=r.parentNode)e.push(r);return e}class Fa{constructor(t,e,r={}){this.match=t;this.match=t;this.handler=typeof e=="string"?Ea(e):e;this.undoable=r.undoable!==false;this.inCode=r.inCode||false}}function Ea(t){return function(e,r,i,n){let s=t;if(r[1]){let t=r[0].lastIndexOf(r[1]);s+=r[0].slice(t+r[1].length);i+=t;let e=i-n;if(e>0){s=r[0].slice(t-e,t)+s;i=n}}return e.tr.insertText(s,i,n)}}const Ma=500;function xa({rules:t}){let e=new bn({state:{init(){return null},apply(t,e){let r=t.getMeta(this);if(r)return r;return t.selectionSet||t.docChanged?null:e}},props:{handleTextInput(r,i,n,s){return Aa(r,i,n,s,t,e)},handleDOMEvents:{compositionend:r=>{setTimeout((()=>{let{$cursor:i}=r.state.selection;if(i)Aa(r,i.pos,i.pos,"",t,e)}))}}},isInputRules:true});return e}function Aa(t,e,r,i,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-Ma),o.parentOffset,null,"")+i;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-i.length),r);if(!c)continue;if(h.undoable)c.setMeta(s,{transform:c,from:e,to:r,text:i});t.dispatch(c);return true}return false}const Ca=(t,e)=>{let r=t.plugins;for(let i=0;i<r.length;i++){let n=r[i],s;if(n.spec.isInputRules&&(s=n.getState(t))){if(e){let r=t.tr,i=s.transform;for(let t=i.steps.length-1;t>=0;t--)r.step(i.steps[t].invert(i.docs[t]));if(s.text){let e=r.doc.resolve(s.from).marks();r.replaceWith(s.from,s.to,t.schema.text(s.text,e))}else{r.delete(s.from,s.to)}e(r)}return true}}return false};const Sa=new Fa(/--$/,"—");const Oa=new Fa(/\.\.\.$/,"…");const $a=new Fa(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");const _a=new Fa(/"$/,"”");const Ba=new Fa(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");const Ra=new Fa(/'$/,"’");const ja=[$a,_a,Ba,Ra];function Na(t,e,r=null,i){return new Fa(t,((t,n,s,l)=>{let o=r instanceof Function?r(n):r;let u=t.tr.delete(s,l);let f=u.doc.resolve(s),h=f.blockRange(),a=h&&di(h,e,o);if(!a)return null;u.wrap(h,a);let c=u.doc.resolve(s-1).nodeBefore;if(c&&c.type==e&&Fi(u.doc,s-1)&&(!i||i(n,c)))u.join(s-1);return u}))}function qa(t,e,r=null){return new Fa(t,((t,i,n,s)=>{let l=t.doc.resolve(n);let o=r instanceof Function?r(i):r;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 za="ProseMirror-prompt";function Ta(t){let e=document.body.appendChild(document.createElement("div"));e.className=za;let r=t=>{if(!e.contains(t.target))i()};setTimeout((()=>window.addEventListener("mousedown",r)),50);let i=()=>{window.removeEventListener("mousedown",r);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=za+"-submit";s.textContent="OK";let l=document.createElement("button");l.type="button";l.className=za+"-cancel";l.textContent="Cancel";l.addEventListener("click",i);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=za+"-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=Ia(t.fields,n);if(e){i();t.callback(e)}};o.addEventListener("submit",(t=>{t.preventDefault();h()}));o.addEventListener("keydown",(t=>{if(t.keyCode==27){t.preventDefault();i()}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))i()}),500)}}));let a=o.elements[0];if(a)a.focus()}function Ia(t,e){let r=Object.create(null),i=0;for(let n in t){let s=t[n],l=e[i++];let o=s.read(l),u=s.validate(o);if(u){Pa(l,u);return null}r[n]=s.clean(o)}return r}function Pa(t,e){let r=t.parentNode;let i=r.appendChild(document.createElement("div"));i.style.left=t.offsetLeft+t.offsetWidth+2+"px";i.style.top=t.offsetTop-5+"px";i.className="ProseMirror-invalid";i.textContent=e;setTimeout((()=>r.removeChild(i)),1500)}class Ja{constructor(t){this.options=t}read(t){return t.value}validateType(t){return null}validate(t){if(!t&&this.options.required)return"Required field";return this.validateType(t)||(this.options.validate?this.options.validate(t):null)}clean(t){return this.options.clean?this.options.clean(t):t}}class La extends Ja{render(){let t=document.createElement("input");t.type="text";t.placeholder=this.options.label;t.value=this.options.value||"";t.autocomplete="off";return t}}function Wa(t,e){let r=t.selection.$from;for(let t=r.depth;t>=0;t--){let i=r.index(t);if(r.node(t).canReplaceWith(i,i,e))return true}return false}function Ua(t){return new Gh({title:"Insert image",label:"Image",enable(e){return Wa(e,t)},run(e,r,i){let{from:n,to:s}=e.selection,l=null;if(e.selection instanceof en&&e.selection.node.type==t)l=e.selection.node.attrs;Ta({title:"Insert image",fields:{src:new La({label:"Location",required:true,value:l&&l.src}),title:new La({label:"Title",value:l&&l.title}),alt:new La({label:"Description",value:l?l.alt:e.doc.textBetween(n,s," ")})},callback(e){i.dispatch(i.state.tr.replaceSelectionWith(t.createAndFill(e)));i.focus()}})}})}function Ha(t,e){let r={label:e.title,run:t};for(let t in e)r[t]=e[t];if(!e.enable&&!e.select)r[e.enable?"enable":"select"]=e=>t(e);return new Gh(r)}function Za(t,e){let{from:r,$from:i,to:n,empty:s}=t.selection;if(s)return!!e.isInSet(t.storedMarks||i.marks());else return t.doc.rangeHasMark(r,n,e)}function Ka(t,e){let r={active(e){return Za(e,t)}};for(let t in e)r[t]=e[t];return Ha(vh(t),r)}function Va(t){return new Gh({title:"Add or remove link",icon:oa.link,active(e){return Za(e,t)},enable(t){return!t.selection.empty},run(e,r,i){if(Za(e,t)){vh(t)(e,r);return true}Ta({title:"Create a link",fields:{href:new La({label:"Link target",required:true}),title:new La({label:"Title"})},callback(e){vh(t,e)(i.state,i.dispatch);i.focus()}})}})}function Ga(t,e){return Ha(ef(t,e.attrs),e)}function Xa(t){let e={};let r;if(r=t.marks.strong)e.toggleStrong=Ka(r,{title:"Toggle strong style",icon:oa.strong});if(r=t.marks.em)e.toggleEm=Ka(r,{title:"Toggle emphasis",icon:oa.em});if(r=t.marks.code)e.toggleCode=Ka(r,{title:"Toggle code font",icon:oa.code});if(r=t.marks.link)e.toggleLink=Va(r);let i;if(i=t.nodes.image)e.insertImage=Ua(i);if(i=t.nodes.bullet_list)e.wrapBulletList=Ga(i,{title:"Wrap in bullet list",icon:oa.bulletList});if(i=t.nodes.ordered_list)e.wrapOrderedList=Ga(i,{title:"Wrap in ordered list",icon:oa.orderedList});if(i=t.nodes.blockquote)e.wrapBlockQuote=da(i,{title:"Wrap in block quote",icon:oa.blockquote});if(i=t.nodes.paragraph)e.makeParagraph=pa(i,{title:"Change to paragraph",label:"Plain"});if(i=t.nodes.code_block)e.makeCodeBlock=pa(i,{title:"Change to code block",label:"Code"});if(i=t.nodes.heading)for(let t=1;t<=10;t++)e["makeHead"+t]=pa(i,{title:"Change to heading "+t,label:"Level "+t,attrs:{level:t}});if(i=t.nodes.horizontal_rule){let t=i;e.insertHorizontalRule=new Gh({title:"Insert horizontal rule",label:"Horizontal rule",enable(e){return Wa(e,t)},run(e,r){r(e.tr.replaceSelectionWith(t.create()))}})}let n=t=>t.filter((t=>t));e.insertMenu=new ea(n([e.insertImage,e.insertHorizontalRule]),{label:"Insert"});e.typeMenu=new ea(n([e.makeParagraph,e.makeCodeBlock,e.makeHead1&&new na(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,ua,fa,ha])];e.fullMenu=e.inlineMenu.concat([[e.insertMenu,e.typeMenu]],[[aa,ca]],e.blockMenu);return e}const Ya=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function Qa(t,e){let r={},i;function n(t,i){if(e){let r=e[t];if(r===false)return;if(r)t=r}r[t]=i}n("Mod-z",Lf);n("Shift-Mod-z",Wf);n("Backspace",Ca);if(!Ya)n("Mod-y",Wf);n("Alt-ArrowUp",eh);n("Alt-ArrowDown",rh);n("Mod-BracketLeft",ih);n("Escape",ah);if(i=t.marks.strong){n("Mod-b",vh(i));n("Mod-B",vh(i))}if(i=t.marks.em){n("Mod-i",vh(i));n("Mod-I",vh(i))}if(i=t.marks.code)n("Mod-`",vh(i));if(i=t.nodes.bullet_list)n("Shift-Ctrl-8",ef(i));if(i=t.nodes.ordered_list)n("Shift-Ctrl-9",ef(i));if(i=t.nodes.blockquote)n("Ctrl->",bh(i));if(i=t.nodes.hard_break){let t=i,e=yh(lh,((e,r)=>{if(r)r(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}));n("Mod-Enter",e);n("Shift-Enter",e);if(Ya)n("Ctrl-Enter",e)}if(i=t.nodes.list_item){n("Enter",nf(i));n("Mod-[",sf(i));n("Mod-]",uf(i))}if(i=t.nodes.paragraph)n("Shift-Ctrl-0",kh(i));if(i=t.nodes.code_block)n("Shift-Ctrl-\\",kh(i));if(i=t.nodes.heading)for(let t=1;t<=6;t++)n("Shift-Ctrl-"+t,kh(i,{level:t}));if(i=t.nodes.horizontal_rule){let t=i;n("Mod-_",((e,r)=>{if(r)r(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}))}return r}function tc(t){return Na(/^\s*>\s$/,t)}function ec(t){return Na(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order==+t[1]))}function rc(t){return Na(/^\s*([-+*])\s$/,t)}function ic(t){return qa(/^```$/,t)}function nc(t,e){return qa(new RegExp("^(#{1,"+e+"})\\s$"),t,(t=>({level:t[1].length})))}function sc(t){let e=ja.concat(Oa,Sa),r;if(r=t.nodes.blockquote)e.push(tc(r));if(r=t.nodes.ordered_list)e.push(ec(r));if(r=t.nodes.bullet_list)e.push(rc(r));if(r=t.nodes.code_block)e.push(ic(r));if(r=t.nodes.heading)e.push(nc(r,6));return xa({rules:e})}function lc(t){let e=[sc(t.schema),Df(Qa(t.schema,t.mapKeys)),Df(Ch),Sh(),jh()];if(t.menuBar!==false)e.push(ba({floating:t.floatingMenu!==false,content:t.menuContent||Xa(t.schema).fullMenu}));if(t.history!==false)e.push(Jf());return e.concat(new bn({props:{attributes:{class:"ProseMirror-example-setup-style"}}}))}const oc={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 uc=Object.values(oc);const fc={Heading:"heading",one:1,two:2,three:3};const hc={Left:0,Middle:1,Right:2};const ac=(t,e)=>{t.active=t=>{const{from:r,$from:i,to:n,empty:s}=t.selection;if(s){return!!e.isInSet(t.storedMarks||i.marks())}else{return t.doc.rangeHasMark(r,n,e)}}};const cc=(t,e,r)=>{t.active=t=>{const{$from:i}=t.selection;const n=i.node(i.depth);if(n&&n.type.name===e.name){if(e.name===fc.Heading&&r){return n.attrs.level===r}return true}return false}};const dc=(t,e)=>{t.active=t=>{const{from:r,to:i}=t.selection;for(let n=r;n<=i;n++){const r=t.doc.resolve(n);for(let t=r.depth;t>0;t--){const i=r.node(t);if(i&&i.type.name===e.name){return true}}}return false}};const pc=(t,e,r)=>{const i=(e,i)=>{const{from:n,to:s}=e.selection;if(n===s){const s=t.marks.link.create({href:r.href,title:r.href,target:gc(r.href)?"_blank":null});const l=r.text||r.href;const o=t.text(l,[s]);i(e.tr.insert(n,o))}else{const l=t.marks.link.create({href:r.href,title:r.href,target:gc(r.href)?"_blank":null});const o=e.doc.textBetween(n,s," ");const u=t.text(r.text||o,[l]);i(e.tr.replaceWith(n,s,u))}return true};ac(i,t.marks.link);return i};const mc=(t,e,r)=>{const i=t.marks[e];if(!i){throw new Error(`Mark "${e}" not found in schema`)}const n=wc(e,r);const s=vh(i,n);ac(s,i);return s};const wc=(t,e)=>{if(t===oc.Link&&e.href){return{href:e.href,target:gc(e.href)?"_blank":null}}return undefined};const gc=t=>!t.startsWith(window.location.origin);const bc=(t,e,r={},i=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 Qi&&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(i){return bh(n,r)(t,e)}else{return kh(n,r)(t,e)}}}return false}};const kc=t=>{try{new URL(t)}catch(t){return false}return true};const Dc=(t,e,r)=>{const i=t.nodes[e];if(!i){throw new Error(`Node type "${e}" not found in schema`)}let n;if(e===fc.Heading&&r){n=bc(t,fc.Heading,{level:r})}else if(e===oc.CodeBlock){n=bc(t,oc.CodeBlock)}else{n=kh(i)}cc(n,i,r);return n};const vc=(t,e)=>{const r=t.nodes[e];if(!r){throw new Error(`Node type "${e}" not found in schema`)}let i;if(e===oc.Blockquote){i=bc(t,oc.Blockquote,{},true)}else{i=bh(r)}dc(i,r);return i};const yc=t=>(e,r)=>{const{$from:i,$to:n}=e.selection;const s=i.blockRange(n);if(!s){return false}const l=s&&di(s,t);if(l){if(r){r(e.tr.wrap(s,l).scrollIntoView())}return true}else{const t=s&&ai(s);if(t!==null){if(r){r(e.tr.lift(s,t).scrollIntoView())}return true}return false}};const Fc=(t,e)=>{const r=t.nodes[e];if(!r){throw new Error(`List type "${e}" not found in schema`)}const i=yc(r);dc(i,r);return i};const Ec=(t,e)=>{const{from:r,to:i}=t.selection;if(r===i){return false}const n=window.clipboardData;if(!n){return false}const s=n.getData("text");if(!kc(s)){return false}const l=t.schema.marks.link.create({href:s,target:gc(s)?"_blank":null});const o=t.doc.textBetween(r,i," ");const u=t.schema.text(o,[l]);e(t.tr.replaceWith(r,i,u))};const Mc={strong:mc,em:mc,underline:mc,strikethrough:mc,code:mc,link:pc,headerlevel1:t=>Dc(t,fc.Heading,fc.one),headerlevel2:t=>Dc(t,fc.Heading,fc.two),headerlevel3:t=>Dc(t,fc.Heading,fc.three),blockquote:t=>vc(t,oc.Blockquote),code_block:t=>Dc(t,oc.CodeBlock),ordered_list:t=>Fc(t,oc.OrderedList),bullet_list:t=>Fc(t,oc.BulletList)};class xc{constructor(t){this.schema=t}getCommand(t,e){const r=Mc[t];if(!r){throw new Error(`The Mark "${t}" is not supported`)}return r(this.schema,t,e)}buildKeymap(){return{"Mod-B":this.getCommand(oc.Bold),"Mod-I":this.getCommand(oc.Italic),"Mod-Shift-1":this.getCommand(oc.HeaderLevel1),"Mod-Shift-2":this.getCommand(oc.HeaderLevel2),"Mod-Shift-3":this.getCommand(oc.HeaderLevel3),"Mod-Shift-X":this.getCommand(oc.Strikethrough),"Mod-`":this.getCommand(oc.Code),"Mod-Shift-C":this.getCommand(oc.CodeBlock),"Mod-v":Ec}}}const Ac=()=>{const t=/Macintosh|MacIntel|MacPPC|Mac68K/;if(navigator.userAgent.match(t)){return{mod:"⌘",option:"⌥",shift:"⇧"}}return{mod:"Ctrl",option:"Alt",shift:"Shift"}};const{mod:Cc,shift:Sc}=Ac();const Oc=[{value:oc.Bold,text:"Bold",commandText:`${Cc} B`,icon:"-lime-text-bold",iconOnly:true,selected:false},{value:oc.Italic,text:"Italic",commandText:`${Cc} I`,icon:"-lime-text-italic",iconOnly:true,selected:false},{value:oc.Strikethrough,text:"Strikethrough",commandText:`${Cc} ${Sc} X`,icon:"-lime-text-strikethrough",iconOnly:true,selected:false},{value:oc.Link,text:"Link",icon:"-lime-text-link",iconOnly:true},{separator:true},{value:oc.BulletList,text:"Bullet list",icon:"-lime-text-bulleted-list",iconOnly:true,selected:false},{value:oc.OrderedList,text:"Numbered list",icon:"-lime-text-ordered-list",iconOnly:true,selected:false},{separator:true},{value:oc.HeaderLevel1,text:"Header 1",commandText:`${Cc} ${Sc} 1`,icon:"-lime-text-h-heading-1",iconOnly:true,selected:false},{value:oc.HeaderLevel2,text:"Header 2",commandText:`${Cc} ${Sc} 2`,icon:"-lime-text-h-heading-2",iconOnly:true,selected:false},{value:oc.HeaderLevel3,text:"Header 3",commandText:`${Cc} ${Sc} 3`,icon:"-lime-text-h-heading-3",iconOnly:true,selected:false},{separator:true},{value:oc.Blockquote,text:"Blockquote",icon:"-lime-text-blockquote",iconOnly:true,selected:false},{separator:true},{value:oc.Code,text:"Code",commandText:`${Cc} \``,icon:"-lime-text-code",iconOnly:true,selected:false},{value:oc.CodeBlock,text:"Code Block",commandText:`${Cc} ${Sc} C`,icon:"-lime-text-code-block",iconOnly:true,selected:false}];const $c=()=>de(Oc);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 Bc={};function Rc(t){let e=Bc[t];if(e){return e}e=Bc[t]=[];for(let t=0;t<128;t++){const r=String.fromCharCode(t);e.push(r)}for(let r=0;r<t.length;r++){const i=t.charCodeAt(r);e[i]="%"+("0"+i.toString(16).toUpperCase()).slice(-2)}return e}function jc(t,e){if(typeof e!=="string"){e=jc.defaultChars}const r=Rc(e);return t.replace(/(%[a-f0-9]{2})+/gi,(function(t){let e="";for(let i=0,n=t.length;i<n;i+=3){const s=parseInt(t.slice(i+1,i+3),16);if(s<128){e+=r[s];continue}if((s&224)===192&&i+3<n){const r=parseInt(t.slice(i+4,i+6),16);if((r&192)===128){const t=s<<6&1984|r&63;if(t<128){e+="��"}else{e+=String.fromCharCode(t)}i+=3;continue}}if((s&240)===224&&i+6<n){const r=parseInt(t.slice(i+4,i+6),16);const n=parseInt(t.slice(i+7,i+9),16);if((r&192)===128&&(n&192)===128){const t=s<<12&61440|r<<6&4032|n&63;if(t<2048||t>=55296&&t<=57343){e+="���"}else{e+=String.fromCharCode(t)}i+=6;continue}}if((s&248)===240&&i+9<n){const r=parseInt(t.slice(i+4,i+6),16);const n=parseInt(t.slice(i+7,i+9),16);const l=parseInt(t.slice(i+10,i+12),16);if((r&192)===128&&(n&192)===128&&(l&192)===128){let t=s<<18&1835008|r<<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))}i+=9;continue}}e+="�"}return e}))}jc.defaultChars=";/?:@&=+$,#";jc.componentChars="";const Nc={};function qc(t){let e=Nc[t];if(e){return e}e=Nc[t]=[];for(let t=0;t<128;t++){const r=String.fromCharCode(t);if(/^[0-9a-z]$/i.test(r)){e.push(r)}else{e.push("%"+("0"+t.toString(16).toUpperCase()).slice(-2))}}for(let r=0;r<t.length;r++){e[t.charCodeAt(r)]=t[r]}return e}function zc(t,e,r){if(typeof e!=="string"){r=e;e=zc.defaultChars}if(typeof r==="undefined"){r=true}const i=qc(e);let n="";for(let e=0,s=t.length;e<s;e++){const l=t.charCodeAt(e);if(r&&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+=i[l];continue}if(l>=55296&&l<=57343){if(l>=55296&&l<=56319&&e+1<s){const r=t.charCodeAt(e+1);if(r>=56320&&r<=57343){n+=encodeURIComponent(t[e]+t[e+1]);e++;continue}}n+="%EF%BF%BD";continue}n+=encodeURIComponent(t[e])}return n}zc.defaultChars=";/?:@&=+$,-_.!~*'()#";zc.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 Ic(){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 Pc=/^([a-z0-9.+-]+:)/i;const Jc=/:[0-9]*$/;const Lc=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;const Wc=["<",">",'"',"`"," ","\r","\n","\t"];const Uc=["{","}","|","\\","^","`"].concat(Wc);const Hc=["'"].concat(Uc);const Zc=["%","/","?",";","#"].concat(Hc);const Kc=["/","?","#"];const Vc=255;const Gc=/^[+a-z0-9A-Z_-]{0,63}$/;const Xc=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;const Yc={javascript:true,"javascript:":true};const Qc={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function td(t,e){if(t&&t instanceof Ic)return t;const r=new Ic;r.parse(t,e);return r}Ic.prototype.parse=function(t,e){let r,i,n;let s=t;s=s.trim();if(!e&&t.split("#").length===1){const t=Lc.exec(s);if(t){this.pathname=t[1];if(t[2]){this.search=t[2]}return this}}let l=Pc.exec(s);if(l){l=l[0];r=l.toLowerCase();this.protocol=l;s=s.substr(l.length)}if(e||l||s.match(/^\/\/[^@\/]+@[^@\/]+/)){n=s.substr(0,2)==="//";if(n&&!(l&&Yc[l])){s=s.substr(2);this.slashes=true}}if(!Yc[l]&&(n||l&&!Qc[l])){let t=-1;for(let e=0;e<Kc.length;e++){i=s.indexOf(Kc[e]);if(i!==-1&&(t===-1||i<t)){t=i}}let e,r;if(t===-1){r=s.lastIndexOf("@")}else{r=s.lastIndexOf("@",t)}if(r!==-1){e=s.slice(0,r);s=s.slice(r+1);this.auth=e}t=-1;for(let e=0;e<Zc.length;e++){i=s.indexOf(Zc[e]);if(i!==-1&&(t===-1||i<t)){t=i}}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,r=t.length;e<r;e++){const r=t[e];if(!r){continue}if(!r.match(Gc)){let i="";for(let t=0,e=r.length;t<e;t++){if(r.charCodeAt(t)>127){i+="x"}else{i+=r[t]}}if(!i.match(Gc)){const i=t.slice(0,e);const n=t.slice(e+1);const l=r.match(Xc);if(l){i.push(l[1]);n.unshift(l[2])}if(n.length){s=n.join(".")+s}this.hostname=i.join(".");break}}}}if(this.hostname.length>Vc){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(Qc[r]&&this.hostname&&!this.pathname){this.pathname=""}return this};Ic.prototype.parseHost=function(t){let e=Jc.exec(t);if(e){e=e[0];if(e!==":"){this.port=e.substr(1)}t=t.substr(0,t.length-e.length)}if(t){this.hostname=t}};const ed=Object.freeze({__proto__:null,decode:jc,encode:zc,format:Tc,parse:td});const rd=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;const id=/[\0-\x1F\x7F-\x9F]/;const nd=/[\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 sd=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\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 ld=/[\$\+<->\^`\|~\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 od=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;const ud=Object.freeze({__proto__:null,Any:rd,Cc:id,Cf:nd,P:sd,S:ld,Z:od});function fd(t){return Object.prototype.toString.call(t)}function hd(t){return fd(t)==="[object String]"}const ad=Object.prototype.hasOwnProperty;function cd(t,e){return ad.call(t,e)}function dd(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(r){t[r]=e[r]}))}));return t}function pd(t,e,r){return[].concat(t.slice(0,e),r,t.slice(e+1))}function md(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 wd(t){if(t>65535){t-=65536;const e=55296+(t>>10);const r=56320+(t&1023);return String.fromCharCode(e,r)}return String.fromCharCode(t)}const gd=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;const bd=/&([a-z#][a-z0-9]{1,31});/gi;const kd=new RegExp(gd.source+"|"+bd.source,"gi");const Dd=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function vd(t,e){if(e.charCodeAt(0)===35&&Dd.test(e)){const r=e[1].toLowerCase()==="x"?parseInt(e.slice(2),16):parseInt(e.slice(1),10);if(md(r)){return wd(r)}return t}const r=x(t);if(r!==t){return r}return t}function yd(t){if(t.indexOf("\\")<0){return t}return t.replace(gd,"$1")}function Fd(t){if(t.indexOf("\\")<0&&t.indexOf("&")<0){return t}return t.replace(kd,(function(t,e,r){if(e){return e}return vd(t,r)}))}const Ed=/[&<>"]/;const Md=/[&<>"]/g;const xd={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;"};function Ad(t){return xd[t]}function Cd(t){if(Ed.test(t)){return t.replace(Md,Ad)}return t}const Sd=/[.?*+^$[\]\\(){}|-]/g;function Od(t){return t.replace(Sd,"\\$&")}function $d(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 Bd(t){return sd.test(t)||ld.test(t)}function Rd(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 Nd={mdurl:ed,ucmicro:ud};const qd=Object.freeze({__proto__:null,lib:Nd,assign:dd,isString:hd,has:cd,unescapeMd:yd,unescapeAll:Fd,isValidEntityCode:md,fromCodePoint:wd,escapeHtml:Cd,arrayReplaceAt:pd,isSpace:$d,isWhiteSpace:_d,isMdAsciiPunct:Rd,isPunctChar:Bd,escapeRE:Od,normalizeReference:jd});function zd(t,e,r){let i,n,s,l;const o=t.posMax;const u=t.pos;t.pos=e+1;i=1;while(t.pos<o){s=t.src.charCodeAt(t.pos);if(s===93){i--;if(i===0){n=true;break}}l=t.pos;t.md.inline.skipToken(t);if(s===91){if(l===t.pos-1){i++}else if(r){t.pos=u;return-1}}}let f=-1;if(n){f=t.pos}t.pos=u;return f}function Td(t,e,r){let i;let n=e;const s={ok:false,pos:0,str:""};if(t.charCodeAt(n)===60){n++;while(n<r){i=t.charCodeAt(n);if(i===10){return s}if(i===60){return s}if(i===62){s.pos=n+1;s.str=Fd(t.slice(e+1,n));s.ok=true;return s}if(i===92&&n+1<r){n+=2;continue}n++}return s}let l=0;while(n<r){i=t.charCodeAt(n);if(i===32){break}if(i<32||i===127){break}if(i===92&&n+1<r){if(t.charCodeAt(n+1)===32){break}n+=2;continue}if(i===40){l++;if(l>32){return s}}if(i===41){if(l===0){break}l--}n++}if(e===n){return s}if(l!==0){return s}s.str=Fd(t.slice(e,n));s.pos=n;s.ok=true;return s}function Id(t,e,r,i){let n;let s=e;const l={ok:false,can_continue:false,pos:0,str:"",marker:0};if(i){l.str=i.str;l.marker=i.marker}else{if(s>=r){return l}let i=t.charCodeAt(s);if(i!==34&&i!==39&&i!==40){return l}e++;s++;if(i===40){i=41}l.marker=i}while(s<r){n=t.charCodeAt(s);if(n===l.marker){l.pos=s+1;l.str+=Fd(t.slice(e,s));l.ok=true;return l}else if(n===40&&l.marker===41){return l}else if(n===92&&s+1<r){s++}s++}l.can_continue=true;l.str+=Fd(t.slice(e,s));return l}const Pd=Object.freeze({__proto__:null,parseLinkLabel:zd,parseLinkDestination:Td,parseLinkTitle:Id});const Jd={};Jd.code_inline=function(t,e,r,i,n){const s=t[e];return"<code"+n.renderAttrs(s)+">"+Cd(s.content)+"</code>"};Jd.code_block=function(t,e,r,i,n){const s=t[e];return"<pre"+n.renderAttrs(s)+"><code>"+Cd(t[e].content)+"</code></pre>\n"};Jd.fence=function(t,e,r,i,n){const s=t[e];const l=s.info?Fd(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(r.highlight){f=r.highlight(s.content,o,u)||Cd(s.content)}else{f=Cd(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",r.langPrefix+o])}else{e[t]=e[t].slice();e[t][1]+=" "+r.langPrefix+o}const i={attrs:e};return`<pre><code${n.renderAttrs(i)}>${f}</code></pre>\n`}return`<pre><code${n.renderAttrs(s)}>${f}</code></pre>\n`};Jd.image=function(t,e,r,i,n){const s=t[e];s.attrs[s.attrIndex("alt")][1]=n.renderInlineAsText(s.children,r,i);return n.renderToken(t,e,r)};Jd.hardbreak=function(t,e,r){return r.xhtmlOut?"<br />\n":"<br>\n"};Jd.softbreak=function(t,e,r){return r.breaks?r.xhtmlOut?"<br />\n":"<br>\n":"\n"};Jd.text=function(t,e){return Cd(t[e].content)};Jd.html_block=function(t,e){return t[e].content};Jd.html_inline=function(t,e){return t[e].content};function Ld(){this.rules=dd({},Jd)}Ld.prototype.renderAttrs=function t(e){let r,i,n;if(!e.attrs){return""}n="";for(r=0,i=e.attrs.length;r<i;r++){n+=" "+Cd(e.attrs[r][0])+'="'+Cd(e.attrs[r][1])+'"'}return n};Ld.prototype.renderToken=function t(e,r,i){const n=e[r];let s="";if(n.hidden){return""}if(n.block&&n.nesting!==-1&&r&&e[r-1].hidden){s+="\n"}s+=(n.nesting===-1?"</":"<")+n.tag;s+=this.renderAttrs(n);if(n.nesting===0&&i.xhtmlOut){s+=" /"}let l=false;if(n.block){l=true;if(n.nesting===1){if(r+1<e.length){const t=e[r+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};Ld.prototype.renderInline=function(t,e,r){let i="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(typeof n[l]!=="undefined"){i+=n[l](t,s,e,r,this)}else{i+=this.renderToken(t,s,e)}}return i};Ld.prototype.renderInlineAsText=function(t,e,r){let i="";for(let n=0,s=t.length;n<s;n++){switch(t[n].type){case"text":i+=t[n].content;break;case"image":i+=this.renderInlineAsText(t[n].children,e,r);break;case"html_inline":case"html_block":i+=t[n].content;break;case"softbreak":case"hardbreak":i+="\n";break}}return i};Ld.prototype.render=function(t,e,r){let i="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(l==="inline"){i+=this.renderInline(t[s].children,e,r)}else if(typeof n[l]!=="undefined"){i+=n[l](t,s,e,r,this)}else{i+=this.renderToken(t,s,e,r)}}return i};function Wd(){this.__rules__=[];this.__cache__=null}Wd.prototype.__find__=function(t){for(let e=0;e<this.__rules__.length;e++){if(this.__rules__[e].name===t){return e}}return-1};Wd.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(r){if(!r.enabled){return}if(e&&r.alt.indexOf(e)<0){return}t.__cache__[e].push(r.fn)}))}))};Wd.prototype.at=function(t,e,r){const i=this.__find__(t);const n=r||{};if(i===-1){throw new Error("Parser rule not found: "+t)}this.__rules__[i].fn=e;this.__rules__[i].alt=n.alt||[];this.__cache__=null};Wd.prototype.before=function(t,e,r,i){const n=this.__find__(t);const s=i||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n,0,{name:e,enabled:true,fn:r,alt:s.alt||[]});this.__cache__=null};Wd.prototype.after=function(t,e,r,i){const n=this.__find__(t);const s=i||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n+1,0,{name:e,enabled:true,fn:r,alt:s.alt||[]});this.__cache__=null};Wd.prototype.push=function(t,e,r){const i=r||{};this.__rules__.push({name:t,enabled:true,fn:e,alt:i.alt||[]});this.__cache__=null};Wd.prototype.enable=function(t,e){if(!Array.isArray(t)){t=[t]}const r=[];t.forEach((function(t){const i=this.__find__(t);if(i<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[i].enabled=true;r.push(t)}),this);this.__cache__=null;return r};Wd.prototype.enableOnly=function(t,e){if(!Array.isArray(t)){t=[t]}this.__rules__.forEach((function(t){t.enabled=false}));this.enable(t,e)};Wd.prototype.disable=function(t,e){if(!Array.isArray(t)){t=[t]}const r=[];t.forEach((function(t){const i=this.__find__(t);if(i<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[i].enabled=false;r.push(t)}),this);this.__cache__=null;return r};Wd.prototype.getRules=function(t){if(this.__cache__===null){this.__compile__()}return this.__cache__[t]||[]};function Ud(t,e,r){this.type=t;this.tag=e;this.attrs=null;this.map=null;this.nesting=r;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 r=this.attrs;for(let t=0,i=r.length;t<i;t++){if(r[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,r){const i=this.attrIndex(e);const n=[e,r];if(i<0){this.attrPush(n)}else{this.attrs[i]=n}};Ud.prototype.attrGet=function t(e){const r=this.attrIndex(e);let i=null;if(r>=0){i=this.attrs[r][1]}return i};Ud.prototype.attrJoin=function t(e,r){const i=this.attrIndex(e);if(i<0){this.attrPush([e,r])}else{this.attrs[i][1]=this.attrs[i][1]+" "+r}};function Hd(t,e,r){this.src=t;this.env=r;this.tokens=[];this.inlineMode=false;this.md=e}Hd.prototype.Token=Ud;const Zd=/\r\n?|\n/g;const Kd=/\0/g;function Vd(t){let e;e=t.src.replace(Zd,"\n");e=e.replace(Kd,"�");t.src=e}function Gd(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 Xd(t){const e=t.tokens;for(let r=0,i=e.length;r<i;r++){const i=e[r];if(i.type==="inline"){t.md.inline.parse(i.content,t.md,t.env,i.children)}}}function Yd(t){return/^<a[>\s]/i.test(t)}function Qd(t){return/^<\/a\s*>/i.test(t)}function tp(t){const e=t.tokens;if(!t.md.options.linkify){return}for(let r=0,i=e.length;r<i;r++){if(e[r].type!=="inline"||!t.md.linkify.pretest(e[r].content)){continue}let i=e[r].children;let n=0;for(let s=i.length-1;s>=0;s--){const l=i[s];if(l.type==="link_close"){s--;while(i[s].level!==l.level&&i[s].type!=="link_open"){s--}continue}if(l.type==="html_inline"){if(Yd(l.content)&&n>0){n--}if(Qd(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&&i[s-1].type==="text_special"){o=o.slice(1)}for(let e=0;e<o.length;e++){const r=o[e].url;const i=t.md.normalizeLink(r);if(!t.md.validateLink(i)){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",i]];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[r].children=i=pd(i,s,u)}}}}const ep=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/;const rp=/\((c|tm|r)\)/i;const ip=/\((c|tm|r)\)/gi;const np={c:"©",r:"®",tm:"™"};function sp(t,e){return np[e.toLowerCase()]}function lp(t){let e=0;for(let r=t.length-1;r>=0;r--){const i=t[r];if(i.type==="text"&&!e){i.content=i.content.replace(ip,sp)}if(i.type==="link_open"&&i.info==="auto"){e--}if(i.type==="link_close"&&i.info==="auto"){e++}}}function op(t){let e=0;for(let r=t.length-1;r>=0;r--){const i=t[r];if(i.type==="text"&&!e){if(ep.test(i.content)){i.content=i.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(i.type==="link_open"&&i.info==="auto"){e--}if(i.type==="link_close"&&i.info==="auto"){e++}}}function up(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(rp.test(t.tokens[e].content)){lp(t.tokens[e].children)}if(ep.test(t.tokens[e].content)){op(t.tokens[e].children)}}}const fp=/['"]/;const hp=/['"]/g;const ap="’";function cp(t,e,r){return t.slice(0,e)+r+t.slice(e+1)}function dp(t,e){let r;const i=[];for(let n=0;n<t.length;n++){const s=t[n];const l=t[n].level;for(r=i.length-1;r>=0;r--){if(i[r].level<=l){break}}i.length=r+1;if(s.type!=="text"){continue}let o=s.content;let u=0;let f=o.length;t:while(u<f){hp.lastIndex=u;const h=hp.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(r=n-1;r>=0;r--){if(t[r].type==="softbreak"||t[r].type==="hardbreak")break;if(!t[r].content)continue;p=t[r].content.charCodeAt(t[r].content.length-1);break}}let m=32;if(u<f){m=o.charCodeAt(u)}else{for(r=n+1;r<t.length;r++){if(t[r].type==="softbreak"||t[r].type==="hardbreak")break;if(!t[r].content)continue;m=t[r].content.charCodeAt(0);break}}const w=Rd(p)||Bd(String.fromCharCode(p));const g=Rd(m)||Bd(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=cp(s.content,h.index,ap)}continue}if(c){for(r=i.length-1;r>=0;r--){let a=i[r];if(i[r].level<l){break}if(a.single===d&&i[r].level===l){a=i[r];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=cp(s.content,h.index,c);t[a.token].content=cp(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;i.length=r;continue t}}}if(a){i.push({token:n,pos:h.index,single:d,level:l})}else if(c&&d){s.content=cp(s.content,h.index,ap)}}}}function pp(t){if(!t.md.options.typographer){return}for(let e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"||!fp.test(t.tokens[e].content)){continue}dp(t.tokens[e].children,t)}}function mp(t){let e,r;const i=t.tokens;const n=i.length;for(let t=0;t<n;t++){if(i[t].type!=="inline")continue;const n=i[t].children;const s=n.length;for(e=0;e<s;e++){if(n[e].type==="text_special"){n[e].type="text"}}for(e=r=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!==r){n[r]=n[e]}r++}}if(e!==r){n.length=r}}}const wp=[["normalize",Vd],["block",Gd],["inline",Xd],["linkify",tp],["replacements",up],["smartquotes",pp],["text_join",mp]];function gp(){this.ruler=new Wd;for(let t=0;t<wp.length;t++){this.ruler.push(wp[t][0],wp[t][1])}}gp.prototype.process=function(t){const e=this.ruler.getRules("");for(let r=0,i=e.length;r<i;r++){e[r](t)}};gp.prototype.State=Hd;function bp(t,e,r,i){this.src=t;this.md=e;this.env=r;this.tokens=i;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,r=0,i=0,s=n.length,l=false;e<s;e++){const o=n.charCodeAt(e);if(!l){if($d(o)){r++;if(o===9){i+=4-i%4}else{i++}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(r);this.sCount.push(i);this.bsCount.push(0);l=false;r=0;i=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}bp.prototype.push=function(t,e,r){const i=new Ud(t,e,r);i.block=true;if(r<0)this.level--;i.level=this.level;if(r>0)this.level++;this.tokens.push(i);return i};bp.prototype.isEmpty=function t(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]};bp.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};bp.prototype.skipSpaces=function t(e){for(let t=this.src.length;e<t;e++){const t=this.src.charCodeAt(e);if(!$d(t)){break}}return e};bp.prototype.skipSpacesBack=function t(e,r){if(e<=r){return e}while(e>r){if(!$d(this.src.charCodeAt(--e))){return e+1}}return e};bp.prototype.skipChars=function t(e,r){for(let t=this.src.length;e<t;e++){if(this.src.charCodeAt(e)!==r){break}}return e};bp.prototype.skipCharsBack=function t(e,r,i){if(e<=i){return e}while(e>i){if(r!==this.src.charCodeAt(--e)){return e+1}}return e};bp.prototype.getLines=function t(e,r,i,n){if(e>=r){return""}const s=new Array(r-e);for(let t=0,l=e;l<r;l++,t++){let e=0;const o=this.bMarks[l];let u=o;let f;if(l+1<r||n){f=this.eMarks[l]+1}else{f=this.eMarks[l]}while(u<f&&e<i){const t=this.src.charCodeAt(u);if($d(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>i){s[t]=new Array(e-i+1).join(" ")+this.src.slice(u,f)}else{s[t]=this.src.slice(u,f)}}return s.join("")};bp.prototype.Token=Ud;const kp=65536;function Dp(t,e){const r=t.bMarks[e]+t.tShift[e];const i=t.eMarks[e];return t.src.slice(r,i)}function vp(t){const e=[];const r=t.length;let i=0;let n=t.charCodeAt(i);let s=false;let l=0;let o="";while(i<r){if(n===124){if(!s){e.push(o+t.substring(l,i));o="";l=i+1}else{o+=t.substring(l,i-1);l=i}}s=n===92;i++;n=t.charCodeAt(i)}e.push(o+t.substring(l));return e}function yp(t,e,r,i){if(e+2>r){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&&!$d(o)){return false}if(l===45&&$d(o)){return false}while(s<t.eMarks[n]){const e=t.src.charCodeAt(s);if(e!==124&&e!==45&&e!==58&&!$d(e)){return false}s++}let u=Dp(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=Dp(t,e).trim();if(u.indexOf("|")===-1){return false}if(t.sCount[e]-t.blkIndent>=4){return false}f=vp(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(i){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 r=t.push("th_open","th",1);if(h[e]){r.attrs=[["style","text-align:"+h[e]]]}const i=t.push("inline","",0);i.content=f[e].trim();i.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<r;n++){if(t.sCount[n]<t.blkIndent){break}let i=false;for(let e=0,s=d.length;e<s;e++){if(d[e](t,n,r,true)){i=true;break}}if(i){break}u=Dp(t,n).trim();if(!u){break}if(t.sCount[n]-t.blkIndent>=4){break}f=vp(u);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();k+=a-f.length;if(k>kp){break}if(n===e+2){const r=t.push("tbody_open","tbody",1);r.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 r=t.push("td_open","td",1);if(h[e]){r.attrs=[["style","text-align:"+h[e]]]}const i=t.push("inline","",0);i.content=f[e]?f[e].trim():"";i.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 Fp(t,e,r){if(t.sCount[e]-t.blkIndent<4){return false}let i=e+1;let n=i;while(i<r){if(t.isEmpty(i)){i++;continue}if(t.sCount[i]-t.blkIndent>=4){i++;n=i;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 Ep(t,e,r,i){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(i){return true}let a=e;let c=false;for(;;){a++;if(a>=r){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 Mp(t,e,r,i){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(i){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<r;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 r;let i;if(t.src.charCodeAt(n)===32){n++;e++;i=false;r=true}else if(t.src.charCodeAt(n)===9){r=true;if((t.bsCount[p]+e)%4===3){n++;e++;i=false}else{i=true}}else{r=false}let l=e;o.push(t.bMarks[p]);t.bMarks[p]=n;while(n<s){const e=t.src.charCodeAt(n);if($d(e)){if(e===9){l+=4-(l+t.bsCount[p]+(i?1:0))%4}else{l++}}else{break}n++}d=n>=s;u.push(t.bsCount[p]);t.bsCount[p]=t.sCount[p]+1+(r?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 i=false;for(let e=0,n=a.length;e<n;e++){if(a[e](t,p,r,true)){i=true;break}}if(i){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 r=0;r<h.length;r++){t.bMarks[r+e]=o[r];t.tShift[r+e]=h[r];t.sCount[r+e]=f[r];t.bsCount[r+e]=u[r]}t.blkIndent=m;return true}function xp(t,e,r,i){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&&!$d(e)){return false}if(e===l){o++}}if(o<3){return false}if(i){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 Ap(t,e){const r=t.eMarks[e];let i=t.bMarks[e]+t.tShift[e];const n=t.src.charCodeAt(i++);if(n!==42&&n!==45&&n!==43){return-1}if(i<r){const e=t.src.charCodeAt(i);if(!$d(e)){return-1}}return i}function Cp(t,e){const r=t.bMarks[e]+t.tShift[e];const i=t.eMarks[e];let n=r;if(n+1>=i){return-1}let s=t.src.charCodeAt(n++);if(s<48||s>57){return-1}for(;;){if(n>=i){return-1}s=t.src.charCodeAt(n++);if(s>=48&&s<=57){if(n-r>=10){return-1}continue}if(s===41||s===46){break}return-1}if(n<i){s=t.src.charCodeAt(n);if(!$d(s)){return-1}}return n}function Sp(t,e){const r=t.level+2;for(let i=e+2,n=t.tokens.length-2;i<n;i++){if(t.tokens[i].level===r&&t.tokens[i].type==="paragraph_open"){t.tokens[i+2].hidden=true;t.tokens[i].hidden=true;i+=2}}}function Op(t,e,r,i){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(i&&t.parentType==="paragraph"){if(t.sCount[u]>=t.blkIndent){h=true}}let a;let c;let d;if((d=Cp(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=Ap(t,u))>=0){a=false}else{return false}if(h){if(t.skipSpaces(d)>=t.eMarks[u])return false}if(i){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<r){s=d;n=t.eMarks[u];const e=t.sCount[u]+d-(t.bMarks[u]+t.tShift[u]);let i=e;while(s<n){const e=t.src.charCodeAt(s);if(e===9){i+=4-(i+t.bsCount[u])%4}else if(e===32){i++}else{break}s++}const h=s;let c;if(h>=n){c=1}else{c=i-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]=i;if(h>=n&&t.isEmpty(u+1)){t.line=Math.min(t.line+2,r)}else{t.md.block.tokenize(t,u,r,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>=r){break}if(t.sCount[u]<t.blkIndent){break}if(t.sCount[u]-t.blkIndent>=4){break}let F=false;for(let e=0,i=b.length;e<i;e++){if(b[e](t,u,r,true)){F=true;break}}if(F){break}if(a){d=Cp(t,u);if(d<0){break}l=t.bMarks[u]+t.tShift[u]}else{d=Ap(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){Sp(t,m)}return true}function $p(t,e,r,i){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 r=t.lineMax;if(e>=r||t.isEmpty(e)){return null}let i=false;if(t.sCount[e]-t.blkIndent>3){i=true}if(t.sCount[e]<0){i=true}if(!i){const i=t.md.block.ruler.getRules("reference");const n=t.parentType;t.parentType="reference";let s=false;for(let n=0,l=i.length;n<l;n++){if(i[n](t,e,r,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($d(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($d(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(!$d(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(!$d(t)){break}n++}}}if(n<s&&u.charCodeAt(n)!==10){return false}const g=jd(u.slice(1,f));if(!g){return false}if(i){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 Bp="[a-zA-Z_:][a-zA-Z0-9:._-]*";const Rp="[^\"'=<>`\\x00-\\x20]+";const jp="'[^']*'";const Np='"[^"]*"';const qp="(?:"+Rp+"|"+jp+"|"+Np+")";const zp="(?:\\s+"+Bp+"(?:\\s*=\\s*"+qp+")?)";const Tp="<[A-Za-z][A-Za-z0-9\\-]*"+zp+"*\\s*\\/?>";const Ip="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>";const Pp="\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e";const Jp="<[?][\\s\\S]*?[?]>";const Lp="<![A-Za-z][^>]*>";const Wp="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>";const Up=new RegExp("^(?:"+Tp+"|"+Ip+"|"+Pp+"|"+Jp+"|"+Lp+"|"+Wp+")");const Hp=new RegExp("^(?:"+Tp+"|"+Ip+")");const Zp=[[/^<(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(Hp.source+"\\s*$"),/^$/,false]];function Kp(t,e,r,i){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<Zp.length;o++){if(Zp[o][0].test(l)){break}}if(o===Zp.length){return false}if(i){return Zp[o][2]}let u=e+1;if(!Zp[o][1].test(l)){for(;u<r;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(Zp[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 Vp(t,e,r,i){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&&!$d(l)){return false}if(i){return true}s=t.skipSpacesBack(s,n);const u=t.skipCharsBack(s,35,n);if(u>n&&$d(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 Gp(t,e,r){const i=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<r&&!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 r=t.eMarks[o];if(e<r){l=t.src.charCodeAt(e);if(l===45||l===61){e=t.skipChars(e,l);e=t.skipSpaces(e);if(e>=r){s=l===61?1:2;break}}}}if(t.sCount[o]<0){continue}let e=false;for(let n=0,s=i.length;n<s;n++){if(i[n](t,o,r,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 Xp(t,e,r){const i=t.md.block.ruler.getRules("paragraph");const n=t.parentType;let s=e+1;t.parentType="paragraph";for(;s<r&&!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=i.length;n<l;n++){if(i[n](t,s,r,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 Yp=[["table",yp,["paragraph","reference"]],["code",Fp],["fence",Ep,["paragraph","reference","blockquote","list"]],["blockquote",Mp,["paragraph","reference","blockquote","list"]],["hr",xp,["paragraph","reference","blockquote","list"]],["list",Op,["paragraph","reference","blockquote"]],["reference",$p],["html_block",Kp,["paragraph","reference","blockquote"]],["heading",Vp,["paragraph","reference","blockquote"]],["lheading",Gp],["paragraph",Xp]];function Qp(){this.ruler=new Wd;for(let t=0;t<Yp.length;t++){this.ruler.push(Yp[t][0],Yp[t][1],{alt:(Yp[t][2]||[]).slice()})}}Qp.prototype.tokenize=function(t,e,r){const i=this.ruler.getRules("");const n=i.length;const s=t.md.options.maxNesting;let l=e;let o=false;while(l<r){t.line=l=t.skipEmptyLines(l);if(l>=r){break}if(t.sCount[l]<t.blkIndent){break}if(t.level>=s){t.line=r;break}const e=t.line;let u=false;for(let s=0;s<n;s++){u=i[s](t,l,r,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<r&&t.isEmpty(l)){o=true;l++;t.line=l}}};Qp.prototype.parse=function(t,e,r,i){if(!t){return}const n=new this.State(t,e,r,i);this.tokenize(n,n.line,n.lineMax)};Qp.prototype.State=bp;function tm(t,e,r,i){this.src=t;this.env=r;this.md=e;this.tokens=i;this.tokens_meta=Array(i.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}tm.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};tm.prototype.push=function(t,e,r){if(this.pending){this.pushPending()}const i=new Ud(t,e,r);let n=null;if(r<0){this.level--;this.delimiters=this._prev_delimiters.pop()}i.level=this.level;if(r>0){this.level++;this._prev_delimiters.push(this.delimiters);this.delimiters=[];n={delimiters:this.delimiters}}this.pendingLevel=this.level;this.tokens.push(i);this.tokens_meta.push(n);return i};tm.prototype.scanDelims=function(t,e){const r=this.posMax;const i=this.src.charCodeAt(t);const n=t>0?this.src.charCodeAt(t-1):32;let s=t;while(s<r&&this.src.charCodeAt(s)===i){s++}const l=s-t;const o=s<r?this.src.charCodeAt(s):32;const u=Rd(n)||Bd(String.fromCharCode(n));const f=Rd(o)||Bd(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}};tm.prototype.Token=Ud;function em(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 rm(t,e){let r=t.pos;while(r<t.posMax&&!em(t.src.charCodeAt(r))){r++}if(r===t.pos){return false}if(!e){t.pending+=t.src.slice(t.pos,r)}t.pos=r;return true}const im=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function nm(t,e){if(!t.md.options.linkify)return false;if(t.linkLevel>0)return false;const r=t.pos;const i=t.posMax;if(r+3>i)return false;if(t.src.charCodeAt(r)!==58)return false;if(t.src.charCodeAt(r+1)!==47)return false;if(t.src.charCodeAt(r+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(r-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 r=t.push("text","",0);r.content=t.md.normalizeLinkText(o);const i=t.push("link_close","a",-1);i.markup="linkify";i.info="auto"}t.pos+=o.length-s.length;return true}function sm(t,e){let r=t.pos;if(t.src.charCodeAt(r)!==10){return false}const i=t.pending.length-1;const n=t.posMax;if(!e){if(i>=0&&t.pending.charCodeAt(i)===32){if(i>=1&&t.pending.charCodeAt(i-1)===32){let e=i-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)}}r++;while(r<n&&$d(t.src.charCodeAt(r))){r++}t.pos=r;return true}const lm=[];for(let t=0;t<256;t++){lm.push(0)}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(t){lm[t.charCodeAt(0)]=1}));function om(t,e){let r=t.pos;const i=t.posMax;if(t.src.charCodeAt(r)!==92)return false;r++;if(r>=i)return false;let n=t.src.charCodeAt(r);if(n===10){if(!e){t.push("hardbreak","br",0)}r++;while(r<i){n=t.src.charCodeAt(r);if(!$d(n))break;r++}t.pos=r;return true}let s=t.src[r];if(n>=55296&&n<=56319&&r+1<i){const e=t.src.charCodeAt(r+1);if(e>=56320&&e<=57343){s+=t.src[r+1];r++}}const l="\\"+s;if(!e){const e=t.push("text_special","",0);if(n<256&&lm[n]!==0){e.content=s}else{e.content=l}e.markup=l;e.info="escape"}t.pos=r+1;return true}function um(t,e){let r=t.pos;const i=t.src.charCodeAt(r);if(i!==96){return false}const n=r;r++;const s=t.posMax;while(r<s&&t.src.charCodeAt(r)===96){r++}const l=t.src.slice(n,r);const o=l.length;if(t.backticksScanned&&(t.backticks[o]||0)<=n){if(!e)t.pending+=l;t.pos+=o;return true}let u=r;let f;while((f=t.src.indexOf("`",u))!==-1){u=f+1;while(u<s&&t.src.charCodeAt(u)===96){u++}const i=u-f;if(i===o){if(!e){const e=t.push("code_inline","code",0);e.markup=l;e.content=t.src.slice(r,f).replace(/\n/g," ").replace(/^ (.+) $/,"$1")}t.pos=u;return true}t.backticks[i]=f}t.backticksScanned=true;if(!e)t.pending+=l;t.pos+=o;return true}function fm(t,e){const r=t.pos;const i=t.src.charCodeAt(r);if(e){return false}if(i!==126){return false}const n=t.scanDelims(t.pos,true);let s=n.length;const l=String.fromCharCode(i);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:i,length:0,token:t.tokens.length-1,end:-1,open:n.can_open,close:n.can_close})}t.pos+=n.length;return true}function hm(t,e){let r;const i=[];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];r=t.tokens[n.token];r.type="s_open";r.tag="s";r.nesting=1;r.markup="~~";r.content="";r=t.tokens[l.token];r.type="s_close";r.tag="s";r.nesting=-1;r.markup="~~";r.content="";if(t.tokens[l.token-1].type==="text"&&t.tokens[l.token-1].content==="~"){i.push(l.token-1)}}while(i.length){const e=i.pop();let n=e+1;while(n<t.tokens.length&&t.tokens[n].type==="s_close"){n++}n--;if(e!==n){r=t.tokens[n];t.tokens[n]=t.tokens[e];t.tokens[e]=r}}}function am(t){const e=t.tokens_meta;const r=t.tokens_meta.length;hm(t,t.delimiters);for(let i=0;i<r;i++){if(e[i]&&e[i].delimiters){hm(t,e[i].delimiters)}}}const cm={tokenize:fm,postProcess:am};function dm(t,e){const r=t.pos;const i=t.src.charCodeAt(r);if(e){return false}if(i!==95&&i!==42){return false}const n=t.scanDelims(t.pos,i===42);for(let e=0;e<n.length;e++){const e=t.push("text","",0);e.content=String.fromCharCode(i);t.delimiters.push({marker:i,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 pm(t,e){const r=e.length;for(let i=r-1;i>=0;i--){const r=e[i];if(r.marker!==95&&r.marker!==42){continue}if(r.end===-1){continue}const n=e[r.end];const s=i>0&&e[i-1].end===r.end+1&&e[i-1].marker===r.marker&&e[i-1].token===r.token-1&&e[r.end+1].token===n.token+1;const l=String.fromCharCode(r.marker);const o=t.tokens[r.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[i-1].token].content="";t.tokens[e[r.end+1].token].content="";i--}}}function mm(t){const e=t.tokens_meta;const r=t.tokens_meta.length;pm(t,t.delimiters);for(let i=0;i<r;i++){if(e[i]&&e[i].delimiters){pm(t,e[i].delimiters)}}}const wm={tokenize:dm,postProcess:mm};function gm(t,e){let r,i,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++){r=t.src.charCodeAt(p);if(!$d(r)&&r!==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++){r=t.src.charCodeAt(p);if(!$d(r)&&r!==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++){r=t.src.charCodeAt(p);if(!$d(r)&&r!==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){i=t.src.slice(u,p++)}else{p=d+1}}else{p=d+1}if(!i){i=t.src.slice(c,d)}s=t.env.references[jd(i)];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 r=[["href",l]];e.attrs=r;if(o){r.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 bm(t,e){let r,i,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++){r=t.src.charCodeAt(s);if(!$d(r)&&r!==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++){r=t.src.charCodeAt(s);if(!$d(r)&&r!==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++){r=t.src.charCodeAt(s);if(!$d(r)&&r!==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){i=t.src.slice(d,p);const e=[];t.md.inline.parse(i,t.md,t.env,e);const r=t.push("image","img",0);const n=[["src",h],["alt",""]];r.attrs=n;r.children=e;r.content=i;if(u){n.push(["title",u])}}t.pos=s;t.posMax=c;return true}const km=/^([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 Dm=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function vm(t,e){let r=t.pos;if(t.src.charCodeAt(r)!==60){return false}const i=t.pos;const n=t.posMax;for(;;){if(++r>=n)return false;const e=t.src.charCodeAt(r);if(e===60)return false;if(e===62)break}const s=t.src.slice(i+1,r);if(Dm.test(s)){const r=t.md.normalizeLink(s);if(!t.md.validateLink(r)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",r]];e.markup="autolink";e.info="auto";const i=t.push("text","",0);i.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(km.test(s)){const r=t.md.normalizeLink("mailto:"+s);if(!t.md.validateLink(r)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",r]];e.markup="autolink";e.info="auto";const i=t.push("text","",0);i.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 ym(t){return/^<a[>\s]/i.test(t)}function Fm(t){return/^<\/a\s*>/i.test(t)}function Em(t){const e=t|32;return e>=97&&e<=122}function Mm(t,e){if(!t.md.options.html){return false}const r=t.posMax;const i=t.pos;if(t.src.charCodeAt(i)!==60||i+2>=r){return false}const n=t.src.charCodeAt(i+1);if(n!==33&&n!==63&&n!==47&&!Em(n)){return false}const s=t.src.slice(i).match(Up);if(!s){return false}if(!e){const e=t.push("html_inline","",0);e.content=s[0];if(ym(e.content))t.linkLevel++;if(Fm(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 Am=/^&([a-z][a-z0-9]{1,31});/i;function Cm(t,e){const r=t.pos;const i=t.posMax;if(t.src.charCodeAt(r)!==38)return false;if(r+1>=i)return false;const n=t.src.charCodeAt(r+1);if(n===35){const i=t.src.slice(r).match(xm);if(i){if(!e){const e=i[1][0].toLowerCase()==="x"?parseInt(i[1].slice(1),16):parseInt(i[1],10);const r=t.push("text_special","",0);r.content=md(e)?wd(e):wd(65533);r.markup=i[0];r.info="entity"}t.pos+=i[0].length;return true}}else{const i=t.src.slice(r).match(Am);if(i){const r=x(i[0]);if(r!==i[0]){if(!e){const e=t.push("text_special","",0);e.content=r;e.markup=i[0];e.info="entity"}t.pos+=i[0].length;return true}}}return false}function Sm(t){const e={};const r=t.length;if(!r)return;let i=0;let n=-2;const s=[];for(let l=0;l<r;l++){const r=t[l];s.push(0);if(t[i].marker!==r.marker||n!==r.token-1){i=l}n=r.token;r.length=r.length||0;if(!r.close)continue;if(!e.hasOwnProperty(r.marker)){e[r.marker]=[-1,-1,-1,-1,-1,-1]}const o=e[r.marker][(r.open?3:0)+r.length%3];let u=i-s[i]-1;let f=u;for(;u>o;u-=s[u]+1){const e=t[u];if(e.marker!==r.marker)continue;if(e.open&&e.end<0){let i=false;if(e.close||r.open){if((e.length+r.length)%3===0){if(e.length%3!==0||r.length%3!==0){i=true}}}if(!i){const i=u>0&&!t[u-1].open?s[u-1]+1:0;s[l]=l-u+i;s[u]=i;r.open=false;e.end=l;e.close=false;f=-1;n=-2;break}}}if(f!==-1){e[r.marker][(r.open?3:0)+(r.length||0)%3]=f}}}function Om(t){const e=t.tokens_meta;const r=t.tokens_meta.length;Sm(t.delimiters);for(let t=0;t<r;t++){if(e[t]&&e[t].delimiters){Sm(e[t].delimiters)}}}function $m(t){let e,r;let i=0;const n=t.tokens;const s=t.tokens.length;for(e=r=0;e<s;e++){if(n[e].nesting<0)i--;n[e].level=i;if(n[e].nesting>0)i++;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!==r){n[r]=n[e]}r++}}if(e!==r){n.length=r}}const _m=[["text",rm],["linkify",nm],["newline",sm],["escape",om],["backticks",um],["strikethrough",cm.tokenize],["emphasis",wm.tokenize],["link",gm],["image",bm],["autolink",vm],["html_inline",Mm],["entity",Cm]];const Bm=[["balance_pairs",Om],["strikethrough",cm.postProcess],["emphasis",wm.postProcess],["fragments_join",$m]];function Rm(){this.ruler=new Wd;for(let t=0;t<_m.length;t++){this.ruler.push(_m[t][0],_m[t][1])}this.ruler2=new Wd;for(let t=0;t<Bm.length;t++){this.ruler2.push(Bm[t][0],Bm[t][1])}}Rm.prototype.skipToken=function(t){const e=t.pos;const r=this.ruler.getRules("");const i=r.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<i;n++){t.level++;l=r[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};Rm.prototype.tokenize=function(t){const e=this.ruler.getRules("");const r=e.length;const i=t.posMax;const n=t.md.options.maxNesting;while(t.pos<i){const s=t.pos;let l=false;if(t.level<n){for(let i=0;i<r;i++){l=e[i](t,false);if(l){if(s>=t.pos){throw new Error("inline rule didn't increment state.pos")}break}}}if(l){if(t.pos>=i){break}continue}t.pending+=t.src[t.pos++]}if(t.pending){t.pushPending()}};Rm.prototype.parse=function(t,e,r,i){const n=new this.State(t,e,r,i);this.tokenize(n);const s=this.ruler2.getRules("");const l=s.length;for(let t=0;t<l;t++){s[t](n)}};Rm.prototype.State=tm;function jm(t){const e={};t=t||{};e.src_Any=rd.source;e.src_Cc=id.source;e.src_Z=od.source;e.src_P=sd.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 r="[><|]";e.src_pseudo_letter="(?:(?!"+r+"|"+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="(?=$|"+r+"|"+e.src_ZPCc+")"+"(?!"+(t["---"]?"-(?!--)|":"-|")+"_|:\\d|\\.-|\\.(?!$|"+e.src_ZPCc+"))";e.src_path="(?:"+"[/?#]"+"(?:"+"(?!"+e.src_ZCc+"|"+r+"|[()[\\]{}.,\"'?!\\-;]).|"+"\\[(?:(?!"+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="(^|"+r+'|"|\\(|'+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 Nm(t){const e=Array.prototype.slice.call(arguments,1);e.forEach((function(e){if(!e){return}Object.keys(e).forEach((function(r){t[r]=e[r]}))}));return t}function qm(t){return Object.prototype.toString.call(t)}function zm(t){return qm(t)==="[object String]"}function Tm(t){return qm(t)==="[object Object]"}function Im(t){return qm(t)==="[object RegExp]"}function Pm(t){return qm(t)==="[object Function]"}function Jm(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const Lm={fuzzyLink:true,fuzzyEmail:true,fuzzyIP:false};function Wm(t){return Object.keys(t||{}).reduce((function(t,e){return t||Lm.hasOwnProperty(e)}),false)}const Um={"http:":{validate:function(t,e,r){const i=t.slice(e);if(!r.re.http){r.re.http=new RegExp("^\\/\\/"+r.re.src_auth+r.re.src_host_port_strict+r.re.src_path,"i")}if(r.re.http.test(i)){return i.match(r.re.http)[0].length}return 0}},"https:":"http:","ftp:":"http:","//":{validate:function(t,e,r){const i=t.slice(e);if(!r.re.no_http){r.re.no_http=new RegExp("^"+r.re.src_auth+"(?:localhost|(?:(?:"+r.re.src_domain+")\\.)+"+r.re.src_domain_root+")"+r.re.src_port+r.re.src_host_terminator+r.re.src_path,"i")}if(r.re.no_http.test(i)){if(e>=3&&t[e-3]===":"){return 0}if(e>=3&&t[e-3]==="/"){return 0}return i.match(r.re.no_http)[0].length}return 0}},"mailto:":{validate:function(t,e,r){const i=t.slice(e);if(!r.re.mailto){r.re.mailto=new RegExp("^"+r.re.src_email_name+"@"+r.re.src_host_strict,"i")}if(r.re.mailto.test(i)){return i.match(r.re.mailto)[0].length}return 0}}};const Hm="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 Zm="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Km(t){t.__index__=-1;t.__text_cache__=""}function Vm(t){return function(e,r){const i=e.slice(r);if(t.test(i)){return i.match(t)[0].length}return 0}}function Gm(){return function(t,e){e.normalize(t)}}function Xm(t){const e=t.re=jm(t.__opts__);const r=t.__tlds__.slice();t.onCompile();if(!t.__tlds_replaced__){r.push(Hm)}r.push(e.src_xn);e.src_tlds=r.join("|");function i(t){return t.replace("%TLDS%",e.src_tlds)}e.email_fuzzy=RegExp(i(e.tpl_email_fuzzy),"i");e.link_fuzzy=RegExp(i(e.tpl_link_fuzzy),"i");e.link_no_ip_fuzzy=RegExp(i(e.tpl_link_no_ip_fuzzy),"i");e.host_fuzzy_test=RegExp(i(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 r=t.__schemas__[e];if(r===null){return}const i={validate:null,link:null};t.__compiled__[e]=i;if(Tm(r)){if(Im(r.validate)){i.validate=Vm(r.validate)}else if(Pm(r.validate)){i.validate=r.validate}else{s(e,r)}if(Pm(r.normalize)){i.normalize=r.normalize}else if(!r.normalize){i.normalize=Gm()}else{s(e,r)}return}if(zm(r)){n.push(e);return}s(e,r)}));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:Gm()};const l=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(Jm).join("|");t.re.schema_test=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+l+")","i");t.re.schema_search=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+l+")","ig");t.re.schema_at_start=RegExp("^"+t.re.schema_search.source,"i");t.re.pretest=RegExp("("+t.re.schema_test.source+")|("+t.re.host_fuzzy_test.source+")|@","i");Km(t)}function Ym(t,e){const r=t.__index__;const i=t.__last_index__;const n=t.__text_cache__.slice(r,i);this.schema=t.__schema__.toLowerCase();this.index=r+e;this.lastIndex=i+e;this.raw=n;this.text=n;this.url=n}function Qm(t,e){const r=new Ym(t,e);t.__compiled__[r.schema].normalize(r,t);return r}function tw(t,e){if(!(this instanceof tw)){return new tw(t,e)}if(!e){if(Wm(t)){e=t;t={}}}this.__opts__=Nm({},Lm,e);this.__index__=-1;this.__last_index__=-1;this.__schema__="";this.__text_cache__="";this.__schemas__=Nm({},Um,t);this.__compiled__={};this.__tlds__=Zm;this.__tlds_replaced__=false;this.re={};Xm(this)}tw.prototype.add=function t(e,r){this.__schemas__[e]=r;Xm(this);return this};tw.prototype.set=function t(e){this.__opts__=Nm(this.__opts__,e);return this};tw.prototype.test=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length){return false}let r,i,n,s,l,o,u,f,h;if(this.re.schema_test.test(e)){u=this.re.schema_search;u.lastIndex=0;while((r=u.exec(e))!==null){s=this.testSchemaAt(e,r[2],u.lastIndex);if(s){this.__schema__=r[2];this.__index__=r.index+r[1].length;this.__last_index__=r.index+r[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((i=e.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy))!==null){l=i.index+i[1].length;if(this.__index__<0||l<this.__index__){this.__schema__="";this.__index__=l;this.__last_index__=i.index+i[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};tw.prototype.pretest=function t(e){return this.re.pretest.test(e)};tw.prototype.testSchemaAt=function t(e,r,i){if(!this.__compiled__[r.toLowerCase()]){return 0}return this.__compiled__[r.toLowerCase()].validate(e,i,this)};tw.prototype.match=function t(e){const r=[];let i=0;if(this.__index__>=0&&this.__text_cache__===e){r.push(Qm(this,i));i=this.__last_index__}let n=i?e.slice(i):e;while(this.test(n)){r.push(Qm(this,i));n=n.slice(this.__last_index__);i+=this.__last_index__}if(r.length){return r}return null};tw.prototype.matchAtStart=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length)return null;const r=this.re.schema_at_start.exec(e);if(!r)return null;const i=this.testSchemaAt(e,r[2],r[0].length);if(!i)return null;this.__schema__=r[2];this.__index__=r.index+r[1].length;this.__last_index__=r.index+r[0].length+i;return Qm(this,0)};tw.prototype.tlds=function t(e,r){e=Array.isArray(e)?e:[e];if(!r){this.__tlds__=e.slice();this.__tlds_replaced__=true;Xm(this);return this}this.__tlds__=this.__tlds__.concat(e).sort().filter((function(t,e,r){return t!==r[e-1]})).reverse();Xm(this);return this};tw.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}};tw.prototype.onCompile=function t(){};const ew=2147483647;const rw=36;const iw=1;const nw=26;const sw=38;const lw=700;const ow=72;const uw=128;const fw="-";const hw=/^xn--/;const aw=/[^\0-\x7F]/;const cw=/[\x2E\u3002\uFF0E\uFF61]/g;const dw={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const pw=rw-iw;const mw=Math.floor;const ww=String.fromCharCode;function gw(t){throw new RangeError(dw[t])}function bw(t,e){const r=[];let i=t.length;while(i--){r[i]=e(t[i])}return r}function kw(t,e){const r=t.split("@");let i="";if(r.length>1){i=r[0]+"@";t=r[1]}t=t.replace(cw,".");const n=t.split(".");const s=bw(n,e).join(".");return i+s}function Dw(t){const e=[];let r=0;const i=t.length;while(r<i){const n=t.charCodeAt(r++);if(n>=55296&&n<=56319&&r<i){const i=t.charCodeAt(r++);if((i&64512)==56320){e.push(((n&1023)<<10)+(i&1023)+65536)}else{e.push(n);r--}}else{e.push(n)}}return e}const vw=t=>String.fromCodePoint(...t);const yw=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 rw};const Fw=function(t,e){return t+22+75*(t<26)-((e!=0)<<5)};const Ew=function(t,e,r){let i=0;t=r?mw(t/lw):t>>1;t+=mw(t/e);for(;t>pw*nw>>1;i+=rw){t=mw(t/pw)}return mw(i+(pw+1)*t/(t+sw))};const Mw=function(t){const e=[];const r=t.length;let i=0;let n=uw;let s=ow;let l=t.lastIndexOf(fw);if(l<0){l=0}for(let r=0;r<l;++r){if(t.charCodeAt(r)>=128){gw("not-basic")}e.push(t.charCodeAt(r))}for(let o=l>0?l+1:0;o<r;){const l=i;for(let e=1,n=rw;;n+=rw){if(o>=r){gw("invalid-input")}const l=yw(t.charCodeAt(o++));if(l>=rw){gw("invalid-input")}if(l>mw((ew-i)/e)){gw("overflow")}i+=l*e;const u=n<=s?iw:n>=s+nw?nw:n-s;if(l<u){break}const f=rw-u;if(e>mw(ew/f)){gw("overflow")}e*=f}const u=e.length+1;s=Ew(i-l,u,l==0);if(mw(i/u)>ew-n){gw("overflow")}n+=mw(i/u);i%=u;e.splice(i++,0,n)}return String.fromCodePoint(...e)};const xw=function(t){const e=[];t=Dw(t);const r=t.length;let i=uw;let n=0;let s=ow;for(const r of t){if(r<128){e.push(ww(r))}}const l=e.length;let o=l;if(l){e.push(fw)}while(o<r){let r=ew;for(const e of t){if(e>=i&&e<r){r=e}}const u=o+1;if(r-i>mw((ew-n)/u)){gw("overflow")}n+=(r-i)*u;i=r;for(const r of t){if(r<i&&++n>ew){gw("overflow")}if(r===i){let t=n;for(let r=rw;;r+=rw){const i=r<=s?iw:r>=s+nw?nw:r-s;if(t<i){break}const n=t-i;const l=rw-i;e.push(ww(Fw(i+n%l,0)));t=mw(n/l)}e.push(ww(Fw(t,0)));s=Ew(n,u,o===l);n=0;++o}}++n;++i}return e.join("")};const Aw=function(t){return kw(t,(function(t){return hw.test(t)?Mw(t.slice(4).toLowerCase()):t}))};const Cw=function(t){return kw(t,(function(t){return aw.test(t)?"xn--"+xw(t):t}))};const Sw={version:"2.3.1",ucs2:{decode:Dw,encode:vw},decode:Mw,encode:xw,toASCII:Cw,toUnicode:Aw};const Ow={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}};const $w={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 Bw={default:Ow,zero:$w,commonmark:_w};const Rw=/^(vbscript|javascript|file|data):/;const jw=/^data:image\/(gif|png|jpeg|webp);/;function Nw(t){const e=t.trim().toLowerCase();return Rw.test(e)?jw.test(e):true}const qw=["http:","https:","mailto:"];function zw(t){const e=td(t,true);if(e.hostname){if(!e.protocol||qw.indexOf(e.protocol)>=0){try{e.hostname=Sw.toASCII(e.hostname)}catch(t){}}}return zc(Tc(e))}function Tw(t){const e=td(t,true);if(e.hostname){if(!e.protocol||qw.indexOf(e.protocol)>=0){try{e.hostname=Sw.toUnicode(e.hostname)}catch(t){}}}return jc(Tc(e),jc.defaultChars+"%")}function Iw(t,e){if(!(this instanceof Iw)){return new Iw(t,e)}if(!e){if(!hd(t)){e=t||{};t="default"}}this.inline=new Rm;this.block=new Qp;this.core=new gp;this.renderer=new Ld;this.linkify=new tw;this.validateLink=Nw;this.normalizeLink=zw;this.normalizeLinkText=Tw;this.utils=qd;this.helpers=dd({},Pd);this.options={};this.configure(t);if(e){this.set(e)}}Iw.prototype.set=function(t){dd(this.options,t);return this};Iw.prototype.configure=function(t){const e=this;if(hd(t)){const e=t;t=Bw[e];if(!t){throw new Error('Wrong `markdown-it` preset "'+e+'", check name')}}if(!t){throw new Error("Wrong `markdown-it` preset, can't be empty")}if(t.options){e.set(t.options)}if(t.components){Object.keys(t.components).forEach((function(r){if(t.components[r].rules){e[r].ruler.enableOnly(t.components[r].rules)}if(t.components[r].rules2){e[r].ruler2.enableOnly(t.components[r].rules2)}}))}return this};Iw.prototype.enable=function(t,e){let r=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){r=r.concat(this[e].ruler.enable(t,true))}),this);r=r.concat(this.inline.ruler2.enable(t,true));const i=t.filter((function(t){return r.indexOf(t)<0}));if(i.length&&!e){throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+i)}return this};Iw.prototype.disable=function(t,e){let r=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){r=r.concat(this[e].ruler.disable(t,true))}),this);r=r.concat(this.inline.ruler2.disable(t,true));const i=t.filter((function(t){return r.indexOf(t)<0}));if(i.length&&!e){throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+i)}return this};Iw.prototype.use=function(t){const e=[this].concat(Array.prototype.slice.call(arguments,1));t.apply(t,e);return this};Iw.prototype.parse=function(t,e){if(typeof t!=="string"){throw new Error("Input data should be a String")}const r=new this.core.State(t,this,e);this.core.process(r);return r.tokens};Iw.prototype.render=function(t,e){e=e||{};return this.renderer.render(this.parse(t,e),this.options,e)};Iw.prototype.parseInline=function(t,e){const r=new this.core.State(t,this,e);r.inlineMode=true;this.core.process(r);return r.tokens};Iw.prototype.renderInline=function(t,e){e=e||{};return this.renderer.render(this.parseInline(t,e),this.options,e)};const Pw=new dr({nodes:{doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return["p",0]}},blockquote:{content:"block+",group:"block",parseDOM:[{tag:"blockquote"}],toDOM(){return["blockquote",0]}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return["div",["hr"]]}},heading:{attrs:{level:{default:1}},content:"(text | image)*",group:"block",defining:true,parseDOM:[{tag:"h1",attrs:{level:1}},{tag:"h2",attrs:{level:2}},{tag:"h3",attrs:{level:3}},{tag:"h4",attrs:{level:4}},{tag:"h5",attrs:{level:5}},{tag:"h6",attrs:{level:6}}],toDOM(t){return["h"+t.attrs.level,0]}},code_block:{content:"text*",group:"block",code:true,defining:true,marks:"",attrs:{params:{default:""}},parseDOM:[{tag:"pre",preserveWhitespace:"full",getAttrs:t=>({params:t.getAttribute("data-params")||""})}],toDOM(t){return["pre",t.attrs.params?{"data-params":t.attrs.params}:{},["code",0]]}},ordered_list:{content:"list_item+",group:"block",attrs:{order:{default:1},tight:{default:false}},parseDOM:[{tag:"ol",getAttrs(t){return{order:t.hasAttribute("start")?+t.getAttribute("start"):1,tight:t.hasAttribute("data-tight")}}}],toDOM(t){return["ol",{start:t.attrs.order==1?null:t.attrs.order,"data-tight":t.attrs.tight?"true":null},0]}},bullet_list:{content:"list_item+",group:"block",attrs:{tight:{default:false}},parseDOM:[{tag:"ul",getAttrs:t=>({tight:t.hasAttribute("data-tight")})}],toDOM(t){return["ul",{"data-tight":t.attrs.tight?"true":null},0]}},list_item:{content:"block+",defining:true,parseDOM:[{tag:"li"}],toDOM(){return["li",0]}},text:{group:"inline"},image:{inline:true,attrs:{src:{},alt:{default:null},title:{default:null}},group:"inline",draggable:true,parseDOM:[{tag:"img[src]",getAttrs(t){return{src:t.getAttribute("src"),title:t.getAttribute("title"),alt:t.getAttribute("alt")}}}],toDOM(t){return["img",t.attrs]}},hard_break:{inline:true,group:"inline",selectable:false,parseDOM:[{tag:"br"}],toDOM(){return["br"]}}},marks:{em:{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"},{style:"font-style=normal",clearMark:t=>t.type.name=="em"}],toDOM(){return["em"]}},strong:{parseDOM:[{tag:"strong"},{tag:"b",getAttrs:t=>t.style.fontWeight!="normal"&&null},{style:"font-weight=400",clearMark:t=>t.type.name=="strong"},{style:"font-weight",getAttrs:t=>/^(bold(er)?|[5-9]\d{2,})$/.test(t)&&null}],toDOM(){return["strong"]}},link:{attrs:{href:{},title:{default:null}},inclusive:false,parseDOM:[{tag:"a[href]",getAttrs(t){return{href:t.getAttribute("href"),title:t.getAttribute("title")}}}],toDOM(t){return["a",t.attrs]}},code:{parseDOM:[{tag:"code"}],toDOM(){return["code"]}}}});function Jw(t,e){if(t.isText&&e.isText&&ve.sameSet(t.marks,e.marks))return t.withText(t.text+e.text)}class Lw{constructor(t,e){this.schema=t;this.tokenHandlers=e;this.stack=[{type:t.topNodeType,attrs:null,content:[],marks:ve.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(),r=e.content,i=r[r.length-1];let n=this.schema.text(t,e.marks),s;if(i&&(s=Jw(i,n)))r[r.length-1]=s;else r.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 r=t[e];let i=this.tokenHandlers[r.type];if(!i)throw new Error("Token type `"+r.type+"` not supported by Markdown parser");i(this,r,t,e)}}addNode(t,e,r){let i=this.top();let n=t.createAndFill(e,r,i?i.marks:[]);if(!n)return null;this.push(n);return n}openNode(t,e){this.stack.push({type:t,attrs:e,content:[],marks:ve.none})}closeNode(){let t=this.stack.pop();return this.addNode(t.type,t.attrs,t.content)}}function Ww(t,e,r,i){if(t.getAttrs)return t.getAttrs(e,r,i);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 Hw(t){return t[t.length-1]=="\n"?t.slice(0,t.length-1):t}function Zw(){}function Kw(t,e){let r=Object.create(null);for(let i in e){let n=e[i];if(n.block){let e=t.nodeType(n.block);if(Uw(n,i)){r[i]=(t,r,i,s)=>{t.openNode(e,Ww(n,r,i,s));t.addText(Hw(r.content));t.closeNode()}}else{r[i+"_open"]=(t,r,i,s)=>t.openNode(e,Ww(n,r,i,s));r[i+"_close"]=t=>t.closeNode()}}else if(n.node){let e=t.nodeType(n.node);r[i]=(t,r,i,s)=>t.addNode(e,Ww(n,r,i,s))}else if(n.mark){let e=t.marks[n.mark];if(Uw(n,i)){r[i]=(t,r,i,s)=>{t.openMark(e.create(Ww(n,r,i,s)));t.addText(Hw(r.content));t.closeMark(e)}}else{r[i+"_open"]=(t,r,i,s)=>t.openMark(e.create(Ww(n,r,i,s)));r[i+"_close"]=t=>t.closeMark(e)}}else if(n.ignore){if(Uw(n,i)){r[i]=Zw}else{r[i+"_open"]=Zw;r[i+"_close"]=Zw}}else{throw new RangeError("Unrecognized parsing spec "+JSON.stringify(n))}}r.text=(t,e)=>t.addText(e.content);r.inline=(t,e)=>t.parseTokens(e.children);r.softbreak=r.softbreak||(t=>t.addText(" "));return r}class Vw{constructor(t,e,r){this.schema=t;this.tokenizer=e;this.tokens=r;this.tokenHandlers=Kw(t,r)}parse(t,e={}){let r=new Lw(this.schema,this.tokenHandlers),i;r.parseTokens(this.tokenizer.parse(t,e));do{i=r.closeNode()}while(r.stack.length);return i||this.schema.topNodeType.createAndFill()}}function Gw(t,e){while(++e<t.length)if(t[e].type!="list_item_open")return t[e].hidden;return false}new Vw(Pw,Iw("commonmark",{html:false}),{blockquote:{block:"blockquote"},paragraph:{block:"paragraph"},list_item:{block:"list_item"},bullet_list:{block:"bullet_list",getAttrs:(t,e,r)=>({tight:Gw(e,r)})},ordered_list:{block:"ordered_list",getAttrs:(t,e,r)=>({order:+t.attrGet("start")||1,tight:Gw(e,r)})},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 Xw={open:"",close:"",mixable:true};class Yw{constructor(t,e,r={}){this.nodes=t;this.marks=e;this.options=r}serialize(t,e={}){e=Object.assign({},this.options,e);let r=new rg(this.nodes,this.marks,e);r.renderContent(t);return r.out}}const Qw=new Yw({blockquote(t,e){t.wrapBlock("> ",null,e,(()=>t.renderContent(e)))},code_block(t,e){const r=e.textContent.match(/`{3,}/gm);const i=r?r.sort().slice(-1)[0]+"`":"```";t.write(i+(e.attrs.params||"")+"\n");t.text(e.textContent,false);t.write("\n");t.write(i);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 r=e.attrs.order||1;let i=String(r+e.childCount-1).length;let n=t.repeat(" ",i+2);t.renderList(e,n,(e=>{let n=String(r+e);return t.repeat(" ",i-n.length)+n+". "}))},list_item(t,e){t.renderContent(e)},paragraph(t,e){t.renderInline(e);t.closeBlock(e)},image(t,e){t.write("!["+t.esc(e.attrs.alt||"")+"]("+e.attrs.src.replace(/[\(\)]/g,"\\$&")+(e.attrs.title?' "'+e.attrs.title.replace(/"/g,'\\"')+'"':"")+")")},hard_break(t,e,r,i){for(let n=i+1;n<r.childCount;n++)if(r.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,r,i){t.inAutolink=eg(e,r,i);return t.inAutolink?"<":"["},close(t,e,r,i){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,r,i){return tg(r.child(i),-1)},close(t,e,r,i){return tg(r.child(i-1),1)},escape:false}});function tg(t,e){let r=/`+/g,i,n=0;if(t.isText)while(i=r.exec(t.text))n=Math.max(n,i[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 eg(t,e,r){if(t.attrs.title||!/^\w+:/.test(t.attrs.href))return false;let i=e.child(r);if(!i.isText||i.text!=t.attrs.href||i.marks[i.marks.length-1]!=t)return false;return r==e.childCount-1||!t.isInSet(e.child(r+1).marks)}class rg{constructor(t,e,r){this.nodes=t;this.marks=e;this.options=r;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 r=/\s+$/.exec(e);if(r)e=e.slice(0,e.length-r[0].length);for(let r=1;r<t;r++)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=Xw}return e}wrapBlock(t,e,r,i){let n=this.delim;this.write(e!=null?e:t);this.delim+=t;i();this.delim=n;this.closeBlock(r)}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 r=t.split("\n");for(let t=0;t<r.length;t++){this.write();if(!e&&r[t][0]=="["&&/(^|[^\\])\!$/.test(this.out))this.out=this.out.slice(0,this.out.length-1)+"\\!";this.out+=e?this.esc(r[t],this.atBlockStart):r[t];if(t!=r.length-1)this.out+="\n"}}render(t,e,r){if(this.nodes[t.type.name]){this.nodes[t.type.name](this,t,e,r)}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,r,i)=>this.render(e,t,i)))}renderInline(t,e=true){this.atBlockStart=e;let r=[],i="";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 r=t.child(s+1);return e.isInSet(r.marks)&&(!r.isText||/\S/.test(r.text))}));let o=i;i="";if(e&&e.isText&&l.some((t=>{let e=this.getMark(t.type.name);return e&&e.expelEnclosingWhitespace&&!t.isInSet(r)}))){let[t,i,n]=/^(\s*)(.*)$/m.exec(e.text);if(i){o+=i;e=n?e.withText(n):null;if(!e)l=r}}if(e&&e.isText&&l.some((e=>{let r=this.getMark(e.type.name);return r&&r.expelEnclosingWhitespace&&(s==t.childCount-1||!e.isInSet(t.child(s+1).marks))}))){let[t,n,s]=/^(.*?)(\s*)$/m.exec(e.text);if(s){i=s;e=n?e.withText(n):null;if(!e)l=r}}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 i=0;i<r.length;i++){let n=r[i];if(!this.getMark(n.type.name).mixable)break;if(e.eq(n)){if(t>i)l=l.slice(0,i).concat(e).concat(l.slice(i,t)).concat(l.slice(t+1,h));else if(i>t)l=l.slice(0,t).concat(l.slice(t+1,i)).concat(e).concat(l.slice(i,h));continue t}}}let a=0;while(a<Math.min(r.length,h)&&l[a].eq(r[a]))++a;while(a<r.length)this.text(this.markString(r.pop(),false,t,s),false);if(o)this.text(o);if(e){while(r.length<h){let e=l[r.length];r.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,r){if(this.closed&&this.closed.type==t.type)this.flushClose(3);else if(this.inTightList)this.flushClose(1);let i=typeof t.attrs.tight!="undefined"?t.attrs.tight:this.options.tightLists;let n=this.inTightList;this.inTightList=i;t.forEach(((n,s,l)=>{if(l&&i)this.flushClose(1);this.wrapBlock(e,r(l),t,(()=>this.render(n,t,l)))}));this.inTightList=n}esc(t,e=false){t=t.replace(/[`*\\~\[\]_]/g,((e,r)=>e=="_"&&r>0&&r+1<t.length&&t[r-1].match(/\w/)&&t[r+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 r="";for(let i=0;i<e;i++)r+=t;return r}markString(t,e,r,i){let n=this.getMark(t.type.name);let s=e?n.open:n.close;return typeof s=="string"?s:s(this,t,r,i)}getEnclosingWhitespace(t){return{leading:(t.match(/^(\s+)/)||[undefined])[0],trailing:(t.match(/(\s+)$/)||[undefined])[0]}}}const ig=t=>(e,r)=>{const i=`<${t.tagName}`+t.attributes.map((t=>` ${t}="${r.attrs[t]}"`)).join("")+">";const n=`</${t.tagName}>`;e.write(i);e.renderContent(r);e.write(n)};const ng=t=>{const e={};t.forEach((t=>{e[t.tagName]=ig(t)}));const r=Object.assign(Object.assign({},Qw.nodes),e);const i=Object.assign(Object.assign({},Qw.marks),{strikethrough:{open:"~~",close:"~~",mixable:true,expelEnclosingWhitespace:true}});return new Yw(r,i)};class sg{constructor(t){this.parseAsHTML=t=>{const e=this.customNodes.map((t=>({tagName:t.tagName,attributes:t.attributes})));return A(t,{whitelist:e})};this.serialize=t=>{if(t.dom.textContent===""){return""}else{return this.markdownSerializer.serialize(t.state.doc)}};this.markdownSerializer=ng(t);this.customNodes=t}}class lg{constructor(){this.parseAsHTML=t=>new Promise((e=>{e(t)}));this.serialize=t=>{if(t.dom.textContent===""){return""}else{return t.dom.innerHTML}}}}const og={parseDOM:[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration=line-through"}],toDOM:()=>["s",0]};const ug=new vn("linkPlugin");const fg=(t,e)=>{const{from:r,to:i}=t.state.selection;let n="";let s="";t.state.doc.nodesBetween(r,i,((t,e)=>{if(t.type.name!=="text"){return}const l=Math.max(0,r-e);const o=Math.min(t.text.length,i-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 hg=(t,e,r)=>{while(e>0){const i=t.nodeAt(e-1);if(!(i===null||i===void 0?void 0:i.isText)||!i.marks.some((t=>t.type.name===oc.Link&&t.attrs.href===r))){break}e--}return e};const ag=(t,e,r)=>{while(e<t.content.size){const i=t.nodeAt(e);if(!(i===null||i===void 0?void 0:i.isText)||!i.marks.some((t=>t.type.name===oc.Link&&t.attrs.href===r))){break}e++}return e};const cg=(t,e)=>{const r=t.posAtCoords({left:e.clientX,top:e.clientY});const i=t.state.doc.nodeAt(r.pos);if(!i){return null}const n=i.marks.find((t=>t.type.name===oc.Link));if(!n){return null}const s=n.attrs.href;const l=hg(t.state.doc,r.pos,s);const o=ag(t.state.doc,r.pos,s);const u=t.state.doc.textBetween(l,o," ");return{href:s,text:u,from:l,to:o}};const dg=(t,e)=>{const{href:r}=cg(t,e);if(r){window.open(r,"_blank");return true}return false};const pg=(t,e,r)=>{const i=new CustomEvent("open-editor-link-menu",{detail:{href:e,text:r},bubbles:true,composed:true});t.dom.dispatchEvent(i)};let mg=0;const wg=200;let gg;const bg=(t,e)=>{const r=Date.now();if(r-mg<wg){clearTimeout(gg);mg=r;return false}mg=r;gg=setTimeout((()=>{const r=cg(t,e);if(r){const{href:e,text:i,from:n,to:s}=r;const l=t.state.tr.setSelection(Qi.create(t.state.doc,n,s));t.dispatch(l);pg(t,e,i)}}),wg);return true};const kg=(t,e)=>{const r=e.clipboardData;if(!r){return false}const i=r.getData("text/plain");if(kc(i)){Dg(t,i);return true}return false};const Dg=(t,e)=>{const{state:r,dispatch:i}=t;const{from:n,to:s}=r.selection;const l=Hu.marks.link.create({href:e,title:e,target:gc(e)?"_blank":null});const o=r.doc.textBetween(n,s," ")||e;const u=r.tr.insertText(o,n,s).addMark(n,n+o.length,l);i(u)};const vg=t=>new bn({key:ug,props:{handlePaste:(t,e)=>kg(t,e),handleDOMEvents:{mousedown:(t,e)=>{if((e.metaKey||e.ctrlKey)&&e.button===0){return dg(t,e)}if(e.button!==hc.Right){return bg(t,e)}return true},click:(t,e)=>{if(!(e.target instanceof HTMLElement)){return}const r=e.target.closest("a");if(r){e.preventDefault();e.stopPropagation()}}}},view:()=>({update:e=>{fg(e,t)}})});const yg=new vn("imageRemoverPlugin");const Fg=()=>new bn({key:yg,props:{handlePaste:(t,e,r)=>xg(t,e,r)}});const Eg=t=>{if(t instanceof Je){if(t.type.name==="image"){return true}let e=false;t.content.forEach((t=>{if(Eg(t)){e=true}}));return e}else if(t instanceof ge){let e=false;t.forEach((t=>{if(Eg(t)){e=true}}));return e}return false};const Mg=t=>{const e=[];t.forEach((t=>{if(!Eg(t)){if(t.content.size>0){const r=Mg(t.content);const i=t.copy(r);e.push(i)}else{e.push(t)}}}));return ge.fromArray(e)};const xg=(t,e,r)=>{const i=e.clipboardData;if(!i){return false}const n=new Fe(Mg(r.content),r.openStart,r.openEnd);if(n.content.childCount<r.content.childCount){const{state:e,dispatch:r}=t;const i=e.tr.replaceSelection(n);r(i);return true}return false};const Ag=new vn("actionBarPlugin");const Cg=(t,e,r)=>{const i={};t.forEach((t=>{const n=e.getCommand(t);i[t]=n&&n.active&&n.active(r.state)}));return i};const Sg=(t,e,r)=>new bn({key:Ag,state:{init:()=>({}),apply:(t,e)=>{const r=t.getMeta(Ag);return r?r:e}},view:()=>({update:i=>{const n=Ag.getState(i.state);const s=Cg(t,e,i);if(!$(n,s)){const t=i.state.tr.setMeta(Ag,s);i.dispatch(t);r(s)}}})});const Og=new vn("actionBarInteractionPlugin");const $g=(t,e)=>{const{state:r}=e;const i=r.selection;let n=r.tr;if(!i.empty){n.setSelection(i)}t(r,(t=>{n=t}));e.dispatch(n);e.focus()};const _g=t=>new bn({key:Og,props:{handleDOMEvents:{actionBarItemClick:(e,r)=>{r.preventDefault();r.stopPropagation();const{value:i}=r.detail;try{const r=t.getCommand(i);$g(r,e)}catch(t){console.error(`Error executing command: ${t}`)}return true},saveLinkMenu:(e,r)=>{r.preventDefault();r.stopPropagation();const{type:i,link:n}=r.detail;if(i===oc.Link){try{const r=t.getCommand(i,n);$g(r,e)}catch(t){console.error(`Error executing command: ${t}`)}}return true}}}});const Bg=t=>{const e={};t.attributes.forEach((t=>e[t]={}));const r=`${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:r,getAttrs:e=>{const r={};t.attributes.forEach((t=>r[t]=e.getAttribute(t)));return r}}]}};const Rg=t=>{const e=qg(t);return{insert:r=>{const{state:i,dispatch:n}=t;const{schema:s,selection:l}=i;const{$from:o}=l;let u;try{u=jg(r,s)}catch(t){console.error(t.message);return}const f=s.text(" ");const h=s.nodes.doc.create(null,[u,f]);const a=i.tr.replaceWith(e,o.pos,h);a.setMeta("stopTrigger",true);n(a)}}};const jg=(t,e)=>{var r;if(typeof t==="string"){return e.text(t)}const i=t.node;if(typeof i==="string"){return e.text(i)}const n=Ng(i.tagName,e);const s=((r=t.children)!==null&&r!==void 0?r:[]).map((t=>jg(t,e))).filter(Boolean);return n.create(i.attributes,s)};const Ng=(t,e)=>{const r=Object.values(e.nodes).find((e=>e.name===t));if(!r){throw new Error(`A custom element hasn't been registered for node ${t}`)}return r};const qg=t=>{var e,r,i;return(i=(r=(e=t.state)===null||e===void 0?void 0:e.selection)===null||r===void 0?void 0:r.$from)===null||i===void 0?void 0:i.pos};const zg=(t,e)=>t.length===1&&e.includes(t);const Tg=t=>{const{$from:e}=t.selection;if(e.pos===1){return true}const r=e.pos-1;if(r>0){if(e.parentOffset===0){return true}const i=t.doc.textBetween(r,e.pos);return i===" "||i==="\n"}return false};const Ig=(t,e,r,i)=>{const n=t.selection.$from.pos;if(n<r||n>r+i+1){return false}return t.doc.textBetween(r,r+1)===e};const Pg=(t,e,r)=>({trigger:e,textEditor:Rg(t),value:r});const Jg=(t,e,r,i)=>{const n=new CustomEvent(t,{detail:Pg(e,r,i),bubbles:true,composed:true});e.dom.dispatchEvent(n)};const Lg=(t,e,r)=>{let i="";let n="";e.forEach((t=>{if(t.docChanged){t.steps.forEach((t=>{if(t instanceof ni||t instanceof si){const e=t.slice;const s=t.from;const l=t.to;if(e===null||e===void 0?void 0:e.size){i+=e.content.textBetween(0,e.size)}else if(s!==l){const t=r.doc.textBetween(s,l);n+=t}}}))}}));if(i){t+=i}else if(n){t=t.slice(0,-n.length)}return t};const Wg=t=>{let e=null;let r="";let i=null;let n=null;const s=()=>{r="";Jg("triggerStop",i,e,r);n=null;e=null};const l=(t,e)=>{if(e.key==="Escape"){s();return true}return false};const o=(i,s)=>{const{state:l}=i;if(s.inputType==="insertText"&&zg(s.data,t)&&Tg(l)){e=s.data;r="";n=l.selection.$from.pos-r.length;Jg("triggerStart",i,e,r);return false}return false};const u=(t,s,l)=>{if(!e||!n||!i){return}if(!Ig(l,e,n,r.length)){return}const o=Lg(r,t,s);if(o!==r){r=o;Jg("triggerChange",i,e,r.slice(1))}};return new bn({key:new vn("triggerPlugin"),view:t=>{i=t;return{}},state:{init:()=>({}),apply:t=>{if(t.getMeta("stopTrigger")){s()}return{}}},props:{handleKeyDown:l,handleDOMEvents:{input:o}},appendTransaction:u})};var Ug;var Hg;if(typeof WeakMap!="undefined"){let t=new WeakMap;Ug=e=>t.get(e);Hg=(e,r)=>{t.set(e,r);return r}}else{const t=[];const e=10;let r=0;Ug=e=>{for(let r=0;r<t.length;r+=2)if(t[r]==e)return t[r+1]};Hg=(i,n)=>{if(r==e)r=0;t[r++]=i;return t[r++]=n}}var Zg=class{constructor(t,e,r,i){this.width=t;this.height=e;this.map=r;this.problems=i}findCell(t){for(let e=0;e<this.map.length;e++){const r=this.map[e];if(r!=t)continue;const i=e%this.width;const n=e/this.width|0;let s=i+1;let l=n+1;for(let t=1;s<this.width&&this.map[e+t]==r;t++){s++}for(let t=1;l<this.height&&this.map[e+this.width*t]==r;t++){l++}return{left:i,top:n,right:s,bottom:l}}throw new RangeError(`No cell with offset ${t} found`)}colCount(t){for(let e=0;e<this.map.length;e++){if(this.map[e]==t){return e%this.width}}throw new RangeError(`No cell with offset ${t} found`)}nextCell(t,e,r){const{left:i,right:n,top:s,bottom:l}=this.findCell(t);if(e=="horiz"){if(r<0?i==0:n==this.width)return null;return this.map[s*this.width+(r<0?i-1:n)]}else{if(r<0?s==0:l==this.height)return null;return this.map[i+this.width*(r<0?s-1:l)]}}rectBetween(t,e){const{left:r,right:i,top:n,bottom:s}=this.findCell(t);const{left:l,right:o,top:u,bottom:f}=this.findCell(e);return{left:Math.min(r,l),top:Math.min(n,u),right:Math.max(i,o),bottom:Math.max(s,f)}}cellsInRect(t){const e=[];const r={};for(let i=t.top;i<t.bottom;i++){for(let n=t.left;n<t.right;n++){const s=i*this.width+n;const l=this.map[s];if(r[l])continue;r[l]=true;if(n==t.left&&n&&this.map[s-1]==l||i==t.top&&i&&this.map[s-this.width]==l){continue}e.push(l)}}return e}positionAt(t,e,r){for(let i=0,n=0;;i++){const s=n+r.child(i).nodeSize;if(i==t){let r=e+t*this.width;const i=(t+1)*this.width;while(r<i&&this.map[r]<n)r++;return r==i?s-1:this.map[r]}n=s}}static get(t){return Ug(t)||Hg(t,Kg(t))}};function Kg(t){if(t.type.spec.tableRole!="table")throw new RangeError("Not a table node: "+t.type.name);const e=Vg(t),r=t.childCount;const i=[];let n=0;let s=null;const l=[];for(let t=0,n=e*r;t<n;t++)i[t]=0;for(let o=0,u=0;o<r;o++){const f=t.child(o);u++;for(let t=0;;t++){while(n<i.length&&i[n]!=0)n++;if(t==f.childCount)break;const h=f.child(t);const{colspan:a,rowspan:c,colwidth:d}=h.attrs;for(let t=0;t<c;t++){if(t+o>=r){(s||(s=[])).push({type:"overlong_rowspan",pos:u,n:c-t});break}const f=n+t*e;for(let t=0;t<a;t++){if(i[f+t]==0)i[f+t]=u;else(s||(s=[])).push({type:"collision",row:o,pos:u,n:a-t});const r=d&&d[t];if(r){const i=(f+t)%e*2,n=l[i];if(n==null||n!=r&&l[i+1]==1){l[i]=r;l[i+1]=1}else if(n==r){l[i+1]++}}}}n+=a;u+=h.nodeSize}const h=(o+1)*e;let a=0;while(n<h)if(i[n++]==0)a++;if(a)(s||(s=[])).push({type:"missing",row:o,n:a});u++}const o=new Zg(e,r,i,s);let u=false;for(let t=0;!u&&t<l.length;t+=2)if(l[t]!=null&&l[t+1]<r)u=true;if(u)Gg(o,l,t);return o}function Vg(t){let e=-1;let r=false;for(let i=0;i<t.childCount;i++){const n=t.child(i);let s=0;if(r)for(let e=0;e<i;e++){const r=t.child(e);for(let t=0;t<r.childCount;t++){const n=r.child(t);if(e+n.attrs.rowspan>i)s+=n.attrs.colspan}}for(let t=0;t<n.childCount;t++){const e=n.child(t);s+=e.attrs.colspan;if(e.attrs.rowspan>1)r=true}if(e==-1)e=s;else if(e!=s)e=Math.max(e,s)}return e}function Gg(t,e,r){if(!t.problems)t.problems=[];const i={};for(let n=0;n<t.map.length;n++){const s=t.map[n];if(i[s])continue;i[s]=true;const l=r.nodeAt(s);if(!l){throw new RangeError(`No cell with offset ${s} found`)}let o=null;const u=l.attrs;for(let r=0;r<u.colspan;r++){const i=(n+r)%t.width;const s=e[i*2];if(s!=null&&(!u.colwidth||u.colwidth[r]!=s))(o||(o=Xg(u)))[r]=s}if(o)t.problems.unshift({type:"colwidth mismatch",pos:s,colwidth:o})}}function Xg(t){if(t.colwidth)return t.colwidth.slice();const e=[];for(let r=0;r<t.colspan;r++)e.push(0);return e}function Yg(t,e){if(typeof t==="string"){return{}}const r=t.getAttribute("data-colwidth");const i=r&&/^\d+(,\d+)*$/.test(r)?r.split(",").map((t=>Number(t))):null;const n=Number(t.getAttribute("colspan")||1);const s={colspan:n,rowspan:Number(t.getAttribute("rowspan")||1),colwidth:i&&i.length==n?i:null};for(const r in e){const i=e[r].getFromDOM;const n=i&&i(t);if(n!=null){s[r]=n}}return s}function Qg(t,e){const r={};if(t.attrs.colspan!=1)r.colspan=t.attrs.colspan;if(t.attrs.rowspan!=1)r.rowspan=t.attrs.rowspan;if(t.attrs.colwidth)r["data-colwidth"]=t.attrs.colwidth.join(",");for(const i in e){const n=e[i].setDOMAttr;if(n)n(t.attrs[i],r)}return r}function tb(t){const e=t.cellAttributes||{};const r={colspan:{default:1},rowspan:{default:1},colwidth:{default:null}};for(const t in e)r[t]={default:e[t].default};return{table:{content:"table_row+",tableRole:"table",isolating:true,group:t.tableGroup,parseDOM:[{tag:"table"}],toDOM(){return["table",["tbody",0]]}},table_row:{content:"(table_cell | table_header)*",tableRole:"row",parseDOM:[{tag:"tr"}],toDOM(){return["tr",0]}},table_cell:{content:t.cellContent,attrs:r,tableRole:"cell",isolating:true,parseDOM:[{tag:"td",getAttrs:t=>Yg(t,e)}],toDOM(t){return["td",Qg(t,e),0]}},table_header:{content:t.cellContent,attrs:r,tableRole:"header_cell",isolating:true,parseDOM:[{tag:"th",getAttrs:t=>Yg(t,e)}],toDOM(t){return["th",Qg(t,e),0]}}}}function eb(t){let e=t.cached.tableNodeTypes;if(!e){e=t.cached.tableNodeTypes={};for(const r in t.nodes){const i=t.nodes[r],n=i.spec.tableRole;if(n)e[n]=i}}return e}var rb=new vn("selectingCells");function ib(t){for(let e=t.depth-1;e>0;e--)if(t.node(e).type.spec.tableRole=="row")return t.node(0).resolve(t.before(e+1));return null}function nb(t){const e=t.selection.$head;for(let t=e.depth;t>0;t--)if(e.node(t).type.spec.tableRole=="row")return true;return false}function sb(t){const e=t.selection;if("$anchorCell"in e&&e.$anchorCell){return e.$anchorCell.pos>e.$headCell.pos?e.$anchorCell:e.$headCell}else if("node"in e&&e.node&&e.node.type.spec.tableRole=="cell"){return e.$anchor}const r=ib(e.$head)||lb(e.$head);if(r){return r}throw new RangeError(`No cell found around position ${e.head}`)}function lb(t){for(let e=t.nodeAfter,r=t.pos;e;e=e.firstChild,r++){const i=e.type.spec.tableRole;if(i=="cell"||i=="header_cell")return t.doc.resolve(r)}for(let e=t.nodeBefore,r=t.pos;e;e=e.lastChild,r--){const i=e.type.spec.tableRole;if(i=="cell"||i=="header_cell")return t.doc.resolve(r-e.nodeSize)}}function ob(t){return t.parent.type.spec.tableRole=="row"&&!!t.nodeAfter}function ub(t,e){return t.depth==e.depth&&t.pos>=e.start(-1)&&t.pos<=e.end(-1)}function fb(t,e,r){const i=t.node(-1);const n=Zg.get(i);const s=t.start(-1);const l=n.nextCell(t.pos-s,e,r);return l==null?null:t.node(0).resolve(s+l)}function hb(t,e,r=1){const i={...t,colspan:t.colspan-r};if(i.colwidth){i.colwidth=i.colwidth.slice();i.colwidth.splice(e,r);if(!i.colwidth.some((t=>t>0)))i.colwidth=null}return i}var ab=class t extends Vi{constructor(t,e=t){const r=t.node(-1);const i=Zg.get(r);const n=t.start(-1);const s=i.rectBetween(t.pos-n,e.pos-n);const l=t.node(0);const o=i.cellsInRect(s).filter((t=>t!=e.pos-n));o.unshift(e.pos-n);const u=o.map((t=>{const e=r.nodeAt(t);if(!e){throw RangeError(`No cell with offset ${t} found`)}const i=n+t+1;return new Gi(l.resolve(i),l.resolve(i+e.content.size))}));super(u[0].$from,u[0].$to,u);this.$anchorCell=t;this.$headCell=e}map(e,r){const i=e.resolve(r.map(this.$anchorCell.pos));const n=e.resolve(r.map(this.$headCell.pos));if(ob(i)&&ob(n)&&ub(i,n)){const e=this.$anchorCell.node(-1)!=i.node(-1);if(e&&this.isRowSelection())return t.rowSelection(i,n);else if(e&&this.isColSelection())return t.colSelection(i,n);else return new t(i,n)}return Qi.between(i,n)}content(){const t=this.$anchorCell.node(-1);const e=Zg.get(t);const r=this.$anchorCell.start(-1);const i=e.rectBetween(this.$anchorCell.pos-r,this.$headCell.pos-r);const n={};const s=[];for(let r=i.top;r<i.bottom;r++){const l=[];for(let s=r*e.width+i.left,o=i.left;o<i.right;o++,s++){const r=e.map[s];if(n[r])continue;n[r]=true;const o=e.findCell(r);let u=t.nodeAt(r);if(!u){throw RangeError(`No cell with offset ${r} found`)}const f=i.left-o.left;const h=o.right-i.right;if(f>0||h>0){let t=u.attrs;if(f>0){t=hb(t,0,f)}if(h>0){t=hb(t,t.colspan-h,h)}if(o.left<i.left){u=u.type.createAndFill(t);if(!u){throw RangeError(`Could not create cell with attrs ${JSON.stringify(t)}`)}}else{u=u.type.create(t,u.content)}}if(o.top<i.top||o.bottom>i.bottom){const t={...u.attrs,rowspan:Math.min(o.bottom,i.bottom)-Math.max(o.top,i.top)};if(o.top<i.top){u=u.type.createAndFill(t)}else{u=u.type.create(t,u.content)}}l.push(u)}s.push(t.child(r).copy(ge.from(l)))}const l=this.isColSelection()&&this.isRowSelection()?t:s;return new Fe(ge.from(l),1,1)}replace(t,e=Fe.empty){const r=t.steps.length,i=this.ranges;for(let n=0;n<i.length;n++){const{$from:s,$to:l}=i[n],o=t.mapping.slice(r);t.replace(o.map(s.pos),o.map(l.pos),n?Fe.empty:e)}const n=Vi.findFrom(t.doc.resolve(t.mapping.slice(r).map(this.to)),-1);if(n)t.setSelection(n)}replaceWith(t,e){this.replace(t,new Fe(ge.from(e),0,0))}forEachCell(t){const e=this.$anchorCell.node(-1);const r=Zg.get(e);const i=this.$anchorCell.start(-1);const n=r.cellsInRect(r.rectBetween(this.$anchorCell.pos-i,this.$headCell.pos-i));for(let r=0;r<n.length;r++){t(e.nodeAt(n[r]),i+n[r])}}isColSelection(){const t=this.$anchorCell.index(-1);const e=this.$headCell.index(-1);if(Math.min(t,e)>0)return false;const r=t+this.$anchorCell.nodeAfter.attrs.rowspan;const i=e+this.$headCell.nodeAfter.attrs.rowspan;return Math.max(r,i)==this.$headCell.node(-1).childCount}static colSelection(e,r=e){const i=e.node(-1);const n=Zg.get(i);const s=e.start(-1);const l=n.findCell(e.pos-s);const o=n.findCell(r.pos-s);const u=e.node(0);if(l.top<=o.top){if(l.top>0)e=u.resolve(s+n.map[l.left]);if(o.bottom<n.height)r=u.resolve(s+n.map[n.width*(n.height-1)+o.right-1])}else{if(o.top>0)r=u.resolve(s+n.map[o.left]);if(l.bottom<n.height)e=u.resolve(s+n.map[n.width*(n.height-1)+l.right-1])}return new t(e,r)}isRowSelection(){const t=this.$anchorCell.node(-1);const e=Zg.get(t);const r=this.$anchorCell.start(-1);const i=e.colCount(this.$anchorCell.pos-r);const n=e.colCount(this.$headCell.pos-r);if(Math.min(i,n)>0)return false;const s=i+this.$anchorCell.nodeAfter.attrs.colspan;const l=n+this.$headCell.nodeAfter.attrs.colspan;return Math.max(s,l)==e.width}eq(e){return e instanceof t&&e.$anchorCell.pos==this.$anchorCell.pos&&e.$headCell.pos==this.$headCell.pos}static rowSelection(e,r=e){const i=e.node(-1);const n=Zg.get(i);const s=e.start(-1);const l=n.findCell(e.pos-s);const o=n.findCell(r.pos-s);const u=e.node(0);if(l.left<=o.left){if(l.left>0)e=u.resolve(s+n.map[l.top*n.width]);if(o.right<n.width)r=u.resolve(s+n.map[n.width*(o.top+1)-1])}else{if(o.left>0)r=u.resolve(s+n.map[o.top*n.width]);if(l.right<n.width)e=u.resolve(s+n.map[n.width*(l.top+1)-1])}return new t(e,r)}toJSON(){return{type:"cell",anchor:this.$anchorCell.pos,head:this.$headCell.pos}}static fromJSON(e,r){return new t(e.resolve(r.anchor),e.resolve(r.head))}static create(e,r,i=r){return new t(e.resolve(r),e.resolve(i))}getBookmark(){return new cb(this.$anchorCell.pos,this.$headCell.pos)}};ab.prototype.visible=false;Vi.jsonID("cell",ab);var cb=class t{constructor(t,e){this.anchor=t;this.head=e}map(e){return new t(e.map(this.anchor),e.map(this.head))}resolve(t){const e=t.resolve(this.anchor),r=t.resolve(this.head);if(e.parent.type.spec.tableRole=="row"&&r.parent.type.spec.tableRole=="row"&&e.index()<e.parent.childCount&&r.index()<r.parent.childCount&&ub(e,r))return new ab(e,r);else return Vi.near(r,1)}};function db(t){if(!(t.selection instanceof ab))return null;const e=[];t.selection.forEachCell(((t,r)=>{e.push(Ko.node(r,r+t.nodeSize,{class:"selectedCell"}))}));return Xo.create(t.doc,e)}function pb({$from:t,$to:e}){if(t.pos==e.pos||t.pos<t.pos-6)return false;let r=t.pos;let i=e.pos;let n=t.depth;for(;n>=0;n--,r++)if(t.after(n+1)<t.end(n))break;for(let t=e.depth;t>=0;t--,i--)if(e.before(t+1)>e.start(t))break;return r==i&&/row|table/.test(t.node(n).type.spec.tableRole)}function mb({$from:t,$to:e}){let r;let i;for(let e=t.depth;e>0;e--){const i=t.node(e);if(i.type.spec.tableRole==="cell"||i.type.spec.tableRole==="header_cell"){r=i;break}}for(let t=e.depth;t>0;t--){const r=e.node(t);if(r.type.spec.tableRole==="cell"||r.type.spec.tableRole==="header_cell"){i=r;break}}return r!==i&&e.parentOffset===0}function wb(t,e,r){const i=(e||t).selection;const n=(e||t).doc;let s;let l;if(i instanceof en&&(l=i.node.type.spec.tableRole)){if(l=="cell"||l=="header_cell"){s=ab.create(n,i.from)}else if(l=="row"){const t=n.resolve(i.from+1);s=ab.rowSelection(t,t)}else if(!r){const t=Zg.get(i.node);const e=i.from+1;const r=e+t.map[t.width*t.height-1];s=ab.create(n,e+1,r)}}else if(i instanceof Qi&&pb(i)){s=Qi.create(n,i.from)}else if(i instanceof Qi&&mb(i)){s=Qi.create(n,i.$from.start(),i.$from.end())}if(s)(e||(e=t.tr)).setSelection(s);return e}var gb=new vn("fix-tables");function bb(t,e,r,i){const n=t.childCount,s=e.childCount;t:for(let l=0,o=0;l<s;l++){const s=e.child(l);for(let e=o,i=Math.min(n,l+3);e<i;e++){if(t.child(e)==s){o=e+1;r+=s.nodeSize;continue t}}i(s,r);if(o<n&&t.child(o).sameMarkup(s))bb(t.child(o),s,r+1,i);else s.nodesBetween(0,s.content.size,i,r+1);r+=s.nodeSize}}function kb(t,e){let r;const i=(e,i)=>{if(e.type.spec.tableRole=="table")r=Db(t,e,i,r)};if(!e)t.doc.descendants(i);else if(e.doc!=t.doc)bb(e.doc,t.doc,0,i);return r}function Db(t,e,r,i){const n=Zg.get(e);if(!n.problems)return i;if(!i)i=t.tr;const s=[];for(let t=0;t<n.height;t++)s.push(0);for(let t=0;t<n.problems.length;t++){const l=n.problems[t];if(l.type=="collision"){const t=e.nodeAt(l.pos);if(!t)continue;const n=t.attrs;for(let t=0;t<n.rowspan;t++)s[l.row+t]+=l.n;i.setNodeMarkup(i.mapping.map(r+1+l.pos),null,hb(n,n.colspan-l.n,l.n))}else if(l.type=="missing"){s[l.row]+=l.n}else if(l.type=="overlong_rowspan"){const t=e.nodeAt(l.pos);if(!t)continue;i.setNodeMarkup(i.mapping.map(r+1+l.pos),null,{...t.attrs,rowspan:t.attrs.rowspan-l.n})}else if(l.type=="colwidth mismatch"){const t=e.nodeAt(l.pos);if(!t)continue;i.setNodeMarkup(i.mapping.map(r+1+l.pos),null,{...t.attrs,colwidth:l.colwidth})}}let l,o;for(let t=0;t<s.length;t++)if(s[t]){if(l==null)l=t;o=t}for(let u=0,f=r+1;u<n.height;u++){const r=e.child(u);const n=f+r.nodeSize;const h=s[u];if(h>0){let e="cell";if(r.firstChild){e=r.firstChild.type.spec.tableRole}const s=[];for(let r=0;r<h;r++){const r=eb(t.schema)[e].createAndFill();if(r)s.push(r)}const a=(u==0||l==u-1)&&o==u?f+1:n-1;i.insert(i.mapping.map(a),s)}f=n}return i.setMeta(gb,{fixTables:true})}function vb(t,e){const r=t.selection;if(!(r instanceof ab))return false;if(e){const i=t.tr;const n=eb(t.schema).cell.createAndFill().content;r.forEachCell(((t,e)=>{if(!t.content.eq(n))i.replace(i.mapping.map(e+1),i.mapping.map(e+t.nodeSize-1),new Fe(n,0,0))}));if(i.docChanged)e(i)}return true}function yb(t){if(!t.size)return null;let{content:e,openStart:r,openEnd:i}=t;while(e.childCount==1&&(r>0&&i>0||e.child(0).type.spec.tableRole=="table")){r--;i--;e=e.child(0).content}const n=e.child(0);const s=n.type.spec.tableRole;const l=n.type.schema,o=[];if(s=="row"){for(let t=0;t<e.childCount;t++){let n=e.child(t).content;const s=t?0:Math.max(0,r-1);const u=t<e.childCount-1?0:Math.max(0,i-1);if(s||u)n=Eb(eb(l).row,new Fe(n,s,u)).content;o.push(n)}}else if(s=="cell"||s=="header_cell"){o.push(r||i?Eb(eb(l).row,new Fe(e,r,i)).content:e)}else{return null}return Fb(l,o)}function Fb(t,e){const r=[];for(let t=0;t<e.length;t++){const i=e[t];for(let e=i.childCount-1;e>=0;e--){const{rowspan:n,colspan:s}=i.child(e).attrs;for(let e=t;e<t+n;e++)r[e]=(r[e]||0)+s}}let i=0;for(let t=0;t<r.length;t++)i=Math.max(i,r[t]);for(let n=0;n<r.length;n++){if(n>=e.length)e.push(ge.empty);if(r[n]<i){const s=eb(t).cell.createAndFill();const l=[];for(let t=r[n];t<i;t++){l.push(s)}e[n]=e[n].append(ge.from(l))}}return{height:e.length,width:i,rows:e}}function Eb(t,e){const r=t.createAndFill();const i=new Zi(r).replace(0,r.content.size,e);return i.doc}function Mb({width:t,height:e,rows:r},i,n){if(t!=i){const e=[];const n=[];for(let t=0;t<r.length;t++){const s=r[t],l=[];for(let r=e[t]||0,n=0;r<i;n++){let o=s.child(n%s.childCount);if(r+o.attrs.colspan>i)o=o.type.createChecked(hb(o.attrs,o.attrs.colspan,r+o.attrs.colspan-i),o.content);l.push(o);r+=o.attrs.colspan;for(let r=1;r<o.attrs.rowspan;r++)e[t+r]=(e[t+r]||0)+o.attrs.colspan}n.push(ge.from(l))}r=n;t=i}if(e!=n){const t=[];for(let i=0,s=0;i<n;i++,s++){const l=[],o=r[s%e];for(let t=0;t<o.childCount;t++){let e=o.child(t);if(i+e.attrs.rowspan>n)e=e.type.create({...e.attrs,rowspan:Math.max(1,n-e.attrs.rowspan)},e.content);l.push(e)}t.push(ge.from(l))}r=t;e=n}return{width:t,height:e,rows:r}}function xb(t,e,r,i,n,s,l){const o=t.doc.type.schema;const u=eb(o);let f;let h;if(n>e.width){for(let s=0,o=0;s<e.height;s++){const a=r.child(s);o+=a.nodeSize;const c=[];let d;if(a.lastChild==null||a.lastChild.type==u.cell)d=f||(f=u.cell.createAndFill());else d=h||(h=u.header_cell.createAndFill());for(let t=e.width;t<n;t++)c.push(d);t.insert(t.mapping.slice(l).map(o-1+i),c)}}if(s>e.height){const o=[];for(let t=0,i=(e.height-1)*e.width;t<Math.max(e.width,n);t++){const n=t>=e.width?false:r.nodeAt(e.map[i+t]).type==u.header_cell;o.push(n?h||(h=u.header_cell.createAndFill()):f||(f=u.cell.createAndFill()))}const a=u.row.create(null,ge.from(o)),c=[];for(let t=e.height;t<s;t++)c.push(a);t.insert(t.mapping.slice(l).map(i+r.nodeSize-2),c)}return!!(f||h)}function Ab(t,e,r,i,n,s,l,o){if(l==0||l==e.height)return false;let u=false;for(let f=n;f<s;f++){const n=l*e.width+f,s=e.map[n];if(e.map[n-e.width]==s){u=true;const n=r.nodeAt(s);const{top:h,left:a}=e.findCell(s);t.setNodeMarkup(t.mapping.slice(o).map(s+i),null,{...n.attrs,rowspan:l-h});t.insert(t.mapping.slice(o).map(e.positionAt(l,a,r)),n.type.createAndFill({...n.attrs,rowspan:h+n.attrs.rowspan-l}));f+=n.attrs.colspan-1}}return u}function Cb(t,e,r,i,n,s,l,o){if(l==0||l==e.width)return false;let u=false;for(let f=n;f<s;f++){const n=f*e.width+l,s=e.map[n];if(e.map[n-1]==s){u=true;const n=r.nodeAt(s);const h=e.colCount(s);const a=t.mapping.slice(o).map(s+i);t.setNodeMarkup(a,null,hb(n.attrs,l-h,n.attrs.colspan-(l-h)));t.insert(a+n.nodeSize,n.type.createAndFill(hb(n.attrs,0,l-h)));f+=n.attrs.rowspan-1}}return u}function Sb(t,e,r,i,n){let s=r?t.doc.nodeAt(r-1):t.doc;if(!s){throw new Error("No table found")}let l=Zg.get(s);const{top:o,left:u}=i;const f=u+n.width,h=o+n.height;const a=t.tr;let c=0;function d(){s=r?a.doc.nodeAt(r-1):a.doc;if(!s){throw new Error("No table found")}l=Zg.get(s);c=a.mapping.maps.length}if(xb(a,l,s,r,f,h,c))d();if(Ab(a,l,s,r,u,f,o,c))d();if(Ab(a,l,s,r,u,f,h,c))d();if(Cb(a,l,s,r,o,h,u,c))d();if(Cb(a,l,s,r,o,h,f,c))d();for(let t=o;t<h;t++){const e=l.positionAt(t,u,s),i=l.positionAt(t,f,s);a.replace(a.mapping.slice(c).map(e+r),a.mapping.slice(c).map(i+r),new Fe(n.rows[t-o],0,0))}d();a.setSelection(new ab(a.doc.resolve(r+l.positionAt(o,u,s)),a.doc.resolve(r+l.positionAt(h-1,f-1,s))));e(a)}var Ob=vf({ArrowLeft:_b("horiz",-1),ArrowRight:_b("horiz",1),ArrowUp:_b("vert",-1),ArrowDown:_b("vert",1),"Shift-ArrowLeft":Bb("horiz",-1),"Shift-ArrowRight":Bb("horiz",1),"Shift-ArrowUp":Bb("vert",-1),"Shift-ArrowDown":Bb("vert",1),Backspace:vb,"Mod-Backspace":vb,Delete:vb,"Mod-Delete":vb});function $b(t,e,r){if(r.eq(t.selection))return false;if(e)e(t.tr.setSelection(r).scrollIntoView());return true}function _b(t,e){return(r,i,n)=>{if(!n)return false;const s=r.selection;if(s instanceof ab){return $b(r,i,Vi.near(s.$headCell,e))}if(t!="horiz"&&!s.empty)return false;const l=qb(n,t,e);if(l==null)return false;if(t=="horiz"){return $b(r,i,Vi.near(r.doc.resolve(s.head+e),e))}else{const n=r.doc.resolve(l);const s=fb(n,t,e);let o;if(s)o=Vi.near(s,1);else if(e<0)o=Vi.near(r.doc.resolve(n.before(-1)),-1);else o=Vi.near(r.doc.resolve(n.after(-1)),1);return $b(r,i,o)}}}function Bb(t,e){return(r,i,n)=>{if(!n)return false;const s=r.selection;let l;if(s instanceof ab){l=s}else{const i=qb(n,t,e);if(i==null)return false;l=new ab(r.doc.resolve(i))}const o=fb(l.$headCell,t,e);if(!o)return false;return $b(r,i,new ab(l.$anchorCell,o))}}function Rb(t,e){const r=t.state.doc,i=ib(r.resolve(e));if(!i)return false;t.dispatch(t.state.tr.setSelection(new ab(i)));return true}function jb(t,e,r){if(!nb(t.state))return false;let i=yb(r);const n=t.state.selection;if(n instanceof ab){if(!i)i={width:1,height:1,rows:[ge.from(Eb(eb(t.state.schema).cell,r))]};const e=n.$anchorCell.node(-1);const s=n.$anchorCell.start(-1);const l=Zg.get(e).rectBetween(n.$anchorCell.pos-s,n.$headCell.pos-s);i=Mb(i,l.right-l.left,l.bottom-l.top);Sb(t.state,t.dispatch,s,l,i);return true}else if(i){const e=sb(t.state);const r=e.start(-1);Sb(t.state,t.dispatch,r,Zg.get(e.node(-1)).findCell(e.pos-r),i);return true}else{return false}}function Nb(t,e){var r;if(e.ctrlKey||e.metaKey)return;const i=zb(t,e.target);let n;if(e.shiftKey&&t.state.selection instanceof ab){s(t.state.selection.$anchorCell,e);e.preventDefault()}else if(e.shiftKey&&i&&(n=ib(t.state.selection.$anchor))!=null&&((r=Tb(t,e))==null?void 0:r.pos)!=n.pos){s(n,e);e.preventDefault()}else if(!i){return}function s(e,r){let i=Tb(t,r);const n=rb.getState(t.state)==null;if(!i||!ub(e,i)){if(n)i=e;else return}const s=new ab(e,i);if(n||!t.state.selection.eq(s)){const r=t.state.tr.setSelection(s);if(n)r.setMeta(rb,e.pos);t.dispatch(r)}}function l(){t.root.removeEventListener("mouseup",l);t.root.removeEventListener("dragstart",l);t.root.removeEventListener("mousemove",o);if(rb.getState(t.state)!=null)t.dispatch(t.state.tr.setMeta(rb,-1))}function o(r){const n=r;const o=rb.getState(t.state);let u;if(o!=null){u=t.state.doc.resolve(o)}else if(zb(t,n.target)!=i){u=Tb(t,e);if(!u)return l()}if(u)s(u,n)}t.root.addEventListener("mouseup",l);t.root.addEventListener("dragstart",l);t.root.addEventListener("mousemove",o)}function qb(t,e,r){if(!(t.state.selection instanceof Qi))return null;const{$head:i}=t.state.selection;for(let n=i.depth-1;n>=0;n--){const s=i.node(n),l=r<0?i.index(n):i.indexAfter(n);if(l!=(r<0?0:s.childCount))return null;if(s.type.spec.tableRole=="cell"||s.type.spec.tableRole=="header_cell"){const s=i.before(n);const l=e=="vert"?r>0?"down":"up":r>0?"right":"left";return t.endOfTextblock(l)?s:null}}return null}function zb(t,e){for(;e&&e!=t.dom;e=e.parentNode){if(e.nodeName=="TD"||e.nodeName=="TH"){return e}}return null}function Tb(t,e){const r=t.posAtCoords({left:e.clientX,top:e.clientY});if(!r)return null;return r?ib(t.state.doc.resolve(r.pos)):null}new vn("tableColumnResizing");function Ib({allowTableNodeSelection:t=false}={}){return new bn({key:rb,state:{init(){return null},apply(t,e){const r=t.getMeta(rb);if(r!=null)return r==-1?null:r;if(e==null||!t.docChanged)return e;const{deleted:i,pos:n}=t.mapping.mapResult(e);return i?null:n}},props:{decorations:db,handleDOMEvents:{mousedown:Nb},createSelectionBetween(t){return rb.getState(t.state)!=null?t.state.selection:null},handleTripleClick:Rb,handleKeyDown:Ob,handlePaste:jb},appendTransaction(e,r,i){return wb(i,kb(i,r),t)}})}const Pb=t=>{if(t){return[Ib()]}return[]};const Jb=t=>({default:null,getFromDOM:e=>e.style[t]||null,setDOMAttr:(e,r)=>{if(e){r.style=(r.style||"")+`${t}: ${e};`}}});const Lb=()=>tb({tableGroup:"block",cellContent:"block+",cellAttributes:{background:Jb("background-color"),color:Jb("color")}});const Wb='@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 Ub=300;const Hb=class{constructor(r){t(this,r);this.change=e(this,"change",7);this.changeWaiting=false;this.suppressChangeEvent=false;this.getActionBarItems=()=>{this.actionBarItems=$c().map(this.getTranslatedItem)};this.getTranslatedItem=t=>{const e=de(t);if(O(t)){const r=_c[t.value];if(r){e.text=C.get(r,this.language)}}return e};this.updateActiveActionBarItems=t=>{const e=$c().map((e=>{if(O(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 r=this.contentConverter.serialize(this.view,this.schema);if(r===this.lastEmittedValue){return}this.lastEmittedValue=r;this.changeWaiting=true;this.changeEmitter(r)};this.handleActionBarItem=t=>{t.preventDefault();t.stopImmediatePropagation();const{value:e}=t.detail;if(e===oc.Link){this.isLinkMenuOpen=true;return}const r=new CustomEvent("actionBarItemClick",{detail:t.detail});this.view.dom.dispatchEvent(r)};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:oc.Link,link:this.link}});this.view.dom.dispatchEvent(t);this.link={href:"https://"}};this.handleLinkChange=t=>{this.link=t.detail};this.handleFocus=()=>{var t;(t=this.view)===null||t===void 0?void 0:t.focus()};this.handleNewLinkSelection=(t,e)=>{this.link.text=t;this.link.href=e||"https://"};this.handleOpenLinkMenu=t=>{t.stopImmediatePropagation();const{href:e,text:r}=t.detail;this.link={href:e,text:r};this.isLinkMenuOpen=true};this.changeEmitter=_((t=>{this.change.emit(t);this.changeWaiting=false}),Ub);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=S()}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,r;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);(r=this.view)===null||r===void 0?void 0:r.destroy()}render(){return r(i,{onFocus:this.handleFocus},r("div",{id:"editor"}),",",r("div",{class:"toolbar"},r("limel-action-bar",{ref:t=>this.actionBarElement=t,accessibleLabel:"Toolbar",actions:this.actionBarItems,onItemSelected:this.handleActionBarItem})),this.renderLinkMenu())}renderLinkMenu(){if(!this.isLinkMenuOpen){return}return r("limel-portal",{containerId:this.portalId,visible:this.isLinkMenuOpen,openDirection:"top",inheritParentWidth:true,anchor:this.actionBarElement},r("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 sg(this.customElements)}else if(this.contentType==="html"){this.contentConverter=new lg}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 Cu(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=Hu.spec.nodes;this.customElements.forEach((e=>{const r=Bg(e);const i=e.tagName;t=t.append({[i]:r})}));t=tf(t,"paragraph block*","block");if(this.contentType==="html"){t=t.append(Lb())}return new dr({nodes:t,marks:Hu.spec.marks.append({strikethrough:og})})}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 gr.fromSchema(this.schema).parse(t)}createEditorState(t){return wn.create({doc:t,plugins:[...lc({schema:this.schema,menuBar:false}),Df(this.menuCommandFactory.buildKeymap()),vg(this.handleNewLinkSelection),Wg(this.triggerCharacters),Fg(),Sg(uc,this.menuCommandFactory,this.updateActiveActionBarItems),_g(this.menuCommandFactory),...Pb(this.contentType==="html")]})}async updateView(t){this.suppressChangeEvent=true;const e=await this.contentConverter.parseAsHTML(t,this.schema);const r=gr.fromSchema(this.view.state.schema);const i=new window.DOMParser;const n=i.parseFromString(e,"text/html");const s=r.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}get host(){return n(this)}static get watchers(){return{value:["watchValue"]}}};Hb.style=Wb;export{Hb as limel_prosemirror_adapter};
2
- //# sourceMappingURL=p-a82a82b7.entry.js.map
1
+ import{r as t,c as e,h as r,H as i,g as n}from"./p-443111b3.js";import{k as s,q as l,U as o,f as u,g as f,t as h,u as a,i as c,j as d,v as p}from"./p-1b9d3851.js";import{b as m,a as w}from"./p-b28128d2.js";import{k as g,b,g as k,a as D}from"./p-22704cbc.js";import{i as v,r as y,S as F}from"./p-c93050d6.js";import{i as E}from"./p-0b1af919.js";import{i as M}from"./p-858c6b82.js";import{d as x,m as A}from"./p-086509a5.js";import{t as C}from"./p-8915fa60.js";import{c as S}from"./p-3ccdc4a3.js";import{i as O}from"./p-91741e79.js";import{i as $}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 B=Object.create;var R=function(){function t(){}return function(e){if(!v(e)){return{}}if(B){return B(e)}t.prototype=e;var r=new t;t.prototype=undefined;return r}}();function j(t,e){var r=-1,i=t.length;e||(e=Array(i));while(++r<i){e[r]=t[r]}return e}function N(t,e){var r=-1,i=t==null?0:t.length;while(++r<i){if(e(t[r],r,t)===false){break}}return t}function q(t,e,r,i){var n=!r;r||(r={});var s=-1,l=e.length;while(++s<l){var o=e[s];var u=i?i(r[o],t[o],o,r,t):undefined;if(u===undefined){u=t[o]}if(n){m(r,o,u)}else{w(r,o,u)}}return r}function z(t,e){return t&&q(e,s(e),t)}function T(t,e){return t&&q(e,g(e),t)}var I=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var P=I&&typeof module=="object"&&module&&!module.nodeType&&module;var J=P&&P.exports===I;var L=J?y.Buffer:undefined,W=L?L.allocUnsafe:undefined;function U(t,e){if(e){return t.slice()}var r=t.length,i=W?W(r):new t.constructor(r);t.copy(i);return i}function H(t,e){return q(t,l(t),e)}function Z(t,e){return q(t,b(t),e)}var K=Object.prototype;var V=K.hasOwnProperty;function G(t){var e=t.length,r=new t.constructor(e);if(e&&typeof t[0]=="string"&&V.call(t,"index")){r.index=t.index;r.input=t.input}return r}function X(t){var e=new t.constructor(t.byteLength);new o(e).set(new o(t));return e}function Y(t,e){var r=e?X(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var Q=/\w*$/;function tt(t){var e=new t.constructor(t.source,Q.exec(t));e.lastIndex=t.lastIndex;return e}var et=F?F.prototype:undefined,rt=et?et.valueOf:undefined;function it(t){return rt?Object(rt.call(t)):{}}function nt(t,e){var r=e?X(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var st="[object Boolean]",lt="[object Date]",ot="[object Map]",ut="[object Number]",ft="[object RegExp]",ht="[object Set]",at="[object String]",ct="[object Symbol]";var dt="[object ArrayBuffer]",pt="[object DataView]",mt="[object Float32Array]",wt="[object Float64Array]",gt="[object Int8Array]",bt="[object Int16Array]",kt="[object Int32Array]",Dt="[object Uint8Array]",vt="[object Uint8ClampedArray]",yt="[object Uint16Array]",Ft="[object Uint32Array]";function Et(t,e,r){var i=t.constructor;switch(e){case dt:return X(t);case st:case lt:return new i(+t);case pt:return Y(t,r);case mt:case wt:case gt:case bt:case kt:case Dt:case vt:case yt:case Ft:return nt(t,r);case ot:return new i;case ut:case at:return new i(t);case ft:return tt(t);case ht:return new i;case ct:return it(t)}}function Mt(t){return typeof t.constructor=="function"&&!u(t)?R(k(t)):{}}var xt="[object Map]";function At(t){return M(t)&&f(t)==xt}var Ct=a&&a.isMap;var St=Ct?h(Ct):At;var Ot="[object Set]";function $t(t){return M(t)&&f(t)==Ot}var _t=a&&a.isSet;var Bt=_t?h(_t):$t;var Rt=1,jt=2,Nt=4;var qt="[object Arguments]",zt="[object Array]",Tt="[object Boolean]",It="[object Date]",Pt="[object Error]",Jt="[object Function]",Lt="[object GeneratorFunction]",Wt="[object Map]",Ut="[object Number]",Ht="[object Object]",Zt="[object RegExp]",Kt="[object Set]",Vt="[object String]",Gt="[object Symbol]",Xt="[object WeakMap]";var Yt="[object ArrayBuffer]",Qt="[object DataView]",te="[object Float32Array]",ee="[object Float64Array]",re="[object Int8Array]",ie="[object Int16Array]",ne="[object Int32Array]",se="[object Uint8Array]",le="[object Uint8ClampedArray]",oe="[object Uint16Array]",ue="[object Uint32Array]";var fe={};fe[qt]=fe[zt]=fe[Yt]=fe[Qt]=fe[Tt]=fe[It]=fe[te]=fe[ee]=fe[re]=fe[ie]=fe[ne]=fe[Wt]=fe[Ut]=fe[Ht]=fe[Zt]=fe[Kt]=fe[Vt]=fe[Gt]=fe[se]=fe[le]=fe[oe]=fe[ue]=true;fe[Pt]=fe[Jt]=fe[Xt]=false;function he(t,e,r,i,n,l){var o,u=e&Rt,h=e&jt,a=e&Nt;if(r){o=n?r(t,i,n,l):r(t)}if(o!==undefined){return o}if(!v(t)){return t}var m=E(t);if(m){o=G(t);if(!u){return j(t,o)}}else{var b=f(t),k=b==Jt||b==Lt;if(c(t)){return U(t,u)}if(b==Ht||b==qt||k&&!n){o=h||k?{}:Mt(t);if(!u){return h?Z(t,T(o,t)):H(t,z(o,t))}}else{if(!fe[b]){return n?t:{}}o=Et(t,b,u)}}l||(l=new d);var y=l.get(t);if(y){return y}l.set(t,o);if(Bt(t)){t.forEach((function(i){o.add(he(i,e,r,i,t,l))}))}else if(St(t)){t.forEach((function(i,n){o.set(n,he(i,e,r,n,t,l))}))}var F=a?h?D:p:h?g:s;var M=m?undefined:F(t);N(M||t,(function(i,n){if(M){n=i;i=t[n]}w(o,n,he(i,e,r,n,t,l))}));return o}var ae=1,ce=4;function de(t){return he(t,ae|ce)}function pe(t){this.content=t}pe.prototype={constructor:pe,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,r){var i=r&&r!=t?this.remove(r):this;var n=i.find(t),s=i.content.slice();if(n==-1){s.push(r||t,e)}else{s[n+1]=e;if(r)s[n]=r}return new pe(s)},remove:function(t){var e=this.find(t);if(e==-1)return this;var r=this.content.slice();r.splice(e,2);return new pe(r)},addToStart:function(t,e){return new pe([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var r=this.remove(t).content.slice();r.push(t,e);return new pe(r)},addBefore:function(t,e,r){var i=this.remove(e),n=i.content.slice();var s=i.find(t);n.splice(s==-1?n.length:s,0,e,r);return new pe(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=pe.from(t);if(!t.size)return this;return new pe(t.content.concat(this.subtract(t).content))},append:function(t){t=pe.from(t);if(!t.size)return this;return new pe(this.subtract(t).content.concat(t.content))},subtract:function(t){var e=this;t=pe.from(t);for(var r=0;r<t.content.length;r+=2)e=e.remove(t.content[r]);return e},toObject:function(){var t={};this.forEach((function(e,r){t[e]=r}));return t},get size(){return this.content.length>>1}};pe.from=function(t){if(t instanceof pe)return t;var e=[];if(t)for(var r in t)e.push(r,t[r]);return new pe(e)};function me(t,e,r){for(let i=0;;i++){if(i==t.childCount||i==e.childCount)return t.childCount==e.childCount?null:r;let n=t.child(i),s=e.child(i);if(n==s){r+=n.nodeSize;continue}if(!n.sameMarkup(s))return r;if(n.isText&&n.text!=s.text){for(let t=0;n.text[t]==s.text[t];t++)r++;return r}if(n.content.size||s.content.size){let t=me(n.content,s.content,r+1);if(t!=null)return t}r+=n.nodeSize}}function we(t,e,r,i){for(let n=t.childCount,s=e.childCount;;){if(n==0||s==0)return n==s?null:{a:r,b:i};let l=t.child(--n),o=e.child(--s),u=l.nodeSize;if(l==o){r-=u;i-=u;continue}if(!l.sameMarkup(o))return{a:r,b:i};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++;r--;i--}return{a:r,b:i}}if(l.content.size||o.content.size){let t=we(l.content,o.content,r-1,i-1);if(t)return t}r-=u;i-=u}}class ge{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,r,i=0,n){for(let s=0,l=0;l<e;s++){let o=this.content[s],u=l+o.nodeSize;if(u>t&&r(o,i+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),r,i+n)}l=u}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,r,i){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?"":i?typeof i==="function"?i(l):i:l.type.spec.leafText?l.type.spec.leafText(l):"";if(l.isBlock&&(l.isLeaf&&u||l.isTextblock)&&r){if(s)s=false;else n+=r}n+=u}),0);return n}append(t){if(!t.size)return this;if(!this.size)return t;let e=this.lastChild,r=t.firstChild,i=this.content.slice(),n=0;if(e.isText&&e.sameMarkup(r)){i[i.length-1]=e.withText(e.text+r.text);n=1}for(;n<t.content.length;n++)i.push(t.content[n]);return new ge(i,this.size+t.size)}cut(t,e=this.size){if(t==0&&e==this.size)return this;let r=[],i=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))}r.push(l);i+=l.nodeSize}s=o}return new ge(r,i)}cutByIndex(t,e){if(t==e)return ge.empty;if(t==0&&e==this.content.length)return this;return new ge(this.content.slice(t,e))}replaceChild(t,e){let r=this.content[t];if(r==e)return this;let i=this.content.slice();let n=this.size+e.nodeSize-r.nodeSize;i[t]=e;return new ge(i,n)}addToStart(t){return new ge([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new ge(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,r=0;e<this.content.length;e++){let i=this.content[e];t(i,r,e);r+=i.nodeSize}}findDiffStart(t,e=0){return me(this,t,e)}findDiffEnd(t,e=this.size,r=t.size){return we(this,t,e,r)}findIndex(t,e=-1){if(t==0)return ke(0,t);if(t==this.size)return ke(this.content.length,t);if(t>this.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let r=0,i=0;;r++){let n=this.child(r),s=i+n.nodeSize;if(s>=t){if(s==t||e>0)return ke(r+1,s);return ke(r,i)}i=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 ge.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new ge(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return ge.empty;let e,r=0;for(let i=0;i<t.length;i++){let n=t[i];r+=n.nodeSize;if(i&&n.isText&&t[i-1].sameMarkup(n)){if(!e)e=t.slice(0,i);e[e.length-1]=n.withText(e[e.length-1].text+n.text)}else if(e){e.push(n)}}return new ge(e||t,r)}static from(t){if(!t)return ge.empty;if(t instanceof ge)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new ge([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}ge.empty=new ge([],0);const be={index:0,offset:0};function ke(t,e){be.index=t;be.offset=e;return be}function De(t,e){if(t===e)return true;if(!(t&&typeof t=="object")||!(e&&typeof e=="object"))return false;let r=Array.isArray(t);if(Array.isArray(e)!=r)return false;if(r){if(t.length!=e.length)return false;for(let r=0;r<t.length;r++)if(!De(t[r],e[r]))return false}else{for(let r in t)if(!(r in e)||!De(t[r],e[r]))return false;for(let r in e)if(!(r in t))return false}return true}class ve{constructor(t,e){this.type=t;this.attrs=e}addToSet(t){let e,r=false;for(let i=0;i<t.length;i++){let n=t[i];if(this.eq(n))return t;if(this.type.excludes(n.type)){if(!e)e=t.slice(0,i)}else if(n.type.excludes(this.type)){return t}else{if(!r&&n.type.rank>this.type.rank){if(!e)e=t.slice(0,i);e.push(this);r=true}if(e)e.push(n)}}if(!e)e=t.slice();if(!r)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&&De(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 r=t.marks[e.type];if(!r)throw new RangeError(`There is no mark type ${e.type} in this schema`);let i=r.create(e.attrs);r.checkAttrs(i.attrs);return i}static sameSet(t,e){if(t==e)return true;if(t.length!=e.length)return false;for(let r=0;r<t.length;r++)if(!t[r].eq(e[r]))return false;return true}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return ve.none;if(t instanceof ve)return[t];let e=t.slice();e.sort(((t,e)=>t.type.rank-e.type.rank));return e}}ve.none=[];class ye extends Error{}class Fe{constructor(t,e,r){this.content=t;this.openStart=e;this.openEnd=r}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,e){let r=Me(this.content,t+this.openStart,e);return r&&new Fe(r,this.openStart,this.openEnd)}removeBetween(t,e){return new Fe(Ee(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 Fe.empty;let r=e.openStart||0,i=e.openEnd||0;if(typeof r!="number"||typeof i!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new Fe(ge.fromJSON(t,e.content),r,i)}static maxOpen(t,e=true){let r=0,i=0;for(let i=t.firstChild;i&&!i.isLeaf&&(e||!i.type.spec.isolating);i=i.firstChild)r++;for(let r=t.lastChild;r&&!r.isLeaf&&(e||!r.type.spec.isolating);r=r.lastChild)i++;return new Fe(t,r,i)}}Fe.empty=new Fe(ge.empty,0,0);function Ee(t,e,r){let{index:i,offset:n}=t.findIndex(e),s=t.maybeChild(i);let{index:l,offset:o}=t.findIndex(r);if(n==e||s.isText){if(o!=r&&!t.child(l).isText)throw new RangeError("Removing non-flat range");return t.cut(0,e).append(t.cut(r))}if(i!=l)throw new RangeError("Removing non-flat range");return t.replaceChild(i,s.copy(Ee(s.content,e-n-1,r-n-1)))}function Me(t,e,r,i){let{index:n,offset:s}=t.findIndex(e),l=t.maybeChild(n);if(s==e||l.isText){if(i&&!i.canReplace(n,n,r))return null;return t.cut(0,e).append(r).append(t.cut(e))}let o=Me(l.content,e-s-1,r);return o&&t.replaceChild(n,l.copy(o))}function xe(t,e,r){if(r.openStart>t.depth)throw new ye("Inserted content deeper than insertion position");if(t.depth-r.openStart!=e.depth-r.openEnd)throw new ye("Inconsistent open depths");return Ae(t,e,r,0)}function Ae(t,e,r,i){let n=t.index(i),s=t.node(i);if(n==e.index(i)&&i<t.depth-r.openStart){let l=Ae(t,e,r,i+1);return s.copy(s.content.replaceChild(n,l))}else if(!r.content.size){return _e(s,Re(t,e,i))}else if(!r.openStart&&!r.openEnd&&t.depth==i&&e.depth==i){let i=t.parent,n=i.content;return _e(i,n.cut(0,t.parentOffset).append(r.content).append(n.cut(e.parentOffset)))}else{let{start:n,end:l}=je(r,t);return _e(s,Be(t,n,l,e,i))}}function Ce(t,e){if(!e.type.compatibleContent(t.type))throw new ye("Cannot join "+e.type.name+" onto "+t.type.name)}function Se(t,e,r){let i=t.node(r);Ce(i,e.node(r));return i}function Oe(t,e){let r=e.length-1;if(r>=0&&t.isText&&t.sameMarkup(e[r]))e[r]=t.withText(e[r].text+t.text);else e.push(t)}function $e(t,e,r,i){let n=(e||t).node(r);let s=0,l=e?e.index(r):n.childCount;if(t){s=t.index(r);if(t.depth>r){s++}else if(t.textOffset){Oe(t.nodeAfter,i);s++}}for(let t=s;t<l;t++)Oe(n.child(t),i);if(e&&e.depth==r&&e.textOffset)Oe(e.nodeBefore,i)}function _e(t,e){t.type.checkContent(e);return t.copy(e)}function Be(t,e,r,i,n){let s=t.depth>n&&Se(t,e,n+1);let l=i.depth>n&&Se(r,i,n+1);let o=[];$e(null,t,n,o);if(s&&l&&e.index(n)==r.index(n)){Ce(s,l);Oe(_e(s,Be(t,e,r,i,n+1)),o)}else{if(s)Oe(_e(s,Re(t,e,n+1)),o);$e(e,r,n,o);if(l)Oe(_e(l,Re(r,i,n+1)),o)}$e(i,null,n,o);return new ge(o)}function Re(t,e,r){let i=[];$e(null,t,r,i);if(t.depth>r){let n=Se(t,e,r+1);Oe(_e(n,Re(t,e,r+1)),i)}$e(e,null,r,i);return new ge(i)}function je(t,e){let r=e.depth-t.openStart,i=e.node(r);let n=i.copy(t.content);for(let t=r-1;t>=0;t--)n=e.node(t).copy(ge.from(n));return{start:n.resolveNoCache(t.openStart+r),end:n.resolveNoCache(n.content.size-t.openEnd-r)}}class Ne{constructor(t,e,r){this.pos=t;this.path=e;this.parentOffset=r;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 r=this.pos-this.path[this.path.length-1],i=t.child(e);return r?t.child(e).cut(r):i}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 r=this.path[e*3],i=e==0?0:this.path[e*3-1]+1;for(let e=0;e<t;e++)i+=r.child(e).nodeSize;return i}marks(){let t=this.parent,e=this.index();if(t.content.size==0)return ve.none;if(this.textOffset)return t.child(e).marks;let r=t.maybeChild(e-1),i=t.maybeChild(e);if(!r){let t=r;r=i;i=t}let n=r.marks;for(var s=0;s<n.length;s++)if(n[s].type.spec.inclusive===false&&(!i||!n[s].isInSet(i.marks)))n=n[s--].removeFromSet(n);return n}marksAcross(t){let e=this.parent.maybeChild(this.index());if(!e||!e.isInline)return null;let r=e.marks,i=t.parent.maybeChild(t.index());for(var n=0;n<r.length;n++)if(r[n].type.spec.inclusive===false&&(!i||!r[n].isInSet(i.marks)))r=r[n--].removeFromSet(r);return r}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 r=this.depth-(this.parent.inlineContent||this.pos==t.pos?1:0);r>=0;r--)if(t.pos<=this.end(r)&&(!e||e(this.node(r))))return new Ie(this,t,r);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 r=[];let i=0,n=e;for(let e=t;;){let{index:t,offset:s}=e.content.findIndex(n);let l=n-s;r.push(e,t,i+s);if(!l)break;e=e.child(t);if(e.isText)break;n=l-1;i+=s+1}return new Ne(e,r,n)}static resolveCached(t,e){let r=Te.get(t);if(r){for(let t=0;t<r.elts.length;t++){let i=r.elts[t];if(i.pos==e)return i}}else{Te.set(t,r=new qe)}let i=r.elts[r.i]=Ne.resolve(t,e);r.i=(r.i+1)%ze;return i}}class qe{constructor(){this.elts=[];this.i=0}}const ze=12,Te=new WeakMap;class Ie{constructor(t,e,r){this.$from=t;this.$to=e;this.depth=r}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 Pe=Object.create(null);class Je{constructor(t,e,r,i=ve.none){this.type=t;this.attrs=e;this.marks=i;this.content=r||ge.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,r,i=0){this.content.nodesBetween(t,e,r,i,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,r,i){return this.content.textBetween(t,e,r,i)}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,r){return this.type==t&&De(this.attrs,e||t.defaultAttrs||Pe)&&ve.sameSet(this.marks,r||ve.none)}copy(t=null){if(t==this.content)return this;return new Je(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new Je(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,r=false){if(t==e)return Fe.empty;let i=this.resolve(t),n=this.resolve(e);let s=r?0:i.sharedDepth(e);let l=i.start(s),o=i.node(s);let u=o.content.cut(i.pos-l,n.pos-l);return new Fe(u,i.depth-s,n.depth-s)}replace(t,e,r){return xe(this.resolve(t),this.resolve(e),r)}nodeAt(t){for(let e=this;;){let{index:r,offset:i}=e.content.findIndex(t);e=e.maybeChild(r);if(!e)return null;if(i==t||e.isText)return e;t-=i+1}}childAfter(t){let{index:e,offset:r}=this.content.findIndex(t);return{node:this.content.maybeChild(e),index:e,offset:r}}childBefore(t){if(t==0)return{node:null,index:0,offset:0};let{index:e,offset:r}=this.content.findIndex(t);if(r<t)return{node:this.content.child(e),index:e,offset:r};let i=this.content.child(e-1);return{node:i,index:e-1,offset:r-i.nodeSize}}resolve(t){return Ne.resolveCached(this,t)}resolveNoCache(t){return Ne.resolve(this,t)}rangeHasMark(t,e,r){let i=false;if(e>t)this.nodesBetween(t,e,(t=>{if(r.isInSet(t.marks))i=true;return!i}));return i}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 We(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,r=ge.empty,i=0,n=r.childCount){let s=this.contentMatchAt(t).matchFragment(r,i,n);let l=s&&s.matchFragment(this.content,e);if(!l||!l.validEnd)return false;for(let t=i;t<n;t++)if(!this.type.allowsMarks(r.child(t).marks))return false;return true}canReplaceWith(t,e,r,i){if(i&&!this.type.allowsMarks(i))return false;let n=this.contentMatchAt(t).matchType(r);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=ve.none;for(let e=0;e<this.marks.length;e++){let r=this.marks[e];r.type.checkAttrs(r.attrs);t=r.addToSet(t)}if(!ve.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 r=undefined;if(e.marks){if(!Array.isArray(e.marks))throw new RangeError("Invalid mark data for Node.fromJSON");r=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,r)}let i=ge.fromJSON(t,e.content);let n=t.nodeType(e.type).create(e.attrs,i,r);n.type.checkAttrs(n.attrs);return n}}Je.prototype.text=undefined;class Le extends Je{constructor(t,e,r,i){super(t,e,null,i);if(!r)throw new RangeError("Empty text nodes are not allowed");this.text=r}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);return We(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 Le(this.type,this.attrs,this.text,t)}withText(t){if(t==this.text)return this;return new Le(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 We(t,e){for(let r=t.length-1;r>=0;r--)e=t[r].type.name+"("+e+")";return e}class Ue{constructor(t){this.validEnd=t;this.next=[];this.wrapCache=[]}static parse(t,e){let r=new He(t,e);if(r.next==null)return Ue.empty;let i=Ze(r);if(r.next)r.err("Unexpected trailing text");let n=ir(tr(i));nr(n,r);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,r=t.childCount){let i=this;for(let n=e;i&&n<r;n++)i=i.matchType(t.child(n).type);return i}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 r=0;r<t.next.length;r++)if(this.next[e].type==t.next[r].type)return true;return false}fillBefore(t,e=false,r=0){let i=[this];function n(s,l){let o=s.matchFragment(t,r);if(o&&(!e||o.validEnd))return ge.from(l.map((t=>t.createAndFill())));for(let t=0;t<s.next.length;t++){let{type:e,next:r}=s.next[t];if(!(e.isText||e.hasRequiredAttrs())&&i.indexOf(r)==-1){i.push(r);let t=n(r,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),r=[{match:this,type:null,via:null}];while(r.length){let i=r.shift(),n=i.match;if(n.matchType(t)){let t=[];for(let e=i;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)&&(!i.type||l.validEnd)){r.push({match:s.contentMatch,type:s,via:i});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(r){t.push(r);for(let i=0;i<r.next.length;i++)if(t.indexOf(r.next[i].next)==-1)e(r.next[i].next)}e(this);return t.map(((e,r)=>{let i=r+(e.validEnd?"*":" ")+" ";for(let r=0;r<e.next.length;r++)i+=(r?", ":"")+e.next[r].type.name+"->"+t.indexOf(e.next[r].next);return i})).join("\n")}}Ue.empty=new Ue(true);class He{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 Ze(t){let e=[];do{e.push(Ke(t))}while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function Ke(t){let e=[];do{e.push(Ve(t))}while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function Ve(t){let e=Qe(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=Xe(t,e);else break}return e}function Ge(t){if(/\D/.test(t.next))t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);t.pos++;return e}function Xe(t,e){let r=Ge(t),i=r;if(t.eat(",")){if(t.next!="}")i=Ge(t);else i=-1}if(!t.eat("}"))t.err("Unclosed braced range");return{type:"range",min:r,max:i,expr:e}}function Ye(t,e){let r=t.nodeTypes,i=r[e];if(i)return[i];let n=[];for(let t in r){let i=r[t];if(i.groups.indexOf(e)>-1)n.push(i)}if(n.length==0)t.err("No node type or group '"+e+"' found");return n}function Qe(t){if(t.eat("(")){let e=Ze(t);if(!t.eat(")"))t.err("Missing closing paren");return e}else if(!/\W/.test(t.next)){let e=Ye(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 tr(t){let e=[[]];n(s(t,0),r());return e;function r(){return e.push([])-1}function i(t,r,i){let n={term:i,to:r};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,r)=>t.concat(s(r,e))),[])}else if(t.type=="seq"){for(let i=0;;i++){let l=s(t.exprs[i],e);if(i==t.exprs.length-1)return l;n(l,e=r())}}else if(t.type=="star"){let l=r();i(e,l);n(s(t.expr,l),l);return[i(l)]}else if(t.type=="plus"){let l=r();n(s(t.expr,e),l);n(s(t.expr,l),l);return[i(l)]}else if(t.type=="opt"){return[i(e)].concat(s(t.expr,e))}else if(t.type=="range"){let l=e;for(let e=0;e<t.min;e++){let e=r();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=r();i(l,e);n(s(t.expr,l),e);l=e}}return[i(l)]}else if(t.type=="name"){return[i(e,undefined,t.value)]}else{throw new Error("Unknown expr type")}}}function er(t,e){return e-t}function rr(t,e){let r=[];i(e);return r.sort(er);function i(e){let n=t[e];if(n.length==1&&!n[0].term)return i(n[0].to);r.push(e);for(let t=0;t<n.length;t++){let{term:e,to:s}=n[t];if(!e&&r.indexOf(s)==-1)i(s)}}}function ir(t){let e=Object.create(null);return r(rr(t,0));function r(i){let n=[];i.forEach((e=>{t[e].forEach((({term:e,to:r})=>{if(!e)return;let i;for(let t=0;t<n.length;t++)if(n[t][0]==e)i=n[t][1];rr(t,r).forEach((t=>{if(!i)n.push([e,i=[]]);if(i.indexOf(t)==-1)i.push(t)}))}))}));let s=e[i.join(",")]=new Ue(i.indexOf(t.length-1)>-1);for(let t=0;t<n.length;t++){let i=n[t][1].sort(er);s.next.push({type:n[t][0],next:e[i.join(",")]||r(i)})}return s}}function nr(t,e){for(let r=0,i=[t];r<i.length;r++){let t=i[r],n=!t.validEnd,s=[];for(let e=0;e<t.next.length;e++){let{type:r,next:l}=t.next[e];s.push(r.name);if(n&&!(r.isText||r.hasRequiredAttrs()))n=false;if(i.indexOf(l)==-1)i.push(l)}if(n)e.err("Only non-generatable nodes ("+s.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function sr(t){let e=Object.create(null);for(let r in t){let i=t[r];if(!i.hasDefault)return null;e[r]=i.default}return e}function lr(t,e){let r=Object.create(null);for(let i in t){let n=e&&e[i];if(n===undefined){let e=t[i];if(e.hasDefault)n=e.default;else throw new RangeError("No value supplied for attribute "+i)}r[i]=n}return r}function or(t,e,r,i){for(let i in e)if(!(i in t))throw new RangeError(`Unsupported attribute ${i} for ${r} of type ${i}`);for(let r in t){let i=t[r];if(i.validate)i.validate(e[r])}}function ur(t,e){let r=Object.create(null);if(e)for(let i in e)r[i]=new ar(t,i,e[i]);return r}class fr{constructor(t,e,r){this.name=t;this.schema=e;this.spec=r;this.markSet=null;this.groups=r.group?r.group.split(" "):[];this.attrs=ur(t,r.attrs);this.defaultAttrs=sr(this.attrs);this.contentMatch=null;this.inlineContent=null;this.isBlock=!(r.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 lr(this.attrs,t)}create(t=null,e,r){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new Je(this,this.computeAttrs(t),ge.from(e),ve.setFrom(r))}createChecked(t=null,e,r){e=ge.from(e);this.checkContent(e);return new Je(this,this.computeAttrs(t),e,ve.setFrom(r))}createAndFill(t=null,e,r){t=this.computeAttrs(t);e=ge.from(e);if(e.size){let t=this.contentMatch.fillBefore(e);if(!t)return null;e=t.append(e)}let i=this.contentMatch.matchFragment(e);let n=i&&i.fillBefore(ge.empty,true);if(!n)return null;return new Je(this,t,e.append(n),ve.setFrom(r))}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){or(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 r=0;r<t.length;r++){if(!this.allowsMarkType(t[r].type)){if(!e)e=t.slice(0,r)}else if(e){e.push(t[r])}}return!e?t:e.length?e:ve.none}static compile(t,e){let r=Object.create(null);t.forEach(((t,i)=>r[t]=new fr(t,e,i)));let i=e.spec.topNode||"doc";if(!r[i])throw new RangeError("Schema is missing its top node type ('"+i+"')");if(!r.text)throw new RangeError("Every schema needs a 'text' type");for(let t in r.text.attrs)throw new RangeError("The text node type should not have attributes");return r}}function hr(t,e,r){let i=r.split("|");return r=>{let n=r===null?"null":typeof r;if(i.indexOf(n)<0)throw new RangeError(`Expected value of type ${i} for attribute ${e} on type ${t}, got ${n}`)}}class ar{constructor(t,e,r){this.hasDefault=Object.prototype.hasOwnProperty.call(r,"default");this.default=r.default;this.validate=typeof r.validate=="string"?hr(t,e,r.validate):r.validate}get isRequired(){return!this.hasDefault}}class cr{constructor(t,e,r,i){this.name=t;this.rank=e;this.schema=r;this.spec=i;this.attrs=ur(t,i.attrs);this.excluded=null;let n=sr(this.attrs);this.instance=n?new ve(this,n):null}create(t=null){if(!t&&this.instance)return this.instance;return new ve(this,lr(this.attrs,t))}static compile(t,e){let r=Object.create(null),i=0;t.forEach(((t,n)=>r[t]=new cr(t,i++,e,n)));return r}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){or(this.attrs,t,"mark")}excludes(t){return this.excluded.indexOf(t)>-1}}class dr{constructor(t){this.linebreakReplacement=null;this.cached=Object.create(null);let e=this.spec={};for(let r in t)e[r]=t[r];e.nodes=pe.from(t.nodes),e.marks=pe.from(t.marks||{}),this.nodes=fr.compile(this.spec.nodes,this);this.marks=cr.compile(this.spec.marks,this);let r=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],i=e.spec.content||"",n=e.spec.marks;e.contentMatch=r[i]||(r[i]=Ue.parse(i,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?pr(this,n.split(" ")):n==""||!e.inlineContent?[]:null}for(let t in this.marks){let e=this.marks[t],r=e.spec.excludes;e.excluded=r==null?[e]:r==""?[]:pr(this,r.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,r,i){if(typeof t=="string")t=this.nodeType(t);else if(!(t instanceof fr))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,r,i)}text(t,e){let r=this.nodes.text;return new Le(r,r.defaultAttrs,t,ve.setFrom(e))}mark(t,e){if(typeof t=="string")t=this.marks[t];return t.create(e)}nodeFromJSON(t){return Je.fromJSON(this,t)}markFromJSON(t){return ve.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function pr(t,e){let r=[];for(let i=0;i<e.length;i++){let n=e[i],s=t.marks[n],l=s;if(s){r.push(s)}else{for(let e in t.marks){let i=t.marks[e];if(n=="_"||i.spec.group&&i.spec.group.split(" ").indexOf(n)>-1)r.push(l=i)}}if(!l)throw new SyntaxError("Unknown mark type: '"+e[i]+"'")}return r}function mr(t){return t.tag!=null}function wr(t){return t.style!=null}class gr{constructor(t,e){this.schema=t;this.rules=e;this.tags=[];this.styles=[];let r=this.matchedStyles=[];e.forEach((t=>{if(mr(t)){this.tags.push(t)}else if(wr(t)){let e=/[^=]*/.exec(t.style)[0];if(r.indexOf(e)<0)r.push(e);this.styles.push(t)}}));this.normalizeLists=!this.tags.some((e=>{if(!/^(ul|ol)\b/.test(e.tag)||!e.node)return false;let r=t.nodes[e.node];return r.contentMatch.matchType(r)}))}parse(t,e={}){let r=new xr(this,e,false);r.addAll(t,ve.none,e.from,e.to);return r.finish()}parseSlice(t,e={}){let r=new xr(this,e,true);r.addAll(t,ve.none,e.from,e.to);return Fe.maxOpen(r.finish())}matchTag(t,e,r){for(let i=r?this.tags.indexOf(r)+1:0;i<this.tags.length;i++){let r=this.tags[i];if(Cr(t,r.tag)&&(r.namespace===undefined||t.namespaceURI==r.namespace)&&(!r.context||e.matchesContext(r.context))){if(r.getAttrs){let e=r.getAttrs(t);if(e===false)continue;r.attrs=e||undefined}return r}}}matchStyle(t,e,r,i){for(let n=i?this.styles.indexOf(i)+1:0;n<this.styles.length;n++){let i=this.styles[n],s=i.style;if(s.indexOf(t)!=0||i.context&&!r.matchesContext(i.context)||s.length>t.length&&(s.charCodeAt(t.length)!=61||s.slice(t.length+1)!=e))continue;if(i.getAttrs){let t=i.getAttrs(e);if(t===false)continue;i.attrs=t||undefined}return i}}static schemaRules(t){let e=[];function r(t){let r=t.priority==null?50:t.priority,i=0;for(;i<e.length;i++){let t=e[i],n=t.priority==null?50:t.priority;if(n<r)break}e.splice(i,0,t)}for(let e in t.marks){let i=t.marks[e].spec.parseDOM;if(i)i.forEach((t=>{r(t=Sr(t));if(!(t.mark||t.ignore||t.clearMark))t.mark=e}))}for(let e in t.nodes){let i=t.nodes[e].spec.parseDOM;if(i)i.forEach((t=>{r(t=Sr(t));if(!(t.node||t.ignore||t.mark))t.node=e}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new gr(t,gr.schemaRules(t)))}}const br={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 kr={head:true,noscript:true,object:true,script:true,style:true,title:true};const Dr={ol:true,ul:true};const vr=1,yr=2,Fr=4;function Er(t,e,r){if(e!=null)return(e?vr:0)|(e==="full"?yr:0);return t&&t.whitespace=="pre"?vr|yr:r&~Fr}class Mr{constructor(t,e,r,i,n,s){this.type=t;this.attrs=e;this.marks=r;this.solid=i;this.options=s;this.content=[];this.activeMarks=ve.none;this.match=n||(s&Fr?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(ge.from(t));if(e){this.match=this.type.contentMatch.matchFragment(e)}else{let e=this.type.contentMatch,r;if(r=e.findWrapping(t.type)){this.match=e;return r}else{return null}}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&vr)){let t=this.content[this.content.length-1],e;if(t&&t.isText&&(e=/[ \t\r\n\u000c]+$/.exec(t.text))){let r=t;if(t.text.length==e[0].length)this.content.pop();else this.content[this.content.length-1]=r.withText(r.text.slice(0,r.text.length-e[0].length))}}let e=ge.from(this.content);if(!t&&this.match)e=e.append(this.match.fillBefore(ge.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&&!br.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class xr{constructor(t,e,r){this.parser=t;this.options=e;this.isOpen=r;this.open=0;let i=e.topNode,n;let s=Er(null,e.preserveWhitespace,0)|(r?Fr:0);if(i)n=new Mr(i.type,i.attrs,ve.none,true,e.topMatch||i.type.contentMatch,s);else if(r)n=new Mr(null,null,ve.none,true,null,s);else n=new Mr(t.schema.topNodeType,null,ve.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 r=t.nodeValue;let i=this.top;if(i.options&yr||i.inlineContext(t)||/[^ \t\r\n\u000c]/.test(r)){if(!(i.options&vr)){r=r.replace(/[ \t\r\n\u000c]+/g," ");if(/^[ \t\r\n\u000c]/.test(r)&&this.open==this.nodes.length-1){let e=i.content[i.content.length-1];let n=t.previousSibling;if(!e||n&&n.nodeName=="BR"||e.isText&&/[ \t\r\n\u000c]$/.test(e.text))r=r.slice(1)}}else if(!(i.options&yr)){r=r.replace(/\r?\n|\r/g," ")}else{r=r.replace(/\r\n?/g,"\n")}if(r)this.insertNode(this.parser.schema.text(r),e);this.findInText(t)}else{this.findInside(t)}}addElement(t,e,r){let i=t.nodeName.toLowerCase(),n;if(Dr.hasOwnProperty(i)&&this.parser.normalizeLists)Ar(t);let s=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(n=this.parser.matchTag(t,this,r));if(s?s.ignore:kr.hasOwnProperty(i)){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 r,n=this.top,l=this.needsBlock;if(br.hasOwnProperty(i)){if(n.content.length&&n.content[0].isInline&&this.open){this.open--;n=this.top}r=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(r)this.sync(n);this.needsBlock=l}else{let r=this.readStyles(t,e);if(r)this.addElementByRule(t,s,r,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 r=t.style;if(r&&r.length)for(let t=0;t<this.parser.matchedStyles.length;t++){let i=this.parser.matchedStyles[t],n=r.getPropertyValue(i);if(n)for(let t=undefined;;){let r=this.parser.matchStyle(i,n,this,t);if(!r)break;if(r.ignore)return null;if(r.clearMark)e=e.filter((t=>!r.clearMark(t)));else e=e.concat(this.parser.schema.marks[r.mark].create(r.attrs));if(r.consuming===false)t=r;else break}}return e}addElementByRule(t,e,r,i){let n,s;if(e.node){s=this.parser.schema.nodes[e.node];if(!s.isLeaf){let t=this.enter(s,e.attrs||null,r,e.preserveWhitespace);if(t){n=true;r=t}}else if(!this.insertNode(s.create(e.attrs),r)){this.leafFallback(t,r)}}else{let t=this.parser.schema.marks[e.mark];r=r.concat(t.create(e.attrs))}let l=this.top;if(s&&s.isLeaf){this.findInside(t)}else if(i){this.addElement(t,r,i)}else if(e.getContent){this.findInside(t);e.getContent(t,this.parser.schema).forEach((t=>this.insertNode(t,r)))}else{let i=t;if(typeof e.contentElement=="string")i=t.querySelector(e.contentElement);else if(typeof e.contentElement=="function")i=e.contentElement(t);else if(e.contentElement)i=e.contentElement;this.findAround(t,i,true);this.addAll(i,r)}if(n&&this.sync(l))this.open--}addAll(t,e,r,i){let n=r||0;for(let s=r?t.childNodes[r]:t.firstChild,l=i==null?null:t.childNodes[i];s!=l;s=s.nextSibling,++n){this.findAtPoint(t,n);this.addDOM(s,e)}this.findAtPoint(t,n)}findPlace(t,e){let r,i;for(let e=this.open;e>=0;e--){let n=this.nodes[e];let s=n.findWrapping(t);if(s&&(!r||r.length>s.length)){r=s;i=n;if(!s.length)break}if(n.solid)break}if(!r)return null;this.sync(i);for(let t=0;t<r.length;t++)e=this.enterInner(r[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 r=this.findPlace(t,e);if(r){this.closeExtra();let e=this.top;if(e.match)e.match=e.match.matchType(t.type);let i=ve.none;for(let n of r.concat(t.marks))if(e.type?e.type.allowsMarkType(n.type):Or(n.type,t.type))i=n.addToSet(i);e.content.push(t.mark(i));return true}return false}enter(t,e,r,i){let n=this.findPlace(t.create(e),r);if(n)n=this.enterInner(t,e,r,true,i);return n}enterInner(t,e,r,i=false,n){this.closeExtra();let s=this.top;s.match=s.match&&s.match.matchType(t);let l=Er(t,n,s.options);if(s.options&Fr&&s.content.length==0)l|=Fr;let o=ve.none;r=r.filter((e=>{if(s.type?s.type.allowsMarkType(e.type):Or(e.type,t)){o=e.addToSet(o);return false}return true}));this.nodes.push(new Mr(t,e,o,i,null,l));this.open++;return r}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 r=this.nodes[e].content;for(let e=r.length-1;e>=0;e--)t+=r[e].nodeSize;if(e)t++}return t}findAtPoint(t,e){if(this.find)for(let r=0;r<this.find.length;r++){if(this.find[r].node==t&&this.find[r].offset==e)this.find[r].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,r){if(t!=e&&this.find)for(let i=0;i<this.find.length;i++){if(this.find[i].pos==null&&t.nodeType==1&&t.contains(this.find[i].node)){let t=e.compareDocumentPosition(this.find[i].node);if(t&(r?2:4))this.find[i].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 r=this.options.context;let i=!this.isOpen&&(!r||r.parent.type==this.nodes[0].type);let n=-(r?r.depth+1:0)+(i?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&&i?this.nodes[l].type:r&&l>=n?r.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 r=t.node(e).contentMatchAt(t.indexAfter(e)).defaultType;if(r&&r.isTextblock&&r.defaultAttrs)return r}for(let t in this.parser.schema.nodes){let e=this.parser.schema.nodes[t];if(e.isTextblock&&e.defaultAttrs)return e}}}function Ar(t){for(let e=t.firstChild,r=null;e;e=e.nextSibling){let t=e.nodeType==1?e.nodeName.toLowerCase():null;if(t&&Dr.hasOwnProperty(t)&&r){r.appendChild(e);e=r}else if(t=="li"){r=e}else if(t){r=null}}}function Cr(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function Sr(t){let e={};for(let r in t)e[r]=t[r];return e}function Or(t,e){let r=e.schema.nodes;for(let i in r){let n=r[i];if(!n.allowsMarkType(t))continue;let s=[],l=t=>{s.push(t);for(let r=0;r<t.edgeCount;r++){let{type:i,next:n}=t.edge(r);if(i==e)return true;if(s.indexOf(n)<0&&l(n))return true}};if(l(n.contentMatch))return true}}class $r{constructor(t,e){this.nodes=t;this.marks=e}serializeFragment(t,e={},r){if(!r)r=Br(e).createDocumentFragment();let i=r,n=[];t.forEach((t=>{if(n.length||t.marks.length){let r=0,s=0;while(r<n.length&&s<t.marks.length){let e=t.marks[s];if(!this.marks[e.type.name]){s++;continue}if(!e.eq(n[r][0])||e.type.spec.spanning===false)break;r++;s++}while(r<n.length)i=n.pop()[1];while(s<t.marks.length){let r=t.marks[s++];let l=this.serializeMark(r,t.isInline,e);if(l){n.push([r,i]);i.appendChild(l.dom);i=l.contentDOM||l.dom}}}i.appendChild(this.serializeNodeInner(t,e))}));return r}serializeNodeInner(t,e){let{dom:r,contentDOM:i}=qr(Br(e),this.nodes[t.type.name](t),null,t.attrs);if(i){if(t.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(t.content,e,i)}return r}serializeNode(t,e={}){let r=this.serializeNodeInner(t,e);for(let i=t.marks.length-1;i>=0;i--){let n=this.serializeMark(t.marks[i],t.isInline,e);if(n){(n.contentDOM||n.dom).appendChild(r);r=n.dom}}return r}serializeMark(t,e,r={}){let i=this.marks[t.type.name];return i&&qr(Br(r),i(t,e),null,t.attrs)}static renderSpec(t,e,r=null,i){return qr(t,e,r,i)}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new $r(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=_r(t.nodes);if(!e.text)e.text=t=>t.text;return e}static marksFromSchema(t){return _r(t.marks)}}function _r(t){let e={};for(let r in t){let i=t[r].spec.toDOM;if(i)e[r]=i}return e}function Br(t){return t.document||window.document}const Rr=new WeakMap;function jr(t){let e=Rr.get(t);if(e===undefined)Rr.set(t,e=Nr(t));return e}function Nr(t){let e=null;function r(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++)r(t[e])}}else{for(let e in t)r(t[e])}}}r(t);return e}function qr(t,e,r,i){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(i&&(s=jr(i))&&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){r=n.slice(0,l);n=n.slice(l+1)}let o;let u=r?t.createElementNS(r,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}=qr(t,s,r,i);u.appendChild(e);if(n){if(o)throw new RangeError("Multiple content holes");o=n}}}return{dom:u,contentDOM:o}}const zr=65535;const Tr=Math.pow(2,16);function Ir(t,e){return t+e*Tr}function Pr(t){return t&zr}function Jr(t){return(t-(t&zr))/Tr}const Lr=1,Wr=2,Ur=4,Hr=8;class Zr{constructor(t,e,r){this.pos=t;this.delInfo=e;this.recover=r}get deleted(){return(this.delInfo&Hr)>0}get deletedBefore(){return(this.delInfo&(Lr|Ur))>0}get deletedAfter(){return(this.delInfo&(Wr|Ur))>0}get deletedAcross(){return(this.delInfo&Ur)>0}}class Kr{constructor(t,e=false){this.ranges=t;this.inverted=e;if(!t.length&&Kr.empty)return Kr.empty}recover(t){let e=0,r=Pr(t);if(!this.inverted)for(let t=0;t<r;t++)e+=this.ranges[t*3+2]-this.ranges[t*3+1];return this.ranges[r*3]+e+Jr(t)}mapResult(t,e=1){return this._map(t,e,false)}map(t,e=1){return this._map(t,e,true)}_map(t,e,r){let i=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?i: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+i+(n<0?0:f);if(r)return s;let a=t==(e<0?o:h)?null:Ir(l/3,t-o);let c=t==o?Wr:t==h?Lr:Ur;if(e<0?t!=o:t!=h)c|=Hr;return new Zr(s,c,a)}i+=f-u}return r?t+i:new Zr(t+i,0,null)}touches(t,e){let r=0,i=Pr(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?r:0);if(l>t)break;let o=this.ranges[e+n],u=l+o;if(t<=u&&e==i*3)return true;r+=this.ranges[e+s]-o}return false}forEach(t){let e=this.inverted?2:1,r=this.inverted?1:2;for(let i=0,n=0;i<this.ranges.length;i+=3){let s=this.ranges[i],l=s-(this.inverted?n:0),o=s+(this.inverted?0:n);let u=this.ranges[i+e],f=this.ranges[i+r];t(l,l+u,o,o+f);n+=f-u}}invert(){return new Kr(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?Kr.empty:new Kr(t<0?[0,-t,0]:[0,0,t])}}Kr.empty=new Kr([]);class Vr{constructor(t=[],e,r=0,i=t.length){this.maps=t;this.mirror=e;this.from=r;this.to=i}slice(t=0,e=this.maps.length){return new Vr(this.maps,this.mirror,t,e)}copy(){return new Vr(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,r=this.maps.length;e<t.maps.length;e++){let i=t.getMirror(e);this.appendMap(t.maps[e],i!=null&&i<e?r+i: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,r=this.maps.length+t.maps.length;e>=0;e--){let i=t.getMirror(e);this.appendMap(t.maps[e].invert(),i!=null&&i>e?r-i-1:undefined)}}invert(){let t=new Vr;t.appendMappingInverted(this);return t}map(t,e=1){if(this.mirror)return this._map(t,e,true);for(let r=this.from;r<this.to;r++)t=this.maps[r].map(t,e);return t}mapResult(t,e=1){return this._map(t,e,false)}_map(t,e,r){let i=0;for(let r=this.from;r<this.to;r++){let n=this.maps[r],s=n.mapResult(t,e);if(s.recover!=null){let e=this.getMirror(r);if(e!=null&&e>r&&e<this.to){r=e;t=this.maps[e].recover(s.recover);continue}}i|=s.delInfo;t=s.pos}return r?t:new Zr(t,i,null)}}const Gr=Object.create(null);class Xr{getMap(){return Kr.empty}merge(t){return null}static fromJSON(t,e){if(!e||!e.stepType)throw new RangeError("Invalid input for Step.fromJSON");let r=Gr[e.stepType];if(!r)throw new RangeError(`No step type ${e.stepType} defined`);return r.fromJSON(t,e)}static jsonID(t,e){if(t in Gr)throw new RangeError("Duplicate use of step JSON ID "+t);Gr[t]=e;e.prototype.jsonID=t;return e}}class Yr{constructor(t,e){this.doc=t;this.failed=e}static ok(t){return new Yr(t,null)}static fail(t){return new Yr(null,t)}static fromReplace(t,e,r,i){try{return Yr.ok(t.replace(e,r,i))}catch(t){if(t instanceof ye)return Yr.fail(t.message);throw t}}}function Qr(t,e,r){let i=[];for(let n=0;n<t.childCount;n++){let s=t.child(n);if(s.content.size)s=s.copy(Qr(s.content,e,s));if(s.isInline)s=e(s,r,n);i.push(s)}return ge.fromArray(i)}class ti extends Xr{constructor(t,e,r){super();this.from=t;this.to=e;this.mark=r}apply(t){let e=t.slice(this.from,this.to),r=t.resolve(this.from);let i=r.node(r.sharedDepth(this.to));let n=new Fe(Qr(e.content,((t,e)=>{if(!t.isAtom||!e.type.allowsMarkType(this.mark.type))return t;return t.mark(this.mark.addToSet(t.marks))}),i),e.openStart,e.openEnd);return Yr.fromReplace(t,this.from,this.to,n)}invert(){return new ei(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);if(e.deleted&&r.deleted||e.pos>=r.pos)return null;return new ti(e.pos,r.pos,this.mark)}merge(t){if(t instanceof ti&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new ti(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 ti(e.from,e.to,t.markFromJSON(e.mark))}}Xr.jsonID("addMark",ti);class ei extends Xr{constructor(t,e,r){super();this.from=t;this.to=e;this.mark=r}apply(t){let e=t.slice(this.from,this.to);let r=new Fe(Qr(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Yr.fromReplace(t,this.from,this.to,r)}invert(){return new ti(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);if(e.deleted&&r.deleted||e.pos>=r.pos)return null;return new ei(e.pos,r.pos,this.mark)}merge(t){if(t instanceof ei&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new ei(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 ei(e.from,e.to,t.markFromJSON(e.mark))}}Xr.jsonID("removeMark",ei);class ri extends Xr{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Yr.fail("No node at mark step's position");let r=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Yr.fromReplace(t,this.pos,this.pos+1,new Fe(ge.from(r),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 r=0;r<e.marks.length;r++)if(!e.marks[r].isInSet(t))return new ri(this.pos,e.marks[r]);return new ri(this.pos,this.mark)}}return new ii(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new ri(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 ri(e.pos,t.markFromJSON(e.mark))}}Xr.jsonID("addNodeMark",ri);class ii extends Xr{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Yr.fail("No node at mark step's position");let r=e.type.create(e.attrs,null,this.mark.removeFromSet(e.marks));return Yr.fromReplace(t,this.pos,this.pos+1,new Fe(ge.from(r),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(!e||!this.mark.isInSet(e.marks))return this;return new ri(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new ii(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 ii(e.pos,t.markFromJSON(e.mark))}}Xr.jsonID("removeNodeMark",ii);class ni extends Xr{constructor(t,e,r,i=false){super();this.from=t;this.to=e;this.slice=r;this.structure=i}apply(t){if(this.structure&&li(t,this.from,this.to))return Yr.fail("Structure replace would overwrite content");return Yr.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new Kr([this.from,this.to-this.from,this.slice.size])}invert(t){return new ni(this.from,this.from+this.slice.size,t.slice(this.from,this.to))}map(t){let e=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);if(e.deletedAcross&&r.deletedAcross)return null;return new ni(e.pos,Math.max(e.pos,r.pos),this.slice)}merge(t){if(!(t instanceof ni)||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?Fe.empty:new Fe(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new ni(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?Fe.empty:new Fe(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new ni(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 ni(e.from,e.to,Fe.fromJSON(t,e.slice),!!e.structure)}}Xr.jsonID("replace",ni);class si extends Xr{constructor(t,e,r,i,n,s,l=false){super();this.from=t;this.to=e;this.gapFrom=r;this.gapTo=i;this.slice=n;this.insert=s;this.structure=l}apply(t){if(this.structure&&(li(t,this.from,this.gapFrom)||li(t,this.gapTo,this.to)))return Yr.fail("Structure gap-replace would overwrite content");let e=t.slice(this.gapFrom,this.gapTo);if(e.openStart||e.openEnd)return Yr.fail("Gap is not a flat range");let r=this.slice.insertAt(this.insert,e.content);if(!r)return Yr.fail("Content does not fit in gap");return Yr.fromReplace(t,this.from,this.to,r)}getMap(){return new Kr([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 si(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),r=t.mapResult(this.to,-1);let i=t.map(this.gapFrom,-1),n=t.map(this.gapTo,1);if(e.deletedAcross&&r.deletedAcross||i<e.pos||n>r.pos)return null;return new si(e.pos,r.pos,i,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 si(e.from,e.to,e.gapFrom,e.gapTo,Fe.fromJSON(t,e.slice),e.insert,!!e.structure)}}Xr.jsonID("replaceAround",si);function li(t,e,r){let i=t.resolve(e),n=r-e,s=i.depth;while(n>0&&s>0&&i.indexAfter(s)==i.node(s).childCount){s--;n--}if(n>0){let t=i.node(s).maybeChild(i.indexAfter(s));while(n>0){if(!t||t.isLeaf)return true;t=t.firstChild;n--}}return false}function oi(t,e,r,i){let n=[],s=[];let l,o;t.doc.nodesBetween(e,r,((t,u,f)=>{if(!t.isInline)return;let h=t.marks;if(!i.isInSet(h)&&f.type.allowsMarkType(i.type)){let f=Math.max(u,e),a=Math.min(u+t.nodeSize,r);let c=i.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 ei(f,a,h[t]))}}if(o&&o.to==f)o.to=a;else s.push(o=new ti(f,a,i))}}));n.forEach((e=>t.step(e)));s.forEach((e=>t.step(e)))}function ui(t,e,r,i){let n=[],s=0;t.doc.nodesBetween(e,r,((t,l)=>{if(!t.isInline)return;s++;let o=null;if(i instanceof cr){let e=t.marks,r;while(r=i.isInSet(e)){(o||(o=[])).push(r);e=r.removeFromSet(e)}}else if(i){if(i.isInSet(t.marks))o=[i]}else{o=t.marks}if(o&&o.length){let i=Math.min(l+t.nodeSize,r);for(let t=0;t<o.length;t++){let r=o[t],u;for(let t=0;t<n.length;t++){let e=n[t];if(e.step==s-1&&r.eq(n[t].style))u=e}if(u){u.to=i;u.step=s}else{n.push({style:r,from:Math.max(l,e),to:i,step:s})}}}}));n.forEach((e=>t.step(new ei(e.from,e.to,e.style))))}function fi(t,e,r,i=r.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=i.matchType(o.type);if(!f){s.push(new ni(l,u,Fe.empty))}else{i=f;for(let e=0;e<o.marks.length;e++)if(!r.allowsMarkType(o.marks[e].type))t.step(new ei(l,u,o.marks[e]));if(o.isText&&!r.spec.code){let t,e=/\r?\n|\r/g,i;while(t=e.exec(o.text)){if(!i)i=new Fe(ge.from(r.schema.text(" ",r.allowedMarks(o.marks))),0,0);s.push(new ni(l+t.index,l+t.index+t[0].length,i))}}}l=u}if(!i.validEnd){let e=i.fillBefore(ge.empty,true);t.replace(l,l,new Fe(e,0,0))}for(let e=s.length-1;e>=0;e--)t.step(s[e])}function hi(t,e,r){return(e==0||t.canReplace(e,t.childCount))&&(r==t.childCount||t.canReplace(0,r))}function ai(t){let e=t.parent;let r=e.content.cutByIndex(t.startIndex,t.endIndex);for(let e=t.depth;;--e){let i=t.$from.node(e);let n=t.$from.index(e),s=t.$to.indexAfter(e);if(e<t.depth&&i.canReplace(n,s,r))return e;if(e==0||i.type.spec.isolating||!hi(i,n,s))break}return null}function ci(t,e,r){let{$from:i,$to:n,depth:s}=e;let l=i.before(s+1),o=n.after(s+1);let u=l,f=o;let h=ge.empty,a=0;for(let t=s,e=false;t>r;t--)if(e||i.index(t)>0){e=true;h=ge.from(i.node(t).copy(h));a++}else{u--}let c=ge.empty,d=0;for(let t=s,e=false;t>r;t--)if(e||n.after(t+1)<n.end(t)){e=true;c=ge.from(n.node(t).copy(c));d++}else{f++}t.step(new si(u,f,l,o,new Fe(h.append(c),a,d),h.size-a,true))}function di(t,e,r=null,i=t){let n=mi(t,e);let s=n&&wi(i,e);if(!s)return null;return n.map(pi).concat({type:e,attrs:r}).concat(s.map(pi))}function pi(t){return{type:t,attrs:null}}function mi(t,e){let{parent:r,startIndex:i,endIndex:n}=t;let s=r.contentMatchAt(i).findWrapping(e);if(!s)return null;let l=s.length?s[0]:e;return r.canReplaceWith(i,n,l)?s:null}function wi(t,e){let{parent:r,startIndex:i,endIndex:n}=t;let s=r.child(i);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=i;u&&t<n;t++)u=u.matchType(r.child(t).type);if(!u||!u.validEnd)return null;return l}function gi(t,e,r){let i=ge.empty;for(let t=r.length-1;t>=0;t--){if(i.size){let e=r[t].type.contentMatch.matchFragment(i);if(!e||!e.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}i=ge.from(r[t].type.create(r[t].attrs,i))}let n=e.start,s=e.end;t.step(new si(n,s,n,s,new Fe(i,0,0),r.length,true))}function bi(t,e,r,i,n){if(!i.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let s=t.steps.length;t.doc.nodesBetween(e,r,((e,r)=>{if(e.isTextblock&&!e.hasMarkup(i,n)&&ki(t.doc,t.mapping.slice(s).map(r),i)){t.clearIncompatible(t.mapping.slice(s).map(r,1),i);let l=t.mapping.slice(s);let o=l.map(r,1),u=l.map(r+e.nodeSize,1);t.step(new si(o,u,o+1,u-1,new Fe(ge.from(i.create(n,null,e.marks)),0,0),1,true));return false}}))}function ki(t,e,r){let i=t.resolve(e),n=i.index();return i.parent.canReplaceWith(n,n+1,r)}function Di(t,e,r,i,n){let s=t.doc.nodeAt(e);if(!s)throw new RangeError("No node at given position");if(!r)r=s.type;let l=r.create(i,null,n||s.marks);if(s.isLeaf)return t.replaceWith(e,e+s.nodeSize,l);if(!r.validContent(s.content))throw new RangeError("Invalid content for node type "+r.name);t.step(new si(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new Fe(ge.from(l),0,0),1,true))}function vi(t,e,r=1,i){let n=t.resolve(e),s=n.depth-r;let l=i&&i[i.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=r-2;t>s;t--,e--){let r=n.node(t),s=n.index(t);if(r.type.spec.isolating)return false;let l=r.content.cutByIndex(s,r.childCount);let o=i&&i[e+1];if(o)l=l.replaceChild(0,o.type.create(o.attrs));let u=i&&i[e]||r;if(!r.canReplace(s+1,r.childCount)||!u.type.validContent(l))return false}let o=n.indexAfter(s);let u=i&&i[0];return n.node(s).canReplaceWith(o,o,u?u.type:n.node(s+1).type)}function yi(t,e,r=1,i){let n=t.doc.resolve(e),s=ge.empty,l=ge.empty;for(let t=n.depth,e=n.depth-r,o=r-1;t>e;t--,o--){s=ge.from(n.node(t).copy(s));let e=i&&i[o];l=ge.from(e?e.type.create(e.attrs,l):n.node(t).copy(l))}t.step(new ni(e,e,new Fe(s.append(l),r,r),true))}function Fi(t,e){let r=t.resolve(e),i=r.index();return Ei(r.nodeBefore,r.nodeAfter)&&r.parent.canReplace(i,i+1)}function Ei(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function Mi(t,e,r=-1){let i=t.resolve(e);for(let t=i.depth;;t--){let n,s,l=i.index(t);if(t==i.depth){n=i.nodeBefore;s=i.nodeAfter}else if(r>0){n=i.node(t+1);l++;s=i.node(t).maybeChild(l)}else{n=i.node(t).maybeChild(l-1);s=i.node(t+1)}if(n&&!n.isTextblock&&Ei(n,s)&&i.node(t).canReplace(l,l+1))return e;if(t==0)break;e=r<0?i.before(t):i.after(t)}}function xi(t,e,r){let i=new ni(e-r,e+r,Fe.empty,true);t.step(i)}function Ai(t,e,r){let i=t.resolve(e);if(i.parent.canReplaceWith(i.index(),i.index(),r))return e;if(i.parentOffset==0)for(let t=i.depth-1;t>=0;t--){let e=i.index(t);if(i.node(t).canReplaceWith(e,e,r))return i.before(t+1);if(e>0)return null}if(i.parentOffset==i.parent.content.size)for(let t=i.depth-1;t>=0;t--){let e=i.indexAfter(t);if(i.node(t).canReplaceWith(e,e,r))return i.after(t+1);if(e<i.node(t).childCount)return null}return null}function Ci(t,e,r){let i=t.resolve(e);if(!r.content.size)return e;let n=r.content;for(let t=0;t<r.openStart;t++)n=n.firstChild.content;for(let t=1;t<=(r.openStart==0&&r.size?2:1);t++){for(let e=i.depth;e>=0;e--){let r=e==i.depth?0:i.pos<=(i.start(e+1)+i.end(e+1))/2?-1:1;let s=i.index(e)+(r>0?1:0);let l=i.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 r==0?i.pos:r<0?i.before(e+1):i.after(e+1)}}return null}function Si(t,e,r=e,i=Fe.empty){if(e==r&&!i.size)return null;let n=t.resolve(e),s=t.resolve(r);if(Oi(n,s,i))return new ni(e,r,i);return new $i(n,s,i).fit()}function Oi(t,e,r){return!r.openStart&&!r.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),r.content)}class $i{constructor(t,e,r){this.$from=t;this.$to=e;this.unplaced=r;this.frontier=[];this.placed=ge.empty;for(let e=0;e<=t.depth;e++){let r=t.node(e);this.frontier.push({type:r.type,match:r.contentMatchAt(t.indexAfter(e))})}for(let e=t.depth;e>0;e--)this.placed=ge.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 r=this.$from,i=this.close(t<0?this.$to:r.doc.resolve(t));if(!i)return null;let n=this.placed,s=r.depth,l=i.depth;while(s&&l&&n.childCount==1){n=n.firstChild.content;s--;l--}let o=new Fe(n,s,l);if(t>-1)return new si(r.pos,t,this.$to.pos,this.$to.end(),o,e);if(o.size||r.pos!=this.$to.pos)return new ni(r.pos,i.pos,o);return null}findFittable(){let t=this.unplaced.openStart;for(let e=this.unplaced.content,r=0,i=this.unplaced.openEnd;r<t;r++){let n=e.firstChild;if(e.childCount>1)i=0;if(n.type.spec.isolating&&i<=r){t=r;break}e=n.content}for(let e=1;e<=2;e++){for(let r=e==1?t:this.unplaced.openStart;r>=0;r--){let t,i=null;if(r){i=Ri(this.unplaced.content,r-1).firstChild;t=i.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(ge.from(n),false)):i&&s.compatibleContent(i.type)))return{sliceDepth:r,frontierDepth:t,parent:i,inject:u};else if(e==2&&n&&(o=l.findWrapping(n.type)))return{sliceDepth:r,frontierDepth:t,parent:i,wrap:o};if(i&&l.matchType(i.type))break}}}}openMore(){let{content:t,openStart:e,openEnd:r}=this.unplaced;let i=Ri(t,e);if(!i.childCount||i.firstChild.isLeaf)return false;this.unplaced=new Fe(t,e+1,Math.max(r,i.size+e>=t.size-r?e+1:0));return true}dropNode(){let{content:t,openStart:e,openEnd:r}=this.unplaced;let i=Ri(t,e);if(i.childCount<=1&&e>0){let n=t.size-e<=e+i.size;this.unplaced=new Fe(_i(t,e-1,1),e-1,n?e-1:r)}else{this.unplaced=new Fe(_i(t,e,1),e,r)}}placeNodes({sliceDepth:t,frontierDepth:e,parent:r,inject:i,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=r?r.content:s.content;let o=s.openStart-t;let u=0,f=[];let{match:h,type:a}=this.frontier[e];if(i){for(let t=0;t<i.childCount;t++)f.push(i.child(t));h=h.matchFragment(i)}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(ji(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=Bi(this.placed,e,ge.from(f));this.frontier[e].match=h;if(d&&c<0&&r&&r.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 Fe(_i(s.content,t,u),s.openStart,s.openEnd):t==0?Fe.empty:new Fe(_i(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||!Ni(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:r}=this.$to,i=this.$to.after(r);while(r>1&&i==this.$to.end(--r))++i;return i}findCloseLevel(t){t:for(let e=Math.min(this.depth,t.depth);e>=0;e--){let{match:r,type:i}=this.frontier[e];let n=e<t.depth&&t.end(e+1)==t.pos+(t.depth-(e+1));let s=Ni(t,e,i,r,n);if(!s)continue;for(let r=e-1;r>=0;r--){let{match:e,type:i}=this.frontier[r];let n=Ni(t,r,i,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=Bi(this.placed,e.depth,e.fit);t=e.move;for(let r=e.depth+1;r<=t.depth;r++){let e=t.node(r),i=e.type.contentMatch.fillBefore(e.content,true,t.index(r));this.openFrontierNode(e.type,e.attrs,i)}return t}openFrontierNode(t,e=null,r){let i=this.frontier[this.depth];i.match=i.match.matchType(t);this.placed=Bi(this.placed,this.depth,ge.from(t.create(e,r)));this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop();let e=t.match.fillBefore(ge.empty,true);if(e.childCount)this.placed=Bi(this.placed,this.frontier.length,e)}}function _i(t,e,r){if(e==0)return t.cutByIndex(r,t.childCount);return t.replaceChild(0,t.firstChild.copy(_i(t.firstChild.content,e-1,r)))}function Bi(t,e,r){if(e==0)return t.append(r);return t.replaceChild(t.childCount-1,t.lastChild.copy(Bi(t.lastChild.content,e-1,r)))}function Ri(t,e){for(let r=0;r<e;r++)t=t.firstChild.content;return t}function ji(t,e,r){if(e<=0)return t;let i=t.content;if(e>1)i=i.replaceChild(0,ji(i.firstChild,e-1,i.childCount==1?r-1:0));if(e>0){i=t.type.contentMatch.fillBefore(i).append(i);if(r<=0)i=i.append(t.type.contentMatch.matchFragment(i).fillBefore(ge.empty,true))}return t.copy(i)}function Ni(t,e,r,i,n){let s=t.node(e),l=n?t.indexAfter(e):t.index(e);if(l==s.childCount&&!r.compatibleContent(s.type))return null;let o=i.fillBefore(s.content,true,l);return o&&!qi(r,s.content,l)?o:null}function qi(t,e,r){for(let i=r;i<e.childCount;i++)if(!t.allowsMarks(e.child(i).marks))return true;return false}function zi(t){return t.spec.defining||t.spec.definingForContent}function Ti(t,e,r,i){if(!i.size)return t.deleteRange(e,r);let n=t.doc.resolve(e),s=t.doc.resolve(r);if(Oi(n,s,i))return t.step(new ni(e,r,i));let l=Li(n,t.doc.resolve(r));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 r=n.node(t).type.spec;if(r.defining||r.definingAsContext||r.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=i.openStart;for(let t=i.content,e=0;;e++){let r=t.firstChild;f.push(r);if(e==i.openStart)break;t=r.content}for(let t=h-1;t>=0;t--){let e=f[t],r=zi(e.type);if(r&&!e.sameMarkup(n.node(Math.abs(o)-1)))h=t;else if(r||!e.type.isTextblock)break}for(let e=i.openStart;e>=0;e--){let o=(e+h+1)%(i.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):r,new Fe(Ii(i.content,0,i.openStart,o),o,i.openEnd))}}let a=t.steps.length;for(let o=l.length-1;o>=0;o--){t.replace(e,r,i);if(t.steps.length>a)break;let u=l[o];if(u<0)continue;e=n.before(u);r=s.after(u)}}function Ii(t,e,r,i,n){if(e<r){let n=t.firstChild;t=t.replaceChild(0,n.copy(Ii(n.content,e+1,r,i,n)))}if(e>i){let e=n.contentMatchAt(0);let r=e.fillBefore(t).append(t);t=r.append(e.matchFragment(r).fillBefore(ge.empty,true))}return t}function Pi(t,e,r,i){if(!i.isInline&&e==r&&t.doc.resolve(e).parent.content.size){let n=Ai(t.doc,e,i.type);if(n!=null)e=r=n}t.replaceRange(e,r,new Fe(ge.from(i),0,0))}function Ji(t,e,r){let i=t.doc.resolve(e),n=t.doc.resolve(r);let s=Li(i,n);for(let e=0;e<s.length;e++){let r=s[e],l=e==s.length-1;if(l&&r==0||i.node(r).type.contentMatch.validEnd)return t.delete(i.start(r),n.end(r));if(r>0&&(l||i.node(r-1).canReplace(i.index(r-1),n.indexAfter(r-1))))return t.delete(i.before(r),n.after(r))}for(let s=1;s<=i.depth&&s<=n.depth;s++){if(e-i.start(s)==i.depth-s&&r>i.end(s)&&n.end(s)-r!=n.depth-s)return t.delete(i.before(s),r)}t.delete(e,r)}function Li(t,e){let r=[],i=Math.min(t.depth,e.depth);for(let n=i;n>=0;n--){let i=t.start(n);if(i<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(i==e.start(n)||n==t.depth&&n==e.depth&&t.parent.inlineContent&&e.parent.inlineContent&&n&&e.start(n-1)==i-1)r.push(n)}return r}class Wi extends Xr{constructor(t,e,r){super();this.pos=t;this.attr=e;this.value=r}apply(t){let e=t.nodeAt(this.pos);if(!e)return Yr.fail("No node at attribute step's position");let r=Object.create(null);for(let t in e.attrs)r[t]=e.attrs[t];r[this.attr]=this.value;let i=e.type.create(r,null,e.marks);return Yr.fromReplace(t,this.pos,this.pos+1,new Fe(ge.from(i),0,e.isLeaf?0:1))}getMap(){return Kr.empty}invert(t){return new Wi(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 Wi(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 Wi(e.pos,e.attr,e.value)}}Xr.jsonID("attr",Wi);class Ui extends Xr{constructor(t,e){super();this.attr=t;this.value=e}apply(t){let e=Object.create(null);for(let r in t.attrs)e[r]=t.attrs[r];e[this.attr]=this.value;let r=t.type.create(e,t.content,t.marks);return Yr.ok(r)}getMap(){return Kr.empty}invert(t){return new Ui(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 Ui(e.attr,e.value)}}Xr.jsonID("docAttr",Ui);let Hi=class extends Error{};Hi=function t(e){let r=Error.call(this,e);r.__proto__=t.prototype;return r};Hi.prototype=Object.create(Error.prototype);Hi.prototype.constructor=Hi;Hi.prototype.name="TransformError";class Zi{constructor(t){this.doc=t;this.steps=[];this.docs=[];this.mapping=new Vr}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new Hi(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,r=Fe.empty){let i=Si(this.doc,t,e,r);if(i)this.step(i);return this}replaceWith(t,e,r){return this.replace(t,e,new Fe(ge.from(r),0,0))}delete(t,e){return this.replace(t,e,Fe.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,r){Ti(this,t,e,r);return this}replaceRangeWith(t,e,r){Pi(this,t,e,r);return this}deleteRange(t,e){Ji(this,t,e);return this}lift(t,e){ci(this,t,e);return this}join(t,e=1){xi(this,t,e);return this}wrap(t,e){gi(this,t,e);return this}setBlockType(t,e=t,r,i=null){bi(this,t,e,r,i);return this}setNodeMarkup(t,e,r=null,i){Di(this,t,e,r,i);return this}setNodeAttribute(t,e,r){this.step(new Wi(t,e,r));return this}setDocAttribute(t,e){this.step(new Ui(t,e));return this}addNodeMark(t,e){this.step(new ri(t,e));return this}removeNodeMark(t,e){if(!(e instanceof ve)){let r=this.doc.nodeAt(t);if(!r)throw new RangeError("No node at position "+t);e=e.isInSet(r.marks);if(!e)return this}this.step(new ii(t,e));return this}split(t,e=1,r){yi(this,t,e,r);return this}addMark(t,e,r){oi(this,t,e,r);return this}removeMark(t,e,r){ui(this,t,e,r);return this}clearIncompatible(t,e,r){fi(this,t,e,r);return this}}const Ki=Object.create(null);class Vi{constructor(t,e,r){this.$anchor=t;this.$head=e;this.ranges=r||[new Gi(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=Fe.empty){let r=e.content.lastChild,i=null;for(let t=0;t<e.openEnd;t++){i=r;r=r.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?Fe.empty:e);if(l==0)on(t,n,(r?r.isInline:i&&i.isTextblock)?-1:1)}}replaceWith(t,e){let r=t.steps.length,i=this.ranges;for(let n=0;n<i.length;n++){let{$from:s,$to:l}=i[n],o=t.mapping.slice(r);let u=o.map(s.pos),f=o.map(l.pos);if(n){t.deleteRange(u,f)}else{t.replaceRangeWith(u,f,e);on(t,r,e.isInline?-1:1)}}}static findFrom(t,e,r=false){let i=t.parent.inlineContent?new Qi(t):ln(t.node(0),t.parent,t.pos,t.index(),e,r);if(i)return i;for(let i=t.depth-1;i>=0;i--){let n=e<0?ln(t.node(0),t.node(i),t.before(i+1),t.index(i),e,r):ln(t.node(0),t.node(i),t.after(i+1),t.index(i)+1,e,r);if(n)return n}return null}static near(t,e=1){return this.findFrom(t,e)||this.findFrom(t,-e)||new nn(t.node(0))}static atStart(t){return ln(t,t,0,0,1)||new nn(t)}static atEnd(t){return ln(t,t,t.content.size,t.childCount,-1)||new nn(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let r=Ki[e.type];if(!r)throw new RangeError(`No selection type ${e.type} defined`);return r.fromJSON(t,e)}static jsonID(t,e){if(t in Ki)throw new RangeError("Duplicate use of selection JSON ID "+t);Ki[t]=e;e.prototype.jsonID=t;return e}getBookmark(){return Qi.between(this.$anchor,this.$head).getBookmark()}}Vi.prototype.visible=true;class Gi{constructor(t,e){this.$from=t;this.$to=e}}let Xi=false;function Yi(t){if(!Xi&&!t.parent.inlineContent){Xi=true;console["warn"]("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")")}}class Qi extends Vi{constructor(t,e=t){Yi(t);Yi(e);super(t,e)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,e){let r=t.resolve(e.map(this.head));if(!r.parent.inlineContent)return Vi.near(r);let i=t.resolve(e.map(this.anchor));return new Qi(i.parent.inlineContent?i:r,r)}replace(t,e=Fe.empty){super.replace(t,e);if(e==Fe.empty){let e=this.$from.marksAcross(this.$to);if(e)t.ensureMarks(e)}}eq(t){return t instanceof Qi&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new tn(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 Qi(t.resolve(e.anchor),t.resolve(e.head))}static create(t,e,r=e){let i=t.resolve(e);return new this(i,r==e?i:t.resolve(r))}static between(t,e,r){let i=t.pos-e.pos;if(!r||i)r=i>=0?1:-1;if(!e.parent.inlineContent){let t=Vi.findFrom(e,r,true)||Vi.findFrom(e,-r,true);if(t)e=t.$head;else return Vi.near(e,r)}if(!t.parent.inlineContent){if(i==0){t=e}else{t=(Vi.findFrom(t,-r,true)||Vi.findFrom(t,r,true)).$anchor;if(t.pos<e.pos!=i<0)t=e}}return new Qi(t,e)}}Vi.jsonID("text",Qi);class tn{constructor(t,e){this.anchor=t;this.head=e}map(t){return new tn(t.map(this.anchor),t.map(this.head))}resolve(t){return Qi.between(t.resolve(this.anchor),t.resolve(this.head))}}class en extends Vi{constructor(t){let e=t.nodeAfter;let r=t.node(0).resolve(t.pos+e.nodeSize);super(t,r);this.node=e}map(t,e){let{deleted:r,pos:i}=e.mapResult(this.anchor);let n=t.resolve(i);if(r)return Vi.near(n);return new en(n)}content(){return new Fe(ge.from(this.node),0,0)}eq(t){return t instanceof en&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new rn(this.anchor)}static fromJSON(t,e){if(typeof e.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new en(t.resolve(e.anchor))}static create(t,e){return new en(t.resolve(e))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==false}}en.prototype.visible=false;Vi.jsonID("node",en);class rn{constructor(t){this.anchor=t}map(t){let{deleted:e,pos:r}=t.mapResult(this.anchor);return e?new tn(r,r):new rn(r)}resolve(t){let e=t.resolve(this.anchor),r=e.nodeAfter;if(r&&en.isSelectable(r))return new en(e);return Vi.near(e)}}class nn extends Vi{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,e=Fe.empty){if(e==Fe.empty){t.delete(0,t.doc.content.size);let e=Vi.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 nn(t)}map(t){return new nn(t)}eq(t){return t instanceof nn}getBookmark(){return sn}}Vi.jsonID("all",nn);const sn={map(){return this},resolve(t){return new nn(t)}};function ln(t,e,r,i,n,s=false){if(e.inlineContent)return Qi.create(t,r);for(let l=i-(n>0?0:1);n>0?l<e.childCount:l>=0;l+=n){let i=e.child(l);if(!i.isAtom){let e=ln(t,i,r+n,n<0?i.childCount:0,n,s);if(e)return e}else if(!s&&en.isSelectable(i)){return en.create(t,r-(n<0?i.nodeSize:0))}r+=i.nodeSize*n}return null}function on(t,e,r){let i=t.steps.length-1;if(i<e)return;let n=t.steps[i];if(!(n instanceof ni||n instanceof si))return;let s=t.mapping.maps[i],l;s.forEach(((t,e,r,i)=>{if(l==null)l=i}));t.setSelection(Vi.near(t.doc.resolve(l),r))}const un=1,fn=2,hn=4;class an extends Zi{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|un)&~fn;this.storedMarks=null;return this}get selectionSet(){return(this.updated&un)>0}setStoredMarks(t){this.storedMarks=t;this.updated|=fn;return this}ensureMarks(t){if(!ve.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&fn)>0}addStep(t,e){super.addStep(t,e);this.updated=this.updated&~fn;this.storedMarks=null}setTime(t){this.time=t;return this}replaceSelection(t){this.selection.replace(this,t);return this}replaceSelectionWith(t,e=true){let r=this.selection;if(e)t=t.mark(this.storedMarks||(r.empty?r.$from.marks():r.$from.marksAcross(r.$to)||ve.none));r.replaceWith(this,t);return this}deleteSelection(){this.selection.replace(this);return this}insertText(t,e,r){let i=this.doc.type.schema;if(e==null){if(!t)return this.deleteSelection();return this.replaceSelectionWith(i.text(t),true)}else{if(r==null)r=e;r=r==null?e:r;if(!t)return this.deleteRange(e,r);let n=this.storedMarks;if(!n){let t=this.doc.resolve(e);n=r==e?t.marks():t.marksAcross(this.doc.resolve(r))}this.replaceRangeWith(e,r,i.text(t,n));if(!this.selection.empty)this.setSelection(Vi.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|=hn;return this}get scrolledIntoView(){return(this.updated&hn)>0}}function cn(t,e){return!e||!t?t:t.bind(e)}class dn{constructor(t,e,r){this.name=t;this.init=cn(e.init,r);this.apply=cn(e.apply,r)}}const pn=[new dn("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new dn("selection",{init(t,e){return t.selection||Vi.atStart(e.doc)},apply(t){return t.selection}}),new dn("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,r,i){return i.selection.$cursor?t.storedMarks:null}}),new dn("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class mn{constructor(t,e){this.schema=t;this.plugins=[];this.pluginsByKey=Object.create(null);this.fields=pn.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 dn(t.key,t.spec.state,t))}))}}class wn{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 r=0;r<this.config.plugins.length;r++)if(r!=e){let e=this.config.plugins[r];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],r=this.applyInner(t),i=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=i?i[s].n:0,u=i?i[s].state:this;let f=o<e.length&&l.spec.appendTransaction.call(l,o?e.slice(o):e,u,r);if(f&&r.filterTransaction(f,s)){f.setMeta("appendedTransaction",t);if(!i){i=[];for(let t=0;t<this.config.plugins.length;t++)i.push(t<s?{state:r,n:e.length}:{state:this,n:0})}e.push(f);r=r.applyInner(f);n=true}if(i)i[s]={state:r,n:e.length}}}if(!n)return{state:r,transactions:e}}}applyInner(t){if(!t.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let e=new wn(this.config),r=this.config.fields;for(let i=0;i<r.length;i++){let n=r[i];e[n.name]=n.apply(t,this[n.name],this,e)}return e}get tr(){return new an(this)}static create(t){let e=new mn(t.doc?t.doc.type.schema:t.schema,t.plugins);let r=new wn(e);for(let i=0;i<e.fields.length;i++)r[e.fields[i].name]=e.fields[i].init(t,r);return r}reconfigure(t){let e=new mn(this.schema,t.plugins);let r=e.fields,i=new wn(e);for(let e=0;e<r.length;e++){let n=r[e].name;i[n]=this.hasOwnProperty(n)?this[n]:r[e].init(t,i)}return i}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 r in t){if(r=="doc"||r=="selection")throw new RangeError("The JSON fields `doc` and `selection` are reserved");let i=t[r],n=i.spec.state;if(n&&n.toJSON)e[r]=n.toJSON.call(i,this[i.key])}return e}static fromJSON(t,e,r){if(!e)throw new RangeError("Invalid input for EditorState.fromJSON");if(!t.schema)throw new RangeError("Required config field 'schema' missing");let i=new mn(t.schema,t.plugins);let n=new wn(i);i.fields.forEach((i=>{if(i.name=="doc"){n.doc=Je.fromJSON(t.schema,e.doc)}else if(i.name=="selection"){n.selection=Vi.fromJSON(n.doc,e.selection)}else if(i.name=="storedMarks"){if(e.storedMarks)n.storedMarks=e.storedMarks.map(t.schema.markFromJSON)}else{if(r)for(let s in r){let l=r[s],o=l.spec.state;if(l.key==i.name&&o&&o.fromJSON&&Object.prototype.hasOwnProperty.call(e,s)){n[i.name]=o.fromJSON.call(l,t,e[s],n);return}}n[i.name]=i.init(t,n)}}));return n}}function gn(t,e,r){for(let i in t){let n=t[i];if(n instanceof Function)n=n.bind(e);else if(i=="handleDOMEvents")n=gn(n,e,{});r[i]=n}return r}class bn{constructor(t){this.spec=t;this.props={};if(t.props)gn(t.props,this,this.props);this.key=t.key?t.key.key:Dn("plugin")}getState(t){return t[this.key]}}const kn=Object.create(null);function Dn(t){if(t in kn)return t+"$"+ ++kn[t];kn[t]=0;return t+"$"}class vn{constructor(t="key"){this.key=Dn(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const yn=function(t){for(var e=0;;e++){t=t.previousSibling;if(!t)return e}};const Fn=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let En=null;const Mn=function(t,e,r){let i=En||(En=document.createRange());i.setEnd(t,r==null?t.nodeValue.length:r);i.setStart(t,e||0);return i};const xn=function(t,e,r,i){return r&&(Cn(t,e,r,i,-1)||Cn(t,e,r,i,1))};const An=/^(img|br|input|textarea|hr)$/i;function Cn(t,e,r,i,n){for(;;){if(t==r&&e==i)return true;if(e==(n<0?0:Sn(t))){let r=t.parentNode;if(!r||r.nodeType!=1||$n(t)||An.test(t.nodeName)||t.contentEditable=="false")return false;e=yn(t)+(n<0?0:1);t=r}else if(t.nodeType==1){t=t.childNodes[e+(n<0?-1:0)];if(t.contentEditable=="false")return false;e=n<0?Sn(t):0}else{return false}}}function Sn(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function On(t,e,r){for(let i=e==0,n=e==Sn(t);i||n;){if(t==r)return true;let e=yn(t);t=t.parentNode;if(!t)return false;i=i&&e==0;n=n&&e==Sn(t)}}function $n(t){let e;for(let r=t;r;r=r.parentNode)if(e=r.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 Bn(t,e){let r=document.createEvent("Event");r.initEvent("keydown",true,true);r.keyCode=t;r.key=r.code=e;return r}function Rn(t){let e=t.activeElement;while(e&&e.shadowRoot)e=e.shadowRoot.activeElement;return e}function jn(t,e,r){if(t.caretPositionFromPoint){try{let i=t.caretPositionFromPoint(e,r);if(i)return{node:i.offsetNode,offset:i.offset}}catch(t){}}if(t.caretRangeFromPoint){let i=t.caretRangeFromPoint(e,r);if(i)return{node:i.startContainer,offset:i.startOffset}}}const Nn=typeof navigator!="undefined"?navigator:null;const qn=typeof document!="undefined"?document:null;const zn=Nn&&Nn.userAgent||"";const Tn=/Edge\/(\d+)/.exec(zn);const In=/MSIE \d/.exec(zn);const Pn=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(zn);const Jn=!!(In||Pn||Tn);const Ln=In?document.documentMode:Pn?+Pn[1]:Tn?+Tn[1]:0;const Wn=!Jn&&/gecko\/(\d+)/i.test(zn);Wn&&+(/Firefox\/(\d+)/.exec(zn)||[0,0])[1];const Un=!Jn&&/Chrome\/(\d+)/.exec(zn);const Hn=!!Un;const Zn=Un?+Un[1]:0;const Kn=!Jn&&!!Nn&&/Apple Computer/.test(Nn.vendor);const Vn=Kn&&(/Mobile\/\w+/.test(zn)||!!Nn&&Nn.maxTouchPoints>2);const Gn=Vn||(Nn?/Mac/.test(Nn.platform):false);const Xn=Nn?/Win/.test(Nn.platform):false;const Yn=/Android \d/.test(zn);const Qn=!!qn&&"webkitFontSmoothing"in qn.documentElement.style;const ts=Qn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function es(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function rs(t,e){return typeof t=="number"?t:t[e]}function is(t){let e=t.getBoundingClientRect();let r=e.width/t.offsetWidth||1;let i=e.height/t.offsetHeight||1;return{left:e.left,right:e.left+t.clientWidth*r,top:e.top,bottom:e.top+t.clientHeight*i}}function ns(t,e,r){let i=t.someProp("scrollThreshold")||0,n=t.someProp("scrollMargin")||5;let s=t.dom.ownerDocument;for(let l=r||t.dom;;l=Fn(l)){if(!l)break;if(l.nodeType!=1)continue;let t=l;let r=t==s.body;let o=r?es(s):is(t);let u=0,f=0;if(e.top<o.top+rs(i,"top"))f=-(o.top-e.top+rs(n,"top"));else if(e.bottom>o.bottom-rs(i,"bottom"))f=e.bottom-e.top>o.bottom-o.top?e.top+rs(n,"top")-o.top:e.bottom-o.bottom+rs(n,"bottom");if(e.left<o.left+rs(i,"left"))u=-(o.left-e.left+rs(n,"left"));else if(e.right>o.right-rs(i,"right"))u=e.right-o.right+rs(n,"right");if(u||f){if(r){s.defaultView.scrollBy(u,f)}else{let r=t.scrollLeft,i=t.scrollTop;if(f)t.scrollTop+=f;if(u)t.scrollLeft+=u;let n=t.scrollLeft-r,s=t.scrollTop-i;e={left:e.left-n,top:e.top-s,right:e.right-n,bottom:e.bottom-s}}}if(r||/^(fixed|sticky)$/.test(getComputedStyle(l).position))break}}function ss(t){let e=t.dom.getBoundingClientRect(),r=Math.max(0,e.top);let i,n;for(let s=(e.left+e.right)/2,l=r+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>=r-20){i=e;n=o.top;break}}return{refDOM:i,refTop:n,stack:ls(t.dom)}}function ls(t){let e=[],r=t.ownerDocument;for(let i=t;i;i=Fn(i)){e.push({dom:i,top:i.scrollTop,left:i.scrollLeft});if(t==r)break}return e}function us({refDOM:t,refTop:e,stack:r}){let i=t?t.getBoundingClientRect().top:0;fs(r,i==0?0:i-e)}function fs(t,e){for(let r=0;r<t.length;r++){let{dom:i,top:n,left:s}=t[r];if(i.scrollTop!=n+e)i.scrollTop=n+e;if(i.scrollLeft!=s)i.scrollLeft=s}}let hs=null;function as(t){if(t.setActive)return t.setActive();if(hs)return t.focus(hs);let e=ls(t);t.focus(hs==null?{get preventScroll(){hs={preventScroll:true};return true}}:undefined);if(!hs){hs=false;fs(e,0)}}function cs(t,e){let r,i=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=Mn(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<i){r=h;i=t;n=t&&r.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(!r&&(e.left>=d.right&&e.top>=d.top||e.left>=d.left&&e.top>=d.bottom))s=a+1}}if(!r&&u){r=u;n=f;i=0}if(r&&r.nodeType==3)return ds(r,n);if(!r||i&&r.nodeType==1)return{node:t,offset:s};return cs(r,n)}function ds(t,e){let r=t.nodeValue.length;let i=document.createRange();for(let n=0;n<r;n++){i.setEnd(t,n+1);i.setStart(t,n);let r=vs(i,1);if(r.top==r.bottom)continue;if(ps(e,r))return{node:t,offset:n+(e.left>=(r.left+r.right)/2?1:0)}}return{node:t,offset:0}}function ps(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function ms(t,e){let r=t.parentNode;if(r&&/^li$/i.test(r.nodeName)&&e.left<t.getBoundingClientRect().left)return r;return t}function ws(t,e,r){let{node:i,offset:n}=cs(e,r),s=-1;if(i.nodeType==1&&!i.firstChild){let t=i.getBoundingClientRect();s=t.left!=t.right&&r.left>(t.left+t.right)/2?1:-1}return t.docView.posFromDOM(i,n,s)}function gs(t,e,r,i){let n=-1;for(let r=e,s=false;;){if(r==t.dom)break;let e=t.docView.nearestDesc(r,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>i.left||t.top>i.top)n=e.posBefore;else if(t.right<i.left||t.bottom<i.top)n=e.posAfter}if(!e.contentDOM&&n<0&&!e.node.isText){let r=e.node.isBlock?i.top<(t.top+t.bottom)/2:i.left<(t.left+t.right)/2;return r?e.posBefore:e.posAfter}}r=e.dom.parentNode}return n>-1?n:t.docView.posFromDOM(e,r,-1)}function bs(t,e,r){let i=t.childNodes.length;if(i&&r.top<r.bottom){for(let n=Math.max(0,Math.min(i-1,Math.floor(i*(e.top-r.top)/(r.bottom-r.top))-2)),s=n;;){let r=t.childNodes[s];if(r.nodeType==1){let t=r.getClientRects();for(let i=0;i<t.length;i++){let n=t[i];if(ps(e,n))return bs(r,e,n)}}if((s=(s+1)%i)==n)break}}return t}function ks(t,e){let r=t.dom.ownerDocument,i,n=0;let s=jn(r,e.left,e.top);if(s)({node:i,offset:n}=s);let l=(t.root.elementFromPoint?t.root:r).elementFromPoint(e.left,e.top);let o;if(!l||!t.dom.contains(l.nodeType!=1?l.parentNode:l)){let r=t.dom.getBoundingClientRect();if(!ps(e,r))return null;l=bs(t.dom,e,r);if(!l)return null}if(Kn){for(let t=l;i&&t;t=Fn(t))if(t.draggable)i=undefined}l=ms(l,e);if(i){if(Wn&&i.nodeType==1){n=Math.min(n,i.childNodes.length);if(n<i.childNodes.length){let t=i.childNodes[n],r;if(t.nodeName=="IMG"&&(r=t.getBoundingClientRect()).right<=e.left&&r.bottom>e.top)n++}}let r;if(Qn&&n&&i.nodeType==1&&(r=i.childNodes[n-1]).nodeType==1&&r.contentEditable=="false"&&r.getBoundingClientRect().top>=e.top)n--;if(i==t.dom&&n==i.childNodes.length-1&&i.lastChild.nodeType==1&&e.top>i.lastChild.getBoundingClientRect().bottom)o=t.state.doc.content.size;else if(n==0||i.nodeType!=1||i.childNodes[n-1].nodeName!="BR")o=gs(t,i,n,e)}if(o==null)o=ws(t,l,e);let u=t.docView.nearestDesc(l,true);return{pos:o,inside:u?u.posAtStart-u.border:-1}}function Ds(t){return t.top<t.bottom||t.left<t.right}function vs(t,e){let r=t.getClientRects();if(r.length){let t=r[e<0?0:r.length-1];if(Ds(t))return t}return Array.prototype.find.call(r,Ds)||t.getBoundingClientRect()}const ys=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function Fs(t,e,r){let{node:i,offset:n,atom:s}=t.docView.domFromPos(e,r<0?-1:1);let l=Qn||Wn;if(i.nodeType==3){if(l&&(ys.test(i.nodeValue)||(r<0?!n:n==i.nodeValue.length))){let t=vs(Mn(i,n,n),r);if(Wn&&n&&/\s/.test(i.nodeValue[n-1])&&n<i.nodeValue.length){let e=vs(Mn(i,n-1,n-1),-1);if(e.top==t.top){let r=vs(Mn(i,n,n+1),-1);if(r.top!=t.top)return Es(r,r.left<e.left)}}return t}else{let t=n,e=n,s=r<0?1:-1;if(r<0&&!n){e++;s=-1}else if(r>=0&&n==i.nodeValue.length){t--;s=1}else if(r<0){t--}else{e++}return Es(vs(Mn(i,t,e),s),s<0)}}let o=t.state.doc.resolve(e-(s||0));if(!o.parent.inlineContent){if(s==null&&n&&(r<0||n==Sn(i))){let t=i.childNodes[n-1];if(t.nodeType==1)return Ms(t.getBoundingClientRect(),false)}if(s==null&&n<Sn(i)){let t=i.childNodes[n];if(t.nodeType==1)return Ms(t.getBoundingClientRect(),true)}return Ms(i.getBoundingClientRect(),r>=0)}if(s==null&&n&&(r<0||n==Sn(i))){let t=i.childNodes[n-1];let e=t.nodeType==3?Mn(t,Sn(t)-(l?0:1)):t.nodeType==1&&(t.nodeName!="BR"||!t.nextSibling)?t:null;if(e)return Es(vs(e,1),false)}if(s==null&&n<Sn(i)){let t=i.childNodes[n];while(t.pmViewDesc&&t.pmViewDesc.ignoreForCoords)t=t.nextSibling;let e=!t?null:t.nodeType==3?Mn(t,0,l?0:1):t.nodeType==1?t:null;if(e)return Es(vs(e,-1),true)}return Es(vs(i.nodeType==3?Mn(i):i,-r),r>=0)}function Es(t,e){if(t.width==0)return t;let r=e?t.left:t.right;return{top:t.top,bottom:t.bottom,left:r,right:r}}function Ms(t,e){if(t.height==0)return t;let r=e?t.top:t.bottom;return{top:r,bottom:r,left:t.left,right:t.right}}function xs(t,e,r){let i=t.state,n=t.root.activeElement;if(i!=e)t.updateState(e);if(n!=t.dom)t.focus();try{return r()}finally{if(i!=e)t.updateState(i);if(n!=t.dom&&n)n.focus()}}function As(t,e,r){let i=e.selection;let n=r=="up"?i.$from:i.$to;return xs(t,e,(()=>{let{node:e}=t.docView.domFromPos(n.pos,r=="up"?-1:1);for(;;){let r=t.docView.nearestDesc(e,true);if(!r)break;if(r.node.isBlock){e=r.contentDOM||r.dom;break}e=r.dom.parentNode}let i=Fs(t,n.pos,1);for(let t=e.firstChild;t;t=t.nextSibling){let e;if(t.nodeType==1)e=t.getClientRects();else if(t.nodeType==3)e=Mn(t,0,t.nodeValue.length).getClientRects();else continue;for(let t=0;t<e.length;t++){let n=e[t];if(n.bottom>n.top+1&&(r=="up"?i.top-n.top>(n.bottom-i.top)*2:n.bottom-i.bottom>(i.bottom-n.top)*2))return false}}return true}))}const Cs=/[\u0590-\u08ac]/;function Ss(t,e,r){let{$head:i}=e.selection;if(!i.parent.isTextblock)return false;let n=i.parentOffset,s=!n,l=n==i.parent.content.size;let o=t.domSelection();if(!Cs.test(i.parent.textContent)||!o.modify)return r=="left"||r=="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",r,"character");let f=i.depth?t.docView.domAfterPos(i.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 Os=null;let $s=null;let _s=false;function Bs(t,e,r){if(Os==e&&$s==r)return _s;Os=e;$s=r;return _s=r=="up"||r=="down"?As(t,e,r):Ss(t,e,r)}const Rs=0,js=1,Ns=2,qs=3;class zs{constructor(t,e,r,i){this.parent=t;this.children=e;this.dom=r;this.contentDOM=i;this.dirty=Rs;r.pmViewDesc=this}matchesWidget(t){return false}matchesMark(t){return false}matchesNode(t,e,r){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,r=this.posAtStart;;e++){let i=this.children[e];if(i==t)return r;r+=i.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,r){if(this.contentDOM&&this.contentDOM.contains(t.nodeType==1?t:t.parentNode)){if(r<0){let r,i;if(t==this.contentDOM){r=t.childNodes[e-1]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;r=t.previousSibling}while(r&&!((i=r.pmViewDesc)&&i.parent==this))r=r.previousSibling;return r?this.posBeforeChild(i)+i.size:this.posAtStart}else{let r,i;if(t==this.contentDOM){r=t.childNodes[e]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;r=t.nextSibling}while(r&&!((i=r.pmViewDesc)&&i.parent==this))r=r.nextSibling;return r?this.posBeforeChild(i):this.posAtEnd}}let i;if(t==this.dom&&this.contentDOM){i=e>yn(this.contentDOM)}else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM)){i=t.compareDocumentPosition(this.contentDOM)&2}else if(this.dom.firstChild){if(e==0)for(let e=t;;e=e.parentNode){if(e==this.dom){i=false;break}if(e.previousSibling)break}if(i==null&&e==t.childNodes.length)for(let e=t;;e=e.parentNode){if(e==this.dom){i=true;break}if(e.nextSibling)break}}return(i==null?r>0:i)?this.posAtEnd:this.posAtStart}nearestDesc(t,e=false){for(let r=true,i=t;i;i=i.parentNode){let n=this.getDesc(i),s;if(n&&(!e||n.node)){if(r&&(s=n.nodeDOM)&&!(s.nodeType==1?s.contains(t.nodeType==1?t:t.parentNode):s==t))r=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,r){for(let i=t;i;i=i.parentNode){let n=this.getDesc(i);if(n)return n.localPosFromDOM(t,e,r)}return-1}descAt(t){for(let e=0,r=0;e<this.children.length;e++){let i=this.children[e],n=r+i.size;if(r==t&&n!=r){while(!i.border&&i.children.length)i=i.children[0];return i}if(t<n)return i.descAt(t-r-i.border);r=n}}domFromPos(t,e){if(!this.contentDOM)return{node:this.dom,offset:0,atom:t+1};let r=0,i=0;for(let e=0;r<this.children.length;r++){let n=this.children[r],s=e+n.size;if(s>t||n instanceof Us){i=t-e;break}e=s}if(i)return this.children[r].domFromPos(i-this.children[r].border,e);for(let t;r&&!(t=this.children[r-1]).size&&t instanceof Ts&&t.side>=0;r--){}if(e<=0){let t,i=true;for(;;r--,i=false){t=r?this.children[r-1]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&e&&i&&!t.border&&!t.domAtom)return t.domFromPos(t.size,e);return{node:this.contentDOM,offset:t?yn(t.dom)+1:0}}else{let t,i=true;for(;;r++,i=false){t=r<this.children.length?this.children[r]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&i&&!t.border&&!t.domAtom)return t.domFromPos(0,e);return{node:this.contentDOM,offset:t?yn(t.dom):this.contentDOM.childNodes.length}}}parseRange(t,e,r=0){if(this.children.length==0)return{node:this.contentDOM,from:t,to:e,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let i=-1,n=-1;for(let s=r,l=0;;l++){let r=this.children[l],o=s+r.size;if(i==-1&&t<=o){let n=s+r.border;if(t>=n&&e<=o-r.border&&r.node&&r.contentDOM&&this.contentDOM.contains(r.contentDOM))return r.parseRange(t,e,n);t=s;for(let e=l;e>0;e--){let r=this.children[e-1];if(r.size&&r.dom.parentNode==this.contentDOM&&!r.emptyChildAt(1)){i=yn(r.dom)+1;break}t-=r.size}if(i==-1)i=0}if(i>-1&&(o>e||l==this.children.length-1)){e=o;for(let t=l+1;t<this.children.length;t++){let r=this.children[t];if(r.size&&r.dom.parentNode==this.contentDOM&&!r.emptyChildAt(-1)){n=yn(r.dom);break}e+=r.size}if(n==-1)n=this.contentDOM.childNodes.length;break}s=o}return{node:this.contentDOM,from:t,to:e,fromOffset:i,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:r}=this.domFromPos(t,0);if(e.nodeType!=1||r==e.childNodes.length)throw new RangeError("No node after pos "+t);return e.childNodes[r]}setSelection(t,e,r,i=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,r,i);o=f}let l=this.domFromPos(t,t?-1:1);let o=e==t?l:this.domFromPos(e,e?-1:1);let u=r.getSelection();let f=false;if((Wn||Kn)&&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,r;e;e=e.parentNode){if(r=e.nextSibling){if(r.nodeName=="BR")l=o={node:r.parentNode,offset:yn(r)+1};break}let t=e.pmViewDesc;if(t&&t.node&&t.node.isBlock)break}}}else{let r=t.childNodes[e-1];f=r&&(r.nodeName=="BR"||r.contentEditable=="false")}}if(Wn&&u.focusNode&&u.focusNode!=o.node&&u.focusNode.nodeType==1){let t=u.focusNode.childNodes[u.focusOffset];if(t&&t.contentEditable=="false")i=true}if(!(i||f&&Kn)&&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 r=document.createRange();r.setEnd(o.node,o.offset);r.setStart(l.node,l.offset);u.removeAllRanges();u.addRange(r)}}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 r=0,i=0;i<this.children.length;i++){let n=this.children[i],s=r+n.size;if(r==s?t<=s&&e>=r:t<s&&e>r){let i=r+n.border,l=s-n.border;if(t>=i&&e<=l){this.dirty=t==r||e==s?Ns:js;if(t==i&&e==l&&(n.contentLost||n.dom.parentNode!=this.contentDOM))n.dirty=qs;else n.markDirty(t-i,e-i);return}else{n.dirty=n.dom==n.contentDOM&&n.dom.parentNode==this.contentDOM&&!n.children.length?Ns:qs}}r=s}this.dirty=Ns}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let r=t==1?Ns:js;if(e.dirty<r)e.dirty=r}}get domAtom(){return false}get ignoreForCoords(){return false}}class Ts extends zs{constructor(t,e,r,i){let n,s=e.type.toDOM;if(typeof s=="function")s=s(r,(()=>{if(!n)return i;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==Rs&&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 Is extends zs{constructor(t,e,r,i){super(t,[],e,null);this.textDOM=r;this.text=i}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 Ps extends zs{constructor(t,e,r,i){super(t,[],r,i);this.mark=e}static create(t,e,r,i){let n=i.nodeViews[e.type.name];let s=n&&n(e,i,r);if(!s||!s.dom)s=$r.renderSpec(document,e.type.spec.toDOM(e,r));return new Ps(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!=Rs){let t=this.parent;while(!t.node)t=t.parent;if(t.dirty<this.dirty)t.dirty=this.dirty;this.dirty=Rs}}slice(t,e,r){let i=Ps.create(this.parent,this.mark,true,r);let n=this.children,s=this.size;if(e<s)n=fl(n,e,s,r);if(t>0)n=fl(n,0,t,r);for(let t=0;t<n.length;t++)n[t].parent=i;i.children=n;return i}}class Js extends zs{constructor(t,e,r,i,n,s,l,o,u){super(t,[],n,s);this.node=e;this.outerDeco=r;this.innerDeco=i;this.nodeDOM=l}static create(t,e,r,i,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)}),r,i);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}=$r.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=Qs(f,r,e);if(u)return o=new Hs(t,e,r,i,f,h||null,a,u,n,s+1);else if(e.isText)return new Ws(t,e,r,i,f,a,n);else return new Js(t,e,r,i,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 r=this.children[e];if(this.dom.contains(r.dom.parentNode)){t.contentElement=r.dom.parentNode;break}}if(!t.contentElement)t.getContent=()=>ge.empty}return t}matchesNode(t,e,r){return this.dirty==Rs&&t.eq(this.node)&&tl(e,this.outerDeco)&&r.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(t,e){let r=this.node.inlineContent,i=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 rl(this,s&&s.node,t);sl(this.node,this.innerDeco,((e,n,s)=>{if(e.spec.marks)o.syncToMarks(e.spec.marks,r,t);else if(e.type.side>=0&&!s)o.syncToMarks(n==this.node.childCount?ve.none:this.node.child(n).marks,r,t);o.placeWidget(e,t,i)}),((e,s,u,f)=>{o.syncToMarks(e.marks,r,t);let h;if(o.findNodeMatch(e,s,u,f));else if(l&&t.state.selection.from>i&&t.state.selection.to<i+e.nodeSize&&(h=o.findIndexWithChild(n.node))>-1&&o.updateNodeAt(e,s,u,h,t));else if(o.updateNextNode(e,s,u,t,f,i));else{o.addNode(e,s,u,t,i)}i+=e.nodeSize}));o.syncToMarks([],r,t);if(this.node.isTextblock)o.addTextblockHacks();o.destroyRest();if(o.changed||this.dirty==Ns){if(s)this.protectLocalComposition(t,s);Zs(this.contentDOM,this.children,t);if(Vn)ll(this.dom)}}localCompositionInfo(t,e){let{from:r,to:i}=t.state.selection;if(!(t.state.selection instanceof Qi)||r<e||i>e+this.node.content.size)return null;let n=t.domSelectionRange();let s=ol(n.focusNode,n.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let t=s.nodeValue;let n=ul(this.node.content,t,r-e,i-e);return n<0?null:{node:s,pos:n,text:t}}else{return{node:s,pos:-1,text:""}}}protectLocalComposition(t,{node:e,pos:r,text:i}){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 Is(this,n,e,i);t.input.compositionNodes.push(s);this.children=fl(this.children,r,r+i.length,t,s)}update(t,e,r,i){if(this.dirty==qs||!t.sameMarkup(this.node))return false;this.updateInner(t,e,r,i);return true}updateInner(t,e,r,i){this.updateOuterDeco(e);this.node=t;this.innerDeco=r;if(this.contentDOM)this.updateChildren(i,this.posAtStart);this.dirty=Rs}updateOuterDeco(t){if(tl(t,this.outerDeco))return;let e=this.nodeDOM.nodeType!=1;let r=this.dom;this.dom=Xs(this.dom,this.nodeDOM,Gs(this.outerDeco,this.node,e),Gs(t,this.node,e));if(this.dom!=r){r.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 Ls(t,e,r,i,n){Qs(i,e,t);let s=new Js(undefined,t,e,r,i,i,i,n,0);if(s.contentDOM)s.updateChildren(n,0);return s}class Ws extends Js{constructor(t,e,r,i,n,s,l){super(t,e,r,i,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,r,i){if(this.dirty==qs||this.dirty!=Rs&&!this.inParent()||!t.sameMarkup(this.node))return false;this.updateOuterDeco(e);if((this.dirty!=Rs||t.text!=this.node.text)&&t.text!=this.nodeDOM.nodeValue){this.nodeDOM.nodeValue=t.text;if(i.trackWrites==this.nodeDOM)i.trackWrites=null}this.node=t;this.dirty=Rs;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,r){if(t==this.nodeDOM)return this.posAtStart+Math.min(e,this.node.text.length);return super.localPosFromDOM(t,e,r)}ignoreMutation(t){return t.type!="characterData"&&t.type!="selection"}slice(t,e,r){let i=this.node.cut(t,e),n=document.createTextNode(i.text);return new Ws(this.parent,i,this.outerDeco,this.innerDeco,n,n,r)}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 zs{parseRule(){return{ignore:true}}matchesHack(t){return this.dirty==Rs&&this.dom.nodeName==t}get domAtom(){return true}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Hs extends Js{constructor(t,e,r,i,n,s,l,o,u,f){super(t,e,r,i,n,s,l,u,f);this.spec=o}update(t,e,r,i){if(this.dirty==qs)return false;if(this.spec.update){let n=this.spec.update(t,e,r);if(n)this.updateInner(t,e,r,i);return n}else if(!this.contentDOM&&!t.isLeaf){return false}else{return super.update(t,e,r,i)}}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(t,e,r,i){this.spec.setSelection?this.spec.setSelection(t,e,r):super.setSelection(t,e,r,i)}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 Zs(t,e,r){let i=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!=i){i=el(i);n=true}i=i.nextSibling}else{n=true;t.insertBefore(o,i)}if(l instanceof Ps){let e=i?i.previousSibling:t.lastChild;Zs(l.contentDOM,l.children,r);i=e?e.nextSibling:t.firstChild}}while(i){i=el(i);n=true}if(n&&r.trackWrites==t)r.trackWrites=null}const Ks=function(t){if(t)this.nodeName=t};Ks.prototype=Object.create(null);const Vs=[new Ks];function Gs(t,e,r){if(t.length==0)return Vs;let i=r?Vs[0]:new Ks,n=[i];for(let s=0;s<t.length;s++){let l=t[s].type.attrs;if(!l)continue;if(l.nodeName)n.push(i=new Ks(l.nodeName));for(let t in l){let s=l[t];if(s==null)continue;if(r&&n.length==1)n.push(i=new Ks(e.isInline?"span":"div"));if(t=="class")i.class=(i.class?i.class+" ":"")+s;else if(t=="style")i.style=(i.style?i.style+";":"")+s;else if(t!="nodeName")i[t]=s}}return n}function Xs(t,e,r,i){if(r==Vs&&i==Vs)return e;let n=e;for(let e=0;e<i.length;e++){let s=i[e],l=r[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=Vs[0];n=e}}Ys(n,l||Vs[0],s)}return n}function Ys(t,e,r){for(let i in e)if(i!="class"&&i!="style"&&i!="nodeName"&&!(i in r))t.removeAttribute(i);for(let i in r)if(i!="class"&&i!="style"&&i!="nodeName"&&r[i]!=e[i])t.setAttribute(i,r[i]);if(e.class!=r.class){let i=e.class?e.class.split(" ").filter(Boolean):[];let n=r.class?r.class.split(" ").filter(Boolean):[];for(let e=0;e<i.length;e++)if(n.indexOf(i[e])==-1)t.classList.remove(i[e]);for(let e=0;e<n.length;e++)if(i.indexOf(n[e])==-1)t.classList.add(n[e]);if(t.classList.length==0)t.removeAttribute("class")}if(e.style!=r.style){if(e.style){let r=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g,i;while(i=r.exec(e.style))t.style.removeProperty(i[1])}if(r.style)t.style.cssText+=r.style}}function Qs(t,e,r){return Xs(t,t,Vs,Gs(e,r,t.nodeType!=1))}function tl(t,e){if(t.length!=e.length)return false;for(let r=0;r<t.length;r++)if(!t[r].type.eq(e[r].type))return false;return true}function el(t){let e=t.nextSibling;t.parentNode.removeChild(t);return e}class rl{constructor(t,e,r){this.lock=e;this.view=r;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 r=t;r<e;r++)this.top.children[r].destroy();this.top.children.splice(t,e-t);this.changed=true}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(t,e,r){let i=0,n=this.stack.length>>1;let s=Math.min(n,t.length);while(i<s&&(i==n-1?this.top:this.stack[i+1<<1]).matchesMark(t[i])&&t[i].type.spec.spanning!==false)i++;while(i<n){this.destroyRest();this.top.dirty=Rs;this.index=this.stack.pop();this.top=this.stack.pop();n--}while(n<t.length){this.stack.push(this.top,this.index+1);let i=-1;for(let e=this.index;e<Math.min(this.index+3,this.top.children.length);e++){let r=this.top.children[e];if(r.matchesMark(t[n])&&!this.isLocked(r.dom)){i=e;break}}if(i>-1){if(i>this.index){this.changed=true;this.destroyBetween(this.index,i)}this.top=this.top.children[this.index]}else{let i=Ps.create(this.top,t[n],e,r);this.top.children.splice(this.index,0,i);this.top=i;this.changed=true}this.index=0;n++}}findNodeMatch(t,e,r,i){let n=-1,s;if(i>=this.preMatch.index&&(s=this.preMatch.matches[i-this.preMatch.index]).parent==this.top&&s.matchesNode(t,e,r)){n=this.top.children.indexOf(s,this.index)}else{for(let i=this.index,s=Math.min(this.top.children.length,i+5);i<s;i++){let s=this.top.children[i];if(s.matchesNode(t,e,r)&&!this.preMatch.matched.has(s)){n=i;break}}}if(n<0)return false;this.destroyBetween(this.index,n);this.index++;return true}updateNodeAt(t,e,r,i,n){let s=this.top.children[i];if(s.dirty==qs&&s.dom==s.contentDOM)s.dirty=Ns;if(!s.update(t,e,r,n))return false;this.destroyBetween(this.index,i);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,r,i,n,s){for(let l=this.index;l<this.top.children.length;l++){let o=this.top.children[l];if(o instanceof Js){let u=this.preMatch.matched.get(o);if(u!=null&&u!=n)return false;let f=o.dom,h;let a=this.isLocked(f)&&!(t.isText&&o.node&&o.node.isText&&o.nodeDOM.nodeValue==t.text&&o.dirty!=qs&&tl(e,o.outerDeco));if(!a&&o.update(t,e,r,i)){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,r,i,s))){this.top.children[this.index]=h;if(h.contentDOM){h.dirty=Ns;h.updateChildren(i,s+1);h.dirty=Rs}this.changed=true;this.index++;return true}break}}return false}recreateWrapper(t,e,r,i,n,s){if(t.dirty||e.isAtom||!t.children.length||!t.node.content.eq(e.content))return null;let l=Js.create(this.top,e,r,i,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,r,i,n){let s=Js.create(this.top,t,e,r,i,n);if(s.contentDOM)s.updateChildren(i,n+1);this.top.children.splice(this.index++,0,s);this.changed=true}placeWidget(t,e,r){let i=this.index<this.top.children.length?this.top.children[this.index]:null;if(i&&i.matchesWidget(t)&&(t==i.widget||!i.widget.type.toDOM.parentNode)){this.index++}else{let i=new Ts(this.top,t,e,r);this.top.children.splice(this.index++,0,i);this.changed=true}}addTextblockHacks(){let t=this.top.children[this.index-1],e=this.top;while(t instanceof Ps){e=t;t=e.children[e.children.length-1]}if(!t||!(t instanceof Ws)||/\n$/.test(t.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(t.node.text)){if((Kn||Hn)&&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 r=document.createElement(t);if(t=="IMG"){r.className="ProseMirror-separator";r.alt=""}if(t=="BR")r.className="ProseMirror-trailingBreak";let i=new Us(this.top,[],r,null);if(e!=this.top)e.children.push(i);else e.children.splice(this.index++,0,i);this.changed=true}}isLocked(t){return this.lock&&(t==this.lock||t.nodeType==1&&t.contains(this.lock.parentNode))}}function il(t,e){let r=e,i=r.children.length;let n=t.childCount,s=new Map,l=[];t:while(n>0){let o;for(;;){if(i){let t=r.children[i-1];if(t instanceof Ps){r=t;i=t.children.length}else{o=t;i--;break}}else if(r==e){break t}else{i=r.parent.children.indexOf(r);r=r.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 nl(t,e){return t.type.side-e.type.side}function sl(t,e,r,i){let n=e.locals(t),s=0;if(n.length==0){for(let r=0;r<t.childCount;r++){let l=t.child(r);i(l,n,e.forChild(s,l),r);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(nl);for(let t=0;t<a.length;t++)r(a[t],f,!!u)}else{r(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();i(c,m,e.forChild(s,c),d);s=p}}function ll(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 ol(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=Sn(t)}else if(t.nodeType==1&&e<t.childNodes.length){t=t.childNodes[e];e=0}else{return null}}}function ul(t,e,r,i){for(let n=0,s=0;n<t.childCount&&s<=i;){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>=r){if(s>=i&&u.slice(i-e.length-o,i-o)==e)return i-e.length;let t=o<i?u.lastIndexOf(e,i-o-1):-1;if(t>=0&&t+e.length+o>=r)return o+t;if(r==i&&u.length>=i+e.length-o&&u.slice(i-o,i-o+e.length)==e)return i}}return-1}function fl(t,e,r,i,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>=r||h<=e){s.push(u)}else{if(f<e)s.push(u.slice(0,e-f,i));if(n){s.push(n);n=undefined}if(h>r)s.push(u.slice(r-f,u.size,i))}}return s}function hl(t,e=null){let r=t.domSelectionRange(),i=t.state.doc;if(!r.focusNode)return null;let n=t.docView.nearestDesc(r.focusNode),s=n&&n.size==0;let l=t.docView.posFromDOM(r.focusNode,r.focusOffset,1);if(l<0)return null;let o=i.resolve(l),u,f;if(_n(r)){u=o;while(n&&!n.node)n=n.parent;let t=n.node;if(n&&t.isAtom&&en.isSelectable(t)&&n.parent&&!(t.isInline&&On(r.focusNode,r.focusOffset,n.dom))){let t=n.posBefore;f=new en(l==t?o:i.resolve(t))}}else{let e=t.docView.posFromDOM(r.anchorNode,r.anchorOffset,1);if(e<0)return null;u=i.resolve(e)}if(!f){let r=e=="pointer"||t.state.selection.head<o.pos&&!s?1:-1;f=vl(t,u,o,r)}return f}function al(t){return t.editable?t.hasFocus():Fl(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function cl(t,e=false){let r=t.state.selection;kl(t,r);if(!al(t))return;if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&Hn){let e=t.domSelectionRange(),r=t.domObserver.currentSelection;if(e.anchorNode&&r.anchorNode&&xn(e.anchorNode,e.anchorOffset,r.anchorNode,r.anchorOffset)){t.input.mouseDown.delayedSelectionSync=true;t.domObserver.setCurSelection();return}}t.domObserver.disconnectSelection();if(t.cursorWrapper){bl(t)}else{let{anchor:i,head:n}=r,s,l;if(dl&&!(r instanceof Qi)){if(!r.$from.parent.inlineContent)s=pl(t,r.from);if(!r.empty&&!r.$from.parent.inlineContent)l=pl(t,r.to)}t.docView.setSelection(i,n,t.root,e);if(dl){if(s)wl(s);if(l)wl(l)}if(r.visible){t.dom.classList.remove("ProseMirror-hideselection")}else{t.dom.classList.add("ProseMirror-hideselection");if("onselectionchange"in document)gl(t)}}t.domObserver.setCurSelection();t.domObserver.connectSelection()}const dl=Kn||Hn&&Zn<63;function pl(t,e){let{node:r,offset:i}=t.docView.domFromPos(e,0);let n=i<r.childNodes.length?r.childNodes[i]:null;let s=i?r.childNodes[i-1]:null;if(Kn&&n&&n.contentEditable=="false")return ml(n);if((!n||n.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(n)return ml(n);else if(s)return ml(s)}}function ml(t){t.contentEditable="true";if(Kn&&t.draggable){t.draggable=false;t.wasDraggable=true}return t}function wl(t){t.contentEditable="false";if(t.wasDraggable){t.draggable=true;t.wasDraggable=null}}function gl(t){let e=t.dom.ownerDocument;e.removeEventListener("selectionchange",t.input.hideSelectionGuard);let r=t.domSelectionRange();let i=r.anchorNode,n=r.anchorOffset;e.addEventListener("selectionchange",t.input.hideSelectionGuard=()=>{if(r.anchorNode!=i||r.anchorOffset!=n){e.removeEventListener("selectionchange",t.input.hideSelectionGuard);setTimeout((()=>{if(!al(t)||t.state.selection.visible)t.dom.classList.remove("ProseMirror-hideselection")}),20)}})}function bl(t){let e=t.domSelection(),r=document.createRange();let i=t.cursorWrapper.dom,n=i.nodeName=="IMG";if(n)r.setEnd(i.parentNode,yn(i)+1);else r.setEnd(i,0);r.collapse(false);e.removeAllRanges();e.addRange(r);if(!n&&!t.state.selection.visible&&Jn&&Ln<=11){i.disabled=true;i.disabled=false}}function kl(t,e){if(e instanceof en){let r=t.docView.descAt(e.from);if(r!=t.lastSelectedViewDesc){Dl(t);if(r)r.selectNode();t.lastSelectedViewDesc=r}}else{Dl(t)}}function Dl(t){if(t.lastSelectedViewDesc){if(t.lastSelectedViewDesc.parent)t.lastSelectedViewDesc.deselectNode();t.lastSelectedViewDesc=undefined}}function vl(t,e,r,i){return t.someProp("createSelectionBetween",(i=>i(t,e,r)))||Qi.between(e,r,i)}function yl(t){if(t.editable&&!t.hasFocus())return false;return Fl(t)}function Fl(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 El(t){let e=t.docView.domFromPos(t.state.selection.anchor,0);let r=t.domSelectionRange();return xn(e.node,e.offset,r.anchorNode,r.anchorOffset)}function Ml(t,e){let{$anchor:r,$head:i}=t.selection;let n=e>0?r.max(i):r.min(i);let s=!n.parent.inlineContent?n:n.depth?t.doc.resolve(e>0?n.after():n.before()):null;return s&&Vi.findFrom(s,e)}function xl(t,e){t.dispatch(t.state.tr.setSelection(e).scrollIntoView());return true}function Al(t,e,r){let i=t.state.selection;if(i instanceof Qi){if(r.indexOf("s")>-1){let{$head:r}=i,n=r.textOffset?null:e<0?r.nodeBefore:r.nodeAfter;if(!n||n.isText||!n.isLeaf)return false;let s=t.state.doc.resolve(r.pos+n.nodeSize*(e<0?-1:1));return xl(t,new Qi(i.$anchor,s))}else if(!i.empty){return false}else if(t.endOfTextblock(e>0?"forward":"backward")){let r=Ml(t.state,e);if(r&&r instanceof en)return xl(t,r);return false}else if(!(Gn&&r.indexOf("m")>-1)){let r=i.$head,n=r.textOffset?null:e<0?r.nodeBefore:r.nodeAfter,s;if(!n||n.isText)return false;let l=e<0?r.pos-n.nodeSize:r.pos;if(!(n.isAtom||(s=t.docView.descAt(l))&&!s.contentDOM))return false;if(en.isSelectable(n)){return xl(t,new en(e<0?t.state.doc.resolve(r.pos-n.nodeSize):r))}else if(Qn){return xl(t,new Qi(t.state.doc.resolve(e<0?l:l+n.nodeSize)))}else{return false}}}else if(i instanceof en&&i.node.isInline){return xl(t,new Qi(e>0?i.$to:i.$from))}else{let r=Ml(t.state,e);if(r)return xl(t,r);return false}}function Cl(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Sl(t,e){let r=t.pmViewDesc;return r&&r.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function Ol(t,e){return e<0?$l(t):_l(t)}function $l(t){let e=t.domSelectionRange();let r=e.focusNode,i=e.focusOffset;if(!r)return;let n,s,l=false;if(Wn&&r.nodeType==1&&i<Cl(r)&&Sl(r.childNodes[i],-1))l=true;for(;;){if(i>0){if(r.nodeType!=1){break}else{let t=r.childNodes[i-1];if(Sl(t,-1)){n=r;s=--i}else if(t.nodeType==3){r=t;i=r.nodeValue.length}else break}}else if(Bl(r)){break}else{let e=r.previousSibling;while(e&&Sl(e,-1)){n=r.parentNode;s=yn(e);e=e.previousSibling}if(!e){r=r.parentNode;if(r==t.dom)break;i=0}else{r=e;i=Cl(r)}}}if(l)Nl(t,r,i);else if(n)Nl(t,n,s)}function _l(t){let e=t.domSelectionRange();let r=e.focusNode,i=e.focusOffset;if(!r)return;let n=Cl(r);let s,l;for(;;){if(i<n){if(r.nodeType!=1)break;let t=r.childNodes[i];if(Sl(t,1)){s=r;l=++i}else break}else if(Bl(r)){break}else{let e=r.nextSibling;while(e&&Sl(e,1)){s=e.parentNode;l=yn(e)+1;e=e.nextSibling}if(!e){r=r.parentNode;if(r==t.dom)break;i=n=0}else{r=e;i=0;n=Cl(r)}}}if(s)Nl(t,s,l)}function Bl(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Rl(t,e){while(t&&e==t.childNodes.length&&!$n(t)){e=yn(t)+1;t=t.parentNode}while(t&&e<t.childNodes.length){let r=t.childNodes[e];if(r.nodeType==3)return r;if(r.nodeType==1&&r.contentEditable=="false")break;t=r;e=0}}function jl(t,e){while(t&&!e&&!$n(t)){e=yn(t);t=t.parentNode}while(t&&e){let r=t.childNodes[e-1];if(r.nodeType==3)return r;if(r.nodeType==1&&r.contentEditable=="false")break;t=r;e=t.childNodes.length}}function Nl(t,e,r){if(e.nodeType!=3){let t,i;if(i=Rl(e,r)){e=i;r=0}else if(t=jl(e,r)){e=t;r=t.nodeValue.length}}let i=t.domSelection();if(_n(i)){let t=document.createRange();t.setEnd(e,r);t.setStart(e,r);i.removeAllRanges();i.addRange(t)}else if(i.extend){i.extend(e,r)}t.domObserver.setCurSelection();let{state:n}=t;setTimeout((()=>{if(t.state==n)cl(t)}),50)}function ql(t,e){let r=t.state.doc.resolve(e);if(!(Hn||Xn)&&r.parent.inlineContent){let i=t.coordsAtPos(e);if(e>r.start()){let r=t.coordsAtPos(e-1);let n=(r.top+r.bottom)/2;if(n>i.top&&n<i.bottom&&Math.abs(r.left-i.left)>1)return r.left<i.left?"ltr":"rtl"}if(e<r.end()){let r=t.coordsAtPos(e+1);let n=(r.top+r.bottom)/2;if(n>i.top&&n<i.bottom&&Math.abs(r.left-i.left)>1)return r.left>i.left?"ltr":"rtl"}}let i=getComputedStyle(t.dom).direction;return i=="rtl"?"rtl":"ltr"}function zl(t,e,r){let i=t.state.selection;if(i instanceof Qi&&!i.empty||r.indexOf("s")>-1)return false;if(Gn&&r.indexOf("m")>-1)return false;let{$from:n,$to:s}=i;if(!n.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let r=Ml(t.state,e);if(r&&r instanceof en)return xl(t,r)}if(!n.parent.inlineContent){let r=e<0?n:s;let l=i instanceof nn?Vi.near(r,e):Vi.findFrom(r,e);return l?xl(t,l):false}return false}function Tl(t,e){if(!(t.state.selection instanceof Qi))return true;let{$head:r,$anchor:i,empty:n}=t.state.selection;if(!r.sameParent(i))return true;if(!n)return false;if(t.endOfTextblock(e>0?"forward":"backward"))return true;let s=!r.textOffset&&(e<0?r.nodeBefore:r.nodeAfter);if(s&&!s.isText){let i=t.state.tr;if(e<0)i.delete(r.pos-s.nodeSize,r.pos);else i.delete(r.pos,r.pos+s.nodeSize);t.dispatch(i);return true}return false}function Il(t,e,r){t.domObserver.stop();e.contentEditable=r;t.domObserver.start()}function Pl(t){if(!Kn||t.state.selection.$head.parentOffset>0)return false;let{focusNode:e,focusOffset:r}=t.domSelectionRange();if(e&&e.nodeType==1&&r==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let r=e.firstChild;Il(t,r,"true");setTimeout((()=>Il(t,r,"false")),20)}return false}function Jl(t){let e="";if(t.ctrlKey)e+="c";if(t.metaKey)e+="m";if(t.altKey)e+="a";if(t.shiftKey)e+="s";return e}function Ll(t,e){let r=e.keyCode,i=Jl(e);if(r==8||Gn&&r==72&&i=="c"){return Tl(t,-1)||Ol(t,-1)}else if(r==46&&!e.shiftKey||Gn&&r==68&&i=="c"){return Tl(t,1)||Ol(t,1)}else if(r==13||r==27){return true}else if(r==37||Gn&&r==66&&i=="c"){let e=r==37?ql(t,t.state.selection.from)=="ltr"?-1:1:-1;return Al(t,e,i)||Ol(t,e)}else if(r==39||Gn&&r==70&&i=="c"){let e=r==39?ql(t,t.state.selection.from)=="ltr"?1:-1:1;return Al(t,e,i)||Ol(t,e)}else if(r==38||Gn&&r==80&&i=="c"){return zl(t,-1,i)||Ol(t,-1)}else if(r==40||Gn&&r==78&&i=="c"){return Pl(t)||zl(t,1,i)||Ol(t,1)}else if(i==(Gn?"m":"c")&&(r==66||r==73||r==89||r==90)){return true}return false}function Wl(t,e){t.someProp("transformCopied",(r=>{e=r(e,t)}));let r=[],{content:i,openStart:n,openEnd:s}=e;while(n>1&&s>1&&i.childCount==1&&i.firstChild.childCount==1){n--;s--;let t=i.firstChild;r.push(t.type.name,t.attrs!=t.type.defaultAttrs?t.attrs:null);i=t.content}let l=t.someProp("clipboardSerializer")||$r.fromSchema(t.state.schema);let o=eo(),u=o.createElement("div");u.appendChild(l.serializeFragment(i,{document:o}));let f=u.firstChild,h,a=0;while(f&&f.nodeType==1&&(h=Ql[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(r)}`);let c=t.someProp("clipboardTextSerializer",(r=>r(e,t)))||e.content.textBetween(0,e.content.size,"\n\n");return{dom:u,text:c}}function Ul(t,e,r,i,n){let s=n.parent.type.spec.code;let l,o;if(!r&&!e)return null;let u=e&&(i||s||!r);if(u){t.someProp("transformPastedText",(r=>{e=r(e,s||i,t)}));if(s)return e?new Fe(ge.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):Fe.empty;let r=t.someProp("clipboardTextParser",(r=>r(e,n,i,t)));if(r){o=r}else{let r=n.marks();let{schema:i}=t.state,s=$r.fromSchema(i);l=document.createElement("div");e.split(/(?:\r\n?|\n)+/).forEach((t=>{let e=l.appendChild(document.createElement("p"));if(t)e.appendChild(s.serializeNode(i.text(t,r)))}))}}else{t.someProp("transformPastedHTML",(e=>{r=e(r,t)}));l=ro(r);if(Qn)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")||gr.fromSchema(t.state.schema);o=e.parseSlice(l,{preserveWhitespace:!!(u||h),context:n,ruleFromNode(t){if(t.nodeName=="BR"&&!t.nextSibling&&t.parentNode&&!Hl.test(t.parentNode.nodeName))return{ignore:true};return null}})}if(h){o=no(Yl(o,+h[1],+h[2]),h[4])}else{o=Fe.maxOpen(Zl(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=Yl(o,t,e)}}t.someProp("transformPasted",(e=>{o=e(o,t)}));return o}const Hl=/^(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 Zl(t,e){if(t.childCount<2)return t;for(let r=e.depth;r>=0;r--){let i=e.node(r);let n=i.contentMatchAt(e.index(r));let s,l=[];t.forEach((t=>{if(!l)return;let e=n.findWrapping(t.type),r;if(!e)return l=null;if(r=l.length&&s.length&&Vl(e,s,t,l[l.length-1],0)){l[l.length-1]=r}else{if(l.length)l[l.length-1]=Gl(l[l.length-1],s.length);let r=Kl(t,e);l.push(r);n=n.matchType(r.type);s=e}}));if(l)return ge.from(l)}return t}function Kl(t,e,r=0){for(let i=e.length-1;i>=r;i--)t=e[i].create(null,ge.from(t));return t}function Vl(t,e,r,i,n){if(n<t.length&&n<e.length&&t[n]==e[n]){let s=Vl(t,e,r,i.lastChild,n+1);if(s)return i.copy(i.content.replaceChild(i.childCount-1,s));let l=i.contentMatchAt(i.childCount);if(l.matchType(n==t.length-1?r.type:t[n+1]))return i.copy(i.content.append(ge.from(Kl(r,t,n+1))))}}function Gl(t,e){if(e==0)return t;let r=t.content.replaceChild(t.childCount-1,Gl(t.lastChild,e-1));let i=t.contentMatchAt(t.childCount).fillBefore(ge.empty,true);return t.copy(r.append(i))}function Xl(t,e,r,i,n,s){let l=e<0?t.firstChild:t.lastChild,o=l.content;if(t.childCount>1)s=0;if(n<i-1)o=Xl(o,e,r,i,n+1,s);if(n>=r)o=e<0?l.contentMatchAt(0).fillBefore(o,s<=n).append(o):o.append(l.contentMatchAt(l.childCount).fillBefore(ge.empty,true));return t.replaceChild(e<0?0:t.childCount-1,l.copy(o))}function Yl(t,e,r){if(e<t.openStart)t=new Fe(Xl(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd);if(r<t.openEnd)t=new Fe(Xl(t.content,1,r,t.openEnd,0,0),t.openStart,r);return t}const Ql={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 to=null;function eo(){return to||(to=document.implementation.createHTMLDocument("title"))}function ro(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);if(e)t=t.slice(e[0].length);let r=eo().createElement("div");let i=/<([a-z][^>\s]+)/i.exec(t),n;if(n=i&&Ql[i[1].toLowerCase()])t=n.map((t=>"<"+t+">")).join("")+t+n.map((t=>"</"+t+">")).reverse().join("");r.innerHTML=t;if(n)for(let t=0;t<n.length;t++)r=r.querySelector(n[t])||r;return r}function io(t){let e=t.querySelectorAll(Hn?"span:not([class]):not([style])":"span.Apple-converted-space");for(let r=0;r<e.length;r++){let i=e[r];if(i.childNodes.length==1&&i.textContent==" "&&i.parentNode)i.parentNode.replaceChild(t.ownerDocument.createTextNode(" "),i)}}function no(t,e){if(!t.size)return t;let r=t.content.firstChild.type.schema,i;try{i=JSON.parse(e)}catch(e){return t}let{content:n,openStart:s,openEnd:l}=t;for(let t=i.length-2;t>=0;t-=2){let e=r.nodes[i[t]];if(!e||e.hasRequiredAttrs())break;n=ge.from(e.create(i[t+1],n));s++;l++}return new Fe(n,s,l)}const so={};const lo={};const oo={touchstart:true,touchmove:true};class uo{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 fo(t){for(let e in so){let r=so[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{if(mo(t,e)&&!po(t,e)&&(t.editable||!(e.type in lo)))r(t,e)},oo[e]?{passive:true}:undefined)}if(Kn)t.dom.addEventListener("input",(()=>null));co(t)}function ho(t,e){t.input.lastSelectionOrigin=e;t.input.lastSelectionTime=Date.now()}function ao(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 co(t){t.someProp("handleDOMEvents",(e=>{for(let r in e)if(!t.input.eventHandlers[r])t.dom.addEventListener(r,t.input.eventHandlers[r]=e=>po(t,e))}))}function po(t,e){return t.someProp("handleDOMEvents",(r=>{let i=r[e.type];return i?i(t,e)||e.defaultPrevented:false}))}function mo(t,e){if(!e.bubbles)return true;if(e.defaultPrevented)return false;for(let r=e.target;r!=t.dom;r=r.parentNode)if(!r||r.nodeType==11||r.pmViewDesc&&r.pmViewDesc.stopEvent(e))return false;return true}function wo(t,e){if(!po(t,e)&&so[e.type]&&(t.editable||!(e.type in lo)))so[e.type](t,e)}lo.keydown=(t,e)=>{let r=e;t.input.shiftKey=r.keyCode==16||r.shiftKey;if(Oo(t,r))return;t.input.lastKeyCode=r.keyCode;t.input.lastKeyCodeTime=Date.now();if(Yn&&Hn&&r.keyCode==13)return;if(r.keyCode!=229)t.domObserver.forceFlush();if(Vn&&r.keyCode==13&&!r.ctrlKey&&!r.altKey&&!r.metaKey){let e=Date.now();t.input.lastIOSEnter=e;t.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{if(t.input.lastIOSEnter==e){t.someProp("handleKeyDown",(e=>e(t,Bn(13,"Enter"))));t.input.lastIOSEnter=0}}),200)}else if(t.someProp("handleKeyDown",(e=>e(t,r)))||Ll(t,r)){r.preventDefault()}else{ho(t,"key")}};lo.keyup=(t,e)=>{if(e.keyCode==16)t.input.shiftKey=false};lo.keypress=(t,e)=>{let r=e;if(Oo(t,r)||!r.charCode||r.ctrlKey&&!r.altKey||Gn&&r.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,r)))){r.preventDefault();return}let i=t.state.selection;if(!(i instanceof Qi)||!i.$from.sameParent(i.$to)){let e=String.fromCharCode(r.charCode);if(!/[\r\n]/.test(e)&&!t.someProp("handleTextInput",(r=>r(t,i.$from.pos,i.$to.pos,e))))t.dispatch(t.state.tr.insertText(e).scrollIntoView());r.preventDefault()}};function go(t){return{left:t.clientX,top:t.clientY}}function bo(t,e){let r=e.x-t.clientX,i=e.y-t.clientY;return r*r+i*i<100}function ko(t,e,r,i,n){if(i==-1)return false;let s=t.state.doc.resolve(i);for(let i=s.depth+1;i>0;i--){if(t.someProp(e,(e=>i>s.depth?e(t,r,s.nodeAfter,s.before(i),n,true):e(t,r,s.node(i),s.before(i),n,false))))return true}return false}function Do(t,e,r){if(!t.focused)t.focus();let i=t.state.tr.setSelection(e);if(r=="pointer")i.setMeta("pointer",true);t.dispatch(i)}function vo(t,e){if(e==-1)return false;let r=t.state.doc.resolve(e),i=r.nodeAfter;if(i&&i.isAtom&&en.isSelectable(i)){Do(t,new en(r),"pointer");return true}return false}function yo(t,e){if(e==-1)return false;let r=t.state.selection,i,n;if(r instanceof en)i=r.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(en.isSelectable(e)){if(i&&r.$from.depth>0&&t>=r.$from.depth&&s.before(r.$from.depth+1)==r.$from.pos)n=s.before(r.$from.depth);else n=s.before(t);break}}if(n!=null){Do(t,en.create(t.state.doc,n),"pointer");return true}else{return false}}function Fo(t,e,r,i,n){return ko(t,"handleClickOn",e,r,i)||t.someProp("handleClick",(r=>r(t,e,i)))||(n?yo(t,r):vo(t,r))}function Eo(t,e,r,i){return ko(t,"handleDoubleClickOn",e,r,i)||t.someProp("handleDoubleClick",(r=>r(t,e,i)))}function Mo(t,e,r,i){return ko(t,"handleTripleClickOn",e,r,i)||t.someProp("handleTripleClick",(r=>r(t,e,i)))||xo(t,r,i)}function xo(t,e,r){if(r.button!=0)return false;let i=t.state.doc;if(e==-1){if(i.inlineContent){Do(t,Qi.create(i,0,i.content.size),"pointer");return true}return false}let n=i.resolve(e);for(let e=n.depth+1;e>0;e--){let r=e>n.depth?n.nodeAfter:n.node(e);let s=n.before(e);if(r.inlineContent)Do(t,Qi.create(i,s+1,s+1+r.content.size),"pointer");else if(en.isSelectable(r))Do(t,en.create(i,s),"pointer");else continue;return true}}function Ao(t){return jo(t)}const Co=Gn?"metaKey":"ctrlKey";so.mousedown=(t,e)=>{let r=e;t.input.shiftKey=r.shiftKey;let i=Ao(t);let n=Date.now(),s="singleClick";if(n-t.input.lastClick.time<500&&bo(r,t.input.lastClick)&&!r[Co]){if(t.input.lastClick.type=="singleClick")s="doubleClick";else if(t.input.lastClick.type=="doubleClick")s="tripleClick"}t.input.lastClick={time:n,x:r.clientX,y:r.clientY,type:s};let l=t.posAtCoords(go(r));if(!l)return;if(s=="singleClick"){if(t.input.mouseDown)t.input.mouseDown.done();t.input.mouseDown=new So(t,l,r,!!i)}else if((s=="doubleClick"?Eo:Mo)(t,l.pos,l.inside,r)){r.preventDefault()}else{ho(t,"pointer")}};class So{constructor(t,e,r,i){this.view=t;this.pos=e;this.event=r;this.flushed=i;this.delayedSelectionSync=false;this.mightDrag=null;this.startDoc=t.state.doc;this.selectNode=!!r[Co];this.allowDefault=r.shiftKey;let n,s;if(e.inside>-1){n=t.state.doc.nodeAt(e.inside);s=e.inside}else{let r=t.state.doc.resolve(e.pos);n=r.parent;s=r.depth?r.before():0}const l=i?null:r.target;const o=l?t.docView.nearestDesc(l,true):null;this.target=o?o.dom:null;let{selection:u}=t.state;if(r.button==0&&n.type.spec.draggable&&n.type.spec.selectable!==false||u instanceof en&&u.from<=s&&u.to>s)this.mightDrag={node:n,pos:s,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&Wn&&!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));ho(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((()=>cl(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(go(t));this.updateAllowDefault(t);if(this.allowDefault||!e){ho(this.view,"pointer")}else if(Fo(this.view,e.pos,e.inside,t,this.selectNode)){t.preventDefault()}else if(t.button==0&&(this.flushed||Kn&&this.mightDrag&&!this.mightDrag.node.isAtom||Hn&&!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)){Do(this.view,Vi.near(this.view.state.doc.resolve(e.pos)),"pointer");t.preventDefault()}else{ho(this.view,"pointer")}}move(t){this.updateAllowDefault(t);ho(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}}so.touchstart=t=>{t.input.lastTouch=Date.now();Ao(t);ho(t,"pointer")};so.touchmove=t=>{t.input.lastTouch=Date.now();ho(t,"pointer")};so.contextmenu=t=>Ao(t);function Oo(t,e){if(t.composing)return true;if(Kn&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500){t.input.compositionEndedAt=-2e8;return true}return false}const $o=Yn?5e3:-1;lo.compositionstart=lo.compositionupdate=t=>{if(!t.composing){t.domObserver.flush();let{state:e}=t,r=e.selection.$from;if(e.selection.empty&&(e.storedMarks||!r.textOffset&&r.parentOffset&&r.nodeBefore.marks.some((t=>t.type.spec.inclusive===false)))){t.markCursor=t.state.storedMarks||r.marks();jo(t,true);t.markCursor=null}else{jo(t);if(Wn&&e.selection.empty&&r.parentOffset&&!r.textOffset&&r.nodeBefore.marks.length){let e=t.domSelectionRange();for(let r=e.focusNode,i=e.focusOffset;r&&r.nodeType==1&&i!=0;){let e=i<0?r.lastChild:r.childNodes[i-1];if(!e)break;if(e.nodeType==3){t.domSelection().collapse(e,e.nodeValue.length);break}else{r=e;i=-1}}}}t.input.composing=true}_o(t,$o)};lo.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 Bo(t){if(t.composing){t.input.composing=false;t.input.compositionEndedAt=Ro()}while(t.input.compositionNodes.length>0)t.input.compositionNodes.pop().markParentsDirty()}function Ro(){let t=document.createEvent("Event");t.initEvent("event",true,true);return t.timeStamp}function jo(t,e=false){if(Yn&&t.domObserver.flushingSoon>=0)return;t.domObserver.forceFlush();Bo(t);if(e||t.docView&&t.docView.dirty){let e=hl(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 No(t,e){if(!t.dom.parentNode)return;let r=t.dom.parentNode.appendChild(document.createElement("div"));r.appendChild(e);r.style.cssText="position: fixed; left: -10000px; top: 10px";let i=getSelection(),n=document.createRange();n.selectNodeContents(e);t.dom.blur();i.removeAllRanges();i.addRange(n);setTimeout((()=>{if(r.parentNode)r.parentNode.removeChild(r);t.focus()}),50)}const qo=Jn&&Ln<15||Vn&&ts<604;so.copy=lo.cut=(t,e)=>{let r=e;let i=t.state.selection,n=r.type=="cut";if(i.empty)return;let s=qo?null:r.clipboardData;let l=i.content(),{dom:o,text:u}=Wl(t,l);if(s){r.preventDefault();s.clearData();s.setData("text/html",o.innerHTML);s.setData("text/plain",u)}else{No(t,o)}if(n)t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function zo(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 r=t.input.shiftKey||t.state.selection.$from.parent.type.spec.code;let i=t.dom.parentNode.appendChild(document.createElement(r?"textarea":"div"));if(!r)i.contentEditable="true";i.style.cssText="position: fixed; left: -10000px; top: 10px";i.focus();let n=t.input.shiftKey&&t.input.lastKeyCode!=45;setTimeout((()=>{t.focus();if(i.parentNode)i.parentNode.removeChild(i);if(r)Io(t,i.value,null,n,e);else Io(t,i.textContent,i.innerHTML,n,e)}),50)}function Io(t,e,r,i,n){let s=Ul(t,e,r,i,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,n,s||Fe.empty))))return true;if(!s)return false;let l=zo(s);let o=l?t.state.tr.replaceSelectionWith(l,i):t.state.tr.replaceSelection(s);t.dispatch(o.scrollIntoView().setMeta("paste",true).setMeta("uiEvent","paste"));return true}function Po(t){let e=t.getData("text/plain")||t.getData("Text");if(e)return e;let r=t.getData("text/uri-list");return r?r.replace(/\r?\n/g," "):""}lo.paste=(t,e)=>{let r=e;if(t.composing&&!Yn)return;let i=qo?null:r.clipboardData;let n=t.input.shiftKey&&t.input.lastKeyCode!=45;if(i&&Io(t,Po(i),i.getData("text/html"),n,r))r.preventDefault();else To(t,r)};class Jo{constructor(t,e,r){this.slice=t;this.move=e;this.node=r}}const Lo=Gn?"altKey":"ctrlKey";so.dragstart=(t,e)=>{let r=e;let i=t.input.mouseDown;if(i)i.done();if(!r.dataTransfer)return;let n=t.state.selection;let s=n.empty?null:t.posAtCoords(go(r));let l;if(s&&s.pos>=n.from&&s.pos<=(n instanceof en?n.to-1:n.to));else if(i&&i.mightDrag){l=en.create(t.state.doc,i.mightDrag.pos)}else if(r.target&&r.target.nodeType==1){let e=t.docView.nearestDesc(r.target,true);if(e&&e.node.type.spec.draggable&&e!=t.docView)l=en.create(t.state.doc,e.posBefore)}let o=(l||t.state.selection).content(),{dom:u,text:f}=Wl(t,o);r.dataTransfer.clearData();r.dataTransfer.setData(qo?"Text":"text/html",u.innerHTML);r.dataTransfer.effectAllowed="copyMove";if(!qo)r.dataTransfer.setData("text/plain",f);t.dragging=new Jo(o,!r[Lo],l)};so.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{if(t.dragging==e)t.dragging=null}),50)};lo.dragover=lo.dragenter=(t,e)=>e.preventDefault();lo.drop=(t,e)=>{let r=e;let i=t.dragging;t.dragging=null;if(!r.dataTransfer)return;let n=t.posAtCoords(go(r));if(!n)return;let s=t.state.doc.resolve(n.pos);let l=i&&i.slice;if(l){t.someProp("transformPasted",(e=>{l=e(l,t)}))}else{l=Ul(t,Po(r.dataTransfer),qo?null:r.dataTransfer.getData("text/html"),false,s)}let o=!!(i&&!r[Lo]);if(t.someProp("handleDrop",(e=>e(t,r,l||Fe.empty,o)))){r.preventDefault();return}if(!l)return;r.preventDefault();let u=l?Ci(t.state.doc,s.pos,l):s.pos;if(u==null)u=s.pos;let f=t.state.tr;if(o){let{node:t}=i;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&&en.isSelectable(l.content.firstChild)&&d.nodeAfter&&d.nodeAfter.sameMarkup(l.content.firstChild)){f.setSelection(new en(d))}else{let e=f.mapping.map(u);f.mapping.maps[f.mapping.maps.length-1].forEach(((t,r,i,n)=>e=n));f.setSelection(vl(t,d,f.doc.resolve(e)))}t.focus();t.dispatch(f.setMeta("uiEvent","drop"))};so.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()))cl(t)}),20)}};so.blur=(t,e)=>{let r=e;if(t.focused){t.domObserver.stop();t.dom.classList.remove("ProseMirror-focused");t.domObserver.start();if(r.relatedTarget&&t.dom.contains(r.relatedTarget))t.domObserver.currentSelection.clear();t.focused=false}};so.beforeinput=(t,e)=>{let r=e;if(Hn&&Yn&&r.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,Bn(8,"Backspace")))))return;let{$cursor:r}=t.state.selection;if(r&&r.pos>0)t.dispatch(t.state.tr.delete(r.pos-1,r.pos).scrollIntoView())}),50)}};for(let t in lo)so[t]=lo[t];function Wo(t,e){if(t==e)return true;for(let r in t)if(t[r]!==e[r])return false;for(let r in e)if(!(r in t))return false;return true}class Uo{constructor(t,e){this.toDOM=t;this.spec=e||Go;this.side=this.spec.side||0}map(t,e,r,i){let{pos:n,deleted:s}=t.mapResult(e.from+i,this.side<0?-1:1);return s?null:new Ko(n-r,n-r,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&&Wo(this.spec,t.spec))}destroy(t){if(this.spec.destroy)this.spec.destroy(t)}}class Ho{constructor(t,e){this.attrs=t;this.spec=e||Go}map(t,e,r,i){let n=t.map(e.from+i,this.spec.inclusiveStart?-1:1)-r;let s=t.map(e.to+i,this.spec.inclusiveEnd?1:-1)-r;return n>=s?null:new Ko(n,s,this)}valid(t,e){return e.from<e.to}eq(t){return this==t||t instanceof Ho&&Wo(this.attrs,t.attrs)&&Wo(this.spec,t.spec)}static is(t){return t.type instanceof Ho}destroy(){}}class Zo{constructor(t,e){this.attrs=t;this.spec=e||Go}map(t,e,r,i){let n=t.mapResult(e.from+i,1);if(n.deleted)return null;let s=t.mapResult(e.to+i,-1);if(s.deleted||s.pos<=n.pos)return null;return new Ko(n.pos-r,s.pos-r,this)}valid(t,e){let{index:r,offset:i}=t.content.findIndex(e.from),n;return i==e.from&&!(n=t.child(r)).isText&&i+n.nodeSize==e.to}eq(t){return this==t||t instanceof Zo&&Wo(this.attrs,t.attrs)&&Wo(this.spec,t.spec)}destroy(){}}class Ko{constructor(t,e,r){this.from=t;this.to=e;this.type=r}copy(t,e){return new Ko(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,r){return this.type.map(t,this,e,r)}static widget(t,e,r){return new Ko(t,t,new Uo(e,r))}static inline(t,e,r,i){return new Ko(t,e,new Ho(r,i))}static node(t,e,r,i){return new Ko(t,e,new Zo(r,i))}get spec(){return this.type.spec}get inline(){return this.type instanceof Ho}get widget(){return this.type instanceof Uo}}const Vo=[],Go={};class Xo{constructor(t,e){this.local=t.length?t:Vo;this.children=e.length?e:Vo}static create(t,e){return e.length?su(e,t,0,Go):Yo}find(t,e,r){let i=[];this.findInner(t==null?0:t,e==null?1e9:e,i,0,r);return i}findInner(t,e,r,i,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)))r.push(l.copy(l.from+i,l.to+i))}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,r,i+l,n)}}}map(t,e,r){if(this==Yo||t.maps.length==0)return this;return this.mapInner(t,e,0,0,r||Go)}mapInner(t,e,r,i,n){let s;for(let l=0;l<this.local.length;l++){let o=this.local[l].map(t,r,i);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 tu(this.children,s||[],t,e,r,i,n);else return s?new Xo(s.sort(lu),Vo):Yo}add(t,e){if(!e.length)return this;if(this==Yo)return Xo.create(t,e);return this.addInner(t,e,0)}addInner(t,e,r){let i,n=0;t.forEach(((t,s)=>{let l=s+r,o;if(!(o=iu(e,t,l)))return;if(!i)i=this.children.slice();while(n<i.length&&i[n]<s)n+=3;if(i[n]==s)i[n+2]=i[n+2].addInner(t,o,l+1);else i.splice(n,0,s,s+t.nodeSize,su(o,t,l+1,Go));n+=3}));let s=eu(n?nu(e):e,-r);for(let e=0;e<s.length;e++)if(!s[e].type.valid(t,s[e]))s.splice(e--,1);return new Xo(s.length?this.local.concat(s).sort(lu):this.local,i||this.children)}remove(t){if(t.length==0||this==Yo)return this;return this.removeInner(t,0)}removeInner(t,e){let r=this.children,i=this.local;for(let i=0;i<r.length;i+=3){let n;let s=r[i]+e,l=r[i+1]+e;for(let e=0,r;e<t.length;e++)if(r=t[e]){if(r.from>s&&r.to<l){t[e]=null;(n||(n=[])).push(r)}}if(!n)continue;if(r==this.children)r=this.children.slice();let o=r[i+2].removeInner(n,s+1);if(o!=Yo){r[i+2]=o}else{r.splice(i,3);i-=3}}if(i.length)for(let r=0,n;r<t.length;r++)if(n=t[r]){for(let t=0;t<i.length;t++)if(i[t].eq(n,e)){if(i==this.local)i=this.local.slice();i.splice(t--,1)}}if(r==this.children&&i==this.local)return this;return i.length||r.length?new Xo(i,r):Yo}forChild(t,e){if(this==Yo)return this;if(e.isLeaf)return Xo.empty;let r,i;for(let e=0;e<this.children.length;e+=3)if(this.children[e]>=t){if(this.children[e]==t)r=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 Ho){let t=Math.max(n,e.from)-n,r=Math.min(s,e.to)-n;if(t<r)(i||(i=[])).push(e.copy(t,r))}}if(i){let t=new Xo(i.sort(lu),Vo);return r?new Qo([t,r]):t}return r||Yo}eq(t){if(this==t)return true;if(!(t instanceof Xo)||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 ou(this.localsInner(t))}localsInner(t){if(this==Yo)return Vo;if(t.inlineContent||!this.local.some(Ho.is))return this.local;let e=[];for(let t=0;t<this.local.length;t++){if(!(this.local[t].type instanceof Ho))e.push(this.local[t])}return e}}Xo.empty=new Xo([],[]);Xo.removeOverlap=ou;const Yo=Xo.empty;class Qo{constructor(t){this.members=t}map(t,e){const r=this.members.map((r=>r.map(t,e,Go)));return Qo.from(r)}forChild(t,e){if(e.isLeaf)return Xo.empty;let r=[];for(let i=0;i<this.members.length;i++){let n=this.members[i].forChild(t,e);if(n==Yo)continue;if(n instanceof Qo)r=r.concat(n.members);else r.push(n)}return Qo.from(r)}eq(t){if(!(t instanceof Qo)||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,r=true;for(let i=0;i<this.members.length;i++){let n=this.members[i].localsInner(t);if(!n.length)continue;if(!e){e=n}else{if(r){e=e.slice();r=false}for(let t=0;t<n.length;t++)e.push(n[t])}}return e?ou(r?e:e.sort(lu)):Vo}static from(t){switch(t.length){case 0:return Yo;case 1:return t[0];default:return new Qo(t.every((t=>t instanceof Xo))?t:t.reduce(((t,e)=>t.concat(e instanceof Xo?e:e.members)),[]))}}}function tu(t,e,r,i,n,s,l){let o=t.slice();for(let t=0,e=s;t<r.maps.length;t++){let i=0;r.maps[t].forEach(((t,r,n,s)=>{let l=s-n-(r-t);for(let n=0;n<o.length;n+=3){let s=o[n+1];if(s<0||t>s+e-i)continue;let u=o[n]+e-i;if(r>=u){o[n+1]=t<=u?-2:-1}else if(t>=e&&l){o[n]+=l;o[n+1]+=l}}i+=l}));e=r.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=r.map(t[e]+s),h=f-n;if(h<0||h>=i.content.size){u=true;continue}let a=r.map(t[e+1]+s,-1),c=a-n;let{index:d,offset:p}=i.content.findIndex(h);let m=i.maybeChild(d);if(m&&p==h&&p+m.nodeSize==c){let i=o[e+2].mapInner(r,m,f+1,t[e]+s+1,l);if(i!=Yo){o[e]=h;o[e+1]=c;o[e+2]=i}else{o[e+1]=-2;u=true}}else{u=true}}if(u){let u=ru(o,t,e,r,n,s,l);let f=su(u,i,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 r=f.children[t];while(e<o.length&&o[e]<r)e+=3;o.splice(e,0,f.children[t],f.children[t+1],f.children[t+2])}}return new Xo(e.sort(lu),o)}function eu(t,e){if(!e||!t.length)return t;let r=[];for(let i=0;i<t.length;i++){let n=t[i];r.push(new Ko(n.from+e,n.to+e,n.type))}return r}function ru(t,e,r,i,n,s,l){function o(t,e){for(let s=0;s<t.local.length;s++){let o=t.local[s].map(i,n,e);if(o)r.push(o);else if(l.onRemove)l.onRemove(t.local[s].spec)}for(let r=0;r<t.children.length;r+=3)o(t.children[r+2],t.children[r]+e+1)}for(let r=0;r<t.length;r+=3)if(t[r+1]==-1)o(t[r+2],e[r]+s+1);return r}function iu(t,e,r){if(e.isLeaf)return null;let i=r+e.nodeSize,n=null;for(let e=0,s;e<t.length;e++){if((s=t[e])&&s.from>r&&s.to<i){(n||(n=[])).push(s);t[e]=null}}return n}function nu(t){let e=[];for(let r=0;r<t.length;r++)if(t[r]!=null)e.push(t[r]);return e}function su(t,e,r,i){let n=[],s=false;e.forEach(((e,l)=>{let o=iu(t,e,l+r);if(o){s=true;let t=su(o,e,r+l+1,i);if(t!=Yo)n.push(l,l+e.nodeSize,t)}}));let l=eu(s?nu(t):t,-r).sort(lu);for(let t=0;t<l.length;t++)if(!l[t].type.valid(e,l[t])){if(i.onRemove)i.onRemove(l[t].spec);l.splice(t--,1)}return l.length||n.length?new Xo(l,n):Yo}function lu(t,e){return t.from-e.from||t.to-e.to}function ou(t){let e=t;for(let r=0;r<e.length-1;r++){let i=e[r];if(i.from!=i.to)for(let n=r+1;n<e.length;n++){let s=e[n];if(s.from==i.from){if(s.to!=i.to){if(e==t)e=t.slice();e[n]=s.copy(s.from,i.to);uu(e,n+1,s.copy(i.to,s.to))}continue}else{if(s.from<i.to){if(e==t)e=t.slice();e[r]=i.copy(i.from,s.from);uu(e,n,i.copy(s.from,i.to))}break}}}return e}function uu(t,e,r){while(e<t.length&&lu(r,t[e])>0)e++;t.splice(e,0,r)}function fu(t){let e=[];t.someProp("decorations",(r=>{let i=r(t.state);if(i&&i!=Yo)e.push(i)}));if(t.cursorWrapper)e.push(Xo.create(t.state.doc,[t.cursorWrapper.deco]));return Qo.from(e)}const hu={childList:true,characterData:true,characterDataOldValue:true,attributes:true,attributeOldValue:true,subtree:true};const au=Jn&&Ln<=11;class cu{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 du{constructor(t,e){this.view=t;this.handleDOMChange=e;this.queue=[];this.flushingSoon=-1;this.observer=null;this.currentSelection=new cu;this.onCharData=null;this.suppressingSelectionUpdates=false;this.observer=window.MutationObserver&&new window.MutationObserver((t=>{for(let e=0;e<t.length;e++)this.queue.push(t[e]);if(Jn&&Ln<=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(au){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,hu)}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(!yl(this.view))return;if(this.suppressingSelectionUpdates)return cl(this.view);if(Jn&&Ln<=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,r;for(let r=t.focusNode;r;r=Fn(r))e.add(r);for(let i=t.anchorNode;i;i=Fn(i))if(e.has(i)){r=i;break}let i=r&&this.view.docView.nearestDesc(r);if(i&&i.ignoreMutation({type:"selection",target:r.nodeType==3?r.parentNode:r})){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 r=t.domSelectionRange();let i=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(r)&&yl(t)&&!this.ignoreSelectionChange(r);let n=-1,s=-1,l=false,o=[];if(t.editable){for(let t=0;t<e.length;t++){let r=this.registerMutation(e[t],o);if(r){n=n<0?r.from:Math.min(r.from,n);s=s<0?r.to:Math.max(r.to,s);if(r.typeOver)l=true}}}if(Wn&&o.length>1){let t=o.filter((t=>t.nodeName=="BR"));if(t.length==2){let e=t[0],r=t[1];if(e.parentNode&&e.parentNode.parentNode==r.parentNode)r.remove();else e.remove()}}let u=null;if(n<0&&i&&t.input.lastFocus>Date.now()-200&&Math.max(t.input.lastTouch,t.input.lastClick.time)<Date.now()-300&&_n(r)&&(u=hl(t))&&u.eq(Vi.near(t.state.doc.resolve(0),1))){t.input.lastFocus=0;cl(t);this.currentSelection.set(r);t.scrollToSelection()}else if(n>-1||i){if(n>-1){t.docView.markDirty(n,s);wu(t)}this.handleDOMChange(n,s,l,o);if(t.docView&&t.docView.dirty)t.updateState(t.state);else if(!this.currentSelection.eq(r))cl(t);this.currentSelection.set(r)}}registerMutation(t,e){if(e.indexOf(t.target)>-1)return null;let r=this.view.docView.nearestDesc(t.target);if(t.type=="attributes"&&(r==this.view.docView||t.attributeName=="contenteditable"||t.attributeName=="style"&&!t.oldValue&&!t.target.getAttribute("style")))return null;if(!r||r.ignoreMutation(t))return null;if(t.type=="childList"){for(let r=0;r<t.addedNodes.length;r++)e.push(t.addedNodes[r]);if(r.contentDOM&&r.contentDOM!=r.dom&&!r.contentDOM.contains(t.target))return{from:r.posBefore,to:r.posAfter};let i=t.previousSibling,n=t.nextSibling;if(Jn&&Ln<=11&&t.addedNodes.length){for(let e=0;e<t.addedNodes.length;e++){let{previousSibling:r,nextSibling:s}=t.addedNodes[e];if(!r||Array.prototype.indexOf.call(t.addedNodes,r)<0)i=r;if(!s||Array.prototype.indexOf.call(t.addedNodes,s)<0)n=s}}let s=i&&i.parentNode==t.target?yn(i)+1:0;let l=r.localPosFromDOM(t.target,s,-1);let o=n&&n.parentNode==t.target?yn(n):t.target.childNodes.length;let u=r.localPosFromDOM(t.target,o,1);return{from:l,to:u}}else if(t.type=="attributes"){return{from:r.posAtStart-r.border,to:r.posAtEnd+r.border}}else{return{from:r.posAtStart,to:r.posAtEnd,typeOver:t.target.nodeValue==t.oldValue}}}}let pu=new WeakMap;let mu=false;function wu(t){if(pu.has(t))return;pu.set(t,null);if(["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1){t.requiresGeckoHackNode=Wn;if(mu)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.");mu=true}}function gu(t){let e;function r(t){t.preventDefault();t.stopImmediatePropagation();e=t.getTargetRanges()[0]}t.dom.addEventListener("beforeinput",r,true);document.execCommand("indent");t.dom.removeEventListener("beforeinput",r,true);let i=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))[i,n,s,l]=[s,l,i,n];return{anchorNode:i,anchorOffset:n,focusNode:s,focusOffset:l}}function bu(t,e,r){let{node:i,fromOffset:n,toOffset:s,from:l,to:o}=t.docView.parseRange(e,r);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(Hn&&t.input.lastKeyCode===8){for(let t=s;t>n;t--){let e=i.childNodes[t-1],r=e.pmViewDesc;if(e.nodeName=="BR"&&!r){s=t;break}if(!r||r.size)break}}let a=t.state.doc;let c=t.someProp("domParser")||gr.fromSchema(t.state.schema);let d=a.resolve(l);let p=null,m=c.parse(i,{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:ku,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 ku(t){let e=t.pmViewDesc;if(e){return e.parseRule()}else if(t.nodeName=="BR"&&t.parentNode){if(Kn&&/^(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||Kn&&/^(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 Du=/^(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 vu(t,e,r,i,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 r=hl(t,e);if(r&&!t.state.selection.eq(r)){if(Hn&&Yn&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",(e=>e(t,Bn(13,"Enter")))))return;let i=t.state.tr.setSelection(r);if(e=="pointer")i.setMeta("pointer",true);else if(e=="key")i.scrollIntoView();if(s)i.setMeta("composition",s);t.dispatch(i)}return}let l=t.state.doc.resolve(e);let o=l.sharedDepth(r);e=l.before(o+1);r=t.state.doc.resolve(r).after(o+1);let u=t.state.selection;let f=bu(t,e,r);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((Vn&&t.input.lastIOSEnter>Date.now()-225||Yn)&&n.some((t=>t.nodeType==1&&!Du.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,Bn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(!p){if(i&&u instanceof Qi&&!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=yu(t,t.state.doc,f.sel);if(e&&!e.eq(t.state.selection)){let r=t.state.tr.setSelection(e);if(s)r.setMeta("composition",s);t.dispatch(r)}}return}}if(Hn&&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 Qi){if(p.start>t.state.selection.from&&p.start<=t.state.selection.from+2&&t.state.selection.from>=f.from){p.start=t.state.selection.from}else if(p.endA<t.state.selection.to&&p.endA>=t.state.selection.to-2&&t.state.selection.to<=f.to){p.endB+=t.state.selection.to-p.endA;p.endA=t.state.selection.to}}if(Jn&&Ln<=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((Vn&&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=Vi.findFrom(f.doc.resolve(m.pos+1),1,true))&&k.head==w.pos)&&t.someProp("handleKeyDown",(e=>e(t,Bn(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&Eu(h,p.start,p.endA,m,w)&&t.someProp("handleKeyDown",(e=>e(t,Bn(8,"Backspace"))))){if(Yn&&Hn)t.domObserver.suppressSelectionUpdates();return}if(Hn&&Yn&&p.endB==p.start)t.input.lastAndroidDelete=Date.now();if(Yn&&!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,Bn(13,"Enter"))}))}),20)}let D=p.start,v=p.endA;let y,F,E;if(b){if(m.pos==w.pos){if(Jn&&Ln<=11&&m.parentOffset==0){t.domObserver.suppressSelectionUpdates();setTimeout((()=>cl(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=Fu(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",(r=>r(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=yu(t,y.doc,f.sel);if(e&&!(Hn&&Yn&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(e.head==D||e.head==y.mapping.map(v)-1)||Jn&&e.empty&&e.head==D))y.setSelection(e)}if(F)y.ensureMarks(F);if(s)y.setMeta("composition",s);t.dispatch(y.scrollIntoView())}function yu(t,e,r){if(Math.max(r.anchor,r.head)>e.content.size)return null;return vl(t,e.resolve(r.anchor),e.resolve(r.head))}function Fu(t,e){let r=t.firstChild.marks,i=e.firstChild.marks;let n=r,s=i,l,o,u;for(let t=0;t<i.length;t++)n=i[t].removeFromSet(n);for(let t=0;t<r.length;t++)s=r[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(ge.from(f).eq(t))return{mark:o,type:l}}function Eu(t,e,r,i,n){if(!i.parent.isTextblock||r-e<=n.pos-i.pos||Mu(i,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(Mu(s,true,true));if(!l.parent.isTextblock||l.pos>r||Mu(l,true,false)<r)return false;return i.parent.content.cut(i.parentOffset).eq(l.parent.content)}function Mu(t,e,r){let i=t.depth,n=e?t.end():t.pos;while(i>0&&(e||t.indexAfter(i)==t.node(i).childCount)){i--;n++;e=false}if(r){let e=t.node(i).maybeChild(t.indexAfter(i));while(e&&!e.isLeaf){e=e.firstChild;n++}}return n}function xu(t,e,r,i,n){let s=t.findDiffStart(e,r);if(s==null)return null;let{a:l,b:o}=t.findDiffEnd(e,r+t.size,r+e.size);if(n=="end"){let t=Math.max(0,s-Math.min(l,o));i-=l+t-s}if(l<s&&t.size<e.size){let t=i<=s&&i>=l?s-i:0;s-=t;if(s&&s<e.size&&Au(e.textBetween(s-1,s+1)))s+=t?1:-1;o=s+(o-l);l=s}else if(o<s){let e=i<=s&&i>=o?s-i:0;s-=e;if(s&&s<t.size&&Au(t.textBetween(s-1,s+1)))s+=e?1:-1;l=s+(l-o);o=s}return{start:s,endA:l,endB:o}}function Au(t){if(t.length!=2)return false;let e=t.charCodeAt(0),r=t.charCodeAt(1);return e>=56320&&e<=57343&&r>=55296&&r<=56319}class Cu{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 uo;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=$u(this);Ou(this);this.nodeViews=Bu(this);this.docView=Ls(this.state.doc,Su(this),fu(this),this.dom,this);this.domObserver=new du(this,((t,e,r,i)=>vu(this,t,e,r,i)));this.domObserver.start();fo(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)co(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 r in t)e[r]=t[r];this.update(e)}updateState(t){this.updateStateInner(t,this._props)}updateStateInner(t,e){var r;let i=this.state,n=false,s=false;if(t.storedMarks&&this.composing){Bo(this);s=true}this.state=t;let l=i.plugins!=t.plugins||this._props.plugins!=e.plugins;if(l||this._props.plugins!=e.plugins||this._props.nodeViews!=e.nodeViews){let t=Bu(this);if(Ru(t,this.nodeViews)){this.nodeViews=t;n=true}}if(l||e.handleDOMEvents!=this._props.handleDOMEvents){co(this)}this.editable=$u(this);Ou(this);let o=fu(this),u=Su(this);let f=i.plugins!=t.plugins&&!i.doc.eq(t.doc)?"reset":t.scrollToSelection>i.scrollToSelection?"to selection":"preserve";let h=n||!this.docView.matchesNode(t.doc,u,o);if(h||!t.selection.eq(i.selection))s=true;let a=f=="preserve"&&s&&this.dom.style.overflowAnchor==null&&ss(this);if(s){this.domObserver.stop();let e=h&&(Jn||Hn)&&!this.composing&&!i.selection.empty&&!t.selection.empty&&_u(i.selection,t.selection);if(h){let r=Hn?this.trackWrites=this.domSelectionRange().focusNode:null;if(n||!this.docView.update(t.doc,u,o,this)){this.docView.updateOuterDeco([]);this.docView.destroy();this.docView=Ls(t.doc,u,o,this.dom,this)}if(r&&!this.trackWrites)e=true}if(e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&El(this))){cl(this,e)}else{kl(this,t.selection);this.domObserver.setCurSelection()}this.domObserver.start()}this.updatePluginViews(i);if(((r=this.dragging)===null||r===void 0?void 0:r.node)&&!i.doc.eq(t.doc))this.updateDraggedNode(this.dragging,i);if(f=="reset"){this.dom.scrollTop=0}else if(f=="to selection"){this.scrollToSelection()}else if(a){us(a)}}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof en){let e=this.docView.domAfterPos(this.state.selection.from);if(e.nodeType==1)ns(this,e.getBoundingClientRect(),t)}else{ns(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 r=this.pluginViews[e];if(r.update)r.update(this,t)}}}updateDraggedNode(t,e){let r=t.node,i=-1;if(this.state.doc.nodeAt(r.from)==r.node){i=r.from}else{let t=r.from+(this.state.doc.content.size-e.doc.content.size);let n=t>0&&this.state.doc.nodeAt(t);if(n==r.node)i=t}this.dragging=new Jo(t.slice,t.move,i<0?undefined:en.create(this.state.doc,i))}someProp(t,e){let r=this._props&&this._props[t],i;if(r!=null&&(i=e?e(r):r))return i;for(let r=0;r<this.directPlugins.length;r++){let n=this.directPlugins[r].props[t];if(n!=null&&(i=e?e(n):n))return i}let n=this.state.plugins;if(n)for(let r=0;r<n.length;r++){let s=n[r].props[t];if(s!=null&&(i=e?e(s):s))return i}}hasFocus(){if(Jn){let t=this.root.activeElement;if(t==this.dom)return true;if(!t||!this.dom.contains(t))return false;while(t&&this.dom!=t&&this.dom.contains(t)){if(t.contentEditable=="false")return false;t=t.parentElement}return true}return this.root.activeElement==this.dom}focus(){this.domObserver.stop();if(this.editable)as(this.dom);cl(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 ks(this,t)}coordsAtPos(t,e=1){return Fs(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,r=-1){let i=this.docView.posFromDOM(t,e,r);if(i==null)throw new RangeError("DOM position not inside the editor");return i}endOfTextblock(t,e){return Bs(this,e||this.state,t)}pasteHTML(t,e){return Io(this,"",t,false,e||new ClipboardEvent("paste"))}pasteText(t,e){return Io(this,t,null,true,e||new ClipboardEvent("paste"))}destroy(){if(!this.docView)return;ao(this);this.destroyPluginViews();if(this.mounted){this.docView.update(this.state.doc,[],fu(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 wo(this,t)}dispatch(t){let e=this._props.dispatchTransaction;if(e)e.call(this,t);else this.updateState(this.state.apply(t))}domSelectionRange(){return Kn&&this.root.nodeType===11&&Rn(this.dom.ownerDocument)==this.dom?gu(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function Su(t){let e=Object.create(null);e.class="ProseMirror";e.contenteditable=String(t.editable);t.someProp("attributes",(r=>{if(typeof r=="function")r=r(t.state);if(r)for(let t in r){if(t=="class")e.class+=" "+r[t];else if(t=="style")e.style=(e.style?e.style+";":"")+r[t];else if(!e[t]&&t!="contenteditable"&&t!="nodeName")e[t]=String(r[t])}}));if(!e.translate)e.translate="no";return[Ko.node(0,t.state.doc.content.size,e)]}function Ou(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:Ko.widget(t.state.selection.head,e,{raw:true,marks:t.markCursor})}}else{t.cursorWrapper=null}}function $u(t){return!t.someProp("editable",(e=>e(t.state)===false))}function _u(t,e){let r=Math.min(t.$anchor.sharedDepth(t.head),e.$anchor.sharedDepth(e.head));return t.$anchor.start(r)!=e.$anchor.start(r)}function Bu(t){let e=Object.create(null);function r(t){for(let r in t)if(!Object.prototype.hasOwnProperty.call(e,r))e[r]=t[r]}t.someProp("nodeViews",r);t.someProp("markViews",r);return e}function Ru(t,e){let r=0,i=0;for(let i in t){if(t[i]!=e[i])return true;r++}for(let t in e)i++;return r!=i}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 Nu=["p",0],qu=["blockquote",0],zu=["hr"],Tu=["pre",["code",0]],Iu=["br"];const Pu={doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return Nu}},blockquote:{content:"block+",group:"block",defining:true,parseDOM:[{tag:"blockquote"}],toDOM(){return qu}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return zu}},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:r,title:i}=t.attrs;return["img",{src:e,alt:r,title:i}]}},hard_break:{inline:true,group:"inline",selectable:false,parseDOM:[{tag:"br"}],toDOM(){return Iu}}};const Ju=["em",0],Lu=["strong",0],Wu=["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:r}=t.attrs;return["a",{href:e,title:r},0]}},em:{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"},{style:"font-style=normal",clearMark:t=>t.type.name=="em"}],toDOM(){return Ju}},strong:{parseDOM:[{tag:"strong"},{tag:"b",getAttrs:t=>t.style.fontWeight!="normal"&&null},{style:"font-weight=400",clearMark:t=>t.type.name=="strong"},{style:"font-weight",getAttrs:t=>/^(bold(er)?|[5-9]\d{2,})$/.test(t)&&null}],toDOM(){return Lu}},code:{parseDOM:[{tag:"code"}],toDOM(){return Wu}}};const Hu=new dr({nodes:Pu,marks:Uu});const Zu=["ol",0],Ku=["ul",0],Vu=["li",0];const Gu={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?Zu:["ol",{start:t.attrs.order},0]}};const Xu={parseDOM:[{tag:"ul"}],toDOM(){return Ku}};const Yu={parseDOM:[{tag:"li"}],toDOM(){return Vu},defining:true};function Qu(t,e){let r={};for(let e in t)r[e]=t[e];for(let t in e)r[t]=e[t];return r}function tf(t,e,r){return t.append({ordered_list:Qu(Gu,{content:"list_item+",group:r}),bullet_list:Qu(Xu,{content:"list_item+",group:r}),list_item:Qu(Yu,{content:e})})}function ef(t,e=null){return function(r,i){let{$from:n,$to:s}=r.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=r.doc.resolve(l.start-2);u=new Ie(t,t,l.depth);if(l.endIndex<l.parent.childCount)l=new Ie(n,r.doc.resolve(s.end(l.depth)),l.depth);o=true}let f=di(u,t,e,l);if(!f)return false;if(i)i(rf(r.tr,l,f,o,t).scrollIntoView());return true}}function rf(t,e,r,i,n){let s=ge.empty;for(let t=r.length-1;t>=0;t--)s=ge.from(r[t].type.create(r[t].attrs,s));t.step(new si(e.start-(i?2:0),e.end,e.start,e.end,new Fe(s,0,0),r.length,true));let l=0;for(let t=0;t<r.length;t++)if(r[t].type==n)l=t+1;let o=r.length-l;let u=e.start+r.length-(i?2:0),f=e.parent;for(let r=e.startIndex,i=e.endIndex,n=true;r<i;r++,n=false){if(!n&&vi(t.doc,u,o)){t.split(u,o);u+=2*o}u+=f.child(r).nodeSize}return t}function nf(t,e){return function(r,i){let{$from:n,$to:s,node:l}=r.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(i){let e=ge.empty;let s=n.index(-1)?1:n.index(-2)?2:3;for(let t=n.depth-s;t>=n.depth-3;t--)e=ge.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(ge.from(t.createAndFill()));let o=n.before(n.depth-(s-1));let u=r.tr.replace(o,n.after(-l),new Fe(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(Vi.near(u.doc.resolve(f)));i(u.scrollIntoView())}return true}let u=s.pos==n.end()?o.contentMatchAt(0).defaultType:null;let f=r.tr.delete(n.pos,s.pos);let h=u?[e?{type:t,attrs:e}:null,{type:u}]:undefined;if(!vi(f.doc,n.pos,2,h))return false;if(i)i(f.split(n.pos,2,h).scrollIntoView());return true}}function sf(t){return function(e,r){let{$from:i,$to:n}=e.selection;let s=i.blockRange(n,(e=>e.childCount>0&&e.firstChild.type==t));if(!s)return false;if(!r)return true;if(i.node(s.depth-1).type==t)return lf(e,r,t,s);else return of(e,r,s)}}function lf(t,e,r,i){let n=t.tr,s=i.end,l=i.$to.end(i.depth);if(s<l){n.step(new si(s-1,l,s,l,new Fe(ge.from(r.create(null,i.parent.copy())),1,0),1,true));i=new Ie(n.doc.resolve(i.$from.pos),n.doc.resolve(l),i.depth)}const o=ai(i);if(o==null)return false;n.lift(i,o);let u=n.mapping.map(s,-1)-1;if(Fi(n.doc,u))n.join(u);e(n.scrollIntoView());return true}function of(t,e,r){let i=t.tr,n=r.parent;for(let t=r.end,e=r.endIndex-1,s=r.startIndex;e>s;e--){t-=n.child(e).nodeSize;i.delete(t-1,t+1)}let s=i.doc.resolve(r.start),l=s.nodeAfter;if(i.mapping.map(r.end)!=r.start+s.nodeAfter.nodeSize)return false;let o=r.startIndex==0,u=r.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?ge.empty:ge.from(n))))return false;let a=s.pos,c=a+l.nodeSize;i.step(new si(a-(o?1:0),c+(u?1:0),a+1,c-1,new Fe((o?ge.empty:ge.from(n.copy(ge.empty))).append(u?ge.empty:ge.from(n.copy(ge.empty))),o?0:1,u?0:1),o?0:1));e(i.scrollIntoView());return true}function uf(t){return function(e,r){let{$from:i,$to:n}=e.selection;let s=i.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(r){let i=u.lastChild&&u.lastChild.type==o.type;let n=ge.from(i?t.create():null);let l=new Fe(ge.from(t.create(null,ge.from(o.type.create(null,n)))),i?3:1,0);let f=s.start,h=s.end;r(e.tr.step(new si(f-(i?3:1),h,f,h,l,1,true)).scrollIntoView())}return true}}var ff={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 hf={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 af=typeof navigator!="undefined"&&/Mac/.test(navigator.platform);var cf=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var df=0;df<10;df++)ff[48+df]=ff[96+df]=String(df);for(var df=1;df<=24;df++)ff[df+111]="F"+df;for(var df=65;df<=90;df++){ff[df]=String.fromCharCode(df+32);hf[df]=String.fromCharCode(df)}for(var pf in ff)if(!hf.hasOwnProperty(pf))hf[pf]=ff[pf];function mf(t){var e=af&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||cf&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified";var r=!e&&t.key||(t.shiftKey?hf:ff)[t.keyCode]||t.key||"Unidentified";if(r=="Esc")r="Escape";if(r=="Del")r="Delete";if(r=="Left")r="ArrowLeft";if(r=="Up")r="ArrowUp";if(r=="Right")r="ArrowRight";if(r=="Down")r="ArrowDown";return r}const wf=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function gf(t){let e=t.split(/-(?!$)/),r=e[e.length-1];if(r=="Space")r=" ";let i,n,s,l;for(let t=0;t<e.length-1;t++){let r=e[t];if(/^(cmd|meta|m)$/i.test(r))l=true;else if(/^a(lt)?$/i.test(r))i=true;else if(/^(c|ctrl|control)$/i.test(r))n=true;else if(/^s(hift)?$/i.test(r))s=true;else if(/^mod$/i.test(r)){if(wf)l=true;else n=true}else throw new Error("Unrecognized modifier name: "+r)}if(i)r="Alt-"+r;if(n)r="Ctrl-"+r;if(l)r="Meta-"+r;if(s)r="Shift-"+r;return r}function bf(t){let e=Object.create(null);for(let r in t)e[gf(r)]=t[r];return e}function kf(t,e,r=true){if(e.altKey)t="Alt-"+t;if(e.ctrlKey)t="Ctrl-"+t;if(e.metaKey)t="Meta-"+t;if(r&&e.shiftKey)t="Shift-"+t;return t}function Df(t){return new bn({props:{handleKeyDown:vf(t)}})}function vf(t){let e=bf(t);return function(t,r){let i=mf(r),n,s=e[kf(i,r)];if(s&&s(t.state,t.dispatch,t))return true;if(i.length==1&&i!=" "){if(r.shiftKey){let n=e[kf(i,r,false)];if(n&&n(t.state,t.dispatch,t))return true}if((r.shiftKey||r.altKey||r.metaKey||i.charCodeAt(0)>127)&&(n=ff[r.keyCode])&&n!=i){let i=e[kf(n,r)];if(i&&i(t.state,t.dispatch,t))return true}}return false}}var yf=200;var Ff=function t(){};Ff.prototype.append=function t(e){if(!e.length){return this}e=Ff.from(e);return!this.length&&e||e.length<yf&&this.leafAppend(e)||this.length<yf&&e.leafPrepend(this)||this.appendInner(e)};Ff.prototype.prepend=function t(e){if(!e.length){return this}return Ff.from(e).append(this)};Ff.prototype.appendInner=function t(e){return new Mf(this,e)};Ff.prototype.slice=function t(e,r){if(e===void 0)e=0;if(r===void 0)r=this.length;if(e>=r){return Ff.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,r))};Ff.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};Ff.prototype.forEach=function t(e,r,i){if(r===void 0)r=0;if(i===void 0)i=this.length;if(r<=i){this.forEachInner(e,r,i,0)}else{this.forEachInvertedInner(e,r,i,0)}};Ff.prototype.map=function t(e,r,i){if(r===void 0)r=0;if(i===void 0)i=this.length;var n=[];this.forEach((function(t,r){return n.push(e(t,r))}),r,i);return n};Ff.from=function t(e){if(e instanceof Ff){return e}return e&&e.length?new Ef(e):Ff.empty};var Ef=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 r={length:{configurable:true},depth:{configurable:true}};e.prototype.flatten=function t(){return this.values};e.prototype.sliceInner=function t(r,i){if(r==0&&i==this.length){return this}return new e(this.values.slice(r,i))};e.prototype.getInner=function t(e){return this.values[e]};e.prototype.forEachInner=function t(e,r,i,n){for(var s=r;s<i;s++){if(e(this.values[s],n+s)===false){return false}}};e.prototype.forEachInvertedInner=function t(e,r,i,n){for(var s=r-1;s>=i;s--){if(e(this.values[s],n+s)===false){return false}}};e.prototype.leafAppend=function t(r){if(this.length+r.length<=yf){return new e(this.values.concat(r.flatten()))}};e.prototype.leafPrepend=function t(r){if(this.length+r.length<=yf){return new e(r.flatten().concat(this.values))}};r.length.get=function(){return this.values.length};r.depth.get=function(){return 0};Object.defineProperties(e.prototype,r);return e}(Ff);Ff.empty=new Ef([]);var Mf=function(t){function e(e,r){t.call(this);this.left=e;this.right=r;this.length=e.length+r.length;this.depth=Math.max(e.depth,r.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,r,i,n){var s=this.left.length;if(r<s&&this.left.forEachInner(e,r,Math.min(i,s),n)===false){return false}if(i>s&&this.right.forEachInner(e,Math.max(r-s,0),Math.min(this.length,i)-s,n+s)===false){return false}};e.prototype.forEachInvertedInner=function t(e,r,i,n){var s=this.left.length;if(r>s&&this.right.forEachInvertedInner(e,r-s,Math.max(i,s)-s,n+s)===false){return false}if(i<s&&this.left.forEachInvertedInner(e,Math.min(r,s),i,n)===false){return false}};e.prototype.sliceInner=function t(e,r){if(e==0&&r==this.length){return this}var i=this.left.length;if(r<=i){return this.left.slice(e,r)}if(e>=i){return this.right.slice(e-i,r-i)}return this.left.slice(e,i).append(this.right.slice(0,r-i))};e.prototype.leafAppend=function t(r){var i=this.right.leafAppend(r);if(i){return new e(this.left,i)}};e.prototype.leafPrepend=function t(r){var i=this.left.leafPrepend(r);if(i){return new e(i,this.right)}};e.prototype.appendInner=function t(r){if(this.left.depth>=Math.max(this.right.depth,r.depth)+1){return new e(this.left,new e(this.right,r))}return new e(this,r)};return e}(Ff);const xf=500;class Af{constructor(t,e){this.items=t;this.eventCount=e}popEvent(t,e){if(this.eventCount==0)return null;let r=this.items.length;for(;;r--){let t=this.items.get(r-1);if(t.selection){--r;break}}let i,n;if(e){i=this.remapping(r,this.items.length);n=i.maps.length}let s=t.tr;let l,o;let u=[],f=[];this.items.forEach(((t,e)=>{if(!t.step){if(!i){i=this.remapping(r,e+1);n=i.maps.length}n--;f.push(t);return}if(i){f.push(new Sf(t.map));let e=t.step.map(i.slice(n)),r;if(e&&s.maybeStep(e).doc){r=s.mapping.maps[s.mapping.maps.length-1];u.push(new Sf(r,undefined,undefined,u.length+f.length))}n--;if(r)i.appendMap(r,n)}else{s.maybeStep(t.step)}if(t.selection){l=i?t.selection.map(i.slice(n)):t.selection;o=new Af(this.items.slice(0,r).append(f.reverse().concat(u)),this.eventCount-1);return false}}),this.items.length,0);return{remaining:o,transform:s,selection:l}}addTransform(t,e,r,i){let n=[],s=this.eventCount;let l=this.items,o=!i&&l.length?l.get(l.length-1):null;for(let r=0;r<t.steps.length;r++){let u=t.steps[r].invert(t.docs[r]);let f=new Sf(t.mapping.maps[r],u,e),h;if(h=o&&o.merge(f)){f=h;if(r)n.pop();else l=l.slice(0,l.length-1)}n.push(f);if(e){s++;e=undefined}if(!i)o=f}let u=s-r.depth;if(u>$f){l=Cf(l,u);s-=u}return new Af(l.append(n),s)}remapping(t,e){let r=new Vr;this.items.forEach(((e,i)=>{let n=e.mirrorOffset!=null&&i-e.mirrorOffset>=t?r.maps.length-e.mirrorOffset:undefined;r.appendMap(e.map,n)}),t,e);return r}addMaps(t){if(this.eventCount==0)return this;return new Af(this.items.append(t.map((t=>new Sf(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let r=[],i=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--}),i);let o=e;this.items.forEach((e=>{let i=n.getMirror(--o);if(i==null)return;s=Math.min(s,i);let u=n.maps[i];if(e.step){let s=t.steps[i].invert(t.docs[i]);let f=e.selection&&e.selection.map(n.slice(o+1,i));if(f)l++;r.push(new Sf(u,s,f))}else{r.push(new Sf(u))}}),i);let u=[];for(let t=e;t<s;t++)u.push(new Sf(n.maps[t]));let f=this.items.slice(0,i).append(u).append(r);let h=new Af(f,l);if(h.emptyItemCount()>xf)h=h.compress(this.items.length-r.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),r=e.maps.length;let i=[],n=0;this.items.forEach(((s,l)=>{if(l>=t){i.push(s);if(s.selection)n++}else if(s.step){let t=s.step.map(e.slice(r)),l=t&&t.getMap();r--;if(l)e.appendMap(l,r);if(t){let o=s.selection&&s.selection.map(e.slice(r));if(o)n++;let u=new Sf(l.invert(),t,o),f,h=i.length-1;if(f=i.length&&i[h].merge(u))i[h]=f;else i.push(u)}}else if(s.map){r--}}),this.items.length,0);return new Af(Ff.from(i.reverse()),n)}}Af.empty=new Af(Ff.empty,0);function Cf(t,e){let r;t.forEach(((t,i)=>{if(t.selection&&e--==0){r=i;return false}}));return t.slice(r)}class Sf{constructor(t,e,r,i){this.map=t;this.step=e;this.selection=r;this.mirrorOffset=i}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new Sf(e.getMap().invert(),e,this.selection)}}}class Of{constructor(t,e,r,i,n){this.done=t;this.undone=e;this.prevRanges=r;this.prevTime=i;this.prevComposition=n}}const $f=20;function _f(t,e,r,i){let n=r.getMeta(If),s;if(n)return n.historyState;if(r.getMeta(Pf))t=new Of(t.done,t.undone,null,0,-1);let l=r.getMeta("appendedTransaction");if(r.steps.length==0){return t}else if(l&&l.getMeta(If)){if(l.getMeta(If).redo)return new Of(t.done.addTransform(r,undefined,i,Tf(e)),t.undone,Rf(r.mapping.maps[r.steps.length-1]),t.prevTime,t.prevComposition);else return new Of(t.done,t.undone.addTransform(r,undefined,i,Tf(e)),null,t.prevTime,t.prevComposition)}else if(r.getMeta("addToHistory")!==false&&!(l&&l.getMeta("addToHistory")===false)){let n=r.getMeta("composition");let s=t.prevTime==0||!l&&t.prevComposition!=n&&(t.prevTime<(r.time||0)-i.newGroupDelay||!Bf(r,t.prevRanges));let o=l?jf(t.prevRanges,r.mapping):Rf(r.mapping.maps[r.steps.length-1]);return new Of(t.done.addTransform(r,s?e.selection.getBookmark():undefined,i,Tf(e)),Af.empty,o,r.time,n==null?t.prevComposition:n)}else if(s=r.getMeta("rebased")){return new Of(t.done.rebased(r,s),t.undone.rebased(r,s),jf(t.prevRanges,r.mapping),t.prevTime,t.prevComposition)}else{return new Of(t.done.addMaps(r.mapping.maps),t.undone.addMaps(r.mapping.maps),jf(t.prevRanges,r.mapping),t.prevTime,t.prevComposition)}}function Bf(t,e){if(!e)return false;if(!t.docChanged)return true;let r=false;t.mapping.maps[0].forEach(((t,i)=>{for(let n=0;n<e.length;n+=2)if(t<=e[n+1]&&i>=e[n])r=true}));return r}function Rf(t){let e=[];t.forEach(((t,r,i,n)=>e.push(i,n)));return e}function jf(t,e){if(!t)return null;let r=[];for(let i=0;i<t.length;i+=2){let n=e.map(t[i],1),s=e.map(t[i+1],-1);if(n<=s)r.push(n,s)}return r}function Nf(t,e,r,i){let n=Tf(e);let s=If.get(e).spec.config;let l=(i?t.undone:t.done).popEvent(e,n);if(!l)return;let o=l.selection.resolve(l.transform.doc);let u=(i?t.done:t.undone).addTransform(l.transform,e.selection.getBookmark(),s,n);let f=new Of(i?u:l.remaining,i?l.remaining:u,null,0,-1);r(l.transform.setSelection(o).setMeta(If,{redo:i,historyState:f}).scrollIntoView())}let qf=false,zf=null;function Tf(t){let e=t.plugins;if(zf!=e){qf=false;zf=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){qf=true;break}}return qf}const If=new vn("history");const Pf=new vn("closeHistory");function Jf(t={}){t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500};return new bn({key:If,state:{init(){return new Of(Af.empty,Af.empty,null,0,-1)},apply(e,r,i){return _f(r,i,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(t,e){let r=e.inputType;let i=r=="historyUndo"?Lf:r=="historyRedo"?Wf:null;if(!i)return false;e.preventDefault();return i(t.state,t.dispatch)}}}})}const Lf=(t,e)=>{let r=If.getState(t);if(!r||r.done.eventCount==0)return false;if(e)Nf(r,t,e,false);return true};const Wf=(t,e)=>{let r=If.getState(t);if(!r||r.undone.eventCount==0)return false;if(e)Nf(r,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 Hf(t,e){let{$cursor:r}=t.selection;if(!r||(e?!e.endOfTextblock("backward",t):r.parentOffset>0))return null;return r}const Zf=(t,e,r)=>{let i=Hf(t,r);if(!i)return false;let n=Gf(i);if(!n){let r=i.blockRange(),n=r&&ai(r);if(n==null)return false;if(e)e(t.tr.lift(r,n).scrollIntoView());return true}let s=n.nodeBefore;if(!s.type.spec.isolating&&ph(t,n,e))return true;if(i.parent.content.size==0&&(Kf(s,"end")||en.isSelectable(s))){let r=Si(t.doc,i.before(),i.after(),Fe.empty);if(r&&r.slice.size<r.to-r.from){if(e){let i=t.tr.step(r);i.setSelection(Kf(s,"end")?Vi.findFrom(i.doc.resolve(i.mapping.map(n.pos,-1)),-1):en.create(i.doc,n.pos-s.nodeSize));e(i.scrollIntoView())}return true}}if(s.isAtom&&n.depth==i.depth-1){if(e)e(t.tr.delete(n.pos-s.nodeSize,n.pos).scrollIntoView());return true}return false};function Kf(t,e,r=false){for(let i=t;i;i=e=="start"?i.firstChild:i.lastChild){if(i.isTextblock)return true;if(r&&i.childCount!=1)return false}return false}const Vf=(t,e,r)=>{let{$head:i,empty:n}=t.selection,s=i;if(!n)return false;if(i.parent.isTextblock){if(r?!r.endOfTextblock("backward",t):i.parentOffset>0)return false;s=Gf(i)}let l=s&&s.nodeBefore;if(!l||!en.isSelectable(l))return false;if(e)e(t.tr.setSelection(en.create(t.doc,s.pos-l.nodeSize)).scrollIntoView());return true};function Gf(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 Xf(t,e){let{$cursor:r}=t.selection;if(!r||(e?!e.endOfTextblock("forward",t):r.parentOffset<r.parent.content.size))return null;return r}const Yf=(t,e,r)=>{let i=Xf(t,r);if(!i)return false;let n=th(i);if(!n)return false;let s=n.nodeAfter;if(ph(t,n,e))return true;if(i.parent.content.size==0&&(Kf(s,"start")||en.isSelectable(s))){let r=Si(t.doc,i.before(),i.after(),Fe.empty);if(r&&r.slice.size<r.to-r.from){if(e){let i=t.tr.step(r);i.setSelection(Kf(s,"start")?Vi.findFrom(i.doc.resolve(i.mapping.map(n.pos)),1):en.create(i.doc,i.mapping.map(n.pos)));e(i.scrollIntoView())}return true}}if(s.isAtom&&n.depth==i.depth-1){if(e)e(t.tr.delete(n.pos,n.pos+s.nodeSize).scrollIntoView());return true}return false};const Qf=(t,e,r)=>{let{$head:i,empty:n}=t.selection,s=i;if(!n)return false;if(i.parent.isTextblock){if(r?!r.endOfTextblock("forward",t):i.parentOffset<i.parent.content.size)return false;s=th(i)}let l=s&&s.nodeAfter;if(!l||!en.isSelectable(l))return false;if(e)e(t.tr.setSelection(en.create(t.doc,s.pos)).scrollIntoView());return true};function th(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let r=t.node(e);if(t.index(e)+1<r.childCount)return t.doc.resolve(t.after(e+1));if(r.type.spec.isolating)break}return null}const eh=(t,e)=>{let r=t.selection,i=r instanceof en,n;if(i){if(r.node.isTextblock||!Fi(t.doc,r.from))return false;n=r.from}else{n=Mi(t.doc,r.from,-1);if(n==null)return false}if(e){let r=t.tr.join(n);if(i)r.setSelection(en.create(r.doc,n-t.doc.resolve(n).nodeBefore.nodeSize));e(r.scrollIntoView())}return true};const rh=(t,e)=>{let r=t.selection,i;if(r instanceof en){if(r.node.isTextblock||!Fi(t.doc,r.to))return false;i=r.to}else{i=Mi(t.doc,r.to,1);if(i==null)return false}if(e)e(t.tr.join(i).scrollIntoView());return true};const ih=(t,e)=>{let{$from:r,$to:i}=t.selection;let n=r.blockRange(i),s=n&&ai(n);if(s==null)return false;if(e)e(t.tr.lift(n,s).scrollIntoView());return true};const nh=(t,e)=>{let{$head:r,$anchor:i}=t.selection;if(!r.parent.type.spec.code||!r.sameParent(i))return false;if(e)e(t.tr.insertText("\n").scrollIntoView());return true};function sh(t){for(let e=0;e<t.edgeCount;e++){let{type:r}=t.edge(e);if(r.isTextblock&&!r.hasRequiredAttrs())return r}return null}const lh=(t,e)=>{let{$head:r,$anchor:i}=t.selection;if(!r.parent.type.spec.code||!r.sameParent(i))return false;let n=r.node(-1),s=r.indexAfter(-1),l=sh(n.contentMatchAt(s));if(!l||!n.canReplaceWith(s,s,l))return false;if(e){let i=r.after(),n=t.tr.replaceWith(i,i,l.createAndFill());n.setSelection(Vi.near(n.doc.resolve(i),1));e(n.scrollIntoView())}return true};const oh=(t,e)=>{let r=t.selection,{$from:i,$to:n}=r;if(r instanceof nn||i.parent.inlineContent||n.parent.inlineContent)return false;let s=sh(n.parent.contentMatchAt(n.indexAfter()));if(!s||!s.isTextblock)return false;if(e){let r=(!i.parentOffset&&n.index()<n.parent.childCount?i:n).pos;let l=t.tr.insert(r,s.createAndFill());l.setSelection(Qi.create(l.doc,r+1));e(l.scrollIntoView())}return true};const uh=(t,e)=>{let{$cursor:r}=t.selection;if(!r||r.parent.content.size)return false;if(r.depth>1&&r.after()!=r.end(-1)){let i=r.before();if(vi(t.doc,i)){if(e)e(t.tr.split(i).scrollIntoView());return true}}let i=r.blockRange(),n=i&&ai(i);if(n==null)return false;if(e)e(t.tr.lift(i,n).scrollIntoView());return true};function fh(t){return(e,r)=>{let{$from:i,$to:n}=e.selection;if(e.selection instanceof en&&e.selection.node.isBlock){if(!i.parentOffset||!vi(e.doc,i.pos))return false;if(r)r(e.tr.split(i.pos).scrollIntoView());return true}if(!i.parent.isBlock)return false;if(r){let s=n.parentOffset==n.parent.content.size;let l=e.tr;if(e.selection instanceof Qi||e.selection instanceof nn)l.deleteSelection();let o=i.depth==0?null:sh(i.node(-1).contentMatchAt(i.indexAfter(-1)));let u=t&&t(n.parent,s);let f=u?[u]:s&&o?[{type:o}]:undefined;let h=vi(l.doc,l.mapping.map(i.pos),1,f);if(!f&&!h&&vi(l.doc,l.mapping.map(i.pos),1,o?[{type:o}]:undefined)){if(o)f=[{type:o}];h=true}if(h){l.split(l.mapping.map(i.pos),1,f);if(!s&&!i.parentOffset&&i.parent.type!=o){let t=l.mapping.map(i.before()),e=l.doc.resolve(t);if(o&&i.node(-1).canReplaceWith(e.index(),e.index()+1,o))l.setNodeMarkup(l.mapping.map(i.before()),o)}}r(l.scrollIntoView())}return true}}const hh=fh();const ah=(t,e)=>{let{$from:r,to:i}=t.selection,n;let s=r.sharedDepth(i);if(s==0)return false;n=r.before(s);if(e)e(t.tr.setSelection(en.create(t.doc,n)));return true};const ch=(t,e)=>{if(e)e(t.tr.setSelection(new nn(t.doc)));return true};function dh(t,e,r){let i=e.nodeBefore,n=e.nodeAfter,s=e.index();if(!i||!n||!i.type.compatibleContent(n.type))return false;if(!i.content.size&&e.parent.canReplace(s-1,s)){if(r)r(t.tr.delete(e.pos-i.nodeSize,e.pos).scrollIntoView());return true}if(!e.parent.canReplace(s,s+1)||!(n.isTextblock||Fi(t.doc,e.pos)))return false;if(r)r(t.tr.clearIncompatible(e.pos,i.type,i.contentMatchAt(i.childCount)).join(e.pos).scrollIntoView());return true}function ph(t,e,r){let i=e.nodeBefore,n=e.nodeAfter,s,l;if(i.type.spec.isolating||n.type.spec.isolating)return false;if(dh(t,e,r))return true;let o=e.parent.canReplace(e.index(),e.index()+1);if(o&&(s=(l=i.contentMatchAt(i.childCount)).findWrapping(n.type))&&l.matchType(s[0]||n.type).validEnd){if(r){let l=e.pos+n.nodeSize,o=ge.empty;for(let t=s.length-1;t>=0;t--)o=ge.from(s[t].create(null,o));o=ge.from(i.copy(o));let u=t.tr.step(new si(e.pos-1,l,e.pos,l,new Fe(o,1,0),s.length,true));let f=l+2*s.length;if(Fi(u.doc,f))u.join(f);r(u.scrollIntoView())}return true}let u=Vi.findFrom(e,1);let f=u&&u.$from.blockRange(u.$to),h=f&&ai(f);if(h!=null&&h>=e.depth){if(r)r(t.tr.lift(f,h).scrollIntoView());return true}if(o&&Kf(n,"start",true)&&Kf(i,"end")){let s=i,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(r){let i=ge.empty;for(let t=l.length-1;t>=0;t--)i=ge.from(l[t].copy(i));let s=t.tr.step(new si(e.pos-l.length,e.pos+n.nodeSize,e.pos+u,e.pos+n.nodeSize-u,new Fe(i,l.length,0),0,true));r(s.scrollIntoView())}return true}}return false}function mh(t){return function(e,r){let i=e.selection,n=t<0?i.$from:i.$to;let s=n.depth;while(n.node(s).isInline){if(!s)return false;s--}if(!n.node(s).isTextblock)return false;if(r)r(e.tr.setSelection(Qi.create(e.doc,t<0?n.start(s):n.end(s))));return true}}const wh=mh(-1);const gh=mh(1);function bh(t,e=null){return function(r,i){let{$from:n,$to:s}=r.selection;let l=n.blockRange(s),o=l&&di(l,t,e);if(!o)return false;if(i)i(r.tr.wrap(l,o).scrollIntoView());return true}}function kh(t,e=null){return function(r,i){let n=false;for(let i=0;i<r.selection.ranges.length&&!n;i++){let{$from:{pos:s},$to:{pos:l}}=r.selection.ranges[i];r.doc.nodesBetween(s,l,((i,s)=>{if(n)return false;if(!i.isTextblock||i.hasMarkup(t,e))return;if(i.type==t){n=true}else{let e=r.doc.resolve(s),i=e.index();n=e.parent.canReplaceWith(i,i+1,t)}}))}if(!n)return false;if(i){let n=r.tr;for(let i=0;i<r.selection.ranges.length;i++){let{$from:{pos:s},$to:{pos:l}}=r.selection.ranges[i];n.setBlockType(s,l,t,e)}i(n.scrollIntoView())}return true}}function Dh(t,e,r){for(let i=0;i<e.length;i++){let{$from:n,$to:s}=e[i];let l=n.depth==0?t.inlineContent&&t.type.allowsMarkType(r):false;t.nodesBetween(n.pos,s.pos,(t=>{if(l)return false;l=t.inlineContent&&t.type.allowsMarkType(r)}));if(l)return true}return false}function vh(t,e=null){return function(r,i){let{empty:n,$cursor:s,ranges:l}=r.selection;if(n&&!s||!Dh(r.doc,l,t))return false;if(i){if(s){if(t.isInSet(r.storedMarks||s.marks()))i(r.tr.removeStoredMark(t));else i(r.tr.addStoredMark(t.create(e)))}else{let n=false,s=r.tr;for(let e=0;!n&&e<l.length;e++){let{$from:i,$to:s}=l[e];n=r.doc.rangeHasMark(i.pos,s.pos,t)}for(let r=0;r<l.length;r++){let{$from:i,$to:o}=l[r];if(n){s.removeMark(i.pos,o.pos,t)}else{let r=i.pos,n=o.pos,l=i.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(r+f<n){r+=f;n-=h}s.addMark(r,n,t.create(e))}}i(s.scrollIntoView())}}return true}}function yh(...t){return function(e,r,i){for(let n=0;n<t.length;n++)if(t[n](e,r,i))return true;return false}}let Fh=yh(Uf,Zf,Vf);let Eh=yh(Uf,Yf,Qf);const Mh={Enter:yh(nh,oh,uh,hh),"Mod-Enter":lh,Backspace:Fh,"Mod-Backspace":Fh,"Shift-Backspace":Fh,Delete:Eh,"Mod-Delete":Eh,"Mod-a":ch};const xh={"Ctrl-h":Mh["Backspace"],"Alt-Backspace":Mh["Mod-Backspace"],"Ctrl-d":Mh["Delete"],"Ctrl-Alt-Backspace":Mh["Mod-Delete"],"Alt-Delete":Mh["Mod-Delete"],"Alt-d":Mh["Mod-Delete"],"Ctrl-a":wh,"Ctrl-e":gh};for(let t in Mh)xh[t]=Mh[t];const Ah=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os!="undefined"&&os.platform?os.platform()=="darwin":false;const Ch=Ah?xh:Mh;function Sh(t={}){return new bn({view(e){return new Oh(e,t)}})}class Oh{constructor(t,e){var r;this.editorView=t;this.cursorPos=null;this.element=null;this.timeout=-1;this.width=(r=e.width)!==null&&r!==void 0?r:1;this.color=e.color===false?undefined:e.color||"black";this.class=e.class;this.handlers=["dragover","dragend","drop","dragleave"].map((e=>{let r=t=>{this[e](t)};t.dom.addEventListener(e,r);return{name:e,handler:r}}))}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,r;if(e){let e=t.nodeBefore,i=t.nodeAfter;if(e||i){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&&i)s=(s+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2;r={left:n.left,right:n.right,top:s-this.width/2,bottom:s+this.width/2}}}}if(!r){let t=this.editorView.coordsAtPos(this.cursorPos);r={left:t.left-this.width/2,right:t.left+this.width/2,top:t.top,bottom:t.bottom}}let i=this.editorView.dom.offsetParent;if(!this.element){this.element=i.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(!i||i==document.body&&getComputedStyle(i).position=="static"){n=-pageXOffset;s=-pageYOffset}else{let t=i.getBoundingClientRect();n=t.left-i.scrollLeft;s=t.top-i.scrollTop}this.element.style.left=r.left-n+"px";this.element.style.top=r.top-s+"px";this.element.style.width=r.right-r.left+"px";this.element.style.height=r.bottom-r.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 r=e&&e.inside>=0&&this.editorView.state.doc.nodeAt(e.inside);let i=r&&r.type.spec.disableDropCursor;let n=typeof i=="function"?i(this.editorView,e,t):i;if(e&&!n){let t=e.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){let e=Ci(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 $h extends Vi{constructor(t){super(t,t)}map(t,e){let r=t.resolve(e.map(this.head));return $h.valid(r)?new $h(r):Vi.near(r)}content(){return Fe.empty}eq(t){return t instanceof $h&&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 $h(t.resolve(e.pos))}getBookmark(){return new _h(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!Bh(t)||!Rh(t))return false;let r=e.type.spec.allowGapCursor;if(r!=null)return r;let i=e.contentMatchAt(t.index()).defaultType;return i&&i.isTextblock}static findGapCursorFrom(t,e,r=false){t:for(;;){if(!r&&$h.valid(t))return t;let i=t.pos,n=null;for(let r=t.depth;;r--){let s=t.node(r);if(e>0?t.indexAfter(r)<s.childCount:t.index(r)>0){n=s.child(e>0?t.indexAfter(r):t.index(r)-1);break}else if(r==0){return null}i+=e;let l=t.doc.resolve(i);if($h.valid(l))return l}for(;;){let s=e>0?n.firstChild:n.lastChild;if(!s){if(n.isAtom&&!n.isText&&!en.isSelectable(n)){t=t.doc.resolve(i+n.nodeSize*e);r=false;continue t}break}n=s;i+=e;let l=t.doc.resolve(i);if($h.valid(l))return l}return null}}}$h.prototype.visible=false;$h.findFrom=$h.findGapCursorFrom;Vi.jsonID("gapcursor",$h);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 $h.valid(e)?new $h(e):Vi.near(e)}}function Bh(t){for(let e=t.depth;e>=0;e--){let r=t.index(e),i=t.node(e);if(r==0){if(i.type.spec.isolating)return true;continue}for(let t=i.child(r-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 Rh(t){for(let e=t.depth;e>=0;e--){let r=t.indexAfter(e),i=t.node(e);if(r==i.childCount){if(i.type.spec.isolating)return true;continue}for(let t=i.child(r);;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 bn({props:{decorations:Ih,createSelectionBetween(t,e,r){return e.pos==r.pos&&$h.valid(r)?new $h(r):null},handleClick:zh,handleKeyDown:Nh,handleDOMEvents:{beforeinput:Th}}})}const Nh=vf({ArrowLeft:qh("horiz",-1),ArrowRight:qh("horiz",1),ArrowUp:qh("vert",-1),ArrowDown:qh("vert",1)});function qh(t,e){const r=t=="vert"?e>0?"down":"up":e>0?"right":"left";return function(t,i,n){let s=t.selection;let l=e>0?s.$to:s.$from,o=s.empty;if(s instanceof Qi){if(!n.endOfTextblock(r)||l.depth==0)return false;o=false;l=t.doc.resolve(e>0?l.after():l.before())}let u=$h.findGapCursorFrom(l,e,o);if(!u)return false;if(i)i(t.tr.setSelection(new $h(u)));return true}}function zh(t,e,r){if(!t||!t.editable)return false;let i=t.state.doc.resolve(e);if(!$h.valid(i))return false;let n=t.posAtCoords({left:r.clientX,top:r.clientY});if(n&&n.inside>-1&&en.isSelectable(t.state.doc.nodeAt(n.inside)))return false;t.dispatch(t.state.tr.setSelection(new $h(i)));return true}function Th(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof $h))return false;let{$from:r}=t.state.selection;let i=r.parent.contentMatchAt(r.index()).findWrapping(t.state.schema.nodes.text);if(!i)return false;let n=ge.empty;for(let t=i.length-1;t>=0;t--)n=ge.from(i[t].createAndFill(null,n));let s=t.state.tr.replace(r.pos,r.pos,new Fe(n,0,0));s.setSelection(Qi.near(s.doc.resolve(r.pos+1)));t.dispatch(s);return false}function Ih(t){if(!(t.selection instanceof $h))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return Xo.create(t.doc,[Ko.widget(t.selection.head,e,{key:"gapcursor"})])}function Ph(){var t=arguments[0];if(typeof t=="string")t=document.createElement(t);var e=1,r=arguments[1];if(r&&typeof r=="object"&&r.nodeType==null&&!Array.isArray(r)){for(var i in r)if(Object.prototype.hasOwnProperty.call(r,i)){var n=r[i];if(typeof n=="string")t.setAttribute(i,n);else if(n!=null)t[i]=n}e++}for(;e<arguments.length;e++)Jh(t,arguments[e]);return t}function Jh(t,e){if(typeof e=="string"){t.appendChild(document.createTextNode(e))}else if(e==null);else if(e.nodeType!=null){t.appendChild(e)}else if(Array.isArray(e)){for(var r=0;r<e.length;r++)Jh(t,e[r])}else{throw new RangeError("Unsupported child node: "+e)}}const Lh="http://www.w3.org/2000/svg";const Wh="http://www.w3.org/1999/xlink";const Uh="ProseMirror-icon";function Hh(t){let e=0;for(let r=0;r<t.length;r++)e=(e<<5)-e+t.charCodeAt(r)|0;return e}function Zh(t,e){let r=(t.nodeType==9?t:t.ownerDocument)||document;let i=r.createElement("div");i.className=Uh;if(e.path){let{path:n,width:s,height:l}=e;let o="pm-icon-"+Hh(n).toString(16);if(!r.getElementById(o))Kh(t,o,e);let u=i.appendChild(r.createElementNS(Lh,"svg"));u.style.width=s/l+"em";let f=u.appendChild(r.createElementNS(Lh,"use"));f.setAttributeNS(Wh,"href",/([^#]*)/.exec(r.location.toString())[1]+"#"+o)}else if(e.dom){i.appendChild(e.dom.cloneNode(true))}else{let{text:t,css:n}=e;i.appendChild(r.createElement("span")).textContent=t||"";if(n)i.firstChild.style.cssText=n}return i}function Kh(t,e,r){let[i,n]=t.nodeType==9?[t,t.body]:[t.ownerDocument||document,t];let s=i.getElementById(Uh+"-collection");if(!s){s=i.createElementNS(Lh,"svg");s.id=Uh+"-collection";s.style.display="none";n.insertBefore(s,n.firstChild)}let l=i.createElementNS(Lh,"symbol");l.id=e;l.setAttribute("viewBox","0 0 "+r.width+" "+r.height);let o=l.appendChild(i.createElementNS(Lh,"path"));o.setAttribute("d",r.path);s.appendChild(l)}const Vh="ProseMirror-menu";class Gh{constructor(t){this.spec=t}render(t){let e=this.spec;let r=e.render?e.render(t):e.icon?Zh(t.root,e.icon):e.label?Ph("div",null,Xh(t,e.label)):null;if(!r)throw new RangeError("MenuItem without icon or label property");if(e.title){const i=typeof e.title==="function"?e.title(t.state):e.title;r.setAttribute("title",Xh(t,i))}if(e.class)r.classList.add(e.class);if(e.css)r.style.cssText+=e.css;r.addEventListener("mousedown",(i=>{i.preventDefault();if(!r.classList.contains(Vh+"-disabled"))e.run(t.state,t.dispatch,t,i)}));function i(t){if(e.select){let i=e.select(t);r.style.display=i?"":"none";if(!i)return false}let i=true;if(e.enable){i=e.enable(t)||false;ma(r,Vh+"-disabled",!i)}if(e.active){let n=i&&e.active(t)||false;ma(r,Vh+"-active",n)}return true}return{dom:r,update:i}}}function Xh(t,e){return t._props.translate?t._props.translate(e):e}let Yh={time:0,node:null};function Qh(t){Yh.time=Date.now();Yh.node=t.target}function ta(t){return Date.now()-100<Yh.time&&Yh.node&&t.contains(Yh.node)}class ea{constructor(t,e={}){this.options=e;this.options=e||{};this.content=Array.isArray(t)?t:[t]}render(t){let e=ra(this.content,t);let r=t.dom.ownerDocument.defaultView||window;let i=Ph("div",{class:Vh+"-dropdown "+(this.options.class||""),style:this.options.css},Xh(t,this.options.label||""));if(this.options.title)i.setAttribute("title",Xh(t,this.options.title));let n=Ph("div",{class:Vh+"-dropdown-wrap"},i);let s=null;let l=null;let o=()=>{if(s&&s.close()){s=null;r.removeEventListener("mousedown",l)}};i.addEventListener("mousedown",(t=>{t.preventDefault();Qh(t);if(s){o()}else{s=this.expand(n,e.dom);r.addEventListener("mousedown",l=()=>{if(!ta(n))o()})}}));function u(t){let r=e.update(t);n.style.display=r?"":"none";return r}return{dom:n,update:u}}expand(t,e){let r=Ph("div",{class:Vh+"-dropdown-menu "+(this.options.class||"")},e);let i=false;function n(){if(i)return false;i=true;t.removeChild(r);return true}t.appendChild(r);return{close:n,node:r}}}function ra(t,e){let r=[],i=[];for(let n=0;n<t.length;n++){let{dom:s,update:l}=t[n].render(e);r.push(Ph("div",{class:Vh+"-dropdown-item"},s));i.push(l)}return{dom:r,update:ia(i,r)}}function ia(t,e){return r=>{let i=false;for(let n=0;n<t.length;n++){let s=t[n](r);e[n].style.display=s?"":"none";if(s)i=true}return i}}class na{constructor(t,e={}){this.options=e;this.content=Array.isArray(t)?t:[t]}render(t){let e=ra(this.content,t);let r=t.dom.ownerDocument.defaultView||window;let i=Ph("div",{class:Vh+"-submenu-label"},Xh(t,this.options.label||""));let n=Ph("div",{class:Vh+"-submenu-wrap"},i,Ph("div",{class:Vh+"-submenu"},e.dom));let s=null;i.addEventListener("mousedown",(t=>{t.preventDefault();Qh(t);ma(n,Vh+"-submenu-wrap-active",false);if(!s)r.addEventListener("mousedown",s=()=>{if(!ta(n)){n.classList.remove(Vh+"-submenu-wrap-active");r.removeEventListener("mousedown",s);s=null}})}));function l(t){let r=e.update(t);n.style.display=r?"":"none";return r}return{dom:n,update:l}}}function sa(t,e){let r=document.createDocumentFragment();let i=[],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:i,update:n}=l[e].render(t);let s=Ph("span",{class:Vh+"item"},i);r.appendChild(s);u.push(s);o.push(n)}if(o.length){i.push(ia(o,u));if(s<e.length-1)n.push(r.appendChild(la()))}}function s(t){let e=false,r=false;for(let s=0;s<i.length;s++){let l=i[s](t);if(s)n[s-1].style.display=r&&l?"":"none";r=l;if(l)e=true}return e}return{dom:r,update:s}}function la(){return Ph("span",{class:Vh+"separator"})}const oa={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 ua=new Gh({title:"Join with above block",run:eh,select:t=>eh(t),icon:oa.join});const fa=new Gh({title:"Lift out of enclosing block",run:ih,select:t=>ih(t),icon:oa.lift});const ha=new Gh({title:"Select parent node",run:ah,select:t=>ah(t),icon:oa.selectParentNode});let aa=new Gh({title:"Undo last change",run:Lf,enable:t=>Lf(t),icon:oa.undo});let ca=new Gh({title:"Redo last undone change",run:Wf,enable:t=>Wf(t),icon:oa.redo});function da(t,e){let r={run(r,i){return bh(t,e.attrs)(r,i)},select(r){return bh(t,e.attrs)(r)}};for(let t in e)r[t]=e[t];return new Gh(r)}function pa(t,e){let r=kh(t,e.attrs);let i={run:r,enable(t){return r(t)},active(r){let{$from:i,to:n,node:s}=r.selection;if(s)return s.hasMarkup(t,e.attrs);return n<=i.end()&&i.parent.hasMarkup(t,e.attrs)}};for(let t in e)i[t]=e[t];return new Gh(i)}function ma(t,e,r){if(r)t.classList.add(e);else t.classList.remove(e)}const wa="ProseMirror-menubar";function ga(){if(typeof navigator=="undefined")return false;let t=navigator.userAgent;return!/Edge\/\d/.test(t)&&/AppleWebKit/.test(t)&&/Mobile\/\w+/.test(t)}function ba(t){return new bn({view(e){return new ka(e,t)}})}class ka{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=Ph("div",{class:wa+"-wrapper"});this.menu=this.wrapper.appendChild(Ph("div",{class:wa}));this.menu.className=wa;if(t.dom.parentNode)t.dom.parentNode.replaceChild(this.wrapper,t.dom);this.wrapper.appendChild(t.dom);let{dom:r,update:i}=sa(this.editorView,this.options.content);this.contentUpdate=i;this.menu.appendChild(r);this.update();if(e.floating&&!ga()){this.updateFloat();let t=ya(this.wrapper);this.scrollHandler=e=>{let r=this.editorView.root;if(!(r.body||r).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 r=e[Da(t)?0:e.length-1];if(!r)return;let i=this.menu.getBoundingClientRect();if(r.top<i.bottom&&r.bottom>i.top){let t=va(this.wrapper);if(t)t.scrollTop-=i.bottom-r.top}}updateFloat(t){let e=this.wrapper,r=e.getBoundingClientRect(),i=t?Math.max(0,t.getBoundingClientRect().top):0;if(this.floating){if(r.top>=i||r.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=r.left+n+"px";this.menu.style.display=r.top>(this.editorView.dom.ownerDocument.defaultView||window).innerHeight?"none":"";if(t)this.menu.style.top=i+"px"}}else{if(r.top<i&&r.bottom>=this.menu.offsetHeight+10){this.floating=true;let r=this.menu.getBoundingClientRect();this.menu.style.left=r.left+"px";this.menu.style.width=r.width+"px";if(t)this.menu.style.top=i+"px";this.menu.style.position="fixed";this.spacer=Ph("div",{class:wa+"-spacer",style:`height: ${r.height}px`});e.insertBefore(this.spacer,this.menu)}}}destroy(){if(this.wrapper.parentNode)this.wrapper.parentNode.replaceChild(this.editorView.dom,this.wrapper)}}function Da(t){if(t.anchorNode==t.focusNode)return t.anchorOffset>t.focusOffset;return t.anchorNode.compareDocumentPosition(t.focusNode)==Node.DOCUMENT_POSITION_FOLLOWING}function va(t){for(let e=t.parentNode;e;e=e.parentNode)if(e.scrollHeight>e.clientHeight)return e}function ya(t){let e=[t.ownerDocument.defaultView||window];for(let r=t.parentNode;r;r=r.parentNode)e.push(r);return e}class Fa{constructor(t,e,r={}){this.match=t;this.match=t;this.handler=typeof e=="string"?Ea(e):e;this.undoable=r.undoable!==false;this.inCode=r.inCode||false}}function Ea(t){return function(e,r,i,n){let s=t;if(r[1]){let t=r[0].lastIndexOf(r[1]);s+=r[0].slice(t+r[1].length);i+=t;let e=i-n;if(e>0){s=r[0].slice(t-e,t)+s;i=n}}return e.tr.insertText(s,i,n)}}const Ma=500;function xa({rules:t}){let e=new bn({state:{init(){return null},apply(t,e){let r=t.getMeta(this);if(r)return r;return t.selectionSet||t.docChanged?null:e}},props:{handleTextInput(r,i,n,s){return Aa(r,i,n,s,t,e)},handleDOMEvents:{compositionend:r=>{setTimeout((()=>{let{$cursor:i}=r.state.selection;if(i)Aa(r,i.pos,i.pos,"",t,e)}))}}},isInputRules:true});return e}function Aa(t,e,r,i,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-Ma),o.parentOffset,null,"")+i;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-i.length),r);if(!c)continue;if(h.undoable)c.setMeta(s,{transform:c,from:e,to:r,text:i});t.dispatch(c);return true}return false}const Ca=(t,e)=>{let r=t.plugins;for(let i=0;i<r.length;i++){let n=r[i],s;if(n.spec.isInputRules&&(s=n.getState(t))){if(e){let r=t.tr,i=s.transform;for(let t=i.steps.length-1;t>=0;t--)r.step(i.steps[t].invert(i.docs[t]));if(s.text){let e=r.doc.resolve(s.from).marks();r.replaceWith(s.from,s.to,t.schema.text(s.text,e))}else{r.delete(s.from,s.to)}e(r)}return true}}return false};const Sa=new Fa(/--$/,"—");const Oa=new Fa(/\.\.\.$/,"…");const $a=new Fa(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");const _a=new Fa(/"$/,"”");const Ba=new Fa(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");const Ra=new Fa(/'$/,"’");const ja=[$a,_a,Ba,Ra];function Na(t,e,r=null,i){return new Fa(t,((t,n,s,l)=>{let o=r instanceof Function?r(n):r;let u=t.tr.delete(s,l);let f=u.doc.resolve(s),h=f.blockRange(),a=h&&di(h,e,o);if(!a)return null;u.wrap(h,a);let c=u.doc.resolve(s-1).nodeBefore;if(c&&c.type==e&&Fi(u.doc,s-1)&&(!i||i(n,c)))u.join(s-1);return u}))}function qa(t,e,r=null){return new Fa(t,((t,i,n,s)=>{let l=t.doc.resolve(n);let o=r instanceof Function?r(i):r;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 za="ProseMirror-prompt";function Ta(t){let e=document.body.appendChild(document.createElement("div"));e.className=za;let r=t=>{if(!e.contains(t.target))i()};setTimeout((()=>window.addEventListener("mousedown",r)),50);let i=()=>{window.removeEventListener("mousedown",r);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=za+"-submit";s.textContent="OK";let l=document.createElement("button");l.type="button";l.className=za+"-cancel";l.textContent="Cancel";l.addEventListener("click",i);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=za+"-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=Ia(t.fields,n);if(e){i();t.callback(e)}};o.addEventListener("submit",(t=>{t.preventDefault();h()}));o.addEventListener("keydown",(t=>{if(t.keyCode==27){t.preventDefault();i()}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))i()}),500)}}));let a=o.elements[0];if(a)a.focus()}function Ia(t,e){let r=Object.create(null),i=0;for(let n in t){let s=t[n],l=e[i++];let o=s.read(l),u=s.validate(o);if(u){Pa(l,u);return null}r[n]=s.clean(o)}return r}function Pa(t,e){let r=t.parentNode;let i=r.appendChild(document.createElement("div"));i.style.left=t.offsetLeft+t.offsetWidth+2+"px";i.style.top=t.offsetTop-5+"px";i.className="ProseMirror-invalid";i.textContent=e;setTimeout((()=>r.removeChild(i)),1500)}class Ja{constructor(t){this.options=t}read(t){return t.value}validateType(t){return null}validate(t){if(!t&&this.options.required)return"Required field";return this.validateType(t)||(this.options.validate?this.options.validate(t):null)}clean(t){return this.options.clean?this.options.clean(t):t}}class La extends Ja{render(){let t=document.createElement("input");t.type="text";t.placeholder=this.options.label;t.value=this.options.value||"";t.autocomplete="off";return t}}function Wa(t,e){let r=t.selection.$from;for(let t=r.depth;t>=0;t--){let i=r.index(t);if(r.node(t).canReplaceWith(i,i,e))return true}return false}function Ua(t){return new Gh({title:"Insert image",label:"Image",enable(e){return Wa(e,t)},run(e,r,i){let{from:n,to:s}=e.selection,l=null;if(e.selection instanceof en&&e.selection.node.type==t)l=e.selection.node.attrs;Ta({title:"Insert image",fields:{src:new La({label:"Location",required:true,value:l&&l.src}),title:new La({label:"Title",value:l&&l.title}),alt:new La({label:"Description",value:l?l.alt:e.doc.textBetween(n,s," ")})},callback(e){i.dispatch(i.state.tr.replaceSelectionWith(t.createAndFill(e)));i.focus()}})}})}function Ha(t,e){let r={label:e.title,run:t};for(let t in e)r[t]=e[t];if(!e.enable&&!e.select)r[e.enable?"enable":"select"]=e=>t(e);return new Gh(r)}function Za(t,e){let{from:r,$from:i,to:n,empty:s}=t.selection;if(s)return!!e.isInSet(t.storedMarks||i.marks());else return t.doc.rangeHasMark(r,n,e)}function Ka(t,e){let r={active(e){return Za(e,t)}};for(let t in e)r[t]=e[t];return Ha(vh(t),r)}function Va(t){return new Gh({title:"Add or remove link",icon:oa.link,active(e){return Za(e,t)},enable(t){return!t.selection.empty},run(e,r,i){if(Za(e,t)){vh(t)(e,r);return true}Ta({title:"Create a link",fields:{href:new La({label:"Link target",required:true}),title:new La({label:"Title"})},callback(e){vh(t,e)(i.state,i.dispatch);i.focus()}})}})}function Ga(t,e){return Ha(ef(t,e.attrs),e)}function Xa(t){let e={};let r;if(r=t.marks.strong)e.toggleStrong=Ka(r,{title:"Toggle strong style",icon:oa.strong});if(r=t.marks.em)e.toggleEm=Ka(r,{title:"Toggle emphasis",icon:oa.em});if(r=t.marks.code)e.toggleCode=Ka(r,{title:"Toggle code font",icon:oa.code});if(r=t.marks.link)e.toggleLink=Va(r);let i;if(i=t.nodes.image)e.insertImage=Ua(i);if(i=t.nodes.bullet_list)e.wrapBulletList=Ga(i,{title:"Wrap in bullet list",icon:oa.bulletList});if(i=t.nodes.ordered_list)e.wrapOrderedList=Ga(i,{title:"Wrap in ordered list",icon:oa.orderedList});if(i=t.nodes.blockquote)e.wrapBlockQuote=da(i,{title:"Wrap in block quote",icon:oa.blockquote});if(i=t.nodes.paragraph)e.makeParagraph=pa(i,{title:"Change to paragraph",label:"Plain"});if(i=t.nodes.code_block)e.makeCodeBlock=pa(i,{title:"Change to code block",label:"Code"});if(i=t.nodes.heading)for(let t=1;t<=10;t++)e["makeHead"+t]=pa(i,{title:"Change to heading "+t,label:"Level "+t,attrs:{level:t}});if(i=t.nodes.horizontal_rule){let t=i;e.insertHorizontalRule=new Gh({title:"Insert horizontal rule",label:"Horizontal rule",enable(e){return Wa(e,t)},run(e,r){r(e.tr.replaceSelectionWith(t.create()))}})}let n=t=>t.filter((t=>t));e.insertMenu=new ea(n([e.insertImage,e.insertHorizontalRule]),{label:"Insert"});e.typeMenu=new ea(n([e.makeParagraph,e.makeCodeBlock,e.makeHead1&&new na(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,ua,fa,ha])];e.fullMenu=e.inlineMenu.concat([[e.insertMenu,e.typeMenu]],[[aa,ca]],e.blockMenu);return e}const Ya=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function Qa(t,e){let r={},i;function n(t,i){if(e){let r=e[t];if(r===false)return;if(r)t=r}r[t]=i}n("Mod-z",Lf);n("Shift-Mod-z",Wf);n("Backspace",Ca);if(!Ya)n("Mod-y",Wf);n("Alt-ArrowUp",eh);n("Alt-ArrowDown",rh);n("Mod-BracketLeft",ih);n("Escape",ah);if(i=t.marks.strong){n("Mod-b",vh(i));n("Mod-B",vh(i))}if(i=t.marks.em){n("Mod-i",vh(i));n("Mod-I",vh(i))}if(i=t.marks.code)n("Mod-`",vh(i));if(i=t.nodes.bullet_list)n("Shift-Ctrl-8",ef(i));if(i=t.nodes.ordered_list)n("Shift-Ctrl-9",ef(i));if(i=t.nodes.blockquote)n("Ctrl->",bh(i));if(i=t.nodes.hard_break){let t=i,e=yh(lh,((e,r)=>{if(r)r(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}));n("Mod-Enter",e);n("Shift-Enter",e);if(Ya)n("Ctrl-Enter",e)}if(i=t.nodes.list_item){n("Enter",nf(i));n("Mod-[",sf(i));n("Mod-]",uf(i))}if(i=t.nodes.paragraph)n("Shift-Ctrl-0",kh(i));if(i=t.nodes.code_block)n("Shift-Ctrl-\\",kh(i));if(i=t.nodes.heading)for(let t=1;t<=6;t++)n("Shift-Ctrl-"+t,kh(i,{level:t}));if(i=t.nodes.horizontal_rule){let t=i;n("Mod-_",((e,r)=>{if(r)r(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}))}return r}function tc(t){return Na(/^\s*>\s$/,t)}function ec(t){return Na(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order==+t[1]))}function rc(t){return Na(/^\s*([-+*])\s$/,t)}function ic(t){return qa(/^```$/,t)}function nc(t,e){return qa(new RegExp("^(#{1,"+e+"})\\s$"),t,(t=>({level:t[1].length})))}function sc(t){let e=ja.concat(Oa,Sa),r;if(r=t.nodes.blockquote)e.push(tc(r));if(r=t.nodes.ordered_list)e.push(ec(r));if(r=t.nodes.bullet_list)e.push(rc(r));if(r=t.nodes.code_block)e.push(ic(r));if(r=t.nodes.heading)e.push(nc(r,6));return xa({rules:e})}function lc(t){let e=[sc(t.schema),Df(Qa(t.schema,t.mapKeys)),Df(Ch),Sh(),jh()];if(t.menuBar!==false)e.push(ba({floating:t.floatingMenu!==false,content:t.menuContent||Xa(t.schema).fullMenu}));if(t.history!==false)e.push(Jf());return e.concat(new bn({props:{attributes:{class:"ProseMirror-example-setup-style"}}}))}const oc={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 uc=Object.values(oc);const fc={Heading:"heading",one:1,two:2,three:3};const hc={Left:0,Middle:1,Right:2};const ac=(t,e)=>{t.active=t=>{const{from:r,$from:i,to:n,empty:s}=t.selection;if(s){return!!e.isInSet(t.storedMarks||i.marks())}else{return t.doc.rangeHasMark(r,n,e)}}};const cc=(t,e,r)=>{t.active=t=>{const{$from:i}=t.selection;const n=i.node(i.depth);if(n&&n.type.name===e.name){if(e.name===fc.Heading&&r){return n.attrs.level===r}return true}return false}};const dc=(t,e)=>{t.active=t=>{const{from:r,to:i}=t.selection;for(let n=r;n<=i;n++){const r=t.doc.resolve(n);for(let t=r.depth;t>0;t--){const i=r.node(t);if(i&&i.type.name===e.name){return true}}}return false}};const pc=(t,e,r)=>{const i=(e,i)=>{const{from:n,to:s}=e.selection;if(n===s){const s=t.marks.link.create({href:r.href,title:r.href,target:gc(r.href)?"_blank":null});const l=r.text||r.href;const o=t.text(l,[s]);i(e.tr.insert(n,o))}else{const l=t.marks.link.create({href:r.href,title:r.href,target:gc(r.href)?"_blank":null});const o=e.doc.textBetween(n,s," ");const u=t.text(r.text||o,[l]);i(e.tr.replaceWith(n,s,u))}return true};ac(i,t.marks.link);return i};const mc=(t,e,r)=>{const i=t.marks[e];if(!i){throw new Error(`Mark "${e}" not found in schema`)}const n=wc(e,r);const s=vh(i,n);ac(s,i);return s};const wc=(t,e)=>{if(t===oc.Link&&e.href){return{href:e.href,target:gc(e.href)?"_blank":null}}return undefined};const gc=t=>!t.startsWith(window.location.origin);const bc=(t,e,r={},i=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 Qi&&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(i){return bh(n,r)(t,e)}else{return kh(n,r)(t,e)}}}return false}};const kc=t=>{try{new URL(t)}catch(t){return false}return true};const Dc=(t,e,r)=>{const i=t.nodes[e];if(!i){throw new Error(`Node type "${e}" not found in schema`)}let n;if(e===fc.Heading&&r){n=bc(t,fc.Heading,{level:r})}else if(e===oc.CodeBlock){n=bc(t,oc.CodeBlock)}else{n=kh(i)}cc(n,i,r);return n};const vc=(t,e)=>{const r=t.nodes[e];if(!r){throw new Error(`Node type "${e}" not found in schema`)}let i;if(e===oc.Blockquote){i=bc(t,oc.Blockquote,{},true)}else{i=bh(r)}dc(i,r);return i};const yc=t=>(e,r)=>{const{$from:i,$to:n}=e.selection;const s=i.blockRange(n);if(!s){return false}const l=s&&di(s,t);if(l){if(r){r(e.tr.wrap(s,l).scrollIntoView())}return true}else{const t=s&&ai(s);if(t!==null){if(r){r(e.tr.lift(s,t).scrollIntoView())}return true}return false}};const Fc=(t,e)=>{const r=t.nodes[e];if(!r){throw new Error(`List type "${e}" not found in schema`)}const i=yc(r);dc(i,r);return i};const Ec=(t,e)=>{const{from:r,to:i}=t.selection;if(r===i){return false}const n=window.clipboardData;if(!n){return false}const s=n.getData("text");if(!kc(s)){return false}const l=t.schema.marks.link.create({href:s,target:gc(s)?"_blank":null});const o=t.doc.textBetween(r,i," ");const u=t.schema.text(o,[l]);e(t.tr.replaceWith(r,i,u))};const Mc={strong:mc,em:mc,underline:mc,strikethrough:mc,code:mc,link:pc,headerlevel1:t=>Dc(t,fc.Heading,fc.one),headerlevel2:t=>Dc(t,fc.Heading,fc.two),headerlevel3:t=>Dc(t,fc.Heading,fc.three),blockquote:t=>vc(t,oc.Blockquote),code_block:t=>Dc(t,oc.CodeBlock),ordered_list:t=>Fc(t,oc.OrderedList),bullet_list:t=>Fc(t,oc.BulletList)};class xc{constructor(t){this.schema=t}getCommand(t,e){const r=Mc[t];if(!r){throw new Error(`The Mark "${t}" is not supported`)}return r(this.schema,t,e)}buildKeymap(){return{"Mod-B":this.getCommand(oc.Bold),"Mod-I":this.getCommand(oc.Italic),"Mod-Shift-1":this.getCommand(oc.HeaderLevel1),"Mod-Shift-2":this.getCommand(oc.HeaderLevel2),"Mod-Shift-3":this.getCommand(oc.HeaderLevel3),"Mod-Shift-X":this.getCommand(oc.Strikethrough),"Mod-`":this.getCommand(oc.Code),"Mod-Shift-C":this.getCommand(oc.CodeBlock),"Mod-v":Ec}}}const Ac=()=>{const t=/Macintosh|MacIntel|MacPPC|Mac68K/;if(navigator.userAgent.match(t)){return{mod:"⌘",option:"⌥",shift:"⇧"}}return{mod:"Ctrl",option:"Alt",shift:"Shift"}};const{mod:Cc,shift:Sc}=Ac();const Oc=[{value:oc.Bold,text:"Bold",commandText:`${Cc} B`,icon:"-lime-text-bold",iconOnly:true,selected:false},{value:oc.Italic,text:"Italic",commandText:`${Cc} I`,icon:"-lime-text-italic",iconOnly:true,selected:false},{value:oc.Strikethrough,text:"Strikethrough",commandText:`${Cc} ${Sc} X`,icon:"-lime-text-strikethrough",iconOnly:true,selected:false},{value:oc.Link,text:"Link",icon:"-lime-text-link",iconOnly:true},{separator:true},{value:oc.BulletList,text:"Bullet list",icon:"-lime-text-bulleted-list",iconOnly:true,selected:false},{value:oc.OrderedList,text:"Numbered list",icon:"-lime-text-ordered-list",iconOnly:true,selected:false},{separator:true},{value:oc.HeaderLevel1,text:"Header 1",commandText:`${Cc} ${Sc} 1`,icon:"-lime-text-h-heading-1",iconOnly:true,selected:false},{value:oc.HeaderLevel2,text:"Header 2",commandText:`${Cc} ${Sc} 2`,icon:"-lime-text-h-heading-2",iconOnly:true,selected:false},{value:oc.HeaderLevel3,text:"Header 3",commandText:`${Cc} ${Sc} 3`,icon:"-lime-text-h-heading-3",iconOnly:true,selected:false},{separator:true},{value:oc.Blockquote,text:"Blockquote",icon:"-lime-text-blockquote",iconOnly:true,selected:false},{separator:true},{value:oc.Code,text:"Code",commandText:`${Cc} \``,icon:"-lime-text-code",iconOnly:true,selected:false},{value:oc.CodeBlock,text:"Code Block",commandText:`${Cc} ${Sc} C`,icon:"-lime-text-code-block",iconOnly:true,selected:false}];const $c=()=>de(Oc);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 Bc={};function Rc(t){let e=Bc[t];if(e){return e}e=Bc[t]=[];for(let t=0;t<128;t++){const r=String.fromCharCode(t);e.push(r)}for(let r=0;r<t.length;r++){const i=t.charCodeAt(r);e[i]="%"+("0"+i.toString(16).toUpperCase()).slice(-2)}return e}function jc(t,e){if(typeof e!=="string"){e=jc.defaultChars}const r=Rc(e);return t.replace(/(%[a-f0-9]{2})+/gi,(function(t){let e="";for(let i=0,n=t.length;i<n;i+=3){const s=parseInt(t.slice(i+1,i+3),16);if(s<128){e+=r[s];continue}if((s&224)===192&&i+3<n){const r=parseInt(t.slice(i+4,i+6),16);if((r&192)===128){const t=s<<6&1984|r&63;if(t<128){e+="��"}else{e+=String.fromCharCode(t)}i+=3;continue}}if((s&240)===224&&i+6<n){const r=parseInt(t.slice(i+4,i+6),16);const n=parseInt(t.slice(i+7,i+9),16);if((r&192)===128&&(n&192)===128){const t=s<<12&61440|r<<6&4032|n&63;if(t<2048||t>=55296&&t<=57343){e+="���"}else{e+=String.fromCharCode(t)}i+=6;continue}}if((s&248)===240&&i+9<n){const r=parseInt(t.slice(i+4,i+6),16);const n=parseInt(t.slice(i+7,i+9),16);const l=parseInt(t.slice(i+10,i+12),16);if((r&192)===128&&(n&192)===128&&(l&192)===128){let t=s<<18&1835008|r<<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))}i+=9;continue}}e+="�"}return e}))}jc.defaultChars=";/?:@&=+$,#";jc.componentChars="";const Nc={};function qc(t){let e=Nc[t];if(e){return e}e=Nc[t]=[];for(let t=0;t<128;t++){const r=String.fromCharCode(t);if(/^[0-9a-z]$/i.test(r)){e.push(r)}else{e.push("%"+("0"+t.toString(16).toUpperCase()).slice(-2))}}for(let r=0;r<t.length;r++){e[t.charCodeAt(r)]=t[r]}return e}function zc(t,e,r){if(typeof e!=="string"){r=e;e=zc.defaultChars}if(typeof r==="undefined"){r=true}const i=qc(e);let n="";for(let e=0,s=t.length;e<s;e++){const l=t.charCodeAt(e);if(r&&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+=i[l];continue}if(l>=55296&&l<=57343){if(l>=55296&&l<=56319&&e+1<s){const r=t.charCodeAt(e+1);if(r>=56320&&r<=57343){n+=encodeURIComponent(t[e]+t[e+1]);e++;continue}}n+="%EF%BF%BD";continue}n+=encodeURIComponent(t[e])}return n}zc.defaultChars=";/?:@&=+$,-_.!~*'()#";zc.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 Ic(){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 Pc=/^([a-z0-9.+-]+:)/i;const Jc=/:[0-9]*$/;const Lc=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;const Wc=["<",">",'"',"`"," ","\r","\n","\t"];const Uc=["{","}","|","\\","^","`"].concat(Wc);const Hc=["'"].concat(Uc);const Zc=["%","/","?",";","#"].concat(Hc);const Kc=["/","?","#"];const Vc=255;const Gc=/^[+a-z0-9A-Z_-]{0,63}$/;const Xc=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;const Yc={javascript:true,"javascript:":true};const Qc={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function td(t,e){if(t&&t instanceof Ic)return t;const r=new Ic;r.parse(t,e);return r}Ic.prototype.parse=function(t,e){let r,i,n;let s=t;s=s.trim();if(!e&&t.split("#").length===1){const t=Lc.exec(s);if(t){this.pathname=t[1];if(t[2]){this.search=t[2]}return this}}let l=Pc.exec(s);if(l){l=l[0];r=l.toLowerCase();this.protocol=l;s=s.substr(l.length)}if(e||l||s.match(/^\/\/[^@\/]+@[^@\/]+/)){n=s.substr(0,2)==="//";if(n&&!(l&&Yc[l])){s=s.substr(2);this.slashes=true}}if(!Yc[l]&&(n||l&&!Qc[l])){let t=-1;for(let e=0;e<Kc.length;e++){i=s.indexOf(Kc[e]);if(i!==-1&&(t===-1||i<t)){t=i}}let e,r;if(t===-1){r=s.lastIndexOf("@")}else{r=s.lastIndexOf("@",t)}if(r!==-1){e=s.slice(0,r);s=s.slice(r+1);this.auth=e}t=-1;for(let e=0;e<Zc.length;e++){i=s.indexOf(Zc[e]);if(i!==-1&&(t===-1||i<t)){t=i}}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,r=t.length;e<r;e++){const r=t[e];if(!r){continue}if(!r.match(Gc)){let i="";for(let t=0,e=r.length;t<e;t++){if(r.charCodeAt(t)>127){i+="x"}else{i+=r[t]}}if(!i.match(Gc)){const i=t.slice(0,e);const n=t.slice(e+1);const l=r.match(Xc);if(l){i.push(l[1]);n.unshift(l[2])}if(n.length){s=n.join(".")+s}this.hostname=i.join(".");break}}}}if(this.hostname.length>Vc){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(Qc[r]&&this.hostname&&!this.pathname){this.pathname=""}return this};Ic.prototype.parseHost=function(t){let e=Jc.exec(t);if(e){e=e[0];if(e!==":"){this.port=e.substr(1)}t=t.substr(0,t.length-e.length)}if(t){this.hostname=t}};const ed=Object.freeze({__proto__:null,decode:jc,encode:zc,format:Tc,parse:td});const rd=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;const id=/[\0-\x1F\x7F-\x9F]/;const nd=/[\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 sd=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\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 ld=/[\$\+<->\^`\|~\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 od=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;const ud=Object.freeze({__proto__:null,Any:rd,Cc:id,Cf:nd,P:sd,S:ld,Z:od});function fd(t){return Object.prototype.toString.call(t)}function hd(t){return fd(t)==="[object String]"}const ad=Object.prototype.hasOwnProperty;function cd(t,e){return ad.call(t,e)}function dd(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(r){t[r]=e[r]}))}));return t}function pd(t,e,r){return[].concat(t.slice(0,e),r,t.slice(e+1))}function md(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 wd(t){if(t>65535){t-=65536;const e=55296+(t>>10);const r=56320+(t&1023);return String.fromCharCode(e,r)}return String.fromCharCode(t)}const gd=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;const bd=/&([a-z#][a-z0-9]{1,31});/gi;const kd=new RegExp(gd.source+"|"+bd.source,"gi");const Dd=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function vd(t,e){if(e.charCodeAt(0)===35&&Dd.test(e)){const r=e[1].toLowerCase()==="x"?parseInt(e.slice(2),16):parseInt(e.slice(1),10);if(md(r)){return wd(r)}return t}const r=x(t);if(r!==t){return r}return t}function yd(t){if(t.indexOf("\\")<0){return t}return t.replace(gd,"$1")}function Fd(t){if(t.indexOf("\\")<0&&t.indexOf("&")<0){return t}return t.replace(kd,(function(t,e,r){if(e){return e}return vd(t,r)}))}const Ed=/[&<>"]/;const Md=/[&<>"]/g;const xd={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;"};function Ad(t){return xd[t]}function Cd(t){if(Ed.test(t)){return t.replace(Md,Ad)}return t}const Sd=/[.?*+^$[\]\\(){}|-]/g;function Od(t){return t.replace(Sd,"\\$&")}function $d(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 Bd(t){return sd.test(t)||ld.test(t)}function Rd(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 Nd={mdurl:ed,ucmicro:ud};const qd=Object.freeze({__proto__:null,lib:Nd,assign:dd,isString:hd,has:cd,unescapeMd:yd,unescapeAll:Fd,isValidEntityCode:md,fromCodePoint:wd,escapeHtml:Cd,arrayReplaceAt:pd,isSpace:$d,isWhiteSpace:_d,isMdAsciiPunct:Rd,isPunctChar:Bd,escapeRE:Od,normalizeReference:jd});function zd(t,e,r){let i,n,s,l;const o=t.posMax;const u=t.pos;t.pos=e+1;i=1;while(t.pos<o){s=t.src.charCodeAt(t.pos);if(s===93){i--;if(i===0){n=true;break}}l=t.pos;t.md.inline.skipToken(t);if(s===91){if(l===t.pos-1){i++}else if(r){t.pos=u;return-1}}}let f=-1;if(n){f=t.pos}t.pos=u;return f}function Td(t,e,r){let i;let n=e;const s={ok:false,pos:0,str:""};if(t.charCodeAt(n)===60){n++;while(n<r){i=t.charCodeAt(n);if(i===10){return s}if(i===60){return s}if(i===62){s.pos=n+1;s.str=Fd(t.slice(e+1,n));s.ok=true;return s}if(i===92&&n+1<r){n+=2;continue}n++}return s}let l=0;while(n<r){i=t.charCodeAt(n);if(i===32){break}if(i<32||i===127){break}if(i===92&&n+1<r){if(t.charCodeAt(n+1)===32){break}n+=2;continue}if(i===40){l++;if(l>32){return s}}if(i===41){if(l===0){break}l--}n++}if(e===n){return s}if(l!==0){return s}s.str=Fd(t.slice(e,n));s.pos=n;s.ok=true;return s}function Id(t,e,r,i){let n;let s=e;const l={ok:false,can_continue:false,pos:0,str:"",marker:0};if(i){l.str=i.str;l.marker=i.marker}else{if(s>=r){return l}let i=t.charCodeAt(s);if(i!==34&&i!==39&&i!==40){return l}e++;s++;if(i===40){i=41}l.marker=i}while(s<r){n=t.charCodeAt(s);if(n===l.marker){l.pos=s+1;l.str+=Fd(t.slice(e,s));l.ok=true;return l}else if(n===40&&l.marker===41){return l}else if(n===92&&s+1<r){s++}s++}l.can_continue=true;l.str+=Fd(t.slice(e,s));return l}const Pd=Object.freeze({__proto__:null,parseLinkLabel:zd,parseLinkDestination:Td,parseLinkTitle:Id});const Jd={};Jd.code_inline=function(t,e,r,i,n){const s=t[e];return"<code"+n.renderAttrs(s)+">"+Cd(s.content)+"</code>"};Jd.code_block=function(t,e,r,i,n){const s=t[e];return"<pre"+n.renderAttrs(s)+"><code>"+Cd(t[e].content)+"</code></pre>\n"};Jd.fence=function(t,e,r,i,n){const s=t[e];const l=s.info?Fd(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(r.highlight){f=r.highlight(s.content,o,u)||Cd(s.content)}else{f=Cd(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",r.langPrefix+o])}else{e[t]=e[t].slice();e[t][1]+=" "+r.langPrefix+o}const i={attrs:e};return`<pre><code${n.renderAttrs(i)}>${f}</code></pre>\n`}return`<pre><code${n.renderAttrs(s)}>${f}</code></pre>\n`};Jd.image=function(t,e,r,i,n){const s=t[e];s.attrs[s.attrIndex("alt")][1]=n.renderInlineAsText(s.children,r,i);return n.renderToken(t,e,r)};Jd.hardbreak=function(t,e,r){return r.xhtmlOut?"<br />\n":"<br>\n"};Jd.softbreak=function(t,e,r){return r.breaks?r.xhtmlOut?"<br />\n":"<br>\n":"\n"};Jd.text=function(t,e){return Cd(t[e].content)};Jd.html_block=function(t,e){return t[e].content};Jd.html_inline=function(t,e){return t[e].content};function Ld(){this.rules=dd({},Jd)}Ld.prototype.renderAttrs=function t(e){let r,i,n;if(!e.attrs){return""}n="";for(r=0,i=e.attrs.length;r<i;r++){n+=" "+Cd(e.attrs[r][0])+'="'+Cd(e.attrs[r][1])+'"'}return n};Ld.prototype.renderToken=function t(e,r,i){const n=e[r];let s="";if(n.hidden){return""}if(n.block&&n.nesting!==-1&&r&&e[r-1].hidden){s+="\n"}s+=(n.nesting===-1?"</":"<")+n.tag;s+=this.renderAttrs(n);if(n.nesting===0&&i.xhtmlOut){s+=" /"}let l=false;if(n.block){l=true;if(n.nesting===1){if(r+1<e.length){const t=e[r+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};Ld.prototype.renderInline=function(t,e,r){let i="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(typeof n[l]!=="undefined"){i+=n[l](t,s,e,r,this)}else{i+=this.renderToken(t,s,e)}}return i};Ld.prototype.renderInlineAsText=function(t,e,r){let i="";for(let n=0,s=t.length;n<s;n++){switch(t[n].type){case"text":i+=t[n].content;break;case"image":i+=this.renderInlineAsText(t[n].children,e,r);break;case"html_inline":case"html_block":i+=t[n].content;break;case"softbreak":case"hardbreak":i+="\n";break}}return i};Ld.prototype.render=function(t,e,r){let i="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(l==="inline"){i+=this.renderInline(t[s].children,e,r)}else if(typeof n[l]!=="undefined"){i+=n[l](t,s,e,r,this)}else{i+=this.renderToken(t,s,e,r)}}return i};function Wd(){this.__rules__=[];this.__cache__=null}Wd.prototype.__find__=function(t){for(let e=0;e<this.__rules__.length;e++){if(this.__rules__[e].name===t){return e}}return-1};Wd.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(r){if(!r.enabled){return}if(e&&r.alt.indexOf(e)<0){return}t.__cache__[e].push(r.fn)}))}))};Wd.prototype.at=function(t,e,r){const i=this.__find__(t);const n=r||{};if(i===-1){throw new Error("Parser rule not found: "+t)}this.__rules__[i].fn=e;this.__rules__[i].alt=n.alt||[];this.__cache__=null};Wd.prototype.before=function(t,e,r,i){const n=this.__find__(t);const s=i||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n,0,{name:e,enabled:true,fn:r,alt:s.alt||[]});this.__cache__=null};Wd.prototype.after=function(t,e,r,i){const n=this.__find__(t);const s=i||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n+1,0,{name:e,enabled:true,fn:r,alt:s.alt||[]});this.__cache__=null};Wd.prototype.push=function(t,e,r){const i=r||{};this.__rules__.push({name:t,enabled:true,fn:e,alt:i.alt||[]});this.__cache__=null};Wd.prototype.enable=function(t,e){if(!Array.isArray(t)){t=[t]}const r=[];t.forEach((function(t){const i=this.__find__(t);if(i<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[i].enabled=true;r.push(t)}),this);this.__cache__=null;return r};Wd.prototype.enableOnly=function(t,e){if(!Array.isArray(t)){t=[t]}this.__rules__.forEach((function(t){t.enabled=false}));this.enable(t,e)};Wd.prototype.disable=function(t,e){if(!Array.isArray(t)){t=[t]}const r=[];t.forEach((function(t){const i=this.__find__(t);if(i<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[i].enabled=false;r.push(t)}),this);this.__cache__=null;return r};Wd.prototype.getRules=function(t){if(this.__cache__===null){this.__compile__()}return this.__cache__[t]||[]};function Ud(t,e,r){this.type=t;this.tag=e;this.attrs=null;this.map=null;this.nesting=r;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 r=this.attrs;for(let t=0,i=r.length;t<i;t++){if(r[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,r){const i=this.attrIndex(e);const n=[e,r];if(i<0){this.attrPush(n)}else{this.attrs[i]=n}};Ud.prototype.attrGet=function t(e){const r=this.attrIndex(e);let i=null;if(r>=0){i=this.attrs[r][1]}return i};Ud.prototype.attrJoin=function t(e,r){const i=this.attrIndex(e);if(i<0){this.attrPush([e,r])}else{this.attrs[i][1]=this.attrs[i][1]+" "+r}};function Hd(t,e,r){this.src=t;this.env=r;this.tokens=[];this.inlineMode=false;this.md=e}Hd.prototype.Token=Ud;const Zd=/\r\n?|\n/g;const Kd=/\0/g;function Vd(t){let e;e=t.src.replace(Zd,"\n");e=e.replace(Kd,"�");t.src=e}function Gd(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 Xd(t){const e=t.tokens;for(let r=0,i=e.length;r<i;r++){const i=e[r];if(i.type==="inline"){t.md.inline.parse(i.content,t.md,t.env,i.children)}}}function Yd(t){return/^<a[>\s]/i.test(t)}function Qd(t){return/^<\/a\s*>/i.test(t)}function tp(t){const e=t.tokens;if(!t.md.options.linkify){return}for(let r=0,i=e.length;r<i;r++){if(e[r].type!=="inline"||!t.md.linkify.pretest(e[r].content)){continue}let i=e[r].children;let n=0;for(let s=i.length-1;s>=0;s--){const l=i[s];if(l.type==="link_close"){s--;while(i[s].level!==l.level&&i[s].type!=="link_open"){s--}continue}if(l.type==="html_inline"){if(Yd(l.content)&&n>0){n--}if(Qd(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&&i[s-1].type==="text_special"){o=o.slice(1)}for(let e=0;e<o.length;e++){const r=o[e].url;const i=t.md.normalizeLink(r);if(!t.md.validateLink(i)){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",i]];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[r].children=i=pd(i,s,u)}}}}const ep=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/;const rp=/\((c|tm|r)\)/i;const ip=/\((c|tm|r)\)/gi;const np={c:"©",r:"®",tm:"™"};function sp(t,e){return np[e.toLowerCase()]}function lp(t){let e=0;for(let r=t.length-1;r>=0;r--){const i=t[r];if(i.type==="text"&&!e){i.content=i.content.replace(ip,sp)}if(i.type==="link_open"&&i.info==="auto"){e--}if(i.type==="link_close"&&i.info==="auto"){e++}}}function op(t){let e=0;for(let r=t.length-1;r>=0;r--){const i=t[r];if(i.type==="text"&&!e){if(ep.test(i.content)){i.content=i.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(i.type==="link_open"&&i.info==="auto"){e--}if(i.type==="link_close"&&i.info==="auto"){e++}}}function up(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(rp.test(t.tokens[e].content)){lp(t.tokens[e].children)}if(ep.test(t.tokens[e].content)){op(t.tokens[e].children)}}}const fp=/['"]/;const hp=/['"]/g;const ap="’";function cp(t,e,r){return t.slice(0,e)+r+t.slice(e+1)}function dp(t,e){let r;const i=[];for(let n=0;n<t.length;n++){const s=t[n];const l=t[n].level;for(r=i.length-1;r>=0;r--){if(i[r].level<=l){break}}i.length=r+1;if(s.type!=="text"){continue}let o=s.content;let u=0;let f=o.length;t:while(u<f){hp.lastIndex=u;const h=hp.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(r=n-1;r>=0;r--){if(t[r].type==="softbreak"||t[r].type==="hardbreak")break;if(!t[r].content)continue;p=t[r].content.charCodeAt(t[r].content.length-1);break}}let m=32;if(u<f){m=o.charCodeAt(u)}else{for(r=n+1;r<t.length;r++){if(t[r].type==="softbreak"||t[r].type==="hardbreak")break;if(!t[r].content)continue;m=t[r].content.charCodeAt(0);break}}const w=Rd(p)||Bd(String.fromCharCode(p));const g=Rd(m)||Bd(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=cp(s.content,h.index,ap)}continue}if(c){for(r=i.length-1;r>=0;r--){let a=i[r];if(i[r].level<l){break}if(a.single===d&&i[r].level===l){a=i[r];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=cp(s.content,h.index,c);t[a.token].content=cp(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;i.length=r;continue t}}}if(a){i.push({token:n,pos:h.index,single:d,level:l})}else if(c&&d){s.content=cp(s.content,h.index,ap)}}}}function pp(t){if(!t.md.options.typographer){return}for(let e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"||!fp.test(t.tokens[e].content)){continue}dp(t.tokens[e].children,t)}}function mp(t){let e,r;const i=t.tokens;const n=i.length;for(let t=0;t<n;t++){if(i[t].type!=="inline")continue;const n=i[t].children;const s=n.length;for(e=0;e<s;e++){if(n[e].type==="text_special"){n[e].type="text"}}for(e=r=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!==r){n[r]=n[e]}r++}}if(e!==r){n.length=r}}}const wp=[["normalize",Vd],["block",Gd],["inline",Xd],["linkify",tp],["replacements",up],["smartquotes",pp],["text_join",mp]];function gp(){this.ruler=new Wd;for(let t=0;t<wp.length;t++){this.ruler.push(wp[t][0],wp[t][1])}}gp.prototype.process=function(t){const e=this.ruler.getRules("");for(let r=0,i=e.length;r<i;r++){e[r](t)}};gp.prototype.State=Hd;function bp(t,e,r,i){this.src=t;this.md=e;this.env=r;this.tokens=i;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,r=0,i=0,s=n.length,l=false;e<s;e++){const o=n.charCodeAt(e);if(!l){if($d(o)){r++;if(o===9){i+=4-i%4}else{i++}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(r);this.sCount.push(i);this.bsCount.push(0);l=false;r=0;i=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}bp.prototype.push=function(t,e,r){const i=new Ud(t,e,r);i.block=true;if(r<0)this.level--;i.level=this.level;if(r>0)this.level++;this.tokens.push(i);return i};bp.prototype.isEmpty=function t(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]};bp.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};bp.prototype.skipSpaces=function t(e){for(let t=this.src.length;e<t;e++){const t=this.src.charCodeAt(e);if(!$d(t)){break}}return e};bp.prototype.skipSpacesBack=function t(e,r){if(e<=r){return e}while(e>r){if(!$d(this.src.charCodeAt(--e))){return e+1}}return e};bp.prototype.skipChars=function t(e,r){for(let t=this.src.length;e<t;e++){if(this.src.charCodeAt(e)!==r){break}}return e};bp.prototype.skipCharsBack=function t(e,r,i){if(e<=i){return e}while(e>i){if(r!==this.src.charCodeAt(--e)){return e+1}}return e};bp.prototype.getLines=function t(e,r,i,n){if(e>=r){return""}const s=new Array(r-e);for(let t=0,l=e;l<r;l++,t++){let e=0;const o=this.bMarks[l];let u=o;let f;if(l+1<r||n){f=this.eMarks[l]+1}else{f=this.eMarks[l]}while(u<f&&e<i){const t=this.src.charCodeAt(u);if($d(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>i){s[t]=new Array(e-i+1).join(" ")+this.src.slice(u,f)}else{s[t]=this.src.slice(u,f)}}return s.join("")};bp.prototype.Token=Ud;const kp=65536;function Dp(t,e){const r=t.bMarks[e]+t.tShift[e];const i=t.eMarks[e];return t.src.slice(r,i)}function vp(t){const e=[];const r=t.length;let i=0;let n=t.charCodeAt(i);let s=false;let l=0;let o="";while(i<r){if(n===124){if(!s){e.push(o+t.substring(l,i));o="";l=i+1}else{o+=t.substring(l,i-1);l=i}}s=n===92;i++;n=t.charCodeAt(i)}e.push(o+t.substring(l));return e}function yp(t,e,r,i){if(e+2>r){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&&!$d(o)){return false}if(l===45&&$d(o)){return false}while(s<t.eMarks[n]){const e=t.src.charCodeAt(s);if(e!==124&&e!==45&&e!==58&&!$d(e)){return false}s++}let u=Dp(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=Dp(t,e).trim();if(u.indexOf("|")===-1){return false}if(t.sCount[e]-t.blkIndent>=4){return false}f=vp(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(i){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 r=t.push("th_open","th",1);if(h[e]){r.attrs=[["style","text-align:"+h[e]]]}const i=t.push("inline","",0);i.content=f[e].trim();i.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<r;n++){if(t.sCount[n]<t.blkIndent){break}let i=false;for(let e=0,s=d.length;e<s;e++){if(d[e](t,n,r,true)){i=true;break}}if(i){break}u=Dp(t,n).trim();if(!u){break}if(t.sCount[n]-t.blkIndent>=4){break}f=vp(u);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();k+=a-f.length;if(k>kp){break}if(n===e+2){const r=t.push("tbody_open","tbody",1);r.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 r=t.push("td_open","td",1);if(h[e]){r.attrs=[["style","text-align:"+h[e]]]}const i=t.push("inline","",0);i.content=f[e]?f[e].trim():"";i.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 Fp(t,e,r){if(t.sCount[e]-t.blkIndent<4){return false}let i=e+1;let n=i;while(i<r){if(t.isEmpty(i)){i++;continue}if(t.sCount[i]-t.blkIndent>=4){i++;n=i;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 Ep(t,e,r,i){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(i){return true}let a=e;let c=false;for(;;){a++;if(a>=r){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 Mp(t,e,r,i){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(i){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<r;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 r;let i;if(t.src.charCodeAt(n)===32){n++;e++;i=false;r=true}else if(t.src.charCodeAt(n)===9){r=true;if((t.bsCount[p]+e)%4===3){n++;e++;i=false}else{i=true}}else{r=false}let l=e;o.push(t.bMarks[p]);t.bMarks[p]=n;while(n<s){const e=t.src.charCodeAt(n);if($d(e)){if(e===9){l+=4-(l+t.bsCount[p]+(i?1:0))%4}else{l++}}else{break}n++}d=n>=s;u.push(t.bsCount[p]);t.bsCount[p]=t.sCount[p]+1+(r?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 i=false;for(let e=0,n=a.length;e<n;e++){if(a[e](t,p,r,true)){i=true;break}}if(i){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 r=0;r<h.length;r++){t.bMarks[r+e]=o[r];t.tShift[r+e]=h[r];t.sCount[r+e]=f[r];t.bsCount[r+e]=u[r]}t.blkIndent=m;return true}function xp(t,e,r,i){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&&!$d(e)){return false}if(e===l){o++}}if(o<3){return false}if(i){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 Ap(t,e){const r=t.eMarks[e];let i=t.bMarks[e]+t.tShift[e];const n=t.src.charCodeAt(i++);if(n!==42&&n!==45&&n!==43){return-1}if(i<r){const e=t.src.charCodeAt(i);if(!$d(e)){return-1}}return i}function Cp(t,e){const r=t.bMarks[e]+t.tShift[e];const i=t.eMarks[e];let n=r;if(n+1>=i){return-1}let s=t.src.charCodeAt(n++);if(s<48||s>57){return-1}for(;;){if(n>=i){return-1}s=t.src.charCodeAt(n++);if(s>=48&&s<=57){if(n-r>=10){return-1}continue}if(s===41||s===46){break}return-1}if(n<i){s=t.src.charCodeAt(n);if(!$d(s)){return-1}}return n}function Sp(t,e){const r=t.level+2;for(let i=e+2,n=t.tokens.length-2;i<n;i++){if(t.tokens[i].level===r&&t.tokens[i].type==="paragraph_open"){t.tokens[i+2].hidden=true;t.tokens[i].hidden=true;i+=2}}}function Op(t,e,r,i){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(i&&t.parentType==="paragraph"){if(t.sCount[u]>=t.blkIndent){h=true}}let a;let c;let d;if((d=Cp(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=Ap(t,u))>=0){a=false}else{return false}if(h){if(t.skipSpaces(d)>=t.eMarks[u])return false}if(i){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<r){s=d;n=t.eMarks[u];const e=t.sCount[u]+d-(t.bMarks[u]+t.tShift[u]);let i=e;while(s<n){const e=t.src.charCodeAt(s);if(e===9){i+=4-(i+t.bsCount[u])%4}else if(e===32){i++}else{break}s++}const h=s;let c;if(h>=n){c=1}else{c=i-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]=i;if(h>=n&&t.isEmpty(u+1)){t.line=Math.min(t.line+2,r)}else{t.md.block.tokenize(t,u,r,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>=r){break}if(t.sCount[u]<t.blkIndent){break}if(t.sCount[u]-t.blkIndent>=4){break}let F=false;for(let e=0,i=b.length;e<i;e++){if(b[e](t,u,r,true)){F=true;break}}if(F){break}if(a){d=Cp(t,u);if(d<0){break}l=t.bMarks[u]+t.tShift[u]}else{d=Ap(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){Sp(t,m)}return true}function $p(t,e,r,i){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 r=t.lineMax;if(e>=r||t.isEmpty(e)){return null}let i=false;if(t.sCount[e]-t.blkIndent>3){i=true}if(t.sCount[e]<0){i=true}if(!i){const i=t.md.block.ruler.getRules("reference");const n=t.parentType;t.parentType="reference";let s=false;for(let n=0,l=i.length;n<l;n++){if(i[n](t,e,r,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($d(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($d(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(!$d(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(!$d(t)){break}n++}}}if(n<s&&u.charCodeAt(n)!==10){return false}const g=jd(u.slice(1,f));if(!g){return false}if(i){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 Bp="[a-zA-Z_:][a-zA-Z0-9:._-]*";const Rp="[^\"'=<>`\\x00-\\x20]+";const jp="'[^']*'";const Np='"[^"]*"';const qp="(?:"+Rp+"|"+jp+"|"+Np+")";const zp="(?:\\s+"+Bp+"(?:\\s*=\\s*"+qp+")?)";const Tp="<[A-Za-z][A-Za-z0-9\\-]*"+zp+"*\\s*\\/?>";const Ip="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>";const Pp="\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e";const Jp="<[?][\\s\\S]*?[?]>";const Lp="<![A-Za-z][^>]*>";const Wp="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>";const Up=new RegExp("^(?:"+Tp+"|"+Ip+"|"+Pp+"|"+Jp+"|"+Lp+"|"+Wp+")");const Hp=new RegExp("^(?:"+Tp+"|"+Ip+")");const Zp=[[/^<(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(Hp.source+"\\s*$"),/^$/,false]];function Kp(t,e,r,i){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<Zp.length;o++){if(Zp[o][0].test(l)){break}}if(o===Zp.length){return false}if(i){return Zp[o][2]}let u=e+1;if(!Zp[o][1].test(l)){for(;u<r;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(Zp[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 Vp(t,e,r,i){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&&!$d(l)){return false}if(i){return true}s=t.skipSpacesBack(s,n);const u=t.skipCharsBack(s,35,n);if(u>n&&$d(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 Gp(t,e,r){const i=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<r&&!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 r=t.eMarks[o];if(e<r){l=t.src.charCodeAt(e);if(l===45||l===61){e=t.skipChars(e,l);e=t.skipSpaces(e);if(e>=r){s=l===61?1:2;break}}}}if(t.sCount[o]<0){continue}let e=false;for(let n=0,s=i.length;n<s;n++){if(i[n](t,o,r,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 Xp(t,e,r){const i=t.md.block.ruler.getRules("paragraph");const n=t.parentType;let s=e+1;t.parentType="paragraph";for(;s<r&&!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=i.length;n<l;n++){if(i[n](t,s,r,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 Yp=[["table",yp,["paragraph","reference"]],["code",Fp],["fence",Ep,["paragraph","reference","blockquote","list"]],["blockquote",Mp,["paragraph","reference","blockquote","list"]],["hr",xp,["paragraph","reference","blockquote","list"]],["list",Op,["paragraph","reference","blockquote"]],["reference",$p],["html_block",Kp,["paragraph","reference","blockquote"]],["heading",Vp,["paragraph","reference","blockquote"]],["lheading",Gp],["paragraph",Xp]];function Qp(){this.ruler=new Wd;for(let t=0;t<Yp.length;t++){this.ruler.push(Yp[t][0],Yp[t][1],{alt:(Yp[t][2]||[]).slice()})}}Qp.prototype.tokenize=function(t,e,r){const i=this.ruler.getRules("");const n=i.length;const s=t.md.options.maxNesting;let l=e;let o=false;while(l<r){t.line=l=t.skipEmptyLines(l);if(l>=r){break}if(t.sCount[l]<t.blkIndent){break}if(t.level>=s){t.line=r;break}const e=t.line;let u=false;for(let s=0;s<n;s++){u=i[s](t,l,r,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<r&&t.isEmpty(l)){o=true;l++;t.line=l}}};Qp.prototype.parse=function(t,e,r,i){if(!t){return}const n=new this.State(t,e,r,i);this.tokenize(n,n.line,n.lineMax)};Qp.prototype.State=bp;function tm(t,e,r,i){this.src=t;this.env=r;this.md=e;this.tokens=i;this.tokens_meta=Array(i.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}tm.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};tm.prototype.push=function(t,e,r){if(this.pending){this.pushPending()}const i=new Ud(t,e,r);let n=null;if(r<0){this.level--;this.delimiters=this._prev_delimiters.pop()}i.level=this.level;if(r>0){this.level++;this._prev_delimiters.push(this.delimiters);this.delimiters=[];n={delimiters:this.delimiters}}this.pendingLevel=this.level;this.tokens.push(i);this.tokens_meta.push(n);return i};tm.prototype.scanDelims=function(t,e){const r=this.posMax;const i=this.src.charCodeAt(t);const n=t>0?this.src.charCodeAt(t-1):32;let s=t;while(s<r&&this.src.charCodeAt(s)===i){s++}const l=s-t;const o=s<r?this.src.charCodeAt(s):32;const u=Rd(n)||Bd(String.fromCharCode(n));const f=Rd(o)||Bd(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}};tm.prototype.Token=Ud;function em(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 rm(t,e){let r=t.pos;while(r<t.posMax&&!em(t.src.charCodeAt(r))){r++}if(r===t.pos){return false}if(!e){t.pending+=t.src.slice(t.pos,r)}t.pos=r;return true}const im=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function nm(t,e){if(!t.md.options.linkify)return false;if(t.linkLevel>0)return false;const r=t.pos;const i=t.posMax;if(r+3>i)return false;if(t.src.charCodeAt(r)!==58)return false;if(t.src.charCodeAt(r+1)!==47)return false;if(t.src.charCodeAt(r+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(r-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 r=t.push("text","",0);r.content=t.md.normalizeLinkText(o);const i=t.push("link_close","a",-1);i.markup="linkify";i.info="auto"}t.pos+=o.length-s.length;return true}function sm(t,e){let r=t.pos;if(t.src.charCodeAt(r)!==10){return false}const i=t.pending.length-1;const n=t.posMax;if(!e){if(i>=0&&t.pending.charCodeAt(i)===32){if(i>=1&&t.pending.charCodeAt(i-1)===32){let e=i-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)}}r++;while(r<n&&$d(t.src.charCodeAt(r))){r++}t.pos=r;return true}const lm=[];for(let t=0;t<256;t++){lm.push(0)}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(t){lm[t.charCodeAt(0)]=1}));function om(t,e){let r=t.pos;const i=t.posMax;if(t.src.charCodeAt(r)!==92)return false;r++;if(r>=i)return false;let n=t.src.charCodeAt(r);if(n===10){if(!e){t.push("hardbreak","br",0)}r++;while(r<i){n=t.src.charCodeAt(r);if(!$d(n))break;r++}t.pos=r;return true}let s=t.src[r];if(n>=55296&&n<=56319&&r+1<i){const e=t.src.charCodeAt(r+1);if(e>=56320&&e<=57343){s+=t.src[r+1];r++}}const l="\\"+s;if(!e){const e=t.push("text_special","",0);if(n<256&&lm[n]!==0){e.content=s}else{e.content=l}e.markup=l;e.info="escape"}t.pos=r+1;return true}function um(t,e){let r=t.pos;const i=t.src.charCodeAt(r);if(i!==96){return false}const n=r;r++;const s=t.posMax;while(r<s&&t.src.charCodeAt(r)===96){r++}const l=t.src.slice(n,r);const o=l.length;if(t.backticksScanned&&(t.backticks[o]||0)<=n){if(!e)t.pending+=l;t.pos+=o;return true}let u=r;let f;while((f=t.src.indexOf("`",u))!==-1){u=f+1;while(u<s&&t.src.charCodeAt(u)===96){u++}const i=u-f;if(i===o){if(!e){const e=t.push("code_inline","code",0);e.markup=l;e.content=t.src.slice(r,f).replace(/\n/g," ").replace(/^ (.+) $/,"$1")}t.pos=u;return true}t.backticks[i]=f}t.backticksScanned=true;if(!e)t.pending+=l;t.pos+=o;return true}function fm(t,e){const r=t.pos;const i=t.src.charCodeAt(r);if(e){return false}if(i!==126){return false}const n=t.scanDelims(t.pos,true);let s=n.length;const l=String.fromCharCode(i);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:i,length:0,token:t.tokens.length-1,end:-1,open:n.can_open,close:n.can_close})}t.pos+=n.length;return true}function hm(t,e){let r;const i=[];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];r=t.tokens[n.token];r.type="s_open";r.tag="s";r.nesting=1;r.markup="~~";r.content="";r=t.tokens[l.token];r.type="s_close";r.tag="s";r.nesting=-1;r.markup="~~";r.content="";if(t.tokens[l.token-1].type==="text"&&t.tokens[l.token-1].content==="~"){i.push(l.token-1)}}while(i.length){const e=i.pop();let n=e+1;while(n<t.tokens.length&&t.tokens[n].type==="s_close"){n++}n--;if(e!==n){r=t.tokens[n];t.tokens[n]=t.tokens[e];t.tokens[e]=r}}}function am(t){const e=t.tokens_meta;const r=t.tokens_meta.length;hm(t,t.delimiters);for(let i=0;i<r;i++){if(e[i]&&e[i].delimiters){hm(t,e[i].delimiters)}}}const cm={tokenize:fm,postProcess:am};function dm(t,e){const r=t.pos;const i=t.src.charCodeAt(r);if(e){return false}if(i!==95&&i!==42){return false}const n=t.scanDelims(t.pos,i===42);for(let e=0;e<n.length;e++){const e=t.push("text","",0);e.content=String.fromCharCode(i);t.delimiters.push({marker:i,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 pm(t,e){const r=e.length;for(let i=r-1;i>=0;i--){const r=e[i];if(r.marker!==95&&r.marker!==42){continue}if(r.end===-1){continue}const n=e[r.end];const s=i>0&&e[i-1].end===r.end+1&&e[i-1].marker===r.marker&&e[i-1].token===r.token-1&&e[r.end+1].token===n.token+1;const l=String.fromCharCode(r.marker);const o=t.tokens[r.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[i-1].token].content="";t.tokens[e[r.end+1].token].content="";i--}}}function mm(t){const e=t.tokens_meta;const r=t.tokens_meta.length;pm(t,t.delimiters);for(let i=0;i<r;i++){if(e[i]&&e[i].delimiters){pm(t,e[i].delimiters)}}}const wm={tokenize:dm,postProcess:mm};function gm(t,e){let r,i,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++){r=t.src.charCodeAt(p);if(!$d(r)&&r!==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++){r=t.src.charCodeAt(p);if(!$d(r)&&r!==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++){r=t.src.charCodeAt(p);if(!$d(r)&&r!==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){i=t.src.slice(u,p++)}else{p=d+1}}else{p=d+1}if(!i){i=t.src.slice(c,d)}s=t.env.references[jd(i)];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 r=[["href",l]];e.attrs=r;if(o){r.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 bm(t,e){let r,i,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++){r=t.src.charCodeAt(s);if(!$d(r)&&r!==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++){r=t.src.charCodeAt(s);if(!$d(r)&&r!==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++){r=t.src.charCodeAt(s);if(!$d(r)&&r!==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){i=t.src.slice(d,p);const e=[];t.md.inline.parse(i,t.md,t.env,e);const r=t.push("image","img",0);const n=[["src",h],["alt",""]];r.attrs=n;r.children=e;r.content=i;if(u){n.push(["title",u])}}t.pos=s;t.posMax=c;return true}const km=/^([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 Dm=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function vm(t,e){let r=t.pos;if(t.src.charCodeAt(r)!==60){return false}const i=t.pos;const n=t.posMax;for(;;){if(++r>=n)return false;const e=t.src.charCodeAt(r);if(e===60)return false;if(e===62)break}const s=t.src.slice(i+1,r);if(Dm.test(s)){const r=t.md.normalizeLink(s);if(!t.md.validateLink(r)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",r]];e.markup="autolink";e.info="auto";const i=t.push("text","",0);i.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(km.test(s)){const r=t.md.normalizeLink("mailto:"+s);if(!t.md.validateLink(r)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",r]];e.markup="autolink";e.info="auto";const i=t.push("text","",0);i.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 ym(t){return/^<a[>\s]/i.test(t)}function Fm(t){return/^<\/a\s*>/i.test(t)}function Em(t){const e=t|32;return e>=97&&e<=122}function Mm(t,e){if(!t.md.options.html){return false}const r=t.posMax;const i=t.pos;if(t.src.charCodeAt(i)!==60||i+2>=r){return false}const n=t.src.charCodeAt(i+1);if(n!==33&&n!==63&&n!==47&&!Em(n)){return false}const s=t.src.slice(i).match(Up);if(!s){return false}if(!e){const e=t.push("html_inline","",0);e.content=s[0];if(ym(e.content))t.linkLevel++;if(Fm(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 Am=/^&([a-z][a-z0-9]{1,31});/i;function Cm(t,e){const r=t.pos;const i=t.posMax;if(t.src.charCodeAt(r)!==38)return false;if(r+1>=i)return false;const n=t.src.charCodeAt(r+1);if(n===35){const i=t.src.slice(r).match(xm);if(i){if(!e){const e=i[1][0].toLowerCase()==="x"?parseInt(i[1].slice(1),16):parseInt(i[1],10);const r=t.push("text_special","",0);r.content=md(e)?wd(e):wd(65533);r.markup=i[0];r.info="entity"}t.pos+=i[0].length;return true}}else{const i=t.src.slice(r).match(Am);if(i){const r=x(i[0]);if(r!==i[0]){if(!e){const e=t.push("text_special","",0);e.content=r;e.markup=i[0];e.info="entity"}t.pos+=i[0].length;return true}}}return false}function Sm(t){const e={};const r=t.length;if(!r)return;let i=0;let n=-2;const s=[];for(let l=0;l<r;l++){const r=t[l];s.push(0);if(t[i].marker!==r.marker||n!==r.token-1){i=l}n=r.token;r.length=r.length||0;if(!r.close)continue;if(!e.hasOwnProperty(r.marker)){e[r.marker]=[-1,-1,-1,-1,-1,-1]}const o=e[r.marker][(r.open?3:0)+r.length%3];let u=i-s[i]-1;let f=u;for(;u>o;u-=s[u]+1){const e=t[u];if(e.marker!==r.marker)continue;if(e.open&&e.end<0){let i=false;if(e.close||r.open){if((e.length+r.length)%3===0){if(e.length%3!==0||r.length%3!==0){i=true}}}if(!i){const i=u>0&&!t[u-1].open?s[u-1]+1:0;s[l]=l-u+i;s[u]=i;r.open=false;e.end=l;e.close=false;f=-1;n=-2;break}}}if(f!==-1){e[r.marker][(r.open?3:0)+(r.length||0)%3]=f}}}function Om(t){const e=t.tokens_meta;const r=t.tokens_meta.length;Sm(t.delimiters);for(let t=0;t<r;t++){if(e[t]&&e[t].delimiters){Sm(e[t].delimiters)}}}function $m(t){let e,r;let i=0;const n=t.tokens;const s=t.tokens.length;for(e=r=0;e<s;e++){if(n[e].nesting<0)i--;n[e].level=i;if(n[e].nesting>0)i++;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!==r){n[r]=n[e]}r++}}if(e!==r){n.length=r}}const _m=[["text",rm],["linkify",nm],["newline",sm],["escape",om],["backticks",um],["strikethrough",cm.tokenize],["emphasis",wm.tokenize],["link",gm],["image",bm],["autolink",vm],["html_inline",Mm],["entity",Cm]];const Bm=[["balance_pairs",Om],["strikethrough",cm.postProcess],["emphasis",wm.postProcess],["fragments_join",$m]];function Rm(){this.ruler=new Wd;for(let t=0;t<_m.length;t++){this.ruler.push(_m[t][0],_m[t][1])}this.ruler2=new Wd;for(let t=0;t<Bm.length;t++){this.ruler2.push(Bm[t][0],Bm[t][1])}}Rm.prototype.skipToken=function(t){const e=t.pos;const r=this.ruler.getRules("");const i=r.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<i;n++){t.level++;l=r[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};Rm.prototype.tokenize=function(t){const e=this.ruler.getRules("");const r=e.length;const i=t.posMax;const n=t.md.options.maxNesting;while(t.pos<i){const s=t.pos;let l=false;if(t.level<n){for(let i=0;i<r;i++){l=e[i](t,false);if(l){if(s>=t.pos){throw new Error("inline rule didn't increment state.pos")}break}}}if(l){if(t.pos>=i){break}continue}t.pending+=t.src[t.pos++]}if(t.pending){t.pushPending()}};Rm.prototype.parse=function(t,e,r,i){const n=new this.State(t,e,r,i);this.tokenize(n);const s=this.ruler2.getRules("");const l=s.length;for(let t=0;t<l;t++){s[t](n)}};Rm.prototype.State=tm;function jm(t){const e={};t=t||{};e.src_Any=rd.source;e.src_Cc=id.source;e.src_Z=od.source;e.src_P=sd.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 r="[><|]";e.src_pseudo_letter="(?:(?!"+r+"|"+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="(?=$|"+r+"|"+e.src_ZPCc+")"+"(?!"+(t["---"]?"-(?!--)|":"-|")+"_|:\\d|\\.-|\\.(?!$|"+e.src_ZPCc+"))";e.src_path="(?:"+"[/?#]"+"(?:"+"(?!"+e.src_ZCc+"|"+r+"|[()[\\]{}.,\"'?!\\-;]).|"+"\\[(?:(?!"+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="(^|"+r+'|"|\\(|'+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 Nm(t){const e=Array.prototype.slice.call(arguments,1);e.forEach((function(e){if(!e){return}Object.keys(e).forEach((function(r){t[r]=e[r]}))}));return t}function qm(t){return Object.prototype.toString.call(t)}function zm(t){return qm(t)==="[object String]"}function Tm(t){return qm(t)==="[object Object]"}function Im(t){return qm(t)==="[object RegExp]"}function Pm(t){return qm(t)==="[object Function]"}function Jm(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const Lm={fuzzyLink:true,fuzzyEmail:true,fuzzyIP:false};function Wm(t){return Object.keys(t||{}).reduce((function(t,e){return t||Lm.hasOwnProperty(e)}),false)}const Um={"http:":{validate:function(t,e,r){const i=t.slice(e);if(!r.re.http){r.re.http=new RegExp("^\\/\\/"+r.re.src_auth+r.re.src_host_port_strict+r.re.src_path,"i")}if(r.re.http.test(i)){return i.match(r.re.http)[0].length}return 0}},"https:":"http:","ftp:":"http:","//":{validate:function(t,e,r){const i=t.slice(e);if(!r.re.no_http){r.re.no_http=new RegExp("^"+r.re.src_auth+"(?:localhost|(?:(?:"+r.re.src_domain+")\\.)+"+r.re.src_domain_root+")"+r.re.src_port+r.re.src_host_terminator+r.re.src_path,"i")}if(r.re.no_http.test(i)){if(e>=3&&t[e-3]===":"){return 0}if(e>=3&&t[e-3]==="/"){return 0}return i.match(r.re.no_http)[0].length}return 0}},"mailto:":{validate:function(t,e,r){const i=t.slice(e);if(!r.re.mailto){r.re.mailto=new RegExp("^"+r.re.src_email_name+"@"+r.re.src_host_strict,"i")}if(r.re.mailto.test(i)){return i.match(r.re.mailto)[0].length}return 0}}};const Hm="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 Zm="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Km(t){t.__index__=-1;t.__text_cache__=""}function Vm(t){return function(e,r){const i=e.slice(r);if(t.test(i)){return i.match(t)[0].length}return 0}}function Gm(){return function(t,e){e.normalize(t)}}function Xm(t){const e=t.re=jm(t.__opts__);const r=t.__tlds__.slice();t.onCompile();if(!t.__tlds_replaced__){r.push(Hm)}r.push(e.src_xn);e.src_tlds=r.join("|");function i(t){return t.replace("%TLDS%",e.src_tlds)}e.email_fuzzy=RegExp(i(e.tpl_email_fuzzy),"i");e.link_fuzzy=RegExp(i(e.tpl_link_fuzzy),"i");e.link_no_ip_fuzzy=RegExp(i(e.tpl_link_no_ip_fuzzy),"i");e.host_fuzzy_test=RegExp(i(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 r=t.__schemas__[e];if(r===null){return}const i={validate:null,link:null};t.__compiled__[e]=i;if(Tm(r)){if(Im(r.validate)){i.validate=Vm(r.validate)}else if(Pm(r.validate)){i.validate=r.validate}else{s(e,r)}if(Pm(r.normalize)){i.normalize=r.normalize}else if(!r.normalize){i.normalize=Gm()}else{s(e,r)}return}if(zm(r)){n.push(e);return}s(e,r)}));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:Gm()};const l=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(Jm).join("|");t.re.schema_test=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+l+")","i");t.re.schema_search=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+l+")","ig");t.re.schema_at_start=RegExp("^"+t.re.schema_search.source,"i");t.re.pretest=RegExp("("+t.re.schema_test.source+")|("+t.re.host_fuzzy_test.source+")|@","i");Km(t)}function Ym(t,e){const r=t.__index__;const i=t.__last_index__;const n=t.__text_cache__.slice(r,i);this.schema=t.__schema__.toLowerCase();this.index=r+e;this.lastIndex=i+e;this.raw=n;this.text=n;this.url=n}function Qm(t,e){const r=new Ym(t,e);t.__compiled__[r.schema].normalize(r,t);return r}function tw(t,e){if(!(this instanceof tw)){return new tw(t,e)}if(!e){if(Wm(t)){e=t;t={}}}this.__opts__=Nm({},Lm,e);this.__index__=-1;this.__last_index__=-1;this.__schema__="";this.__text_cache__="";this.__schemas__=Nm({},Um,t);this.__compiled__={};this.__tlds__=Zm;this.__tlds_replaced__=false;this.re={};Xm(this)}tw.prototype.add=function t(e,r){this.__schemas__[e]=r;Xm(this);return this};tw.prototype.set=function t(e){this.__opts__=Nm(this.__opts__,e);return this};tw.prototype.test=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length){return false}let r,i,n,s,l,o,u,f,h;if(this.re.schema_test.test(e)){u=this.re.schema_search;u.lastIndex=0;while((r=u.exec(e))!==null){s=this.testSchemaAt(e,r[2],u.lastIndex);if(s){this.__schema__=r[2];this.__index__=r.index+r[1].length;this.__last_index__=r.index+r[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((i=e.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy))!==null){l=i.index+i[1].length;if(this.__index__<0||l<this.__index__){this.__schema__="";this.__index__=l;this.__last_index__=i.index+i[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};tw.prototype.pretest=function t(e){return this.re.pretest.test(e)};tw.prototype.testSchemaAt=function t(e,r,i){if(!this.__compiled__[r.toLowerCase()]){return 0}return this.__compiled__[r.toLowerCase()].validate(e,i,this)};tw.prototype.match=function t(e){const r=[];let i=0;if(this.__index__>=0&&this.__text_cache__===e){r.push(Qm(this,i));i=this.__last_index__}let n=i?e.slice(i):e;while(this.test(n)){r.push(Qm(this,i));n=n.slice(this.__last_index__);i+=this.__last_index__}if(r.length){return r}return null};tw.prototype.matchAtStart=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length)return null;const r=this.re.schema_at_start.exec(e);if(!r)return null;const i=this.testSchemaAt(e,r[2],r[0].length);if(!i)return null;this.__schema__=r[2];this.__index__=r.index+r[1].length;this.__last_index__=r.index+r[0].length+i;return Qm(this,0)};tw.prototype.tlds=function t(e,r){e=Array.isArray(e)?e:[e];if(!r){this.__tlds__=e.slice();this.__tlds_replaced__=true;Xm(this);return this}this.__tlds__=this.__tlds__.concat(e).sort().filter((function(t,e,r){return t!==r[e-1]})).reverse();Xm(this);return this};tw.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}};tw.prototype.onCompile=function t(){};const ew=2147483647;const rw=36;const iw=1;const nw=26;const sw=38;const lw=700;const ow=72;const uw=128;const fw="-";const hw=/^xn--/;const aw=/[^\0-\x7F]/;const cw=/[\x2E\u3002\uFF0E\uFF61]/g;const dw={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const pw=rw-iw;const mw=Math.floor;const ww=String.fromCharCode;function gw(t){throw new RangeError(dw[t])}function bw(t,e){const r=[];let i=t.length;while(i--){r[i]=e(t[i])}return r}function kw(t,e){const r=t.split("@");let i="";if(r.length>1){i=r[0]+"@";t=r[1]}t=t.replace(cw,".");const n=t.split(".");const s=bw(n,e).join(".");return i+s}function Dw(t){const e=[];let r=0;const i=t.length;while(r<i){const n=t.charCodeAt(r++);if(n>=55296&&n<=56319&&r<i){const i=t.charCodeAt(r++);if((i&64512)==56320){e.push(((n&1023)<<10)+(i&1023)+65536)}else{e.push(n);r--}}else{e.push(n)}}return e}const vw=t=>String.fromCodePoint(...t);const yw=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 rw};const Fw=function(t,e){return t+22+75*(t<26)-((e!=0)<<5)};const Ew=function(t,e,r){let i=0;t=r?mw(t/lw):t>>1;t+=mw(t/e);for(;t>pw*nw>>1;i+=rw){t=mw(t/pw)}return mw(i+(pw+1)*t/(t+sw))};const Mw=function(t){const e=[];const r=t.length;let i=0;let n=uw;let s=ow;let l=t.lastIndexOf(fw);if(l<0){l=0}for(let r=0;r<l;++r){if(t.charCodeAt(r)>=128){gw("not-basic")}e.push(t.charCodeAt(r))}for(let o=l>0?l+1:0;o<r;){const l=i;for(let e=1,n=rw;;n+=rw){if(o>=r){gw("invalid-input")}const l=yw(t.charCodeAt(o++));if(l>=rw){gw("invalid-input")}if(l>mw((ew-i)/e)){gw("overflow")}i+=l*e;const u=n<=s?iw:n>=s+nw?nw:n-s;if(l<u){break}const f=rw-u;if(e>mw(ew/f)){gw("overflow")}e*=f}const u=e.length+1;s=Ew(i-l,u,l==0);if(mw(i/u)>ew-n){gw("overflow")}n+=mw(i/u);i%=u;e.splice(i++,0,n)}return String.fromCodePoint(...e)};const xw=function(t){const e=[];t=Dw(t);const r=t.length;let i=uw;let n=0;let s=ow;for(const r of t){if(r<128){e.push(ww(r))}}const l=e.length;let o=l;if(l){e.push(fw)}while(o<r){let r=ew;for(const e of t){if(e>=i&&e<r){r=e}}const u=o+1;if(r-i>mw((ew-n)/u)){gw("overflow")}n+=(r-i)*u;i=r;for(const r of t){if(r<i&&++n>ew){gw("overflow")}if(r===i){let t=n;for(let r=rw;;r+=rw){const i=r<=s?iw:r>=s+nw?nw:r-s;if(t<i){break}const n=t-i;const l=rw-i;e.push(ww(Fw(i+n%l,0)));t=mw(n/l)}e.push(ww(Fw(t,0)));s=Ew(n,u,o===l);n=0;++o}}++n;++i}return e.join("")};const Aw=function(t){return kw(t,(function(t){return hw.test(t)?Mw(t.slice(4).toLowerCase()):t}))};const Cw=function(t){return kw(t,(function(t){return aw.test(t)?"xn--"+xw(t):t}))};const Sw={version:"2.3.1",ucs2:{decode:Dw,encode:vw},decode:Mw,encode:xw,toASCII:Cw,toUnicode:Aw};const Ow={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}};const $w={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 Bw={default:Ow,zero:$w,commonmark:_w};const Rw=/^(vbscript|javascript|file|data):/;const jw=/^data:image\/(gif|png|jpeg|webp);/;function Nw(t){const e=t.trim().toLowerCase();return Rw.test(e)?jw.test(e):true}const qw=["http:","https:","mailto:"];function zw(t){const e=td(t,true);if(e.hostname){if(!e.protocol||qw.indexOf(e.protocol)>=0){try{e.hostname=Sw.toASCII(e.hostname)}catch(t){}}}return zc(Tc(e))}function Tw(t){const e=td(t,true);if(e.hostname){if(!e.protocol||qw.indexOf(e.protocol)>=0){try{e.hostname=Sw.toUnicode(e.hostname)}catch(t){}}}return jc(Tc(e),jc.defaultChars+"%")}function Iw(t,e){if(!(this instanceof Iw)){return new Iw(t,e)}if(!e){if(!hd(t)){e=t||{};t="default"}}this.inline=new Rm;this.block=new Qp;this.core=new gp;this.renderer=new Ld;this.linkify=new tw;this.validateLink=Nw;this.normalizeLink=zw;this.normalizeLinkText=Tw;this.utils=qd;this.helpers=dd({},Pd);this.options={};this.configure(t);if(e){this.set(e)}}Iw.prototype.set=function(t){dd(this.options,t);return this};Iw.prototype.configure=function(t){const e=this;if(hd(t)){const e=t;t=Bw[e];if(!t){throw new Error('Wrong `markdown-it` preset "'+e+'", check name')}}if(!t){throw new Error("Wrong `markdown-it` preset, can't be empty")}if(t.options){e.set(t.options)}if(t.components){Object.keys(t.components).forEach((function(r){if(t.components[r].rules){e[r].ruler.enableOnly(t.components[r].rules)}if(t.components[r].rules2){e[r].ruler2.enableOnly(t.components[r].rules2)}}))}return this};Iw.prototype.enable=function(t,e){let r=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){r=r.concat(this[e].ruler.enable(t,true))}),this);r=r.concat(this.inline.ruler2.enable(t,true));const i=t.filter((function(t){return r.indexOf(t)<0}));if(i.length&&!e){throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+i)}return this};Iw.prototype.disable=function(t,e){let r=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){r=r.concat(this[e].ruler.disable(t,true))}),this);r=r.concat(this.inline.ruler2.disable(t,true));const i=t.filter((function(t){return r.indexOf(t)<0}));if(i.length&&!e){throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+i)}return this};Iw.prototype.use=function(t){const e=[this].concat(Array.prototype.slice.call(arguments,1));t.apply(t,e);return this};Iw.prototype.parse=function(t,e){if(typeof t!=="string"){throw new Error("Input data should be a String")}const r=new this.core.State(t,this,e);this.core.process(r);return r.tokens};Iw.prototype.render=function(t,e){e=e||{};return this.renderer.render(this.parse(t,e),this.options,e)};Iw.prototype.parseInline=function(t,e){const r=new this.core.State(t,this,e);r.inlineMode=true;this.core.process(r);return r.tokens};Iw.prototype.renderInline=function(t,e){e=e||{};return this.renderer.render(this.parseInline(t,e),this.options,e)};const Pw=new dr({nodes:{doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return["p",0]}},blockquote:{content:"block+",group:"block",parseDOM:[{tag:"blockquote"}],toDOM(){return["blockquote",0]}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return["div",["hr"]]}},heading:{attrs:{level:{default:1}},content:"(text | image)*",group:"block",defining:true,parseDOM:[{tag:"h1",attrs:{level:1}},{tag:"h2",attrs:{level:2}},{tag:"h3",attrs:{level:3}},{tag:"h4",attrs:{level:4}},{tag:"h5",attrs:{level:5}},{tag:"h6",attrs:{level:6}}],toDOM(t){return["h"+t.attrs.level,0]}},code_block:{content:"text*",group:"block",code:true,defining:true,marks:"",attrs:{params:{default:""}},parseDOM:[{tag:"pre",preserveWhitespace:"full",getAttrs:t=>({params:t.getAttribute("data-params")||""})}],toDOM(t){return["pre",t.attrs.params?{"data-params":t.attrs.params}:{},["code",0]]}},ordered_list:{content:"list_item+",group:"block",attrs:{order:{default:1},tight:{default:false}},parseDOM:[{tag:"ol",getAttrs(t){return{order:t.hasAttribute("start")?+t.getAttribute("start"):1,tight:t.hasAttribute("data-tight")}}}],toDOM(t){return["ol",{start:t.attrs.order==1?null:t.attrs.order,"data-tight":t.attrs.tight?"true":null},0]}},bullet_list:{content:"list_item+",group:"block",attrs:{tight:{default:false}},parseDOM:[{tag:"ul",getAttrs:t=>({tight:t.hasAttribute("data-tight")})}],toDOM(t){return["ul",{"data-tight":t.attrs.tight?"true":null},0]}},list_item:{content:"block+",defining:true,parseDOM:[{tag:"li"}],toDOM(){return["li",0]}},text:{group:"inline"},image:{inline:true,attrs:{src:{},alt:{default:null},title:{default:null}},group:"inline",draggable:true,parseDOM:[{tag:"img[src]",getAttrs(t){return{src:t.getAttribute("src"),title:t.getAttribute("title"),alt:t.getAttribute("alt")}}}],toDOM(t){return["img",t.attrs]}},hard_break:{inline:true,group:"inline",selectable:false,parseDOM:[{tag:"br"}],toDOM(){return["br"]}}},marks:{em:{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"},{style:"font-style=normal",clearMark:t=>t.type.name=="em"}],toDOM(){return["em"]}},strong:{parseDOM:[{tag:"strong"},{tag:"b",getAttrs:t=>t.style.fontWeight!="normal"&&null},{style:"font-weight=400",clearMark:t=>t.type.name=="strong"},{style:"font-weight",getAttrs:t=>/^(bold(er)?|[5-9]\d{2,})$/.test(t)&&null}],toDOM(){return["strong"]}},link:{attrs:{href:{},title:{default:null}},inclusive:false,parseDOM:[{tag:"a[href]",getAttrs(t){return{href:t.getAttribute("href"),title:t.getAttribute("title")}}}],toDOM(t){return["a",t.attrs]}},code:{parseDOM:[{tag:"code"}],toDOM(){return["code"]}}}});function Jw(t,e){if(t.isText&&e.isText&&ve.sameSet(t.marks,e.marks))return t.withText(t.text+e.text)}class Lw{constructor(t,e){this.schema=t;this.tokenHandlers=e;this.stack=[{type:t.topNodeType,attrs:null,content:[],marks:ve.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(),r=e.content,i=r[r.length-1];let n=this.schema.text(t,e.marks),s;if(i&&(s=Jw(i,n)))r[r.length-1]=s;else r.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 r=t[e];let i=this.tokenHandlers[r.type];if(!i)throw new Error("Token type `"+r.type+"` not supported by Markdown parser");i(this,r,t,e)}}addNode(t,e,r){let i=this.top();let n=t.createAndFill(e,r,i?i.marks:[]);if(!n)return null;this.push(n);return n}openNode(t,e){this.stack.push({type:t,attrs:e,content:[],marks:ve.none})}closeNode(){let t=this.stack.pop();return this.addNode(t.type,t.attrs,t.content)}}function Ww(t,e,r,i){if(t.getAttrs)return t.getAttrs(e,r,i);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 Hw(t){return t[t.length-1]=="\n"?t.slice(0,t.length-1):t}function Zw(){}function Kw(t,e){let r=Object.create(null);for(let i in e){let n=e[i];if(n.block){let e=t.nodeType(n.block);if(Uw(n,i)){r[i]=(t,r,i,s)=>{t.openNode(e,Ww(n,r,i,s));t.addText(Hw(r.content));t.closeNode()}}else{r[i+"_open"]=(t,r,i,s)=>t.openNode(e,Ww(n,r,i,s));r[i+"_close"]=t=>t.closeNode()}}else if(n.node){let e=t.nodeType(n.node);r[i]=(t,r,i,s)=>t.addNode(e,Ww(n,r,i,s))}else if(n.mark){let e=t.marks[n.mark];if(Uw(n,i)){r[i]=(t,r,i,s)=>{t.openMark(e.create(Ww(n,r,i,s)));t.addText(Hw(r.content));t.closeMark(e)}}else{r[i+"_open"]=(t,r,i,s)=>t.openMark(e.create(Ww(n,r,i,s)));r[i+"_close"]=t=>t.closeMark(e)}}else if(n.ignore){if(Uw(n,i)){r[i]=Zw}else{r[i+"_open"]=Zw;r[i+"_close"]=Zw}}else{throw new RangeError("Unrecognized parsing spec "+JSON.stringify(n))}}r.text=(t,e)=>t.addText(e.content);r.inline=(t,e)=>t.parseTokens(e.children);r.softbreak=r.softbreak||(t=>t.addText(" "));return r}class Vw{constructor(t,e,r){this.schema=t;this.tokenizer=e;this.tokens=r;this.tokenHandlers=Kw(t,r)}parse(t,e={}){let r=new Lw(this.schema,this.tokenHandlers),i;r.parseTokens(this.tokenizer.parse(t,e));do{i=r.closeNode()}while(r.stack.length);return i||this.schema.topNodeType.createAndFill()}}function Gw(t,e){while(++e<t.length)if(t[e].type!="list_item_open")return t[e].hidden;return false}new Vw(Pw,Iw("commonmark",{html:false}),{blockquote:{block:"blockquote"},paragraph:{block:"paragraph"},list_item:{block:"list_item"},bullet_list:{block:"bullet_list",getAttrs:(t,e,r)=>({tight:Gw(e,r)})},ordered_list:{block:"ordered_list",getAttrs:(t,e,r)=>({order:+t.attrGet("start")||1,tight:Gw(e,r)})},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 Xw={open:"",close:"",mixable:true};class Yw{constructor(t,e,r={}){this.nodes=t;this.marks=e;this.options=r}serialize(t,e={}){e=Object.assign({},this.options,e);let r=new rg(this.nodes,this.marks,e);r.renderContent(t);return r.out}}const Qw=new Yw({blockquote(t,e){t.wrapBlock("> ",null,e,(()=>t.renderContent(e)))},code_block(t,e){const r=e.textContent.match(/`{3,}/gm);const i=r?r.sort().slice(-1)[0]+"`":"```";t.write(i+(e.attrs.params||"")+"\n");t.text(e.textContent,false);t.write("\n");t.write(i);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 r=e.attrs.order||1;let i=String(r+e.childCount-1).length;let n=t.repeat(" ",i+2);t.renderList(e,n,(e=>{let n=String(r+e);return t.repeat(" ",i-n.length)+n+". "}))},list_item(t,e){t.renderContent(e)},paragraph(t,e){t.renderInline(e);t.closeBlock(e)},image(t,e){t.write("!["+t.esc(e.attrs.alt||"")+"]("+e.attrs.src.replace(/[\(\)]/g,"\\$&")+(e.attrs.title?' "'+e.attrs.title.replace(/"/g,'\\"')+'"':"")+")")},hard_break(t,e,r,i){for(let n=i+1;n<r.childCount;n++)if(r.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,r,i){t.inAutolink=eg(e,r,i);return t.inAutolink?"<":"["},close(t,e,r,i){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,r,i){return tg(r.child(i),-1)},close(t,e,r,i){return tg(r.child(i-1),1)},escape:false}});function tg(t,e){let r=/`+/g,i,n=0;if(t.isText)while(i=r.exec(t.text))n=Math.max(n,i[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 eg(t,e,r){if(t.attrs.title||!/^\w+:/.test(t.attrs.href))return false;let i=e.child(r);if(!i.isText||i.text!=t.attrs.href||i.marks[i.marks.length-1]!=t)return false;return r==e.childCount-1||!t.isInSet(e.child(r+1).marks)}class rg{constructor(t,e,r){this.nodes=t;this.marks=e;this.options=r;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 r=/\s+$/.exec(e);if(r)e=e.slice(0,e.length-r[0].length);for(let r=1;r<t;r++)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=Xw}return e}wrapBlock(t,e,r,i){let n=this.delim;this.write(e!=null?e:t);this.delim+=t;i();this.delim=n;this.closeBlock(r)}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 r=t.split("\n");for(let t=0;t<r.length;t++){this.write();if(!e&&r[t][0]=="["&&/(^|[^\\])\!$/.test(this.out))this.out=this.out.slice(0,this.out.length-1)+"\\!";this.out+=e?this.esc(r[t],this.atBlockStart):r[t];if(t!=r.length-1)this.out+="\n"}}render(t,e,r){if(this.nodes[t.type.name]){this.nodes[t.type.name](this,t,e,r)}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,r,i)=>this.render(e,t,i)))}renderInline(t,e=true){this.atBlockStart=e;let r=[],i="";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 r=t.child(s+1);return e.isInSet(r.marks)&&(!r.isText||/\S/.test(r.text))}));let o=i;i="";if(e&&e.isText&&l.some((t=>{let e=this.getMark(t.type.name);return e&&e.expelEnclosingWhitespace&&!t.isInSet(r)}))){let[t,i,n]=/^(\s*)(.*)$/m.exec(e.text);if(i){o+=i;e=n?e.withText(n):null;if(!e)l=r}}if(e&&e.isText&&l.some((e=>{let r=this.getMark(e.type.name);return r&&r.expelEnclosingWhitespace&&(s==t.childCount-1||!e.isInSet(t.child(s+1).marks))}))){let[t,n,s]=/^(.*?)(\s*)$/m.exec(e.text);if(s){i=s;e=n?e.withText(n):null;if(!e)l=r}}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 i=0;i<r.length;i++){let n=r[i];if(!this.getMark(n.type.name).mixable)break;if(e.eq(n)){if(t>i)l=l.slice(0,i).concat(e).concat(l.slice(i,t)).concat(l.slice(t+1,h));else if(i>t)l=l.slice(0,t).concat(l.slice(t+1,i)).concat(e).concat(l.slice(i,h));continue t}}}let a=0;while(a<Math.min(r.length,h)&&l[a].eq(r[a]))++a;while(a<r.length)this.text(this.markString(r.pop(),false,t,s),false);if(o)this.text(o);if(e){while(r.length<h){let e=l[r.length];r.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,r){if(this.closed&&this.closed.type==t.type)this.flushClose(3);else if(this.inTightList)this.flushClose(1);let i=typeof t.attrs.tight!="undefined"?t.attrs.tight:this.options.tightLists;let n=this.inTightList;this.inTightList=i;t.forEach(((n,s,l)=>{if(l&&i)this.flushClose(1);this.wrapBlock(e,r(l),t,(()=>this.render(n,t,l)))}));this.inTightList=n}esc(t,e=false){t=t.replace(/[`*\\~\[\]_]/g,((e,r)=>e=="_"&&r>0&&r+1<t.length&&t[r-1].match(/\w/)&&t[r+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 r="";for(let i=0;i<e;i++)r+=t;return r}markString(t,e,r,i){let n=this.getMark(t.type.name);let s=e?n.open:n.close;return typeof s=="string"?s:s(this,t,r,i)}getEnclosingWhitespace(t){return{leading:(t.match(/^(\s+)/)||[undefined])[0],trailing:(t.match(/(\s+)$/)||[undefined])[0]}}}const ig=t=>(e,r)=>{const i=`<${t.tagName}`+t.attributes.map((t=>` ${t}="${r.attrs[t]}"`)).join("")+">";const n=`</${t.tagName}>`;e.write(i);e.renderContent(r);e.write(n)};const ng=t=>{const e={};t.forEach((t=>{e[t.tagName]=ig(t)}));const r=Object.assign(Object.assign({},Qw.nodes),e);const i=Object.assign(Object.assign({},Qw.marks),{strikethrough:{open:"~~",close:"~~",mixable:true,expelEnclosingWhitespace:true}});return new Yw(r,i)};class sg{constructor(t){this.parseAsHTML=t=>{const e=this.customNodes.map((t=>({tagName:t.tagName,attributes:t.attributes})));return A(t,{whitelist:e})};this.serialize=t=>{if(t.dom.textContent===""){return""}else{return this.markdownSerializer.serialize(t.state.doc)}};this.markdownSerializer=ng(t);this.customNodes=t}}class lg{constructor(){this.parseAsHTML=t=>new Promise((e=>{e(t)}));this.serialize=t=>{if(t.dom.textContent===""){return""}else{return t.dom.innerHTML}}}}const og={parseDOM:[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration=line-through"}],toDOM:()=>["s",0]};const ug=new vn("linkPlugin");const fg=(t,e)=>{const{from:r,to:i}=t.state.selection;let n="";let s="";t.state.doc.nodesBetween(r,i,((t,e)=>{if(t.type.name!=="text"){return}const l=Math.max(0,r-e);const o=Math.min(t.text.length,i-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 hg=(t,e,r)=>{while(e>0){const i=t.nodeAt(e-1);if(!(i===null||i===void 0?void 0:i.isText)||!i.marks.some((t=>t.type.name===oc.Link&&t.attrs.href===r))){break}e--}return e};const ag=(t,e,r)=>{while(e<t.content.size){const i=t.nodeAt(e);if(!(i===null||i===void 0?void 0:i.isText)||!i.marks.some((t=>t.type.name===oc.Link&&t.attrs.href===r))){break}e++}return e};const cg=(t,e)=>{const r=t.posAtCoords({left:e.clientX,top:e.clientY});const i=t.state.doc.nodeAt(r.pos);if(!i){return null}const n=i.marks.find((t=>t.type.name===oc.Link));if(!n){return null}const s=n.attrs.href;const l=hg(t.state.doc,r.pos,s);const o=ag(t.state.doc,r.pos,s);const u=t.state.doc.textBetween(l,o," ");return{href:s,text:u,from:l,to:o}};const dg=(t,e)=>{const{href:r}=cg(t,e);if(r){window.open(r,"_blank");return true}return false};const pg=(t,e,r)=>{const i=new CustomEvent("open-editor-link-menu",{detail:{href:e,text:r},bubbles:true,composed:true});t.dom.dispatchEvent(i)};let mg=0;const wg=200;let gg;const bg=(t,e)=>{const r=Date.now();if(r-mg<wg){clearTimeout(gg);mg=r;return false}mg=r;gg=setTimeout((()=>{const r=cg(t,e);if(r){const{href:e,text:i,from:n,to:s}=r;const l=t.state.tr.setSelection(Qi.create(t.state.doc,n,s));t.dispatch(l);pg(t,e,i)}}),wg);return true};const kg=(t,e)=>{const r=e.clipboardData;if(!r){return false}const i=r.getData("text/plain");if(kc(i)){Dg(t,i);return true}return false};const Dg=(t,e)=>{const{state:r,dispatch:i}=t;const{from:n,to:s}=r.selection;const l=Hu.marks.link.create({href:e,title:e,target:gc(e)?"_blank":null});const o=r.doc.textBetween(n,s," ")||e;const u=r.tr.insertText(o,n,s).addMark(n,n+o.length,l);i(u)};const vg=t=>new bn({key:ug,props:{handlePaste:(t,e)=>kg(t,e),handleDOMEvents:{mousedown:(t,e)=>{if((e.metaKey||e.ctrlKey)&&e.button===0){return dg(t,e)}if(e.button!==hc.Right){return bg(t,e)}return true},click:(t,e)=>{if(!(e.target instanceof HTMLElement)){return}const r=e.target.closest("a");if(r){e.preventDefault();e.stopPropagation()}}}},view:()=>({update:e=>{fg(e,t)}})});const yg=new vn("imageRemoverPlugin");const Fg=()=>new bn({key:yg,props:{handlePaste:(t,e,r)=>xg(t,e,r)}});const Eg=t=>{if(t instanceof Je){if(t.type.name==="image"){return true}let e=false;t.content.forEach((t=>{if(Eg(t)){e=true}}));return e}else if(t instanceof ge){let e=false;t.forEach((t=>{if(Eg(t)){e=true}}));return e}return false};const Mg=t=>{const e=[];t.forEach((t=>{if(!Eg(t)){if(t.content.size>0){const r=Mg(t.content);const i=t.copy(r);e.push(i)}else{e.push(t)}}}));return ge.fromArray(e)};const xg=(t,e,r)=>{const i=e.clipboardData;if(!i){return false}const n=new Fe(Mg(r.content),r.openStart,r.openEnd);if(n.content.childCount<r.content.childCount){const{state:e,dispatch:r}=t;const i=e.tr.replaceSelection(n);r(i);return true}return false};const Ag=new vn("actionBarPlugin");const Cg=(t,e,r)=>{const i={};t.forEach((t=>{const n=e.getCommand(t);i[t]=n&&n.active&&n.active(r.state)}));return i};const Sg=(t,e,r)=>new bn({key:Ag,state:{init:()=>({}),apply:(t,e)=>{const r=t.getMeta(Ag);return r?r:e}},view:()=>({update:i=>{const n=Ag.getState(i.state);const s=Cg(t,e,i);if(!$(n,s)){const t=i.state.tr.setMeta(Ag,s);i.dispatch(t);r(s)}}})});const Og=new vn("actionBarInteractionPlugin");const $g=(t,e)=>{const{state:r}=e;const i=r.selection;let n=r.tr;if(!i.empty){n.setSelection(i)}t(r,(t=>{n=t}));e.dispatch(n);e.focus()};const _g=t=>new bn({key:Og,props:{handleDOMEvents:{actionBarItemClick:(e,r)=>{r.preventDefault();r.stopPropagation();const{value:i}=r.detail;try{const r=t.getCommand(i);$g(r,e)}catch(t){console.error(`Error executing command: ${t}`)}return true},saveLinkMenu:(e,r)=>{r.preventDefault();r.stopPropagation();const{type:i,link:n}=r.detail;if(i===oc.Link){try{const r=t.getCommand(i,n);$g(r,e)}catch(t){console.error(`Error executing command: ${t}`)}}return true}}}});const Bg=t=>{const e={};t.attributes.forEach((t=>e[t]={}));const r=`${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:r,getAttrs:e=>{const r={};t.attributes.forEach((t=>r[t]=e.getAttribute(t)));return r}}]}};const Rg=t=>{const e=qg(t);return{insert:r=>{const{state:i,dispatch:n}=t;const{schema:s,selection:l}=i;const{$from:o}=l;let u;try{u=jg(r,s)}catch(t){console.error(t.message);return}const f=s.text(" ");const h=s.nodes.doc.create(null,[u,f]);const a=i.tr.replaceWith(e,o.pos,h);a.setMeta("stopTrigger",true);n(a)}}};const jg=(t,e)=>{var r;if(typeof t==="string"){return e.text(t)}const i=t.node;if(typeof i==="string"){return e.text(i)}const n=Ng(i.tagName,e);const s=((r=t.children)!==null&&r!==void 0?r:[]).map((t=>jg(t,e))).filter(Boolean);return n.create(i.attributes,s)};const Ng=(t,e)=>{const r=Object.values(e.nodes).find((e=>e.name===t));if(!r){throw new Error(`A custom element hasn't been registered for node ${t}`)}return r};const qg=t=>{var e,r,i;return(i=(r=(e=t.state)===null||e===void 0?void 0:e.selection)===null||r===void 0?void 0:r.$from)===null||i===void 0?void 0:i.pos};const zg=(t,e)=>t.length===1&&e.includes(t);const Tg=t=>{const{$from:e}=t.selection;if(e.pos===1){return true}const r=e.pos-1;if(r>0){if(e.parentOffset===0){return true}const i=t.doc.textBetween(r,e.pos);return i===" "||i==="\n"}return false};const Ig=(t,e,r,i)=>{const n=t.selection.$from.pos;if(n<r||n>r+i+1){return false}return t.doc.textBetween(r,r+1)===e};const Pg=(t,e,r)=>({trigger:e,textEditor:Rg(t),value:r});const Jg=(t,e,r,i)=>{const n=new CustomEvent(t,{detail:Pg(e,r,i),bubbles:true,composed:true});e.dom.dispatchEvent(n)};const Lg=(t,e,r)=>{let i="";let n="";e.forEach((t=>{if(t.docChanged){t.steps.forEach((t=>{if(t instanceof ni||t instanceof si){const e=t.slice;const s=t.from;const l=t.to;if(e===null||e===void 0?void 0:e.size){i+=e.content.textBetween(0,e.size)}else if(s!==l){const t=r.doc.textBetween(s,l);n+=t}}}))}}));if(i){t+=i}else if(n){t=t.slice(0,-n.length)}return t};const Wg=t=>{let e=null;let r="";let i=null;let n=null;const s=()=>{r="";Jg("triggerStop",i,e,r);n=null;e=null};const l=(t,e)=>{if(e.key==="Escape"){s();return true}return false};const o=(i,s)=>{const{state:l}=i;if(s.inputType==="insertText"&&zg(s.data,t)&&Tg(l)){e=s.data;r="";n=l.selection.$from.pos-r.length;Jg("triggerStart",i,e,r);return false}return false};const u=(t,s,l)=>{if(!e||!n||!i){return}if(!Ig(l,e,n,r.length)){return}const o=Lg(r,t,s);if(o!==r){r=o;Jg("triggerChange",i,e,r.slice(1))}};return new bn({key:new vn("triggerPlugin"),view:t=>{i=t;return{}},state:{init:()=>({}),apply:t=>{if(t.getMeta("stopTrigger")){s()}return{}}},props:{handleKeyDown:l,handleDOMEvents:{input:o}},appendTransaction:u})};var Ug;var Hg;if(typeof WeakMap!="undefined"){let t=new WeakMap;Ug=e=>t.get(e);Hg=(e,r)=>{t.set(e,r);return r}}else{const t=[];const e=10;let r=0;Ug=e=>{for(let r=0;r<t.length;r+=2)if(t[r]==e)return t[r+1]};Hg=(i,n)=>{if(r==e)r=0;t[r++]=i;return t[r++]=n}}var Zg=class{constructor(t,e,r,i){this.width=t;this.height=e;this.map=r;this.problems=i}findCell(t){for(let e=0;e<this.map.length;e++){const r=this.map[e];if(r!=t)continue;const i=e%this.width;const n=e/this.width|0;let s=i+1;let l=n+1;for(let t=1;s<this.width&&this.map[e+t]==r;t++){s++}for(let t=1;l<this.height&&this.map[e+this.width*t]==r;t++){l++}return{left:i,top:n,right:s,bottom:l}}throw new RangeError(`No cell with offset ${t} found`)}colCount(t){for(let e=0;e<this.map.length;e++){if(this.map[e]==t){return e%this.width}}throw new RangeError(`No cell with offset ${t} found`)}nextCell(t,e,r){const{left:i,right:n,top:s,bottom:l}=this.findCell(t);if(e=="horiz"){if(r<0?i==0:n==this.width)return null;return this.map[s*this.width+(r<0?i-1:n)]}else{if(r<0?s==0:l==this.height)return null;return this.map[i+this.width*(r<0?s-1:l)]}}rectBetween(t,e){const{left:r,right:i,top:n,bottom:s}=this.findCell(t);const{left:l,right:o,top:u,bottom:f}=this.findCell(e);return{left:Math.min(r,l),top:Math.min(n,u),right:Math.max(i,o),bottom:Math.max(s,f)}}cellsInRect(t){const e=[];const r={};for(let i=t.top;i<t.bottom;i++){for(let n=t.left;n<t.right;n++){const s=i*this.width+n;const l=this.map[s];if(r[l])continue;r[l]=true;if(n==t.left&&n&&this.map[s-1]==l||i==t.top&&i&&this.map[s-this.width]==l){continue}e.push(l)}}return e}positionAt(t,e,r){for(let i=0,n=0;;i++){const s=n+r.child(i).nodeSize;if(i==t){let r=e+t*this.width;const i=(t+1)*this.width;while(r<i&&this.map[r]<n)r++;return r==i?s-1:this.map[r]}n=s}}static get(t){return Ug(t)||Hg(t,Kg(t))}};function Kg(t){if(t.type.spec.tableRole!="table")throw new RangeError("Not a table node: "+t.type.name);const e=Vg(t),r=t.childCount;const i=[];let n=0;let s=null;const l=[];for(let t=0,n=e*r;t<n;t++)i[t]=0;for(let o=0,u=0;o<r;o++){const f=t.child(o);u++;for(let t=0;;t++){while(n<i.length&&i[n]!=0)n++;if(t==f.childCount)break;const h=f.child(t);const{colspan:a,rowspan:c,colwidth:d}=h.attrs;for(let t=0;t<c;t++){if(t+o>=r){(s||(s=[])).push({type:"overlong_rowspan",pos:u,n:c-t});break}const f=n+t*e;for(let t=0;t<a;t++){if(i[f+t]==0)i[f+t]=u;else(s||(s=[])).push({type:"collision",row:o,pos:u,n:a-t});const r=d&&d[t];if(r){const i=(f+t)%e*2,n=l[i];if(n==null||n!=r&&l[i+1]==1){l[i]=r;l[i+1]=1}else if(n==r){l[i+1]++}}}}n+=a;u+=h.nodeSize}const h=(o+1)*e;let a=0;while(n<h)if(i[n++]==0)a++;if(a)(s||(s=[])).push({type:"missing",row:o,n:a});u++}const o=new Zg(e,r,i,s);let u=false;for(let t=0;!u&&t<l.length;t+=2)if(l[t]!=null&&l[t+1]<r)u=true;if(u)Gg(o,l,t);return o}function Vg(t){let e=-1;let r=false;for(let i=0;i<t.childCount;i++){const n=t.child(i);let s=0;if(r)for(let e=0;e<i;e++){const r=t.child(e);for(let t=0;t<r.childCount;t++){const n=r.child(t);if(e+n.attrs.rowspan>i)s+=n.attrs.colspan}}for(let t=0;t<n.childCount;t++){const e=n.child(t);s+=e.attrs.colspan;if(e.attrs.rowspan>1)r=true}if(e==-1)e=s;else if(e!=s)e=Math.max(e,s)}return e}function Gg(t,e,r){if(!t.problems)t.problems=[];const i={};for(let n=0;n<t.map.length;n++){const s=t.map[n];if(i[s])continue;i[s]=true;const l=r.nodeAt(s);if(!l){throw new RangeError(`No cell with offset ${s} found`)}let o=null;const u=l.attrs;for(let r=0;r<u.colspan;r++){const i=(n+r)%t.width;const s=e[i*2];if(s!=null&&(!u.colwidth||u.colwidth[r]!=s))(o||(o=Xg(u)))[r]=s}if(o)t.problems.unshift({type:"colwidth mismatch",pos:s,colwidth:o})}}function Xg(t){if(t.colwidth)return t.colwidth.slice();const e=[];for(let r=0;r<t.colspan;r++)e.push(0);return e}function Yg(t,e){if(typeof t==="string"){return{}}const r=t.getAttribute("data-colwidth");const i=r&&/^\d+(,\d+)*$/.test(r)?r.split(",").map((t=>Number(t))):null;const n=Number(t.getAttribute("colspan")||1);const s={colspan:n,rowspan:Number(t.getAttribute("rowspan")||1),colwidth:i&&i.length==n?i:null};for(const r in e){const i=e[r].getFromDOM;const n=i&&i(t);if(n!=null){s[r]=n}}return s}function Qg(t,e){const r={};if(t.attrs.colspan!=1)r.colspan=t.attrs.colspan;if(t.attrs.rowspan!=1)r.rowspan=t.attrs.rowspan;if(t.attrs.colwidth)r["data-colwidth"]=t.attrs.colwidth.join(",");for(const i in e){const n=e[i].setDOMAttr;if(n)n(t.attrs[i],r)}return r}function tb(t){const e=t.cellAttributes||{};const r={colspan:{default:1},rowspan:{default:1},colwidth:{default:null}};for(const t in e)r[t]={default:e[t].default};return{table:{content:"table_row+",tableRole:"table",isolating:true,group:t.tableGroup,parseDOM:[{tag:"table"}],toDOM(){return["table",["tbody",0]]}},table_row:{content:"(table_cell | table_header)*",tableRole:"row",parseDOM:[{tag:"tr"}],toDOM(){return["tr",0]}},table_cell:{content:t.cellContent,attrs:r,tableRole:"cell",isolating:true,parseDOM:[{tag:"td",getAttrs:t=>Yg(t,e)}],toDOM(t){return["td",Qg(t,e),0]}},table_header:{content:t.cellContent,attrs:r,tableRole:"header_cell",isolating:true,parseDOM:[{tag:"th",getAttrs:t=>Yg(t,e)}],toDOM(t){return["th",Qg(t,e),0]}}}}function eb(t){let e=t.cached.tableNodeTypes;if(!e){e=t.cached.tableNodeTypes={};for(const r in t.nodes){const i=t.nodes[r],n=i.spec.tableRole;if(n)e[n]=i}}return e}var rb=new vn("selectingCells");function ib(t){for(let e=t.depth-1;e>0;e--)if(t.node(e).type.spec.tableRole=="row")return t.node(0).resolve(t.before(e+1));return null}function nb(t){const e=t.selection.$head;for(let t=e.depth;t>0;t--)if(e.node(t).type.spec.tableRole=="row")return true;return false}function sb(t){const e=t.selection;if("$anchorCell"in e&&e.$anchorCell){return e.$anchorCell.pos>e.$headCell.pos?e.$anchorCell:e.$headCell}else if("node"in e&&e.node&&e.node.type.spec.tableRole=="cell"){return e.$anchor}const r=ib(e.$head)||lb(e.$head);if(r){return r}throw new RangeError(`No cell found around position ${e.head}`)}function lb(t){for(let e=t.nodeAfter,r=t.pos;e;e=e.firstChild,r++){const i=e.type.spec.tableRole;if(i=="cell"||i=="header_cell")return t.doc.resolve(r)}for(let e=t.nodeBefore,r=t.pos;e;e=e.lastChild,r--){const i=e.type.spec.tableRole;if(i=="cell"||i=="header_cell")return t.doc.resolve(r-e.nodeSize)}}function ob(t){return t.parent.type.spec.tableRole=="row"&&!!t.nodeAfter}function ub(t,e){return t.depth==e.depth&&t.pos>=e.start(-1)&&t.pos<=e.end(-1)}function fb(t,e,r){const i=t.node(-1);const n=Zg.get(i);const s=t.start(-1);const l=n.nextCell(t.pos-s,e,r);return l==null?null:t.node(0).resolve(s+l)}function hb(t,e,r=1){const i={...t,colspan:t.colspan-r};if(i.colwidth){i.colwidth=i.colwidth.slice();i.colwidth.splice(e,r);if(!i.colwidth.some((t=>t>0)))i.colwidth=null}return i}var ab=class t extends Vi{constructor(t,e=t){const r=t.node(-1);const i=Zg.get(r);const n=t.start(-1);const s=i.rectBetween(t.pos-n,e.pos-n);const l=t.node(0);const o=i.cellsInRect(s).filter((t=>t!=e.pos-n));o.unshift(e.pos-n);const u=o.map((t=>{const e=r.nodeAt(t);if(!e){throw RangeError(`No cell with offset ${t} found`)}const i=n+t+1;return new Gi(l.resolve(i),l.resolve(i+e.content.size))}));super(u[0].$from,u[0].$to,u);this.$anchorCell=t;this.$headCell=e}map(e,r){const i=e.resolve(r.map(this.$anchorCell.pos));const n=e.resolve(r.map(this.$headCell.pos));if(ob(i)&&ob(n)&&ub(i,n)){const e=this.$anchorCell.node(-1)!=i.node(-1);if(e&&this.isRowSelection())return t.rowSelection(i,n);else if(e&&this.isColSelection())return t.colSelection(i,n);else return new t(i,n)}return Qi.between(i,n)}content(){const t=this.$anchorCell.node(-1);const e=Zg.get(t);const r=this.$anchorCell.start(-1);const i=e.rectBetween(this.$anchorCell.pos-r,this.$headCell.pos-r);const n={};const s=[];for(let r=i.top;r<i.bottom;r++){const l=[];for(let s=r*e.width+i.left,o=i.left;o<i.right;o++,s++){const r=e.map[s];if(n[r])continue;n[r]=true;const o=e.findCell(r);let u=t.nodeAt(r);if(!u){throw RangeError(`No cell with offset ${r} found`)}const f=i.left-o.left;const h=o.right-i.right;if(f>0||h>0){let t=u.attrs;if(f>0){t=hb(t,0,f)}if(h>0){t=hb(t,t.colspan-h,h)}if(o.left<i.left){u=u.type.createAndFill(t);if(!u){throw RangeError(`Could not create cell with attrs ${JSON.stringify(t)}`)}}else{u=u.type.create(t,u.content)}}if(o.top<i.top||o.bottom>i.bottom){const t={...u.attrs,rowspan:Math.min(o.bottom,i.bottom)-Math.max(o.top,i.top)};if(o.top<i.top){u=u.type.createAndFill(t)}else{u=u.type.create(t,u.content)}}l.push(u)}s.push(t.child(r).copy(ge.from(l)))}const l=this.isColSelection()&&this.isRowSelection()?t:s;return new Fe(ge.from(l),1,1)}replace(t,e=Fe.empty){const r=t.steps.length,i=this.ranges;for(let n=0;n<i.length;n++){const{$from:s,$to:l}=i[n],o=t.mapping.slice(r);t.replace(o.map(s.pos),o.map(l.pos),n?Fe.empty:e)}const n=Vi.findFrom(t.doc.resolve(t.mapping.slice(r).map(this.to)),-1);if(n)t.setSelection(n)}replaceWith(t,e){this.replace(t,new Fe(ge.from(e),0,0))}forEachCell(t){const e=this.$anchorCell.node(-1);const r=Zg.get(e);const i=this.$anchorCell.start(-1);const n=r.cellsInRect(r.rectBetween(this.$anchorCell.pos-i,this.$headCell.pos-i));for(let r=0;r<n.length;r++){t(e.nodeAt(n[r]),i+n[r])}}isColSelection(){const t=this.$anchorCell.index(-1);const e=this.$headCell.index(-1);if(Math.min(t,e)>0)return false;const r=t+this.$anchorCell.nodeAfter.attrs.rowspan;const i=e+this.$headCell.nodeAfter.attrs.rowspan;return Math.max(r,i)==this.$headCell.node(-1).childCount}static colSelection(e,r=e){const i=e.node(-1);const n=Zg.get(i);const s=e.start(-1);const l=n.findCell(e.pos-s);const o=n.findCell(r.pos-s);const u=e.node(0);if(l.top<=o.top){if(l.top>0)e=u.resolve(s+n.map[l.left]);if(o.bottom<n.height)r=u.resolve(s+n.map[n.width*(n.height-1)+o.right-1])}else{if(o.top>0)r=u.resolve(s+n.map[o.left]);if(l.bottom<n.height)e=u.resolve(s+n.map[n.width*(n.height-1)+l.right-1])}return new t(e,r)}isRowSelection(){const t=this.$anchorCell.node(-1);const e=Zg.get(t);const r=this.$anchorCell.start(-1);const i=e.colCount(this.$anchorCell.pos-r);const n=e.colCount(this.$headCell.pos-r);if(Math.min(i,n)>0)return false;const s=i+this.$anchorCell.nodeAfter.attrs.colspan;const l=n+this.$headCell.nodeAfter.attrs.colspan;return Math.max(s,l)==e.width}eq(e){return e instanceof t&&e.$anchorCell.pos==this.$anchorCell.pos&&e.$headCell.pos==this.$headCell.pos}static rowSelection(e,r=e){const i=e.node(-1);const n=Zg.get(i);const s=e.start(-1);const l=n.findCell(e.pos-s);const o=n.findCell(r.pos-s);const u=e.node(0);if(l.left<=o.left){if(l.left>0)e=u.resolve(s+n.map[l.top*n.width]);if(o.right<n.width)r=u.resolve(s+n.map[n.width*(o.top+1)-1])}else{if(o.left>0)r=u.resolve(s+n.map[o.top*n.width]);if(l.right<n.width)e=u.resolve(s+n.map[n.width*(l.top+1)-1])}return new t(e,r)}toJSON(){return{type:"cell",anchor:this.$anchorCell.pos,head:this.$headCell.pos}}static fromJSON(e,r){return new t(e.resolve(r.anchor),e.resolve(r.head))}static create(e,r,i=r){return new t(e.resolve(r),e.resolve(i))}getBookmark(){return new cb(this.$anchorCell.pos,this.$headCell.pos)}};ab.prototype.visible=false;Vi.jsonID("cell",ab);var cb=class t{constructor(t,e){this.anchor=t;this.head=e}map(e){return new t(e.map(this.anchor),e.map(this.head))}resolve(t){const e=t.resolve(this.anchor),r=t.resolve(this.head);if(e.parent.type.spec.tableRole=="row"&&r.parent.type.spec.tableRole=="row"&&e.index()<e.parent.childCount&&r.index()<r.parent.childCount&&ub(e,r))return new ab(e,r);else return Vi.near(r,1)}};function db(t){if(!(t.selection instanceof ab))return null;const e=[];t.selection.forEachCell(((t,r)=>{e.push(Ko.node(r,r+t.nodeSize,{class:"selectedCell"}))}));return Xo.create(t.doc,e)}function pb({$from:t,$to:e}){if(t.pos==e.pos||t.pos<t.pos-6)return false;let r=t.pos;let i=e.pos;let n=t.depth;for(;n>=0;n--,r++)if(t.after(n+1)<t.end(n))break;for(let t=e.depth;t>=0;t--,i--)if(e.before(t+1)>e.start(t))break;return r==i&&/row|table/.test(t.node(n).type.spec.tableRole)}function mb({$from:t,$to:e}){let r;let i;for(let e=t.depth;e>0;e--){const i=t.node(e);if(i.type.spec.tableRole==="cell"||i.type.spec.tableRole==="header_cell"){r=i;break}}for(let t=e.depth;t>0;t--){const r=e.node(t);if(r.type.spec.tableRole==="cell"||r.type.spec.tableRole==="header_cell"){i=r;break}}return r!==i&&e.parentOffset===0}function wb(t,e,r){const i=(e||t).selection;const n=(e||t).doc;let s;let l;if(i instanceof en&&(l=i.node.type.spec.tableRole)){if(l=="cell"||l=="header_cell"){s=ab.create(n,i.from)}else if(l=="row"){const t=n.resolve(i.from+1);s=ab.rowSelection(t,t)}else if(!r){const t=Zg.get(i.node);const e=i.from+1;const r=e+t.map[t.width*t.height-1];s=ab.create(n,e+1,r)}}else if(i instanceof Qi&&pb(i)){s=Qi.create(n,i.from)}else if(i instanceof Qi&&mb(i)){s=Qi.create(n,i.$from.start(),i.$from.end())}if(s)(e||(e=t.tr)).setSelection(s);return e}var gb=new vn("fix-tables");function bb(t,e,r,i){const n=t.childCount,s=e.childCount;t:for(let l=0,o=0;l<s;l++){const s=e.child(l);for(let e=o,i=Math.min(n,l+3);e<i;e++){if(t.child(e)==s){o=e+1;r+=s.nodeSize;continue t}}i(s,r);if(o<n&&t.child(o).sameMarkup(s))bb(t.child(o),s,r+1,i);else s.nodesBetween(0,s.content.size,i,r+1);r+=s.nodeSize}}function kb(t,e){let r;const i=(e,i)=>{if(e.type.spec.tableRole=="table")r=Db(t,e,i,r)};if(!e)t.doc.descendants(i);else if(e.doc!=t.doc)bb(e.doc,t.doc,0,i);return r}function Db(t,e,r,i){const n=Zg.get(e);if(!n.problems)return i;if(!i)i=t.tr;const s=[];for(let t=0;t<n.height;t++)s.push(0);for(let t=0;t<n.problems.length;t++){const l=n.problems[t];if(l.type=="collision"){const t=e.nodeAt(l.pos);if(!t)continue;const n=t.attrs;for(let t=0;t<n.rowspan;t++)s[l.row+t]+=l.n;i.setNodeMarkup(i.mapping.map(r+1+l.pos),null,hb(n,n.colspan-l.n,l.n))}else if(l.type=="missing"){s[l.row]+=l.n}else if(l.type=="overlong_rowspan"){const t=e.nodeAt(l.pos);if(!t)continue;i.setNodeMarkup(i.mapping.map(r+1+l.pos),null,{...t.attrs,rowspan:t.attrs.rowspan-l.n})}else if(l.type=="colwidth mismatch"){const t=e.nodeAt(l.pos);if(!t)continue;i.setNodeMarkup(i.mapping.map(r+1+l.pos),null,{...t.attrs,colwidth:l.colwidth})}}let l,o;for(let t=0;t<s.length;t++)if(s[t]){if(l==null)l=t;o=t}for(let u=0,f=r+1;u<n.height;u++){const r=e.child(u);const n=f+r.nodeSize;const h=s[u];if(h>0){let e="cell";if(r.firstChild){e=r.firstChild.type.spec.tableRole}const s=[];for(let r=0;r<h;r++){const r=eb(t.schema)[e].createAndFill();if(r)s.push(r)}const a=(u==0||l==u-1)&&o==u?f+1:n-1;i.insert(i.mapping.map(a),s)}f=n}return i.setMeta(gb,{fixTables:true})}function vb(t,e){const r=t.selection;if(!(r instanceof ab))return false;if(e){const i=t.tr;const n=eb(t.schema).cell.createAndFill().content;r.forEachCell(((t,e)=>{if(!t.content.eq(n))i.replace(i.mapping.map(e+1),i.mapping.map(e+t.nodeSize-1),new Fe(n,0,0))}));if(i.docChanged)e(i)}return true}function yb(t){if(!t.size)return null;let{content:e,openStart:r,openEnd:i}=t;while(e.childCount==1&&(r>0&&i>0||e.child(0).type.spec.tableRole=="table")){r--;i--;e=e.child(0).content}const n=e.child(0);const s=n.type.spec.tableRole;const l=n.type.schema,o=[];if(s=="row"){for(let t=0;t<e.childCount;t++){let n=e.child(t).content;const s=t?0:Math.max(0,r-1);const u=t<e.childCount-1?0:Math.max(0,i-1);if(s||u)n=Eb(eb(l).row,new Fe(n,s,u)).content;o.push(n)}}else if(s=="cell"||s=="header_cell"){o.push(r||i?Eb(eb(l).row,new Fe(e,r,i)).content:e)}else{return null}return Fb(l,o)}function Fb(t,e){const r=[];for(let t=0;t<e.length;t++){const i=e[t];for(let e=i.childCount-1;e>=0;e--){const{rowspan:n,colspan:s}=i.child(e).attrs;for(let e=t;e<t+n;e++)r[e]=(r[e]||0)+s}}let i=0;for(let t=0;t<r.length;t++)i=Math.max(i,r[t]);for(let n=0;n<r.length;n++){if(n>=e.length)e.push(ge.empty);if(r[n]<i){const s=eb(t).cell.createAndFill();const l=[];for(let t=r[n];t<i;t++){l.push(s)}e[n]=e[n].append(ge.from(l))}}return{height:e.length,width:i,rows:e}}function Eb(t,e){const r=t.createAndFill();const i=new Zi(r).replace(0,r.content.size,e);return i.doc}function Mb({width:t,height:e,rows:r},i,n){if(t!=i){const e=[];const n=[];for(let t=0;t<r.length;t++){const s=r[t],l=[];for(let r=e[t]||0,n=0;r<i;n++){let o=s.child(n%s.childCount);if(r+o.attrs.colspan>i)o=o.type.createChecked(hb(o.attrs,o.attrs.colspan,r+o.attrs.colspan-i),o.content);l.push(o);r+=o.attrs.colspan;for(let r=1;r<o.attrs.rowspan;r++)e[t+r]=(e[t+r]||0)+o.attrs.colspan}n.push(ge.from(l))}r=n;t=i}if(e!=n){const t=[];for(let i=0,s=0;i<n;i++,s++){const l=[],o=r[s%e];for(let t=0;t<o.childCount;t++){let e=o.child(t);if(i+e.attrs.rowspan>n)e=e.type.create({...e.attrs,rowspan:Math.max(1,n-e.attrs.rowspan)},e.content);l.push(e)}t.push(ge.from(l))}r=t;e=n}return{width:t,height:e,rows:r}}function xb(t,e,r,i,n,s,l){const o=t.doc.type.schema;const u=eb(o);let f;let h;if(n>e.width){for(let s=0,o=0;s<e.height;s++){const a=r.child(s);o+=a.nodeSize;const c=[];let d;if(a.lastChild==null||a.lastChild.type==u.cell)d=f||(f=u.cell.createAndFill());else d=h||(h=u.header_cell.createAndFill());for(let t=e.width;t<n;t++)c.push(d);t.insert(t.mapping.slice(l).map(o-1+i),c)}}if(s>e.height){const o=[];for(let t=0,i=(e.height-1)*e.width;t<Math.max(e.width,n);t++){const n=t>=e.width?false:r.nodeAt(e.map[i+t]).type==u.header_cell;o.push(n?h||(h=u.header_cell.createAndFill()):f||(f=u.cell.createAndFill()))}const a=u.row.create(null,ge.from(o)),c=[];for(let t=e.height;t<s;t++)c.push(a);t.insert(t.mapping.slice(l).map(i+r.nodeSize-2),c)}return!!(f||h)}function Ab(t,e,r,i,n,s,l,o){if(l==0||l==e.height)return false;let u=false;for(let f=n;f<s;f++){const n=l*e.width+f,s=e.map[n];if(e.map[n-e.width]==s){u=true;const n=r.nodeAt(s);const{top:h,left:a}=e.findCell(s);t.setNodeMarkup(t.mapping.slice(o).map(s+i),null,{...n.attrs,rowspan:l-h});t.insert(t.mapping.slice(o).map(e.positionAt(l,a,r)),n.type.createAndFill({...n.attrs,rowspan:h+n.attrs.rowspan-l}));f+=n.attrs.colspan-1}}return u}function Cb(t,e,r,i,n,s,l,o){if(l==0||l==e.width)return false;let u=false;for(let f=n;f<s;f++){const n=f*e.width+l,s=e.map[n];if(e.map[n-1]==s){u=true;const n=r.nodeAt(s);const h=e.colCount(s);const a=t.mapping.slice(o).map(s+i);t.setNodeMarkup(a,null,hb(n.attrs,l-h,n.attrs.colspan-(l-h)));t.insert(a+n.nodeSize,n.type.createAndFill(hb(n.attrs,0,l-h)));f+=n.attrs.rowspan-1}}return u}function Sb(t,e,r,i,n){let s=r?t.doc.nodeAt(r-1):t.doc;if(!s){throw new Error("No table found")}let l=Zg.get(s);const{top:o,left:u}=i;const f=u+n.width,h=o+n.height;const a=t.tr;let c=0;function d(){s=r?a.doc.nodeAt(r-1):a.doc;if(!s){throw new Error("No table found")}l=Zg.get(s);c=a.mapping.maps.length}if(xb(a,l,s,r,f,h,c))d();if(Ab(a,l,s,r,u,f,o,c))d();if(Ab(a,l,s,r,u,f,h,c))d();if(Cb(a,l,s,r,o,h,u,c))d();if(Cb(a,l,s,r,o,h,f,c))d();for(let t=o;t<h;t++){const e=l.positionAt(t,u,s),i=l.positionAt(t,f,s);a.replace(a.mapping.slice(c).map(e+r),a.mapping.slice(c).map(i+r),new Fe(n.rows[t-o],0,0))}d();a.setSelection(new ab(a.doc.resolve(r+l.positionAt(o,u,s)),a.doc.resolve(r+l.positionAt(h-1,f-1,s))));e(a)}var Ob=vf({ArrowLeft:_b("horiz",-1),ArrowRight:_b("horiz",1),ArrowUp:_b("vert",-1),ArrowDown:_b("vert",1),"Shift-ArrowLeft":Bb("horiz",-1),"Shift-ArrowRight":Bb("horiz",1),"Shift-ArrowUp":Bb("vert",-1),"Shift-ArrowDown":Bb("vert",1),Backspace:vb,"Mod-Backspace":vb,Delete:vb,"Mod-Delete":vb});function $b(t,e,r){if(r.eq(t.selection))return false;if(e)e(t.tr.setSelection(r).scrollIntoView());return true}function _b(t,e){return(r,i,n)=>{if(!n)return false;const s=r.selection;if(s instanceof ab){return $b(r,i,Vi.near(s.$headCell,e))}if(t!="horiz"&&!s.empty)return false;const l=qb(n,t,e);if(l==null)return false;if(t=="horiz"){return $b(r,i,Vi.near(r.doc.resolve(s.head+e),e))}else{const n=r.doc.resolve(l);const s=fb(n,t,e);let o;if(s)o=Vi.near(s,1);else if(e<0)o=Vi.near(r.doc.resolve(n.before(-1)),-1);else o=Vi.near(r.doc.resolve(n.after(-1)),1);return $b(r,i,o)}}}function Bb(t,e){return(r,i,n)=>{if(!n)return false;const s=r.selection;let l;if(s instanceof ab){l=s}else{const i=qb(n,t,e);if(i==null)return false;l=new ab(r.doc.resolve(i))}const o=fb(l.$headCell,t,e);if(!o)return false;return $b(r,i,new ab(l.$anchorCell,o))}}function Rb(t,e){const r=t.state.doc,i=ib(r.resolve(e));if(!i)return false;t.dispatch(t.state.tr.setSelection(new ab(i)));return true}function jb(t,e,r){if(!nb(t.state))return false;let i=yb(r);const n=t.state.selection;if(n instanceof ab){if(!i)i={width:1,height:1,rows:[ge.from(Eb(eb(t.state.schema).cell,r))]};const e=n.$anchorCell.node(-1);const s=n.$anchorCell.start(-1);const l=Zg.get(e).rectBetween(n.$anchorCell.pos-s,n.$headCell.pos-s);i=Mb(i,l.right-l.left,l.bottom-l.top);Sb(t.state,t.dispatch,s,l,i);return true}else if(i){const e=sb(t.state);const r=e.start(-1);Sb(t.state,t.dispatch,r,Zg.get(e.node(-1)).findCell(e.pos-r),i);return true}else{return false}}function Nb(t,e){var r;if(e.ctrlKey||e.metaKey)return;const i=zb(t,e.target);let n;if(e.shiftKey&&t.state.selection instanceof ab){s(t.state.selection.$anchorCell,e);e.preventDefault()}else if(e.shiftKey&&i&&(n=ib(t.state.selection.$anchor))!=null&&((r=Tb(t,e))==null?void 0:r.pos)!=n.pos){s(n,e);e.preventDefault()}else if(!i){return}function s(e,r){let i=Tb(t,r);const n=rb.getState(t.state)==null;if(!i||!ub(e,i)){if(n)i=e;else return}const s=new ab(e,i);if(n||!t.state.selection.eq(s)){const r=t.state.tr.setSelection(s);if(n)r.setMeta(rb,e.pos);t.dispatch(r)}}function l(){t.root.removeEventListener("mouseup",l);t.root.removeEventListener("dragstart",l);t.root.removeEventListener("mousemove",o);if(rb.getState(t.state)!=null)t.dispatch(t.state.tr.setMeta(rb,-1))}function o(r){const n=r;const o=rb.getState(t.state);let u;if(o!=null){u=t.state.doc.resolve(o)}else if(zb(t,n.target)!=i){u=Tb(t,e);if(!u)return l()}if(u)s(u,n)}t.root.addEventListener("mouseup",l);t.root.addEventListener("dragstart",l);t.root.addEventListener("mousemove",o)}function qb(t,e,r){if(!(t.state.selection instanceof Qi))return null;const{$head:i}=t.state.selection;for(let n=i.depth-1;n>=0;n--){const s=i.node(n),l=r<0?i.index(n):i.indexAfter(n);if(l!=(r<0?0:s.childCount))return null;if(s.type.spec.tableRole=="cell"||s.type.spec.tableRole=="header_cell"){const s=i.before(n);const l=e=="vert"?r>0?"down":"up":r>0?"right":"left";return t.endOfTextblock(l)?s:null}}return null}function zb(t,e){for(;e&&e!=t.dom;e=e.parentNode){if(e.nodeName=="TD"||e.nodeName=="TH"){return e}}return null}function Tb(t,e){const r=t.posAtCoords({left:e.clientX,top:e.clientY});if(!r)return null;return r?ib(t.state.doc.resolve(r.pos)):null}new vn("tableColumnResizing");function Ib({allowTableNodeSelection:t=false}={}){return new bn({key:rb,state:{init(){return null},apply(t,e){const r=t.getMeta(rb);if(r!=null)return r==-1?null:r;if(e==null||!t.docChanged)return e;const{deleted:i,pos:n}=t.mapping.mapResult(e);return i?null:n}},props:{decorations:db,handleDOMEvents:{mousedown:Nb},createSelectionBetween(t){return rb.getState(t.state)!=null?t.state.selection:null},handleTripleClick:Rb,handleKeyDown:Ob,handlePaste:jb},appendTransaction(e,r,i){return wb(i,kb(i,r),t)}})}const Pb=t=>{if(t){return[Ib()]}return[]};const Jb=t=>({default:null,getFromDOM:e=>e.style[t]||null,setDOMAttr:(e,r)=>{if(e){r.style=(r.style||"")+`${t}: ${e};`}}});const Lb=()=>tb({tableGroup:"block",cellContent:"block+",cellAttributes:{background:Jb("background-color"),color:Jb("color")}});const Wb='@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 Ub=300;const Hb=class{constructor(r){t(this,r);this.change=e(this,"change",7);this.changeWaiting=false;this.suppressChangeEvent=false;this.getActionBarItems=()=>{this.actionBarItems=$c().map(this.getTranslatedItem)};this.getTranslatedItem=t=>{const e=de(t);if(O(t)){const r=_c[t.value];if(r){e.text=C.get(r,this.language)}}return e};this.updateActiveActionBarItems=t=>{const e=$c().map((e=>{if(O(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 r=this.contentConverter.serialize(this.view,this.schema);if(r===this.lastEmittedValue){return}this.lastEmittedValue=r;this.changeWaiting=true;this.changeEmitter(r)};this.handleActionBarItem=t=>{t.preventDefault();t.stopImmediatePropagation();const{value:e}=t.detail;if(e===oc.Link){this.isLinkMenuOpen=true;return}const r=new CustomEvent("actionBarItemClick",{detail:t.detail});this.view.dom.dispatchEvent(r)};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:oc.Link,link:this.link}});this.view.dom.dispatchEvent(t);this.link={href:"https://"}};this.handleLinkChange=t=>{this.link=t.detail};this.handleFocus=()=>{var t;(t=this.view)===null||t===void 0?void 0:t.focus()};this.handleNewLinkSelection=(t,e)=>{this.link.text=t;this.link.href=e||"https://"};this.handleOpenLinkMenu=t=>{t.stopImmediatePropagation();const{href:e,text:r}=t.detail;this.link={href:e,text:r};this.isLinkMenuOpen=true};this.changeEmitter=_((t=>{this.change.emit(t);this.changeWaiting=false}),Ub);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=S()}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,r;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);(r=this.view)===null||r===void 0?void 0:r.destroy()}render(){return r(i,{onFocus:this.handleFocus},r("div",{id:"editor"}),r("div",{class:"toolbar"},r("limel-action-bar",{ref:t=>this.actionBarElement=t,accessibleLabel:"Toolbar",actions:this.actionBarItems,onItemSelected:this.handleActionBarItem})),this.renderLinkMenu())}renderLinkMenu(){if(!this.isLinkMenuOpen){return}return r("limel-portal",{containerId:this.portalId,visible:this.isLinkMenuOpen,openDirection:"top",inheritParentWidth:true,anchor:this.actionBarElement},r("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 sg(this.customElements)}else if(this.contentType==="html"){this.contentConverter=new lg}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 Cu(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=Hu.spec.nodes;this.customElements.forEach((e=>{const r=Bg(e);const i=e.tagName;t=t.append({[i]:r})}));t=tf(t,"paragraph block*","block");if(this.contentType==="html"){t=t.append(Lb())}return new dr({nodes:t,marks:Hu.spec.marks.append({strikethrough:og})})}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 gr.fromSchema(this.schema).parse(t)}createEditorState(t){return wn.create({doc:t,plugins:[...lc({schema:this.schema,menuBar:false}),Df(this.menuCommandFactory.buildKeymap()),vg(this.handleNewLinkSelection),Wg(this.triggerCharacters),Fg(),Sg(uc,this.menuCommandFactory,this.updateActiveActionBarItems),_g(this.menuCommandFactory),...Pb(this.contentType==="html")]})}async updateView(t){this.suppressChangeEvent=true;const e=await this.contentConverter.parseAsHTML(t,this.schema);const r=gr.fromSchema(this.view.state.schema);const i=new window.DOMParser;const n=i.parseFromString(e,"text/html");const s=r.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}get host(){return n(this)}static get watchers(){return{value:["watchValue"]}}};Hb.style=Wb;export{Hb as limel_prosemirror_adapter};
2
+ //# sourceMappingURL=p-0e48c25c.entry.js.map