@limetech/lime-elements 37.39.0 → 37.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -0
- package/dist/cjs/limel-dynamic-label_4.cjs.entry.js +3 -1
- package/dist/cjs/limel-dynamic-label_4.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +127 -81
- package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js.map +1 -1
- package/dist/collection/components/list/list.js +3 -1
- package/dist/collection/components/list/list.js.map +1 -1
- package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-commands.js +70 -65
- package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-commands.js.map +1 -1
- package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-items.js +9 -8
- package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-items.js.map +1 -1
- package/dist/collection/components/text-editor/prosemirror-adapter/menu/types.js +32 -0
- package/dist/collection/components/text-editor/prosemirror-adapter/menu/types.js.map +1 -0
- package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js +19 -8
- package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js.map +1 -1
- package/dist/esm/limel-dynamic-label_4.entry.js +3 -1
- package/dist/esm/limel-dynamic-label_4.entry.js.map +1 -1
- package/dist/esm/limel-prosemirror-adapter.entry.js +127 -81
- package/dist/esm/limel-prosemirror-adapter.entry.js.map +1 -1
- package/dist/lime-elements/lime-elements.esm.js +1 -1
- package/dist/lime-elements/{p-2967d51c.entry.js → p-4dfeeaf0.entry.js} +2 -2
- package/dist/lime-elements/{p-2967d51c.entry.js.map → p-4dfeeaf0.entry.js.map} +1 -1
- package/dist/lime-elements/{p-fecf1bf1.entry.js → p-e9f943ac.entry.js} +2 -2
- package/dist/lime-elements/p-e9f943ac.entry.js.map +1 -0
- package/dist/types/components/text-editor/prosemirror-adapter/menu/menu-commands.d.ts +10 -6
- package/dist/types/components/text-editor/prosemirror-adapter/menu/menu-items.d.ts +2 -1
- package/dist/types/components/text-editor/prosemirror-adapter/prosemirror-adapter.d.ts +2 -0
- package/package.json +1 -1
- package/dist/lime-elements/p-fecf1bf1.entry.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,g as r}from"./p-443111b3.js";import{d as n,m as s}from"./p-714d3ef8.js";import"./p-eab67c09.js";function l(t){this.content=t}l.prototype={constructor:l,find:function(t){for(var e=0;e<this.content.length;e+=2)if(this.content[e]===t)return e;return-1},get:function(t){var e=this.find(t);return e==-1?undefined:this.content[e+1]},update:function(t,e,i){var r=i&&i!=t?this.remove(i):this;var n=r.find(t),s=r.content.slice();if(n==-1){s.push(i||t,e)}else{s[n+1]=e;if(i)s[n]=i}return new l(s)},remove:function(t){var e=this.find(t);if(e==-1)return this;var i=this.content.slice();i.splice(e,2);return new l(i)},addToStart:function(t,e){return new l([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var i=this.remove(t).content.slice();i.push(t,e);return new l(i)},addBefore:function(t,e,i){var r=this.remove(e),n=r.content.slice();var s=r.find(t);n.splice(s==-1?n.length:s,0,e,i);return new l(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=l.from(t);if(!t.size)return this;return new l(t.content.concat(this.subtract(t).content))},append:function(t){t=l.from(t);if(!t.size)return this;return new l(this.subtract(t).content.concat(t.content))},subtract:function(t){var e=this;t=l.from(t);for(var i=0;i<t.content.length;i+=2)e=e.remove(t.content[i]);return e},toObject:function(){var t={};this.forEach((function(e,i){t[e]=i}));return t},get size(){return this.content.length>>1}};l.from=function(t){if(t instanceof l)return t;var e=[];if(t)for(var i in t)e.push(i,t[i]);return new l(e)};function u(t,e,i){for(let r=0;;r++){if(r==t.childCount||r==e.childCount)return t.childCount==e.childCount?null:i;let n=t.child(r),s=e.child(r);if(n==s){i+=n.nodeSize;continue}if(!n.sameMarkup(s))return i;if(n.isText&&n.text!=s.text){for(let t=0;n.text[t]==s.text[t];t++)i++;return i}if(n.content.size||s.content.size){let t=u(n.content,s.content,i+1);if(t!=null)return t}i+=n.nodeSize}}function o(t,e,i,r){for(let n=t.childCount,s=e.childCount;;){if(n==0||s==0)return n==s?null:{a:i,b:r};let l=t.child(--n),u=e.child(--s),f=l.nodeSize;if(l==u){i-=f;r-=f;continue}if(!l.sameMarkup(u))return{a:i,b:r};if(l.isText&&l.text!=u.text){let t=0,e=Math.min(l.text.length,u.text.length);while(t<e&&l.text[l.text.length-t-1]==u.text[u.text.length-t-1]){t++;i--;r--}return{a:i,b:r}}if(l.content.size||u.content.size){let t=o(l.content,u.content,i-1,r-1);if(t)return t}i-=f;r-=f}}class f{constructor(t,e){this.content=t;this.size=e||0;if(e==null)for(let e=0;e<t.length;e++)this.size+=t[e].nodeSize}nodesBetween(t,e,i,r=0,n){for(let s=0,l=0;l<e;s++){let u=this.content[s],o=l+u.nodeSize;if(o>t&&i(u,r+l,n||null,s)!==false&&u.content.size){let n=l+1;u.nodesBetween(Math.max(0,t-n),Math.min(u.content.size,e-n),i,r+n)}l=o}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,i,r){let n="",s=true;this.nodesBetween(t,e,((l,u)=>{let o=l.isText?l.text.slice(Math.max(t,u)-u,e-u):!l.isLeaf?"":r?typeof r==="function"?r(l):r:l.type.spec.leafText?l.type.spec.leafText(l):"";if(l.isBlock&&(l.isLeaf&&o||l.isTextblock)&&i){if(s)s=false;else n+=i}n+=o}),0);return n}append(t){if(!t.size)return this;if(!this.size)return t;let e=this.lastChild,i=t.firstChild,r=this.content.slice(),n=0;if(e.isText&&e.sameMarkup(i)){r[r.length-1]=e.withText(e.text+i.text);n=1}for(;n<t.content.length;n++)r.push(t.content[n]);return new f(r,this.size+t.size)}cut(t,e=this.size){if(t==0&&e==this.size)return this;let i=[],r=0;if(e>t)for(let n=0,s=0;s<e;n++){let l=this.content[n],u=s+l.nodeSize;if(u>t){if(s<t||u>e){if(l.isText)l=l.cut(Math.max(0,t-s),Math.min(l.text.length,e-s));else l=l.cut(Math.max(0,t-s-1),Math.min(l.content.size,e-s-1))}i.push(l);r+=l.nodeSize}s=u}return new f(i,r)}cutByIndex(t,e){if(t==e)return f.empty;if(t==0&&e==this.content.length)return this;return new f(this.content.slice(t,e))}replaceChild(t,e){let i=this.content[t];if(i==e)return this;let r=this.content.slice();let n=this.size+e.nodeSize-i.nodeSize;r[t]=e;return new f(r,n)}addToStart(t){return new f([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new f(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return false;for(let e=0;e<this.content.length;e++)if(!this.content[e].eq(t.content[e]))return false;return true}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(t){let e=this.content[t];if(!e)throw new RangeError("Index "+t+" out of range for "+this);return e}maybeChild(t){return this.content[t]||null}forEach(t){for(let e=0,i=0;e<this.content.length;e++){let r=this.content[e];t(r,i,e);i+=r.nodeSize}}findDiffStart(t,e=0){return u(this,t,e)}findDiffEnd(t,e=this.size,i=t.size){return o(this,t,e,i)}findIndex(t,e=-1){if(t==0)return a(0,t);if(t==this.size)return a(this.content.length,t);if(t>this.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let i=0,r=0;;i++){let n=this.child(i),s=r+n.nodeSize;if(s>=t){if(s==t||e>0)return a(i+1,s);return a(i,r)}r=s}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map((t=>t.toJSON())):null}static fromJSON(t,e){if(!e)return f.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new f(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return f.empty;let e,i=0;for(let r=0;r<t.length;r++){let n=t[r];i+=n.nodeSize;if(r&&n.isText&&t[r-1].sameMarkup(n)){if(!e)e=t.slice(0,r);e[e.length-1]=n.withText(e[e.length-1].text+n.text)}else if(e){e.push(n)}}return new f(e||t,i)}static from(t){if(!t)return f.empty;if(t instanceof f)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new f([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}f.empty=new f([],0);const h={index:0,offset:0};function a(t,e){h.index=t;h.offset=e;return h}function c(t,e){if(t===e)return true;if(!(t&&typeof t=="object")||!(e&&typeof e=="object"))return false;let i=Array.isArray(t);if(Array.isArray(e)!=i)return false;if(i){if(t.length!=e.length)return false;for(let i=0;i<t.length;i++)if(!c(t[i],e[i]))return false}else{for(let i in t)if(!(i in e)||!c(t[i],e[i]))return false;for(let i in e)if(!(i in t))return false}return true}class d{constructor(t,e){this.type=t;this.attrs=e}addToSet(t){let e,i=false;for(let r=0;r<t.length;r++){let n=t[r];if(this.eq(n))return t;if(this.type.excludes(n.type)){if(!e)e=t.slice(0,r)}else if(n.type.excludes(this.type)){return t}else{if(!i&&n.type.rank>this.type.rank){if(!e)e=t.slice(0,r);e.push(this);i=true}if(e)e.push(n)}}if(!e)e=t.slice();if(!i)e.push(this);return e}removeFromSet(t){for(let e=0;e<t.length;e++)if(this.eq(t[e]))return t.slice(0,e).concat(t.slice(e+1));return t}isInSet(t){for(let e=0;e<t.length;e++)if(this.eq(t[e]))return true;return false}eq(t){return this==t||this.type==t.type&&c(this.attrs,t.attrs)}toJSON(){let t={type:this.type.name};for(let e in this.attrs){t.attrs=this.attrs;break}return t}static fromJSON(t,e){if(!e)throw new RangeError("Invalid input for Mark.fromJSON");let i=t.marks[e.type];if(!i)throw new RangeError(`There is no mark type ${e.type} in this schema`);return i.create(e.attrs)}static sameSet(t,e){if(t==e)return true;if(t.length!=e.length)return false;for(let i=0;i<t.length;i++)if(!t[i].eq(e[i]))return false;return true}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return d.none;if(t instanceof d)return[t];let e=t.slice();e.sort(((t,e)=>t.type.rank-e.type.rank));return e}}d.none=[];class p extends Error{}class m{constructor(t,e,i){this.content=t;this.openStart=e;this.openEnd=i}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,e){let i=g(this.content,t+this.openStart,e);return i&&new m(i,this.openStart,this.openEnd)}removeBetween(t,e){return new m(w(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 m.empty;let i=e.openStart||0,r=e.openEnd||0;if(typeof i!="number"||typeof r!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new m(f.fromJSON(t,e.content),i,r)}static maxOpen(t,e=true){let i=0,r=0;for(let r=t.firstChild;r&&!r.isLeaf&&(e||!r.type.spec.isolating);r=r.firstChild)i++;for(let i=t.lastChild;i&&!i.isLeaf&&(e||!i.type.spec.isolating);i=i.lastChild)r++;return new m(t,i,r)}}m.empty=new m(f.empty,0,0);function w(t,e,i){let{index:r,offset:n}=t.findIndex(e),s=t.maybeChild(r);let{index:l,offset:u}=t.findIndex(i);if(n==e||s.isText){if(u!=i&&!t.child(l).isText)throw new RangeError("Removing non-flat range");return t.cut(0,e).append(t.cut(i))}if(r!=l)throw new RangeError("Removing non-flat range");return t.replaceChild(r,s.copy(w(s.content,e-n-1,i-n-1)))}function g(t,e,i,r){let{index:n,offset:s}=t.findIndex(e),l=t.maybeChild(n);if(s==e||l.isText){if(r&&!r.canReplace(n,n,i))return null;return t.cut(0,e).append(i).append(t.cut(e))}let u=g(l.content,e-s-1,i);return u&&t.replaceChild(n,l.copy(u))}function b(t,e,i){if(i.openStart>t.depth)throw new p("Inserted content deeper than insertion position");if(t.depth-i.openStart!=e.depth-i.openEnd)throw new p("Inconsistent open depths");return D(t,e,i,0)}function D(t,e,i,r){let n=t.index(r),s=t.node(r);if(n==e.index(r)&&r<t.depth-i.openStart){let l=D(t,e,i,r+1);return s.copy(s.content.replaceChild(n,l))}else if(!i.content.size){return E(s,M(t,e,r))}else if(!i.openStart&&!i.openEnd&&t.depth==r&&e.depth==r){let r=t.parent,n=r.content;return E(r,n.cut(0,t.parentOffset).append(i.content).append(n.cut(e.parentOffset)))}else{let{start:n,end:l}=A(i,t);return E(s,x(t,n,l,e,r))}}function k(t,e){if(!e.type.compatibleContent(t.type))throw new p("Cannot join "+e.type.name+" onto "+t.type.name)}function v(t,e,i){let r=t.node(i);k(r,e.node(i));return r}function y(t,e){let i=e.length-1;if(i>=0&&t.isText&&t.sameMarkup(e[i]))e[i]=t.withText(e[i].text+t.text);else e.push(t)}function F(t,e,i,r){let n=(e||t).node(i);let s=0,l=e?e.index(i):n.childCount;if(t){s=t.index(i);if(t.depth>i){s++}else if(t.textOffset){y(t.nodeAfter,r);s++}}for(let t=s;t<l;t++)y(n.child(t),r);if(e&&e.depth==i&&e.textOffset)y(e.nodeBefore,r)}function E(t,e){t.type.checkContent(e);return t.copy(e)}function x(t,e,i,r,n){let s=t.depth>n&&v(t,e,n+1);let l=r.depth>n&&v(i,r,n+1);let u=[];F(null,t,n,u);if(s&&l&&e.index(n)==i.index(n)){k(s,l);y(E(s,x(t,e,i,r,n+1)),u)}else{if(s)y(E(s,M(t,e,n+1)),u);F(e,i,n,u);if(l)y(E(l,M(i,r,n+1)),u)}F(r,null,n,u);return new f(u)}function M(t,e,i){let r=[];F(null,t,i,r);if(t.depth>i){let n=v(t,e,i+1);y(E(n,M(t,e,i+1)),r)}F(e,null,i,r);return new f(r)}function A(t,e){let i=e.depth-t.openStart,r=e.node(i);let n=r.copy(t.content);for(let t=i-1;t>=0;t--)n=e.node(t).copy(f.from(n));return{start:n.resolveNoCache(t.openStart+i),end:n.resolveNoCache(n.content.size-t.openEnd-i)}}class C{constructor(t,e,i){this.pos=t;this.path=e;this.parentOffset=i;this.depth=e.length/3-1}resolveDepth(t){if(t==null)return this.depth;if(t<0)return this.depth+t;return t}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(t){return this.path[this.resolveDepth(t)*3]}index(t){return this.path[this.resolveDepth(t)*3+1]}indexAfter(t){t=this.resolveDepth(t);return this.index(t)+(t==this.depth&&!this.textOffset?0:1)}start(t){t=this.resolveDepth(t);return t==0?0:this.path[t*3-1]+1}end(t){t=this.resolveDepth(t);return this.start(t)+this.node(t).content.size}before(t){t=this.resolveDepth(t);if(!t)throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]}after(t){t=this.resolveDepth(t);if(!t)throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]+this.path[t*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let t=this.parent,e=this.index(this.depth);if(e==t.childCount)return null;let i=this.pos-this.path[this.path.length-1],r=t.child(e);return i?t.child(e).cut(i):r}get nodeBefore(){let t=this.index(this.depth);let e=this.pos-this.path[this.path.length-1];if(e)return this.parent.child(t).cut(0,e);return t==0?null:this.parent.child(t-1)}posAtIndex(t,e){e=this.resolveDepth(e);let i=this.path[e*3],r=e==0?0:this.path[e*3-1]+1;for(let e=0;e<t;e++)r+=i.child(e).nodeSize;return r}marks(){let t=this.parent,e=this.index();if(t.content.size==0)return d.none;if(this.textOffset)return t.child(e).marks;let i=t.maybeChild(e-1),r=t.maybeChild(e);if(!i){let t=i;i=r;r=t}let n=i.marks;for(var s=0;s<n.length;s++)if(n[s].type.spec.inclusive===false&&(!r||!n[s].isInSet(r.marks)))n=n[s--].removeFromSet(n);return n}marksAcross(t){let e=this.parent.maybeChild(this.index());if(!e||!e.isInline)return null;let i=e.marks,r=t.parent.maybeChild(t.index());for(var n=0;n<i.length;n++)if(i[n].type.spec.inclusive===false&&(!r||!i[n].isInSet(r.marks)))i=i[n--].removeFromSet(i);return i}sharedDepth(t){for(let e=this.depth;e>0;e--)if(this.start(e)<=t&&this.end(e)>=t)return e;return 0}blockRange(t=this,e){if(t.pos<this.pos)return t.blockRange(this);for(let i=this.depth-(this.parent.inlineContent||this.pos==t.pos?1:0);i>=0;i--)if(t.pos<=this.end(i)&&(!e||e(this.node(i))))return new _(this,t,i);return null}sameParent(t){return this.pos-this.parentOffset==t.pos-t.parentOffset}max(t){return t.pos>this.pos?t:this}min(t){return t.pos<this.pos?t:this}toString(){let t="";for(let e=1;e<=this.depth;e++)t+=(t?"/":"")+this.node(e).type.name+"_"+this.index(e-1);return t+":"+this.parentOffset}static resolve(t,e){if(!(e>=0&&e<=t.content.size))throw new RangeError("Position "+e+" out of range");let i=[];let r=0,n=e;for(let e=t;;){let{index:t,offset:s}=e.content.findIndex(n);let l=n-s;i.push(e,t,r+s);if(!l)break;e=e.child(t);if(e.isText)break;n=l-1;r+=s+1}return new C(e,i,n)}static resolveCached(t,e){for(let i=0;i<S.length;i++){let r=S[i];if(r.pos==e&&r.doc==t)return r}let i=S[O]=C.resolve(t,e);O=(O+1)%$;return i}}let S=[],O=0,$=12;class _{constructor(t,e,i){this.$from=t;this.$to=e;this.depth=i}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const B=Object.create(null);class q{constructor(t,e,i,r=d.none){this.type=t;this.attrs=e;this.marks=r;this.content=i||f.empty}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(t){return this.content.child(t)}maybeChild(t){return this.content.maybeChild(t)}forEach(t){this.content.forEach(t)}nodesBetween(t,e,i,r=0){this.content.nodesBetween(t,e,i,r,this)}descendants(t){this.nodesBetween(0,this.content.size,t)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(t,e,i,r){return this.content.textBetween(t,e,i,r)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(t){return this==t||this.sameMarkup(t)&&this.content.eq(t.content)}sameMarkup(t){return this.hasMarkup(t.type,t.attrs,t.marks)}hasMarkup(t,e,i){return this.type==t&&c(this.attrs,e||t.defaultAttrs||B)&&d.sameSet(this.marks,i||d.none)}copy(t=null){if(t==this.content)return this;return new q(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new q(this.type,this.attrs,this.content,t)}cut(t,e=this.content.size){if(t==0&&e==this.content.size)return this;return this.copy(this.content.cut(t,e))}slice(t,e=this.content.size,i=false){if(t==e)return m.empty;let r=this.resolve(t),n=this.resolve(e);let s=i?0:r.sharedDepth(e);let l=r.start(s),u=r.node(s);let o=u.content.cut(r.pos-l,n.pos-l);return new m(o,r.depth-s,n.depth-s)}replace(t,e,i){return b(this.resolve(t),this.resolve(e),i)}nodeAt(t){for(let e=this;;){let{index:i,offset:r}=e.content.findIndex(t);e=e.maybeChild(i);if(!e)return null;if(r==t||e.isText)return e;t-=r+1}}childAfter(t){let{index:e,offset:i}=this.content.findIndex(t);return{node:this.content.maybeChild(e),index:e,offset:i}}childBefore(t){if(t==0)return{node:null,index:0,offset:0};let{index:e,offset:i}=this.content.findIndex(t);if(i<t)return{node:this.content.child(e),index:e,offset:i};let r=this.content.child(e-1);return{node:r,index:e-1,offset:i-r.nodeSize}}resolve(t){return C.resolveCached(this,t)}resolveNoCache(t){return C.resolve(this,t)}rangeHasMark(t,e,i){let r=false;if(e>t)this.nodesBetween(t,e,(t=>{if(i.isInSet(t.marks))r=true;return!r}));return r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let t=this.type.name;if(this.content.size)t+="("+this.content.toStringInner()+")";return N(this.marks,t)}contentMatchAt(t){let e=this.type.contentMatch.matchFragment(this.content,0,t);if(!e)throw new Error("Called contentMatchAt on a node with invalid content");return e}canReplace(t,e,i=f.empty,r=0,n=i.childCount){let s=this.contentMatchAt(t).matchFragment(i,r,n);let l=s&&s.matchFragment(this.content,e);if(!l||!l.validEnd)return false;for(let t=r;t<n;t++)if(!this.type.allowsMarks(i.child(t).marks))return false;return true}canReplaceWith(t,e,i,r){if(r&&!this.type.allowsMarks(r))return false;let n=this.contentMatchAt(t).matchType(i);let s=n&&n.matchFragment(this.content,e);return s?s.validEnd:false}canAppend(t){if(t.content.size)return this.canReplace(this.childCount,this.childCount,t.content);else return this.type.compatibleContent(t.type)}check(){this.type.checkContent(this.content);let t=d.none;for(let e=0;e<this.marks.length;e++)t=this.marks[e].addToSet(t);if(!d.sameSet(t,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map((t=>t.type.name))}`);this.content.forEach((t=>t.check()))}toJSON(){let t={type:this.type.name};for(let e in this.attrs){t.attrs=this.attrs;break}if(this.content.size)t.content=this.content.toJSON();if(this.marks.length)t.marks=this.marks.map((t=>t.toJSON()));return t}static fromJSON(t,e){if(!e)throw new RangeError("Invalid input for Node.fromJSON");let i=null;if(e.marks){if(!Array.isArray(e.marks))throw new RangeError("Invalid mark data for Node.fromJSON");i=e.marks.map(t.markFromJSON)}if(e.type=="text"){if(typeof e.text!="string")throw new RangeError("Invalid text node in JSON");return t.text(e.text,i)}let r=f.fromJSON(t,e.content);return t.nodeType(e.type).create(e.attrs,r,i)}}q.prototype.text=undefined;class R extends q{constructor(t,e,i,r){super(t,e,null,r);if(!i)throw new RangeError("Empty text nodes are not allowed");this.text=i}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);return N(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 R(this.type,this.attrs,this.text,t)}withText(t){if(t==this.text)return this;return new R(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 N(t,e){for(let i=t.length-1;i>=0;i--)e=t[i].type.name+"("+e+")";return e}class z{constructor(t){this.validEnd=t;this.next=[];this.wrapCache=[]}static parse(t,e){let i=new T(t,e);if(i.next==null)return z.empty;let r=I(i);if(i.next)i.err("Unexpected trailing text");let n=V(Z(r));G(n,i);return n}matchType(t){for(let e=0;e<this.next.length;e++)if(this.next[e].type==t)return this.next[e].next;return null}matchFragment(t,e=0,i=t.childCount){let r=this;for(let n=e;r&&n<i;n++)r=r.matchType(t.child(n).type);return r}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let t=0;t<this.next.length;t++){let{type:e}=this.next[t];if(!(e.isText||e.hasRequiredAttrs()))return e}return null}compatible(t){for(let e=0;e<this.next.length;e++)for(let i=0;i<t.next.length;i++)if(this.next[e].type==t.next[i].type)return true;return false}fillBefore(t,e=false,i=0){let r=[this];function n(s,l){let u=s.matchFragment(t,i);if(u&&(!e||u.validEnd))return f.from(l.map((t=>t.createAndFill())));for(let t=0;t<s.next.length;t++){let{type:e,next:i}=s.next[t];if(!(e.isText||e.hasRequiredAttrs())&&r.indexOf(i)==-1){r.push(i);let t=n(i,l.concat(e));if(t)return t}}return null}return n(this,[])}findWrapping(t){for(let e=0;e<this.wrapCache.length;e+=2)if(this.wrapCache[e]==t)return this.wrapCache[e+1];let e=this.computeWrapping(t);this.wrapCache.push(t,e);return e}computeWrapping(t){let e=Object.create(null),i=[{match:this,type:null,via:null}];while(i.length){let r=i.shift(),n=r.match;if(n.matchType(t)){let t=[];for(let e=r;e.type;e=e.via)t.push(e.type);return t.reverse()}for(let t=0;t<n.next.length;t++){let{type:s,next:l}=n.next[t];if(!s.isLeaf&&!s.hasRequiredAttrs()&&!(s.name in e)&&(!r.type||l.validEnd)){i.push({match:s.contentMatch,type:s,via:r});e[s.name]=true}}}return null}get edgeCount(){return this.next.length}edge(t){if(t>=this.next.length)throw new RangeError(`There's no ${t}th edge in this content match`);return this.next[t]}toString(){let t=[];function e(i){t.push(i);for(let r=0;r<i.next.length;r++)if(t.indexOf(i.next[r].next)==-1)e(i.next[r].next)}e(this);return t.map(((e,i)=>{let r=i+(e.validEnd?"*":" ")+" ";for(let i=0;i<e.next.length;i++)r+=(i?", ":"")+e.next[i].type.name+"->"+t.indexOf(e.next[i].next);return r})).join("\n")}}z.empty=new z(true);class T{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 I(t){let e=[];do{e.push(P(t))}while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function P(t){let e=[];do{e.push(j(t))}while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function j(t){let e=U(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=L(t,e);else break}return e}function J(t){if(/\D/.test(t.next))t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);t.pos++;return e}function L(t,e){let i=J(t),r=i;if(t.eat(",")){if(t.next!="}")r=J(t);else r=-1}if(!t.eat("}"))t.err("Unclosed braced range");return{type:"range",min:i,max:r,expr:e}}function W(t,e){let i=t.nodeTypes,r=i[e];if(r)return[r];let n=[];for(let t in i){let r=i[t];if(r.groups.indexOf(e)>-1)n.push(r)}if(n.length==0)t.err("No node type or group '"+e+"' found");return n}function U(t){if(t.eat("(")){let e=I(t);if(!t.eat(")"))t.err("Missing closing paren");return e}else if(!/\W/.test(t.next)){let e=W(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 Z(t){let e=[[]];n(s(t,0),i());return e;function i(){return e.push([])-1}function r(t,i,r){let n={term:r,to:i};e[t].push(n);return n}function n(t,e){t.forEach((t=>t.to=e))}function s(t,e){if(t.type=="choice"){return t.exprs.reduce(((t,i)=>t.concat(s(i,e))),[])}else if(t.type=="seq"){for(let r=0;;r++){let l=s(t.exprs[r],e);if(r==t.exprs.length-1)return l;n(l,e=i())}}else if(t.type=="star"){let l=i();r(e,l);n(s(t.expr,l),l);return[r(l)]}else if(t.type=="plus"){let l=i();n(s(t.expr,e),l);n(s(t.expr,l),l);return[r(l)]}else if(t.type=="opt"){return[r(e)].concat(s(t.expr,e))}else if(t.type=="range"){let l=e;for(let e=0;e<t.min;e++){let e=i();n(s(t.expr,l),e);l=e}if(t.max==-1){n(s(t.expr,l),l)}else{for(let e=t.min;e<t.max;e++){let e=i();r(l,e);n(s(t.expr,l),e);l=e}}return[r(l)]}else if(t.type=="name"){return[r(e,undefined,t.value)]}else{throw new Error("Unknown expr type")}}}function H(t,e){return e-t}function K(t,e){let i=[];r(e);return i.sort(H);function r(e){let n=t[e];if(n.length==1&&!n[0].term)return r(n[0].to);i.push(e);for(let t=0;t<n.length;t++){let{term:e,to:s}=n[t];if(!e&&i.indexOf(s)==-1)r(s)}}}function V(t){let e=Object.create(null);return i(K(t,0));function i(r){let n=[];r.forEach((e=>{t[e].forEach((({term:e,to:i})=>{if(!e)return;let r;for(let t=0;t<n.length;t++)if(n[t][0]==e)r=n[t][1];K(t,i).forEach((t=>{if(!r)n.push([e,r=[]]);if(r.indexOf(t)==-1)r.push(t)}))}))}));let s=e[r.join(",")]=new z(r.indexOf(t.length-1)>-1);for(let t=0;t<n.length;t++){let r=n[t][1].sort(H);s.next.push({type:n[t][0],next:e[r.join(",")]||i(r)})}return s}}function G(t,e){for(let i=0,r=[t];i<r.length;i++){let t=r[i],n=!t.validEnd,s=[];for(let e=0;e<t.next.length;e++){let{type:i,next:l}=t.next[e];s.push(i.name);if(n&&!(i.isText||i.hasRequiredAttrs()))n=false;if(r.indexOf(l)==-1)r.push(l)}if(n)e.err("Only non-generatable nodes ("+s.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function X(t){let e=Object.create(null);for(let i in t){let r=t[i];if(!r.hasDefault)return null;e[i]=r.default}return e}function Y(t,e){let i=Object.create(null);for(let r in t){let n=e&&e[r];if(n===undefined){let e=t[r];if(e.hasDefault)n=e.default;else throw new RangeError("No value supplied for attribute "+r)}i[r]=n}return i}function Q(t){let e=Object.create(null);if(t)for(let i in t)e[i]=new et(t[i]);return e}class tt{constructor(t,e,i){this.name=t;this.schema=e;this.spec=i;this.markSet=null;this.groups=i.group?i.group.split(" "):[];this.attrs=Q(i.attrs);this.defaultAttrs=X(this.attrs);this.contentMatch=null;this.inlineContent=null;this.isBlock=!(i.inline||t=="text");this.isText=t=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==z.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 Y(this.attrs,t)}create(t=null,e,i){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new q(this,this.computeAttrs(t),f.from(e),d.setFrom(i))}createChecked(t=null,e,i){e=f.from(e);this.checkContent(e);return new q(this,this.computeAttrs(t),e,d.setFrom(i))}createAndFill(t=null,e,i){t=this.computeAttrs(t);e=f.from(e);if(e.size){let t=this.contentMatch.fillBefore(e);if(!t)return null;e=t.append(e)}let r=this.contentMatch.matchFragment(e);let n=r&&r.fillBefore(f.empty,true);if(!n)return null;return new q(this,t,e.append(n),d.setFrom(i))}validContent(t){let e=this.contentMatch.matchFragment(t);if(!e||!e.validEnd)return false;for(let e=0;e<t.childCount;e++)if(!this.allowsMarks(t.child(e).marks))return false;return true}checkContent(t){if(!this.validContent(t))throw new RangeError(`Invalid content for node ${this.name}: ${t.toString().slice(0,50)}`)}allowsMarkType(t){return this.markSet==null||this.markSet.indexOf(t)>-1}allowsMarks(t){if(this.markSet==null)return true;for(let e=0;e<t.length;e++)if(!this.allowsMarkType(t[e].type))return false;return true}allowedMarks(t){if(this.markSet==null)return t;let e;for(let i=0;i<t.length;i++){if(!this.allowsMarkType(t[i].type)){if(!e)e=t.slice(0,i)}else if(e){e.push(t[i])}}return!e?t:e.length?e:d.none}static compile(t,e){let i=Object.create(null);t.forEach(((t,r)=>i[t]=new tt(t,e,r)));let r=e.spec.topNode||"doc";if(!i[r])throw new RangeError("Schema is missing its top node type ('"+r+"')");if(!i.text)throw new RangeError("Every schema needs a 'text' type");for(let t in i.text.attrs)throw new RangeError("The text node type should not have attributes");return i}}class et{constructor(t){this.hasDefault=Object.prototype.hasOwnProperty.call(t,"default");this.default=t.default}get isRequired(){return!this.hasDefault}}class it{constructor(t,e,i,r){this.name=t;this.rank=e;this.schema=i;this.spec=r;this.attrs=Q(r.attrs);this.excluded=null;let n=X(this.attrs);this.instance=n?new d(this,n):null}create(t=null){if(!t&&this.instance)return this.instance;return new d(this,Y(this.attrs,t))}static compile(t,e){let i=Object.create(null),r=0;t.forEach(((t,n)=>i[t]=new it(t,r++,e,n)));return i}removeFromSet(t){for(var e=0;e<t.length;e++)if(t[e].type==this){t=t.slice(0,e).concat(t.slice(e+1));e--}return t}isInSet(t){for(let e=0;e<t.length;e++)if(t[e].type==this)return t[e]}excludes(t){return this.excluded.indexOf(t)>-1}}class rt{constructor(t){this.cached=Object.create(null);let e=this.spec={};for(let i in t)e[i]=t[i];e.nodes=l.from(t.nodes),e.marks=l.from(t.marks||{}),this.nodes=tt.compile(this.spec.nodes,this);this.marks=it.compile(this.spec.marks,this);let i=Object.create(null);for(let t in this.nodes){if(t in this.marks)throw new RangeError(t+" can not be both a node and a mark");let e=this.nodes[t],r=e.spec.content||"",n=e.spec.marks;e.contentMatch=i[r]||(i[r]=z.parse(r,this.nodes));e.inlineContent=e.contentMatch.inlineContent;e.markSet=n=="_"?null:n?nt(this,n.split(" ")):n==""||!e.inlineContent?[]:null}for(let t in this.marks){let e=this.marks[t],i=e.spec.excludes;e.excluded=i==null?[e]:i==""?[]:nt(this,i.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this);this.markFromJSON=this.markFromJSON.bind(this);this.topNodeType=this.nodes[this.spec.topNode||"doc"];this.cached.wrappings=Object.create(null)}node(t,e=null,i,r){if(typeof t=="string")t=this.nodeType(t);else if(!(t instanceof tt))throw new RangeError("Invalid node type: "+t);else if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")");return t.createChecked(e,i,r)}text(t,e){let i=this.nodes.text;return new R(i,i.defaultAttrs,t,d.setFrom(e))}mark(t,e){if(typeof t=="string")t=this.marks[t];return t.create(e)}nodeFromJSON(t){return q.fromJSON(this,t)}markFromJSON(t){return d.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function nt(t,e){let i=[];for(let r=0;r<e.length;r++){let n=e[r],s=t.marks[n],l=s;if(s){i.push(s)}else{for(let e in t.marks){let r=t.marks[e];if(n=="_"||r.spec.group&&r.spec.group.split(" ").indexOf(n)>-1)i.push(l=r)}}if(!l)throw new SyntaxError("Unknown mark type: '"+e[r]+"'")}return i}class st{constructor(t,e){this.schema=t;this.rules=e;this.tags=[];this.styles=[];e.forEach((t=>{if(t.tag)this.tags.push(t);else if(t.style)this.styles.push(t)}));this.normalizeLists=!this.tags.some((e=>{if(!/^(ul|ol)\b/.test(e.tag)||!e.node)return false;let i=t.nodes[e.node];return i.contentMatch.matchType(i)}))}parse(t,e={}){let i=new pt(this,e,false);i.addAll(t,e.from,e.to);return i.finish()}parseSlice(t,e={}){let i=new pt(this,e,true);i.addAll(t,e.from,e.to);return m.maxOpen(i.finish())}matchTag(t,e,i){for(let r=i?this.tags.indexOf(i)+1:0;r<this.tags.length;r++){let i=this.tags[r];if(wt(t,i.tag)&&(i.namespace===undefined||t.namespaceURI==i.namespace)&&(!i.context||e.matchesContext(i.context))){if(i.getAttrs){let e=i.getAttrs(t);if(e===false)continue;i.attrs=e||undefined}return i}}}matchStyle(t,e,i,r){for(let n=r?this.styles.indexOf(r)+1:0;n<this.styles.length;n++){let r=this.styles[n],s=r.style;if(s.indexOf(t)!=0||r.context&&!i.matchesContext(r.context)||s.length>t.length&&(s.charCodeAt(t.length)!=61||s.slice(t.length+1)!=e))continue;if(r.getAttrs){let t=r.getAttrs(e);if(t===false)continue;r.attrs=t||undefined}return r}}static schemaRules(t){let e=[];function i(t){let i=t.priority==null?50:t.priority,r=0;for(;r<e.length;r++){let t=e[r],n=t.priority==null?50:t.priority;if(n<i)break}e.splice(r,0,t)}for(let e in t.marks){let r=t.marks[e].spec.parseDOM;if(r)r.forEach((t=>{i(t=bt(t));if(!(t.mark||t.ignore||t.clearMark))t.mark=e}))}for(let e in t.nodes){let r=t.nodes[e].spec.parseDOM;if(r)r.forEach((t=>{i(t=bt(t));if(!(t.node||t.ignore||t.mark))t.node=e}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new st(t,st.schemaRules(t)))}}const lt={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 ut={head:true,noscript:true,object:true,script:true,style:true,title:true};const ot={ol:true,ul:true};const ft=1,ht=2,at=4;function ct(t,e,i){if(e!=null)return(e?ft:0)|(e==="full"?ht:0);return t&&t.whitespace=="pre"?ft|ht:i&~at}class dt{constructor(t,e,i,r,n,s,l){this.type=t;this.attrs=e;this.marks=i;this.pendingMarks=r;this.solid=n;this.options=l;this.content=[];this.activeMarks=d.none;this.stashMarks=[];this.match=s||(l&at?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(f.from(t));if(e){this.match=this.type.contentMatch.matchFragment(e)}else{let e=this.type.contentMatch,i;if(i=e.findWrapping(t.type)){this.match=e;return i}else{return null}}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&ft)){let t=this.content[this.content.length-1],e;if(t&&t.isText&&(e=/[ \t\r\n\u000c]+$/.exec(t.text))){let i=t;if(t.text.length==e[0].length)this.content.pop();else this.content[this.content.length-1]=i.withText(i.text.slice(0,i.text.length-e[0].length))}}let e=f.from(this.content);if(!t&&this.match)e=e.append(this.match.fillBefore(f.empty,true));return this.type?this.type.create(this.attrs,e,this.marks):e}popFromStashMark(t){for(let e=this.stashMarks.length-1;e>=0;e--)if(t.eq(this.stashMarks[e]))return this.stashMarks.splice(e,1)[0]}applyPending(t){for(let e=0,i=this.pendingMarks;e<i.length;e++){let r=i[e];if((this.type?this.type.allowsMarkType(r.type):Dt(r.type,t))&&!r.isInSet(this.activeMarks)){this.activeMarks=r.addToSet(this.activeMarks);this.pendingMarks=r.removeFromSet(this.pendingMarks)}}}inlineContext(t){if(this.type)return this.type.inlineContent;if(this.content.length)return this.content[0].isInline;return t.parentNode&&!lt.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class pt{constructor(t,e,i){this.parser=t;this.options=e;this.isOpen=i;this.open=0;let r=e.topNode,n;let s=ct(null,e.preserveWhitespace,0)|(i?at:0);if(r)n=new dt(r.type,r.attrs,d.none,d.none,true,e.topMatch||r.type.contentMatch,s);else if(i)n=new dt(null,null,d.none,d.none,true,null,s);else n=new dt(t.schema.topNodeType,null,d.none,d.none,true,null,s);this.nodes=[n];this.find=e.findPositions;this.needsBlock=false}get top(){return this.nodes[this.open]}addDOM(t){if(t.nodeType==3)this.addTextNode(t);else if(t.nodeType==1)this.addElement(t)}withStyleRules(t,e){let i=t.getAttribute("style");if(!i)return e();let r=this.readStyles(gt(i));if(!r)return;let[n,s]=r,l=this.top;for(let t=0;t<s.length;t++)this.removePendingMark(s[t],l);for(let t=0;t<n.length;t++)this.addPendingMark(n[t]);e();for(let t=0;t<n.length;t++)this.removePendingMark(n[t],l);for(let t=0;t<s.length;t++)this.addPendingMark(s[t])}addTextNode(t){let e=t.nodeValue;let i=this.top;if(i.options&ht||i.inlineContext(t)||/[^ \t\r\n\u000c]/.test(e)){if(!(i.options&ft)){e=e.replace(/[ \t\r\n\u000c]+/g," ");if(/^[ \t\r\n\u000c]/.test(e)&&this.open==this.nodes.length-1){let r=i.content[i.content.length-1];let n=t.previousSibling;if(!r||n&&n.nodeName=="BR"||r.isText&&/[ \t\r\n\u000c]$/.test(r.text))e=e.slice(1)}}else if(!(i.options&ht)){e=e.replace(/\r?\n|\r/g," ")}else{e=e.replace(/\r\n?/g,"\n")}if(e)this.insertNode(this.parser.schema.text(e));this.findInText(t)}else{this.findInside(t)}}addElement(t,e){let i=t.nodeName.toLowerCase(),r;if(ot.hasOwnProperty(i)&&this.parser.normalizeLists)mt(t);let n=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(r=this.parser.matchTag(t,this,e));if(n?n.ignore:ut.hasOwnProperty(i)){this.findInside(t);this.ignoreFallback(t)}else if(!n||n.skip||n.closeParent){if(n&&n.closeParent)this.open=Math.max(0,this.open-1);else if(n&&n.skip.nodeType)t=n.skip;let e,r=this.top,s=this.needsBlock;if(lt.hasOwnProperty(i)){if(r.content.length&&r.content[0].isInline&&this.open){this.open--;r=this.top}e=true;if(!r.type)this.needsBlock=true}else if(!t.firstChild){this.leafFallback(t);return}if(n&&n.skip)this.addAll(t);else this.withStyleRules(t,(()=>this.addAll(t)));if(e)this.sync(r);this.needsBlock=s}else{this.withStyleRules(t,(()=>{this.addElementByRule(t,n,n.consuming===false?r:undefined)}))}}leafFallback(t){if(t.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent)this.addTextNode(t.ownerDocument.createTextNode("\n"))}ignoreFallback(t){if(t.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent))this.findPlace(this.parser.schema.text("-"))}readStyles(t){let e=d.none,i=d.none;for(let r=0;r<t.length;r+=2){for(let n=undefined;;){let s=this.parser.matchStyle(t[r],t[r+1],this,n);if(!s)break;if(s.ignore)return null;if(s.clearMark){this.top.pendingMarks.concat(this.top.activeMarks).forEach((t=>{if(s.clearMark(t))i=t.addToSet(i)}))}else{e=this.parser.schema.marks[s.mark].create(s.attrs).addToSet(e)}if(s.consuming===false)n=s;else break}}return[e,i]}addElementByRule(t,e,i){let r,n,s;if(e.node){n=this.parser.schema.nodes[e.node];if(!n.isLeaf){r=this.enter(n,e.attrs||null,e.preserveWhitespace)}else if(!this.insertNode(n.create(e.attrs))){this.leafFallback(t)}}else{let t=this.parser.schema.marks[e.mark];s=t.create(e.attrs);this.addPendingMark(s)}let l=this.top;if(n&&n.isLeaf){this.findInside(t)}else if(i){this.addElement(t,i)}else if(e.getContent){this.findInside(t);e.getContent(t,this.parser.schema).forEach((t=>this.insertNode(t)))}else{let i=t;if(typeof e.contentElement=="string")i=t.querySelector(e.contentElement);else if(typeof e.contentElement=="function")i=e.contentElement(t);else if(e.contentElement)i=e.contentElement;this.findAround(t,i,true);this.addAll(i)}if(r&&this.sync(l))this.open--;if(s)this.removePendingMark(s,l)}addAll(t,e,i){let r=e||0;for(let n=e?t.childNodes[e]:t.firstChild,s=i==null?null:t.childNodes[i];n!=s;n=n.nextSibling,++r){this.findAtPoint(t,r);this.addDOM(n)}this.findAtPoint(t,r)}findPlace(t){let e,i;for(let r=this.open;r>=0;r--){let n=this.nodes[r];let s=n.findWrapping(t);if(s&&(!e||e.length>s.length)){e=s;i=n;if(!s.length)break}if(n.solid)break}if(!e)return false;this.sync(i);for(let t=0;t<e.length;t++)this.enterInner(e[t],null,false);return true}insertNode(t){if(t.isInline&&this.needsBlock&&!this.top.type){let t=this.textblockFromContext();if(t)this.enterInner(t)}if(this.findPlace(t)){this.closeExtra();let e=this.top;e.applyPending(t.type);if(e.match)e.match=e.match.matchType(t.type);let i=e.activeMarks;for(let r=0;r<t.marks.length;r++)if(!e.type||e.type.allowsMarkType(t.marks[r].type))i=t.marks[r].addToSet(i);e.content.push(t.mark(i));return true}return false}enter(t,e,i){let r=this.findPlace(t.create(e));if(r)this.enterInner(t,e,true,i);return r}enterInner(t,e=null,i=false,r){this.closeExtra();let n=this.top;n.applyPending(t);n.match=n.match&&n.match.matchType(t);let s=ct(t,r,n.options);if(n.options&at&&n.content.length==0)s|=at;this.nodes.push(new dt(t,e,n.activeMarks,n.pendingMarks,i,null,s));this.open++}closeExtra(t=false){let e=this.nodes.length-1;if(e>this.open){for(;e>this.open;e--)this.nodes[e-1].content.push(this.nodes[e].finish(t));this.nodes.length=this.open+1}}finish(){this.open=0;this.closeExtra(this.isOpen);return this.nodes[0].finish(this.isOpen||this.options.topOpen)}sync(t){for(let e=this.open;e>=0;e--)if(this.nodes[e]==t){this.open=e;return true}return false}get currentPos(){this.closeExtra();let t=0;for(let e=this.open;e>=0;e--){let i=this.nodes[e].content;for(let e=i.length-1;e>=0;e--)t+=i[e].nodeSize;if(e)t++}return t}findAtPoint(t,e){if(this.find)for(let i=0;i<this.find.length;i++){if(this.find[i].node==t&&this.find[i].offset==e)this.find[i].pos=this.currentPos}}findInside(t){if(this.find)for(let e=0;e<this.find.length;e++){if(this.find[e].pos==null&&t.nodeType==1&&t.contains(this.find[e].node))this.find[e].pos=this.currentPos}}findAround(t,e,i){if(t!=e&&this.find)for(let r=0;r<this.find.length;r++){if(this.find[r].pos==null&&t.nodeType==1&&t.contains(this.find[r].node)){let t=e.compareDocumentPosition(this.find[r].node);if(t&(i?2:4))this.find[r].pos=this.currentPos}}}findInText(t){if(this.find)for(let e=0;e<this.find.length;e++){if(this.find[e].node==t)this.find[e].pos=this.currentPos-(t.nodeValue.length-this.find[e].offset)}}matchesContext(t){if(t.indexOf("|")>-1)return t.split(/\s*\|\s*/).some(this.matchesContext,this);let e=t.split("/");let i=this.options.context;let r=!this.isOpen&&(!i||i.parent.type==this.nodes[0].type);let n=-(i?i.depth+1:0)+(r?0:1);let s=(t,l)=>{for(;t>=0;t--){let u=e[t];if(u==""){if(t==e.length-1||t==0)continue;for(;l>=n;l--)if(s(t-1,l))return true;return false}else{let t=l>0||l==0&&r?this.nodes[l].type:i&&l>=n?i.node(l-n).type:null;if(!t||t.name!=u&&t.groups.indexOf(u)==-1)return false;l--}}return true};return s(e.length-1,this.open)}textblockFromContext(){let t=this.options.context;if(t)for(let e=t.depth;e>=0;e--){let i=t.node(e).contentMatchAt(t.indexAfter(e)).defaultType;if(i&&i.isTextblock&&i.defaultAttrs)return i}for(let t in this.parser.schema.nodes){let e=this.parser.schema.nodes[t];if(e.isTextblock&&e.defaultAttrs)return e}}addPendingMark(t){let e=kt(t,this.top.pendingMarks);if(e)this.top.stashMarks.push(e);this.top.pendingMarks=t.addToSet(this.top.pendingMarks)}removePendingMark(t,e){for(let i=this.open;i>=0;i--){let r=this.nodes[i];let n=r.pendingMarks.lastIndexOf(t);if(n>-1){r.pendingMarks=t.removeFromSet(r.pendingMarks)}else{r.activeMarks=t.removeFromSet(r.activeMarks);let e=r.popFromStashMark(t);if(e&&r.type&&r.type.allowsMarkType(e.type))r.activeMarks=e.addToSet(r.activeMarks)}if(r==e)break}}}function mt(t){for(let e=t.firstChild,i=null;e;e=e.nextSibling){let t=e.nodeType==1?e.nodeName.toLowerCase():null;if(t&&ot.hasOwnProperty(t)&&i){i.appendChild(e);e=i}else if(t=="li"){i=e}else if(t){i=null}}}function wt(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function gt(t){let e=/\s*([\w-]+)\s*:\s*([^;]+)/g,i,r=[];while(i=e.exec(t))r.push(i[1],i[2].trim());return r}function bt(t){let e={};for(let i in t)e[i]=t[i];return e}function Dt(t,e){let i=e.schema.nodes;for(let r in i){let n=i[r];if(!n.allowsMarkType(t))continue;let s=[],l=t=>{s.push(t);for(let i=0;i<t.edgeCount;i++){let{type:r,next:n}=t.edge(i);if(r==e)return true;if(s.indexOf(n)<0&&l(n))return true}};if(l(n.contentMatch))return true}}function kt(t,e){for(let i=0;i<e.length;i++){if(t.eq(e[i]))return e[i]}}class vt{constructor(t,e){this.nodes=t;this.marks=e}serializeFragment(t,e={},i){if(!i)i=Ft(e).createDocumentFragment();let r=i,n=[];t.forEach((t=>{if(n.length||t.marks.length){let i=0,s=0;while(i<n.length&&s<t.marks.length){let e=t.marks[s];if(!this.marks[e.type.name]){s++;continue}if(!e.eq(n[i][0])||e.type.spec.spanning===false)break;i++;s++}while(i<n.length)r=n.pop()[1];while(s<t.marks.length){let i=t.marks[s++];let l=this.serializeMark(i,t.isInline,e);if(l){n.push([i,r]);r.appendChild(l.dom);r=l.contentDOM||l.dom}}}r.appendChild(this.serializeNodeInner(t,e))}));return i}serializeNodeInner(t,e){let{dom:i,contentDOM:r}=vt.renderSpec(Ft(e),this.nodes[t.type.name](t));if(r){if(t.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(t.content,e,r)}return i}serializeNode(t,e={}){let i=this.serializeNodeInner(t,e);for(let r=t.marks.length-1;r>=0;r--){let n=this.serializeMark(t.marks[r],t.isInline,e);if(n){(n.contentDOM||n.dom).appendChild(i);i=n.dom}}return i}serializeMark(t,e,i={}){let r=this.marks[t.type.name];return r&&vt.renderSpec(Ft(i),r(t,e))}static renderSpec(t,e,i=null){if(typeof e=="string")return{dom:t.createTextNode(e)};if(e.nodeType!=null)return{dom:e};if(e.dom&&e.dom.nodeType!=null)return e;let r=e[0],n=r.indexOf(" ");if(n>0){i=r.slice(0,n);r=r.slice(n+1)}let s;let l=i?t.createElementNS(i,r):t.createElement(r);let u=e[1],o=1;if(u&&typeof u=="object"&&u.nodeType==null&&!Array.isArray(u)){o=2;for(let t in u)if(u[t]!=null){let e=t.indexOf(" ");if(e>0)l.setAttributeNS(t.slice(0,e),t.slice(e+1),u[t]);else l.setAttribute(t,u[t])}}for(let r=o;r<e.length;r++){let n=e[r];if(n===0){if(r<e.length-1||r>o)throw new RangeError("Content hole must be the only child of its parent node");return{dom:l,contentDOM:l}}else{let{dom:e,contentDOM:r}=vt.renderSpec(t,n,i);l.appendChild(e);if(r){if(s)throw new RangeError("Multiple content holes");s=r}}}return{dom:l,contentDOM:s}}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new vt(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=yt(t.nodes);if(!e.text)e.text=t=>t.text;return e}static marksFromSchema(t){return yt(t.marks)}}function yt(t){let e={};for(let i in t){let r=t[i].spec.toDOM;if(r)e[i]=r}return e}function Ft(t){return t.document||window.document}const Et=65535;const xt=Math.pow(2,16);function Mt(t,e){return t+e*xt}function At(t){return t&Et}function Ct(t){return(t-(t&Et))/xt}const St=1,Ot=2,$t=4,_t=8;class Bt{constructor(t,e,i){this.pos=t;this.delInfo=e;this.recover=i}get deleted(){return(this.delInfo&_t)>0}get deletedBefore(){return(this.delInfo&(St|$t))>0}get deletedAfter(){return(this.delInfo&(Ot|$t))>0}get deletedAcross(){return(this.delInfo&$t)>0}}class qt{constructor(t,e=false){this.ranges=t;this.inverted=e;if(!t.length&&qt.empty)return qt.empty}recover(t){let e=0,i=At(t);if(!this.inverted)for(let t=0;t<i;t++)e+=this.ranges[t*3+2]-this.ranges[t*3+1];return this.ranges[i*3]+e+Ct(t)}mapResult(t,e=1){return this._map(t,e,false)}map(t,e=1){return this._map(t,e,true)}_map(t,e,i){let r=0,n=this.inverted?2:1,s=this.inverted?1:2;for(let l=0;l<this.ranges.length;l+=3){let u=this.ranges[l]-(this.inverted?r:0);if(u>t)break;let o=this.ranges[l+n],f=this.ranges[l+s],h=u+o;if(t<=h){let n=!o?e:t==u?-1:t==h?1:e;let s=u+r+(n<0?0:f);if(i)return s;let a=t==(e<0?u:h)?null:Mt(l/3,t-u);let c=t==u?Ot:t==h?St:$t;if(e<0?t!=u:t!=h)c|=_t;return new Bt(s,c,a)}r+=f-o}return i?t+r:new Bt(t+r,0,null)}touches(t,e){let i=0,r=At(e);let n=this.inverted?2:1,s=this.inverted?1:2;for(let e=0;e<this.ranges.length;e+=3){let l=this.ranges[e]-(this.inverted?i:0);if(l>t)break;let u=this.ranges[e+n],o=l+u;if(t<=o&&e==r*3)return true;i+=this.ranges[e+s]-u}return false}forEach(t){let e=this.inverted?2:1,i=this.inverted?1:2;for(let r=0,n=0;r<this.ranges.length;r+=3){let s=this.ranges[r],l=s-(this.inverted?n:0),u=s+(this.inverted?0:n);let o=this.ranges[r+e],f=this.ranges[r+i];t(l,l+o,u,u+f);n+=f-o}}invert(){return new qt(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?qt.empty:new qt(t<0?[0,-t,0]:[0,0,t])}}qt.empty=new qt([]);class Rt{constructor(t=[],e,i=0,r=t.length){this.maps=t;this.mirror=e;this.from=i;this.to=r}slice(t=0,e=this.maps.length){return new Rt(this.maps,this.mirror,t,e)}copy(){return new Rt(this.maps.slice(),this.mirror&&this.mirror.slice(),this.from,this.to)}appendMap(t,e){this.to=this.maps.push(t);if(e!=null)this.setMirror(this.maps.length-1,e)}appendMapping(t){for(let e=0,i=this.maps.length;e<t.maps.length;e++){let r=t.getMirror(e);this.appendMap(t.maps[e],r!=null&&r<e?i+r:undefined)}}getMirror(t){if(this.mirror)for(let e=0;e<this.mirror.length;e++)if(this.mirror[e]==t)return this.mirror[e+(e%2?-1:1)]}setMirror(t,e){if(!this.mirror)this.mirror=[];this.mirror.push(t,e)}appendMappingInverted(t){for(let e=t.maps.length-1,i=this.maps.length+t.maps.length;e>=0;e--){let r=t.getMirror(e);this.appendMap(t.maps[e].invert(),r!=null&&r>e?i-r-1:undefined)}}invert(){let t=new Rt;t.appendMappingInverted(this);return t}map(t,e=1){if(this.mirror)return this._map(t,e,true);for(let i=this.from;i<this.to;i++)t=this.maps[i].map(t,e);return t}mapResult(t,e=1){return this._map(t,e,false)}_map(t,e,i){let r=0;for(let i=this.from;i<this.to;i++){let n=this.maps[i],s=n.mapResult(t,e);if(s.recover!=null){let e=this.getMirror(i);if(e!=null&&e>i&&e<this.to){i=e;t=this.maps[e].recover(s.recover);continue}}r|=s.delInfo;t=s.pos}return i?t:new Bt(t,r,null)}}const Nt=Object.create(null);class zt{getMap(){return qt.empty}merge(t){return null}static fromJSON(t,e){if(!e||!e.stepType)throw new RangeError("Invalid input for Step.fromJSON");let i=Nt[e.stepType];if(!i)throw new RangeError(`No step type ${e.stepType} defined`);return i.fromJSON(t,e)}static jsonID(t,e){if(t in Nt)throw new RangeError("Duplicate use of step JSON ID "+t);Nt[t]=e;e.prototype.jsonID=t;return e}}class Tt{constructor(t,e){this.doc=t;this.failed=e}static ok(t){return new Tt(t,null)}static fail(t){return new Tt(null,t)}static fromReplace(t,e,i,r){try{return Tt.ok(t.replace(e,i,r))}catch(t){if(t instanceof p)return Tt.fail(t.message);throw t}}}function It(t,e,i){let r=[];for(let n=0;n<t.childCount;n++){let s=t.child(n);if(s.content.size)s=s.copy(It(s.content,e,s));if(s.isInline)s=e(s,i,n);r.push(s)}return f.fromArray(r)}class Pt extends zt{constructor(t,e,i){super();this.from=t;this.to=e;this.mark=i}apply(t){let e=t.slice(this.from,this.to),i=t.resolve(this.from);let r=i.node(i.sharedDepth(this.to));let n=new m(It(e.content,((t,e)=>{if(!t.isAtom||!e.type.allowsMarkType(this.mark.type))return t;return t.mark(this.mark.addToSet(t.marks))}),r),e.openStart,e.openEnd);return Tt.fromReplace(t,this.from,this.to,n)}invert(){return new jt(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);if(e.deleted&&i.deleted||e.pos>=i.pos)return null;return new Pt(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Pt&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Pt(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 Pt(e.from,e.to,t.markFromJSON(e.mark))}}zt.jsonID("addMark",Pt);class jt extends zt{constructor(t,e,i){super();this.from=t;this.to=e;this.mark=i}apply(t){let e=t.slice(this.from,this.to);let i=new m(It(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Tt.fromReplace(t,this.from,this.to,i)}invert(){return new Pt(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);if(e.deleted&&i.deleted||e.pos>=i.pos)return null;return new jt(e.pos,i.pos,this.mark)}merge(t){if(t instanceof jt&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new jt(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 jt(e.from,e.to,t.markFromJSON(e.mark))}}zt.jsonID("removeMark",jt);class Jt extends zt{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Tt.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Tt.fromReplace(t,this.pos,this.pos+1,new m(f.from(i),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(e){let t=this.mark.addToSet(e.marks);if(t.length==e.marks.length){for(let i=0;i<e.marks.length;i++)if(!e.marks[i].isInSet(t))return new Jt(this.pos,e.marks[i]);return new Jt(this.pos,this.mark)}}return new Lt(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Jt(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 Jt(e.pos,t.markFromJSON(e.mark))}}zt.jsonID("addNodeMark",Jt);class Lt extends zt{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Tt.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.removeFromSet(e.marks));return Tt.fromReplace(t,this.pos,this.pos+1,new m(f.from(i),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(!e||!this.mark.isInSet(e.marks))return this;return new Jt(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Lt(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 Lt(e.pos,t.markFromJSON(e.mark))}}zt.jsonID("removeNodeMark",Lt);class Wt extends zt{constructor(t,e,i,r=false){super();this.from=t;this.to=e;this.slice=i;this.structure=r}apply(t){if(this.structure&&Zt(t,this.from,this.to))return Tt.fail("Structure replace would overwrite content");return Tt.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new qt([this.from,this.to-this.from,this.slice.size])}invert(t){return new Wt(this.from,this.from+this.slice.size,t.slice(this.from,this.to))}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);if(e.deletedAcross&&i.deletedAcross)return null;return new Wt(e.pos,Math.max(e.pos,i.pos),this.slice)}merge(t){if(!(t instanceof Wt)||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?m.empty:new m(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new Wt(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?m.empty:new m(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new Wt(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 Wt(e.from,e.to,m.fromJSON(t,e.slice),!!e.structure)}}zt.jsonID("replace",Wt);class Ut extends zt{constructor(t,e,i,r,n,s,l=false){super();this.from=t;this.to=e;this.gapFrom=i;this.gapTo=r;this.slice=n;this.insert=s;this.structure=l}apply(t){if(this.structure&&(Zt(t,this.from,this.gapFrom)||Zt(t,this.gapTo,this.to)))return Tt.fail("Structure gap-replace would overwrite content");let e=t.slice(this.gapFrom,this.gapTo);if(e.openStart||e.openEnd)return Tt.fail("Gap is not a flat range");let i=this.slice.insertAt(this.insert,e.content);if(!i)return Tt.fail("Content does not fit in gap");return Tt.fromReplace(t,this.from,this.to,i)}getMap(){return new qt([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 Ut(this.from,this.from+this.slice.size+e,this.from+this.insert,this.from+this.insert+e,t.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);let r=t.map(this.gapFrom,-1),n=t.map(this.gapTo,1);if(e.deletedAcross&&i.deletedAcross||r<e.pos||n>i.pos)return null;return new Ut(e.pos,i.pos,r,n,this.slice,this.insert,this.structure)}toJSON(){let t={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};if(this.slice.size)t.slice=this.slice.toJSON();if(this.structure)t.structure=true;return t}static fromJSON(t,e){if(typeof e.from!="number"||typeof e.to!="number"||typeof e.gapFrom!="number"||typeof e.gapTo!="number"||typeof e.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new Ut(e.from,e.to,e.gapFrom,e.gapTo,m.fromJSON(t,e.slice),e.insert,!!e.structure)}}zt.jsonID("replaceAround",Ut);function Zt(t,e,i){let r=t.resolve(e),n=i-e,s=r.depth;while(n>0&&s>0&&r.indexAfter(s)==r.node(s).childCount){s--;n--}if(n>0){let t=r.node(s).maybeChild(r.indexAfter(s));while(n>0){if(!t||t.isLeaf)return true;t=t.firstChild;n--}}return false}function Ht(t,e,i,r){let n=[],s=[];let l,u;t.doc.nodesBetween(e,i,((t,o,f)=>{if(!t.isInline)return;let h=t.marks;if(!r.isInSet(h)&&f.type.allowsMarkType(r.type)){let f=Math.max(o,e),a=Math.min(o+t.nodeSize,i);let c=r.addToSet(h);for(let t=0;t<h.length;t++){if(!h[t].isInSet(c)){if(l&&l.to==f&&l.mark.eq(h[t]))l.to=a;else n.push(l=new jt(f,a,h[t]))}}if(u&&u.to==f)u.to=a;else s.push(u=new Pt(f,a,r))}}));n.forEach((e=>t.step(e)));s.forEach((e=>t.step(e)))}function Kt(t,e,i,r){let n=[],s=0;t.doc.nodesBetween(e,i,((t,l)=>{if(!t.isInline)return;s++;let u=null;if(r instanceof it){let e=t.marks,i;while(i=r.isInSet(e)){(u||(u=[])).push(i);e=i.removeFromSet(e)}}else if(r){if(r.isInSet(t.marks))u=[r]}else{u=t.marks}if(u&&u.length){let r=Math.min(l+t.nodeSize,i);for(let t=0;t<u.length;t++){let i=u[t],o;for(let t=0;t<n.length;t++){let e=n[t];if(e.step==s-1&&i.eq(n[t].style))o=e}if(o){o.to=r;o.step=s}else{n.push({style:i,from:Math.max(l,e),to:r,step:s})}}}}));n.forEach((e=>t.step(new jt(e.from,e.to,e.style))))}function Vt(t,e,i,r=i.contentMatch){let n=t.doc.nodeAt(e);let s=[],l=e+1;for(let e=0;e<n.childCount;e++){let u=n.child(e),o=l+u.nodeSize;let h=r.matchType(u.type);if(!h){s.push(new Wt(l,o,m.empty))}else{r=h;for(let e=0;e<u.marks.length;e++)if(!i.allowsMarkType(u.marks[e].type))t.step(new jt(l,o,u.marks[e]));if(u.isText&&!i.spec.code){let t,e=/\r?\n|\r/g,r;while(t=e.exec(u.text)){if(!r)r=new m(f.from(i.schema.text(" ",i.allowedMarks(u.marks))),0,0);s.push(new Wt(l+t.index,l+t.index+t[0].length,r))}}}l=o}if(!r.validEnd){let e=r.fillBefore(f.empty,true);t.replace(l,l,new m(e,0,0))}for(let e=s.length-1;e>=0;e--)t.step(s[e])}function Gt(t,e,i){return(e==0||t.canReplace(e,t.childCount))&&(i==t.childCount||t.canReplace(0,i))}function Xt(t){let e=t.parent;let i=e.content.cutByIndex(t.startIndex,t.endIndex);for(let e=t.depth;;--e){let r=t.$from.node(e);let n=t.$from.index(e),s=t.$to.indexAfter(e);if(e<t.depth&&r.canReplace(n,s,i))return e;if(e==0||r.type.spec.isolating||!Gt(r,n,s))break}return null}function Yt(t,e,i){let{$from:r,$to:n,depth:s}=e;let l=r.before(s+1),u=n.after(s+1);let o=l,h=u;let a=f.empty,c=0;for(let t=s,e=false;t>i;t--)if(e||r.index(t)>0){e=true;a=f.from(r.node(t).copy(a));c++}else{o--}let d=f.empty,p=0;for(let t=s,e=false;t>i;t--)if(e||n.after(t+1)<n.end(t)){e=true;d=f.from(n.node(t).copy(d));p++}else{h++}t.step(new Ut(o,h,l,u,new m(a.append(d),c,p),a.size-c,true))}function Qt(t,e,i=null,r=t){let n=ee(t,e);let s=n&&ie(r,e);if(!s)return null;return n.map(te).concat({type:e,attrs:i}).concat(s.map(te))}function te(t){return{type:t,attrs:null}}function ee(t,e){let{parent:i,startIndex:r,endIndex:n}=t;let s=i.contentMatchAt(r).findWrapping(e);if(!s)return null;let l=s.length?s[0]:e;return i.canReplaceWith(r,n,l)?s:null}function ie(t,e){let{parent:i,startIndex:r,endIndex:n}=t;let s=i.child(r);let l=e.contentMatch.findWrapping(s.type);if(!l)return null;let u=l.length?l[l.length-1]:e;let o=u.contentMatch;for(let t=r;o&&t<n;t++)o=o.matchType(i.child(t).type);if(!o||!o.validEnd)return null;return l}function re(t,e,i){let r=f.empty;for(let t=i.length-1;t>=0;t--){if(r.size){let e=i[t].type.contentMatch.matchFragment(r);if(!e||!e.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}r=f.from(i[t].type.create(i[t].attrs,r))}let n=e.start,s=e.end;t.step(new Ut(n,s,n,s,new m(r,0,0),i.length,true))}function ne(t,e,i,r,n){if(!r.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let s=t.steps.length;t.doc.nodesBetween(e,i,((e,i)=>{if(e.isTextblock&&!e.hasMarkup(r,n)&&se(t.doc,t.mapping.slice(s).map(i),r)){t.clearIncompatible(t.mapping.slice(s).map(i,1),r);let l=t.mapping.slice(s);let u=l.map(i,1),o=l.map(i+e.nodeSize,1);t.step(new Ut(u,o,u+1,o-1,new m(f.from(r.create(n,null,e.marks)),0,0),1,true));return false}}))}function se(t,e,i){let r=t.resolve(e),n=r.index();return r.parent.canReplaceWith(n,n+1,i)}function le(t,e,i,r,n){let s=t.doc.nodeAt(e);if(!s)throw new RangeError("No node at given position");if(!i)i=s.type;let l=i.create(r,null,n||s.marks);if(s.isLeaf)return t.replaceWith(e,e+s.nodeSize,l);if(!i.validContent(s.content))throw new RangeError("Invalid content for node type "+i.name);t.step(new Ut(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new m(f.from(l),0,0),1,true))}function ue(t,e,i=1,r){let n=t.resolve(e),s=n.depth-i;let l=r&&r[r.length-1]||n.parent;if(s<0||n.parent.type.spec.isolating||!n.parent.canReplace(n.index(),n.parent.childCount)||!l.type.validContent(n.parent.content.cutByIndex(n.index(),n.parent.childCount)))return false;for(let t=n.depth-1,e=i-2;t>s;t--,e--){let i=n.node(t),s=n.index(t);if(i.type.spec.isolating)return false;let l=i.content.cutByIndex(s,i.childCount);let u=r&&r[e+1];if(u)l=l.replaceChild(0,u.type.create(u.attrs));let o=r&&r[e]||i;if(!i.canReplace(s+1,i.childCount)||!o.type.validContent(l))return false}let u=n.indexAfter(s);let o=r&&r[0];return n.node(s).canReplaceWith(u,u,o?o.type:n.node(s+1).type)}function oe(t,e,i=1,r){let n=t.doc.resolve(e),s=f.empty,l=f.empty;for(let t=n.depth,e=n.depth-i,u=i-1;t>e;t--,u--){s=f.from(n.node(t).copy(s));let e=r&&r[u];l=f.from(e?e.type.create(e.attrs,l):n.node(t).copy(l))}t.step(new Wt(e,e,new m(s.append(l),i,i),true))}function fe(t,e){let i=t.resolve(e),r=i.index();return he(i.nodeBefore,i.nodeAfter)&&i.parent.canReplace(r,r+1)}function he(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function ae(t,e,i=-1){let r=t.resolve(e);for(let t=r.depth;;t--){let n,s,l=r.index(t);if(t==r.depth){n=r.nodeBefore;s=r.nodeAfter}else if(i>0){n=r.node(t+1);l++;s=r.node(t).maybeChild(l)}else{n=r.node(t).maybeChild(l-1);s=r.node(t+1)}if(n&&!n.isTextblock&&he(n,s)&&r.node(t).canReplace(l,l+1))return e;if(t==0)break;e=i<0?r.before(t):r.after(t)}}function ce(t,e,i){let r=new Wt(e-i,e+i,m.empty,true);t.step(r)}function de(t,e,i){let r=t.resolve(e);if(r.parent.canReplaceWith(r.index(),r.index(),i))return e;if(r.parentOffset==0)for(let t=r.depth-1;t>=0;t--){let e=r.index(t);if(r.node(t).canReplaceWith(e,e,i))return r.before(t+1);if(e>0)return null}if(r.parentOffset==r.parent.content.size)for(let t=r.depth-1;t>=0;t--){let e=r.indexAfter(t);if(r.node(t).canReplaceWith(e,e,i))return r.after(t+1);if(e<r.node(t).childCount)return null}return null}function pe(t,e,i){let r=t.resolve(e);if(!i.content.size)return e;let n=i.content;for(let t=0;t<i.openStart;t++)n=n.firstChild.content;for(let t=1;t<=(i.openStart==0&&i.size?2:1);t++){for(let e=r.depth;e>=0;e--){let i=e==r.depth?0:r.pos<=(r.start(e+1)+r.end(e+1))/2?-1:1;let s=r.index(e)+(i>0?1:0);let l=r.node(e),u=false;if(t==1){u=l.canReplace(s,s,n)}else{let t=l.contentMatchAt(s).findWrapping(n.firstChild.type);u=t&&l.canReplaceWith(s,s,t[0])}if(u)return i==0?r.pos:i<0?r.before(e+1):r.after(e+1)}}return null}function me(t,e,i=e,r=m.empty){if(e==i&&!r.size)return null;let n=t.resolve(e),s=t.resolve(i);if(we(n,s,r))return new Wt(e,i,r);return new ge(n,s,r).fit()}function we(t,e,i){return!i.openStart&&!i.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),i.content)}class ge{constructor(t,e,i){this.$from=t;this.$to=e;this.unplaced=i;this.frontier=[];this.placed=f.empty;for(let e=0;e<=t.depth;e++){let i=t.node(e);this.frontier.push({type:i.type,match:i.contentMatchAt(t.indexAfter(e))})}for(let e=t.depth;e>0;e--)this.placed=f.from(t.node(e).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){while(this.unplaced.size){let t=this.findFittable();if(t)this.placeNodes(t);else this.openMore()||this.dropNode()}let t=this.mustMoveInline(),e=this.placed.size-this.depth-this.$from.depth;let i=this.$from,r=this.close(t<0?this.$to:i.doc.resolve(t));if(!r)return null;let n=this.placed,s=i.depth,l=r.depth;while(s&&l&&n.childCount==1){n=n.firstChild.content;s--;l--}let u=new m(n,s,l);if(t>-1)return new Ut(i.pos,t,this.$to.pos,this.$to.end(),u,e);if(u.size||i.pos!=this.$to.pos)return new Wt(i.pos,r.pos,u);return null}findFittable(){let t=this.unplaced.openStart;for(let e=this.unplaced.content,i=0,r=this.unplaced.openEnd;i<t;i++){let n=e.firstChild;if(e.childCount>1)r=0;if(n.type.spec.isolating&&r<=i){t=i;break}e=n.content}for(let e=1;e<=2;e++){for(let i=e==1?t:this.unplaced.openStart;i>=0;i--){let t,r=null;if(i){r=ke(this.unplaced.content,i-1).firstChild;t=r.content}else{t=this.unplaced.content}let n=t.firstChild;for(let t=this.depth;t>=0;t--){let{type:s,match:l}=this.frontier[t],u,o=null;if(e==1&&(n?l.matchType(n.type)||(o=l.fillBefore(f.from(n),false)):r&&s.compatibleContent(r.type)))return{sliceDepth:i,frontierDepth:t,parent:r,inject:o};else if(e==2&&n&&(u=l.findWrapping(n.type)))return{sliceDepth:i,frontierDepth:t,parent:r,wrap:u};if(r&&l.matchType(r.type))break}}}}openMore(){let{content:t,openStart:e,openEnd:i}=this.unplaced;let r=ke(t,e);if(!r.childCount||r.firstChild.isLeaf)return false;this.unplaced=new m(t,e+1,Math.max(i,r.size+e>=t.size-i?e+1:0));return true}dropNode(){let{content:t,openStart:e,openEnd:i}=this.unplaced;let r=ke(t,e);if(r.childCount<=1&&e>0){let n=t.size-e<=e+r.size;this.unplaced=new m(be(t,e-1,1),e-1,n?e-1:i)}else{this.unplaced=new m(be(t,e,1),e,i)}}placeNodes({sliceDepth:t,frontierDepth:e,parent:i,inject:r,wrap:n}){while(this.depth>e)this.closeFrontierNode();if(n)for(let t=0;t<n.length;t++)this.openFrontierNode(n[t]);let s=this.unplaced,l=i?i.content:s.content;let u=s.openStart-t;let o=0,h=[];let{match:a,type:c}=this.frontier[e];if(r){for(let t=0;t<r.childCount;t++)h.push(r.child(t));a=a.matchFragment(r)}let d=l.size+t-(s.content.size-s.openEnd);while(o<l.childCount){let t=l.child(o),e=a.matchType(t.type);if(!e)break;o++;if(o>1||u==0||t.content.size){a=e;h.push(ve(t.mark(c.allowedMarks(t.marks)),o==1?u:0,o==l.childCount?d:-1))}}let p=o==l.childCount;if(!p)d=-1;this.placed=De(this.placed,e,f.from(h));this.frontier[e].match=a;if(p&&d<0&&i&&i.type==this.frontier[this.depth].type&&this.frontier.length>1)this.closeFrontierNode();for(let t=0,e=l;t<d;t++){let t=e.lastChild;this.frontier.push({type:t.type,match:t.contentMatchAt(t.childCount)});e=t.content}this.unplaced=!p?new m(be(s.content,t,o),s.openStart,s.openEnd):t==0?m.empty:new m(be(s.content,t-1,1),t-1,d<0?s.openEnd:t-1)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let t=this.frontier[this.depth],e;if(!t.type.isTextblock||!ye(this.$to,this.$to.depth,t.type,t.match,false)||this.$to.depth==this.depth&&(e=this.findCloseLevel(this.$to))&&e.depth==this.depth)return-1;let{depth:i}=this.$to,r=this.$to.after(i);while(i>1&&r==this.$to.end(--i))++r;return r}findCloseLevel(t){t:for(let e=Math.min(this.depth,t.depth);e>=0;e--){let{match:i,type:r}=this.frontier[e];let n=e<t.depth&&t.end(e+1)==t.pos+(t.depth-(e+1));let s=ye(t,e,r,i,n);if(!s)continue;for(let i=e-1;i>=0;i--){let{match:e,type:r}=this.frontier[i];let n=ye(t,i,r,e,true);if(!n||n.childCount)continue t}return{depth:e,fit:s,move:n?t.doc.resolve(t.after(e+1)):t}}}close(t){let e=this.findCloseLevel(t);if(!e)return null;while(this.depth>e.depth)this.closeFrontierNode();if(e.fit.childCount)this.placed=De(this.placed,e.depth,e.fit);t=e.move;for(let i=e.depth+1;i<=t.depth;i++){let e=t.node(i),r=e.type.contentMatch.fillBefore(e.content,true,t.index(i));this.openFrontierNode(e.type,e.attrs,r)}return t}openFrontierNode(t,e=null,i){let r=this.frontier[this.depth];r.match=r.match.matchType(t);this.placed=De(this.placed,this.depth,f.from(t.create(e,i)));this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop();let e=t.match.fillBefore(f.empty,true);if(e.childCount)this.placed=De(this.placed,this.frontier.length,e)}}function be(t,e,i){if(e==0)return t.cutByIndex(i,t.childCount);return t.replaceChild(0,t.firstChild.copy(be(t.firstChild.content,e-1,i)))}function De(t,e,i){if(e==0)return t.append(i);return t.replaceChild(t.childCount-1,t.lastChild.copy(De(t.lastChild.content,e-1,i)))}function ke(t,e){for(let i=0;i<e;i++)t=t.firstChild.content;return t}function ve(t,e,i){if(e<=0)return t;let r=t.content;if(e>1)r=r.replaceChild(0,ve(r.firstChild,e-1,r.childCount==1?i-1:0));if(e>0){r=t.type.contentMatch.fillBefore(r).append(r);if(i<=0)r=r.append(t.type.contentMatch.matchFragment(r).fillBefore(f.empty,true))}return t.copy(r)}function ye(t,e,i,r,n){let s=t.node(e),l=n?t.indexAfter(e):t.index(e);if(l==s.childCount&&!i.compatibleContent(s.type))return null;let u=r.fillBefore(s.content,true,l);return u&&!Fe(i,s.content,l)?u:null}function Fe(t,e,i){for(let r=i;r<e.childCount;r++)if(!t.allowsMarks(e.child(r).marks))return true;return false}function Ee(t){return t.spec.defining||t.spec.definingForContent}function xe(t,e,i,r){if(!r.size)return t.deleteRange(e,i);let n=t.doc.resolve(e),s=t.doc.resolve(i);if(we(n,s,r))return t.step(new Wt(e,i,r));let l=Se(n,t.doc.resolve(i));if(l[l.length-1]==0)l.pop();let u=-(n.depth+1);l.unshift(u);for(let t=n.depth,e=n.pos-1;t>0;t--,e--){let i=n.node(t).type.spec;if(i.defining||i.definingAsContext||i.isolating)break;if(l.indexOf(t)>-1)u=t;else if(n.before(t)==e)l.splice(1,0,-t)}let o=l.indexOf(u);let f=[],h=r.openStart;for(let t=r.content,e=0;;e++){let i=t.firstChild;f.push(i);if(e==r.openStart)break;t=i.content}for(let t=h-1;t>=0;t--){let e=f[t],i=Ee(e.type);if(i&&!e.sameMarkup(n.node(Math.abs(u)-1)))h=t;else if(i||!e.type.isTextblock)break}for(let e=r.openStart;e>=0;e--){let u=(e+h+1)%(r.openStart+1);let a=f[u];if(!a)continue;for(let e=0;e<l.length;e++){let f=l[(e+o)%l.length],h=true;if(f<0){h=false;f=-f}let c=n.node(f-1),d=n.index(f-1);if(c.canReplaceWith(d,d,a.type,a.marks))return t.replace(n.before(f),h?s.after(f):i,new m(Me(r.content,0,r.openStart,u),u,r.openEnd))}}let a=t.steps.length;for(let u=l.length-1;u>=0;u--){t.replace(e,i,r);if(t.steps.length>a)break;let o=l[u];if(o<0)continue;e=n.before(o);i=s.after(o)}}function Me(t,e,i,r,n){if(e<i){let n=t.firstChild;t=t.replaceChild(0,n.copy(Me(n.content,e+1,i,r,n)))}if(e>r){let e=n.contentMatchAt(0);let i=e.fillBefore(t).append(t);t=i.append(e.matchFragment(i).fillBefore(f.empty,true))}return t}function Ae(t,e,i,r){if(!r.isInline&&e==i&&t.doc.resolve(e).parent.content.size){let n=de(t.doc,e,r.type);if(n!=null)e=i=n}t.replaceRange(e,i,new m(f.from(r),0,0))}function Ce(t,e,i){let r=t.doc.resolve(e),n=t.doc.resolve(i);let s=Se(r,n);for(let e=0;e<s.length;e++){let i=s[e],l=e==s.length-1;if(l&&i==0||r.node(i).type.contentMatch.validEnd)return t.delete(r.start(i),n.end(i));if(i>0&&(l||r.node(i-1).canReplace(r.index(i-1),n.indexAfter(i-1))))return t.delete(r.before(i),n.after(i))}for(let s=1;s<=r.depth&&s<=n.depth;s++){if(e-r.start(s)==r.depth-s&&i>r.end(s)&&n.end(s)-i!=n.depth-s)return t.delete(r.before(s),i)}t.delete(e,i)}function Se(t,e){let i=[],r=Math.min(t.depth,e.depth);for(let n=r;n>=0;n--){let r=t.start(n);if(r<t.pos-(t.depth-n)||e.end(n)>e.pos+(e.depth-n)||t.node(n).type.spec.isolating||e.node(n).type.spec.isolating)break;if(r==e.start(n)||n==t.depth&&n==e.depth&&t.parent.inlineContent&&e.parent.inlineContent&&n&&e.start(n-1)==r-1)i.push(n)}return i}class Oe extends zt{constructor(t,e,i){super();this.pos=t;this.attr=e;this.value=i}apply(t){let e=t.nodeAt(this.pos);if(!e)return Tt.fail("No node at attribute step's position");let i=Object.create(null);for(let t in e.attrs)i[t]=e.attrs[t];i[this.attr]=this.value;let r=e.type.create(i,null,e.marks);return Tt.fromReplace(t,this.pos,this.pos+1,new m(f.from(r),0,e.isLeaf?0:1))}getMap(){return qt.empty}invert(t){return new Oe(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 Oe(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 Oe(e.pos,e.attr,e.value)}}zt.jsonID("attr",Oe);class $e extends zt{constructor(t,e){super();this.attr=t;this.value=e}apply(t){let e=Object.create(null);for(let i in t.attrs)e[i]=t.attrs[i];e[this.attr]=this.value;let i=t.type.create(e,t.content,t.marks);return Tt.ok(i)}getMap(){return qt.empty}invert(t){return new $e(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 $e(e.attr,e.value)}}zt.jsonID("docAttr",$e);let _e=class extends Error{};_e=function t(e){let i=Error.call(this,e);i.__proto__=t.prototype;return i};_e.prototype=Object.create(Error.prototype);_e.prototype.constructor=_e;_e.prototype.name="TransformError";class Be{constructor(t){this.doc=t;this.steps=[];this.docs=[];this.mapping=new Rt}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new _e(e.failed);return this}maybeStep(t){let e=t.apply(this.doc);if(!e.failed)this.addStep(t,e.doc);return e}get docChanged(){return this.steps.length>0}addStep(t,e){this.docs.push(this.doc);this.steps.push(t);this.mapping.appendMap(t.getMap());this.doc=e}replace(t,e=t,i=m.empty){let r=me(this.doc,t,e,i);if(r)this.step(r);return this}replaceWith(t,e,i){return this.replace(t,e,new m(f.from(i),0,0))}delete(t,e){return this.replace(t,e,m.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,i){xe(this,t,e,i);return this}replaceRangeWith(t,e,i){Ae(this,t,e,i);return this}deleteRange(t,e){Ce(this,t,e);return this}lift(t,e){Yt(this,t,e);return this}join(t,e=1){ce(this,t,e);return this}wrap(t,e){re(this,t,e);return this}setBlockType(t,e=t,i,r=null){ne(this,t,e,i,r);return this}setNodeMarkup(t,e,i=null,r){le(this,t,e,i,r);return this}setNodeAttribute(t,e,i){this.step(new Oe(t,e,i));return this}setDocAttribute(t,e){this.step(new $e(t,e));return this}addNodeMark(t,e){this.step(new Jt(t,e));return this}removeNodeMark(t,e){if(!(e instanceof d)){let i=this.doc.nodeAt(t);if(!i)throw new RangeError("No node at position "+t);e=e.isInSet(i.marks);if(!e)return this}this.step(new Lt(t,e));return this}split(t,e=1,i){oe(this,t,e,i);return this}addMark(t,e,i){Ht(this,t,e,i);return this}removeMark(t,e,i){Kt(this,t,e,i);return this}clearIncompatible(t,e,i){Vt(this,t,e,i);return this}}const qe=Object.create(null);class Re{constructor(t,e,i){this.$anchor=t;this.$head=e;this.ranges=i||[new Ne(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=m.empty){let i=e.content.lastChild,r=null;for(let t=0;t<e.openEnd;t++){r=i;i=i.lastChild}let n=t.steps.length,s=this.ranges;for(let l=0;l<s.length;l++){let{$from:u,$to:o}=s[l],f=t.mapping.slice(n);t.replaceRange(f.map(u.pos),f.map(o.pos),l?m.empty:e);if(l==0)Ze(t,n,(i?i.isInline:r&&r.isTextblock)?-1:1)}}replaceWith(t,e){let i=t.steps.length,r=this.ranges;for(let n=0;n<r.length;n++){let{$from:s,$to:l}=r[n],u=t.mapping.slice(i);let o=u.map(s.pos),f=u.map(l.pos);if(n){t.deleteRange(o,f)}else{t.replaceRangeWith(o,f,e);Ze(t,i,e.isInline?-1:1)}}}static findFrom(t,e,i=false){let r=t.parent.inlineContent?new Ie(t):Ue(t.node(0),t.parent,t.pos,t.index(),e,i);if(r)return r;for(let r=t.depth-1;r>=0;r--){let n=e<0?Ue(t.node(0),t.node(r),t.before(r+1),t.index(r),e,i):Ue(t.node(0),t.node(r),t.after(r+1),t.index(r)+1,e,i);if(n)return n}return null}static near(t,e=1){return this.findFrom(t,e)||this.findFrom(t,-e)||new Le(t.node(0))}static atStart(t){return Ue(t,t,0,0,1)||new Le(t)}static atEnd(t){return Ue(t,t,t.content.size,t.childCount,-1)||new Le(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let i=qe[e.type];if(!i)throw new RangeError(`No selection type ${e.type} defined`);return i.fromJSON(t,e)}static jsonID(t,e){if(t in qe)throw new RangeError("Duplicate use of selection JSON ID "+t);qe[t]=e;e.prototype.jsonID=t;return e}getBookmark(){return Ie.between(this.$anchor,this.$head).getBookmark()}}Re.prototype.visible=true;class Ne{constructor(t,e){this.$from=t;this.$to=e}}let ze=false;function Te(t){if(!ze&&!t.parent.inlineContent){ze=true;console["warn"]("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")")}}class Ie extends Re{constructor(t,e=t){Te(t);Te(e);super(t,e)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,e){let i=t.resolve(e.map(this.head));if(!i.parent.inlineContent)return Re.near(i);let r=t.resolve(e.map(this.anchor));return new Ie(r.parent.inlineContent?r:i,i)}replace(t,e=m.empty){super.replace(t,e);if(e==m.empty){let e=this.$from.marksAcross(this.$to);if(e)t.ensureMarks(e)}}eq(t){return t instanceof Ie&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new Pe(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 Ie(t.resolve(e.anchor),t.resolve(e.head))}static create(t,e,i=e){let r=t.resolve(e);return new this(r,i==e?r:t.resolve(i))}static between(t,e,i){let r=t.pos-e.pos;if(!i||r)i=r>=0?1:-1;if(!e.parent.inlineContent){let t=Re.findFrom(e,i,true)||Re.findFrom(e,-i,true);if(t)e=t.$head;else return Re.near(e,i)}if(!t.parent.inlineContent){if(r==0){t=e}else{t=(Re.findFrom(t,-i,true)||Re.findFrom(t,i,true)).$anchor;if(t.pos<e.pos!=r<0)t=e}}return new Ie(t,e)}}Re.jsonID("text",Ie);class Pe{constructor(t,e){this.anchor=t;this.head=e}map(t){return new Pe(t.map(this.anchor),t.map(this.head))}resolve(t){return Ie.between(t.resolve(this.anchor),t.resolve(this.head))}}class je extends Re{constructor(t){let e=t.nodeAfter;let i=t.node(0).resolve(t.pos+e.nodeSize);super(t,i);this.node=e}map(t,e){let{deleted:i,pos:r}=e.mapResult(this.anchor);let n=t.resolve(r);if(i)return Re.near(n);return new je(n)}content(){return new m(f.from(this.node),0,0)}eq(t){return t instanceof je&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new Je(this.anchor)}static fromJSON(t,e){if(typeof e.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new je(t.resolve(e.anchor))}static create(t,e){return new je(t.resolve(e))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==false}}je.prototype.visible=false;Re.jsonID("node",je);class Je{constructor(t){this.anchor=t}map(t){let{deleted:e,pos:i}=t.mapResult(this.anchor);return e?new Pe(i,i):new Je(i)}resolve(t){let e=t.resolve(this.anchor),i=e.nodeAfter;if(i&&je.isSelectable(i))return new je(e);return Re.near(e)}}class Le extends Re{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,e=m.empty){if(e==m.empty){t.delete(0,t.doc.content.size);let e=Re.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 Le(t)}map(t){return new Le(t)}eq(t){return t instanceof Le}getBookmark(){return We}}Re.jsonID("all",Le);const We={map(){return this},resolve(t){return new Le(t)}};function Ue(t,e,i,r,n,s=false){if(e.inlineContent)return Ie.create(t,i);for(let l=r-(n>0?0:1);n>0?l<e.childCount:l>=0;l+=n){let r=e.child(l);if(!r.isAtom){let e=Ue(t,r,i+n,n<0?r.childCount:0,n,s);if(e)return e}else if(!s&&je.isSelectable(r)){return je.create(t,i-(n<0?r.nodeSize:0))}i+=r.nodeSize*n}return null}function Ze(t,e,i){let r=t.steps.length-1;if(r<e)return;let n=t.steps[r];if(!(n instanceof Wt||n instanceof Ut))return;let s=t.mapping.maps[r],l;s.forEach(((t,e,i,r)=>{if(l==null)l=r}));t.setSelection(Re.near(t.doc.resolve(l),i))}const He=1,Ke=2,Ve=4;class Ge extends Be{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|He)&~Ke;this.storedMarks=null;return this}get selectionSet(){return(this.updated&He)>0}setStoredMarks(t){this.storedMarks=t;this.updated|=Ke;return this}ensureMarks(t){if(!d.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&Ke)>0}addStep(t,e){super.addStep(t,e);this.updated=this.updated&~Ke;this.storedMarks=null}setTime(t){this.time=t;return this}replaceSelection(t){this.selection.replace(this,t);return this}replaceSelectionWith(t,e=true){let i=this.selection;if(e)t=t.mark(this.storedMarks||(i.empty?i.$from.marks():i.$from.marksAcross(i.$to)||d.none));i.replaceWith(this,t);return this}deleteSelection(){this.selection.replace(this);return this}insertText(t,e,i){let r=this.doc.type.schema;if(e==null){if(!t)return this.deleteSelection();return this.replaceSelectionWith(r.text(t),true)}else{if(i==null)i=e;i=i==null?e:i;if(!t)return this.deleteRange(e,i);let n=this.storedMarks;if(!n){let t=this.doc.resolve(e);n=i==e?t.marks():t.marksAcross(this.doc.resolve(i))}this.replaceRangeWith(e,i,r.text(t,n));if(!this.selection.empty)this.setSelection(Re.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|=Ve;return this}get scrolledIntoView(){return(this.updated&Ve)>0}}function Xe(t,e){return!e||!t?t:t.bind(e)}class Ye{constructor(t,e,i){this.name=t;this.init=Xe(e.init,i);this.apply=Xe(e.apply,i)}}const Qe=[new Ye("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new Ye("selection",{init(t,e){return t.selection||Re.atStart(e.doc)},apply(t){return t.selection}}),new Ye("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,i,r){return r.selection.$cursor?t.storedMarks:null}}),new Ye("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class ti{constructor(t,e){this.schema=t;this.plugins=[];this.pluginsByKey=Object.create(null);this.fields=Qe.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 Ye(t.key,t.spec.state,t))}))}}class ei{constructor(t){this.config=t}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(t){return this.applyTransaction(t).state}filterTransaction(t,e=-1){for(let i=0;i<this.config.plugins.length;i++)if(i!=e){let e=this.config.plugins[i];if(e.spec.filterTransaction&&!e.spec.filterTransaction.call(e,t,this))return false}return true}applyTransaction(t){if(!this.filterTransaction(t))return{state:this,transactions:[]};let e=[t],i=this.applyInner(t),r=null;for(;;){let n=false;for(let s=0;s<this.config.plugins.length;s++){let l=this.config.plugins[s];if(l.spec.appendTransaction){let u=r?r[s].n:0,o=r?r[s].state:this;let f=u<e.length&&l.spec.appendTransaction.call(l,u?e.slice(u):e,o,i);if(f&&i.filterTransaction(f,s)){f.setMeta("appendedTransaction",t);if(!r){r=[];for(let t=0;t<this.config.plugins.length;t++)r.push(t<s?{state:i,n:e.length}:{state:this,n:0})}e.push(f);i=i.applyInner(f);n=true}if(r)r[s]={state:i,n:e.length}}}if(!n)return{state:i,transactions:e}}}applyInner(t){if(!t.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let e=new ei(this.config),i=this.config.fields;for(let r=0;r<i.length;r++){let n=i[r];e[n.name]=n.apply(t,this[n.name],this,e)}return e}get tr(){return new Ge(this)}static create(t){let e=new ti(t.doc?t.doc.type.schema:t.schema,t.plugins);let i=new ei(e);for(let r=0;r<e.fields.length;r++)i[e.fields[r].name]=e.fields[r].init(t,i);return i}reconfigure(t){let e=new ti(this.schema,t.plugins);let i=e.fields,r=new ei(e);for(let e=0;e<i.length;e++){let n=i[e].name;r[n]=this.hasOwnProperty(n)?this[n]:i[e].init(t,r)}return r}toJSON(t){let e={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks)e.storedMarks=this.storedMarks.map((t=>t.toJSON()));if(t&&typeof t=="object")for(let i in t){if(i=="doc"||i=="selection")throw new RangeError("The JSON fields `doc` and `selection` are reserved");let r=t[i],n=r.spec.state;if(n&&n.toJSON)e[i]=n.toJSON.call(r,this[r.key])}return e}static fromJSON(t,e,i){if(!e)throw new RangeError("Invalid input for EditorState.fromJSON");if(!t.schema)throw new RangeError("Required config field 'schema' missing");let r=new ti(t.schema,t.plugins);let n=new ei(r);r.fields.forEach((r=>{if(r.name=="doc"){n.doc=q.fromJSON(t.schema,e.doc)}else if(r.name=="selection"){n.selection=Re.fromJSON(n.doc,e.selection)}else if(r.name=="storedMarks"){if(e.storedMarks)n.storedMarks=e.storedMarks.map(t.schema.markFromJSON)}else{if(i)for(let s in i){let l=i[s],u=l.spec.state;if(l.key==r.name&&u&&u.fromJSON&&Object.prototype.hasOwnProperty.call(e,s)){n[r.name]=u.fromJSON.call(l,t,e[s],n);return}}n[r.name]=r.init(t,n)}}));return n}}function ii(t,e,i){for(let r in t){let n=t[r];if(n instanceof Function)n=n.bind(e);else if(r=="handleDOMEvents")n=ii(n,e,{});i[r]=n}return i}class ri{constructor(t){this.spec=t;this.props={};if(t.props)ii(t.props,this,this.props);this.key=t.key?t.key.key:si("plugin")}getState(t){return t[this.key]}}const ni=Object.create(null);function si(t){if(t in ni)return t+"$"+ ++ni[t];ni[t]=0;return t+"$"}class li{constructor(t="key"){this.key=si(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const ui=function(t){for(var e=0;;e++){t=t.previousSibling;if(!t)return e}};const oi=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let fi=null;const hi=function(t,e,i){let r=fi||(fi=document.createRange());r.setEnd(t,i==null?t.nodeValue.length:i);r.setStart(t,e||0);return r};const ai=function(t,e,i,r){return i&&(di(t,e,i,r,-1)||di(t,e,i,r,1))};const ci=/^(img|br|input|textarea|hr)$/i;function di(t,e,i,r,n){for(;;){if(t==i&&e==r)return true;if(e==(n<0?0:pi(t))){let i=t.parentNode;if(!i||i.nodeType!=1||wi(t)||ci.test(t.nodeName)||t.contentEditable=="false")return false;e=ui(t)+(n<0?0:1);t=i}else if(t.nodeType==1){t=t.childNodes[e+(n<0?-1:0)];if(t.contentEditable=="false")return false;e=n<0?pi(t):0}else{return false}}}function pi(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function mi(t,e,i){for(let r=e==0,n=e==pi(t);r||n;){if(t==i)return true;let e=ui(t);t=t.parentNode;if(!t)return false;r=r&&e==0;n=n&&e==pi(t)}}function wi(t){let e;for(let i=t;i;i=i.parentNode)if(e=i.pmViewDesc)break;return e&&e.node&&e.node.isBlock&&(e.dom==t||e.contentDOM==t)}const gi=function(t){return t.focusNode&&ai(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function bi(t,e){let i=document.createEvent("Event");i.initEvent("keydown",true,true);i.keyCode=t;i.key=i.code=e;return i}function Di(t){let e=t.activeElement;while(e&&e.shadowRoot)e=e.shadowRoot.activeElement;return e}function ki(t,e,i){if(t.caretPositionFromPoint){try{let r=t.caretPositionFromPoint(e,i);if(r)return{node:r.offsetNode,offset:r.offset}}catch(t){}}if(t.caretRangeFromPoint){let r=t.caretRangeFromPoint(e,i);if(r)return{node:r.startContainer,offset:r.startOffset}}}const vi=typeof navigator!="undefined"?navigator:null;const yi=typeof document!="undefined"?document:null;const Fi=vi&&vi.userAgent||"";const Ei=/Edge\/(\d+)/.exec(Fi);const xi=/MSIE \d/.exec(Fi);const Mi=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Fi);const Ai=!!(xi||Mi||Ei);const Ci=xi?document.documentMode:Mi?+Mi[1]:Ei?+Ei[1]:0;const Si=!Ai&&/gecko\/(\d+)/i.test(Fi);Si&&+(/Firefox\/(\d+)/.exec(Fi)||[0,0])[1];const Oi=!Ai&&/Chrome\/(\d+)/.exec(Fi);const $i=!!Oi;const _i=Oi?+Oi[1]:0;const Bi=!Ai&&!!vi&&/Apple Computer/.test(vi.vendor);const qi=Bi&&(/Mobile\/\w+/.test(Fi)||!!vi&&vi.maxTouchPoints>2);const Ri=qi||(vi?/Mac/.test(vi.platform):false);const Ni=vi?/Win/.test(vi.platform):false;const zi=/Android \d/.test(Fi);const Ti=!!yi&&"webkitFontSmoothing"in yi.documentElement.style;const Ii=Ti?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function Pi(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function ji(t,e){return typeof t=="number"?t:t[e]}function Ji(t){let e=t.getBoundingClientRect();let i=e.width/t.offsetWidth||1;let r=e.height/t.offsetHeight||1;return{left:e.left,right:e.left+t.clientWidth*i,top:e.top,bottom:e.top+t.clientHeight*r}}function Li(t,e,i){let r=t.someProp("scrollThreshold")||0,n=t.someProp("scrollMargin")||5;let s=t.dom.ownerDocument;for(let l=i||t.dom;;l=oi(l)){if(!l)break;if(l.nodeType!=1)continue;let t=l;let i=t==s.body;let u=i?Pi(s):Ji(t);let o=0,f=0;if(e.top<u.top+ji(r,"top"))f=-(u.top-e.top+ji(n,"top"));else if(e.bottom>u.bottom-ji(r,"bottom"))f=e.bottom-e.top>u.bottom-u.top?e.top+ji(n,"top")-u.top:e.bottom-u.bottom+ji(n,"bottom");if(e.left<u.left+ji(r,"left"))o=-(u.left-e.left+ji(n,"left"));else if(e.right>u.right-ji(r,"right"))o=e.right-u.right+ji(n,"right");if(o||f){if(i){s.defaultView.scrollBy(o,f)}else{let i=t.scrollLeft,r=t.scrollTop;if(f)t.scrollTop+=f;if(o)t.scrollLeft+=o;let n=t.scrollLeft-i,s=t.scrollTop-r;e={left:e.left-n,top:e.top-s,right:e.right-n,bottom:e.bottom-s}}}if(i||/^(fixed|sticky)$/.test(getComputedStyle(l).position))break}}function Wi(t){let e=t.dom.getBoundingClientRect(),i=Math.max(0,e.top);let r,n;for(let s=(e.left+e.right)/2,l=i+1;l<Math.min(innerHeight,e.bottom);l+=5){let e=t.root.elementFromPoint(s,l);if(!e||e==t.dom||!t.dom.contains(e))continue;let u=e.getBoundingClientRect();if(u.top>=i-20){r=e;n=u.top;break}}return{refDOM:r,refTop:n,stack:Ui(t.dom)}}function Ui(t){let e=[],i=t.ownerDocument;for(let r=t;r;r=oi(r)){e.push({dom:r,top:r.scrollTop,left:r.scrollLeft});if(t==i)break}return e}function Zi({refDOM:t,refTop:e,stack:i}){let r=t?t.getBoundingClientRect().top:0;Hi(i,r==0?0:r-e)}function Hi(t,e){for(let i=0;i<t.length;i++){let{dom:r,top:n,left:s}=t[i];if(r.scrollTop!=n+e)r.scrollTop=n+e;if(r.scrollLeft!=s)r.scrollLeft=s}}let Ki=null;function Vi(t){if(t.setActive)return t.setActive();if(Ki)return t.focus(Ki);let e=Ui(t);t.focus(Ki==null?{get preventScroll(){Ki={preventScroll:true};return true}}:undefined);if(!Ki){Ki=false;Hi(e,0)}}function Gi(t,e){let i,r=2e8,n,s=0;let l=e.top,u=e.top;let o,f;for(let h=t.firstChild,a=0;h;h=h.nextSibling,a++){let t;if(h.nodeType==1)t=h.getClientRects();else if(h.nodeType==3)t=hi(h).getClientRects();else continue;for(let c=0;c<t.length;c++){let d=t[c];if(d.top<=l&&d.bottom>=u){l=Math.max(d.bottom,l);u=Math.min(d.top,u);let t=d.left>e.left?d.left-e.left:d.right<e.left?e.left-d.right:0;if(t<r){i=h;r=t;n=t&&i.nodeType==3?{left:d.right<e.left?d.right:d.left,top:e.top}:e;if(h.nodeType==1&&t)s=a+(e.left>=(d.left+d.right)/2?1:0);continue}}else if(d.top>e.top&&!o&&d.left<=e.left&&d.right>=e.left){o=h;f={left:Math.max(d.left,Math.min(d.right,e.left)),top:d.top}}if(!i&&(e.left>=d.right&&e.top>=d.top||e.left>=d.left&&e.top>=d.bottom))s=a+1}}if(!i&&o){i=o;n=f;r=0}if(i&&i.nodeType==3)return Xi(i,n);if(!i||r&&i.nodeType==1)return{node:t,offset:s};return Gi(i,n)}function Xi(t,e){let i=t.nodeValue.length;let r=document.createRange();for(let n=0;n<i;n++){r.setEnd(t,n+1);r.setStart(t,n);let i=sr(r,1);if(i.top==i.bottom)continue;if(Yi(e,i))return{node:t,offset:n+(e.left>=(i.left+i.right)/2?1:0)}}return{node:t,offset:0}}function Yi(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function Qi(t,e){let i=t.parentNode;if(i&&/^li$/i.test(i.nodeName)&&e.left<t.getBoundingClientRect().left)return i;return t}function tr(t,e,i){let{node:r,offset:n}=Gi(e,i),s=-1;if(r.nodeType==1&&!r.firstChild){let t=r.getBoundingClientRect();s=t.left!=t.right&&i.left>(t.left+t.right)/2?1:-1}return t.docView.posFromDOM(r,n,s)}function er(t,e,i,r){let n=-1;for(let i=e,s=false;;){if(i==t.dom)break;let e=t.docView.nearestDesc(i,true);if(!e)return null;if(e.dom.nodeType==1&&(e.node.isBlock&&e.parent&&!s||!e.contentDOM)){let t=e.dom.getBoundingClientRect();if(e.node.isBlock&&e.parent&&!s){s=true;if(t.left>r.left||t.top>r.top)n=e.posBefore;else if(t.right<r.left||t.bottom<r.top)n=e.posAfter}if(!e.contentDOM&&n<0&&!e.node.isText){let i=e.node.isBlock?r.top<(t.top+t.bottom)/2:r.left<(t.left+t.right)/2;return i?e.posBefore:e.posAfter}}i=e.dom.parentNode}return n>-1?n:t.docView.posFromDOM(e,i,-1)}function ir(t,e,i){let r=t.childNodes.length;if(r&&i.top<i.bottom){for(let n=Math.max(0,Math.min(r-1,Math.floor(r*(e.top-i.top)/(i.bottom-i.top))-2)),s=n;;){let i=t.childNodes[s];if(i.nodeType==1){let t=i.getClientRects();for(let r=0;r<t.length;r++){let n=t[r];if(Yi(e,n))return ir(i,e,n)}}if((s=(s+1)%r)==n)break}}return t}function rr(t,e){let i=t.dom.ownerDocument,r,n=0;let s=ki(i,e.left,e.top);if(s)({node:r,offset:n}=s);let l=(t.root.elementFromPoint?t.root:i).elementFromPoint(e.left,e.top);let u;if(!l||!t.dom.contains(l.nodeType!=1?l.parentNode:l)){let i=t.dom.getBoundingClientRect();if(!Yi(e,i))return null;l=ir(t.dom,e,i);if(!l)return null}if(Bi){for(let t=l;r&&t;t=oi(t))if(t.draggable)r=undefined}l=Qi(l,e);if(r){if(Si&&r.nodeType==1){n=Math.min(n,r.childNodes.length);if(n<r.childNodes.length){let t=r.childNodes[n],i;if(t.nodeName=="IMG"&&(i=t.getBoundingClientRect()).right<=e.left&&i.bottom>e.top)n++}}let i;if(Ti&&n&&r.nodeType==1&&(i=r.childNodes[n-1]).nodeType==1&&i.contentEditable=="false"&&i.getBoundingClientRect().top>=e.top)n--;if(r==t.dom&&n==r.childNodes.length-1&&r.lastChild.nodeType==1&&e.top>r.lastChild.getBoundingClientRect().bottom)u=t.state.doc.content.size;else if(n==0||r.nodeType!=1||r.childNodes[n-1].nodeName!="BR")u=er(t,r,n,e)}if(u==null)u=tr(t,l,e);let o=t.docView.nearestDesc(l,true);return{pos:u,inside:o?o.posAtStart-o.border:-1}}function nr(t){return t.top<t.bottom||t.left<t.right}function sr(t,e){let i=t.getClientRects();if(i.length){let t=i[e<0?0:i.length-1];if(nr(t))return t}return Array.prototype.find.call(i,nr)||t.getBoundingClientRect()}const lr=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function ur(t,e,i){let{node:r,offset:n,atom:s}=t.docView.domFromPos(e,i<0?-1:1);let l=Ti||Si;if(r.nodeType==3){if(l&&(lr.test(r.nodeValue)||(i<0?!n:n==r.nodeValue.length))){let t=sr(hi(r,n,n),i);if(Si&&n&&/\s/.test(r.nodeValue[n-1])&&n<r.nodeValue.length){let e=sr(hi(r,n-1,n-1),-1);if(e.top==t.top){let i=sr(hi(r,n,n+1),-1);if(i.top!=t.top)return or(i,i.left<e.left)}}return t}else{let t=n,e=n,s=i<0?1:-1;if(i<0&&!n){e++;s=-1}else if(i>=0&&n==r.nodeValue.length){t--;s=1}else if(i<0){t--}else{e++}return or(sr(hi(r,t,e),s),s<0)}}let u=t.state.doc.resolve(e-(s||0));if(!u.parent.inlineContent){if(s==null&&n&&(i<0||n==pi(r))){let t=r.childNodes[n-1];if(t.nodeType==1)return fr(t.getBoundingClientRect(),false)}if(s==null&&n<pi(r)){let t=r.childNodes[n];if(t.nodeType==1)return fr(t.getBoundingClientRect(),true)}return fr(r.getBoundingClientRect(),i>=0)}if(s==null&&n&&(i<0||n==pi(r))){let t=r.childNodes[n-1];let e=t.nodeType==3?hi(t,pi(t)-(l?0:1)):t.nodeType==1&&(t.nodeName!="BR"||!t.nextSibling)?t:null;if(e)return or(sr(e,1),false)}if(s==null&&n<pi(r)){let t=r.childNodes[n];while(t.pmViewDesc&&t.pmViewDesc.ignoreForCoords)t=t.nextSibling;let e=!t?null:t.nodeType==3?hi(t,0,l?0:1):t.nodeType==1?t:null;if(e)return or(sr(e,-1),true)}return or(sr(r.nodeType==3?hi(r):r,-i),i>=0)}function or(t,e){if(t.width==0)return t;let i=e?t.left:t.right;return{top:t.top,bottom:t.bottom,left:i,right:i}}function fr(t,e){if(t.height==0)return t;let i=e?t.top:t.bottom;return{top:i,bottom:i,left:t.left,right:t.right}}function hr(t,e,i){let r=t.state,n=t.root.activeElement;if(r!=e)t.updateState(e);if(n!=t.dom)t.focus();try{return i()}finally{if(r!=e)t.updateState(r);if(n!=t.dom&&n)n.focus()}}function ar(t,e,i){let r=e.selection;let n=i=="up"?r.$from:r.$to;return hr(t,e,(()=>{let{node:e}=t.docView.domFromPos(n.pos,i=="up"?-1:1);for(;;){let i=t.docView.nearestDesc(e,true);if(!i)break;if(i.node.isBlock){e=i.contentDOM||i.dom;break}e=i.dom.parentNode}let r=ur(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=hi(t,0,t.nodeValue.length).getClientRects();else continue;for(let t=0;t<e.length;t++){let n=e[t];if(n.bottom>n.top+1&&(i=="up"?r.top-n.top>(n.bottom-r.top)*2:n.bottom-r.bottom>(r.bottom-n.top)*2))return false}}return true}))}const cr=/[\u0590-\u08ac]/;function dr(t,e,i){let{$head:r}=e.selection;if(!r.parent.isTextblock)return false;let n=r.parentOffset,s=!n,l=n==r.parent.content.size;let u=t.domSelection();if(!cr.test(r.parent.textContent)||!u.modify)return i=="left"||i=="backward"?s:l;return hr(t,e,(()=>{let{focusNode:e,focusOffset:n,anchorNode:s,anchorOffset:l}=t.domSelectionRange();let o=u.caretBidiLevel;u.modify("move",i,"character");let f=r.depth?t.docView.domAfterPos(r.before()):t.dom;let{focusNode:h,focusOffset:a}=t.domSelectionRange();let c=h&&!f.contains(h.nodeType==1?h:h.parentNode)||e==h&&n==a;try{u.collapse(s,l);if(e&&(e!=s||n!=l)&&u.extend)u.extend(e,n)}catch(t){}if(o!=null)u.caretBidiLevel=o;return c}))}let pr=null;let mr=null;let wr=false;function gr(t,e,i){if(pr==e&&mr==i)return wr;pr=e;mr=i;return wr=i=="up"||i=="down"?ar(t,e,i):dr(t,e,i)}const br=0,Dr=1,kr=2,vr=3;class yr{constructor(t,e,i,r){this.parent=t;this.children=e;this.dom=i;this.contentDOM=r;this.dirty=br;i.pmViewDesc=this}matchesWidget(t){return false}matchesMark(t){return false}matchesNode(t,e,i){return false}matchesHack(t){return false}parseRule(){return null}stopEvent(t){return false}get size(){let t=0;for(let e=0;e<this.children.length;e++)t+=this.children[e].size;return t}get border(){return 0}destroy(){this.parent=undefined;if(this.dom.pmViewDesc==this)this.dom.pmViewDesc=undefined;for(let t=0;t<this.children.length;t++)this.children[t].destroy()}posBeforeChild(t){for(let e=0,i=this.posAtStart;;e++){let r=this.children[e];if(r==t)return i;i+=r.size}}get posBefore(){return this.parent.posBeforeChild(this)}get posAtStart(){return this.parent?this.parent.posBeforeChild(this)+this.border:0}get posAfter(){return this.posBefore+this.size}get posAtEnd(){return this.posAtStart+this.size-2*this.border}localPosFromDOM(t,e,i){if(this.contentDOM&&this.contentDOM.contains(t.nodeType==1?t:t.parentNode)){if(i<0){let i,r;if(t==this.contentDOM){i=t.childNodes[e-1]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;i=t.previousSibling}while(i&&!((r=i.pmViewDesc)&&r.parent==this))i=i.previousSibling;return i?this.posBeforeChild(r)+r.size:this.posAtStart}else{let i,r;if(t==this.contentDOM){i=t.childNodes[e]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;i=t.nextSibling}while(i&&!((r=i.pmViewDesc)&&r.parent==this))i=i.nextSibling;return i?this.posBeforeChild(r):this.posAtEnd}}let r;if(t==this.dom&&this.contentDOM){r=e>ui(this.contentDOM)}else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM)){r=t.compareDocumentPosition(this.contentDOM)&2}else if(this.dom.firstChild){if(e==0)for(let e=t;;e=e.parentNode){if(e==this.dom){r=false;break}if(e.previousSibling)break}if(r==null&&e==t.childNodes.length)for(let e=t;;e=e.parentNode){if(e==this.dom){r=true;break}if(e.nextSibling)break}}return(r==null?i>0:r)?this.posAtEnd:this.posAtStart}nearestDesc(t,e=false){for(let i=true,r=t;r;r=r.parentNode){let n=this.getDesc(r),s;if(n&&(!e||n.node)){if(i&&(s=n.nodeDOM)&&!(s.nodeType==1?s.contains(t.nodeType==1?t:t.parentNode):s==t))i=false;else return n}}}getDesc(t){let e=t.pmViewDesc;for(let t=e;t;t=t.parent)if(t==this)return e}posFromDOM(t,e,i){for(let r=t;r;r=r.parentNode){let n=this.getDesc(r);if(n)return n.localPosFromDOM(t,e,i)}return-1}descAt(t){for(let e=0,i=0;e<this.children.length;e++){let r=this.children[e],n=i+r.size;if(i==t&&n!=i){while(!r.border&&r.children.length)r=r.children[0];return r}if(t<n)return r.descAt(t-i-r.border);i=n}}domFromPos(t,e){if(!this.contentDOM)return{node:this.dom,offset:0,atom:t+1};let i=0,r=0;for(let e=0;i<this.children.length;i++){let n=this.children[i],s=e+n.size;if(s>t||n instanceof Sr){r=t-e;break}e=s}if(r)return this.children[i].domFromPos(r-this.children[i].border,e);for(let t;i&&!(t=this.children[i-1]).size&&t instanceof Fr&&t.side>=0;i--){}if(e<=0){let t,r=true;for(;;i--,r=false){t=i?this.children[i-1]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&e&&r&&!t.border&&!t.domAtom)return t.domFromPos(t.size,e);return{node:this.contentDOM,offset:t?ui(t.dom)+1:0}}else{let t,r=true;for(;;i++,r=false){t=i<this.children.length?this.children[i]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&r&&!t.border&&!t.domAtom)return t.domFromPos(0,e);return{node:this.contentDOM,offset:t?ui(t.dom):this.contentDOM.childNodes.length}}}parseRange(t,e,i=0){if(this.children.length==0)return{node:this.contentDOM,from:t,to:e,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let r=-1,n=-1;for(let s=i,l=0;;l++){let i=this.children[l],u=s+i.size;if(r==-1&&t<=u){let n=s+i.border;if(t>=n&&e<=u-i.border&&i.node&&i.contentDOM&&this.contentDOM.contains(i.contentDOM))return i.parseRange(t,e,n);t=s;for(let e=l;e>0;e--){let i=this.children[e-1];if(i.size&&i.dom.parentNode==this.contentDOM&&!i.emptyChildAt(1)){r=ui(i.dom)+1;break}t-=i.size}if(r==-1)r=0}if(r>-1&&(u>e||l==this.children.length-1)){e=u;for(let t=l+1;t<this.children.length;t++){let i=this.children[t];if(i.size&&i.dom.parentNode==this.contentDOM&&!i.emptyChildAt(-1)){n=ui(i.dom);break}e+=i.size}if(n==-1)n=this.contentDOM.childNodes.length;break}s=u}return{node:this.contentDOM,from:t,to:e,fromOffset:r,toOffset:n}}emptyChildAt(t){if(this.border||!this.contentDOM||!this.children.length)return false;let e=this.children[t<0?0:this.children.length-1];return e.size==0||e.emptyChildAt(t)}domAfterPos(t){let{node:e,offset:i}=this.domFromPos(t,0);if(e.nodeType!=1||i==e.childNodes.length)throw new RangeError("No node after pos "+t);return e.childNodes[i]}setSelection(t,e,i,r=false){let n=Math.min(t,e),s=Math.max(t,e);for(let l=0,u=0;l<this.children.length;l++){let o=this.children[l],f=u+o.size;if(n>u&&s<f)return o.setSelection(t-u-o.border,e-u-o.border,i,r);u=f}let l=this.domFromPos(t,t?-1:1);let u=e==t?l:this.domFromPos(e,e?-1:1);let o=i.getSelection();let f=false;if((Si||Bi)&&t==e){let{node:t,offset:e}=l;if(t.nodeType==3){f=!!(e&&t.nodeValue[e-1]=="\n");if(f&&e==t.nodeValue.length){for(let e=t,i;e;e=e.parentNode){if(i=e.nextSibling){if(i.nodeName=="BR")l=u={node:i.parentNode,offset:ui(i)+1};break}let t=e.pmViewDesc;if(t&&t.node&&t.node.isBlock)break}}}else{let i=t.childNodes[e-1];f=i&&(i.nodeName=="BR"||i.contentEditable=="false")}}if(Si&&o.focusNode&&o.focusNode!=u.node&&o.focusNode.nodeType==1){let t=o.focusNode.childNodes[o.focusOffset];if(t&&t.contentEditable=="false")r=true}if(!(r||f&&Bi)&&ai(l.node,l.offset,o.anchorNode,o.anchorOffset)&&ai(u.node,u.offset,o.focusNode,o.focusOffset))return;let h=false;if((o.extend||t==e)&&!f){o.collapse(l.node,l.offset);try{if(t!=e)o.extend(u.node,u.offset);h=true}catch(t){}}if(!h){if(t>e){let t=l;l=u;u=t}let i=document.createRange();i.setEnd(u.node,u.offset);i.setStart(l.node,l.offset);o.removeAllRanges();o.addRange(i)}}ignoreMutation(t){return!this.contentDOM&&t.type!="selection"}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(t,e){for(let i=0,r=0;r<this.children.length;r++){let n=this.children[r],s=i+n.size;if(i==s?t<=s&&e>=i:t<s&&e>i){let r=i+n.border,l=s-n.border;if(t>=r&&e<=l){this.dirty=t==i||e==s?kr:Dr;if(t==r&&e==l&&(n.contentLost||n.dom.parentNode!=this.contentDOM))n.dirty=vr;else n.markDirty(t-r,e-r);return}else{n.dirty=n.dom==n.contentDOM&&n.dom.parentNode==this.contentDOM&&!n.children.length?kr:vr}}i=s}this.dirty=kr}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let i=t==1?kr:Dr;if(e.dirty<i)e.dirty=i}}get domAtom(){return false}get ignoreForCoords(){return false}}class Fr extends yr{constructor(t,e,i,r){let n,s=e.type.toDOM;if(typeof s=="function")s=s(i,(()=>{if(!n)return r;if(n.parent)return n.parent.posBeforeChild(n)}));if(!e.type.spec.raw){if(s.nodeType!=1){let t=document.createElement("span");t.appendChild(s);s=t}s.contentEditable="false";s.classList.add("ProseMirror-widget")}super(t,[],s,null);this.widget=e;this.widget=e;n=this}matchesWidget(t){return this.dirty==br&&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 Er extends yr{constructor(t,e,i,r){super(t,[],e,null);this.textDOM=i;this.text=r}get size(){return this.text.length}localPosFromDOM(t,e){if(t!=this.textDOM)return this.posAtStart+(e?this.size:0);return this.posAtStart+e}domFromPos(t){return{node:this.textDOM,offset:t}}ignoreMutation(t){return t.type==="characterData"&&t.target.nodeValue==t.oldValue}}class xr extends yr{constructor(t,e,i,r){super(t,[],i,r);this.mark=e}static create(t,e,i,r){let n=r.nodeViews[e.type.name];let s=n&&n(e,r,i);if(!s||!s.dom)s=vt.renderSpec(document,e.type.spec.toDOM(e,i));return new xr(t,e,s.dom,s.contentDOM||s.dom)}parseRule(){if(this.dirty&vr||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!=vr&&this.mark.eq(t)}markDirty(t,e){super.markDirty(t,e);if(this.dirty!=br){let t=this.parent;while(!t.node)t=t.parent;if(t.dirty<this.dirty)t.dirty=this.dirty;this.dirty=br}}slice(t,e,i){let r=xr.create(this.parent,this.mark,true,i);let n=this.children,s=this.size;if(e<s)n=Hr(n,e,s,i);if(t>0)n=Hr(n,0,t,i);for(let t=0;t<n.length;t++)n[t].parent=r;r.children=n;return r}}class Mr extends yr{constructor(t,e,i,r,n,s,l,u,o){super(t,[],n,s);this.node=e;this.outerDeco=i;this.innerDeco=r;this.nodeDOM=l}static create(t,e,i,r,n,s){let l=n.nodeViews[e.type.name],u;let o=l&&l(e,n,(()=>{if(!u)return s;if(u.parent)return u.parent.posBeforeChild(u)}),i,r);let f=o&&o.dom,h=o&&o.contentDOM;if(e.isText){if(!f)f=document.createTextNode(e.text);else if(f.nodeType!=3)throw new RangeError("Text must be rendered as a DOM text node")}else if(!f){({dom:f,contentDOM:h}=vt.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=zr(f,i,e);if(o)return u=new Or(t,e,i,r,f,h||null,a,o,n,s+1);else if(e.isText)return new Cr(t,e,i,r,f,a,n);else return new Mr(t,e,i,r,f,h||null,a,n,s+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let t={node:this.node.type.name,attrs:this.node.attrs};if(this.node.type.whitespace=="pre")t.preserveWhitespace="full";if(!this.contentDOM){t.getContent=()=>this.node.content}else if(!this.contentLost){t.contentElement=this.contentDOM}else{for(let e=this.children.length-1;e>=0;e--){let i=this.children[e];if(this.dom.contains(i.dom.parentNode)){t.contentElement=i.dom.parentNode;break}}if(!t.contentElement)t.getContent=()=>f.empty}return t}matchesNode(t,e,i){return this.dirty==br&&t.eq(this.node)&&Tr(e,this.outerDeco)&&i.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(t,e){let i=this.node.inlineContent,r=e;let n=t.composing?this.localCompositionInfo(t,e):null;let s=n&&n.pos>-1?n:null;let l=n&&n.pos<0;let u=new Pr(this,s&&s.node,t);Lr(this.node,this.innerDeco,((e,n,s)=>{if(e.spec.marks)u.syncToMarks(e.spec.marks,i,t);else if(e.type.side>=0&&!s)u.syncToMarks(n==this.node.childCount?d.none:this.node.child(n).marks,i,t);u.placeWidget(e,t,r)}),((e,s,o,f)=>{u.syncToMarks(e.marks,i,t);let h;if(u.findNodeMatch(e,s,o,f));else if(l&&t.state.selection.from>r&&t.state.selection.to<r+e.nodeSize&&(h=u.findIndexWithChild(n.node))>-1&&u.updateNodeAt(e,s,o,h,t));else if(u.updateNextNode(e,s,o,t,f,r));else{u.addNode(e,s,o,t,r)}r+=e.nodeSize}));u.syncToMarks([],i,t);if(this.node.isTextblock)u.addTextblockHacks();u.destroyRest();if(u.changed||this.dirty==kr){if(s)this.protectLocalComposition(t,s);$r(this.contentDOM,this.children,t);if(qi)Wr(this.dom)}}localCompositionInfo(t,e){let{from:i,to:r}=t.state.selection;if(!(t.state.selection instanceof Ie)||i<e||r>e+this.node.content.size)return null;let n=t.domSelectionRange();let s=Ur(n.focusNode,n.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let t=s.nodeValue;let n=Zr(this.node.content,t,i-e,r-e);return n<0?null:{node:s,pos:n,text:t}}else{return{node:s,pos:-1,text:""}}}protectLocalComposition(t,{node:e,pos:i,text:r}){if(this.getDesc(e))return;let n=e;for(;;n=n.parentNode){if(n.parentNode==this.contentDOM)break;while(n.previousSibling)n.parentNode.removeChild(n.previousSibling);while(n.nextSibling)n.parentNode.removeChild(n.nextSibling);if(n.pmViewDesc)n.pmViewDesc=undefined}let s=new Er(this,n,e,r);t.input.compositionNodes.push(s);this.children=Hr(this.children,i,i+r.length,t,s)}update(t,e,i,r){if(this.dirty==vr||!t.sameMarkup(this.node))return false;this.updateInner(t,e,i,r);return true}updateInner(t,e,i,r){this.updateOuterDeco(e);this.node=t;this.innerDeco=i;if(this.contentDOM)this.updateChildren(r,this.posAtStart);this.dirty=br}updateOuterDeco(t){if(Tr(t,this.outerDeco))return;let e=this.nodeDOM.nodeType!=1;let i=this.dom;this.dom=Rr(this.dom,this.nodeDOM,qr(this.outerDeco,this.node,e),qr(t,this.node,e));if(this.dom!=i){i.pmViewDesc=undefined;this.dom.pmViewDesc=this}this.outerDeco=t}selectNode(){if(this.nodeDOM.nodeType==1)this.nodeDOM.classList.add("ProseMirror-selectednode");if(this.contentDOM||!this.node.type.spec.draggable)this.dom.draggable=true}deselectNode(){if(this.nodeDOM.nodeType==1)this.nodeDOM.classList.remove("ProseMirror-selectednode");if(this.contentDOM||!this.node.type.spec.draggable)this.dom.removeAttribute("draggable")}get domAtom(){return this.node.isAtom}}function Ar(t,e,i,r,n){zr(r,e,t);let s=new Mr(undefined,t,e,i,r,r,r,n,0);if(s.contentDOM)s.updateChildren(n,0);return s}class Cr extends Mr{constructor(t,e,i,r,n,s,l){super(t,e,i,r,n,null,s,l,0)}parseRule(){let t=this.nodeDOM.parentNode;while(t&&t!=this.dom&&!t.pmIsDeco)t=t.parentNode;return{skip:t||true}}update(t,e,i,r){if(this.dirty==vr||this.dirty!=br&&!this.inParent()||!t.sameMarkup(this.node))return false;this.updateOuterDeco(e);if((this.dirty!=br||t.text!=this.node.text)&&t.text!=this.nodeDOM.nodeValue){this.nodeDOM.nodeValue=t.text;if(r.trackWrites==this.nodeDOM)r.trackWrites=null}this.node=t;this.dirty=br;return true}inParent(){let t=this.parent.contentDOM;for(let e=this.nodeDOM;e;e=e.parentNode)if(e==t)return true;return false}domFromPos(t){return{node:this.nodeDOM,offset:t}}localPosFromDOM(t,e,i){if(t==this.nodeDOM)return this.posAtStart+Math.min(e,this.node.text.length);return super.localPosFromDOM(t,e,i)}ignoreMutation(t){return t.type!="characterData"&&t.type!="selection"}slice(t,e,i){let r=this.node.cut(t,e),n=document.createTextNode(r.text);return new Cr(this.parent,r,this.outerDeco,this.innerDeco,n,n,i)}markDirty(t,e){super.markDirty(t,e);if(this.dom!=this.nodeDOM&&(t==0||e==this.nodeDOM.nodeValue.length))this.dirty=vr}get domAtom(){return false}}class Sr extends yr{parseRule(){return{ignore:true}}matchesHack(t){return this.dirty==br&&this.dom.nodeName==t}get domAtom(){return true}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Or extends Mr{constructor(t,e,i,r,n,s,l,u,o,f){super(t,e,i,r,n,s,l,o,f);this.spec=u}update(t,e,i,r){if(this.dirty==vr)return false;if(this.spec.update){let n=this.spec.update(t,e,i);if(n)this.updateInner(t,e,i,r);return n}else if(!this.contentDOM&&!t.isLeaf){return false}else{return super.update(t,e,i,r)}}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(t,e,i,r){this.spec.setSelection?this.spec.setSelection(t,e,i):super.setSelection(t,e,i,r)}destroy(){if(this.spec.destroy)this.spec.destroy();super.destroy()}stopEvent(t){return this.spec.stopEvent?this.spec.stopEvent(t):false}ignoreMutation(t){return this.spec.ignoreMutation?this.spec.ignoreMutation(t):super.ignoreMutation(t)}}function $r(t,e,i){let r=t.firstChild,n=false;for(let s=0;s<e.length;s++){let l=e[s],u=l.dom;if(u.parentNode==t){while(u!=r){r=Ir(r);n=true}r=r.nextSibling}else{n=true;t.insertBefore(u,r)}if(l instanceof xr){let e=r?r.previousSibling:t.lastChild;$r(l.contentDOM,l.children,i);r=e?e.nextSibling:t.firstChild}}while(r){r=Ir(r);n=true}if(n&&i.trackWrites==t)i.trackWrites=null}const _r=function(t){if(t)this.nodeName=t};_r.prototype=Object.create(null);const Br=[new _r];function qr(t,e,i){if(t.length==0)return Br;let r=i?Br[0]:new _r,n=[r];for(let s=0;s<t.length;s++){let l=t[s].type.attrs;if(!l)continue;if(l.nodeName)n.push(r=new _r(l.nodeName));for(let t in l){let s=l[t];if(s==null)continue;if(i&&n.length==1)n.push(r=new _r(e.isInline?"span":"div"));if(t=="class")r.class=(r.class?r.class+" ":"")+s;else if(t=="style")r.style=(r.style?r.style+";":"")+s;else if(t!="nodeName")r[t]=s}}return n}function Rr(t,e,i,r){if(i==Br&&r==Br)return e;let n=e;for(let e=0;e<r.length;e++){let s=r[e],l=i[e];if(e){let e;if(l&&l.nodeName==s.nodeName&&n!=t&&(e=n.parentNode)&&e.nodeName.toLowerCase()==s.nodeName){n=e}else{e=document.createElement(s.nodeName);e.pmIsDeco=true;e.appendChild(n);l=Br[0];n=e}}Nr(n,l||Br[0],s)}return n}function Nr(t,e,i){for(let r in e)if(r!="class"&&r!="style"&&r!="nodeName"&&!(r in i))t.removeAttribute(r);for(let r in i)if(r!="class"&&r!="style"&&r!="nodeName"&&i[r]!=e[r])t.setAttribute(r,i[r]);if(e.class!=i.class){let r=e.class?e.class.split(" ").filter(Boolean):[];let n=i.class?i.class.split(" ").filter(Boolean):[];for(let e=0;e<r.length;e++)if(n.indexOf(r[e])==-1)t.classList.remove(r[e]);for(let e=0;e<n.length;e++)if(r.indexOf(n[e])==-1)t.classList.add(n[e]);if(t.classList.length==0)t.removeAttribute("class")}if(e.style!=i.style){if(e.style){let i=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g,r;while(r=i.exec(e.style))t.style.removeProperty(r[1])}if(i.style)t.style.cssText+=i.style}}function zr(t,e,i){return Rr(t,t,Br,qr(e,i,t.nodeType!=1))}function Tr(t,e){if(t.length!=e.length)return false;for(let i=0;i<t.length;i++)if(!t[i].type.eq(e[i].type))return false;return true}function Ir(t){let e=t.nextSibling;t.parentNode.removeChild(t);return e}class Pr{constructor(t,e,i){this.lock=e;this.view=i;this.index=0;this.stack=[];this.changed=false;this.top=t;this.preMatch=jr(t.node.content,t)}destroyBetween(t,e){if(t==e)return;for(let i=t;i<e;i++)this.top.children[i].destroy();this.top.children.splice(t,e-t);this.changed=true}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(t,e,i){let r=0,n=this.stack.length>>1;let s=Math.min(n,t.length);while(r<s&&(r==n-1?this.top:this.stack[r+1<<1]).matchesMark(t[r])&&t[r].type.spec.spanning!==false)r++;while(r<n){this.destroyRest();this.top.dirty=br;this.index=this.stack.pop();this.top=this.stack.pop();n--}while(n<t.length){this.stack.push(this.top,this.index+1);let r=-1;for(let e=this.index;e<Math.min(this.index+3,this.top.children.length);e++){let i=this.top.children[e];if(i.matchesMark(t[n])&&!this.isLocked(i.dom)){r=e;break}}if(r>-1){if(r>this.index){this.changed=true;this.destroyBetween(this.index,r)}this.top=this.top.children[this.index]}else{let r=xr.create(this.top,t[n],e,i);this.top.children.splice(this.index,0,r);this.top=r;this.changed=true}this.index=0;n++}}findNodeMatch(t,e,i,r){let n=-1,s;if(r>=this.preMatch.index&&(s=this.preMatch.matches[r-this.preMatch.index]).parent==this.top&&s.matchesNode(t,e,i)){n=this.top.children.indexOf(s,this.index)}else{for(let r=this.index,s=Math.min(this.top.children.length,r+5);r<s;r++){let s=this.top.children[r];if(s.matchesNode(t,e,i)&&!this.preMatch.matched.has(s)){n=r;break}}}if(n<0)return false;this.destroyBetween(this.index,n);this.index++;return true}updateNodeAt(t,e,i,r,n){let s=this.top.children[r];if(s.dirty==vr&&s.dom==s.contentDOM)s.dirty=kr;if(!s.update(t,e,i,n))return false;this.destroyBetween(this.index,r);this.index++;return true}findIndexWithChild(t){for(;;){let e=t.parentNode;if(!e)return-1;if(e==this.top.contentDOM){let e=t.pmViewDesc;if(e)for(let t=this.index;t<this.top.children.length;t++){if(this.top.children[t]==e)return t}return-1}t=e}}updateNextNode(t,e,i,r,n,s){for(let l=this.index;l<this.top.children.length;l++){let u=this.top.children[l];if(u instanceof Mr){let o=this.preMatch.matched.get(u);if(o!=null&&o!=n)return false;let f=u.dom,h;let a=this.isLocked(f)&&!(t.isText&&u.node&&u.node.isText&&u.nodeDOM.nodeValue==t.text&&u.dirty!=vr&&Tr(e,u.outerDeco));if(!a&&u.update(t,e,i,r)){this.destroyBetween(this.index,l);if(u.dom!=f)this.changed=true;this.index++;return true}else if(!a&&(h=this.recreateWrapper(u,t,e,i,r,s))){this.top.children[this.index]=h;if(h.contentDOM){h.dirty=kr;h.updateChildren(r,s+1);h.dirty=br}this.changed=true;this.index++;return true}break}}return false}recreateWrapper(t,e,i,r,n,s){if(t.dirty||e.isAtom||!t.children.length||!t.node.content.eq(e.content))return null;let l=Mr.create(this.top,e,i,r,n,s);if(l.contentDOM){l.children=t.children;t.children=[];for(let t of l.children)t.parent=l}t.destroy();return l}addNode(t,e,i,r,n){let s=Mr.create(this.top,t,e,i,r,n);if(s.contentDOM)s.updateChildren(r,n+1);this.top.children.splice(this.index++,0,s);this.changed=true}placeWidget(t,e,i){let r=this.index<this.top.children.length?this.top.children[this.index]:null;if(r&&r.matchesWidget(t)&&(t==r.widget||!r.widget.type.toDOM.parentNode)){this.index++}else{let r=new Fr(this.top,t,e,i);this.top.children.splice(this.index++,0,r);this.changed=true}}addTextblockHacks(){let t=this.top.children[this.index-1],e=this.top;while(t instanceof xr){e=t;t=e.children[e.children.length-1]}if(!t||!(t instanceof Cr)||/\n$/.test(t.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(t.node.text)){if((Bi||$i)&&t&&t.dom.contentEditable=="false")this.addHackNode("IMG",e);this.addHackNode("BR",this.top)}}addHackNode(t,e){if(e==this.top&&this.index<e.children.length&&e.children[this.index].matchesHack(t)){this.index++}else{let i=document.createElement(t);if(t=="IMG"){i.className="ProseMirror-separator";i.alt=""}if(t=="BR")i.className="ProseMirror-trailingBreak";let r=new Sr(this.top,[],i,null);if(e!=this.top)e.children.push(r);else e.children.splice(this.index++,0,r);this.changed=true}}isLocked(t){return this.lock&&(t==this.lock||t.nodeType==1&&t.contains(this.lock.parentNode))}}function jr(t,e){let i=e,r=i.children.length;let n=t.childCount,s=new Map,l=[];t:while(n>0){let u;for(;;){if(r){let t=i.children[r-1];if(t instanceof xr){i=t;r=t.children.length}else{u=t;r--;break}}else if(i==e){break t}else{r=i.parent.children.indexOf(i);i=i.parent}}let o=u.node;if(!o)continue;if(o!=t.child(n-1))break;--n;s.set(u,n);l.push(u)}return{index:n,matched:s,matches:l.reverse()}}function Jr(t,e){return t.type.side-e.type.side}function Lr(t,e,i,r){let n=e.locals(t),s=0;if(n.length==0){for(let i=0;i<t.childCount;i++){let l=t.child(i);r(l,n,e.forChild(s,l),i);s+=l.nodeSize}return}let l=0,u=[],o=null;for(let f=0;;){let h,a;while(l<n.length&&n[l].to==s){let t=n[l++];if(t.widget){if(!h)h=t;else(a||(a=[h])).push(t)}}if(h){if(a){a.sort(Jr);for(let t=0;t<a.length;t++)i(a[t],f,!!o)}else{i(h,f,!!o)}}let c,d;if(o){d=-1;c=o;o=null}else if(f<t.childCount){d=f;c=t.child(f++)}else{break}for(let t=0;t<u.length;t++)if(u[t].to<=s)u.splice(t--,1);while(l<n.length&&n[l].from<=s&&n[l].to>s)u.push(n[l++]);let p=s+c.nodeSize;if(c.isText){let t=p;if(l<n.length&&n[l].from<t)t=n[l].from;for(let e=0;e<u.length;e++)if(u[e].to<t)t=u[e].to;if(t<p){o=c.cut(t-s);c=c.cut(0,t-s);p=t;d=-1}}else{while(l<n.length&&n[l].to<p)l++}let m=c.isInline&&!c.isLeaf?u.filter((t=>!t.inline)):u.slice();r(c,m,e.forChild(s,c),d);s=p}}function Wr(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 Ur(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=pi(t)}else if(t.nodeType==1&&e<t.childNodes.length){t=t.childNodes[e];e=0}else{return null}}}function Zr(t,e,i,r){for(let n=0,s=0;n<t.childCount&&s<=r;){let l=t.child(n++),u=s;s+=l.nodeSize;if(!l.isText)continue;let o=l.text;while(n<t.childCount){let e=t.child(n++);s+=e.nodeSize;if(!e.isText)break;o+=e.text}if(s>=i){if(s>=r&&o.slice(r-e.length-u,r-u)==e)return r-e.length;let t=u<r?o.lastIndexOf(e,r-u-1):-1;if(t>=0&&t+e.length+u>=i)return u+t;if(i==r&&o.length>=r+e.length-u&&o.slice(r-u,r-u+e.length)==e)return r}}return-1}function Hr(t,e,i,r,n){let s=[];for(let l=0,u=0;l<t.length;l++){let o=t[l],f=u,h=u+=o.size;if(f>=i||h<=e){s.push(o)}else{if(f<e)s.push(o.slice(0,e-f,r));if(n){s.push(n);n=undefined}if(h>i)s.push(o.slice(i-f,o.size,r))}}return s}function Kr(t,e=null){let i=t.domSelectionRange(),r=t.state.doc;if(!i.focusNode)return null;let n=t.docView.nearestDesc(i.focusNode),s=n&&n.size==0;let l=t.docView.posFromDOM(i.focusNode,i.focusOffset,1);if(l<0)return null;let u=r.resolve(l),o,f;if(gi(i)){o=u;while(n&&!n.node)n=n.parent;let t=n.node;if(n&&t.isAtom&&je.isSelectable(t)&&n.parent&&!(t.isInline&&mi(i.focusNode,i.focusOffset,n.dom))){let t=n.posBefore;f=new je(l==t?u:r.resolve(t))}}else{let e=t.docView.posFromDOM(i.anchorNode,i.anchorOffset,1);if(e<0)return null;o=r.resolve(e)}if(!f){let i=e=="pointer"||t.state.selection.head<u.pos&&!s?1:-1;f=ln(t,o,u,i)}return f}function Vr(t){return t.editable?t.hasFocus():on(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function Gr(t,e=false){let i=t.state.selection;nn(t,i);if(!Vr(t))return;if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&$i){let e=t.domSelectionRange(),i=t.domObserver.currentSelection;if(e.anchorNode&&i.anchorNode&&ai(e.anchorNode,e.anchorOffset,i.anchorNode,i.anchorOffset)){t.input.mouseDown.delayedSelectionSync=true;t.domObserver.setCurSelection();return}}t.domObserver.disconnectSelection();if(t.cursorWrapper){rn(t)}else{let{anchor:r,head:n}=i,s,l;if(Xr&&!(i instanceof Ie)){if(!i.$from.parent.inlineContent)s=Yr(t,i.from);if(!i.empty&&!i.$from.parent.inlineContent)l=Yr(t,i.to)}t.docView.setSelection(r,n,t.root,e);if(Xr){if(s)tn(s);if(l)tn(l)}if(i.visible){t.dom.classList.remove("ProseMirror-hideselection")}else{t.dom.classList.add("ProseMirror-hideselection");if("onselectionchange"in document)en(t)}}t.domObserver.setCurSelection();t.domObserver.connectSelection()}const Xr=Bi||$i&&_i<63;function Yr(t,e){let{node:i,offset:r}=t.docView.domFromPos(e,0);let n=r<i.childNodes.length?i.childNodes[r]:null;let s=r?i.childNodes[r-1]:null;if(Bi&&n&&n.contentEditable=="false")return Qr(n);if((!n||n.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(n)return Qr(n);else if(s)return Qr(s)}}function Qr(t){t.contentEditable="true";if(Bi&&t.draggable){t.draggable=false;t.wasDraggable=true}return t}function tn(t){t.contentEditable="false";if(t.wasDraggable){t.draggable=true;t.wasDraggable=null}}function en(t){let e=t.dom.ownerDocument;e.removeEventListener("selectionchange",t.input.hideSelectionGuard);let i=t.domSelectionRange();let r=i.anchorNode,n=i.anchorOffset;e.addEventListener("selectionchange",t.input.hideSelectionGuard=()=>{if(i.anchorNode!=r||i.anchorOffset!=n){e.removeEventListener("selectionchange",t.input.hideSelectionGuard);setTimeout((()=>{if(!Vr(t)||t.state.selection.visible)t.dom.classList.remove("ProseMirror-hideselection")}),20)}})}function rn(t){let e=t.domSelection(),i=document.createRange();let r=t.cursorWrapper.dom,n=r.nodeName=="IMG";if(n)i.setEnd(r.parentNode,ui(r)+1);else i.setEnd(r,0);i.collapse(false);e.removeAllRanges();e.addRange(i);if(!n&&!t.state.selection.visible&&Ai&&Ci<=11){r.disabled=true;r.disabled=false}}function nn(t,e){if(e instanceof je){let i=t.docView.descAt(e.from);if(i!=t.lastSelectedViewDesc){sn(t);if(i)i.selectNode();t.lastSelectedViewDesc=i}}else{sn(t)}}function sn(t){if(t.lastSelectedViewDesc){if(t.lastSelectedViewDesc.parent)t.lastSelectedViewDesc.deselectNode();t.lastSelectedViewDesc=undefined}}function ln(t,e,i,r){return t.someProp("createSelectionBetween",(r=>r(t,e,i)))||Ie.between(e,i,r)}function un(t){if(t.editable&&!t.hasFocus())return false;return on(t)}function on(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 fn(t){let e=t.docView.domFromPos(t.state.selection.anchor,0);let i=t.domSelectionRange();return ai(e.node,e.offset,i.anchorNode,i.anchorOffset)}function hn(t,e){let{$anchor:i,$head:r}=t.selection;let n=e>0?i.max(r):i.min(r);let s=!n.parent.inlineContent?n:n.depth?t.doc.resolve(e>0?n.after():n.before()):null;return s&&Re.findFrom(s,e)}function an(t,e){t.dispatch(t.state.tr.setSelection(e).scrollIntoView());return true}function cn(t,e,i){let r=t.state.selection;if(r instanceof Ie){if(i.indexOf("s")>-1){let{$head:i}=r,n=i.textOffset?null:e<0?i.nodeBefore:i.nodeAfter;if(!n||n.isText||!n.isLeaf)return false;let s=t.state.doc.resolve(i.pos+n.nodeSize*(e<0?-1:1));return an(t,new Ie(r.$anchor,s))}else if(!r.empty){return false}else if(t.endOfTextblock(e>0?"forward":"backward")){let i=hn(t.state,e);if(i&&i instanceof je)return an(t,i);return false}else if(!(Ri&&i.indexOf("m")>-1)){let i=r.$head,n=i.textOffset?null:e<0?i.nodeBefore:i.nodeAfter,s;if(!n||n.isText)return false;let l=e<0?i.pos-n.nodeSize:i.pos;if(!(n.isAtom||(s=t.docView.descAt(l))&&!s.contentDOM))return false;if(je.isSelectable(n)){return an(t,new je(e<0?t.state.doc.resolve(i.pos-n.nodeSize):i))}else if(Ti){return an(t,new Ie(t.state.doc.resolve(e<0?l:l+n.nodeSize)))}else{return false}}}else if(r instanceof je&&r.node.isInline){return an(t,new Ie(e>0?r.$to:r.$from))}else{let i=hn(t.state,e);if(i)return an(t,i);return false}}function dn(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function pn(t,e){let i=t.pmViewDesc;return i&&i.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function mn(t,e){return e<0?wn(t):gn(t)}function wn(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n,s,l=false;if(Si&&i.nodeType==1&&r<dn(i)&&pn(i.childNodes[r],-1))l=true;for(;;){if(r>0){if(i.nodeType!=1){break}else{let t=i.childNodes[r-1];if(pn(t,-1)){n=i;s=--r}else if(t.nodeType==3){i=t;r=i.nodeValue.length}else break}}else if(bn(i)){break}else{let e=i.previousSibling;while(e&&pn(e,-1)){n=i.parentNode;s=ui(e);e=e.previousSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=0}else{i=e;r=dn(i)}}}if(l)vn(t,i,r);else if(n)vn(t,n,s)}function gn(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n=dn(i);let s,l;for(;;){if(r<n){if(i.nodeType!=1)break;let t=i.childNodes[r];if(pn(t,1)){s=i;l=++r}else break}else if(bn(i)){break}else{let e=i.nextSibling;while(e&&pn(e,1)){s=e.parentNode;l=ui(e)+1;e=e.nextSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=n=0}else{i=e;r=0;n=dn(i)}}}if(s)vn(t,s,l)}function bn(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Dn(t,e){while(t&&e==t.childNodes.length&&!wi(t)){e=ui(t)+1;t=t.parentNode}while(t&&e<t.childNodes.length){let i=t.childNodes[e];if(i.nodeType==3)return i;if(i.nodeType==1&&i.contentEditable=="false")break;t=i;e=0}}function kn(t,e){while(t&&!e&&!wi(t)){e=ui(t);t=t.parentNode}while(t&&e){let i=t.childNodes[e-1];if(i.nodeType==3)return i;if(i.nodeType==1&&i.contentEditable=="false")break;t=i;e=t.childNodes.length}}function vn(t,e,i){if(e.nodeType!=3){let t,r;if(r=Dn(e,i)){e=r;i=0}else if(t=kn(e,i)){e=t;i=t.nodeValue.length}}let r=t.domSelection();if(gi(r)){let t=document.createRange();t.setEnd(e,i);t.setStart(e,i);r.removeAllRanges();r.addRange(t)}else if(r.extend){r.extend(e,i)}t.domObserver.setCurSelection();let{state:n}=t;setTimeout((()=>{if(t.state==n)Gr(t)}),50)}function yn(t,e){let i=t.state.doc.resolve(e);if(!($i||Ni)&&i.parent.inlineContent){let r=t.coordsAtPos(e);if(e>i.start()){let i=t.coordsAtPos(e-1);let n=(i.top+i.bottom)/2;if(n>r.top&&n<r.bottom&&Math.abs(i.left-r.left)>1)return i.left<r.left?"ltr":"rtl"}if(e<i.end()){let i=t.coordsAtPos(e+1);let n=(i.top+i.bottom)/2;if(n>r.top&&n<r.bottom&&Math.abs(i.left-r.left)>1)return i.left>r.left?"ltr":"rtl"}}let r=getComputedStyle(t.dom).direction;return r=="rtl"?"rtl":"ltr"}function Fn(t,e,i){let r=t.state.selection;if(r instanceof Ie&&!r.empty||i.indexOf("s")>-1)return false;if(Ri&&i.indexOf("m")>-1)return false;let{$from:n,$to:s}=r;if(!n.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let i=hn(t.state,e);if(i&&i instanceof je)return an(t,i)}if(!n.parent.inlineContent){let i=e<0?n:s;let l=r instanceof Le?Re.near(i,e):Re.findFrom(i,e);return l?an(t,l):false}return false}function En(t,e){if(!(t.state.selection instanceof Ie))return true;let{$head:i,$anchor:r,empty:n}=t.state.selection;if(!i.sameParent(r))return true;if(!n)return false;if(t.endOfTextblock(e>0?"forward":"backward"))return true;let s=!i.textOffset&&(e<0?i.nodeBefore:i.nodeAfter);if(s&&!s.isText){let r=t.state.tr;if(e<0)r.delete(i.pos-s.nodeSize,i.pos);else r.delete(i.pos,i.pos+s.nodeSize);t.dispatch(r);return true}return false}function xn(t,e,i){t.domObserver.stop();e.contentEditable=i;t.domObserver.start()}function Mn(t){if(!Bi||t.state.selection.$head.parentOffset>0)return false;let{focusNode:e,focusOffset:i}=t.domSelectionRange();if(e&&e.nodeType==1&&i==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let i=e.firstChild;xn(t,i,"true");setTimeout((()=>xn(t,i,"false")),20)}return false}function An(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 Cn(t,e){let i=e.keyCode,r=An(e);if(i==8||Ri&&i==72&&r=="c"){return En(t,-1)||mn(t,-1)}else if(i==46&&!e.shiftKey||Ri&&i==68&&r=="c"){return En(t,1)||mn(t,1)}else if(i==13||i==27){return true}else if(i==37||Ri&&i==66&&r=="c"){let e=i==37?yn(t,t.state.selection.from)=="ltr"?-1:1:-1;return cn(t,e,r)||mn(t,e)}else if(i==39||Ri&&i==70&&r=="c"){let e=i==39?yn(t,t.state.selection.from)=="ltr"?1:-1:1;return cn(t,e,r)||mn(t,e)}else if(i==38||Ri&&i==80&&r=="c"){return Fn(t,-1,r)||mn(t,-1)}else if(i==40||Ri&&i==78&&r=="c"){return Mn(t)||Fn(t,1,r)||mn(t,1)}else if(r==(Ri?"m":"c")&&(i==66||i==73||i==89||i==90)){return true}return false}function Sn(t,e){t.someProp("transformCopied",(i=>{e=i(e,t)}));let i=[],{content:r,openStart:n,openEnd:s}=e;while(n>1&&s>1&&r.childCount==1&&r.firstChild.childCount==1){n--;s--;let t=r.firstChild;i.push(t.type.name,t.attrs!=t.type.defaultAttrs?t.attrs:null);r=t.content}let l=t.someProp("clipboardSerializer")||vt.fromSchema(t.state.schema);let u=Pn(),o=u.createElement("div");o.appendChild(l.serializeFragment(r,{document:u}));let f=o.firstChild,h,a=0;while(f&&f.nodeType==1&&(h=Tn[f.nodeName.toLowerCase()])){for(let t=h.length-1;t>=0;t--){let e=u.createElement(h[t]);while(o.firstChild)e.appendChild(o.firstChild);o.appendChild(e);a++}f=o.firstChild}if(f&&f.nodeType==1)f.setAttribute("data-pm-slice",`${n} ${s}${a?` -${a}`:""} ${JSON.stringify(i)}`);let c=t.someProp("clipboardTextSerializer",(i=>i(e,t)))||e.content.textBetween(0,e.content.size,"\n\n");return{dom:o,text:c}}function On(t,e,i,r,n){let s=n.parent.type.spec.code;let l,u;if(!i&&!e)return null;let o=e&&(r||s||!i);if(o){t.someProp("transformPastedText",(i=>{e=i(e,s||r,t)}));if(s)return e?new m(f.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):m.empty;let i=t.someProp("clipboardTextParser",(i=>i(e,n,r,t)));if(i){u=i}else{let i=n.marks();let{schema:r}=t.state,s=vt.fromSchema(r);l=document.createElement("div");e.split(/(?:\r\n?|\n)+/).forEach((t=>{let e=l.appendChild(document.createElement("p"));if(t)e.appendChild(s.serializeNode(r.text(t,i)))}))}}else{t.someProp("transformPastedHTML",(e=>{i=e(i,t)}));l=jn(i);if(Ti)Jn(l)}let h=l&&l.querySelector("[data-pm-slice]");let a=h&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(h.getAttribute("data-pm-slice")||"");if(a&&a[3])for(let t=+a[3];t>0;t--){let t=l.firstChild;while(t&&t.nodeType!=1)t=t.nextSibling;if(!t)break;l=t}if(!u){let e=t.someProp("clipboardParser")||t.someProp("domParser")||st.fromSchema(t.state.schema);u=e.parseSlice(l,{preserveWhitespace:!!(o||a),context:n,ruleFromNode(t){if(t.nodeName=="BR"&&!t.nextSibling&&t.parentNode&&!$n.test(t.parentNode.nodeName))return{ignore:true};return null}})}if(a){u=Ln(zn(u,+a[1],+a[2]),a[4])}else{u=m.maxOpen(_n(u.content,n),true);if(u.openStart||u.openEnd){let t=0,e=0;for(let e=u.content.firstChild;t<u.openStart&&!e.type.spec.isolating;t++,e=e.firstChild){}for(let t=u.content.lastChild;e<u.openEnd&&!t.type.spec.isolating;e++,t=t.lastChild){}u=zn(u,t,e)}}t.someProp("transformPasted",(e=>{u=e(u,t)}));return u}const $n=/^(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 _n(t,e){if(t.childCount<2)return t;for(let i=e.depth;i>=0;i--){let r=e.node(i);let n=r.contentMatchAt(e.index(i));let s,l=[];t.forEach((t=>{if(!l)return;let e=n.findWrapping(t.type),i;if(!e)return l=null;if(i=l.length&&s.length&&qn(e,s,t,l[l.length-1],0)){l[l.length-1]=i}else{if(l.length)l[l.length-1]=Rn(l[l.length-1],s.length);let i=Bn(t,e);l.push(i);n=n.matchType(i.type);s=e}}));if(l)return f.from(l)}return t}function Bn(t,e,i=0){for(let r=e.length-1;r>=i;r--)t=e[r].create(null,f.from(t));return t}function qn(t,e,i,r,n){if(n<t.length&&n<e.length&&t[n]==e[n]){let s=qn(t,e,i,r.lastChild,n+1);if(s)return r.copy(r.content.replaceChild(r.childCount-1,s));let l=r.contentMatchAt(r.childCount);if(l.matchType(n==t.length-1?i.type:t[n+1]))return r.copy(r.content.append(f.from(Bn(i,t,n+1))))}}function Rn(t,e){if(e==0)return t;let i=t.content.replaceChild(t.childCount-1,Rn(t.lastChild,e-1));let r=t.contentMatchAt(t.childCount).fillBefore(f.empty,true);return t.copy(i.append(r))}function Nn(t,e,i,r,n,s){let l=e<0?t.firstChild:t.lastChild,u=l.content;if(t.childCount>1)s=0;if(n<r-1)u=Nn(u,e,i,r,n+1,s);if(n>=i)u=e<0?l.contentMatchAt(0).fillBefore(u,s<=n).append(u):u.append(l.contentMatchAt(l.childCount).fillBefore(f.empty,true));return t.replaceChild(e<0?0:t.childCount-1,l.copy(u))}function zn(t,e,i){if(e<t.openStart)t=new m(Nn(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd);if(i<t.openEnd)t=new m(Nn(t.content,1,i,t.openEnd,0,0),t.openStart,i);return t}const Tn={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 In=null;function Pn(){return In||(In=document.implementation.createHTMLDocument("title"))}function jn(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);if(e)t=t.slice(e[0].length);let i=Pn().createElement("div");let r=/<([a-z][^>\s]+)/i.exec(t),n;if(n=r&&Tn[r[1].toLowerCase()])t=n.map((t=>"<"+t+">")).join("")+t+n.map((t=>"</"+t+">")).reverse().join("");i.innerHTML=t;if(n)for(let t=0;t<n.length;t++)i=i.querySelector(n[t])||i;return i}function Jn(t){let e=t.querySelectorAll($i?"span:not([class]):not([style])":"span.Apple-converted-space");for(let i=0;i<e.length;i++){let r=e[i];if(r.childNodes.length==1&&r.textContent==" "&&r.parentNode)r.parentNode.replaceChild(t.ownerDocument.createTextNode(" "),r)}}function Ln(t,e){if(!t.size)return t;let i=t.content.firstChild.type.schema,r;try{r=JSON.parse(e)}catch(e){return t}let{content:n,openStart:s,openEnd:l}=t;for(let t=r.length-2;t>=0;t-=2){let e=i.nodes[r[t]];if(!e||e.hasRequiredAttrs())break;n=f.from(e.create(r[t+1],n));s++;l++}return new m(n,s,l)}const Wn={};const Un={};const Zn={touchstart:true,touchmove:true};class Hn{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 Kn(t){for(let e in Wn){let i=Wn[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{if(Qn(t,e)&&!Yn(t,e)&&(t.editable||!(e.type in Un)))i(t,e)},Zn[e]?{passive:true}:undefined)}if(Bi)t.dom.addEventListener("input",(()=>null));Xn(t)}function Vn(t,e){t.input.lastSelectionOrigin=e;t.input.lastSelectionTime=Date.now()}function Gn(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 Xn(t){t.someProp("handleDOMEvents",(e=>{for(let i in e)if(!t.input.eventHandlers[i])t.dom.addEventListener(i,t.input.eventHandlers[i]=e=>Yn(t,e))}))}function Yn(t,e){return t.someProp("handleDOMEvents",(i=>{let r=i[e.type];return r?r(t,e)||e.defaultPrevented:false}))}function Qn(t,e){if(!e.bubbles)return true;if(e.defaultPrevented)return false;for(let i=e.target;i!=t.dom;i=i.parentNode)if(!i||i.nodeType==11||i.pmViewDesc&&i.pmViewDesc.stopEvent(e))return false;return true}function ts(t,e){if(!Yn(t,e)&&Wn[e.type]&&(t.editable||!(e.type in Un)))Wn[e.type](t,e)}Un.keydown=(t,e)=>{let i=e;t.input.shiftKey=i.keyCode==16||i.shiftKey;if(ms(t,i))return;t.input.lastKeyCode=i.keyCode;t.input.lastKeyCodeTime=Date.now();if(zi&&$i&&i.keyCode==13)return;if(i.keyCode!=229)t.domObserver.forceFlush();if(qi&&i.keyCode==13&&!i.ctrlKey&&!i.altKey&&!i.metaKey){let e=Date.now();t.input.lastIOSEnter=e;t.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{if(t.input.lastIOSEnter==e){t.someProp("handleKeyDown",(e=>e(t,bi(13,"Enter"))));t.input.lastIOSEnter=0}}),200)}else if(t.someProp("handleKeyDown",(e=>e(t,i)))||Cn(t,i)){i.preventDefault()}else{Vn(t,"key")}};Un.keyup=(t,e)=>{if(e.keyCode==16)t.input.shiftKey=false};Un.keypress=(t,e)=>{let i=e;if(ms(t,i)||!i.charCode||i.ctrlKey&&!i.altKey||Ri&&i.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,i)))){i.preventDefault();return}let r=t.state.selection;if(!(r instanceof Ie)||!r.$from.sameParent(r.$to)){let e=String.fromCharCode(i.charCode);if(!/[\r\n]/.test(e)&&!t.someProp("handleTextInput",(i=>i(t,r.$from.pos,r.$to.pos,e))))t.dispatch(t.state.tr.insertText(e).scrollIntoView());i.preventDefault()}};function es(t){return{left:t.clientX,top:t.clientY}}function is(t,e){let i=e.x-t.clientX,r=e.y-t.clientY;return i*i+r*r<100}function rs(t,e,i,r,n){if(r==-1)return false;let s=t.state.doc.resolve(r);for(let r=s.depth+1;r>0;r--){if(t.someProp(e,(e=>r>s.depth?e(t,i,s.nodeAfter,s.before(r),n,true):e(t,i,s.node(r),s.before(r),n,false))))return true}return false}function ns(t,e,i){if(!t.focused)t.focus();let r=t.state.tr.setSelection(e);if(i=="pointer")r.setMeta("pointer",true);t.dispatch(r)}function ss(t,e){if(e==-1)return false;let i=t.state.doc.resolve(e),r=i.nodeAfter;if(r&&r.isAtom&&je.isSelectable(r)){ns(t,new je(i),"pointer");return true}return false}function ls(t,e){if(e==-1)return false;let i=t.state.selection,r,n;if(i instanceof je)r=i.node;let s=t.state.doc.resolve(e);for(let t=s.depth+1;t>0;t--){let e=t>s.depth?s.nodeAfter:s.node(t);if(je.isSelectable(e)){if(r&&i.$from.depth>0&&t>=i.$from.depth&&s.before(i.$from.depth+1)==i.$from.pos)n=s.before(i.$from.depth);else n=s.before(t);break}}if(n!=null){ns(t,je.create(t.state.doc,n),"pointer");return true}else{return false}}function us(t,e,i,r,n){return rs(t,"handleClickOn",e,i,r)||t.someProp("handleClick",(i=>i(t,e,r)))||(n?ls(t,i):ss(t,i))}function fs(t,e,i,r){return rs(t,"handleDoubleClickOn",e,i,r)||t.someProp("handleDoubleClick",(i=>i(t,e,r)))}function hs(t,e,i,r){return rs(t,"handleTripleClickOn",e,i,r)||t.someProp("handleTripleClick",(i=>i(t,e,r)))||as(t,i,r)}function as(t,e,i){if(i.button!=0)return false;let r=t.state.doc;if(e==-1){if(r.inlineContent){ns(t,Ie.create(r,0,r.content.size),"pointer");return true}return false}let n=r.resolve(e);for(let e=n.depth+1;e>0;e--){let i=e>n.depth?n.nodeAfter:n.node(e);let s=n.before(e);if(i.inlineContent)ns(t,Ie.create(r,s+1,s+1+i.content.size),"pointer");else if(je.isSelectable(i))ns(t,je.create(r,s),"pointer");else continue;return true}}function cs(t){return ks(t)}const ds=Ri?"metaKey":"ctrlKey";Wn.mousedown=(t,e)=>{let i=e;t.input.shiftKey=i.shiftKey;let r=cs(t);let n=Date.now(),s="singleClick";if(n-t.input.lastClick.time<500&&is(i,t.input.lastClick)&&!i[ds]){if(t.input.lastClick.type=="singleClick")s="doubleClick";else if(t.input.lastClick.type=="doubleClick")s="tripleClick"}t.input.lastClick={time:n,x:i.clientX,y:i.clientY,type:s};let l=t.posAtCoords(es(i));if(!l)return;if(s=="singleClick"){if(t.input.mouseDown)t.input.mouseDown.done();t.input.mouseDown=new ps(t,l,i,!!r)}else if((s=="doubleClick"?fs:hs)(t,l.pos,l.inside,i)){i.preventDefault()}else{Vn(t,"pointer")}};class ps{constructor(t,e,i,r){this.view=t;this.pos=e;this.event=i;this.flushed=r;this.delayedSelectionSync=false;this.mightDrag=null;this.startDoc=t.state.doc;this.selectNode=!!i[ds];this.allowDefault=i.shiftKey;let n,s;if(e.inside>-1){n=t.state.doc.nodeAt(e.inside);s=e.inside}else{let i=t.state.doc.resolve(e.pos);n=i.parent;s=i.depth?i.before():0}const l=r?null:i.target;const u=l?t.docView.nearestDesc(l,true):null;this.target=u?u.dom:null;let{selection:o}=t.state;if(i.button==0&&n.type.spec.draggable&&n.type.spec.selectable!==false||o instanceof je&&o.from<=s&&o.to>s)this.mightDrag={node:n,pos:s,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&Si&&!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));Vn(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((()=>Gr(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(es(t));this.updateAllowDefault(t);if(this.allowDefault||!e){Vn(this.view,"pointer")}else if(us(this.view,e.pos,e.inside,t,this.selectNode)){t.preventDefault()}else if(t.button==0&&(this.flushed||Bi&&this.mightDrag&&!this.mightDrag.node.isAtom||$i&&!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)){ns(this.view,Re.near(this.view.state.doc.resolve(e.pos)),"pointer");t.preventDefault()}else{Vn(this.view,"pointer")}}move(t){this.updateAllowDefault(t);Vn(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}}Wn.touchstart=t=>{t.input.lastTouch=Date.now();cs(t);Vn(t,"pointer")};Wn.touchmove=t=>{t.input.lastTouch=Date.now();Vn(t,"pointer")};Wn.contextmenu=t=>cs(t);function ms(t,e){if(t.composing)return true;if(Bi&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500){t.input.compositionEndedAt=-2e8;return true}return false}const ws=zi?5e3:-1;Un.compositionstart=Un.compositionupdate=t=>{if(!t.composing){t.domObserver.flush();let{state:e}=t,i=e.selection.$from;if(e.selection.empty&&(e.storedMarks||!i.textOffset&&i.parentOffset&&i.nodeBefore.marks.some((t=>t.type.spec.inclusive===false)))){t.markCursor=t.state.storedMarks||i.marks();ks(t,true);t.markCursor=null}else{ks(t);if(Si&&e.selection.empty&&i.parentOffset&&!i.textOffset&&i.nodeBefore.marks.length){let e=t.domSelectionRange();for(let i=e.focusNode,r=e.focusOffset;i&&i.nodeType==1&&r!=0;){let e=r<0?i.lastChild:i.childNodes[r-1];if(!e)break;if(e.nodeType==3){t.domSelection().collapse(e,e.nodeValue.length);break}else{i=e;r=-1}}}}t.input.composing=true}gs(t,ws)};Un.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++;gs(t,20)}};function gs(t,e){clearTimeout(t.input.composingTimeout);if(e>-1)t.input.composingTimeout=setTimeout((()=>ks(t)),e)}function bs(t){if(t.composing){t.input.composing=false;t.input.compositionEndedAt=Ds()}while(t.input.compositionNodes.length>0)t.input.compositionNodes.pop().markParentsDirty()}function Ds(){let t=document.createEvent("Event");t.initEvent("event",true,true);return t.timeStamp}function ks(t,e=false){if(zi&&t.domObserver.flushingSoon>=0)return;t.domObserver.forceFlush();bs(t);if(e||t.docView&&t.docView.dirty){let e=Kr(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 vs(t,e){if(!t.dom.parentNode)return;let i=t.dom.parentNode.appendChild(document.createElement("div"));i.appendChild(e);i.style.cssText="position: fixed; left: -10000px; top: 10px";let r=getSelection(),n=document.createRange();n.selectNodeContents(e);t.dom.blur();r.removeAllRanges();r.addRange(n);setTimeout((()=>{if(i.parentNode)i.parentNode.removeChild(i);t.focus()}),50)}const ys=Ai&&Ci<15||qi&&Ii<604;Wn.copy=Un.cut=(t,e)=>{let i=e;let r=t.state.selection,n=i.type=="cut";if(r.empty)return;let s=ys?null:i.clipboardData;let l=r.content(),{dom:u,text:o}=Sn(t,l);if(s){i.preventDefault();s.clearData();s.setData("text/html",u.innerHTML);s.setData("text/plain",o)}else{vs(t,u)}if(n)t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function Fs(t){return t.openStart==0&&t.openEnd==0&&t.content.childCount==1?t.content.firstChild:null}function Es(t,e){if(!t.dom.parentNode)return;let i=t.input.shiftKey||t.state.selection.$from.parent.type.spec.code;let r=t.dom.parentNode.appendChild(document.createElement(i?"textarea":"div"));if(!i)r.contentEditable="true";r.style.cssText="position: fixed; left: -10000px; top: 10px";r.focus();let n=t.input.shiftKey&&t.input.lastKeyCode!=45;setTimeout((()=>{t.focus();if(r.parentNode)r.parentNode.removeChild(r);if(i)xs(t,r.value,null,n,e);else xs(t,r.textContent,r.innerHTML,n,e)}),50)}function xs(t,e,i,r,n){let s=On(t,e,i,r,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,n,s||m.empty))))return true;if(!s)return false;let l=Fs(s);let u=l?t.state.tr.replaceSelectionWith(l,r):t.state.tr.replaceSelection(s);t.dispatch(u.scrollIntoView().setMeta("paste",true).setMeta("uiEvent","paste"));return true}function Ms(t){let e=t.getData("text/plain")||t.getData("Text");if(e)return e;let i=t.getData("text/uri-list");return i?i.replace(/\r?\n/g," "):""}Un.paste=(t,e)=>{let i=e;if(t.composing&&!zi)return;let r=ys?null:i.clipboardData;let n=t.input.shiftKey&&t.input.lastKeyCode!=45;if(r&&xs(t,Ms(r),r.getData("text/html"),n,i))i.preventDefault();else Es(t,i)};class As{constructor(t,e,i){this.slice=t;this.move=e;this.node=i}}const Cs=Ri?"altKey":"ctrlKey";Wn.dragstart=(t,e)=>{let i=e;let r=t.input.mouseDown;if(r)r.done();if(!i.dataTransfer)return;let n=t.state.selection;let s=n.empty?null:t.posAtCoords(es(i));let l;if(s&&s.pos>=n.from&&s.pos<=(n instanceof je?n.to-1:n.to));else if(r&&r.mightDrag){l=je.create(t.state.doc,r.mightDrag.pos)}else if(i.target&&i.target.nodeType==1){let e=t.docView.nearestDesc(i.target,true);if(e&&e.node.type.spec.draggable&&e!=t.docView)l=je.create(t.state.doc,e.posBefore)}let u=(l||t.state.selection).content(),{dom:o,text:f}=Sn(t,u);i.dataTransfer.clearData();i.dataTransfer.setData(ys?"Text":"text/html",o.innerHTML);i.dataTransfer.effectAllowed="copyMove";if(!ys)i.dataTransfer.setData("text/plain",f);t.dragging=new As(u,!i[Cs],l)};Wn.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{if(t.dragging==e)t.dragging=null}),50)};Un.dragover=Un.dragenter=(t,e)=>e.preventDefault();Un.drop=(t,e)=>{let i=e;let r=t.dragging;t.dragging=null;if(!i.dataTransfer)return;let n=t.posAtCoords(es(i));if(!n)return;let s=t.state.doc.resolve(n.pos);let l=r&&r.slice;if(l){t.someProp("transformPasted",(e=>{l=e(l,t)}))}else{l=On(t,Ms(i.dataTransfer),ys?null:i.dataTransfer.getData("text/html"),false,s)}let u=!!(r&&!i[Cs]);if(t.someProp("handleDrop",(e=>e(t,i,l||m.empty,u)))){i.preventDefault();return}if(!l)return;i.preventDefault();let o=l?pe(t.state.doc,s.pos,l):s.pos;if(o==null)o=s.pos;let f=t.state.tr;if(u){let{node:t}=r;if(t)t.replace(f);else f.deleteSelection()}let h=f.mapping.map(o);let a=l.openStart==0&&l.openEnd==0&&l.content.childCount==1;let c=f.doc;if(a)f.replaceRangeWith(h,h,l.content.firstChild);else f.replaceRange(h,h,l);if(f.doc.eq(c))return;let d=f.doc.resolve(h);if(a&&je.isSelectable(l.content.firstChild)&&d.nodeAfter&&d.nodeAfter.sameMarkup(l.content.firstChild)){f.setSelection(new je(d))}else{let e=f.mapping.map(o);f.mapping.maps[f.mapping.maps.length-1].forEach(((t,i,r,n)=>e=n));f.setSelection(ln(t,d,f.doc.resolve(e)))}t.focus();t.dispatch(f.setMeta("uiEvent","drop"))};Wn.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()))Gr(t)}),20)}};Wn.blur=(t,e)=>{let i=e;if(t.focused){t.domObserver.stop();t.dom.classList.remove("ProseMirror-focused");t.domObserver.start();if(i.relatedTarget&&t.dom.contains(i.relatedTarget))t.domObserver.currentSelection.clear();t.focused=false}};Wn.beforeinput=(t,e)=>{let i=e;if($i&&zi&&i.inputType=="deleteContentBackward"){t.domObserver.flushSoon();let{domChangeCount:e}=t.input;setTimeout((()=>{if(t.input.domChangeCount!=e)return;t.dom.blur();t.focus();if(t.someProp("handleKeyDown",(e=>e(t,bi(8,"Backspace")))))return;let{$cursor:i}=t.state.selection;if(i&&i.pos>0)t.dispatch(t.state.tr.delete(i.pos-1,i.pos).scrollIntoView())}),50)}};for(let t in Un)Wn[t]=Un[t];function Ss(t,e){if(t==e)return true;for(let i in t)if(t[i]!==e[i])return false;for(let i in e)if(!(i in t))return false;return true}class Os{constructor(t,e){this.toDOM=t;this.spec=e||Rs;this.side=this.spec.side||0}map(t,e,i,r){let{pos:n,deleted:s}=t.mapResult(e.from+r,this.side<0?-1:1);return s?null:new Bs(n-i,n-i,this)}valid(){return true}eq(t){return this==t||t instanceof Os&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&Ss(this.spec,t.spec))}destroy(t){if(this.spec.destroy)this.spec.destroy(t)}}class $s{constructor(t,e){this.attrs=t;this.spec=e||Rs}map(t,e,i,r){let n=t.map(e.from+r,this.spec.inclusiveStart?-1:1)-i;let s=t.map(e.to+r,this.spec.inclusiveEnd?1:-1)-i;return n>=s?null:new Bs(n,s,this)}valid(t,e){return e.from<e.to}eq(t){return this==t||t instanceof $s&&Ss(this.attrs,t.attrs)&&Ss(this.spec,t.spec)}static is(t){return t.type instanceof $s}destroy(){}}class _s{constructor(t,e){this.attrs=t;this.spec=e||Rs}map(t,e,i,r){let n=t.mapResult(e.from+r,1);if(n.deleted)return null;let s=t.mapResult(e.to+r,-1);if(s.deleted||s.pos<=n.pos)return null;return new Bs(n.pos-i,s.pos-i,this)}valid(t,e){let{index:i,offset:r}=t.content.findIndex(e.from),n;return r==e.from&&!(n=t.child(i)).isText&&r+n.nodeSize==e.to}eq(t){return this==t||t instanceof _s&&Ss(this.attrs,t.attrs)&&Ss(this.spec,t.spec)}destroy(){}}class Bs{constructor(t,e,i){this.from=t;this.to=e;this.type=i}copy(t,e){return new Bs(t,e,this.type)}eq(t,e=0){return this.type.eq(t.type)&&this.from+e==t.from&&this.to+e==t.to}map(t,e,i){return this.type.map(t,this,e,i)}static widget(t,e,i){return new Bs(t,t,new Os(e,i))}static inline(t,e,i,r){return new Bs(t,e,new $s(i,r))}static node(t,e,i,r){return new Bs(t,e,new _s(i,r))}get spec(){return this.type.spec}get inline(){return this.type instanceof $s}get widget(){return this.type instanceof Os}}const qs=[],Rs={};class Ns{constructor(t,e){this.local=t.length?t:qs;this.children=e.length?e:qs}static create(t,e){return e.length?Ws(e,t,0,Rs):zs}find(t,e,i){let r=[];this.findInner(t==null?0:t,e==null?1e9:e,r,0,i);return r}findInner(t,e,i,r,n){for(let s=0;s<this.local.length;s++){let l=this.local[s];if(l.from<=e&&l.to>=t&&(!n||n(l.spec)))i.push(l.copy(l.from+r,l.to+r))}for(let s=0;s<this.children.length;s+=3){if(this.children[s]<e&&this.children[s+1]>t){let l=this.children[s]+1;this.children[s+2].findInner(t-l,e-l,i,r+l,n)}}}map(t,e,i){if(this==zs||t.maps.length==0)return this;return this.mapInner(t,e,0,0,i||Rs)}mapInner(t,e,i,r,n){let s;for(let l=0;l<this.local.length;l++){let u=this.local[l].map(t,i,r);if(u&&u.type.valid(e,u))(s||(s=[])).push(u);else if(n.onRemove)n.onRemove(this.local[l].spec)}if(this.children.length)return Is(this.children,s||[],t,e,i,r,n);else return s?new Ns(s.sort(Us),qs):zs}add(t,e){if(!e.length)return this;if(this==zs)return Ns.create(t,e);return this.addInner(t,e,0)}addInner(t,e,i){let r,n=0;t.forEach(((t,s)=>{let l=s+i,u;if(!(u=Js(e,t,l)))return;if(!r)r=this.children.slice();while(n<r.length&&r[n]<s)n+=3;if(r[n]==s)r[n+2]=r[n+2].addInner(t,u,l+1);else r.splice(n,0,s,s+t.nodeSize,Ws(u,t,l+1,Rs));n+=3}));let s=Ps(n?Ls(e):e,-i);for(let e=0;e<s.length;e++)if(!s[e].type.valid(t,s[e]))s.splice(e--,1);return new Ns(s.length?this.local.concat(s).sort(Us):this.local,r||this.children)}remove(t){if(t.length==0||this==zs)return this;return this.removeInner(t,0)}removeInner(t,e){let i=this.children,r=this.local;for(let r=0;r<i.length;r+=3){let n;let s=i[r]+e,l=i[r+1]+e;for(let e=0,i;e<t.length;e++)if(i=t[e]){if(i.from>s&&i.to<l){t[e]=null;(n||(n=[])).push(i)}}if(!n)continue;if(i==this.children)i=this.children.slice();let u=i[r+2].removeInner(n,s+1);if(u!=zs){i[r+2]=u}else{i.splice(r,3);r-=3}}if(r.length)for(let i=0,n;i<t.length;i++)if(n=t[i]){for(let t=0;t<r.length;t++)if(r[t].eq(n,e)){if(r==this.local)r=this.local.slice();r.splice(t--,1)}}if(i==this.children&&r==this.local)return this;return r.length||i.length?new Ns(r,i):zs}forChild(t,e){if(this==zs)return this;if(e.isLeaf)return Ns.empty;let i,r;for(let e=0;e<this.children.length;e+=3)if(this.children[e]>=t){if(this.children[e]==t)i=this.children[e+2];break}let n=t+1,s=n+e.content.size;for(let t=0;t<this.local.length;t++){let e=this.local[t];if(e.from<s&&e.to>n&&e.type instanceof $s){let t=Math.max(n,e.from)-n,i=Math.min(s,e.to)-n;if(t<i)(r||(r=[])).push(e.copy(t,i))}}if(r){let t=new Ns(r.sort(Us),qs);return i?new Ts([t,i]):t}return i||zs}eq(t){if(this==t)return true;if(!(t instanceof Ns)||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 Zs(this.localsInner(t))}localsInner(t){if(this==zs)return qs;if(t.inlineContent||!this.local.some($s.is))return this.local;let e=[];for(let t=0;t<this.local.length;t++){if(!(this.local[t].type instanceof $s))e.push(this.local[t])}return e}}Ns.empty=new Ns([],[]);Ns.removeOverlap=Zs;const zs=Ns.empty;class Ts{constructor(t){this.members=t}map(t,e){const i=this.members.map((i=>i.map(t,e,Rs)));return Ts.from(i)}forChild(t,e){if(e.isLeaf)return Ns.empty;let i=[];for(let r=0;r<this.members.length;r++){let n=this.members[r].forChild(t,e);if(n==zs)continue;if(n instanceof Ts)i=i.concat(n.members);else i.push(n)}return Ts.from(i)}eq(t){if(!(t instanceof Ts)||t.members.length!=this.members.length)return false;for(let e=0;e<this.members.length;e++)if(!this.members[e].eq(t.members[e]))return false;return true}locals(t){let e,i=true;for(let r=0;r<this.members.length;r++){let n=this.members[r].localsInner(t);if(!n.length)continue;if(!e){e=n}else{if(i){e=e.slice();i=false}for(let t=0;t<n.length;t++)e.push(n[t])}}return e?Zs(i?e:e.sort(Us)):qs}static from(t){switch(t.length){case 0:return zs;case 1:return t[0];default:return new Ts(t.every((t=>t instanceof Ns))?t:t.reduce(((t,e)=>t.concat(e instanceof Ns?e:e.members)),[]))}}}function Is(t,e,i,r,n,s,l){let u=t.slice();for(let t=0,e=s;t<i.maps.length;t++){let r=0;i.maps[t].forEach(((t,i,n,s)=>{let l=s-n-(i-t);for(let n=0;n<u.length;n+=3){let s=u[n+1];if(s<0||t>s+e-r)continue;let o=u[n]+e-r;if(i>=o){u[n+1]=t<=o?-2:-1}else if(t>=e&&l){u[n]+=l;u[n+1]+=l}}r+=l}));e=i.maps[t].map(e,-1)}let o=false;for(let e=0;e<u.length;e+=3)if(u[e+1]<0){if(u[e+1]==-2){o=true;u[e+1]=-1;continue}let f=i.map(t[e]+s),h=f-n;if(h<0||h>=r.content.size){o=true;continue}let a=i.map(t[e+1]+s,-1),c=a-n;let{index:d,offset:p}=r.content.findIndex(h);let m=r.maybeChild(d);if(m&&p==h&&p+m.nodeSize==c){let r=u[e+2].mapInner(i,m,f+1,t[e]+s+1,l);if(r!=zs){u[e]=h;u[e+1]=c;u[e+2]=r}else{u[e+1]=-2;o=true}}else{o=true}}if(o){let o=js(u,t,e,i,n,s,l);let f=Ws(o,r,0,l);e=f.local;for(let t=0;t<u.length;t+=3)if(u[t+1]<0){u.splice(t,3);t-=3}for(let t=0,e=0;t<f.children.length;t+=3){let i=f.children[t];while(e<u.length&&u[e]<i)e+=3;u.splice(e,0,f.children[t],f.children[t+1],f.children[t+2])}}return new Ns(e.sort(Us),u)}function Ps(t,e){if(!e||!t.length)return t;let i=[];for(let r=0;r<t.length;r++){let n=t[r];i.push(new Bs(n.from+e,n.to+e,n.type))}return i}function js(t,e,i,r,n,s,l){function u(t,e){for(let s=0;s<t.local.length;s++){let u=t.local[s].map(r,n,e);if(u)i.push(u);else if(l.onRemove)l.onRemove(t.local[s].spec)}for(let i=0;i<t.children.length;i+=3)u(t.children[i+2],t.children[i]+e+1)}for(let i=0;i<t.length;i+=3)if(t[i+1]==-1)u(t[i+2],e[i]+s+1);return i}function Js(t,e,i){if(e.isLeaf)return null;let r=i+e.nodeSize,n=null;for(let e=0,s;e<t.length;e++){if((s=t[e])&&s.from>i&&s.to<r){(n||(n=[])).push(s);t[e]=null}}return n}function Ls(t){let e=[];for(let i=0;i<t.length;i++)if(t[i]!=null)e.push(t[i]);return e}function Ws(t,e,i,r){let n=[],s=false;e.forEach(((e,l)=>{let u=Js(t,e,l+i);if(u){s=true;let t=Ws(u,e,i+l+1,r);if(t!=zs)n.push(l,l+e.nodeSize,t)}}));let l=Ps(s?Ls(t):t,-i).sort(Us);for(let t=0;t<l.length;t++)if(!l[t].type.valid(e,l[t])){if(r.onRemove)r.onRemove(l[t].spec);l.splice(t--,1)}return l.length||n.length?new Ns(l,n):zs}function Us(t,e){return t.from-e.from||t.to-e.to}function Zs(t){let e=t;for(let i=0;i<e.length-1;i++){let r=e[i];if(r.from!=r.to)for(let n=i+1;n<e.length;n++){let s=e[n];if(s.from==r.from){if(s.to!=r.to){if(e==t)e=t.slice();e[n]=s.copy(s.from,r.to);Hs(e,n+1,s.copy(r.to,s.to))}continue}else{if(s.from<r.to){if(e==t)e=t.slice();e[i]=r.copy(r.from,s.from);Hs(e,n,r.copy(s.from,r.to))}break}}}return e}function Hs(t,e,i){while(e<t.length&&Us(i,t[e])>0)e++;t.splice(e,0,i)}function Ks(t){let e=[];t.someProp("decorations",(i=>{let r=i(t.state);if(r&&r!=zs)e.push(r)}));if(t.cursorWrapper)e.push(Ns.create(t.state.doc,[t.cursorWrapper.deco]));return Ts.from(e)}const Vs={childList:true,characterData:true,characterDataOldValue:true,attributes:true,attributeOldValue:true,subtree:true};const Gs=Ai&&Ci<=11;class Xs{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 Ys{constructor(t,e){this.view=t;this.handleDOMChange=e;this.queue=[];this.flushingSoon=-1;this.observer=null;this.currentSelection=new Xs;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(Ai&&Ci<=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(Gs){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,Vs)}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(!un(this.view))return;if(this.suppressingSelectionUpdates)return Gr(this.view);if(Ai&&Ci<=11&&!this.view.state.selection.empty){let t=this.view.domSelectionRange();if(t.focusNode&&ai(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset))return this.flushSoon()}this.flush()}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(t){if(!t.focusNode)return true;let e=new Set,i;for(let i=t.focusNode;i;i=oi(i))e.add(i);for(let r=t.anchorNode;r;r=oi(r))if(e.has(r)){i=r;break}let r=i&&this.view.docView.nearestDesc(i);if(r&&r.ignoreMutation({type:"selection",target:i.nodeType==3?i.parentNode:i})){this.setCurSelection();return true}}pendingRecords(){if(this.observer)for(let t of this.observer.takeRecords())this.queue.push(t);return this.queue}flush(){let{view:t}=this;if(!t.docView||this.flushingSoon>-1)return;let e=this.pendingRecords();if(e.length)this.queue=[];let i=t.domSelectionRange();let r=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(i)&&un(t)&&!this.ignoreSelectionChange(i);let n=-1,s=-1,l=false,u=[];if(t.editable){for(let t=0;t<e.length;t++){let i=this.registerMutation(e[t],u);if(i){n=n<0?i.from:Math.min(i.from,n);s=s<0?i.to:Math.max(i.to,s);if(i.typeOver)l=true}}}if(Si&&u.length>1){let t=u.filter((t=>t.nodeName=="BR"));if(t.length==2){let e=t[0],i=t[1];if(e.parentNode&&e.parentNode.parentNode==i.parentNode)i.remove();else e.remove()}}let o=null;if(n<0&&r&&t.input.lastFocus>Date.now()-200&&Math.max(t.input.lastTouch,t.input.lastClick.time)<Date.now()-300&&gi(i)&&(o=Kr(t))&&o.eq(Re.near(t.state.doc.resolve(0),1))){t.input.lastFocus=0;Gr(t);this.currentSelection.set(i);t.scrollToSelection()}else if(n>-1||r){if(n>-1){t.docView.markDirty(n,s);el(t)}this.handleDOMChange(n,s,l,u);if(t.docView&&t.docView.dirty)t.updateState(t.state);else if(!this.currentSelection.eq(i))Gr(t);this.currentSelection.set(i)}}registerMutation(t,e){if(e.indexOf(t.target)>-1)return null;let i=this.view.docView.nearestDesc(t.target);if(t.type=="attributes"&&(i==this.view.docView||t.attributeName=="contenteditable"||t.attributeName=="style"&&!t.oldValue&&!t.target.getAttribute("style")))return null;if(!i||i.ignoreMutation(t))return null;if(t.type=="childList"){for(let i=0;i<t.addedNodes.length;i++)e.push(t.addedNodes[i]);if(i.contentDOM&&i.contentDOM!=i.dom&&!i.contentDOM.contains(t.target))return{from:i.posBefore,to:i.posAfter};let r=t.previousSibling,n=t.nextSibling;if(Ai&&Ci<=11&&t.addedNodes.length){for(let e=0;e<t.addedNodes.length;e++){let{previousSibling:i,nextSibling:s}=t.addedNodes[e];if(!i||Array.prototype.indexOf.call(t.addedNodes,i)<0)r=i;if(!s||Array.prototype.indexOf.call(t.addedNodes,s)<0)n=s}}let s=r&&r.parentNode==t.target?ui(r)+1:0;let l=i.localPosFromDOM(t.target,s,-1);let u=n&&n.parentNode==t.target?ui(n):t.target.childNodes.length;let o=i.localPosFromDOM(t.target,u,1);return{from:l,to:o}}else if(t.type=="attributes"){return{from:i.posAtStart-i.border,to:i.posAtEnd+i.border}}else{return{from:i.posAtStart,to:i.posAtEnd,typeOver:t.target.nodeValue==t.oldValue}}}}let Qs=new WeakMap;let tl=false;function el(t){if(Qs.has(t))return;Qs.set(t,null);if(["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1){t.requiresGeckoHackNode=Si;if(tl)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.");tl=true}}function il(t){let e;function i(t){t.preventDefault();t.stopImmediatePropagation();e=t.getTargetRanges()[0]}t.dom.addEventListener("beforeinput",i,true);document.execCommand("indent");t.dom.removeEventListener("beforeinput",i,true);let r=e.startContainer,n=e.startOffset;let s=e.endContainer,l=e.endOffset;let u=t.domAtPos(t.state.selection.anchor);if(ai(u.node,u.offset,s,l))[r,n,s,l]=[s,l,r,n];return{anchorNode:r,anchorOffset:n,focusNode:s,focusOffset:l}}function rl(t,e,i){let{node:r,fromOffset:n,toOffset:s,from:l,to:u}=t.docView.parseRange(e,i);let o=t.domSelectionRange();let f;let h=o.anchorNode;if(h&&t.dom.contains(h.nodeType==1?h:h.parentNode)){f=[{node:h,offset:o.anchorOffset}];if(!gi(o))f.push({node:o.focusNode,offset:o.focusOffset})}if($i&&t.input.lastKeyCode===8){for(let t=s;t>n;t--){let e=r.childNodes[t-1],i=e.pmViewDesc;if(e.nodeName=="BR"&&!i){s=t;break}if(!i||i.size)break}}let a=t.state.doc;let c=t.someProp("domParser")||st.fromSchema(t.state.schema);let d=a.resolve(l);let p=null,m=c.parse(r,{topNode:d.parent,topMatch:d.parent.contentMatchAt(d.index()),topOpen:true,from:n,to:s,preserveWhitespace:d.parent.type.whitespace=="pre"?"full":true,findPositions:f,ruleFromNode:nl,context:d});if(f&&f[0].pos!=null){let t=f[0].pos,e=f[1]&&f[1].pos;if(e==null)e=t;p={anchor:t+l,head:e+l}}return{doc:m,sel:p,from:l,to:u}}function nl(t){let e=t.pmViewDesc;if(e){return e.parseRule()}else if(t.nodeName=="BR"&&t.parentNode){if(Bi&&/^(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||Bi&&/^(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 sl=/^(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 ll(t,e,i,r,n){let s=t.input.compositionPendingChanges||(t.composing?t.input.compositionID:0);t.input.compositionPendingChanges=0;if(e<0){let e=t.input.lastSelectionTime>Date.now()-50?t.input.lastSelectionOrigin:null;let i=Kr(t,e);if(i&&!t.state.selection.eq(i)){if($i&&zi&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",(e=>e(t,bi(13,"Enter")))))return;let r=t.state.tr.setSelection(i);if(e=="pointer")r.setMeta("pointer",true);else if(e=="key")r.scrollIntoView();if(s)r.setMeta("composition",s);t.dispatch(r)}return}let l=t.state.doc.resolve(e);let u=l.sharedDepth(i);e=l.before(u+1);i=t.state.doc.resolve(i).after(u+1);let o=t.state.selection;let f=rl(t,e,i);let h=t.state.doc,a=h.slice(f.from,f.to);let c,d;if(t.input.lastKeyCode===8&&Date.now()-100<t.input.lastKeyCodeTime){c=t.state.selection.to;d="end"}else{c=t.state.selection.from;d="start"}t.input.lastKeyCode=null;let p=al(a.content,f.doc.content,f.from,c,d);if((qi&&t.input.lastIOSEnter>Date.now()-225||zi)&&n.some((t=>t.nodeType==1&&!sl.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,bi(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(!p){if(r&&o instanceof Ie&&!o.empty&&o.$head.sameParent(o.$anchor)&&!t.composing&&!(f.sel&&f.sel.anchor!=f.sel.head)){p={start:o.from,endA:o.to,endB:o.to}}else{if(f.sel){let e=ul(t,t.state.doc,f.sel);if(e&&!e.eq(t.state.selection)){let i=t.state.tr.setSelection(e);if(s)i.setMeta("composition",s);t.dispatch(i)}}return}}if($i&&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 Ie){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(Ai&&Ci<=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 D;if((qi&&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)&&(D=Re.findFrom(f.doc.resolve(m.pos+1),1,true))&&D.head==w.pos)&&t.someProp("handleKeyDown",(e=>e(t,bi(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&fl(h,p.start,p.endA,m,w)&&t.someProp("handleKeyDown",(e=>e(t,bi(8,"Backspace"))))){if(zi&&$i)t.domObserver.suppressSelectionUpdates();return}if($i&&zi&&p.endB==p.start)t.input.lastAndroidDelete=Date.now();if(zi&&!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,bi(13,"Enter"))}))}),20)}let k=p.start,v=p.endA;let y,F,E;if(b){if(m.pos==w.pos){if(Ai&&Ci<=11&&m.parentOffset==0){t.domObserver.suppressSelectionUpdates();setTimeout((()=>Gr(t)),20)}y=t.state.tr.delete(k,v);F=h.resolve(p.start).marksAcross(h.resolve(p.endA))}else if(p.endA==p.endB&&(E=ol(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(k,v,E.mark);else y.removeMark(k,v,E.mark)}else if(m.parent.child(m.index()).isText&&m.index()==w.index()-(w.textOffset?0:1)){let e=m.parent.textBetween(m.parentOffset,w.parentOffset);if(t.someProp("handleTextInput",(i=>i(t,k,v,e))))return;y=t.state.tr.insertText(e,k,v)}}if(!y)y=t.state.tr.replace(k,v,f.doc.slice(p.start-f.from,p.endB-f.from));if(f.sel){let e=ul(t,y.doc,f.sel);if(e&&!($i&&zi&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(e.head==k||e.head==y.mapping.map(v)-1)||Ai&&e.empty&&e.head==k))y.setSelection(e)}if(F)y.ensureMarks(F);if(s)y.setMeta("composition",s);t.dispatch(y.scrollIntoView())}function ul(t,e,i){if(Math.max(i.anchor,i.head)>e.content.size)return null;return ln(t,e.resolve(i.anchor),e.resolve(i.head))}function ol(t,e){let i=t.firstChild.marks,r=e.firstChild.marks;let n=i,s=r,l,u,o;for(let t=0;t<r.length;t++)n=r[t].removeFromSet(n);for(let t=0;t<i.length;t++)s=i[t].removeFromSet(s);if(n.length==1&&s.length==0){u=n[0];l="add";o=t=>t.mark(u.addToSet(t.marks))}else if(n.length==0&&s.length==1){u=s[0];l="remove";o=t=>t.mark(u.removeFromSet(t.marks))}else{return null}let h=[];for(let t=0;t<e.childCount;t++)h.push(o(e.child(t)));if(f.from(h).eq(t))return{mark:u,type:l}}function fl(t,e,i,r,n){if(!r.parent.isTextblock||i-e<=n.pos-r.pos||hl(r,true,false)<n.pos)return false;let s=t.resolve(e);if(s.parentOffset<s.parent.content.size||!s.parent.isTextblock)return false;let l=t.resolve(hl(s,true,true));if(!l.parent.isTextblock||l.pos>i||hl(l,true,false)<i)return false;return r.parent.content.cut(r.parentOffset).eq(l.parent.content)}function hl(t,e,i){let r=t.depth,n=e?t.end():t.pos;while(r>0&&(e||t.indexAfter(r)==t.node(r).childCount)){r--;n++;e=false}if(i){let e=t.node(r).maybeChild(t.indexAfter(r));while(e&&!e.isLeaf){e=e.firstChild;n++}}return n}function al(t,e,i,r,n){let s=t.findDiffStart(e,i);if(s==null)return null;let{a:l,b:u}=t.findDiffEnd(e,i+t.size,i+e.size);if(n=="end"){let t=Math.max(0,s-Math.min(l,u));r-=l+t-s}if(l<s&&t.size<e.size){let t=r<=s&&r>=l?s-r:0;s-=t;if(s&&s<e.size&&cl(e.textBetween(s-1,s+1)))s+=t?1:-1;u=s+(u-l);l=s}else if(u<s){let e=r<=s&&r>=u?s-r:0;s-=e;if(s&&s<t.size&&cl(t.textBetween(s-1,s+1)))s+=e?1:-1;l=s+(l-u);u=s}return{start:s,endA:l,endB:u}}function cl(t){if(t.length!=2)return false;let e=t.charCodeAt(0),i=t.charCodeAt(1);return e>=56320&&e<=57343&&i>=55296&&i<=56319}class dl{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 Hn;this.prevDirectPlugins=[];this.pluginViews=[];this.requiresGeckoHackNode=false;this.dragging=null;this._props=e;this.state=e.state;this.directPlugins=e.plugins||[];this.directPlugins.forEach(kl);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=wl(this);ml(this);this.nodeViews=bl(this);this.docView=Ar(this.state.doc,pl(this),Ks(this),this.dom,this);this.domObserver=new Ys(this,((t,e,i,r)=>ll(this,t,e,i,r)));this.domObserver.start();Kn(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)Xn(this);let e=this._props;this._props=t;if(t.plugins){t.plugins.forEach(kl);this.directPlugins=t.plugins}this.updateStateInner(t.state,e)}setProps(t){let e={};for(let t in this._props)e[t]=this._props[t];e.state=this.state;for(let i in t)e[i]=t[i];this.update(e)}updateState(t){this.updateStateInner(t,this._props)}updateStateInner(t,e){var i;let r=this.state,n=false,s=false;if(t.storedMarks&&this.composing){bs(this);s=true}this.state=t;let l=r.plugins!=t.plugins||this._props.plugins!=e.plugins;if(l||this._props.plugins!=e.plugins||this._props.nodeViews!=e.nodeViews){let t=bl(this);if(Dl(t,this.nodeViews)){this.nodeViews=t;n=true}}if(l||e.handleDOMEvents!=this._props.handleDOMEvents){Xn(this)}this.editable=wl(this);ml(this);let u=Ks(this),o=pl(this);let f=r.plugins!=t.plugins&&!r.doc.eq(t.doc)?"reset":t.scrollToSelection>r.scrollToSelection?"to selection":"preserve";let h=n||!this.docView.matchesNode(t.doc,o,u);if(h||!t.selection.eq(r.selection))s=true;let a=f=="preserve"&&s&&this.dom.style.overflowAnchor==null&&Wi(this);if(s){this.domObserver.stop();let e=h&&(Ai||$i)&&!this.composing&&!r.selection.empty&&!t.selection.empty&&gl(r.selection,t.selection);if(h){let i=$i?this.trackWrites=this.domSelectionRange().focusNode:null;if(n||!this.docView.update(t.doc,o,u,this)){this.docView.updateOuterDeco([]);this.docView.destroy();this.docView=Ar(t.doc,o,u,this.dom,this)}if(i&&!this.trackWrites)e=true}if(e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&fn(this))){Gr(this,e)}else{nn(this,t.selection);this.domObserver.setCurSelection()}this.domObserver.start()}this.updatePluginViews(r);if(((i=this.dragging)===null||i===void 0?void 0:i.node)&&!r.doc.eq(t.doc))this.updateDraggedNode(this.dragging,r);if(f=="reset"){this.dom.scrollTop=0}else if(f=="to selection"){this.scrollToSelection()}else if(a){Zi(a)}}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof je){let e=this.docView.domAfterPos(this.state.selection.from);if(e.nodeType==1)Li(this,e.getBoundingClientRect(),t)}else{Li(this,this.coordsAtPos(this.state.selection.head,1),t)}}destroyPluginViews(){let t;while(t=this.pluginViews.pop())if(t.destroy)t.destroy()}updatePluginViews(t){if(!t||t.plugins!=this.state.plugins||this.directPlugins!=this.prevDirectPlugins){this.prevDirectPlugins=this.directPlugins;this.destroyPluginViews();for(let t=0;t<this.directPlugins.length;t++){let e=this.directPlugins[t];if(e.spec.view)this.pluginViews.push(e.spec.view(this))}for(let t=0;t<this.state.plugins.length;t++){let e=this.state.plugins[t];if(e.spec.view)this.pluginViews.push(e.spec.view(this))}}else{for(let e=0;e<this.pluginViews.length;e++){let i=this.pluginViews[e];if(i.update)i.update(this,t)}}}updateDraggedNode(t,e){let i=t.node,r=-1;if(this.state.doc.nodeAt(i.from)==i.node){r=i.from}else{let t=i.from+(this.state.doc.content.size-e.doc.content.size);let n=t>0&&this.state.doc.nodeAt(t);if(n==i.node)r=t}this.dragging=new As(t.slice,t.move,r<0?undefined:je.create(this.state.doc,r))}someProp(t,e){let i=this._props&&this._props[t],r;if(i!=null&&(r=e?e(i):i))return r;for(let i=0;i<this.directPlugins.length;i++){let n=this.directPlugins[i].props[t];if(n!=null&&(r=e?e(n):n))return r}let n=this.state.plugins;if(n)for(let i=0;i<n.length;i++){let s=n[i].props[t];if(s!=null&&(r=e?e(s):s))return r}}hasFocus(){if(Ai){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)Vi(this.dom);Gr(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 rr(this,t)}coordsAtPos(t,e=1){return ur(this,t,e)}domAtPos(t,e=0){return this.docView.domFromPos(t,e)}nodeDOM(t){let e=this.docView.descAt(t);return e?e.nodeDOM:null}posAtDOM(t,e,i=-1){let r=this.docView.posFromDOM(t,e,i);if(r==null)throw new RangeError("DOM position not inside the editor");return r}endOfTextblock(t,e){return gr(this,e||this.state,t)}pasteHTML(t,e){return xs(this,"",t,false,e||new ClipboardEvent("paste"))}pasteText(t,e){return xs(this,t,null,true,e||new ClipboardEvent("paste"))}destroy(){if(!this.docView)return;Gn(this);this.destroyPluginViews();if(this.mounted){this.docView.update(this.state.doc,[],Ks(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 ts(this,t)}dispatch(t){let e=this._props.dispatchTransaction;if(e)e.call(this,t);else this.updateState(this.state.apply(t))}domSelectionRange(){return Bi&&this.root.nodeType===11&&Di(this.dom.ownerDocument)==this.dom?il(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function pl(t){let e=Object.create(null);e.class="ProseMirror";e.contenteditable=String(t.editable);t.someProp("attributes",(i=>{if(typeof i=="function")i=i(t.state);if(i)for(let t in i){if(t=="class")e.class+=" "+i[t];else if(t=="style")e.style=(e.style?e.style+";":"")+i[t];else if(!e[t]&&t!="contenteditable"&&t!="nodeName")e[t]=String(i[t])}}));if(!e.translate)e.translate="no";return[Bs.node(0,t.state.doc.content.size,e)]}function ml(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:Bs.widget(t.state.selection.head,e,{raw:true,marks:t.markCursor})}}else{t.cursorWrapper=null}}function wl(t){return!t.someProp("editable",(e=>e(t.state)===false))}function gl(t,e){let i=Math.min(t.$anchor.sharedDepth(t.head),e.$anchor.sharedDepth(e.head));return t.$anchor.start(i)!=e.$anchor.start(i)}function bl(t){let e=Object.create(null);function i(t){for(let i in t)if(!Object.prototype.hasOwnProperty.call(e,i))e[i]=t[i]}t.someProp("nodeViews",i);t.someProp("markViews",i);return e}function Dl(t,e){let i=0,r=0;for(let r in t){if(t[r]!=e[r])return true;i++}for(let t in e)r++;return i!=r}function kl(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 vl=["p",0],yl=["blockquote",0],Fl=["hr"],El=["pre",["code",0]],xl=["br"];const Ml={doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return vl}},blockquote:{content:"block+",group:"block",defining:true,parseDOM:[{tag:"blockquote"}],toDOM(){return yl}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return Fl}},heading:{attrs:{level:{default:1}},content:"inline*",group:"block",defining:true,parseDOM:[{tag:"h1",attrs:{level:1}},{tag:"h2",attrs:{level:2}},{tag:"h3",attrs:{level:3}},{tag:"h4",attrs:{level:4}},{tag:"h5",attrs:{level:5}},{tag:"h6",attrs:{level:6}}],toDOM(t){return["h"+t.attrs.level,0]}},code_block:{content:"text*",marks:"",group:"block",code:true,defining:true,parseDOM:[{tag:"pre",preserveWhitespace:"full"}],toDOM(){return El}},text:{group:"inline"},image:{inline:true,attrs:{src:{},alt:{default:null},title:{default:null}},group:"inline",draggable:true,parseDOM:[{tag:"img[src]",getAttrs(t){return{src:t.getAttribute("src"),title:t.getAttribute("title"),alt:t.getAttribute("alt")}}}],toDOM(t){let{src:e,alt:i,title:r}=t.attrs;return["img",{src:e,alt:i,title:r}]}},hard_break:{inline:true,group:"inline",selectable:false,parseDOM:[{tag:"br"}],toDOM(){return xl}}};const Al=["em",0],Cl=["strong",0],Sl=["code",0];const Ol={link:{attrs:{href:{},title:{default:null}},inclusive:false,parseDOM:[{tag:"a[href]",getAttrs(t){return{href:t.getAttribute("href"),title:t.getAttribute("title")}}}],toDOM(t){let{href:e,title:i}=t.attrs;return["a",{href:e,title:i},0]}},em:{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"},{style:"font-style=normal",clearMark:t=>t.type.name=="em"}],toDOM(){return Al}},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 Cl}},code:{parseDOM:[{tag:"code"}],toDOM(){return Sl}}};const $l=new rt({nodes:Ml,marks:Ol});const _l=["ol",0],Bl=["ul",0],ql=["li",0];const Rl={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?_l:["ol",{start:t.attrs.order},0]}};const Nl={parseDOM:[{tag:"ul"}],toDOM(){return Bl}};const zl={parseDOM:[{tag:"li"}],toDOM(){return ql},defining:true};function Tl(t,e){let i={};for(let e in t)i[e]=t[e];for(let t in e)i[t]=e[t];return i}function Il(t,e,i){return t.append({ordered_list:Tl(Rl,{content:"list_item+",group:i}),bullet_list:Tl(Nl,{content:"list_item+",group:i}),list_item:Tl(zl,{content:e})})}function Pl(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),u=false,o=l;if(!l)return false;if(l.depth>=2&&n.node(l.depth-1).type.compatibleContent(t)&&l.startIndex==0){if(n.index(l.depth-1)==0)return false;let t=i.doc.resolve(l.start-2);o=new _(t,t,l.depth);if(l.endIndex<l.parent.childCount)l=new _(n,i.doc.resolve(s.end(l.depth)),l.depth);u=true}let f=Qt(o,t,e,l);if(!f)return false;if(r)r(jl(i.tr,l,f,u,t).scrollIntoView());return true}}function jl(t,e,i,r,n){let s=f.empty;for(let t=i.length-1;t>=0;t--)s=f.from(i[t].type.create(i[t].attrs,s));t.step(new Ut(e.start-(r?2:0),e.end,e.start,e.end,new m(s,0,0),i.length,true));let l=0;for(let t=0;t<i.length;t++)if(i[t].type==n)l=t+1;let u=i.length-l;let o=e.start+i.length-(r?2:0),h=e.parent;for(let i=e.startIndex,r=e.endIndex,n=true;i<r;i++,n=false){if(!n&&ue(t.doc,o,u)){t.split(o,u);o+=2*u}o+=h.child(i).nodeSize}return t}function Jl(t,e){return function(i,r){let{$from:n,$to:s,node:l}=i.selection;if(l&&l.isBlock||n.depth<2||!n.sameParent(s))return false;let u=n.node(-1);if(u.type!=t)return false;if(n.parent.content.size==0&&n.node(-1).childCount==n.indexAfter(-1)){if(n.depth==3||n.node(-3).type!=t||n.index(-2)!=n.node(-2).childCount-1)return false;if(r){let e=f.empty;let s=n.index(-1)?1:n.index(-2)?2:3;for(let t=n.depth-s;t>=n.depth-3;t--)e=f.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(f.from(t.createAndFill()));let u=n.before(n.depth-(s-1));let o=i.tr.replace(u,n.after(-l),new m(e,4-s,0));let h=-1;o.doc.nodesBetween(u,o.doc.content.size,((t,e)=>{if(h>-1)return false;if(t.isTextblock&&t.content.size==0)h=e+1}));if(h>-1)o.setSelection(Re.near(o.doc.resolve(h)));r(o.scrollIntoView())}return true}let o=s.pos==n.end()?u.contentMatchAt(0).defaultType:null;let h=i.tr.delete(n.pos,s.pos);let a=o?[e?{type:t,attrs:e}:null,{type:o}]:undefined;if(!ue(h.doc,n.pos,2,a))return false;if(r)r(h.split(n.pos,2,a).scrollIntoView());return true}}function Ll(t){return function(e,i){let{$from:r,$to:n}=e.selection;let s=r.blockRange(n,(e=>e.childCount>0&&e.firstChild.type==t));if(!s)return false;if(!i)return true;if(r.node(s.depth-1).type==t)return Wl(e,i,t,s);else return Ul(e,i,s)}}function Wl(t,e,i,r){let n=t.tr,s=r.end,l=r.$to.end(r.depth);if(s<l){n.step(new Ut(s-1,l,s,l,new m(f.from(i.create(null,r.parent.copy())),1,0),1,true));r=new _(n.doc.resolve(r.$from.pos),n.doc.resolve(l),r.depth)}const u=Xt(r);if(u==null)return false;n.lift(r,u);let o=n.mapping.map(s,-1)-1;if(fe(n.doc,o))n.join(o);e(n.scrollIntoView());return true}function Ul(t,e,i){let r=t.tr,n=i.parent;for(let t=i.end,e=i.endIndex-1,s=i.startIndex;e>s;e--){t-=n.child(e).nodeSize;r.delete(t-1,t+1)}let s=r.doc.resolve(i.start),l=s.nodeAfter;if(r.mapping.map(i.end)!=i.start+s.nodeAfter.nodeSize)return false;let u=i.startIndex==0,o=i.endIndex==n.childCount;let h=s.node(-1),a=s.index(-1);if(!h.canReplace(a+(u?0:1),a+1,l.content.append(o?f.empty:f.from(n))))return false;let c=s.pos,d=c+l.nodeSize;r.step(new Ut(c-(u?1:0),d+(o?1:0),c+1,d-1,new m((u?f.empty:f.from(n.copy(f.empty))).append(o?f.empty:f.from(n.copy(f.empty))),u?0:1,o?0:1),u?0:1));e(r.scrollIntoView());return true}function Zl(t){return function(e,i){let{$from:r,$to:n}=e.selection;let s=r.blockRange(n,(e=>e.childCount>0&&e.firstChild.type==t));if(!s)return false;let l=s.startIndex;if(l==0)return false;let u=s.parent,o=u.child(l-1);if(o.type!=t)return false;if(i){let r=o.lastChild&&o.lastChild.type==u.type;let n=f.from(r?t.create():null);let l=new m(f.from(t.create(null,f.from(u.type.create(null,n)))),r?3:1,0);let h=s.start,a=s.end;i(e.tr.step(new Ut(h-(r?3:1),a,h,a,l,1,true)).scrollIntoView())}return true}}var Hl={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 Kl={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 Vl=typeof navigator!="undefined"&&/Mac/.test(navigator.platform);var Gl=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var Xl=0;Xl<10;Xl++)Hl[48+Xl]=Hl[96+Xl]=String(Xl);for(var Xl=1;Xl<=24;Xl++)Hl[Xl+111]="F"+Xl;for(var Xl=65;Xl<=90;Xl++){Hl[Xl]=String.fromCharCode(Xl+32);Kl[Xl]=String.fromCharCode(Xl)}for(var Yl in Hl)if(!Kl.hasOwnProperty(Yl))Kl[Yl]=Hl[Yl];function Ql(t){var e=Vl&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||Gl&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified";var i=!e&&t.key||(t.shiftKey?Kl:Hl)[t.keyCode]||t.key||"Unidentified";if(i=="Esc")i="Escape";if(i=="Del")i="Delete";if(i=="Left")i="ArrowLeft";if(i=="Up")i="ArrowUp";if(i=="Right")i="ArrowRight";if(i=="Down")i="ArrowDown";return i}const tu=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function eu(t){let e=t.split(/-(?!$)/),i=e[e.length-1];if(i=="Space")i=" ";let r,n,s,l;for(let t=0;t<e.length-1;t++){let i=e[t];if(/^(cmd|meta|m)$/i.test(i))l=true;else if(/^a(lt)?$/i.test(i))r=true;else if(/^(c|ctrl|control)$/i.test(i))n=true;else if(/^s(hift)?$/i.test(i))s=true;else if(/^mod$/i.test(i)){if(tu)l=true;else n=true}else throw new Error("Unrecognized modifier name: "+i)}if(r)i="Alt-"+i;if(n)i="Ctrl-"+i;if(l)i="Meta-"+i;if(s)i="Shift-"+i;return i}function iu(t){let e=Object.create(null);for(let i in t)e[eu(i)]=t[i];return e}function ru(t,e,i=true){if(e.altKey)t="Alt-"+t;if(e.ctrlKey)t="Ctrl-"+t;if(e.metaKey)t="Meta-"+t;if(i&&e.shiftKey)t="Shift-"+t;return t}function nu(t){return new ri({props:{handleKeyDown:su(t)}})}function su(t){let e=iu(t);return function(t,i){let r=Ql(i),n,s=e[ru(r,i)];if(s&&s(t.state,t.dispatch,t))return true;if(r.length==1&&r!=" "){if(i.shiftKey){let n=e[ru(r,i,false)];if(n&&n(t.state,t.dispatch,t))return true}if((i.shiftKey||i.altKey||i.metaKey||r.charCodeAt(0)>127)&&(n=Hl[i.keyCode])&&n!=r){let r=e[ru(n,i)];if(r&&r(t.state,t.dispatch,t))return true}}return false}}var lu=200;var uu=function t(){};uu.prototype.append=function t(e){if(!e.length){return this}e=uu.from(e);return!this.length&&e||e.length<lu&&this.leafAppend(e)||this.length<lu&&e.leafPrepend(this)||this.appendInner(e)};uu.prototype.prepend=function t(e){if(!e.length){return this}return uu.from(e).append(this)};uu.prototype.appendInner=function t(e){return new fu(this,e)};uu.prototype.slice=function t(e,i){if(e===void 0)e=0;if(i===void 0)i=this.length;if(e>=i){return uu.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,i))};uu.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};uu.prototype.forEach=function t(e,i,r){if(i===void 0)i=0;if(r===void 0)r=this.length;if(i<=r){this.forEachInner(e,i,r,0)}else{this.forEachInvertedInner(e,i,r,0)}};uu.prototype.map=function t(e,i,r){if(i===void 0)i=0;if(r===void 0)r=this.length;var n=[];this.forEach((function(t,i){return n.push(e(t,i))}),i,r);return n};uu.from=function t(e){if(e instanceof uu){return e}return e&&e.length?new ou(e):uu.empty};var ou=function(t){function e(e){t.call(this);this.values=e}if(t)e.__proto__=t;e.prototype=Object.create(t&&t.prototype);e.prototype.constructor=e;var i={length:{configurable:true},depth:{configurable:true}};e.prototype.flatten=function t(){return this.values};e.prototype.sliceInner=function t(i,r){if(i==0&&r==this.length){return this}return new e(this.values.slice(i,r))};e.prototype.getInner=function t(e){return this.values[e]};e.prototype.forEachInner=function t(e,i,r,n){for(var s=i;s<r;s++){if(e(this.values[s],n+s)===false){return false}}};e.prototype.forEachInvertedInner=function t(e,i,r,n){for(var s=i-1;s>=r;s--){if(e(this.values[s],n+s)===false){return false}}};e.prototype.leafAppend=function t(i){if(this.length+i.length<=lu){return new e(this.values.concat(i.flatten()))}};e.prototype.leafPrepend=function t(i){if(this.length+i.length<=lu){return new e(i.flatten().concat(this.values))}};i.length.get=function(){return this.values.length};i.depth.get=function(){return 0};Object.defineProperties(e.prototype,i);return e}(uu);uu.empty=new ou([]);var fu=function(t){function e(e,i){t.call(this);this.left=e;this.right=i;this.length=e.length+i.length;this.depth=Math.max(e.depth,i.depth)+1}if(t)e.__proto__=t;e.prototype=Object.create(t&&t.prototype);e.prototype.constructor=e;e.prototype.flatten=function t(){return this.left.flatten().concat(this.right.flatten())};e.prototype.getInner=function t(e){return e<this.left.length?this.left.get(e):this.right.get(e-this.left.length)};e.prototype.forEachInner=function t(e,i,r,n){var s=this.left.length;if(i<s&&this.left.forEachInner(e,i,Math.min(r,s),n)===false){return false}if(r>s&&this.right.forEachInner(e,Math.max(i-s,0),Math.min(this.length,r)-s,n+s)===false){return false}};e.prototype.forEachInvertedInner=function t(e,i,r,n){var s=this.left.length;if(i>s&&this.right.forEachInvertedInner(e,i-s,Math.max(r,s)-s,n+s)===false){return false}if(r<s&&this.left.forEachInvertedInner(e,Math.min(i,s),r,n)===false){return false}};e.prototype.sliceInner=function t(e,i){if(e==0&&i==this.length){return this}var r=this.left.length;if(i<=r){return this.left.slice(e,i)}if(e>=r){return this.right.slice(e-r,i-r)}return this.left.slice(e,r).append(this.right.slice(0,i-r))};e.prototype.leafAppend=function t(i){var r=this.right.leafAppend(i);if(r){return new e(this.left,r)}};e.prototype.leafPrepend=function t(i){var r=this.left.leafPrepend(i);if(r){return new e(r,this.right)}};e.prototype.appendInner=function t(i){if(this.left.depth>=Math.max(this.right.depth,i.depth)+1){return new e(this.left,new e(this.right,i))}return new e(this,i)};return e}(uu);const hu=500;class au{constructor(t,e){this.items=t;this.eventCount=e}popEvent(t,e){if(this.eventCount==0)return null;let i=this.items.length;for(;;i--){let t=this.items.get(i-1);if(t.selection){--i;break}}let r,n;if(e){r=this.remapping(i,this.items.length);n=r.maps.length}let s=t.tr;let l,u;let o=[],f=[];this.items.forEach(((t,e)=>{if(!t.step){if(!r){r=this.remapping(i,e+1);n=r.maps.length}n--;f.push(t);return}if(r){f.push(new du(t.map));let e=t.step.map(r.slice(n)),i;if(e&&s.maybeStep(e).doc){i=s.mapping.maps[s.mapping.maps.length-1];o.push(new du(i,undefined,undefined,o.length+f.length))}n--;if(i)r.appendMap(i,n)}else{s.maybeStep(t.step)}if(t.selection){l=r?t.selection.map(r.slice(n)):t.selection;u=new au(this.items.slice(0,i).append(f.reverse().concat(o)),this.eventCount-1);return false}}),this.items.length,0);return{remaining:u,transform:s,selection:l}}addTransform(t,e,i,r){let n=[],s=this.eventCount;let l=this.items,u=!r&&l.length?l.get(l.length-1):null;for(let i=0;i<t.steps.length;i++){let o=t.steps[i].invert(t.docs[i]);let f=new du(t.mapping.maps[i],o,e),h;if(h=u&&u.merge(f)){f=h;if(i)n.pop();else l=l.slice(0,l.length-1)}n.push(f);if(e){s++;e=undefined}if(!r)u=f}let o=s-i.depth;if(o>mu){l=cu(l,o);s-=o}return new au(l.append(n),s)}remapping(t,e){let i=new Rt;this.items.forEach(((e,r)=>{let n=e.mirrorOffset!=null&&r-e.mirrorOffset>=t?i.maps.length-e.mirrorOffset:undefined;i.appendMap(e.map,n)}),t,e);return i}addMaps(t){if(this.eventCount==0)return this;return new au(this.items.append(t.map((t=>new du(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let i=[],r=Math.max(0,this.items.length-e);let n=t.mapping;let s=t.steps.length;let l=this.eventCount;this.items.forEach((t=>{if(t.selection)l--}),r);let u=e;this.items.forEach((e=>{let r=n.getMirror(--u);if(r==null)return;s=Math.min(s,r);let o=n.maps[r];if(e.step){let s=t.steps[r].invert(t.docs[r]);let f=e.selection&&e.selection.map(n.slice(u+1,r));if(f)l++;i.push(new du(o,s,f))}else{i.push(new du(o))}}),r);let o=[];for(let t=e;t<s;t++)o.push(new du(n.maps[t]));let f=this.items.slice(0,r).append(o).append(i);let h=new au(f,l);if(h.emptyItemCount()>hu)h=h.compress(this.items.length-i.length);return h}emptyItemCount(){let t=0;this.items.forEach((e=>{if(!e.step)t++}));return t}compress(t=this.items.length){let e=this.remapping(0,t),i=e.maps.length;let r=[],n=0;this.items.forEach(((s,l)=>{if(l>=t){r.push(s);if(s.selection)n++}else if(s.step){let t=s.step.map(e.slice(i)),l=t&&t.getMap();i--;if(l)e.appendMap(l,i);if(t){let u=s.selection&&s.selection.map(e.slice(i));if(u)n++;let o=new du(l.invert(),t,u),f,h=r.length-1;if(f=r.length&&r[h].merge(o))r[h]=f;else r.push(o)}}else if(s.map){i--}}),this.items.length,0);return new au(uu.from(r.reverse()),n)}}au.empty=new au(uu.empty,0);function cu(t,e){let i;t.forEach(((t,r)=>{if(t.selection&&e--==0){i=r;return false}}));return t.slice(i)}class du{constructor(t,e,i,r){this.map=t;this.step=e;this.selection=i;this.mirrorOffset=r}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new du(e.getMap().invert(),e,this.selection)}}}class pu{constructor(t,e,i,r,n){this.done=t;this.undone=e;this.prevRanges=i;this.prevTime=r;this.prevComposition=n}}const mu=20;function wu(t,e,i,r){let n=i.getMeta(Eu),s;if(n)return n.historyState;if(i.getMeta(xu))t=new pu(t.done,t.undone,null,0,-1);let l=i.getMeta("appendedTransaction");if(i.steps.length==0){return t}else if(l&&l.getMeta(Eu)){if(l.getMeta(Eu).redo)return new pu(t.done.addTransform(i,undefined,r,Fu(e)),t.undone,bu(i.mapping.maps[i.steps.length-1]),t.prevTime,t.prevComposition);else return new pu(t.done,t.undone.addTransform(i,undefined,r,Fu(e)),null,t.prevTime,t.prevComposition)}else if(i.getMeta("addToHistory")!==false&&!(l&&l.getMeta("addToHistory")===false)){let n=i.getMeta("composition");let s=t.prevTime==0||!l&&t.prevComposition!=n&&(t.prevTime<(i.time||0)-r.newGroupDelay||!gu(i,t.prevRanges));let u=l?Du(t.prevRanges,i.mapping):bu(i.mapping.maps[i.steps.length-1]);return new pu(t.done.addTransform(i,s?e.selection.getBookmark():undefined,r,Fu(e)),au.empty,u,i.time,n==null?t.prevComposition:n)}else if(s=i.getMeta("rebased")){return new pu(t.done.rebased(i,s),t.undone.rebased(i,s),Du(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}else{return new pu(t.done.addMaps(i.mapping.maps),t.undone.addMaps(i.mapping.maps),Du(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}}function gu(t,e){if(!e)return false;if(!t.docChanged)return true;let i=false;t.mapping.maps[0].forEach(((t,r)=>{for(let n=0;n<e.length;n+=2)if(t<=e[n+1]&&r>=e[n])i=true}));return i}function bu(t){let e=[];t.forEach(((t,i,r,n)=>e.push(r,n)));return e}function Du(t,e){if(!t)return null;let i=[];for(let r=0;r<t.length;r+=2){let n=e.map(t[r],1),s=e.map(t[r+1],-1);if(n<=s)i.push(n,s)}return i}function ku(t,e,i,r){let n=Fu(e);let s=Eu.get(e).spec.config;let l=(r?t.undone:t.done).popEvent(e,n);if(!l)return;let u=l.selection.resolve(l.transform.doc);let o=(r?t.done:t.undone).addTransform(l.transform,e.selection.getBookmark(),s,n);let f=new pu(r?o:l.remaining,r?l.remaining:o,null,0,-1);i(l.transform.setSelection(u).setMeta(Eu,{redo:r,historyState:f}).scrollIntoView())}let vu=false,yu=null;function Fu(t){let e=t.plugins;if(yu!=e){vu=false;yu=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){vu=true;break}}return vu}const Eu=new li("history");const xu=new li("closeHistory");function Mu(t={}){t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500};return new ri({key:Eu,state:{init(){return new pu(au.empty,au.empty,null,0,-1)},apply(e,i,r){return wu(i,r,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(t,e){let i=e.inputType;let r=i=="historyUndo"?Au:i=="historyRedo"?Cu:null;if(!r)return false;e.preventDefault();return r(t.state,t.dispatch)}}}})}const Au=(t,e)=>{let i=Eu.getState(t);if(!i||i.done.eventCount==0)return false;if(e)ku(i,t,e,false);return true};const Cu=(t,e)=>{let i=Eu.getState(t);if(!i||i.undone.eventCount==0)return false;if(e)ku(i,t,e,true);return true};const Su=(t,e)=>{if(t.selection.empty)return false;if(e)e(t.tr.deleteSelection().scrollIntoView());return true};function Ou(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("backward",t):i.parentOffset>0))return null;return i}const $u=(t,e,i)=>{let r=Ou(t,i);if(!r)return false;let n=qu(r);if(!n){let i=r.blockRange(),n=i&&Xt(i);if(n==null)return false;if(e)e(t.tr.lift(i,n).scrollIntoView());return true}let s=n.nodeBefore;if(!s.type.spec.isolating&&Yu(t,n,e))return true;if(r.parent.content.size==0&&(_u(s,"end")||je.isSelectable(s))){let i=me(t.doc,r.before(),r.after(),m.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(_u(s,"end")?Re.findFrom(r.doc.resolve(r.mapping.map(n.pos,-1)),-1):je.create(r.doc,n.pos-s.nodeSize));e(r.scrollIntoView())}return true}}if(s.isAtom&&n.depth==r.depth-1){if(e)e(t.tr.delete(n.pos-s.nodeSize,n.pos).scrollIntoView());return true}return false};function _u(t,e,i=false){for(let r=t;r;r=e=="start"?r.firstChild:r.lastChild){if(r.isTextblock)return true;if(i&&r.childCount!=1)return false}return false}const Bu=(t,e,i)=>{let{$head:r,empty:n}=t.selection,s=r;if(!n)return false;if(r.parent.isTextblock){if(i?!i.endOfTextblock("backward",t):r.parentOffset>0)return false;s=qu(r)}let l=s&&s.nodeBefore;if(!l||!je.isSelectable(l))return false;if(e)e(t.tr.setSelection(je.create(t.doc,s.pos-l.nodeSize)).scrollIntoView());return true};function qu(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 Ru(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("forward",t):i.parentOffset<i.parent.content.size))return null;return i}const Nu=(t,e,i)=>{let r=Ru(t,i);if(!r)return false;let n=Tu(r);if(!n)return false;let s=n.nodeAfter;if(Yu(t,n,e))return true;if(r.parent.content.size==0&&(_u(s,"start")||je.isSelectable(s))){let i=me(t.doc,r.before(),r.after(),m.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(_u(s,"start")?Re.findFrom(r.doc.resolve(r.mapping.map(n.pos)),1):je.create(r.doc,r.mapping.map(n.pos)));e(r.scrollIntoView())}return true}}if(s.isAtom&&n.depth==r.depth-1){if(e)e(t.tr.delete(n.pos,n.pos+s.nodeSize).scrollIntoView());return true}return false};const zu=(t,e,i)=>{let{$head:r,empty:n}=t.selection,s=r;if(!n)return false;if(r.parent.isTextblock){if(i?!i.endOfTextblock("forward",t):r.parentOffset<r.parent.content.size)return false;s=Tu(r)}let l=s&&s.nodeAfter;if(!l||!je.isSelectable(l))return false;if(e)e(t.tr.setSelection(je.create(t.doc,s.pos)).scrollIntoView());return true};function Tu(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let i=t.node(e);if(t.index(e)+1<i.childCount)return t.doc.resolve(t.after(e+1));if(i.type.spec.isolating)break}return null}const Iu=(t,e)=>{let i=t.selection,r=i instanceof je,n;if(r){if(i.node.isTextblock||!fe(t.doc,i.from))return false;n=i.from}else{n=ae(t.doc,i.from,-1);if(n==null)return false}if(e){let i=t.tr.join(n);if(r)i.setSelection(je.create(i.doc,n-t.doc.resolve(n).nodeBefore.nodeSize));e(i.scrollIntoView())}return true};const Pu=(t,e)=>{let i=t.selection,r;if(i instanceof je){if(i.node.isTextblock||!fe(t.doc,i.to))return false;r=i.to}else{r=ae(t.doc,i.to,1);if(r==null)return false}if(e)e(t.tr.join(r).scrollIntoView());return true};const ju=(t,e)=>{let{$from:i,$to:r}=t.selection;let n=i.blockRange(r),s=n&&Xt(n);if(s==null)return false;if(e)e(t.tr.lift(n,s).scrollIntoView());return true};const Ju=(t,e)=>{let{$head:i,$anchor:r}=t.selection;if(!i.parent.type.spec.code||!i.sameParent(r))return false;if(e)e(t.tr.insertText("\n").scrollIntoView());return true};function Lu(t){for(let e=0;e<t.edgeCount;e++){let{type:i}=t.edge(e);if(i.isTextblock&&!i.hasRequiredAttrs())return i}return null}const Wu=(t,e)=>{let{$head:i,$anchor:r}=t.selection;if(!i.parent.type.spec.code||!i.sameParent(r))return false;let n=i.node(-1),s=i.indexAfter(-1),l=Lu(n.contentMatchAt(s));if(!l||!n.canReplaceWith(s,s,l))return false;if(e){let r=i.after(),n=t.tr.replaceWith(r,r,l.createAndFill());n.setSelection(Re.near(n.doc.resolve(r),1));e(n.scrollIntoView())}return true};const Uu=(t,e)=>{let i=t.selection,{$from:r,$to:n}=i;if(i instanceof Le||r.parent.inlineContent||n.parent.inlineContent)return false;let s=Lu(n.parent.contentMatchAt(n.indexAfter()));if(!s||!s.isTextblock)return false;if(e){let i=(!r.parentOffset&&n.index()<n.parent.childCount?r:n).pos;let l=t.tr.insert(i,s.createAndFill());l.setSelection(Ie.create(l.doc,i+1));e(l.scrollIntoView())}return true};const Zu=(t,e)=>{let{$cursor:i}=t.selection;if(!i||i.parent.content.size)return false;if(i.depth>1&&i.after()!=i.end(-1)){let r=i.before();if(ue(t.doc,r)){if(e)e(t.tr.split(r).scrollIntoView());return true}}let r=i.blockRange(),n=r&&Xt(r);if(n==null)return false;if(e)e(t.tr.lift(r,n).scrollIntoView());return true};function Hu(t){return(e,i)=>{let{$from:r,$to:n}=e.selection;if(e.selection instanceof je&&e.selection.node.isBlock){if(!r.parentOffset||!ue(e.doc,r.pos))return false;if(i)i(e.tr.split(r.pos).scrollIntoView());return true}if(!r.parent.isBlock)return false;if(i){let s=n.parentOffset==n.parent.content.size;let l=e.tr;if(e.selection instanceof Ie||e.selection instanceof Le)l.deleteSelection();let u=r.depth==0?null:Lu(r.node(-1).contentMatchAt(r.indexAfter(-1)));let o=t&&t(n.parent,s);let f=o?[o]:s&&u?[{type:u}]:undefined;let h=ue(l.doc,l.mapping.map(r.pos),1,f);if(!f&&!h&&ue(l.doc,l.mapping.map(r.pos),1,u?[{type:u}]:undefined)){if(u)f=[{type:u}];h=true}if(h){l.split(l.mapping.map(r.pos),1,f);if(!s&&!r.parentOffset&&r.parent.type!=u){let t=l.mapping.map(r.before()),e=l.doc.resolve(t);if(u&&r.node(-1).canReplaceWith(e.index(),e.index()+1,u))l.setNodeMarkup(l.mapping.map(r.before()),u)}}i(l.scrollIntoView())}return true}}const Ku=Hu();const Vu=(t,e)=>{let{$from:i,to:r}=t.selection,n;let s=i.sharedDepth(r);if(s==0)return false;n=i.before(s);if(e)e(t.tr.setSelection(je.create(t.doc,n)));return true};const Gu=(t,e)=>{if(e)e(t.tr.setSelection(new Le(t.doc)));return true};function Xu(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s=e.index();if(!r||!n||!r.type.compatibleContent(n.type))return false;if(!r.content.size&&e.parent.canReplace(s-1,s)){if(i)i(t.tr.delete(e.pos-r.nodeSize,e.pos).scrollIntoView());return true}if(!e.parent.canReplace(s,s+1)||!(n.isTextblock||fe(t.doc,e.pos)))return false;if(i)i(t.tr.clearIncompatible(e.pos,r.type,r.contentMatchAt(r.childCount)).join(e.pos).scrollIntoView());return true}function Yu(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s,l;if(r.type.spec.isolating||n.type.spec.isolating)return false;if(Xu(t,e,i))return true;let u=e.parent.canReplace(e.index(),e.index()+1);if(u&&(s=(l=r.contentMatchAt(r.childCount)).findWrapping(n.type))&&l.matchType(s[0]||n.type).validEnd){if(i){let l=e.pos+n.nodeSize,u=f.empty;for(let t=s.length-1;t>=0;t--)u=f.from(s[t].create(null,u));u=f.from(r.copy(u));let o=t.tr.step(new Ut(e.pos-1,l,e.pos,l,new m(u,1,0),s.length,true));let h=l+2*s.length;if(fe(o.doc,h))o.join(h);i(o.scrollIntoView())}return true}let o=Re.findFrom(e,1);let h=o&&o.$from.blockRange(o.$to),a=h&&Xt(h);if(a!=null&&a>=e.depth){if(i)i(t.tr.lift(h,a).scrollIntoView());return true}if(u&&_u(n,"start",true)&&_u(r,"end")){let s=r,l=[];for(;;){l.push(s);if(s.isTextblock)break;s=s.lastChild}let u=n,o=1;for(;!u.isTextblock;u=u.firstChild)o++;if(s.canReplace(s.childCount,s.childCount,u.content)){if(i){let r=f.empty;for(let t=l.length-1;t>=0;t--)r=f.from(l[t].copy(r));let s=t.tr.step(new Ut(e.pos-l.length,e.pos+n.nodeSize,e.pos+o,e.pos+n.nodeSize-o,new m(r,l.length,0),0,true));i(s.scrollIntoView())}return true}}return false}function Qu(t){return function(e,i){let r=e.selection,n=t<0?r.$from:r.$to;let s=n.depth;while(n.node(s).isInline){if(!s)return false;s--}if(!n.node(s).isTextblock)return false;if(i)i(e.tr.setSelection(Ie.create(e.doc,t<0?n.start(s):n.end(s))));return true}}const to=Qu(-1);const eo=Qu(1);function io(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),u=l&&Qt(l,t,e);if(!u)return false;if(r)r(i.tr.wrap(l,u).scrollIntoView());return true}}function ro(t,e=null){return function(i,r){let n=false;for(let r=0;r<i.selection.ranges.length&&!n;r++){let{$from:{pos:s},$to:{pos:l}}=i.selection.ranges[r];i.doc.nodesBetween(s,l,((r,s)=>{if(n)return false;if(!r.isTextblock||r.hasMarkup(t,e))return;if(r.type==t){n=true}else{let e=i.doc.resolve(s),r=e.index();n=e.parent.canReplaceWith(r,r+1,t)}}))}if(!n)return false;if(r){let n=i.tr;for(let r=0;r<i.selection.ranges.length;r++){let{$from:{pos:s},$to:{pos:l}}=i.selection.ranges[r];n.setBlockType(s,l,t,e)}r(n.scrollIntoView())}return true}}function no(t,e,i){for(let r=0;r<e.length;r++){let{$from:n,$to:s}=e[r];let l=n.depth==0?t.inlineContent&&t.type.allowsMarkType(i):false;t.nodesBetween(n.pos,s.pos,(t=>{if(l)return false;l=t.inlineContent&&t.type.allowsMarkType(i)}));if(l)return true}return false}function so(t,e=null){return function(i,r){let{empty:n,$cursor:s,ranges:l}=i.selection;if(n&&!s||!no(i.doc,l,t))return false;if(r){if(s){if(t.isInSet(i.storedMarks||s.marks()))r(i.tr.removeStoredMark(t));else r(i.tr.addStoredMark(t.create(e)))}else{let n=false,s=i.tr;for(let e=0;!n&&e<l.length;e++){let{$from:r,$to:s}=l[e];n=i.doc.rangeHasMark(r.pos,s.pos,t)}for(let i=0;i<l.length;i++){let{$from:r,$to:u}=l[i];if(n){s.removeMark(r.pos,u.pos,t)}else{let i=r.pos,n=u.pos,l=r.nodeAfter,o=u.nodeBefore;let f=l&&l.isText?/^\s*/.exec(l.text)[0].length:0;let h=o&&o.isText?/\s*$/.exec(o.text)[0].length:0;if(i+f<n){i+=f;n-=h}s.addMark(i,n,t.create(e))}}r(s.scrollIntoView())}}return true}}function lo(...t){return function(e,i,r){for(let n=0;n<t.length;n++)if(t[n](e,i,r))return true;return false}}let uo=lo(Su,$u,Bu);let oo=lo(Su,Nu,zu);const fo={Enter:lo(Ju,Uu,Zu,Ku),"Mod-Enter":Wu,Backspace:uo,"Mod-Backspace":uo,"Shift-Backspace":uo,Delete:oo,"Mod-Delete":oo,"Mod-a":Gu};const ho={"Ctrl-h":fo["Backspace"],"Alt-Backspace":fo["Mod-Backspace"],"Ctrl-d":fo["Delete"],"Ctrl-Alt-Backspace":fo["Mod-Delete"],"Alt-Delete":fo["Mod-Delete"],"Alt-d":fo["Mod-Delete"],"Ctrl-a":to,"Ctrl-e":eo};for(let t in fo)ho[t]=fo[t];const ao=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os!="undefined"&&os.platform?os.platform()=="darwin":false;const co=ao?ho:fo;function po(t={}){return new ri({view(e){return new mo(e,t)}})}class mo{constructor(t,e){var i;this.editorView=t;this.cursorPos=null;this.element=null;this.timeout=-1;this.width=(i=e.width)!==null&&i!==void 0?i:1;this.color=e.color===false?undefined:e.color||"black";this.class=e.class;this.handlers=["dragover","dragend","drop","dragleave"].map((e=>{let i=t=>{this[e](t)};t.dom.addEventListener(e,i);return{name:e,handler:i}}))}destroy(){this.handlers.forEach((({name:t,handler:e})=>this.editorView.dom.removeEventListener(t,e)))}update(t,e){if(this.cursorPos!=null&&e.doc!=t.state.doc){if(this.cursorPos>t.state.doc.content.size)this.setCursor(null);else this.updateOverlay()}}setCursor(t){if(t==this.cursorPos)return;this.cursorPos=t;if(t==null){this.element.parentNode.removeChild(this.element);this.element=null}else{this.updateOverlay()}}updateOverlay(){let t=this.editorView.state.doc.resolve(this.cursorPos);let e=!t.parent.inlineContent,i;if(e){let e=t.nodeBefore,r=t.nodeAfter;if(e||r){let t=this.editorView.nodeDOM(this.cursorPos-(e?e.nodeSize:0));if(t){let n=t.getBoundingClientRect();let s=e?n.bottom:n.top;if(e&&r)s=(s+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2;i={left:n.left,right:n.right,top:s-this.width/2,bottom:s+this.width/2}}}}if(!i){let t=this.editorView.coordsAtPos(this.cursorPos);i={left:t.left-this.width/2,right:t.left+this.width/2,top:t.top,bottom:t.bottom}}let r=this.editorView.dom.offsetParent;if(!this.element){this.element=r.appendChild(document.createElement("div"));if(this.class)this.element.className=this.class;this.element.style.cssText="position: absolute; z-index: 50; pointer-events: none;";if(this.color){this.element.style.backgroundColor=this.color}}this.element.classList.toggle("prosemirror-dropcursor-block",e);this.element.classList.toggle("prosemirror-dropcursor-inline",!e);let n,s;if(!r||r==document.body&&getComputedStyle(r).position=="static"){n=-pageXOffset;s=-pageYOffset}else{let t=r.getBoundingClientRect();n=t.left-r.scrollLeft;s=t.top-r.scrollTop}this.element.style.left=i.left-n+"px";this.element.style.top=i.top-s+"px";this.element.style.width=i.right-i.left+"px";this.element.style.height=i.bottom-i.top+"px"}scheduleRemoval(t){clearTimeout(this.timeout);this.timeout=setTimeout((()=>this.setCursor(null)),t)}dragover(t){if(!this.editorView.editable)return;let e=this.editorView.posAtCoords({left:t.clientX,top:t.clientY});let i=e&&e.inside>=0&&this.editorView.state.doc.nodeAt(e.inside);let r=i&&i.type.spec.disableDropCursor;let n=typeof r=="function"?r(this.editorView,e,t):r;if(e&&!n){let t=e.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){let e=pe(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 wo extends Re{constructor(t){super(t,t)}map(t,e){let i=t.resolve(e.map(this.head));return wo.valid(i)?new wo(i):Re.near(i)}content(){return m.empty}eq(t){return t instanceof wo&&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 wo(t.resolve(e.pos))}getBookmark(){return new go(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!bo(t)||!Do(t))return false;let i=e.type.spec.allowGapCursor;if(i!=null)return i;let r=e.contentMatchAt(t.index()).defaultType;return r&&r.isTextblock}static findGapCursorFrom(t,e,i=false){t:for(;;){if(!i&&wo.valid(t))return t;let r=t.pos,n=null;for(let i=t.depth;;i--){let s=t.node(i);if(e>0?t.indexAfter(i)<s.childCount:t.index(i)>0){n=s.child(e>0?t.indexAfter(i):t.index(i)-1);break}else if(i==0){return null}r+=e;let l=t.doc.resolve(r);if(wo.valid(l))return l}for(;;){let s=e>0?n.firstChild:n.lastChild;if(!s){if(n.isAtom&&!n.isText&&!je.isSelectable(n)){t=t.doc.resolve(r+n.nodeSize*e);i=false;continue t}break}n=s;r+=e;let l=t.doc.resolve(r);if(wo.valid(l))return l}return null}}}wo.prototype.visible=false;wo.findFrom=wo.findGapCursorFrom;Re.jsonID("gapcursor",wo);class go{constructor(t){this.pos=t}map(t){return new go(t.map(this.pos))}resolve(t){let e=t.resolve(this.pos);return wo.valid(e)?new wo(e):Re.near(e)}}function bo(t){for(let e=t.depth;e>=0;e--){let i=t.index(e),r=t.node(e);if(i==0){if(r.type.spec.isolating)return true;continue}for(let t=r.child(i-1);;t=t.lastChild){if(t.childCount==0&&!t.inlineContent||t.isAtom||t.type.spec.isolating)return true;if(t.inlineContent)return false}}return true}function Do(t){for(let e=t.depth;e>=0;e--){let i=t.indexAfter(e),r=t.node(e);if(i==r.childCount){if(r.type.spec.isolating)return true;continue}for(let t=r.child(i);;t=t.firstChild){if(t.childCount==0&&!t.inlineContent||t.isAtom||t.type.spec.isolating)return true;if(t.inlineContent)return false}}return true}function ko(){return new ri({props:{decorations:xo,createSelectionBetween(t,e,i){return e.pos==i.pos&&wo.valid(i)?new wo(i):null},handleClick:Fo,handleKeyDown:vo,handleDOMEvents:{beforeinput:Eo}}})}const vo=su({ArrowLeft:yo("horiz",-1),ArrowRight:yo("horiz",1),ArrowUp:yo("vert",-1),ArrowDown:yo("vert",1)});function yo(t,e){const i=t=="vert"?e>0?"down":"up":e>0?"right":"left";return function(t,r,n){let s=t.selection;let l=e>0?s.$to:s.$from,u=s.empty;if(s instanceof Ie){if(!n.endOfTextblock(i)||l.depth==0)return false;u=false;l=t.doc.resolve(e>0?l.after():l.before())}let o=wo.findGapCursorFrom(l,e,u);if(!o)return false;if(r)r(t.tr.setSelection(new wo(o)));return true}}function Fo(t,e,i){if(!t||!t.editable)return false;let r=t.state.doc.resolve(e);if(!wo.valid(r))return false;let n=t.posAtCoords({left:i.clientX,top:i.clientY});if(n&&n.inside>-1&&je.isSelectable(t.state.doc.nodeAt(n.inside)))return false;t.dispatch(t.state.tr.setSelection(new wo(r)));return true}function Eo(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof wo))return false;let{$from:i}=t.state.selection;let r=i.parent.contentMatchAt(i.index()).findWrapping(t.state.schema.nodes.text);if(!r)return false;let n=f.empty;for(let t=r.length-1;t>=0;t--)n=f.from(r[t].createAndFill(null,n));let s=t.state.tr.replace(i.pos,i.pos,new m(n,0,0));s.setSelection(Ie.near(s.doc.resolve(i.pos+1)));t.dispatch(s);return false}function xo(t){if(!(t.selection instanceof wo))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return Ns.create(t.doc,[Bs.widget(t.selection.head,e,{key:"gapcursor"})])}function Mo(){var t=arguments[0];if(typeof t=="string")t=document.createElement(t);var e=1,i=arguments[1];if(i&&typeof i=="object"&&i.nodeType==null&&!Array.isArray(i)){for(var r in i)if(Object.prototype.hasOwnProperty.call(i,r)){var n=i[r];if(typeof n=="string")t.setAttribute(r,n);else if(n!=null)t[r]=n}e++}for(;e<arguments.length;e++)Ao(t,arguments[e]);return t}function Ao(t,e){if(typeof e=="string"){t.appendChild(document.createTextNode(e))}else if(e==null);else if(e.nodeType!=null){t.appendChild(e)}else if(Array.isArray(e)){for(var i=0;i<e.length;i++)Ao(t,e[i])}else{throw new RangeError("Unsupported child node: "+e)}}const Co="http://www.w3.org/2000/svg";const So="http://www.w3.org/1999/xlink";const Oo="ProseMirror-icon";function $o(t){let e=0;for(let i=0;i<t.length;i++)e=(e<<5)-e+t.charCodeAt(i)|0;return e}function _o(t,e){let i=(t.nodeType==9?t:t.ownerDocument)||document;let r=i.createElement("div");r.className=Oo;if(e.path){let{path:n,width:s,height:l}=e;let u="pm-icon-"+$o(n).toString(16);if(!i.getElementById(u))Bo(t,u,e);let o=r.appendChild(i.createElementNS(Co,"svg"));o.style.width=s/l+"em";let f=o.appendChild(i.createElementNS(Co,"use"));f.setAttributeNS(So,"href",/([^#]*)/.exec(i.location.toString())[1]+"#"+u)}else if(e.dom){r.appendChild(e.dom.cloneNode(true))}else{let{text:t,css:n}=e;r.appendChild(i.createElement("span")).textContent=t||"";if(n)r.firstChild.style.cssText=n}return r}function Bo(t,e,i){let[r,n]=t.nodeType==9?[t,t.body]:[t.ownerDocument||document,t];let s=r.getElementById(Oo+"-collection");if(!s){s=r.createElementNS(Co,"svg");s.id=Oo+"-collection";s.style.display="none";n.insertBefore(s,n.firstChild)}let l=r.createElementNS(Co,"symbol");l.id=e;l.setAttribute("viewBox","0 0 "+i.width+" "+i.height);let u=l.appendChild(r.createElementNS(Co,"path"));u.setAttribute("d",i.path);s.appendChild(l)}const qo="ProseMirror-menu";class Ro{constructor(t){this.spec=t}render(t){let e=this.spec;let i=e.render?e.render(t):e.icon?_o(t.root,e.icon):e.label?Mo("div",null,No(t,e.label)):null;if(!i)throw new RangeError("MenuItem without icon or label property");if(e.title){const r=typeof e.title==="function"?e.title(t.state):e.title;i.setAttribute("title",No(t,r))}if(e.class)i.classList.add(e.class);if(e.css)i.style.cssText+=e.css;i.addEventListener("mousedown",(r=>{r.preventDefault();if(!i.classList.contains(qo+"-disabled"))e.run(t.state,t.dispatch,t,r)}));function r(t){if(e.select){let r=e.select(t);i.style.display=r?"":"none";if(!r)return false}let r=true;if(e.enable){r=e.enable(t)||false;tf(i,qo+"-disabled",!r)}if(e.active){let n=r&&e.active(t)||false;tf(i,qo+"-active",n)}return true}return{dom:i,update:r}}}function No(t,e){return t._props.translate?t._props.translate(e):e}let zo={time:0,node:null};function To(t){zo.time=Date.now();zo.node=t.target}function Io(t){return Date.now()-100<zo.time&&zo.node&&t.contains(zo.node)}class Po{constructor(t,e={}){this.options=e;this.options=e||{};this.content=Array.isArray(t)?t:[t]}render(t){let e=jo(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Mo("div",{class:qo+"-dropdown "+(this.options.class||""),style:this.options.css},No(t,this.options.label||""));if(this.options.title)r.setAttribute("title",No(t,this.options.title));let n=Mo("div",{class:qo+"-dropdown-wrap"},r);let s=null;let l=null;let u=()=>{if(s&&s.close()){s=null;i.removeEventListener("mousedown",l)}};r.addEventListener("mousedown",(t=>{t.preventDefault();To(t);if(s){u()}else{s=this.expand(n,e.dom);i.addEventListener("mousedown",l=()=>{if(!Io(n))u()})}}));function o(t){let i=e.update(t);n.style.display=i?"":"none";return i}return{dom:n,update:o}}expand(t,e){let i=Mo("div",{class:qo+"-dropdown-menu "+(this.options.class||"")},e);let r=false;function n(){if(r)return false;r=true;t.removeChild(i);return true}t.appendChild(i);return{close:n,node:i}}}function jo(t,e){let i=[],r=[];for(let n=0;n<t.length;n++){let{dom:s,update:l}=t[n].render(e);i.push(Mo("div",{class:qo+"-dropdown-item"},s));r.push(l)}return{dom:i,update:Jo(r,i)}}function Jo(t,e){return i=>{let r=false;for(let n=0;n<t.length;n++){let s=t[n](i);e[n].style.display=s?"":"none";if(s)r=true}return r}}class Lo{constructor(t,e={}){this.options=e;this.content=Array.isArray(t)?t:[t]}render(t){let e=jo(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Mo("div",{class:qo+"-submenu-label"},No(t,this.options.label||""));let n=Mo("div",{class:qo+"-submenu-wrap"},r,Mo("div",{class:qo+"-submenu"},e.dom));let s=null;r.addEventListener("mousedown",(t=>{t.preventDefault();To(t);tf(n,qo+"-submenu-wrap-active",false);if(!s)i.addEventListener("mousedown",s=()=>{if(!Io(n)){n.classList.remove(qo+"-submenu-wrap-active");i.removeEventListener("mousedown",s);s=null}})}));function l(t){let i=e.update(t);n.style.display=i?"":"none";return i}return{dom:n,update:l}}}function Wo(t,e){let i=document.createDocumentFragment();let r=[],n=[];for(let s=0;s<e.length;s++){let l=e[s],u=[],o=[];for(let e=0;e<l.length;e++){let{dom:r,update:n}=l[e].render(t);let s=Mo("span",{class:qo+"item"},r);i.appendChild(s);o.push(s);u.push(n)}if(u.length){r.push(Jo(u,o));if(s<e.length-1)n.push(i.appendChild(Uo()))}}function s(t){let e=false,i=false;for(let s=0;s<r.length;s++){let l=r[s](t);if(s)n[s-1].style.display=i&&l?"":"none";i=l;if(l)e=true}return e}return{dom:i,update:s}}function Uo(){return Mo("span",{class:qo+"separator"})}const Zo={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 Ho=new Ro({title:"Join with above block",run:Iu,select:t=>Iu(t),icon:Zo.join});const Ko=new Ro({title:"Lift out of enclosing block",run:ju,select:t=>ju(t),icon:Zo.lift});const Vo=new Ro({title:"Select parent node",run:Vu,select:t=>Vu(t),icon:Zo.selectParentNode});let Go=new Ro({title:"Undo last change",run:Au,enable:t=>Au(t),icon:Zo.undo});let Xo=new Ro({title:"Redo last undone change",run:Cu,enable:t=>Cu(t),icon:Zo.redo});function Yo(t,e){let i={run(i,r){return io(t,e.attrs)(i,r)},select(i){return io(t,e.attrs)(i)}};for(let t in e)i[t]=e[t];return new Ro(i)}function Qo(t,e){let i=ro(t,e.attrs);let r={run:i,enable(t){return i(t)},active(i){let{$from:r,to:n,node:s}=i.selection;if(s)return s.hasMarkup(t,e.attrs);return n<=r.end()&&r.parent.hasMarkup(t,e.attrs)}};for(let t in e)r[t]=e[t];return new Ro(r)}function tf(t,e,i){if(i)t.classList.add(e);else t.classList.remove(e)}const ef="ProseMirror-menubar";function rf(){if(typeof navigator=="undefined")return false;let t=navigator.userAgent;return!/Edge\/\d/.test(t)&&/AppleWebKit/.test(t)&&/Mobile\/\w+/.test(t)}function nf(t){return new ri({view(e){return new sf(e,t)}})}class sf{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=Mo("div",{class:ef+"-wrapper"});this.menu=this.wrapper.appendChild(Mo("div",{class:ef}));this.menu.className=ef;if(t.dom.parentNode)t.dom.parentNode.replaceChild(this.wrapper,t.dom);this.wrapper.appendChild(t.dom);let{dom:i,update:r}=Wo(this.editorView,this.options.content);this.contentUpdate=r;this.menu.appendChild(i);this.update();if(e.floating&&!rf()){this.updateFloat();let t=of(this.wrapper);this.scrollHandler=e=>{let i=this.editorView.root;if(!(i.body||i).contains(this.wrapper))t.forEach((t=>t.removeEventListener("scroll",this.scrollHandler)));else this.updateFloat(e.target.getBoundingClientRect?e.target:undefined)};t.forEach((t=>t.addEventListener("scroll",this.scrollHandler)))}}update(){this.contentUpdate(this.editorView.state);if(this.floating){this.updateScrollCursor()}else{if(this.menu.offsetWidth!=this.widthForMaxHeight){this.widthForMaxHeight=this.menu.offsetWidth;this.maxHeight=0}if(this.menu.offsetHeight>this.maxHeight){this.maxHeight=this.menu.offsetHeight;this.menu.style.minHeight=this.maxHeight+"px"}}}updateScrollCursor(){let t=this.editorView.root.getSelection();if(!t.focusNode)return;let e=t.getRangeAt(0).getClientRects();let i=e[lf(t)?0:e.length-1];if(!i)return;let r=this.menu.getBoundingClientRect();if(i.top<r.bottom&&i.bottom>r.top){let t=uf(this.wrapper);if(t)t.scrollTop-=r.bottom-i.top}}updateFloat(t){let e=this.wrapper,i=e.getBoundingClientRect(),r=t?Math.max(0,t.getBoundingClientRect().top):0;if(this.floating){if(i.top>=r||i.bottom<this.menu.offsetHeight+10){this.floating=false;this.menu.style.position=this.menu.style.left=this.menu.style.top=this.menu.style.width="";this.menu.style.display="";this.spacer.parentNode.removeChild(this.spacer);this.spacer=null}else{let n=(e.offsetWidth-e.clientWidth)/2;this.menu.style.left=i.left+n+"px";this.menu.style.display=i.top>(this.editorView.dom.ownerDocument.defaultView||window).innerHeight?"none":"";if(t)this.menu.style.top=r+"px"}}else{if(i.top<r&&i.bottom>=this.menu.offsetHeight+10){this.floating=true;let i=this.menu.getBoundingClientRect();this.menu.style.left=i.left+"px";this.menu.style.width=i.width+"px";if(t)this.menu.style.top=r+"px";this.menu.style.position="fixed";this.spacer=Mo("div",{class:ef+"-spacer",style:`height: ${i.height}px`});e.insertBefore(this.spacer,this.menu)}}}destroy(){if(this.wrapper.parentNode)this.wrapper.parentNode.replaceChild(this.editorView.dom,this.wrapper)}}function lf(t){if(t.anchorNode==t.focusNode)return t.anchorOffset>t.focusOffset;return t.anchorNode.compareDocumentPosition(t.focusNode)==Node.DOCUMENT_POSITION_FOLLOWING}function uf(t){for(let e=t.parentNode;e;e=e.parentNode)if(e.scrollHeight>e.clientHeight)return e}function of(t){let e=[t.ownerDocument.defaultView||window];for(let i=t.parentNode;i;i=i.parentNode)e.push(i);return e}class ff{constructor(t,e,i={}){this.match=t;this.match=t;this.handler=typeof e=="string"?hf(e):e;this.undoable=i.undoable!==false;this.inCode=i.inCode||false}}function hf(t){return function(e,i,r,n){let s=t;if(i[1]){let t=i[0].lastIndexOf(i[1]);s+=i[0].slice(t+i[1].length);r+=t;let e=r-n;if(e>0){s=i[0].slice(t-e,t)+s;r=n}}return e.tr.insertText(s,r,n)}}const af=500;function cf({rules:t}){let e=new ri({state:{init(){return null},apply(t,e){let i=t.getMeta(this);if(i)return i;return t.selectionSet||t.docChanged?null:e}},props:{handleTextInput(i,r,n,s){return df(i,r,n,s,t,e)},handleDOMEvents:{compositionend:i=>{setTimeout((()=>{let{$cursor:r}=i.state.selection;if(r)df(i,r.pos,r.pos,"",t,e)}))}}},isInputRules:true});return e}function df(t,e,i,r,n,s){if(t.composing)return false;let l=t.state,u=l.doc.resolve(e);let o=u.parent.textBetween(Math.max(0,u.parentOffset-af),u.parentOffset,null,"")+r;for(let f=0;f<n.length;f++){let h=n[f];if(u.parent.type.spec.code){if(!h.inCode)continue}else if(h.inCode==="only"){continue}let a=h.match.exec(o);let c=a&&h.handler(l,a,e-(a[0].length-r.length),i);if(!c)continue;if(h.undoable)c.setMeta(s,{transform:c,from:e,to:i,text:r});t.dispatch(c);return true}return false}const pf=(t,e)=>{let i=t.plugins;for(let r=0;r<i.length;r++){let n=i[r],s;if(n.spec.isInputRules&&(s=n.getState(t))){if(e){let i=t.tr,r=s.transform;for(let t=r.steps.length-1;t>=0;t--)i.step(r.steps[t].invert(r.docs[t]));if(s.text){let e=i.doc.resolve(s.from).marks();i.replaceWith(s.from,s.to,t.schema.text(s.text,e))}else{i.delete(s.from,s.to)}e(i)}return true}}return false};const mf=new ff(/--$/,"—");const wf=new ff(/\.\.\.$/,"…");const gf=new ff(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");const bf=new ff(/"$/,"”");const Df=new ff(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");const kf=new ff(/'$/,"’");const vf=[gf,bf,Df,kf];function yf(t,e,i=null,r){return new ff(t,((t,n,s,l)=>{let u=i instanceof Function?i(n):i;let o=t.tr.delete(s,l);let f=o.doc.resolve(s),h=f.blockRange(),a=h&&Qt(h,e,u);if(!a)return null;o.wrap(h,a);let c=o.doc.resolve(s-1).nodeBefore;if(c&&c.type==e&&fe(o.doc,s-1)&&(!r||r(n,c)))o.join(s-1);return o}))}function Ff(t,e,i=null){return new ff(t,((t,r,n,s)=>{let l=t.doc.resolve(n);let u=i instanceof Function?i(r):i;if(!l.node(-1).canReplaceWith(l.index(-1),l.indexAfter(-1),e))return null;return t.tr.delete(n,s).setBlockType(n,n,e,u)}))}const Ef="ProseMirror-prompt";function xf(t){let e=document.body.appendChild(document.createElement("div"));e.className=Ef;let i=t=>{if(!e.contains(t.target))r()};setTimeout((()=>window.addEventListener("mousedown",i)),50);let r=()=>{window.removeEventListener("mousedown",i);if(e.parentNode)e.parentNode.removeChild(e)};let n=[];for(let e in t.fields)n.push(t.fields[e].render());let s=document.createElement("button");s.type="submit";s.className=Ef+"-submit";s.textContent="OK";let l=document.createElement("button");l.type="button";l.className=Ef+"-cancel";l.textContent="Cancel";l.addEventListener("click",r);let u=e.appendChild(document.createElement("form"));if(t.title)u.appendChild(document.createElement("h5")).textContent=t.title;n.forEach((t=>{u.appendChild(document.createElement("div")).appendChild(t)}));let o=u.appendChild(document.createElement("div"));o.className=Ef+"-buttons";o.appendChild(s);o.appendChild(document.createTextNode(" "));o.appendChild(l);let f=e.getBoundingClientRect();e.style.top=(window.innerHeight-f.height)/2+"px";e.style.left=(window.innerWidth-f.width)/2+"px";let h=()=>{let e=Mf(t.fields,n);if(e){r();t.callback(e)}};u.addEventListener("submit",(t=>{t.preventDefault();h()}));u.addEventListener("keydown",(t=>{if(t.keyCode==27){t.preventDefault();r()}else if(t.keyCode==13&&!(t.ctrlKey||t.metaKey||t.shiftKey)){t.preventDefault();h()}else if(t.keyCode==9){window.setTimeout((()=>{if(!e.contains(document.activeElement))r()}),500)}}));let a=u.elements[0];if(a)a.focus()}function Mf(t,e){let i=Object.create(null),r=0;for(let n in t){let s=t[n],l=e[r++];let u=s.read(l),o=s.validate(u);if(o){Af(l,o);return null}i[n]=s.clean(u)}return i}function Af(t,e){let i=t.parentNode;let r=i.appendChild(document.createElement("div"));r.style.left=t.offsetLeft+t.offsetWidth+2+"px";r.style.top=t.offsetTop-5+"px";r.className="ProseMirror-invalid";r.textContent=e;setTimeout((()=>i.removeChild(r)),1500)}class Cf{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 Sf extends Cf{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 Of(t,e){let i=t.selection.$from;for(let t=i.depth;t>=0;t--){let r=i.index(t);if(i.node(t).canReplaceWith(r,r,e))return true}return false}function $f(t){return new Ro({title:"Insert image",label:"Image",enable(e){return Of(e,t)},run(e,i,r){let{from:n,to:s}=e.selection,l=null;if(e.selection instanceof je&&e.selection.node.type==t)l=e.selection.node.attrs;xf({title:"Insert image",fields:{src:new Sf({label:"Location",required:true,value:l&&l.src}),title:new Sf({label:"Title",value:l&&l.title}),alt:new Sf({label:"Description",value:l?l.alt:e.doc.textBetween(n,s," ")})},callback(e){r.dispatch(r.state.tr.replaceSelectionWith(t.createAndFill(e)));r.focus()}})}})}function _f(t,e){let i={label:e.title,run:t};for(let t in e)i[t]=e[t];if(!e.enable&&!e.select)i[e.enable?"enable":"select"]=e=>t(e);return new Ro(i)}function Bf(t,e){let{from:i,$from:r,to:n,empty:s}=t.selection;if(s)return!!e.isInSet(t.storedMarks||r.marks());else return t.doc.rangeHasMark(i,n,e)}function qf(t,e){let i={active(e){return Bf(e,t)}};for(let t in e)i[t]=e[t];return _f(so(t),i)}function Rf(t){return new Ro({title:"Add or remove link",icon:Zo.link,active(e){return Bf(e,t)},enable(t){return!t.selection.empty},run(e,i,r){if(Bf(e,t)){so(t)(e,i);return true}xf({title:"Create a link",fields:{href:new Sf({label:"Link target",required:true}),title:new Sf({label:"Title"})},callback(e){so(t,e)(r.state,r.dispatch);r.focus()}})}})}function Nf(t,e){return _f(Pl(t,e.attrs),e)}function zf(t){let e={};let i;if(i=t.marks.strong)e.toggleStrong=qf(i,{title:"Toggle strong style",icon:Zo.strong});if(i=t.marks.em)e.toggleEm=qf(i,{title:"Toggle emphasis",icon:Zo.em});if(i=t.marks.code)e.toggleCode=qf(i,{title:"Toggle code font",icon:Zo.code});if(i=t.marks.link)e.toggleLink=Rf(i);let r;if(r=t.nodes.image)e.insertImage=$f(r);if(r=t.nodes.bullet_list)e.wrapBulletList=Nf(r,{title:"Wrap in bullet list",icon:Zo.bulletList});if(r=t.nodes.ordered_list)e.wrapOrderedList=Nf(r,{title:"Wrap in ordered list",icon:Zo.orderedList});if(r=t.nodes.blockquote)e.wrapBlockQuote=Yo(r,{title:"Wrap in block quote",icon:Zo.blockquote});if(r=t.nodes.paragraph)e.makeParagraph=Qo(r,{title:"Change to paragraph",label:"Plain"});if(r=t.nodes.code_block)e.makeCodeBlock=Qo(r,{title:"Change to code block",label:"Code"});if(r=t.nodes.heading)for(let t=1;t<=10;t++)e["makeHead"+t]=Qo(r,{title:"Change to heading "+t,label:"Level "+t,attrs:{level:t}});if(r=t.nodes.horizontal_rule){let t=r;e.insertHorizontalRule=new Ro({title:"Insert horizontal rule",label:"Horizontal rule",enable(e){return Of(e,t)},run(e,i){i(e.tr.replaceSelectionWith(t.create()))}})}let n=t=>t.filter((t=>t));e.insertMenu=new Po(n([e.insertImage,e.insertHorizontalRule]),{label:"Insert"});e.typeMenu=new Po(n([e.makeParagraph,e.makeCodeBlock,e.makeHead1&&new Lo(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,Ho,Ko,Vo])];e.fullMenu=e.inlineMenu.concat([[e.insertMenu,e.typeMenu]],[[Go,Xo]],e.blockMenu);return e}const Tf=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function If(t,e){let i={},r;function n(t,r){if(e){let i=e[t];if(i===false)return;if(i)t=i}i[t]=r}n("Mod-z",Au);n("Shift-Mod-z",Cu);n("Backspace",pf);if(!Tf)n("Mod-y",Cu);n("Alt-ArrowUp",Iu);n("Alt-ArrowDown",Pu);n("Mod-BracketLeft",ju);n("Escape",Vu);if(r=t.marks.strong){n("Mod-b",so(r));n("Mod-B",so(r))}if(r=t.marks.em){n("Mod-i",so(r));n("Mod-I",so(r))}if(r=t.marks.code)n("Mod-`",so(r));if(r=t.nodes.bullet_list)n("Shift-Ctrl-8",Pl(r));if(r=t.nodes.ordered_list)n("Shift-Ctrl-9",Pl(r));if(r=t.nodes.blockquote)n("Ctrl->",io(r));if(r=t.nodes.hard_break){let t=r,e=lo(Wu,((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}));n("Mod-Enter",e);n("Shift-Enter",e);if(Tf)n("Ctrl-Enter",e)}if(r=t.nodes.list_item){n("Enter",Jl(r));n("Mod-[",Ll(r));n("Mod-]",Zl(r))}if(r=t.nodes.paragraph)n("Shift-Ctrl-0",ro(r));if(r=t.nodes.code_block)n("Shift-Ctrl-\\",ro(r));if(r=t.nodes.heading)for(let t=1;t<=6;t++)n("Shift-Ctrl-"+t,ro(r,{level:t}));if(r=t.nodes.horizontal_rule){let t=r;n("Mod-_",((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}))}return i}function Pf(t){return yf(/^\s*>\s$/,t)}function jf(t){return yf(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order==+t[1]))}function Jf(t){return yf(/^\s*([-+*])\s$/,t)}function Lf(t){return Ff(/^```$/,t)}function Wf(t,e){return Ff(new RegExp("^(#{1,"+e+"})\\s$"),t,(t=>({level:t[1].length})))}function Uf(t){let e=vf.concat(wf,mf),i;if(i=t.nodes.blockquote)e.push(Pf(i));if(i=t.nodes.ordered_list)e.push(jf(i));if(i=t.nodes.bullet_list)e.push(Jf(i));if(i=t.nodes.code_block)e.push(Lf(i));if(i=t.nodes.heading)e.push(Wf(i,6));return cf({rules:e})}function Zf(t){let e=[Uf(t.schema),nu(If(t.schema,t.mapKeys)),nu(co),po(),ko()];if(t.menuBar!==false)e.push(nf({floating:t.floatingMenu!==false,content:t.menuContent||zf(t.schema).fullMenu}));if(t.history!==false)e.push(Mu());return e.concat(new ri({props:{attributes:{class:"ProseMirror-example-setup-style"}}}))}class Hf{constructor(t){this.markNames={bold:"strong",italic:"em",underline:"underline",blockquote:"blockquote",headerlevel1:"headerlevel1",headerlevel2:"headerlevel2",headerlevel3:"headerlevel3",addorremovelink:"link",numberedlist:"ordered_list",list:"bullet_list"};this.schema=t}createCommand(t){if(this.markNames[t]){t=this.markNames[t]}switch(t){case"strong":case"em":case"underline":return this.createToggleMarkCommand(t);case"paragraph":return this.createSetNodeTypeCommand(t);case"headerlevel1":case"headerlevel2":case"headerlevel3":return this.createSetNodeTypeCommand("heading",parseInt(t[t.length-1],10));case"blockquote":return this.createWrapInCommand(t);case"ordered_list":case"bullet_list":return this.createListCommand(t);default:throw new Error(`The Mark "${t}" is not supported`)}}createToggleMarkCommand(t){const e=this.schema.marks[t];if(!e){throw new Error(`Mark "${t}" not found in schema`)}return so(e)}createSetNodeTypeCommand(t,e){const i=this.schema.nodes[t];if(!i){throw new Error(`Node type "${t}" not found in schema`)}if(t==="heading"&&e){return ro(i,{level:e})}else{return ro(i)}}createWrapInCommand(t){const e=this.schema.nodes[t];if(!e){throw new Error(`Node type "${t}" not found in schema`)}return io(e)}createListCommand(t){const e=this.schema.nodes[t];if(!e){throw new Error(`List type "${t}" not found in schema`)}return Pl(e)}}const Kf=()=>{const t=/Macintosh|MacIntel|MacPPC|Mac68K/;if(navigator.userAgent.match(t)){return{mod:"⌘",option:"⌥",shift:"⇧"}}return{mod:"Ctrl",option:"Alt",shift:"Shift"}};const{mod:Vf,shift:Gf}=Kf();const Xf=[{value:"strong",text:"Bold",commandText:`${Vf} B`,icon:"-lime-text-bold",iconOnly:true},{value:"em",text:"Italic",commandText:`${Vf} I`,icon:"-lime-text-italic",iconOnly:true},{separator:true},{value:"headerlevel1",text:"Header Level 1",commandText:`${Vf} ${Gf} 1`,icon:"-lime-text-h-heading-1",iconOnly:true},{value:"headerlevel2",text:"Header Level 2",commandText:`${Vf} ${Gf} 2`,icon:"-lime-text-h-heading-2",iconOnly:true},{value:"headerlevel3",text:"Header Level 3",commandText:`${Vf} ${Gf} 3`,icon:"-lime-text-h-heading-3",iconOnly:true},{separator:true},{value:"bullet_list",text:"Bullet list",icon:"-lime-text-bulleted-list",iconOnly:true},{value:"ordered_list",text:"Numbered list",icon:"-lime-text-ordered-list",iconOnly:true},{value:"blockquote",text:"Blockquote",icon:"-lime-text-blockquote",iconOnly:true}];const Yf={};function Qf(t){let e=Yf[t];if(e){return e}e=Yf[t]=[];for(let t=0;t<128;t++){const i=String.fromCharCode(t);e.push(i)}for(let i=0;i<t.length;i++){const r=t.charCodeAt(i);e[r]="%"+("0"+r.toString(16).toUpperCase()).slice(-2)}return e}function th(t,e){if(typeof e!=="string"){e=th.defaultChars}const i=Qf(e);return t.replace(/(%[a-f0-9]{2})+/gi,(function(t){let e="";for(let r=0,n=t.length;r<n;r+=3){const s=parseInt(t.slice(r+1,r+3),16);if(s<128){e+=i[s];continue}if((s&224)===192&&r+3<n){const i=parseInt(t.slice(r+4,r+6),16);if((i&192)===128){const t=s<<6&1984|i&63;if(t<128){e+="��"}else{e+=String.fromCharCode(t)}r+=3;continue}}if((s&240)===224&&r+6<n){const i=parseInt(t.slice(r+4,r+6),16);const n=parseInt(t.slice(r+7,r+9),16);if((i&192)===128&&(n&192)===128){const t=s<<12&61440|i<<6&4032|n&63;if(t<2048||t>=55296&&t<=57343){e+="���"}else{e+=String.fromCharCode(t)}r+=6;continue}}if((s&248)===240&&r+9<n){const i=parseInt(t.slice(r+4,r+6),16);const n=parseInt(t.slice(r+7,r+9),16);const l=parseInt(t.slice(r+10,r+12),16);if((i&192)===128&&(n&192)===128&&(l&192)===128){let t=s<<18&1835008|i<<12&258048|n<<6&4032|l&63;if(t<65536||t>1114111){e+="����"}else{t-=65536;e+=String.fromCharCode(55296+(t>>10),56320+(t&1023))}r+=9;continue}}e+="�"}return e}))}th.defaultChars=";/?:@&=+$,#";th.componentChars="";const eh={};function ih(t){let e=eh[t];if(e){return e}e=eh[t]=[];for(let t=0;t<128;t++){const i=String.fromCharCode(t);if(/^[0-9a-z]$/i.test(i)){e.push(i)}else{e.push("%"+("0"+t.toString(16).toUpperCase()).slice(-2))}}for(let i=0;i<t.length;i++){e[t.charCodeAt(i)]=t[i]}return e}function rh(t,e,i){if(typeof e!=="string"){i=e;e=rh.defaultChars}if(typeof i==="undefined"){i=true}const r=ih(e);let n="";for(let e=0,s=t.length;e<s;e++){const l=t.charCodeAt(e);if(i&&l===37&&e+2<s){if(/^[0-9a-f]{2}$/i.test(t.slice(e+1,e+3))){n+=t.slice(e,e+3);e+=2;continue}}if(l<128){n+=r[l];continue}if(l>=55296&&l<=57343){if(l>=55296&&l<=56319&&e+1<s){const i=t.charCodeAt(e+1);if(i>=56320&&i<=57343){n+=encodeURIComponent(t[e]+t[e+1]);e++;continue}}n+="%EF%BF%BD";continue}n+=encodeURIComponent(t[e])}return n}rh.defaultChars=";/?:@&=+$,-_.!~*'()#";rh.componentChars="-_.!~*'()";function nh(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 sh(){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 lh=/^([a-z0-9.+-]+:)/i;const uh=/:[0-9]*$/;const oh=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;const fh=["<",">",'"',"`"," ","\r","\n","\t"];const hh=["{","}","|","\\","^","`"].concat(fh);const ah=["'"].concat(hh);const ch=["%","/","?",";","#"].concat(ah);const dh=["/","?","#"];const ph=255;const mh=/^[+a-z0-9A-Z_-]{0,63}$/;const wh=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;const gh={javascript:true,"javascript:":true};const bh={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function Dh(t,e){if(t&&t instanceof sh)return t;const i=new sh;i.parse(t,e);return i}sh.prototype.parse=function(t,e){let i,r,n;let s=t;s=s.trim();if(!e&&t.split("#").length===1){const t=oh.exec(s);if(t){this.pathname=t[1];if(t[2]){this.search=t[2]}return this}}let l=lh.exec(s);if(l){l=l[0];i=l.toLowerCase();this.protocol=l;s=s.substr(l.length)}if(e||l||s.match(/^\/\/[^@\/]+@[^@\/]+/)){n=s.substr(0,2)==="//";if(n&&!(l&&gh[l])){s=s.substr(2);this.slashes=true}}if(!gh[l]&&(n||l&&!bh[l])){let t=-1;for(let e=0;e<dh.length;e++){r=s.indexOf(dh[e]);if(r!==-1&&(t===-1||r<t)){t=r}}let e,i;if(t===-1){i=s.lastIndexOf("@")}else{i=s.lastIndexOf("@",t)}if(i!==-1){e=s.slice(0,i);s=s.slice(i+1);this.auth=e}t=-1;for(let e=0;e<ch.length;e++){r=s.indexOf(ch[e]);if(r!==-1&&(t===-1||r<t)){t=r}}if(t===-1){t=s.length}if(s[t-1]===":"){t--}const n=s.slice(0,t);s=s.slice(t);this.parseHost(n);this.hostname=this.hostname||"";const l=this.hostname[0]==="["&&this.hostname[this.hostname.length-1]==="]";if(!l){const t=this.hostname.split(/\./);for(let e=0,i=t.length;e<i;e++){const i=t[e];if(!i){continue}if(!i.match(mh)){let r="";for(let t=0,e=i.length;t<e;t++){if(i.charCodeAt(t)>127){r+="x"}else{r+=i[t]}}if(!r.match(mh)){const r=t.slice(0,e);const n=t.slice(e+1);const l=i.match(wh);if(l){r.push(l[1]);n.unshift(l[2])}if(n.length){s=n.join(".")+s}this.hostname=r.join(".");break}}}}if(this.hostname.length>ph){this.hostname=""}if(l){this.hostname=this.hostname.substr(1,this.hostname.length-2)}}const u=s.indexOf("#");if(u!==-1){this.hash=s.substr(u);s=s.slice(0,u)}const o=s.indexOf("?");if(o!==-1){this.search=s.substr(o);s=s.slice(0,o)}if(s){this.pathname=s}if(bh[i]&&this.hostname&&!this.pathname){this.pathname=""}return this};sh.prototype.parseHost=function(t){let e=uh.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 kh=Object.freeze({__proto__:null,decode:th,encode:rh,format:nh,parse:Dh});const vh=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;const yh=/[\0-\x1F\x7F-\x9F]/;const Fh=/[\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 Eh=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\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 xh=/[\$\+<->\^`\|~\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 Mh=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;const Ah=Object.freeze({__proto__:null,Any:vh,Cc:yh,Cf:Fh,P:Eh,S:xh,Z:Mh});function Ch(t){return Object.prototype.toString.call(t)}function Sh(t){return Ch(t)==="[object String]"}const Oh=Object.prototype.hasOwnProperty;function $h(t,e){return Oh.call(t,e)}function _h(t){const e=Array.prototype.slice.call(arguments,1);e.forEach((function(e){if(!e){return}if(typeof e!=="object"){throw new TypeError(e+"must be object")}Object.keys(e).forEach((function(i){t[i]=e[i]}))}));return t}function Bh(t,e,i){return[].concat(t.slice(0,e),i,t.slice(e+1))}function qh(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 Rh(t){if(t>65535){t-=65536;const e=55296+(t>>10);const i=56320+(t&1023);return String.fromCharCode(e,i)}return String.fromCharCode(t)}const Nh=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;const zh=/&([a-z#][a-z0-9]{1,31});/gi;const Th=new RegExp(Nh.source+"|"+zh.source,"gi");const Ih=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function Ph(t,e){if(e.charCodeAt(0)===35&&Ih.test(e)){const i=e[1].toLowerCase()==="x"?parseInt(e.slice(2),16):parseInt(e.slice(1),10);if(qh(i)){return Rh(i)}return t}const i=n(t);if(i!==t){return i}return t}function jh(t){if(t.indexOf("\\")<0){return t}return t.replace(Nh,"$1")}function Jh(t){if(t.indexOf("\\")<0&&t.indexOf("&")<0){return t}return t.replace(Th,(function(t,e,i){if(e){return e}return Ph(t,i)}))}const Lh=/[&<>"]/;const Wh=/[&<>"]/g;const Uh={"&":"&","<":"<",">":">",'"':"""};function Zh(t){return Uh[t]}function Hh(t){if(Lh.test(t)){return t.replace(Wh,Zh)}return t}const Kh=/[.?*+^$[\]\\(){}|-]/g;function Vh(t){return t.replace(Kh,"\\$&")}function Gh(t){switch(t){case 9:case 32:return true}return false}function Xh(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 Yh(t){return Eh.test(t)||xh.test(t)}function Qh(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 ta(t){t=t.trim().replace(/\s+/g," ");if("ẞ".toLowerCase()==="Ṿ"){t=t.replace(/ẞ/g,"ß")}return t.toLowerCase().toUpperCase()}const ea={mdurl:kh,ucmicro:Ah};const ia=Object.freeze({__proto__:null,lib:ea,assign:_h,isString:Sh,has:$h,unescapeMd:jh,unescapeAll:Jh,isValidEntityCode:qh,fromCodePoint:Rh,escapeHtml:Hh,arrayReplaceAt:Bh,isSpace:Gh,isWhiteSpace:Xh,isMdAsciiPunct:Qh,isPunctChar:Yh,escapeRE:Vh,normalizeReference:ta});function ra(t,e,i){let r,n,s,l;const u=t.posMax;const o=t.pos;t.pos=e+1;r=1;while(t.pos<u){s=t.src.charCodeAt(t.pos);if(s===93){r--;if(r===0){n=true;break}}l=t.pos;t.md.inline.skipToken(t);if(s===91){if(l===t.pos-1){r++}else if(i){t.pos=o;return-1}}}let f=-1;if(n){f=t.pos}t.pos=o;return f}function na(t,e,i){let r;let n=e;const s={ok:false,pos:0,str:""};if(t.charCodeAt(n)===60){n++;while(n<i){r=t.charCodeAt(n);if(r===10){return s}if(r===60){return s}if(r===62){s.pos=n+1;s.str=Jh(t.slice(e+1,n));s.ok=true;return s}if(r===92&&n+1<i){n+=2;continue}n++}return s}let l=0;while(n<i){r=t.charCodeAt(n);if(r===32){break}if(r<32||r===127){break}if(r===92&&n+1<i){if(t.charCodeAt(n+1)===32){break}n+=2;continue}if(r===40){l++;if(l>32){return s}}if(r===41){if(l===0){break}l--}n++}if(e===n){return s}if(l!==0){return s}s.str=Jh(t.slice(e,n));s.pos=n;s.ok=true;return s}function sa(t,e,i,r){let n;let s=e;const l={ok:false,can_continue:false,pos:0,str:"",marker:0};if(r){l.str=r.str;l.marker=r.marker}else{if(s>=i){return l}let r=t.charCodeAt(s);if(r!==34&&r!==39&&r!==40){return l}e++;s++;if(r===40){r=41}l.marker=r}while(s<i){n=t.charCodeAt(s);if(n===l.marker){l.pos=s+1;l.str+=Jh(t.slice(e,s));l.ok=true;return l}else if(n===40&&l.marker===41){return l}else if(n===92&&s+1<i){s++}s++}l.can_continue=true;l.str+=Jh(t.slice(e,s));return l}const la=Object.freeze({__proto__:null,parseLinkLabel:ra,parseLinkDestination:na,parseLinkTitle:sa});const ua={};ua.code_inline=function(t,e,i,r,n){const s=t[e];return"<code"+n.renderAttrs(s)+">"+Hh(s.content)+"</code>"};ua.code_block=function(t,e,i,r,n){const s=t[e];return"<pre"+n.renderAttrs(s)+"><code>"+Hh(t[e].content)+"</code></pre>\n"};ua.fence=function(t,e,i,r,n){const s=t[e];const l=s.info?Jh(s.info).trim():"";let u="";let o="";if(l){const t=l.split(/(\s+)/g);u=t[0];o=t.slice(2).join("")}let f;if(i.highlight){f=i.highlight(s.content,u,o)||Hh(s.content)}else{f=Hh(s.content)}if(f.indexOf("<pre")===0){return f+"\n"}if(l){const t=s.attrIndex("class");const e=s.attrs?s.attrs.slice():[];if(t<0){e.push(["class",i.langPrefix+u])}else{e[t]=e[t].slice();e[t][1]+=" "+i.langPrefix+u}const r={attrs:e};return`<pre><code${n.renderAttrs(r)}>${f}</code></pre>\n`}return`<pre><code${n.renderAttrs(s)}>${f}</code></pre>\n`};ua.image=function(t,e,i,r,n){const s=t[e];s.attrs[s.attrIndex("alt")][1]=n.renderInlineAsText(s.children,i,r);return n.renderToken(t,e,i)};ua.hardbreak=function(t,e,i){return i.xhtmlOut?"<br />\n":"<br>\n"};ua.softbreak=function(t,e,i){return i.breaks?i.xhtmlOut?"<br />\n":"<br>\n":"\n"};ua.text=function(t,e){return Hh(t[e].content)};ua.html_block=function(t,e){return t[e].content};ua.html_inline=function(t,e){return t[e].content};function oa(){this.rules=_h({},ua)}oa.prototype.renderAttrs=function t(e){let i,r,n;if(!e.attrs){return""}n="";for(i=0,r=e.attrs.length;i<r;i++){n+=" "+Hh(e.attrs[i][0])+'="'+Hh(e.attrs[i][1])+'"'}return n};oa.prototype.renderToken=function t(e,i,r){const n=e[i];let s="";if(n.hidden){return""}if(n.block&&n.nesting!==-1&&i&&e[i-1].hidden){s+="\n"}s+=(n.nesting===-1?"</":"<")+n.tag;s+=this.renderAttrs(n);if(n.nesting===0&&r.xhtmlOut){s+=" /"}let l=false;if(n.block){l=true;if(n.nesting===1){if(i+1<e.length){const t=e[i+1];if(t.type==="inline"||t.hidden){l=false}else if(t.nesting===-1&&t.tag===n.tag){l=false}}}}s+=l?">\n":">";return s};oa.prototype.renderInline=function(t,e,i){let r="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(typeof n[l]!=="undefined"){r+=n[l](t,s,e,i,this)}else{r+=this.renderToken(t,s,e)}}return r};oa.prototype.renderInlineAsText=function(t,e,i){let r="";for(let n=0,s=t.length;n<s;n++){switch(t[n].type){case"text":r+=t[n].content;break;case"image":r+=this.renderInlineAsText(t[n].children,e,i);break;case"html_inline":case"html_block":r+=t[n].content;break;case"softbreak":case"hardbreak":r+="\n";break}}return r};oa.prototype.render=function(t,e,i){let r="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(l==="inline"){r+=this.renderInline(t[s].children,e,i)}else if(typeof n[l]!=="undefined"){r+=n[l](t,s,e,i,this)}else{r+=this.renderToken(t,s,e,i)}}return r};function fa(){this.__rules__=[];this.__cache__=null}fa.prototype.__find__=function(t){for(let e=0;e<this.__rules__.length;e++){if(this.__rules__[e].name===t){return e}}return-1};fa.prototype.__compile__=function(){const t=this;const e=[""];t.__rules__.forEach((function(t){if(!t.enabled){return}t.alt.forEach((function(t){if(e.indexOf(t)<0){e.push(t)}}))}));t.__cache__={};e.forEach((function(e){t.__cache__[e]=[];t.__rules__.forEach((function(i){if(!i.enabled){return}if(e&&i.alt.indexOf(e)<0){return}t.__cache__[e].push(i.fn)}))}))};fa.prototype.at=function(t,e,i){const r=this.__find__(t);const n=i||{};if(r===-1){throw new Error("Parser rule not found: "+t)}this.__rules__[r].fn=e;this.__rules__[r].alt=n.alt||[];this.__cache__=null};fa.prototype.before=function(t,e,i,r){const n=this.__find__(t);const s=r||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n,0,{name:e,enabled:true,fn:i,alt:s.alt||[]});this.__cache__=null};fa.prototype.after=function(t,e,i,r){const n=this.__find__(t);const s=r||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n+1,0,{name:e,enabled:true,fn:i,alt:s.alt||[]});this.__cache__=null};fa.prototype.push=function(t,e,i){const r=i||{};this.__rules__.push({name:t,enabled:true,fn:e,alt:r.alt||[]});this.__cache__=null};fa.prototype.enable=function(t,e){if(!Array.isArray(t)){t=[t]}const i=[];t.forEach((function(t){const r=this.__find__(t);if(r<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[r].enabled=true;i.push(t)}),this);this.__cache__=null;return i};fa.prototype.enableOnly=function(t,e){if(!Array.isArray(t)){t=[t]}this.__rules__.forEach((function(t){t.enabled=false}));this.enable(t,e)};fa.prototype.disable=function(t,e){if(!Array.isArray(t)){t=[t]}const i=[];t.forEach((function(t){const r=this.__find__(t);if(r<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[r].enabled=false;i.push(t)}),this);this.__cache__=null;return i};fa.prototype.getRules=function(t){if(this.__cache__===null){this.__compile__()}return this.__cache__[t]||[]};function ha(t,e,i){this.type=t;this.tag=e;this.attrs=null;this.map=null;this.nesting=i;this.level=0;this.children=null;this.content="";this.markup="";this.info="";this.meta=null;this.block=false;this.hidden=false}ha.prototype.attrIndex=function t(e){if(!this.attrs){return-1}const i=this.attrs;for(let t=0,r=i.length;t<r;t++){if(i[t][0]===e){return t}}return-1};ha.prototype.attrPush=function t(e){if(this.attrs){this.attrs.push(e)}else{this.attrs=[e]}};ha.prototype.attrSet=function t(e,i){const r=this.attrIndex(e);const n=[e,i];if(r<0){this.attrPush(n)}else{this.attrs[r]=n}};ha.prototype.attrGet=function t(e){const i=this.attrIndex(e);let r=null;if(i>=0){r=this.attrs[i][1]}return r};ha.prototype.attrJoin=function t(e,i){const r=this.attrIndex(e);if(r<0){this.attrPush([e,i])}else{this.attrs[r][1]=this.attrs[r][1]+" "+i}};function aa(t,e,i){this.src=t;this.env=i;this.tokens=[];this.inlineMode=false;this.md=e}aa.prototype.Token=ha;const ca=/\r\n?|\n/g;const da=/\0/g;function pa(t){let e;e=t.src.replace(ca,"\n");e=e.replace(da,"�");t.src=e}function ma(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 wa(t){const e=t.tokens;for(let i=0,r=e.length;i<r;i++){const r=e[i];if(r.type==="inline"){t.md.inline.parse(r.content,t.md,t.env,r.children)}}}function ga(t){return/^<a[>\s]/i.test(t)}function ba(t){return/^<\/a\s*>/i.test(t)}function Da(t){const e=t.tokens;if(!t.md.options.linkify){return}for(let i=0,r=e.length;i<r;i++){if(e[i].type!=="inline"||!t.md.linkify.pretest(e[i].content)){continue}let r=e[i].children;let n=0;for(let s=r.length-1;s>=0;s--){const l=r[s];if(l.type==="link_close"){s--;while(r[s].level!==l.level&&r[s].type!=="link_open"){s--}continue}if(l.type==="html_inline"){if(ga(l.content)&&n>0){n--}if(ba(l.content)){n++}}if(n>0){continue}if(l.type==="text"&&t.md.linkify.test(l.content)){const n=l.content;let u=t.md.linkify.match(n);const o=[];let f=l.level;let h=0;if(u.length>0&&u[0].index===0&&s>0&&r[s-1].type==="text_special"){u=u.slice(1)}for(let e=0;e<u.length;e++){const i=u[e].url;const r=t.md.normalizeLink(i);if(!t.md.validateLink(r)){continue}let s=u[e].text;if(!u[e].schema){s=t.md.normalizeLinkText("http://"+s).replace(/^http:\/\//,"")}else if(u[e].schema==="mailto:"&&!/^mailto:/i.test(s)){s=t.md.normalizeLinkText("mailto:"+s).replace(/^mailto:/,"")}else{s=t.md.normalizeLinkText(s)}const l=u[e].index;if(l>h){const e=new t.Token("text","",0);e.content=n.slice(h,l);e.level=f;o.push(e)}const a=new t.Token("link_open","a",1);a.attrs=[["href",r]];a.level=f++;a.markup="linkify";a.info="auto";o.push(a);const c=new t.Token("text","",0);c.content=s;c.level=f;o.push(c);const d=new t.Token("link_close","a",-1);d.level=--f;d.markup="linkify";d.info="auto";o.push(d);h=u[e].lastIndex}if(h<n.length){const e=new t.Token("text","",0);e.content=n.slice(h);e.level=f;o.push(e)}e[i].children=r=Bh(r,s,o)}}}}const ka=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/;const va=/\((c|tm|r)\)/i;const ya=/\((c|tm|r)\)/gi;const Fa={c:"©",r:"®",tm:"™"};function Ea(t,e){return Fa[e.toLowerCase()]}function xa(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){r.content=r.content.replace(ya,Ea)}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function Ma(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){if(ka.test(r.content)){r.content=r.content.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---(?=[^-]|$)/gm,"$1—").replace(/(^|\s)--(?=\s|$)/gm,"$1–").replace(/(^|[^-\s])--(?=[^-\s]|$)/gm,"$1–")}}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function Aa(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(va.test(t.tokens[e].content)){xa(t.tokens[e].children)}if(ka.test(t.tokens[e].content)){Ma(t.tokens[e].children)}}}const Ca=/['"]/;const Sa=/['"]/g;const Oa="’";function $a(t,e,i){return t.slice(0,e)+i+t.slice(e+1)}function _a(t,e){let i;const r=[];for(let n=0;n<t.length;n++){const s=t[n];const l=t[n].level;for(i=r.length-1;i>=0;i--){if(r[i].level<=l){break}}r.length=i+1;if(s.type!=="text"){continue}let u=s.content;let o=0;let f=u.length;t:while(o<f){Sa.lastIndex=o;const h=Sa.exec(u);if(!h){break}let a=true;let c=true;o=h.index+1;const d=h[0]==="'";let p=32;if(h.index-1>=0){p=u.charCodeAt(h.index-1)}else{for(i=n-1;i>=0;i--){if(t[i].type==="softbreak"||t[i].type==="hardbreak")break;if(!t[i].content)continue;p=t[i].content.charCodeAt(t[i].content.length-1);break}}let m=32;if(o<f){m=u.charCodeAt(o)}else{for(i=n+1;i<t.length;i++){if(t[i].type==="softbreak"||t[i].type==="hardbreak")break;if(!t[i].content)continue;m=t[i].content.charCodeAt(0);break}}const w=Qh(p)||Yh(String.fromCharCode(p));const g=Qh(m)||Yh(String.fromCharCode(m));const b=Xh(p);const D=Xh(m);if(D){a=false}else if(g){if(!(b||w)){a=false}}if(b){c=false}else if(w){if(!(D||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=$a(s.content,h.index,Oa)}continue}if(c){for(i=r.length-1;i>=0;i--){let a=r[i];if(r[i].level<l){break}if(a.single===d&&r[i].level===l){a=r[i];let l;let c;if(d){l=e.md.options.quotes[2];c=e.md.options.quotes[3]}else{l=e.md.options.quotes[0];c=e.md.options.quotes[1]}s.content=$a(s.content,h.index,c);t[a.token].content=$a(t[a.token].content,a.pos,l);o+=c.length-1;if(a.token===n){o+=l.length-1}u=s.content;f=u.length;r.length=i;continue t}}}if(a){r.push({token:n,pos:h.index,single:d,level:l})}else if(c&&d){s.content=$a(s.content,h.index,Oa)}}}}function Ba(t){if(!t.md.options.typographer){return}for(let e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"||!Ca.test(t.tokens[e].content)){continue}_a(t.tokens[e].children,t)}}function qa(t){let e,i;const r=t.tokens;const n=r.length;for(let t=0;t<n;t++){if(r[t].type!=="inline")continue;const n=r[t].children;const s=n.length;for(e=0;e<s;e++){if(n[e].type==="text_special"){n[e].type="text"}}for(e=i=0;e<s;e++){if(n[e].type==="text"&&e+1<s&&n[e+1].type==="text"){n[e+1].content=n[e].content+n[e+1].content}else{if(e!==i){n[i]=n[e]}i++}}if(e!==i){n.length=i}}}const Ra=[["normalize",pa],["block",ma],["inline",wa],["linkify",Da],["replacements",Aa],["smartquotes",Ba],["text_join",qa]];function Na(){this.ruler=new fa;for(let t=0;t<Ra.length;t++){this.ruler.push(Ra[t][0],Ra[t][1])}}Na.prototype.process=function(t){const e=this.ruler.getRules("");for(let i=0,r=e.length;i<r;i++){e[i](t)}};Na.prototype.State=aa;function za(t,e,i,r){this.src=t;this.md=e;this.env=i;this.tokens=r;this.bMarks=[];this.eMarks=[];this.tShift=[];this.sCount=[];this.bsCount=[];this.blkIndent=0;this.line=0;this.lineMax=0;this.tight=false;this.ddIndent=-1;this.listIndent=-1;this.parentType="root";this.level=0;const n=this.src;for(let t=0,e=0,i=0,r=0,s=n.length,l=false;e<s;e++){const u=n.charCodeAt(e);if(!l){if(Gh(u)){i++;if(u===9){r+=4-r%4}else{r++}continue}else{l=true}}if(u===10||e===s-1){if(u!==10){e++}this.bMarks.push(t);this.eMarks.push(e);this.tShift.push(i);this.sCount.push(r);this.bsCount.push(0);l=false;i=0;r=0;t=e+1}}this.bMarks.push(n.length);this.eMarks.push(n.length);this.tShift.push(0);this.sCount.push(0);this.bsCount.push(0);this.lineMax=this.bMarks.length-1}za.prototype.push=function(t,e,i){const r=new ha(t,e,i);r.block=true;if(i<0)this.level--;r.level=this.level;if(i>0)this.level++;this.tokens.push(r);return r};za.prototype.isEmpty=function t(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]};za.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};za.prototype.skipSpaces=function t(e){for(let t=this.src.length;e<t;e++){const t=this.src.charCodeAt(e);if(!Gh(t)){break}}return e};za.prototype.skipSpacesBack=function t(e,i){if(e<=i){return e}while(e>i){if(!Gh(this.src.charCodeAt(--e))){return e+1}}return e};za.prototype.skipChars=function t(e,i){for(let t=this.src.length;e<t;e++){if(this.src.charCodeAt(e)!==i){break}}return e};za.prototype.skipCharsBack=function t(e,i,r){if(e<=r){return e}while(e>r){if(i!==this.src.charCodeAt(--e)){return e+1}}return e};za.prototype.getLines=function t(e,i,r,n){if(e>=i){return""}const s=new Array(i-e);for(let t=0,l=e;l<i;l++,t++){let e=0;const u=this.bMarks[l];let o=u;let f;if(l+1<i||n){f=this.eMarks[l]+1}else{f=this.eMarks[l]}while(o<f&&e<r){const t=this.src.charCodeAt(o);if(Gh(t)){if(t===9){e+=4-(e+this.bsCount[l])%4}else{e++}}else if(o-u<this.tShift[l]){e++}else{break}o++}if(e>r){s[t]=new Array(e-r+1).join(" ")+this.src.slice(o,f)}else{s[t]=this.src.slice(o,f)}}return s.join("")};za.prototype.Token=ha;const Ta=65536;function Ia(t,e){const i=t.bMarks[e]+t.tShift[e];const r=t.eMarks[e];return t.src.slice(i,r)}function Pa(t){const e=[];const i=t.length;let r=0;let n=t.charCodeAt(r);let s=false;let l=0;let u="";while(r<i){if(n===124){if(!s){e.push(u+t.substring(l,r));u="";l=r+1}else{u+=t.substring(l,r-1);l=r}}s=n===92;r++;n=t.charCodeAt(r)}e.push(u+t.substring(l));return e}function ja(t,e,i,r){if(e+2>i){return false}let n=e+1;if(t.sCount[n]<t.blkIndent){return false}if(t.sCount[n]-t.blkIndent>=4){return false}let s=t.bMarks[n]+t.tShift[n];if(s>=t.eMarks[n]){return false}const l=t.src.charCodeAt(s++);if(l!==124&&l!==45&&l!==58){return false}if(s>=t.eMarks[n]){return false}const u=t.src.charCodeAt(s++);if(u!==124&&u!==45&&u!==58&&!Gh(u)){return false}if(l===45&&Gh(u)){return false}while(s<t.eMarks[n]){const e=t.src.charCodeAt(s);if(e!==124&&e!==45&&e!==58&&!Gh(e)){return false}s++}let o=Ia(t,e+1);let f=o.split("|");const h=[];for(let t=0;t<f.length;t++){const e=f[t].trim();if(!e){if(t===0||t===f.length-1){continue}else{return false}}if(!/^:?-+:?$/.test(e)){return false}if(e.charCodeAt(e.length-1)===58){h.push(e.charCodeAt(0)===58?"center":"right")}else if(e.charCodeAt(0)===58){h.push("left")}else{h.push("")}}o=Ia(t,e).trim();if(o.indexOf("|")===-1){return false}if(t.sCount[e]-t.blkIndent>=4){return false}f=Pa(o);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();const a=f.length;if(a===0||a!==h.length){return false}if(r){return true}const c=t.parentType;t.parentType="table";const d=t.md.block.ruler.getRules("blockquote");const p=t.push("table_open","table",1);const m=[e,0];p.map=m;const w=t.push("thead_open","thead",1);w.map=[e,e+1];const g=t.push("tr_open","tr",1);g.map=[e,e+1];for(let e=0;e<f.length;e++){const i=t.push("th_open","th",1);if(h[e]){i.attrs=[["style","text-align:"+h[e]]]}const r=t.push("inline","",0);r.content=f[e].trim();r.children=[];t.push("th_close","th",-1)}t.push("tr_close","tr",-1);t.push("thead_close","thead",-1);let b;let D=0;for(n=e+2;n<i;n++){if(t.sCount[n]<t.blkIndent){break}let r=false;for(let e=0,s=d.length;e<s;e++){if(d[e](t,n,i,true)){r=true;break}}if(r){break}o=Ia(t,n).trim();if(!o){break}if(t.sCount[n]-t.blkIndent>=4){break}f=Pa(o);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();D+=a-f.length;if(D>Ta){break}if(n===e+2){const i=t.push("tbody_open","tbody",1);i.map=b=[e+2,0]}const s=t.push("tr_open","tr",1);s.map=[n,n+1];for(let e=0;e<a;e++){const i=t.push("td_open","td",1);if(h[e]){i.attrs=[["style","text-align:"+h[e]]]}const r=t.push("inline","",0);r.content=f[e]?f[e].trim():"";r.children=[];t.push("td_close","td",-1)}t.push("tr_close","tr",-1)}if(b){t.push("tbody_close","tbody",-1);b[1]=n}t.push("table_close","table",-1);m[1]=n;t.parentType=c;t.line=n;return true}function Ja(t,e,i){if(t.sCount[e]-t.blkIndent<4){return false}let r=e+1;let n=r;while(r<i){if(t.isEmpty(r)){r++;continue}if(t.sCount[r]-t.blkIndent>=4){r++;n=r;continue}break}t.line=n;const s=t.push("code_block","code",0);s.content=t.getLines(e,n,4+t.blkIndent,false)+"\n";s.map=[e,t.line];return true}function La(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}if(n+3>s){return false}const l=t.src.charCodeAt(n);if(l!==126&&l!==96){return false}let u=n;n=t.skipChars(n,l);let o=n-u;if(o<3){return false}const f=t.src.slice(u,n);const h=t.src.slice(n,s);if(l===96){if(h.indexOf(String.fromCharCode(l))>=0){return false}}if(r){return true}let a=e;let c=false;for(;;){a++;if(a>=i){break}n=u=t.bMarks[a]+t.tShift[a];s=t.eMarks[a];if(n<s&&t.sCount[a]<t.blkIndent){break}if(t.src.charCodeAt(n)!==l){continue}if(t.sCount[a]-t.blkIndent>=4){continue}n=t.skipChars(n,l);if(n-u<o){continue}n=t.skipSpaces(n);if(n<s){continue}c=true;break}o=t.sCount[e];t.line=a+(c?1:0);const d=t.push("fence","code",0);d.info=h;d.content=t.getLines(e+1,a,o,true);d.markup=f;d.map=[e,t.line];return true}function Wa(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];const l=t.lineMax;if(t.sCount[e]-t.blkIndent>=4){return false}if(t.src.charCodeAt(n)!==62){return false}if(r){return true}const u=[];const o=[];const f=[];const h=[];const a=t.md.block.ruler.getRules("blockquote");const c=t.parentType;t.parentType="blockquote";let d=false;let p;for(p=e;p<i;p++){const e=t.sCount[p]<t.blkIndent;n=t.bMarks[p]+t.tShift[p];s=t.eMarks[p];if(n>=s){break}if(t.src.charCodeAt(n++)===62&&!e){let e=t.sCount[p]+1;let i;let r;if(t.src.charCodeAt(n)===32){n++;e++;r=false;i=true}else if(t.src.charCodeAt(n)===9){i=true;if((t.bsCount[p]+e)%4===3){n++;e++;r=false}else{r=true}}else{i=false}let l=e;u.push(t.bMarks[p]);t.bMarks[p]=n;while(n<s){const e=t.src.charCodeAt(n);if(Gh(e)){if(e===9){l+=4-(l+t.bsCount[p]+(r?1:0))%4}else{l++}}else{break}n++}d=n>=s;o.push(t.bsCount[p]);t.bsCount[p]=t.sCount[p]+1+(i?1:0);f.push(t.sCount[p]);t.sCount[p]=l-e;h.push(t.tShift[p]);t.tShift[p]=n-t.bMarks[p];continue}if(d){break}let r=false;for(let e=0,n=a.length;e<n;e++){if(a[e](t,p,i,true)){r=true;break}}if(r){t.lineMax=p;if(t.blkIndent!==0){u.push(t.bMarks[p]);o.push(t.bsCount[p]);h.push(t.tShift[p]);f.push(t.sCount[p]);t.sCount[p]-=t.blkIndent}break}u.push(t.bMarks[p]);o.push(t.bsCount[p]);h.push(t.tShift[p]);f.push(t.sCount[p]);t.sCount[p]=-1}const m=t.blkIndent;t.blkIndent=0;const w=t.push("blockquote_open","blockquote",1);w.markup=">";const g=[e,0];w.map=g;t.md.block.tokenize(t,e,p);const b=t.push("blockquote_close","blockquote",-1);b.markup=">";t.lineMax=l;t.parentType=c;g[1]=t.line;for(let i=0;i<h.length;i++){t.bMarks[i+e]=u[i];t.tShift[i+e]=h[i];t.sCount[i+e]=f[i];t.bsCount[i+e]=o[i]}t.blkIndent=m;return true}function Ua(t,e,i,r){const n=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}let s=t.bMarks[e]+t.tShift[e];const l=t.src.charCodeAt(s++);if(l!==42&&l!==45&&l!==95){return false}let u=1;while(s<n){const e=t.src.charCodeAt(s++);if(e!==l&&!Gh(e)){return false}if(e===l){u++}}if(u<3){return false}if(r){return true}t.line=e+1;const o=t.push("hr","hr",0);o.map=[e,t.line];o.markup=Array(u+1).join(String.fromCharCode(l));return true}function Za(t,e){const i=t.eMarks[e];let r=t.bMarks[e]+t.tShift[e];const n=t.src.charCodeAt(r++);if(n!==42&&n!==45&&n!==43){return-1}if(r<i){const e=t.src.charCodeAt(r);if(!Gh(e)){return-1}}return r}function Ha(t,e){const i=t.bMarks[e]+t.tShift[e];const r=t.eMarks[e];let n=i;if(n+1>=r){return-1}let s=t.src.charCodeAt(n++);if(s<48||s>57){return-1}for(;;){if(n>=r){return-1}s=t.src.charCodeAt(n++);if(s>=48&&s<=57){if(n-i>=10){return-1}continue}if(s===41||s===46){break}return-1}if(n<r){s=t.src.charCodeAt(n);if(!Gh(s)){return-1}}return n}function Ka(t,e){const i=t.level+2;for(let r=e+2,n=t.tokens.length-2;r<n;r++){if(t.tokens[r].level===i&&t.tokens[r].type==="paragraph_open"){t.tokens[r+2].hidden=true;t.tokens[r].hidden=true;r+=2}}}function Va(t,e,i,r){let n,s,l,u;let o=e;let f=true;if(t.sCount[o]-t.blkIndent>=4){return false}if(t.listIndent>=0&&t.sCount[o]-t.listIndent>=4&&t.sCount[o]<t.blkIndent){return false}let h=false;if(r&&t.parentType==="paragraph"){if(t.sCount[o]>=t.blkIndent){h=true}}let a;let c;let d;if((d=Ha(t,o))>=0){a=true;l=t.bMarks[o]+t.tShift[o];c=Number(t.src.slice(l,d-1));if(h&&c!==1)return false}else if((d=Za(t,o))>=0){a=false}else{return false}if(h){if(t.skipSpaces(d)>=t.eMarks[o])return false}if(r){return true}const p=t.src.charCodeAt(d-1);const m=t.tokens.length;if(a){u=t.push("ordered_list_open","ol",1);if(c!==1){u.attrs=[["start",c]]}}else{u=t.push("bullet_list_open","ul",1)}const w=[o,0];u.map=w;u.markup=String.fromCharCode(p);let g=false;const b=t.md.block.ruler.getRules("list");const D=t.parentType;t.parentType="list";while(o<i){s=d;n=t.eMarks[o];const e=t.sCount[o]+d-(t.bMarks[o]+t.tShift[o]);let r=e;while(s<n){const e=t.src.charCodeAt(s);if(e===9){r+=4-(r+t.bsCount[o])%4}else if(e===32){r++}else{break}s++}const h=s;let c;if(h>=n){c=1}else{c=r-e}if(c>4){c=1}const m=e+c;u=t.push("list_item_open","li",1);u.markup=String.fromCharCode(p);const w=[o,0];u.map=w;if(a){u.info=t.src.slice(l,d-1)}const D=t.tight;const k=t.tShift[o];const v=t.sCount[o];const y=t.listIndent;t.listIndent=t.blkIndent;t.blkIndent=m;t.tight=true;t.tShift[o]=h-t.bMarks[o];t.sCount[o]=r;if(h>=n&&t.isEmpty(o+1)){t.line=Math.min(t.line+2,i)}else{t.md.block.tokenize(t,o,i,true)}if(!t.tight||g){f=false}g=t.line-o>1&&t.isEmpty(t.line-1);t.blkIndent=t.listIndent;t.listIndent=y;t.tShift[o]=k;t.sCount[o]=v;t.tight=D;u=t.push("list_item_close","li",-1);u.markup=String.fromCharCode(p);o=t.line;w[1]=o;if(o>=i){break}if(t.sCount[o]<t.blkIndent){break}if(t.sCount[o]-t.blkIndent>=4){break}let F=false;for(let e=0,r=b.length;e<r;e++){if(b[e](t,o,i,true)){F=true;break}}if(F){break}if(a){d=Ha(t,o);if(d<0){break}l=t.bMarks[o]+t.tShift[o]}else{d=Za(t,o);if(d<0){break}}if(p!==t.src.charCodeAt(d-1)){break}}if(a){u=t.push("ordered_list_close","ol",-1)}else{u=t.push("bullet_list_close","ul",-1)}u.markup=String.fromCharCode(p);w[1]=o;t.line=o;t.parentType=D;if(f){Ka(t,m)}return true}function Ga(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];let l=e+1;if(t.sCount[e]-t.blkIndent>=4){return false}if(t.src.charCodeAt(n)!==91){return false}function u(e){const i=t.lineMax;if(e>=i||t.isEmpty(e)){return null}let r=false;if(t.sCount[e]-t.blkIndent>3){r=true}if(t.sCount[e]<0){r=true}if(!r){const r=t.md.block.ruler.getRules("reference");const n=t.parentType;t.parentType="reference";let s=false;for(let n=0,l=r.length;n<l;n++){if(r[n](t,e,i,true)){s=true;break}}t.parentType=n;if(s){return null}}const n=t.bMarks[e]+t.tShift[e];const s=t.eMarks[e];return t.src.slice(n,s+1)}let o=t.src.slice(n,s+1);s=o.length;let f=-1;for(n=1;n<s;n++){const t=o.charCodeAt(n);if(t===91){return false}else if(t===93){f=n;break}else if(t===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}else if(t===92){n++;if(n<s&&o.charCodeAt(n)===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}}}if(f<0||o.charCodeAt(f+1)!==58){return false}for(n=f+2;n<s;n++){const t=o.charCodeAt(n);if(t===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}else if(Gh(t));else{break}}const h=t.md.helpers.parseLinkDestination(o,n,s);if(!h.ok){return false}const a=t.md.normalizeLink(h.str);if(!t.md.validateLink(a)){return false}n=h.pos;const c=n;const d=l;const p=n;for(;n<s;n++){const t=o.charCodeAt(n);if(t===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}else if(Gh(t));else{break}}let m=t.md.helpers.parseLinkTitle(o,n,s);while(m.can_continue){const e=u(l);if(e===null)break;o+=e;n=s;s=o.length;l++;m=t.md.helpers.parseLinkTitle(o,n,s,m)}let w;if(n<s&&p!==n&&m.ok){w=m.str;n=m.pos}else{w="";n=c;l=d}while(n<s){const t=o.charCodeAt(n);if(!Gh(t)){break}n++}if(n<s&&o.charCodeAt(n)!==10){if(w){w="";n=c;l=d;while(n<s){const t=o.charCodeAt(n);if(!Gh(t)){break}n++}}}if(n<s&&o.charCodeAt(n)!==10){return false}const g=ta(o.slice(1,f));if(!g){return false}if(r){return true}if(typeof t.env.references==="undefined"){t.env.references={}}if(typeof t.env.references[g]==="undefined"){t.env.references[g]={title:w,href:a}}t.line=l;return true}const Xa=["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 Ya="[a-zA-Z_:][a-zA-Z0-9:._-]*";const Qa="[^\"'=<>`\\x00-\\x20]+";const tc="'[^']*'";const ec='"[^"]*"';const ic="(?:"+Qa+"|"+tc+"|"+ec+")";const rc="(?:\\s+"+Ya+"(?:\\s*=\\s*"+ic+")?)";const nc="<[A-Za-z][A-Za-z0-9\\-]*"+rc+"*\\s*\\/?>";const sc="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>";const lc="\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e";const uc="<[?][\\s\\S]*?[?]>";const oc="<![A-Za-z][^>]*>";const fc="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>";const hc=new RegExp("^(?:"+nc+"|"+sc+"|"+lc+"|"+uc+"|"+oc+"|"+fc+")");const ac=new RegExp("^(?:"+nc+"|"+sc+")");const cc=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,true],[/^<!--/,/-->/,true],[/^<\?/,/\?>/,true],[/^<![A-Z]/,/>/,true],[/^<!\[CDATA\[/,/\]\]>/,true],[new RegExp("^</?("+Xa.join("|")+")(?=(\\s|/?>|$))","i"),/^$/,true],[new RegExp(ac.source+"\\s*$"),/^$/,false]];function dc(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}if(!t.md.options.html){return false}if(t.src.charCodeAt(n)!==60){return false}let l=t.src.slice(n,s);let u=0;for(;u<cc.length;u++){if(cc[u][0].test(l)){break}}if(u===cc.length){return false}if(r){return cc[u][2]}let o=e+1;if(!cc[u][1].test(l)){for(;o<i;o++){if(t.sCount[o]<t.blkIndent){break}n=t.bMarks[o]+t.tShift[o];s=t.eMarks[o];l=t.src.slice(n,s);if(cc[u][1].test(l)){if(l.length!==0){o++}break}}}t.line=o;const f=t.push("html_block","",0);f.map=[e,o];f.content=t.getLines(e,o,t.blkIndent,true);return true}function pc(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}let l=t.src.charCodeAt(n);if(l!==35||n>=s){return false}let u=1;l=t.src.charCodeAt(++n);while(l===35&&n<s&&u<=6){u++;l=t.src.charCodeAt(++n)}if(u>6||n<s&&!Gh(l)){return false}if(r){return true}s=t.skipSpacesBack(s,n);const o=t.skipCharsBack(s,35,n);if(o>n&&Gh(t.src.charCodeAt(o-1))){s=o}t.line=e+1;const f=t.push("heading_open","h"+String(u),1);f.markup="########".slice(0,u);f.map=[e,t.line];const h=t.push("inline","",0);h.content=t.src.slice(n,s).trim();h.map=[e,t.line];h.children=[];const a=t.push("heading_close","h"+String(u),-1);a.markup="########".slice(0,u);return true}function mc(t,e,i){const r=t.md.block.ruler.getRules("paragraph");if(t.sCount[e]-t.blkIndent>=4){return false}const n=t.parentType;t.parentType="paragraph";let s=0;let l;let u=e+1;for(;u<i&&!t.isEmpty(u);u++){if(t.sCount[u]-t.blkIndent>3){continue}if(t.sCount[u]>=t.blkIndent){let e=t.bMarks[u]+t.tShift[u];const i=t.eMarks[u];if(e<i){l=t.src.charCodeAt(e);if(l===45||l===61){e=t.skipChars(e,l);e=t.skipSpaces(e);if(e>=i){s=l===61?1:2;break}}}}if(t.sCount[u]<0){continue}let e=false;for(let n=0,s=r.length;n<s;n++){if(r[n](t,u,i,true)){e=true;break}}if(e){break}}if(!s){return false}const o=t.getLines(e,u,t.blkIndent,false).trim();t.line=u+1;const f=t.push("heading_open","h"+String(s),1);f.markup=String.fromCharCode(l);f.map=[e,t.line];const h=t.push("inline","",0);h.content=o;h.map=[e,t.line-1];h.children=[];const a=t.push("heading_close","h"+String(s),-1);a.markup=String.fromCharCode(l);t.parentType=n;return true}function wc(t,e,i){const r=t.md.block.ruler.getRules("paragraph");const n=t.parentType;let s=e+1;t.parentType="paragraph";for(;s<i&&!t.isEmpty(s);s++){if(t.sCount[s]-t.blkIndent>3){continue}if(t.sCount[s]<0){continue}let e=false;for(let n=0,l=r.length;n<l;n++){if(r[n](t,s,i,true)){e=true;break}}if(e){break}}const l=t.getLines(e,s,t.blkIndent,false).trim();t.line=s;const u=t.push("paragraph_open","p",1);u.map=[e,t.line];const o=t.push("inline","",0);o.content=l;o.map=[e,t.line];o.children=[];t.push("paragraph_close","p",-1);t.parentType=n;return true}const gc=[["table",ja,["paragraph","reference"]],["code",Ja],["fence",La,["paragraph","reference","blockquote","list"]],["blockquote",Wa,["paragraph","reference","blockquote","list"]],["hr",Ua,["paragraph","reference","blockquote","list"]],["list",Va,["paragraph","reference","blockquote"]],["reference",Ga],["html_block",dc,["paragraph","reference","blockquote"]],["heading",pc,["paragraph","reference","blockquote"]],["lheading",mc],["paragraph",wc]];function bc(){this.ruler=new fa;for(let t=0;t<gc.length;t++){this.ruler.push(gc[t][0],gc[t][1],{alt:(gc[t][2]||[]).slice()})}}bc.prototype.tokenize=function(t,e,i){const r=this.ruler.getRules("");const n=r.length;const s=t.md.options.maxNesting;let l=e;let u=false;while(l<i){t.line=l=t.skipEmptyLines(l);if(l>=i){break}if(t.sCount[l]<t.blkIndent){break}if(t.level>=s){t.line=i;break}const e=t.line;let o=false;for(let s=0;s<n;s++){o=r[s](t,l,i,false);if(o){if(e>=t.line){throw new Error("block rule didn't increment state.line")}break}}if(!o)throw new Error("none of the block rules matched");t.tight=!u;if(t.isEmpty(t.line-1)){u=true}l=t.line;if(l<i&&t.isEmpty(l)){u=true;l++;t.line=l}}};bc.prototype.parse=function(t,e,i,r){if(!t){return}const n=new this.State(t,e,i,r);this.tokenize(n,n.line,n.lineMax)};bc.prototype.State=za;function Dc(t,e,i,r){this.src=t;this.env=i;this.md=e;this.tokens=r;this.tokens_meta=Array(r.length);this.pos=0;this.posMax=this.src.length;this.level=0;this.pending="";this.pendingLevel=0;this.cache={};this.delimiters=[];this._prev_delimiters=[];this.backticks={};this.backticksScanned=false;this.linkLevel=0}Dc.prototype.pushPending=function(){const t=new ha("text","",0);t.content=this.pending;t.level=this.pendingLevel;this.tokens.push(t);this.pending="";return t};Dc.prototype.push=function(t,e,i){if(this.pending){this.pushPending()}const r=new ha(t,e,i);let n=null;if(i<0){this.level--;this.delimiters=this._prev_delimiters.pop()}r.level=this.level;if(i>0){this.level++;this._prev_delimiters.push(this.delimiters);this.delimiters=[];n={delimiters:this.delimiters}}this.pendingLevel=this.level;this.tokens.push(r);this.tokens_meta.push(n);return r};Dc.prototype.scanDelims=function(t,e){const i=this.posMax;const r=this.src.charCodeAt(t);const n=t>0?this.src.charCodeAt(t-1):32;let s=t;while(s<i&&this.src.charCodeAt(s)===r){s++}const l=s-t;const u=s<i?this.src.charCodeAt(s):32;const o=Qh(n)||Yh(String.fromCharCode(n));const f=Qh(u)||Yh(String.fromCharCode(u));const h=Xh(n);const a=Xh(u);const c=!a&&(!f||h||o);const d=!h&&(!o||a||f);const p=c&&(e||!d||o);const m=d&&(e||!c||f);return{can_open:p,can_close:m,length:l}};Dc.prototype.Token=ha;function kc(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 vc(t,e){let i=t.pos;while(i<t.posMax&&!kc(t.src.charCodeAt(i))){i++}if(i===t.pos){return false}if(!e){t.pending+=t.src.slice(t.pos,i)}t.pos=i;return true}const yc=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function Fc(t,e){if(!t.md.options.linkify)return false;if(t.linkLevel>0)return false;const i=t.pos;const r=t.posMax;if(i+3>r)return false;if(t.src.charCodeAt(i)!==58)return false;if(t.src.charCodeAt(i+1)!==47)return false;if(t.src.charCodeAt(i+2)!==47)return false;const n=t.pending.match(yc);if(!n)return false;const s=n[1];const l=t.md.linkify.matchAtStart(t.src.slice(i-s.length));if(!l)return false;let u=l.url;if(u.length<=s.length)return false;u=u.replace(/\*+$/,"");const o=t.md.normalizeLink(u);if(!t.md.validateLink(o))return false;if(!e){t.pending=t.pending.slice(0,-s.length);const e=t.push("link_open","a",1);e.attrs=[["href",o]];e.markup="linkify";e.info="auto";const i=t.push("text","",0);i.content=t.md.normalizeLinkText(u);const r=t.push("link_close","a",-1);r.markup="linkify";r.info="auto"}t.pos+=u.length-s.length;return true}function Ec(t,e){let i=t.pos;if(t.src.charCodeAt(i)!==10){return false}const r=t.pending.length-1;const n=t.posMax;if(!e){if(r>=0&&t.pending.charCodeAt(r)===32){if(r>=1&&t.pending.charCodeAt(r-1)===32){let e=r-1;while(e>=1&&t.pending.charCodeAt(e-1)===32)e--;t.pending=t.pending.slice(0,e);t.push("hardbreak","br",0)}else{t.pending=t.pending.slice(0,-1);t.push("softbreak","br",0)}}else{t.push("softbreak","br",0)}}i++;while(i<n&&Gh(t.src.charCodeAt(i))){i++}t.pos=i;return true}const xc=[];for(let t=0;t<256;t++){xc.push(0)}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(t){xc[t.charCodeAt(0)]=1}));function Mc(t,e){let i=t.pos;const r=t.posMax;if(t.src.charCodeAt(i)!==92)return false;i++;if(i>=r)return false;let n=t.src.charCodeAt(i);if(n===10){if(!e){t.push("hardbreak","br",0)}i++;while(i<r){n=t.src.charCodeAt(i);if(!Gh(n))break;i++}t.pos=i;return true}let s=t.src[i];if(n>=55296&&n<=56319&&i+1<r){const e=t.src.charCodeAt(i+1);if(e>=56320&&e<=57343){s+=t.src[i+1];i++}}const l="\\"+s;if(!e){const e=t.push("text_special","",0);if(n<256&&xc[n]!==0){e.content=s}else{e.content=l}e.markup=l;e.info="escape"}t.pos=i+1;return true}function Ac(t,e){let i=t.pos;const r=t.src.charCodeAt(i);if(r!==96){return false}const n=i;i++;const s=t.posMax;while(i<s&&t.src.charCodeAt(i)===96){i++}const l=t.src.slice(n,i);const u=l.length;if(t.backticksScanned&&(t.backticks[u]||0)<=n){if(!e)t.pending+=l;t.pos+=u;return true}let o=i;let f;while((f=t.src.indexOf("`",o))!==-1){o=f+1;while(o<s&&t.src.charCodeAt(o)===96){o++}const r=o-f;if(r===u){if(!e){const e=t.push("code_inline","code",0);e.markup=l;e.content=t.src.slice(i,f).replace(/\n/g," ").replace(/^ (.+) $/,"$1")}t.pos=o;return true}t.backticks[r]=f}t.backticksScanned=true;if(!e)t.pending+=l;t.pos+=u;return true}function Cc(t,e){const i=t.pos;const r=t.src.charCodeAt(i);if(e){return false}if(r!==126){return false}const n=t.scanDelims(t.pos,true);let s=n.length;const l=String.fromCharCode(r);if(s<2){return false}let u;if(s%2){u=t.push("text","",0);u.content=l;s--}for(let e=0;e<s;e+=2){u=t.push("text","",0);u.content=l+l;t.delimiters.push({marker:r,length:0,token:t.tokens.length-1,end:-1,open:n.can_open,close:n.can_close})}t.pos+=n.length;return true}function Sc(t,e){let i;const r=[];const n=e.length;for(let s=0;s<n;s++){const n=e[s];if(n.marker!==126){continue}if(n.end===-1){continue}const l=e[n.end];i=t.tokens[n.token];i.type="s_open";i.tag="s";i.nesting=1;i.markup="~~";i.content="";i=t.tokens[l.token];i.type="s_close";i.tag="s";i.nesting=-1;i.markup="~~";i.content="";if(t.tokens[l.token-1].type==="text"&&t.tokens[l.token-1].content==="~"){r.push(l.token-1)}}while(r.length){const e=r.pop();let n=e+1;while(n<t.tokens.length&&t.tokens[n].type==="s_close"){n++}n--;if(e!==n){i=t.tokens[n];t.tokens[n]=t.tokens[e];t.tokens[e]=i}}}function Oc(t){const e=t.tokens_meta;const i=t.tokens_meta.length;Sc(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){Sc(t,e[r].delimiters)}}}const $c={tokenize:Cc,postProcess:Oc};function _c(t,e){const i=t.pos;const r=t.src.charCodeAt(i);if(e){return false}if(r!==95&&r!==42){return false}const n=t.scanDelims(t.pos,r===42);for(let e=0;e<n.length;e++){const e=t.push("text","",0);e.content=String.fromCharCode(r);t.delimiters.push({marker:r,length:n.length,token:t.tokens.length-1,end:-1,open:n.can_open,close:n.can_close})}t.pos+=n.length;return true}function Bc(t,e){const i=e.length;for(let r=i-1;r>=0;r--){const i=e[r];if(i.marker!==95&&i.marker!==42){continue}if(i.end===-1){continue}const n=e[i.end];const s=r>0&&e[r-1].end===i.end+1&&e[r-1].marker===i.marker&&e[r-1].token===i.token-1&&e[i.end+1].token===n.token+1;const l=String.fromCharCode(i.marker);const u=t.tokens[i.token];u.type=s?"strong_open":"em_open";u.tag=s?"strong":"em";u.nesting=1;u.markup=s?l+l:l;u.content="";const o=t.tokens[n.token];o.type=s?"strong_close":"em_close";o.tag=s?"strong":"em";o.nesting=-1;o.markup=s?l+l:l;o.content="";if(s){t.tokens[e[r-1].token].content="";t.tokens[e[i.end+1].token].content="";r--}}}function qc(t){const e=t.tokens_meta;const i=t.tokens_meta.length;Bc(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){Bc(t,e[r].delimiters)}}}const Rc={tokenize:_c,postProcess:qc};function Nc(t,e){let i,r,n,s;let l="";let u="";let o=t.pos;let f=true;if(t.src.charCodeAt(t.pos)!==91){return false}const h=t.pos;const a=t.posMax;const c=t.pos+1;const d=t.md.helpers.parseLinkLabel(t,t.pos,true);if(d<0){return false}let p=d+1;if(p<a&&t.src.charCodeAt(p)===40){f=false;p++;for(;p<a;p++){i=t.src.charCodeAt(p);if(!Gh(i)&&i!==10){break}}if(p>=a){return false}o=p;n=t.md.helpers.parseLinkDestination(t.src,p,t.posMax);if(n.ok){l=t.md.normalizeLink(n.str);if(t.md.validateLink(l)){p=n.pos}else{l=""}o=p;for(;p<a;p++){i=t.src.charCodeAt(p);if(!Gh(i)&&i!==10){break}}n=t.md.helpers.parseLinkTitle(t.src,p,t.posMax);if(p<a&&o!==p&&n.ok){u=n.str;p=n.pos;for(;p<a;p++){i=t.src.charCodeAt(p);if(!Gh(i)&&i!==10){break}}}}if(p>=a||t.src.charCodeAt(p)!==41){f=true}p++}if(f){if(typeof t.env.references==="undefined"){return false}if(p<a&&t.src.charCodeAt(p)===91){o=p+1;p=t.md.helpers.parseLinkLabel(t,p);if(p>=0){r=t.src.slice(o,p++)}else{p=d+1}}else{p=d+1}if(!r){r=t.src.slice(c,d)}s=t.env.references[ta(r)];if(!s){t.pos=h;return false}l=s.href;u=s.title}if(!e){t.pos=c;t.posMax=d;const e=t.push("link_open","a",1);const i=[["href",l]];e.attrs=i;if(u){i.push(["title",u])}t.linkLevel++;t.md.inline.tokenize(t);t.linkLevel--;t.push("link_close","a",-1)}t.pos=p;t.posMax=a;return true}function zc(t,e){let i,r,n,s,l,u,o,f;let h="";const a=t.pos;const c=t.posMax;if(t.src.charCodeAt(t.pos)!==33){return false}if(t.src.charCodeAt(t.pos+1)!==91){return false}const d=t.pos+2;const p=t.md.helpers.parseLinkLabel(t,t.pos+1,false);if(p<0){return false}s=p+1;if(s<c&&t.src.charCodeAt(s)===40){s++;for(;s<c;s++){i=t.src.charCodeAt(s);if(!Gh(i)&&i!==10){break}}if(s>=c){return false}f=s;u=t.md.helpers.parseLinkDestination(t.src,s,t.posMax);if(u.ok){h=t.md.normalizeLink(u.str);if(t.md.validateLink(h)){s=u.pos}else{h=""}}f=s;for(;s<c;s++){i=t.src.charCodeAt(s);if(!Gh(i)&&i!==10){break}}u=t.md.helpers.parseLinkTitle(t.src,s,t.posMax);if(s<c&&f!==s&&u.ok){o=u.str;s=u.pos;for(;s<c;s++){i=t.src.charCodeAt(s);if(!Gh(i)&&i!==10){break}}}else{o=""}if(s>=c||t.src.charCodeAt(s)!==41){t.pos=a;return false}s++}else{if(typeof t.env.references==="undefined"){return false}if(s<c&&t.src.charCodeAt(s)===91){f=s+1;s=t.md.helpers.parseLinkLabel(t,s);if(s>=0){n=t.src.slice(f,s++)}else{s=p+1}}else{s=p+1}if(!n){n=t.src.slice(d,p)}l=t.env.references[ta(n)];if(!l){t.pos=a;return false}h=l.href;o=l.title}if(!e){r=t.src.slice(d,p);const e=[];t.md.inline.parse(r,t.md,t.env,e);const i=t.push("image","img",0);const n=[["src",h],["alt",""]];i.attrs=n;i.children=e;i.content=r;if(o){n.push(["title",o])}}t.pos=s;t.posMax=c;return true}const Tc=/^([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 Ic=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function Pc(t,e){let i=t.pos;if(t.src.charCodeAt(i)!==60){return false}const r=t.pos;const n=t.posMax;for(;;){if(++i>=n)return false;const e=t.src.charCodeAt(i);if(e===60)return false;if(e===62)break}const s=t.src.slice(r+1,i);if(Ic.test(s)){const i=t.md.normalizeLink(s);if(!t.md.validateLink(i)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",i]];e.markup="autolink";e.info="auto";const r=t.push("text","",0);r.content=t.md.normalizeLinkText(s);const n=t.push("link_close","a",-1);n.markup="autolink";n.info="auto"}t.pos+=s.length+2;return true}if(Tc.test(s)){const i=t.md.normalizeLink("mailto:"+s);if(!t.md.validateLink(i)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",i]];e.markup="autolink";e.info="auto";const r=t.push("text","",0);r.content=t.md.normalizeLinkText(s);const n=t.push("link_close","a",-1);n.markup="autolink";n.info="auto"}t.pos+=s.length+2;return true}return false}function jc(t){return/^<a[>\s]/i.test(t)}function Jc(t){return/^<\/a\s*>/i.test(t)}function Lc(t){const e=t|32;return e>=97&&e<=122}function Wc(t,e){if(!t.md.options.html){return false}const i=t.posMax;const r=t.pos;if(t.src.charCodeAt(r)!==60||r+2>=i){return false}const n=t.src.charCodeAt(r+1);if(n!==33&&n!==63&&n!==47&&!Lc(n)){return false}const s=t.src.slice(r).match(hc);if(!s){return false}if(!e){const e=t.push("html_inline","",0);e.content=s[0];if(jc(e.content))t.linkLevel++;if(Jc(e.content))t.linkLevel--}t.pos+=s[0].length;return true}const Uc=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i;const Zc=/^&([a-z][a-z0-9]{1,31});/i;function Hc(t,e){const i=t.pos;const r=t.posMax;if(t.src.charCodeAt(i)!==38)return false;if(i+1>=r)return false;const s=t.src.charCodeAt(i+1);if(s===35){const r=t.src.slice(i).match(Uc);if(r){if(!e){const e=r[1][0].toLowerCase()==="x"?parseInt(r[1].slice(1),16):parseInt(r[1],10);const i=t.push("text_special","",0);i.content=qh(e)?Rh(e):Rh(65533);i.markup=r[0];i.info="entity"}t.pos+=r[0].length;return true}}else{const r=t.src.slice(i).match(Zc);if(r){const i=n(r[0]);if(i!==r[0]){if(!e){const e=t.push("text_special","",0);e.content=i;e.markup=r[0];e.info="entity"}t.pos+=r[0].length;return true}}}return false}function Kc(t){const e={};const i=t.length;if(!i)return;let r=0;let n=-2;const s=[];for(let l=0;l<i;l++){const i=t[l];s.push(0);if(t[r].marker!==i.marker||n!==i.token-1){r=l}n=i.token;i.length=i.length||0;if(!i.close)continue;if(!e.hasOwnProperty(i.marker)){e[i.marker]=[-1,-1,-1,-1,-1,-1]}const u=e[i.marker][(i.open?3:0)+i.length%3];let o=r-s[r]-1;let f=o;for(;o>u;o-=s[o]+1){const e=t[o];if(e.marker!==i.marker)continue;if(e.open&&e.end<0){let r=false;if(e.close||i.open){if((e.length+i.length)%3===0){if(e.length%3!==0||i.length%3!==0){r=true}}}if(!r){const r=o>0&&!t[o-1].open?s[o-1]+1:0;s[l]=l-o+r;s[o]=r;i.open=false;e.end=l;e.close=false;f=-1;n=-2;break}}}if(f!==-1){e[i.marker][(i.open?3:0)+(i.length||0)%3]=f}}}function Vc(t){const e=t.tokens_meta;const i=t.tokens_meta.length;Kc(t.delimiters);for(let t=0;t<i;t++){if(e[t]&&e[t].delimiters){Kc(e[t].delimiters)}}}function Gc(t){let e,i;let r=0;const n=t.tokens;const s=t.tokens.length;for(e=i=0;e<s;e++){if(n[e].nesting<0)r--;n[e].level=r;if(n[e].nesting>0)r++;if(n[e].type==="text"&&e+1<s&&n[e+1].type==="text"){n[e+1].content=n[e].content+n[e+1].content}else{if(e!==i){n[i]=n[e]}i++}}if(e!==i){n.length=i}}const Xc=[["text",vc],["linkify",Fc],["newline",Ec],["escape",Mc],["backticks",Ac],["strikethrough",$c.tokenize],["emphasis",Rc.tokenize],["link",Nc],["image",zc],["autolink",Pc],["html_inline",Wc],["entity",Hc]];const Yc=[["balance_pairs",Vc],["strikethrough",$c.postProcess],["emphasis",Rc.postProcess],["fragments_join",Gc]];function Qc(){this.ruler=new fa;for(let t=0;t<Xc.length;t++){this.ruler.push(Xc[t][0],Xc[t][1])}this.ruler2=new fa;for(let t=0;t<Yc.length;t++){this.ruler2.push(Yc[t][0],Yc[t][1])}}Qc.prototype.skipToken=function(t){const e=t.pos;const i=this.ruler.getRules("");const r=i.length;const n=t.md.options.maxNesting;const s=t.cache;if(typeof s[e]!=="undefined"){t.pos=s[e];return}let l=false;if(t.level<n){for(let n=0;n<r;n++){t.level++;l=i[n](t,true);t.level--;if(l){if(e>=t.pos){throw new Error("inline rule didn't increment state.pos")}break}}}else{t.pos=t.posMax}if(!l){t.pos++}s[e]=t.pos};Qc.prototype.tokenize=function(t){const e=this.ruler.getRules("");const i=e.length;const r=t.posMax;const n=t.md.options.maxNesting;while(t.pos<r){const s=t.pos;let l=false;if(t.level<n){for(let r=0;r<i;r++){l=e[r](t,false);if(l){if(s>=t.pos){throw new Error("inline rule didn't increment state.pos")}break}}}if(l){if(t.pos>=r){break}continue}t.pending+=t.src[t.pos++]}if(t.pending){t.pushPending()}};Qc.prototype.parse=function(t,e,i,r){const n=new this.State(t,e,i,r);this.tokenize(n);const s=this.ruler2.getRules("");const l=s.length;for(let t=0;t<l;t++){s[t](n)}};Qc.prototype.State=Dc;function td(t){const e={};t=t||{};e.src_Any=vh.source;e.src_Cc=yh.source;e.src_Z=Mh.source;e.src_P=Eh.source;e.src_ZPCc=[e.src_Z,e.src_P,e.src_Cc].join("|");e.src_ZCc=[e.src_Z,e.src_Cc].join("|");const i="[><|]";e.src_pseudo_letter="(?:(?!"+i+"|"+e.src_ZPCc+")"+e.src_Any+")";e.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)";e.src_auth="(?:(?:(?!"+e.src_ZCc+"|[@/\\[\\]()]).)+@)?";e.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?";e.src_host_terminator="(?=$|"+i+"|"+e.src_ZPCc+")"+"(?!"+(t["---"]?"-(?!--)|":"-|")+"_|:\\d|\\.-|\\.(?!$|"+e.src_ZPCc+"))";e.src_path="(?:"+"[/?#]"+"(?:"+"(?!"+e.src_ZCc+"|"+i+"|[()[\\]{}.,\"'?!\\-;]).|"+"\\[(?:(?!"+e.src_ZCc+"|\\]).)*\\]|"+"\\((?:(?!"+e.src_ZCc+"|[)]).)*\\)|"+"\\{(?:(?!"+e.src_ZCc+"|[}]).)*\\}|"+'\\"(?:(?!'+e.src_ZCc+'|["]).)+\\"|'+"\\'(?:(?!"+e.src_ZCc+"|[']).)+\\'|"+"\\'(?="+e.src_pseudo_letter+"|[-])|"+"\\.{2,}[a-zA-Z0-9%/&]|"+"\\.(?!"+e.src_ZCc+"|[.]|$)|"+(t["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+",(?!"+e.src_ZCc+"|$)|"+";(?!"+e.src_ZCc+"|$)|"+"\\!+(?!"+e.src_ZCc+"|[!]|$)|"+"\\?(?!"+e.src_ZCc+"|[?]|$)"+")+"+"|\\/"+")?";e.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*';e.src_xn="xn--[a-z0-9\\-]{1,59}";e.src_domain_root="(?:"+e.src_xn+"|"+e.src_pseudo_letter+"{1,63}"+")";e.src_domain="(?:"+e.src_xn+"|"+"(?:"+e.src_pseudo_letter+")"+"|"+"(?:"+e.src_pseudo_letter+"(?:-|"+e.src_pseudo_letter+"){0,61}"+e.src_pseudo_letter+")"+")";e.src_host="(?:"+"(?:(?:(?:"+e.src_domain+")\\.)*"+e.src_domain+")"+")";e.tpl_host_fuzzy="(?:"+e.src_ip4+"|"+"(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%))"+")";e.tpl_host_no_ip_fuzzy="(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%))";e.src_host_strict=e.src_host+e.src_host_terminator;e.tpl_host_fuzzy_strict=e.tpl_host_fuzzy+e.src_host_terminator;e.src_host_port_strict=e.src_host+e.src_port+e.src_host_terminator;e.tpl_host_port_fuzzy_strict=e.tpl_host_fuzzy+e.src_port+e.src_host_terminator;e.tpl_host_port_no_ip_fuzzy_strict=e.tpl_host_no_ip_fuzzy+e.src_port+e.src_host_terminator;e.tpl_host_fuzzy_test="localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:"+e.src_ZPCc+"|>|$))";e.tpl_email_fuzzy="(^|"+i+'|"|\\(|'+e.src_ZCc+")"+"("+e.src_email_name+"@"+e.tpl_host_fuzzy_strict+")";e.tpl_link_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))"+"((?![$+<=>^`||])"+e.tpl_host_port_fuzzy_strict+e.src_path+")";e.tpl_link_no_ip_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))"+"((?![$+<=>^`||])"+e.tpl_host_port_no_ip_fuzzy_strict+e.src_path+")";return e}function ed(t){const e=Array.prototype.slice.call(arguments,1);e.forEach((function(e){if(!e){return}Object.keys(e).forEach((function(i){t[i]=e[i]}))}));return t}function id(t){return Object.prototype.toString.call(t)}function rd(t){return id(t)==="[object String]"}function nd(t){return id(t)==="[object Object]"}function sd(t){return id(t)==="[object RegExp]"}function ld(t){return id(t)==="[object Function]"}function ud(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const od={fuzzyLink:true,fuzzyEmail:true,fuzzyIP:false};function fd(t){return Object.keys(t||{}).reduce((function(t,e){return t||od.hasOwnProperty(e)}),false)}const hd={"http:":{validate:function(t,e,i){const r=t.slice(e);if(!i.re.http){i.re.http=new RegExp("^\\/\\/"+i.re.src_auth+i.re.src_host_port_strict+i.re.src_path,"i")}if(i.re.http.test(r)){return r.match(i.re.http)[0].length}return 0}},"https:":"http:","ftp:":"http:","//":{validate:function(t,e,i){const r=t.slice(e);if(!i.re.no_http){i.re.no_http=new RegExp("^"+i.re.src_auth+"(?:localhost|(?:(?:"+i.re.src_domain+")\\.)+"+i.re.src_domain_root+")"+i.re.src_port+i.re.src_host_terminator+i.re.src_path,"i")}if(i.re.no_http.test(r)){if(e>=3&&t[e-3]===":"){return 0}if(e>=3&&t[e-3]==="/"){return 0}return r.match(i.re.no_http)[0].length}return 0}},"mailto:":{validate:function(t,e,i){const r=t.slice(e);if(!i.re.mailto){i.re.mailto=new RegExp("^"+i.re.src_email_name+"@"+i.re.src_host_strict,"i")}if(i.re.mailto.test(r)){return r.match(i.re.mailto)[0].length}return 0}}};const ad="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 cd="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function dd(t){t.__index__=-1;t.__text_cache__=""}function pd(t){return function(e,i){const r=e.slice(i);if(t.test(r)){return r.match(t)[0].length}return 0}}function md(){return function(t,e){e.normalize(t)}}function wd(t){const e=t.re=td(t.__opts__);const i=t.__tlds__.slice();t.onCompile();if(!t.__tlds_replaced__){i.push(ad)}i.push(e.src_xn);e.src_tlds=i.join("|");function r(t){return t.replace("%TLDS%",e.src_tlds)}e.email_fuzzy=RegExp(r(e.tpl_email_fuzzy),"i");e.link_fuzzy=RegExp(r(e.tpl_link_fuzzy),"i");e.link_no_ip_fuzzy=RegExp(r(e.tpl_link_no_ip_fuzzy),"i");e.host_fuzzy_test=RegExp(r(e.tpl_host_fuzzy_test),"i");const n=[];t.__compiled__={};function s(t,e){throw new Error('(LinkifyIt) Invalid schema "'+t+'": '+e)}Object.keys(t.__schemas__).forEach((function(e){const i=t.__schemas__[e];if(i===null){return}const r={validate:null,link:null};t.__compiled__[e]=r;if(nd(i)){if(sd(i.validate)){r.validate=pd(i.validate)}else if(ld(i.validate)){r.validate=i.validate}else{s(e,i)}if(ld(i.normalize)){r.normalize=i.normalize}else if(!i.normalize){r.normalize=md()}else{s(e,i)}return}if(rd(i)){n.push(e);return}s(e,i)}));n.forEach((function(e){if(!t.__compiled__[t.__schemas__[e]]){return}t.__compiled__[e].validate=t.__compiled__[t.__schemas__[e]].validate;t.__compiled__[e].normalize=t.__compiled__[t.__schemas__[e]].normalize}));t.__compiled__[""]={validate:null,normalize:md()};const l=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(ud).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");dd(t)}function gd(t,e){const i=t.__index__;const r=t.__last_index__;const n=t.__text_cache__.slice(i,r);this.schema=t.__schema__.toLowerCase();this.index=i+e;this.lastIndex=r+e;this.raw=n;this.text=n;this.url=n}function bd(t,e){const i=new gd(t,e);t.__compiled__[i.schema].normalize(i,t);return i}function Dd(t,e){if(!(this instanceof Dd)){return new Dd(t,e)}if(!e){if(fd(t)){e=t;t={}}}this.__opts__=ed({},od,e);this.__index__=-1;this.__last_index__=-1;this.__schema__="";this.__text_cache__="";this.__schemas__=ed({},hd,t);this.__compiled__={};this.__tlds__=cd;this.__tlds_replaced__=false;this.re={};wd(this)}Dd.prototype.add=function t(e,i){this.__schemas__[e]=i;wd(this);return this};Dd.prototype.set=function t(e){this.__opts__=ed(this.__opts__,e);return this};Dd.prototype.test=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length){return false}let i,r,n,s,l,u,o,f,h;if(this.re.schema_test.test(e)){o=this.re.schema_search;o.lastIndex=0;while((i=o.exec(e))!==null){s=this.testSchemaAt(e,i[2],o.lastIndex);if(s){this.__schema__=i[2];this.__index__=i.index+i[1].length;this.__last_index__=i.index+i[0].length+s;break}}}if(this.__opts__.fuzzyLink&&this.__compiled__["http:"]){f=e.search(this.re.host_fuzzy_test);if(f>=0){if(this.__index__<0||f<this.__index__){if((r=e.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy))!==null){l=r.index+r[1].length;if(this.__index__<0||l<this.__index__){this.__schema__="";this.__index__=l;this.__last_index__=r.index+r[0].length}}}}}if(this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"]){h=e.indexOf("@");if(h>=0){if((n=e.match(this.re.email_fuzzy))!==null){l=n.index+n[1].length;u=n.index+n[0].length;if(this.__index__<0||l<this.__index__||l===this.__index__&&u>this.__last_index__){this.__schema__="mailto:";this.__index__=l;this.__last_index__=u}}}}return this.__index__>=0};Dd.prototype.pretest=function t(e){return this.re.pretest.test(e)};Dd.prototype.testSchemaAt=function t(e,i,r){if(!this.__compiled__[i.toLowerCase()]){return 0}return this.__compiled__[i.toLowerCase()].validate(e,r,this)};Dd.prototype.match=function t(e){const i=[];let r=0;if(this.__index__>=0&&this.__text_cache__===e){i.push(bd(this,r));r=this.__last_index__}let n=r?e.slice(r):e;while(this.test(n)){i.push(bd(this,r));n=n.slice(this.__last_index__);r+=this.__last_index__}if(i.length){return i}return null};Dd.prototype.matchAtStart=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length)return null;const i=this.re.schema_at_start.exec(e);if(!i)return null;const r=this.testSchemaAt(e,i[2],i[0].length);if(!r)return null;this.__schema__=i[2];this.__index__=i.index+i[1].length;this.__last_index__=i.index+i[0].length+r;return bd(this,0)};Dd.prototype.tlds=function t(e,i){e=Array.isArray(e)?e:[e];if(!i){this.__tlds__=e.slice();this.__tlds_replaced__=true;wd(this);return this}this.__tlds__=this.__tlds__.concat(e).sort().filter((function(t,e,i){return t!==i[e-1]})).reverse();wd(this);return this};Dd.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}};Dd.prototype.onCompile=function t(){};const kd=2147483647;const vd=36;const yd=1;const Fd=26;const Ed=38;const xd=700;const Md=72;const Ad=128;const Cd="-";const Sd=/^xn--/;const Od=/[^\0-\x7F]/;const $d=/[\x2E\u3002\uFF0E\uFF61]/g;const _d={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const Bd=vd-yd;const qd=Math.floor;const Rd=String.fromCharCode;function Nd(t){throw new RangeError(_d[t])}function zd(t,e){const i=[];let r=t.length;while(r--){i[r]=e(t[r])}return i}function Td(t,e){const i=t.split("@");let r="";if(i.length>1){r=i[0]+"@";t=i[1]}t=t.replace($d,".");const n=t.split(".");const s=zd(n,e).join(".");return r+s}function Id(t){const e=[];let i=0;const r=t.length;while(i<r){const n=t.charCodeAt(i++);if(n>=55296&&n<=56319&&i<r){const r=t.charCodeAt(i++);if((r&64512)==56320){e.push(((n&1023)<<10)+(r&1023)+65536)}else{e.push(n);i--}}else{e.push(n)}}return e}const Pd=t=>String.fromCodePoint(...t);const jd=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 vd};const Jd=function(t,e){return t+22+75*(t<26)-((e!=0)<<5)};const Ld=function(t,e,i){let r=0;t=i?qd(t/xd):t>>1;t+=qd(t/e);for(;t>Bd*Fd>>1;r+=vd){t=qd(t/Bd)}return qd(r+(Bd+1)*t/(t+Ed))};const Wd=function(t){const e=[];const i=t.length;let r=0;let n=Ad;let s=Md;let l=t.lastIndexOf(Cd);if(l<0){l=0}for(let i=0;i<l;++i){if(t.charCodeAt(i)>=128){Nd("not-basic")}e.push(t.charCodeAt(i))}for(let u=l>0?l+1:0;u<i;){const l=r;for(let e=1,n=vd;;n+=vd){if(u>=i){Nd("invalid-input")}const l=jd(t.charCodeAt(u++));if(l>=vd){Nd("invalid-input")}if(l>qd((kd-r)/e)){Nd("overflow")}r+=l*e;const o=n<=s?yd:n>=s+Fd?Fd:n-s;if(l<o){break}const f=vd-o;if(e>qd(kd/f)){Nd("overflow")}e*=f}const o=e.length+1;s=Ld(r-l,o,l==0);if(qd(r/o)>kd-n){Nd("overflow")}n+=qd(r/o);r%=o;e.splice(r++,0,n)}return String.fromCodePoint(...e)};const Ud=function(t){const e=[];t=Id(t);const i=t.length;let r=Ad;let n=0;let s=Md;for(const i of t){if(i<128){e.push(Rd(i))}}const l=e.length;let u=l;if(l){e.push(Cd)}while(u<i){let i=kd;for(const e of t){if(e>=r&&e<i){i=e}}const o=u+1;if(i-r>qd((kd-n)/o)){Nd("overflow")}n+=(i-r)*o;r=i;for(const i of t){if(i<r&&++n>kd){Nd("overflow")}if(i===r){let t=n;for(let i=vd;;i+=vd){const r=i<=s?yd:i>=s+Fd?Fd:i-s;if(t<r){break}const n=t-r;const l=vd-r;e.push(Rd(Jd(r+n%l,0)));t=qd(n/l)}e.push(Rd(Jd(t,0)));s=Ld(n,o,u===l);n=0;++u}}++n;++r}return e.join("")};const Zd=function(t){return Td(t,(function(t){return Sd.test(t)?Wd(t.slice(4).toLowerCase()):t}))};const Hd=function(t){return Td(t,(function(t){return Od.test(t)?"xn--"+Ud(t):t}))};const Kd={version:"2.3.1",ucs2:{decode:Id,encode:Pd},decode:Wd,encode:Ud,toASCII:Hd,toUnicode:Zd};const Vd={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}};const Gd={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 Xd={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 Yd={default:Vd,zero:Gd,commonmark:Xd};const Qd=/^(vbscript|javascript|file|data):/;const tp=/^data:image\/(gif|png|jpeg|webp);/;function ep(t){const e=t.trim().toLowerCase();return Qd.test(e)?tp.test(e):true}const ip=["http:","https:","mailto:"];function rp(t){const e=Dh(t,true);if(e.hostname){if(!e.protocol||ip.indexOf(e.protocol)>=0){try{e.hostname=Kd.toASCII(e.hostname)}catch(t){}}}return rh(nh(e))}function np(t){const e=Dh(t,true);if(e.hostname){if(!e.protocol||ip.indexOf(e.protocol)>=0){try{e.hostname=Kd.toUnicode(e.hostname)}catch(t){}}}return th(nh(e),th.defaultChars+"%")}function sp(t,e){if(!(this instanceof sp)){return new sp(t,e)}if(!e){if(!Sh(t)){e=t||{};t="default"}}this.inline=new Qc;this.block=new bc;this.core=new Na;this.renderer=new oa;this.linkify=new Dd;this.validateLink=ep;this.normalizeLink=rp;this.normalizeLinkText=np;this.utils=ia;this.helpers=_h({},la);this.options={};this.configure(t);if(e){this.set(e)}}sp.prototype.set=function(t){_h(this.options,t);return this};sp.prototype.configure=function(t){const e=this;if(Sh(t)){const e=t;t=Yd[e];if(!t){throw new Error('Wrong `markdown-it` preset "'+e+'", check name')}}if(!t){throw new Error("Wrong `markdown-it` preset, can't be empty")}if(t.options){e.set(t.options)}if(t.components){Object.keys(t.components).forEach((function(i){if(t.components[i].rules){e[i].ruler.enableOnly(t.components[i].rules)}if(t.components[i].rules2){e[i].ruler2.enableOnly(t.components[i].rules2)}}))}return this};sp.prototype.enable=function(t,e){let i=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){i=i.concat(this[e].ruler.enable(t,true))}),this);i=i.concat(this.inline.ruler2.enable(t,true));const r=t.filter((function(t){return i.indexOf(t)<0}));if(r.length&&!e){throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+r)}return this};sp.prototype.disable=function(t,e){let i=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){i=i.concat(this[e].ruler.disable(t,true))}),this);i=i.concat(this.inline.ruler2.disable(t,true));const r=t.filter((function(t){return i.indexOf(t)<0}));if(r.length&&!e){throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+r)}return this};sp.prototype.use=function(t){const e=[this].concat(Array.prototype.slice.call(arguments,1));t.apply(t,e);return this};sp.prototype.parse=function(t,e){if(typeof t!=="string"){throw new Error("Input data should be a String")}const i=new this.core.State(t,this,e);this.core.process(i);return i.tokens};sp.prototype.render=function(t,e){e=e||{};return this.renderer.render(this.parse(t,e),this.options,e)};sp.prototype.parseInline=function(t,e){const i=new this.core.State(t,this,e);i.inlineMode=true;this.core.process(i);return i.tokens};sp.prototype.renderInline=function(t,e){e=e||{};return this.renderer.render(this.parseInline(t,e),this.options,e)};const lp=new rt({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 up(t,e){if(t.isText&&e.isText&&d.sameSet(t.marks,e.marks))return t.withText(t.text+e.text)}class op{constructor(t,e){this.schema=t;this.tokenHandlers=e;this.stack=[{type:t.topNodeType,attrs:null,content:[],marks:d.none}]}top(){return this.stack[this.stack.length-1]}push(t){if(this.stack.length)this.top().content.push(t)}addText(t){if(!t)return;let e=this.top(),i=e.content,r=i[i.length-1];let n=this.schema.text(t,e.marks),s;if(r&&(s=up(r,n)))i[i.length-1]=s;else i.push(n)}openMark(t){let e=this.top();e.marks=t.addToSet(e.marks)}closeMark(t){let e=this.top();e.marks=t.removeFromSet(e.marks)}parseTokens(t){for(let e=0;e<t.length;e++){let i=t[e];let r=this.tokenHandlers[i.type];if(!r)throw new Error("Token type `"+i.type+"` not supported by Markdown parser");r(this,i,t,e)}}addNode(t,e,i){let r=this.top();let n=t.createAndFill(e,i,r?r.marks:[]);if(!n)return null;this.push(n);return n}openNode(t,e){this.stack.push({type:t,attrs:e,content:[],marks:d.none})}closeNode(){let t=this.stack.pop();return this.addNode(t.type,t.attrs,t.content)}}function fp(t,e,i,r){if(t.getAttrs)return t.getAttrs(e,i,r);else if(t.attrs instanceof Function)return t.attrs(e);else return t.attrs}function hp(t,e){return t.noCloseToken||e=="code_inline"||e=="code_block"||e=="fence"}function ap(t){return t[t.length-1]=="\n"?t.slice(0,t.length-1):t}function cp(){}function dp(t,e){let i=Object.create(null);for(let r in e){let n=e[r];if(n.block){let e=t.nodeType(n.block);if(hp(n,r)){i[r]=(t,i,r,s)=>{t.openNode(e,fp(n,i,r,s));t.addText(ap(i.content));t.closeNode()}}else{i[r+"_open"]=(t,i,r,s)=>t.openNode(e,fp(n,i,r,s));i[r+"_close"]=t=>t.closeNode()}}else if(n.node){let e=t.nodeType(n.node);i[r]=(t,i,r,s)=>t.addNode(e,fp(n,i,r,s))}else if(n.mark){let e=t.marks[n.mark];if(hp(n,r)){i[r]=(t,i,r,s)=>{t.openMark(e.create(fp(n,i,r,s)));t.addText(ap(i.content));t.closeMark(e)}}else{i[r+"_open"]=(t,i,r,s)=>t.openMark(e.create(fp(n,i,r,s)));i[r+"_close"]=t=>t.closeMark(e)}}else if(n.ignore){if(hp(n,r)){i[r]=cp}else{i[r+"_open"]=cp;i[r+"_close"]=cp}}else{throw new RangeError("Unrecognized parsing spec "+JSON.stringify(n))}}i.text=(t,e)=>t.addText(e.content);i.inline=(t,e)=>t.parseTokens(e.children);i.softbreak=i.softbreak||(t=>t.addText(" "));return i}class pp{constructor(t,e,i){this.schema=t;this.tokenizer=e;this.tokens=i;this.tokenHandlers=dp(t,i)}parse(t,e={}){let i=new op(this.schema,this.tokenHandlers),r;i.parseTokens(this.tokenizer.parse(t,e));do{r=i.closeNode()}while(i.stack.length);return r||this.schema.topNodeType.createAndFill()}}function mp(t,e){while(++e<t.length)if(t[e].type!="list_item_open")return t[e].hidden;return false}new pp(lp,sp("commonmark",{html:false}),{blockquote:{block:"blockquote"},paragraph:{block:"paragraph"},list_item:{block:"list_item"},bullet_list:{block:"bullet_list",getAttrs:(t,e,i)=>({tight:mp(e,i)})},ordered_list:{block:"ordered_list",getAttrs:(t,e,i)=>({order:+t.attrGet("start")||1,tight:mp(e,i)})},heading:{block:"heading",getAttrs:t=>({level:+t.tag.slice(1)})},code_block:{block:"code_block",noCloseToken:true},fence:{block:"code_block",getAttrs:t=>({params:t.info||""}),noCloseToken:true},hr:{node:"horizontal_rule"},image:{node:"image",getAttrs:t=>({src:t.attrGet("src"),title:t.attrGet("title")||null,alt:t.children[0]&&t.children[0].content||null})},hardbreak:{node:"hard_break"},em:{mark:"em"},strong:{mark:"strong"},link:{mark:"link",getAttrs:t=>({href:t.attrGet("href"),title:t.attrGet("title")||null})},code_inline:{mark:"code",noCloseToken:true}});class wp{constructor(t,e,i={}){this.nodes=t;this.marks=e;this.options=i}serialize(t,e={}){e=Object.assign({},this.options,e);let i=new kp(this.nodes,this.marks,e);i.renderContent(t);return i.out}}const gp=new wp({blockquote(t,e){t.wrapBlock("> ",null,e,(()=>t.renderContent(e)))},code_block(t,e){const i=e.textContent.match(/`{3,}/gm);const r=i?i.sort().slice(-1)[0]+"`":"```";t.write(r+(e.attrs.params||"")+"\n");t.text(e.textContent,false);t.write("\n");t.write(r);t.closeBlock(e)},heading(t,e){t.write(t.repeat("#",e.attrs.level)+" ");t.renderInline(e,false);t.closeBlock(e)},horizontal_rule(t,e){t.write(e.attrs.markup||"---");t.closeBlock(e)},bullet_list(t,e){t.renderList(e," ",(()=>(e.attrs.bullet||"*")+" "))},ordered_list(t,e){let i=e.attrs.order||1;let r=String(i+e.childCount-1).length;let n=t.repeat(" ",r+2);t.renderList(e,n,(e=>{let n=String(i+e);return t.repeat(" ",r-n.length)+n+". "}))},list_item(t,e){t.renderContent(e)},paragraph(t,e){t.renderInline(e);t.closeBlock(e)},image(t,e){t.write("]/g,"\\$&")+(e.attrs.title?' "'+e.attrs.title.replace(/"/g,'\\"')+'"':"")+")")},hard_break(t,e,i,r){for(let n=r+1;n<i.childCount;n++)if(i.child(n).type!=e.type){t.write("\\\n");return}},text(t,e){t.text(e.text,!t.inAutolink)}},{em:{open:"*",close:"*",mixable:true,expelEnclosingWhitespace:true},strong:{open:"**",close:"**",mixable:true,expelEnclosingWhitespace:true},link:{open(t,e,i,r){t.inAutolink=Dp(e,i,r);return t.inAutolink?"<":"["},close(t,e,i,r){let{inAutolink:n}=t;t.inAutolink=undefined;return n?">":"]("+e.attrs.href.replace(/[\(\)"]/g,"\\$&")+(e.attrs.title?` "${e.attrs.title.replace(/"/g,'\\"')}"`:"")+")"},mixable:true},code:{open(t,e,i,r){return bp(i.child(r),-1)},close(t,e,i,r){return bp(i.child(r-1),1)},escape:false}});function bp(t,e){let i=/`+/g,r,n=0;if(t.isText)while(r=i.exec(t.text))n=Math.max(n,r[0].length);let s=n>0&&e>0?" `":"`";for(let t=0;t<n;t++)s+="`";if(n>0&&e<0)s+=" ";return s}function Dp(t,e,i){if(t.attrs.title||!/^\w+:/.test(t.attrs.href))return false;let r=e.child(i);if(!r.isText||r.text!=t.attrs.href||r.marks[r.marks.length-1]!=t)return false;return i==e.childCount-1||!t.isInSet(e.child(i+1).marks)}class kp{constructor(t,e,i){this.nodes=t;this.marks=e;this.options=i;this.delim="";this.out="";this.closed=null;this.inAutolink=undefined;this.atBlockStart=false;this.inTightList=false;if(typeof this.options.tightLists=="undefined")this.options.tightLists=false;if(typeof this.options.hardBreakNodeName=="undefined")this.options.hardBreakNodeName="hard_break"}flushClose(t=2){if(this.closed){if(!this.atBlank())this.out+="\n";if(t>1){let e=this.delim;let i=/\s+$/.exec(e);if(i)e=e.slice(0,e.length-i[0].length);for(let i=1;i<t;i++)this.out+=e+"\n"}this.closed=null}}wrapBlock(t,e,i,r){let n=this.delim;this.write(e!=null?e:t);this.delim+=t;r();this.delim=n;this.closeBlock(i)}atBlank(){return/(^|\n)$/.test(this.out)}ensureNewLine(){if(!this.atBlank())this.out+="\n"}write(t){this.flushClose();if(this.delim&&this.atBlank())this.out+=this.delim;if(t)this.out+=t}closeBlock(t){this.closed=t}text(t,e=true){let i=t.split("\n");for(let t=0;t<i.length;t++){this.write();if(!e&&i[t][0]=="["&&/(^|[^\\])\!$/.test(this.out))this.out=this.out.slice(0,this.out.length-1)+"\\!";this.out+=e?this.esc(i[t],this.atBlockStart):i[t];if(t!=i.length-1)this.out+="\n"}}render(t,e,i){if(!this.nodes[t.type.name])throw new Error("Token type `"+t.type.name+"` not supported by Markdown renderer");this.nodes[t.type.name](this,t,e,i)}renderContent(t){t.forEach(((e,i,r)=>this.render(e,t,r)))}renderInline(t,e=true){this.atBlockStart=e;let i=[],r="";let n=(e,n,s)=>{let l=e?e.marks:[];if(e&&e.type.name===this.options.hardBreakNodeName)l=l.filter((e=>{if(s+1==t.childCount)return false;let i=t.child(s+1);return e.isInSet(i.marks)&&(!i.isText||/\S/.test(i.text))}));let u=r;r="";if(e&&e.isText&&l.some((t=>{let e=this.marks[t.type.name];return e&&e.expelEnclosingWhitespace&&!t.isInSet(i)}))){let[t,r,n]=/^(\s*)(.*)$/m.exec(e.text);if(r){u+=r;e=n?e.withText(n):null;if(!e)l=i}}if(e&&e.isText&&l.some((e=>{let i=this.marks[e.type.name];return i&&i.expelEnclosingWhitespace&&(s==t.childCount-1||!e.isInSet(t.child(s+1).marks))}))){let[t,n,s]=/^(.*?)(\s*)$/m.exec(e.text);if(s){r=s;e=n?e.withText(n):null;if(!e)l=i}}let o=l.length?l[l.length-1]:null;let f=o&&this.marks[o.type.name].escape===false;let h=l.length-(f?1:0);t:for(let t=0;t<h;t++){let e=l[t];if(!this.marks[e.type.name].mixable)break;for(let r=0;r<i.length;r++){let n=i[r];if(!this.marks[n.type.name].mixable)break;if(e.eq(n)){if(t>r)l=l.slice(0,r).concat(e).concat(l.slice(r,t)).concat(l.slice(t+1,h));else if(r>t)l=l.slice(0,t).concat(l.slice(t+1,r)).concat(e).concat(l.slice(r,h));continue t}}}let a=0;while(a<Math.min(i.length,h)&&l[a].eq(i[a]))++a;while(a<i.length)this.text(this.markString(i.pop(),false,t,s),false);if(u)this.text(u);if(e){while(i.length<h){let e=l[i.length];i.push(e);this.text(this.markString(e,true,t,s),false);this.atBlockStart=false}if(f&&e.isText)this.text(this.markString(o,true,t,s)+e.text+this.markString(o,false,t,s+1),false);else this.render(e,t,s);this.atBlockStart=false}if((e===null||e===void 0?void 0:e.isText)&&e.nodeSize>0){this.atBlockStart=false}};t.forEach(n);n(null,0,t.childCount);this.atBlockStart=false}renderList(t,e,i){if(this.closed&&this.closed.type==t.type)this.flushClose(3);else if(this.inTightList)this.flushClose(1);let r=typeof t.attrs.tight!="undefined"?t.attrs.tight:this.options.tightLists;let n=this.inTightList;this.inTightList=r;t.forEach(((n,s,l)=>{if(l&&r)this.flushClose(1);this.wrapBlock(e,i(l),t,(()=>this.render(n,t,l)))}));this.inTightList=n}esc(t,e=false){t=t.replace(/[`*\\~\[\]_]/g,((e,i)=>e=="_"&&i>0&&i+1<t.length&&t[i-1].match(/\w/)&&t[i+1].match(/\w/)?e:"\\"+e));if(e)t=t.replace(/^(\+[ ]|[\-*>])/,"\\$&").replace(/^(\s*)(#{1,6})(\s|$)/,"$1\\$2$3").replace(/^(\s*\d+)\.\s/,"$1\\. ");if(this.options.escapeExtraCharacters)t=t.replace(this.options.escapeExtraCharacters,"\\$&");return t}quote(t){let e=t.indexOf('"')==-1?'""':t.indexOf("'")==-1?"''":"()";return e[0]+t+e[1]}repeat(t,e){let i="";for(let r=0;r<e;r++)i+=t;return i}markString(t,e,i,r){let n=this.marks[t.type.name];let s=e?n.open:n.close;return typeof s=="string"?s:s(this,t,i,r)}getEnclosingWhitespace(t){return{leading:(t.match(/^(\s+)/)||[undefined])[0],trailing:(t.match(/(\s+)$/)||[undefined])[0]}}}class vp{constructor(){this.parseAsHTML=t=>s(t);this.serialize=t=>{if(t.dom.textContent===""){return""}else{return gp.serialize(t.state.doc)}}}}class yp{constructor(){this.parseAsHTML=t=>new Promise((e=>{e(t)}));this.serialize=t=>{if(t.dom.textContent===""){return""}else{return t.dom.innerHTML}}}}const Fp='@charset "UTF-8";:host{--mdc-theme-primary:var(\n --lime-primary-color,\n rgb(var(--color-teal-default))\n );--mdc-theme-secondary:var(\n --lime-secondary-color,\n rgb(var(--contrast-1100))\n );--mdc-theme-on-primary:var(\n --lime-on-primary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-secondary:var(\n --lime-on-secondary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-text-disabled-on-background:var(\n --lime-text-disabled-on-background-color,\n rgba(var(--contrast-1700), 0.38)\n );--mdc-theme-text-primary-on-background:var(\n --lime-text-primary-on-background-color,\n rgba(var(--contrast-1700), 0.87)\n );--mdc-theme-text-secondary-on-background:var(\n --lime-text-secondary-on-background-color,\n rgba(var(--contrast-1700), 0.54)\n );--mdc-theme-error:var(\n --lime-error-background-color,\n rgb(var(--color-red-dark))\n );--lime-error-text-color:rgb(var(--color-red-darker));--mdc-theme-surface:var(\n --lime-surface-background-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-surface:var(\n --lime-on-surface-color,\n rgb(var(--contrast-1500))\n )}:host(limel-prosemirror-adapter){display:flex;flex-direction:column}:host(limel-prosemirror-adapter) limel-action-bar{order:1}:host(limel-prosemirror-adapter) div#editor{order:2;height:100%}:host(limel-prosemirror-adapter) div[contenteditable=true]{height:100%}*{box-sizing:border-box}.ProseMirror-menubar-wrapper{display:grid;grid-template-rows:auto 1fr}.ProseMirror-textblock-dropdown{min-width:3em}.ProseMirror-tooltip .ProseMirror-menu{width:-webkit-fit-content;width:fit-content;white-space:pre}limel-action-bar{--action-bar-border-radius:0.25rem;position:sticky;z-index:1;top:1px;background-color:rgba(var(--contrast-200), 0.5);backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);opacity:0.6;transition:opacity 0.5s ease;margin:0 1px;width:calc(100% - 2px)}:host(limel-prosemirror-adapter:focus-within) limel-action-bar,:host(limel-prosemirror-adapter:hover) limel-action-bar{opacity:1}.ProseMirror{position:relative;word-wrap:break-word;white-space:pre-wrap;white-space:break-spaces;-webkit-font-variant-ligatures:none;font-variant-ligatures:none;font-feature-settings:"liga" 0;padding:var(--limel-text-editor-padding)}.ProseMirror [draggable][contenteditable=false]{user-select:text}.ProseMirror:focus-visible{outline:none}.ProseMirror-hideselection{caret-color:transparent}.ProseMirror-hideselection *::selection{background:transparent}.ProseMirror-hideselection *::-moz-selection{background:transparent}.ProseMirror-selectednode{outline:0.125rem solid rgb(var(--color-sky-light))}li.ProseMirror-selectednode{outline:none}li.ProseMirror-selectednode:after{content:"";position:absolute;left:-2rem;right:-0.125rem;top:-0.125rem;bottom:-0.125rem;border:0.125rem solid rgb(var(--color-sky-light));pointer-events:none}img.ProseMirror-separator{display:inline !important;border:none !important;margin:0 !important}blockquote{position:relative;font-weight:100;font-size:0.875rem;max-width:100%;line-height:1.4;margin:0;padding:0.5rem 1.25rem;border-radius:0.05rem 0.75rem;background-color:rgb(var(--contrast-300))}blockquote:before,blockquote:after{position:absolute;font-size:2.75rem;opacity:0.4}blockquote:before{content:"“";left:0;top:-0.75rem}blockquote:after{content:"”";right:0;bottom:-2rem}:host(limel-markdown.truncate-paragraphs) p{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}p,li{font-size:0.875rem;word-break:break-word;hyphens:auto;-webkit-hyphens:auto}a{word-break:break-all}p{margin-top:0;margin-bottom:0.5rem}p:only-child{margin-bottom:0}a{transition:color 0.2s ease;color:var(--markdown-hyperlink-color, rgb(var(--color-blue-dark)));text-decoration:none}a:hover{color:var(--markdown-hyperlink-color--hovered, rgb(var(--color-blue-default)))}hr{margin:1.75rem 0 2rem 0;border-width:0;border-top:1px solid rgb(var(--contrast-500))}dl{display:grid;grid-template-columns:1fr 2fr;grid-template-rows:1fr;margin-bottom:2rem;border:1px solid rgb(var(--contrast-400));border-radius:0.375rem;background-color:rgb(var(--contrast-200))}dl dt,dl dd{padding:0.375rem 0.5rem;font-size:0.875rem;margin:0}dl dt:nth-of-type(even),dl dd:nth-of-type(even){background-color:rgb(var(--contrast-300))}dl dt:first-child{border-top-left-radius:0.375rem}dl dt:last-child{border-bottom-left-radius:0.375rem}dl dd:first-child{border-top-right-radius:0.375rem}dl dd:last-child{border-bottom-right-radius:0.375rem}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.125rem}h4{font-size:1rem}h5{font-size:0.875rem}h6{font-size:0.75rem}h1,h2{margin-top:0.5rem;margin-bottom:0.5rem;letter-spacing:-0.03125rem;font-weight:500}h3,h4{margin-top:0.75rem;margin-bottom:0.25rem;font-weight:600}h5,h6{margin-top:0.5rem;margin-bottom:0.125rem;font-weight:600}h1,h2,h3,h4,h5,h6{word-break:break-word;hyphens:auto;-webkit-hyphens:auto}:not([contenteditable=true]) h1,:not([contenteditable=true]) h2,:not([contenteditable=true]) h3,:not([contenteditable=true]) h4,:not([contenteditable=true]) h5,:not([contenteditable=true]) h6{text-wrap:balance}[contenteditable=true] h1,[contenteditable=true] h2,[contenteditable=true] h3,[contenteditable=true] h4,[contenteditable=true] h5,[contenteditable=true] h6{text-wrap:initial}ul{list-style:none}ul li{position:relative;margin-left:0.75rem}ul li:before{content:"";position:absolute;left:-0.5rem;top:0.5rem;width:0.25rem;height:0.25rem;border-radius:50%;background-color:rgb(var(--contrast-700));display:block}ol{margin-top:0.25rem;padding-left:1rem}ul{margin-top:0.25rem;padding-left:0}ul ul,ul ol,ol ol,ol ul{margin-left:0}li{margin-bottom:0.25rem}code{font-family:ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;font-size:0.8125rem;letter-spacing:-0.0125rem;color:rgb(var(--contrast-1300));-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;display:inline-block;border-radius:0.25rem;padding:0.03125rem 0.25rem;background-color:rgb(var(--contrast-600))}pre>code{display:block;margin:0.5rem 0;padding:0.5rem 0.75rem;overflow:auto;white-space:pre-wrap}:host(limel-markdown:not(.no-table-styles)) table{table-layout:auto;min-width:100%;border-collapse:collapse;border-spacing:0;background:transparent;margin:0.75rem 0;border:1px solid rgb(var(--contrast-400))}:host(limel-markdown:not(.no-table-styles)) th,:host(limel-markdown:not(.no-table-styles)) td{text-align:left;vertical-align:top;transition:background-color 0.2s ease;font-size:0.875rem}:host(limel-markdown:not(.no-table-styles)) td{padding:0.5rem 0.375rem 0.75rem 0.375rem}:host(limel-markdown:not(.no-table-styles)) tr th{background-color:rgb(var(--contrast-400));padding:0.25rem 0.375rem;font-weight:normal}:host(limel-markdown:not(.no-table-styles)) tr th:only-child{text-align:center}:host(limel-markdown:not(.no-table-styles)) tbody tr:nth-child(odd) td{background-color:rgb(var(--contrast-200))}:host(limel-markdown:not(.no-table-styles)) tbody tr:hover td{background-color:rgb(var(--contrast-300))}';const Ep=class{constructor(i){t(this,i);this.change=e(this,"change",7);this.initializeTextEditor=async()=>{this.actionBarItems=Xf;const t=new rt({nodes:Il($l.spec.nodes,"paragraph block*","block"),marks:$l.spec.marks});const e=document.createElement("div");e.innerHTML="<p></p>";if(this.value){e.innerHTML=await this.contentConverter.parseAsHTML(this.value,$l)}const i=st.fromSchema(t).parse(e);this.view=new dl(this.host.shadowRoot.querySelector("#editor"),{state:ei.create({doc:i,plugins:Zf({schema:t,menuBar:false})}),dispatchTransaction:t=>{const e=this.view.state.apply(t);this.view.updateState(e);this.change.emit(this.contentConverter.serialize(this.view,$l))}});this.menuCommandFactory=new Hf(t);if(this.value){this.updateView(this.value)}};this.handleActionBarItem=t=>{t.preventDefault();const{text:e}=t.detail;const i=e.replace(/\s/g,"").toLowerCase();try{const t=this.menuCommandFactory.createCommand(i);this.executeCommand(t)}catch(t){throw new Error(`Error executing command: ${t}`)}};this.contentType="markdown";this.value=undefined;this.view=undefined;this.actionBarItems=[]}watchValue(t){if(!this.view||t===this.contentConverter.serialize(this.view,$l)){return}this.updateView(t)}componentWillLoad(){if(this.contentType==="markdown"){this.contentConverter=new vp}else if(this.contentType==="html"){this.contentConverter=new yp}}componentDidLoad(){setTimeout(this.initializeTextEditor,0)}render(){return[i("div",{id:"editor"}),i("limel-action-bar",{accessibleLabel:"Toolbar",actions:this.actionBarItems,onItemSelected:this.handleActionBarItem})]}async updateView(t){const e=await this.contentConverter.parseAsHTML(t,$l);const i=st.fromSchema(this.view.state.schema);const r=new window.DOMParser;const n=r.parseFromString(e,"text/html");const s=i.parse(n.body);const l=this.view.state.tr;l.replaceWith(0,l.doc.content.size,s.content);this.view.dispatch(l)}executeCommand(t){const{state:e}=this.view;const i=e.selection;let r=e.tr;if(!i.empty){r.setSelection(i)}t(e,(t=>{r=t}));this.view.dispatch(r);this.view.focus()}get host(){return r(this)}static get watchers(){return{value:["watchValue"]}}};Ep.style=Fp;export{Ep as limel_prosemirror_adapter};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,c as e,h as i,g as r}from"./p-443111b3.js";import{d as n,m as s}from"./p-714d3ef8.js";import"./p-eab67c09.js";function l(t){this.content=t}l.prototype={constructor:l,find:function(t){for(var e=0;e<this.content.length;e+=2)if(this.content[e]===t)return e;return-1},get:function(t){var e=this.find(t);return e==-1?undefined:this.content[e+1]},update:function(t,e,i){var r=i&&i!=t?this.remove(i):this;var n=r.find(t),s=r.content.slice();if(n==-1){s.push(i||t,e)}else{s[n+1]=e;if(i)s[n]=i}return new l(s)},remove:function(t){var e=this.find(t);if(e==-1)return this;var i=this.content.slice();i.splice(e,2);return new l(i)},addToStart:function(t,e){return new l([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var i=this.remove(t).content.slice();i.push(t,e);return new l(i)},addBefore:function(t,e,i){var r=this.remove(e),n=r.content.slice();var s=r.find(t);n.splice(s==-1?n.length:s,0,e,i);return new l(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=l.from(t);if(!t.size)return this;return new l(t.content.concat(this.subtract(t).content))},append:function(t){t=l.from(t);if(!t.size)return this;return new l(this.subtract(t).content.concat(t.content))},subtract:function(t){var e=this;t=l.from(t);for(var i=0;i<t.content.length;i+=2)e=e.remove(t.content[i]);return e},toObject:function(){var t={};this.forEach((function(e,i){t[e]=i}));return t},get size(){return this.content.length>>1}};l.from=function(t){if(t instanceof l)return t;var e=[];if(t)for(var i in t)e.push(i,t[i]);return new l(e)};function u(t,e,i){for(let r=0;;r++){if(r==t.childCount||r==e.childCount)return t.childCount==e.childCount?null:i;let n=t.child(r),s=e.child(r);if(n==s){i+=n.nodeSize;continue}if(!n.sameMarkup(s))return i;if(n.isText&&n.text!=s.text){for(let t=0;n.text[t]==s.text[t];t++)i++;return i}if(n.content.size||s.content.size){let t=u(n.content,s.content,i+1);if(t!=null)return t}i+=n.nodeSize}}function o(t,e,i,r){for(let n=t.childCount,s=e.childCount;;){if(n==0||s==0)return n==s?null:{a:i,b:r};let l=t.child(--n),u=e.child(--s),f=l.nodeSize;if(l==u){i-=f;r-=f;continue}if(!l.sameMarkup(u))return{a:i,b:r};if(l.isText&&l.text!=u.text){let t=0,e=Math.min(l.text.length,u.text.length);while(t<e&&l.text[l.text.length-t-1]==u.text[u.text.length-t-1]){t++;i--;r--}return{a:i,b:r}}if(l.content.size||u.content.size){let t=o(l.content,u.content,i-1,r-1);if(t)return t}i-=f;r-=f}}class f{constructor(t,e){this.content=t;this.size=e||0;if(e==null)for(let e=0;e<t.length;e++)this.size+=t[e].nodeSize}nodesBetween(t,e,i,r=0,n){for(let s=0,l=0;l<e;s++){let u=this.content[s],o=l+u.nodeSize;if(o>t&&i(u,r+l,n||null,s)!==false&&u.content.size){let n=l+1;u.nodesBetween(Math.max(0,t-n),Math.min(u.content.size,e-n),i,r+n)}l=o}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,i,r){let n="",s=true;this.nodesBetween(t,e,((l,u)=>{let o=l.isText?l.text.slice(Math.max(t,u)-u,e-u):!l.isLeaf?"":r?typeof r==="function"?r(l):r:l.type.spec.leafText?l.type.spec.leafText(l):"";if(l.isBlock&&(l.isLeaf&&o||l.isTextblock)&&i){if(s)s=false;else n+=i}n+=o}),0);return n}append(t){if(!t.size)return this;if(!this.size)return t;let e=this.lastChild,i=t.firstChild,r=this.content.slice(),n=0;if(e.isText&&e.sameMarkup(i)){r[r.length-1]=e.withText(e.text+i.text);n=1}for(;n<t.content.length;n++)r.push(t.content[n]);return new f(r,this.size+t.size)}cut(t,e=this.size){if(t==0&&e==this.size)return this;let i=[],r=0;if(e>t)for(let n=0,s=0;s<e;n++){let l=this.content[n],u=s+l.nodeSize;if(u>t){if(s<t||u>e){if(l.isText)l=l.cut(Math.max(0,t-s),Math.min(l.text.length,e-s));else l=l.cut(Math.max(0,t-s-1),Math.min(l.content.size,e-s-1))}i.push(l);r+=l.nodeSize}s=u}return new f(i,r)}cutByIndex(t,e){if(t==e)return f.empty;if(t==0&&e==this.content.length)return this;return new f(this.content.slice(t,e))}replaceChild(t,e){let i=this.content[t];if(i==e)return this;let r=this.content.slice();let n=this.size+e.nodeSize-i.nodeSize;r[t]=e;return new f(r,n)}addToStart(t){return new f([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new f(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return false;for(let e=0;e<this.content.length;e++)if(!this.content[e].eq(t.content[e]))return false;return true}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(t){let e=this.content[t];if(!e)throw new RangeError("Index "+t+" out of range for "+this);return e}maybeChild(t){return this.content[t]||null}forEach(t){for(let e=0,i=0;e<this.content.length;e++){let r=this.content[e];t(r,i,e);i+=r.nodeSize}}findDiffStart(t,e=0){return u(this,t,e)}findDiffEnd(t,e=this.size,i=t.size){return o(this,t,e,i)}findIndex(t,e=-1){if(t==0)return a(0,t);if(t==this.size)return a(this.content.length,t);if(t>this.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let i=0,r=0;;i++){let n=this.child(i),s=r+n.nodeSize;if(s>=t){if(s==t||e>0)return a(i+1,s);return a(i,r)}r=s}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map((t=>t.toJSON())):null}static fromJSON(t,e){if(!e)return f.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new f(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return f.empty;let e,i=0;for(let r=0;r<t.length;r++){let n=t[r];i+=n.nodeSize;if(r&&n.isText&&t[r-1].sameMarkup(n)){if(!e)e=t.slice(0,r);e[e.length-1]=n.withText(e[e.length-1].text+n.text)}else if(e){e.push(n)}}return new f(e||t,i)}static from(t){if(!t)return f.empty;if(t instanceof f)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new f([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}f.empty=new f([],0);const h={index:0,offset:0};function a(t,e){h.index=t;h.offset=e;return h}function c(t,e){if(t===e)return true;if(!(t&&typeof t=="object")||!(e&&typeof e=="object"))return false;let i=Array.isArray(t);if(Array.isArray(e)!=i)return false;if(i){if(t.length!=e.length)return false;for(let i=0;i<t.length;i++)if(!c(t[i],e[i]))return false}else{for(let i in t)if(!(i in e)||!c(t[i],e[i]))return false;for(let i in e)if(!(i in t))return false}return true}class d{constructor(t,e){this.type=t;this.attrs=e}addToSet(t){let e,i=false;for(let r=0;r<t.length;r++){let n=t[r];if(this.eq(n))return t;if(this.type.excludes(n.type)){if(!e)e=t.slice(0,r)}else if(n.type.excludes(this.type)){return t}else{if(!i&&n.type.rank>this.type.rank){if(!e)e=t.slice(0,r);e.push(this);i=true}if(e)e.push(n)}}if(!e)e=t.slice();if(!i)e.push(this);return e}removeFromSet(t){for(let e=0;e<t.length;e++)if(this.eq(t[e]))return t.slice(0,e).concat(t.slice(e+1));return t}isInSet(t){for(let e=0;e<t.length;e++)if(this.eq(t[e]))return true;return false}eq(t){return this==t||this.type==t.type&&c(this.attrs,t.attrs)}toJSON(){let t={type:this.type.name};for(let e in this.attrs){t.attrs=this.attrs;break}return t}static fromJSON(t,e){if(!e)throw new RangeError("Invalid input for Mark.fromJSON");let i=t.marks[e.type];if(!i)throw new RangeError(`There is no mark type ${e.type} in this schema`);return i.create(e.attrs)}static sameSet(t,e){if(t==e)return true;if(t.length!=e.length)return false;for(let i=0;i<t.length;i++)if(!t[i].eq(e[i]))return false;return true}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return d.none;if(t instanceof d)return[t];let e=t.slice();e.sort(((t,e)=>t.type.rank-e.type.rank));return e}}d.none=[];class p extends Error{}class m{constructor(t,e,i){this.content=t;this.openStart=e;this.openEnd=i}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,e){let i=g(this.content,t+this.openStart,e);return i&&new m(i,this.openStart,this.openEnd)}removeBetween(t,e){return new m(w(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 m.empty;let i=e.openStart||0,r=e.openEnd||0;if(typeof i!="number"||typeof r!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new m(f.fromJSON(t,e.content),i,r)}static maxOpen(t,e=true){let i=0,r=0;for(let r=t.firstChild;r&&!r.isLeaf&&(e||!r.type.spec.isolating);r=r.firstChild)i++;for(let i=t.lastChild;i&&!i.isLeaf&&(e||!i.type.spec.isolating);i=i.lastChild)r++;return new m(t,i,r)}}m.empty=new m(f.empty,0,0);function w(t,e,i){let{index:r,offset:n}=t.findIndex(e),s=t.maybeChild(r);let{index:l,offset:u}=t.findIndex(i);if(n==e||s.isText){if(u!=i&&!t.child(l).isText)throw new RangeError("Removing non-flat range");return t.cut(0,e).append(t.cut(i))}if(r!=l)throw new RangeError("Removing non-flat range");return t.replaceChild(r,s.copy(w(s.content,e-n-1,i-n-1)))}function g(t,e,i,r){let{index:n,offset:s}=t.findIndex(e),l=t.maybeChild(n);if(s==e||l.isText){if(r&&!r.canReplace(n,n,i))return null;return t.cut(0,e).append(i).append(t.cut(e))}let u=g(l.content,e-s-1,i);return u&&t.replaceChild(n,l.copy(u))}function b(t,e,i){if(i.openStart>t.depth)throw new p("Inserted content deeper than insertion position");if(t.depth-i.openStart!=e.depth-i.openEnd)throw new p("Inconsistent open depths");return D(t,e,i,0)}function D(t,e,i,r){let n=t.index(r),s=t.node(r);if(n==e.index(r)&&r<t.depth-i.openStart){let l=D(t,e,i,r+1);return s.copy(s.content.replaceChild(n,l))}else if(!i.content.size){return E(s,M(t,e,r))}else if(!i.openStart&&!i.openEnd&&t.depth==r&&e.depth==r){let r=t.parent,n=r.content;return E(r,n.cut(0,t.parentOffset).append(i.content).append(n.cut(e.parentOffset)))}else{let{start:n,end:l}=A(i,t);return E(s,x(t,n,l,e,r))}}function k(t,e){if(!e.type.compatibleContent(t.type))throw new p("Cannot join "+e.type.name+" onto "+t.type.name)}function v(t,e,i){let r=t.node(i);k(r,e.node(i));return r}function y(t,e){let i=e.length-1;if(i>=0&&t.isText&&t.sameMarkup(e[i]))e[i]=t.withText(e[i].text+t.text);else e.push(t)}function F(t,e,i,r){let n=(e||t).node(i);let s=0,l=e?e.index(i):n.childCount;if(t){s=t.index(i);if(t.depth>i){s++}else if(t.textOffset){y(t.nodeAfter,r);s++}}for(let t=s;t<l;t++)y(n.child(t),r);if(e&&e.depth==i&&e.textOffset)y(e.nodeBefore,r)}function E(t,e){t.type.checkContent(e);return t.copy(e)}function x(t,e,i,r,n){let s=t.depth>n&&v(t,e,n+1);let l=r.depth>n&&v(i,r,n+1);let u=[];F(null,t,n,u);if(s&&l&&e.index(n)==i.index(n)){k(s,l);y(E(s,x(t,e,i,r,n+1)),u)}else{if(s)y(E(s,M(t,e,n+1)),u);F(e,i,n,u);if(l)y(E(l,M(i,r,n+1)),u)}F(r,null,n,u);return new f(u)}function M(t,e,i){let r=[];F(null,t,i,r);if(t.depth>i){let n=v(t,e,i+1);y(E(n,M(t,e,i+1)),r)}F(e,null,i,r);return new f(r)}function A(t,e){let i=e.depth-t.openStart,r=e.node(i);let n=r.copy(t.content);for(let t=i-1;t>=0;t--)n=e.node(t).copy(f.from(n));return{start:n.resolveNoCache(t.openStart+i),end:n.resolveNoCache(n.content.size-t.openEnd-i)}}class C{constructor(t,e,i){this.pos=t;this.path=e;this.parentOffset=i;this.depth=e.length/3-1}resolveDepth(t){if(t==null)return this.depth;if(t<0)return this.depth+t;return t}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(t){return this.path[this.resolveDepth(t)*3]}index(t){return this.path[this.resolveDepth(t)*3+1]}indexAfter(t){t=this.resolveDepth(t);return this.index(t)+(t==this.depth&&!this.textOffset?0:1)}start(t){t=this.resolveDepth(t);return t==0?0:this.path[t*3-1]+1}end(t){t=this.resolveDepth(t);return this.start(t)+this.node(t).content.size}before(t){t=this.resolveDepth(t);if(!t)throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]}after(t){t=this.resolveDepth(t);if(!t)throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]+this.path[t*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let t=this.parent,e=this.index(this.depth);if(e==t.childCount)return null;let i=this.pos-this.path[this.path.length-1],r=t.child(e);return i?t.child(e).cut(i):r}get nodeBefore(){let t=this.index(this.depth);let e=this.pos-this.path[this.path.length-1];if(e)return this.parent.child(t).cut(0,e);return t==0?null:this.parent.child(t-1)}posAtIndex(t,e){e=this.resolveDepth(e);let i=this.path[e*3],r=e==0?0:this.path[e*3-1]+1;for(let e=0;e<t;e++)r+=i.child(e).nodeSize;return r}marks(){let t=this.parent,e=this.index();if(t.content.size==0)return d.none;if(this.textOffset)return t.child(e).marks;let i=t.maybeChild(e-1),r=t.maybeChild(e);if(!i){let t=i;i=r;r=t}let n=i.marks;for(var s=0;s<n.length;s++)if(n[s].type.spec.inclusive===false&&(!r||!n[s].isInSet(r.marks)))n=n[s--].removeFromSet(n);return n}marksAcross(t){let e=this.parent.maybeChild(this.index());if(!e||!e.isInline)return null;let i=e.marks,r=t.parent.maybeChild(t.index());for(var n=0;n<i.length;n++)if(i[n].type.spec.inclusive===false&&(!r||!i[n].isInSet(r.marks)))i=i[n--].removeFromSet(i);return i}sharedDepth(t){for(let e=this.depth;e>0;e--)if(this.start(e)<=t&&this.end(e)>=t)return e;return 0}blockRange(t=this,e){if(t.pos<this.pos)return t.blockRange(this);for(let i=this.depth-(this.parent.inlineContent||this.pos==t.pos?1:0);i>=0;i--)if(t.pos<=this.end(i)&&(!e||e(this.node(i))))return new _(this,t,i);return null}sameParent(t){return this.pos-this.parentOffset==t.pos-t.parentOffset}max(t){return t.pos>this.pos?t:this}min(t){return t.pos<this.pos?t:this}toString(){let t="";for(let e=1;e<=this.depth;e++)t+=(t?"/":"")+this.node(e).type.name+"_"+this.index(e-1);return t+":"+this.parentOffset}static resolve(t,e){if(!(e>=0&&e<=t.content.size))throw new RangeError("Position "+e+" out of range");let i=[];let r=0,n=e;for(let e=t;;){let{index:t,offset:s}=e.content.findIndex(n);let l=n-s;i.push(e,t,r+s);if(!l)break;e=e.child(t);if(e.isText)break;n=l-1;r+=s+1}return new C(e,i,n)}static resolveCached(t,e){for(let i=0;i<S.length;i++){let r=S[i];if(r.pos==e&&r.doc==t)return r}let i=S[O]=C.resolve(t,e);O=(O+1)%$;return i}}let S=[],O=0,$=12;class _{constructor(t,e,i){this.$from=t;this.$to=e;this.depth=i}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const B=Object.create(null);class q{constructor(t,e,i,r=d.none){this.type=t;this.attrs=e;this.marks=r;this.content=i||f.empty}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(t){return this.content.child(t)}maybeChild(t){return this.content.maybeChild(t)}forEach(t){this.content.forEach(t)}nodesBetween(t,e,i,r=0){this.content.nodesBetween(t,e,i,r,this)}descendants(t){this.nodesBetween(0,this.content.size,t)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(t,e,i,r){return this.content.textBetween(t,e,i,r)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(t){return this==t||this.sameMarkup(t)&&this.content.eq(t.content)}sameMarkup(t){return this.hasMarkup(t.type,t.attrs,t.marks)}hasMarkup(t,e,i){return this.type==t&&c(this.attrs,e||t.defaultAttrs||B)&&d.sameSet(this.marks,i||d.none)}copy(t=null){if(t==this.content)return this;return new q(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new q(this.type,this.attrs,this.content,t)}cut(t,e=this.content.size){if(t==0&&e==this.content.size)return this;return this.copy(this.content.cut(t,e))}slice(t,e=this.content.size,i=false){if(t==e)return m.empty;let r=this.resolve(t),n=this.resolve(e);let s=i?0:r.sharedDepth(e);let l=r.start(s),u=r.node(s);let o=u.content.cut(r.pos-l,n.pos-l);return new m(o,r.depth-s,n.depth-s)}replace(t,e,i){return b(this.resolve(t),this.resolve(e),i)}nodeAt(t){for(let e=this;;){let{index:i,offset:r}=e.content.findIndex(t);e=e.maybeChild(i);if(!e)return null;if(r==t||e.isText)return e;t-=r+1}}childAfter(t){let{index:e,offset:i}=this.content.findIndex(t);return{node:this.content.maybeChild(e),index:e,offset:i}}childBefore(t){if(t==0)return{node:null,index:0,offset:0};let{index:e,offset:i}=this.content.findIndex(t);if(i<t)return{node:this.content.child(e),index:e,offset:i};let r=this.content.child(e-1);return{node:r,index:e-1,offset:i-r.nodeSize}}resolve(t){return C.resolveCached(this,t)}resolveNoCache(t){return C.resolve(this,t)}rangeHasMark(t,e,i){let r=false;if(e>t)this.nodesBetween(t,e,(t=>{if(i.isInSet(t.marks))r=true;return!r}));return r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let t=this.type.name;if(this.content.size)t+="("+this.content.toStringInner()+")";return N(this.marks,t)}contentMatchAt(t){let e=this.type.contentMatch.matchFragment(this.content,0,t);if(!e)throw new Error("Called contentMatchAt on a node with invalid content");return e}canReplace(t,e,i=f.empty,r=0,n=i.childCount){let s=this.contentMatchAt(t).matchFragment(i,r,n);let l=s&&s.matchFragment(this.content,e);if(!l||!l.validEnd)return false;for(let t=r;t<n;t++)if(!this.type.allowsMarks(i.child(t).marks))return false;return true}canReplaceWith(t,e,i,r){if(r&&!this.type.allowsMarks(r))return false;let n=this.contentMatchAt(t).matchType(i);let s=n&&n.matchFragment(this.content,e);return s?s.validEnd:false}canAppend(t){if(t.content.size)return this.canReplace(this.childCount,this.childCount,t.content);else return this.type.compatibleContent(t.type)}check(){this.type.checkContent(this.content);let t=d.none;for(let e=0;e<this.marks.length;e++)t=this.marks[e].addToSet(t);if(!d.sameSet(t,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map((t=>t.type.name))}`);this.content.forEach((t=>t.check()))}toJSON(){let t={type:this.type.name};for(let e in this.attrs){t.attrs=this.attrs;break}if(this.content.size)t.content=this.content.toJSON();if(this.marks.length)t.marks=this.marks.map((t=>t.toJSON()));return t}static fromJSON(t,e){if(!e)throw new RangeError("Invalid input for Node.fromJSON");let i=null;if(e.marks){if(!Array.isArray(e.marks))throw new RangeError("Invalid mark data for Node.fromJSON");i=e.marks.map(t.markFromJSON)}if(e.type=="text"){if(typeof e.text!="string")throw new RangeError("Invalid text node in JSON");return t.text(e.text,i)}let r=f.fromJSON(t,e.content);return t.nodeType(e.type).create(e.attrs,r,i)}}q.prototype.text=undefined;class R extends q{constructor(t,e,i,r){super(t,e,null,r);if(!i)throw new RangeError("Empty text nodes are not allowed");this.text=i}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);return N(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 R(this.type,this.attrs,this.text,t)}withText(t){if(t==this.text)return this;return new R(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 N(t,e){for(let i=t.length-1;i>=0;i--)e=t[i].type.name+"("+e+")";return e}class z{constructor(t){this.validEnd=t;this.next=[];this.wrapCache=[]}static parse(t,e){let i=new T(t,e);if(i.next==null)return z.empty;let r=I(i);if(i.next)i.err("Unexpected trailing text");let n=V(H(r));G(n,i);return n}matchType(t){for(let e=0;e<this.next.length;e++)if(this.next[e].type==t)return this.next[e].next;return null}matchFragment(t,e=0,i=t.childCount){let r=this;for(let n=e;r&&n<i;n++)r=r.matchType(t.child(n).type);return r}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let t=0;t<this.next.length;t++){let{type:e}=this.next[t];if(!(e.isText||e.hasRequiredAttrs()))return e}return null}compatible(t){for(let e=0;e<this.next.length;e++)for(let i=0;i<t.next.length;i++)if(this.next[e].type==t.next[i].type)return true;return false}fillBefore(t,e=false,i=0){let r=[this];function n(s,l){let u=s.matchFragment(t,i);if(u&&(!e||u.validEnd))return f.from(l.map((t=>t.createAndFill())));for(let t=0;t<s.next.length;t++){let{type:e,next:i}=s.next[t];if(!(e.isText||e.hasRequiredAttrs())&&r.indexOf(i)==-1){r.push(i);let t=n(i,l.concat(e));if(t)return t}}return null}return n(this,[])}findWrapping(t){for(let e=0;e<this.wrapCache.length;e+=2)if(this.wrapCache[e]==t)return this.wrapCache[e+1];let e=this.computeWrapping(t);this.wrapCache.push(t,e);return e}computeWrapping(t){let e=Object.create(null),i=[{match:this,type:null,via:null}];while(i.length){let r=i.shift(),n=r.match;if(n.matchType(t)){let t=[];for(let e=r;e.type;e=e.via)t.push(e.type);return t.reverse()}for(let t=0;t<n.next.length;t++){let{type:s,next:l}=n.next[t];if(!s.isLeaf&&!s.hasRequiredAttrs()&&!(s.name in e)&&(!r.type||l.validEnd)){i.push({match:s.contentMatch,type:s,via:r});e[s.name]=true}}}return null}get edgeCount(){return this.next.length}edge(t){if(t>=this.next.length)throw new RangeError(`There's no ${t}th edge in this content match`);return this.next[t]}toString(){let t=[];function e(i){t.push(i);for(let r=0;r<i.next.length;r++)if(t.indexOf(i.next[r].next)==-1)e(i.next[r].next)}e(this);return t.map(((e,i)=>{let r=i+(e.validEnd?"*":" ")+" ";for(let i=0;i<e.next.length;i++)r+=(i?", ":"")+e.next[i].type.name+"->"+t.indexOf(e.next[i].next);return r})).join("\n")}}z.empty=new z(true);class T{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 I(t){let e=[];do{e.push(P(t))}while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function P(t){let e=[];do{e.push(j(t))}while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function j(t){let e=U(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=L(t,e);else break}return e}function J(t){if(/\D/.test(t.next))t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);t.pos++;return e}function L(t,e){let i=J(t),r=i;if(t.eat(",")){if(t.next!="}")r=J(t);else r=-1}if(!t.eat("}"))t.err("Unclosed braced range");return{type:"range",min:i,max:r,expr:e}}function W(t,e){let i=t.nodeTypes,r=i[e];if(r)return[r];let n=[];for(let t in i){let r=i[t];if(r.groups.indexOf(e)>-1)n.push(r)}if(n.length==0)t.err("No node type or group '"+e+"' found");return n}function U(t){if(t.eat("(")){let e=I(t);if(!t.eat(")"))t.err("Missing closing paren");return e}else if(!/\W/.test(t.next)){let e=W(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 H(t){let e=[[]];n(s(t,0),i());return e;function i(){return e.push([])-1}function r(t,i,r){let n={term:r,to:i};e[t].push(n);return n}function n(t,e){t.forEach((t=>t.to=e))}function s(t,e){if(t.type=="choice"){return t.exprs.reduce(((t,i)=>t.concat(s(i,e))),[])}else if(t.type=="seq"){for(let r=0;;r++){let l=s(t.exprs[r],e);if(r==t.exprs.length-1)return l;n(l,e=i())}}else if(t.type=="star"){let l=i();r(e,l);n(s(t.expr,l),l);return[r(l)]}else if(t.type=="plus"){let l=i();n(s(t.expr,e),l);n(s(t.expr,l),l);return[r(l)]}else if(t.type=="opt"){return[r(e)].concat(s(t.expr,e))}else if(t.type=="range"){let l=e;for(let e=0;e<t.min;e++){let e=i();n(s(t.expr,l),e);l=e}if(t.max==-1){n(s(t.expr,l),l)}else{for(let e=t.min;e<t.max;e++){let e=i();r(l,e);n(s(t.expr,l),e);l=e}}return[r(l)]}else if(t.type=="name"){return[r(e,undefined,t.value)]}else{throw new Error("Unknown expr type")}}}function Z(t,e){return e-t}function K(t,e){let i=[];r(e);return i.sort(Z);function r(e){let n=t[e];if(n.length==1&&!n[0].term)return r(n[0].to);i.push(e);for(let t=0;t<n.length;t++){let{term:e,to:s}=n[t];if(!e&&i.indexOf(s)==-1)r(s)}}}function V(t){let e=Object.create(null);return i(K(t,0));function i(r){let n=[];r.forEach((e=>{t[e].forEach((({term:e,to:i})=>{if(!e)return;let r;for(let t=0;t<n.length;t++)if(n[t][0]==e)r=n[t][1];K(t,i).forEach((t=>{if(!r)n.push([e,r=[]]);if(r.indexOf(t)==-1)r.push(t)}))}))}));let s=e[r.join(",")]=new z(r.indexOf(t.length-1)>-1);for(let t=0;t<n.length;t++){let r=n[t][1].sort(Z);s.next.push({type:n[t][0],next:e[r.join(",")]||i(r)})}return s}}function G(t,e){for(let i=0,r=[t];i<r.length;i++){let t=r[i],n=!t.validEnd,s=[];for(let e=0;e<t.next.length;e++){let{type:i,next:l}=t.next[e];s.push(i.name);if(n&&!(i.isText||i.hasRequiredAttrs()))n=false;if(r.indexOf(l)==-1)r.push(l)}if(n)e.err("Only non-generatable nodes ("+s.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function X(t){let e=Object.create(null);for(let i in t){let r=t[i];if(!r.hasDefault)return null;e[i]=r.default}return e}function Y(t,e){let i=Object.create(null);for(let r in t){let n=e&&e[r];if(n===undefined){let e=t[r];if(e.hasDefault)n=e.default;else throw new RangeError("No value supplied for attribute "+r)}i[r]=n}return i}function Q(t){let e=Object.create(null);if(t)for(let i in t)e[i]=new et(t[i]);return e}class tt{constructor(t,e,i){this.name=t;this.schema=e;this.spec=i;this.markSet=null;this.groups=i.group?i.group.split(" "):[];this.attrs=Q(i.attrs);this.defaultAttrs=X(this.attrs);this.contentMatch=null;this.inlineContent=null;this.isBlock=!(i.inline||t=="text");this.isText=t=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==z.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 Y(this.attrs,t)}create(t=null,e,i){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new q(this,this.computeAttrs(t),f.from(e),d.setFrom(i))}createChecked(t=null,e,i){e=f.from(e);this.checkContent(e);return new q(this,this.computeAttrs(t),e,d.setFrom(i))}createAndFill(t=null,e,i){t=this.computeAttrs(t);e=f.from(e);if(e.size){let t=this.contentMatch.fillBefore(e);if(!t)return null;e=t.append(e)}let r=this.contentMatch.matchFragment(e);let n=r&&r.fillBefore(f.empty,true);if(!n)return null;return new q(this,t,e.append(n),d.setFrom(i))}validContent(t){let e=this.contentMatch.matchFragment(t);if(!e||!e.validEnd)return false;for(let e=0;e<t.childCount;e++)if(!this.allowsMarks(t.child(e).marks))return false;return true}checkContent(t){if(!this.validContent(t))throw new RangeError(`Invalid content for node ${this.name}: ${t.toString().slice(0,50)}`)}allowsMarkType(t){return this.markSet==null||this.markSet.indexOf(t)>-1}allowsMarks(t){if(this.markSet==null)return true;for(let e=0;e<t.length;e++)if(!this.allowsMarkType(t[e].type))return false;return true}allowedMarks(t){if(this.markSet==null)return t;let e;for(let i=0;i<t.length;i++){if(!this.allowsMarkType(t[i].type)){if(!e)e=t.slice(0,i)}else if(e){e.push(t[i])}}return!e?t:e.length?e:d.none}static compile(t,e){let i=Object.create(null);t.forEach(((t,r)=>i[t]=new tt(t,e,r)));let r=e.spec.topNode||"doc";if(!i[r])throw new RangeError("Schema is missing its top node type ('"+r+"')");if(!i.text)throw new RangeError("Every schema needs a 'text' type");for(let t in i.text.attrs)throw new RangeError("The text node type should not have attributes");return i}}class et{constructor(t){this.hasDefault=Object.prototype.hasOwnProperty.call(t,"default");this.default=t.default}get isRequired(){return!this.hasDefault}}class it{constructor(t,e,i,r){this.name=t;this.rank=e;this.schema=i;this.spec=r;this.attrs=Q(r.attrs);this.excluded=null;let n=X(this.attrs);this.instance=n?new d(this,n):null}create(t=null){if(!t&&this.instance)return this.instance;return new d(this,Y(this.attrs,t))}static compile(t,e){let i=Object.create(null),r=0;t.forEach(((t,n)=>i[t]=new it(t,r++,e,n)));return i}removeFromSet(t){for(var e=0;e<t.length;e++)if(t[e].type==this){t=t.slice(0,e).concat(t.slice(e+1));e--}return t}isInSet(t){for(let e=0;e<t.length;e++)if(t[e].type==this)return t[e]}excludes(t){return this.excluded.indexOf(t)>-1}}class rt{constructor(t){this.cached=Object.create(null);let e=this.spec={};for(let i in t)e[i]=t[i];e.nodes=l.from(t.nodes),e.marks=l.from(t.marks||{}),this.nodes=tt.compile(this.spec.nodes,this);this.marks=it.compile(this.spec.marks,this);let i=Object.create(null);for(let t in this.nodes){if(t in this.marks)throw new RangeError(t+" can not be both a node and a mark");let e=this.nodes[t],r=e.spec.content||"",n=e.spec.marks;e.contentMatch=i[r]||(i[r]=z.parse(r,this.nodes));e.inlineContent=e.contentMatch.inlineContent;e.markSet=n=="_"?null:n?nt(this,n.split(" ")):n==""||!e.inlineContent?[]:null}for(let t in this.marks){let e=this.marks[t],i=e.spec.excludes;e.excluded=i==null?[e]:i==""?[]:nt(this,i.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this);this.markFromJSON=this.markFromJSON.bind(this);this.topNodeType=this.nodes[this.spec.topNode||"doc"];this.cached.wrappings=Object.create(null)}node(t,e=null,i,r){if(typeof t=="string")t=this.nodeType(t);else if(!(t instanceof tt))throw new RangeError("Invalid node type: "+t);else if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")");return t.createChecked(e,i,r)}text(t,e){let i=this.nodes.text;return new R(i,i.defaultAttrs,t,d.setFrom(e))}mark(t,e){if(typeof t=="string")t=this.marks[t];return t.create(e)}nodeFromJSON(t){return q.fromJSON(this,t)}markFromJSON(t){return d.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function nt(t,e){let i=[];for(let r=0;r<e.length;r++){let n=e[r],s=t.marks[n],l=s;if(s){i.push(s)}else{for(let e in t.marks){let r=t.marks[e];if(n=="_"||r.spec.group&&r.spec.group.split(" ").indexOf(n)>-1)i.push(l=r)}}if(!l)throw new SyntaxError("Unknown mark type: '"+e[r]+"'")}return i}class st{constructor(t,e){this.schema=t;this.rules=e;this.tags=[];this.styles=[];e.forEach((t=>{if(t.tag)this.tags.push(t);else if(t.style)this.styles.push(t)}));this.normalizeLists=!this.tags.some((e=>{if(!/^(ul|ol)\b/.test(e.tag)||!e.node)return false;let i=t.nodes[e.node];return i.contentMatch.matchType(i)}))}parse(t,e={}){let i=new pt(this,e,false);i.addAll(t,e.from,e.to);return i.finish()}parseSlice(t,e={}){let i=new pt(this,e,true);i.addAll(t,e.from,e.to);return m.maxOpen(i.finish())}matchTag(t,e,i){for(let r=i?this.tags.indexOf(i)+1:0;r<this.tags.length;r++){let i=this.tags[r];if(wt(t,i.tag)&&(i.namespace===undefined||t.namespaceURI==i.namespace)&&(!i.context||e.matchesContext(i.context))){if(i.getAttrs){let e=i.getAttrs(t);if(e===false)continue;i.attrs=e||undefined}return i}}}matchStyle(t,e,i,r){for(let n=r?this.styles.indexOf(r)+1:0;n<this.styles.length;n++){let r=this.styles[n],s=r.style;if(s.indexOf(t)!=0||r.context&&!i.matchesContext(r.context)||s.length>t.length&&(s.charCodeAt(t.length)!=61||s.slice(t.length+1)!=e))continue;if(r.getAttrs){let t=r.getAttrs(e);if(t===false)continue;r.attrs=t||undefined}return r}}static schemaRules(t){let e=[];function i(t){let i=t.priority==null?50:t.priority,r=0;for(;r<e.length;r++){let t=e[r],n=t.priority==null?50:t.priority;if(n<i)break}e.splice(r,0,t)}for(let e in t.marks){let r=t.marks[e].spec.parseDOM;if(r)r.forEach((t=>{i(t=bt(t));if(!(t.mark||t.ignore||t.clearMark))t.mark=e}))}for(let e in t.nodes){let r=t.nodes[e].spec.parseDOM;if(r)r.forEach((t=>{i(t=bt(t));if(!(t.node||t.ignore||t.mark))t.node=e}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new st(t,st.schemaRules(t)))}}const lt={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 ut={head:true,noscript:true,object:true,script:true,style:true,title:true};const ot={ol:true,ul:true};const ft=1,ht=2,at=4;function ct(t,e,i){if(e!=null)return(e?ft:0)|(e==="full"?ht:0);return t&&t.whitespace=="pre"?ft|ht:i&~at}class dt{constructor(t,e,i,r,n,s,l){this.type=t;this.attrs=e;this.marks=i;this.pendingMarks=r;this.solid=n;this.options=l;this.content=[];this.activeMarks=d.none;this.stashMarks=[];this.match=s||(l&at?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(f.from(t));if(e){this.match=this.type.contentMatch.matchFragment(e)}else{let e=this.type.contentMatch,i;if(i=e.findWrapping(t.type)){this.match=e;return i}else{return null}}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&ft)){let t=this.content[this.content.length-1],e;if(t&&t.isText&&(e=/[ \t\r\n\u000c]+$/.exec(t.text))){let i=t;if(t.text.length==e[0].length)this.content.pop();else this.content[this.content.length-1]=i.withText(i.text.slice(0,i.text.length-e[0].length))}}let e=f.from(this.content);if(!t&&this.match)e=e.append(this.match.fillBefore(f.empty,true));return this.type?this.type.create(this.attrs,e,this.marks):e}popFromStashMark(t){for(let e=this.stashMarks.length-1;e>=0;e--)if(t.eq(this.stashMarks[e]))return this.stashMarks.splice(e,1)[0]}applyPending(t){for(let e=0,i=this.pendingMarks;e<i.length;e++){let r=i[e];if((this.type?this.type.allowsMarkType(r.type):Dt(r.type,t))&&!r.isInSet(this.activeMarks)){this.activeMarks=r.addToSet(this.activeMarks);this.pendingMarks=r.removeFromSet(this.pendingMarks)}}}inlineContext(t){if(this.type)return this.type.inlineContent;if(this.content.length)return this.content[0].isInline;return t.parentNode&&!lt.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class pt{constructor(t,e,i){this.parser=t;this.options=e;this.isOpen=i;this.open=0;let r=e.topNode,n;let s=ct(null,e.preserveWhitespace,0)|(i?at:0);if(r)n=new dt(r.type,r.attrs,d.none,d.none,true,e.topMatch||r.type.contentMatch,s);else if(i)n=new dt(null,null,d.none,d.none,true,null,s);else n=new dt(t.schema.topNodeType,null,d.none,d.none,true,null,s);this.nodes=[n];this.find=e.findPositions;this.needsBlock=false}get top(){return this.nodes[this.open]}addDOM(t){if(t.nodeType==3)this.addTextNode(t);else if(t.nodeType==1)this.addElement(t)}withStyleRules(t,e){let i=t.getAttribute("style");if(!i)return e();let r=this.readStyles(gt(i));if(!r)return;let[n,s]=r,l=this.top;for(let t=0;t<s.length;t++)this.removePendingMark(s[t],l);for(let t=0;t<n.length;t++)this.addPendingMark(n[t]);e();for(let t=0;t<n.length;t++)this.removePendingMark(n[t],l);for(let t=0;t<s.length;t++)this.addPendingMark(s[t])}addTextNode(t){let e=t.nodeValue;let i=this.top;if(i.options&ht||i.inlineContext(t)||/[^ \t\r\n\u000c]/.test(e)){if(!(i.options&ft)){e=e.replace(/[ \t\r\n\u000c]+/g," ");if(/^[ \t\r\n\u000c]/.test(e)&&this.open==this.nodes.length-1){let r=i.content[i.content.length-1];let n=t.previousSibling;if(!r||n&&n.nodeName=="BR"||r.isText&&/[ \t\r\n\u000c]$/.test(r.text))e=e.slice(1)}}else if(!(i.options&ht)){e=e.replace(/\r?\n|\r/g," ")}else{e=e.replace(/\r\n?/g,"\n")}if(e)this.insertNode(this.parser.schema.text(e));this.findInText(t)}else{this.findInside(t)}}addElement(t,e){let i=t.nodeName.toLowerCase(),r;if(ot.hasOwnProperty(i)&&this.parser.normalizeLists)mt(t);let n=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(r=this.parser.matchTag(t,this,e));if(n?n.ignore:ut.hasOwnProperty(i)){this.findInside(t);this.ignoreFallback(t)}else if(!n||n.skip||n.closeParent){if(n&&n.closeParent)this.open=Math.max(0,this.open-1);else if(n&&n.skip.nodeType)t=n.skip;let e,r=this.top,s=this.needsBlock;if(lt.hasOwnProperty(i)){if(r.content.length&&r.content[0].isInline&&this.open){this.open--;r=this.top}e=true;if(!r.type)this.needsBlock=true}else if(!t.firstChild){this.leafFallback(t);return}if(n&&n.skip)this.addAll(t);else this.withStyleRules(t,(()=>this.addAll(t)));if(e)this.sync(r);this.needsBlock=s}else{this.withStyleRules(t,(()=>{this.addElementByRule(t,n,n.consuming===false?r:undefined)}))}}leafFallback(t){if(t.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent)this.addTextNode(t.ownerDocument.createTextNode("\n"))}ignoreFallback(t){if(t.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent))this.findPlace(this.parser.schema.text("-"))}readStyles(t){let e=d.none,i=d.none;for(let r=0;r<t.length;r+=2){for(let n=undefined;;){let s=this.parser.matchStyle(t[r],t[r+1],this,n);if(!s)break;if(s.ignore)return null;if(s.clearMark){this.top.pendingMarks.concat(this.top.activeMarks).forEach((t=>{if(s.clearMark(t))i=t.addToSet(i)}))}else{e=this.parser.schema.marks[s.mark].create(s.attrs).addToSet(e)}if(s.consuming===false)n=s;else break}}return[e,i]}addElementByRule(t,e,i){let r,n,s;if(e.node){n=this.parser.schema.nodes[e.node];if(!n.isLeaf){r=this.enter(n,e.attrs||null,e.preserveWhitespace)}else if(!this.insertNode(n.create(e.attrs))){this.leafFallback(t)}}else{let t=this.parser.schema.marks[e.mark];s=t.create(e.attrs);this.addPendingMark(s)}let l=this.top;if(n&&n.isLeaf){this.findInside(t)}else if(i){this.addElement(t,i)}else if(e.getContent){this.findInside(t);e.getContent(t,this.parser.schema).forEach((t=>this.insertNode(t)))}else{let i=t;if(typeof e.contentElement=="string")i=t.querySelector(e.contentElement);else if(typeof e.contentElement=="function")i=e.contentElement(t);else if(e.contentElement)i=e.contentElement;this.findAround(t,i,true);this.addAll(i)}if(r&&this.sync(l))this.open--;if(s)this.removePendingMark(s,l)}addAll(t,e,i){let r=e||0;for(let n=e?t.childNodes[e]:t.firstChild,s=i==null?null:t.childNodes[i];n!=s;n=n.nextSibling,++r){this.findAtPoint(t,r);this.addDOM(n)}this.findAtPoint(t,r)}findPlace(t){let e,i;for(let r=this.open;r>=0;r--){let n=this.nodes[r];let s=n.findWrapping(t);if(s&&(!e||e.length>s.length)){e=s;i=n;if(!s.length)break}if(n.solid)break}if(!e)return false;this.sync(i);for(let t=0;t<e.length;t++)this.enterInner(e[t],null,false);return true}insertNode(t){if(t.isInline&&this.needsBlock&&!this.top.type){let t=this.textblockFromContext();if(t)this.enterInner(t)}if(this.findPlace(t)){this.closeExtra();let e=this.top;e.applyPending(t.type);if(e.match)e.match=e.match.matchType(t.type);let i=e.activeMarks;for(let r=0;r<t.marks.length;r++)if(!e.type||e.type.allowsMarkType(t.marks[r].type))i=t.marks[r].addToSet(i);e.content.push(t.mark(i));return true}return false}enter(t,e,i){let r=this.findPlace(t.create(e));if(r)this.enterInner(t,e,true,i);return r}enterInner(t,e=null,i=false,r){this.closeExtra();let n=this.top;n.applyPending(t);n.match=n.match&&n.match.matchType(t);let s=ct(t,r,n.options);if(n.options&at&&n.content.length==0)s|=at;this.nodes.push(new dt(t,e,n.activeMarks,n.pendingMarks,i,null,s));this.open++}closeExtra(t=false){let e=this.nodes.length-1;if(e>this.open){for(;e>this.open;e--)this.nodes[e-1].content.push(this.nodes[e].finish(t));this.nodes.length=this.open+1}}finish(){this.open=0;this.closeExtra(this.isOpen);return this.nodes[0].finish(this.isOpen||this.options.topOpen)}sync(t){for(let e=this.open;e>=0;e--)if(this.nodes[e]==t){this.open=e;return true}return false}get currentPos(){this.closeExtra();let t=0;for(let e=this.open;e>=0;e--){let i=this.nodes[e].content;for(let e=i.length-1;e>=0;e--)t+=i[e].nodeSize;if(e)t++}return t}findAtPoint(t,e){if(this.find)for(let i=0;i<this.find.length;i++){if(this.find[i].node==t&&this.find[i].offset==e)this.find[i].pos=this.currentPos}}findInside(t){if(this.find)for(let e=0;e<this.find.length;e++){if(this.find[e].pos==null&&t.nodeType==1&&t.contains(this.find[e].node))this.find[e].pos=this.currentPos}}findAround(t,e,i){if(t!=e&&this.find)for(let r=0;r<this.find.length;r++){if(this.find[r].pos==null&&t.nodeType==1&&t.contains(this.find[r].node)){let t=e.compareDocumentPosition(this.find[r].node);if(t&(i?2:4))this.find[r].pos=this.currentPos}}}findInText(t){if(this.find)for(let e=0;e<this.find.length;e++){if(this.find[e].node==t)this.find[e].pos=this.currentPos-(t.nodeValue.length-this.find[e].offset)}}matchesContext(t){if(t.indexOf("|")>-1)return t.split(/\s*\|\s*/).some(this.matchesContext,this);let e=t.split("/");let i=this.options.context;let r=!this.isOpen&&(!i||i.parent.type==this.nodes[0].type);let n=-(i?i.depth+1:0)+(r?0:1);let s=(t,l)=>{for(;t>=0;t--){let u=e[t];if(u==""){if(t==e.length-1||t==0)continue;for(;l>=n;l--)if(s(t-1,l))return true;return false}else{let t=l>0||l==0&&r?this.nodes[l].type:i&&l>=n?i.node(l-n).type:null;if(!t||t.name!=u&&t.groups.indexOf(u)==-1)return false;l--}}return true};return s(e.length-1,this.open)}textblockFromContext(){let t=this.options.context;if(t)for(let e=t.depth;e>=0;e--){let i=t.node(e).contentMatchAt(t.indexAfter(e)).defaultType;if(i&&i.isTextblock&&i.defaultAttrs)return i}for(let t in this.parser.schema.nodes){let e=this.parser.schema.nodes[t];if(e.isTextblock&&e.defaultAttrs)return e}}addPendingMark(t){let e=kt(t,this.top.pendingMarks);if(e)this.top.stashMarks.push(e);this.top.pendingMarks=t.addToSet(this.top.pendingMarks)}removePendingMark(t,e){for(let i=this.open;i>=0;i--){let r=this.nodes[i];let n=r.pendingMarks.lastIndexOf(t);if(n>-1){r.pendingMarks=t.removeFromSet(r.pendingMarks)}else{r.activeMarks=t.removeFromSet(r.activeMarks);let e=r.popFromStashMark(t);if(e&&r.type&&r.type.allowsMarkType(e.type))r.activeMarks=e.addToSet(r.activeMarks)}if(r==e)break}}}function mt(t){for(let e=t.firstChild,i=null;e;e=e.nextSibling){let t=e.nodeType==1?e.nodeName.toLowerCase():null;if(t&&ot.hasOwnProperty(t)&&i){i.appendChild(e);e=i}else if(t=="li"){i=e}else if(t){i=null}}}function wt(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function gt(t){let e=/\s*([\w-]+)\s*:\s*([^;]+)/g,i,r=[];while(i=e.exec(t))r.push(i[1],i[2].trim());return r}function bt(t){let e={};for(let i in t)e[i]=t[i];return e}function Dt(t,e){let i=e.schema.nodes;for(let r in i){let n=i[r];if(!n.allowsMarkType(t))continue;let s=[],l=t=>{s.push(t);for(let i=0;i<t.edgeCount;i++){let{type:r,next:n}=t.edge(i);if(r==e)return true;if(s.indexOf(n)<0&&l(n))return true}};if(l(n.contentMatch))return true}}function kt(t,e){for(let i=0;i<e.length;i++){if(t.eq(e[i]))return e[i]}}class vt{constructor(t,e){this.nodes=t;this.marks=e}serializeFragment(t,e={},i){if(!i)i=Ft(e).createDocumentFragment();let r=i,n=[];t.forEach((t=>{if(n.length||t.marks.length){let i=0,s=0;while(i<n.length&&s<t.marks.length){let e=t.marks[s];if(!this.marks[e.type.name]){s++;continue}if(!e.eq(n[i][0])||e.type.spec.spanning===false)break;i++;s++}while(i<n.length)r=n.pop()[1];while(s<t.marks.length){let i=t.marks[s++];let l=this.serializeMark(i,t.isInline,e);if(l){n.push([i,r]);r.appendChild(l.dom);r=l.contentDOM||l.dom}}}r.appendChild(this.serializeNodeInner(t,e))}));return i}serializeNodeInner(t,e){let{dom:i,contentDOM:r}=vt.renderSpec(Ft(e),this.nodes[t.type.name](t));if(r){if(t.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(t.content,e,r)}return i}serializeNode(t,e={}){let i=this.serializeNodeInner(t,e);for(let r=t.marks.length-1;r>=0;r--){let n=this.serializeMark(t.marks[r],t.isInline,e);if(n){(n.contentDOM||n.dom).appendChild(i);i=n.dom}}return i}serializeMark(t,e,i={}){let r=this.marks[t.type.name];return r&&vt.renderSpec(Ft(i),r(t,e))}static renderSpec(t,e,i=null){if(typeof e=="string")return{dom:t.createTextNode(e)};if(e.nodeType!=null)return{dom:e};if(e.dom&&e.dom.nodeType!=null)return e;let r=e[0],n=r.indexOf(" ");if(n>0){i=r.slice(0,n);r=r.slice(n+1)}let s;let l=i?t.createElementNS(i,r):t.createElement(r);let u=e[1],o=1;if(u&&typeof u=="object"&&u.nodeType==null&&!Array.isArray(u)){o=2;for(let t in u)if(u[t]!=null){let e=t.indexOf(" ");if(e>0)l.setAttributeNS(t.slice(0,e),t.slice(e+1),u[t]);else l.setAttribute(t,u[t])}}for(let r=o;r<e.length;r++){let n=e[r];if(n===0){if(r<e.length-1||r>o)throw new RangeError("Content hole must be the only child of its parent node");return{dom:l,contentDOM:l}}else{let{dom:e,contentDOM:r}=vt.renderSpec(t,n,i);l.appendChild(e);if(r){if(s)throw new RangeError("Multiple content holes");s=r}}}return{dom:l,contentDOM:s}}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new vt(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=yt(t.nodes);if(!e.text)e.text=t=>t.text;return e}static marksFromSchema(t){return yt(t.marks)}}function yt(t){let e={};for(let i in t){let r=t[i].spec.toDOM;if(r)e[i]=r}return e}function Ft(t){return t.document||window.document}const Et=65535;const xt=Math.pow(2,16);function Mt(t,e){return t+e*xt}function At(t){return t&Et}function Ct(t){return(t-(t&Et))/xt}const St=1,Ot=2,$t=4,_t=8;class Bt{constructor(t,e,i){this.pos=t;this.delInfo=e;this.recover=i}get deleted(){return(this.delInfo&_t)>0}get deletedBefore(){return(this.delInfo&(St|$t))>0}get deletedAfter(){return(this.delInfo&(Ot|$t))>0}get deletedAcross(){return(this.delInfo&$t)>0}}class qt{constructor(t,e=false){this.ranges=t;this.inverted=e;if(!t.length&&qt.empty)return qt.empty}recover(t){let e=0,i=At(t);if(!this.inverted)for(let t=0;t<i;t++)e+=this.ranges[t*3+2]-this.ranges[t*3+1];return this.ranges[i*3]+e+Ct(t)}mapResult(t,e=1){return this._map(t,e,false)}map(t,e=1){return this._map(t,e,true)}_map(t,e,i){let r=0,n=this.inverted?2:1,s=this.inverted?1:2;for(let l=0;l<this.ranges.length;l+=3){let u=this.ranges[l]-(this.inverted?r:0);if(u>t)break;let o=this.ranges[l+n],f=this.ranges[l+s],h=u+o;if(t<=h){let n=!o?e:t==u?-1:t==h?1:e;let s=u+r+(n<0?0:f);if(i)return s;let a=t==(e<0?u:h)?null:Mt(l/3,t-u);let c=t==u?Ot:t==h?St:$t;if(e<0?t!=u:t!=h)c|=_t;return new Bt(s,c,a)}r+=f-o}return i?t+r:new Bt(t+r,0,null)}touches(t,e){let i=0,r=At(e);let n=this.inverted?2:1,s=this.inverted?1:2;for(let e=0;e<this.ranges.length;e+=3){let l=this.ranges[e]-(this.inverted?i:0);if(l>t)break;let u=this.ranges[e+n],o=l+u;if(t<=o&&e==r*3)return true;i+=this.ranges[e+s]-u}return false}forEach(t){let e=this.inverted?2:1,i=this.inverted?1:2;for(let r=0,n=0;r<this.ranges.length;r+=3){let s=this.ranges[r],l=s-(this.inverted?n:0),u=s+(this.inverted?0:n);let o=this.ranges[r+e],f=this.ranges[r+i];t(l,l+o,u,u+f);n+=f-o}}invert(){return new qt(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?qt.empty:new qt(t<0?[0,-t,0]:[0,0,t])}}qt.empty=new qt([]);class Rt{constructor(t=[],e,i=0,r=t.length){this.maps=t;this.mirror=e;this.from=i;this.to=r}slice(t=0,e=this.maps.length){return new Rt(this.maps,this.mirror,t,e)}copy(){return new Rt(this.maps.slice(),this.mirror&&this.mirror.slice(),this.from,this.to)}appendMap(t,e){this.to=this.maps.push(t);if(e!=null)this.setMirror(this.maps.length-1,e)}appendMapping(t){for(let e=0,i=this.maps.length;e<t.maps.length;e++){let r=t.getMirror(e);this.appendMap(t.maps[e],r!=null&&r<e?i+r:undefined)}}getMirror(t){if(this.mirror)for(let e=0;e<this.mirror.length;e++)if(this.mirror[e]==t)return this.mirror[e+(e%2?-1:1)]}setMirror(t,e){if(!this.mirror)this.mirror=[];this.mirror.push(t,e)}appendMappingInverted(t){for(let e=t.maps.length-1,i=this.maps.length+t.maps.length;e>=0;e--){let r=t.getMirror(e);this.appendMap(t.maps[e].invert(),r!=null&&r>e?i-r-1:undefined)}}invert(){let t=new Rt;t.appendMappingInverted(this);return t}map(t,e=1){if(this.mirror)return this._map(t,e,true);for(let i=this.from;i<this.to;i++)t=this.maps[i].map(t,e);return t}mapResult(t,e=1){return this._map(t,e,false)}_map(t,e,i){let r=0;for(let i=this.from;i<this.to;i++){let n=this.maps[i],s=n.mapResult(t,e);if(s.recover!=null){let e=this.getMirror(i);if(e!=null&&e>i&&e<this.to){i=e;t=this.maps[e].recover(s.recover);continue}}r|=s.delInfo;t=s.pos}return i?t:new Bt(t,r,null)}}const Nt=Object.create(null);class zt{getMap(){return qt.empty}merge(t){return null}static fromJSON(t,e){if(!e||!e.stepType)throw new RangeError("Invalid input for Step.fromJSON");let i=Nt[e.stepType];if(!i)throw new RangeError(`No step type ${e.stepType} defined`);return i.fromJSON(t,e)}static jsonID(t,e){if(t in Nt)throw new RangeError("Duplicate use of step JSON ID "+t);Nt[t]=e;e.prototype.jsonID=t;return e}}class Tt{constructor(t,e){this.doc=t;this.failed=e}static ok(t){return new Tt(t,null)}static fail(t){return new Tt(null,t)}static fromReplace(t,e,i,r){try{return Tt.ok(t.replace(e,i,r))}catch(t){if(t instanceof p)return Tt.fail(t.message);throw t}}}function It(t,e,i){let r=[];for(let n=0;n<t.childCount;n++){let s=t.child(n);if(s.content.size)s=s.copy(It(s.content,e,s));if(s.isInline)s=e(s,i,n);r.push(s)}return f.fromArray(r)}class Pt extends zt{constructor(t,e,i){super();this.from=t;this.to=e;this.mark=i}apply(t){let e=t.slice(this.from,this.to),i=t.resolve(this.from);let r=i.node(i.sharedDepth(this.to));let n=new m(It(e.content,((t,e)=>{if(!t.isAtom||!e.type.allowsMarkType(this.mark.type))return t;return t.mark(this.mark.addToSet(t.marks))}),r),e.openStart,e.openEnd);return Tt.fromReplace(t,this.from,this.to,n)}invert(){return new jt(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);if(e.deleted&&i.deleted||e.pos>=i.pos)return null;return new Pt(e.pos,i.pos,this.mark)}merge(t){if(t instanceof Pt&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new Pt(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 Pt(e.from,e.to,t.markFromJSON(e.mark))}}zt.jsonID("addMark",Pt);class jt extends zt{constructor(t,e,i){super();this.from=t;this.to=e;this.mark=i}apply(t){let e=t.slice(this.from,this.to);let i=new m(It(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Tt.fromReplace(t,this.from,this.to,i)}invert(){return new Pt(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);if(e.deleted&&i.deleted||e.pos>=i.pos)return null;return new jt(e.pos,i.pos,this.mark)}merge(t){if(t instanceof jt&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from)return new jt(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 jt(e.from,e.to,t.markFromJSON(e.mark))}}zt.jsonID("removeMark",jt);class Jt extends zt{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Tt.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Tt.fromReplace(t,this.pos,this.pos+1,new m(f.from(i),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(e){let t=this.mark.addToSet(e.marks);if(t.length==e.marks.length){for(let i=0;i<e.marks.length;i++)if(!e.marks[i].isInSet(t))return new Jt(this.pos,e.marks[i]);return new Jt(this.pos,this.mark)}}return new Lt(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Jt(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 Jt(e.pos,t.markFromJSON(e.mark))}}zt.jsonID("addNodeMark",Jt);class Lt extends zt{constructor(t,e){super();this.pos=t;this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Tt.fail("No node at mark step's position");let i=e.type.create(e.attrs,null,this.mark.removeFromSet(e.marks));return Tt.fromReplace(t,this.pos,this.pos+1,new m(f.from(i),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(!e||!this.mark.isInSet(e.marks))return this;return new Jt(this.pos,this.mark)}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Lt(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 Lt(e.pos,t.markFromJSON(e.mark))}}zt.jsonID("removeNodeMark",Lt);class Wt extends zt{constructor(t,e,i,r=false){super();this.from=t;this.to=e;this.slice=i;this.structure=r}apply(t){if(this.structure&&Ht(t,this.from,this.to))return Tt.fail("Structure replace would overwrite content");return Tt.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new qt([this.from,this.to-this.from,this.slice.size])}invert(t){return new Wt(this.from,this.from+this.slice.size,t.slice(this.from,this.to))}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);if(e.deletedAcross&&i.deletedAcross)return null;return new Wt(e.pos,Math.max(e.pos,i.pos),this.slice)}merge(t){if(!(t instanceof Wt)||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?m.empty:new m(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new Wt(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?m.empty:new m(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new Wt(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 Wt(e.from,e.to,m.fromJSON(t,e.slice),!!e.structure)}}zt.jsonID("replace",Wt);class Ut extends zt{constructor(t,e,i,r,n,s,l=false){super();this.from=t;this.to=e;this.gapFrom=i;this.gapTo=r;this.slice=n;this.insert=s;this.structure=l}apply(t){if(this.structure&&(Ht(t,this.from,this.gapFrom)||Ht(t,this.gapTo,this.to)))return Tt.fail("Structure gap-replace would overwrite content");let e=t.slice(this.gapFrom,this.gapTo);if(e.openStart||e.openEnd)return Tt.fail("Gap is not a flat range");let i=this.slice.insertAt(this.insert,e.content);if(!i)return Tt.fail("Content does not fit in gap");return Tt.fromReplace(t,this.from,this.to,i)}getMap(){return new qt([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 Ut(this.from,this.from+this.slice.size+e,this.from+this.insert,this.from+this.insert+e,t.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(t){let e=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);let r=t.map(this.gapFrom,-1),n=t.map(this.gapTo,1);if(e.deletedAcross&&i.deletedAcross||r<e.pos||n>i.pos)return null;return new Ut(e.pos,i.pos,r,n,this.slice,this.insert,this.structure)}toJSON(){let t={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};if(this.slice.size)t.slice=this.slice.toJSON();if(this.structure)t.structure=true;return t}static fromJSON(t,e){if(typeof e.from!="number"||typeof e.to!="number"||typeof e.gapFrom!="number"||typeof e.gapTo!="number"||typeof e.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new Ut(e.from,e.to,e.gapFrom,e.gapTo,m.fromJSON(t,e.slice),e.insert,!!e.structure)}}zt.jsonID("replaceAround",Ut);function Ht(t,e,i){let r=t.resolve(e),n=i-e,s=r.depth;while(n>0&&s>0&&r.indexAfter(s)==r.node(s).childCount){s--;n--}if(n>0){let t=r.node(s).maybeChild(r.indexAfter(s));while(n>0){if(!t||t.isLeaf)return true;t=t.firstChild;n--}}return false}function Zt(t,e,i,r){let n=[],s=[];let l,u;t.doc.nodesBetween(e,i,((t,o,f)=>{if(!t.isInline)return;let h=t.marks;if(!r.isInSet(h)&&f.type.allowsMarkType(r.type)){let f=Math.max(o,e),a=Math.min(o+t.nodeSize,i);let c=r.addToSet(h);for(let t=0;t<h.length;t++){if(!h[t].isInSet(c)){if(l&&l.to==f&&l.mark.eq(h[t]))l.to=a;else n.push(l=new jt(f,a,h[t]))}}if(u&&u.to==f)u.to=a;else s.push(u=new Pt(f,a,r))}}));n.forEach((e=>t.step(e)));s.forEach((e=>t.step(e)))}function Kt(t,e,i,r){let n=[],s=0;t.doc.nodesBetween(e,i,((t,l)=>{if(!t.isInline)return;s++;let u=null;if(r instanceof it){let e=t.marks,i;while(i=r.isInSet(e)){(u||(u=[])).push(i);e=i.removeFromSet(e)}}else if(r){if(r.isInSet(t.marks))u=[r]}else{u=t.marks}if(u&&u.length){let r=Math.min(l+t.nodeSize,i);for(let t=0;t<u.length;t++){let i=u[t],o;for(let t=0;t<n.length;t++){let e=n[t];if(e.step==s-1&&i.eq(n[t].style))o=e}if(o){o.to=r;o.step=s}else{n.push({style:i,from:Math.max(l,e),to:r,step:s})}}}}));n.forEach((e=>t.step(new jt(e.from,e.to,e.style))))}function Vt(t,e,i,r=i.contentMatch){let n=t.doc.nodeAt(e);let s=[],l=e+1;for(let e=0;e<n.childCount;e++){let u=n.child(e),o=l+u.nodeSize;let h=r.matchType(u.type);if(!h){s.push(new Wt(l,o,m.empty))}else{r=h;for(let e=0;e<u.marks.length;e++)if(!i.allowsMarkType(u.marks[e].type))t.step(new jt(l,o,u.marks[e]));if(u.isText&&!i.spec.code){let t,e=/\r?\n|\r/g,r;while(t=e.exec(u.text)){if(!r)r=new m(f.from(i.schema.text(" ",i.allowedMarks(u.marks))),0,0);s.push(new Wt(l+t.index,l+t.index+t[0].length,r))}}}l=o}if(!r.validEnd){let e=r.fillBefore(f.empty,true);t.replace(l,l,new m(e,0,0))}for(let e=s.length-1;e>=0;e--)t.step(s[e])}function Gt(t,e,i){return(e==0||t.canReplace(e,t.childCount))&&(i==t.childCount||t.canReplace(0,i))}function Xt(t){let e=t.parent;let i=e.content.cutByIndex(t.startIndex,t.endIndex);for(let e=t.depth;;--e){let r=t.$from.node(e);let n=t.$from.index(e),s=t.$to.indexAfter(e);if(e<t.depth&&r.canReplace(n,s,i))return e;if(e==0||r.type.spec.isolating||!Gt(r,n,s))break}return null}function Yt(t,e,i){let{$from:r,$to:n,depth:s}=e;let l=r.before(s+1),u=n.after(s+1);let o=l,h=u;let a=f.empty,c=0;for(let t=s,e=false;t>i;t--)if(e||r.index(t)>0){e=true;a=f.from(r.node(t).copy(a));c++}else{o--}let d=f.empty,p=0;for(let t=s,e=false;t>i;t--)if(e||n.after(t+1)<n.end(t)){e=true;d=f.from(n.node(t).copy(d));p++}else{h++}t.step(new Ut(o,h,l,u,new m(a.append(d),c,p),a.size-c,true))}function Qt(t,e,i=null,r=t){let n=ee(t,e);let s=n&&ie(r,e);if(!s)return null;return n.map(te).concat({type:e,attrs:i}).concat(s.map(te))}function te(t){return{type:t,attrs:null}}function ee(t,e){let{parent:i,startIndex:r,endIndex:n}=t;let s=i.contentMatchAt(r).findWrapping(e);if(!s)return null;let l=s.length?s[0]:e;return i.canReplaceWith(r,n,l)?s:null}function ie(t,e){let{parent:i,startIndex:r,endIndex:n}=t;let s=i.child(r);let l=e.contentMatch.findWrapping(s.type);if(!l)return null;let u=l.length?l[l.length-1]:e;let o=u.contentMatch;for(let t=r;o&&t<n;t++)o=o.matchType(i.child(t).type);if(!o||!o.validEnd)return null;return l}function re(t,e,i){let r=f.empty;for(let t=i.length-1;t>=0;t--){if(r.size){let e=i[t].type.contentMatch.matchFragment(r);if(!e||!e.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}r=f.from(i[t].type.create(i[t].attrs,r))}let n=e.start,s=e.end;t.step(new Ut(n,s,n,s,new m(r,0,0),i.length,true))}function ne(t,e,i,r,n){if(!r.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let s=t.steps.length;t.doc.nodesBetween(e,i,((e,i)=>{if(e.isTextblock&&!e.hasMarkup(r,n)&&se(t.doc,t.mapping.slice(s).map(i),r)){t.clearIncompatible(t.mapping.slice(s).map(i,1),r);let l=t.mapping.slice(s);let u=l.map(i,1),o=l.map(i+e.nodeSize,1);t.step(new Ut(u,o,u+1,o-1,new m(f.from(r.create(n,null,e.marks)),0,0),1,true));return false}}))}function se(t,e,i){let r=t.resolve(e),n=r.index();return r.parent.canReplaceWith(n,n+1,i)}function le(t,e,i,r,n){let s=t.doc.nodeAt(e);if(!s)throw new RangeError("No node at given position");if(!i)i=s.type;let l=i.create(r,null,n||s.marks);if(s.isLeaf)return t.replaceWith(e,e+s.nodeSize,l);if(!i.validContent(s.content))throw new RangeError("Invalid content for node type "+i.name);t.step(new Ut(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new m(f.from(l),0,0),1,true))}function ue(t,e,i=1,r){let n=t.resolve(e),s=n.depth-i;let l=r&&r[r.length-1]||n.parent;if(s<0||n.parent.type.spec.isolating||!n.parent.canReplace(n.index(),n.parent.childCount)||!l.type.validContent(n.parent.content.cutByIndex(n.index(),n.parent.childCount)))return false;for(let t=n.depth-1,e=i-2;t>s;t--,e--){let i=n.node(t),s=n.index(t);if(i.type.spec.isolating)return false;let l=i.content.cutByIndex(s,i.childCount);let u=r&&r[e+1];if(u)l=l.replaceChild(0,u.type.create(u.attrs));let o=r&&r[e]||i;if(!i.canReplace(s+1,i.childCount)||!o.type.validContent(l))return false}let u=n.indexAfter(s);let o=r&&r[0];return n.node(s).canReplaceWith(u,u,o?o.type:n.node(s+1).type)}function oe(t,e,i=1,r){let n=t.doc.resolve(e),s=f.empty,l=f.empty;for(let t=n.depth,e=n.depth-i,u=i-1;t>e;t--,u--){s=f.from(n.node(t).copy(s));let e=r&&r[u];l=f.from(e?e.type.create(e.attrs,l):n.node(t).copy(l))}t.step(new Wt(e,e,new m(s.append(l),i,i),true))}function fe(t,e){let i=t.resolve(e),r=i.index();return he(i.nodeBefore,i.nodeAfter)&&i.parent.canReplace(r,r+1)}function he(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function ae(t,e,i=-1){let r=t.resolve(e);for(let t=r.depth;;t--){let n,s,l=r.index(t);if(t==r.depth){n=r.nodeBefore;s=r.nodeAfter}else if(i>0){n=r.node(t+1);l++;s=r.node(t).maybeChild(l)}else{n=r.node(t).maybeChild(l-1);s=r.node(t+1)}if(n&&!n.isTextblock&&he(n,s)&&r.node(t).canReplace(l,l+1))return e;if(t==0)break;e=i<0?r.before(t):r.after(t)}}function ce(t,e,i){let r=new Wt(e-i,e+i,m.empty,true);t.step(r)}function de(t,e,i){let r=t.resolve(e);if(r.parent.canReplaceWith(r.index(),r.index(),i))return e;if(r.parentOffset==0)for(let t=r.depth-1;t>=0;t--){let e=r.index(t);if(r.node(t).canReplaceWith(e,e,i))return r.before(t+1);if(e>0)return null}if(r.parentOffset==r.parent.content.size)for(let t=r.depth-1;t>=0;t--){let e=r.indexAfter(t);if(r.node(t).canReplaceWith(e,e,i))return r.after(t+1);if(e<r.node(t).childCount)return null}return null}function pe(t,e,i){let r=t.resolve(e);if(!i.content.size)return e;let n=i.content;for(let t=0;t<i.openStart;t++)n=n.firstChild.content;for(let t=1;t<=(i.openStart==0&&i.size?2:1);t++){for(let e=r.depth;e>=0;e--){let i=e==r.depth?0:r.pos<=(r.start(e+1)+r.end(e+1))/2?-1:1;let s=r.index(e)+(i>0?1:0);let l=r.node(e),u=false;if(t==1){u=l.canReplace(s,s,n)}else{let t=l.contentMatchAt(s).findWrapping(n.firstChild.type);u=t&&l.canReplaceWith(s,s,t[0])}if(u)return i==0?r.pos:i<0?r.before(e+1):r.after(e+1)}}return null}function me(t,e,i=e,r=m.empty){if(e==i&&!r.size)return null;let n=t.resolve(e),s=t.resolve(i);if(we(n,s,r))return new Wt(e,i,r);return new ge(n,s,r).fit()}function we(t,e,i){return!i.openStart&&!i.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),i.content)}class ge{constructor(t,e,i){this.$from=t;this.$to=e;this.unplaced=i;this.frontier=[];this.placed=f.empty;for(let e=0;e<=t.depth;e++){let i=t.node(e);this.frontier.push({type:i.type,match:i.contentMatchAt(t.indexAfter(e))})}for(let e=t.depth;e>0;e--)this.placed=f.from(t.node(e).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){while(this.unplaced.size){let t=this.findFittable();if(t)this.placeNodes(t);else this.openMore()||this.dropNode()}let t=this.mustMoveInline(),e=this.placed.size-this.depth-this.$from.depth;let i=this.$from,r=this.close(t<0?this.$to:i.doc.resolve(t));if(!r)return null;let n=this.placed,s=i.depth,l=r.depth;while(s&&l&&n.childCount==1){n=n.firstChild.content;s--;l--}let u=new m(n,s,l);if(t>-1)return new Ut(i.pos,t,this.$to.pos,this.$to.end(),u,e);if(u.size||i.pos!=this.$to.pos)return new Wt(i.pos,r.pos,u);return null}findFittable(){let t=this.unplaced.openStart;for(let e=this.unplaced.content,i=0,r=this.unplaced.openEnd;i<t;i++){let n=e.firstChild;if(e.childCount>1)r=0;if(n.type.spec.isolating&&r<=i){t=i;break}e=n.content}for(let e=1;e<=2;e++){for(let i=e==1?t:this.unplaced.openStart;i>=0;i--){let t,r=null;if(i){r=ke(this.unplaced.content,i-1).firstChild;t=r.content}else{t=this.unplaced.content}let n=t.firstChild;for(let t=this.depth;t>=0;t--){let{type:s,match:l}=this.frontier[t],u,o=null;if(e==1&&(n?l.matchType(n.type)||(o=l.fillBefore(f.from(n),false)):r&&s.compatibleContent(r.type)))return{sliceDepth:i,frontierDepth:t,parent:r,inject:o};else if(e==2&&n&&(u=l.findWrapping(n.type)))return{sliceDepth:i,frontierDepth:t,parent:r,wrap:u};if(r&&l.matchType(r.type))break}}}}openMore(){let{content:t,openStart:e,openEnd:i}=this.unplaced;let r=ke(t,e);if(!r.childCount||r.firstChild.isLeaf)return false;this.unplaced=new m(t,e+1,Math.max(i,r.size+e>=t.size-i?e+1:0));return true}dropNode(){let{content:t,openStart:e,openEnd:i}=this.unplaced;let r=ke(t,e);if(r.childCount<=1&&e>0){let n=t.size-e<=e+r.size;this.unplaced=new m(be(t,e-1,1),e-1,n?e-1:i)}else{this.unplaced=new m(be(t,e,1),e,i)}}placeNodes({sliceDepth:t,frontierDepth:e,parent:i,inject:r,wrap:n}){while(this.depth>e)this.closeFrontierNode();if(n)for(let t=0;t<n.length;t++)this.openFrontierNode(n[t]);let s=this.unplaced,l=i?i.content:s.content;let u=s.openStart-t;let o=0,h=[];let{match:a,type:c}=this.frontier[e];if(r){for(let t=0;t<r.childCount;t++)h.push(r.child(t));a=a.matchFragment(r)}let d=l.size+t-(s.content.size-s.openEnd);while(o<l.childCount){let t=l.child(o),e=a.matchType(t.type);if(!e)break;o++;if(o>1||u==0||t.content.size){a=e;h.push(ve(t.mark(c.allowedMarks(t.marks)),o==1?u:0,o==l.childCount?d:-1))}}let p=o==l.childCount;if(!p)d=-1;this.placed=De(this.placed,e,f.from(h));this.frontier[e].match=a;if(p&&d<0&&i&&i.type==this.frontier[this.depth].type&&this.frontier.length>1)this.closeFrontierNode();for(let t=0,e=l;t<d;t++){let t=e.lastChild;this.frontier.push({type:t.type,match:t.contentMatchAt(t.childCount)});e=t.content}this.unplaced=!p?new m(be(s.content,t,o),s.openStart,s.openEnd):t==0?m.empty:new m(be(s.content,t-1,1),t-1,d<0?s.openEnd:t-1)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let t=this.frontier[this.depth],e;if(!t.type.isTextblock||!ye(this.$to,this.$to.depth,t.type,t.match,false)||this.$to.depth==this.depth&&(e=this.findCloseLevel(this.$to))&&e.depth==this.depth)return-1;let{depth:i}=this.$to,r=this.$to.after(i);while(i>1&&r==this.$to.end(--i))++r;return r}findCloseLevel(t){t:for(let e=Math.min(this.depth,t.depth);e>=0;e--){let{match:i,type:r}=this.frontier[e];let n=e<t.depth&&t.end(e+1)==t.pos+(t.depth-(e+1));let s=ye(t,e,r,i,n);if(!s)continue;for(let i=e-1;i>=0;i--){let{match:e,type:r}=this.frontier[i];let n=ye(t,i,r,e,true);if(!n||n.childCount)continue t}return{depth:e,fit:s,move:n?t.doc.resolve(t.after(e+1)):t}}}close(t){let e=this.findCloseLevel(t);if(!e)return null;while(this.depth>e.depth)this.closeFrontierNode();if(e.fit.childCount)this.placed=De(this.placed,e.depth,e.fit);t=e.move;for(let i=e.depth+1;i<=t.depth;i++){let e=t.node(i),r=e.type.contentMatch.fillBefore(e.content,true,t.index(i));this.openFrontierNode(e.type,e.attrs,r)}return t}openFrontierNode(t,e=null,i){let r=this.frontier[this.depth];r.match=r.match.matchType(t);this.placed=De(this.placed,this.depth,f.from(t.create(e,i)));this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop();let e=t.match.fillBefore(f.empty,true);if(e.childCount)this.placed=De(this.placed,this.frontier.length,e)}}function be(t,e,i){if(e==0)return t.cutByIndex(i,t.childCount);return t.replaceChild(0,t.firstChild.copy(be(t.firstChild.content,e-1,i)))}function De(t,e,i){if(e==0)return t.append(i);return t.replaceChild(t.childCount-1,t.lastChild.copy(De(t.lastChild.content,e-1,i)))}function ke(t,e){for(let i=0;i<e;i++)t=t.firstChild.content;return t}function ve(t,e,i){if(e<=0)return t;let r=t.content;if(e>1)r=r.replaceChild(0,ve(r.firstChild,e-1,r.childCount==1?i-1:0));if(e>0){r=t.type.contentMatch.fillBefore(r).append(r);if(i<=0)r=r.append(t.type.contentMatch.matchFragment(r).fillBefore(f.empty,true))}return t.copy(r)}function ye(t,e,i,r,n){let s=t.node(e),l=n?t.indexAfter(e):t.index(e);if(l==s.childCount&&!i.compatibleContent(s.type))return null;let u=r.fillBefore(s.content,true,l);return u&&!Fe(i,s.content,l)?u:null}function Fe(t,e,i){for(let r=i;r<e.childCount;r++)if(!t.allowsMarks(e.child(r).marks))return true;return false}function Ee(t){return t.spec.defining||t.spec.definingForContent}function xe(t,e,i,r){if(!r.size)return t.deleteRange(e,i);let n=t.doc.resolve(e),s=t.doc.resolve(i);if(we(n,s,r))return t.step(new Wt(e,i,r));let l=Se(n,t.doc.resolve(i));if(l[l.length-1]==0)l.pop();let u=-(n.depth+1);l.unshift(u);for(let t=n.depth,e=n.pos-1;t>0;t--,e--){let i=n.node(t).type.spec;if(i.defining||i.definingAsContext||i.isolating)break;if(l.indexOf(t)>-1)u=t;else if(n.before(t)==e)l.splice(1,0,-t)}let o=l.indexOf(u);let f=[],h=r.openStart;for(let t=r.content,e=0;;e++){let i=t.firstChild;f.push(i);if(e==r.openStart)break;t=i.content}for(let t=h-1;t>=0;t--){let e=f[t],i=Ee(e.type);if(i&&!e.sameMarkup(n.node(Math.abs(u)-1)))h=t;else if(i||!e.type.isTextblock)break}for(let e=r.openStart;e>=0;e--){let u=(e+h+1)%(r.openStart+1);let a=f[u];if(!a)continue;for(let e=0;e<l.length;e++){let f=l[(e+o)%l.length],h=true;if(f<0){h=false;f=-f}let c=n.node(f-1),d=n.index(f-1);if(c.canReplaceWith(d,d,a.type,a.marks))return t.replace(n.before(f),h?s.after(f):i,new m(Me(r.content,0,r.openStart,u),u,r.openEnd))}}let a=t.steps.length;for(let u=l.length-1;u>=0;u--){t.replace(e,i,r);if(t.steps.length>a)break;let o=l[u];if(o<0)continue;e=n.before(o);i=s.after(o)}}function Me(t,e,i,r,n){if(e<i){let n=t.firstChild;t=t.replaceChild(0,n.copy(Me(n.content,e+1,i,r,n)))}if(e>r){let e=n.contentMatchAt(0);let i=e.fillBefore(t).append(t);t=i.append(e.matchFragment(i).fillBefore(f.empty,true))}return t}function Ae(t,e,i,r){if(!r.isInline&&e==i&&t.doc.resolve(e).parent.content.size){let n=de(t.doc,e,r.type);if(n!=null)e=i=n}t.replaceRange(e,i,new m(f.from(r),0,0))}function Ce(t,e,i){let r=t.doc.resolve(e),n=t.doc.resolve(i);let s=Se(r,n);for(let e=0;e<s.length;e++){let i=s[e],l=e==s.length-1;if(l&&i==0||r.node(i).type.contentMatch.validEnd)return t.delete(r.start(i),n.end(i));if(i>0&&(l||r.node(i-1).canReplace(r.index(i-1),n.indexAfter(i-1))))return t.delete(r.before(i),n.after(i))}for(let s=1;s<=r.depth&&s<=n.depth;s++){if(e-r.start(s)==r.depth-s&&i>r.end(s)&&n.end(s)-i!=n.depth-s)return t.delete(r.before(s),i)}t.delete(e,i)}function Se(t,e){let i=[],r=Math.min(t.depth,e.depth);for(let n=r;n>=0;n--){let r=t.start(n);if(r<t.pos-(t.depth-n)||e.end(n)>e.pos+(e.depth-n)||t.node(n).type.spec.isolating||e.node(n).type.spec.isolating)break;if(r==e.start(n)||n==t.depth&&n==e.depth&&t.parent.inlineContent&&e.parent.inlineContent&&n&&e.start(n-1)==r-1)i.push(n)}return i}class Oe extends zt{constructor(t,e,i){super();this.pos=t;this.attr=e;this.value=i}apply(t){let e=t.nodeAt(this.pos);if(!e)return Tt.fail("No node at attribute step's position");let i=Object.create(null);for(let t in e.attrs)i[t]=e.attrs[t];i[this.attr]=this.value;let r=e.type.create(i,null,e.marks);return Tt.fromReplace(t,this.pos,this.pos+1,new m(f.from(r),0,e.isLeaf?0:1))}getMap(){return qt.empty}invert(t){return new Oe(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 Oe(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 Oe(e.pos,e.attr,e.value)}}zt.jsonID("attr",Oe);class $e extends zt{constructor(t,e){super();this.attr=t;this.value=e}apply(t){let e=Object.create(null);for(let i in t.attrs)e[i]=t.attrs[i];e[this.attr]=this.value;let i=t.type.create(e,t.content,t.marks);return Tt.ok(i)}getMap(){return qt.empty}invert(t){return new $e(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 $e(e.attr,e.value)}}zt.jsonID("docAttr",$e);let _e=class extends Error{};_e=function t(e){let i=Error.call(this,e);i.__proto__=t.prototype;return i};_e.prototype=Object.create(Error.prototype);_e.prototype.constructor=_e;_e.prototype.name="TransformError";class Be{constructor(t){this.doc=t;this.steps=[];this.docs=[];this.mapping=new Rt}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new _e(e.failed);return this}maybeStep(t){let e=t.apply(this.doc);if(!e.failed)this.addStep(t,e.doc);return e}get docChanged(){return this.steps.length>0}addStep(t,e){this.docs.push(this.doc);this.steps.push(t);this.mapping.appendMap(t.getMap());this.doc=e}replace(t,e=t,i=m.empty){let r=me(this.doc,t,e,i);if(r)this.step(r);return this}replaceWith(t,e,i){return this.replace(t,e,new m(f.from(i),0,0))}delete(t,e){return this.replace(t,e,m.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,i){xe(this,t,e,i);return this}replaceRangeWith(t,e,i){Ae(this,t,e,i);return this}deleteRange(t,e){Ce(this,t,e);return this}lift(t,e){Yt(this,t,e);return this}join(t,e=1){ce(this,t,e);return this}wrap(t,e){re(this,t,e);return this}setBlockType(t,e=t,i,r=null){ne(this,t,e,i,r);return this}setNodeMarkup(t,e,i=null,r){le(this,t,e,i,r);return this}setNodeAttribute(t,e,i){this.step(new Oe(t,e,i));return this}setDocAttribute(t,e){this.step(new $e(t,e));return this}addNodeMark(t,e){this.step(new Jt(t,e));return this}removeNodeMark(t,e){if(!(e instanceof d)){let i=this.doc.nodeAt(t);if(!i)throw new RangeError("No node at position "+t);e=e.isInSet(i.marks);if(!e)return this}this.step(new Lt(t,e));return this}split(t,e=1,i){oe(this,t,e,i);return this}addMark(t,e,i){Zt(this,t,e,i);return this}removeMark(t,e,i){Kt(this,t,e,i);return this}clearIncompatible(t,e,i){Vt(this,t,e,i);return this}}const qe=Object.create(null);class Re{constructor(t,e,i){this.$anchor=t;this.$head=e;this.ranges=i||[new Ne(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=m.empty){let i=e.content.lastChild,r=null;for(let t=0;t<e.openEnd;t++){r=i;i=i.lastChild}let n=t.steps.length,s=this.ranges;for(let l=0;l<s.length;l++){let{$from:u,$to:o}=s[l],f=t.mapping.slice(n);t.replaceRange(f.map(u.pos),f.map(o.pos),l?m.empty:e);if(l==0)He(t,n,(i?i.isInline:r&&r.isTextblock)?-1:1)}}replaceWith(t,e){let i=t.steps.length,r=this.ranges;for(let n=0;n<r.length;n++){let{$from:s,$to:l}=r[n],u=t.mapping.slice(i);let o=u.map(s.pos),f=u.map(l.pos);if(n){t.deleteRange(o,f)}else{t.replaceRangeWith(o,f,e);He(t,i,e.isInline?-1:1)}}}static findFrom(t,e,i=false){let r=t.parent.inlineContent?new Ie(t):Ue(t.node(0),t.parent,t.pos,t.index(),e,i);if(r)return r;for(let r=t.depth-1;r>=0;r--){let n=e<0?Ue(t.node(0),t.node(r),t.before(r+1),t.index(r),e,i):Ue(t.node(0),t.node(r),t.after(r+1),t.index(r)+1,e,i);if(n)return n}return null}static near(t,e=1){return this.findFrom(t,e)||this.findFrom(t,-e)||new Le(t.node(0))}static atStart(t){return Ue(t,t,0,0,1)||new Le(t)}static atEnd(t){return Ue(t,t,t.content.size,t.childCount,-1)||new Le(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let i=qe[e.type];if(!i)throw new RangeError(`No selection type ${e.type} defined`);return i.fromJSON(t,e)}static jsonID(t,e){if(t in qe)throw new RangeError("Duplicate use of selection JSON ID "+t);qe[t]=e;e.prototype.jsonID=t;return e}getBookmark(){return Ie.between(this.$anchor,this.$head).getBookmark()}}Re.prototype.visible=true;class Ne{constructor(t,e){this.$from=t;this.$to=e}}let ze=false;function Te(t){if(!ze&&!t.parent.inlineContent){ze=true;console["warn"]("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")")}}class Ie extends Re{constructor(t,e=t){Te(t);Te(e);super(t,e)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,e){let i=t.resolve(e.map(this.head));if(!i.parent.inlineContent)return Re.near(i);let r=t.resolve(e.map(this.anchor));return new Ie(r.parent.inlineContent?r:i,i)}replace(t,e=m.empty){super.replace(t,e);if(e==m.empty){let e=this.$from.marksAcross(this.$to);if(e)t.ensureMarks(e)}}eq(t){return t instanceof Ie&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new Pe(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 Ie(t.resolve(e.anchor),t.resolve(e.head))}static create(t,e,i=e){let r=t.resolve(e);return new this(r,i==e?r:t.resolve(i))}static between(t,e,i){let r=t.pos-e.pos;if(!i||r)i=r>=0?1:-1;if(!e.parent.inlineContent){let t=Re.findFrom(e,i,true)||Re.findFrom(e,-i,true);if(t)e=t.$head;else return Re.near(e,i)}if(!t.parent.inlineContent){if(r==0){t=e}else{t=(Re.findFrom(t,-i,true)||Re.findFrom(t,i,true)).$anchor;if(t.pos<e.pos!=r<0)t=e}}return new Ie(t,e)}}Re.jsonID("text",Ie);class Pe{constructor(t,e){this.anchor=t;this.head=e}map(t){return new Pe(t.map(this.anchor),t.map(this.head))}resolve(t){return Ie.between(t.resolve(this.anchor),t.resolve(this.head))}}class je extends Re{constructor(t){let e=t.nodeAfter;let i=t.node(0).resolve(t.pos+e.nodeSize);super(t,i);this.node=e}map(t,e){let{deleted:i,pos:r}=e.mapResult(this.anchor);let n=t.resolve(r);if(i)return Re.near(n);return new je(n)}content(){return new m(f.from(this.node),0,0)}eq(t){return t instanceof je&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new Je(this.anchor)}static fromJSON(t,e){if(typeof e.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new je(t.resolve(e.anchor))}static create(t,e){return new je(t.resolve(e))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==false}}je.prototype.visible=false;Re.jsonID("node",je);class Je{constructor(t){this.anchor=t}map(t){let{deleted:e,pos:i}=t.mapResult(this.anchor);return e?new Pe(i,i):new Je(i)}resolve(t){let e=t.resolve(this.anchor),i=e.nodeAfter;if(i&&je.isSelectable(i))return new je(e);return Re.near(e)}}class Le extends Re{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,e=m.empty){if(e==m.empty){t.delete(0,t.doc.content.size);let e=Re.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 Le(t)}map(t){return new Le(t)}eq(t){return t instanceof Le}getBookmark(){return We}}Re.jsonID("all",Le);const We={map(){return this},resolve(t){return new Le(t)}};function Ue(t,e,i,r,n,s=false){if(e.inlineContent)return Ie.create(t,i);for(let l=r-(n>0?0:1);n>0?l<e.childCount:l>=0;l+=n){let r=e.child(l);if(!r.isAtom){let e=Ue(t,r,i+n,n<0?r.childCount:0,n,s);if(e)return e}else if(!s&&je.isSelectable(r)){return je.create(t,i-(n<0?r.nodeSize:0))}i+=r.nodeSize*n}return null}function He(t,e,i){let r=t.steps.length-1;if(r<e)return;let n=t.steps[r];if(!(n instanceof Wt||n instanceof Ut))return;let s=t.mapping.maps[r],l;s.forEach(((t,e,i,r)=>{if(l==null)l=r}));t.setSelection(Re.near(t.doc.resolve(l),i))}const Ze=1,Ke=2,Ve=4;class Ge extends Be{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|Ze)&~Ke;this.storedMarks=null;return this}get selectionSet(){return(this.updated&Ze)>0}setStoredMarks(t){this.storedMarks=t;this.updated|=Ke;return this}ensureMarks(t){if(!d.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&Ke)>0}addStep(t,e){super.addStep(t,e);this.updated=this.updated&~Ke;this.storedMarks=null}setTime(t){this.time=t;return this}replaceSelection(t){this.selection.replace(this,t);return this}replaceSelectionWith(t,e=true){let i=this.selection;if(e)t=t.mark(this.storedMarks||(i.empty?i.$from.marks():i.$from.marksAcross(i.$to)||d.none));i.replaceWith(this,t);return this}deleteSelection(){this.selection.replace(this);return this}insertText(t,e,i){let r=this.doc.type.schema;if(e==null){if(!t)return this.deleteSelection();return this.replaceSelectionWith(r.text(t),true)}else{if(i==null)i=e;i=i==null?e:i;if(!t)return this.deleteRange(e,i);let n=this.storedMarks;if(!n){let t=this.doc.resolve(e);n=i==e?t.marks():t.marksAcross(this.doc.resolve(i))}this.replaceRangeWith(e,i,r.text(t,n));if(!this.selection.empty)this.setSelection(Re.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|=Ve;return this}get scrolledIntoView(){return(this.updated&Ve)>0}}function Xe(t,e){return!e||!t?t:t.bind(e)}class Ye{constructor(t,e,i){this.name=t;this.init=Xe(e.init,i);this.apply=Xe(e.apply,i)}}const Qe=[new Ye("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new Ye("selection",{init(t,e){return t.selection||Re.atStart(e.doc)},apply(t){return t.selection}}),new Ye("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,i,r){return r.selection.$cursor?t.storedMarks:null}}),new Ye("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class ti{constructor(t,e){this.schema=t;this.plugins=[];this.pluginsByKey=Object.create(null);this.fields=Qe.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 Ye(t.key,t.spec.state,t))}))}}class ei{constructor(t){this.config=t}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(t){return this.applyTransaction(t).state}filterTransaction(t,e=-1){for(let i=0;i<this.config.plugins.length;i++)if(i!=e){let e=this.config.plugins[i];if(e.spec.filterTransaction&&!e.spec.filterTransaction.call(e,t,this))return false}return true}applyTransaction(t){if(!this.filterTransaction(t))return{state:this,transactions:[]};let e=[t],i=this.applyInner(t),r=null;for(;;){let n=false;for(let s=0;s<this.config.plugins.length;s++){let l=this.config.plugins[s];if(l.spec.appendTransaction){let u=r?r[s].n:0,o=r?r[s].state:this;let f=u<e.length&&l.spec.appendTransaction.call(l,u?e.slice(u):e,o,i);if(f&&i.filterTransaction(f,s)){f.setMeta("appendedTransaction",t);if(!r){r=[];for(let t=0;t<this.config.plugins.length;t++)r.push(t<s?{state:i,n:e.length}:{state:this,n:0})}e.push(f);i=i.applyInner(f);n=true}if(r)r[s]={state:i,n:e.length}}}if(!n)return{state:i,transactions:e}}}applyInner(t){if(!t.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let e=new ei(this.config),i=this.config.fields;for(let r=0;r<i.length;r++){let n=i[r];e[n.name]=n.apply(t,this[n.name],this,e)}return e}get tr(){return new Ge(this)}static create(t){let e=new ti(t.doc?t.doc.type.schema:t.schema,t.plugins);let i=new ei(e);for(let r=0;r<e.fields.length;r++)i[e.fields[r].name]=e.fields[r].init(t,i);return i}reconfigure(t){let e=new ti(this.schema,t.plugins);let i=e.fields,r=new ei(e);for(let e=0;e<i.length;e++){let n=i[e].name;r[n]=this.hasOwnProperty(n)?this[n]:i[e].init(t,r)}return r}toJSON(t){let e={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks)e.storedMarks=this.storedMarks.map((t=>t.toJSON()));if(t&&typeof t=="object")for(let i in t){if(i=="doc"||i=="selection")throw new RangeError("The JSON fields `doc` and `selection` are reserved");let r=t[i],n=r.spec.state;if(n&&n.toJSON)e[i]=n.toJSON.call(r,this[r.key])}return e}static fromJSON(t,e,i){if(!e)throw new RangeError("Invalid input for EditorState.fromJSON");if(!t.schema)throw new RangeError("Required config field 'schema' missing");let r=new ti(t.schema,t.plugins);let n=new ei(r);r.fields.forEach((r=>{if(r.name=="doc"){n.doc=q.fromJSON(t.schema,e.doc)}else if(r.name=="selection"){n.selection=Re.fromJSON(n.doc,e.selection)}else if(r.name=="storedMarks"){if(e.storedMarks)n.storedMarks=e.storedMarks.map(t.schema.markFromJSON)}else{if(i)for(let s in i){let l=i[s],u=l.spec.state;if(l.key==r.name&&u&&u.fromJSON&&Object.prototype.hasOwnProperty.call(e,s)){n[r.name]=u.fromJSON.call(l,t,e[s],n);return}}n[r.name]=r.init(t,n)}}));return n}}function ii(t,e,i){for(let r in t){let n=t[r];if(n instanceof Function)n=n.bind(e);else if(r=="handleDOMEvents")n=ii(n,e,{});i[r]=n}return i}class ri{constructor(t){this.spec=t;this.props={};if(t.props)ii(t.props,this,this.props);this.key=t.key?t.key.key:si("plugin")}getState(t){return t[this.key]}}const ni=Object.create(null);function si(t){if(t in ni)return t+"$"+ ++ni[t];ni[t]=0;return t+"$"}class li{constructor(t="key"){this.key=si(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const ui=function(t){for(var e=0;;e++){t=t.previousSibling;if(!t)return e}};const oi=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let fi=null;const hi=function(t,e,i){let r=fi||(fi=document.createRange());r.setEnd(t,i==null?t.nodeValue.length:i);r.setStart(t,e||0);return r};const ai=function(t,e,i,r){return i&&(di(t,e,i,r,-1)||di(t,e,i,r,1))};const ci=/^(img|br|input|textarea|hr)$/i;function di(t,e,i,r,n){for(;;){if(t==i&&e==r)return true;if(e==(n<0?0:pi(t))){let i=t.parentNode;if(!i||i.nodeType!=1||wi(t)||ci.test(t.nodeName)||t.contentEditable=="false")return false;e=ui(t)+(n<0?0:1);t=i}else if(t.nodeType==1){t=t.childNodes[e+(n<0?-1:0)];if(t.contentEditable=="false")return false;e=n<0?pi(t):0}else{return false}}}function pi(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function mi(t,e,i){for(let r=e==0,n=e==pi(t);r||n;){if(t==i)return true;let e=ui(t);t=t.parentNode;if(!t)return false;r=r&&e==0;n=n&&e==pi(t)}}function wi(t){let e;for(let i=t;i;i=i.parentNode)if(e=i.pmViewDesc)break;return e&&e.node&&e.node.isBlock&&(e.dom==t||e.contentDOM==t)}const gi=function(t){return t.focusNode&&ai(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function bi(t,e){let i=document.createEvent("Event");i.initEvent("keydown",true,true);i.keyCode=t;i.key=i.code=e;return i}function Di(t){let e=t.activeElement;while(e&&e.shadowRoot)e=e.shadowRoot.activeElement;return e}function ki(t,e,i){if(t.caretPositionFromPoint){try{let r=t.caretPositionFromPoint(e,i);if(r)return{node:r.offsetNode,offset:r.offset}}catch(t){}}if(t.caretRangeFromPoint){let r=t.caretRangeFromPoint(e,i);if(r)return{node:r.startContainer,offset:r.startOffset}}}const vi=typeof navigator!="undefined"?navigator:null;const yi=typeof document!="undefined"?document:null;const Fi=vi&&vi.userAgent||"";const Ei=/Edge\/(\d+)/.exec(Fi);const xi=/MSIE \d/.exec(Fi);const Mi=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Fi);const Ai=!!(xi||Mi||Ei);const Ci=xi?document.documentMode:Mi?+Mi[1]:Ei?+Ei[1]:0;const Si=!Ai&&/gecko\/(\d+)/i.test(Fi);Si&&+(/Firefox\/(\d+)/.exec(Fi)||[0,0])[1];const Oi=!Ai&&/Chrome\/(\d+)/.exec(Fi);const $i=!!Oi;const _i=Oi?+Oi[1]:0;const Bi=!Ai&&!!vi&&/Apple Computer/.test(vi.vendor);const qi=Bi&&(/Mobile\/\w+/.test(Fi)||!!vi&&vi.maxTouchPoints>2);const Ri=qi||(vi?/Mac/.test(vi.platform):false);const Ni=vi?/Win/.test(vi.platform):false;const zi=/Android \d/.test(Fi);const Ti=!!yi&&"webkitFontSmoothing"in yi.documentElement.style;const Ii=Ti?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function Pi(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function ji(t,e){return typeof t=="number"?t:t[e]}function Ji(t){let e=t.getBoundingClientRect();let i=e.width/t.offsetWidth||1;let r=e.height/t.offsetHeight||1;return{left:e.left,right:e.left+t.clientWidth*i,top:e.top,bottom:e.top+t.clientHeight*r}}function Li(t,e,i){let r=t.someProp("scrollThreshold")||0,n=t.someProp("scrollMargin")||5;let s=t.dom.ownerDocument;for(let l=i||t.dom;;l=oi(l)){if(!l)break;if(l.nodeType!=1)continue;let t=l;let i=t==s.body;let u=i?Pi(s):Ji(t);let o=0,f=0;if(e.top<u.top+ji(r,"top"))f=-(u.top-e.top+ji(n,"top"));else if(e.bottom>u.bottom-ji(r,"bottom"))f=e.bottom-e.top>u.bottom-u.top?e.top+ji(n,"top")-u.top:e.bottom-u.bottom+ji(n,"bottom");if(e.left<u.left+ji(r,"left"))o=-(u.left-e.left+ji(n,"left"));else if(e.right>u.right-ji(r,"right"))o=e.right-u.right+ji(n,"right");if(o||f){if(i){s.defaultView.scrollBy(o,f)}else{let i=t.scrollLeft,r=t.scrollTop;if(f)t.scrollTop+=f;if(o)t.scrollLeft+=o;let n=t.scrollLeft-i,s=t.scrollTop-r;e={left:e.left-n,top:e.top-s,right:e.right-n,bottom:e.bottom-s}}}if(i||/^(fixed|sticky)$/.test(getComputedStyle(l).position))break}}function Wi(t){let e=t.dom.getBoundingClientRect(),i=Math.max(0,e.top);let r,n;for(let s=(e.left+e.right)/2,l=i+1;l<Math.min(innerHeight,e.bottom);l+=5){let e=t.root.elementFromPoint(s,l);if(!e||e==t.dom||!t.dom.contains(e))continue;let u=e.getBoundingClientRect();if(u.top>=i-20){r=e;n=u.top;break}}return{refDOM:r,refTop:n,stack:Ui(t.dom)}}function Ui(t){let e=[],i=t.ownerDocument;for(let r=t;r;r=oi(r)){e.push({dom:r,top:r.scrollTop,left:r.scrollLeft});if(t==i)break}return e}function Hi({refDOM:t,refTop:e,stack:i}){let r=t?t.getBoundingClientRect().top:0;Zi(i,r==0?0:r-e)}function Zi(t,e){for(let i=0;i<t.length;i++){let{dom:r,top:n,left:s}=t[i];if(r.scrollTop!=n+e)r.scrollTop=n+e;if(r.scrollLeft!=s)r.scrollLeft=s}}let Ki=null;function Vi(t){if(t.setActive)return t.setActive();if(Ki)return t.focus(Ki);let e=Ui(t);t.focus(Ki==null?{get preventScroll(){Ki={preventScroll:true};return true}}:undefined);if(!Ki){Ki=false;Zi(e,0)}}function Gi(t,e){let i,r=2e8,n,s=0;let l=e.top,u=e.top;let o,f;for(let h=t.firstChild,a=0;h;h=h.nextSibling,a++){let t;if(h.nodeType==1)t=h.getClientRects();else if(h.nodeType==3)t=hi(h).getClientRects();else continue;for(let c=0;c<t.length;c++){let d=t[c];if(d.top<=l&&d.bottom>=u){l=Math.max(d.bottom,l);u=Math.min(d.top,u);let t=d.left>e.left?d.left-e.left:d.right<e.left?e.left-d.right:0;if(t<r){i=h;r=t;n=t&&i.nodeType==3?{left:d.right<e.left?d.right:d.left,top:e.top}:e;if(h.nodeType==1&&t)s=a+(e.left>=(d.left+d.right)/2?1:0);continue}}else if(d.top>e.top&&!o&&d.left<=e.left&&d.right>=e.left){o=h;f={left:Math.max(d.left,Math.min(d.right,e.left)),top:d.top}}if(!i&&(e.left>=d.right&&e.top>=d.top||e.left>=d.left&&e.top>=d.bottom))s=a+1}}if(!i&&o){i=o;n=f;r=0}if(i&&i.nodeType==3)return Xi(i,n);if(!i||r&&i.nodeType==1)return{node:t,offset:s};return Gi(i,n)}function Xi(t,e){let i=t.nodeValue.length;let r=document.createRange();for(let n=0;n<i;n++){r.setEnd(t,n+1);r.setStart(t,n);let i=sr(r,1);if(i.top==i.bottom)continue;if(Yi(e,i))return{node:t,offset:n+(e.left>=(i.left+i.right)/2?1:0)}}return{node:t,offset:0}}function Yi(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function Qi(t,e){let i=t.parentNode;if(i&&/^li$/i.test(i.nodeName)&&e.left<t.getBoundingClientRect().left)return i;return t}function tr(t,e,i){let{node:r,offset:n}=Gi(e,i),s=-1;if(r.nodeType==1&&!r.firstChild){let t=r.getBoundingClientRect();s=t.left!=t.right&&i.left>(t.left+t.right)/2?1:-1}return t.docView.posFromDOM(r,n,s)}function er(t,e,i,r){let n=-1;for(let i=e,s=false;;){if(i==t.dom)break;let e=t.docView.nearestDesc(i,true);if(!e)return null;if(e.dom.nodeType==1&&(e.node.isBlock&&e.parent&&!s||!e.contentDOM)){let t=e.dom.getBoundingClientRect();if(e.node.isBlock&&e.parent&&!s){s=true;if(t.left>r.left||t.top>r.top)n=e.posBefore;else if(t.right<r.left||t.bottom<r.top)n=e.posAfter}if(!e.contentDOM&&n<0&&!e.node.isText){let i=e.node.isBlock?r.top<(t.top+t.bottom)/2:r.left<(t.left+t.right)/2;return i?e.posBefore:e.posAfter}}i=e.dom.parentNode}return n>-1?n:t.docView.posFromDOM(e,i,-1)}function ir(t,e,i){let r=t.childNodes.length;if(r&&i.top<i.bottom){for(let n=Math.max(0,Math.min(r-1,Math.floor(r*(e.top-i.top)/(i.bottom-i.top))-2)),s=n;;){let i=t.childNodes[s];if(i.nodeType==1){let t=i.getClientRects();for(let r=0;r<t.length;r++){let n=t[r];if(Yi(e,n))return ir(i,e,n)}}if((s=(s+1)%r)==n)break}}return t}function rr(t,e){let i=t.dom.ownerDocument,r,n=0;let s=ki(i,e.left,e.top);if(s)({node:r,offset:n}=s);let l=(t.root.elementFromPoint?t.root:i).elementFromPoint(e.left,e.top);let u;if(!l||!t.dom.contains(l.nodeType!=1?l.parentNode:l)){let i=t.dom.getBoundingClientRect();if(!Yi(e,i))return null;l=ir(t.dom,e,i);if(!l)return null}if(Bi){for(let t=l;r&&t;t=oi(t))if(t.draggable)r=undefined}l=Qi(l,e);if(r){if(Si&&r.nodeType==1){n=Math.min(n,r.childNodes.length);if(n<r.childNodes.length){let t=r.childNodes[n],i;if(t.nodeName=="IMG"&&(i=t.getBoundingClientRect()).right<=e.left&&i.bottom>e.top)n++}}let i;if(Ti&&n&&r.nodeType==1&&(i=r.childNodes[n-1]).nodeType==1&&i.contentEditable=="false"&&i.getBoundingClientRect().top>=e.top)n--;if(r==t.dom&&n==r.childNodes.length-1&&r.lastChild.nodeType==1&&e.top>r.lastChild.getBoundingClientRect().bottom)u=t.state.doc.content.size;else if(n==0||r.nodeType!=1||r.childNodes[n-1].nodeName!="BR")u=er(t,r,n,e)}if(u==null)u=tr(t,l,e);let o=t.docView.nearestDesc(l,true);return{pos:u,inside:o?o.posAtStart-o.border:-1}}function nr(t){return t.top<t.bottom||t.left<t.right}function sr(t,e){let i=t.getClientRects();if(i.length){let t=i[e<0?0:i.length-1];if(nr(t))return t}return Array.prototype.find.call(i,nr)||t.getBoundingClientRect()}const lr=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function ur(t,e,i){let{node:r,offset:n,atom:s}=t.docView.domFromPos(e,i<0?-1:1);let l=Ti||Si;if(r.nodeType==3){if(l&&(lr.test(r.nodeValue)||(i<0?!n:n==r.nodeValue.length))){let t=sr(hi(r,n,n),i);if(Si&&n&&/\s/.test(r.nodeValue[n-1])&&n<r.nodeValue.length){let e=sr(hi(r,n-1,n-1),-1);if(e.top==t.top){let i=sr(hi(r,n,n+1),-1);if(i.top!=t.top)return or(i,i.left<e.left)}}return t}else{let t=n,e=n,s=i<0?1:-1;if(i<0&&!n){e++;s=-1}else if(i>=0&&n==r.nodeValue.length){t--;s=1}else if(i<0){t--}else{e++}return or(sr(hi(r,t,e),s),s<0)}}let u=t.state.doc.resolve(e-(s||0));if(!u.parent.inlineContent){if(s==null&&n&&(i<0||n==pi(r))){let t=r.childNodes[n-1];if(t.nodeType==1)return fr(t.getBoundingClientRect(),false)}if(s==null&&n<pi(r)){let t=r.childNodes[n];if(t.nodeType==1)return fr(t.getBoundingClientRect(),true)}return fr(r.getBoundingClientRect(),i>=0)}if(s==null&&n&&(i<0||n==pi(r))){let t=r.childNodes[n-1];let e=t.nodeType==3?hi(t,pi(t)-(l?0:1)):t.nodeType==1&&(t.nodeName!="BR"||!t.nextSibling)?t:null;if(e)return or(sr(e,1),false)}if(s==null&&n<pi(r)){let t=r.childNodes[n];while(t.pmViewDesc&&t.pmViewDesc.ignoreForCoords)t=t.nextSibling;let e=!t?null:t.nodeType==3?hi(t,0,l?0:1):t.nodeType==1?t:null;if(e)return or(sr(e,-1),true)}return or(sr(r.nodeType==3?hi(r):r,-i),i>=0)}function or(t,e){if(t.width==0)return t;let i=e?t.left:t.right;return{top:t.top,bottom:t.bottom,left:i,right:i}}function fr(t,e){if(t.height==0)return t;let i=e?t.top:t.bottom;return{top:i,bottom:i,left:t.left,right:t.right}}function hr(t,e,i){let r=t.state,n=t.root.activeElement;if(r!=e)t.updateState(e);if(n!=t.dom)t.focus();try{return i()}finally{if(r!=e)t.updateState(r);if(n!=t.dom&&n)n.focus()}}function ar(t,e,i){let r=e.selection;let n=i=="up"?r.$from:r.$to;return hr(t,e,(()=>{let{node:e}=t.docView.domFromPos(n.pos,i=="up"?-1:1);for(;;){let i=t.docView.nearestDesc(e,true);if(!i)break;if(i.node.isBlock){e=i.contentDOM||i.dom;break}e=i.dom.parentNode}let r=ur(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=hi(t,0,t.nodeValue.length).getClientRects();else continue;for(let t=0;t<e.length;t++){let n=e[t];if(n.bottom>n.top+1&&(i=="up"?r.top-n.top>(n.bottom-r.top)*2:n.bottom-r.bottom>(r.bottom-n.top)*2))return false}}return true}))}const cr=/[\u0590-\u08ac]/;function dr(t,e,i){let{$head:r}=e.selection;if(!r.parent.isTextblock)return false;let n=r.parentOffset,s=!n,l=n==r.parent.content.size;let u=t.domSelection();if(!cr.test(r.parent.textContent)||!u.modify)return i=="left"||i=="backward"?s:l;return hr(t,e,(()=>{let{focusNode:e,focusOffset:n,anchorNode:s,anchorOffset:l}=t.domSelectionRange();let o=u.caretBidiLevel;u.modify("move",i,"character");let f=r.depth?t.docView.domAfterPos(r.before()):t.dom;let{focusNode:h,focusOffset:a}=t.domSelectionRange();let c=h&&!f.contains(h.nodeType==1?h:h.parentNode)||e==h&&n==a;try{u.collapse(s,l);if(e&&(e!=s||n!=l)&&u.extend)u.extend(e,n)}catch(t){}if(o!=null)u.caretBidiLevel=o;return c}))}let pr=null;let mr=null;let wr=false;function gr(t,e,i){if(pr==e&&mr==i)return wr;pr=e;mr=i;return wr=i=="up"||i=="down"?ar(t,e,i):dr(t,e,i)}const br=0,Dr=1,kr=2,vr=3;class yr{constructor(t,e,i,r){this.parent=t;this.children=e;this.dom=i;this.contentDOM=r;this.dirty=br;i.pmViewDesc=this}matchesWidget(t){return false}matchesMark(t){return false}matchesNode(t,e,i){return false}matchesHack(t){return false}parseRule(){return null}stopEvent(t){return false}get size(){let t=0;for(let e=0;e<this.children.length;e++)t+=this.children[e].size;return t}get border(){return 0}destroy(){this.parent=undefined;if(this.dom.pmViewDesc==this)this.dom.pmViewDesc=undefined;for(let t=0;t<this.children.length;t++)this.children[t].destroy()}posBeforeChild(t){for(let e=0,i=this.posAtStart;;e++){let r=this.children[e];if(r==t)return i;i+=r.size}}get posBefore(){return this.parent.posBeforeChild(this)}get posAtStart(){return this.parent?this.parent.posBeforeChild(this)+this.border:0}get posAfter(){return this.posBefore+this.size}get posAtEnd(){return this.posAtStart+this.size-2*this.border}localPosFromDOM(t,e,i){if(this.contentDOM&&this.contentDOM.contains(t.nodeType==1?t:t.parentNode)){if(i<0){let i,r;if(t==this.contentDOM){i=t.childNodes[e-1]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;i=t.previousSibling}while(i&&!((r=i.pmViewDesc)&&r.parent==this))i=i.previousSibling;return i?this.posBeforeChild(r)+r.size:this.posAtStart}else{let i,r;if(t==this.contentDOM){i=t.childNodes[e]}else{while(t.parentNode!=this.contentDOM)t=t.parentNode;i=t.nextSibling}while(i&&!((r=i.pmViewDesc)&&r.parent==this))i=i.nextSibling;return i?this.posBeforeChild(r):this.posAtEnd}}let r;if(t==this.dom&&this.contentDOM){r=e>ui(this.contentDOM)}else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM)){r=t.compareDocumentPosition(this.contentDOM)&2}else if(this.dom.firstChild){if(e==0)for(let e=t;;e=e.parentNode){if(e==this.dom){r=false;break}if(e.previousSibling)break}if(r==null&&e==t.childNodes.length)for(let e=t;;e=e.parentNode){if(e==this.dom){r=true;break}if(e.nextSibling)break}}return(r==null?i>0:r)?this.posAtEnd:this.posAtStart}nearestDesc(t,e=false){for(let i=true,r=t;r;r=r.parentNode){let n=this.getDesc(r),s;if(n&&(!e||n.node)){if(i&&(s=n.nodeDOM)&&!(s.nodeType==1?s.contains(t.nodeType==1?t:t.parentNode):s==t))i=false;else return n}}}getDesc(t){let e=t.pmViewDesc;for(let t=e;t;t=t.parent)if(t==this)return e}posFromDOM(t,e,i){for(let r=t;r;r=r.parentNode){let n=this.getDesc(r);if(n)return n.localPosFromDOM(t,e,i)}return-1}descAt(t){for(let e=0,i=0;e<this.children.length;e++){let r=this.children[e],n=i+r.size;if(i==t&&n!=i){while(!r.border&&r.children.length)r=r.children[0];return r}if(t<n)return r.descAt(t-i-r.border);i=n}}domFromPos(t,e){if(!this.contentDOM)return{node:this.dom,offset:0,atom:t+1};let i=0,r=0;for(let e=0;i<this.children.length;i++){let n=this.children[i],s=e+n.size;if(s>t||n instanceof Sr){r=t-e;break}e=s}if(r)return this.children[i].domFromPos(r-this.children[i].border,e);for(let t;i&&!(t=this.children[i-1]).size&&t instanceof Fr&&t.side>=0;i--){}if(e<=0){let t,r=true;for(;;i--,r=false){t=i?this.children[i-1]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&e&&r&&!t.border&&!t.domAtom)return t.domFromPos(t.size,e);return{node:this.contentDOM,offset:t?ui(t.dom)+1:0}}else{let t,r=true;for(;;i++,r=false){t=i<this.children.length?this.children[i]:null;if(!t||t.dom.parentNode==this.contentDOM)break}if(t&&r&&!t.border&&!t.domAtom)return t.domFromPos(0,e);return{node:this.contentDOM,offset:t?ui(t.dom):this.contentDOM.childNodes.length}}}parseRange(t,e,i=0){if(this.children.length==0)return{node:this.contentDOM,from:t,to:e,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let r=-1,n=-1;for(let s=i,l=0;;l++){let i=this.children[l],u=s+i.size;if(r==-1&&t<=u){let n=s+i.border;if(t>=n&&e<=u-i.border&&i.node&&i.contentDOM&&this.contentDOM.contains(i.contentDOM))return i.parseRange(t,e,n);t=s;for(let e=l;e>0;e--){let i=this.children[e-1];if(i.size&&i.dom.parentNode==this.contentDOM&&!i.emptyChildAt(1)){r=ui(i.dom)+1;break}t-=i.size}if(r==-1)r=0}if(r>-1&&(u>e||l==this.children.length-1)){e=u;for(let t=l+1;t<this.children.length;t++){let i=this.children[t];if(i.size&&i.dom.parentNode==this.contentDOM&&!i.emptyChildAt(-1)){n=ui(i.dom);break}e+=i.size}if(n==-1)n=this.contentDOM.childNodes.length;break}s=u}return{node:this.contentDOM,from:t,to:e,fromOffset:r,toOffset:n}}emptyChildAt(t){if(this.border||!this.contentDOM||!this.children.length)return false;let e=this.children[t<0?0:this.children.length-1];return e.size==0||e.emptyChildAt(t)}domAfterPos(t){let{node:e,offset:i}=this.domFromPos(t,0);if(e.nodeType!=1||i==e.childNodes.length)throw new RangeError("No node after pos "+t);return e.childNodes[i]}setSelection(t,e,i,r=false){let n=Math.min(t,e),s=Math.max(t,e);for(let l=0,u=0;l<this.children.length;l++){let o=this.children[l],f=u+o.size;if(n>u&&s<f)return o.setSelection(t-u-o.border,e-u-o.border,i,r);u=f}let l=this.domFromPos(t,t?-1:1);let u=e==t?l:this.domFromPos(e,e?-1:1);let o=i.getSelection();let f=false;if((Si||Bi)&&t==e){let{node:t,offset:e}=l;if(t.nodeType==3){f=!!(e&&t.nodeValue[e-1]=="\n");if(f&&e==t.nodeValue.length){for(let e=t,i;e;e=e.parentNode){if(i=e.nextSibling){if(i.nodeName=="BR")l=u={node:i.parentNode,offset:ui(i)+1};break}let t=e.pmViewDesc;if(t&&t.node&&t.node.isBlock)break}}}else{let i=t.childNodes[e-1];f=i&&(i.nodeName=="BR"||i.contentEditable=="false")}}if(Si&&o.focusNode&&o.focusNode!=u.node&&o.focusNode.nodeType==1){let t=o.focusNode.childNodes[o.focusOffset];if(t&&t.contentEditable=="false")r=true}if(!(r||f&&Bi)&&ai(l.node,l.offset,o.anchorNode,o.anchorOffset)&&ai(u.node,u.offset,o.focusNode,o.focusOffset))return;let h=false;if((o.extend||t==e)&&!f){o.collapse(l.node,l.offset);try{if(t!=e)o.extend(u.node,u.offset);h=true}catch(t){}}if(!h){if(t>e){let t=l;l=u;u=t}let i=document.createRange();i.setEnd(u.node,u.offset);i.setStart(l.node,l.offset);o.removeAllRanges();o.addRange(i)}}ignoreMutation(t){return!this.contentDOM&&t.type!="selection"}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(t,e){for(let i=0,r=0;r<this.children.length;r++){let n=this.children[r],s=i+n.size;if(i==s?t<=s&&e>=i:t<s&&e>i){let r=i+n.border,l=s-n.border;if(t>=r&&e<=l){this.dirty=t==i||e==s?kr:Dr;if(t==r&&e==l&&(n.contentLost||n.dom.parentNode!=this.contentDOM))n.dirty=vr;else n.markDirty(t-r,e-r);return}else{n.dirty=n.dom==n.contentDOM&&n.dom.parentNode==this.contentDOM&&!n.children.length?kr:vr}}i=s}this.dirty=kr}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let i=t==1?kr:Dr;if(e.dirty<i)e.dirty=i}}get domAtom(){return false}get ignoreForCoords(){return false}}class Fr extends yr{constructor(t,e,i,r){let n,s=e.type.toDOM;if(typeof s=="function")s=s(i,(()=>{if(!n)return r;if(n.parent)return n.parent.posBeforeChild(n)}));if(!e.type.spec.raw){if(s.nodeType!=1){let t=document.createElement("span");t.appendChild(s);s=t}s.contentEditable="false";s.classList.add("ProseMirror-widget")}super(t,[],s,null);this.widget=e;this.widget=e;n=this}matchesWidget(t){return this.dirty==br&&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 Er extends yr{constructor(t,e,i,r){super(t,[],e,null);this.textDOM=i;this.text=r}get size(){return this.text.length}localPosFromDOM(t,e){if(t!=this.textDOM)return this.posAtStart+(e?this.size:0);return this.posAtStart+e}domFromPos(t){return{node:this.textDOM,offset:t}}ignoreMutation(t){return t.type==="characterData"&&t.target.nodeValue==t.oldValue}}class xr extends yr{constructor(t,e,i,r){super(t,[],i,r);this.mark=e}static create(t,e,i,r){let n=r.nodeViews[e.type.name];let s=n&&n(e,r,i);if(!s||!s.dom)s=vt.renderSpec(document,e.type.spec.toDOM(e,i));return new xr(t,e,s.dom,s.contentDOM||s.dom)}parseRule(){if(this.dirty&vr||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!=vr&&this.mark.eq(t)}markDirty(t,e){super.markDirty(t,e);if(this.dirty!=br){let t=this.parent;while(!t.node)t=t.parent;if(t.dirty<this.dirty)t.dirty=this.dirty;this.dirty=br}}slice(t,e,i){let r=xr.create(this.parent,this.mark,true,i);let n=this.children,s=this.size;if(e<s)n=Zr(n,e,s,i);if(t>0)n=Zr(n,0,t,i);for(let t=0;t<n.length;t++)n[t].parent=r;r.children=n;return r}}class Mr extends yr{constructor(t,e,i,r,n,s,l,u,o){super(t,[],n,s);this.node=e;this.outerDeco=i;this.innerDeco=r;this.nodeDOM=l}static create(t,e,i,r,n,s){let l=n.nodeViews[e.type.name],u;let o=l&&l(e,n,(()=>{if(!u)return s;if(u.parent)return u.parent.posBeforeChild(u)}),i,r);let f=o&&o.dom,h=o&&o.contentDOM;if(e.isText){if(!f)f=document.createTextNode(e.text);else if(f.nodeType!=3)throw new RangeError("Text must be rendered as a DOM text node")}else if(!f){({dom:f,contentDOM:h}=vt.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=zr(f,i,e);if(o)return u=new Or(t,e,i,r,f,h||null,a,o,n,s+1);else if(e.isText)return new Cr(t,e,i,r,f,a,n);else return new Mr(t,e,i,r,f,h||null,a,n,s+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let t={node:this.node.type.name,attrs:this.node.attrs};if(this.node.type.whitespace=="pre")t.preserveWhitespace="full";if(!this.contentDOM){t.getContent=()=>this.node.content}else if(!this.contentLost){t.contentElement=this.contentDOM}else{for(let e=this.children.length-1;e>=0;e--){let i=this.children[e];if(this.dom.contains(i.dom.parentNode)){t.contentElement=i.dom.parentNode;break}}if(!t.contentElement)t.getContent=()=>f.empty}return t}matchesNode(t,e,i){return this.dirty==br&&t.eq(this.node)&&Tr(e,this.outerDeco)&&i.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(t,e){let i=this.node.inlineContent,r=e;let n=t.composing?this.localCompositionInfo(t,e):null;let s=n&&n.pos>-1?n:null;let l=n&&n.pos<0;let u=new Pr(this,s&&s.node,t);Lr(this.node,this.innerDeco,((e,n,s)=>{if(e.spec.marks)u.syncToMarks(e.spec.marks,i,t);else if(e.type.side>=0&&!s)u.syncToMarks(n==this.node.childCount?d.none:this.node.child(n).marks,i,t);u.placeWidget(e,t,r)}),((e,s,o,f)=>{u.syncToMarks(e.marks,i,t);let h;if(u.findNodeMatch(e,s,o,f));else if(l&&t.state.selection.from>r&&t.state.selection.to<r+e.nodeSize&&(h=u.findIndexWithChild(n.node))>-1&&u.updateNodeAt(e,s,o,h,t));else if(u.updateNextNode(e,s,o,t,f,r));else{u.addNode(e,s,o,t,r)}r+=e.nodeSize}));u.syncToMarks([],i,t);if(this.node.isTextblock)u.addTextblockHacks();u.destroyRest();if(u.changed||this.dirty==kr){if(s)this.protectLocalComposition(t,s);$r(this.contentDOM,this.children,t);if(qi)Wr(this.dom)}}localCompositionInfo(t,e){let{from:i,to:r}=t.state.selection;if(!(t.state.selection instanceof Ie)||i<e||r>e+this.node.content.size)return null;let n=t.domSelectionRange();let s=Ur(n.focusNode,n.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let t=s.nodeValue;let n=Hr(this.node.content,t,i-e,r-e);return n<0?null:{node:s,pos:n,text:t}}else{return{node:s,pos:-1,text:""}}}protectLocalComposition(t,{node:e,pos:i,text:r}){if(this.getDesc(e))return;let n=e;for(;;n=n.parentNode){if(n.parentNode==this.contentDOM)break;while(n.previousSibling)n.parentNode.removeChild(n.previousSibling);while(n.nextSibling)n.parentNode.removeChild(n.nextSibling);if(n.pmViewDesc)n.pmViewDesc=undefined}let s=new Er(this,n,e,r);t.input.compositionNodes.push(s);this.children=Zr(this.children,i,i+r.length,t,s)}update(t,e,i,r){if(this.dirty==vr||!t.sameMarkup(this.node))return false;this.updateInner(t,e,i,r);return true}updateInner(t,e,i,r){this.updateOuterDeco(e);this.node=t;this.innerDeco=i;if(this.contentDOM)this.updateChildren(r,this.posAtStart);this.dirty=br}updateOuterDeco(t){if(Tr(t,this.outerDeco))return;let e=this.nodeDOM.nodeType!=1;let i=this.dom;this.dom=Rr(this.dom,this.nodeDOM,qr(this.outerDeco,this.node,e),qr(t,this.node,e));if(this.dom!=i){i.pmViewDesc=undefined;this.dom.pmViewDesc=this}this.outerDeco=t}selectNode(){if(this.nodeDOM.nodeType==1)this.nodeDOM.classList.add("ProseMirror-selectednode");if(this.contentDOM||!this.node.type.spec.draggable)this.dom.draggable=true}deselectNode(){if(this.nodeDOM.nodeType==1)this.nodeDOM.classList.remove("ProseMirror-selectednode");if(this.contentDOM||!this.node.type.spec.draggable)this.dom.removeAttribute("draggable")}get domAtom(){return this.node.isAtom}}function Ar(t,e,i,r,n){zr(r,e,t);let s=new Mr(undefined,t,e,i,r,r,r,n,0);if(s.contentDOM)s.updateChildren(n,0);return s}class Cr extends Mr{constructor(t,e,i,r,n,s,l){super(t,e,i,r,n,null,s,l,0)}parseRule(){let t=this.nodeDOM.parentNode;while(t&&t!=this.dom&&!t.pmIsDeco)t=t.parentNode;return{skip:t||true}}update(t,e,i,r){if(this.dirty==vr||this.dirty!=br&&!this.inParent()||!t.sameMarkup(this.node))return false;this.updateOuterDeco(e);if((this.dirty!=br||t.text!=this.node.text)&&t.text!=this.nodeDOM.nodeValue){this.nodeDOM.nodeValue=t.text;if(r.trackWrites==this.nodeDOM)r.trackWrites=null}this.node=t;this.dirty=br;return true}inParent(){let t=this.parent.contentDOM;for(let e=this.nodeDOM;e;e=e.parentNode)if(e==t)return true;return false}domFromPos(t){return{node:this.nodeDOM,offset:t}}localPosFromDOM(t,e,i){if(t==this.nodeDOM)return this.posAtStart+Math.min(e,this.node.text.length);return super.localPosFromDOM(t,e,i)}ignoreMutation(t){return t.type!="characterData"&&t.type!="selection"}slice(t,e,i){let r=this.node.cut(t,e),n=document.createTextNode(r.text);return new Cr(this.parent,r,this.outerDeco,this.innerDeco,n,n,i)}markDirty(t,e){super.markDirty(t,e);if(this.dom!=this.nodeDOM&&(t==0||e==this.nodeDOM.nodeValue.length))this.dirty=vr}get domAtom(){return false}}class Sr extends yr{parseRule(){return{ignore:true}}matchesHack(t){return this.dirty==br&&this.dom.nodeName==t}get domAtom(){return true}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Or extends Mr{constructor(t,e,i,r,n,s,l,u,o,f){super(t,e,i,r,n,s,l,o,f);this.spec=u}update(t,e,i,r){if(this.dirty==vr)return false;if(this.spec.update){let n=this.spec.update(t,e,i);if(n)this.updateInner(t,e,i,r);return n}else if(!this.contentDOM&&!t.isLeaf){return false}else{return super.update(t,e,i,r)}}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(t,e,i,r){this.spec.setSelection?this.spec.setSelection(t,e,i):super.setSelection(t,e,i,r)}destroy(){if(this.spec.destroy)this.spec.destroy();super.destroy()}stopEvent(t){return this.spec.stopEvent?this.spec.stopEvent(t):false}ignoreMutation(t){return this.spec.ignoreMutation?this.spec.ignoreMutation(t):super.ignoreMutation(t)}}function $r(t,e,i){let r=t.firstChild,n=false;for(let s=0;s<e.length;s++){let l=e[s],u=l.dom;if(u.parentNode==t){while(u!=r){r=Ir(r);n=true}r=r.nextSibling}else{n=true;t.insertBefore(u,r)}if(l instanceof xr){let e=r?r.previousSibling:t.lastChild;$r(l.contentDOM,l.children,i);r=e?e.nextSibling:t.firstChild}}while(r){r=Ir(r);n=true}if(n&&i.trackWrites==t)i.trackWrites=null}const _r=function(t){if(t)this.nodeName=t};_r.prototype=Object.create(null);const Br=[new _r];function qr(t,e,i){if(t.length==0)return Br;let r=i?Br[0]:new _r,n=[r];for(let s=0;s<t.length;s++){let l=t[s].type.attrs;if(!l)continue;if(l.nodeName)n.push(r=new _r(l.nodeName));for(let t in l){let s=l[t];if(s==null)continue;if(i&&n.length==1)n.push(r=new _r(e.isInline?"span":"div"));if(t=="class")r.class=(r.class?r.class+" ":"")+s;else if(t=="style")r.style=(r.style?r.style+";":"")+s;else if(t!="nodeName")r[t]=s}}return n}function Rr(t,e,i,r){if(i==Br&&r==Br)return e;let n=e;for(let e=0;e<r.length;e++){let s=r[e],l=i[e];if(e){let e;if(l&&l.nodeName==s.nodeName&&n!=t&&(e=n.parentNode)&&e.nodeName.toLowerCase()==s.nodeName){n=e}else{e=document.createElement(s.nodeName);e.pmIsDeco=true;e.appendChild(n);l=Br[0];n=e}}Nr(n,l||Br[0],s)}return n}function Nr(t,e,i){for(let r in e)if(r!="class"&&r!="style"&&r!="nodeName"&&!(r in i))t.removeAttribute(r);for(let r in i)if(r!="class"&&r!="style"&&r!="nodeName"&&i[r]!=e[r])t.setAttribute(r,i[r]);if(e.class!=i.class){let r=e.class?e.class.split(" ").filter(Boolean):[];let n=i.class?i.class.split(" ").filter(Boolean):[];for(let e=0;e<r.length;e++)if(n.indexOf(r[e])==-1)t.classList.remove(r[e]);for(let e=0;e<n.length;e++)if(r.indexOf(n[e])==-1)t.classList.add(n[e]);if(t.classList.length==0)t.removeAttribute("class")}if(e.style!=i.style){if(e.style){let i=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g,r;while(r=i.exec(e.style))t.style.removeProperty(r[1])}if(i.style)t.style.cssText+=i.style}}function zr(t,e,i){return Rr(t,t,Br,qr(e,i,t.nodeType!=1))}function Tr(t,e){if(t.length!=e.length)return false;for(let i=0;i<t.length;i++)if(!t[i].type.eq(e[i].type))return false;return true}function Ir(t){let e=t.nextSibling;t.parentNode.removeChild(t);return e}class Pr{constructor(t,e,i){this.lock=e;this.view=i;this.index=0;this.stack=[];this.changed=false;this.top=t;this.preMatch=jr(t.node.content,t)}destroyBetween(t,e){if(t==e)return;for(let i=t;i<e;i++)this.top.children[i].destroy();this.top.children.splice(t,e-t);this.changed=true}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(t,e,i){let r=0,n=this.stack.length>>1;let s=Math.min(n,t.length);while(r<s&&(r==n-1?this.top:this.stack[r+1<<1]).matchesMark(t[r])&&t[r].type.spec.spanning!==false)r++;while(r<n){this.destroyRest();this.top.dirty=br;this.index=this.stack.pop();this.top=this.stack.pop();n--}while(n<t.length){this.stack.push(this.top,this.index+1);let r=-1;for(let e=this.index;e<Math.min(this.index+3,this.top.children.length);e++){let i=this.top.children[e];if(i.matchesMark(t[n])&&!this.isLocked(i.dom)){r=e;break}}if(r>-1){if(r>this.index){this.changed=true;this.destroyBetween(this.index,r)}this.top=this.top.children[this.index]}else{let r=xr.create(this.top,t[n],e,i);this.top.children.splice(this.index,0,r);this.top=r;this.changed=true}this.index=0;n++}}findNodeMatch(t,e,i,r){let n=-1,s;if(r>=this.preMatch.index&&(s=this.preMatch.matches[r-this.preMatch.index]).parent==this.top&&s.matchesNode(t,e,i)){n=this.top.children.indexOf(s,this.index)}else{for(let r=this.index,s=Math.min(this.top.children.length,r+5);r<s;r++){let s=this.top.children[r];if(s.matchesNode(t,e,i)&&!this.preMatch.matched.has(s)){n=r;break}}}if(n<0)return false;this.destroyBetween(this.index,n);this.index++;return true}updateNodeAt(t,e,i,r,n){let s=this.top.children[r];if(s.dirty==vr&&s.dom==s.contentDOM)s.dirty=kr;if(!s.update(t,e,i,n))return false;this.destroyBetween(this.index,r);this.index++;return true}findIndexWithChild(t){for(;;){let e=t.parentNode;if(!e)return-1;if(e==this.top.contentDOM){let e=t.pmViewDesc;if(e)for(let t=this.index;t<this.top.children.length;t++){if(this.top.children[t]==e)return t}return-1}t=e}}updateNextNode(t,e,i,r,n,s){for(let l=this.index;l<this.top.children.length;l++){let u=this.top.children[l];if(u instanceof Mr){let o=this.preMatch.matched.get(u);if(o!=null&&o!=n)return false;let f=u.dom,h;let a=this.isLocked(f)&&!(t.isText&&u.node&&u.node.isText&&u.nodeDOM.nodeValue==t.text&&u.dirty!=vr&&Tr(e,u.outerDeco));if(!a&&u.update(t,e,i,r)){this.destroyBetween(this.index,l);if(u.dom!=f)this.changed=true;this.index++;return true}else if(!a&&(h=this.recreateWrapper(u,t,e,i,r,s))){this.top.children[this.index]=h;if(h.contentDOM){h.dirty=kr;h.updateChildren(r,s+1);h.dirty=br}this.changed=true;this.index++;return true}break}}return false}recreateWrapper(t,e,i,r,n,s){if(t.dirty||e.isAtom||!t.children.length||!t.node.content.eq(e.content))return null;let l=Mr.create(this.top,e,i,r,n,s);if(l.contentDOM){l.children=t.children;t.children=[];for(let t of l.children)t.parent=l}t.destroy();return l}addNode(t,e,i,r,n){let s=Mr.create(this.top,t,e,i,r,n);if(s.contentDOM)s.updateChildren(r,n+1);this.top.children.splice(this.index++,0,s);this.changed=true}placeWidget(t,e,i){let r=this.index<this.top.children.length?this.top.children[this.index]:null;if(r&&r.matchesWidget(t)&&(t==r.widget||!r.widget.type.toDOM.parentNode)){this.index++}else{let r=new Fr(this.top,t,e,i);this.top.children.splice(this.index++,0,r);this.changed=true}}addTextblockHacks(){let t=this.top.children[this.index-1],e=this.top;while(t instanceof xr){e=t;t=e.children[e.children.length-1]}if(!t||!(t instanceof Cr)||/\n$/.test(t.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(t.node.text)){if((Bi||$i)&&t&&t.dom.contentEditable=="false")this.addHackNode("IMG",e);this.addHackNode("BR",this.top)}}addHackNode(t,e){if(e==this.top&&this.index<e.children.length&&e.children[this.index].matchesHack(t)){this.index++}else{let i=document.createElement(t);if(t=="IMG"){i.className="ProseMirror-separator";i.alt=""}if(t=="BR")i.className="ProseMirror-trailingBreak";let r=new Sr(this.top,[],i,null);if(e!=this.top)e.children.push(r);else e.children.splice(this.index++,0,r);this.changed=true}}isLocked(t){return this.lock&&(t==this.lock||t.nodeType==1&&t.contains(this.lock.parentNode))}}function jr(t,e){let i=e,r=i.children.length;let n=t.childCount,s=new Map,l=[];t:while(n>0){let u;for(;;){if(r){let t=i.children[r-1];if(t instanceof xr){i=t;r=t.children.length}else{u=t;r--;break}}else if(i==e){break t}else{r=i.parent.children.indexOf(i);i=i.parent}}let o=u.node;if(!o)continue;if(o!=t.child(n-1))break;--n;s.set(u,n);l.push(u)}return{index:n,matched:s,matches:l.reverse()}}function Jr(t,e){return t.type.side-e.type.side}function Lr(t,e,i,r){let n=e.locals(t),s=0;if(n.length==0){for(let i=0;i<t.childCount;i++){let l=t.child(i);r(l,n,e.forChild(s,l),i);s+=l.nodeSize}return}let l=0,u=[],o=null;for(let f=0;;){let h,a;while(l<n.length&&n[l].to==s){let t=n[l++];if(t.widget){if(!h)h=t;else(a||(a=[h])).push(t)}}if(h){if(a){a.sort(Jr);for(let t=0;t<a.length;t++)i(a[t],f,!!o)}else{i(h,f,!!o)}}let c,d;if(o){d=-1;c=o;o=null}else if(f<t.childCount){d=f;c=t.child(f++)}else{break}for(let t=0;t<u.length;t++)if(u[t].to<=s)u.splice(t--,1);while(l<n.length&&n[l].from<=s&&n[l].to>s)u.push(n[l++]);let p=s+c.nodeSize;if(c.isText){let t=p;if(l<n.length&&n[l].from<t)t=n[l].from;for(let e=0;e<u.length;e++)if(u[e].to<t)t=u[e].to;if(t<p){o=c.cut(t-s);c=c.cut(0,t-s);p=t;d=-1}}else{while(l<n.length&&n[l].to<p)l++}let m=c.isInline&&!c.isLeaf?u.filter((t=>!t.inline)):u.slice();r(c,m,e.forChild(s,c),d);s=p}}function Wr(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 Ur(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=pi(t)}else if(t.nodeType==1&&e<t.childNodes.length){t=t.childNodes[e];e=0}else{return null}}}function Hr(t,e,i,r){for(let n=0,s=0;n<t.childCount&&s<=r;){let l=t.child(n++),u=s;s+=l.nodeSize;if(!l.isText)continue;let o=l.text;while(n<t.childCount){let e=t.child(n++);s+=e.nodeSize;if(!e.isText)break;o+=e.text}if(s>=i){if(s>=r&&o.slice(r-e.length-u,r-u)==e)return r-e.length;let t=u<r?o.lastIndexOf(e,r-u-1):-1;if(t>=0&&t+e.length+u>=i)return u+t;if(i==r&&o.length>=r+e.length-u&&o.slice(r-u,r-u+e.length)==e)return r}}return-1}function Zr(t,e,i,r,n){let s=[];for(let l=0,u=0;l<t.length;l++){let o=t[l],f=u,h=u+=o.size;if(f>=i||h<=e){s.push(o)}else{if(f<e)s.push(o.slice(0,e-f,r));if(n){s.push(n);n=undefined}if(h>i)s.push(o.slice(i-f,o.size,r))}}return s}function Kr(t,e=null){let i=t.domSelectionRange(),r=t.state.doc;if(!i.focusNode)return null;let n=t.docView.nearestDesc(i.focusNode),s=n&&n.size==0;let l=t.docView.posFromDOM(i.focusNode,i.focusOffset,1);if(l<0)return null;let u=r.resolve(l),o,f;if(gi(i)){o=u;while(n&&!n.node)n=n.parent;let t=n.node;if(n&&t.isAtom&&je.isSelectable(t)&&n.parent&&!(t.isInline&&mi(i.focusNode,i.focusOffset,n.dom))){let t=n.posBefore;f=new je(l==t?u:r.resolve(t))}}else{let e=t.docView.posFromDOM(i.anchorNode,i.anchorOffset,1);if(e<0)return null;o=r.resolve(e)}if(!f){let i=e=="pointer"||t.state.selection.head<u.pos&&!s?1:-1;f=ln(t,o,u,i)}return f}function Vr(t){return t.editable?t.hasFocus():on(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function Gr(t,e=false){let i=t.state.selection;nn(t,i);if(!Vr(t))return;if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&$i){let e=t.domSelectionRange(),i=t.domObserver.currentSelection;if(e.anchorNode&&i.anchorNode&&ai(e.anchorNode,e.anchorOffset,i.anchorNode,i.anchorOffset)){t.input.mouseDown.delayedSelectionSync=true;t.domObserver.setCurSelection();return}}t.domObserver.disconnectSelection();if(t.cursorWrapper){rn(t)}else{let{anchor:r,head:n}=i,s,l;if(Xr&&!(i instanceof Ie)){if(!i.$from.parent.inlineContent)s=Yr(t,i.from);if(!i.empty&&!i.$from.parent.inlineContent)l=Yr(t,i.to)}t.docView.setSelection(r,n,t.root,e);if(Xr){if(s)tn(s);if(l)tn(l)}if(i.visible){t.dom.classList.remove("ProseMirror-hideselection")}else{t.dom.classList.add("ProseMirror-hideselection");if("onselectionchange"in document)en(t)}}t.domObserver.setCurSelection();t.domObserver.connectSelection()}const Xr=Bi||$i&&_i<63;function Yr(t,e){let{node:i,offset:r}=t.docView.domFromPos(e,0);let n=r<i.childNodes.length?i.childNodes[r]:null;let s=r?i.childNodes[r-1]:null;if(Bi&&n&&n.contentEditable=="false")return Qr(n);if((!n||n.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(n)return Qr(n);else if(s)return Qr(s)}}function Qr(t){t.contentEditable="true";if(Bi&&t.draggable){t.draggable=false;t.wasDraggable=true}return t}function tn(t){t.contentEditable="false";if(t.wasDraggable){t.draggable=true;t.wasDraggable=null}}function en(t){let e=t.dom.ownerDocument;e.removeEventListener("selectionchange",t.input.hideSelectionGuard);let i=t.domSelectionRange();let r=i.anchorNode,n=i.anchorOffset;e.addEventListener("selectionchange",t.input.hideSelectionGuard=()=>{if(i.anchorNode!=r||i.anchorOffset!=n){e.removeEventListener("selectionchange",t.input.hideSelectionGuard);setTimeout((()=>{if(!Vr(t)||t.state.selection.visible)t.dom.classList.remove("ProseMirror-hideselection")}),20)}})}function rn(t){let e=t.domSelection(),i=document.createRange();let r=t.cursorWrapper.dom,n=r.nodeName=="IMG";if(n)i.setEnd(r.parentNode,ui(r)+1);else i.setEnd(r,0);i.collapse(false);e.removeAllRanges();e.addRange(i);if(!n&&!t.state.selection.visible&&Ai&&Ci<=11){r.disabled=true;r.disabled=false}}function nn(t,e){if(e instanceof je){let i=t.docView.descAt(e.from);if(i!=t.lastSelectedViewDesc){sn(t);if(i)i.selectNode();t.lastSelectedViewDesc=i}}else{sn(t)}}function sn(t){if(t.lastSelectedViewDesc){if(t.lastSelectedViewDesc.parent)t.lastSelectedViewDesc.deselectNode();t.lastSelectedViewDesc=undefined}}function ln(t,e,i,r){return t.someProp("createSelectionBetween",(r=>r(t,e,i)))||Ie.between(e,i,r)}function un(t){if(t.editable&&!t.hasFocus())return false;return on(t)}function on(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 fn(t){let e=t.docView.domFromPos(t.state.selection.anchor,0);let i=t.domSelectionRange();return ai(e.node,e.offset,i.anchorNode,i.anchorOffset)}function hn(t,e){let{$anchor:i,$head:r}=t.selection;let n=e>0?i.max(r):i.min(r);let s=!n.parent.inlineContent?n:n.depth?t.doc.resolve(e>0?n.after():n.before()):null;return s&&Re.findFrom(s,e)}function an(t,e){t.dispatch(t.state.tr.setSelection(e).scrollIntoView());return true}function cn(t,e,i){let r=t.state.selection;if(r instanceof Ie){if(i.indexOf("s")>-1){let{$head:i}=r,n=i.textOffset?null:e<0?i.nodeBefore:i.nodeAfter;if(!n||n.isText||!n.isLeaf)return false;let s=t.state.doc.resolve(i.pos+n.nodeSize*(e<0?-1:1));return an(t,new Ie(r.$anchor,s))}else if(!r.empty){return false}else if(t.endOfTextblock(e>0?"forward":"backward")){let i=hn(t.state,e);if(i&&i instanceof je)return an(t,i);return false}else if(!(Ri&&i.indexOf("m")>-1)){let i=r.$head,n=i.textOffset?null:e<0?i.nodeBefore:i.nodeAfter,s;if(!n||n.isText)return false;let l=e<0?i.pos-n.nodeSize:i.pos;if(!(n.isAtom||(s=t.docView.descAt(l))&&!s.contentDOM))return false;if(je.isSelectable(n)){return an(t,new je(e<0?t.state.doc.resolve(i.pos-n.nodeSize):i))}else if(Ti){return an(t,new Ie(t.state.doc.resolve(e<0?l:l+n.nodeSize)))}else{return false}}}else if(r instanceof je&&r.node.isInline){return an(t,new Ie(e>0?r.$to:r.$from))}else{let i=hn(t.state,e);if(i)return an(t,i);return false}}function dn(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function pn(t,e){let i=t.pmViewDesc;return i&&i.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function mn(t,e){return e<0?wn(t):gn(t)}function wn(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n,s,l=false;if(Si&&i.nodeType==1&&r<dn(i)&&pn(i.childNodes[r],-1))l=true;for(;;){if(r>0){if(i.nodeType!=1){break}else{let t=i.childNodes[r-1];if(pn(t,-1)){n=i;s=--r}else if(t.nodeType==3){i=t;r=i.nodeValue.length}else break}}else if(bn(i)){break}else{let e=i.previousSibling;while(e&&pn(e,-1)){n=i.parentNode;s=ui(e);e=e.previousSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=0}else{i=e;r=dn(i)}}}if(l)vn(t,i,r);else if(n)vn(t,n,s)}function gn(t){let e=t.domSelectionRange();let i=e.focusNode,r=e.focusOffset;if(!i)return;let n=dn(i);let s,l;for(;;){if(r<n){if(i.nodeType!=1)break;let t=i.childNodes[r];if(pn(t,1)){s=i;l=++r}else break}else if(bn(i)){break}else{let e=i.nextSibling;while(e&&pn(e,1)){s=e.parentNode;l=ui(e)+1;e=e.nextSibling}if(!e){i=i.parentNode;if(i==t.dom)break;r=n=0}else{i=e;r=0;n=dn(i)}}}if(s)vn(t,s,l)}function bn(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Dn(t,e){while(t&&e==t.childNodes.length&&!wi(t)){e=ui(t)+1;t=t.parentNode}while(t&&e<t.childNodes.length){let i=t.childNodes[e];if(i.nodeType==3)return i;if(i.nodeType==1&&i.contentEditable=="false")break;t=i;e=0}}function kn(t,e){while(t&&!e&&!wi(t)){e=ui(t);t=t.parentNode}while(t&&e){let i=t.childNodes[e-1];if(i.nodeType==3)return i;if(i.nodeType==1&&i.contentEditable=="false")break;t=i;e=t.childNodes.length}}function vn(t,e,i){if(e.nodeType!=3){let t,r;if(r=Dn(e,i)){e=r;i=0}else if(t=kn(e,i)){e=t;i=t.nodeValue.length}}let r=t.domSelection();if(gi(r)){let t=document.createRange();t.setEnd(e,i);t.setStart(e,i);r.removeAllRanges();r.addRange(t)}else if(r.extend){r.extend(e,i)}t.domObserver.setCurSelection();let{state:n}=t;setTimeout((()=>{if(t.state==n)Gr(t)}),50)}function yn(t,e){let i=t.state.doc.resolve(e);if(!($i||Ni)&&i.parent.inlineContent){let r=t.coordsAtPos(e);if(e>i.start()){let i=t.coordsAtPos(e-1);let n=(i.top+i.bottom)/2;if(n>r.top&&n<r.bottom&&Math.abs(i.left-r.left)>1)return i.left<r.left?"ltr":"rtl"}if(e<i.end()){let i=t.coordsAtPos(e+1);let n=(i.top+i.bottom)/2;if(n>r.top&&n<r.bottom&&Math.abs(i.left-r.left)>1)return i.left>r.left?"ltr":"rtl"}}let r=getComputedStyle(t.dom).direction;return r=="rtl"?"rtl":"ltr"}function Fn(t,e,i){let r=t.state.selection;if(r instanceof Ie&&!r.empty||i.indexOf("s")>-1)return false;if(Ri&&i.indexOf("m")>-1)return false;let{$from:n,$to:s}=r;if(!n.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let i=hn(t.state,e);if(i&&i instanceof je)return an(t,i)}if(!n.parent.inlineContent){let i=e<0?n:s;let l=r instanceof Le?Re.near(i,e):Re.findFrom(i,e);return l?an(t,l):false}return false}function En(t,e){if(!(t.state.selection instanceof Ie))return true;let{$head:i,$anchor:r,empty:n}=t.state.selection;if(!i.sameParent(r))return true;if(!n)return false;if(t.endOfTextblock(e>0?"forward":"backward"))return true;let s=!i.textOffset&&(e<0?i.nodeBefore:i.nodeAfter);if(s&&!s.isText){let r=t.state.tr;if(e<0)r.delete(i.pos-s.nodeSize,i.pos);else r.delete(i.pos,i.pos+s.nodeSize);t.dispatch(r);return true}return false}function xn(t,e,i){t.domObserver.stop();e.contentEditable=i;t.domObserver.start()}function Mn(t){if(!Bi||t.state.selection.$head.parentOffset>0)return false;let{focusNode:e,focusOffset:i}=t.domSelectionRange();if(e&&e.nodeType==1&&i==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let i=e.firstChild;xn(t,i,"true");setTimeout((()=>xn(t,i,"false")),20)}return false}function An(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 Cn(t,e){let i=e.keyCode,r=An(e);if(i==8||Ri&&i==72&&r=="c"){return En(t,-1)||mn(t,-1)}else if(i==46&&!e.shiftKey||Ri&&i==68&&r=="c"){return En(t,1)||mn(t,1)}else if(i==13||i==27){return true}else if(i==37||Ri&&i==66&&r=="c"){let e=i==37?yn(t,t.state.selection.from)=="ltr"?-1:1:-1;return cn(t,e,r)||mn(t,e)}else if(i==39||Ri&&i==70&&r=="c"){let e=i==39?yn(t,t.state.selection.from)=="ltr"?1:-1:1;return cn(t,e,r)||mn(t,e)}else if(i==38||Ri&&i==80&&r=="c"){return Fn(t,-1,r)||mn(t,-1)}else if(i==40||Ri&&i==78&&r=="c"){return Mn(t)||Fn(t,1,r)||mn(t,1)}else if(r==(Ri?"m":"c")&&(i==66||i==73||i==89||i==90)){return true}return false}function Sn(t,e){t.someProp("transformCopied",(i=>{e=i(e,t)}));let i=[],{content:r,openStart:n,openEnd:s}=e;while(n>1&&s>1&&r.childCount==1&&r.firstChild.childCount==1){n--;s--;let t=r.firstChild;i.push(t.type.name,t.attrs!=t.type.defaultAttrs?t.attrs:null);r=t.content}let l=t.someProp("clipboardSerializer")||vt.fromSchema(t.state.schema);let u=Pn(),o=u.createElement("div");o.appendChild(l.serializeFragment(r,{document:u}));let f=o.firstChild,h,a=0;while(f&&f.nodeType==1&&(h=Tn[f.nodeName.toLowerCase()])){for(let t=h.length-1;t>=0;t--){let e=u.createElement(h[t]);while(o.firstChild)e.appendChild(o.firstChild);o.appendChild(e);a++}f=o.firstChild}if(f&&f.nodeType==1)f.setAttribute("data-pm-slice",`${n} ${s}${a?` -${a}`:""} ${JSON.stringify(i)}`);let c=t.someProp("clipboardTextSerializer",(i=>i(e,t)))||e.content.textBetween(0,e.content.size,"\n\n");return{dom:o,text:c}}function On(t,e,i,r,n){let s=n.parent.type.spec.code;let l,u;if(!i&&!e)return null;let o=e&&(r||s||!i);if(o){t.someProp("transformPastedText",(i=>{e=i(e,s||r,t)}));if(s)return e?new m(f.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):m.empty;let i=t.someProp("clipboardTextParser",(i=>i(e,n,r,t)));if(i){u=i}else{let i=n.marks();let{schema:r}=t.state,s=vt.fromSchema(r);l=document.createElement("div");e.split(/(?:\r\n?|\n)+/).forEach((t=>{let e=l.appendChild(document.createElement("p"));if(t)e.appendChild(s.serializeNode(r.text(t,i)))}))}}else{t.someProp("transformPastedHTML",(e=>{i=e(i,t)}));l=jn(i);if(Ti)Jn(l)}let h=l&&l.querySelector("[data-pm-slice]");let a=h&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(h.getAttribute("data-pm-slice")||"");if(a&&a[3])for(let t=+a[3];t>0;t--){let t=l.firstChild;while(t&&t.nodeType!=1)t=t.nextSibling;if(!t)break;l=t}if(!u){let e=t.someProp("clipboardParser")||t.someProp("domParser")||st.fromSchema(t.state.schema);u=e.parseSlice(l,{preserveWhitespace:!!(o||a),context:n,ruleFromNode(t){if(t.nodeName=="BR"&&!t.nextSibling&&t.parentNode&&!$n.test(t.parentNode.nodeName))return{ignore:true};return null}})}if(a){u=Ln(zn(u,+a[1],+a[2]),a[4])}else{u=m.maxOpen(_n(u.content,n),true);if(u.openStart||u.openEnd){let t=0,e=0;for(let e=u.content.firstChild;t<u.openStart&&!e.type.spec.isolating;t++,e=e.firstChild){}for(let t=u.content.lastChild;e<u.openEnd&&!t.type.spec.isolating;e++,t=t.lastChild){}u=zn(u,t,e)}}t.someProp("transformPasted",(e=>{u=e(u,t)}));return u}const $n=/^(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 _n(t,e){if(t.childCount<2)return t;for(let i=e.depth;i>=0;i--){let r=e.node(i);let n=r.contentMatchAt(e.index(i));let s,l=[];t.forEach((t=>{if(!l)return;let e=n.findWrapping(t.type),i;if(!e)return l=null;if(i=l.length&&s.length&&qn(e,s,t,l[l.length-1],0)){l[l.length-1]=i}else{if(l.length)l[l.length-1]=Rn(l[l.length-1],s.length);let i=Bn(t,e);l.push(i);n=n.matchType(i.type);s=e}}));if(l)return f.from(l)}return t}function Bn(t,e,i=0){for(let r=e.length-1;r>=i;r--)t=e[r].create(null,f.from(t));return t}function qn(t,e,i,r,n){if(n<t.length&&n<e.length&&t[n]==e[n]){let s=qn(t,e,i,r.lastChild,n+1);if(s)return r.copy(r.content.replaceChild(r.childCount-1,s));let l=r.contentMatchAt(r.childCount);if(l.matchType(n==t.length-1?i.type:t[n+1]))return r.copy(r.content.append(f.from(Bn(i,t,n+1))))}}function Rn(t,e){if(e==0)return t;let i=t.content.replaceChild(t.childCount-1,Rn(t.lastChild,e-1));let r=t.contentMatchAt(t.childCount).fillBefore(f.empty,true);return t.copy(i.append(r))}function Nn(t,e,i,r,n,s){let l=e<0?t.firstChild:t.lastChild,u=l.content;if(t.childCount>1)s=0;if(n<r-1)u=Nn(u,e,i,r,n+1,s);if(n>=i)u=e<0?l.contentMatchAt(0).fillBefore(u,s<=n).append(u):u.append(l.contentMatchAt(l.childCount).fillBefore(f.empty,true));return t.replaceChild(e<0?0:t.childCount-1,l.copy(u))}function zn(t,e,i){if(e<t.openStart)t=new m(Nn(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd);if(i<t.openEnd)t=new m(Nn(t.content,1,i,t.openEnd,0,0),t.openStart,i);return t}const Tn={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 In=null;function Pn(){return In||(In=document.implementation.createHTMLDocument("title"))}function jn(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);if(e)t=t.slice(e[0].length);let i=Pn().createElement("div");let r=/<([a-z][^>\s]+)/i.exec(t),n;if(n=r&&Tn[r[1].toLowerCase()])t=n.map((t=>"<"+t+">")).join("")+t+n.map((t=>"</"+t+">")).reverse().join("");i.innerHTML=t;if(n)for(let t=0;t<n.length;t++)i=i.querySelector(n[t])||i;return i}function Jn(t){let e=t.querySelectorAll($i?"span:not([class]):not([style])":"span.Apple-converted-space");for(let i=0;i<e.length;i++){let r=e[i];if(r.childNodes.length==1&&r.textContent==" "&&r.parentNode)r.parentNode.replaceChild(t.ownerDocument.createTextNode(" "),r)}}function Ln(t,e){if(!t.size)return t;let i=t.content.firstChild.type.schema,r;try{r=JSON.parse(e)}catch(e){return t}let{content:n,openStart:s,openEnd:l}=t;for(let t=r.length-2;t>=0;t-=2){let e=i.nodes[r[t]];if(!e||e.hasRequiredAttrs())break;n=f.from(e.create(r[t+1],n));s++;l++}return new m(n,s,l)}const Wn={};const Un={};const Hn={touchstart:true,touchmove:true};class Zn{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 Kn(t){for(let e in Wn){let i=Wn[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{if(Qn(t,e)&&!Yn(t,e)&&(t.editable||!(e.type in Un)))i(t,e)},Hn[e]?{passive:true}:undefined)}if(Bi)t.dom.addEventListener("input",(()=>null));Xn(t)}function Vn(t,e){t.input.lastSelectionOrigin=e;t.input.lastSelectionTime=Date.now()}function Gn(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 Xn(t){t.someProp("handleDOMEvents",(e=>{for(let i in e)if(!t.input.eventHandlers[i])t.dom.addEventListener(i,t.input.eventHandlers[i]=e=>Yn(t,e))}))}function Yn(t,e){return t.someProp("handleDOMEvents",(i=>{let r=i[e.type];return r?r(t,e)||e.defaultPrevented:false}))}function Qn(t,e){if(!e.bubbles)return true;if(e.defaultPrevented)return false;for(let i=e.target;i!=t.dom;i=i.parentNode)if(!i||i.nodeType==11||i.pmViewDesc&&i.pmViewDesc.stopEvent(e))return false;return true}function ts(t,e){if(!Yn(t,e)&&Wn[e.type]&&(t.editable||!(e.type in Un)))Wn[e.type](t,e)}Un.keydown=(t,e)=>{let i=e;t.input.shiftKey=i.keyCode==16||i.shiftKey;if(ms(t,i))return;t.input.lastKeyCode=i.keyCode;t.input.lastKeyCodeTime=Date.now();if(zi&&$i&&i.keyCode==13)return;if(i.keyCode!=229)t.domObserver.forceFlush();if(qi&&i.keyCode==13&&!i.ctrlKey&&!i.altKey&&!i.metaKey){let e=Date.now();t.input.lastIOSEnter=e;t.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{if(t.input.lastIOSEnter==e){t.someProp("handleKeyDown",(e=>e(t,bi(13,"Enter"))));t.input.lastIOSEnter=0}}),200)}else if(t.someProp("handleKeyDown",(e=>e(t,i)))||Cn(t,i)){i.preventDefault()}else{Vn(t,"key")}};Un.keyup=(t,e)=>{if(e.keyCode==16)t.input.shiftKey=false};Un.keypress=(t,e)=>{let i=e;if(ms(t,i)||!i.charCode||i.ctrlKey&&!i.altKey||Ri&&i.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,i)))){i.preventDefault();return}let r=t.state.selection;if(!(r instanceof Ie)||!r.$from.sameParent(r.$to)){let e=String.fromCharCode(i.charCode);if(!/[\r\n]/.test(e)&&!t.someProp("handleTextInput",(i=>i(t,r.$from.pos,r.$to.pos,e))))t.dispatch(t.state.tr.insertText(e).scrollIntoView());i.preventDefault()}};function es(t){return{left:t.clientX,top:t.clientY}}function is(t,e){let i=e.x-t.clientX,r=e.y-t.clientY;return i*i+r*r<100}function rs(t,e,i,r,n){if(r==-1)return false;let s=t.state.doc.resolve(r);for(let r=s.depth+1;r>0;r--){if(t.someProp(e,(e=>r>s.depth?e(t,i,s.nodeAfter,s.before(r),n,true):e(t,i,s.node(r),s.before(r),n,false))))return true}return false}function ns(t,e,i){if(!t.focused)t.focus();let r=t.state.tr.setSelection(e);if(i=="pointer")r.setMeta("pointer",true);t.dispatch(r)}function ss(t,e){if(e==-1)return false;let i=t.state.doc.resolve(e),r=i.nodeAfter;if(r&&r.isAtom&&je.isSelectable(r)){ns(t,new je(i),"pointer");return true}return false}function ls(t,e){if(e==-1)return false;let i=t.state.selection,r,n;if(i instanceof je)r=i.node;let s=t.state.doc.resolve(e);for(let t=s.depth+1;t>0;t--){let e=t>s.depth?s.nodeAfter:s.node(t);if(je.isSelectable(e)){if(r&&i.$from.depth>0&&t>=i.$from.depth&&s.before(i.$from.depth+1)==i.$from.pos)n=s.before(i.$from.depth);else n=s.before(t);break}}if(n!=null){ns(t,je.create(t.state.doc,n),"pointer");return true}else{return false}}function us(t,e,i,r,n){return rs(t,"handleClickOn",e,i,r)||t.someProp("handleClick",(i=>i(t,e,r)))||(n?ls(t,i):ss(t,i))}function fs(t,e,i,r){return rs(t,"handleDoubleClickOn",e,i,r)||t.someProp("handleDoubleClick",(i=>i(t,e,r)))}function hs(t,e,i,r){return rs(t,"handleTripleClickOn",e,i,r)||t.someProp("handleTripleClick",(i=>i(t,e,r)))||as(t,i,r)}function as(t,e,i){if(i.button!=0)return false;let r=t.state.doc;if(e==-1){if(r.inlineContent){ns(t,Ie.create(r,0,r.content.size),"pointer");return true}return false}let n=r.resolve(e);for(let e=n.depth+1;e>0;e--){let i=e>n.depth?n.nodeAfter:n.node(e);let s=n.before(e);if(i.inlineContent)ns(t,Ie.create(r,s+1,s+1+i.content.size),"pointer");else if(je.isSelectable(i))ns(t,je.create(r,s),"pointer");else continue;return true}}function cs(t){return ks(t)}const ds=Ri?"metaKey":"ctrlKey";Wn.mousedown=(t,e)=>{let i=e;t.input.shiftKey=i.shiftKey;let r=cs(t);let n=Date.now(),s="singleClick";if(n-t.input.lastClick.time<500&&is(i,t.input.lastClick)&&!i[ds]){if(t.input.lastClick.type=="singleClick")s="doubleClick";else if(t.input.lastClick.type=="doubleClick")s="tripleClick"}t.input.lastClick={time:n,x:i.clientX,y:i.clientY,type:s};let l=t.posAtCoords(es(i));if(!l)return;if(s=="singleClick"){if(t.input.mouseDown)t.input.mouseDown.done();t.input.mouseDown=new ps(t,l,i,!!r)}else if((s=="doubleClick"?fs:hs)(t,l.pos,l.inside,i)){i.preventDefault()}else{Vn(t,"pointer")}};class ps{constructor(t,e,i,r){this.view=t;this.pos=e;this.event=i;this.flushed=r;this.delayedSelectionSync=false;this.mightDrag=null;this.startDoc=t.state.doc;this.selectNode=!!i[ds];this.allowDefault=i.shiftKey;let n,s;if(e.inside>-1){n=t.state.doc.nodeAt(e.inside);s=e.inside}else{let i=t.state.doc.resolve(e.pos);n=i.parent;s=i.depth?i.before():0}const l=r?null:i.target;const u=l?t.docView.nearestDesc(l,true):null;this.target=u?u.dom:null;let{selection:o}=t.state;if(i.button==0&&n.type.spec.draggable&&n.type.spec.selectable!==false||o instanceof je&&o.from<=s&&o.to>s)this.mightDrag={node:n,pos:s,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&Si&&!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));Vn(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((()=>Gr(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(es(t));this.updateAllowDefault(t);if(this.allowDefault||!e){Vn(this.view,"pointer")}else if(us(this.view,e.pos,e.inside,t,this.selectNode)){t.preventDefault()}else if(t.button==0&&(this.flushed||Bi&&this.mightDrag&&!this.mightDrag.node.isAtom||$i&&!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)){ns(this.view,Re.near(this.view.state.doc.resolve(e.pos)),"pointer");t.preventDefault()}else{Vn(this.view,"pointer")}}move(t){this.updateAllowDefault(t);Vn(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}}Wn.touchstart=t=>{t.input.lastTouch=Date.now();cs(t);Vn(t,"pointer")};Wn.touchmove=t=>{t.input.lastTouch=Date.now();Vn(t,"pointer")};Wn.contextmenu=t=>cs(t);function ms(t,e){if(t.composing)return true;if(Bi&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500){t.input.compositionEndedAt=-2e8;return true}return false}const ws=zi?5e3:-1;Un.compositionstart=Un.compositionupdate=t=>{if(!t.composing){t.domObserver.flush();let{state:e}=t,i=e.selection.$from;if(e.selection.empty&&(e.storedMarks||!i.textOffset&&i.parentOffset&&i.nodeBefore.marks.some((t=>t.type.spec.inclusive===false)))){t.markCursor=t.state.storedMarks||i.marks();ks(t,true);t.markCursor=null}else{ks(t);if(Si&&e.selection.empty&&i.parentOffset&&!i.textOffset&&i.nodeBefore.marks.length){let e=t.domSelectionRange();for(let i=e.focusNode,r=e.focusOffset;i&&i.nodeType==1&&r!=0;){let e=r<0?i.lastChild:i.childNodes[r-1];if(!e)break;if(e.nodeType==3){t.domSelection().collapse(e,e.nodeValue.length);break}else{i=e;r=-1}}}}t.input.composing=true}gs(t,ws)};Un.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++;gs(t,20)}};function gs(t,e){clearTimeout(t.input.composingTimeout);if(e>-1)t.input.composingTimeout=setTimeout((()=>ks(t)),e)}function bs(t){if(t.composing){t.input.composing=false;t.input.compositionEndedAt=Ds()}while(t.input.compositionNodes.length>0)t.input.compositionNodes.pop().markParentsDirty()}function Ds(){let t=document.createEvent("Event");t.initEvent("event",true,true);return t.timeStamp}function ks(t,e=false){if(zi&&t.domObserver.flushingSoon>=0)return;t.domObserver.forceFlush();bs(t);if(e||t.docView&&t.docView.dirty){let e=Kr(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 vs(t,e){if(!t.dom.parentNode)return;let i=t.dom.parentNode.appendChild(document.createElement("div"));i.appendChild(e);i.style.cssText="position: fixed; left: -10000px; top: 10px";let r=getSelection(),n=document.createRange();n.selectNodeContents(e);t.dom.blur();r.removeAllRanges();r.addRange(n);setTimeout((()=>{if(i.parentNode)i.parentNode.removeChild(i);t.focus()}),50)}const ys=Ai&&Ci<15||qi&&Ii<604;Wn.copy=Un.cut=(t,e)=>{let i=e;let r=t.state.selection,n=i.type=="cut";if(r.empty)return;let s=ys?null:i.clipboardData;let l=r.content(),{dom:u,text:o}=Sn(t,l);if(s){i.preventDefault();s.clearData();s.setData("text/html",u.innerHTML);s.setData("text/plain",o)}else{vs(t,u)}if(n)t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function Fs(t){return t.openStart==0&&t.openEnd==0&&t.content.childCount==1?t.content.firstChild:null}function Es(t,e){if(!t.dom.parentNode)return;let i=t.input.shiftKey||t.state.selection.$from.parent.type.spec.code;let r=t.dom.parentNode.appendChild(document.createElement(i?"textarea":"div"));if(!i)r.contentEditable="true";r.style.cssText="position: fixed; left: -10000px; top: 10px";r.focus();let n=t.input.shiftKey&&t.input.lastKeyCode!=45;setTimeout((()=>{t.focus();if(r.parentNode)r.parentNode.removeChild(r);if(i)xs(t,r.value,null,n,e);else xs(t,r.textContent,r.innerHTML,n,e)}),50)}function xs(t,e,i,r,n){let s=On(t,e,i,r,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,n,s||m.empty))))return true;if(!s)return false;let l=Fs(s);let u=l?t.state.tr.replaceSelectionWith(l,r):t.state.tr.replaceSelection(s);t.dispatch(u.scrollIntoView().setMeta("paste",true).setMeta("uiEvent","paste"));return true}function Ms(t){let e=t.getData("text/plain")||t.getData("Text");if(e)return e;let i=t.getData("text/uri-list");return i?i.replace(/\r?\n/g," "):""}Un.paste=(t,e)=>{let i=e;if(t.composing&&!zi)return;let r=ys?null:i.clipboardData;let n=t.input.shiftKey&&t.input.lastKeyCode!=45;if(r&&xs(t,Ms(r),r.getData("text/html"),n,i))i.preventDefault();else Es(t,i)};class As{constructor(t,e,i){this.slice=t;this.move=e;this.node=i}}const Cs=Ri?"altKey":"ctrlKey";Wn.dragstart=(t,e)=>{let i=e;let r=t.input.mouseDown;if(r)r.done();if(!i.dataTransfer)return;let n=t.state.selection;let s=n.empty?null:t.posAtCoords(es(i));let l;if(s&&s.pos>=n.from&&s.pos<=(n instanceof je?n.to-1:n.to));else if(r&&r.mightDrag){l=je.create(t.state.doc,r.mightDrag.pos)}else if(i.target&&i.target.nodeType==1){let e=t.docView.nearestDesc(i.target,true);if(e&&e.node.type.spec.draggable&&e!=t.docView)l=je.create(t.state.doc,e.posBefore)}let u=(l||t.state.selection).content(),{dom:o,text:f}=Sn(t,u);i.dataTransfer.clearData();i.dataTransfer.setData(ys?"Text":"text/html",o.innerHTML);i.dataTransfer.effectAllowed="copyMove";if(!ys)i.dataTransfer.setData("text/plain",f);t.dragging=new As(u,!i[Cs],l)};Wn.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{if(t.dragging==e)t.dragging=null}),50)};Un.dragover=Un.dragenter=(t,e)=>e.preventDefault();Un.drop=(t,e)=>{let i=e;let r=t.dragging;t.dragging=null;if(!i.dataTransfer)return;let n=t.posAtCoords(es(i));if(!n)return;let s=t.state.doc.resolve(n.pos);let l=r&&r.slice;if(l){t.someProp("transformPasted",(e=>{l=e(l,t)}))}else{l=On(t,Ms(i.dataTransfer),ys?null:i.dataTransfer.getData("text/html"),false,s)}let u=!!(r&&!i[Cs]);if(t.someProp("handleDrop",(e=>e(t,i,l||m.empty,u)))){i.preventDefault();return}if(!l)return;i.preventDefault();let o=l?pe(t.state.doc,s.pos,l):s.pos;if(o==null)o=s.pos;let f=t.state.tr;if(u){let{node:t}=r;if(t)t.replace(f);else f.deleteSelection()}let h=f.mapping.map(o);let a=l.openStart==0&&l.openEnd==0&&l.content.childCount==1;let c=f.doc;if(a)f.replaceRangeWith(h,h,l.content.firstChild);else f.replaceRange(h,h,l);if(f.doc.eq(c))return;let d=f.doc.resolve(h);if(a&&je.isSelectable(l.content.firstChild)&&d.nodeAfter&&d.nodeAfter.sameMarkup(l.content.firstChild)){f.setSelection(new je(d))}else{let e=f.mapping.map(o);f.mapping.maps[f.mapping.maps.length-1].forEach(((t,i,r,n)=>e=n));f.setSelection(ln(t,d,f.doc.resolve(e)))}t.focus();t.dispatch(f.setMeta("uiEvent","drop"))};Wn.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()))Gr(t)}),20)}};Wn.blur=(t,e)=>{let i=e;if(t.focused){t.domObserver.stop();t.dom.classList.remove("ProseMirror-focused");t.domObserver.start();if(i.relatedTarget&&t.dom.contains(i.relatedTarget))t.domObserver.currentSelection.clear();t.focused=false}};Wn.beforeinput=(t,e)=>{let i=e;if($i&&zi&&i.inputType=="deleteContentBackward"){t.domObserver.flushSoon();let{domChangeCount:e}=t.input;setTimeout((()=>{if(t.input.domChangeCount!=e)return;t.dom.blur();t.focus();if(t.someProp("handleKeyDown",(e=>e(t,bi(8,"Backspace")))))return;let{$cursor:i}=t.state.selection;if(i&&i.pos>0)t.dispatch(t.state.tr.delete(i.pos-1,i.pos).scrollIntoView())}),50)}};for(let t in Un)Wn[t]=Un[t];function Ss(t,e){if(t==e)return true;for(let i in t)if(t[i]!==e[i])return false;for(let i in e)if(!(i in t))return false;return true}class Os{constructor(t,e){this.toDOM=t;this.spec=e||Rs;this.side=this.spec.side||0}map(t,e,i,r){let{pos:n,deleted:s}=t.mapResult(e.from+r,this.side<0?-1:1);return s?null:new Bs(n-i,n-i,this)}valid(){return true}eq(t){return this==t||t instanceof Os&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&Ss(this.spec,t.spec))}destroy(t){if(this.spec.destroy)this.spec.destroy(t)}}class $s{constructor(t,e){this.attrs=t;this.spec=e||Rs}map(t,e,i,r){let n=t.map(e.from+r,this.spec.inclusiveStart?-1:1)-i;let s=t.map(e.to+r,this.spec.inclusiveEnd?1:-1)-i;return n>=s?null:new Bs(n,s,this)}valid(t,e){return e.from<e.to}eq(t){return this==t||t instanceof $s&&Ss(this.attrs,t.attrs)&&Ss(this.spec,t.spec)}static is(t){return t.type instanceof $s}destroy(){}}class _s{constructor(t,e){this.attrs=t;this.spec=e||Rs}map(t,e,i,r){let n=t.mapResult(e.from+r,1);if(n.deleted)return null;let s=t.mapResult(e.to+r,-1);if(s.deleted||s.pos<=n.pos)return null;return new Bs(n.pos-i,s.pos-i,this)}valid(t,e){let{index:i,offset:r}=t.content.findIndex(e.from),n;return r==e.from&&!(n=t.child(i)).isText&&r+n.nodeSize==e.to}eq(t){return this==t||t instanceof _s&&Ss(this.attrs,t.attrs)&&Ss(this.spec,t.spec)}destroy(){}}class Bs{constructor(t,e,i){this.from=t;this.to=e;this.type=i}copy(t,e){return new Bs(t,e,this.type)}eq(t,e=0){return this.type.eq(t.type)&&this.from+e==t.from&&this.to+e==t.to}map(t,e,i){return this.type.map(t,this,e,i)}static widget(t,e,i){return new Bs(t,t,new Os(e,i))}static inline(t,e,i,r){return new Bs(t,e,new $s(i,r))}static node(t,e,i,r){return new Bs(t,e,new _s(i,r))}get spec(){return this.type.spec}get inline(){return this.type instanceof $s}get widget(){return this.type instanceof Os}}const qs=[],Rs={};class Ns{constructor(t,e){this.local=t.length?t:qs;this.children=e.length?e:qs}static create(t,e){return e.length?Ws(e,t,0,Rs):zs}find(t,e,i){let r=[];this.findInner(t==null?0:t,e==null?1e9:e,r,0,i);return r}findInner(t,e,i,r,n){for(let s=0;s<this.local.length;s++){let l=this.local[s];if(l.from<=e&&l.to>=t&&(!n||n(l.spec)))i.push(l.copy(l.from+r,l.to+r))}for(let s=0;s<this.children.length;s+=3){if(this.children[s]<e&&this.children[s+1]>t){let l=this.children[s]+1;this.children[s+2].findInner(t-l,e-l,i,r+l,n)}}}map(t,e,i){if(this==zs||t.maps.length==0)return this;return this.mapInner(t,e,0,0,i||Rs)}mapInner(t,e,i,r,n){let s;for(let l=0;l<this.local.length;l++){let u=this.local[l].map(t,i,r);if(u&&u.type.valid(e,u))(s||(s=[])).push(u);else if(n.onRemove)n.onRemove(this.local[l].spec)}if(this.children.length)return Is(this.children,s||[],t,e,i,r,n);else return s?new Ns(s.sort(Us),qs):zs}add(t,e){if(!e.length)return this;if(this==zs)return Ns.create(t,e);return this.addInner(t,e,0)}addInner(t,e,i){let r,n=0;t.forEach(((t,s)=>{let l=s+i,u;if(!(u=Js(e,t,l)))return;if(!r)r=this.children.slice();while(n<r.length&&r[n]<s)n+=3;if(r[n]==s)r[n+2]=r[n+2].addInner(t,u,l+1);else r.splice(n,0,s,s+t.nodeSize,Ws(u,t,l+1,Rs));n+=3}));let s=Ps(n?Ls(e):e,-i);for(let e=0;e<s.length;e++)if(!s[e].type.valid(t,s[e]))s.splice(e--,1);return new Ns(s.length?this.local.concat(s).sort(Us):this.local,r||this.children)}remove(t){if(t.length==0||this==zs)return this;return this.removeInner(t,0)}removeInner(t,e){let i=this.children,r=this.local;for(let r=0;r<i.length;r+=3){let n;let s=i[r]+e,l=i[r+1]+e;for(let e=0,i;e<t.length;e++)if(i=t[e]){if(i.from>s&&i.to<l){t[e]=null;(n||(n=[])).push(i)}}if(!n)continue;if(i==this.children)i=this.children.slice();let u=i[r+2].removeInner(n,s+1);if(u!=zs){i[r+2]=u}else{i.splice(r,3);r-=3}}if(r.length)for(let i=0,n;i<t.length;i++)if(n=t[i]){for(let t=0;t<r.length;t++)if(r[t].eq(n,e)){if(r==this.local)r=this.local.slice();r.splice(t--,1)}}if(i==this.children&&r==this.local)return this;return r.length||i.length?new Ns(r,i):zs}forChild(t,e){if(this==zs)return this;if(e.isLeaf)return Ns.empty;let i,r;for(let e=0;e<this.children.length;e+=3)if(this.children[e]>=t){if(this.children[e]==t)i=this.children[e+2];break}let n=t+1,s=n+e.content.size;for(let t=0;t<this.local.length;t++){let e=this.local[t];if(e.from<s&&e.to>n&&e.type instanceof $s){let t=Math.max(n,e.from)-n,i=Math.min(s,e.to)-n;if(t<i)(r||(r=[])).push(e.copy(t,i))}}if(r){let t=new Ns(r.sort(Us),qs);return i?new Ts([t,i]):t}return i||zs}eq(t){if(this==t)return true;if(!(t instanceof Ns)||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 Hs(this.localsInner(t))}localsInner(t){if(this==zs)return qs;if(t.inlineContent||!this.local.some($s.is))return this.local;let e=[];for(let t=0;t<this.local.length;t++){if(!(this.local[t].type instanceof $s))e.push(this.local[t])}return e}}Ns.empty=new Ns([],[]);Ns.removeOverlap=Hs;const zs=Ns.empty;class Ts{constructor(t){this.members=t}map(t,e){const i=this.members.map((i=>i.map(t,e,Rs)));return Ts.from(i)}forChild(t,e){if(e.isLeaf)return Ns.empty;let i=[];for(let r=0;r<this.members.length;r++){let n=this.members[r].forChild(t,e);if(n==zs)continue;if(n instanceof Ts)i=i.concat(n.members);else i.push(n)}return Ts.from(i)}eq(t){if(!(t instanceof Ts)||t.members.length!=this.members.length)return false;for(let e=0;e<this.members.length;e++)if(!this.members[e].eq(t.members[e]))return false;return true}locals(t){let e,i=true;for(let r=0;r<this.members.length;r++){let n=this.members[r].localsInner(t);if(!n.length)continue;if(!e){e=n}else{if(i){e=e.slice();i=false}for(let t=0;t<n.length;t++)e.push(n[t])}}return e?Hs(i?e:e.sort(Us)):qs}static from(t){switch(t.length){case 0:return zs;case 1:return t[0];default:return new Ts(t.every((t=>t instanceof Ns))?t:t.reduce(((t,e)=>t.concat(e instanceof Ns?e:e.members)),[]))}}}function Is(t,e,i,r,n,s,l){let u=t.slice();for(let t=0,e=s;t<i.maps.length;t++){let r=0;i.maps[t].forEach(((t,i,n,s)=>{let l=s-n-(i-t);for(let n=0;n<u.length;n+=3){let s=u[n+1];if(s<0||t>s+e-r)continue;let o=u[n]+e-r;if(i>=o){u[n+1]=t<=o?-2:-1}else if(t>=e&&l){u[n]+=l;u[n+1]+=l}}r+=l}));e=i.maps[t].map(e,-1)}let o=false;for(let e=0;e<u.length;e+=3)if(u[e+1]<0){if(u[e+1]==-2){o=true;u[e+1]=-1;continue}let f=i.map(t[e]+s),h=f-n;if(h<0||h>=r.content.size){o=true;continue}let a=i.map(t[e+1]+s,-1),c=a-n;let{index:d,offset:p}=r.content.findIndex(h);let m=r.maybeChild(d);if(m&&p==h&&p+m.nodeSize==c){let r=u[e+2].mapInner(i,m,f+1,t[e]+s+1,l);if(r!=zs){u[e]=h;u[e+1]=c;u[e+2]=r}else{u[e+1]=-2;o=true}}else{o=true}}if(o){let o=js(u,t,e,i,n,s,l);let f=Ws(o,r,0,l);e=f.local;for(let t=0;t<u.length;t+=3)if(u[t+1]<0){u.splice(t,3);t-=3}for(let t=0,e=0;t<f.children.length;t+=3){let i=f.children[t];while(e<u.length&&u[e]<i)e+=3;u.splice(e,0,f.children[t],f.children[t+1],f.children[t+2])}}return new Ns(e.sort(Us),u)}function Ps(t,e){if(!e||!t.length)return t;let i=[];for(let r=0;r<t.length;r++){let n=t[r];i.push(new Bs(n.from+e,n.to+e,n.type))}return i}function js(t,e,i,r,n,s,l){function u(t,e){for(let s=0;s<t.local.length;s++){let u=t.local[s].map(r,n,e);if(u)i.push(u);else if(l.onRemove)l.onRemove(t.local[s].spec)}for(let i=0;i<t.children.length;i+=3)u(t.children[i+2],t.children[i]+e+1)}for(let i=0;i<t.length;i+=3)if(t[i+1]==-1)u(t[i+2],e[i]+s+1);return i}function Js(t,e,i){if(e.isLeaf)return null;let r=i+e.nodeSize,n=null;for(let e=0,s;e<t.length;e++){if((s=t[e])&&s.from>i&&s.to<r){(n||(n=[])).push(s);t[e]=null}}return n}function Ls(t){let e=[];for(let i=0;i<t.length;i++)if(t[i]!=null)e.push(t[i]);return e}function Ws(t,e,i,r){let n=[],s=false;e.forEach(((e,l)=>{let u=Js(t,e,l+i);if(u){s=true;let t=Ws(u,e,i+l+1,r);if(t!=zs)n.push(l,l+e.nodeSize,t)}}));let l=Ps(s?Ls(t):t,-i).sort(Us);for(let t=0;t<l.length;t++)if(!l[t].type.valid(e,l[t])){if(r.onRemove)r.onRemove(l[t].spec);l.splice(t--,1)}return l.length||n.length?new Ns(l,n):zs}function Us(t,e){return t.from-e.from||t.to-e.to}function Hs(t){let e=t;for(let i=0;i<e.length-1;i++){let r=e[i];if(r.from!=r.to)for(let n=i+1;n<e.length;n++){let s=e[n];if(s.from==r.from){if(s.to!=r.to){if(e==t)e=t.slice();e[n]=s.copy(s.from,r.to);Zs(e,n+1,s.copy(r.to,s.to))}continue}else{if(s.from<r.to){if(e==t)e=t.slice();e[i]=r.copy(r.from,s.from);Zs(e,n,r.copy(s.from,r.to))}break}}}return e}function Zs(t,e,i){while(e<t.length&&Us(i,t[e])>0)e++;t.splice(e,0,i)}function Ks(t){let e=[];t.someProp("decorations",(i=>{let r=i(t.state);if(r&&r!=zs)e.push(r)}));if(t.cursorWrapper)e.push(Ns.create(t.state.doc,[t.cursorWrapper.deco]));return Ts.from(e)}const Vs={childList:true,characterData:true,characterDataOldValue:true,attributes:true,attributeOldValue:true,subtree:true};const Gs=Ai&&Ci<=11;class Xs{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 Ys{constructor(t,e){this.view=t;this.handleDOMChange=e;this.queue=[];this.flushingSoon=-1;this.observer=null;this.currentSelection=new Xs;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(Ai&&Ci<=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(Gs){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,Vs)}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(!un(this.view))return;if(this.suppressingSelectionUpdates)return Gr(this.view);if(Ai&&Ci<=11&&!this.view.state.selection.empty){let t=this.view.domSelectionRange();if(t.focusNode&&ai(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset))return this.flushSoon()}this.flush()}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(t){if(!t.focusNode)return true;let e=new Set,i;for(let i=t.focusNode;i;i=oi(i))e.add(i);for(let r=t.anchorNode;r;r=oi(r))if(e.has(r)){i=r;break}let r=i&&this.view.docView.nearestDesc(i);if(r&&r.ignoreMutation({type:"selection",target:i.nodeType==3?i.parentNode:i})){this.setCurSelection();return true}}pendingRecords(){if(this.observer)for(let t of this.observer.takeRecords())this.queue.push(t);return this.queue}flush(){let{view:t}=this;if(!t.docView||this.flushingSoon>-1)return;let e=this.pendingRecords();if(e.length)this.queue=[];let i=t.domSelectionRange();let r=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(i)&&un(t)&&!this.ignoreSelectionChange(i);let n=-1,s=-1,l=false,u=[];if(t.editable){for(let t=0;t<e.length;t++){let i=this.registerMutation(e[t],u);if(i){n=n<0?i.from:Math.min(i.from,n);s=s<0?i.to:Math.max(i.to,s);if(i.typeOver)l=true}}}if(Si&&u.length>1){let t=u.filter((t=>t.nodeName=="BR"));if(t.length==2){let e=t[0],i=t[1];if(e.parentNode&&e.parentNode.parentNode==i.parentNode)i.remove();else e.remove()}}let o=null;if(n<0&&r&&t.input.lastFocus>Date.now()-200&&Math.max(t.input.lastTouch,t.input.lastClick.time)<Date.now()-300&&gi(i)&&(o=Kr(t))&&o.eq(Re.near(t.state.doc.resolve(0),1))){t.input.lastFocus=0;Gr(t);this.currentSelection.set(i);t.scrollToSelection()}else if(n>-1||r){if(n>-1){t.docView.markDirty(n,s);el(t)}this.handleDOMChange(n,s,l,u);if(t.docView&&t.docView.dirty)t.updateState(t.state);else if(!this.currentSelection.eq(i))Gr(t);this.currentSelection.set(i)}}registerMutation(t,e){if(e.indexOf(t.target)>-1)return null;let i=this.view.docView.nearestDesc(t.target);if(t.type=="attributes"&&(i==this.view.docView||t.attributeName=="contenteditable"||t.attributeName=="style"&&!t.oldValue&&!t.target.getAttribute("style")))return null;if(!i||i.ignoreMutation(t))return null;if(t.type=="childList"){for(let i=0;i<t.addedNodes.length;i++)e.push(t.addedNodes[i]);if(i.contentDOM&&i.contentDOM!=i.dom&&!i.contentDOM.contains(t.target))return{from:i.posBefore,to:i.posAfter};let r=t.previousSibling,n=t.nextSibling;if(Ai&&Ci<=11&&t.addedNodes.length){for(let e=0;e<t.addedNodes.length;e++){let{previousSibling:i,nextSibling:s}=t.addedNodes[e];if(!i||Array.prototype.indexOf.call(t.addedNodes,i)<0)r=i;if(!s||Array.prototype.indexOf.call(t.addedNodes,s)<0)n=s}}let s=r&&r.parentNode==t.target?ui(r)+1:0;let l=i.localPosFromDOM(t.target,s,-1);let u=n&&n.parentNode==t.target?ui(n):t.target.childNodes.length;let o=i.localPosFromDOM(t.target,u,1);return{from:l,to:o}}else if(t.type=="attributes"){return{from:i.posAtStart-i.border,to:i.posAtEnd+i.border}}else{return{from:i.posAtStart,to:i.posAtEnd,typeOver:t.target.nodeValue==t.oldValue}}}}let Qs=new WeakMap;let tl=false;function el(t){if(Qs.has(t))return;Qs.set(t,null);if(["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1){t.requiresGeckoHackNode=Si;if(tl)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.");tl=true}}function il(t){let e;function i(t){t.preventDefault();t.stopImmediatePropagation();e=t.getTargetRanges()[0]}t.dom.addEventListener("beforeinput",i,true);document.execCommand("indent");t.dom.removeEventListener("beforeinput",i,true);let r=e.startContainer,n=e.startOffset;let s=e.endContainer,l=e.endOffset;let u=t.domAtPos(t.state.selection.anchor);if(ai(u.node,u.offset,s,l))[r,n,s,l]=[s,l,r,n];return{anchorNode:r,anchorOffset:n,focusNode:s,focusOffset:l}}function rl(t,e,i){let{node:r,fromOffset:n,toOffset:s,from:l,to:u}=t.docView.parseRange(e,i);let o=t.domSelectionRange();let f;let h=o.anchorNode;if(h&&t.dom.contains(h.nodeType==1?h:h.parentNode)){f=[{node:h,offset:o.anchorOffset}];if(!gi(o))f.push({node:o.focusNode,offset:o.focusOffset})}if($i&&t.input.lastKeyCode===8){for(let t=s;t>n;t--){let e=r.childNodes[t-1],i=e.pmViewDesc;if(e.nodeName=="BR"&&!i){s=t;break}if(!i||i.size)break}}let a=t.state.doc;let c=t.someProp("domParser")||st.fromSchema(t.state.schema);let d=a.resolve(l);let p=null,m=c.parse(r,{topNode:d.parent,topMatch:d.parent.contentMatchAt(d.index()),topOpen:true,from:n,to:s,preserveWhitespace:d.parent.type.whitespace=="pre"?"full":true,findPositions:f,ruleFromNode:nl,context:d});if(f&&f[0].pos!=null){let t=f[0].pos,e=f[1]&&f[1].pos;if(e==null)e=t;p={anchor:t+l,head:e+l}}return{doc:m,sel:p,from:l,to:u}}function nl(t){let e=t.pmViewDesc;if(e){return e.parseRule()}else if(t.nodeName=="BR"&&t.parentNode){if(Bi&&/^(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||Bi&&/^(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 sl=/^(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 ll(t,e,i,r,n){let s=t.input.compositionPendingChanges||(t.composing?t.input.compositionID:0);t.input.compositionPendingChanges=0;if(e<0){let e=t.input.lastSelectionTime>Date.now()-50?t.input.lastSelectionOrigin:null;let i=Kr(t,e);if(i&&!t.state.selection.eq(i)){if($i&&zi&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",(e=>e(t,bi(13,"Enter")))))return;let r=t.state.tr.setSelection(i);if(e=="pointer")r.setMeta("pointer",true);else if(e=="key")r.scrollIntoView();if(s)r.setMeta("composition",s);t.dispatch(r)}return}let l=t.state.doc.resolve(e);let u=l.sharedDepth(i);e=l.before(u+1);i=t.state.doc.resolve(i).after(u+1);let o=t.state.selection;let f=rl(t,e,i);let h=t.state.doc,a=h.slice(f.from,f.to);let c,d;if(t.input.lastKeyCode===8&&Date.now()-100<t.input.lastKeyCodeTime){c=t.state.selection.to;d="end"}else{c=t.state.selection.from;d="start"}t.input.lastKeyCode=null;let p=al(a.content,f.doc.content,f.from,c,d);if((qi&&t.input.lastIOSEnter>Date.now()-225||zi)&&n.some((t=>t.nodeType==1&&!sl.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,bi(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(!p){if(r&&o instanceof Ie&&!o.empty&&o.$head.sameParent(o.$anchor)&&!t.composing&&!(f.sel&&f.sel.anchor!=f.sel.head)){p={start:o.from,endA:o.to,endB:o.to}}else{if(f.sel){let e=ul(t,t.state.doc,f.sel);if(e&&!e.eq(t.state.selection)){let i=t.state.tr.setSelection(e);if(s)i.setMeta("composition",s);t.dispatch(i)}}return}}if($i&&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 Ie){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(Ai&&Ci<=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 D;if((qi&&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)&&(D=Re.findFrom(f.doc.resolve(m.pos+1),1,true))&&D.head==w.pos)&&t.someProp("handleKeyDown",(e=>e(t,bi(13,"Enter"))))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&fl(h,p.start,p.endA,m,w)&&t.someProp("handleKeyDown",(e=>e(t,bi(8,"Backspace"))))){if(zi&&$i)t.domObserver.suppressSelectionUpdates();return}if($i&&zi&&p.endB==p.start)t.input.lastAndroidDelete=Date.now();if(zi&&!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,bi(13,"Enter"))}))}),20)}let k=p.start,v=p.endA;let y,F,E;if(b){if(m.pos==w.pos){if(Ai&&Ci<=11&&m.parentOffset==0){t.domObserver.suppressSelectionUpdates();setTimeout((()=>Gr(t)),20)}y=t.state.tr.delete(k,v);F=h.resolve(p.start).marksAcross(h.resolve(p.endA))}else if(p.endA==p.endB&&(E=ol(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(k,v,E.mark);else y.removeMark(k,v,E.mark)}else if(m.parent.child(m.index()).isText&&m.index()==w.index()-(w.textOffset?0:1)){let e=m.parent.textBetween(m.parentOffset,w.parentOffset);if(t.someProp("handleTextInput",(i=>i(t,k,v,e))))return;y=t.state.tr.insertText(e,k,v)}}if(!y)y=t.state.tr.replace(k,v,f.doc.slice(p.start-f.from,p.endB-f.from));if(f.sel){let e=ul(t,y.doc,f.sel);if(e&&!($i&&zi&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(e.head==k||e.head==y.mapping.map(v)-1)||Ai&&e.empty&&e.head==k))y.setSelection(e)}if(F)y.ensureMarks(F);if(s)y.setMeta("composition",s);t.dispatch(y.scrollIntoView())}function ul(t,e,i){if(Math.max(i.anchor,i.head)>e.content.size)return null;return ln(t,e.resolve(i.anchor),e.resolve(i.head))}function ol(t,e){let i=t.firstChild.marks,r=e.firstChild.marks;let n=i,s=r,l,u,o;for(let t=0;t<r.length;t++)n=r[t].removeFromSet(n);for(let t=0;t<i.length;t++)s=i[t].removeFromSet(s);if(n.length==1&&s.length==0){u=n[0];l="add";o=t=>t.mark(u.addToSet(t.marks))}else if(n.length==0&&s.length==1){u=s[0];l="remove";o=t=>t.mark(u.removeFromSet(t.marks))}else{return null}let h=[];for(let t=0;t<e.childCount;t++)h.push(o(e.child(t)));if(f.from(h).eq(t))return{mark:u,type:l}}function fl(t,e,i,r,n){if(!r.parent.isTextblock||i-e<=n.pos-r.pos||hl(r,true,false)<n.pos)return false;let s=t.resolve(e);if(s.parentOffset<s.parent.content.size||!s.parent.isTextblock)return false;let l=t.resolve(hl(s,true,true));if(!l.parent.isTextblock||l.pos>i||hl(l,true,false)<i)return false;return r.parent.content.cut(r.parentOffset).eq(l.parent.content)}function hl(t,e,i){let r=t.depth,n=e?t.end():t.pos;while(r>0&&(e||t.indexAfter(r)==t.node(r).childCount)){r--;n++;e=false}if(i){let e=t.node(r).maybeChild(t.indexAfter(r));while(e&&!e.isLeaf){e=e.firstChild;n++}}return n}function al(t,e,i,r,n){let s=t.findDiffStart(e,i);if(s==null)return null;let{a:l,b:u}=t.findDiffEnd(e,i+t.size,i+e.size);if(n=="end"){let t=Math.max(0,s-Math.min(l,u));r-=l+t-s}if(l<s&&t.size<e.size){let t=r<=s&&r>=l?s-r:0;s-=t;if(s&&s<e.size&&cl(e.textBetween(s-1,s+1)))s+=t?1:-1;u=s+(u-l);l=s}else if(u<s){let e=r<=s&&r>=u?s-r:0;s-=e;if(s&&s<t.size&&cl(t.textBetween(s-1,s+1)))s+=e?1:-1;l=s+(l-u);u=s}return{start:s,endA:l,endB:u}}function cl(t){if(t.length!=2)return false;let e=t.charCodeAt(0),i=t.charCodeAt(1);return e>=56320&&e<=57343&&i>=55296&&i<=56319}class dl{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 Zn;this.prevDirectPlugins=[];this.pluginViews=[];this.requiresGeckoHackNode=false;this.dragging=null;this._props=e;this.state=e.state;this.directPlugins=e.plugins||[];this.directPlugins.forEach(kl);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=wl(this);ml(this);this.nodeViews=bl(this);this.docView=Ar(this.state.doc,pl(this),Ks(this),this.dom,this);this.domObserver=new Ys(this,((t,e,i,r)=>ll(this,t,e,i,r)));this.domObserver.start();Kn(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)Xn(this);let e=this._props;this._props=t;if(t.plugins){t.plugins.forEach(kl);this.directPlugins=t.plugins}this.updateStateInner(t.state,e)}setProps(t){let e={};for(let t in this._props)e[t]=this._props[t];e.state=this.state;for(let i in t)e[i]=t[i];this.update(e)}updateState(t){this.updateStateInner(t,this._props)}updateStateInner(t,e){var i;let r=this.state,n=false,s=false;if(t.storedMarks&&this.composing){bs(this);s=true}this.state=t;let l=r.plugins!=t.plugins||this._props.plugins!=e.plugins;if(l||this._props.plugins!=e.plugins||this._props.nodeViews!=e.nodeViews){let t=bl(this);if(Dl(t,this.nodeViews)){this.nodeViews=t;n=true}}if(l||e.handleDOMEvents!=this._props.handleDOMEvents){Xn(this)}this.editable=wl(this);ml(this);let u=Ks(this),o=pl(this);let f=r.plugins!=t.plugins&&!r.doc.eq(t.doc)?"reset":t.scrollToSelection>r.scrollToSelection?"to selection":"preserve";let h=n||!this.docView.matchesNode(t.doc,o,u);if(h||!t.selection.eq(r.selection))s=true;let a=f=="preserve"&&s&&this.dom.style.overflowAnchor==null&&Wi(this);if(s){this.domObserver.stop();let e=h&&(Ai||$i)&&!this.composing&&!r.selection.empty&&!t.selection.empty&&gl(r.selection,t.selection);if(h){let i=$i?this.trackWrites=this.domSelectionRange().focusNode:null;if(n||!this.docView.update(t.doc,o,u,this)){this.docView.updateOuterDeco([]);this.docView.destroy();this.docView=Ar(t.doc,o,u,this.dom,this)}if(i&&!this.trackWrites)e=true}if(e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&fn(this))){Gr(this,e)}else{nn(this,t.selection);this.domObserver.setCurSelection()}this.domObserver.start()}this.updatePluginViews(r);if(((i=this.dragging)===null||i===void 0?void 0:i.node)&&!r.doc.eq(t.doc))this.updateDraggedNode(this.dragging,r);if(f=="reset"){this.dom.scrollTop=0}else if(f=="to selection"){this.scrollToSelection()}else if(a){Hi(a)}}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof je){let e=this.docView.domAfterPos(this.state.selection.from);if(e.nodeType==1)Li(this,e.getBoundingClientRect(),t)}else{Li(this,this.coordsAtPos(this.state.selection.head,1),t)}}destroyPluginViews(){let t;while(t=this.pluginViews.pop())if(t.destroy)t.destroy()}updatePluginViews(t){if(!t||t.plugins!=this.state.plugins||this.directPlugins!=this.prevDirectPlugins){this.prevDirectPlugins=this.directPlugins;this.destroyPluginViews();for(let t=0;t<this.directPlugins.length;t++){let e=this.directPlugins[t];if(e.spec.view)this.pluginViews.push(e.spec.view(this))}for(let t=0;t<this.state.plugins.length;t++){let e=this.state.plugins[t];if(e.spec.view)this.pluginViews.push(e.spec.view(this))}}else{for(let e=0;e<this.pluginViews.length;e++){let i=this.pluginViews[e];if(i.update)i.update(this,t)}}}updateDraggedNode(t,e){let i=t.node,r=-1;if(this.state.doc.nodeAt(i.from)==i.node){r=i.from}else{let t=i.from+(this.state.doc.content.size-e.doc.content.size);let n=t>0&&this.state.doc.nodeAt(t);if(n==i.node)r=t}this.dragging=new As(t.slice,t.move,r<0?undefined:je.create(this.state.doc,r))}someProp(t,e){let i=this._props&&this._props[t],r;if(i!=null&&(r=e?e(i):i))return r;for(let i=0;i<this.directPlugins.length;i++){let n=this.directPlugins[i].props[t];if(n!=null&&(r=e?e(n):n))return r}let n=this.state.plugins;if(n)for(let i=0;i<n.length;i++){let s=n[i].props[t];if(s!=null&&(r=e?e(s):s))return r}}hasFocus(){if(Ai){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)Vi(this.dom);Gr(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 rr(this,t)}coordsAtPos(t,e=1){return ur(this,t,e)}domAtPos(t,e=0){return this.docView.domFromPos(t,e)}nodeDOM(t){let e=this.docView.descAt(t);return e?e.nodeDOM:null}posAtDOM(t,e,i=-1){let r=this.docView.posFromDOM(t,e,i);if(r==null)throw new RangeError("DOM position not inside the editor");return r}endOfTextblock(t,e){return gr(this,e||this.state,t)}pasteHTML(t,e){return xs(this,"",t,false,e||new ClipboardEvent("paste"))}pasteText(t,e){return xs(this,t,null,true,e||new ClipboardEvent("paste"))}destroy(){if(!this.docView)return;Gn(this);this.destroyPluginViews();if(this.mounted){this.docView.update(this.state.doc,[],Ks(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 ts(this,t)}dispatch(t){let e=this._props.dispatchTransaction;if(e)e.call(this,t);else this.updateState(this.state.apply(t))}domSelectionRange(){return Bi&&this.root.nodeType===11&&Di(this.dom.ownerDocument)==this.dom?il(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function pl(t){let e=Object.create(null);e.class="ProseMirror";e.contenteditable=String(t.editable);t.someProp("attributes",(i=>{if(typeof i=="function")i=i(t.state);if(i)for(let t in i){if(t=="class")e.class+=" "+i[t];else if(t=="style")e.style=(e.style?e.style+";":"")+i[t];else if(!e[t]&&t!="contenteditable"&&t!="nodeName")e[t]=String(i[t])}}));if(!e.translate)e.translate="no";return[Bs.node(0,t.state.doc.content.size,e)]}function ml(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:Bs.widget(t.state.selection.head,e,{raw:true,marks:t.markCursor})}}else{t.cursorWrapper=null}}function wl(t){return!t.someProp("editable",(e=>e(t.state)===false))}function gl(t,e){let i=Math.min(t.$anchor.sharedDepth(t.head),e.$anchor.sharedDepth(e.head));return t.$anchor.start(i)!=e.$anchor.start(i)}function bl(t){let e=Object.create(null);function i(t){for(let i in t)if(!Object.prototype.hasOwnProperty.call(e,i))e[i]=t[i]}t.someProp("nodeViews",i);t.someProp("markViews",i);return e}function Dl(t,e){let i=0,r=0;for(let r in t){if(t[r]!=e[r])return true;i++}for(let t in e)r++;return i!=r}function kl(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 vl=["p",0],yl=["blockquote",0],Fl=["hr"],El=["pre",["code",0]],xl=["br"];const Ml={doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM(){return vl}},blockquote:{content:"block+",group:"block",defining:true,parseDOM:[{tag:"blockquote"}],toDOM(){return yl}},horizontal_rule:{group:"block",parseDOM:[{tag:"hr"}],toDOM(){return Fl}},heading:{attrs:{level:{default:1}},content:"inline*",group:"block",defining:true,parseDOM:[{tag:"h1",attrs:{level:1}},{tag:"h2",attrs:{level:2}},{tag:"h3",attrs:{level:3}},{tag:"h4",attrs:{level:4}},{tag:"h5",attrs:{level:5}},{tag:"h6",attrs:{level:6}}],toDOM(t){return["h"+t.attrs.level,0]}},code_block:{content:"text*",marks:"",group:"block",code:true,defining:true,parseDOM:[{tag:"pre",preserveWhitespace:"full"}],toDOM(){return El}},text:{group:"inline"},image:{inline:true,attrs:{src:{},alt:{default:null},title:{default:null}},group:"inline",draggable:true,parseDOM:[{tag:"img[src]",getAttrs(t){return{src:t.getAttribute("src"),title:t.getAttribute("title"),alt:t.getAttribute("alt")}}}],toDOM(t){let{src:e,alt:i,title:r}=t.attrs;return["img",{src:e,alt:i,title:r}]}},hard_break:{inline:true,group:"inline",selectable:false,parseDOM:[{tag:"br"}],toDOM(){return xl}}};const Al=["em",0],Cl=["strong",0],Sl=["code",0];const Ol={link:{attrs:{href:{},title:{default:null}},inclusive:false,parseDOM:[{tag:"a[href]",getAttrs(t){return{href:t.getAttribute("href"),title:t.getAttribute("title")}}}],toDOM(t){let{href:e,title:i}=t.attrs;return["a",{href:e,title:i},0]}},em:{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"},{style:"font-style=normal",clearMark:t=>t.type.name=="em"}],toDOM(){return Al}},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 Cl}},code:{parseDOM:[{tag:"code"}],toDOM(){return Sl}}};const $l=new rt({nodes:Ml,marks:Ol});const _l=["ol",0],Bl=["ul",0],ql=["li",0];const Rl={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?_l:["ol",{start:t.attrs.order},0]}};const Nl={parseDOM:[{tag:"ul"}],toDOM(){return Bl}};const zl={parseDOM:[{tag:"li"}],toDOM(){return ql},defining:true};function Tl(t,e){let i={};for(let e in t)i[e]=t[e];for(let t in e)i[t]=e[t];return i}function Il(t,e,i){return t.append({ordered_list:Tl(Rl,{content:"list_item+",group:i}),bullet_list:Tl(Nl,{content:"list_item+",group:i}),list_item:Tl(zl,{content:e})})}function Pl(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),u=false,o=l;if(!l)return false;if(l.depth>=2&&n.node(l.depth-1).type.compatibleContent(t)&&l.startIndex==0){if(n.index(l.depth-1)==0)return false;let t=i.doc.resolve(l.start-2);o=new _(t,t,l.depth);if(l.endIndex<l.parent.childCount)l=new _(n,i.doc.resolve(s.end(l.depth)),l.depth);u=true}let f=Qt(o,t,e,l);if(!f)return false;if(r)r(jl(i.tr,l,f,u,t).scrollIntoView());return true}}function jl(t,e,i,r,n){let s=f.empty;for(let t=i.length-1;t>=0;t--)s=f.from(i[t].type.create(i[t].attrs,s));t.step(new Ut(e.start-(r?2:0),e.end,e.start,e.end,new m(s,0,0),i.length,true));let l=0;for(let t=0;t<i.length;t++)if(i[t].type==n)l=t+1;let u=i.length-l;let o=e.start+i.length-(r?2:0),h=e.parent;for(let i=e.startIndex,r=e.endIndex,n=true;i<r;i++,n=false){if(!n&&ue(t.doc,o,u)){t.split(o,u);o+=2*u}o+=h.child(i).nodeSize}return t}function Jl(t,e){return function(i,r){let{$from:n,$to:s,node:l}=i.selection;if(l&&l.isBlock||n.depth<2||!n.sameParent(s))return false;let u=n.node(-1);if(u.type!=t)return false;if(n.parent.content.size==0&&n.node(-1).childCount==n.indexAfter(-1)){if(n.depth==3||n.node(-3).type!=t||n.index(-2)!=n.node(-2).childCount-1)return false;if(r){let e=f.empty;let s=n.index(-1)?1:n.index(-2)?2:3;for(let t=n.depth-s;t>=n.depth-3;t--)e=f.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(f.from(t.createAndFill()));let u=n.before(n.depth-(s-1));let o=i.tr.replace(u,n.after(-l),new m(e,4-s,0));let h=-1;o.doc.nodesBetween(u,o.doc.content.size,((t,e)=>{if(h>-1)return false;if(t.isTextblock&&t.content.size==0)h=e+1}));if(h>-1)o.setSelection(Re.near(o.doc.resolve(h)));r(o.scrollIntoView())}return true}let o=s.pos==n.end()?u.contentMatchAt(0).defaultType:null;let h=i.tr.delete(n.pos,s.pos);let a=o?[e?{type:t,attrs:e}:null,{type:o}]:undefined;if(!ue(h.doc,n.pos,2,a))return false;if(r)r(h.split(n.pos,2,a).scrollIntoView());return true}}function Ll(t){return function(e,i){let{$from:r,$to:n}=e.selection;let s=r.blockRange(n,(e=>e.childCount>0&&e.firstChild.type==t));if(!s)return false;if(!i)return true;if(r.node(s.depth-1).type==t)return Wl(e,i,t,s);else return Ul(e,i,s)}}function Wl(t,e,i,r){let n=t.tr,s=r.end,l=r.$to.end(r.depth);if(s<l){n.step(new Ut(s-1,l,s,l,new m(f.from(i.create(null,r.parent.copy())),1,0),1,true));r=new _(n.doc.resolve(r.$from.pos),n.doc.resolve(l),r.depth)}const u=Xt(r);if(u==null)return false;n.lift(r,u);let o=n.mapping.map(s,-1)-1;if(fe(n.doc,o))n.join(o);e(n.scrollIntoView());return true}function Ul(t,e,i){let r=t.tr,n=i.parent;for(let t=i.end,e=i.endIndex-1,s=i.startIndex;e>s;e--){t-=n.child(e).nodeSize;r.delete(t-1,t+1)}let s=r.doc.resolve(i.start),l=s.nodeAfter;if(r.mapping.map(i.end)!=i.start+s.nodeAfter.nodeSize)return false;let u=i.startIndex==0,o=i.endIndex==n.childCount;let h=s.node(-1),a=s.index(-1);if(!h.canReplace(a+(u?0:1),a+1,l.content.append(o?f.empty:f.from(n))))return false;let c=s.pos,d=c+l.nodeSize;r.step(new Ut(c-(u?1:0),d+(o?1:0),c+1,d-1,new m((u?f.empty:f.from(n.copy(f.empty))).append(o?f.empty:f.from(n.copy(f.empty))),u?0:1,o?0:1),u?0:1));e(r.scrollIntoView());return true}function Hl(t){return function(e,i){let{$from:r,$to:n}=e.selection;let s=r.blockRange(n,(e=>e.childCount>0&&e.firstChild.type==t));if(!s)return false;let l=s.startIndex;if(l==0)return false;let u=s.parent,o=u.child(l-1);if(o.type!=t)return false;if(i){let r=o.lastChild&&o.lastChild.type==u.type;let n=f.from(r?t.create():null);let l=new m(f.from(t.create(null,f.from(u.type.create(null,n)))),r?3:1,0);let h=s.start,a=s.end;i(e.tr.step(new Ut(h-(r?3:1),a,h,a,l,1,true)).scrollIntoView())}return true}}var Zl={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 Kl={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 Vl=typeof navigator!="undefined"&&/Mac/.test(navigator.platform);var Gl=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var Xl=0;Xl<10;Xl++)Zl[48+Xl]=Zl[96+Xl]=String(Xl);for(var Xl=1;Xl<=24;Xl++)Zl[Xl+111]="F"+Xl;for(var Xl=65;Xl<=90;Xl++){Zl[Xl]=String.fromCharCode(Xl+32);Kl[Xl]=String.fromCharCode(Xl)}for(var Yl in Zl)if(!Kl.hasOwnProperty(Yl))Kl[Yl]=Zl[Yl];function Ql(t){var e=Vl&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||Gl&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified";var i=!e&&t.key||(t.shiftKey?Kl:Zl)[t.keyCode]||t.key||"Unidentified";if(i=="Esc")i="Escape";if(i=="Del")i="Delete";if(i=="Left")i="ArrowLeft";if(i=="Up")i="ArrowUp";if(i=="Right")i="ArrowRight";if(i=="Down")i="ArrowDown";return i}const tu=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function eu(t){let e=t.split(/-(?!$)/),i=e[e.length-1];if(i=="Space")i=" ";let r,n,s,l;for(let t=0;t<e.length-1;t++){let i=e[t];if(/^(cmd|meta|m)$/i.test(i))l=true;else if(/^a(lt)?$/i.test(i))r=true;else if(/^(c|ctrl|control)$/i.test(i))n=true;else if(/^s(hift)?$/i.test(i))s=true;else if(/^mod$/i.test(i)){if(tu)l=true;else n=true}else throw new Error("Unrecognized modifier name: "+i)}if(r)i="Alt-"+i;if(n)i="Ctrl-"+i;if(l)i="Meta-"+i;if(s)i="Shift-"+i;return i}function iu(t){let e=Object.create(null);for(let i in t)e[eu(i)]=t[i];return e}function ru(t,e,i=true){if(e.altKey)t="Alt-"+t;if(e.ctrlKey)t="Ctrl-"+t;if(e.metaKey)t="Meta-"+t;if(i&&e.shiftKey)t="Shift-"+t;return t}function nu(t){return new ri({props:{handleKeyDown:su(t)}})}function su(t){let e=iu(t);return function(t,i){let r=Ql(i),n,s=e[ru(r,i)];if(s&&s(t.state,t.dispatch,t))return true;if(r.length==1&&r!=" "){if(i.shiftKey){let n=e[ru(r,i,false)];if(n&&n(t.state,t.dispatch,t))return true}if((i.shiftKey||i.altKey||i.metaKey||r.charCodeAt(0)>127)&&(n=Zl[i.keyCode])&&n!=r){let r=e[ru(n,i)];if(r&&r(t.state,t.dispatch,t))return true}}return false}}var lu=200;var uu=function t(){};uu.prototype.append=function t(e){if(!e.length){return this}e=uu.from(e);return!this.length&&e||e.length<lu&&this.leafAppend(e)||this.length<lu&&e.leafPrepend(this)||this.appendInner(e)};uu.prototype.prepend=function t(e){if(!e.length){return this}return uu.from(e).append(this)};uu.prototype.appendInner=function t(e){return new fu(this,e)};uu.prototype.slice=function t(e,i){if(e===void 0)e=0;if(i===void 0)i=this.length;if(e>=i){return uu.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,i))};uu.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};uu.prototype.forEach=function t(e,i,r){if(i===void 0)i=0;if(r===void 0)r=this.length;if(i<=r){this.forEachInner(e,i,r,0)}else{this.forEachInvertedInner(e,i,r,0)}};uu.prototype.map=function t(e,i,r){if(i===void 0)i=0;if(r===void 0)r=this.length;var n=[];this.forEach((function(t,i){return n.push(e(t,i))}),i,r);return n};uu.from=function t(e){if(e instanceof uu){return e}return e&&e.length?new ou(e):uu.empty};var ou=function(t){function e(e){t.call(this);this.values=e}if(t)e.__proto__=t;e.prototype=Object.create(t&&t.prototype);e.prototype.constructor=e;var i={length:{configurable:true},depth:{configurable:true}};e.prototype.flatten=function t(){return this.values};e.prototype.sliceInner=function t(i,r){if(i==0&&r==this.length){return this}return new e(this.values.slice(i,r))};e.prototype.getInner=function t(e){return this.values[e]};e.prototype.forEachInner=function t(e,i,r,n){for(var s=i;s<r;s++){if(e(this.values[s],n+s)===false){return false}}};e.prototype.forEachInvertedInner=function t(e,i,r,n){for(var s=i-1;s>=r;s--){if(e(this.values[s],n+s)===false){return false}}};e.prototype.leafAppend=function t(i){if(this.length+i.length<=lu){return new e(this.values.concat(i.flatten()))}};e.prototype.leafPrepend=function t(i){if(this.length+i.length<=lu){return new e(i.flatten().concat(this.values))}};i.length.get=function(){return this.values.length};i.depth.get=function(){return 0};Object.defineProperties(e.prototype,i);return e}(uu);uu.empty=new ou([]);var fu=function(t){function e(e,i){t.call(this);this.left=e;this.right=i;this.length=e.length+i.length;this.depth=Math.max(e.depth,i.depth)+1}if(t)e.__proto__=t;e.prototype=Object.create(t&&t.prototype);e.prototype.constructor=e;e.prototype.flatten=function t(){return this.left.flatten().concat(this.right.flatten())};e.prototype.getInner=function t(e){return e<this.left.length?this.left.get(e):this.right.get(e-this.left.length)};e.prototype.forEachInner=function t(e,i,r,n){var s=this.left.length;if(i<s&&this.left.forEachInner(e,i,Math.min(r,s),n)===false){return false}if(r>s&&this.right.forEachInner(e,Math.max(i-s,0),Math.min(this.length,r)-s,n+s)===false){return false}};e.prototype.forEachInvertedInner=function t(e,i,r,n){var s=this.left.length;if(i>s&&this.right.forEachInvertedInner(e,i-s,Math.max(r,s)-s,n+s)===false){return false}if(r<s&&this.left.forEachInvertedInner(e,Math.min(i,s),r,n)===false){return false}};e.prototype.sliceInner=function t(e,i){if(e==0&&i==this.length){return this}var r=this.left.length;if(i<=r){return this.left.slice(e,i)}if(e>=r){return this.right.slice(e-r,i-r)}return this.left.slice(e,r).append(this.right.slice(0,i-r))};e.prototype.leafAppend=function t(i){var r=this.right.leafAppend(i);if(r){return new e(this.left,r)}};e.prototype.leafPrepend=function t(i){var r=this.left.leafPrepend(i);if(r){return new e(r,this.right)}};e.prototype.appendInner=function t(i){if(this.left.depth>=Math.max(this.right.depth,i.depth)+1){return new e(this.left,new e(this.right,i))}return new e(this,i)};return e}(uu);const hu=500;class au{constructor(t,e){this.items=t;this.eventCount=e}popEvent(t,e){if(this.eventCount==0)return null;let i=this.items.length;for(;;i--){let t=this.items.get(i-1);if(t.selection){--i;break}}let r,n;if(e){r=this.remapping(i,this.items.length);n=r.maps.length}let s=t.tr;let l,u;let o=[],f=[];this.items.forEach(((t,e)=>{if(!t.step){if(!r){r=this.remapping(i,e+1);n=r.maps.length}n--;f.push(t);return}if(r){f.push(new du(t.map));let e=t.step.map(r.slice(n)),i;if(e&&s.maybeStep(e).doc){i=s.mapping.maps[s.mapping.maps.length-1];o.push(new du(i,undefined,undefined,o.length+f.length))}n--;if(i)r.appendMap(i,n)}else{s.maybeStep(t.step)}if(t.selection){l=r?t.selection.map(r.slice(n)):t.selection;u=new au(this.items.slice(0,i).append(f.reverse().concat(o)),this.eventCount-1);return false}}),this.items.length,0);return{remaining:u,transform:s,selection:l}}addTransform(t,e,i,r){let n=[],s=this.eventCount;let l=this.items,u=!r&&l.length?l.get(l.length-1):null;for(let i=0;i<t.steps.length;i++){let o=t.steps[i].invert(t.docs[i]);let f=new du(t.mapping.maps[i],o,e),h;if(h=u&&u.merge(f)){f=h;if(i)n.pop();else l=l.slice(0,l.length-1)}n.push(f);if(e){s++;e=undefined}if(!r)u=f}let o=s-i.depth;if(o>mu){l=cu(l,o);s-=o}return new au(l.append(n),s)}remapping(t,e){let i=new Rt;this.items.forEach(((e,r)=>{let n=e.mirrorOffset!=null&&r-e.mirrorOffset>=t?i.maps.length-e.mirrorOffset:undefined;i.appendMap(e.map,n)}),t,e);return i}addMaps(t){if(this.eventCount==0)return this;return new au(this.items.append(t.map((t=>new du(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let i=[],r=Math.max(0,this.items.length-e);let n=t.mapping;let s=t.steps.length;let l=this.eventCount;this.items.forEach((t=>{if(t.selection)l--}),r);let u=e;this.items.forEach((e=>{let r=n.getMirror(--u);if(r==null)return;s=Math.min(s,r);let o=n.maps[r];if(e.step){let s=t.steps[r].invert(t.docs[r]);let f=e.selection&&e.selection.map(n.slice(u+1,r));if(f)l++;i.push(new du(o,s,f))}else{i.push(new du(o))}}),r);let o=[];for(let t=e;t<s;t++)o.push(new du(n.maps[t]));let f=this.items.slice(0,r).append(o).append(i);let h=new au(f,l);if(h.emptyItemCount()>hu)h=h.compress(this.items.length-i.length);return h}emptyItemCount(){let t=0;this.items.forEach((e=>{if(!e.step)t++}));return t}compress(t=this.items.length){let e=this.remapping(0,t),i=e.maps.length;let r=[],n=0;this.items.forEach(((s,l)=>{if(l>=t){r.push(s);if(s.selection)n++}else if(s.step){let t=s.step.map(e.slice(i)),l=t&&t.getMap();i--;if(l)e.appendMap(l,i);if(t){let u=s.selection&&s.selection.map(e.slice(i));if(u)n++;let o=new du(l.invert(),t,u),f,h=r.length-1;if(f=r.length&&r[h].merge(o))r[h]=f;else r.push(o)}}else if(s.map){i--}}),this.items.length,0);return new au(uu.from(r.reverse()),n)}}au.empty=new au(uu.empty,0);function cu(t,e){let i;t.forEach(((t,r)=>{if(t.selection&&e--==0){i=r;return false}}));return t.slice(i)}class du{constructor(t,e,i,r){this.map=t;this.step=e;this.selection=i;this.mirrorOffset=r}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new du(e.getMap().invert(),e,this.selection)}}}class pu{constructor(t,e,i,r,n){this.done=t;this.undone=e;this.prevRanges=i;this.prevTime=r;this.prevComposition=n}}const mu=20;function wu(t,e,i,r){let n=i.getMeta(Eu),s;if(n)return n.historyState;if(i.getMeta(xu))t=new pu(t.done,t.undone,null,0,-1);let l=i.getMeta("appendedTransaction");if(i.steps.length==0){return t}else if(l&&l.getMeta(Eu)){if(l.getMeta(Eu).redo)return new pu(t.done.addTransform(i,undefined,r,Fu(e)),t.undone,bu(i.mapping.maps[i.steps.length-1]),t.prevTime,t.prevComposition);else return new pu(t.done,t.undone.addTransform(i,undefined,r,Fu(e)),null,t.prevTime,t.prevComposition)}else if(i.getMeta("addToHistory")!==false&&!(l&&l.getMeta("addToHistory")===false)){let n=i.getMeta("composition");let s=t.prevTime==0||!l&&t.prevComposition!=n&&(t.prevTime<(i.time||0)-r.newGroupDelay||!gu(i,t.prevRanges));let u=l?Du(t.prevRanges,i.mapping):bu(i.mapping.maps[i.steps.length-1]);return new pu(t.done.addTransform(i,s?e.selection.getBookmark():undefined,r,Fu(e)),au.empty,u,i.time,n==null?t.prevComposition:n)}else if(s=i.getMeta("rebased")){return new pu(t.done.rebased(i,s),t.undone.rebased(i,s),Du(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}else{return new pu(t.done.addMaps(i.mapping.maps),t.undone.addMaps(i.mapping.maps),Du(t.prevRanges,i.mapping),t.prevTime,t.prevComposition)}}function gu(t,e){if(!e)return false;if(!t.docChanged)return true;let i=false;t.mapping.maps[0].forEach(((t,r)=>{for(let n=0;n<e.length;n+=2)if(t<=e[n+1]&&r>=e[n])i=true}));return i}function bu(t){let e=[];t.forEach(((t,i,r,n)=>e.push(r,n)));return e}function Du(t,e){if(!t)return null;let i=[];for(let r=0;r<t.length;r+=2){let n=e.map(t[r],1),s=e.map(t[r+1],-1);if(n<=s)i.push(n,s)}return i}function ku(t,e,i,r){let n=Fu(e);let s=Eu.get(e).spec.config;let l=(r?t.undone:t.done).popEvent(e,n);if(!l)return;let u=l.selection.resolve(l.transform.doc);let o=(r?t.done:t.undone).addTransform(l.transform,e.selection.getBookmark(),s,n);let f=new pu(r?o:l.remaining,r?l.remaining:o,null,0,-1);i(l.transform.setSelection(u).setMeta(Eu,{redo:r,historyState:f}).scrollIntoView())}let vu=false,yu=null;function Fu(t){let e=t.plugins;if(yu!=e){vu=false;yu=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){vu=true;break}}return vu}const Eu=new li("history");const xu=new li("closeHistory");function Mu(t={}){t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500};return new ri({key:Eu,state:{init(){return new pu(au.empty,au.empty,null,0,-1)},apply(e,i,r){return wu(i,r,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(t,e){let i=e.inputType;let r=i=="historyUndo"?Au:i=="historyRedo"?Cu:null;if(!r)return false;e.preventDefault();return r(t.state,t.dispatch)}}}})}const Au=(t,e)=>{let i=Eu.getState(t);if(!i||i.done.eventCount==0)return false;if(e)ku(i,t,e,false);return true};const Cu=(t,e)=>{let i=Eu.getState(t);if(!i||i.undone.eventCount==0)return false;if(e)ku(i,t,e,true);return true};const Su=(t,e)=>{if(t.selection.empty)return false;if(e)e(t.tr.deleteSelection().scrollIntoView());return true};function Ou(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("backward",t):i.parentOffset>0))return null;return i}const $u=(t,e,i)=>{let r=Ou(t,i);if(!r)return false;let n=qu(r);if(!n){let i=r.blockRange(),n=i&&Xt(i);if(n==null)return false;if(e)e(t.tr.lift(i,n).scrollIntoView());return true}let s=n.nodeBefore;if(!s.type.spec.isolating&&Yu(t,n,e))return true;if(r.parent.content.size==0&&(_u(s,"end")||je.isSelectable(s))){let i=me(t.doc,r.before(),r.after(),m.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(_u(s,"end")?Re.findFrom(r.doc.resolve(r.mapping.map(n.pos,-1)),-1):je.create(r.doc,n.pos-s.nodeSize));e(r.scrollIntoView())}return true}}if(s.isAtom&&n.depth==r.depth-1){if(e)e(t.tr.delete(n.pos-s.nodeSize,n.pos).scrollIntoView());return true}return false};function _u(t,e,i=false){for(let r=t;r;r=e=="start"?r.firstChild:r.lastChild){if(r.isTextblock)return true;if(i&&r.childCount!=1)return false}return false}const Bu=(t,e,i)=>{let{$head:r,empty:n}=t.selection,s=r;if(!n)return false;if(r.parent.isTextblock){if(i?!i.endOfTextblock("backward",t):r.parentOffset>0)return false;s=qu(r)}let l=s&&s.nodeBefore;if(!l||!je.isSelectable(l))return false;if(e)e(t.tr.setSelection(je.create(t.doc,s.pos-l.nodeSize)).scrollIntoView());return true};function qu(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 Ru(t,e){let{$cursor:i}=t.selection;if(!i||(e?!e.endOfTextblock("forward",t):i.parentOffset<i.parent.content.size))return null;return i}const Nu=(t,e,i)=>{let r=Ru(t,i);if(!r)return false;let n=Tu(r);if(!n)return false;let s=n.nodeAfter;if(Yu(t,n,e))return true;if(r.parent.content.size==0&&(_u(s,"start")||je.isSelectable(s))){let i=me(t.doc,r.before(),r.after(),m.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=t.tr.step(i);r.setSelection(_u(s,"start")?Re.findFrom(r.doc.resolve(r.mapping.map(n.pos)),1):je.create(r.doc,r.mapping.map(n.pos)));e(r.scrollIntoView())}return true}}if(s.isAtom&&n.depth==r.depth-1){if(e)e(t.tr.delete(n.pos,n.pos+s.nodeSize).scrollIntoView());return true}return false};const zu=(t,e,i)=>{let{$head:r,empty:n}=t.selection,s=r;if(!n)return false;if(r.parent.isTextblock){if(i?!i.endOfTextblock("forward",t):r.parentOffset<r.parent.content.size)return false;s=Tu(r)}let l=s&&s.nodeAfter;if(!l||!je.isSelectable(l))return false;if(e)e(t.tr.setSelection(je.create(t.doc,s.pos)).scrollIntoView());return true};function Tu(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let i=t.node(e);if(t.index(e)+1<i.childCount)return t.doc.resolve(t.after(e+1));if(i.type.spec.isolating)break}return null}const Iu=(t,e)=>{let i=t.selection,r=i instanceof je,n;if(r){if(i.node.isTextblock||!fe(t.doc,i.from))return false;n=i.from}else{n=ae(t.doc,i.from,-1);if(n==null)return false}if(e){let i=t.tr.join(n);if(r)i.setSelection(je.create(i.doc,n-t.doc.resolve(n).nodeBefore.nodeSize));e(i.scrollIntoView())}return true};const Pu=(t,e)=>{let i=t.selection,r;if(i instanceof je){if(i.node.isTextblock||!fe(t.doc,i.to))return false;r=i.to}else{r=ae(t.doc,i.to,1);if(r==null)return false}if(e)e(t.tr.join(r).scrollIntoView());return true};const ju=(t,e)=>{let{$from:i,$to:r}=t.selection;let n=i.blockRange(r),s=n&&Xt(n);if(s==null)return false;if(e)e(t.tr.lift(n,s).scrollIntoView());return true};const Ju=(t,e)=>{let{$head:i,$anchor:r}=t.selection;if(!i.parent.type.spec.code||!i.sameParent(r))return false;if(e)e(t.tr.insertText("\n").scrollIntoView());return true};function Lu(t){for(let e=0;e<t.edgeCount;e++){let{type:i}=t.edge(e);if(i.isTextblock&&!i.hasRequiredAttrs())return i}return null}const Wu=(t,e)=>{let{$head:i,$anchor:r}=t.selection;if(!i.parent.type.spec.code||!i.sameParent(r))return false;let n=i.node(-1),s=i.indexAfter(-1),l=Lu(n.contentMatchAt(s));if(!l||!n.canReplaceWith(s,s,l))return false;if(e){let r=i.after(),n=t.tr.replaceWith(r,r,l.createAndFill());n.setSelection(Re.near(n.doc.resolve(r),1));e(n.scrollIntoView())}return true};const Uu=(t,e)=>{let i=t.selection,{$from:r,$to:n}=i;if(i instanceof Le||r.parent.inlineContent||n.parent.inlineContent)return false;let s=Lu(n.parent.contentMatchAt(n.indexAfter()));if(!s||!s.isTextblock)return false;if(e){let i=(!r.parentOffset&&n.index()<n.parent.childCount?r:n).pos;let l=t.tr.insert(i,s.createAndFill());l.setSelection(Ie.create(l.doc,i+1));e(l.scrollIntoView())}return true};const Hu=(t,e)=>{let{$cursor:i}=t.selection;if(!i||i.parent.content.size)return false;if(i.depth>1&&i.after()!=i.end(-1)){let r=i.before();if(ue(t.doc,r)){if(e)e(t.tr.split(r).scrollIntoView());return true}}let r=i.blockRange(),n=r&&Xt(r);if(n==null)return false;if(e)e(t.tr.lift(r,n).scrollIntoView());return true};function Zu(t){return(e,i)=>{let{$from:r,$to:n}=e.selection;if(e.selection instanceof je&&e.selection.node.isBlock){if(!r.parentOffset||!ue(e.doc,r.pos))return false;if(i)i(e.tr.split(r.pos).scrollIntoView());return true}if(!r.parent.isBlock)return false;if(i){let s=n.parentOffset==n.parent.content.size;let l=e.tr;if(e.selection instanceof Ie||e.selection instanceof Le)l.deleteSelection();let u=r.depth==0?null:Lu(r.node(-1).contentMatchAt(r.indexAfter(-1)));let o=t&&t(n.parent,s);let f=o?[o]:s&&u?[{type:u}]:undefined;let h=ue(l.doc,l.mapping.map(r.pos),1,f);if(!f&&!h&&ue(l.doc,l.mapping.map(r.pos),1,u?[{type:u}]:undefined)){if(u)f=[{type:u}];h=true}if(h){l.split(l.mapping.map(r.pos),1,f);if(!s&&!r.parentOffset&&r.parent.type!=u){let t=l.mapping.map(r.before()),e=l.doc.resolve(t);if(u&&r.node(-1).canReplaceWith(e.index(),e.index()+1,u))l.setNodeMarkup(l.mapping.map(r.before()),u)}}i(l.scrollIntoView())}return true}}const Ku=Zu();const Vu=(t,e)=>{let{$from:i,to:r}=t.selection,n;let s=i.sharedDepth(r);if(s==0)return false;n=i.before(s);if(e)e(t.tr.setSelection(je.create(t.doc,n)));return true};const Gu=(t,e)=>{if(e)e(t.tr.setSelection(new Le(t.doc)));return true};function Xu(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s=e.index();if(!r||!n||!r.type.compatibleContent(n.type))return false;if(!r.content.size&&e.parent.canReplace(s-1,s)){if(i)i(t.tr.delete(e.pos-r.nodeSize,e.pos).scrollIntoView());return true}if(!e.parent.canReplace(s,s+1)||!(n.isTextblock||fe(t.doc,e.pos)))return false;if(i)i(t.tr.clearIncompatible(e.pos,r.type,r.contentMatchAt(r.childCount)).join(e.pos).scrollIntoView());return true}function Yu(t,e,i){let r=e.nodeBefore,n=e.nodeAfter,s,l;if(r.type.spec.isolating||n.type.spec.isolating)return false;if(Xu(t,e,i))return true;let u=e.parent.canReplace(e.index(),e.index()+1);if(u&&(s=(l=r.contentMatchAt(r.childCount)).findWrapping(n.type))&&l.matchType(s[0]||n.type).validEnd){if(i){let l=e.pos+n.nodeSize,u=f.empty;for(let t=s.length-1;t>=0;t--)u=f.from(s[t].create(null,u));u=f.from(r.copy(u));let o=t.tr.step(new Ut(e.pos-1,l,e.pos,l,new m(u,1,0),s.length,true));let h=l+2*s.length;if(fe(o.doc,h))o.join(h);i(o.scrollIntoView())}return true}let o=Re.findFrom(e,1);let h=o&&o.$from.blockRange(o.$to),a=h&&Xt(h);if(a!=null&&a>=e.depth){if(i)i(t.tr.lift(h,a).scrollIntoView());return true}if(u&&_u(n,"start",true)&&_u(r,"end")){let s=r,l=[];for(;;){l.push(s);if(s.isTextblock)break;s=s.lastChild}let u=n,o=1;for(;!u.isTextblock;u=u.firstChild)o++;if(s.canReplace(s.childCount,s.childCount,u.content)){if(i){let r=f.empty;for(let t=l.length-1;t>=0;t--)r=f.from(l[t].copy(r));let s=t.tr.step(new Ut(e.pos-l.length,e.pos+n.nodeSize,e.pos+o,e.pos+n.nodeSize-o,new m(r,l.length,0),0,true));i(s.scrollIntoView())}return true}}return false}function Qu(t){return function(e,i){let r=e.selection,n=t<0?r.$from:r.$to;let s=n.depth;while(n.node(s).isInline){if(!s)return false;s--}if(!n.node(s).isTextblock)return false;if(i)i(e.tr.setSelection(Ie.create(e.doc,t<0?n.start(s):n.end(s))));return true}}const to=Qu(-1);const eo=Qu(1);function io(t,e=null){return function(i,r){let{$from:n,$to:s}=i.selection;let l=n.blockRange(s),u=l&&Qt(l,t,e);if(!u)return false;if(r)r(i.tr.wrap(l,u).scrollIntoView());return true}}function ro(t,e=null){return function(i,r){let n=false;for(let r=0;r<i.selection.ranges.length&&!n;r++){let{$from:{pos:s},$to:{pos:l}}=i.selection.ranges[r];i.doc.nodesBetween(s,l,((r,s)=>{if(n)return false;if(!r.isTextblock||r.hasMarkup(t,e))return;if(r.type==t){n=true}else{let e=i.doc.resolve(s),r=e.index();n=e.parent.canReplaceWith(r,r+1,t)}}))}if(!n)return false;if(r){let n=i.tr;for(let r=0;r<i.selection.ranges.length;r++){let{$from:{pos:s},$to:{pos:l}}=i.selection.ranges[r];n.setBlockType(s,l,t,e)}r(n.scrollIntoView())}return true}}function no(t,e,i){for(let r=0;r<e.length;r++){let{$from:n,$to:s}=e[r];let l=n.depth==0?t.inlineContent&&t.type.allowsMarkType(i):false;t.nodesBetween(n.pos,s.pos,(t=>{if(l)return false;l=t.inlineContent&&t.type.allowsMarkType(i)}));if(l)return true}return false}function so(t,e=null){return function(i,r){let{empty:n,$cursor:s,ranges:l}=i.selection;if(n&&!s||!no(i.doc,l,t))return false;if(r){if(s){if(t.isInSet(i.storedMarks||s.marks()))r(i.tr.removeStoredMark(t));else r(i.tr.addStoredMark(t.create(e)))}else{let n=false,s=i.tr;for(let e=0;!n&&e<l.length;e++){let{$from:r,$to:s}=l[e];n=i.doc.rangeHasMark(r.pos,s.pos,t)}for(let i=0;i<l.length;i++){let{$from:r,$to:u}=l[i];if(n){s.removeMark(r.pos,u.pos,t)}else{let i=r.pos,n=u.pos,l=r.nodeAfter,o=u.nodeBefore;let f=l&&l.isText?/^\s*/.exec(l.text)[0].length:0;let h=o&&o.isText?/\s*$/.exec(o.text)[0].length:0;if(i+f<n){i+=f;n-=h}s.addMark(i,n,t.create(e))}}r(s.scrollIntoView())}}return true}}function lo(...t){return function(e,i,r){for(let n=0;n<t.length;n++)if(t[n](e,i,r))return true;return false}}let uo=lo(Su,$u,Bu);let oo=lo(Su,Nu,zu);const fo={Enter:lo(Ju,Uu,Hu,Ku),"Mod-Enter":Wu,Backspace:uo,"Mod-Backspace":uo,"Shift-Backspace":uo,Delete:oo,"Mod-Delete":oo,"Mod-a":Gu};const ho={"Ctrl-h":fo["Backspace"],"Alt-Backspace":fo["Mod-Backspace"],"Ctrl-d":fo["Delete"],"Ctrl-Alt-Backspace":fo["Mod-Delete"],"Alt-Delete":fo["Mod-Delete"],"Alt-d":fo["Mod-Delete"],"Ctrl-a":to,"Ctrl-e":eo};for(let t in fo)ho[t]=fo[t];const ao=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os!="undefined"&&os.platform?os.platform()=="darwin":false;const co=ao?ho:fo;function po(t={}){return new ri({view(e){return new mo(e,t)}})}class mo{constructor(t,e){var i;this.editorView=t;this.cursorPos=null;this.element=null;this.timeout=-1;this.width=(i=e.width)!==null&&i!==void 0?i:1;this.color=e.color===false?undefined:e.color||"black";this.class=e.class;this.handlers=["dragover","dragend","drop","dragleave"].map((e=>{let i=t=>{this[e](t)};t.dom.addEventListener(e,i);return{name:e,handler:i}}))}destroy(){this.handlers.forEach((({name:t,handler:e})=>this.editorView.dom.removeEventListener(t,e)))}update(t,e){if(this.cursorPos!=null&&e.doc!=t.state.doc){if(this.cursorPos>t.state.doc.content.size)this.setCursor(null);else this.updateOverlay()}}setCursor(t){if(t==this.cursorPos)return;this.cursorPos=t;if(t==null){this.element.parentNode.removeChild(this.element);this.element=null}else{this.updateOverlay()}}updateOverlay(){let t=this.editorView.state.doc.resolve(this.cursorPos);let e=!t.parent.inlineContent,i;if(e){let e=t.nodeBefore,r=t.nodeAfter;if(e||r){let t=this.editorView.nodeDOM(this.cursorPos-(e?e.nodeSize:0));if(t){let n=t.getBoundingClientRect();let s=e?n.bottom:n.top;if(e&&r)s=(s+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2;i={left:n.left,right:n.right,top:s-this.width/2,bottom:s+this.width/2}}}}if(!i){let t=this.editorView.coordsAtPos(this.cursorPos);i={left:t.left-this.width/2,right:t.left+this.width/2,top:t.top,bottom:t.bottom}}let r=this.editorView.dom.offsetParent;if(!this.element){this.element=r.appendChild(document.createElement("div"));if(this.class)this.element.className=this.class;this.element.style.cssText="position: absolute; z-index: 50; pointer-events: none;";if(this.color){this.element.style.backgroundColor=this.color}}this.element.classList.toggle("prosemirror-dropcursor-block",e);this.element.classList.toggle("prosemirror-dropcursor-inline",!e);let n,s;if(!r||r==document.body&&getComputedStyle(r).position=="static"){n=-pageXOffset;s=-pageYOffset}else{let t=r.getBoundingClientRect();n=t.left-r.scrollLeft;s=t.top-r.scrollTop}this.element.style.left=i.left-n+"px";this.element.style.top=i.top-s+"px";this.element.style.width=i.right-i.left+"px";this.element.style.height=i.bottom-i.top+"px"}scheduleRemoval(t){clearTimeout(this.timeout);this.timeout=setTimeout((()=>this.setCursor(null)),t)}dragover(t){if(!this.editorView.editable)return;let e=this.editorView.posAtCoords({left:t.clientX,top:t.clientY});let i=e&&e.inside>=0&&this.editorView.state.doc.nodeAt(e.inside);let r=i&&i.type.spec.disableDropCursor;let n=typeof r=="function"?r(this.editorView,e,t):r;if(e&&!n){let t=e.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){let e=pe(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 wo extends Re{constructor(t){super(t,t)}map(t,e){let i=t.resolve(e.map(this.head));return wo.valid(i)?new wo(i):Re.near(i)}content(){return m.empty}eq(t){return t instanceof wo&&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 wo(t.resolve(e.pos))}getBookmark(){return new go(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!bo(t)||!Do(t))return false;let i=e.type.spec.allowGapCursor;if(i!=null)return i;let r=e.contentMatchAt(t.index()).defaultType;return r&&r.isTextblock}static findGapCursorFrom(t,e,i=false){t:for(;;){if(!i&&wo.valid(t))return t;let r=t.pos,n=null;for(let i=t.depth;;i--){let s=t.node(i);if(e>0?t.indexAfter(i)<s.childCount:t.index(i)>0){n=s.child(e>0?t.indexAfter(i):t.index(i)-1);break}else if(i==0){return null}r+=e;let l=t.doc.resolve(r);if(wo.valid(l))return l}for(;;){let s=e>0?n.firstChild:n.lastChild;if(!s){if(n.isAtom&&!n.isText&&!je.isSelectable(n)){t=t.doc.resolve(r+n.nodeSize*e);i=false;continue t}break}n=s;r+=e;let l=t.doc.resolve(r);if(wo.valid(l))return l}return null}}}wo.prototype.visible=false;wo.findFrom=wo.findGapCursorFrom;Re.jsonID("gapcursor",wo);class go{constructor(t){this.pos=t}map(t){return new go(t.map(this.pos))}resolve(t){let e=t.resolve(this.pos);return wo.valid(e)?new wo(e):Re.near(e)}}function bo(t){for(let e=t.depth;e>=0;e--){let i=t.index(e),r=t.node(e);if(i==0){if(r.type.spec.isolating)return true;continue}for(let t=r.child(i-1);;t=t.lastChild){if(t.childCount==0&&!t.inlineContent||t.isAtom||t.type.spec.isolating)return true;if(t.inlineContent)return false}}return true}function Do(t){for(let e=t.depth;e>=0;e--){let i=t.indexAfter(e),r=t.node(e);if(i==r.childCount){if(r.type.spec.isolating)return true;continue}for(let t=r.child(i);;t=t.firstChild){if(t.childCount==0&&!t.inlineContent||t.isAtom||t.type.spec.isolating)return true;if(t.inlineContent)return false}}return true}function ko(){return new ri({props:{decorations:xo,createSelectionBetween(t,e,i){return e.pos==i.pos&&wo.valid(i)?new wo(i):null},handleClick:Fo,handleKeyDown:vo,handleDOMEvents:{beforeinput:Eo}}})}const vo=su({ArrowLeft:yo("horiz",-1),ArrowRight:yo("horiz",1),ArrowUp:yo("vert",-1),ArrowDown:yo("vert",1)});function yo(t,e){const i=t=="vert"?e>0?"down":"up":e>0?"right":"left";return function(t,r,n){let s=t.selection;let l=e>0?s.$to:s.$from,u=s.empty;if(s instanceof Ie){if(!n.endOfTextblock(i)||l.depth==0)return false;u=false;l=t.doc.resolve(e>0?l.after():l.before())}let o=wo.findGapCursorFrom(l,e,u);if(!o)return false;if(r)r(t.tr.setSelection(new wo(o)));return true}}function Fo(t,e,i){if(!t||!t.editable)return false;let r=t.state.doc.resolve(e);if(!wo.valid(r))return false;let n=t.posAtCoords({left:i.clientX,top:i.clientY});if(n&&n.inside>-1&&je.isSelectable(t.state.doc.nodeAt(n.inside)))return false;t.dispatch(t.state.tr.setSelection(new wo(r)));return true}function Eo(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof wo))return false;let{$from:i}=t.state.selection;let r=i.parent.contentMatchAt(i.index()).findWrapping(t.state.schema.nodes.text);if(!r)return false;let n=f.empty;for(let t=r.length-1;t>=0;t--)n=f.from(r[t].createAndFill(null,n));let s=t.state.tr.replace(i.pos,i.pos,new m(n,0,0));s.setSelection(Ie.near(s.doc.resolve(i.pos+1)));t.dispatch(s);return false}function xo(t){if(!(t.selection instanceof wo))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return Ns.create(t.doc,[Bs.widget(t.selection.head,e,{key:"gapcursor"})])}function Mo(){var t=arguments[0];if(typeof t=="string")t=document.createElement(t);var e=1,i=arguments[1];if(i&&typeof i=="object"&&i.nodeType==null&&!Array.isArray(i)){for(var r in i)if(Object.prototype.hasOwnProperty.call(i,r)){var n=i[r];if(typeof n=="string")t.setAttribute(r,n);else if(n!=null)t[r]=n}e++}for(;e<arguments.length;e++)Ao(t,arguments[e]);return t}function Ao(t,e){if(typeof e=="string"){t.appendChild(document.createTextNode(e))}else if(e==null);else if(e.nodeType!=null){t.appendChild(e)}else if(Array.isArray(e)){for(var i=0;i<e.length;i++)Ao(t,e[i])}else{throw new RangeError("Unsupported child node: "+e)}}const Co="http://www.w3.org/2000/svg";const So="http://www.w3.org/1999/xlink";const Oo="ProseMirror-icon";function $o(t){let e=0;for(let i=0;i<t.length;i++)e=(e<<5)-e+t.charCodeAt(i)|0;return e}function _o(t,e){let i=(t.nodeType==9?t:t.ownerDocument)||document;let r=i.createElement("div");r.className=Oo;if(e.path){let{path:n,width:s,height:l}=e;let u="pm-icon-"+$o(n).toString(16);if(!i.getElementById(u))Bo(t,u,e);let o=r.appendChild(i.createElementNS(Co,"svg"));o.style.width=s/l+"em";let f=o.appendChild(i.createElementNS(Co,"use"));f.setAttributeNS(So,"href",/([^#]*)/.exec(i.location.toString())[1]+"#"+u)}else if(e.dom){r.appendChild(e.dom.cloneNode(true))}else{let{text:t,css:n}=e;r.appendChild(i.createElement("span")).textContent=t||"";if(n)r.firstChild.style.cssText=n}return r}function Bo(t,e,i){let[r,n]=t.nodeType==9?[t,t.body]:[t.ownerDocument||document,t];let s=r.getElementById(Oo+"-collection");if(!s){s=r.createElementNS(Co,"svg");s.id=Oo+"-collection";s.style.display="none";n.insertBefore(s,n.firstChild)}let l=r.createElementNS(Co,"symbol");l.id=e;l.setAttribute("viewBox","0 0 "+i.width+" "+i.height);let u=l.appendChild(r.createElementNS(Co,"path"));u.setAttribute("d",i.path);s.appendChild(l)}const qo="ProseMirror-menu";class Ro{constructor(t){this.spec=t}render(t){let e=this.spec;let i=e.render?e.render(t):e.icon?_o(t.root,e.icon):e.label?Mo("div",null,No(t,e.label)):null;if(!i)throw new RangeError("MenuItem without icon or label property");if(e.title){const r=typeof e.title==="function"?e.title(t.state):e.title;i.setAttribute("title",No(t,r))}if(e.class)i.classList.add(e.class);if(e.css)i.style.cssText+=e.css;i.addEventListener("mousedown",(r=>{r.preventDefault();if(!i.classList.contains(qo+"-disabled"))e.run(t.state,t.dispatch,t,r)}));function r(t){if(e.select){let r=e.select(t);i.style.display=r?"":"none";if(!r)return false}let r=true;if(e.enable){r=e.enable(t)||false;tf(i,qo+"-disabled",!r)}if(e.active){let n=r&&e.active(t)||false;tf(i,qo+"-active",n)}return true}return{dom:i,update:r}}}function No(t,e){return t._props.translate?t._props.translate(e):e}let zo={time:0,node:null};function To(t){zo.time=Date.now();zo.node=t.target}function Io(t){return Date.now()-100<zo.time&&zo.node&&t.contains(zo.node)}class Po{constructor(t,e={}){this.options=e;this.options=e||{};this.content=Array.isArray(t)?t:[t]}render(t){let e=jo(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Mo("div",{class:qo+"-dropdown "+(this.options.class||""),style:this.options.css},No(t,this.options.label||""));if(this.options.title)r.setAttribute("title",No(t,this.options.title));let n=Mo("div",{class:qo+"-dropdown-wrap"},r);let s=null;let l=null;let u=()=>{if(s&&s.close()){s=null;i.removeEventListener("mousedown",l)}};r.addEventListener("mousedown",(t=>{t.preventDefault();To(t);if(s){u()}else{s=this.expand(n,e.dom);i.addEventListener("mousedown",l=()=>{if(!Io(n))u()})}}));function o(t){let i=e.update(t);n.style.display=i?"":"none";return i}return{dom:n,update:o}}expand(t,e){let i=Mo("div",{class:qo+"-dropdown-menu "+(this.options.class||"")},e);let r=false;function n(){if(r)return false;r=true;t.removeChild(i);return true}t.appendChild(i);return{close:n,node:i}}}function jo(t,e){let i=[],r=[];for(let n=0;n<t.length;n++){let{dom:s,update:l}=t[n].render(e);i.push(Mo("div",{class:qo+"-dropdown-item"},s));r.push(l)}return{dom:i,update:Jo(r,i)}}function Jo(t,e){return i=>{let r=false;for(let n=0;n<t.length;n++){let s=t[n](i);e[n].style.display=s?"":"none";if(s)r=true}return r}}class Lo{constructor(t,e={}){this.options=e;this.content=Array.isArray(t)?t:[t]}render(t){let e=jo(this.content,t);let i=t.dom.ownerDocument.defaultView||window;let r=Mo("div",{class:qo+"-submenu-label"},No(t,this.options.label||""));let n=Mo("div",{class:qo+"-submenu-wrap"},r,Mo("div",{class:qo+"-submenu"},e.dom));let s=null;r.addEventListener("mousedown",(t=>{t.preventDefault();To(t);tf(n,qo+"-submenu-wrap-active",false);if(!s)i.addEventListener("mousedown",s=()=>{if(!Io(n)){n.classList.remove(qo+"-submenu-wrap-active");i.removeEventListener("mousedown",s);s=null}})}));function l(t){let i=e.update(t);n.style.display=i?"":"none";return i}return{dom:n,update:l}}}function Wo(t,e){let i=document.createDocumentFragment();let r=[],n=[];for(let s=0;s<e.length;s++){let l=e[s],u=[],o=[];for(let e=0;e<l.length;e++){let{dom:r,update:n}=l[e].render(t);let s=Mo("span",{class:qo+"item"},r);i.appendChild(s);o.push(s);u.push(n)}if(u.length){r.push(Jo(u,o));if(s<e.length-1)n.push(i.appendChild(Uo()))}}function s(t){let e=false,i=false;for(let s=0;s<r.length;s++){let l=r[s](t);if(s)n[s-1].style.display=i&&l?"":"none";i=l;if(l)e=true}return e}return{dom:i,update:s}}function Uo(){return Mo("span",{class:qo+"separator"})}const Ho={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 Zo=new Ro({title:"Join with above block",run:Iu,select:t=>Iu(t),icon:Ho.join});const Ko=new Ro({title:"Lift out of enclosing block",run:ju,select:t=>ju(t),icon:Ho.lift});const Vo=new Ro({title:"Select parent node",run:Vu,select:t=>Vu(t),icon:Ho.selectParentNode});let Go=new Ro({title:"Undo last change",run:Au,enable:t=>Au(t),icon:Ho.undo});let Xo=new Ro({title:"Redo last undone change",run:Cu,enable:t=>Cu(t),icon:Ho.redo});function Yo(t,e){let i={run(i,r){return io(t,e.attrs)(i,r)},select(i){return io(t,e.attrs)(i)}};for(let t in e)i[t]=e[t];return new Ro(i)}function Qo(t,e){let i=ro(t,e.attrs);let r={run:i,enable(t){return i(t)},active(i){let{$from:r,to:n,node:s}=i.selection;if(s)return s.hasMarkup(t,e.attrs);return n<=r.end()&&r.parent.hasMarkup(t,e.attrs)}};for(let t in e)r[t]=e[t];return new Ro(r)}function tf(t,e,i){if(i)t.classList.add(e);else t.classList.remove(e)}const ef="ProseMirror-menubar";function rf(){if(typeof navigator=="undefined")return false;let t=navigator.userAgent;return!/Edge\/\d/.test(t)&&/AppleWebKit/.test(t)&&/Mobile\/\w+/.test(t)}function nf(t){return new ri({view(e){return new sf(e,t)}})}class sf{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=Mo("div",{class:ef+"-wrapper"});this.menu=this.wrapper.appendChild(Mo("div",{class:ef}));this.menu.className=ef;if(t.dom.parentNode)t.dom.parentNode.replaceChild(this.wrapper,t.dom);this.wrapper.appendChild(t.dom);let{dom:i,update:r}=Wo(this.editorView,this.options.content);this.contentUpdate=r;this.menu.appendChild(i);this.update();if(e.floating&&!rf()){this.updateFloat();let t=of(this.wrapper);this.scrollHandler=e=>{let i=this.editorView.root;if(!(i.body||i).contains(this.wrapper))t.forEach((t=>t.removeEventListener("scroll",this.scrollHandler)));else this.updateFloat(e.target.getBoundingClientRect?e.target:undefined)};t.forEach((t=>t.addEventListener("scroll",this.scrollHandler)))}}update(){this.contentUpdate(this.editorView.state);if(this.floating){this.updateScrollCursor()}else{if(this.menu.offsetWidth!=this.widthForMaxHeight){this.widthForMaxHeight=this.menu.offsetWidth;this.maxHeight=0}if(this.menu.offsetHeight>this.maxHeight){this.maxHeight=this.menu.offsetHeight;this.menu.style.minHeight=this.maxHeight+"px"}}}updateScrollCursor(){let t=this.editorView.root.getSelection();if(!t.focusNode)return;let e=t.getRangeAt(0).getClientRects();let i=e[lf(t)?0:e.length-1];if(!i)return;let r=this.menu.getBoundingClientRect();if(i.top<r.bottom&&i.bottom>r.top){let t=uf(this.wrapper);if(t)t.scrollTop-=r.bottom-i.top}}updateFloat(t){let e=this.wrapper,i=e.getBoundingClientRect(),r=t?Math.max(0,t.getBoundingClientRect().top):0;if(this.floating){if(i.top>=r||i.bottom<this.menu.offsetHeight+10){this.floating=false;this.menu.style.position=this.menu.style.left=this.menu.style.top=this.menu.style.width="";this.menu.style.display="";this.spacer.parentNode.removeChild(this.spacer);this.spacer=null}else{let n=(e.offsetWidth-e.clientWidth)/2;this.menu.style.left=i.left+n+"px";this.menu.style.display=i.top>(this.editorView.dom.ownerDocument.defaultView||window).innerHeight?"none":"";if(t)this.menu.style.top=r+"px"}}else{if(i.top<r&&i.bottom>=this.menu.offsetHeight+10){this.floating=true;let i=this.menu.getBoundingClientRect();this.menu.style.left=i.left+"px";this.menu.style.width=i.width+"px";if(t)this.menu.style.top=r+"px";this.menu.style.position="fixed";this.spacer=Mo("div",{class:ef+"-spacer",style:`height: ${i.height}px`});e.insertBefore(this.spacer,this.menu)}}}destroy(){if(this.wrapper.parentNode)this.wrapper.parentNode.replaceChild(this.editorView.dom,this.wrapper)}}function lf(t){if(t.anchorNode==t.focusNode)return t.anchorOffset>t.focusOffset;return t.anchorNode.compareDocumentPosition(t.focusNode)==Node.DOCUMENT_POSITION_FOLLOWING}function uf(t){for(let e=t.parentNode;e;e=e.parentNode)if(e.scrollHeight>e.clientHeight)return e}function of(t){let e=[t.ownerDocument.defaultView||window];for(let i=t.parentNode;i;i=i.parentNode)e.push(i);return e}class ff{constructor(t,e,i={}){this.match=t;this.match=t;this.handler=typeof e=="string"?hf(e):e;this.undoable=i.undoable!==false;this.inCode=i.inCode||false}}function hf(t){return function(e,i,r,n){let s=t;if(i[1]){let t=i[0].lastIndexOf(i[1]);s+=i[0].slice(t+i[1].length);r+=t;let e=r-n;if(e>0){s=i[0].slice(t-e,t)+s;r=n}}return e.tr.insertText(s,r,n)}}const af=500;function cf({rules:t}){let e=new ri({state:{init(){return null},apply(t,e){let i=t.getMeta(this);if(i)return i;return t.selectionSet||t.docChanged?null:e}},props:{handleTextInput(i,r,n,s){return df(i,r,n,s,t,e)},handleDOMEvents:{compositionend:i=>{setTimeout((()=>{let{$cursor:r}=i.state.selection;if(r)df(i,r.pos,r.pos,"",t,e)}))}}},isInputRules:true});return e}function df(t,e,i,r,n,s){if(t.composing)return false;let l=t.state,u=l.doc.resolve(e);let o=u.parent.textBetween(Math.max(0,u.parentOffset-af),u.parentOffset,null,"")+r;for(let f=0;f<n.length;f++){let h=n[f];if(u.parent.type.spec.code){if(!h.inCode)continue}else if(h.inCode==="only"){continue}let a=h.match.exec(o);let c=a&&h.handler(l,a,e-(a[0].length-r.length),i);if(!c)continue;if(h.undoable)c.setMeta(s,{transform:c,from:e,to:i,text:r});t.dispatch(c);return true}return false}const pf=(t,e)=>{let i=t.plugins;for(let r=0;r<i.length;r++){let n=i[r],s;if(n.spec.isInputRules&&(s=n.getState(t))){if(e){let i=t.tr,r=s.transform;for(let t=r.steps.length-1;t>=0;t--)i.step(r.steps[t].invert(r.docs[t]));if(s.text){let e=i.doc.resolve(s.from).marks();i.replaceWith(s.from,s.to,t.schema.text(s.text,e))}else{i.delete(s.from,s.to)}e(i)}return true}}return false};const mf=new ff(/--$/,"—");const wf=new ff(/\.\.\.$/,"…");const gf=new ff(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");const bf=new ff(/"$/,"”");const Df=new ff(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");const kf=new ff(/'$/,"’");const vf=[gf,bf,Df,kf];function yf(t,e,i=null,r){return new ff(t,((t,n,s,l)=>{let u=i instanceof Function?i(n):i;let o=t.tr.delete(s,l);let f=o.doc.resolve(s),h=f.blockRange(),a=h&&Qt(h,e,u);if(!a)return null;o.wrap(h,a);let c=o.doc.resolve(s-1).nodeBefore;if(c&&c.type==e&&fe(o.doc,s-1)&&(!r||r(n,c)))o.join(s-1);return o}))}function Ff(t,e,i=null){return new ff(t,((t,r,n,s)=>{let l=t.doc.resolve(n);let u=i instanceof Function?i(r):i;if(!l.node(-1).canReplaceWith(l.index(-1),l.indexAfter(-1),e))return null;return t.tr.delete(n,s).setBlockType(n,n,e,u)}))}const Ef="ProseMirror-prompt";function xf(t){let e=document.body.appendChild(document.createElement("div"));e.className=Ef;let i=t=>{if(!e.contains(t.target))r()};setTimeout((()=>window.addEventListener("mousedown",i)),50);let r=()=>{window.removeEventListener("mousedown",i);if(e.parentNode)e.parentNode.removeChild(e)};let n=[];for(let e in t.fields)n.push(t.fields[e].render());let s=document.createElement("button");s.type="submit";s.className=Ef+"-submit";s.textContent="OK";let l=document.createElement("button");l.type="button";l.className=Ef+"-cancel";l.textContent="Cancel";l.addEventListener("click",r);let u=e.appendChild(document.createElement("form"));if(t.title)u.appendChild(document.createElement("h5")).textContent=t.title;n.forEach((t=>{u.appendChild(document.createElement("div")).appendChild(t)}));let o=u.appendChild(document.createElement("div"));o.className=Ef+"-buttons";o.appendChild(s);o.appendChild(document.createTextNode(" "));o.appendChild(l);let f=e.getBoundingClientRect();e.style.top=(window.innerHeight-f.height)/2+"px";e.style.left=(window.innerWidth-f.width)/2+"px";let h=()=>{let e=Mf(t.fields,n);if(e){r();t.callback(e)}};u.addEventListener("submit",(t=>{t.preventDefault();h()}));u.addEventListener("keydown",(t=>{if(t.keyCode==27){t.preventDefault();r()}else if(t.keyCode==13&&!(t.ctrlKey||t.metaKey||t.shiftKey)){t.preventDefault();h()}else if(t.keyCode==9){window.setTimeout((()=>{if(!e.contains(document.activeElement))r()}),500)}}));let a=u.elements[0];if(a)a.focus()}function Mf(t,e){let i=Object.create(null),r=0;for(let n in t){let s=t[n],l=e[r++];let u=s.read(l),o=s.validate(u);if(o){Af(l,o);return null}i[n]=s.clean(u)}return i}function Af(t,e){let i=t.parentNode;let r=i.appendChild(document.createElement("div"));r.style.left=t.offsetLeft+t.offsetWidth+2+"px";r.style.top=t.offsetTop-5+"px";r.className="ProseMirror-invalid";r.textContent=e;setTimeout((()=>i.removeChild(r)),1500)}class Cf{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 Sf extends Cf{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 Of(t,e){let i=t.selection.$from;for(let t=i.depth;t>=0;t--){let r=i.index(t);if(i.node(t).canReplaceWith(r,r,e))return true}return false}function $f(t){return new Ro({title:"Insert image",label:"Image",enable(e){return Of(e,t)},run(e,i,r){let{from:n,to:s}=e.selection,l=null;if(e.selection instanceof je&&e.selection.node.type==t)l=e.selection.node.attrs;xf({title:"Insert image",fields:{src:new Sf({label:"Location",required:true,value:l&&l.src}),title:new Sf({label:"Title",value:l&&l.title}),alt:new Sf({label:"Description",value:l?l.alt:e.doc.textBetween(n,s," ")})},callback(e){r.dispatch(r.state.tr.replaceSelectionWith(t.createAndFill(e)));r.focus()}})}})}function _f(t,e){let i={label:e.title,run:t};for(let t in e)i[t]=e[t];if(!e.enable&&!e.select)i[e.enable?"enable":"select"]=e=>t(e);return new Ro(i)}function Bf(t,e){let{from:i,$from:r,to:n,empty:s}=t.selection;if(s)return!!e.isInSet(t.storedMarks||r.marks());else return t.doc.rangeHasMark(i,n,e)}function qf(t,e){let i={active(e){return Bf(e,t)}};for(let t in e)i[t]=e[t];return _f(so(t),i)}function Rf(t){return new Ro({title:"Add or remove link",icon:Ho.link,active(e){return Bf(e,t)},enable(t){return!t.selection.empty},run(e,i,r){if(Bf(e,t)){so(t)(e,i);return true}xf({title:"Create a link",fields:{href:new Sf({label:"Link target",required:true}),title:new Sf({label:"Title"})},callback(e){so(t,e)(r.state,r.dispatch);r.focus()}})}})}function Nf(t,e){return _f(Pl(t,e.attrs),e)}function zf(t){let e={};let i;if(i=t.marks.strong)e.toggleStrong=qf(i,{title:"Toggle strong style",icon:Ho.strong});if(i=t.marks.em)e.toggleEm=qf(i,{title:"Toggle emphasis",icon:Ho.em});if(i=t.marks.code)e.toggleCode=qf(i,{title:"Toggle code font",icon:Ho.code});if(i=t.marks.link)e.toggleLink=Rf(i);let r;if(r=t.nodes.image)e.insertImage=$f(r);if(r=t.nodes.bullet_list)e.wrapBulletList=Nf(r,{title:"Wrap in bullet list",icon:Ho.bulletList});if(r=t.nodes.ordered_list)e.wrapOrderedList=Nf(r,{title:"Wrap in ordered list",icon:Ho.orderedList});if(r=t.nodes.blockquote)e.wrapBlockQuote=Yo(r,{title:"Wrap in block quote",icon:Ho.blockquote});if(r=t.nodes.paragraph)e.makeParagraph=Qo(r,{title:"Change to paragraph",label:"Plain"});if(r=t.nodes.code_block)e.makeCodeBlock=Qo(r,{title:"Change to code block",label:"Code"});if(r=t.nodes.heading)for(let t=1;t<=10;t++)e["makeHead"+t]=Qo(r,{title:"Change to heading "+t,label:"Level "+t,attrs:{level:t}});if(r=t.nodes.horizontal_rule){let t=r;e.insertHorizontalRule=new Ro({title:"Insert horizontal rule",label:"Horizontal rule",enable(e){return Of(e,t)},run(e,i){i(e.tr.replaceSelectionWith(t.create()))}})}let n=t=>t.filter((t=>t));e.insertMenu=new Po(n([e.insertImage,e.insertHorizontalRule]),{label:"Insert"});e.typeMenu=new Po(n([e.makeParagraph,e.makeCodeBlock,e.makeHead1&&new Lo(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,Zo,Ko,Vo])];e.fullMenu=e.inlineMenu.concat([[e.insertMenu,e.typeMenu]],[[Go,Xo]],e.blockMenu);return e}const Tf=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):false;function If(t,e){let i={},r;function n(t,r){if(e){let i=e[t];if(i===false)return;if(i)t=i}i[t]=r}n("Mod-z",Au);n("Shift-Mod-z",Cu);n("Backspace",pf);if(!Tf)n("Mod-y",Cu);n("Alt-ArrowUp",Iu);n("Alt-ArrowDown",Pu);n("Mod-BracketLeft",ju);n("Escape",Vu);if(r=t.marks.strong){n("Mod-b",so(r));n("Mod-B",so(r))}if(r=t.marks.em){n("Mod-i",so(r));n("Mod-I",so(r))}if(r=t.marks.code)n("Mod-`",so(r));if(r=t.nodes.bullet_list)n("Shift-Ctrl-8",Pl(r));if(r=t.nodes.ordered_list)n("Shift-Ctrl-9",Pl(r));if(r=t.nodes.blockquote)n("Ctrl->",io(r));if(r=t.nodes.hard_break){let t=r,e=lo(Wu,((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}));n("Mod-Enter",e);n("Shift-Enter",e);if(Tf)n("Ctrl-Enter",e)}if(r=t.nodes.list_item){n("Enter",Jl(r));n("Mod-[",Ll(r));n("Mod-]",Hl(r))}if(r=t.nodes.paragraph)n("Shift-Ctrl-0",ro(r));if(r=t.nodes.code_block)n("Shift-Ctrl-\\",ro(r));if(r=t.nodes.heading)for(let t=1;t<=6;t++)n("Shift-Ctrl-"+t,ro(r,{level:t}));if(r=t.nodes.horizontal_rule){let t=r;n("Mod-_",((e,i)=>{if(i)i(e.tr.replaceSelectionWith(t.create()).scrollIntoView());return true}))}return i}function Pf(t){return yf(/^\s*>\s$/,t)}function jf(t){return yf(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order==+t[1]))}function Jf(t){return yf(/^\s*([-+*])\s$/,t)}function Lf(t){return Ff(/^```$/,t)}function Wf(t,e){return Ff(new RegExp("^(#{1,"+e+"})\\s$"),t,(t=>({level:t[1].length})))}function Uf(t){let e=vf.concat(wf,mf),i;if(i=t.nodes.blockquote)e.push(Pf(i));if(i=t.nodes.ordered_list)e.push(jf(i));if(i=t.nodes.bullet_list)e.push(Jf(i));if(i=t.nodes.code_block)e.push(Lf(i));if(i=t.nodes.heading)e.push(Wf(i,6));return cf({rules:e})}function Hf(t){let e=[Uf(t.schema),nu(If(t.schema,t.mapKeys)),nu(co),po(),ko()];if(t.menuBar!==false)e.push(nf({floating:t.floatingMenu!==false,content:t.menuContent||zf(t.schema).fullMenu}));if(t.history!==false)e.push(Mu());return e.concat(new ri({props:{attributes:{class:"ProseMirror-example-setup-style"}}}))}const Zf={Bold:"strong",Italic:"em",Blockquote:"blockquote",HeaderLevel1:"headerlevel1",HeaderLevel2:"headerlevel2",HeaderLevel3:"headerlevel3",Link:"link",OrderedList:"ordered_list",BulletList:"bullet_list"};const Kf={Heading:"heading",one:1,two:2,three:3};const Vf=(t,e,i)=>{const r=t.marks[e];if(!r){throw new Error(`Mark "${e}" not found in schema`)}if(e===Zf.Link&&i){const t={href:i,target:Gf(i)?"_blank":null};return so(r,t)}return so(r)};const Gf=t=>!t.startsWith(window.location.origin);const Xf=(t,e,i)=>{const r=t.nodes[e];if(!r){throw new Error(`Node type "${e}" not found in schema`)}if(e==="heading"&&i){return ro(r,{level:i})}else{return ro(r)}};const Yf=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`Node type "${e}" not found in schema`)}return io(i)};const Qf=(t,e)=>{const i=t.nodes[e];if(!i){throw new Error(`List type "${e}" not found in schema`)}return Pl(i)};const th={strong:Vf,em:Vf,underline:Vf,headerlevel1:t=>Xf(t,Kf.Heading,Kf.one),headerlevel2:t=>Xf(t,Kf.Heading,Kf.two),headerlevel3:t=>Xf(t,Kf.Heading,Kf.three),blockquote:Yf,ordered_list:Qf,bullet_list:Qf,link:Vf};class eh{constructor(t){this.schema=t}getCommand(t,e){const i=th[t];if(!i){throw new Error(`The Mark "${t}" is not supported`)}return i(this.schema,t,e)}buildKeymap(){return{"Mod-B":this.getCommand(Zf.Bold),"Mod-I":this.getCommand(Zf.Italic),"Mod-Shift-1":this.getCommand(Zf.HeaderLevel1),"Mod-Shift-2":this.getCommand(Zf.HeaderLevel2),"Mod-Shift-3":this.getCommand(Zf.HeaderLevel3)}}}const ih=()=>{const t=/Macintosh|MacIntel|MacPPC|Mac68K/;if(navigator.userAgent.match(t)){return{mod:"⌘",option:"⌥",shift:"⇧"}}return{mod:"Ctrl",option:"Alt",shift:"Shift"}};const{mod:rh,shift:nh}=ih();const sh=[{value:Zf.Bold,text:"Bold",commandText:`${rh} B`,icon:"-lime-text-bold",iconOnly:true},{value:Zf.Italic,text:"Italic",commandText:`${rh} I`,icon:"-lime-text-italic",iconOnly:true},{separator:true},{value:Zf.HeaderLevel1,text:"Header Level 1",commandText:`${rh} ${nh} 1`,icon:"-lime-text-h-heading-1",iconOnly:true},{value:Zf.HeaderLevel2,text:"Header Level 2",commandText:`${rh} ${nh} 2`,icon:"-lime-text-h-heading-2",iconOnly:true},{value:Zf.HeaderLevel3,text:"Header Level 3",commandText:`${rh} ${nh} 3`,icon:"-lime-text-h-heading-3",iconOnly:true},{separator:true},{value:Zf.BulletList,text:"Bullet list",icon:"-lime-text-bulleted-list",iconOnly:true},{value:Zf.OrderedList,text:"Numbered list",icon:"-lime-text-ordered-list",iconOnly:true},{value:Zf.Blockquote,text:"Blockquote",icon:"-lime-text-blockquote",iconOnly:true}];const lh={};function uh(t){let e=lh[t];if(e){return e}e=lh[t]=[];for(let t=0;t<128;t++){const i=String.fromCharCode(t);e.push(i)}for(let i=0;i<t.length;i++){const r=t.charCodeAt(i);e[r]="%"+("0"+r.toString(16).toUpperCase()).slice(-2)}return e}function oh(t,e){if(typeof e!=="string"){e=oh.defaultChars}const i=uh(e);return t.replace(/(%[a-f0-9]{2})+/gi,(function(t){let e="";for(let r=0,n=t.length;r<n;r+=3){const s=parseInt(t.slice(r+1,r+3),16);if(s<128){e+=i[s];continue}if((s&224)===192&&r+3<n){const i=parseInt(t.slice(r+4,r+6),16);if((i&192)===128){const t=s<<6&1984|i&63;if(t<128){e+="��"}else{e+=String.fromCharCode(t)}r+=3;continue}}if((s&240)===224&&r+6<n){const i=parseInt(t.slice(r+4,r+6),16);const n=parseInt(t.slice(r+7,r+9),16);if((i&192)===128&&(n&192)===128){const t=s<<12&61440|i<<6&4032|n&63;if(t<2048||t>=55296&&t<=57343){e+="���"}else{e+=String.fromCharCode(t)}r+=6;continue}}if((s&248)===240&&r+9<n){const i=parseInt(t.slice(r+4,r+6),16);const n=parseInt(t.slice(r+7,r+9),16);const l=parseInt(t.slice(r+10,r+12),16);if((i&192)===128&&(n&192)===128&&(l&192)===128){let t=s<<18&1835008|i<<12&258048|n<<6&4032|l&63;if(t<65536||t>1114111){e+="����"}else{t-=65536;e+=String.fromCharCode(55296+(t>>10),56320+(t&1023))}r+=9;continue}}e+="�"}return e}))}oh.defaultChars=";/?:@&=+$,#";oh.componentChars="";const fh={};function hh(t){let e=fh[t];if(e){return e}e=fh[t]=[];for(let t=0;t<128;t++){const i=String.fromCharCode(t);if(/^[0-9a-z]$/i.test(i)){e.push(i)}else{e.push("%"+("0"+t.toString(16).toUpperCase()).slice(-2))}}for(let i=0;i<t.length;i++){e[t.charCodeAt(i)]=t[i]}return e}function ah(t,e,i){if(typeof e!=="string"){i=e;e=ah.defaultChars}if(typeof i==="undefined"){i=true}const r=hh(e);let n="";for(let e=0,s=t.length;e<s;e++){const l=t.charCodeAt(e);if(i&&l===37&&e+2<s){if(/^[0-9a-f]{2}$/i.test(t.slice(e+1,e+3))){n+=t.slice(e,e+3);e+=2;continue}}if(l<128){n+=r[l];continue}if(l>=55296&&l<=57343){if(l>=55296&&l<=56319&&e+1<s){const i=t.charCodeAt(e+1);if(i>=56320&&i<=57343){n+=encodeURIComponent(t[e]+t[e+1]);e++;continue}}n+="%EF%BF%BD";continue}n+=encodeURIComponent(t[e])}return n}ah.defaultChars=";/?:@&=+$,-_.!~*'()#";ah.componentChars="-_.!~*'()";function ch(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 dh(){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 ph=/^([a-z0-9.+-]+:)/i;const mh=/:[0-9]*$/;const wh=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;const gh=["<",">",'"',"`"," ","\r","\n","\t"];const bh=["{","}","|","\\","^","`"].concat(gh);const Dh=["'"].concat(bh);const kh=["%","/","?",";","#"].concat(Dh);const vh=["/","?","#"];const yh=255;const Fh=/^[+a-z0-9A-Z_-]{0,63}$/;const Eh=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;const xh={javascript:true,"javascript:":true};const Mh={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function Ah(t,e){if(t&&t instanceof dh)return t;const i=new dh;i.parse(t,e);return i}dh.prototype.parse=function(t,e){let i,r,n;let s=t;s=s.trim();if(!e&&t.split("#").length===1){const t=wh.exec(s);if(t){this.pathname=t[1];if(t[2]){this.search=t[2]}return this}}let l=ph.exec(s);if(l){l=l[0];i=l.toLowerCase();this.protocol=l;s=s.substr(l.length)}if(e||l||s.match(/^\/\/[^@\/]+@[^@\/]+/)){n=s.substr(0,2)==="//";if(n&&!(l&&xh[l])){s=s.substr(2);this.slashes=true}}if(!xh[l]&&(n||l&&!Mh[l])){let t=-1;for(let e=0;e<vh.length;e++){r=s.indexOf(vh[e]);if(r!==-1&&(t===-1||r<t)){t=r}}let e,i;if(t===-1){i=s.lastIndexOf("@")}else{i=s.lastIndexOf("@",t)}if(i!==-1){e=s.slice(0,i);s=s.slice(i+1);this.auth=e}t=-1;for(let e=0;e<kh.length;e++){r=s.indexOf(kh[e]);if(r!==-1&&(t===-1||r<t)){t=r}}if(t===-1){t=s.length}if(s[t-1]===":"){t--}const n=s.slice(0,t);s=s.slice(t);this.parseHost(n);this.hostname=this.hostname||"";const l=this.hostname[0]==="["&&this.hostname[this.hostname.length-1]==="]";if(!l){const t=this.hostname.split(/\./);for(let e=0,i=t.length;e<i;e++){const i=t[e];if(!i){continue}if(!i.match(Fh)){let r="";for(let t=0,e=i.length;t<e;t++){if(i.charCodeAt(t)>127){r+="x"}else{r+=i[t]}}if(!r.match(Fh)){const r=t.slice(0,e);const n=t.slice(e+1);const l=i.match(Eh);if(l){r.push(l[1]);n.unshift(l[2])}if(n.length){s=n.join(".")+s}this.hostname=r.join(".");break}}}}if(this.hostname.length>yh){this.hostname=""}if(l){this.hostname=this.hostname.substr(1,this.hostname.length-2)}}const u=s.indexOf("#");if(u!==-1){this.hash=s.substr(u);s=s.slice(0,u)}const o=s.indexOf("?");if(o!==-1){this.search=s.substr(o);s=s.slice(0,o)}if(s){this.pathname=s}if(Mh[i]&&this.hostname&&!this.pathname){this.pathname=""}return this};dh.prototype.parseHost=function(t){let e=mh.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 Ch=Object.freeze({__proto__:null,decode:oh,encode:ah,format:ch,parse:Ah});const Sh=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;const Oh=/[\0-\x1F\x7F-\x9F]/;const $h=/[\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 _h=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\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 Bh=/[\$\+<->\^`\|~\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 qh=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;const Rh=Object.freeze({__proto__:null,Any:Sh,Cc:Oh,Cf:$h,P:_h,S:Bh,Z:qh});function Nh(t){return Object.prototype.toString.call(t)}function zh(t){return Nh(t)==="[object String]"}const Th=Object.prototype.hasOwnProperty;function Ih(t,e){return Th.call(t,e)}function Ph(t){const e=Array.prototype.slice.call(arguments,1);e.forEach((function(e){if(!e){return}if(typeof e!=="object"){throw new TypeError(e+"must be object")}Object.keys(e).forEach((function(i){t[i]=e[i]}))}));return t}function jh(t,e,i){return[].concat(t.slice(0,e),i,t.slice(e+1))}function Jh(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 Lh(t){if(t>65535){t-=65536;const e=55296+(t>>10);const i=56320+(t&1023);return String.fromCharCode(e,i)}return String.fromCharCode(t)}const Wh=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;const Uh=/&([a-z#][a-z0-9]{1,31});/gi;const Hh=new RegExp(Wh.source+"|"+Uh.source,"gi");const Zh=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function Kh(t,e){if(e.charCodeAt(0)===35&&Zh.test(e)){const i=e[1].toLowerCase()==="x"?parseInt(e.slice(2),16):parseInt(e.slice(1),10);if(Jh(i)){return Lh(i)}return t}const i=n(t);if(i!==t){return i}return t}function Vh(t){if(t.indexOf("\\")<0){return t}return t.replace(Wh,"$1")}function Gh(t){if(t.indexOf("\\")<0&&t.indexOf("&")<0){return t}return t.replace(Hh,(function(t,e,i){if(e){return e}return Kh(t,i)}))}const Xh=/[&<>"]/;const Yh=/[&<>"]/g;const Qh={"&":"&","<":"<",">":">",'"':"""};function ta(t){return Qh[t]}function ea(t){if(Xh.test(t)){return t.replace(Yh,ta)}return t}const ia=/[.?*+^$[\]\\(){}|-]/g;function ra(t){return t.replace(ia,"\\$&")}function na(t){switch(t){case 9:case 32:return true}return false}function sa(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 la(t){return _h.test(t)||Bh.test(t)}function ua(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 oa(t){t=t.trim().replace(/\s+/g," ");if("ẞ".toLowerCase()==="Ṿ"){t=t.replace(/ẞ/g,"ß")}return t.toLowerCase().toUpperCase()}const fa={mdurl:Ch,ucmicro:Rh};const ha=Object.freeze({__proto__:null,lib:fa,assign:Ph,isString:zh,has:Ih,unescapeMd:Vh,unescapeAll:Gh,isValidEntityCode:Jh,fromCodePoint:Lh,escapeHtml:ea,arrayReplaceAt:jh,isSpace:na,isWhiteSpace:sa,isMdAsciiPunct:ua,isPunctChar:la,escapeRE:ra,normalizeReference:oa});function aa(t,e,i){let r,n,s,l;const u=t.posMax;const o=t.pos;t.pos=e+1;r=1;while(t.pos<u){s=t.src.charCodeAt(t.pos);if(s===93){r--;if(r===0){n=true;break}}l=t.pos;t.md.inline.skipToken(t);if(s===91){if(l===t.pos-1){r++}else if(i){t.pos=o;return-1}}}let f=-1;if(n){f=t.pos}t.pos=o;return f}function ca(t,e,i){let r;let n=e;const s={ok:false,pos:0,str:""};if(t.charCodeAt(n)===60){n++;while(n<i){r=t.charCodeAt(n);if(r===10){return s}if(r===60){return s}if(r===62){s.pos=n+1;s.str=Gh(t.slice(e+1,n));s.ok=true;return s}if(r===92&&n+1<i){n+=2;continue}n++}return s}let l=0;while(n<i){r=t.charCodeAt(n);if(r===32){break}if(r<32||r===127){break}if(r===92&&n+1<i){if(t.charCodeAt(n+1)===32){break}n+=2;continue}if(r===40){l++;if(l>32){return s}}if(r===41){if(l===0){break}l--}n++}if(e===n){return s}if(l!==0){return s}s.str=Gh(t.slice(e,n));s.pos=n;s.ok=true;return s}function da(t,e,i,r){let n;let s=e;const l={ok:false,can_continue:false,pos:0,str:"",marker:0};if(r){l.str=r.str;l.marker=r.marker}else{if(s>=i){return l}let r=t.charCodeAt(s);if(r!==34&&r!==39&&r!==40){return l}e++;s++;if(r===40){r=41}l.marker=r}while(s<i){n=t.charCodeAt(s);if(n===l.marker){l.pos=s+1;l.str+=Gh(t.slice(e,s));l.ok=true;return l}else if(n===40&&l.marker===41){return l}else if(n===92&&s+1<i){s++}s++}l.can_continue=true;l.str+=Gh(t.slice(e,s));return l}const pa=Object.freeze({__proto__:null,parseLinkLabel:aa,parseLinkDestination:ca,parseLinkTitle:da});const ma={};ma.code_inline=function(t,e,i,r,n){const s=t[e];return"<code"+n.renderAttrs(s)+">"+ea(s.content)+"</code>"};ma.code_block=function(t,e,i,r,n){const s=t[e];return"<pre"+n.renderAttrs(s)+"><code>"+ea(t[e].content)+"</code></pre>\n"};ma.fence=function(t,e,i,r,n){const s=t[e];const l=s.info?Gh(s.info).trim():"";let u="";let o="";if(l){const t=l.split(/(\s+)/g);u=t[0];o=t.slice(2).join("")}let f;if(i.highlight){f=i.highlight(s.content,u,o)||ea(s.content)}else{f=ea(s.content)}if(f.indexOf("<pre")===0){return f+"\n"}if(l){const t=s.attrIndex("class");const e=s.attrs?s.attrs.slice():[];if(t<0){e.push(["class",i.langPrefix+u])}else{e[t]=e[t].slice();e[t][1]+=" "+i.langPrefix+u}const r={attrs:e};return`<pre><code${n.renderAttrs(r)}>${f}</code></pre>\n`}return`<pre><code${n.renderAttrs(s)}>${f}</code></pre>\n`};ma.image=function(t,e,i,r,n){const s=t[e];s.attrs[s.attrIndex("alt")][1]=n.renderInlineAsText(s.children,i,r);return n.renderToken(t,e,i)};ma.hardbreak=function(t,e,i){return i.xhtmlOut?"<br />\n":"<br>\n"};ma.softbreak=function(t,e,i){return i.breaks?i.xhtmlOut?"<br />\n":"<br>\n":"\n"};ma.text=function(t,e){return ea(t[e].content)};ma.html_block=function(t,e){return t[e].content};ma.html_inline=function(t,e){return t[e].content};function wa(){this.rules=Ph({},ma)}wa.prototype.renderAttrs=function t(e){let i,r,n;if(!e.attrs){return""}n="";for(i=0,r=e.attrs.length;i<r;i++){n+=" "+ea(e.attrs[i][0])+'="'+ea(e.attrs[i][1])+'"'}return n};wa.prototype.renderToken=function t(e,i,r){const n=e[i];let s="";if(n.hidden){return""}if(n.block&&n.nesting!==-1&&i&&e[i-1].hidden){s+="\n"}s+=(n.nesting===-1?"</":"<")+n.tag;s+=this.renderAttrs(n);if(n.nesting===0&&r.xhtmlOut){s+=" /"}let l=false;if(n.block){l=true;if(n.nesting===1){if(i+1<e.length){const t=e[i+1];if(t.type==="inline"||t.hidden){l=false}else if(t.nesting===-1&&t.tag===n.tag){l=false}}}}s+=l?">\n":">";return s};wa.prototype.renderInline=function(t,e,i){let r="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(typeof n[l]!=="undefined"){r+=n[l](t,s,e,i,this)}else{r+=this.renderToken(t,s,e)}}return r};wa.prototype.renderInlineAsText=function(t,e,i){let r="";for(let n=0,s=t.length;n<s;n++){switch(t[n].type){case"text":r+=t[n].content;break;case"image":r+=this.renderInlineAsText(t[n].children,e,i);break;case"html_inline":case"html_block":r+=t[n].content;break;case"softbreak":case"hardbreak":r+="\n";break}}return r};wa.prototype.render=function(t,e,i){let r="";const n=this.rules;for(let s=0,l=t.length;s<l;s++){const l=t[s].type;if(l==="inline"){r+=this.renderInline(t[s].children,e,i)}else if(typeof n[l]!=="undefined"){r+=n[l](t,s,e,i,this)}else{r+=this.renderToken(t,s,e,i)}}return r};function ga(){this.__rules__=[];this.__cache__=null}ga.prototype.__find__=function(t){for(let e=0;e<this.__rules__.length;e++){if(this.__rules__[e].name===t){return e}}return-1};ga.prototype.__compile__=function(){const t=this;const e=[""];t.__rules__.forEach((function(t){if(!t.enabled){return}t.alt.forEach((function(t){if(e.indexOf(t)<0){e.push(t)}}))}));t.__cache__={};e.forEach((function(e){t.__cache__[e]=[];t.__rules__.forEach((function(i){if(!i.enabled){return}if(e&&i.alt.indexOf(e)<0){return}t.__cache__[e].push(i.fn)}))}))};ga.prototype.at=function(t,e,i){const r=this.__find__(t);const n=i||{};if(r===-1){throw new Error("Parser rule not found: "+t)}this.__rules__[r].fn=e;this.__rules__[r].alt=n.alt||[];this.__cache__=null};ga.prototype.before=function(t,e,i,r){const n=this.__find__(t);const s=r||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n,0,{name:e,enabled:true,fn:i,alt:s.alt||[]});this.__cache__=null};ga.prototype.after=function(t,e,i,r){const n=this.__find__(t);const s=r||{};if(n===-1){throw new Error("Parser rule not found: "+t)}this.__rules__.splice(n+1,0,{name:e,enabled:true,fn:i,alt:s.alt||[]});this.__cache__=null};ga.prototype.push=function(t,e,i){const r=i||{};this.__rules__.push({name:t,enabled:true,fn:e,alt:r.alt||[]});this.__cache__=null};ga.prototype.enable=function(t,e){if(!Array.isArray(t)){t=[t]}const i=[];t.forEach((function(t){const r=this.__find__(t);if(r<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[r].enabled=true;i.push(t)}),this);this.__cache__=null;return i};ga.prototype.enableOnly=function(t,e){if(!Array.isArray(t)){t=[t]}this.__rules__.forEach((function(t){t.enabled=false}));this.enable(t,e)};ga.prototype.disable=function(t,e){if(!Array.isArray(t)){t=[t]}const i=[];t.forEach((function(t){const r=this.__find__(t);if(r<0){if(e){return}throw new Error("Rules manager: invalid rule name "+t)}this.__rules__[r].enabled=false;i.push(t)}),this);this.__cache__=null;return i};ga.prototype.getRules=function(t){if(this.__cache__===null){this.__compile__()}return this.__cache__[t]||[]};function ba(t,e,i){this.type=t;this.tag=e;this.attrs=null;this.map=null;this.nesting=i;this.level=0;this.children=null;this.content="";this.markup="";this.info="";this.meta=null;this.block=false;this.hidden=false}ba.prototype.attrIndex=function t(e){if(!this.attrs){return-1}const i=this.attrs;for(let t=0,r=i.length;t<r;t++){if(i[t][0]===e){return t}}return-1};ba.prototype.attrPush=function t(e){if(this.attrs){this.attrs.push(e)}else{this.attrs=[e]}};ba.prototype.attrSet=function t(e,i){const r=this.attrIndex(e);const n=[e,i];if(r<0){this.attrPush(n)}else{this.attrs[r]=n}};ba.prototype.attrGet=function t(e){const i=this.attrIndex(e);let r=null;if(i>=0){r=this.attrs[i][1]}return r};ba.prototype.attrJoin=function t(e,i){const r=this.attrIndex(e);if(r<0){this.attrPush([e,i])}else{this.attrs[r][1]=this.attrs[r][1]+" "+i}};function Da(t,e,i){this.src=t;this.env=i;this.tokens=[];this.inlineMode=false;this.md=e}Da.prototype.Token=ba;const ka=/\r\n?|\n/g;const va=/\0/g;function ya(t){let e;e=t.src.replace(ka,"\n");e=e.replace(va,"�");t.src=e}function Fa(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 Ea(t){const e=t.tokens;for(let i=0,r=e.length;i<r;i++){const r=e[i];if(r.type==="inline"){t.md.inline.parse(r.content,t.md,t.env,r.children)}}}function xa(t){return/^<a[>\s]/i.test(t)}function Ma(t){return/^<\/a\s*>/i.test(t)}function Aa(t){const e=t.tokens;if(!t.md.options.linkify){return}for(let i=0,r=e.length;i<r;i++){if(e[i].type!=="inline"||!t.md.linkify.pretest(e[i].content)){continue}let r=e[i].children;let n=0;for(let s=r.length-1;s>=0;s--){const l=r[s];if(l.type==="link_close"){s--;while(r[s].level!==l.level&&r[s].type!=="link_open"){s--}continue}if(l.type==="html_inline"){if(xa(l.content)&&n>0){n--}if(Ma(l.content)){n++}}if(n>0){continue}if(l.type==="text"&&t.md.linkify.test(l.content)){const n=l.content;let u=t.md.linkify.match(n);const o=[];let f=l.level;let h=0;if(u.length>0&&u[0].index===0&&s>0&&r[s-1].type==="text_special"){u=u.slice(1)}for(let e=0;e<u.length;e++){const i=u[e].url;const r=t.md.normalizeLink(i);if(!t.md.validateLink(r)){continue}let s=u[e].text;if(!u[e].schema){s=t.md.normalizeLinkText("http://"+s).replace(/^http:\/\//,"")}else if(u[e].schema==="mailto:"&&!/^mailto:/i.test(s)){s=t.md.normalizeLinkText("mailto:"+s).replace(/^mailto:/,"")}else{s=t.md.normalizeLinkText(s)}const l=u[e].index;if(l>h){const e=new t.Token("text","",0);e.content=n.slice(h,l);e.level=f;o.push(e)}const a=new t.Token("link_open","a",1);a.attrs=[["href",r]];a.level=f++;a.markup="linkify";a.info="auto";o.push(a);const c=new t.Token("text","",0);c.content=s;c.level=f;o.push(c);const d=new t.Token("link_close","a",-1);d.level=--f;d.markup="linkify";d.info="auto";o.push(d);h=u[e].lastIndex}if(h<n.length){const e=new t.Token("text","",0);e.content=n.slice(h);e.level=f;o.push(e)}e[i].children=r=jh(r,s,o)}}}}const Ca=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/;const Sa=/\((c|tm|r)\)/i;const Oa=/\((c|tm|r)\)/gi;const $a={c:"©",r:"®",tm:"™"};function _a(t,e){return $a[e.toLowerCase()]}function Ba(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){r.content=r.content.replace(Oa,_a)}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function qa(t){let e=0;for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.type==="text"&&!e){if(Ca.test(r.content)){r.content=r.content.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---(?=[^-]|$)/gm,"$1—").replace(/(^|\s)--(?=\s|$)/gm,"$1–").replace(/(^|[^-\s])--(?=[^-\s]|$)/gm,"$1–")}}if(r.type==="link_open"&&r.info==="auto"){e--}if(r.type==="link_close"&&r.info==="auto"){e++}}}function Ra(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(Sa.test(t.tokens[e].content)){Ba(t.tokens[e].children)}if(Ca.test(t.tokens[e].content)){qa(t.tokens[e].children)}}}const Na=/['"]/;const za=/['"]/g;const Ta="’";function Ia(t,e,i){return t.slice(0,e)+i+t.slice(e+1)}function Pa(t,e){let i;const r=[];for(let n=0;n<t.length;n++){const s=t[n];const l=t[n].level;for(i=r.length-1;i>=0;i--){if(r[i].level<=l){break}}r.length=i+1;if(s.type!=="text"){continue}let u=s.content;let o=0;let f=u.length;t:while(o<f){za.lastIndex=o;const h=za.exec(u);if(!h){break}let a=true;let c=true;o=h.index+1;const d=h[0]==="'";let p=32;if(h.index-1>=0){p=u.charCodeAt(h.index-1)}else{for(i=n-1;i>=0;i--){if(t[i].type==="softbreak"||t[i].type==="hardbreak")break;if(!t[i].content)continue;p=t[i].content.charCodeAt(t[i].content.length-1);break}}let m=32;if(o<f){m=u.charCodeAt(o)}else{for(i=n+1;i<t.length;i++){if(t[i].type==="softbreak"||t[i].type==="hardbreak")break;if(!t[i].content)continue;m=t[i].content.charCodeAt(0);break}}const w=ua(p)||la(String.fromCharCode(p));const g=ua(m)||la(String.fromCharCode(m));const b=sa(p);const D=sa(m);if(D){a=false}else if(g){if(!(b||w)){a=false}}if(b){c=false}else if(w){if(!(D||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=Ia(s.content,h.index,Ta)}continue}if(c){for(i=r.length-1;i>=0;i--){let a=r[i];if(r[i].level<l){break}if(a.single===d&&r[i].level===l){a=r[i];let l;let c;if(d){l=e.md.options.quotes[2];c=e.md.options.quotes[3]}else{l=e.md.options.quotes[0];c=e.md.options.quotes[1]}s.content=Ia(s.content,h.index,c);t[a.token].content=Ia(t[a.token].content,a.pos,l);o+=c.length-1;if(a.token===n){o+=l.length-1}u=s.content;f=u.length;r.length=i;continue t}}}if(a){r.push({token:n,pos:h.index,single:d,level:l})}else if(c&&d){s.content=Ia(s.content,h.index,Ta)}}}}function ja(t){if(!t.md.options.typographer){return}for(let e=t.tokens.length-1;e>=0;e--){if(t.tokens[e].type!=="inline"||!Na.test(t.tokens[e].content)){continue}Pa(t.tokens[e].children,t)}}function Ja(t){let e,i;const r=t.tokens;const n=r.length;for(let t=0;t<n;t++){if(r[t].type!=="inline")continue;const n=r[t].children;const s=n.length;for(e=0;e<s;e++){if(n[e].type==="text_special"){n[e].type="text"}}for(e=i=0;e<s;e++){if(n[e].type==="text"&&e+1<s&&n[e+1].type==="text"){n[e+1].content=n[e].content+n[e+1].content}else{if(e!==i){n[i]=n[e]}i++}}if(e!==i){n.length=i}}}const La=[["normalize",ya],["block",Fa],["inline",Ea],["linkify",Aa],["replacements",Ra],["smartquotes",ja],["text_join",Ja]];function Wa(){this.ruler=new ga;for(let t=0;t<La.length;t++){this.ruler.push(La[t][0],La[t][1])}}Wa.prototype.process=function(t){const e=this.ruler.getRules("");for(let i=0,r=e.length;i<r;i++){e[i](t)}};Wa.prototype.State=Da;function Ua(t,e,i,r){this.src=t;this.md=e;this.env=i;this.tokens=r;this.bMarks=[];this.eMarks=[];this.tShift=[];this.sCount=[];this.bsCount=[];this.blkIndent=0;this.line=0;this.lineMax=0;this.tight=false;this.ddIndent=-1;this.listIndent=-1;this.parentType="root";this.level=0;const n=this.src;for(let t=0,e=0,i=0,r=0,s=n.length,l=false;e<s;e++){const u=n.charCodeAt(e);if(!l){if(na(u)){i++;if(u===9){r+=4-r%4}else{r++}continue}else{l=true}}if(u===10||e===s-1){if(u!==10){e++}this.bMarks.push(t);this.eMarks.push(e);this.tShift.push(i);this.sCount.push(r);this.bsCount.push(0);l=false;i=0;r=0;t=e+1}}this.bMarks.push(n.length);this.eMarks.push(n.length);this.tShift.push(0);this.sCount.push(0);this.bsCount.push(0);this.lineMax=this.bMarks.length-1}Ua.prototype.push=function(t,e,i){const r=new ba(t,e,i);r.block=true;if(i<0)this.level--;r.level=this.level;if(i>0)this.level++;this.tokens.push(r);return r};Ua.prototype.isEmpty=function t(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]};Ua.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};Ua.prototype.skipSpaces=function t(e){for(let t=this.src.length;e<t;e++){const t=this.src.charCodeAt(e);if(!na(t)){break}}return e};Ua.prototype.skipSpacesBack=function t(e,i){if(e<=i){return e}while(e>i){if(!na(this.src.charCodeAt(--e))){return e+1}}return e};Ua.prototype.skipChars=function t(e,i){for(let t=this.src.length;e<t;e++){if(this.src.charCodeAt(e)!==i){break}}return e};Ua.prototype.skipCharsBack=function t(e,i,r){if(e<=r){return e}while(e>r){if(i!==this.src.charCodeAt(--e)){return e+1}}return e};Ua.prototype.getLines=function t(e,i,r,n){if(e>=i){return""}const s=new Array(i-e);for(let t=0,l=e;l<i;l++,t++){let e=0;const u=this.bMarks[l];let o=u;let f;if(l+1<i||n){f=this.eMarks[l]+1}else{f=this.eMarks[l]}while(o<f&&e<r){const t=this.src.charCodeAt(o);if(na(t)){if(t===9){e+=4-(e+this.bsCount[l])%4}else{e++}}else if(o-u<this.tShift[l]){e++}else{break}o++}if(e>r){s[t]=new Array(e-r+1).join(" ")+this.src.slice(o,f)}else{s[t]=this.src.slice(o,f)}}return s.join("")};Ua.prototype.Token=ba;const Ha=65536;function Za(t,e){const i=t.bMarks[e]+t.tShift[e];const r=t.eMarks[e];return t.src.slice(i,r)}function Ka(t){const e=[];const i=t.length;let r=0;let n=t.charCodeAt(r);let s=false;let l=0;let u="";while(r<i){if(n===124){if(!s){e.push(u+t.substring(l,r));u="";l=r+1}else{u+=t.substring(l,r-1);l=r}}s=n===92;r++;n=t.charCodeAt(r)}e.push(u+t.substring(l));return e}function Va(t,e,i,r){if(e+2>i){return false}let n=e+1;if(t.sCount[n]<t.blkIndent){return false}if(t.sCount[n]-t.blkIndent>=4){return false}let s=t.bMarks[n]+t.tShift[n];if(s>=t.eMarks[n]){return false}const l=t.src.charCodeAt(s++);if(l!==124&&l!==45&&l!==58){return false}if(s>=t.eMarks[n]){return false}const u=t.src.charCodeAt(s++);if(u!==124&&u!==45&&u!==58&&!na(u)){return false}if(l===45&&na(u)){return false}while(s<t.eMarks[n]){const e=t.src.charCodeAt(s);if(e!==124&&e!==45&&e!==58&&!na(e)){return false}s++}let o=Za(t,e+1);let f=o.split("|");const h=[];for(let t=0;t<f.length;t++){const e=f[t].trim();if(!e){if(t===0||t===f.length-1){continue}else{return false}}if(!/^:?-+:?$/.test(e)){return false}if(e.charCodeAt(e.length-1)===58){h.push(e.charCodeAt(0)===58?"center":"right")}else if(e.charCodeAt(0)===58){h.push("left")}else{h.push("")}}o=Za(t,e).trim();if(o.indexOf("|")===-1){return false}if(t.sCount[e]-t.blkIndent>=4){return false}f=Ka(o);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();const a=f.length;if(a===0||a!==h.length){return false}if(r){return true}const c=t.parentType;t.parentType="table";const d=t.md.block.ruler.getRules("blockquote");const p=t.push("table_open","table",1);const m=[e,0];p.map=m;const w=t.push("thead_open","thead",1);w.map=[e,e+1];const g=t.push("tr_open","tr",1);g.map=[e,e+1];for(let e=0;e<f.length;e++){const i=t.push("th_open","th",1);if(h[e]){i.attrs=[["style","text-align:"+h[e]]]}const r=t.push("inline","",0);r.content=f[e].trim();r.children=[];t.push("th_close","th",-1)}t.push("tr_close","tr",-1);t.push("thead_close","thead",-1);let b;let D=0;for(n=e+2;n<i;n++){if(t.sCount[n]<t.blkIndent){break}let r=false;for(let e=0,s=d.length;e<s;e++){if(d[e](t,n,i,true)){r=true;break}}if(r){break}o=Za(t,n).trim();if(!o){break}if(t.sCount[n]-t.blkIndent>=4){break}f=Ka(o);if(f.length&&f[0]==="")f.shift();if(f.length&&f[f.length-1]==="")f.pop();D+=a-f.length;if(D>Ha){break}if(n===e+2){const i=t.push("tbody_open","tbody",1);i.map=b=[e+2,0]}const s=t.push("tr_open","tr",1);s.map=[n,n+1];for(let e=0;e<a;e++){const i=t.push("td_open","td",1);if(h[e]){i.attrs=[["style","text-align:"+h[e]]]}const r=t.push("inline","",0);r.content=f[e]?f[e].trim():"";r.children=[];t.push("td_close","td",-1)}t.push("tr_close","tr",-1)}if(b){t.push("tbody_close","tbody",-1);b[1]=n}t.push("table_close","table",-1);m[1]=n;t.parentType=c;t.line=n;return true}function Ga(t,e,i){if(t.sCount[e]-t.blkIndent<4){return false}let r=e+1;let n=r;while(r<i){if(t.isEmpty(r)){r++;continue}if(t.sCount[r]-t.blkIndent>=4){r++;n=r;continue}break}t.line=n;const s=t.push("code_block","code",0);s.content=t.getLines(e,n,4+t.blkIndent,false)+"\n";s.map=[e,t.line];return true}function Xa(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}if(n+3>s){return false}const l=t.src.charCodeAt(n);if(l!==126&&l!==96){return false}let u=n;n=t.skipChars(n,l);let o=n-u;if(o<3){return false}const f=t.src.slice(u,n);const h=t.src.slice(n,s);if(l===96){if(h.indexOf(String.fromCharCode(l))>=0){return false}}if(r){return true}let a=e;let c=false;for(;;){a++;if(a>=i){break}n=u=t.bMarks[a]+t.tShift[a];s=t.eMarks[a];if(n<s&&t.sCount[a]<t.blkIndent){break}if(t.src.charCodeAt(n)!==l){continue}if(t.sCount[a]-t.blkIndent>=4){continue}n=t.skipChars(n,l);if(n-u<o){continue}n=t.skipSpaces(n);if(n<s){continue}c=true;break}o=t.sCount[e];t.line=a+(c?1:0);const d=t.push("fence","code",0);d.info=h;d.content=t.getLines(e+1,a,o,true);d.markup=f;d.map=[e,t.line];return true}function Ya(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];const l=t.lineMax;if(t.sCount[e]-t.blkIndent>=4){return false}if(t.src.charCodeAt(n)!==62){return false}if(r){return true}const u=[];const o=[];const f=[];const h=[];const a=t.md.block.ruler.getRules("blockquote");const c=t.parentType;t.parentType="blockquote";let d=false;let p;for(p=e;p<i;p++){const e=t.sCount[p]<t.blkIndent;n=t.bMarks[p]+t.tShift[p];s=t.eMarks[p];if(n>=s){break}if(t.src.charCodeAt(n++)===62&&!e){let e=t.sCount[p]+1;let i;let r;if(t.src.charCodeAt(n)===32){n++;e++;r=false;i=true}else if(t.src.charCodeAt(n)===9){i=true;if((t.bsCount[p]+e)%4===3){n++;e++;r=false}else{r=true}}else{i=false}let l=e;u.push(t.bMarks[p]);t.bMarks[p]=n;while(n<s){const e=t.src.charCodeAt(n);if(na(e)){if(e===9){l+=4-(l+t.bsCount[p]+(r?1:0))%4}else{l++}}else{break}n++}d=n>=s;o.push(t.bsCount[p]);t.bsCount[p]=t.sCount[p]+1+(i?1:0);f.push(t.sCount[p]);t.sCount[p]=l-e;h.push(t.tShift[p]);t.tShift[p]=n-t.bMarks[p];continue}if(d){break}let r=false;for(let e=0,n=a.length;e<n;e++){if(a[e](t,p,i,true)){r=true;break}}if(r){t.lineMax=p;if(t.blkIndent!==0){u.push(t.bMarks[p]);o.push(t.bsCount[p]);h.push(t.tShift[p]);f.push(t.sCount[p]);t.sCount[p]-=t.blkIndent}break}u.push(t.bMarks[p]);o.push(t.bsCount[p]);h.push(t.tShift[p]);f.push(t.sCount[p]);t.sCount[p]=-1}const m=t.blkIndent;t.blkIndent=0;const w=t.push("blockquote_open","blockquote",1);w.markup=">";const g=[e,0];w.map=g;t.md.block.tokenize(t,e,p);const b=t.push("blockquote_close","blockquote",-1);b.markup=">";t.lineMax=l;t.parentType=c;g[1]=t.line;for(let i=0;i<h.length;i++){t.bMarks[i+e]=u[i];t.tShift[i+e]=h[i];t.sCount[i+e]=f[i];t.bsCount[i+e]=o[i]}t.blkIndent=m;return true}function Qa(t,e,i,r){const n=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}let s=t.bMarks[e]+t.tShift[e];const l=t.src.charCodeAt(s++);if(l!==42&&l!==45&&l!==95){return false}let u=1;while(s<n){const e=t.src.charCodeAt(s++);if(e!==l&&!na(e)){return false}if(e===l){u++}}if(u<3){return false}if(r){return true}t.line=e+1;const o=t.push("hr","hr",0);o.map=[e,t.line];o.markup=Array(u+1).join(String.fromCharCode(l));return true}function tc(t,e){const i=t.eMarks[e];let r=t.bMarks[e]+t.tShift[e];const n=t.src.charCodeAt(r++);if(n!==42&&n!==45&&n!==43){return-1}if(r<i){const e=t.src.charCodeAt(r);if(!na(e)){return-1}}return r}function ec(t,e){const i=t.bMarks[e]+t.tShift[e];const r=t.eMarks[e];let n=i;if(n+1>=r){return-1}let s=t.src.charCodeAt(n++);if(s<48||s>57){return-1}for(;;){if(n>=r){return-1}s=t.src.charCodeAt(n++);if(s>=48&&s<=57){if(n-i>=10){return-1}continue}if(s===41||s===46){break}return-1}if(n<r){s=t.src.charCodeAt(n);if(!na(s)){return-1}}return n}function ic(t,e){const i=t.level+2;for(let r=e+2,n=t.tokens.length-2;r<n;r++){if(t.tokens[r].level===i&&t.tokens[r].type==="paragraph_open"){t.tokens[r+2].hidden=true;t.tokens[r].hidden=true;r+=2}}}function rc(t,e,i,r){let n,s,l,u;let o=e;let f=true;if(t.sCount[o]-t.blkIndent>=4){return false}if(t.listIndent>=0&&t.sCount[o]-t.listIndent>=4&&t.sCount[o]<t.blkIndent){return false}let h=false;if(r&&t.parentType==="paragraph"){if(t.sCount[o]>=t.blkIndent){h=true}}let a;let c;let d;if((d=ec(t,o))>=0){a=true;l=t.bMarks[o]+t.tShift[o];c=Number(t.src.slice(l,d-1));if(h&&c!==1)return false}else if((d=tc(t,o))>=0){a=false}else{return false}if(h){if(t.skipSpaces(d)>=t.eMarks[o])return false}if(r){return true}const p=t.src.charCodeAt(d-1);const m=t.tokens.length;if(a){u=t.push("ordered_list_open","ol",1);if(c!==1){u.attrs=[["start",c]]}}else{u=t.push("bullet_list_open","ul",1)}const w=[o,0];u.map=w;u.markup=String.fromCharCode(p);let g=false;const b=t.md.block.ruler.getRules("list");const D=t.parentType;t.parentType="list";while(o<i){s=d;n=t.eMarks[o];const e=t.sCount[o]+d-(t.bMarks[o]+t.tShift[o]);let r=e;while(s<n){const e=t.src.charCodeAt(s);if(e===9){r+=4-(r+t.bsCount[o])%4}else if(e===32){r++}else{break}s++}const h=s;let c;if(h>=n){c=1}else{c=r-e}if(c>4){c=1}const m=e+c;u=t.push("list_item_open","li",1);u.markup=String.fromCharCode(p);const w=[o,0];u.map=w;if(a){u.info=t.src.slice(l,d-1)}const D=t.tight;const k=t.tShift[o];const v=t.sCount[o];const y=t.listIndent;t.listIndent=t.blkIndent;t.blkIndent=m;t.tight=true;t.tShift[o]=h-t.bMarks[o];t.sCount[o]=r;if(h>=n&&t.isEmpty(o+1)){t.line=Math.min(t.line+2,i)}else{t.md.block.tokenize(t,o,i,true)}if(!t.tight||g){f=false}g=t.line-o>1&&t.isEmpty(t.line-1);t.blkIndent=t.listIndent;t.listIndent=y;t.tShift[o]=k;t.sCount[o]=v;t.tight=D;u=t.push("list_item_close","li",-1);u.markup=String.fromCharCode(p);o=t.line;w[1]=o;if(o>=i){break}if(t.sCount[o]<t.blkIndent){break}if(t.sCount[o]-t.blkIndent>=4){break}let F=false;for(let e=0,r=b.length;e<r;e++){if(b[e](t,o,i,true)){F=true;break}}if(F){break}if(a){d=ec(t,o);if(d<0){break}l=t.bMarks[o]+t.tShift[o]}else{d=tc(t,o);if(d<0){break}}if(p!==t.src.charCodeAt(d-1)){break}}if(a){u=t.push("ordered_list_close","ol",-1)}else{u=t.push("bullet_list_close","ul",-1)}u.markup=String.fromCharCode(p);w[1]=o;t.line=o;t.parentType=D;if(f){ic(t,m)}return true}function nc(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];let l=e+1;if(t.sCount[e]-t.blkIndent>=4){return false}if(t.src.charCodeAt(n)!==91){return false}function u(e){const i=t.lineMax;if(e>=i||t.isEmpty(e)){return null}let r=false;if(t.sCount[e]-t.blkIndent>3){r=true}if(t.sCount[e]<0){r=true}if(!r){const r=t.md.block.ruler.getRules("reference");const n=t.parentType;t.parentType="reference";let s=false;for(let n=0,l=r.length;n<l;n++){if(r[n](t,e,i,true)){s=true;break}}t.parentType=n;if(s){return null}}const n=t.bMarks[e]+t.tShift[e];const s=t.eMarks[e];return t.src.slice(n,s+1)}let o=t.src.slice(n,s+1);s=o.length;let f=-1;for(n=1;n<s;n++){const t=o.charCodeAt(n);if(t===91){return false}else if(t===93){f=n;break}else if(t===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}else if(t===92){n++;if(n<s&&o.charCodeAt(n)===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}}}if(f<0||o.charCodeAt(f+1)!==58){return false}for(n=f+2;n<s;n++){const t=o.charCodeAt(n);if(t===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}else if(na(t));else{break}}const h=t.md.helpers.parseLinkDestination(o,n,s);if(!h.ok){return false}const a=t.md.normalizeLink(h.str);if(!t.md.validateLink(a)){return false}n=h.pos;const c=n;const d=l;const p=n;for(;n<s;n++){const t=o.charCodeAt(n);if(t===10){const t=u(l);if(t!==null){o+=t;s=o.length;l++}}else if(na(t));else{break}}let m=t.md.helpers.parseLinkTitle(o,n,s);while(m.can_continue){const e=u(l);if(e===null)break;o+=e;n=s;s=o.length;l++;m=t.md.helpers.parseLinkTitle(o,n,s,m)}let w;if(n<s&&p!==n&&m.ok){w=m.str;n=m.pos}else{w="";n=c;l=d}while(n<s){const t=o.charCodeAt(n);if(!na(t)){break}n++}if(n<s&&o.charCodeAt(n)!==10){if(w){w="";n=c;l=d;while(n<s){const t=o.charCodeAt(n);if(!na(t)){break}n++}}}if(n<s&&o.charCodeAt(n)!==10){return false}const g=oa(o.slice(1,f));if(!g){return false}if(r){return true}if(typeof t.env.references==="undefined"){t.env.references={}}if(typeof t.env.references[g]==="undefined"){t.env.references[g]={title:w,href:a}}t.line=l;return true}const sc=["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 lc="[a-zA-Z_:][a-zA-Z0-9:._-]*";const uc="[^\"'=<>`\\x00-\\x20]+";const oc="'[^']*'";const fc='"[^"]*"';const hc="(?:"+uc+"|"+oc+"|"+fc+")";const ac="(?:\\s+"+lc+"(?:\\s*=\\s*"+hc+")?)";const cc="<[A-Za-z][A-Za-z0-9\\-]*"+ac+"*\\s*\\/?>";const dc="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>";const pc="\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e";const mc="<[?][\\s\\S]*?[?]>";const wc="<![A-Za-z][^>]*>";const gc="<!\\[CDATA\\[[\\s\\S]*?\\]\\]>";const bc=new RegExp("^(?:"+cc+"|"+dc+"|"+pc+"|"+mc+"|"+wc+"|"+gc+")");const Dc=new RegExp("^(?:"+cc+"|"+dc+")");const kc=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,true],[/^<!--/,/-->/,true],[/^<\?/,/\?>/,true],[/^<![A-Z]/,/>/,true],[/^<!\[CDATA\[/,/\]\]>/,true],[new RegExp("^</?("+sc.join("|")+")(?=(\\s|/?>|$))","i"),/^$/,true],[new RegExp(Dc.source+"\\s*$"),/^$/,false]];function vc(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}if(!t.md.options.html){return false}if(t.src.charCodeAt(n)!==60){return false}let l=t.src.slice(n,s);let u=0;for(;u<kc.length;u++){if(kc[u][0].test(l)){break}}if(u===kc.length){return false}if(r){return kc[u][2]}let o=e+1;if(!kc[u][1].test(l)){for(;o<i;o++){if(t.sCount[o]<t.blkIndent){break}n=t.bMarks[o]+t.tShift[o];s=t.eMarks[o];l=t.src.slice(n,s);if(kc[u][1].test(l)){if(l.length!==0){o++}break}}}t.line=o;const f=t.push("html_block","",0);f.map=[e,o];f.content=t.getLines(e,o,t.blkIndent,true);return true}function yc(t,e,i,r){let n=t.bMarks[e]+t.tShift[e];let s=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4){return false}let l=t.src.charCodeAt(n);if(l!==35||n>=s){return false}let u=1;l=t.src.charCodeAt(++n);while(l===35&&n<s&&u<=6){u++;l=t.src.charCodeAt(++n)}if(u>6||n<s&&!na(l)){return false}if(r){return true}s=t.skipSpacesBack(s,n);const o=t.skipCharsBack(s,35,n);if(o>n&&na(t.src.charCodeAt(o-1))){s=o}t.line=e+1;const f=t.push("heading_open","h"+String(u),1);f.markup="########".slice(0,u);f.map=[e,t.line];const h=t.push("inline","",0);h.content=t.src.slice(n,s).trim();h.map=[e,t.line];h.children=[];const a=t.push("heading_close","h"+String(u),-1);a.markup="########".slice(0,u);return true}function Fc(t,e,i){const r=t.md.block.ruler.getRules("paragraph");if(t.sCount[e]-t.blkIndent>=4){return false}const n=t.parentType;t.parentType="paragraph";let s=0;let l;let u=e+1;for(;u<i&&!t.isEmpty(u);u++){if(t.sCount[u]-t.blkIndent>3){continue}if(t.sCount[u]>=t.blkIndent){let e=t.bMarks[u]+t.tShift[u];const i=t.eMarks[u];if(e<i){l=t.src.charCodeAt(e);if(l===45||l===61){e=t.skipChars(e,l);e=t.skipSpaces(e);if(e>=i){s=l===61?1:2;break}}}}if(t.sCount[u]<0){continue}let e=false;for(let n=0,s=r.length;n<s;n++){if(r[n](t,u,i,true)){e=true;break}}if(e){break}}if(!s){return false}const o=t.getLines(e,u,t.blkIndent,false).trim();t.line=u+1;const f=t.push("heading_open","h"+String(s),1);f.markup=String.fromCharCode(l);f.map=[e,t.line];const h=t.push("inline","",0);h.content=o;h.map=[e,t.line-1];h.children=[];const a=t.push("heading_close","h"+String(s),-1);a.markup=String.fromCharCode(l);t.parentType=n;return true}function Ec(t,e,i){const r=t.md.block.ruler.getRules("paragraph");const n=t.parentType;let s=e+1;t.parentType="paragraph";for(;s<i&&!t.isEmpty(s);s++){if(t.sCount[s]-t.blkIndent>3){continue}if(t.sCount[s]<0){continue}let e=false;for(let n=0,l=r.length;n<l;n++){if(r[n](t,s,i,true)){e=true;break}}if(e){break}}const l=t.getLines(e,s,t.blkIndent,false).trim();t.line=s;const u=t.push("paragraph_open","p",1);u.map=[e,t.line];const o=t.push("inline","",0);o.content=l;o.map=[e,t.line];o.children=[];t.push("paragraph_close","p",-1);t.parentType=n;return true}const xc=[["table",Va,["paragraph","reference"]],["code",Ga],["fence",Xa,["paragraph","reference","blockquote","list"]],["blockquote",Ya,["paragraph","reference","blockquote","list"]],["hr",Qa,["paragraph","reference","blockquote","list"]],["list",rc,["paragraph","reference","blockquote"]],["reference",nc],["html_block",vc,["paragraph","reference","blockquote"]],["heading",yc,["paragraph","reference","blockquote"]],["lheading",Fc],["paragraph",Ec]];function Mc(){this.ruler=new ga;for(let t=0;t<xc.length;t++){this.ruler.push(xc[t][0],xc[t][1],{alt:(xc[t][2]||[]).slice()})}}Mc.prototype.tokenize=function(t,e,i){const r=this.ruler.getRules("");const n=r.length;const s=t.md.options.maxNesting;let l=e;let u=false;while(l<i){t.line=l=t.skipEmptyLines(l);if(l>=i){break}if(t.sCount[l]<t.blkIndent){break}if(t.level>=s){t.line=i;break}const e=t.line;let o=false;for(let s=0;s<n;s++){o=r[s](t,l,i,false);if(o){if(e>=t.line){throw new Error("block rule didn't increment state.line")}break}}if(!o)throw new Error("none of the block rules matched");t.tight=!u;if(t.isEmpty(t.line-1)){u=true}l=t.line;if(l<i&&t.isEmpty(l)){u=true;l++;t.line=l}}};Mc.prototype.parse=function(t,e,i,r){if(!t){return}const n=new this.State(t,e,i,r);this.tokenize(n,n.line,n.lineMax)};Mc.prototype.State=Ua;function Ac(t,e,i,r){this.src=t;this.env=i;this.md=e;this.tokens=r;this.tokens_meta=Array(r.length);this.pos=0;this.posMax=this.src.length;this.level=0;this.pending="";this.pendingLevel=0;this.cache={};this.delimiters=[];this._prev_delimiters=[];this.backticks={};this.backticksScanned=false;this.linkLevel=0}Ac.prototype.pushPending=function(){const t=new ba("text","",0);t.content=this.pending;t.level=this.pendingLevel;this.tokens.push(t);this.pending="";return t};Ac.prototype.push=function(t,e,i){if(this.pending){this.pushPending()}const r=new ba(t,e,i);let n=null;if(i<0){this.level--;this.delimiters=this._prev_delimiters.pop()}r.level=this.level;if(i>0){this.level++;this._prev_delimiters.push(this.delimiters);this.delimiters=[];n={delimiters:this.delimiters}}this.pendingLevel=this.level;this.tokens.push(r);this.tokens_meta.push(n);return r};Ac.prototype.scanDelims=function(t,e){const i=this.posMax;const r=this.src.charCodeAt(t);const n=t>0?this.src.charCodeAt(t-1):32;let s=t;while(s<i&&this.src.charCodeAt(s)===r){s++}const l=s-t;const u=s<i?this.src.charCodeAt(s):32;const o=ua(n)||la(String.fromCharCode(n));const f=ua(u)||la(String.fromCharCode(u));const h=sa(n);const a=sa(u);const c=!a&&(!f||h||o);const d=!h&&(!o||a||f);const p=c&&(e||!d||o);const m=d&&(e||!c||f);return{can_open:p,can_close:m,length:l}};Ac.prototype.Token=ba;function Cc(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 Sc(t,e){let i=t.pos;while(i<t.posMax&&!Cc(t.src.charCodeAt(i))){i++}if(i===t.pos){return false}if(!e){t.pending+=t.src.slice(t.pos,i)}t.pos=i;return true}const Oc=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function $c(t,e){if(!t.md.options.linkify)return false;if(t.linkLevel>0)return false;const i=t.pos;const r=t.posMax;if(i+3>r)return false;if(t.src.charCodeAt(i)!==58)return false;if(t.src.charCodeAt(i+1)!==47)return false;if(t.src.charCodeAt(i+2)!==47)return false;const n=t.pending.match(Oc);if(!n)return false;const s=n[1];const l=t.md.linkify.matchAtStart(t.src.slice(i-s.length));if(!l)return false;let u=l.url;if(u.length<=s.length)return false;u=u.replace(/\*+$/,"");const o=t.md.normalizeLink(u);if(!t.md.validateLink(o))return false;if(!e){t.pending=t.pending.slice(0,-s.length);const e=t.push("link_open","a",1);e.attrs=[["href",o]];e.markup="linkify";e.info="auto";const i=t.push("text","",0);i.content=t.md.normalizeLinkText(u);const r=t.push("link_close","a",-1);r.markup="linkify";r.info="auto"}t.pos+=u.length-s.length;return true}function _c(t,e){let i=t.pos;if(t.src.charCodeAt(i)!==10){return false}const r=t.pending.length-1;const n=t.posMax;if(!e){if(r>=0&&t.pending.charCodeAt(r)===32){if(r>=1&&t.pending.charCodeAt(r-1)===32){let e=r-1;while(e>=1&&t.pending.charCodeAt(e-1)===32)e--;t.pending=t.pending.slice(0,e);t.push("hardbreak","br",0)}else{t.pending=t.pending.slice(0,-1);t.push("softbreak","br",0)}}else{t.push("softbreak","br",0)}}i++;while(i<n&&na(t.src.charCodeAt(i))){i++}t.pos=i;return true}const Bc=[];for(let t=0;t<256;t++){Bc.push(0)}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(t){Bc[t.charCodeAt(0)]=1}));function qc(t,e){let i=t.pos;const r=t.posMax;if(t.src.charCodeAt(i)!==92)return false;i++;if(i>=r)return false;let n=t.src.charCodeAt(i);if(n===10){if(!e){t.push("hardbreak","br",0)}i++;while(i<r){n=t.src.charCodeAt(i);if(!na(n))break;i++}t.pos=i;return true}let s=t.src[i];if(n>=55296&&n<=56319&&i+1<r){const e=t.src.charCodeAt(i+1);if(e>=56320&&e<=57343){s+=t.src[i+1];i++}}const l="\\"+s;if(!e){const e=t.push("text_special","",0);if(n<256&&Bc[n]!==0){e.content=s}else{e.content=l}e.markup=l;e.info="escape"}t.pos=i+1;return true}function Rc(t,e){let i=t.pos;const r=t.src.charCodeAt(i);if(r!==96){return false}const n=i;i++;const s=t.posMax;while(i<s&&t.src.charCodeAt(i)===96){i++}const l=t.src.slice(n,i);const u=l.length;if(t.backticksScanned&&(t.backticks[u]||0)<=n){if(!e)t.pending+=l;t.pos+=u;return true}let o=i;let f;while((f=t.src.indexOf("`",o))!==-1){o=f+1;while(o<s&&t.src.charCodeAt(o)===96){o++}const r=o-f;if(r===u){if(!e){const e=t.push("code_inline","code",0);e.markup=l;e.content=t.src.slice(i,f).replace(/\n/g," ").replace(/^ (.+) $/,"$1")}t.pos=o;return true}t.backticks[r]=f}t.backticksScanned=true;if(!e)t.pending+=l;t.pos+=u;return true}function Nc(t,e){const i=t.pos;const r=t.src.charCodeAt(i);if(e){return false}if(r!==126){return false}const n=t.scanDelims(t.pos,true);let s=n.length;const l=String.fromCharCode(r);if(s<2){return false}let u;if(s%2){u=t.push("text","",0);u.content=l;s--}for(let e=0;e<s;e+=2){u=t.push("text","",0);u.content=l+l;t.delimiters.push({marker:r,length:0,token:t.tokens.length-1,end:-1,open:n.can_open,close:n.can_close})}t.pos+=n.length;return true}function zc(t,e){let i;const r=[];const n=e.length;for(let s=0;s<n;s++){const n=e[s];if(n.marker!==126){continue}if(n.end===-1){continue}const l=e[n.end];i=t.tokens[n.token];i.type="s_open";i.tag="s";i.nesting=1;i.markup="~~";i.content="";i=t.tokens[l.token];i.type="s_close";i.tag="s";i.nesting=-1;i.markup="~~";i.content="";if(t.tokens[l.token-1].type==="text"&&t.tokens[l.token-1].content==="~"){r.push(l.token-1)}}while(r.length){const e=r.pop();let n=e+1;while(n<t.tokens.length&&t.tokens[n].type==="s_close"){n++}n--;if(e!==n){i=t.tokens[n];t.tokens[n]=t.tokens[e];t.tokens[e]=i}}}function Tc(t){const e=t.tokens_meta;const i=t.tokens_meta.length;zc(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){zc(t,e[r].delimiters)}}}const Ic={tokenize:Nc,postProcess:Tc};function Pc(t,e){const i=t.pos;const r=t.src.charCodeAt(i);if(e){return false}if(r!==95&&r!==42){return false}const n=t.scanDelims(t.pos,r===42);for(let e=0;e<n.length;e++){const e=t.push("text","",0);e.content=String.fromCharCode(r);t.delimiters.push({marker:r,length:n.length,token:t.tokens.length-1,end:-1,open:n.can_open,close:n.can_close})}t.pos+=n.length;return true}function jc(t,e){const i=e.length;for(let r=i-1;r>=0;r--){const i=e[r];if(i.marker!==95&&i.marker!==42){continue}if(i.end===-1){continue}const n=e[i.end];const s=r>0&&e[r-1].end===i.end+1&&e[r-1].marker===i.marker&&e[r-1].token===i.token-1&&e[i.end+1].token===n.token+1;const l=String.fromCharCode(i.marker);const u=t.tokens[i.token];u.type=s?"strong_open":"em_open";u.tag=s?"strong":"em";u.nesting=1;u.markup=s?l+l:l;u.content="";const o=t.tokens[n.token];o.type=s?"strong_close":"em_close";o.tag=s?"strong":"em";o.nesting=-1;o.markup=s?l+l:l;o.content="";if(s){t.tokens[e[r-1].token].content="";t.tokens[e[i.end+1].token].content="";r--}}}function Jc(t){const e=t.tokens_meta;const i=t.tokens_meta.length;jc(t,t.delimiters);for(let r=0;r<i;r++){if(e[r]&&e[r].delimiters){jc(t,e[r].delimiters)}}}const Lc={tokenize:Pc,postProcess:Jc};function Wc(t,e){let i,r,n,s;let l="";let u="";let o=t.pos;let f=true;if(t.src.charCodeAt(t.pos)!==91){return false}const h=t.pos;const a=t.posMax;const c=t.pos+1;const d=t.md.helpers.parseLinkLabel(t,t.pos,true);if(d<0){return false}let p=d+1;if(p<a&&t.src.charCodeAt(p)===40){f=false;p++;for(;p<a;p++){i=t.src.charCodeAt(p);if(!na(i)&&i!==10){break}}if(p>=a){return false}o=p;n=t.md.helpers.parseLinkDestination(t.src,p,t.posMax);if(n.ok){l=t.md.normalizeLink(n.str);if(t.md.validateLink(l)){p=n.pos}else{l=""}o=p;for(;p<a;p++){i=t.src.charCodeAt(p);if(!na(i)&&i!==10){break}}n=t.md.helpers.parseLinkTitle(t.src,p,t.posMax);if(p<a&&o!==p&&n.ok){u=n.str;p=n.pos;for(;p<a;p++){i=t.src.charCodeAt(p);if(!na(i)&&i!==10){break}}}}if(p>=a||t.src.charCodeAt(p)!==41){f=true}p++}if(f){if(typeof t.env.references==="undefined"){return false}if(p<a&&t.src.charCodeAt(p)===91){o=p+1;p=t.md.helpers.parseLinkLabel(t,p);if(p>=0){r=t.src.slice(o,p++)}else{p=d+1}}else{p=d+1}if(!r){r=t.src.slice(c,d)}s=t.env.references[oa(r)];if(!s){t.pos=h;return false}l=s.href;u=s.title}if(!e){t.pos=c;t.posMax=d;const e=t.push("link_open","a",1);const i=[["href",l]];e.attrs=i;if(u){i.push(["title",u])}t.linkLevel++;t.md.inline.tokenize(t);t.linkLevel--;t.push("link_close","a",-1)}t.pos=p;t.posMax=a;return true}function Uc(t,e){let i,r,n,s,l,u,o,f;let h="";const a=t.pos;const c=t.posMax;if(t.src.charCodeAt(t.pos)!==33){return false}if(t.src.charCodeAt(t.pos+1)!==91){return false}const d=t.pos+2;const p=t.md.helpers.parseLinkLabel(t,t.pos+1,false);if(p<0){return false}s=p+1;if(s<c&&t.src.charCodeAt(s)===40){s++;for(;s<c;s++){i=t.src.charCodeAt(s);if(!na(i)&&i!==10){break}}if(s>=c){return false}f=s;u=t.md.helpers.parseLinkDestination(t.src,s,t.posMax);if(u.ok){h=t.md.normalizeLink(u.str);if(t.md.validateLink(h)){s=u.pos}else{h=""}}f=s;for(;s<c;s++){i=t.src.charCodeAt(s);if(!na(i)&&i!==10){break}}u=t.md.helpers.parseLinkTitle(t.src,s,t.posMax);if(s<c&&f!==s&&u.ok){o=u.str;s=u.pos;for(;s<c;s++){i=t.src.charCodeAt(s);if(!na(i)&&i!==10){break}}}else{o=""}if(s>=c||t.src.charCodeAt(s)!==41){t.pos=a;return false}s++}else{if(typeof t.env.references==="undefined"){return false}if(s<c&&t.src.charCodeAt(s)===91){f=s+1;s=t.md.helpers.parseLinkLabel(t,s);if(s>=0){n=t.src.slice(f,s++)}else{s=p+1}}else{s=p+1}if(!n){n=t.src.slice(d,p)}l=t.env.references[oa(n)];if(!l){t.pos=a;return false}h=l.href;o=l.title}if(!e){r=t.src.slice(d,p);const e=[];t.md.inline.parse(r,t.md,t.env,e);const i=t.push("image","img",0);const n=[["src",h],["alt",""]];i.attrs=n;i.children=e;i.content=r;if(o){n.push(["title",o])}}t.pos=s;t.posMax=c;return true}const Hc=/^([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 Zc=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function Kc(t,e){let i=t.pos;if(t.src.charCodeAt(i)!==60){return false}const r=t.pos;const n=t.posMax;for(;;){if(++i>=n)return false;const e=t.src.charCodeAt(i);if(e===60)return false;if(e===62)break}const s=t.src.slice(r+1,i);if(Zc.test(s)){const i=t.md.normalizeLink(s);if(!t.md.validateLink(i)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",i]];e.markup="autolink";e.info="auto";const r=t.push("text","",0);r.content=t.md.normalizeLinkText(s);const n=t.push("link_close","a",-1);n.markup="autolink";n.info="auto"}t.pos+=s.length+2;return true}if(Hc.test(s)){const i=t.md.normalizeLink("mailto:"+s);if(!t.md.validateLink(i)){return false}if(!e){const e=t.push("link_open","a",1);e.attrs=[["href",i]];e.markup="autolink";e.info="auto";const r=t.push("text","",0);r.content=t.md.normalizeLinkText(s);const n=t.push("link_close","a",-1);n.markup="autolink";n.info="auto"}t.pos+=s.length+2;return true}return false}function Vc(t){return/^<a[>\s]/i.test(t)}function Gc(t){return/^<\/a\s*>/i.test(t)}function Xc(t){const e=t|32;return e>=97&&e<=122}function Yc(t,e){if(!t.md.options.html){return false}const i=t.posMax;const r=t.pos;if(t.src.charCodeAt(r)!==60||r+2>=i){return false}const n=t.src.charCodeAt(r+1);if(n!==33&&n!==63&&n!==47&&!Xc(n)){return false}const s=t.src.slice(r).match(bc);if(!s){return false}if(!e){const e=t.push("html_inline","",0);e.content=s[0];if(Vc(e.content))t.linkLevel++;if(Gc(e.content))t.linkLevel--}t.pos+=s[0].length;return true}const Qc=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i;const td=/^&([a-z][a-z0-9]{1,31});/i;function ed(t,e){const i=t.pos;const r=t.posMax;if(t.src.charCodeAt(i)!==38)return false;if(i+1>=r)return false;const s=t.src.charCodeAt(i+1);if(s===35){const r=t.src.slice(i).match(Qc);if(r){if(!e){const e=r[1][0].toLowerCase()==="x"?parseInt(r[1].slice(1),16):parseInt(r[1],10);const i=t.push("text_special","",0);i.content=Jh(e)?Lh(e):Lh(65533);i.markup=r[0];i.info="entity"}t.pos+=r[0].length;return true}}else{const r=t.src.slice(i).match(td);if(r){const i=n(r[0]);if(i!==r[0]){if(!e){const e=t.push("text_special","",0);e.content=i;e.markup=r[0];e.info="entity"}t.pos+=r[0].length;return true}}}return false}function id(t){const e={};const i=t.length;if(!i)return;let r=0;let n=-2;const s=[];for(let l=0;l<i;l++){const i=t[l];s.push(0);if(t[r].marker!==i.marker||n!==i.token-1){r=l}n=i.token;i.length=i.length||0;if(!i.close)continue;if(!e.hasOwnProperty(i.marker)){e[i.marker]=[-1,-1,-1,-1,-1,-1]}const u=e[i.marker][(i.open?3:0)+i.length%3];let o=r-s[r]-1;let f=o;for(;o>u;o-=s[o]+1){const e=t[o];if(e.marker!==i.marker)continue;if(e.open&&e.end<0){let r=false;if(e.close||i.open){if((e.length+i.length)%3===0){if(e.length%3!==0||i.length%3!==0){r=true}}}if(!r){const r=o>0&&!t[o-1].open?s[o-1]+1:0;s[l]=l-o+r;s[o]=r;i.open=false;e.end=l;e.close=false;f=-1;n=-2;break}}}if(f!==-1){e[i.marker][(i.open?3:0)+(i.length||0)%3]=f}}}function rd(t){const e=t.tokens_meta;const i=t.tokens_meta.length;id(t.delimiters);for(let t=0;t<i;t++){if(e[t]&&e[t].delimiters){id(e[t].delimiters)}}}function nd(t){let e,i;let r=0;const n=t.tokens;const s=t.tokens.length;for(e=i=0;e<s;e++){if(n[e].nesting<0)r--;n[e].level=r;if(n[e].nesting>0)r++;if(n[e].type==="text"&&e+1<s&&n[e+1].type==="text"){n[e+1].content=n[e].content+n[e+1].content}else{if(e!==i){n[i]=n[e]}i++}}if(e!==i){n.length=i}}const sd=[["text",Sc],["linkify",$c],["newline",_c],["escape",qc],["backticks",Rc],["strikethrough",Ic.tokenize],["emphasis",Lc.tokenize],["link",Wc],["image",Uc],["autolink",Kc],["html_inline",Yc],["entity",ed]];const ld=[["balance_pairs",rd],["strikethrough",Ic.postProcess],["emphasis",Lc.postProcess],["fragments_join",nd]];function ud(){this.ruler=new ga;for(let t=0;t<sd.length;t++){this.ruler.push(sd[t][0],sd[t][1])}this.ruler2=new ga;for(let t=0;t<ld.length;t++){this.ruler2.push(ld[t][0],ld[t][1])}}ud.prototype.skipToken=function(t){const e=t.pos;const i=this.ruler.getRules("");const r=i.length;const n=t.md.options.maxNesting;const s=t.cache;if(typeof s[e]!=="undefined"){t.pos=s[e];return}let l=false;if(t.level<n){for(let n=0;n<r;n++){t.level++;l=i[n](t,true);t.level--;if(l){if(e>=t.pos){throw new Error("inline rule didn't increment state.pos")}break}}}else{t.pos=t.posMax}if(!l){t.pos++}s[e]=t.pos};ud.prototype.tokenize=function(t){const e=this.ruler.getRules("");const i=e.length;const r=t.posMax;const n=t.md.options.maxNesting;while(t.pos<r){const s=t.pos;let l=false;if(t.level<n){for(let r=0;r<i;r++){l=e[r](t,false);if(l){if(s>=t.pos){throw new Error("inline rule didn't increment state.pos")}break}}}if(l){if(t.pos>=r){break}continue}t.pending+=t.src[t.pos++]}if(t.pending){t.pushPending()}};ud.prototype.parse=function(t,e,i,r){const n=new this.State(t,e,i,r);this.tokenize(n);const s=this.ruler2.getRules("");const l=s.length;for(let t=0;t<l;t++){s[t](n)}};ud.prototype.State=Ac;function od(t){const e={};t=t||{};e.src_Any=Sh.source;e.src_Cc=Oh.source;e.src_Z=qh.source;e.src_P=_h.source;e.src_ZPCc=[e.src_Z,e.src_P,e.src_Cc].join("|");e.src_ZCc=[e.src_Z,e.src_Cc].join("|");const i="[><|]";e.src_pseudo_letter="(?:(?!"+i+"|"+e.src_ZPCc+")"+e.src_Any+")";e.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)";e.src_auth="(?:(?:(?!"+e.src_ZCc+"|[@/\\[\\]()]).)+@)?";e.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?";e.src_host_terminator="(?=$|"+i+"|"+e.src_ZPCc+")"+"(?!"+(t["---"]?"-(?!--)|":"-|")+"_|:\\d|\\.-|\\.(?!$|"+e.src_ZPCc+"))";e.src_path="(?:"+"[/?#]"+"(?:"+"(?!"+e.src_ZCc+"|"+i+"|[()[\\]{}.,\"'?!\\-;]).|"+"\\[(?:(?!"+e.src_ZCc+"|\\]).)*\\]|"+"\\((?:(?!"+e.src_ZCc+"|[)]).)*\\)|"+"\\{(?:(?!"+e.src_ZCc+"|[}]).)*\\}|"+'\\"(?:(?!'+e.src_ZCc+'|["]).)+\\"|'+"\\'(?:(?!"+e.src_ZCc+"|[']).)+\\'|"+"\\'(?="+e.src_pseudo_letter+"|[-])|"+"\\.{2,}[a-zA-Z0-9%/&]|"+"\\.(?!"+e.src_ZCc+"|[.]|$)|"+(t["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+",(?!"+e.src_ZCc+"|$)|"+";(?!"+e.src_ZCc+"|$)|"+"\\!+(?!"+e.src_ZCc+"|[!]|$)|"+"\\?(?!"+e.src_ZCc+"|[?]|$)"+")+"+"|\\/"+")?";e.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*';e.src_xn="xn--[a-z0-9\\-]{1,59}";e.src_domain_root="(?:"+e.src_xn+"|"+e.src_pseudo_letter+"{1,63}"+")";e.src_domain="(?:"+e.src_xn+"|"+"(?:"+e.src_pseudo_letter+")"+"|"+"(?:"+e.src_pseudo_letter+"(?:-|"+e.src_pseudo_letter+"){0,61}"+e.src_pseudo_letter+")"+")";e.src_host="(?:"+"(?:(?:(?:"+e.src_domain+")\\.)*"+e.src_domain+")"+")";e.tpl_host_fuzzy="(?:"+e.src_ip4+"|"+"(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%))"+")";e.tpl_host_no_ip_fuzzy="(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%))";e.src_host_strict=e.src_host+e.src_host_terminator;e.tpl_host_fuzzy_strict=e.tpl_host_fuzzy+e.src_host_terminator;e.src_host_port_strict=e.src_host+e.src_port+e.src_host_terminator;e.tpl_host_port_fuzzy_strict=e.tpl_host_fuzzy+e.src_port+e.src_host_terminator;e.tpl_host_port_no_ip_fuzzy_strict=e.tpl_host_no_ip_fuzzy+e.src_port+e.src_host_terminator;e.tpl_host_fuzzy_test="localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:"+e.src_ZPCc+"|>|$))";e.tpl_email_fuzzy="(^|"+i+'|"|\\(|'+e.src_ZCc+")"+"("+e.src_email_name+"@"+e.tpl_host_fuzzy_strict+")";e.tpl_link_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))"+"((?![$+<=>^`||])"+e.tpl_host_port_fuzzy_strict+e.src_path+")";e.tpl_link_no_ip_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))"+"((?![$+<=>^`||])"+e.tpl_host_port_no_ip_fuzzy_strict+e.src_path+")";return e}function fd(t){const e=Array.prototype.slice.call(arguments,1);e.forEach((function(e){if(!e){return}Object.keys(e).forEach((function(i){t[i]=e[i]}))}));return t}function hd(t){return Object.prototype.toString.call(t)}function ad(t){return hd(t)==="[object String]"}function cd(t){return hd(t)==="[object Object]"}function dd(t){return hd(t)==="[object RegExp]"}function pd(t){return hd(t)==="[object Function]"}function md(t){return t.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}const wd={fuzzyLink:true,fuzzyEmail:true,fuzzyIP:false};function gd(t){return Object.keys(t||{}).reduce((function(t,e){return t||wd.hasOwnProperty(e)}),false)}const bd={"http:":{validate:function(t,e,i){const r=t.slice(e);if(!i.re.http){i.re.http=new RegExp("^\\/\\/"+i.re.src_auth+i.re.src_host_port_strict+i.re.src_path,"i")}if(i.re.http.test(r)){return r.match(i.re.http)[0].length}return 0}},"https:":"http:","ftp:":"http:","//":{validate:function(t,e,i){const r=t.slice(e);if(!i.re.no_http){i.re.no_http=new RegExp("^"+i.re.src_auth+"(?:localhost|(?:(?:"+i.re.src_domain+")\\.)+"+i.re.src_domain_root+")"+i.re.src_port+i.re.src_host_terminator+i.re.src_path,"i")}if(i.re.no_http.test(r)){if(e>=3&&t[e-3]===":"){return 0}if(e>=3&&t[e-3]==="/"){return 0}return r.match(i.re.no_http)[0].length}return 0}},"mailto:":{validate:function(t,e,i){const r=t.slice(e);if(!i.re.mailto){i.re.mailto=new RegExp("^"+i.re.src_email_name+"@"+i.re.src_host_strict,"i")}if(i.re.mailto.test(r)){return r.match(i.re.mailto)[0].length}return 0}}};const Dd="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 kd="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function vd(t){t.__index__=-1;t.__text_cache__=""}function yd(t){return function(e,i){const r=e.slice(i);if(t.test(r)){return r.match(t)[0].length}return 0}}function Fd(){return function(t,e){e.normalize(t)}}function Ed(t){const e=t.re=od(t.__opts__);const i=t.__tlds__.slice();t.onCompile();if(!t.__tlds_replaced__){i.push(Dd)}i.push(e.src_xn);e.src_tlds=i.join("|");function r(t){return t.replace("%TLDS%",e.src_tlds)}e.email_fuzzy=RegExp(r(e.tpl_email_fuzzy),"i");e.link_fuzzy=RegExp(r(e.tpl_link_fuzzy),"i");e.link_no_ip_fuzzy=RegExp(r(e.tpl_link_no_ip_fuzzy),"i");e.host_fuzzy_test=RegExp(r(e.tpl_host_fuzzy_test),"i");const n=[];t.__compiled__={};function s(t,e){throw new Error('(LinkifyIt) Invalid schema "'+t+'": '+e)}Object.keys(t.__schemas__).forEach((function(e){const i=t.__schemas__[e];if(i===null){return}const r={validate:null,link:null};t.__compiled__[e]=r;if(cd(i)){if(dd(i.validate)){r.validate=yd(i.validate)}else if(pd(i.validate)){r.validate=i.validate}else{s(e,i)}if(pd(i.normalize)){r.normalize=i.normalize}else if(!i.normalize){r.normalize=Fd()}else{s(e,i)}return}if(ad(i)){n.push(e);return}s(e,i)}));n.forEach((function(e){if(!t.__compiled__[t.__schemas__[e]]){return}t.__compiled__[e].validate=t.__compiled__[t.__schemas__[e]].validate;t.__compiled__[e].normalize=t.__compiled__[t.__schemas__[e]].normalize}));t.__compiled__[""]={validate:null,normalize:Fd()};const l=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(md).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");vd(t)}function xd(t,e){const i=t.__index__;const r=t.__last_index__;const n=t.__text_cache__.slice(i,r);this.schema=t.__schema__.toLowerCase();this.index=i+e;this.lastIndex=r+e;this.raw=n;this.text=n;this.url=n}function Md(t,e){const i=new xd(t,e);t.__compiled__[i.schema].normalize(i,t);return i}function Ad(t,e){if(!(this instanceof Ad)){return new Ad(t,e)}if(!e){if(gd(t)){e=t;t={}}}this.__opts__=fd({},wd,e);this.__index__=-1;this.__last_index__=-1;this.__schema__="";this.__text_cache__="";this.__schemas__=fd({},bd,t);this.__compiled__={};this.__tlds__=kd;this.__tlds_replaced__=false;this.re={};Ed(this)}Ad.prototype.add=function t(e,i){this.__schemas__[e]=i;Ed(this);return this};Ad.prototype.set=function t(e){this.__opts__=fd(this.__opts__,e);return this};Ad.prototype.test=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length){return false}let i,r,n,s,l,u,o,f,h;if(this.re.schema_test.test(e)){o=this.re.schema_search;o.lastIndex=0;while((i=o.exec(e))!==null){s=this.testSchemaAt(e,i[2],o.lastIndex);if(s){this.__schema__=i[2];this.__index__=i.index+i[1].length;this.__last_index__=i.index+i[0].length+s;break}}}if(this.__opts__.fuzzyLink&&this.__compiled__["http:"]){f=e.search(this.re.host_fuzzy_test);if(f>=0){if(this.__index__<0||f<this.__index__){if((r=e.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy))!==null){l=r.index+r[1].length;if(this.__index__<0||l<this.__index__){this.__schema__="";this.__index__=l;this.__last_index__=r.index+r[0].length}}}}}if(this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"]){h=e.indexOf("@");if(h>=0){if((n=e.match(this.re.email_fuzzy))!==null){l=n.index+n[1].length;u=n.index+n[0].length;if(this.__index__<0||l<this.__index__||l===this.__index__&&u>this.__last_index__){this.__schema__="mailto:";this.__index__=l;this.__last_index__=u}}}}return this.__index__>=0};Ad.prototype.pretest=function t(e){return this.re.pretest.test(e)};Ad.prototype.testSchemaAt=function t(e,i,r){if(!this.__compiled__[i.toLowerCase()]){return 0}return this.__compiled__[i.toLowerCase()].validate(e,r,this)};Ad.prototype.match=function t(e){const i=[];let r=0;if(this.__index__>=0&&this.__text_cache__===e){i.push(Md(this,r));r=this.__last_index__}let n=r?e.slice(r):e;while(this.test(n)){i.push(Md(this,r));n=n.slice(this.__last_index__);r+=this.__last_index__}if(i.length){return i}return null};Ad.prototype.matchAtStart=function t(e){this.__text_cache__=e;this.__index__=-1;if(!e.length)return null;const i=this.re.schema_at_start.exec(e);if(!i)return null;const r=this.testSchemaAt(e,i[2],i[0].length);if(!r)return null;this.__schema__=i[2];this.__index__=i.index+i[1].length;this.__last_index__=i.index+i[0].length+r;return Md(this,0)};Ad.prototype.tlds=function t(e,i){e=Array.isArray(e)?e:[e];if(!i){this.__tlds__=e.slice();this.__tlds_replaced__=true;Ed(this);return this}this.__tlds__=this.__tlds__.concat(e).sort().filter((function(t,e,i){return t!==i[e-1]})).reverse();Ed(this);return this};Ad.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}};Ad.prototype.onCompile=function t(){};const Cd=2147483647;const Sd=36;const Od=1;const $d=26;const _d=38;const Bd=700;const qd=72;const Rd=128;const Nd="-";const zd=/^xn--/;const Td=/[^\0-\x7F]/;const Id=/[\x2E\u3002\uFF0E\uFF61]/g;const Pd={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const jd=Sd-Od;const Jd=Math.floor;const Ld=String.fromCharCode;function Wd(t){throw new RangeError(Pd[t])}function Ud(t,e){const i=[];let r=t.length;while(r--){i[r]=e(t[r])}return i}function Hd(t,e){const i=t.split("@");let r="";if(i.length>1){r=i[0]+"@";t=i[1]}t=t.replace(Id,".");const n=t.split(".");const s=Ud(n,e).join(".");return r+s}function Zd(t){const e=[];let i=0;const r=t.length;while(i<r){const n=t.charCodeAt(i++);if(n>=55296&&n<=56319&&i<r){const r=t.charCodeAt(i++);if((r&64512)==56320){e.push(((n&1023)<<10)+(r&1023)+65536)}else{e.push(n);i--}}else{e.push(n)}}return e}const Kd=t=>String.fromCodePoint(...t);const Vd=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 Sd};const Gd=function(t,e){return t+22+75*(t<26)-((e!=0)<<5)};const Xd=function(t,e,i){let r=0;t=i?Jd(t/Bd):t>>1;t+=Jd(t/e);for(;t>jd*$d>>1;r+=Sd){t=Jd(t/jd)}return Jd(r+(jd+1)*t/(t+_d))};const Yd=function(t){const e=[];const i=t.length;let r=0;let n=Rd;let s=qd;let l=t.lastIndexOf(Nd);if(l<0){l=0}for(let i=0;i<l;++i){if(t.charCodeAt(i)>=128){Wd("not-basic")}e.push(t.charCodeAt(i))}for(let u=l>0?l+1:0;u<i;){const l=r;for(let e=1,n=Sd;;n+=Sd){if(u>=i){Wd("invalid-input")}const l=Vd(t.charCodeAt(u++));if(l>=Sd){Wd("invalid-input")}if(l>Jd((Cd-r)/e)){Wd("overflow")}r+=l*e;const o=n<=s?Od:n>=s+$d?$d:n-s;if(l<o){break}const f=Sd-o;if(e>Jd(Cd/f)){Wd("overflow")}e*=f}const o=e.length+1;s=Xd(r-l,o,l==0);if(Jd(r/o)>Cd-n){Wd("overflow")}n+=Jd(r/o);r%=o;e.splice(r++,0,n)}return String.fromCodePoint(...e)};const Qd=function(t){const e=[];t=Zd(t);const i=t.length;let r=Rd;let n=0;let s=qd;for(const i of t){if(i<128){e.push(Ld(i))}}const l=e.length;let u=l;if(l){e.push(Nd)}while(u<i){let i=Cd;for(const e of t){if(e>=r&&e<i){i=e}}const o=u+1;if(i-r>Jd((Cd-n)/o)){Wd("overflow")}n+=(i-r)*o;r=i;for(const i of t){if(i<r&&++n>Cd){Wd("overflow")}if(i===r){let t=n;for(let i=Sd;;i+=Sd){const r=i<=s?Od:i>=s+$d?$d:i-s;if(t<r){break}const n=t-r;const l=Sd-r;e.push(Ld(Gd(r+n%l,0)));t=Jd(n/l)}e.push(Ld(Gd(t,0)));s=Xd(n,o,u===l);n=0;++u}}++n;++r}return e.join("")};const tp=function(t){return Hd(t,(function(t){return zd.test(t)?Yd(t.slice(4).toLowerCase()):t}))};const ep=function(t){return Hd(t,(function(t){return Td.test(t)?"xn--"+Qd(t):t}))};const ip={version:"2.3.1",ucs2:{decode:Zd,encode:Kd},decode:Yd,encode:Qd,toASCII:ep,toUnicode:tp};const rp={options:{html:false,xhtmlOut:false,breaks:false,langPrefix:"language-",linkify:false,typographer:false,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}};const np={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 sp={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 lp={default:rp,zero:np,commonmark:sp};const up=/^(vbscript|javascript|file|data):/;const op=/^data:image\/(gif|png|jpeg|webp);/;function fp(t){const e=t.trim().toLowerCase();return up.test(e)?op.test(e):true}const hp=["http:","https:","mailto:"];function ap(t){const e=Ah(t,true);if(e.hostname){if(!e.protocol||hp.indexOf(e.protocol)>=0){try{e.hostname=ip.toASCII(e.hostname)}catch(t){}}}return ah(ch(e))}function cp(t){const e=Ah(t,true);if(e.hostname){if(!e.protocol||hp.indexOf(e.protocol)>=0){try{e.hostname=ip.toUnicode(e.hostname)}catch(t){}}}return oh(ch(e),oh.defaultChars+"%")}function dp(t,e){if(!(this instanceof dp)){return new dp(t,e)}if(!e){if(!zh(t)){e=t||{};t="default"}}this.inline=new ud;this.block=new Mc;this.core=new Wa;this.renderer=new wa;this.linkify=new Ad;this.validateLink=fp;this.normalizeLink=ap;this.normalizeLinkText=cp;this.utils=ha;this.helpers=Ph({},pa);this.options={};this.configure(t);if(e){this.set(e)}}dp.prototype.set=function(t){Ph(this.options,t);return this};dp.prototype.configure=function(t){const e=this;if(zh(t)){const e=t;t=lp[e];if(!t){throw new Error('Wrong `markdown-it` preset "'+e+'", check name')}}if(!t){throw new Error("Wrong `markdown-it` preset, can't be empty")}if(t.options){e.set(t.options)}if(t.components){Object.keys(t.components).forEach((function(i){if(t.components[i].rules){e[i].ruler.enableOnly(t.components[i].rules)}if(t.components[i].rules2){e[i].ruler2.enableOnly(t.components[i].rules2)}}))}return this};dp.prototype.enable=function(t,e){let i=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){i=i.concat(this[e].ruler.enable(t,true))}),this);i=i.concat(this.inline.ruler2.enable(t,true));const r=t.filter((function(t){return i.indexOf(t)<0}));if(r.length&&!e){throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+r)}return this};dp.prototype.disable=function(t,e){let i=[];if(!Array.isArray(t)){t=[t]}["core","block","inline"].forEach((function(e){i=i.concat(this[e].ruler.disable(t,true))}),this);i=i.concat(this.inline.ruler2.disable(t,true));const r=t.filter((function(t){return i.indexOf(t)<0}));if(r.length&&!e){throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+r)}return this};dp.prototype.use=function(t){const e=[this].concat(Array.prototype.slice.call(arguments,1));t.apply(t,e);return this};dp.prototype.parse=function(t,e){if(typeof t!=="string"){throw new Error("Input data should be a String")}const i=new this.core.State(t,this,e);this.core.process(i);return i.tokens};dp.prototype.render=function(t,e){e=e||{};return this.renderer.render(this.parse(t,e),this.options,e)};dp.prototype.parseInline=function(t,e){const i=new this.core.State(t,this,e);i.inlineMode=true;this.core.process(i);return i.tokens};dp.prototype.renderInline=function(t,e){e=e||{};return this.renderer.render(this.parseInline(t,e),this.options,e)};const pp=new rt({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 mp(t,e){if(t.isText&&e.isText&&d.sameSet(t.marks,e.marks))return t.withText(t.text+e.text)}class wp{constructor(t,e){this.schema=t;this.tokenHandlers=e;this.stack=[{type:t.topNodeType,attrs:null,content:[],marks:d.none}]}top(){return this.stack[this.stack.length-1]}push(t){if(this.stack.length)this.top().content.push(t)}addText(t){if(!t)return;let e=this.top(),i=e.content,r=i[i.length-1];let n=this.schema.text(t,e.marks),s;if(r&&(s=mp(r,n)))i[i.length-1]=s;else i.push(n)}openMark(t){let e=this.top();e.marks=t.addToSet(e.marks)}closeMark(t){let e=this.top();e.marks=t.removeFromSet(e.marks)}parseTokens(t){for(let e=0;e<t.length;e++){let i=t[e];let r=this.tokenHandlers[i.type];if(!r)throw new Error("Token type `"+i.type+"` not supported by Markdown parser");r(this,i,t,e)}}addNode(t,e,i){let r=this.top();let n=t.createAndFill(e,i,r?r.marks:[]);if(!n)return null;this.push(n);return n}openNode(t,e){this.stack.push({type:t,attrs:e,content:[],marks:d.none})}closeNode(){let t=this.stack.pop();return this.addNode(t.type,t.attrs,t.content)}}function gp(t,e,i,r){if(t.getAttrs)return t.getAttrs(e,i,r);else if(t.attrs instanceof Function)return t.attrs(e);else return t.attrs}function bp(t,e){return t.noCloseToken||e=="code_inline"||e=="code_block"||e=="fence"}function Dp(t){return t[t.length-1]=="\n"?t.slice(0,t.length-1):t}function kp(){}function vp(t,e){let i=Object.create(null);for(let r in e){let n=e[r];if(n.block){let e=t.nodeType(n.block);if(bp(n,r)){i[r]=(t,i,r,s)=>{t.openNode(e,gp(n,i,r,s));t.addText(Dp(i.content));t.closeNode()}}else{i[r+"_open"]=(t,i,r,s)=>t.openNode(e,gp(n,i,r,s));i[r+"_close"]=t=>t.closeNode()}}else if(n.node){let e=t.nodeType(n.node);i[r]=(t,i,r,s)=>t.addNode(e,gp(n,i,r,s))}else if(n.mark){let e=t.marks[n.mark];if(bp(n,r)){i[r]=(t,i,r,s)=>{t.openMark(e.create(gp(n,i,r,s)));t.addText(Dp(i.content));t.closeMark(e)}}else{i[r+"_open"]=(t,i,r,s)=>t.openMark(e.create(gp(n,i,r,s)));i[r+"_close"]=t=>t.closeMark(e)}}else if(n.ignore){if(bp(n,r)){i[r]=kp}else{i[r+"_open"]=kp;i[r+"_close"]=kp}}else{throw new RangeError("Unrecognized parsing spec "+JSON.stringify(n))}}i.text=(t,e)=>t.addText(e.content);i.inline=(t,e)=>t.parseTokens(e.children);i.softbreak=i.softbreak||(t=>t.addText(" "));return i}class yp{constructor(t,e,i){this.schema=t;this.tokenizer=e;this.tokens=i;this.tokenHandlers=vp(t,i)}parse(t,e={}){let i=new wp(this.schema,this.tokenHandlers),r;i.parseTokens(this.tokenizer.parse(t,e));do{r=i.closeNode()}while(i.stack.length);return r||this.schema.topNodeType.createAndFill()}}function Fp(t,e){while(++e<t.length)if(t[e].type!="list_item_open")return t[e].hidden;return false}new yp(pp,dp("commonmark",{html:false}),{blockquote:{block:"blockquote"},paragraph:{block:"paragraph"},list_item:{block:"list_item"},bullet_list:{block:"bullet_list",getAttrs:(t,e,i)=>({tight:Fp(e,i)})},ordered_list:{block:"ordered_list",getAttrs:(t,e,i)=>({order:+t.attrGet("start")||1,tight:Fp(e,i)})},heading:{block:"heading",getAttrs:t=>({level:+t.tag.slice(1)})},code_block:{block:"code_block",noCloseToken:true},fence:{block:"code_block",getAttrs:t=>({params:t.info||""}),noCloseToken:true},hr:{node:"horizontal_rule"},image:{node:"image",getAttrs:t=>({src:t.attrGet("src"),title:t.attrGet("title")||null,alt:t.children[0]&&t.children[0].content||null})},hardbreak:{node:"hard_break"},em:{mark:"em"},strong:{mark:"strong"},link:{mark:"link",getAttrs:t=>({href:t.attrGet("href"),title:t.attrGet("title")||null})},code_inline:{mark:"code",noCloseToken:true}});class Ep{constructor(t,e,i={}){this.nodes=t;this.marks=e;this.options=i}serialize(t,e={}){e=Object.assign({},this.options,e);let i=new Cp(this.nodes,this.marks,e);i.renderContent(t);return i.out}}const xp=new Ep({blockquote(t,e){t.wrapBlock("> ",null,e,(()=>t.renderContent(e)))},code_block(t,e){const i=e.textContent.match(/`{3,}/gm);const r=i?i.sort().slice(-1)[0]+"`":"```";t.write(r+(e.attrs.params||"")+"\n");t.text(e.textContent,false);t.write("\n");t.write(r);t.closeBlock(e)},heading(t,e){t.write(t.repeat("#",e.attrs.level)+" ");t.renderInline(e,false);t.closeBlock(e)},horizontal_rule(t,e){t.write(e.attrs.markup||"---");t.closeBlock(e)},bullet_list(t,e){t.renderList(e," ",(()=>(e.attrs.bullet||"*")+" "))},ordered_list(t,e){let i=e.attrs.order||1;let r=String(i+e.childCount-1).length;let n=t.repeat(" ",r+2);t.renderList(e,n,(e=>{let n=String(i+e);return t.repeat(" ",r-n.length)+n+". "}))},list_item(t,e){t.renderContent(e)},paragraph(t,e){t.renderInline(e);t.closeBlock(e)},image(t,e){t.write("]/g,"\\$&")+(e.attrs.title?' "'+e.attrs.title.replace(/"/g,'\\"')+'"':"")+")")},hard_break(t,e,i,r){for(let n=r+1;n<i.childCount;n++)if(i.child(n).type!=e.type){t.write("\\\n");return}},text(t,e){t.text(e.text,!t.inAutolink)}},{em:{open:"*",close:"*",mixable:true,expelEnclosingWhitespace:true},strong:{open:"**",close:"**",mixable:true,expelEnclosingWhitespace:true},link:{open(t,e,i,r){t.inAutolink=Ap(e,i,r);return t.inAutolink?"<":"["},close(t,e,i,r){let{inAutolink:n}=t;t.inAutolink=undefined;return n?">":"]("+e.attrs.href.replace(/[\(\)"]/g,"\\$&")+(e.attrs.title?` "${e.attrs.title.replace(/"/g,'\\"')}"`:"")+")"},mixable:true},code:{open(t,e,i,r){return Mp(i.child(r),-1)},close(t,e,i,r){return Mp(i.child(r-1),1)},escape:false}});function Mp(t,e){let i=/`+/g,r,n=0;if(t.isText)while(r=i.exec(t.text))n=Math.max(n,r[0].length);let s=n>0&&e>0?" `":"`";for(let t=0;t<n;t++)s+="`";if(n>0&&e<0)s+=" ";return s}function Ap(t,e,i){if(t.attrs.title||!/^\w+:/.test(t.attrs.href))return false;let r=e.child(i);if(!r.isText||r.text!=t.attrs.href||r.marks[r.marks.length-1]!=t)return false;return i==e.childCount-1||!t.isInSet(e.child(i+1).marks)}class Cp{constructor(t,e,i){this.nodes=t;this.marks=e;this.options=i;this.delim="";this.out="";this.closed=null;this.inAutolink=undefined;this.atBlockStart=false;this.inTightList=false;if(typeof this.options.tightLists=="undefined")this.options.tightLists=false;if(typeof this.options.hardBreakNodeName=="undefined")this.options.hardBreakNodeName="hard_break"}flushClose(t=2){if(this.closed){if(!this.atBlank())this.out+="\n";if(t>1){let e=this.delim;let i=/\s+$/.exec(e);if(i)e=e.slice(0,e.length-i[0].length);for(let i=1;i<t;i++)this.out+=e+"\n"}this.closed=null}}wrapBlock(t,e,i,r){let n=this.delim;this.write(e!=null?e:t);this.delim+=t;r();this.delim=n;this.closeBlock(i)}atBlank(){return/(^|\n)$/.test(this.out)}ensureNewLine(){if(!this.atBlank())this.out+="\n"}write(t){this.flushClose();if(this.delim&&this.atBlank())this.out+=this.delim;if(t)this.out+=t}closeBlock(t){this.closed=t}text(t,e=true){let i=t.split("\n");for(let t=0;t<i.length;t++){this.write();if(!e&&i[t][0]=="["&&/(^|[^\\])\!$/.test(this.out))this.out=this.out.slice(0,this.out.length-1)+"\\!";this.out+=e?this.esc(i[t],this.atBlockStart):i[t];if(t!=i.length-1)this.out+="\n"}}render(t,e,i){if(!this.nodes[t.type.name])throw new Error("Token type `"+t.type.name+"` not supported by Markdown renderer");this.nodes[t.type.name](this,t,e,i)}renderContent(t){t.forEach(((e,i,r)=>this.render(e,t,r)))}renderInline(t,e=true){this.atBlockStart=e;let i=[],r="";let n=(e,n,s)=>{let l=e?e.marks:[];if(e&&e.type.name===this.options.hardBreakNodeName)l=l.filter((e=>{if(s+1==t.childCount)return false;let i=t.child(s+1);return e.isInSet(i.marks)&&(!i.isText||/\S/.test(i.text))}));let u=r;r="";if(e&&e.isText&&l.some((t=>{let e=this.marks[t.type.name];return e&&e.expelEnclosingWhitespace&&!t.isInSet(i)}))){let[t,r,n]=/^(\s*)(.*)$/m.exec(e.text);if(r){u+=r;e=n?e.withText(n):null;if(!e)l=i}}if(e&&e.isText&&l.some((e=>{let i=this.marks[e.type.name];return i&&i.expelEnclosingWhitespace&&(s==t.childCount-1||!e.isInSet(t.child(s+1).marks))}))){let[t,n,s]=/^(.*?)(\s*)$/m.exec(e.text);if(s){r=s;e=n?e.withText(n):null;if(!e)l=i}}let o=l.length?l[l.length-1]:null;let f=o&&this.marks[o.type.name].escape===false;let h=l.length-(f?1:0);t:for(let t=0;t<h;t++){let e=l[t];if(!this.marks[e.type.name].mixable)break;for(let r=0;r<i.length;r++){let n=i[r];if(!this.marks[n.type.name].mixable)break;if(e.eq(n)){if(t>r)l=l.slice(0,r).concat(e).concat(l.slice(r,t)).concat(l.slice(t+1,h));else if(r>t)l=l.slice(0,t).concat(l.slice(t+1,r)).concat(e).concat(l.slice(r,h));continue t}}}let a=0;while(a<Math.min(i.length,h)&&l[a].eq(i[a]))++a;while(a<i.length)this.text(this.markString(i.pop(),false,t,s),false);if(u)this.text(u);if(e){while(i.length<h){let e=l[i.length];i.push(e);this.text(this.markString(e,true,t,s),false);this.atBlockStart=false}if(f&&e.isText)this.text(this.markString(o,true,t,s)+e.text+this.markString(o,false,t,s+1),false);else this.render(e,t,s);this.atBlockStart=false}if((e===null||e===void 0?void 0:e.isText)&&e.nodeSize>0){this.atBlockStart=false}};t.forEach(n);n(null,0,t.childCount);this.atBlockStart=false}renderList(t,e,i){if(this.closed&&this.closed.type==t.type)this.flushClose(3);else if(this.inTightList)this.flushClose(1);let r=typeof t.attrs.tight!="undefined"?t.attrs.tight:this.options.tightLists;let n=this.inTightList;this.inTightList=r;t.forEach(((n,s,l)=>{if(l&&r)this.flushClose(1);this.wrapBlock(e,i(l),t,(()=>this.render(n,t,l)))}));this.inTightList=n}esc(t,e=false){t=t.replace(/[`*\\~\[\]_]/g,((e,i)=>e=="_"&&i>0&&i+1<t.length&&t[i-1].match(/\w/)&&t[i+1].match(/\w/)?e:"\\"+e));if(e)t=t.replace(/^(\+[ ]|[\-*>])/,"\\$&").replace(/^(\s*)(#{1,6})(\s|$)/,"$1\\$2$3").replace(/^(\s*\d+)\.\s/,"$1\\. ");if(this.options.escapeExtraCharacters)t=t.replace(this.options.escapeExtraCharacters,"\\$&");return t}quote(t){let e=t.indexOf('"')==-1?'""':t.indexOf("'")==-1?"''":"()";return e[0]+t+e[1]}repeat(t,e){let i="";for(let r=0;r<e;r++)i+=t;return i}markString(t,e,i,r){let n=this.marks[t.type.name];let s=e?n.open:n.close;return typeof s=="string"?s:s(this,t,i,r)}getEnclosingWhitespace(t){return{leading:(t.match(/^(\s+)/)||[undefined])[0],trailing:(t.match(/(\s+)$/)||[undefined])[0]}}}class Sp{constructor(){this.parseAsHTML=t=>s(t);this.serialize=t=>{if(t.dom.textContent===""){return""}else{return xp.serialize(t.state.doc)}}}}class Op{constructor(){this.parseAsHTML=t=>new Promise((e=>{e(t)}));this.serialize=t=>{if(t.dom.textContent===""){return""}else{return t.dom.innerHTML}}}}const $p='@charset "UTF-8";:host{--mdc-theme-primary:var(\n --lime-primary-color,\n rgb(var(--color-teal-default))\n );--mdc-theme-secondary:var(\n --lime-secondary-color,\n rgb(var(--contrast-1100))\n );--mdc-theme-on-primary:var(\n --lime-on-primary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-secondary:var(\n --lime-on-secondary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-text-disabled-on-background:var(\n --lime-text-disabled-on-background-color,\n rgba(var(--contrast-1700), 0.38)\n );--mdc-theme-text-primary-on-background:var(\n --lime-text-primary-on-background-color,\n rgba(var(--contrast-1700), 0.87)\n );--mdc-theme-text-secondary-on-background:var(\n --lime-text-secondary-on-background-color,\n rgba(var(--contrast-1700), 0.54)\n );--mdc-theme-error:var(\n --lime-error-background-color,\n rgb(var(--color-red-dark))\n );--lime-error-text-color:rgb(var(--color-red-darker));--mdc-theme-surface:var(\n --lime-surface-background-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-surface:var(\n --lime-on-surface-color,\n rgb(var(--contrast-1500))\n )}:host(limel-prosemirror-adapter){display:flex;flex-direction:column}:host(limel-prosemirror-adapter) limel-action-bar{order:1}:host(limel-prosemirror-adapter) div#editor{order:2;height:100%}:host(limel-prosemirror-adapter) div[contenteditable=true]{height:100%}*{box-sizing:border-box}.ProseMirror-menubar-wrapper{display:grid;grid-template-rows:auto 1fr}.ProseMirror-textblock-dropdown{min-width:3em}.ProseMirror-tooltip .ProseMirror-menu{width:-webkit-fit-content;width:fit-content;white-space:pre}limel-action-bar{--action-bar-border-radius:0.25rem;position:sticky;z-index:1;top:1px;background-color:rgba(var(--contrast-200), 0.5);backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);opacity:0.6;transition:opacity 0.5s ease;margin:0 1px;width:calc(100% - 2px)}:host(limel-prosemirror-adapter:focus-within) limel-action-bar,:host(limel-prosemirror-adapter:hover) limel-action-bar{opacity:1}.ProseMirror{position:relative;word-wrap:break-word;white-space:pre-wrap;white-space:break-spaces;-webkit-font-variant-ligatures:none;font-variant-ligatures:none;font-feature-settings:"liga" 0;padding:var(--limel-text-editor-padding)}.ProseMirror [draggable][contenteditable=false]{user-select:text}.ProseMirror:focus-visible{outline:none}.ProseMirror-hideselection{caret-color:transparent}.ProseMirror-hideselection *::selection{background:transparent}.ProseMirror-hideselection *::-moz-selection{background:transparent}.ProseMirror-selectednode{outline:0.125rem solid rgb(var(--color-sky-light))}li.ProseMirror-selectednode{outline:none}li.ProseMirror-selectednode:after{content:"";position:absolute;left:-2rem;right:-0.125rem;top:-0.125rem;bottom:-0.125rem;border:0.125rem solid rgb(var(--color-sky-light));pointer-events:none}img.ProseMirror-separator{display:inline !important;border:none !important;margin:0 !important}blockquote{position:relative;font-weight:100;font-size:0.875rem;max-width:100%;line-height:1.4;margin:0;padding:0.5rem 1.25rem;border-radius:0.05rem 0.75rem;background-color:rgb(var(--contrast-300))}blockquote:before,blockquote:after{position:absolute;font-size:2.75rem;opacity:0.4}blockquote:before{content:"“";left:0;top:-0.75rem}blockquote:after{content:"”";right:0;bottom:-2rem}:host(limel-markdown.truncate-paragraphs) p{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}p,li{font-size:0.875rem;word-break:break-word;hyphens:auto;-webkit-hyphens:auto}a{word-break:break-all}p{margin-top:0;margin-bottom:0.5rem}p:only-child{margin-bottom:0}a{transition:color 0.2s ease;color:var(--markdown-hyperlink-color, rgb(var(--color-blue-dark)));text-decoration:none}a:hover{color:var(--markdown-hyperlink-color--hovered, rgb(var(--color-blue-default)))}hr{margin:1.75rem 0 2rem 0;border-width:0;border-top:1px solid rgb(var(--contrast-500))}dl{display:grid;grid-template-columns:1fr 2fr;grid-template-rows:1fr;margin-bottom:2rem;border:1px solid rgb(var(--contrast-400));border-radius:0.375rem;background-color:rgb(var(--contrast-200))}dl dt,dl dd{padding:0.375rem 0.5rem;font-size:0.875rem;margin:0}dl dt:nth-of-type(even),dl dd:nth-of-type(even){background-color:rgb(var(--contrast-300))}dl dt:first-child{border-top-left-radius:0.375rem}dl dt:last-child{border-bottom-left-radius:0.375rem}dl dd:first-child{border-top-right-radius:0.375rem}dl dd:last-child{border-bottom-right-radius:0.375rem}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.125rem}h4{font-size:1rem}h5{font-size:0.875rem}h6{font-size:0.75rem}h1,h2{margin-top:0.5rem;margin-bottom:0.5rem;letter-spacing:-0.03125rem;font-weight:500}h3,h4{margin-top:0.75rem;margin-bottom:0.25rem;font-weight:600}h5,h6{margin-top:0.5rem;margin-bottom:0.125rem;font-weight:600}h1,h2,h3,h4,h5,h6{word-break:break-word;hyphens:auto;-webkit-hyphens:auto}:not([contenteditable=true]) h1,:not([contenteditable=true]) h2,:not([contenteditable=true]) h3,:not([contenteditable=true]) h4,:not([contenteditable=true]) h5,:not([contenteditable=true]) h6{text-wrap:balance}[contenteditable=true] h1,[contenteditable=true] h2,[contenteditable=true] h3,[contenteditable=true] h4,[contenteditable=true] h5,[contenteditable=true] h6{text-wrap:initial}ul{list-style:none}ul li{position:relative;margin-left:0.75rem}ul li:before{content:"";position:absolute;left:-0.5rem;top:0.5rem;width:0.25rem;height:0.25rem;border-radius:50%;background-color:rgb(var(--contrast-700));display:block}ol{margin-top:0.25rem;padding-left:1rem}ul{margin-top:0.25rem;padding-left:0}ul ul,ul ol,ol ol,ol ul{margin-left:0}li{margin-bottom:0.25rem}code{font-family:ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;font-size:0.8125rem;letter-spacing:-0.0125rem;color:rgb(var(--contrast-1300));-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;display:inline-block;border-radius:0.25rem;padding:0.03125rem 0.25rem;background-color:rgb(var(--contrast-600))}pre>code{display:block;margin:0.5rem 0;padding:0.5rem 0.75rem;overflow:auto;white-space:pre-wrap}:host(limel-markdown:not(.no-table-styles)) table{table-layout:auto;min-width:100%;border-collapse:collapse;border-spacing:0;background:transparent;margin:0.75rem 0;border:1px solid rgb(var(--contrast-400))}:host(limel-markdown:not(.no-table-styles)) th,:host(limel-markdown:not(.no-table-styles)) td{text-align:left;vertical-align:top;transition:background-color 0.2s ease;font-size:0.875rem}:host(limel-markdown:not(.no-table-styles)) td{padding:0.5rem 0.375rem 0.75rem 0.375rem}:host(limel-markdown:not(.no-table-styles)) tr th{background-color:rgb(var(--contrast-400));padding:0.25rem 0.375rem;font-weight:normal}:host(limel-markdown:not(.no-table-styles)) tr th:only-child{text-align:center}:host(limel-markdown:not(.no-table-styles)) tbody tr:nth-child(odd) td{background-color:rgb(var(--contrast-200))}:host(limel-markdown:not(.no-table-styles)) tbody tr:hover td{background-color:rgb(var(--contrast-300))}';const _p=class{constructor(i){t(this,i);this.change=e(this,"change",7);this.editorKeyMap={};this.initializeTextEditor=async()=>{this.actionBarItems=sh;const t=new rt({nodes:Il($l.spec.nodes,"paragraph block*","block"),marks:$l.spec.marks});const e=document.createElement("div");e.innerHTML="<p></p>";if(this.value){e.innerHTML=await this.contentConverter.parseAsHTML(this.value,$l)}const i=st.fromSchema(t).parse(e);this.menuCommandFactory=new eh(t);this.editorKeyMap=this.menuCommandFactory.buildKeymap();const r=nu(this.editorKeyMap);this.view=new dl(this.host.shadowRoot.querySelector("#editor"),{state:ei.create({doc:i,plugins:[...Hf({schema:t,menuBar:false}),r]}),dispatchTransaction:t=>{const e=this.view.state.apply(t);this.view.updateState(e);this.change.emit(this.contentConverter.serialize(this.view,$l))}});this.menuCommandFactory=new eh(t);if(this.value){this.updateView(this.value)}};this.handleActionBarItem=t=>{t.preventDefault();const{value:e}=t.detail;try{const t=this.menuCommandFactory.getCommand(e);this.executeCommand(t)}catch(t){throw new Error(`Error executing command: ${t}`)}};this.contentType="markdown";this.value=undefined;this.view=undefined;this.actionBarItems=[]}watchValue(t){if(!this.view||t===this.contentConverter.serialize(this.view,$l)){return}this.updateView(t)}componentWillLoad(){if(this.contentType==="markdown"){this.contentConverter=new Sp}else if(this.contentType==="html"){this.contentConverter=new Op}}componentDidLoad(){setTimeout(this.initializeTextEditor,0)}render(){return[i("div",{id:"editor"}),i("limel-action-bar",{accessibleLabel:"Toolbar",actions:this.actionBarItems,onItemSelected:this.handleActionBarItem})]}async updateView(t){const e=await this.contentConverter.parseAsHTML(t,$l);const i=st.fromSchema(this.view.state.schema);const r=new window.DOMParser;const n=r.parseFromString(e,"text/html");const s=i.parse(n.body);const l=this.view.state.tr;l.replaceWith(0,l.doc.content.size,s.content);this.view.dispatch(l)}executeCommand(t){const{state:e}=this.view;const i=e.selection;let r=e.tr;if(!i.empty){r.setSelection(i)}t(e,(t=>{r=t}));this.view.dispatch(r);this.setFocus()}setFocus(){var t;(t=this.view)===null||t===void 0?void 0:t.focus()}get host(){return r(this)}static get watchers(){return{value:["watchValue"]}}};_p.style=$p;export{_p as limel_prosemirror_adapter};
|
|
2
|
+
//# sourceMappingURL=p-e9f943ac.entry.js.map
|