@scbt-ecom/ui 0.135.0 → 0.136.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/dist/lib/widgets/authProvider/ui/Esia.js +1 -1
  2. package/dist/lib/widgets/authProvider/ui/Esia.js.map +1 -1
  3. package/dist/lib/widgets/authProvider/ui/MobileId.js +1 -1
  4. package/dist/lib/widgets/authProvider/ui/MobileId.js.map +1 -1
  5. package/dist/lib/widgets/authProvider/ui/ui/Links.js +1 -1
  6. package/dist/lib/widgets/authProvider/ui/ui/Links.js.map +1 -1
  7. package/dist/lib/widgets/dynamicForm/DynamicForm.js +1 -1
  8. package/dist/lib/widgets/dynamicForm/DynamicForm.js.map +1 -1
  9. package/dist/lib/widgets/model/helpers.js +1 -1
  10. package/dist/lib/widgets/model/helpers.js.map +1 -1
  11. package/dist/lib/widgets/usefulInfo/UsefulInfo.js +1 -1
  12. package/dist/lib/widgets/usefulInfo/UsefulInfo.js.map +1 -1
  13. package/dist/lib/widgets/usefulInfo/ui/Tabs.js +1 -1
  14. package/dist/lib/widgets/usefulInfo/ui/Tabs.js.map +1 -1
  15. package/dist/node_modules/prosemirror-model/dist/index.js +2 -2
  16. package/dist/node_modules/prosemirror-model/dist/index.js.map +1 -1
  17. package/dist/node_modules/prosemirror-state/dist/index.js +1 -1
  18. package/dist/node_modules/prosemirror-state/dist/index.js.map +1 -1
  19. package/dist/stats.html +1 -1
  20. package/dist/types/lib/widgets/authProvider/model/types.d.ts +1 -4
  21. package/dist/types/lib/widgets/authProvider/ui/Esia.d.ts +1 -1
  22. package/dist/types/lib/widgets/authProvider/ui/MobileId.d.ts +1 -1
  23. package/dist/types/lib/widgets/authProvider/ui/ui/Links.d.ts +2 -2
  24. package/dist/types/lib/widgets/dynamicForm/DynamicForm.d.ts +2 -1
  25. package/dist/types/lib/widgets/model/helpers.d.ts +1 -1
  26. package/dist/types/lib/widgets/usefulInfo/model/types.d.ts +2 -0
  27. package/dist/types/lib/widgets/usefulInfo/ui/Tabs.d.ts +5 -2
  28. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import q from"../../orderedmap/dist/index.js";function Y(l,t,e){for(let n=0;;n++){if(n==l.childCount||n==t.childCount)return l.childCount==t.childCount?null:e;let i=l.child(n),r=t.child(n);if(i==r){e+=i.nodeSize;continue}if(!i.sameMarkup(r))return e;if(i.isText&&i.text!=r.text){for(let s=0;i.text[s]==r.text[s];s++)e++;return e}if(i.content.size||r.content.size){let s=Y(i.content,r.content,e+1);if(s!=null)return s}e+=i.nodeSize}}function Z(l,t,e,n){for(let i=l.childCount,r=t.childCount;;){if(i==0||r==0)return i==r?null:{a:e,b:n};let s=l.child(--i),o=t.child(--r),h=s.nodeSize;if(s==o){e-=h,n-=h;continue}if(!s.sameMarkup(o))return{a:e,b:n};if(s.isText&&s.text!=o.text){let a=0,f=Math.min(s.text.length,o.text.length);for(;a<f&&s.text[s.text.length-a-1]==o.text[o.text.length-a-1];)a++,e--,n--;return{a:e,b:n}}if(s.content.size||o.content.size){let a=Z(s.content,o.content,e-1,n-1);if(a)return a}e-=h,n-=h}}class c{constructor(t,e){if(this.content=t,this.size=e||0,e==null)for(let n=0;n<t.length;n++)this.size+=t[n].nodeSize}nodesBetween(t,e,n,i=0,r){for(let s=0,o=0;o<e;s++){let h=this.content[s],a=o+h.nodeSize;if(a>t&&n(h,i+o,r||null,s)!==!1&&h.content.size){let f=o+1;h.nodesBetween(Math.max(0,t-f),Math.min(h.content.size,e-f),n,i+f)}o=a}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,n,i){let r="",s=!0;return this.nodesBetween(t,e,(o,h)=>{let a=o.isText?o.text.slice(Math.max(t,h)-h,e-h):o.isLeaf?i?typeof i=="function"?i(o):i:o.type.spec.leafText?o.type.spec.leafText(o):"":"";o.isBlock&&(o.isLeaf&&a||o.isTextblock)&&n&&(s?s=!1:r+=n),r+=a},0),r}append(t){if(!t.size)return this;if(!this.size)return t;let e=this.lastChild,n=t.firstChild,i=this.content.slice(),r=0;for(e.isText&&e.sameMarkup(n)&&(i[i.length-1]=e.withText(e.text+n.text),r=1);r<t.content.length;r++)i.push(t.content[r]);return new c(i,this.size+t.size)}cut(t,e=this.size){if(t==0&&e==this.size)return this;let n=[],i=0;if(e>t)for(let r=0,s=0;s<e;r++){let o=this.content[r],h=s+o.nodeSize;h>t&&((s<t||h>e)&&(o.isText?o=o.cut(Math.max(0,t-s),Math.min(o.text.length,e-s)):o=o.cut(Math.max(0,t-s-1),Math.min(o.content.size,e-s-1))),n.push(o),i+=o.nodeSize),s=h}return new c(n,i)}cutByIndex(t,e){return t==e?c.empty:t==0&&e==this.content.length?this:new c(this.content.slice(t,e))}replaceChild(t,e){let n=this.content[t];if(n==e)return this;let i=this.content.slice(),r=this.size+e.nodeSize-n.nodeSize;return i[t]=e,new c(i,r)}addToStart(t){return new c([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new c(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return!1;for(let e=0;e<this.content.length;e++)if(!this.content[e].eq(t.content[e]))return!1;return!0}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,n=0;e<this.content.length;e++){let i=this.content[e];t(i,n,e),n+=i.nodeSize}}findDiffStart(t,e=0){return Y(this,t,e)}findDiffEnd(t,e=this.size,n=t.size){return Z(this,t,e,n)}findIndex(t){if(t==0)return O(0,t);if(t==this.size)return O(this.content.length,t);if(t>this.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let e=0,n=0;;e++){let i=this.child(e),r=n+i.nodeSize;if(r>=t)return r==t?O(e+1,r):O(e,n);n=r}}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 c.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new c(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return c.empty;let e,n=0;for(let i=0;i<t.length;i++){let r=t[i];n+=r.nodeSize,i&&r.isText&&t[i-1].sameMarkup(r)?(e||(e=t.slice(0,i)),e[e.length-1]=r.withText(e[e.length-1].text+r.text)):e&&e.push(r)}return new c(e||t,n)}static from(t){if(!t)return c.empty;if(t instanceof c)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new c([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}c.empty=new c([],0);const N={index:0,offset:0};function O(l,t){return N.index=l,N.offset=t,N}function M(l,t){if(l===t)return!0;if(!(l&&typeof l=="object")||!(t&&typeof t=="object"))return!1;let e=Array.isArray(l);if(Array.isArray(t)!=e)return!1;if(e){if(l.length!=t.length)return!1;for(let n=0;n<l.length;n++)if(!M(l[n],t[n]))return!1}else{for(let n in l)if(!(n in t)||!M(l[n],t[n]))return!1;for(let n in t)if(!(n in l))return!1}return!0}class u{constructor(t,e){this.type=t,this.attrs=e}addToSet(t){let e,n=!1;for(let i=0;i<t.length;i++){let r=t[i];if(this.eq(r))return t;if(this.type.excludes(r.type))e||(e=t.slice(0,i));else{if(r.type.excludes(this.type))return t;!n&&r.type.rank>this.type.rank&&(e||(e=t.slice(0,i)),e.push(this),n=!0),e&&e.push(r)}}return e||(e=t.slice()),n||e.push(this),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!0;return!1}eq(t){return this==t||this.type==t.type&&M(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 n=t.marks[e.type];if(!n)throw new RangeError(`There is no mark type ${e.type} in this schema`);let i=n.create(e.attrs);return n.checkAttrs(i.attrs),i}static sameSet(t,e){if(t==e)return!0;if(t.length!=e.length)return!1;for(let n=0;n<t.length;n++)if(!t[n].eq(e[n]))return!1;return!0}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return u.none;if(t instanceof u)return[t];let e=t.slice();return e.sort((n,i)=>n.type.rank-i.type.rank),e}}u.none=[];class I extends Error{}class d{constructor(t,e,n){this.content=t,this.openStart=e,this.openEnd=n}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,e){let n=$(this.content,t+this.openStart,e);return n&&new d(n,this.openStart,this.openEnd)}removeBetween(t,e){return new d(_(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()};return this.openStart>0&&(t.openStart=this.openStart),this.openEnd>0&&(t.openEnd=this.openEnd),t}static fromJSON(t,e){if(!e)return d.empty;let n=e.openStart||0,i=e.openEnd||0;if(typeof n!="number"||typeof i!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new d(c.fromJSON(t,e.content),n,i)}static maxOpen(t,e=!0){let n=0,i=0;for(let r=t.firstChild;r&&!r.isLeaf&&(e||!r.type.spec.isolating);r=r.firstChild)n++;for(let r=t.lastChild;r&&!r.isLeaf&&(e||!r.type.spec.isolating);r=r.lastChild)i++;return new d(t,n,i)}}d.empty=new d(c.empty,0,0);function _(l,t,e){let{index:n,offset:i}=l.findIndex(t),r=l.maybeChild(n),{index:s,offset:o}=l.findIndex(e);if(i==t||r.isText){if(o!=e&&!l.child(s).isText)throw new RangeError("Removing non-flat range");return l.cut(0,t).append(l.cut(e))}if(n!=s)throw new RangeError("Removing non-flat range");return l.replaceChild(n,r.copy(_(r.content,t-i-1,e-i-1)))}function $(l,t,e,n){let{index:i,offset:r}=l.findIndex(t),s=l.maybeChild(i);if(r==t||s.isText)return n&&!n.canReplace(i,i,e)?null:l.cut(0,t).append(e).append(l.cut(t));let o=$(s.content,t-r-1,e,s);return o&&l.replaceChild(i,s.copy(o))}function dt(l,t,e){if(e.openStart>l.depth)throw new I("Inserted content deeper than insertion position");if(l.depth-e.openStart!=t.depth-e.openEnd)throw new I("Inconsistent open depths");return tt(l,t,e,0)}function tt(l,t,e,n){let i=l.index(n),r=l.node(n);if(i==t.index(n)&&n<l.depth-e.openStart){let s=tt(l,t,e,n+1);return r.copy(r.content.replaceChild(i,s))}else if(e.content.size)if(!e.openStart&&!e.openEnd&&l.depth==n&&t.depth==n){let s=l.parent,o=s.content;return m(s,o.cut(0,l.parentOffset).append(e.content).append(o.cut(t.parentOffset)))}else{let{start:s,end:o}=yt(e,l);return m(r,nt(l,s,o,t,n))}else return m(r,A(l,t,n))}function et(l,t){if(!t.type.compatibleContent(l.type))throw new I("Cannot join "+t.type.name+" onto "+l.type.name)}function D(l,t,e){let n=l.node(e);return et(n,t.node(e)),n}function x(l,t){let e=t.length-1;e>=0&&l.isText&&l.sameMarkup(t[e])?t[e]=l.withText(t[e].text+l.text):t.push(l)}function k(l,t,e,n){let i=(t||l).node(e),r=0,s=t?t.index(e):i.childCount;l&&(r=l.index(e),l.depth>e?r++:l.textOffset&&(x(l.nodeAfter,n),r++));for(let o=r;o<s;o++)x(i.child(o),n);t&&t.depth==e&&t.textOffset&&x(t.nodeBefore,n)}function m(l,t){return l.type.checkContent(t),l.copy(t)}function nt(l,t,e,n,i){let r=l.depth>i&&D(l,t,i+1),s=n.depth>i&&D(e,n,i+1),o=[];return k(null,l,i,o),r&&s&&t.index(i)==e.index(i)?(et(r,s),x(m(r,nt(l,t,e,n,i+1)),o)):(r&&x(m(r,A(l,t,i+1)),o),k(t,e,i,o),s&&x(m(s,A(e,n,i+1)),o)),k(n,null,i,o),new c(o)}function A(l,t,e){let n=[];if(k(null,l,e,n),l.depth>e){let i=D(l,t,e+1);x(m(i,A(l,t,e+1)),n)}return k(t,null,e,n),new c(n)}function yt(l,t){let e=t.depth-l.openStart,i=t.node(e).copy(l.content);for(let r=e-1;r>=0;r--)i=t.node(r).copy(c.from(i));return{start:i.resolveNoCache(l.openStart+e),end:i.resolveNoCache(i.content.size-l.openEnd-e)}}class E{constructor(t,e,n){this.pos=t,this.path=e,this.parentOffset=n,this.depth=e.length/3-1}resolveDepth(t){return t==null?this.depth:t<0?this.depth+t: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){return t=this.resolveDepth(t),this.index(t)+(t==this.depth&&!this.textOffset?0:1)}start(t){return t=this.resolveDepth(t),t==0?0:this.path[t*3-1]+1}end(t){return t=this.resolveDepth(t),this.start(t)+this.node(t).content.size}before(t){if(t=this.resolveDepth(t),!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){if(t=this.resolveDepth(t),!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 n=this.pos-this.path[this.path.length-1],i=t.child(e);return n?t.child(e).cut(n):i}get nodeBefore(){let t=this.index(this.depth),e=this.pos-this.path[this.path.length-1];return e?this.parent.child(t).cut(0,e):t==0?null:this.parent.child(t-1)}posAtIndex(t,e){e=this.resolveDepth(e);let n=this.path[e*3],i=e==0?0:this.path[e*3-1]+1;for(let r=0;r<t;r++)i+=n.child(r).nodeSize;return i}marks(){let t=this.parent,e=this.index();if(t.content.size==0)return u.none;if(this.textOffset)return t.child(e).marks;let n=t.maybeChild(e-1),i=t.maybeChild(e);if(!n){let o=n;n=i,i=o}let r=n.marks;for(var s=0;s<r.length;s++)r[s].type.spec.inclusive===!1&&(!i||!r[s].isInSet(i.marks))&&(r=r[s--].removeFromSet(r));return r}marksAcross(t){let e=this.parent.maybeChild(this.index());if(!e||!e.isInline)return null;let n=e.marks,i=t.parent.maybeChild(t.index());for(var r=0;r<n.length;r++)n[r].type.spec.inclusive===!1&&(!i||!n[r].isInSet(i.marks))&&(n=n[r--].removeFromSet(n));return n}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 n=this.depth-(this.parent.inlineContent||this.pos==t.pos?1:0);n>=0;n--)if(t.pos<=this.end(n)&&(!e||e(this.node(n))))return new mt(this,t,n);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 n=[],i=0,r=e;for(let s=t;;){let{index:o,offset:h}=s.content.findIndex(r),a=r-h;if(n.push(s,o,i+h),!a||(s=s.child(o),s.isText))break;r=a-1,i+=h+1}return new E(e,n,r)}static resolveCached(t,e){let n=L.get(t);if(n)for(let r=0;r<n.elts.length;r++){let s=n.elts[r];if(s.pos==e)return s}else L.set(t,n=new gt);let i=n.elts[n.i]=E.resolve(t,e);return n.i=(n.i+1)%xt,i}}class gt{constructor(){this.elts=[],this.i=0}}const xt=12,L=new WeakMap;class mt{constructor(t,e,n){this.$from=t,this.$to=e,this.depth=n}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 wt=Object.create(null);class g{constructor(t,e,n,i=u.none){this.type=t,this.attrs=e,this.marks=i,this.content=n||c.empty}get children(){return this.content.content}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,n,i=0){this.content.nodesBetween(t,e,n,i,this)}descendants(t){this.nodesBetween(0,this.content.size,t)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(t,e,n,i){return this.content.textBetween(t,e,n,i)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(t){return this==t||this.sameMarkup(t)&&this.content.eq(t.content)}sameMarkup(t){return this.hasMarkup(t.type,t.attrs,t.marks)}hasMarkup(t,e,n){return this.type==t&&M(this.attrs,e||t.defaultAttrs||wt)&&u.sameSet(this.marks,n||u.none)}copy(t=null){return t==this.content?this:new g(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new g(this.type,this.attrs,this.content,t)}cut(t,e=this.content.size){return t==0&&e==this.content.size?this:this.copy(this.content.cut(t,e))}slice(t,e=this.content.size,n=!1){if(t==e)return d.empty;let i=this.resolve(t),r=this.resolve(e),s=n?0:i.sharedDepth(e),o=i.start(s),a=i.node(s).content.cut(i.pos-o,r.pos-o);return new d(a,i.depth-s,r.depth-s)}replace(t,e,n){return dt(this.resolve(t),this.resolve(e),n)}nodeAt(t){for(let e=this;;){let{index:n,offset:i}=e.content.findIndex(t);if(e=e.maybeChild(n),!e)return null;if(i==t||e.isText)return e;t-=i+1}}childAfter(t){let{index:e,offset:n}=this.content.findIndex(t);return{node:this.content.maybeChild(e),index:e,offset:n}}childBefore(t){if(t==0)return{node:null,index:0,offset:0};let{index:e,offset:n}=this.content.findIndex(t);if(n<t)return{node:this.content.child(e),index:e,offset:n};let i=this.content.child(e-1);return{node:i,index:e-1,offset:n-i.nodeSize}}resolve(t){return E.resolveCached(this,t)}resolveNoCache(t){return E.resolve(this,t)}rangeHasMark(t,e,n){let i=!1;return e>t&&this.nodesBetween(t,e,r=>(n.isInSet(r.marks)&&(i=!0),!i)),i}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let t=this.type.name;return this.content.size&&(t+="("+this.content.toStringInner()+")"),it(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,n=c.empty,i=0,r=n.childCount){let s=this.contentMatchAt(t).matchFragment(n,i,r),o=s&&s.matchFragment(this.content,e);if(!o||!o.validEnd)return!1;for(let h=i;h<r;h++)if(!this.type.allowsMarks(n.child(h).marks))return!1;return!0}canReplaceWith(t,e,n,i){if(i&&!this.type.allowsMarks(i))return!1;let r=this.contentMatchAt(t).matchType(n),s=r&&r.matchFragment(this.content,e);return s?s.validEnd:!1}canAppend(t){return t.content.size?this.canReplace(this.childCount,this.childCount,t.content):this.type.compatibleContent(t.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let t=u.none;for(let e=0;e<this.marks.length;e++){let n=this.marks[e];n.type.checkAttrs(n.attrs),t=n.addToSet(t)}if(!u.sameSet(t,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map(e=>e.type.name)}`);this.content.forEach(e=>e.check())}toJSON(){let t={type:this.type.name};for(let e in this.attrs){t.attrs=this.attrs;break}return this.content.size&&(t.content=this.content.toJSON()),this.marks.length&&(t.marks=this.marks.map(e=>e.toJSON())),t}static fromJSON(t,e){if(!e)throw new RangeError("Invalid input for Node.fromJSON");let n;if(e.marks){if(!Array.isArray(e.marks))throw new RangeError("Invalid mark data for Node.fromJSON");n=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,n)}let i=c.fromJSON(t,e.content),r=t.nodeType(e.type).create(e.attrs,i,n);return r.type.checkAttrs(r.attrs),r}}g.prototype.text=void 0;class z extends g{constructor(t,e,n,i){if(super(t,e,null,i),!n)throw new RangeError("Empty text nodes are not allowed");this.text=n}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):it(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 z(this.type,this.attrs,this.text,t)}withText(t){return t==this.text?this:new z(this.type,this.attrs,t,this.marks)}cut(t=0,e=this.text.length){return t==0&&e==this.text.length?this:this.withText(this.text.slice(t,e))}eq(t){return this.sameMarkup(t)&&this.text==t.text}toJSON(){let t=super.toJSON();return t.text=this.text,t}}function it(l,t){for(let e=l.length-1;e>=0;e--)t=l[e].type.name+"("+t+")";return t}class w{constructor(t){this.validEnd=t,this.next=[],this.wrapCache=[]}static parse(t,e){let n=new kt(t,e);if(n.next==null)return w.empty;let i=rt(n);n.next&&n.err("Unexpected trailing text");let r=Mt(bt(i));return At(r,n),r}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,n=t.childCount){let i=this;for(let r=e;i&&r<n;r++)i=i.matchType(t.child(r).type);return i}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let t=0;t<this.next.length;t++){let{type:e}=this.next[t];if(!(e.isText||e.hasRequiredAttrs()))return e}return null}compatible(t){for(let e=0;e<this.next.length;e++)for(let n=0;n<t.next.length;n++)if(this.next[e].type==t.next[n].type)return!0;return!1}fillBefore(t,e=!1,n=0){let i=[this];function r(s,o){let h=s.matchFragment(t,n);if(h&&(!e||h.validEnd))return c.from(o.map(a=>a.createAndFill()));for(let a=0;a<s.next.length;a++){let{type:f,next:p}=s.next[a];if(!(f.isText||f.hasRequiredAttrs())&&i.indexOf(p)==-1){i.push(p);let y=r(p,o.concat(f));if(y)return y}}return null}return r(this,[])}findWrapping(t){for(let n=0;n<this.wrapCache.length;n+=2)if(this.wrapCache[n]==t)return this.wrapCache[n+1];let e=this.computeWrapping(t);return this.wrapCache.push(t,e),e}computeWrapping(t){let e=Object.create(null),n=[{match:this,type:null,via:null}];for(;n.length;){let i=n.shift(),r=i.match;if(r.matchType(t)){let s=[];for(let o=i;o.type;o=o.via)s.push(o.type);return s.reverse()}for(let s=0;s<r.next.length;s++){let{type:o,next:h}=r.next[s];!o.isLeaf&&!o.hasRequiredAttrs()&&!(o.name in e)&&(!i.type||h.validEnd)&&(n.push({match:o.contentMatch,type:o,via:i}),e[o.name]=!0)}}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(n){t.push(n);for(let i=0;i<n.next.length;i++)t.indexOf(n.next[i].next)==-1&&e(n.next[i].next)}return e(this),t.map((n,i)=>{let r=i+(n.validEnd?"*":" ")+" ";for(let s=0;s<n.next.length;s++)r+=(s?", ":"")+n.next[s].type.name+"->"+t.indexOf(n.next[s].next);return r}).join(`
2
- `)}}w.empty=new w(!0);class kt{constructor(t,e){this.string=t,this.nodeTypes=e,this.inline=null,this.pos=0,this.tokens=t.split(/\s*(?=\b|\W|$)/),this.tokens[this.tokens.length-1]==""&&this.tokens.pop(),this.tokens[0]==""&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(t){return this.next==t&&(this.pos++||!0)}err(t){throw new SyntaxError(t+" (in content expression '"+this.string+"')")}}function rt(l){let t=[];do t.push(St(l));while(l.eat("|"));return t.length==1?t[0]:{type:"choice",exprs:t}}function St(l){let t=[];do t.push(Et(l));while(l.next&&l.next!=")"&&l.next!="|");return t.length==1?t[0]:{type:"seq",exprs:t}}function Et(l){let t=Tt(l);for(;;)if(l.eat("+"))t={type:"plus",expr:t};else if(l.eat("*"))t={type:"star",expr:t};else if(l.eat("?"))t={type:"opt",expr:t};else if(l.eat("{"))t=Ct(l,t);else break;return t}function W(l){/\D/.test(l.next)&&l.err("Expected number, got '"+l.next+"'");let t=Number(l.next);return l.pos++,t}function Ct(l,t){let e=W(l),n=e;return l.eat(",")&&(l.next!="}"?n=W(l):n=-1),l.eat("}")||l.err("Unclosed braced range"),{type:"range",min:e,max:n,expr:t}}function Ot(l,t){let e=l.nodeTypes,n=e[t];if(n)return[n];let i=[];for(let r in e){let s=e[r];s.isInGroup(t)&&i.push(s)}return i.length==0&&l.err("No node type or group '"+t+"' found"),i}function Tt(l){if(l.eat("(")){let t=rt(l);return l.eat(")")||l.err("Missing closing paren"),t}else if(/\W/.test(l.next))l.err("Unexpected token '"+l.next+"'");else{let t=Ot(l,l.next).map(e=>(l.inline==null?l.inline=e.isInline:l.inline!=e.isInline&&l.err("Mixing inline and block content"),{type:"name",value:e}));return l.pos++,t.length==1?t[0]:{type:"choice",exprs:t}}}function bt(l){let t=[[]];return i(r(l,0),e()),t;function e(){return t.push([])-1}function n(s,o,h){let a={term:h,to:o};return t[s].push(a),a}function i(s,o){s.forEach(h=>h.to=o)}function r(s,o){if(s.type=="choice")return s.exprs.reduce((h,a)=>h.concat(r(a,o)),[]);if(s.type=="seq")for(let h=0;;h++){let a=r(s.exprs[h],o);if(h==s.exprs.length-1)return a;i(a,o=e())}else if(s.type=="star"){let h=e();return n(o,h),i(r(s.expr,h),h),[n(h)]}else if(s.type=="plus"){let h=e();return i(r(s.expr,o),h),i(r(s.expr,h),h),[n(h)]}else{if(s.type=="opt")return[n(o)].concat(r(s.expr,o));if(s.type=="range"){let h=o;for(let a=0;a<s.min;a++){let f=e();i(r(s.expr,h),f),h=f}if(s.max==-1)i(r(s.expr,h),h);else for(let a=s.min;a<s.max;a++){let f=e();n(h,f),i(r(s.expr,h),f),h=f}return[n(h)]}else{if(s.type=="name")return[n(o,void 0,s.value)];throw new Error("Unknown expr type")}}}}function st(l,t){return t-l}function j(l,t){let e=[];return n(t),e.sort(st);function n(i){let r=l[i];if(r.length==1&&!r[0].term)return n(r[0].to);e.push(i);for(let s=0;s<r.length;s++){let{term:o,to:h}=r[s];!o&&e.indexOf(h)==-1&&n(h)}}}function Mt(l){let t=Object.create(null);return e(j(l,0));function e(n){let i=[];n.forEach(s=>{l[s].forEach(({term:o,to:h})=>{if(!o)return;let a;for(let f=0;f<i.length;f++)i[f][0]==o&&(a=i[f][1]);j(l,h).forEach(f=>{a||i.push([o,a=[]]),a.indexOf(f)==-1&&a.push(f)})})});let r=t[n.join(",")]=new w(n.indexOf(l.length-1)>-1);for(let s=0;s<i.length;s++){let o=i[s][1].sort(st);r.next.push({type:i[s][0],next:t[o.join(",")]||e(o)})}return r}}function At(l,t){for(let e=0,n=[l];e<n.length;e++){let i=n[e],r=!i.validEnd,s=[];for(let o=0;o<i.next.length;o++){let{type:h,next:a}=i.next[o];s.push(h.name),r&&!(h.isText||h.hasRequiredAttrs())&&(r=!1),n.indexOf(a)==-1&&n.push(a)}r&&t.err("Only non-generatable nodes ("+s.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function lt(l){let t=Object.create(null);for(let e in l){let n=l[e];if(!n.hasDefault)return null;t[e]=n.default}return t}function ot(l,t){let e=Object.create(null);for(let n in l){let i=t&&t[n];if(i===void 0){let r=l[n];if(r.hasDefault)i=r.default;else throw new RangeError("No value supplied for attribute "+n)}e[n]=i}return e}function ht(l,t,e,n){for(let i in t)if(!(i in l))throw new RangeError(`Unsupported attribute ${i} for ${e} of type ${i}`);for(let i in l){let r=l[i];r.validate&&r.validate(t[i])}}function at(l,t){let e=Object.create(null);if(t)for(let n in t)e[n]=new vt(l,n,t[n]);return e}class v{constructor(t,e,n){this.name=t,this.schema=e,this.spec=n,this.markSet=null,this.groups=n.group?n.group.split(" "):[],this.attrs=at(t,n.attrs),this.defaultAttrs=lt(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(n.inline||t=="text"),this.isText=t=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==w.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}isInGroup(t){return this.groups.indexOf(t)>-1}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let t in this.attrs)if(this.attrs[t].isRequired)return!0;return!1}compatibleContent(t){return this==t||this.contentMatch.compatible(t.contentMatch)}computeAttrs(t){return!t&&this.defaultAttrs?this.defaultAttrs:ot(this.attrs,t)}create(t=null,e,n){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new g(this,this.computeAttrs(t),c.from(e),u.setFrom(n))}createChecked(t=null,e,n){return e=c.from(e),this.checkContent(e),new g(this,this.computeAttrs(t),e,u.setFrom(n))}createAndFill(t=null,e,n){if(t=this.computeAttrs(t),e=c.from(e),e.size){let s=this.contentMatch.fillBefore(e);if(!s)return null;e=s.append(e)}let i=this.contentMatch.matchFragment(e),r=i&&i.fillBefore(c.empty,!0);return r?new g(this,t,e.append(r),u.setFrom(n)):null}validContent(t){let e=this.contentMatch.matchFragment(t);if(!e||!e.validEnd)return!1;for(let n=0;n<t.childCount;n++)if(!this.allowsMarks(t.child(n).marks))return!1;return!0}checkContent(t){if(!this.validContent(t))throw new RangeError(`Invalid content for node ${this.name}: ${t.toString().slice(0,50)}`)}checkAttrs(t){ht(this.attrs,t,"node",this.name)}allowsMarkType(t){return this.markSet==null||this.markSet.indexOf(t)>-1}allowsMarks(t){if(this.markSet==null)return!0;for(let e=0;e<t.length;e++)if(!this.allowsMarkType(t[e].type))return!1;return!0}allowedMarks(t){if(this.markSet==null)return t;let e;for(let n=0;n<t.length;n++)this.allowsMarkType(t[n].type)?e&&e.push(t[n]):e||(e=t.slice(0,n));return e?e.length?e:u.none:t}static compile(t,e){let n=Object.create(null);t.forEach((r,s)=>n[r]=new v(r,e,s));let i=e.spec.topNode||"doc";if(!n[i])throw new RangeError("Schema is missing its top node type ('"+i+"')");if(!n.text)throw new RangeError("Every schema needs a 'text' type");for(let r in n.text.attrs)throw new RangeError("The text node type should not have attributes");return n}}function zt(l,t,e){let n=e.split("|");return i=>{let r=i===null?"null":typeof i;if(n.indexOf(r)<0)throw new RangeError(`Expected value of type ${n} for attribute ${t} on type ${l}, got ${r}`)}}class vt{constructor(t,e,n){this.hasDefault=Object.prototype.hasOwnProperty.call(n,"default"),this.default=n.default,this.validate=typeof n.validate=="string"?zt(t,e,n.validate):n.validate}get isRequired(){return!this.hasDefault}}class F{constructor(t,e,n,i){this.name=t,this.rank=e,this.schema=n,this.spec=i,this.attrs=at(t,i.attrs),this.excluded=null;let r=lt(this.attrs);this.instance=r?new u(this,r):null}create(t=null){return!t&&this.instance?this.instance:new u(this,ot(this.attrs,t))}static compile(t,e){let n=Object.create(null),i=0;return t.forEach((r,s)=>n[r]=new F(r,i++,e,s)),n}removeFromSet(t){for(var e=0;e<t.length;e++)t[e].type==this&&(t=t.slice(0,e).concat(t.slice(e+1)),e--);return t}isInSet(t){for(let e=0;e<t.length;e++)if(t[e].type==this)return t[e]}checkAttrs(t){ht(this.attrs,t,"mark",this.name)}excludes(t){return this.excluded.indexOf(t)>-1}}class qt{constructor(t){this.linebreakReplacement=null,this.cached=Object.create(null);let e=this.spec={};for(let i in t)e[i]=t[i];e.nodes=q.from(t.nodes),e.marks=q.from(t.marks||{}),this.nodes=v.compile(this.spec.nodes,this),this.marks=F.compile(this.spec.marks,this);let n=Object.create(null);for(let i in this.nodes){if(i in this.marks)throw new RangeError(i+" can not be both a node and a mark");let r=this.nodes[i],s=r.spec.content||"",o=r.spec.marks;if(r.contentMatch=n[s]||(n[s]=w.parse(s,this.nodes)),r.inlineContent=r.contentMatch.inlineContent,r.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!r.isInline||!r.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=r}r.markSet=o=="_"?null:o?U(this,o.split(" ")):o==""||!r.inlineContent?[]:null}for(let i in this.marks){let r=this.marks[i],s=r.spec.excludes;r.excluded=s==null?[r]:s==""?[]:U(this,s.split(" "))}this.nodeFromJSON=i=>g.fromJSON(this,i),this.markFromJSON=i=>u.fromJSON(this,i),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(t,e=null,n,i){if(typeof t=="string")t=this.nodeType(t);else if(t instanceof v){if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")")}else throw new RangeError("Invalid node type: "+t);return t.createChecked(e,n,i)}text(t,e){let n=this.nodes.text;return new z(n,n.defaultAttrs,t,u.setFrom(e))}mark(t,e){return typeof t=="string"&&(t=this.marks[t]),t.create(e)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function U(l,t){let e=[];for(let n=0;n<t.length;n++){let i=t[n],r=l.marks[i],s=r;if(r)e.push(r);else for(let o in l.marks){let h=l.marks[o];(i=="_"||h.spec.group&&h.spec.group.split(" ").indexOf(i)>-1)&&e.push(s=h)}if(!s)throw new SyntaxError("Unknown mark type: '"+t[n]+"'")}return e}function Nt(l){return l.tag!=null}function Rt(l){return l.style!=null}class P{constructor(t,e){this.schema=t,this.rules=e,this.tags=[],this.styles=[];let n=this.matchedStyles=[];e.forEach(i=>{if(Nt(i))this.tags.push(i);else if(Rt(i)){let r=/[^=]*/.exec(i.style)[0];n.indexOf(r)<0&&n.push(r),this.styles.push(i)}}),this.normalizeLists=!this.tags.some(i=>{if(!/^(ul|ol)\b/.test(i.tag)||!i.node)return!1;let r=t.nodes[i.node];return r.contentMatch.matchType(r)})}parse(t,e={}){let n=new G(this,e,!1);return n.addAll(t,u.none,e.from,e.to),n.finish()}parseSlice(t,e={}){let n=new G(this,e,!0);return n.addAll(t,u.none,e.from,e.to),d.maxOpen(n.finish())}matchTag(t,e,n){for(let i=n?this.tags.indexOf(n)+1:0;i<this.tags.length;i++){let r=this.tags[i];if(Pt(t,r.tag)&&(r.namespace===void 0||t.namespaceURI==r.namespace)&&(!r.context||e.matchesContext(r.context))){if(r.getAttrs){let s=r.getAttrs(t);if(s===!1)continue;r.attrs=s||void 0}return r}}}matchStyle(t,e,n,i){for(let r=i?this.styles.indexOf(i)+1:0;r<this.styles.length;r++){let s=this.styles[r],o=s.style;if(!(o.indexOf(t)!=0||s.context&&!n.matchesContext(s.context)||o.length>t.length&&(o.charCodeAt(t.length)!=61||o.slice(t.length+1)!=e))){if(s.getAttrs){let h=s.getAttrs(e);if(h===!1)continue;s.attrs=h||void 0}return s}}}static schemaRules(t){let e=[];function n(i){let r=i.priority==null?50:i.priority,s=0;for(;s<e.length;s++){let o=e[s];if((o.priority==null?50:o.priority)<r)break}e.splice(s,0,i)}for(let i in t.marks){let r=t.marks[i].spec.parseDOM;r&&r.forEach(s=>{n(s=H(s)),s.mark||s.ignore||s.clearMark||(s.mark=i)})}for(let i in t.nodes){let r=t.nodes[i].spec.parseDOM;r&&r.forEach(s=>{n(s=H(s)),s.node||s.ignore||s.mark||(s.node=i)})}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new P(t,P.schemaRules(t)))}}const ft={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},It={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},ct={ol:!0,ul:!0},C=1,B=2,S=4;function V(l,t,e){return t!=null?(t?C:0)|(t==="full"?B:0):l&&l.whitespace=="pre"?C|B:e&~S}class T{constructor(t,e,n,i,r,s){this.type=t,this.attrs=e,this.marks=n,this.solid=i,this.options=s,this.content=[],this.activeMarks=u.none,this.match=r||(s&S?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(c.from(t));if(e)this.match=this.type.contentMatch.matchFragment(e);else{let n=this.type.contentMatch,i;return(i=n.findWrapping(t.type))?(this.match=n,i):null}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&C)){let n=this.content[this.content.length-1],i;if(n&&n.isText&&(i=/[ \t\r\n\u000c]+$/.exec(n.text))){let r=n;n.text.length==i[0].length?this.content.pop():this.content[this.content.length-1]=r.withText(r.text.slice(0,r.text.length-i[0].length))}}let e=c.from(this.content);return!t&&this.match&&(e=e.append(this.match.fillBefore(c.empty,!0))),this.type?this.type.create(this.attrs,e,this.marks):e}inlineContext(t){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:t.parentNode&&!ft.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class G{constructor(t,e,n){this.parser=t,this.options=e,this.isOpen=n,this.open=0,this.localPreserveWS=!1;let i=e.topNode,r,s=V(null,e.preserveWhitespace,0)|(n?S:0);i?r=new T(i.type,i.attrs,u.none,!0,e.topMatch||i.type.contentMatch,s):n?r=new T(null,null,u.none,!0,null,s):r=new T(t.schema.topNodeType,null,u.none,!0,null,s),this.nodes=[r],this.find=e.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(t,e){t.nodeType==3?this.addTextNode(t,e):t.nodeType==1&&this.addElement(t,e)}addTextNode(t,e){let n=t.nodeValue,i=this.top,r=i.options&B?"full":this.localPreserveWS||(i.options&C)>0;if(r==="full"||i.inlineContext(t)||/[^ \t\r\n\u000c]/.test(n)){if(r)r!=="full"?n=n.replace(/\r?\n|\r/g," "):n=n.replace(/\r\n?/g,`
3
- `);else if(n=n.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(n)&&this.open==this.nodes.length-1){let s=i.content[i.content.length-1],o=t.previousSibling;(!s||o&&o.nodeName=="BR"||s.isText&&/[ \t\r\n\u000c]$/.test(s.text))&&(n=n.slice(1))}n&&this.insertNode(this.parser.schema.text(n),e,!/\S/.test(n)),this.findInText(t)}else this.findInside(t)}addElement(t,e,n){let i=this.localPreserveWS,r=this.top;(t.tagName=="PRE"||/pre/.test(t.style&&t.style.whiteSpace))&&(this.localPreserveWS=!0);let s=t.nodeName.toLowerCase(),o;ct.hasOwnProperty(s)&&this.parser.normalizeLists&&Dt(t);let h=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(o=this.parser.matchTag(t,this,n));t:if(h?h.ignore:It.hasOwnProperty(s))this.findInside(t),this.ignoreFallback(t,e);else if(!h||h.skip||h.closeParent){h&&h.closeParent?this.open=Math.max(0,this.open-1):h&&h.skip.nodeType&&(t=h.skip);let a,f=this.needsBlock;if(ft.hasOwnProperty(s))r.content.length&&r.content[0].isInline&&this.open&&(this.open--,r=this.top),a=!0,r.type||(this.needsBlock=!0);else if(!t.firstChild){this.leafFallback(t,e);break t}let p=h&&h.skip?e:this.readStyles(t,e);p&&this.addAll(t,p),a&&this.sync(r),this.needsBlock=f}else{let a=this.readStyles(t,e);a&&this.addElementByRule(t,h,a,h.consuming===!1?o:void 0)}this.localPreserveWS=i}leafFallback(t,e){t.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(t.ownerDocument.createTextNode(`
2
+ `)}}w.empty=new w(!0);class kt{constructor(t,e){this.string=t,this.nodeTypes=e,this.inline=null,this.pos=0,this.tokens=t.split(/\s*(?=\b|\W|$)/),this.tokens[this.tokens.length-1]==""&&this.tokens.pop(),this.tokens[0]==""&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(t){return this.next==t&&(this.pos++||!0)}err(t){throw new SyntaxError(t+" (in content expression '"+this.string+"')")}}function rt(l){let t=[];do t.push(St(l));while(l.eat("|"));return t.length==1?t[0]:{type:"choice",exprs:t}}function St(l){let t=[];do t.push(Et(l));while(l.next&&l.next!=")"&&l.next!="|");return t.length==1?t[0]:{type:"seq",exprs:t}}function Et(l){let t=Tt(l);for(;;)if(l.eat("+"))t={type:"plus",expr:t};else if(l.eat("*"))t={type:"star",expr:t};else if(l.eat("?"))t={type:"opt",expr:t};else if(l.eat("{"))t=Ct(l,t);else break;return t}function W(l){/\D/.test(l.next)&&l.err("Expected number, got '"+l.next+"'");let t=Number(l.next);return l.pos++,t}function Ct(l,t){let e=W(l),n=e;return l.eat(",")&&(l.next!="}"?n=W(l):n=-1),l.eat("}")||l.err("Unclosed braced range"),{type:"range",min:e,max:n,expr:t}}function Ot(l,t){let e=l.nodeTypes,n=e[t];if(n)return[n];let i=[];for(let r in e){let s=e[r];s.isInGroup(t)&&i.push(s)}return i.length==0&&l.err("No node type or group '"+t+"' found"),i}function Tt(l){if(l.eat("(")){let t=rt(l);return l.eat(")")||l.err("Missing closing paren"),t}else if(/\W/.test(l.next))l.err("Unexpected token '"+l.next+"'");else{let t=Ot(l,l.next).map(e=>(l.inline==null?l.inline=e.isInline:l.inline!=e.isInline&&l.err("Mixing inline and block content"),{type:"name",value:e}));return l.pos++,t.length==1?t[0]:{type:"choice",exprs:t}}}function bt(l){let t=[[]];return i(r(l,0),e()),t;function e(){return t.push([])-1}function n(s,o,h){let a={term:h,to:o};return t[s].push(a),a}function i(s,o){s.forEach(h=>h.to=o)}function r(s,o){if(s.type=="choice")return s.exprs.reduce((h,a)=>h.concat(r(a,o)),[]);if(s.type=="seq")for(let h=0;;h++){let a=r(s.exprs[h],o);if(h==s.exprs.length-1)return a;i(a,o=e())}else if(s.type=="star"){let h=e();return n(o,h),i(r(s.expr,h),h),[n(h)]}else if(s.type=="plus"){let h=e();return i(r(s.expr,o),h),i(r(s.expr,h),h),[n(h)]}else{if(s.type=="opt")return[n(o)].concat(r(s.expr,o));if(s.type=="range"){let h=o;for(let a=0;a<s.min;a++){let f=e();i(r(s.expr,h),f),h=f}if(s.max==-1)i(r(s.expr,h),h);else for(let a=s.min;a<s.max;a++){let f=e();n(h,f),i(r(s.expr,h),f),h=f}return[n(h)]}else{if(s.type=="name")return[n(o,void 0,s.value)];throw new Error("Unknown expr type")}}}}function st(l,t){return t-l}function j(l,t){let e=[];return n(t),e.sort(st);function n(i){let r=l[i];if(r.length==1&&!r[0].term)return n(r[0].to);e.push(i);for(let s=0;s<r.length;s++){let{term:o,to:h}=r[s];!o&&e.indexOf(h)==-1&&n(h)}}}function Mt(l){let t=Object.create(null);return e(j(l,0));function e(n){let i=[];n.forEach(s=>{l[s].forEach(({term:o,to:h})=>{if(!o)return;let a;for(let f=0;f<i.length;f++)i[f][0]==o&&(a=i[f][1]);j(l,h).forEach(f=>{a||i.push([o,a=[]]),a.indexOf(f)==-1&&a.push(f)})})});let r=t[n.join(",")]=new w(n.indexOf(l.length-1)>-1);for(let s=0;s<i.length;s++){let o=i[s][1].sort(st);r.next.push({type:i[s][0],next:t[o.join(",")]||e(o)})}return r}}function At(l,t){for(let e=0,n=[l];e<n.length;e++){let i=n[e],r=!i.validEnd,s=[];for(let o=0;o<i.next.length;o++){let{type:h,next:a}=i.next[o];s.push(h.name),r&&!(h.isText||h.hasRequiredAttrs())&&(r=!1),n.indexOf(a)==-1&&n.push(a)}r&&t.err("Only non-generatable nodes ("+s.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function lt(l){let t=Object.create(null);for(let e in l){let n=l[e];if(!n.hasDefault)return null;t[e]=n.default}return t}function ot(l,t){let e=Object.create(null);for(let n in l){let i=t&&t[n];if(i===void 0){let r=l[n];if(r.hasDefault)i=r.default;else throw new RangeError("No value supplied for attribute "+n)}e[n]=i}return e}function ht(l,t,e,n){for(let i in t)if(!(i in l))throw new RangeError(`Unsupported attribute ${i} for ${e} of type ${i}`);for(let i in l){let r=l[i];r.validate&&r.validate(t[i])}}function at(l,t){let e=Object.create(null);if(t)for(let n in t)e[n]=new vt(l,n,t[n]);return e}class v{constructor(t,e,n){this.name=t,this.schema=e,this.spec=n,this.markSet=null,this.groups=n.group?n.group.split(" "):[],this.attrs=at(t,n.attrs),this.defaultAttrs=lt(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(n.inline||t=="text"),this.isText=t=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==w.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}isInGroup(t){return this.groups.indexOf(t)>-1}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let t in this.attrs)if(this.attrs[t].isRequired)return!0;return!1}compatibleContent(t){return this==t||this.contentMatch.compatible(t.contentMatch)}computeAttrs(t){return!t&&this.defaultAttrs?this.defaultAttrs:ot(this.attrs,t)}create(t=null,e,n){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new g(this,this.computeAttrs(t),c.from(e),u.setFrom(n))}createChecked(t=null,e,n){return e=c.from(e),this.checkContent(e),new g(this,this.computeAttrs(t),e,u.setFrom(n))}createAndFill(t=null,e,n){if(t=this.computeAttrs(t),e=c.from(e),e.size){let s=this.contentMatch.fillBefore(e);if(!s)return null;e=s.append(e)}let i=this.contentMatch.matchFragment(e),r=i&&i.fillBefore(c.empty,!0);return r?new g(this,t,e.append(r),u.setFrom(n)):null}validContent(t){let e=this.contentMatch.matchFragment(t);if(!e||!e.validEnd)return!1;for(let n=0;n<t.childCount;n++)if(!this.allowsMarks(t.child(n).marks))return!1;return!0}checkContent(t){if(!this.validContent(t))throw new RangeError(`Invalid content for node ${this.name}: ${t.toString().slice(0,50)}`)}checkAttrs(t){ht(this.attrs,t,"node",this.name)}allowsMarkType(t){return this.markSet==null||this.markSet.indexOf(t)>-1}allowsMarks(t){if(this.markSet==null)return!0;for(let e=0;e<t.length;e++)if(!this.allowsMarkType(t[e].type))return!1;return!0}allowedMarks(t){if(this.markSet==null)return t;let e;for(let n=0;n<t.length;n++)this.allowsMarkType(t[n].type)?e&&e.push(t[n]):e||(e=t.slice(0,n));return e?e.length?e:u.none:t}static compile(t,e){let n=Object.create(null);t.forEach((r,s)=>n[r]=new v(r,e,s));let i=e.spec.topNode||"doc";if(!n[i])throw new RangeError("Schema is missing its top node type ('"+i+"')");if(!n.text)throw new RangeError("Every schema needs a 'text' type");for(let r in n.text.attrs)throw new RangeError("The text node type should not have attributes");return n}}function zt(l,t,e){let n=e.split("|");return i=>{let r=i===null?"null":typeof i;if(n.indexOf(r)<0)throw new RangeError(`Expected value of type ${n} for attribute ${t} on type ${l}, got ${r}`)}}class vt{constructor(t,e,n){this.hasDefault=Object.prototype.hasOwnProperty.call(n,"default"),this.default=n.default,this.validate=typeof n.validate=="string"?zt(t,e,n.validate):n.validate}get isRequired(){return!this.hasDefault}}class F{constructor(t,e,n,i){this.name=t,this.rank=e,this.schema=n,this.spec=i,this.attrs=at(t,i.attrs),this.excluded=null;let r=lt(this.attrs);this.instance=r?new u(this,r):null}create(t=null){return!t&&this.instance?this.instance:new u(this,ot(this.attrs,t))}static compile(t,e){let n=Object.create(null),i=0;return t.forEach((r,s)=>n[r]=new F(r,i++,e,s)),n}removeFromSet(t){for(var e=0;e<t.length;e++)t[e].type==this&&(t=t.slice(0,e).concat(t.slice(e+1)),e--);return t}isInSet(t){for(let e=0;e<t.length;e++)if(t[e].type==this)return t[e]}checkAttrs(t){ht(this.attrs,t,"mark",this.name)}excludes(t){return this.excluded.indexOf(t)>-1}}class qt{constructor(t){this.linebreakReplacement=null,this.cached=Object.create(null);let e=this.spec={};for(let i in t)e[i]=t[i];e.nodes=q.from(t.nodes),e.marks=q.from(t.marks||{}),this.nodes=v.compile(this.spec.nodes,this),this.marks=F.compile(this.spec.marks,this);let n=Object.create(null);for(let i in this.nodes){if(i in this.marks)throw new RangeError(i+" can not be both a node and a mark");let r=this.nodes[i],s=r.spec.content||"",o=r.spec.marks;if(r.contentMatch=n[s]||(n[s]=w.parse(s,this.nodes)),r.inlineContent=r.contentMatch.inlineContent,r.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!r.isInline||!r.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=r}r.markSet=o=="_"?null:o?U(this,o.split(" ")):o==""||!r.inlineContent?[]:null}for(let i in this.marks){let r=this.marks[i],s=r.spec.excludes;r.excluded=s==null?[r]:s==""?[]:U(this,s.split(" "))}this.nodeFromJSON=i=>g.fromJSON(this,i),this.markFromJSON=i=>u.fromJSON(this,i),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(t,e=null,n,i){if(typeof t=="string")t=this.nodeType(t);else if(t instanceof v){if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")")}else throw new RangeError("Invalid node type: "+t);return t.createChecked(e,n,i)}text(t,e){let n=this.nodes.text;return new z(n,n.defaultAttrs,t,u.setFrom(e))}mark(t,e){return typeof t=="string"&&(t=this.marks[t]),t.create(e)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function U(l,t){let e=[];for(let n=0;n<t.length;n++){let i=t[n],r=l.marks[i],s=r;if(r)e.push(r);else for(let o in l.marks){let h=l.marks[o];(i=="_"||h.spec.group&&h.spec.group.split(" ").indexOf(i)>-1)&&e.push(s=h)}if(!s)throw new SyntaxError("Unknown mark type: '"+t[n]+"'")}return e}function Nt(l){return l.tag!=null}function Rt(l){return l.style!=null}class P{constructor(t,e){this.schema=t,this.rules=e,this.tags=[],this.styles=[];let n=this.matchedStyles=[];e.forEach(i=>{if(Nt(i))this.tags.push(i);else if(Rt(i)){let r=/[^=]*/.exec(i.style)[0];n.indexOf(r)<0&&n.push(r),this.styles.push(i)}}),this.normalizeLists=!this.tags.some(i=>{if(!/^(ul|ol)\b/.test(i.tag)||!i.node)return!1;let r=t.nodes[i.node];return r.contentMatch.matchType(r)})}parse(t,e={}){let n=new G(this,e,!1);return n.addAll(t,u.none,e.from,e.to),n.finish()}parseSlice(t,e={}){let n=new G(this,e,!0);return n.addAll(t,u.none,e.from,e.to),d.maxOpen(n.finish())}matchTag(t,e,n){for(let i=n?this.tags.indexOf(n)+1:0;i<this.tags.length;i++){let r=this.tags[i];if(Pt(t,r.tag)&&(r.namespace===void 0||t.namespaceURI==r.namespace)&&(!r.context||e.matchesContext(r.context))){if(r.getAttrs){let s=r.getAttrs(t);if(s===!1)continue;r.attrs=s||void 0}return r}}}matchStyle(t,e,n,i){for(let r=i?this.styles.indexOf(i)+1:0;r<this.styles.length;r++){let s=this.styles[r],o=s.style;if(!(o.indexOf(t)!=0||s.context&&!n.matchesContext(s.context)||o.length>t.length&&(o.charCodeAt(t.length)!=61||o.slice(t.length+1)!=e))){if(s.getAttrs){let h=s.getAttrs(e);if(h===!1)continue;s.attrs=h||void 0}return s}}}static schemaRules(t){let e=[];function n(i){let r=i.priority==null?50:i.priority,s=0;for(;s<e.length;s++){let o=e[s];if((o.priority==null?50:o.priority)<r)break}e.splice(s,0,i)}for(let i in t.marks){let r=t.marks[i].spec.parseDOM;r&&r.forEach(s=>{n(s=H(s)),s.mark||s.ignore||s.clearMark||(s.mark=i)})}for(let i in t.nodes){let r=t.nodes[i].spec.parseDOM;r&&r.forEach(s=>{n(s=H(s)),s.node||s.ignore||s.mark||(s.node=i)})}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new P(t,P.schemaRules(t)))}}const ft={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},It={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},ct={ol:!0,ul:!0},C=1,B=2,S=4;function V(l,t,e){return t!=null?(t?C:0)|(t==="full"?B:0):l&&l.whitespace=="pre"?C|B:e&~S}class T{constructor(t,e,n,i,r,s){this.type=t,this.attrs=e,this.marks=n,this.solid=i,this.options=s,this.content=[],this.activeMarks=u.none,this.match=r||(s&S?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(c.from(t));if(e)this.match=this.type.contentMatch.matchFragment(e);else{let n=this.type.contentMatch,i;return(i=n.findWrapping(t.type))?(this.match=n,i):null}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&C)){let n=this.content[this.content.length-1],i;if(n&&n.isText&&(i=/[ \t\r\n\u000c]+$/.exec(n.text))){let r=n;n.text.length==i[0].length?this.content.pop():this.content[this.content.length-1]=r.withText(r.text.slice(0,r.text.length-i[0].length))}}let e=c.from(this.content);return!t&&this.match&&(e=e.append(this.match.fillBefore(c.empty,!0))),this.type?this.type.create(this.attrs,e,this.marks):e}inlineContext(t){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:t.parentNode&&!ft.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class G{constructor(t,e,n){this.parser=t,this.options=e,this.isOpen=n,this.open=0,this.localPreserveWS=!1;let i=e.topNode,r,s=V(null,e.preserveWhitespace,0)|(n?S:0);i?r=new T(i.type,i.attrs,u.none,!0,e.topMatch||i.type.contentMatch,s):n?r=new T(null,null,u.none,!0,null,s):r=new T(t.schema.topNodeType,null,u.none,!0,null,s),this.nodes=[r],this.find=e.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(t,e){t.nodeType==3?this.addTextNode(t,e):t.nodeType==1&&this.addElement(t,e)}addTextNode(t,e){let n=t.nodeValue,i=this.top,r=i.options&B?"full":this.localPreserveWS||(i.options&C)>0,{schema:s}=this.parser;if(r==="full"||i.inlineContext(t)||/[^ \t\r\n\u000c]/.test(n)){if(r)if(r==="full")n=n.replace(/\r\n?/g,`
3
+ `);else if(s.linebreakReplacement&&/[\r\n]/.test(n)&&this.top.findWrapping(s.linebreakReplacement.create())){let o=n.split(/\r?\n|\r/);for(let h=0;h<o.length;h++)h&&this.insertNode(s.linebreakReplacement.create(),e,!0),o[h]&&this.insertNode(s.text(o[h]),e,!/\S/.test(o[h]));n=""}else n=n.replace(/\r?\n|\r/g," ");else if(n=n.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(n)&&this.open==this.nodes.length-1){let o=i.content[i.content.length-1],h=t.previousSibling;(!o||h&&h.nodeName=="BR"||o.isText&&/[ \t\r\n\u000c]$/.test(o.text))&&(n=n.slice(1))}n&&this.insertNode(s.text(n),e,!/\S/.test(n)),this.findInText(t)}else this.findInside(t)}addElement(t,e,n){let i=this.localPreserveWS,r=this.top;(t.tagName=="PRE"||/pre/.test(t.style&&t.style.whiteSpace))&&(this.localPreserveWS=!0);let s=t.nodeName.toLowerCase(),o;ct.hasOwnProperty(s)&&this.parser.normalizeLists&&Dt(t);let h=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(o=this.parser.matchTag(t,this,n));t:if(h?h.ignore:It.hasOwnProperty(s))this.findInside(t),this.ignoreFallback(t,e);else if(!h||h.skip||h.closeParent){h&&h.closeParent?this.open=Math.max(0,this.open-1):h&&h.skip.nodeType&&(t=h.skip);let a,f=this.needsBlock;if(ft.hasOwnProperty(s))r.content.length&&r.content[0].isInline&&this.open&&(this.open--,r=this.top),a=!0,r.type||(this.needsBlock=!0);else if(!t.firstChild){this.leafFallback(t,e);break t}let p=h&&h.skip?e:this.readStyles(t,e);p&&this.addAll(t,p),a&&this.sync(r),this.needsBlock=f}else{let a=this.readStyles(t,e);a&&this.addElementByRule(t,h,a,h.consuming===!1?o:void 0)}this.localPreserveWS=i}leafFallback(t,e){t.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(t.ownerDocument.createTextNode(`
4
4
  `),e)}ignoreFallback(t,e){t.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text("-"),e,!0)}readStyles(t,e){let n=t.style;if(n&&n.length)for(let i=0;i<this.parser.matchedStyles.length;i++){let r=this.parser.matchedStyles[i],s=n.getPropertyValue(r);if(s)for(let o=void 0;;){let h=this.parser.matchStyle(r,s,this,o);if(!h)break;if(h.ignore)return null;if(h.clearMark?e=e.filter(a=>!h.clearMark(a)):e=e.concat(this.parser.schema.marks[h.mark].create(h.attrs)),h.consuming===!1)o=h;else break}}return e}addElementByRule(t,e,n,i){let r,s;if(e.node)if(s=this.parser.schema.nodes[e.node],s.isLeaf)this.insertNode(s.create(e.attrs),n,t.nodeName=="BR")||this.leafFallback(t,n);else{let h=this.enter(s,e.attrs||null,n,e.preserveWhitespace);h&&(r=!0,n=h)}else{let h=this.parser.schema.marks[e.mark];n=n.concat(h.create(e.attrs))}let o=this.top;if(s&&s.isLeaf)this.findInside(t);else if(i)this.addElement(t,n,i);else if(e.getContent)this.findInside(t),e.getContent(t,this.parser.schema).forEach(h=>this.insertNode(h,n,!1));else{let h=t;typeof e.contentElement=="string"?h=t.querySelector(e.contentElement):typeof e.contentElement=="function"?h=e.contentElement(t):e.contentElement&&(h=e.contentElement),this.findAround(t,h,!0),this.addAll(h,n),this.findAround(t,h,!1)}r&&this.sync(o)&&this.open--}addAll(t,e,n,i){let r=n||0;for(let s=n?t.childNodes[n]:t.firstChild,o=i==null?null:t.childNodes[i];s!=o;s=s.nextSibling,++r)this.findAtPoint(t,r),this.addDOM(s,e);this.findAtPoint(t,r)}findPlace(t,e,n){let i,r;for(let s=this.open,o=0;s>=0;s--){let h=this.nodes[s],a=h.findWrapping(t);if(a&&(!i||i.length>a.length+o)&&(i=a,r=h,!a.length))break;if(h.solid){if(n)break;o+=2}}if(!i)return null;this.sync(r);for(let s=0;s<i.length;s++)e=this.enterInner(i[s],null,e,!1);return e}insertNode(t,e,n){if(t.isInline&&this.needsBlock&&!this.top.type){let r=this.textblockFromContext();r&&(e=this.enterInner(r,null,e))}let i=this.findPlace(t,e,n);if(i){this.closeExtra();let r=this.top;r.match&&(r.match=r.match.matchType(t.type));let s=u.none;for(let o of i.concat(t.marks))(r.type?r.type.allowsMarkType(o.type):K(o.type,t.type))&&(s=o.addToSet(s));return r.content.push(t.mark(s)),!0}return!1}enter(t,e,n,i){let r=this.findPlace(t.create(e),n,!1);return r&&(r=this.enterInner(t,e,n,!0,i)),r}enterInner(t,e,n,i=!1,r){this.closeExtra();let s=this.top;s.match=s.match&&s.match.matchType(t);let o=V(t,r,s.options);s.options&S&&s.content.length==0&&(o|=S);let h=u.none;return n=n.filter(a=>(s.type?s.type.allowsMarkType(a.type):K(a.type,t))?(h=a.addToSet(h),!1):!0),this.nodes.push(new T(t,e,h,i,null,o)),this.open++,n}closeExtra(t=!1){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(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(!!(this.isOpen||this.options.topOpen))}sync(t){for(let e=this.open;e>=0;e--){if(this.nodes[e]==t)return this.open=e,!0;this.localPreserveWS&&(this.nodes[e].options|=C)}return!1}get currentPos(){this.closeExtra();let t=0;for(let e=this.open;e>=0;e--){let n=this.nodes[e].content;for(let i=n.length-1;i>=0;i--)t+=n[i].nodeSize;e&&t++}return t}findAtPoint(t,e){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==t&&this.find[n].offset==e&&(this.find[n].pos=this.currentPos)}findInside(t){if(this.find)for(let e=0;e<this.find.length;e++)this.find[e].pos==null&&t.nodeType==1&&t.contains(this.find[e].node)&&(this.find[e].pos=this.currentPos)}findAround(t,e,n){if(t!=e&&this.find)for(let i=0;i<this.find.length;i++)this.find[i].pos==null&&t.nodeType==1&&t.contains(this.find[i].node)&&e.compareDocumentPosition(this.find[i].node)&(n?2:4)&&(this.find[i].pos=this.currentPos)}findInText(t){if(this.find)for(let e=0;e<this.find.length;e++)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("/"),n=this.options.context,i=!this.isOpen&&(!n||n.parent.type==this.nodes[0].type),r=-(n?n.depth+1:0)+(i?0:1),s=(o,h)=>{for(;o>=0;o--){let a=e[o];if(a==""){if(o==e.length-1||o==0)continue;for(;h>=r;h--)if(s(o-1,h))return!0;return!1}else{let f=h>0||h==0&&i?this.nodes[h].type:n&&h>=r?n.node(h-r).type:null;if(!f||f.name!=a&&!f.isInGroup(a))return!1;h--}}return!0};return s(e.length-1,this.open)}textblockFromContext(){let t=this.options.context;if(t)for(let e=t.depth;e>=0;e--){let n=t.node(e).contentMatchAt(t.indexAfter(e)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(let e in this.parser.schema.nodes){let n=this.parser.schema.nodes[e];if(n.isTextblock&&n.defaultAttrs)return n}}}function Dt(l){for(let t=l.firstChild,e=null;t;t=t.nextSibling){let n=t.nodeType==1?t.nodeName.toLowerCase():null;n&&ct.hasOwnProperty(n)&&e?(e.appendChild(t),t=e):n=="li"?e=t:n&&(e=null)}}function Pt(l,t){return(l.matches||l.msMatchesSelector||l.webkitMatchesSelector||l.mozMatchesSelector).call(l,t)}function H(l){let t={};for(let e in l)t[e]=l[e];return t}function K(l,t){let e=t.schema.nodes;for(let n in e){let i=e[n];if(!i.allowsMarkType(l))continue;let r=[],s=o=>{r.push(o);for(let h=0;h<o.edgeCount;h++){let{type:a,next:f}=o.edge(h);if(a==t||r.indexOf(f)<0&&s(f))return!0}};if(s(i.contentMatch))return!0}}class ut{constructor(t,e){this.nodes=t,this.marks=e}serializeFragment(t,e={},n){n||(n=R(e).createDocumentFragment());let i=n,r=[];return t.forEach(s=>{if(r.length||s.marks.length){let o=0,h=0;for(;o<r.length&&h<s.marks.length;){let a=s.marks[h];if(!this.marks[a.type.name]){h++;continue}if(!a.eq(r[o][0])||a.type.spec.spanning===!1)break;o++,h++}for(;o<r.length;)i=r.pop()[1];for(;h<s.marks.length;){let a=s.marks[h++],f=this.serializeMark(a,s.isInline,e);f&&(r.push([a,i]),i.appendChild(f.dom),i=f.contentDOM||f.dom)}}i.appendChild(this.serializeNodeInner(s,e))}),n}serializeNodeInner(t,e){let{dom:n,contentDOM:i}=b(R(e),this.nodes[t.type.name](t),null,t.attrs);if(i){if(t.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(t.content,e,i)}return n}serializeNode(t,e={}){let n=this.serializeNodeInner(t,e);for(let i=t.marks.length-1;i>=0;i--){let r=this.serializeMark(t.marks[i],t.isInline,e);r&&((r.contentDOM||r.dom).appendChild(n),n=r.dom)}return n}serializeMark(t,e,n={}){let i=this.marks[t.type.name];return i&&b(R(n),i(t,e),null,t.attrs)}static renderSpec(t,e,n=null,i){return b(t,e,n,i)}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new ut(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=Q(t.nodes);return e.text||(e.text=n=>n.text),e}static marksFromSchema(t){return Q(t.marks)}}function Q(l){let t={};for(let e in l){let n=l[e].spec.toDOM;n&&(t[e]=n)}return t}function R(l){return l.document||window.document}const X=new WeakMap;function Bt(l){let t=X.get(l);return t===void 0&&X.set(l,t=Ft(l)),t}function Ft(l){let t=null;function e(n){if(n&&typeof n=="object")if(Array.isArray(n))if(typeof n[0]=="string")t||(t=[]),t.push(n);else for(let i=0;i<n.length;i++)e(n[i]);else for(let i in n)e(n[i])}return e(l),t}function b(l,t,e,n){if(typeof t=="string")return{dom:l.createTextNode(t)};if(t.nodeType!=null)return{dom:t};if(t.dom&&t.dom.nodeType!=null)return t;let i=t[0],r;if(typeof i!="string")throw new RangeError("Invalid array passed to renderSpec");if(n&&(r=Bt(n))&&r.indexOf(t)>-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let s=i.indexOf(" ");s>0&&(e=i.slice(0,s),i=i.slice(s+1));let o,h=e?l.createElementNS(e,i):l.createElement(i),a=t[1],f=1;if(a&&typeof a=="object"&&a.nodeType==null&&!Array.isArray(a)){f=2;for(let p in a)if(a[p]!=null){let y=p.indexOf(" ");y>0?h.setAttributeNS(p.slice(0,y),p.slice(y+1),a[p]):p=="style"&&h.style?h.style.cssText=a[p]:h.setAttribute(p,a[p])}}for(let p=f;p<t.length;p++){let y=t[p];if(y===0){if(p<t.length-1||p>f)throw new RangeError("Content hole must be the only child of its parent node");return{dom:h,contentDOM:h}}else{let{dom:pt,contentDOM:J}=b(l,y,e,n);if(h.appendChild(pt),J){if(o)throw new RangeError("Multiple content holes");o=J}}}return{dom:h,contentDOM:o}}export{w as ContentMatch,P as DOMParser,ut as DOMSerializer,c as Fragment,u as Mark,F as MarkType,g as Node,mt as NodeRange,v as NodeType,I as ReplaceError,E as ResolvedPos,qt as Schema,d as Slice};
5
5
  //# sourceMappingURL=index.js.map